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
|
@@ -70,6 +70,7 @@ export let shouldDispatchChanges = false;
|
|
|
70
70
|
export let noDefaultOnSelectFirst = false;
|
|
71
71
|
export let helperScript = undefined;
|
|
72
72
|
export let otherArgs = {};
|
|
73
|
+
export let lightHeader = false;
|
|
73
74
|
let oneOfSelected = undefined;
|
|
74
75
|
async function updateOneOfSelected(oneOf) {
|
|
75
76
|
if (oneOf &&
|
|
@@ -101,7 +102,6 @@ let s3FileUploadRawMode;
|
|
|
101
102
|
let isListJson = false;
|
|
102
103
|
let hasIsListJsonChanged = false;
|
|
103
104
|
let el = undefined;
|
|
104
|
-
let inputCat = computeInputCat(type, format, itemsType?.type, enum_, contentEncoding);
|
|
105
105
|
$: inputCat = computeInputCat(type, format, itemsType?.type, enum_, contentEncoding);
|
|
106
106
|
let rawValue = undefined;
|
|
107
107
|
function computeDefaultValue(nvalue, inputCat, defaultValue, nnullable) {
|
|
@@ -168,12 +168,12 @@ $: !isListJson &&
|
|
|
168
168
|
!hasIsListJsonChanged &&
|
|
169
169
|
checkArrayValueType();
|
|
170
170
|
$: defaultValue != undefined && handleDefaultValueChange();
|
|
171
|
-
let oldDefaultValue = defaultValue;
|
|
171
|
+
let oldDefaultValue = structuredClone(defaultValue);
|
|
172
172
|
function handleDefaultValueChange() {
|
|
173
|
-
if (value
|
|
173
|
+
if (deepEqual(value, oldDefaultValue)) {
|
|
174
174
|
value = defaultValue;
|
|
175
175
|
}
|
|
176
|
-
oldDefaultValue = defaultValue;
|
|
176
|
+
oldDefaultValue = structuredClone(defaultValue);
|
|
177
177
|
}
|
|
178
178
|
function evalValueToRaw() {
|
|
179
179
|
rawValue =
|
|
@@ -298,6 +298,7 @@ $: shouldDispatchChanges && debounced(value);
|
|
|
298
298
|
{contentEncoding}
|
|
299
299
|
{format}
|
|
300
300
|
{simpleTooltip}
|
|
301
|
+
{lightHeader}
|
|
301
302
|
/>
|
|
302
303
|
{/if}
|
|
303
304
|
|
|
@@ -450,7 +451,6 @@ $: shouldDispatchChanges && debounced(value);
|
|
|
450
451
|
{onlyMaskPassword}
|
|
451
452
|
{disablePortal}
|
|
452
453
|
{disabled}
|
|
453
|
-
noDelete
|
|
454
454
|
schema={getSchemaFromProperties(itemsType?.properties)}
|
|
455
455
|
bind:args={v}
|
|
456
456
|
/>
|
|
@@ -613,11 +613,11 @@ $: shouldDispatchChanges && debounced(value);
|
|
|
613
613
|
<div class="flex flex-col gap-2 w-full">
|
|
614
614
|
{#if oneOf && oneOf.length >= 2}
|
|
615
615
|
<ToggleButtonGroup
|
|
616
|
+
bind:selected={oneOfSelected}
|
|
616
617
|
on:selected={() => {
|
|
617
|
-
value = {}
|
|
618
|
+
value = { label: oneOfSelected }
|
|
618
619
|
redraw += 1
|
|
619
620
|
}}
|
|
620
|
-
bind:selected={oneOfSelected}
|
|
621
621
|
>
|
|
622
622
|
{#each oneOf as obj}
|
|
623
623
|
<ToggleButton value={obj.title} label={obj.title} />
|
|
@@ -635,10 +635,8 @@ $: shouldDispatchChanges && debounced(value);
|
|
|
635
635
|
{disablePortal}
|
|
636
636
|
{disabled}
|
|
637
637
|
schema={{
|
|
638
|
-
properties:
|
|
639
|
-
|
|
640
|
-
),
|
|
641
|
-
order: obj.order?.filter((k) => k !== 'label') ?? undefined,
|
|
638
|
+
properties: obj.properties,
|
|
639
|
+
order: obj.order,
|
|
642
640
|
$schema: '',
|
|
643
641
|
required: obj.required ?? [],
|
|
644
642
|
type: 'object'
|
|
@@ -658,12 +656,10 @@ $: shouldDispatchChanges && debounced(value);
|
|
|
658
656
|
{onlyMaskPassword}
|
|
659
657
|
{disablePortal}
|
|
660
658
|
{disabled}
|
|
661
|
-
|
|
659
|
+
schemaSkippedValues={['label']}
|
|
662
660
|
schema={{
|
|
663
|
-
properties:
|
|
664
|
-
|
|
665
|
-
),
|
|
666
|
-
order: obj.order?.filter((k) => k !== 'label') ?? undefined,
|
|
661
|
+
properties: obj.properties,
|
|
662
|
+
order: obj.order,
|
|
667
663
|
$schema: '',
|
|
668
664
|
required: obj.required ?? [],
|
|
669
665
|
type: 'object'
|
|
@@ -4,14 +4,16 @@ import Tooltip from './Tooltip.svelte';
|
|
|
4
4
|
import AssignableTagsInner from './AssignableTagsInner.svelte';
|
|
5
5
|
export let placement = 'bottom-end';
|
|
6
6
|
export let color = 'dark';
|
|
7
|
+
export let disabled = false;
|
|
7
8
|
</script>
|
|
8
9
|
|
|
9
10
|
<Popup
|
|
10
11
|
floatingConfig={{ strategy: 'absolute', placement: placement }}
|
|
11
12
|
containerClasses="border rounded-lg shadow-lg p-4 bg-surface"
|
|
13
|
+
{disabled}
|
|
12
14
|
>
|
|
13
15
|
<svelte:fragment slot="button">
|
|
14
|
-
<Button {color} size="xs" nonCaptureEvent={true}>
|
|
16
|
+
<Button {color} size="xs" nonCaptureEvent={true} {disabled}>
|
|
15
17
|
<div class="flex flex-row gap-1 items-center"
|
|
16
18
|
><Pen size={14} /> Custom tags <Tooltip light
|
|
17
19
|
>Tags are assigned to scripts and flows. Workers only accept jobs that correspond to their
|
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
<script>import { enterpriseLicense } from '../stores';
|
|
2
|
+
import { Alert, Button, Tab, Tabs } from './common';
|
|
3
|
+
import OAuthSetting from './OAuthSetting.svelte';
|
|
4
|
+
import OktaSetting from './OktaSetting.svelte';
|
|
5
|
+
import CloseButton from './common/CloseButton.svelte';
|
|
6
|
+
import KeycloakSetting from './KeycloakSetting.svelte';
|
|
7
|
+
import CustomSso from './CustomSso.svelte';
|
|
8
|
+
import AuthentikSetting from './AuthentikSetting.svelte';
|
|
9
|
+
import AutheliaSetting from './AutheliaSetting.svelte';
|
|
10
|
+
import KanidmSetting from './KanidmSetting.svelte';
|
|
11
|
+
import ZitadelSetting from './ZitadelSetting.svelte';
|
|
12
|
+
import CustomOauth from './CustomOauth.svelte';
|
|
13
|
+
import { capitalize } from '../utils';
|
|
14
|
+
import Toggle from './Toggle.svelte';
|
|
15
|
+
import { ExternalLink, Plus } from 'lucide-svelte';
|
|
16
|
+
export let snowflakeAccountIdentifier = '';
|
|
17
|
+
export let oauths = {};
|
|
18
|
+
const windmillBuiltins = [
|
|
19
|
+
'github',
|
|
20
|
+
'gitlab',
|
|
21
|
+
'bitbucket',
|
|
22
|
+
'slack',
|
|
23
|
+
'gsheets',
|
|
24
|
+
'gdrive',
|
|
25
|
+
'gmail',
|
|
26
|
+
'gcal',
|
|
27
|
+
'gforms',
|
|
28
|
+
'gcloud',
|
|
29
|
+
'gworkspace',
|
|
30
|
+
'basecamp',
|
|
31
|
+
'linkedin',
|
|
32
|
+
'quickbooks',
|
|
33
|
+
'visma',
|
|
34
|
+
'spotify',
|
|
35
|
+
'snowflake_oauth',
|
|
36
|
+
'xero'
|
|
37
|
+
];
|
|
38
|
+
let oauth_name = undefined;
|
|
39
|
+
let clientName = '';
|
|
40
|
+
let resourceName = '';
|
|
41
|
+
let tab = 'sso';
|
|
42
|
+
let requirePreexistingUserForOauth = false;
|
|
43
|
+
</script>
|
|
44
|
+
|
|
45
|
+
<div>
|
|
46
|
+
<Tabs bind:selected={tab} class="mt-2 mb-4">
|
|
47
|
+
<Tab value="sso">SSO</Tab>
|
|
48
|
+
<Tab value="oauth">OAuth</Tab>
|
|
49
|
+
<Tab value="scim">SCIM/SAML</Tab>
|
|
50
|
+
</Tabs>
|
|
51
|
+
</div>
|
|
52
|
+
|
|
53
|
+
<div class="mb-6">
|
|
54
|
+
{#if tab === 'sso'}
|
|
55
|
+
{#if !$enterpriseLicense || $enterpriseLicense.endsWith('_pro')}
|
|
56
|
+
<Alert type="warning" title="Limited to 10 SSO users">
|
|
57
|
+
Without EE, the number of SSO users is limited to 10. SCIM/SAML is available on EE
|
|
58
|
+
</Alert>
|
|
59
|
+
{/if}
|
|
60
|
+
|
|
61
|
+
<div class="py-1" />
|
|
62
|
+
<div class="mb-2">
|
|
63
|
+
<span class="text-primary text-sm"
|
|
64
|
+
>When at least one of the below options is set, users will be able to login to Windmill via
|
|
65
|
+
their third-party account.
|
|
66
|
+
<br /> To test SSO, the recommended workflow is to to save the settings and try to login in
|
|
67
|
+
an incognito window.
|
|
68
|
+
<a target="_blank" href="https://www.windmill.dev/docs/misc/setup_oauth#sso">Learn more</a
|
|
69
|
+
></span
|
|
70
|
+
>
|
|
71
|
+
</div>
|
|
72
|
+
<div class="flex flex-col gap-3 py-4">
|
|
73
|
+
<OAuthSetting name="google" bind:value={oauths['google']} />
|
|
74
|
+
<OAuthSetting name="microsoft" bind:value={oauths['microsoft']} />
|
|
75
|
+
<OktaSetting bind:value={oauths['okta']} />
|
|
76
|
+
<OAuthSetting name="github" bind:value={oauths['github']} />
|
|
77
|
+
<OAuthSetting name="gitlab" bind:value={oauths['gitlab']} />
|
|
78
|
+
<OAuthSetting name="jumpcloud" bind:value={oauths['jumpcloud']} />
|
|
79
|
+
<KeycloakSetting bind:value={oauths['keycloak']} />
|
|
80
|
+
<AuthentikSetting bind:value={oauths['authentik']} />
|
|
81
|
+
<AutheliaSetting bind:value={oauths['authelia']} />
|
|
82
|
+
<KanidmSetting bind:value={oauths['kanidm']} />
|
|
83
|
+
<ZitadelSetting bind:value={oauths['zitadel']} />
|
|
84
|
+
{#each Object.keys(oauths) as k}
|
|
85
|
+
{#if !['authelia', 'authentik', 'google', 'microsoft', 'github', 'gitlab', 'jumpcloud', 'okta', 'keycloak', 'slack', 'kanidm', 'zitadel'].includes(k) && 'login_config' in oauths[k]}
|
|
86
|
+
{#if oauths[k]}
|
|
87
|
+
<div class="flex flex-col gap-2 pb-4">
|
|
88
|
+
<div class="flex flex-row items-center gap-2">
|
|
89
|
+
<!-- svelte-ignore a11y-label-has-associated-control -->
|
|
90
|
+
<label class="text-md font-medium text-primary">{k}</label>
|
|
91
|
+
<CloseButton
|
|
92
|
+
on:close={() => {
|
|
93
|
+
delete oauths[k]
|
|
94
|
+
oauths = { ...oauths }
|
|
95
|
+
}}
|
|
96
|
+
/>
|
|
97
|
+
</div>
|
|
98
|
+
<div class="p-2 border rounded">
|
|
99
|
+
<label class="block pb-2">
|
|
100
|
+
<span class="text-primary font-semibold text-sm">Custom Name</span>
|
|
101
|
+
<input
|
|
102
|
+
type="text"
|
|
103
|
+
placeholder="Custom Name"
|
|
104
|
+
bind:value={oauths[k]['display_name']}
|
|
105
|
+
/>
|
|
106
|
+
</label>
|
|
107
|
+
<label class="block pb-2">
|
|
108
|
+
<span class="text-primary font-semibold text-sm">Client Id</span>
|
|
109
|
+
<input type="text" placeholder="Client Id" bind:value={oauths[k]['id']} />
|
|
110
|
+
</label>
|
|
111
|
+
<label class="block pb-2">
|
|
112
|
+
<span class="text-primary font-semibold text-sm">Client Secret</span>
|
|
113
|
+
<input type="text" placeholder="Client Secret" bind:value={oauths[k]['secret']} />
|
|
114
|
+
</label>
|
|
115
|
+
{#if !windmillBuiltins.includes(k) && k != 'slack'}
|
|
116
|
+
<CustomSso bind:login_config={oauths[k]['login_config']} />
|
|
117
|
+
{/if}
|
|
118
|
+
</div>
|
|
119
|
+
</div>
|
|
120
|
+
{/if}
|
|
121
|
+
{/if}
|
|
122
|
+
{/each}
|
|
123
|
+
</div>
|
|
124
|
+
<div class="flex gap-2 py-4">
|
|
125
|
+
<input type="text" placeholder="client_id" bind:value={clientName} />
|
|
126
|
+
<Button
|
|
127
|
+
variant="border"
|
|
128
|
+
color="blue"
|
|
129
|
+
hover="yo"
|
|
130
|
+
size="sm"
|
|
131
|
+
endIcon={{ icon: Plus }}
|
|
132
|
+
disabled={clientName == ''}
|
|
133
|
+
on:click={() => {
|
|
134
|
+
oauths[clientName] = { id: '', secret: '', login_config: {} }
|
|
135
|
+
clientName = ''
|
|
136
|
+
}}
|
|
137
|
+
>
|
|
138
|
+
Add custom SSO client {!$enterpriseLicense ? '(requires ee)' : ''}
|
|
139
|
+
</Button>
|
|
140
|
+
</div>
|
|
141
|
+
<div class="flex gap-2 py-4">
|
|
142
|
+
<Toggle
|
|
143
|
+
options={{
|
|
144
|
+
right: 'Require users to have been added manually to Windmill to sign in through OAuth'
|
|
145
|
+
}}
|
|
146
|
+
bind:checked={requirePreexistingUserForOauth}
|
|
147
|
+
/>
|
|
148
|
+
</div>
|
|
149
|
+
{:else if tab === 'oauth'}
|
|
150
|
+
<div class="mb-2">
|
|
151
|
+
<span class="text-primary text-sm"
|
|
152
|
+
>When one of the below options is set, you will be able to create a specific resource
|
|
153
|
+
containing a token automatically generated by the third-party provider.
|
|
154
|
+
<br />
|
|
155
|
+
To test it after setting an oauth client, go to the Resources menu and create a new one of the
|
|
156
|
+
type of your oauth client (i.e. a 'github' resource if you set Github OAuth).
|
|
157
|
+
<br /><a target="_blank" href="https://www.windmill.dev/docs/misc/setup_oauth#oauth"
|
|
158
|
+
>Learn more</a
|
|
159
|
+
></span
|
|
160
|
+
>
|
|
161
|
+
</div>
|
|
162
|
+
<div class="py-1" />
|
|
163
|
+
<OAuthSetting login={false} name="slack" bind:value={oauths['slack']} />
|
|
164
|
+
<div class="py-1" />
|
|
165
|
+
|
|
166
|
+
{#each Object.keys(oauths) as k}
|
|
167
|
+
{#if oauths[k] && !('login_config' in oauths[k])}
|
|
168
|
+
{#if !['slack'].includes(k) && oauths[k]}
|
|
169
|
+
<div class="flex flex-col gap-2 pb-4">
|
|
170
|
+
<div class="flex flex-row items-center gap-2">
|
|
171
|
+
<!-- svelte-ignore a11y-label-has-associated-control -->
|
|
172
|
+
<label class="text-md font-medium text-primary">{k}</label>
|
|
173
|
+
<CloseButton
|
|
174
|
+
on:close={() => {
|
|
175
|
+
delete oauths[k]
|
|
176
|
+
oauths = { ...oauths }
|
|
177
|
+
}}
|
|
178
|
+
/>
|
|
179
|
+
</div>
|
|
180
|
+
<div class="p-2 border rounded">
|
|
181
|
+
<label class="block pb-2">
|
|
182
|
+
<span class="text-primary font-semibold text-sm">Client Id</span>
|
|
183
|
+
<input type="text" placeholder="Client Id" bind:value={oauths[k]['id']} />
|
|
184
|
+
</label>
|
|
185
|
+
<label class="block pb-2">
|
|
186
|
+
<span class="text-primary font-semibold text-sm">Client Secret</span>
|
|
187
|
+
<input type="text" placeholder="Client Secret" bind:value={oauths[k]['secret']} />
|
|
188
|
+
</label>
|
|
189
|
+
{#if !windmillBuiltins.includes(k) && k != 'slack'}
|
|
190
|
+
<CustomOauth bind:connect_config={oauths[k]['connect_config']} />
|
|
191
|
+
{/if}
|
|
192
|
+
{#if k == 'snowflake_oauth'}
|
|
193
|
+
<label class="block pb-2">
|
|
194
|
+
<span class="text-primary font-semibold text-sm flex gap-2 items-center"
|
|
195
|
+
><a
|
|
196
|
+
href="https://docs.snowflake.com/en/user-guide/admin-account-identifier#using-an-account-name-as-an-identifier"
|
|
197
|
+
target="_blank">Snowflake Account Identifier</a
|
|
198
|
+
><ExternalLink size={12} /></span
|
|
199
|
+
>
|
|
200
|
+
<input
|
|
201
|
+
type="text"
|
|
202
|
+
placeholder="<orgname>-<account_name>"
|
|
203
|
+
required={true}
|
|
204
|
+
bind:value={snowflakeAccountIdentifier}
|
|
205
|
+
/>
|
|
206
|
+
</label>
|
|
207
|
+
{/if}
|
|
208
|
+
</div>
|
|
209
|
+
</div>
|
|
210
|
+
{/if}
|
|
211
|
+
{/if}
|
|
212
|
+
{/each}
|
|
213
|
+
|
|
214
|
+
<div class="flex gap-2">
|
|
215
|
+
<select name="oauth_name" id="oauth_name" bind:value={oauth_name}>
|
|
216
|
+
<option value={undefined}>Select an OAuth client</option>
|
|
217
|
+
<option value="custom">Fully Custom (requires ee)</option>
|
|
218
|
+
{#each windmillBuiltins as name}
|
|
219
|
+
<option value={name}>{capitalize(name)}</option>
|
|
220
|
+
{/each}
|
|
221
|
+
</select>
|
|
222
|
+
{#if oauth_name == 'custom'}
|
|
223
|
+
<input type="text" placeholder="client_id" bind:value={resourceName} />
|
|
224
|
+
{:else}
|
|
225
|
+
<input type="text" value={oauth_name ?? ''} disabled />
|
|
226
|
+
{/if}
|
|
227
|
+
<Button
|
|
228
|
+
variant="border"
|
|
229
|
+
color="blue"
|
|
230
|
+
hover="yo"
|
|
231
|
+
size="sm"
|
|
232
|
+
endIcon={{ icon: Plus }}
|
|
233
|
+
disabled={!oauth_name ||
|
|
234
|
+
(oauth_name == 'custom' && resourceName == '') ||
|
|
235
|
+
(oauth_name == 'custom' && !$enterpriseLicense)}
|
|
236
|
+
on:click={() => {
|
|
237
|
+
let name = oauth_name == 'custom' ? resourceName : oauth_name
|
|
238
|
+
oauths[name ?? ''] = { id: '', secret: '' }
|
|
239
|
+
resourceName = ''
|
|
240
|
+
}}
|
|
241
|
+
>
|
|
242
|
+
Add OAuth client {oauth_name == 'custom' && !$enterpriseLicense ? '(requires ee)' : ''}
|
|
243
|
+
</Button>
|
|
244
|
+
</div>
|
|
245
|
+
{:else if tab == 'scim'}
|
|
246
|
+
<slot name="scim" />
|
|
247
|
+
{/if}
|
|
248
|
+
</div>
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { SvelteComponent } from "svelte";
|
|
2
|
+
declare const __propDef: {
|
|
3
|
+
props: {
|
|
4
|
+
snowflakeAccountIdentifier?: string | undefined;
|
|
5
|
+
oauths?: Record<string, any> | undefined;
|
|
6
|
+
};
|
|
7
|
+
events: {
|
|
8
|
+
[evt: string]: CustomEvent<any>;
|
|
9
|
+
};
|
|
10
|
+
slots: {
|
|
11
|
+
scim: {};
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
export type AuthSettingsProps = typeof __propDef.props;
|
|
15
|
+
export type AuthSettingsEvents = typeof __propDef.events;
|
|
16
|
+
export type AuthSettingsSlots = typeof __propDef.slots;
|
|
17
|
+
export default class AuthSettings extends SvelteComponent<AuthSettingsProps, AuthSettingsEvents, AuthSettingsSlots> {
|
|
18
|
+
}
|
|
19
|
+
export {};
|
|
@@ -270,7 +270,7 @@ let test_input = 3;
|
|
|
270
270
|
<ToggleButton
|
|
271
271
|
value="script"
|
|
272
272
|
size="sm"
|
|
273
|
-
label="Custom
|
|
273
|
+
label="Custom script"
|
|
274
274
|
tooltip="Run a custom script to scale your worker group"
|
|
275
275
|
/>
|
|
276
276
|
<ToggleButton position="center" disabled value="ecs" size="sm" label="ECS (soon)" />
|
|
@@ -345,7 +345,7 @@ let test_input = 3;
|
|
|
345
345
|
{:else}
|
|
346
346
|
<ToggleButtonGroup selected={'script'} disabled class="mb-4 mt-2">
|
|
347
347
|
<ToggleButton value="dryrun" size="sm" label="Dry run" />
|
|
348
|
-
<ToggleButton value="script" size="sm" label="Custom
|
|
348
|
+
<ToggleButton value="script" size="sm" label="Custom script" />
|
|
349
349
|
<ToggleButton position="center" value="ecs" size="sm" label="ECS (soon)" />
|
|
350
350
|
<ToggleButton position="right" value="nomad" size="sm" label="Nomad (soon)" />
|
|
351
351
|
<ToggleButton position="right" value="kubernetes" size="sm" label="Kubernetes (soon)" />
|
|
@@ -244,7 +244,7 @@ const items = Object.keys(timezones)
|
|
|
244
244
|
</Label>
|
|
245
245
|
|
|
246
246
|
{#if !disabled}
|
|
247
|
-
<div class="flex flex-row gap-2">
|
|
247
|
+
<div class="flex flex-row gap-2 mb-2">
|
|
248
248
|
<CronBuilder let:close>
|
|
249
249
|
<div class="w-full flex flex-col">
|
|
250
250
|
<div class="w-full flex flex-col gap-1">
|
|
@@ -382,7 +382,7 @@ const items = Object.keys(timezones)
|
|
|
382
382
|
close(null)
|
|
383
383
|
}}
|
|
384
384
|
>
|
|
385
|
-
Set
|
|
385
|
+
Set cron schedule
|
|
386
386
|
</Button>
|
|
387
387
|
</div>
|
|
388
388
|
</CronBuilder>
|
|
@@ -602,7 +602,7 @@ async function showDiff(kind, path) {
|
|
|
602
602
|
|
|
603
603
|
{#if !hideButton}
|
|
604
604
|
<div class="mt-16 flex flex-row-reverse max-w-3xl"
|
|
605
|
-
><Button on:click={deployAll}>Deploy
|
|
605
|
+
><Button on:click={deployAll}>Deploy all toggled</Button></div
|
|
606
606
|
>
|
|
607
607
|
{/if}
|
|
608
608
|
{:else}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { SvelteComponent } from "svelte";
|
|
2
|
+
declare const __propDef: {
|
|
3
|
+
props: {
|
|
4
|
+
link?: string | undefined;
|
|
5
|
+
};
|
|
6
|
+
events: {
|
|
7
|
+
[evt: string]: CustomEvent<any>;
|
|
8
|
+
};
|
|
9
|
+
slots: {
|
|
10
|
+
default: {};
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
export type DescriptionProps = typeof __propDef.props;
|
|
14
|
+
export type DescriptionEvents = typeof __propDef.events;
|
|
15
|
+
export type DescriptionSlots = typeof __propDef.slots;
|
|
16
|
+
export default class Description extends SvelteComponent<DescriptionProps, DescriptionEvents, DescriptionSlots> {
|
|
17
|
+
}
|
|
18
|
+
export {};
|
|
@@ -389,7 +389,9 @@ setContext('TriggerContext', {
|
|
|
389
389
|
primarySchedule: primaryScheduleStore,
|
|
390
390
|
selectedTrigger: selectedTriggerStore,
|
|
391
391
|
triggersCount: triggersCount,
|
|
392
|
-
simplifiedPoll: writable(false)
|
|
392
|
+
simplifiedPoll: writable(false),
|
|
393
|
+
defaultValues: writable(undefined),
|
|
394
|
+
captureOn: writable(undefined)
|
|
393
395
|
});
|
|
394
396
|
setContext('FlowEditorContext', {
|
|
395
397
|
selectedId: selectedIdStore,
|
|
@@ -405,7 +407,8 @@ setContext('FlowEditorContext', {
|
|
|
405
407
|
initialPath: '',
|
|
406
408
|
flowInputsStore: writable({}),
|
|
407
409
|
customUi: {},
|
|
408
|
-
insertButtonOpen: writable(false)
|
|
410
|
+
insertButtonOpen: writable(false),
|
|
411
|
+
executionCount: writable(0),
|
|
409
412
|
});
|
|
410
413
|
setContext('PropPickerContext', {
|
|
411
414
|
flowPropPickerConfig: writable(undefined),
|
|
@@ -609,7 +612,19 @@ async function inferModuleArgs(selectedIdStore) {
|
|
|
609
612
|
</Pane>
|
|
610
613
|
<Pane size={33}>
|
|
611
614
|
{#key reload}
|
|
612
|
-
<FlowEditorPanel
|
|
615
|
+
<FlowEditorPanel
|
|
616
|
+
enableAi
|
|
617
|
+
noEditor
|
|
618
|
+
on:applyArgs={(ev) => {
|
|
619
|
+
if (ev.detail.kind === 'preprocessor') {
|
|
620
|
+
$testStepStore['preprocessor'] = ev.detail.args ?? {}
|
|
621
|
+
$selectedIdStore = 'preprocessor'
|
|
622
|
+
} else {
|
|
623
|
+
$previewArgsStore = ev.detail.args ?? {}
|
|
624
|
+
flowPreviewButtons?.openPreview()
|
|
625
|
+
}
|
|
626
|
+
}}
|
|
627
|
+
/>
|
|
613
628
|
{/key}
|
|
614
629
|
</Pane>
|
|
615
630
|
</Splitpanes>
|
|
@@ -33,6 +33,7 @@ export let noControls = false;
|
|
|
33
33
|
export let drawerOpen = false;
|
|
34
34
|
export let nodeId = undefined;
|
|
35
35
|
export let language = undefined;
|
|
36
|
+
export let appPath = undefined;
|
|
36
37
|
const IMG_MAX_SIZE = 10000000;
|
|
37
38
|
const TABLE_MAX_SIZE = 5000000;
|
|
38
39
|
const DISPLAY_MAX_SIZE = 100000;
|
|
@@ -225,6 +226,7 @@ function handleArrayOfObjectsHeaders(json) {
|
|
|
225
226
|
if (Array.isArray(json) &&
|
|
226
227
|
json.length > 0 &&
|
|
227
228
|
Array.isArray(json[0]) &&
|
|
229
|
+
json[0].length > 0 &&
|
|
228
230
|
json[0].every((item) => typeof item === 'string') &&
|
|
229
231
|
json
|
|
230
232
|
.slice(1)
|
|
@@ -264,6 +266,7 @@ function arrayOfRowsToObjects(input) {
|
|
|
264
266
|
// handle possible first row of headers
|
|
265
267
|
if (input.length > 1 &&
|
|
266
268
|
Array.isArray(input[0]) &&
|
|
269
|
+
input[0].length > 0 &&
|
|
267
270
|
input[0].every((item) => typeof item === 'string')) {
|
|
268
271
|
const headers = input[0];
|
|
269
272
|
const rows = input.slice(1);
|
|
@@ -563,7 +566,7 @@ let seeS3PreviewFileFromList = '';
|
|
|
563
566
|
>
|
|
564
567
|
</button>
|
|
565
568
|
{:else if !result?.disable_download}
|
|
566
|
-
<FileDownload {workspaceId} s3object={result} />
|
|
569
|
+
<FileDownload {workspaceId} s3object={result} {appPath} />
|
|
567
570
|
<button
|
|
568
571
|
class="text-secondary underline text-2xs whitespace-nowrap"
|
|
569
572
|
on:click={() => {
|
|
@@ -580,7 +583,7 @@ let seeS3PreviewFileFromList = '';
|
|
|
580
583
|
{/if}
|
|
581
584
|
</div>
|
|
582
585
|
{#if typeof result?.s3 === 'string'}
|
|
583
|
-
{#if result?.s3?.endsWith('.parquet') || result?.s3?.endsWith('.csv')}
|
|
586
|
+
{#if !appPath && (result?.s3?.endsWith('.parquet') || result?.s3?.endsWith('.csv'))}
|
|
584
587
|
{#key result.s3}
|
|
585
588
|
<ParqetTableRenderer
|
|
586
589
|
disable_download={result?.disable_download}
|
|
@@ -594,7 +597,7 @@ let seeS3PreviewFileFromList = '';
|
|
|
594
597
|
<img
|
|
595
598
|
alt="preview rendered"
|
|
596
599
|
class="w-auto h-full"
|
|
597
|
-
src={`/api/w/${workspaceId}/job_helpers/load_image_preview?file_key=${result.s3}` +
|
|
600
|
+
src={`/api/w/${workspaceId}/${appPath ? 'apps_u/load_image_preview/' + appPath : 'job_helpers/load_image_preview'}?file_key=${result.s3}` +
|
|
598
601
|
(result.storage ? `&storage=${result.storage}` : '')}
|
|
599
602
|
/>
|
|
600
603
|
</div>
|
|
@@ -602,7 +605,7 @@ let seeS3PreviewFileFromList = '';
|
|
|
602
605
|
<div class="h-96 mt-2 border">
|
|
603
606
|
<PdfViewer
|
|
604
607
|
allowFullscreen
|
|
605
|
-
source={`/api/w/${workspaceId}/job_helpers/load_image_preview?file_key=${result.s3}` +
|
|
608
|
+
source={`/api/w/${workspaceId}/${appPath ? 'apps_u/load_image_preview/' + appPath : 'job_helpers/load_image_preview'}?file_key=${result.s3}` +
|
|
606
609
|
(result.storage ? `&storage=${result.storage}` : '')}
|
|
607
610
|
/>
|
|
608
611
|
</div>
|
|
@@ -3,6 +3,7 @@ import Menu from './common/menu/MenuV2.svelte';
|
|
|
3
3
|
import DropdownV2Inner from './DropdownV2Inner.svelte';
|
|
4
4
|
export let items = [];
|
|
5
5
|
export let justifyEnd = true;
|
|
6
|
+
export let disabled = false;
|
|
6
7
|
async function computeItems() {
|
|
7
8
|
if (typeof items === 'function') {
|
|
8
9
|
return ((await items()) ?? []).filter((item) => !item.hide);
|
|
@@ -13,7 +14,7 @@ async function computeItems() {
|
|
|
13
14
|
}
|
|
14
15
|
</script>
|
|
15
16
|
|
|
16
|
-
<Menu placement="bottom-end" {justifyEnd} on:close on:open>
|
|
17
|
+
<Menu placement="bottom-end" {justifyEnd} on:close on:open {disabled}>
|
|
17
18
|
<div slot="trigger">
|
|
18
19
|
{#if $$slots.buttonReplacement}
|
|
19
20
|
<slot name="buttonReplacement" />
|
|
@@ -197,7 +197,7 @@ let editor = undefined;
|
|
|
197
197
|
label="JSON View"
|
|
198
198
|
size="xs"
|
|
199
199
|
options={{
|
|
200
|
-
right: 'JSON
|
|
200
|
+
right: 'JSON editor',
|
|
201
201
|
rightTooltip:
|
|
202
202
|
'Arguments can be edited either using the wizard, or by editing their JSON Schema.'
|
|
203
203
|
}}
|
|
@@ -522,7 +522,7 @@ let editor = undefined;
|
|
|
522
522
|
startIcon={{ icon: Plus }}
|
|
523
523
|
on:click={() => variableEditor?.initNew?.()}
|
|
524
524
|
>
|
|
525
|
-
New
|
|
525
|
+
New variable
|
|
526
526
|
</Button>
|
|
527
527
|
</div>
|
|
528
528
|
</ItemPicker>
|