windmill-components 1.70.0 → 1.77.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/app.css +12 -1
- package/components/AppConnect.svelte +4 -3
- package/components/DisplayResult.svelte +28 -10
- package/components/Dropdown.svelte +14 -4
- package/components/FieldHeader.svelte +12 -8
- package/components/FlowBuilder.svelte +107 -39
- package/components/FlowBuilder.svelte.d.ts +5 -0
- package/components/FlowGraphViewer.svelte +6 -5
- package/components/FlowJobResult.svelte +3 -3
- package/components/FlowPreviewContent.svelte +3 -8
- package/components/FlowStatusViewer.svelte +21 -8
- package/components/FolderUsageInfo.svelte +16 -6
- package/components/FolderUsageInfo.svelte.d.ts +2 -0
- package/components/GroupEditor.svelte +8 -0
- package/components/InputTransformForm.svelte +13 -20
- package/components/InputTransformSchemaForm.svelte +103 -0
- package/components/InputTransformSchemaForm.svelte.d.ts +24 -0
- package/components/LogViewer.svelte +1 -1
- package/components/ModulePreview.svelte +3 -2
- package/components/Multiselect.svelte +1 -1
- package/components/PageHeader.svelte +1 -1
- package/components/Path.svelte +35 -12
- package/components/Popover.svelte +2 -13
- package/components/ResourcePicker.svelte +33 -14
- package/components/RunChart.svelte +24 -5
- package/components/RunForm.svelte +5 -6
- package/components/RunForm.svelte.d.ts +1 -0
- package/components/SchemaForm.svelte +59 -57
- package/components/SchemaForm.svelte.d.ts +0 -5
- package/components/ScriptBuilder.svelte +151 -135
- package/components/ScriptPicker.svelte +3 -0
- package/components/SettingSection.svelte +44 -0
- package/components/SettingSection.svelte.d.ts +21 -0
- package/components/SimpleEditor.svelte +4 -1
- package/components/SimpleEditor.svelte.d.ts +2 -0
- package/components/Slider.svelte +6 -1
- package/components/Slider.svelte.d.ts +1 -0
- package/components/TemplateEditor.svelte +1 -1
- package/components/TestJobLoader.svelte +2 -2
- package/components/Toggle.svelte +17 -4
- package/components/Toggle.svelte.d.ts +2 -0
- package/components/Tooltip.svelte +4 -2
- package/components/UserSettings.svelte +2 -0
- package/components/WhitelistIp.svelte +1 -3
- package/components/apps/components/buttons/AppButton.svelte +45 -23
- package/components/apps/components/buttons/AppButton.svelte.d.ts +2 -0
- package/components/apps/components/buttons/AppForm.svelte +18 -12
- package/components/apps/components/buttons/AppForm.svelte.d.ts +3 -0
- package/components/apps/components/buttons/AppFormButton.svelte +14 -10
- package/components/apps/components/buttons/AppFormButton.svelte.d.ts +3 -0
- package/components/apps/components/display/AppBarChart.svelte +15 -7
- package/components/apps/components/display/AppBarChart.svelte.d.ts +3 -0
- package/components/apps/components/display/AppDisplayComponent.svelte +17 -12
- package/components/apps/components/display/AppDisplayComponent.svelte.d.ts +1 -0
- package/components/apps/components/display/AppHtml.svelte +18 -4
- package/components/apps/components/display/AppHtml.svelte.d.ts +3 -0
- package/components/apps/components/display/AppIcon.svelte +20 -8
- package/components/apps/components/display/AppIcon.svelte.d.ts +3 -0
- package/components/apps/components/display/AppImage.svelte +17 -10
- package/components/apps/components/display/AppImage.svelte.d.ts +3 -0
- package/components/apps/components/display/AppMap.svelte +214 -0
- package/components/apps/components/display/AppMap.svelte.d.ts +23 -0
- package/components/apps/components/display/AppPdf.svelte +304 -0
- package/components/apps/components/display/AppPdf.svelte.d.ts +24 -0
- package/components/apps/components/display/AppPieChart.svelte +15 -7
- package/components/apps/components/display/AppPieChart.svelte.d.ts +3 -0
- package/components/apps/components/display/AppScatterChart.svelte +12 -4
- package/components/apps/components/display/AppScatterChart.svelte.d.ts +3 -0
- package/components/apps/components/display/AppText.svelte +38 -32
- package/components/apps/components/display/AppText.svelte.d.ts +1 -0
- package/components/apps/components/display/AppTimeseries.svelte +12 -4
- package/components/apps/components/display/AppTimeseries.svelte.d.ts +3 -0
- package/components/apps/components/display/PlotlyHtml.svelte +8 -14
- package/components/apps/components/display/PlotlyHtml.svelte.d.ts +1 -1
- package/components/apps/components/display/VegaLiteHtml.svelte +3 -8
- package/components/apps/components/display/VegaLiteHtml.svelte.d.ts +1 -0
- package/components/apps/components/display/index.d.ts +3 -0
- package/components/apps/components/display/index.js +3 -0
- package/components/apps/components/display/table/AppAggridTable.svelte +20 -8
- package/components/apps/components/display/table/AppAggridTable.svelte.d.ts +1 -0
- package/components/apps/components/display/table/AppTable.svelte +69 -21
- package/components/apps/components/display/table/AppTable.svelte.d.ts +3 -1
- package/components/apps/components/display/table/AppTableFooter.svelte +8 -1
- package/components/apps/components/display/table/AppTableFooter.svelte.d.ts +2 -0
- package/components/apps/components/helpers/AlignWrapper.svelte +13 -7
- package/components/apps/components/helpers/AlignWrapper.svelte.d.ts +3 -1
- package/components/apps/components/helpers/HiddenComponent.svelte +5 -1
- package/components/apps/components/helpers/HiddenComponent.svelte.d.ts +1 -0
- package/components/apps/components/helpers/InputValue.svelte +58 -52
- package/components/apps/components/helpers/InputValue.svelte.d.ts +4 -3
- package/components/apps/components/helpers/NonRunnableComponent.svelte +18 -3
- package/components/apps/components/helpers/NonRunnableComponent.svelte.d.ts +1 -0
- package/components/apps/components/helpers/RefreshButton.svelte +3 -4
- package/components/apps/components/helpers/ResizeWrapper.svelte +24 -0
- package/components/apps/components/helpers/ResizeWrapper.svelte.d.ts +19 -0
- package/components/apps/components/helpers/RunnableComponent.svelte +126 -91
- package/components/apps/components/helpers/RunnableComponent.svelte.d.ts +5 -1
- package/components/apps/components/helpers/RunnableWrapper.svelte +11 -5
- package/components/apps/components/helpers/RunnableWrapper.svelte.d.ts +4 -1
- package/components/apps/components/helpers/eval.d.ts +5 -0
- package/components/apps/components/helpers/eval.js +57 -0
- package/components/apps/components/inputs/AppCheckbox.svelte +8 -2
- package/components/apps/components/inputs/AppCheckbox.svelte.d.ts +3 -0
- package/components/apps/components/inputs/AppDateInput.svelte +25 -18
- package/components/apps/components/inputs/AppDateInput.svelte.d.ts +6 -1
- package/components/apps/components/inputs/AppFileInput.svelte +22 -14
- package/components/apps/components/inputs/AppFileInput.svelte.d.ts +3 -0
- package/components/apps/components/inputs/AppMultiSelect.svelte +82 -0
- package/components/apps/components/inputs/AppMultiSelect.svelte.d.ts +27 -0
- package/components/apps/components/inputs/AppNumberInput.svelte +20 -16
- package/components/apps/components/inputs/AppNumberInput.svelte.d.ts +5 -0
- package/components/apps/components/inputs/AppRangeInput.svelte +55 -14
- package/components/apps/components/inputs/AppRangeInput.svelte.d.ts +3 -0
- package/components/apps/components/inputs/AppSelect.svelte +58 -21
- package/components/apps/components/inputs/AppSelect.svelte.d.ts +3 -0
- package/components/apps/components/inputs/AppSliderInputs.svelte +41 -9
- package/components/apps/components/inputs/AppSliderInputs.svelte.d.ts +3 -0
- package/components/apps/components/inputs/AppTextInput.svelte +53 -19
- package/components/apps/components/inputs/AppTextInput.svelte.d.ts +6 -0
- package/components/apps/components/inputs/currency/AppCurrencyInput.svelte +13 -3
- package/components/apps/components/inputs/currency/AppCurrencyInput.svelte.d.ts +3 -0
- package/components/apps/components/inputs/currency/CurrencyInput.svelte +2 -0
- package/components/apps/components/inputs/currency/CurrencyInput.svelte.d.ts +1 -0
- package/components/apps/components/layout/AppContainer.svelte +20 -17
- package/components/apps/components/layout/AppContainer.svelte.d.ts +3 -0
- package/components/apps/components/layout/AppDivider.svelte +24 -4
- package/components/apps/components/layout/AppDivider.svelte.d.ts +3 -1
- package/components/apps/components/layout/AppDrawer.svelte +86 -0
- package/components/apps/components/layout/AppDrawer.svelte.d.ts +24 -0
- package/components/apps/components/layout/AppSplitpanes.svelte +83 -0
- package/components/apps/components/layout/AppSplitpanes.svelte.d.ts +26 -0
- package/components/apps/components/layout/AppTabs.svelte +112 -40
- package/components/apps/components/layout/AppTabs.svelte.d.ts +4 -0
- package/components/apps/components/layout/index.d.ts +2 -0
- package/components/apps/components/layout/index.js +2 -0
- package/components/apps/editor/AppEditor.svelte +201 -132
- package/components/apps/editor/AppEditor.svelte.d.ts +3 -1
- package/components/apps/editor/AppEditorHeader.svelte +149 -66
- package/components/apps/editor/AppInputs.svelte +3 -3
- package/components/apps/editor/AppPreview.svelte +21 -7
- package/components/apps/editor/ComponentHeader.svelte +17 -4
- package/components/apps/editor/ComponentHeader.svelte.d.ts +2 -0
- package/components/apps/editor/GridEditor.svelte +86 -70
- package/components/apps/editor/GridPanel.svelte +29 -0
- package/components/apps/editor/GridPanel.svelte.d.ts +18 -0
- package/components/apps/editor/RecomputeAllComponents.svelte +14 -6
- package/components/apps/editor/SettingsPanel.svelte +30 -27
- package/components/apps/editor/SubGridEditor.svelte +82 -50
- package/components/apps/editor/SubGridEditor.svelte.d.ts +8 -4
- package/components/apps/editor/appUtils.d.ts +22 -3
- package/components/apps/editor/appUtils.js +221 -47
- package/components/apps/editor/component/Component.svelte +281 -61
- package/components/apps/editor/component/Component.svelte.d.ts +3 -1
- package/components/apps/editor/component/ComponentNavigation.svelte +170 -0
- package/components/apps/editor/component/ComponentNavigation.svelte.d.ts +14 -0
- package/components/apps/editor/component/components.d.ts +15 -3
- package/components/apps/editor/component/components.js +409 -54
- package/components/apps/editor/component/default-codes.js +6 -6
- package/components/apps/editor/component/sets.js +11 -3
- package/components/apps/editor/componentsPanel/ComponentList.svelte +72 -29
- package/components/apps/editor/componentsPanel/CssProperty.svelte +59 -23
- package/components/apps/editor/componentsPanel/CssProperty.svelte.d.ts +2 -1
- package/components/apps/editor/componentsPanel/CssSettings.svelte +56 -9
- package/components/apps/editor/componentsPanel/ListItem.svelte +23 -12
- package/components/apps/editor/componentsPanel/componentStaticValues.d.ts +2 -0
- package/components/apps/editor/componentsPanel/componentStaticValues.js +15 -2
- package/components/apps/editor/contextPanel/ComponentOutput.svelte +77 -0
- package/components/apps/editor/contextPanel/ComponentOutput.svelte.d.ts +21 -0
- package/components/apps/editor/contextPanel/ComponentOutputViewer.svelte +10 -6
- package/components/apps/editor/contextPanel/ContextPanel.svelte +81 -91
- package/components/apps/editor/contextPanel/SubGridOutput.svelte +71 -0
- package/components/apps/editor/contextPanel/SubGridOutput.svelte.d.ts +19 -0
- package/components/apps/editor/contextPanel/components/BackgroundScriptOutput.svelte +38 -0
- package/components/apps/editor/contextPanel/components/BackgroundScriptOutput.svelte.d.ts +19 -0
- package/components/apps/editor/contextPanel/components/BackgroundScriptsOutput.svelte +10 -0
- package/components/apps/editor/contextPanel/components/BackgroundScriptsOutput.svelte.d.ts +16 -0
- package/components/apps/editor/contextPanel/components/MinMaxButton.svelte +25 -0
- package/components/apps/editor/contextPanel/components/MinMaxButton.svelte.d.ts +16 -0
- package/components/apps/editor/contextPanel/components/OutputHeader.svelte +78 -0
- package/components/apps/editor/contextPanel/components/OutputHeader.svelte.d.ts +26 -0
- package/components/apps/editor/contextPanel/components/TableActionOutput.svelte +19 -0
- package/components/apps/editor/contextPanel/components/TableActionOutput.svelte.d.ts +18 -0
- package/components/apps/editor/contextPanel/components/TableActionsOutput.svelte +14 -0
- package/components/apps/editor/contextPanel/components/TableActionsOutput.svelte.d.ts +18 -0
- package/components/apps/editor/inlineScriptsPanel/EmptyInlineScript.svelte +55 -13
- package/components/apps/editor/inlineScriptsPanel/EmptyInlineScript.svelte.d.ts +1 -0
- package/components/apps/editor/inlineScriptsPanel/InlineScriptEditor.svelte +126 -62
- package/components/apps/editor/inlineScriptsPanel/InlineScriptEditor.svelte.d.ts +5 -0
- package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorDrawer.svelte +1 -1
- package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorPanel.svelte +11 -5
- package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorPanel.svelte.d.ts +1 -0
- package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanel.svelte +26 -17
- package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanelList.svelte +95 -85
- package/components/apps/editor/inlineScriptsPanel/utils.d.ts +5 -9
- package/components/apps/editor/inlineScriptsPanel/utils.js +19 -8
- package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte +10 -9
- package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte.d.ts +21 -12
- package/components/apps/editor/settingsPanel/ComponentInputTypeEditor.svelte +1 -1
- package/components/apps/editor/settingsPanel/ComponentPanel.svelte +119 -79
- package/components/apps/editor/settingsPanel/ComponentPanel.svelte.d.ts +1 -0
- package/components/apps/editor/settingsPanel/GridPane.svelte +75 -0
- package/components/apps/editor/settingsPanel/GridPane.svelte.d.ts +20 -0
- package/components/apps/editor/settingsPanel/GridTab.svelte +9 -17
- package/components/apps/editor/settingsPanel/GridTab.svelte.d.ts +2 -0
- package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte +2 -1
- package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte +1 -1
- package/components/apps/editor/settingsPanel/Recompute.svelte +2 -1
- package/components/apps/editor/settingsPanel/SelectedRunnable.svelte +7 -1
- package/components/apps/editor/settingsPanel/TableActions.svelte +30 -2
- package/components/apps/editor/settingsPanel/common/PanelSection.svelte +2 -2
- package/components/apps/editor/settingsPanel/inputEditor/ColorInput.svelte +48 -0
- package/components/apps/editor/settingsPanel/inputEditor/ColorInput.svelte.d.ts +19 -0
- package/components/apps/editor/settingsPanel/inputEditor/ConnectedInputEditor.svelte +2 -8
- package/components/apps/editor/settingsPanel/inputEditor/EvalInputEditor.svelte +2 -2
- package/components/apps/editor/settingsPanel/inputEditor/IconSelectInput.svelte +77 -41
- package/components/apps/editor/settingsPanel/inputEditor/IconSelectInput.svelte.d.ts +2 -0
- package/components/apps/editor/settingsPanel/inputEditor/JsonEditor.svelte +3 -3
- package/components/apps/editor/settingsPanel/inputEditor/JsonEditor.svelte.d.ts +4 -1
- package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte +54 -6
- package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte.d.ts +1 -0
- package/components/apps/editor/settingsPanel/inputEditor/UploadInputEditor.svelte +7 -9
- package/components/apps/editor/settingsPanel/inputEditor/UploadInputEditor.svelte.d.ts +1 -1
- package/components/apps/editor/settingsPanel/mainInput/InlineScriptList.svelte +1 -0
- package/components/apps/editor/settingsPanel/mainInput/InlineScriptList.svelte.d.ts +1 -0
- package/components/apps/editor/settingsPanel/mainInput/RunnableSelector.svelte +1 -1
- package/components/apps/inputType.d.ts +6 -5
- package/components/apps/rx.d.ts +6 -4
- package/components/apps/rx.js +36 -15
- package/components/apps/store.d.ts +6 -1
- package/components/apps/svelte-grid/Grid.svelte +171 -0
- package/components/apps/svelte-grid/Grid.svelte.d.ts +47 -0
- package/components/apps/svelte-grid/LICENSE +23 -0
- package/components/apps/svelte-grid/MoveResize.svelte +328 -0
- package/components/apps/svelte-grid/MoveResize.svelte.d.ts +46 -0
- package/components/apps/svelte-grid/types.d.ts +25 -0
- package/components/apps/svelte-grid/utils/container.d.ts +1 -0
- package/components/apps/svelte-grid/utils/container.js +4 -0
- package/components/apps/svelte-grid/utils/helper.d.ts +14 -0
- package/components/apps/svelte-grid/utils/helper.js +36 -0
- package/components/apps/svelte-grid/utils/item.d.ts +14 -0
- package/components/apps/svelte-grid/utils/item.js +192 -0
- package/components/apps/svelte-grid/utils/matrix.d.ts +6 -0
- package/components/apps/svelte-grid/utils/matrix.js +53 -0
- package/components/apps/svelte-grid/utils/other.d.ts +3 -0
- package/components/apps/svelte-grid/utils/other.js +30 -0
- package/components/apps/types.d.ts +21 -8
- package/components/apps/utils.d.ts +3 -3
- package/components/apps/utils.js +34 -56
- package/components/common/CloseButton.svelte +18 -0
- package/components/common/CloseButton.svelte.d.ts +27 -0
- package/components/common/badge/Badge.svelte +6 -1
- package/components/common/badge/Badge.svelte.d.ts +1 -0
- package/components/common/button/ButtonPopup.svelte +2 -0
- package/components/common/button/ButtonPopup.svelte.d.ts +1 -0
- package/components/common/button/UndoRedo.svelte +32 -0
- package/components/common/button/UndoRedo.svelte.d.ts +20 -0
- package/components/common/drawer/Drawer.svelte +10 -4
- package/components/common/drawer/Drawer.svelte.d.ts +3 -1
- package/components/common/drawer/DrawerContent.svelte +2 -7
- package/components/common/fileInput/FileInput.svelte +47 -21
- package/components/common/fileInput/FileInput.svelte.d.ts +3 -1
- package/components/common/fileInput/model.d.ts +1 -0
- package/components/common/fileInput/model.js +1 -0
- package/components/common/index.d.ts +1 -0
- package/components/common/index.js +1 -0
- package/components/common/languageIcons/JavaScript.svelte +11 -0
- package/components/common/languageIcons/JavaScript.svelte.d.ts +25 -0
- package/components/common/languageIcons/LanguageIcon.svelte +3 -1
- package/components/common/languageIcons/LanguageIcon.svelte.d.ts +1 -1
- package/components/common/menu/Menu.svelte +3 -2
- package/components/common/menu/Menu.svelte.d.ts +2 -1
- package/components/common/modal/Modal.svelte +9 -4
- package/components/common/modal/Modal.svelte.d.ts +2 -0
- package/components/common/popup/Popup.svelte +2 -1
- package/components/common/popup/Popup.svelte.d.ts +9 -0
- package/components/common/table/AppRow.svelte +14 -8
- package/components/common/table/AppRow.svelte.d.ts +1 -0
- package/components/common/table/FlowRow.svelte +22 -12
- package/components/common/table/FlowRow.svelte.d.ts +1 -0
- package/components/common/table/ScriptRow.svelte +43 -14
- package/components/common/table/ScriptRow.svelte.d.ts +1 -0
- package/components/common/tabs/Tab.svelte +13 -5
- package/components/common/tabs/Tab.svelte.d.ts +6 -1
- package/components/common/tabs/Tabs.svelte +8 -6
- package/components/common/tabs/Tabs.svelte.d.ts +3 -1
- package/components/flows/FlowEditor.svelte +6 -4
- package/components/flows/common/FlowCardHeader.svelte +4 -1
- package/components/flows/content/BranchPredicateEditor.svelte +3 -4
- package/components/flows/content/CapturePayload.svelte +1 -2
- package/components/flows/content/FlowBranchesAllWrapper.svelte +1 -1
- package/components/flows/content/FlowConstants.svelte +7 -13
- package/components/flows/content/FlowEditorPanel.svelte +4 -3
- package/components/flows/content/FlowFailureModule.svelte +2 -1
- package/components/flows/content/FlowInput.svelte +4 -2
- package/components/flows/content/FlowLoop.svelte +3 -4
- package/components/flows/content/FlowModuleComponent.svelte +23 -11
- package/components/flows/content/FlowModuleEarlyStop.svelte +3 -1
- package/components/flows/content/FlowModuleHeader.svelte +26 -3
- package/components/flows/content/FlowModuleHeader.svelte.d.ts +1 -0
- package/components/flows/content/FlowModuleSleep.svelte +2 -2
- package/components/flows/content/FlowModuleWrapper.svelte +2 -8
- package/components/flows/content/FlowSchedules.svelte +1 -2
- package/components/flows/content/FlowSettings.svelte +17 -37
- package/components/flows/content/ScriptEditorDrawer.svelte +98 -0
- package/components/flows/content/ScriptEditorDrawer.svelte.d.ts +19 -0
- package/components/flows/flowState.d.ts +2 -3
- package/components/flows/flowState.js +1 -4
- package/components/flows/flowStateUtils.d.ts +7 -6
- package/components/flows/flowStateUtils.js +5 -9
- package/components/flows/flowStore.d.ts +5 -4
- package/components/flows/flowStore.js +5 -17
- package/components/flows/header/FlowImportExportMenu.svelte +2 -1
- package/components/flows/map/FlowConstantsItem.svelte +2 -2
- package/components/flows/map/FlowErrorHandlerItem.svelte +12 -13
- package/components/flows/map/FlowInputsItem.svelte +2 -3
- package/components/flows/map/FlowModuleSchemaItem.svelte +88 -91
- package/components/flows/map/FlowModuleSchemaItem.svelte.d.ts +3 -3
- package/components/flows/map/FlowModuleSchemaMap.svelte +164 -138
- package/components/flows/map/FlowModuleSchemaMap.svelte.d.ts +1 -2
- package/components/flows/map/FlowSettingsItem.svelte +5 -4
- package/components/flows/map/InsertModuleButton.svelte +12 -10
- package/components/flows/map/InsertModuleButton.svelte.d.ts +1 -0
- package/components/flows/map/MapItem.svelte +176 -103
- package/components/flows/map/MapItem.svelte.d.ts +20 -2
- package/components/flows/map/VirtualItem.svelte +129 -0
- package/components/flows/map/VirtualItem.svelte.d.ts +44 -0
- package/components/flows/pickers/FlowScriptPicker.svelte.d.ts +1 -1
- package/components/flows/pickers/WorkspaceScriptPicker.svelte +1 -1
- package/components/flows/previousResults.d.ts +1 -1
- package/components/flows/previousResults.js +32 -17
- package/components/flows/types.d.ts +13 -1
- package/components/flows/utils.js +1 -1
- package/components/graph/FlowGraph.svelte +227 -167
- package/components/graph/FlowGraph.svelte.d.ts +14 -1
- package/components/graph/model.d.ts +6 -36
- package/components/graph/model.js +1 -1
- package/components/graph/svelvet/LICENSE +21 -0
- package/components/graph/svelvet/collapsible/controllers/util.d.ts +15 -0
- package/components/graph/svelvet/collapsible/controllers/util.js +144 -0
- package/components/graph/svelvet/collapsible/models/Collapsible.d.ts +17 -0
- package/components/graph/svelvet/collapsible/models/Collapsible.js +25 -0
- package/components/graph/svelvet/collapsible/types/types.d.ts +8 -0
- package/components/graph/svelvet/collapsible/types/types.js +1 -0
- package/components/graph/svelvet/container/README.md +7 -0
- package/components/graph/svelvet/container/controllers/middleware.d.ts +18 -0
- package/components/graph/svelvet/container/controllers/middleware.js +101 -0
- package/components/graph/svelvet/container/views/GraphView.svelte +252 -0
- package/components/graph/svelvet/container/views/GraphView.svelte.d.ts +25 -0
- package/components/graph/svelvet/container/views/Svelvet.svelte +131 -0
- package/components/graph/svelvet/container/views/Svelvet.svelte.d.ts +41 -0
- package/components/graph/svelvet/customCss/controllers/getCss.d.ts +2 -0
- package/components/graph/svelvet/customCss/controllers/getCss.js +57 -0
- package/components/graph/svelvet/d3/controllers/d3.d.ts +5 -0
- package/components/graph/svelvet/d3/controllers/d3.js +59 -0
- package/components/graph/svelvet/edges/controllers/anchorCbDev.d.ts +4 -0
- package/components/graph/svelvet/edges/controllers/anchorCbDev.js +92 -0
- package/components/graph/svelvet/edges/controllers/anchorCbUser.d.ts +57 -0
- package/components/graph/svelvet/edges/controllers/anchorCbUser.js +73 -0
- package/components/graph/svelvet/edges/controllers/util.d.ts +37 -0
- package/components/graph/svelvet/edges/controllers/util.js +72 -0
- package/components/graph/svelvet/edges/models/Anchor.d.ts +48 -0
- package/components/graph/svelvet/edges/models/Anchor.js +122 -0
- package/components/graph/svelvet/edges/models/Edge.d.ts +47 -0
- package/components/graph/svelvet/edges/models/Edge.js +107 -0
- package/components/graph/svelvet/edges/types/types.d.ts +18 -0
- package/components/graph/svelvet/edges/types/types.js +1 -0
- package/components/graph/svelvet/edges/views/Edges/BaseEdge.svelte +105 -0
- package/components/graph/svelvet/edges/views/Edges/BaseEdge.svelte.d.ts +18 -0
- package/components/graph/svelvet/edges/views/Edges/EdgeAnchor.svelte +12 -0
- package/components/graph/svelvet/edges/views/Edges/EdgeAnchor.svelte.d.ts +17 -0
- package/components/graph/svelvet/edges/views/Edges/EdgeText.svelte +43 -0
- package/components/graph/svelvet/edges/views/Edges/EdgeText.svelte.d.ts +17 -0
- package/components/graph/svelvet/edges/views/Edges/SimpleBezierEdge.svelte +137 -0
- package/components/graph/svelvet/edges/views/Edges/SimpleBezierEdge.svelte.d.ts +17 -0
- package/components/graph/svelvet/edges/views/Edges/SmoothStepEdge.svelte +176 -0
- package/components/graph/svelvet/edges/views/Edges/SmoothStepEdge.svelte.d.ts +60 -0
- package/components/graph/svelvet/edges/views/Edges/StepEdge.svelte +8 -0
- package/components/graph/svelvet/edges/views/Edges/StepEdge.svelte.d.ts +25 -0
- package/components/graph/svelvet/edges/views/Edges/types.d.ts +52 -0
- package/components/graph/svelvet/edges/views/Edges/types.js +1 -0
- package/components/graph/svelvet/edges/views/Edges/utils.d.ts +33 -0
- package/components/graph/svelvet/edges/views/Edges/utils.js +31 -0
- package/components/graph/svelvet/editEdges/views/EditEdge.svelte +151 -0
- package/components/graph/svelvet/editEdges/views/EditEdge.svelte.d.ts +20 -0
- package/components/graph/svelvet/nodes/controllers/util.d.ts +9 -0
- package/components/graph/svelvet/nodes/controllers/util.js +13 -0
- package/components/graph/svelvet/nodes/models/Node.d.ts +78 -0
- package/components/graph/svelvet/nodes/models/Node.js +195 -0
- package/components/graph/svelvet/nodes/views/EditNode.svelte +147 -0
- package/components/graph/svelvet/nodes/views/EditNode.svelte.d.ts +33 -0
- package/components/graph/svelvet/nodes/views/Node.svelte +85 -0
- package/components/graph/svelvet/nodes/views/Node.svelte.d.ts +22 -0
- package/components/graph/svelvet/resizableNodes/controllers/util.d.ts +11 -0
- package/components/graph/svelvet/resizableNodes/controllers/util.js +24 -0
- package/components/graph/svelvet/resizableNodes/models/ResizeNode.d.ts +33 -0
- package/components/graph/svelvet/resizableNodes/models/ResizeNode.js +71 -0
- package/components/graph/svelvet/resizableNodes/views/ResizeNode.svelte +81 -0
- package/components/graph/svelvet/resizableNodes/views/ResizeNode.svelte.d.ts +20 -0
- package/components/graph/svelvet/store/controllers/storeApi.d.ts +32 -0
- package/components/graph/svelvet/store/controllers/storeApi.js +111 -0
- package/components/graph/svelvet/store/controllers/userApi.d.ts +3 -0
- package/components/graph/svelvet/store/controllers/userApi.js +18 -0
- package/components/graph/svelvet/store/controllers/util.d.ts +31 -0
- package/components/graph/svelvet/store/controllers/util.js +180 -0
- package/components/graph/svelvet/store/models/store.d.ts +12 -0
- package/components/graph/svelvet/store/models/store.js +9 -0
- package/components/graph/svelvet/store/types/types.d.ts +134 -0
- package/components/graph/svelvet/store/types/types.js +1 -0
- package/components/graph/svelvet/types/README.md +3 -0
- package/components/graph/svelvet/types/index.d.ts +2 -0
- package/components/graph/svelvet/types/index.js +1 -0
- package/components/graph/svelvet/types/types.d.ts +49 -0
- package/components/graph/svelvet/types/types.js +18 -0
- package/components/graph/util.js +2 -2
- package/components/home/ItemsList.svelte +53 -5
- package/components/home/ItemsList.svelte.d.ts +1 -0
- package/components/home/ListFilters.svelte +7 -2
- package/components/jobs/JobDetail.svelte +12 -1
- package/components/propertyPicker/ObjectViewer.svelte +6 -4
- package/components/sidebar/SidebarContent.svelte +2 -2
- package/consts.d.ts +1 -0
- package/consts.js +1 -0
- package/defaults.d.ts +4 -0
- package/defaults.js +4 -0
- package/history.d.ts +9 -0
- package/history.js +63 -0
- package/package.json +87 -9
- package/script_helpers.d.ts +1 -1
- package/script_helpers.js +1 -0
- package/scripts.d.ts +1 -1
- package/scripts.js +8 -1
- package/utils.d.ts +9 -4
- package/utils.js +43 -8
- package/components/apps/editor/TablePanel.svelte +0 -19
- package/components/apps/editor/TablePanel.svelte.d.ts +0 -17
- package/components/apps/editor/settingsPanel/MoveToOtherGrid.svelte +0 -85
- package/components/apps/editor/settingsPanel/MoveToOtherGrid.svelte.d.ts +0 -18
- package/components/flows/map/FlowBranchAllMap.svelte +0 -100
- package/components/flows/map/FlowBranchAllMap.svelte.d.ts +0 -17
- package/components/flows/map/FlowBranchOneMap.svelte +0 -124
- package/components/flows/map/FlowBranchOneMap.svelte.d.ts +0 -17
|
@@ -2,28 +2,21 @@
|
|
|
2
2
|
import { workspaceStore } from '../stores';
|
|
3
3
|
import { allTrue } from '../utils';
|
|
4
4
|
import { faPlus } from '@fortawesome/free-solid-svg-icons';
|
|
5
|
-
import { slide } from 'svelte/transition';
|
|
6
5
|
import ArgInput from './ArgInput.svelte';
|
|
7
6
|
import { Button } from './common';
|
|
8
|
-
import InputTransformForm from './InputTransformForm.svelte';
|
|
9
7
|
import ItemPicker from './ItemPicker.svelte';
|
|
10
8
|
import VariableEditor from './VariableEditor.svelte';
|
|
11
|
-
export let inputTransform = false;
|
|
12
9
|
export let schema;
|
|
13
10
|
export let args = {};
|
|
14
11
|
export let disabledArgs = [];
|
|
15
12
|
export let disabled = false;
|
|
16
13
|
export let editableSchema = false;
|
|
17
14
|
export let isValid = true;
|
|
18
|
-
export let extraLib = 'missing extraLib';
|
|
19
15
|
export let autofocus = false;
|
|
20
|
-
export let previousModuleId = undefined;
|
|
21
16
|
export let shouldHideNoInputs = false;
|
|
22
17
|
export let compact = false;
|
|
23
18
|
export let password = undefined;
|
|
24
19
|
export let noVariablePicker = false;
|
|
25
|
-
export let filter = undefined;
|
|
26
|
-
export let noDynamicToggle = false;
|
|
27
20
|
export let flexWrap = false;
|
|
28
21
|
export let noDelete = false;
|
|
29
22
|
let clazz = '';
|
|
@@ -34,12 +27,13 @@ $: if (args == undefined || typeof args !== 'object') {
|
|
|
34
27
|
args = {};
|
|
35
28
|
}
|
|
36
29
|
function removeExtraKey() {
|
|
30
|
+
const nargs = {};
|
|
37
31
|
Object.keys(args ?? {}).forEach((key) => {
|
|
38
|
-
if (
|
|
39
|
-
|
|
40
|
-
delete inputCheck[key];
|
|
32
|
+
if (keys.includes(key)) {
|
|
33
|
+
nargs[key] = args[key];
|
|
41
34
|
}
|
|
42
35
|
});
|
|
36
|
+
args = nargs;
|
|
43
37
|
}
|
|
44
38
|
let pickForField;
|
|
45
39
|
let itemPicker = undefined;
|
|
@@ -59,48 +53,60 @@ $: {
|
|
|
59
53
|
<div class="w-full {clazz} {flexWrap ? 'flex flex-row flex-wrap gap-x-6 gap-y-2' : ''}">
|
|
60
54
|
{#if keys.length > 0}
|
|
61
55
|
{#each keys as argName, i (argName)}
|
|
62
|
-
{#if
|
|
63
|
-
<div
|
|
64
|
-
{#if
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
56
|
+
{#if Object.keys(schema.properties ?? {}).includes(argName)}
|
|
57
|
+
<div>
|
|
58
|
+
{#if typeof args == 'object' && schema?.properties[argName]}
|
|
59
|
+
{#if editableSchema}
|
|
60
|
+
<ArgInput
|
|
61
|
+
autofocus={i == 0 && autofocus}
|
|
62
|
+
label={argName}
|
|
63
|
+
bind:description={schema.properties[argName].description}
|
|
64
|
+
bind:value={args[argName]}
|
|
65
|
+
type={schema.properties[argName].type}
|
|
66
|
+
required={schema.required.includes(argName)}
|
|
67
|
+
bind:pattern={schema.properties[argName].pattern}
|
|
68
|
+
bind:valid={inputCheck[argName]}
|
|
69
|
+
defaultValue={schema.properties[argName].default}
|
|
70
|
+
bind:enum_={schema.properties[argName].enum}
|
|
71
|
+
bind:format={schema.properties[argName].format}
|
|
72
|
+
contentEncoding={schema.properties[argName].contentEncoding}
|
|
73
|
+
properties={schema.properties[argName].properties}
|
|
74
|
+
bind:itemsType={schema.properties[argName].items}
|
|
75
|
+
disabled={disabledArgs.includes(argName) || disabled}
|
|
76
|
+
{editableSchema}
|
|
77
|
+
{compact}
|
|
78
|
+
password={argName == password}
|
|
79
|
+
{variableEditor}
|
|
80
|
+
{itemPicker}
|
|
81
|
+
bind:pickForField
|
|
82
|
+
bind:extra={schema.properties[argName]}
|
|
83
|
+
/>
|
|
84
|
+
{:else}
|
|
85
|
+
<ArgInput
|
|
86
|
+
autofocus={i == 0 && autofocus}
|
|
87
|
+
label={argName}
|
|
88
|
+
description={schema.properties[argName].description}
|
|
89
|
+
bind:value={args[argName]}
|
|
90
|
+
type={schema.properties[argName].type}
|
|
91
|
+
required={schema.required.includes(argName)}
|
|
92
|
+
pattern={schema.properties[argName].pattern}
|
|
93
|
+
bind:valid={inputCheck[argName]}
|
|
94
|
+
defaultValue={schema.properties[argName].default}
|
|
95
|
+
enum_={schema.properties[argName].enum}
|
|
96
|
+
format={schema.properties[argName].format}
|
|
97
|
+
contentEncoding={schema.properties[argName].contentEncoding}
|
|
98
|
+
properties={schema.properties[argName].properties}
|
|
99
|
+
itemsType={schema.properties[argName].items}
|
|
100
|
+
disabled={disabledArgs.includes(argName) || disabled}
|
|
101
|
+
{editableSchema}
|
|
102
|
+
{compact}
|
|
103
|
+
password={argName == password}
|
|
104
|
+
{variableEditor}
|
|
105
|
+
{itemPicker}
|
|
106
|
+
bind:pickForField
|
|
107
|
+
extra={schema.properties[argName]}
|
|
108
|
+
/>
|
|
109
|
+
{/if}
|
|
104
110
|
{/if}
|
|
105
111
|
</div>
|
|
106
112
|
{/if}
|
|
@@ -115,11 +121,7 @@ $: {
|
|
|
115
121
|
bind:this={itemPicker}
|
|
116
122
|
pickCallback={(path, _) => {
|
|
117
123
|
if (pickForField) {
|
|
118
|
-
|
|
119
|
-
args[pickForField].value = '$var:' + path
|
|
120
|
-
} else {
|
|
121
|
-
args[pickForField] = '$var:' + path
|
|
122
|
-
}
|
|
124
|
+
args[pickForField] = '$var:' + path
|
|
123
125
|
}
|
|
124
126
|
}}
|
|
125
127
|
itemName="Variable"
|
|
@@ -2,22 +2,17 @@ import { SvelteComponentTyped } from "svelte";
|
|
|
2
2
|
import type { Schema } from '../common';
|
|
3
3
|
declare const __propDef: {
|
|
4
4
|
props: {
|
|
5
|
-
inputTransform?: boolean | undefined;
|
|
6
5
|
schema: Schema;
|
|
7
6
|
args?: Record<string, any> | undefined;
|
|
8
7
|
disabledArgs?: string[] | undefined;
|
|
9
8
|
disabled?: boolean | undefined;
|
|
10
9
|
editableSchema?: boolean | undefined;
|
|
11
10
|
isValid?: boolean | undefined;
|
|
12
|
-
extraLib?: string | undefined;
|
|
13
11
|
autofocus?: boolean | undefined;
|
|
14
|
-
previousModuleId?: string | undefined;
|
|
15
12
|
shouldHideNoInputs?: boolean | undefined;
|
|
16
13
|
compact?: boolean | undefined;
|
|
17
14
|
password?: string | undefined;
|
|
18
15
|
noVariablePicker?: boolean | undefined;
|
|
19
|
-
filter?: string[] | undefined;
|
|
20
|
-
noDynamicToggle?: boolean | undefined;
|
|
21
16
|
flexWrap?: boolean | undefined;
|
|
22
17
|
noDelete?: boolean | undefined;
|
|
23
18
|
class?: string | undefined;
|
|
@@ -2,20 +2,20 @@
|
|
|
2
2
|
import { goto } from '$app/navigation';
|
|
3
3
|
import { page } from '$app/stores';
|
|
4
4
|
import { inferArgs } from '../infer';
|
|
5
|
-
import { initialCode
|
|
5
|
+
import { initialCode } from '../script_helpers';
|
|
6
6
|
import { userStore, workspaceStore } from '../stores';
|
|
7
7
|
import { emptySchema, encodeState, sendUserToast, setQueryWithoutLoad } from '../utils';
|
|
8
8
|
import Path from './Path.svelte';
|
|
9
|
-
import RadioButton from './RadioButton.svelte';
|
|
10
9
|
import ScriptEditor from './ScriptEditor.svelte';
|
|
11
10
|
import ScriptSchema from './ScriptSchema.svelte';
|
|
12
11
|
import CenteredPage from './CenteredPage.svelte';
|
|
13
|
-
import UnsavedConfirmationModal from './common/confirmationModal/UnsavedConfirmationModal.svelte';
|
|
14
12
|
import { dirtyStore } from './common/confirmationModal/dirtyStore';
|
|
15
|
-
import { Button, Kbd } from './common';
|
|
16
|
-
import {
|
|
13
|
+
import { Button, ButtonPopup, ButtonPopupItem, Kbd } from './common';
|
|
14
|
+
import { faPen, faSave } from '@fortawesome/free-solid-svg-icons';
|
|
17
15
|
import Breadcrumb from './common/breadcrumb/Breadcrumb.svelte';
|
|
18
16
|
import LanguageIcon from './common/languageIcons/LanguageIcon.svelte';
|
|
17
|
+
import Tooltip from './Tooltip.svelte';
|
|
18
|
+
import SettingSection from './SettingSection.svelte';
|
|
19
19
|
export let script;
|
|
20
20
|
export let initialPath = '';
|
|
21
21
|
export let template = 'script';
|
|
@@ -27,11 +27,32 @@ const langs = [
|
|
|
27
27
|
['Go', Script.language.GO],
|
|
28
28
|
['Bash', Script.language.BASH]
|
|
29
29
|
];
|
|
30
|
-
|
|
30
|
+
const scriptKindOptions = [
|
|
31
|
+
{
|
|
32
|
+
value: Script.kind.SCRIPT,
|
|
33
|
+
title: 'Action'
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
value: Script.kind.TRIGGER,
|
|
37
|
+
title: 'Trigger',
|
|
38
|
+
desc: 'First module of flows to trigger them based on external changes. These kind of scripts are usually running on a schedule to periodically look for changes.'
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
value: Script.kind.APPROVAL,
|
|
42
|
+
title: 'Approval',
|
|
43
|
+
desc: 'Send notifications externally to ask for approval to continue a flow.'
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
value: Script.kind.FAILURE,
|
|
47
|
+
title: 'Error Handler',
|
|
48
|
+
desc: 'Handle errors in flows after all retry attempts have been exhausted.'
|
|
49
|
+
}
|
|
50
|
+
];
|
|
31
51
|
let pathError = '';
|
|
32
52
|
let summaryC = undefined;
|
|
33
53
|
let pathC = undefined;
|
|
34
|
-
|
|
54
|
+
let loadingSave = false;
|
|
55
|
+
$: setQueryWithoutLoad($page.url, [{ key: 'state', value: encodeState(script) }]);
|
|
35
56
|
$: step = Number($page.url.searchParams.get('step')) || 1;
|
|
36
57
|
if (script.content == '') {
|
|
37
58
|
initContent(script.language, script.kind, template);
|
|
@@ -39,7 +60,8 @@ if (script.content == '') {
|
|
|
39
60
|
function initContent(language, kind, template) {
|
|
40
61
|
script.content = initialCode(language, kind, template);
|
|
41
62
|
}
|
|
42
|
-
async function editScript() {
|
|
63
|
+
async function editScript(leave) {
|
|
64
|
+
loadingSave = true;
|
|
43
65
|
try {
|
|
44
66
|
$dirtyStore = false;
|
|
45
67
|
localStorage.removeItem(script.path);
|
|
@@ -64,13 +86,19 @@ async function editScript() {
|
|
|
64
86
|
kind: script.kind
|
|
65
87
|
}
|
|
66
88
|
});
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
89
|
+
if (leave) {
|
|
90
|
+
history.replaceState(history.state, '', `/scripts/edit/${newHash}?step=2`);
|
|
91
|
+
goto(`/scripts/get/${newHash}?workspace_id=${$workspaceStore}`);
|
|
92
|
+
}
|
|
93
|
+
else {
|
|
94
|
+
await goto(`/scripts/edit/${newHash}?step=2`);
|
|
95
|
+
script.hash = newHash;
|
|
96
|
+
}
|
|
70
97
|
}
|
|
71
98
|
catch (error) {
|
|
72
|
-
sendUserToast(`Impossible to save the script: ${error.body}`, true);
|
|
99
|
+
sendUserToast(`Impossible to save the script: ${error.body || error.message}`, true);
|
|
73
100
|
}
|
|
101
|
+
loadingSave = false;
|
|
74
102
|
}
|
|
75
103
|
async function changeStep(step) {
|
|
76
104
|
if (step > 1) {
|
|
@@ -92,10 +120,7 @@ function onKeyDown(event) {
|
|
|
92
120
|
}
|
|
93
121
|
</script>
|
|
94
122
|
|
|
95
|
-
<svelte:window on:keydown={onKeyDown} />
|
|
96
|
-
|
|
97
123
|
{#if !$userStore?.operator}
|
|
98
|
-
<UnsavedConfirmationModal />
|
|
99
124
|
<div class="flex flex-col h-screen">
|
|
100
125
|
<!-- Nav between steps-->
|
|
101
126
|
<div class="flex flex-col w-full px-2 py-1 border-b shadow-sm">
|
|
@@ -161,14 +186,24 @@ function onKeyDown(event) {
|
|
|
161
186
|
>
|
|
162
187
|
Next {#if step == 1}<Kbd>Enter</Kbd>{/if}
|
|
163
188
|
</Button>
|
|
164
|
-
<
|
|
189
|
+
<ButtonPopup
|
|
190
|
+
loading={loadingSave}
|
|
165
191
|
size="sm"
|
|
166
192
|
variant={step == 1 ? 'border' : 'contained'}
|
|
167
193
|
disabled={step === 1 && pathError !== ''}
|
|
168
|
-
btnClasses={step == 1 && initialPath == '' ? 'invisible' : ''}
|
|
169
194
|
startIcon={{ icon: faSave }}
|
|
170
|
-
on:click={editScript}
|
|
195
|
+
on:click={() => editScript(false)}
|
|
171
196
|
>
|
|
197
|
+
<svelte:fragment slot="main">Save</svelte:fragment>
|
|
198
|
+
<ButtonPopupItem on:click={() => editScript(true)}>Save and exit</ButtonPopupItem>
|
|
199
|
+
{#if initialPath != ''}
|
|
200
|
+
<ButtonPopupItem
|
|
201
|
+
on:click={() => {
|
|
202
|
+
window.open(`/scripts/add?template=${initialPath}`)
|
|
203
|
+
}}>Fork</ButtonPopupItem
|
|
204
|
+
>
|
|
205
|
+
{/if}
|
|
206
|
+
</ButtonPopup>
|
|
172
207
|
</div>
|
|
173
208
|
</div>
|
|
174
209
|
</div>
|
|
@@ -176,132 +211,111 @@ function onKeyDown(event) {
|
|
|
176
211
|
<!-- metadata -->
|
|
177
212
|
{#if step === 1}
|
|
178
213
|
<CenteredPage>
|
|
179
|
-
<
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
<
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
{
|
|
214
|
+
<SettingSection title="Path" element="h2">
|
|
215
|
+
<Path
|
|
216
|
+
bind:this={pathC}
|
|
217
|
+
bind:error={pathError}
|
|
218
|
+
bind:path={script.path}
|
|
219
|
+
{initialPath}
|
|
220
|
+
on:enter={() => changeStep(2)}
|
|
221
|
+
namePlaceholder="script"
|
|
222
|
+
kind="script"
|
|
223
|
+
/>
|
|
224
|
+
</SettingSection>
|
|
225
|
+
<SettingSection title="Summary" element="h2">
|
|
226
|
+
<input
|
|
227
|
+
type="text"
|
|
228
|
+
bind:this={summaryC}
|
|
229
|
+
bind:value={script.summary}
|
|
230
|
+
placeholder="Short summary to be displayed when listed"
|
|
231
|
+
/>
|
|
232
|
+
</SettingSection>
|
|
233
|
+
<SettingSection title="Language" element="h2">
|
|
234
|
+
{#if lockedLanguage}
|
|
235
|
+
<div class="text-sm text-gray-600 italic mb-2">
|
|
236
|
+
As a forked script, the language '{script.language}' cannot be modified.
|
|
237
|
+
</div>
|
|
238
|
+
{/if}
|
|
239
|
+
<div class="flex flex-row gap-2 flex-wrap">
|
|
240
|
+
{#each langs as [label, lang]}
|
|
241
|
+
{@const isPicked = script.language == lang && template == 'script'}
|
|
242
|
+
<Button
|
|
243
|
+
size="sm"
|
|
244
|
+
variant="border"
|
|
245
|
+
color={isPicked ? 'blue' : 'dark'}
|
|
246
|
+
btnClasses={isPicked ? '!border-2 !bg-blue-50/75' : 'm-[1px]'}
|
|
247
|
+
on:click={() => {
|
|
248
|
+
script.language = lang
|
|
249
|
+
template = 'script'
|
|
250
|
+
initContent(lang, script.kind, template)
|
|
251
|
+
}}
|
|
252
|
+
disabled={lockedLanguage}
|
|
253
|
+
>
|
|
254
|
+
<LanguageIcon {lang} />
|
|
255
|
+
<span class="ml-2 py-2">{label}</span>
|
|
256
|
+
</Button>
|
|
257
|
+
{/each}
|
|
206
258
|
<Button
|
|
207
259
|
size="sm"
|
|
208
260
|
variant="border"
|
|
209
|
-
color={
|
|
210
|
-
btnClasses={
|
|
261
|
+
color={template == 'pgsql' ? 'blue' : 'dark'}
|
|
262
|
+
btnClasses={template == 'pgsql' ? '!border-2 !bg-blue-50/75' : 'm-[1px]'}
|
|
263
|
+
disabled={lockedLanguage}
|
|
211
264
|
on:click={() => {
|
|
212
|
-
script.language =
|
|
213
|
-
template = '
|
|
214
|
-
initContent(
|
|
265
|
+
script.language = Script.language.DENO
|
|
266
|
+
template = 'pgsql'
|
|
267
|
+
initContent(script.language, script.kind, template)
|
|
215
268
|
}}
|
|
216
|
-
disabled={lockedLanguage}
|
|
217
269
|
>
|
|
218
|
-
<LanguageIcon
|
|
270
|
+
<LanguageIcon lang="pgsql" /><span class="ml-2 py-2">PostgreSQL</span>
|
|
219
271
|
</Button>
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
template = 'pgsql'
|
|
230
|
-
initContent(script.language, script.kind, template)
|
|
231
|
-
}}
|
|
232
|
-
>
|
|
233
|
-
<LanguageIcon lang="pgsql" /><span class="ml-2 py-4">PostgreSQL</span>
|
|
234
|
-
</Button>
|
|
235
|
-
<!-- <Button
|
|
236
|
-
size="sm"
|
|
237
|
-
variant="border"
|
|
238
|
-
color={template == 'mysql' ? 'blue' : 'dark'}
|
|
239
|
-
btnClasses={template == 'mysql' ? '!border-2 !bg-blue-50/75' : 'm-[1px]'}
|
|
240
|
-
on:click={() => {
|
|
241
|
-
script.language = Script.language.DENO
|
|
242
|
-
template = 'mysql'
|
|
243
|
-
initContent(script.language, script.kind, template)
|
|
244
|
-
}}
|
|
245
|
-
>
|
|
246
|
-
<LanguageIcon lang="mysql" /><span class="ml-2 py-4">MySQL</span>
|
|
247
|
-
</Button> -->
|
|
248
|
-
</div>
|
|
249
|
-
<div class="mt-16 mb-4">
|
|
250
|
-
<Button
|
|
251
|
-
color="light"
|
|
252
|
-
size="sm"
|
|
253
|
-
endIcon={{ icon: viewScriptKind ? faChevronUp : faChevronDown }}
|
|
254
|
-
on:click={() => (viewScriptKind = !viewScriptKind)}
|
|
255
|
-
>
|
|
256
|
-
Tag this script as having a specific purpose inside flows
|
|
257
|
-
</Button>
|
|
258
|
-
</div>
|
|
259
|
-
{#if viewScriptKind}
|
|
260
|
-
<div class="max-w-lg">
|
|
261
|
-
<RadioButton
|
|
262
|
-
label="Script Type"
|
|
263
|
-
options={[
|
|
264
|
-
['Action', Script.kind.SCRIPT],
|
|
265
|
-
[
|
|
266
|
-
{
|
|
267
|
-
title: 'Trigger',
|
|
268
|
-
desc: `First module of flows to trigger them based on watching changes external periodically using an internal state`
|
|
269
|
-
},
|
|
270
|
-
Script.kind.TRIGGER
|
|
271
|
-
],
|
|
272
|
-
[
|
|
273
|
-
{
|
|
274
|
-
title: 'Approval',
|
|
275
|
-
desc: `Send notification externally to ask for approval to continue a flow`
|
|
276
|
-
},
|
|
277
|
-
Script.kind.APPROVAL
|
|
278
|
-
],
|
|
279
|
-
[
|
|
280
|
-
{
|
|
281
|
-
title: 'Error Handler',
|
|
282
|
-
desc: `Handle errors for flows after all retries attempts have been exhausted`
|
|
283
|
-
},
|
|
284
|
-
Script.kind.FAILURE
|
|
285
|
-
]
|
|
286
|
-
|
|
287
|
-
// ['Command Handler', Script.kind.COMMAND]
|
|
288
|
-
]}
|
|
289
|
-
on:change={(e) => {
|
|
290
|
-
if (isInitialCode(script.content)) {
|
|
291
|
-
template = 'script'
|
|
292
|
-
initContent(script.language, e.detail, template)
|
|
293
|
-
}
|
|
272
|
+
<!-- <Button
|
|
273
|
+
size="sm"
|
|
274
|
+
variant="border"
|
|
275
|
+
color={template == 'mysql' ? 'blue' : 'dark'}
|
|
276
|
+
btnClasses={template == 'mysql' ? '!border-2 !bg-blue-50/75' : 'm-[1px]'}
|
|
277
|
+
on:click={() => {
|
|
278
|
+
script.language = Script.language.DENO
|
|
279
|
+
template = 'mysql'
|
|
280
|
+
initContent(script.language, script.kind, template)
|
|
294
281
|
}}
|
|
295
|
-
|
|
296
|
-
|
|
282
|
+
>
|
|
283
|
+
<LanguageIcon lang="mysql" /><span class="ml-2 py-2">MySQL</span>
|
|
284
|
+
</Button> -->
|
|
297
285
|
</div>
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
286
|
+
</SettingSection>
|
|
287
|
+
<SettingSection
|
|
288
|
+
title="Script kind"
|
|
289
|
+
element="h3"
|
|
290
|
+
tooltip="Tag this script as having a specific purpose inside flows. If it won't be used in flows,
|
|
291
|
+
you don't have to worry about this."
|
|
292
|
+
accordion
|
|
293
|
+
>
|
|
294
|
+
<div class="flex flex-wrap gap-2">
|
|
295
|
+
{#each scriptKindOptions as { value, title, desc }}
|
|
296
|
+
{@const isPicked = script.kind === value}
|
|
297
|
+
<Button
|
|
298
|
+
size="sm"
|
|
299
|
+
variant="border"
|
|
300
|
+
color={isPicked ? 'blue' : 'dark'}
|
|
301
|
+
btnClasses="font-medium {isPicked ? '!bg-blue-50/75' : ''}"
|
|
302
|
+
on:click={() => {
|
|
303
|
+
template = 'script'
|
|
304
|
+
script.kind = value
|
|
305
|
+
initContent(script.language, value, template)
|
|
306
|
+
}}
|
|
307
|
+
disabled={lockedLanguage}
|
|
308
|
+
>
|
|
309
|
+
{title}
|
|
310
|
+
{#if desc}
|
|
311
|
+
<Tooltip class="mb-0.5 ml-1">
|
|
312
|
+
{desc}
|
|
313
|
+
</Tooltip>
|
|
314
|
+
{/if}
|
|
315
|
+
</Button>
|
|
316
|
+
{/each}
|
|
317
|
+
</div>
|
|
318
|
+
</SettingSection>
|
|
305
319
|
</CenteredPage>
|
|
306
320
|
{:else if step === 2}
|
|
307
321
|
<ScriptEditor
|
|
@@ -321,3 +335,5 @@ function onKeyDown(event) {
|
|
|
321
335
|
{:else}
|
|
322
336
|
Script Builder not available to operators
|
|
323
337
|
{/if}
|
|
338
|
+
|
|
339
|
+
<svelte:window on:keydown={onKeyDown} />
|
|
@@ -7,6 +7,7 @@ import RadioButton from './RadioButton.svelte';
|
|
|
7
7
|
import { Button, Drawer, DrawerContent } from './common';
|
|
8
8
|
import HighlightCode from './HighlightCode.svelte';
|
|
9
9
|
import FlowPathViewer from './flows/content/FlowPathViewer.svelte';
|
|
10
|
+
import { SELECT_INPUT_DEFAULT_STYLE } from '../defaults';
|
|
10
11
|
export let initialPath = undefined;
|
|
11
12
|
export let scriptPath = undefined;
|
|
12
13
|
export let allowFlow = false;
|
|
@@ -78,6 +79,8 @@ $: itemKind && $workspaceStore && loadItems();
|
|
|
78
79
|
bind:justValue={scriptPath}
|
|
79
80
|
{items}
|
|
80
81
|
placeholder="Pick a {itemKind}"
|
|
82
|
+
inputStyles={SELECT_INPUT_DEFAULT_STYLE.inputStyles}
|
|
83
|
+
containerStyles={SELECT_INPUT_DEFAULT_STYLE.containerStyles}
|
|
81
84
|
/>
|
|
82
85
|
{/if}
|
|
83
86
|
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
<script>import { ChevronDown } from 'lucide-svelte';
|
|
2
|
+
import { slide } from 'svelte/transition';
|
|
3
|
+
import Tooltip from './Tooltip.svelte';
|
|
4
|
+
export let title;
|
|
5
|
+
export let tooltip = '';
|
|
6
|
+
export let element = 'h2';
|
|
7
|
+
export let accordion = false;
|
|
8
|
+
let showContent = !accordion;
|
|
9
|
+
</script>
|
|
10
|
+
|
|
11
|
+
<div class="border-b [&:has(button:hover)]:border-gray-400 duration-200 pb-1 mt-8 mb-2">
|
|
12
|
+
{#if accordion}
|
|
13
|
+
<button
|
|
14
|
+
class="flex w-full justify-start items-center"
|
|
15
|
+
on:click={() => (showContent = !showContent)}
|
|
16
|
+
>
|
|
17
|
+
<span class="rounded-full hover:bg-gray-100 focus:bg-gray-100 p-1 mr-1">
|
|
18
|
+
<ChevronDown size={22} class="rotate-0 duration-300 {showContent ? '!-rotate-180' : ''}" />
|
|
19
|
+
</span>
|
|
20
|
+
<svelte:element this={element}>
|
|
21
|
+
{title}
|
|
22
|
+
{#if tooltip}
|
|
23
|
+
<Tooltip scale={0.9} class="mb-0.5">
|
|
24
|
+
{tooltip}
|
|
25
|
+
</Tooltip>
|
|
26
|
+
{/if}
|
|
27
|
+
</svelte:element>
|
|
28
|
+
</button>
|
|
29
|
+
{:else}
|
|
30
|
+
<svelte:element this={element}>
|
|
31
|
+
{title}
|
|
32
|
+
{#if tooltip}
|
|
33
|
+
<Tooltip scale={0.9} class="mb-0.5">
|
|
34
|
+
{tooltip}
|
|
35
|
+
</Tooltip>
|
|
36
|
+
{/if}
|
|
37
|
+
</svelte:element>
|
|
38
|
+
{/if}
|
|
39
|
+
</div>
|
|
40
|
+
{#if showContent}
|
|
41
|
+
<div transition:slide={{ duration: 300 }}>
|
|
42
|
+
<slot />
|
|
43
|
+
</div>
|
|
44
|
+
{/if}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { SvelteComponentTyped } from "svelte";
|
|
2
|
+
declare const __propDef: {
|
|
3
|
+
props: {
|
|
4
|
+
title: string;
|
|
5
|
+
tooltip?: string | undefined;
|
|
6
|
+
element?: "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | undefined;
|
|
7
|
+
accordion?: boolean | undefined;
|
|
8
|
+
};
|
|
9
|
+
events: {
|
|
10
|
+
[evt: string]: CustomEvent<any>;
|
|
11
|
+
};
|
|
12
|
+
slots: {
|
|
13
|
+
default: {};
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
export type SettingSectionProps = typeof __propDef.props;
|
|
17
|
+
export type SettingSectionEvents = typeof __propDef.events;
|
|
18
|
+
export type SettingSectionSlots = typeof __propDef.slots;
|
|
19
|
+
export default class SettingSection extends SvelteComponentTyped<SettingSectionProps, SettingSectionEvents, SettingSectionSlots> {
|
|
20
|
+
}
|
|
21
|
+
export {};
|
|
@@ -92,6 +92,9 @@ function format() {
|
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
94
|
}
|
|
95
|
+
export function focus() {
|
|
96
|
+
editor?.focus();
|
|
97
|
+
}
|
|
95
98
|
let width = 0;
|
|
96
99
|
async function loadMonaco() {
|
|
97
100
|
model = meditor.createModel(code, lang, mUri.parse(uri));
|
|
@@ -175,7 +178,7 @@ onDestroy(() => {
|
|
|
175
178
|
});
|
|
176
179
|
</script>
|
|
177
180
|
|
|
178
|
-
<div bind:this={divEl} class="{$$props.class} editor" bind:clientWidth={width} />
|
|
181
|
+
<div bind:this={divEl} class="{$$props.class ?? ''} editor" bind:clientWidth={width} />
|
|
179
182
|
|
|
180
183
|
<style>
|
|
181
184
|
.editor {
|
|
@@ -15,6 +15,7 @@ declare const __propDef: {
|
|
|
15
15
|
getCode?: (() => string) | undefined;
|
|
16
16
|
insertAtCursor?: ((code: string) => void) | undefined;
|
|
17
17
|
setCode?: ((ncode: string) => void) | undefined;
|
|
18
|
+
focus?: (() => void) | undefined;
|
|
18
19
|
};
|
|
19
20
|
events: {
|
|
20
21
|
change: CustomEvent<any>;
|
|
@@ -32,5 +33,6 @@ export default class SimpleEditor extends SvelteComponentTyped<SimpleEditorProps
|
|
|
32
33
|
get getCode(): () => string;
|
|
33
34
|
get insertAtCursor(): (code: string) => void;
|
|
34
35
|
get setCode(): (ncode: string) => void;
|
|
36
|
+
get focus(): () => void;
|
|
35
37
|
}
|
|
36
38
|
export {};
|