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,263 +0,0 @@
|
|
|
1
|
-
<script lang="ts">import { ContextIconMap } from './context';
|
|
2
|
-
import { ArrowLeft, ChevronRight, FileCode, Code2, Table2 } from 'lucide-svelte';
|
|
3
|
-
const { availableContext, selectedContext, onSelect, setShowing, showAllAvailable = false, stringSearch = '', onViewChange } = $props();
|
|
4
|
-
// Current view state: 'categories' or specific category type
|
|
5
|
-
let currentView = $state('categories');
|
|
6
|
-
// Selected index for keyboard navigation
|
|
7
|
-
let itemSelectedIndex = $state(0);
|
|
8
|
-
let categorySelectedIndex = $state(0);
|
|
9
|
-
// Category definitions for app mode
|
|
10
|
-
const categories = [
|
|
11
|
-
{ id: 'files', label: 'Frontend Files', icon: FileCode },
|
|
12
|
-
{ id: 'runnables', label: 'Backend Runnables', icon: Code2 },
|
|
13
|
-
{ id: 'datatables', label: 'Datatables', icon: Table2 }
|
|
14
|
-
];
|
|
15
|
-
const filteredAvailableContext = $derived(availableContext.filter((context) => {
|
|
16
|
-
const filtered = (showAllAvailable ||
|
|
17
|
-
!selectedContext.some((sc) => sc.type === context.type && sc.title === context.title)) &&
|
|
18
|
-
(!stringSearch || context.title.toLowerCase().includes(stringSearch.toLowerCase()));
|
|
19
|
-
return filtered;
|
|
20
|
-
}));
|
|
21
|
-
// Group context by category
|
|
22
|
-
const contextByCategory = $derived.by(() => {
|
|
23
|
-
const grouped = {
|
|
24
|
-
files: [],
|
|
25
|
-
runnables: [],
|
|
26
|
-
datatables: []
|
|
27
|
-
};
|
|
28
|
-
filteredAvailableContext.forEach((context) => {
|
|
29
|
-
if (context.type === 'app_frontend_file')
|
|
30
|
-
grouped.files.push(context);
|
|
31
|
-
else if (context.type === 'app_backend_runnable')
|
|
32
|
-
grouped.runnables.push(context);
|
|
33
|
-
else if (context.type === 'app_datatable')
|
|
34
|
-
grouped.datatables.push(context);
|
|
35
|
-
});
|
|
36
|
-
return grouped;
|
|
37
|
-
});
|
|
38
|
-
const currentCategoryItems = $derived(currentView !== 'categories' ? contextByCategory[currentView] : []);
|
|
39
|
-
// Filter to only show categories with items
|
|
40
|
-
const availableCategories = $derived(categories.filter((cat) => contextByCategory[cat.id].length > 0));
|
|
41
|
-
// Report view changes
|
|
42
|
-
$effect(() => {
|
|
43
|
-
if (onViewChange) {
|
|
44
|
-
if (currentView === 'categories') {
|
|
45
|
-
onViewChange(availableCategories.length);
|
|
46
|
-
}
|
|
47
|
-
else {
|
|
48
|
-
onViewChange(currentCategoryItems.length + 1);
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
});
|
|
52
|
-
function handleCategoryClick(categoryId) {
|
|
53
|
-
currentView = categoryId;
|
|
54
|
-
itemSelectedIndex = 0;
|
|
55
|
-
}
|
|
56
|
-
function handleBackClick() {
|
|
57
|
-
currentView = 'categories';
|
|
58
|
-
itemSelectedIndex = 0;
|
|
59
|
-
}
|
|
60
|
-
function handleKeyDown(e) {
|
|
61
|
-
if (stringSearch.length > 0) {
|
|
62
|
-
// Navigation in search view (flat list)
|
|
63
|
-
if (e.key === 'ArrowDown') {
|
|
64
|
-
e.preventDefault();
|
|
65
|
-
e.stopPropagation();
|
|
66
|
-
if (filteredAvailableContext.length > 0) {
|
|
67
|
-
itemSelectedIndex = (itemSelectedIndex + 1) % filteredAvailableContext.length;
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
else if (e.key === 'ArrowUp') {
|
|
71
|
-
e.preventDefault();
|
|
72
|
-
e.stopPropagation();
|
|
73
|
-
if (filteredAvailableContext.length > 0) {
|
|
74
|
-
itemSelectedIndex =
|
|
75
|
-
(itemSelectedIndex - 1 + filteredAvailableContext.length) %
|
|
76
|
-
filteredAvailableContext.length;
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
else if (e.key === 'Enter' || e.key === 'Tab') {
|
|
80
|
-
if (e.key === 'Tab')
|
|
81
|
-
e.preventDefault();
|
|
82
|
-
e.stopPropagation();
|
|
83
|
-
const selectedItem = filteredAvailableContext[itemSelectedIndex];
|
|
84
|
-
if (selectedItem) {
|
|
85
|
-
onSelect(selectedItem);
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
else if (currentView === 'categories') {
|
|
90
|
-
// Navigation in categories view
|
|
91
|
-
if (e.key === 'ArrowDown') {
|
|
92
|
-
e.preventDefault();
|
|
93
|
-
e.stopPropagation();
|
|
94
|
-
categorySelectedIndex = (categorySelectedIndex + 1) % availableCategories.length;
|
|
95
|
-
}
|
|
96
|
-
else if (e.key === 'ArrowUp') {
|
|
97
|
-
e.preventDefault();
|
|
98
|
-
e.stopPropagation();
|
|
99
|
-
categorySelectedIndex =
|
|
100
|
-
(categorySelectedIndex - 1 + availableCategories.length) % availableCategories.length;
|
|
101
|
-
}
|
|
102
|
-
else if (e.key === 'Enter' || e.key === 'ArrowRight' || e.key === 'Tab') {
|
|
103
|
-
e.preventDefault();
|
|
104
|
-
e.stopPropagation();
|
|
105
|
-
const selectedCategory = availableCategories[categorySelectedIndex];
|
|
106
|
-
if (selectedCategory) {
|
|
107
|
-
handleCategoryClick(selectedCategory.id);
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
else if (e.key === 'Escape' || e.key === 'ArrowLeft') {
|
|
111
|
-
e.preventDefault();
|
|
112
|
-
e.stopPropagation();
|
|
113
|
-
setShowing?.(false);
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
else {
|
|
117
|
-
// Navigation in category items view
|
|
118
|
-
if (e.key === 'ArrowDown') {
|
|
119
|
-
e.preventDefault();
|
|
120
|
-
e.stopPropagation();
|
|
121
|
-
if (currentCategoryItems.length > 0) {
|
|
122
|
-
itemSelectedIndex = (itemSelectedIndex + 1) % currentCategoryItems.length;
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
else if (e.key === 'ArrowUp') {
|
|
126
|
-
e.preventDefault();
|
|
127
|
-
e.stopPropagation();
|
|
128
|
-
if (currentCategoryItems.length > 0) {
|
|
129
|
-
itemSelectedIndex =
|
|
130
|
-
(itemSelectedIndex - 1 + currentCategoryItems.length) % currentCategoryItems.length;
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
else if (e.key === 'Enter' || e.key === 'Tab') {
|
|
134
|
-
if (e.key === 'Tab')
|
|
135
|
-
e.preventDefault();
|
|
136
|
-
e.stopPropagation();
|
|
137
|
-
const selectedItem = currentCategoryItems[itemSelectedIndex];
|
|
138
|
-
if (selectedItem) {
|
|
139
|
-
onSelect(selectedItem);
|
|
140
|
-
currentView = 'categories'; // Go back to categories after selection
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
else if (e.key === 'ArrowLeft' || e.key === 'Escape') {
|
|
144
|
-
e.preventDefault();
|
|
145
|
-
e.stopPropagation();
|
|
146
|
-
handleBackClick();
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
// Listen for keyboard events
|
|
151
|
-
$effect(() => {
|
|
152
|
-
document.addEventListener('keydown', handleKeyDown);
|
|
153
|
-
return () => {
|
|
154
|
-
document.removeEventListener('keydown', handleKeyDown);
|
|
155
|
-
};
|
|
156
|
-
});
|
|
157
|
-
$effect(() => {
|
|
158
|
-
if (stringSearch.length > 0) {
|
|
159
|
-
itemSelectedIndex = 0;
|
|
160
|
-
}
|
|
161
|
-
});
|
|
162
|
-
function getDisplayTitle(element) {
|
|
163
|
-
if (element.type === 'app_frontend_file') {
|
|
164
|
-
return element.path;
|
|
165
|
-
}
|
|
166
|
-
else if (element.type === 'app_backend_runnable') {
|
|
167
|
-
return element.key;
|
|
168
|
-
}
|
|
169
|
-
else if (element.type === 'app_datatable') {
|
|
170
|
-
// Show as datatable/table or datatable/schema:table
|
|
171
|
-
return element.title;
|
|
172
|
-
}
|
|
173
|
-
return element.title;
|
|
174
|
-
}
|
|
175
|
-
</script>
|
|
176
|
-
|
|
177
|
-
<div
|
|
178
|
-
class="flex flex-col gap-1 text-primary text-xs p-1 pr-0 min-w-24 max-h-48 overflow-y-scroll"
|
|
179
|
-
onmousedown={(e) =>
|
|
180
|
-
// avoids triggering onblur on the textinput and closing the tooltip
|
|
181
|
-
e.preventDefault()}
|
|
182
|
-
role="listbox"
|
|
183
|
-
tabindex={0}
|
|
184
|
-
>
|
|
185
|
-
{#if stringSearch.length > 0}
|
|
186
|
-
<!-- Search view - show flat list -->
|
|
187
|
-
{#each filteredAvailableContext as element, i (element.type + '-' + element.title)}
|
|
188
|
-
{@const Icon = ContextIconMap[element.type]}
|
|
189
|
-
<button
|
|
190
|
-
class="hover:bg-surface-hover rounded-md p-1 text-left flex flex-row gap-1 items-center font-normal transition-colors {i ===
|
|
191
|
-
itemSelectedIndex
|
|
192
|
-
? 'bg-surface-hover'
|
|
193
|
-
: ''}"
|
|
194
|
-
onclick={() => {
|
|
195
|
-
onSelect(element)
|
|
196
|
-
}}
|
|
197
|
-
>
|
|
198
|
-
{#if Icon}
|
|
199
|
-
<Icon size={16} />
|
|
200
|
-
{/if}
|
|
201
|
-
<span class="truncate">
|
|
202
|
-
{getDisplayTitle(element)}
|
|
203
|
-
</span>
|
|
204
|
-
</button>
|
|
205
|
-
{/each}
|
|
206
|
-
{#if filteredAvailableContext.length === 0}
|
|
207
|
-
<div class="text-center text-primary text-xs py-2">No matching context</div>
|
|
208
|
-
{/if}
|
|
209
|
-
{:else if currentView === 'categories'}
|
|
210
|
-
<!-- Categories view -->
|
|
211
|
-
{#each availableCategories as category, i (category.id)}
|
|
212
|
-
{@const Icon = category.icon}
|
|
213
|
-
<button
|
|
214
|
-
class="hover:bg-surface-hover rounded-md p-1 pr-0 text-left flex flex-row gap-1 items-center font-normal transition-colors {i ===
|
|
215
|
-
categorySelectedIndex
|
|
216
|
-
? 'bg-surface-hover'
|
|
217
|
-
: ''}"
|
|
218
|
-
onclick={() => handleCategoryClick(category.id)}
|
|
219
|
-
>
|
|
220
|
-
<Icon size={16} />
|
|
221
|
-
<span class="flex-1">{category.label}</span>
|
|
222
|
-
<ChevronRight size={16} />
|
|
223
|
-
</button>
|
|
224
|
-
{/each}
|
|
225
|
-
{#if availableCategories.length === 0}
|
|
226
|
-
<div class="text-center text-primary text-xs py-2">No available context</div>
|
|
227
|
-
{/if}
|
|
228
|
-
{:else}
|
|
229
|
-
<!-- Category items view -->
|
|
230
|
-
<button
|
|
231
|
-
class="hover:bg-surface-hover rounded-md text-left flex flex-row gap-1 items-center font-normal transition-colors mb-1"
|
|
232
|
-
onclick={handleBackClick}
|
|
233
|
-
>
|
|
234
|
-
<ArrowLeft size={12} />
|
|
235
|
-
<span class="text-xs">Go back</span>
|
|
236
|
-
</button>
|
|
237
|
-
|
|
238
|
-
{#if currentCategoryItems.length === 0}
|
|
239
|
-
<div class="text-center text-primary text-xs py-2">No items in this category</div>
|
|
240
|
-
{:else}
|
|
241
|
-
{#each currentCategoryItems as element, i (element.type + '-' + element.title)}
|
|
242
|
-
{@const Icon = ContextIconMap[element.type]}
|
|
243
|
-
<button
|
|
244
|
-
class="hover:bg-surface-hover rounded-md p-1 text-left flex flex-row gap-1 items-center font-normal transition-colors {i ===
|
|
245
|
-
itemSelectedIndex
|
|
246
|
-
? 'bg-surface-hover'
|
|
247
|
-
: ''}"
|
|
248
|
-
onclick={() => {
|
|
249
|
-
onSelect(element)
|
|
250
|
-
currentView = 'categories' // Go back to categories after selection
|
|
251
|
-
}}
|
|
252
|
-
>
|
|
253
|
-
{#if Icon}
|
|
254
|
-
<Icon size={16} />
|
|
255
|
-
{/if}
|
|
256
|
-
<span class="truncate">
|
|
257
|
-
{getDisplayTitle(element)}
|
|
258
|
-
</span>
|
|
259
|
-
</button>
|
|
260
|
-
{/each}
|
|
261
|
-
{/if}
|
|
262
|
-
{/if}
|
|
263
|
-
</div>
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { type ContextElement } from './context';
|
|
2
|
-
interface Props {
|
|
3
|
-
availableContext: ContextElement[];
|
|
4
|
-
selectedContext: ContextElement[];
|
|
5
|
-
onSelect: (element: ContextElement) => void;
|
|
6
|
-
setShowing?: (showing: boolean) => void;
|
|
7
|
-
showAllAvailable?: boolean;
|
|
8
|
-
stringSearch?: string;
|
|
9
|
-
onViewChange?: (newNumber: number) => void;
|
|
10
|
-
}
|
|
11
|
-
declare const AppAvailableContextList: import("svelte").Component<Props, {}, "">;
|
|
12
|
-
type AppAvailableContextList = ReturnType<typeof AppAvailableContextList>;
|
|
13
|
-
export default AppAvailableContextList;
|
|
@@ -1,277 +0,0 @@
|
|
|
1
|
-
<script lang="ts">import { X, AlertCircle, Trash2 } from 'lucide-svelte';
|
|
2
|
-
let { client, currentFrameId, onClose, workspace, jobId } = $props();
|
|
3
|
-
let inputValue = $state('');
|
|
4
|
-
let history = $state([]);
|
|
5
|
-
let commandHistory = $state([]);
|
|
6
|
-
let historyIndex = $state(-1);
|
|
7
|
-
let isEvaluating = $state(false);
|
|
8
|
-
let nextId = $state(1);
|
|
9
|
-
let consoleRef = $state(null);
|
|
10
|
-
let inputRef = $state(null);
|
|
11
|
-
/**
|
|
12
|
-
* Sign an expression for audit logging before evaluation.
|
|
13
|
-
* Returns the JWT token if signing succeeds, or undefined if signing is not available.
|
|
14
|
-
*/
|
|
15
|
-
async function signExpression(expression) {
|
|
16
|
-
if (!workspace || !jobId) {
|
|
17
|
-
// If workspace or jobId not provided, skip signing (for backwards compatibility)
|
|
18
|
-
return undefined;
|
|
19
|
-
}
|
|
20
|
-
try {
|
|
21
|
-
const response = await fetch(`/api/w/${workspace}/debug/sign_expression`, {
|
|
22
|
-
method: 'POST',
|
|
23
|
-
headers: { 'Content-Type': 'application/json' },
|
|
24
|
-
body: JSON.stringify({ expression, job_id: jobId })
|
|
25
|
-
});
|
|
26
|
-
if (!response.ok) {
|
|
27
|
-
console.warn('Failed to sign expression:', await response.text());
|
|
28
|
-
// Don't block evaluation if signing fails - just log it
|
|
29
|
-
return undefined;
|
|
30
|
-
}
|
|
31
|
-
const result = await response.json();
|
|
32
|
-
return result.token;
|
|
33
|
-
}
|
|
34
|
-
catch (error) {
|
|
35
|
-
console.warn('Failed to sign expression:', error);
|
|
36
|
-
// Don't block evaluation if signing fails - just log it
|
|
37
|
-
return undefined;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
// Focus input - only when explicitly requested (not on every click)
|
|
41
|
-
function focusInput() {
|
|
42
|
-
// Use requestAnimationFrame to ensure DOM is ready
|
|
43
|
-
requestAnimationFrame(() => {
|
|
44
|
-
inputRef?.focus();
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
// Handle click on container - only focus if clicking on empty background areas
|
|
48
|
-
function handleContainerClick(e) {
|
|
49
|
-
// Don't focus if user has selected text
|
|
50
|
-
const selection = window.getSelection();
|
|
51
|
-
if (selection && selection.toString().length > 0) {
|
|
52
|
-
return;
|
|
53
|
-
}
|
|
54
|
-
// Only focus if clicking directly on container divs, not on text content
|
|
55
|
-
const target = e.target;
|
|
56
|
-
// Skip if clicking on interactive elements
|
|
57
|
-
if (target.tagName === 'BUTTON' || target.tagName === 'INPUT' || target.closest('button')) {
|
|
58
|
-
return;
|
|
59
|
-
}
|
|
60
|
-
// Skip if clicking on text content (span elements with output)
|
|
61
|
-
if (target.tagName === 'SPAN' && target.textContent && target.textContent.trim().length > 0) {
|
|
62
|
-
return;
|
|
63
|
-
}
|
|
64
|
-
focusInput();
|
|
65
|
-
}
|
|
66
|
-
async function evaluate() {
|
|
67
|
-
const expression = inputValue.trim();
|
|
68
|
-
if (!expression || !client || isEvaluating)
|
|
69
|
-
return;
|
|
70
|
-
// Add to command history
|
|
71
|
-
if (commandHistory[commandHistory.length - 1] !== expression) {
|
|
72
|
-
commandHistory = [...commandHistory, expression];
|
|
73
|
-
}
|
|
74
|
-
historyIndex = -1;
|
|
75
|
-
// Add input entry
|
|
76
|
-
history = [
|
|
77
|
-
...history,
|
|
78
|
-
{
|
|
79
|
-
id: nextId++,
|
|
80
|
-
type: 'input',
|
|
81
|
-
content: expression,
|
|
82
|
-
timestamp: new Date()
|
|
83
|
-
}
|
|
84
|
-
];
|
|
85
|
-
inputValue = '';
|
|
86
|
-
isEvaluating = true;
|
|
87
|
-
try {
|
|
88
|
-
// Sign the expression for audit logging (if workspace and jobId are available)
|
|
89
|
-
const token = await signExpression(expression);
|
|
90
|
-
// Evaluate with the signed token
|
|
91
|
-
const result = await client.evaluate(expression, currentFrameId, 'repl', token);
|
|
92
|
-
history = [
|
|
93
|
-
...history,
|
|
94
|
-
{
|
|
95
|
-
id: nextId++,
|
|
96
|
-
type: 'output',
|
|
97
|
-
content: result.result ?? 'undefined',
|
|
98
|
-
timestamp: new Date()
|
|
99
|
-
}
|
|
100
|
-
];
|
|
101
|
-
}
|
|
102
|
-
catch (error) {
|
|
103
|
-
history = [
|
|
104
|
-
...history,
|
|
105
|
-
{
|
|
106
|
-
id: nextId++,
|
|
107
|
-
type: 'error',
|
|
108
|
-
content: error instanceof Error ? error.message : String(error),
|
|
109
|
-
timestamp: new Date()
|
|
110
|
-
}
|
|
111
|
-
];
|
|
112
|
-
}
|
|
113
|
-
finally {
|
|
114
|
-
isEvaluating = false;
|
|
115
|
-
// Scroll to bottom and refocus
|
|
116
|
-
setTimeout(() => {
|
|
117
|
-
if (consoleRef) {
|
|
118
|
-
consoleRef.scrollTop = consoleRef.scrollHeight;
|
|
119
|
-
}
|
|
120
|
-
focusInput();
|
|
121
|
-
}, 0);
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
function handleKeydown(event) {
|
|
125
|
-
if (event.key === 'Enter' && !event.shiftKey) {
|
|
126
|
-
event.preventDefault();
|
|
127
|
-
evaluate();
|
|
128
|
-
}
|
|
129
|
-
else if (event.key === 'ArrowUp') {
|
|
130
|
-
event.preventDefault();
|
|
131
|
-
if (commandHistory.length > 0) {
|
|
132
|
-
if (historyIndex === -1) {
|
|
133
|
-
historyIndex = commandHistory.length - 1;
|
|
134
|
-
}
|
|
135
|
-
else if (historyIndex > 0) {
|
|
136
|
-
historyIndex--;
|
|
137
|
-
}
|
|
138
|
-
inputValue = commandHistory[historyIndex];
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
else if (event.key === 'ArrowDown') {
|
|
142
|
-
event.preventDefault();
|
|
143
|
-
if (historyIndex !== -1) {
|
|
144
|
-
if (historyIndex < commandHistory.length - 1) {
|
|
145
|
-
historyIndex++;
|
|
146
|
-
inputValue = commandHistory[historyIndex];
|
|
147
|
-
}
|
|
148
|
-
else {
|
|
149
|
-
historyIndex = -1;
|
|
150
|
-
inputValue = '';
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
else if (event.key === 'l' && event.ctrlKey) {
|
|
155
|
-
event.preventDefault();
|
|
156
|
-
clearConsole();
|
|
157
|
-
}
|
|
158
|
-
else if (event.key === 'Escape') {
|
|
159
|
-
event.preventDefault();
|
|
160
|
-
onClose?.();
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
function clearConsole() {
|
|
164
|
-
history = [];
|
|
165
|
-
focusInput();
|
|
166
|
-
}
|
|
167
|
-
// Format value for display (Chrome-like)
|
|
168
|
-
function formatValue(content, type) {
|
|
169
|
-
if (type === 'error')
|
|
170
|
-
return content;
|
|
171
|
-
// Try to detect type for coloring
|
|
172
|
-
if (content === 'undefined' || content === 'null')
|
|
173
|
-
return content;
|
|
174
|
-
if (content === 'true' || content === 'false')
|
|
175
|
-
return content;
|
|
176
|
-
if (/^-?\d+(\.\d+)?$/.test(content))
|
|
177
|
-
return content;
|
|
178
|
-
if (content.startsWith('"') && content.endsWith('"'))
|
|
179
|
-
return content;
|
|
180
|
-
return content;
|
|
181
|
-
}
|
|
182
|
-
function getValueClass(content, type) {
|
|
183
|
-
if (type === 'error')
|
|
184
|
-
return 'text-red-500';
|
|
185
|
-
if (content === 'undefined' || content === 'null')
|
|
186
|
-
return 'text-gray-500';
|
|
187
|
-
if (content === 'true' || content === 'false')
|
|
188
|
-
return 'text-blue-600 dark:text-blue-400';
|
|
189
|
-
if (/^-?\d+(\.\d+)?$/.test(content))
|
|
190
|
-
return 'text-blue-600 dark:text-blue-400';
|
|
191
|
-
if (content.startsWith('"') && content.endsWith('"'))
|
|
192
|
-
return 'text-red-600 dark:text-red-400';
|
|
193
|
-
if (content.startsWith('{') || content.startsWith('['))
|
|
194
|
-
return 'text-primary';
|
|
195
|
-
return 'text-primary';
|
|
196
|
-
}
|
|
197
|
-
</script>
|
|
198
|
-
|
|
199
|
-
<!-- svelte-ignore a11y_click_events_have_key_events -->
|
|
200
|
-
<!-- svelte-ignore a11y_no_static_element_interactions -->
|
|
201
|
-
<div
|
|
202
|
-
class="flex flex-col h-full bg-[#242424] text-[#d4d4d4] font-mono text-xs select-text"
|
|
203
|
-
onclick={handleContainerClick}
|
|
204
|
-
>
|
|
205
|
-
<!-- Header -->
|
|
206
|
-
<div class="flex items-center justify-between px-2 py-1 bg-[#1e1e1e] border-b border-[#3c3c3c]">
|
|
207
|
-
<span class="text-[11px] text-[#969696]">Console</span>
|
|
208
|
-
<div class="flex items-center gap-1">
|
|
209
|
-
<button
|
|
210
|
-
class="p-0.5 hover:bg-[#3c3c3c] rounded text-[#969696] hover:text-[#d4d4d4]"
|
|
211
|
-
onclick={(e) => { e.stopPropagation(); clearConsole(); }}
|
|
212
|
-
title="Clear console (Ctrl+L)"
|
|
213
|
-
>
|
|
214
|
-
<Trash2 size={12} />
|
|
215
|
-
</button>
|
|
216
|
-
{#if onClose}
|
|
217
|
-
<button
|
|
218
|
-
class="p-0.5 hover:bg-[#3c3c3c] rounded text-[#969696] hover:text-[#d4d4d4]"
|
|
219
|
-
onclick={(e) => { e.stopPropagation(); onClose?.(); }}
|
|
220
|
-
title="Close console (Esc)"
|
|
221
|
-
>
|
|
222
|
-
<X size={14} />
|
|
223
|
-
</button>
|
|
224
|
-
{/if}
|
|
225
|
-
</div>
|
|
226
|
-
</div>
|
|
227
|
-
|
|
228
|
-
<!-- Console output -->
|
|
229
|
-
<div
|
|
230
|
-
bind:this={consoleRef}
|
|
231
|
-
class="flex-1 overflow-auto min-h-0"
|
|
232
|
-
>
|
|
233
|
-
{#if history.length === 0}
|
|
234
|
-
<div class="px-3 py-2 text-[#969696] text-[11px]">
|
|
235
|
-
Evaluate expressions in the current scope. Use ↑↓ for history.
|
|
236
|
-
</div>
|
|
237
|
-
{/if}
|
|
238
|
-
{#each history as entry (entry.id)}
|
|
239
|
-
<div
|
|
240
|
-
class="flex items-start px-2 py-0.5 border-b border-[#3c3c3c]/50 hover:bg-[#2a2a2a]"
|
|
241
|
-
class:bg-[#332222]={entry.type === 'error'}
|
|
242
|
-
>
|
|
243
|
-
{#if entry.type === 'input'}
|
|
244
|
-
<span class="text-[#569cd6] mr-2 select-none">></span>
|
|
245
|
-
<span class="text-[#ce9178] break-all whitespace-pre-wrap">{entry.content}</span>
|
|
246
|
-
{:else if entry.type === 'output'}
|
|
247
|
-
<span class="text-[#569cd6] mr-2 select-none opacity-0">></span>
|
|
248
|
-
<span class="{getValueClass(entry.content, 'output')} break-all whitespace-pre-wrap">{formatValue(entry.content, 'output')}</span>
|
|
249
|
-
{:else}
|
|
250
|
-
<AlertCircle size={12} class="text-red-500 mr-2 mt-0.5 flex-shrink-0" />
|
|
251
|
-
<span class="text-red-400 break-all whitespace-pre-wrap">{entry.content}</span>
|
|
252
|
-
{/if}
|
|
253
|
-
</div>
|
|
254
|
-
{/each}
|
|
255
|
-
</div>
|
|
256
|
-
|
|
257
|
-
<!-- Input line -->
|
|
258
|
-
<div class="flex items-center px-2 py-1 border-t border-[#3c3c3c] bg-[#1e1e1e]">
|
|
259
|
-
<span class="text-[#569cd6] mr-2 select-none">></span>
|
|
260
|
-
<input
|
|
261
|
-
bind:this={inputRef}
|
|
262
|
-
type="text"
|
|
263
|
-
bind:value={inputValue}
|
|
264
|
-
onkeydown={handleKeydown}
|
|
265
|
-
placeholder={client ? '' : 'Waiting for debugger...'}
|
|
266
|
-
disabled={!client}
|
|
267
|
-
class="flex-1 bg-transparent text-[#d4d4d4] placeholder-[#6e6e6e] focus:outline-none disabled:opacity-50"
|
|
268
|
-
autocomplete="off"
|
|
269
|
-
autocorrect="off"
|
|
270
|
-
autocapitalize="off"
|
|
271
|
-
spellcheck="false"
|
|
272
|
-
/>
|
|
273
|
-
{#if isEvaluating}
|
|
274
|
-
<div class="w-3 h-3 border border-[#569cd6] border-t-transparent rounded-full animate-spin ml-2"></div>
|
|
275
|
-
{/if}
|
|
276
|
-
</div>
|
|
277
|
-
</div>
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { DAPClient } from './dapClient';
|
|
2
|
-
interface Props {
|
|
3
|
-
client: DAPClient | null;
|
|
4
|
-
currentFrameId?: number;
|
|
5
|
-
onClose?: () => void;
|
|
6
|
-
/** Workspace ID for signing expressions (audit logging) */
|
|
7
|
-
workspace?: string;
|
|
8
|
-
/** Job ID of the parent debug session (for expression signing) */
|
|
9
|
-
jobId?: string;
|
|
10
|
-
}
|
|
11
|
-
declare const DebugConsole: import("svelte").Component<Props, {}, "">;
|
|
12
|
-
type DebugConsole = ReturnType<typeof DebugConsole>;
|
|
13
|
-
export default DebugConsole;
|
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
<script lang="ts">import { Search, Layers, Variable } from 'lucide-svelte';
|
|
2
|
-
import DebugVariableViewer from './DebugVariableViewer.svelte';
|
|
3
|
-
let { stackFrames, scopes, variables, client, selectedFrameId = $bindable(null) } = $props();
|
|
4
|
-
let searchQuery = $state('');
|
|
5
|
-
// Auto-expand scopes when they become available
|
|
6
|
-
$effect(() => {
|
|
7
|
-
console.log('[DebugPanel] effect running, scopes:', scopes, 'variables:', variables);
|
|
8
|
-
for (const scope of scopes) {
|
|
9
|
-
console.log('[DebugPanel] checking scope:', scope.name, 'ref:', scope.variablesReference, 'has:', variables.has(scope.variablesReference));
|
|
10
|
-
if (!variables.has(scope.variablesReference) && client) {
|
|
11
|
-
console.log('[DebugPanel] fetching variables for scope:', scope.name);
|
|
12
|
-
client.getVariables(scope.variablesReference);
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
});
|
|
16
|
-
async function selectFrame(frame) {
|
|
17
|
-
selectedFrameId = frame.id;
|
|
18
|
-
if (client) {
|
|
19
|
-
await client.getScopes(frame.id);
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
// Get all variables from all scopes, filtered by search query
|
|
23
|
-
const filteredVariables = $derived.by(() => {
|
|
24
|
-
const allVars = [];
|
|
25
|
-
for (const scope of scopes) {
|
|
26
|
-
const scopeVars = variables.get(scope.variablesReference) || [];
|
|
27
|
-
for (const v of scopeVars) {
|
|
28
|
-
if (!searchQuery || v.name.toLowerCase().includes(searchQuery.toLowerCase())) {
|
|
29
|
-
allVars.push({ scope: scope.name, variable: v });
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
return allVars;
|
|
34
|
-
});
|
|
35
|
-
</script>
|
|
36
|
-
|
|
37
|
-
<div class="flex h-full bg-surface border-t border-surface-secondary">
|
|
38
|
-
<!-- Variables Panel -->
|
|
39
|
-
<div class="flex-1 flex flex-col border-r border-surface-secondary min-w-0">
|
|
40
|
-
<div
|
|
41
|
-
class="flex items-center gap-1 px-2 py-1 border-b border-surface-secondary bg-surface-secondary"
|
|
42
|
-
>
|
|
43
|
-
<Variable size={12} class="text-secondary" />
|
|
44
|
-
<span class="text-xs font-medium text-secondary">Variables</span>
|
|
45
|
-
</div>
|
|
46
|
-
<div class="px-1.5 py-1 border-b border-surface-secondary">
|
|
47
|
-
<div
|
|
48
|
-
class="flex items-center gap-1.5 px-1.5 py-0.5 bg-surface border border-surface-secondary rounded focus-within:border-blue-500"
|
|
49
|
-
>
|
|
50
|
-
<Search size={12} class="text-tertiary flex-shrink-0" />
|
|
51
|
-
<input
|
|
52
|
-
type="text"
|
|
53
|
-
placeholder="Filter..."
|
|
54
|
-
bind:value={searchQuery}
|
|
55
|
-
class="flex-1 text-xs bg-transparent focus:outline-none min-w-0"
|
|
56
|
-
/>
|
|
57
|
-
</div>
|
|
58
|
-
</div>
|
|
59
|
-
<div class="flex-1 overflow-auto p-1">
|
|
60
|
-
{#if scopes.length === 0}
|
|
61
|
-
<div class="text-xs text-tertiary italic px-1">No variables</div>
|
|
62
|
-
{:else if filteredVariables.length === 0}
|
|
63
|
-
<div class="text-xs text-tertiary italic px-1">No matches</div>
|
|
64
|
-
{:else}
|
|
65
|
-
{#each filteredVariables as { scope, variable } (scope + variable.name)}
|
|
66
|
-
<DebugVariableViewer {variable} {client} />
|
|
67
|
-
{/each}
|
|
68
|
-
{/if}
|
|
69
|
-
</div>
|
|
70
|
-
</div>
|
|
71
|
-
|
|
72
|
-
<!-- Call Stack Panel -->
|
|
73
|
-
<div class="w-40 flex flex-col min-w-0">
|
|
74
|
-
<div
|
|
75
|
-
class="flex items-center gap-1 px-2 py-1 border-b border-surface-secondary bg-surface-secondary"
|
|
76
|
-
>
|
|
77
|
-
<Layers size={12} class="text-secondary" />
|
|
78
|
-
<span class="text-xs font-medium text-secondary">Call Stack</span>
|
|
79
|
-
</div>
|
|
80
|
-
<div class="flex-1 overflow-auto p-1">
|
|
81
|
-
{#if stackFrames.length === 0}
|
|
82
|
-
<div class="text-xs text-tertiary italic px-1">No call stack</div>
|
|
83
|
-
{:else}
|
|
84
|
-
{#each stackFrames as frame (frame.id)}
|
|
85
|
-
<button
|
|
86
|
-
class="w-full text-left px-1 py-0.5 text-xs hover:bg-surface-hover rounded flex items-center gap-1 font-mono"
|
|
87
|
-
class:bg-surface-selected={selectedFrameId === frame.id}
|
|
88
|
-
onclick={() => selectFrame(frame)}
|
|
89
|
-
>
|
|
90
|
-
<span class="text-primary font-medium truncate">{frame.name}</span>
|
|
91
|
-
<span class="text-tertiary text-[10px] whitespace-nowrap">:{frame.line}</span>
|
|
92
|
-
</button>
|
|
93
|
-
{/each}
|
|
94
|
-
{/if}
|
|
95
|
-
</div>
|
|
96
|
-
</div>
|
|
97
|
-
</div>
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { StackFrame, Scope, Variable as VariableType, DAPClient } from './dapClient';
|
|
2
|
-
interface Props {
|
|
3
|
-
stackFrames: StackFrame[];
|
|
4
|
-
scopes: Scope[];
|
|
5
|
-
variables: Map<number, VariableType[]>;
|
|
6
|
-
client: DAPClient | null;
|
|
7
|
-
selectedFrameId?: number | null;
|
|
8
|
-
}
|
|
9
|
-
declare const DebugPanel: import("svelte").Component<Props, {}, "selectedFrameId">;
|
|
10
|
-
type DebugPanel = ReturnType<typeof DebugPanel>;
|
|
11
|
-
export default DebugPanel;
|