From 9e8fddcdb6864844529ce09e15b94fb8cbac058d Mon Sep 17 00:00:00 2001 From: Ivan Atanasov Date: Thu, 5 Dec 2024 17:38:11 +0100 Subject: [PATCH] simplify load resource options from store --- .../ResourceMapper/ResourceMapper.vue | 61 ++++++++++--------- 1 file changed, 31 insertions(+), 30 deletions(-) diff --git a/packages/editor-ui/src/components/ResourceMapper/ResourceMapper.vue b/packages/editor-ui/src/components/ResourceMapper/ResourceMapper.vue index fdd06073e9..acff282cca 100644 --- a/packages/editor-ui/src/components/ResourceMapper/ResourceMapper.vue +++ b/packages/editor-ui/src/components/ResourceMapper/ResourceMapper.vue @@ -239,47 +239,48 @@ async function initFetching(inlineLoading = false): Promise { } } +const createRequestParams = (methodName: string) => { + if (!props.node) { + return; + } + const requestParams: DynamicNodeParameters.ResourceMapperFieldsRequest = { + nodeTypeAndVersion: { + name: props.node?.type, + version: props.node?.typeVersion, + }, + currentNodeParameters: resolveRequiredParameters( + props.parameter, + props.node.parameters, + ) as INodeParameters, + path: props.path, + methodName, + credentials: props.node.credentials, + }; + + return requestParams; +}; + async function loadFieldsToMap(): Promise { if (!props.node) { return; } - const { resourceMapperMethod = undefined, localResourceMapperMethod = undefined } = + const { resourceMapperMethod, localResourceMapperMethod } = props.parameter.typeOptions?.resourceMapper ?? {}; let fetchedFields = null; if (typeof resourceMapperMethod === 'string') { - const requestParams: DynamicNodeParameters.ResourceMapperFieldsRequest = { - nodeTypeAndVersion: { - name: props.node?.type, - version: props.node.typeVersion, - }, - currentNodeParameters: resolveRequiredParameters( - props.parameter, - props.node.parameters, - ) as INodeParameters, - path: props.path, - methodName: resourceMapperMethod, - credentials: props.node.credentials, - }; + const requestParams = createRequestParams( + resourceMapperMethod, + ) as DynamicNodeParameters.ResourceMapperFieldsRequest; fetchedFields = await nodeTypesStore.getResourceMapperFields(requestParams); - } else { - if (typeof localResourceMapperMethod === 'string') { - const requestParams: DynamicNodeParameters.ResourceMapperFieldsRequest = { - nodeTypeAndVersion: { - name: props.node?.type, - version: props.node.typeVersion, - }, - currentNodeParameters: resolveRequiredParameters( - props.parameter, - props.node.parameters, - ) as INodeParameters, - path: props.path, - methodName: localResourceMapperMethod, - }; - fetchedFields = await nodeTypesStore.getLocalResourceMapperFields(requestParams); - } + } else if (typeof localResourceMapperMethod === 'string') { + const requestParams = createRequestParams( + localResourceMapperMethod, + ) as DynamicNodeParameters.ResourceMapperFieldsRequest; + + fetchedFields = await nodeTypesStore.getLocalResourceMapperFields(requestParams); } if (fetchedFields !== null) {