From aba574e4232dd8fcdfaf73d8de7f17a19dc7cae2 Mon Sep 17 00:00:00 2001 From: Robert Date: Wed, 12 Jul 2023 14:14:51 +0100 Subject: [PATCH] Pull out UmmodelableMethodRow to a separate component --- .../view/data-extensions-editor/MethodRow.tsx | 74 ++++++++++--------- 1 file changed, 41 insertions(+), 33 deletions(-) diff --git a/extensions/ql-vscode/src/view/data-extensions-editor/MethodRow.tsx b/extensions/ql-vscode/src/view/data-extensions-editor/MethodRow.tsx index 50d72431f..9aa3d462e 100644 --- a/extensions/ql-vscode/src/view/data-extensions-editor/MethodRow.tsx +++ b/extensions/ql-vscode/src/view/data-extensions-editor/MethodRow.tsx @@ -57,12 +57,9 @@ type Props = { ) => void; }; -export const MethodRow = ({ - externalApiUsage, - modeledMethod, - mode, - onChange, -}: Props) => { +export const MethodRow = (props: Props) => { + const { externalApiUsage, modeledMethod, mode, onChange } = props; + const argumentsList = useMemo(() => { if (externalApiUsage.methodParameters === "()") { return []; @@ -172,33 +169,8 @@ export const MethodRow = ({ !externalApiUsage.supported || (modeledMethod && modeledMethod?.type !== "none"); - const externalApiUsageName = ( - - {externalApiUsage.packageName}.{externalApiUsage.typeName}. - {externalApiUsage.methodName} - {externalApiUsage.methodParameters} - - ); - if (!methodCanBeModeled) { - return ( - - - - {externalApiUsageName} - {mode === Mode.Application && ( - - {externalApiUsage.usages.length} - - )} - View - - - - - - - ); + return ; } const showInputCell = @@ -215,7 +187,7 @@ export const MethodRow = ({ - {externalApiUsageName} + {mode === Mode.Application && ( {externalApiUsage.usages.length} @@ -257,3 +229,39 @@ export const MethodRow = ({ ); }; + +function UmmodelableMethodRow(props: { + externalApiUsage: ExternalApiUsage; + mode: Mode; + jumpToUsage: () => void; +}) { + const { externalApiUsage, mode, jumpToUsage } = props; + return ( + + + + + {mode === Mode.Application && ( + + {externalApiUsage.usages.length} + + )} + View + + + + + + + ); +} + +function ExternalApiUsageName(props: { externalApiUsage: ExternalApiUsage }) { + return ( + + {props.externalApiUsage.packageName}.{props.externalApiUsage.typeName}. + {props.externalApiUsage.methodName} + {props.externalApiUsage.methodParameters} + + ); +}