windmill-components 1.613.5 → 1.623.1
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/tokens/tokens.json +1 -11
- package/package/ata/apis.js +5 -78
- package/package/components/AddUser.svelte +1 -1
- package/package/components/CenteredModal.svelte +24 -32
- package/package/components/CenteredModal.svelte.d.ts +27 -7
- package/package/components/CenteredPage.svelte +2 -5
- package/package/components/CenteredPage.svelte.d.ts +0 -2
- package/package/components/ConcurrentJobsChart.svelte +2 -3
- package/package/components/ConcurrentJobsChart.svelte.d.ts +2 -2
- package/package/components/CustomPopover.svelte +23 -20
- package/package/components/CustomPopover.svelte.d.ts +39 -14
- package/package/components/DBManager.svelte +17 -105
- package/package/components/DBManager.svelte.d.ts +1 -2
- package/package/components/DBManagerContent.svelte +3 -4
- package/package/components/DBManagerContent.svelte.d.ts +1 -1
- package/package/components/DBTableEditor.svelte +171 -210
- package/package/components/DBTableEditor.svelte.d.ts +3 -22
- package/package/components/Description.svelte +2 -3
- package/package/components/Dev.svelte +2 -36
- package/package/components/DiffDrawer.svelte +29 -8
- package/package/components/DiffEditor.svelte +2 -32
- package/package/components/DisplayResult.svelte +24 -32
- package/package/components/Editor.svelte +16 -70
- package/package/components/Editor.svelte.d.ts +0 -3
- package/package/components/EditorBar.svelte +1 -1
- package/package/components/FakeMonacoPlaceHolder.svelte +1 -1
- package/package/components/FlowBuilder.svelte +11 -17
- package/package/components/FlowPreviewContent.svelte +2 -3
- package/package/components/FlowPreviewResult.svelte +4 -0
- package/package/components/FlowRestartButton.svelte +3 -2
- package/package/components/FlowRestartButton.svelte.d.ts +0 -3
- package/package/components/FlowStatusViewerInner.svelte +33 -50
- package/package/components/FlowStatusViewerInner.svelte.d.ts +1 -1
- package/package/components/FlowStatusWaitingForEvents.svelte +23 -27
- package/package/components/FlowStatusWaitingForEvents.svelte.d.ts +18 -4
- package/package/components/FlowViewer.svelte +2 -103
- package/package/components/FlowViewer.svelte.d.ts +3 -9
- package/package/components/ForkWorkspaceBanner.svelte +13 -16
- package/package/components/GraphqlSchemaViewer.svelte +1 -8
- package/package/components/HistoricInputs.svelte +27 -25
- package/package/components/HistoricInputs.svelte.d.ts +2 -2
- package/package/components/InstanceSetting.svelte +0 -38
- package/package/components/InviteUser.svelte +42 -16
- package/package/components/InviteUser.svelte.d.ts +18 -4
- package/package/components/JsonInputs.svelte +8 -6
- package/package/components/JsonInputs.svelte.d.ts +8 -7
- package/package/components/LogViewer.svelte +33 -91
- package/package/components/Login.svelte +0 -21
- package/package/components/ManualPopover.svelte +6 -5
- package/package/components/ManualPopover.svelte.d.ts +35 -9
- package/package/components/MemoryFootprintViewer.svelte +6 -2
- package/package/components/ModulePreview.svelte +21 -23
- package/package/components/ModulePreview.svelte.d.ts +0 -1
- package/package/components/OAuthSetting.svelte +11 -23
- package/package/components/Path.svelte +2 -2
- package/package/components/Path.svelte.d.ts +1 -1
- package/package/components/ResourcePicker.svelte +0 -3
- package/package/components/ResourcePicker.svelte.d.ts +0 -1
- package/package/components/RunButton.svelte +15 -5
- package/package/components/RunButton.svelte.d.ts +19 -7
- package/package/components/RunChart.svelte +4 -8
- package/package/components/RunChart.svelte.d.ts +2 -2
- package/package/components/RunFormAdvancedPopup.svelte +1 -1
- package/package/components/RunsPage.svelte +539 -170
- package/package/components/RunsPage.svelte.d.ts +5 -5
- package/package/components/S3FilePicker.svelte +11 -7
- package/package/components/S3FilePickerInner.svelte +3 -2
- package/package/components/S3FilePickerInner.svelte.d.ts +2 -2
- package/package/components/SavedInputs.svelte +416 -0
- package/package/components/{tutorials/workspace/WorkspaceOnboardingOperatorTutorial.svelte.d.ts → SavedInputs.svelte.d.ts} +11 -8
- package/package/components/SchemaForm.svelte +19 -26
- package/package/components/SchemaFormWithArgPicker.svelte +3 -4
- package/package/components/ScriptBuilder.svelte +1 -1
- package/package/components/ScriptEditor.svelte +101 -575
- package/package/components/Section.svelte +1 -3
- package/package/components/ServiceLogsInner.svelte +4 -4
- package/package/components/ShareModal.svelte.d.ts +1 -1
- package/package/components/SimpleEditor.svelte +2 -46
- package/package/components/SuperadminSettingsInner.svelte +1 -1
- package/package/components/TemplateEditor.svelte +29 -54
- package/package/components/TemplateEditor.svelte.d.ts +102 -13
- package/package/components/UserSettings.svelte +1 -1
- package/package/components/WorkerTagPicker.svelte +1 -1
- package/package/components/WorkerTagSelect.svelte +2 -5
- package/package/components/WorkspaceTutorials.svelte +0 -5
- package/package/components/apps/components/buttons/AppButton.svelte +6 -21
- package/package/components/apps/components/buttons/AppForm.svelte +1 -2
- package/package/components/apps/components/buttons/AppFormButton.svelte +1 -2
- package/package/components/apps/components/display/dbtable/AppDbExplorer.svelte +4 -0
- package/package/components/apps/components/display/dbtable/metadata.js +30 -69
- package/package/components/apps/components/display/dbtable/queries/createTable.d.ts +24 -2
- package/package/components/apps/components/display/dbtable/queries/createTable.js +25 -11
- package/package/components/apps/components/display/dbtable/queries/select.d.ts +0 -2
- package/package/components/apps/components/display/dbtable/queries/select.js +6 -37
- package/package/components/apps/components/display/dbtable/utils.d.ts +1 -10
- package/package/components/apps/components/display/dbtable/utils.js +20 -52
- package/package/components/apps/components/helpers/HiddenComponent.svelte +1 -1
- package/package/components/apps/components/helpers/InputValue.svelte +1 -1
- package/package/components/apps/components/helpers/ResolveConfig.svelte +1 -1
- package/package/components/apps/components/helpers/RunnableComponent.svelte +2 -3
- package/package/components/apps/components/helpers/RunnableComponent.svelte.d.ts +1 -1
- package/package/components/apps/components/helpers/RunnableWrapper.svelte +2 -2
- package/package/components/apps/editor/AppEditorHeader.svelte +1 -8
- package/package/components/apps/editor/AppEditorHeaderDeploy.svelte +29 -32
- package/package/components/apps/editor/AppEditorHeaderDeploy.svelte.d.ts +2 -2
- package/package/components/apps/editor/AppEditorHeaderDeployInitialDraft.svelte +4 -4
- package/package/components/apps/editor/AppEditorHeaderDeployInitialDraft.svelte.d.ts +3 -3
- package/package/components/apps/editor/PublicApp.svelte +30 -49
- package/package/components/apps/editor/PublicApp.svelte.d.ts +0 -1
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte +7 -77
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte.d.ts +2 -2
- package/package/components/apps/editor/inlineScriptsPanel/utils.d.ts +2 -2
- package/package/components/apps/editor/inlineScriptsPanel/utils.js +1 -10
- package/package/components/apps/inputType.d.ts +1 -6
- package/package/components/auditLogs/AuditLogsFilters.svelte +17 -9
- package/package/components/auditLogs/AuditLogsFilters.svelte.d.ts +1 -1
- package/package/components/common/button/model.js +1 -1
- package/package/components/common/calendarPicker/CalendarPicker.svelte.d.ts +1 -1
- package/package/components/common/languageIcons/TypeScript.svelte +3 -5
- package/package/components/common/languageIcons/TypeScript.svelte.d.ts +0 -1
- package/package/components/common/modal/Modal.svelte +3 -3
- package/package/components/copilot/autocomplete/Autocompletor.js +2 -3
- package/package/components/copilot/chat/AIButtonStyle.d.ts +1 -1
- package/package/components/copilot/chat/AIButtonStyle.js +1 -2
- package/package/components/copilot/chat/AIChat.svelte +1 -3
- package/package/components/copilot/chat/AIChatDisplay.svelte +4 -89
- package/package/components/copilot/chat/AIChatInput.svelte +0 -275
- package/package/components/copilot/chat/AIChatManager.svelte.js +1 -107
- package/package/components/copilot/chat/AiChatLayout.svelte +30 -15
- package/package/components/copilot/chat/ContextElementBadge.svelte +0 -44
- package/package/components/copilot/chat/DatatableCreationPolicy.svelte +33 -32
- package/package/components/copilot/chat/ProviderModelSelector.svelte +1 -1
- package/package/components/copilot/chat/__tests__/app/appEvalHelpers.js +0 -3
- package/package/components/copilot/chat/__tests__/flow/flowEvalHelpers.js +0 -4
- package/package/components/copilot/chat/app/core.d.ts +15 -56
- package/package/components/copilot/chat/app/core.js +22 -141
- package/package/components/copilot/chat/context.d.ts +2 -59
- package/package/components/copilot/chat/context.js +2 -6
- package/package/components/copilot/chat/flow/FlowAIChat.svelte +0 -22
- package/package/components/copilot/chat/flow/core.d.ts +1 -3
- package/package/components/copilot/chat/flow/core.js +2 -29
- package/package/components/copilot/chat/flow/openFlow.json +1 -1
- package/package/components/copilot/chat/flow/openFlowZod.d.ts +0 -1
- package/package/components/copilot/chat/flow/openFlowZod.js +2 -14
- package/package/components/copilot/chat/script/core.d.ts +1 -4
- package/package/components/copilot/chat/script/core.js +2 -38
- package/package/components/copilot/chat/shared.d.ts +0 -10
- package/package/components/copilot/chat/shared.js +0 -24
- package/package/components/copilot/lib.d.ts +1 -1
- package/package/components/custom_ui.d.ts +0 -2
- package/package/components/dbOps.d.ts +4 -18
- package/package/components/dbOps.js +3 -25
- package/package/components/flows/CreateActionsApp.svelte +4 -6
- package/package/components/flows/DebounceLimit.svelte.d.ts +1 -1
- package/package/components/flows/FlowHistoryInner.svelte +4 -15
- package/package/components/flows/content/AgentToolWrapper.svelte +1 -1
- package/package/components/flows/content/FlowInput.svelte +37 -211
- package/package/components/flows/content/FlowModuleComponent.svelte +67 -553
- package/package/components/flows/content/FlowModuleEarlyStop.svelte +10 -8
- package/package/components/flows/content/FlowModuleHeader.svelte +4 -7
- package/package/components/flows/content/FlowModuleWorkerTagSelect.svelte +1 -1
- package/package/components/flows/content/McpToolEditor.svelte +37 -50
- package/package/components/flows/content/McpToolEditor.svelte.d.ts +1 -0
- package/package/components/flows/conversations/FlowChat.svelte +2 -16
- package/package/components/flows/conversations/FlowChat.svelte.d.ts +1 -2
- package/package/components/flows/conversations/FlowChatInterface.svelte +6 -103
- package/package/components/flows/conversations/FlowChatInterface.svelte.d.ts +0 -2
- package/package/components/flows/conversations/FlowChatManager.svelte.js +21 -53
- package/package/components/flows/header/FlowImportExportMenu.svelte +1 -1
- package/package/components/flows/propPicker/PropPickerWrapper.svelte +1 -3
- package/package/components/flows/types.d.ts +0 -2
- package/package/components/git_sync/GitSyncRepositoryCard.svelte +8 -16
- package/package/components/home/ItemsList.svelte +5 -5
- package/package/components/home/TutorialBanner.svelte +18 -34
- package/package/components/icons/CssIcon.svelte +0 -20
- package/package/components/icons/CssIcon.svelte.d.ts +25 -7
- package/package/components/icons/JavaScriptIcon.svelte +2 -10
- package/package/components/icons/JavaScriptIcon.svelte.d.ts +0 -1
- package/package/components/icons/JsonIcon.svelte +2 -8
- package/package/components/icons/JsonIcon.svelte.d.ts +0 -1
- package/package/components/icons/ReactIcon.svelte +2 -10
- package/package/components/icons/ReactIcon.svelte.d.ts +0 -1
- package/package/components/icons/SvelteIcon.svelte +2 -10
- package/package/components/icons/SvelteIcon.svelte.d.ts +0 -1
- package/package/components/icons/VueIcon.svelte +2 -10
- package/package/components/icons/VueIcon.svelte.d.ts +0 -1
- package/package/components/instanceSettings.d.ts +1 -2
- package/package/components/instanceSettings.js +1 -32
- package/package/components/jobs/JobPreview.svelte +39 -46
- package/package/components/jobs/JobPreview.svelte.d.ts +0 -1
- package/package/components/monacoLanguagesOptions.js +15 -16
- package/package/components/propertyPicker/PropPicker.svelte +2 -16
- package/package/components/propertyPicker/PropPicker.svelte.d.ts +0 -2
- package/package/components/raw_apps/DefaultDatabaseSelector.svelte +5 -9
- package/package/components/raw_apps/FileEditorIcon.svelte +7 -12
- package/package/components/raw_apps/FileEditorIcon.svelte.d.ts +0 -2
- package/package/components/raw_apps/FileTreeNode.svelte +83 -119
- package/package/components/raw_apps/RawAppBackgroundRunner.svelte +8 -88
- package/package/components/raw_apps/RawAppDataTableList.svelte +9 -12
- package/package/components/raw_apps/RawAppEditor.svelte +68 -218
- package/package/components/raw_apps/RawAppEditorHeader.svelte +16 -33
- package/package/components/raw_apps/RawAppHistoryList.svelte +80 -264
- package/package/components/raw_apps/RawAppHistoryList.svelte.d.ts +0 -1
- package/package/components/raw_apps/RawAppHistoryManager.svelte.d.ts +1 -15
- package/package/components/raw_apps/RawAppHistoryManager.svelte.js +12 -46
- package/package/components/raw_apps/RawAppInlineScriptEditor.svelte +47 -549
- package/package/components/raw_apps/RawAppInlineScriptEditor.svelte.d.ts +5 -31
- package/package/components/raw_apps/RawAppInlineScriptPanelList.svelte +18 -25
- package/package/components/raw_apps/RawAppInlineScriptPanelList.svelte.d.ts +0 -1
- package/package/components/raw_apps/RawAppInlineScriptRunnable.svelte +10 -141
- package/package/components/raw_apps/RawAppInlineScriptRunnable.svelte.d.ts +0 -8
- package/package/components/raw_apps/RawAppInlineScriptsPanel.svelte +1 -2
- package/package/components/raw_apps/RawAppInlineScriptsPanel.svelte.d.ts +1 -9
- package/package/components/raw_apps/RawAppInputsSpecEditor.svelte +3 -47
- package/package/components/raw_apps/RawAppInputsSpecEditor.svelte.d.ts +2 -2
- package/package/components/raw_apps/RawAppModules.svelte +7 -13
- package/package/components/raw_apps/RawAppPreview.svelte +6 -48
- package/package/components/raw_apps/RawAppSidebar.svelte +125 -194
- package/package/components/raw_apps/RawAppSidebar.svelte.d.ts +0 -1
- package/package/components/raw_apps/utils.d.ts +1 -1
- package/package/components/raw_apps/utils.js +18 -76
- package/package/components/runs/JobsLoader.svelte +468 -0
- package/package/components/runs/JobsLoader.svelte.d.ts +49 -0
- package/package/components/runs/ManuelDatePicker.svelte +3 -3
- package/package/components/runs/ManuelDatePicker.svelte.d.ts +3 -3
- package/package/components/runs/NoWorkerWithTagWarning.svelte +1 -5
- package/package/components/runs/RunsFilter.svelte +63 -75
- package/package/components/runs/RunsFilter.svelte.d.ts +4 -35
- package/package/components/runs/RunsQueue.svelte.d.ts +1 -1
- package/package/components/runs/RunsTable.svelte +1 -1
- package/package/components/runs/RunsTable.svelte.d.ts +1 -1
- package/package/components/schema/SchemaPicker.svelte +92 -0
- package/package/components/{tutorials/RunsTutorial.svelte.d.ts → schema/SchemaPicker.svelte.d.ts} +12 -11
- package/package/components/scriptEditor/LogPanel.svelte +2 -17
- package/package/components/scriptEditor/LogPanel.svelte.d.ts +0 -2
- package/package/components/select/SelectDropdown.svelte +2 -2
- package/package/components/settings/ChangeWorkspaceColor.svelte +3 -4
- package/package/components/settings/ChangeWorkspaceId.svelte +10 -14
- package/package/components/settings/ChangeWorkspaceName.svelte +6 -7
- package/package/components/settings/CreateToken.svelte +1 -1
- package/package/components/settings/UserAIPromptsSettings.svelte +15 -56
- package/package/components/settings/WorkspaceOperatorSettings.svelte +85 -68
- package/package/components/settings/WorkspaceUserSettings.svelte +406 -531
- package/package/components/sidebar/MenuButton.svelte +24 -46
- package/package/components/sidebar/MenuButton.svelte.d.ts +0 -2
- package/package/components/sidebar/MultiplayerMenu.svelte +3 -3
- package/package/components/sidebar/OperatorMenu.svelte +88 -63
- package/package/components/sidebar/SidebarContent.svelte +2 -7
- package/package/components/sidebar/UserMenu.svelte +1 -1
- package/package/components/sidebar/WorkspaceMenu.svelte +85 -35
- package/package/components/sqlTypeService.js +3 -4
- package/package/components/table/DataTable.svelte +2 -3
- package/package/components/table/DataTable.svelte.d.ts +0 -1
- package/package/components/text_input/TextInput.svelte +0 -3
- package/package/components/text_input/TextInput.svelte.d.ts +0 -2
- package/package/components/triggers/utils.js +1 -0
- package/package/components/tutorials/FlowBuilderLiveTutorial.svelte +35 -6
- package/package/components/tutorials/TroubleshootFlowTutorial.svelte +20 -5
- package/package/components/tutorials/utils.d.ts +0 -16
- package/package/components/tutorials/utils.js +0 -96
- package/package/components/vscode.js +6 -6
- package/package/components/workspaceSettings/AISettings.svelte +108 -146
- package/package/components/workspaceSettings/CreateWorkspace.svelte +12 -26
- package/package/components/workspaceSettings/DucklakeSettings.svelte +23 -46
- package/package/components/workspaceSettings/DucklakeSettings.svelte.d.ts +1 -2
- package/package/components/workspaceSettings/ModelTokenLimits.svelte +18 -14
- package/package/components/workspaceSettings/StorageSettings.svelte +241 -280
- package/package/components/workspaceSettings/StorageSettings.svelte.d.ts +0 -1
- package/package/consts.js +1 -4
- package/package/gen/core/OpenAPI.js +1 -1
- package/package/gen/schemas.gen.d.ts +1 -133
- package/package/gen/schemas.gen.js +1 -133
- package/package/gen/services.gen.d.ts +10 -160
- package/package/gen/services.gen.js +20 -319
- package/package/gen/types.gen.d.ts +19 -609
- package/package/hubPaths.json +2 -3
- package/package/infer.js +0 -2
- package/package/logout.d.ts +2 -0
- package/package/logout.js +23 -2
- package/package/monaco_workers/graphql.worker.bundle.js +121 -121
- package/package/navigation.d.ts +1 -1
- package/package/rawAppWmillTs.d.ts +0 -11
- package/package/rawAppWmillTs.js +1 -38
- package/package/svelte5Utils.svelte.d.ts +1 -7
- package/package/svelte5Utils.svelte.js +2 -23
- package/package/tutorialUtils.js +4 -0
- package/package/tutorials/config.js +3 -31
- package/package/tutorials/roleUtils.d.ts +1 -1
- package/package/tutorials/roleUtils.js +2 -6
- package/package/utils.js +1 -159
- package/package.json +4 -6
- package/dist/sharedUtils/assets/tokens/colorTokensConfig.d.ts +0 -2
- package/dist/sharedUtils/base.d.ts +0 -1
- package/dist/sharedUtils/cloud.d.ts +0 -1
- package/dist/sharedUtils/common.d.ts +0 -111
- package/dist/sharedUtils/components/apps/components/display/dbtable/queries/count.d.ts +0 -5
- package/dist/sharedUtils/components/apps/components/display/dbtable/queries/delete.d.ts +0 -5
- package/dist/sharedUtils/components/apps/components/display/dbtable/queries/insert.d.ts +0 -5
- package/dist/sharedUtils/components/apps/components/display/dbtable/queries/select.d.ts +0 -13
- package/dist/sharedUtils/components/apps/components/display/dbtable/queries/update.d.ts +0 -11
- package/dist/sharedUtils/components/apps/components/display/dbtable/utils.d.ts +0 -95
- package/dist/sharedUtils/components/apps/editor/appPolicy.d.ts +0 -6
- package/dist/sharedUtils/components/apps/editor/appUtilsCore.d.ts +0 -7
- package/dist/sharedUtils/components/apps/editor/appUtilsS3.d.ts +0 -33
- package/dist/sharedUtils/components/apps/editor/commonAppUtils.d.ts +0 -10
- package/dist/sharedUtils/components/apps/editor/component/components.d.ts +0 -5371
- package/dist/sharedUtils/components/apps/editor/component/default-codes.d.ts +0 -3
- package/dist/sharedUtils/components/apps/editor/component/index.d.ts +0 -3
- package/dist/sharedUtils/components/apps/editor/component/sets.d.ts +0 -7
- package/dist/sharedUtils/components/apps/editor/componentsPanel/componentDefaultProps.d.ts +0 -3
- package/dist/sharedUtils/components/apps/gridUtils.d.ts +0 -14
- package/dist/sharedUtils/components/apps/inputType.d.ts +0 -178
- package/dist/sharedUtils/components/apps/rx.d.ts +0 -29
- package/dist/sharedUtils/components/apps/sharedTypes.d.ts +0 -21
- package/dist/sharedUtils/components/apps/types.d.ts +0 -274
- package/dist/sharedUtils/components/assets/lib.d.ts +0 -25
- package/dist/sharedUtils/components/common/alert/model.d.ts +0 -2
- package/dist/sharedUtils/components/common/badge/model.d.ts +0 -8
- package/dist/sharedUtils/components/common/button/model.d.ts +0 -45
- package/dist/sharedUtils/components/common/fileInput/model.d.ts +0 -1
- package/dist/sharedUtils/components/common/index.d.ts +0 -24
- package/dist/sharedUtils/components/common/skeleton/model.d.ts +0 -21
- package/dist/sharedUtils/components/dbTypes.d.ts +0 -14
- package/dist/sharedUtils/components/diff_drawer.d.ts +0 -26
- package/dist/sharedUtils/components/ducklake.d.ts +0 -1
- package/dist/sharedUtils/components/flows/scheduleUtils.d.ts +0 -7
- package/dist/sharedUtils/components/icons/index.d.ts +0 -101
- package/dist/sharedUtils/components/random_positive_adjetive.d.ts +0 -1
- package/dist/sharedUtils/components/raw_apps/rawAppPolicy.d.ts +0 -10
- package/dist/sharedUtils/components/raw_apps/utils.d.ts +0 -15
- package/dist/sharedUtils/components/triggers/email/utils.d.ts +0 -4
- package/dist/sharedUtils/components/triggers/gcp/utils.d.ts +0 -2
- package/dist/sharedUtils/components/triggers/http/utils.d.ts +0 -11
- package/dist/sharedUtils/components/triggers/kafka/utils.d.ts +0 -2
- package/dist/sharedUtils/components/triggers/mqtt/utils.d.ts +0 -2
- package/dist/sharedUtils/components/triggers/nats/utils.d.ts +0 -2
- package/dist/sharedUtils/components/triggers/postgres/utils.d.ts +0 -8
- package/dist/sharedUtils/components/triggers/sqs/utils.d.ts +0 -2
- package/dist/sharedUtils/components/triggers/triggers.svelte.d.ts +0 -32
- package/dist/sharedUtils/components/triggers/utils.d.ts +0 -80
- package/dist/sharedUtils/components/triggers/websocket/utils.d.ts +0 -2
- package/dist/sharedUtils/components/triggers.d.ts +0 -20
- package/dist/sharedUtils/gen/core/ApiError.d.ts +0 -10
- package/dist/sharedUtils/gen/core/ApiRequestOptions.d.ts +0 -13
- package/dist/sharedUtils/gen/core/ApiResult.d.ts +0 -7
- package/dist/sharedUtils/gen/core/CancelablePromise.d.ts +0 -26
- package/dist/sharedUtils/gen/core/OpenAPI.d.ts +0 -27
- package/dist/sharedUtils/gen/core/request.d.ts +0 -29
- package/dist/sharedUtils/gen/index.d.ts +0 -6
- package/dist/sharedUtils/gen/schemas.gen.d.ts +0 -7036
- package/dist/sharedUtils/gen/services.gen.d.ts +0 -6047
- package/dist/sharedUtils/gen/types.gen.d.ts +0 -21881
- package/dist/sharedUtils/history.svelte.d.ts +0 -9
- package/dist/sharedUtils/hub.d.ts +0 -49
- package/dist/sharedUtils/jsr.json +0 -6
- package/dist/sharedUtils/lib.d.ts +0 -5
- package/dist/sharedUtils/lib.es.js +0 -1588
- package/dist/sharedUtils/package.json +0 -12
- package/dist/sharedUtils/schema.d.ts +0 -3
- package/dist/sharedUtils/stores.d.ts +0 -97
- package/dist/sharedUtils/svelte5Utils.svelte.d.ts +0 -80
- package/dist/sharedUtils/toast.d.ts +0 -8
- package/dist/sharedUtils/utils.d.ts +0 -265
- package/package/components/FlowDiffViewer.svelte +0 -37
- package/package/components/FlowDiffViewer.svelte.d.ts +0 -7
- package/package/components/JobOtelTraces.svelte +0 -287
- package/package/components/JobOtelTraces.svelte.d.ts +0 -6
- package/package/components/apps/components/display/dbtable/queries/alterTable.d.ts +0 -46
- package/package/components/apps/components/display/dbtable/queries/alterTable.js +0 -314
- package/package/components/apps/components/display/dbtable/queries/alterTable.test.d.ts +0 -1
- package/package/components/apps/components/display/dbtable/queries/alterTable.test.js +0 -867
- package/package/components/apps/components/display/dbtable/queries/dbQueriesUtils.d.ts +0 -9
- package/package/components/apps/components/display/dbtable/queries/dbQueriesUtils.js +0 -45
- package/package/components/apps/components/display/dbtable/queries/relationalKeys.d.ts +0 -47
- package/package/components/apps/components/display/dbtable/queries/relationalKeys.js +0 -402
- package/package/components/apps/components/display/dbtable/tableEditor.d.ts +0 -35
- package/package/components/apps/components/display/dbtable/tableEditor.js +0 -49
- package/package/components/copilot/chat/AppAvailableContextList.svelte +0 -263
- package/package/components/copilot/chat/AppAvailableContextList.svelte.d.ts +0 -13
- package/package/components/debug/DebugConsole.svelte +0 -277
- package/package/components/debug/DebugConsole.svelte.d.ts +0 -13
- package/package/components/debug/DebugPanel.svelte +0 -97
- package/package/components/debug/DebugPanel.svelte.d.ts +0 -11
- package/package/components/debug/DebugToolbar.svelte +0 -148
- package/package/components/debug/DebugToolbar.svelte.d.ts +0 -17
- package/package/components/debug/DebugVariableViewer.svelte +0 -115
- package/package/components/debug/DebugVariableViewer.svelte.d.ts +0 -11
- package/package/components/debug/MonacoDebugger.svelte +0 -384
- package/package/components/debug/MonacoDebugger.svelte.d.ts +0 -15
- package/package/components/debug/dapClient.d.ts +0 -192
- package/package/components/debug/dapClient.js +0 -426
- package/package/components/debug/debugUtils.d.ts +0 -30
- package/package/components/debug/debugUtils.js +0 -131
- package/package/components/debug/index.d.ts +0 -75
- package/package/components/debug/index.js +0 -82
- package/package/components/flows/content/FlowEditorDrawer.svelte +0 -124
- package/package/components/flows/content/FlowEditorDrawer.svelte.d.ts +0 -22
- package/package/components/flows/content/McpOAuthConnect.svelte +0 -217
- package/package/components/flows/content/McpOAuthConnect.svelte.d.ts +0 -7
- package/package/components/icons/HtmlIcon.svelte +0 -20
- package/package/components/icons/HtmlIcon.svelte.d.ts +0 -8
- package/package/components/icons/LessIcon.svelte +0 -16
- package/package/components/icons/LessIcon.svelte.d.ts +0 -8
- package/package/components/icons/MarkdownIcon.svelte +0 -20
- package/package/components/icons/MarkdownIcon.svelte.d.ts +0 -8
- package/package/components/icons/SassIcon.svelte +0 -28
- package/package/components/icons/SassIcon.svelte.d.ts +0 -8
- package/package/components/icons/YamlIcon.svelte +0 -20
- package/package/components/icons/YamlIcon.svelte.d.ts +0 -8
- package/package/components/instanceSettings/SecretBackendConfig.svelte +0 -514
- package/package/components/instanceSettings/SecretBackendConfig.svelte.d.ts +0 -8
- package/package/components/raw_apps/RunnableRow.svelte +0 -41
- package/package/components/raw_apps/RunnableRow.svelte.d.ts +0 -11
- package/package/components/runs/useJobsLoader.svelte.d.ts +0 -34
- package/package/components/runs/useJobsLoader.svelte.js +0 -507
- package/package/components/settings/AIPromptsModal.svelte +0 -88
- package/package/components/settings/AIPromptsModal.svelte.d.ts +0 -11
- package/package/components/tutorials/RunsTutorial.svelte +0 -399
- package/package/components/tutorials/workspace/WorkspaceOnboardingOperatorTutorial.svelte +0 -133
- package/package/components/workspace/WorkspaceCard.svelte +0 -184
- package/package/components/workspace/WorkspaceCard.svelte.d.ts +0 -24
- package/package/components/workspace/WorkspaceIcon.svelte +0 -21
- package/package/components/workspace/WorkspaceIcon.svelte.d.ts +0 -9
- package/package/components/workspace/WorkspaceTreeView.svelte +0 -331
- package/package/components/workspace/WorkspaceTreeView.svelte.d.ts +0 -15
- package/package/logoutKit.d.ts +0 -2
- package/package/logoutKit.js +0 -26
- package/package/svelte5UtilsKit.svelte.d.ts +0 -3
- package/package/svelte5UtilsKit.svelte.js +0 -30
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shared debug utility functions used across ScriptEditor, FlowModuleComponent,
|
|
3
|
-
* and RawAppInlineScriptEditor.
|
|
4
|
-
*/
|
|
5
|
-
import { VariableService, UserService } from '../../gen';
|
|
6
|
-
/**
|
|
7
|
-
* Fetch contextual variables (WM_WORKSPACE, WM_TOKEN, etc.) for the debugger.
|
|
8
|
-
* Creates a fresh short-lived token for the debug session.
|
|
9
|
-
*/
|
|
10
|
-
export async function fetchContextualVariables(workspace) {
|
|
11
|
-
if (!workspace) {
|
|
12
|
-
return {};
|
|
13
|
-
}
|
|
14
|
-
try {
|
|
15
|
-
const variables = await VariableService.listContextualVariables({ workspace });
|
|
16
|
-
const envVars = {};
|
|
17
|
-
for (const v of variables) {
|
|
18
|
-
envVars[v.name] = v.value;
|
|
19
|
-
}
|
|
20
|
-
// Create a fresh token with 15-minute expiration for the debugger
|
|
21
|
-
try {
|
|
22
|
-
const expirationDate = new Date(Date.now() + 15 * 60 * 1000);
|
|
23
|
-
const freshToken = await UserService.createToken({
|
|
24
|
-
requestBody: {
|
|
25
|
-
label: 'debugger-token',
|
|
26
|
-
expiration: expirationDate.toISOString(),
|
|
27
|
-
workspace_id: workspace
|
|
28
|
-
}
|
|
29
|
-
});
|
|
30
|
-
envVars['WM_TOKEN'] = freshToken;
|
|
31
|
-
}
|
|
32
|
-
catch (tokenError) {
|
|
33
|
-
console.error('Failed to create debugger token:', tokenError);
|
|
34
|
-
}
|
|
35
|
-
return envVars;
|
|
36
|
-
}
|
|
37
|
-
catch (error) {
|
|
38
|
-
console.error('Failed to fetch contextual variables:', error);
|
|
39
|
-
return {};
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Sign a debug request with the backend. This creates an audit log entry
|
|
44
|
-
* and returns a signed token that authorizes the debug session.
|
|
45
|
-
*/
|
|
46
|
-
export async function signDebugRequest(workspace, code, language) {
|
|
47
|
-
if (!workspace) {
|
|
48
|
-
throw new Error('No workspace selected');
|
|
49
|
-
}
|
|
50
|
-
const response = await fetch(`/api/w/${workspace}/debug/sign`, {
|
|
51
|
-
method: 'POST',
|
|
52
|
-
headers: { 'Content-Type': 'application/json' },
|
|
53
|
-
body: JSON.stringify({ code, language })
|
|
54
|
-
});
|
|
55
|
-
if (!response.ok) {
|
|
56
|
-
const errorText = await response.text();
|
|
57
|
-
if (errorText.includes('not initialized')) {
|
|
58
|
-
throw new Error('Debug signing is not configured on the server. Please contact your administrator.');
|
|
59
|
-
}
|
|
60
|
-
throw new Error(errorText || 'Failed to authorize debug session');
|
|
61
|
-
}
|
|
62
|
-
return await response.json();
|
|
63
|
-
}
|
|
64
|
-
/**
|
|
65
|
-
* Get a user-friendly error message for debug errors
|
|
66
|
-
*/
|
|
67
|
-
export function getDebugErrorMessage(error) {
|
|
68
|
-
const message = error instanceof Error ? error.message : String(error);
|
|
69
|
-
// Handle token verification errors from debugger
|
|
70
|
-
if (message.includes('Token verification failed') || message.includes('Debug token required')) {
|
|
71
|
-
if (message.includes('expired')) {
|
|
72
|
-
return 'Debug session expired. Please try again.';
|
|
73
|
-
}
|
|
74
|
-
if (message.includes('Invalid JWT signature')) {
|
|
75
|
-
return 'Debug authorization failed. The signing key may be misconfigured.';
|
|
76
|
-
}
|
|
77
|
-
if (message.includes('Code hash mismatch')) {
|
|
78
|
-
return 'Code was modified after signing. Please try again.';
|
|
79
|
-
}
|
|
80
|
-
if (message.includes('Public key not available')) {
|
|
81
|
-
return 'Debug server cannot verify tokens. Please check WINDMILL_BASE_URL configuration.';
|
|
82
|
-
}
|
|
83
|
-
if (message.includes('Debug token required')) {
|
|
84
|
-
return 'Debug authorization required. The debug session must be signed by the backend.';
|
|
85
|
-
}
|
|
86
|
-
return 'Debug authorization failed. Please try again.';
|
|
87
|
-
}
|
|
88
|
-
// Handle connection errors
|
|
89
|
-
if (message.includes('WebSocket') || message.includes('connection failed')) {
|
|
90
|
-
return 'Could not connect to debug server. Make sure the DAP server is running.';
|
|
91
|
-
}
|
|
92
|
-
// Handle HTTP errors
|
|
93
|
-
if (message.includes('401') || message.includes('Unauthorized')) {
|
|
94
|
-
return 'Debug session unauthorized. Please check your permissions.';
|
|
95
|
-
}
|
|
96
|
-
if (message.includes('404')) {
|
|
97
|
-
return 'Debug service not available. Please check if the debugger is enabled.';
|
|
98
|
-
}
|
|
99
|
-
if (message.includes('timeout') || message.includes('ETIMEDOUT')) {
|
|
100
|
-
return 'Debug service connection timed out. Please try again.';
|
|
101
|
-
}
|
|
102
|
-
// Handle signing errors
|
|
103
|
-
if (message.includes('not configured on the server')) {
|
|
104
|
-
return message;
|
|
105
|
-
}
|
|
106
|
-
return message || 'An unexpected error occurred while starting the debugger.';
|
|
107
|
-
}
|
|
108
|
-
/**
|
|
109
|
-
* Check if a language supports debugging
|
|
110
|
-
*/
|
|
111
|
-
export function isDebuggableLanguage(language) {
|
|
112
|
-
if (!language)
|
|
113
|
-
return false;
|
|
114
|
-
return ['python3', 'bun', 'typescript', 'deno', 'nativets'].includes(language);
|
|
115
|
-
}
|
|
116
|
-
/**
|
|
117
|
-
* Get the file extension for a language (used for debug file path)
|
|
118
|
-
*/
|
|
119
|
-
export function getDebugFileExtension(language) {
|
|
120
|
-
switch (language) {
|
|
121
|
-
case 'python3':
|
|
122
|
-
return '.py';
|
|
123
|
-
case 'bun':
|
|
124
|
-
case 'typescript':
|
|
125
|
-
case 'deno':
|
|
126
|
-
case 'nativets':
|
|
127
|
-
return '.ts';
|
|
128
|
-
default:
|
|
129
|
-
return '.txt';
|
|
130
|
-
}
|
|
131
|
-
}
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Debug module exports for Python and TypeScript debugging in Windmill.
|
|
3
|
-
*
|
|
4
|
-
* This module provides a minimal DAP (Debug Adapter Protocol) implementation
|
|
5
|
-
* for debugging scripts in the Monaco editor.
|
|
6
|
-
*
|
|
7
|
-
* Supported Languages:
|
|
8
|
-
* - Python: Uses debugpy via the unified DAP Debug Service
|
|
9
|
-
* - TypeScript/Bun: Uses V8 Inspector Protocol via the unified DAP Debug Service
|
|
10
|
-
*
|
|
11
|
-
* Usage:
|
|
12
|
-
* 1. Start the unified DAP Debug Service:
|
|
13
|
-
* bun run src/lib/debug/dap_debug_service.ts
|
|
14
|
-
*
|
|
15
|
-
* 2. Import and use MonacoDebugger component in your editor
|
|
16
|
-
*
|
|
17
|
-
* The service provides path-based routing:
|
|
18
|
-
* - /python - Python debugging via debugpy
|
|
19
|
-
* - /typescript - TypeScript/Bun debugging via WebKit Inspector
|
|
20
|
-
* - /bun - Alias for /typescript
|
|
21
|
-
*
|
|
22
|
-
* Example:
|
|
23
|
-
* ```svelte
|
|
24
|
-
* <script>
|
|
25
|
-
* import MonacoDebugger from '../../debug/MonacoDebugger.svelte'
|
|
26
|
-
* let editor // Monaco editor instance
|
|
27
|
-
* let code = 'console.log("Hello")'
|
|
28
|
-
* </script>
|
|
29
|
-
*
|
|
30
|
-
* <!-- Option 1: Use language prop (recommended) -->
|
|
31
|
-
* <MonacoDebugger {editor} {code} language="bun" />
|
|
32
|
-
*
|
|
33
|
-
* <!-- Option 2: Explicit URL and path -->
|
|
34
|
-
* <MonacoDebugger
|
|
35
|
-
* {editor}
|
|
36
|
-
* {code}
|
|
37
|
-
* dapServerUrl="ws://localhost:3003/typescript"
|
|
38
|
-
* filePath="/tmp/script.ts"
|
|
39
|
-
* />
|
|
40
|
-
* ```
|
|
41
|
-
*/
|
|
42
|
-
export { default as MonacoDebugger } from './MonacoDebugger.svelte';
|
|
43
|
-
export { default as DebugToolbar } from './DebugToolbar.svelte';
|
|
44
|
-
export { default as DebugPanel } from './DebugPanel.svelte';
|
|
45
|
-
export { default as DebugVariableViewer } from './DebugVariableViewer.svelte';
|
|
46
|
-
export { default as DebugConsole } from './DebugConsole.svelte';
|
|
47
|
-
export { DAPClient, getDAPClient, resetDAPClient, debugState, type DebugState, type Breakpoint, type StackFrame, type Variable, type Scope } from './dapClient';
|
|
48
|
-
export { fetchContextualVariables, signDebugRequest, getDebugErrorMessage, isDebuggableLanguage, getDebugFileExtension } from './debugUtils';
|
|
49
|
-
/**
|
|
50
|
-
* Language to debug endpoint path mapping.
|
|
51
|
-
* Uses the unified DAP Debug Service with path-based routing.
|
|
52
|
-
*/
|
|
53
|
-
export declare const DAP_ENDPOINT_PATHS: {
|
|
54
|
-
readonly python3: "/python";
|
|
55
|
-
readonly bun: "/bun";
|
|
56
|
-
readonly typescript: "/typescript";
|
|
57
|
-
readonly nativets: "/typescript";
|
|
58
|
-
readonly deno: "/typescript";
|
|
59
|
-
};
|
|
60
|
-
/**
|
|
61
|
-
* Supported debug languages
|
|
62
|
-
*/
|
|
63
|
-
export type DebugLanguage = keyof typeof DAP_ENDPOINT_PATHS;
|
|
64
|
-
/**
|
|
65
|
-
* Get the WebSocket URL for the DAP debug server.
|
|
66
|
-
* Routes through the reverse proxy at /ws_debug/* in production.
|
|
67
|
-
*
|
|
68
|
-
* @param language - The script language (python3, bun, typescript, etc.)
|
|
69
|
-
* @returns The full WebSocket URL for the debug server
|
|
70
|
-
*/
|
|
71
|
-
export declare function getDebugServerUrl(language: DebugLanguage): string;
|
|
72
|
-
/**
|
|
73
|
-
* @deprecated Use isDebuggableLanguage instead
|
|
74
|
-
*/
|
|
75
|
-
export declare function isDebuggable(language: string): boolean;
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Debug module exports for Python and TypeScript debugging in Windmill.
|
|
3
|
-
*
|
|
4
|
-
* This module provides a minimal DAP (Debug Adapter Protocol) implementation
|
|
5
|
-
* for debugging scripts in the Monaco editor.
|
|
6
|
-
*
|
|
7
|
-
* Supported Languages:
|
|
8
|
-
* - Python: Uses debugpy via the unified DAP Debug Service
|
|
9
|
-
* - TypeScript/Bun: Uses V8 Inspector Protocol via the unified DAP Debug Service
|
|
10
|
-
*
|
|
11
|
-
* Usage:
|
|
12
|
-
* 1. Start the unified DAP Debug Service:
|
|
13
|
-
* bun run src/lib/debug/dap_debug_service.ts
|
|
14
|
-
*
|
|
15
|
-
* 2. Import and use MonacoDebugger component in your editor
|
|
16
|
-
*
|
|
17
|
-
* The service provides path-based routing:
|
|
18
|
-
* - /python - Python debugging via debugpy
|
|
19
|
-
* - /typescript - TypeScript/Bun debugging via WebKit Inspector
|
|
20
|
-
* - /bun - Alias for /typescript
|
|
21
|
-
*
|
|
22
|
-
* Example:
|
|
23
|
-
* ```svelte
|
|
24
|
-
* <script>
|
|
25
|
-
* import MonacoDebugger from '../../debug/MonacoDebugger.svelte'
|
|
26
|
-
* let editor // Monaco editor instance
|
|
27
|
-
* let code = 'console.log("Hello")'
|
|
28
|
-
* </script>
|
|
29
|
-
*
|
|
30
|
-
* <!-- Option 1: Use language prop (recommended) -->
|
|
31
|
-
* <MonacoDebugger {editor} {code} language="bun" />
|
|
32
|
-
*
|
|
33
|
-
* <!-- Option 2: Explicit URL and path -->
|
|
34
|
-
* <MonacoDebugger
|
|
35
|
-
* {editor}
|
|
36
|
-
* {code}
|
|
37
|
-
* dapServerUrl="ws://localhost:3003/typescript"
|
|
38
|
-
* filePath="/tmp/script.ts"
|
|
39
|
-
* />
|
|
40
|
-
* ```
|
|
41
|
-
*/
|
|
42
|
-
export { default as MonacoDebugger } from './MonacoDebugger.svelte';
|
|
43
|
-
export { default as DebugToolbar } from './DebugToolbar.svelte';
|
|
44
|
-
export { default as DebugPanel } from './DebugPanel.svelte';
|
|
45
|
-
export { default as DebugVariableViewer } from './DebugVariableViewer.svelte';
|
|
46
|
-
export { default as DebugConsole } from './DebugConsole.svelte';
|
|
47
|
-
export { DAPClient, getDAPClient, resetDAPClient, debugState } from './dapClient';
|
|
48
|
-
// Re-export shared utilities
|
|
49
|
-
export { fetchContextualVariables, signDebugRequest, getDebugErrorMessage, isDebuggableLanguage, getDebugFileExtension } from './debugUtils';
|
|
50
|
-
/**
|
|
51
|
-
* Language to debug endpoint path mapping.
|
|
52
|
-
* Uses the unified DAP Debug Service with path-based routing.
|
|
53
|
-
*/
|
|
54
|
-
export const DAP_ENDPOINT_PATHS = {
|
|
55
|
-
python3: '/python',
|
|
56
|
-
bun: '/bun',
|
|
57
|
-
typescript: '/typescript',
|
|
58
|
-
nativets: '/typescript',
|
|
59
|
-
deno: '/typescript'
|
|
60
|
-
};
|
|
61
|
-
/**
|
|
62
|
-
* Get the WebSocket URL for the DAP debug server.
|
|
63
|
-
* Routes through the reverse proxy at /ws_debug/* in production.
|
|
64
|
-
*
|
|
65
|
-
* @param language - The script language (python3, bun, typescript, etc.)
|
|
66
|
-
* @returns The full WebSocket URL for the debug server
|
|
67
|
-
*/
|
|
68
|
-
export function getDebugServerUrl(language) {
|
|
69
|
-
const path = DAP_ENDPOINT_PATHS[language] || DAP_ENDPOINT_PATHS.python3;
|
|
70
|
-
if (typeof window === 'undefined') {
|
|
71
|
-
// SSR fallback
|
|
72
|
-
return `ws://localhost:3003${path}`;
|
|
73
|
-
}
|
|
74
|
-
const wsProtocol = window.location.protocol === 'https:' ? 'wss' : 'ws';
|
|
75
|
-
return `${wsProtocol}://${window.location.host}/ws_debug${path}`;
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* @deprecated Use isDebuggableLanguage instead
|
|
79
|
-
*/
|
|
80
|
-
export function isDebuggable(language) {
|
|
81
|
-
return ['python3', 'bun', 'typescript', 'deno', 'nativets'].includes(language);
|
|
82
|
-
}
|
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
<script lang="ts">import { Drawer, DrawerContent } from '../../common';
|
|
2
|
-
import FlowBuilder from '../../FlowBuilder.svelte';
|
|
3
|
-
import DiffDrawer from '../../DiffDrawer.svelte';
|
|
4
|
-
import { FlowService } from '../../../gen';
|
|
5
|
-
import { workspaceStore } from '../../../stores';
|
|
6
|
-
import { ExternalLink, Loader2 } from 'lucide-svelte';
|
|
7
|
-
import Button from '../../common/button/Button.svelte';
|
|
8
|
-
import { emptySchema } from '../../../utils';
|
|
9
|
-
import { createEventDispatcher } from 'svelte';
|
|
10
|
-
import { fade } from 'svelte/transition';
|
|
11
|
-
import { initFlow } from '../flowStore.svelte';
|
|
12
|
-
let flowEditorDrawer = $state();
|
|
13
|
-
const dispatch = createEventDispatcher();
|
|
14
|
-
export async function openDrawer(path, cb) {
|
|
15
|
-
flowPath = path;
|
|
16
|
-
flow = undefined;
|
|
17
|
-
loading = true;
|
|
18
|
-
callback = cb;
|
|
19
|
-
flowEditorDrawer?.openDrawer?.();
|
|
20
|
-
try {
|
|
21
|
-
const flowWithDraft = await FlowService.getFlowByPathWithDraft({
|
|
22
|
-
workspace: $workspaceStore,
|
|
23
|
-
path
|
|
24
|
-
});
|
|
25
|
-
savedFlow = {
|
|
26
|
-
...structuredClone(flowWithDraft),
|
|
27
|
-
draft: flowWithDraft.draft
|
|
28
|
-
? {
|
|
29
|
-
...structuredClone(flowWithDraft.draft),
|
|
30
|
-
path: flowWithDraft.draft.path ?? flowWithDraft.path
|
|
31
|
-
}
|
|
32
|
-
: undefined
|
|
33
|
-
};
|
|
34
|
-
// Use the draft if available, otherwise the deployed flow
|
|
35
|
-
flow = flowWithDraft.draft ?? flowWithDraft;
|
|
36
|
-
await initFlow(flow, flowStore, flowStateStore);
|
|
37
|
-
loading = false;
|
|
38
|
-
}
|
|
39
|
-
catch (error) {
|
|
40
|
-
console.error('Failed to load flow:', error);
|
|
41
|
-
loading = false;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
let callback = undefined;
|
|
45
|
-
let flowPath = $state('');
|
|
46
|
-
let flow = $state(undefined);
|
|
47
|
-
let savedFlow = $state(undefined);
|
|
48
|
-
let loading = $state(true);
|
|
49
|
-
const flowStore = $state({
|
|
50
|
-
val: {
|
|
51
|
-
summary: '',
|
|
52
|
-
value: { modules: [] },
|
|
53
|
-
path: '',
|
|
54
|
-
edited_at: '',
|
|
55
|
-
edited_by: '',
|
|
56
|
-
archived: false,
|
|
57
|
-
extra_perms: {},
|
|
58
|
-
schema: emptySchema()
|
|
59
|
-
}
|
|
60
|
-
});
|
|
61
|
-
const flowStateStore = $state({ val: {} });
|
|
62
|
-
let diffDrawer = $state();
|
|
63
|
-
</script>
|
|
64
|
-
|
|
65
|
-
<Drawer bind:this={flowEditorDrawer} size="100%">
|
|
66
|
-
<DrawerContent
|
|
67
|
-
title="Flow Editor - {flowPath}"
|
|
68
|
-
noPadding
|
|
69
|
-
fullScreen
|
|
70
|
-
on:close={() => {
|
|
71
|
-
flowEditorDrawer?.closeDrawer()
|
|
72
|
-
}}
|
|
73
|
-
>
|
|
74
|
-
{#if loading}
|
|
75
|
-
<div
|
|
76
|
-
out:fade={{ duration: 200 }}
|
|
77
|
-
class="absolute inset-0 center-center flex-col bg-surface text-primary border"
|
|
78
|
-
>
|
|
79
|
-
<Loader2 class="animate-spin" size={16} />
|
|
80
|
-
<span class="text-xs mt-1">Loading flow...</span>
|
|
81
|
-
</div>
|
|
82
|
-
{:else if flow}
|
|
83
|
-
<FlowBuilder
|
|
84
|
-
{flowStore}
|
|
85
|
-
{flowStateStore}
|
|
86
|
-
initialPath={flowPath}
|
|
87
|
-
newFlow={false}
|
|
88
|
-
selectedId="settings-metadata"
|
|
89
|
-
loading={false}
|
|
90
|
-
bind:savedFlow
|
|
91
|
-
{diffDrawer}
|
|
92
|
-
customUi={{ topBar: { draft: false, extraDeployOptions: false } }}
|
|
93
|
-
onDeploy={() => {
|
|
94
|
-
callback?.()
|
|
95
|
-
dispatch('save')
|
|
96
|
-
flowEditorDrawer?.closeDrawer()
|
|
97
|
-
}}
|
|
98
|
-
onDetails={() => {
|
|
99
|
-
callback?.()
|
|
100
|
-
dispatch('save')
|
|
101
|
-
flowEditorDrawer?.closeDrawer()
|
|
102
|
-
}}
|
|
103
|
-
/>
|
|
104
|
-
{:else}
|
|
105
|
-
<div class="flex items-center justify-center h-full">
|
|
106
|
-
<span class="text-red-500">Failed to load flow</span>
|
|
107
|
-
</div>
|
|
108
|
-
{/if}
|
|
109
|
-
{#snippet actions()}
|
|
110
|
-
<Button
|
|
111
|
-
variant="default"
|
|
112
|
-
on:click={() => {
|
|
113
|
-
window.open(`/flows/edit/${flowPath}`, '_blank', 'noopener,noreferrer')
|
|
114
|
-
flowEditorDrawer?.closeDrawer()
|
|
115
|
-
}}
|
|
116
|
-
startIcon={{ icon: ExternalLink }}
|
|
117
|
-
>
|
|
118
|
-
Edit in new tab & close drawer
|
|
119
|
-
</Button>
|
|
120
|
-
{/snippet}
|
|
121
|
-
</DrawerContent>
|
|
122
|
-
</Drawer>
|
|
123
|
-
|
|
124
|
-
<DiffDrawer bind:this={diffDrawer} isFlow />
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
|
|
2
|
-
new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
|
|
3
|
-
$$bindings?: Bindings;
|
|
4
|
-
} & Exports;
|
|
5
|
-
(internal: unknown, props: {
|
|
6
|
-
$$events?: Events;
|
|
7
|
-
$$slots?: Slots;
|
|
8
|
-
}): Exports & {
|
|
9
|
-
$set?: any;
|
|
10
|
-
$on?: any;
|
|
11
|
-
};
|
|
12
|
-
z_$$bindings?: Bindings;
|
|
13
|
-
}
|
|
14
|
-
declare const FlowEditorDrawer: $$__sveltets_2_IsomorphicComponent<Record<string, never>, {
|
|
15
|
-
save: CustomEvent<any>;
|
|
16
|
-
} & {
|
|
17
|
-
[evt: string]: CustomEvent<any>;
|
|
18
|
-
}, {}, {
|
|
19
|
-
openDrawer: (path: string, cb: () => void) => Promise<void>;
|
|
20
|
-
}, "">;
|
|
21
|
-
type FlowEditorDrawer = InstanceType<typeof FlowEditorDrawer>;
|
|
22
|
-
export default FlowEditorDrawer;
|
|
@@ -1,217 +0,0 @@
|
|
|
1
|
-
<script lang="ts">import { workspaceStore } from '../../../stores';
|
|
2
|
-
import { McpOauthService, OauthService, ResourceService, VariableService } from '../../../gen';
|
|
3
|
-
import { Button } from '../../common';
|
|
4
|
-
import Label from '../../Label.svelte';
|
|
5
|
-
import Path from '../../Path.svelte';
|
|
6
|
-
import { sendUserToast } from '../../../toast';
|
|
7
|
-
import { sameTopDomainOrigin } from '../../../cookies';
|
|
8
|
-
import { onDestroy } from 'svelte';
|
|
9
|
-
let { onConnected, onCancel } = $props();
|
|
10
|
-
let serverUrl = $state('');
|
|
11
|
-
let discoveryResult = $state(null);
|
|
12
|
-
let selectedScopes = $state([]);
|
|
13
|
-
let resourceName = $state('');
|
|
14
|
-
let resourcePath = $state('');
|
|
15
|
-
let pathError = $state('');
|
|
16
|
-
let status = $state('idle');
|
|
17
|
-
let error = $state(null);
|
|
18
|
-
async function discoverOAuth() {
|
|
19
|
-
status = 'discovering';
|
|
20
|
-
error = null;
|
|
21
|
-
try {
|
|
22
|
-
discoveryResult = await McpOauthService.discoverMcpOauth({
|
|
23
|
-
requestBody: { mcp_server_url: serverUrl }
|
|
24
|
-
});
|
|
25
|
-
selectedScopes = discoveryResult?.scopes_supported ?? [];
|
|
26
|
-
try {
|
|
27
|
-
const urlObj = new URL(serverUrl);
|
|
28
|
-
resourceName = urlObj.hostname.replace(/\./g, '_');
|
|
29
|
-
}
|
|
30
|
-
catch {
|
|
31
|
-
resourceName = 'mcp_server';
|
|
32
|
-
}
|
|
33
|
-
status = 'discovered';
|
|
34
|
-
}
|
|
35
|
-
catch (e) {
|
|
36
|
-
console.error('Error discovering OAuth settings', e);
|
|
37
|
-
const errorMessage = e.body?.message || e.body || e.message || 'Unknown error';
|
|
38
|
-
error = `Failed to discover OAuth settings: ${errorMessage}`;
|
|
39
|
-
status = 'idle';
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
function startOAuth() {
|
|
43
|
-
const url = new URL(`/api/mcp/oauth/start`, window.location.origin);
|
|
44
|
-
url.searchParams.set('mcp_server_url', serverUrl);
|
|
45
|
-
url.searchParams.set('scopes', selectedScopes.join(','));
|
|
46
|
-
const popup = window.open(url.toString(), '_blank', 'popup=true');
|
|
47
|
-
if (!popup) {
|
|
48
|
-
error = 'Popup blocked. Please allow popups for this site.';
|
|
49
|
-
return;
|
|
50
|
-
}
|
|
51
|
-
window.addEventListener('message', handleOAuthMessage);
|
|
52
|
-
window.addEventListener('storage', handleStorageEvent);
|
|
53
|
-
status = 'connecting';
|
|
54
|
-
}
|
|
55
|
-
function handleOAuthMessage(event) {
|
|
56
|
-
if (!sameTopDomainOrigin(event.origin, window.location.origin))
|
|
57
|
-
return;
|
|
58
|
-
if (event.data.type === 'MCP_CONNECTED') {
|
|
59
|
-
cleanup();
|
|
60
|
-
createMcpResource(event.data);
|
|
61
|
-
}
|
|
62
|
-
else if (event.data.type === 'MCP_ERROR') {
|
|
63
|
-
cleanup();
|
|
64
|
-
error = event.data.error;
|
|
65
|
-
status = 'discovered';
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
function handleStorageEvent(event) {
|
|
69
|
-
if (event.key === 'mcp-oauth-callback') {
|
|
70
|
-
cleanup();
|
|
71
|
-
try {
|
|
72
|
-
const data = JSON.parse(event.newValue || '{}');
|
|
73
|
-
localStorage.removeItem('mcp-oauth-callback');
|
|
74
|
-
if (data.type === 'MCP_CONNECTED') {
|
|
75
|
-
createMcpResource(data);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
catch (e) {
|
|
79
|
-
console.error('Error parsing MCP OAuth callback', e);
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
function cleanup() {
|
|
84
|
-
window.removeEventListener('message', handleOAuthMessage);
|
|
85
|
-
window.removeEventListener('storage', handleStorageEvent);
|
|
86
|
-
}
|
|
87
|
-
async function createMcpResource(data) {
|
|
88
|
-
try {
|
|
89
|
-
let accountId;
|
|
90
|
-
if (data.expires_in && data.refresh_token) {
|
|
91
|
-
const accountIdStr = await OauthService.createAccount({
|
|
92
|
-
workspace: $workspaceStore,
|
|
93
|
-
requestBody: {
|
|
94
|
-
refresh_token: data.refresh_token,
|
|
95
|
-
expires_in: data.expires_in,
|
|
96
|
-
client: 'mcp',
|
|
97
|
-
mcp_server_url: data.mcp_server_url
|
|
98
|
-
}
|
|
99
|
-
});
|
|
100
|
-
accountId = Number(accountIdStr);
|
|
101
|
-
}
|
|
102
|
-
await VariableService.createVariable({
|
|
103
|
-
workspace: $workspaceStore,
|
|
104
|
-
requestBody: {
|
|
105
|
-
path: resourcePath,
|
|
106
|
-
value: data.access_token,
|
|
107
|
-
is_secret: true,
|
|
108
|
-
is_oauth: true,
|
|
109
|
-
account: accountId,
|
|
110
|
-
description: `MCP OAuth token for ${data.mcp_server_url}`
|
|
111
|
-
}
|
|
112
|
-
});
|
|
113
|
-
await ResourceService.createResource({
|
|
114
|
-
workspace: $workspaceStore,
|
|
115
|
-
requestBody: {
|
|
116
|
-
resource_type: 'mcp',
|
|
117
|
-
path: resourcePath,
|
|
118
|
-
value: {
|
|
119
|
-
name: resourceName,
|
|
120
|
-
url: data.mcp_server_url,
|
|
121
|
-
token: `$var:${resourcePath}`
|
|
122
|
-
},
|
|
123
|
-
description: `MCP server connected via OAuth`
|
|
124
|
-
}
|
|
125
|
-
});
|
|
126
|
-
sendUserToast('Connected to MCP server');
|
|
127
|
-
onConnected(resourcePath, resourceName);
|
|
128
|
-
}
|
|
129
|
-
catch (e) {
|
|
130
|
-
error = e.body?.message || e.message || 'Failed to create resource';
|
|
131
|
-
status = 'discovered';
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
onDestroy(cleanup);
|
|
135
|
-
</script>
|
|
136
|
-
|
|
137
|
-
<div class="border rounded p-4 bg-surface-secondary flex flex-col gap-4">
|
|
138
|
-
<div class="flex justify-between items-center">
|
|
139
|
-
<span class="font-semibold text-sm">Connect MCP Server with OAuth</span>
|
|
140
|
-
<Button size="xs" color="light" onClick={onCancel}>Cancel</Button>
|
|
141
|
-
</div>
|
|
142
|
-
|
|
143
|
-
<Label label="MCP Server URL">
|
|
144
|
-
<input
|
|
145
|
-
type="url"
|
|
146
|
-
bind:value={serverUrl}
|
|
147
|
-
placeholder="https://mcp.example.com"
|
|
148
|
-
class="text-sm w-full"
|
|
149
|
-
disabled={status === 'connecting'}
|
|
150
|
-
/>
|
|
151
|
-
</Label>
|
|
152
|
-
|
|
153
|
-
{#if status === 'idle'}
|
|
154
|
-
<Button size="sm" onClick={discoverOAuth} disabled={!serverUrl}>Discover OAuth Settings</Button>
|
|
155
|
-
{:else if status === 'discovering'}
|
|
156
|
-
<div class="text-sm text-secondary">Discovering OAuth settings...</div>
|
|
157
|
-
{:else if status === 'discovered' && discoveryResult}
|
|
158
|
-
<div class="text-xs text-green-600 dark:text-green-400">
|
|
159
|
-
✓ OAuth supported
|
|
160
|
-
{#if discoveryResult.supports_dynamic_registration}
|
|
161
|
-
(Dynamic Client Registration available)
|
|
162
|
-
{/if}
|
|
163
|
-
</div>
|
|
164
|
-
|
|
165
|
-
{#if discoveryResult.scopes_supported && discoveryResult.scopes_supported.length > 0}
|
|
166
|
-
<Label label="Select Scopes">
|
|
167
|
-
<div class="flex flex-col flex-wrap gap-2">
|
|
168
|
-
{#each discoveryResult.scopes_supported as scope}
|
|
169
|
-
<label class="flex flex-row items-center gap-2 text-xs cursor-pointer">
|
|
170
|
-
<input
|
|
171
|
-
type="checkbox"
|
|
172
|
-
checked={selectedScopes.includes(scope)}
|
|
173
|
-
onchange={(e) => {
|
|
174
|
-
const target = e.target as HTMLInputElement
|
|
175
|
-
if (target.checked) {
|
|
176
|
-
selectedScopes = [...selectedScopes, scope]
|
|
177
|
-
} else {
|
|
178
|
-
selectedScopes = selectedScopes.filter((s) => s !== scope)
|
|
179
|
-
}
|
|
180
|
-
}}
|
|
181
|
-
class="!w-4 !h-4"
|
|
182
|
-
/>
|
|
183
|
-
{scope}
|
|
184
|
-
</label>
|
|
185
|
-
{/each}
|
|
186
|
-
</div>
|
|
187
|
-
</Label>
|
|
188
|
-
{/if}
|
|
189
|
-
|
|
190
|
-
<Label label="Resource Name">
|
|
191
|
-
<input
|
|
192
|
-
type="text"
|
|
193
|
-
bind:value={resourceName}
|
|
194
|
-
placeholder="my-mcp-server"
|
|
195
|
-
class="text-sm w-full"
|
|
196
|
-
/>
|
|
197
|
-
</Label>
|
|
198
|
-
|
|
199
|
-
<Path
|
|
200
|
-
bind:path={resourcePath}
|
|
201
|
-
bind:error={pathError}
|
|
202
|
-
initialPath=""
|
|
203
|
-
namePlaceholder={resourceName}
|
|
204
|
-
kind="resource"
|
|
205
|
-
/>
|
|
206
|
-
|
|
207
|
-
<Button size="sm" onClick={startOAuth} disabled={!resourcePath || pathError !== ''}>
|
|
208
|
-
Connect with OAuth
|
|
209
|
-
</Button>
|
|
210
|
-
{:else if status === 'connecting'}
|
|
211
|
-
<div class="text-sm text-secondary">Complete authentication in popup window...</div>
|
|
212
|
-
{/if}
|
|
213
|
-
|
|
214
|
-
{#if error}
|
|
215
|
-
<div class="text-xs text-red-600 dark:text-red-400">{error}</div>
|
|
216
|
-
{/if}
|
|
217
|
-
</div>
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
interface Props {
|
|
2
|
-
onConnected: (resourcePath: string, resourceName: string) => void;
|
|
3
|
-
onCancel: () => void;
|
|
4
|
-
}
|
|
5
|
-
declare const McpOAuthConnect: import("svelte").Component<Props, {}, "">;
|
|
6
|
-
type McpOAuthConnect = ReturnType<typeof McpOAuthConnect>;
|
|
7
|
-
export default McpOAuthConnect;
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
<script lang="ts">"use strict";
|
|
2
|
-
let { height = '24px', width = '24px', size = undefined } = $props();
|
|
3
|
-
const derivedWidth = $derived(size ? size : width);
|
|
4
|
-
const derivedHeight = $derived(size ? size : height);
|
|
5
|
-
</script>
|
|
6
|
-
|
|
7
|
-
<svg
|
|
8
|
-
width={derivedWidth}
|
|
9
|
-
height={derivedHeight}
|
|
10
|
-
viewBox="0 0 32 32"
|
|
11
|
-
fill="none"
|
|
12
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
13
|
-
>
|
|
14
|
-
<path d="M6 28L4 3H28L26 28L16 31L6 28Z" fill="#E44D26" />
|
|
15
|
-
<path d="M26 5H16V29.5L24 27L26 5Z" fill="#F16529" />
|
|
16
|
-
<path
|
|
17
|
-
d="M9.5 17.5L8.5 8H24L23.5 11H11.5L12 14.5H23L22 24L16 26L10 24L9.5 19H12.5L13 21.5L16 22.5L19 21.5L19.5 17.5H9.5Z"
|
|
18
|
-
fill="white"
|
|
19
|
-
/>
|
|
20
|
-
</svg>
|