openhorse 0.1.5

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 (587) hide show
  1. package/README.md +460 -0
  2. package/bin/openhorse +56 -0
  3. package/dist/agents/coder.d.ts +12 -0
  4. package/dist/agents/coder.d.ts.map +1 -0
  5. package/dist/agents/coder.js +48 -0
  6. package/dist/agents/coder.js.map +1 -0
  7. package/dist/agents/leader.d.ts +12 -0
  8. package/dist/agents/leader.d.ts.map +1 -0
  9. package/dist/agents/leader.js +49 -0
  10. package/dist/agents/leader.js.map +1 -0
  11. package/dist/agents/router.d.ts +59 -0
  12. package/dist/agents/router.d.ts.map +1 -0
  13. package/dist/agents/router.js +193 -0
  14. package/dist/agents/router.js.map +1 -0
  15. package/dist/cli-ink.d.ts +7 -0
  16. package/dist/cli-ink.d.ts.map +1 -0
  17. package/dist/cli-ink.js +135 -0
  18. package/dist/cli-ink.js.map +1 -0
  19. package/dist/cli.d.ts +7 -0
  20. package/dist/cli.d.ts.map +1 -0
  21. package/dist/cli.js +638 -0
  22. package/dist/cli.js.map +1 -0
  23. package/dist/commands/index.d.ts +12 -0
  24. package/dist/commands/index.d.ts.map +1 -0
  25. package/dist/commands/index.js +1095 -0
  26. package/dist/commands/index.js.map +1 -0
  27. package/dist/commands/parser.d.ts +26 -0
  28. package/dist/commands/parser.d.ts.map +1 -0
  29. package/dist/commands/parser.js +61 -0
  30. package/dist/commands/parser.js.map +1 -0
  31. package/dist/commands/types.d.ts +61 -0
  32. package/dist/commands/types.d.ts.map +1 -0
  33. package/dist/commands/types.js +32 -0
  34. package/dist/commands/types.js.map +1 -0
  35. package/dist/core/agent.d.ts +66 -0
  36. package/dist/core/agent.d.ts.map +1 -0
  37. package/dist/core/agent.js +55 -0
  38. package/dist/core/agent.js.map +1 -0
  39. package/dist/core/brain.d.ts +41 -0
  40. package/dist/core/brain.d.ts.map +1 -0
  41. package/dist/core/brain.js +92 -0
  42. package/dist/core/brain.js.map +1 -0
  43. package/dist/core/cost-tracker.d.ts +107 -0
  44. package/dist/core/cost-tracker.d.ts.map +1 -0
  45. package/dist/core/cost-tracker.js +199 -0
  46. package/dist/core/cost-tracker.js.map +1 -0
  47. package/dist/core/strategy-tracker.d.ts +61 -0
  48. package/dist/core/strategy-tracker.d.ts.map +1 -0
  49. package/dist/core/strategy-tracker.js +124 -0
  50. package/dist/core/strategy-tracker.js.map +1 -0
  51. package/dist/framework/index.d.ts +20 -0
  52. package/dist/framework/index.d.ts.map +1 -0
  53. package/dist/framework/index.js +29 -0
  54. package/dist/framework/index.js.map +1 -0
  55. package/dist/framework/prompt.d.ts +40 -0
  56. package/dist/framework/prompt.d.ts.map +1 -0
  57. package/dist/framework/prompt.js +112 -0
  58. package/dist/framework/prompt.js.map +1 -0
  59. package/dist/framework/query.d.ts +86 -0
  60. package/dist/framework/query.d.ts.map +1 -0
  61. package/dist/framework/query.js +177 -0
  62. package/dist/framework/query.js.map +1 -0
  63. package/dist/framework/store.d.ts +64 -0
  64. package/dist/framework/store.d.ts.map +1 -0
  65. package/dist/framework/store.js +78 -0
  66. package/dist/framework/store.js.map +1 -0
  67. package/dist/framework/tool-state.d.ts +22 -0
  68. package/dist/framework/tool-state.d.ts.map +1 -0
  69. package/dist/framework/tool-state.js +40 -0
  70. package/dist/framework/tool-state.js.map +1 -0
  71. package/dist/framework/tool.d.ts +88 -0
  72. package/dist/framework/tool.d.ts.map +1 -0
  73. package/dist/framework/tool.js +60 -0
  74. package/dist/framework/tool.js.map +1 -0
  75. package/dist/harness/harness.d.ts +96 -0
  76. package/dist/harness/harness.d.ts.map +1 -0
  77. package/dist/harness/harness.js +224 -0
  78. package/dist/harness/harness.js.map +1 -0
  79. package/dist/harness/safety.d.ts +89 -0
  80. package/dist/harness/safety.d.ts.map +1 -0
  81. package/dist/harness/safety.js +178 -0
  82. package/dist/harness/safety.js.map +1 -0
  83. package/dist/index.d.ts +30 -0
  84. package/dist/index.d.ts.map +1 -0
  85. package/dist/index.js +57 -0
  86. package/dist/index.js.map +1 -0
  87. package/dist/init.d.ts +178 -0
  88. package/dist/init.d.ts.map +1 -0
  89. package/dist/init.js +473 -0
  90. package/dist/init.js.map +1 -0
  91. package/dist/ink/bidi.d.ts +16 -0
  92. package/dist/ink/bidi.d.ts.map +1 -0
  93. package/dist/ink/bidi.js +124 -0
  94. package/dist/ink/bidi.js.map +1 -0
  95. package/dist/ink/clearTerminal.d.ts +14 -0
  96. package/dist/ink/clearTerminal.d.ts.map +1 -0
  97. package/dist/ink/clearTerminal.js +63 -0
  98. package/dist/ink/clearTerminal.js.map +1 -0
  99. package/dist/ink/colorize.d.ts +17 -0
  100. package/dist/ink/colorize.d.ts.map +1 -0
  101. package/dist/ink/colorize.js +208 -0
  102. package/dist/ink/colorize.js.map +1 -0
  103. package/dist/ink/components/App.d.ts +73 -0
  104. package/dist/ink/components/App.d.ts.map +1 -0
  105. package/dist/ink/components/App.js +646 -0
  106. package/dist/ink/components/App.js.map +1 -0
  107. package/dist/ink/components/AppContext.d.ts +12 -0
  108. package/dist/ink/components/AppContext.d.ts.map +1 -0
  109. package/dist/ink/components/AppContext.js +14 -0
  110. package/dist/ink/components/AppContext.js.map +1 -0
  111. package/dist/ink/components/Box.d.ts +44 -0
  112. package/dist/ink/components/Box.d.ts.map +1 -0
  113. package/dist/ink/components/Box.js +191 -0
  114. package/dist/ink/components/Box.js.map +1 -0
  115. package/dist/ink/components/ClockContext.d.ts +9 -0
  116. package/dist/ink/components/ClockContext.d.ts.map +1 -0
  117. package/dist/ink/components/ClockContext.js +146 -0
  118. package/dist/ink/components/ClockContext.js.map +1 -0
  119. package/dist/ink/components/CursorDeclarationContext.d.ts +23 -0
  120. package/dist/ink/components/CursorDeclarationContext.d.ts.map +1 -0
  121. package/dist/ink/components/CursorDeclarationContext.js +6 -0
  122. package/dist/ink/components/CursorDeclarationContext.js.map +1 -0
  123. package/dist/ink/components/ErrorOverview.d.ts +6 -0
  124. package/dist/ink/components/ErrorOverview.d.ts.map +1 -0
  125. package/dist/ink/components/ErrorOverview.js +27 -0
  126. package/dist/ink/components/ErrorOverview.js.map +1 -0
  127. package/dist/ink/components/Newline.d.ts +13 -0
  128. package/dist/ink/components/Newline.d.ts.map +1 -0
  129. package/dist/ink/components/Newline.js +36 -0
  130. package/dist/ink/components/Newline.js.map +1 -0
  131. package/dist/ink/components/NoSelect.d.ts +20 -0
  132. package/dist/ink/components/NoSelect.d.ts.map +1 -0
  133. package/dist/ink/components/NoSelect.js +63 -0
  134. package/dist/ink/components/NoSelect.js.map +1 -0
  135. package/dist/ink/components/RawAnsi.d.ts +17 -0
  136. package/dist/ink/components/RawAnsi.d.ts.map +1 -0
  137. package/dist/ink/components/RawAnsi.js +52 -0
  138. package/dist/ink/components/RawAnsi.js.map +1 -0
  139. package/dist/ink/components/Spacer.d.ts +6 -0
  140. package/dist/ink/components/Spacer.d.ts.map +1 -0
  141. package/dist/ink/components/Spacer.js +26 -0
  142. package/dist/ink/components/Spacer.js.map +1 -0
  143. package/dist/ink/components/StdinContext.d.ts +28 -0
  144. package/dist/ink/components/StdinContext.d.ts.map +1 -0
  145. package/dist/ink/components/StdinContext.js +19 -0
  146. package/dist/ink/components/StdinContext.js.map +1 -0
  147. package/dist/ink/components/TerminalFocusContext.d.ts +10 -0
  148. package/dist/ink/components/TerminalFocusContext.d.ts.map +1 -0
  149. package/dist/ink/components/TerminalFocusContext.js +81 -0
  150. package/dist/ink/components/TerminalFocusContext.js.map +1 -0
  151. package/dist/ink/components/TerminalSizeContext.d.ts +6 -0
  152. package/dist/ink/components/TerminalSizeContext.d.ts.map +1 -0
  153. package/dist/ink/components/TerminalSizeContext.js +6 -0
  154. package/dist/ink/components/TerminalSizeContext.js.map +1 -0
  155. package/dist/ink/components/Text.d.ts +56 -0
  156. package/dist/ink/components/Text.d.ts.map +1 -0
  157. package/dist/ink/components/Text.js +201 -0
  158. package/dist/ink/components/Text.js.map +1 -0
  159. package/dist/ink/constants.d.ts +2 -0
  160. package/dist/ink/constants.d.ts.map +1 -0
  161. package/dist/ink/constants.js +6 -0
  162. package/dist/ink/constants.js.map +1 -0
  163. package/dist/ink/devtools.d.ts +3 -0
  164. package/dist/ink/devtools.d.ts.map +1 -0
  165. package/dist/ink/devtools.js +5 -0
  166. package/dist/ink/devtools.js.map +1 -0
  167. package/dist/ink/dom.d.ts +77 -0
  168. package/dist/ink/dom.d.ts.map +1 -0
  169. package/dist/ink/dom.js +322 -0
  170. package/dist/ink/dom.js.map +1 -0
  171. package/dist/ink/events/click-event.d.ts +32 -0
  172. package/dist/ink/events/click-event.d.ts.map +1 -0
  173. package/dist/ink/events/click-event.js +30 -0
  174. package/dist/ink/events/click-event.js.map +1 -0
  175. package/dist/ink/events/dispatcher.d.ts +41 -0
  176. package/dist/ink/events/dispatcher.d.ts.map +1 -0
  177. package/dist/ink/events/dispatcher.js +181 -0
  178. package/dist/ink/events/dispatcher.js.map +1 -0
  179. package/dist/ink/events/emitter.d.ts +6 -0
  180. package/dist/ink/events/emitter.d.ts.map +1 -0
  181. package/dist/ink/events/emitter.js +36 -0
  182. package/dist/ink/events/emitter.js.map +1 -0
  183. package/dist/ink/events/event-handlers.d.ts +47 -0
  184. package/dist/ink/events/event-handlers.d.ts.map +1 -0
  185. package/dist/ink/events/event-handlers.js +34 -0
  186. package/dist/ink/events/event-handlers.js.map +1 -0
  187. package/dist/ink/events/event.d.ts +6 -0
  188. package/dist/ink/events/event.d.ts.map +1 -0
  189. package/dist/ink/events/event.js +16 -0
  190. package/dist/ink/events/event.js.map +1 -0
  191. package/dist/ink/events/focus-event.d.ts +14 -0
  192. package/dist/ink/events/focus-event.d.ts.map +1 -0
  193. package/dist/ink/events/focus-event.js +20 -0
  194. package/dist/ink/events/focus-event.js.map +1 -0
  195. package/dist/ink/events/input-event.d.ts +31 -0
  196. package/dist/ink/events/input-event.d.ts.map +1 -0
  197. package/dist/ink/events/input-event.js +163 -0
  198. package/dist/ink/events/input-event.js.map +1 -0
  199. package/dist/ink/events/keyboard-event.d.ts +20 -0
  200. package/dist/ink/events/keyboard-event.d.ts.map +1 -0
  201. package/dist/ink/events/keyboard-event.js +44 -0
  202. package/dist/ink/events/keyboard-event.js.map +1 -0
  203. package/dist/ink/events/terminal-event.d.ts +55 -0
  204. package/dist/ink/events/terminal-event.d.ts.map +1 -0
  205. package/dist/ink/events/terminal-event.js +79 -0
  206. package/dist/ink/events/terminal-event.js.map +1 -0
  207. package/dist/ink/events/terminal-focus-event.d.ts +14 -0
  208. package/dist/ink/events/terminal-focus-event.d.ts.map +1 -0
  209. package/dist/ink/events/terminal-focus-event.js +19 -0
  210. package/dist/ink/events/terminal-focus-event.js.map +1 -0
  211. package/dist/ink/focus.d.ts +44 -0
  212. package/dist/ink/focus.d.ts.map +1 -0
  213. package/dist/ink/focus.js +164 -0
  214. package/dist/ink/focus.js.map +1 -0
  215. package/dist/ink/frame.d.ts +95 -0
  216. package/dist/ink/frame.d.ts.map +1 -0
  217. package/dist/ink/frame.js +35 -0
  218. package/dist/ink/frame.js.map +1 -0
  219. package/dist/ink/get-max-width.d.ts +18 -0
  220. package/dist/ink/get-max-width.d.ts.map +1 -0
  221. package/dist/ink/get-max-width.js +26 -0
  222. package/dist/ink/get-max-width.js.map +1 -0
  223. package/dist/ink/hit-test.d.ts +34 -0
  224. package/dist/ink/hit-test.d.ts.map +1 -0
  225. package/dist/ink/hit-test.js +119 -0
  226. package/dist/ink/hit-test.js.map +1 -0
  227. package/dist/ink/hooks/use-animation-frame.d.ts +27 -0
  228. package/dist/ink/hooks/use-animation-frame.d.ts.map +1 -0
  229. package/dist/ink/hooks/use-animation-frame.js +52 -0
  230. package/dist/ink/hooks/use-animation-frame.js.map +1 -0
  231. package/dist/ink/hooks/use-app.d.ts +6 -0
  232. package/dist/ink/hooks/use-app.d.ts.map +1 -0
  233. package/dist/ink/hooks/use-app.js +13 -0
  234. package/dist/ink/hooks/use-app.js.map +1 -0
  235. package/dist/ink/hooks/use-declared-cursor.d.ts +27 -0
  236. package/dist/ink/hooks/use-declared-cursor.d.ts.map +1 -0
  237. package/dist/ink/hooks/use-declared-cursor.js +67 -0
  238. package/dist/ink/hooks/use-declared-cursor.js.map +1 -0
  239. package/dist/ink/hooks/use-input.d.ts +38 -0
  240. package/dist/ink/hooks/use-input.d.ts.map +1 -0
  241. package/dist/ink/hooks/use-input.js +86 -0
  242. package/dist/ink/hooks/use-input.js.map +1 -0
  243. package/dist/ink/hooks/use-interval.d.ts +19 -0
  244. package/dist/ink/hooks/use-interval.d.ts.map +1 -0
  245. package/dist/ink/hooks/use-interval.js +59 -0
  246. package/dist/ink/hooks/use-interval.js.map +1 -0
  247. package/dist/ink/hooks/use-search-highlight.d.ts +31 -0
  248. package/dist/ink/hooks/use-search-highlight.d.ts.map +1 -0
  249. package/dist/ink/hooks/use-search-highlight.js +39 -0
  250. package/dist/ink/hooks/use-search-highlight.js.map +1 -0
  251. package/dist/ink/hooks/use-selection.d.ts +40 -0
  252. package/dist/ink/hooks/use-selection.d.ts.map +1 -0
  253. package/dist/ink/hooks/use-selection.js +68 -0
  254. package/dist/ink/hooks/use-selection.js.map +1 -0
  255. package/dist/ink/hooks/use-stdin.d.ts +6 -0
  256. package/dist/ink/hooks/use-stdin.d.ts.map +1 -0
  257. package/dist/ink/hooks/use-stdin.js +13 -0
  258. package/dist/ink/hooks/use-stdin.js.map +1 -0
  259. package/dist/ink/hooks/use-tab-status.d.ts +14 -0
  260. package/dist/ink/hooks/use-tab-status.d.ts.map +1 -0
  261. package/dist/ink/hooks/use-tab-status.js +61 -0
  262. package/dist/ink/hooks/use-tab-status.js.map +1 -0
  263. package/dist/ink/hooks/use-terminal-focus.d.ts +11 -0
  264. package/dist/ink/hooks/use-terminal-focus.d.ts.map +1 -0
  265. package/dist/ink/hooks/use-terminal-focus.js +22 -0
  266. package/dist/ink/hooks/use-terminal-focus.js.map +1 -0
  267. package/dist/ink/hooks/use-terminal-title.d.ts +13 -0
  268. package/dist/ink/hooks/use-terminal-title.d.ts.map +1 -0
  269. package/dist/ink/hooks/use-terminal-title.js +36 -0
  270. package/dist/ink/hooks/use-terminal-title.js.map +1 -0
  271. package/dist/ink/hooks/use-terminal-viewport.d.ts +30 -0
  272. package/dist/ink/hooks/use-terminal-viewport.d.ts.map +1 -0
  273. package/dist/ink/hooks/use-terminal-viewport.js +81 -0
  274. package/dist/ink/hooks/use-terminal-viewport.js.map +1 -0
  275. package/dist/ink/index.d.ts +54 -0
  276. package/dist/ink/index.d.ts.map +1 -0
  277. package/dist/ink/index.js +111 -0
  278. package/dist/ink/index.js.map +1 -0
  279. package/dist/ink/ink.d.ts +371 -0
  280. package/dist/ink/ink.d.ts.map +1 -0
  281. package/dist/ink/ink.js +1686 -0
  282. package/dist/ink/ink.js.map +1 -0
  283. package/dist/ink/instances.d.ts +4 -0
  284. package/dist/ink/instances.d.ts.map +1 -0
  285. package/dist/ink/instances.js +10 -0
  286. package/dist/ink/instances.js.map +1 -0
  287. package/dist/ink/line-width-cache.d.ts +2 -0
  288. package/dist/ink/line-width-cache.d.ts.map +1 -0
  289. package/dist/ink/line-width-cache.js +23 -0
  290. package/dist/ink/line-width-cache.js.map +1 -0
  291. package/dist/ink/log-update.d.ts +18 -0
  292. package/dist/ink/log-update.d.ts.map +1 -0
  293. package/dist/ink/log-update.js +637 -0
  294. package/dist/ink/log-update.js.map +1 -0
  295. package/dist/ink/measure-element.d.ts +17 -0
  296. package/dist/ink/measure-element.d.ts.map +1 -0
  297. package/dist/ink/measure-element.js +11 -0
  298. package/dist/ink/measure-element.js.map +1 -0
  299. package/dist/ink/measure-text.d.ts +7 -0
  300. package/dist/ink/measure-text.d.ts.map +1 -0
  301. package/dist/ink/measure-text.js +38 -0
  302. package/dist/ink/measure-text.js.map +1 -0
  303. package/dist/ink/node-cache.d.ts +21 -0
  304. package/dist/ink/node-cache.d.ts.map +1 -0
  305. package/dist/ink/node-cache.js +36 -0
  306. package/dist/ink/node-cache.js.map +1 -0
  307. package/dist/ink/optimizer.d.ts +16 -0
  308. package/dist/ink/optimizer.d.ts.map +1 -0
  309. package/dist/ink/optimizer.js +85 -0
  310. package/dist/ink/optimizer.js.map +1 -0
  311. package/dist/ink/output.d.ts +120 -0
  312. package/dist/ink/output.d.ts.map +1 -0
  313. package/dist/ink/output.js +559 -0
  314. package/dist/ink/output.js.map +1 -0
  315. package/dist/ink/parse-keypress.d.ts +112 -0
  316. package/dist/ink/parse-keypress.d.ts.map +1 -0
  317. package/dist/ink/parse-keypress.js +719 -0
  318. package/dist/ink/parse-keypress.js.map +1 -0
  319. package/dist/ink/parse-keypress.test.d.ts +2 -0
  320. package/dist/ink/parse-keypress.test.d.ts.map +1 -0
  321. package/dist/ink/parse-keypress.test.js +37 -0
  322. package/dist/ink/parse-keypress.test.js.map +1 -0
  323. package/dist/ink/reconciler.d.ts +12 -0
  324. package/dist/ink/reconciler.d.ts.map +1 -0
  325. package/dist/ink/reconciler.js +456 -0
  326. package/dist/ink/reconciler.js.map +1 -0
  327. package/dist/ink/render-border.d.ts +25 -0
  328. package/dist/ink/render-border.d.ts.map +1 -0
  329. package/dist/ink/render-border.js +141 -0
  330. package/dist/ink/render-border.js.map +1 -0
  331. package/dist/ink/render-node-to-output.d.ts +46 -0
  332. package/dist/ink/render-node-to-output.d.ts.map +1 -0
  333. package/dist/ink/render-node-to-output.js +1257 -0
  334. package/dist/ink/render-node-to-output.js.map +1 -0
  335. package/dist/ink/render-to-screen.d.ts +47 -0
  336. package/dist/ink/render-to-screen.d.ts.map +1 -0
  337. package/dist/ink/render-to-screen.js +213 -0
  338. package/dist/ink/render-to-screen.js.map +1 -0
  339. package/dist/ink/renderer.d.ts +15 -0
  340. package/dist/ink/renderer.d.ts.map +1 -0
  341. package/dist/ink/renderer.js +169 -0
  342. package/dist/ink/renderer.js.map +1 -0
  343. package/dist/ink/root.d.ts +75 -0
  344. package/dist/ink/root.d.ts.map +1 -0
  345. package/dist/ink/root.js +89 -0
  346. package/dist/ink/root.js.map +1 -0
  347. package/dist/ink/screen.d.ts +270 -0
  348. package/dist/ink/screen.d.ts.map +1 -0
  349. package/dist/ink/screen.js +1194 -0
  350. package/dist/ink/screen.js.map +1 -0
  351. package/dist/ink/searchHighlight.d.ts +21 -0
  352. package/dist/ink/searchHighlight.d.ts.map +1 -0
  353. package/dist/ink/searchHighlight.js +82 -0
  354. package/dist/ink/searchHighlight.js.map +1 -0
  355. package/dist/ink/selection.d.ts +230 -0
  356. package/dist/ink/selection.d.ts.map +1 -0
  357. package/dist/ink/selection.js +814 -0
  358. package/dist/ink/selection.js.map +1 -0
  359. package/dist/ink/squash-text-nodes.d.ts +23 -0
  360. package/dist/ink/squash-text-nodes.d.ts.map +1 -0
  361. package/dist/ink/squash-text-nodes.js +60 -0
  362. package/dist/ink/squash-text-nodes.js.map +1 -0
  363. package/dist/ink/stringWidth.d.ts +2 -0
  364. package/dist/ink/stringWidth.d.ts.map +1 -0
  365. package/dist/ink/stringWidth.js +207 -0
  366. package/dist/ink/stringWidth.js.map +1 -0
  367. package/dist/ink/styles.d.ts +307 -0
  368. package/dist/ink/styles.d.ts.map +1 -0
  369. package/dist/ink/styles.js +302 -0
  370. package/dist/ink/styles.js.map +1 -0
  371. package/dist/ink/supports-hyperlinks.d.ts +14 -0
  372. package/dist/ink/supports-hyperlinks.d.ts.map +1 -0
  373. package/dist/ink/supports-hyperlinks.js +48 -0
  374. package/dist/ink/supports-hyperlinks.js.map +1 -0
  375. package/dist/ink/tabstops.d.ts +2 -0
  376. package/dist/ink/tabstops.d.ts.map +1 -0
  377. package/dist/ink/tabstops.js +43 -0
  378. package/dist/ink/tabstops.js.map +1 -0
  379. package/dist/ink/terminal-focus-state.d.ts +7 -0
  380. package/dist/ink/terminal-focus-state.d.ts.map +1 -0
  381. package/dist/ink/terminal-focus-state.js +43 -0
  382. package/dist/ink/terminal-focus-state.js.map +1 -0
  383. package/dist/ink/terminal-querier.d.ts +130 -0
  384. package/dist/ink/terminal-querier.d.ts.map +1 -0
  385. package/dist/ink/terminal-querier.js +184 -0
  386. package/dist/ink/terminal-querier.js.map +1 -0
  387. package/dist/ink/terminal.d.ts +56 -0
  388. package/dist/ink/terminal.d.ts.map +1 -0
  389. package/dist/ink/terminal.js +249 -0
  390. package/dist/ink/terminal.js.map +1 -0
  391. package/dist/ink/termio/csi.d.ts +166 -0
  392. package/dist/ink/termio/csi.d.ts.map +1 -0
  393. package/dist/ink/termio/csi.js +285 -0
  394. package/dist/ink/termio/csi.js.map +1 -0
  395. package/dist/ink/termio/dec.d.ts +38 -0
  396. package/dist/ink/termio/dec.d.ts.map +1 -0
  397. package/dist/ink/termio/dec.js +59 -0
  398. package/dist/ink/termio/dec.js.map +1 -0
  399. package/dist/ink/termio.d.ts +25 -0
  400. package/dist/ink/termio.d.ts.map +1 -0
  401. package/dist/ink/termio.js +32 -0
  402. package/dist/ink/termio.js.map +1 -0
  403. package/dist/ink/useTerminalNotification.d.ts +27 -0
  404. package/dist/ink/useTerminalNotification.d.ts.map +1 -0
  405. package/dist/ink/useTerminalNotification.js +62 -0
  406. package/dist/ink/useTerminalNotification.js.map +1 -0
  407. package/dist/ink/warn.d.ts +2 -0
  408. package/dist/ink/warn.d.ts.map +1 -0
  409. package/dist/ink/warn.js +14 -0
  410. package/dist/ink/warn.js.map +1 -0
  411. package/dist/ink/widest-line.d.ts +2 -0
  412. package/dist/ink/widest-line.d.ts.map +1 -0
  413. package/dist/ink/widest-line.js +18 -0
  414. package/dist/ink/widest-line.js.map +1 -0
  415. package/dist/ink/wrap-text.d.ts +3 -0
  416. package/dist/ink/wrap-text.d.ts.map +1 -0
  417. package/dist/ink/wrap-text.js +61 -0
  418. package/dist/ink/wrap-text.js.map +1 -0
  419. package/dist/ink/wrapAnsi.d.ts +8 -0
  420. package/dist/ink/wrapAnsi.d.ts.map +1 -0
  421. package/dist/ink/wrapAnsi.js +13 -0
  422. package/dist/ink/wrapAnsi.js.map +1 -0
  423. package/dist/memory/embeddings.d.ts +33 -0
  424. package/dist/memory/embeddings.d.ts.map +1 -0
  425. package/dist/memory/embeddings.js +123 -0
  426. package/dist/memory/embeddings.js.map +1 -0
  427. package/dist/memory/index.d.ts +14 -0
  428. package/dist/memory/index.d.ts.map +1 -0
  429. package/dist/memory/index.js +31 -0
  430. package/dist/memory/index.js.map +1 -0
  431. package/dist/memory/prompts.d.ts +12 -0
  432. package/dist/memory/prompts.d.ts.map +1 -0
  433. package/dist/memory/prompts.js +117 -0
  434. package/dist/memory/prompts.js.map +1 -0
  435. package/dist/memory/semantic-search.d.ts +45 -0
  436. package/dist/memory/semantic-search.d.ts.map +1 -0
  437. package/dist/memory/semantic-search.js +112 -0
  438. package/dist/memory/semantic-search.js.map +1 -0
  439. package/dist/memory/storage.d.ts +79 -0
  440. package/dist/memory/storage.d.ts.map +1 -0
  441. package/dist/memory/storage.js +285 -0
  442. package/dist/memory/storage.js.map +1 -0
  443. package/dist/memory/store.d.ts +103 -0
  444. package/dist/memory/store.d.ts.map +1 -0
  445. package/dist/memory/store.js +226 -0
  446. package/dist/memory/store.js.map +1 -0
  447. package/dist/memory/types.d.ts +40 -0
  448. package/dist/memory/types.d.ts.map +1 -0
  449. package/dist/memory/types.js +71 -0
  450. package/dist/memory/types.js.map +1 -0
  451. package/dist/memory/validation.d.ts +28 -0
  452. package/dist/memory/validation.d.ts.map +1 -0
  453. package/dist/memory/validation.js +147 -0
  454. package/dist/memory/validation.js.map +1 -0
  455. package/dist/memory/vector-store.d.ts +49 -0
  456. package/dist/memory/vector-store.d.ts.map +1 -0
  457. package/dist/memory/vector-store.js +259 -0
  458. package/dist/memory/vector-store.js.map +1 -0
  459. package/dist/screens/REPL.d.ts +21 -0
  460. package/dist/screens/REPL.d.ts.map +1 -0
  461. package/dist/screens/REPL.js +139 -0
  462. package/dist/screens/REPL.js.map +1 -0
  463. package/dist/services/agent-runner.d.ts +68 -0
  464. package/dist/services/agent-runner.d.ts.map +1 -0
  465. package/dist/services/agent-runner.js +186 -0
  466. package/dist/services/agent-runner.js.map +1 -0
  467. package/dist/services/atomic-write.d.ts +12 -0
  468. package/dist/services/atomic-write.d.ts.map +1 -0
  469. package/dist/services/atomic-write.js +27 -0
  470. package/dist/services/atomic-write.js.map +1 -0
  471. package/dist/services/config-dir.d.ts +55 -0
  472. package/dist/services/config-dir.d.ts.map +1 -0
  473. package/dist/services/config-dir.js +136 -0
  474. package/dist/services/config-dir.js.map +1 -0
  475. package/dist/services/config.d.ts +54 -0
  476. package/dist/services/config.d.ts.map +1 -0
  477. package/dist/services/config.js +98 -0
  478. package/dist/services/config.js.map +1 -0
  479. package/dist/services/file-glob.d.ts +26 -0
  480. package/dist/services/file-glob.d.ts.map +1 -0
  481. package/dist/services/file-glob.js +134 -0
  482. package/dist/services/file-glob.js.map +1 -0
  483. package/dist/services/global-config.d.ts +109 -0
  484. package/dist/services/global-config.d.ts.map +1 -0
  485. package/dist/services/global-config.js +211 -0
  486. package/dist/services/global-config.js.map +1 -0
  487. package/dist/services/llm.d.ts +139 -0
  488. package/dist/services/llm.d.ts.map +1 -0
  489. package/dist/services/llm.js +376 -0
  490. package/dist/services/llm.js.map +1 -0
  491. package/dist/services/memory.d.ts +39 -0
  492. package/dist/services/memory.d.ts.map +1 -0
  493. package/dist/services/memory.js +88 -0
  494. package/dist/services/memory.js.map +1 -0
  495. package/dist/services/session-storage.d.ts +136 -0
  496. package/dist/services/session-storage.d.ts.map +1 -0
  497. package/dist/services/session-storage.js +304 -0
  498. package/dist/services/session-storage.js.map +1 -0
  499. package/dist/services/task-manager.d.ts +154 -0
  500. package/dist/services/task-manager.d.ts.map +1 -0
  501. package/dist/services/task-manager.js +288 -0
  502. package/dist/services/task-manager.js.map +1 -0
  503. package/dist/services/yaml-config.d.ts +57 -0
  504. package/dist/services/yaml-config.d.ts.map +1 -0
  505. package/dist/services/yaml-config.js +176 -0
  506. package/dist/services/yaml-config.js.map +1 -0
  507. package/dist/skills/discovery.d.ts +22 -0
  508. package/dist/skills/discovery.d.ts.map +1 -0
  509. package/dist/skills/discovery.js +75 -0
  510. package/dist/skills/discovery.js.map +1 -0
  511. package/dist/skills/index.d.ts +10 -0
  512. package/dist/skills/index.d.ts.map +1 -0
  513. package/dist/skills/index.js +26 -0
  514. package/dist/skills/index.js.map +1 -0
  515. package/dist/skills/loader.d.ts +48 -0
  516. package/dist/skills/loader.d.ts.map +1 -0
  517. package/dist/skills/loader.js +231 -0
  518. package/dist/skills/loader.js.map +1 -0
  519. package/dist/skills/registry.d.ts +37 -0
  520. package/dist/skills/registry.d.ts.map +1 -0
  521. package/dist/skills/registry.js +134 -0
  522. package/dist/skills/registry.js.map +1 -0
  523. package/dist/skills/types.d.ts +89 -0
  524. package/dist/skills/types.d.ts.map +1 -0
  525. package/dist/skills/types.js +24 -0
  526. package/dist/skills/types.js.map +1 -0
  527. package/dist/tools/bash_security.d.ts +64 -0
  528. package/dist/tools/bash_security.d.ts.map +1 -0
  529. package/dist/tools/bash_security.js +291 -0
  530. package/dist/tools/bash_security.js.map +1 -0
  531. package/dist/tools/index.d.ts +23 -0
  532. package/dist/tools/index.d.ts.map +1 -0
  533. package/dist/tools/index.js +965 -0
  534. package/dist/tools/index.js.map +1 -0
  535. package/dist/tools/mcp.d.ts +72 -0
  536. package/dist/tools/mcp.d.ts.map +1 -0
  537. package/dist/tools/mcp.js +422 -0
  538. package/dist/tools/mcp.js.map +1 -0
  539. package/dist/tools/plan.d.ts +18 -0
  540. package/dist/tools/plan.d.ts.map +1 -0
  541. package/dist/tools/plan.js +75 -0
  542. package/dist/tools/plan.js.map +1 -0
  543. package/dist/tools/todo.d.ts +18 -0
  544. package/dist/tools/todo.d.ts.map +1 -0
  545. package/dist/tools/todo.js +153 -0
  546. package/dist/tools/todo.js.map +1 -0
  547. package/dist/tools/web.d.ts +13 -0
  548. package/dist/tools/web.d.ts.map +1 -0
  549. package/dist/tools/web.js +377 -0
  550. package/dist/tools/web.js.map +1 -0
  551. package/dist/ui/box.d.ts +56 -0
  552. package/dist/ui/box.d.ts.map +1 -0
  553. package/dist/ui/box.js +241 -0
  554. package/dist/ui/box.js.map +1 -0
  555. package/dist/ui/command-panel.d.ts +55 -0
  556. package/dist/ui/command-panel.d.ts.map +1 -0
  557. package/dist/ui/command-panel.js +212 -0
  558. package/dist/ui/command-panel.js.map +1 -0
  559. package/dist/ui/file-completion.d.ts +62 -0
  560. package/dist/ui/file-completion.d.ts.map +1 -0
  561. package/dist/ui/file-completion.js +209 -0
  562. package/dist/ui/file-completion.js.map +1 -0
  563. package/dist/ui/markdown.d.ts +12 -0
  564. package/dist/ui/markdown.d.ts.map +1 -0
  565. package/dist/ui/markdown.js +215 -0
  566. package/dist/ui/markdown.js.map +1 -0
  567. package/dist/ui/multiline-input.d.ts +47 -0
  568. package/dist/ui/multiline-input.d.ts.map +1 -0
  569. package/dist/ui/multiline-input.js +94 -0
  570. package/dist/ui/multiline-input.js.map +1 -0
  571. package/dist/ui/status-bar.d.ts +33 -0
  572. package/dist/ui/status-bar.d.ts.map +1 -0
  573. package/dist/ui/status-bar.js +96 -0
  574. package/dist/ui/status-bar.js.map +1 -0
  575. package/dist/ui/stream-markdown.d.ts +35 -0
  576. package/dist/ui/stream-markdown.d.ts.map +1 -0
  577. package/dist/ui/stream-markdown.js +138 -0
  578. package/dist/ui/stream-markdown.js.map +1 -0
  579. package/dist/ui/suggestions.d.ts +35 -0
  580. package/dist/ui/suggestions.d.ts.map +1 -0
  581. package/dist/ui/suggestions.js +118 -0
  582. package/dist/ui/suggestions.js.map +1 -0
  583. package/dist/ui/tool-preview.d.ts +34 -0
  584. package/dist/ui/tool-preview.d.ts.map +1 -0
  585. package/dist/ui/tool-preview.js +128 -0
  586. package/dist/ui/tool-preview.js.map +1 -0
  587. package/package.json +93 -0
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ /**
3
+ * Cross-platform terminal clearing with scrollback support.
4
+ * Detects modern terminals that support ESC[3J for clearing scrollback.
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.clearTerminal = void 0;
8
+ exports.getClearTerminalSequence = getClearTerminalSequence;
9
+ const csi_js_1 = require("./termio/csi.js");
10
+ // HVP (Horizontal Vertical Position) - legacy Windows cursor home
11
+ const CURSOR_HOME_WINDOWS = (0, csi_js_1.csi)(0, 'f');
12
+ function isWindowsTerminal() {
13
+ return process.platform === 'win32' && !!process.env.WT_SESSION;
14
+ }
15
+ function isMintty() {
16
+ // mintty 3.1.5+ sets TERM_PROGRAM to 'mintty'
17
+ if (process.env.TERM_PROGRAM === 'mintty') {
18
+ return true;
19
+ }
20
+ // GitBash/MSYS2/MINGW use mintty and set MSYSTEM
21
+ if (process.platform === 'win32' && process.env.MSYSTEM) {
22
+ return true;
23
+ }
24
+ return false;
25
+ }
26
+ function isModernWindowsTerminal() {
27
+ // Windows Terminal sets WT_SESSION environment variable
28
+ if (isWindowsTerminal()) {
29
+ return true;
30
+ }
31
+ // VS Code integrated terminal on Windows with ConPTY support
32
+ if (process.platform === 'win32' &&
33
+ process.env.TERM_PROGRAM === 'vscode' &&
34
+ process.env.TERM_PROGRAM_VERSION) {
35
+ return true;
36
+ }
37
+ // mintty (GitBash/MSYS2/Cygwin) supports modern escape sequences
38
+ if (isMintty()) {
39
+ return true;
40
+ }
41
+ return false;
42
+ }
43
+ /**
44
+ * Returns the ANSI escape sequence to clear the terminal including scrollback.
45
+ * Automatically detects terminal capabilities.
46
+ */
47
+ function getClearTerminalSequence() {
48
+ if (process.platform === 'win32') {
49
+ if (isModernWindowsTerminal()) {
50
+ return csi_js_1.ERASE_SCREEN + csi_js_1.ERASE_SCROLLBACK + csi_js_1.CURSOR_HOME;
51
+ }
52
+ else {
53
+ // Legacy Windows console - can't clear scrollback
54
+ return csi_js_1.ERASE_SCREEN + CURSOR_HOME_WINDOWS;
55
+ }
56
+ }
57
+ return csi_js_1.ERASE_SCREEN + csi_js_1.ERASE_SCROLLBACK + csi_js_1.CURSOR_HOME;
58
+ }
59
+ /**
60
+ * Clears the terminal screen. On supported terminals, also clears scrollback.
61
+ */
62
+ exports.clearTerminal = getClearTerminalSequence();
63
+ //# sourceMappingURL=clearTerminal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clearTerminal.js","sourceRoot":"","sources":["../../src/ink/clearTerminal.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAuDH,4DAUC;AA/DD,4CAKwB;AAExB,kEAAkE;AAClE,MAAM,mBAAmB,GAAG,IAAA,YAAG,EAAC,CAAC,EAAE,GAAG,CAAC,CAAA;AAEvC,SAAS,iBAAiB;IACxB,OAAO,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAA;AACjE,CAAC;AAED,SAAS,QAAQ;IACf,8CAA8C;IAC9C,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;QAC1C,OAAO,IAAI,CAAA;IACb,CAAC;IACD,iDAAiD;IACjD,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACxD,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,uBAAuB;IAC9B,wDAAwD;IACxD,IAAI,iBAAiB,EAAE,EAAE,CAAC;QACxB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,6DAA6D;IAC7D,IACE,OAAO,CAAC,QAAQ,KAAK,OAAO;QAC5B,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,QAAQ;QACrC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAChC,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,iEAAiE;IACjE,IAAI,QAAQ,EAAE,EAAE,CAAC;QACf,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;GAGG;AACH,SAAgB,wBAAwB;IACtC,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,IAAI,uBAAuB,EAAE,EAAE,CAAC;YAC9B,OAAO,qBAAY,GAAG,yBAAgB,GAAG,oBAAW,CAAA;QACtD,CAAC;aAAM,CAAC;YACN,kDAAkD;YAClD,OAAO,qBAAY,GAAG,mBAAmB,CAAA;QAC3C,CAAC;IACH,CAAC;IACD,OAAO,qBAAY,GAAG,yBAAgB,GAAG,oBAAW,CAAA;AACtD,CAAC;AAED;;GAEG;AACU,QAAA,aAAa,GAAG,wBAAwB,EAAE,CAAA"}
@@ -0,0 +1,17 @@
1
+ import type { Color, TextStyles } from './styles.js';
2
+ export declare const CHALK_BOOSTED_FOR_XTERMJS: boolean;
3
+ export declare const CHALK_CLAMPED_FOR_TMUX: boolean;
4
+ export type ColorType = 'foreground' | 'background';
5
+ export declare const colorize: (str: string, color: string | undefined, type: ColorType) => string;
6
+ /**
7
+ * Apply TextStyles to a string using chalk.
8
+ * This is the inverse of parsing ANSI codes - we generate them from structured styles.
9
+ * Theme resolution happens at component layer, not here.
10
+ */
11
+ export declare function applyTextStyles(text: string, styles: TextStyles): string;
12
+ /**
13
+ * Apply a raw color value to text.
14
+ * Theme resolution should happen at component layer, not here.
15
+ */
16
+ export declare function applyColor(text: string, color: Color | undefined): string;
17
+ //# sourceMappingURL=colorize.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"colorize.d.ts","sourceRoot":"","sources":["../../src/ink/colorize.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AA2DpD,eAAO,MAAM,yBAAyB,SAA8B,CAAA;AACpE,eAAO,MAAM,sBAAsB,SAA2B,CAAA;AAE9D,MAAM,MAAM,SAAS,GAAG,YAAY,GAAG,YAAY,CAAA;AAKnD,eAAO,MAAM,QAAQ,GACnB,KAAK,MAAM,EACX,OAAO,MAAM,GAAG,SAAS,EACzB,MAAM,SAAS,KACd,MAgGF,CAAA;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,MAAM,CA4CxE;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,SAAS,GAAG,MAAM,CAKzE"}
@@ -0,0 +1,208 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.colorize = exports.CHALK_CLAMPED_FOR_TMUX = exports.CHALK_BOOSTED_FOR_XTERMJS = void 0;
7
+ exports.applyTextStyles = applyTextStyles;
8
+ exports.applyColor = applyColor;
9
+ const chalk_1 = __importDefault(require("chalk"));
10
+ /**
11
+ * xterm.js (VS Code, Cursor, code-server, Coder) has supported truecolor
12
+ * since 2017, but code-server/Coder containers often don't set
13
+ * COLORTERM=truecolor. chalk's supports-color doesn't recognize
14
+ * TERM_PROGRAM=vscode (it only knows iTerm.app/Apple_Terminal), so it falls
15
+ * through to the -256color regex → level 2. At level 2, chalk.rgb()
16
+ * downgrades to the nearest 6×6×6 cube color: rgb(215,119,87) (Claude
17
+ * orange) → idx 174 rgb(215,135,135) — washed-out salmon.
18
+ *
19
+ * Gated on level === 2 (not < 3) to respect NO_COLOR / FORCE_COLOR=0 —
20
+ * those yield level 0 and are an explicit "no colors" request. Desktop VS
21
+ * Code sets COLORTERM=truecolor itself, so this is a no-op there (already 3).
22
+ *
23
+ * Must run BEFORE the tmux clamp — if tmux is running inside a VS Code
24
+ * terminal, tmux's passthrough limitation wins and we want level 2.
25
+ */
26
+ function boostChalkLevelForXtermJs() {
27
+ if (process.env.TERM_PROGRAM === 'vscode' && chalk_1.default.level === 2) {
28
+ chalk_1.default.level = 3;
29
+ return true;
30
+ }
31
+ return false;
32
+ }
33
+ /**
34
+ * tmux parses truecolor SGR (\e[48;2;r;g;bm) into its cell buffer correctly,
35
+ * but its client-side emitter only re-emits truecolor to the outer terminal if
36
+ * the outer terminal advertises Tc/RGB capability (via terminal-overrides).
37
+ * Default tmux config doesn't set this, so tmux emits the cell to iTerm2/etc
38
+ * WITHOUT the bg sequence — outer terminal's buffer has bg=default → black on
39
+ * dark profiles. Clamping to level 2 makes chalk emit 256-color (\e[48;5;Nm),
40
+ * which tmux passes through cleanly. grey93 (255) is visually identical to
41
+ * rgb(240,240,240).
42
+ *
43
+ * Users who HAVE set `terminal-overrides ,*:Tc` get a technically-unnecessary
44
+ * downgrade, but the visual difference is imperceptible. Querying
45
+ * `tmux show -gv terminal-overrides` to detect this would add a subprocess on
46
+ * startup — not worth it.
47
+ *
48
+ * $TMUX is a pty-lifecycle env var set by tmux itself; it never comes from
49
+ * globalSettings.env, so reading it here is correct. chalk is a singleton, so
50
+ * this clamps ALL truecolor output (fg+bg+hex) across the entire app.
51
+ */
52
+ function clampChalkLevelForTmux() {
53
+ // bg.ts sets terminal-overrides :Tc before attach, so truecolor passes
54
+ // through — skip the clamp. General escape hatch for anyone who's
55
+ // configured their tmux correctly.
56
+ if (process.env.CLAUDE_CODE_TMUX_TRUECOLOR)
57
+ return false;
58
+ if (process.env.TMUX && chalk_1.default.level > 2) {
59
+ chalk_1.default.level = 2;
60
+ return true;
61
+ }
62
+ return false;
63
+ }
64
+ // Computed once at module load — terminal/tmux environment doesn't change mid-session.
65
+ // Order matters: boost first so the tmux clamp can re-clamp if tmux is running
66
+ // inside a VS Code terminal. Exported for debugging — tree-shaken if unused.
67
+ exports.CHALK_BOOSTED_FOR_XTERMJS = boostChalkLevelForXtermJs();
68
+ exports.CHALK_CLAMPED_FOR_TMUX = clampChalkLevelForTmux();
69
+ const RGB_REGEX = /^rgb\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/;
70
+ const ANSI_REGEX = /^ansi256\(\s?(\d+)\s?\)$/;
71
+ const colorize = (str, color, type) => {
72
+ if (!color) {
73
+ return str;
74
+ }
75
+ if (color.startsWith('ansi:')) {
76
+ const value = color.substring('ansi:'.length);
77
+ switch (value) {
78
+ case 'black':
79
+ return type === 'foreground' ? chalk_1.default.black(str) : chalk_1.default.bgBlack(str);
80
+ case 'red':
81
+ return type === 'foreground' ? chalk_1.default.red(str) : chalk_1.default.bgRed(str);
82
+ case 'green':
83
+ return type === 'foreground' ? chalk_1.default.green(str) : chalk_1.default.bgGreen(str);
84
+ case 'yellow':
85
+ return type === 'foreground' ? chalk_1.default.yellow(str) : chalk_1.default.bgYellow(str);
86
+ case 'blue':
87
+ return type === 'foreground' ? chalk_1.default.blue(str) : chalk_1.default.bgBlue(str);
88
+ case 'magenta':
89
+ return type === 'foreground' ? chalk_1.default.magenta(str) : chalk_1.default.bgMagenta(str);
90
+ case 'cyan':
91
+ return type === 'foreground' ? chalk_1.default.cyan(str) : chalk_1.default.bgCyan(str);
92
+ case 'white':
93
+ return type === 'foreground' ? chalk_1.default.white(str) : chalk_1.default.bgWhite(str);
94
+ case 'blackBright':
95
+ return type === 'foreground'
96
+ ? chalk_1.default.blackBright(str)
97
+ : chalk_1.default.bgBlackBright(str);
98
+ case 'redBright':
99
+ return type === 'foreground'
100
+ ? chalk_1.default.redBright(str)
101
+ : chalk_1.default.bgRedBright(str);
102
+ case 'greenBright':
103
+ return type === 'foreground'
104
+ ? chalk_1.default.greenBright(str)
105
+ : chalk_1.default.bgGreenBright(str);
106
+ case 'yellowBright':
107
+ return type === 'foreground'
108
+ ? chalk_1.default.yellowBright(str)
109
+ : chalk_1.default.bgYellowBright(str);
110
+ case 'blueBright':
111
+ return type === 'foreground'
112
+ ? chalk_1.default.blueBright(str)
113
+ : chalk_1.default.bgBlueBright(str);
114
+ case 'magentaBright':
115
+ return type === 'foreground'
116
+ ? chalk_1.default.magentaBright(str)
117
+ : chalk_1.default.bgMagentaBright(str);
118
+ case 'cyanBright':
119
+ return type === 'foreground'
120
+ ? chalk_1.default.cyanBright(str)
121
+ : chalk_1.default.bgCyanBright(str);
122
+ case 'whiteBright':
123
+ return type === 'foreground'
124
+ ? chalk_1.default.whiteBright(str)
125
+ : chalk_1.default.bgWhiteBright(str);
126
+ }
127
+ }
128
+ if (color.startsWith('#')) {
129
+ return type === 'foreground'
130
+ ? chalk_1.default.hex(color)(str)
131
+ : chalk_1.default.bgHex(color)(str);
132
+ }
133
+ if (color.startsWith('ansi256')) {
134
+ const matches = ANSI_REGEX.exec(color);
135
+ if (!matches) {
136
+ return str;
137
+ }
138
+ const value = Number(matches[1]);
139
+ return type === 'foreground'
140
+ ? chalk_1.default.ansi256(value)(str)
141
+ : chalk_1.default.bgAnsi256(value)(str);
142
+ }
143
+ if (color.startsWith('rgb')) {
144
+ const matches = RGB_REGEX.exec(color);
145
+ if (!matches) {
146
+ return str;
147
+ }
148
+ const firstValue = Number(matches[1]);
149
+ const secondValue = Number(matches[2]);
150
+ const thirdValue = Number(matches[3]);
151
+ return type === 'foreground'
152
+ ? chalk_1.default.rgb(firstValue, secondValue, thirdValue)(str)
153
+ : chalk_1.default.bgRgb(firstValue, secondValue, thirdValue)(str);
154
+ }
155
+ return str;
156
+ };
157
+ exports.colorize = colorize;
158
+ /**
159
+ * Apply TextStyles to a string using chalk.
160
+ * This is the inverse of parsing ANSI codes - we generate them from structured styles.
161
+ * Theme resolution happens at component layer, not here.
162
+ */
163
+ function applyTextStyles(text, styles) {
164
+ let result = text;
165
+ // Apply styles in reverse order of desired nesting.
166
+ // chalk wraps text so later calls become outer wrappers.
167
+ // Desired order (outermost to innermost):
168
+ // background > foreground > text modifiers
169
+ // So we apply: text modifiers first, then foreground, then background last.
170
+ if (styles.inverse) {
171
+ result = chalk_1.default.inverse(result);
172
+ }
173
+ if (styles.strikethrough) {
174
+ result = chalk_1.default.strikethrough(result);
175
+ }
176
+ if (styles.underline) {
177
+ result = chalk_1.default.underline(result);
178
+ }
179
+ if (styles.italic) {
180
+ result = chalk_1.default.italic(result);
181
+ }
182
+ if (styles.bold) {
183
+ result = chalk_1.default.bold(result);
184
+ }
185
+ if (styles.dim) {
186
+ result = chalk_1.default.dim(result);
187
+ }
188
+ if (styles.color) {
189
+ // Color is now always a raw color value (theme resolution happens at component layer)
190
+ result = (0, exports.colorize)(result, styles.color, 'foreground');
191
+ }
192
+ if (styles.backgroundColor) {
193
+ // backgroundColor is now always a raw color value
194
+ result = (0, exports.colorize)(result, styles.backgroundColor, 'background');
195
+ }
196
+ return result;
197
+ }
198
+ /**
199
+ * Apply a raw color value to text.
200
+ * Theme resolution should happen at component layer, not here.
201
+ */
202
+ function applyColor(text, color) {
203
+ if (!color) {
204
+ return text;
205
+ }
206
+ return (0, exports.colorize)(text, color, 'foreground');
207
+ }
208
+ //# sourceMappingURL=colorize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"colorize.js","sourceRoot":"","sources":["../../src/ink/colorize.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,73 @@
1
+ import { PureComponent, type ReactNode } from 'react';
2
+ import { EventEmitter } from '../events/emitter.js';
3
+ import { type ParsedKey, type ParsedMouse } from '../parse-keypress.js';
4
+ import { type SelectionState } from '../selection.js';
5
+ import { TerminalQuerier } from '../terminal-querier.js';
6
+ import { type CursorDeclarationSetter } from './CursorDeclarationContext.js';
7
+ type Props = {
8
+ readonly children: ReactNode;
9
+ readonly stdin: NodeJS.ReadStream;
10
+ readonly stdout: NodeJS.WriteStream;
11
+ readonly stderr: NodeJS.WriteStream;
12
+ readonly exitOnCtrlC: boolean;
13
+ readonly onExit: (error?: Error) => void;
14
+ readonly terminalColumns: number;
15
+ readonly terminalRows: number;
16
+ readonly selection: SelectionState;
17
+ readonly onSelectionChange: () => void;
18
+ readonly onClickAt: (col: number, row: number) => boolean;
19
+ readonly onHoverAt: (col: number, row: number) => void;
20
+ readonly getHyperlinkAt: (col: number, row: number) => string | undefined;
21
+ readonly onOpenHyperlink: (url: string) => void;
22
+ readonly onMultiClick: (col: number, row: number, count: 2 | 3) => void;
23
+ readonly onSelectionDrag: (col: number, row: number) => void;
24
+ readonly onStdinResume?: () => void;
25
+ readonly onCursorDeclaration?: CursorDeclarationSetter;
26
+ readonly dispatchKeyboardEvent: (parsedKey: ParsedKey) => void;
27
+ };
28
+ type State = {
29
+ readonly error?: Error;
30
+ };
31
+ export default class App extends PureComponent<Props, State> {
32
+ static displayName: string;
33
+ static getDerivedStateFromError(error: Error): {
34
+ error: Error;
35
+ };
36
+ state: {
37
+ error: undefined;
38
+ };
39
+ rawModeEnabledCount: number;
40
+ internal_eventEmitter: EventEmitter;
41
+ keyParseState: import("../parse-keypress.js").KeyParseState;
42
+ incompleteEscapeTimer: NodeJS.Timeout | null;
43
+ stdinMode: 'readable' | 'data';
44
+ readonly NORMAL_TIMEOUT = 50;
45
+ readonly PASTE_TIMEOUT = 500;
46
+ querier: TerminalQuerier;
47
+ lastClickTime: number;
48
+ lastClickCol: number;
49
+ lastClickRow: number;
50
+ clickCount: number;
51
+ pendingHyperlinkTimer: ReturnType<typeof setTimeout> | null;
52
+ lastHoverCol: number;
53
+ lastHoverRow: number;
54
+ lastStdinTime: number;
55
+ isRawModeSupported(): boolean;
56
+ render(): any;
57
+ componentDidMount(): void;
58
+ componentWillUnmount(): void;
59
+ componentDidCatch(error: Error): void;
60
+ handleSetRawMode: (isEnabled: boolean) => void;
61
+ flushIncomplete: () => void;
62
+ processInput: (input: string | Buffer | null) => void;
63
+ handleReadable: () => void;
64
+ handleDataChunk: (chunk: string | Buffer) => void;
65
+ handleInput: (input: string | undefined) => void;
66
+ handleExit: (error?: Error) => void;
67
+ handleTerminalFocus: (isFocused: boolean) => void;
68
+ handleSuspend: () => void;
69
+ }
70
+ /** Exported for testing. Mutates app.props.selection and click/hover state. */
71
+ export declare function handleMouseEvent(app: App, m: ParsedMouse): void;
72
+ export {};
73
+ //# sourceMappingURL=App.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../../src/ink/components/App.tsx"],"names":[],"mappings":"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"}