windmill-components 1.339.2 → 1.352.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package/assets/app.css +0 -12
- package/package/ata/index.js +1 -0
- package/package/autosize.js +1 -1
- package/package/common.d.ts +6 -2
- package/package/common.js +2 -1
- package/package/components/AppConnectDrawer.svelte +1 -1
- package/package/components/AppConnectInner.svelte +9 -15
- package/package/components/ArgEnum.svelte +4 -1
- package/package/components/ArgEnum.svelte.d.ts +3 -1
- package/package/components/ArgInput.svelte +184 -141
- package/package/components/ArgInput.svelte.d.ts +7 -7
- package/package/components/ArrayTypeNarrowing.svelte +29 -27
- package/package/components/CenteredPage.svelte +2 -2
- package/package/components/DefaultTagsInner.svelte +1 -1
- package/package/components/Dev.svelte +2 -1
- package/package/components/DiffDrawer.svelte +1 -2
- package/package/components/DisplayResult.svelte +293 -233
- package/package/components/DurationMs.svelte +11 -3
- package/package/components/DurationMs.svelte.d.ts +2 -0
- package/package/components/EditableSchemaForm.svelte +447 -103
- package/package/components/EditableSchemaForm.svelte.d.ts +16 -6
- package/package/components/Editor.svelte +3 -1
- package/package/components/EditorBar.svelte +2 -2
- package/package/components/FlowBuilder.svelte +14 -6
- package/package/components/FlowGraphViewer.svelte +1 -1
- package/package/components/FlowGraphViewerStep.svelte +37 -9
- package/package/components/FlowGraphViewerStep.svelte.d.ts +2 -7
- package/package/components/FlowJobResult.svelte +1 -3
- package/package/components/FlowMetadata.svelte +1 -1
- package/package/components/FlowPreviewContent.svelte +5 -3
- package/package/components/FlowStatusViewer.svelte +4 -0
- package/package/components/FlowStatusViewer.svelte.d.ts +3 -0
- package/package/components/FlowStatusViewerInner.svelte +50 -17
- package/package/components/FlowStatusViewerInner.svelte.d.ts +3 -0
- package/package/components/FlowTimeline.svelte +13 -0
- package/package/components/FlowTimeline.svelte.d.ts +2 -0
- package/package/components/FlowViewer.svelte +0 -5
- package/package/components/FolderEditor.svelte +25 -0
- package/package/components/FolderEditor.svelte.d.ts +2 -0
- package/package/components/GroupEditor.svelte +36 -91
- package/package/components/GroupInfo.svelte +1 -1
- package/package/components/InputTransformForm.svelte +16 -1
- package/package/components/InputTransformForm.svelte.d.ts +2 -0
- package/package/components/InputTransformSchemaForm.svelte +6 -0
- package/package/components/InputTransformSchemaForm.svelte.d.ts +2 -0
- package/package/components/InstanceSettings.svelte +36 -3
- package/package/components/InstanceSettings.svelte.d.ts +2 -0
- package/package/components/JobStatus.svelte +2 -2
- package/package/components/LightweightArgInput.svelte +66 -14
- package/package/components/LightweightArgInput.svelte.d.ts +3 -2
- package/package/components/LightweightSchemaForm.svelte +24 -15
- package/package/components/ModulePreviewForm.svelte +1 -0
- package/package/components/NumberTypeNarrowing.svelte +71 -44
- package/package/components/ObjectResourceInput.svelte +2 -0
- package/package/components/ObjectResourceInput.svelte.d.ts +1 -0
- package/package/components/ObjectTypeNarrowing.svelte +0 -1
- package/package/components/ParqetCsvTableRenderer.svelte +181 -0
- package/package/components/ParqetCsvTableRenderer.svelte.d.ts +21 -0
- package/package/components/Path.svelte +2 -2
- package/package/components/PersistentScriptDrawer.svelte +6 -3
- package/package/components/Range.svelte +88 -286
- package/package/components/Range.svelte.d.ts +9 -23
- package/package/components/ResourceEditor.svelte +138 -141
- package/package/components/ResourceEditor.svelte.d.ts +9 -2
- package/package/components/ResourceEditorDrawer.svelte +45 -0
- package/package/components/ResourceEditorDrawer.svelte.d.ts +21 -0
- package/package/components/ResourcePicker.svelte +5 -2
- package/package/components/ResourceTypePicker.svelte +88 -36
- package/package/components/RunChart.svelte +55 -5
- package/package/components/RunChart.svelte.d.ts +1 -0
- package/package/components/RunForm.svelte +1 -1
- package/package/components/S3FilePicker.svelte +20 -8
- package/package/components/S3FilePicker.svelte.d.ts +2 -0
- package/package/components/ScheduleEditorInner.svelte +40 -37
- package/package/components/SchemaForm.svelte +192 -103
- package/package/components/SchemaForm.svelte.d.ts +16 -2
- package/package/components/ScriptBuilder.svelte +13 -8
- package/package/components/ScriptSchedules.svelte +11 -8
- package/package/components/ScriptSchema.svelte +3 -21
- package/package/components/ScriptVersionHistory.svelte +1 -1
- package/package/components/StringTypeNarrowing.svelte +217 -174
- package/package/components/StringTypeNarrowing.svelte.d.ts +5 -1
- package/package/components/Toggle.svelte +6 -3
- package/package/components/Toggle.svelte.d.ts +1 -0
- package/package/components/UserSettings.svelte +24 -1
- package/package/components/WorkspaceGroup.svelte +11 -13
- package/package/components/apps/components/buttons/AppButton.svelte +2 -0
- package/package/components/apps/components/buttons/AppButton.svelte.d.ts +1 -0
- package/package/components/apps/components/display/AppFlowStatusComponent.svelte +13 -70
- package/package/components/apps/components/display/AppFlowStatusComponent.svelte.d.ts +1 -9
- package/package/components/apps/components/display/AppJobIdFlowStatus.svelte +21 -8
- package/package/components/apps/components/display/AppJobIdFlowStatus.svelte.d.ts +1 -3
- package/package/components/apps/components/display/AppJobIdLogComponent.svelte +19 -7
- package/package/components/apps/components/display/AppJobIdLogComponent.svelte.d.ts +1 -3
- package/package/components/apps/components/display/AppLogsComponent.svelte +13 -70
- package/package/components/apps/components/display/AppLogsComponent.svelte.d.ts +1 -9
- package/package/components/apps/components/display/charts/AppAgCharts.svelte +25 -15
- package/package/components/apps/components/display/table/AppAggridTableActions.svelte +2 -0
- package/package/components/apps/components/display/table/SyncColumnDefs.svelte +1 -1
- package/package/components/apps/components/helpers/HiddenComponent.svelte +2 -1
- package/package/components/apps/components/helpers/RunnableComponent.svelte +18 -8
- package/package/components/apps/components/helpers/RunnableComponent.svelte.d.ts +1 -0
- package/package/components/apps/components/helpers/RunnableWrapper.svelte +2 -0
- package/package/components/apps/components/helpers/RunnableWrapper.svelte.d.ts +1 -0
- package/package/components/apps/components/helpers/eval.js +1 -36
- package/package/components/apps/components/inputs/AppFileInput.svelte +3 -1
- package/package/components/apps/components/inputs/AppFileInput.svelte.d.ts +1 -0
- package/package/components/apps/components/inputs/AppS3FileInput.svelte +3 -1
- package/package/components/apps/components/inputs/AppS3FileInput.svelte.d.ts +1 -0
- package/package/components/apps/components/layout/AppConditionalWrapper.svelte +3 -1
- package/package/components/apps/components/layout/AppConditionalWrapper.svelte.d.ts +1 -0
- package/package/components/apps/components/layout/AppStepper.svelte +5 -1
- package/package/components/apps/components/layout/AppStepper.svelte.d.ts +2 -0
- package/package/components/apps/components/layout/AppTabs.svelte +3 -1
- package/package/components/apps/components/layout/AppTabs.svelte.d.ts +1 -0
- package/package/components/apps/editor/AppEditorHeader.svelte +6 -7
- package/package/components/apps/editor/SettingsPanel.svelte +13 -3
- package/package/components/apps/editor/component/Component.svelte +8 -16
- package/package/components/apps/editor/component/components.d.ts +11 -2
- package/package/components/apps/editor/component/components.js +2 -1
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte +1 -1
- package/package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte +5 -34
- package/package/components/apps/editor/settingsPanel/ComponentPanel.svelte +3 -41
- package/package/components/apps/editor/settingsPanel/EventHandlerItem.svelte +33 -0
- package/package/components/apps/editor/settingsPanel/EventHandlerItem.svelte.d.ts +19 -0
- package/package/components/apps/editor/settingsPanel/EventHandlers.svelte +103 -0
- package/package/components/apps/editor/settingsPanel/EventHandlers.svelte.d.ts +18 -0
- package/package/components/apps/editor/settingsPanel/GridCondition.svelte +21 -45
- package/package/components/apps/editor/settingsPanel/GridTab.svelte +3 -23
- package/package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte +5 -1
- package/package/components/apps/editor/settingsPanel/SubTypeEditor.svelte +0 -2
- package/package/components/apps/editor/settingsPanel/SubTypeEditor.svelte.d.ts +0 -1
- package/package/components/apps/editor/settingsPanel/inputEditor/EvalV2InputEditor.svelte +7 -1
- package/package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte +7 -14
- package/package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte.d.ts +0 -1
- package/package/components/common/button/ButtonDropdown.svelte +1 -0
- package/package/components/common/drawer/Disposable.svelte +3 -2
- package/package/components/common/drawer/Disposable.svelte.d.ts +1 -0
- package/package/components/common/drawer/Drawer.svelte +12 -2
- package/package/components/common/drawer/Drawer.svelte.d.ts +1 -0
- package/package/components/common/fileDownload/FileDownload.svelte +4 -2
- package/package/components/common/fileUpload/FileUpload.svelte +4 -3
- package/package/components/common/modal/Modal.svelte +4 -1
- package/package/components/common/modal/Modal.svelte.d.ts +1 -0
- package/package/components/common/popup/Popup.svelte +1 -1
- package/package/components/common/toggleButton-v2/ToggleButtonGroup.svelte +4 -1
- package/package/components/common/toggleButton-v2/ToggleButtonGroup.svelte.d.ts +1 -0
- package/package/components/common/waitTimeWarning/WaitTimeWarning.svelte +79 -0
- package/package/components/common/waitTimeWarning/WaitTimeWarning.svelte.d.ts +18 -0
- package/package/components/flows/content/FlowEditorPanel.svelte +16 -2
- package/package/components/flows/content/FlowInput.svelte +63 -53
- package/package/components/flows/content/FlowModuleComponent.svelte +26 -3
- package/package/components/flows/content/FlowModuleScript.svelte +40 -1
- package/package/components/flows/content/FlowModuleScript.svelte.d.ts +2 -0
- package/package/components/flows/content/FlowModuleSuspend.svelte +99 -59
- package/package/components/flows/content/FlowModuleWrapper.svelte +16 -1
- package/package/components/flows/content/FlowSchedules.svelte +11 -8
- package/package/components/flows/content/ScriptEditorDrawer.svelte +3 -4
- package/package/components/flows/flowStateUtils.js +4 -1
- package/package/components/flows/map/FlowModuleSchemaItem.svelte +16 -1
- package/package/components/flows/map/FlowModuleSchemaMap.svelte +6 -1
- package/package/components/flows/types.d.ts +4 -0
- package/package/components/flows/utils.d.ts +5 -1
- package/package/components/flows/utils.js +36 -0
- package/package/components/graph/FlowGraph.svelte +5 -2
- package/package/components/graph/FlowGraph.svelte.d.ts +2 -0
- package/package/components/graph/svelvet/container/models/index.d.ts +0 -5
- package/package/components/graph/svelvet/container/models/index.js +1 -1
- package/package/components/graph/svelvet/container/views/Svelvet.svelte +2 -5
- package/package/components/graph/util.d.ts +1 -37
- package/package/components/graph/util.js +0 -34
- package/package/components/instanceSettings.js +2 -1
- package/package/components/jobs/JobPreview.svelte +1 -1
- package/package/components/multiselect/MultiSelect.svelte +4 -3
- package/package/components/multiselect/MultiSelect.svelte.d.ts +1 -0
- package/package/components/multiselect/MultiSelectWrapper.svelte +89 -0
- package/package/components/multiselect/MultiSelectWrapper.svelte.d.ts +20 -0
- package/package/components/propertyPicker/ObjectViewer.svelte +6 -2
- package/package/components/runs/JobPreview.svelte +5 -1
- package/package/components/runs/RunRow.svelte +22 -3
- package/package/components/runs/RunRow.svelte.d.ts +2 -1
- package/package/components/runs/RunsTable.svelte +22 -9
- package/package/components/runs/RunsTable.svelte.d.ts +2 -1
- package/package/components/schema/AddProperty.svelte +149 -0
- package/package/components/schema/AddProperty.svelte.d.ts +23 -0
- package/package/components/schema/AddPropertyForm.svelte +33 -0
- package/package/components/schema/AddPropertyForm.svelte.d.ts +16 -0
- package/package/components/schema/EditableSchemaDrawer.svelte +198 -0
- package/package/components/schema/EditableSchemaDrawer.svelte.d.ts +21 -0
- package/package/components/schema/EditableSchemaWrapper.svelte +31 -0
- package/package/components/schema/EditableSchemaWrapper.svelte.d.ts +22 -0
- package/package/components/schema/FlowPropertyEditor.svelte +393 -0
- package/package/components/schema/FlowPropertyEditor.svelte.d.ts +47 -0
- package/package/components/schema/PropertyEditor.svelte +185 -0
- package/package/components/schema/PropertyEditor.svelte.d.ts +46 -0
- package/package/components/schema/SchemaFormDND.svelte +75 -0
- package/package/components/schema/SchemaFormDND.svelte.d.ts +28 -0
- package/package/components/table/AutoDataTable.svelte +90 -104
- package/package/components/table/Cell.svelte +4 -1
- package/package/components/table/Cell.svelte.d.ts +1 -0
- package/package/components/table/DownloadCsv.svelte +30 -0
- package/package/components/table/DownloadCsv.svelte.d.ts +17 -0
- package/package/components/table/tableUtils.d.ts +8 -0
- package/package/components/table/tableUtils.js +37 -0
- package/package/consts.js +3 -1
- package/package/deno_fetch.d.ts.txt +6 -0
- package/package/gen/core/OpenAPI.js +1 -1
- package/package/gen/schemas.gen.d.ts +76 -0
- package/package/gen/schemas.gen.js +76 -0
- package/package/gen/services.gen.d.ts +100 -5
- package/package/gen/services.gen.js +216 -16
- package/package/gen/types.gen.d.ts +378 -5
- package/package/inferArgSig.d.ts +10 -0
- package/package/inferArgSig.js +59 -2
- package/package/scripts.d.ts +2 -0
- package/package/scripts.js +6 -3
- package/package/utils.d.ts +4 -3
- package/package/utils.js +9 -4
- package/package/workspace_settings.d.ts +15 -0
- package/package/workspace_settings.js +81 -0
- package/package.json +16 -7
- package/package/components/ParqetTableRenderer.svelte +0 -117
- package/package/components/ParqetTableRenderer.svelte.d.ts +0 -18
- package/package/components/PropertyRow.svelte +0 -88
- package/package/components/PropertyRow.svelte.d.ts +0 -23
- package/package/components/SchemaEditor.svelte +0 -346
- package/package/components/SchemaEditor.svelte.d.ts +0 -25
- package/package/components/SchemaModal.svelte +0 -443
- package/package/components/SchemaModal.svelte.d.ts +0 -33
- package/package/components/apps/editor/settingsPanel/Recompute.svelte +0 -55
- package/package/components/apps/editor/settingsPanel/Recompute.svelte.d.ts +0 -20
|
@@ -1,72 +1,15 @@
|
|
|
1
|
-
<script>import {
|
|
2
|
-
import
|
|
3
|
-
import { initOutput } from '../../editor/appUtils';
|
|
4
|
-
import RunnableWrapper from '../helpers/RunnableWrapper.svelte';
|
|
5
|
-
import { initCss } from '../../utils';
|
|
6
|
-
import FlowStatusViewer from '../../../FlowStatusViewer.svelte';
|
|
7
|
-
import ResolveStyle from '../helpers/ResolveStyle.svelte';
|
|
8
|
-
export let id;
|
|
9
|
-
export let componentInput;
|
|
10
|
-
export let initializing = false;
|
|
11
|
-
export let customCss = undefined;
|
|
12
|
-
export let render;
|
|
13
|
-
const { app, worldStore, workspace } = getContext('AppViewerContext');
|
|
14
|
-
const outputs = initOutput($worldStore, id, {
|
|
15
|
-
result: undefined,
|
|
16
|
-
loading: false
|
|
17
|
-
});
|
|
18
|
-
initializing = false;
|
|
19
|
-
let css = initCss($app.css?.flowstatuscomponent, customCss);
|
|
20
|
-
let jobId;
|
|
1
|
+
<script>import { Alert } from '../../../common';
|
|
2
|
+
import AlignWrapper from '../helpers/AlignWrapper.svelte';
|
|
21
3
|
</script>
|
|
22
4
|
|
|
23
|
-
|
|
24
|
-
<
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
on:started={(e) => {
|
|
35
|
-
jobId = e.detail
|
|
36
|
-
}}
|
|
37
|
-
{outputs}
|
|
38
|
-
{render}
|
|
39
|
-
{componentInput}
|
|
40
|
-
{id}
|
|
41
|
-
>
|
|
42
|
-
<div class="flex flex-col w-full h-full">
|
|
43
|
-
<div
|
|
44
|
-
class={twMerge(
|
|
45
|
-
'w-full border-b px-2 text-xs p-1 font-semibold bg-gray-500 text-white rounded-t-sm',
|
|
46
|
-
css?.header?.class,
|
|
47
|
-
'wm-flow-status-header'
|
|
48
|
-
)}
|
|
49
|
-
style={css?.header?.style}
|
|
50
|
-
>
|
|
51
|
-
Flow Status
|
|
52
|
-
</div>
|
|
53
|
-
<div
|
|
54
|
-
style={twMerge(
|
|
55
|
-
$app.css?.['flowstatuscomponent']?.['container']?.style,
|
|
56
|
-
customCss?.container?.style
|
|
57
|
-
)}
|
|
58
|
-
class={twMerge(
|
|
59
|
-
'p-2 grow overflow-auto',
|
|
60
|
-
$app.css?.['flowstatuscomponent']?.['container']?.class,
|
|
61
|
-
customCss?.container?.class,
|
|
62
|
-
'wm-flow-status-container'
|
|
63
|
-
)}
|
|
64
|
-
>
|
|
65
|
-
{#if jobId}
|
|
66
|
-
<FlowStatusViewer workspaceId={workspace} {jobId} />
|
|
67
|
-
{:else}
|
|
68
|
-
<span class="text-secondary text-xs">No flow</span>
|
|
69
|
-
{/if}
|
|
70
|
-
</div>
|
|
71
|
-
</div>
|
|
72
|
-
</RunnableWrapper>
|
|
5
|
+
<AlignWrapper verticalAlignment="center" horizontalAlignment="center">
|
|
6
|
+
<Alert
|
|
7
|
+
title="Deprecated component"
|
|
8
|
+
documentationLink="https://www.windmill.dev/docs/apps/app_configuration_settings/flow_status"
|
|
9
|
+
tooltip="See documentation of the new component:"
|
|
10
|
+
type="error"
|
|
11
|
+
>
|
|
12
|
+
This component is deprecated and has been removed. Please use the Flow status by Job Id
|
|
13
|
+
component instead.
|
|
14
|
+
</Alert>
|
|
15
|
+
</AlignWrapper>
|
|
@@ -1,14 +1,6 @@
|
|
|
1
1
|
import { SvelteComponent } from "svelte";
|
|
2
|
-
import type { AppInput } from '../../inputType';
|
|
3
|
-
import type { ComponentCustomCSS } from '../../types';
|
|
4
2
|
declare const __propDef: {
|
|
5
|
-
props:
|
|
6
|
-
id: string;
|
|
7
|
-
componentInput: AppInput | undefined;
|
|
8
|
-
initializing?: boolean | undefined;
|
|
9
|
-
customCss?: ComponentCustomCSS<'flowstatuscomponent'> | undefined;
|
|
10
|
-
render: boolean;
|
|
11
|
-
};
|
|
3
|
+
props: Record<string, never>;
|
|
12
4
|
events: {
|
|
13
5
|
[evt: string]: CustomEvent<any>;
|
|
14
6
|
};
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
<script>import { getContext } from 'svelte';
|
|
2
2
|
import { twMerge } from 'tailwind-merge';
|
|
3
3
|
import { initConfig, initOutput } from '../../editor/appUtils';
|
|
4
|
-
import RunnableWrapper from '../helpers/RunnableWrapper.svelte';
|
|
5
4
|
import { initCss } from '../../utils';
|
|
6
5
|
import FlowStatusViewer from '../../../FlowStatusViewer.svelte';
|
|
7
6
|
import { components } from '../../editor/component';
|
|
8
7
|
import ResolveConfig from '../helpers/ResolveConfig.svelte';
|
|
9
8
|
import ResolveStyle from '../helpers/ResolveStyle.svelte';
|
|
9
|
+
import InitializeComponent from '../helpers/InitializeComponent.svelte';
|
|
10
10
|
export let id;
|
|
11
|
-
export let componentInput;
|
|
12
11
|
export let initializing = false;
|
|
13
12
|
export let customCss = undefined;
|
|
14
|
-
export let render;
|
|
15
13
|
export let configuration;
|
|
14
|
+
export let render;
|
|
16
15
|
const { app, worldStore, workspace } = getContext('AppViewerContext');
|
|
17
|
-
|
|
16
|
+
const resolvedConfig = initConfig(components['jobidlogcomponent'].initialData.configuration, configuration);
|
|
18
17
|
const outputs = initOutput($worldStore, id, {
|
|
19
18
|
result: undefined,
|
|
20
|
-
loading: false
|
|
19
|
+
loading: false,
|
|
20
|
+
jobId: undefined
|
|
21
21
|
});
|
|
22
22
|
initializing = false;
|
|
23
23
|
let css = initCss($app.css?.jobidflowstatuscomponent, customCss);
|
|
@@ -43,7 +43,9 @@ $: jobId = resolvedConfig.jobId;
|
|
|
43
43
|
/>
|
|
44
44
|
{/each}
|
|
45
45
|
|
|
46
|
-
<
|
|
46
|
+
<InitializeComponent {id} />
|
|
47
|
+
|
|
48
|
+
{#if render}
|
|
47
49
|
<div class="flex flex-col w-full h-full component-wrapper">
|
|
48
50
|
<div
|
|
49
51
|
class={twMerge(
|
|
@@ -66,10 +68,21 @@ $: jobId = resolvedConfig.jobId;
|
|
|
66
68
|
)}
|
|
67
69
|
>
|
|
68
70
|
{#if jobId}
|
|
69
|
-
<FlowStatusViewer
|
|
71
|
+
<FlowStatusViewer
|
|
72
|
+
workspaceId={workspace}
|
|
73
|
+
{jobId}
|
|
74
|
+
on:start={() => {
|
|
75
|
+
outputs?.jobId.set(jobId)
|
|
76
|
+
outputs?.loading.set(true)
|
|
77
|
+
}}
|
|
78
|
+
on:done={(e) => {
|
|
79
|
+
outputs?.loading.set(false)
|
|
80
|
+
outputs?.result.set(e?.detail?.result)
|
|
81
|
+
}}
|
|
82
|
+
/>
|
|
70
83
|
{:else}
|
|
71
84
|
<span class="text-secondary text-xs">No flow</span>
|
|
72
85
|
{/if}
|
|
73
86
|
</div>
|
|
74
87
|
</div>
|
|
75
|
-
|
|
88
|
+
{/if}
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { SvelteComponent } from "svelte";
|
|
2
|
-
import type { AppInput } from '../../inputType';
|
|
3
2
|
import type { ComponentCustomCSS, RichConfigurations } from '../../types';
|
|
4
3
|
declare const __propDef: {
|
|
5
4
|
props: {
|
|
6
5
|
id: string;
|
|
7
|
-
componentInput: AppInput | undefined;
|
|
8
6
|
initializing?: boolean | undefined;
|
|
9
7
|
customCss?: ComponentCustomCSS<'jobidflowstatuscomponent'> | undefined;
|
|
10
|
-
render: boolean;
|
|
11
8
|
configuration: RichConfigurations;
|
|
9
|
+
render: boolean;
|
|
12
10
|
};
|
|
13
11
|
events: {
|
|
14
12
|
[evt: string]: CustomEvent<any>;
|
|
@@ -1,20 +1,19 @@
|
|
|
1
1
|
<script>import { getContext } from 'svelte';
|
|
2
2
|
import { twMerge } from 'tailwind-merge';
|
|
3
3
|
import { initConfig, initOutput } from '../../editor/appUtils';
|
|
4
|
-
import RunnableWrapper from '../helpers/RunnableWrapper.svelte';
|
|
5
4
|
import { initCss } from '../../utils';
|
|
6
5
|
import LogViewer from '../../../LogViewer.svelte';
|
|
7
6
|
import TestJobLoader from '../../../TestJobLoader.svelte';
|
|
8
7
|
import { components } from '../../editor/component';
|
|
9
8
|
import ResolveConfig from '../helpers/ResolveConfig.svelte';
|
|
10
9
|
import ResolveStyle from '../helpers/ResolveStyle.svelte';
|
|
10
|
+
import InitializeComponent from '../helpers/InitializeComponent.svelte';
|
|
11
11
|
export let id;
|
|
12
|
-
export let componentInput;
|
|
13
12
|
export let initializing = false;
|
|
14
13
|
export let customCss = undefined;
|
|
15
|
-
export let render;
|
|
16
14
|
export let configuration;
|
|
17
|
-
|
|
15
|
+
export let render;
|
|
16
|
+
const { app, worldStore, workspace } = getContext('AppViewerContext');
|
|
18
17
|
let resolvedConfig = initConfig(components['jobidlogcomponent'].initialData.configuration, configuration);
|
|
19
18
|
const outputs = initOutput($worldStore, id, {
|
|
20
19
|
result: undefined,
|
|
@@ -27,6 +26,7 @@ let testJobLoader = undefined;
|
|
|
27
26
|
let testIsLoading = false;
|
|
28
27
|
let testJob = undefined;
|
|
29
28
|
$: if (resolvedConfig.jobId) {
|
|
29
|
+
outputs.loading.set(true);
|
|
30
30
|
testJobLoader?.watchJob(resolvedConfig?.['jobId']);
|
|
31
31
|
}
|
|
32
32
|
</script>
|
|
@@ -50,9 +50,21 @@ $: if (resolvedConfig.jobId) {
|
|
|
50
50
|
/>
|
|
51
51
|
{/each}
|
|
52
52
|
|
|
53
|
-
<TestJobLoader
|
|
53
|
+
<TestJobLoader
|
|
54
|
+
workspaceOverride={workspace}
|
|
55
|
+
bind:this={testJobLoader}
|
|
56
|
+
bind:isLoading={testIsLoading}
|
|
57
|
+
bind:job={testJob}
|
|
58
|
+
on:done={(e) => {
|
|
59
|
+
outputs.loading.set(false)
|
|
60
|
+
outputs.jobId.set(e.detail.id)
|
|
61
|
+
outputs.result.set(e.detail.result)
|
|
62
|
+
}}
|
|
63
|
+
/>
|
|
64
|
+
|
|
65
|
+
<InitializeComponent {id} />
|
|
54
66
|
|
|
55
|
-
|
|
67
|
+
{#if render}
|
|
56
68
|
<div class="flex flex-col w-full h-full component-wrapper">
|
|
57
69
|
<div
|
|
58
70
|
class={twMerge(
|
|
@@ -77,4 +89,4 @@ $: if (resolvedConfig.jobId) {
|
|
|
77
89
|
/>
|
|
78
90
|
</div>
|
|
79
91
|
</div>
|
|
80
|
-
|
|
92
|
+
{/if}
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { SvelteComponent } from "svelte";
|
|
2
|
-
import type { AppInput } from '../../inputType';
|
|
3
2
|
import type { ComponentCustomCSS, RichConfigurations } from '../../types';
|
|
4
3
|
declare const __propDef: {
|
|
5
4
|
props: {
|
|
6
5
|
id: string;
|
|
7
|
-
componentInput: AppInput | undefined;
|
|
8
6
|
initializing?: boolean | undefined;
|
|
9
7
|
customCss?: ComponentCustomCSS<'jobidlogcomponent'> | undefined;
|
|
10
|
-
render: boolean;
|
|
11
8
|
configuration: RichConfigurations;
|
|
9
|
+
render: boolean;
|
|
12
10
|
};
|
|
13
11
|
events: {
|
|
14
12
|
[evt: string]: CustomEvent<any>;
|
|
@@ -1,72 +1,15 @@
|
|
|
1
|
-
<script>import {
|
|
2
|
-
import
|
|
3
|
-
import { initOutput } from '../../editor/appUtils';
|
|
4
|
-
import RunnableWrapper from '../helpers/RunnableWrapper.svelte';
|
|
5
|
-
import { initCss } from '../../utils';
|
|
6
|
-
import LogViewer from '../../../LogViewer.svelte';
|
|
7
|
-
import TestJobLoader from '../../../TestJobLoader.svelte';
|
|
8
|
-
import ResolveStyle from '../helpers/ResolveStyle.svelte';
|
|
9
|
-
export let id;
|
|
10
|
-
export let componentInput;
|
|
11
|
-
export let initializing = false;
|
|
12
|
-
export let customCss = undefined;
|
|
13
|
-
export let render;
|
|
14
|
-
const { app, worldStore } = getContext('AppViewerContext');
|
|
15
|
-
const outputs = initOutput($worldStore, id, {
|
|
16
|
-
result: undefined,
|
|
17
|
-
loading: false
|
|
18
|
-
});
|
|
19
|
-
initializing = false;
|
|
20
|
-
let css = initCss($app.css?.logcomponent, customCss);
|
|
21
|
-
let testJobLoader = undefined;
|
|
22
|
-
let testIsLoading = false;
|
|
23
|
-
let testJob = undefined;
|
|
1
|
+
<script>import { Alert } from '../../../common';
|
|
2
|
+
import AlignWrapper from '../helpers/AlignWrapper.svelte';
|
|
24
3
|
</script>
|
|
25
4
|
|
|
26
|
-
<
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
<RunnableWrapper
|
|
39
|
-
on:started={(e) => {
|
|
40
|
-
testJobLoader?.watchJob(e.detail)
|
|
41
|
-
}}
|
|
42
|
-
{outputs}
|
|
43
|
-
{render}
|
|
44
|
-
{componentInput}
|
|
45
|
-
{id}
|
|
46
|
-
>
|
|
47
|
-
<div class="flex flex-col w-full h-full">
|
|
48
|
-
<div
|
|
49
|
-
class={twMerge(
|
|
50
|
-
'w-full border-b px-2 text-xs p-1 font-semibold bg-gray-500 text-white rounded-t-sm',
|
|
51
|
-
css?.header?.class,
|
|
52
|
-
'wm-log-header'
|
|
53
|
-
)}
|
|
54
|
-
style={css?.header?.style}
|
|
55
|
-
>
|
|
56
|
-
Logs
|
|
57
|
-
</div>
|
|
58
|
-
<div
|
|
59
|
-
style={css?.container?.style}
|
|
60
|
-
class={twMerge('p-2 grow overflow-auto', css?.container?.class, 'wm-log-container')}
|
|
61
|
-
>
|
|
62
|
-
<LogViewer
|
|
63
|
-
jobId={testJob?.id}
|
|
64
|
-
duration={testJob?.['duration_ms']}
|
|
65
|
-
mem={testJob?.['mem_peak']}
|
|
66
|
-
content={testJob?.logs}
|
|
67
|
-
isLoading={testIsLoading}
|
|
68
|
-
tag={testJob?.tag}
|
|
69
|
-
/>
|
|
70
|
-
</div>
|
|
71
|
-
</div>
|
|
72
|
-
</RunnableWrapper>
|
|
5
|
+
<AlignWrapper verticalAlignment="center" horizontalAlignment="center">
|
|
6
|
+
<Alert
|
|
7
|
+
title="Deprecated component"
|
|
8
|
+
documentationLink="https://www.windmill.dev/docs/apps/app_configuration_settings/log_display"
|
|
9
|
+
tooltip="See documentation of the new component:"
|
|
10
|
+
type="error"
|
|
11
|
+
>
|
|
12
|
+
This component is deprecated and has been removed. Please use the Log by Job Id component
|
|
13
|
+
instead.
|
|
14
|
+
</Alert>
|
|
15
|
+
</AlignWrapper>
|
|
@@ -1,14 +1,6 @@
|
|
|
1
1
|
import { SvelteComponent } from "svelte";
|
|
2
|
-
import type { AppInput } from '../../inputType';
|
|
3
|
-
import type { ComponentCustomCSS } from '../../types';
|
|
4
2
|
declare const __propDef: {
|
|
5
|
-
props:
|
|
6
|
-
id: string;
|
|
7
|
-
componentInput: AppInput | undefined;
|
|
8
|
-
initializing?: boolean | undefined;
|
|
9
|
-
customCss?: ComponentCustomCSS<'logcomponent'> | undefined;
|
|
10
|
-
render: boolean;
|
|
11
|
-
};
|
|
3
|
+
props: Record<string, never>;
|
|
12
4
|
events: {
|
|
13
5
|
[evt: string]: CustomEvent<any>;
|
|
14
6
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<script>import RunnableWrapper from '../../helpers/RunnableWrapper.svelte';
|
|
2
2
|
import { initCss } from '../../../utils';
|
|
3
|
-
import { getContext
|
|
3
|
+
import { getContext } from 'svelte';
|
|
4
4
|
import { initConfig, initOutput } from '../../../editor/appUtils';
|
|
5
5
|
import { components } from '../../../editor/component';
|
|
6
6
|
import ResolveConfig from '../../helpers/ResolveConfig.svelte';
|
|
@@ -194,22 +194,32 @@ async function loadLibrary() {
|
|
|
194
194
|
AgChartsInstance = community.AgCharts;
|
|
195
195
|
}
|
|
196
196
|
}
|
|
197
|
-
|
|
197
|
+
function initChart() {
|
|
198
|
+
try {
|
|
199
|
+
// Chart Options
|
|
200
|
+
const options = {
|
|
201
|
+
container: document.getElementById(`agchart-${id}`),
|
|
202
|
+
data: [],
|
|
203
|
+
series: []
|
|
204
|
+
};
|
|
205
|
+
chartInstance = AgChartsInstance?.create(options);
|
|
206
|
+
}
|
|
207
|
+
catch (error) {
|
|
208
|
+
console.error(error);
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
function destroyChart() {
|
|
212
|
+
if (chartInstance) {
|
|
213
|
+
chartInstance.destroy();
|
|
214
|
+
chartInstance = undefined;
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
$: if (render) {
|
|
218
|
+
destroyChart();
|
|
198
219
|
loadLibrary().then(() => {
|
|
199
|
-
|
|
200
|
-
// Chart Options
|
|
201
|
-
const options = {
|
|
202
|
-
container: document.getElementById(`agchart-${id}`),
|
|
203
|
-
data: [],
|
|
204
|
-
series: []
|
|
205
|
-
};
|
|
206
|
-
chartInstance = AgChartsInstance?.create(options);
|
|
207
|
-
}
|
|
208
|
-
catch (error) {
|
|
209
|
-
console.error(error);
|
|
210
|
-
}
|
|
220
|
+
initChart();
|
|
211
221
|
});
|
|
212
|
-
}
|
|
222
|
+
}
|
|
213
223
|
</script>
|
|
214
224
|
|
|
215
225
|
{#if datasets}
|
|
@@ -141,6 +141,7 @@ const { selectedComponent, hoverStore, mode, connectingInput } = getContext('App
|
|
|
141
141
|
}}
|
|
142
142
|
componentInput={action.componentInput}
|
|
143
143
|
verticalAlignment="center"
|
|
144
|
+
replaceCallback={true}
|
|
144
145
|
{controls}
|
|
145
146
|
/>
|
|
146
147
|
{:else if action.type == 'checkboxcomponent'}
|
|
@@ -198,6 +199,7 @@ const { selectedComponent, hoverStore, mode, connectingInput } = getContext('App
|
|
|
198
199
|
extraQueryParams={{
|
|
199
200
|
row
|
|
200
201
|
}}
|
|
202
|
+
replaceCallback={true}
|
|
201
203
|
componentInput={action.componentInput}
|
|
202
204
|
/>
|
|
203
205
|
{:else if action.type == 'checkboxcomponent'}
|
|
@@ -39,6 +39,7 @@ export let allowConcurentRequests = false;
|
|
|
39
39
|
export let noInitialize = false;
|
|
40
40
|
export let overrideCallback = undefined;
|
|
41
41
|
export let overrideAutoRefresh = false;
|
|
42
|
+
export let replaceCallback = false;
|
|
42
43
|
const { worldStore, runnableComponents, workspace, appPath, isEditor, jobs, jobsById, noBackend, errorByComponent, mode, stateId, state, componentControl, initialized, selectedComponent, app, connectingInput, bgRuns } = getContext('AppViewerContext');
|
|
43
44
|
const editorContext = getContext('AppEditorContext');
|
|
44
45
|
const iterContext = getContext('ListWrapperContext');
|
|
@@ -318,7 +319,7 @@ async function executeComponent(noToast = false, inlineScriptOverride, setRunnab
|
|
|
318
319
|
loading = false;
|
|
319
320
|
}
|
|
320
321
|
}
|
|
321
|
-
export async function runComponent(noToast =
|
|
322
|
+
export async function runComponent(noToast = true, inlineScriptOverride, setRunnableJobEditorPanel, dynamicArgsOverride, callbacks) {
|
|
322
323
|
try {
|
|
323
324
|
if (cancellableRun && !dynamicArgsOverride) {
|
|
324
325
|
await cancellableRun();
|
|
@@ -329,7 +330,7 @@ export async function runComponent(noToast = false, inlineScriptOverride, setRun
|
|
|
329
330
|
}
|
|
330
331
|
}
|
|
331
332
|
catch (e) {
|
|
332
|
-
let error = e
|
|
333
|
+
let error = e?.body ?? e?.message;
|
|
333
334
|
updateResult({ error });
|
|
334
335
|
$errorByComponent[id] = { error };
|
|
335
336
|
}
|
|
@@ -454,7 +455,7 @@ onMount(() => {
|
|
|
454
455
|
},
|
|
455
456
|
error: (e) => {
|
|
456
457
|
console.error(e);
|
|
457
|
-
reject();
|
|
458
|
+
reject(e);
|
|
458
459
|
}
|
|
459
460
|
}).catch(reject);
|
|
460
461
|
});
|
|
@@ -466,11 +467,20 @@ onMount(() => {
|
|
|
466
467
|
return p;
|
|
467
468
|
};
|
|
468
469
|
}
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
470
|
+
if (replaceCallback) {
|
|
471
|
+
$runnableComponents[id] = {
|
|
472
|
+
autoRefresh: (autoRefresh && recomputableByRefreshButton) || overrideAutoRefresh,
|
|
473
|
+
refreshOnStart: refreshOnStart,
|
|
474
|
+
cb: [cancellableRun]
|
|
475
|
+
};
|
|
476
|
+
}
|
|
477
|
+
else {
|
|
478
|
+
$runnableComponents[id] = {
|
|
479
|
+
autoRefresh: (autoRefresh && recomputableByRefreshButton) || overrideAutoRefresh,
|
|
480
|
+
refreshOnStart: refreshOnStart,
|
|
481
|
+
cb: [...($runnableComponents[id]?.cb ?? []), cancellableRun]
|
|
482
|
+
};
|
|
483
|
+
}
|
|
474
484
|
if (!noInitialize && !$initialized.initializedComponents.includes(id)) {
|
|
475
485
|
$initialized.initializedComponents = [...$initialized.initializedComponents, id];
|
|
476
486
|
}
|
|
@@ -35,6 +35,7 @@ declare const __propDef: {
|
|
|
35
35
|
noInitialize?: boolean | undefined;
|
|
36
36
|
overrideCallback?: (() => CancelablePromise<void>) | undefined;
|
|
37
37
|
overrideAutoRefresh?: boolean | undefined;
|
|
38
|
+
replaceCallback?: boolean | undefined;
|
|
38
39
|
setArgs?: ((value: any) => void) | undefined;
|
|
39
40
|
invalidate?: ((key: string, error: string) => void) | undefined;
|
|
40
41
|
validate?: ((key: string) => void) | undefined;
|
|
@@ -9,6 +9,7 @@ export let noInitialize = false;
|
|
|
9
9
|
export let hideRefreshButton = undefined;
|
|
10
10
|
export let overrideCallback = undefined;
|
|
11
11
|
export let overrideAutoRefresh = false;
|
|
12
|
+
export let replaceCallback = false;
|
|
12
13
|
export let id;
|
|
13
14
|
export let result = undefined;
|
|
14
15
|
export let initializing = true;
|
|
@@ -173,6 +174,7 @@ export async function handleSideEffect(success, errorMessage) {
|
|
|
173
174
|
{refreshOnStart}
|
|
174
175
|
{extraKey}
|
|
175
176
|
{hasChildrens}
|
|
177
|
+
{replaceCallback}
|
|
176
178
|
bind:loading
|
|
177
179
|
bind:this={runnableComponent}
|
|
178
180
|
fields={componentInput.fields}
|
|
@@ -10,6 +10,7 @@ declare const __propDef: {
|
|
|
10
10
|
hideRefreshButton?: boolean | undefined;
|
|
11
11
|
overrideCallback?: (() => CancelablePromise<void>) | undefined;
|
|
12
12
|
overrideAutoRefresh?: boolean | undefined;
|
|
13
|
+
replaceCallback?: boolean | undefined;
|
|
13
14
|
id: string;
|
|
14
15
|
result?: any;
|
|
15
16
|
initializing?: boolean | undefined;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { isPlainObject } from 'lodash';
|
|
2
1
|
import { sendUserToast } from '../../../../toast';
|
|
3
2
|
export function computeGlobalContext(world, extraContext = {}) {
|
|
4
3
|
return {
|
|
@@ -41,35 +40,6 @@ function make_context_evaluator(eval_string, contextKeys, noReturn) {
|
|
|
41
40
|
functorCache[cacheKey] = r;
|
|
42
41
|
return r;
|
|
43
42
|
}
|
|
44
|
-
function isSerializable(obj) {
|
|
45
|
-
var isNestedSerializable;
|
|
46
|
-
function isPlain(val) {
|
|
47
|
-
return (val == null ||
|
|
48
|
-
typeof val === 'undefined' ||
|
|
49
|
-
typeof val === 'string' ||
|
|
50
|
-
typeof val === 'boolean' ||
|
|
51
|
-
typeof val === 'number' ||
|
|
52
|
-
Array.isArray(val) ||
|
|
53
|
-
isPlainObject(val));
|
|
54
|
-
}
|
|
55
|
-
if (!isPlain(obj)) {
|
|
56
|
-
return false;
|
|
57
|
-
}
|
|
58
|
-
for (var property in obj) {
|
|
59
|
-
if (obj.hasOwnProperty(property)) {
|
|
60
|
-
if (!isPlain(obj[property])) {
|
|
61
|
-
return false;
|
|
62
|
-
}
|
|
63
|
-
if (typeof obj[property] == 'object') {
|
|
64
|
-
isNestedSerializable = isSerializable(obj[property]);
|
|
65
|
-
if (!isNestedSerializable) {
|
|
66
|
-
return false;
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
return true;
|
|
72
|
-
}
|
|
73
43
|
function hashCode(s) {
|
|
74
44
|
var hash = 0, i, chr;
|
|
75
45
|
if (s.length === 0)
|
|
@@ -89,12 +59,7 @@ export async function eval_like(text, context = {}, state, editor, controlCompon
|
|
|
89
59
|
}
|
|
90
60
|
target[key] = value;
|
|
91
61
|
let o = worldStore?.newOutput('state', key, value);
|
|
92
|
-
|
|
93
|
-
o?.set(value, true);
|
|
94
|
-
}
|
|
95
|
-
else {
|
|
96
|
-
o?.set('Not serializable object usable only by frontend scripts', true);
|
|
97
|
-
}
|
|
62
|
+
o?.set(value, true);
|
|
98
63
|
return true;
|
|
99
64
|
}
|
|
100
65
|
});
|
|
@@ -10,7 +10,8 @@ export let id;
|
|
|
10
10
|
export let configuration;
|
|
11
11
|
export let customCss = undefined;
|
|
12
12
|
export let render;
|
|
13
|
-
|
|
13
|
+
export let onFileChange = undefined;
|
|
14
|
+
const { app, worldStore, componentControl, mode, runnableComponents } = getContext('AppViewerContext');
|
|
14
15
|
let acceptedFileTypes = undefined;
|
|
15
16
|
let allowMultiple = undefined;
|
|
16
17
|
let text = undefined;
|
|
@@ -28,6 +29,7 @@ async function handleChange(files) {
|
|
|
28
29
|
});
|
|
29
30
|
}
|
|
30
31
|
outputs?.result.set(files);
|
|
32
|
+
onFileChange?.forEach((id) => $runnableComponents?.[id]?.cb?.forEach((cb) => cb?.()));
|
|
31
33
|
}
|
|
32
34
|
let css = initCss($app.css?.fileinputcomponent, customCss);
|
|
33
35
|
let fileInput = undefined;
|
|
@@ -12,9 +12,10 @@ export let configuration;
|
|
|
12
12
|
export let customCss = undefined;
|
|
13
13
|
export let render;
|
|
14
14
|
export let extraKey = undefined;
|
|
15
|
+
export let onFileChange = undefined;
|
|
15
16
|
let resolvedConfig = initConfig(components['s3fileinputcomponent'].initialData.configuration, configuration);
|
|
16
17
|
let fileUploads = writable([]);
|
|
17
|
-
const { app, worldStore, componentControl } = getContext('AppViewerContext');
|
|
18
|
+
const { app, worldStore, componentControl, runnableComponents } = getContext('AppViewerContext');
|
|
18
19
|
$componentControl[id] = {
|
|
19
20
|
clearFiles: () => {
|
|
20
21
|
outputs.result.set([]);
|
|
@@ -102,6 +103,7 @@ let forceDisplayUploads = false;
|
|
|
102
103
|
on:addition={(evt) => {
|
|
103
104
|
const curr = outputs.result.peak()
|
|
104
105
|
outputs.result.set(curr.concat(evt.detail))
|
|
106
|
+
onFileChange?.forEach((id) => $runnableComponents?.[id]?.cb?.forEach((cb) => cb?.()))
|
|
105
107
|
}}
|
|
106
108
|
on:deletion={(evt) => {
|
|
107
109
|
const curr = outputs.result.peak()
|