@ottocode/web-sdk 0.1.225 → 0.1.227
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/dist/components/chat/ChatInput.d.ts.map +1 -1
- package/dist/components/chat/FileMentionPopup.d.ts.map +1 -1
- package/dist/components/chat/UnifiedModelSelector.d.ts.map +1 -1
- package/dist/components/index.js +25148 -80
- package/dist/components/index.js.map +180 -1
- package/dist/components/messages/AssistantMessageGroup.d.ts.map +1 -1
- package/dist/components/messages/CompactActivityGroup.d.ts +10 -0
- package/dist/components/messages/CompactActivityGroup.d.ts.map +1 -0
- package/dist/components/messages/MessagePartItem.d.ts.map +1 -1
- package/dist/components/messages/MessageThread.d.ts +1 -0
- package/dist/components/messages/MessageThread.d.ts.map +1 -1
- package/dist/components/messages/MessageThreadContainer.d.ts.map +1 -1
- package/dist/components/messages/compactActivity.d.ts +34 -0
- package/dist/components/messages/compactActivity.d.ts.map +1 -0
- package/dist/components/messages/renderers/EditRenderer.d.ts +1 -1
- package/dist/components/messages/renderers/EditRenderer.d.ts.map +1 -1
- package/dist/components/messages/renderers/ErrorRenderer.d.ts.map +1 -1
- package/dist/components/messages/renderers/index.d.ts.map +1 -1
- package/dist/components/messages/renderers/types.d.ts +3 -1
- package/dist/components/messages/renderers/types.d.ts.map +1 -1
- package/dist/components/onboarding/OnboardingModal.d.ts.map +1 -1
- package/dist/components/onboarding/steps/ProviderSetupStep.d.ts +45 -0
- package/dist/components/onboarding/steps/ProviderSetupStep.d.ts.map +1 -1
- package/dist/components/settings/SettingsSidebar.d.ts.map +1 -1
- package/dist/components/settings/SetuTopupModal.d.ts.map +1 -1
- package/dist/hooks/index.js +4812 -29
- package/dist/hooks/index.js.map +67 -1
- package/dist/hooks/useAuthStatus.d.ts +20 -0
- package/dist/hooks/useAuthStatus.d.ts.map +1 -1
- package/dist/hooks/useConfig.d.ts +2 -0
- package/dist/hooks/useConfig.d.ts.map +1 -1
- package/dist/hooks/useMCP.d.ts +9 -0
- package/dist/hooks/useMCP.d.ts.map +1 -1
- package/dist/hooks/usePreferences.d.ts +1 -0
- package/dist/hooks/usePreferences.d.ts.map +1 -1
- package/dist/hooks/useSessionStream.d.ts.map +1 -1
- package/dist/index.js +25918 -7
- package/dist/index.js.map +185 -1
- package/dist/lib/api-client/approval.d.ts.map +1 -1
- package/dist/lib/api-client/auth.d.ts +49 -0
- package/dist/lib/api-client/auth.d.ts.map +1 -1
- package/dist/lib/api-client/config.d.ts +2 -0
- package/dist/lib/api-client/config.d.ts.map +1 -1
- package/dist/lib/api-client/index.d.ts +51 -0
- package/dist/lib/api-client/index.d.ts.map +1 -1
- package/dist/lib/index.js +1007 -5
- package/dist/lib/index.js.map +22 -1
- package/dist/stores/index.js +693 -22
- package/dist/stores/index.js.map +30 -1
- package/dist/stores/onboardingStore.d.ts +2 -0
- package/dist/stores/onboardingStore.d.ts.map +1 -1
- package/dist/stores/toastStore.d.ts +1 -0
- package/dist/stores/toastStore.d.ts.map +1 -1
- package/dist/types/api.d.ts +2 -0
- package/dist/types/api.d.ts.map +1 -1
- package/dist/types/api.js +2 -2
- package/dist/types/api.js.map +9 -1
- package/package.json +4 -4
- package/dist/assets/provider-logos.js +0 -43
- package/dist/assets/provider-logos.js.map +0 -1
- package/dist/components/branch/BranchModal.js +0 -45
- package/dist/components/branch/BranchModal.js.map +0 -1
- package/dist/components/chat/ChatInput.js +0 -262
- package/dist/components/chat/ChatInput.js.map +0 -1
- package/dist/components/chat/ChatInputContainer.js +0 -295
- package/dist/components/chat/ChatInputContainer.js.map +0 -1
- package/dist/components/chat/ChatInputKeyHandler.js +0 -75
- package/dist/components/chat/ChatInputKeyHandler.js.map +0 -1
- package/dist/components/chat/CommandSuggestionsPopup.js +0 -45
- package/dist/components/chat/CommandSuggestionsPopup.js.map +0 -1
- package/dist/components/chat/ConfigModal.js +0 -46
- package/dist/components/chat/ConfigModal.js.map +0 -1
- package/dist/components/chat/ConfigSelector.js +0 -47
- package/dist/components/chat/ConfigSelector.js.map +0 -1
- package/dist/components/chat/FileMentionPopup.js +0 -138
- package/dist/components/chat/FileMentionPopup.js.map +0 -1
- package/dist/components/chat/ShortcutsModal.js +0 -275
- package/dist/components/chat/ShortcutsModal.js.map +0 -1
- package/dist/components/chat/StopButton.js +0 -25
- package/dist/components/chat/StopButton.js.map +0 -1
- package/dist/components/chat/UnifiedAgentSelector.js +0 -107
- package/dist/components/chat/UnifiedAgentSelector.js.map +0 -1
- package/dist/components/chat/UnifiedModelSelector.js +0 -197
- package/dist/components/chat/UnifiedModelSelector.js.map +0 -1
- package/dist/components/common/ProviderLogo.js +0 -30
- package/dist/components/common/ProviderLogo.js.map +0 -1
- package/dist/components/common/StatusIndicator.js +0 -54
- package/dist/components/common/StatusIndicator.js.map +0 -1
- package/dist/components/common/UsageModal.js +0 -55
- package/dist/components/common/UsageModal.js.map +0 -1
- package/dist/components/common/UsageRing.js +0 -22
- package/dist/components/common/UsageRing.js.map +0 -1
- package/dist/components/file-browser/FileBrowserSidebar.js +0 -50
- package/dist/components/file-browser/FileBrowserSidebar.js.map +0 -1
- package/dist/components/file-browser/FileBrowserSidebarToggle.js +0 -12
- package/dist/components/file-browser/FileBrowserSidebarToggle.js.map +0 -1
- package/dist/components/file-browser/FileViewerPanel.js +0 -85
- package/dist/components/file-browser/FileViewerPanel.js.map +0 -1
- package/dist/components/file-browser/QuickFilePicker.js +0 -118
- package/dist/components/file-browser/QuickFilePicker.js.map +0 -1
- package/dist/components/git/GitCommitModal.js +0 -70
- package/dist/components/git/GitCommitModal.js.map +0 -1
- package/dist/components/git/GitDiffPanel.js +0 -60
- package/dist/components/git/GitDiffPanel.js.map +0 -1
- package/dist/components/git/GitDiffViewer.js +0 -224
- package/dist/components/git/GitDiffViewer.js.map +0 -1
- package/dist/components/git/GitFileItem.js +0 -145
- package/dist/components/git/GitFileItem.js.map +0 -1
- package/dist/components/git/GitFileList.js +0 -108
- package/dist/components/git/GitFileList.js.map +0 -1
- package/dist/components/git/GitSidebar.js +0 -156
- package/dist/components/git/GitSidebar.js.map +0 -1
- package/dist/components/git/GitSidebarToggle.js +0 -18
- package/dist/components/git/GitSidebarToggle.js.map +0 -1
- package/dist/components/mcp/AddMCPServerModal.js +0 -166
- package/dist/components/mcp/AddMCPServerModal.js.map +0 -1
- package/dist/components/mcp/MCPSidebar.js +0 -192
- package/dist/components/mcp/MCPSidebar.js.map +0 -1
- package/dist/components/mcp/MCPSidebarToggle.js +0 -14
- package/dist/components/mcp/MCPSidebarToggle.js.map +0 -1
- package/dist/components/mcp/index.js +0 -4
- package/dist/components/mcp/index.js.map +0 -1
- package/dist/components/messages/AssistantMessageGroup.js +0 -176
- package/dist/components/messages/AssistantMessageGroup.js.map +0 -1
- package/dist/components/messages/MessagePartItem.js +0 -362
- package/dist/components/messages/MessagePartItem.js.map +0 -1
- package/dist/components/messages/MessageThread.js +0 -239
- package/dist/components/messages/MessageThread.js.map +0 -1
- package/dist/components/messages/MessageThreadContainer.js +0 -22
- package/dist/components/messages/MessageThreadContainer.js.map +0 -1
- package/dist/components/messages/ToolApprovalCard.js +0 -143
- package/dist/components/messages/ToolApprovalCard.js.map +0 -1
- package/dist/components/messages/TopupApprovalCard.js +0 -52
- package/dist/components/messages/TopupApprovalCard.js.map +0 -1
- package/dist/components/messages/UserMessageGroup.js +0 -132
- package/dist/components/messages/UserMessageGroup.js.map +0 -1
- package/dist/components/messages/renderers/ApplyPatchRenderer.js +0 -55
- package/dist/components/messages/renderers/ApplyPatchRenderer.js.map +0 -1
- package/dist/components/messages/renderers/BashRenderer.js +0 -55
- package/dist/components/messages/renderers/BashRenderer.js.map +0 -1
- package/dist/components/messages/renderers/DatabaseToolRenderer.js +0 -151
- package/dist/components/messages/renderers/DatabaseToolRenderer.js.map +0 -1
- package/dist/components/messages/renderers/DebugRenderer.js +0 -5
- package/dist/components/messages/renderers/DebugRenderer.js.map +0 -1
- package/dist/components/messages/renderers/DiffView.js +0 -206
- package/dist/components/messages/renderers/DiffView.js.map +0 -1
- package/dist/components/messages/renderers/EditRenderer.js +0 -25
- package/dist/components/messages/renderers/EditRenderer.js.map +0 -1
- package/dist/components/messages/renderers/ErrorRenderer.js +0 -157
- package/dist/components/messages/renderers/ErrorRenderer.js.map +0 -1
- package/dist/components/messages/renderers/FinishRenderer.js +0 -7
- package/dist/components/messages/renderers/FinishRenderer.js.map +0 -1
- package/dist/components/messages/renderers/GenericRenderer.js +0 -50
- package/dist/components/messages/renderers/GenericRenderer.js.map +0 -1
- package/dist/components/messages/renderers/GitCommitRenderer.js +0 -21
- package/dist/components/messages/renderers/GitCommitRenderer.js.map +0 -1
- package/dist/components/messages/renderers/GitDiffRenderer.js +0 -34
- package/dist/components/messages/renderers/GitDiffRenderer.js.map +0 -1
- package/dist/components/messages/renderers/GitStatusRenderer.js +0 -60
- package/dist/components/messages/renderers/GitStatusRenderer.js.map +0 -1
- package/dist/components/messages/renderers/ListRenderer.js +0 -28
- package/dist/components/messages/renderers/ListRenderer.js.map +0 -1
- package/dist/components/messages/renderers/LoadMcpToolsRenderer.js +0 -20
- package/dist/components/messages/renderers/LoadMcpToolsRenderer.js.map +0 -1
- package/dist/components/messages/renderers/McpToolRenderer.js +0 -68
- package/dist/components/messages/renderers/McpToolRenderer.js.map +0 -1
- package/dist/components/messages/renderers/ProgressUpdateRenderer.js +0 -9
- package/dist/components/messages/renderers/ProgressUpdateRenderer.js.map +0 -1
- package/dist/components/messages/renderers/ReadRenderer.js +0 -87
- package/dist/components/messages/renderers/ReadRenderer.js.map +0 -1
- package/dist/components/messages/renderers/ReasoningRenderer.js +0 -34
- package/dist/components/messages/renderers/ReasoningRenderer.js.map +0 -1
- package/dist/components/messages/renderers/SearchRenderer.js +0 -52
- package/dist/components/messages/renderers/SearchRenderer.js.map +0 -1
- package/dist/components/messages/renderers/SkillRenderer.js +0 -36
- package/dist/components/messages/renderers/SkillRenderer.js.map +0 -1
- package/dist/components/messages/renderers/TerminalRenderer.js +0 -84
- package/dist/components/messages/renderers/TerminalRenderer.js.map +0 -1
- package/dist/components/messages/renderers/TodosRenderer.js +0 -15
- package/dist/components/messages/renderers/TodosRenderer.js.map +0 -1
- package/dist/components/messages/renderers/ToolErrorDisplay.js +0 -10
- package/dist/components/messages/renderers/ToolErrorDisplay.js.map +0 -1
- package/dist/components/messages/renderers/TreeRenderer.js +0 -33
- package/dist/components/messages/renderers/TreeRenderer.js.map +0 -1
- package/dist/components/messages/renderers/WebSearchRenderer.js +0 -29
- package/dist/components/messages/renderers/WebSearchRenderer.js.map +0 -1
- package/dist/components/messages/renderers/WriteRenderer.js +0 -28
- package/dist/components/messages/renderers/WriteRenderer.js.map +0 -1
- package/dist/components/messages/renderers/index.js +0 -129
- package/dist/components/messages/renderers/index.js.map +0 -1
- package/dist/components/messages/renderers/shared/CopyButton.js +0 -27
- package/dist/components/messages/renderers/shared/CopyButton.js.map +0 -1
- package/dist/components/messages/renderers/shared/ImagePreview.js +0 -14
- package/dist/components/messages/renderers/shared/ImagePreview.js.map +0 -1
- package/dist/components/messages/renderers/shared/ToolContentBox.js +0 -9
- package/dist/components/messages/renderers/shared/ToolContentBox.js.map +0 -1
- package/dist/components/messages/renderers/shared/ToolHeader.js +0 -69
- package/dist/components/messages/renderers/shared/ToolHeader.js.map +0 -1
- package/dist/components/messages/renderers/shared/index.js +0 -5
- package/dist/components/messages/renderers/shared/index.js.map +0 -1
- package/dist/components/messages/renderers/types.js +0 -2
- package/dist/components/messages/renderers/types.js.map +0 -1
- package/dist/components/messages/renderers/utils.js +0 -60
- package/dist/components/messages/renderers/utils.js.map +0 -1
- package/dist/components/onboarding/OnboardingModal.js +0 -22
- package/dist/components/onboarding/OnboardingModal.js.map +0 -1
- package/dist/components/onboarding/index.js +0 -4
- package/dist/components/onboarding/index.js.map +0 -1
- package/dist/components/onboarding/steps/DefaultsStep.js +0 -104
- package/dist/components/onboarding/steps/DefaultsStep.js.map +0 -1
- package/dist/components/onboarding/steps/ProviderSetupStep.js +0 -307
- package/dist/components/onboarding/steps/ProviderSetupStep.js.map +0 -1
- package/dist/components/research/ResearchSidebar.js +0 -288
- package/dist/components/research/ResearchSidebar.js.map +0 -1
- package/dist/components/research/ResearchSidebarToggle.js +0 -15
- package/dist/components/research/ResearchSidebarToggle.js.map +0 -1
- package/dist/components/research/index.js +0 -3
- package/dist/components/research/index.js.map +0 -1
- package/dist/components/session-files/SessionFilesDiffPanel.js +0 -345
- package/dist/components/session-files/SessionFilesDiffPanel.js.map +0 -1
- package/dist/components/session-files/SessionFilesSidebar.js +0 -87
- package/dist/components/session-files/SessionFilesSidebar.js.map +0 -1
- package/dist/components/session-files/SessionFilesSidebarToggle.js +0 -15
- package/dist/components/session-files/SessionFilesSidebarToggle.js.map +0 -1
- package/dist/components/session-files/index.js +0 -4
- package/dist/components/session-files/index.js.map +0 -1
- package/dist/components/sessions/EditableTitle.js +0 -40
- package/dist/components/sessions/EditableTitle.js.map +0 -1
- package/dist/components/sessions/LeanHeader.js +0 -70
- package/dist/components/sessions/LeanHeader.js.map +0 -1
- package/dist/components/sessions/SessionHeader.js +0 -75
- package/dist/components/sessions/SessionHeader.js.map +0 -1
- package/dist/components/sessions/SessionItem.js +0 -28
- package/dist/components/sessions/SessionItem.js.map +0 -1
- package/dist/components/sessions/SessionListContainer.js +0 -86
- package/dist/components/sessions/SessionListContainer.js.map +0 -1
- package/dist/components/settings/SettingsSidebar.js +0 -211
- package/dist/components/settings/SettingsSidebar.js.map +0 -1
- package/dist/components/settings/SettingsSidebarToggle.js +0 -12
- package/dist/components/settings/SettingsSidebarToggle.js.map +0 -1
- package/dist/components/settings/SetuTopupModal.js +0 -306
- package/dist/components/settings/SetuTopupModal.js.map +0 -1
- package/dist/components/skills/SkillViewerPanel.js +0 -89
- package/dist/components/skills/SkillViewerPanel.js.map +0 -1
- package/dist/components/skills/SkillsSidebar.js +0 -59
- package/dist/components/skills/SkillsSidebar.js.map +0 -1
- package/dist/components/skills/SkillsSidebarToggle.js +0 -12
- package/dist/components/skills/SkillsSidebarToggle.js.map +0 -1
- package/dist/components/skills/index.js +0 -4
- package/dist/components/skills/index.js.map +0 -1
- package/dist/components/terminals/TerminalPanelToggle.js +0 -13
- package/dist/components/terminals/TerminalPanelToggle.js.map +0 -1
- package/dist/components/terminals/TerminalTabBar.js +0 -22
- package/dist/components/terminals/TerminalTabBar.js.map +0 -1
- package/dist/components/terminals/TerminalViewer.js +0 -371
- package/dist/components/terminals/TerminalViewer.js.map +0 -1
- package/dist/components/terminals/TerminalsPanel.js +0 -134
- package/dist/components/terminals/TerminalsPanel.js.map +0 -1
- package/dist/components/terminals/index.js +0 -11
- package/dist/components/terminals/index.js.map +0 -1
- package/dist/components/tunnel/TunnelSidebar.js +0 -55
- package/dist/components/tunnel/TunnelSidebar.js.map +0 -1
- package/dist/components/tunnel/TunnelSidebarToggle.js +0 -14
- package/dist/components/tunnel/TunnelSidebarToggle.js.map +0 -1
- package/dist/components/tunnel/index.js +0 -3
- package/dist/components/tunnel/index.js.map +0 -1
- package/dist/components/ui/Button.js +0 -19
- package/dist/components/ui/Button.js.map +0 -1
- package/dist/components/ui/Card.js +0 -7
- package/dist/components/ui/Card.js.map +0 -1
- package/dist/components/ui/ConfirmationDialog.js +0 -72
- package/dist/components/ui/ConfirmationDialog.js.map +0 -1
- package/dist/components/ui/Input.js +0 -7
- package/dist/components/ui/Input.js.map +0 -1
- package/dist/components/ui/Modal.js +0 -51
- package/dist/components/ui/Modal.js.map +0 -1
- package/dist/components/ui/ResizeHandle.js +0 -39
- package/dist/components/ui/ResizeHandle.js.map +0 -1
- package/dist/components/ui/Textarea.js +0 -7
- package/dist/components/ui/Textarea.js.map +0 -1
- package/dist/components/ui/Toaster.js +0 -41
- package/dist/components/ui/Toaster.js.map +0 -1
- package/dist/components/ui/ToolApprovalDialog.js +0 -57
- package/dist/components/ui/ToolApprovalDialog.js.map +0 -1
- package/dist/hooks/useAuthStatus.js +0 -247
- package/dist/hooks/useAuthStatus.js.map +0 -1
- package/dist/hooks/useBranch.js +0 -44
- package/dist/hooks/useBranch.js.map +0 -1
- package/dist/hooks/useCommandSuggestions.js +0 -86
- package/dist/hooks/useCommandSuggestions.js.map +0 -1
- package/dist/hooks/useConfig.js +0 -32
- package/dist/hooks/useConfig.js.map +0 -1
- package/dist/hooks/useFileBrowser.js +0 -30
- package/dist/hooks/useFileBrowser.js.map +0 -1
- package/dist/hooks/useFileMention.js +0 -56
- package/dist/hooks/useFileMention.js.map +0 -1
- package/dist/hooks/useFileUpload.js +0 -317
- package/dist/hooks/useFileUpload.js.map +0 -1
- package/dist/hooks/useFiles.js +0 -15
- package/dist/hooks/useFiles.js.map +0 -1
- package/dist/hooks/useGit.js +0 -149
- package/dist/hooks/useGit.js.map +0 -1
- package/dist/hooks/useImageUpload.js +0 -197
- package/dist/hooks/useImageUpload.js.map +0 -1
- package/dist/hooks/useKeyboardShortcuts.js +0 -249
- package/dist/hooks/useKeyboardShortcuts.js.map +0 -1
- package/dist/hooks/useMCP.js +0 -202
- package/dist/hooks/useMCP.js.map +0 -1
- package/dist/hooks/useMessages.js +0 -26
- package/dist/hooks/useMessages.js.map +0 -1
- package/dist/hooks/usePreferences.js +0 -61
- package/dist/hooks/usePreferences.js.map +0 -1
- package/dist/hooks/useProviderUsage.js +0 -44
- package/dist/hooks/useProviderUsage.js.map +0 -1
- package/dist/hooks/useQueueState.js +0 -31
- package/dist/hooks/useQueueState.js.map +0 -1
- package/dist/hooks/useResearch.js +0 -139
- package/dist/hooks/useResearch.js.map +0 -1
- package/dist/hooks/useSessionFiles.js +0 -15
- package/dist/hooks/useSessionFiles.js.map +0 -1
- package/dist/hooks/useSessionStream.js +0 -516
- package/dist/hooks/useSessionStream.js.map +0 -1
- package/dist/hooks/useSessions.js +0 -83
- package/dist/hooks/useSessions.js.map +0 -1
- package/dist/hooks/useSetuBalance.js +0 -71
- package/dist/hooks/useSetuBalance.js.map +0 -1
- package/dist/hooks/useSetuPayments.js +0 -171
- package/dist/hooks/useSetuPayments.js.map +0 -1
- package/dist/hooks/useShareStatus.js +0 -12
- package/dist/hooks/useShareStatus.js.map +0 -1
- package/dist/hooks/useSkills.js +0 -54
- package/dist/hooks/useSkills.js.map +0 -1
- package/dist/hooks/useTerminals.js +0 -67
- package/dist/hooks/useTerminals.js.map +0 -1
- package/dist/hooks/useTheme.js +0 -57
- package/dist/hooks/useTheme.js.map +0 -1
- package/dist/hooks/useToolApprovalShortcuts.js +0 -88
- package/dist/hooks/useToolApprovalShortcuts.js.map +0 -1
- package/dist/hooks/useTopupCallback.js +0 -74
- package/dist/hooks/useTopupCallback.js.map +0 -1
- package/dist/hooks/useTunnel.js +0 -158
- package/dist/hooks/useTunnel.js.map +0 -1
- package/dist/hooks/useVimMode.js +0 -298
- package/dist/hooks/useVimMode.js.map +0 -1
- package/dist/hooks/useWorkingDirectory.js +0 -34
- package/dist/hooks/useWorkingDirectory.js.map +0 -1
- package/dist/lib/api-client/approval.js +0 -25
- package/dist/lib/api-client/approval.js.map +0 -1
- package/dist/lib/api-client/auth.js +0 -111
- package/dist/lib/api-client/auth.js.map +0 -1
- package/dist/lib/api-client/branches.js +0 -45
- package/dist/lib/api-client/branches.js.map +0 -1
- package/dist/lib/api-client/config.js +0 -38
- package/dist/lib/api-client/config.js.map +0 -1
- package/dist/lib/api-client/files.js +0 -35
- package/dist/lib/api-client/files.js.map +0 -1
- package/dist/lib/api-client/git.js +0 -154
- package/dist/lib/api-client/git.js.map +0 -1
- package/dist/lib/api-client/index.js +0 -88
- package/dist/lib/api-client/index.js.map +0 -1
- package/dist/lib/api-client/sessions.js +0 -106
- package/dist/lib/api-client/sessions.js.map +0 -1
- package/dist/lib/api-client/setu.js +0 -144
- package/dist/lib/api-client/setu.js.map +0 -1
- package/dist/lib/api-client/skills.js +0 -31
- package/dist/lib/api-client/skills.js.map +0 -1
- package/dist/lib/api-client/utils.js +0 -65
- package/dist/lib/api-client/utils.js.map +0 -1
- package/dist/lib/commands.js +0 -124
- package/dist/lib/commands.js.map +0 -1
- package/dist/lib/config.js +0 -28
- package/dist/lib/config.js.map +0 -1
- package/dist/lib/nerd-font.js +0 -55
- package/dist/lib/nerd-font.js.map +0 -1
- package/dist/lib/open-url.js +0 -9
- package/dist/lib/open-url.js.map +0 -1
- package/dist/lib/parseResearchContext.js +0 -30
- package/dist/lib/parseResearchContext.js.map +0 -1
- package/dist/lib/sse-client.js +0 -113
- package/dist/lib/sse-client.js.map +0 -1
- package/dist/stores/confirmationStore.js +0 -27
- package/dist/stores/confirmationStore.js.map +0 -1
- package/dist/stores/fileBrowserStore.js +0 -63
- package/dist/stores/fileBrowserStore.js.map +0 -1
- package/dist/stores/filePickerStore.js +0 -8
- package/dist/stores/filePickerStore.js.map +0 -1
- package/dist/stores/focusStore.js +0 -12
- package/dist/stores/focusStore.js.map +0 -1
- package/dist/stores/gitStore.js +0 -63
- package/dist/stores/gitStore.js.map +0 -1
- package/dist/stores/mcpStore.js +0 -63
- package/dist/stores/mcpStore.js.map +0 -1
- package/dist/stores/onboardingStore.js +0 -38
- package/dist/stores/onboardingStore.js.map +0 -1
- package/dist/stores/panelWidthStore.js +0 -12
- package/dist/stores/panelWidthStore.js.map +0 -1
- package/dist/stores/pendingResearchStore.js +0 -38
- package/dist/stores/pendingResearchStore.js.map +0 -1
- package/dist/stores/queueStore.js +0 -11
- package/dist/stores/queueStore.js.map +0 -1
- package/dist/stores/researchStore.js +0 -54
- package/dist/stores/researchStore.js.map +0 -1
- package/dist/stores/sessionFilesStore.js +0 -62
- package/dist/stores/sessionFilesStore.js.map +0 -1
- package/dist/stores/settingsStore.js +0 -29
- package/dist/stores/settingsStore.js.map +0 -1
- package/dist/stores/setuStore.js +0 -29
- package/dist/stores/setuStore.js.map +0 -1
- package/dist/stores/sidebarStore.js +0 -10
- package/dist/stores/sidebarStore.js.map +0 -1
- package/dist/stores/skillsStore.js +0 -46
- package/dist/stores/skillsStore.js.map +0 -1
- package/dist/stores/terminalStore.js +0 -32
- package/dist/stores/terminalStore.js.map +0 -1
- package/dist/stores/toastStore.js +0 -46
- package/dist/stores/toastStore.js.map +0 -1
- package/dist/stores/toolApprovalStore.js +0 -16
- package/dist/stores/toolApprovalStore.js.map +0 -1
- package/dist/stores/topupApprovalStore.js +0 -11
- package/dist/stores/topupApprovalStore.js.map +0 -1
- package/dist/stores/tunnelStore.js +0 -55
- package/dist/stores/tunnelStore.js.map +0 -1
- package/dist/stores/usageStore.js +0 -14
- package/dist/stores/usageStore.js.map +0 -1
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
import { Search } from 'lucide-react';
|
|
3
|
-
import { formatDuration, isToolError, getErrorMessage } from './utils';
|
|
4
|
-
import { ToolErrorDisplay } from './ToolErrorDisplay';
|
|
5
|
-
import { ToolHeader, ToolHeaderSeparator, ToolHeaderDetail, ToolHeaderMeta, ToolContentBox, } from './shared';
|
|
6
|
-
export function SearchRenderer({ contentJson, toolDurationMs, isExpanded, onToggle, compact, }) {
|
|
7
|
-
const result = contentJson.result || {};
|
|
8
|
-
const args = (contentJson.args || {});
|
|
9
|
-
const matches = result.matches || [];
|
|
10
|
-
const files = result.files || [];
|
|
11
|
-
const timeStr = formatDuration(toolDurationMs);
|
|
12
|
-
const hasError = isToolError(result) || !!contentJson.error;
|
|
13
|
-
const errorMessage = getErrorMessage(result) ||
|
|
14
|
-
(typeof contentJson.error === 'string' ? contentJson.error : null);
|
|
15
|
-
const errorStack = result && typeof result === 'object' && 'stack' in result
|
|
16
|
-
? String(result.stack)
|
|
17
|
-
: undefined;
|
|
18
|
-
const itemCount = matches.length > 0 ? matches.length : files.length;
|
|
19
|
-
const itemLabel = matches.length > 0
|
|
20
|
-
? matches.length === 1
|
|
21
|
-
? 'match'
|
|
22
|
-
: 'matches'
|
|
23
|
-
: files.length === 1
|
|
24
|
-
? 'file'
|
|
25
|
-
: 'files';
|
|
26
|
-
const searchTerm = (() => {
|
|
27
|
-
if (typeof args.pattern === 'string')
|
|
28
|
-
return args.pattern;
|
|
29
|
-
if (typeof args.query === 'string')
|
|
30
|
-
return args.query;
|
|
31
|
-
if (typeof args.filePattern === 'string')
|
|
32
|
-
return args.filePattern;
|
|
33
|
-
return '';
|
|
34
|
-
})();
|
|
35
|
-
const searchPath = (() => {
|
|
36
|
-
if (typeof args.path === 'string' && args.path !== '.')
|
|
37
|
-
return args.path;
|
|
38
|
-
return undefined;
|
|
39
|
-
})();
|
|
40
|
-
return (_jsxs("div", { className: "text-xs", children: [_jsxs(ToolHeader, { toolName: "search", isExpanded: isExpanded, onToggle: onToggle, isError: hasError, colorVariant: "amber", canExpand: true, children: [searchTerm && !compact && (_jsxs(_Fragment, { children: [_jsx(ToolHeaderSeparator, {}), _jsxs("span", { className: "font-mono text-foreground/90 text-[11px] truncate min-w-0", title: searchTerm, children: ["\"", searchTerm.length > 30
|
|
41
|
-
? `${searchTerm.slice(0, 30)}…`
|
|
42
|
-
: searchTerm, "\""] })] })), !compact && (_jsxs(_Fragment, { children: [_jsx(ToolHeaderSeparator, {}), _jsxs(ToolHeaderDetail, { children: [itemCount, " ", itemLabel] }), _jsx(ToolHeaderSeparator, {}), _jsx(ToolHeaderMeta, { children: timeStr })] }))] }), isExpanded && hasError && errorMessage && (_jsx(ToolErrorDisplay, { error: errorMessage, stack: errorStack, showStack: true })), isExpanded && !hasError && (_jsxs("div", { className: "mt-2 ml-5 flex flex-col gap-2 max-w-full", children: [_jsx(ToolContentBox, { title: "query", icon: _jsx(Search, { className: "h-3 w-3" }), subtitle: searchPath, copyText: searchTerm, maxHeight: "", children: _jsx("div", { className: "px-3 py-2 font-mono text-xs bg-muted/10 break-all", children: searchTerm || '(empty)' }) }), matches.length > 0 && (_jsx(ToolContentBox, { title: "results", copyText: matches
|
|
43
|
-
.map((m) => {
|
|
44
|
-
const match = m;
|
|
45
|
-
return `${match.file}:${match.line}: ${match.text}`;
|
|
46
|
-
})
|
|
47
|
-
.join('\n'), maxHeight: "max-h-80", children: _jsx("div", { className: "divide-y divide-border/50", children: matches.map((match, i) => {
|
|
48
|
-
const m = match;
|
|
49
|
-
return (_jsxs("div", { className: "px-3 py-1.5 font-mono hover:bg-muted/20", children: [_jsxs("div", { className: "text-blue-600 dark:text-blue-400 truncate", children: [m.file, ":", m.line] }), _jsx("div", { className: "text-foreground/80 truncate", children: m.text })] }, `${m.file}-${m.line}-${i}`));
|
|
50
|
-
}) }) })), files.length > 0 && matches.length === 0 && (_jsx(ToolContentBox, { title: "files", copyText: files.map(String).join('\n'), maxHeight: "max-h-80", children: _jsx("div", { className: "divide-y divide-border/50", children: files.map((file) => (_jsx("div", { className: "px-3 py-1 font-mono text-foreground/80 truncate hover:bg-muted/20", children: String(file) }, String(file)))) }) })), itemCount === 0 && (_jsx(ToolContentBox, { title: "results", maxHeight: "", children: _jsx("div", { className: "px-3 py-2 text-muted-foreground/60 italic", children: "No results found" }) }))] }))] }));
|
|
51
|
-
}
|
|
52
|
-
//# sourceMappingURL=SearchRenderer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SearchRenderer.js","sourceRoot":"","sources":["../../../../src/components/messages/renderers/SearchRenderer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
import { ChevronRight, AlertCircle, BookOpen, FileText, ShieldAlert, } from 'lucide-react';
|
|
3
|
-
import { formatDuration } from './utils';
|
|
4
|
-
import { ToolErrorDisplay } from './ToolErrorDisplay';
|
|
5
|
-
export function SkillRenderer({ contentJson, toolDurationMs, isExpanded, onToggle, compact, }) {
|
|
6
|
-
const result = contentJson.result || {};
|
|
7
|
-
const timeStr = formatDuration(toolDurationMs);
|
|
8
|
-
const hasToolError = typeof result === 'object' && 'ok' in result && result.ok === false;
|
|
9
|
-
const errorMessage = hasToolError && 'error' in result && typeof result.error === 'string'
|
|
10
|
-
? result.error
|
|
11
|
-
: null;
|
|
12
|
-
const name = result.name;
|
|
13
|
-
const description = result.description;
|
|
14
|
-
const content = result.content;
|
|
15
|
-
const scope = result.scope;
|
|
16
|
-
const availableFiles = result.availableFiles;
|
|
17
|
-
const securityNotices = result.securityNotices;
|
|
18
|
-
const isSubFile = description?.startsWith('Sub-file:');
|
|
19
|
-
const fileCount = availableFiles?.length ?? 0;
|
|
20
|
-
const noticeCount = securityNotices?.length ?? 0;
|
|
21
|
-
const canExpand = !!content || hasToolError;
|
|
22
|
-
return (_jsxs("div", { className: "text-xs", children: [_jsxs("button", { type: "button", onClick: () => canExpand && onToggle(), className: `flex items-center gap-2 transition-colors w-full min-w-0 ${hasToolError
|
|
23
|
-
? 'text-red-700 dark:text-red-300 hover:text-red-600 dark:hover:text-red-200'
|
|
24
|
-
: canExpand
|
|
25
|
-
? 'text-violet-700 dark:text-violet-300 hover:text-violet-600 dark:hover:text-violet-200'
|
|
26
|
-
: 'text-violet-700 dark:text-violet-300'}`, children: [canExpand ? (_jsx(ChevronRight, { className: `h-3 w-3 flex-shrink-0 transition-transform ${isExpanded ? 'rotate-90' : ''}` })) : (_jsx("div", { className: "w-3 flex-shrink-0" })), hasToolError && (_jsx(AlertCircle, { className: "h-3 w-3 flex-shrink-0 text-red-600 dark:text-red-400" })), isSubFile ? (_jsx(FileText, { className: "h-3 w-3 flex-shrink-0" })) : (_jsx(BookOpen, { className: "h-3 w-3 flex-shrink-0" })), _jsxs("span", { className: "font-medium flex-shrink-0", children: ["skill", hasToolError ? ' error' : ''] }), name && !compact && (_jsxs(_Fragment, { children: [_jsx("span", { className: "text-muted-foreground/70 flex-shrink-0", children: "\u00B7" }), _jsx("span", { className: "text-foreground/70 truncate", children: isSubFile ? description?.replace('Sub-file: ', '') : name })] })), scope && !compact && !isSubFile && (_jsxs("span", { className: "text-muted-foreground/80 flex-shrink-0", children: ["\u00B7 ", scope] })), fileCount > 0 && !compact && (_jsxs("span", { className: "text-muted-foreground/80 flex-shrink-0", children: ["\u00B7 ", fileCount, " file", fileCount !== 1 ? 's' : ''] })), noticeCount > 0 && !compact && (_jsxs("span", { className: "text-amber-600 dark:text-amber-400 flex-shrink-0 flex items-center gap-0.5", children: ["\u00B7 ", _jsx(ShieldAlert, { className: "h-3 w-3 inline" }), " ", noticeCount] })), timeStr && !compact && (_jsxs("span", { className: "text-muted-foreground/80 flex-shrink-0", children: ["\u00B7 ", timeStr] }))] }), isExpanded && hasToolError && errorMessage && (_jsx(ToolErrorDisplay, { error: errorMessage })), isExpanded && !hasToolError && (_jsxs("div", { className: "mt-2 ml-5 space-y-2", children: [noticeCount > 0 && securityNotices && (_jsxs("div", { className: "bg-amber-50 dark:bg-amber-950/30 border border-amber-200 dark:border-amber-800 rounded-lg p-2.5 space-y-1", children: [_jsxs("div", { className: "flex items-center gap-1.5 text-amber-700 dark:text-amber-300 font-medium text-[11px]", children: [_jsx(ShieldAlert, { className: "h-3 w-3" }), "Security Notice", noticeCount > 1 ? 's' : ''] }), securityNotices.map((notice, i) => (_jsxs("div", { className: "text-amber-600 dark:text-amber-400 text-[11px] leading-snug", children: [_jsx("span", { className: "font-mono bg-amber-100 dark:bg-amber-900/40 rounded px-1 py-0.5", children: notice.type }), ' ', notice.description] }, `${notice.type}-${notice.line ?? i}`)))] })), description && !isSubFile && (_jsx("p", { className: "text-muted-foreground italic", children: description })), content && (_jsx("div", { className: "bg-card/60 border border-border rounded-lg overflow-hidden max-h-96 overflow-y-auto max-w-full", children: _jsx("div", { className: "p-3 whitespace-pre-wrap font-mono text-xs leading-relaxed", children: content }) })), fileCount > 0 && availableFiles && (_jsxs("details", { className: "group", children: [_jsxs("summary", { className: "text-muted-foreground cursor-pointer hover:text-foreground/80 text-[11px] select-none", children: [fileCount, " available sub-file", fileCount !== 1 ? 's' : ''] }), _jsx("div", { className: "mt-1.5 bg-card/40 border border-border rounded-lg p-2 space-y-0.5 max-h-48 overflow-y-auto", children: availableFiles.map((f) => (_jsxs("div", { className: "flex items-center justify-between gap-2 font-mono text-[11px]", children: [_jsx("span", { className: "text-foreground/80 truncate", children: f.relativePath }), _jsx("span", { className: "text-muted-foreground/60 flex-shrink-0 tabular-nums", children: formatFileSize(f.size) })] }, f.relativePath))) })] }))] }))] }));
|
|
27
|
-
}
|
|
28
|
-
function formatFileSize(bytes) {
|
|
29
|
-
if (bytes < 1024)
|
|
30
|
-
return `${bytes}B`;
|
|
31
|
-
const kb = bytes / 1024;
|
|
32
|
-
if (kb < 1024)
|
|
33
|
-
return `${kb.toFixed(1)}KB`;
|
|
34
|
-
return `${(kb / 1024).toFixed(1)}MB`;
|
|
35
|
-
}
|
|
36
|
-
//# sourceMappingURL=SkillRenderer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SkillRenderer.js","sourceRoot":"","sources":["../../../../src/components/messages/renderers/SkillRenderer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
import { useEffect, useState } from 'react';
|
|
3
|
-
import { Terminal } from 'lucide-react';
|
|
4
|
-
import { NERD_FONT_FAMILY, loadNerdFont } from '../../../lib/nerd-font';
|
|
5
|
-
import { formatDuration } from './utils';
|
|
6
|
-
import { ToolErrorDisplay } from './ToolErrorDisplay';
|
|
7
|
-
import { ToolHeader, ToolHeaderSeparator, ToolHeaderMeta, ToolHeaderSuccess, ToolContentBox, } from './shared';
|
|
8
|
-
const ANSI_RE = /[\x1B\x9B][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nq-uy=><~]/g;
|
|
9
|
-
const CONTROL_RE = /[\x00-\x08\x0B\x0C\x0E-\x1F\x7F]/g;
|
|
10
|
-
function cleanTerminalOutput(raw) {
|
|
11
|
-
return raw
|
|
12
|
-
.replace(ANSI_RE, '')
|
|
13
|
-
.replace(CONTROL_RE, '')
|
|
14
|
-
.replace(/\\n/g, '\n')
|
|
15
|
-
.replace(/\r\n/g, '\n')
|
|
16
|
-
.replace(/\r/g, '\n');
|
|
17
|
-
}
|
|
18
|
-
export function TerminalRenderer({ contentJson, toolDurationMs, isExpanded, onToggle, compact, }) {
|
|
19
|
-
const [, setFontReady] = useState(false);
|
|
20
|
-
useEffect(() => {
|
|
21
|
-
loadNerdFont().then(() => setFontReady(true));
|
|
22
|
-
}, []);
|
|
23
|
-
const result = contentJson.result || {};
|
|
24
|
-
const args = contentJson.args || {};
|
|
25
|
-
const operation = String(args.operation || args.command || '');
|
|
26
|
-
const hasToolError = typeof result === 'object' && 'ok' in result && result.ok === false;
|
|
27
|
-
const errorMessage = hasToolError && 'error' in result && typeof result.error === 'string'
|
|
28
|
-
? result.error
|
|
29
|
-
: null;
|
|
30
|
-
const errorStack = hasToolError && 'stack' in result && typeof result.stack === 'string'
|
|
31
|
-
? result.stack
|
|
32
|
-
: undefined;
|
|
33
|
-
const timeStr = formatDuration(toolDurationMs);
|
|
34
|
-
const terminalId = String(result.terminalId || args.terminalId || '');
|
|
35
|
-
const shortId = terminalId.length > 12 ? `${terminalId.slice(0, 12)}…` : terminalId;
|
|
36
|
-
const purpose = String(result.purpose || args.purpose || '');
|
|
37
|
-
const command = String(result.command || args.command || '');
|
|
38
|
-
const renderStartResult = () => {
|
|
39
|
-
const pid = result.pid ? `PID ${result.pid}` : '';
|
|
40
|
-
return (_jsxs("div", { className: "mt-2 ml-5 flex flex-col gap-1 text-xs", children: [command && (_jsxs("div", { className: "flex items-center gap-2 text-foreground/70", children: [_jsx(Terminal, { className: "h-3 w-3" }), _jsx("code", { className: "font-mono", children: command })] })), purpose && _jsx("div", { className: "text-muted-foreground/70", children: purpose }), _jsxs("div", { className: "flex items-center gap-2 text-muted-foreground/60", children: [shortId && _jsx("span", { className: "font-mono", children: shortId }), pid && (_jsxs(_Fragment, { children: [_jsx("span", { children: "\u00B7" }), _jsx("span", { children: pid })] }))] })] }));
|
|
41
|
-
};
|
|
42
|
-
const renderReadResult = () => {
|
|
43
|
-
const rawOutput = String(result.text || result.output || '');
|
|
44
|
-
const output = cleanTerminalOutput(rawOutput);
|
|
45
|
-
const status = String(result.status || '');
|
|
46
|
-
const exitCode = result.exitCode;
|
|
47
|
-
const lineCount = typeof result.lines === 'number' ? result.lines : 0;
|
|
48
|
-
return (_jsxs("div", { className: "mt-2 ml-5 flex flex-col gap-2 max-w-full", children: [_jsxs("div", { className: "flex items-center gap-2 text-xs text-muted-foreground/70", children: [shortId && _jsx("span", { className: "font-mono", children: shortId }), _jsx("span", { children: "\u00B7" }), _jsxs("span", { children: [lineCount, " lines"] }), _jsx("span", { children: "\u00B7" }), _jsxs("span", { className: status === 'running'
|
|
49
|
-
? 'text-emerald-600 dark:text-emerald-400'
|
|
50
|
-
: '', children: [status, status === 'exited' && exitCode !== undefined
|
|
51
|
-
? ` (${exitCode})`
|
|
52
|
-
: ''] })] }), output.trim() && (_jsx(ToolContentBox, { title: "output", copyText: output, maxHeight: "max-h-[30rem]", children: _jsx("pre", { className: "px-3 py-2 text-xs text-foreground/85 whitespace-pre-wrap break-words overflow-x-auto", style: { fontFamily: NERD_FONT_FAMILY }, children: output }) }))] }));
|
|
53
|
-
};
|
|
54
|
-
const renderListResult = () => {
|
|
55
|
-
const terminals = Array.isArray(result.terminals) ? result.terminals : [];
|
|
56
|
-
const count = typeof result.count === 'number' ? result.count : terminals.length;
|
|
57
|
-
return (_jsxs("div", { className: "mt-2 ml-5 flex flex-col gap-1 text-xs", children: [_jsxs("div", { className: "text-muted-foreground/70", children: [count, " terminal", count !== 1 ? 's' : ''] }), terminals.slice(0, 8).map((t, i) => (_jsxs("div", { className: "flex items-center gap-2 text-foreground/70 font-mono", children: [_jsx("span", { className: `h-2 w-2 rounded-full ${t.status === 'running' ? 'bg-emerald-500' : 'bg-muted-foreground/40'}` }), _jsx("span", { className: "truncate max-w-[100px]", children: String(t.id || '').slice(0, 12) }), _jsx("span", { className: "text-muted-foreground/60 truncate", children: String(t.purpose || '') })] }, String(t.id || i))))] }));
|
|
58
|
-
};
|
|
59
|
-
const renderWriteResult = () => {
|
|
60
|
-
const written = String(args.input || '');
|
|
61
|
-
return written ? (_jsx("div", { className: "mt-2 ml-5 text-xs", children: _jsx("code", { className: "font-mono text-foreground/70 whitespace-pre-wrap", children: written }) })) : null;
|
|
62
|
-
};
|
|
63
|
-
const label = operation || 'terminal';
|
|
64
|
-
const headerLabel = `terminal ${label}`;
|
|
65
|
-
const hasContent = !hasToolError &&
|
|
66
|
-
(operation === 'start' ||
|
|
67
|
-
operation === 'read' ||
|
|
68
|
-
operation === 'list' ||
|
|
69
|
-
(operation === 'write' && (args.input || result.message)));
|
|
70
|
-
return (_jsxs("div", { className: "text-xs", children: [_jsxs(ToolHeader, { toolName: headerLabel, isExpanded: isExpanded, onToggle: onToggle, isError: !!hasToolError, colorVariant: "amber", canExpand: !!hasContent || !!hasToolError, children: [!compact && shortId && (_jsxs(_Fragment, { children: [_jsx(ToolHeaderSeparator, {}), _jsx("span", { className: "text-foreground/70 font-mono text-[11px]", children: shortId })] })), !compact && purpose && !shortId && (_jsxs(_Fragment, { children: [_jsx(ToolHeaderSeparator, {}), _jsx("span", { className: "text-foreground/70 text-[11px] truncate max-w-xs", children: purpose })] })), !hasToolError && !compact && (_jsxs(_Fragment, { children: [_jsx(ToolHeaderSeparator, {}), _jsx(ToolHeaderSuccess, { children: "ok" }), _jsx(ToolHeaderSeparator, {}), _jsx(ToolHeaderMeta, { children: timeStr })] })), hasToolError && !compact && (_jsxs(ToolHeaderMeta, { children: ["\u00B7 ", timeStr] }))] }), isExpanded && hasToolError && errorMessage && (_jsx(ToolErrorDisplay, { error: errorMessage, stack: errorStack, showStack: true })), isExpanded &&
|
|
71
|
-
!hasToolError &&
|
|
72
|
-
operation === 'start' &&
|
|
73
|
-
renderStartResult(), isExpanded &&
|
|
74
|
-
!hasToolError &&
|
|
75
|
-
operation === 'read' &&
|
|
76
|
-
renderReadResult(), isExpanded &&
|
|
77
|
-
!hasToolError &&
|
|
78
|
-
operation === 'list' &&
|
|
79
|
-
renderListResult(), isExpanded &&
|
|
80
|
-
!hasToolError &&
|
|
81
|
-
operation === 'write' &&
|
|
82
|
-
renderWriteResult()] }));
|
|
83
|
-
}
|
|
84
|
-
//# sourceMappingURL=TerminalRenderer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TerminalRenderer.js","sourceRoot":"","sources":["../../../../src/components/messages/renderers/TerminalRenderer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { CheckCircle2, Circle, ArrowRight, XCircle } from 'lucide-react';
|
|
3
|
-
export function TodosRenderer({ contentJson }) {
|
|
4
|
-
const result = (contentJson.result || {});
|
|
5
|
-
const items = result.items || [];
|
|
6
|
-
const note = result.note;
|
|
7
|
-
return (_jsx("div", { className: "text-xs", children: _jsxs("div", { className: "bg-blue-500/10 border border-blue-500/30 dark:bg-blue-500/5 dark:border-blue-500/20 rounded-lg p-3 space-y-2", children: [note && (_jsx("div", { className: "text-blue-700 dark:text-blue-300 text-sm font-medium mb-3", children: note })), _jsx("div", { className: "space-y-1.5", children: items.map((item, idx) => (_jsxs("div", { className: "flex items-start gap-2", children: [item.status === 'completed' && (_jsx(CheckCircle2, { className: "h-4 w-4 text-emerald-600 dark:text-emerald-300 flex-shrink-0 mt-0.5" })), item.status === 'in_progress' && (_jsx(ArrowRight, { className: "h-4 w-4 text-blue-700 dark:text-blue-300 flex-shrink-0 mt-0.5 animate-pulse" })), item.status === 'pending' && (_jsx(Circle, { className: "h-4 w-4 text-muted-foreground flex-shrink-0 mt-0.5" })), item.status === 'cancelled' && (_jsx(XCircle, { className: "h-4 w-4 text-muted-foreground/50 flex-shrink-0 mt-0.5" })), _jsx("span", { className: `text-sm ${item.status === 'completed'
|
|
8
|
-
? 'text-muted-foreground line-through'
|
|
9
|
-
: item.status === 'in_progress'
|
|
10
|
-
? 'text-foreground'
|
|
11
|
-
: item.status === 'cancelled'
|
|
12
|
-
? 'text-muted-foreground/50 line-through'
|
|
13
|
-
: 'text-muted-foreground/80'}`, children: item.step })] }, `${item.step}-${idx}`))) })] }) }));
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=TodosRenderer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TodosRenderer.js","sourceRoot":"","sources":["../../../../src/components/messages/renderers/TodosRenderer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAazE,MAAM,UAAU,aAAa,CAAC,EAAE,WAAW,EAAiB;IAC3D,MAAM,MAAM,GAAG,CAAC,WAAW,CAAC,MAAM,IAAI,EAAE,CAAgB,CAAC;IACzD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;IACjC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;IAEzB,OAAO,CACN,cAAK,SAAS,EAAC,SAAS,YACvB,eAAK,SAAS,EAAC,8GAA8G,aAC3H,IAAI,IAAI,CACR,cAAK,SAAS,EAAC,2DAA2D,YACxE,IAAI,GACA,CACN,EACD,cAAK,SAAS,EAAC,aAAa,YAC1B,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,CACzB,eAAiC,SAAS,EAAC,wBAAwB,aACjE,IAAI,CAAC,MAAM,KAAK,WAAW,IAAI,CAC/B,KAAC,YAAY,IAAC,SAAS,EAAC,qEAAqE,GAAG,CAChG,EACA,IAAI,CAAC,MAAM,KAAK,aAAa,IAAI,CACjC,KAAC,UAAU,IAAC,SAAS,EAAC,6EAA6E,GAAG,CACtG,EACA,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,CAC7B,KAAC,MAAM,IAAC,SAAS,EAAC,oDAAoD,GAAG,CACzE,EACA,IAAI,CAAC,MAAM,KAAK,WAAW,IAAI,CAC/B,KAAC,OAAO,IAAC,SAAS,EAAC,uDAAuD,GAAG,CAC7E,EACD,eACC,SAAS,EAAE,WACV,IAAI,CAAC,MAAM,KAAK,WAAW;oCAC1B,CAAC,CAAC,oCAAoC;oCACtC,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,aAAa;wCAC9B,CAAC,CAAC,iBAAiB;wCACnB,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,WAAW;4CAC5B,CAAC,CAAC,uCAAuC;4CACzC,CAAC,CAAC,0BACN,EAAE,YAED,IAAI,CAAC,IAAI,GACJ,KAzBE,GAAG,IAAI,CAAC,IAAI,IAAI,GAAG,EAAE,CA0BzB,CACN,CAAC,GACG,IACD,GACD,CACN,CAAC;AACH,CAAC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { AlertCircle } from 'lucide-react';
|
|
3
|
-
/**
|
|
4
|
-
* Shared error display component for tool results with ok: false
|
|
5
|
-
* Matches the structure and colors of ErrorRenderer
|
|
6
|
-
*/
|
|
7
|
-
export function ToolErrorDisplay({ error, stack, showStack = false, }) {
|
|
8
|
-
return (_jsx("div", { className: "mt-2 ml-5 p-3 bg-red-50 dark:bg-red-950/20 border border-red-200 dark:border-red-800 rounded text-sm", children: _jsxs("div", { className: "flex items-start gap-2", children: [_jsx(AlertCircle, { className: "h-4 w-4 flex-shrink-0 text-red-600 dark:text-red-400 mt-0.5" }), _jsxs("div", { className: "flex-1 space-y-2", children: [_jsxs("div", { children: [_jsx("div", { className: "font-medium text-red-600 dark:text-red-400", children: "Tool Error:" }), _jsx("div", { className: "mt-1 text-red-900 dark:text-red-200 whitespace-pre-wrap", children: error })] }), showStack && stack && (_jsxs("details", { className: "mt-2", children: [_jsx("summary", { className: "cursor-pointer text-xs text-red-700 dark:text-red-300 hover:text-red-600 dark:hover:text-red-200", children: "View stack trace" }), _jsx("pre", { className: "mt-2 p-2 bg-red-100/50 dark:bg-red-900/20 rounded text-xs overflow-x-auto text-red-800 dark:text-red-300", children: stack })] }))] })] }) }));
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=ToolErrorDisplay.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ToolErrorDisplay.js","sourceRoot":"","sources":["../../../../src/components/messages/renderers/ToolErrorDisplay.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAQ3C;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,EAChC,KAAK,EACL,KAAK,EACL,SAAS,GAAG,KAAK,GACM;IACvB,OAAO,CACN,cAAK,SAAS,EAAC,sGAAsG,YACpH,eAAK,SAAS,EAAC,wBAAwB,aACtC,KAAC,WAAW,IAAC,SAAS,EAAC,6DAA6D,GAAG,EACvF,eAAK,SAAS,EAAC,kBAAkB,aAChC,0BACC,cAAK,SAAS,EAAC,4CAA4C,4BAErD,EACN,cAAK,SAAS,EAAC,yDAAyD,YACtE,KAAK,GACD,IACD,EACL,SAAS,IAAI,KAAK,IAAI,CACtB,mBAAS,SAAS,EAAC,MAAM,aACxB,kBAAS,SAAS,EAAC,kGAAkG,iCAE3G,EACV,cAAK,SAAS,EAAC,0GAA0G,YACvH,KAAK,GACD,IACG,CACV,IACI,IACD,GACD,CACN,CAAC;AACH,CAAC"}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { FolderTree } from 'lucide-react';
|
|
3
|
-
import { Prism as SyntaxHighlighter } from 'react-syntax-highlighter';
|
|
4
|
-
import { prism, vscDarkPlus, } from 'react-syntax-highlighter/dist/esm/styles/prism';
|
|
5
|
-
import { formatDuration, isToolError, getErrorMessage } from './utils';
|
|
6
|
-
import { ToolHeader, ToolHeaderSeparator, ToolHeaderDetail, ToolHeaderMeta, ToolContentBox, } from './shared';
|
|
7
|
-
import { ToolErrorDisplay } from './ToolErrorDisplay';
|
|
8
|
-
export function TreeRenderer({ contentJson, toolDurationMs, isExpanded, onToggle, }) {
|
|
9
|
-
const result = contentJson.result || {};
|
|
10
|
-
const args = (contentJson.args || {});
|
|
11
|
-
const hasError = isToolError(result);
|
|
12
|
-
const errorMessage = getErrorMessage(result);
|
|
13
|
-
const errorStack = result && typeof result === 'object' && 'stack' in result
|
|
14
|
-
? String(result.stack)
|
|
15
|
-
: undefined;
|
|
16
|
-
const tree = String(result.tree || '');
|
|
17
|
-
const lines = tree.split('\n').filter((l) => l.length > 0).length;
|
|
18
|
-
const timeStr = formatDuration(toolDurationMs);
|
|
19
|
-
const syntaxTheme = document?.documentElement.classList.contains('dark')
|
|
20
|
-
? vscDarkPlus
|
|
21
|
-
: prism;
|
|
22
|
-
const path = typeof args.path === 'string' ? args.path : '.';
|
|
23
|
-
const depth = typeof args.depth === 'number' ? args.depth : undefined;
|
|
24
|
-
return (_jsxs("div", { className: "text-xs", children: [_jsxs(ToolHeader, { toolName: "tree", isExpanded: isExpanded, onToggle: onToggle, isError: hasError, colorVariant: "cyan", canExpand: true, children: [path && path !== '.' && (_jsxs(_Fragment, { children: [_jsx(ToolHeaderSeparator, {}), _jsx("span", { className: "text-foreground/70 truncate min-w-0", title: path, children: path.length > 30 ? `…${path.slice(-30)}` : path })] })), _jsx(ToolHeaderSeparator, {}), _jsxs(ToolHeaderDetail, { children: [lines, " ", lines === 1 ? 'item' : 'items'] }), _jsx(ToolHeaderSeparator, {}), _jsx(ToolHeaderMeta, { children: timeStr })] }), isExpanded && hasError && errorMessage && (_jsx(ToolErrorDisplay, { error: errorMessage, stack: errorStack, showStack: true })), isExpanded && !hasError && (_jsxs("div", { className: "mt-2 ml-5 flex flex-col gap-2 max-w-full", children: [_jsx(ToolContentBox, { title: "path", icon: _jsx(FolderTree, { className: "h-3 w-3" }), subtitle: depth ? `depth: ${depth}` : undefined, copyText: path, maxHeight: "", children: _jsx("div", { className: "px-3 py-2 font-mono text-xs bg-muted/10 break-all", children: path }) }), tree && (_jsx(ToolContentBox, { title: "tree", copyText: tree, maxHeight: "max-h-80", children: _jsx("div", { className: "overflow-x-auto max-w-full", children: _jsx(SyntaxHighlighter, { language: "bash", style: syntaxTheme, customStyle: {
|
|
25
|
-
margin: 0,
|
|
26
|
-
padding: '0.75rem',
|
|
27
|
-
fontSize: '0.75rem',
|
|
28
|
-
lineHeight: '1.5',
|
|
29
|
-
background: 'transparent',
|
|
30
|
-
maxWidth: '100%',
|
|
31
|
-
}, wrapLines: true, wrapLongLines: true, children: tree }) }) })), !tree && (_jsx(ToolContentBox, { title: "tree", maxHeight: "", children: _jsx("div", { className: "px-3 py-2 text-muted-foreground/60 italic", children: "No tree output" }) }))] }))] }));
|
|
32
|
-
}
|
|
33
|
-
//# sourceMappingURL=TreeRenderer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TreeRenderer.js","sourceRoot":"","sources":["../../../../src/components/messages/renderers/TreeRenderer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
import { Globe, ExternalLink, Link } from 'lucide-react';
|
|
3
|
-
import { formatDuration, isToolError, getErrorMessage } from './utils';
|
|
4
|
-
import { ToolErrorDisplay } from './ToolErrorDisplay';
|
|
5
|
-
import { ToolHeader, ToolHeaderSeparator, ToolHeaderDetail, ToolHeaderMeta, ToolContentBox, } from './shared';
|
|
6
|
-
export function WebSearchRenderer({ contentJson, toolDurationMs, isExpanded, onToggle, }) {
|
|
7
|
-
const result = contentJson.result || {};
|
|
8
|
-
const args = (contentJson.args || {});
|
|
9
|
-
const timeStr = formatDuration(toolDurationMs);
|
|
10
|
-
const hasError = isToolError(result) || !!contentJson.error;
|
|
11
|
-
const errorMessage = getErrorMessage(result) ||
|
|
12
|
-
(typeof contentJson.error === 'string' ? contentJson.error : null);
|
|
13
|
-
const errorStack = result && typeof result === 'object' && 'stack' in result
|
|
14
|
-
? String(result.stack)
|
|
15
|
-
: undefined;
|
|
16
|
-
const isSearch = 'results' in result;
|
|
17
|
-
const searchResults = result.results || [];
|
|
18
|
-
const webContent = result;
|
|
19
|
-
const query = typeof args.query === 'string' ? args.query : undefined;
|
|
20
|
-
const url = typeof args.url === 'string' ? args.url : webContent.url;
|
|
21
|
-
if (isSearch) {
|
|
22
|
-
return (_jsxs("div", { className: "text-xs", children: [_jsxs(ToolHeader, { toolName: "web search", isExpanded: isExpanded, onToggle: onToggle, isError: hasError, colorVariant: "purple", canExpand: true, children: [query && (_jsxs(_Fragment, { children: [_jsx(ToolHeaderSeparator, {}), _jsxs("span", { className: "font-mono text-foreground/90 text-[11px] truncate min-w-0", title: query, children: ["\"", query.length > 25 ? `${query.slice(0, 25)}…` : query, "\""] })] })), _jsx(ToolHeaderSeparator, {}), _jsxs(ToolHeaderDetail, { children: [searchResults.length, ' ', searchResults.length === 1 ? 'result' : 'results'] }), _jsx(ToolHeaderSeparator, {}), _jsx(ToolHeaderMeta, { children: timeStr })] }), isExpanded && hasError && errorMessage && (_jsx(ToolErrorDisplay, { error: errorMessage, stack: errorStack, showStack: true })), isExpanded && !hasError && (_jsxs("div", { className: "mt-2 ml-5 flex flex-col gap-2 max-w-full", children: [_jsx(ToolContentBox, { title: "query", icon: _jsx(Globe, { className: "h-3 w-3" }), copyText: query, maxHeight: "", children: _jsx("div", { className: "px-3 py-2 font-mono text-xs bg-muted/10 break-all", children: query || '(empty)' }) }), searchResults.length > 0 && (_jsx(ToolContentBox, { title: "results", copyText: searchResults
|
|
23
|
-
.map((r) => `${r.title}\n${r.url}`)
|
|
24
|
-
.join('\n\n'), maxHeight: "max-h-80", children: _jsx("div", { className: "divide-y divide-border/50", children: searchResults.map((item, i) => (_jsxs("div", { className: "px-3 py-2 hover:bg-muted/20", children: [_jsxs("a", { href: item.url, target: "_blank", rel: "noopener noreferrer", className: "flex items-center gap-1 text-blue-600 dark:text-blue-400 hover:underline font-medium", children: [item.title, _jsx(ExternalLink, { className: "h-3 w-3 flex-shrink-0" })] }), _jsx("p", { className: "text-muted-foreground text-xs mt-0.5", children: item.snippet }), _jsx("p", { className: "text-xs text-muted-foreground/60 truncate mt-0.5", children: item.url })] }, `${item.url}-${i}`))) }) })), searchResults.length === 0 && (_jsx(ToolContentBox, { title: "results", maxHeight: "", children: _jsx("div", { className: "px-3 py-2 text-muted-foreground/60 italic", children: "No results found" }) }))] }))] }));
|
|
25
|
-
}
|
|
26
|
-
const displayUrl = url && url.length > 50 ? `${url.slice(0, 50)}...` : url;
|
|
27
|
-
return (_jsxs("div", { className: "text-xs", children: [_jsxs(ToolHeader, { toolName: "web fetch", isExpanded: isExpanded, onToggle: onToggle, isError: hasError, colorVariant: "purple", canExpand: true, children: [displayUrl && (_jsxs(_Fragment, { children: [_jsx(ToolHeaderSeparator, {}), _jsx("span", { className: "text-foreground/70 truncate min-w-0", title: url, children: displayUrl })] })), _jsx(ToolHeaderSeparator, {}), _jsx(ToolHeaderMeta, { children: timeStr })] }), isExpanded && hasError && errorMessage && (_jsx(ToolErrorDisplay, { error: errorMessage, stack: errorStack, showStack: true })), isExpanded && !hasError && (_jsxs("div", { className: "mt-2 ml-5 flex flex-col gap-2 max-w-full", children: [_jsx(ToolContentBox, { title: "url", icon: _jsx(Link, { className: "h-3 w-3" }), copyText: url, maxHeight: "", children: _jsx("div", { className: "px-3 py-2 font-mono text-xs bg-muted/10 break-all", children: _jsx("a", { href: url, target: "_blank", rel: "noopener noreferrer", className: "text-blue-600 dark:text-blue-400 hover:underline", children: url }) }) }), webContent.content && (_jsx(ToolContentBox, { title: "content", copyText: webContent.content, maxHeight: "max-h-80", children: _jsx("div", { className: "px-3 py-2 text-xs text-foreground/80 whitespace-pre-wrap break-words", children: webContent.content }) })), !webContent.content && (_jsx(ToolContentBox, { title: "content", maxHeight: "", children: _jsx("div", { className: "px-3 py-2 text-muted-foreground/60 italic", children: "No content returned" }) }))] }))] }));
|
|
28
|
-
}
|
|
29
|
-
//# sourceMappingURL=WebSearchRenderer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"WebSearchRenderer.js","sourceRoot":"","sources":["../../../../src/components/messages/renderers/WebSearchRenderer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
import { ChevronRight, AlertCircle } from 'lucide-react';
|
|
3
|
-
import { DiffView } from './DiffView';
|
|
4
|
-
import { formatDuration } from './utils';
|
|
5
|
-
import { ToolErrorDisplay } from './ToolErrorDisplay';
|
|
6
|
-
export function WriteRenderer({ contentJson, toolDurationMs, isExpanded, onToggle, compact, }) {
|
|
7
|
-
const result = contentJson.result || {};
|
|
8
|
-
const args = contentJson.args || {};
|
|
9
|
-
const artifact = contentJson.artifact;
|
|
10
|
-
const hasToolError = typeof result === 'object' && 'ok' in result && result.ok === false;
|
|
11
|
-
const errorMessage = hasToolError && 'error' in result && typeof result.error === 'string'
|
|
12
|
-
? result.error
|
|
13
|
-
: null;
|
|
14
|
-
const errorStack = hasToolError && 'stack' in result && typeof result.stack === 'string'
|
|
15
|
-
? result.stack
|
|
16
|
-
: undefined;
|
|
17
|
-
const path = String(result.path || args.path || '');
|
|
18
|
-
const bytes = Number(result.bytes || 0);
|
|
19
|
-
const patch = artifact?.patch ? String(artifact.patch) : '';
|
|
20
|
-
const timeStr = formatDuration(toolDurationMs);
|
|
21
|
-
const canExpand = patch.length > 0 || hasToolError;
|
|
22
|
-
return (_jsxs("div", { className: "text-xs", children: [_jsxs("button", { type: "button", onClick: () => canExpand && onToggle(), className: `flex items-center gap-2 transition-colors min-w-0 w-full ${hasToolError
|
|
23
|
-
? 'text-red-700 dark:text-red-300 hover:text-red-600 dark:hover:text-red-200'
|
|
24
|
-
: canExpand
|
|
25
|
-
? 'text-emerald-700 dark:text-emerald-300 hover:text-emerald-600 dark:hover:text-emerald-200'
|
|
26
|
-
: 'text-emerald-700 dark:text-emerald-300'}`, children: [canExpand ? (isExpanded ? (_jsx(ChevronRight, { className: "h-3 w-3 flex-shrink-0 rotate-90 transition-transform" })) : (_jsx(ChevronRight, { className: "h-3 w-3 flex-shrink-0 transition-transform" }))) : (_jsx("div", { className: "w-3 flex-shrink-0" })), hasToolError && (_jsx(AlertCircle, { className: "h-3 w-3 flex-shrink-0 text-red-600 dark:text-red-400" })), _jsxs("span", { className: "font-medium flex-shrink-0", children: ["write", hasToolError ? ' error' : ''] }), !compact && (_jsxs(_Fragment, { children: [_jsx("span", { className: "text-muted-foreground/70 flex-shrink-0", children: "\u00B7" }), _jsx("span", { className: "text-foreground/70 min-w-0 flex-shrink overflow-hidden text-ellipsis whitespace-nowrap", dir: "rtl", title: path, children: `\u2066${path}\u2069` })] })), !hasToolError && bytes > 0 && !compact && (_jsxs("span", { className: "text-muted-foreground/80 whitespace-nowrap flex-shrink-0", children: ["\u00B7 ", bytes, " bytes \u00B7 ", timeStr] })), hasToolError && !compact && (_jsxs("span", { className: "text-muted-foreground/80 flex-shrink-0", children: ["\u00B7 ", timeStr] }))] }), isExpanded && hasToolError && errorMessage && (_jsx(ToolErrorDisplay, { error: errorMessage, stack: errorStack, showStack: true })), isExpanded && !hasToolError && patch && (_jsx("div", { className: "mt-2 ml-5", children: _jsx(DiffView, { patch: patch }) }))] }));
|
|
27
|
-
}
|
|
28
|
-
//# sourceMappingURL=WriteRenderer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"WriteRenderer.js","sourceRoot":"","sources":["../../../../src/components/messages/renderers/WriteRenderer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { useState } from 'react';
|
|
3
|
-
import { ReadRenderer } from './ReadRenderer';
|
|
4
|
-
import { WriteRenderer } from './WriteRenderer';
|
|
5
|
-
import { EditRenderer } from './EditRenderer';
|
|
6
|
-
import { BashRenderer } from './BashRenderer';
|
|
7
|
-
import { GitStatusRenderer } from './GitStatusRenderer';
|
|
8
|
-
import { GitDiffRenderer } from './GitDiffRenderer';
|
|
9
|
-
import { GitCommitRenderer } from './GitCommitRenderer';
|
|
10
|
-
import { ApplyPatchRenderer } from './ApplyPatchRenderer';
|
|
11
|
-
import { ListRenderer } from './ListRenderer';
|
|
12
|
-
import { TreeRenderer } from './TreeRenderer';
|
|
13
|
-
import { SearchRenderer } from './SearchRenderer';
|
|
14
|
-
import { FinishRenderer } from './FinishRenderer';
|
|
15
|
-
import { GenericRenderer } from './GenericRenderer';
|
|
16
|
-
import { DebugRenderer } from './DebugRenderer';
|
|
17
|
-
import { TodosRenderer } from './TodosRenderer';
|
|
18
|
-
import { ProgressUpdateRenderer } from './ProgressUpdateRenderer';
|
|
19
|
-
import { WebSearchRenderer } from './WebSearchRenderer';
|
|
20
|
-
import { ErrorRenderer } from './ErrorRenderer';
|
|
21
|
-
import { DatabaseToolRenderer } from './DatabaseToolRenderer';
|
|
22
|
-
import { TerminalRenderer } from './TerminalRenderer';
|
|
23
|
-
import { McpToolRenderer, isMcpTool } from './McpToolRenderer';
|
|
24
|
-
import { LoadMcpToolsRenderer } from './LoadMcpToolsRenderer';
|
|
25
|
-
import { SkillRenderer } from './SkillRenderer';
|
|
26
|
-
/**
|
|
27
|
-
* Normalize tool names to canonical form for rendering.
|
|
28
|
-
* Handles both snake_case (canonical) and PascalCase (OAuth) names.
|
|
29
|
-
*/
|
|
30
|
-
const TOOL_NAME_ALIASES = {
|
|
31
|
-
Read: 'read',
|
|
32
|
-
Write: 'write',
|
|
33
|
-
Edit: 'edit',
|
|
34
|
-
Ls: 'ls',
|
|
35
|
-
Tree: 'tree',
|
|
36
|
-
Cd: 'cd',
|
|
37
|
-
Pwd: 'pwd',
|
|
38
|
-
Glob: 'glob',
|
|
39
|
-
Grep: 'ripgrep',
|
|
40
|
-
Bash: 'bash',
|
|
41
|
-
Terminal: 'terminal',
|
|
42
|
-
GitStatus: 'git_status',
|
|
43
|
-
GitDiff: 'git_diff',
|
|
44
|
-
GitCommit: 'git_commit',
|
|
45
|
-
ApplyPatch: 'apply_patch',
|
|
46
|
-
UpdateTodos: 'update_todos',
|
|
47
|
-
UpdatePlan: 'update_todos',
|
|
48
|
-
ProgressUpdate: 'progress_update',
|
|
49
|
-
Finish: 'finish',
|
|
50
|
-
WebSearch: 'websearch',
|
|
51
|
-
LoadMcpTools: 'load_mcp_tools',
|
|
52
|
-
Skill: 'skill',
|
|
53
|
-
};
|
|
54
|
-
function normalizeToolName(name) {
|
|
55
|
-
return TOOL_NAME_ALIASES[name] ?? name;
|
|
56
|
-
}
|
|
57
|
-
export function ToolResultRenderer({ toolName, contentJson, toolDurationMs, debug, onNavigateToSession, compact, sessionId, onRetry, onCompact, }) {
|
|
58
|
-
const [isExpanded, setIsExpanded] = useState(false);
|
|
59
|
-
const normalizedName = normalizeToolName(toolName);
|
|
60
|
-
const handleToggle = () => setIsExpanded(!isExpanded);
|
|
61
|
-
const props = {
|
|
62
|
-
contentJson,
|
|
63
|
-
toolDurationMs: toolDurationMs ?? undefined,
|
|
64
|
-
isExpanded,
|
|
65
|
-
onToggle: handleToggle,
|
|
66
|
-
compact,
|
|
67
|
-
};
|
|
68
|
-
if (debug) {
|
|
69
|
-
return _jsx(DebugRenderer, { ...props, toolName: toolName });
|
|
70
|
-
}
|
|
71
|
-
switch (normalizedName) {
|
|
72
|
-
case 'read':
|
|
73
|
-
return _jsx(ReadRenderer, { ...props });
|
|
74
|
-
case 'write':
|
|
75
|
-
return _jsx(WriteRenderer, { ...props });
|
|
76
|
-
case 'edit':
|
|
77
|
-
return _jsx(EditRenderer, { ...props });
|
|
78
|
-
case 'bash':
|
|
79
|
-
return _jsx(BashRenderer, { ...props });
|
|
80
|
-
case 'git_status':
|
|
81
|
-
return _jsx(GitStatusRenderer, { ...props });
|
|
82
|
-
case 'git_diff':
|
|
83
|
-
return _jsx(GitDiffRenderer, { ...props });
|
|
84
|
-
case 'git_commit':
|
|
85
|
-
return _jsx(GitCommitRenderer, { ...props });
|
|
86
|
-
case 'apply_patch':
|
|
87
|
-
return _jsx(ApplyPatchRenderer, { ...props });
|
|
88
|
-
case 'terminal':
|
|
89
|
-
return _jsx(TerminalRenderer, { ...props });
|
|
90
|
-
case 'ls':
|
|
91
|
-
return _jsx(ListRenderer, { ...props });
|
|
92
|
-
case 'tree':
|
|
93
|
-
return _jsx(TreeRenderer, { ...props });
|
|
94
|
-
case 'ripgrep':
|
|
95
|
-
case 'grep':
|
|
96
|
-
case 'glob':
|
|
97
|
-
return _jsx(SearchRenderer, { ...props });
|
|
98
|
-
case 'websearch':
|
|
99
|
-
return _jsx(WebSearchRenderer, { ...props });
|
|
100
|
-
case 'finish':
|
|
101
|
-
return _jsx(FinishRenderer, { ...props });
|
|
102
|
-
case 'update_todos':
|
|
103
|
-
case 'update_plan':
|
|
104
|
-
return _jsx(TodosRenderer, { ...props });
|
|
105
|
-
case 'progress_update':
|
|
106
|
-
return _jsx(ProgressUpdateRenderer, { ...props });
|
|
107
|
-
case 'load_mcp_tools':
|
|
108
|
-
return _jsx(LoadMcpToolsRenderer, { ...props });
|
|
109
|
-
case 'skill':
|
|
110
|
-
return _jsx(SkillRenderer, { ...props });
|
|
111
|
-
case 'error':
|
|
112
|
-
return (_jsx(ErrorRenderer, { ...props, sessionId: sessionId, onRetry: onRetry, onCompact: onCompact }));
|
|
113
|
-
case 'query_sessions':
|
|
114
|
-
case 'query_messages':
|
|
115
|
-
case 'search_history':
|
|
116
|
-
case 'get_session_context':
|
|
117
|
-
case 'get_parent_session':
|
|
118
|
-
case 'present_action':
|
|
119
|
-
return (_jsx(DatabaseToolRenderer, { toolName: toolName, ...props, onNavigateToSession: onNavigateToSession }));
|
|
120
|
-
default:
|
|
121
|
-
if (isMcpTool(normalizedName)) {
|
|
122
|
-
return _jsx(McpToolRenderer, { ...props, toolName: toolName });
|
|
123
|
-
}
|
|
124
|
-
return _jsx(GenericRenderer, { ...props, toolName: toolName });
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
export * from './types';
|
|
128
|
-
export { ReasoningRenderer } from './ReasoningRenderer';
|
|
129
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/messages/renderers/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { useState } from 'react';
|
|
3
|
-
import { Copy, Check } from 'lucide-react';
|
|
4
|
-
const sizeClasses = {
|
|
5
|
-
sm: 'h-3 w-3',
|
|
6
|
-
md: 'h-4 w-4',
|
|
7
|
-
lg: 'h-5 w-5',
|
|
8
|
-
};
|
|
9
|
-
const paddingClasses = {
|
|
10
|
-
sm: 'p-1',
|
|
11
|
-
md: 'p-1.5',
|
|
12
|
-
lg: 'p-2',
|
|
13
|
-
};
|
|
14
|
-
export function CopyButton({ text, className = '', size = 'sm', }) {
|
|
15
|
-
const [copied, setCopied] = useState(false);
|
|
16
|
-
const handleCopy = async (e) => {
|
|
17
|
-
e.stopPropagation();
|
|
18
|
-
try {
|
|
19
|
-
await navigator.clipboard.writeText(text);
|
|
20
|
-
setCopied(true);
|
|
21
|
-
setTimeout(() => setCopied(false), 2000);
|
|
22
|
-
}
|
|
23
|
-
catch { }
|
|
24
|
-
};
|
|
25
|
-
return (_jsx("button", { type: "button", onClick: handleCopy, className: `${paddingClasses[size]} rounded hover:bg-muted/50 text-muted-foreground hover:text-foreground transition-colors ${className}`, title: "Copy", children: copied ? (_jsx(Check, { className: `${sizeClasses[size]} text-emerald-500` })) : (_jsx(Copy, { className: sizeClasses[size] })) }));
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=CopyButton.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CopyButton.js","sourceRoot":"","sources":["../../../../../src/components/messages/renderers/shared/CopyButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAQ3C,MAAM,WAAW,GAAG;IACnB,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,SAAS;CACb,CAAC;AAEF,MAAM,cAAc,GAAG;IACtB,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,OAAO;IACX,EAAE,EAAE,KAAK;CACT,CAAC;AAEF,MAAM,UAAU,UAAU,CAAC,EAC1B,IAAI,EACJ,SAAS,GAAG,EAAE,EACd,IAAI,GAAG,IAAI,GACM;IACjB,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5C,MAAM,UAAU,GAAG,KAAK,EAAE,CAAmB,EAAE,EAAE;QAChD,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,IAAI,CAAC;YACJ,MAAM,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC1C,SAAS,CAAC,IAAI,CAAC,CAAC;YAChB,UAAU,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;QAC1C,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACX,CAAC,CAAC;IAEF,OAAO,CACN,iBACC,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,UAAU,EACnB,SAAS,EAAE,GAAG,cAAc,CAAC,IAAI,CAAC,4FAA4F,SAAS,EAAE,EACzI,KAAK,EAAC,MAAM,YAEX,MAAM,CAAC,CAAC,CAAC,CACT,KAAC,KAAK,IAAC,SAAS,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,mBAAmB,GAAI,CAC7D,CAAC,CAAC,CAAC,CACH,KAAC,IAAI,IAAC,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC,GAAI,CACtC,GACO,CACT,CAAC;AACH,CAAC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { useState } from 'react';
|
|
3
|
-
import { ImageIcon, X } from 'lucide-react';
|
|
4
|
-
export function ImagePreview({ images }) {
|
|
5
|
-
const [expandedIndex, setExpandedIndex] = useState(null);
|
|
6
|
-
if (images.length === 0)
|
|
7
|
-
return null;
|
|
8
|
-
return (_jsx("div", { className: "flex flex-wrap gap-2 mt-2", children: images.map((img, i) => {
|
|
9
|
-
const src = `data:${img.mimeType};base64,${img.data}`;
|
|
10
|
-
const isExpanded = expandedIndex === i;
|
|
11
|
-
return (_jsx("div", { className: "relative", children: isExpanded ? (_jsxs("div", { className: "relative", children: [_jsx("button", { type: "button", onClick: () => setExpandedIndex(null), className: "absolute top-1 right-1 z-10 p-0.5 rounded bg-black/60 text-white hover:bg-black/80 transition-colors", children: _jsx(X, { className: "h-3 w-3" }) }), _jsx("img", { src: src, alt: `Tool result ${i + 1}`, className: "max-w-full max-h-[32rem] rounded-lg border border-border object-contain" })] })) : (_jsxs("button", { type: "button", onClick: () => setExpandedIndex(i), className: "group relative overflow-hidden rounded-lg border border-border hover:border-foreground/30 transition-colors", children: [_jsx("img", { src: src, alt: `Tool result ${i + 1}`, className: "w-48 h-32 object-cover" }), _jsx("div", { className: "absolute inset-0 bg-black/0 group-hover:bg-black/10 transition-colors flex items-center justify-center", children: _jsx(ImageIcon, { className: "h-5 w-5 text-white opacity-0 group-hover:opacity-80 transition-opacity drop-shadow-lg" }) })] })) }, `img-${i}-${img.mimeType}`));
|
|
12
|
-
}) }));
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=ImagePreview.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ImagePreview.js","sourceRoot":"","sources":["../../../../../src/components/messages/renderers/shared/ImagePreview.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,cAAc,CAAC;AAW5C,MAAM,UAAU,YAAY,CAAC,EAAE,MAAM,EAAqB;IACzD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAExE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAErC,OAAO,CACN,cAAK,SAAS,EAAC,2BAA2B,YACxC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;YACtB,MAAM,GAAG,GAAG,QAAQ,GAAG,CAAC,QAAQ,WAAW,GAAG,CAAC,IAAI,EAAE,CAAC;YACtD,MAAM,UAAU,GAAG,aAAa,KAAK,CAAC,CAAC;YAEvC,OAAO,CACN,cAAsC,SAAS,EAAC,UAAU,YACxD,UAAU,CAAC,CAAC,CAAC,CACb,eAAK,SAAS,EAAC,UAAU,aACxB,iBACC,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,EACrC,SAAS,EAAC,sGAAsG,YAEhH,KAAC,CAAC,IAAC,SAAS,EAAC,SAAS,GAAG,GACjB,EACT,cACC,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,eAAe,CAAC,GAAG,CAAC,EAAE,EAC3B,SAAS,EAAC,yEAAyE,GAClF,IACG,CACN,CAAC,CAAC,CAAC,CACH,kBACC,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAClC,SAAS,EAAC,6GAA6G,aAEvH,cACC,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,eAAe,CAAC,GAAG,CAAC,EAAE,EAC3B,SAAS,EAAC,wBAAwB,GACjC,EACF,cAAK,SAAS,EAAC,wGAAwG,YACtH,KAAC,SAAS,IAAC,SAAS,EAAC,uFAAuF,GAAG,GAC1G,IACE,CACT,IA/BQ,OAAO,CAAC,IAAI,GAAG,CAAC,QAAQ,EAAE,CAgC9B,CACN,CAAC;QACH,CAAC,CAAC,GACG,CACN,CAAC;AACH,CAAC"}
|