From 951758ffb631b313d0f033bb40dbe4f16383dfb7 Mon Sep 17 00:00:00 2001 From: Ruben Fiszel Date: Sat, 30 Mar 2024 15:00:52 +0100 Subject: [PATCH] fix: make submit form order static --- .../apps/components/helpers/RunnableComponent.svelte | 3 ++- .../inlineScriptsPanel/InlineScriptRunnableByPath.svelte | 6 ++++++ .../editor/settingsPanel/mainInput/RunnableSelector.svelte | 6 +++++- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/frontend/src/lib/components/apps/components/helpers/RunnableComponent.svelte b/frontend/src/lib/components/apps/components/helpers/RunnableComponent.svelte index 5e2b9711c6..f2a55d6ae2 100644 --- a/frontend/src/lib/components/apps/components/helpers/RunnableComponent.svelte +++ b/frontend/src/lib/components/apps/components/helpers/RunnableComponent.svelte @@ -167,7 +167,6 @@ (schemaStripped = stripSchema(fields, $stateId)) function stripSchema(inputs: AppInputs, s: any): Schema { - console.log('Strip schema', inputs) if (inputs === undefined) { return emptySchema() } @@ -179,6 +178,8 @@ console.warn('Error loading schema') return emptySchema() } + // schema.order = Object.keys(fields) + // console.log(schema.order) // Remove hidden static inputs Object.keys(inputs ?? {}).forEach((key: string) => { diff --git a/frontend/src/lib/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte b/frontend/src/lib/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte index bea462ead0..d551bfc648 100644 --- a/frontend/src/lib/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte +++ b/frontend/src/lib/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte @@ -40,6 +40,9 @@ let { schema } = await getScriptByPath(x.path) if (!deepEqual(x.schema, schema)) { x.schema = schema + if (!x.schema.order) { + x.schema.order = Object.keys(x.schema.properties ?? {}) + } fields = computeFields(schema, false, fields) } } catch (e) { @@ -53,6 +56,9 @@ const { schema } = (await loadSchema($workspaceStore ?? '', x.path, 'flow')) ?? emptySchema() if (!deepEqual(x.schema, schema)) { x.schema = schema + if (!x.schema.order) { + x.schema.order = Object.keys(x.schema.properties ?? {}) + } fields = computeFields(schema, false, fields) } } catch (e) { diff --git a/frontend/src/lib/components/apps/editor/settingsPanel/mainInput/RunnableSelector.svelte b/frontend/src/lib/components/apps/editor/settingsPanel/mainInput/RunnableSelector.svelte index d27d5d300d..1bce64852f 100644 --- a/frontend/src/lib/components/apps/editor/settingsPanel/mainInput/RunnableSelector.svelte +++ b/frontend/src/lib/components/apps/editor/settingsPanel/mainInput/RunnableSelector.svelte @@ -36,7 +36,11 @@ path: string, runType: 'script' | 'flow' | 'hubscript' ): Promise<{ schema: Schema; summary: string | undefined }> { - return loadSchema(workspace, path, runType) ?? emptySchema() + const schema = await loadSchema(workspace, path, runType) + if (!schema.schema.order) { + schema.schema.order = Object.keys(schema.schema.properties ?? {}) + } + return schema ?? { schema: emptySchema(), summary: undefined } } async function pickScript(path: string) {