+
{#if isRunning}
-
+
+
+
{:else}
-
+
{#if jobId !== undefined && selectedJobStep !== undefined && selectedJobStepIsTopLevel}
{#if selectedJobStepType == 'single'}
{/if}
-
-
- {#if initialPath != ''}
-
- {/if}
-
{#if lastPreviewFlow && JSON.stringify($flowStore) != lastPreviewFlow}
@@ -387,17 +321,68 @@
-
+
- {#key renderCount}
-
- {/key}
+
{
+ selectInput(e.detail.payload, e.detail?.type)
+ }}
+ {isValid}
+ {jsonView}
+ >
+
+
+
+ {
+ jsonEditor?.setCode(JSON.stringify($previewArgs ?? {}, null, '\t'))
+ refresh()
+ }}
+ />
+
+
+ {#if jsonView}
+
+ {
+ if (e.detail) {
+ $previewArgs = e.detail
+ }
+ }}
+ updateOnBlur={false}
+ placeholder={`Write args as JSON.
Example:
{
"foo": "12"
}`}
+ />
+
+ {:else}
+ {#key renderCount}
+
+ {
+ savedArgs = $previewArgs
+ }}
+ bind:isValid
+ />
+
+ {/key}
+ {/if}
+
{#if jobId}
diff --git a/frontend/src/lib/components/FlowStatusViewerInner.svelte b/frontend/src/lib/components/FlowStatusViewerInner.svelte
index a102700fc2..79fafd02ce 100644
--- a/frontend/src/lib/components/FlowStatusViewerInner.svelte
+++ b/frontend/src/lib/components/FlowStatusViewerInner.svelte
@@ -821,7 +821,7 @@
As a non logged in user, you can only see jobs ran by anonymous users like you
{:else if job}
-
+
-
+
{
previewOpen = false
}}
+ bind:preventEscape
/>
@@ -378,6 +367,7 @@
on:schemaChange={() => {
resetArgs()
}}
+ bind:isValid
>
@@ -470,9 +460,8 @@
}}
>
{
updatePreviewSchemaAndArgs(e.detail ?? undefined)
}}
@@ -490,12 +479,17 @@
- {
- updatePreviewSchemaAndArgs(e.detail ?? undefined)
- }}
- flowPath={$pathStore}
- />
+
+ {
+ updatePreviewSchemaAndArgs(e.detail ?? undefined)
+ }}
+ isFlow={true}
+ headless={true}
+ addButton={false}
+ />
+
{:else if $flowInputEditorState?.selectedTab === 'savedInputs'}
{
updatePreviewSchemaAndArgs(e.detail ?? undefined)
}}
@@ -513,6 +508,7 @@
preventEnter = e.detail
}}
previewArgs={previewArguments}
+ {isValid}
/>
{:else if $flowInputEditorState?.selectedTab === 'json'}
@@ -522,26 +518,16 @@
}}
title="Json payload"
>
- {
preventEnter = true
- updatePayloadFromJson(pendingJson)
}}
on:blur={async () => {
preventEnter = false
- setTimeout(() => {
- if (payloadData) {
- updatePayloadFromJson('')
- }
- }, 100)
}}
- on:change={(e) => {
- updatePayloadFromJson(e.detail.code)
+ on:select={(e) => {
+ updatePreviewSchemaAndArgs(e.detail ?? undefined)
}}
- bind:code={pendingJson}
- lang="json"
- class="h-full"
- placeholder={'Write a JSON payload. The input schema will be inferred.
Example:
{
"foo": "12"
}'}
/>
{:else if $flowInputEditorState?.selectedTab === 'firstStepInputs'}
@@ -575,7 +561,7 @@
-
+
diff --git a/frontend/src/lib/components/meltComponents/Popover.svelte b/frontend/src/lib/components/meltComponents/Popover.svelte
index ec8618582a..18122ba505 100644
--- a/frontend/src/lib/components/meltComponents/Popover.svelte
+++ b/frontend/src/lib/components/meltComponents/Popover.svelte
@@ -7,6 +7,8 @@
export let closeButton: boolean = true
export let displayArrow: boolean = false
export let placement: any = 'bottom'
+ export let disablePopup: boolean = false
+ export let openOnHover: boolean = false
const {
elements: { trigger, content, arrow, close },
@@ -22,7 +24,14 @@
$: sync.open(open, (v) => (open = v))
-