claude-code-plus-plus 0.2.0 → 0.2.2

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 (441) hide show
  1. package/dist/cli/commands/index.js +5 -1
  2. package/dist/cli/commands/index.js.map +1 -1
  3. package/dist/cli/commands/start.js +4 -1
  4. package/dist/cli/commands/start.js.map +1 -1
  5. package/dist/cli/index.js +18 -3
  6. package/dist/cli/index.js.map +1 -1
  7. package/dist/cli/parser.js +8 -3
  8. package/dist/cli/parser.js.map +1 -1
  9. package/dist/cli/validators.js +30 -20
  10. package/dist/cli/validators.js.map +1 -1
  11. package/dist/config/defaults.js +10 -5
  12. package/dist/config/defaults.js.map +1 -1
  13. package/dist/config/index.js +24 -4
  14. package/dist/config/index.js.map +1 -1
  15. package/dist/config/loader.js +29 -20
  16. package/dist/config/loader.js.map +1 -1
  17. package/dist/config/paths.js +30 -21
  18. package/dist/config/paths.js.map +1 -1
  19. package/dist/config/schema.js +6 -2
  20. package/dist/config/schema.js.map +1 -1
  21. package/dist/git/index.js +6 -1
  22. package/dist/git/index.js.map +1 -1
  23. package/dist/git/worktree.js +18 -13
  24. package/dist/git/worktree.js.map +1 -1
  25. package/dist/index.js +41 -6
  26. package/dist/index.js.map +1 -1
  27. package/dist/launcher/index.d.ts.map +1 -1
  28. package/dist/launcher/index.js +60 -26
  29. package/dist/launcher/index.js.map +1 -1
  30. package/dist/platform/clipboard.js +22 -15
  31. package/dist/platform/clipboard.js.map +1 -1
  32. package/dist/platform/detector.js +37 -22
  33. package/dist/platform/detector.js.map +1 -1
  34. package/dist/platform/index.js +42 -4
  35. package/dist/platform/index.js.map +1 -1
  36. package/dist/platform/paths.js +61 -48
  37. package/dist/platform/paths.js.map +1 -1
  38. package/dist/platform/shell.js +35 -27
  39. package/dist/platform/shell.js.map +1 -1
  40. package/dist/sidebar/app.d.ts.map +1 -1
  41. package/dist/sidebar/app.js +73 -39
  42. package/dist/sidebar/app.js.map +1 -1
  43. package/dist/sidebar/index.js +4 -2
  44. package/dist/sidebar/index.js.map +1 -1
  45. package/dist/sidebar/input.js +12 -5
  46. package/dist/sidebar/input.js.map +1 -1
  47. package/dist/sidebar/render.js +102 -90
  48. package/dist/sidebar/render.js.map +1 -1
  49. package/dist/terminal/bar-handler.js +9 -7
  50. package/dist/terminal/bar-handler.js.map +1 -1
  51. package/dist/terminal/bar-render.js +6 -2
  52. package/dist/terminal/bar-render.js.map +1 -1
  53. package/dist/terminal/index.js +6 -1
  54. package/dist/terminal/index.js.map +1 -1
  55. package/dist/tmux/commands.js +18 -11
  56. package/dist/tmux/commands.js.map +1 -1
  57. package/dist/tmux/index.js +33 -7
  58. package/dist/tmux/index.js.map +1 -1
  59. package/dist/tmux/pane.js +76 -51
  60. package/dist/tmux/pane.js.map +1 -1
  61. package/dist/types.js +4 -1
  62. package/dist/types.js.map +1 -1
  63. package/dist/utils/async.js +16 -7
  64. package/dist/utils/async.js.map +1 -1
  65. package/dist/utils/errors.js +31 -14
  66. package/dist/utils/errors.js.map +1 -1
  67. package/dist/utils/id.js +19 -10
  68. package/dist/utils/id.js.map +1 -1
  69. package/dist/utils/index.js +65 -6
  70. package/dist/utils/index.js.map +1 -1
  71. package/dist/utils/logger.js +17 -10
  72. package/dist/utils/logger.js.map +1 -1
  73. package/dist/utils/string.js +22 -10
  74. package/dist/utils/string.js.map +1 -1
  75. package/dist/utils/validation.js +28 -13
  76. package/dist/utils/validation.js.map +1 -1
  77. package/package.json +4 -4
  78. package/dist/app.d.ts +0 -52
  79. package/dist/app.d.ts.map +0 -1
  80. package/dist/app.js +0 -318
  81. package/dist/app.js.map +0 -1
  82. package/dist/core/index.d.ts +0 -14
  83. package/dist/core/index.d.ts.map +0 -1
  84. package/dist/core/index.js +0 -14
  85. package/dist/core/index.js.map +0 -1
  86. package/dist/core/session/index.d.ts +0 -7
  87. package/dist/core/session/index.d.ts.map +0 -1
  88. package/dist/core/session/index.js +0 -6
  89. package/dist/core/session/index.js.map +0 -1
  90. package/dist/core/session/session-manager.d.ts +0 -46
  91. package/dist/core/session/session-manager.d.ts.map +0 -1
  92. package/dist/core/session/session-manager.js +0 -245
  93. package/dist/core/session/session-manager.js.map +0 -1
  94. package/dist/core/session/session.d.ts +0 -44
  95. package/dist/core/session/session.d.ts.map +0 -1
  96. package/dist/core/session/session.js +0 -78
  97. package/dist/core/session/session.js.map +0 -1
  98. package/dist/core/terminal/index.d.ts +0 -7
  99. package/dist/core/terminal/index.d.ts.map +0 -1
  100. package/dist/core/terminal/index.js +0 -6
  101. package/dist/core/terminal/index.js.map +0 -1
  102. package/dist/core/terminal/terminal-manager.d.ts +0 -36
  103. package/dist/core/terminal/terminal-manager.d.ts.map +0 -1
  104. package/dist/core/terminal/terminal-manager.js +0 -182
  105. package/dist/core/terminal/terminal-manager.js.map +0 -1
  106. package/dist/core/terminal/terminal.d.ts +0 -27
  107. package/dist/core/terminal/terminal.d.ts.map +0 -1
  108. package/dist/core/terminal/terminal.js +0 -38
  109. package/dist/core/terminal/terminal.js.map +0 -1
  110. package/dist/core/workspace/index.d.ts +0 -7
  111. package/dist/core/workspace/index.d.ts.map +0 -1
  112. package/dist/core/workspace/index.js +0 -6
  113. package/dist/core/workspace/index.js.map +0 -1
  114. package/dist/core/workspace/workspace-manager.d.ts +0 -59
  115. package/dist/core/workspace/workspace-manager.d.ts.map +0 -1
  116. package/dist/core/workspace/workspace-manager.js +0 -224
  117. package/dist/core/workspace/workspace-manager.js.map +0 -1
  118. package/dist/core/workspace/workspace.d.ts +0 -56
  119. package/dist/core/workspace/workspace.d.ts.map +0 -1
  120. package/dist/core/workspace/workspace.js +0 -96
  121. package/dist/core/workspace/workspace.js.map +0 -1
  122. package/dist/core/worktree/index.d.ts +0 -7
  123. package/dist/core/worktree/index.d.ts.map +0 -1
  124. package/dist/core/worktree/index.js +0 -6
  125. package/dist/core/worktree/index.js.map +0 -1
  126. package/dist/core/worktree/worktree-manager.d.ts +0 -47
  127. package/dist/core/worktree/worktree-manager.d.ts.map +0 -1
  128. package/dist/core/worktree/worktree-manager.js +0 -170
  129. package/dist/core/worktree/worktree-manager.js.map +0 -1
  130. package/dist/core/worktree/worktree.d.ts +0 -35
  131. package/dist/core/worktree/worktree.d.ts.map +0 -1
  132. package/dist/core/worktree/worktree.js +0 -50
  133. package/dist/core/worktree/worktree.js.map +0 -1
  134. package/dist/core/worktree-manager.d.ts +0 -26
  135. package/dist/core/worktree-manager.d.ts.map +0 -1
  136. package/dist/core/worktree-manager.js +0 -177
  137. package/dist/core/worktree-manager.js.map +0 -1
  138. package/dist/events/bus.d.ts +0 -76
  139. package/dist/events/bus.d.ts.map +0 -1
  140. package/dist/events/bus.js +0 -223
  141. package/dist/events/bus.js.map +0 -1
  142. package/dist/events/handlers/index.d.ts +0 -28
  143. package/dist/events/handlers/index.d.ts.map +0 -1
  144. package/dist/events/handlers/index.js +0 -44
  145. package/dist/events/handlers/index.js.map +0 -1
  146. package/dist/events/handlers/session-events.d.ts +0 -12
  147. package/dist/events/handlers/session-events.d.ts.map +0 -1
  148. package/dist/events/handlers/session-events.js +0 -38
  149. package/dist/events/handlers/session-events.js.map +0 -1
  150. package/dist/events/handlers/terminal-events.d.ts +0 -12
  151. package/dist/events/handlers/terminal-events.d.ts.map +0 -1
  152. package/dist/events/handlers/terminal-events.js +0 -37
  153. package/dist/events/handlers/terminal-events.js.map +0 -1
  154. package/dist/events/handlers/ui-events.d.ts +0 -11
  155. package/dist/events/handlers/ui-events.d.ts.map +0 -1
  156. package/dist/events/handlers/ui-events.js +0 -202
  157. package/dist/events/handlers/ui-events.js.map +0 -1
  158. package/dist/events/index.d.ts +0 -9
  159. package/dist/events/index.d.ts.map +0 -1
  160. package/dist/events/index.js +0 -10
  161. package/dist/events/index.js.map +0 -1
  162. package/dist/multiplexer/base.d.ts +0 -73
  163. package/dist/multiplexer/base.d.ts.map +0 -1
  164. package/dist/multiplexer/base.js +0 -68
  165. package/dist/multiplexer/base.js.map +0 -1
  166. package/dist/multiplexer/factory.d.ts +0 -28
  167. package/dist/multiplexer/factory.d.ts.map +0 -1
  168. package/dist/multiplexer/factory.js +0 -72
  169. package/dist/multiplexer/factory.js.map +0 -1
  170. package/dist/multiplexer/index.d.ts +0 -14
  171. package/dist/multiplexer/index.d.ts.map +0 -1
  172. package/dist/multiplexer/index.js +0 -15
  173. package/dist/multiplexer/index.js.map +0 -1
  174. package/dist/multiplexer/tmux/index.d.ts +0 -9
  175. package/dist/multiplexer/tmux/index.d.ts.map +0 -1
  176. package/dist/multiplexer/tmux/index.js +0 -7
  177. package/dist/multiplexer/tmux/index.js.map +0 -1
  178. package/dist/multiplexer/tmux/tmux-commands.d.ts +0 -96
  179. package/dist/multiplexer/tmux/tmux-commands.d.ts.map +0 -1
  180. package/dist/multiplexer/tmux/tmux-commands.js +0 -282
  181. package/dist/multiplexer/tmux/tmux-commands.js.map +0 -1
  182. package/dist/multiplexer/tmux/tmux-config.d.ts +0 -57
  183. package/dist/multiplexer/tmux/tmux-config.d.ts.map +0 -1
  184. package/dist/multiplexer/tmux/tmux-config.js +0 -103
  185. package/dist/multiplexer/tmux/tmux-config.js.map +0 -1
  186. package/dist/multiplexer/tmux/tmux-multiplexer.d.ts +0 -94
  187. package/dist/multiplexer/tmux/tmux-multiplexer.d.ts.map +0 -1
  188. package/dist/multiplexer/tmux/tmux-multiplexer.js +0 -302
  189. package/dist/multiplexer/tmux/tmux-multiplexer.js.map +0 -1
  190. package/dist/multiplexer/windows/index.d.ts +0 -5
  191. package/dist/multiplexer/windows/index.d.ts.map +0 -1
  192. package/dist/multiplexer/windows/index.js +0 -5
  193. package/dist/multiplexer/windows/index.js.map +0 -1
  194. package/dist/multiplexer/windows/windows-multiplexer.d.ts +0 -61
  195. package/dist/multiplexer/windows/windows-multiplexer.d.ts.map +0 -1
  196. package/dist/multiplexer/windows/windows-multiplexer.js +0 -151
  197. package/dist/multiplexer/windows/windows-multiplexer.js.map +0 -1
  198. package/dist/services/claude/claude-detector.d.ts +0 -37
  199. package/dist/services/claude/claude-detector.d.ts.map +0 -1
  200. package/dist/services/claude/claude-detector.js +0 -83
  201. package/dist/services/claude/claude-detector.js.map +0 -1
  202. package/dist/services/claude/claude-service.d.ts +0 -57
  203. package/dist/services/claude/claude-service.d.ts.map +0 -1
  204. package/dist/services/claude/claude-service.js +0 -108
  205. package/dist/services/claude/claude-service.js.map +0 -1
  206. package/dist/services/claude/index.d.ts +0 -7
  207. package/dist/services/claude/index.d.ts.map +0 -1
  208. package/dist/services/claude/index.js +0 -6
  209. package/dist/services/claude/index.js.map +0 -1
  210. package/dist/services/git/branch-service.d.ts +0 -64
  211. package/dist/services/git/branch-service.d.ts.map +0 -1
  212. package/dist/services/git/branch-service.js +0 -217
  213. package/dist/services/git/branch-service.js.map +0 -1
  214. package/dist/services/git/git-service.d.ts +0 -44
  215. package/dist/services/git/git-service.d.ts.map +0 -1
  216. package/dist/services/git/git-service.js +0 -145
  217. package/dist/services/git/git-service.js.map +0 -1
  218. package/dist/services/git/index.d.ts +0 -8
  219. package/dist/services/git/index.d.ts.map +0 -1
  220. package/dist/services/git/index.js +0 -7
  221. package/dist/services/git/index.js.map +0 -1
  222. package/dist/services/git/worktree-service.d.ts +0 -61
  223. package/dist/services/git/worktree-service.d.ts.map +0 -1
  224. package/dist/services/git/worktree-service.js +0 -243
  225. package/dist/services/git/worktree-service.js.map +0 -1
  226. package/dist/services/index.d.ts +0 -12
  227. package/dist/services/index.d.ts.map +0 -1
  228. package/dist/services/index.js +0 -12
  229. package/dist/services/index.js.map +0 -1
  230. package/dist/services/process/index.d.ts +0 -8
  231. package/dist/services/process/index.d.ts.map +0 -1
  232. package/dist/services/process/index.js +0 -6
  233. package/dist/services/process/index.js.map +0 -1
  234. package/dist/services/process/process-monitor.d.ts +0 -98
  235. package/dist/services/process/process-monitor.d.ts.map +0 -1
  236. package/dist/services/process/process-monitor.js +0 -173
  237. package/dist/services/process/process-monitor.js.map +0 -1
  238. package/dist/services/process/process-spawner.d.ts +0 -55
  239. package/dist/services/process/process-spawner.d.ts.map +0 -1
  240. package/dist/services/process/process-spawner.js +0 -93
  241. package/dist/services/process/process-spawner.js.map +0 -1
  242. package/dist/sidebar.d.ts +0 -13
  243. package/dist/sidebar.d.ts.map +0 -1
  244. package/dist/sidebar.js +0 -1535
  245. package/dist/sidebar.js.map +0 -1
  246. package/dist/state/actions.d.ts +0 -49
  247. package/dist/state/actions.d.ts.map +0 -1
  248. package/dist/state/actions.js +0 -512
  249. package/dist/state/actions.js.map +0 -1
  250. package/dist/state/index.d.ts +0 -16
  251. package/dist/state/index.d.ts.map +0 -1
  252. package/dist/state/index.js +0 -28
  253. package/dist/state/index.js.map +0 -1
  254. package/dist/state/middleware/index.d.ts +0 -7
  255. package/dist/state/middleware/index.d.ts.map +0 -1
  256. package/dist/state/middleware/index.js +0 -6
  257. package/dist/state/middleware/index.js.map +0 -1
  258. package/dist/state/middleware/logger.d.ts +0 -22
  259. package/dist/state/middleware/logger.d.ts.map +0 -1
  260. package/dist/state/middleware/logger.js +0 -45
  261. package/dist/state/middleware/logger.js.map +0 -1
  262. package/dist/state/middleware/persistence.d.ts +0 -29
  263. package/dist/state/middleware/persistence.d.ts.map +0 -1
  264. package/dist/state/middleware/persistence.js +0 -71
  265. package/dist/state/middleware/persistence.js.map +0 -1
  266. package/dist/state/persistence/file-adapter.d.ts +0 -48
  267. package/dist/state/persistence/file-adapter.d.ts.map +0 -1
  268. package/dist/state/persistence/file-adapter.js +0 -96
  269. package/dist/state/persistence/file-adapter.js.map +0 -1
  270. package/dist/state/persistence/index.d.ts +0 -8
  271. package/dist/state/persistence/index.d.ts.map +0 -1
  272. package/dist/state/persistence/index.js +0 -6
  273. package/dist/state/persistence/index.js.map +0 -1
  274. package/dist/state/persistence/serializer.d.ts +0 -41
  275. package/dist/state/persistence/serializer.d.ts.map +0 -1
  276. package/dist/state/persistence/serializer.js +0 -114
  277. package/dist/state/persistence/serializer.js.map +0 -1
  278. package/dist/state/selectors.d.ts +0 -67
  279. package/dist/state/selectors.d.ts.map +0 -1
  280. package/dist/state/selectors.js +0 -177
  281. package/dist/state/selectors.js.map +0 -1
  282. package/dist/state/store.d.ts +0 -86
  283. package/dist/state/store.d.ts.map +0 -1
  284. package/dist/state/store.js +0 -161
  285. package/dist/state/store.js.map +0 -1
  286. package/dist/state/types.d.ts +0 -269
  287. package/dist/state/types.d.ts.map +0 -1
  288. package/dist/state/types.js +0 -7
  289. package/dist/state/types.js.map +0 -1
  290. package/dist/state.d.ts +0 -53
  291. package/dist/state.d.ts.map +0 -1
  292. package/dist/state.js +0 -101
  293. package/dist/state.js.map +0 -1
  294. package/dist/terminal-manager.d.ts +0 -16
  295. package/dist/terminal-manager.d.ts.map +0 -1
  296. package/dist/terminal-manager.js +0 -364
  297. package/dist/terminal-manager.js.map +0 -1
  298. package/dist/tmux.d.ts +0 -163
  299. package/dist/tmux.d.ts.map +0 -1
  300. package/dist/tmux.js +0 -360
  301. package/dist/tmux.js.map +0 -1
  302. package/dist/types/config.d.ts +0 -103
  303. package/dist/types/config.d.ts.map +0 -1
  304. package/dist/types/config.js +0 -7
  305. package/dist/types/config.js.map +0 -1
  306. package/dist/types/entities.d.ts +0 -88
  307. package/dist/types/entities.d.ts.map +0 -1
  308. package/dist/types/entities.js +0 -8
  309. package/dist/types/entities.js.map +0 -1
  310. package/dist/types/events.d.ts +0 -156
  311. package/dist/types/events.d.ts.map +0 -1
  312. package/dist/types/events.js +0 -8
  313. package/dist/types/events.js.map +0 -1
  314. package/dist/types/index.d.ts +0 -11
  315. package/dist/types/index.d.ts.map +0 -1
  316. package/dist/types/index.js +0 -8
  317. package/dist/types/index.js.map +0 -1
  318. package/dist/types/multiplexer.d.ts +0 -238
  319. package/dist/types/multiplexer.d.ts.map +0 -1
  320. package/dist/types/multiplexer.js +0 -8
  321. package/dist/types/multiplexer.js.map +0 -1
  322. package/dist/ui/components/base.d.ts +0 -155
  323. package/dist/ui/components/base.d.ts.map +0 -1
  324. package/dist/ui/components/base.js +0 -269
  325. package/dist/ui/components/base.js.map +0 -1
  326. package/dist/ui/components/index.d.ts +0 -10
  327. package/dist/ui/components/index.d.ts.map +0 -1
  328. package/dist/ui/components/index.js +0 -10
  329. package/dist/ui/components/index.js.map +0 -1
  330. package/dist/ui/components/input-field.d.ts +0 -98
  331. package/dist/ui/components/input-field.d.ts.map +0 -1
  332. package/dist/ui/components/input-field.js +0 -274
  333. package/dist/ui/components/input-field.js.map +0 -1
  334. package/dist/ui/components/list.d.ts +0 -94
  335. package/dist/ui/components/list.d.ts.map +0 -1
  336. package/dist/ui/components/list.js +0 -294
  337. package/dist/ui/components/list.js.map +0 -1
  338. package/dist/ui/components/modal.d.ts +0 -83
  339. package/dist/ui/components/modal.d.ts.map +0 -1
  340. package/dist/ui/components/modal.js +0 -249
  341. package/dist/ui/components/modal.js.map +0 -1
  342. package/dist/ui/components/tabs.d.ts +0 -97
  343. package/dist/ui/components/tabs.d.ts.map +0 -1
  344. package/dist/ui/components/tabs.js +0 -252
  345. package/dist/ui/components/tabs.js.map +0 -1
  346. package/dist/ui/components/text.d.ts +0 -60
  347. package/dist/ui/components/text.d.ts.map +0 -1
  348. package/dist/ui/components/text.js +0 -224
  349. package/dist/ui/components/text.js.map +0 -1
  350. package/dist/ui/index.d.ts +0 -12
  351. package/dist/ui/index.d.ts.map +0 -1
  352. package/dist/ui/index.js +0 -18
  353. package/dist/ui/index.js.map +0 -1
  354. package/dist/ui/input/index.d.ts +0 -8
  355. package/dist/ui/input/index.d.ts.map +0 -1
  356. package/dist/ui/input/index.js +0 -8
  357. package/dist/ui/input/index.js.map +0 -1
  358. package/dist/ui/input/input-manager.d.ts +0 -83
  359. package/dist/ui/input/input-manager.d.ts.map +0 -1
  360. package/dist/ui/input/input-manager.js +0 -200
  361. package/dist/ui/input/input-manager.js.map +0 -1
  362. package/dist/ui/input/keybindings.d.ts +0 -47
  363. package/dist/ui/input/keybindings.d.ts.map +0 -1
  364. package/dist/ui/input/keybindings.js +0 -168
  365. package/dist/ui/input/keybindings.js.map +0 -1
  366. package/dist/ui/input/keyboard.d.ts +0 -24
  367. package/dist/ui/input/keyboard.d.ts.map +0 -1
  368. package/dist/ui/input/keyboard.js +0 -230
  369. package/dist/ui/input/keyboard.js.map +0 -1
  370. package/dist/ui/input/mouse.d.ts +0 -44
  371. package/dist/ui/input/mouse.d.ts.map +0 -1
  372. package/dist/ui/input/mouse.js +0 -161
  373. package/dist/ui/input/mouse.js.map +0 -1
  374. package/dist/ui/layout/box.d.ts +0 -63
  375. package/dist/ui/layout/box.d.ts.map +0 -1
  376. package/dist/ui/layout/box.js +0 -160
  377. package/dist/ui/layout/box.js.map +0 -1
  378. package/dist/ui/layout/constraints.d.ts +0 -77
  379. package/dist/ui/layout/constraints.d.ts.map +0 -1
  380. package/dist/ui/layout/constraints.js +0 -154
  381. package/dist/ui/layout/constraints.js.map +0 -1
  382. package/dist/ui/layout/flex.d.ts +0 -59
  383. package/dist/ui/layout/flex.d.ts.map +0 -1
  384. package/dist/ui/layout/flex.js +0 -163
  385. package/dist/ui/layout/flex.js.map +0 -1
  386. package/dist/ui/layout/index.d.ts +0 -7
  387. package/dist/ui/layout/index.d.ts.map +0 -1
  388. package/dist/ui/layout/index.js +0 -7
  389. package/dist/ui/layout/index.js.map +0 -1
  390. package/dist/ui/modals/delete-modal.d.ts +0 -27
  391. package/dist/ui/modals/delete-modal.d.ts.map +0 -1
  392. package/dist/ui/modals/delete-modal.js +0 -59
  393. package/dist/ui/modals/delete-modal.js.map +0 -1
  394. package/dist/ui/modals/index.d.ts +0 -7
  395. package/dist/ui/modals/index.d.ts.map +0 -1
  396. package/dist/ui/modals/index.js +0 -7
  397. package/dist/ui/modals/index.js.map +0 -1
  398. package/dist/ui/modals/input-modal.d.ts +0 -66
  399. package/dist/ui/modals/input-modal.d.ts.map +0 -1
  400. package/dist/ui/modals/input-modal.js +0 -185
  401. package/dist/ui/modals/input-modal.js.map +0 -1
  402. package/dist/ui/modals/quit-modal.d.ts +0 -30
  403. package/dist/ui/modals/quit-modal.d.ts.map +0 -1
  404. package/dist/ui/modals/quit-modal.js +0 -65
  405. package/dist/ui/modals/quit-modal.js.map +0 -1
  406. package/dist/ui/renderer/ansi.d.ts +0 -206
  407. package/dist/ui/renderer/ansi.d.ts.map +0 -1
  408. package/dist/ui/renderer/ansi.js +0 -318
  409. package/dist/ui/renderer/ansi.js.map +0 -1
  410. package/dist/ui/renderer/canvas.d.ts +0 -126
  411. package/dist/ui/renderer/canvas.d.ts.map +0 -1
  412. package/dist/ui/renderer/canvas.js +0 -346
  413. package/dist/ui/renderer/canvas.js.map +0 -1
  414. package/dist/ui/renderer/colors.d.ts +0 -65
  415. package/dist/ui/renderer/colors.d.ts.map +0 -1
  416. package/dist/ui/renderer/colors.js +0 -260
  417. package/dist/ui/renderer/colors.js.map +0 -1
  418. package/dist/ui/renderer/index.d.ts +0 -8
  419. package/dist/ui/renderer/index.d.ts.map +0 -1
  420. package/dist/ui/renderer/index.js +0 -8
  421. package/dist/ui/renderer/index.js.map +0 -1
  422. package/dist/ui/renderer/symbols.d.ts +0 -176
  423. package/dist/ui/renderer/symbols.d.ts.map +0 -1
  424. package/dist/ui/renderer/symbols.js +0 -246
  425. package/dist/ui/renderer/symbols.js.map +0 -1
  426. package/dist/ui/views/index.d.ts +0 -7
  427. package/dist/ui/views/index.d.ts.map +0 -1
  428. package/dist/ui/views/index.js +0 -7
  429. package/dist/ui/views/index.js.map +0 -1
  430. package/dist/ui/views/sidebar-view.d.ts +0 -89
  431. package/dist/ui/views/sidebar-view.d.ts.map +0 -1
  432. package/dist/ui/views/sidebar-view.js +0 -259
  433. package/dist/ui/views/sidebar-view.js.map +0 -1
  434. package/dist/ui/views/terminal-bar-view.d.ts +0 -67
  435. package/dist/ui/views/terminal-bar-view.d.ts.map +0 -1
  436. package/dist/ui/views/terminal-bar-view.js +0 -172
  437. package/dist/ui/views/terminal-bar-view.js.map +0 -1
  438. package/dist/ui/views/welcome-view.d.ts +0 -34
  439. package/dist/ui/views/welcome-view.d.ts.map +0 -1
  440. package/dist/ui/views/welcome-view.js +0 -116
  441. package/dist/ui/views/welcome-view.js.map +0 -1
