diff --git a/frontend/src/lib/components/flows/FlowHistory.svelte b/frontend/src/lib/components/flows/FlowHistory.svelte
index 3c53a076f6..8fe3729ea9 100644
--- a/frontend/src/lib/components/flows/FlowHistory.svelte
+++ b/frontend/src/lib/components/flows/FlowHistory.svelte
@@ -11,6 +11,7 @@
import Button from '../common/button/Button.svelte'
import { ArrowRight, Pencil, X } from 'lucide-svelte'
import { createEventDispatcher } from 'svelte'
+ import { goto } from '$app/navigation'
export let path: string
let drawer: Drawer
@@ -191,6 +192,13 @@
{/if}
+
diff --git a/frontend/src/routes/(root)/(logged)/flows/add/+page.svelte b/frontend/src/routes/(root)/(logged)/flows/add/+page.svelte
index b9554c7fc5..332d877c13 100644
--- a/frontend/src/routes/(root)/(logged)/flows/add/+page.svelte
+++ b/frontend/src/routes/(root)/(logged)/flows/add/+page.svelte
@@ -25,6 +25,7 @@
const hubId = $page.url.searchParams.get('hub')
const templatePath = $page.url.searchParams.get('template')
+ const templateId = $page.url.searchParams.get('template_id')
const initialState = hubId || templatePath || nodraft ? undefined : localStorage.getItem('flow')
let selectedId: string = 'settings-metadata'
@@ -98,13 +99,21 @@
state?.selectedId && (selectedId = state?.selectedId)
} else {
if (templatePath) {
- const template = await FlowService.getFlowByPath({
- workspace: $workspaceStore!,
- path: templatePath
- })
+ let template: Flow
+ if (templateId) {
+ template = await FlowService.getFlowVersion({
+ workspace: $workspaceStore!,
+ path: templatePath,
+ version: parseInt(templateId)
+ })
+ } else {
+ template = await FlowService.getFlowByPath({
+ workspace: $workspaceStore!,
+ path: templatePath
+ })
+ }
Object.assign(flow, template)
const oldPath = templatePath.split('/')
- console.log(oldPath)
initialPath = `u/${$userStore?.username.split('@')[0]}/${oldPath[oldPath.length - 1]}_fork`
flow = flow
goto('?', { replaceState: true })