@@ -57,12 +57,9 @@ type Props = {
5757 ) => void ;
5858} ;
5959
60- export const MethodRow = ( {
61- externalApiUsage,
62- modeledMethod,
63- mode,
64- onChange,
65- } : Props ) => {
60+ export const MethodRow = ( props : Props ) => {
61+ const { externalApiUsage, modeledMethod, mode, onChange } = props ;
62+
6663 const argumentsList = useMemo ( ( ) => {
6764 if ( externalApiUsage . methodParameters === "()" ) {
6865 return [ ] ;
@@ -172,33 +169,8 @@ export const MethodRow = ({
172169 ! externalApiUsage . supported ||
173170 ( modeledMethod && modeledMethod ?. type !== "none" ) ;
174171
175- const externalApiUsageName = (
176- < span >
177- { externalApiUsage . packageName } .{ externalApiUsage . typeName } .
178- { externalApiUsage . methodName }
179- { externalApiUsage . methodParameters }
180- </ span >
181- ) ;
182-
183172 if ( ! methodCanBeModeled ) {
184- return (
185- < VSCodeDataGridRow >
186- < ApiOrMethodCell gridColumn = { 1 } >
187- < VSCodeCheckbox />
188- { externalApiUsageName }
189- { mode === Mode . Application && (
190- < UsagesButton onClick = { jumpToUsage } >
191- { externalApiUsage . usages . length }
192- </ UsagesButton >
193- ) }
194- < ViewLink onClick = { jumpToUsage } > View</ ViewLink >
195- </ ApiOrMethodCell >
196- < VSCodeDataGridCell gridColumn = { 2 } />
197- < VSCodeDataGridCell gridColumn = { 3 } />
198- < VSCodeDataGridCell gridColumn = { 4 } />
199- < VSCodeDataGridCell gridColumn = { 5 } />
200- </ VSCodeDataGridRow >
201- ) ;
173+ return < UmmodelableMethodRow { ...props } jumpToUsage = { jumpToUsage } /> ;
202174 }
203175
204176 const showInputCell =
@@ -215,7 +187,7 @@ export const MethodRow = ({
215187 < VSCodeDataGridRow >
216188 < ApiOrMethodCell gridColumn = { 1 } >
217189 < VSCodeCheckbox />
218- { externalApiUsageName }
190+ < ExternalApiUsageName { ... props } />
219191 { mode === Mode . Application && (
220192 < UsagesButton onClick = { jumpToUsage } >
221193 { externalApiUsage . usages . length }
@@ -257,3 +229,39 @@ export const MethodRow = ({
257229 </ VSCodeDataGridRow >
258230 ) ;
259231} ;
232+
233+ function UmmodelableMethodRow ( props : {
234+ externalApiUsage : ExternalApiUsage ;
235+ mode : Mode ;
236+ jumpToUsage : ( ) => void ;
237+ } ) {
238+ const { externalApiUsage, mode, jumpToUsage } = props ;
239+ return (
240+ < VSCodeDataGridRow >
241+ < ApiOrMethodCell gridColumn = { 1 } >
242+ < VSCodeCheckbox />
243+ < ExternalApiUsageName { ...props } />
244+ { mode === Mode . Application && (
245+ < UsagesButton onClick = { jumpToUsage } >
246+ { externalApiUsage . usages . length }
247+ </ UsagesButton >
248+ ) }
249+ < ViewLink onClick = { jumpToUsage } > View</ ViewLink >
250+ </ ApiOrMethodCell >
251+ < VSCodeDataGridCell gridColumn = { 2 } />
252+ < VSCodeDataGridCell gridColumn = { 3 } />
253+ < VSCodeDataGridCell gridColumn = { 4 } />
254+ < VSCodeDataGridCell gridColumn = { 5 } />
255+ </ VSCodeDataGridRow >
256+ ) ;
257+ }
258+
259+ function ExternalApiUsageName ( props : { externalApiUsage : ExternalApiUsage } ) {
260+ return (
261+ < span >
262+ { props . externalApiUsage . packageName } .{ props . externalApiUsage . typeName } .
263+ { props . externalApiUsage . methodName }
264+ { props . externalApiUsage . methodParameters }
265+ </ span >
266+ ) ;
267+ }
0 commit comments