claudeup 0.6.4 → 1.0.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.
Files changed (205) hide show
  1. package/bin/claudeup.js +1 -1
  2. package/dist/data/marketplaces.d.ts +2 -0
  3. package/dist/data/marketplaces.d.ts.map +1 -1
  4. package/dist/data/marketplaces.js +51 -8
  5. package/dist/data/marketplaces.js.map +1 -1
  6. package/dist/data/mcp-servers.d.ts.map +1 -1
  7. package/dist/data/mcp-servers.js +82 -0
  8. package/dist/data/mcp-servers.js.map +1 -1
  9. package/dist/index.js +8 -5
  10. package/dist/index.js.map +1 -1
  11. package/dist/main.d.ts +3 -0
  12. package/dist/main.d.ts.map +1 -0
  13. package/dist/main.js +79 -0
  14. package/dist/main.js.map +1 -0
  15. package/dist/services/claude-settings.d.ts +8 -1
  16. package/dist/services/claude-settings.d.ts.map +1 -1
  17. package/dist/services/claude-settings.js +79 -0
  18. package/dist/services/claude-settings.js.map +1 -1
  19. package/dist/services/local-marketplace.d.ts +76 -0
  20. package/dist/services/local-marketplace.d.ts.map +1 -0
  21. package/dist/services/local-marketplace.js +340 -0
  22. package/dist/services/local-marketplace.js.map +1 -0
  23. package/dist/services/plugin-manager.d.ts +39 -2
  24. package/dist/services/plugin-manager.d.ts.map +1 -1
  25. package/dist/services/plugin-manager.js +259 -9
  26. package/dist/services/plugin-manager.js.map +1 -1
  27. package/dist/types/index.d.ts +6 -1
  28. package/dist/types/index.d.ts.map +1 -1
  29. package/dist/ui/InkApp.d.ts +5 -0
  30. package/dist/ui/InkApp.d.ts.map +1 -0
  31. package/dist/ui/InkApp.js +175 -0
  32. package/dist/ui/InkApp.js.map +1 -0
  33. package/dist/ui/components/CategoryHeader.d.ts +16 -0
  34. package/dist/ui/components/CategoryHeader.d.ts.map +1 -0
  35. package/dist/ui/components/CategoryHeader.js +11 -0
  36. package/dist/ui/components/CategoryHeader.js.map +1 -0
  37. package/dist/ui/components/ScrollableList.d.ts +16 -0
  38. package/dist/ui/components/ScrollableList.d.ts.map +1 -0
  39. package/dist/ui/components/ScrollableList.js +35 -0
  40. package/dist/ui/components/ScrollableList.js.map +1 -0
  41. package/dist/ui/components/SearchInput.d.ts +18 -0
  42. package/dist/ui/components/SearchInput.d.ts.map +1 -0
  43. package/dist/ui/components/SearchInput.js +30 -0
  44. package/dist/ui/components/SearchInput.js.map +1 -0
  45. package/dist/ui/components/TabBar.d.ts +8 -0
  46. package/dist/ui/components/TabBar.d.ts.map +1 -0
  47. package/dist/ui/components/TabBar.js +18 -0
  48. package/dist/ui/components/TabBar.js.map +1 -0
  49. package/dist/ui/components/layout/Footer.d.ts +14 -0
  50. package/dist/ui/components/layout/Footer.d.ts.map +1 -0
  51. package/dist/ui/components/layout/Footer.js +23 -0
  52. package/dist/ui/components/layout/Footer.js.map +1 -0
  53. package/dist/ui/components/layout/Header.d.ts +4 -0
  54. package/dist/ui/components/layout/Header.d.ts.map +1 -0
  55. package/dist/ui/components/layout/Header.js +25 -0
  56. package/dist/ui/components/layout/Header.js.map +1 -0
  57. package/dist/ui/components/layout/Panel.d.ts +22 -0
  58. package/dist/ui/components/layout/Panel.d.ts.map +1 -0
  59. package/dist/ui/components/layout/Panel.js +8 -0
  60. package/dist/ui/components/layout/Panel.js.map +1 -0
  61. package/dist/ui/components/layout/ProgressBar.d.ts +12 -0
  62. package/dist/ui/components/layout/ProgressBar.d.ts.map +1 -0
  63. package/dist/ui/components/layout/ProgressBar.js +16 -0
  64. package/dist/ui/components/layout/ProgressBar.js.map +1 -0
  65. package/dist/ui/components/layout/ScopeTabs.d.ts +12 -0
  66. package/dist/ui/components/layout/ScopeTabs.d.ts.map +1 -0
  67. package/dist/ui/components/layout/ScopeTabs.js +8 -0
  68. package/dist/ui/components/layout/ScopeTabs.js.map +1 -0
  69. package/dist/ui/components/layout/ScreenLayout.d.ts +30 -0
  70. package/dist/ui/components/layout/ScreenLayout.d.ts.map +1 -0
  71. package/dist/ui/components/layout/ScreenLayout.js +23 -0
  72. package/dist/ui/components/layout/ScreenLayout.js.map +1 -0
  73. package/dist/ui/components/layout/index.d.ts +7 -0
  74. package/dist/ui/components/layout/index.d.ts.map +1 -0
  75. package/dist/ui/components/layout/index.js +7 -0
  76. package/dist/ui/components/layout/index.js.map +1 -0
  77. package/dist/ui/components/modals/ConfirmModal.d.ts +14 -0
  78. package/dist/ui/components/modals/ConfirmModal.d.ts.map +1 -0
  79. package/dist/ui/components/modals/ConfirmModal.js +15 -0
  80. package/dist/ui/components/modals/ConfirmModal.js.map +1 -0
  81. package/dist/ui/components/modals/InputModal.d.ts +16 -0
  82. package/dist/ui/components/modals/InputModal.d.ts.map +1 -0
  83. package/dist/ui/components/modals/InputModal.js +23 -0
  84. package/dist/ui/components/modals/InputModal.js.map +1 -0
  85. package/dist/ui/components/modals/LoadingModal.d.ts +8 -0
  86. package/dist/ui/components/modals/LoadingModal.d.ts.map +1 -0
  87. package/dist/ui/components/modals/LoadingModal.js +8 -0
  88. package/dist/ui/components/modals/LoadingModal.js.map +1 -0
  89. package/dist/ui/components/modals/MessageModal.d.ts +14 -0
  90. package/dist/ui/components/modals/MessageModal.d.ts.map +1 -0
  91. package/dist/ui/components/modals/MessageModal.js +17 -0
  92. package/dist/ui/components/modals/MessageModal.js.map +1 -0
  93. package/dist/ui/components/modals/ModalContainer.d.ts +7 -0
  94. package/dist/ui/components/modals/ModalContainer.d.ts.map +1 -0
  95. package/dist/ui/components/modals/ModalContainer.js +38 -0
  96. package/dist/ui/components/modals/ModalContainer.js.map +1 -0
  97. package/dist/ui/components/modals/SelectModal.d.ts +17 -0
  98. package/dist/ui/components/modals/SelectModal.d.ts.map +1 -0
  99. package/dist/ui/components/modals/SelectModal.js +33 -0
  100. package/dist/ui/components/modals/SelectModal.js.map +1 -0
  101. package/dist/ui/components/modals/index.d.ts +7 -0
  102. package/dist/ui/components/modals/index.d.ts.map +1 -0
  103. package/dist/ui/components/modals/index.js +7 -0
  104. package/dist/ui/components/modals/index.js.map +1 -0
  105. package/dist/ui/hooks/index.d.ts +3 -0
  106. package/dist/ui/hooks/index.d.ts.map +1 -0
  107. package/dist/ui/hooks/index.js +3 -0
  108. package/dist/ui/hooks/index.js.map +1 -0
  109. package/dist/ui/hooks/useAsyncData.d.ts +40 -0
  110. package/dist/ui/hooks/useAsyncData.d.ts.map +1 -0
  111. package/dist/ui/hooks/useAsyncData.js +78 -0
  112. package/dist/ui/hooks/useAsyncData.js.map +1 -0
  113. package/dist/ui/hooks/useKeyboardNavigation.d.ts +27 -0
  114. package/dist/ui/hooks/useKeyboardNavigation.d.ts.map +1 -0
  115. package/dist/ui/hooks/useKeyboardNavigation.js +82 -0
  116. package/dist/ui/hooks/useKeyboardNavigation.js.map +1 -0
  117. package/dist/ui/screens/CliToolsScreen.d.ts +4 -0
  118. package/dist/ui/screens/CliToolsScreen.d.ts.map +1 -0
  119. package/dist/ui/screens/CliToolsScreen.js +268 -0
  120. package/dist/ui/screens/CliToolsScreen.js.map +1 -0
  121. package/dist/ui/screens/EnvVarsScreen.d.ts +4 -0
  122. package/dist/ui/screens/EnvVarsScreen.d.ts.map +1 -0
  123. package/dist/ui/screens/EnvVarsScreen.js +145 -0
  124. package/dist/ui/screens/EnvVarsScreen.js.map +1 -0
  125. package/dist/ui/screens/McpRegistryScreen.d.ts +4 -0
  126. package/dist/ui/screens/McpRegistryScreen.d.ts.map +1 -0
  127. package/dist/ui/screens/McpRegistryScreen.js +226 -0
  128. package/dist/ui/screens/McpRegistryScreen.js.map +1 -0
  129. package/dist/ui/screens/McpScreen.d.ts +4 -0
  130. package/dist/ui/screens/McpScreen.d.ts.map +1 -0
  131. package/dist/ui/screens/McpScreen.js +222 -0
  132. package/dist/ui/screens/McpScreen.js.map +1 -0
  133. package/dist/ui/screens/ModelSelectorScreen.d.ts +4 -0
  134. package/dist/ui/screens/ModelSelectorScreen.d.ts.map +1 -0
  135. package/dist/ui/screens/ModelSelectorScreen.js +143 -0
  136. package/dist/ui/screens/ModelSelectorScreen.js.map +1 -0
  137. package/dist/ui/screens/PluginsScreen.d.ts +4 -0
  138. package/dist/ui/screens/PluginsScreen.d.ts.map +1 -0
  139. package/dist/ui/screens/PluginsScreen.js +747 -0
  140. package/dist/ui/screens/PluginsScreen.js.map +1 -0
  141. package/dist/ui/screens/StatusLineScreen.d.ts +4 -0
  142. package/dist/ui/screens/StatusLineScreen.d.ts.map +1 -0
  143. package/dist/ui/screens/StatusLineScreen.js +197 -0
  144. package/dist/ui/screens/StatusLineScreen.js.map +1 -0
  145. package/dist/ui/screens/index.d.ts +8 -0
  146. package/dist/ui/screens/index.d.ts.map +1 -0
  147. package/dist/ui/screens/index.js +8 -0
  148. package/dist/ui/screens/index.js.map +1 -0
  149. package/dist/ui/state/AppContext.d.ts +40 -0
  150. package/dist/ui/state/AppContext.d.ts.map +1 -0
  151. package/dist/ui/state/AppContext.js +162 -0
  152. package/dist/ui/state/AppContext.js.map +1 -0
  153. package/dist/ui/state/DimensionsContext.d.ts +25 -0
  154. package/dist/ui/state/DimensionsContext.d.ts.map +1 -0
  155. package/dist/ui/state/DimensionsContext.js +68 -0
  156. package/dist/ui/state/DimensionsContext.js.map +1 -0
  157. package/dist/ui/state/reducer.d.ts +4 -0
  158. package/dist/ui/state/reducer.d.ts.map +1 -0
  159. package/dist/ui/state/reducer.js +412 -0
  160. package/dist/ui/state/reducer.js.map +1 -0
  161. package/dist/ui/state/types.d.ts +266 -0
  162. package/dist/ui/state/types.d.ts.map +1 -0
  163. package/dist/ui/state/types.js +2 -0
  164. package/dist/ui/state/types.js.map +1 -0
  165. package/dist/utils/fuzzy-search.d.ts +33 -0
  166. package/dist/utils/fuzzy-search.d.ts.map +1 -0
  167. package/dist/utils/fuzzy-search.js +102 -0
  168. package/dist/utils/fuzzy-search.js.map +1 -0
  169. package/dist/utils/string-utils.d.ts +24 -0
  170. package/dist/utils/string-utils.d.ts.map +1 -0
  171. package/dist/utils/string-utils.js +62 -0
  172. package/dist/utils/string-utils.js.map +1 -0
  173. package/package.json +19 -7
  174. package/dist/ui/app.d.ts +0 -38
  175. package/dist/ui/app.d.ts.map +0 -1
  176. package/dist/ui/app.js +0 -590
  177. package/dist/ui/app.js.map +0 -1
  178. package/dist/ui/screens/cli-tools.d.ts +0 -4
  179. package/dist/ui/screens/cli-tools.d.ts.map +0 -1
  180. package/dist/ui/screens/cli-tools.js +0 -369
  181. package/dist/ui/screens/cli-tools.js.map +0 -1
  182. package/dist/ui/screens/env-vars.d.ts +0 -3
  183. package/dist/ui/screens/env-vars.d.ts.map +0 -1
  184. package/dist/ui/screens/env-vars.js +0 -119
  185. package/dist/ui/screens/env-vars.js.map +0 -1
  186. package/dist/ui/screens/main-menu.d.ts +0 -3
  187. package/dist/ui/screens/main-menu.d.ts.map +0 -1
  188. package/dist/ui/screens/main-menu.js +0 -110
  189. package/dist/ui/screens/main-menu.js.map +0 -1
  190. package/dist/ui/screens/mcp-registry.d.ts +0 -10
  191. package/dist/ui/screens/mcp-registry.d.ts.map +0 -1
  192. package/dist/ui/screens/mcp-registry.js +0 -310
  193. package/dist/ui/screens/mcp-registry.js.map +0 -1
  194. package/dist/ui/screens/mcp-setup.d.ts +0 -4
  195. package/dist/ui/screens/mcp-setup.d.ts.map +0 -1
  196. package/dist/ui/screens/mcp-setup.js +0 -492
  197. package/dist/ui/screens/mcp-setup.js.map +0 -1
  198. package/dist/ui/screens/plugins.d.ts +0 -3
  199. package/dist/ui/screens/plugins.d.ts.map +0 -1
  200. package/dist/ui/screens/plugins.js +0 -443
  201. package/dist/ui/screens/plugins.js.map +0 -1
  202. package/dist/ui/screens/statusline.d.ts +0 -5
  203. package/dist/ui/screens/statusline.d.ts.map +0 -1
  204. package/dist/ui/screens/statusline.js +0 -235
  205. package/dist/ui/screens/statusline.js.map +0 -1
