windmill-components 1.434.1 → 1.444.1
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/components/ArgInput.svelte +12 -16
- package/package/components/ArgInput.svelte.d.ts +1 -0
- package/package/components/AssignableTags.svelte +3 -1
- package/package/components/AssignableTags.svelte.d.ts +1 -0
- package/package/components/AuthSettings.svelte +248 -0
- package/package/components/AuthSettings.svelte.d.ts +19 -0
- package/package/components/AutoscalingConfigEditor.svelte +2 -2
- package/package/components/CronInput.svelte +2 -2
- package/package/components/DeployWorkspace.svelte +1 -1
- package/package/components/Description.svelte +9 -0
- package/package/components/Description.svelte.d.ts +18 -0
- package/package/components/Dev.svelte +18 -3
- package/package/components/DisplayResult.svelte +7 -4
- package/package/components/DisplayResult.svelte.d.ts +1 -0
- package/package/components/DropdownV2.svelte +2 -1
- package/package/components/DropdownV2.svelte.d.ts +1 -0
- package/package/components/EditableSchemaForm.svelte +2 -2
- package/package/components/Editor.svelte +9 -6
- package/package/components/Editor.svelte.d.ts +4 -2
- package/package/components/EditorBar.svelte +51 -6
- package/package/components/ErrorOrRecoveryHandler.svelte +4 -3
- package/package/components/ExecutionDuration.svelte +2 -1
- package/package/components/FieldHeader.svelte +9 -1
- package/package/components/FieldHeader.svelte.d.ts +1 -0
- package/package/components/FlowBuilder.svelte +16 -3
- package/package/components/FlowGraphViewer.svelte +2 -0
- package/package/components/FlowPreviewContent.svelte +6 -15
- package/package/components/FlowStatusViewerInner.svelte +14 -10
- package/package/components/FlowStatusViewerInner.svelte.d.ts +1 -0
- package/package/components/HighlightCode.svelte +3 -0
- package/package/components/InputTransformSchemaForm.svelte +1 -1
- package/package/components/InstanceSetting.svelte +774 -0
- package/package/components/InstanceSetting.svelte.d.ts +27 -0
- package/package/components/InstanceSettings.svelte +68 -1005
- package/package/components/InstanceSettings.svelte.d.ts +0 -4
- package/package/components/Label.svelte +16 -6
- package/package/components/Label.svelte.d.ts +3 -0
- package/package/components/Login.svelte +17 -9
- package/package/components/OAuthSetting.svelte +4 -3
- package/package/components/OauthExtraParams.svelte +1 -1
- package/package/components/OauthScopes.svelte +2 -2
- package/package/components/ObjectStoreConfigSettings.svelte +141 -128
- package/package/components/QueueMetricsDrawer.svelte +5 -5
- package/package/components/ResourceEditor.svelte +4 -0
- package/package/components/ResourceEditor.svelte.d.ts +1 -0
- package/package/components/ResourceEditorDrawer.svelte +15 -3
- package/package/components/ResourceEditorDrawer.svelte.d.ts +2 -2
- package/package/components/ResourcePicker.svelte +16 -5
- package/package/components/ResourcePicker.svelte.d.ts +1 -0
- package/package/components/ResultJobLoader.svelte.d.ts +1 -1
- package/package/components/RunPageSchedules.svelte +15 -10
- package/package/components/SavedInputs.svelte +1 -1
- package/package/components/ScheduleEditorInner.svelte +58 -27
- package/package/components/SchemaForm.svelte +7 -5
- package/package/components/SchemaForm.svelte.d.ts +1 -0
- package/package/components/ScriptBuilder.svelte +58 -5
- package/package/components/ScriptEditor.svelte +78 -40
- package/package/components/ScriptEditor.svelte.d.ts +17 -2
- package/package/components/ScriptPicker.svelte +41 -34
- package/package/components/ScriptPicker.svelte.d.ts +1 -0
- package/package/components/ScriptVersionHistory.svelte +1 -1
- package/package/components/Section.svelte +38 -35
- package/package/components/Section.svelte.d.ts +2 -0
- package/package/components/ServiceLogsInner.svelte +1 -1
- package/package/components/SimpleEditor.svelte +2 -0
- package/package/components/Subsection.svelte +52 -0
- package/package/components/Subsection.svelte.d.ts +27 -0
- package/package/components/SuperadminSettings.svelte +23 -13
- package/package/components/TemplateEditor.svelte +4 -3
- package/package/components/TestConnection.svelte +5 -0
- package/package/components/TestJobLoader.svelte +2 -1
- package/package/components/TestJobLoader.svelte.d.ts +1 -1
- package/package/components/Toggle.svelte +2 -4
- package/package/components/UserSettings.svelte +1 -1
- package/package/components/WorkerGroup.svelte +4 -4
- package/package/components/WorkerTagPicker.svelte +4 -2
- package/package/components/WorkerTagPicker.svelte.d.ts +1 -0
- package/package/components/WorkerTagSelect.svelte +2 -0
- package/package/components/WorkerTagSelect.svelte.d.ts +1 -0
- package/package/components/apps/components/display/AppDisplayComponent.svelte +2 -1
- package/package/components/apps/components/display/dbtable/utils.js +26 -1
- package/package/components/apps/components/helpers/RunnableComponent.svelte +8 -2
- package/package/components/apps/components/inputs/AppDateInput.svelte +7 -1
- package/package/components/apps/components/inputs/AppS3FileInput.svelte +1 -1
- package/package/components/apps/editor/AppEditor.svelte +5 -34
- package/package/components/apps/editor/AppEditor.svelte.d.ts +1 -0
- package/package/components/apps/editor/AppEditorBottomPanel.svelte +4 -7
- package/package/components/apps/editor/AppEditorBottomPanel.svelte.d.ts +1 -3
- package/package/components/apps/editor/AppEditorHeader.svelte +148 -58
- package/package/components/apps/editor/AppEditorHeader.svelte.d.ts +1 -0
- package/package/components/apps/editor/DeploymentHistory.svelte +1 -1
- package/package/components/apps/editor/RunnableJobPanel.svelte +6 -2
- package/package/components/apps/editor/RunnableJobPanel.svelte.d.ts +1 -0
- package/package/components/apps/editor/appUtils.d.ts +1 -0
- package/package/components/apps/editor/appUtils.js +17 -0
- package/package/components/apps/editor/component/components.d.ts +82 -81
- package/package/components/apps/editor/component/components.js +4 -3
- package/package/components/apps/editor/componentsPanel/ComponentList.svelte +1 -1
- package/package/components/apps/editor/componentsPanel/GroupList.svelte +12 -2
- package/package/components/apps/editor/contextPanel/ContextPanel.svelte +1 -1
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorDrawer.svelte +1 -1
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanel.svelte +53 -56
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanelList.svelte +1 -1
- package/package/components/apps/editor/settingsPanel/inputEditor/EvalV2InputEditor.svelte +3 -2
- package/package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte +1 -1
- package/package/components/apps/editor/settingsPanel/mainInput/RunnableSelector.svelte +16 -9
- package/package/components/apps/editor/settingsPanel/mainInput/RunnableSelector.svelte.d.ts +1 -0
- package/package/components/apps/inputType.d.ts +2 -2
- package/package/components/apps/types.d.ts +2 -0
- package/package/components/common/alert/ConnectionIndicator.svelte +30 -0
- package/package/components/common/alert/ConnectionIndicator.svelte.d.ts +20 -0
- package/package/components/common/alert/Notification.svelte +15 -0
- package/package/components/common/alert/Notification.svelte.d.ts +17 -0
- package/package/components/common/button/AnimatedButton.svelte +1 -1
- package/package/components/common/button/RefreshButton.svelte +30 -0
- package/package/components/common/button/RefreshButton.svelte.d.ts +18 -0
- package/package/components/common/fileDownload/FileDownload.svelte +4 -3
- package/package/components/common/fileDownload/FileDownload.svelte.d.ts +1 -0
- package/package/components/common/fileUpload/FileUpload.svelte +3 -3
- package/package/components/common/languageIcons/LanguageIcon.svelte +5 -2
- package/package/components/common/layout/List.svelte +35 -0
- package/package/components/common/layout/List.svelte.d.ts +21 -0
- package/package/components/common/layout/ListElement.svelte +3 -0
- package/package/components/common/layout/ListElement.svelte.d.ts +27 -0
- package/package/components/common/menu/MenuV2.svelte +3 -2
- package/package/components/common/menu/MenuV2.svelte.d.ts +1 -0
- package/package/components/common/modal/Modal.svelte +6 -4
- package/package/components/common/modal/Modal.svelte.d.ts +1 -0
- package/package/components/common/modal/Modal2.svelte +101 -0
- package/package/components/common/modal/Modal2.svelte.d.ts +28 -0
- package/package/components/common/popup/Popup.svelte +5 -1
- package/package/components/common/popup/Popup.svelte.d.ts +2 -0
- package/package/components/common/toggleButton-v2/ToggleButton.svelte +1 -1
- package/package/components/copilot/FlowCopilotStatus.svelte +1 -1
- package/package/components/details/ClipboardPanel.svelte +12 -2
- package/package/components/details/ClipboardPanel.svelte.d.ts +2 -0
- package/package/components/details/CopyableCodeBlock.svelte +24 -0
- package/package/components/details/CopyableCodeBlock.svelte.d.ts +19 -0
- package/package/components/details/DetailPageLayout.svelte +3 -1
- package/package/components/details/EmailTriggerConfigSection.svelte +119 -0
- package/package/components/details/EmailTriggerConfigSection.svelte.d.ts +38 -0
- package/package/components/details/EmailTriggerPanel.svelte +27 -74
- package/package/components/details/EmailTriggerPanel.svelte.d.ts +7 -1
- package/package/components/flows/FlowEditor.svelte +1 -1
- package/package/components/flows/FlowEditor.svelte.d.ts +1 -0
- package/package/components/flows/FlowHistoryInner.svelte +1 -1
- package/package/components/flows/content/BranchPredicateEditor.svelte +1 -1
- package/package/components/flows/content/FlowEditorPanel.svelte +30 -1
- package/package/components/flows/content/FlowEditorPanel.svelte.d.ts +2 -0
- package/package/components/flows/content/FlowInput.svelte +2 -15
- package/package/components/flows/content/FlowInputs.svelte +1 -1
- package/package/components/flows/content/FlowInputsQuick.svelte +2 -2
- package/package/components/flows/content/FlowModuleComponent.svelte +9 -5
- package/package/components/flows/content/FlowModuleEarlyStop.svelte +2 -2
- package/package/components/flows/content/FlowModuleHeader.svelte +4 -1
- package/package/components/flows/content/FlowModuleSuspend.svelte +1 -1
- package/package/components/flows/content/FlowPathViewer.svelte +3 -1
- package/package/components/flows/content/FlowRetries.svelte +32 -5
- package/package/components/flows/content/FlowSettings.svelte +56 -48
- package/package/components/flows/flowStateUtils.d.ts +10 -1
- package/package/components/flows/flowStateUtils.js +23 -0
- package/package/components/flows/map/FlowModuleSchemaMap.svelte +9 -19
- package/package/components/flows/map/InsertModuleButton.svelte +3 -3
- package/package/components/flows/map/VirtualItem.svelte +29 -1
- package/package/components/flows/map/VirtualItem.svelte.d.ts +2 -0
- package/package/components/flows/pickers/TopLevelNode.svelte +2 -2
- package/package/components/flows/previousResults.js +8 -2
- package/package/components/flows/types.d.ts +1 -0
- package/package/components/graph/FlowGraphV2.svelte +5 -1
- package/package/components/graph/FlowGraphV2.svelte.d.ts +2 -0
- package/package/components/graph/renderers/nodes/InputNode.svelte +2 -0
- package/package/components/graph/renderers/nodes/InputNode.svelte.d.ts +2 -0
- package/package/components/graph/renderers/triggers/TriggersWrapper.svelte +1 -1
- package/package/components/icons/CSharpIcon.svelte +14 -0
- package/package/components/icons/CSharpIcon.svelte.d.ts +25 -0
- package/package/components/icons/GitIcon.svelte +5 -2
- package/package/components/icons/XeroIcon.svelte +24 -0
- package/package/components/icons/XeroIcon.svelte.d.ts +17 -0
- package/package/components/icons/index.d.ts +3 -1
- package/package/components/icons/index.js +4 -2
- package/package/components/instanceSettings.d.ts +3 -1
- package/package/components/instanceSettings.js +77 -69
- package/package/components/meltComponents/Popover.svelte +82 -0
- package/package/components/meltComponents/Popover.svelte.d.ts +21 -0
- package/package/components/propertyPicker/PropPicker.svelte +5 -3
- package/package/components/runs/JobLoader.svelte +5 -2
- package/package/components/runs/JobPreview.svelte +5 -5
- package/package/components/runs/RunRow.svelte +3 -4
- package/package/components/runs/RunsFilter.svelte +4 -4
- package/package/components/schema/EditableSchemaDrawer.svelte +4 -4
- package/package/components/schema/PropertyEditor.svelte +1 -1
- package/package/components/schema/SchemaFormDND.svelte +2 -0
- package/package/components/schema/SchemaFormDND.svelte.d.ts +1 -0
- package/package/components/scriptEditor/LogPanel.svelte +176 -164
- package/package/components/scriptEditor/LogPanel.svelte.d.ts +2 -0
- package/package/components/search/GlobalSearchModal.svelte +3 -3
- package/package/components/sidebar/CriticalAlertModal.svelte +155 -9
- package/package/components/sidebar/CriticalAlertModalInner.svelte +65 -212
- package/package/components/sidebar/CriticalAlertModalInner.svelte.d.ts +2 -4
- package/package/components/sidebar/CriticalAlertTable.svelte +142 -0
- package/package/components/sidebar/CriticalAlertTable.svelte.d.ts +25 -0
- package/package/components/sidebar/OperatorMenu.svelte +30 -8
- package/package/components/sidebar/SideBarNotification.svelte +3 -6
- package/package/components/sidebar/SidebarContent.svelte +5 -5
- package/package/components/sidebar/WorkspaceMenu.svelte +9 -5
- package/package/components/sidebar/WorkspaceMenu.svelte.d.ts +1 -0
- package/package/components/sidebar/changelogs.js +82 -17
- package/package/components/splitPanes/SplitPanesOrColumnOnMobile.svelte +21 -21
- package/package/components/table/AutoDataTable.svelte +1 -1
- package/package/components/table/Cell.svelte +5 -3
- package/package/components/table/Cell.svelte.d.ts +1 -0
- package/package/components/table/DataTable.svelte +65 -58
- package/package/components/table/DataTable.svelte.d.ts +2 -0
- package/package/components/table/Head.svelte +1 -1
- package/package/components/table/Row.svelte +3 -1
- package/package/components/table/Row.svelte.d.ts +1 -0
- package/package/components/toast.js +3 -1
- package/package/components/triggers/CaptureButton.svelte +77 -0
- package/package/components/triggers/CaptureButton.svelte.d.ts +16 -0
- package/package/components/triggers/CaptureIcon.svelte +17 -0
- package/package/components/triggers/CaptureIcon.svelte.d.ts +23 -0
- package/package/components/triggers/CaptureSection.svelte +76 -0
- package/package/components/triggers/CaptureSection.svelte.d.ts +42 -0
- package/package/components/triggers/CaptureTable.svelte +224 -0
- package/package/components/triggers/CaptureTable.svelte.d.ts +43 -0
- package/package/components/triggers/CaptureWrapper.svelte +237 -0
- package/package/components/triggers/CaptureWrapper.svelte.d.ts +35 -0
- package/package/components/triggers/KafkaTriggerEditor.svelte +2 -2
- package/package/components/triggers/KafkaTriggerEditor.svelte.d.ts +2 -2
- package/package/components/triggers/KafkaTriggerEditorInner.svelte +47 -119
- package/package/components/triggers/KafkaTriggerEditorInner.svelte.d.ts +2 -2
- package/package/components/triggers/KafkaTriggersConfigSection.svelte +215 -0
- package/package/components/triggers/KafkaTriggersConfigSection.svelte.d.ts +36 -0
- package/package/components/triggers/KafkaTriggersPanel.svelte +73 -45
- package/package/components/triggers/KafkaTriggersPanel.svelte.d.ts +6 -0
- package/package/components/triggers/RouteEditor.svelte +2 -2
- package/package/components/triggers/RouteEditor.svelte.d.ts +2 -2
- package/package/components/triggers/RouteEditorConfigSection.svelte +162 -0
- package/package/components/triggers/RouteEditorConfigSection.svelte.d.ts +43 -0
- package/package/components/triggers/RouteEditorInner.svelte +98 -163
- package/package/components/triggers/RouteEditorInner.svelte.d.ts +2 -2
- package/package/components/triggers/RoutesPanel.svelte +69 -54
- package/package/components/triggers/RoutesPanel.svelte.d.ts +5 -0
- package/package/components/triggers/ScheduledPollPanel.svelte +5 -9
- package/package/components/triggers/TriggersEditor.svelte +119 -89
- package/package/components/triggers/TriggersEditor.svelte.d.ts +7 -0
- package/package/components/triggers/TriggersEditorSection.svelte +109 -0
- package/package/components/triggers/TriggersEditorSection.svelte.d.ts +29 -0
- package/package/components/triggers/TriggersWrapper.svelte +60 -0
- package/package/components/triggers/TriggersWrapper.svelte.d.ts +21 -0
- package/package/components/triggers/WebhooksConfigSection.svelte +382 -0
- package/package/components/triggers/WebhooksConfigSection.svelte.d.ts +39 -0
- package/package/components/triggers/WebhooksPanel.svelte +32 -331
- package/package/components/triggers/WebhooksPanel.svelte.d.ts +7 -1
- package/package/components/triggers/WebsocketEditorConfigSection.svelte +176 -0
- package/package/components/triggers/WebsocketEditorConfigSection.svelte.d.ts +37 -0
- package/package/components/triggers/WebsocketTriggerEditor.svelte +2 -2
- package/package/components/triggers/WebsocketTriggerEditor.svelte.d.ts +2 -2
- package/package/components/triggers/WebsocketTriggerEditorInner.svelte +29 -150
- package/package/components/triggers/WebsocketTriggerEditorInner.svelte.d.ts +2 -2
- package/package/components/triggers/WebsocketTriggersPanel.svelte +70 -45
- package/package/components/triggers/WebsocketTriggersPanel.svelte.d.ts +6 -0
- package/package/components/triggers.d.ts +6 -2
- package/package/components/triggers.js +16 -0
- package/package/components/wizards/AgGridWizard.svelte +4 -4
- package/package/editorUtils.d.ts +2 -0
- package/package/editorUtils.js +6 -3
- package/package/gen/core/OpenAPI.js +1 -1
- package/package/gen/schemas.gen.d.ts +17 -8
- package/package/gen/schemas.gen.js +17 -8
- package/package/gen/services.gen.d.ts +55 -5
- package/package/gen/services.gen.js +108 -5
- package/package/gen/types.gen.d.ts +180 -13
- package/package/hubPaths.json +6 -3
- package/package/infer.js +9 -0
- package/package/script_helpers.d.ts +5 -0
- package/package/script_helpers.js +68 -8
- package/package/scripts.d.ts +1 -1
- package/package/scripts.js +5 -1
- package/package/stores.d.ts +1 -0
- package/package/utils.d.ts +3 -1
- package/package/utils.js +20 -4
- package/package.json +11 -8
- package/package/components/flows/content/CapturePayload.svelte +0 -114
- package/package/components/flows/content/CapturePayload.svelte.d.ts +0 -17
|
@@ -26,6 +26,7 @@ export let editor = undefined;
|
|
|
26
26
|
export let diffEditor = undefined;
|
|
27
27
|
export let args = undefined;
|
|
28
28
|
export let workspace = undefined;
|
|
29
|
+
export let showCaptures = false;
|
|
29
30
|
let selectedTab = 'logs';
|
|
30
31
|
let drawerOpen = false;
|
|
31
32
|
let drawerContent = undefined;
|
|
@@ -64,170 +65,181 @@ let forceJson = false;
|
|
|
64
65
|
</DrawerContent>
|
|
65
66
|
</Drawer>
|
|
66
67
|
|
|
67
|
-
<
|
|
68
|
-
<
|
|
69
|
-
|
|
68
|
+
<div class="h-full flex flex-col">
|
|
69
|
+
<Tabs bind:selected={selectedTab} class="pt-1" wrapperClass="flex-none">
|
|
70
|
+
<Tab value="logs" size="xs">Logs & Result</Tab>
|
|
71
|
+
<Tab value="history" size="xs">History</Tab>
|
|
72
|
+
{#if showCaptures}
|
|
73
|
+
<Tab value="captures" size="xs">Captures</Tab>
|
|
74
|
+
{/if}
|
|
70
75
|
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
{
|
|
115
|
-
|
|
116
|
-
|
|
76
|
+
<svelte:fragment slot="content">
|
|
77
|
+
<div class="grow min-h-0">
|
|
78
|
+
{#if selectedTab === 'logs'}
|
|
79
|
+
<SplitPanesWrapper>
|
|
80
|
+
<Splitpanes horizontal>
|
|
81
|
+
{#if previewJob?.is_flow_step == false && previewJob?.flow_status && !(typeof previewJob.flow_status == 'object' && '_metadata' in previewJob.flow_status)}
|
|
82
|
+
<Pane class="relative">
|
|
83
|
+
<WorkflowTimeline
|
|
84
|
+
flow_status={asWorkflowStatus(previewJob.flow_status)}
|
|
85
|
+
flowDone={previewJob.type == 'CompletedJob'}
|
|
86
|
+
/>
|
|
87
|
+
</Pane>
|
|
88
|
+
{/if}
|
|
89
|
+
<Pane class="relative">
|
|
90
|
+
<LogViewer
|
|
91
|
+
jobId={previewJob?.id}
|
|
92
|
+
duration={previewJob?.['duration_ms']}
|
|
93
|
+
mem={previewJob?.['mem_peak']}
|
|
94
|
+
content={previewJob?.logs}
|
|
95
|
+
isLoading={previewJob?.['running'] == false && previewIsLoading}
|
|
96
|
+
tag={previewJob?.tag}
|
|
97
|
+
/>
|
|
98
|
+
</Pane>
|
|
99
|
+
<Pane>
|
|
100
|
+
<slot />
|
|
101
|
+
{#if previewJob != undefined && 'result' in previewJob}
|
|
102
|
+
<div class="relative w-full h-full p-2">
|
|
103
|
+
<div class="relative">
|
|
104
|
+
<DisplayResult
|
|
105
|
+
bind:forceJson
|
|
106
|
+
workspaceId={previewJob?.workspace_id}
|
|
107
|
+
jobId={previewJob?.id}
|
|
108
|
+
result={previewJob.result}
|
|
109
|
+
>
|
|
110
|
+
<svelte:fragment slot="copilot-fix">
|
|
111
|
+
{#if lang && editor && diffEditor && args && previewJob?.result && typeof previewJob?.result == 'object' && `error` in previewJob?.result && previewJob?.result.error}
|
|
112
|
+
<ScriptFix
|
|
113
|
+
error={JSON.stringify(previewJob.result.error)}
|
|
114
|
+
{lang}
|
|
115
|
+
{editor}
|
|
116
|
+
{diffEditor}
|
|
117
|
+
{args}
|
|
118
|
+
/>
|
|
119
|
+
{/if}
|
|
120
|
+
</svelte:fragment>
|
|
121
|
+
</DisplayResult>
|
|
122
|
+
</div>
|
|
123
|
+
</div>
|
|
124
|
+
{:else}
|
|
125
|
+
<div class="text-sm text-tertiary p-2 flex justify-between items-center">
|
|
126
|
+
<span>
|
|
127
|
+
{#if previewIsLoading}
|
|
128
|
+
<Loader2 class="animate-spin" />
|
|
129
|
+
{:else}
|
|
130
|
+
Test to see the result here
|
|
117
131
|
{/if}
|
|
118
|
-
</
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
</tbody>
|
|
229
|
-
</DataTable>
|
|
132
|
+
</span>
|
|
133
|
+
<Tooltip
|
|
134
|
+
documentationLink="https://www.windmill.dev/docs/core_concepts/rich_display_rendering"
|
|
135
|
+
>
|
|
136
|
+
The result renderer in Windmill supports rich display rendering, allowing you
|
|
137
|
+
to customize the display format of your results.
|
|
138
|
+
</Tooltip>
|
|
139
|
+
</div>
|
|
140
|
+
{/if}
|
|
141
|
+
</Pane>
|
|
142
|
+
</Splitpanes>
|
|
143
|
+
</SplitPanesWrapper>
|
|
144
|
+
{/if}
|
|
145
|
+
{#if selectedTab === 'history'}
|
|
146
|
+
<div>
|
|
147
|
+
<DataTable size="xs" noBorder>
|
|
148
|
+
<Head>
|
|
149
|
+
<tr>
|
|
150
|
+
<Cell first>Id</Cell>
|
|
151
|
+
<Cell>Created at</Cell>
|
|
152
|
+
<Cell>Success</Cell>
|
|
153
|
+
<Cell>Result</Cell>
|
|
154
|
+
<Cell>Code</Cell>
|
|
155
|
+
<Cell last>Logs</Cell>
|
|
156
|
+
</tr>
|
|
157
|
+
</Head>
|
|
158
|
+
<tbody class="divide-y">
|
|
159
|
+
{#each pastPreviews as { id, created_at, success }}
|
|
160
|
+
<tr>
|
|
161
|
+
<Cell first>
|
|
162
|
+
<a
|
|
163
|
+
class="pr-3"
|
|
164
|
+
href="{base}/run/{id}?workspace={workspace ?? $workspaceStore}"
|
|
165
|
+
target="_blank">{id.substring(30)}</a
|
|
166
|
+
>
|
|
167
|
+
</Cell>
|
|
168
|
+
<Cell>{displayDate(created_at)}</Cell>
|
|
169
|
+
<Cell>
|
|
170
|
+
{#if success}
|
|
171
|
+
<CheckCircle2 size={10} class="text-green-600" />
|
|
172
|
+
{:else}
|
|
173
|
+
<XCircle size={10} class="text-red-700" />
|
|
174
|
+
{/if}
|
|
175
|
+
</Cell>
|
|
176
|
+
<Cell>
|
|
177
|
+
<button
|
|
178
|
+
class="text-xs"
|
|
179
|
+
on:click|preventDefault={() => {
|
|
180
|
+
openDrawer({ mode: 'json', content: undefined, title: 'Result' })
|
|
181
|
+
JobService.getCompletedJobResult({
|
|
182
|
+
workspace: workspace ?? $workspaceStore ?? 'NO_W',
|
|
183
|
+
id
|
|
184
|
+
}).then((res) => {
|
|
185
|
+
drawerContent && (drawerContent.content = res)
|
|
186
|
+
})
|
|
187
|
+
}}
|
|
188
|
+
>
|
|
189
|
+
See Result
|
|
190
|
+
</button>
|
|
191
|
+
</Cell>
|
|
192
|
+
<Cell>
|
|
193
|
+
<button
|
|
194
|
+
class="text-xs"
|
|
195
|
+
on:click|preventDefault={async () => {
|
|
196
|
+
const code = (
|
|
197
|
+
await JobService.getCompletedJob({
|
|
198
|
+
workspace: workspace ?? $workspaceStore ?? 'NO_W',
|
|
199
|
+
id
|
|
200
|
+
})
|
|
201
|
+
).raw_code
|
|
202
|
+
openDrawer({
|
|
203
|
+
mode: lang ?? 'plain',
|
|
204
|
+
content: String(code),
|
|
205
|
+
title: `Code ${lang}`
|
|
206
|
+
})
|
|
207
|
+
}}
|
|
208
|
+
>
|
|
209
|
+
View code
|
|
210
|
+
</button>
|
|
211
|
+
</Cell>
|
|
212
|
+
<Cell last>
|
|
213
|
+
<button
|
|
214
|
+
class="text-xs"
|
|
215
|
+
on:click|preventDefault={async () => {
|
|
216
|
+
const logs = await (
|
|
217
|
+
await fetch(
|
|
218
|
+
OpenAPI.BASE +
|
|
219
|
+
`/w/${workspace ?? $workspaceStore}/jobs_u/get_logs/${id}`
|
|
220
|
+
)
|
|
221
|
+
).text()
|
|
222
|
+
console.log(logs)
|
|
223
|
+
openDrawer({
|
|
224
|
+
mode: 'plain',
|
|
225
|
+
content: String(logs),
|
|
226
|
+
title: `Logs for ${id}`
|
|
227
|
+
})
|
|
228
|
+
}}
|
|
229
|
+
>
|
|
230
|
+
View logs
|
|
231
|
+
</button>
|
|
232
|
+
</Cell>
|
|
233
|
+
</tr>
|
|
234
|
+
{/each}
|
|
235
|
+
</tbody>
|
|
236
|
+
</DataTable>
|
|
237
|
+
</div>
|
|
238
|
+
{/if}
|
|
239
|
+
{#if selectedTab === 'captures'}
|
|
240
|
+
<slot name="capturesTab" />
|
|
241
|
+
{/if}
|
|
230
242
|
</div>
|
|
231
|
-
|
|
232
|
-
</
|
|
233
|
-
</
|
|
243
|
+
</svelte:fragment>
|
|
244
|
+
</Tabs>
|
|
245
|
+
</div>
|
|
@@ -12,6 +12,7 @@ declare const __propDef: {
|
|
|
12
12
|
diffEditor?: DiffEditor | undefined;
|
|
13
13
|
args?: Record<string, any> | undefined;
|
|
14
14
|
workspace?: string | undefined;
|
|
15
|
+
showCaptures?: boolean | undefined;
|
|
15
16
|
setFocusToLogs?: (() => void) | undefined;
|
|
16
17
|
};
|
|
17
18
|
events: {
|
|
@@ -19,6 +20,7 @@ declare const __propDef: {
|
|
|
19
20
|
};
|
|
20
21
|
slots: {
|
|
21
22
|
default: {};
|
|
23
|
+
capturesTab: {};
|
|
22
24
|
};
|
|
23
25
|
};
|
|
24
26
|
export type LogPanelProps = typeof __propDef.props;
|
|
@@ -9,7 +9,7 @@ import { twMerge } from 'tailwind-merge';
|
|
|
9
9
|
import ContentSearchInner from '../ContentSearchInner.svelte';
|
|
10
10
|
import { goto } from '$app/navigation';
|
|
11
11
|
import QuickMenuItem from '../search/QuickMenuItem.svelte';
|
|
12
|
-
import {
|
|
12
|
+
import { devopsRole, enterpriseLicense, workspaceStore } from '../../stores';
|
|
13
13
|
import uFuzzy from '@leeoniya/ufuzzy';
|
|
14
14
|
import BarsStaggered from '../icons/BarsStaggered.svelte';
|
|
15
15
|
import { scroll_into_view_if_needed_polyfill } from '../multiselect/utils';
|
|
@@ -180,7 +180,7 @@ async function handleSearch() {
|
|
|
180
180
|
indexMetadata = searchResults.index_metadata;
|
|
181
181
|
}
|
|
182
182
|
catch (e) {
|
|
183
|
-
sendUserToast(e, true);
|
|
183
|
+
sendUserToast(e.body, true);
|
|
184
184
|
}
|
|
185
185
|
loadingCompletedRuns = false;
|
|
186
186
|
selectedItem = selectItem(0);
|
|
@@ -509,7 +509,7 @@ function maxModalHeight(tab) {
|
|
|
509
509
|
/>
|
|
510
510
|
{:else if tab === 'logs'}
|
|
511
511
|
<div class="p-2">
|
|
512
|
-
{#if !$
|
|
512
|
+
{#if !$devopsRole}
|
|
513
513
|
<Alert title="Service logs are only available to superadmins" type="warning">
|
|
514
514
|
Service logs are only available to superadmins
|
|
515
515
|
</Alert>
|
|
@@ -2,12 +2,19 @@
|
|
|
2
2
|
import CriticalAlertModalInner from './CriticalAlertModalInner.svelte';
|
|
3
3
|
import { SettingService } from '../../gen';
|
|
4
4
|
import { sendUserToast } from '../../toast';
|
|
5
|
-
import { workspaceStore, isCriticalAlertsUIOpen, devopsRole } from '../../stores';
|
|
6
|
-
import
|
|
5
|
+
import { workspaceStore, isCriticalAlertsUIOpen, devopsRole, userStore, superadmin } from '../../stores';
|
|
6
|
+
import Modal2 from '../common/modal/Modal2.svelte';
|
|
7
|
+
import { Button, Popup } from '../common';
|
|
8
|
+
import List from '../common/layout/List.svelte';
|
|
9
|
+
import Toggle from '../Toggle.svelte';
|
|
10
|
+
import { BellOff, Bell, ExternalLink, Settings } from 'lucide-svelte';
|
|
11
|
+
import { base } from '../../base';
|
|
12
|
+
import Notification from '../common/alert/Notification.svelte';
|
|
7
13
|
export let open = false;
|
|
8
14
|
export let numUnacknowledgedCriticalAlerts = 0;
|
|
9
15
|
export let muteSettings;
|
|
10
16
|
let workspaceContext = false;
|
|
17
|
+
let childRef;
|
|
11
18
|
$: {
|
|
12
19
|
setupApiFunctions(workspaceContext);
|
|
13
20
|
}
|
|
@@ -47,16 +54,46 @@ onMount(async () => {
|
|
|
47
54
|
onDestroy(() => {
|
|
48
55
|
clearInterval(checkForNewAlertsInterval);
|
|
49
56
|
});
|
|
57
|
+
async function saveWorkSpaceMuteSetting() {
|
|
58
|
+
await SettingService.workspaceMuteCriticalAlertsUi({
|
|
59
|
+
workspace: $workspaceStore,
|
|
60
|
+
requestBody: {
|
|
61
|
+
mute_critical_alerts: muteSettings.workspace
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
sendUserToast(`Critical alert UI mute settings changed.\nPlease reload page for UI changes to take effect.`);
|
|
65
|
+
childRef.refreshAlerts();
|
|
66
|
+
}
|
|
67
|
+
async function saveGlobalMuteSetting() {
|
|
68
|
+
await SettingService.setGlobal({
|
|
69
|
+
key: 'critical_alert_mute_ui',
|
|
70
|
+
requestBody: { value: muteSettings.global }
|
|
71
|
+
});
|
|
72
|
+
sendUserToast(`Critical alert UI mute settings changed.\nPlease reload page for UI changes to take effect.`);
|
|
73
|
+
childRef.refreshAlerts();
|
|
74
|
+
}
|
|
50
75
|
async function updateHasUnacknowledgedCriticalAlerts(sendToast = false) {
|
|
51
76
|
if (checkingForNewAlerts)
|
|
52
77
|
return;
|
|
53
78
|
checkingForNewAlerts = true;
|
|
54
79
|
try {
|
|
55
|
-
const
|
|
80
|
+
const params = {
|
|
56
81
|
page: 1,
|
|
57
|
-
pageSize:
|
|
82
|
+
pageSize: 1000,
|
|
58
83
|
acknowledged: false
|
|
59
|
-
}
|
|
84
|
+
};
|
|
85
|
+
let unacknowledged = [];
|
|
86
|
+
if (!$devopsRole && $workspaceStore) {
|
|
87
|
+
const res = await SettingService.workspaceGetCriticalAlerts({
|
|
88
|
+
...params,
|
|
89
|
+
workspace: $workspaceStore
|
|
90
|
+
});
|
|
91
|
+
unacknowledged = res.alerts ?? [];
|
|
92
|
+
}
|
|
93
|
+
else {
|
|
94
|
+
const res = await SettingService.getCriticalAlerts(params);
|
|
95
|
+
unacknowledged = res.alerts ?? [];
|
|
96
|
+
}
|
|
60
97
|
if (numUnacknowledgedCriticalAlerts === 0 &&
|
|
61
98
|
unacknowledged.length > 0 &&
|
|
62
99
|
sendToast &&
|
|
@@ -89,14 +126,123 @@ async function acknowledgeAlert(id) {
|
|
|
89
126
|
}
|
|
90
127
|
</script>
|
|
91
128
|
|
|
92
|
-
<
|
|
129
|
+
<Modal2 bind:isOpen={open} title="Critical Alerts" target="#content" fixedSize="lg">
|
|
130
|
+
<svelte:fragment slot="header-left">
|
|
131
|
+
<Notification notificationCount={numUnacknowledgedCriticalAlerts} notificationLimit={9999} />
|
|
132
|
+
</svelte:fragment>
|
|
133
|
+
<svelte:fragment slot="header-right">
|
|
134
|
+
<List horizontal>
|
|
135
|
+
{#if $superadmin || $userStore?.is_admin}
|
|
136
|
+
<Popup
|
|
137
|
+
floatingConfig={{ strategy: 'absolute', placement: 'bottom-end' }}
|
|
138
|
+
target="#mute-settings-button"
|
|
139
|
+
preventPopupClosingOnClickInside={true}
|
|
140
|
+
>
|
|
141
|
+
<svelte:fragment slot="button">
|
|
142
|
+
<div id="mute-settings-button">
|
|
143
|
+
<Button variant="border" color="light" nonCaptureEvent>
|
|
144
|
+
{#if muteSettings.global || muteSettings.workspace}
|
|
145
|
+
<BellOff size="16" />
|
|
146
|
+
{:else}
|
|
147
|
+
<Bell size="16" />
|
|
148
|
+
{/if}
|
|
149
|
+
</Button>
|
|
150
|
+
</div>
|
|
151
|
+
</svelte:fragment>
|
|
152
|
+
<List justify="start">
|
|
153
|
+
<div class="w-full">
|
|
154
|
+
{#if $superadmin}
|
|
155
|
+
<Toggle
|
|
156
|
+
on:change={saveGlobalMuteSetting}
|
|
157
|
+
bind:checked={muteSettings.global}
|
|
158
|
+
options={{
|
|
159
|
+
right: 'Automatically acknowledge critical alerts instance wide'
|
|
160
|
+
}}
|
|
161
|
+
size="xs"
|
|
162
|
+
stopPropagation={true}
|
|
163
|
+
/>
|
|
164
|
+
{/if}
|
|
165
|
+
</div>
|
|
166
|
+
|
|
167
|
+
<div class="w-full">
|
|
168
|
+
<Toggle
|
|
169
|
+
on:change={saveWorkSpaceMuteSetting}
|
|
170
|
+
bind:checked={muteSettings.workspace}
|
|
171
|
+
options={{
|
|
172
|
+
right: 'Automatically acknowledge critical alerts for current workspace'
|
|
173
|
+
}}
|
|
174
|
+
size="xs"
|
|
175
|
+
stopPropagation={true}
|
|
176
|
+
/>
|
|
177
|
+
</div>
|
|
178
|
+
</List>
|
|
179
|
+
</Popup>
|
|
180
|
+
{/if}
|
|
181
|
+
|
|
182
|
+
{#if $superadmin}
|
|
183
|
+
<Popup
|
|
184
|
+
floatingConfig={{ strategy: 'absolute', placement: 'bottom-end' }}
|
|
185
|
+
target="#settings-button"
|
|
186
|
+
>
|
|
187
|
+
<svelte:fragment slot="button">
|
|
188
|
+
<div id="settings-button">
|
|
189
|
+
<Button variant="border" color="light" nonCaptureEvent>
|
|
190
|
+
<Settings size="16" />
|
|
191
|
+
</Button>
|
|
192
|
+
</div>
|
|
193
|
+
</svelte:fragment>
|
|
194
|
+
<List justify="start" gap="none">
|
|
195
|
+
<div class="w-full">
|
|
196
|
+
<Button
|
|
197
|
+
size="xs"
|
|
198
|
+
color="light"
|
|
199
|
+
href="{base}/?workspace=admins#superadmin-settings"
|
|
200
|
+
target="_blank"
|
|
201
|
+
>
|
|
202
|
+
<div class="w-full">
|
|
203
|
+
<List horizontal justify="between" gap="sm">
|
|
204
|
+
<div>Instance Critical Alert Settings</div>
|
|
205
|
+
<ExternalLink size="16" />
|
|
206
|
+
</List>
|
|
207
|
+
</div>
|
|
208
|
+
</Button>
|
|
209
|
+
</div>
|
|
210
|
+
<div class="w-full">
|
|
211
|
+
<Button
|
|
212
|
+
size="xs"
|
|
213
|
+
color="light"
|
|
214
|
+
href="{base}/workspace_settings?tab=error_handler"
|
|
215
|
+
target="_blank"
|
|
216
|
+
>
|
|
217
|
+
Workspace Critical Alert Settings <ExternalLink size="16" />
|
|
218
|
+
</Button>
|
|
219
|
+
</div>
|
|
220
|
+
</List>
|
|
221
|
+
</Popup>
|
|
222
|
+
{:else}
|
|
223
|
+
<Button
|
|
224
|
+
size="xs"
|
|
225
|
+
color="light"
|
|
226
|
+
variant="border"
|
|
227
|
+
href="{base}/workspace_settings?tab=error_handler"
|
|
228
|
+
target="_blank"
|
|
229
|
+
>
|
|
230
|
+
<List horizontal justify="between" gap="sm">
|
|
231
|
+
<Settings size="16" />
|
|
232
|
+
<ExternalLink size="16" />
|
|
233
|
+
</List>
|
|
234
|
+
</Button>
|
|
235
|
+
{/if}
|
|
236
|
+
</List>
|
|
237
|
+
</svelte:fragment>
|
|
238
|
+
|
|
93
239
|
<CriticalAlertModalInner
|
|
240
|
+
bind:workspaceContext
|
|
94
241
|
{numUnacknowledgedCriticalAlerts}
|
|
95
242
|
{updateHasUnacknowledgedCriticalAlerts}
|
|
96
243
|
{getCriticalAlerts}
|
|
97
244
|
{acknowledgeCriticalAlert}
|
|
98
245
|
{acknowledgeAllCriticalAlerts}
|
|
99
|
-
{
|
|
100
|
-
bind:workspaceContext
|
|
246
|
+
bind:this={childRef}
|
|
101
247
|
/>
|
|
102
|
-
</
|
|
248
|
+
</Modal2>
|