windmill-components 1.394.8 → 1.405.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package/assets/app.css +20 -0
- package/package/ata/edgeCases.d.ts +0 -1
- package/package/ata/edgeCases.js +2 -8
- package/package/ata/index.js +4 -3
- package/package/common.d.ts +1 -1
- package/package/common.js +2 -2
- package/package/components/ApiConnectForm.svelte +33 -7
- package/package/components/AppConnectLightweightResourcePicker.svelte +66 -0
- package/package/components/AppConnectLightweightResourcePicker.svelte.d.ts +21 -0
- package/package/components/ArgInput.svelte +10 -4
- package/package/components/ArgInput.svelte.d.ts +1 -0
- package/package/components/CenteredModal.svelte +4 -1
- package/package/components/CenteredModal.svelte.d.ts +1 -0
- package/package/components/CustomPopover.svelte +1 -1
- package/package/components/DateInput.svelte +2 -0
- package/package/components/DateInput.svelte.d.ts +1 -0
- package/package/components/DefaultScripts.svelte +8 -3
- package/package/components/DefaultScripts.svelte.d.ts +5 -1
- package/package/components/DefaultScriptsInner.svelte +16 -7
- package/package/components/DefaultScriptsInner.svelte.d.ts +3 -1
- package/package/components/Dev.svelte +68 -11
- package/package/components/DisplayResult.svelte +1 -1
- package/package/components/DropdownV2.svelte.d.ts +3 -3
- package/package/components/DropdownV2Inner.svelte.d.ts +3 -3
- package/package/components/EditableSchemaForm.svelte +1 -0
- package/package/components/Editor.svelte +3 -2
- package/package/components/Editor.svelte.d.ts +1 -1
- package/package/components/ExecutionDuration.svelte +44 -0
- package/package/components/ExecutionDuration.svelte.d.ts +24 -0
- package/package/components/FlowBuilder.svelte +22 -12
- package/package/components/FlowBuilder.svelte.d.ts +1 -0
- package/package/components/FlowGraphViewer.svelte +9 -2
- package/package/components/FlowGraphViewerStep.svelte +23 -10
- package/package/components/FlowInputViewer.svelte +25 -0
- package/package/components/FlowInputViewer.svelte.d.ts +19 -0
- package/package/components/FlowJobResult.svelte +8 -2
- package/package/components/FlowJobResult.svelte.d.ts +1 -0
- package/package/components/FlowMetadata.svelte +2 -2
- package/package/components/FlowStatusViewer.svelte +3 -1
- package/package/components/FlowStatusViewer.svelte.d.ts +1 -0
- package/package/components/FlowStatusViewerInner.svelte +21 -5
- package/package/components/FlowTimeline.svelte +3 -3
- package/package/components/FlowViewer.svelte +2 -21
- package/package/components/HighlightCode.svelte +3 -0
- package/package/components/IconedResourceType.svelte +17 -10
- package/package/components/IconedResourceType.svelte.d.ts +2 -0
- package/package/components/IdEditorInput.svelte +0 -1
- package/package/components/InstanceSettings.svelte +247 -129
- package/package/components/InstanceSettings.svelte.d.ts +2 -0
- package/package/components/JobArgs.svelte +3 -1
- package/package/components/LightweightArgInput.svelte +35 -10
- package/package/components/LightweightArgInput.svelte.d.ts +1 -0
- package/package/components/LightweightObjectResourceInput.svelte +2 -0
- package/package/components/LightweightObjectResourceInput.svelte.d.ts +1 -0
- package/package/components/LightweightResourcePicker.svelte +34 -30
- package/package/components/LightweightSchemaForm.svelte +2 -0
- package/package/components/LightweightSchemaForm.svelte.d.ts +1 -0
- package/package/components/LogViewer.svelte +4 -3
- package/package/components/LogViewer.svelte.d.ts +1 -0
- package/package/components/Login.svelte +10 -5
- package/package/components/Login.svelte.d.ts +1 -0
- package/package/components/ManualPopover.svelte +1 -1
- package/package/components/ModulePreview.svelte +21 -2
- package/package/components/ModuleStatus.svelte +3 -0
- package/package/components/ModuleStatus.svelte.d.ts +1 -0
- package/package/components/OAuthSetting.svelte +40 -15
- package/package/components/ObjectResourceInput.svelte +5 -2
- package/package/components/ObjectResourceInput.svelte.d.ts +2 -0
- package/package/components/ObjectStoreConfigSettings.svelte +78 -76
- package/package/components/ParqetCsvTableRenderer.svelte +25 -3
- package/package/components/Password.svelte.d.ts +1 -1
- package/package/components/Path.svelte +74 -54
- package/package/components/Path.svelte.d.ts +2 -1
- package/package/components/Popover.svelte +1 -1
- package/package/components/Portal.svelte +7 -8
- package/package/components/Portal.svelte.d.ts +3 -7
- package/package/components/QueueMetricsDrawer.svelte +368 -3
- package/package/components/QueueMetricsDrawer.svelte.d.ts +2 -0
- package/package/components/ResourceEditor.svelte +38 -10
- package/package/components/ResourcePicker.svelte +14 -9
- package/package/components/ResourcePicker.svelte.d.ts +1 -0
- package/package/components/ResultJobLoader.svelte +6 -3
- package/package/components/ResultJobLoader.svelte.d.ts +1 -1
- package/package/components/RunForm.svelte +1 -1
- package/package/components/SavedInputs.svelte +2 -2
- package/package/components/ScheduleEditorInner.svelte +2 -2
- package/package/components/SchemaForm.svelte +6 -1
- package/package/components/ScriptBuilder.svelte +12 -5
- package/package/components/ScriptEditor.svelte +33 -3
- package/package/components/ScriptEditor.svelte.d.ts +1 -1
- package/package/components/ScriptVersionHistory.svelte +54 -59
- package/package/components/Scrollable.svelte +47 -0
- package/package/components/Scrollable.svelte.d.ts +21 -0
- package/package/components/ShareModal.svelte.d.ts +2 -2
- package/package/components/SuperadminSettings.svelte +5 -7
- package/package/components/TestConnection.svelte +1 -0
- package/package/components/TestJobLoader.svelte +46 -5
- package/package/components/TestJobLoader.svelte.d.ts +2 -1
- package/package/components/TimeAgo.svelte +5 -6
- package/package/components/TimeAgo.svelte.d.ts +1 -1
- package/package/components/ToggleHubWorkspaceQuick.svelte +14 -0
- package/package/components/ToggleHubWorkspaceQuick.svelte.d.ts +16 -0
- package/package/components/WorkspaceGroup.svelte +3 -2
- package/package/components/apps/components/buttons/AppButton.svelte +1 -1
- package/package/components/apps/components/display/dbtable/AppDbExplorer.svelte +1 -1
- package/package/components/apps/components/helpers/DebouncedInput.svelte +9 -1
- package/package/components/apps/components/inputs/AppMultiSelect.svelte +1 -1
- package/package/components/apps/components/inputs/AppMultiSelectV2.svelte +1 -1
- package/package/components/apps/components/inputs/AppSelect.svelte +1 -1
- package/package/components/apps/components/layout/AppDrawer.svelte +1 -1
- package/package/components/apps/components/layout/AppModal.svelte +1 -1
- package/package/components/apps/editor/AppEditor.svelte +11 -3
- package/package/components/apps/editor/GridEditor.svelte +57 -4
- package/package/components/apps/editor/GridEditor.svelte.d.ts +8 -0
- package/package/components/apps/editor/GridEditorMenu.svelte +1 -1
- package/package/components/apps/editor/SubGridEditor.svelte +82 -3
- package/package/components/apps/editor/SubGridEditor.svelte.d.ts +16 -0
- package/package/components/apps/editor/appUtils.d.ts +19 -2
- package/package/components/apps/editor/appUtils.js +103 -7
- package/package/components/apps/editor/component/Component.svelte +36 -8
- package/package/components/apps/editor/component/Component.svelte.d.ts +3 -1
- package/package/components/apps/editor/component/components.d.ts +79 -79
- package/package/components/apps/editor/contextPanel/components/OutputHeader.svelte +1 -1
- package/package/components/apps/svelte-grid/Grid.svelte +235 -12
- package/package/components/apps/svelte-grid/Grid.svelte.d.ts +7 -7
- package/package/components/apps/svelte-grid/MoveResize.svelte +104 -11
- package/package/components/apps/svelte-grid/MoveResize.svelte.d.ts +7 -0
- package/package/components/apps/svelte-grid/utils/item.d.ts +4 -1
- package/package/components/apps/svelte-grid/utils/item.js +2 -3
- package/package/components/apps/svelte-select/lib/ConditionalPortal.svelte +1 -1
- package/package/components/apps/svelte-select/lib/ConditionalPortalGlobal.svelte +1 -1
- package/package/components/apps/svelte-select/lib/Select.svelte +1 -1
- package/package/components/common/button/ButtonDropdown.svelte +1 -1
- package/package/components/common/drawer/ConditionalPortal.svelte +1 -1
- package/package/components/common/fileUpload/FileUpload.svelte +1 -1
- package/package/components/common/languageIcons/LanguageIcon.svelte +5 -2
- package/package/components/common/menu/Menu.svelte +2 -1
- package/package/components/common/menu/MenuV2.svelte +4 -2
- package/package/components/common/menu/MenuV2.svelte.d.ts +1 -0
- package/package/components/common/modal/AlwaysMountedModal.svelte +1 -1
- package/package/components/common/popup/Popup.svelte +22 -12
- package/package/components/common/popup/Popup.svelte.d.ts +2 -0
- package/package/components/common/popup/PopupV2.svelte +58 -0
- package/package/components/common/popup/PopupV2.svelte.d.ts +27 -0
- package/package/components/copilot/CronGen.svelte +1 -1
- package/package/components/copilot/RegexGen.svelte +4 -4
- package/package/components/copilot/StepGen.svelte +6 -6
- package/package/components/copilot/StepGenQuick.svelte +58 -0
- package/package/components/copilot/StepGenQuick.svelte.d.ts +24 -0
- package/package/components/copilot/flow.d.ts +2 -0
- package/package/components/copilot/flow.js +55 -0
- package/package/components/details/DetailPageDetailPanel.svelte +9 -1
- package/package/components/details/DetailPageDetailPanel.svelte.d.ts +2 -1
- package/package/components/details/DetailPageLayout.svelte +2 -0
- package/package/components/details/DetailPageLayout.svelte.d.ts +3 -0
- package/package/components/details/Menu.svelte +1 -1
- package/package/components/details/utils.d.ts +0 -1
- package/package/components/details/utils.js +1 -12
- package/package/components/flows/CreateActionsApp.svelte +1 -1
- package/package/components/flows/FlowEditor.svelte +4 -2
- package/package/components/flows/FlowEditor.svelte.d.ts +1 -0
- package/package/components/flows/FlowHistory.svelte +10 -195
- package/package/components/flows/FlowHistory.svelte.d.ts +0 -1
- package/package/components/flows/FlowHistoryInner.svelte +200 -0
- package/package/components/flows/FlowHistoryInner.svelte.d.ts +19 -0
- package/package/components/flows/FlowProgressBar.svelte +16 -1
- package/package/components/flows/FlowProgressBar.svelte.d.ts +1 -0
- package/package/components/flows/content/FlowBranchesAllWrapper.svelte +8 -0
- package/package/components/flows/content/FlowBranchesAllWrapper.svelte.d.ts +1 -0
- package/package/components/flows/content/FlowBranchesOneWrapper.svelte +8 -0
- package/package/components/flows/content/FlowBranchesOneWrapper.svelte.d.ts +1 -0
- package/package/components/flows/content/FlowConstants.svelte +1 -1
- package/package/components/flows/content/FlowEditorPanel.svelte +5 -1
- package/package/components/flows/content/FlowEditorPanel.svelte.d.ts +1 -0
- package/package/components/flows/content/FlowInput.svelte +66 -58
- package/package/components/flows/content/FlowInput.svelte.d.ts +1 -0
- package/package/components/flows/content/FlowInputs.svelte +7 -6
- package/package/components/flows/content/FlowInputs.svelte.d.ts +1 -0
- package/package/components/flows/content/FlowInputsFlowQuick.svelte +65 -0
- package/package/components/flows/content/FlowInputsFlowQuick.svelte.d.ts +19 -0
- package/package/components/flows/content/FlowInputsQuick.svelte +419 -0
- package/package/components/flows/content/FlowInputsQuick.svelte.d.ts +33 -0
- package/package/components/flows/content/FlowLoop.svelte +7 -1
- package/package/components/flows/content/FlowModuleComponent.svelte +12 -3
- package/package/components/flows/content/FlowModuleComponent.svelte.d.ts +1 -0
- package/package/components/flows/content/FlowModuleScript.svelte +1 -1
- package/package/components/flows/content/FlowModuleSkip.svelte +69 -0
- package/package/components/flows/content/FlowModuleSkip.svelte.d.ts +20 -0
- package/package/components/flows/content/FlowModuleWrapper.svelte +17 -4
- package/package/components/flows/content/FlowPreprocessorModule.svelte +16 -0
- package/package/components/flows/content/FlowPreprocessorModule.svelte.d.ts +16 -0
- package/package/components/flows/content/FlowWhileLoop.svelte +9 -0
- package/package/components/flows/content/FlowWhileLoop.svelte.d.ts +1 -0
- package/package/components/flows/content/GenAiQuick.svelte +30 -0
- package/package/components/flows/content/GenAiQuick.svelte.d.ts +20 -0
- package/package/components/flows/content/ScriptEditorDrawer.svelte +3 -2
- package/package/components/flows/flowInfers.js +1 -1
- package/package/components/flows/header/FlowPreviewButtons.svelte +1 -0
- package/package/components/flows/idUtils.js +3 -1
- package/package/components/flows/map/FlowCopilotButton.svelte +55 -0
- package/package/components/flows/map/FlowCopilotButton.svelte.d.ts +16 -0
- package/package/components/flows/map/FlowErrorHandlerItem.svelte +77 -47
- package/package/components/flows/map/FlowJobsMenu.svelte +1 -1
- package/package/components/flows/map/FlowModuleSchemaItem.svelte +25 -12
- package/package/components/flows/map/FlowModuleSchemaItem.svelte.d.ts +1 -0
- package/package/components/flows/map/FlowModuleSchemaMap.svelte +64 -20
- package/package/components/flows/map/InsertModuleButton.svelte +161 -138
- package/package/components/flows/map/InsertModuleButton.svelte.d.ts +7 -4
- package/package/components/flows/map/MapItem.svelte +11 -0
- package/package/components/flows/map/MapItem.svelte.d.ts +1 -0
- package/package/components/flows/pickers/FlowScriptPickerQuick.svelte +48 -0
- package/package/components/flows/pickers/FlowScriptPickerQuick.svelte.d.ts +23 -0
- package/package/components/flows/pickers/FlowToplevelNode.svelte +19 -0
- package/package/components/flows/pickers/FlowToplevelNode.svelte.d.ts +19 -0
- package/package/components/flows/pickers/PickHubScriptQuick.svelte +138 -0
- package/package/components/flows/pickers/PickHubScriptQuick.svelte.d.ts +33 -0
- package/package/components/flows/pickers/TopLevelNode.svelte +58 -0
- package/package/components/flows/pickers/TopLevelNode.svelte.d.ts +21 -0
- package/package/components/flows/pickers/WorkspaceScriptPickerQuick.svelte +120 -0
- package/package/components/flows/pickers/WorkspaceScriptPickerQuick.svelte.d.ts +35 -0
- package/package/components/flows/types.d.ts +1 -0
- package/package/components/graph/FlowGraphV2.svelte +93 -58
- package/package/components/graph/FlowGraphV2.svelte.d.ts +2 -1
- package/package/components/graph/graphBuilder.d.ts +2 -1
- package/package/components/graph/graphBuilder.js +345 -280
- package/package/components/graph/model.d.ts +2 -0
- package/package/components/graph/renderers/edges/BaseEdge.svelte +36 -14
- package/package/components/graph/renderers/nodes/BranchOneStart.svelte +1 -1
- package/package/components/graph/renderers/nodes/InputNode.svelte +31 -51
- package/package/components/graph/renderers/nodes/InputNode.svelte.d.ts +6 -1
- package/package/components/graph/renderers/nodes/ModuleNode.svelte +2 -1
- package/package/components/graph/util.d.ts +1 -1
- package/package/components/graph/util.js +7 -2
- package/package/components/home/ListFiltersQuick.svelte +51 -0
- package/package/components/home/ListFiltersQuick.svelte.d.ts +23 -0
- package/package/components/icons/AnsibleIcon.svelte +42 -0
- package/package/components/icons/AnsibleIcon.svelte.d.ts +25 -0
- package/package/components/icons/WindmillIcon.svelte +119 -105
- package/package/components/icons/WindmillIcon2.svelte +141 -0
- package/package/components/icons/WindmillIcon2.svelte.d.ts +20 -0
- package/package/components/icons/index.d.ts +2 -1
- package/package/components/icons/index.js +2 -1
- package/package/components/icons/store.d.ts +4 -0
- package/package/components/icons/store.js +1 -0
- package/package/components/instanceSettings.d.ts +2 -2
- package/package/components/instanceSettings.js +25 -58
- package/package/components/jobs/JobProgressBar.svelte +52 -0
- package/package/components/jobs/JobProgressBar.svelte.d.ts +23 -0
- package/package/components/multiselect/MultiSelectWrapper.svelte +1 -1
- package/package/components/progressBar/ProgressBar.svelte +18 -1
- package/package/components/progressBar/ProgressBar.svelte.d.ts +3 -0
- package/package/components/propertyPicker/ObjectViewer.svelte +1 -1
- package/package/components/runs/JobPreview.svelte +1 -0
- package/package/components/runs/PreprocessedArgsDisplay.svelte +71 -0
- package/package/components/runs/PreprocessedArgsDisplay.svelte.d.ts +16 -0
- package/package/components/runs/RunRow.svelte +3 -7
- package/package/components/schema/AddProperty.svelte +1 -0
- package/package/components/schema/EditableSchemaWrapper.svelte +142 -19
- package/package/components/schema/EditableSchemaWrapper.svelte.d.ts +1 -0
- package/package/components/schema/FlowPropertyEditor.svelte +13 -0
- package/package/components/schema/FlowPropertyEditor.svelte.d.ts +1 -0
- package/package/components/scriptEditor/LogPanel.svelte +1 -0
- package/package/components/scriptEditor/LogPanel.svelte.d.ts +3 -1
- package/package/components/search/GlobalSearchModal.svelte +3 -2
- package/package/components/sidebar/SidebarContent.svelte +69 -8
- package/package/components/sidebar/changelogs.js +10 -0
- package/package/components/triggers/RouteEditor.svelte +19 -0
- package/package/components/triggers/RouteEditor.svelte.d.ts +21 -0
- package/package/components/triggers/RouteEditorInner.svelte +327 -0
- package/package/components/triggers/RouteEditorInner.svelte.d.ts +21 -0
- package/package/components/triggers/RoutesPanel.svelte +74 -0
- package/package/components/triggers/RoutesPanel.svelte.d.ts +17 -0
- package/package/editorUtils.js +2 -0
- package/package/gen/core/OpenAPI.js +1 -1
- package/package/gen/schemas.gen.d.ts +159 -8
- package/package/gen/schemas.gen.js +161 -8
- package/package/gen/services.gen.d.ts +139 -1
- package/package/gen/services.gen.js +282 -1
- package/package/gen/types.gen.d.ts +455 -12
- package/package/hubPaths.json +6 -8
- package/package/infer.d.ts +4 -2
- package/package/infer.js +25 -23
- package/package/inferArgSig.js +8 -2
- package/package/monaco_workers/graphql.worker.bundle.js +45440 -174
- package/package/relative_imports.d.ts +3 -0
- package/package/relative_imports.js +25 -0
- package/package/script_helpers.d.ts +38 -34
- package/package/script_helpers.js +245 -35
- package/package/scripts.d.ts +1 -1
- package/package/scripts.js +5 -1
- package/package/stores.d.ts +1 -0
- package/package/stores.js +1 -0
- package/package/utils.d.ts +1 -0
- package/package/utils.js +4 -0
- package/package.json +38 -7
- package/package/components/flows/map/InsertTriggerButton.svelte +0 -48
- package/package/components/flows/map/InsertTriggerButton.svelte.d.ts +0 -24
- package/package/init_scripts/python_failure_module.d.ts +0 -2
- package/package/init_scripts/python_failure_module.js +0 -8
- package/package/init_scripts/python_init_code.d.ts +0 -2
- package/package/init_scripts/python_init_code.js +0 -40
- package/package/init_scripts/python_init_code_clear.d.ts +0 -2
- package/package/init_scripts/python_init_code_clear.js +0 -5
- package/package/init_scripts/python_init_code_trigger.d.ts +0 -2
- package/package/init_scripts/python_init_code_trigger.js +0 -14
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
<script>export let white = false;
|
|
2
|
+
export let size = '24px';
|
|
3
|
+
export let color = undefined;
|
|
4
|
+
export let spin = undefined;
|
|
5
|
+
function hslToHex(h, s, l) {
|
|
6
|
+
s /= 100;
|
|
7
|
+
l /= 100;
|
|
8
|
+
let c = (1 - Math.abs(2 * l - 1)) * s;
|
|
9
|
+
let x = c * (1 - Math.abs(((h / 60) % 2) - 1));
|
|
10
|
+
let m = l - c / 2;
|
|
11
|
+
let r = 0;
|
|
12
|
+
let g = 0;
|
|
13
|
+
let b = 0;
|
|
14
|
+
if (0 <= h && h < 60) {
|
|
15
|
+
r = c;
|
|
16
|
+
g = x;
|
|
17
|
+
b = 0;
|
|
18
|
+
}
|
|
19
|
+
else if (60 <= h && h < 120) {
|
|
20
|
+
r = x;
|
|
21
|
+
g = c;
|
|
22
|
+
b = 0;
|
|
23
|
+
}
|
|
24
|
+
else if (120 <= h && h < 180) {
|
|
25
|
+
r = 0;
|
|
26
|
+
g = c;
|
|
27
|
+
b = x;
|
|
28
|
+
}
|
|
29
|
+
else if (180 <= h && h < 240) {
|
|
30
|
+
r = 0;
|
|
31
|
+
g = x;
|
|
32
|
+
b = c;
|
|
33
|
+
}
|
|
34
|
+
else if (240 <= h && h < 300) {
|
|
35
|
+
r = x;
|
|
36
|
+
g = 0;
|
|
37
|
+
b = c;
|
|
38
|
+
}
|
|
39
|
+
else if (300 <= h && h < 360) {
|
|
40
|
+
r = c;
|
|
41
|
+
g = 0;
|
|
42
|
+
b = x;
|
|
43
|
+
}
|
|
44
|
+
let rs = Math.round((r + m) * 255)
|
|
45
|
+
.toString(16)
|
|
46
|
+
.padStart(2, '0');
|
|
47
|
+
let gs = Math.round((g + m) * 255)
|
|
48
|
+
.toString(16)
|
|
49
|
+
.padStart(2, '0');
|
|
50
|
+
let bs = Math.round((b + m) * 255)
|
|
51
|
+
.toString(16)
|
|
52
|
+
.padStart(2, '0');
|
|
53
|
+
return `#${rs}${gs}${bs}`;
|
|
54
|
+
}
|
|
55
|
+
function hexToHsl(hex) {
|
|
56
|
+
let r = parseInt(hex.slice(1, 3), 16) / 255;
|
|
57
|
+
let g = parseInt(hex.slice(3, 5), 16) / 255;
|
|
58
|
+
let b = parseInt(hex.slice(5, 7), 16) / 255;
|
|
59
|
+
const max = Math.max(r, g, b), min = Math.min(r, g, b);
|
|
60
|
+
let h, s, l = (max + min) / 2;
|
|
61
|
+
if (max === min) {
|
|
62
|
+
h = s = 0; // Achromatic
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
const d = max - min;
|
|
66
|
+
s = l > 0.5 ? d / (2 - max - min) : d / (max + min);
|
|
67
|
+
switch (max) {
|
|
68
|
+
case r:
|
|
69
|
+
h = (g - b) / d + (g < b ? 6 : 0);
|
|
70
|
+
break;
|
|
71
|
+
case g:
|
|
72
|
+
h = (b - r) / d + 2;
|
|
73
|
+
break;
|
|
74
|
+
case b:
|
|
75
|
+
h = (r - g) / d + 4;
|
|
76
|
+
break;
|
|
77
|
+
}
|
|
78
|
+
h /= 6;
|
|
79
|
+
}
|
|
80
|
+
return [h * 360, s * 100, l * 100];
|
|
81
|
+
}
|
|
82
|
+
function reduceSaturation(hex, reductionPercent) {
|
|
83
|
+
// Convert HEX to HSL
|
|
84
|
+
// Convert the hex to HSL
|
|
85
|
+
let [h, s, l] = hexToHsl(hex);
|
|
86
|
+
// Reduce the saturation by the specified percentage
|
|
87
|
+
l = Math.max(0, l - reductionPercent);
|
|
88
|
+
// Convert back to hex
|
|
89
|
+
return hslToHex(h, s, l);
|
|
90
|
+
}
|
|
91
|
+
let lessSaturatedColor;
|
|
92
|
+
$: color ? (lessSaturatedColor = reduceSaturation(color, -16)) : (lessSaturatedColor = undefined);
|
|
93
|
+
</script>
|
|
94
|
+
|
|
95
|
+
<!-- SVG Icon with customizable color -->
|
|
96
|
+
<svg
|
|
97
|
+
class={$$props.class}
|
|
98
|
+
class:animate-[spin_2s_linear_infinite]={spin === 'veryfast'}
|
|
99
|
+
class:animate-[spin_5s_linear_infinite]={spin === 'fast'}
|
|
100
|
+
class:animate-[spin_15s_linear_infinite]={spin === 'medium'}
|
|
101
|
+
class:animate-[spin_50s_linear_infinite]={spin === 'slow'}
|
|
102
|
+
version="1.1"
|
|
103
|
+
id="Calque_1"
|
|
104
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
105
|
+
xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
106
|
+
x="0px"
|
|
107
|
+
y="0px"
|
|
108
|
+
width={size}
|
|
109
|
+
height={size}
|
|
110
|
+
viewBox="0 0 256 256"
|
|
111
|
+
style="enable-background:new 0 0 256 256;"
|
|
112
|
+
xml:space="preserve"
|
|
113
|
+
>
|
|
114
|
+
<g>
|
|
115
|
+
<!-- Use color or fallback to defaults (white or blue) -->
|
|
116
|
+
<polygon
|
|
117
|
+
fill={lessSaturatedColor || (white ? '#cccccc' : '#bcd4fc')}
|
|
118
|
+
points="134.78,14.22 114.31,48.21 101.33,69.75 158.22,69.75 177.97,36.95 191.67,14.22"
|
|
119
|
+
/>
|
|
120
|
+
<polygon
|
|
121
|
+
fill={color || (white ? '#ffffff' : '#3b82f6')}
|
|
122
|
+
points="227.55,69.75 186.61,69.75 101.33,69.75 129.78,119.02 158.16,119.02 228.61,119.02 256,119.02"
|
|
123
|
+
/>
|
|
124
|
+
<polygon
|
|
125
|
+
fill={color || (white ? '#ffffff' : '#3b82f6')}
|
|
126
|
+
points="136.93,132.47 116.46,167.93 73.82,241.78 130.71,241.78 144.9,217.2 180.13,156.18 193.82,132.46"
|
|
127
|
+
/>
|
|
128
|
+
<polygon
|
|
129
|
+
fill={color || (white ? '#ffffff' : '#3b82f6')}
|
|
130
|
+
points="121.7,131.95 101.23,96.49 58.59,22.63 30.15,71.91 44.34,96.49 79.57,157.5 93.26,181.22"
|
|
131
|
+
/>
|
|
132
|
+
<polygon
|
|
133
|
+
fill={lessSaturatedColor || (white ? '#cccccc' : '#bcd4fc')}
|
|
134
|
+
points="64.81,131.95 25.15,131.21 0,130.74 28.44,180.01 66.73,180.72 93.26,181.21"
|
|
135
|
+
/>
|
|
136
|
+
<polygon
|
|
137
|
+
fill={lessSaturatedColor || (white ? '#cccccc' : '#bcd4fc')}
|
|
138
|
+
points="165.38,181.74 184.58,216.46 196.75,238.47 225.19,189.2 206.66,155.69 193.83,132.46"
|
|
139
|
+
/>
|
|
140
|
+
</g>
|
|
141
|
+
</svg>
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { SvelteComponent } from "svelte";
|
|
2
|
+
declare const __propDef: {
|
|
3
|
+
props: {
|
|
4
|
+
[x: string]: any;
|
|
5
|
+
white?: boolean | undefined;
|
|
6
|
+
size?: string | undefined;
|
|
7
|
+
color?: string | undefined;
|
|
8
|
+
spin?: 'slow' | 'medium' | 'fast' | 'veryfast' | undefined;
|
|
9
|
+
};
|
|
10
|
+
events: {
|
|
11
|
+
[evt: string]: CustomEvent<any>;
|
|
12
|
+
};
|
|
13
|
+
slots: {};
|
|
14
|
+
};
|
|
15
|
+
export type WindmillIcon2Props = typeof __propDef.props;
|
|
16
|
+
export type WindmillIcon2Events = typeof __propDef.events;
|
|
17
|
+
export type WindmillIcon2Slots = typeof __propDef.slots;
|
|
18
|
+
export default class WindmillIcon2 extends SvelteComponent<WindmillIcon2Props, WindmillIcon2Events, WindmillIcon2Slots> {
|
|
19
|
+
}
|
|
20
|
+
export {};
|
|
@@ -18,6 +18,7 @@ import S3Icon from './S3Icon.svelte';
|
|
|
18
18
|
import Slack from './Slack.svelte';
|
|
19
19
|
import TogglIcon from './TogglIcon.svelte';
|
|
20
20
|
import WindmillIcon from './WindmillIcon.svelte';
|
|
21
|
+
import WindmillIcon2 from './WindmillIcon2.svelte';
|
|
21
22
|
import MailchimpIcon from './MailchimpIcon.svelte';
|
|
22
23
|
import SendgridIcon from './SendgridIcon.svelte';
|
|
23
24
|
import SendflakeIcon from './SendflakeIcon.svelte';
|
|
@@ -188,4 +189,4 @@ export declare const APP_TO_ICON_COMPONENT: {
|
|
|
188
189
|
readonly keycloak: typeof KeycloakIcon;
|
|
189
190
|
readonly zitadel: typeof ZitadelIcon;
|
|
190
191
|
};
|
|
191
|
-
export { AirtableIcon, DbIcon, DiscordIcon, GcalIcon, GCloudIcon, GdriveIcon, GithubIcon, GitlabIcon, GmailIcon, GSheetsIcon, HttpIcon, Mail, MastodonIcon, MatrixIcon, Mysql, PostgresIcon, S3Icon, Slack, TogglIcon, WindmillIcon, MailchimpIcon, SendgridIcon, LinkedinIcon, HubspotIcon, TelegramIcon, StripeIcon, DatadogIcon, FunkwhaleIcon, GdocsIcon, FaunadbIcon, ClickhouseIcon, OpenaiIcon, AwsIcon, BcryptIcon, GoogleIcon, HackernewsIcon, MongodbIcon, RedditIcon, SupabaseIcon, WebdavIcon, ZammadIcon, NextcloudIcon, SendflakeIcon, SurrealdbIcon, ActivitypubIcon, AwsEcrIcon, CalcomIcon, ClickupIcon, CloudflareIcon, FirebaseIcon, GoogleFormsIcon, JiraIcon, NotionIcon, PineconeIcon, RssIcon, ShopifyIcon, TypeformIcon, BigQueryIcon, GraphqlIcon, NocoDbIcon, AzureIcon, MicrosoftIcon, OktaIcon, AuthentikIcon, AutheliaIcon, KanidmIcon, AsanaIcon, BitbucketIcon, DynatraceIcon, EdgeDbIcon, GitIcon, ZendeskIcon, TwilioIcon, TrelloIcon, ResendIcon, PushoverIcon, QuickbooksIcon, MsTeamsIcon, MailgunIcon, IpinfoIcon, GoogleCloudIcon, CaCertificate, CurrencyApiIcon, VismaIcon, JumpCloudIcon, KeycloakIcon, ZitadelIcon };
|
|
192
|
+
export { AirtableIcon, DbIcon, DiscordIcon, GcalIcon, GCloudIcon, GdriveIcon, GithubIcon, GitlabIcon, GmailIcon, GSheetsIcon, HttpIcon, Mail, MastodonIcon, MatrixIcon, Mysql, PostgresIcon, S3Icon, Slack, TogglIcon, WindmillIcon, WindmillIcon2, MailchimpIcon, SendgridIcon, LinkedinIcon, HubspotIcon, TelegramIcon, StripeIcon, DatadogIcon, FunkwhaleIcon, GdocsIcon, FaunadbIcon, ClickhouseIcon, OpenaiIcon, AwsIcon, BcryptIcon, GoogleIcon, HackernewsIcon, MongodbIcon, RedditIcon, SupabaseIcon, WebdavIcon, ZammadIcon, NextcloudIcon, SendflakeIcon, SurrealdbIcon, ActivitypubIcon, AwsEcrIcon, CalcomIcon, ClickupIcon, CloudflareIcon, FirebaseIcon, GoogleFormsIcon, JiraIcon, NotionIcon, PineconeIcon, RssIcon, ShopifyIcon, TypeformIcon, BigQueryIcon, GraphqlIcon, NocoDbIcon, AzureIcon, MicrosoftIcon, OktaIcon, AuthentikIcon, AutheliaIcon, KanidmIcon, AsanaIcon, BitbucketIcon, DynatraceIcon, EdgeDbIcon, GitIcon, ZendeskIcon, TwilioIcon, TrelloIcon, ResendIcon, PushoverIcon, QuickbooksIcon, MsTeamsIcon, MailgunIcon, IpinfoIcon, GoogleCloudIcon, CaCertificate, CurrencyApiIcon, VismaIcon, JumpCloudIcon, KeycloakIcon, ZitadelIcon };
|
|
@@ -18,6 +18,7 @@ import S3Icon from './S3Icon.svelte';
|
|
|
18
18
|
import Slack from './Slack.svelte';
|
|
19
19
|
import TogglIcon from './TogglIcon.svelte';
|
|
20
20
|
import WindmillIcon from './WindmillIcon.svelte';
|
|
21
|
+
import WindmillIcon2 from './WindmillIcon2.svelte';
|
|
21
22
|
import MailchimpIcon from './MailchimpIcon.svelte';
|
|
22
23
|
import SendgridIcon from './SendgridIcon.svelte';
|
|
23
24
|
import SendflakeIcon from './SendflakeIcon.svelte';
|
|
@@ -188,4 +189,4 @@ export const APP_TO_ICON_COMPONENT = {
|
|
|
188
189
|
keycloak: KeycloakIcon,
|
|
189
190
|
zitadel: ZitadelIcon
|
|
190
191
|
};
|
|
191
|
-
export { AirtableIcon, DbIcon, DiscordIcon, GcalIcon, GCloudIcon, GdriveIcon, GithubIcon, GitlabIcon, GmailIcon, GSheetsIcon, HttpIcon, Mail, MastodonIcon, MatrixIcon, Mysql, PostgresIcon, S3Icon, Slack, TogglIcon, WindmillIcon, MailchimpIcon, SendgridIcon, LinkedinIcon, HubspotIcon, TelegramIcon, StripeIcon, DatadogIcon, FunkwhaleIcon, GdocsIcon, FaunadbIcon, ClickhouseIcon, OpenaiIcon, AwsIcon, BcryptIcon, GoogleIcon, HackernewsIcon, MongodbIcon, RedditIcon, SupabaseIcon, WebdavIcon, ZammadIcon, NextcloudIcon, SendflakeIcon, SurrealdbIcon, ActivitypubIcon, AwsEcrIcon, CalcomIcon, ClickupIcon, CloudflareIcon, FirebaseIcon, GoogleFormsIcon, JiraIcon, NotionIcon, PineconeIcon, RssIcon, ShopifyIcon, TypeformIcon, BigQueryIcon, GraphqlIcon, NocoDbIcon, AzureIcon, MicrosoftIcon, OktaIcon, AuthentikIcon, AutheliaIcon, KanidmIcon, AsanaIcon, BitbucketIcon, DynatraceIcon, EdgeDbIcon, GitIcon, ZendeskIcon, TwilioIcon, TrelloIcon, ResendIcon, PushoverIcon, QuickbooksIcon, MsTeamsIcon, MailgunIcon, IpinfoIcon, GoogleCloudIcon, CaCertificate, CurrencyApiIcon, VismaIcon, JumpCloudIcon, KeycloakIcon, ZitadelIcon };
|
|
192
|
+
export { AirtableIcon, DbIcon, DiscordIcon, GcalIcon, GCloudIcon, GdriveIcon, GithubIcon, GitlabIcon, GmailIcon, GSheetsIcon, HttpIcon, Mail, MastodonIcon, MatrixIcon, Mysql, PostgresIcon, S3Icon, Slack, TogglIcon, WindmillIcon, WindmillIcon2, MailchimpIcon, SendgridIcon, LinkedinIcon, HubspotIcon, TelegramIcon, StripeIcon, DatadogIcon, FunkwhaleIcon, GdocsIcon, FaunadbIcon, ClickhouseIcon, OpenaiIcon, AwsIcon, BcryptIcon, GoogleIcon, HackernewsIcon, MongodbIcon, RedditIcon, SupabaseIcon, WebdavIcon, ZammadIcon, NextcloudIcon, SendflakeIcon, SurrealdbIcon, ActivitypubIcon, AwsEcrIcon, CalcomIcon, ClickupIcon, CloudflareIcon, FirebaseIcon, GoogleFormsIcon, JiraIcon, NotionIcon, PineconeIcon, RssIcon, ShopifyIcon, TypeformIcon, BigQueryIcon, GraphqlIcon, NocoDbIcon, AzureIcon, MicrosoftIcon, OktaIcon, AuthentikIcon, AutheliaIcon, KanidmIcon, AsanaIcon, BitbucketIcon, DynatraceIcon, EdgeDbIcon, GitIcon, ZendeskIcon, TwilioIcon, TrelloIcon, ResendIcon, PushoverIcon, QuickbooksIcon, MsTeamsIcon, MailgunIcon, IpinfoIcon, GoogleCloudIcon, CaCertificate, CurrencyApiIcon, VismaIcon, JumpCloudIcon, KeycloakIcon, ZitadelIcon };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export let customIcon = undefined;
|
|
@@ -6,12 +6,12 @@ export interface Setting {
|
|
|
6
6
|
ee_only?: string;
|
|
7
7
|
tooltip?: string;
|
|
8
8
|
key: string;
|
|
9
|
-
fieldType: 'text' | 'number' | 'boolean' | 'password' | 'select' | 'textarea' | 'seconds' | 'email' | 'license_key' | 'object_store_config' | 'critical_error_channels' | 'slack_connect';
|
|
9
|
+
fieldType: 'text' | 'number' | 'boolean' | 'password' | 'select' | 'textarea' | 'seconds' | 'email' | 'license_key' | 'object_store_config' | 'critical_error_channels' | 'slack_connect' | 'smtp_connect';
|
|
10
10
|
storage: SettingStorage;
|
|
11
11
|
isValid?: (value: any) => boolean;
|
|
12
12
|
error?: string;
|
|
13
13
|
defaultValue?: () => any;
|
|
14
14
|
}
|
|
15
|
-
export type SettingStorage = 'setting'
|
|
15
|
+
export type SettingStorage = 'setting';
|
|
16
16
|
export declare const settings: Record<string, Setting[]>;
|
|
17
17
|
export declare const settingsKeys: string[];
|
|
@@ -2,7 +2,7 @@ export const settings = {
|
|
|
2
2
|
Core: [
|
|
3
3
|
{
|
|
4
4
|
label: 'Base url',
|
|
5
|
-
description: 'Public base url of the instance',
|
|
5
|
+
description: 'Public base url of the instance. <a href="https://www.windmill.dev/docs/advanced/instance_settings#global-users">Learn more</a>',
|
|
6
6
|
key: 'base_url',
|
|
7
7
|
fieldType: 'text',
|
|
8
8
|
placeholder: 'https://windmill.com',
|
|
@@ -17,7 +17,7 @@ export const settings = {
|
|
|
17
17
|
},
|
|
18
18
|
{
|
|
19
19
|
label: 'Email domain',
|
|
20
|
-
description: 'Domain to display in webhooks for email triggers (should match the MX record)',
|
|
20
|
+
description: 'Domain to display in webhooks for <a href="https://www.windmill.dev/docs/advanced/email_triggers">email triggers</a> (should match the MX record)',
|
|
21
21
|
key: 'email_domain',
|
|
22
22
|
fieldType: 'text',
|
|
23
23
|
storage: 'setting',
|
|
@@ -35,22 +35,23 @@ export const settings = {
|
|
|
35
35
|
{
|
|
36
36
|
label: 'Default timeout',
|
|
37
37
|
key: 'job_default_timeout',
|
|
38
|
-
description: 'Default timeout for individual jobs',
|
|
38
|
+
description: 'Default timeout for individual jobs. <a href="https://www.windmill.dev/docs/core_concepts/jobs#retention-policy">Learn more</a>',
|
|
39
39
|
fieldType: 'seconds',
|
|
40
40
|
storage: 'setting',
|
|
41
41
|
cloudonly: false
|
|
42
42
|
},
|
|
43
43
|
{
|
|
44
44
|
label: 'Max timeout for sync endpoints',
|
|
45
|
+
description: 'Maximum amount of time (measured in seconds) that a <a href="https://www.windmill.dev/docs/core_concepts/webhooks">sync endpoint</a> is allowed to run before it is forcibly stopped or timed out.',
|
|
45
46
|
key: 'timeout_wait_result',
|
|
46
47
|
cloudonly: true,
|
|
47
48
|
fieldType: 'seconds',
|
|
48
49
|
placeholder: '60',
|
|
49
|
-
storage: '
|
|
50
|
+
storage: 'setting'
|
|
50
51
|
},
|
|
51
52
|
{
|
|
52
53
|
label: 'License key',
|
|
53
|
-
description: 'License key required to use the EE (switch image for windmill-ee)',
|
|
54
|
+
description: 'License key required to use the EE (switch image for windmill-ee). <a href="https://www.windmill.dev/docs/advanced/instance_settings#license-key">Learn more</a>',
|
|
54
55
|
key: 'license_key',
|
|
55
56
|
fieldType: 'license_key',
|
|
56
57
|
placeholder: 'only needed to prepare upgrade to EE',
|
|
@@ -58,16 +59,15 @@ export const settings = {
|
|
|
58
59
|
},
|
|
59
60
|
{
|
|
60
61
|
label: 'Non-prod instance',
|
|
61
|
-
description: 'Whether we should consider the reported usage of this instance as non-prod',
|
|
62
|
+
description: 'Whether we should consider the reported usage of this instance as non-prod. <a href="https://www.windmill.dev/docs/advanced/instance_settings#non-prod-instance">Learn more</a>',
|
|
62
63
|
key: 'dev_instance',
|
|
63
64
|
fieldType: 'boolean',
|
|
64
|
-
storage: 'setting'
|
|
65
|
-
ee_only: 'This is only relevant for EE'
|
|
65
|
+
storage: 'setting'
|
|
66
66
|
},
|
|
67
67
|
{
|
|
68
68
|
label: 'Retention period in secs',
|
|
69
69
|
key: 'retention_period_secs',
|
|
70
|
-
description: 'How long to keep the jobs data in the database (max 30 days on CE)',
|
|
70
|
+
description: 'How long to keep the jobs data in the database (max 30 days on CE). <a href="https://www.windmill.dev/docs/advanced/instance_settings#retention-period-in-secs">Learn more</a>',
|
|
71
71
|
fieldType: 'seconds',
|
|
72
72
|
placeholder: '30',
|
|
73
73
|
storage: 'setting',
|
|
@@ -76,15 +76,15 @@ export const settings = {
|
|
|
76
76
|
},
|
|
77
77
|
{
|
|
78
78
|
label: 'Expose metrics',
|
|
79
|
-
description: 'Expose Prometheus metrics for workers and servers on port 8001 at /metrics',
|
|
79
|
+
description: 'Expose Prometheus metrics for workers and servers on port 8001 at /metrics. <a href="https://www.windmill.dev/docs/advanced/instance_settings#expose-metrics">Learn more</a>',
|
|
80
80
|
key: 'expose_metrics',
|
|
81
81
|
fieldType: 'boolean',
|
|
82
82
|
storage: 'setting',
|
|
83
83
|
ee_only: ''
|
|
84
84
|
},
|
|
85
85
|
{
|
|
86
|
-
label: '
|
|
87
|
-
description: '
|
|
86
|
+
label: 'Instance object storage',
|
|
87
|
+
description: ' S3/Azure bucket to store large logs and global cache for Python and Go. <a href="https://www.windmill.dev/docs/core_concepts/object_storage_in_windmill#instance-object-storage">Learn more</a>',
|
|
88
88
|
key: 'object_store_cache_config',
|
|
89
89
|
fieldType: 'object_store_config',
|
|
90
90
|
storage: 'setting',
|
|
@@ -92,7 +92,7 @@ export const settings = {
|
|
|
92
92
|
},
|
|
93
93
|
{
|
|
94
94
|
label: 'Critical alert channels',
|
|
95
|
-
description: 'Channels to send critical alerts to. SMTP must be configured for the email channel. A Slack workspace must be connected to the instance for the Slack channel.',
|
|
95
|
+
description: 'Channels to send critical alerts to. SMTP must be configured for the email channel. A Slack workspace must be connected to the instance for the Slack channel. <a href="https://www.windmill.dev/docs/core_concepts/critical_alert_channels">Learn more</a>',
|
|
96
96
|
key: 'critical_error_channels',
|
|
97
97
|
fieldType: 'critical_error_channels',
|
|
98
98
|
storage: 'setting',
|
|
@@ -100,7 +100,7 @@ export const settings = {
|
|
|
100
100
|
},
|
|
101
101
|
{
|
|
102
102
|
label: 'Azure OpenAI base path',
|
|
103
|
-
description: 'All Windmill AI features will run on the specified deployed model. Format: https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}',
|
|
103
|
+
description: 'All Windmill AI features will run on the specified deployed model. Format: https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}. <a href="https://www.windmill.dev/docs/core_concepts/ai_generation#azure-openai-advanced-models">Learn more</a>',
|
|
104
104
|
key: 'openai_azure_base_path',
|
|
105
105
|
fieldType: 'text',
|
|
106
106
|
storage: 'setting',
|
|
@@ -108,7 +108,7 @@ export const settings = {
|
|
|
108
108
|
},
|
|
109
109
|
{
|
|
110
110
|
label: 'Private Hub base url',
|
|
111
|
-
description: 'Base url of your private Hub instance, without trailing slash',
|
|
111
|
+
description: 'Base url of your private Hub instance, without trailing slash. <a href="https://www.windmill.dev/docs/core_concepts/private_hub">Learn more</a>',
|
|
112
112
|
placeholder: 'https://hub.company.com',
|
|
113
113
|
key: 'hub_base_url',
|
|
114
114
|
fieldType: 'text',
|
|
@@ -120,7 +120,7 @@ export const settings = {
|
|
|
120
120
|
Registries: [
|
|
121
121
|
{
|
|
122
122
|
label: 'Pip Index Url',
|
|
123
|
-
description: 'Add private
|
|
123
|
+
description: 'Add private Pip registry',
|
|
124
124
|
key: 'pip_index_url',
|
|
125
125
|
fieldType: 'text',
|
|
126
126
|
placeholder: 'https://username:password@pypi.company.com/simple',
|
|
@@ -129,7 +129,7 @@ export const settings = {
|
|
|
129
129
|
},
|
|
130
130
|
{
|
|
131
131
|
label: 'Pip Extra Index Url',
|
|
132
|
-
description: 'Add private extra
|
|
132
|
+
description: 'Add private extra Pip registry',
|
|
133
133
|
key: 'pip_extra_index_url',
|
|
134
134
|
fieldType: 'text',
|
|
135
135
|
placeholder: 'https://username:password@pypi.company.com/simple',
|
|
@@ -138,7 +138,7 @@ export const settings = {
|
|
|
138
138
|
},
|
|
139
139
|
{
|
|
140
140
|
label: 'Npm Config Registry',
|
|
141
|
-
description: 'Add private
|
|
141
|
+
description: 'Add private npm registry',
|
|
142
142
|
key: 'npm_config_registry',
|
|
143
143
|
fieldType: 'text',
|
|
144
144
|
placeholder: 'https://registry.npmjs.org/:_authToken=npm_FOOBAR',
|
|
@@ -157,44 +157,11 @@ export const settings = {
|
|
|
157
157
|
],
|
|
158
158
|
SMTP: [
|
|
159
159
|
{
|
|
160
|
-
label: '
|
|
161
|
-
key: '
|
|
162
|
-
fieldType: '
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
},
|
|
166
|
-
{
|
|
167
|
-
label: 'Port',
|
|
168
|
-
key: 'smtp_port',
|
|
169
|
-
fieldType: 'number',
|
|
170
|
-
placeholder: '587',
|
|
171
|
-
storage: 'config'
|
|
172
|
-
},
|
|
173
|
-
{
|
|
174
|
-
label: 'Username',
|
|
175
|
-
key: 'smtp_username',
|
|
176
|
-
fieldType: 'text',
|
|
177
|
-
placeholder: 'ruben@windmill.dev',
|
|
178
|
-
storage: 'config'
|
|
179
|
-
},
|
|
180
|
-
{
|
|
181
|
-
label: 'Password',
|
|
182
|
-
key: 'smtp_password',
|
|
183
|
-
fieldType: 'password',
|
|
184
|
-
storage: 'config'
|
|
185
|
-
},
|
|
186
|
-
{
|
|
187
|
-
label: 'From Address',
|
|
188
|
-
key: 'smtp_from',
|
|
189
|
-
placeholder: 'noreply@windmill.dev',
|
|
190
|
-
fieldType: 'email',
|
|
191
|
-
storage: 'config'
|
|
192
|
-
},
|
|
193
|
-
{
|
|
194
|
-
label: 'Implicit TLS',
|
|
195
|
-
key: 'smtp_tls_implicit',
|
|
196
|
-
fieldType: 'boolean',
|
|
197
|
-
storage: 'config'
|
|
160
|
+
label: 'SMTP',
|
|
161
|
+
key: 'smtp_settings',
|
|
162
|
+
fieldType: 'smtp_connect',
|
|
163
|
+
storage: 'setting',
|
|
164
|
+
ee_only: '',
|
|
198
165
|
}
|
|
199
166
|
],
|
|
200
167
|
Slack: [
|
|
@@ -231,14 +198,14 @@ export const settings = {
|
|
|
231
198
|
label: 'Keep job directories',
|
|
232
199
|
key: 'keep_job_dir',
|
|
233
200
|
fieldType: 'boolean',
|
|
234
|
-
|
|
201
|
+
description: 'Keep Job directories after execution at /tmp/windmill/<worker>/<job_id>',
|
|
235
202
|
storage: 'setting'
|
|
236
203
|
},
|
|
237
204
|
{
|
|
238
205
|
label: 'Expose debug metrics',
|
|
239
206
|
key: 'expose_debug_metrics',
|
|
240
207
|
fieldType: 'boolean',
|
|
241
|
-
|
|
208
|
+
description: 'Expose additional metrics (require metrics to be enabled)',
|
|
242
209
|
storage: 'setting'
|
|
243
210
|
}
|
|
244
211
|
],
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
<script>import {} from '../../gen';
|
|
2
|
+
import ProgressBar from '../progressBar/ProgressBar.svelte';
|
|
3
|
+
export let job = undefined;
|
|
4
|
+
export let compact = false;
|
|
5
|
+
/// Progress of currently running job
|
|
6
|
+
export let scriptProgress = undefined;
|
|
7
|
+
// Removes `Step 1` and replaces it with `Running`
|
|
8
|
+
export let hideStepTitle = false;
|
|
9
|
+
let error = undefined;
|
|
10
|
+
let index = 0;
|
|
11
|
+
let subIndex = 0;
|
|
12
|
+
let subLength = 100;
|
|
13
|
+
let length = 1;
|
|
14
|
+
let nextInProgress = false;
|
|
15
|
+
$: if (job)
|
|
16
|
+
updateJobProgress(job);
|
|
17
|
+
$: subIndex = scriptProgress ?? 0;
|
|
18
|
+
function updateJobProgress(job) {
|
|
19
|
+
if (!job['running'] && !job['success']) {
|
|
20
|
+
error = 0;
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
error = undefined;
|
|
24
|
+
}
|
|
25
|
+
// Anything that is success automatically gets 100% progress
|
|
26
|
+
if (job['success'] && scriptProgress)
|
|
27
|
+
index = 1, subLength = 0, subIndex = 0, scriptProgress = 100;
|
|
28
|
+
}
|
|
29
|
+
let resetP;
|
|
30
|
+
export function reset() {
|
|
31
|
+
resetP?.();
|
|
32
|
+
error = undefined;
|
|
33
|
+
subIndex = 0;
|
|
34
|
+
subLength = 100;
|
|
35
|
+
length = 1;
|
|
36
|
+
index = 0;
|
|
37
|
+
scriptProgress = undefined;
|
|
38
|
+
}
|
|
39
|
+
</script>
|
|
40
|
+
|
|
41
|
+
<ProgressBar
|
|
42
|
+
bind:resetP
|
|
43
|
+
{length}
|
|
44
|
+
{index}
|
|
45
|
+
{nextInProgress}
|
|
46
|
+
{subLength}
|
|
47
|
+
{subIndex}
|
|
48
|
+
{error}
|
|
49
|
+
class={$$props.class}
|
|
50
|
+
bind:compact
|
|
51
|
+
bind:hideStepTitle
|
|
52
|
+
/>
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { SvelteComponent } from "svelte";
|
|
2
|
+
import { type Job } from '../../gen';
|
|
3
|
+
declare const __propDef: {
|
|
4
|
+
props: {
|
|
5
|
+
[x: string]: any;
|
|
6
|
+
job?: Job | undefined;
|
|
7
|
+
compact?: boolean | undefined;
|
|
8
|
+
scriptProgress?: number | undefined;
|
|
9
|
+
hideStepTitle?: boolean | undefined;
|
|
10
|
+
reset?: (() => void) | undefined;
|
|
11
|
+
};
|
|
12
|
+
events: {
|
|
13
|
+
[evt: string]: CustomEvent<any>;
|
|
14
|
+
};
|
|
15
|
+
slots: {};
|
|
16
|
+
};
|
|
17
|
+
export type JobProgressBarProps = typeof __propDef.props;
|
|
18
|
+
export type JobProgressBarEvents = typeof __propDef.events;
|
|
19
|
+
export type JobProgressBarSlots = typeof __propDef.slots;
|
|
20
|
+
export default class JobProgressBar extends SvelteComponent<JobProgressBarProps, JobProgressBarEvents, JobProgressBarSlots> {
|
|
21
|
+
get reset(): () => void;
|
|
22
|
+
}
|
|
23
|
+
export {};
|
|
@@ -71,7 +71,7 @@ let open = false;
|
|
|
71
71
|
</div>
|
|
72
72
|
</MultiSelect>
|
|
73
73
|
</div>
|
|
74
|
-
<Portal>
|
|
74
|
+
<Portal name="multi-select">
|
|
75
75
|
<div use:floatingContent class="z5000" hidden={!open}>
|
|
76
76
|
<!-- svelte-ignore a11y-click-events-have-key-events -->
|
|
77
77
|
<!-- svelte-ignore a11y-no-static-element-interactions -->
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
<script>import { tweened } from 'svelte/motion';
|
|
2
2
|
import { linear } from 'svelte/easing';
|
|
3
|
+
import { twMerge } from 'tailwind-merge';
|
|
3
4
|
function getTween(initialValue = 0, duration = 200) {
|
|
4
5
|
return tweened(initialValue, {
|
|
5
6
|
duration,
|
|
@@ -11,6 +12,13 @@ export let index;
|
|
|
11
12
|
export let subIndex;
|
|
12
13
|
export let subLength;
|
|
13
14
|
export let nextInProgress = false;
|
|
15
|
+
// Used for displaying progress of subjob of flow
|
|
16
|
+
export let subIndexIsPercent = false;
|
|
17
|
+
// Remove padding/margin, border radius and titles
|
|
18
|
+
// Used in individual job test runs
|
|
19
|
+
export let compact = false;
|
|
20
|
+
// Removes `Step 1` and replaces it with `Running`
|
|
21
|
+
export let hideStepTitle = false;
|
|
14
22
|
export let length;
|
|
15
23
|
let duration = 200;
|
|
16
24
|
let percent = getTween(0, duration);
|
|
@@ -31,6 +39,7 @@ $: finished = index == length;
|
|
|
31
39
|
</script>
|
|
32
40
|
|
|
33
41
|
<div class={$$props.class}>
|
|
42
|
+
{#if !compact}
|
|
34
43
|
<div
|
|
35
44
|
class="flex justify-between items-end font-medium mb-1 {error != undefined
|
|
36
45
|
? 'text-red-700 dark:text-red-200'
|
|
@@ -41,12 +50,17 @@ $: finished = index == length;
|
|
|
41
50
|
? 'Error occured'
|
|
42
51
|
: finished
|
|
43
52
|
? 'Done'
|
|
53
|
+
: hideStepTitle
|
|
54
|
+
? `Running`
|
|
55
|
+
: subIndexIsPercent
|
|
56
|
+
? `Step ${index + 1} (${subIndex !== undefined ? `${subIndex}%)` : ''}`
|
|
44
57
|
: `Step ${index + 1}${subIndex !== undefined ? `.${subIndex + 1}` : ''}`}
|
|
45
58
|
</span>
|
|
46
59
|
<span class="text-sm">
|
|
47
60
|
{$percent.toFixed(0)}%
|
|
48
61
|
</span>
|
|
49
62
|
</div>
|
|
63
|
+
{/if}
|
|
50
64
|
<!-- {#each state as step, index}
|
|
51
65
|
{index} {JSON.stringify(step)}
|
|
52
66
|
{/each} -->
|
|
@@ -56,7 +70,10 @@ $: finished = index == length;
|
|
|
56
70
|
{getPercent(index)}
|
|
57
71
|
|
|
|
58
72
|
{/each} -->
|
|
59
|
-
<div class=
|
|
73
|
+
<div class={twMerge(
|
|
74
|
+
"flex w-full bg-gray-200 overflow-hidden",
|
|
75
|
+
(compact) ? "rounded-none h-3" : "rounded-full h-4",
|
|
76
|
+
)}>
|
|
60
77
|
{#each new Array(length) as _, partIndex (partIndex)}
|
|
61
78
|
<div class="h-full relative border-white {partIndex === 0 ? '' : 'border-l'} w-full">
|
|
62
79
|
{#if partIndex == index && nextInProgress}
|
|
@@ -7,6 +7,9 @@ declare const __propDef: {
|
|
|
7
7
|
subIndex: number | undefined;
|
|
8
8
|
subLength: number | undefined;
|
|
9
9
|
nextInProgress?: boolean | undefined;
|
|
10
|
+
subIndexIsPercent?: boolean | undefined;
|
|
11
|
+
compact?: boolean | undefined;
|
|
12
|
+
hideStepTitle?: boolean | undefined;
|
|
10
13
|
length: number;
|
|
11
14
|
resetP?: (() => void) | undefined;
|
|
12
15
|
};
|