mirror of
https://github.com/windmill-labs/windmill.git
synced 2026-08-24 00:00:46 +00:00
rename test job loader
This commit is contained in:
@@ -5845,7 +5845,7 @@ fn get_job_update_sse_stream(
|
||||
let mut i = 0;
|
||||
loop {
|
||||
i += 1;
|
||||
let ms_duration = if i > 10 { 1000 } else if i > 50 { 5000 } else { 100 };
|
||||
let ms_duration = if i > 10 { 500 } else if i > 100 { 3000 } else { 100 };
|
||||
tokio::time::sleep(std::time::Duration::from_millis(ms_duration)).await;
|
||||
|
||||
match get_job_update_data(
|
||||
|
||||
@@ -180,10 +180,10 @@
|
||||
"types": "./package/components/scriptBuilder.d.ts",
|
||||
"default": "./package/components/scriptBuilder.js"
|
||||
},
|
||||
"./components/TestJobLoader.svelte": {
|
||||
"types": "./package/components/TestJobLoader.svelte.d.ts",
|
||||
"svelte": "./package/components/TestJobLoader.svelte",
|
||||
"default": "./package/components/TestJobLoader.svelte"
|
||||
"./components/JobLoader.svelte": {
|
||||
"types": "./package/components/JobLoader.svelte.d.ts",
|
||||
"svelte": "./package/components/JobLoader.svelte",
|
||||
"default": "./package/components/JobLoader.svelte"
|
||||
},
|
||||
"./components/common/kbd/Kbd.svelte": {
|
||||
"types": "./package/components/common/kbd/Kbd.svelte.d.ts",
|
||||
@@ -404,8 +404,8 @@
|
||||
"components/IconedResourceType.svelte": [
|
||||
"./package/components/IconedResourceType.svelte.d.ts"
|
||||
],
|
||||
"components/TestJobLoader.svelte": [
|
||||
"./package/components/TestJobLoader.svelte.d.ts"
|
||||
"components/JobLoader.svelte": [
|
||||
"./package/components/JobLoader.svelte.d.ts"
|
||||
],
|
||||
"components/SchemaForm.svelte": [
|
||||
"./package/components/SchemaForm.svelte.d.ts"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<script lang="ts">
|
||||
import SchemaForm from '$lib/components/SchemaForm.svelte'
|
||||
import TestJobLoader from '$lib/components/TestJobLoader.svelte'
|
||||
import JobLoader from '$lib/components/JobLoader.svelte'
|
||||
import { Button } from '$lib/components/common'
|
||||
import { WindmillIcon } from '$lib/components/icons'
|
||||
import LogPanel from '$lib/components/scriptEditor/LogPanel.svelte'
|
||||
@@ -98,7 +98,7 @@
|
||||
darkModeToggle?.toggle()
|
||||
}
|
||||
|
||||
let testJobLoader: TestJobLoader | undefined = $state()
|
||||
let jobLoader: JobLoader | undefined = $state()
|
||||
let socket: WebSocket | undefined = undefined
|
||||
|
||||
// Test args input
|
||||
@@ -160,7 +160,7 @@
|
||||
}
|
||||
} else if (event.data.type == 'testPreviewBundle') {
|
||||
if (event.data.id == lastCommandId && currentScript) {
|
||||
testJobLoader?.runPreview(
|
||||
jobLoader?.runPreview(
|
||||
currentScript.path,
|
||||
event.data.file,
|
||||
currentScript.language,
|
||||
@@ -221,7 +221,7 @@
|
||||
})
|
||||
|
||||
async function testBundle(file: string, isTar: boolean) {
|
||||
testJobLoader?.abstractRun(async () => {
|
||||
jobLoader?.abstractRun(async () => {
|
||||
try {
|
||||
const form = new FormData()
|
||||
form.append(
|
||||
@@ -338,7 +338,7 @@
|
||||
)
|
||||
} else {
|
||||
//@ts-ignore
|
||||
testJobLoader.runPreview(
|
||||
jobLoader.runPreview(
|
||||
currentScript.path,
|
||||
currentScript.content,
|
||||
currentScript.language,
|
||||
@@ -637,10 +637,10 @@
|
||||
|
||||
<svelte:window onkeydown={onKeyDown} />
|
||||
|
||||
<TestJobLoader
|
||||
<JobLoader
|
||||
noCode={true}
|
||||
on:done={loadPastTests}
|
||||
bind:this={testJobLoader}
|
||||
bind:this={jobLoader}
|
||||
bind:isLoading={testIsLoading}
|
||||
bind:job={testJob}
|
||||
/>
|
||||
@@ -704,7 +704,7 @@
|
||||
{/if}
|
||||
<div class="flex justify-center pt-1">
|
||||
{#if testIsLoading}
|
||||
<Button on:click={testJobLoader?.cancelJob} btnClasses="w-full" color="red" size="xs">
|
||||
<Button on:click={jobLoader?.cancelJob} btnClasses="w-full" color="red" size="xs">
|
||||
<WindmillIcon
|
||||
white={true}
|
||||
class="mr-2 text-white"
|
||||
|
||||
-1
@@ -214,7 +214,6 @@
|
||||
|
||||
// Try SSE first, fall back to polling if needed
|
||||
const isCompleted = await loadTestJobWithSSE(testId)
|
||||
console.log('isCompleted', isCompleted)
|
||||
if (!isCompleted && !currentEventSource) {
|
||||
// If SSE didn't start (job might not be running yet), use polling
|
||||
setTimeout(() => {
|
||||
@@ -4,7 +4,7 @@
|
||||
import { getScriptByPath } from '$lib/scripts'
|
||||
import { getContext } from 'svelte'
|
||||
import type { FlowEditorContext } from './flows/types'
|
||||
import TestJobLoader from './TestJobLoader.svelte'
|
||||
import JobLoader from './JobLoader.svelte'
|
||||
import { getStepHistoryLoaderContext } from './stepHistoryLoader.svelte'
|
||||
|
||||
interface Props {
|
||||
@@ -26,7 +26,7 @@
|
||||
const { flowStore, flowStateStore, pathStore, testSteps, previewArgs, modulesTestStates } =
|
||||
getContext<FlowEditorContext>('FlowEditorContext')
|
||||
|
||||
let testJobLoader: TestJobLoader | undefined = $state(undefined)
|
||||
let jobLoader: JobLoader | undefined = $state(undefined)
|
||||
let jobProgressReset: () => void = () => {}
|
||||
let stepHistoryLoader = getStepHistoryLoaderContext()
|
||||
|
||||
@@ -45,7 +45,7 @@
|
||||
|
||||
if (modulesTestStates.states[mod.id]) {
|
||||
modulesTestStates.states[mod.id].cancel = async () => {
|
||||
await testJobLoader?.cancelJob()
|
||||
await jobLoader?.cancelJob()
|
||||
modulesTestStates.states[mod.id].testJob = undefined
|
||||
}
|
||||
modulesTestStates.runTestCb?.(mod.id)
|
||||
@@ -54,7 +54,7 @@
|
||||
const val = mod.value
|
||||
// let jobId: string | undefined = undefined
|
||||
if (val.type == 'rawscript') {
|
||||
await testJobLoader?.runPreview(
|
||||
await jobLoader?.runPreview(
|
||||
val.path ?? ($pathStore ?? '') + '/' + mod.id,
|
||||
val.content,
|
||||
val.language,
|
||||
@@ -65,7 +65,7 @@
|
||||
const script = val.hash
|
||||
? await ScriptService.getScriptByHash({ workspace: $workspaceStore!, hash: val.hash })
|
||||
: await getScriptByPath(val.path)
|
||||
await testJobLoader?.runPreview(
|
||||
await jobLoader?.runPreview(
|
||||
val.path,
|
||||
script.content,
|
||||
script.language,
|
||||
@@ -75,7 +75,7 @@
|
||||
val.hash ?? script.hash
|
||||
)
|
||||
} else if (val.type == 'flow') {
|
||||
await testJobLoader?.runFlowByPath(val.path, args)
|
||||
await jobLoader?.runFlowByPath(val.path, args)
|
||||
} else {
|
||||
throw Error('Not supported module type')
|
||||
}
|
||||
@@ -116,12 +116,12 @@
|
||||
}
|
||||
</script>
|
||||
|
||||
<TestJobLoader
|
||||
<JobLoader
|
||||
noCode={true}
|
||||
toastError={noEditor}
|
||||
on:done={() => jobDone()}
|
||||
bind:scriptProgress
|
||||
bind:this={testJobLoader}
|
||||
bind:this={jobLoader}
|
||||
bind:isLoading={
|
||||
() => modulesTestStates.states[mod.id]?.loading ?? false,
|
||||
(v) => {
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
import SchemaForm from './SchemaForm.svelte'
|
||||
import LogPanel from './scriptEditor/LogPanel.svelte'
|
||||
import EditorBar, { EDITOR_BAR_WIDTH_THRESHOLD } from './EditorBar.svelte'
|
||||
import TestJobLoader from './TestJobLoader.svelte'
|
||||
import JobLoader from './JobLoader.svelte'
|
||||
import JobProgressBar from '$lib/components/jobs/JobProgressBar.svelte'
|
||||
import { createEventDispatcher, onDestroy, onMount, untrack } from 'svelte'
|
||||
import { Button } from './common'
|
||||
@@ -172,7 +172,7 @@
|
||||
|
||||
let width = $state(1200)
|
||||
|
||||
let testJobLoader: TestJobLoader | undefined = $state(undefined)
|
||||
let jobLoader: JobLoader | undefined = $state(undefined)
|
||||
|
||||
let isValid: boolean = $state(true)
|
||||
let scriptProgress = $state(undefined)
|
||||
@@ -217,7 +217,7 @@
|
||||
// Not defined if JobProgressBar not loaded
|
||||
if (jobProgressReset) jobProgressReset()
|
||||
//@ts-ignore
|
||||
let job = await testJobLoader.runPreview(
|
||||
let job = await jobLoader.runPreview(
|
||||
path,
|
||||
code,
|
||||
lang,
|
||||
@@ -444,11 +444,11 @@
|
||||
})
|
||||
</script>
|
||||
|
||||
<TestJobLoader
|
||||
<JobLoader
|
||||
noCode={true}
|
||||
on:done={loadPastTests}
|
||||
bind:scriptProgress
|
||||
bind:this={testJobLoader}
|
||||
bind:this={jobLoader}
|
||||
bind:isLoading={testIsLoading}
|
||||
bind:job={testJob}
|
||||
/>
|
||||
@@ -676,7 +676,7 @@
|
||||
/>
|
||||
</div>
|
||||
{#if testIsLoading}
|
||||
<Button on:click={testJobLoader?.cancelJob} btnClasses="w-full" color="red" size="xs">
|
||||
<Button on:click={jobLoader?.cancelJob} btnClasses="w-full" color="red" size="xs">
|
||||
<WindmillIcon
|
||||
white={true}
|
||||
class="mr-2 text-white"
|
||||
|
||||
+5
-5
@@ -9,7 +9,7 @@
|
||||
type RichConfigurations
|
||||
} from '../../types'
|
||||
import { initCss } from '../../utils'
|
||||
import TestJobLoader from '$lib/components/TestJobLoader.svelte'
|
||||
import JobLoader from '$lib/components/JobLoader.svelte'
|
||||
import type { Job } from '$lib/gen'
|
||||
import { components } from '../../editor/component'
|
||||
import ResolveConfig from '../helpers/ResolveConfig.svelte'
|
||||
@@ -51,7 +51,7 @@
|
||||
|
||||
let css = $state(initCss($app.css?.jobiddisplaycomponent, customCss))
|
||||
|
||||
let testJobLoader: TestJobLoader | undefined = $state(undefined)
|
||||
let jobLoader: JobLoader | undefined = $state(undefined)
|
||||
let testIsLoading: boolean = $state(false)
|
||||
let testJob: Job | undefined = $state(undefined)
|
||||
|
||||
@@ -61,7 +61,7 @@
|
||||
outputs.loading.set(true)
|
||||
const jobId = resolvedConfig?.['jobId']
|
||||
if (jobId) {
|
||||
testJobLoader?.watchJob(jobId)
|
||||
jobLoader?.watchJob(jobId)
|
||||
}
|
||||
})
|
||||
}
|
||||
@@ -89,10 +89,10 @@
|
||||
/>
|
||||
{/each}
|
||||
|
||||
<TestJobLoader
|
||||
<JobLoader
|
||||
noCode={true}
|
||||
workspaceOverride={workspace}
|
||||
bind:this={testJobLoader}
|
||||
bind:this={jobLoader}
|
||||
bind:isLoading={testIsLoading}
|
||||
bind:job={testJob}
|
||||
on:done={(e) => {
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
import type { AppViewerContext, ComponentCustomCSS, RichConfigurations } from '../../types'
|
||||
import { initCss } from '../../utils'
|
||||
import LogViewer from '$lib/components/LogViewer.svelte'
|
||||
import TestJobLoader from '$lib/components/TestJobLoader.svelte'
|
||||
import JobLoader from '$lib/components/JobLoader.svelte'
|
||||
import type { Job } from '$lib/gen'
|
||||
import { components } from '../../editor/component'
|
||||
import ResolveConfig from '../helpers/ResolveConfig.svelte'
|
||||
@@ -50,7 +50,7 @@
|
||||
|
||||
let css = $state(initCss($app.css?.jobidlogcomponent, customCss))
|
||||
|
||||
let testJobLoader: TestJobLoader | undefined = $state(undefined)
|
||||
let jobLoader: JobLoader | undefined = $state(undefined)
|
||||
let testIsLoading: boolean = $state(false)
|
||||
let testJob: Job | undefined = $state(undefined)
|
||||
|
||||
@@ -60,7 +60,7 @@
|
||||
outputs.loading.set(true)
|
||||
const jobId = resolvedConfig?.['jobId']
|
||||
if (jobId) {
|
||||
testJobLoader?.watchJob(jobId)
|
||||
jobLoader?.watchJob(jobId)
|
||||
}
|
||||
})
|
||||
}
|
||||
@@ -86,10 +86,10 @@
|
||||
/>
|
||||
{/each}
|
||||
|
||||
<TestJobLoader
|
||||
<JobLoader
|
||||
noCode={true}
|
||||
workspaceOverride={workspace}
|
||||
bind:this={testJobLoader}
|
||||
bind:this={jobLoader}
|
||||
bind:isLoading={testIsLoading}
|
||||
bind:job={testJob}
|
||||
on:done={(e) => {
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
import AppTimeline from './AppTimeline.svelte'
|
||||
|
||||
import HighlightCode from '$lib/components/HighlightCode.svelte'
|
||||
import TestJobLoader from '$lib/components/TestJobLoader.svelte'
|
||||
import JobLoader from '$lib/components/JobLoader.svelte'
|
||||
import type { Job } from '$lib/gen'
|
||||
import type { JobById } from '../types'
|
||||
import { createEventDispatcher, untrack } from 'svelte'
|
||||
@@ -44,7 +44,7 @@
|
||||
|
||||
const dispatch = createEventDispatcher()
|
||||
|
||||
let testJobLoader: TestJobLoader | undefined = $state()
|
||||
let jobLoader: JobLoader | undefined = $state()
|
||||
let job: Job | undefined = $state(undefined)
|
||||
let testIsLoading = $state(false)
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
$effect(() => {
|
||||
selectedJobId &&
|
||||
!selectedJobId?.includes('Frontend') &&
|
||||
untrack(() => selectedJobId && testJobLoader?.watchJob(selectedJobId))
|
||||
untrack(() => selectedJobId && jobLoader?.watchJob(selectedJobId))
|
||||
})
|
||||
|
||||
$effect(() => {
|
||||
@@ -63,7 +63,7 @@
|
||||
})
|
||||
</script>
|
||||
|
||||
<TestJobLoader noCode={true} bind:this={testJobLoader} bind:isLoading={testIsLoading} bind:job />
|
||||
<JobLoader noCode={true} bind:this={jobLoader} bind:isLoading={testIsLoading} bind:job />
|
||||
|
||||
<Drawer bind:open size="900px">
|
||||
<DrawerContent
|
||||
@@ -180,7 +180,7 @@
|
||||
<Button
|
||||
color="red"
|
||||
variant="border"
|
||||
on:click={() => testJobLoader?.cancelJob()}
|
||||
on:click={() => jobLoader?.cancelJob()}
|
||||
>
|
||||
<Loader2 size={14} class="animate-spin mr-2" />
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<script lang="ts">
|
||||
import { getContext, untrack } from 'svelte'
|
||||
import type { AppEditorContext } from '../types'
|
||||
import TestJobLoader from '$lib/components/TestJobLoader.svelte'
|
||||
import JobLoader from '$lib/components/JobLoader.svelte'
|
||||
import type { Job } from '$lib/gen'
|
||||
import RunnableJobPanelInner from './RunnableJobPanelInner.svelte'
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
getContext<AppEditorContext>('AppEditorContext')
|
||||
let testIsLoading = $state(false)
|
||||
|
||||
let testJobLoader: TestJobLoader | undefined = $state()
|
||||
let jobLoader: JobLoader | undefined = $state()
|
||||
|
||||
function updateSelectedJob() {
|
||||
const selectedComponent = $selectedComponentInEditor
|
||||
@@ -40,7 +40,7 @@
|
||||
testJob = undefined
|
||||
}
|
||||
jobToWatch = { componentId: selectedComponent, job: backendJob }
|
||||
testJobLoader?.watchJob(backendJob)
|
||||
jobLoader?.watchJob(backendJob)
|
||||
} else {
|
||||
testJob = undefined
|
||||
jobToWatch = undefined
|
||||
@@ -60,7 +60,7 @@
|
||||
})
|
||||
</script>
|
||||
|
||||
<TestJobLoader bind:this={testJobLoader} bind:isLoading={testIsLoading} bind:job={testJob} />
|
||||
<JobLoader bind:this={jobLoader} bind:isLoading={testIsLoading} bind:job={testJob} />
|
||||
|
||||
{#if ($runnableJobEditorPanel.focused && $selectedComponentInEditor) || logDrawerOpen || resultDrawerOpen || !float}
|
||||
{@const frontendJob = $runnableJobEditorPanel?.frontendJobs[$selectedComponentInEditor ?? '']}
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
import { onDestroy, tick } from 'svelte'
|
||||
import { fade } from 'svelte/transition'
|
||||
import { type Job } from '../../gen'
|
||||
import TestJobLoader from '../TestJobLoader.svelte'
|
||||
import JobLoader from '../JobLoader.svelte'
|
||||
import DisplayResult from '../DisplayResult.svelte'
|
||||
import JobArgs from '../JobArgs.svelte'
|
||||
import { writable } from 'svelte/store'
|
||||
@@ -29,7 +29,7 @@
|
||||
let hovered = $state(false)
|
||||
let timeout: NodeJS.Timeout | undefined
|
||||
let result: any = $state()
|
||||
let testJobLoader: TestJobLoader | undefined = $state()
|
||||
let jobLoader: JobLoader | undefined = $state()
|
||||
let loaded = false
|
||||
let wrapper: HTMLElement | undefined = $state()
|
||||
let popupOnTop = $state(true)
|
||||
@@ -43,7 +43,7 @@
|
||||
openStore.set(id)
|
||||
if (!loaded) {
|
||||
await tick()
|
||||
testJobLoader?.watchJob(id)
|
||||
jobLoader?.watchJob(id)
|
||||
}
|
||||
} else {
|
||||
timeout && clearTimeout(timeout)
|
||||
@@ -88,7 +88,7 @@
|
||||
|
||||
<svelte:window onkeydown={({ key }) => ['Escape', 'Esc'].includes(key) && close()} />
|
||||
{#if hovered}
|
||||
<TestJobLoader bind:job bind:this={testJobLoader} on:done={onDone} />
|
||||
<JobLoader bind:job bind:this={jobLoader} on:done={onDone} />
|
||||
{/if}
|
||||
|
||||
<!-- svelte-ignore a11y_no_static_element_interactions -->
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
import SplitPanesWrapper from '../splitPanes/SplitPanesWrapper.svelte'
|
||||
import SchemaForm from '../SchemaForm.svelte'
|
||||
import RunnableJobPanelInner from '../apps/editor/RunnableJobPanelInner.svelte'
|
||||
import TestJobLoader from '../TestJobLoader.svelte'
|
||||
import JobLoader from '../JobLoader.svelte'
|
||||
import type { Job } from '$lib/gen'
|
||||
|
||||
interface Props {
|
||||
@@ -52,7 +52,7 @@
|
||||
return {}
|
||||
}
|
||||
|
||||
let testJobLoader: TestJobLoader | undefined = $state()
|
||||
let jobLoader: JobLoader | undefined = $state()
|
||||
let testJob: Job | undefined = $state()
|
||||
let testIsLoading = $state(false)
|
||||
let scriptProgress = $state(0)
|
||||
@@ -71,7 +71,7 @@
|
||||
async function testPreview() {
|
||||
selectedTab = 'test'
|
||||
if (runnable?.type == 'runnableByName' && runnable.inlineScript?.language != 'frontend') {
|
||||
await testJobLoader?.runPreview(
|
||||
await jobLoader?.runPreview(
|
||||
appPath + '/' + id,
|
||||
runnable.inlineScript?.content ?? '',
|
||||
runnable.inlineScript?.language,
|
||||
@@ -79,11 +79,11 @@
|
||||
undefined
|
||||
)
|
||||
} else if (runnable?.type == 'runnableByPath') {
|
||||
if (testJobLoader && runnable?.type == 'runnableByPath') {
|
||||
if (jobLoader && runnable?.type == 'runnableByPath') {
|
||||
if (runnable.runType == 'flow') {
|
||||
await testJobLoader.runFlowByPath(runnable.path, args)
|
||||
await jobLoader.runFlowByPath(runnable.path, args)
|
||||
} else if (runnable.runType == 'script' || runnable.runType == 'hubscript') {
|
||||
await testJobLoader.runScriptByPath(runnable.path, args)
|
||||
await jobLoader.runScriptByPath(runnable.path, args)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -94,10 +94,10 @@
|
||||
})
|
||||
</script>
|
||||
|
||||
<TestJobLoader
|
||||
<JobLoader
|
||||
noCode={true}
|
||||
bind:scriptProgress
|
||||
bind:this={testJobLoader}
|
||||
bind:this={jobLoader}
|
||||
bind:isLoading={testIsLoading}
|
||||
bind:job={testJob}
|
||||
/>
|
||||
@@ -118,8 +118,8 @@
|
||||
isLoading={testIsLoading}
|
||||
onRun={testPreview}
|
||||
onCancel={async () => {
|
||||
if (testJobLoader) {
|
||||
await testJobLoader.cancelJob()
|
||||
if (jobLoader) {
|
||||
await jobLoader.cancelJob()
|
||||
}
|
||||
}}
|
||||
on:delete
|
||||
@@ -137,8 +137,8 @@
|
||||
isLoading={testIsLoading}
|
||||
onRun={testPreview}
|
||||
onCancel={async () => {
|
||||
if (testJobLoader) {
|
||||
await testJobLoader.cancelJob()
|
||||
if (jobLoader) {
|
||||
await jobLoader.cancelJob()
|
||||
}
|
||||
}}
|
||||
/>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<script lang="ts">
|
||||
import { base } from '$lib/base'
|
||||
import { ConcurrencyGroupsService, type Job, type WorkflowStatus } from '../../gen'
|
||||
import TestJobLoader from '../TestJobLoader.svelte'
|
||||
import JobLoader from '../JobLoader.svelte'
|
||||
import DisplayResult from '../DisplayResult.svelte'
|
||||
import JobArgs from '../JobArgs.svelte'
|
||||
import LogViewer from '../LogViewer.svelte'
|
||||
@@ -56,23 +56,23 @@
|
||||
}
|
||||
})
|
||||
$effect(() => {
|
||||
id && testJobLoader && untrack(() => testJobLoader?.watchJob(id))
|
||||
id && jobLoader && untrack(() => jobLoader?.watchJob(id))
|
||||
})
|
||||
$effect(() => {
|
||||
job?.logs == undefined && job && viewTab == 'logs' && untrack(() => testJobLoader?.getLogs())
|
||||
job?.logs == undefined && job && viewTab == 'logs' && untrack(() => jobLoader?.getLogs())
|
||||
})
|
||||
$effect(() => {
|
||||
job?.id && lastJobId !== job.id && untrack(() => job && getConcurrencyKey(job))
|
||||
})
|
||||
|
||||
let testJobLoader: TestJobLoader | undefined = $state(undefined)
|
||||
let jobLoader: JobLoader | undefined = $state(undefined)
|
||||
</script>
|
||||
|
||||
<TestJobLoader
|
||||
<JobLoader
|
||||
lazyLogs
|
||||
workspaceOverride={workspace}
|
||||
bind:job={currentJob}
|
||||
bind:this={testJobLoader}
|
||||
bind:this={jobLoader}
|
||||
on:done={onDone}
|
||||
/>
|
||||
|
||||
|
||||
@@ -60,7 +60,7 @@
|
||||
} from '$lib/stores'
|
||||
import FlowStatusViewer from '$lib/components/FlowStatusViewer.svelte'
|
||||
import HighlightCode from '$lib/components/HighlightCode.svelte'
|
||||
import TestJobLoader from '$lib/components/TestJobLoader.svelte'
|
||||
import JobLoader from '$lib/components/JobLoader.svelte'
|
||||
import LogViewer from '$lib/components/LogViewer.svelte'
|
||||
import { ActionRow, Button, Skeleton, Tab, Alert, DrawerContent } from '$lib/components/common'
|
||||
import Popover from '$lib/components/meltComponents/Popover.svelte'
|
||||
@@ -108,7 +108,7 @@
|
||||
let restartBranchNames: [number, string][] = []
|
||||
|
||||
let testIsLoading = $state(false)
|
||||
let testJobLoader: TestJobLoader | undefined = $state(undefined)
|
||||
let jobLoader: JobLoader | undefined = $state(undefined)
|
||||
|
||||
let persistentScriptDrawer: PersistentScriptDrawer | undefined = $state(undefined)
|
||||
|
||||
@@ -171,7 +171,7 @@
|
||||
}
|
||||
|
||||
async function getJob() {
|
||||
await testJobLoader?.watchJob($page.params.run)
|
||||
await jobLoader?.watchJob($page.params.run)
|
||||
initView()
|
||||
}
|
||||
|
||||
@@ -355,7 +355,7 @@
|
||||
job &&
|
||||
viewTab == 'logs' &&
|
||||
isNotFlow(job?.job_kind) &&
|
||||
testJobLoader?.getLogs()
|
||||
jobLoader?.getLogs()
|
||||
})
|
||||
$effect(() => {
|
||||
job?.id && lastJobId !== job.id && untrack(() => getConcurrencyKey(job))
|
||||
@@ -364,10 +364,7 @@
|
||||
$workspaceStore && $page.params.run && untrack(() => onRunsPageChange())
|
||||
})
|
||||
$effect(() => {
|
||||
$workspaceStore &&
|
||||
$page.params.run &&
|
||||
testJobLoader &&
|
||||
untrack(() => onRunsPageChangeWithLoader())
|
||||
$workspaceStore && $page.params.run && jobLoader && untrack(() => onRunsPageChangeWithLoader())
|
||||
})
|
||||
$effect(() => {
|
||||
selectedJobStep !== undefined && untrack(() => onSelectedJobStepChange())
|
||||
@@ -413,11 +410,11 @@
|
||||
</Drawer>
|
||||
{/if}
|
||||
{#if !job || (job?.job_kind != 'flow' && job?.job_kind != 'flownode' && job?.job_kind != 'flowpreview')}
|
||||
<TestJobLoader
|
||||
<JobLoader
|
||||
lazyLogs
|
||||
bind:scriptProgress
|
||||
on:done={() => job?.['result'] != undefined && (viewTab = 'result')}
|
||||
bind:this={testJobLoader}
|
||||
bind:this={jobLoader}
|
||||
bind:isLoading={testIsLoading}
|
||||
bind:job
|
||||
bind:jobUpdateLastFetch
|
||||
|
||||
@@ -191,7 +191,7 @@
|
||||
return
|
||||
}
|
||||
//@ts-ignore
|
||||
testJobLoader.runPreview(currentScript.path, currentScript.content, args, undefined)
|
||||
jobLoader.runPreview(currentScript.path, currentScript.content, args, undefined)
|
||||
}
|
||||
|
||||
function onKeyDown(event: KeyboardEvent) {
|
||||
|
||||
Reference in New Issue
Block a user