windmill-components 1.433.0 → 1.444.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/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 +80 -55
- 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 +16 -2
- package/package/components/graph/FlowGraphV2.svelte.d.ts +2 -0
- package/package/components/graph/graphBuilder.js +1 -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
|
@@ -81,7 +81,7 @@ export default class ResultJobLoader extends SvelteComponent<ResultJobLoaderProp
|
|
|
81
81
|
cancel: () => void;
|
|
82
82
|
error: (err: Error) => void;
|
|
83
83
|
} | undefined) => Promise<string>;
|
|
84
|
-
get runPreview(): (path: string | undefined, code: string, lang: "python3" | "deno" | "go" | "bash" | "powershell" | "postgresql" | "mysql" | "bigquery" | "snowflake" | "mssql" | "graphql" | "nativets" | "bun" | "php" | "rust" | "ansible", args: Record<string, any>, tag: string | undefined, callbacks?: {
|
|
84
|
+
get runPreview(): (path: string | undefined, code: string, lang: "python3" | "deno" | "go" | "bash" | "powershell" | "postgresql" | "mysql" | "bigquery" | "snowflake" | "mssql" | "graphql" | "nativets" | "bun" | "php" | "rust" | "ansible" | "csharp", args: Record<string, any>, tag: string | undefined, callbacks?: {
|
|
85
85
|
done: (x: any) => void;
|
|
86
86
|
cancel: () => void;
|
|
87
87
|
error: (err: Error) => void;
|
|
@@ -12,6 +12,7 @@ import { emptyString, sendUserToast } from '../utils';
|
|
|
12
12
|
import Toggle from './Toggle.svelte';
|
|
13
13
|
import { loadSchedules, saveSchedule } from './flows/scheduleUtils';
|
|
14
14
|
import { writable } from 'svelte/store';
|
|
15
|
+
import Description from './Description.svelte';
|
|
15
16
|
export let schema;
|
|
16
17
|
export let isFlow;
|
|
17
18
|
export let path;
|
|
@@ -31,14 +32,18 @@ async function save() {
|
|
|
31
32
|
}
|
|
32
33
|
</script>
|
|
33
34
|
|
|
34
|
-
<ScheduleEditor
|
|
35
|
-
on:update={() => {
|
|
36
|
-
updateSchedules(true)
|
|
37
|
-
}}
|
|
38
|
-
bind:this={scheduleEditor}
|
|
39
|
-
/>
|
|
40
|
-
|
|
41
35
|
<div class="flex flex-col gap-4 w-full">
|
|
36
|
+
<Description link="https://www.windmill.dev/docs/core_concepts/scheduling">
|
|
37
|
+
Run scripts and flows automatically on a recurring basis using cron expressions. Each script or
|
|
38
|
+
flow can have multiple schedules, with one designated as primary.
|
|
39
|
+
</Description>
|
|
40
|
+
<ScheduleEditor
|
|
41
|
+
on:update={() => {
|
|
42
|
+
updateSchedules(true)
|
|
43
|
+
}}
|
|
44
|
+
bind:this={scheduleEditor}
|
|
45
|
+
/>
|
|
46
|
+
|
|
42
47
|
{#if $primarySchedule == undefined}
|
|
43
48
|
<Skeleton layout={[[12]]} />
|
|
44
49
|
{:else if $primarySchedule}
|
|
@@ -146,10 +151,10 @@ async function save() {
|
|
|
146
151
|
}}
|
|
147
152
|
variant="contained"
|
|
148
153
|
color="dark"
|
|
149
|
-
size="
|
|
154
|
+
size="sm"
|
|
150
155
|
startIcon={{ icon: Calendar }}
|
|
151
156
|
>
|
|
152
|
-
Set
|
|
157
|
+
Set primary schedule
|
|
153
158
|
</Button>
|
|
154
159
|
</div>
|
|
155
160
|
{#if $initialPrimarySchedule != undefined && $initialPrimarySchedule != false && !newItem}
|
|
@@ -186,7 +191,7 @@ async function save() {
|
|
|
186
191
|
size="xs"
|
|
187
192
|
startIcon={{ icon: Calendar }}
|
|
188
193
|
>
|
|
189
|
-
New
|
|
194
|
+
New schedule
|
|
190
195
|
</Button>
|
|
191
196
|
{/if}
|
|
192
197
|
|
|
@@ -196,12 +196,15 @@ const dispatch = createEventDispatcher();
|
|
|
196
196
|
async function loadScript(p) {
|
|
197
197
|
if (p) {
|
|
198
198
|
runnable = undefined;
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
199
|
+
try {
|
|
200
|
+
if (is_flow) {
|
|
201
|
+
runnable = await FlowService.getFlowByPath({ workspace: $workspaceStore, path: p });
|
|
202
|
+
}
|
|
203
|
+
else {
|
|
204
|
+
runnable = await ScriptService.getScriptByPath({ workspace: $workspaceStore, path: p });
|
|
205
|
+
}
|
|
204
206
|
}
|
|
207
|
+
catch (err) { }
|
|
205
208
|
}
|
|
206
209
|
else {
|
|
207
210
|
runnable = undefined;
|
|
@@ -494,7 +497,11 @@ function onVersionChange() {
|
|
|
494
497
|
|
|
495
498
|
<Drawer size="900px" bind:this={drawer}>
|
|
496
499
|
<DrawerContent
|
|
497
|
-
title={edit
|
|
500
|
+
title={edit
|
|
501
|
+
? can_write
|
|
502
|
+
? `Edit schedule ${initialPath}`
|
|
503
|
+
: `View schedule ${initialPath}`
|
|
504
|
+
: 'New schedule'}
|
|
498
505
|
on:close={drawer.closeDrawer}
|
|
499
506
|
>
|
|
500
507
|
<svelte:fragment slot="actions">
|
|
@@ -511,22 +518,24 @@ function onVersionChange() {
|
|
|
511
518
|
View runs
|
|
512
519
|
</Button>
|
|
513
520
|
</div>
|
|
514
|
-
|
|
515
|
-
<
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
521
|
+
{#if can_write}
|
|
522
|
+
<div class="mr-8 center-center -mt-1">
|
|
523
|
+
<Toggle
|
|
524
|
+
disabled={!can_write}
|
|
525
|
+
checked={enabled}
|
|
526
|
+
options={{ right: 'Enabled' }}
|
|
527
|
+
on:change={async (e) => {
|
|
528
|
+
await ScheduleService.setScheduleEnabled({
|
|
529
|
+
path: initialPath,
|
|
530
|
+
workspace: $workspaceStore ?? '',
|
|
531
|
+
requestBody: { enabled: e.detail }
|
|
532
|
+
})
|
|
533
|
+
dispatch('update')
|
|
534
|
+
sendUserToast(`${e.detail ? 'enabled' : 'disabled'} schedule ${initialPath}`)
|
|
535
|
+
}}
|
|
536
|
+
/>
|
|
537
|
+
</div>
|
|
538
|
+
{/if}
|
|
530
539
|
{/if}
|
|
531
540
|
<Button
|
|
532
541
|
startIcon={{ icon: Save }}
|
|
@@ -535,7 +544,8 @@ function onVersionChange() {
|
|
|
535
544
|
emptyString(script_path) ||
|
|
536
545
|
(errorHandlerSelected == 'slack' &&
|
|
537
546
|
!emptyString(errorHandlerPath) &&
|
|
538
|
-
emptyString(errorHandlerExtraArgs['channel']))
|
|
547
|
+
emptyString(errorHandlerExtraArgs['channel'])) ||
|
|
548
|
+
!can_write}
|
|
539
549
|
on:click={scheduleScript}
|
|
540
550
|
>
|
|
541
551
|
{edit ? 'Save' : 'Schedule'}
|
|
@@ -545,6 +555,7 @@ function onVersionChange() {
|
|
|
545
555
|
{#if drawerLoading}
|
|
546
556
|
<Loader2 class="animate-spin" />
|
|
547
557
|
{:else}
|
|
558
|
+
{can_write}
|
|
548
559
|
<div class="flex flex-col gap-12">
|
|
549
560
|
<div class="flex flex-col gap-4">
|
|
550
561
|
<div>
|
|
@@ -557,6 +568,7 @@ function onVersionChange() {
|
|
|
557
568
|
placeholder="Short summary to be displayed when listed"
|
|
558
569
|
class="text-sm w-full"
|
|
559
570
|
bind:value={summary}
|
|
571
|
+
disabled={!can_write}
|
|
560
572
|
on:keyup={() => {
|
|
561
573
|
if (!edit && summary?.length > 0 && !dirtyPath) {
|
|
562
574
|
pathC?.setName(
|
|
@@ -634,6 +646,7 @@ function onVersionChange() {
|
|
|
634
646
|
size="xs"
|
|
635
647
|
bind:checked={isLatestCron}
|
|
636
648
|
on:change={onVersionChange}
|
|
649
|
+
disabled={!can_write}
|
|
637
650
|
/>
|
|
638
651
|
</div>
|
|
639
652
|
{/if}
|
|
@@ -652,6 +665,7 @@ function onVersionChange() {
|
|
|
652
665
|
}}
|
|
653
666
|
bind:checked={showPauseUntil}
|
|
654
667
|
size="xs"
|
|
668
|
+
disabled={!can_write}
|
|
655
669
|
/>
|
|
656
670
|
{#if showPauseUntil}
|
|
657
671
|
<DateTimeInput bind:value={paused_until} />
|
|
@@ -685,6 +699,8 @@ function onVersionChange() {
|
|
|
685
699
|
scriptPath={script_path}
|
|
686
700
|
allowFlow={true}
|
|
687
701
|
{itemKind}
|
|
702
|
+
allowView={script_path != '' && !!runnable}
|
|
703
|
+
allowEdit={script_path != '' && !!runnable && !$userStore?.operator}
|
|
688
704
|
/>
|
|
689
705
|
{/if}
|
|
690
706
|
{#if itemKind == 'flow'}
|
|
@@ -722,6 +738,11 @@ function onVersionChange() {
|
|
|
722
738
|
This {is_flow ? 'flow' : 'script'} takes no argument
|
|
723
739
|
</div>
|
|
724
740
|
{/if}
|
|
741
|
+
{:else if script_path != ''}
|
|
742
|
+
<div class="text-xs texg-gray-700 my-2">
|
|
743
|
+
You cannot see the the {is_flow ? 'flow' : 'script'} input form as you do not have
|
|
744
|
+
access to it.
|
|
745
|
+
</div>
|
|
725
746
|
{:else}
|
|
726
747
|
<div class="text-xs texg-gray-700 my-2">
|
|
727
748
|
Pick a {is_flow ? 'flow' : 'script'} and fill its argument here
|
|
@@ -757,6 +778,7 @@ function onVersionChange() {
|
|
|
757
778
|
<div class="flex flex-row items-center gap-1 text-2xs text-tertiary">
|
|
758
779
|
defaults
|
|
759
780
|
<Dropdown
|
|
781
|
+
disabled={!can_write}
|
|
760
782
|
items={[
|
|
761
783
|
{
|
|
762
784
|
displayName: `Override future schedules only`,
|
|
@@ -849,6 +871,7 @@ function onVersionChange() {
|
|
|
849
871
|
</div>
|
|
850
872
|
</Section>
|
|
851
873
|
{:else if optionTabSelected === 'recovery_handler'}
|
|
874
|
+
{@const disabled = !can_write || emptyString($enterpriseLicense)}
|
|
852
875
|
<Section label="Recovery handler">
|
|
853
876
|
<svelte:fragment slot="header">
|
|
854
877
|
<div class="flex flex-row gap-2">
|
|
@@ -860,6 +883,7 @@ function onVersionChange() {
|
|
|
860
883
|
<div class="flex flex-row items-center text-tertiary text-2xs gap-2">
|
|
861
884
|
defaults
|
|
862
885
|
<Dropdown
|
|
886
|
+
{disabled}
|
|
863
887
|
items={[
|
|
864
888
|
{
|
|
865
889
|
displayName: `Override future schedules only`,
|
|
@@ -880,7 +904,7 @@ function onVersionChange() {
|
|
|
880
904
|
</div>
|
|
881
905
|
</svelte:fragment>
|
|
882
906
|
<ErrorOrRecoveryHandler
|
|
883
|
-
isEditable={
|
|
907
|
+
isEditable={!disabled}
|
|
884
908
|
errorOrRecovery="recovery"
|
|
885
909
|
bind:handlerSelected={recoveryHandlerSelected}
|
|
886
910
|
bind:handlerPath={recoveryHandlerPath}
|
|
@@ -933,12 +957,14 @@ function onVersionChange() {
|
|
|
933
957
|
class="!w-14 mx-2 text-center"
|
|
934
958
|
bind:value={recoveredTimes}
|
|
935
959
|
min="1"
|
|
960
|
+
{disabled}
|
|
936
961
|
/>
|
|
937
962
|
<p>time{recoveredTimes > 1 ? 's in a row' : ''}</p>
|
|
938
963
|
</div>
|
|
939
964
|
</div>
|
|
940
965
|
</Section>
|
|
941
966
|
{:else if optionTabSelected === 'success_handler'}
|
|
967
|
+
{@const disabled = !can_write || emptyString($enterpriseLicense)}
|
|
942
968
|
<Section label="Success handler">
|
|
943
969
|
<svelte:fragment slot="header">
|
|
944
970
|
<div class="flex flex-row gap-2">
|
|
@@ -950,6 +976,7 @@ function onVersionChange() {
|
|
|
950
976
|
<div class="flex flex-row items-center text-tertiary text-2xs gap-2">
|
|
951
977
|
defaults
|
|
952
978
|
<Dropdown
|
|
979
|
+
{disabled}
|
|
953
980
|
items={[
|
|
954
981
|
{
|
|
955
982
|
displayName: `Override future schedules only`,
|
|
@@ -970,7 +997,7 @@ function onVersionChange() {
|
|
|
970
997
|
</div>
|
|
971
998
|
</svelte:fragment>
|
|
972
999
|
<ErrorOrRecoveryHandler
|
|
973
|
-
isEditable={
|
|
1000
|
+
isEditable={!disabled}
|
|
974
1001
|
errorOrRecovery="success"
|
|
975
1002
|
bind:handlerSelected={successHandlerSelected}
|
|
976
1003
|
bind:handlerPath={successHandlerPath}
|
|
@@ -1001,6 +1028,7 @@ function onVersionChange() {
|
|
|
1001
1028
|
</ErrorOrRecoveryHandler>
|
|
1002
1029
|
</Section>
|
|
1003
1030
|
{:else if optionTabSelected === 'retries'}
|
|
1031
|
+
{@const disabled = !can_write || emptyString($enterpriseLicense)}
|
|
1004
1032
|
<Section label="Retries">
|
|
1005
1033
|
<svelte:fragment slot="header">
|
|
1006
1034
|
<div class="flex flex-row gap-2">
|
|
@@ -1015,14 +1043,17 @@ function onVersionChange() {
|
|
|
1015
1043
|
flow step in the flow editor.
|
|
1016
1044
|
</Tooltip>
|
|
1017
1045
|
</svelte:fragment>
|
|
1018
|
-
<FlowRetries
|
|
1046
|
+
<FlowRetries
|
|
1047
|
+
bind:flowModuleRetry={retry}
|
|
1048
|
+
disabled={itemKind !== 'script' || disabled}
|
|
1049
|
+
/>
|
|
1019
1050
|
</Section>
|
|
1020
1051
|
{:else if optionTabSelected === 'tag'}
|
|
1021
1052
|
<Section
|
|
1022
1053
|
label="Custom script tag"
|
|
1023
1054
|
tooltip="When set, the script tag will be overridden by this tag"
|
|
1024
1055
|
>
|
|
1025
|
-
<WorkerTagPicker bind:tag popupPlacement="top-end" />
|
|
1056
|
+
<WorkerTagPicker bind:tag popupPlacement="top-end" disabled={!can_write} />
|
|
1026
1057
|
</Section>
|
|
1027
1058
|
{/if}
|
|
1028
1059
|
{:else}
|
|
@@ -37,6 +37,7 @@ export let lightweightMode = false;
|
|
|
37
37
|
export let dndConfig = undefined;
|
|
38
38
|
export let items = undefined;
|
|
39
39
|
export let helperScript = undefined;
|
|
40
|
+
export let lightHeader = false;
|
|
40
41
|
const dispatch = createEventDispatcher();
|
|
41
42
|
let inputCheck = {};
|
|
42
43
|
$: if (args == undefined || typeof args !== 'object') {
|
|
@@ -47,7 +48,7 @@ export function setDefaults() {
|
|
|
47
48
|
Object.keys(schema?.properties ?? {}).forEach((key) => {
|
|
48
49
|
if (schema?.properties[key].default != undefined && args[key] == undefined) {
|
|
49
50
|
let value = schema?.properties[key].default;
|
|
50
|
-
nargs[key] = value === 'object' ?
|
|
51
|
+
nargs[key] = value === 'object' ? structuredClone(value) : value;
|
|
51
52
|
}
|
|
52
53
|
});
|
|
53
54
|
args = nargs;
|
|
@@ -126,7 +127,7 @@ $: fields = items ?? keys.map((x) => ({ id: x, value: x }));
|
|
|
126
127
|
{@const argName = item.value}
|
|
127
128
|
<div>
|
|
128
129
|
<!-- svelte-ignore a11y-click-events-have-key-events -->
|
|
129
|
-
{#if !schemaSkippedValues.includes(argName) &&
|
|
130
|
+
{#if !schemaSkippedValues.includes(argName) && keys.includes(argName)}
|
|
130
131
|
<!-- svelte-ignore a11y-no-static-element-interactions -->
|
|
131
132
|
<div
|
|
132
133
|
class="flex flex-row items-center bg-surface"
|
|
@@ -146,7 +147,7 @@ $: fields = items ?? keys.map((x) => ({ id: x, value: x }));
|
|
|
146
147
|
required={schema?.required?.includes(argName)}
|
|
147
148
|
pattern={schema.properties[argName].pattern}
|
|
148
149
|
bind:valid={inputCheck[argName]}
|
|
149
|
-
defaultValue={schema.properties[argName].default}
|
|
150
|
+
defaultValue={structuredClone(schema.properties[argName].default)}
|
|
150
151
|
enum_={schema.properties[argName].enum}
|
|
151
152
|
format={schema.properties[argName].format}
|
|
152
153
|
contentEncoding={schema.properties[argName].contentEncoding}
|
|
@@ -207,7 +208,7 @@ $: fields = items ?? keys.map((x) => ({ id: x, value: x }));
|
|
|
207
208
|
required={schema?.required?.includes(argName)}
|
|
208
209
|
pattern={schema.properties[argName].pattern}
|
|
209
210
|
bind:valid={inputCheck[argName]}
|
|
210
|
-
defaultValue={schema.properties[argName].default}
|
|
211
|
+
defaultValue={structuredClone(schema.properties[argName].default)}
|
|
211
212
|
enum_={schema.properties[argName].enum}
|
|
212
213
|
format={schema.properties[argName].format}
|
|
213
214
|
contentEncoding={schema.properties[argName].contentEncoding}
|
|
@@ -234,6 +235,7 @@ $: fields = items ?? keys.map((x) => ({ id: x, value: x }));
|
|
|
234
235
|
orderEditable={dndConfig != undefined}
|
|
235
236
|
otherArgs={args}
|
|
236
237
|
{helperScript}
|
|
238
|
+
{lightHeader}
|
|
237
239
|
>
|
|
238
240
|
<svelte:fragment slot="actions">
|
|
239
241
|
<slot name="actions" />
|
|
@@ -305,7 +307,7 @@ $: fields = items ?? keys.map((x) => ({ id: x, value: x }));
|
|
|
305
307
|
startIcon={{ icon: Plus }}
|
|
306
308
|
on:click={() => variableEditor?.initNew?.()}
|
|
307
309
|
>
|
|
308
|
-
New
|
|
310
|
+
New variable
|
|
309
311
|
</Button>
|
|
310
312
|
</div>
|
|
311
313
|
</ItemPicker>
|
|
@@ -32,6 +32,8 @@ import CustomPopover from './CustomPopover.svelte';
|
|
|
32
32
|
import Summary from './Summary.svelte';
|
|
33
33
|
import DeployOverrideConfirmationModal from './common/confirmationModal/DeployOverrideConfirmationModal.svelte';
|
|
34
34
|
import TriggersEditor from './triggers/TriggersEditor.svelte';
|
|
35
|
+
import { BUN_PREPROCESSOR_MODULE_CODE, PYTHON_PREPROCESSOR_MODULE_CODE } from '../script_helpers';
|
|
36
|
+
import CaptureTable from './triggers/CaptureTable.svelte';
|
|
35
37
|
export let script;
|
|
36
38
|
export let fullyLoaded = true;
|
|
37
39
|
export let initialPath = '';
|
|
@@ -51,6 +53,9 @@ let deployedValue = undefined; // Value to diff against
|
|
|
51
53
|
let deployedBy = undefined; // Author
|
|
52
54
|
let confirmCallback = () => { }; // What happens when user clicks `override` in warning
|
|
53
55
|
let open = false; // Is confirmation modal open
|
|
56
|
+
let args = initialArgs; // Test args input
|
|
57
|
+
let selectedInputTab = 'main';
|
|
58
|
+
let hasPreprocessor = false;
|
|
54
59
|
let metadataOpen = !neverShowMeta &&
|
|
55
60
|
(showMeta ||
|
|
56
61
|
(initialPath == '' &&
|
|
@@ -58,6 +63,7 @@ let metadataOpen = !neverShowMeta &&
|
|
|
58
63
|
searchParams.get('collab') == undefined));
|
|
59
64
|
let editor = undefined;
|
|
60
65
|
let scriptEditor = undefined;
|
|
66
|
+
let captureTable = undefined;
|
|
61
67
|
const primaryScheduleStore = writable(savedPrimarySchedule);
|
|
62
68
|
const triggersCount = writable(savedPrimarySchedule
|
|
63
69
|
? { schedule_count: 1, primary_schedule: { schedule: savedPrimarySchedule.cron } }
|
|
@@ -85,11 +91,15 @@ async function loadTriggers() {
|
|
|
85
91
|
};
|
|
86
92
|
}
|
|
87
93
|
}
|
|
94
|
+
const triggerDefaultValuesStore = writable(undefined);
|
|
95
|
+
const captureOn = writable(undefined);
|
|
88
96
|
setContext('TriggerContext', {
|
|
89
97
|
selectedTrigger: selectedTriggerStore,
|
|
90
98
|
primarySchedule: primaryScheduleStore,
|
|
91
99
|
triggersCount,
|
|
92
|
-
simplifiedPoll
|
|
100
|
+
simplifiedPoll,
|
|
101
|
+
defaultValues: triggerDefaultValuesStore,
|
|
102
|
+
captureOn: captureOn
|
|
93
103
|
});
|
|
94
104
|
const enterpriseLangs = ['bigquery', 'snowflake', 'mssql'];
|
|
95
105
|
export function setCode(code) {
|
|
@@ -145,7 +155,7 @@ if (script.content == '') {
|
|
|
145
155
|
function initContent(language, kind, template) {
|
|
146
156
|
scriptEditor?.disableCollaboration();
|
|
147
157
|
script.content = initialCode(language, kind, template);
|
|
148
|
-
scriptEditor?.inferSchema(script.content, language);
|
|
158
|
+
scriptEditor?.inferSchema(script.content, language, true);
|
|
149
159
|
if (script.content != editor?.getCode()) {
|
|
150
160
|
setCode(script.content);
|
|
151
161
|
}
|
|
@@ -506,6 +516,34 @@ function langToLanguage(lang) {
|
|
|
506
516
|
}
|
|
507
517
|
return lang;
|
|
508
518
|
}
|
|
519
|
+
async function applyArgs(e) {
|
|
520
|
+
selectedInputTab = e.detail.kind;
|
|
521
|
+
metadataOpen = false;
|
|
522
|
+
args = e.detail.args ?? {};
|
|
523
|
+
}
|
|
524
|
+
function openTriggers(ev) {
|
|
525
|
+
metadataOpen = true;
|
|
526
|
+
selectedTab = 'triggers';
|
|
527
|
+
selectedTriggerStore.set(ev.detail.kind);
|
|
528
|
+
triggerDefaultValuesStore.set(ev.detail.config);
|
|
529
|
+
captureOn.set(true);
|
|
530
|
+
}
|
|
531
|
+
function addPreprocessor() {
|
|
532
|
+
const code = editor?.getCode();
|
|
533
|
+
if (code) {
|
|
534
|
+
const preprocessorCode = script.language === 'python3'
|
|
535
|
+
? PYTHON_PREPROCESSOR_MODULE_CODE
|
|
536
|
+
: BUN_PREPROCESSOR_MODULE_CODE;
|
|
537
|
+
const mainIndex = code.indexOf(script.language === 'python3' ? 'def main' : 'export async function main');
|
|
538
|
+
if (mainIndex === -1) {
|
|
539
|
+
editor?.setCode(code + preprocessorCode);
|
|
540
|
+
}
|
|
541
|
+
else {
|
|
542
|
+
editor?.setCode(code.slice(0, mainIndex) + preprocessorCode + '\n' + code.slice(mainIndex) + '\n\n');
|
|
543
|
+
}
|
|
544
|
+
}
|
|
545
|
+
selectedInputTab = 'preprocessor';
|
|
546
|
+
}
|
|
509
547
|
</script>
|
|
510
548
|
|
|
511
549
|
<svelte:window on:keydown={onKeyDown} />
|
|
@@ -541,9 +579,7 @@ function langToLanguage(lang) {
|
|
|
541
579
|
</Tab>
|
|
542
580
|
<Tab value="triggers">
|
|
543
581
|
Triggers
|
|
544
|
-
<Tooltip
|
|
545
|
-
documentationLink="https://www.windmill.dev/docs/getting_started/trigger_scripts"
|
|
546
|
-
>
|
|
582
|
+
<Tooltip documentationLink="https://www.windmill.dev/docs/getting_started/triggers">
|
|
547
583
|
Configure how this script will be triggered.
|
|
548
584
|
</Tooltip>
|
|
549
585
|
</Tab>
|
|
@@ -1102,12 +1138,22 @@ function langToLanguage(lang) {
|
|
|
1102
1138
|
</TabContent>
|
|
1103
1139
|
<TabContent value="triggers">
|
|
1104
1140
|
<TriggersEditor
|
|
1141
|
+
on:applyArgs={applyArgs}
|
|
1142
|
+
on:addPreprocessor={addPreprocessor}
|
|
1143
|
+
on:exitTriggers={() => {
|
|
1144
|
+
captureTable?.refreshCaptures()
|
|
1145
|
+
}}
|
|
1105
1146
|
{initialPath}
|
|
1106
1147
|
schema={script.schema}
|
|
1107
1148
|
noEditor={true}
|
|
1108
1149
|
isFlow={false}
|
|
1109
1150
|
currentPath={script.path}
|
|
1151
|
+
hash={script.parent_hash}
|
|
1110
1152
|
newItem={initialPath == ''}
|
|
1153
|
+
canHavePreprocessor={script.language === 'bun' ||
|
|
1154
|
+
script.language === 'deno' ||
|
|
1155
|
+
script.language === 'python3'}
|
|
1156
|
+
{hasPreprocessor}
|
|
1111
1157
|
/>
|
|
1112
1158
|
<!-- <ScriptSchedules {initialPath} schema={script.schema} schedule={scheduleStore} /> -->
|
|
1113
1159
|
</TabContent>
|
|
@@ -1286,6 +1332,7 @@ function langToLanguage(lang) {
|
|
|
1286
1332
|
</div>
|
|
1287
1333
|
|
|
1288
1334
|
<ScriptEditor
|
|
1335
|
+
bind:selectedTab={selectedInputTab}
|
|
1289
1336
|
{customUi}
|
|
1290
1337
|
collabMode
|
|
1291
1338
|
edit={initialPath != ''}
|
|
@@ -1295,6 +1342,9 @@ function langToLanguage(lang) {
|
|
|
1295
1342
|
on:saveDraft={() => {
|
|
1296
1343
|
saveDraft()
|
|
1297
1344
|
}}
|
|
1345
|
+
on:openTriggers={openTriggers}
|
|
1346
|
+
on:applyArgs={applyArgs}
|
|
1347
|
+
on:addPreprocessor={addPreprocessor}
|
|
1298
1348
|
bind:editor
|
|
1299
1349
|
bind:this={scriptEditor}
|
|
1300
1350
|
bind:schema={script.schema}
|
|
@@ -1305,6 +1355,9 @@ function langToLanguage(lang) {
|
|
|
1305
1355
|
kind={script.kind}
|
|
1306
1356
|
{template}
|
|
1307
1357
|
tag={script.tag}
|
|
1358
|
+
bind:args
|
|
1359
|
+
bind:hasPreprocessor
|
|
1360
|
+
bind:captureTable
|
|
1308
1361
|
/>
|
|
1309
1362
|
</div>
|
|
1310
1363
|
{:else}
|