windmill-components 1.309.7 → 1.352.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package/assets/app.css +22 -13
- package/package/ata/index.js +1 -0
- package/package/autosize.js +2 -2
- package/package/common.d.ts +14 -2
- package/package/common.js +6 -1
- package/package/components/AllFlowLogs.svelte +30 -0
- package/package/components/AllFlowLogs.svelte.d.ts +18 -0
- package/package/components/ApiConnectForm.svelte +10 -4
- package/package/components/AppConnectDrawer.svelte +74 -0
- package/package/components/AppConnectDrawer.svelte.d.ts +20 -0
- package/package/components/AppConnectInner.svelte +507 -0
- package/package/components/AppConnectInner.svelte.d.ts +28 -0
- package/package/components/ArgEnum.svelte +4 -1
- package/package/components/ArgEnum.svelte.d.ts +3 -1
- package/package/components/ArgInfo.svelte +19 -3
- package/package/components/ArgInput.svelte +222 -122
- package/package/components/ArgInput.svelte.d.ts +11 -7
- package/package/components/ArrayTypeNarrowing.svelte +29 -27
- package/package/components/CenteredPage.svelte +2 -2
- package/package/components/ConcurrentJobsChart.svelte +212 -0
- package/package/components/ConcurrentJobsChart.svelte.d.ts +23 -0
- package/package/components/CustomOauth.svelte +2 -2
- package/package/components/DateInput.svelte +47 -0
- package/package/components/DateInput.svelte.d.ts +24 -0
- package/package/components/DateTimeInput.svelte +25 -3
- package/package/components/DefaultScripts.svelte +5 -8
- package/package/components/DefaultTags.svelte +3 -2
- package/package/components/DefaultTags.svelte.d.ts +3 -1
- package/package/components/DefaultTagsInner.svelte +2 -11
- package/package/components/DefaultTagsInner.svelte.d.ts +3 -1
- package/package/components/Dev.svelte +72 -10
- package/package/components/DiffDrawer.svelte +1 -2
- package/package/components/DiffEditor.svelte +3 -0
- package/package/components/DisplayResult.svelte +467 -344
- package/package/components/DisplayResult.svelte.d.ts +1 -0
- package/package/components/DropdownV2.svelte.d.ts +2 -2
- package/package/components/DurationMs.svelte +11 -3
- package/package/components/DurationMs.svelte.d.ts +2 -0
- package/package/components/EditableSchemaForm.svelte +447 -100
- package/package/components/EditableSchemaForm.svelte.d.ts +16 -6
- package/package/components/Editor.svelte +112 -93
- package/package/components/Editor.svelte.d.ts +4 -2
- package/package/components/EditorBar.svelte +101 -10
- package/package/components/EditorBar.svelte.d.ts +0 -1
- package/package/components/ErrorOrRecoveryHandler.svelte +0 -1
- package/package/components/FlowBuilder.svelte +14 -6
- package/package/components/FlowGraphViewer.svelte +2 -1
- package/package/components/FlowGraphViewerStep.svelte +56 -10
- package/package/components/FlowGraphViewerStep.svelte.d.ts +2 -7
- package/package/components/FlowJobResult.svelte +14 -3
- package/package/components/FlowJobResult.svelte.d.ts +3 -0
- package/package/components/FlowMetadata.svelte +41 -36
- package/package/components/FlowMetadata.svelte.d.ts +3 -1
- package/package/components/FlowPreviewContent.svelte +18 -9
- package/package/components/FlowStatusViewer.svelte +4 -0
- package/package/components/FlowStatusViewer.svelte.d.ts +3 -0
- package/package/components/FlowStatusViewerInner.svelte +96 -19
- package/package/components/FlowStatusViewerInner.svelte.d.ts +3 -0
- package/package/components/FlowTimeline.svelte +13 -0
- package/package/components/FlowTimeline.svelte.d.ts +2 -0
- package/package/components/FlowViewer.svelte +0 -5
- package/package/components/FolderEditor.svelte +25 -0
- package/package/components/FolderEditor.svelte.d.ts +2 -0
- package/package/components/GroupEditor.svelte +36 -91
- package/package/components/GroupInfo.svelte +1 -1
- package/package/components/HighlightCode.svelte +3 -0
- package/package/components/InputTransformForm.svelte +19 -1
- package/package/components/InputTransformForm.svelte.d.ts +2 -0
- package/package/components/InputTransformSchemaForm.svelte +6 -0
- package/package/components/InputTransformSchemaForm.svelte.d.ts +2 -0
- package/package/components/InstanceSettings.svelte +196 -16
- package/package/components/InstanceSettings.svelte.d.ts +4 -0
- package/package/components/JobLogs.svelte +12 -0
- package/package/components/JobLogs.svelte.d.ts +16 -0
- package/package/components/JobStatus.svelte +3 -3
- package/package/components/Label.svelte +1 -1
- package/package/components/Label.svelte.d.ts +1 -0
- package/package/components/LightweightArgInput.svelte +342 -264
- package/package/components/LightweightArgInput.svelte.d.ts +6 -2
- package/package/components/LightweightResourcePicker.svelte +74 -26
- package/package/components/LightweightSchemaForm.svelte +49 -39
- package/package/components/LogViewer.svelte +52 -15
- package/package/components/LogViewer.svelte.d.ts +1 -0
- package/package/components/Login.svelte +288 -0
- package/package/components/Login.svelte.d.ts +19 -0
- package/package/components/ModulePreviewForm.svelte +4 -0
- package/package/components/NoMainFuncBadge.svelte +8 -0
- package/package/components/NoMainFuncBadge.svelte.d.ts +14 -0
- package/package/components/NumberTypeNarrowing.svelte +71 -44
- package/package/components/OauthExtraParams.svelte +1 -1
- package/package/components/OauthScopes.svelte +1 -1
- package/package/components/ObjectResourceInput.svelte +2 -0
- package/package/components/ObjectResourceInput.svelte.d.ts +1 -0
- package/package/components/ObjectStoreConfigSettings.svelte +12 -1
- package/package/components/ObjectStoreConfigSettings.svelte.d.ts +1 -0
- package/package/components/ObjectTypeNarrowing.svelte +0 -1
- package/package/components/ParqetCsvTableRenderer.svelte +181 -0
- package/package/components/ParqetCsvTableRenderer.svelte.d.ts +21 -0
- package/package/components/Password.svelte +1 -0
- package/package/components/Password.svelte.d.ts +2 -0
- package/package/components/PasswordArgInput.svelte +49 -0
- package/package/components/PasswordArgInput.svelte.d.ts +17 -0
- package/package/components/Path.svelte +2 -2
- package/package/components/PersistentScriptDrawer.svelte +6 -3
- package/package/components/QueueMetricsDrawer.svelte +225 -0
- package/package/components/QueueMetricsDrawer.svelte.d.ts +18 -0
- package/package/components/Range.svelte +88 -286
- package/package/components/Range.svelte.d.ts +9 -23
- package/package/components/ResourceEditor.svelte +138 -140
- package/package/components/ResourceEditor.svelte.d.ts +9 -2
- package/package/components/ResourceEditorDrawer.svelte +45 -0
- package/package/components/ResourceEditorDrawer.svelte.d.ts +21 -0
- package/package/components/ResourcePicker.svelte +8 -9
- package/package/components/ResourceTypePicker.svelte +88 -36
- package/package/components/ResultJobLoader.svelte +2 -2
- package/package/components/ResultJobLoader.svelte.d.ts +9 -9
- package/package/components/RunChart.svelte +55 -5
- package/package/components/RunChart.svelte.d.ts +1 -0
- package/package/components/RunForm.svelte +1 -1
- package/package/components/S3FilePicker.svelte +21 -9
- package/package/components/S3FilePicker.svelte.d.ts +2 -0
- package/package/components/SavedInputs.svelte +49 -13
- package/package/components/ScheduleEditorInner.svelte +294 -264
- package/package/components/SchemaForm.svelte +193 -99
- package/package/components/SchemaForm.svelte.d.ts +17 -2
- package/package/components/ScriptBuilder.svelte +23 -14
- package/package/components/ScriptEditor.svelte +1 -2
- package/package/components/ScriptEditor.svelte.d.ts +1 -1
- package/package/components/ScriptSchedules.svelte +11 -8
- package/package/components/ScriptSchema.svelte +3 -21
- package/package/components/ScriptVersionHistory.svelte +1 -1
- package/package/components/SimpleEditor.svelte +4 -1
- package/package/components/StringTypeNarrowing.svelte +229 -167
- package/package/components/StringTypeNarrowing.svelte.d.ts +6 -1
- package/package/components/TemplateEditor.svelte +1 -0
- package/package/components/TestJobLoader.svelte +14 -5
- package/package/components/TestJobLoader.svelte.d.ts +1 -1
- package/package/components/Toggle.svelte +6 -3
- package/package/components/Toggle.svelte.d.ts +1 -0
- package/package/components/Tooltip.svelte +8 -2
- package/package/components/Tooltip.svelte.d.ts +1 -0
- package/package/components/UserSettings.svelte +24 -1
- package/package/components/WorkspaceGroup.svelte +84 -21
- package/package/components/WorkspaceGroup.svelte.d.ts +1 -0
- package/package/components/app_connect.d.ts +7 -0
- package/package/components/app_connect.js +78 -0
- package/package/components/apps/components/buttons/AppButton.svelte +2 -1
- package/package/components/apps/components/buttons/AppButton.svelte.d.ts +1 -0
- package/package/components/apps/components/display/AppAlert.svelte +1 -1
- package/package/components/apps/components/display/AppCustomComponent.svelte +1 -1
- package/package/components/apps/components/display/AppDisplayComponent.svelte +2 -2
- package/package/components/apps/components/display/AppDownload.svelte +1 -1
- package/package/components/apps/components/display/AppFlowStatusComponent.svelte +13 -70
- package/package/components/apps/components/display/AppFlowStatusComponent.svelte.d.ts +1 -9
- package/package/components/apps/components/display/AppIcon.svelte +1 -1
- package/package/components/apps/components/display/AppJobIdFlowStatus.svelte +23 -10
- package/package/components/apps/components/display/AppJobIdFlowStatus.svelte.d.ts +1 -3
- package/package/components/apps/components/display/AppJobIdLogComponent.svelte +22 -10
- package/package/components/apps/components/display/AppJobIdLogComponent.svelte.d.ts +1 -3
- package/package/components/apps/components/display/AppLogsComponent.svelte +13 -70
- package/package/components/apps/components/display/AppLogsComponent.svelte.d.ts +1 -9
- package/package/components/apps/components/display/AppMap.svelte +3 -2
- package/package/components/apps/components/display/AppMenu.svelte +1 -1
- package/package/components/apps/components/display/AppPdf.svelte +3 -11
- package/package/components/apps/components/display/AppText.svelte +7 -2
- package/package/components/apps/components/display/charts/AppAgCharts.svelte +31 -18
- package/package/components/apps/components/display/dbtable/AppDbExplorer.svelte +32 -30
- package/package/components/apps/components/display/dbtable/InsertRow.svelte +3 -6
- package/package/components/apps/components/display/dbtable/queries/delete.js +1 -1
- package/package/components/apps/components/display/dbtable/queries/insert.js +1 -12
- package/package/components/apps/components/display/dbtable/queries/select.js +1 -1
- package/package/components/apps/components/display/dbtable/queries/update.js +2 -2
- package/package/components/apps/components/display/dbtable/utils.d.ts +0 -1
- package/package/components/apps/components/display/dbtable/utils.js +0 -83
- package/package/components/apps/components/display/table/AppAggridExplorerTable.svelte +75 -44
- package/package/components/apps/components/display/table/AppAggridExplorerTable.svelte.d.ts +5 -1
- package/package/components/apps/components/display/table/AppAggridInfiniteTable.svelte +172 -0
- package/package/components/apps/components/display/table/AppAggridInfiniteTable.svelte.d.ts +27 -0
- package/package/components/apps/components/display/table/AppAggridInfiniteTableEe.svelte +38 -0
- package/package/components/apps/components/display/table/AppAggridInfiniteTableEe.svelte.d.ts +28 -0
- package/package/components/apps/components/display/table/AppAggridTable.svelte +189 -56
- package/package/components/apps/components/display/table/AppAggridTable.svelte.d.ts +1 -1
- package/package/components/apps/components/display/table/AppAggridTableActions.svelte +13 -2
- package/package/components/apps/components/display/table/AppAggridTableActions.svelte.d.ts +1 -0
- package/package/components/apps/components/display/table/AppCell.svelte +1 -3
- package/package/components/apps/components/display/table/AppTable.svelte +320 -281
- package/package/components/apps/components/display/table/AppTableFooter.svelte +42 -23
- package/package/components/apps/components/display/table/AppTableFooter.svelte.d.ts +2 -2
- package/package/components/apps/components/display/table/SyncColumnDefs.svelte +119 -0
- package/package/components/apps/components/display/table/SyncColumnDefs.svelte.d.ts +21 -0
- package/package/components/apps/components/display/table/theme/windmill-theme.css +656 -0
- package/package/components/apps/components/display/table/utils.js +22 -0
- package/package/components/apps/components/helpers/DebouncedInput.svelte +3 -2
- package/package/components/apps/components/helpers/HiddenComponent.svelte +2 -1
- package/package/components/apps/components/helpers/NonRunnableComponent.svelte +35 -0
- package/package/components/apps/components/helpers/RefreshButton.svelte +30 -12
- package/package/components/apps/components/helpers/RefreshButton.svelte.d.ts +1 -3
- package/package/components/apps/components/helpers/RefreshIndicator.svelte +19 -0
- package/package/components/apps/components/helpers/RefreshIndicator.svelte.d.ts +16 -0
- package/package/components/apps/components/helpers/ResolveConfig.svelte +1 -1
- package/package/components/apps/components/helpers/RunnableComponent.svelte +102 -41
- package/package/components/apps/components/helpers/RunnableComponent.svelte.d.ts +9 -5
- package/package/components/apps/components/helpers/RunnableWrapper.svelte +9 -1
- package/package/components/apps/components/helpers/RunnableWrapper.svelte.d.ts +6 -0
- package/package/components/apps/components/helpers/eval.js +1 -36
- package/package/components/apps/components/inputs/AppDateInput.svelte +5 -1
- package/package/components/apps/components/inputs/AppFileInput.svelte +13 -2
- package/package/components/apps/components/inputs/AppFileInput.svelte.d.ts +1 -0
- package/package/components/apps/components/inputs/AppMultiSelect.svelte +56 -50
- package/package/components/apps/components/inputs/AppMultiSelect.svelte.d.ts +1 -0
- package/package/components/apps/components/inputs/AppMultiSelectV2.svelte +178 -0
- package/package/components/apps/components/inputs/AppMultiSelectV2.svelte.d.ts +24 -0
- package/package/components/apps/components/inputs/AppNumberInput.svelte +1 -1
- package/package/components/apps/components/inputs/AppQuillEditor.svelte +26 -0
- package/package/components/apps/components/inputs/AppRangeInput.svelte +38 -37
- package/package/components/apps/components/inputs/AppS3FileInput.svelte +3 -1
- package/package/components/apps/components/inputs/AppS3FileInput.svelte.d.ts +1 -0
- package/package/components/apps/components/inputs/AppSelect.svelte +21 -10
- package/package/components/apps/components/inputs/AppSliderInputs.svelte +26 -31
- package/package/components/apps/components/inputs/AppTextInput.svelte +1 -1
- package/package/components/apps/components/inputs/currency/AppCurrencyInput.svelte +1 -1
- package/package/components/apps/components/layout/AppConditionalWrapper.svelte +10 -3
- package/package/components/apps/components/layout/AppConditionalWrapper.svelte.d.ts +1 -0
- package/package/components/apps/components/layout/AppContainer.svelte +1 -1
- package/package/components/apps/components/layout/AppDecisionTree.svelte +1 -1
- package/package/components/apps/components/layout/AppDrawer.svelte +16 -3
- package/package/components/apps/components/layout/AppDrawer.svelte.d.ts +2 -0
- package/package/components/apps/components/layout/AppModal.svelte +85 -79
- package/package/components/apps/components/layout/AppModal.svelte.d.ts +2 -0
- package/package/components/apps/components/layout/AppStepper.svelte +7 -2
- package/package/components/apps/components/layout/AppStepper.svelte.d.ts +2 -0
- package/package/components/apps/components/layout/AppTabs.svelte +4 -2
- package/package/components/apps/components/layout/AppTabs.svelte.d.ts +1 -0
- package/package/components/apps/editor/AppEditor.svelte +3 -2
- package/package/components/apps/editor/AppEditorHeader.svelte +68 -38
- package/package/components/apps/editor/AppInputs.svelte +1 -1
- package/package/components/apps/editor/AppPreview.svelte +18 -7
- package/package/components/apps/editor/ComponentHeader.svelte +37 -1
- package/package/components/apps/editor/ComponentHeader.svelte.d.ts +2 -0
- package/package/components/apps/editor/GridEditor.svelte +15 -6
- package/package/components/apps/editor/GridEditorMenu.svelte +120 -49
- package/package/components/apps/editor/GridViewer.svelte +14 -5
- package/package/components/apps/editor/GridViewer.svelte.d.ts +5 -1
- package/package/components/apps/editor/RecomputeAllComponents.svelte +17 -3
- package/package/components/apps/editor/RunnableJobPanel.svelte +9 -5
- package/package/components/apps/editor/SettingsPanel.svelte +19 -5
- package/package/components/apps/editor/SubGridEditor.svelte +44 -27
- package/package/components/apps/editor/appUtils.d.ts +6 -1
- package/package/components/apps/editor/appUtils.js +85 -7
- package/package/components/apps/editor/component/Component.svelte +86 -18
- package/package/components/apps/editor/component/Component.svelte.d.ts +3 -0
- package/package/components/apps/editor/component/components.d.ts +285 -23
- package/package/components/apps/editor/component/components.js +178 -13
- package/package/components/apps/editor/component/default-codes.d.ts +1 -1
- package/package/components/apps/editor/component/default-codes.js +241 -9
- package/package/components/apps/editor/component/sets.d.ts +3 -0
- package/package/components/apps/editor/component/sets.js +12 -2
- package/package/components/apps/editor/componentsPanel/ComponentList.svelte +15 -2
- package/package/components/apps/editor/componentsPanel/componentControlUtils.js +4 -2
- package/package/components/apps/editor/componentsPanel/cssUtils.js +1 -1
- package/package/components/apps/editor/componentsPanel/quickStyleProperties.js +5 -0
- package/package/components/apps/editor/contextPanel/components/OutputHeader.svelte +9 -5
- package/package/components/apps/editor/contextPanel/components/TableActionsOutput.svelte +1 -1
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptEditor.svelte +46 -6
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte +1 -1
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptsPanelWithTable.svelte +1 -1
- package/package/components/apps/editor/inlineScriptsPanel/utils.js +3 -1
- package/package/components/apps/editor/settingsPanel/AlignmentEditor.svelte +1 -1
- package/package/components/apps/editor/settingsPanel/ArrayStaticInputEditor.svelte +5 -34
- package/package/components/apps/editor/settingsPanel/ComponentControl.svelte +1 -1
- package/package/components/apps/editor/settingsPanel/ComponentInputTypeEditor.svelte +8 -5
- package/package/components/apps/editor/settingsPanel/ComponentPanel.svelte +41 -29
- package/package/components/apps/editor/settingsPanel/ContextVariables.svelte +61 -0
- package/package/components/apps/editor/settingsPanel/ContextVariables.svelte.d.ts +16 -0
- package/package/components/apps/editor/settingsPanel/DecisionTreeGraphEditor.svelte +12 -10
- package/package/components/apps/editor/settingsPanel/DeleteComponent.svelte +29 -32
- package/package/components/apps/editor/settingsPanel/DeleteComponent.svelte.d.ts +0 -5
- package/package/components/apps/editor/settingsPanel/EventHandlerItem.svelte +33 -0
- package/package/components/apps/editor/settingsPanel/EventHandlerItem.svelte.d.ts +19 -0
- package/package/components/apps/editor/settingsPanel/EventHandlers.svelte +103 -0
- package/package/components/apps/editor/settingsPanel/EventHandlers.svelte.d.ts +18 -0
- package/package/components/apps/editor/settingsPanel/GridCondition.svelte +14 -36
- package/package/components/apps/editor/settingsPanel/GridTab.svelte +4 -24
- package/package/components/apps/editor/settingsPanel/GridTabDisabled.svelte +2 -1
- package/package/components/apps/editor/settingsPanel/GridTabDisabled.svelte.d.ts +1 -0
- package/package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte +24 -3
- package/package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte +32 -2
- package/package/components/apps/editor/settingsPanel/InputsSpecsEditor.svelte.d.ts +1 -0
- package/package/components/apps/editor/settingsPanel/StylePanel.svelte +4 -3
- package/package/components/apps/editor/settingsPanel/SubTypeEditor.svelte +0 -2
- package/package/components/apps/editor/settingsPanel/SubTypeEditor.svelte.d.ts +0 -1
- package/package/components/apps/editor/settingsPanel/inputEditor/ColorInput.svelte +3 -2
- package/package/components/apps/editor/settingsPanel/inputEditor/EvalV2InputEditor.svelte +8 -1
- package/package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte +7 -14
- package/package/components/apps/editor/settingsPanel/inputEditor/StaticInputEditor.svelte.d.ts +0 -1
- package/package/components/apps/editor/settingsPanel/mainInput/RunnableSelector.svelte +4 -4
- package/package/components/apps/editor/settingsPanel/secondaryMenu/SecondaryMenu.svelte +6 -3
- package/package/components/apps/inputType.d.ts +4 -0
- package/package/components/apps/rx.d.ts +1 -1
- package/package/components/apps/rx.js +7 -0
- package/package/components/apps/svelte-grid/Grid.svelte +13 -4
- package/package/components/apps/svelte-grid/Grid.svelte.d.ts +2 -1
- package/package/components/apps/svelte-grid/types.d.ts +1 -0
- package/package/components/apps/svelte-grid/utils/helper.js +1 -0
- package/package/components/apps/svelte-grid/utils/overlap.d.ts +3 -0
- package/package/components/apps/svelte-grid/utils/overlap.js +21 -0
- package/package/components/apps/svelte-select/lib/Select.svelte.d.ts +2 -2
- package/package/components/apps/svelte-select/lib/tailwind.css +1 -1
- package/package/components/apps/types.d.ts +1 -0
- package/package/components/apps/utils.js +13 -3
- package/package/components/auditLogs/AuditLogsTable.svelte +5 -2
- package/package/components/build_workers.js +1 -0
- package/package/components/common/alert/Alert.svelte +17 -17
- package/package/components/common/badge/Badge.svelte +6 -3
- package/package/components/common/badge/model.d.ts +1 -1
- package/package/components/common/button/Button.svelte +22 -14
- package/package/components/common/button/ButtonDropdown.svelte +1 -0
- package/package/components/common/calendarPicker/CalendarPicker.svelte +2 -0
- package/package/components/common/calendarPicker/CalendarPicker.svelte.d.ts +1 -0
- package/package/components/common/drawer/ConditionalPortal.svelte +9 -0
- package/package/components/common/drawer/ConditionalPortal.svelte.d.ts +18 -0
- package/package/components/common/drawer/Disposable.svelte +67 -0
- package/package/components/common/drawer/Disposable.svelte.d.ts +37 -0
- package/package/components/common/drawer/Drawer.svelte +40 -56
- package/package/components/common/drawer/Drawer.svelte.d.ts +2 -1
- package/package/components/common/fileDownload/FileDownload.svelte +4 -2
- package/package/components/common/fileInput/FileInput.svelte +3 -3
- package/package/components/common/fileInput/FileInput.svelte.d.ts +1 -0
- package/package/components/common/fileUpload/FileUpload.svelte +5 -4
- package/package/components/common/languageIcons/LanguageIcon.svelte +5 -2
- package/package/components/common/modal/Modal.svelte +4 -1
- package/package/components/common/modal/Modal.svelte.d.ts +1 -0
- package/package/components/common/popup/Popup.svelte +1 -1
- package/package/components/common/table/RowIcon.svelte +4 -4
- package/package/components/common/table/ScriptRow.svelte +12 -1
- package/package/components/common/table/ScriptRow.svelte.d.ts +1 -0
- package/package/components/common/toggleButton-v2/ToggleButtonGroup.svelte +4 -1
- package/package/components/common/toggleButton-v2/ToggleButtonGroup.svelte.d.ts +1 -0
- package/package/components/common/toggleButton-v2/ToggleButtonMore.svelte +45 -0
- package/package/components/common/toggleButton-v2/ToggleButtonMore.svelte.d.ts +24 -0
- package/package/components/common/waitTimeWarning/WaitTimeWarning.svelte +79 -0
- package/package/components/common/waitTimeWarning/WaitTimeWarning.svelte.d.ts +18 -0
- package/package/components/copilot/CronGen.svelte +2 -2
- package/package/components/copilot/FlowCopilotStatus.svelte +1 -1
- package/package/components/copilot/RegexGen.svelte +17 -39
- package/package/components/copilot/ScriptGen.svelte +14 -5
- package/package/components/copilot/StepInputGen.svelte +2 -1
- package/package/components/copilot/StepInputsGen.svelte +2 -1
- package/package/components/copilot/completion.js +60 -9
- package/package/components/copilot/lib.js +5 -3
- package/package/components/copilot/prompts/edit.yaml +24 -0
- package/package/components/copilot/prompts/editPrompt.d.ts +3 -0
- package/package/components/copilot/prompts/editPrompt.js +3 -0
- package/package/components/copilot/prompts/fix.yaml +25 -0
- package/package/components/copilot/prompts/fixPrompt.d.ts +3 -0
- package/package/components/copilot/prompts/fixPrompt.js +3 -0
- package/package/components/copilot/prompts/gen.yaml +20 -0
- package/package/components/copilot/prompts/genPrompt.d.ts +3 -0
- package/package/components/copilot/prompts/genPrompt.js +3 -0
- package/package/components/copilot/utils.d.ts +2 -1
- package/package/components/copilot/utils.js +38 -0
- package/package/components/details/createAppFromScript.d.ts +26 -0
- package/package/components/details/createAppFromScript.js +50 -24
- package/package/components/flows/CreateActionsApp.svelte +1 -0
- package/package/components/flows/CreateActionsFlow.svelte +1 -0
- package/package/components/flows/content/FlowEditorPanel.svelte +16 -2
- package/package/components/flows/content/FlowInput.svelte +63 -53
- package/package/components/flows/content/FlowInputs.svelte +2 -2
- package/package/components/flows/content/FlowModuleComponent.svelte +41 -9
- package/package/components/flows/content/FlowModuleScript.svelte +40 -1
- package/package/components/flows/content/FlowModuleScript.svelte.d.ts +2 -0
- package/package/components/flows/content/FlowModuleSuspend.svelte +99 -59
- package/package/components/flows/content/FlowModuleWrapper.svelte +16 -1
- package/package/components/flows/content/FlowSchedules.svelte +11 -8
- package/package/components/flows/content/ScriptEditorDrawer.svelte +6 -6
- package/package/components/flows/flowExplorer.js +4 -1
- package/package/components/flows/flowStateUtils.js +4 -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 +19 -1
- package/package/components/flows/map/FlowModuleSchemaItem.svelte.d.ts +1 -0
- package/package/components/flows/map/FlowModuleSchemaMap.svelte +6 -1
- package/package/components/flows/map/FlowSettingsItem.svelte +1 -1
- package/package/components/flows/map/MapItem.svelte +2 -0
- package/package/components/flows/map/MapItem.svelte.d.ts +1 -0
- package/package/components/flows/types.d.ts +4 -0
- package/package/components/flows/utils.d.ts +5 -1
- package/package/components/flows/utils.js +36 -0
- package/package/components/graph/FlowGraph.svelte +6 -2
- package/package/components/graph/FlowGraph.svelte.d.ts +2 -0
- package/package/components/graph/svelvet/container/models/index.d.ts +0 -5
- package/package/components/graph/svelvet/container/models/index.js +1 -1
- package/package/components/graph/svelvet/container/views/Svelvet.svelte +2 -5
- package/package/components/graph/svelvet/edges/views/Edges/SimpleBezierEdge.svelte +41 -16
- package/package/components/graph/util.d.ts +1 -37
- package/package/components/graph/util.js +0 -34
- package/package/components/home/ItemsList.svelte +44 -9
- package/package/components/home/TreeView.svelte +2 -0
- package/package/components/icons/AzureIcon.svelte +25 -1
- package/package/components/icons/PHPIcon.svelte +117 -0
- package/package/components/icons/PHPIcon.svelte.d.ts +17 -0
- package/package/components/instanceSettings.d.ts +1 -1
- package/package/components/instanceSettings.js +20 -3
- package/package/components/jobs/JobPreview.svelte +6 -1
- package/package/components/multiselect/MultiSelect.svelte +783 -0
- package/package/components/multiselect/MultiSelect.svelte.d.ts +98 -0
- package/package/components/multiselect/MultiSelectWrapper.svelte +89 -0
- package/package/components/multiselect/MultiSelectWrapper.svelte.d.ts +20 -0
- package/package/components/multiselect/types.d.ts +56 -0
- package/package/components/multiselect/types.js +1 -0
- package/package/components/multiselect/utils.d.ts +7 -0
- package/package/components/multiselect/utils.js +54 -0
- package/package/components/propertyPicker/ObjectViewer.svelte +19 -2
- package/package/components/runs/JobLoader.svelte +135 -17
- package/package/components/runs/JobLoader.svelte.d.ts +7 -2
- package/package/components/runs/JobPreview.svelte +44 -4
- package/package/components/runs/JobPreview.svelte.d.ts +2 -0
- package/package/components/runs/RunRow.svelte +99 -33
- package/package/components/runs/RunRow.svelte.d.ts +5 -1
- package/package/components/runs/RunsFilter.svelte +125 -9
- package/package/components/runs/RunsFilter.svelte.d.ts +4 -2
- package/package/components/runs/RunsTable.svelte +71 -10
- package/package/components/runs/RunsTable.svelte.d.ts +8 -1
- package/package/components/schema/AddProperty.svelte +149 -0
- package/package/components/schema/AddProperty.svelte.d.ts +23 -0
- package/package/components/schema/AddPropertyForm.svelte +33 -0
- package/package/components/schema/AddPropertyForm.svelte.d.ts +16 -0
- package/package/components/schema/EditableSchemaDrawer.svelte +198 -0
- package/package/components/schema/EditableSchemaDrawer.svelte.d.ts +21 -0
- package/package/components/schema/EditableSchemaWrapper.svelte +31 -0
- package/package/components/schema/EditableSchemaWrapper.svelte.d.ts +22 -0
- package/package/components/schema/FlowPropertyEditor.svelte +393 -0
- package/package/components/schema/FlowPropertyEditor.svelte.d.ts +47 -0
- package/package/components/schema/PropertyEditor.svelte +185 -0
- package/package/components/schema/PropertyEditor.svelte.d.ts +46 -0
- package/package/components/schema/SchemaFormDND.svelte +75 -0
- package/package/components/schema/SchemaFormDND.svelte.d.ts +28 -0
- package/package/components/scriptEditor/LogPanel.svelte +46 -33
- package/package/components/scriptEditor/LogPanel.svelte.d.ts +1 -0
- package/package/components/scripts/CreateActionsScript.svelte +1 -1
- package/package/components/settings/WorkspaceUserSettings.svelte +246 -226
- package/package/components/sidebar/MenuButton.svelte +1 -1
- package/package/components/sidebar/MenuLink.svelte +1 -1
- package/package/components/sidebar/changelogs.js +40 -0
- package/package/components/table/AutoDataTable.svelte +124 -163
- package/package/components/table/Cell.svelte +4 -1
- package/package/components/table/Cell.svelte.d.ts +1 -0
- package/package/components/table/DataTable.svelte +13 -5
- package/package/components/table/DataTable.svelte.d.ts +1 -0
- package/package/components/table/DownloadCsv.svelte +30 -0
- package/package/components/table/DownloadCsv.svelte.d.ts +17 -0
- package/package/components/table/tableUtils.d.ts +8 -0
- package/package/components/table/tableUtils.js +37 -0
- package/package/components/vscode.js +1 -1
- package/package/components/wizards/AgGridWizard.svelte +27 -2
- package/package/components/wizards/AgGridWizard.svelte.d.ts +1 -0
- package/package/consts.js +7 -1
- package/package/defaults.d.ts +2 -2
- package/package/defaults.js +2 -2
- package/package/deno_fetch.d.ts.txt +36 -0
- package/package/editorUtils.js +2 -0
- package/package/gen/core/OpenAPI.js +5 -6
- package/package/gen/core/request.js +4 -1
- package/package/gen/index.d.ts +0 -1
- package/package/gen/index.js +0 -1
- package/package/gen/schemas.gen.d.ts +173 -428
- package/package/gen/schemas.gen.js +173 -433
- package/package/gen/services.gen.d.ts +3182 -1840
- package/package/gen/services.gen.js +3652 -2368
- package/package/gen/types.gen.d.ts +5445 -1529
- package/package/infer.d.ts +1 -1
- package/package/infer.js +6 -2
- package/package/inferArgSig.d.ts +10 -0
- package/package/inferArgSig.js +64 -4
- package/package/init_scripts/python_init_code.d.ts +1 -1
- package/package/init_scripts/python_init_code.js +1 -1
- package/package/process.d.ts.txt +1770 -0
- package/package/script_helpers.d.ts +3 -2
- package/package/script_helpers.js +28 -3
- package/package/scripts.d.ts +3 -1
- package/package/scripts.js +10 -3
- package/package/utils.d.ts +5 -1
- package/package/utils.js +53 -5
- package/package/windmill_fetch.d.ts.txt +16966 -0
- package/package/workspace_settings.d.ts +15 -0
- package/package/workspace_settings.js +81 -0
- package/package/zIndexes.d.ts +12 -0
- package/package/zIndexes.js +12 -0
- package/package.json +19 -10
- package/package/components/AppConnect.svelte +0 -566
- package/package/components/AppConnect.svelte.d.ts +0 -23
- package/package/components/ContextMenu.svelte +0 -89
- package/package/components/ContextMenu.svelte.d.ts +0 -28
- package/package/components/ParqetTableRenderer.svelte +0 -121
- package/package/components/ParqetTableRenderer.svelte.d.ts +0 -18
- package/package/components/PropertyRow.svelte +0 -80
- package/package/components/PropertyRow.svelte.d.ts +0 -23
- package/package/components/SchemaEditor.svelte +0 -344
- package/package/components/SchemaEditor.svelte.d.ts +0 -23
- package/package/components/SchemaModal.svelte +0 -350
- package/package/components/SchemaModal.svelte.d.ts +0 -31
- package/package/components/apps/components/display/index.d.ts +0 -17
- package/package/components/apps/components/display/index.js +0 -17
- package/package/components/apps/components/helpers/index.d.ts +0 -10
- package/package/components/apps/components/helpers/index.js +0 -10
- package/package/components/apps/components/index.d.ts +0 -5
- package/package/components/apps/components/index.js +0 -5
- package/package/components/apps/editor/settingsPanel/Recompute.svelte +0 -55
- package/package/components/apps/editor/settingsPanel/Recompute.svelte.d.ts +0 -20
|
@@ -39,7 +39,8 @@ import Label from '../../Label.svelte';
|
|
|
39
39
|
import { enterpriseLicense } from '../../../stores';
|
|
40
40
|
import { isCloudHosted } from '../../../cloud';
|
|
41
41
|
import { loadSchemaFromModule } from '../flowInfers';
|
|
42
|
-
|
|
42
|
+
import { initRequiredInputFilled, setRequiredInputFilled } from '../utils';
|
|
43
|
+
const { selectedId, previewArgs, flowStateStore, flowStore, pathStore, saveDraft, flowInputsStore } = getContext('FlowEditorContext');
|
|
43
44
|
export let flowModule;
|
|
44
45
|
export let failureModule = false;
|
|
45
46
|
export let parentModule = undefined;
|
|
@@ -53,7 +54,6 @@ let diffEditor;
|
|
|
53
54
|
let modulePreview;
|
|
54
55
|
let websocketAlive = {
|
|
55
56
|
pyright: false,
|
|
56
|
-
black: false,
|
|
57
57
|
deno: false,
|
|
58
58
|
go: false,
|
|
59
59
|
ruff: false,
|
|
@@ -111,6 +111,11 @@ async function reload(flowModule) {
|
|
|
111
111
|
validCode = true;
|
|
112
112
|
if (inputTransformSchemaForm) {
|
|
113
113
|
inputTransformSchemaForm.setArgs(input_transforms);
|
|
114
|
+
if (!deepEqual(schema, $flowStateStore[flowModule.id]?.schema)) {
|
|
115
|
+
$flowInputsStore[flowModule?.id] = {
|
|
116
|
+
requiredInputsFilled: initRequiredInputFilled(flowModule.value, schema ?? {})
|
|
117
|
+
};
|
|
118
|
+
}
|
|
114
119
|
}
|
|
115
120
|
else {
|
|
116
121
|
if (flowModule.value.type == 'rawscript' ||
|
|
@@ -151,6 +156,15 @@ afterUpdate(() => {
|
|
|
151
156
|
let forceReload = 0;
|
|
152
157
|
let editorPanelSize = noEditor ? 0 : flowModule.value.type == 'script' ? 30 : 50;
|
|
153
158
|
let editorSettingsPanelSize = 100 - editorPanelSize;
|
|
159
|
+
function setFlowInput(argName) {
|
|
160
|
+
if ($flowInputsStore && $flowInputsStore?.[flowModule.id] === undefined) {
|
|
161
|
+
$flowInputsStore[flowModule.id] = {};
|
|
162
|
+
}
|
|
163
|
+
if ($flowInputsStore) {
|
|
164
|
+
const requiredInputsFilled = setRequiredInputFilled(argName, flowModule.value, $flowInputsStore[flowModule.id].requiredInputsFilled ?? {}, $flowStateStore[$selectedId]?.schema);
|
|
165
|
+
$flowInputsStore[flowModule.id].requiredInputsFilled = requiredInputsFilled;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
154
168
|
</script>
|
|
155
169
|
|
|
156
170
|
<svelte:window on:keydown={onKeyDown} />
|
|
@@ -235,7 +249,7 @@ let editorSettingsPanelSize = 100 - editorPanelSize;
|
|
|
235
249
|
{#key flowModule.id}
|
|
236
250
|
<Editor
|
|
237
251
|
folding
|
|
238
|
-
path={flowModule.
|
|
252
|
+
path={$pathStore + '/' + flowModule.id}
|
|
239
253
|
bind:websocketAlive
|
|
240
254
|
bind:this={editor}
|
|
241
255
|
class="h-full relative"
|
|
@@ -284,7 +298,11 @@ let editorSettingsPanelSize = 100 - editorPanelSize;
|
|
|
284
298
|
{#if !noEditor}
|
|
285
299
|
<div class="border-t">
|
|
286
300
|
{#key forceReload}
|
|
287
|
-
<FlowModuleScript
|
|
301
|
+
<FlowModuleScript
|
|
302
|
+
showAllCode={false}
|
|
303
|
+
path={flowModule.value.path}
|
|
304
|
+
hash={flowModule.value.hash}
|
|
305
|
+
/>
|
|
288
306
|
{/key}
|
|
289
307
|
</div>
|
|
290
308
|
{/if}
|
|
@@ -315,6 +333,10 @@ let editorSettingsPanelSize = 100 - editorPanelSize;
|
|
|
315
333
|
bind:args={flowModule.value.input_transforms}
|
|
316
334
|
extraLib={stepPropPicker.extraLib}
|
|
317
335
|
{enableAi}
|
|
336
|
+
on:changeArg={(e) => {
|
|
337
|
+
const { argName } = e.detail
|
|
338
|
+
setFlowInput(argName)
|
|
339
|
+
}}
|
|
318
340
|
/>
|
|
319
341
|
</PropPickerWrapper>
|
|
320
342
|
</div>
|
|
@@ -416,11 +438,21 @@ let editorSettingsPanelSize = 100 - editorPanelSize;
|
|
|
416
438
|
bind:seconds={flowModule.value.concurrency_time_window_s}
|
|
417
439
|
/>
|
|
418
440
|
</Label>
|
|
419
|
-
<Label label="Custom concurrency key">
|
|
420
|
-
<
|
|
421
|
-
>
|
|
422
|
-
|
|
423
|
-
|
|
441
|
+
<Label label="Custom concurrency key (optional)">
|
|
442
|
+
<svelte:fragment slot="header">
|
|
443
|
+
<Tooltip>
|
|
444
|
+
Concurrency keys are global, you can have them be workspace specific
|
|
445
|
+
using the variable `$workspace`. You can also use an argument's value
|
|
446
|
+
using `$args[name_of_arg]`</Tooltip
|
|
447
|
+
>
|
|
448
|
+
</svelte:fragment>
|
|
449
|
+
<input
|
|
450
|
+
type="text"
|
|
451
|
+
autofocus
|
|
452
|
+
disabled={!$enterpriseLicense}
|
|
453
|
+
bind:value={flowModule.value.custom_concurrency_key}
|
|
454
|
+
placeholder={`$workspace/script/${$pathStore}-$args[foo]`}
|
|
455
|
+
/>
|
|
424
456
|
</Label>
|
|
425
457
|
{:else}
|
|
426
458
|
<Alert type="warning" title="Limitation" size="xs">
|
|
@@ -1,11 +1,16 @@
|
|
|
1
1
|
<script>import HighlightCode from '../../HighlightCode.svelte';
|
|
2
|
+
import TimeAgo from '../../TimeAgo.svelte';
|
|
2
3
|
import { ScriptService } from '../../../gen';
|
|
3
4
|
import { getScriptByPath } from '../../../scripts';
|
|
4
5
|
import { workspaceStore } from '../../../stores';
|
|
5
6
|
export let path;
|
|
6
7
|
export let hash = undefined;
|
|
8
|
+
export let showDate = false;
|
|
9
|
+
export let showAllCode = true;
|
|
7
10
|
let code;
|
|
8
11
|
let language;
|
|
12
|
+
let lock = undefined;
|
|
13
|
+
let date = undefined;
|
|
9
14
|
let notFound = false;
|
|
10
15
|
async function loadCode(path, hash) {
|
|
11
16
|
try {
|
|
@@ -15,6 +20,8 @@ async function loadCode(path, hash) {
|
|
|
15
20
|
: await getScriptByPath(path);
|
|
16
21
|
code = script.content;
|
|
17
22
|
language = script.language;
|
|
23
|
+
lock = script.lock;
|
|
24
|
+
date = script.created_at;
|
|
18
25
|
}
|
|
19
26
|
catch (e) {
|
|
20
27
|
notFound = true;
|
|
@@ -22,12 +29,44 @@ async function loadCode(path, hash) {
|
|
|
22
29
|
}
|
|
23
30
|
}
|
|
24
31
|
$: path && loadCode(path, hash);
|
|
32
|
+
function toggleShowAll() {
|
|
33
|
+
showAllCode = !showAllCode;
|
|
34
|
+
}
|
|
25
35
|
</script>
|
|
26
36
|
|
|
27
37
|
<div class="flex flex-col flex-1 h-full overflow-auto p-2">
|
|
38
|
+
{#if showDate && date}
|
|
39
|
+
<span class="text-xs text-tertiary mb-4"><TimeAgo {date} /></span>
|
|
40
|
+
{/if}
|
|
28
41
|
{#if notFound}
|
|
29
42
|
<div class="text-red-400">script not found at {path} in workspace {$workspaceStore}</div>
|
|
30
|
-
{:else}
|
|
43
|
+
{:else if showAllCode}
|
|
31
44
|
<HighlightCode {language} {code} />
|
|
45
|
+
{:else}
|
|
46
|
+
<div class="code-container h-full">
|
|
47
|
+
<HighlightCode {language} code={code?.split('\n').slice(0, 10).join('\n')} />
|
|
48
|
+
</div>
|
|
49
|
+
<button on:click={toggleShowAll}>Show all</button>
|
|
50
|
+
{/if}
|
|
51
|
+
|
|
52
|
+
{#if lock}
|
|
53
|
+
<h3 class="mb-2 mt-6">Lock</h3>
|
|
54
|
+
<pre class="bg-surface-secondary text-xs p-2 overflow-auto w-full">{lock}</pre>
|
|
32
55
|
{/if}
|
|
33
56
|
</div>
|
|
57
|
+
|
|
58
|
+
<style>
|
|
59
|
+
.code-container {
|
|
60
|
+
position: relative;
|
|
61
|
+
overflow: hidden;
|
|
62
|
+
}
|
|
63
|
+
.code-container::after {
|
|
64
|
+
content: '';
|
|
65
|
+
position: absolute;
|
|
66
|
+
bottom: 0;
|
|
67
|
+
left: 0;
|
|
68
|
+
right: 0;
|
|
69
|
+
height: 100px;
|
|
70
|
+
background: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgb(var(--color-surface)));
|
|
71
|
+
pointer-events: none;
|
|
72
|
+
}</style>
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
<script>import
|
|
2
|
-
import Toggle from '../../Toggle.svelte';
|
|
1
|
+
<script>import Toggle from '../../Toggle.svelte';
|
|
3
2
|
import Tooltip from '../../Tooltip.svelte';
|
|
4
3
|
import InputTransformForm from '../../InputTransformForm.svelte';
|
|
5
|
-
import { getContext } from 'svelte';
|
|
4
|
+
import { getContext, tick } from 'svelte';
|
|
6
5
|
import { Alert, Tab, Tabs } from '../../common';
|
|
7
6
|
import { GroupService } from '../../../gen';
|
|
8
7
|
import { emptySchema, emptyString } from '../../../utils';
|
|
@@ -12,6 +11,8 @@ import PropPickerWrapper from '../propPicker/PropPickerWrapper.svelte';
|
|
|
12
11
|
import Section from '../../Section.svelte';
|
|
13
12
|
import Label from '../../Label.svelte';
|
|
14
13
|
import SuspendDrawer from './SuspendDrawer.svelte';
|
|
14
|
+
import EditableSchemaDrawer from '../../schema/EditableSchemaDrawer.svelte';
|
|
15
|
+
import AddProperty from '../../schema/AddProperty.svelte';
|
|
15
16
|
const { selectedId, flowStateStore } = getContext('FlowEditorContext');
|
|
16
17
|
const result = $flowStateStore[$selectedId]?.previewResult ?? {};
|
|
17
18
|
let editor = undefined;
|
|
@@ -36,39 +37,40 @@ $: {
|
|
|
36
37
|
loadGroups();
|
|
37
38
|
}
|
|
38
39
|
}
|
|
40
|
+
let jsonView = false;
|
|
39
41
|
</script>
|
|
40
42
|
|
|
41
43
|
<Section label="Suspend/Approval/Prompt" class="w-full">
|
|
44
|
+
<svelte:fragment slot="action">
|
|
45
|
+
<SuspendDrawer text="Approval/Prompt helpers" />
|
|
46
|
+
</svelte:fragment>
|
|
42
47
|
<svelte:fragment slot="header">
|
|
43
|
-
<
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
<
|
|
50
|
-
|
|
51
|
-
|
|
48
|
+
<div class="flex flex-row items-center gap-2">
|
|
49
|
+
<Tooltip documentationLink="https://www.windmill.dev/docs/flows/flow_approval">
|
|
50
|
+
If defined, at the end of the step, the flow will be suspended until it receives external
|
|
51
|
+
requests to be resumed or canceled. This is most useful to implement approval steps but can
|
|
52
|
+
be used flexibly for other purposes.
|
|
53
|
+
</Tooltip>
|
|
54
|
+
<Toggle
|
|
55
|
+
size="xs"
|
|
56
|
+
checked={isSuspendEnabled}
|
|
57
|
+
on:change={() => {
|
|
58
|
+
if (isSuspendEnabled && flowModule.suspend != undefined) {
|
|
59
|
+
flowModule.suspend = undefined
|
|
60
|
+
} else {
|
|
61
|
+
flowModule.suspend = {
|
|
62
|
+
required_events: 1,
|
|
63
|
+
timeout: 1800
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}}
|
|
67
|
+
options={{
|
|
68
|
+
right: 'Suspend flow execution until events/approvals received'
|
|
69
|
+
}}
|
|
70
|
+
/>
|
|
52
71
|
</div>
|
|
53
72
|
</svelte:fragment>
|
|
54
73
|
|
|
55
|
-
<Toggle
|
|
56
|
-
checked={isSuspendEnabled}
|
|
57
|
-
on:change={() => {
|
|
58
|
-
if (isSuspendEnabled && flowModule.suspend != undefined) {
|
|
59
|
-
flowModule.suspend = undefined
|
|
60
|
-
} else {
|
|
61
|
-
flowModule.suspend = {
|
|
62
|
-
required_events: 1,
|
|
63
|
-
timeout: 1800
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
}}
|
|
67
|
-
options={{
|
|
68
|
-
right: 'Suspend flow execution until events/approvals received'
|
|
69
|
-
}}
|
|
70
|
-
/>
|
|
71
|
-
|
|
72
74
|
<div class="overflow-x-auto scrollbar-hidden">
|
|
73
75
|
<Tabs bind:selected={suspendTabSelected}>
|
|
74
76
|
<Tab size="xs" value="core" disabled={!isSuspendEnabled}>
|
|
@@ -179,46 +181,84 @@ $: {
|
|
|
179
181
|
{/if}
|
|
180
182
|
</div>
|
|
181
183
|
{:else}
|
|
182
|
-
<div class="
|
|
183
|
-
|
|
184
|
-
{#if
|
|
185
|
-
<
|
|
186
|
-
|
|
184
|
+
<div class="grid grid-cols-4 mt-4 gap-8">
|
|
185
|
+
<div class="col-span-2">
|
|
186
|
+
{#if flowModule?.suspend?.resume_form}
|
|
187
|
+
<EditableSchemaDrawer
|
|
188
|
+
bind:schema={flowModule.suspend.resume_form.schema}
|
|
189
|
+
on:change={(e) => {
|
|
190
|
+
const schema = e.detail
|
|
187
191
|
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
192
|
+
// If the schema is empty, remove the form
|
|
193
|
+
if (Object.keys(schema?.properties ?? {}).length === 0) {
|
|
194
|
+
tick().then(() => {
|
|
195
|
+
if (!flowModule.suspend) return
|
|
196
|
+
flowModule.suspend.resume_form = undefined
|
|
197
|
+
})
|
|
198
|
+
}
|
|
193
199
|
}}
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
200
|
+
{jsonView}
|
|
201
|
+
/>
|
|
202
|
+
{:else if emptyString($enterpriseLicense)}
|
|
203
|
+
<Alert type="warning" title="Adding a form to the approval page is an EE feature" />
|
|
204
|
+
{:else}
|
|
205
|
+
<div class="flex flex-col items-end mb-2 w-full">
|
|
206
|
+
<Toggle
|
|
207
|
+
checked={false}
|
|
208
|
+
label="JSON View"
|
|
209
|
+
size="xs"
|
|
210
|
+
options={{
|
|
211
|
+
right: 'JSON Editor',
|
|
212
|
+
rightTooltip:
|
|
213
|
+
'Arguments can be edited either using the wizard, or by editing their JSON Schema.'
|
|
214
|
+
}}
|
|
215
|
+
lightMode
|
|
216
|
+
on:change={() => {
|
|
217
|
+
if (flowModule.suspend) {
|
|
198
218
|
flowModule.suspend.resume_form = {
|
|
199
219
|
schema: emptySchema()
|
|
200
220
|
}
|
|
201
|
-
}
|
|
202
|
-
|
|
221
|
+
}
|
|
222
|
+
jsonView = true
|
|
223
|
+
}}
|
|
224
|
+
/>
|
|
225
|
+
</div>
|
|
226
|
+
<AddProperty
|
|
227
|
+
on:change={(e) => {
|
|
228
|
+
jsonView = false
|
|
229
|
+
if (flowModule.suspend) {
|
|
230
|
+
flowModule.suspend.resume_form = {
|
|
231
|
+
schema: e.detail
|
|
203
232
|
}
|
|
204
233
|
}
|
|
205
234
|
}}
|
|
235
|
+
schema={{}}
|
|
206
236
|
/>
|
|
207
|
-
|
|
208
|
-
|
|
237
|
+
{/if}
|
|
238
|
+
</div>
|
|
239
|
+
<div class="col-span-2 flex flex-col gap-4">
|
|
240
|
+
{#if flowModule.suspend}
|
|
241
|
+
{#if emptyString($enterpriseLicense)}
|
|
242
|
+
<Alert type="warning" title="Adding a form to the approval page is an EE feature" />
|
|
243
|
+
{/if}
|
|
244
|
+
|
|
245
|
+
<div class="flex flex-col gap-2">
|
|
246
|
+
<div class="flex">
|
|
247
|
+
<SuspendDrawer text="Default args & Dynamic enums help" />
|
|
248
|
+
</div>
|
|
209
249
|
</div>
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
250
|
+
{/if}
|
|
251
|
+
{#if flowModule.suspend}
|
|
252
|
+
<Toggle
|
|
253
|
+
bind:checked={flowModule.suspend.hide_cancel}
|
|
254
|
+
size="xs"
|
|
255
|
+
options={{
|
|
256
|
+
right: 'Hide cancel button on approval page'
|
|
257
|
+
}}
|
|
258
|
+
disabled={!Boolean(flowModule?.suspend?.resume_form)}
|
|
259
|
+
/>
|
|
260
|
+
{/if}
|
|
261
|
+
</div>
|
|
222
262
|
</div>
|
|
223
263
|
{/if}
|
|
224
264
|
</Section>
|
|
@@ -11,10 +11,11 @@ import FlowInputsFlow from './FlowInputsFlow.svelte';
|
|
|
11
11
|
import FlowBranchesAllWrapper from './FlowBranchesAllWrapper.svelte';
|
|
12
12
|
import FlowBranchesOneWrapper from './FlowBranchesOneWrapper.svelte';
|
|
13
13
|
import FlowWhileLoop from './FlowWhileLoop.svelte';
|
|
14
|
+
import { initRequiredInputFilled } from '../utils';
|
|
14
15
|
export let flowModule;
|
|
15
16
|
export let noEditor = false;
|
|
16
17
|
export let enableAi = false;
|
|
17
|
-
const { selectedId, schedule, flowStateStore } = getContext('FlowEditorContext');
|
|
18
|
+
const { selectedId, schedule, flowStateStore, flowInputsStore } = getContext('FlowEditorContext');
|
|
18
19
|
let scriptKind = 'script';
|
|
19
20
|
let scriptTemplate = 'script';
|
|
20
21
|
// These pointers are used to easily access previewArgs of parent module, and previous module
|
|
@@ -39,6 +40,11 @@ async function createModuleFromScript(path, summary, kind, hash) {
|
|
|
39
40
|
}
|
|
40
41
|
flowModule = module;
|
|
41
42
|
$flowStateStore[module.id] = state;
|
|
43
|
+
if ($flowInputsStore) {
|
|
44
|
+
$flowInputsStore[module?.id] = {
|
|
45
|
+
requiredInputsFilled: initRequiredInputFilled(module?.value, $flowStateStore[module?.id]?.schema)
|
|
46
|
+
};
|
|
47
|
+
}
|
|
42
48
|
}
|
|
43
49
|
</script>
|
|
44
50
|
|
|
@@ -112,6 +118,15 @@ async function createModuleFromScript(path, summary, kind, hash) {
|
|
|
112
118
|
|
|
113
119
|
flowModule = module
|
|
114
120
|
$flowStateStore[module.id] = state
|
|
121
|
+
|
|
122
|
+
if ($flowInputsStore) {
|
|
123
|
+
$flowInputsStore[module.id] = {
|
|
124
|
+
requiredInputsFilled: initRequiredInputFilled(
|
|
125
|
+
module.value,
|
|
126
|
+
$flowStateStore[module.id].schema
|
|
127
|
+
)
|
|
128
|
+
}
|
|
129
|
+
}
|
|
115
130
|
}}
|
|
116
131
|
failureModule={$selectedId === 'failure'}
|
|
117
132
|
/>
|
|
@@ -8,6 +8,7 @@ import ScheduleEditor from '../../ScheduleEditor.svelte';
|
|
|
8
8
|
import { ScheduleService } from '../../../gen';
|
|
9
9
|
import { workspaceStore } from '../../../stores';
|
|
10
10
|
import { Calendar } from 'lucide-svelte';
|
|
11
|
+
import Label from '../../Label.svelte';
|
|
11
12
|
const { schedule, flowStore, initialPath } = getContext('FlowEditorContext');
|
|
12
13
|
let schedules = undefined;
|
|
13
14
|
async function loadSchedules() {
|
|
@@ -26,15 +27,17 @@ let scheduleEditor;
|
|
|
26
27
|
$: initialPath && loadSchedules();
|
|
27
28
|
</script>
|
|
28
29
|
|
|
29
|
-
<div class="w-full
|
|
30
|
+
<div class="w-full flex flex-col gap-4 mb-4">
|
|
30
31
|
<!-- svelte-ignore a11y-autofocus -->
|
|
31
|
-
<
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
32
|
+
<Label label="Summary">
|
|
33
|
+
<input
|
|
34
|
+
autofocus
|
|
35
|
+
type="text"
|
|
36
|
+
placeholder="Short summary to be displayed when listed"
|
|
37
|
+
class="text-sm w-full"
|
|
38
|
+
bind:value={$schedule.summary}
|
|
39
|
+
/>
|
|
40
|
+
</Label>
|
|
38
41
|
</div>
|
|
39
42
|
|
|
40
43
|
<CronInput bind:schedule={$schedule.cron} bind:timezone={$schedule.timezone} />
|
|
@@ -7,7 +7,6 @@ import { inferArgs } from '../../../infer';
|
|
|
7
7
|
import { workspaceStore } from '../../../stores';
|
|
8
8
|
import { Loader2, Save, DiffIcon } from 'lucide-svelte';
|
|
9
9
|
import { cleanValueProperties, emptySchema, orderedJsonStringify, sendUserToast } from '../../../utils';
|
|
10
|
-
import { cloneDeep } from 'lodash';
|
|
11
10
|
import { createEventDispatcher } from 'svelte';
|
|
12
11
|
import { fade } from 'svelte/transition';
|
|
13
12
|
let scriptEditorDrawer;
|
|
@@ -19,7 +18,7 @@ export async function openDrawer(hash, cb) {
|
|
|
19
18
|
workspace: $workspaceStore,
|
|
20
19
|
hash
|
|
21
20
|
});
|
|
22
|
-
savedScript =
|
|
21
|
+
savedScript = structuredClone(script);
|
|
23
22
|
callback = cb;
|
|
24
23
|
}
|
|
25
24
|
let callback = undefined;
|
|
@@ -30,10 +29,11 @@ async function saveScript() {
|
|
|
30
29
|
try {
|
|
31
30
|
script.schema = script.schema ?? emptySchema();
|
|
32
31
|
try {
|
|
33
|
-
await inferArgs(script.language, script.content, script.schema);
|
|
32
|
+
const noMainFunc = await inferArgs(script.language, script.content, script.schema);
|
|
33
|
+
script.no_main_func = noMainFunc || undefined;
|
|
34
34
|
}
|
|
35
35
|
catch (error) {
|
|
36
|
-
sendUserToast(`
|
|
36
|
+
sendUserToast(`Could not parse code, are you sure it is valid?`, true);
|
|
37
37
|
}
|
|
38
38
|
await ScriptService.createScript({
|
|
39
39
|
workspace: $workspaceStore,
|
|
@@ -47,7 +47,7 @@ async function saveScript() {
|
|
|
47
47
|
lock: undefined
|
|
48
48
|
}
|
|
49
49
|
});
|
|
50
|
-
savedScript =
|
|
50
|
+
savedScript = structuredClone(script);
|
|
51
51
|
callback?.();
|
|
52
52
|
}
|
|
53
53
|
catch (error) {
|
|
@@ -185,7 +185,7 @@ async function checkForUnsavedChanges() {
|
|
|
185
185
|
button: {
|
|
186
186
|
text: 'Restore to saved',
|
|
187
187
|
onClick: () => {
|
|
188
|
-
script =
|
|
188
|
+
script = structuredClone(savedScript)
|
|
189
189
|
diffDrawer.closeDrawer()
|
|
190
190
|
}
|
|
191
191
|
}
|
|
@@ -49,7 +49,10 @@ function filterDependentComponents(modules, id) {
|
|
|
49
49
|
: Object.fromEntries(modules
|
|
50
50
|
.map((mod) => [
|
|
51
51
|
mod.id,
|
|
52
|
-
getModuleExprs(mod).filter((expr) =>
|
|
52
|
+
getModuleExprs(mod).filter((expr) => {
|
|
53
|
+
const pattern = new RegExp(`\\bresults\\.${id}(?:\\b|\\.)`);
|
|
54
|
+
return pattern.test(expr);
|
|
55
|
+
})
|
|
53
56
|
])
|
|
54
57
|
.filter((x) => x[1].length > 0));
|
|
55
58
|
}
|
|
@@ -16,7 +16,10 @@ export async function loadFlowModuleState(flowModule) {
|
|
|
16
16
|
flowModule.value.type == 'flow') {
|
|
17
17
|
flowModule.value.input_transforms = input_transforms;
|
|
18
18
|
}
|
|
19
|
-
return {
|
|
19
|
+
return {
|
|
20
|
+
schema,
|
|
21
|
+
previewResult: NEVER_TESTED_THIS_FAR
|
|
22
|
+
};
|
|
20
23
|
}
|
|
21
24
|
catch (e) {
|
|
22
25
|
console.debug(e);
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { classNames } from '../../../utils';
|
|
3
3
|
import { DollarSign } from 'lucide-svelte';
|
|
4
4
|
const { selectedId } = getContext('FlowEditorContext');
|
|
5
|
-
$: settingsClass = classNames('border w-full rounded-sm p-2 bg-surface text-sm cursor-pointer flex items-center', $selectedId == 'constants' ? 'outline outline-offset-1 outline-2 outline-slate-900' : '');
|
|
5
|
+
$: settingsClass = classNames('border w-full rounded-sm p-2 bg-surface text-sm cursor-pointer flex items-center', $selectedId == 'constants' ? 'outline outline-offset-1 outline-2 outline-slate-900 dark:bg-white/5 dark:outline-slate-800/60 dark:border-gray-400' : '');
|
|
6
6
|
</script>
|
|
7
7
|
|
|
8
8
|
<button on:click={() => ($selectedId = 'constants')} class={settingsClass}>
|
|
@@ -44,7 +44,7 @@ const { currentStepStore: copilotCurrentStepStore } = getContext('FlowCopilotCon
|
|
|
44
44
|
'z-10',
|
|
45
45
|
$copilotCurrentStepStore !== undefined ? 'border-gray-500/75' : 'cursor-pointer',
|
|
46
46
|
'border transition-colors duration-[400ms] ease-linear rounded-sm px-2 py-1 bg-surface text-sm flex justify-between items-center flex-row overflow-x-hidden relative',
|
|
47
|
-
$selectedId?.includes('failure') ? 'outline outline-offset-1 outline-2 outline-slate-900' : ''
|
|
47
|
+
$selectedId?.includes('failure') ? 'outline outline-offset-1 outline-2 outline-slate-900 dark:outline-slate-900/0 dark:bg-surface-secondary dark:border-gray-400' : ''
|
|
48
48
|
)}
|
|
49
49
|
style={small ? 'min-width: 200px' : 'min-width: 275px'}
|
|
50
50
|
>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script>import Badge from '../../common/badge/Badge.svelte';
|
|
2
2
|
import Popover from '../../Popover.svelte';
|
|
3
3
|
import { classNames } from '../../../utils';
|
|
4
|
-
import { Bed, Database, Gauge, Move, PhoneIncoming, Repeat, Square, Voicemail, X } from 'lucide-svelte';
|
|
4
|
+
import { AlertTriangle, Bed, Database, Gauge, Move, PhoneIncoming, Repeat, Square, Voicemail, X } from 'lucide-svelte';
|
|
5
5
|
import { createEventDispatcher, getContext } from 'svelte';
|
|
6
6
|
import { fade } from 'svelte/transition';
|
|
7
7
|
export let selected = false;
|
|
@@ -18,6 +18,8 @@ export let label;
|
|
|
18
18
|
export let modType = undefined;
|
|
19
19
|
export let bgColor = '';
|
|
20
20
|
export let concurrency = false;
|
|
21
|
+
export let retries = undefined;
|
|
22
|
+
const { flowInputsStore } = getContext('FlowGraphContext');
|
|
21
23
|
const dispatch = createEventDispatcher();
|
|
22
24
|
const { currentStepStore: copilotCurrentStepStore } = getContext('FlowCopilotContext') || {};
|
|
23
25
|
</script>
|
|
@@ -41,11 +43,13 @@ const { currentStepStore: copilotCurrentStepStore } = getContext('FlowCopilotCon
|
|
|
41
43
|
transition:fade|local={{ duration: 200 }}
|
|
42
44
|
class="center-center rounded border bg-surface border-gray-400 text-secondary px-1 py-0.5"
|
|
43
45
|
>
|
|
46
|
+
{#if retries}<span class="text-red-400 mr-2">{retries}</span>{/if}
|
|
44
47
|
<Repeat size={14} />
|
|
45
48
|
</div>
|
|
46
49
|
<svelte:fragment slot="text">Retries</svelte:fragment>
|
|
47
50
|
</Popover>
|
|
48
51
|
{/if}
|
|
52
|
+
|
|
49
53
|
{#if concurrency}
|
|
50
54
|
<Popover notClickable>
|
|
51
55
|
<div
|
|
@@ -113,6 +117,7 @@ const { currentStepStore: copilotCurrentStepStore } = getContext('FlowCopilotCon
|
|
|
113
117
|
</Popover>
|
|
114
118
|
{/if}
|
|
115
119
|
</div>
|
|
120
|
+
|
|
116
121
|
<div
|
|
117
122
|
class="flex gap-1 justify-between items-center w-full overflow-hidden rounded-sm
|
|
118
123
|
border border-gray-400 p-2 text-2xs module text-primary"
|
|
@@ -147,6 +152,19 @@ hover:border-blue-700 {selected ? '' : '!hidden'}"
|
|
|
147
152
|
>
|
|
148
153
|
<Move class="mx-[3px]" size={14} strokeWidth={2} />
|
|
149
154
|
</button>
|
|
155
|
+
|
|
156
|
+
{#if id && !Object.values($flowInputsStore?.[id]?.requiredInputsFilled || {}).every(Boolean)}
|
|
157
|
+
<div class="absolute -top-[10px] -left-[10px]">
|
|
158
|
+
<Popover>
|
|
159
|
+
<svelte:fragment slot="text">At least one required input is not set.</svelte:fragment>
|
|
160
|
+
<div
|
|
161
|
+
class="flex items-center justify-center h-full w-full rounded-md p-0.5 border border-yellow-600 text-yellow-600 bg-yellow-100 duration-150 hover:bg-yellow-300"
|
|
162
|
+
>
|
|
163
|
+
<AlertTriangle size={14} strokeWidth={2} />
|
|
164
|
+
</div>
|
|
165
|
+
</Popover>
|
|
166
|
+
</div>
|
|
167
|
+
{/if}
|
|
150
168
|
{/if}
|
|
151
169
|
</div>
|
|
152
170
|
|
|
@@ -22,7 +22,7 @@ export let disableTutorials = false;
|
|
|
22
22
|
export let disableAi = false;
|
|
23
23
|
export let smallErrorHandler = false;
|
|
24
24
|
let flowTutorials = undefined;
|
|
25
|
-
const { selectedId, moving, history, flowStateStore, flowStore } = getContext('FlowEditorContext');
|
|
25
|
+
const { selectedId, moving, history, flowStateStore, flowStore, flowInputsStore } = getContext('FlowEditorContext');
|
|
26
26
|
async function insertNewModuleAtIndex(modules, index, kind, wsScript) {
|
|
27
27
|
push(history, $flowStore);
|
|
28
28
|
var module = emptyModule($flowStateStore, $flowStore, kind == 'flow');
|
|
@@ -195,6 +195,7 @@ const dispatch = createEventDispatcher();
|
|
|
195
195
|
maxHeight={minHeight}
|
|
196
196
|
modules={$flowStore.value?.modules}
|
|
197
197
|
{selectedId}
|
|
198
|
+
{flowInputsStore}
|
|
198
199
|
on:delete={({ detail }) => {
|
|
199
200
|
let e = detail.detail
|
|
200
201
|
dependents = getDependentComponents(e.id, $flowStore)
|
|
@@ -202,6 +203,10 @@ const dispatch = createEventDispatcher();
|
|
|
202
203
|
push(history, $flowStore)
|
|
203
204
|
selectNextId(e.id)
|
|
204
205
|
removeAtId($flowStore.value.modules, e.id)
|
|
206
|
+
|
|
207
|
+
if ($flowInputsStore) {
|
|
208
|
+
delete $flowInputsStore[e.id]
|
|
209
|
+
}
|
|
205
210
|
$flowStore = $flowStore
|
|
206
211
|
}
|
|
207
212
|
|
|
@@ -4,7 +4,7 @@ import { Badge } from '../../common';
|
|
|
4
4
|
import { SlidersHorizontal } from 'lucide-svelte';
|
|
5
5
|
const { selectedId, flowStore } = getContext('FlowEditorContext');
|
|
6
6
|
$: settingsClass = classNames('border w-full rounded-sm p-2 bg-surface text-sm cursor-pointer flex items-center', $selectedId?.startsWith('settings')
|
|
7
|
-
? 'outline outline-offset-1 outline-2 outline-slate-900'
|
|
7
|
+
? 'outline outline-offset-1 outline-2 outline-slate-900 dark:bg-white/5 dark:outline-slate-800/60 dark:border-gray-400'
|
|
8
8
|
: '');
|
|
9
9
|
</script>
|
|
10
10
|
|