windmill-components 1.542.5 → 1.555.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/aiStore.d.ts +13 -0
- package/package/aiStore.js +70 -0
- package/package/common.d.ts +6 -2
- package/package/components/AIAgentLogViewer.svelte +1 -1
- package/package/components/AIProviderPicker.svelte +25 -8
- package/package/components/ArgEnum.svelte +17 -7
- package/package/components/ArgEnum.svelte.d.ts +1 -0
- package/package/components/ArgInput.svelte +257 -188
- package/package/components/ArgInput.svelte.d.ts +4 -1
- package/package/components/ArrayTypeNarrowing.svelte +38 -32
- package/package/components/AutoscalingEvents.svelte +21 -5
- package/package/components/AutoscalingEvents.svelte.d.ts +4 -18
- package/package/components/ChannelSelector.svelte +92 -18
- package/package/components/ChannelSelector.svelte.d.ts +2 -0
- package/package/components/ConnectionSection.svelte +12 -1
- package/package/components/DateTimeInput.svelte +8 -6
- package/package/components/DeployButton.svelte +1 -1
- package/package/components/Dev.svelte +24 -9
- package/package/components/Dev.svelte.d.ts +23 -1
- package/package/components/DisplayResult.svelte +36 -23
- package/package/components/DropdownV2.svelte +8 -2
- package/package/components/DropdownV2.svelte.d.ts +1 -0
- package/package/components/DynamicInput.svelte +10 -10
- package/package/components/EditableSchemaForm.svelte +28 -13
- package/package/components/Editor.svelte +2 -1
- package/package/components/EditorSettings.svelte +5 -5
- package/package/components/EditorSettings.svelte.d.ts +4 -18
- package/package/components/ErrorOrRecoveryHandler.svelte +14 -20
- package/package/components/FakeMonacoPlaceHolder.svelte +4 -2
- package/package/components/FakeMonacoPlaceHolder.svelte.d.ts +1 -0
- package/package/components/FieldHeader.svelte +5 -7
- package/package/components/FirstStepInputs.svelte +1 -1
- package/package/components/FlowHistoryJobPicker.svelte +3 -0
- package/package/components/FlowHistoryJobPicker.svelte.d.ts +1 -0
- package/package/components/FlowJobResult.svelte +5 -5
- package/package/components/FlowLogRow.svelte +2 -2
- package/package/components/FlowLogViewer.svelte +228 -57
- package/package/components/FlowLogViewer.svelte.d.ts +16 -5
- package/package/components/FlowLogViewerWrapper.svelte +56 -3
- package/package/components/FlowLogViewerWrapper.svelte.d.ts +4 -3
- package/package/components/FlowLoopIterationPreview.svelte +4 -4
- package/package/components/FlowLoopIterationPreview.svelte.d.ts +1 -1
- package/package/components/FlowMetadata.svelte +3 -4
- package/package/components/FlowMetadata.svelte.d.ts +4 -18
- package/package/components/FlowPlugConnect.svelte +8 -2
- package/package/components/FlowPlugConnect.svelte.d.ts +1 -0
- package/package/components/FlowPreviewContent.svelte +121 -94
- package/package/components/FlowPreviewContent.svelte.d.ts +3 -3
- package/package/components/FlowStatusViewer.svelte +63 -59
- package/package/components/FlowStatusViewer.svelte.d.ts +2 -2
- package/package/components/FlowStatusViewerInner.svelte +186 -94
- package/package/components/FlowStatusViewerInner.svelte.d.ts +10 -3
- package/package/components/FlowTimeline.svelte +110 -131
- package/package/components/FlowTimeline.svelte.d.ts +13 -4
- package/package/components/FlowTimelineBar.svelte +227 -0
- package/package/components/FlowTimelineBar.svelte.d.ts +24 -0
- package/package/components/FolderEditor.svelte +6 -7
- package/package/components/GroupEditor.svelte +148 -141
- package/package/components/GroupEditor.svelte.d.ts +5 -4
- package/package/components/InputTransformForm.svelte +193 -71
- package/package/components/InputTransformForm.svelte.d.ts +3 -0
- package/package/components/InputTransformSchemaForm.svelte +10 -5
- package/package/components/InputTransformSchemaForm.svelte.d.ts +2 -0
- package/package/components/InstanceSetting.svelte +34 -51
- package/package/components/InstanceSettings.svelte +12 -21
- package/package/components/JobArgs.svelte +15 -16
- package/package/components/JobArgs.svelte.d.ts +4 -18
- package/package/components/JobLoader.svelte +23 -42
- package/package/components/JobLoader.svelte.d.ts +2 -0
- package/package/components/JobStatus.svelte +1 -1
- package/package/components/JobStatus.svelte.d.ts +4 -18
- package/package/components/JsonEditor.svelte +18 -9
- package/package/components/JsonEditor.svelte.d.ts +1 -1
- package/package/components/JsonInputs.svelte +1 -1
- package/package/components/ModulePreviewForm.svelte +23 -19
- package/package/components/ModulePreviewResultViewer.svelte +1 -7
- package/package/components/NextcloudSetting.svelte +6 -1
- package/package/components/NumberTypeNarrowing.svelte +32 -16
- package/package/components/ObjectStoreConfigSettings.svelte +27 -19
- package/package/components/Password.svelte +7 -11
- package/package/components/Password.svelte.d.ts +5 -20
- package/package/components/PasswordArgInput.svelte +35 -15
- package/package/components/PasswordArgInput.svelte.d.ts +4 -18
- package/package/components/Path.svelte +2 -8
- package/package/components/Path.svelte.d.ts +1 -1
- package/package/components/QueuePosition.svelte +6 -2
- package/package/components/ResourceEditor.svelte +3 -10
- package/package/components/ResourcePicker.svelte +85 -72
- package/package/components/ResourcePicker.svelte.d.ts +2 -0
- package/package/components/RunChart.svelte +1 -1
- package/package/components/RunForm.svelte +16 -21
- package/package/components/S3ArrayHelperButton.svelte +18 -0
- package/package/components/S3ArrayHelperButton.svelte.d.ts +9 -0
- package/package/components/S3FilePicker.svelte +1 -1
- package/package/components/SchemaForm.svelte +18 -10
- package/package/components/SchemaForm.svelte.d.ts +7 -1
- package/package/components/SchemaFormWithArgPicker.svelte +1 -1
- package/package/components/ScriptBuilder.svelte +2 -2
- package/package/components/ScriptEditor.svelte +9 -9
- package/package/components/ScriptEditor.svelte.d.ts +1 -1
- package/package/components/ShareModal.svelte +4 -4
- package/package/components/SimpleEditor.svelte +6 -2
- package/package/components/SimpleEditor.svelte.d.ts +3 -0
- package/package/components/StringTypeNarrowing.svelte +44 -25
- package/package/components/StringTypeNarrowing.svelte.d.ts +1 -1
- package/package/components/SuperadminSettingsInner.svelte +3 -3
- package/package/components/TeamSelector.svelte +83 -37
- package/package/components/TeamSelector.svelte.d.ts +0 -1
- package/package/components/TemplateEditor.svelte +18 -9
- package/package/components/Toast.svelte +2 -7
- package/package/components/Toast.svelte.d.ts +4 -18
- package/package/components/Toggle.svelte +17 -7
- package/package/components/ToggleHubWorkspaceQuick.svelte +3 -3
- package/package/components/WorkerGroup.svelte +2 -14
- package/package/components/apps/components/buttons/AppButton.svelte +66 -38
- package/package/components/apps/components/display/dbtable/InsertRow.svelte +32 -2
- package/package/components/apps/components/display/dbtable/queries/insert.js +2 -1
- package/package/components/apps/components/display/dbtable/utils.d.ts +8 -8
- package/package/components/apps/components/display/table/AppAggridInfiniteTable.svelte +13 -4
- package/package/components/apps/components/display/table/SyncColumnDefs.svelte +2 -2
- package/package/components/apps/components/display/table/utils.js +14 -4
- package/package/components/apps/components/helpers/RefreshButton.svelte +5 -1
- package/package/components/apps/components/helpers/RunnableComponent.svelte +3 -5
- package/package/components/apps/components/helpers/RunnableWrapper.svelte.d.ts +1 -0
- package/package/components/apps/components/inputs/currency/CurrencyInput.svelte +2 -1
- package/package/components/apps/components/layout/AppTabs.svelte +116 -71
- package/package/components/apps/components/layout/AppTabs.svelte.d.ts +1 -0
- package/package/components/apps/editor/AppEditorHeader.svelte +33 -271
- package/package/components/apps/editor/AppEditorHeaderDeploy.svelte +233 -0
- package/package/components/apps/editor/AppEditorHeaderDeploy.svelte.d.ts +18 -0
- package/package/components/apps/editor/AppEditorHeaderDeployInitialDraft.svelte +47 -0
- package/package/components/apps/editor/AppEditorHeaderDeployInitialDraft.svelte.d.ts +8 -0
- package/package/components/apps/editor/GridEditor.svelte +7 -2
- package/package/components/apps/editor/appDeploy.svelte.d.ts +1 -0
- package/package/components/apps/editor/appDeploy.svelte.js +6 -0
- package/package/components/apps/editor/appUtils.d.ts +1 -0
- package/package/components/apps/editor/appUtils.js +30 -1
- package/package/components/apps/editor/component/ComponentInner.svelte +1 -0
- package/package/components/apps/editor/component/ComponentNavigation.svelte +3 -1
- package/package/components/apps/editor/component/components.d.ts +19 -4
- package/package/components/apps/editor/component/components.js +23 -3
- package/package/components/apps/editor/contextPanel/ComponentOutputViewer.svelte +1 -1
- package/package/components/apps/editor/inlineScriptsPanel/EmptyInlineScript.svelte +6 -4
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptEditor.svelte.d.ts +1 -1
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptEditorDrawer.svelte.d.ts +1 -1
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte.d.ts +1 -1
- package/package/components/apps/editor/settingsPanel/ComponentPanel.svelte +2 -0
- package/package/components/apps/editor/settingsPanel/GridTab.svelte +19 -1
- package/package/components/apps/editor/settingsPanel/GridTab.svelte.d.ts +3 -1
- package/package/components/apps/editor/settingsPanel/GridTabHidden.svelte +52 -0
- package/package/components/apps/editor/settingsPanel/GridTabHidden.svelte.d.ts +9 -0
- package/package/components/apps/editor/settingsPanel/InputsSpecEditor.svelte +58 -8
- package/package/components/auditLogs/AuditLogsFilters.svelte +7 -1
- package/package/components/auditLogs/AuditLogsTable.svelte +17 -7
- package/package/components/auditLogs/AuditLogsTable.svelte.d.ts +1 -0
- package/package/components/common/CloseButton.svelte +2 -2
- package/package/components/common/CloseButton.svelte.d.ts +1 -0
- package/package/components/common/ResizeTransitionWrapper.svelte +39 -0
- package/package/components/common/ResizeTransitionWrapper.svelte.d.ts +12 -0
- package/package/components/common/badge/CountBadge.svelte +29 -0
- package/package/components/common/badge/CountBadge.svelte.d.ts +8 -0
- package/package/components/common/button/Button.svelte +1 -0
- package/package/components/common/button/ConnectionButton.svelte +6 -1
- package/package/components/common/button/ConnectionButton.svelte.d.ts +2 -0
- package/package/components/common/button/RefreshButton.svelte +8 -4
- package/package/components/common/button/RefreshButton.svelte.d.ts +3 -0
- package/package/components/common/calendarPicker/CalendarPicker.svelte +1 -1
- package/package/components/common/fileInput/FileInput.svelte +7 -6
- package/package/components/common/fileUpload/S3ArgInput.svelte +11 -9
- package/package/components/common/fileUpload/S3ArgInput.svelte.d.ts +1 -0
- package/package/components/common/layout/List.svelte +3 -7
- package/package/components/common/layout/List.svelte.d.ts +7 -29
- package/package/components/common/popup/PopupV2.svelte +14 -25
- package/package/components/common/popup/PopupV2.svelte.d.ts +4 -2
- package/package/components/common/table/ScriptRow.svelte +22 -2
- package/package/components/common/toggleButton-v2/ToggleButton.svelte +17 -26
- package/package/components/common/toggleButton-v2/ToggleButton.svelte.d.ts +16 -30
- package/package/components/common/toggleButton-v2/ToggleButtonGroup.svelte +1 -1
- package/package/components/common/toggleButton-v2/ToggleButtonMore.svelte +3 -3
- package/package/components/common/toggleButton-v2/ToggleButtonMore.svelte.d.ts +1 -0
- package/package/components/copilot/CodeCompletionStatus.svelte +2 -1
- package/package/components/copilot/CronGen.svelte +1 -1
- package/package/components/copilot/FlowCopilotInputsModal.svelte +26 -23
- package/package/components/copilot/FlowInlineScriptAIButton.svelte +2 -2
- package/package/components/copilot/IteratorGen.svelte +30 -25
- package/package/components/copilot/IteratorGen.svelte.d.ts +8 -7
- package/package/components/copilot/MetadataGen.svelte +4 -3
- package/package/components/copilot/PredicateGen.svelte +15 -12
- package/package/components/copilot/PredicateGen.svelte.d.ts +5 -4
- package/package/components/copilot/RegexGen.svelte +1 -1
- package/package/components/copilot/ScriptFix.svelte +1 -1
- package/package/components/copilot/ScriptGen.svelte +2 -1
- package/package/components/copilot/StepGenQuick.svelte +15 -16
- package/package/components/copilot/StepGenQuick.svelte.d.ts +14 -13
- package/package/components/copilot/StepInputGen.svelte +50 -36
- package/package/components/copilot/StepInputGen.svelte.d.ts +13 -10
- package/package/components/copilot/StepInputsGen.svelte +18 -19
- package/package/components/copilot/StepInputsGen.svelte.d.ts +4 -18
- package/package/components/copilot/autocomplete/Autocompletor.js +1 -1
- package/package/components/copilot/autocomplete/request.js +1 -1
- package/package/components/copilot/chat/AIChat.svelte +2 -1
- package/package/components/copilot/chat/AIChatManager.svelte.js +5 -3
- package/package/components/copilot/chat/AiChatLayout.svelte +2 -1
- package/package/components/copilot/chat/ProviderModelSelector.svelte +11 -10
- package/package/components/copilot/chat/ProviderModelSelector.svelte.d.ts +2 -17
- package/package/components/copilot/chat/flow/FlowAIButton.svelte +1 -1
- package/package/components/copilot/chat/flow/FlowAIChat.svelte +4 -2
- package/package/components/copilot/chat/script/core.d.ts +4 -4
- package/package/components/copilot/chat/script/core.js +95 -35
- package/package/components/copilot/chat/shared.js +2 -1
- package/package/components/copilot/lib.d.ts +1 -0
- package/package/components/copilot/lib.js +7 -3
- package/package/components/custom_ui.d.ts +1 -0
- package/package/components/details/DetailPageLayout.svelte +3 -2
- package/package/components/details/DetailPageLayout.svelte.d.ts +1 -0
- package/package/components/flows/CreateActionsFlow.svelte +1 -1
- package/package/components/flows/FlowChatInterface.svelte +404 -0
- package/package/components/flows/FlowChatInterface.svelte.d.ts +19 -0
- package/package/components/flows/FlowChatMessage.svelte +41 -0
- package/package/components/flows/FlowChatMessage.svelte.d.ts +9 -0
- package/package/components/flows/FlowConversationsSidebar.svelte +213 -0
- package/package/components/flows/FlowConversationsSidebar.svelte.d.ts +15 -0
- package/package/components/flows/FlowEditor.svelte.d.ts +1 -1
- package/package/components/flows/FlowModuleIcon.svelte +10 -10
- package/package/components/flows/FlowProgressBar.svelte +16 -16
- package/package/components/flows/FlowProgressBar.svelte.d.ts +7 -22
- package/package/components/flows/common/FlowCard.svelte +10 -2
- package/package/components/flows/common/FlowCard.svelte.d.ts +1 -0
- package/package/components/flows/common/FlowCardHeader.svelte +2 -1
- package/package/components/flows/common/FlowCardHeader.svelte.d.ts +1 -0
- package/package/components/flows/content/DynamicInputHelpBox.svelte +4 -4
- package/package/components/flows/content/FlowEditorPanel.svelte.d.ts +1 -1
- package/package/components/flows/content/FlowInput.svelte +381 -259
- package/package/components/flows/content/FlowInput.svelte.d.ts +1 -1
- package/package/components/flows/content/FlowInputsQuick.svelte +56 -34
- package/package/components/flows/content/FlowInputsQuick.svelte.d.ts +3 -2
- package/package/components/flows/content/FlowModuleComponent.svelte +29 -11
- package/package/components/flows/flowInfers.d.ts +60 -0
- package/package/components/flows/flowInfers.js +72 -40
- package/package/components/flows/{flowStore.d.ts → flowStore.svelte.d.ts} +5 -1
- package/package/components/flows/header/FlowPreviewButtons.svelte +1 -1
- package/package/components/flows/map/FlowErrorHandlerItem.svelte +4 -2
- package/package/components/flows/map/FlowErrorHandlerItem.svelte.d.ts +1 -0
- package/package/components/flows/map/FlowJobsMenu.svelte +3 -3
- package/package/components/flows/map/FlowJobsMenu.svelte.d.ts +1 -1
- package/package/components/flows/map/FlowModuleSchemaItem.svelte +1 -1
- package/package/components/flows/map/FlowModuleSchemaMap.svelte +5 -2
- package/package/components/flows/map/FlowStickyNode.svelte +2 -2
- package/package/components/flows/map/FlowStickyNode.svelte.d.ts +1 -0
- package/package/components/flows/map/InsertModuleButton.svelte +8 -15
- package/package/components/flows/map/InsertModuleButton.svelte.d.ts +4 -4
- package/package/components/flows/map/InsertModuleInner.svelte +19 -20
- package/package/components/flows/map/InsertModuleInner.svelte.d.ts +2 -2
- package/package/components/flows/map/MapItem.svelte +1 -1
- package/package/components/flows/map/VirtualItem.svelte +1 -2
- package/package/components/flows/pickers/PickHubScriptQuick.svelte +43 -52
- package/package/components/flows/pickers/PickHubScriptQuick.svelte.d.ts +2 -1
- package/package/components/flows/pickers/WorkspaceScriptPickerQuick.svelte +41 -26
- package/package/components/flows/pickers/WorkspaceScriptPickerQuick.svelte.d.ts +1 -0
- package/package/components/flows/propPicker/OutputPicker.svelte +2 -0
- package/package/components/flows/propPicker/PropPickerWrapper.svelte +1 -15
- package/package/components/git_sync/DetectionFlow.svelte +33 -44
- package/package/components/git_sync/DetectionFlow.svelte.d.ts +1 -0
- package/package/components/git_sync/GitSyncContext.svelte.d.ts +22 -0
- package/package/components/git_sync/GitSyncContext.svelte.js +145 -5
- package/package/components/git_sync/GitSyncModeDisplay.svelte +14 -0
- package/package/components/git_sync/GitSyncModeDisplay.svelte.d.ts +9 -0
- package/package/components/git_sync/GitSyncRepositoryCard.svelte +365 -253
- package/package/components/git_sync/GitSyncRepositoryCard.svelte.d.ts +10 -1
- package/package/components/git_sync/GitSyncSection.svelte +134 -14
- package/package/components/git_sync/PullWorkspaceModal.svelte +24 -32
- package/package/components/git_sync/PushWorkspaceModal.svelte +24 -32
- package/package/components/graph/FlowGraphV2.svelte +2 -1
- package/package/components/graph/FlowGraphV2.svelte.d.ts +1 -0
- package/package/components/graph/graphBuilder.svelte.d.ts +2 -0
- package/package/components/graph/graphBuilder.svelte.js +1 -0
- package/package/components/graph/model.d.ts +5 -5
- package/package/components/graph/renderers/edges/BaseEdge.svelte +1 -0
- package/package/components/graph/renderers/edges/EmptyEdge.svelte +3 -10
- package/package/components/graph/renderers/edges/EmptyEdge.svelte.d.ts +4 -18
- package/package/components/graph/renderers/nodes/AIToolNode.svelte +2 -2
- package/package/components/graph/renderers/nodes/InputNode.svelte +13 -2
- package/package/components/graph/renderers/nodes/NewAIToolNode.svelte +5 -10
- package/package/components/graph/renderers/triggers/TriggersBadge.svelte +2 -27
- package/package/components/home/ItemsList.svelte +1 -1
- package/package/components/instanceSettings.js +17 -0
- package/package/components/jobs/JobProgressBar.svelte +27 -21
- package/package/components/jobs/JobProgressBar.svelte.d.ts +9 -24
- package/package/components/meltComponents/MenuSingleItem.svelte +3 -8
- package/package/components/meltComponents/MenuSingleItem.svelte.d.ts +0 -3
- package/package/components/meltComponents/Popover.svelte +3 -2
- package/package/components/meltComponents/Popover.svelte.d.ts +1 -0
- package/package/components/meltComponents/Tooltip.svelte +1 -1
- package/package/components/progressBar/ProgressBar.svelte +39 -53
- package/package/components/progressBar/ProgressBar.svelte.d.ts +11 -26
- package/package/components/raw_apps/FileEditorIcon.svelte +1 -1
- package/package/components/raw_apps/FileEditorIcon.svelte.d.ts +4 -18
- package/package/components/raw_apps/RawAppBackgroundRunner.svelte +2 -8
- package/package/components/raw_apps/RawAppBackgroundRunner.svelte.d.ts +4 -18
- package/package/components/raw_apps/RawAppEditor.svelte +6 -7
- package/package/components/raw_apps/RawAppEditorHeader.svelte +48 -301
- package/package/components/raw_apps/RawAppEditorHeader.svelte.d.ts +18 -19
- package/package/components/raw_apps/RawAppInlineScriptEditor.svelte +10 -16
- package/package/components/raw_apps/RawAppInlineScriptEditor.svelte.d.ts +13 -13
- package/package/components/raw_apps/RawAppInlineScriptPanelList.svelte +8 -11
- package/package/components/raw_apps/RawAppInlineScriptPanelList.svelte.d.ts +1 -2
- package/package/components/raw_apps/RawAppInlineScriptRunnable.svelte +0 -1
- package/package/components/raw_apps/RawAppInlineScriptsPanel.svelte +7 -13
- package/package/components/raw_apps/RawAppInlineScriptsPanel.svelte.d.ts +8 -8
- package/package/components/raw_apps/RawAppPreview.svelte +3 -7
- package/package/components/raw_apps/RawAppPreview.svelte.d.ts +5 -19
- package/package/components/raw_apps/utils.d.ts +1 -1
- package/package/components/raw_apps/utils.js +3 -3
- package/package/components/runs/JobsLoader.svelte +1 -1
- package/package/components/runs/NoWorkerWithTagWarning.svelte +3 -3
- package/package/components/runs/NoWorkerWithTagWarning.svelte.d.ts +1 -1
- package/package/components/runs/RunOption.svelte +2 -2
- package/package/components/runs/RunsFilter.svelte +15 -12
- package/package/components/runs/RunsFilter.svelte.d.ts +1 -1
- package/package/components/schema/AddPropertyV2.svelte +7 -4
- package/package/components/schema/EditableSchemaDrawer.svelte +19 -18
- package/package/components/schema/FlowPropertyEditor.svelte +9 -2
- package/package/components/schema/FlowPropertyEditor.svelte.d.ts +1 -1
- package/package/components/schema/PropertyEditor.svelte +22 -26
- package/package/components/schema/PropertyEditor.svelte.d.ts +1 -1
- package/package/components/schema/SchemaFormDND.svelte +3 -2
- package/package/components/schema/SchemaFormDND.svelte.d.ts +1 -0
- package/package/components/select/DraggableTags.svelte +2 -2
- package/package/components/select/MultiSelect.svelte +15 -9
- package/package/components/select/MultiSelect.svelte.d.ts +1 -0
- package/package/components/select/Select.svelte +12 -5
- package/package/components/select/Select.svelte.d.ts +11 -0
- package/package/components/select/SelectDropdown.svelte +98 -46
- package/package/components/select/SelectDropdown.svelte.d.ts +10 -0
- package/package/components/select/utils.svelte.js +2 -0
- package/package/components/settings/CreateToken.svelte +76 -49
- package/package/components/settings/WorkspaceUserSettings.svelte +111 -17
- package/package/components/sidebar/CriticalAlertTable.svelte +2 -1
- package/package/components/sidebar/Linkify.svelte +14 -0
- package/package/components/sidebar/Linkify.svelte.d.ts +5 -0
- package/package/components/sidebar/MenuLink.svelte +2 -1
- package/package/components/sidebar/MenuLink.svelte.d.ts +1 -0
- package/package/components/sidebar/SidebarContent.svelte +27 -27
- package/package/components/sidebar/WorkspaceMenu.svelte +8 -3
- package/package/components/table/Cell.svelte +7 -14
- package/package/components/table/Cell.svelte.d.ts +13 -35
- package/package/components/table/tableUtils.js +1 -1
- package/package/components/text_input/TextInput.svelte +30 -0
- package/package/components/text_input/TextInput.svelte.d.ts +17 -0
- package/package/components/triggers/AddTriggersButton.svelte +1 -0
- package/package/components/triggers/TriggersEditor.svelte +11 -1
- package/package/components/triggers/gcp/GcpTriggerEditorConfigSection.svelte +1 -1
- package/package/components/triggers/gcp/GcpTriggerEditorConfigSection.svelte.d.ts +2 -1
- package/package/components/triggers/gcp/GcpTriggerEditorInner.svelte +28 -5
- package/package/components/triggers/gcp/utils.js +1 -0
- package/package/components/triggers/schedules/ScheduleEditorInner.svelte +1 -0
- package/package/components/triggers/triggers.svelte.d.ts +1 -1
- package/package/components/triggers/triggers.svelte.js +8 -4
- package/package/components/triggers/webhook/WebhooksConfigSection.svelte +143 -63
- package/package/components/triggers/websocket/WebsocketTriggerEditorInner.svelte +22 -0
- package/package/components/triggers/websocket/utils.js +1 -0
- package/package/components/tutorials/FlowBuilderTutorialErrorHandler.svelte +2 -2
- package/package/components/tutorials/FlowBuilderTutorialForLoop.svelte +3 -0
- package/package/components/tutorials/FlowBuilderTutorialSimpleFlow.svelte +49 -17
- package/package/components/tutorials/Tutorial.svelte +9 -0
- package/package/components/tutorials/Tutorial.svelte.d.ts +1 -0
- package/package/components/tutorials/app/AppTutorial.svelte +41 -57
- package/package/components/tutorials/app/BackgroundRunnablesTutorial.svelte +3 -5
- package/package/components/tutorials/app/ConnectionTutorial.svelte +2 -2
- package/package/components/tutorials/utils.js +2 -154
- package/package/components/vscode.js +16 -8
- package/package/components/workspaceSettings/AISettings.svelte +12 -5
- package/package/components/workspaceSettings/AISettings.svelte.d.ts +2 -1
- package/package/components/workspaceSettings/CreateWorkspace.svelte +2 -2
- package/package/components/workspaceSettings/DucklakeSettings.svelte +64 -7
- package/package/components/workspaceSettings/ModelTokenLimits.svelte +165 -0
- package/package/components/workspaceSettings/ModelTokenLimits.svelte.d.ts +8 -0
- package/package/components/workspaceSettings/StorageSettings.svelte +147 -77
- package/package/editorUtils.d.ts +1 -1
- package/package/gen/core/OpenAPI.js +1 -1
- package/package/gen/schemas.gen.d.ts +223 -17
- package/package/gen/schemas.gen.js +226 -17
- package/package/gen/services.gen.d.ts +221 -27
- package/package/gen/services.gen.js +440 -48
- package/package/gen/types.gen.d.ts +1067 -218
- package/package/hubPaths.json +2 -1
- package/package/script_helpers.js +5 -5
- package/package/services/JobManager.js +14 -9
- package/package/stores.d.ts +4 -12
- package/package/stores.js +5 -65
- package/package/timelineCompute.svelte.d.ts +21 -0
- package/package/timelineCompute.svelte.js +113 -0
- package/package/toast.js +2 -1
- package/package/utils.d.ts +16 -8
- package/package/utils.js +65 -12
- package/package/workspace_settings.d.ts +13 -8
- package/package/workspace_settings.js +46 -11
- package/package.json +4 -4
- /package/package/components/flows/{flowStore.js → flowStore.svelte.js} +0 -0
|
@@ -3,6 +3,7 @@ import { updateProgress } from '../../tutorialUtils';
|
|
|
3
3
|
import { clickButtonBySelector, isFlowTainted, setInputBySelector, triggerPointerDown, waitForElementLoading } from './utils';
|
|
4
4
|
import Tutorial from './Tutorial.svelte';
|
|
5
5
|
import { refreshStateStore } from '../../svelte5Utils.svelte';
|
|
6
|
+
import { wait } from '../../utils';
|
|
6
7
|
const { flowStore } = getContext('FlowEditorContext');
|
|
7
8
|
const dispatch = createEventDispatcher();
|
|
8
9
|
let tutorial = undefined;
|
|
@@ -30,16 +31,13 @@ export function runTutorial() {
|
|
|
30
31
|
popover: {
|
|
31
32
|
title: 'Flows inputs',
|
|
32
33
|
description: 'Flows have inputs that can be used in the flow',
|
|
33
|
-
onNextClick: () => {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
setTimeout(() => {
|
|
41
|
-
driver.moveNext()
|
|
42
|
-
})
|
|
34
|
+
onNextClick: async () => {
|
|
35
|
+
triggerPointerDown('#flow-editor-virtual-Input')
|
|
36
|
+
await wait(20)
|
|
37
|
+
clickButtonBySelector('#add-flow-input-btn')
|
|
38
|
+
await wait(0)
|
|
39
|
+
setInputBySelector('input[placeholder="Field name"]', 'firstname')
|
|
40
|
+
setTimeout(() => driver.moveNext())
|
|
43
41
|
}
|
|
44
42
|
},
|
|
45
43
|
element: '#flow-editor-virtual-Input'
|
|
@@ -53,11 +51,15 @@ export function runTutorial() {
|
|
|
53
51
|
setTimeout(() => {
|
|
54
52
|
driver.moveNext()
|
|
55
53
|
})
|
|
54
|
+
},
|
|
55
|
+
onPrevClick: () => {
|
|
56
|
+
clickButtonBySelector('#add-flow-input-btn') // Close the input drawer
|
|
57
|
+
setTimeout(() => driver.movePrevious())
|
|
56
58
|
}
|
|
57
59
|
}
|
|
58
60
|
},
|
|
59
61
|
{
|
|
60
|
-
element: '#flow-editor-add-property',
|
|
62
|
+
element: '*:has(> #flow-editor-add-property)',
|
|
61
63
|
popover: {
|
|
62
64
|
title: 'Add your property',
|
|
63
65
|
description: 'Click here to save your property',
|
|
@@ -76,16 +78,26 @@ export function runTutorial() {
|
|
|
76
78
|
description: 'Click here to add a step to your flow',
|
|
77
79
|
onNextClick: () => {
|
|
78
80
|
triggerPointerDown(`#flow-editor-add-step-0`)
|
|
79
|
-
setTimeout(() =>
|
|
80
|
-
|
|
81
|
-
|
|
81
|
+
setTimeout(() => driver.moveNext())
|
|
82
|
+
},
|
|
83
|
+
onPrevClick: async () => {
|
|
84
|
+
clickButtonBySelector('.delete-schema-field-button')
|
|
85
|
+
await wait(0)
|
|
86
|
+
clickButtonBySelector('#add-flow-input-btn')
|
|
87
|
+
await wait(0)
|
|
88
|
+
setInputBySelector('input[placeholder="Field name"]', 'firstname')
|
|
89
|
+
setTimeout(() => driver.movePrevious())
|
|
82
90
|
}
|
|
83
91
|
}
|
|
84
92
|
},
|
|
85
93
|
{
|
|
86
94
|
popover: {
|
|
87
95
|
title: 'Steps kind',
|
|
88
|
-
description: "Choose the kind of step you want to add. Let's start with a simple action"
|
|
96
|
+
description: "Choose the kind of step you want to add. Let's start with a simple action",
|
|
97
|
+
onPrevClick: () => {
|
|
98
|
+
triggerPointerDown(`#flow-editor-add-step-0`)
|
|
99
|
+
setTimeout(() => driver.movePrevious())
|
|
100
|
+
}
|
|
89
101
|
},
|
|
90
102
|
element: '#flow-editor-insert-module'
|
|
91
103
|
},
|
|
@@ -138,6 +150,7 @@ export function runTutorial() {
|
|
|
138
150
|
title: 'Action editor',
|
|
139
151
|
description: 'Windmill provides a full code editor to write your actions',
|
|
140
152
|
onPrevClick: () => {
|
|
153
|
+
triggerPointerDown(`#flow-editor-virtual-Input`)
|
|
141
154
|
triggerPointerDown(`#flow-editor-add-step-0`)
|
|
142
155
|
setTimeout(() => {
|
|
143
156
|
driver.movePrevious()
|
|
@@ -147,6 +160,9 @@ export function runTutorial() {
|
|
|
147
160
|
},
|
|
148
161
|
{
|
|
149
162
|
element: '#flow-editor-step-input',
|
|
163
|
+
onHighlighted: () => {
|
|
164
|
+
document.querySelector('#flow-editor-plug')?.parentElement?.classList.remove('opacity-0')
|
|
165
|
+
},
|
|
150
166
|
popover: {
|
|
151
167
|
title: 'Autogenerated schema',
|
|
152
168
|
description: 'The schema and the UI is autogenerated from your code'
|
|
@@ -154,10 +170,14 @@ export function runTutorial() {
|
|
|
154
170
|
},
|
|
155
171
|
{
|
|
156
172
|
element: '#flow-editor-plug',
|
|
173
|
+
onHighlighted: () => {
|
|
174
|
+
document.querySelector('#flow-editor-plug')?.parentElement?.classList.remove('opacity-0')
|
|
175
|
+
},
|
|
157
176
|
popover: {
|
|
158
177
|
title: 'Connect',
|
|
159
178
|
description:
|
|
160
179
|
'You can provide static values or connect to other nodes result. Here we will connect to the firstname input',
|
|
180
|
+
|
|
161
181
|
onNextClick: () => {
|
|
162
182
|
clickButtonBySelector('#flow-editor-plug')
|
|
163
183
|
setTimeout(() => {
|
|
@@ -187,6 +207,10 @@ export function runTutorial() {
|
|
|
187
207
|
setTimeout(() => {
|
|
188
208
|
driver.moveNext()
|
|
189
209
|
})
|
|
210
|
+
},
|
|
211
|
+
onPrevClick: () => {
|
|
212
|
+
clickButtonBySelector('#flow-editor-plug')
|
|
213
|
+
setTimeout(() => driver.movePrevious())
|
|
190
214
|
}
|
|
191
215
|
}
|
|
192
216
|
},
|
|
@@ -195,7 +219,11 @@ export function runTutorial() {
|
|
|
195
219
|
element: '#flow-editor-step-input',
|
|
196
220
|
popover: {
|
|
197
221
|
title: 'Input connected!',
|
|
198
|
-
description: 'The input is now connected to the firstname input'
|
|
222
|
+
description: 'The input is now connected to the firstname input',
|
|
223
|
+
onPrevClick: () => {
|
|
224
|
+
clickButtonBySelector('#flow-editor-plug')
|
|
225
|
+
setTimeout(() => driver.movePrevious())
|
|
226
|
+
}
|
|
199
227
|
}
|
|
200
228
|
},
|
|
201
229
|
|
|
@@ -215,7 +243,7 @@ export function runTutorial() {
|
|
|
215
243
|
},
|
|
216
244
|
|
|
217
245
|
{
|
|
218
|
-
element: '
|
|
246
|
+
element: 'textarea.w-full',
|
|
219
247
|
popover: {
|
|
220
248
|
title: 'Flow input',
|
|
221
249
|
description: 'Let’s provide an input to our flow',
|
|
@@ -225,6 +253,10 @@ export function runTutorial() {
|
|
|
225
253
|
setTimeout(() => {
|
|
226
254
|
driver.moveNext()
|
|
227
255
|
})
|
|
256
|
+
},
|
|
257
|
+
onPrevClick: () => {
|
|
258
|
+
clickButtonBySelector('#flow-editor-test-flow') // Close the test drawer
|
|
259
|
+
setTimeout(() => driver.movePrevious())
|
|
228
260
|
}
|
|
229
261
|
}
|
|
230
262
|
},
|
|
@@ -5,15 +5,21 @@ import { ignoredTutorials } from './ignoredTutorials';
|
|
|
5
5
|
import SkipTutorials from './SkipTutorials.svelte';
|
|
6
6
|
import TutorialControls from './TutorialControls.svelte';
|
|
7
7
|
import TutorialInner from './TutorialInner.svelte';
|
|
8
|
+
import { isCurrentlyInTutorial } from '../../stores';
|
|
8
9
|
export let index = 0;
|
|
9
10
|
export let name = 'action';
|
|
10
11
|
export let tainted = false;
|
|
12
|
+
export let onDestroyed = undefined;
|
|
11
13
|
export let getSteps = () => [];
|
|
12
14
|
let totalSteps = 0;
|
|
13
15
|
let tutorial = undefined;
|
|
14
16
|
const dispatch = createEventDispatcher();
|
|
15
17
|
// Render controls needs to be exposed so steps that have a custom render can call it
|
|
16
18
|
export function renderControls({ config, state }) {
|
|
19
|
+
const popoverContent = document.querySelector('#driver-popover-content');
|
|
20
|
+
popoverContent?.addEventListener('pointerdown', (event) => {
|
|
21
|
+
event.stopPropagation();
|
|
22
|
+
});
|
|
17
23
|
const popoverDescription = document.querySelector('#driver-popover-description');
|
|
18
24
|
if (!tutorial) {
|
|
19
25
|
return;
|
|
@@ -88,6 +94,7 @@ export const runTutorial = (options) => {
|
|
|
88
94
|
dispatch('error', { detail: name });
|
|
89
95
|
return;
|
|
90
96
|
}
|
|
97
|
+
isCurrentlyInTutorial.val = true;
|
|
91
98
|
tutorial = driver({
|
|
92
99
|
allowClose: true,
|
|
93
100
|
disableActiveInteraction: true,
|
|
@@ -98,9 +105,11 @@ export const runTutorial = (options) => {
|
|
|
98
105
|
renderControls({ config, state });
|
|
99
106
|
},
|
|
100
107
|
onDestroyed: () => {
|
|
108
|
+
onDestroyed?.();
|
|
101
109
|
if (!tutorial?.hasNextStep()) {
|
|
102
110
|
$ignoredTutorials = Array.from(new Set([...$ignoredTutorials, index]));
|
|
103
111
|
}
|
|
112
|
+
isCurrentlyInTutorial.val = false;
|
|
104
113
|
}
|
|
105
114
|
});
|
|
106
115
|
const steps = getSteps(tutorial, options);
|
|
@@ -16,6 +16,7 @@ declare const Tutorial: $$__sveltets_2_IsomorphicComponent<{
|
|
|
16
16
|
index?: number;
|
|
17
17
|
name?: string;
|
|
18
18
|
tainted?: boolean;
|
|
19
|
+
onDestroyed?: (() => void) | undefined;
|
|
19
20
|
getSteps?: (driver: Driver, options?: {
|
|
20
21
|
indexToInsertAt?: number;
|
|
21
22
|
skipStepsCount?: number;
|
|
@@ -4,10 +4,12 @@ import { getContext } from 'svelte';
|
|
|
4
4
|
import Tutorial from '../Tutorial.svelte';
|
|
5
5
|
import { clickButtonBySelector, clickFirstButtonBySelector, connectInlineRunnableInputToComponentOutput, isAppTainted, updateInlineRunnableCode } from '../utils';
|
|
6
6
|
import { updateProgress } from '../../../tutorialUtils';
|
|
7
|
+
import {} from 'driver.js';
|
|
8
|
+
import { wait } from '../../../utils';
|
|
7
9
|
export let name;
|
|
8
10
|
export let index;
|
|
9
11
|
let tutorial = undefined;
|
|
10
|
-
const { app, selectedComponent, focusedGrid
|
|
12
|
+
const { app, selectedComponent, focusedGrid } = getContext('AppViewerContext');
|
|
11
13
|
const { history } = getContext('AppEditorContext');
|
|
12
14
|
export function runTutorial() {
|
|
13
15
|
tutorial?.runTutorial();
|
|
@@ -28,7 +30,7 @@ function addComponent(appComponentType) {
|
|
|
28
30
|
on:skipAll
|
|
29
31
|
tainted={isAppTainted($app)}
|
|
30
32
|
getSteps={(driver) => {
|
|
31
|
-
const steps = [
|
|
33
|
+
const steps: DriveStep[] = [
|
|
32
34
|
{
|
|
33
35
|
popover: {
|
|
34
36
|
title: 'App editor tutorial',
|
|
@@ -91,7 +93,7 @@ function addComponent(appComponentType) {
|
|
|
91
93
|
popover: {
|
|
92
94
|
title: 'Component input',
|
|
93
95
|
description:
|
|
94
|
-
'There are several ways to set the input of a component. It can be static, the result of a JS expression, connected to the output of another component, or the result of
|
|
96
|
+
'There are several ways to set the input of a component. It can be static, the result of a JS expression, connected to the output of another component, or the result of an inline runnable. Here we will create an inline runnable that will convert the text to uppercase.',
|
|
95
97
|
onNextClick: () => {
|
|
96
98
|
clickFirstButtonBySelector('#component-input')
|
|
97
99
|
setTimeout(() => {
|
|
@@ -122,9 +124,7 @@ function addComponent(appComponentType) {
|
|
|
122
124
|
description: "Let's create an inline script.",
|
|
123
125
|
onNextClick: () => {
|
|
124
126
|
clickButtonBySelector('#app-editor-create-inline-script')
|
|
125
|
-
setTimeout(() =>
|
|
126
|
-
driver.moveNext()
|
|
127
|
-
})
|
|
127
|
+
setTimeout(() => driver.moveNext())
|
|
128
128
|
}
|
|
129
129
|
}
|
|
130
130
|
},
|
|
@@ -134,7 +134,7 @@ function addComponent(appComponentType) {
|
|
|
134
134
|
popover: {
|
|
135
135
|
title: 'Choose a language',
|
|
136
136
|
description:
|
|
137
|
-
'You can choose the language of your runnable.
|
|
137
|
+
'You can choose the language of your runnable. There are two type of runnables: frontend and backend.'
|
|
138
138
|
}
|
|
139
139
|
},
|
|
140
140
|
|
|
@@ -156,87 +156,71 @@ function addComponent(appComponentType) {
|
|
|
156
156
|
},
|
|
157
157
|
{
|
|
158
158
|
element: '#create-deno-script',
|
|
159
|
+
onHighlighted: () => {
|
|
160
|
+
document.querySelector('#schema-plug-x')?.parentElement?.classList.remove('opacity-0')
|
|
161
|
+
},
|
|
159
162
|
popover: {
|
|
160
163
|
title: 'Create a deno script',
|
|
161
164
|
description:
|
|
162
165
|
"Let's create a simple deno script. For the sake of this tutorial, we will create a script that converts the text to uppercase.",
|
|
163
|
-
onNextClick: () => {
|
|
166
|
+
onNextClick: async () => {
|
|
164
167
|
clickButtonBySelector('#create-deno-script')
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
}
|
|
173
|
-
`
|
|
174
|
-
)
|
|
175
|
-
}
|
|
168
|
+
await wait(50)
|
|
169
|
+
if ($selectedComponent?.[0]) {
|
|
170
|
+
updateInlineRunnableCode(
|
|
171
|
+
$app,
|
|
172
|
+
$selectedComponent[0],
|
|
173
|
+
'export function main(x: string) {\n return x?.toLocaleUpperCase();\n}'
|
|
174
|
+
)
|
|
175
|
+
}
|
|
176
176
|
|
|
177
|
-
|
|
178
|
-
})
|
|
177
|
+
driver.moveNext()
|
|
179
178
|
}
|
|
180
179
|
}
|
|
181
180
|
},
|
|
182
181
|
{
|
|
183
|
-
element: '#schema-plug',
|
|
182
|
+
element: '#schema-plug-x',
|
|
183
|
+
onHighlighted: () => {
|
|
184
|
+
document.querySelector('#schema-plug-x')?.parentElement?.classList.remove('opacity-0')
|
|
185
|
+
},
|
|
184
186
|
popover: {
|
|
185
187
|
title: 'Connect the function input',
|
|
186
188
|
description:
|
|
187
189
|
"The function we created has an string input 'x'. We can connect the output of the text component to it.",
|
|
188
190
|
onNextClick: () => {
|
|
189
|
-
clickButtonBySelector('#schema-plug')
|
|
191
|
+
clickButtonBySelector('#schema-plug-x')
|
|
190
192
|
setTimeout(() => {
|
|
191
193
|
driver.moveNext()
|
|
192
194
|
})
|
|
193
195
|
}
|
|
194
196
|
}
|
|
195
197
|
},
|
|
196
|
-
|
|
197
198
|
{
|
|
198
|
-
element: '#connect-output-
|
|
199
|
+
element: '#connect-output-a',
|
|
199
200
|
popover: {
|
|
200
201
|
title: 'Select the output',
|
|
201
|
-
description: ' ',
|
|
202
|
+
description: 'Open the output selector of the text input component.',
|
|
202
203
|
onNextClick: () => {
|
|
203
|
-
|
|
204
|
-
$connectingInput.input = undefined
|
|
205
|
-
|
|
204
|
+
clickButtonBySelector('#connect-output-a')
|
|
206
205
|
setTimeout(() => {
|
|
207
206
|
driver.moveNext()
|
|
208
207
|
})
|
|
209
|
-
},
|
|
210
|
-
onPopoverRender: (popover, opts) => {
|
|
211
|
-
const wrapper = document.createElement('div')
|
|
212
|
-
wrapper.classList.add('flex', 'flex-col', 'gap-2', 'w-full', 'items-start')
|
|
213
|
-
|
|
214
|
-
const p1 = document.createElement('p')
|
|
215
|
-
p1.innerText =
|
|
216
|
-
'You can now select the output in the output menu. Click on the little red button to open the menu.'
|
|
217
|
-
|
|
218
|
-
const id = document.createElement('div')
|
|
219
|
-
id.innerHTML = `<button class="bg-red-500/70 border border-red-600 px-1 py-0.5" title="Outputs" aria-label="Open output"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide-icon lucide lucide-plug-2 "><path d="M9 2v6"></path><path d="M15 2v6"></path><path d="M12 17v5"></path><path d="M5 8h14"></path><path d="M6 11V8h12v3a6 6 0 1 1-12 0v0Z"></path></svg></button>`
|
|
220
|
-
|
|
221
|
-
const p2 = document.createElement('p')
|
|
222
|
-
p2.innerText =
|
|
223
|
-
'Once opened, you can select the output you want to connect to. Here we will connect the result output of the text component to the input "x" of the inline runnable.'
|
|
224
|
-
|
|
225
|
-
const objectViewer = document.createElement('div')
|
|
226
|
-
objectViewer.innerHTML = `<div class="rounded-lg shadow-md border p-4 bg-surface"><span class="s-UNyBDXJ1E286"> <ul class="w-full pl-2 border-none s-UNyBDXJ1E286"><li class="s-UNyBDXJ1E286"><button class="whitespace-nowrap s-UNyBDXJ1E286"><span class="key border font-semibold rounded px-1 hover:bg-surface-hover text-2xs text-secondary s-UNyBDXJ1E286">result</span> :</button> <button class="val rounded px-1 hover:bg-blue-100 string s-UNyBDXJ1E286"><span title="" class="text-2xs s-UNyBDXJ1E286">""</span></button></li> </ul> </span> <span class="border border-blue-600 rounded px-1 cursor-pointer hover:bg-gray-200 s-UNyBDXJ1E286 hidden">{...}</span> </div>`
|
|
227
|
-
|
|
228
|
-
wrapper.appendChild(p1)
|
|
229
|
-
wrapper.appendChild(id)
|
|
230
|
-
wrapper.appendChild(p2)
|
|
231
|
-
wrapper.appendChild(objectViewer)
|
|
232
|
-
|
|
233
|
-
popover.description.appendChild(wrapper)
|
|
234
|
-
|
|
235
|
-
tutorial?.renderControls(opts)
|
|
236
208
|
}
|
|
237
209
|
}
|
|
238
210
|
},
|
|
239
|
-
|
|
211
|
+
{
|
|
212
|
+
element: '.component-output-viewer-a li *:has(> button[title="result"])',
|
|
213
|
+
popover: {
|
|
214
|
+
title: 'Select the output',
|
|
215
|
+
description: "Let's select the result of the text input component.",
|
|
216
|
+
onNextClick: () => {
|
|
217
|
+
setTimeout(async () => {
|
|
218
|
+
clickButtonBySelector('.component-output-viewer-a li button[title="result"]')
|
|
219
|
+
driver.moveNext()
|
|
220
|
+
})
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
},
|
|
240
224
|
{
|
|
241
225
|
element: '.wm-app-viewer',
|
|
242
226
|
popover: {
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
<script lang="ts">import { updateProgress } from '../../../tutorialUtils';
|
|
2
|
+
import {} from 'driver.js';
|
|
2
3
|
import Tutorial from '../Tutorial.svelte';
|
|
3
4
|
import { clickButtonBySelector } from '../utils';
|
|
4
5
|
export let name;
|
|
@@ -16,7 +17,7 @@ export function runTutorial(skipStepsCount = undefined) {
|
|
|
16
17
|
on:error
|
|
17
18
|
on:skipAll
|
|
18
19
|
getSteps={(driver, options) => {
|
|
19
|
-
const steps = [
|
|
20
|
+
const steps: DriveStep[] = [
|
|
20
21
|
{
|
|
21
22
|
element: '#app-editor-runnable-panel',
|
|
22
23
|
popover: {
|
|
@@ -33,10 +34,7 @@ export function runTutorial(skipStepsCount = undefined) {
|
|
|
33
34
|
'Click here to create a runnable. Runnables are scripts that can be executed in the background. You can add as many runnables as you want.',
|
|
34
35
|
onNextClick: () => {
|
|
35
36
|
clickButtonBySelector('#create-background-runnable')
|
|
36
|
-
|
|
37
|
-
setTimeout(() => {
|
|
38
|
-
driver.moveNext()
|
|
39
|
-
})
|
|
37
|
+
setTimeout(() => driver.moveNext())
|
|
40
38
|
}
|
|
41
39
|
}
|
|
42
40
|
},
|
|
@@ -54,12 +54,12 @@ function addComponent() {
|
|
|
54
54
|
}
|
|
55
55
|
},
|
|
56
56
|
{
|
|
57
|
-
element: '
|
|
57
|
+
element: '[data-connection-button] button[title="Connect"]',
|
|
58
58
|
popover: {
|
|
59
59
|
title: 'Connect the text component',
|
|
60
60
|
description: 'Click on the plug icon to connect the text component',
|
|
61
61
|
onNextClick: () => {
|
|
62
|
-
clickButtonBySelector('
|
|
62
|
+
clickButtonBySelector('[data-connection-button] button[title="Connect"]')
|
|
63
63
|
setTimeout(() => {
|
|
64
64
|
driver.moveNext()
|
|
65
65
|
})
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { deepEqual } from 'fast-equals';
|
|
2
|
-
import { findGridItem } from '../apps/editor/appUtils';
|
|
2
|
+
import { emptyApp, findGridItem } from '../apps/editor/appUtils';
|
|
3
3
|
export function setInputBySelector(selector, value) {
|
|
4
4
|
const input = document.querySelector(selector);
|
|
5
5
|
if (input) {
|
|
@@ -36,154 +36,6 @@ export function selectOptionsBySelector(selector, value) {
|
|
|
36
36
|
export function isFlowTainted(flow) {
|
|
37
37
|
return (flow.value.modules.length > 0 || Object.keys(flow?.schema?.properties ?? {}).length > 0);
|
|
38
38
|
}
|
|
39
|
-
const emptyApp = {
|
|
40
|
-
grid: [
|
|
41
|
-
{
|
|
42
|
-
'3': {
|
|
43
|
-
fixed: false,
|
|
44
|
-
x: 0,
|
|
45
|
-
y: 0,
|
|
46
|
-
fullHeight: false,
|
|
47
|
-
w: 6,
|
|
48
|
-
h: 2
|
|
49
|
-
},
|
|
50
|
-
'12': {
|
|
51
|
-
fixed: false,
|
|
52
|
-
x: 0,
|
|
53
|
-
y: 0,
|
|
54
|
-
fullHeight: false,
|
|
55
|
-
w: 12,
|
|
56
|
-
h: 2
|
|
57
|
-
},
|
|
58
|
-
data: {
|
|
59
|
-
type: 'containercomponent',
|
|
60
|
-
configuration: {},
|
|
61
|
-
customCss: {
|
|
62
|
-
container: {
|
|
63
|
-
class: '!p-0',
|
|
64
|
-
style: ''
|
|
65
|
-
}
|
|
66
|
-
},
|
|
67
|
-
numberOfSubgrids: 1,
|
|
68
|
-
id: 'a'
|
|
69
|
-
},
|
|
70
|
-
id: 'a'
|
|
71
|
-
}
|
|
72
|
-
],
|
|
73
|
-
fullscreen: false,
|
|
74
|
-
unusedInlineScripts: [],
|
|
75
|
-
hiddenInlineScripts: [],
|
|
76
|
-
theme: {
|
|
77
|
-
type: 'path',
|
|
78
|
-
path: 'f/app_themes/theme_0'
|
|
79
|
-
},
|
|
80
|
-
subgrids: {
|
|
81
|
-
'a-0': [
|
|
82
|
-
{
|
|
83
|
-
'3': {
|
|
84
|
-
fixed: false,
|
|
85
|
-
x: 0,
|
|
86
|
-
y: 0,
|
|
87
|
-
fullHeight: false,
|
|
88
|
-
w: 6,
|
|
89
|
-
h: 1
|
|
90
|
-
},
|
|
91
|
-
'12': {
|
|
92
|
-
fixed: false,
|
|
93
|
-
x: 0,
|
|
94
|
-
y: 0,
|
|
95
|
-
fullHeight: false,
|
|
96
|
-
w: 6,
|
|
97
|
-
h: 1
|
|
98
|
-
},
|
|
99
|
-
data: {
|
|
100
|
-
type: 'textcomponent',
|
|
101
|
-
configuration: {
|
|
102
|
-
style: {
|
|
103
|
-
type: 'static',
|
|
104
|
-
value: 'Body'
|
|
105
|
-
},
|
|
106
|
-
copyButton: {
|
|
107
|
-
type: 'static',
|
|
108
|
-
value: false
|
|
109
|
-
},
|
|
110
|
-
tooltip: {
|
|
111
|
-
type: 'evalv2',
|
|
112
|
-
value: '',
|
|
113
|
-
fieldType: 'text',
|
|
114
|
-
expr: '`Author: ${ctx.author}`',
|
|
115
|
-
connections: [
|
|
116
|
-
{
|
|
117
|
-
componentId: 'ctx',
|
|
118
|
-
id: 'author'
|
|
119
|
-
}
|
|
120
|
-
]
|
|
121
|
-
},
|
|
122
|
-
disableNoText: {
|
|
123
|
-
type: 'static',
|
|
124
|
-
value: true,
|
|
125
|
-
fieldType: 'boolean'
|
|
126
|
-
}
|
|
127
|
-
},
|
|
128
|
-
componentInput: {
|
|
129
|
-
type: 'templatev2',
|
|
130
|
-
fieldType: 'template',
|
|
131
|
-
eval: '${ctx.summary}',
|
|
132
|
-
connections: [
|
|
133
|
-
{
|
|
134
|
-
id: 'summary',
|
|
135
|
-
componentId: 'ctx'
|
|
136
|
-
}
|
|
137
|
-
]
|
|
138
|
-
},
|
|
139
|
-
customCss: {
|
|
140
|
-
text: {
|
|
141
|
-
class: 'text-xl font-semibold whitespace-nowrap truncate',
|
|
142
|
-
style: ''
|
|
143
|
-
},
|
|
144
|
-
container: {
|
|
145
|
-
class: '',
|
|
146
|
-
style: ''
|
|
147
|
-
}
|
|
148
|
-
},
|
|
149
|
-
horizontalAlignment: 'left',
|
|
150
|
-
verticalAlignment: 'center',
|
|
151
|
-
id: 'b'
|
|
152
|
-
},
|
|
153
|
-
id: 'b'
|
|
154
|
-
},
|
|
155
|
-
{
|
|
156
|
-
'3': {
|
|
157
|
-
fixed: false,
|
|
158
|
-
x: 0,
|
|
159
|
-
y: 1,
|
|
160
|
-
fullHeight: false,
|
|
161
|
-
w: 3,
|
|
162
|
-
h: 1
|
|
163
|
-
},
|
|
164
|
-
'12': {
|
|
165
|
-
fixed: false,
|
|
166
|
-
x: 6,
|
|
167
|
-
y: 0,
|
|
168
|
-
fullHeight: false,
|
|
169
|
-
w: 6,
|
|
170
|
-
h: 1
|
|
171
|
-
},
|
|
172
|
-
data: {
|
|
173
|
-
type: 'recomputeallcomponent',
|
|
174
|
-
configuration: {},
|
|
175
|
-
menuItems: [],
|
|
176
|
-
horizontalAlignment: 'right',
|
|
177
|
-
verticalAlignment: 'center',
|
|
178
|
-
id: 'c'
|
|
179
|
-
},
|
|
180
|
-
id: 'c'
|
|
181
|
-
}
|
|
182
|
-
]
|
|
183
|
-
},
|
|
184
|
-
hideLegacyTopBar: true,
|
|
185
|
-
norefreshbar: false
|
|
186
|
-
};
|
|
187
39
|
export function isAppTainted(app) {
|
|
188
40
|
if (app.hideLegacyTopBar === true) {
|
|
189
41
|
// An empty app should have only have a topbar and no hidden inline scripts
|
|
@@ -195,7 +47,7 @@ export function isAppTainted(app) {
|
|
|
195
47
|
return true;
|
|
196
48
|
}
|
|
197
49
|
// Check if the current app is different from an empty app
|
|
198
|
-
return !deepEqual(app, emptyApp);
|
|
50
|
+
return !deepEqual(app, emptyApp());
|
|
199
51
|
}
|
|
200
52
|
else {
|
|
201
53
|
// For older apps,
|
|
@@ -224,14 +76,12 @@ export function updateFlowModuleById(flow, id, callback) {
|
|
|
224
76
|
}
|
|
225
77
|
};
|
|
226
78
|
dfs(flow.value.modules);
|
|
227
|
-
flow = flow;
|
|
228
79
|
}
|
|
229
80
|
export function updateBackgroundRunnableCode(app, index, newCode) {
|
|
230
81
|
const script = app.hiddenInlineScripts[index];
|
|
231
82
|
if (script.type === 'runnableByName' && script.inlineScript) {
|
|
232
83
|
script.inlineScript.content = newCode;
|
|
233
84
|
}
|
|
234
|
-
app = app;
|
|
235
85
|
}
|
|
236
86
|
export function updateInlineRunnableCode(app, componentId, newCode) {
|
|
237
87
|
const gridItem = findGridItem(app, componentId);
|
|
@@ -241,7 +91,6 @@ export function updateInlineRunnableCode(app, componentId, newCode) {
|
|
|
241
91
|
gridItem.data.componentInput.runnable.inlineScript.content = newCode;
|
|
242
92
|
}
|
|
243
93
|
}
|
|
244
|
-
app = app;
|
|
245
94
|
}
|
|
246
95
|
export function connectComponentSourceToOutput(app, componentId, targetId) {
|
|
247
96
|
const gridItem = findGridItem(app, componentId);
|
|
@@ -258,7 +107,6 @@ export function connectComponentSourceToOutput(app, componentId, targetId) {
|
|
|
258
107
|
]
|
|
259
108
|
};
|
|
260
109
|
}
|
|
261
|
-
app = app;
|
|
262
110
|
}
|
|
263
111
|
export function connectInlineRunnableInputToComponentOutput(app, sourceComponentId, sourceField, targetComponentId, targetField, fieldType = 'text') {
|
|
264
112
|
const gridItem = findGridItem(app, sourceComponentId);
|
|
@@ -110,7 +110,7 @@ export async function initializeVscode(caller, htmlContainer) {
|
|
|
110
110
|
token: 'comment'
|
|
111
111
|
},
|
|
112
112
|
{
|
|
113
|
-
foreground: '
|
|
113
|
+
foreground: 'b3deac',
|
|
114
114
|
token: 'string'
|
|
115
115
|
},
|
|
116
116
|
{
|
|
@@ -122,7 +122,7 @@ export async function initializeVscode(caller, htmlContainer) {
|
|
|
122
122
|
token: 'constant.language'
|
|
123
123
|
},
|
|
124
124
|
{
|
|
125
|
-
foreground: '
|
|
125
|
+
foreground: '92bae6',
|
|
126
126
|
token: 'keyword'
|
|
127
127
|
},
|
|
128
128
|
{
|
|
@@ -179,15 +179,20 @@ export async function initializeVscode(caller, htmlContainer) {
|
|
|
179
179
|
{
|
|
180
180
|
foreground: '8fbcbb',
|
|
181
181
|
token: 'variable.other.constant'
|
|
182
|
-
}
|
|
182
|
+
},
|
|
183
|
+
{ token: 'string.value.json', foreground: 'e8b886' }, // string values in JSON
|
|
184
|
+
{ token: 'keyword.json', foreground: 'e8b886' } // true, false, null in JSON
|
|
183
185
|
],
|
|
184
186
|
colors: {
|
|
185
187
|
'editor.foreground': '#D8DEE9',
|
|
186
|
-
'editor.background': '#
|
|
187
|
-
'editor.selectionBackground': '#
|
|
188
|
+
'editor.background': '#00000000',
|
|
189
|
+
'editor.selectionBackground': '#515A6D',
|
|
190
|
+
'editor.inactiveSelectionBackground': '#515A6DB0',
|
|
188
191
|
'editor.lineHighlightBackground': '#3B4252',
|
|
189
192
|
'editorCursor.foreground': '#D8DEE9',
|
|
190
|
-
'editorWhitespace.foreground': '#
|
|
193
|
+
'editorWhitespace.foreground': '#515A6D',
|
|
194
|
+
'editorIndentGuide.background1': '#5A647860',
|
|
195
|
+
'editorIndentGuide.activeBackground1': '#6A7488'
|
|
191
196
|
}
|
|
192
197
|
});
|
|
193
198
|
meditor.defineTheme('myTheme', {
|
|
@@ -195,8 +200,11 @@ export async function initializeVscode(caller, htmlContainer) {
|
|
|
195
200
|
inherit: true,
|
|
196
201
|
rules: [],
|
|
197
202
|
colors: {
|
|
198
|
-
'
|
|
199
|
-
'
|
|
203
|
+
'editor.background': '#FFFFFF00',
|
|
204
|
+
'editor.foreground': '#2d3748',
|
|
205
|
+
'editorLineNumber.foreground': '#C2C9D1',
|
|
206
|
+
'editorLineNumber.activeForeground': '#989DA5',
|
|
207
|
+
'editorGutter.background': '#FFFFFF00'
|
|
200
208
|
}
|
|
201
209
|
});
|
|
202
210
|
if (document.documentElement.classList.contains('dark')) {
|