If defined, at the end of the step, the flow will be suspended until it receives external requests to be resumed or canceled. This is most useful to implement approval steps but can be used flexibly for other purposes. { if (isSuspendEnabled && flowModule.suspend != undefined) { flowModule.suspend = undefined } else { flowModule.suspend = { required_events: 1, timeout: 1800 } } }} options={{ right: 'Suspend flow execution until events/approvals received' }} />
Core
Form
Permissions
{#if suspendTabSelected === 'core'}
{ if (flowModule.suspend) { flowModule.suspend.continue_on_disapprove_timeout = e.detail } }} />
{:else if suspendTabSelected === 'permissions'}
{#if emptyString($enterpriseLicense)} {/if} {#if flowModule.suspend}
{ if (flowModule.suspend) { flowModule.suspend.user_auth_required = e.detail if (e.detail && flowModule.suspend?.user_groups_required === undefined) { flowModule.suspend.user_groups_required = { type: 'static', value: [] } } else if (!e.detail) { flowModule.suspend.user_groups_required = undefined flowModule.suspend.self_approval_disabled = false } } }} /> { if (flowModule.suspend) { flowModule.suspend.self_approval_disabled = e.detail } }} />
{#if Boolean(flowModule.suspend.user_auth_required) && allUserGroups.length !== 0 && flowModule.suspend && schema.properties['groups']} Require approvers to be members of one of the following user groups (leave empty for any)
{ editor?.insertAtCursor(detail) editor?.focus() }} >
{/if}
{/if}
{:else}
{#if flowModule?.suspend?.resume_form} { const schema = e.detail // If the schema is empty, remove the form if (Object.keys(schema?.properties ?? {}).length === 0) { tick().then(() => { if (!flowModule.suspend) return flowModule.suspend.resume_form = undefined }) } }} {jsonView} /> {:else if emptyString($enterpriseLicense)} {:else}
{ if (flowModule.suspend) { flowModule.suspend.resume_form = { schema: emptySchema() } } jsonView = true }} />
{ jsonView = false if (flowModule.suspend) { flowModule.suspend.resume_form = { schema: e.detail } } }} schema={{}} /> {/if}
{#if flowModule.suspend} {#if emptyString($enterpriseLicense)} {/if}
{/if} {#if flowModule.suspend} {/if}
{/if}