Fix function input computation in workflow code step (#12440)

As title
Fix consist by awaiting for getFunctionInputFromSourceCode response
This commit is contained in:
martmull
2025-06-03 16:50:46 +02:00
committed by GitHub
parent 7ab3d19e64
commit 0e68602030
2 changed files with 5 additions and 3 deletions

View File

@ -47,7 +47,7 @@ export const useServerlessFunctionUpdateFormState = ({
const { loading } = useGetOneServerlessFunctionSourceCode({ const { loading } = useGetOneServerlessFunctionSourceCode({
id: serverlessFunctionId, id: serverlessFunctionId,
version: serverlessFunctionVersion, version: serverlessFunctionVersion,
onCompleted: (data: FindOneServerlessFunctionSourceCodeQuery) => { onCompleted: async (data: FindOneServerlessFunctionSourceCodeQuery) => {
const newState = { const newState = {
code: data?.getServerlessFunctionSourceCode || undefined, code: data?.getServerlessFunctionSourceCode || undefined,
name: serverlessFunction?.name || '', name: serverlessFunction?.name || '',
@ -63,9 +63,11 @@ export const useServerlessFunctionUpdateFormState = ({
const sourceCode = const sourceCode =
data?.getServerlessFunctionSourceCode?.[INDEX_FILE_PATH]; data?.getServerlessFunctionSourceCode?.[INDEX_FILE_PATH];
const functionInput = await getFunctionInputFromSourceCode(sourceCode);
setServerlessFunctionTestData((prev) => ({ setServerlessFunctionTestData((prev) => ({
...prev, ...prev,
input: getFunctionInputFromSourceCode(sourceCode), input: functionInput,
shouldInitInput: false, shouldInitInput: false,
})); }));
} }

View File

@ -150,7 +150,7 @@ export const WorkflowEditActionServerlessFunction = ({
return; return;
} }
const newFunctionInput = getFunctionInputFromSourceCode(sourceCode); const newFunctionInput = await getFunctionInputFromSourceCode(sourceCode);
const newMergedInput = mergeDefaultFunctionInputAndFunctionInput({ const newMergedInput = mergeDefaultFunctionInputAndFunctionInput({
newInput: newFunctionInput, newInput: newFunctionInput,
oldInput: action.settings.input.serverlessFunctionInput, oldInput: action.settings.input.serverlessFunctionInput,