diff --git a/frontend/src/lib/components/FlowJobResult.svelte b/frontend/src/lib/components/FlowJobResult.svelte index 92d98d61c3..35a5fb39a3 100644 --- a/frontend/src/lib/components/FlowJobResult.svelte +++ b/frontend/src/lib/components/FlowJobResult.svelte @@ -4,17 +4,16 @@ import DisplayResult from './DisplayResult.svelte' import LogViewer from './LogViewer.svelte' - export let job: CompletedJob | undefined + export let result: any + export let logs: string -{#if job} -
-
- Result - -
-
- -
+
+
+ Result +
-{/if} +
+ +
+
diff --git a/frontend/src/lib/components/FlowStatusViewer.svelte b/frontend/src/lib/components/FlowStatusViewer.svelte index debfec1d47..e460555dfb 100644 --- a/frontend/src/lib/components/FlowStatusViewer.svelte +++ b/frontend/src/lib/components/FlowStatusViewer.svelte @@ -9,6 +9,7 @@ import { onDestroy } from 'svelte' import type { FlowState } from './flows/flowState' import { Button } from './common' + import DisplayResult from './DisplayResult.svelte' const dispatch = createEventDispatcher() @@ -23,9 +24,20 @@ | undefined = undefined export let job: Job | undefined = undefined + let jobResults: any[] = [] + let forloop_selected = '' let timeout: NodeJS.Timeout + let lastSize = 0 + $: { + let len = (flowJobIds?.flowJobs ?? []).length + if (len != lastSize) { + forloop_selected = flowJobIds?.flowJobs[len - 1] ?? '' + lastSize = len + } + } + $: innerModules = job?.flow_status?.modules .filter((x) => x.job != jobId) @@ -64,6 +76,8 @@ $: jobId && updateJobId() + $: isListJob = flowJobIds && Array.isArray(flowJobIds?.flowJobs) + onDestroy(() => { timeout && clearTimeout(timeout) }) @@ -74,23 +88,30 @@ {#if innerModules.length > 0}

Flow result

{/if} -
0 ? 'border border-gray-400 shadow p-2' : ''}> - - {#if `result` in job} -
- -
- {:else if job.logs} -
-
{job.logs}
-
- {/if} -
- {#if flowJobIds && Array.isArray(flowJobIds?.flowJobs) && flowJobIds?.flowJobs.length > 0} + {#if isListJob} +
+ +
+ {:else} +
0 ? 'border border-gray-400 shadow p-2' : ''}> + + {#if `result` in job} +
+ +
+ {:else if job.logs} +
+
{job.logs}
+
+ {/if} +
+ {/if} + + {#if isListJob}

Embedded flows: ({flowJobIds?.flowJobs.length} items)

- {#each flowJobIds.flowJobs as loopJobId, j} + {#each flowJobIds?.flowJobs ?? [] as loopJobId, j}