-
(open = i)}
- on:click|preventDefault={scrollIntoView}> (open = i)} on:click|preventDefault={scrollTo}
+ >
diff --git a/frontend/src/lib/components/flows/flowStore.ts b/frontend/src/lib/components/flows/flowStore.ts
index e70602278b..ae1720f9d0 100644
--- a/frontend/src/lib/components/flows/flowStore.ts
+++ b/frontend/src/lib/components/flows/flowStore.ts
@@ -3,7 +3,7 @@ import { FlowModuleValue, ScriptService, type Flow, type FlowModule } from '$lib
import { initialCode } from '$lib/script_helpers'
import { userStore, workspaceStore } from '$lib/stores'
import { derived, get, writable } from 'svelte/store'
-import { createInlineScriptModuleFromPath, getFirstStepSchema, loadSchemaFromModule } from './utils'
+import { createInlineScriptModuleFromPath, getFirstStepSchema, loadSchemaFromModule, scrollIntoView } from './utils'
export type FlowMode = 'push' | 'pull'
@@ -37,9 +37,14 @@ export function addModule(i?: number) {
input_transform: {}
}
+
flowStore.update((flow: Flow) => {
- flow.value.modules.splice(i ?? flow.value.modules.length, 0, newModule)
+ const insertAt = i ?? flow.value.modules.length
+
+ flow.value.modules.splice(insertAt, 0, newModule)
flow.value.modules = flow.value.modules
+ setTimeout(() => scrollIntoView(document.querySelector(`#module-${insertAt}`)), 100)
+
return flow
})
}
diff --git a/frontend/src/lib/components/flows/utils.ts b/frontend/src/lib/components/flows/utils.ts
index 6d6e6a20ef..954cb84246 100644
--- a/frontend/src/lib/components/flows/utils.ts
+++ b/frontend/src/lib/components/flows/utils.ts
@@ -153,6 +153,15 @@ export async function createInlineScriptModuleFromPath(path: string): Promise
schema: Schema
diff --git a/frontend/src/routes/flows/add.svelte b/frontend/src/routes/flows/add.svelte
index a5a2837ed4..ffbe647b65 100644
--- a/frontend/src/routes/flows/add.svelte
+++ b/frontend/src/routes/flows/add.svelte
@@ -23,7 +23,6 @@
}
initFlow(flow)
- addModule()