@@ -1,177 +0,0 @@
1
- /**
2
- * State Selectors
3
- *
4
- * Pure functions for querying state.
5
- */
6
- // ============================================================================
7
- // Workspace selectors
8
- // ============================================================================
9
- export function selectWorkspace(state) {
10
- return state.workspace;
11
- }
12
- export function selectWorktrees(state) {
13
- return state.workspace?.worktrees ?? [];
14
- }
15
- export function selectWorktreeById(state, worktreeId) {
16
- return state.workspace?.worktrees.find((wt) => wt.id === worktreeId);
17
- }
18
- export function selectMainWorktree(state) {
19
- return state.workspace?.worktrees.find((wt) => wt.isMain);
20
- }
21
- export function selectActiveSessionId(state) {
22
- return state.workspace?.activeSessionId ?? null;
23
- }
24
- // ============================================================================
25
- // Session selectors
26
- // ============================================================================
27
- export function selectAllSessions(state) {
28
- return (state.workspace?.worktrees.flatMap((wt) => wt.sessions) ?? []);
29
- }
30
- export function selectSessionById(state, sessionId) {
31
- for (const wt of state.workspace?.worktrees ?? []) {
32
- const session = wt.sessions.find((s) => s.id === sessionId);
33
- if (session)
34
- return session;
35
- }
36
- return undefined;
37
- }
38
- export function selectActiveSession(state) {
39
- const activeId = state.workspace?.activeSessionId;
40
- if (!activeId)
41
- return undefined;
42
- return selectSessionById(state, activeId);
43
- }
44
- export function selectSessionsForWorktree(state, worktreeId) {
45
- const worktree = selectWorktreeById(state, worktreeId);
46
- return worktree?.sessions ?? [];
47
- }
48
- export function selectWorktreeForSession(state, sessionId) {
49
- for (const wt of state.workspace?.worktrees ?? []) {
50
- if (wt.sessions.some((s) => s.id === sessionId)) {
51
- return wt;
52
- }
53
- }
54
- return undefined;
55
- }
56
- // ============================================================================
57
- // Terminal selectors
58
- // ============================================================================
59
- export function selectTerminalsForSession(state, sessionId) {
60
- const session = selectSessionById(state, sessionId);
61
- return session?.terminals ?? [];
62
- }
63
- export function selectActiveTerminal(state, sessionId) {
64
- const session = selectSessionById(state, sessionId);
65
- if (!session || session.terminals.length === 0)
66
- return undefined;
67
- return session.terminals[session.activeTerminalIndex];
68
- }
69
- export function selectTerminalById(state, sessionId, terminalId) {
70
- const terminals = selectTerminalsForSession(state, sessionId);
71
- return terminals.find((t) => t.id === terminalId);
72
- }
73
- // ============================================================================
74
- // UI selectors
75
- // ============================================================================
76
- export function selectSelectedIndex(state) {
77
- return state.ui.sidebar.selectedIndex;
78
- }
79
- export function selectIsSidebarCollapsed(state) {
80
- return state.ui.sidebar.collapsed;
81
- }
82
- export function selectScrollOffset(state) {
83
- return state.ui.sidebar.scrollOffset;
84
- }
85
- export function selectIsTerminalBarVisible(state) {
86
- return state.ui.terminalBar.visible;
87
- }
88
- export function selectModalType(state) {
89
- return state.ui.modal.type;
90
- }
91
- export function selectModalData(state) {
92
- return state.ui.modal.data;
93
- }
94
- export function selectModalSelection(state) {
95
- return state.ui.modal.selection;
96
- }
97
- export function selectIsModalOpen(state) {
98
- return state.ui.modal.type !== null;
99
- }
100
- export function selectIsInputModeActive(state) {
101
- return state.ui.inputMode.active;
102
- }
103
- export function selectInputField(state) {
104
- return state.ui.inputMode.field;
105
- }
106
- export function selectInputValue(state) {
107
- return state.ui.inputMode.value;
108
- }
109
- export function selectInputCursorPos(state) {
110
- return state.ui.inputMode.cursorPos;
111
- }
112
- // ============================================================================
113
- // Status selectors
114
- // ============================================================================
115
- export function selectIsLoading(state) {
116
- return state.status.loading;
117
- }
118
- export function selectError(state) {
119
- return state.status.error;
120
- }
121
- export function selectMessage(state) {
122
- return state.status.message;
123
- }
124
- export function selectSidebarItems(state) {
125
- const items = [];
126
- for (const worktree of selectWorktrees(state)) {
127
- items.push({
128
- type: 'worktree',
129
- item: worktree,
130
- worktreeId: worktree.id,
131
- depth: 0,
132
- });
133
- for (const session of worktree.sessions) {
134
- items.push({
135
- type: 'session',
136
- item: session,
137
- worktreeId: worktree.id,
138
- depth: 1,
139
- });
140
- }
141
- }
142
- return items;
143
- }
144
- /**
145
- * Get the currently selected sidebar item
146
- */
147
- export function selectSelectedItem(state) {
148
- const items = selectSidebarItems(state);
149
- const index = selectSelectedIndex(state);
150
- return items[index];
151
- }
152
- /**
153
- * Get the total count of items in sidebar
154
- */
155
- export function selectSidebarItemCount(state) {
156
- return selectSidebarItems(state).length;
157
- }
158
- /**
159
- * Check if there are any sessions
160
- */
161
- export function selectHasSessions(state) {
162
- return selectAllSessions(state).length > 0;
163
- }
164
- /**
165
- * Get the count of sessions for a worktree
166
- */
167
- export function selectSessionCount(state, worktreeId) {
168
- return selectSessionsForWorktree(state, worktreeId).length;
169
- }
170
- /**
171
- * Get the count of terminals for the active session
172
- */
173
- export function selectActiveSessionTerminalCount(state) {
174
- const session = selectActiveSession(state);
175
- return session?.terminals.length ?? 0;
176
- }
177
- //# sourceMappingURL=selectors.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"selectors.js","sourceRoot":"","sources":["../../src/state/selectors.ts"],"names":[],"mappings":"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"}
@@ -1,86 +0,0 @@
1
- /**
2
- * Central State Store
3
- *
4
- * Manages application state with pub/sub pattern and middleware support.
5
- */
6
- import type { AppState, AppAction, StateListener, Middleware } from './types';
7
- import type { Unsubscribe } from '../utils';
8
- /**
9
- * Store configuration options
10
- */
11
- export interface StoreOptions {
12
- /** Initial state (uses default if not provided) */
13
- initialState?: AppState;
14
- /** Middleware functions to apply */
15
- middleware?: Middleware[];
16
- }
17
- /**
18
- * Application state store
19
- */
20
- export declare class Store {
21
- private state;
22
- private listeners;
23
- private middleware;
24
- constructor(options?: StoreOptions);
25
- /**
26
- * Get the current state
27
- */
28
- getState(): AppState;
29
- /**
30
- * Dispatch an action to update state
31
- */
32
- dispatch(action: AppAction): void;
33
- /**
34
- * Subscribe to state changes
35
- */
36
- subscribe(listener: StateListener): Unsubscribe;
37
- /**
38
- * Select a value from state using a selector function
39
- */
40
- select<T>(selector: (state: AppState) => T): T;
41
- /**
42
- * Subscribe to changes in a selected value
43
- */
44
- subscribeToSelector<T>(selector: (state: AppState) => T, listener: (value: T, prevValue: T) => void, equalityFn?: (a: T, b: T) => boolean): Unsubscribe;
45
- /**
46
- * Add middleware to the store
47
- */
48
- addMiddleware(middleware: Middleware): void;
49
- /**
50
- * Replace the entire state (useful for hydration)
51
- */
52
- replaceState(newState: AppState): void;
53
- /**
54
- * Reset to initial state
55
- */
56
- reset(): void;
57
- }
58
- /**
59
- * Get the global store instance
60
- */
61
- export declare function getStore(): Store;
62
- /**
63
- * Set the global store instance
64
- */
65
- export declare function setStore(store: Store): void;
66
- /**
67
- * Create a new store instance
68
- */
69
- export declare function createStore(options?: StoreOptions): Store;
70
- /**
71
- * Get current state from global store
72
- */
73
- export declare function getState(): AppState;
74
- /**
75
- * Dispatch action to global store
76
- */
77
- export declare function dispatch(action: AppAction): void;
78
- /**
79
- * Subscribe to global store
80
- */
81
- export declare function subscribe(listener: StateListener): Unsubscribe;
82
- /**
83
- * Select from global store
84
- */
85
- export declare function select<T>(selector: (state: AppState) => T): T;
86
- //# sourceMappingURL=store.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/state/store.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,QAAQ,EACR,SAAS,EACT,aAAa,EACb,UAAU,EACX,MAAM,SAAS,CAAC;AAEjB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,mDAAmD;IACnD,YAAY,CAAC,EAAE,QAAQ,CAAC;IACxB,oCAAoC;IACpC,UAAU,CAAC,EAAE,UAAU,EAAE,CAAC;CAC3B;AAED;;GAEG;AACH,qBAAa,KAAK;IAChB,OAAO,CAAC,KAAK,CAAW;IACxB,OAAO,CAAC,SAAS,CAAiC;IAClD,OAAO,CAAC,UAAU,CAAoB;gBAE1B,OAAO,GAAE,YAAiB;IAKtC;;OAEG;IACH,QAAQ,IAAI,QAAQ;IAIpB;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI;IA4BjC;;OAEG;IACH,SAAS,CAAC,QAAQ,EAAE,aAAa,GAAG,WAAW;IAO/C;;OAEG;IACH,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,CAAC,GAAG,CAAC;IAI9C;;OAEG;IACH,mBAAmB,CAAC,CAAC,EACnB,QAAQ,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,CAAC,EAChC,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,KAAK,IAAI,EAC1C,UAAU,GAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,OAAmB,GAC9C,WAAW;IAed;;OAEG;IACH,aAAa,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAI3C;;OAEG;IACH,YAAY,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAatC;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd;AAQD;;GAEG;AACH,wBAAgB,QAAQ,IAAI,KAAK,CAKhC;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAE3C;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,KAAK,CAEzD;AAMD;;GAEG;AACH,wBAAgB,QAAQ,IAAI,QAAQ,CAEnC;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAEhD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,aAAa,GAAG,WAAW,CAE9D;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,CAAC,GAAG,CAAC,CAE7D"}
@@ -1,161 +0,0 @@
1
- /**
2
- * Central State Store
3
- *
4
- * Manages application state with pub/sub pattern and middleware support.
5
- */
6
- import { reducer, createInitialState } from './actions';
7
- /**
8
- * Application state store
9
- */
10
- export class Store {
11
- state;
12
- listeners = new Set();
13
- middleware = [];
14
- constructor(options = {}) {
15
- this.state = options.initialState ?? createInitialState();
16
- this.middleware = options.middleware ?? [];
17
- }
18
- /**
19
- * Get the current state
20
- */
21
- getState() {
22
- return this.state;
23
- }
24
- /**
25
- * Dispatch an action to update state
26
- */
27
- dispatch(action) {
28
- const prevState = this.state;
29
- // Apply middleware chain
30
- const applyMiddleware = (index) => {
31
- if (index >= this.middleware.length) {
32
- // End of middleware chain, apply reducer
33
- return reducer(this.state, action);
34
- }
35
- const middlewareFn = this.middleware[index];
36
- return middlewareFn(this.state, action, () => applyMiddleware(index + 1));
37
- };
38
- this.state = applyMiddleware(0);
39
- // Notify listeners if state changed
40
- if (this.state !== prevState) {
41
- for (const listener of this.listeners) {
42
- try {
43
- listener(this.state, prevState);
44
- }
45
- catch (error) {
46
- console.error('Error in state listener:', error);
47
- }
48
- }
49
- }
50
- }
51
- /**
52
- * Subscribe to state changes
53
- */
54
- subscribe(listener) {
55
- this.listeners.add(listener);
56
- return () => {
57
- this.listeners.delete(listener);
58
- };
59
- }
60
- /**
61
- * Select a value from state using a selector function
62
- */
63
- select(selector) {
64
- return selector(this.state);
65
- }
66
- /**
67
- * Subscribe to changes in a selected value
68
- */
69
- subscribeToSelector(selector, listener, equalityFn = Object.is) {
70
- let currentValue = selector(this.state);
71
- return this.subscribe((state, prevState) => {
72
- const newValue = selector(state);
73
- const prevValue = selector(prevState);
74
- if (!equalityFn(newValue, currentValue)) {
75
- const oldValue = currentValue;
76
- currentValue = newValue;
77
- listener(newValue, oldValue);
78
- }
79
- });
80
- }
81
- /**
82
- * Add middleware to the store
83
- */
84
- addMiddleware(middleware) {
85
- this.middleware.push(middleware);
86
- }
87
- /**
88
- * Replace the entire state (useful for hydration)
89
- */
90
- replaceState(newState) {
91
- const prevState = this.state;
92
- this.state = newState;
93
- for (const listener of this.listeners) {
94
- try {
95
- listener(this.state, prevState);
96
- }
97
- catch (error) {
98
- console.error('Error in state listener:', error);
99
- }
100
- }
101
- }
102
- /**
103
- * Reset to initial state
104
- */
105
- reset() {
106
- this.replaceState(createInitialState());
107
- }
108
- }
109
- // ============================================================================
110
- // Global store instance
111
- // ============================================================================
112
- let globalStore = null;
113
- /**
114
- * Get the global store instance
115
- */
116
- export function getStore() {
117
- if (!globalStore) {
118
- globalStore = new Store();
119
- }
120
- return globalStore;
121
- }
122
- /**
123
- * Set the global store instance
124
- */
125
- export function setStore(store) {
126
- globalStore = store;
127
- }
128
- /**
129
- * Create a new store instance
130
- */
131
- export function createStore(options) {
132
- return new Store(options);
133
- }
134
- // ============================================================================
135
- // Convenience functions using global store
136
- // ============================================================================
137
- /**
138
- * Get current state from global store
139
- */
140
- export function getState() {
141
- return getStore().getState();
142
- }
143
- /**
144
- * Dispatch action to global store
145
- */
146
- export function dispatch(action) {
147
- getStore().dispatch(action);
148
- }
149
- /**
150
- * Subscribe to global store
151
- */
152
- export function subscribe(listener) {
153
- return getStore().subscribe(listener);
154
- }
155
- /**
156
- * Select from global store
157
- */
158
- export function select(selector) {
159
- return getStore().select(selector);
160
- }
161
- //# sourceMappingURL=store.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/state/store.ts"],"names":[],"mappings":"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"}