@visulima/tui 1.0.0-alpha.2 → 1.0.0-alpha.21

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 (658) hide show
  1. package/CHANGELOG.md +300 -0
  2. package/LICENSE.md +2490 -69
  3. package/README.md +38 -10
  4. package/dist/components/accordion.d.ts +59 -0
  5. package/dist/components/accordion.js +1 -0
  6. package/dist/components/alert.d.ts +26 -0
  7. package/dist/components/alert.js +1 -0
  8. package/dist/components/animate-presence.d.ts +18 -0
  9. package/dist/components/animate-presence.js +1 -0
  10. package/dist/components/approval-prompt.d.ts +65 -0
  11. package/dist/components/approval-prompt.js +1 -0
  12. package/dist/components/area-chart.d.ts +66 -0
  13. package/dist/components/area-chart.js +1 -0
  14. package/dist/components/badge.d.ts +22 -0
  15. package/dist/components/badge.js +1 -0
  16. package/dist/components/bar-chart.d.ts +67 -0
  17. package/dist/components/bar-chart.js +1 -0
  18. package/dist/components/big-text.d.ts +81 -0
  19. package/dist/components/big-text.js +1 -0
  20. package/dist/components/blink-dot.d.ts +36 -0
  21. package/dist/components/blink-dot.js +1 -0
  22. package/dist/components/box.d.ts +62 -0
  23. package/dist/components/box.js +1 -0
  24. package/dist/components/breadcrumb.d.ts +33 -0
  25. package/dist/components/breadcrumb.js +1 -0
  26. package/dist/components/button.d.ts +45 -0
  27. package/dist/components/button.js +1 -0
  28. package/dist/components/calendar.d.ts +72 -0
  29. package/dist/components/calendar.js +1 -0
  30. package/dist/components/canvas.d.ts +44 -0
  31. package/dist/components/canvas.js +1 -0
  32. package/dist/components/card.d.ts +57 -0
  33. package/dist/components/card.js +1 -0
  34. package/dist/components/checkbox.d.ts +48 -0
  35. package/dist/components/checkbox.js +1 -0
  36. package/dist/components/code.d.ts +48 -0
  37. package/dist/components/code.js +2 -0
  38. package/dist/components/collapsible.d.ts +53 -0
  39. package/dist/components/collapsible.js +1 -0
  40. package/dist/components/command-block.d.ts +47 -0
  41. package/dist/components/command-block.js +4 -0
  42. package/dist/components/command-palette.d.ts +82 -0
  43. package/dist/components/command-palette.js +1 -0
  44. package/dist/components/confirm-dialog.d.ts +75 -0
  45. package/dist/components/confirm-dialog.js +1 -0
  46. package/dist/components/confirm-input.d.ts +38 -0
  47. package/dist/components/confirm-input.js +1 -0
  48. package/dist/components/console-overlay.d.ts +54 -0
  49. package/dist/components/console-overlay.js +1 -0
  50. package/dist/components/content-switcher.d.ts +57 -0
  51. package/dist/components/content-switcher.js +1 -0
  52. package/dist/components/controlled-scroll-view.d.ts +61 -0
  53. package/dist/components/controlled-scroll-view.js +1 -0
  54. package/dist/components/cursor.d.ts +62 -0
  55. package/dist/components/cursor.js +1 -0
  56. package/dist/components/date-picker.d.ts +65 -0
  57. package/dist/components/date-picker.js +1 -0
  58. package/dist/components/definition-list.d.ts +44 -0
  59. package/dist/components/definition-list.js +1 -0
  60. package/dist/components/dialog.d.ts +117 -0
  61. package/dist/components/dialog.js +1 -0
  62. package/dist/components/diff-view.d.ts +85 -0
  63. package/dist/components/diff-view.js +1 -0
  64. package/dist/components/divider.d.ts +49 -0
  65. package/dist/components/divider.js +1 -0
  66. package/dist/components/file-picker-entry.d.ts +104 -0
  67. package/dist/components/file-picker-entry.js +1 -0
  68. package/dist/components/form.d.ts +81 -0
  69. package/dist/components/form.js +1 -0
  70. package/dist/components/gauge.d.ts +87 -0
  71. package/dist/components/gauge.js +1 -0
  72. package/dist/components/gradient.d.ts +42 -0
  73. package/dist/components/gradient.js +1 -0
  74. package/dist/components/heading.d.ts +33 -0
  75. package/dist/components/heading.js +1 -0
  76. package/dist/components/heatmap.d.ts +62 -0
  77. package/dist/components/heatmap.js +1 -0
  78. package/dist/components/help.d.ts +52 -0
  79. package/dist/components/help.js +1 -0
  80. package/dist/components/histogram.d.ts +62 -0
  81. package/dist/components/histogram.js +1 -0
  82. package/dist/components/kbd.d.ts +31 -0
  83. package/dist/components/kbd.js +1 -0
  84. package/dist/components/line-chart.d.ts +109 -0
  85. package/dist/components/line-chart.js +1 -0
  86. package/dist/components/link.d.ts +38 -0
  87. package/dist/components/link.js +1 -0
  88. package/dist/components/loading-indicator.d.ts +29 -0
  89. package/dist/components/loading-indicator.js +1 -0
  90. package/dist/components/markdown.d.ts +40 -0
  91. package/dist/components/markdown.js +1 -0
  92. package/dist/components/masked-input.d.ts +50 -0
  93. package/dist/components/masked-input.js +1 -0
  94. package/dist/components/menu.d.ts +78 -0
  95. package/dist/components/menu.js +1 -0
  96. package/dist/components/message-bubble.d.ts +43 -0
  97. package/dist/components/message-bubble.js +1 -0
  98. package/dist/components/model-badge.d.ts +39 -0
  99. package/dist/components/model-badge.js +1 -0
  100. package/dist/components/multi-select.d.ts +65 -0
  101. package/dist/components/multi-select.js +1 -0
  102. package/dist/components/newline.d.ts +15 -0
  103. package/dist/components/newline.js +2 -0
  104. package/dist/components/operation-tree.d.ts +49 -0
  105. package/dist/components/operation-tree.js +1 -0
  106. package/dist/components/option-list.d.ts +47 -0
  107. package/dist/components/option-list.js +1 -0
  108. package/dist/components/ordered-list.d.ts +24 -0
  109. package/dist/components/ordered-list.js +1 -0
  110. package/dist/components/paginator.d.ts +69 -0
  111. package/dist/components/paginator.js +1 -0
  112. package/dist/components/paragraph.d.ts +38 -0
  113. package/dist/components/paragraph.js +1 -0
  114. package/dist/components/placeholder.d.ts +55 -0
  115. package/dist/components/placeholder.js +1 -0
  116. package/dist/components/progress-bar.d.ts +56 -0
  117. package/dist/components/progress-bar.js +1 -0
  118. package/dist/components/radio-group.d.ts +74 -0
  119. package/dist/components/radio-group.js +1 -0
  120. package/dist/components/scatter-plot.d.ts +35 -0
  121. package/dist/components/scatter-plot.js +1 -0
  122. package/dist/components/scroll-bar-box.d.ts +37 -0
  123. package/dist/components/scroll-bar-box.js +1 -0
  124. package/dist/components/scroll-bar.d.ts +25 -0
  125. package/dist/components/scroll-bar.js +1 -0
  126. package/dist/components/scroll-list.d.ts +20 -0
  127. package/dist/components/scroll-list.js +1 -0
  128. package/dist/components/scroll-view.d.ts +10 -0
  129. package/dist/components/scroll-view.js +1 -0
  130. package/dist/components/search-input.d.ts +55 -0
  131. package/dist/components/search-input.js +1 -0
  132. package/dist/components/select-input-indicator.d.ts +32 -0
  133. package/dist/components/select-input-indicator.js +1 -0
  134. package/dist/components/select-input-item.d.ts +41 -0
  135. package/dist/components/select-input-item.js +1 -0
  136. package/dist/components/select-input.d.ts +110 -0
  137. package/dist/components/select-input.js +1 -0
  138. package/dist/components/shimmer-text.d.ts +47 -0
  139. package/dist/components/shimmer-text.js +1 -0
  140. package/dist/components/slider.d.ts +103 -0
  141. package/dist/components/slider.js +1 -0
  142. package/dist/components/spacer.d.ts +8 -0
  143. package/dist/components/spacer.js +1 -0
  144. package/dist/components/sparkline.d.ts +35 -0
  145. package/dist/components/sparkline.js +1 -0
  146. package/dist/components/spinner.d.ts +17 -0
  147. package/dist/components/spinner.js +1 -0
  148. package/dist/components/static-render.d.ts +55 -0
  149. package/dist/components/static-render.js +1 -0
  150. package/dist/components/static.d.ts +29 -0
  151. package/dist/components/static.js +1 -0
  152. package/dist/components/status-line.d.ts +37 -0
  153. package/dist/components/status-line.js +1 -0
  154. package/dist/components/status-message.d.ts +21 -0
  155. package/dist/components/status-message.js +1 -0
  156. package/dist/components/stepper.d.ts +48 -0
  157. package/dist/components/stepper.js +1 -0
  158. package/dist/components/stopwatch.d.ts +49 -0
  159. package/dist/components/stopwatch.js +1 -0
  160. package/dist/components/streaming-text.d.ts +46 -0
  161. package/dist/components/streaming-text.js +1 -0
  162. package/dist/components/switch.d.ts +55 -0
  163. package/dist/components/switch.js +1 -0
  164. package/dist/components/tab.d.ts +19 -0
  165. package/dist/components/tab.js +1 -0
  166. package/dist/components/table.d.ts +119 -0
  167. package/dist/components/table.js +1 -0
  168. package/dist/components/tabs.d.ts +107 -0
  169. package/dist/components/tabs.js +1 -0
  170. package/dist/components/tag.d.ts +35 -0
  171. package/dist/components/tag.js +1 -0
  172. package/dist/components/text-input.d.ts +48 -0
  173. package/dist/components/text-input.js +1 -0
  174. package/dist/components/text.d.ts +79 -0
  175. package/dist/components/text.js +1 -0
  176. package/dist/components/textarea.d.ts +68 -0
  177. package/dist/components/textarea.js +2 -0
  178. package/dist/components/timer.d.ts +59 -0
  179. package/dist/components/timer.js +1 -0
  180. package/dist/components/toast.d.ts +49 -0
  181. package/dist/components/toast.js +1 -0
  182. package/dist/components/tooltip.d.ts +43 -0
  183. package/dist/components/tooltip.js +1 -0
  184. package/dist/components/transform.d.ts +21 -0
  185. package/dist/components/transform.js +1 -0
  186. package/dist/components/transition.d.ts +74 -0
  187. package/dist/components/transition.js +1 -0
  188. package/dist/components/tree-view-entry.d.ts +357 -0
  189. package/dist/components/tree-view-entry.js +1 -0
  190. package/dist/components/unordered-list.d.ts +30 -0
  191. package/dist/components/unordered-list.js +1 -0
  192. package/dist/core/index.d.ts +58 -5
  193. package/dist/core/index.js +1 -5
  194. package/dist/ink/hooks/use-animation.d.ts +37 -39
  195. package/dist/ink/hooks/use-animation.js +1 -0
  196. package/dist/ink/hooks/use-app.d.ts +36 -4
  197. package/dist/ink/hooks/use-app.js +1 -0
  198. package/dist/ink/hooks/use-box-metrics.d.ts +58 -50
  199. package/dist/ink/hooks/use-box-metrics.js +1 -0
  200. package/dist/ink/hooks/use-clipboard.d.ts +26 -25
  201. package/dist/ink/hooks/use-clipboard.js +1 -0
  202. package/dist/ink/hooks/use-color-blindness.d.ts +29 -29
  203. package/dist/ink/hooks/use-color-blindness.js +1 -0
  204. package/dist/ink/hooks/use-console-capture.d.ts +38 -38
  205. package/dist/ink/hooks/use-console-capture.js +1 -0
  206. package/dist/ink/hooks/use-cursor.d.ts +10 -9
  207. package/dist/ink/hooks/use-cursor.js +1 -0
  208. package/dist/ink/hooks/use-focus-manager.d.ts +53 -38
  209. package/dist/ink/hooks/use-focus-manager.js +1 -0
  210. package/dist/ink/hooks/use-focus.d.ts +29 -25
  211. package/dist/ink/hooks/use-focus.js +1 -0
  212. package/dist/ink/hooks/use-form.d.ts +68 -0
  213. package/dist/ink/hooks/use-form.js +1 -0
  214. package/dist/ink/hooks/use-hotkey.d.ts +37 -0
  215. package/dist/ink/hooks/use-hotkey.js +1 -0
  216. package/dist/ink/hooks/use-input.d.ts +142 -142
  217. package/dist/ink/hooks/use-input.js +2 -0
  218. package/dist/ink/hooks/use-interval.d.ts +25 -0
  219. package/dist/ink/hooks/use-interval.js +1 -0
  220. package/dist/ink/hooks/use-is-screen-reader-enabled.d.ts +4 -4
  221. package/dist/ink/hooks/use-is-screen-reader-enabled.js +1 -0
  222. package/dist/ink/hooks/use-key-bindings.d.ts +50 -52
  223. package/dist/ink/hooks/use-key-bindings.js +1 -0
  224. package/dist/ink/hooks/use-key-chord.d.ts +25 -0
  225. package/dist/ink/hooks/use-key-chord.js +1 -0
  226. package/dist/ink/hooks/use-linked-scroll.d.ts +45 -37
  227. package/dist/ink/hooks/use-linked-scroll.js +1 -0
  228. package/dist/ink/hooks/use-paste.d.ts +41 -40
  229. package/dist/ink/hooks/use-paste.js +1 -0
  230. package/dist/ink/hooks/use-persistent-state.d.ts +56 -0
  231. package/dist/ink/hooks/use-persistent-state.js +2 -0
  232. package/dist/ink/hooks/use-scroll-acceleration.d.ts +43 -43
  233. package/dist/ink/hooks/use-scroll-acceleration.js +1 -0
  234. package/dist/ink/hooks/use-scroll-input.d.ts +31 -31
  235. package/dist/ink/hooks/use-scroll-input.js +1 -0
  236. package/dist/ink/hooks/use-stderr.d.ts +14 -4
  237. package/dist/ink/hooks/use-stderr.js +1 -0
  238. package/dist/ink/hooks/use-stdin.d.ts +28 -5
  239. package/dist/ink/hooks/use-stdin.js +1 -0
  240. package/dist/ink/hooks/use-stdout.d.ts +14 -4
  241. package/dist/ink/hooks/use-stdout.js +1 -0
  242. package/dist/ink/hooks/use-stopwatch.d.ts +36 -37
  243. package/dist/ink/hooks/use-stopwatch.js +1 -0
  244. package/dist/ink/hooks/use-terminal-palette.d.ts +17 -16
  245. package/dist/ink/hooks/use-terminal-palette.js +1 -0
  246. package/dist/ink/hooks/use-text-buffer.d.ts +37 -37
  247. package/dist/ink/hooks/use-text-buffer.js +4 -0
  248. package/dist/ink/hooks/use-text-selection.d.ts +41 -41
  249. package/dist/ink/hooks/use-text-selection.js +1 -0
  250. package/dist/ink/hooks/use-timeout.d.ts +24 -0
  251. package/dist/ink/hooks/use-timeout.js +1 -0
  252. package/dist/ink/hooks/use-timer.d.ts +45 -46
  253. package/dist/ink/hooks/use-timer.js +1 -0
  254. package/dist/ink/hooks/use-window-size.d.ts +14 -14
  255. package/dist/ink/hooks/use-window-size.js +1 -0
  256. package/dist/ink/index.d.ts +398 -159
  257. package/dist/ink/index.js +1 -100
  258. package/dist/packem_chunks/devtools.js +3 -26
  259. package/dist/packem_shared/COLOR_BLINDNESS_SIMULATION-DqErf7XX.js +1 -0
  260. package/dist/packem_shared/Cell-BrXn3jxY.js +1 -0
  261. package/dist/packem_shared/ControlledScrollView-CIc-x1Cx.js +1 -0
  262. package/dist/packem_shared/DevTools-ClAYpMVI.js +1 -0
  263. package/dist/packem_shared/FilePicker-tYj_CIau.js +1 -0
  264. package/dist/packem_shared/FocusContext-Xy0cwJpO.js +1 -0
  265. package/dist/packem_shared/Fullscreen-CxLd1-Zu.js +1 -0
  266. package/dist/packem_shared/IMECompositionBuffer-C89PhiOu.js +1 -0
  267. package/dist/packem_shared/InputParser-B_qZcN3r.js +2 -0
  268. package/dist/packem_shared/KEY-Bk8B-3h_.js +1 -0
  269. package/dist/packem_shared/LayoutNode-B8zej4dm.js +1 -0
  270. package/dist/packem_shared/MouseProvider-PnIUKURs.js +1 -0
  271. package/dist/packem_shared/NAMED_COLORS-B9fJsYdg.js +1 -0
  272. package/dist/packem_shared/Renderer-DJXooAsp.js +1 -0
  273. package/dist/packem_shared/ResizeObserverEntry-Dq0dk8Kq.js +1 -0
  274. package/dist/packem_shared/ScrollBar-U_37hlIT.js +1 -0
  275. package/dist/packem_shared/ScrollBarBox-DwiCxilX.js +1 -0
  276. package/dist/packem_shared/ScrollList-C7nZ9ufK.js +1 -0
  277. package/dist/packem_shared/ScrollView-DKZ8OM-m.js +1 -0
  278. package/dist/packem_shared/Static-DLynr5pn.js +1 -0
  279. package/dist/packem_shared/TreeNodeMap-CspqSCpb.js +1 -0
  280. package/dist/packem_shared/TreeView-C0Iv3et8.js +1 -0
  281. package/dist/packem_shared/TuiApp-BVDXP0Cv.js +1 -0
  282. package/dist/packem_shared/TuiContext-BoJvG3NN.js +3 -0
  283. package/dist/packem_shared/accessibility-context-DDyHTwmA.js +1 -0
  284. package/dist/packem_shared/animation-context-DW3p-vpk.js +1 -0
  285. package/dist/packem_shared/ansi-parser-B6uXaq65.js +1 -0
  286. package/dist/packem_shared/ansi-tokenizer-DqX9nJuk.js +1 -0
  287. package/dist/packem_shared/app-context-BVpKlG1z.js +1 -0
  288. package/dist/packem_shared/background-context-rjOaWFki.js +1 -0
  289. package/dist/packem_shared/braille-BBjIoaN0.js +1 -0
  290. package/dist/packem_shared/buffer.d-EJkZr8uH.d.ts +39 -0
  291. package/dist/packem_shared/clipboard.d-D6lZTQ21.d.ts +23 -0
  292. package/dist/packem_shared/color-matrix.d-DSXLsB64.d.ts +50 -0
  293. package/dist/packem_shared/colorize-DbTZMrJO.js +1 -0
  294. package/dist/packem_shared/comparePoints-YxQfR_zq.js +1 -0
  295. package/dist/packem_shared/controlled-scroll-view-CcUS50jx.js +1 -0
  296. package/dist/packem_shared/createInlineLoop-DRNZ7jqH.js +2 -0
  297. package/dist/packem_shared/createScreen-CrLrxA6t.js +3 -0
  298. package/dist/packem_shared/cursor-context-CFviBqPX.js +1 -0
  299. package/dist/packem_shared/cursor-helpers.d-BONB9tky.d.ts +12 -0
  300. package/dist/packem_shared/dom-BG-LS10p.js +1 -0
  301. package/dist/packem_shared/dom.d-C1IxuLJ9.d.ts +414 -0
  302. package/dist/packem_shared/focus-context-CsT69klR.js +1 -0
  303. package/dist/packem_shared/format-time-C7Q-hQZq.js +1 -0
  304. package/dist/packem_shared/getPathToRoot-D5Hns9Er.js +1 -0
  305. package/dist/packem_shared/getScrollHeight-ClEOyLHH.js +1 -0
  306. package/dist/packem_shared/input-utils-fAxzSlNh.js +1 -0
  307. package/dist/packem_shared/input.d-CgxV2e8U.d.ts +90 -0
  308. package/dist/packem_shared/isIntersecting-B3KbKTmu.js +1 -0
  309. package/dist/packem_shared/isOsc52Supported-DKK7Uee6.js +1 -0
  310. package/dist/packem_shared/isTerminalPaletteQuerySupported-Dn2hFAZ_.js +1 -0
  311. package/dist/packem_shared/kittyFlags-C3rZLbcK.js +1 -0
  312. package/dist/packem_shared/layout-BMo200nF.js +2 -0
  313. package/dist/packem_shared/line-chart-kf7uhR0K.js +1 -0
  314. package/dist/packem_shared/measure-text-DDjHT1jD.js +3 -0
  315. package/dist/packem_shared/measureElement-BTtTFZg4.js +1 -0
  316. package/dist/packem_shared/mouse-context-DaARgUu1.js +1 -0
  317. package/dist/packem_shared/parseSgrMouse-Ccj70ijb.js +1 -0
  318. package/dist/packem_shared/processLayout-FEKj_mWu.js +1 -0
  319. package/dist/packem_shared/reconciler-CUbhOvcr.js +1 -0
  320. package/dist/packem_shared/reconciler-DIfG72R9.js +1 -0
  321. package/dist/packem_shared/render-BFio00DS.js +26 -0
  322. package/dist/packem_shared/render-Dh7HMhK1.js +1 -0
  323. package/dist/packem_shared/render.d-DuyG0zip.d.ts +417 -0
  324. package/dist/packem_shared/renderToString-BbQiRHrd.js +2 -0
  325. package/dist/packem_shared/renderToString-SDrrFvu8.js +4 -0
  326. package/dist/packem_shared/renderTreeToBuffer-CZilzyhN.js +2 -0
  327. package/dist/packem_shared/renderer-DG986Pcr.js +17 -0
  328. package/dist/packem_shared/scroll-view.d-DtpsgHLg.d.ts +119 -0
  329. package/dist/packem_shared/selection.d-Dbha5bMS.d.ts +62 -0
  330. package/dist/packem_shared/setEnableStyledLineCache-D2gZbwFM.js +1 -0
  331. package/dist/packem_shared/squashTextNodesWithMap-DCdi3SZ2.js +1 -0
  332. package/dist/packem_shared/stderr-context-BzEaUICS.js +1 -0
  333. package/dist/packem_shared/stdin-context-BTaaFagk.js +1 -0
  334. package/dist/packem_shared/stdout-context-BnblEPez.js +1 -0
  335. package/dist/packem_shared/styles.d-cMo36xQz.d.ts +396 -0
  336. package/dist/packem_shared/terminal-palette.d-D2SQjfn-.d.ts +19 -0
  337. package/dist/packem_shared/text-width-BU2eeTWn.js +2 -0
  338. package/dist/packem_shared/token-to-elements-BAZpNZsu.js +1 -0
  339. package/dist/packem_shared/treeViewTheme-1RIZyB4M.js +1 -0
  340. package/dist/packem_shared/useElementDimensions-qJ_WXFZ9.js +1 -0
  341. package/dist/packem_shared/useMouseAction-2dRfU1vE.js +1 -0
  342. package/dist/packem_shared/useMouseContext-C746G7kY.js +1 -0
  343. package/dist/packem_shared/useMousePosition-BTWfV4JK.js +1 -0
  344. package/dist/packem_shared/useOnMouseClick-nY8xLZmt.js +1 -0
  345. package/dist/packem_shared/useOnMouseHover-D3DczIol.js +1 -0
  346. package/dist/packem_shared/useOnMouseState-cRK8QvzD.js +1 -0
  347. package/dist/packem_shared/useTreeView-BoMMeRPq.js +1 -0
  348. package/dist/packem_shared/useTreeViewState-CRPCUWrb.js +1 -0
  349. package/dist/packem_shared/utils-CoviI5Vm.js +1 -0
  350. package/dist/packem_shared/variant-config-BJqpNo7H.js +1 -0
  351. package/dist/packem_shared/variant-config.d-D5NnrrQK.d.ts +2 -0
  352. package/dist/packem_shared/waitFor-Dj5zfL5s.js +4 -0
  353. package/dist/packem_shared/wrapOrTruncateStyledLine-BZ00SM8i.js +3 -0
  354. package/dist/react/index.d.ts +519 -8
  355. package/dist/react/index.js +1 -9
  356. package/dist/testing/index.d.ts +278 -135
  357. package/dist/testing/index.js +1 -260
  358. package/index.js +52 -52
  359. package/package.json +563 -38
  360. package/dist/core/app.d.ts +0 -50
  361. package/dist/core/cell.d.ts +0 -33
  362. package/dist/core/inline.d.ts +0 -22
  363. package/dist/core/input.d.ts +0 -18
  364. package/dist/core/native-binding.d.ts +0 -22
  365. package/dist/ink/ansi-to-cell.d.ts +0 -5
  366. package/dist/ink/ansi-tokenizer.d.ts +0 -38
  367. package/dist/ink/clipboard.d.ts +0 -29
  368. package/dist/ink/color-matrix.d.ts +0 -49
  369. package/dist/ink/color-utils.d.ts +0 -30
  370. package/dist/ink/colorize.d.ts +0 -4
  371. package/dist/ink/components/AccessibilityContext.d.ts +0 -4
  372. package/dist/ink/components/Alert.d.ts +0 -30
  373. package/dist/ink/components/AnimationContext.d.ts +0 -10
  374. package/dist/ink/components/App.d.ts +0 -19
  375. package/dist/ink/components/AppContext.d.ts +0 -38
  376. package/dist/ink/components/BackgroundContext.d.ts +0 -5
  377. package/dist/ink/components/Badge.d.ts +0 -27
  378. package/dist/ink/components/BigText.d.ts +0 -71
  379. package/dist/ink/components/Box.d.ts +0 -58
  380. package/dist/ink/components/Code.d.ts +0 -46
  381. package/dist/ink/components/ConfirmInput.d.ts +0 -40
  382. package/dist/ink/components/ConsoleOverlay.d.ts +0 -52
  383. package/dist/ink/components/Cursor.d.ts +0 -43
  384. package/dist/ink/components/CursorContext.d.ts +0 -12
  385. package/dist/ink/components/Dialog.d.ts +0 -93
  386. package/dist/ink/components/DiffView.d.ts +0 -71
  387. package/dist/ink/components/ErrorBoundary.d.ts +0 -17
  388. package/dist/ink/components/ErrorOverview.d.ts +0 -6
  389. package/dist/ink/components/FocusContext.d.ts +0 -17
  390. package/dist/ink/components/Gradient.d.ts +0 -38
  391. package/dist/ink/components/Help.d.ts +0 -49
  392. package/dist/ink/components/Link.d.ts +0 -34
  393. package/dist/ink/components/Markdown.d.ts +0 -34
  394. package/dist/ink/components/MultiSelect.d.ts +0 -63
  395. package/dist/ink/components/Newline.d.ts +0 -12
  396. package/dist/ink/components/OrderedList.d.ts +0 -30
  397. package/dist/ink/components/Paginator.d.ts +0 -75
  398. package/dist/ink/components/ProgressBar.d.ts +0 -51
  399. package/dist/ink/components/SelectInput.d.ts +0 -96
  400. package/dist/ink/components/SelectInputIndicator.d.ts +0 -36
  401. package/dist/ink/components/SelectInputItem.d.ts +0 -43
  402. package/dist/ink/components/Slider.d.ts +0 -92
  403. package/dist/ink/components/Spacer.d.ts +0 -7
  404. package/dist/ink/components/Spinner.d.ts +0 -42
  405. package/dist/ink/components/Static.d.ts +0 -24
  406. package/dist/ink/components/StaticRender.d.ts +0 -28
  407. package/dist/ink/components/StatusMessage.d.ts +0 -26
  408. package/dist/ink/components/StderrContext.d.ts +0 -16
  409. package/dist/ink/components/StdinContext.d.ts +0 -29
  410. package/dist/ink/components/StdoutContext.d.ts +0 -16
  411. package/dist/ink/components/Stopwatch.d.ts +0 -44
  412. package/dist/ink/components/Tab.d.ts +0 -25
  413. package/dist/ink/components/Table.d.ts +0 -80
  414. package/dist/ink/components/Tabs.d.ts +0 -104
  415. package/dist/ink/components/Text.d.ts +0 -63
  416. package/dist/ink/components/TextInput.d.ts +0 -48
  417. package/dist/ink/components/Textarea.d.ts +0 -62
  418. package/dist/ink/components/Timer.d.ts +0 -52
  419. package/dist/ink/components/Transform.d.ts +0 -16
  420. package/dist/ink/components/UnorderedList.d.ts +0 -35
  421. package/dist/ink/components/file-picker/FilePicker.d.ts +0 -75
  422. package/dist/ink/components/file-picker/index.d.ts +0 -3
  423. package/dist/ink/components/file-picker/types.d.ts +0 -38
  424. package/dist/ink/components/file-picker/use-file-system.d.ts +0 -16
  425. package/dist/ink/components/scroll/ControlledScrollView.d.ts +0 -43
  426. package/dist/ink/components/scroll/ScrollBar.d.ts +0 -20
  427. package/dist/ink/components/scroll/ScrollBarBox.d.ts +0 -15
  428. package/dist/ink/components/scroll/ScrollList.d.ts +0 -12
  429. package/dist/ink/components/scroll/ScrollView.d.ts +0 -98
  430. package/dist/ink/components/scroll/index.d.ts +0 -10
  431. package/dist/ink/components/scroll/use-state-ref.d.ts +0 -8
  432. package/dist/ink/components/tree-view/TreeView.d.ts +0 -89
  433. package/dist/ink/components/tree-view/TreeViewNode.d.ts +0 -29
  434. package/dist/ink/components/tree-view/index.d.ts +0 -11
  435. package/dist/ink/components/tree-view/theme.d.ts +0 -24
  436. package/dist/ink/components/tree-view/tree-node-map.d.ts +0 -72
  437. package/dist/ink/components/tree-view/types.d.ts +0 -55
  438. package/dist/ink/components/tree-view/use-tree-view-state.d.ts +0 -135
  439. package/dist/ink/components/tree-view/use-tree-view.d.ts +0 -26
  440. package/dist/ink/components/variant-config.d.ts +0 -10
  441. package/dist/ink/cursor-helpers.d.ts +0 -38
  442. package/dist/ink/data-limited-lru-map.d.ts +0 -21
  443. package/dist/ink/devtools-window-polyfill.d.ts +0 -1
  444. package/dist/ink/devtools.d.ts +0 -1
  445. package/dist/ink/dom.d.ts +0 -213
  446. package/dist/ink/get-max-width.d.ts +0 -3
  447. package/dist/ink/highlighter.d.ts +0 -28
  448. package/dist/ink/ime-utils.d.ts +0 -25
  449. package/dist/ink/ink.d.ts +0 -189
  450. package/dist/ink/input-parser.d.ts +0 -10
  451. package/dist/ink/input-utils.d.ts +0 -16
  452. package/dist/ink/instances.d.ts +0 -3
  453. package/dist/ink/kitty-keyboard.d.ts +0 -23
  454. package/dist/ink/layout.d.ts +0 -26
  455. package/dist/ink/log-update-native.d.ts +0 -14
  456. package/dist/ink/log-update.d.ts +0 -21
  457. package/dist/ink/measure-element.d.ts +0 -147
  458. package/dist/ink/measure-text.d.ts +0 -56
  459. package/dist/ink/mouse/Fullscreen.d.ts +0 -8
  460. package/dist/ink/mouse/MouseProvider.d.ts +0 -11
  461. package/dist/ink/mouse/ansi-parser.d.ts +0 -37
  462. package/dist/ink/mouse/constants.d.ts +0 -59
  463. package/dist/ink/mouse/index.d.ts +0 -20
  464. package/dist/ink/mouse/is-intersecting.d.ts +0 -18
  465. package/dist/ink/mouse/mouse-context.d.ts +0 -36
  466. package/dist/ink/mouse/use-element-position.d.ts +0 -29
  467. package/dist/ink/mouse/use-mouse-action.d.ts +0 -7
  468. package/dist/ink/mouse/use-mouse-position.d.ts +0 -7
  469. package/dist/ink/mouse/use-mouse.d.ts +0 -7
  470. package/dist/ink/mouse/use-on-mouse-click.d.ts +0 -14
  471. package/dist/ink/mouse/use-on-mouse-hover.d.ts +0 -8
  472. package/dist/ink/mouse/use-on-mouse-state.d.ts +0 -11
  473. package/dist/ink/output.d.ts +0 -74
  474. package/dist/ink/parse-keypress.d.ts +0 -22
  475. package/dist/ink/reconciler.d.ts +0 -3
  476. package/dist/ink/region.d.ts +0 -99
  477. package/dist/ink/render-background.d.ts +0 -4
  478. package/dist/ink/render-border.d.ts +0 -4
  479. package/dist/ink/render-node-to-output.d.ts +0 -38
  480. package/dist/ink/render-scrollbar.d.ts +0 -9
  481. package/dist/ink/render-sticky.d.ts +0 -44
  482. package/dist/ink/render-to-string.d.ts +0 -37
  483. package/dist/ink/render.d.ts +0 -191
  484. package/dist/ink/renderer.d.ts +0 -17
  485. package/dist/ink/resize-observer.d.ts +0 -44
  486. package/dist/ink/sanitize-ansi.d.ts +0 -2
  487. package/dist/ink/scroll.d.ts +0 -23
  488. package/dist/ink/selection.d.ts +0 -70
  489. package/dist/ink/squash-text-nodes.d.ts +0 -18
  490. package/dist/ink/style-flags.d.ts +0 -17
  491. package/dist/ink/styled-line-factory.d.ts +0 -25
  492. package/dist/ink/styled-line-serializer.d.ts +0 -18
  493. package/dist/ink/styled-line.d.ts +0 -109
  494. package/dist/ink/styles.d.ts +0 -369
  495. package/dist/ink/terminal-palette.d.ts +0 -25
  496. package/dist/ink/text-wrap.d.ts +0 -10
  497. package/dist/ink/token-to-elements.d.ts +0 -22
  498. package/dist/ink/utils/format-time.d.ts +0 -4
  499. package/dist/ink/utils.d.ts +0 -9
  500. package/dist/ink/wrap-text.d.ts +0 -3
  501. package/dist/ink/write-synchronized.d.ts +0 -4
  502. package/dist/packem_shared/AccessibilityContext-BLelHhNU.js +0 -7
  503. package/dist/packem_shared/Alert-Dr3s_LD9.js +0 -17
  504. package/dist/packem_shared/AnimationContext-BcJg8Jr6.js +0 -15
  505. package/dist/packem_shared/AppContext-CP0U6H7O.js +0 -11
  506. package/dist/packem_shared/BackgroundContext-BAUaxfOb.js +0 -5
  507. package/dist/packem_shared/Badge-Dk7EGGM6.js +0 -13
  508. package/dist/packem_shared/BigText-CjMdY63X.js +0 -24
  509. package/dist/packem_shared/Box-D_pSJ9Jp.js +0 -73
  510. package/dist/packem_shared/COLOR_BLINDNESS_SIMULATION-BsMy5Ewl.js +0 -81
  511. package/dist/packem_shared/Cell-DCg1kJY-.js +0 -48
  512. package/dist/packem_shared/Code-DjQvPBD9.js +0 -53
  513. package/dist/packem_shared/ConfirmInput-85Y4kRQW.js +0 -44
  514. package/dist/packem_shared/ConsoleOverlay-DBNa4vtj.js +0 -57
  515. package/dist/packem_shared/ControlledScrollView-BlOaxcsN.js +0 -286
  516. package/dist/packem_shared/ControlledScrollView-DfAhcufF.js +0 -5
  517. package/dist/packem_shared/Cursor-DiW7YoSK.js +0 -18
  518. package/dist/packem_shared/CursorContext-JxRzlqAx.js +0 -9
  519. package/dist/packem_shared/DevTools-aMPIsaHx.js +0 -61
  520. package/dist/packem_shared/Dialog-DsSNAVgC.js +0 -71
  521. package/dist/packem_shared/DiffView-hqaw-2S6.js +0 -329
  522. package/dist/packem_shared/FilePicker-DNwFxRhq.js +0 -254
  523. package/dist/packem_shared/FocusContext-CWkYtgcm.js +0 -26
  524. package/dist/packem_shared/FocusContext-D5wFxSRz.js +0 -153
  525. package/dist/packem_shared/Fullscreen-DrElAE1o.js +0 -11
  526. package/dist/packem_shared/Gradient-Ql5P0GUd.js +0 -136
  527. package/dist/packem_shared/Help-6wanGG38.js +0 -112
  528. package/dist/packem_shared/IMECompositionBuffer-Dl3S0KnF.js +0 -55
  529. package/dist/packem_shared/InputParser-BKHpWfvN.js +0 -156
  530. package/dist/packem_shared/LayoutNode-Cjnsodiy.js +0 -131
  531. package/dist/packem_shared/Link-COcKYfGT.js +0 -66
  532. package/dist/packem_shared/Markdown-y1ISztof.js +0 -212
  533. package/dist/packem_shared/MouseProvider-Y9TSSEGl.js +0 -136
  534. package/dist/packem_shared/MultiSelect-ChoLUcDI.js +0 -129
  535. package/dist/packem_shared/NAMED_COLORS-a4QBvb5r.js +0 -262
  536. package/dist/packem_shared/Newline-DBtYEg8x.js +0 -7
  537. package/dist/packem_shared/OrderedList-Cp7pXr6m.js +0 -26
  538. package/dist/packem_shared/Paginator-D1AuD-kj.js +0 -104
  539. package/dist/packem_shared/ProgressBar-DOfpVagn.js +0 -22
  540. package/dist/packem_shared/Renderer-zZ5O3vxc.js +0 -31
  541. package/dist/packem_shared/ResizeObserverEntry-Br4seLeQ.js +0 -102
  542. package/dist/packem_shared/ScrollBar-EWAs2Uc7.js +0 -106
  543. package/dist/packem_shared/ScrollBarBox-DTNNlh7R.js +0 -72
  544. package/dist/packem_shared/ScrollList-DCeIFL8M.js +0 -227
  545. package/dist/packem_shared/ScrollView-v3MCNIyX.js +0 -196
  546. package/dist/packem_shared/SelectInput-BN2TMyxp.js +0 -260
  547. package/dist/packem_shared/SelectInputIndicator-DkRMoH_b.js +0 -9
  548. package/dist/packem_shared/SelectInputItem-BF9LQgKu.js +0 -8
  549. package/dist/packem_shared/Slider-BWD7xZX6.js +0 -116
  550. package/dist/packem_shared/Spacer-Bs4ER-HK.js +0 -8
  551. package/dist/packem_shared/Spinner-BuI-kN4p.js +0 -1799
  552. package/dist/packem_shared/Static-DpTd6Eed.js +0 -22
  553. package/dist/packem_shared/Static-xmD9giJj.js +0 -18
  554. package/dist/packem_shared/StaticRender-tYwH6QXl.js +0 -33
  555. package/dist/packem_shared/StatusMessage-BtSYxzwb.js +0 -14
  556. package/dist/packem_shared/StderrContext-Bj4Mf7v7.js +0 -17
  557. package/dist/packem_shared/StdinContext-Bq_GNJ3z.js +0 -38
  558. package/dist/packem_shared/StdoutContext-CgjWeCdO.js +0 -17
  559. package/dist/packem_shared/Stopwatch-DjtTCyHn.js +0 -23
  560. package/dist/packem_shared/Tab-C6r5q4hR.js +0 -7
  561. package/dist/packem_shared/Table-D-rSVlzb.js +0 -82
  562. package/dist/packem_shared/Tabs-hki-KRnx.js +0 -153
  563. package/dist/packem_shared/Text-DvAUdZcK.js +0 -65
  564. package/dist/packem_shared/TextInput-C79WEQ5U.js +0 -137
  565. package/dist/packem_shared/Textarea-Dj06R6Zd.js +0 -272
  566. package/dist/packem_shared/Timer-wi9zuh4n.js +0 -22
  567. package/dist/packem_shared/Transform-BHxY_dAM.js +0 -14
  568. package/dist/packem_shared/TreeNodeMap-CtJUvBnd.js +0 -155
  569. package/dist/packem_shared/TreeView-C2062dtj.js +0 -148
  570. package/dist/packem_shared/TuiApp-DfxOnXqi.js +0 -120
  571. package/dist/packem_shared/TuiContext-CqEjMyXd.js +0 -415
  572. package/dist/packem_shared/UnorderedList-DhnadWjX.js +0 -33
  573. package/dist/packem_shared/ansi-parser-0BdVTKho.js +0 -41
  574. package/dist/packem_shared/ansi-tokenizer-LHq2LUWA.js +0 -307
  575. package/dist/packem_shared/boxes-oi3WUbyR.js +0 -92
  576. package/dist/packem_shared/colorize-88_Vk8cn.js +0 -48
  577. package/dist/packem_shared/comparePoints-CGMDnd3_.js +0 -287
  578. package/dist/packem_shared/createInlineLoop-BxMmcq9D.js +0 -93
  579. package/dist/packem_shared/createLinkedScrollGroup-Djw4Ceo0.js +0 -44
  580. package/dist/packem_shared/dom-DvzhsAez.js +0 -225
  581. package/dist/packem_shared/format-time-BGmnDukX.js +0 -12
  582. package/dist/packem_shared/getPathToRoot-a1wbwxfL.js +0 -4
  583. package/dist/packem_shared/getScrollHeight-BubfU_df.js +0 -63
  584. package/dist/packem_shared/input-utils-ViAEXa0Z.js +0 -19
  585. package/dist/packem_shared/isIntersecting-fEXHJN5R.js +0 -10
  586. package/dist/packem_shared/isOsc52Supported-G0k4sXJx.js +0 -36
  587. package/dist/packem_shared/isTerminalPaletteQuerySupported-EeiwMKbr.js +0 -93
  588. package/dist/packem_shared/kittyFlags-bNNf_9kX.js +0 -26
  589. package/dist/packem_shared/measure-element-Reza_yfC.js +0 -396
  590. package/dist/packem_shared/measure-text-DItZYotK.js +0 -1189
  591. package/dist/packem_shared/measureElement-CTgFCmKd.js +0 -4
  592. package/dist/packem_shared/mouse-context-BUHWKEIe.js +0 -6
  593. package/dist/packem_shared/parseSgrMouse-BHVBPP9G.js +0 -1
  594. package/dist/packem_shared/processLayout-BQ9kXfd3.js +0 -2
  595. package/dist/packem_shared/reconciler-BXf6miSS.js +0 -211
  596. package/dist/packem_shared/reconciler-gfmqURLy.js +0 -680
  597. package/dist/packem_shared/render-BAwdjfki.js +0 -2806
  598. package/dist/packem_shared/render-Bpjhf0lD.js +0 -195
  599. package/dist/packem_shared/renderToString-Cfg55DRD.js +0 -62
  600. package/dist/packem_shared/renderToString-ClIaXgrC.js +0 -86
  601. package/dist/packem_shared/renderTreeToBuffer-D3mo7M7m.js +0 -308
  602. package/dist/packem_shared/renderer-B3wROkeg.js +0 -1431
  603. package/dist/packem_shared/setEnableStyledLineCache-BpskngSJ.js +0 -2
  604. package/dist/packem_shared/squashTextNodesWithMap-iqm6OMMT.js +0 -100
  605. package/dist/packem_shared/text-width-DhuarWcB.js +0 -42
  606. package/dist/packem_shared/token-to-elements-BRFl_rzw.js +0 -249
  607. package/dist/packem_shared/treeViewTheme-BpSw9TMf.js +0 -52
  608. package/dist/packem_shared/useAnimation-kj31sA-T.js +0 -62
  609. package/dist/packem_shared/useApp-DPQlRzi5.js +0 -6
  610. package/dist/packem_shared/useBoxMetrics-rBjKc-g4.js +0 -54
  611. package/dist/packem_shared/useClipboard-B_9-adw1.js +0 -23
  612. package/dist/packem_shared/useColorBlindness-D_sTIhcb.js +0 -30
  613. package/dist/packem_shared/useConsoleCapture-Dvt7G1W1.js +0 -61
  614. package/dist/packem_shared/useCursor-BIJzc8k9.js +0 -19
  615. package/dist/packem_shared/useElementDimensions-CAoKitVD.js +0 -67
  616. package/dist/packem_shared/useFocus-CNl5QHHf.js +0 -37
  617. package/dist/packem_shared/useFocusManager-BPYaUuKQ.js +0 -16
  618. package/dist/packem_shared/useInput-Cfp5zB2s.js +0 -594
  619. package/dist/packem_shared/useIsScreenReaderEnabled-CnGKCe0f.js +0 -9
  620. package/dist/packem_shared/useKeyBindings-B78l1E1n.js +0 -66
  621. package/dist/packem_shared/useMouseAction-C5gZ2nj7.js +0 -29
  622. package/dist/packem_shared/useMouseContext-D-rFy60Q.js +0 -12
  623. package/dist/packem_shared/useMousePosition-BHBJ-kBk.js +0 -25
  624. package/dist/packem_shared/useOnMouseClick--ZIyBOBO.js +0 -35
  625. package/dist/packem_shared/useOnMouseHover-26diuXUC.js +0 -32
  626. package/dist/packem_shared/useOnMouseState-NO_Kda_C.js +0 -13
  627. package/dist/packem_shared/usePaste-Ct8J4AGR.js +0 -35
  628. package/dist/packem_shared/useScrollAcceleration-R9LfrPVG.js +0 -73
  629. package/dist/packem_shared/useScrollInput-D3CpBq_a.js +0 -72
  630. package/dist/packem_shared/useStderr-CAOVUh4E.js +0 -6
  631. package/dist/packem_shared/useStdin-X-O0kd-n.js +0 -7
  632. package/dist/packem_shared/useStdout-DyF6DSH0.js +0 -6
  633. package/dist/packem_shared/useStopwatch-qC4Beai4.js +0 -33
  634. package/dist/packem_shared/useTerminalPalette-BaWO2c4Q.js +0 -38
  635. package/dist/packem_shared/useTextBuffer-C8fEe9Ly.js +0 -398
  636. package/dist/packem_shared/useTextSelection-mXtxgsPK.js +0 -50
  637. package/dist/packem_shared/useTimer-CPQ7j827.js +0 -46
  638. package/dist/packem_shared/useTreeView-BT57P3Kx.js +0 -101
  639. package/dist/packem_shared/useTreeViewState-BpS_KZ-K.js +0 -502
  640. package/dist/packem_shared/useWindowSize-ugEmGZJm.js +0 -20
  641. package/dist/packem_shared/utils-BgdlrbOH.js +0 -140
  642. package/dist/packem_shared/variant-config-DSZoX5TM.js +0 -8
  643. package/dist/packem_shared/wrapOrTruncateStyledLine-DN3Nogoc.js +0 -147
  644. package/dist/react/devtools.d.ts +0 -27
  645. package/dist/react/focus.d.ts +0 -39
  646. package/dist/react/hooks.d.ts +0 -238
  647. package/dist/react/layout.d.ts +0 -35
  648. package/dist/react/react.d.ts +0 -57
  649. package/dist/react/reconciler.d.ts +0 -4
  650. package/dist/react/render-to-string.d.ts +0 -21
  651. package/dist/react/renderer.d.ts +0 -2
  652. package/dist/react/scene.d.ts +0 -3
  653. package/dist/react/static.d.ts +0 -39
  654. package/dist/react/styles.d.ts +0 -83
  655. package/dist/react/text-width.d.ts +0 -20
  656. package/dist/testing/keys.d.ts +0 -89
  657. package/dist/testing/screen.d.ts +0 -35
  658. package/dist/testing/wait-for.d.ts +0 -21
