@ottocode/web-sdk 0.1.226 → 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/FileMentionPopup.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/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/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.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/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/toastStore.d.ts +1 -0
- package/dist/stores/toastStore.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 -267
- 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 -209
- 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 -162
- 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 -398
- 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 -212
- 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 -287
- 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 -572
- 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 -139
- 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 -92
- 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,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"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { CopyButton } from './CopyButton';
|
|
3
|
-
export function ToolContentBox({ title, icon, subtitle, copyText, variant = 'default', maxHeight = 'max-h-80', children, }) {
|
|
4
|
-
const isError = variant === 'error';
|
|
5
|
-
return (_jsxs("div", { className: `bg-card/60 border rounded-lg overflow-hidden flex flex-col ${maxHeight} ${isError ? 'border-red-500/50' : 'border-border'}`, children: [_jsxs("div", { className: `flex items-center justify-between gap-2 text-xs px-3 py-1.5 border-b border-border sticky top-0 ${isError
|
|
6
|
-
? 'text-red-600 dark:text-red-400 bg-red-500/10'
|
|
7
|
-
: 'text-muted-foreground bg-muted/30'}`, children: [_jsxs("div", { className: "flex items-center gap-2", children: [icon, _jsx("span", { children: title }), subtitle && (_jsx("span", { className: "text-muted-foreground/60", children: subtitle }))] }), copyText && _jsx(CopyButton, { text: copyText })] }), _jsx("div", { className: "overflow-auto flex-1", children: children })] }));
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=ToolContentBox.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ToolContentBox.js","sourceRoot":"","sources":["../../../../../src/components/messages/renderers/shared/ToolContentBox.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAY1C,MAAM,UAAU,cAAc,CAAC,EAC9B,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,OAAO,GAAG,SAAS,EACnB,SAAS,GAAG,UAAU,EACtB,QAAQ,GACa;IACrB,MAAM,OAAO,GAAG,OAAO,KAAK,OAAO,CAAC;IAEpC,OAAO,CACN,eACC,SAAS,EAAE,8DAA8D,SAAS,IACjF,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,eACjC,EAAE,aAEF,eACC,SAAS,EAAE,mGACV,OAAO;oBACN,CAAC,CAAC,8CAA8C;oBAChD,CAAC,CAAC,mCACJ,EAAE,aAEF,eAAK,SAAS,EAAC,yBAAyB,aACtC,IAAI,EACL,yBAAO,KAAK,GAAQ,EACnB,QAAQ,IAAI,CACZ,eAAM,SAAS,EAAC,0BAA0B,YAAE,QAAQ,GAAQ,CAC5D,IACI,EACL,QAAQ,IAAI,KAAC,UAAU,IAAC,IAAI,EAAE,QAAQ,GAAI,IACtC,EACN,cAAK,SAAS,EAAC,sBAAsB,YAAE,QAAQ,GAAO,IACjD,CACN,CAAC;AACH,CAAC"}
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { ChevronDown, ChevronRight, AlertCircle } from 'lucide-react';
|
|
3
|
-
const colorClasses = {
|
|
4
|
-
default: {
|
|
5
|
-
normal: 'text-muted-foreground',
|
|
6
|
-
hover: 'hover:text-foreground',
|
|
7
|
-
error: 'text-red-700 dark:text-red-300',
|
|
8
|
-
errorHover: 'hover:text-red-600 dark:hover:text-red-200',
|
|
9
|
-
},
|
|
10
|
-
blue: {
|
|
11
|
-
normal: 'text-blue-700 dark:text-blue-300',
|
|
12
|
-
hover: 'hover:text-blue-600 dark:hover:text-blue-200',
|
|
13
|
-
error: 'text-red-700 dark:text-red-300',
|
|
14
|
-
errorHover: 'hover:text-red-600 dark:hover:text-red-200',
|
|
15
|
-
},
|
|
16
|
-
emerald: {
|
|
17
|
-
normal: 'text-emerald-700 dark:text-emerald-300',
|
|
18
|
-
hover: 'hover:text-emerald-600 dark:hover:text-emerald-200',
|
|
19
|
-
error: 'text-red-700 dark:text-red-300',
|
|
20
|
-
errorHover: 'hover:text-red-600 dark:hover:text-red-200',
|
|
21
|
-
},
|
|
22
|
-
purple: {
|
|
23
|
-
normal: 'text-purple-700 dark:text-purple-300',
|
|
24
|
-
hover: 'hover:text-purple-600 dark:hover:text-purple-200',
|
|
25
|
-
error: 'text-red-700 dark:text-red-300',
|
|
26
|
-
errorHover: 'hover:text-red-600 dark:hover:text-red-200',
|
|
27
|
-
},
|
|
28
|
-
cyan: {
|
|
29
|
-
normal: 'text-cyan-700 dark:text-cyan-300',
|
|
30
|
-
hover: 'hover:text-cyan-600 dark:hover:text-cyan-200',
|
|
31
|
-
error: 'text-red-700 dark:text-red-300',
|
|
32
|
-
errorHover: 'hover:text-red-600 dark:hover:text-red-200',
|
|
33
|
-
},
|
|
34
|
-
amber: {
|
|
35
|
-
normal: 'text-amber-700 dark:text-amber-300',
|
|
36
|
-
hover: 'hover:text-amber-600 dark:hover:text-amber-200',
|
|
37
|
-
error: 'text-red-700 dark:text-red-300',
|
|
38
|
-
errorHover: 'hover:text-red-600 dark:hover:text-red-200',
|
|
39
|
-
},
|
|
40
|
-
red: {
|
|
41
|
-
normal: 'text-red-700 dark:text-red-300',
|
|
42
|
-
hover: 'hover:text-red-600 dark:hover:text-red-200',
|
|
43
|
-
error: 'text-red-700 dark:text-red-300',
|
|
44
|
-
errorHover: 'hover:text-red-600 dark:hover:text-red-200',
|
|
45
|
-
},
|
|
46
|
-
};
|
|
47
|
-
export function ToolHeader({ toolName, isExpanded, onToggle, isError = false, colorVariant = 'default', canExpand = true, children, }) {
|
|
48
|
-
const colors = colorClasses[colorVariant];
|
|
49
|
-
const colorClass = isError
|
|
50
|
-
? `${colors.error} ${colors.errorHover}`
|
|
51
|
-
: `${colors.normal} ${colors.hover}`;
|
|
52
|
-
return (_jsxs("button", { type: "button", onClick: () => canExpand && onToggle(), className: `flex items-center gap-2 transition-colors w-full min-w-0 ${colorClass}`, children: [canExpand ? (isExpanded ? (_jsx(ChevronDown, { className: "h-3 w-3 flex-shrink-0" })) : (_jsx(ChevronRight, { className: "h-3 w-3 flex-shrink-0" }))) : (_jsx("div", { className: "w-3 flex-shrink-0" })), isError && (_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: [toolName, isError ? ' error' : ''] }), children] }));
|
|
53
|
-
}
|
|
54
|
-
export function ToolHeaderSeparator() {
|
|
55
|
-
return _jsx("span", { className: "text-muted-foreground/70 flex-shrink-0", children: "\u00B7" });
|
|
56
|
-
}
|
|
57
|
-
export function ToolHeaderDetail({ children, className = '', }) {
|
|
58
|
-
return _jsx("span", { className: `text-foreground/70 ${className}`, children: children });
|
|
59
|
-
}
|
|
60
|
-
export function ToolHeaderMeta({ children, className = '', }) {
|
|
61
|
-
return (_jsx("span", { className: `text-muted-foreground/80 flex-shrink-0 whitespace-nowrap ${className}`, children: children }));
|
|
62
|
-
}
|
|
63
|
-
export function ToolHeaderSuccess({ children }) {
|
|
64
|
-
return (_jsx("span", { className: "text-emerald-600 dark:text-emerald-400 flex-shrink-0", children: children }));
|
|
65
|
-
}
|
|
66
|
-
export function ToolHeaderError({ children }) {
|
|
67
|
-
return (_jsx("span", { className: "text-red-600 dark:text-red-400 flex-shrink-0", children: children }));
|
|
68
|
-
}
|
|
69
|
-
//# sourceMappingURL=ToolHeader.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ToolHeader.js","sourceRoot":"","sources":["../../../../../src/components/messages/renderers/shared/ToolHeader.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export { CopyButton } from './CopyButton';
|
|
2
|
-
export { ToolContentBox } from './ToolContentBox';
|
|
3
|
-
export { ImagePreview } from './ImagePreview';
|
|
4
|
-
export { ToolHeader, ToolHeaderSeparator, ToolHeaderDetail, ToolHeaderMeta, ToolHeaderSuccess, ToolHeaderError, } from './ToolHeader';
|
|
5
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/components/messages/renderers/shared/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EACN,UAAU,EACV,mBAAmB,EACnB,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,eAAe,GACf,MAAM,cAAc,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/components/messages/renderers/types.ts"],"names":[],"mappings":""}
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Format a duration in milliseconds to a human-readable string.
|
|
3
|
-
* Shows seconds (with 1 decimal) if >= 1000ms, otherwise shows ms.
|
|
4
|
-
*
|
|
5
|
-
* @example
|
|
6
|
-
* formatDuration(450) // "450ms"
|
|
7
|
-
* formatDuration(1234) // "1.2s"
|
|
8
|
-
* formatDuration(5678) // "5.7s"
|
|
9
|
-
*/
|
|
10
|
-
export function formatDuration(ms) {
|
|
11
|
-
if (!ms)
|
|
12
|
-
return '';
|
|
13
|
-
if (ms >= 1000) {
|
|
14
|
-
return `${(ms / 1000).toFixed(1)}s`;
|
|
15
|
-
}
|
|
16
|
-
return `${ms}ms`;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Check if a tool result is an error response.
|
|
20
|
-
* Handles both the new ok: false pattern and legacy error patterns.
|
|
21
|
-
*/
|
|
22
|
-
export function isToolError(result) {
|
|
23
|
-
if (!result || typeof result !== 'object')
|
|
24
|
-
return false;
|
|
25
|
-
const obj = result;
|
|
26
|
-
return obj.ok === false || 'error' in obj || obj.success === false;
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* Extract the error message from a tool result.
|
|
30
|
-
* Checks multiple common fields: error, stderr, message, detail, details, reason.
|
|
31
|
-
*/
|
|
32
|
-
export function getErrorMessage(result) {
|
|
33
|
-
if (!result || typeof result !== 'object')
|
|
34
|
-
return null;
|
|
35
|
-
const obj = result;
|
|
36
|
-
const keys = ['error', 'stderr', 'message', 'detail', 'details', 'reason'];
|
|
37
|
-
for (const key of keys) {
|
|
38
|
-
const value = obj[key];
|
|
39
|
-
if (typeof value === 'string') {
|
|
40
|
-
const trimmed = value.trim();
|
|
41
|
-
if (trimmed.length)
|
|
42
|
-
return trimmed;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
return null;
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* Extract error details from a tool result.
|
|
49
|
-
* Returns the details object if present and valid.
|
|
50
|
-
*/
|
|
51
|
-
export function getErrorDetails(result) {
|
|
52
|
-
if (!result || typeof result !== 'object')
|
|
53
|
-
return null;
|
|
54
|
-
const obj = result;
|
|
55
|
-
if (obj.details && typeof obj.details === 'object') {
|
|
56
|
-
return obj.details;
|
|
57
|
-
}
|
|
58
|
-
return null;
|
|
59
|
-
}
|
|
60
|
-
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/components/messages/renderers/utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAAC,EAAsB;IACpD,IAAI,CAAC,EAAE;QAAE,OAAO,EAAE,CAAC;IACnB,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;QAChB,OAAO,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IACrC,CAAC;IACD,OAAO,GAAG,EAAE,IAAI,CAAC;AAClB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,MAAe;IAC1C,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACxD,MAAM,GAAG,GAAG,MAAiC,CAAC;IAC9C,OAAO,GAAG,CAAC,EAAE,KAAK,KAAK,IAAI,OAAO,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,KAAK,KAAK,CAAC;AACpE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,MAAe;IAC9C,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAEvD,MAAM,GAAG,GAAG,MAAiC,CAAC;IAC9C,MAAM,IAAI,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC3E,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QACvB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;YAC7B,IAAI,OAAO,CAAC,MAAM;gBAAE,OAAO,OAAO,CAAC;QACpC,CAAC;IACF,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAC9B,MAAe;IAEf,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACvD,MAAM,GAAG,GAAG,MAAiC,CAAC;IAC9C,IAAI,GAAG,CAAC,OAAO,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACpD,OAAO,GAAG,CAAC,OAAkC,CAAC;IAC/C,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { memo } from 'react';
|
|
3
|
-
import { ProviderSetupStep } from './steps/ProviderSetupStep';
|
|
4
|
-
import { DefaultsStep } from './steps/DefaultsStep';
|
|
5
|
-
import { useOnboardingStore } from '../../stores/onboardingStore';
|
|
6
|
-
import { useSetuStore } from '../../stores/setuStore';
|
|
7
|
-
import { useAuthStatus } from '../../hooks/useAuthStatus';
|
|
8
|
-
export const OnboardingModal = memo(function OnboardingModal({ hideHeader = false, }) {
|
|
9
|
-
const isOpen = useOnboardingStore((s) => s.isOpen);
|
|
10
|
-
const currentStep = useOnboardingStore((s) => s.currentStep);
|
|
11
|
-
const manageMode = useOnboardingStore((s) => s.manageMode);
|
|
12
|
-
const authStatus = useOnboardingStore((s) => s.authStatus);
|
|
13
|
-
const nextStep = useOnboardingStore((s) => s.nextStep);
|
|
14
|
-
const prevStep = useOnboardingStore((s) => s.prevStep);
|
|
15
|
-
const reset = useOnboardingStore((s) => s.reset);
|
|
16
|
-
const openTopupModal = useSetuStore((s) => s.openTopupModal);
|
|
17
|
-
const { setupWallet, importWallet, addProvider, removeProvider, completeOnboarding, startOAuth, startOAuthManual, exchangeOAuthCode, startCopilotDeviceFlow, pollCopilotDeviceFlow, getCopilotAuthMethods, saveCopilotToken, importCopilotTokenFromGh, getCopilotDiagnostics, } = useAuthStatus();
|
|
18
|
-
if (!isOpen || !authStatus)
|
|
19
|
-
return null;
|
|
20
|
-
return (_jsxs("div", { className: "fixed inset-0 z-[9999] bg-background text-foreground overflow-y-auto", children: [currentStep === 'wallet' && (_jsx(ProviderSetupStep, { authStatus: authStatus, onSetupWallet: setupWallet, onImportWallet: importWallet, onAddProvider: addProvider, onRemoveProvider: removeProvider, onStartOAuth: startOAuth, onStartOAuthManual: startOAuthManual, onExchangeOAuthCode: exchangeOAuthCode, onOpenTopup: openTopupModal, onNext: nextStep, manageMode: manageMode, onClose: reset, hideHeader: hideHeader, onStartCopilotDeviceFlow: startCopilotDeviceFlow, onPollCopilotDeviceFlow: pollCopilotDeviceFlow, onGetCopilotAuthMethods: getCopilotAuthMethods, onSaveCopilotToken: saveCopilotToken, onImportCopilotTokenFromGh: importCopilotTokenFromGh, onGetCopilotDiagnostics: getCopilotDiagnostics })), currentStep === 'defaults' && (_jsx(DefaultsStep, { authStatus: authStatus, onComplete: completeOnboarding, onBack: prevStep, hideHeader: hideHeader }))] }));
|
|
21
|
-
});
|
|
22
|
-
//# sourceMappingURL=OnboardingModal.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"OnboardingModal.js","sourceRoot":"","sources":["../../../src/components/onboarding/OnboardingModal.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAM1D,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,eAAe,CAAC,EAC5D,UAAU,GAAG,KAAK,GACI;IACtB,MAAM,MAAM,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACnD,MAAM,WAAW,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IAC7D,MAAM,UAAU,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAC3D,MAAM,UAAU,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAC3D,MAAM,QAAQ,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACvD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACjD,MAAM,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;IAE7D,MAAM,EACL,WAAW,EACX,YAAY,EACZ,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,EACrB,qBAAqB,EACrB,gBAAgB,EAChB,wBAAwB,EACxB,qBAAqB,GACrB,GAAG,aAAa,EAAE,CAAC;IAEpB,IAAI,CAAC,MAAM,IAAI,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IAExC,OAAO,CACN,eAAK,SAAS,EAAC,sEAAsE,aACnF,WAAW,KAAK,QAAQ,IAAI,CAC5B,KAAC,iBAAiB,IACjB,UAAU,EAAE,UAAU,EACtB,aAAa,EAAE,WAAW,EAC1B,cAAc,EAAE,YAAY,EAC5B,aAAa,EAAE,WAAW,EAC1B,gBAAgB,EAAE,cAAc,EAChC,YAAY,EAAE,UAAU,EACxB,kBAAkB,EAAE,gBAAgB,EACpC,mBAAmB,EAAE,iBAAiB,EACtC,WAAW,EAAE,cAAc,EAC3B,MAAM,EAAE,QAAQ,EAChB,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,KAAK,EACd,UAAU,EAAE,UAAU,EACtB,wBAAwB,EAAE,sBAAsB,EAChD,uBAAuB,EAAE,qBAAqB,EAC9C,uBAAuB,EAAE,qBAAqB,EAC9C,kBAAkB,EAAE,gBAAgB,EACpC,0BAA0B,EAAE,wBAAwB,EACpD,uBAAuB,EAAE,qBAAqB,GAC7C,CACF,EAEA,WAAW,KAAK,UAAU,IAAI,CAC9B,KAAC,YAAY,IACZ,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,kBAAkB,EAC9B,MAAM,EAAE,QAAQ,EAChB,UAAU,EAAE,UAAU,GACrB,CACF,IACI,CACN,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/onboarding/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC"}
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
import { memo, useState, useEffect, useId, useRef } from 'react';
|
|
3
|
-
import { Loader2, ArrowLeft, Sparkles, ChevronDown } from 'lucide-react';
|
|
4
|
-
import { apiClient } from '../../../lib/api-client';
|
|
5
|
-
import { ProviderLogo } from '../../common/ProviderLogo';
|
|
6
|
-
export const DefaultsStep = memo(function DefaultsStep({ authStatus, onComplete, onBack, hideHeader = false, }) {
|
|
7
|
-
const [config, setConfig] = useState(null);
|
|
8
|
-
const [allModels, setAllModels] = useState(null);
|
|
9
|
-
const [isLoading, setIsLoading] = useState(true);
|
|
10
|
-
const [isSaving, setIsSaving] = useState(false);
|
|
11
|
-
const [selectedProvider, setSelectedProvider] = useState('setu');
|
|
12
|
-
const [selectedModel, setSelectedModel] = useState('kimi-k2.5');
|
|
13
|
-
const [selectedAgent, setSelectedAgent] = useState(authStatus.defaults.agent || 'build');
|
|
14
|
-
const [selectedApproval, setSelectedApproval] = useState(authStatus.defaults.toolApproval || 'dangerous');
|
|
15
|
-
const [guidedMode, setGuidedMode] = useState(false);
|
|
16
|
-
const hasUserChangedProvider = useRef(false);
|
|
17
|
-
const providerId = useId();
|
|
18
|
-
const modelId = useId();
|
|
19
|
-
const agentId = useId();
|
|
20
|
-
const approvalId = useId();
|
|
21
|
-
useEffect(() => {
|
|
22
|
-
const loadConfig = async () => {
|
|
23
|
-
try {
|
|
24
|
-
const [configData, modelsData] = await Promise.all([
|
|
25
|
-
apiClient.getConfig(),
|
|
26
|
-
apiClient.getAllModels(),
|
|
27
|
-
]);
|
|
28
|
-
setConfig(configData);
|
|
29
|
-
setAllModels(modelsData);
|
|
30
|
-
const cfgProvider = configData?.defaults?.provider || 'setu';
|
|
31
|
-
const cfgModel = configData?.defaults?.model || 'kimi-k2.5';
|
|
32
|
-
const providerHasModels = modelsData?.[cfgProvider]?.models?.length > 0;
|
|
33
|
-
const resolvedProvider = providerHasModels ? cfgProvider : 'setu';
|
|
34
|
-
const resolvedModel = providerHasModels &&
|
|
35
|
-
modelsData[cfgProvider].models.some((m) => m.id === cfgModel)
|
|
36
|
-
? cfgModel
|
|
37
|
-
: modelsData?.[resolvedProvider]?.models?.[0]?.id || 'kimi-k2.5';
|
|
38
|
-
setSelectedProvider(resolvedProvider);
|
|
39
|
-
setSelectedModel(resolvedModel);
|
|
40
|
-
if (configData?.defaults?.agent) {
|
|
41
|
-
setSelectedAgent(configData.defaults.agent);
|
|
42
|
-
}
|
|
43
|
-
if (configData?.defaults?.toolApproval) {
|
|
44
|
-
setSelectedApproval(configData.defaults.toolApproval);
|
|
45
|
-
}
|
|
46
|
-
if (configData?.defaults?.guidedMode) {
|
|
47
|
-
setGuidedMode(configData.defaults.guidedMode);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
catch {
|
|
51
|
-
}
|
|
52
|
-
finally {
|
|
53
|
-
setIsLoading(false);
|
|
54
|
-
}
|
|
55
|
-
};
|
|
56
|
-
loadConfig();
|
|
57
|
-
}, []);
|
|
58
|
-
useEffect(() => {
|
|
59
|
-
if (config?.agents?.length) {
|
|
60
|
-
const agents = config.agents;
|
|
61
|
-
if (!selectedAgent || !agents.includes(selectedAgent)) {
|
|
62
|
-
setSelectedAgent(agents.includes('build') ? 'build' : agents[0]);
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
}, [config, selectedAgent]);
|
|
66
|
-
useEffect(() => {
|
|
67
|
-
if (allModels?.[selectedProvider] && hasUserChangedProvider.current) {
|
|
68
|
-
const providerModels = allModels[selectedProvider];
|
|
69
|
-
if (!providerModels.models.some((m) => m.id === selectedModel)) {
|
|
70
|
-
setSelectedModel(providerModels.models[0]?.id || '');
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
}, [selectedProvider, allModels, selectedModel]);
|
|
74
|
-
const handleFinish = async () => {
|
|
75
|
-
setIsSaving(true);
|
|
76
|
-
try {
|
|
77
|
-
await apiClient.updateDefaults({
|
|
78
|
-
provider: selectedProvider,
|
|
79
|
-
model: selectedModel,
|
|
80
|
-
agent: selectedAgent,
|
|
81
|
-
toolApproval: selectedApproval,
|
|
82
|
-
guidedMode,
|
|
83
|
-
scope: 'global',
|
|
84
|
-
});
|
|
85
|
-
await onComplete();
|
|
86
|
-
}
|
|
87
|
-
catch {
|
|
88
|
-
}
|
|
89
|
-
finally {
|
|
90
|
-
setIsSaving(false);
|
|
91
|
-
}
|
|
92
|
-
};
|
|
93
|
-
if (isLoading) {
|
|
94
|
-
return (_jsx("div", { className: "min-h-screen flex items-center justify-center", children: _jsx(Loader2, { className: "w-8 h-8 animate-spin text-muted-foreground" }) }));
|
|
95
|
-
}
|
|
96
|
-
const availableProviders = config?.providers.filter((p) => (authStatus.providers[p]?.configured || p === 'setu') &&
|
|
97
|
-
allModels?.[p]?.models?.length > 0) || ['setu'];
|
|
98
|
-
const currentProviderModels = allModels?.[selectedProvider]?.models || [];
|
|
99
|
-
return (_jsxs("div", { className: "min-h-screen flex flex-col", children: [!hideHeader && (_jsxs("div", { className: "flex items-center justify-between px-6 py-4 border-b border-border", children: [_jsxs("div", { className: "flex items-center gap-3", children: [_jsx(ProviderLogo, { provider: "setu", size: 24 }), _jsx("span", { className: "font-semibold text-foreground", children: "otto" })] }), _jsxs("div", { className: "flex items-center gap-2 text-sm text-muted-foreground", children: [_jsx("span", { className: "w-2 h-2 rounded-full bg-blue-500" }), "Step 2 of 2"] })] })), _jsx("div", { className: `flex-1 px-4 sm:px-6 lg:px-12 pb-32 ${hideHeader ? 'pt-8 sm:pt-10 lg:pt-14' : 'pt-6 sm:pt-8 lg:pt-12'}`, children: _jsxs("div", { className: "max-w-7xl mx-auto", children: [_jsxs("div", { className: "mb-10", children: [_jsx("h1", { className: "text-3xl lg:text-4xl font-semibold text-foreground mb-3", children: "Configure Defaults" }), _jsx("p", { className: "text-lg text-muted-foreground", children: "Set your preferences. You can change these anytime in settings." })] }), _jsxs("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-6", children: [_jsxs("div", { className: "md:col-span-2", children: [_jsx("label", { htmlFor: providerId, className: "block text-sm font-medium text-muted-foreground mb-2", children: "Default Provider" }), _jsxs("div", { className: "relative", children: [_jsx("select", { id: providerId, value: selectedProvider, onChange: (e) => {
|
|
100
|
-
hasUserChangedProvider.current = true;
|
|
101
|
-
setSelectedProvider(e.target.value);
|
|
102
|
-
}, className: "w-full px-4 py-3 bg-card border border-border rounded-xl text-foreground appearance-none cursor-pointer focus:outline-none focus:border-ring transition-colors", children: availableProviders.map((p) => (_jsx("option", { value: p, children: authStatus.providers[p]?.label || p }, p))) }), _jsx(ChevronDown, { className: "absolute right-4 top-1/2 -translate-y-1/2 w-5 h-5 text-muted-foreground pointer-events-none" })] })] }), _jsxs("div", { className: "md:col-span-2", children: [_jsx("label", { htmlFor: modelId, className: "block text-sm font-medium text-muted-foreground mb-2", children: "Default Model" }), _jsxs("div", { className: "relative", children: [_jsx("select", { id: modelId, value: selectedModel, onChange: (e) => setSelectedModel(e.target.value), className: "w-full px-4 py-3 bg-card border border-border rounded-xl text-foreground appearance-none cursor-pointer focus:outline-none focus:border-ring transition-colors", children: currentProviderModels.map((m) => (_jsx("option", { value: m.id, children: m.label || m.id }, m.id))) }), _jsx(ChevronDown, { className: "absolute right-4 top-1/2 -translate-y-1/2 w-5 h-5 text-muted-foreground pointer-events-none" })] })] }), _jsxs("div", { children: [_jsx("label", { htmlFor: agentId, className: "block text-sm font-medium text-muted-foreground mb-2", children: "Default Agent" }), _jsxs("div", { className: "relative", children: [_jsx("select", { id: agentId, value: selectedAgent, onChange: (e) => setSelectedAgent(e.target.value), className: "w-full px-4 py-3 bg-card border border-border rounded-xl text-foreground appearance-none cursor-pointer focus:outline-none focus:border-ring transition-colors", children: (config?.agents || ['build']).map((a) => (_jsx("option", { value: a, children: a }, a))) }), _jsx(ChevronDown, { className: "absolute right-4 top-1/2 -translate-y-1/2 w-5 h-5 text-muted-foreground pointer-events-none" })] })] }), _jsxs("div", { children: [_jsx("label", { htmlFor: approvalId, className: "block text-sm font-medium text-muted-foreground mb-2", children: "Tool Approval" }), _jsxs("div", { className: "relative", children: [_jsxs("select", { id: approvalId, value: selectedApproval, onChange: (e) => setSelectedApproval(e.target.value), className: "w-full px-4 py-3 bg-card border border-border rounded-xl text-foreground appearance-none cursor-pointer focus:outline-none focus:border-ring transition-colors", children: [_jsx("option", { value: "auto", children: "Auto - run without asking" }), _jsx("option", { value: "dangerous", children: "Dangerous - approve writes only" }), _jsx("option", { value: "all", children: "All - approve every tool" })] }), _jsx(ChevronDown, { className: "absolute right-4 top-1/2 -translate-y-1/2 w-5 h-5 text-muted-foreground pointer-events-none" })] }), _jsx("p", { className: "mt-2 text-sm text-muted-foreground", children: "Controls when tool executions need approval" })] }), _jsx("div", { className: "md:col-span-2", children: _jsxs("div", { className: "flex items-center justify-between px-4 py-3 bg-card border border-border rounded-xl", children: [_jsxs("div", { children: [_jsx("span", { className: "text-sm font-medium text-foreground", children: "Guided Mode" }), _jsx("p", { className: "text-sm text-muted-foreground mt-0.5", children: "AI will run commands and manage services for you instead of giving instructions" })] }), _jsx("button", { type: "button", role: "switch", "aria-checked": guidedMode, onClick: () => setGuidedMode(!guidedMode), className: `relative inline-flex h-6 w-11 items-center rounded-full transition-colors focus:outline-none focus:ring-2 focus:ring-primary focus:ring-offset-2 ${guidedMode ? 'bg-primary' : 'bg-muted'}`, children: _jsx("span", { className: `inline-block h-4 w-4 transform rounded-full transition-transform ${guidedMode ? 'translate-x-6' : 'translate-x-1'} ${guidedMode ? 'bg-primary-foreground' : 'bg-foreground'}` }) })] }) })] })] }) }), _jsx("div", { className: "fixed bottom-0 left-0 right-0 px-4 sm:px-6 py-4 border-t border-border bg-background", children: _jsxs("div", { className: "max-w-7xl mx-auto flex items-center justify-between", children: [_jsxs("button", { type: "button", onClick: onBack, className: "flex items-center gap-2 px-4 py-3 text-muted-foreground hover:text-foreground transition-colors", children: [_jsx(ArrowLeft, { className: "w-4 h-4" }), "Back"] }), _jsx("button", { type: "button", onClick: handleFinish, disabled: isSaving, className: "flex items-center gap-2 px-6 py-3 bg-primary text-primary-foreground rounded-lg font-medium hover:bg-primary/90 transition-colors disabled:opacity-50", children: isSaving ? (_jsxs(_Fragment, { children: [_jsx(Loader2, { className: "w-4 h-4 animate-spin" }), "Setting up..."] })) : (_jsxs(_Fragment, { children: ["Start Using otto", _jsx(Sparkles, { className: "w-4 h-4" })] })) })] }) })] }));
|
|
103
|
-
});
|
|
104
|
-
//# sourceMappingURL=DefaultsStep.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultsStep.js","sourceRoot":"","sources":["../../../../src/components/onboarding/steps/DefaultsStep.tsx"],"names":[],"mappings":"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"}
|