windmill-components 1.623.1 → 1.623.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package/assets/tokens/tokens.json +11 -1
- package/package/ata/apis.js +78 -5
- package/package/cancelable-promise-utils.js +4 -2
- package/package/components/AddUser.svelte +1 -1
- package/package/components/ApiConnectForm.svelte +6 -0
- package/package/components/AppConnectDrawer.svelte +1 -0
- package/package/components/AppConnectInner.svelte +1 -0
- package/package/components/AuthSettings.svelte +3 -1
- package/package/components/BedrockCredentialsCheck.svelte +241 -0
- package/package/components/BedrockCredentialsCheck.svelte.d.ts +3 -0
- package/package/components/CenteredModal.svelte +32 -24
- package/package/components/CenteredModal.svelte.d.ts +7 -27
- package/package/components/CenteredPage.svelte +6 -2
- package/package/components/CenteredPage.svelte.d.ts +3 -0
- package/package/components/CompareWorkspaces.svelte +74 -16
- package/package/components/ConcurrentJobsChart.svelte +3 -2
- package/package/components/ConcurrentJobsChart.svelte.d.ts +2 -2
- package/package/components/CustomPopover.svelte +20 -23
- package/package/components/CustomPopover.svelte.d.ts +14 -39
- package/package/components/DBManager.svelte +134 -42
- package/package/components/DBManager.svelte.d.ts +13 -2
- package/package/components/DBManagerContent.svelte +25 -63
- package/package/components/DBManagerContent.svelte.d.ts +38 -4
- package/package/components/DBManagerDrawer.svelte +7 -9
- package/package/components/DBTable.svelte +1 -1
- package/package/components/DBTable.svelte.d.ts +3 -1
- package/package/components/DBTableEditor.svelte +234 -178
- package/package/components/DBTableEditor.svelte.d.ts +22 -3
- package/package/components/DateInput.svelte +29 -35
- package/package/components/DateInput.svelte.d.ts +10 -11
- package/package/components/DedicatedWorkersSelector.svelte +569 -0
- package/package/components/DedicatedWorkersSelector.svelte.d.ts +8 -0
- package/package/components/DeployWorkspace.svelte +106 -29
- package/package/components/Description.svelte +3 -2
- package/package/components/Dev.svelte +36 -2
- package/package/components/DiffDrawer.svelte +8 -29
- package/package/components/DiffEditor.svelte +32 -2
- package/package/components/DisplayResult.svelte +32 -24
- package/package/components/DropdownV2.svelte +2 -1
- package/package/components/DropdownV2.svelte.d.ts +1 -0
- package/package/components/Editor.svelte +71 -26
- package/package/components/Editor.svelte.d.ts +3 -0
- package/package/components/EditorBar.svelte +1 -1
- package/package/components/FakeMonacoPlaceHolder.svelte +1 -1
- package/package/components/FlowBuilder.svelte +17 -11
- package/package/components/FlowDiffViewer.svelte +37 -0
- package/package/components/FlowDiffViewer.svelte.d.ts +7 -0
- package/package/components/FlowGraphViewer.svelte +5 -2
- package/package/components/FlowGraphViewer.svelte.d.ts +2 -0
- package/package/components/FlowLoopIterationPreview.svelte.d.ts +1 -1
- package/package/components/FlowPreviewContent.svelte +3 -2
- package/package/components/FlowPreviewContent.svelte.d.ts +1 -1
- package/package/components/FlowPreviewResult.svelte +0 -4
- package/package/components/FlowRestartButton.svelte +2 -3
- package/package/components/FlowRestartButton.svelte.d.ts +3 -0
- package/package/components/FlowStatusViewerInner.svelte +55 -35
- package/package/components/FlowStatusViewerInner.svelte.d.ts +1 -1
- package/package/components/FlowStatusWaitingForEvents.svelte +27 -23
- package/package/components/FlowStatusWaitingForEvents.svelte.d.ts +4 -18
- package/package/components/FlowViewer.svelte +103 -2
- package/package/components/FlowViewer.svelte.d.ts +9 -3
- package/package/components/ForkWorkspaceBanner.svelte +32 -13
- package/package/components/GraphqlSchemaViewer.svelte +8 -1
- package/package/components/HistoricInputs.svelte +25 -27
- package/package/components/HistoricInputs.svelte.d.ts +2 -2
- package/package/components/InfiniteList.svelte +27 -20
- package/package/components/InfiniteList.svelte.d.ts +2 -0
- package/package/components/InstanceSetting.svelte +38 -0
- package/package/components/InviteUser.svelte +16 -42
- package/package/components/InviteUser.svelte.d.ts +4 -18
- package/package/components/JobLoader.svelte.d.ts +1 -1
- package/package/components/JobOtelTraces.svelte +287 -0
- package/package/components/JobOtelTraces.svelte.d.ts +6 -0
- package/package/components/JsonInputs.svelte +6 -8
- package/package/components/JsonInputs.svelte.d.ts +7 -8
- package/package/components/LogViewer.svelte +91 -33
- package/package/components/Login.svelte +27 -0
- package/package/components/ManualPopover.svelte +5 -6
- package/package/components/ManualPopover.svelte.d.ts +9 -35
- package/package/components/MemoryFootprintViewer.svelte +2 -6
- package/package/components/ModulePreview.svelte +23 -21
- package/package/components/ModulePreview.svelte.d.ts +1 -0
- package/package/components/NextcloudSetting.svelte +1 -1
- package/package/components/OAuthSetting.svelte +1 -0
- package/package/components/Path.svelte +2 -2
- package/package/components/Path.svelte.d.ts +1 -1
- package/package/components/PocketIdSetting.svelte +82 -0
- package/package/components/PocketIdSetting.svelte.d.ts +6 -0
- package/package/components/ResourceEditor.svelte +4 -4
- package/package/components/ResourcePicker.svelte +4 -0
- package/package/components/ResourcePicker.svelte.d.ts +1 -0
- package/package/components/RunButton.svelte +5 -15
- package/package/components/RunButton.svelte.d.ts +7 -19
- package/package/components/RunChart.svelte +8 -4
- package/package/components/RunChart.svelte.d.ts +2 -2
- package/package/components/RunForm.svelte +9 -17
- package/package/components/RunForm.svelte.d.ts +0 -1
- package/package/components/RunFormAdvancedPopup.svelte +1 -1
- package/package/components/RunsPage.svelte +202 -537
- package/package/components/RunsPage.svelte.d.ts +5 -5
- package/package/components/S3FilePicker.svelte +7 -11
- package/package/components/S3FilePickerInner.svelte +2 -3
- package/package/components/S3FilePickerInner.svelte.d.ts +2 -2
- package/package/components/SavedInputsPicker.svelte +1 -1
- package/package/components/SavedInputsV2.svelte +35 -36
- package/package/components/SchemaForm.svelte +26 -19
- package/package/components/SchemaFormWithArgPicker.svelte +4 -3
- package/package/components/ScriptBuilder.svelte +1 -1
- package/package/components/ScriptEditor.svelte +575 -101
- package/package/components/Section.svelte +4 -2
- package/package/components/ServiceLogsInner.svelte +4 -4
- package/package/components/ShareModal.svelte.d.ts +1 -1
- package/package/components/SimpleEditor.svelte +46 -2
- package/package/components/Star.svelte +8 -12
- package/package/components/Star.svelte.d.ts +6 -19
- package/package/components/StringTypeNarrowing.svelte.d.ts +1 -1
- package/package/components/SuperadminSettingsInner.svelte +1 -1
- package/package/components/TemplateEditor.svelte +54 -29
- package/package/components/TemplateEditor.svelte.d.ts +13 -102
- package/package/components/TimeAgo.svelte +49 -7
- package/package/components/TimeAgo.svelte.d.ts +1 -0
- package/package/components/Toast.svelte +5 -1
- package/package/components/UserSettings.svelte +1 -1
- package/package/components/WorkerGroup.svelte +35 -20
- package/package/components/WorkerGroup.svelte.d.ts +1 -0
- package/package/components/WorkerTagPicker.svelte +1 -1
- package/package/components/WorkerTagSelect.svelte +5 -2
- package/package/components/WorkspaceTutorials.svelte +5 -0
- package/package/components/apps/components/buttons/AppButton.svelte +21 -6
- package/package/components/apps/components/buttons/AppForm.svelte +2 -1
- package/package/components/apps/components/buttons/AppFormButton.svelte +2 -1
- package/package/components/apps/components/display/InsertRowDrawerButton.svelte +1 -1
- package/package/components/apps/components/display/dbtable/AppDbExplorer.svelte +2 -5
- package/package/components/apps/components/display/dbtable/dbFeatures.d.ts +9 -0
- package/package/components/apps/components/display/dbtable/dbFeatures.js +32 -0
- package/package/components/apps/components/display/dbtable/metadata.d.ts +3 -3
- package/package/components/apps/components/display/dbtable/metadata.js +177 -148
- package/package/components/apps/components/display/dbtable/queries/alterTable.d.ts +46 -0
- package/package/components/apps/components/display/dbtable/queries/alterTable.js +322 -0
- package/package/components/apps/components/display/dbtable/queries/alterTable.test.d.ts +1 -0
- package/package/components/apps/components/display/dbtable/queries/alterTable.test.js +867 -0
- package/package/components/apps/components/display/dbtable/queries/createTable.d.ts +2 -24
- package/package/components/apps/components/display/dbtable/queries/createTable.js +13 -25
- package/package/components/apps/components/display/dbtable/queries/dbQueriesUtils.d.ts +9 -0
- package/package/components/apps/components/display/dbtable/queries/dbQueriesUtils.js +45 -0
- package/package/components/apps/components/display/dbtable/queries/relationalKeys.d.ts +45 -0
- package/package/components/apps/components/display/dbtable/queries/relationalKeys.js +401 -0
- package/package/components/apps/components/display/dbtable/queries/select.d.ts +2 -0
- package/package/components/apps/components/display/dbtable/queries/select.js +37 -6
- package/package/components/apps/components/display/dbtable/tableEditor.d.ts +35 -0
- package/package/components/apps/components/display/dbtable/tableEditor.js +67 -0
- package/package/components/apps/components/display/dbtable/utils.d.ts +2 -0
- package/package/components/apps/components/display/dbtable/utils.js +61 -36
- package/package/components/apps/components/display/table/AppAggridTable.svelte +8 -0
- package/package/components/apps/components/display/table/AppAggridTableActions.svelte +9 -9
- package/package/components/apps/components/display/table/AppAggridTableActions.svelte.d.ts +1 -1
- 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 +3 -2
- 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/components/inputs/AppMultiSelectV2.svelte +2 -4
- package/package/components/apps/editor/AppEditorHeader.svelte +8 -1
- package/package/components/apps/editor/AppEditorHeaderDeploy.svelte +32 -29
- 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 +49 -30
- package/package/components/apps/editor/PublicApp.svelte.d.ts +1 -0
- package/package/components/apps/editor/inlineScriptsPanel/InlineScriptRunnableByPath.svelte +77 -7
- 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 +10 -1
- package/package/components/apps/inputType.d.ts +6 -1
- package/package/components/assets/AssetsDropdownButton.svelte +1 -1
- package/package/components/assets/AssetsUsageDrawer.svelte +98 -27
- package/package/components/assets/AssetsUsageDrawer.svelte.d.ts +5 -6
- package/package/components/assets/lib.d.ts +3 -2
- package/package/components/assets/lib.js +3 -1
- package/package/components/auditLogs/AuditLogsFilters.svelte +9 -17
- package/package/components/auditLogs/AuditLogsFilters.svelte.d.ts +1 -1
- package/package/components/common/CloseButton.svelte +2 -1
- package/package/components/common/CloseButton.svelte.d.ts +1 -0
- package/package/components/common/badge/CountBadge.svelte +4 -3
- package/package/components/common/badge/CountBadge.svelte.d.ts +1 -0
- package/package/components/common/button/Button.svelte +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/confirmationModal/ConfirmationModal.svelte +2 -1
- package/package/components/common/confirmationModal/ConfirmationModal.svelte.d.ts +1 -0
- package/package/components/common/drawer/Drawer.svelte +4 -1
- package/package/components/common/drawer/DrawerContent.svelte +6 -3
- package/package/components/common/drawer/DrawerContent.svelte.d.ts +1 -0
- package/package/components/common/languageIcons/TypeScript.svelte +5 -3
- package/package/components/common/languageIcons/TypeScript.svelte.d.ts +1 -0
- package/package/components/common/modal/Modal.svelte +3 -3
- package/package/components/common/modal/Modal2.svelte +1 -0
- package/package/components/common/table/AppRow.svelte +4 -1
- package/package/components/common/table/FlowRow.svelte +4 -1
- package/package/components/common/table/RawAppRow.svelte +4 -1
- package/package/components/common/table/Row.svelte +11 -21
- package/package/components/common/table/Row.svelte.d.ts +4 -20
- package/package/components/common/table/RowIcon.svelte +6 -2
- package/package/components/common/table/RowIcon.svelte.d.ts +1 -1
- package/package/components/common/table/ScriptRow.svelte +4 -1
- package/package/components/copilot/autocomplete/Autocompletor.d.ts +1 -1
- package/package/components/copilot/autocomplete/Autocompletor.js +7 -6
- package/package/components/copilot/autocomplete/request.js +13 -9
- package/package/components/copilot/chat/AIButtonStyle.d.ts +1 -1
- package/package/components/copilot/chat/AIButtonStyle.js +2 -1
- package/package/components/copilot/chat/AIChat.svelte +3 -1
- package/package/components/copilot/chat/AIChatDisplay.svelte +89 -4
- package/package/components/copilot/chat/AIChatInput.svelte +275 -0
- package/package/components/copilot/chat/AIChatManager.svelte.js +107 -1
- package/package/components/copilot/chat/AiChatLayout.svelte +15 -30
- package/package/components/copilot/chat/AppAvailableContextList.svelte +263 -0
- package/package/components/copilot/chat/AppAvailableContextList.svelte.d.ts +13 -0
- package/package/components/copilot/chat/ContextElementBadge.svelte +44 -0
- package/package/components/copilot/chat/DatatableCreationPolicy.svelte +32 -33
- package/package/components/copilot/chat/ProviderModelSelector.svelte +1 -1
- package/package/components/copilot/chat/__tests__/app/appEvalHelpers.js +3 -0
- package/package/components/copilot/chat/__tests__/flow/flowEvalHelpers.js +4 -0
- package/package/components/copilot/chat/app/core.d.ts +56 -15
- package/package/components/copilot/chat/app/core.js +141 -22
- package/package/components/copilot/chat/context.d.ts +59 -2
- package/package/components/copilot/chat/context.js +6 -2
- package/package/components/copilot/chat/flow/FlowAIChat.svelte +22 -0
- package/package/components/copilot/chat/flow/core.d.ts +3 -1
- package/package/components/copilot/chat/flow/core.js +29 -2
- package/package/components/copilot/chat/flow/openFlow.json +1 -1
- package/package/components/copilot/chat/flow/openFlowZod.d.ts +1 -0
- package/package/components/copilot/chat/flow/openFlowZod.js +14 -2
- package/package/components/copilot/chat/script/core.d.ts +4 -1
- package/package/components/copilot/chat/script/core.js +43 -6
- package/package/components/copilot/chat/shared.d.ts +10 -0
- package/package/components/copilot/chat/shared.js +24 -0
- package/package/components/copilot/lib.d.ts +1 -1
- package/package/components/copilot/lib.js +2 -9
- package/package/components/copilot/utils.d.ts +5 -0
- package/package/components/copilot/utils.js +8 -0
- package/package/components/custom_ui.d.ts +2 -0
- package/package/components/dbOps.d.ts +18 -4
- package/package/components/dbOps.js +25 -3
- package/package/components/debug/DebugConsole.svelte +277 -0
- package/package/components/debug/DebugConsole.svelte.d.ts +13 -0
- package/package/components/debug/DebugPanel.svelte +97 -0
- package/package/components/debug/DebugPanel.svelte.d.ts +11 -0
- package/package/components/debug/DebugToolbar.svelte +148 -0
- package/package/components/debug/DebugToolbar.svelte.d.ts +17 -0
- package/package/components/debug/DebugVariableViewer.svelte +115 -0
- package/package/components/debug/DebugVariableViewer.svelte.d.ts +11 -0
- package/package/components/debug/MonacoDebugger.svelte +384 -0
- package/package/components/debug/MonacoDebugger.svelte.d.ts +15 -0
- package/package/components/debug/dapClient.d.ts +192 -0
- package/package/components/debug/dapClient.js +426 -0
- package/package/components/debug/debugUtils.d.ts +30 -0
- package/package/components/debug/debugUtils.js +131 -0
- package/package/components/debug/index.d.ts +75 -0
- package/package/components/debug/index.js +82 -0
- package/package/components/details/DetailPageHeader.svelte +21 -7
- package/package/components/details/DetailPageHeader.svelte.d.ts +2 -1
- package/package/components/details/DetailPageLayout.svelte +10 -1
- package/package/components/details/DetailPageLayout.svelte.d.ts +1 -0
- package/package/components/flows/CreateActionsApp.svelte +6 -4
- package/package/components/flows/DebounceLimit.svelte.d.ts +1 -1
- package/package/components/flows/FlowHistoryInner.svelte +15 -4
- package/package/components/flows/content/AgentToolWrapper.svelte +1 -1
- package/package/components/flows/content/FlowEditorDrawer.svelte +124 -0
- package/package/components/flows/content/FlowEditorDrawer.svelte.d.ts +22 -0
- package/package/components/flows/content/FlowInput.svelte +211 -37
- package/package/components/flows/content/FlowModuleComponent.svelte +553 -67
- package/package/components/flows/content/FlowModuleEarlyStop.svelte +8 -10
- package/package/components/flows/content/FlowModuleHeader.svelte +7 -4
- package/package/components/flows/content/FlowModuleWorkerTagSelect.svelte +1 -1
- package/package/components/flows/content/McpOAuthConnect.svelte +217 -0
- package/package/components/flows/content/McpOAuthConnect.svelte.d.ts +7 -0
- package/package/components/flows/content/McpToolEditor.svelte +50 -37
- package/package/components/flows/content/McpToolEditor.svelte.d.ts +0 -1
- package/package/components/flows/conversations/FlowChat.svelte +16 -2
- package/package/components/flows/conversations/FlowChat.svelte.d.ts +2 -1
- package/package/components/flows/conversations/FlowChatInterface.svelte +103 -6
- package/package/components/flows/conversations/FlowChatInterface.svelte.d.ts +2 -0
- package/package/components/flows/conversations/FlowChatManager.svelte.js +53 -21
- package/package/components/flows/conversations/FlowConversationsSidebar.svelte +79 -77
- package/package/components/flows/header/FlowImportExportMenu.svelte +1 -1
- package/package/components/flows/propPicker/OutputPickerInner.svelte.d.ts +1 -1
- package/package/components/flows/propPicker/PropPickerWrapper.svelte +3 -1
- package/package/components/flows/types.d.ts +2 -0
- package/package/components/git_sync/GitSyncRepositoryCard.svelte +16 -8
- package/package/components/graph/FlowGraphV2.svelte +7 -1
- package/package/components/graph/renderers/triggers/TriggersBadge.svelte +41 -24
- package/package/components/home/ItemsList.svelte +7 -6
- package/package/components/home/TutorialBanner.svelte +34 -18
- package/package/components/home/treeViewUtils.js +1 -1
- package/package/components/icons/CssIcon.svelte +20 -0
- package/package/components/icons/CssIcon.svelte.d.ts +7 -25
- package/package/components/icons/HtmlIcon.svelte +20 -0
- package/package/components/icons/HtmlIcon.svelte.d.ts +8 -0
- package/package/components/icons/JavaScriptIcon.svelte +10 -2
- package/package/components/icons/JavaScriptIcon.svelte.d.ts +1 -0
- package/package/components/icons/JsonIcon.svelte +8 -2
- package/package/components/icons/JsonIcon.svelte.d.ts +1 -0
- package/package/components/icons/LessIcon.svelte +16 -0
- package/package/components/icons/LessIcon.svelte.d.ts +8 -0
- package/package/components/icons/MarkdownIcon.svelte +20 -0
- package/package/components/icons/MarkdownIcon.svelte.d.ts +8 -0
- package/package/components/icons/NextcloudIcon.svelte +3 -2
- package/package/components/icons/NextcloudIcon.svelte.d.ts +2 -0
- package/package/components/icons/PocketIdIcon.svelte +9 -0
- package/package/components/icons/PocketIdIcon.svelte.d.ts +9 -0
- package/package/components/icons/ReactIcon.svelte +10 -2
- package/package/components/icons/ReactIcon.svelte.d.ts +1 -0
- package/package/components/icons/SassIcon.svelte +28 -0
- package/package/components/icons/SassIcon.svelte.d.ts +8 -0
- package/package/components/icons/SvelteIcon.svelte +10 -2
- package/package/components/icons/SvelteIcon.svelte.d.ts +1 -0
- package/package/components/icons/VueIcon.svelte +10 -2
- package/package/components/icons/VueIcon.svelte.d.ts +1 -0
- package/package/components/icons/YamlIcon.svelte +20 -0
- package/package/components/icons/YamlIcon.svelte.d.ts +8 -0
- package/package/components/icons/index.js +3 -1
- package/package/components/instanceSettings/SecretBackendConfig.svelte +514 -0
- package/package/components/instanceSettings/SecretBackendConfig.svelte.d.ts +8 -0
- package/package/components/instanceSettings.d.ts +2 -1
- package/package/components/instanceSettings.js +33 -1
- package/package/components/jobs/JobPreview.svelte +46 -39
- package/package/components/jobs/JobPreview.svelte.d.ts +1 -0
- package/package/components/monacoLanguagesOptions.js +16 -15
- package/package/components/propertyPicker/PropPicker.svelte +16 -2
- package/package/components/propertyPicker/PropPicker.svelte.d.ts +2 -0
- package/package/components/raw_apps/DefaultDatabaseSelector.svelte +9 -5
- package/package/components/raw_apps/FileEditorIcon.svelte +12 -7
- package/package/components/raw_apps/FileEditorIcon.svelte.d.ts +2 -0
- package/package/components/raw_apps/FileTreeNode.svelte +119 -83
- package/package/components/raw_apps/RawAppBackgroundRunner.svelte +88 -8
- package/package/components/raw_apps/RawAppDataTableDrawer.svelte +1 -3
- package/package/components/raw_apps/RawAppDataTableList.svelte +12 -9
- package/package/components/raw_apps/RawAppEditor.svelte +218 -68
- package/package/components/raw_apps/RawAppEditorHeader.svelte +33 -16
- package/package/components/raw_apps/RawAppHistoryList.svelte +264 -80
- package/package/components/raw_apps/RawAppHistoryList.svelte.d.ts +1 -0
- package/package/components/raw_apps/RawAppHistoryManager.svelte.d.ts +15 -1
- package/package/components/raw_apps/RawAppHistoryManager.svelte.js +46 -12
- package/package/components/raw_apps/RawAppInlineScriptEditor.svelte +549 -47
- package/package/components/raw_apps/RawAppInlineScriptEditor.svelte.d.ts +31 -5
- package/package/components/raw_apps/RawAppInlineScriptPanelList.svelte +25 -18
- package/package/components/raw_apps/RawAppInlineScriptPanelList.svelte.d.ts +1 -0
- package/package/components/raw_apps/RawAppInlineScriptRunnable.svelte +141 -10
- package/package/components/raw_apps/RawAppInlineScriptRunnable.svelte.d.ts +8 -0
- package/package/components/raw_apps/RawAppInlineScriptsPanel.svelte +2 -1
- package/package/components/raw_apps/RawAppInlineScriptsPanel.svelte.d.ts +9 -1
- package/package/components/raw_apps/RawAppInputsSpecEditor.svelte +47 -3
- package/package/components/raw_apps/RawAppInputsSpecEditor.svelte.d.ts +2 -2
- package/package/components/raw_apps/RawAppModules.svelte +13 -7
- package/package/components/raw_apps/RawAppPreview.svelte +48 -6
- package/package/components/raw_apps/RawAppSidebar.svelte +194 -125
- package/package/components/raw_apps/RawAppSidebar.svelte.d.ts +1 -0
- package/package/components/raw_apps/RunnableRow.svelte +41 -0
- package/package/components/raw_apps/RunnableRow.svelte.d.ts +11 -0
- package/package/components/raw_apps/datatableUtils.svelte.js +1 -1
- package/package/components/raw_apps/utils.d.ts +1 -1
- package/package/components/raw_apps/utils.js +76 -18
- package/package/components/runs/ManuelDatePicker.svelte +3 -3
- package/package/components/runs/ManuelDatePicker.svelte.d.ts +3 -3
- package/package/components/runs/NoWorkerWithTagWarning.svelte +5 -1
- package/package/components/runs/RunsFilter.svelte +75 -63
- package/package/components/runs/RunsFilter.svelte.d.ts +35 -4
- 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/runs/useJobsLoader.svelte.d.ts +34 -0
- package/package/components/runs/useJobsLoader.svelte.js +507 -0
- package/package/components/schema/EditableSchemaWrapper.svelte +2 -2
- package/package/components/scriptEditor/LogPanel.svelte +17 -2
- package/package/components/scriptEditor/LogPanel.svelte.d.ts +2 -0
- package/package/components/select/MultiSelect.svelte +1 -1
- package/package/components/select/SelectDropdown.svelte +17 -5
- package/package/components/settings/AIPromptsModal.svelte +88 -0
- package/package/components/settings/AIPromptsModal.svelte.d.ts +11 -0
- package/package/components/settings/ChangeWorkspaceColor.svelte +4 -3
- package/package/components/settings/ChangeWorkspaceId.svelte +16 -11
- package/package/components/settings/ChangeWorkspaceName.svelte +7 -6
- package/package/components/settings/CreateToken.svelte +4 -4
- package/package/components/settings/UserAIPromptsSettings.svelte +56 -15
- package/package/components/settings/WorkspaceOperatorSettings.svelte +68 -85
- package/package/components/settings/WorkspaceUserSettings.svelte +537 -411
- package/package/components/sidebar/MenuButton.svelte +54 -24
- package/package/components/sidebar/MenuButton.svelte.d.ts +2 -0
- package/package/components/sidebar/MultiplayerMenu.svelte +4 -4
- package/package/components/sidebar/OperatorMenu.svelte +63 -88
- package/package/components/sidebar/SidebarContent.svelte +39 -6
- package/package/components/sidebar/UserMenu.svelte +3 -3
- package/package/components/sidebar/WorkspaceMenu.svelte +35 -85
- package/package/components/sqlTypeService.js +4 -3
- package/package/components/table/DataTable.svelte +8 -3
- package/package/components/table/DataTable.svelte.d.ts +2 -0
- package/package/components/text_input/TextInput.svelte +3 -0
- package/package/components/text_input/TextInput.svelte.d.ts +2 -0
- package/package/components/triggers/AddTriggersButton.svelte +17 -4
- package/package/components/triggers/TriggersEditor.svelte +4 -0
- package/package/components/triggers/TriggersWrapper.svelte +14 -0
- package/package/components/triggers/native/NativeTriggerEditor.svelte +379 -0
- package/package/components/triggers/native/NativeTriggerEditor.svelte.d.ts +26 -0
- package/package/components/triggers/native/NativeTriggerTable.svelte +155 -0
- package/package/components/triggers/native/NativeTriggerTable.svelte.d.ts +16 -0
- package/package/components/triggers/native/NativeTriggersPanel.svelte +40 -0
- package/package/components/triggers/native/NativeTriggersPanel.svelte.d.ts +15 -0
- package/package/components/triggers/native/services/nextcloud/NextcloudTriggerForm.svelte +104 -0
- package/package/components/triggers/native/services/nextcloud/NextcloudTriggerForm.svelte.d.ts +18 -0
- package/package/components/triggers/native/utils.d.ts +74 -0
- package/package/components/triggers/native/utils.js +152 -0
- package/package/components/triggers/triggers.svelte.d.ts +2 -1
- package/package/components/triggers/triggers.svelte.js +36 -8
- package/package/components/triggers/utils.js +18 -6
- package/package/components/triggers.d.ts +1 -1
- package/package/components/tutorials/FlowBuilderLiveTutorial.svelte +6 -35
- package/package/components/tutorials/RunsTutorial.svelte +399 -0
- package/package/components/{schema/SchemaPicker.svelte.d.ts → tutorials/RunsTutorial.svelte.d.ts} +11 -12
- package/package/components/tutorials/TroubleshootFlowTutorial.svelte +5 -20
- package/package/components/tutorials/utils.d.ts +16 -0
- package/package/components/tutorials/utils.js +96 -0
- package/package/components/tutorials/workspace/WorkspaceOnboardingOperatorTutorial.svelte +133 -0
- package/package/components/{SavedInputs.svelte.d.ts → tutorials/workspace/WorkspaceOnboardingOperatorTutorial.svelte.d.ts} +8 -11
- package/package/components/vscode.js +6 -6
- package/package/components/workspace/WorkspaceCard.svelte +184 -0
- package/package/components/workspace/WorkspaceCard.svelte.d.ts +24 -0
- package/package/components/workspace/WorkspaceIcon.svelte +21 -0
- package/package/components/workspace/WorkspaceIcon.svelte.d.ts +9 -0
- package/package/components/workspace/WorkspaceTreeView.svelte +331 -0
- package/package/components/workspace/WorkspaceTreeView.svelte.d.ts +15 -0
- package/package/components/workspaceSettings/AISettings.svelte +147 -108
- package/package/components/workspaceSettings/CreateWorkspace.svelte +26 -12
- package/package/components/workspaceSettings/CustomInstanceDbSelect.svelte +1 -0
- package/package/components/workspaceSettings/CustomInstanceDbWizardModal.svelte +3 -1
- package/package/components/workspaceSettings/DataTableSettings.svelte +2 -1
- package/package/components/workspaceSettings/DucklakeSettings.svelte +54 -26
- package/package/components/workspaceSettings/DucklakeSettings.svelte.d.ts +2 -1
- package/package/components/workspaceSettings/ModelTokenLimits.svelte +14 -18
- package/package/components/workspaceSettings/OAuthClientConfig.svelte +180 -0
- package/package/components/workspaceSettings/OAuthClientConfig.svelte.d.ts +14 -0
- package/package/components/workspaceSettings/StorageSettings.svelte +285 -241
- package/package/components/workspaceSettings/StorageSettings.svelte.d.ts +1 -0
- package/package/components/workspaceSettings/WorkspaceIntegrations.svelte +302 -0
- package/package/components/workspaceSettings/WorkspaceIntegrations.svelte.d.ts +3 -0
- package/package/consts.js +4 -3
- package/package/gen/core/OpenAPI.js +1 -1
- package/package/gen/schemas.gen.d.ts +517 -4
- package/package/gen/schemas.gen.js +523 -4
- package/package/gen/services.gen.d.ts +359 -22
- package/package/gen/services.gen.js +702 -44
- package/package/gen/types.gen.d.ts +1501 -121
- package/package/hub.js +2 -2
- package/package/hubPaths.json +3 -2
- package/package/infer.js +2 -0
- package/package/logout.d.ts +0 -2
- package/package/logout.js +2 -23
- package/package/logoutKit.d.ts +2 -0
- package/package/logoutKit.js +26 -0
- package/package/monaco_workers/graphql.worker.bundle.js +121 -121
- package/package/navigation.d.ts +1 -1
- package/package/rawAppWmillTs.d.ts +11 -0
- package/package/rawAppWmillTs.js +38 -1
- package/package/refreshUser.d.ts +5 -1
- package/package/refreshUser.js +20 -30
- package/package/storeUtils.js +2 -0
- package/package/svelte5Utils.svelte.d.ts +68 -1
- package/package/svelte5Utils.svelte.js +193 -2
- package/package/svelte5UtilsKit.svelte.d.ts +3 -0
- package/package/svelte5UtilsKit.svelte.js +30 -0
- package/package/tutorialUtils.js +0 -4
- package/package/tutorials/config.js +31 -3
- package/package/tutorials/roleUtils.d.ts +1 -1
- package/package/tutorials/roleUtils.js +6 -2
- package/package/utils.js +162 -1
- package/package.json +1 -1
- package/package/components/SavedInputs.svelte +0 -416
- package/package/components/runs/JobsLoader.svelte +0 -468
- package/package/components/runs/JobsLoader.svelte.d.ts +0 -49
- package/package/components/schema/SchemaPicker.svelte +0 -92
|
@@ -3,7 +3,7 @@ import { goto } from '../../navigation';
|
|
|
3
3
|
import { base } from '../../base';
|
|
4
4
|
import { JobService, ResourceService, SettingService, UserService, VariableService, WorkspaceService } from '../../gen';
|
|
5
5
|
import { validateUsername } from '../../utils';
|
|
6
|
-
import { logoutWithRedirect } from '../../
|
|
6
|
+
import { logoutWithRedirect } from '../../logoutKit';
|
|
7
7
|
import { page } from '$app/stores';
|
|
8
8
|
import { usersWorkspaceStore, workspaceStore } from '../../stores';
|
|
9
9
|
import CenteredModal from '../CenteredModal.svelte';
|
|
@@ -169,7 +169,7 @@ async function createWorkspace() {
|
|
|
169
169
|
if (auto_invite) {
|
|
170
170
|
await WorkspaceService.editAutoInvite({
|
|
171
171
|
workspace: id,
|
|
172
|
-
requestBody: { operator: operatorOnly, invite_all: !isCloudHosted(), auto_add:
|
|
172
|
+
requestBody: { operator: operatorOnly, invite_all: !isCloudHosted(), auto_add: autoAdd }
|
|
173
173
|
});
|
|
174
174
|
}
|
|
175
175
|
if (aiKey != '') {
|
|
@@ -274,6 +274,7 @@ onMount(() => {
|
|
|
274
274
|
let isDomainAllowed = $state(undefined);
|
|
275
275
|
let auto_invite = $state(false);
|
|
276
276
|
let operatorOnly = $state(false);
|
|
277
|
+
let autoAdd = $state(true);
|
|
277
278
|
let selected = $state('openai');
|
|
278
279
|
run(() => {
|
|
279
280
|
id = name.toLowerCase().replace(/\s/gi, '-');
|
|
@@ -290,7 +291,7 @@ run(() => {
|
|
|
290
291
|
let domain = $derived($usersWorkspaceStore?.email.split('@')[1]);
|
|
291
292
|
</script>
|
|
292
293
|
|
|
293
|
-
<CenteredModal title="{isFork ? 'Forking' : 'New'} Workspace">
|
|
294
|
+
<CenteredModal title="{isFork ? 'Forking' : 'New'} Workspace" centerVertically={false}>
|
|
294
295
|
<div class="flex flex-col gap-8">
|
|
295
296
|
{#if isFork}
|
|
296
297
|
<div class="flex flex-block gap-2">
|
|
@@ -487,8 +488,8 @@ let domain = $derived($usersWorkspaceStore?.email.split('@')[1]);
|
|
|
487
488
|
<div class="flex flex-col gap-1">
|
|
488
489
|
<label for="auto-invite" class="text-xs font-semibold text-emphasis"
|
|
489
490
|
>{isCloudHosted()
|
|
490
|
-
? `Auto
|
|
491
|
-
: `Auto
|
|
491
|
+
? `Auto-${autoAdd ? 'add' : 'invite'} anyone from ${domain}`
|
|
492
|
+
: `Auto-${autoAdd ? 'add' : 'invite'} anyone joining the instance`}</label
|
|
492
493
|
>
|
|
493
494
|
<Toggle
|
|
494
495
|
id="auto-invite"
|
|
@@ -502,12 +503,25 @@ let domain = $derived($usersWorkspaceStore?.email.split('@')[1]);
|
|
|
502
503
|
{#if auto_invite}
|
|
503
504
|
<div class="bg-surface-tertiary p-4 rounded-md flex flex-col gap-8">
|
|
504
505
|
<!-- svelte-ignore a11y_label_has_associated_control -->
|
|
505
|
-
|
|
506
|
-
<
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
506
|
+
{#if isCloudHosted()}
|
|
507
|
+
<label class="flex flex-col gap-1">
|
|
508
|
+
<span class="text-xs font-semibold text-emphasis">Mode</span>
|
|
509
|
+
<span class="text-xs text-secondary font-normal"
|
|
510
|
+
>Whether to invite or add users directly to the workspace.</span
|
|
511
|
+
>
|
|
512
|
+
<ToggleButtonGroup
|
|
513
|
+
selected={autoAdd ? 'add' : 'invite'}
|
|
514
|
+
on:selected={async (e) => {
|
|
515
|
+
autoAdd = e.detail === 'add'
|
|
516
|
+
}}
|
|
517
|
+
>
|
|
518
|
+
{#snippet children({ item })}
|
|
519
|
+
<ToggleButton value="invite" label="Auto-invite" {item} />
|
|
520
|
+
<ToggleButton value="add" label="Auto-add" {item} />
|
|
521
|
+
{/snippet}
|
|
522
|
+
</ToggleButtonGroup>
|
|
523
|
+
</label>
|
|
524
|
+
{/if}
|
|
511
525
|
|
|
512
526
|
<label class="font-semibold flex flex-col gap-1">
|
|
513
527
|
<span class="text-xs font-semibold text-emphasis">Role</span>
|
|
@@ -528,7 +542,7 @@ let domain = $derived($usersWorkspaceStore?.email.split('@')[1]);
|
|
|
528
542
|
{/if}
|
|
529
543
|
</div>
|
|
530
544
|
{/if}
|
|
531
|
-
<div class="flex flex-wrap flex-row justify-between
|
|
545
|
+
<div class="flex flex-wrap flex-row justify-between gap-4 pt-4">
|
|
532
546
|
<Button
|
|
533
547
|
disabled={forkCreationLoading}
|
|
534
548
|
variant="default"
|
|
@@ -22,6 +22,7 @@ let currentIsAlreadyUsedElsewhere = $derived(tag && status && status.tag !== tag
|
|
|
22
22
|
placeholder="Search or create..."
|
|
23
23
|
showPlaceholderOnOpen
|
|
24
24
|
items={onlySelectedTags}
|
|
25
|
+
id="custom-instance-db-select"
|
|
25
26
|
disabled={!$isCustomInstanceDbEnabled}
|
|
26
27
|
>
|
|
27
28
|
{#snippet endSnippet({ item })}
|
|
@@ -109,7 +109,8 @@ let preventClose = false;
|
|
|
109
109
|
'GRANT CREATE ON SCHEMA public TO custom_instance_user;\n' +
|
|
110
110
|
`GRANT CREATE ON DATABASE "${dbname}" TO custom_instance_user;\n` +
|
|
111
111
|
'ALTER DEFAULT PRIVILEGES IN SCHEMA public \n' +
|
|
112
|
-
' GRANT SELECT, INSERT, UPDATE, DELETE ON TABLES\n TO custom_instance_user
|
|
112
|
+
' GRANT SELECT, INSERT, UPDATE, DELETE ON TABLES\n TO custom_instance_user;\n' +
|
|
113
|
+
'ALTER ROLE custom_instance_user CREATEROLE;'
|
|
113
114
|
}
|
|
114
115
|
],
|
|
115
116
|
status?.error ?? undefined
|
|
@@ -132,6 +133,7 @@ let preventClose = false;
|
|
|
132
133
|
{/if}
|
|
133
134
|
<Button
|
|
134
135
|
size="sm"
|
|
136
|
+
id="run-custom-instance-db-setup-button"
|
|
135
137
|
variant={!status?.success ? 'accent' : 'default'}
|
|
136
138
|
endIcon={status?.success ? undefined : { icon: ArrowRight }}
|
|
137
139
|
disabled={!$isCustomInstanceDbEnabled}
|
|
@@ -156,7 +156,7 @@ export function unsavedChanges() {
|
|
|
156
156
|
{#each tempSettings.dataTables as dataTable, dataTableIndex}
|
|
157
157
|
<Row>
|
|
158
158
|
<Cell first class="w-48 relative">
|
|
159
|
-
<TextInput bind:value={dataTable.name} inputProps={{ placeholder: 'Name' }} />
|
|
159
|
+
<TextInput bind:value={dataTable.name} inputProps={{ placeholder: 'Name', id: 'name' }} />
|
|
160
160
|
</Cell>
|
|
161
161
|
<Cell>
|
|
162
162
|
<div class="flex gap-2">
|
|
@@ -185,6 +185,7 @@ export function unsavedChanges() {
|
|
|
185
185
|
}
|
|
186
186
|
}
|
|
187
187
|
}
|
|
188
|
+
id="database-type-select"
|
|
188
189
|
class="w-28"
|
|
189
190
|
/>
|
|
190
191
|
</div>
|
|
@@ -22,7 +22,8 @@ export function convertDucklakeSettingsToBackend(settings) {
|
|
|
22
22
|
ducklake.storage.path = ducklake.storage.path.slice(1);
|
|
23
23
|
s.ducklakes[ducklake.name] = {
|
|
24
24
|
catalog: ducklake.catalog,
|
|
25
|
-
storage: ducklake.storage
|
|
25
|
+
storage: ducklake.storage,
|
|
26
|
+
extra_args: ducklake.extra_args || undefined
|
|
26
27
|
};
|
|
27
28
|
}
|
|
28
29
|
return s;
|
|
@@ -30,7 +31,7 @@ export function convertDucklakeSettingsToBackend(settings) {
|
|
|
30
31
|
</script>
|
|
31
32
|
|
|
32
33
|
<script>
|
|
33
|
-
import { Plus } from 'lucide-svelte'
|
|
34
|
+
import { Plus, SettingsIcon } from 'lucide-svelte'
|
|
34
35
|
|
|
35
36
|
import Button from '../common/button/Button.svelte'
|
|
36
37
|
|
|
@@ -43,7 +44,7 @@ export function convertDucklakeSettingsToBackend(settings) {
|
|
|
43
44
|
import ResourcePicker from '../ResourcePicker.svelte'
|
|
44
45
|
import { usePromise } from '../../svelte5Utils.svelte'
|
|
45
46
|
import { SettingService, WorkspaceService } from '../../gen'
|
|
46
|
-
import {
|
|
47
|
+
import type { GetSettingsResponse } from '../../gen'
|
|
47
48
|
|
|
48
49
|
import { workspaceStore } from '../../stores'
|
|
49
50
|
import { sendUserToast } from '../../toast'
|
|
@@ -61,6 +62,7 @@ export function convertDucklakeSettingsToBackend(settings) {
|
|
|
61
62
|
import { isCustomInstanceDbEnabled } from './utils.svelte'
|
|
62
63
|
import { resource } from 'runed'
|
|
63
64
|
import CustomInstanceDbSelect from './CustomInstanceDbSelect.svelte'
|
|
65
|
+
import Label from '../Label.svelte'
|
|
64
66
|
|
|
65
67
|
const DEFAULT_DUCKLAKE_CATALOG_NAME = 'ducklake_catalog'
|
|
66
68
|
|
|
@@ -179,7 +181,7 @@ export function convertDucklakeSettingsToBackend(settings) {
|
|
|
179
181
|
</div>
|
|
180
182
|
{/if}
|
|
181
183
|
|
|
182
|
-
<DataTable>
|
|
184
|
+
<DataTable containerClass="ducklake-settings-table">
|
|
183
185
|
<Head>
|
|
184
186
|
<tr>
|
|
185
187
|
{#each tableHeadNames as name, i}
|
|
@@ -212,7 +214,11 @@ export function convertDucklakeSettingsToBackend(settings) {
|
|
|
212
214
|
<code class="px-1 py-0.5 border rounded-md">ATTACH 'ducklake' AS dl;</code> shorthand
|
|
213
215
|
</Tooltip>
|
|
214
216
|
{/if}
|
|
215
|
-
<TextInput
|
|
217
|
+
<TextInput
|
|
218
|
+
bind:value={ducklake.name}
|
|
219
|
+
inputProps={{ placeholder: 'Name' }}
|
|
220
|
+
class="ducklake-name"
|
|
221
|
+
/>
|
|
216
222
|
</Cell>
|
|
217
223
|
<Cell>
|
|
218
224
|
<div class="flex gap-2">
|
|
@@ -286,39 +292,61 @@ export function convertDucklakeSettingsToBackend(settings) {
|
|
|
286
292
|
else delete ducklake.storage.storage
|
|
287
293
|
}
|
|
288
294
|
}
|
|
289
|
-
class="w-48"
|
|
295
|
+
class="ducklake-workspace-storage-select w-48"
|
|
290
296
|
inputClass="!placeholder-secondary"
|
|
291
297
|
/>
|
|
292
298
|
<TextInput
|
|
293
299
|
inputProps={{ placeholder: 'Data path (defaults to /)' }}
|
|
300
|
+
class="ducklake-storage-data-path"
|
|
294
301
|
bind:value={ducklake.storage.path}
|
|
295
302
|
/>
|
|
296
303
|
</div>
|
|
297
304
|
</Cell>
|
|
298
305
|
<Cell class="w-12">
|
|
299
|
-
|
|
300
|
-
<Popover
|
|
301
|
-
openOnHover
|
|
302
|
-
contentClasses="p-2 text-sm text-secondary italic"
|
|
303
|
-
class="cursor-not-allowed"
|
|
304
|
-
>
|
|
306
|
+
<div class="flex gap-2">
|
|
307
|
+
<Popover contentClasses="p-4" enableFlyTransition closeOnOtherPopoverOpen>
|
|
305
308
|
<svelte:fragment slot="trigger">
|
|
306
|
-
<
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
309
|
+
<div class="relative">
|
|
310
|
+
<Button variant="default" iconOnly size="sm" endIcon={{ icon: SettingsIcon }} />
|
|
311
|
+
{#if ducklake.extra_args}
|
|
312
|
+
<div
|
|
313
|
+
class="absolute -top-0.5 -right-0.5 w-2 h-2 bg-accent rounded-full border border-surface"
|
|
314
|
+
></div>
|
|
315
|
+
{/if}
|
|
316
|
+
</div>
|
|
317
|
+
</svelte:fragment>
|
|
318
|
+
<svelte:fragment slot="content">
|
|
319
|
+
<Label
|
|
320
|
+
label="Extra args"
|
|
321
|
+
tooltip="Additional arguments to pass in the ATTACH command. The argument list is substituted as-is. Separate them with commas."
|
|
322
|
+
>
|
|
323
|
+
<TextInput
|
|
324
|
+
bind:value={ducklake.extra_args}
|
|
325
|
+
class="min-w-96"
|
|
326
|
+
underlyingInputEl="textarea"
|
|
327
|
+
inputProps={{ placeholder: "METADATA_SCHEMA 'schema', ENCRYPTED true" }}
|
|
328
|
+
/>
|
|
329
|
+
</Label>
|
|
312
330
|
</svelte:fragment>
|
|
313
|
-
<svelte:fragment slot="content">Please save settings first</svelte:fragment>
|
|
314
331
|
</Popover>
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
332
|
+
{#if ducklakeIsDirty[ducklake.name]}
|
|
333
|
+
<Popover
|
|
334
|
+
openOnHover
|
|
335
|
+
contentClasses="p-2 text-sm text-secondary italic"
|
|
336
|
+
class="cursor-not-allowed"
|
|
337
|
+
>
|
|
338
|
+
<svelte:fragment slot="trigger">
|
|
339
|
+
<ExploreAssetButton asset={{ kind: 'ducklake', path: '' }} disabled />
|
|
340
|
+
</svelte:fragment>
|
|
341
|
+
<svelte:fragment slot="content">Please save settings first</svelte:fragment>
|
|
342
|
+
</Popover>
|
|
343
|
+
{:else}
|
|
344
|
+
<ExploreAssetButton
|
|
345
|
+
asset={{ kind: 'ducklake', path: ducklake.name }}
|
|
346
|
+
{dbManagerDrawer}
|
|
347
|
+
/>
|
|
348
|
+
{/if}
|
|
349
|
+
</div>
|
|
322
350
|
</Cell>
|
|
323
351
|
<Cell class="w-12">
|
|
324
352
|
<CloseButton small on:close={() => removeDucklake(ducklakeIndex)} />
|
|
@@ -9,11 +9,12 @@ export type DucklakeSettingsType = {
|
|
|
9
9
|
storage?: string;
|
|
10
10
|
path: string;
|
|
11
11
|
};
|
|
12
|
+
extra_args?: string;
|
|
12
13
|
}[];
|
|
13
14
|
};
|
|
14
15
|
export declare function convertDucklakeSettingsFromBackend(settings: GetSettingsResponse['ducklake']): DucklakeSettingsType;
|
|
15
16
|
export declare function convertDucklakeSettingsToBackend(settings: DucklakeSettingsType): NonNullable<GetSettingsResponse['ducklake']>;
|
|
16
|
-
import {
|
|
17
|
+
import type { GetSettingsResponse } from '../../gen';
|
|
17
18
|
type Props = {
|
|
18
19
|
ducklakeSettings: DucklakeSettingsType;
|
|
19
20
|
ducklakeSavedSettings: DucklakeSettingsType;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
<script lang="ts">import {
|
|
1
|
+
<script lang="ts">import { Badge, Button } from '../common';
|
|
2
|
+
import { getModelMaxTokens } from '../copilot/lib';
|
|
2
3
|
import { ChevronDown, ChevronUp } from 'lucide-svelte';
|
|
3
4
|
import { slide } from 'svelte/transition';
|
|
4
5
|
const MAX_TOKENS_LIMIT = 2000000;
|
|
@@ -70,9 +71,9 @@ $effect(() => {
|
|
|
70
71
|
</script>
|
|
71
72
|
|
|
72
73
|
{#if Object.keys(aiProviders).length > 0}
|
|
73
|
-
<div class="flex flex-col gap-
|
|
74
|
+
<div class="flex flex-col gap-2">
|
|
74
75
|
<div class="flex flex-col gap-1">
|
|
75
|
-
<p class="font-semibold">Model Output Limits</p>
|
|
76
|
+
<p class="font-semibold text-xs text-emphasis">Model Output Limits</p>
|
|
76
77
|
<p class="text-xs text-secondary">
|
|
77
78
|
Configure maximum token limits for each model. These limits apply to all AI chat
|
|
78
79
|
interactions in the workspace.
|
|
@@ -83,20 +84,16 @@ $effect(() => {
|
|
|
83
84
|
{#each Object.entries(modelsByProvider).filter(([provider, models]) => models.length > 0) as [provider, models]}
|
|
84
85
|
{@const isExpanded = !collapsedProviders[provider]}
|
|
85
86
|
{@const hasCustom = hasCustomSettings(provider, models)}
|
|
86
|
-
<div class="border
|
|
87
|
+
<div class="border rounded-md bg-surface-tertiary">
|
|
87
88
|
<button
|
|
88
89
|
type="button"
|
|
89
90
|
onclick={() => toggleProvider(provider)}
|
|
90
|
-
class="w-full px-4 py-
|
|
91
|
+
class="w-full px-4 py-1 min-h-8 flex items-center justify-between hover:bg-surface-hover transition-colors rounded-t-md"
|
|
91
92
|
>
|
|
92
93
|
<div class="flex items-center gap-2">
|
|
93
|
-
<h4 class="font-medium text-
|
|
94
|
+
<h4 class="font-medium text-xs capitalize">{provider}</h4>
|
|
94
95
|
{#if hasCustom}
|
|
95
|
-
<
|
|
96
|
-
class="text-xs px-2 py-0.5 bg-blue-100 dark:bg-blue-900 text-blue-700 dark:text-blue-300 rounded"
|
|
97
|
-
>
|
|
98
|
-
Modified
|
|
99
|
-
</span>
|
|
96
|
+
<Badge color="blue">Modified</Badge>
|
|
100
97
|
{/if}
|
|
101
98
|
</div>
|
|
102
99
|
{#if isExpanded}
|
|
@@ -107,7 +104,7 @@ $effect(() => {
|
|
|
107
104
|
</button>
|
|
108
105
|
|
|
109
106
|
{#if isExpanded}
|
|
110
|
-
<div transition:slide|local={{ duration: 200 }} class="p-
|
|
107
|
+
<div transition:slide|local={{ duration: 200 }} class="p-4 border-t">
|
|
111
108
|
<div class="space-y-3">
|
|
112
109
|
{#each models as { model }}
|
|
113
110
|
{@const currentTokens = getCurrentTokensForModel(provider as AIProvider, model)}
|
|
@@ -116,7 +113,7 @@ $effect(() => {
|
|
|
116
113
|
<div class="flex flex-col gap-1">
|
|
117
114
|
<div class="flex items-center gap-3">
|
|
118
115
|
<div class="flex-1 min-w-0">
|
|
119
|
-
<span class="text-
|
|
116
|
+
<span class="text-xs text-primary truncate block">{model}</span>
|
|
120
117
|
</div>
|
|
121
118
|
<div class="flex items-center gap-2">
|
|
122
119
|
<input
|
|
@@ -138,14 +135,13 @@ $effect(() => {
|
|
|
138
135
|
{#if !isAtDefault}
|
|
139
136
|
<div class="text-xs text-primary flex flex-row items-center gap-1">
|
|
140
137
|
<span>Default: {defaultTokens} tokens</span>
|
|
141
|
-
<
|
|
142
|
-
|
|
138
|
+
<Button
|
|
139
|
+
variant="default"
|
|
140
|
+
unifiedSize="xs"
|
|
143
141
|
onclick={() => resetModelToDefault(provider as AIProvider, model)}
|
|
144
|
-
class="text-xs text-blue-600 hover:text-blue-800 dark:text-blue-400 dark:hover:text-blue-300 whitespace-nowrap"
|
|
145
|
-
title="Reset to default ({defaultTokens})"
|
|
146
142
|
>
|
|
147
143
|
Reset
|
|
148
|
-
</
|
|
144
|
+
</Button>
|
|
149
145
|
</div>
|
|
150
146
|
{#if errors[getModelKey(provider as AIProvider, model)]}
|
|
151
147
|
<div class="text-xs text-red-500"
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
<script lang="ts">import { sendUserToast } from '../../utils';
|
|
2
|
+
import { Button, Alert } from '../common';
|
|
3
|
+
import Label from '../Label.svelte';
|
|
4
|
+
import { Save, ExternalLink } from 'lucide-svelte';
|
|
5
|
+
import { workspaceStore } from '../../stores';
|
|
6
|
+
let { serviceName, serviceDisplayName, existingConfig, onConfigSaved, redirectUri = $bindable('') } = $props();
|
|
7
|
+
let saving = $state(false);
|
|
8
|
+
let clientId = $state('');
|
|
9
|
+
let clientSecret = $state('');
|
|
10
|
+
let baseUrl = $state('');
|
|
11
|
+
let workspace = $workspaceStore;
|
|
12
|
+
redirectUri = `${window.location.origin}/workspace_settings?tab=native_triggers&service=${serviceName}&workspace=${workspace}`;
|
|
13
|
+
$effect(() => {
|
|
14
|
+
if (existingConfig) {
|
|
15
|
+
clientId = existingConfig.client_id;
|
|
16
|
+
clientSecret = existingConfig.client_secret;
|
|
17
|
+
baseUrl = existingConfig.base_url;
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
async function saveConfig() {
|
|
21
|
+
if (!clientId.trim() || !clientSecret.trim() || !baseUrl.trim()) {
|
|
22
|
+
sendUserToast('Please fill in all fields', true);
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
saving = true;
|
|
26
|
+
try {
|
|
27
|
+
const oauthData = {
|
|
28
|
+
client_id: clientId.trim(),
|
|
29
|
+
client_secret: clientSecret.trim(),
|
|
30
|
+
base_url: baseUrl.trim().replace(/\/+$/, ''),
|
|
31
|
+
redirect_uri: redirectUri.trim()
|
|
32
|
+
};
|
|
33
|
+
await onConfigSaved(oauthData);
|
|
34
|
+
resetForm();
|
|
35
|
+
}
|
|
36
|
+
catch (err) {
|
|
37
|
+
sendUserToast(`Failed to configure OAuth client: ${err.message}`, true);
|
|
38
|
+
}
|
|
39
|
+
finally {
|
|
40
|
+
saving = false;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
function resetForm() {
|
|
44
|
+
clientId = '';
|
|
45
|
+
clientSecret = '';
|
|
46
|
+
}
|
|
47
|
+
function copyToClipboard(text, label) {
|
|
48
|
+
navigator.clipboard
|
|
49
|
+
.writeText(text)
|
|
50
|
+
.then(() => {
|
|
51
|
+
sendUserToast(`${label} copied to clipboard`);
|
|
52
|
+
})
|
|
53
|
+
.catch(() => {
|
|
54
|
+
sendUserToast(`Failed to copy ${label}`, true);
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
</script>
|
|
58
|
+
|
|
59
|
+
<div class="space-y-4">
|
|
60
|
+
<div class="flex justify-between items-center">
|
|
61
|
+
<h4 class="text-md font-medium text-primary">{serviceDisplayName} OAuth Client Configuration</h4
|
|
62
|
+
>
|
|
63
|
+
</div>
|
|
64
|
+
|
|
65
|
+
{#if !existingConfig}
|
|
66
|
+
<Alert type="warning" title="OAuth client required">
|
|
67
|
+
<p class="text-sm mb-2">
|
|
68
|
+
Before you can connect to {serviceDisplayName}, you need to configure an OAuth client. This
|
|
69
|
+
requires:
|
|
70
|
+
</p>
|
|
71
|
+
<ol class="list-decimal list-inside space-y-1 text-sm">
|
|
72
|
+
<li
|
|
73
|
+
>Create an OAuth2 application in your {serviceDisplayName} instance (Administration settings
|
|
74
|
+
-> Security -> OAuth 2.0 clients)</li
|
|
75
|
+
>
|
|
76
|
+
<li
|
|
77
|
+
>Configure the redirect URI: <code
|
|
78
|
+
class="text-xs bg-gray-100 dark:bg-gray-800 px-1 rounded"
|
|
79
|
+
>{redirectUri ||
|
|
80
|
+
`${window.location.origin}/workspace_settings?tab=integrations&service=${serviceName}`}</code
|
|
81
|
+
></li
|
|
82
|
+
>
|
|
83
|
+
<li>Enter the client credentials below</li>
|
|
84
|
+
</ol>
|
|
85
|
+
</Alert>
|
|
86
|
+
{/if}
|
|
87
|
+
|
|
88
|
+
<div class="space-y-4">
|
|
89
|
+
<div class="space-y-4">
|
|
90
|
+
<div class="flex flex-col gap-1">
|
|
91
|
+
<Label label="Nextcloud base URL" />
|
|
92
|
+
<p class="text-xs font-normal text-secondary"
|
|
93
|
+
>The base URL of your Nextcloud instance (without trailing slash)</p
|
|
94
|
+
>
|
|
95
|
+
<input
|
|
96
|
+
type="url"
|
|
97
|
+
bind:value={baseUrl}
|
|
98
|
+
placeholder="https://your-nextcloud.example.com"
|
|
99
|
+
class="windmill-input"
|
|
100
|
+
disabled={saving}
|
|
101
|
+
/>
|
|
102
|
+
{#if baseUrl}
|
|
103
|
+
<Button
|
|
104
|
+
wrapperClasses="self-start"
|
|
105
|
+
href={`${baseUrl}/settings/admin/security`}
|
|
106
|
+
target="_blank"
|
|
107
|
+
startIcon={{ icon: ExternalLink }}
|
|
108
|
+
>
|
|
109
|
+
{serviceDisplayName} OAuth Settings
|
|
110
|
+
</Button>
|
|
111
|
+
{/if}
|
|
112
|
+
</div>
|
|
113
|
+
|
|
114
|
+
<div class="flex flex-col gap-1">
|
|
115
|
+
<Label label="Redirect URI" />
|
|
116
|
+
<p class="text-xs font-normal text-secondary"
|
|
117
|
+
>Use this URL when creating the OAuth app in {serviceDisplayName}</p
|
|
118
|
+
>
|
|
119
|
+
<div class="flex gap-2">
|
|
120
|
+
<input
|
|
121
|
+
type="url"
|
|
122
|
+
bind:value={redirectUri}
|
|
123
|
+
readonly
|
|
124
|
+
class="windmill-input flex-1 bg-gray-50 dark:bg-gray-900"
|
|
125
|
+
/>
|
|
126
|
+
<Button
|
|
127
|
+
size="xs"
|
|
128
|
+
color="light"
|
|
129
|
+
variant="border"
|
|
130
|
+
onclick={() => copyToClipboard(redirectUri, 'Redirect URI')}
|
|
131
|
+
>
|
|
132
|
+
Copy
|
|
133
|
+
</Button>
|
|
134
|
+
</div>
|
|
135
|
+
</div>
|
|
136
|
+
|
|
137
|
+
<div class="flex flex-col gap-1">
|
|
138
|
+
<Label label="Client ID" />
|
|
139
|
+
<input
|
|
140
|
+
type="text"
|
|
141
|
+
bind:value={clientId}
|
|
142
|
+
placeholder="Generated by Nextcloud OAuth app"
|
|
143
|
+
class="windmill-input"
|
|
144
|
+
disabled={saving}
|
|
145
|
+
/>
|
|
146
|
+
</div>
|
|
147
|
+
|
|
148
|
+
<div class="flex flex-col gap-1">
|
|
149
|
+
<Label label="Client secret" />
|
|
150
|
+
<input
|
|
151
|
+
type="password"
|
|
152
|
+
bind:value={clientSecret}
|
|
153
|
+
placeholder="Generated by Nextcloud OAuth app"
|
|
154
|
+
class="windmill-input"
|
|
155
|
+
disabled={saving}
|
|
156
|
+
/>
|
|
157
|
+
</div>
|
|
158
|
+
|
|
159
|
+
<div class="flex gap-2">
|
|
160
|
+
<Button
|
|
161
|
+
color="blue"
|
|
162
|
+
onclick={saveConfig}
|
|
163
|
+
disabled={saving || !clientId.trim() || !clientSecret.trim() || !baseUrl.trim()}
|
|
164
|
+
startIcon={{ icon: Save }}
|
|
165
|
+
>
|
|
166
|
+
{saving ? 'Saving...' : 'Save configuration'}
|
|
167
|
+
</Button>
|
|
168
|
+
</div>
|
|
169
|
+
</div>
|
|
170
|
+
</div>
|
|
171
|
+
|
|
172
|
+
{#if existingConfig}
|
|
173
|
+
<Alert type="success" title="OAuth client configured">
|
|
174
|
+
<p class="text-sm">
|
|
175
|
+
OAuth client is configured for {serviceDisplayName}. You can now connect this workspace to
|
|
176
|
+
your {serviceDisplayName} instance.
|
|
177
|
+
</p>
|
|
178
|
+
</Alert>
|
|
179
|
+
{/if}
|
|
180
|
+
</div>
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
interface Props {
|
|
2
|
+
serviceName: string;
|
|
3
|
+
serviceDisplayName: string;
|
|
4
|
+
existingConfig?: {
|
|
5
|
+
client_id: string;
|
|
6
|
+
client_secret: string;
|
|
7
|
+
base_url: string;
|
|
8
|
+
} | null;
|
|
9
|
+
redirectUri: string;
|
|
10
|
+
onConfigSaved: (oauthData: any) => Promise<void>;
|
|
11
|
+
}
|
|
12
|
+
declare const OAuthClientConfig: import("svelte").Component<Props, {}, "redirectUri">;
|
|
13
|
+
type OAuthClientConfig = ReturnType<typeof OAuthClientConfig>;
|
|
14
|
+
export default OAuthClientConfig;
|