@@ -0,0 +1,143 @@
1
+ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
+ import { useMemo, useEffect } from 'react';
3
+ import { Box, Text, useInput } from 'ink';
4
+ import { useApp } from '../state/AppContext.js';
5
+ import { useDimensions } from '../state/DimensionsContext.js';
6
+ import { ScrollableList } from '../components/ScrollableList.js';
7
+ import { fuzzyFilter, highlightMatches } from '../../utils/fuzzy-search.js';
8
+ const RECENT_MODELS = [
9
+ { id: 'recent-1', type: 'model', label: 'MoonshotAI: Kimi K2 0905 (exacto)', provider: 'OpenRouter', modelId: 'moonshot/kimi-k2-0905', configured: true },
10
+ ];
11
+ const ANTHROPIC_MODELS = [
12
+ { id: 'claude-opus-4', type: 'model', label: 'Claude Opus 4', provider: 'Anthropic', modelId: 'anthropic/claude-opus-4', configured: true },
13
+ { id: 'claude-sonnet-4', type: 'model', label: 'Claude Sonnet 4', provider: 'Anthropic', modelId: 'anthropic/claude-sonnet-4', configured: true },
14
+ { id: 'claude-opus-4.1', type: 'model', label: 'Claude Opus 4.1', provider: 'Anthropic', modelId: 'anthropic/claude-opus-4.1', configured: true },
15
+ { id: 'claude-opus-4.5', type: 'model', label: 'Claude Opus 4.5', provider: 'Anthropic', modelId: 'anthropic/claude-opus-4.5', configured: true },
16
+ { id: 'claude-3.5-haiku', type: 'model', label: 'Claude 3.5 Haiku', provider: 'Anthropic', modelId: 'anthropic/claude-3.5-haiku', configured: true },
17
+ { id: 'claude-4.5-haiku', type: 'model', label: 'Claude 4.5 Haiku', provider: 'Anthropic', modelId: 'anthropic/claude-4.5-haiku', configured: true },
18
+ { id: 'claude-3.7-sonnet', type: 'model', label: 'Claude 3.7 Sonnet', provider: 'Anthropic', modelId: 'anthropic/claude-3.7-sonnet', configured: true },
19
+ { id: 'claude-sonnet-4.5', type: 'model', label: 'Claude Sonnet 4.5', provider: 'Anthropic', modelId: 'anthropic/claude-sonnet-4.5', configured: true },
20
+ { id: 'claude-3.5-sonnet-new', type: 'model', label: 'Claude 3.5 Sonnet (New)', provider: 'Anthropic', modelId: 'anthropic/claude-3-5-sonnet-new', configured: true },
21
+ { id: 'claude-3.5-sonnet-old', type: 'model', label: 'Claude 3.5 Sonnet (Old)', provider: 'Anthropic', modelId: 'anthropic/claude-3-5-sonnet-old', configured: true },
22
+ ];
23
+ const OPENAI_MODELS = [
24
+ { id: 'gpt-5-codex', type: 'model', label: 'GPT-5 Codex', provider: 'OpenAI', modelId: 'openai/gpt-5-codex', configured: true },
25
+ { id: 'gpt-5.1-codex', type: 'model', label: 'GPT-5.1 Codex', provider: 'OpenAI', modelId: 'openai/gpt-5.1-codex', configured: true },
26
+ { id: 'gpt-5.1-codex-max', type: 'model', label: 'GPT-5.1 Codex Max', provider: 'OpenAI', modelId: 'openai/gpt-5.1-codex-max', configured: true },
27
+ { id: 'gpt-5.1-codex-mini', type: 'model', label: 'GPT-5.1 Codex Mini', provider: 'OpenAI', modelId: 'openai/gpt-5.1-codex-mini', configured: true },
28
+ ];
29
+ const XAI_MODELS = [
30
+ { id: 'grok-code-fast', type: 'model', label: 'Grok Code Fast', provider: 'xAI', modelId: 'xai/grok-code-fast', configured: false }, // Configured check missing in reference image? No, line is very faint. Assuming not configured or just separator missing.
31
+ ];
32
+ export function ModelSelectorScreen() {
33
+ const { state, dispatch } = useApp();
34
+ const { modelSelector } = state;
35
+ const dimensions = useDimensions();
36
+ // Combine items into display list
37
+ const allItems = useMemo(() => {
38
+ return [
39
+ { id: 'header-recent', type: 'header', label: 'Recently used', provider: 'OpenRouter' }, // Provider column used for right text
40
+ ...RECENT_MODELS,
41
+ { id: 'header-anthropic', type: 'header', label: 'Anthropic', configured: true },
42
+ ...ANTHROPIC_MODELS,
43
+ { id: 'header-openai', type: 'header', label: 'OpenAI', configured: true },
44
+ ...OPENAI_MODELS,
45
+ { id: 'header-xai', type: 'header', label: 'xAI' },
46
+ ...XAI_MODELS,
47
+ ];
48
+ }, []);
49
+ // Filter items
50
+ const filteredItems = useMemo(() => {
51
+ if (!modelSelector.searchQuery)
52
+ return allItems;
53
+ // Filter only models
54
+ const models = allItems.filter(i => i.type === 'model');
55
+ const fuzzyResults = fuzzyFilter(models, modelSelector.searchQuery, item => item.label);
56
+ // If searching, just show matched models without headers to keep it clean, or keep hierarchy?
57
+ // "Switch Model" TUI usually flattens on search.
58
+ return fuzzyResults.map(r => ({ ...r.item, _matches: r.matches }));
59
+ }, [allItems, modelSelector.searchQuery]);
60
+ // Ensure selection is valid (not a header) on mount or search change
61
+ useEffect(() => {
62
+ // If current selection is a header or out of bounds, find first model
63
+ const current = filteredItems[modelSelector.selectedIndex];
64
+ if (!current || current.type === 'header') {
65
+ const firstModelIndex = filteredItems.findIndex(i => i.type === 'model');
66
+ if (firstModelIndex !== -1 && firstModelIndex !== modelSelector.selectedIndex) {
67
+ dispatch({ type: 'MODEL_SELECTOR_SELECT', index: firstModelIndex });
68
+ }
69
+ }
70
+ }, [filteredItems, modelSelector.selectedIndex, dispatch]);
71
+ // Handle keyboard
72
+ useInput((input, key) => {
73
+ // Search input handling
74
+ if (key.backspace || key.delete) {
75
+ dispatch({ type: 'MODEL_SELECTOR_SET_SEARCH', query: modelSelector.searchQuery.slice(0, -1) });
76
+ return;
77
+ }
78
+ if (input && !key.ctrl && !key.meta && !key.upArrow && !key.downArrow && !key.leftArrow && !key.rightArrow && !key.return && !key.tab && !key.escape) {
79
+ dispatch({ type: 'MODEL_SELECTOR_SET_SEARCH', query: modelSelector.searchQuery + input });
80
+ return;
81
+ }
82
+ // Toggle Task Size
83
+ if (key.tab) {
84
+ const newSize = modelSelector.taskSize === 'large' ? 'small' : 'large';
85
+ dispatch({ type: 'MODEL_SELECTOR_SET_TASK_SIZE', size: newSize });
86
+ return;
87
+ }
88
+ // Navigation
89
+ if (key.upArrow || (key.ctrl && input === 'p')) { // Standard navigation
90
+ let newIndex = modelSelector.selectedIndex - 1;
91
+ // Skip headers while moving up
92
+ while (newIndex >= 0 && filteredItems[newIndex]?.type === 'header') {
93
+ newIndex--;
94
+ }
95
+ if (newIndex >= 0) {
96
+ dispatch({ type: 'MODEL_SELECTOR_SELECT', index: newIndex });
97
+ }
98
+ }
99
+ else if (key.downArrow || (key.ctrl && input === 'n')) {
100
+ let newIndex = modelSelector.selectedIndex + 1;
101
+ // Skip headers while moving down
102
+ while (newIndex < filteredItems.length && filteredItems[newIndex]?.type === 'header') {
103
+ newIndex++;
104
+ }
105
+ if (newIndex < filteredItems.length) {
106
+ dispatch({ type: 'MODEL_SELECTOR_SELECT', index: newIndex });
107
+ }
108
+ }
109
+ else if (key.return) {
110
+ // Just log selection for now or exit
111
+ // dispatch({ type: 'NAVIGATE', route: { screen: 'plugins' } });
112
+ }
113
+ });
114
+ // Render list item
115
+ const renderItem = (item, _index, isSelected) => {
116
+ if (item.type === 'header') {
117
+ // Header style: "Name ----------------------------- Status"
118
+ const status = item.configured ? '✔ Configured' : '';
119
+ return (_jsxs(Box, { marginY: 0, children: [_jsxs(Text, { color: "gray", children: [item.label, " "] }), _jsx(Text, { color: "gray", dimColor: true, children: "\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF\u23AF" }), status && _jsxs(Text, { color: "green", children: [" ", status] }), item.provider && _jsxs(Text, { color: "blue", children: [" ", item.provider] })] }));
120
+ }
121
+ // Model item
122
+ // Matches highlighting
123
+ const matches = item._matches;
124
+ const labelSegment = matches ? highlightMatches(item.label, matches) : null;
125
+ const Label = () => (_jsx(Text, { color: isSelected ? 'white' : 'white', children: labelSegment ? labelSegment.map((seg, i) => (_jsx(Text, { color: seg.highlighted ? (isSelected ? 'white' : 'cyan') : (isSelected ? 'white' : 'white'), underline: seg.highlighted, bold: seg.highlighted, children: seg.text }, i))) : item.label }));
126
+ if (isSelected) {
127
+ return (_jsxs(Box, { overflow: "hidden", children: [_jsx(Text, { backgroundColor: "magenta", color: "white", children: " " }), _jsx(Text, { backgroundColor: "magenta", color: "white", children: _jsx(Label, {}) }), _jsx(Box, { flexGrow: 1, children: _jsx(Text, { backgroundColor: "magenta", children: " " }) }), item.provider && _jsxs(Text, { backgroundColor: "magenta", color: "white", children: [item.provider, " "] })] }));
128
+ }
129
+ else {
130
+ return (_jsxs(Box, { overflow: "hidden", children: [_jsx(Label, {}), _jsx(Box, { flexGrow: 1 }), item.provider && _jsx(Text, { color: "gray", children: item.provider })] }));
131
+ }
132
+ };
133
+ const footerHints = '↑↓ choose • tab toggle type • enter choose • esc exit';
134
+ // Available height calculation
135
+ // Header: 1 line (title) + 1 line (search) + 1 line (separator) = 3 lines?
136
+ // Title line: Switch Model /// (o) Large
137
+ // Cursor line: > c
138
+ // Separator: handled by list? or explicit?
139
+ const listHeight = Math.max(5, dimensions.contentHeight - 5);
140
+ return (_jsxs(Box, { flexDirection: "column", height: dimensions.contentHeight, children: [_jsx(Box, { flexDirection: "row", borderStyle: "single", borderColor: "#7e57c2", paddingX: 1, marginBottom: 0, children: _jsxs(Box, { flexDirection: "column", flexGrow: 1, children: [_jsx(Box, { flexDirection: "row", justifyContent: "space-between", children: _jsxs(Box, { children: [_jsx(Text, { color: "#7e57c2", children: "Switch Model " }), _jsxs(Text, { color: modelSelector.taskSize === 'large' ? 'white' : 'gray', children: [modelSelector.taskSize === 'large' ? '◎' : '○', " Large Task", ' '] }), _jsxs(Text, { color: modelSelector.taskSize === 'small' ? 'white' : 'gray', children: [modelSelector.taskSize === 'small' ? '◎' : '○', " Small Task"] })] }) }), _jsxs(Box, { flexDirection: "row", marginTop: 1, children: [_jsx(Text, { color: "green", children: '> ' }), _jsx(Text, { children: modelSelector.searchQuery }), _jsx(Text, { inverse: true, color: "gray", children: " " })] })] }) }), _jsx(Box, { flexGrow: 1, paddingX: 1, children: _jsx(ScrollableList, { items: filteredItems, selectedIndex: modelSelector.selectedIndex, renderItem: renderItem, maxHeight: listHeight, showScrollIndicators: false }) }), _jsx(Box, { height: 1, borderStyle: "single", borderTop: false, borderLeft: false, borderRight: false, borderBottom: false, marginTop: 0, children: _jsx(Text, { dimColor: true, children: footerHints }) })] }));
141
+ }
142
+ export default ModelSelectorScreen;
143
+ //# sourceMappingURL=ModelSelectorScreen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModelSelectorScreen.js","sourceRoot":"","sources":["../../../src/ui/screens/ModelSelectorScreen.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ export declare function PluginsScreen(): React.ReactElement;
3
+ export default PluginsScreen;
4
+ //# sourceMappingURL=PluginsScreen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PluginsScreen.d.ts","sourceRoot":"","sources":["../../../src/ui/screens/PluginsScreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAkD/D,wBAAgB,aAAa,IAAI,KAAK,CAAC,YAAY,CA+5BlD;AAED,eAAe,aAAa,CAAC"}