claudeup 1.8.0 → 3.3.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 (301) hide show
  1. package/bin/claudeup.js +20 -2
  2. package/package.json +10 -19
  3. package/src/data/cli-tools.js +123 -0
  4. package/src/data/cli-tools.ts +140 -0
  5. package/{dist → src}/data/marketplaces.js +23 -24
  6. package/src/data/marketplaces.ts +95 -0
  7. package/src/data/mcp-servers.js +509 -0
  8. package/src/data/mcp-servers.ts +526 -0
  9. package/src/data/statuslines.js +159 -0
  10. package/src/data/statuslines.ts +188 -0
  11. package/src/index.js +4 -0
  12. package/src/index.ts +5 -0
  13. package/{dist → src}/main.js +46 -47
  14. package/src/main.tsx +145 -0
  15. package/src/opentui.d.ts +191 -0
  16. package/{dist → src}/prerunner/index.js +31 -41
  17. package/src/prerunner/index.ts +124 -0
  18. package/{dist → src}/services/claude-runner.js +9 -10
  19. package/src/services/claude-runner.ts +31 -0
  20. package/{dist → src}/services/claude-settings.js +72 -33
  21. package/src/services/claude-settings.ts +934 -0
  22. package/src/services/local-marketplace.js +339 -0
  23. package/src/services/local-marketplace.ts +489 -0
  24. package/{dist → src}/services/mcp-registry.js +13 -14
  25. package/src/services/mcp-registry.ts +105 -0
  26. package/{dist → src}/services/plugin-manager.js +61 -13
  27. package/src/services/plugin-manager.ts +693 -0
  28. package/{dist → src}/services/plugin-mcp-config.js +19 -18
  29. package/src/services/plugin-mcp-config.ts +242 -0
  30. package/{dist → src}/services/update-cache.js +0 -1
  31. package/src/services/update-cache.ts +78 -0
  32. package/{dist → src}/services/version-check.js +15 -14
  33. package/src/services/version-check.ts +122 -0
  34. package/src/types/index.js +1 -0
  35. package/src/types/index.ts +141 -0
  36. package/src/ui/App.js +213 -0
  37. package/src/ui/App.tsx +359 -0
  38. package/src/ui/components/CategoryHeader.js +9 -0
  39. package/src/ui/components/CategoryHeader.tsx +41 -0
  40. package/{dist → src}/ui/components/ScrollableList.js +19 -6
  41. package/src/ui/components/ScrollableList.tsx +98 -0
  42. package/src/ui/components/SearchInput.js +19 -0
  43. package/src/ui/components/SearchInput.tsx +56 -0
  44. package/src/ui/components/StyledText.js +39 -0
  45. package/src/ui/components/StyledText.tsx +70 -0
  46. package/src/ui/components/TabBar.js +38 -0
  47. package/src/ui/components/TabBar.tsx +88 -0
  48. package/src/ui/components/layout/Panel.js +6 -0
  49. package/src/ui/components/layout/Panel.tsx +62 -0
  50. package/src/ui/components/layout/ProgressBar.js +14 -0
  51. package/src/ui/components/layout/ProgressBar.tsx +47 -0
  52. package/src/ui/components/layout/ScopeTabs.js +6 -0
  53. package/src/ui/components/layout/ScopeTabs.tsx +53 -0
  54. package/src/ui/components/layout/ScreenLayout.js +21 -0
  55. package/src/ui/components/layout/ScreenLayout.tsx +147 -0
  56. package/src/ui/components/layout/index.js +4 -0
  57. package/src/ui/components/layout/index.ts +4 -0
  58. package/src/ui/components/modals/ConfirmModal.js +14 -0
  59. package/src/ui/components/modals/ConfirmModal.tsx +59 -0
  60. package/src/ui/components/modals/InputModal.js +16 -0
  61. package/src/ui/components/modals/InputModal.tsx +68 -0
  62. package/src/ui/components/modals/LoadingModal.js +14 -0
  63. package/src/ui/components/modals/LoadingModal.tsx +40 -0
  64. package/src/ui/components/modals/MessageModal.js +16 -0
  65. package/src/ui/components/modals/MessageModal.tsx +64 -0
  66. package/src/ui/components/modals/ModalContainer.js +56 -0
  67. package/src/ui/components/modals/ModalContainer.tsx +104 -0
  68. package/src/ui/components/modals/SelectModal.js +26 -0
  69. package/src/ui/components/modals/SelectModal.tsx +82 -0
  70. package/src/ui/components/modals/index.js +6 -0
  71. package/src/ui/components/modals/index.ts +6 -0
  72. package/src/ui/hooks/index.js +3 -0
  73. package/src/ui/hooks/index.ts +3 -0
  74. package/{dist → src}/ui/hooks/useAsyncData.js +21 -22
  75. package/src/ui/hooks/useAsyncData.ts +127 -0
  76. package/src/ui/hooks/useKeyboard.js +13 -0
  77. package/src/ui/hooks/useKeyboard.ts +26 -0
  78. package/src/ui/hooks/useKeyboardHandler.js +39 -0
  79. package/src/ui/hooks/useKeyboardHandler.ts +63 -0
  80. package/{dist → src}/ui/screens/CliToolsScreen.js +60 -54
  81. package/src/ui/screens/CliToolsScreen.tsx +468 -0
  82. package/src/ui/screens/EnvVarsScreen.js +154 -0
  83. package/src/ui/screens/EnvVarsScreen.tsx +269 -0
  84. package/{dist → src}/ui/screens/McpRegistryScreen.js +56 -55
  85. package/src/ui/screens/McpRegistryScreen.tsx +331 -0
  86. package/{dist → src}/ui/screens/McpScreen.js +46 -47
  87. package/src/ui/screens/McpScreen.tsx +392 -0
  88. package/src/ui/screens/ModelSelectorScreen.js +292 -0
  89. package/src/ui/screens/ModelSelectorScreen.tsx +441 -0
  90. package/{dist → src}/ui/screens/PluginsScreen.js +305 -293
  91. package/src/ui/screens/PluginsScreen.tsx +1231 -0
  92. package/src/ui/screens/StatusLineScreen.js +200 -0
  93. package/src/ui/screens/StatusLineScreen.tsx +411 -0
  94. package/src/ui/screens/index.js +7 -0
  95. package/src/ui/screens/index.ts +7 -0
  96. package/src/ui/state/AnimationContext.js +34 -0
  97. package/src/ui/state/AnimationContext.tsx +76 -0
  98. package/{dist → src}/ui/state/AppContext.js +31 -32
  99. package/src/ui/state/AppContext.tsx +235 -0
  100. package/{dist → src}/ui/state/DimensionsContext.js +16 -17
  101. package/src/ui/state/DimensionsContext.tsx +144 -0
  102. package/{dist → src}/ui/state/reducer.js +89 -90
  103. package/src/ui/state/reducer.ts +467 -0
  104. package/src/ui/state/types.js +1 -0
  105. package/src/ui/state/types.ts +273 -0
  106. package/{dist → src}/utils/command-utils.js +3 -4
  107. package/src/utils/command-utils.ts +20 -0
  108. package/{dist → src}/utils/fuzzy-search.js +2 -3
  109. package/src/utils/fuzzy-search.ts +138 -0
  110. package/{dist → src}/utils/string-utils.js +6 -6
  111. package/src/utils/string-utils.ts +88 -0
  112. package/dist/data/cli-tools.d.ts +0 -13
  113. package/dist/data/cli-tools.d.ts.map +0 -1
  114. package/dist/data/cli-tools.js +0 -124
  115. package/dist/data/cli-tools.js.map +0 -1
  116. package/dist/data/marketplaces.d.ts +0 -6
  117. package/dist/data/marketplaces.d.ts.map +0 -1
  118. package/dist/data/marketplaces.js.map +0 -1
  119. package/dist/data/mcp-servers.d.ts +0 -8
  120. package/dist/data/mcp-servers.d.ts.map +0 -1
  121. package/dist/data/mcp-servers.js +0 -503
  122. package/dist/data/mcp-servers.js.map +0 -1
  123. package/dist/data/statuslines.d.ts +0 -10
  124. package/dist/data/statuslines.d.ts.map +0 -1
  125. package/dist/data/statuslines.js +0 -160
  126. package/dist/data/statuslines.js.map +0 -1
  127. package/dist/index.d.ts +0 -3
  128. package/dist/index.d.ts.map +0 -1
  129. package/dist/index.js +0 -90
  130. package/dist/index.js.map +0 -1
  131. package/dist/main.d.ts +0 -3
  132. package/dist/main.d.ts.map +0 -1
  133. package/dist/main.js.map +0 -1
  134. package/dist/prerunner/index.d.ts +0 -7
  135. package/dist/prerunner/index.d.ts.map +0 -1
  136. package/dist/prerunner/index.js.map +0 -1
  137. package/dist/services/claude-runner.d.ts +0 -7
  138. package/dist/services/claude-runner.d.ts.map +0 -1
  139. package/dist/services/claude-runner.js.map +0 -1
  140. package/dist/services/claude-settings.d.ts +0 -73
  141. package/dist/services/claude-settings.d.ts.map +0 -1
  142. package/dist/services/claude-settings.js.map +0 -1
  143. package/dist/services/local-marketplace.d.ts +0 -111
  144. package/dist/services/local-marketplace.d.ts.map +0 -1
  145. package/dist/services/local-marketplace.js +0 -599
  146. package/dist/services/local-marketplace.js.map +0 -1
  147. package/dist/services/mcp-registry.d.ts +0 -10
  148. package/dist/services/mcp-registry.d.ts.map +0 -1
  149. package/dist/services/mcp-registry.js.map +0 -1
  150. package/dist/services/plugin-manager.d.ts +0 -65
  151. package/dist/services/plugin-manager.d.ts.map +0 -1
  152. package/dist/services/plugin-manager.js.map +0 -1
  153. package/dist/services/plugin-mcp-config.d.ts +0 -52
  154. package/dist/services/plugin-mcp-config.d.ts.map +0 -1
  155. package/dist/services/plugin-mcp-config.js.map +0 -1
  156. package/dist/services/update-cache.d.ts +0 -21
  157. package/dist/services/update-cache.d.ts.map +0 -1
  158. package/dist/services/update-cache.js.map +0 -1
  159. package/dist/services/version-check.d.ts +0 -20
  160. package/dist/services/version-check.d.ts.map +0 -1
  161. package/dist/services/version-check.js.map +0 -1
  162. package/dist/types/index.d.ts +0 -105
  163. package/dist/types/index.d.ts.map +0 -1
  164. package/dist/types/index.js +0 -2
  165. package/dist/types/index.js.map +0 -1
  166. package/dist/ui/InkApp.d.ts +0 -5
  167. package/dist/ui/InkApp.d.ts.map +0 -1
  168. package/dist/ui/InkApp.js +0 -188
  169. package/dist/ui/InkApp.js.map +0 -1
  170. package/dist/ui/components/CategoryHeader.d.ts +0 -16
  171. package/dist/ui/components/CategoryHeader.d.ts.map +0 -1
  172. package/dist/ui/components/CategoryHeader.js +0 -11
  173. package/dist/ui/components/CategoryHeader.js.map +0 -1
  174. package/dist/ui/components/ScrollableList.d.ts +0 -16
  175. package/dist/ui/components/ScrollableList.d.ts.map +0 -1
  176. package/dist/ui/components/ScrollableList.js.map +0 -1
  177. package/dist/ui/components/SearchInput.d.ts +0 -18
  178. package/dist/ui/components/SearchInput.d.ts.map +0 -1
  179. package/dist/ui/components/SearchInput.js +0 -30
  180. package/dist/ui/components/SearchInput.js.map +0 -1
  181. package/dist/ui/components/TabBar.d.ts +0 -8
  182. package/dist/ui/components/TabBar.d.ts.map +0 -1
  183. package/dist/ui/components/TabBar.js +0 -18
  184. package/dist/ui/components/TabBar.js.map +0 -1
  185. package/dist/ui/components/layout/Footer.d.ts +0 -14
  186. package/dist/ui/components/layout/Footer.d.ts.map +0 -1
  187. package/dist/ui/components/layout/Footer.js +0 -23
  188. package/dist/ui/components/layout/Footer.js.map +0 -1
  189. package/dist/ui/components/layout/Header.d.ts +0 -4
  190. package/dist/ui/components/layout/Header.d.ts.map +0 -1
  191. package/dist/ui/components/layout/Header.js +0 -25
  192. package/dist/ui/components/layout/Header.js.map +0 -1
  193. package/dist/ui/components/layout/Panel.d.ts +0 -22
  194. package/dist/ui/components/layout/Panel.d.ts.map +0 -1
  195. package/dist/ui/components/layout/Panel.js +0 -8
  196. package/dist/ui/components/layout/Panel.js.map +0 -1
  197. package/dist/ui/components/layout/ProgressBar.d.ts +0 -12
  198. package/dist/ui/components/layout/ProgressBar.d.ts.map +0 -1
  199. package/dist/ui/components/layout/ProgressBar.js +0 -16
  200. package/dist/ui/components/layout/ProgressBar.js.map +0 -1
  201. package/dist/ui/components/layout/ScopeTabs.d.ts +0 -12
  202. package/dist/ui/components/layout/ScopeTabs.d.ts.map +0 -1
  203. package/dist/ui/components/layout/ScopeTabs.js +0 -8
  204. package/dist/ui/components/layout/ScopeTabs.js.map +0 -1
  205. package/dist/ui/components/layout/ScreenLayout.d.ts +0 -30
  206. package/dist/ui/components/layout/ScreenLayout.d.ts.map +0 -1
  207. package/dist/ui/components/layout/ScreenLayout.js +0 -23
  208. package/dist/ui/components/layout/ScreenLayout.js.map +0 -1
  209. package/dist/ui/components/layout/index.d.ts +0 -7
  210. package/dist/ui/components/layout/index.d.ts.map +0 -1
  211. package/dist/ui/components/layout/index.js +0 -7
  212. package/dist/ui/components/layout/index.js.map +0 -1
  213. package/dist/ui/components/modals/ConfirmModal.d.ts +0 -14
  214. package/dist/ui/components/modals/ConfirmModal.d.ts.map +0 -1
  215. package/dist/ui/components/modals/ConfirmModal.js +0 -15
  216. package/dist/ui/components/modals/ConfirmModal.js.map +0 -1
  217. package/dist/ui/components/modals/InputModal.d.ts +0 -16
  218. package/dist/ui/components/modals/InputModal.d.ts.map +0 -1
  219. package/dist/ui/components/modals/InputModal.js +0 -23
  220. package/dist/ui/components/modals/InputModal.js.map +0 -1
  221. package/dist/ui/components/modals/LoadingModal.d.ts +0 -8
  222. package/dist/ui/components/modals/LoadingModal.d.ts.map +0 -1
  223. package/dist/ui/components/modals/LoadingModal.js +0 -8
  224. package/dist/ui/components/modals/LoadingModal.js.map +0 -1
  225. package/dist/ui/components/modals/MessageModal.d.ts +0 -14
  226. package/dist/ui/components/modals/MessageModal.d.ts.map +0 -1
  227. package/dist/ui/components/modals/MessageModal.js +0 -17
  228. package/dist/ui/components/modals/MessageModal.js.map +0 -1
  229. package/dist/ui/components/modals/ModalContainer.d.ts +0 -7
  230. package/dist/ui/components/modals/ModalContainer.d.ts.map +0 -1
  231. package/dist/ui/components/modals/ModalContainer.js +0 -38
  232. package/dist/ui/components/modals/ModalContainer.js.map +0 -1
  233. package/dist/ui/components/modals/SelectModal.d.ts +0 -17
  234. package/dist/ui/components/modals/SelectModal.d.ts.map +0 -1
  235. package/dist/ui/components/modals/SelectModal.js +0 -33
  236. package/dist/ui/components/modals/SelectModal.js.map +0 -1
  237. package/dist/ui/components/modals/index.d.ts +0 -7
  238. package/dist/ui/components/modals/index.d.ts.map +0 -1
  239. package/dist/ui/components/modals/index.js +0 -7
  240. package/dist/ui/components/modals/index.js.map +0 -1
  241. package/dist/ui/hooks/index.d.ts +0 -3
  242. package/dist/ui/hooks/index.d.ts.map +0 -1
  243. package/dist/ui/hooks/index.js +0 -3
  244. package/dist/ui/hooks/index.js.map +0 -1
  245. package/dist/ui/hooks/useAsyncData.d.ts +0 -40
  246. package/dist/ui/hooks/useAsyncData.d.ts.map +0 -1
  247. package/dist/ui/hooks/useAsyncData.js.map +0 -1
  248. package/dist/ui/hooks/useKeyboardNavigation.d.ts +0 -27
  249. package/dist/ui/hooks/useKeyboardNavigation.d.ts.map +0 -1
  250. package/dist/ui/hooks/useKeyboardNavigation.js +0 -82
  251. package/dist/ui/hooks/useKeyboardNavigation.js.map +0 -1
  252. package/dist/ui/screens/CliToolsScreen.d.ts +0 -4
  253. package/dist/ui/screens/CliToolsScreen.d.ts.map +0 -1
  254. package/dist/ui/screens/CliToolsScreen.js.map +0 -1
  255. package/dist/ui/screens/EnvVarsScreen.d.ts +0 -4
  256. package/dist/ui/screens/EnvVarsScreen.d.ts.map +0 -1
  257. package/dist/ui/screens/EnvVarsScreen.js +0 -145
  258. package/dist/ui/screens/EnvVarsScreen.js.map +0 -1
  259. package/dist/ui/screens/McpRegistryScreen.d.ts +0 -4
  260. package/dist/ui/screens/McpRegistryScreen.d.ts.map +0 -1
  261. package/dist/ui/screens/McpRegistryScreen.js.map +0 -1
  262. package/dist/ui/screens/McpScreen.d.ts +0 -4
  263. package/dist/ui/screens/McpScreen.d.ts.map +0 -1
  264. package/dist/ui/screens/McpScreen.js.map +0 -1
  265. package/dist/ui/screens/ModelSelectorScreen.d.ts +0 -4
  266. package/dist/ui/screens/ModelSelectorScreen.d.ts.map +0 -1
  267. package/dist/ui/screens/ModelSelectorScreen.js +0 -143
  268. package/dist/ui/screens/ModelSelectorScreen.js.map +0 -1
  269. package/dist/ui/screens/PluginsScreen.d.ts +0 -4
  270. package/dist/ui/screens/PluginsScreen.d.ts.map +0 -1
  271. package/dist/ui/screens/PluginsScreen.js.map +0 -1
  272. package/dist/ui/screens/StatusLineScreen.d.ts +0 -4
  273. package/dist/ui/screens/StatusLineScreen.d.ts.map +0 -1
  274. package/dist/ui/screens/StatusLineScreen.js +0 -197
  275. package/dist/ui/screens/StatusLineScreen.js.map +0 -1
  276. package/dist/ui/screens/index.d.ts +0 -8
  277. package/dist/ui/screens/index.d.ts.map +0 -1
  278. package/dist/ui/screens/index.js +0 -8
  279. package/dist/ui/screens/index.js.map +0 -1
  280. package/dist/ui/state/AppContext.d.ts +0 -40
  281. package/dist/ui/state/AppContext.d.ts.map +0 -1
  282. package/dist/ui/state/AppContext.js.map +0 -1
  283. package/dist/ui/state/DimensionsContext.d.ts +0 -27
  284. package/dist/ui/state/DimensionsContext.d.ts.map +0 -1
  285. package/dist/ui/state/DimensionsContext.js.map +0 -1
  286. package/dist/ui/state/reducer.d.ts +0 -4
  287. package/dist/ui/state/reducer.d.ts.map +0 -1
  288. package/dist/ui/state/reducer.js.map +0 -1
  289. package/dist/ui/state/types.d.ts +0 -266
  290. package/dist/ui/state/types.d.ts.map +0 -1
  291. package/dist/ui/state/types.js +0 -2
  292. package/dist/ui/state/types.js.map +0 -1
  293. package/dist/utils/command-utils.d.ts +0 -8
  294. package/dist/utils/command-utils.d.ts.map +0 -1
  295. package/dist/utils/command-utils.js.map +0 -1
  296. package/dist/utils/fuzzy-search.d.ts +0 -33
  297. package/dist/utils/fuzzy-search.d.ts.map +0 -1
  298. package/dist/utils/fuzzy-search.js.map +0 -1
  299. package/dist/utils/string-utils.d.ts +0 -24
  300. package/dist/utils/string-utils.d.ts.map +0 -1
  301. package/dist/utils/string-utils.js.map +0 -1
