windmill-components 1.122.0 → 1.138.2
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 +8 -0
- package/package/common.d.ts +1 -0
- package/package/common.js +8 -0
- package/package/components/AddUser.svelte +27 -5
- package/package/components/ApiConnectForm.svelte +14 -39
- package/package/components/AppConnect.svelte +25 -9
- package/package/components/ArgEnum.svelte +1 -0
- package/package/components/ArgInfo.svelte +2 -2
- package/package/components/ArgInput.svelte +16 -13
- package/package/components/ArgInput.svelte.d.ts +1 -0
- package/package/components/ArrayTypeNarrowing.svelte +1 -1
- package/package/components/Badge.svelte +1 -1
- package/package/components/CenteredModal.svelte +7 -13
- package/package/components/ChevronButton.svelte +1 -1
- package/package/components/CliHelpBox.svelte +4 -25
- package/package/components/CollapseLink.svelte +3 -2
- package/package/components/CollapseLink.svelte.d.ts +1 -0
- package/package/components/CronInput.svelte +5 -5
- package/package/components/DBSchemaExplorer.svelte +160 -0
- package/package/components/DBSchemaExplorer.svelte.d.ts +17 -0
- package/package/components/DarkModeObserver.svelte +18 -0
- package/package/components/DarkModeObserver.svelte.d.ts +16 -0
- package/package/components/DeployWorkspace.svelte +1 -1
- package/package/components/DiffDrawer.svelte +3 -1
- package/package/components/DiffEditor.svelte +69 -0
- package/package/components/DiffEditor.svelte.d.ts +35 -0
- package/package/components/DisplayResult.svelte +29 -13
- package/package/components/DisplayResult.svelte.d.ts +8 -0
- package/package/components/Dropdown.svelte +8 -8
- package/package/components/Editor.svelte +125 -17
- package/package/components/Editor.svelte.d.ts +11 -1
- package/package/components/EditorBar.svelte +149 -56
- package/package/components/EditorBar.svelte.d.ts +5 -1
- package/package/components/EditorTheme.svelte +194 -0
- package/package/components/EditorTheme.svelte.d.ts +14 -0
- package/package/components/FieldHeader.svelte +6 -6
- package/package/components/FlowBuilder.svelte +6 -2
- package/package/components/FlowGraphViewer.svelte +9 -11
- package/package/components/FlowJobResult.svelte +4 -3
- package/package/components/FlowJobResult.svelte.d.ts +1 -0
- package/package/components/FlowMetadata.svelte +16 -14
- package/package/components/FlowPreviewContent.svelte +4 -4
- package/package/components/FlowStatusViewer.svelte +20 -17
- package/package/components/FlowStatusWaitingForEvents.svelte +1 -1
- package/package/components/FlowViewer.svelte +8 -5
- package/package/components/FlowViewer.svelte.d.ts +1 -0
- package/package/components/FolderEditor.svelte +3 -3
- package/package/components/FolderInfo.svelte +2 -2
- package/package/components/FolderUsageInfo.svelte +1 -1
- package/package/components/GroupEditor.svelte +40 -13
- package/package/components/GroupInfo.svelte +2 -2
- package/package/components/HighlightCode.svelte +4 -0
- package/package/components/HighlightCode.svelte.d.ts +2 -1
- package/package/components/IconedResourceType.svelte +1 -1
- package/package/components/InlineCodeCopy.svelte +2 -1
- package/package/components/InputTransformForm.svelte +1 -5
- package/package/components/InputTransformSchemaForm.svelte +2 -2
- package/package/components/InputTransformsViewer.svelte +2 -2
- package/package/components/InviteGlobalUser.svelte +39 -28
- package/package/components/InviteUser.svelte +27 -5
- package/package/components/ItemPicker.svelte +13 -7
- package/package/components/JobArgs.svelte +4 -4
- package/package/components/LightweightArgInput.svelte +3 -3
- package/package/components/LogViewer.svelte +10 -5
- package/package/components/LoginPageHeader.svelte +16 -0
- package/package/components/LoginPageHeader.svelte.d.ts +23 -0
- package/package/components/Modal.svelte +2 -2
- package/package/components/ModulePreview.svelte +15 -5
- package/package/components/ModulePreview.svelte.d.ts +6 -1
- package/package/components/ModuleStatus.svelte +2 -2
- package/package/components/MoveDrawer.svelte +3 -3
- package/package/components/ObjectResourceInput.svelte +2 -0
- package/package/components/ObjectResourceInput.svelte.d.ts +1 -0
- package/package/components/Password.svelte +8 -3
- package/package/components/Password.svelte.d.ts +1 -0
- package/package/components/Path.svelte +31 -18
- package/package/components/Path.svelte.d.ts +4 -0
- package/package/components/RadioButton.svelte +3 -3
- package/package/components/Range.svelte.d.ts +0 -3
- package/package/components/Required.svelte +2 -2
- package/package/components/ResourceEditor.svelte +10 -9
- package/package/components/ResourcePicker.svelte +31 -6
- package/package/components/ResourcePicker.svelte.d.ts +1 -0
- package/package/components/ResultJobLoader.svelte.d.ts +2 -2
- package/package/components/RunForm.svelte +69 -59
- package/package/components/RunForm.svelte.d.ts +1 -0
- package/package/components/RunPageSchedules.svelte +169 -0
- package/package/components/RunPageSchedules.svelte.d.ts +18 -0
- package/package/components/SavedInputs.svelte +36 -18
- package/package/components/ScheduleEditor.svelte +23 -11
- package/package/components/SchemaEditor.svelte +16 -8
- package/package/components/SchemaForm.svelte +7 -9
- package/package/components/SchemaForm.svelte.d.ts +1 -0
- package/package/components/SchemaModal.svelte +41 -13
- package/package/components/SchemaModal.svelte.d.ts +2 -1
- package/package/components/SchemaViewer.svelte +1 -1
- package/package/components/ScriptBuilder.svelte +147 -76
- package/package/components/ScriptBuilder.svelte.d.ts +1 -1
- package/package/components/ScriptEditor.svelte +22 -2
- package/package/components/ScriptEditor.svelte.d.ts +6 -3
- package/package/components/ScriptPicker.svelte +84 -32
- package/package/components/ScriptPicker.svelte.d.ts +1 -0
- package/package/components/ScriptVersionHistory.svelte +20 -2
- package/package/components/ScriptVersionHistory.svelte.d.ts +3 -0
- package/package/components/SharedBadge.svelte +1 -1
- package/package/components/SimpleEditor.svelte +25 -10
- package/package/components/SimpleEditor.svelte.d.ts +9 -0
- package/package/components/Star.svelte +5 -1
- package/package/components/StringTypeNarrowing.svelte +2 -2
- package/package/components/SupabaseConnect.svelte +160 -0
- package/package/components/SupabaseConnect.svelte.d.ts +19 -0
- package/package/components/SuperadminSettings.svelte +9 -8
- package/package/components/TableCustom.svelte +2 -2
- package/package/components/TableSimple.svelte +5 -5
- package/package/components/TemplateEditor.svelte +0 -10
- package/package/components/TestConnection.svelte +72 -0
- package/package/components/TestConnection.svelte.d.ts +17 -0
- package/package/components/TestJobLoader.svelte.d.ts +4 -3
- package/package/components/Toast.svelte +7 -5
- package/package/components/Toggle.svelte +3 -3
- package/package/components/ToggleHubWorkspace.svelte +6 -9
- package/package/components/Tooltip.svelte +2 -2
- package/package/components/Uptodate.svelte +2 -2
- package/package/components/UserSettings.svelte +10 -10
- package/package/components/VariableEditor.svelte +21 -20
- package/package/components/Version.svelte +3 -1
- package/package/components/WhitelistIp.svelte +1 -1
- package/package/components/apps/components/buttons/AppButton.svelte +2 -2
- package/package/components/apps/components/buttons/AppForm.svelte +5 -4
- package/package/components/apps/components/buttons/AppFormButton.svelte +1 -1
- package/package/components/apps/components/buttons/AppSchemaForm.svelte +1 -1
- package/package/components/apps/components/display/AppBarChart.svelte +13 -1
- package/package/components/apps/components/display/AppFlowStatusComponent.svelte +1 -1
- package/package/components/apps/components/display/AppJobIdFlowStatus.svelte +64 -0
- package/package/components/apps/components/display/AppJobIdFlowStatus.svelte.d.ts +23 -0
- package/package/components/apps/components/display/AppJobIdLogComponent.svelte +72 -0
- package/package/components/apps/components/display/AppJobIdLogComponent.svelte.d.ts +23 -0
- package/package/components/apps/components/display/AppMap.svelte +4 -10
- package/package/components/apps/components/display/AppPdf.svelte +6 -6
- package/package/components/apps/components/display/AppText.svelte +19 -19
- package/package/components/apps/components/display/PlotlyHtml.svelte +16 -4
- package/package/components/apps/components/display/table/AppAggridTable.svelte +16 -12
- package/package/components/apps/components/display/table/AppAggridTable.svelte.d.ts +1 -0
- package/package/components/apps/components/display/table/AppTable.svelte +149 -124
- package/package/components/apps/components/helpers/ComponentErrorHandler.svelte +2 -2
- package/package/components/apps/components/helpers/HiddenComponent.svelte +1 -1
- package/package/components/apps/components/helpers/InputValue.svelte +14 -4
- package/package/components/apps/components/helpers/InputValue.svelte.d.ts +2 -0
- package/package/components/apps/components/helpers/Loader.svelte +1 -1
- package/package/components/apps/components/helpers/MissingConnectionWarning.svelte +1 -1
- package/package/components/apps/components/helpers/RefreshButton.svelte +1 -1
- package/package/components/apps/components/helpers/RunnableComponent.svelte +57 -21
- package/package/components/apps/components/helpers/RunnableComponent.svelte.d.ts +1 -0
- package/package/components/apps/components/helpers/RunnableWrapper.svelte +52 -28
- package/package/components/apps/components/helpers/RunnableWrapper.svelte.d.ts +15 -2
- package/package/components/apps/components/helpers/eval.d.ts +2 -0
- package/package/components/apps/components/helpers/eval.js +6 -1
- package/package/components/apps/components/inputs/AppCheckbox.svelte +15 -17
- package/package/components/apps/components/inputs/AppDateInput.svelte +19 -1
- package/package/components/apps/components/inputs/AppMultiSelect.svelte +81 -22
- package/package/components/apps/components/inputs/AppMultiSelect.svelte.d.ts +2 -0
- package/package/components/apps/components/inputs/AppQuillEditor.svelte +29 -3
- package/package/components/apps/components/inputs/AppSelect.svelte +18 -7
- package/package/components/apps/components/inputs/AppSelectTab.svelte +3 -8
- package/package/components/apps/components/inputs/AppTextInput.svelte +4 -0
- package/package/components/apps/components/inputs/AppTextInput.svelte.d.ts +2 -0
- package/package/components/apps/components/layout/AppDrawer.svelte +1 -1
- package/package/components/apps/components/layout/AppList.svelte +54 -62
- package/package/components/apps/components/layout/AppModal.svelte +13 -5
- package/package/components/apps/components/layout/AppStepper.svelte +1 -1
- package/package/components/apps/components/layout/AppTabs.svelte +3 -3
- package/package/components/apps/components/layout/ListWrapper.svelte +0 -1
- package/package/components/apps/components/layout/RowWrapper.svelte +22 -0
- package/package/components/apps/components/layout/RowWrapper.svelte.d.ts +23 -0
- package/package/components/apps/editor/AppComponentInput.svelte +1 -1
- package/package/components/apps/editor/AppDeploymentHistory.svelte +34 -0
- package/package/components/apps/editor/AppDeploymentHistory.svelte.d.ts +17 -0
- package/package/components/apps/editor/AppEditor.svelte +13 -4
- package/package/components/apps/editor/AppEditorHeader.svelte +78 -41
- package/package/components/apps/editor/AppInputs.svelte +1 -1
- package/package/components/apps/editor/AppPreview.svelte +14 -5
- package/package/components/apps/editor/ComponentHeader.svelte +4 -4
- package/package/components/apps/editor/DeploymentHistory.svelte +8 -6
- package/package/components/apps/editor/GridEditor.svelte +4 -4
- package/package/components/apps/editor/RecomputeAllComponents.svelte +2 -2
- package/package/components/apps/editor/SettingsPanel.svelte +4 -5
- package/package/components/apps/editor/TabsDebug.svelte +1 -1
- package/package/components/apps/editor/component/Component.svelte +21 -1
- package/package/components/apps/editor/component/ComponentNavigation.svelte +15 -1
- package/package/components/apps/editor/component/components.d.ts +293 -58
- package/package/components/apps/editor/component/components.js +146 -4
- package/package/components/apps/editor/component/sets.js +2 -2
- package/package/components/apps/editor/componentsPanel/ComponentList.svelte +8 -8
- package/package/components/apps/editor/componentsPanel/CssProperty.svelte +4 -4
- package/package/components/apps/editor/componentsPanel/CssSettings.svelte +2 -2
- package/package/components/apps/editor/componentsPanel/ListItem.svelte +3 -3
- package/package/components/apps/editor/componentsPanel/QuickStyleMenu.svelte +2 -2
- package/package/components/apps/editor/componentsPanel/QuickStyleProperty.svelte +3 -3
- package/package/components/apps/editor/componentsPanel/quickStyleProperties.js +8 -0
- package/package/components/apps/editor/contextPanel/ComponentOutputViewer.svelte +3 -3
- package/package/components/apps/editor/contextPanel/ContextPanel.svelte +8 -6
- package/package/components/apps/editor/contextPanel/SubGridOutput.svelte +6 -3
- package/package/components/apps/editor/contextPanel/components/IdEditor.svelte +18 -24
- package/package/components/apps/editor/contextPanel/components/IdEditor.svelte.d.ts +1 -0
- package/package/components/apps/editor/contextPanel/components/OutputHeader.svelte +16 -9
- package/package/components/apps/editor/inlineScriptsPanel/EmptyInlineScript.svelte +16 -26
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptEditor.svelte +71 -51
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptEditor.svelte.d.ts +2 -0
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorPanel.svelte +1 -1
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptHiddenRunnable.svelte +21 -1
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptHiddenRunnable.svelte.d.ts +1 -0
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte +1 -2
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanel.svelte +9 -3
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanelList.svelte +33 -11
- package/package/components/apps/editor/settingsPanel/AlignmentEditor.svelte +1 -1
- package/package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte +1 -1
- package/package/components/apps/editor/settingsPanel/ComponentPanel.svelte +24 -11
- package/package/components/apps/editor/settingsPanel/ComponentPanel.svelte.d.ts +0 -1
- package/package/components/apps/editor/settingsPanel/GridCondition.svelte +2 -3
- package/package/components/apps/editor/settingsPanel/GridPane.svelte +1 -1
- package/package/components/apps/editor/settingsPanel/GridTab.svelte +2 -2
- package/package/components/apps/editor/settingsPanel/GridTabDisabled.svelte +0 -1
- package/package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte +4 -5
- package/package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte.d.ts +0 -1
- package/package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte +1 -4
- package/package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte.d.ts +0 -1
- package/package/components/apps/editor/settingsPanel/OneOfInputSpecsEditor.svelte +0 -2
- package/package/components/apps/editor/settingsPanel/OneOfInputSpecsEditor.svelte.d.ts +0 -1
- package/package/components/apps/editor/settingsPanel/Recompute.svelte +5 -5
- package/package/components/apps/editor/settingsPanel/TableActions.svelte +12 -7
- package/package/components/apps/editor/settingsPanel/common/PanelSection.svelte +1 -1
- package/package/components/apps/editor/settingsPanel/inputEditor/EvalInputEditor.svelte +2 -3
- package/package/components/apps/editor/settingsPanel/inputEditor/EvalInputEditor.svelte.d.ts +0 -1
- package/package/components/apps/editor/settingsPanel/inputEditor/IconSelectInput.svelte +63 -74
- package/package/components/apps/editor/settingsPanel/inputEditor/JsonEditor.svelte +2 -2
- package/package/components/apps/editor/settingsPanel/inputEditor/TabSelectInput.svelte +3 -7
- package/package/components/apps/editor/settingsPanel/mainInput/InlineScriptList.svelte +5 -5
- package/package/components/apps/editor/settingsPanel/mainInput/RunnableSelector.svelte +2 -1
- package/package/components/apps/editor/settingsPanel/mainInput/WorkspaceFlowList.svelte +3 -3
- package/package/components/apps/editor/settingsPanel/mainInput/WorkspaceScriptList.svelte +4 -4
- package/package/components/apps/editor/settingsPanel/script/BackgroundScriptSettings.svelte +2 -0
- package/package/components/apps/editor/settingsPanel/script/ComponentScriptSettings.svelte +2 -2
- package/package/components/apps/editor/settingsPanel/script/shared/ScriptSettingHeader.svelte +1 -1
- package/package/components/apps/editor/settingsPanel/script/shared/ScriptTransformer.svelte +2 -2
- package/package/components/apps/editor/settingsPanel/script/shared/ScriptTransformer.svelte.d.ts +7 -4
- package/package/components/apps/editor/settingsPanel/script/shared/ScriptTriggers.svelte +2 -2
- package/package/components/apps/editor/settingsPanel/secondaryMenu/SecondaryMenu.svelte +2 -2
- package/package/components/apps/rx.d.ts +3 -3
- package/package/components/apps/rx.js +4 -5
- package/package/components/apps/svelte-select/lib/ChevronIcon.svelte +17 -0
- package/package/components/apps/svelte-select/lib/ChevronIcon.svelte.d.ts +23 -0
- package/package/components/apps/svelte-select/lib/ClearIcon.svelte +21 -0
- package/package/components/apps/svelte-select/lib/ClearIcon.svelte.d.ts +23 -0
- package/package/components/apps/svelte-select/lib/ConditionalPortal.svelte +12 -0
- package/package/components/apps/svelte-select/lib/ConditionalPortal.svelte.d.ts +18 -0
- package/package/components/apps/svelte-select/lib/ConditionalPortalGlobal.svelte +9 -0
- package/package/components/apps/svelte-select/lib/ConditionalPortalGlobal.svelte.d.ts +18 -0
- package/package/components/apps/svelte-select/lib/LoadingIcon.svelte +33 -0
- package/package/components/apps/svelte-select/lib/LoadingIcon.svelte.d.ts +23 -0
- package/package/components/apps/svelte-select/lib/Select.svelte +1129 -0
- package/package/components/apps/svelte-select/lib/Select.svelte.d.ts +205 -0
- package/package/components/apps/svelte-select/lib/filter.d.ts +13 -0
- package/package/components/apps/svelte-select/lib/filter.js +32 -0
- package/package/components/apps/svelte-select/lib/get-items.d.ts +11 -0
- package/package/components/apps/svelte-select/lib/get-items.js +30 -0
- package/package/components/apps/svelte-select/lib/index.d.ts +1 -0
- package/package/components/apps/svelte-select/lib/index.js +1 -0
- package/package/components/apps/svelte-select/lib/tailwind.css +130 -0
- package/package/components/apps/types.d.ts +6 -0
- package/package/components/apps/utils.d.ts +1 -5
- package/package/components/apps/utils.js +6 -34
- package/package/components/codeGen/ScriptFix.svelte +123 -0
- package/package/components/codeGen/ScriptFix.svelte.d.ts +22 -0
- package/package/components/codeGen/ScriptGen.svelte +218 -0
- package/package/components/codeGen/ScriptGen.svelte.d.ts +24 -0
- package/package/components/codeGen/index.d.ts +1 -0
- package/package/components/codeGen/index.js +1 -0
- package/package/components/codeGen/lib.d.ts +28 -0
- package/package/components/codeGen/lib.js +217 -0
- package/package/components/codeGen/prompts/edit.yaml +94 -0
- package/package/components/codeGen/prompts/fix.yaml +113 -0
- package/package/components/codeGen/prompts/gen.yaml +49 -0
- package/package/components/codeGen/prompts/index.d.ts +12 -0
- package/package/components/codeGen/prompts/index.js +7 -0
- package/package/components/codeGen/utils.d.ts +4 -0
- package/package/components/codeGen/utils.js +79 -0
- package/package/components/common/CloseButton.svelte +3 -3
- package/package/components/common/actionRow/ActionRow.svelte +1 -1
- package/package/components/common/alert/Alert.svelte +18 -18
- package/package/components/common/breadcrumb/Breadcrumb.svelte +1 -1
- package/package/components/common/button/Button.svelte +14 -14
- package/package/components/common/button/ButtonDropdown.svelte +2 -2
- package/package/components/common/calendarPicker/CalendarPicker.svelte +62 -0
- package/package/components/common/calendarPicker/CalendarPicker.svelte.d.ts +19 -0
- package/package/components/common/confirmationModal/ConfirmationModal.svelte +7 -5
- package/package/components/common/drawer/Drawer.svelte +5 -3
- package/package/components/common/drawer/DrawerContent.svelte +3 -2
- package/package/components/common/drawer/DrawerContent.svelte.d.ts +1 -0
- package/package/components/common/fileInput/FileInput.svelte +3 -3
- package/package/components/common/kbd/Kbd.svelte +1 -1
- package/package/components/common/languageIcons/LanguageIcon.svelte +22 -1
- package/package/components/common/languageIcons/LanguageIcon.svelte.d.ts +1 -1
- package/package/components/common/menu/Menu.svelte +1 -1
- package/package/components/common/menu/MenuItem.svelte +1 -1
- package/package/components/common/modal/AlwaysMountedModal.svelte +4 -4
- package/package/components/common/modal/Modal.svelte +3 -3
- package/package/components/common/popup/Popup.svelte +33 -157
- package/package/components/common/popup/Popup.svelte.d.ts +6 -45
- package/package/components/common/skeleton/SkeletonElement.svelte +1 -1
- package/package/components/common/stepper/Stepper.svelte +3 -3
- package/package/components/common/table/AppRow.svelte +36 -24
- package/package/components/common/table/FlowRow.svelte +13 -39
- package/package/components/common/table/RawAppRow.svelte +1 -15
- package/package/components/common/table/Row.svelte +22 -23
- package/package/components/common/table/RowIcon.svelte +7 -7
- package/package/components/common/table/ScriptRow.svelte +17 -41
- package/package/components/common/table/Table.svelte +1 -1
- package/package/components/common/tabs/Tab.svelte +1 -1
- package/package/components/common/tabs/Tabs.svelte +1 -4
- package/package/components/common/toggleButton-v2/ToggleButton.svelte +9 -2
- package/package/components/common/toggleButton-v2/ToggleButton.svelte.d.ts +1 -0
- package/package/components/common/toggleButton-v2/ToggleButtonGroup.svelte +1 -1
- package/package/components/details/ClipboardPanel.svelte +19 -0
- package/package/components/details/ClipboardPanel.svelte.d.ts +17 -0
- package/package/components/details/DetailPageDetailPanel.svelte +92 -0
- package/package/components/details/DetailPageDetailPanel.svelte.d.ts +23 -0
- package/package/components/details/DetailPageHeader.svelte +66 -0
- package/package/components/details/DetailPageHeader.svelte.d.ts +29 -0
- package/package/components/details/DetailPageLayout.svelte +51 -0
- package/package/components/details/DetailPageLayout.svelte.d.ts +35 -0
- package/package/components/details/Menu.svelte +53 -0
- package/package/components/details/Menu.svelte.d.ts +18 -0
- package/package/components/details/WebhooksPanel.svelte +236 -0
- package/package/components/details/WebhooksPanel.svelte.d.ts +29 -0
- package/package/components/details/createAppFromScript.d.ts +719 -0
- package/package/components/details/createAppFromScript.js +723 -0
- package/package/components/details/utils.d.ts +8 -0
- package/package/components/details/utils.js +50 -0
- package/package/components/flows/FlowEditor.svelte +1 -1
- package/package/components/flows/common/FlowCardHeader.svelte +4 -4
- package/package/components/flows/content/CapturePayload.svelte +2 -2
- package/package/components/flows/content/DynamicInputHelpBox.svelte +1 -1
- package/package/components/flows/content/FlowBranchesAllWrapper.svelte +1 -1
- package/package/components/flows/content/FlowBranchesOneWrapper.svelte +2 -2
- package/package/components/flows/content/FlowConstants.svelte +43 -3
- package/package/components/flows/content/FlowEditorPanel.svelte +1 -1
- package/package/components/flows/content/FlowInputs.svelte +85 -34
- package/package/components/flows/content/FlowInputsFlow.svelte +2 -2
- package/package/components/flows/content/FlowLoop.svelte +29 -29
- package/package/components/flows/content/FlowModuleComponent.svelte +61 -1
- package/package/components/flows/content/FlowModuleComponent.svelte.d.ts +2 -0
- package/package/components/flows/content/FlowModuleConcurrencyLimit.svelte +51 -0
- package/package/components/flows/content/FlowModuleConcurrencyLimit.svelte.d.ts +17 -0
- package/package/components/flows/content/FlowModuleEarlyStop.svelte +3 -1
- package/package/components/flows/content/FlowModuleHeader.svelte +57 -37
- package/package/components/flows/content/FlowModuleHeader.svelte.d.ts +1 -0
- package/package/components/flows/content/FlowModuleTimeout.svelte +43 -0
- package/package/components/flows/content/FlowModuleTimeout.svelte.d.ts +17 -0
- package/package/components/flows/content/FlowModuleWrapper.svelte +6 -0
- package/package/components/flows/content/FlowRetries.svelte +3 -3
- package/package/components/flows/content/FlowSchedules.svelte +1 -1
- package/package/components/flows/content/FlowSettings.svelte +102 -24
- package/package/components/flows/content/ScriptEditorDrawer.svelte +1 -1
- package/package/components/flows/flowStateUtils.js +1 -1
- package/package/components/flows/header/FlowPreviewButtons.svelte +1 -0
- package/package/components/flows/idUtils.js +1 -1
- package/package/components/flows/map/FlowConstantsItem.svelte +1 -1
- package/package/components/flows/map/FlowErrorHandlerItem.svelte +1 -1
- package/package/components/flows/map/FlowModuleSchemaItem.svelte +24 -12
- package/package/components/flows/map/FlowModuleSchemaItem.svelte.d.ts +1 -0
- package/package/components/flows/map/FlowModuleSchemaMap.svelte +2 -2
- package/package/components/flows/map/FlowSettingsItem.svelte +1 -1
- package/package/components/flows/map/InsertModuleButton.svelte +10 -10
- package/package/components/flows/map/MapItem.svelte +10 -6
- package/package/components/flows/map/VirtualItem.svelte +10 -8
- package/package/components/flows/map/VirtualItem.svelte.d.ts +1 -1
- package/package/components/flows/pickers/FlowScriptPicker.svelte +28 -21
- package/package/components/flows/pickers/FlowScriptPicker.svelte.d.ts +1 -1
- package/package/components/flows/pickers/PickHubApp.svelte +3 -3
- package/package/components/flows/pickers/PickHubFlow.svelte +3 -3
- package/package/components/flows/pickers/PickHubScript.svelte +6 -6
- package/package/components/flows/pickers/WorkspaceScriptPicker.svelte +2 -2
- package/package/components/flows/utils.js +2 -1
- package/package/components/graph/FlowGraph.svelte +53 -34
- package/package/components/graph/svelvet/container/views/GraphView.svelte +12 -17
- package/package/components/graph/svelvet/container/views/Svelvet.svelte +2 -4
- package/package/components/graph/svelvet/edges/views/Edges/EdgeText.svelte.d.ts +2 -2
- package/package/components/home/ItemsList.svelte +13 -9
- package/package/components/home/ListFilters.svelte +2 -1
- package/package/components/home/ListFilters.svelte.d.ts +1 -0
- package/package/components/home/NoItemFound.svelte +1 -1
- package/package/components/icons/BigQueryIcon.svelte +36 -0
- package/package/components/icons/BigQueryIcon.svelte.d.ts +17 -0
- package/package/components/icons/PowershellIcon.svelte +56 -0
- package/package/components/icons/PowershellIcon.svelte.d.ts +17 -0
- package/package/components/icons/RestIcon.svelte +21 -0
- package/package/components/icons/RestIcon.svelte.d.ts +17 -0
- package/package/components/jobs/JobDetail.svelte +21 -21
- package/package/components/jobs/JobPreview.svelte +6 -6
- package/package/components/preview/FlowPreviewStatus.svelte +2 -2
- package/package/components/progressBar/ProgressBar.svelte +2 -2
- package/package/components/propertyPicker/ObjectViewer.svelte +13 -18
- package/package/components/propertyPicker/PropPicker.svelte +5 -2
- package/package/components/scriptEditor/LogPanel.svelte +13 -4
- package/package/components/scriptEditor/LogPanel.svelte.d.ts +4 -0
- package/package/components/sidebar/DarkModeToggle.svelte +30 -0
- package/package/components/sidebar/DarkModeToggle.svelte.d.ts +17 -0
- package/package/components/sidebar/FavoriteMenu.svelte +4 -3
- package/package/components/sidebar/MenuLink.svelte +3 -2
- package/package/components/sidebar/MultiplayerMenu.svelte +2 -2
- package/package/components/sidebar/SidebarContent.svelte +9 -1
- package/package/components/sidebar/UserMenu.svelte +11 -10
- package/package/components/sidebar/WorkspaceMenu.svelte +11 -10
- package/package/components/theme/nord.json +93 -0
- package/package/defaults.d.ts +1 -0
- package/package/defaults.js +2 -1
- package/package/editorUtils.js +2 -0
- package/package/gen/core/CancelablePromise.js +1 -0
- package/package/gen/core/OpenAPI.d.ts +5 -5
- package/package/gen/core/OpenAPI.js +1 -1
- package/package/gen/core/request.d.ts +17 -0
- package/package/gen/core/request.js +27 -16
- package/package/gen/index.d.ts +43 -1
- package/package/gen/index.js +2 -0
- package/package/gen/models/AccountId.d.ts +1 -0
- package/package/gen/models/{Postgresql.js → AccountId.js} +1 -0
- package/package/gen/models/ActionKind.d.ts +9 -0
- package/package/gen/models/ActionKind.js +14 -0
- package/package/gen/models/After.d.ts +4 -0
- package/package/gen/models/After.js +5 -0
- package/package/gen/models/AppWithLastVersion.js +1 -0
- package/package/gen/models/AppWithLastVersionWDraft.js +1 -0
- package/package/gen/models/ArgsFilter.d.ts +4 -0
- package/package/gen/models/ArgsFilter.js +5 -0
- package/package/gen/models/AuditLog.js +1 -0
- package/package/gen/models/Before.d.ts +4 -0
- package/package/gen/models/Before.js +5 -0
- package/package/gen/models/BranchAll.js +1 -0
- package/package/gen/models/BranchOne.js +1 -0
- package/package/gen/models/ClientName.d.ts +1 -0
- package/package/gen/models/ClientName.js +5 -0
- package/package/gen/models/CompletedJob.d.ts +8 -4
- package/package/gen/models/CompletedJob.js +7 -2
- package/package/gen/models/ContextualVariable.js +1 -0
- package/package/gen/models/CreateInput.js +1 -0
- package/package/gen/models/CreateResource.js +1 -0
- package/package/gen/models/CreateVariable.js +1 -0
- package/package/gen/models/CreateWorkspace.js +1 -0
- package/package/gen/models/CreatedBy.d.ts +4 -0
- package/package/gen/models/CreatedBy.js +5 -0
- package/package/gen/models/EditResource.js +1 -0
- package/package/gen/models/EditResourceType.js +1 -0
- package/package/gen/models/EditSchedule.js +1 -0
- package/package/gen/models/EditVariable.js +1 -0
- package/package/gen/models/EditWorkspaceUser.js +1 -0
- package/package/gen/models/Flow.js +1 -0
- package/package/gen/models/FlowMetadata.d.ts +1 -0
- package/package/gen/models/FlowMetadata.js +1 -0
- package/package/gen/models/FlowModule.d.ts +1 -0
- package/package/gen/models/FlowModule.js +1 -0
- package/package/gen/models/FlowModuleValue.d.ts +1 -2
- package/package/gen/models/FlowModuleValue.js +1 -0
- package/package/gen/models/FlowPreview.d.ts +1 -0
- package/package/gen/models/FlowPreview.js +1 -0
- package/package/gen/models/FlowStatus.js +1 -0
- package/package/gen/models/FlowStatusModule.js +1 -0
- package/package/gen/models/FlowValue.js +1 -0
- package/package/gen/models/Folder.js +1 -0
- package/package/gen/models/ForloopFlow.js +1 -0
- package/package/gen/models/GlobalUserInfo.js +1 -0
- package/package/gen/models/Graphql.js +1 -0
- package/package/gen/models/Group.js +1 -0
- package/package/gen/models/Http.js +1 -0
- package/package/gen/models/Identity.js +1 -0
- package/package/gen/models/IncludeHeader.d.ts +6 -0
- package/package/gen/models/IncludeHeader.js +5 -0
- package/package/gen/models/Input.d.ts +1 -0
- package/package/gen/models/Input.js +1 -0
- package/package/gen/models/InputId.d.ts +1 -0
- package/package/gen/models/InputId.js +5 -0
- package/package/gen/models/InputTransform.js +1 -0
- package/package/gen/models/InstanceGroup.d.ts +4 -0
- package/package/gen/models/InstanceGroup.js +5 -0
- package/package/gen/models/JavascriptTransform.js +1 -0
- package/package/gen/models/Job.js +1 -0
- package/package/gen/models/JobId.d.ts +1 -0
- package/package/gen/models/JobId.js +5 -0
- package/package/gen/models/JobKinds.d.ts +4 -0
- package/package/gen/models/JobKinds.js +5 -0
- package/package/gen/models/ListableApp.js +1 -0
- package/package/gen/models/ListableRawApp.js +1 -0
- package/package/gen/models/ListableResource.js +1 -0
- package/package/gen/models/ListableVariable.js +1 -0
- package/package/gen/models/Login.js +1 -0
- package/package/gen/models/MainArgSignature.js +1 -0
- package/package/gen/models/Name.d.ts +1 -0
- package/package/gen/models/Name.js +5 -0
- package/package/gen/models/NewJobId.d.ts +4 -0
- package/package/gen/models/NewJobId.js +5 -0
- package/package/gen/models/NewSchedule.js +1 -0
- package/package/gen/models/NewScript.d.ts +9 -1
- package/package/gen/models/NewScript.js +7 -0
- package/package/gen/models/NewScriptWithDraft.js +1 -0
- package/package/gen/models/NewToken.js +1 -0
- package/package/gen/models/NewTokenImpersonate.js +1 -0
- package/package/gen/models/NewUser.js +1 -0
- package/package/gen/models/OpenFlow.js +1 -0
- package/package/gen/models/OpenFlowWPath.d.ts +1 -0
- package/package/gen/models/OpenFlowWPath.js +1 -0
- package/package/gen/models/Operation.d.ts +4 -0
- package/package/gen/models/Operation.js +5 -0
- package/package/gen/models/OrderDesc.d.ts +4 -0
- package/package/gen/models/OrderDesc.js +5 -0
- package/package/gen/models/Page.d.ts +4 -0
- package/package/gen/models/Page.js +5 -0
- package/package/gen/models/ParentJob.d.ts +4 -0
- package/package/gen/models/ParentJob.js +5 -0
- package/package/gen/models/Path.d.ts +1 -0
- package/package/gen/models/Path.js +5 -0
- package/package/gen/models/PathFlow.js +1 -0
- package/package/gen/models/PathId.d.ts +1 -0
- package/package/gen/models/PathId.js +5 -0
- package/package/gen/models/PathScript.js +1 -0
- package/package/gen/models/Payload.d.ts +6 -0
- package/package/gen/models/Payload.js +5 -0
- package/package/gen/models/PerPage.d.ts +4 -0
- package/package/gen/models/PerPage.js +5 -0
- package/package/gen/models/Policy.js +1 -0
- package/package/gen/models/Preview.d.ts +7 -3
- package/package/gen/models/Preview.js +7 -2
- package/package/gen/models/QueueLimit.d.ts +5 -0
- package/package/gen/models/QueueLimit.js +5 -0
- package/package/gen/models/QueuedJob.d.ts +8 -4
- package/package/gen/models/QueuedJob.js +7 -2
- package/package/gen/models/RawScript.d.ts +8 -1
- package/package/gen/models/RawScript.js +6 -0
- package/package/gen/models/Resource.js +1 -0
- package/package/gen/models/ResourceName.d.ts +4 -0
- package/package/gen/models/ResourceName.js +5 -0
- package/package/gen/models/ResourceType.js +1 -0
- package/package/gen/models/ResultFilter.d.ts +4 -0
- package/package/gen/models/ResultFilter.js +5 -0
- package/package/gen/models/Retry.js +1 -0
- package/package/gen/models/RunnableId.d.ts +1 -0
- package/package/gen/models/RunnableId.js +5 -0
- package/package/gen/models/RunnableType.js +1 -0
- package/package/gen/models/RunnableTypeQuery.d.ts +2 -0
- package/package/gen/models/RunnableTypeQuery.js +5 -0
- package/package/gen/models/Running.d.ts +4 -0
- package/package/gen/models/Running.js +5 -0
- package/package/gen/models/Schedule.js +1 -0
- package/package/gen/models/SchedulePath.d.ts +4 -0
- package/package/gen/models/SchedulePath.js +5 -0
- package/package/gen/models/ScheduleWJobs.js +1 -0
- package/package/gen/models/Script.d.ts +9 -1
- package/package/gen/models/Script.js +7 -0
- package/package/gen/models/ScriptArgs.js +1 -0
- package/package/gen/models/ScriptExactHash.d.ts +4 -0
- package/package/gen/models/ScriptExactHash.js +5 -0
- package/package/gen/models/ScriptExactPath.d.ts +4 -0
- package/package/gen/models/ScriptExactPath.js +5 -0
- package/package/gen/models/ScriptHash.d.ts +1 -0
- package/package/gen/models/ScriptHash.js +5 -0
- package/package/gen/models/ScriptPath.d.ts +1 -0
- package/package/gen/models/ScriptPath.js +5 -0
- package/package/gen/models/ScriptStartPath.d.ts +4 -0
- package/package/gen/models/ScriptStartPath.js +5 -0
- package/package/gen/models/SlackToken.js +1 -0
- package/package/gen/models/StartedAfter.d.ts +4 -0
- package/package/gen/models/StartedAfter.js +5 -0
- package/package/gen/models/StartedBefore.d.ts +4 -0
- package/package/gen/models/StartedBefore.js +5 -0
- package/package/gen/models/StaticTransform.js +1 -0
- package/package/gen/models/Success.d.ts +4 -0
- package/package/gen/models/Success.js +5 -0
- package/package/gen/models/Suspended.d.ts +4 -0
- package/package/gen/models/Suspended.js +5 -0
- package/package/gen/models/Tag.d.ts +4 -0
- package/package/gen/models/Tag.js +5 -0
- package/package/gen/models/Token.d.ts +1 -0
- package/package/gen/models/Token.js +5 -0
- package/package/gen/models/TokenResponse.js +1 -0
- package/package/gen/models/TruncatedToken.js +1 -0
- package/package/gen/models/UpdateInput.js +1 -0
- package/package/gen/models/Usage.js +1 -0
- package/package/gen/models/User.js +1 -0
- package/package/gen/models/UserWorkspaceList.js +1 -0
- package/package/gen/models/Username.d.ts +4 -0
- package/package/gen/models/Username.js +5 -0
- package/package/gen/models/VersionId.d.ts +1 -0
- package/package/gen/models/VersionId.js +5 -0
- package/package/gen/models/WorkerPing.d.ts +1 -0
- package/package/gen/models/WorkerPing.js +1 -0
- package/package/gen/models/Workspace.js +1 -0
- package/package/gen/models/WorkspaceId.d.ts +1 -0
- package/package/gen/models/WorkspaceId.js +5 -0
- package/package/gen/models/WorkspaceInvite.js +1 -0
- package/package/gen/services/GroupService.d.ts +15 -0
- package/package/gen/services/GroupService.js +25 -0
- package/package/gen/services/JobService.d.ts +2 -2
- package/package/gen/services/JobService.js +2 -2
- package/package/gen/services/OauthService.d.ts +5 -2
- package/package/gen/services/OauthService.js +1 -1
- package/package/gen/services/ScheduleService.d.ts +6 -1
- package/package/gen/services/ScheduleService.js +3 -1
- package/package/gen/services/ScriptService.d.ts +1 -1
- package/package/gen/services/UserService.d.ts +8 -0
- package/package/gen/services/UserService.js +14 -0
- package/package/gen/services/WorkspaceService.d.ts +38 -0
- package/package/gen/services/WorkspaceService.js +46 -0
- package/package/infer.d.ts +6 -2
- package/package/infer.js +55 -2
- package/package/script_helpers.d.ts +9 -3
- package/package/script_helpers.js +77 -57
- package/package/scripts.d.ts +3 -1
- package/package/scripts.js +26 -2
- package/package/stores.d.ts +3 -0
- package/package/stores.js +3 -0
- package/package/utils.d.ts +5 -3
- package/package/utils.js +19 -7
- package/package.json +23 -19
- package/package/components/common/table/LanguageBadge.svelte +0 -40
- package/package/components/common/table/LanguageBadge.svelte.d.ts +0 -17
- package/package/gen/models/Postgresql.d.ts +0 -3
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Script } from '../../gen';
|
|
2
|
+
export declare function deleteScript(hash: string, workspace: string): Promise<Script>;
|
|
3
|
+
export declare function archiveScript(hash: string, workspace: string): Promise<Script>;
|
|
4
|
+
export declare function unarchiveScript(hash: string, workspace: string): Promise<string>;
|
|
5
|
+
export declare function getScriptDeploymentStatus(hash: string, workspace: string): Promise<any>;
|
|
6
|
+
export declare function loadScript(hash: string, workspace: string): Promise<any>;
|
|
7
|
+
export declare function runScript(scheduledForStr: string | undefined, args: Record<string, any>, hash: string, workspace: string, invisibleToOwner?: boolean): Promise<string>;
|
|
8
|
+
export declare function curlCommand(async: boolean, args: any, $page: any, workspace: string, script: any): string;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { ScriptService, JobService, Script } from '../../gen';
|
|
2
|
+
export async function deleteScript(hash, workspace) {
|
|
3
|
+
return await ScriptService.deleteScriptByHash({ workspace: workspace, hash });
|
|
4
|
+
}
|
|
5
|
+
export async function archiveScript(hash, workspace) {
|
|
6
|
+
return await ScriptService.archiveScriptByHash({ workspace: workspace, hash });
|
|
7
|
+
}
|
|
8
|
+
export async function unarchiveScript(hash, workspace) {
|
|
9
|
+
const r = await ScriptService.getScriptByHash({ workspace: workspace, hash });
|
|
10
|
+
const ns = await ScriptService.createScript({
|
|
11
|
+
workspace: workspace,
|
|
12
|
+
requestBody: {
|
|
13
|
+
...r,
|
|
14
|
+
parent_hash: hash,
|
|
15
|
+
lock: r.lock?.split('\n')
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
return ns;
|
|
19
|
+
}
|
|
20
|
+
export async function getScriptDeploymentStatus(hash, workspace) {
|
|
21
|
+
return await ScriptService.getScriptDeploymentStatus({
|
|
22
|
+
workspace: workspace,
|
|
23
|
+
hash: hash
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
export async function loadScript(hash, workspace) {
|
|
27
|
+
let script;
|
|
28
|
+
try {
|
|
29
|
+
script = await ScriptService.getScriptByHash({ workspace: workspace, hash });
|
|
30
|
+
}
|
|
31
|
+
catch {
|
|
32
|
+
script = await ScriptService.getScriptByPath({ workspace: workspace, path: hash });
|
|
33
|
+
hash = script.hash;
|
|
34
|
+
}
|
|
35
|
+
return { script, hash };
|
|
36
|
+
}
|
|
37
|
+
export async function runScript(scheduledForStr, args, hash, workspace, invisibleToOwner) {
|
|
38
|
+
const scheduledFor = scheduledForStr ? new Date(scheduledForStr).toISOString() : undefined;
|
|
39
|
+
let run = await JobService.runScriptByHash({
|
|
40
|
+
workspace: workspace,
|
|
41
|
+
hash: hash,
|
|
42
|
+
requestBody: args,
|
|
43
|
+
scheduledFor,
|
|
44
|
+
invisibleToOwner
|
|
45
|
+
});
|
|
46
|
+
return run;
|
|
47
|
+
}
|
|
48
|
+
export function curlCommand(async, args, $page, workspace, script) {
|
|
49
|
+
return `curl -H 'Content-Type: application/json' -H "Authorization: Bearer $TOKEN" -X POST -d '${JSON.stringify(args)}' ${$page.url.protocol}//${$page.url.hostname}/api/w/${workspace}/jobs/run${async ? '' : '_wait_result'}/p/${script?.path}`;
|
|
50
|
+
}
|
|
@@ -12,7 +12,7 @@ let size = 40;
|
|
|
12
12
|
<div class="h-full overflow-hidden border-t">
|
|
13
13
|
<Splitpanes>
|
|
14
14
|
<Pane {size} minSize={15} class="h-full relative z-0">
|
|
15
|
-
<div class="grow overflow-auto bg-gray h-full bg-
|
|
15
|
+
<div class="grow overflow-auto bg-gray h-full bg-surface-secondary relative">
|
|
16
16
|
{#if loading}
|
|
17
17
|
<div class="p-2 pt-10">
|
|
18
18
|
{#each new Array(6) as _}
|
|
@@ -31,7 +31,7 @@ $: $workspaceStore &&
|
|
|
31
31
|
{#if flowModule.value.type === 'identity'}
|
|
32
32
|
<span class="font-bold text-xs">Identity (input copied to output)</span>
|
|
33
33
|
{:else if flowModule?.value.type === 'rawscript'}
|
|
34
|
-
<div class="w-
|
|
34
|
+
<div class="w-8 mx-0.5">
|
|
35
35
|
<LanguageIcon lang={flowModule.value.language} class="w-4 h-4" />
|
|
36
36
|
</div>
|
|
37
37
|
<input bind:value={flowModule.summary} placeholder={'Summary'} class="w-full grow" />
|
|
@@ -54,7 +54,7 @@ $: $workspaceStore &&
|
|
|
54
54
|
<Button
|
|
55
55
|
title="Unlock hash to always use latest deployed version at that path"
|
|
56
56
|
size="xs"
|
|
57
|
-
btnClasses="text-
|
|
57
|
+
btnClasses="text-tertiary inline-flex gap-1 items-center"
|
|
58
58
|
color="light"
|
|
59
59
|
on:click={() => {
|
|
60
60
|
if (flowModule?.value.type == 'script') {
|
|
@@ -67,7 +67,7 @@ $: $workspaceStore &&
|
|
|
67
67
|
title="Lock hash to always use this specific version"
|
|
68
68
|
color="light"
|
|
69
69
|
size="xs"
|
|
70
|
-
btnClasses="text-
|
|
70
|
+
btnClasses="text-tertiary inline-flex gap-1 items-center"
|
|
71
71
|
on:click={() => {
|
|
72
72
|
if (flowModule?.value.type == 'script') {
|
|
73
73
|
flowModule.value.hash = latestHash
|
|
@@ -84,7 +84,7 @@ $: $workspaceStore &&
|
|
|
84
84
|
</span>
|
|
85
85
|
{/if}
|
|
86
86
|
{#if title}
|
|
87
|
-
<div class="text-sm font-bold text-
|
|
87
|
+
<div class="text-sm font-bold text-primary">{title}</div>
|
|
88
88
|
{/if}
|
|
89
89
|
<slot />
|
|
90
90
|
</div>
|
|
@@ -62,7 +62,7 @@ let hostname = BROWSER ? window.location.protocol + '//' + window.location.host
|
|
|
62
62
|
<Icon data={faClipboard} /></a
|
|
63
63
|
>
|
|
64
64
|
</div>
|
|
65
|
-
<p class="text-
|
|
65
|
+
<p class="text-secondary mt-4 text-xs">CURL example</p>
|
|
66
66
|
|
|
67
67
|
<div class="text-xs box mb-4 b">
|
|
68
68
|
<pre class="overflow-auto"
|
|
@@ -71,7 +71,7 @@ let hostname = BROWSER ? window.location.protocol + '//' + window.location.host
|
|
|
71
71
|
-d '{"foo": 42}'`}</pre
|
|
72
72
|
>
|
|
73
73
|
</div>
|
|
74
|
-
<div class="items-center flex flex-row gap-x-2 text-xs text-
|
|
74
|
+
<div class="items-center flex flex-row gap-x-2 text-xs text-secondary">
|
|
75
75
|
Listening for new requests
|
|
76
76
|
<WindmillIcon class="animate-[pulse_5s_linear_infinite]" spin="fast" /></div
|
|
77
77
|
>
|
|
@@ -20,7 +20,7 @@ $: opened = false;
|
|
|
20
20
|
{#if opened}
|
|
21
21
|
<div
|
|
22
22
|
transition:slide|local
|
|
23
|
-
class="bg-gray-100 border-l-4 border-gray-600 text-
|
|
23
|
+
class="bg-gray-100 border-l-4 border-gray-600 text-secondary p-4 m-4"
|
|
24
24
|
role="alert"
|
|
25
25
|
id="dynamic-input-help-box"
|
|
26
26
|
>
|
|
@@ -64,7 +64,7 @@ let selected = 'early-stop';
|
|
|
64
64
|
<Tab value="sleep">Sleep</Tab>
|
|
65
65
|
<Tab value="mock">Mock</Tab>
|
|
66
66
|
<svelte:fragment slot="content">
|
|
67
|
-
<div class="overflow-hidden bg-
|
|
67
|
+
<div class="overflow-hidden bg-surface">
|
|
68
68
|
<TabContent value="early-stop" class="flex flex-col flex-1 h-full">
|
|
69
69
|
<div class="p-4 overflow-y-auto">
|
|
70
70
|
<FlowModuleEarlyStop bind:flowModule />
|
|
@@ -32,7 +32,7 @@ let selected = 'early-stop';
|
|
|
32
32
|
<div class="py-2">
|
|
33
33
|
<div class="flex flex-row gap-2 text-sm p-2">
|
|
34
34
|
<Badge large={true} color="blue">Default branch</Badge>
|
|
35
|
-
<p class="italic text-
|
|
35
|
+
<p class="italic text-tertiary"
|
|
36
36
|
>If none of the predicates' expressions evaluated in-order match, this branch is
|
|
37
37
|
chosen</p
|
|
38
38
|
>
|
|
@@ -64,7 +64,7 @@ let selected = 'early-stop';
|
|
|
64
64
|
<Tab value="sleep">Sleep</Tab>
|
|
65
65
|
<Tab value="mock">Mock</Tab>
|
|
66
66
|
<svelte:fragment slot="content">
|
|
67
|
-
<div class="overflow-hidden bg-
|
|
67
|
+
<div class="overflow-hidden bg-surface">
|
|
68
68
|
<TabContent value="early-stop" class="flex flex-col flex-1 h-full">
|
|
69
69
|
<div class="p-4 overflow-y-auto">
|
|
70
70
|
<FlowModuleEarlyStop bind:flowModule />
|
|
@@ -7,9 +7,34 @@ import Toggle from '../../Toggle.svelte';
|
|
|
7
7
|
import InputTransformSchemaForm from '../../InputTransformSchemaForm.svelte';
|
|
8
8
|
let hideOptional = false;
|
|
9
9
|
const { flowStateStore, flowStore } = getContext('FlowEditorContext');
|
|
10
|
-
$:
|
|
10
|
+
$: scriptModules = dfs($flowStore.value.modules, (x) => x)
|
|
11
11
|
.map((x) => [x.value, x])
|
|
12
|
-
.filter((x) => x[0].type == 'script' || x[0].type == 'rawscript')
|
|
12
|
+
.filter((x) => x[0].type == 'script' || x[0].type == 'rawscript');
|
|
13
|
+
$: resources = Object.fromEntries(scriptModules
|
|
14
|
+
.map(([v, m]) => [
|
|
15
|
+
m.id,
|
|
16
|
+
Object.entries(v.input_transforms)
|
|
17
|
+
.map((x) => {
|
|
18
|
+
let schema = $flowStateStore[m.id]?.schema;
|
|
19
|
+
let val = undefined;
|
|
20
|
+
const [k, inputTransform] = x;
|
|
21
|
+
const v = schema.properties[k];
|
|
22
|
+
if (v.format?.includes('resource') &&
|
|
23
|
+
inputTransform.type === 'static' &&
|
|
24
|
+
(inputTransform.value === '' ||
|
|
25
|
+
inputTransform.value === undefined ||
|
|
26
|
+
inputTransform.value === null)) {
|
|
27
|
+
val = {
|
|
28
|
+
argName: k,
|
|
29
|
+
type: v.format.split('-')[1]
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
return val;
|
|
33
|
+
})
|
|
34
|
+
.filter(Boolean)
|
|
35
|
+
])
|
|
36
|
+
.filter((x) => x[1].length > 0));
|
|
37
|
+
$: steps = scriptModules
|
|
13
38
|
.map(([v, m]) => [
|
|
14
39
|
v.input_transforms,
|
|
15
40
|
Object.entries(v.input_transforms)
|
|
@@ -40,6 +65,21 @@ setContext('PropPickerWrapper', {
|
|
|
40
65
|
useful when forking a flow to get an overview of all the variables to parametrize that are
|
|
41
66
|
not exposed directly as flow inputs.</Alert
|
|
42
67
|
>
|
|
68
|
+
{#if Object.keys(resources).length > 0}
|
|
69
|
+
<Alert type="warning" title="Missing resources" class="m-4">
|
|
70
|
+
The following resources are missing and the flow will not be fully runnable until they are
|
|
71
|
+
set. Add your own resources:
|
|
72
|
+
{#each Object.entries(resources) as [id, r]}
|
|
73
|
+
{#each r as resource}
|
|
74
|
+
<div class="mt-2">
|
|
75
|
+
<Badge color="red">{id}</Badge> is missing a resource of type{' '}
|
|
76
|
+
<Badge color="red">{resource?.type}</Badge> for the input{' '}
|
|
77
|
+
<Badge color="red">{resource?.argName}</Badge>
|
|
78
|
+
</div>
|
|
79
|
+
{/each}
|
|
80
|
+
{/each}
|
|
81
|
+
</Alert>
|
|
82
|
+
{/if}
|
|
43
83
|
{#if steps.length == 0}
|
|
44
84
|
<div class="mt-2" />
|
|
45
85
|
{#if $flowStore.value.modules.length == 0}
|
|
@@ -56,7 +96,7 @@ setContext('PropPickerWrapper', {
|
|
|
56
96
|
{#each steps as [args, filter, m] (m.id)}
|
|
57
97
|
{#if filter.length > 0}
|
|
58
98
|
<div class="relative h-full border-t p-4">
|
|
59
|
-
<h2 class="sticky w-full top-0 z-10 inline-flex items-center
|
|
99
|
+
<h2 class="sticky w-full top-0 z-10 inline-flex items-center py-2">
|
|
60
100
|
<span class="mr-4">{m.summary || m.value['path'] || 'Inline script'}</span>
|
|
61
101
|
<Badge large color="indigo">{m.id}</Badge>
|
|
62
102
|
</h2>
|
|
@@ -12,7 +12,7 @@ const { selectedId, flowStore } = getContext('FlowEditorContext');
|
|
|
12
12
|
{:else if $selectedId === 'Input'}
|
|
13
13
|
<FlowInput />
|
|
14
14
|
{:else if $selectedId === 'Result'}
|
|
15
|
-
<p class="p-4 text-
|
|
15
|
+
<p class="p-4 text-secondary">Nothing to show about the result node. Happy flow building!</p>
|
|
16
16
|
{:else if $selectedId === 'constants'}
|
|
17
17
|
<FlowConstants />
|
|
18
18
|
{:else if $selectedId === 'failure'}
|
|
@@ -1,14 +1,16 @@
|
|
|
1
|
-
<script>import { Alert
|
|
1
|
+
<script>import { Alert } from '../../common';
|
|
2
2
|
import ToggleHubWorkspace from '../../ToggleHubWorkspace.svelte';
|
|
3
3
|
import Tooltip from '../../Tooltip.svelte';
|
|
4
4
|
import { RawScript, Script } from '../../../gen';
|
|
5
|
-
import { faBolt, faCheck, faCode } from '@fortawesome/free-solid-svg-icons';
|
|
6
5
|
import { createEventDispatcher } from 'svelte';
|
|
7
6
|
import FlowScriptPicker from '../pickers/FlowScriptPicker.svelte';
|
|
8
7
|
import PickHubScript from '../pickers/PickHubScript.svelte';
|
|
9
8
|
import WorkspaceScriptPicker from '../pickers/WorkspaceScriptPicker.svelte';
|
|
10
9
|
import { isCloudHosted } from '../../../cloud';
|
|
11
10
|
import { sendUserToast } from '../../../toast';
|
|
11
|
+
import ToggleButtonGroup from '../../common/toggleButton-v2/ToggleButtonGroup.svelte';
|
|
12
|
+
import ToggleButton from '../../common/toggleButton-v2/ToggleButton.svelte';
|
|
13
|
+
import { Check, Code, Zap } from 'lucide-svelte';
|
|
12
14
|
export let failureModule;
|
|
13
15
|
export let shouldDisableTriggerScripts = false;
|
|
14
16
|
export let summary = undefined;
|
|
@@ -33,37 +35,26 @@ let filter = '';
|
|
|
33
35
|
<div class="center-center">
|
|
34
36
|
<div class="max-w-min">
|
|
35
37
|
<ToggleButtonGroup bind:selected={kind}>
|
|
36
|
-
<ToggleButton
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
38
|
+
<ToggleButton
|
|
39
|
+
value="script"
|
|
40
|
+
icon={Code}
|
|
41
|
+
label="Action"
|
|
42
|
+
tooltip="An action script is simply a script that is neither a trigger nor an approval script. Those are the majority of the scripts."
|
|
43
|
+
/>
|
|
42
44
|
{#if !shouldDisableTriggerScripts}
|
|
43
45
|
<ToggleButton
|
|
44
|
-
position="center"
|
|
45
46
|
value="trigger"
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
documentationLink="https://www.windmill.dev/docs/flows/flow_trigger"
|
|
51
|
-
>
|
|
52
|
-
Used as a first step most commonly with a state and a schedule to watch for
|
|
53
|
-
changes on an external system, compute the diff since last time and set the new
|
|
54
|
-
state. The diffs are then treated one by one with a for-loop.
|
|
55
|
-
</Tooltip>
|
|
56
|
-
</ToggleButton>
|
|
47
|
+
icon={Zap}
|
|
48
|
+
label="Trigger"
|
|
49
|
+
tooltip="Used as a first step most commonly with a state and a schedule to watch for changes on an external system, compute the diff since last time and set the new state. The diffs are then treated one by one with a for-loop."
|
|
50
|
+
/>
|
|
57
51
|
{/if}
|
|
58
|
-
<ToggleButton
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
those secret urls.
|
|
65
|
-
</Tooltip>
|
|
66
|
-
</ToggleButton>
|
|
52
|
+
<ToggleButton
|
|
53
|
+
value="approval"
|
|
54
|
+
icon={Check}
|
|
55
|
+
label="Approval"
|
|
56
|
+
tooltip="An approval step will suspend the execution of a flow until it has been approved through the resume endpoints or the approval page by and solely by the recipients of those secret urls."
|
|
57
|
+
/>
|
|
67
58
|
</ToggleButtonGroup>
|
|
68
59
|
</div>
|
|
69
60
|
</div>
|
|
@@ -85,7 +76,7 @@ let filter = '';
|
|
|
85
76
|
<div class="flex flex-row">
|
|
86
77
|
<div class="flex flex-row flex-wrap gap-2">
|
|
87
78
|
<FlowScriptPicker
|
|
88
|
-
label="
|
|
79
|
+
label="TypeScript (Deno)"
|
|
89
80
|
lang={Script.language.DENO}
|
|
90
81
|
on:click={() => {
|
|
91
82
|
dispatch('new', {
|
|
@@ -135,13 +126,53 @@ let filter = '';
|
|
|
135
126
|
}}
|
|
136
127
|
/>
|
|
137
128
|
|
|
129
|
+
<FlowScriptPicker
|
|
130
|
+
label="REST"
|
|
131
|
+
lang={Script.language.NATIVETS}
|
|
132
|
+
on:click={() => {
|
|
133
|
+
dispatch('new', {
|
|
134
|
+
language: RawScript.language.NATIVETS,
|
|
135
|
+
kind,
|
|
136
|
+
subkind: 'flow'
|
|
137
|
+
})
|
|
138
|
+
}}
|
|
139
|
+
/>
|
|
140
|
+
|
|
138
141
|
{#if !failureModule}
|
|
139
142
|
<FlowScriptPicker
|
|
140
|
-
label=
|
|
141
|
-
lang=
|
|
142
|
-
on:click={() =>
|
|
143
|
-
dispatch('new', {
|
|
143
|
+
label="PostgreSQL"
|
|
144
|
+
lang={Script.language.POSTGRESQL}
|
|
145
|
+
on:click={() => {
|
|
146
|
+
dispatch('new', {
|
|
147
|
+
language: RawScript.language.POSTGRESQL,
|
|
148
|
+
kind,
|
|
149
|
+
subkind: 'flow'
|
|
150
|
+
})
|
|
151
|
+
}}
|
|
152
|
+
/>
|
|
153
|
+
<FlowScriptPicker
|
|
154
|
+
label="MySQL"
|
|
155
|
+
lang={Script.language.MYSQL}
|
|
156
|
+
on:click={() => {
|
|
157
|
+
dispatch('new', {
|
|
158
|
+
language: RawScript.language.MYSQL,
|
|
159
|
+
kind,
|
|
160
|
+
subkind: 'flow'
|
|
161
|
+
})
|
|
162
|
+
}}
|
|
144
163
|
/>
|
|
164
|
+
<FlowScriptPicker
|
|
165
|
+
label="BigQuery"
|
|
166
|
+
lang={Script.language.BIGQUERY}
|
|
167
|
+
on:click={() => {
|
|
168
|
+
dispatch('new', {
|
|
169
|
+
language: RawScript.language.BIGQUERY,
|
|
170
|
+
kind,
|
|
171
|
+
subkind: 'flow'
|
|
172
|
+
})
|
|
173
|
+
}}
|
|
174
|
+
/>
|
|
175
|
+
|
|
145
176
|
<FlowScriptPicker
|
|
146
177
|
label={`Docker`}
|
|
147
178
|
lang="docker"
|
|
@@ -165,6 +196,14 @@ let filter = '';
|
|
|
165
196
|
}}
|
|
166
197
|
/>
|
|
167
198
|
|
|
199
|
+
<FlowScriptPicker
|
|
200
|
+
label={`Powershell`}
|
|
201
|
+
lang="powershell"
|
|
202
|
+
on:click={() => {
|
|
203
|
+
dispatch('new', { language: RawScript.language.BASH, kind, subkind: 'powershell' })
|
|
204
|
+
}}
|
|
205
|
+
/>
|
|
206
|
+
|
|
168
207
|
<!-- <FlowScriptPicker
|
|
169
208
|
label={`MySQL`}
|
|
170
209
|
lang="mysql"
|
|
@@ -173,6 +212,18 @@ let filter = '';
|
|
|
173
212
|
/> -->
|
|
174
213
|
{/if}
|
|
175
214
|
{/if}
|
|
215
|
+
|
|
216
|
+
<FlowScriptPicker
|
|
217
|
+
label="TypeScript (Bun)"
|
|
218
|
+
lang={Script.language.DENO}
|
|
219
|
+
on:click={() => {
|
|
220
|
+
dispatch('new', {
|
|
221
|
+
language: RawScript.language.DENO,
|
|
222
|
+
kind,
|
|
223
|
+
subkind: 'flow'
|
|
224
|
+
})
|
|
225
|
+
}}
|
|
226
|
+
/>
|
|
176
227
|
</div>
|
|
177
228
|
</div>
|
|
178
229
|
|
|
@@ -63,11 +63,11 @@ async function loadFlows() {
|
|
|
63
63
|
{#if filter.length > 0 && filteredItems.length == 0}
|
|
64
64
|
<NoItemFound />
|
|
65
65
|
{/if}
|
|
66
|
-
<ul class="divide-y
|
|
66
|
+
<ul class="divide-y overflow-auto">
|
|
67
67
|
{#each filteredItems as { path, summary, description, marked }}
|
|
68
68
|
<li class="flex flex-row w-full">
|
|
69
69
|
<button
|
|
70
|
-
class="
|
|
70
|
+
class="p-4 gap-1 flex flex-row grow hover:bg-surface-hover bg-surface transition-all text-primary"
|
|
71
71
|
on:click={() => {
|
|
72
72
|
dispatch('pick', { path })
|
|
73
73
|
}}
|
|
@@ -29,11 +29,37 @@ $: stepPropPicker = getStepPropPicker($flowStateStore, parentModule, previousMod
|
|
|
29
29
|
<Splitpanes horizontal class="!max-h-[calc(100%-48px)]">
|
|
30
30
|
<Pane size={60} minSize={20} class="p-4">
|
|
31
31
|
{#if mod.value.type === 'forloopflow'}
|
|
32
|
-
<div class="
|
|
32
|
+
<div class="flex flex-row gap-8 mt-2 mb-6">
|
|
33
|
+
<div>
|
|
34
|
+
<div class="mb-2 text-sm font-bold"
|
|
35
|
+
>Skip failures <Tooltip
|
|
36
|
+
>If disabled, the flow will fail as soon as one of the iteration fail. Otherwise,
|
|
37
|
+
the error will be collected as the result of the iteration. Regardless of this
|
|
38
|
+
setting, if an error handler is defined, it will process the error.</Tooltip
|
|
39
|
+
></div
|
|
40
|
+
>
|
|
41
|
+
<Toggle
|
|
42
|
+
bind:checked={mod.value.skip_failures}
|
|
43
|
+
options={{
|
|
44
|
+
right: 'Skip failures'
|
|
45
|
+
}}
|
|
46
|
+
/>
|
|
47
|
+
</div>
|
|
48
|
+
<div>
|
|
49
|
+
<div class="mb-2 text-sm font-bold">Run in parallel</div>
|
|
50
|
+
<Toggle
|
|
51
|
+
bind:checked={mod.value.parallel}
|
|
52
|
+
options={{
|
|
53
|
+
right: 'All iterations run in parallel'
|
|
54
|
+
}}
|
|
55
|
+
/>
|
|
56
|
+
</div>
|
|
57
|
+
</div>
|
|
58
|
+
<div class="my-2 text-sm font-bold">
|
|
33
59
|
Iterator expression
|
|
34
60
|
<Tooltip>
|
|
35
61
|
List to iterate over. For more information see the
|
|
36
|
-
<a href="https://www.windmill.dev/docs/
|
|
62
|
+
<a href="https://www.windmill.dev/docs/flows/flow_loops">docs.</a>
|
|
37
63
|
</Tooltip>
|
|
38
64
|
</div>
|
|
39
65
|
{#if mod.value.iterator.type == 'javascript'}
|
|
@@ -63,32 +89,6 @@ $: stepPropPicker = getStepPropPicker($flowStateStore, parentModule, previousMod
|
|
|
63
89
|
}}
|
|
64
90
|
/>
|
|
65
91
|
{/if}
|
|
66
|
-
<div class="flex flex-row gap-8">
|
|
67
|
-
<div>
|
|
68
|
-
<div class="mt-6 mb-2 text-sm font-bold"
|
|
69
|
-
>Skip failures <Tooltip
|
|
70
|
-
>If disabled, the flow will fail as soon as one of the iteration fail. Otherwise,
|
|
71
|
-
the error will be collected as the result of the iteration. Regardless of this
|
|
72
|
-
setting, if an error handler is defined, it will process the error.</Tooltip
|
|
73
|
-
></div
|
|
74
|
-
>
|
|
75
|
-
<Toggle
|
|
76
|
-
bind:checked={mod.value.skip_failures}
|
|
77
|
-
options={{
|
|
78
|
-
right: 'Skip failures'
|
|
79
|
-
}}
|
|
80
|
-
/>
|
|
81
|
-
</div>
|
|
82
|
-
<div>
|
|
83
|
-
<div class="mt-6 mb-2 text-sm font-bold">Run in parallel</div>
|
|
84
|
-
<Toggle
|
|
85
|
-
bind:checked={mod.value.parallel}
|
|
86
|
-
options={{
|
|
87
|
-
right: 'All iterations run in parallel'
|
|
88
|
-
}}
|
|
89
|
-
/>
|
|
90
|
-
</div>
|
|
91
|
-
</div>
|
|
92
92
|
{/if}
|
|
93
93
|
</Pane>
|
|
94
94
|
<Pane size={40} minSize={20} class="flex flex-col flex-1">
|
|
@@ -100,7 +100,7 @@ $: stepPropPicker = getStepPropPicker($flowStateStore, parentModule, previousMod
|
|
|
100
100
|
<Tab value="mock">Mock</Tab>
|
|
101
101
|
|
|
102
102
|
<svelte:fragment slot="content">
|
|
103
|
-
<div class="overflow-hidden bg-
|
|
103
|
+
<div class="overflow-hidden bg-surface" style="height:calc(100% - 32px);">
|
|
104
104
|
<!-- <TabContent value="retries" class="flex flex-col flex-1 h-full">
|
|
105
105
|
<div class="p-4 overflow-y-auto">
|
|
106
106
|
<FlowRetries bind:flowModule={mod} />
|
|
@@ -26,12 +26,19 @@ import FlowPathViewer from './FlowPathViewer.svelte';
|
|
|
26
26
|
import InputTransformSchemaForm from '../../InputTransformSchemaForm.svelte';
|
|
27
27
|
import { schemaToObject } from '../../../schema';
|
|
28
28
|
import FlowModuleMock from './FlowModuleMock.svelte';
|
|
29
|
+
import Tooltip from '../../Tooltip.svelte';
|
|
30
|
+
import { SecondsInput } from '../../common';
|
|
31
|
+
import DiffEditor from '../../DiffEditor.svelte';
|
|
32
|
+
import FlowModuleTimeout from './FlowModuleTimeout.svelte';
|
|
29
33
|
const { selectedId, previewArgs, flowStateStore, flowStore, saveDraft } = getContext('FlowEditorContext');
|
|
30
34
|
export let flowModule;
|
|
31
35
|
export let failureModule = false;
|
|
32
36
|
export let parentModule = undefined;
|
|
33
37
|
export let previousModule;
|
|
38
|
+
export let scriptKind = 'script';
|
|
39
|
+
export let scriptTemplate = 'script';
|
|
34
40
|
let editor;
|
|
41
|
+
let diffEditor;
|
|
35
42
|
let modulePreview;
|
|
36
43
|
let websocketAlive = {
|
|
37
44
|
pyright: false,
|
|
@@ -72,6 +79,9 @@ async function reload(flowModule) {
|
|
|
72
79
|
const { input_transforms, schema } = await loadSchemaFromModule(flowModule);
|
|
73
80
|
validCode = true;
|
|
74
81
|
inputTransformSchemaForm?.setArgs(input_transforms);
|
|
82
|
+
if (flowModule.value.type == 'rawscript' && flowModule.value.lock != undefined) {
|
|
83
|
+
flowModule.value.lock = undefined;
|
|
84
|
+
}
|
|
75
85
|
await tick();
|
|
76
86
|
if (!deepEqual(schema, $flowStateStore[flowModule.id]?.schema)) {
|
|
77
87
|
if (!$flowStateStore[flowModule.id]) {
|
|
@@ -113,6 +123,7 @@ let forceReload = 0;
|
|
|
113
123
|
on:toggleSleep={() => selectAdvanced('sleep')}
|
|
114
124
|
on:toggleMock={() => selectAdvanced('mock')}
|
|
115
125
|
on:toggleRetry={() => selectAdvanced('retries')}
|
|
126
|
+
on:toggleConcurrency={() => selectAdvanced('concurrency')}
|
|
116
127
|
on:toggleCache={() => selectAdvanced('cache')}
|
|
117
128
|
on:toggleStopAfterIf={() => selectAdvanced('early-stop')}
|
|
118
129
|
on:fork={async () => {
|
|
@@ -122,7 +133,6 @@ let forceReload = 0;
|
|
|
122
133
|
}}
|
|
123
134
|
on:reload={async () => {
|
|
124
135
|
if (flowModule.value.type == 'script') {
|
|
125
|
-
console.log('reload')
|
|
126
136
|
if (flowModule.value.hash != undefined) {
|
|
127
137
|
flowModule.value.hash = await getLatestHashForScript(flowModule.value.path)
|
|
128
138
|
}
|
|
@@ -148,9 +158,12 @@ let forceReload = 0;
|
|
|
148
158
|
<EditorBar
|
|
149
159
|
{validCode}
|
|
150
160
|
{editor}
|
|
161
|
+
{diffEditor}
|
|
151
162
|
lang={flowModule.value['language'] ?? 'deno'}
|
|
152
163
|
{websocketAlive}
|
|
153
164
|
iconOnly={width < 850}
|
|
165
|
+
kind={scriptKind}
|
|
166
|
+
template={scriptTemplate}
|
|
154
167
|
/>
|
|
155
168
|
</div>
|
|
156
169
|
{/if}
|
|
@@ -196,6 +209,12 @@ let forceReload = 0;
|
|
|
196
209
|
}}
|
|
197
210
|
fixedOverflowWidgets={true}
|
|
198
211
|
/>
|
|
212
|
+
<DiffEditor
|
|
213
|
+
bind:this={diffEditor}
|
|
214
|
+
automaticLayout
|
|
215
|
+
fixedOverflowWidgets
|
|
216
|
+
class="hidden h-full"
|
|
217
|
+
/>
|
|
199
218
|
{/key}
|
|
200
219
|
{:else if flowModule.value.type === 'script'}
|
|
201
220
|
<div class="border-t border-gray-200">
|
|
@@ -234,6 +253,9 @@ let forceReload = 0;
|
|
|
234
253
|
pickableProperties={stepPropPicker.pickableProperties}
|
|
235
254
|
bind:this={modulePreview}
|
|
236
255
|
mod={flowModule}
|
|
256
|
+
{editor}
|
|
257
|
+
{diffEditor}
|
|
258
|
+
lang={flowModule.value['language'] ?? 'deno'}
|
|
237
259
|
schema={$flowStateStore[$selectedId]?.schema ?? {}}
|
|
238
260
|
/>
|
|
239
261
|
{:else if selected === 'advanced'}
|
|
@@ -241,11 +263,13 @@ let forceReload = 0;
|
|
|
241
263
|
<Tab value="retries">Retries</Tab>
|
|
242
264
|
{#if !$selectedId.includes('failure')}
|
|
243
265
|
<Tab value="cache">Cache</Tab>
|
|
266
|
+
<Tab value="concurrency">Concurrency</Tab>
|
|
244
267
|
<Tab value="early-stop">Early Stop/Break</Tab>
|
|
245
268
|
<Tab value="suspend">Suspend/Approval</Tab>
|
|
246
269
|
<Tab value="sleep">Sleep</Tab>
|
|
247
270
|
<Tab value="mock">Mock</Tab>
|
|
248
271
|
<Tab value="same_worker">Shared Directory</Tab>
|
|
272
|
+
<Tab value="timeout">Timeout</Tab>
|
|
249
273
|
{/if}
|
|
250
274
|
</Tabs>
|
|
251
275
|
<div class="h-[calc(100%-32px)] overflow-auto p-4">
|
|
@@ -269,6 +293,42 @@ let forceReload = 0;
|
|
|
269
293
|
<div>
|
|
270
294
|
<FlowModuleMock bind:flowModule />
|
|
271
295
|
</div>
|
|
296
|
+
{:else if advancedSelected === 'timeout'}
|
|
297
|
+
<div>
|
|
298
|
+
<FlowModuleTimeout bind:flowModule />
|
|
299
|
+
</div>
|
|
300
|
+
{:else if advancedSelected === 'concurrency'}
|
|
301
|
+
<div>
|
|
302
|
+
<h2 class="pb-4">
|
|
303
|
+
Concurrency Limits
|
|
304
|
+
<Tooltip>Allowed concurrency within a given timeframe</Tooltip>
|
|
305
|
+
</h2>
|
|
306
|
+
</div>
|
|
307
|
+
{#if flowModule.value.type == 'rawscript'}
|
|
308
|
+
<div>
|
|
309
|
+
<div class="text-xs font-bold !mt-2"
|
|
310
|
+
>Max number of executions within the time window</div
|
|
311
|
+
>
|
|
312
|
+
<div class="flex flex-row gap-2 max-w-sm"
|
|
313
|
+
><input bind:value={flowModule.value.concurrent_limit} type="number" />
|
|
314
|
+
<Button
|
|
315
|
+
size="sm"
|
|
316
|
+
color="light"
|
|
317
|
+
on:click={() => {
|
|
318
|
+
if (flowModule.value.type == 'rawscript') {
|
|
319
|
+
flowModule.value.concurrent_limit = undefined
|
|
320
|
+
}
|
|
321
|
+
}}
|
|
322
|
+
variant="border">Remove Limits</Button
|
|
323
|
+
></div
|
|
324
|
+
>
|
|
325
|
+
<div class="text-xs font-bold !mt-2">Time window in seconds</div>
|
|
326
|
+
<SecondsInput bind:seconds={flowModule.value.concurrency_time_window_s} />
|
|
327
|
+
</div>
|
|
328
|
+
{:else}
|
|
329
|
+
The concurrency limit of a workspace script is only settable in the script
|
|
330
|
+
metadata itself. For hub scripts, this feature is non available yet.
|
|
331
|
+
{/if}
|
|
272
332
|
{:else if advancedSelected === 'same_worker'}
|
|
273
333
|
<div>
|
|
274
334
|
<Alert type="info" title="Share a directory between steps">
|
|
@@ -6,6 +6,8 @@ declare const __propDef: {
|
|
|
6
6
|
failureModule?: boolean | undefined;
|
|
7
7
|
parentModule?: FlowModule | undefined;
|
|
8
8
|
previousModule: FlowModule | undefined;
|
|
9
|
+
scriptKind?: "script" | "trigger" | "approval" | undefined;
|
|
10
|
+
scriptTemplate?: "script" | "mysql" | "pgsql" | "docker" | "powershell" | undefined;
|
|
9
11
|
};
|
|
10
12
|
events: {
|
|
11
13
|
[evt: string]: CustomEvent<any>;
|