@nanocollective/nanocoder 1.23.0 → 1.24.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +1 -15
- package/README.md +25 -884
- package/assets/nanocoder-vscode.vsix +0 -0
- package/dist/ai-sdk-client/ai-sdk-client.d.ts +3 -2
- package/dist/ai-sdk-client/ai-sdk-client.d.ts.map +1 -1
- package/dist/ai-sdk-client/ai-sdk-client.js +16 -2
- package/dist/ai-sdk-client/ai-sdk-client.js.map +1 -1
- package/dist/ai-sdk-client/chat/chat-handler.d.ts +2 -1
- package/dist/ai-sdk-client/chat/chat-handler.d.ts.map +1 -1
- package/dist/ai-sdk-client/chat/chat-handler.js +37 -70
- package/dist/ai-sdk-client/chat/chat-handler.js.map +1 -1
- package/dist/ai-sdk-client/chat/streaming-handler.d.ts +2 -2
- package/dist/ai-sdk-client/chat/streaming-handler.d.ts.map +1 -1
- package/dist/ai-sdk-client/chat/streaming-handler.js +4 -23
- package/dist/ai-sdk-client/chat/streaming-handler.js.map +1 -1
- package/dist/ai-sdk-client/error-handling/error-parser.d.ts.map +1 -1
- package/dist/ai-sdk-client/error-handling/error-parser.js +7 -2
- package/dist/ai-sdk-client/error-handling/error-parser.js.map +1 -1
- package/dist/ai-sdk-client/providers/provider-factory.d.ts +2 -1
- package/dist/ai-sdk-client/providers/provider-factory.d.ts.map +1 -1
- package/dist/ai-sdk-client/providers/provider-factory.js +55 -0
- package/dist/ai-sdk-client/providers/provider-factory.js.map +1 -1
- package/dist/app/App.d.ts +1 -1
- package/dist/app/App.d.ts.map +1 -1
- package/dist/app/App.js +66 -50
- package/dist/app/App.js.map +1 -1
- package/dist/app/components/chat-input.d.ts +4 -1
- package/dist/app/components/chat-input.d.ts.map +1 -1
- package/dist/app/components/chat-input.js +4 -3
- package/dist/app/components/chat-input.js.map +1 -1
- package/dist/app/components/modal-selectors.d.ts +6 -7
- package/dist/app/components/modal-selectors.d.ts.map +1 -1
- package/dist/app/components/modal-selectors.js +11 -7
- package/dist/app/components/modal-selectors.js.map +1 -1
- package/dist/app/components/settings-selector.d.ts.map +1 -1
- package/dist/app/components/settings-selector.js +3 -3
- package/dist/app/components/settings-selector.js.map +1 -1
- package/dist/app/helpers.d.ts.map +1 -1
- package/dist/app/helpers.js +2 -4
- package/dist/app/helpers.js.map +1 -1
- package/dist/app/index.d.ts +0 -1
- package/dist/app/index.d.ts.map +1 -1
- package/dist/app/index.js +0 -1
- package/dist/app/index.js.map +1 -1
- package/dist/app/types.d.ts +2 -0
- package/dist/app/types.d.ts.map +1 -1
- package/dist/app/utils/app-util.d.ts +1 -5
- package/dist/app/utils/app-util.d.ts.map +1 -1
- package/dist/app/utils/app-util.js +60 -460
- package/dist/app/utils/app-util.js.map +1 -1
- package/dist/app/utils/handlers/compact-handler.d.ts +6 -0
- package/dist/app/utils/handlers/compact-handler.d.ts.map +1 -0
- package/dist/app/utils/handlers/compact-handler.js +148 -0
- package/dist/app/utils/handlers/compact-handler.js.map +1 -0
- package/dist/app/utils/handlers/context-max-handler.d.ts +11 -0
- package/dist/app/utils/handlers/context-max-handler.d.ts.map +1 -0
- package/dist/app/utils/handlers/context-max-handler.js +102 -0
- package/dist/app/utils/handlers/context-max-handler.js.map +1 -0
- package/dist/app/utils/handlers/create-handler.d.ts +17 -0
- package/dist/app/utils/handlers/create-handler.d.ts.map +1 -0
- package/dist/app/utils/handlers/create-handler.js +112 -0
- package/dist/app/utils/handlers/create-handler.js.map +1 -0
- package/dist/app/utils/handlers/session-handler.d.ts +8 -0
- package/dist/app/utils/handlers/session-handler.d.ts.map +1 -0
- package/dist/app/utils/handlers/session-handler.js +99 -0
- package/dist/app/utils/handlers/session-handler.js.map +1 -0
- package/dist/auth/github-copilot.d.ts +44 -0
- package/dist/auth/github-copilot.d.ts.map +1 -0
- package/dist/auth/github-copilot.js +178 -0
- package/dist/auth/github-copilot.js.map +1 -0
- package/dist/cli.js +83 -3
- package/dist/cli.js.map +1 -1
- package/dist/client-factory.d.ts +1 -1
- package/dist/client-factory.d.ts.map +1 -1
- package/dist/client-factory.js +39 -8
- package/dist/client-factory.js.map +1 -1
- package/dist/commands/compact.d.ts +1 -6
- package/dist/commands/compact.d.ts.map +1 -1
- package/dist/commands/compact.js +2 -13
- package/dist/commands/compact.js.map +1 -1
- package/dist/commands/context-max.d.ts +1 -2
- package/dist/commands/context-max.d.ts.map +1 -1
- package/dist/commands/context-max.js +2 -9
- package/dist/commands/context-max.js.map +1 -1
- package/dist/commands/copilot-login-command.d.ts +3 -0
- package/dist/commands/copilot-login-command.d.ts.map +1 -0
- package/dist/commands/copilot-login-command.js +9 -0
- package/dist/commands/copilot-login-command.js.map +1 -0
- package/dist/commands/copilot-login.d.ts +9 -0
- package/dist/commands/copilot-login.d.ts.map +1 -0
- package/dist/commands/copilot-login.js +70 -0
- package/dist/commands/copilot-login.js.map +1 -0
- package/dist/commands/create-stub-command.d.ts +8 -0
- package/dist/commands/create-stub-command.d.ts.map +1 -0
- package/dist/commands/create-stub-command.js +14 -0
- package/dist/commands/create-stub-command.js.map +1 -0
- package/dist/commands/explorer.d.ts +1 -2
- package/dist/commands/explorer.d.ts.map +1 -1
- package/dist/commands/explorer.js +2 -9
- package/dist/commands/explorer.js.map +1 -1
- package/dist/commands/help.d.ts.map +1 -1
- package/dist/commands/help.js +1 -1
- package/dist/commands/help.js.map +1 -1
- package/dist/commands/ide.d.ts +1 -2
- package/dist/commands/ide.d.ts.map +1 -1
- package/dist/commands/ide.js +2 -9
- package/dist/commands/ide.js.map +1 -1
- package/dist/commands/index.d.ts +2 -0
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +2 -0
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +2 -1
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/model.d.ts +1 -2
- package/dist/commands/model.d.ts.map +1 -1
- package/dist/commands/model.js +2 -10
- package/dist/commands/model.js.map +1 -1
- package/dist/commands/provider.d.ts +1 -2
- package/dist/commands/provider.d.ts.map +1 -1
- package/dist/commands/provider.js +2 -10
- package/dist/commands/provider.js.map +1 -1
- package/dist/commands/resume.d.ts +8 -0
- package/dist/commands/resume.d.ts.map +1 -0
- package/dist/commands/resume.js +11 -0
- package/dist/commands/resume.js.map +1 -0
- package/dist/commands/settings.d.ts +1 -2
- package/dist/commands/settings.d.ts.map +1 -1
- package/dist/commands/settings.js +2 -10
- package/dist/commands/settings.js.map +1 -1
- package/dist/commands/status.d.ts +1 -2
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +2 -10
- package/dist/commands/status.js.map +1 -1
- package/dist/components/assistant-message.d.ts.map +1 -1
- package/dist/components/assistant-message.js +2 -27
- package/dist/components/assistant-message.js.map +1 -1
- package/dist/components/provider-selector.d.ts.map +1 -1
- package/dist/components/provider-selector.js +4 -3
- package/dist/components/provider-selector.js.map +1 -1
- package/dist/components/session-selector.d.ts +12 -0
- package/dist/components/session-selector.d.ts.map +1 -0
- package/dist/components/session-selector.js +108 -0
- package/dist/components/session-selector.js.map +1 -0
- package/dist/components/text-input.d.ts +2 -1
- package/dist/components/text-input.d.ts.map +1 -1
- package/dist/components/text-input.js +11 -6
- package/dist/components/text-input.js.map +1 -1
- package/dist/components/tool-confirmation.d.ts.map +1 -1
- package/dist/components/tool-confirmation.js +9 -6
- package/dist/components/tool-confirmation.js.map +1 -1
- package/dist/components/ui/styled-title.js +2 -2
- package/dist/components/ui/styled-title.js.map +1 -1
- package/dist/components/user-input.d.ts +3 -1
- package/dist/components/user-input.d.ts.map +1 -1
- package/dist/components/user-input.js +35 -23
- package/dist/components/user-input.js.map +1 -1
- package/dist/components/user-message.d.ts.map +1 -1
- package/dist/components/user-message.js +1 -23
- package/dist/components/user-message.js.map +1 -1
- package/dist/components/vscode-extension-prompt.d.ts +6 -1
- package/dist/components/vscode-extension-prompt.d.ts.map +1 -1
- package/dist/components/vscode-extension-prompt.js +80 -36
- package/dist/components/vscode-extension-prompt.js.map +1 -1
- package/dist/config/copilot-credentials.d.ts +27 -0
- package/dist/config/copilot-credentials.d.ts.map +1 -0
- package/dist/config/copilot-credentials.js +81 -0
- package/dist/config/copilot-credentials.js.map +1 -0
- package/dist/config/index.d.ts +0 -2
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +63 -27
- package/dist/config/index.js.map +1 -1
- package/dist/config/mcp-config-loader.d.ts +2 -3
- package/dist/config/mcp-config-loader.d.ts.map +1 -1
- package/dist/config/mcp-config-loader.js +136 -181
- package/dist/config/mcp-config-loader.js.map +1 -1
- package/dist/config/nanocoder-tools-config.js +2 -2
- package/dist/config/nanocoder-tools-config.js.map +1 -1
- package/dist/config/themes.d.ts.map +1 -1
- package/dist/config/themes.js +9 -766
- package/dist/config/themes.js.map +1 -1
- package/dist/config/validation.d.ts.map +1 -1
- package/dist/config/validation.js +0 -19
- package/dist/config/validation.js.map +1 -1
- package/dist/custom-commands/parser.d.ts.map +1 -1
- package/dist/custom-commands/parser.js +0 -9
- package/dist/custom-commands/parser.js.map +1 -1
- package/dist/hooks/chat-handler/conversation/conversation-loop.d.ts +5 -0
- package/dist/hooks/chat-handler/conversation/conversation-loop.d.ts.map +1 -1
- package/dist/hooks/chat-handler/conversation/conversation-loop.js +78 -97
- package/dist/hooks/chat-handler/conversation/conversation-loop.js.map +1 -1
- package/dist/hooks/chat-handler/conversation/tool-executor.d.ts +7 -2
- package/dist/hooks/chat-handler/conversation/tool-executor.d.ts.map +1 -1
- package/dist/hooks/chat-handler/conversation/tool-executor.js +112 -42
- package/dist/hooks/chat-handler/conversation/tool-executor.js.map +1 -1
- package/dist/hooks/chat-handler/types.d.ts +3 -0
- package/dist/hooks/chat-handler/types.d.ts.map +1 -1
- package/dist/hooks/chat-handler/useChatHandler.d.ts +1 -1
- package/dist/hooks/chat-handler/useChatHandler.d.ts.map +1 -1
- package/dist/hooks/chat-handler/useChatHandler.js +7 -1
- package/dist/hooks/chat-handler/useChatHandler.js.map +1 -1
- package/dist/hooks/useAppHandlers.d.ts +8 -1
- package/dist/hooks/useAppHandlers.d.ts.map +1 -1
- package/dist/hooks/useAppHandlers.js +119 -13
- package/dist/hooks/useAppHandlers.js.map +1 -1
- package/dist/hooks/useAppInitialization.d.ts +5 -3
- package/dist/hooks/useAppInitialization.d.ts.map +1 -1
- package/dist/hooks/useAppInitialization.js +51 -30
- package/dist/hooks/useAppInitialization.js.map +1 -1
- package/dist/hooks/useAppState.d.ts +15 -10
- package/dist/hooks/useAppState.d.ts.map +1 -1
- package/dist/hooks/useAppState.js +37 -28
- package/dist/hooks/useAppState.js.map +1 -1
- package/dist/hooks/useModeHandlers.d.ts +8 -14
- package/dist/hooks/useModeHandlers.d.ts.map +1 -1
- package/dist/hooks/useModeHandlers.js +31 -101
- package/dist/hooks/useModeHandlers.js.map +1 -1
- package/dist/hooks/useNonInteractiveMode.d.ts +7 -0
- package/dist/hooks/useNonInteractiveMode.d.ts.map +1 -1
- package/dist/hooks/useNonInteractiveMode.js +39 -2
- package/dist/hooks/useNonInteractiveMode.js.map +1 -1
- package/dist/hooks/useSessionAutosave.d.ts +16 -0
- package/dist/hooks/useSessionAutosave.d.ts.map +1 -0
- package/dist/hooks/useSessionAutosave.js +133 -0
- package/dist/hooks/useSessionAutosave.js.map +1 -0
- package/dist/hooks/useToolHandler.d.ts +2 -1
- package/dist/hooks/useToolHandler.d.ts.map +1 -1
- package/dist/hooks/useToolHandler.js +9 -3
- package/dist/hooks/useToolHandler.js.map +1 -1
- package/dist/mcp/mcp-client.d.ts.map +1 -1
- package/dist/mcp/mcp-client.js +3 -2
- package/dist/mcp/mcp-client.js.map +1 -1
- package/dist/mcp/transport-factory.d.ts.map +1 -1
- package/dist/mcp/transport-factory.js +4 -36
- package/dist/mcp/transport-factory.js.map +1 -1
- package/dist/models/models-dev-client.d.ts.map +1 -1
- package/dist/models/models-dev-client.js +21 -14
- package/dist/models/models-dev-client.js.map +1 -1
- package/dist/session/session-manager.d.ts +57 -0
- package/dist/session/session-manager.d.ts.map +1 -0
- package/dist/session/session-manager.js +361 -0
- package/dist/session/session-manager.js.map +1 -0
- package/dist/test-utils/render-with-theme.d.ts.map +1 -1
- package/dist/test-utils/render-with-theme.js +2 -1
- package/dist/test-utils/render-with-theme.js.map +1 -1
- package/dist/tool-calling/tool-parser.d.ts +3 -2
- package/dist/tool-calling/tool-parser.d.ts.map +1 -1
- package/dist/tool-calling/tool-parser.js +6 -27
- package/dist/tool-calling/tool-parser.js.map +1 -1
- package/dist/tools/execute-bash.d.ts.map +1 -1
- package/dist/tools/execute-bash.js +5 -0
- package/dist/tools/execute-bash.js.map +1 -1
- package/dist/tools/fetch-url.d.ts.map +1 -1
- package/dist/tools/fetch-url.js +11 -2
- package/dist/tools/fetch-url.js.map +1 -1
- package/dist/tools/file-ops/copy-file.d.ts.map +1 -1
- package/dist/tools/file-ops/copy-file.js +6 -36
- package/dist/tools/file-ops/copy-file.js.map +1 -1
- package/dist/tools/file-ops/create-directory.d.ts.map +1 -1
- package/dist/tools/file-ops/create-directory.js +2 -19
- package/dist/tools/file-ops/create-directory.js.map +1 -1
- package/dist/tools/file-ops/delete-file.d.ts.map +1 -1
- package/dist/tools/file-ops/delete-file.js +6 -20
- package/dist/tools/file-ops/delete-file.js.map +1 -1
- package/dist/tools/file-ops/move-file.d.ts.map +1 -1
- package/dist/tools/file-ops/move-file.js +6 -36
- package/dist/tools/file-ops/move-file.js.map +1 -1
- package/dist/tools/file-ops/string-replace-preview.d.ts +10 -0
- package/dist/tools/file-ops/string-replace-preview.d.ts.map +1 -0
- package/dist/tools/file-ops/string-replace-preview.js +171 -0
- package/dist/tools/file-ops/string-replace-preview.js.map +1 -0
- package/dist/tools/file-ops/string-replace.d.ts.map +1 -1
- package/dist/tools/file-ops/string-replace.js +9 -292
- package/dist/tools/file-ops/string-replace.js.map +1 -1
- package/dist/tools/file-ops/write-file.d.ts.map +1 -1
- package/dist/tools/file-ops/write-file.js +7 -66
- package/dist/tools/file-ops/write-file.js.map +1 -1
- package/dist/tools/find-files.d.ts.map +1 -1
- package/dist/tools/find-files.js +1 -0
- package/dist/tools/find-files.js.map +1 -1
- package/dist/tools/git/git-diff.d.ts.map +1 -1
- package/dist/tools/git/git-diff.js +1 -0
- package/dist/tools/git/git-diff.js.map +1 -1
- package/dist/tools/git/git-log.d.ts.map +1 -1
- package/dist/tools/git/git-log.js +1 -0
- package/dist/tools/git/git-log.js.map +1 -1
- package/dist/tools/git/git-status.d.ts.map +1 -1
- package/dist/tools/git/git-status.js +1 -0
- package/dist/tools/git/git-status.js.map +1 -1
- package/dist/tools/index.d.ts +1 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +7 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/list-directory.d.ts.map +1 -1
- package/dist/tools/list-directory.js +2 -1
- package/dist/tools/list-directory.js.map +1 -1
- package/dist/tools/lsp-get-diagnostics.d.ts.map +1 -1
- package/dist/tools/lsp-get-diagnostics.js +1 -5
- package/dist/tools/lsp-get-diagnostics.js.map +1 -1
- package/dist/tools/read-file.d.ts.map +1 -1
- package/dist/tools/read-file.js +1 -0
- package/dist/tools/read-file.js.map +1 -1
- package/dist/tools/search-file-contents.d.ts.map +1 -1
- package/dist/tools/search-file-contents.js +124 -32
- package/dist/tools/search-file-contents.js.map +1 -1
- package/dist/tools/tasks/list-tasks.d.ts.map +1 -1
- package/dist/tools/tasks/list-tasks.js +1 -0
- package/dist/tools/tasks/list-tasks.js.map +1 -1
- package/dist/tools/tool-manager.d.ts +10 -0
- package/dist/tools/tool-manager.d.ts.map +1 -1
- package/dist/tools/tool-manager.js +16 -2
- package/dist/tools/tool-manager.js.map +1 -1
- package/dist/tools/tool-registry.d.ts +9 -1
- package/dist/tools/tool-registry.d.ts.map +1 -1
- package/dist/tools/tool-registry.js +17 -1
- package/dist/tools/tool-registry.js.map +1 -1
- package/dist/tools/web-search.d.ts.map +1 -1
- package/dist/tools/web-search.js +1 -0
- package/dist/tools/web-search.js.map +1 -1
- package/dist/types/app.d.ts +3 -0
- package/dist/types/app.d.ts.map +1 -1
- package/dist/types/commands.d.ts +1 -2
- package/dist/types/commands.d.ts.map +1 -1
- package/dist/types/config.d.ts +11 -15
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/core.d.ts +13 -3
- package/dist/types/core.d.ts.map +1 -1
- package/dist/types/core.js.map +1 -1
- package/dist/types/markdown-parser.d.ts +2 -10
- package/dist/types/markdown-parser.d.ts.map +1 -1
- package/dist/types/mcp.d.ts +2 -28
- package/dist/types/mcp.d.ts.map +1 -1
- package/dist/types/ui.d.ts +1 -1
- package/dist/types/ui.d.ts.map +1 -1
- package/dist/utils/ansi-truncate.d.ts +6 -0
- package/dist/utils/ansi-truncate.d.ts.map +1 -0
- package/dist/utils/ansi-truncate.js +39 -0
- package/dist/utils/ansi-truncate.js.map +1 -0
- package/dist/utils/installation-detector.d.ts +6 -0
- package/dist/utils/installation-detector.d.ts.map +1 -1
- package/dist/utils/installation-detector.js +33 -19
- package/dist/utils/installation-detector.js.map +1 -1
- package/dist/utils/logging/health-monitor/checks/memory-check.d.ts.map +1 -1
- package/dist/utils/logging/health-monitor/checks/memory-check.js +2 -1
- package/dist/utils/logging/health-monitor/checks/memory-check.js.map +1 -1
- package/dist/utils/logging/health-monitor/core/health-monitor.d.ts.map +1 -1
- package/dist/utils/logging/health-monitor/core/health-monitor.js +3 -2
- package/dist/utils/logging/health-monitor/core/health-monitor.js.map +1 -1
- package/dist/utils/logging/performance.d.ts.map +1 -1
- package/dist/utils/logging/performance.js +21 -17
- package/dist/utils/logging/performance.js.map +1 -1
- package/dist/utils/logging/pino-logger.d.ts.map +1 -1
- package/dist/utils/logging/pino-logger.js +7 -8
- package/dist/utils/logging/pino-logger.js.map +1 -1
- package/dist/utils/logging/redaction.d.ts.map +1 -1
- package/dist/utils/logging/redaction.js +2 -0
- package/dist/utils/logging/redaction.js.map +1 -1
- package/dist/utils/logging/request-tracker.d.ts.map +1 -1
- package/dist/utils/logging/request-tracker.js +6 -5
- package/dist/utils/logging/request-tracker.js.map +1 -1
- package/dist/utils/logging/safe-process.d.ts +16 -0
- package/dist/utils/logging/safe-process.d.ts.map +1 -0
- package/dist/utils/logging/safe-process.js +37 -0
- package/dist/utils/logging/safe-process.js.map +1 -0
- package/dist/utils/logging/types.d.ts +0 -3
- package/dist/utils/logging/types.d.ts.map +1 -1
- package/dist/utils/message-builder.d.ts +0 -5
- package/dist/utils/message-builder.d.ts.map +1 -1
- package/dist/utils/message-builder.js +0 -8
- package/dist/utils/message-builder.js.map +1 -1
- package/dist/utils/path-validation.d.ts.map +1 -1
- package/dist/utils/path-validation.js +3 -1
- package/dist/utils/path-validation.js.map +1 -1
- package/dist/utils/path-validators.d.ts +16 -0
- package/dist/utils/path-validators.d.ts.map +1 -0
- package/dist/utils/path-validators.js +55 -0
- package/dist/utils/path-validators.js.map +1 -0
- package/dist/utils/prompt-processor.d.ts.map +1 -1
- package/dist/utils/prompt-processor.js +1 -3
- package/dist/utils/prompt-processor.js.map +1 -1
- package/dist/utils/response-formatter.d.ts.map +1 -1
- package/dist/utils/response-formatter.js +2 -17
- package/dist/utils/response-formatter.js.map +1 -1
- package/dist/utils/text-wrapping.d.ts +8 -0
- package/dist/utils/text-wrapping.d.ts.map +1 -0
- package/dist/utils/text-wrapping.js +29 -0
- package/dist/utils/text-wrapping.js.map +1 -0
- package/dist/utils/tool-approval.d.ts +6 -0
- package/dist/utils/tool-approval.d.ts.map +1 -0
- package/dist/utils/tool-approval.js +15 -0
- package/dist/utils/tool-approval.js.map +1 -0
- package/dist/utils/tool-result-display.d.ts +20 -1
- package/dist/utils/tool-result-display.d.ts.map +1 -1
- package/dist/utils/tool-result-display.js +96 -3
- package/dist/utils/tool-result-display.js.map +1 -1
- package/dist/vscode/extension-installer.d.ts +34 -7
- package/dist/vscode/extension-installer.d.ts.map +1 -1
- package/dist/vscode/extension-installer.js +151 -64
- package/dist/vscode/extension-installer.js.map +1 -1
- package/dist/vscode/index.d.ts +1 -1
- package/dist/vscode/index.d.ts.map +1 -1
- package/dist/vscode/index.js +1 -1
- package/dist/vscode/index.js.map +1 -1
- package/dist/wizards/mcp-wizard.d.ts.map +1 -1
- package/dist/wizards/mcp-wizard.js +2 -1
- package/dist/wizards/mcp-wizard.js.map +1 -1
- package/dist/wizards/provider-wizard.d.ts.map +1 -1
- package/dist/wizards/provider-wizard.js +4 -2
- package/dist/wizards/provider-wizard.js.map +1 -1
- package/dist/wizards/steps/location-step.d.ts.map +1 -1
- package/dist/wizards/steps/location-step.js +2 -1
- package/dist/wizards/steps/location-step.js.map +1 -1
- package/dist/wizards/steps/mcp-step.d.ts.map +1 -1
- package/dist/wizards/steps/mcp-step.js +2 -1
- package/dist/wizards/steps/mcp-step.js.map +1 -1
- package/dist/wizards/steps/provider-step.d.ts.map +1 -1
- package/dist/wizards/steps/provider-step.js +4 -1
- package/dist/wizards/steps/provider-step.js.map +1 -1
- package/dist/wizards/steps/summary-step.d.ts.map +1 -1
- package/dist/wizards/steps/summary-step.js +2 -1
- package/dist/wizards/steps/summary-step.js.map +1 -1
- package/dist/wizards/templates/mcp-templates.d.ts +0 -8
- package/dist/wizards/templates/mcp-templates.d.ts.map +1 -1
- package/dist/wizards/templates/mcp-templates.js.map +1 -1
- package/dist/wizards/templates/provider-templates.d.ts.map +1 -1
- package/dist/wizards/templates/provider-templates.js +59 -0
- package/dist/wizards/templates/provider-templates.js.map +1 -1
- package/dist/wizards/validation.d.ts.map +1 -1
- package/dist/wizards/validation.js +0 -1
- package/dist/wizards/validation.js.map +1 -1
- package/package.json +20 -12
- package/source/config/themes.json +787 -0
- package/dist/ai-sdk-client/chat/tool-processor.d.ts +0 -10
- package/dist/ai-sdk-client/chat/tool-processor.d.ts.map +0 -1
- package/dist/ai-sdk-client/chat/tool-processor.js +0 -58
- package/dist/ai-sdk-client/chat/tool-processor.js.map +0 -1
- package/dist/tool-calling/json-parser.d.ts +0 -28
- package/dist/tool-calling/json-parser.d.ts.map +0 -1
- package/dist/tool-calling/json-parser.js +0 -219
- package/dist/tool-calling/json-parser.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-selector.d.ts","sourceRoot":"","sources":["../../source/components/provider-selector.tsx"],"names":[],"mappings":"AAQA,UAAU,qBAAqB;IAC9B,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,QAAQ,EAAE,MAAM,IAAI,CAAC;CACrB;AAOD,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACxC,eAAe,EACf,gBAAgB,EAChB,QAAQ,GACR,EAAE,qBAAqB,
|
|
1
|
+
{"version":3,"file":"provider-selector.d.ts","sourceRoot":"","sources":["../../source/components/provider-selector.tsx"],"names":[],"mappings":"AAQA,UAAU,qBAAqB;IAC9B,eAAe,EAAE,MAAM,CAAC;IACxB,gBAAgB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,QAAQ,EAAE,MAAM,IAAI,CAAC;CACrB;AAOD,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACxC,eAAe,EACf,gBAAgB,EAChB,QAAQ,GACR,EAAE,qBAAqB,2CAoDvB"}
|
|
@@ -3,7 +3,7 @@ import { Box, Text, useInput } from 'ink';
|
|
|
3
3
|
import SelectInput from 'ink-select-input';
|
|
4
4
|
import { useState } from 'react';
|
|
5
5
|
import { TitledBoxWithPreferences } from '../components/ui/titled-box.js';
|
|
6
|
-
import {
|
|
6
|
+
import { getAppConfig } from '../config/index.js';
|
|
7
7
|
import { useTerminalWidth } from '../hooks/useTerminalWidth.js';
|
|
8
8
|
import { useTheme } from '../hooks/useTheme.js';
|
|
9
9
|
export default function ProviderSelector({ currentProvider, onProviderSelect, onCancel, }) {
|
|
@@ -11,8 +11,9 @@ export default function ProviderSelector({ currentProvider, onProviderSelect, on
|
|
|
11
11
|
const { colors } = useTheme();
|
|
12
12
|
const getProviderOptions = () => {
|
|
13
13
|
const options = [];
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
const config = getAppConfig();
|
|
15
|
+
if (config.providers) {
|
|
16
|
+
for (const provider of config.providers) {
|
|
16
17
|
options.push({
|
|
17
18
|
label: `${provider.name}${currentProvider === provider.name ? ' (current)' : ''}`,
|
|
18
19
|
value: provider.name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-selector.js","sourceRoot":"","sources":["../../source/components/provider-selector.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAC,MAAM,KAAK,CAAC;AACxC,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAC,QAAQ,EAAC,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAC,wBAAwB,EAAC,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"provider-selector.js","sourceRoot":"","sources":["../../source/components/provider-selector.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAC,MAAM,KAAK,CAAC;AACxC,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAC,QAAQ,EAAC,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAC,wBAAwB,EAAC,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAC,gBAAgB,EAAC,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAa1C,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACxC,eAAe,EACf,gBAAgB,EAChB,QAAQ,GACe;IACvB,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC;IACpC,MAAM,EAAC,MAAM,EAAC,GAAG,QAAQ,EAAE,CAAC;IAE5B,MAAM,kBAAkB,GAAG,GAAqB,EAAE;QACjD,MAAM,OAAO,GAAqB,EAAE,CAAC;QAErC,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;QAC9B,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YACtB,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;gBACzC,OAAO,CAAC,IAAI,CAAC;oBACZ,KAAK,EAAE,GAAG,QAAQ,CAAC,IAAI,GACtB,eAAe,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EACpD,EAAE;oBACF,KAAK,EAAE,QAAQ,CAAC,IAAI;iBACpB,CAAC,CAAC;YACJ,CAAC;QACF,CAAC;QAED,OAAO,OAAO,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAmB,kBAAkB,EAAE,CAAC,CAAC;IAErE,8BAA8B;IAC9B,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;QACnB,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YAChB,QAAQ,EAAE,CAAC;QACZ,CAAC;IACF,CAAC,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,CAAC,IAAoB,EAAE,EAAE;QAC7C,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC,CAAC;IAEF,OAAO,CACN,KAAC,wBAAwB,IACxB,KAAK,EAAC,mBAAmB,EACzB,KAAK,EAAE,QAAQ,EACf,WAAW,EAAE,MAAM,CAAC,OAAO,EAC3B,QAAQ,EAAE,CAAC,EACX,QAAQ,EAAE,CAAC,EACX,YAAY,EAAE,CAAC,YAEf,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aAC1B,KAAC,WAAW,IAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,GAAI,EACzD,KAAC,GAAG,IAAC,SAAS,EAAE,CAAC,YAChB,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,SAAS,uCAA+B,GACvD,IACD,GACoB,CAC3B,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { SessionMetadata } from '../session/session-manager.js';
|
|
3
|
+
interface SessionSelectorProps {
|
|
4
|
+
onSelect: (session: SessionMetadata | null) => void;
|
|
5
|
+
onCancel: () => void;
|
|
6
|
+
showAll?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export declare function formatTimeAgo(dateString: string): string;
|
|
9
|
+
export declare function formatMessageCount(count: number): string;
|
|
10
|
+
declare const SessionSelector: React.FC<SessionSelectorProps>;
|
|
11
|
+
export default SessionSelector;
|
|
12
|
+
//# sourceMappingURL=session-selector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-selector.d.ts","sourceRoot":"","sources":["../../source/components/session-selector.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAEjD,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,2BAA2B,CAAC;AAG/D,UAAU,oBAAoB;IAC7B,QAAQ,EAAE,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,KAAK,IAAI,CAAC;IACpD,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAuBxD;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAExD;AAED,QAAA,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAkHnD,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Box, Text, useInput } from 'ink';
|
|
3
|
+
import SelectInput from 'ink-select-input';
|
|
4
|
+
import { useEffect, useState } from 'react';
|
|
5
|
+
import { useResponsiveTerminal } from '../hooks/useTerminalWidth.js';
|
|
6
|
+
import { sessionManager } from '../session/session-manager.js';
|
|
7
|
+
export function formatTimeAgo(dateString) {
|
|
8
|
+
const date = new Date(dateString);
|
|
9
|
+
const now = new Date();
|
|
10
|
+
const diffInMs = now.getTime() - date.getTime();
|
|
11
|
+
const diffInMinutes = diffInMs / (1000 * 60);
|
|
12
|
+
const diffInHours = diffInMinutes / 60;
|
|
13
|
+
const diffInDays = diffInHours / 24;
|
|
14
|
+
if (diffInMinutes < 5) {
|
|
15
|
+
return 'just now';
|
|
16
|
+
}
|
|
17
|
+
else if (diffInMinutes < 60) {
|
|
18
|
+
const minutes = Math.floor(diffInMinutes);
|
|
19
|
+
return `${minutes} minute${minutes > 1 ? 's' : ''} ago`;
|
|
20
|
+
}
|
|
21
|
+
else if (diffInHours < 24) {
|
|
22
|
+
const hours = Math.floor(diffInHours);
|
|
23
|
+
return `${hours} hour${hours > 1 ? 's' : ''} ago`;
|
|
24
|
+
}
|
|
25
|
+
else if (diffInDays < 7) {
|
|
26
|
+
const days = Math.floor(diffInDays);
|
|
27
|
+
return `${days} day${days > 1 ? 's' : ''} ago`;
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
const weeks = Math.floor(diffInDays / 7);
|
|
31
|
+
return `${weeks} week${weeks > 1 ? 's' : ''} ago`;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export function formatMessageCount(count) {
|
|
35
|
+
return `${count} message${count !== 1 ? 's' : ''}`;
|
|
36
|
+
}
|
|
37
|
+
const SessionSelector = ({ onSelect, onCancel, showAll, }) => {
|
|
38
|
+
const [sessions, setSessions] = useState([]);
|
|
39
|
+
const [loading, setLoading] = useState(true);
|
|
40
|
+
const [hasOtherSessions, setHasOtherSessions] = useState(false);
|
|
41
|
+
const { actualWidth, truncate } = useResponsiveTerminal();
|
|
42
|
+
useEffect(() => {
|
|
43
|
+
const loadSessions = async () => {
|
|
44
|
+
try {
|
|
45
|
+
const filter = showAll ? undefined : { workingDirectory: process.cwd() };
|
|
46
|
+
const sessionList = await sessionManager.listSessions(filter);
|
|
47
|
+
// Sort by lastAccessedAt descending (most recent first)
|
|
48
|
+
const sortedSessions = sessionList.sort((a, b) => new Date(b.lastAccessedAt).getTime() -
|
|
49
|
+
new Date(a.lastAccessedAt).getTime());
|
|
50
|
+
setSessions(sortedSessions);
|
|
51
|
+
// Check if there are sessions in other projects
|
|
52
|
+
if (!showAll && sortedSessions.length === 0) {
|
|
53
|
+
const allSessions = await sessionManager.listSessions();
|
|
54
|
+
setHasOtherSessions(allSessions.length > 0);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
catch (error) {
|
|
58
|
+
console.error('Failed to load sessions:', error);
|
|
59
|
+
}
|
|
60
|
+
finally {
|
|
61
|
+
setLoading(false);
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
loadSessions();
|
|
65
|
+
}, [showAll]);
|
|
66
|
+
useInput((_input, key) => {
|
|
67
|
+
if (key.escape) {
|
|
68
|
+
if (!loading) {
|
|
69
|
+
onCancel();
|
|
70
|
+
}
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
if (!loading && sessions.length === 0) {
|
|
74
|
+
onCancel();
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
if (loading) {
|
|
78
|
+
return (_jsx(Box, { flexDirection: "column", marginY: 1, children: _jsx(Text, { children: "Loading sessions..." }) }));
|
|
79
|
+
}
|
|
80
|
+
if (sessions.length === 0) {
|
|
81
|
+
return (_jsxs(Box, { flexDirection: "column", marginY: 1, children: [hasOtherSessions ? (_jsxs(_Fragment, { children: [_jsx(Text, { children: "No sessions for this project." }), _jsx(Text, { dimColor: true, children: "Use /resume --all to see all sessions." })] })) : (_jsx(Text, { children: "No saved sessions found." })), _jsx(Text, { dimColor: true, children: "Press any key to continue..." })] }));
|
|
82
|
+
}
|
|
83
|
+
const items = sessions.map((session, index) => {
|
|
84
|
+
const prefix = `[${index + 1}] `;
|
|
85
|
+
const suffix = ` (${formatMessageCount(session.messageCount)}) - ${formatTimeAgo(session.lastAccessedAt)}`;
|
|
86
|
+
// 4 accounts for the `> ` selector indicator + margin
|
|
87
|
+
const maxTitleLength = actualWidth - prefix.length - suffix.length - 4;
|
|
88
|
+
const truncatedTitle = maxTitleLength > 10
|
|
89
|
+
? truncate(session.title, maxTitleLength)
|
|
90
|
+
: session.title;
|
|
91
|
+
return {
|
|
92
|
+
label: `${prefix}${truncatedTitle}${suffix}`,
|
|
93
|
+
value: session.id,
|
|
94
|
+
};
|
|
95
|
+
});
|
|
96
|
+
const handleSelect = (item) => {
|
|
97
|
+
const selectedSession = sessions.find(s => s.id === item.value);
|
|
98
|
+
if (selectedSession) {
|
|
99
|
+
onSelect(selectedSession);
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
onCancel();
|
|
103
|
+
}
|
|
104
|
+
};
|
|
105
|
+
return (_jsxs(Box, { flexDirection: "column", marginY: 1, children: [_jsx(Text, { bold: true, children: "Recent Sessions:" }), _jsx(Box, { marginTop: 1, children: _jsx(SelectInput, { items: items, onSelect: handleSelect, limit: Math.min(items.length, 10) }) }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { dimColor: true, children: "\u2191/\u2193 to navigate \u2022 Enter to select \u2022 Esc to cancel" }) })] }));
|
|
106
|
+
};
|
|
107
|
+
export default SessionSelector;
|
|
108
|
+
//# sourceMappingURL=session-selector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-selector.js","sourceRoot":"","sources":["../../source/components/session-selector.tsx"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,8 @@ export type Props = {
|
|
|
7
7
|
readonly value: string;
|
|
8
8
|
readonly onChange: (value: string) => void;
|
|
9
9
|
readonly onSubmit?: (value: string) => void;
|
|
10
|
+
readonly wrapWidth?: number;
|
|
10
11
|
};
|
|
11
|
-
declare function TextInput({ value: originalValue, placeholder, focus, mask, highlightPastedText, showCursor, onChange, onSubmit, }: Props): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
declare function TextInput({ value: originalValue, placeholder, focus, mask, highlightPastedText, showCursor, onChange, onSubmit, wrapWidth, }: Props): import("react/jsx-runtime").JSX.Element;
|
|
12
13
|
export default TextInput;
|
|
13
14
|
//# sourceMappingURL=text-input.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text-input.d.ts","sourceRoot":"","sources":["../../source/components/text-input.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"text-input.d.ts","sourceRoot":"","sources":["../../source/components/text-input.tsx"],"names":[],"mappings":"AAKA,MAAM,MAAM,KAAK,GAAG;IACnB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IACvC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,iBAAS,SAAS,CAAC,EAClB,KAAK,EAAE,aAAa,EACpB,WAAgB,EAChB,KAAY,EACZ,IAAI,EACJ,mBAA2B,EAC3B,UAAiB,EACjB,QAAQ,EACR,QAAQ,EACR,SAAS,GACT,EAAE,KAAK,2CAoNP;AAED,eAAe,SAAS,CAAC"}
|
|
@@ -2,7 +2,8 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import chalk from 'chalk';
|
|
3
3
|
import { Text, useInput } from 'ink';
|
|
4
4
|
import { useEffect, useState } from 'react';
|
|
5
|
-
|
|
5
|
+
import { wrapWithTrimmedContinuations } from '../utils/text-wrapping.js';
|
|
6
|
+
function TextInput({ value: originalValue, placeholder = '', focus = true, mask, highlightPastedText = false, showCursor = true, onChange, onSubmit, wrapWidth, }) {
|
|
6
7
|
const [state, setState] = useState({
|
|
7
8
|
cursorOffset: (originalValue || '').length,
|
|
8
9
|
cursorWidth: 0,
|
|
@@ -165,11 +166,15 @@ function TextInput({ value: originalValue, placeholder = '', focus = true, mask,
|
|
|
165
166
|
onChange(nextValue);
|
|
166
167
|
}
|
|
167
168
|
}, { isActive: focus });
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
169
|
+
const finalValue = placeholder
|
|
170
|
+
? value.length > 0
|
|
171
|
+
? renderedValue
|
|
172
|
+
: renderedPlaceholder
|
|
173
|
+
: renderedValue;
|
|
174
|
+
const displayValue = wrapWidth && wrapWidth > 0 && finalValue
|
|
175
|
+
? wrapWithTrimmedContinuations(finalValue, wrapWidth)
|
|
176
|
+
: finalValue;
|
|
177
|
+
return _jsx(Text, { children: displayValue });
|
|
173
178
|
}
|
|
174
179
|
export default TextInput;
|
|
175
180
|
//# sourceMappingURL=text-input.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text-input.js","sourceRoot":"","sources":["../../source/components/text-input.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,IAAI,EAAE,QAAQ,EAAC,MAAM,KAAK,CAAC;AACnC,OAAO,EAAC,SAAS,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"text-input.js","sourceRoot":"","sources":["../../source/components/text-input.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-confirmation.d.ts","sourceRoot":"","sources":["../../source/components/tool-confirmation.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,cAAc,CAAC;AAK3C,UAAU,qBAAqB;IAC9B,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IACxC,QAAQ,EAAE,MAAM,IAAI,CAAC;CACrB;AAOD,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACxC,QAAQ,EACR,SAAS,EACT,QAAQ,GACR,EAAE,qBAAqB,
|
|
1
|
+
{"version":3,"file":"tool-confirmation.d.ts","sourceRoot":"","sources":["../../source/components/tool-confirmation.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,cAAc,CAAC;AAK3C,UAAU,qBAAqB;IAC9B,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;IACxC,QAAQ,EAAE,MAAM,IAAI,CAAC;CACrB;AAOD,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACxC,QAAQ,EACR,SAAS,EACT,QAAQ,GACR,EAAE,qBAAqB,2CAqKvB"}
|
|
@@ -79,12 +79,17 @@ export default function ToolConfirmation({ toolCall, onConfirm, onCancel, }) {
|
|
|
79
79
|
onCancel();
|
|
80
80
|
}
|
|
81
81
|
});
|
|
82
|
-
// Auto-
|
|
82
|
+
// Auto-handle errors without user interaction
|
|
83
83
|
React.useEffect(() => {
|
|
84
84
|
if (hasFormatterError && !hasValidationError) {
|
|
85
85
|
// Automatically cancel the tool execution only for formatter crashes
|
|
86
86
|
onConfirm(false);
|
|
87
87
|
}
|
|
88
|
+
if (hasValidationError) {
|
|
89
|
+
// Automatically proceed to execution phase where the validator
|
|
90
|
+
// will fail again and pass the error back to the model to correct
|
|
91
|
+
onConfirm(true);
|
|
92
|
+
}
|
|
88
93
|
}, [hasFormatterError, hasValidationError, onConfirm]);
|
|
89
94
|
const options = [
|
|
90
95
|
{ label: '✓ Yes, execute this tool', value: true },
|
|
@@ -93,10 +98,8 @@ export default function ToolConfirmation({ toolCall, onConfirm, onCancel, }) {
|
|
|
93
98
|
const handleSelect = (item) => {
|
|
94
99
|
onConfirm(item.value);
|
|
95
100
|
};
|
|
96
|
-
return (_jsx(Box, { width: boxWidth, marginBottom: 1, children: _jsxs(Box, { flexDirection: "column", children: [isLoadingPreview && (_jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: colors.secondary, children: "Loading preview..." }) })), formatterPreview && !isLoadingPreview && (_jsx(Box, { marginBottom: 1, flexDirection: "column", children: _jsx(Box, { children: React.isValidElement(formatterPreview) ? (formatterPreview) : (_jsx(Text, { color: colors.text, children: String(formatterPreview) })) }) })), !
|
|
97
|
-
?
|
|
98
|
-
: `
|
|
99
|
-
? `MCP tool "${toolCall.function.name}" from server "${mcpInfo.serverName}"`
|
|
100
|
-
: `tool "${toolCall.function.name}"`}?` }) }), _jsx(SelectInput, { items: options, onSelect: handleSelect }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: colors.secondary, children: "Press Escape to cancel" }) })] })), hasFormatterError && !hasValidationError && (_jsxs(Box, { marginTop: 1, children: [_jsx(Text, { color: colors.error, children: "Tool execution cancelled due to formatter error." }), _jsx(Text, { color: colors.secondary, children: "Press Escape to continue" })] }))] }) }));
|
|
101
|
+
return (_jsx(Box, { width: boxWidth, marginBottom: 1, children: _jsxs(Box, { flexDirection: "column", children: [isLoadingPreview && (_jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: colors.secondary, children: "Loading preview..." }) })), formatterPreview && !isLoadingPreview && (_jsx(Box, { marginBottom: 1, flexDirection: "column", children: _jsx(Box, { children: React.isValidElement(formatterPreview) ? (formatterPreview) : (_jsx(Text, { color: colors.text, children: String(formatterPreview) })) }) })), !hasFormatterError && !hasValidationError && (_jsxs(_Fragment, { children: [_jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: colors.tool, children: `Do you want to execute ${mcpInfo.isMCPTool
|
|
102
|
+
? `MCP tool "${toolCall.function.name}" from server "${mcpInfo.serverName}"`
|
|
103
|
+
: `tool "${toolCall.function.name}"`}?` }) }), _jsx(SelectInput, { items: options, onSelect: handleSelect }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: colors.secondary, children: "Press Escape to cancel" }) })] })), hasFormatterError && !hasValidationError && (_jsxs(Box, { marginTop: 1, children: [_jsx(Text, { color: colors.error, children: "Tool execution cancelled due to formatter error." }), _jsx(Text, { color: colors.secondary, children: "Press Escape to continue" })] }))] }) }));
|
|
101
104
|
}
|
|
102
105
|
//# sourceMappingURL=tool-confirmation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-confirmation.js","sourceRoot":"","sources":["../../source/components/tool-confirmation.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"tool-confirmation.js","sourceRoot":"","sources":["../../source/components/tool-confirmation.tsx"],"names":[],"mappings":"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"}
|
|
@@ -169,7 +169,7 @@ export function StyledTitle({ title, shape = 'rounded', borderColor, textColor,
|
|
|
169
169
|
if (isArrowShape) {
|
|
170
170
|
// Arrow-style rendering
|
|
171
171
|
const arrowShapes = effectiveShapes;
|
|
172
|
-
return (_jsx(Box, { width: width, ...boxProps, children: _jsxs(Box, { children: [icon && _jsxs(Text, { children: [icon, " "] }), _jsx(Text, { color:
|
|
172
|
+
return (_jsx(Box, { width: width, ...boxProps, children: _jsxs(Box, { children: [icon && _jsxs(Text, { children: [icon, " "] }), _jsx(Text, { color: borderColor, bold: true, children: arrowShapes.left }), _jsxs(Text, { backgroundColor: borderColor, color: effectiveTextColor, bold: true, children: [' ', title, ' '] }), _jsx(Text, { color: borderColor, bold: true, children: arrowShapes.right })] }) }));
|
|
173
173
|
}
|
|
174
174
|
if (shape === 'pill') {
|
|
175
175
|
// Pill-style rendering (original TitledBox style)
|
|
@@ -177,6 +177,6 @@ export function StyledTitle({ title, shape = 'rounded', borderColor, textColor,
|
|
|
177
177
|
}
|
|
178
178
|
// Traditional box-style rendering (single line like powerline/arrow styles)
|
|
179
179
|
const boxShapes = effectiveShapes;
|
|
180
|
-
return (_jsx(Box, { width: width, ...boxProps, children: _jsxs(Box, { children: [icon && _jsxs(Text, { children: [icon, " "] }), _jsx(Text, { color:
|
|
180
|
+
return (_jsx(Box, { width: width, ...boxProps, children: _jsxs(Box, { children: [icon && _jsxs(Text, { children: [icon, " "] }), _jsx(Text, { color: borderColor, bold: true, children: boxShapes.topLeft }), _jsxs(Text, { backgroundColor: borderColor, color: effectiveTextColor, bold: true, children: [' ', title, ' '] }), _jsx(Text, { color: borderColor, bold: true, children: boxShapes.topRight })] }) }));
|
|
181
181
|
}
|
|
182
182
|
//# sourceMappingURL=styled-title.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styled-title.js","sourceRoot":"","sources":["../../../source/components/ui/styled-title.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"styled-title.js","sourceRoot":"","sources":["../../../source/components/ui/styled-title.tsx"],"names":[],"mappings":"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"}
|
|
@@ -6,9 +6,11 @@ interface ChatProps {
|
|
|
6
6
|
disabled?: boolean;
|
|
7
7
|
onCancel?: () => void;
|
|
8
8
|
onToggleMode?: () => void;
|
|
9
|
+
onToggleCompactDisplay?: () => void;
|
|
10
|
+
compactToolDisplay?: boolean;
|
|
9
11
|
developmentMode?: DevelopmentMode;
|
|
10
12
|
contextPercentUsed?: number | null;
|
|
11
13
|
}
|
|
12
|
-
export default function UserInput({ onSubmit, placeholder, customCommands, disabled, onCancel, onToggleMode, developmentMode, contextPercentUsed, }: ChatProps): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export default function UserInput({ onSubmit, placeholder, customCommands, disabled, onCancel, onToggleMode, onToggleCompactDisplay, compactToolDisplay, developmentMode, contextPercentUsed, }: ChatProps): import("react/jsx-runtime").JSX.Element;
|
|
13
15
|
export {};
|
|
14
16
|
//# sourceMappingURL=user-input.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-input.d.ts","sourceRoot":"","sources":["../../source/components/user-input.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"user-input.d.ts","sourceRoot":"","sources":["../../source/components/user-input.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,cAAc,CAAC;AAUlD,UAAU,SAAS;IAClB,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,sBAAsB,CAAC,EAAE,MAAM,IAAI,CAAC;IACpC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAED,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,EACjC,QAAQ,EACR,WAAW,EACX,cAAmB,EACnB,QAAgB,EAChB,QAAQ,EACR,YAAY,EACZ,sBAAsB,EACtB,kBAAyB,EACzB,eAA0B,EAC1B,kBAAkB,GAClB,EAAE,SAAS,2CAuhBX"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { Box, Text, useFocus, useInput } from 'ink';
|
|
3
3
|
import Spinner from 'ink-spinner';
|
|
4
|
-
import { useCallback, useEffect, useMemo, useState } from 'react';
|
|
4
|
+
import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
5
5
|
import { commandRegistry } from '../commands.js';
|
|
6
6
|
import { DevelopmentModeIndicator } from '../components/development-mode-indicator.js';
|
|
7
7
|
import TextInput from '../components/text-input.js';
|
|
@@ -13,23 +13,22 @@ import { promptHistory } from '../prompt-history.js';
|
|
|
13
13
|
import { getCurrentFileMention, getFileCompletions, } from '../utils/file-autocomplete.js';
|
|
14
14
|
import { handleFileMention } from '../utils/file-mention-handler.js';
|
|
15
15
|
import { assemblePrompt } from '../utils/prompt-processor.js';
|
|
16
|
-
export default function UserInput({ onSubmit, placeholder, customCommands = [], disabled = false, onCancel, onToggleMode, developmentMode = 'normal', contextPercentUsed, }) {
|
|
16
|
+
export default function UserInput({ onSubmit, placeholder, customCommands = [], disabled = false, onCancel, onToggleMode, onToggleCompactDisplay, compactToolDisplay = true, developmentMode = 'normal', contextPercentUsed, }) {
|
|
17
17
|
const { isFocused, focus } = useFocus({ autoFocus: !disabled, id: 'user-input' });
|
|
18
18
|
const { colors } = useTheme();
|
|
19
19
|
const inputState = useInputState();
|
|
20
20
|
const uiState = useUIStateContext();
|
|
21
21
|
const { boxWidth, isNarrow } = useResponsiveTerminal();
|
|
22
22
|
const [textInputKey, setTextInputKey] = useState(0);
|
|
23
|
-
// Store the
|
|
23
|
+
// Store the full InputState draft when starting history navigation, so it can be restored
|
|
24
|
+
const savedDraftRef = useRef({
|
|
25
|
+
displayValue: '',
|
|
26
|
+
placeholderContent: {},
|
|
27
|
+
});
|
|
24
28
|
// File autocomplete state
|
|
25
29
|
const [isFileAutocompleteMode, setIsFileAutocompleteMode] = useState(false);
|
|
26
30
|
const [fileCompletions, setFileCompletions] = useState([]);
|
|
27
31
|
const [selectedFileIndex, setSelectedFileIndex] = useState(0);
|
|
28
|
-
// Responsive placeholder text
|
|
29
|
-
const defaultPlaceholder = isNarrow
|
|
30
|
-
? '/ for commands, ! for bash, ↑/↓ history'
|
|
31
|
-
: 'Type `/` and then press Tab for command suggestions or `!` to execute bash commands. Use ↑/↓ for history.';
|
|
32
|
-
const actualPlaceholder = placeholder ?? defaultPlaceholder;
|
|
33
32
|
const { input, historyIndex, setOriginalInput, setHistoryIndex, updateInput, resetInput, deletePlaceholder: _deletePlaceholder, currentState, setInputState, } = inputState;
|
|
34
33
|
const { showClearMessage, showCompletions, completions, pendingFileMentions, setShowClearMessage, setShowCompletions, setCompletions, setPendingFileMentions, resetUIState, } = uiState;
|
|
35
34
|
// Check if we're in bash mode (input starts with !)
|
|
@@ -189,7 +188,8 @@ export default function UserInput({ onSubmit, placeholder, customCommands = [],
|
|
|
189
188
|
return;
|
|
190
189
|
if (direction === 'up') {
|
|
191
190
|
if (historyIndex === -1) {
|
|
192
|
-
// Save the full current state
|
|
191
|
+
// Save the full current state before starting navigation
|
|
192
|
+
savedDraftRef.current = currentState;
|
|
193
193
|
setOriginalInput(input);
|
|
194
194
|
setHistoryIndex(history.length - 1);
|
|
195
195
|
setInputState(history[history.length - 1]);
|
|
@@ -202,14 +202,14 @@ export default function UserInput({ onSubmit, placeholder, customCommands = [],
|
|
|
202
202
|
setTextInputKey(prev => prev + 1);
|
|
203
203
|
}
|
|
204
204
|
else if (historyIndex === 0) {
|
|
205
|
-
// At first history item,
|
|
205
|
+
// At first history item, restore saved draft
|
|
206
206
|
setHistoryIndex(-2);
|
|
207
|
-
|
|
208
|
-
setInputState({ displayValue: '', placeholderContent: {} });
|
|
207
|
+
setInputState(savedDraftRef.current);
|
|
209
208
|
setTextInputKey(prev => prev + 1);
|
|
210
209
|
}
|
|
211
210
|
else if (historyIndex === -2) {
|
|
212
|
-
// At
|
|
211
|
+
// At draft, cycle back to last history item
|
|
212
|
+
savedDraftRef.current = currentState;
|
|
213
213
|
setHistoryIndex(history.length - 1);
|
|
214
214
|
setInputState(history[history.length - 1]);
|
|
215
215
|
setTextInputKey(prev => prev + 1);
|
|
@@ -217,15 +217,16 @@ export default function UserInput({ onSubmit, placeholder, customCommands = [],
|
|
|
217
217
|
}
|
|
218
218
|
else {
|
|
219
219
|
if (historyIndex === -1) {
|
|
220
|
-
//
|
|
220
|
+
// Save draft, go to draft cycling state (visually a no-op)
|
|
221
|
+
savedDraftRef.current = currentState;
|
|
221
222
|
setOriginalInput(input);
|
|
222
223
|
setHistoryIndex(-2);
|
|
223
|
-
|
|
224
|
-
setInputState({ displayValue: '', placeholderContent: {} });
|
|
224
|
+
setInputState(savedDraftRef.current);
|
|
225
225
|
setTextInputKey(prev => prev + 1);
|
|
226
226
|
}
|
|
227
227
|
else if (historyIndex === -2) {
|
|
228
|
-
// At
|
|
228
|
+
// At draft, cycle to first history item
|
|
229
|
+
savedDraftRef.current = currentState;
|
|
229
230
|
setHistoryIndex(0);
|
|
230
231
|
setInputState(history[0]);
|
|
231
232
|
setTextInputKey(prev => prev + 1);
|
|
@@ -238,14 +239,20 @@ export default function UserInput({ onSubmit, placeholder, customCommands = [],
|
|
|
238
239
|
setTextInputKey(prev => prev + 1);
|
|
239
240
|
}
|
|
240
241
|
else if (historyIndex === history.length - 1) {
|
|
241
|
-
// At last history item,
|
|
242
|
+
// At last history item, restore saved draft
|
|
242
243
|
setHistoryIndex(-2);
|
|
243
|
-
|
|
244
|
-
setInputState({ displayValue: '', placeholderContent: {} });
|
|
244
|
+
setInputState(savedDraftRef.current);
|
|
245
245
|
setTextInputKey(prev => prev + 1);
|
|
246
246
|
}
|
|
247
247
|
}
|
|
248
|
-
}, [
|
|
248
|
+
}, [
|
|
249
|
+
historyIndex,
|
|
250
|
+
input,
|
|
251
|
+
currentState,
|
|
252
|
+
setHistoryIndex,
|
|
253
|
+
setOriginalInput,
|
|
254
|
+
setInputState,
|
|
255
|
+
]);
|
|
249
256
|
useInput((inputChar, key) => {
|
|
250
257
|
// Handle escape for cancellation even when disabled
|
|
251
258
|
if (key.escape && disabled && onCancel) {
|
|
@@ -257,6 +264,11 @@ export default function UserInput({ onSubmit, placeholder, customCommands = [],
|
|
|
257
264
|
onToggleMode();
|
|
258
265
|
return;
|
|
259
266
|
}
|
|
267
|
+
// Handle ctrl+o to toggle compact tool display (always available)
|
|
268
|
+
if (key.ctrl && inputChar === 'o' && onToggleCompactDisplay) {
|
|
269
|
+
onToggleCompactDisplay();
|
|
270
|
+
return;
|
|
271
|
+
}
|
|
260
272
|
// Block all other input when disabled
|
|
261
273
|
if (disabled) {
|
|
262
274
|
return;
|
|
@@ -354,8 +366,8 @@ export default function UserInput({ onSubmit, placeholder, customCommands = [],
|
|
|
354
366
|
const textColor = disabled || !input ? colors.secondary : colors.primary;
|
|
355
367
|
// When disabled, show minimal UI to avoid cluttering the screen
|
|
356
368
|
if (disabled) {
|
|
357
|
-
return (_jsxs(Box, { flexDirection: "column", paddingY: 1, width: "100%", marginTop: 1, children: [_jsxs(Text, { color: colors.secondary, dimColor: true, children: [_jsx(Spinner, { type: "dots" }), " Press Esc to cancel"] }), _jsx(DevelopmentModeIndicator, { developmentMode: developmentMode, colors: colors, contextPercentUsed: contextPercentUsed ?? null })] }));
|
|
369
|
+
return (_jsxs(Box, { flexDirection: "column", paddingY: 1, width: "100%", marginTop: 1, children: [_jsxs(Text, { color: colors.secondary, dimColor: true, children: [_jsx(Spinner, { type: "dots" }), " Press Esc to cancel", onToggleCompactDisplay && (_jsxs(Text, { children: [' ', "\u00B7 ctrl-o ", compactToolDisplay ? 'expand' : 'compact', ' ', isNarrow ? '' : 'tool results'] }))] }), _jsx(DevelopmentModeIndicator, { developmentMode: developmentMode, colors: colors, contextPercentUsed: contextPercentUsed ?? null })] }));
|
|
358
370
|
}
|
|
359
|
-
return (_jsxs(_Fragment, { children: [!isBashMode ? (_jsx(Text, { color: colors.primary, bold: true, children: "What would you like me to help with?" })) : (_jsx(Text, { color: colors.tool, bold: true, children: "Bash mode" })), _jsxs(Box, { flexDirection: "column", marginTop: 1, backgroundColor: colors.base, width: boxWidth, padding: 1, borderStyle: "bold", borderLeft: true, borderRight: false, borderTop: false, borderBottom: false, borderLeftColor: isBashMode ? colors.tool : colors.primary, children: [_jsxs(Box, { children: [input.length === 0 && (_jsxs(Text, { color: isBashMode ? colors.tool : textColor, children: ['>', " "] })), _jsx(TextInput, { value: input, onChange: updateInput, onSubmit: handleSubmit, placeholder:
|
|
371
|
+
return (_jsxs(_Fragment, { children: [!isBashMode ? (_jsx(Text, { color: colors.primary, bold: true, children: "What would you like me to help with?" })) : (_jsx(Text, { color: colors.tool, bold: true, children: "Bash mode" })), _jsxs(Box, { flexDirection: "column", marginTop: 1, backgroundColor: colors.base, width: boxWidth, padding: 1, borderStyle: "bold", borderLeft: true, borderRight: false, borderTop: false, borderBottom: false, borderLeftColor: isBashMode ? colors.tool : colors.primary, children: [_jsxs(Box, { children: [input.length === 0 && (_jsxs(Text, { color: isBashMode ? colors.tool : textColor, children: ['>', " "] })), _jsx(TextInput, { value: input, onChange: updateInput, onSubmit: handleSubmit, placeholder: "/ commands, ! bash, \u2191/\u2193 history", focus: isFocused, wrapWidth: boxWidth - 3 }, textInputKey)] }), showClearMessage && (_jsx(Text, { color: colors.secondary, dimColor: true, children: "Press escape again to clear" }))] }), showCompletions && completions.length > 0 && (_jsxs(Box, { flexDirection: "column", marginTop: 1, children: [_jsx(Text, { color: colors.secondary, children: "Available commands:" }), completions.map((completion, index) => (_jsxs(Text, { color: completion.isCustom ? colors.info : colors.primary, children: ["/", completion.name] }, index)))] })), isFileAutocompleteMode && fileCompletions.length > 0 && (_jsxs(Box, { flexDirection: "column", marginTop: 1, children: [_jsx(Text, { color: colors.secondary, children: "File suggestions (\u2191/\u2193 to navigate, Tab to select):" }), fileCompletions.slice(0, 5).map((file, index) => (_jsxs(Text, { color: index === selectedFileIndex ? colors.info : colors.primary, bold: index === selectedFileIndex, children: [index === selectedFileIndex ? '▸ ' : ' ', file.path] }, index)))] })), _jsx(DevelopmentModeIndicator, { developmentMode: developmentMode, colors: colors, contextPercentUsed: contextPercentUsed ?? null })] }));
|
|
360
372
|
}
|
|
361
373
|
//# sourceMappingURL=user-input.js.map
|