From 608e97a46e046efe65cedf268d63047fcd1bbbcc Mon Sep 17 00:00:00 2001 From: Ruben Fiszel Date: Sat, 28 Feb 2026 22:30:15 +0000 Subject: [PATCH] fix: sync flow on_behalf_of_email on load (#8149) --- frontend/src/lib/components/FlowBuilder.svelte | 7 +++++++ frontend/src/lib/components/ScriptBuilder.svelte | 5 +++++ .../src/lib/components/flows/content/FlowSettings.svelte | 7 ++++++- 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/frontend/src/lib/components/FlowBuilder.svelte b/frontend/src/lib/components/FlowBuilder.svelte index 5266f4f169..7e224af535 100644 --- a/frontend/src/lib/components/FlowBuilder.svelte +++ b/frontend/src/lib/components/FlowBuilder.svelte @@ -137,6 +137,13 @@ let preserveOnBehalfOf = writable(false) let savedOnBehalfOfEmail = writable(savedFlow?.on_behalf_of_email) + // Keep savedOnBehalfOfEmail in sync when savedFlow is loaded asynchronously + $effect(() => { + if (savedFlow?.on_behalf_of_email !== undefined) { + savedOnBehalfOfEmail.set(savedFlow.on_behalf_of_email) + } + }) + // used for new flows for captures let fakeInitialPath = 'u/' + diff --git a/frontend/src/lib/components/ScriptBuilder.svelte b/frontend/src/lib/components/ScriptBuilder.svelte index 40c4c2b896..19f2600483 100644 --- a/frontend/src/lib/components/ScriptBuilder.svelte +++ b/frontend/src/lib/components/ScriptBuilder.svelte @@ -1650,6 +1650,11 @@ customEmail={customOnBehalfOfEmail} isDeployment={false} /> + {:else if script.on_behalf_of_email && !canPreserve} + + Currently: {originalOnBehalfOfEmail ?? script.on_behalf_of_email}. + Will be set to {$userStore?.email} on deploy (requires admin or wm_deployers group to override) + {/if} diff --git a/frontend/src/lib/components/flows/content/FlowSettings.svelte b/frontend/src/lib/components/flows/content/FlowSettings.svelte index 0520aef8c3..df2ae37049 100644 --- a/frontend/src/lib/components/flows/content/FlowSettings.svelte +++ b/frontend/src/lib/components/flows/content/FlowSettings.svelte @@ -82,7 +82,7 @@ { name: 'Early Return', active: Boolean(flowStore.val.value.early_return) }, { name: 'Dedicated Worker', active: Boolean(flowStore.val.dedicated_worker) }, { name: 'Concurrent Limit', active: Boolean(flowStore.val.value.concurrent_limit) }, - { name: 'Run on Behalf of Last Editor', active: Boolean(flowStore.val.on_behalf_of_email) }, + { name: `Run on Behalf of ${flowStore.val.on_behalf_of_email ?? 'Last Editor'}`, active: Boolean(flowStore.val.on_behalf_of_email) }, { name: 'Worker Tag', active: displayWorkerTagPicker } ]) @@ -428,6 +428,11 @@ customEmail={customOnBehalfOfEmail} isDeployment={false} /> + {:else if flowStore.val.on_behalf_of_email && !canPreserve} + + Currently: {$savedOnBehalfOfEmail ?? flowStore.val.on_behalf_of_email}. + Will be set to {$userStore?.email} on deploy (requires admin or wm_deployers group to override) + {/if}