@@ -1,502 +0,0 @@
1
- import { useReducer, useState, useRef, useEffect, useMemo, useCallback } from 'react';
2
- import { TreeNodeMap } from './TreeNodeMap-CtJUvBnd.js';
3
-
4
- function buildVisibleIdIndex(visibleIds) {
5
- const map = /* @__PURE__ */ new Map();
6
- for (const [index, visibleId] of visibleIds.entries()) {
7
- map.set(visibleId, index);
8
- }
9
- return map;
10
- }
11
- function adjustViewport(state, targetIndex) {
12
- if (state.visibleNodeCount >= state.visibleIds.length) {
13
- return { viewportFromIndex: 0, viewportToIndex: state.visibleIds.length };
14
- }
15
- let from = state.viewportFromIndex;
16
- let to = state.viewportToIndex;
17
- if (targetIndex >= to) {
18
- to = targetIndex + 1;
19
- from = to - state.visibleNodeCount;
20
- }
21
- if (targetIndex < from) {
22
- from = targetIndex;
23
- to = from + state.visibleNodeCount;
24
- }
25
- return {
26
- viewportFromIndex: Math.max(0, from),
27
- viewportToIndex: Math.min(state.visibleIds.length, to)
28
- };
29
- }
30
- function adjustViewportForNewVisible(state, newVisible) {
31
- if (state.visibleNodeCount >= newVisible.length) {
32
- return { viewportFromIndex: 0, viewportToIndex: newVisible.length };
33
- }
34
- const focusedIndex = state.focusedId ? newVisible.indexOf(state.focusedId) : -1;
35
- if (focusedIndex < 0) {
36
- return {
37
- viewportFromIndex: 0,
38
- viewportToIndex: Math.min(state.visibleNodeCount, newVisible.length)
39
- };
40
- }
41
- let to = Math.min(state.viewportToIndex, newVisible.length);
42
- let from = Math.max(0, to - state.visibleNodeCount);
43
- if (focusedIndex >= to) {
44
- to = focusedIndex + 1;
45
- from = to - state.visibleNodeCount;
46
- }
47
- if (focusedIndex < from) {
48
- from = focusedIndex;
49
- to = from + state.visibleNodeCount;
50
- }
51
- return {
52
- viewportFromIndex: Math.max(0, from),
53
- viewportToIndex: Math.min(newVisible.length, to)
54
- };
55
- }
56
- function reducer(state, action) {
57
- switch (action.type) {
58
- case "collapse": {
59
- if (!state.focusedId) {
60
- return state;
61
- }
62
- return reducer(state, { nodeId: state.focusedId, type: "collapse-node" });
63
- }
64
- case "collapse-all": {
65
- const newExpanded = /* @__PURE__ */ new Set();
66
- const newVisible = state.nodeMap.getVisibleIds(newExpanded);
67
- return {
68
- ...state,
69
- expandedIds: newExpanded,
70
- focusedId: newVisible[0],
71
- previousExpandedIds: state.expandedIds,
72
- viewportFromIndex: 0,
73
- viewportToIndex: Math.min(state.visibleNodeCount, newVisible.length),
74
- visibleIdIndex: buildVisibleIdIndex(newVisible),
75
- visibleIds: newVisible
76
- };
77
- }
78
- case "collapse-node": {
79
- const { nodeId } = action;
80
- if (!state.expandedIds.has(nodeId)) {
81
- return state;
82
- }
83
- const newExpanded = new Set(state.expandedIds);
84
- newExpanded.delete(nodeId);
85
- const newVisible = state.nodeMap.getVisibleIds(newExpanded);
86
- let newFocusedId = state.focusedId;
87
- if (newFocusedId !== void 0 && newFocusedId !== nodeId && state.nodeMap.isDescendantOf(newFocusedId, nodeId)) {
88
- newFocusedId = nodeId;
89
- }
90
- return {
91
- ...state,
92
- expandedIds: newExpanded,
93
- focusedId: newFocusedId,
94
- previousExpandedIds: state.expandedIds,
95
- visibleIdIndex: buildVisibleIdIndex(newVisible),
96
- visibleIds: newVisible,
97
- ...adjustViewportForNewVisible({ ...state, focusedId: newFocusedId}, newVisible)
98
- };
99
- }
100
- case "expand": {
101
- if (!state.focusedId) {
102
- return state;
103
- }
104
- return reducer(state, { nodeId: state.focusedId, type: "expand-node" });
105
- }
106
- case "expand-all": {
107
- const allParentIds = /* @__PURE__ */ new Set();
108
- for (const [id, flat] of state.nodeMap.entries()) {
109
- if (flat.hasChildren) {
110
- allParentIds.add(id);
111
- }
112
- }
113
- const newVisible = state.nodeMap.getVisibleIds(allParentIds);
114
- return {
115
- ...state,
116
- expandedIds: allParentIds,
117
- previousExpandedIds: state.expandedIds,
118
- visibleIdIndex: buildVisibleIdIndex(newVisible),
119
- visibleIds: newVisible,
120
- ...adjustViewportForNewVisible({ ...state}, newVisible)
121
- };
122
- }
123
- case "expand-node": {
124
- const { nodeId } = action;
125
- const flat = state.nodeMap.get(nodeId);
126
- if (!flat?.hasChildren) {
127
- return state;
128
- }
129
- if (state.expandedIds.has(nodeId)) {
130
- return state;
131
- }
132
- const newExpanded = new Set(state.expandedIds);
133
- newExpanded.add(nodeId);
134
- const newVisible = state.nodeMap.getVisibleIds(newExpanded);
135
- return {
136
- ...state,
137
- expandedIds: newExpanded,
138
- previousExpandedIds: state.expandedIds,
139
- visibleIdIndex: buildVisibleIdIndex(newVisible),
140
- visibleIds: newVisible,
141
- ...adjustViewportForNewVisible({ ...state}, newVisible)
142
- };
143
- }
144
- case "focus-first": {
145
- if (state.visibleIds.length === 0) {
146
- return state;
147
- }
148
- return {
149
- ...state,
150
- focusedId: state.visibleIds[0],
151
- viewportFromIndex: 0,
152
- viewportToIndex: Math.min(state.visibleNodeCount, state.visibleIds.length)
153
- };
154
- }
155
- case "focus-first-child": {
156
- if (!state.focusedId) {
157
- return state;
158
- }
159
- const flat = state.nodeMap.get(state.focusedId);
160
- if (!flat || flat.childrenIds.length === 0) {
161
- return state;
162
- }
163
- if (!state.expandedIds.has(state.focusedId)) {
164
- return state;
165
- }
166
- const firstChildId = flat.childrenIds[0];
167
- const childIndex = state.visibleIdIndex.get(firstChildId) ?? -1;
168
- if (childIndex < 0) {
169
- return state;
170
- }
171
- return {
172
- ...state,
173
- focusedId: firstChildId,
174
- ...adjustViewport(state, childIndex)
175
- };
176
- }
177
- case "focus-last": {
178
- if (state.visibleIds.length === 0) {
179
- return state;
180
- }
181
- const lastIndex = state.visibleIds.length - 1;
182
- return {
183
- ...state,
184
- focusedId: state.visibleIds[lastIndex],
185
- ...adjustViewport(state, lastIndex)
186
- };
187
- }
188
- case "focus-next": {
189
- if (!state.focusedId) {
190
- return state;
191
- }
192
- const index = state.visibleIdIndex.get(state.focusedId) ?? -1;
193
- if (index < 0 || index >= state.visibleIds.length - 1) {
194
- return state;
195
- }
196
- const nextId = state.visibleIds[index + 1];
197
- return {
198
- ...state,
199
- focusedId: nextId,
200
- ...adjustViewport(state, index + 1)
201
- };
202
- }
203
- case "focus-parent": {
204
- if (!state.focusedId) {
205
- return state;
206
- }
207
- const flat = state.nodeMap.get(state.focusedId);
208
- if (!flat?.parentId) {
209
- return state;
210
- }
211
- const parentIndex = state.visibleIdIndex.get(flat.parentId) ?? -1;
212
- if (parentIndex < 0) {
213
- return state;
214
- }
215
- return {
216
- ...state,
217
- focusedId: flat.parentId,
218
- ...adjustViewport(state, parentIndex)
219
- };
220
- }
221
- case "focus-previous": {
222
- if (!state.focusedId) {
223
- return state;
224
- }
225
- const index = state.visibleIdIndex.get(state.focusedId) ?? -1;
226
- if (index <= 0) {
227
- return state;
228
- }
229
- const previousId = state.visibleIds[index - 1];
230
- return {
231
- ...state,
232
- focusedId: previousId,
233
- ...adjustViewport(state, index - 1)
234
- };
235
- }
236
- case "insert-children": {
237
- const parentFlat = state.nodeMap.get(action.parentId);
238
- if (!parentFlat) {
239
- return state;
240
- }
241
- const newNodeMap = state.nodeMap.withChildren(action.parentId, action.children);
242
- const newVisible = newNodeMap.getVisibleIds(state.expandedIds);
243
- return {
244
- ...state,
245
- nodeMap: newNodeMap,
246
- visibleIdIndex: buildVisibleIdIndex(newVisible),
247
- visibleIds: newVisible
248
- };
249
- }
250
- case "reset": {
251
- return action.state;
252
- }
253
- case "select": {
254
- if (!state.focusedId) {
255
- return state;
256
- }
257
- if (state.selectionMode === "none") {
258
- return state;
259
- }
260
- if (state.selectionMode === "single") {
261
- const newSelected2 = /* @__PURE__ */ new Set([state.focusedId]);
262
- return {
263
- ...state,
264
- previousSelectedIds: state.selectedIds,
265
- selectedIds: newSelected2
266
- };
267
- }
268
- const newSelected = new Set(state.selectedIds);
269
- if (newSelected.has(state.focusedId)) {
270
- newSelected.delete(state.focusedId);
271
- } else {
272
- newSelected.add(state.focusedId);
273
- }
274
- return {
275
- ...state,
276
- previousSelectedIds: state.selectedIds,
277
- selectedIds: newSelected
278
- };
279
- }
280
- case "set-children-error": {
281
- const newLoading = new Set(state.loadingIds);
282
- newLoading.delete(action.nodeId);
283
- return { ...state, loadingIds: newLoading };
284
- }
285
- case "set-loading": {
286
- const newLoading = new Set(state.loadingIds);
287
- if (action.isLoading) {
288
- newLoading.add(action.nodeId);
289
- } else {
290
- newLoading.delete(action.nodeId);
291
- }
292
- return { ...state, loadingIds: newLoading };
293
- }
294
- case "toggle-expanded": {
295
- if (!state.focusedId) {
296
- return state;
297
- }
298
- if (state.expandedIds.has(state.focusedId)) {
299
- return reducer(state, { type: "collapse" });
300
- }
301
- return reducer(state, { type: "expand" });
302
- }
303
- default: {
304
- return state;
305
- }
306
- }
307
- }
308
- function createDefaultState({ data, defaultExpanded, defaultSelected, selectionMode, visibleNodeCount }) {
309
- const nodeMap = new TreeNodeMap(data);
310
- let expandedIds;
311
- if (defaultExpanded === "all") {
312
- expandedIds = /* @__PURE__ */ new Set();
313
- for (const [id, flat] of nodeMap.entries()) {
314
- if (flat.hasChildren) {
315
- expandedIds.add(id);
316
- }
317
- }
318
- } else if (defaultExpanded) {
319
- expandedIds = new Set(defaultExpanded);
320
- } else {
321
- expandedIds = /* @__PURE__ */ new Set();
322
- }
323
- const visibleIds = nodeMap.getVisibleIds(expandedIds);
324
- const selectedIds = selectionMode !== "none" && defaultSelected ? new Set(defaultSelected) : /* @__PURE__ */ new Set();
325
- const nodeCount = Math.min(visibleNodeCount, visibleIds.length);
326
- return {
327
- expandedIds,
328
- focusedId: visibleIds[0],
329
- loadingIds: /* @__PURE__ */ new Set(),
330
- nodeMap,
331
- previousExpandedIds: expandedIds,
332
- previousSelectedIds: selectedIds,
333
- selectedIds,
334
- selectionMode,
335
- viewportFromIndex: 0,
336
- viewportToIndex: nodeCount,
337
- visibleIdIndex: buildVisibleIdIndex(visibleIds),
338
- visibleIds,
339
- visibleNodeCount
340
- };
341
- }
342
- function useTreeViewState({
343
- data,
344
- defaultExpanded,
345
- defaultSelected,
346
- onExpandChange,
347
- onFocusChange,
348
- onSelectChange,
349
- selectionMode = "none",
350
- visibleNodeCount = Infinity
351
- }) {
352
- const [state, dispatch] = useReducer(reducer, { data, defaultExpanded, defaultSelected, selectionMode, visibleNodeCount }, createDefaultState);
353
- const [lastData, setLastData] = useState(data);
354
- if (data !== lastData) {
355
- dispatch({
356
- state: createDefaultState({
357
- data,
358
- defaultExpanded,
359
- defaultSelected,
360
- selectionMode,
361
- visibleNodeCount
362
- }),
363
- type: "reset"
364
- });
365
- setLastData(data);
366
- }
367
- const onFocusChangeReference = useRef(onFocusChange);
368
- onFocusChangeReference.current = onFocusChange;
369
- const onExpandChangeReference = useRef(onExpandChange);
370
- onExpandChangeReference.current = onExpandChange;
371
- const onSelectChangeReference = useRef(onSelectChange);
372
- onSelectChangeReference.current = onSelectChange;
373
- const isInitialMount = useRef(true);
374
- useEffect(() => {
375
- if (isInitialMount.current) {
376
- isInitialMount.current = false;
377
- return;
378
- }
379
- if (state.focusedId) {
380
- onFocusChangeReference.current?.(state.focusedId);
381
- }
382
- }, [state.focusedId]);
383
- useEffect(() => {
384
- if (state.expandedIds !== state.previousExpandedIds) {
385
- onExpandChangeReference.current?.(state.expandedIds);
386
- }
387
- }, [state.expandedIds, state.previousExpandedIds]);
388
- useEffect(() => {
389
- if (state.selectedIds !== state.previousSelectedIds) {
390
- onSelectChangeReference.current?.(state.selectedIds);
391
- }
392
- }, [state.selectedIds, state.previousSelectedIds]);
393
- const viewportNodes = useMemo(
394
- () => state.visibleIds.slice(state.viewportFromIndex, state.viewportToIndex).map((id) => {
395
- const flat = state.nodeMap.get(id);
396
- return {
397
- node: flat.node,
398
- state: {
399
- depth: flat.depth,
400
- hasChildren: flat.hasChildren,
401
- isExpanded: state.expandedIds.has(id),
402
- isFocused: id === state.focusedId,
403
- isLoading: state.loadingIds.has(id),
404
- isSelected: state.selectedIds.has(id)
405
- }
406
- };
407
- }),
408
- [
409
- state.visibleIds,
410
- state.viewportFromIndex,
411
- state.viewportToIndex,
412
- state.focusedId,
413
- state.expandedIds,
414
- state.selectedIds,
415
- state.nodeMap,
416
- state.loadingIds
417
- ]
418
- );
419
- const focusNext = useCallback(() => {
420
- dispatch({ type: "focus-next" });
421
- }, []);
422
- const focusPrevious = useCallback(() => {
423
- dispatch({ type: "focus-previous" });
424
- }, []);
425
- const focusFirst = useCallback(() => {
426
- dispatch({ type: "focus-first" });
427
- }, []);
428
- const focusLast = useCallback(() => {
429
- dispatch({ type: "focus-last" });
430
- }, []);
431
- const expand = useCallback(() => {
432
- dispatch({ type: "expand" });
433
- }, []);
434
- const expandNode = useCallback((nodeId) => {
435
- dispatch({ nodeId, type: "expand-node" });
436
- }, []);
437
- const collapse = useCallback(() => {
438
- dispatch({ type: "collapse" });
439
- }, []);
440
- const collapseNode = useCallback((nodeId) => {
441
- dispatch({ nodeId, type: "collapse-node" });
442
- }, []);
443
- const toggleExpanded = useCallback(() => {
444
- dispatch({ type: "toggle-expanded" });
445
- }, []);
446
- const expandAll = useCallback(() => {
447
- dispatch({ type: "expand-all" });
448
- }, []);
449
- const collapseAll = useCallback(() => {
450
- dispatch({ type: "collapse-all" });
451
- }, []);
452
- const select = useCallback(() => {
453
- dispatch({ type: "select" });
454
- }, []);
455
- const focusParent = useCallback(() => {
456
- dispatch({ type: "focus-parent" });
457
- }, []);
458
- const focusFirstChild = useCallback(() => {
459
- dispatch({ type: "focus-first-child" });
460
- }, []);
461
- const setLoading = useCallback((nodeId, isLoading) => {
462
- dispatch({ isLoading, nodeId, type: "set-loading" });
463
- }, []);
464
- const setChildrenError = useCallback((nodeId) => {
465
- dispatch({ nodeId, type: "set-children-error" });
466
- }, []);
467
- const insertChildren = useCallback((parentId, children) => {
468
- dispatch({ children, parentId, type: "insert-children" });
469
- }, []);
470
- return {
471
- collapse,
472
- collapseAll,
473
- collapseNode,
474
- expand,
475
- expandAll,
476
- expandedIds: state.expandedIds,
477
- expandNode,
478
- focusedId: state.focusedId,
479
- focusFirst,
480
- focusFirstChild,
481
- focusLast,
482
- focusNext,
483
- focusParent,
484
- focusPrevious,
485
- hasScrollDown: state.viewportToIndex < state.visibleIds.length,
486
- hasScrollUp: state.viewportFromIndex > 0,
487
- insertChildren,
488
- loadingIds: state.loadingIds,
489
- nodeMap: state.nodeMap,
490
- select,
491
- selectedIds: state.selectedIds,
492
- setChildrenError,
493
- setLoading,
494
- toggleExpanded,
495
- viewportFromIndex: state.viewportFromIndex,
496
- viewportNodes,
497
- viewportToIndex: state.viewportToIndex,
498
- visibleCount: state.visibleIds.length
499
- };
500
- }
501
-
502
- export { createDefaultState, reducer, useTreeViewState };
@@ -1,20 +0,0 @@
1
- import { useState, useEffect } from 'react';
2
- import { g as getWindowSize } from './utils-BgdlrbOH.js';
3
- import useStdout from './useStdout-DyF6DSH0.js';
4
-
5
- const useWindowSize = () => {
6
- const { stdout } = useStdout();
7
- const [size, setSize] = useState(() => getWindowSize(stdout));
8
- useEffect(() => {
9
- const onResize = () => {
10
- setSize(getWindowSize(stdout));
11
- };
12
- stdout.on("resize", onResize);
13
- return () => {
14
- stdout.off("resize", onResize);
15
- };
16
- }, [stdout]);
17
- return size;
18
- };
19
-
20
- export { useWindowSize as default };
@@ -1,140 +0,0 @@
1
- import { createRequire as __cjs_createRequire } from "node:module";
2
-
3
- const __cjs_require = __cjs_createRequire(import.meta.url);
4
-
5
- const __cjs_getProcess = typeof globalThis !== "undefined" && typeof globalThis.process !== "undefined" ? globalThis.process : process;
6
-
7
- const __cjs_getBuiltinModule = (module) => {
8
- // Check if we're in Node.js and version supports getBuiltinModule
9
- if (typeof __cjs_getProcess !== "undefined" && __cjs_getProcess.versions && __cjs_getProcess.versions.node) {
10
- const [major, minor] = __cjs_getProcess.versions.node.split(".").map(Number);
11
- // Node.js 20.16.0+ and 22.3.0+
12
- if (major > 22 || (major === 22 && minor >= 3) || (major === 20 && minor >= 16)) {
13
- return __cjs_getProcess.getBuiltinModule(module);
14
- }
15
- }
16
- // Fallback to createRequire
17
- return __cjs_require(module);
18
- };
19
-
20
- const process = __cjs_getProcess;
21
- const {
22
- execFileSync
23
- } = __cjs_getBuiltinModule("node:child_process");
24
- const fs = __cjs_getBuiltinModule("node:fs");
25
- const tty = __cjs_getBuiltinModule("node:tty");
26
-
27
- const defaultColumns = 80;
28
- const defaultRows = 24;
29
- const exec = (command, arguments_, { shell, env } = {}) => execFileSync(command, arguments_, {
30
- encoding: "utf8",
31
- stdio: ["ignore", "pipe", "ignore"],
32
- timeout: 500,
33
- shell,
34
- env
35
- }).trim();
36
- const create = (columns, rows) => ({
37
- columns: Number.parseInt(columns, 10),
38
- rows: Number.parseInt(rows, 10)
39
- });
40
- const createIfNotDefault = (maybeColumns, maybeRows) => {
41
- const { columns, rows } = create(maybeColumns, maybeRows);
42
- if (Number.isNaN(columns) || Number.isNaN(rows)) {
43
- return;
44
- }
45
- if (columns === defaultColumns && rows === defaultRows) {
46
- return;
47
- }
48
- return { columns, rows };
49
- };
50
- const isForegroundProcess = () => {
51
- if (process.platform !== "linux") {
52
- return true;
53
- }
54
- try {
55
- const statContents = fs.readFileSync("/proc/self/stat", "utf8");
56
- const closingParenthesisIndex = statContents.lastIndexOf(") ");
57
- if (closingParenthesisIndex === -1) {
58
- return false;
59
- }
60
- const statFields = statContents.slice(closingParenthesisIndex + 2).trim().split(/\s+/);
61
- const processGroupId = Number.parseInt(statFields[2], 10);
62
- const foregroundProcessGroupId = Number.parseInt(statFields[5], 10);
63
- if (Number.isNaN(processGroupId) || Number.isNaN(foregroundProcessGroupId)) {
64
- return false;
65
- }
66
- if (foregroundProcessGroupId <= 0) {
67
- return false;
68
- }
69
- return processGroupId === foregroundProcessGroupId;
70
- } catch {
71
- return false;
72
- }
73
- };
74
- function terminalSize() {
75
- const { env, stdout, stderr } = process;
76
- if (stdout?.columns && stdout?.rows) {
77
- return create(stdout.columns, stdout.rows);
78
- }
79
- if (stderr?.columns && stderr?.rows) {
80
- return create(stderr.columns, stderr.rows);
81
- }
82
- if (env.COLUMNS && env.LINES) {
83
- return create(env.COLUMNS, env.LINES);
84
- }
85
- const fallback = {
86
- columns: defaultColumns,
87
- rows: defaultRows
88
- };
89
- if (process.platform === "win32") {
90
- return tput() ?? fallback;
91
- }
92
- if (process.platform === "darwin") {
93
- return devTty() ?? tput() ?? fallback;
94
- }
95
- return devTty() ?? tput() ?? resize() ?? fallback;
96
- }
97
- const devTty = () => {
98
- try {
99
- const flags = process.platform === "darwin" ? fs.constants.O_EVTONLY | fs.constants.O_NONBLOCK : fs.constants.O_NONBLOCK;
100
- const { columns, rows } = tty.WriteStream(fs.openSync("/dev/tty", flags));
101
- return { columns, rows };
102
- } catch {
103
- }
104
- };
105
- const tput = () => {
106
- try {
107
- const columns = exec("tput", ["cols"], { env: { TERM: "dumb", ...process.env } });
108
- const rows = exec("tput", ["lines"], { env: { TERM: "dumb", ...process.env } });
109
- if (columns && rows) {
110
- return createIfNotDefault(columns, rows);
111
- }
112
- } catch {
113
- }
114
- };
115
- const resize = () => {
116
- try {
117
- if (!isForegroundProcess()) {
118
- return;
119
- }
120
- const size = exec("resize", ["-u"]).match(/\d+/g);
121
- if (size.length === 2) {
122
- return createIfNotDefault(size[0], size[1]);
123
- }
124
- } catch {
125
- }
126
- };
127
-
128
- const getWindowSize = (stdout) => {
129
- const { columns, rows } = stdout;
130
- if (columns && rows) {
131
- return { columns, rows };
132
- }
133
- const fallbackSize = terminalSize();
134
- return {
135
- columns: columns || fallbackSize.columns || 80,
136
- rows: rows || fallbackSize.rows || 24
137
- };
138
- };
139
-
140
- export { getWindowSize as g };
@@ -1,8 +0,0 @@
1
- const VARIANT_CONFIG = {
2
- error: { color: "red", icon: "✖" },
3
- info: { color: "blue", icon: "ℹ" },
4
- success: { color: "green", icon: "✔" },
5
- warning: { color: "yellow", icon: "⚠" }
6
- };
7
-
8
- export { VARIANT_CONFIG as V };