@agent-native/core 0.47.1 → 0.48.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/bin/agent-native.js +41 -0
- package/dist/a2a/handlers.js +2 -2
- package/dist/a2a/handlers.js.map +1 -1
- package/dist/a2a/server.js +2 -2
- package/dist/a2a/server.js.map +1 -1
- package/dist/action.d.ts +43 -2
- package/dist/action.d.ts.map +1 -1
- package/dist/action.js.map +1 -1
- package/dist/agent/context-xray/actions/context-evict.d.ts +7 -1
- package/dist/agent/context-xray/actions/context-evict.d.ts.map +1 -1
- package/dist/agent/context-xray/actions/context-manifest-get.d.ts +4 -1
- package/dist/agent/context-xray/actions/context-manifest-get.d.ts.map +1 -1
- package/dist/agent/context-xray/actions/context-pin.d.ts +7 -1
- package/dist/agent/context-xray/actions/context-pin.d.ts.map +1 -1
- package/dist/agent/context-xray/actions/context-report.d.ts +12 -1
- package/dist/agent/context-xray/actions/context-report.d.ts.map +1 -1
- package/dist/agent/context-xray/actions/context-restore.d.ts +7 -1
- package/dist/agent/context-xray/actions/context-restore.d.ts.map +1 -1
- package/dist/agent/context-xray/apply-directives.d.ts.map +1 -1
- package/dist/agent/context-xray/apply-directives.js.map +1 -1
- package/dist/agent/context-xray/schema.d.ts +10 -10
- package/dist/agent/engine/ai-sdk-engine.d.ts.map +1 -1
- package/dist/agent/engine/ai-sdk-engine.js +26 -3
- package/dist/agent/engine/ai-sdk-engine.js.map +1 -1
- package/dist/agent/engine/anthropic-engine.d.ts +1 -1
- package/dist/agent/engine/anthropic-engine.d.ts.map +1 -1
- package/dist/agent/engine/builder-engine.d.ts +1 -1
- package/dist/agent/engine/builder-engine.d.ts.map +1 -1
- package/dist/agent/engine/builder-engine.js +47 -8
- package/dist/agent/engine/builder-engine.js.map +1 -1
- package/dist/agent/engine/builtin.js +1 -1
- package/dist/agent/engine/builtin.js.map +1 -1
- package/dist/agent/engine/output-tokens.d.ts +1 -1
- package/dist/agent/engine/output-tokens.d.ts.map +1 -1
- package/dist/agent/engine/output-tokens.js +6 -2
- package/dist/agent/engine/output-tokens.js.map +1 -1
- package/dist/agent/engine/registry.d.ts.map +1 -1
- package/dist/agent/engine/registry.js +7 -4
- package/dist/agent/engine/registry.js.map +1 -1
- package/dist/agent/engine/types.d.ts +19 -0
- package/dist/agent/engine/types.d.ts.map +1 -1
- package/dist/agent/engine/types.js +6 -0
- package/dist/agent/engine/types.js.map +1 -1
- package/dist/agent/model-config.d.ts +22 -14
- package/dist/agent/model-config.d.ts.map +1 -1
- package/dist/agent/model-config.js +113 -8
- package/dist/agent/model-config.js.map +1 -1
- package/dist/agent/production-agent.d.ts +19 -1
- package/dist/agent/production-agent.d.ts.map +1 -1
- package/dist/agent/production-agent.js +253 -39
- package/dist/agent/production-agent.js.map +1 -1
- package/dist/agent/run-loop-with-resume.d.ts.map +1 -1
- package/dist/agent/run-loop-with-resume.js +10 -0
- package/dist/agent/run-loop-with-resume.js.map +1 -1
- package/dist/agent/run-manager.d.ts +1 -0
- package/dist/agent/run-manager.d.ts.map +1 -1
- package/dist/agent/run-manager.js +36 -9
- package/dist/agent/run-manager.js.map +1 -1
- package/dist/agent/run-store.d.ts +47 -4
- package/dist/agent/run-store.d.ts.map +1 -1
- package/dist/agent/run-store.js +154 -4
- package/dist/agent/run-store.js.map +1 -1
- package/dist/agent/thread-data-builder.d.ts.map +1 -1
- package/dist/agent/thread-data-builder.js +57 -2
- package/dist/agent/thread-data-builder.js.map +1 -1
- package/dist/agent/types.d.ts +3 -0
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/agent/types.js.map +1 -1
- package/dist/agent-web/generator.d.ts +3 -3
- package/dist/appearance/actions/change-appearance.d.ts +6 -1
- package/dist/appearance/actions/change-appearance.d.ts.map +1 -1
- package/dist/application-state/handlers.d.ts +2 -2
- package/dist/application-state/handlers.d.ts.map +1 -1
- package/dist/application-state/store.d.ts.map +1 -1
- package/dist/application-state/store.js +17 -0
- package/dist/application-state/store.js.map +1 -1
- package/dist/catalog.json +2 -1
- package/dist/cli/code-agent-commands.d.ts.map +1 -1
- package/dist/cli/code-agent-commands.js +2 -0
- package/dist/cli/code-agent-commands.js.map +1 -1
- package/dist/cli/code-agent-connector.js +7 -13
- package/dist/cli/code-agent-connector.js.map +1 -1
- package/dist/cli/code-agent-executor.d.ts +54 -2
- package/dist/cli/code-agent-executor.d.ts.map +1 -1
- package/dist/cli/code-agent-executor.js +504 -48
- package/dist/cli/code-agent-executor.js.map +1 -1
- package/dist/cli/code-agent-runs.d.ts +13 -0
- package/dist/cli/code-agent-runs.d.ts.map +1 -1
- package/dist/cli/code-agent-runs.js +36 -0
- package/dist/cli/code-agent-runs.js.map +1 -1
- package/dist/cli/code.js +59 -5
- package/dist/cli/code.js.map +1 -1
- package/dist/cli/connect.js +141 -3
- package/dist/cli/connect.js.map +1 -1
- package/dist/cli/index.js +0 -0
- package/dist/cli/pr-visual-recap-workflow.js +1 -1
- package/dist/cli/pr-visual-recap-workflow.js.map +1 -1
- package/dist/cli/recap.js +476 -46
- package/dist/cli/recap.js.map +1 -1
- package/dist/cli/skills.js +298 -179
- package/dist/cli/skills.js.map +1 -1
- package/dist/client/AgentPanel.d.ts.map +1 -1
- package/dist/client/AgentPanel.js +29 -2
- package/dist/client/AgentPanel.js.map +1 -1
- package/dist/client/AgentTaskCard.d.ts.map +1 -1
- package/dist/client/AgentTaskCard.js +17 -2
- package/dist/client/AgentTaskCard.js.map +1 -1
- package/dist/client/AssistantChat.d.ts +1 -1
- package/dist/client/AssistantChat.d.ts.map +1 -1
- package/dist/client/AssistantChat.js +310 -1732
- package/dist/client/AssistantChat.js.map +1 -1
- package/dist/client/CommandMenu.d.ts +1 -1
- package/dist/client/CommandMenu.d.ts.map +1 -1
- package/dist/client/CommandMenu.js +1 -1
- package/dist/client/CommandMenu.js.map +1 -1
- package/dist/client/HighlightedCodeBlock.d.ts +40 -0
- package/dist/client/HighlightedCodeBlock.d.ts.map +1 -0
- package/dist/client/HighlightedCodeBlock.js +110 -0
- package/dist/client/HighlightedCodeBlock.js.map +1 -0
- package/dist/client/MultiTabAssistantChat.d.ts.map +1 -1
- package/dist/client/MultiTabAssistantChat.js +8 -1
- package/dist/client/MultiTabAssistantChat.js.map +1 -1
- package/dist/client/PoweredByBadge.d.ts +2 -2
- package/dist/client/PoweredByBadge.d.ts.map +1 -1
- package/dist/client/RunStuckBanner.d.ts +1 -1
- package/dist/client/RunStuckBanner.d.ts.map +1 -1
- package/dist/client/StarfieldBackground.d.ts.map +1 -1
- package/dist/client/StarfieldBackground.js +10 -5
- package/dist/client/StarfieldBackground.js.map +1 -1
- package/dist/client/Turnstile.d.ts +1 -1
- package/dist/client/Turnstile.d.ts.map +1 -1
- package/dist/client/agent-chat-adapter.d.ts +3 -2
- package/dist/client/agent-chat-adapter.d.ts.map +1 -1
- package/dist/client/agent-chat-adapter.js +13 -9
- package/dist/client/agent-chat-adapter.js.map +1 -1
- package/dist/client/app-providers.d.ts +99 -0
- package/dist/client/app-providers.d.ts.map +1 -0
- package/dist/client/app-providers.js +19 -0
- package/dist/client/app-providers.js.map +1 -0
- package/dist/client/assistant-ui-recovery.d.ts +1 -1
- package/dist/client/auth-redirect-url.d.ts +1 -1
- package/dist/client/auth-redirect-url.d.ts.map +1 -1
- package/dist/client/blocks/library/AnnotatedCodeBlock.d.ts +0 -19
- package/dist/client/blocks/library/AnnotatedCodeBlock.d.ts.map +1 -1
- package/dist/client/blocks/library/AnnotatedCodeBlock.js +141 -55
- package/dist/client/blocks/library/AnnotatedCodeBlock.js.map +1 -1
- package/dist/client/blocks/library/DiffBlock.js +1 -1
- package/dist/client/blocks/library/DiffBlock.js.map +1 -1
- package/dist/client/blocks/library/FileTreeBlock.d.ts.map +1 -1
- package/dist/client/blocks/library/FileTreeBlock.js +1 -1
- package/dist/client/blocks/library/FileTreeBlock.js.map +1 -1
- package/dist/client/blocks/library/HighlightedCode.d.ts.map +1 -1
- package/dist/client/blocks/library/HighlightedCode.js +5 -3
- package/dist/client/blocks/library/HighlightedCode.js.map +1 -1
- package/dist/client/blocks/library/annotation-rail.d.ts +5 -4
- package/dist/client/blocks/library/annotation-rail.d.ts.map +1 -1
- package/dist/client/blocks/library/annotation-rail.js +22 -3
- package/dist/client/blocks/library/annotation-rail.js.map +1 -1
- package/dist/client/blocks/library/diagram.js +1 -1
- package/dist/client/blocks/library/diagram.js.map +1 -1
- package/dist/client/blocks/library/diff.config.d.ts +3 -2
- package/dist/client/blocks/library/diff.config.d.ts.map +1 -1
- package/dist/client/blocks/library/diff.config.js +4 -3
- package/dist/client/blocks/library/diff.config.js.map +1 -1
- package/dist/client/blocks/library/question-form.d.ts.map +1 -1
- package/dist/client/blocks/library/question-form.js +2 -1
- package/dist/client/blocks/library/question-form.js.map +1 -1
- package/dist/client/blocks/library/wireframe-kit.d.ts +1 -1
- package/dist/client/blocks/library/wireframe-kit.d.ts.map +1 -1
- package/dist/client/blocks/library/wireframe.js +1 -1
- package/dist/client/blocks/library/wireframe.js.map +1 -1
- package/dist/client/chat/attachment-adapters.d.ts +58 -0
- package/dist/client/chat/attachment-adapters.d.ts.map +1 -0
- package/dist/client/chat/attachment-adapters.js +331 -0
- package/dist/client/chat/attachment-adapters.js.map +1 -0
- package/dist/client/chat/index.d.ts +13 -0
- package/dist/client/chat/index.d.ts.map +1 -0
- package/dist/client/chat/index.js +13 -0
- package/dist/client/chat/index.js.map +1 -0
- package/dist/client/chat/markdown-renderer.d.ts +49 -0
- package/dist/client/chat/markdown-renderer.d.ts.map +1 -0
- package/dist/client/chat/markdown-renderer.js +391 -0
- package/dist/client/chat/markdown-renderer.js.map +1 -0
- package/dist/client/chat/message-components.d.ts +35 -0
- package/dist/client/chat/message-components.d.ts.map +1 -0
- package/dist/client/chat/message-components.js +452 -0
- package/dist/client/chat/message-components.js.map +1 -0
- package/dist/client/chat/repo-helpers.d.ts +41 -0
- package/dist/client/chat/repo-helpers.d.ts.map +1 -0
- package/dist/client/chat/repo-helpers.js +61 -0
- package/dist/client/chat/repo-helpers.js.map +1 -0
- package/dist/client/chat/run-recovery.d.ts +41 -0
- package/dist/client/chat/run-recovery.d.ts.map +1 -0
- package/dist/client/chat/run-recovery.js +348 -0
- package/dist/client/chat/run-recovery.js.map +1 -0
- package/dist/client/chat/tool-call-display.d.ts +34 -0
- package/dist/client/chat/tool-call-display.d.ts.map +1 -0
- package/dist/client/chat/tool-call-display.js +284 -0
- package/dist/client/chat/tool-call-display.js.map +1 -0
- package/dist/client/code-agent-chat-adapter.d.ts.map +1 -1
- package/dist/client/code-agent-chat-adapter.js +20 -0
- package/dist/client/code-agent-chat-adapter.js.map +1 -1
- package/dist/client/collab/index.d.ts +10 -0
- package/dist/client/collab/index.d.ts.map +1 -0
- package/dist/client/collab/index.js +10 -0
- package/dist/client/collab/index.js.map +1 -0
- package/dist/client/components/AgentPresenceChip.d.ts +1 -1
- package/dist/client/components/AgentPresenceChip.d.ts.map +1 -1
- package/dist/client/components/ApiKeySettings.d.ts +1 -1
- package/dist/client/components/ApiKeySettings.d.ts.map +1 -1
- package/dist/client/components/CodeAgentIndicator.d.ts +1 -1
- package/dist/client/components/CodeAgentIndicator.d.ts.map +1 -1
- package/dist/client/components/CodeRequiredDialog.d.ts +1 -1
- package/dist/client/components/CodeRequiredDialog.d.ts.map +1 -1
- package/dist/client/components/LiveCursorOverlay.d.ts.map +1 -1
- package/dist/client/components/LiveCursorOverlay.js.map +1 -1
- package/dist/client/components/PresenceBar.d.ts +1 -1
- package/dist/client/components/PresenceBar.d.ts.map +1 -1
- package/dist/client/composer/PromptComposer.d.ts.map +1 -1
- package/dist/client/composer/PromptComposer.js +6 -26
- package/dist/client/composer/PromptComposer.js.map +1 -1
- package/dist/client/composer/TiptapComposer.d.ts +8 -2
- package/dist/client/composer/TiptapComposer.d.ts.map +1 -1
- package/dist/client/composer/TiptapComposer.js +21 -9
- package/dist/client/composer/TiptapComposer.js.map +1 -1
- package/dist/client/composer/VoiceButton.d.ts +2 -2
- package/dist/client/composer/VoiceButton.d.ts.map +1 -1
- package/dist/client/composer/index.d.ts +1 -1
- package/dist/client/composer/index.d.ts.map +1 -1
- package/dist/client/composer/index.js +1 -1
- package/dist/client/composer/index.js.map +1 -1
- package/dist/client/composer/use-skills.d.ts +1 -1
- package/dist/client/context-xray/ContextMeter.d.ts +1 -1
- package/dist/client/context-xray/ContextMeter.d.ts.map +1 -1
- package/dist/client/context-xray/ContextMeter.js +3 -3
- package/dist/client/context-xray/ContextMeter.js.map +1 -1
- package/dist/client/context-xray/ContextXRayPanel.d.ts.map +1 -1
- package/dist/client/context-xray/ContextXRayPanel.js +4 -3
- package/dist/client/context-xray/ContextXRayPanel.js.map +1 -1
- package/dist/client/context-xray/format.d.ts +11 -0
- package/dist/client/context-xray/format.d.ts.map +1 -1
- package/dist/client/context-xray/format.js +16 -0
- package/dist/client/context-xray/format.js.map +1 -1
- package/dist/client/conversation/AgentConversation.d.ts.map +1 -1
- package/dist/client/conversation/AgentConversation.js +8 -53
- package/dist/client/conversation/AgentConversation.js.map +1 -1
- package/dist/client/conversation/use-near-bottom-autoscroll.d.ts +1 -1
- package/dist/client/conversation/use-near-bottom-autoscroll.d.ts.map +1 -1
- package/dist/client/conversation/use-near-bottom-autoscroll.js +14 -1
- package/dist/client/conversation/use-near-bottom-autoscroll.js.map +1 -1
- package/dist/client/create-query-client.d.ts +28 -0
- package/dist/client/create-query-client.d.ts.map +1 -0
- package/dist/client/create-query-client.js +78 -0
- package/dist/client/create-query-client.js.map +1 -0
- package/dist/client/db-admin/DevDatabaseLink.d.ts +1 -1
- package/dist/client/db-admin/DevDatabaseLink.d.ts.map +1 -1
- package/dist/client/db-admin/RowSidePanel.d.ts +1 -1
- package/dist/client/db-admin/RowSidePanel.d.ts.map +1 -1
- package/dist/client/db-admin/RowSidePanel.js +2 -2
- package/dist/client/db-admin/RowSidePanel.js.map +1 -1
- package/dist/client/db-admin/TableEditor.d.ts +1 -1
- package/dist/client/db-admin/TableEditor.d.ts.map +1 -1
- package/dist/client/db-admin/TableEditor.js +1 -1
- package/dist/client/db-admin/TableEditor.js.map +1 -1
- package/dist/client/db-admin/cell-format.d.ts +1 -1
- package/dist/client/db-admin/cell-format.d.ts.map +1 -1
- package/dist/client/dev-overlay/DevOverlay.d.ts +1 -1
- package/dist/client/dev-overlay/DevOverlay.d.ts.map +1 -1
- package/dist/client/editor/index.d.ts +2 -0
- package/dist/client/editor/index.d.ts.map +1 -0
- package/dist/client/editor/index.js +2 -0
- package/dist/client/editor/index.js.map +1 -0
- package/dist/client/error-format.d.ts.map +1 -1
- package/dist/client/error-format.js +4 -0
- package/dist/client/error-format.js.map +1 -1
- package/dist/client/extensions/AgentNativeExtensionFrame.d.ts +1 -1
- package/dist/client/extensions/AgentNativeExtensionFrame.d.ts.map +1 -1
- package/dist/client/extensions/EmbeddedExtension.d.ts +1 -1
- package/dist/client/extensions/EmbeddedExtension.d.ts.map +1 -1
- package/dist/client/extensions/ExtensionSlot.d.ts +1 -1
- package/dist/client/extensions/ExtensionSlot.d.ts.map +1 -1
- package/dist/client/extensions/ExtensionViewerPage.d.ts +1 -1
- package/dist/client/extensions/ExtensionViewerPage.d.ts.map +1 -1
- package/dist/client/guided-questions.d.ts +6 -6
- package/dist/client/host-bridge.d.ts.map +1 -1
- package/dist/client/host-bridge.js +2 -0
- package/dist/client/host-bridge.js.map +1 -1
- package/dist/client/index.d.ts +7 -6
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +5 -3
- package/dist/client/index.js.map +1 -1
- package/dist/client/onboarding/OnboardingBanner.d.ts +1 -1
- package/dist/client/onboarding/OnboardingBanner.d.ts.map +1 -1
- package/dist/client/onboarding/OnboardingPanel.d.ts +1 -1
- package/dist/client/onboarding/OnboardingPanel.d.ts.map +1 -1
- package/dist/client/onboarding/SetupButton.d.ts +1 -1
- package/dist/client/onboarding/SetupButton.d.ts.map +1 -1
- package/dist/client/org/InvitationBanner.d.ts +1 -1
- package/dist/client/org/InvitationBanner.d.ts.map +1 -1
- package/dist/client/org/OrgSwitcher.d.ts +1 -1
- package/dist/client/org/OrgSwitcher.d.ts.map +1 -1
- package/dist/client/org/RequireActiveOrg.d.ts +1 -1
- package/dist/client/org/RequireActiveOrg.d.ts.map +1 -1
- package/dist/client/org/hooks.d.ts +3 -3
- package/dist/client/org/hooks.d.ts.map +1 -1
- package/dist/client/progress/RunsTray.d.ts +2 -2
- package/dist/client/progress/RunsTray.d.ts.map +1 -1
- package/dist/client/progress/RunsTray.js +34 -9
- package/dist/client/progress/RunsTray.js.map +1 -1
- package/dist/client/resources/ResourceEditor.d.ts.map +1 -1
- package/dist/client/resources/ResourceEditor.js +1 -1
- package/dist/client/resources/ResourceEditor.js.map +1 -1
- package/dist/client/resources/ResourcesPanel.d.ts.map +1 -1
- package/dist/client/resources/ResourcesPanel.js +2 -0
- package/dist/client/resources/ResourcesPanel.js.map +1 -1
- package/dist/client/rich-markdown-editor/BubbleToolbar.d.ts +1 -1
- package/dist/client/rich-markdown-editor/BubbleToolbar.d.ts.map +1 -1
- package/dist/client/rich-markdown-editor/CodeBlockNode.d.ts.map +1 -1
- package/dist/client/rich-markdown-editor/CodeBlockNode.js +2 -1
- package/dist/client/rich-markdown-editor/CodeBlockNode.js.map +1 -1
- package/dist/client/rich-markdown-editor/ImageExtension.d.ts.map +1 -1
- package/dist/client/rich-markdown-editor/ImageExtension.js +2 -1
- package/dist/client/rich-markdown-editor/ImageExtension.js.map +1 -1
- package/dist/client/rich-markdown-editor/RegistryBlockNode.d.ts +1 -1
- package/dist/client/rich-markdown-editor/RegistryBlockNode.d.ts.map +1 -1
- package/dist/client/rich-markdown-editor/RegistryBlockNode.js +1 -1
- package/dist/client/rich-markdown-editor/RegistryBlockNode.js.map +1 -1
- package/dist/client/rich-markdown-editor/RichMarkdownEditor.d.ts +1 -1
- package/dist/client/rich-markdown-editor/SharedRichEditor.d.ts.map +1 -1
- package/dist/client/rich-markdown-editor/SharedRichEditor.js +2 -3
- package/dist/client/rich-markdown-editor/SharedRichEditor.js.map +1 -1
- package/dist/client/rich-markdown-editor/SlashCommandMenu.d.ts +1 -1
- package/dist/client/rich-markdown-editor/SlashCommandMenu.d.ts.map +1 -1
- package/dist/client/route-state.d.ts +12 -2
- package/dist/client/route-state.d.ts.map +1 -1
- package/dist/client/route-state.js +1 -1
- package/dist/client/route-state.js.map +1 -1
- package/dist/client/route-warmup.d.ts +1 -1
- package/dist/client/route-warmup.d.ts.map +1 -1
- package/dist/client/settings/VoiceTranscriptionSection.js +1 -1
- package/dist/client/settings/VoiceTranscriptionSection.js.map +1 -1
- package/dist/client/settings/useBuilderStatus.d.ts +2 -2
- package/dist/client/sharing/ShareDialog.d.ts +1 -1
- package/dist/client/sharing/ShareDialog.d.ts.map +1 -1
- package/dist/client/sse-event-processor.d.ts +8 -0
- package/dist/client/sse-event-processor.d.ts.map +1 -1
- package/dist/client/sse-event-processor.js +33 -10
- package/dist/client/sse-event-processor.js.map +1 -1
- package/dist/client/terminal/AgentTerminal.d.ts +1 -1
- package/dist/client/terminal/AgentTerminal.d.ts.map +1 -1
- package/dist/client/terminal/AgentTerminal.js +4 -2
- package/dist/client/terminal/AgentTerminal.js.map +1 -1
- package/dist/client/tool-cells/BashCell.d.ts +25 -0
- package/dist/client/tool-cells/BashCell.d.ts.map +1 -0
- package/dist/client/tool-cells/BashCell.js +49 -0
- package/dist/client/tool-cells/BashCell.js.map +1 -0
- package/dist/client/tool-cells/EditCell.d.ts +24 -0
- package/dist/client/tool-cells/EditCell.d.ts.map +1 -0
- package/dist/client/tool-cells/EditCell.js +126 -0
- package/dist/client/tool-cells/EditCell.js.map +1 -0
- package/dist/client/tool-cells/FilesChangedSummary.d.ts +13 -0
- package/dist/client/tool-cells/FilesChangedSummary.d.ts.map +1 -0
- package/dist/client/tool-cells/FilesChangedSummary.js +98 -0
- package/dist/client/tool-cells/FilesChangedSummary.js.map +1 -0
- package/dist/client/tool-cells/WriteCell.d.ts +17 -0
- package/dist/client/tool-cells/WriteCell.d.ts.map +1 -0
- package/dist/client/tool-cells/WriteCell.js +26 -0
- package/dist/client/tool-cells/WriteCell.js.map +1 -0
- package/dist/client/tool-cells/index.d.ts +8 -0
- package/dist/client/tool-cells/index.d.ts.map +1 -0
- package/dist/client/tool-cells/index.js +5 -0
- package/dist/client/tool-cells/index.js.map +1 -0
- package/dist/client/transcription/BuilderTranscriptionCta.d.ts +1 -1
- package/dist/client/transcription/BuilderTranscriptionCta.d.ts.map +1 -1
- package/dist/client/use-chat-threads.d.ts +1 -1
- package/dist/client/use-chat-threads.d.ts.map +1 -1
- package/dist/client/use-chat-threads.js +11 -8
- package/dist/client/use-chat-threads.js.map +1 -1
- package/dist/client/use-db-sync.d.ts +2 -0
- package/dist/client/use-db-sync.d.ts.map +1 -1
- package/dist/client/use-db-sync.js +329 -302
- package/dist/client/use-db-sync.js.map +1 -1
- package/dist/code-agents/transcript-normalizer.d.ts +15 -1
- package/dist/code-agents/transcript-normalizer.d.ts.map +1 -1
- package/dist/code-agents/transcript-normalizer.js +47 -0
- package/dist/code-agents/transcript-normalizer.js.map +1 -1
- package/dist/coding-tools/index.d.ts +75 -0
- package/dist/coding-tools/index.d.ts.map +1 -1
- package/dist/coding-tools/index.js +137 -10
- package/dist/coding-tools/index.js.map +1 -1
- package/dist/collab/client.d.ts +1 -1
- package/dist/collab/client.js +20 -14
- package/dist/collab/client.js.map +1 -1
- package/dist/collab/ydoc-manager.d.ts +1 -1
- package/dist/collab/ydoc-manager.d.ts.map +1 -1
- package/dist/collab/ydoc-manager.js +1 -1
- package/dist/collab/ydoc-manager.js.map +1 -1
- package/dist/db/client.d.ts +9 -1
- package/dist/db/client.d.ts.map +1 -1
- package/dist/db/client.js +204 -48
- package/dist/db/client.js.map +1 -1
- package/dist/db/create-get-db.d.ts +38 -0
- package/dist/db/create-get-db.d.ts.map +1 -1
- package/dist/db/create-get-db.js +204 -4
- package/dist/db/create-get-db.js.map +1 -1
- package/dist/db/migrations.d.ts.map +1 -1
- package/dist/db/migrations.js +159 -67
- package/dist/db/migrations.js.map +1 -1
- package/dist/demo/actions/toggle-demo-mode.d.ts +6 -1
- package/dist/demo/actions/toggle-demo-mode.d.ts.map +1 -1
- package/dist/deploy/build.d.ts.map +1 -1
- package/dist/deploy/build.js +80 -39
- package/dist/deploy/build.js.map +1 -1
- package/dist/deploy/workspace-deploy.js +20 -10
- package/dist/deploy/workspace-deploy.js.map +1 -1
- package/dist/extensions/schema.d.ts +51 -51
- package/dist/extensions/slots/schema.d.ts +13 -13
- package/dist/file-upload/actions/upload-image.d.ts +26 -1
- package/dist/file-upload/actions/upload-image.d.ts.map +1 -1
- package/dist/file-upload/index.d.ts +1 -1
- package/dist/file-upload/index.d.ts.map +1 -1
- package/dist/file-upload/index.js +1 -1
- package/dist/file-upload/index.js.map +1 -1
- package/dist/file-upload/pre-upload-attachments.d.ts +37 -0
- package/dist/file-upload/pre-upload-attachments.d.ts.map +1 -1
- package/dist/file-upload/pre-upload-attachments.js +79 -19
- package/dist/file-upload/pre-upload-attachments.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/integrations/adapters/slack.js +1 -1
- package/dist/integrations/adapters/slack.js.map +1 -1
- package/dist/integrations/plugin.js +1 -1
- package/dist/integrations/plugin.js.map +1 -1
- package/dist/jobs/scheduler.js +70 -21
- package/dist/jobs/scheduler.js.map +1 -1
- package/dist/mcp/actions/create-org-service-token.d.ts +14 -0
- package/dist/mcp/actions/create-org-service-token.d.ts.map +1 -0
- package/dist/mcp/actions/create-org-service-token.js +74 -0
- package/dist/mcp/actions/create-org-service-token.js.map +1 -0
- package/dist/mcp/actions/list-org-service-tokens.d.ts +17 -0
- package/dist/mcp/actions/list-org-service-tokens.d.ts.map +1 -0
- package/dist/mcp/actions/list-org-service-tokens.js +42 -0
- package/dist/mcp/actions/list-org-service-tokens.js.map +1 -0
- package/dist/mcp/actions/revoke-org-service-token.d.ts +7 -0
- package/dist/mcp/actions/revoke-org-service-token.d.ts.map +1 -0
- package/dist/mcp/actions/revoke-org-service-token.js +28 -0
- package/dist/mcp/actions/revoke-org-service-token.js.map +1 -0
- package/dist/mcp/actions/service-token-access.d.ts +24 -0
- package/dist/mcp/actions/service-token-access.d.ts.map +1 -0
- package/dist/mcp/actions/service-token-access.js +63 -0
- package/dist/mcp/actions/service-token-access.js.map +1 -0
- package/dist/mcp/build-server.d.ts +42 -11
- package/dist/mcp/build-server.d.ts.map +1 -1
- package/dist/mcp/build-server.js +53 -3
- package/dist/mcp/build-server.js.map +1 -1
- package/dist/mcp/connect-route.d.ts +35 -0
- package/dist/mcp/connect-route.d.ts.map +1 -1
- package/dist/mcp/connect-route.js +57 -2
- package/dist/mcp/connect-route.js.map +1 -1
- package/dist/mcp/connect-store.d.ts +43 -0
- package/dist/mcp/connect-store.d.ts.map +1 -1
- package/dist/mcp/connect-store.js +129 -12
- package/dist/mcp/connect-store.js.map +1 -1
- package/dist/mcp/oauth-token.d.ts +10 -0
- package/dist/mcp/oauth-token.d.ts.map +1 -1
- package/dist/mcp/oauth-token.js +2 -0
- package/dist/mcp/oauth-token.js.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +3 -0
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp-client/routes.js +1 -1
- package/dist/mcp-client/routes.js.map +1 -1
- package/dist/org/context.d.ts +4 -0
- package/dist/org/context.d.ts.map +1 -1
- package/dist/org/context.js +10 -0
- package/dist/org/context.js.map +1 -1
- package/dist/org/handlers.d.ts +11 -7
- package/dist/org/handlers.d.ts.map +1 -1
- package/dist/org/handlers.js +0 -8
- package/dist/org/handlers.js.map +1 -1
- package/dist/org/migrations.d.ts.map +1 -1
- package/dist/org/migrations.js +8 -0
- package/dist/org/migrations.js.map +1 -1
- package/dist/org/schema.d.ts +15 -15
- package/dist/progress/actions.d.ts.map +1 -1
- package/dist/progress/actions.js +13 -5
- package/dist/progress/actions.js.map +1 -1
- package/dist/provider-api/actions/delete-staged-dataset.d.ts +9 -0
- package/dist/provider-api/actions/delete-staged-dataset.d.ts.map +1 -0
- package/dist/provider-api/actions/delete-staged-dataset.js +35 -0
- package/dist/provider-api/actions/delete-staged-dataset.js.map +1 -0
- package/dist/provider-api/actions/list-staged-datasets.d.ts +15 -0
- package/dist/provider-api/actions/list-staged-datasets.d.ts.map +1 -0
- package/dist/provider-api/actions/list-staged-datasets.js +41 -0
- package/dist/provider-api/actions/list-staged-datasets.js.map +1 -0
- package/dist/provider-api/actions/query-staged-dataset.d.ts +29 -0
- package/dist/provider-api/actions/query-staged-dataset.d.ts.map +1 -0
- package/dist/provider-api/actions/query-staged-dataset.js +116 -0
- package/dist/provider-api/actions/query-staged-dataset.js.map +1 -0
- package/dist/provider-api/custom-registry.d.ts.map +1 -1
- package/dist/provider-api/custom-registry.js.map +1 -1
- package/dist/provider-api/index.d.ts +10 -10
- package/dist/provider-api/index.js +0 -5
- package/dist/provider-api/index.js.map +1 -1
- package/dist/provider-api/staged-datasets-aggregate.d.ts +46 -0
- package/dist/provider-api/staged-datasets-aggregate.d.ts.map +1 -0
- package/dist/provider-api/staged-datasets-aggregate.js +209 -0
- package/dist/provider-api/staged-datasets-aggregate.js.map +1 -0
- package/dist/provider-api/staged-datasets-store.d.ts +76 -0
- package/dist/provider-api/staged-datasets-store.d.ts.map +1 -0
- package/dist/provider-api/staged-datasets-store.js +319 -0
- package/dist/provider-api/staged-datasets-store.js.map +1 -0
- package/dist/provider-api/staging.d.ts +100 -0
- package/dist/provider-api/staging.d.ts.map +1 -0
- package/dist/provider-api/staging.js +281 -0
- package/dist/provider-api/staging.js.map +1 -0
- package/dist/resources/handlers.d.ts.map +1 -1
- package/dist/resources/handlers.js +13 -1
- package/dist/resources/handlers.js.map +1 -1
- package/dist/scripts/call-agent.d.ts.map +1 -1
- package/dist/scripts/call-agent.js +1 -2
- package/dist/scripts/call-agent.js.map +1 -1
- package/dist/scripts/resources/migrate-learnings.d.ts +1 -1
- package/dist/scripts/resources/migrate-learnings.d.ts.map +1 -1
- package/dist/scripts/resources/migrate-learnings.js +1 -1
- package/dist/scripts/resources/migrate-learnings.js.map +1 -1
- package/dist/secrets/schema.d.ts +7 -7
- package/dist/server/action-discovery.d.ts.map +1 -1
- package/dist/server/action-discovery.js +14 -0
- package/dist/server/action-discovery.js.map +1 -1
- package/dist/server/action-routes.d.ts.map +1 -1
- package/dist/server/action-routes.js +3 -2
- package/dist/server/action-routes.js.map +1 -1
- package/dist/server/agent-chat-plugin.d.ts +33 -0
- package/dist/server/agent-chat-plugin.d.ts.map +1 -1
- package/dist/server/agent-chat-plugin.js +251 -180
- package/dist/server/agent-chat-plugin.js.map +1 -1
- package/dist/server/agent-discovery.d.ts.map +1 -1
- package/dist/server/agent-discovery.js +13 -16
- package/dist/server/agent-discovery.js.map +1 -1
- package/dist/server/agent-teams-run-queue.d.ts +31 -8
- package/dist/server/agent-teams-run-queue.d.ts.map +1 -1
- package/dist/server/agent-teams-run-queue.js +61 -18
- package/dist/server/agent-teams-run-queue.js.map +1 -1
- package/dist/server/agent-teams.d.ts +27 -1
- package/dist/server/agent-teams.d.ts.map +1 -1
- package/dist/server/agent-teams.js +214 -14
- package/dist/server/agent-teams.js.map +1 -1
- package/dist/server/app-base-path.d.ts +20 -0
- package/dist/server/app-base-path.d.ts.map +1 -1
- package/dist/server/app-base-path.js +36 -0
- package/dist/server/app-base-path.js.map +1 -1
- package/dist/server/attachment-actions.d.ts +43 -0
- package/dist/server/attachment-actions.d.ts.map +1 -0
- package/dist/server/attachment-actions.js +214 -0
- package/dist/server/attachment-actions.js.map +1 -0
- package/dist/server/auth.js +1 -1
- package/dist/server/auth.js.map +1 -1
- package/dist/server/complete-text.d.ts +56 -0
- package/dist/server/complete-text.d.ts.map +1 -0
- package/dist/server/complete-text.js +147 -0
- package/dist/server/complete-text.js.map +1 -0
- package/dist/server/core-routes-plugin.d.ts +4 -0
- package/dist/server/core-routes-plugin.d.ts.map +1 -1
- package/dist/server/core-routes-plugin.js +49 -29
- package/dist/server/core-routes-plugin.js.map +1 -1
- package/dist/server/cors-origins.d.ts.map +1 -1
- package/dist/server/cors-origins.js +6 -1
- package/dist/server/cors-origins.js.map +1 -1
- package/dist/server/create-server.d.ts.map +1 -1
- package/dist/server/create-server.js +2 -1
- package/dist/server/create-server.js.map +1 -1
- package/dist/server/csrf.d.ts +1 -1
- package/dist/server/csrf.d.ts.map +1 -1
- package/dist/server/email-actions.d.ts +19 -0
- package/dist/server/email-actions.d.ts.map +1 -0
- package/dist/server/email-actions.js +191 -0
- package/dist/server/email-actions.js.map +1 -0
- package/dist/server/embed-route.js +1 -1
- package/dist/server/embed-route.js.map +1 -1
- package/dist/server/embed-session.d.ts.map +1 -1
- package/dist/server/embed-session.js +5 -1
- package/dist/server/embed-session.js.map +1 -1
- package/dist/server/entry-server.d.ts +24 -0
- package/dist/server/entry-server.d.ts.map +1 -0
- package/dist/server/entry-server.js +54 -0
- package/dist/server/entry-server.js.map +1 -0
- package/dist/server/framework-request-handler.d.ts.map +1 -1
- package/dist/server/framework-request-handler.js +2 -10
- package/dist/server/framework-request-handler.js.map +1 -1
- package/dist/server/google-oauth.d.ts.map +1 -1
- package/dist/server/google-oauth.js +2 -9
- package/dist/server/google-oauth.js.map +1 -1
- package/dist/server/google-realtime-session.d.ts.map +1 -1
- package/dist/server/google-realtime-session.js +6 -4
- package/dist/server/google-realtime-session.js.map +1 -1
- package/dist/server/h3-helpers.d.ts +39 -0
- package/dist/server/h3-helpers.d.ts.map +1 -1
- package/dist/server/h3-helpers.js +104 -1
- package/dist/server/h3-helpers.js.map +1 -1
- package/dist/server/index.d.ts +2 -1
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +2 -1
- package/dist/server/index.js.map +1 -1
- package/dist/server/onboarding-html.d.ts.map +1 -1
- package/dist/server/onboarding-html.js +1 -8
- package/dist/server/onboarding-html.js.map +1 -1
- package/dist/server/open-route.d.ts.map +1 -1
- package/dist/server/open-route.js +1 -0
- package/dist/server/open-route.js.map +1 -1
- package/dist/server/prompts/framework-core-compact.d.ts +19 -0
- package/dist/server/prompts/framework-core-compact.d.ts.map +1 -0
- package/dist/server/prompts/framework-core-compact.js +69 -0
- package/dist/server/prompts/framework-core-compact.js.map +1 -0
- package/dist/server/prompts/framework-core.d.ts +26 -0
- package/dist/server/prompts/framework-core.d.ts.map +1 -0
- package/dist/server/prompts/framework-core.js +130 -0
- package/dist/server/prompts/framework-core.js.map +1 -0
- package/dist/server/prompts/index.d.ts +9 -0
- package/dist/server/prompts/index.d.ts.map +1 -0
- package/dist/server/prompts/index.js +9 -0
- package/dist/server/prompts/index.js.map +1 -0
- package/dist/server/prompts/model-overlays.d.ts +18 -0
- package/dist/server/prompts/model-overlays.d.ts.map +1 -0
- package/dist/server/prompts/model-overlays.js +46 -0
- package/dist/server/prompts/model-overlays.js.map +1 -0
- package/dist/server/prompts/shared-rules.d.ts +29 -0
- package/dist/server/prompts/shared-rules.d.ts.map +1 -0
- package/dist/server/prompts/shared-rules.js +54 -0
- package/dist/server/prompts/shared-rules.js.map +1 -0
- package/dist/server/security-headers.d.ts +7 -1
- package/dist/server/security-headers.d.ts.map +1 -1
- package/dist/server/security-headers.js +11 -0
- package/dist/server/security-headers.js.map +1 -1
- package/dist/server/ssr-handler.d.ts.map +1 -1
- package/dist/server/ssr-handler.js +135 -46
- package/dist/server/ssr-handler.js.map +1 -1
- package/dist/server/transcribe-voice.d.ts.map +1 -1
- package/dist/server/transcribe-voice.js +7 -4
- package/dist/server/transcribe-voice.js.map +1 -1
- package/dist/settings/store.d.ts.map +1 -1
- package/dist/settings/store.js +9 -0
- package/dist/settings/store.js.map +1 -1
- package/dist/shared/markdown-block-split.d.ts +39 -0
- package/dist/shared/markdown-block-split.d.ts.map +1 -0
- package/dist/shared/markdown-block-split.js +97 -0
- package/dist/shared/markdown-block-split.js.map +1 -0
- package/dist/shared/reasoning-effort.js +13 -1
- package/dist/shared/reasoning-effort.js.map +1 -1
- package/dist/shared/streaming-text-smoothing.d.ts +18 -0
- package/dist/shared/streaming-text-smoothing.d.ts.map +1 -1
- package/dist/shared/streaming-text-smoothing.js +70 -4
- package/dist/shared/streaming-text-smoothing.js.map +1 -1
- package/dist/sharing/actions/list-resource-shares.d.ts +24 -1
- package/dist/sharing/actions/list-resource-shares.d.ts.map +1 -1
- package/dist/sharing/actions/set-resource-visibility.d.ts +8 -1
- package/dist/sharing/actions/set-resource-visibility.d.ts.map +1 -1
- package/dist/sharing/actions/share-resource.d.ts +12 -1
- package/dist/sharing/actions/share-resource.d.ts.map +1 -1
- package/dist/sharing/actions/unshare-resource.d.ts +8 -1
- package/dist/sharing/actions/unshare-resource.d.ts.map +1 -1
- package/dist/sharing/schema.d.ts +10 -10
- package/dist/styles/agent-conversation.css +239 -0
- package/dist/templates/default/.agents/skills/delegate-to-agent/SKILL.md +50 -2
- package/dist/templates/default/AGENTS.md +1 -1
- package/dist/templates/default/DEVELOPING.md +19 -0
- package/dist/templates/default/app/entry.client.tsx +4 -1
- package/dist/templates/default/app/entry.server.tsx +4 -56
- package/dist/templates/default/app/global.css +3 -2
- package/dist/templates/default/app/root.tsx +8 -24
- package/dist/templates/default/app/routes/_index.tsx +0 -13
- package/dist/templates/default/package.json +6 -5
- package/dist/templates/default/tsconfig.json +2 -1
- package/dist/templates/starter-shell-sync.spec.ts +118 -0
- package/dist/templates/ui-primitives-sync.spec.ts +399 -0
- package/dist/templates/workspace-core/.agents/skills/delegate-to-agent/SKILL.md +50 -2
- package/dist/terminal/pty-server.js +1 -1
- package/dist/terminal/pty-server.js.map +1 -1
- package/dist/triggers/dispatcher.js +1 -1
- package/dist/triggers/dispatcher.js.map +1 -1
- package/dist/usage/store.d.ts.map +1 -1
- package/dist/usage/store.js +60 -7
- package/dist/usage/store.js.map +1 -1
- package/dist/vite/client.d.ts.map +1 -1
- package/dist/vite/client.js +44 -12
- package/dist/vite/client.js.map +1 -1
- package/dist/workspace-files/schema.d.ts +8 -8
- package/dist/workspace-files/tool.d.ts.map +1 -1
- package/dist/workspace-files/tool.js +0 -1
- package/dist/workspace-files/tool.js.map +1 -1
- package/docs/content/a2a-protocol.md +18 -12
- package/docs/content/actions.md +42 -10
- package/docs/content/agent-mentions.md +7 -8
- package/docs/content/agent-teams.md +23 -37
- package/docs/content/agent-web-surfaces.md +18 -9
- package/docs/content/authentication.md +6 -17
- package/docs/content/automations.md +43 -15
- package/docs/content/cli-adapters.md +25 -24
- package/docs/content/client.md +66 -17
- package/docs/content/cloneable-saas.md +19 -23
- package/docs/content/code-agents-ui.md +3 -31
- package/docs/content/components.md +308 -0
- package/docs/content/context-awareness.md +4 -0
- package/docs/content/creating-templates.md +4 -2
- package/docs/content/cross-app-sso.md +45 -19
- package/docs/content/database.md +26 -1
- package/docs/content/deployment.md +3 -1
- package/docs/content/dispatch.md +9 -37
- package/docs/content/drop-in-agent.md +123 -2
- package/docs/content/embedding-sdk.md +35 -0
- package/docs/content/extensions.md +2 -2
- package/docs/content/external-agents.md +86 -171
- package/docs/content/faq.md +6 -27
- package/docs/content/frames.md +9 -12
- package/docs/content/getting-started.md +80 -77
- package/docs/content/key-concepts.md +29 -19
- package/docs/content/mcp-apps.md +103 -0
- package/docs/content/mcp-clients.md +2 -2
- package/docs/content/mcp-protocol.md +40 -17
- package/docs/content/messaging.md +11 -4
- package/docs/content/migration-workbench.md +4 -47
- package/docs/content/multi-app-workspace.md +48 -17
- package/docs/content/multi-tenancy.md +1 -1
- package/docs/content/notifications.md +8 -6
- package/docs/content/observability.md +26 -15
- package/docs/content/onboarding.md +7 -1
- package/docs/content/pr-visual-recap.md +203 -23
- package/docs/content/progress.md +5 -5
- package/docs/content/pure-agent-apps.md +3 -1
- package/docs/content/real-time-collaboration.md +106 -0
- package/docs/content/recurring-jobs.md +17 -1
- package/docs/content/security.md +17 -3
- package/docs/content/server.md +39 -3
- package/docs/content/sharing.md +20 -1
- package/docs/content/skills-guide.md +151 -125
- package/docs/content/template-analytics.md +8 -0
- package/docs/content/template-assets.md +2 -0
- package/docs/content/template-brain.md +59 -3
- package/docs/content/template-calendar.md +8 -0
- package/docs/content/template-clips.md +11 -2
- package/docs/content/template-content.md +24 -4
- package/docs/content/template-design.md +19 -17
- package/docs/content/template-dispatch.md +2 -0
- package/docs/content/template-forms.md +28 -1
- package/docs/content/template-mail.md +17 -0
- package/docs/content/template-plan.md +177 -10
- package/docs/content/template-slides.md +51 -12
- package/docs/content/template-videos.md +17 -0
- package/docs/content/tracking.md +17 -13
- package/docs/content/using-your-agent.md +15 -5
- package/docs/content/voice-input.md +1 -1
- package/docs/content/what-is-agent-native.md +5 -6
- package/docs/content/workspace-connections.md +138 -424
- package/docs/content/workspace-management.md +12 -128
- package/docs/content/workspace.md +125 -199
- package/docs/content/writing-agent-instructions.md +17 -1
- package/package.json +25 -6
- package/src/templates/default/.agents/skills/delegate-to-agent/SKILL.md +50 -2
- package/src/templates/default/AGENTS.md +1 -1
- package/src/templates/default/DEVELOPING.md +19 -0
- package/src/templates/default/app/entry.client.tsx +4 -1
- package/src/templates/default/app/entry.server.tsx +4 -56
- package/src/templates/default/app/global.css +3 -2
- package/src/templates/default/app/root.tsx +8 -24
- package/src/templates/default/app/routes/_index.tsx +0 -13
- package/src/templates/default/package.json +6 -5
- package/src/templates/default/tsconfig.json +2 -1
- package/src/templates/starter-shell-sync.spec.ts +118 -0
- package/src/templates/ui-primitives-sync.spec.ts +399 -0
- package/src/templates/workspace-core/.agents/skills/delegate-to-agent/SKILL.md +50 -2
- package/tsconfig.base.json +2 -10
- package/dist/cli/app-skill.d.ts +0 -157
- package/dist/cli/app-skill.d.ts.map +0 -1
- package/dist/cli/audit-agent-web.d.ts +0 -2
- package/dist/cli/audit-agent-web.d.ts.map +0 -1
- package/dist/cli/code-agent-connector.d.ts +0 -17
- package/dist/cli/code-agent-connector.d.ts.map +0 -1
- package/dist/cli/code.d.ts +0 -66
- package/dist/cli/code.d.ts.map +0 -1
- package/dist/cli/connect.d.ts +0 -140
- package/dist/cli/connect.d.ts.map +0 -1
- package/dist/cli/context-xray-local.d.ts +0 -16
- package/dist/cli/context-xray-local.d.ts.map +0 -1
- package/dist/cli/create-workspace.d.ts +0 -8
- package/dist/cli/create-workspace.d.ts.map +0 -1
- package/dist/cli/index.d.ts +0 -3
- package/dist/cli/index.d.ts.map +0 -1
- package/dist/cli/info.d.ts +0 -2
- package/dist/cli/info.d.ts.map +0 -1
- package/dist/cli/mcp-config-writers.d.ts +0 -82
- package/dist/cli/mcp-config-writers.d.ts.map +0 -1
- package/dist/cli/mcp.d.ts +0 -16
- package/dist/cli/mcp.d.ts.map +0 -1
- package/dist/cli/migrate.d.ts +0 -38
- package/dist/cli/migrate.d.ts.map +0 -1
- package/dist/cli/plan-local.d.ts +0 -43
- package/dist/cli/plan-local.d.ts.map +0 -1
- package/dist/cli/plan-publish-store.d.ts +0 -62
- package/dist/cli/plan-publish-store.d.ts.map +0 -1
- package/dist/cli/pr-visual-recap-workflow.d.ts +0 -11
- package/dist/cli/pr-visual-recap-workflow.d.ts.map +0 -1
- package/dist/cli/recap.d.ts +0 -297
- package/dist/cli/recap.d.ts.map +0 -1
- package/dist/cli/skills.d.ts +0 -162
- package/dist/cli/skills.d.ts.map +0 -1
- package/dist/cli/workspace-dev.d.ts +0 -96
- package/dist/cli/workspace-dev.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableEditor.js","sourceRoot":"","sources":["../../../src/client/db-admin/TableEditor.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useCallback, useEffect, useMemo, useRef, useState } from \"react\";\nimport { createPortal } from \"react-dom\";\nimport {\n IconPlus,\n IconFilter,\n IconRefresh,\n IconTrash,\n IconAlertTriangle,\n IconCode,\n IconArrowBackUp,\n IconDeviceFloppy,\n IconChevronLeft,\n IconChevronRight,\n IconChevronsLeft,\n IconChevronsRight,\n IconLoader2,\n IconCheck,\n IconKeyOff,\n} from \"@tabler/icons-react\";\nimport { cn } from \"../utils.js\";\nimport {\n Popover,\n PopoverContent,\n PopoverTrigger,\n} from \"../components/ui/popover.js\";\nimport { useTableSchema, useTableRows, mutateTable } from \"./useDbAdmin.js\";\nimport { loadGridState, saveGridState } from \"./storage.js\";\nimport { useChangeset, pkStringFor } from \"./changeset.js\";\nimport { DataGrid, type GridRow, type ActiveCell } from \"./DataGrid.js\";\nimport { FilterBar } from \"./FilterBar.js\";\nimport { RowSidePanel, type RowSidePanelMode } from \"./RowSidePanel.js\";\nimport type {\n DbAdminDialect,\n DbAdminFilter,\n DbAdminForeignKey,\n DbAdminSort,\n DbAdminMutationResult,\n} from \"../../db-admin/types.js\";\n\nexport interface TableEditorProps {\n table: string;\n dialect: DbAdminDialect;\n initialFilters?: DbAdminFilter[];\n onNavigateToRow: (table: string, filters: DbAdminFilter[]) => void;\n}\n\nconst DEFAULT_PAGE_SIZE = 100;\nconst PAGE_SIZES = [25, 50, 100, 250, 500];\n\nexport function TableEditor({\n table,\n dialect,\n initialFilters,\n onNavigateToRow,\n}: TableEditorProps) {\n // ─── Persisted view state ──────────────────────────────────────────────\n const persisted = useMemo(() => loadGridState(table), [table]);\n\n const [page, setPage] = useState(1);\n const [pageSize, setPageSize] = useState(\n persisted.pageSize ?? DEFAULT_PAGE_SIZE,\n );\n const [sort, setSort] = useState<DbAdminSort[]>(persisted.sort ?? []);\n const [filters, setFilters] = useState<DbAdminFilter[]>(\n initialFilters ?? persisted.filters ?? [],\n );\n const [columnWidths, setColumnWidths] = useState<Record<string, number>>(\n persisted.columnWidths ?? {},\n );\n const [selectedPks, setSelectedPks] = useState<Set<string>>(new Set());\n const [active, setActive] = useState<ActiveCell | null>(null);\n\n // Reset transient state when switching tables.\n useEffect(() => {\n const p = loadGridState(table);\n setPage(1);\n setPageSize(p.pageSize ?? DEFAULT_PAGE_SIZE);\n setSort(p.sort ?? []);\n setFilters(initialFilters ?? p.filters ?? []);\n setColumnWidths(p.columnWidths ?? {});\n setSelectedPks(new Set());\n setActive(null);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [table]);\n\n // Persist view state.\n useEffect(() => {\n saveGridState(table, { columnWidths, sort, filters, pageSize });\n }, [table, columnWidths, sort, filters, pageSize]);\n\n // ─── Data ────────────────────────────────────────────────────────────────\n const schemaState = useTableSchema(table);\n const rowsReq = useMemo(\n () => ({ page, pageSize, sort, filters }),\n [page, pageSize, sort, filters],\n );\n const rowsState = useTableRows(table, rowsReq);\n\n const schema = schemaState.data;\n const changeset = useChangeset(schema);\n\n // ─── Toolbar UI state ──────────────────────────────────────────────────\n const [panel, setPanel] = useState<{\n mode: RowSidePanelMode;\n pk?: string;\n } | null>(null);\n const [confirmDelete, setConfirmDelete] = useState(false);\n const [previewSql, setPreviewSql] = useState<string[] | null>(null);\n const [committing, setCommitting] = useState(false);\n const [commitError, setCommitError] = useState<string | null>(null);\n const [toast, setToast] = useState<string | null>(null);\n\n const showToast = useCallback((msg: string) => {\n setToast(msg);\n window.setTimeout(() => setToast(null), 2500);\n }, []);\n\n // ─── Original rows map (pk → fetched row) ──────────────────────────────\n const originalRows = useMemo(() => {\n const map = new Map<string, Record<string, unknown>>();\n for (const row of rowsState.data?.rows ?? []) {\n map.set(pkStringFor(schema, row), row);\n }\n return map;\n }, [rowsState.data, schema]);\n\n // ─── Build grid rows with staged edits applied ──────────────────────────\n const gridRows = useMemo<GridRow[]>(() => {\n const out: GridRow[] = [];\n // New rows first (top of grid, like Supabase).\n for (const nr of changeset.newRows) {\n out.push({\n pk: `new:${nr._localId}`,\n localId: nr._localId,\n isNew: true,\n values: { ...nr.values },\n });\n }\n for (const row of rowsState.data?.rows ?? []) {\n const pk = pkStringFor(schema, row);\n const staged = changeset.edits.get(pk);\n out.push({\n pk,\n values: staged ? { ...row, ...staged } : row,\n isDeleted: changeset.deletedKeys.has(pk),\n });\n }\n return out;\n }, [\n rowsState.data,\n schema,\n changeset.newRows,\n changeset.edits,\n changeset.deletedKeys,\n ]);\n\n // ─── Cell commit routing (existing rows vs new rows) ────────────────────\n const onCellCommit = useCallback(\n (row: GridRow, col: string, value: unknown) => {\n if (row.isNew && row.localId) {\n changeset.setNewRowCell(row.localId, col, value);\n } else {\n changeset.setCell(row.pk, col, value);\n }\n },\n [changeset],\n );\n\n const isCellDirty = useCallback(\n (row: GridRow, col: string) => {\n if (row.isNew) return true;\n return changeset.isCellDirty(row.pk, col);\n },\n [changeset],\n );\n\n const onToggleDelete = useCallback(\n (row: GridRow) => {\n if (row.isNew && row.localId) {\n changeset.removeNewRow(row.localId);\n return;\n }\n changeset.deleteRows([row.pk]);\n },\n [changeset],\n );\n\n // ─── FK navigation ───────────────────────────────────────────────────────\n const onFkNavigate = useCallback(\n (fk: DbAdminForeignKey, value: unknown) => {\n onNavigateToRow(fk.refTable, [{ column: fk.refColumn, op: \"eq\", value }]);\n },\n [onNavigateToRow],\n );\n\n // ─── Commit / preview ──────────────────────────────────────────────────\n const runCommit = useCallback(\n async (dryRun: boolean) => {\n const mutation = changeset.buildMutation(originalRows, dryRun);\n if (!mutation.inserts && !mutation.updates && !mutation.deletes) {\n return null;\n }\n return mutateTable(table, mutation);\n },\n [changeset, originalRows, table],\n );\n\n const handlePreview = useCallback(async () => {\n setCommitError(null);\n try {\n const res = await runCommit(true);\n setPreviewSql(res ? res.sql : []);\n } catch (err) {\n setCommitError(err instanceof Error ? err.message : String(err));\n }\n }, [runCommit]);\n\n const handleCommit = useCallback(async () => {\n const hasDeletes = changeset.deletedKeys.size > 0;\n if (hasDeletes && !confirmDelete) {\n setConfirmDelete(true);\n return;\n }\n setCommitting(true);\n setCommitError(null);\n try {\n const res: DbAdminMutationResult | null = await runCommit(false);\n changeset.discardAll();\n setSelectedPks(new Set());\n setConfirmDelete(false);\n rowsState.refetch();\n schemaState.refetch();\n if (res) {\n const parts: string[] = [];\n if (res.inserted) parts.push(`${res.inserted} inserted`);\n if (res.updated) parts.push(`${res.updated} updated`);\n if (res.deleted) parts.push(`${res.deleted} deleted`);\n showToast(parts.length ? parts.join(\", \") : \"No changes\");\n }\n } catch (err) {\n setCommitError(err instanceof Error ? err.message : String(err));\n } finally {\n setCommitting(false);\n }\n }, [changeset, confirmDelete, runCommit, rowsState, schemaState, showToast]);\n\n // ─── Cmd/Ctrl+S to commit ──────────────────────────────────────────────\n const commitRef = useRef(handleCommit);\n commitRef.current = handleCommit;\n useEffect(() => {\n const onKey = (e: KeyboardEvent) => {\n if (\n (e.metaKey || e.ctrlKey) &&\n typeof e.key === \"string\" &&\n e.key.toLowerCase() === \"s\"\n ) {\n e.preventDefault();\n if (changeset.isDirty) void commitRef.current();\n }\n };\n window.addEventListener(\"keydown\", onKey);\n return () => window.removeEventListener(\"keydown\", onKey);\n }, [changeset.isDirty]);\n\n // ─── Bulk delete from selection ────────────────────────────────────────\n const onBulkDelete = useCallback(() => {\n const pks = [...selectedPks].filter((pk) => !pk.startsWith(\"new:\"));\n changeset.deleteRows(pks);\n setSelectedPks(new Set());\n }, [selectedPks, changeset]);\n\n // ─── Render ──────────────────────────────────────────────────────────────\n const total = rowsState.data?.total ?? schema?.rowCount ?? 0;\n const totalPages = Math.max(1, Math.ceil(total / pageSize));\n\n if (schemaState.error) {\n return (\n <div className=\"flex h-full items-center justify-center p-8 text-sm text-destructive\">\n <IconAlertTriangle className=\"mr-2 h-4 w-4\" />\n {schemaState.error.message}\n </div>\n );\n }\n\n if (!schema) {\n return (\n <div className=\"flex h-full items-center justify-center p-8 text-sm text-muted-foreground\">\n <IconLoader2 className=\"mr-2 h-4 w-4 animate-spin\" />\n Loading {table}…\n </div>\n );\n }\n\n const noPk = schema.primaryKey.length === 0;\n\n return (\n <div className=\"flex h-full min-h-0 flex-col\">\n {/* Toolbar */}\n <div className=\"flex flex-col gap-2 border-b border-border px-3 py-2\">\n <div className=\"flex flex-wrap items-center gap-2\">\n <div className=\"flex items-baseline gap-2\">\n <span className=\"text-sm font-semibold text-foreground\">\n {table}\n </span>\n <span className=\"text-xs text-muted-foreground\">\n {total.toLocaleString()} rows\n </span>\n {schema.type === \"view\" && (\n <span className=\"rounded bg-muted px-1.5 py-0.5 text-[10px] text-muted-foreground\">\n view\n </span>\n )}\n </div>\n\n <div className=\"ml-auto flex items-center gap-1.5\">\n <ToolbarButton\n icon={<IconRefresh className=\"h-3.5 w-3.5\" />}\n label=\"Refresh\"\n onClick={() => {\n rowsState.refetch();\n schemaState.refetch();\n }}\n />\n {!noPk && schema.type === \"table\" && (\n <ToolbarButton\n icon={<IconPlus className=\"h-3.5 w-3.5\" />}\n label=\"Insert\"\n onClick={() => setPanel({ mode: \"insert\" })}\n primary\n />\n )}\n </div>\n </div>\n\n {/* Filters */}\n <div className=\"flex items-center gap-2\">\n <IconFilter className=\"h-3.5 w-3.5 shrink-0 text-muted-foreground\" />\n <FilterBar\n columns={schema.columns}\n filters={filters}\n onChange={(f) => {\n setFilters(f);\n setPage(1);\n }}\n />\n </div>\n\n {/* No-PK warning */}\n {noPk && schema.type === \"table\" && (\n <div className=\"flex items-center gap-1.5 rounded-md bg-amber-500/10 px-2 py-1 text-[11px] text-amber-600 dark:text-amber-400\">\n <IconKeyOff className=\"h-3.5 w-3.5\" />\n This table has no primary key — editing and row deletion are\n disabled.\n </div>\n )}\n\n {/* Selection / changeset bar */}\n {(selectedPks.size > 0 || changeset.isDirty) && (\n <div className=\"flex flex-wrap items-center gap-2\">\n {selectedPks.size > 0 && (\n <>\n <span className=\"text-xs text-muted-foreground\">\n {selectedPks.size} selected\n </span>\n {!noPk && (\n <button\n type=\"button\"\n onClick={onBulkDelete}\n className=\"inline-flex items-center gap-1 rounded-md border border-border px-2 py-1 text-xs text-destructive hover:bg-destructive/10\"\n >\n <IconTrash className=\"h-3.5 w-3.5\" />\n Delete selected\n </button>\n )}\n <span className=\"h-4 w-px bg-border\" />\n </>\n )}\n\n {changeset.isDirty && (\n <>\n <span className=\"inline-flex items-center gap-1 rounded-md bg-amber-500/15 px-2 py-1 text-xs font-medium text-amber-600 dark:text-amber-400\">\n {changeset.pendingCount} pending change\n {changeset.pendingCount === 1 ? \"\" : \"s\"}\n </span>\n <button\n type=\"button\"\n onClick={changeset.discardAll}\n className=\"inline-flex items-center gap-1 rounded-md border border-border px-2 py-1 text-xs text-muted-foreground hover:text-foreground\"\n >\n <IconArrowBackUp className=\"h-3.5 w-3.5\" />\n Discard\n </button>\n <PreviewSqlButton\n onPreview={handlePreview}\n sql={previewSql}\n onClear={() => setPreviewSql(null)}\n error={commitError}\n />\n <button\n type=\"button\"\n onClick={() => void handleCommit()}\n disabled={committing}\n className=\"inline-flex items-center gap-1 rounded-md bg-primary px-2.5 py-1 text-xs font-medium text-primary-foreground hover:bg-primary/90 disabled:opacity-60\"\n >\n {committing ? (\n <IconLoader2 className=\"h-3.5 w-3.5 animate-spin\" />\n ) : (\n <IconDeviceFloppy className=\"h-3.5 w-3.5\" />\n )}\n Commit\n </button>\n </>\n )}\n </div>\n )}\n\n {commitError && !previewSql && (\n <div className=\"flex items-center gap-1.5 rounded-md bg-destructive/10 px-2 py-1 text-[11px] text-destructive\">\n <IconAlertTriangle className=\"h-3.5 w-3.5\" />\n {commitError}\n </div>\n )}\n </div>\n\n {/* Grid */}\n <DataGrid\n schema={schema}\n rows={gridRows}\n isLoading={rowsState.isLoading}\n pageSize={pageSize}\n sort={sort}\n onSortChange={(s) => {\n setSort(s);\n setPage(1);\n }}\n selectedPks={selectedPks}\n onSelectionChange={setSelectedPks}\n columnWidths={columnWidths}\n onColumnWidthsChange={setColumnWidths}\n active={active}\n onActiveChange={setActive}\n editable={!noPk && schema.type === \"table\"}\n onCellCommit={onCellCommit}\n isCellDirty={isCellDirty}\n onToggleDelete={onToggleDelete}\n onNavigateToRow={onFkNavigate}\n />\n\n {/* Pagination footer */}\n <div className=\"flex items-center justify-between border-t border-border px-3 py-1.5 text-xs text-muted-foreground\">\n <div className=\"flex items-center gap-2\">\n <span>Rows per page</span>\n <select\n value={pageSize}\n onChange={(e) => {\n setPageSize(Number(e.target.value));\n setPage(1);\n }}\n className=\"h-6 rounded border border-border bg-background px-1 text-xs outline-none focus:ring-1 focus:ring-ring\"\n >\n {PAGE_SIZES.map((s) => (\n <option key={s} value={s}>\n {s}\n </option>\n ))}\n </select>\n </div>\n\n <div className=\"flex items-center gap-1\">\n <span className=\"mr-2\">\n Page {page} of {totalPages}\n </span>\n <PagerButton\n disabled={page <= 1}\n onClick={() => setPage(1)}\n icon={<IconChevronsLeft className=\"h-3.5 w-3.5\" />}\n />\n <PagerButton\n disabled={page <= 1}\n onClick={() => setPage((p) => Math.max(1, p - 1))}\n icon={<IconChevronLeft className=\"h-3.5 w-3.5\" />}\n />\n <PagerButton\n disabled={page >= totalPages}\n onClick={() => setPage((p) => Math.min(totalPages, p + 1))}\n icon={<IconChevronRight className=\"h-3.5 w-3.5\" />}\n />\n <PagerButton\n disabled={page >= totalPages}\n onClick={() => setPage(totalPages)}\n icon={<IconChevronsRight className=\"h-3.5 w-3.5\" />}\n />\n </div>\n </div>\n\n {/* Row side panel */}\n {panel && (\n <RowSidePanel\n schema={schema}\n mode={panel.mode}\n row={panel.pk ? originalRows.get(panel.pk) : undefined}\n staged={panel.pk ? changeset.edits.get(panel.pk) : undefined}\n onClose={() => setPanel(null)}\n onSave={(values) => {\n if (panel.mode === \"insert\") {\n changeset.addRow(values);\n } else if (panel.pk) {\n changeset.setCells(panel.pk, values);\n }\n }}\n />\n )}\n\n {/* Destructive commit confirmation */}\n {confirmDelete && (\n <ConfirmModal\n title=\"Commit deletions?\"\n body={`${changeset.deletedKeys.size} row${\n changeset.deletedKeys.size === 1 ? \"\" : \"s\"\n } will be permanently deleted along with any other pending changes. This cannot be undone.`}\n confirmLabel=\"Delete and commit\"\n destructive\n onCancel={() => setConfirmDelete(false)}\n onConfirm={() => void handleCommit()}\n />\n )}\n\n {/* Toast */}\n {toast &&\n typeof document !== \"undefined\" &&\n createPortal(\n <div className=\"fixed bottom-4 right-4 z-[500] flex items-center gap-2 rounded-md border border-border bg-card px-3 py-2 text-xs text-foreground shadow-lg\">\n <IconCheck className=\"h-4 w-4 text-emerald-500\" />\n {toast}\n </div>,\n document.body,\n )}\n </div>\n );\n}\n\n// ─── Small UI atoms ────────────────────────────────────────────────────────\n\nfunction ToolbarButton({\n icon,\n label,\n onClick,\n primary,\n}: {\n icon: React.ReactNode;\n label: string;\n onClick: () => void;\n primary?: boolean;\n}) {\n return (\n <button\n type=\"button\"\n onClick={onClick}\n className={cn(\n \"inline-flex items-center gap-1 rounded-md px-2 py-1 text-xs\",\n primary\n ? \"bg-primary text-primary-foreground hover:bg-primary/90\"\n : \"border border-border text-muted-foreground hover:text-foreground\",\n )}\n >\n {icon}\n {label}\n </button>\n );\n}\n\nfunction PagerButton({\n disabled,\n onClick,\n icon,\n}: {\n disabled: boolean;\n onClick: () => void;\n icon: React.ReactNode;\n}) {\n return (\n <button\n type=\"button\"\n disabled={disabled}\n onClick={onClick}\n className=\"rounded border border-border p-1 text-muted-foreground hover:text-foreground disabled:opacity-40\"\n >\n {icon}\n </button>\n );\n}\n\nfunction PreviewSqlButton({\n onPreview,\n sql,\n onClear,\n error,\n}: {\n onPreview: () => void;\n sql: string[] | null;\n onClear: () => void;\n error: string | null;\n}) {\n return (\n <Popover\n open={sql !== null}\n onOpenChange={(o) => {\n if (!o) onClear();\n }}\n >\n <PopoverTrigger asChild>\n <button\n type=\"button\"\n onClick={onPreview}\n className=\"inline-flex items-center gap-1 rounded-md border border-border px-2 py-1 text-xs text-muted-foreground hover:text-foreground\"\n >\n <IconCode className=\"h-3.5 w-3.5\" />\n Preview SQL\n </button>\n </PopoverTrigger>\n <PopoverContent align=\"end\" className=\"w-[34rem] p-0\">\n <div className=\"border-b border-border px-3 py-2 text-xs font-medium text-foreground\">\n Preview SQL\n </div>\n <div className=\"max-h-80 overflow-auto p-3\">\n {error ? (\n <div className=\"text-xs text-destructive\">{error}</div>\n ) : sql && sql.length > 0 ? (\n <pre className=\"whitespace-pre-wrap break-all font-mono text-[11px] leading-relaxed text-foreground\">\n {sql.join(\";\\n\")}\n </pre>\n ) : (\n <div className=\"text-xs text-muted-foreground\">\n No statements to run.\n </div>\n )}\n </div>\n </PopoverContent>\n </Popover>\n );\n}\n\nfunction ConfirmModal({\n title,\n body,\n confirmLabel,\n destructive,\n onCancel,\n onConfirm,\n}: {\n title: string;\n body: string;\n confirmLabel: string;\n destructive?: boolean;\n onCancel: () => void;\n onConfirm: () => void;\n}) {\n useEffect(() => {\n const onKey = (e: KeyboardEvent) => {\n if (e.key === \"Escape\") onCancel();\n };\n window.addEventListener(\"keydown\", onKey);\n return () => window.removeEventListener(\"keydown\", onKey);\n }, [onCancel]);\n\n if (typeof document === \"undefined\") return null;\n return createPortal(\n <div className=\"fixed inset-0 z-[450] flex items-center justify-center\">\n <div className=\"absolute inset-0 bg-black/40\" onClick={onCancel} />\n <div className=\"relative w-full max-w-sm rounded-lg border border-border bg-card p-4 shadow-xl\">\n <div className=\"mb-1 flex items-center gap-2\">\n {destructive && (\n <IconAlertTriangle className=\"h-4 w-4 text-destructive\" />\n )}\n <h2 className=\"text-sm font-semibold text-foreground\">{title}</h2>\n </div>\n <p className=\"mb-4 text-xs text-muted-foreground\">{body}</p>\n <div className=\"flex justify-end gap-2\">\n <button\n type=\"button\"\n onClick={onCancel}\n className=\"rounded-md px-3 py-1.5 text-xs text-muted-foreground hover:bg-muted hover:text-foreground\"\n >\n Cancel\n </button>\n <button\n type=\"button\"\n onClick={onConfirm}\n className={cn(\n \"rounded-md px-3 py-1.5 text-xs font-medium text-primary-foreground\",\n destructive\n ? \"bg-destructive hover:bg-destructive/90\"\n : \"bg-primary hover:bg-primary/90\",\n )}\n >\n {confirmLabel}\n </button>\n </div>\n </div>\n </div>,\n document.body,\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"TableEditor.js","sourceRoot":"","sources":["../../../src/client/db-admin/TableEditor.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useCallback, useEffect, useMemo, useRef, useState } from \"react\";\nimport { createPortal } from \"react-dom\";\nimport {\n IconPlus,\n IconFilter,\n IconRefresh,\n IconTrash,\n IconAlertTriangle,\n IconCode,\n IconArrowBackUp,\n IconDeviceFloppy,\n IconChevronLeft,\n IconChevronRight,\n IconChevronsLeft,\n IconChevronsRight,\n IconLoader2,\n IconCheck,\n IconKeyOff,\n} from \"@tabler/icons-react\";\nimport { cn } from \"../utils.js\";\nimport {\n Popover,\n PopoverContent,\n PopoverTrigger,\n} from \"../components/ui/popover.js\";\nimport { useTableSchema, useTableRows, mutateTable } from \"./useDbAdmin.js\";\nimport { loadGridState, saveGridState } from \"./storage.js\";\nimport { useChangeset, pkStringFor } from \"./changeset.js\";\nimport { DataGrid, type GridRow, type ActiveCell } from \"./DataGrid.js\";\nimport { FilterBar } from \"./FilterBar.js\";\nimport { RowSidePanel, type RowSidePanelMode } from \"./RowSidePanel.js\";\nimport type {\n DbAdminDialect,\n DbAdminFilter,\n DbAdminForeignKey,\n DbAdminSort,\n DbAdminMutationResult,\n} from \"../../db-admin/types.js\";\n\nexport interface TableEditorProps {\n table: string;\n dialect: DbAdminDialect;\n initialFilters?: DbAdminFilter[];\n onNavigateToRow: (table: string, filters: DbAdminFilter[]) => void;\n}\n\nconst DEFAULT_PAGE_SIZE = 100;\nconst PAGE_SIZES = [25, 50, 100, 250, 500];\n\nexport function TableEditor({\n table,\n dialect: _dialect,\n initialFilters,\n onNavigateToRow,\n}: TableEditorProps) {\n // ─── Persisted view state ──────────────────────────────────────────────\n const persisted = useMemo(() => loadGridState(table), [table]);\n\n const [page, setPage] = useState(1);\n const [pageSize, setPageSize] = useState(\n persisted.pageSize ?? DEFAULT_PAGE_SIZE,\n );\n const [sort, setSort] = useState<DbAdminSort[]>(persisted.sort ?? []);\n const [filters, setFilters] = useState<DbAdminFilter[]>(\n initialFilters ?? persisted.filters ?? [],\n );\n const [columnWidths, setColumnWidths] = useState<Record<string, number>>(\n persisted.columnWidths ?? {},\n );\n const [selectedPks, setSelectedPks] = useState<Set<string>>(new Set());\n const [active, setActive] = useState<ActiveCell | null>(null);\n\n // Reset transient state when switching tables.\n useEffect(() => {\n const p = loadGridState(table);\n setPage(1);\n setPageSize(p.pageSize ?? DEFAULT_PAGE_SIZE);\n setSort(p.sort ?? []);\n setFilters(initialFilters ?? p.filters ?? []);\n setColumnWidths(p.columnWidths ?? {});\n setSelectedPks(new Set());\n setActive(null);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [table]);\n\n // Persist view state.\n useEffect(() => {\n saveGridState(table, { columnWidths, sort, filters, pageSize });\n }, [table, columnWidths, sort, filters, pageSize]);\n\n // ─── Data ────────────────────────────────────────────────────────────────\n const schemaState = useTableSchema(table);\n const rowsReq = useMemo(\n () => ({ page, pageSize, sort, filters }),\n [page, pageSize, sort, filters],\n );\n const rowsState = useTableRows(table, rowsReq);\n\n const schema = schemaState.data;\n const changeset = useChangeset(schema);\n\n // ─── Toolbar UI state ──────────────────────────────────────────────────\n const [panel, setPanel] = useState<{\n mode: RowSidePanelMode;\n pk?: string;\n } | null>(null);\n const [confirmDelete, setConfirmDelete] = useState(false);\n const [previewSql, setPreviewSql] = useState<string[] | null>(null);\n const [committing, setCommitting] = useState(false);\n const [commitError, setCommitError] = useState<string | null>(null);\n const [toast, setToast] = useState<string | null>(null);\n\n const showToast = useCallback((msg: string) => {\n setToast(msg);\n window.setTimeout(() => setToast(null), 2500);\n }, []);\n\n // ─── Original rows map (pk → fetched row) ──────────────────────────────\n const originalRows = useMemo(() => {\n const map = new Map<string, Record<string, unknown>>();\n for (const row of rowsState.data?.rows ?? []) {\n map.set(pkStringFor(schema, row), row);\n }\n return map;\n }, [rowsState.data, schema]);\n\n // ─── Build grid rows with staged edits applied ──────────────────────────\n const gridRows = useMemo<GridRow[]>(() => {\n const out: GridRow[] = [];\n // New rows first (top of grid, like Supabase).\n for (const nr of changeset.newRows) {\n out.push({\n pk: `new:${nr._localId}`,\n localId: nr._localId,\n isNew: true,\n values: { ...nr.values },\n });\n }\n for (const row of rowsState.data?.rows ?? []) {\n const pk = pkStringFor(schema, row);\n const staged = changeset.edits.get(pk);\n out.push({\n pk,\n values: staged ? { ...row, ...staged } : row,\n isDeleted: changeset.deletedKeys.has(pk),\n });\n }\n return out;\n }, [\n rowsState.data,\n schema,\n changeset.newRows,\n changeset.edits,\n changeset.deletedKeys,\n ]);\n\n // ─── Cell commit routing (existing rows vs new rows) ────────────────────\n const onCellCommit = useCallback(\n (row: GridRow, col: string, value: unknown) => {\n if (row.isNew && row.localId) {\n changeset.setNewRowCell(row.localId, col, value);\n } else {\n changeset.setCell(row.pk, col, value);\n }\n },\n [changeset],\n );\n\n const isCellDirty = useCallback(\n (row: GridRow, col: string) => {\n if (row.isNew) return true;\n return changeset.isCellDirty(row.pk, col);\n },\n [changeset],\n );\n\n const onToggleDelete = useCallback(\n (row: GridRow) => {\n if (row.isNew && row.localId) {\n changeset.removeNewRow(row.localId);\n return;\n }\n changeset.deleteRows([row.pk]);\n },\n [changeset],\n );\n\n // ─── FK navigation ───────────────────────────────────────────────────────\n const onFkNavigate = useCallback(\n (fk: DbAdminForeignKey, value: unknown) => {\n onNavigateToRow(fk.refTable, [{ column: fk.refColumn, op: \"eq\", value }]);\n },\n [onNavigateToRow],\n );\n\n // ─── Commit / preview ──────────────────────────────────────────────────\n const runCommit = useCallback(\n async (dryRun: boolean) => {\n const mutation = changeset.buildMutation(originalRows, dryRun);\n if (!mutation.inserts && !mutation.updates && !mutation.deletes) {\n return null;\n }\n return mutateTable(table, mutation);\n },\n [changeset, originalRows, table],\n );\n\n const handlePreview = useCallback(async () => {\n setCommitError(null);\n try {\n const res = await runCommit(true);\n setPreviewSql(res ? res.sql : []);\n } catch (err) {\n setCommitError(err instanceof Error ? err.message : String(err));\n }\n }, [runCommit]);\n\n const handleCommit = useCallback(async () => {\n const hasDeletes = changeset.deletedKeys.size > 0;\n if (hasDeletes && !confirmDelete) {\n setConfirmDelete(true);\n return;\n }\n setCommitting(true);\n setCommitError(null);\n try {\n const res: DbAdminMutationResult | null = await runCommit(false);\n changeset.discardAll();\n setSelectedPks(new Set());\n setConfirmDelete(false);\n rowsState.refetch();\n schemaState.refetch();\n if (res) {\n const parts: string[] = [];\n if (res.inserted) parts.push(`${res.inserted} inserted`);\n if (res.updated) parts.push(`${res.updated} updated`);\n if (res.deleted) parts.push(`${res.deleted} deleted`);\n showToast(parts.length ? parts.join(\", \") : \"No changes\");\n }\n } catch (err) {\n setCommitError(err instanceof Error ? err.message : String(err));\n } finally {\n setCommitting(false);\n }\n }, [changeset, confirmDelete, runCommit, rowsState, schemaState, showToast]);\n\n // ─── Cmd/Ctrl+S to commit ──────────────────────────────────────────────\n const commitRef = useRef(handleCommit);\n commitRef.current = handleCommit;\n useEffect(() => {\n const onKey = (e: KeyboardEvent) => {\n if (\n (e.metaKey || e.ctrlKey) &&\n typeof e.key === \"string\" &&\n e.key.toLowerCase() === \"s\"\n ) {\n e.preventDefault();\n if (changeset.isDirty) void commitRef.current();\n }\n };\n window.addEventListener(\"keydown\", onKey);\n return () => window.removeEventListener(\"keydown\", onKey);\n }, [changeset.isDirty]);\n\n // ─── Bulk delete from selection ────────────────────────────────────────\n const onBulkDelete = useCallback(() => {\n const pks = [...selectedPks].filter((pk) => !pk.startsWith(\"new:\"));\n changeset.deleteRows(pks);\n setSelectedPks(new Set());\n }, [selectedPks, changeset]);\n\n // ─── Render ──────────────────────────────────────────────────────────────\n const total = rowsState.data?.total ?? schema?.rowCount ?? 0;\n const totalPages = Math.max(1, Math.ceil(total / pageSize));\n\n if (schemaState.error) {\n return (\n <div className=\"flex h-full items-center justify-center p-8 text-sm text-destructive\">\n <IconAlertTriangle className=\"mr-2 h-4 w-4\" />\n {schemaState.error.message}\n </div>\n );\n }\n\n if (!schema) {\n return (\n <div className=\"flex h-full items-center justify-center p-8 text-sm text-muted-foreground\">\n <IconLoader2 className=\"mr-2 h-4 w-4 animate-spin\" />\n Loading {table}…\n </div>\n );\n }\n\n const noPk = schema.primaryKey.length === 0;\n\n return (\n <div className=\"flex h-full min-h-0 flex-col\">\n {/* Toolbar */}\n <div className=\"flex flex-col gap-2 border-b border-border px-3 py-2\">\n <div className=\"flex flex-wrap items-center gap-2\">\n <div className=\"flex items-baseline gap-2\">\n <span className=\"text-sm font-semibold text-foreground\">\n {table}\n </span>\n <span className=\"text-xs text-muted-foreground\">\n {total.toLocaleString()} rows\n </span>\n {schema.type === \"view\" && (\n <span className=\"rounded bg-muted px-1.5 py-0.5 text-[10px] text-muted-foreground\">\n view\n </span>\n )}\n </div>\n\n <div className=\"ml-auto flex items-center gap-1.5\">\n <ToolbarButton\n icon={<IconRefresh className=\"h-3.5 w-3.5\" />}\n label=\"Refresh\"\n onClick={() => {\n rowsState.refetch();\n schemaState.refetch();\n }}\n />\n {!noPk && schema.type === \"table\" && (\n <ToolbarButton\n icon={<IconPlus className=\"h-3.5 w-3.5\" />}\n label=\"Insert\"\n onClick={() => setPanel({ mode: \"insert\" })}\n primary\n />\n )}\n </div>\n </div>\n\n {/* Filters */}\n <div className=\"flex items-center gap-2\">\n <IconFilter className=\"h-3.5 w-3.5 shrink-0 text-muted-foreground\" />\n <FilterBar\n columns={schema.columns}\n filters={filters}\n onChange={(f) => {\n setFilters(f);\n setPage(1);\n }}\n />\n </div>\n\n {/* No-PK warning */}\n {noPk && schema.type === \"table\" && (\n <div className=\"flex items-center gap-1.5 rounded-md bg-amber-500/10 px-2 py-1 text-[11px] text-amber-600 dark:text-amber-400\">\n <IconKeyOff className=\"h-3.5 w-3.5\" />\n This table has no primary key — editing and row deletion are\n disabled.\n </div>\n )}\n\n {/* Selection / changeset bar */}\n {(selectedPks.size > 0 || changeset.isDirty) && (\n <div className=\"flex flex-wrap items-center gap-2\">\n {selectedPks.size > 0 && (\n <>\n <span className=\"text-xs text-muted-foreground\">\n {selectedPks.size} selected\n </span>\n {!noPk && (\n <button\n type=\"button\"\n onClick={onBulkDelete}\n className=\"inline-flex items-center gap-1 rounded-md border border-border px-2 py-1 text-xs text-destructive hover:bg-destructive/10\"\n >\n <IconTrash className=\"h-3.5 w-3.5\" />\n Delete selected\n </button>\n )}\n <span className=\"h-4 w-px bg-border\" />\n </>\n )}\n\n {changeset.isDirty && (\n <>\n <span className=\"inline-flex items-center gap-1 rounded-md bg-amber-500/15 px-2 py-1 text-xs font-medium text-amber-600 dark:text-amber-400\">\n {changeset.pendingCount} pending change\n {changeset.pendingCount === 1 ? \"\" : \"s\"}\n </span>\n <button\n type=\"button\"\n onClick={changeset.discardAll}\n className=\"inline-flex items-center gap-1 rounded-md border border-border px-2 py-1 text-xs text-muted-foreground hover:text-foreground\"\n >\n <IconArrowBackUp className=\"h-3.5 w-3.5\" />\n Discard\n </button>\n <PreviewSqlButton\n onPreview={handlePreview}\n sql={previewSql}\n onClear={() => setPreviewSql(null)}\n error={commitError}\n />\n <button\n type=\"button\"\n onClick={() => void handleCommit()}\n disabled={committing}\n className=\"inline-flex items-center gap-1 rounded-md bg-primary px-2.5 py-1 text-xs font-medium text-primary-foreground hover:bg-primary/90 disabled:opacity-60\"\n >\n {committing ? (\n <IconLoader2 className=\"h-3.5 w-3.5 animate-spin\" />\n ) : (\n <IconDeviceFloppy className=\"h-3.5 w-3.5\" />\n )}\n Commit\n </button>\n </>\n )}\n </div>\n )}\n\n {commitError && !previewSql && (\n <div className=\"flex items-center gap-1.5 rounded-md bg-destructive/10 px-2 py-1 text-[11px] text-destructive\">\n <IconAlertTriangle className=\"h-3.5 w-3.5\" />\n {commitError}\n </div>\n )}\n </div>\n\n {/* Grid */}\n <DataGrid\n schema={schema}\n rows={gridRows}\n isLoading={rowsState.isLoading}\n pageSize={pageSize}\n sort={sort}\n onSortChange={(s) => {\n setSort(s);\n setPage(1);\n }}\n selectedPks={selectedPks}\n onSelectionChange={setSelectedPks}\n columnWidths={columnWidths}\n onColumnWidthsChange={setColumnWidths}\n active={active}\n onActiveChange={setActive}\n editable={!noPk && schema.type === \"table\"}\n onCellCommit={onCellCommit}\n isCellDirty={isCellDirty}\n onToggleDelete={onToggleDelete}\n onNavigateToRow={onFkNavigate}\n />\n\n {/* Pagination footer */}\n <div className=\"flex items-center justify-between border-t border-border px-3 py-1.5 text-xs text-muted-foreground\">\n <div className=\"flex items-center gap-2\">\n <span>Rows per page</span>\n <select\n value={pageSize}\n onChange={(e) => {\n setPageSize(Number(e.target.value));\n setPage(1);\n }}\n className=\"h-6 rounded border border-border bg-background px-1 text-xs outline-none focus:ring-1 focus:ring-ring\"\n >\n {PAGE_SIZES.map((s) => (\n <option key={s} value={s}>\n {s}\n </option>\n ))}\n </select>\n </div>\n\n <div className=\"flex items-center gap-1\">\n <span className=\"mr-2\">\n Page {page} of {totalPages}\n </span>\n <PagerButton\n disabled={page <= 1}\n onClick={() => setPage(1)}\n icon={<IconChevronsLeft className=\"h-3.5 w-3.5\" />}\n />\n <PagerButton\n disabled={page <= 1}\n onClick={() => setPage((p) => Math.max(1, p - 1))}\n icon={<IconChevronLeft className=\"h-3.5 w-3.5\" />}\n />\n <PagerButton\n disabled={page >= totalPages}\n onClick={() => setPage((p) => Math.min(totalPages, p + 1))}\n icon={<IconChevronRight className=\"h-3.5 w-3.5\" />}\n />\n <PagerButton\n disabled={page >= totalPages}\n onClick={() => setPage(totalPages)}\n icon={<IconChevronsRight className=\"h-3.5 w-3.5\" />}\n />\n </div>\n </div>\n\n {/* Row side panel */}\n {panel && (\n <RowSidePanel\n schema={schema}\n mode={panel.mode}\n row={panel.pk ? originalRows.get(panel.pk) : undefined}\n staged={panel.pk ? changeset.edits.get(panel.pk) : undefined}\n onClose={() => setPanel(null)}\n onSave={(values) => {\n if (panel.mode === \"insert\") {\n changeset.addRow(values);\n } else if (panel.pk) {\n changeset.setCells(panel.pk, values);\n }\n }}\n />\n )}\n\n {/* Destructive commit confirmation */}\n {confirmDelete && (\n <ConfirmModal\n title=\"Commit deletions?\"\n body={`${changeset.deletedKeys.size} row${\n changeset.deletedKeys.size === 1 ? \"\" : \"s\"\n } will be permanently deleted along with any other pending changes. This cannot be undone.`}\n confirmLabel=\"Delete and commit\"\n destructive\n onCancel={() => setConfirmDelete(false)}\n onConfirm={() => void handleCommit()}\n />\n )}\n\n {/* Toast */}\n {toast &&\n typeof document !== \"undefined\" &&\n createPortal(\n <div className=\"fixed bottom-4 right-4 z-[500] flex items-center gap-2 rounded-md border border-border bg-card px-3 py-2 text-xs text-foreground shadow-lg\">\n <IconCheck className=\"h-4 w-4 text-emerald-500\" />\n {toast}\n </div>,\n document.body,\n )}\n </div>\n );\n}\n\n// ─── Small UI atoms ────────────────────────────────────────────────────────\n\nfunction ToolbarButton({\n icon,\n label,\n onClick,\n primary,\n}: {\n icon: React.ReactNode;\n label: string;\n onClick: () => void;\n primary?: boolean;\n}) {\n return (\n <button\n type=\"button\"\n onClick={onClick}\n className={cn(\n \"inline-flex items-center gap-1 rounded-md px-2 py-1 text-xs\",\n primary\n ? \"bg-primary text-primary-foreground hover:bg-primary/90\"\n : \"border border-border text-muted-foreground hover:text-foreground\",\n )}\n >\n {icon}\n {label}\n </button>\n );\n}\n\nfunction PagerButton({\n disabled,\n onClick,\n icon,\n}: {\n disabled: boolean;\n onClick: () => void;\n icon: React.ReactNode;\n}) {\n return (\n <button\n type=\"button\"\n disabled={disabled}\n onClick={onClick}\n className=\"rounded border border-border p-1 text-muted-foreground hover:text-foreground disabled:opacity-40\"\n >\n {icon}\n </button>\n );\n}\n\nfunction PreviewSqlButton({\n onPreview,\n sql,\n onClear,\n error,\n}: {\n onPreview: () => void;\n sql: string[] | null;\n onClear: () => void;\n error: string | null;\n}) {\n return (\n <Popover\n open={sql !== null}\n onOpenChange={(o) => {\n if (!o) onClear();\n }}\n >\n <PopoverTrigger asChild>\n <button\n type=\"button\"\n onClick={onPreview}\n className=\"inline-flex items-center gap-1 rounded-md border border-border px-2 py-1 text-xs text-muted-foreground hover:text-foreground\"\n >\n <IconCode className=\"h-3.5 w-3.5\" />\n Preview SQL\n </button>\n </PopoverTrigger>\n <PopoverContent align=\"end\" className=\"w-[34rem] p-0\">\n <div className=\"border-b border-border px-3 py-2 text-xs font-medium text-foreground\">\n Preview SQL\n </div>\n <div className=\"max-h-80 overflow-auto p-3\">\n {error ? (\n <div className=\"text-xs text-destructive\">{error}</div>\n ) : sql && sql.length > 0 ? (\n <pre className=\"whitespace-pre-wrap break-all font-mono text-[11px] leading-relaxed text-foreground\">\n {sql.join(\";\\n\")}\n </pre>\n ) : (\n <div className=\"text-xs text-muted-foreground\">\n No statements to run.\n </div>\n )}\n </div>\n </PopoverContent>\n </Popover>\n );\n}\n\nfunction ConfirmModal({\n title,\n body,\n confirmLabel,\n destructive,\n onCancel,\n onConfirm,\n}: {\n title: string;\n body: string;\n confirmLabel: string;\n destructive?: boolean;\n onCancel: () => void;\n onConfirm: () => void;\n}) {\n useEffect(() => {\n const onKey = (e: KeyboardEvent) => {\n if (e.key === \"Escape\") onCancel();\n };\n window.addEventListener(\"keydown\", onKey);\n return () => window.removeEventListener(\"keydown\", onKey);\n }, [onCancel]);\n\n if (typeof document === \"undefined\") return null;\n return createPortal(\n <div className=\"fixed inset-0 z-[450] flex items-center justify-center\">\n <div className=\"absolute inset-0 bg-black/40\" onClick={onCancel} />\n <div className=\"relative w-full max-w-sm rounded-lg border border-border bg-card p-4 shadow-xl\">\n <div className=\"mb-1 flex items-center gap-2\">\n {destructive && (\n <IconAlertTriangle className=\"h-4 w-4 text-destructive\" />\n )}\n <h2 className=\"text-sm font-semibold text-foreground\">{title}</h2>\n </div>\n <p className=\"mb-4 text-xs text-muted-foreground\">{body}</p>\n <div className=\"flex justify-end gap-2\">\n <button\n type=\"button\"\n onClick={onCancel}\n className=\"rounded-md px-3 py-1.5 text-xs text-muted-foreground hover:bg-muted hover:text-foreground\"\n >\n Cancel\n </button>\n <button\n type=\"button\"\n onClick={onConfirm}\n className={cn(\n \"rounded-md px-3 py-1.5 text-xs font-medium text-primary-foreground\",\n destructive\n ? \"bg-destructive hover:bg-destructive/90\"\n : \"bg-primary hover:bg-primary/90\",\n )}\n >\n {confirmLabel}\n </button>\n </div>\n </div>\n </div>,\n document.body,\n );\n}\n"]}
|
|
@@ -9,7 +9,7 @@ import type { DbAdminColumn } from "../../db-admin/types.js";
|
|
|
9
9
|
*/
|
|
10
10
|
export type EditorKind = "text" | "number" | "boolean" | "json" | "timestamp" | "enum" | "uuid";
|
|
11
11
|
/** Sentinel meaning "store SQL NULL". */
|
|
12
|
-
export declare const NULL_VALUE:
|
|
12
|
+
export declare const NULL_VALUE: null;
|
|
13
13
|
/**
|
|
14
14
|
* Try to pull allowed enum values out of a column definition.
|
|
15
15
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cell-format.d.ts","sourceRoot":"","sources":["../../../src/client/db-admin/cell-format.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D;;;;;;;GAOG;AAEH,MAAM,MAAM,UAAU,GAClB,MAAM,GACN,QAAQ,GACR,SAAS,GACT,MAAM,GACN,WAAW,GACX,MAAM,GACN,MAAM,CAAC;AAEX,yCAAyC;AACzC,eAAO,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"cell-format.d.ts","sourceRoot":"","sources":["../../../src/client/db-admin/cell-format.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D;;;;;;;GAOG;AAEH,MAAM,MAAM,UAAU,GAClB,MAAM,GACN,QAAQ,GACR,SAAS,GACT,MAAM,GACN,WAAW,GACX,MAAM,GACN,MAAM,CAAC;AAEX,yCAAyC;AACzC,eAAO,MAAM,UAAU,MAAO,CAAC;AAkC/B;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,EAAE,GAAG,IAAI,CAkBnE;AAED,iDAAiD;AACjD,wBAAgB,eAAe,CAAC,GAAG,EAAE,aAAa,GAAG,UAAU,CAW9D;AAED,oEAAoE;AACpE,wBAAgB,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAE9C;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,UAAU,GACf;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAenC;AAED,iDAAiD;AACjD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAaxD;AAED,sDAAsD;AACtD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAcvD;AAED,yEAAyE;AACzE,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CActD;AAED,0EAA0E;AAC1E,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,GAAG,MAAM,CAM1E;AAED,qBAAa,UAAW,SAAQ,KAAK;CAAG;AAExC;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,UAAU,EAChB,IAAI,GAAE;IAAE,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAAO,GACxC,OAAO,CAyCT;AAED,6DAA6D;AAC7D,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,GAAG,IAAI,CAInE"}
|
|
@@ -20,5 +20,5 @@ export interface DevOverlayProps {
|
|
|
20
20
|
open?: boolean;
|
|
21
21
|
onOpenChange?: (open: boolean) => void;
|
|
22
22
|
}
|
|
23
|
-
export declare function DevOverlay({ open, onOpenChange }?: DevOverlayProps): import("react/jsx-runtime").JSX.Element;
|
|
23
|
+
export declare function DevOverlay({ open, onOpenChange }?: DevOverlayProps): import("react/jsx-runtime").JSX.Element | null;
|
|
24
24
|
//# sourceMappingURL=DevOverlay.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DevOverlay.d.ts","sourceRoot":"","sources":["../../../src/client/dev-overlay/DevOverlay.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AA0BH,OAAO,eAAe,CAAC;AAUvB,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACxC;AAED,wBAAgB,UAAU,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,GAAE,eAAoB,
|
|
1
|
+
{"version":3,"file":"DevOverlay.d.ts","sourceRoot":"","sources":["../../../src/client/dev-overlay/DevOverlay.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AA0BH,OAAO,eAAe,CAAC;AAUvB,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACxC;AAED,wBAAgB,UAAU,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,GAAE,eAAoB,kDAqCtE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/editor/index.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/editor/index.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAC","sourcesContent":["export * from \"../rich-markdown-editor/index.js\";\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-format.d.ts","sourceRoot":"","sources":["../../src/client/error-format.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,0BAA0B,qCAAqC,CAAC;AAK7E,eAAO,MAAM,oBAAoB,0BAA0B,CAAC;AAY5D,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,MAAM,GACjB,MAAM,
|
|
1
|
+
{"version":3,"file":"error-format.d.ts","sourceRoot":"","sources":["../../src/client/error-format.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,0BAA0B,qCAAqC,CAAC;AAK7E,eAAO,MAAM,oBAAoB,0BAA0B,CAAC;AAY5D,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,MAAM,GACjB,MAAM,CAqBR;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,mBAAmB,CA4C5E"}
|
|
@@ -36,6 +36,10 @@ export function formatChatErrorText(errorMessage, upgradeUrl, errorCode) {
|
|
|
36
36
|
if (errorCode === "builder_gateway_error") {
|
|
37
37
|
return `Error: ${normalized.message}\n\n[Start new chat](${NEW_CHAT_ACTION_HREF})`;
|
|
38
38
|
}
|
|
39
|
+
if (errorCode === "context_length_exceeded" ||
|
|
40
|
+
errorCode === "input_too_long") {
|
|
41
|
+
return `Error: ${normalized.message}\n\n[Start new chat](${NEW_CHAT_ACTION_HREF})`;
|
|
42
|
+
}
|
|
39
43
|
if (!upgradeUrl || !isSafeUpgradeUrl(upgradeUrl)) {
|
|
40
44
|
return `Error: ${normalized.message}`;
|
|
41
45
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error-format.js","sourceRoot":"","sources":["../../src/client/error-format.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Append a Builder CTA markdown link to gateway errors that users can fix\n * outside the app. Used by both\n * chat SSE consumers (`sse-event-processor.ts` and `useProductionAgent.ts`)\n * to keep the copy in lockstep.\n *\n * `upgradeUrl` comes from the gateway response body and ends up interpolated\n * into markdown, so we validate it's a plain https URL with no characters\n * that would escape the `[...](url)` link target. Only `)` and whitespace\n * terminate the link target — `(`, `<`, `>` are fine inside it — so the\n * regex stays narrow; the gateway may emit URLs containing `(`\n * (e.g. `?ref=Acme%20(staging)`) and we don't want to reject them.\n */\nexport const BUILDER_SPACE_SETTINGS_URL = \"https://builder.io/account/space\";\n\n// Pseudo-href used to mark an in-app \"Start new chat\" CTA inside the markdown\n// error message. The chat renderer intercepts this href and renders a button\n// that dispatches the `agent-native:new-chat` CustomEvent instead of navigating.\nexport const NEW_CHAT_ACTION_HREF = \"agent-native:new-chat\";\n\nfunction isSafeUpgradeUrl(url: string): boolean {\n try {\n const parsed = new URL(url);\n if (parsed.protocol !== \"https:\") return false;\n return !/[\\s)]/.test(url);\n } catch {\n return false;\n }\n}\n\nexport function formatChatErrorText(\n errorMessage: string,\n upgradeUrl?: string,\n errorCode?: string,\n): string {\n const normalized = normalizeChatError(errorMessage);\n if (\n errorCode === \"gateway_not_enabled\" ||\n /space has not enabled the LLM gateway/i.test(normalized.message)\n ) {\n return `Error: ${normalized.message}\\n\\n[Open Builder space settings](${BUILDER_SPACE_SETTINGS_URL})`;\n }\n if (errorCode === \"builder_gateway_error\") {\n return `Error: ${normalized.message}\\n\\n[Start new chat](${NEW_CHAT_ACTION_HREF})`;\n }\n if (!upgradeUrl || !isSafeUpgradeUrl(upgradeUrl)) {\n return `Error: ${normalized.message}`;\n }\n return `Error: ${normalized.message}\\n\\n[Upgrade at builder.io](${upgradeUrl})`;\n}\n\nexport interface NormalizedChatError {\n message: string;\n details?: string;\n}\n\nexport function normalizeChatError(errorMessage: string): NormalizedChatError {\n const raw = String(errorMessage || \"Unknown error\");\n const looksHtml = /<html[\\s>]|<body[\\s>]|<head[\\s>]/i.test(raw);\n const text = looksHtml ? htmlToText(raw) : raw.trim();\n\n if (/^Gateway error \\(no detail; raw event:/i.test(text)) {\n // The previous copy promised auto-recovery and suggested switching models,\n // but neither helps for this code: the server already retried once and\n // the client deliberately skips auto-continuation\n // (see `builder_gateway_error` in sse-event-processor.ts). The error is\n // almost always upstream, so retrying the same conversation with a\n // different model lands on the same wall.\n return {\n message:\n \"The model gateway returned no error details and the chat couldn't recover. Wait a moment and retry, or start a new chat if it keeps happening.\",\n details: text,\n };\n }\n\n if (/inactivity timeout/i.test(text)) {\n return {\n message:\n \"The agent connection timed out before it could finish. You can continue from the partial work or retry.\",\n details: text,\n };\n }\n\n if (/Invalid request body:\\s*tools\\.\\d+\\.input_schema\\.type/i.test(text)) {\n return {\n message:\n \"A tool schema was invalid, so the model rejected the request before it started. The invalid tool can be skipped and the request retried.\",\n details: text,\n };\n }\n\n if (looksHtml) {\n return {\n message:\n text.slice(0, 240) || \"The provider returned an HTML error page.\",\n details: text,\n };\n }\n\n return { message: text };\n}\n\nfunction htmlToText(html: string): string {\n return html\n .replace(/<script[\\s\\S]*?<\\/script>/gi, \" \")\n .replace(/<style[\\s\\S]*?<\\/style>/gi, \" \")\n .replace(/<br\\s*\\/?>/gi, \"\\n\")\n .replace(/<\\/(p|div|h1|h2|h3|li|tr)>/gi, \"\\n\")\n .replace(/<[^>]+>/g, \" \")\n .replace(/ /gi, \" \")\n .replace(/</gi, \"<\")\n .replace(/>/gi, \">\")\n .replace(/&/gi, \"&\")\n .replace(/"/gi, '\"')\n .replace(/'/gi, \"'\")\n .replace(/[ \\t]+/g, \" \")\n .replace(/\\n\\s+/g, \"\\n\")\n .replace(/\\n{3,}/g, \"\\n\\n\")\n .trim();\n}\n"]}
|
|
1
|
+
{"version":3,"file":"error-format.js","sourceRoot":"","sources":["../../src/client/error-format.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Append a Builder CTA markdown link to gateway errors that users can fix\n * outside the app. Used by both\n * chat SSE consumers (`sse-event-processor.ts` and `useProductionAgent.ts`)\n * to keep the copy in lockstep.\n *\n * `upgradeUrl` comes from the gateway response body and ends up interpolated\n * into markdown, so we validate it's a plain https URL with no characters\n * that would escape the `[...](url)` link target. Only `)` and whitespace\n * terminate the link target — `(`, `<`, `>` are fine inside it — so the\n * regex stays narrow; the gateway may emit URLs containing `(`\n * (e.g. `?ref=Acme%20(staging)`) and we don't want to reject them.\n */\nexport const BUILDER_SPACE_SETTINGS_URL = \"https://builder.io/account/space\";\n\n// Pseudo-href used to mark an in-app \"Start new chat\" CTA inside the markdown\n// error message. The chat renderer intercepts this href and renders a button\n// that dispatches the `agent-native:new-chat` CustomEvent instead of navigating.\nexport const NEW_CHAT_ACTION_HREF = \"agent-native:new-chat\";\n\nfunction isSafeUpgradeUrl(url: string): boolean {\n try {\n const parsed = new URL(url);\n if (parsed.protocol !== \"https:\") return false;\n return !/[\\s)]/.test(url);\n } catch {\n return false;\n }\n}\n\nexport function formatChatErrorText(\n errorMessage: string,\n upgradeUrl?: string,\n errorCode?: string,\n): string {\n const normalized = normalizeChatError(errorMessage);\n if (\n errorCode === \"gateway_not_enabled\" ||\n /space has not enabled the LLM gateway/i.test(normalized.message)\n ) {\n return `Error: ${normalized.message}\\n\\n[Open Builder space settings](${BUILDER_SPACE_SETTINGS_URL})`;\n }\n if (errorCode === \"builder_gateway_error\") {\n return `Error: ${normalized.message}\\n\\n[Start new chat](${NEW_CHAT_ACTION_HREF})`;\n }\n if (\n errorCode === \"context_length_exceeded\" ||\n errorCode === \"input_too_long\"\n ) {\n return `Error: ${normalized.message}\\n\\n[Start new chat](${NEW_CHAT_ACTION_HREF})`;\n }\n if (!upgradeUrl || !isSafeUpgradeUrl(upgradeUrl)) {\n return `Error: ${normalized.message}`;\n }\n return `Error: ${normalized.message}\\n\\n[Upgrade at builder.io](${upgradeUrl})`;\n}\n\nexport interface NormalizedChatError {\n message: string;\n details?: string;\n}\n\nexport function normalizeChatError(errorMessage: string): NormalizedChatError {\n const raw = String(errorMessage || \"Unknown error\");\n const looksHtml = /<html[\\s>]|<body[\\s>]|<head[\\s>]/i.test(raw);\n const text = looksHtml ? htmlToText(raw) : raw.trim();\n\n if (/^Gateway error \\(no detail; raw event:/i.test(text)) {\n // The previous copy promised auto-recovery and suggested switching models,\n // but neither helps for this code: the server already retried once and\n // the client deliberately skips auto-continuation\n // (see `builder_gateway_error` in sse-event-processor.ts). The error is\n // almost always upstream, so retrying the same conversation with a\n // different model lands on the same wall.\n return {\n message:\n \"The model gateway returned no error details and the chat couldn't recover. Wait a moment and retry, or start a new chat if it keeps happening.\",\n details: text,\n };\n }\n\n if (/inactivity timeout/i.test(text)) {\n return {\n message:\n \"The agent connection timed out before it could finish. You can continue from the partial work or retry.\",\n details: text,\n };\n }\n\n if (/Invalid request body:\\s*tools\\.\\d+\\.input_schema\\.type/i.test(text)) {\n return {\n message:\n \"A tool schema was invalid, so the model rejected the request before it started. The invalid tool can be skipped and the request retried.\",\n details: text,\n };\n }\n\n if (looksHtml) {\n return {\n message:\n text.slice(0, 240) || \"The provider returned an HTML error page.\",\n details: text,\n };\n }\n\n return { message: text };\n}\n\nfunction htmlToText(html: string): string {\n return html\n .replace(/<script[\\s\\S]*?<\\/script>/gi, \" \")\n .replace(/<style[\\s\\S]*?<\\/style>/gi, \" \")\n .replace(/<br\\s*\\/?>/gi, \"\\n\")\n .replace(/<\\/(p|div|h1|h2|h3|li|tr)>/gi, \"\\n\")\n .replace(/<[^>]+>/g, \" \")\n .replace(/ /gi, \" \")\n .replace(/</gi, \"<\")\n .replace(/>/gi, \">\")\n .replace(/&/gi, \"&\")\n .replace(/"/gi, '\"')\n .replace(/'/gi, \"'\")\n .replace(/[ \\t]+/g, \" \")\n .replace(/\\n\\s+/g, \"\\n\")\n .replace(/\\n{3,}/g, \"\\n\\n\")\n .trim();\n}\n"]}
|
|
@@ -53,6 +53,6 @@ interface AgentNativeExtensionStorageRequest {
|
|
|
53
53
|
options?: AgentNativeExtensionStorageOptions;
|
|
54
54
|
}
|
|
55
55
|
export declare const AgentNativeExtensionFrame: React.ForwardRefExoticComponent<AgentNativeExtensionFrameProps & React.RefAttributes<HTMLIFrameElement>>;
|
|
56
|
-
export declare function AgentNativeExtensionSlot({ id, extensions, context, actions, getContext, commands, allowedActions, allowedCommands, auth, session, storage, allowedStorageScopes, storageNamespace, storageContext, themeCss, isDark, autoHeight, initialHeight, onBridgeEvent, onBridgeReady, onStorageError, className, extensionClassName, extensionStyle, empty, showEmptyAffordance, ...iframeProps }: AgentNativeExtensionSlotProps): import("react/jsx-runtime").JSX.Element;
|
|
56
|
+
export declare function AgentNativeExtensionSlot({ id, extensions, context, actions, getContext, commands, allowedActions, allowedCommands, auth, session, storage, allowedStorageScopes, storageNamespace, storageContext, themeCss, isDark, autoHeight, initialHeight, onBridgeEvent, onBridgeReady, onStorageError, className, extensionClassName, extensionStyle, empty, showEmptyAffordance, ...iframeProps }: AgentNativeExtensionSlotProps): import("react/jsx-runtime").JSX.Element | null;
|
|
57
57
|
export {};
|
|
58
58
|
//# sourceMappingURL=AgentNativeExtensionFrame.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentNativeExtensionFrame.d.ts","sourceRoot":"","sources":["../../../src/client/extensions/AgentNativeExtensionFrame.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"AgentNativeExtensionFrame.d.ts","sourceRoot":"","sources":["../../../src/client/extensions/AgentNativeExtensionFrame.tsx"],"names":[],"mappings":"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"}
|
|
@@ -16,5 +16,5 @@ export interface EmbeddedExtensionProps {
|
|
|
16
16
|
* `<ExtensionSlot>`. Different from `<ExtensionViewer>` (which is full-page with a
|
|
17
17
|
* toolbar): no header, sized to content, receives a `slotContext`.
|
|
18
18
|
*/
|
|
19
|
-
export declare function EmbeddedExtension({ extensionId, slotId, context, className, initialHeight, }: EmbeddedExtensionProps): import("react/jsx-runtime").JSX.Element;
|
|
19
|
+
export declare function EmbeddedExtension({ extensionId, slotId, context, className, initialHeight, }: EmbeddedExtensionProps): import("react/jsx-runtime").JSX.Element | null;
|
|
20
20
|
//# sourceMappingURL=EmbeddedExtension.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EmbeddedExtension.d.ts","sourceRoot":"","sources":["../../../src/client/extensions/EmbeddedExtension.tsx"],"names":[],"mappings":"AA0CA,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB;2CACuC;IACvC,MAAM,EAAE,MAAM,CAAC;IACf;iDAC6C;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACzC,0DAA0D;IAC1D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,WAAW,EACX,MAAM,EACN,OAAO,EACP,SAAS,EACT,aAAkB,GACnB,EAAE,sBAAsB,
|
|
1
|
+
{"version":3,"file":"EmbeddedExtension.d.ts","sourceRoot":"","sources":["../../../src/client/extensions/EmbeddedExtension.tsx"],"names":[],"mappings":"AA0CA,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB;2CACuC;IACvC,MAAM,EAAE,MAAM,CAAC;IACf;iDAC6C;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACzC,0DAA0D;IAC1D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kEAAkE;IAClE,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,WAAW,EACX,MAAM,EACN,OAAO,EACP,SAAS,EACT,aAAkB,GACnB,EAAE,sBAAsB,kDAmOxB"}
|
|
@@ -23,5 +23,5 @@ export interface ExtensionSlotProps {
|
|
|
23
23
|
* showEmptyAffordance
|
|
24
24
|
* />
|
|
25
25
|
*/
|
|
26
|
-
export declare function ExtensionSlot({ id, context, showEmptyAffordance, className, toolClassName, }: ExtensionSlotProps): import("react/jsx-runtime").JSX.Element;
|
|
26
|
+
export declare function ExtensionSlot({ id, context, showEmptyAffordance, className, toolClassName, }: ExtensionSlotProps): import("react/jsx-runtime").JSX.Element | null;
|
|
27
27
|
//# sourceMappingURL=ExtensionSlot.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExtensionSlot.d.ts","sourceRoot":"","sources":["../../../src/client/extensions/ExtensionSlot.tsx"],"names":[],"mappings":"AAqCA,MAAM,WAAW,kBAAkB;IACjC,sEAAsE;IACtE,EAAE,EAAE,MAAM,CAAC;IACX,iEAAiE;IACjE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACzC,iFAAiF;IACjF,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4DAA4D;IAC5D,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CAAC,EAC5B,EAAE,EACF,OAAO,EACP,mBAAmB,EACnB,SAAS,EACT,aAAa,GACd,EAAE,kBAAkB,
|
|
1
|
+
{"version":3,"file":"ExtensionSlot.d.ts","sourceRoot":"","sources":["../../../src/client/extensions/ExtensionSlot.tsx"],"names":[],"mappings":"AAqCA,MAAM,WAAW,kBAAkB;IACjC,sEAAsE;IACtE,EAAE,EAAE,MAAM,CAAC;IACX,iEAAiE;IACjE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACzC,iFAAiF;IACjF,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4DAA4D;IAC5D,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CAAC,EAC5B,EAAE,EACF,OAAO,EACP,mBAAmB,EACnB,SAAS,EACT,aAAa,GACd,EAAE,kBAAkB,kDAwCpB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare function ExtensionViewerPage(): import("react/jsx-runtime").JSX.Element;
|
|
1
|
+
export declare function ExtensionViewerPage(): import("react/jsx-runtime").JSX.Element | null;
|
|
2
2
|
//# sourceMappingURL=ExtensionViewerPage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExtensionViewerPage.d.ts","sourceRoot":"","sources":["../../../src/client/extensions/ExtensionViewerPage.tsx"],"names":[],"mappings":"AAOA,wBAAgB,mBAAmB,
|
|
1
|
+
{"version":3,"file":"ExtensionViewerPage.d.ts","sourceRoot":"","sources":["../../../src/client/extensions/ExtensionViewerPage.tsx"],"names":[],"mappings":"AAOA,wBAAgB,mBAAmB,mDAuBlC"}
|
|
@@ -140,12 +140,12 @@ export interface UseGuidedQuestionFlowOptions {
|
|
|
140
140
|
buildSkipContext?: () => string;
|
|
141
141
|
}
|
|
142
142
|
export declare function useGuidedQuestionFlow({ stateKey, browserTabId, queryKey, refetchInterval, submitMessage, skipMessage, buildSubmitContext, buildSkipContext, }?: UseGuidedQuestionFlowOptions): {
|
|
143
|
-
payload: GuidedQuestionPayload;
|
|
144
|
-
questions: GuidedQuestion[];
|
|
145
|
-
title: string;
|
|
146
|
-
description: string;
|
|
147
|
-
skipLabel: string;
|
|
148
|
-
submitLabel: string;
|
|
143
|
+
payload: GuidedQuestionPayload | null;
|
|
144
|
+
questions: GuidedQuestion[] | null;
|
|
145
|
+
title: string | undefined;
|
|
146
|
+
description: string | undefined;
|
|
147
|
+
skipLabel: string | undefined;
|
|
148
|
+
submitLabel: string | undefined;
|
|
149
149
|
clear: () => void;
|
|
150
150
|
handleSubmit: (answers: GuidedQuestionAnswers) => void;
|
|
151
151
|
handleSkip: () => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host-bridge.d.ts","sourceRoot":"","sources":["../../src/client/host-bridge.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"host-bridge.d.ts","sourceRoot":"","sources":["../../src/client/host-bridge.ts"],"names":[],"mappings":"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"}
|
|
@@ -600,6 +600,7 @@ function requestFromHost(message, responseType, pick, options = {}) {
|
|
|
600
600
|
finish(() => reject(new Error("Timed out waiting for host response")));
|
|
601
601
|
}, timeoutMs);
|
|
602
602
|
function onMessage(event) {
|
|
603
|
+
// targetWindow is non-null: the null branch returned early above
|
|
603
604
|
if (!isTrustedHostResponse(event, targetWindow, options.hostOrigin)) {
|
|
604
605
|
return;
|
|
605
606
|
}
|
|
@@ -707,6 +708,7 @@ export function onAgentNativeHostInit(handler, options = {}) {
|
|
|
707
708
|
if (!targetWindow)
|
|
708
709
|
return () => { };
|
|
709
710
|
function onMessage(event) {
|
|
711
|
+
// targetWindow is non-null: the null branch returned early above
|
|
710
712
|
if (!isTrustedHostResponse(event, targetWindow, options.hostOrigin)) {
|
|
711
713
|
return;
|
|
712
714
|
}
|