tuiuiu.js 0.1.1

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 (803) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +324 -0
  3. package/dist/app/index.d.ts +9 -0
  4. package/dist/app/index.d.ts.map +1 -0
  5. package/dist/app/index.js +12 -0
  6. package/dist/app/index.js.map +1 -0
  7. package/dist/app/render-loop.d.ts +51 -0
  8. package/dist/app/render-loop.d.ts.map +1 -0
  9. package/dist/app/render-loop.js +263 -0
  10. package/dist/app/render-loop.js.map +1 -0
  11. package/dist/atoms/button.d.ts +109 -0
  12. package/dist/atoms/button.d.ts.map +1 -0
  13. package/dist/atoms/button.js +173 -0
  14. package/dist/atoms/button.js.map +1 -0
  15. package/dist/atoms/index.d.ts +29 -0
  16. package/dist/atoms/index.d.ts.map +1 -0
  17. package/dist/atoms/index.js +53 -0
  18. package/dist/atoms/index.js.map +1 -0
  19. package/dist/atoms/progress-bar.d.ts +96 -0
  20. package/dist/atoms/progress-bar.d.ts.map +1 -0
  21. package/dist/atoms/progress-bar.js +443 -0
  22. package/dist/atoms/progress-bar.js.map +1 -0
  23. package/dist/atoms/slider.d.ts +137 -0
  24. package/dist/atoms/slider.d.ts.map +1 -0
  25. package/dist/atoms/slider.js +317 -0
  26. package/dist/atoms/slider.js.map +1 -0
  27. package/dist/atoms/spinner.d.ts +91 -0
  28. package/dist/atoms/spinner.d.ts.map +1 -0
  29. package/dist/atoms/spinner.js +650 -0
  30. package/dist/atoms/spinner.js.map +1 -0
  31. package/dist/atoms/switch.d.ts +102 -0
  32. package/dist/atoms/switch.d.ts.map +1 -0
  33. package/dist/atoms/switch.js +176 -0
  34. package/dist/atoms/switch.js.map +1 -0
  35. package/dist/atoms/text-input.d.ts +82 -0
  36. package/dist/atoms/text-input.d.ts.map +1 -0
  37. package/dist/atoms/text-input.js +347 -0
  38. package/dist/atoms/text-input.js.map +1 -0
  39. package/dist/atoms/timer.d.ts +178 -0
  40. package/dist/atoms/timer.d.ts.map +1 -0
  41. package/dist/atoms/timer.js +355 -0
  42. package/dist/atoms/timer.js.map +1 -0
  43. package/dist/atoms/tooltip.d.ts +191 -0
  44. package/dist/atoms/tooltip.d.ts.map +1 -0
  45. package/dist/atoms/tooltip.js +279 -0
  46. package/dist/atoms/tooltip.js.map +1 -0
  47. package/dist/components/canvas.d.ts +322 -0
  48. package/dist/components/canvas.d.ts.map +1 -0
  49. package/dist/components/canvas.js +833 -0
  50. package/dist/components/canvas.js.map +1 -0
  51. package/dist/components/code-block.d.ts +75 -0
  52. package/dist/components/code-block.d.ts.map +1 -0
  53. package/dist/components/code-block.js +322 -0
  54. package/dist/components/code-block.js.map +1 -0
  55. package/dist/components/components.d.ts +122 -0
  56. package/dist/components/components.d.ts.map +1 -0
  57. package/dist/components/components.js +151 -0
  58. package/dist/components/components.js.map +1 -0
  59. package/dist/components/data-viz/bar-chart.d.ts +167 -0
  60. package/dist/components/data-viz/bar-chart.d.ts.map +1 -0
  61. package/dist/components/data-viz/bar-chart.js +375 -0
  62. package/dist/components/data-viz/bar-chart.js.map +1 -0
  63. package/dist/components/data-viz/gauge.d.ts +163 -0
  64. package/dist/components/data-viz/gauge.d.ts.map +1 -0
  65. package/dist/components/data-viz/gauge.js +451 -0
  66. package/dist/components/data-viz/gauge.js.map +1 -0
  67. package/dist/components/data-viz/heatmap.d.ts +154 -0
  68. package/dist/components/data-viz/heatmap.d.ts.map +1 -0
  69. package/dist/components/data-viz/heatmap.js +458 -0
  70. package/dist/components/data-viz/heatmap.js.map +1 -0
  71. package/dist/components/data-viz/index.d.ts +16 -0
  72. package/dist/components/data-viz/index.d.ts.map +1 -0
  73. package/dist/components/data-viz/index.js +16 -0
  74. package/dist/components/data-viz/index.js.map +1 -0
  75. package/dist/components/data-viz/line-chart.d.ts +157 -0
  76. package/dist/components/data-viz/line-chart.d.ts.map +1 -0
  77. package/dist/components/data-viz/line-chart.js +578 -0
  78. package/dist/components/data-viz/line-chart.js.map +1 -0
  79. package/dist/components/data-viz/sparkline.d.ts +156 -0
  80. package/dist/components/data-viz/sparkline.d.ts.map +1 -0
  81. package/dist/components/data-viz/sparkline.js +325 -0
  82. package/dist/components/data-viz/sparkline.js.map +1 -0
  83. package/dist/components/grid.d.ts +234 -0
  84. package/dist/components/grid.d.ts.map +1 -0
  85. package/dist/components/grid.js +719 -0
  86. package/dist/components/grid.js.map +1 -0
  87. package/dist/components/index.d.ts +33 -0
  88. package/dist/components/index.d.ts.map +1 -0
  89. package/dist/components/index.js +69 -0
  90. package/dist/components/index.js.map +1 -0
  91. package/dist/components/markdown.d.ts +52 -0
  92. package/dist/components/markdown.d.ts.map +1 -0
  93. package/dist/components/markdown.js +341 -0
  94. package/dist/components/markdown.js.map +1 -0
  95. package/dist/components/modal.d.ts +237 -0
  96. package/dist/components/modal.d.ts.map +1 -0
  97. package/dist/components/modal.js +396 -0
  98. package/dist/components/modal.js.map +1 -0
  99. package/dist/components/progress-bar.d.ts +89 -0
  100. package/dist/components/progress-bar.d.ts.map +1 -0
  101. package/dist/components/progress-bar.js +288 -0
  102. package/dist/components/progress-bar.js.map +1 -0
  103. package/dist/components/select.d.ts +114 -0
  104. package/dist/components/select.d.ts.map +1 -0
  105. package/dist/components/select.js +415 -0
  106. package/dist/components/select.js.map +1 -0
  107. package/dist/components/spinner.d.ts +71 -0
  108. package/dist/components/spinner.d.ts.map +1 -0
  109. package/dist/components/spinner.js +300 -0
  110. package/dist/components/spinner.js.map +1 -0
  111. package/dist/components/split-panel.d.ts +175 -0
  112. package/dist/components/split-panel.d.ts.map +1 -0
  113. package/dist/components/split-panel.js +322 -0
  114. package/dist/components/split-panel.js.map +1 -0
  115. package/dist/components/table.d.ts +103 -0
  116. package/dist/components/table.d.ts.map +1 -0
  117. package/dist/components/table.js +359 -0
  118. package/dist/components/table.js.map +1 -0
  119. package/dist/components/text-input.d.ts +79 -0
  120. package/dist/components/text-input.d.ts.map +1 -0
  121. package/dist/components/text-input.js +332 -0
  122. package/dist/components/text-input.js.map +1 -0
  123. package/dist/core/animation.d.ts +262 -0
  124. package/dist/core/animation.d.ts.map +1 -0
  125. package/dist/core/animation.js +626 -0
  126. package/dist/core/animation.js.map +1 -0
  127. package/dist/core/buffer.d.ts +179 -0
  128. package/dist/core/buffer.d.ts.map +1 -0
  129. package/dist/core/buffer.js +549 -0
  130. package/dist/core/buffer.js.map +1 -0
  131. package/dist/core/capabilities.d.ts +184 -0
  132. package/dist/core/capabilities.d.ts.map +1 -0
  133. package/dist/core/capabilities.js +393 -0
  134. package/dist/core/capabilities.js.map +1 -0
  135. package/dist/core/colors.d.ts +111 -0
  136. package/dist/core/colors.d.ts.map +1 -0
  137. package/dist/core/colors.js +417 -0
  138. package/dist/core/colors.js.map +1 -0
  139. package/dist/core/command-palette.d.ts +220 -0
  140. package/dist/core/command-palette.d.ts.map +1 -0
  141. package/dist/core/command-palette.js +564 -0
  142. package/dist/core/command-palette.js.map +1 -0
  143. package/dist/core/constraint.d.ts +315 -0
  144. package/dist/core/constraint.d.ts.map +1 -0
  145. package/dist/core/constraint.js +651 -0
  146. package/dist/core/constraint.js.map +1 -0
  147. package/dist/core/delta-render.d.ts +64 -0
  148. package/dist/core/delta-render.d.ts.map +1 -0
  149. package/dist/core/delta-render.js +367 -0
  150. package/dist/core/delta-render.js.map +1 -0
  151. package/dist/core/dirty.d.ts +181 -0
  152. package/dist/core/dirty.d.ts.map +1 -0
  153. package/dist/core/dirty.js +335 -0
  154. package/dist/core/dirty.js.map +1 -0
  155. package/dist/core/error-boundary.d.ts +79 -0
  156. package/dist/core/error-boundary.d.ts.map +1 -0
  157. package/dist/core/error-boundary.js +258 -0
  158. package/dist/core/error-boundary.js.map +1 -0
  159. package/dist/core/events.d.ts +206 -0
  160. package/dist/core/events.d.ts.map +1 -0
  161. package/dist/core/events.js +411 -0
  162. package/dist/core/events.js.map +1 -0
  163. package/dist/core/focus.d.ts +294 -0
  164. package/dist/core/focus.d.ts.map +1 -0
  165. package/dist/core/focus.js +589 -0
  166. package/dist/core/focus.js.map +1 -0
  167. package/dist/core/graphics.d.ts +146 -0
  168. package/dist/core/graphics.d.ts.map +1 -0
  169. package/dist/core/graphics.js +561 -0
  170. package/dist/core/graphics.js.map +1 -0
  171. package/dist/core/highlighter.d.ts +148 -0
  172. package/dist/core/highlighter.d.ts.map +1 -0
  173. package/dist/core/highlighter.js +2726 -0
  174. package/dist/core/highlighter.js.map +1 -0
  175. package/dist/core/hit-test.d.ts +126 -0
  176. package/dist/core/hit-test.d.ts.map +1 -0
  177. package/dist/core/hit-test.js +336 -0
  178. package/dist/core/hit-test.js.map +1 -0
  179. package/dist/core/index.d.ts +58 -0
  180. package/dist/core/index.d.ts.map +1 -0
  181. package/dist/core/index.js +254 -0
  182. package/dist/core/index.js.map +1 -0
  183. package/dist/core/input.d.ts +241 -0
  184. package/dist/core/input.d.ts.map +1 -0
  185. package/dist/core/input.js +768 -0
  186. package/dist/core/input.js.map +1 -0
  187. package/dist/core/keybindings.d.ts +256 -0
  188. package/dist/core/keybindings.d.ts.map +1 -0
  189. package/dist/core/keybindings.js +532 -0
  190. package/dist/core/keybindings.js.map +1 -0
  191. package/dist/core/layout.d.ts +30 -0
  192. package/dist/core/layout.d.ts.map +1 -0
  193. package/dist/core/layout.js +347 -0
  194. package/dist/core/layout.js.map +1 -0
  195. package/dist/core/overlay.d.ts +318 -0
  196. package/dist/core/overlay.d.ts.map +1 -0
  197. package/dist/core/overlay.js +794 -0
  198. package/dist/core/overlay.js.map +1 -0
  199. package/dist/core/query.d.ts +155 -0
  200. package/dist/core/query.d.ts.map +1 -0
  201. package/dist/core/query.js +616 -0
  202. package/dist/core/query.js.map +1 -0
  203. package/dist/core/renderer.d.ts +28 -0
  204. package/dist/core/renderer.d.ts.map +1 -0
  205. package/dist/core/renderer.js +403 -0
  206. package/dist/core/renderer.js.map +1 -0
  207. package/dist/core/router.d.ts +401 -0
  208. package/dist/core/router.d.ts.map +1 -0
  209. package/dist/core/router.js +766 -0
  210. package/dist/core/router.js.map +1 -0
  211. package/dist/core/screen.d.ts +302 -0
  212. package/dist/core/screen.d.ts.map +1 -0
  213. package/dist/core/screen.js +537 -0
  214. package/dist/core/screen.js.map +1 -0
  215. package/dist/core/signal.d.ts +136 -0
  216. package/dist/core/signal.d.ts.map +1 -0
  217. package/dist/core/signal.js +336 -0
  218. package/dist/core/signal.js.map +1 -0
  219. package/dist/core/theme.d.ts +220 -0
  220. package/dist/core/theme.d.ts.map +1 -0
  221. package/dist/core/theme.js +499 -0
  222. package/dist/core/theme.js.map +1 -0
  223. package/dist/core/tick.d.ts +107 -0
  224. package/dist/core/tick.d.ts.map +1 -0
  225. package/dist/core/tick.js +174 -0
  226. package/dist/core/tick.js.map +1 -0
  227. package/dist/core/transitions.d.ts +335 -0
  228. package/dist/core/transitions.d.ts.map +1 -0
  229. package/dist/core/transitions.js +650 -0
  230. package/dist/core/transitions.js.map +1 -0
  231. package/dist/core/virtual-scroll.d.ts +241 -0
  232. package/dist/core/virtual-scroll.d.ts.map +1 -0
  233. package/dist/core/virtual-scroll.js +476 -0
  234. package/dist/core/virtual-scroll.js.map +1 -0
  235. package/dist/core/visualization.d.ts +248 -0
  236. package/dist/core/visualization.d.ts.map +1 -0
  237. package/dist/core/visualization.js +709 -0
  238. package/dist/core/visualization.js.map +1 -0
  239. package/dist/design-system/core/index.d.ts +6 -0
  240. package/dist/design-system/core/index.d.ts.map +1 -0
  241. package/dist/design-system/core/index.js +6 -0
  242. package/dist/design-system/core/index.js.map +1 -0
  243. package/dist/design-system/core/layout.d.ts +30 -0
  244. package/dist/design-system/core/layout.d.ts.map +1 -0
  245. package/dist/design-system/core/layout.js +344 -0
  246. package/dist/design-system/core/layout.js.map +1 -0
  247. package/dist/design-system/core/renderer.d.ts +28 -0
  248. package/dist/design-system/core/renderer.d.ts.map +1 -0
  249. package/dist/design-system/core/renderer.js +418 -0
  250. package/dist/design-system/core/renderer.js.map +1 -0
  251. package/dist/design-system/data-display/calendar.d.ts +141 -0
  252. package/dist/design-system/data-display/calendar.d.ts.map +1 -0
  253. package/dist/design-system/data-display/calendar.js +524 -0
  254. package/dist/design-system/data-display/calendar.js.map +1 -0
  255. package/dist/design-system/data-display/code-block.d.ts +75 -0
  256. package/dist/design-system/data-display/code-block.d.ts.map +1 -0
  257. package/dist/design-system/data-display/code-block.js +311 -0
  258. package/dist/design-system/data-display/code-block.js.map +1 -0
  259. package/dist/design-system/data-display/data-table.d.ts +173 -0
  260. package/dist/design-system/data-display/data-table.d.ts.map +1 -0
  261. package/dist/design-system/data-display/data-table.js +428 -0
  262. package/dist/design-system/data-display/data-table.js.map +1 -0
  263. package/dist/design-system/data-display/index.d.ts +10 -0
  264. package/dist/design-system/data-display/index.d.ts.map +1 -0
  265. package/dist/design-system/data-display/index.js +16 -0
  266. package/dist/design-system/data-display/index.js.map +1 -0
  267. package/dist/design-system/data-display/markdown.d.ts +52 -0
  268. package/dist/design-system/data-display/markdown.d.ts.map +1 -0
  269. package/dist/design-system/data-display/markdown.js +341 -0
  270. package/dist/design-system/data-display/markdown.js.map +1 -0
  271. package/dist/design-system/data-display/table.d.ts +103 -0
  272. package/dist/design-system/data-display/table.d.ts.map +1 -0
  273. package/dist/design-system/data-display/table.js +342 -0
  274. package/dist/design-system/data-display/table.js.map +1 -0
  275. package/dist/design-system/data-display/tree.d.ts +166 -0
  276. package/dist/design-system/data-display/tree.d.ts.map +1 -0
  277. package/dist/design-system/data-display/tree.js +428 -0
  278. package/dist/design-system/data-display/tree.js.map +1 -0
  279. package/dist/design-system/feedback/badge.d.ts +21 -0
  280. package/dist/design-system/feedback/badge.d.ts.map +1 -0
  281. package/dist/design-system/feedback/badge.js +9 -0
  282. package/dist/design-system/feedback/badge.js.map +1 -0
  283. package/dist/design-system/feedback/index.d.ts +8 -0
  284. package/dist/design-system/feedback/index.d.ts.map +1 -0
  285. package/dist/design-system/feedback/index.js +12 -0
  286. package/dist/design-system/feedback/index.js.map +1 -0
  287. package/dist/design-system/feedback/progress-bar.d.ts +93 -0
  288. package/dist/design-system/feedback/progress-bar.d.ts.map +1 -0
  289. package/dist/design-system/feedback/progress-bar.js +440 -0
  290. package/dist/design-system/feedback/progress-bar.js.map +1 -0
  291. package/dist/design-system/feedback/spinner.d.ts +88 -0
  292. package/dist/design-system/feedback/spinner.d.ts.map +1 -0
  293. package/dist/design-system/feedback/spinner.js +679 -0
  294. package/dist/design-system/feedback/spinner.js.map +1 -0
  295. package/dist/design-system/feedback/timer.d.ts +175 -0
  296. package/dist/design-system/feedback/timer.d.ts.map +1 -0
  297. package/dist/design-system/feedback/timer.js +352 -0
  298. package/dist/design-system/feedback/timer.js.map +1 -0
  299. package/dist/design-system/forms/autocomplete.d.ts +163 -0
  300. package/dist/design-system/forms/autocomplete.d.ts.map +1 -0
  301. package/dist/design-system/forms/autocomplete.js +455 -0
  302. package/dist/design-system/forms/autocomplete.js.map +1 -0
  303. package/dist/design-system/forms/button.d.ts +106 -0
  304. package/dist/design-system/forms/button.d.ts.map +1 -0
  305. package/dist/design-system/forms/button.js +170 -0
  306. package/dist/design-system/forms/button.js.map +1 -0
  307. package/dist/design-system/forms/index.d.ts +12 -0
  308. package/dist/design-system/forms/index.d.ts.map +1 -0
  309. package/dist/design-system/forms/index.js +20 -0
  310. package/dist/design-system/forms/index.js.map +1 -0
  311. package/dist/design-system/forms/multi-select.d.ts +102 -0
  312. package/dist/design-system/forms/multi-select.d.ts.map +1 -0
  313. package/dist/design-system/forms/multi-select.js +309 -0
  314. package/dist/design-system/forms/multi-select.js.map +1 -0
  315. package/dist/design-system/forms/radio-group.d.ts +88 -0
  316. package/dist/design-system/forms/radio-group.d.ts.map +1 -0
  317. package/dist/design-system/forms/radio-group.js +145 -0
  318. package/dist/design-system/forms/radio-group.js.map +1 -0
  319. package/dist/design-system/forms/select.d.ts +116 -0
  320. package/dist/design-system/forms/select.d.ts.map +1 -0
  321. package/dist/design-system/forms/select.js +441 -0
  322. package/dist/design-system/forms/select.js.map +1 -0
  323. package/dist/design-system/forms/slider.d.ts +134 -0
  324. package/dist/design-system/forms/slider.d.ts.map +1 -0
  325. package/dist/design-system/forms/slider.js +314 -0
  326. package/dist/design-system/forms/slider.js.map +1 -0
  327. package/dist/design-system/forms/switch.d.ts +99 -0
  328. package/dist/design-system/forms/switch.d.ts.map +1 -0
  329. package/dist/design-system/forms/switch.js +173 -0
  330. package/dist/design-system/forms/switch.js.map +1 -0
  331. package/dist/design-system/forms/text-input.d.ts +79 -0
  332. package/dist/design-system/forms/text-input.d.ts.map +1 -0
  333. package/dist/design-system/forms/text-input.js +344 -0
  334. package/dist/design-system/forms/text-input.js.map +1 -0
  335. package/dist/design-system/index.d.ts +23 -0
  336. package/dist/design-system/index.d.ts.map +1 -0
  337. package/dist/design-system/index.js +74 -0
  338. package/dist/design-system/index.js.map +1 -0
  339. package/dist/design-system/layout/app.d.ts +205 -0
  340. package/dist/design-system/layout/app.d.ts.map +1 -0
  341. package/dist/design-system/layout/app.js +286 -0
  342. package/dist/design-system/layout/app.js.map +1 -0
  343. package/dist/design-system/layout/collapsible.d.ts +166 -0
  344. package/dist/design-system/layout/collapsible.d.ts.map +1 -0
  345. package/dist/design-system/layout/collapsible.js +286 -0
  346. package/dist/design-system/layout/collapsible.js.map +1 -0
  347. package/dist/design-system/layout/grid.d.ts +232 -0
  348. package/dist/design-system/layout/grid.d.ts.map +1 -0
  349. package/dist/design-system/layout/grid.js +333 -0
  350. package/dist/design-system/layout/grid.js.map +1 -0
  351. package/dist/design-system/layout/index.d.ts +27 -0
  352. package/dist/design-system/layout/index.d.ts.map +1 -0
  353. package/dist/design-system/layout/index.js +34 -0
  354. package/dist/design-system/layout/index.js.map +1 -0
  355. package/dist/design-system/layout/scroll-area.d.ts +188 -0
  356. package/dist/design-system/layout/scroll-area.d.ts.map +1 -0
  357. package/dist/design-system/layout/scroll-area.js +348 -0
  358. package/dist/design-system/layout/scroll-area.js.map +1 -0
  359. package/dist/design-system/layout/split-panel.d.ts +183 -0
  360. package/dist/design-system/layout/split-panel.d.ts.map +1 -0
  361. package/dist/design-system/layout/split-panel.js +323 -0
  362. package/dist/design-system/layout/split-panel.js.map +1 -0
  363. package/dist/design-system/layout/stack.d.ts +189 -0
  364. package/dist/design-system/layout/stack.d.ts.map +1 -0
  365. package/dist/design-system/layout/stack.js +170 -0
  366. package/dist/design-system/layout/stack.js.map +1 -0
  367. package/dist/design-system/layout/tabs.d.ts +129 -0
  368. package/dist/design-system/layout/tabs.d.ts.map +1 -0
  369. package/dist/design-system/layout/tabs.js +373 -0
  370. package/dist/design-system/layout/tabs.js.map +1 -0
  371. package/dist/design-system/media/index.d.ts +13 -0
  372. package/dist/design-system/media/index.d.ts.map +1 -0
  373. package/dist/design-system/media/index.js +23 -0
  374. package/dist/design-system/media/index.js.map +1 -0
  375. package/dist/design-system/media/picture.d.ts +304 -0
  376. package/dist/design-system/media/picture.d.ts.map +1 -0
  377. package/dist/design-system/media/picture.js +681 -0
  378. package/dist/design-system/media/picture.js.map +1 -0
  379. package/dist/design-system/navigation/file-manager.d.ts +492 -0
  380. package/dist/design-system/navigation/file-manager.d.ts.map +1 -0
  381. package/dist/design-system/navigation/file-manager.js +807 -0
  382. package/dist/design-system/navigation/file-manager.js.map +1 -0
  383. package/dist/design-system/navigation/index.d.ts +13 -0
  384. package/dist/design-system/navigation/index.d.ts.map +1 -0
  385. package/dist/design-system/navigation/index.js +19 -0
  386. package/dist/design-system/navigation/index.js.map +1 -0
  387. package/dist/design-system/overlays/command-palette.d.ts +217 -0
  388. package/dist/design-system/overlays/command-palette.d.ts.map +1 -0
  389. package/dist/design-system/overlays/command-palette.js +443 -0
  390. package/dist/design-system/overlays/command-palette.js.map +1 -0
  391. package/dist/design-system/overlays/index.d.ts +7 -0
  392. package/dist/design-system/overlays/index.d.ts.map +1 -0
  393. package/dist/design-system/overlays/index.js +10 -0
  394. package/dist/design-system/overlays/index.js.map +1 -0
  395. package/dist/design-system/overlays/modal.d.ts +251 -0
  396. package/dist/design-system/overlays/modal.d.ts.map +1 -0
  397. package/dist/design-system/overlays/modal.js +461 -0
  398. package/dist/design-system/overlays/modal.js.map +1 -0
  399. package/dist/design-system/overlays/overlay-stack.d.ts +200 -0
  400. package/dist/design-system/overlays/overlay-stack.d.ts.map +1 -0
  401. package/dist/design-system/overlays/overlay-stack.js +341 -0
  402. package/dist/design-system/overlays/overlay-stack.js.map +1 -0
  403. package/dist/design-system/primitives/box.d.ts +16 -0
  404. package/dist/design-system/primitives/box.d.ts.map +1 -0
  405. package/dist/design-system/primitives/box.js +23 -0
  406. package/dist/design-system/primitives/box.js.map +1 -0
  407. package/dist/design-system/primitives/divider.d.ts +52 -0
  408. package/dist/design-system/primitives/divider.d.ts.map +1 -0
  409. package/dist/design-system/primitives/divider.js +72 -0
  410. package/dist/design-system/primitives/divider.js.map +1 -0
  411. package/dist/design-system/primitives/helpers.d.ts +10 -0
  412. package/dist/design-system/primitives/helpers.d.ts.map +1 -0
  413. package/dist/design-system/primitives/helpers.js +27 -0
  414. package/dist/design-system/primitives/helpers.js.map +1 -0
  415. package/dist/design-system/primitives/index.d.ts +11 -0
  416. package/dist/design-system/primitives/index.d.ts.map +1 -0
  417. package/dist/design-system/primitives/index.js +14 -0
  418. package/dist/design-system/primitives/index.js.map +1 -0
  419. package/dist/design-system/primitives/slot.d.ts +35 -0
  420. package/dist/design-system/primitives/slot.d.ts.map +1 -0
  421. package/dist/design-system/primitives/slot.js +17 -0
  422. package/dist/design-system/primitives/slot.js.map +1 -0
  423. package/dist/design-system/primitives/spacer.d.ts +34 -0
  424. package/dist/design-system/primitives/spacer.d.ts.map +1 -0
  425. package/dist/design-system/primitives/spacer.js +53 -0
  426. package/dist/design-system/primitives/spacer.js.map +1 -0
  427. package/dist/design-system/primitives/text.d.ts +12 -0
  428. package/dist/design-system/primitives/text.d.ts.map +1 -0
  429. package/dist/design-system/primitives/text.js +25 -0
  430. package/dist/design-system/primitives/text.js.map +1 -0
  431. package/dist/design-system/primitives/utilities.d.ts +70 -0
  432. package/dist/design-system/primitives/utilities.d.ts.map +1 -0
  433. package/dist/design-system/primitives/utilities.js +56 -0
  434. package/dist/design-system/primitives/utilities.js.map +1 -0
  435. package/dist/design-system/visual/big-text.d.ts +151 -0
  436. package/dist/design-system/visual/big-text.d.ts.map +1 -0
  437. package/dist/design-system/visual/big-text.js +578 -0
  438. package/dist/design-system/visual/big-text.js.map +1 -0
  439. package/dist/design-system/visual/digits.d.ts +159 -0
  440. package/dist/design-system/visual/digits.d.ts.map +1 -0
  441. package/dist/design-system/visual/digits.js +287 -0
  442. package/dist/design-system/visual/digits.js.map +1 -0
  443. package/dist/design-system/visual/index.d.ts +20 -0
  444. package/dist/design-system/visual/index.d.ts.map +1 -0
  445. package/dist/design-system/visual/index.js +23 -0
  446. package/dist/design-system/visual/index.js.map +1 -0
  447. package/dist/design-system/visual/splash-screen.d.ts +93 -0
  448. package/dist/design-system/visual/splash-screen.d.ts.map +1 -0
  449. package/dist/design-system/visual/splash-screen.js +219 -0
  450. package/dist/design-system/visual/splash-screen.js.map +1 -0
  451. package/dist/design-system/visual/tooltip.d.ts +188 -0
  452. package/dist/design-system/visual/tooltip.d.ts.map +1 -0
  453. package/dist/design-system/visual/tooltip.js +276 -0
  454. package/dist/design-system/visual/tooltip.js.map +1 -0
  455. package/dist/dev-tools/debugger.d.ts +223 -0
  456. package/dist/dev-tools/debugger.d.ts.map +1 -0
  457. package/dist/dev-tools/debugger.js +489 -0
  458. package/dist/dev-tools/debugger.js.map +1 -0
  459. package/dist/dev-tools/index.d.ts +22 -0
  460. package/dist/dev-tools/index.d.ts.map +1 -0
  461. package/dist/dev-tools/index.js +63 -0
  462. package/dist/dev-tools/index.js.map +1 -0
  463. package/dist/dev-tools/mouse-simulator.d.ts +155 -0
  464. package/dist/dev-tools/mouse-simulator.d.ts.map +1 -0
  465. package/dist/dev-tools/mouse-simulator.js +314 -0
  466. package/dist/dev-tools/mouse-simulator.js.map +1 -0
  467. package/dist/dev-tools/testing.d.ts +262 -0
  468. package/dist/dev-tools/testing.d.ts.map +1 -0
  469. package/dist/dev-tools/testing.js +858 -0
  470. package/dist/dev-tools/testing.js.map +1 -0
  471. package/dist/hooks/context.d.ts +47 -0
  472. package/dist/hooks/context.d.ts.map +1 -0
  473. package/dist/hooks/context.js +108 -0
  474. package/dist/hooks/context.js.map +1 -0
  475. package/dist/hooks/focus-context.d.ts +65 -0
  476. package/dist/hooks/focus-context.d.ts.map +1 -0
  477. package/dist/hooks/focus-context.js +79 -0
  478. package/dist/hooks/focus-context.js.map +1 -0
  479. package/dist/hooks/index.d.ts +16 -0
  480. package/dist/hooks/index.d.ts.map +1 -0
  481. package/dist/hooks/index.js +22 -0
  482. package/dist/hooks/index.js.map +1 -0
  483. package/dist/hooks/types.d.ts +76 -0
  484. package/dist/hooks/types.d.ts.map +1 -0
  485. package/dist/hooks/types.js +5 -0
  486. package/dist/hooks/types.js.map +1 -0
  487. package/dist/hooks/use-app.d.ts +27 -0
  488. package/dist/hooks/use-app.d.ts.map +1 -0
  489. package/dist/hooks/use-app.js +179 -0
  490. package/dist/hooks/use-app.js.map +1 -0
  491. package/dist/hooks/use-effect.d.ts +20 -0
  492. package/dist/hooks/use-effect.d.ts.map +1 -0
  493. package/dist/hooks/use-effect.js +55 -0
  494. package/dist/hooks/use-effect.js.map +1 -0
  495. package/dist/hooks/use-focus.d.ts +48 -0
  496. package/dist/hooks/use-focus.d.ts.map +1 -0
  497. package/dist/hooks/use-focus.js +152 -0
  498. package/dist/hooks/use-focus.js.map +1 -0
  499. package/dist/hooks/use-input.d.ts +35 -0
  500. package/dist/hooks/use-input.d.ts.map +1 -0
  501. package/dist/hooks/use-input.js +352 -0
  502. package/dist/hooks/use-input.js.map +1 -0
  503. package/dist/hooks/use-mouse.d.ts +82 -0
  504. package/dist/hooks/use-mouse.d.ts.map +1 -0
  505. package/dist/hooks/use-mouse.js +328 -0
  506. package/dist/hooks/use-mouse.js.map +1 -0
  507. package/dist/hooks/use-navigation.d.ts +206 -0
  508. package/dist/hooks/use-navigation.d.ts.map +1 -0
  509. package/dist/hooks/use-navigation.js +319 -0
  510. package/dist/hooks/use-navigation.js.map +1 -0
  511. package/dist/hooks/use-state.d.ts +15 -0
  512. package/dist/hooks/use-state.d.ts.map +1 -0
  513. package/dist/hooks/use-state.js +29 -0
  514. package/dist/hooks/use-state.js.map +1 -0
  515. package/dist/hooks/use-terminal-size.d.ts +12 -0
  516. package/dist/hooks/use-terminal-size.d.ts.map +1 -0
  517. package/dist/hooks/use-terminal-size.js +20 -0
  518. package/dist/hooks/use-terminal-size.js.map +1 -0
  519. package/dist/index.d.ts +85 -0
  520. package/dist/index.d.ts.map +1 -0
  521. package/dist/index.js +334 -0
  522. package/dist/index.js.map +1 -0
  523. package/dist/molecules/autocomplete.d.ts +166 -0
  524. package/dist/molecules/autocomplete.d.ts.map +1 -0
  525. package/dist/molecules/autocomplete.js +458 -0
  526. package/dist/molecules/autocomplete.js.map +1 -0
  527. package/dist/molecules/calendar.d.ts +144 -0
  528. package/dist/molecules/calendar.d.ts.map +1 -0
  529. package/dist/molecules/calendar.js +527 -0
  530. package/dist/molecules/calendar.js.map +1 -0
  531. package/dist/molecules/code-block.d.ts +88 -0
  532. package/dist/molecules/code-block.d.ts.map +1 -0
  533. package/dist/molecules/code-block.js +324 -0
  534. package/dist/molecules/code-block.js.map +1 -0
  535. package/dist/molecules/collapsible.d.ts +169 -0
  536. package/dist/molecules/collapsible.d.ts.map +1 -0
  537. package/dist/molecules/collapsible.js +289 -0
  538. package/dist/molecules/collapsible.js.map +1 -0
  539. package/dist/molecules/data-viz/bar-chart.d.ts +167 -0
  540. package/dist/molecules/data-viz/bar-chart.d.ts.map +1 -0
  541. package/dist/molecules/data-viz/bar-chart.js +375 -0
  542. package/dist/molecules/data-viz/bar-chart.js.map +1 -0
  543. package/dist/molecules/data-viz/gauge.d.ts +163 -0
  544. package/dist/molecules/data-viz/gauge.d.ts.map +1 -0
  545. package/dist/molecules/data-viz/gauge.js +451 -0
  546. package/dist/molecules/data-viz/gauge.js.map +1 -0
  547. package/dist/molecules/data-viz/heatmap.d.ts +154 -0
  548. package/dist/molecules/data-viz/heatmap.d.ts.map +1 -0
  549. package/dist/molecules/data-viz/heatmap.js +458 -0
  550. package/dist/molecules/data-viz/heatmap.js.map +1 -0
  551. package/dist/molecules/data-viz/index.d.ts +16 -0
  552. package/dist/molecules/data-viz/index.d.ts.map +1 -0
  553. package/dist/molecules/data-viz/index.js +16 -0
  554. package/dist/molecules/data-viz/index.js.map +1 -0
  555. package/dist/molecules/data-viz/line-chart.d.ts +157 -0
  556. package/dist/molecules/data-viz/line-chart.d.ts.map +1 -0
  557. package/dist/molecules/data-viz/line-chart.js +578 -0
  558. package/dist/molecules/data-viz/line-chart.js.map +1 -0
  559. package/dist/molecules/data-viz/sparkline.d.ts +156 -0
  560. package/dist/molecules/data-viz/sparkline.d.ts.map +1 -0
  561. package/dist/molecules/data-viz/sparkline.js +325 -0
  562. package/dist/molecules/data-viz/sparkline.js.map +1 -0
  563. package/dist/molecules/index.d.ts +22 -0
  564. package/dist/molecules/index.d.ts.map +1 -0
  565. package/dist/molecules/index.js +26 -0
  566. package/dist/molecules/index.js.map +1 -0
  567. package/dist/molecules/markdown.d.ts +61 -0
  568. package/dist/molecules/markdown.d.ts.map +1 -0
  569. package/dist/molecules/markdown.js +350 -0
  570. package/dist/molecules/markdown.js.map +1 -0
  571. package/dist/molecules/multi-select.d.ts +105 -0
  572. package/dist/molecules/multi-select.d.ts.map +1 -0
  573. package/dist/molecules/multi-select.js +312 -0
  574. package/dist/molecules/multi-select.js.map +1 -0
  575. package/dist/molecules/radio-group.d.ts +91 -0
  576. package/dist/molecules/radio-group.d.ts.map +1 -0
  577. package/dist/molecules/radio-group.js +148 -0
  578. package/dist/molecules/radio-group.js.map +1 -0
  579. package/dist/molecules/select.d.ts +119 -0
  580. package/dist/molecules/select.d.ts.map +1 -0
  581. package/dist/molecules/select.js +444 -0
  582. package/dist/molecules/select.js.map +1 -0
  583. package/dist/molecules/table.d.ts +106 -0
  584. package/dist/molecules/table.d.ts.map +1 -0
  585. package/dist/molecules/table.js +345 -0
  586. package/dist/molecules/table.js.map +1 -0
  587. package/dist/molecules/tabs.d.ts +132 -0
  588. package/dist/molecules/tabs.d.ts.map +1 -0
  589. package/dist/molecules/tabs.js +376 -0
  590. package/dist/molecules/tabs.js.map +1 -0
  591. package/dist/molecules/tree.d.ts +169 -0
  592. package/dist/molecules/tree.d.ts.map +1 -0
  593. package/dist/molecules/tree.js +431 -0
  594. package/dist/molecules/tree.js.map +1 -0
  595. package/dist/organisms/command-palette.d.ts +217 -0
  596. package/dist/organisms/command-palette.d.ts.map +1 -0
  597. package/dist/organisms/command-palette.js +443 -0
  598. package/dist/organisms/command-palette.js.map +1 -0
  599. package/dist/organisms/data-table.d.ts +173 -0
  600. package/dist/organisms/data-table.d.ts.map +1 -0
  601. package/dist/organisms/data-table.js +428 -0
  602. package/dist/organisms/data-table.js.map +1 -0
  603. package/dist/organisms/file-browser.d.ts +492 -0
  604. package/dist/organisms/file-browser.d.ts.map +1 -0
  605. package/dist/organisms/file-browser.js +807 -0
  606. package/dist/organisms/file-browser.js.map +1 -0
  607. package/dist/organisms/grid.d.ts +234 -0
  608. package/dist/organisms/grid.d.ts.map +1 -0
  609. package/dist/organisms/grid.js +719 -0
  610. package/dist/organisms/grid.js.map +1 -0
  611. package/dist/organisms/index.d.ts +30 -0
  612. package/dist/organisms/index.d.ts.map +1 -0
  613. package/dist/organisms/index.js +92 -0
  614. package/dist/organisms/index.js.map +1 -0
  615. package/dist/organisms/modal.d.ts +251 -0
  616. package/dist/organisms/modal.d.ts.map +1 -0
  617. package/dist/organisms/modal.js +461 -0
  618. package/dist/organisms/modal.js.map +1 -0
  619. package/dist/organisms/overlay-stack.d.ts +200 -0
  620. package/dist/organisms/overlay-stack.d.ts.map +1 -0
  621. package/dist/organisms/overlay-stack.js +341 -0
  622. package/dist/organisms/overlay-stack.js.map +1 -0
  623. package/dist/organisms/scroll-area.d.ts +188 -0
  624. package/dist/organisms/scroll-area.d.ts.map +1 -0
  625. package/dist/organisms/scroll-area.js +348 -0
  626. package/dist/organisms/scroll-area.js.map +1 -0
  627. package/dist/organisms/split-panel.d.ts +183 -0
  628. package/dist/organisms/split-panel.d.ts.map +1 -0
  629. package/dist/organisms/split-panel.js +323 -0
  630. package/dist/organisms/split-panel.js.map +1 -0
  631. package/dist/primitives/canvas.d.ts +322 -0
  632. package/dist/primitives/canvas.d.ts.map +1 -0
  633. package/dist/primitives/canvas.js +833 -0
  634. package/dist/primitives/canvas.js.map +1 -0
  635. package/dist/primitives/context.d.ts +83 -0
  636. package/dist/primitives/context.d.ts.map +1 -0
  637. package/dist/primitives/context.js +101 -0
  638. package/dist/primitives/context.js.map +1 -0
  639. package/dist/primitives/divider.d.ts +52 -0
  640. package/dist/primitives/divider.d.ts.map +1 -0
  641. package/dist/primitives/divider.js +71 -0
  642. package/dist/primitives/divider.js.map +1 -0
  643. package/dist/primitives/index.d.ts +10 -0
  644. package/dist/primitives/index.d.ts.map +1 -0
  645. package/dist/primitives/index.js +10 -0
  646. package/dist/primitives/index.js.map +1 -0
  647. package/dist/primitives/nodes.d.ts +152 -0
  648. package/dist/primitives/nodes.d.ts.map +1 -0
  649. package/dist/primitives/nodes.js +164 -0
  650. package/dist/primitives/nodes.js.map +1 -0
  651. package/dist/primitives/signal.d.ts +136 -0
  652. package/dist/primitives/signal.d.ts.map +1 -0
  653. package/dist/primitives/signal.js +338 -0
  654. package/dist/primitives/signal.js.map +1 -0
  655. package/dist/primitives/store.d.ts +86 -0
  656. package/dist/primitives/store.d.ts.map +1 -0
  657. package/dist/primitives/store.js +147 -0
  658. package/dist/primitives/store.js.map +1 -0
  659. package/dist/storybook/app.d.ts +16 -0
  660. package/dist/storybook/app.d.ts.map +1 -0
  661. package/dist/storybook/app.js +697 -0
  662. package/dist/storybook/app.js.map +1 -0
  663. package/dist/storybook/cli.d.ts +10 -0
  664. package/dist/storybook/cli.d.ts.map +1 -0
  665. package/dist/storybook/cli.js +14 -0
  666. package/dist/storybook/cli.js.map +1 -0
  667. package/dist/storybook/components/compare-view.d.ts +46 -0
  668. package/dist/storybook/components/compare-view.d.ts.map +1 -0
  669. package/dist/storybook/components/compare-view.js +235 -0
  670. package/dist/storybook/components/compare-view.js.map +1 -0
  671. package/dist/storybook/components/index.d.ts +7 -0
  672. package/dist/storybook/components/index.d.ts.map +1 -0
  673. package/dist/storybook/components/index.js +7 -0
  674. package/dist/storybook/components/index.js.map +1 -0
  675. package/dist/storybook/components/log-viewer.d.ts +9 -0
  676. package/dist/storybook/components/log-viewer.d.ts.map +1 -0
  677. package/dist/storybook/components/log-viewer.js +46 -0
  678. package/dist/storybook/components/log-viewer.js.map +1 -0
  679. package/dist/storybook/components/preview.d.ts +28 -0
  680. package/dist/storybook/components/preview.d.ts.map +1 -0
  681. package/dist/storybook/components/preview.js +248 -0
  682. package/dist/storybook/components/preview.js.map +1 -0
  683. package/dist/storybook/components/sidebar.d.ts +29 -0
  684. package/dist/storybook/components/sidebar.d.ts.map +1 -0
  685. package/dist/storybook/components/sidebar.js +176 -0
  686. package/dist/storybook/components/sidebar.js.map +1 -0
  687. package/dist/storybook/core/comparatives.d.ts +94 -0
  688. package/dist/storybook/core/comparatives.d.ts.map +1 -0
  689. package/dist/storybook/core/comparatives.js +301 -0
  690. package/dist/storybook/core/comparatives.js.map +1 -0
  691. package/dist/storybook/core/index.d.ts +8 -0
  692. package/dist/storybook/core/index.d.ts.map +1 -0
  693. package/dist/storybook/core/index.js +8 -0
  694. package/dist/storybook/core/index.js.map +1 -0
  695. package/dist/storybook/core/navigator.d.ts +64 -0
  696. package/dist/storybook/core/navigator.d.ts.map +1 -0
  697. package/dist/storybook/core/navigator.js +279 -0
  698. package/dist/storybook/core/navigator.js.map +1 -0
  699. package/dist/storybook/core/playground.d.ts +73 -0
  700. package/dist/storybook/core/playground.d.ts.map +1 -0
  701. package/dist/storybook/core/playground.js +338 -0
  702. package/dist/storybook/core/playground.js.map +1 -0
  703. package/dist/storybook/core/registry.d.ts +87 -0
  704. package/dist/storybook/core/registry.d.ts.map +1 -0
  705. package/dist/storybook/core/registry.js +222 -0
  706. package/dist/storybook/core/registry.js.map +1 -0
  707. package/dist/storybook/data/ascii-art.d.ts +18 -0
  708. package/dist/storybook/data/ascii-art.d.ts.map +1 -0
  709. package/dist/storybook/data/ascii-art.js +62 -0
  710. package/dist/storybook/data/ascii-art.js.map +1 -0
  711. package/dist/storybook/data/tuiuiu-bird-colored.d.ts +13 -0
  712. package/dist/storybook/data/tuiuiu-bird-colored.d.ts.map +1 -0
  713. package/dist/storybook/data/tuiuiu-bird-colored.js +12 -0
  714. package/dist/storybook/data/tuiuiu-bird-colored.js.map +1 -0
  715. package/dist/storybook/index.d.ts +33 -0
  716. package/dist/storybook/index.d.ts.map +1 -0
  717. package/dist/storybook/index.js +44 -0
  718. package/dist/storybook/index.js.map +1 -0
  719. package/dist/storybook/store.d.ts +39 -0
  720. package/dist/storybook/store.d.ts.map +1 -0
  721. package/dist/storybook/store.js +91 -0
  722. package/dist/storybook/store.js.map +1 -0
  723. package/dist/storybook/stories/apps/index.d.ts +24 -0
  724. package/dist/storybook/stories/apps/index.d.ts.map +1 -0
  725. package/dist/storybook/stories/apps/index.js +434 -0
  726. package/dist/storybook/stories/apps/index.js.map +1 -0
  727. package/dist/storybook/stories/atoms/index.d.ts +40 -0
  728. package/dist/storybook/stories/atoms/index.d.ts.map +1 -0
  729. package/dist/storybook/stories/atoms/index.js +462 -0
  730. package/dist/storybook/stories/atoms/index.js.map +1 -0
  731. package/dist/storybook/stories/index.d.ts +37 -0
  732. package/dist/storybook/stories/index.d.ts.map +1 -0
  733. package/dist/storybook/stories/index.js +56 -0
  734. package/dist/storybook/stories/index.js.map +1 -0
  735. package/dist/storybook/stories/molecules/index.d.ts +68 -0
  736. package/dist/storybook/stories/molecules/index.d.ts.map +1 -0
  737. package/dist/storybook/stories/molecules/index.js +587 -0
  738. package/dist/storybook/stories/molecules/index.js.map +1 -0
  739. package/dist/storybook/stories/organisms/index.d.ts +29 -0
  740. package/dist/storybook/stories/organisms/index.d.ts.map +1 -0
  741. package/dist/storybook/stories/organisms/index.js +677 -0
  742. package/dist/storybook/stories/organisms/index.js.map +1 -0
  743. package/dist/storybook/types.d.ts +40 -0
  744. package/dist/storybook/types.d.ts.map +1 -0
  745. package/dist/storybook/types.js +5 -0
  746. package/dist/storybook/types.js.map +1 -0
  747. package/dist/styling/index.d.ts +12 -0
  748. package/dist/styling/index.d.ts.map +1 -0
  749. package/dist/styling/index.js +24 -0
  750. package/dist/styling/index.js.map +1 -0
  751. package/dist/styling/parser.d.ts +217 -0
  752. package/dist/styling/parser.d.ts.map +1 -0
  753. package/dist/styling/parser.js +901 -0
  754. package/dist/styling/parser.js.map +1 -0
  755. package/dist/styling/resolver.d.ts +217 -0
  756. package/dist/styling/resolver.d.ts.map +1 -0
  757. package/dist/styling/resolver.js +628 -0
  758. package/dist/styling/resolver.js.map +1 -0
  759. package/dist/styling/tokenizer.d.ts +121 -0
  760. package/dist/styling/tokenizer.d.ts.map +1 -0
  761. package/dist/styling/tokenizer.js +553 -0
  762. package/dist/styling/tokenizer.js.map +1 -0
  763. package/dist/templates/app.d.ts +205 -0
  764. package/dist/templates/app.d.ts.map +1 -0
  765. package/dist/templates/app.js +286 -0
  766. package/dist/templates/app.js.map +1 -0
  767. package/dist/templates/index.d.ts +30 -0
  768. package/dist/templates/index.d.ts.map +1 -0
  769. package/dist/templates/index.js +40 -0
  770. package/dist/templates/index.js.map +1 -0
  771. package/dist/templates/stack.d.ts +189 -0
  772. package/dist/templates/stack.d.ts.map +1 -0
  773. package/dist/templates/stack.js +170 -0
  774. package/dist/templates/stack.js.map +1 -0
  775. package/dist/utils/batcher.d.ts +88 -0
  776. package/dist/utils/batcher.d.ts.map +1 -0
  777. package/dist/utils/batcher.js +172 -0
  778. package/dist/utils/batcher.js.map +1 -0
  779. package/dist/utils/cursor.d.ts +28 -0
  780. package/dist/utils/cursor.d.ts.map +1 -0
  781. package/dist/utils/cursor.js +86 -0
  782. package/dist/utils/cursor.js.map +1 -0
  783. package/dist/utils/fs-storage.d.ts +23 -0
  784. package/dist/utils/fs-storage.d.ts.map +1 -0
  785. package/dist/utils/fs-storage.js +34 -0
  786. package/dist/utils/fs-storage.js.map +1 -0
  787. package/dist/utils/index.d.ts +14 -0
  788. package/dist/utils/index.d.ts.map +1 -0
  789. package/dist/utils/index.js +15 -0
  790. package/dist/utils/index.js.map +1 -0
  791. package/dist/utils/log-update.d.ts +31 -0
  792. package/dist/utils/log-update.d.ts.map +1 -0
  793. package/dist/utils/log-update.js +147 -0
  794. package/dist/utils/log-update.js.map +1 -0
  795. package/dist/utils/text-utils.d.ts +151 -0
  796. package/dist/utils/text-utils.d.ts.map +1 -0
  797. package/dist/utils/text-utils.js +699 -0
  798. package/dist/utils/text-utils.js.map +1 -0
  799. package/dist/utils/types.d.ts +205 -0
  800. package/dist/utils/types.d.ts.map +1 -0
  801. package/dist/utils/types.js +430 -0
  802. package/dist/utils/types.js.map +1 -0
  803. package/package.json +142 -0
@@ -0,0 +1,347 @@
1
+ /**
2
+ * Reck Layout Engine - Simplified flexbox for terminals
3
+ *
4
+ * ~300 lines of TypeScript handling 90% of terminal UI needs
5
+ */
6
+ import { stringWidth } from '../utils/text-utils.js';
7
+ /**
8
+ * Text measurement cache
9
+ * Caches text dimensions to avoid recalculating for the same text
10
+ */
11
+ const textMeasureCache = new Map();
12
+ const TEXT_CACHE_MAX_SIZE = 1000;
13
+ /**
14
+ * Clear the text measurement cache
15
+ * Call this when you want to free memory or reset measurements
16
+ */
17
+ export function clearTextMeasureCache() {
18
+ textMeasureCache.clear();
19
+ }
20
+ /**
21
+ * Calculate layout for a VNode tree
22
+ */
23
+ export function calculateLayout(node, availableWidth, availableHeight = Infinity) {
24
+ return layoutNode(node, { x: 0, y: 0, width: availableWidth, height: availableHeight });
25
+ }
26
+ /**
27
+ * Layout a single node and its children
28
+ */
29
+ function layoutNode(node, ctx) {
30
+ const style = node.props;
31
+ // Handle display: 'none' - return zero-sized layout
32
+ if (style.display === 'none') {
33
+ return {
34
+ x: ctx.x,
35
+ y: ctx.y,
36
+ width: 0,
37
+ height: 0,
38
+ node,
39
+ children: [],
40
+ };
41
+ }
42
+ // Calculate padding
43
+ const paddingTop = style.paddingTop ?? style.paddingY ?? style.padding ?? 0;
44
+ const paddingBottom = style.paddingBottom ?? style.paddingY ?? style.padding ?? 0;
45
+ const paddingLeft = style.paddingLeft ?? style.paddingX ?? style.padding ?? 0;
46
+ const paddingRight = style.paddingRight ?? style.paddingX ?? style.padding ?? 0;
47
+ // Calculate margin (handle 'auto' as 0 for now, centering would need parent context)
48
+ const resolveMargin = (m) => m === 'auto' ? 0 : (m ?? 0);
49
+ const marginTop = resolveMargin(style.marginTop) ?? resolveMargin(style.marginY) ?? resolveMargin(style.margin);
50
+ const marginBottom = resolveMargin(style.marginBottom) ?? resolveMargin(style.marginY) ?? resolveMargin(style.margin);
51
+ const marginLeft = resolveMargin(style.marginLeft) ?? resolveMargin(style.marginX) ?? resolveMargin(style.margin);
52
+ const marginRight = resolveMargin(style.marginRight) ?? resolveMargin(style.marginX) ?? resolveMargin(style.margin);
53
+ // Border takes 1 char each side if present
54
+ const borderSize = style.borderStyle && style.borderStyle !== 'none' ? 1 : 0;
55
+ // Available space for content (use ctx.width/height when no explicit size set)
56
+ const explicitWidth = resolveSize(style.width, ctx.width);
57
+ const explicitHeight = resolveSize(style.height, ctx.height);
58
+ const contentWidth = (explicitWidth || ctx.width) - paddingLeft - paddingRight - borderSize * 2;
59
+ const contentHeight = (explicitHeight || ctx.height) - paddingTop - paddingBottom - borderSize * 2;
60
+ // Layout children
61
+ const childLayouts = [];
62
+ const direction = style.flexDirection ?? 'column';
63
+ const isRow = direction === 'row' || direction === 'row-reverse';
64
+ const isReverse = direction === 'row-reverse' || direction === 'column-reverse';
65
+ // Use columnGap/rowGap if specified, otherwise fall back to gap
66
+ const currentGap = isRow
67
+ ? (style.columnGap ?? style.gap ?? 0)
68
+ : (style.rowGap ?? style.gap ?? 0);
69
+ if (node.type === 'text' || node.type === 'spacer' || node.type === 'newline') {
70
+ // Leaf nodes - no children to layout
71
+ }
72
+ else if (node.children.length > 0) {
73
+ // Get children, reversing order if needed
74
+ const orderedChildren = isReverse ? [...node.children].reverse() : node.children;
75
+ if (isRow) {
76
+ childLayouts.push(...layoutRow(orderedChildren, contentWidth, contentHeight, currentGap, style));
77
+ }
78
+ else {
79
+ childLayouts.push(...layoutColumn(orderedChildren, contentWidth, contentHeight, currentGap, style));
80
+ }
81
+ }
82
+ // Calculate total content size from children
83
+ let totalWidth = 0;
84
+ let totalHeight = 0;
85
+ if (isRow) {
86
+ for (const child of childLayouts) {
87
+ totalWidth += child.width;
88
+ totalHeight = Math.max(totalHeight, child.height);
89
+ }
90
+ totalWidth += currentGap * Math.max(0, childLayouts.length - 1);
91
+ }
92
+ else {
93
+ for (const child of childLayouts) {
94
+ totalWidth = Math.max(totalWidth, child.width);
95
+ totalHeight += child.height;
96
+ }
97
+ totalHeight += currentGap * Math.max(0, childLayouts.length - 1);
98
+ }
99
+ // Handle text node sizing
100
+ if (node.type === 'text') {
101
+ const text = String(node.props.children ?? '');
102
+ const lines = text.split('\n');
103
+ totalWidth = Math.max(...lines.map(l => stringWidth(l)));
104
+ totalHeight = lines.length;
105
+ }
106
+ // Handle spacer - takes all available space
107
+ if (node.type === 'spacer') {
108
+ totalWidth = ctx.width;
109
+ totalHeight = 1;
110
+ }
111
+ // Handle newline
112
+ if (node.type === 'newline') {
113
+ totalWidth = 0;
114
+ totalHeight = node.props.count ?? 1;
115
+ }
116
+ // Check if element should fill available space
117
+ const flexGrow = style.flexGrow ?? 0;
118
+ const shouldFillWidth = flexGrow > 0;
119
+ // Final size
120
+ // If flexGrow > 0, use context width (fill available space)
121
+ // Otherwise, use content width
122
+ const contentBasedWidth = totalWidth + paddingLeft + paddingRight + borderSize * 2;
123
+ const width = explicitWidth || (shouldFillWidth ? ctx.width : contentBasedWidth);
124
+ const height = explicitHeight || (totalHeight + paddingTop + paddingBottom + borderSize * 2);
125
+ return {
126
+ x: ctx.x + marginLeft,
127
+ y: ctx.y + marginTop,
128
+ width: Math.min(width, ctx.width - marginLeft - marginRight),
129
+ height: Math.min(height, ctx.height - marginTop - marginBottom),
130
+ node,
131
+ children: childLayouts,
132
+ };
133
+ }
134
+ /**
135
+ * Layout children in a row (horizontal)
136
+ */
137
+ function layoutRow(children, width, height, gap, parentStyle) {
138
+ const results = [];
139
+ // First pass: calculate fixed sizes and count flexible children
140
+ let fixedWidth = 0;
141
+ let flexTotal = 0;
142
+ const childInfos = [];
143
+ for (const child of children) {
144
+ const style = child.props;
145
+ const flex = style.flexGrow ?? (child.type === 'spacer' ? 1 : 0);
146
+ const minWidth = style.minWidth ?? 0;
147
+ if (flex > 0) {
148
+ flexTotal += flex;
149
+ childInfos.push({ node: child, flex, minWidth });
150
+ }
151
+ else {
152
+ // Fixed width child - layout to get its natural size
153
+ const layout = layoutNode(child, { x: 0, y: 0, width, height });
154
+ fixedWidth += layout.width;
155
+ childInfos.push({ node: child, flex: 0, minWidth: layout.width });
156
+ }
157
+ }
158
+ // Add gaps to fixed width
159
+ fixedWidth += gap * Math.max(0, children.length - 1);
160
+ // Calculate flexible space
161
+ const flexSpace = Math.max(0, width - fixedWidth);
162
+ const flexUnit = flexTotal > 0 ? flexSpace / flexTotal : 0;
163
+ // Second pass: layout with final sizes
164
+ let x = 0;
165
+ const justifyContent = parentStyle.justifyContent ?? 'flex-start';
166
+ const usedWidth = fixedWidth + (flexTotal > 0 ? flexSpace : 0);
167
+ const remainingSpace = width - usedWidth;
168
+ // Calculate spacing for space-between, space-around, space-evenly
169
+ let spaceBetween = 0;
170
+ let spaceAround = 0;
171
+ if (flexTotal === 0 && childInfos.length > 0) {
172
+ if (justifyContent === 'space-between' && childInfos.length > 1) {
173
+ spaceBetween = remainingSpace / (childInfos.length - 1);
174
+ }
175
+ else if (justifyContent === 'space-around') {
176
+ spaceAround = remainingSpace / (childInfos.length * 2);
177
+ x = spaceAround;
178
+ }
179
+ else if (justifyContent === 'space-evenly') {
180
+ spaceBetween = remainingSpace / (childInfos.length + 1);
181
+ x = spaceBetween;
182
+ }
183
+ else if (justifyContent === 'flex-end') {
184
+ x = remainingSpace;
185
+ }
186
+ else if (justifyContent === 'center') {
187
+ x = remainingSpace / 2;
188
+ }
189
+ }
190
+ for (let i = 0; i < childInfos.length; i++) {
191
+ const info = childInfos[i];
192
+ const childWidth = info.flex > 0 ? Math.floor(flexUnit * info.flex) : info.minWidth;
193
+ const layout = layoutNode(info.node, { x, y: 0, width: childWidth, height });
194
+ // Adjust y based on alignItems (or alignSelf if set on child)
195
+ const childStyle = info.node.props;
196
+ const alignSelf = childStyle.alignSelf;
197
+ const alignItems = alignSelf !== 'auto' && alignSelf ? alignSelf : (parentStyle.alignItems ?? 'flex-start');
198
+ if (alignItems === 'center') {
199
+ layout.y = Math.floor((height - layout.height) / 2);
200
+ }
201
+ else if (alignItems === 'flex-end') {
202
+ layout.y = height - layout.height;
203
+ }
204
+ else if (alignItems === 'baseline') {
205
+ // For baseline, align to top (simplified - true baseline needs font metrics)
206
+ layout.y = 0;
207
+ }
208
+ // 'stretch' is default - no adjustment needed
209
+ results.push(layout);
210
+ // Calculate next x position
211
+ x += layout.width;
212
+ if (justifyContent === 'space-between' && i < childInfos.length - 1) {
213
+ x += spaceBetween;
214
+ }
215
+ else if (justifyContent === 'space-around') {
216
+ x += spaceAround * 2;
217
+ }
218
+ else if (justifyContent === 'space-evenly') {
219
+ x += spaceBetween;
220
+ }
221
+ else {
222
+ x += gap;
223
+ }
224
+ }
225
+ return results;
226
+ }
227
+ /**
228
+ * Layout children in a column (vertical)
229
+ */
230
+ function layoutColumn(children, width, height, gap, parentStyle) {
231
+ const results = [];
232
+ let y = 0;
233
+ // First pass: layout all children normally
234
+ for (let i = 0; i < children.length; i++) {
235
+ const child = children[i];
236
+ const layout = layoutNode(child, { x: 0, y, width, height: height - y });
237
+ // Adjust x based on alignItems (or alignSelf if set on child)
238
+ const childStyle = child.props;
239
+ const alignSelf = childStyle.alignSelf;
240
+ const alignItems = alignSelf !== 'auto' && alignSelf ? alignSelf : (parentStyle.alignItems ?? 'flex-start');
241
+ if (alignItems === 'center') {
242
+ layout.x = Math.floor((width - layout.width) / 2);
243
+ }
244
+ else if (alignItems === 'flex-end') {
245
+ layout.x = width - layout.width;
246
+ }
247
+ else if (alignItems === 'stretch') {
248
+ layout.width = width;
249
+ }
250
+ results.push(layout);
251
+ y += layout.height;
252
+ if (i < children.length - 1) {
253
+ y += gap;
254
+ }
255
+ }
256
+ // Calculate total content height
257
+ const contentHeight = y;
258
+ const remainingSpace = Math.max(0, height - contentHeight);
259
+ // Apply justifyContent by offsetting all results
260
+ const justifyContent = parentStyle.justifyContent ?? 'flex-start';
261
+ if (remainingSpace > 0 && results.length > 0) {
262
+ let offset = 0;
263
+ if (justifyContent === 'flex-end') {
264
+ offset = remainingSpace;
265
+ }
266
+ else if (justifyContent === 'center') {
267
+ offset = Math.floor(remainingSpace / 2);
268
+ }
269
+ else if (justifyContent === 'space-between' && results.length > 1) {
270
+ const spaceBetween = remainingSpace / (results.length - 1);
271
+ for (let i = 0; i < results.length; i++) {
272
+ results[i].y += Math.floor(spaceBetween * i);
273
+ }
274
+ return results;
275
+ }
276
+ else if (justifyContent === 'space-around') {
277
+ const spaceAround = remainingSpace / (results.length * 2);
278
+ for (let i = 0; i < results.length; i++) {
279
+ results[i].y += Math.floor(spaceAround * (2 * i + 1));
280
+ }
281
+ return results;
282
+ }
283
+ else if (justifyContent === 'space-evenly') {
284
+ const spaceEvenly = remainingSpace / (results.length + 1);
285
+ for (let i = 0; i < results.length; i++) {
286
+ results[i].y += Math.floor(spaceEvenly * (i + 1));
287
+ }
288
+ return results;
289
+ }
290
+ // Apply simple offset for flex-end and center
291
+ if (offset > 0) {
292
+ for (const layout of results) {
293
+ layout.y += offset;
294
+ }
295
+ }
296
+ }
297
+ return results;
298
+ }
299
+ /**
300
+ * Resolve a size value (number, percentage, or undefined)
301
+ */
302
+ function resolveSize(size, available) {
303
+ if (size === undefined)
304
+ return 0;
305
+ if (typeof size === 'number')
306
+ return size;
307
+ if (size.endsWith('%')) {
308
+ return Math.floor((parseFloat(size) / 100) * available);
309
+ }
310
+ return parseInt(size, 10) || 0;
311
+ }
312
+ /**
313
+ * Get visible width of text (accounting for ANSI codes and wide chars)
314
+ */
315
+ export function getVisibleWidth(text) {
316
+ return stringWidth(text);
317
+ }
318
+ /**
319
+ * Measure text dimensions (with caching for performance)
320
+ *
321
+ * @param text - The text to measure (may contain ANSI codes)
322
+ * @returns Object with width (max line length) and height (line count)
323
+ */
324
+ export function measureText(text) {
325
+ // Check cache first
326
+ const cached = textMeasureCache.get(text);
327
+ if (cached) {
328
+ return cached;
329
+ }
330
+ // Calculate dimensions
331
+ const lines = text.split('\n');
332
+ const result = {
333
+ width: Math.max(0, ...lines.map(l => stringWidth(l))),
334
+ height: lines.length,
335
+ };
336
+ // Store in cache (with size limit to prevent memory issues)
337
+ if (textMeasureCache.size >= TEXT_CACHE_MAX_SIZE) {
338
+ // Remove oldest entry (first key in Map iteration order)
339
+ const firstKey = textMeasureCache.keys().next().value;
340
+ if (firstKey !== undefined) {
341
+ textMeasureCache.delete(firstKey);
342
+ }
343
+ }
344
+ textMeasureCache.set(text, result);
345
+ return result;
346
+ }
347
+ //# sourceMappingURL=layout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layout.js","sourceRoot":"","sources":["../../src/core/layout.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,WAAW,EAAa,MAAM,wBAAwB,CAAC;AAEhE;;;GAGG;AACH,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAA6C,CAAC;AAC9E,MAAM,mBAAmB,GAAG,IAAI,CAAC;AAEjC;;;GAGG;AACH,MAAM,UAAU,qBAAqB;IACnC,gBAAgB,CAAC,KAAK,EAAE,CAAC;AAC3B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAC7B,IAAW,EACX,cAAsB,EACtB,kBAA0B,QAAQ;IAElC,OAAO,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;AAC1F,CAAC;AAED;;GAEG;AACH,SAAS,UAAU,CAAC,IAAW,EAAE,GAAkB;IACjD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAiB,CAAC;IAErC,oDAAoD;IACpD,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;QAC7B,OAAO;YACL,CAAC,EAAE,GAAG,CAAC,CAAC;YACR,CAAC,EAAE,GAAG,CAAC,CAAC;YACR,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,CAAC;YACT,IAAI;YACJ,QAAQ,EAAE,EAAE;SACb,CAAC;IACJ,CAAC;IAED,oBAAoB;IACpB,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;IAC5E,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;IAClF,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;IAC9E,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;IAEhF,qFAAqF;IACrF,MAAM,aAAa,GAAG,CAAC,CAA8B,EAAU,EAAE,CAC/D,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9B,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAChH,MAAM,YAAY,GAAG,aAAa,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACtH,MAAM,UAAU,GAAG,aAAa,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAClH,MAAM,WAAW,GAAG,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAEpH,2CAA2C;IAC3C,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,WAAW,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7E,+EAA+E;IAC/E,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IAC1D,MAAM,cAAc,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7D,MAAM,YAAY,GAAG,CAAC,aAAa,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,WAAW,GAAG,YAAY,GAAG,UAAU,GAAG,CAAC,CAAC;IAChG,MAAM,aAAa,GAAG,CAAC,cAAc,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,UAAU,GAAG,aAAa,GAAG,UAAU,GAAG,CAAC,CAAC;IAEnG,kBAAkB;IAClB,MAAM,YAAY,GAAiB,EAAE,CAAC;IACtC,MAAM,SAAS,GAAG,KAAK,CAAC,aAAa,IAAI,QAAQ,CAAC;IAClD,MAAM,KAAK,GAAG,SAAS,KAAK,KAAK,IAAI,SAAS,KAAK,aAAa,CAAC;IACjE,MAAM,SAAS,GAAG,SAAS,KAAK,aAAa,IAAI,SAAS,KAAK,gBAAgB,CAAC;IAEhF,gEAAgE;IAChE,MAAM,UAAU,GAAG,KAAK;QACtB,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;IAErC,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC9E,qCAAqC;IACvC,CAAC;SAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpC,0CAA0C;QAC1C,MAAM,eAAe,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;QAEjF,IAAI,KAAK,EAAE,CAAC;YACV,YAAY,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,eAAe,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;QACnG,CAAC;aAAM,CAAC;YACN,YAAY,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,eAAe,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;QACtG,CAAC;IACH,CAAC;IAED,6CAA6C;IAC7C,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,WAAW,GAAG,CAAC,CAAC;IAEpB,IAAI,KAAK,EAAE,CAAC;QACV,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;YACjC,UAAU,IAAI,KAAK,CAAC,KAAK,CAAC;YAC1B,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACpD,CAAC;QACD,UAAU,IAAI,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAClE,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;YACjC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;YAC/C,WAAW,IAAI,KAAK,CAAC,MAAM,CAAC;QAC9B,CAAC;QACD,WAAW,IAAI,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACnE,CAAC;IAED,0BAA0B;IAC1B,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC/B,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC;IAC7B,CAAC;IAED,4CAA4C;IAC5C,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC3B,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC;QACvB,WAAW,GAAG,CAAC,CAAC;IAClB,CAAC;IAED,iBAAiB;IACjB,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC5B,UAAU,GAAG,CAAC,CAAC;QACf,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC;IACtC,CAAC;IAED,+CAA+C;IAC/C,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC;IACrC,MAAM,eAAe,GAAG,QAAQ,GAAG,CAAC,CAAC;IAErC,aAAa;IACb,4DAA4D;IAC5D,+BAA+B;IAC/B,MAAM,iBAAiB,GAAG,UAAU,GAAG,WAAW,GAAG,YAAY,GAAG,UAAU,GAAG,CAAC,CAAC;IACnF,MAAM,KAAK,GAAG,aAAa,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC;IACjF,MAAM,MAAM,GAAG,cAAc,IAAI,CAAC,WAAW,GAAG,UAAU,GAAG,aAAa,GAAG,UAAU,GAAG,CAAC,CAAC,CAAC;IAE7F,OAAO;QACL,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,UAAU;QACrB,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,SAAS;QACpB,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,GAAG,UAAU,GAAG,WAAW,CAAC;QAC5D,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,SAAS,GAAG,YAAY,CAAC;QAC/D,IAAI;QACJ,QAAQ,EAAE,YAAY;KACvB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,SAAS,CAChB,QAAiB,EACjB,KAAa,EACb,MAAc,EACd,GAAW,EACX,WAAqB;IAErB,MAAM,OAAO,GAAiB,EAAE,CAAC;IAEjC,gEAAgE;IAChE,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,MAAM,UAAU,GAAsD,EAAE,CAAC;IAEzE,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAiB,CAAC;QACtC,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjE,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC;QAErC,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;YACb,SAAS,IAAI,IAAI,CAAC;YAClB,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,qDAAqD;YACrD,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YAChE,UAAU,IAAI,MAAM,CAAC,KAAK,CAAC;YAC3B,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED,0BAA0B;IAC1B,UAAU,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAErD,2BAA2B;IAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,UAAU,CAAC,CAAC;IAClD,MAAM,QAAQ,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAE3D,uCAAuC;IACvC,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,MAAM,cAAc,GAAG,WAAW,CAAC,cAAc,IAAI,YAAY,CAAC;IAClE,MAAM,SAAS,GAAG,UAAU,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/D,MAAM,cAAc,GAAG,KAAK,GAAG,SAAS,CAAC;IAEzC,kEAAkE;IAClE,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,WAAW,GAAG,CAAC,CAAC;IAEpB,IAAI,SAAS,KAAK,CAAC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7C,IAAI,cAAc,KAAK,eAAe,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChE,YAAY,GAAG,cAAc,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC1D,CAAC;aAAM,IAAI,cAAc,KAAK,cAAc,EAAE,CAAC;YAC7C,WAAW,GAAG,cAAc,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACvD,CAAC,GAAG,WAAW,CAAC;QAClB,CAAC;aAAM,IAAI,cAAc,KAAK,cAAc,EAAE,CAAC;YAC7C,YAAY,GAAG,cAAc,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACxD,CAAC,GAAG,YAAY,CAAC;QACnB,CAAC;aAAM,IAAI,cAAc,KAAK,UAAU,EAAE,CAAC;YACzC,CAAC,GAAG,cAAc,CAAC;QACrB,CAAC;aAAM,IAAI,cAAc,KAAK,QAAQ,EAAE,CAAC;YACvC,CAAC,GAAG,cAAc,GAAG,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;QACpF,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;QAE7E,8DAA8D;QAC9D,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,KAAiB,CAAC;QAC/C,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;QACvC,MAAM,UAAU,GAAG,SAAS,KAAK,MAAM,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,UAAU,IAAI,YAAY,CAAC,CAAC;QAE5G,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACtD,CAAC;aAAM,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;YACrC,MAAM,CAAC,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QACpC,CAAC;aAAM,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;YACrC,6EAA6E;YAC7E,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC;QACf,CAAC;QACD,8CAA8C;QAE9C,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAErB,4BAA4B;QAC5B,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC;QAClB,IAAI,cAAc,KAAK,eAAe,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpE,CAAC,IAAI,YAAY,CAAC;QACpB,CAAC;aAAM,IAAI,cAAc,KAAK,cAAc,EAAE,CAAC;YAC7C,CAAC,IAAI,WAAW,GAAG,CAAC,CAAC;QACvB,CAAC;aAAM,IAAI,cAAc,KAAK,cAAc,EAAE,CAAC;YAC7C,CAAC,IAAI,YAAY,CAAC;QACpB,CAAC;aAAM,CAAC;YACN,CAAC,IAAI,GAAG,CAAC;QACX,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CACnB,QAAiB,EACjB,KAAa,EACb,MAAc,EACd,GAAW,EACX,WAAqB;IAErB,MAAM,OAAO,GAAiB,EAAE,CAAC;IACjC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEV,2CAA2C;IAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC1B,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC;QAEzE,8DAA8D;QAC9D,MAAM,UAAU,GAAG,KAAK,CAAC,KAAiB,CAAC;QAC3C,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;QACvC,MAAM,UAAU,GAAG,SAAS,KAAK,MAAM,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,UAAU,IAAI,YAAY,CAAC,CAAC;QAE5G,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QACpD,CAAC;aAAM,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;YACrC,MAAM,CAAC,CAAC,GAAG,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAClC,CAAC;aAAM,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YACpC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QACvB,CAAC;QAED,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrB,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC;QAEnB,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,CAAC,IAAI,GAAG,CAAC;QACX,CAAC;IACH,CAAC;IAED,iCAAiC;IACjC,MAAM,aAAa,GAAG,CAAC,CAAC;IACxB,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,aAAa,CAAC,CAAC;IAE3D,iDAAiD;IACjD,MAAM,cAAc,GAAG,WAAW,CAAC,cAAc,IAAI,YAAY,CAAC;IAElE,IAAI,cAAc,GAAG,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7C,IAAI,MAAM,GAAG,CAAC,CAAC;QAEf,IAAI,cAAc,KAAK,UAAU,EAAE,CAAC;YAClC,MAAM,GAAG,cAAc,CAAC;QAC1B,CAAC;aAAM,IAAI,cAAc,KAAK,QAAQ,EAAE,CAAC;YACvC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC;QAC1C,CAAC;aAAM,IAAI,cAAc,KAAK,eAAe,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpE,MAAM,YAAY,GAAG,cAAc,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC3D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACxC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;YAC/C,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;aAAM,IAAI,cAAc,KAAK,cAAc,EAAE,CAAC;YAC7C,MAAM,WAAW,GAAG,cAAc,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC1D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACxC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACxD,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;aAAM,IAAI,cAAc,KAAK,cAAc,EAAE,CAAC;YAC7C,MAAM,WAAW,GAAG,cAAc,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC1D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACxC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACpD,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,8CAA8C;QAC9C,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;YACf,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,MAAM,CAAC,CAAC,IAAI,MAAM,CAAC;YACrB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAAC,IAAiC,EAAE,SAAiB;IACvE,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,CAAC,CAAC;IACjC,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC1C,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,oBAAoB;IACpB,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC1C,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,uBAAuB;IACvB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,MAAM,GAAG;QACb,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;QACrD,MAAM,EAAE,KAAK,CAAC,MAAM;KACrB,CAAC;IAEF,4DAA4D;IAC5D,IAAI,gBAAgB,CAAC,IAAI,IAAI,mBAAmB,EAAE,CAAC;QACjD,yDAAyD;QACzD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;QACtD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IACD,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAEnC,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,318 @@
1
+ /**
2
+ * Overlay System
3
+ *
4
+ * Features:
5
+ * - Layer stack management with z-index ordering
6
+ * - Modal dialogs with backdrop
7
+ * - Toast notifications with auto-dismiss
8
+ * - Popup menus and dropdowns
9
+ * - Tooltips with positioning
10
+ * - Focus trap integration
11
+ *
12
+ *
13
+ */
14
+ /** Overlay layer type */
15
+ export type OverlayType = 'modal' | 'toast' | 'popup' | 'tooltip' | 'menu' | 'custom';
16
+ /** Position for overlays */
17
+ export interface OverlayPosition {
18
+ x: number;
19
+ y: number;
20
+ }
21
+ /** Anchor position for relative positioning */
22
+ export type AnchorPosition = 'top' | 'bottom' | 'left' | 'right' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right' | 'center';
23
+ /** Size constraints */
24
+ export interface OverlaySize {
25
+ width?: number;
26
+ height?: number;
27
+ minWidth?: number;
28
+ minHeight?: number;
29
+ maxWidth?: number;
30
+ maxHeight?: number;
31
+ }
32
+ /** Overlay layer */
33
+ export interface OverlayLayer {
34
+ /** Unique layer ID */
35
+ id: string;
36
+ /** Layer type */
37
+ type: OverlayType;
38
+ /** Z-index for stacking order */
39
+ zIndex: number;
40
+ /** Position on screen */
41
+ position: OverlayPosition;
42
+ /** Size constraints */
43
+ size: OverlaySize;
44
+ /** Content to render (callback returning string lines) */
45
+ content: () => string[];
46
+ /** Whether layer is visible */
47
+ visible: boolean;
48
+ /** Whether to show backdrop */
49
+ backdrop?: boolean;
50
+ /** Backdrop opacity (0-1) */
51
+ backdropOpacity?: number;
52
+ /** Whether to trap focus */
53
+ trapFocus?: boolean;
54
+ /** Auto-dismiss timeout (ms) */
55
+ autoDismiss?: number;
56
+ /** Dismiss timer handle */
57
+ dismissTimer?: ReturnType<typeof setTimeout>;
58
+ /** Callback when layer is dismissed */
59
+ onDismiss?: () => void;
60
+ /** Custom data */
61
+ data?: unknown;
62
+ }
63
+ /** Modal options */
64
+ export interface ModalOptions {
65
+ /** Modal ID (auto-generated if not provided) */
66
+ id?: string;
67
+ /** Modal title */
68
+ title?: string;
69
+ /** Modal content lines */
70
+ content: string[] | (() => string[]);
71
+ /** Position (default: center) */
72
+ position?: 'center' | OverlayPosition;
73
+ /** Size constraints */
74
+ size?: OverlaySize;
75
+ /** Show backdrop (default: true) */
76
+ backdrop?: boolean;
77
+ /** Trap focus (default: true) */
78
+ trapFocus?: boolean;
79
+ /** Close on backdrop click (default: true) */
80
+ closeOnBackdrop?: boolean;
81
+ /** Close on escape key (default: true) */
82
+ closeOnEscape?: boolean;
83
+ /** Callback when closed */
84
+ onClose?: () => void;
85
+ /** Z-index (default: auto) */
86
+ zIndex?: number;
87
+ }
88
+ /** Toast options */
89
+ export interface ToastOptions {
90
+ /** Toast message */
91
+ message: string;
92
+ /** Toast type for styling */
93
+ type?: 'info' | 'success' | 'warning' | 'error';
94
+ /** Duration in ms (default: 3000) */
95
+ duration?: number;
96
+ /** Position (default: bottom-right) */
97
+ position?: AnchorPosition;
98
+ /** Toast ID */
99
+ id?: string;
100
+ /** Show dismiss button */
101
+ dismissible?: boolean;
102
+ /** Callback when dismissed */
103
+ onDismiss?: () => void;
104
+ }
105
+ /** Popup options */
106
+ export interface PopupOptions {
107
+ /** Popup ID */
108
+ id?: string;
109
+ /** Content lines */
110
+ content: string[] | (() => string[]);
111
+ /** Anchor position relative to target */
112
+ anchor?: AnchorPosition;
113
+ /** Target position to anchor to */
114
+ target: OverlayPosition;
115
+ /** Offset from target */
116
+ offset?: {
117
+ x?: number;
118
+ y?: number;
119
+ };
120
+ /** Auto-close when clicking outside */
121
+ closeOnClickOutside?: boolean;
122
+ /** Callback when closed */
123
+ onClose?: () => void;
124
+ }
125
+ /** Tooltip options */
126
+ export interface TooltipOptions {
127
+ /** Tooltip text */
128
+ text: string;
129
+ /** Target position */
130
+ target: OverlayPosition;
131
+ /** Preferred position (default: top) */
132
+ position?: 'top' | 'bottom' | 'left' | 'right';
133
+ /** Delay before showing (ms) */
134
+ delay?: number;
135
+ /** Max width for wrapping */
136
+ maxWidth?: number;
137
+ }
138
+ /** Menu item */
139
+ export interface MenuItem {
140
+ /** Item label */
141
+ label: string;
142
+ /** Item value (returned on selection) */
143
+ value?: string;
144
+ /** Shortcut key display */
145
+ shortcut?: string;
146
+ /** Is item disabled */
147
+ disabled?: boolean;
148
+ /** Is separator */
149
+ separator?: boolean;
150
+ /** Submenu items */
151
+ submenu?: MenuItem[];
152
+ /** Icon character */
153
+ icon?: string;
154
+ }
155
+ /** Menu options */
156
+ export interface MenuOptions {
157
+ /** Menu items */
158
+ items: MenuItem[];
159
+ /** Menu position */
160
+ position: OverlayPosition;
161
+ /** Initial selected index */
162
+ selectedIndex?: number;
163
+ /** Callback when item selected */
164
+ onSelect?: (item: MenuItem, index: number) => void;
165
+ /** Callback when closed */
166
+ onClose?: () => void;
167
+ /** Min width */
168
+ minWidth?: number;
169
+ }
170
+ /**
171
+ * Reset overlay manager state (for testing)
172
+ */
173
+ export declare function resetOverlayManager(): void;
174
+ /**
175
+ * Set terminal size for overlay calculations
176
+ */
177
+ export declare function setOverlayTerminalSize(width: number, height: number): void;
178
+ /**
179
+ * Get terminal size
180
+ */
181
+ export declare function getOverlayTerminalSize(): {
182
+ width: number;
183
+ height: number;
184
+ };
185
+ /**
186
+ * Add overlay layer
187
+ */
188
+ export declare function addLayer(layer: Omit<OverlayLayer, 'zIndex'> & {
189
+ zIndex?: number;
190
+ }): OverlayLayer;
191
+ /**
192
+ * Remove overlay layer
193
+ */
194
+ export declare function removeLayer(id: string): boolean;
195
+ /**
196
+ * Get layer by ID
197
+ */
198
+ export declare function getLayer(id: string): OverlayLayer | undefined;
199
+ /**
200
+ * Get all layers sorted by z-index (ascending)
201
+ */
202
+ export declare function getLayers(): OverlayLayer[];
203
+ /**
204
+ * Get visible layers sorted by z-index
205
+ */
206
+ export declare function getVisibleLayers(): OverlayLayer[];
207
+ /**
208
+ * Get topmost layer
209
+ */
210
+ export declare function getTopLayer(): OverlayLayer | undefined;
211
+ /**
212
+ * Check if any layer has backdrop
213
+ */
214
+ export declare function hasBackdrop(): boolean;
215
+ /**
216
+ * Update layer properties
217
+ */
218
+ export declare function updateLayer(id: string, updates: Partial<OverlayLayer>): boolean;
219
+ /**
220
+ * Show layer
221
+ */
222
+ export declare function showLayer(id: string): boolean;
223
+ /**
224
+ * Hide layer
225
+ */
226
+ export declare function hideLayer(id: string): boolean;
227
+ /**
228
+ * Bring layer to front
229
+ */
230
+ export declare function bringToFront(id: string): boolean;
231
+ /**
232
+ * Get layer count
233
+ */
234
+ export declare function getLayerCount(): number;
235
+ /**
236
+ * Check if layer exists
237
+ */
238
+ export declare function hasLayer(id: string): boolean;
239
+ /**
240
+ * Show modal dialog
241
+ */
242
+ export declare function showModal(options: ModalOptions): string;
243
+ /**
244
+ * Close modal
245
+ */
246
+ export declare function closeModal(id: string): boolean;
247
+ /**
248
+ * Close topmost modal
249
+ */
250
+ export declare function closeTopModal(): boolean;
251
+ /**
252
+ * Show toast notification
253
+ */
254
+ export declare function showToast(options: ToastOptions): string;
255
+ /**
256
+ * Dismiss toast
257
+ */
258
+ export declare function dismissToast(id: string): boolean;
259
+ /**
260
+ * Dismiss all toasts
261
+ */
262
+ export declare function dismissAllToasts(): void;
263
+ /**
264
+ * Show popup
265
+ */
266
+ export declare function showPopup(options: PopupOptions): string;
267
+ /**
268
+ * Close popup
269
+ */
270
+ export declare function closePopup(id: string): boolean;
271
+ /**
272
+ * Show tooltip
273
+ */
274
+ export declare function showTooltip(options: TooltipOptions): string;
275
+ /**
276
+ * Hide tooltip
277
+ */
278
+ export declare function hideTooltip(): void;
279
+ /**
280
+ * Show context menu
281
+ */
282
+ export declare function showMenu(options: MenuOptions): string;
283
+ /**
284
+ * Close menu
285
+ */
286
+ export declare function closeMenu(id: string): boolean;
287
+ /**
288
+ * Update menu selection
289
+ */
290
+ export declare function updateMenuSelection(id: string, selectedIndex: number): boolean;
291
+ /**
292
+ * Select menu item
293
+ */
294
+ export declare function selectMenuItem(id: string): MenuItem | undefined;
295
+ /**
296
+ * Render all visible overlays onto a buffer
297
+ * Returns array of { x, y, line } for each overlay line
298
+ */
299
+ export declare function renderOverlays(): Array<{
300
+ x: number;
301
+ y: number;
302
+ line: string;
303
+ }>;
304
+ /**
305
+ * Check if point is inside any overlay
306
+ */
307
+ export declare function isPointInOverlay(x: number, y: number): OverlayLayer | undefined;
308
+ /**
309
+ * Handle click at position
310
+ * Returns true if click was handled by an overlay
311
+ */
312
+ export declare function handleOverlayClick(x: number, y: number): boolean;
313
+ /**
314
+ * Handle escape key
315
+ * Returns true if escape was handled
316
+ */
317
+ export declare function handleOverlayEscape(): boolean;
318
+ //# sourceMappingURL=overlay.d.ts.map