From 66a603f294e3943ee36e3fc3b66bbea0d5d02048 Mon Sep 17 00:00:00 2001 From: Henry Heng Date: Mon, 2 Sep 2024 19:16:15 +0100 Subject: [PATCH] Bugfix/variables replacing (#3129) fix variables replacing --- packages/server/src/utils/index.ts | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/server/src/utils/index.ts b/packages/server/src/utils/index.ts index ed9ec870..0b5e89b2 100644 --- a/packages/server/src/utils/index.ts +++ b/packages/server/src/utils/index.ts @@ -777,14 +777,15 @@ export const getVariableValue = async ( flowData?: ICommonObject ) => { const isObject = typeof paramValue === 'object' - let returnVal = (isObject ? JSON.stringify(paramValue) : paramValue) ?? '' + const initialValue = (isObject ? JSON.stringify(paramValue) : paramValue) ?? '' + let returnVal = initialValue const variableStack = [] const variableDict = {} as IVariableDict let startIdx = 0 - const endIdx = returnVal.length - 1 + const endIdx = initialValue.length - 1 while (startIdx < endIdx) { - const substr = returnVal.substring(startIdx, startIdx + 2) + const substr = initialValue.substring(startIdx, startIdx + 2) // Store the opening double curly bracket if (substr === '{{') { @@ -795,7 +796,7 @@ export const getVariableValue = async ( if (substr === '}}' && variableStack.length > 0 && variableStack[variableStack.length - 1].substr === '{{') { const variableStartIdx = variableStack[variableStack.length - 1].startIdx const variableEndIdx = startIdx - const variableFullPath = returnVal.substring(variableStartIdx, variableEndIdx) + const variableFullPath = initialValue.substring(variableStartIdx, variableEndIdx) /** * Apply string transformation to convert special chars: