@qduc/term2 0.6.0 → 0.7.0
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/agent.d.ts +9 -0
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +139 -68
- package/dist/agent.js.map +1 -1
- package/dist/agent.test.js +179 -16
- package/dist/agent.test.js.map +1 -1
- package/dist/app.d.ts +16 -3
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +186 -23
- package/dist/app.js.map +1 -1
- package/dist/app.large-uncached-warning.test.d.ts +2 -0
- package/dist/app.large-uncached-warning.test.d.ts.map +1 -0
- package/dist/app.large-uncached-warning.test.js +15 -0
- package/dist/app.large-uncached-warning.test.js.map +1 -0
- package/dist/app.startup-banner.test.js +3 -19
- package/dist/app.startup-banner.test.js.map +1 -1
- package/dist/cli.js +170 -71
- package/dist/cli.js.map +1 -1
- package/dist/components/Banner.d.ts.map +1 -1
- package/dist/components/Banner.js +35 -17
- package/dist/components/Banner.js.map +1 -1
- package/dist/components/BottomArea.d.ts +7 -1
- package/dist/components/BottomArea.d.ts.map +1 -1
- package/dist/components/BottomArea.js +8 -6
- package/dist/components/BottomArea.js.map +1 -1
- package/dist/components/BottomArea.test.js +14 -1
- package/dist/components/BottomArea.test.js.map +1 -1
- package/dist/components/CommandMessage.d.ts.map +1 -1
- package/dist/components/CommandMessage.js +31 -1
- package/dist/components/CommandMessage.js.map +1 -1
- package/dist/components/CommandMessage.test.js +150 -31
- package/dist/components/CommandMessage.test.js.map +1 -1
- package/dist/components/Common/MenuContainer.d.ts +20 -0
- package/dist/components/Common/MenuContainer.d.ts.map +1 -0
- package/dist/components/Common/MenuContainer.js +52 -0
- package/dist/components/Common/MenuContainer.js.map +1 -0
- package/dist/components/Common/ScrollableTabBar.d.ts +26 -0
- package/dist/components/Common/ScrollableTabBar.d.ts.map +1 -0
- package/dist/components/Common/ScrollableTabBar.js +26 -0
- package/dist/components/Common/ScrollableTabBar.js.map +1 -0
- package/dist/components/Common/compute-visible-tabs.d.ts +16 -0
- package/dist/components/Common/compute-visible-tabs.d.ts.map +1 -0
- package/dist/components/Common/compute-visible-tabs.js +53 -0
- package/dist/components/Common/compute-visible-tabs.js.map +1 -0
- package/dist/components/Common/compute-visible-tabs.test.d.ts +2 -0
- package/dist/components/Common/compute-visible-tabs.test.d.ts.map +1 -0
- package/dist/components/Common/compute-visible-tabs.test.js +97 -0
- package/dist/components/Common/compute-visible-tabs.test.js.map +1 -0
- package/dist/components/HandoffConfirmationPrompt.d.ts +9 -0
- package/dist/components/HandoffConfirmationPrompt.d.ts.map +1 -0
- package/dist/components/HandoffConfirmationPrompt.js +38 -0
- package/dist/components/HandoffConfirmationPrompt.js.map +1 -0
- package/dist/components/HandoffConfirmationPrompt.test.d.ts +2 -0
- package/dist/components/HandoffConfirmationPrompt.test.d.ts.map +1 -0
- package/dist/components/HandoffConfirmationPrompt.test.js +12 -0
- package/dist/components/HandoffConfirmationPrompt.test.js.map +1 -0
- package/dist/components/Input/PopupManager.d.ts +5 -1
- package/dist/components/Input/PopupManager.d.ts.map +1 -1
- package/dist/components/Input/PopupManager.js +2 -2
- package/dist/components/Input/PopupManager.js.map +1 -1
- package/dist/components/Input/popup-key-navigation.js +2 -2
- package/dist/components/Input/popup-key-navigation.js.map +1 -1
- package/dist/components/Input/popup-key-navigation.test.js +5 -3
- package/dist/components/Input/popup-key-navigation.test.js.map +1 -1
- package/dist/components/Input/popup-props.d.ts.map +1 -1
- package/dist/components/Input/popup-props.js +4 -0
- package/dist/components/Input/popup-props.js.map +1 -1
- package/dist/components/Input/popup-props.test.d.ts +2 -0
- package/dist/components/Input/popup-props.test.d.ts.map +1 -0
- package/dist/components/Input/popup-props.test.js +70 -0
- package/dist/components/Input/popup-props.test.js.map +1 -0
- package/dist/components/InputBox.d.ts +0 -1
- package/dist/components/InputBox.d.ts.map +1 -1
- package/dist/components/InputBox.js +66 -14
- package/dist/components/InputBox.js.map +1 -1
- package/dist/components/InputBox.test.js +192 -12
- package/dist/components/InputBox.test.js.map +1 -1
- package/dist/components/MessageList.d.ts +1 -0
- package/dist/components/MessageList.d.ts.map +1 -1
- package/dist/components/MessageList.js.map +1 -1
- package/dist/components/ModelSelectionMenu.d.ts.map +1 -1
- package/dist/components/ModelSelectionMenu.debug.test.d.ts +2 -0
- package/dist/components/ModelSelectionMenu.debug.test.d.ts.map +1 -0
- package/dist/components/ModelSelectionMenu.debug.test.js.map +1 -0
- package/dist/components/ModelSelectionMenu.js +29 -125
- package/dist/components/ModelSelectionMenu.js.map +1 -1
- package/dist/components/ModelSelectionMenu.test.js +9 -5
- package/dist/components/ModelSelectionMenu.test.js.map +1 -1
- package/dist/components/PathSelectionMenu.d.ts.map +1 -1
- package/dist/components/PathSelectionMenu.js +15 -55
- package/dist/components/PathSelectionMenu.js.map +1 -1
- package/dist/components/SettingsSelectionMenu.d.ts +4 -1
- package/dist/components/SettingsSelectionMenu.d.ts.map +1 -1
- package/dist/components/SettingsSelectionMenu.js +48 -104
- package/dist/components/SettingsSelectionMenu.js.map +1 -1
- package/dist/components/SettingsSelectionMenu.scroll.test.js +140 -0
- package/dist/components/SettingsSelectionMenu.scroll.test.js.map +1 -1
- package/dist/components/SettingsSelectionMenu.test.js +38 -5
- package/dist/components/SettingsSelectionMenu.test.js.map +1 -1
- package/dist/components/SettingsValueSelectionMenu.d.ts.map +1 -1
- package/dist/components/SettingsValueSelectionMenu.js +24 -51
- package/dist/components/SettingsValueSelectionMenu.js.map +1 -1
- package/dist/components/SlashCommandMenu.d.ts +1 -0
- package/dist/components/SlashCommandMenu.d.ts.map +1 -1
- package/dist/components/SlashCommandMenu.js +11 -14
- package/dist/components/SlashCommandMenu.js.map +1 -1
- package/dist/components/StatusBar.d.ts +2 -0
- package/dist/components/StatusBar.d.ts.map +1 -1
- package/dist/components/StatusBar.js +35 -2
- package/dist/components/StatusBar.js.map +1 -1
- package/dist/components/StatusBar.test.js +32 -0
- package/dist/components/StatusBar.test.js.map +1 -1
- package/dist/components/UndoSelectionMenu.d.ts.map +1 -1
- package/dist/components/UndoSelectionMenu.js +6 -33
- package/dist/components/UndoSelectionMenu.js.map +1 -1
- package/dist/context/InputContext.stability.test.js +9 -7
- package/dist/context/InputContext.stability.test.js.map +1 -1
- package/dist/env-setup.js +1 -0
- package/dist/env-setup.js.map +1 -1
- package/dist/hooks/use-app-commands.d.ts +22 -2
- package/dist/hooks/use-app-commands.d.ts.map +1 -1
- package/dist/hooks/use-app-commands.js +43 -3
- package/dist/hooks/use-app-commands.js.map +1 -1
- package/dist/hooks/use-app-commands.test.js +135 -1
- package/dist/hooks/use-app-commands.test.js.map +1 -1
- package/dist/hooks/use-conversation.clear.test.d.ts +2 -0
- package/dist/hooks/use-conversation.clear.test.d.ts.map +1 -0
- package/dist/hooks/use-conversation.clear.test.js +54 -0
- package/dist/hooks/use-conversation.clear.test.js.map +1 -0
- package/dist/hooks/use-conversation.d.ts +25 -2
- package/dist/hooks/use-conversation.d.ts.map +1 -1
- package/dist/hooks/use-conversation.js +90 -12
- package/dist/hooks/use-conversation.js.map +1 -1
- package/dist/hooks/use-escape-key.d.ts +8 -1
- package/dist/hooks/use-escape-key.d.ts.map +1 -1
- package/dist/hooks/use-escape-key.js +15 -4
- package/dist/hooks/use-escape-key.js.map +1 -1
- package/dist/hooks/use-escape-key.test.js +135 -28
- package/dist/hooks/use-escape-key.test.js.map +1 -1
- package/dist/hooks/use-input-history.test.js +14 -8
- package/dist/hooks/use-input-history.test.js.map +1 -1
- package/dist/hooks/use-mode-handlers.d.ts +12 -1
- package/dist/hooks/use-mode-handlers.d.ts.map +1 -1
- package/dist/hooks/use-mode-handlers.js +31 -1
- package/dist/hooks/use-mode-handlers.js.map +1 -1
- package/dist/hooks/use-model-selection.d.ts +6 -1
- package/dist/hooks/use-model-selection.d.ts.map +1 -1
- package/dist/hooks/use-model-selection.js +50 -8
- package/dist/hooks/use-model-selection.js.map +1 -1
- package/dist/hooks/use-model-selection.test.js +306 -50
- package/dist/hooks/use-model-selection.test.js.map +1 -1
- package/dist/hooks/use-path-completion.d.ts +4 -0
- package/dist/hooks/use-path-completion.d.ts.map +1 -1
- package/dist/hooks/use-path-completion.js +23 -17
- package/dist/hooks/use-path-completion.js.map +1 -1
- package/dist/hooks/use-runtime-settings.d.ts.map +1 -1
- package/dist/hooks/use-runtime-settings.js +7 -2
- package/dist/hooks/use-runtime-settings.js.map +1 -1
- package/dist/hooks/use-runtime-settings.test.d.ts +2 -0
- package/dist/hooks/use-runtime-settings.test.d.ts.map +1 -0
- package/dist/hooks/use-runtime-settings.test.js +45 -0
- package/dist/hooks/use-runtime-settings.test.js.map +1 -0
- package/dist/hooks/use-selection.d.ts +6 -2
- package/dist/hooks/use-selection.d.ts.map +1 -1
- package/dist/hooks/use-selection.js +53 -16
- package/dist/hooks/use-selection.js.map +1 -1
- package/dist/hooks/use-selection.test.d.ts +2 -0
- package/dist/hooks/use-selection.test.d.ts.map +1 -0
- package/dist/hooks/use-selection.test.js +132 -0
- package/dist/hooks/use-selection.test.js.map +1 -0
- package/dist/hooks/use-settings-completion.d.ts +19 -0
- package/dist/hooks/use-settings-completion.d.ts.map +1 -1
- package/dist/hooks/use-settings-completion.js +106 -18
- package/dist/hooks/use-settings-completion.js.map +1 -1
- package/dist/hooks/use-settings-completion.scroll.test.js +68 -29
- package/dist/hooks/use-settings-completion.scroll.test.js.map +1 -1
- package/dist/hooks/use-settings-completion.test.js +36 -1
- package/dist/hooks/use-settings-completion.test.js.map +1 -1
- package/dist/hooks/use-settings-value-completion.d.ts +7 -1
- package/dist/hooks/use-settings-value-completion.d.ts.map +1 -1
- package/dist/hooks/use-settings-value-completion.js +18 -7
- package/dist/hooks/use-settings-value-completion.js.map +1 -1
- package/dist/hooks/use-slash-commands.d.ts +5 -0
- package/dist/hooks/use-slash-commands.d.ts.map +1 -1
- package/dist/hooks/use-slash-commands.js +22 -2
- package/dist/hooks/use-slash-commands.js.map +1 -1
- package/dist/hooks/use-trigger-detection.test.js +9 -6
- package/dist/hooks/use-trigger-detection.test.js.map +1 -1
- package/dist/hooks/use-undo-selection.d.ts +4 -0
- package/dist/hooks/use-undo-selection.d.ts.map +1 -1
- package/dist/hooks/use-undo-selection.js +18 -1
- package/dist/hooks/use-undo-selection.js.map +1 -1
- package/dist/inspect_zod.d.ts +2 -0
- package/dist/inspect_zod.d.ts.map +1 -0
- package/dist/inspect_zod.js +16 -0
- package/dist/inspect_zod.js.map +1 -0
- package/dist/lib/openai-agent-client.chat.test.js +40 -0
- package/dist/lib/openai-agent-client.chat.test.js.map +1 -1
- package/dist/lib/openai-agent-client.d.ts +18 -4
- package/dist/lib/openai-agent-client.d.ts.map +1 -1
- package/dist/lib/openai-agent-client.js +228 -32
- package/dist/lib/openai-agent-client.js.map +1 -1
- package/dist/lib/openai-agent-client.public-methods.test.js +193 -0
- package/dist/lib/openai-agent-client.public-methods.test.js.map +1 -1
- package/dist/lib/openai-agent-client.test.js +71 -1
- package/dist/lib/openai-agent-client.test.js.map +1 -1
- package/dist/lib/retry-executor.js +45 -7
- package/dist/lib/retry-executor.js.map +1 -1
- package/dist/lib/retry-executor.test.js +63 -0
- package/dist/lib/retry-executor.test.js.map +1 -1
- package/dist/lib/tool-invoke.d.ts +3 -2
- package/dist/lib/tool-invoke.d.ts.map +1 -1
- package/dist/lib/tool-invoke.js +213 -10
- package/dist/lib/tool-invoke.js.map +1 -1
- package/dist/lib/tool-invoke.test.js +103 -0
- package/dist/lib/tool-invoke.test.js.map +1 -1
- package/dist/non-interactive.d.ts +1 -0
- package/dist/non-interactive.d.ts.map +1 -1
- package/dist/non-interactive.js +3 -1
- package/dist/non-interactive.js.map +1 -1
- package/dist/non-interactive.test.js +8 -1
- package/dist/non-interactive.test.js.map +1 -1
- package/dist/prompts/codex.md +105 -97
- package/dist/prompts/fragments/gpt-5.3-codex.md +7 -0
- package/dist/prompts/fragments/gpt-5.4-small.md +6 -0
- package/dist/prompts/fragments/gpt-5.4.md +7 -0
- package/dist/prompts/fragments/gpt-5.5.md +7 -0
- package/dist/prompts/gpt-5-modern.md +96 -54
- package/dist/prompts/plan-mode-info.md +14 -3
- package/dist/prompts/prompt-constructor.d.ts +19 -0
- package/dist/prompts/prompt-constructor.d.ts.map +1 -0
- package/dist/prompts/prompt-constructor.js +53 -0
- package/dist/prompts/prompt-constructor.js.map +1 -0
- package/dist/prompts/prompt-constructor.test.d.ts +2 -0
- package/dist/prompts/prompt-constructor.test.d.ts.map +1 -0
- package/dist/prompts/prompt-constructor.test.js +99 -0
- package/dist/prompts/prompt-constructor.test.js.map +1 -0
- package/dist/prompts/prompt-constructor.test.ts +112 -0
- package/dist/prompts/prompt-constructor.ts +91 -0
- package/dist/prompts/prompt-profiles.d.ts +17 -0
- package/dist/prompts/prompt-profiles.d.ts.map +1 -0
- package/dist/prompts/prompt-profiles.js +61 -0
- package/dist/prompts/prompt-profiles.js.map +1 -0
- package/dist/prompts/prompt-profiles.ts +77 -0
- package/dist/prompts/prompt-selector.d.ts.map +1 -1
- package/dist/prompts/prompt-selector.js +3 -21
- package/dist/prompts/prompt-selector.js.map +1 -1
- package/dist/prompts/prompt-selector.ts +3 -25
- package/dist/prompts/reasoning-efficiency.d.ts.map +1 -1
- package/dist/prompts/reasoning-efficiency.js +2 -0
- package/dist/prompts/reasoning-efficiency.js.map +1 -1
- package/dist/prompts/reasoning-efficiency.test.d.ts +2 -0
- package/dist/prompts/reasoning-efficiency.test.d.ts.map +1 -0
- package/dist/prompts/reasoning-efficiency.test.js +11 -0
- package/dist/prompts/reasoning-efficiency.test.js.map +1 -0
- package/dist/prompts/reasoning-efficiency.test.ts +12 -0
- package/dist/prompts/reasoning-efficiency.ts +2 -0
- package/dist/prompts/search-via-shell.test.js +19 -16
- package/dist/prompts/search-via-shell.test.js.map +1 -1
- package/dist/prompts/search-via-shell.test.ts +20 -16
- package/dist/prompts/subagent-delegation.test.js +12 -10
- package/dist/prompts/subagent-delegation.test.js.map +1 -1
- package/dist/prompts/subagent-delegation.test.ts +13 -10
- package/dist/prompts/worktree-hygiene.md +9 -0
- package/dist/providers/ai-sdk-logging-fetch.d.ts +1 -1
- package/dist/providers/ai-sdk-logging-fetch.d.ts.map +1 -1
- package/dist/providers/ai-sdk-logging-fetch.js +145 -47
- package/dist/providers/ai-sdk-logging-fetch.js.map +1 -1
- package/dist/providers/ai-sdk-logging-fetch.test.js +202 -5
- package/dist/providers/ai-sdk-logging-fetch.test.js.map +1 -1
- package/dist/providers/codex-responses-model.d.ts +20 -0
- package/dist/providers/codex-responses-model.d.ts.map +1 -0
- package/dist/providers/codex-responses-model.js +170 -0
- package/dist/providers/codex-responses-model.js.map +1 -0
- package/dist/providers/codex-responses-model.test.d.ts +2 -0
- package/dist/providers/codex-responses-model.test.d.ts.map +1 -0
- package/dist/providers/codex-responses-model.test.js +240 -0
- package/dist/providers/codex-responses-model.test.js.map +1 -0
- package/dist/providers/codex.provider.d.ts +29 -0
- package/dist/providers/codex.provider.d.ts.map +1 -0
- package/dist/providers/codex.provider.js +486 -0
- package/dist/providers/codex.provider.js.map +1 -0
- package/dist/providers/codex.provider.test.d.ts +2 -0
- package/dist/providers/codex.provider.test.d.ts.map +1 -0
- package/dist/providers/codex.provider.test.js +634 -0
- package/dist/providers/codex.provider.test.js.map +1 -0
- package/dist/providers/custom-provider-adapter.test.js +56 -0
- package/dist/providers/custom-provider-adapter.test.js.map +1 -1
- package/dist/providers/fallback-responses-model.d.ts +20 -0
- package/dist/providers/fallback-responses-model.d.ts.map +1 -0
- package/dist/providers/fallback-responses-model.js +277 -0
- package/dist/providers/fallback-responses-model.js.map +1 -0
- package/dist/providers/fallback-responses-model.test.d.ts +2 -0
- package/dist/providers/fallback-responses-model.test.d.ts.map +1 -0
- package/dist/providers/fallback-responses-model.test.js +279 -0
- package/dist/providers/fallback-responses-model.test.js.map +1 -0
- package/dist/providers/fetch/compose.d.ts +7 -0
- package/dist/providers/fetch/compose.d.ts.map +1 -0
- package/dist/providers/fetch/compose.js +20 -0
- package/dist/providers/fetch/compose.js.map +1 -0
- package/dist/providers/fetch/composer.d.ts +13 -0
- package/dist/providers/fetch/composer.d.ts.map +1 -0
- package/dist/providers/fetch/composer.js +15 -0
- package/dist/providers/fetch/composer.js.map +1 -0
- package/dist/providers/fetch/composer.test.d.ts +2 -0
- package/dist/providers/fetch/composer.test.d.ts.map +1 -0
- package/dist/providers/fetch/composer.test.js +448 -0
- package/dist/providers/fetch/composer.test.js.map +1 -0
- package/dist/providers/fetch/logging-middleware.d.ts +16 -0
- package/dist/providers/fetch/logging-middleware.d.ts.map +1 -0
- package/dist/providers/fetch/logging-middleware.js +214 -0
- package/dist/providers/fetch/logging-middleware.js.map +1 -0
- package/dist/providers/index.d.ts +1 -0
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js +1 -0
- package/dist/providers/index.js.map +1 -1
- package/dist/providers/llama-cpp.provider.d.ts +3 -0
- package/dist/providers/llama-cpp.provider.d.ts.map +1 -0
- package/dist/providers/llama-cpp.provider.js +34 -0
- package/dist/providers/llama-cpp.provider.js.map +1 -0
- package/dist/providers/openai-compatible-middleware.d.ts +7 -0
- package/dist/providers/openai-compatible-middleware.d.ts.map +1 -0
- package/dist/providers/openai-compatible-middleware.js +133 -0
- package/dist/providers/openai-compatible-middleware.js.map +1 -0
- package/dist/providers/openai-compatible-models.d.ts +6 -0
- package/dist/providers/openai-compatible-models.d.ts.map +1 -0
- package/dist/providers/openai-compatible-models.js +17 -0
- package/dist/providers/openai-compatible-models.js.map +1 -0
- package/dist/providers/openai-compatible-response-normalizer.d.ts +7 -0
- package/dist/providers/openai-compatible-response-normalizer.d.ts.map +1 -0
- package/dist/providers/openai-compatible-response-normalizer.js +58 -0
- package/dist/providers/openai-compatible-response-normalizer.js.map +1 -0
- package/dist/providers/openai-compatible.provider.d.ts +4 -1
- package/dist/providers/openai-compatible.provider.d.ts.map +1 -1
- package/dist/providers/openai-compatible.provider.js +68 -324
- package/dist/providers/openai-compatible.provider.js.map +1 -1
- package/dist/providers/openai-compatible.provider.test.js +106 -1
- package/dist/providers/openai-compatible.provider.test.js.map +1 -1
- package/dist/providers/openai.provider.js +53 -1
- package/dist/providers/openai.provider.js.map +1 -1
- package/dist/providers/opencode.provider.d.ts +19 -0
- package/dist/providers/opencode.provider.d.ts.map +1 -0
- package/dist/providers/opencode.provider.js +45 -0
- package/dist/providers/opencode.provider.js.map +1 -0
- package/dist/providers/openrouter.provider.d.ts +2 -1
- package/dist/providers/openrouter.provider.d.ts.map +1 -1
- package/dist/providers/openrouter.provider.js +39 -22
- package/dist/providers/openrouter.provider.js.map +1 -1
- package/dist/providers/openrouter.provider.request-preprocessing.test.d.ts +2 -0
- package/dist/providers/openrouter.provider.request-preprocessing.test.d.ts.map +1 -0
- package/dist/providers/openrouter.provider.request-preprocessing.test.js +51 -0
- package/dist/providers/openrouter.provider.request-preprocessing.test.js.map +1 -0
- package/dist/providers/registry.d.ts +1 -0
- package/dist/providers/registry.d.ts.map +1 -1
- package/dist/providers/registry.js.map +1 -1
- package/dist/providers/registry.test.js +11 -2
- package/dist/providers/registry.test.js.map +1 -1
- package/dist/scripts/eval-auto-approval/dataset.d.ts +3 -3
- package/dist/services/approval-flow-coordinator.d.ts.map +1 -1
- package/dist/services/approval-flow-coordinator.js +17 -1
- package/dist/services/approval-flow-coordinator.js.map +1 -1
- package/dist/services/approval-flow-coordinator.test.js +22 -0
- package/dist/services/approval-flow-coordinator.test.js.map +1 -1
- package/dist/services/command-message-streaming.d.ts.map +1 -1
- package/dist/services/command-message-streaming.js +0 -3
- package/dist/services/command-message-streaming.js.map +1 -1
- package/dist/services/command-message-streaming.test.js +4 -2
- package/dist/services/command-message-streaming.test.js.map +1 -1
- package/dist/services/conversation-clear-save.test.d.ts +2 -0
- package/dist/services/conversation-clear-save.test.d.ts.map +1 -0
- package/dist/services/conversation-clear-save.test.js +57 -0
- package/dist/services/conversation-clear-save.test.js.map +1 -0
- package/dist/services/conversation-events.d.ts +44 -1
- package/dist/services/conversation-events.d.ts.map +1 -1
- package/dist/services/conversation-history-repair.d.ts +25 -0
- package/dist/services/conversation-history-repair.d.ts.map +1 -0
- package/dist/services/conversation-history-repair.js +227 -0
- package/dist/services/conversation-history-repair.js.map +1 -0
- package/dist/services/conversation-history-repair.test.d.ts +2 -0
- package/dist/services/conversation-history-repair.test.d.ts.map +1 -0
- package/dist/services/conversation-history-repair.test.js +76 -0
- package/dist/services/conversation-history-repair.test.js.map +1 -0
- package/dist/services/conversation-integration.test.js +3 -1
- package/dist/services/conversation-integration.test.js.map +1 -1
- package/dist/services/conversation-log-events.d.ts +107 -0
- package/dist/services/conversation-log-events.d.ts.map +1 -0
- package/dist/services/conversation-log-events.js +12 -0
- package/dist/services/conversation-log-events.js.map +1 -0
- package/dist/services/conversation-log-writer.d.ts +40 -0
- package/dist/services/conversation-log-writer.d.ts.map +1 -0
- package/dist/services/conversation-log-writer.js +264 -0
- package/dist/services/conversation-log-writer.js.map +1 -0
- package/dist/services/conversation-persistence-types.d.ts +14 -0
- package/dist/services/conversation-persistence-types.d.ts.map +1 -0
- package/dist/services/conversation-persistence-types.js +2 -0
- package/dist/services/conversation-persistence-types.js.map +1 -0
- package/dist/services/conversation-persistence.d.ts +40 -38
- package/dist/services/conversation-persistence.d.ts.map +1 -1
- package/dist/services/conversation-persistence.js +312 -71
- package/dist/services/conversation-persistence.js.map +1 -1
- package/dist/services/conversation-persistence.test.js +485 -355
- package/dist/services/conversation-persistence.test.js.map +1 -1
- package/dist/services/conversation-replay.d.ts +26 -0
- package/dist/services/conversation-replay.d.ts.map +1 -0
- package/dist/services/conversation-replay.js +252 -0
- package/dist/services/conversation-replay.js.map +1 -0
- package/dist/services/conversation-replay.test.d.ts +2 -0
- package/dist/services/conversation-replay.test.d.ts.map +1 -0
- package/dist/services/conversation-replay.test.js +153 -0
- package/dist/services/conversation-replay.test.js.map +1 -0
- package/dist/services/conversation-result-builder.d.ts.map +1 -1
- package/dist/services/conversation-result-builder.js +8 -2
- package/dist/services/conversation-result-builder.js.map +1 -1
- package/dist/services/conversation-result-builder.test.js +53 -0
- package/dist/services/conversation-result-builder.test.js.map +1 -1
- package/dist/services/conversation-retry-policy.d.ts +24 -0
- package/dist/services/conversation-retry-policy.d.ts.map +1 -1
- package/dist/services/conversation-retry-policy.js +68 -4
- package/dist/services/conversation-retry-policy.js.map +1 -1
- package/dist/services/conversation-retry-policy.test.js +99 -2
- package/dist/services/conversation-retry-policy.test.js.map +1 -1
- package/dist/services/conversation-service.d.ts +12 -2
- package/dist/services/conversation-service.d.ts.map +1 -1
- package/dist/services/conversation-service.js +29 -3
- package/dist/services/conversation-service.js.map +1 -1
- package/dist/services/conversation-session.auto-approval.test.js +2 -1
- package/dist/services/conversation-session.auto-approval.test.js.map +1 -1
- package/dist/services/conversation-session.d.ts +17 -1
- package/dist/services/conversation-session.d.ts.map +1 -1
- package/dist/services/conversation-session.js +580 -134
- package/dist/services/conversation-session.js.map +1 -1
- package/dist/services/conversation-store.d.ts.map +1 -1
- package/dist/services/conversation-store.js +6 -5
- package/dist/services/conversation-store.js.map +1 -1
- package/dist/services/conversation-store.test.js +34 -0
- package/dist/services/conversation-store.test.js.map +1 -1
- package/dist/services/input-surge-guard.d.ts +4 -0
- package/dist/services/input-surge-guard.d.ts.map +1 -1
- package/dist/services/input-surge-guard.js +2 -2
- package/dist/services/input-surge-guard.js.map +1 -1
- package/dist/services/input-surge-guard.test.js +15 -1
- package/dist/services/input-surge-guard.test.js.map +1 -1
- package/dist/services/large-uncached-input-guard.d.ts +35 -0
- package/dist/services/large-uncached-input-guard.d.ts.map +1 -0
- package/dist/services/large-uncached-input-guard.js +127 -0
- package/dist/services/large-uncached-input-guard.js.map +1 -0
- package/dist/services/large-uncached-input-guard.test.d.ts +2 -0
- package/dist/services/large-uncached-input-guard.test.d.ts.map +1 -0
- package/dist/services/large-uncached-input-guard.test.js +160 -0
- package/dist/services/large-uncached-input-guard.test.js.map +1 -0
- package/dist/services/logging-contract.d.ts +1 -1
- package/dist/services/logging-service.d.ts +4 -0
- package/dist/services/logging-service.d.ts.map +1 -1
- package/dist/services/logging-service.js +91 -33
- package/dist/services/logging-service.js.map +1 -1
- package/dist/services/model-service.d.ts +2 -0
- package/dist/services/model-service.d.ts.map +1 -1
- package/dist/services/model-service.js +7 -1
- package/dist/services/model-service.js.map +1 -1
- package/dist/services/provider-traffic.d.ts +87 -0
- package/dist/services/provider-traffic.d.ts.map +1 -0
- package/dist/services/provider-traffic.js +603 -0
- package/dist/services/provider-traffic.js.map +1 -0
- package/dist/services/provider-traffic.test.d.ts +2 -0
- package/dist/services/provider-traffic.test.d.ts.map +1 -0
- package/dist/services/provider-traffic.test.js +475 -0
- package/dist/services/provider-traffic.test.js.map +1 -0
- package/dist/services/rtk-service.d.ts.map +1 -1
- package/dist/services/rtk-service.js +1 -2
- package/dist/services/rtk-service.js.map +1 -1
- package/dist/services/service-interfaces.d.ts +16 -0
- package/dist/services/service-interfaces.d.ts.map +1 -1
- package/dist/services/settings-schema.d.ts +36 -28
- package/dist/services/settings-schema.d.ts.map +1 -1
- package/dist/services/settings-schema.js +7 -2
- package/dist/services/settings-schema.js.map +1 -1
- package/dist/services/settings-service.js +6 -6
- package/dist/services/settings-service.js.map +1 -1
- package/dist/services/settings-sources.d.ts.map +1 -1
- package/dist/services/settings-sources.js +1 -0
- package/dist/services/settings-sources.js.map +1 -1
- package/dist/services/shell-auto-approval-evaluator.d.ts +1 -1
- package/dist/services/shell-auto-approval-evaluator.d.ts.map +1 -1
- package/dist/services/shell-auto-approval-evaluator.js +284 -81
- package/dist/services/shell-auto-approval-evaluator.js.map +1 -1
- package/dist/services/shell-auto-approval-evaluator.test.js +215 -15
- package/dist/services/shell-auto-approval-evaluator.test.js.map +1 -1
- package/dist/services/stream-event-processor.d.ts +4 -0
- package/dist/services/stream-event-processor.d.ts.map +1 -1
- package/dist/services/stream-event-processor.js +78 -39
- package/dist/services/stream-event-processor.js.map +1 -1
- package/dist/services/stream-event-processor.test.js +71 -0
- package/dist/services/stream-event-processor.test.js.map +1 -1
- package/dist/services/subagents/subagent-manager.d.ts +2 -0
- package/dist/services/subagents/subagent-manager.d.ts.map +1 -1
- package/dist/services/subagents/subagent-manager.js +124 -21
- package/dist/services/subagents/subagent-manager.js.map +1 -1
- package/dist/services/subagents/subagent-manager.test.js +453 -0
- package/dist/services/subagents/subagent-manager.test.js.map +1 -1
- package/dist/services/terminal-result-collector.d.ts.map +1 -1
- package/dist/services/terminal-result-collector.js +6 -1
- package/dist/services/terminal-result-collector.js.map +1 -1
- package/dist/services/tool-call-arguments.d.ts +20 -0
- package/dist/services/tool-call-arguments.d.ts.map +1 -0
- package/dist/services/tool-call-arguments.js +49 -0
- package/dist/services/tool-call-arguments.js.map +1 -0
- package/dist/services/tool-execution-ledger.d.ts +35 -0
- package/dist/services/tool-execution-ledger.d.ts.map +1 -0
- package/dist/services/tool-execution-ledger.js +204 -0
- package/dist/services/tool-execution-ledger.js.map +1 -0
- package/dist/services/tool-execution-ledger.test.d.ts +2 -0
- package/dist/services/tool-execution-ledger.test.d.ts.map +1 -0
- package/dist/services/tool-execution-ledger.test.js +96 -0
- package/dist/services/tool-execution-ledger.test.js.map +1 -0
- package/dist/tools/apply-patch.d.ts +8 -0
- package/dist/tools/apply-patch.d.ts.map +1 -1
- package/dist/tools/apply-patch.js +157 -2
- package/dist/tools/apply-patch.js.map +1 -1
- package/dist/tools/apply-patch.test.js +81 -0
- package/dist/tools/apply-patch.test.js.map +1 -1
- package/dist/tools/search-replace.d.ts.map +1 -1
- package/dist/tools/search-replace.js +92 -140
- package/dist/tools/search-replace.js.map +1 -1
- package/dist/utils/command-safety/path-analysis.d.ts.map +1 -1
- package/dist/utils/command-safety/path-analysis.js +143 -35
- package/dist/utils/command-safety/path-analysis.js.map +1 -1
- package/dist/utils/conversation-event-handler.d.ts.map +1 -1
- package/dist/utils/conversation-event-handler.js +52 -4
- package/dist/utils/conversation-event-handler.js.map +1 -1
- package/dist/utils/conversation-event-handler.test.js +175 -0
- package/dist/utils/conversation-event-handler.test.js.map +1 -1
- package/dist/utils/error-helpers.d.ts +1 -0
- package/dist/utils/error-helpers.d.ts.map +1 -1
- package/dist/utils/error-helpers.js +61 -0
- package/dist/utils/error-helpers.js.map +1 -1
- package/dist/utils/error-helpers.test.js +13 -1
- package/dist/utils/error-helpers.test.js.map +1 -1
- package/dist/utils/ink-render-options.d.ts +1 -1
- package/dist/utils/ink-render-options.d.ts.map +1 -1
- package/dist/utils/ink-render-options.js +1 -1
- package/dist/utils/ink-render-options.js.map +1 -1
- package/dist/utils/streaming-session-factory.d.ts +2 -0
- package/dist/utils/streaming-session-factory.d.ts.map +1 -1
- package/dist/utils/streaming-session-factory.js +4 -0
- package/dist/utils/streaming-session-factory.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Greedy horizontal tab expansion: starting from the active tab, expand left
|
|
3
|
+
* and right to fit as many tabs as possible within the available terminal width.
|
|
4
|
+
*
|
|
5
|
+
* Each tab occupies `getItemWidth(item)` characters for its content, plus 3
|
|
6
|
+
* characters for a separator (" │ ") between visible tabs, except edges which
|
|
7
|
+
* use 4 characters for scroll indicators ("◀ " / " ▶").
|
|
8
|
+
*/
|
|
9
|
+
export declare function computeVisibleTabs<T>(items: T[], activeItemId: string, availableWidth: number, getItemWidth: (item: T) => number): {
|
|
10
|
+
startIndex: number;
|
|
11
|
+
endIndex: number;
|
|
12
|
+
hasLeftScroll: boolean;
|
|
13
|
+
hasRightScroll: boolean;
|
|
14
|
+
visibleItems: T[];
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=compute-visible-tabs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compute-visible-tabs.d.ts","sourceRoot":"","sources":["../../../source/components/Common/compute-visible-tabs.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAClC,KAAK,EAAE,CAAC,EAAE,EACV,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,MAAM,EACtB,YAAY,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,GAChC;IACD,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,CAAC,EAAE,CAAC;CACnB,CA8CA"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Greedy horizontal tab expansion: starting from the active tab, expand left
|
|
3
|
+
* and right to fit as many tabs as possible within the available terminal width.
|
|
4
|
+
*
|
|
5
|
+
* Each tab occupies `getItemWidth(item)` characters for its content, plus 3
|
|
6
|
+
* characters for a separator (" │ ") between visible tabs, except edges which
|
|
7
|
+
* use 4 characters for scroll indicators ("◀ " / " ▶").
|
|
8
|
+
*/
|
|
9
|
+
export function computeVisibleTabs(items, activeItemId, availableWidth, getItemWidth) {
|
|
10
|
+
if (items.length === 0) {
|
|
11
|
+
return { startIndex: 0, endIndex: -1, hasLeftScroll: false, hasRightScroll: false, visibleItems: [] };
|
|
12
|
+
}
|
|
13
|
+
const activeIndex = items.findIndex((item) => {
|
|
14
|
+
// Support items with an `id` property (common case) or items where the
|
|
15
|
+
// caller passes a predicate via the activeItemId comparison.
|
|
16
|
+
const candidate = item;
|
|
17
|
+
return typeof candidate.id === 'string' ? candidate.id === activeItemId : false;
|
|
18
|
+
});
|
|
19
|
+
const safeActiveIndex = activeIndex >= 0 ? activeIndex : 0;
|
|
20
|
+
let start = safeActiveIndex;
|
|
21
|
+
let end = safeActiveIndex;
|
|
22
|
+
// +4 for the possible "◀ " and " ▶" scroll indicators
|
|
23
|
+
let currentWidth = items[safeActiveIndex] ? getItemWidth(items[safeActiveIndex]) + 4 : 0;
|
|
24
|
+
while (items.length > 0) {
|
|
25
|
+
let expanded = false;
|
|
26
|
+
if (end + 1 < items.length) {
|
|
27
|
+
const rightWidth = getItemWidth(items[end + 1]) + 3; // " │ "
|
|
28
|
+
if (currentWidth + rightWidth <= availableWidth) {
|
|
29
|
+
currentWidth += rightWidth;
|
|
30
|
+
end++;
|
|
31
|
+
expanded = true;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
if (start - 1 >= 0) {
|
|
35
|
+
const leftWidth = getItemWidth(items[start - 1]) + 3; // " │ "
|
|
36
|
+
if (currentWidth + leftWidth <= availableWidth) {
|
|
37
|
+
currentWidth += leftWidth;
|
|
38
|
+
start--;
|
|
39
|
+
expanded = true;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
if (!expanded)
|
|
43
|
+
break;
|
|
44
|
+
}
|
|
45
|
+
return {
|
|
46
|
+
startIndex: start,
|
|
47
|
+
endIndex: end,
|
|
48
|
+
hasLeftScroll: start > 0,
|
|
49
|
+
hasRightScroll: end < items.length - 1,
|
|
50
|
+
visibleItems: items.slice(start, end + 1),
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=compute-visible-tabs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compute-visible-tabs.js","sourceRoot":"","sources":["../../../source/components/Common/compute-visible-tabs.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAChC,KAAU,EACV,YAAoB,EACpB,cAAsB,EACtB,YAAiC;IAQjC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;IACxG,CAAC;IAED,MAAM,WAAW,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE;QAC3C,uEAAuE;QACvE,6DAA6D;QAC7D,MAAM,SAAS,GAAG,IAA+B,CAAC;QAClD,OAAO,OAAO,SAAS,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,KAAK,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC;IAClF,CAAC,CAAC,CAAC;IACH,MAAM,eAAe,GAAG,WAAW,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IAE3D,IAAI,KAAK,GAAG,eAAe,CAAC;IAC5B,IAAI,GAAG,GAAG,eAAe,CAAC;IAC1B,sDAAsD;IACtD,IAAI,YAAY,GAAG,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,eAAe,CAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE1F,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,IAAI,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YAC3B,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAE,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ;YAC9D,IAAI,YAAY,GAAG,UAAU,IAAI,cAAc,EAAE,CAAC;gBAChD,YAAY,IAAI,UAAU,CAAC;gBAC3B,GAAG,EAAE,CAAC;gBACN,QAAQ,GAAG,IAAI,CAAC;YAClB,CAAC;QACH,CAAC;QACD,IAAI,KAAK,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACnB,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAE,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ;YAC/D,IAAI,YAAY,GAAG,SAAS,IAAI,cAAc,EAAE,CAAC;gBAC/C,YAAY,IAAI,SAAS,CAAC;gBAC1B,KAAK,EAAE,CAAC;gBACR,QAAQ,GAAG,IAAI,CAAC;YAClB,CAAC;QACH,CAAC;QACD,IAAI,CAAC,QAAQ;YAAE,MAAM;IACvB,CAAC;IAED,OAAO;QACL,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,GAAG;QACb,aAAa,EAAE,KAAK,GAAG,CAAC;QACxB,cAAc,EAAE,GAAG,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC;QACtC,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,GAAG,CAAC,CAAC;KAC1C,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compute-visible-tabs.test.d.ts","sourceRoot":"","sources":["../../../source/components/Common/compute-visible-tabs.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import test from 'ava';
|
|
2
|
+
import { computeVisibleTabs } from './compute-visible-tabs.js';
|
|
3
|
+
// Helpers
|
|
4
|
+
const tab = (id, labelLen) => ({ id, width: labelLen });
|
|
5
|
+
const tabList = (specs) => specs.map(([id, w]) => tab(id, w));
|
|
6
|
+
const width = (item) => item.width;
|
|
7
|
+
test('returns empty result for empty items', (t) => {
|
|
8
|
+
const result = computeVisibleTabs([], 'a', 80, width);
|
|
9
|
+
t.is(result.visibleItems.length, 0);
|
|
10
|
+
t.is(result.startIndex, 0);
|
|
11
|
+
t.is(result.endIndex, -1);
|
|
12
|
+
t.false(result.hasLeftScroll);
|
|
13
|
+
t.false(result.hasRightScroll);
|
|
14
|
+
});
|
|
15
|
+
test('shows all items when they fit', (t) => {
|
|
16
|
+
const items = tabList([
|
|
17
|
+
['a', 5],
|
|
18
|
+
['b', 5],
|
|
19
|
+
['c', 5],
|
|
20
|
+
]);
|
|
21
|
+
// 3 items × ~8 chars each (width + separator) ≈ 24 chars, well under 80
|
|
22
|
+
const result = computeVisibleTabs(items, 'b', 80, width);
|
|
23
|
+
t.deepEqual(result.visibleItems, items);
|
|
24
|
+
t.false(result.hasLeftScroll);
|
|
25
|
+
t.false(result.hasRightScroll);
|
|
26
|
+
t.is(result.startIndex, 0);
|
|
27
|
+
t.is(result.endIndex, 2);
|
|
28
|
+
});
|
|
29
|
+
test('centers on active item when not all fit', (t) => {
|
|
30
|
+
// 10 items × 10 width each ≈ 10+3 = 13 chars per tab after first
|
|
31
|
+
// First tab: width + 4 = 14 chars
|
|
32
|
+
// With 60 chars available, can fit roughly 4-5 items
|
|
33
|
+
const items = tabList([
|
|
34
|
+
['a', 10],
|
|
35
|
+
['b', 10],
|
|
36
|
+
['c', 10],
|
|
37
|
+
['d', 10],
|
|
38
|
+
['e', 10],
|
|
39
|
+
['f', 10],
|
|
40
|
+
['g', 10],
|
|
41
|
+
['h', 10],
|
|
42
|
+
['i', 10],
|
|
43
|
+
['j', 10],
|
|
44
|
+
]);
|
|
45
|
+
const result = computeVisibleTabs(items, 'd', 60, width);
|
|
46
|
+
// Active item 'd' (index 3) should be included
|
|
47
|
+
t.true(result.visibleItems.some((item) => item.id === 'd'));
|
|
48
|
+
t.true(result.hasLeftScroll);
|
|
49
|
+
t.true(result.hasRightScroll);
|
|
50
|
+
});
|
|
51
|
+
test('defaults to first item when activeItemId is not found', (t) => {
|
|
52
|
+
const items = tabList([
|
|
53
|
+
['a', 5],
|
|
54
|
+
['b', 5],
|
|
55
|
+
]);
|
|
56
|
+
const result = computeVisibleTabs(items, 'z', 80, width);
|
|
57
|
+
t.is(result.startIndex, 0);
|
|
58
|
+
t.is(result.visibleItems[0].id, 'a');
|
|
59
|
+
});
|
|
60
|
+
test('sets hasLeftScroll when tabs before the visible window exist', (t) => {
|
|
61
|
+
const items = tabList([
|
|
62
|
+
['a', 20],
|
|
63
|
+
['b', 20],
|
|
64
|
+
['c', 20],
|
|
65
|
+
['d', 20],
|
|
66
|
+
['e', 20],
|
|
67
|
+
]);
|
|
68
|
+
// Available width 50: active item 'd' (width 20) + 4 = 24. Can maybe fit one more (20+3=23 > 50-24=26)
|
|
69
|
+
// Actually let's check: start=d(3), try right=e(4): 24+23=47<=50 → yes. Try left=c(2): 47+23=70>50 → no
|
|
70
|
+
// So visible = [d, e] with hasLeftScroll=true
|
|
71
|
+
const result = computeVisibleTabs(items, 'd', 50, width);
|
|
72
|
+
t.true(result.hasLeftScroll);
|
|
73
|
+
t.false(result.hasLeftScroll ? result.startIndex === 0 : true); // start is not 0
|
|
74
|
+
});
|
|
75
|
+
test('sets hasRightScroll when tabs after the visible window exist', (t) => {
|
|
76
|
+
const items = tabList([
|
|
77
|
+
['a', 20],
|
|
78
|
+
['b', 20],
|
|
79
|
+
['c', 20],
|
|
80
|
+
['d', 20],
|
|
81
|
+
['e', 20],
|
|
82
|
+
]);
|
|
83
|
+
// Available width 50: active item 'b' (width 20) + 4 = 24. Try right 'c': 24+23=47<=50 → yes. Try left 'a': 47+23=70>50 → no.
|
|
84
|
+
// Visible = [b, c], hasRightScroll = true
|
|
85
|
+
const result = computeVisibleTabs(items, 'b', 50, width);
|
|
86
|
+
t.true(result.hasRightScroll);
|
|
87
|
+
});
|
|
88
|
+
test('does not set scroll indicators when all items are visible', (t) => {
|
|
89
|
+
const items = tabList([
|
|
90
|
+
['a', 5],
|
|
91
|
+
['b', 5],
|
|
92
|
+
]);
|
|
93
|
+
const result = computeVisibleTabs(items, 'a', 80, width);
|
|
94
|
+
t.false(result.hasLeftScroll);
|
|
95
|
+
t.false(result.hasRightScroll);
|
|
96
|
+
});
|
|
97
|
+
//# sourceMappingURL=compute-visible-tabs.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compute-visible-tabs.test.js","sourceRoot":"","sources":["../../../source/components/Common/compute-visible-tabs.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
interface HandoffConfirmationPromptProps {
|
|
3
|
+
onConfirm: () => void;
|
|
4
|
+
onDecline: () => void;
|
|
5
|
+
onCancel: () => void;
|
|
6
|
+
}
|
|
7
|
+
declare const HandoffConfirmationPrompt: FC<HandoffConfirmationPromptProps>;
|
|
8
|
+
export default HandoffConfirmationPrompt;
|
|
9
|
+
//# sourceMappingURL=HandoffConfirmationPrompt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HandoffConfirmationPrompt.d.ts","sourceRoot":"","sources":["../../source/components/HandoffConfirmationPrompt.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAY,MAAM,OAAO,CAAC;AAG5C,UAAU,8BAA8B;IACtC,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,QAAA,MAAM,yBAAyB,EAAE,EAAE,CAAC,8BAA8B,CAsCjE,CAAC;AAEF,eAAe,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import React, { useState } from 'react';
|
|
2
|
+
import { Box, Text, useInput } from 'ink';
|
|
3
|
+
const HandoffConfirmationPrompt = ({ onConfirm, onDecline, onCancel }) => {
|
|
4
|
+
const [selectedIndex, setSelectedIndex] = useState(0); // 0 = Yes, 1 = No
|
|
5
|
+
useInput((input, key) => {
|
|
6
|
+
if (key.upArrow || key.downArrow) {
|
|
7
|
+
setSelectedIndex((prev) => (prev === 0 ? 1 : 0));
|
|
8
|
+
}
|
|
9
|
+
if (key.return) {
|
|
10
|
+
if (selectedIndex === 0) {
|
|
11
|
+
onConfirm();
|
|
12
|
+
}
|
|
13
|
+
else {
|
|
14
|
+
onDecline();
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
if (input === 'y') {
|
|
18
|
+
onConfirm();
|
|
19
|
+
}
|
|
20
|
+
if (input === 'n') {
|
|
21
|
+
onDecline();
|
|
22
|
+
}
|
|
23
|
+
if (key.escape) {
|
|
24
|
+
onCancel();
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
return (React.createElement(Box, { flexDirection: "column" },
|
|
28
|
+
React.createElement(Text, null, "\uD83D\uDCCB Change model?"),
|
|
29
|
+
React.createElement(Box, { flexDirection: "column", marginLeft: 1 },
|
|
30
|
+
React.createElement(Text, { color: selectedIndex === 0 ? 'green' : undefined },
|
|
31
|
+
selectedIndex === 0 ? '❯ ' : ' ',
|
|
32
|
+
"Yes"),
|
|
33
|
+
React.createElement(Text, { color: selectedIndex === 1 ? 'red' : undefined },
|
|
34
|
+
selectedIndex === 1 ? '❯ ' : ' ',
|
|
35
|
+
"No"))));
|
|
36
|
+
};
|
|
37
|
+
export default HandoffConfirmationPrompt;
|
|
38
|
+
//# sourceMappingURL=HandoffConfirmationPrompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HandoffConfirmationPrompt.js","sourceRoot":"","sources":["../../source/components/HandoffConfirmationPrompt.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAM,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAQ1C,MAAM,yBAAyB,GAAuC,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC3G,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,kBAAkB;IAEzE,QAAQ,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACtB,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;YACjC,gBAAgB,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACf,IAAI,aAAa,KAAK,CAAC,EAAE,CAAC;gBACxB,SAAS,EAAE,CAAC;YACd,CAAC;iBAAM,CAAC;gBACN,SAAS,EAAE,CAAC;YACd,CAAC;QACH,CAAC;QAED,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;YAClB,SAAS,EAAE,CAAC;QACd,CAAC;QAED,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;YAClB,SAAS,EAAE,CAAC;QACd,CAAC;QAED,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACf,QAAQ,EAAE,CAAC;QACb,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,CACL,oBAAC,GAAG,IAAC,aAAa,EAAC,QAAQ;QACzB,oBAAC,IAAI,qCAAwB;QAC7B,oBAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,UAAU,EAAE,CAAC;YACvC,oBAAC,IAAI,IAAC,KAAK,EAAE,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;gBAAG,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;sBAAW;YACrG,oBAAC,IAAI,IAAC,KAAK,EAAE,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;gBAAG,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;qBAAU,CAC9F,CACF,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,yBAAyB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HandoffConfirmationPrompt.test.d.ts","sourceRoot":"","sources":["../../source/components/HandoffConfirmationPrompt.test.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import test from 'ava';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { render } from 'ink-testing-library';
|
|
4
|
+
import HandoffConfirmationPrompt from './HandoffConfirmationPrompt.js';
|
|
5
|
+
test('HandoffConfirmationPrompt renders question and choices', (t) => {
|
|
6
|
+
const { lastFrame } = render(React.createElement(HandoffConfirmationPrompt, { onConfirm: () => { }, onDecline: () => { }, onCancel: () => { } }));
|
|
7
|
+
const output = lastFrame() ?? '';
|
|
8
|
+
t.true(output.includes('📋 Change model?'));
|
|
9
|
+
t.true(output.includes('Yes'));
|
|
10
|
+
t.true(output.includes('No'));
|
|
11
|
+
});
|
|
12
|
+
//# sourceMappingURL=HandoffConfirmationPrompt.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HandoffConfirmationPrompt.test.js","sourceRoot":"","sources":["../../source/components/HandoffConfirmationPrompt.test.tsx"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,KAAK,CAAC;AACvB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,yBAAyB,MAAM,gCAAgC,CAAC;AAEvE,IAAI,CAAC,wDAAwD,EAAE,CAAC,CAAC,EAAE,EAAE;IACnE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,oBAAC,yBAAyB,IAAC,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC,GAAI,CAC5F,CAAC;IACF,MAAM,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,CAAC;IACjC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAC5C,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/B,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AAChC,CAAC,CAAC,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { FC } from 'react';
|
|
2
2
|
import type { SlashCommand } from '../../slash-commands.js';
|
|
3
3
|
import type { PathCompletionItem } from '../../hooks/use-path-completion.js';
|
|
4
|
-
import type { SettingCompletionItem } from '../../hooks/use-settings-completion.js';
|
|
4
|
+
import type { SettingCompletionItem, SettingsCategory } from '../../hooks/use-settings-completion.js';
|
|
5
5
|
import type { SettingValueSuggestion } from '../../hooks/use-settings-value-completion.js';
|
|
6
6
|
import type { ModelInfo } from '../../services/model-service.js';
|
|
7
7
|
import type { SettingsService } from '../../services/settings-service.js';
|
|
@@ -11,6 +11,7 @@ interface PopupManagerProps {
|
|
|
11
11
|
isOpen: boolean;
|
|
12
12
|
commands: SlashCommand[];
|
|
13
13
|
selectedIndex: number;
|
|
14
|
+
scrollOffset?: number;
|
|
14
15
|
filter: string;
|
|
15
16
|
};
|
|
16
17
|
path: {
|
|
@@ -40,6 +41,9 @@ interface PopupManagerProps {
|
|
|
40
41
|
selectedIndex: number;
|
|
41
42
|
scrollOffset?: number;
|
|
42
43
|
query: string;
|
|
44
|
+
isSearchingAll: boolean;
|
|
45
|
+
activeCategoryId: string;
|
|
46
|
+
categories: SettingsCategory[];
|
|
43
47
|
};
|
|
44
48
|
settingsValue: {
|
|
45
49
|
isOpen: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PopupManager.d.ts","sourceRoot":"","sources":["../../../source/components/Input/PopupManager.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAElC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAM5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;
|
|
1
|
+
{"version":3,"file":"PopupManager.d.ts","sourceRoot":"","sources":["../../../source/components/Input/PopupManager.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAElC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAM5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,KAAK,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AACtG,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AAC3F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAElE,UAAU,iBAAiB;IACzB,KAAK,EAAE;QACL,MAAM,EAAE,OAAO,CAAC;QAChB,QAAQ,EAAE,YAAY,EAAE,CAAC;QACzB,aAAa,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,IAAI,EAAE;QACJ,MAAM,EAAE,OAAO,CAAC;QAChB,KAAK,EAAE,kBAAkB,EAAE,CAAC;QAC5B,aAAa,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;KACtB,CAAC;IACF,MAAM,EAAE;QACN,MAAM,EAAE,OAAO,CAAC;QAChB,KAAK,EAAE,SAAS,EAAE,CAAC;QACnB,aAAa,EAAE,MAAM,CAAC;QACtB,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,iBAAiB,CAAC,EAAE,OAAO,CAAC;KAC7B,CAAC;IACF,QAAQ,EAAE;QACR,MAAM,EAAE,OAAO,CAAC;QAChB,KAAK,EAAE,qBAAqB,EAAE,CAAC;QAC/B,aAAa,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,KAAK,EAAE,MAAM,CAAC;QACd,cAAc,EAAE,OAAO,CAAC;QACxB,gBAAgB,EAAE,MAAM,CAAC;QACzB,UAAU,EAAE,gBAAgB,EAAE,CAAC;KAChC,CAAC;IACF,aAAa,EAAE;QACb,MAAM,EAAE,OAAO,CAAC;QAChB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;QAC1B,KAAK,EAAE,sBAAsB,EAAE,CAAC;QAChC,aAAa,EAAE,MAAM,CAAC;QACtB,KAAK,EAAE,MAAM,CAAC;QACd,iBAAiB,CAAC,EAAE,OAAO,CAAC;KAC7B,CAAC;IACF,IAAI,EAAE;QACJ,MAAM,EAAE,OAAO,CAAC;QAChB,KAAK,EAAE,QAAQ,EAAE,CAAC;QAClB,aAAa,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,eAAe,EAAE,eAAe,CAAC;CAClC;AAED,eAAO,MAAM,YAAY,EAAE,EAAE,CAAC,iBAAiB,CAmE9C,CAAC"}
|
|
@@ -9,8 +9,8 @@ export const PopupManager = ({ slash, path, models, settings, settingsValue, und
|
|
|
9
9
|
return (React.createElement(React.Fragment, null,
|
|
10
10
|
models.isOpen && (React.createElement(ModelSelectionMenu, { items: models.items, selectedIndex: models.selectedIndex, query: models.query, loading: models.loading, error: models.error, provider: models.provider, scrollOffset: models.scrollOffset, canSwitchProvider: models.canSwitchProvider, settingsService: settingsService })),
|
|
11
11
|
path.isOpen && (React.createElement(PathSelectionMenu, { items: path.items, selectedIndex: path.selectedIndex, scrollOffset: path.scrollOffset, query: path.query, loading: path.loading, error: path.error })),
|
|
12
|
-
slash.isOpen && (React.createElement(SlashCommandMenu, { commands: slash.commands, selectedIndex: slash.selectedIndex, filter: slash.filter })),
|
|
13
|
-
settings.isOpen && (React.createElement(SettingsSelectionMenu, { items: settings.items, selectedIndex: settings.selectedIndex, scrollOffset: settings.scrollOffset, query: settings.query })),
|
|
12
|
+
slash.isOpen && (React.createElement(SlashCommandMenu, { commands: slash.commands, selectedIndex: slash.selectedIndex, filter: slash.filter, scrollOffset: slash.scrollOffset })),
|
|
13
|
+
settings.isOpen && (React.createElement(SettingsSelectionMenu, { items: settings.items, selectedIndex: settings.selectedIndex, scrollOffset: settings.scrollOffset, query: settings.query, isSearchingAll: settings.isSearchingAll, activeCategoryId: settings.activeCategoryId, categories: settings.categories })),
|
|
14
14
|
settingsValue.isOpen && settingsValue.settingKey && (React.createElement(SettingsValueSelectionMenu, { settingKey: settingsValue.settingKey, items: settingsValue.items, selectedIndex: settingsValue.selectedIndex, query: settingsValue.query, isNumericSettings: settingsValue.isNumericSettings })),
|
|
15
15
|
undo.isOpen && (React.createElement(UndoSelectionMenu, { items: undo.items, selectedIndex: undo.selectedIndex, scrollOffset: undo.scrollOffset }))));
|
|
16
16
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PopupManager.js","sourceRoot":"","sources":["../../../source/components/Input/PopupManager.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAa,MAAM,OAAO,CAAC;AAClC,OAAO,gBAAgB,MAAM,wBAAwB,CAAC;AAEtD,OAAO,iBAAiB,MAAM,yBAAyB,CAAC;AACxD,OAAO,qBAAqB,MAAM,6BAA6B,CAAC;AAChE,OAAO,0BAA0B,MAAM,kCAAkC,CAAC;AAC1E,OAAO,kBAAkB,MAAM,0BAA0B,CAAC;AAC1D,OAAO,iBAAiB,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"PopupManager.js","sourceRoot":"","sources":["../../../source/components/Input/PopupManager.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAa,MAAM,OAAO,CAAC;AAClC,OAAO,gBAAgB,MAAM,wBAAwB,CAAC;AAEtD,OAAO,iBAAiB,MAAM,yBAAyB,CAAC;AACxD,OAAO,qBAAqB,MAAM,6BAA6B,CAAC;AAChE,OAAO,0BAA0B,MAAM,kCAAkC,CAAC;AAC1E,OAAO,kBAAkB,MAAM,0BAA0B,CAAC;AAC1D,OAAO,iBAAiB,MAAM,yBAAyB,CAAC;AAgExD,MAAM,CAAC,MAAM,YAAY,GAA0B,CAAC,EAClD,KAAK,EACL,IAAI,EACJ,MAAM,EACN,QAAQ,EACR,aAAa,EACb,IAAI,EACJ,eAAe,GAChB,EAAE,EAAE;IACH,OAAO,CACL;QACG,MAAM,CAAC,MAAM,IAAI,CAChB,oBAAC,kBAAkB,IACjB,KAAK,EAAE,MAAM,CAAC,KAAK,EACnB,aAAa,EAAE,MAAM,CAAC,aAAa,EACnC,KAAK,EAAE,MAAM,CAAC,KAAK,EACnB,OAAO,EAAE,MAAM,CAAC,OAAO,EACvB,KAAK,EAAE,MAAM,CAAC,KAAK,EACnB,QAAQ,EAAE,MAAM,CAAC,QAAQ,EACzB,YAAY,EAAE,MAAM,CAAC,YAAY,EACjC,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,EAC3C,eAAe,EAAE,eAAe,GAChC,CACH;QACA,IAAI,CAAC,MAAM,IAAI,CACd,oBAAC,iBAAiB,IAChB,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,aAAa,EAAE,IAAI,CAAC,aAAa,EACjC,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,KAAK,EAAE,IAAI,CAAC,KAAK,GACjB,CACH;QACA,KAAK,CAAC,MAAM,IAAI,CACf,oBAAC,gBAAgB,IACf,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,aAAa,EAAE,KAAK,CAAC,aAAa,EAClC,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,YAAY,EAAE,KAAK,CAAC,YAAY,GAChC,CACH;QACA,QAAQ,CAAC,MAAM,IAAI,CAClB,oBAAC,qBAAqB,IACpB,KAAK,EAAE,QAAQ,CAAC,KAAK,EACrB,aAAa,EAAE,QAAQ,CAAC,aAAa,EACrC,YAAY,EAAE,QAAQ,CAAC,YAAY,EACnC,KAAK,EAAE,QAAQ,CAAC,KAAK,EACrB,cAAc,EAAE,QAAQ,CAAC,cAAc,EACvC,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB,EAC3C,UAAU,EAAE,QAAQ,CAAC,UAAU,GAC/B,CACH;QACA,aAAa,CAAC,MAAM,IAAI,aAAa,CAAC,UAAU,IAAI,CACnD,oBAAC,0BAA0B,IACzB,UAAU,EAAE,aAAa,CAAC,UAAU,EACpC,KAAK,EAAE,aAAa,CAAC,KAAK,EAC1B,aAAa,EAAE,aAAa,CAAC,aAAa,EAC1C,KAAK,EAAE,aAAa,CAAC,KAAK,EAC1B,iBAAiB,EAAE,aAAa,CAAC,iBAAiB,GAClD,CACH;QACA,IAAI,CAAC,MAAM,IAAI,CACd,oBAAC,iBAAiB,IAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,GAAI,CAC7G,CACA,CACJ,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
export function getPopupNavigationCursor({ input, key, cursor, valueLength, hasModeLeftHandler, hasModeRightHandler, }) {
|
|
2
|
-
if (key.
|
|
2
|
+
if (key.ctrl && input === 'a') {
|
|
3
3
|
return 0;
|
|
4
4
|
}
|
|
5
|
-
if (key.
|
|
5
|
+
if (key.ctrl && input === 'e') {
|
|
6
6
|
return valueLength;
|
|
7
7
|
}
|
|
8
8
|
if (key.leftArrow && !hasModeLeftHandler) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"popup-key-navigation.js","sourceRoot":"","sources":["../../../source/components/Input/popup-key-navigation.ts"],"names":[],"mappings":"AAiBA,MAAM,UAAU,wBAAwB,CAAC,EACvC,KAAK,EACL,GAAG,EACH,MAAM,EACN,WAAW,EACX,kBAAkB,EAClB,mBAAmB,GACd;IACL,IAAI,GAAG,CAAC,IAAI,IAAI,
|
|
1
|
+
{"version":3,"file":"popup-key-navigation.js","sourceRoot":"","sources":["../../../source/components/Input/popup-key-navigation.ts"],"names":[],"mappings":"AAiBA,MAAM,UAAU,wBAAwB,CAAC,EACvC,KAAK,EACL,GAAG,EACH,MAAM,EACN,WAAW,EACX,kBAAkB,EAClB,mBAAmB,GACd;IACL,IAAI,GAAG,CAAC,IAAI,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;QAC9B,OAAO,CAAC,CAAC;IACX,CAAC;IAED,IAAI,GAAG,CAAC,IAAI,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;QAC9B,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,IAAI,GAAG,CAAC,SAAS,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACzC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;IACjC,CAAC;IAED,IAAI,GAAG,CAAC,UAAU,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3C,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -36,7 +36,7 @@ test('left/right do not override mode-specific handlers', (t) => {
|
|
|
36
36
|
hasModeRightHandler: true,
|
|
37
37
|
}), null);
|
|
38
38
|
});
|
|
39
|
-
test('home/end
|
|
39
|
+
test('home/end keys return null (fall through) in popup mode', (t) => {
|
|
40
40
|
t.is(getPopupNavigationCursor({
|
|
41
41
|
input: '',
|
|
42
42
|
key: { home: true },
|
|
@@ -44,7 +44,7 @@ test('home/end and ctrl+a/ctrl+e move cursor in popup mode', (t) => {
|
|
|
44
44
|
valueLength: 10,
|
|
45
45
|
hasModeLeftHandler: false,
|
|
46
46
|
hasModeRightHandler: false,
|
|
47
|
-
}),
|
|
47
|
+
}), null);
|
|
48
48
|
t.is(getPopupNavigationCursor({
|
|
49
49
|
input: '',
|
|
50
50
|
key: { end: true },
|
|
@@ -52,7 +52,9 @@ test('home/end and ctrl+a/ctrl+e move cursor in popup mode', (t) => {
|
|
|
52
52
|
valueLength: 10,
|
|
53
53
|
hasModeLeftHandler: false,
|
|
54
54
|
hasModeRightHandler: false,
|
|
55
|
-
}),
|
|
55
|
+
}), null);
|
|
56
|
+
});
|
|
57
|
+
test('ctrl+a/ctrl+e move cursor in popup mode', (t) => {
|
|
56
58
|
t.is(getPopupNavigationCursor({
|
|
57
59
|
input: 'a',
|
|
58
60
|
key: { ctrl: true },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"popup-key-navigation.test.js","sourceRoot":"","sources":["../../../source/components/Input/popup-key-navigation.test.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,KAAK,CAAC;AACvB,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAErE,IAAI,CAAC,iFAAiF,EAAE,CAAC,CAAC,EAAE,EAAE;IAC5F,CAAC,CAAC,EAAE,CACF,wBAAwB,CAAC;QACvB,KAAK,EAAE,EAAE;QACT,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;QACxB,MAAM,EAAE,CAAC;QACT,WAAW,EAAE,EAAE;QACf,kBAAkB,EAAE,KAAK;QACzB,mBAAmB,EAAE,KAAK;KAC3B,CAAC,EACF,CAAC,CACF,CAAC;IAEF,CAAC,CAAC,EAAE,CACF,wBAAwB,CAAC;QACvB,KAAK,EAAE,EAAE;QACT,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE;QACzB,MAAM,EAAE,CAAC;QACT,WAAW,EAAE,EAAE;QACf,kBAAkB,EAAE,KAAK;QACzB,mBAAmB,EAAE,KAAK;KAC3B,CAAC,EACF,CAAC,CACF,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,mDAAmD,EAAE,CAAC,CAAC,EAAE,EAAE;IAC9D,CAAC,CAAC,EAAE,CACF,wBAAwB,CAAC;QACvB,KAAK,EAAE,EAAE;QACT,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;QACxB,MAAM,EAAE,CAAC;QACT,WAAW,EAAE,EAAE;QACf,kBAAkB,EAAE,IAAI;QACxB,mBAAmB,EAAE,KAAK;KAC3B,CAAC,EACF,IAAI,CACL,CAAC;IAEF,CAAC,CAAC,EAAE,CACF,wBAAwB,CAAC;QACvB,KAAK,EAAE,EAAE;QACT,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE;QACzB,MAAM,EAAE,CAAC;QACT,WAAW,EAAE,EAAE;QACf,kBAAkB,EAAE,KAAK;QACzB,mBAAmB,EAAE,IAAI;KAC1B,CAAC,EACF,IAAI,CACL,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"popup-key-navigation.test.js","sourceRoot":"","sources":["../../../source/components/Input/popup-key-navigation.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"popup-props.d.ts","sourceRoot":"","sources":["../../../source/components/Input/popup-props.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AACpF,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,8CAA8C,CAAC;AAC/F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAE1E,KAAK,UAAU,GAAG,cAAc,CAAC,OAAO,YAAY,CAAC,CAAC;AAEtD,KAAK,OAAO,GAAG;IACb,KAAK,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;IAC3C,IAAI,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC;IAC3C,QAAQ,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;IACnD,aAAa,EAAE,UAAU,CAAC,OAAO,0BAA0B,CAAC,CAAC;IAC7D,MAAM,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC;IAC7C,IAAI,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;CAC3C,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,yDAO1B,OAAO,KAAG,IAAI,CAAC,UAAU,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"popup-props.d.ts","sourceRoot":"","sources":["../../../source/components/Input/popup-props.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AACpF,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,8CAA8C,CAAC;AAC/F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAE1E,KAAK,UAAU,GAAG,cAAc,CAAC,OAAO,YAAY,CAAC,CAAC;AAEtD,KAAK,OAAO,GAAG;IACb,KAAK,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;IAC3C,IAAI,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC;IAC3C,QAAQ,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;IACnD,aAAa,EAAE,UAAU,CAAC,OAAO,0BAA0B,CAAC,CAAC;IAC7D,MAAM,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC;IAC7C,IAAI,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;CAC3C,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,yDAO1B,OAAO,KAAG,IAAI,CAAC,UAAU,EAAE,iBAAiB,CAoD7C,CAAC"}
|
|
@@ -3,6 +3,7 @@ export const toPopupProps = ({ slash, path, settings, settingsValue, models, und
|
|
|
3
3
|
isOpen: slash.isOpen,
|
|
4
4
|
commands: slash.filteredCommands,
|
|
5
5
|
selectedIndex: slash.selectedIndex,
|
|
6
|
+
scrollOffset: slash.scrollOffset,
|
|
6
7
|
filter: slash.filter,
|
|
7
8
|
},
|
|
8
9
|
path: {
|
|
@@ -31,6 +32,9 @@ export const toPopupProps = ({ slash, path, settings, settingsValue, models, und
|
|
|
31
32
|
selectedIndex: settings.selectedIndex,
|
|
32
33
|
scrollOffset: settings.scrollOffset,
|
|
33
34
|
query: settings.query,
|
|
35
|
+
isSearchingAll: settings.isSearchingAll,
|
|
36
|
+
activeCategoryId: settings.activeCategoryId,
|
|
37
|
+
categories: settings.categories,
|
|
34
38
|
},
|
|
35
39
|
settingsValue: {
|
|
36
40
|
isOpen: settingsValue.isOpen,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"popup-props.js","sourceRoot":"","sources":["../../../source/components/Input/popup-props.ts"],"names":[],"mappings":"AAoBA,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAC3B,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,aAAa,EACb,MAAM,EACN,IAAI,GACI,EAAuC,EAAE,CAAC,CAAC;IACnD,KAAK,EAAE;QACL,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,QAAQ,EAAE,KAAK,CAAC,gBAAgB;QAChC,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,MAAM,EAAE,KAAK,CAAC,MAAM;KACrB;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,KAAK,EAAE,IAAI,CAAC,eAAe;QAC3B,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,KAAK,EAAE,IAAI,CAAC,KAAK;KAClB;IACD,MAAM,EAAE;QACN,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,KAAK,EAAE,MAAM,CAAC,cAAc;QAC5B,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;KAC5C;IACD,QAAQ,EAAE;QACR,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,KAAK,EAAE,QAAQ,CAAC,eAAe;QAC/B,aAAa,EAAE,QAAQ,CAAC,aAAa;QACrC,YAAY,EAAE,QAAQ,CAAC,YAAY;QACnC,KAAK,EAAE,QAAQ,CAAC,KAAK;
|
|
1
|
+
{"version":3,"file":"popup-props.js","sourceRoot":"","sources":["../../../source/components/Input/popup-props.ts"],"names":[],"mappings":"AAoBA,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAC3B,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,aAAa,EACb,MAAM,EACN,IAAI,GACI,EAAuC,EAAE,CAAC,CAAC;IACnD,KAAK,EAAE;QACL,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,QAAQ,EAAE,KAAK,CAAC,gBAAgB;QAChC,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,MAAM,EAAE,KAAK,CAAC,MAAM;KACrB;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,KAAK,EAAE,IAAI,CAAC,eAAe;QAC3B,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,KAAK,EAAE,IAAI,CAAC,KAAK;KAClB;IACD,MAAM,EAAE;QACN,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,KAAK,EAAE,MAAM,CAAC,cAAc;QAC5B,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;KAC5C;IACD,QAAQ,EAAE;QACR,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,KAAK,EAAE,QAAQ,CAAC,eAAe;QAC/B,aAAa,EAAE,QAAQ,CAAC,aAAa;QACrC,YAAY,EAAE,QAAQ,CAAC,YAAY;QACnC,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,cAAc,EAAE,QAAQ,CAAC,cAAc;QACvC,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;QAC3C,UAAU,EAAE,QAAQ,CAAC,UAAU;KAChC;IACD,aAAa,EAAE;QACb,MAAM,EAAE,aAAa,CAAC,MAAM;QAC5B,UAAU,EAAE,aAAa,CAAC,UAAU;QACpC,KAAK,EAAE,aAAa,CAAC,eAAe;QACpC,aAAa,EAAE,aAAa,CAAC,aAAa;QAC1C,KAAK,EAAE,aAAa,CAAC,KAAK;QAC1B,iBAAiB,EAAE,aAAa,CAAC,iBAAiB;KACnD;IACD,IAAI,EAAE;QACJ,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,YAAY,EAAE,IAAI,CAAC,YAAY;KAChC;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"popup-props.test.d.ts","sourceRoot":"","sources":["../../../source/components/Input/popup-props.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import test from 'ava';
|
|
2
|
+
import { toPopupProps } from './popup-props.js';
|
|
3
|
+
test('toPopupProps forwards slash scrollOffset', (t) => {
|
|
4
|
+
const props = toPopupProps({
|
|
5
|
+
slash: {
|
|
6
|
+
isOpen: true,
|
|
7
|
+
filteredCommands: [],
|
|
8
|
+
selectedIndex: 0,
|
|
9
|
+
scrollOffset: 3,
|
|
10
|
+
filter: 'mod',
|
|
11
|
+
open: () => { },
|
|
12
|
+
close: () => { },
|
|
13
|
+
moveUp: () => { },
|
|
14
|
+
moveDown: () => { },
|
|
15
|
+
moveHome: () => { },
|
|
16
|
+
moveEnd: () => { },
|
|
17
|
+
pageUp: () => { },
|
|
18
|
+
pageDown: () => { },
|
|
19
|
+
getSelectedItem: () => undefined,
|
|
20
|
+
executeSelected: () => { },
|
|
21
|
+
completeSelected: () => { },
|
|
22
|
+
},
|
|
23
|
+
path: {
|
|
24
|
+
isOpen: false,
|
|
25
|
+
filteredEntries: [],
|
|
26
|
+
selectedIndex: 0,
|
|
27
|
+
scrollOffset: 0,
|
|
28
|
+
query: '',
|
|
29
|
+
loading: false,
|
|
30
|
+
error: null,
|
|
31
|
+
},
|
|
32
|
+
settings: {
|
|
33
|
+
isOpen: false,
|
|
34
|
+
filteredEntries: [],
|
|
35
|
+
selectedIndex: 0,
|
|
36
|
+
scrollOffset: 0,
|
|
37
|
+
query: '',
|
|
38
|
+
isSearchingAll: false,
|
|
39
|
+
activeCategoryId: '',
|
|
40
|
+
categories: [],
|
|
41
|
+
},
|
|
42
|
+
settingsValue: {
|
|
43
|
+
isOpen: false,
|
|
44
|
+
settingKey: null,
|
|
45
|
+
filteredEntries: [],
|
|
46
|
+
selectedIndex: 0,
|
|
47
|
+
query: '',
|
|
48
|
+
isNumericSettings: false,
|
|
49
|
+
},
|
|
50
|
+
models: {
|
|
51
|
+
isOpen: false,
|
|
52
|
+
filteredModels: [],
|
|
53
|
+
selectedIndex: 0,
|
|
54
|
+
query: '',
|
|
55
|
+
loading: false,
|
|
56
|
+
error: null,
|
|
57
|
+
provider: null,
|
|
58
|
+
scrollOffset: 0,
|
|
59
|
+
canSwitchProvider: false,
|
|
60
|
+
},
|
|
61
|
+
undo: {
|
|
62
|
+
isOpen: false,
|
|
63
|
+
items: [],
|
|
64
|
+
selectedIndex: 0,
|
|
65
|
+
scrollOffset: 0,
|
|
66
|
+
},
|
|
67
|
+
});
|
|
68
|
+
t.is(props.slash.scrollOffset, 3);
|
|
69
|
+
});
|
|
70
|
+
//# sourceMappingURL=popup-props.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"popup-props.test.js","sourceRoot":"","sources":["../../../source/components/Input/popup-props.test.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,KAAK,CAAC;AACvB,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,IAAI,CAAC,0CAA0C,EAAE,CAAC,CAAC,EAAE,EAAE;IACrD,MAAM,KAAK,GAAG,YAAY,CAAC;QACzB,KAAK,EAAE;YACL,MAAM,EAAE,IAAI;YACZ,gBAAgB,EAAE,EAAE;YACpB,aAAa,EAAE,CAAC;YAChB,YAAY,EAAE,CAAC;YACf,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC;YACd,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC;YACf,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC;YAChB,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;YAClB,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;YAClB,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;YACjB,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC;YAChB,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;YAClB,eAAe,EAAE,GAAG,EAAE,CAAC,SAAS;YAChC,eAAe,EAAE,GAAG,EAAE,GAAE,CAAC;YACzB,gBAAgB,EAAE,GAAG,EAAE,GAAE,CAAC;SACpB;QACR,IAAI,EAAE;YACJ,MAAM,EAAE,KAAK;YACb,eAAe,EAAE,EAAE;YACnB,aAAa,EAAE,CAAC;YAChB,YAAY,EAAE,CAAC;YACf,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,IAAI;SACL;QACR,QAAQ,EAAE;YACR,MAAM,EAAE,KAAK;YACb,eAAe,EAAE,EAAE;YACnB,aAAa,EAAE,CAAC;YAChB,YAAY,EAAE,CAAC;YACf,KAAK,EAAE,EAAE;YACT,cAAc,EAAE,KAAK;YACrB,gBAAgB,EAAE,EAAE;YACpB,UAAU,EAAE,EAAE;SACR;QACR,aAAa,EAAE;YACb,MAAM,EAAE,KAAK;YACb,UAAU,EAAE,IAAI;YAChB,eAAe,EAAE,EAAE;YACnB,aAAa,EAAE,CAAC;YAChB,KAAK,EAAE,EAAE;YACT,iBAAiB,EAAE,KAAK;SAClB;QACR,MAAM,EAAE;YACN,MAAM,EAAE,KAAK;YACb,cAAc,EAAE,EAAE;YAClB,aAAa,EAAE,CAAC;YAChB,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,IAAI;YACd,YAAY,EAAE,CAAC;YACf,iBAAiB,EAAE,KAAK;SAClB;QACR,IAAI,EAAE;YACJ,MAAM,EAAE,KAAK;YACb,KAAK,EAAE,EAAE;YACT,aAAa,EAAE,CAAC;YAChB,YAAY,EAAE,CAAC;SACT;KACT,CAAC,CAAC;IAEH,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;AACpC,CAAC,CAAC,CAAC"}
|
|
@@ -10,7 +10,6 @@ export { calculateInputWidth };
|
|
|
10
10
|
type Props = {
|
|
11
11
|
onSubmit: (v: UserTurn) => void | Promise<void>;
|
|
12
12
|
slashCommands: SlashCommand[];
|
|
13
|
-
hasConversationHistory?: boolean;
|
|
14
13
|
waitingForRejectionReason?: boolean;
|
|
15
14
|
isShellMode?: boolean;
|
|
16
15
|
settingsService: SettingsService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputBox.d.ts","sourceRoot":"","sources":["../../source/components/InputBox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuD,MAAM,OAAO,CAAC;AAc5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAGrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAY7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAE/D,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAmB/B,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,CAAC,CAAC,EAAE,QAAQ,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,
|
|
1
|
+
{"version":3,"file":"InputBox.d.ts","sourceRoot":"","sources":["../../source/components/InputBox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuD,MAAM,OAAO,CAAC;AAc5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAGrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAY7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAE/D,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAmB/B,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,CAAC,CAAC,EAAE,QAAQ,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,eAAe,CAAC;IACjC,cAAc,EAAE,cAAc,CAAC;IAC/B,cAAc,EAAE,cAAc,CAAC;IAC/B,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACxC,WAAW,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC;QAAE,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC,CAAC;IACnF,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;CACrD,CAAC;;AAqgBF,wBAAoC"}
|