@@ -1,6 +1,6 @@
1
1
  export const initialState = {
2
2
  // Navigation - start on plugins screen
3
- currentRoute: { screen: 'plugins' },
3
+ currentRoute: { screen: "plugins" },
4
4
  // Project context
5
5
  projectPath: process.cwd(),
6
6
  // Global UI state
@@ -11,41 +11,41 @@ export const initialState = {
11
11
  dataRefreshVersion: 0,
12
12
  // Screen-specific state
13
13
  plugins: {
14
- scope: 'project',
14
+ scope: "project",
15
15
  collapsedMarketplaces: new Set(),
16
16
  selectedIndex: 0,
17
- searchQuery: '',
18
- marketplaces: { status: 'idle' },
19
- plugins: { status: 'idle' },
17
+ searchQuery: "",
18
+ marketplaces: { status: "idle" },
19
+ plugins: { status: "idle" },
20
20
  },
21
21
  mcp: {
22
22
  selectedIndex: 0,
23
- servers: { status: 'idle' },
23
+ servers: { status: "idle" },
24
24
  installedServers: {},
25
25
  },
26
26
  mcpRegistry: {
27
- searchQuery: '',
27
+ searchQuery: "",
28
28
  selectedIndex: 0,
29
- servers: { status: 'idle' },
29
+ servers: { status: "idle" },
30
30
  },
31
31
  statusline: {
32
- scope: 'project',
32
+ scope: "project",
33
33
  selectedIndex: 0,
34
- presets: { status: 'idle' },
34
+ presets: { status: "idle" },
35
35
  currentPreset: null,
36
36
  },
37
37
  envVars: {
38
38
  selectedIndex: 0,
39
- variables: { status: 'idle' },
39
+ variables: { status: "idle" },
40
40
  },
41
41
  cliTools: {
42
42
  selectedIndex: 0,
43
- tools: { status: 'idle' },
43
+ tools: { status: "idle" },
44
44
  },
45
45
  modelSelector: {
46
46
  selectedIndex: 0,
47
- searchQuery: '',
48
- taskSize: 'large',
47
+ searchQuery: "",
48
+ taskSize: "large",
49
49
  },
50
50
  };
51
51
  export function appReducer(state, action) {
@@ -53,28 +53,28 @@ export function appReducer(state, action) {
53
53
  // =========================================================================
54
54
  // Navigation
55
55
  // =========================================================================
56
- case 'NAVIGATE':
56
+ case "NAVIGATE":
57
57
  return { ...state, currentRoute: action.route };
58
58
  // =========================================================================
59
59
  // Plugins Screen
60
60
  // =========================================================================
61
- case 'PLUGINS_SET_SCOPE':
61
+ case "PLUGINS_SET_SCOPE":
62
62
  return {
63
63
  ...state,
64
64
  plugins: {
65
65
  ...state.plugins,
66
66
  scope: action.scope,
67
67
  selectedIndex: 0, // Reset selection when scope changes
68
- marketplaces: { status: 'loading' },
69
- plugins: { status: 'loading' },
68
+ marketplaces: { status: "loading" },
69
+ plugins: { status: "loading" },
70
70
  },
71
71
  };
72
- case 'PLUGINS_TOGGLE_SCOPE':
72
+ case "PLUGINS_TOGGLE_SCOPE":
73
73
  return appReducer(state, {
74
- type: 'PLUGINS_SET_SCOPE',
75
- scope: state.plugins.scope === 'project' ? 'global' : 'project',
74
+ type: "PLUGINS_SET_SCOPE",
75
+ scope: state.plugins.scope === "project" ? "global" : "project",
76
76
  });
77
- case 'PLUGINS_TOGGLE_MARKETPLACE': {
77
+ case "PLUGINS_TOGGLE_MARKETPLACE": {
78
78
  const collapsed = new Set(state.plugins.collapsedMarketplaces);
79
79
  if (collapsed.has(action.name)) {
80
80
  collapsed.delete(action.name);
@@ -90,7 +90,7 @@ export function appReducer(state, action) {
90
90
  },
91
91
  };
92
92
  }
93
- case 'PLUGINS_SELECT':
93
+ case "PLUGINS_SELECT":
94
94
  return {
95
95
  ...state,
96
96
  plugins: {
@@ -98,7 +98,7 @@ export function appReducer(state, action) {
98
98
  selectedIndex: action.index,
99
99
  },
100
100
  };
101
- case 'PLUGINS_SET_SEARCH':
101
+ case "PLUGINS_SET_SEARCH":
102
102
  return {
103
103
  ...state,
104
104
  plugins: {
@@ -107,37 +107,37 @@ export function appReducer(state, action) {
107
107
  selectedIndex: 0, // Reset selection when search changes
108
108
  },
109
109
  };
110
- case 'PLUGINS_DATA_LOADING':
110
+ case "PLUGINS_DATA_LOADING":
111
111
  return {
112
112
  ...state,
113
113
  plugins: {
114
114
  ...state.plugins,
115
- marketplaces: { status: 'loading' },
116
- plugins: { status: 'loading' },
115
+ marketplaces: { status: "loading" },
116
+ plugins: { status: "loading" },
117
117
  },
118
118
  };
119
- case 'PLUGINS_DATA_SUCCESS':
119
+ case "PLUGINS_DATA_SUCCESS":
120
120
  return {
121
121
  ...state,
122
122
  plugins: {
123
123
  ...state.plugins,
124
- marketplaces: { status: 'success', data: action.marketplaces },
125
- plugins: { status: 'success', data: action.plugins },
124
+ marketplaces: { status: "success", data: action.marketplaces },
125
+ plugins: { status: "success", data: action.plugins },
126
126
  },
127
127
  };
128
- case 'PLUGINS_DATA_ERROR':
128
+ case "PLUGINS_DATA_ERROR":
129
129
  return {
130
130
  ...state,
131
131
  plugins: {
132
132
  ...state.plugins,
133
- marketplaces: { status: 'error', error: action.error },
134
- plugins: { status: 'error', error: action.error },
133
+ marketplaces: { status: "error", error: action.error },
134
+ plugins: { status: "error", error: action.error },
135
135
  },
136
136
  };
137
137
  // =========================================================================
138
138
  // MCP Screen
139
139
  // =========================================================================
140
- case 'MCP_SELECT':
140
+ case "MCP_SELECT":
141
141
  return {
142
142
  ...state,
143
143
  mcp: {
@@ -145,36 +145,36 @@ export function appReducer(state, action) {
145
145
  selectedIndex: action.index,
146
146
  },
147
147
  };
148
- case 'MCP_DATA_LOADING':
148
+ case "MCP_DATA_LOADING":
149
149
  return {
150
150
  ...state,
151
151
  mcp: {
152
152
  ...state.mcp,
153
- servers: { status: 'loading' },
153
+ servers: { status: "loading" },
154
154
  },
155
155
  };
156
- case 'MCP_DATA_SUCCESS':
156
+ case "MCP_DATA_SUCCESS":
157
157
  return {
158
158
  ...state,
159
159
  mcp: {
160
160
  ...state.mcp,
161
- servers: { status: 'success', data: action.servers },
161
+ servers: { status: "success", data: action.servers },
162
162
  installedServers: action.installedServers,
163
163
  },
164
164
  };
165
- case 'MCP_DATA_ERROR':
165
+ case "MCP_DATA_ERROR":
166
166
  return {
167
167
  ...state,
168
168
  mcp: {
169
169
  ...state.mcp,
170
- servers: { status: 'error', error: action.error },
170
+ servers: { status: "error", error: action.error },
171
171
  },
172
172
  };
173
173
  // =========================================================================
174
174
  // MCP Registry Screen
175
175
  // =========================================================================
176
- case 'MCP_REGISTRY_SET_QUERY':
177
- case 'MCPREGISTRY_SEARCH':
176
+ case "MCP_REGISTRY_SET_QUERY":
177
+ case "MCPREGISTRY_SEARCH":
178
178
  return {
179
179
  ...state,
180
180
  mcpRegistry: {
@@ -183,8 +183,8 @@ export function appReducer(state, action) {
183
183
  selectedIndex: 0,
184
184
  },
185
185
  };
186
- case 'MCP_REGISTRY_SELECT':
187
- case 'MCPREGISTRY_SELECT':
186
+ case "MCP_REGISTRY_SELECT":
187
+ case "MCPREGISTRY_SELECT":
188
188
  return {
189
189
  ...state,
190
190
  mcpRegistry: {
@@ -192,49 +192,49 @@ export function appReducer(state, action) {
192
192
  selectedIndex: action.index,
193
193
  },
194
194
  };
195
- case 'MCP_REGISTRY_DATA_LOADING':
195
+ case "MCP_REGISTRY_DATA_LOADING":
196
196
  return {
197
197
  ...state,
198
198
  mcpRegistry: {
199
199
  ...state.mcpRegistry,
200
- servers: { status: 'loading' },
200
+ servers: { status: "loading" },
201
201
  },
202
202
  };
203
- case 'MCP_REGISTRY_DATA_SUCCESS':
203
+ case "MCP_REGISTRY_DATA_SUCCESS":
204
204
  return {
205
205
  ...state,
206
206
  mcpRegistry: {
207
207
  ...state.mcpRegistry,
208
- servers: { status: 'success', data: action.servers },
208
+ servers: { status: "success", data: action.servers },
209
209
  },
210
210
  };
211
- case 'MCP_REGISTRY_DATA_ERROR':
211
+ case "MCP_REGISTRY_DATA_ERROR":
212
212
  return {
213
213
  ...state,
214
214
  mcpRegistry: {
215
215
  ...state.mcpRegistry,
216
- servers: { status: 'error', error: action.error },
216
+ servers: { status: "error", error: action.error },
217
217
  },
218
218
  };
219
219
  // =========================================================================
220
220
  // Status Line Screen
221
221
  // =========================================================================
222
- case 'STATUSLINE_SET_SCOPE':
222
+ case "STATUSLINE_SET_SCOPE":
223
223
  return {
224
224
  ...state,
225
225
  statusline: {
226
226
  ...state.statusline,
227
227
  scope: action.scope,
228
228
  selectedIndex: 0,
229
- presets: { status: 'loading' },
229
+ presets: { status: "loading" },
230
230
  },
231
231
  };
232
- case 'STATUSLINE_TOGGLE_SCOPE':
232
+ case "STATUSLINE_TOGGLE_SCOPE":
233
233
  return appReducer(state, {
234
- type: 'STATUSLINE_SET_SCOPE',
235
- scope: state.statusline.scope === 'project' ? 'global' : 'project',
234
+ type: "STATUSLINE_SET_SCOPE",
235
+ scope: state.statusline.scope === "project" ? "global" : "project",
236
236
  });
237
- case 'STATUSLINE_SELECT':
237
+ case "STATUSLINE_SELECT":
238
238
  return {
239
239
  ...state,
240
240
  statusline: {
@@ -242,35 +242,35 @@ export function appReducer(state, action) {
242
242
  selectedIndex: action.index,
243
243
  },
244
244
  };
245
- case 'STATUSLINE_DATA_LOADING':
245
+ case "STATUSLINE_DATA_LOADING":
246
246
  return {
247
247
  ...state,
248
248
  statusline: {
249
249
  ...state.statusline,
250
- presets: { status: 'loading' },
250
+ presets: { status: "loading" },
251
251
  },
252
252
  };
253
- case 'STATUSLINE_DATA_SUCCESS':
253
+ case "STATUSLINE_DATA_SUCCESS":
254
254
  return {
255
255
  ...state,
256
256
  statusline: {
257
257
  ...state.statusline,
258
- presets: { status: 'success', data: action.presets },
258
+ presets: { status: "success", data: action.presets },
259
259
  currentPreset: action.currentPreset,
260
260
  },
261
261
  };
262
- case 'STATUSLINE_DATA_ERROR':
262
+ case "STATUSLINE_DATA_ERROR":
263
263
  return {
264
264
  ...state,
265
265
  statusline: {
266
266
  ...state.statusline,
267
- presets: { status: 'error', error: action.error },
267
+ presets: { status: "error", error: action.error },
268
268
  },
269
269
  };
270
270
  // =========================================================================
271
271
  // Env Vars Screen
272
272
  // =========================================================================
273
- case 'ENVVARS_SELECT':
273
+ case "ENVVARS_SELECT":
274
274
  return {
275
275
  ...state,
276
276
  envVars: {
@@ -278,34 +278,34 @@ export function appReducer(state, action) {
278
278
  selectedIndex: action.index,
279
279
  },
280
280
  };
281
- case 'ENVVARS_DATA_LOADING':
281
+ case "ENVVARS_DATA_LOADING":
282
282
  return {
283
283
  ...state,
284
284
  envVars: {
285
285
  ...state.envVars,
286
- variables: { status: 'loading' },
286
+ variables: { status: "loading" },
287
287
  },
288
288
  };
289
- case 'ENVVARS_DATA_SUCCESS':
289
+ case "ENVVARS_DATA_SUCCESS":
290
290
  return {
291
291
  ...state,
292
292
  envVars: {
293
293
  ...state.envVars,
294
- variables: { status: 'success', data: action.variables },
294
+ variables: { status: "success", data: action.variables },
295
295
  },
296
296
  };
297
- case 'ENVVARS_DATA_ERROR':
297
+ case "ENVVARS_DATA_ERROR":
298
298
  return {
299
299
  ...state,
300
300
  envVars: {
301
301
  ...state.envVars,
302
- variables: { status: 'error', error: action.error },
302
+ variables: { status: "error", error: action.error },
303
303
  },
304
304
  };
305
305
  // =========================================================================
306
306
  // CLI Tools Screen
307
307
  // =========================================================================
308
- case 'CLITOOLS_SELECT':
308
+ case "CLITOOLS_SELECT":
309
309
  return {
310
310
  ...state,
311
311
  cliTools: {
@@ -313,39 +313,39 @@ export function appReducer(state, action) {
313
313
  selectedIndex: action.index,
314
314
  },
315
315
  };
316
- case 'CLITOOLS_DATA_LOADING':
316
+ case "CLITOOLS_DATA_LOADING":
317
317
  return {
318
318
  ...state,
319
319
  cliTools: {
320
320
  ...state.cliTools,
321
- tools: { status: 'loading' },
321
+ tools: { status: "loading" },
322
322
  },
323
323
  };
324
- case 'CLITOOLS_DATA_SUCCESS':
324
+ case "CLITOOLS_DATA_SUCCESS":
325
325
  return {
326
326
  ...state,
327
327
  cliTools: {
328
328
  ...state.cliTools,
329
- tools: { status: 'success', data: action.tools },
329
+ tools: { status: "success", data: action.tools },
330
330
  },
331
331
  };
332
- case 'CLITOOLS_DATA_ERROR':
332
+ case "CLITOOLS_DATA_ERROR":
333
333
  return {
334
334
  ...state,
335
335
  cliTools: {
336
336
  ...state.cliTools,
337
- tools: { status: 'error', error: action.error },
337
+ tools: { status: "error", error: action.error },
338
338
  },
339
339
  };
340
- case 'CLITOOLS_UPDATE_TOOL': {
341
- if (state.cliTools.tools.status !== 'success')
340
+ case "CLITOOLS_UPDATE_TOOL": {
341
+ if (state.cliTools.tools.status !== "success")
342
342
  return state;
343
343
  return {
344
344
  ...state,
345
345
  cliTools: {
346
346
  ...state.cliTools,
347
347
  tools: {
348
- status: 'success',
348
+ status: "success",
349
349
  data: state.cliTools.tools.data.map((tool) => tool.name === action.name ? { ...tool, ...action.updates } : tool),
350
350
  },
351
351
  },
@@ -354,7 +354,7 @@ export function appReducer(state, action) {
354
354
  // =========================================================================
355
355
  // Model Selector Screen
356
356
  // =========================================================================
357
- case 'MODEL_SELECTOR_SELECT':
357
+ case "MODEL_SELECTOR_SELECT":
358
358
  return {
359
359
  ...state,
360
360
  modelSelector: {
@@ -362,7 +362,7 @@ export function appReducer(state, action) {
362
362
  selectedIndex: action.index,
363
363
  },
364
364
  };
365
- case 'MODEL_SELECTOR_SET_SEARCH':
365
+ case "MODEL_SELECTOR_SET_SEARCH":
366
366
  return {
367
367
  ...state,
368
368
  modelSelector: {
@@ -371,7 +371,7 @@ export function appReducer(state, action) {
371
371
  selectedIndex: 0, // Reset selection when search changes
372
372
  },
373
373
  };
374
- case 'MODEL_SELECTOR_SET_TASK_SIZE':
374
+ case "MODEL_SELECTOR_SET_TASK_SIZE":
375
375
  return {
376
376
  ...state,
377
377
  modelSelector: {
@@ -382,31 +382,30 @@ export function appReducer(state, action) {
382
382
  // =========================================================================
383
383
  // Modals
384
384
  // =========================================================================
385
- case 'SHOW_MODAL':
385
+ case "SHOW_MODAL":
386
386
  return { ...state, modal: action.modal, isSearching: true };
387
- case 'HIDE_MODAL':
387
+ case "HIDE_MODAL":
388
388
  return { ...state, modal: null, isSearching: false };
389
389
  // =========================================================================
390
390
  // Progress
391
391
  // =========================================================================
392
- case 'SHOW_PROGRESS':
392
+ case "SHOW_PROGRESS":
393
393
  return { ...state, progress: action.state };
394
- case 'UPDATE_PROGRESS':
394
+ case "UPDATE_PROGRESS":
395
395
  return { ...state, progress: action.state };
396
- case 'HIDE_PROGRESS':
396
+ case "HIDE_PROGRESS":
397
397
  return { ...state, progress: null };
398
398
  // =========================================================================
399
399
  // Search State
400
400
  // =========================================================================
401
- case 'SET_SEARCHING':
401
+ case "SET_SEARCHING":
402
402
  return { ...state, isSearching: action.isSearching };
403
403
  // =========================================================================
404
404
  // Data Refresh
405
405
  // =========================================================================
406
- case 'DATA_REFRESH_COMPLETE':
406
+ case "DATA_REFRESH_COMPLETE":
407
407
  return { ...state, dataRefreshVersion: state.dataRefreshVersion + 1 };
408
408
  default:
409
409
  return state;
410
410
  }
411
411
  }
412
- //# sourceMappingURL=reducer.js.map