diff --git a/frontend/src/lib/components/Toast.svelte b/frontend/src/lib/components/Toast.svelte index d58790b196..6eae1fd24e 100644 --- a/frontend/src/lib/components/Toast.svelte +++ b/frontend/src/lib/components/Toast.svelte @@ -1,11 +1,14 @@ -{#if app} -
- -
-{/if} +{#key redraw} + {#if app} +
+ +
+ {/if} +{/key} diff --git a/frontend/src/routes/(root)/(logged)/flows/add/+page.svelte b/frontend/src/routes/(root)/(logged)/flows/add/+page.svelte index cb1fec14c0..9c62dca5c7 100644 --- a/frontend/src/routes/(root)/(logged)/flows/add/+page.svelte +++ b/frontend/src/routes/(root)/(logged)/flows/add/+page.svelte @@ -55,7 +55,24 @@ $importFlowStore = undefined sendUserToast('Flow loaded from JSON') } else if (!templatePath && !hubId && state) { - sendUserToast('Flow restored from draft') + sendUserToast('Flow restored from draft', false, [ + { + label: 'Start from blank instead', + callback: () => { + $flowStore = { + summary: '', + value: { modules: [] }, + path: '', + edited_at: '', + edited_by: '', + archived: false, + extra_perms: {}, + schema: emptySchema() + } + } + } + ]) + flow = state.flow state?.selectedId && (selectedId = state?.selectedId) } else { diff --git a/frontend/src/routes/(root)/(logged)/flows/edit/[...path]/+page.svelte b/frontend/src/routes/(root)/(logged)/flows/edit/[...path]/+page.svelte index 0a19a17870..38a07582a7 100644 --- a/frontend/src/routes/(root)/(logged)/flows/edit/[...path]/+page.svelte +++ b/frontend/src/routes/(root)/(logged)/flows/edit/[...path]/+page.svelte @@ -40,7 +40,19 @@ loading = true let flow: Flow if (stateLoadedFromUrl != undefined && stateLoadedFromUrl?.flow?.path == $page.params.path) { - sendUserToast('Flow restored from draft') + sendUserToast('Flow restored from draft', false, [ + { + label: 'Restore last saved version instead', + callback: () => { + FlowService.getFlowByPath({ + workspace: $workspaceStore!, + path: $page.params.path + }).then((flow) => { + $flowStore = flow + }) + } + } + ]) flow = stateLoadedFromUrl.flow } else { flow = await FlowService.getFlowByPath({