@exegia/corpora-ui 3.0.0 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (909) hide show
  1. package/README.md +20 -0
  2. package/dist-lib/autocomplete-DzjspdKa.js +151 -0
  3. package/dist-lib/base-CiR7nLAD.js +37 -0
  4. package/dist-lib/breadcrumb-DtFOhTfs.js +83 -0
  5. package/dist-lib/button-DDBbG_zF.js +143 -0
  6. package/dist-lib/button.js +3 -0
  7. package/dist-lib/calendar-Dyut8HPa.js +62 -0
  8. package/dist-lib/card.js +150 -0
  9. package/dist-lib/checkbox-group-B0BPFc-K.js +12 -0
  10. package/dist-lib/combobox-BwfmU1S_.js +267 -0
  11. package/dist-lib/components/atoms/text/default.d.ts +2 -1143
  12. package/dist-lib/components/blocks/shell/index.d.ts +1 -0
  13. package/dist-lib/components/blocks/sidebar-primitives/content.d.ts +2 -0
  14. package/dist-lib/components/blocks/sidebar-primitives/context.d.ts +2 -0
  15. package/dist-lib/components/blocks/sidebar-primitives/footer.d.ts +2 -0
  16. package/dist-lib/components/blocks/sidebar-primitives/group-action.d.ts +3 -0
  17. package/dist-lib/components/blocks/sidebar-primitives/group-content.d.ts +2 -0
  18. package/dist-lib/components/blocks/sidebar-primitives/group-label.d.ts +3 -0
  19. package/dist-lib/components/blocks/sidebar-primitives/group.d.ts +2 -0
  20. package/dist-lib/components/blocks/sidebar-primitives/header.d.ts +2 -0
  21. package/dist-lib/components/blocks/sidebar-primitives/index.d.ts +26 -0
  22. package/dist-lib/components/blocks/sidebar-primitives/input.d.ts +3 -0
  23. package/dist-lib/components/blocks/sidebar-primitives/inset.d.ts +2 -0
  24. package/dist-lib/components/blocks/sidebar-primitives/menu-action.d.ts +5 -0
  25. package/dist-lib/components/blocks/sidebar-primitives/menu-badge.d.ts +2 -0
  26. package/dist-lib/components/blocks/sidebar-primitives/menu-button.d.ts +9 -0
  27. package/dist-lib/components/blocks/sidebar-primitives/menu-item.d.ts +2 -0
  28. package/dist-lib/components/blocks/sidebar-primitives/menu-skeleton.d.ts +4 -0
  29. package/dist-lib/components/blocks/sidebar-primitives/menu-sub-button.d.ts +6 -0
  30. package/dist-lib/components/blocks/sidebar-primitives/menu-sub-item.d.ts +2 -0
  31. package/dist-lib/components/blocks/sidebar-primitives/menu-sub.d.ts +2 -0
  32. package/dist-lib/components/blocks/sidebar-primitives/menu.d.ts +2 -0
  33. package/dist-lib/components/blocks/sidebar-primitives/provider.d.ts +3 -0
  34. package/dist-lib/components/blocks/sidebar-primitives/rail.d.ts +2 -0
  35. package/dist-lib/components/blocks/sidebar-primitives/separator.d.ts +3 -0
  36. package/dist-lib/components/blocks/sidebar-primitives/sidebar-atom.d.ts +32 -0
  37. package/dist-lib/components/blocks/sidebar-primitives/sidebar.d.ts +6 -0
  38. package/dist-lib/components/blocks/sidebar-primitives/trigger.d.ts +3 -0
  39. package/dist-lib/components/blocks/sidebar-primitives/types.d.ts +26 -0
  40. package/dist-lib/components/blocks/sidebar-primitives/use-mobile.d.ts +1 -0
  41. package/dist-lib/components/blocks/sidebar-primitives/use-sidebar.d.ts +4 -0
  42. package/dist-lib/components/blocks/sidebar-primitives/utils.d.ts +10 -0
  43. package/dist-lib/components/ui/alert.d.ts +1 -1
  44. package/dist-lib/components/ui/badge.d.ts +2 -2
  45. package/dist-lib/components/ui/breadcrumb/base.d.ts +2 -0
  46. package/dist-lib/components/ui/breadcrumb/ellipsis.d.ts +2 -0
  47. package/dist-lib/components/ui/breadcrumb/index.d.ts +7 -0
  48. package/dist-lib/components/ui/breadcrumb/item.d.ts +2 -0
  49. package/dist-lib/components/ui/breadcrumb/link.d.ts +3 -0
  50. package/dist-lib/components/ui/breadcrumb/list.d.ts +2 -0
  51. package/dist-lib/components/ui/breadcrumb/page.d.ts +2 -0
  52. package/dist-lib/components/ui/breadcrumb/separator.d.ts +2 -0
  53. package/dist-lib/components/ui/button.d.ts +2 -2
  54. package/dist-lib/components/ui/calendar/base.d.ts +3 -0
  55. package/dist-lib/components/ui/calendar/index.d.ts +1 -0
  56. package/dist-lib/components/ui/calendar/utils.d.ts +1 -0
  57. package/dist-lib/components/ui/checkbox-group/base.d.ts +3 -0
  58. package/dist-lib/components/ui/checkbox-group/index.d.ts +2 -0
  59. package/dist-lib/components/ui/combobox/chip-remove.d.ts +3 -0
  60. package/dist-lib/components/ui/combobox/chip.d.ts +5 -0
  61. package/dist-lib/components/ui/combobox/chips-input.d.ts +6 -0
  62. package/dist-lib/components/ui/combobox/chips.d.ts +5 -0
  63. package/dist-lib/components/ui/combobox/clear.d.ts +3 -0
  64. package/dist-lib/components/ui/combobox/collection.d.ts +3 -0
  65. package/dist-lib/components/ui/combobox/context.d.ts +5 -0
  66. package/dist-lib/components/ui/combobox/empty.d.ts +3 -0
  67. package/dist-lib/components/ui/combobox/group-label.d.ts +3 -0
  68. package/dist-lib/components/ui/combobox/group.d.ts +3 -0
  69. package/dist-lib/components/ui/combobox/index.d.ts +22 -0
  70. package/dist-lib/components/ui/combobox/input.d.ts +11 -0
  71. package/dist-lib/components/ui/combobox/item.d.ts +3 -0
  72. package/dist-lib/components/ui/combobox/list.d.ts +3 -0
  73. package/dist-lib/components/ui/combobox/popup.d.ts +10 -0
  74. package/dist-lib/components/ui/combobox/root.d.ts +3 -0
  75. package/dist-lib/components/ui/combobox/row.d.ts +3 -0
  76. package/dist-lib/components/ui/combobox/separator.d.ts +3 -0
  77. package/dist-lib/components/ui/combobox/status.d.ts +3 -0
  78. package/dist-lib/components/ui/combobox/trigger.d.ts +3 -0
  79. package/dist-lib/components/ui/combobox/utils.d.ts +2 -0
  80. package/dist-lib/components/ui/combobox/value.d.ts +3 -0
  81. package/dist-lib/components/ui/dialog/backdrop.d.ts +3 -0
  82. package/dist-lib/components/ui/dialog/close.d.ts +3 -0
  83. package/dist-lib/components/ui/dialog/description.d.ts +3 -0
  84. package/dist-lib/components/ui/dialog/footer.d.ts +5 -0
  85. package/dist-lib/components/ui/dialog/header.d.ts +3 -0
  86. package/dist-lib/components/ui/dialog/index.d.ts +16 -0
  87. package/dist-lib/components/ui/dialog/panel.d.ts +5 -0
  88. package/dist-lib/components/ui/dialog/popup.d.ts +8 -0
  89. package/dist-lib/components/ui/dialog/title.d.ts +3 -0
  90. package/dist-lib/components/ui/dialog/trigger.d.ts +3 -0
  91. package/dist-lib/components/ui/dialog/utils.d.ts +4 -0
  92. package/dist-lib/components/ui/dialog/viewport.d.ts +3 -0
  93. package/dist-lib/components/ui/drawer/backdrop.d.ts +3 -0
  94. package/dist-lib/components/ui/drawer/bar.d.ts +6 -0
  95. package/dist-lib/components/ui/drawer/close.d.ts +3 -0
  96. package/dist-lib/components/ui/drawer/content.d.ts +3 -0
  97. package/dist-lib/components/ui/drawer/context.d.ts +5 -0
  98. package/dist-lib/components/ui/drawer/description.d.ts +3 -0
  99. package/dist-lib/components/ui/drawer/footer.d.ts +6 -0
  100. package/dist-lib/components/ui/drawer/header.d.ts +5 -0
  101. package/dist-lib/components/ui/drawer/index.d.ts +26 -0
  102. package/dist-lib/components/ui/drawer/menu-checkbox-item.d.ts +6 -0
  103. package/dist-lib/components/ui/drawer/menu-group-label.d.ts +3 -0
  104. package/dist-lib/components/ui/drawer/menu-group.d.ts +3 -0
  105. package/dist-lib/components/ui/drawer/menu-item.d.ts +5 -0
  106. package/dist-lib/components/ui/drawer/menu-radio-group.d.ts +3 -0
  107. package/dist-lib/components/ui/drawer/menu-radio-item.d.ts +6 -0
  108. package/dist-lib/components/ui/drawer/menu-separator.d.ts +3 -0
  109. package/dist-lib/components/ui/drawer/menu-trigger.d.ts +3 -0
  110. package/dist-lib/components/ui/drawer/menu.d.ts +3 -0
  111. package/dist-lib/components/ui/drawer/panel.d.ts +7 -0
  112. package/dist-lib/components/ui/drawer/popup.d.ts +10 -0
  113. package/dist-lib/components/ui/drawer/portal.d.ts +3 -0
  114. package/dist-lib/components/ui/drawer/root.d.ts +6 -0
  115. package/dist-lib/components/ui/drawer/swipe-area.d.ts +6 -0
  116. package/dist-lib/components/ui/drawer/title.d.ts +3 -0
  117. package/dist-lib/components/ui/drawer/trigger.d.ts +3 -0
  118. package/dist-lib/components/ui/drawer/types.d.ts +1 -0
  119. package/dist-lib/components/ui/drawer/utils.d.ts +4 -0
  120. package/dist-lib/components/ui/drawer/viewport.d.ts +7 -0
  121. package/dist-lib/components/ui/empty/base.d.ts +2 -0
  122. package/dist-lib/components/ui/empty/content.d.ts +2 -0
  123. package/dist-lib/components/ui/empty/description.d.ts +2 -0
  124. package/dist-lib/components/ui/empty/header.d.ts +2 -0
  125. package/dist-lib/components/ui/empty/index.d.ts +6 -0
  126. package/dist-lib/components/ui/empty/media.d.ts +4 -0
  127. package/dist-lib/components/ui/empty/title.d.ts +2 -0
  128. package/dist-lib/components/ui/empty/utils.d.ts +3 -0
  129. package/dist-lib/components/ui/fieldset/base.d.ts +3 -0
  130. package/dist-lib/components/ui/fieldset/index.d.ts +3 -0
  131. package/dist-lib/components/ui/fieldset/legend.d.ts +3 -0
  132. package/dist-lib/components/ui/form/base.d.ts +3 -0
  133. package/dist-lib/components/ui/form/index.d.ts +2 -0
  134. package/dist-lib/components/ui/glasscn/lazy-glass-surface.d.ts +6 -0
  135. package/dist-lib/components/ui/meter/base.d.ts +3 -0
  136. package/dist-lib/components/ui/meter/index.d.ts +6 -0
  137. package/dist-lib/components/ui/meter/indicator.d.ts +3 -0
  138. package/dist-lib/components/ui/meter/label.d.ts +3 -0
  139. package/dist-lib/components/ui/meter/track.d.ts +3 -0
  140. package/dist-lib/components/ui/meter/value.d.ts +3 -0
  141. package/dist-lib/components/ui/modal.d.ts +10 -0
  142. package/dist-lib/components/ui/number-field/base.d.ts +5 -0
  143. package/dist-lib/components/ui/number-field/context.d.ts +4 -0
  144. package/dist-lib/components/ui/number-field/cursor-grow-icon.d.ts +2 -0
  145. package/dist-lib/components/ui/number-field/decrement.d.ts +3 -0
  146. package/dist-lib/components/ui/number-field/group.d.ts +3 -0
  147. package/dist-lib/components/ui/number-field/increment.d.ts +3 -0
  148. package/dist-lib/components/ui/number-field/index.d.ts +9 -0
  149. package/dist-lib/components/ui/number-field/input.d.ts +3 -0
  150. package/dist-lib/components/ui/number-field/scrub-area.d.ts +5 -0
  151. package/dist-lib/components/ui/overlays.d.ts +4 -0
  152. package/dist-lib/components/ui/pagination/base.d.ts +2 -0
  153. package/dist-lib/components/ui/pagination/content.d.ts +2 -0
  154. package/dist-lib/components/ui/pagination/ellipsis.d.ts +2 -0
  155. package/dist-lib/components/ui/pagination/index.d.ts +8 -0
  156. package/dist-lib/components/ui/pagination/item.d.ts +2 -0
  157. package/dist-lib/components/ui/pagination/link.d.ts +3 -0
  158. package/dist-lib/components/ui/pagination/next.d.ts +3 -0
  159. package/dist-lib/components/ui/pagination/previous.d.ts +3 -0
  160. package/dist-lib/components/ui/pagination/types.d.ts +7 -0
  161. package/dist-lib/components/ui/preview-card.d.ts +2 -1
  162. package/dist-lib/components/ui/progress/base.d.ts +3 -0
  163. package/dist-lib/components/ui/progress/index.d.ts +6 -0
  164. package/dist-lib/components/ui/progress/indicator.d.ts +3 -0
  165. package/dist-lib/components/ui/progress/label.d.ts +3 -0
  166. package/dist-lib/components/ui/progress/track.d.ts +3 -0
  167. package/dist-lib/components/ui/progress/value.d.ts +3 -0
  168. package/dist-lib/components/ui/radio-group/base.d.ts +3 -0
  169. package/dist-lib/components/ui/radio-group/index.d.ts +5 -0
  170. package/dist-lib/components/ui/radio-group/radio.d.ts +3 -0
  171. package/dist-lib/components/ui/select.d.ts +1 -1
  172. package/dist-lib/components/ui/sheet-parts/backdrop.d.ts +2 -0
  173. package/dist-lib/components/ui/sheet-parts/overlay.d.ts +2 -0
  174. package/dist-lib/components/ui/sheet-parts/panel.d.ts +5 -0
  175. package/dist-lib/components/ui/sheet-parts/popup.d.ts +10 -0
  176. package/dist-lib/components/ui/sheet-parts/portal.d.ts +2 -0
  177. package/dist-lib/components/ui/sheet-parts/viewport.d.ts +6 -0
  178. package/dist-lib/components/ui/sheet.d.ts +19 -9
  179. package/dist-lib/components/ui/slider/base.d.ts +3 -0
  180. package/dist-lib/components/ui/slider/index.d.ts +3 -0
  181. package/dist-lib/components/ui/slider/value.d.ts +3 -0
  182. package/dist-lib/components/ui/table/base.d.ts +3 -0
  183. package/dist-lib/components/ui/table/body.d.ts +2 -0
  184. package/dist-lib/components/ui/table/caption.d.ts +2 -0
  185. package/dist-lib/components/ui/table/cell.d.ts +2 -0
  186. package/dist-lib/components/ui/table/footer.d.ts +2 -0
  187. package/dist-lib/components/ui/table/head.d.ts +2 -0
  188. package/dist-lib/components/ui/table/header.d.ts +2 -0
  189. package/dist-lib/components/ui/table/index.d.ts +10 -0
  190. package/dist-lib/components/ui/table/row.d.ts +2 -0
  191. package/dist-lib/components/ui/table/types.d.ts +7 -0
  192. package/dist-lib/components/ui/toast.d.ts +2 -0
  193. package/dist-lib/components/ui/toggle/base.d.ts +5 -0
  194. package/dist-lib/components/ui/toggle/index.d.ts +3 -0
  195. package/dist-lib/components/ui/toggle/utils.d.ts +4 -0
  196. package/dist-lib/components/ui/toggle-group/base.d.ts +5 -0
  197. package/dist-lib/components/ui/toggle-group/context.d.ts +4 -0
  198. package/dist-lib/components/ui/toggle-group/index.d.ts +5 -0
  199. package/dist-lib/components/ui/toggle-group/item.d.ts +5 -0
  200. package/dist-lib/components/ui/toggle-group/separator.d.ts +5 -0
  201. package/dist-lib/dialog-BF9rLVsx.js +135 -0
  202. package/dist-lib/drawer-DuQtc_IN.js +350 -0
  203. package/dist-lib/ease-C9At8rnB.js +120 -0
  204. package/dist-lib/empty-CUO4MoHd.js +87 -0
  205. package/dist-lib/exegia-provider-CDYMDsSW.js +126 -0
  206. package/dist-lib/fieldset-C3YDowBt.js +22 -0
  207. package/dist-lib/form-DdxBnCxo.js +12 -0
  208. package/dist-lib/index.css +3 -0
  209. package/dist-lib/index.d.ts +4 -0
  210. package/dist-lib/index.js +6649 -10344
  211. package/dist-lib/input.js +28 -0
  212. package/dist-lib/label.js +19 -0
  213. package/dist-lib/lib/segmented-control.d.ts +1 -1
  214. package/dist-lib/lib/state/exegia-provider.d.ts +17 -8
  215. package/dist-lib/lib/state/index.d.ts +2 -0
  216. package/dist-lib/lib/state/portal-context.d.ts +5 -0
  217. package/dist-lib/lib/state/sound-loading.d.ts +4 -0
  218. package/dist-lib/liquid-glass-BrmOha12.js +50 -0
  219. package/dist-lib/meter-B5i2cf7m.js +49 -0
  220. package/dist-lib/modal-BSBLNZfo.js +24 -0
  221. package/dist-lib/number-field-D5p-WTn_.js +97 -0
  222. package/dist-lib/overlays.js +5 -0
  223. package/dist-lib/pagination-CPOVfufE.js +94 -0
  224. package/dist-lib/popover-BKYgU_p3.js +62 -0
  225. package/dist-lib/portal-context-oIZFl3NP.js +9 -0
  226. package/dist-lib/progress-ByAk9CV5.js +50 -0
  227. package/dist-lib/radio-group-CMwDkKFE.js +27 -0
  228. package/dist-lib/rolldown-runtime-Dy4uBu1J.js +11 -0
  229. package/dist-lib/scaffold-DjS8eLk9.js +925 -0
  230. package/dist-lib/scaffold.js +2 -0
  231. package/dist-lib/scroll-area-BNcHlmRX.js +39 -0
  232. package/dist-lib/separator-D7T-98IV.js +14 -0
  233. package/dist-lib/sheet-BAYosIsg.js +148 -0
  234. package/dist-lib/sheet-D4fmEZW5.js +22 -0
  235. package/dist-lib/shell-WTIa9_ul.js +722 -0
  236. package/dist-lib/shell.js +2 -0
  237. package/dist-lib/sidebar-1j5RYZ2t.js +529 -0
  238. package/dist-lib/skeleton-CwqQoMiY.js +12 -0
  239. package/dist-lib/slider-_1H30BMt.js +48 -0
  240. package/dist-lib/sound-knGH4lj-.js +19 -0
  241. package/dist-lib/spinner-cwaneGYM.js +14 -0
  242. package/dist-lib/state.js +2 -0
  243. package/dist-lib/table-D43_yedE.js +87 -0
  244. package/dist-lib/tabs-CwWnKxRI.js +66 -0
  245. package/dist-lib/textarea-CxycYTkF.js +27 -0
  246. package/dist-lib/toast-BLwJEhKU.js +151 -0
  247. package/dist-lib/toggle-group-BzDvDKL0.js +55 -0
  248. package/dist-lib/tooltip-aPB3pyrl.js +39 -0
  249. package/dist-lib/ui/accordion.d.ts +1 -0
  250. package/dist-lib/ui/accordion.js +45 -0
  251. package/dist-lib/ui/alert-dialog.d.ts +1 -0
  252. package/dist-lib/ui/alert-dialog.js +74 -0
  253. package/dist-lib/ui/alert.d.ts +1 -0
  254. package/dist-lib/ui/alert.js +45 -0
  255. package/dist-lib/ui/autocomplete.d.ts +1 -0
  256. package/dist-lib/ui/autocomplete.js +2 -0
  257. package/dist-lib/ui/avatar.d.ts +2 -0
  258. package/dist-lib/ui/avatar.js +50 -0
  259. package/dist-lib/ui/badge.d.ts +2 -0
  260. package/dist-lib/ui/badge.js +72 -0
  261. package/dist-lib/ui/breadcrumb.d.ts +1 -0
  262. package/dist-lib/ui/breadcrumb.js +2 -0
  263. package/dist-lib/ui/button.d.ts +2 -0
  264. package/dist-lib/ui/button.js +2 -0
  265. package/dist-lib/ui/calendar.d.ts +1 -0
  266. package/dist-lib/ui/calendar.js +2 -0
  267. package/dist-lib/ui/card.d.ts +1 -0
  268. package/dist-lib/ui/card.js +2 -0
  269. package/dist-lib/ui/checkbox-group.d.ts +1 -0
  270. package/dist-lib/ui/checkbox-group.js +2 -0
  271. package/dist-lib/ui/checkbox.d.ts +1 -0
  272. package/dist-lib/ui/checkbox.js +51 -0
  273. package/dist-lib/ui/collapsible.d.ts +1 -0
  274. package/dist-lib/ui/collapsible.js +26 -0
  275. package/dist-lib/ui/combobox.d.ts +1 -0
  276. package/dist-lib/ui/combobox.js +2 -0
  277. package/dist-lib/ui/command.d.ts +1 -0
  278. package/dist-lib/ui/command.js +125 -0
  279. package/dist-lib/ui/context-menu.d.ts +1 -0
  280. package/dist-lib/ui/context-menu.js +178 -0
  281. package/dist-lib/ui/dialog.d.ts +1 -0
  282. package/dist-lib/ui/dialog.js +2 -0
  283. package/dist-lib/ui/drawer.d.ts +1 -0
  284. package/dist-lib/ui/drawer.js +2 -0
  285. package/dist-lib/ui/empty.d.ts +1 -0
  286. package/dist-lib/ui/empty.js +2 -0
  287. package/dist-lib/ui/field.d.ts +1 -0
  288. package/dist-lib/ui/field.js +42 -0
  289. package/dist-lib/ui/fieldset.d.ts +1 -0
  290. package/dist-lib/ui/fieldset.js +2 -0
  291. package/dist-lib/ui/form.d.ts +1 -0
  292. package/dist-lib/ui/form.js +2 -0
  293. package/dist-lib/ui/frame.d.ts +1 -0
  294. package/dist-lib/ui/frame.js +47 -0
  295. package/dist-lib/ui/group.d.ts +1 -0
  296. package/dist-lib/ui/group.js +44 -0
  297. package/dist-lib/ui/index.d.ts +55 -0
  298. package/dist-lib/ui/index.js +497 -0
  299. package/dist-lib/ui/input-group.d.ts +1 -0
  300. package/dist-lib/ui/input-group.js +59 -0
  301. package/dist-lib/ui/input.d.ts +2 -0
  302. package/dist-lib/ui/input.js +2 -0
  303. package/dist-lib/ui/kbd.d.ts +1 -0
  304. package/dist-lib/ui/kbd.js +19 -0
  305. package/dist-lib/ui/label.d.ts +1 -0
  306. package/dist-lib/ui/label.js +2 -0
  307. package/dist-lib/ui/menu.d.ts +1 -0
  308. package/dist-lib/ui/menu.js +178 -0
  309. package/dist-lib/ui/meter.d.ts +1 -0
  310. package/dist-lib/ui/meter.js +2 -0
  311. package/dist-lib/ui/number-field.d.ts +1 -0
  312. package/dist-lib/ui/number-field.js +2 -0
  313. package/dist-lib/ui/otp-field.d.ts +1 -0
  314. package/dist-lib/ui/otp-field.js +36 -0
  315. package/dist-lib/ui/pagination.d.ts +1 -0
  316. package/dist-lib/ui/pagination.js +2 -0
  317. package/dist-lib/ui/popover.d.ts +1 -0
  318. package/dist-lib/ui/popover.js +2 -0
  319. package/dist-lib/ui/preview-card.d.ts +1 -0
  320. package/dist-lib/ui/preview-card.js +35 -0
  321. package/dist-lib/ui/progress.d.ts +1 -0
  322. package/dist-lib/ui/progress.js +2 -0
  323. package/dist-lib/ui/radio-group.d.ts +1 -0
  324. package/dist-lib/ui/radio-group.js +2 -0
  325. package/dist-lib/ui/scroll-area.d.ts +1 -0
  326. package/dist-lib/ui/scroll-area.js +2 -0
  327. package/dist-lib/ui/select.d.ts +2 -0
  328. package/dist-lib/ui/select.js +145 -0
  329. package/dist-lib/ui/separator.d.ts +2 -0
  330. package/dist-lib/ui/separator.js +3 -0
  331. package/dist-lib/ui/sheet.d.ts +1 -0
  332. package/dist-lib/ui/sheet.js +3 -0
  333. package/dist-lib/ui/sidebar.d.ts +1 -0
  334. package/dist-lib/ui/sidebar.js +2 -0
  335. package/dist-lib/ui/skeleton.d.ts +1 -0
  336. package/dist-lib/ui/skeleton.js +2 -0
  337. package/dist-lib/ui/slider.d.ts +1 -0
  338. package/dist-lib/ui/slider.js +2 -0
  339. package/dist-lib/ui/spinner.d.ts +1 -0
  340. package/dist-lib/ui/spinner.js +2 -0
  341. package/dist-lib/ui/switch.d.ts +1 -0
  342. package/dist-lib/ui/switch.js +17 -0
  343. package/dist-lib/ui/table.d.ts +1 -0
  344. package/dist-lib/ui/table.js +2 -0
  345. package/dist-lib/ui/tabs.d.ts +1 -0
  346. package/dist-lib/ui/tabs.js +2 -0
  347. package/dist-lib/ui/textarea.d.ts +2 -0
  348. package/dist-lib/ui/textarea.js +2 -0
  349. package/dist-lib/ui/toast.d.ts +1 -0
  350. package/dist-lib/ui/toast.js +2 -0
  351. package/dist-lib/ui/toggle-group.d.ts +1 -0
  352. package/dist-lib/ui/toggle-group.js +2 -0
  353. package/dist-lib/ui/toggle.d.ts +1 -0
  354. package/dist-lib/ui/toggle.js +3 -0
  355. package/dist-lib/ui/toolbar.d.ts +1 -0
  356. package/dist-lib/ui/toolbar.js +48 -0
  357. package/dist-lib/ui/tooltip.d.ts +1 -0
  358. package/dist-lib/ui/tooltip.js +2 -0
  359. package/dist-lib/utils-BO0qfoA6.js +61 -0
  360. package/package.json +285 -23
  361. package/dist-lib/components/atoms/_layout.d.ts +0 -4
  362. package/dist-lib/components/atoms/bubble/__tests__/bubble.test.d.ts +0 -1
  363. package/dist-lib/components/atoms/bubble/__tests__/reference.test.d.ts +0 -1
  364. package/dist-lib/components/atoms/text/__tests__/text.test.d.ts +0 -1
  365. package/dist-lib/components/atoms/text-selection/__tests__/click-popover.test.d.ts +0 -1
  366. package/dist-lib/components/atoms/text-selection/__tests__/text-selection.test.d.ts +0 -1
  367. package/dist-lib/components/blocks/auth/__tests__/auth-flow-block.test.d.ts +0 -1
  368. package/dist-lib/components/blocks/auth/__tests__/auth-state-atom.test.d.ts +0 -1
  369. package/dist-lib/components/blocks/auth/__tests__/linked-accounts-block.test.d.ts +0 -1
  370. package/dist-lib/components/blocks/auth/__tests__/onboarding-block.test.d.ts +0 -1
  371. package/dist-lib/components/blocks/auth/__tests__/passkey-manager-block.test.d.ts +0 -1
  372. package/dist-lib/components/blocks/auth/__tests__/passkey-sign-in-block.test.d.ts +0 -1
  373. package/dist-lib/components/blocks/auth/__tests__/signup-block.test.d.ts +0 -1
  374. package/dist-lib/components/blocks/auth/__tests__/update-password-block.test.d.ts +0 -1
  375. package/dist-lib/components/blocks/chat/__tests__/ai-panel.test.d.ts +0 -1
  376. package/dist-lib/components/blocks/profile/__tests__/profile-card-block.test.d.ts +0 -1
  377. package/dist-lib/components/blocks/scaffold/__tests__/scaffold-atom.test.d.ts +0 -1
  378. package/dist-lib/components/blocks/scaffold/__tests__/scaffold.test.d.ts +0 -1
  379. package/dist-lib/components/blocks/shell/__tests__/shell-fit-atom.test.d.ts +0 -1
  380. package/dist-lib/components/blocks/shell/__tests__/shell-layout.test.d.ts +0 -1
  381. package/dist-lib/components/blocks/shell/__tests__/shell-metrics.test.d.ts +0 -1
  382. package/dist-lib/components/blocks/sidebar/__tests__/ai-sidebar-atom.test.d.ts +0 -1
  383. package/dist-lib/components/blocks/sidebar/__tests__/ai-sidebar.test.d.ts +0 -1
  384. package/dist-lib/components/blocks/sidebar/__tests__/use-ai-sidebar.test.d.ts +0 -1
  385. package/dist-lib/components/composed/__tests__/logo.test.d.ts +0 -1
  386. package/dist-lib/components/composed/action-bar/__tests__/action-bar.test.d.ts +0 -1
  387. package/dist-lib/components/composed/ai/__tests__/ai.test.d.ts +0 -1
  388. package/dist-lib/components/composed/chat/__tests__/attachment.test.d.ts +0 -1
  389. package/dist-lib/components/composed/chat/__tests__/beautiful-ui.test.d.ts +0 -1
  390. package/dist-lib/components/composed/chat/__tests__/chart.test.d.ts +0 -1
  391. package/dist-lib/components/composed/chat/__tests__/code-block.test.d.ts +0 -1
  392. package/dist-lib/components/composed/chat/__tests__/composer-attachments.test.d.ts +0 -1
  393. package/dist-lib/components/composed/chat/__tests__/composer.test.d.ts +0 -1
  394. package/dist-lib/components/composed/chat/__tests__/flowchart.test.d.ts +0 -1
  395. package/dist-lib/components/composed/chat/__tests__/glass-material.test.d.ts +0 -1
  396. package/dist-lib/components/composed/chat/__tests__/markdown.test.d.ts +0 -1
  397. package/dist-lib/components/composed/chat/__tests__/menu-command.test.d.ts +0 -1
  398. package/dist-lib/components/composed/chat/__tests__/recommendation.test.d.ts +0 -1
  399. package/dist-lib/components/composed/tree/__tests__/tree-atom.test.d.ts +0 -1
  400. package/dist-lib/components/composed/tree/__tests__/tree.test.d.ts +0 -1
  401. package/dist-lib/components/composed/tree/__tests__/use-tree.test.d.ts +0 -1
  402. package/dist-lib/components/composed/user/__tests__/message.test.d.ts +0 -1
  403. package/dist-lib/components/composed/verse/__tests__/verse.test.d.ts +0 -1
  404. package/dist-lib/components/docs/atoms-gallery.d.ts +0 -12
  405. package/dist-lib/components/docs/block-demo-stage.d.ts +0 -7
  406. package/dist-lib/components/docs/blocks-gallery.d.ts +0 -2
  407. package/dist-lib/components/docs/browser.d.ts +0 -10
  408. package/dist-lib/components/docs/code-block.d.ts +0 -4
  409. package/dist-lib/components/docs/components-gallery.d.ts +0 -2
  410. package/dist-lib/components/docs/demo-controls.d.ts +0 -21
  411. package/dist-lib/components/docs/hero.d.ts +0 -5
  412. package/dist-lib/components/docs/mermaid.d.ts +0 -3
  413. package/dist-lib/components/icons/__tests__/icons.test.d.ts +0 -1
  414. package/dist-lib/components/stories/attachment.story.d.ts +0 -11
  415. package/dist-lib/components/stories/auth-flow-block.story.d.ts +0 -2
  416. package/dist-lib/components/stories/avatar.story.d.ts +0 -6
  417. package/dist-lib/components/stories/base.story.d.ts +0 -6
  418. package/dist-lib/components/stories/bubble.story.d.ts +0 -6
  419. package/dist-lib/components/stories/button.story.d.ts +0 -9
  420. package/dist-lib/components/stories/card.story.d.ts +0 -8
  421. package/dist-lib/components/stories/chart.story.d.ts +0 -71
  422. package/dist-lib/components/stories/checkbox.story.d.ts +0 -6
  423. package/dist-lib/components/stories/code-auth-block.story.d.ts +0 -2
  424. package/dist-lib/components/stories/code-block.story.d.ts +0 -12
  425. package/dist-lib/components/stories/composed-password-input.story.d.ts +0 -6
  426. package/dist-lib/components/stories/context-cards.story.d.ts +0 -3
  427. package/dist-lib/components/stories/emoji-action-bar.story.d.ts +0 -3
  428. package/dist-lib/components/stories/field.story.d.ts +0 -6
  429. package/dist-lib/components/stories/file-icons.story.d.ts +0 -5
  430. package/dist-lib/components/stories/filter-table.story.d.ts +0 -21
  431. package/dist-lib/components/stories/flowchart.story.d.ts +0 -3
  432. package/dist-lib/components/stories/forgot-password-block.story.d.ts +0 -2
  433. package/dist-lib/components/stories/frame.story.d.ts +0 -8
  434. package/dist-lib/components/stories/index.d.ts +0 -54
  435. package/dist-lib/components/stories/input-group.story.d.ts +0 -6
  436. package/dist-lib/components/stories/input.story.d.ts +0 -8
  437. package/dist-lib/components/stories/insight-cards.story.d.ts +0 -74
  438. package/dist-lib/components/stories/label.story.d.ts +0 -8
  439. package/dist-lib/components/stories/linked-accounts-block.story.d.ts +0 -2
  440. package/dist-lib/components/stories/login-block.story.d.ts +0 -2
  441. package/dist-lib/components/stories/logo.story.d.ts +0 -3
  442. package/dist-lib/components/stories/markdown.story.d.ts +0 -7
  443. package/dist-lib/components/stories/menu-command.story.d.ts +0 -13
  444. package/dist-lib/components/stories/onboarding-block.story.d.ts +0 -2
  445. package/dist-lib/components/stories/otp-field.story.d.ts +0 -8
  446. package/dist-lib/components/stories/passkey-manager-block.story.d.ts +0 -2
  447. package/dist-lib/components/stories/passkey-sign-in-block.story.d.ts +0 -2
  448. package/dist-lib/components/stories/password-input.story.d.ts +0 -9
  449. package/dist-lib/components/stories/profile-card-block.story.d.ts +0 -6
  450. package/dist-lib/components/stories/recommendation-card.story.d.ts +0 -3
  451. package/dist-lib/components/stories/records-table.story.d.ts +0 -23
  452. package/dist-lib/components/stories/reference.story.d.ts +0 -9
  453. package/dist-lib/components/stories/research-answer.story.d.ts +0 -10
  454. package/dist-lib/components/stories/scaffold-root.story.d.ts +0 -6
  455. package/dist-lib/components/stories/separator.story.d.ts +0 -6
  456. package/dist-lib/components/stories/shell-layout.story.d.ts +0 -2
  457. package/dist-lib/components/stories/signup-block.story.d.ts +0 -2
  458. package/dist-lib/components/stories/social-providers.story.d.ts +0 -3
  459. package/dist-lib/components/stories/streaming-text.story.d.ts +0 -3
  460. package/dist-lib/components/stories/text.story.d.ts +0 -8
  461. package/dist-lib/components/stories/textarea.story.d.ts +0 -6
  462. package/dist-lib/components/stories/tree.story.d.ts +0 -4
  463. package/dist-lib/components/stories/update-password-block.story.d.ts +0 -2
  464. package/dist-lib/components/stories/user.story.d.ts +0 -8
  465. package/dist-lib/components/stories/verse.story.d.ts +0 -6
  466. package/dist-lib/components/ui/chat/__tests__/segmented-toggle.test.d.ts +0 -1
  467. package/dist-lib/index.js.map +0 -1
  468. package/dist-lib/lib/state/__tests__/sound.test.d.ts +0 -1
  469. package/dist-lib/lib/utils.test.d.ts +0 -1
  470. package/src/assets/css/base.css +0 -62
  471. package/src/assets/css/chat.css +0 -229
  472. package/src/assets/css/shadows.css +0 -157
  473. package/src/assets/css/theme.css +0 -321
  474. package/src/components/AGENTS.md +0 -0
  475. package/src/components/atoms/_layout.tsx +0 -9
  476. package/src/components/atoms/avatar/base.tsx +0 -70
  477. package/src/components/atoms/avatar/index.ts +0 -10
  478. package/src/components/atoms/avatar/types.ts +0 -24
  479. package/src/components/atoms/avatar/utils.ts +0 -54
  480. package/src/components/atoms/avatar/verified.tsx +0 -16
  481. package/src/components/atoms/background/index.ts +0 -8
  482. package/src/components/atoms/background/texture.tsx +0 -29
  483. package/src/components/atoms/background/type.ts +0 -10
  484. package/src/components/atoms/background/utils.ts +0 -13
  485. package/src/components/atoms/bubble/__tests__/bubble.test.tsx +0 -193
  486. package/src/components/atoms/bubble/__tests__/reference.test.tsx +0 -25
  487. package/src/components/atoms/bubble/actions.tsx +0 -28
  488. package/src/components/atoms/bubble/context.ts +0 -11
  489. package/src/components/atoms/bubble/default.tsx +0 -46
  490. package/src/components/atoms/bubble/header.tsx +0 -36
  491. package/src/components/atoms/bubble/index.ts +0 -37
  492. package/src/components/atoms/bubble/message.tsx +0 -32
  493. package/src/components/atoms/bubble/reactions.tsx +0 -191
  494. package/src/components/atoms/bubble/types.ts +0 -82
  495. package/src/components/atoms/bubble/utils.ts +0 -46
  496. package/src/components/atoms/chip.tsx +0 -61
  497. package/src/components/atoms/field.tsx +0 -43
  498. package/src/components/atoms/index.ts +0 -26
  499. package/src/components/atoms/loader.tsx +0 -33
  500. package/src/components/atoms/reference.tsx +0 -41
  501. package/src/components/atoms/text/__tests__/text.test.tsx +0 -47
  502. package/src/components/atoms/text/default.tsx +0 -59
  503. package/src/components/atoms/text/heading.tsx +0 -58
  504. package/src/components/atoms/text/index.ts +0 -28
  505. package/src/components/atoms/text/label.tsx +0 -16
  506. package/src/components/atoms/text/paragraph.tsx +0 -55
  507. package/src/components/atoms/text/span.tsx +0 -14
  508. package/src/components/atoms/text/types.ts +0 -41
  509. package/src/components/atoms/text/utils.ts +0 -16
  510. package/src/components/atoms/text-selection/__tests__/click-popover.test.tsx +0 -61
  511. package/src/components/atoms/text-selection/__tests__/text-selection.test.tsx +0 -90
  512. package/src/components/atoms/text-selection/click-popover.tsx +0 -62
  513. package/src/components/atoms/text-selection/index.ts +0 -30
  514. package/src/components/atoms/text-selection/popover.tsx +0 -103
  515. package/src/components/atoms/text-selection/selection-atom.ts +0 -51
  516. package/src/components/atoms/text-selection/selection.tsx +0 -56
  517. package/src/components/atoms/text-selection/types.ts +0 -125
  518. package/src/components/atoms/text-selection/use-selection.ts +0 -84
  519. package/src/components/atoms/types.ts +0 -46
  520. package/src/components/blocks/.gitkeep +0 -0
  521. package/src/components/blocks/auth/__tests__/auth-flow-block.test.tsx +0 -183
  522. package/src/components/blocks/auth/__tests__/auth-state-atom.test.tsx +0 -247
  523. package/src/components/blocks/auth/__tests__/linked-accounts-block.test.tsx +0 -128
  524. package/src/components/blocks/auth/__tests__/onboarding-block.test.tsx +0 -183
  525. package/src/components/blocks/auth/__tests__/passkey-manager-block.test.tsx +0 -131
  526. package/src/components/blocks/auth/__tests__/passkey-sign-in-block.test.tsx +0 -59
  527. package/src/components/blocks/auth/__tests__/signup-block.test.tsx +0 -176
  528. package/src/components/blocks/auth/__tests__/update-password-block.test.tsx +0 -95
  529. package/src/components/blocks/auth/auth-flow-atom.ts +0 -238
  530. package/src/components/blocks/auth/auth-flow-block.tsx +0 -211
  531. package/src/components/blocks/auth/auth-session-atom.ts +0 -82
  532. package/src/components/blocks/auth/auth-shell.tsx +0 -265
  533. package/src/components/blocks/auth/auth-state.ts +0 -40
  534. package/src/components/blocks/auth/code-auth-block.tsx +0 -176
  535. package/src/components/blocks/auth/forgot-password-block.tsx +0 -112
  536. package/src/components/blocks/auth/linked-accounts-block.tsx +0 -203
  537. package/src/components/blocks/auth/login-block.tsx +0 -217
  538. package/src/components/blocks/auth/onboarding/profile-step.tsx +0 -216
  539. package/src/components/blocks/auth/onboarding-block.tsx +0 -183
  540. package/src/components/blocks/auth/passkey-manager-block.tsx +0 -316
  541. package/src/components/blocks/auth/passkey-sign-in-block.tsx +0 -67
  542. package/src/components/blocks/auth/signup-block.tsx +0 -256
  543. package/src/components/blocks/auth/type.ts +0 -436
  544. package/src/components/blocks/auth/update-password-block.tsx +0 -139
  545. package/src/components/blocks/auth/use-auth-state.ts +0 -127
  546. package/src/components/blocks/chat/__tests__/ai-panel.test.tsx +0 -65
  547. package/src/components/blocks/chat/banners.tsx +0 -61
  548. package/src/components/blocks/chat/base.tsx +0 -84
  549. package/src/components/blocks/chat/header.tsx +0 -60
  550. package/src/components/blocks/chat/index.ts +0 -37
  551. package/src/components/blocks/chat/recommendation-stack.tsx +0 -41
  552. package/src/components/blocks/chat/shared.tsx +0 -27
  553. package/src/components/blocks/chat/suggested-prompts.tsx +0 -45
  554. package/src/components/blocks/chat/type.ts +0 -96
  555. package/src/components/blocks/chat/version-history-record.tsx +0 -37
  556. package/src/components/blocks/layout.ts +0 -35
  557. package/src/components/blocks/profile/__tests__/profile-card-block.test.tsx +0 -362
  558. package/src/components/blocks/profile/index.ts +0 -28
  559. package/src/components/blocks/profile/profile-card-atom.ts +0 -247
  560. package/src/components/blocks/profile/profile-card-block.tsx +0 -369
  561. package/src/components/blocks/profile/type.ts +0 -93
  562. package/src/components/blocks/profile/use-profile-card-state.ts +0 -67
  563. package/src/components/blocks/profile/use-profile-card.ts +0 -132
  564. package/src/components/blocks/scaffold/__tests__/scaffold-atom.test.tsx +0 -236
  565. package/src/components/blocks/scaffold/__tests__/scaffold.test.tsx +0 -524
  566. package/src/components/blocks/scaffold/constants.ts +0 -39
  567. package/src/components/blocks/scaffold/index.ts +0 -60
  568. package/src/components/blocks/scaffold/panel-close-button.tsx +0 -36
  569. package/src/components/blocks/scaffold/panel-menu-button.tsx +0 -221
  570. package/src/components/blocks/scaffold/scaffold-actions.tsx +0 -92
  571. package/src/components/blocks/scaffold/scaffold-atom.ts +0 -427
  572. package/src/components/blocks/scaffold/scaffold-canvas.tsx +0 -162
  573. package/src/components/blocks/scaffold/scaffold-context.ts +0 -20
  574. package/src/components/blocks/scaffold/scaffold-inspector.tsx +0 -137
  575. package/src/components/blocks/scaffold/scaffold-main.tsx +0 -28
  576. package/src/components/blocks/scaffold/scaffold-panel.tsx +0 -186
  577. package/src/components/blocks/scaffold/scaffold-root.tsx +0 -120
  578. package/src/components/blocks/scaffold/scaffold-sidebar.tsx +0 -31
  579. package/src/components/blocks/scaffold/scaffold-sub-panel.tsx +0 -122
  580. package/src/components/blocks/scaffold/scaffold-tab.tsx +0 -108
  581. package/src/components/blocks/scaffold/type.ts +0 -264
  582. package/src/components/blocks/scaffold/use-scaffold-state.ts +0 -85
  583. package/src/components/blocks/scaffold/use-scaffold.ts +0 -59
  584. package/src/components/blocks/scaffold/utils.ts +0 -112
  585. package/src/components/blocks/shell/__tests__/shell-fit-atom.test.tsx +0 -362
  586. package/src/components/blocks/shell/__tests__/shell-layout.test.tsx +0 -596
  587. package/src/components/blocks/shell/__tests__/shell-metrics.test.ts +0 -154
  588. package/src/components/blocks/shell/animated-panel-inset.tsx +0 -27
  589. package/src/components/blocks/shell/animated-panel-provider.tsx +0 -269
  590. package/src/components/blocks/shell/animated-panel-trigger.tsx +0 -51
  591. package/src/components/blocks/shell/animated-panel.tsx +0 -180
  592. package/src/components/blocks/shell/index.ts +0 -30
  593. package/src/components/blocks/shell/shell-fit-atom.ts +0 -246
  594. package/src/components/blocks/shell/shell-layout.tsx +0 -139
  595. package/src/components/blocks/shell/shell-metrics.ts +0 -133
  596. package/src/components/blocks/shell/shell-panel-atom.ts +0 -74
  597. package/src/components/blocks/shell/type.ts +0 -361
  598. package/src/components/blocks/shell/use-shell-fit-state.ts +0 -49
  599. package/src/components/blocks/shell/use-shell-fit.ts +0 -153
  600. package/src/components/blocks/shell/use-shell-panels.ts +0 -126
  601. package/src/components/blocks/shell/utils.ts +0 -187
  602. package/src/components/blocks/sidebar/__tests__/ai-sidebar-atom.test.tsx +0 -325
  603. package/src/components/blocks/sidebar/__tests__/ai-sidebar.test.tsx +0 -93
  604. package/src/components/blocks/sidebar/__tests__/use-ai-sidebar.test.tsx +0 -310
  605. package/src/components/blocks/sidebar/ai-sidebar-atom.ts +0 -698
  606. package/src/components/blocks/sidebar/ai-sidebar.tsx +0 -150
  607. package/src/components/blocks/sidebar/index.ts +0 -67
  608. package/src/components/blocks/sidebar/marquee-label.tsx +0 -59
  609. package/src/components/blocks/sidebar/sidebar-context.ts +0 -15
  610. package/src/components/blocks/sidebar/sidebar-icon.tsx +0 -14
  611. package/src/components/blocks/sidebar/sidebar-row.tsx +0 -378
  612. package/src/components/blocks/sidebar/type.ts +0 -294
  613. package/src/components/blocks/sidebar/use-ai-sidebar-state.ts +0 -123
  614. package/src/components/blocks/sidebar/use-ai-sidebar.ts +0 -619
  615. package/src/components/blocks/sidebar/utils.ts +0 -170
  616. package/src/components/blocks/types.ts +0 -6
  617. package/src/components/composed/.gitkeep +0 -0
  618. package/src/components/composed/__tests__/logo.test.tsx +0 -60
  619. package/src/components/composed/action-bar/__tests__/action-bar.test.tsx +0 -125
  620. package/src/components/composed/action-bar/action.tsx +0 -77
  621. package/src/components/composed/action-bar/emojis.tsx +0 -97
  622. package/src/components/composed/action-bar/index.ts +0 -24
  623. package/src/components/composed/action-bar/toolbar.tsx +0 -66
  624. package/src/components/composed/action-bar/types.ts +0 -58
  625. package/src/components/composed/action-bar/utils.ts +0 -140
  626. package/src/components/composed/ai/__tests__/ai.test.tsx +0 -66
  627. package/src/components/composed/ai/avatar.tsx +0 -19
  628. package/src/components/composed/ai/index.ts +0 -36
  629. package/src/components/composed/ai/message.tsx +0 -49
  630. package/src/components/composed/ai/research-answer.tsx +0 -157
  631. package/src/components/composed/ai/shared.tsx +0 -94
  632. package/src/components/composed/ai/streaming-text.tsx +0 -94
  633. package/src/components/composed/ai/suggested-prompt.tsx +0 -183
  634. package/src/components/composed/ai/types.ts +0 -81
  635. package/src/components/composed/chat/__tests__/attachment.test.tsx +0 -218
  636. package/src/components/composed/chat/__tests__/beautiful-ui.test.tsx +0 -57
  637. package/src/components/composed/chat/__tests__/chart.test.tsx +0 -316
  638. package/src/components/composed/chat/__tests__/code-block.test.tsx +0 -12
  639. package/src/components/composed/chat/__tests__/composer-attachments.test.tsx +0 -101
  640. package/src/components/composed/chat/__tests__/composer.test.tsx +0 -248
  641. package/src/components/composed/chat/__tests__/flowchart.test.tsx +0 -145
  642. package/src/components/composed/chat/__tests__/glass-material.test.tsx +0 -54
  643. package/src/components/composed/chat/__tests__/markdown.test.tsx +0 -25
  644. package/src/components/composed/chat/__tests__/menu-command.test.tsx +0 -35
  645. package/src/components/composed/chat/__tests__/recommendation.test.tsx +0 -43
  646. package/src/components/composed/chat/actions.tsx +0 -81
  647. package/src/components/composed/chat/attachment-file.ts +0 -82
  648. package/src/components/composed/chat/attachment.tsx +0 -498
  649. package/src/components/composed/chat/chart/chart-atom.ts +0 -55
  650. package/src/components/composed/chat/chart/chart-context.ts +0 -9
  651. package/src/components/composed/chat/chart/chart-legend.tsx +0 -75
  652. package/src/components/composed/chat/chart/chart-plot.tsx +0 -233
  653. package/src/components/composed/chat/chart/chart-root.tsx +0 -229
  654. package/src/components/composed/chat/chart/chart-tooltip.tsx +0 -74
  655. package/src/components/composed/chat/chart/constants.ts +0 -8
  656. package/src/components/composed/chat/chart/evilcharts/README.md +0 -8
  657. package/src/components/composed/chat/chart/evilcharts/echarts-area-chart.tsx +0 -2358
  658. package/src/components/composed/chat/chart/evilcharts/echarts-bar-chart.tsx +0 -2261
  659. package/src/components/composed/chat/chart/evilcharts/echarts-brush.tsx +0 -233
  660. package/src/components/composed/chat/chart/evilcharts/echarts-chart.tsx +0 -214
  661. package/src/components/composed/chat/chart/evilcharts/echarts-dot.tsx +0 -111
  662. package/src/components/composed/chat/chart/evilcharts/echarts-legend.tsx +0 -131
  663. package/src/components/composed/chat/chart/evilcharts/echarts-line-chart.tsx +0 -2112
  664. package/src/components/composed/chat/chart/evilcharts/echarts-pie-chart.tsx +0 -1235
  665. package/src/components/composed/chat/chart/evilcharts/echarts-tooltip.tsx +0 -125
  666. package/src/components/composed/chat/chart/index.ts +0 -13
  667. package/src/components/composed/chat/chart/type.ts +0 -88
  668. package/src/components/composed/chat/chart/use-chart-state.ts +0 -22
  669. package/src/components/composed/chat/chart/use-chart.ts +0 -70
  670. package/src/components/composed/chat/chart/utils.ts +0 -47
  671. package/src/components/composed/chat/chart.tsx +0 -3
  672. package/src/components/composed/chat/code-block.tsx +0 -123
  673. package/src/components/composed/chat/composer/add-button.tsx +0 -29
  674. package/src/components/composed/chat/composer/base.tsx +0 -573
  675. package/src/components/composed/chat/composer/command-menu.tsx +0 -47
  676. package/src/components/composed/chat/composer/hooks.ts +0 -29
  677. package/src/components/composed/chat/composer/index.ts +0 -19
  678. package/src/components/composed/chat/composer/send-button.tsx +0 -36
  679. package/src/components/composed/chat/composer/suggestions.tsx +0 -115
  680. package/src/components/composed/chat/composer/use-dictation.ts +0 -123
  681. package/src/components/composed/chat/composer/utils.ts +0 -74
  682. package/src/components/composed/chat/context-cards.tsx +0 -63
  683. package/src/components/composed/chat/filter-table.tsx +0 -119
  684. package/src/components/composed/chat/flowchart/chart-node.tsx +0 -162
  685. package/src/components/composed/chat/flowchart/connector.tsx +0 -32
  686. package/src/components/composed/chat/flowchart/constant.ts +0 -26
  687. package/src/components/composed/chat/flowchart/default.tsx +0 -230
  688. package/src/components/composed/chat/flowchart/edge-toolbar.tsx +0 -73
  689. package/src/components/composed/chat/flowchart/hooks.tsx +0 -347
  690. package/src/components/composed/chat/flowchart/index.ts +0 -14
  691. package/src/components/composed/chat/flowchart/step-body.tsx +0 -82
  692. package/src/components/composed/chat/flowchart/types.ts +0 -89
  693. package/src/components/composed/chat/flowchart/utils.ts +0 -78
  694. package/src/components/composed/chat/hint.tsx +0 -59
  695. package/src/components/composed/chat/index.ts +0 -92
  696. package/src/components/composed/chat/insight-cards.tsx +0 -199
  697. package/src/components/composed/chat/markdown-atom.ts +0 -15
  698. package/src/components/composed/chat/markdown.tsx +0 -213
  699. package/src/components/composed/chat/recommendation/checkbox.tsx +0 -122
  700. package/src/components/composed/chat/recommendation/constant.ts +0 -54
  701. package/src/components/composed/chat/recommendation/default.tsx +0 -25
  702. package/src/components/composed/chat/recommendation/group.tsx +0 -36
  703. package/src/components/composed/chat/recommendation/index.ts +0 -17
  704. package/src/components/composed/chat/recommendation/item.tsx +0 -215
  705. package/src/components/composed/chat/recommendation/types.ts +0 -76
  706. package/src/components/composed/chat/records-table.tsx +0 -130
  707. package/src/components/composed/chat/type.ts +0 -157
  708. package/src/components/composed/logo.tsx +0 -171
  709. package/src/components/composed/password-input.tsx +0 -179
  710. package/src/components/composed/reader/applied-mark.tsx +0 -32
  711. package/src/components/composed/reader/apply-toast.tsx +0 -49
  712. package/src/components/composed/reader/index.ts +0 -10
  713. package/src/components/composed/reader/selection-highlight.tsx +0 -26
  714. package/src/components/composed/reader/selection-popover.tsx +0 -149
  715. package/src/components/composed/reader/type.ts +0 -48
  716. package/src/components/composed/social-providers.tsx +0 -154
  717. package/src/components/composed/tree/CLAUDE.md +0 -145
  718. package/src/components/composed/tree/__tests__/tree-atom.test.tsx +0 -217
  719. package/src/components/composed/tree/__tests__/tree.test.tsx +0 -522
  720. package/src/components/composed/tree/__tests__/use-tree.test.tsx +0 -333
  721. package/src/components/composed/tree/constants.ts +0 -55
  722. package/src/components/composed/tree/index.ts +0 -51
  723. package/src/components/composed/tree/tree-atom.ts +0 -590
  724. package/src/components/composed/tree/tree-context.ts +0 -13
  725. package/src/components/composed/tree/tree-node.tsx +0 -496
  726. package/src/components/composed/tree/tree.tsx +0 -233
  727. package/src/components/composed/tree/type.ts +0 -322
  728. package/src/components/composed/tree/use-tree-dnd.ts +0 -179
  729. package/src/components/composed/tree/use-tree-state.ts +0 -105
  730. package/src/components/composed/tree/use-tree.ts +0 -311
  731. package/src/components/composed/tree/utils.ts +0 -172
  732. package/src/components/composed/types.ts +0 -9
  733. package/src/components/composed/user/__tests__/message.test.tsx +0 -79
  734. package/src/components/composed/user/index.ts +0 -14
  735. package/src/components/composed/user/info.tsx +0 -56
  736. package/src/components/composed/user/message.tsx +0 -36
  737. package/src/components/composed/user/pill.tsx +0 -20
  738. package/src/components/composed/user/types.ts +0 -47
  739. package/src/components/composed/user/utils.ts +0 -0
  740. package/src/components/composed/verse/__tests__/verse.test.tsx +0 -57
  741. package/src/components/composed/verse/index.ts +0 -2
  742. package/src/components/composed/verse/types.ts +0 -24
  743. package/src/components/composed/verse/verse.tsx +0 -100
  744. package/src/components/docs/atoms-gallery.tsx +0 -286
  745. package/src/components/docs/block-demo-stage.tsx +0 -38
  746. package/src/components/docs/blocks-gallery.tsx +0 -224
  747. package/src/components/docs/browser.tsx +0 -87
  748. package/src/components/docs/code-block.tsx +0 -10
  749. package/src/components/docs/components-gallery.tsx +0 -182
  750. package/src/components/docs/demo-controls.tsx +0 -142
  751. package/src/components/docs/hero.tsx +0 -197
  752. package/src/components/docs/mermaid.tsx +0 -55
  753. package/src/components/icons/README.md +0 -91
  754. package/src/components/icons/__tests__/icons.test.tsx +0 -58
  755. package/src/components/icons/file-badge-cfm.tsx +0 -615
  756. package/src/components/icons/file-badge-corpus.tsx +0 -604
  757. package/src/components/icons/file-badge-pdf.tsx +0 -570
  758. package/src/components/icons/file-badge-tei.tsx +0 -524
  759. package/src/components/icons/file-badge-tf.tsx +0 -620
  760. package/src/components/icons/file-badge-txt.tsx +0 -607
  761. package/src/components/icons/file-badge-xml.tsx +0 -576
  762. package/src/components/icons/file-wordmark-cfm.tsx +0 -424
  763. package/src/components/icons/file-wordmark-corpus.tsx +0 -454
  764. package/src/components/icons/file-wordmark-pdf.tsx +0 -470
  765. package/src/components/icons/file-wordmark-tei.tsx +0 -424
  766. package/src/components/icons/file-wordmark-tf.tsx +0 -406
  767. package/src/components/icons/file-wordmark-txt.tsx +0 -421
  768. package/src/components/icons/file-wordmark-xml.tsx +0 -424
  769. package/src/components/icons/index.ts +0 -16
  770. package/src/components/icons/types.ts +0 -8
  771. package/src/components/motion/index.ts +0 -0
  772. package/src/components/motion/overflow-actions.tsx +0 -376
  773. package/src/components/motion/popover-morph.tsx +0 -292
  774. package/src/components/motion/popover-position.ts +0 -86
  775. package/src/components/motion/shared-layout-bg.tsx +0 -151
  776. package/src/components/stories/attachment.story.tsx +0 -40
  777. package/src/components/stories/auth-flow-block.story.tsx +0 -17
  778. package/src/components/stories/avatar.story.tsx +0 -33
  779. package/src/components/stories/base.story.tsx +0 -70
  780. package/src/components/stories/bubble.story.tsx +0 -61
  781. package/src/components/stories/button.story.tsx +0 -32
  782. package/src/components/stories/card.story.tsx +0 -36
  783. package/src/components/stories/chart.story.tsx +0 -69
  784. package/src/components/stories/checkbox.story.tsx +0 -30
  785. package/src/components/stories/code-auth-block.story.tsx +0 -20
  786. package/src/components/stories/code-block.story.tsx +0 -35
  787. package/src/components/stories/composed-password-input.story.tsx +0 -41
  788. package/src/components/stories/context-cards.story.tsx +0 -30
  789. package/src/components/stories/emoji-action-bar.story.tsx +0 -20
  790. package/src/components/stories/field.story.tsx +0 -32
  791. package/src/components/stories/file-icons.story.tsx +0 -20
  792. package/src/components/stories/filter-table.story.tsx +0 -63
  793. package/src/components/stories/flowchart.story.tsx +0 -25
  794. package/src/components/stories/forgot-password-block.story.tsx +0 -14
  795. package/src/components/stories/frame.story.tsx +0 -32
  796. package/src/components/stories/index.ts +0 -57
  797. package/src/components/stories/input-group.story.tsx +0 -27
  798. package/src/components/stories/input.story.tsx +0 -42
  799. package/src/components/stories/insight-cards.story.tsx +0 -67
  800. package/src/components/stories/label.story.tsx +0 -32
  801. package/src/components/stories/linked-accounts-block.story.tsx +0 -23
  802. package/src/components/stories/login-block.story.tsx +0 -18
  803. package/src/components/stories/logo.story.tsx +0 -21
  804. package/src/components/stories/markdown.story.tsx +0 -31
  805. package/src/components/stories/menu-command.story.tsx +0 -43
  806. package/src/components/stories/onboarding-block.story.tsx +0 -14
  807. package/src/components/stories/otp-field.story.tsx +0 -35
  808. package/src/components/stories/passkey-manager-block.story.tsx +0 -18
  809. package/src/components/stories/passkey-sign-in-block.story.tsx +0 -15
  810. package/src/components/stories/password-input.story.tsx +0 -35
  811. package/src/components/stories/profile-card-block.story.tsx +0 -29
  812. package/src/components/stories/recommendation-card.story.tsx +0 -37
  813. package/src/components/stories/records-table.story.tsx +0 -52
  814. package/src/components/stories/reference.story.tsx +0 -33
  815. package/src/components/stories/research-answer.story.tsx +0 -32
  816. package/src/components/stories/scaffold-root.story.tsx +0 -47
  817. package/src/components/stories/separator.story.tsx +0 -37
  818. package/src/components/stories/shell-layout.story.tsx +0 -19
  819. package/src/components/stories/signup-block.story.tsx +0 -18
  820. package/src/components/stories/social-providers.story.tsx +0 -26
  821. package/src/components/stories/streaming-text.story.tsx +0 -25
  822. package/src/components/stories/text.story.tsx +0 -31
  823. package/src/components/stories/textarea.story.tsx +0 -34
  824. package/src/components/stories/tree.story.tsx +0 -31
  825. package/src/components/stories/update-password-block.story.tsx +0 -14
  826. package/src/components/stories/user.story.tsx +0 -32
  827. package/src/components/stories/verse.story.tsx +0 -42
  828. package/src/components/theme-provider.tsx +0 -230
  829. package/src/components/types.ts +0 -106
  830. package/src/components/ui/accordion.tsx +0 -68
  831. package/src/components/ui/alert-dialog.tsx +0 -167
  832. package/src/components/ui/alert.tsx +0 -84
  833. package/src/components/ui/autocomplete.tsx +0 -303
  834. package/src/components/ui/avatar.tsx +0 -109
  835. package/src/components/ui/badge.tsx +0 -101
  836. package/src/components/ui/button-group.tsx +0 -88
  837. package/src/components/ui/button.tsx +0 -192
  838. package/src/components/ui/card.tsx +0 -253
  839. package/src/components/ui/chat/__tests__/segmented-toggle.test.tsx +0 -27
  840. package/src/components/ui/chat/avatar-handle.tsx +0 -30
  841. package/src/components/ui/chat/badges.tsx +0 -85
  842. package/src/components/ui/chat/buttons.tsx +0 -94
  843. package/src/components/ui/chat/chips.tsx +0 -106
  844. package/src/components/ui/chat/dot.tsx +0 -81
  845. package/src/components/ui/chat/icon-button.tsx +0 -43
  846. package/src/components/ui/chat/icon-tile.tsx +0 -33
  847. package/src/components/ui/chat/index.ts +0 -12
  848. package/src/components/ui/chat/inline-source.tsx +0 -94
  849. package/src/components/ui/chat/segmented-toggle.tsx +0 -99
  850. package/src/components/ui/chat/tag.tsx +0 -61
  851. package/src/components/ui/chat/thumbnail.tsx +0 -31
  852. package/src/components/ui/chat/waveform.tsx +0 -30
  853. package/src/components/ui/checkbox.tsx +0 -83
  854. package/src/components/ui/collapsible.tsx +0 -42
  855. package/src/components/ui/command.tsx +0 -263
  856. package/src/components/ui/context-menu.tsx +0 -342
  857. package/src/components/ui/emoji-picker.tsx +0 -161
  858. package/src/components/ui/field.tsx +0 -89
  859. package/src/components/ui/frame.tsx +0 -87
  860. package/src/components/ui/glasscn/glass-button-group.tsx +0 -34
  861. package/src/components/ui/glasscn/glass-button.tsx +0 -25
  862. package/src/components/ui/glasscn/glass-container.tsx +0 -94
  863. package/src/components/ui/glasscn/glass-separator.tsx +0 -39
  864. package/src/components/ui/glasscn/liquid-glass.tsx +0 -59
  865. package/src/components/ui/group.tsx +0 -92
  866. package/src/components/ui/input-group.tsx +0 -105
  867. package/src/components/ui/input.tsx +0 -70
  868. package/src/components/ui/kbd.tsx +0 -32
  869. package/src/components/ui/label.tsx +0 -36
  870. package/src/components/ui/menu-command.tsx +0 -156
  871. package/src/components/ui/menu.tsx +0 -352
  872. package/src/components/ui/otp-field.tsx +0 -88
  873. package/src/components/ui/popover-glass.tsx +0 -158
  874. package/src/components/ui/popover.tsx +0 -120
  875. package/src/components/ui/preview-card.tsx +0 -61
  876. package/src/components/ui/scroll-area.tsx +0 -80
  877. package/src/components/ui/select.tsx +0 -257
  878. package/src/components/ui/separator.tsx +0 -23
  879. package/src/components/ui/sheet.tsx +0 -135
  880. package/src/components/ui/skeleton.tsx +0 -18
  881. package/src/components/ui/spinner.tsx +0 -17
  882. package/src/components/ui/switch.tsx +0 -30
  883. package/src/components/ui/tabs.tsx +0 -120
  884. package/src/components/ui/textarea.tsx +0 -58
  885. package/src/components/ui/toast.tsx +0 -325
  886. package/src/components/ui/toolbar.tsx +0 -92
  887. package/src/components/ui/tooltip.tsx +0 -67
  888. package/src/index.css +0 -10
  889. package/src/index.ts +0 -102
  890. package/src/lib/attachment-content.ts +0 -28
  891. package/src/lib/auth-accent.ts +0 -49
  892. package/src/lib/ease.ts +0 -90
  893. package/src/lib/glass-variants.ts +0 -22
  894. package/src/lib/hooks/use-hover-capable.ts +0 -23
  895. package/src/lib/hooks/use-mobile.ts +0 -21
  896. package/src/lib/keyed-atom.ts +0 -60
  897. package/src/lib/segmented-control.ts +0 -42
  898. package/src/lib/sound.ts +0 -39
  899. package/src/lib/specular.ts +0 -10
  900. package/src/lib/state/__tests__/sound.test.tsx +0 -53
  901. package/src/lib/state/exegia-provider.tsx +0 -83
  902. package/src/lib/state/index.ts +0 -4
  903. package/src/lib/state/store.ts +0 -19
  904. package/src/lib/use-motion-panel.ts +0 -78
  905. package/src/lib/utils.test.ts +0 -22
  906. package/src/lib/utils.ts +0 -100
  907. package/src/specular.js +0 -4
  908. /package/{src/components/composed/chat/composer → dist-lib}/BEAUTIFUL-UI-LICENSE.txt +0 -0
  909. /package/{src/components/composed/chat/chart/evilcharts/LICENSE → dist-lib/EVILCHARTS-LICENSE.txt} +0 -0
@@ -1,233 +0,0 @@
1
- import { withAlpha, type ResolvedColors } from "./echarts-chart";
2
- import type { DataZoomComponentOption } from "echarts/components";
3
- import type { FC } from "react";
4
- import * as echarts from "echarts/core";
5
-
6
- type EChartsInstance = ReturnType<typeof echarts.init>;
7
-
8
- const BRUSH_BORDER_OPACITY = 1; // brush frame, × border alpha (evil-brush uses the full token)
9
-
10
- export { BRUSH_BORDER_OPACITY };
11
-
12
- // ─────────────────────────────────────────────────────────────────────────────
13
- // Brush marker — the declarative `<Chart.Brush/>` child. Rendering nothing, its
14
- // PRESENCE turns the brush on (replacing the old showBrush prop) and its props
15
- // carry the brush's height, handle-label formatter, and range callback. Shared
16
- // so every cartesian chart attaches the SAME component to its root.
17
- // ─────────────────────────────────────────────────────────────────────────────
18
-
19
- export interface BrushProps {
20
- height?: number; // brush preview strip height in px (default 56)
21
- formatLabel?: (value: string, index: number) => string; // formats the range-handle labels
22
- onChange?: (range: { startIndex: number; endIndex: number }) => void; // fires as the range moves
23
- }
24
-
25
- /** Declares the zoom brush below the chart. Presence renders it; renders nothing itself. */
26
- export const Brush: FC<BrushProps> = () => null;
27
-
28
- // ─────────────────────────────────────────────────────────────────────────────
29
- // Brush overlays — the evil-brush look: a rounded border around the SELECTED
30
- // range, dimmed unselected sides, centered grip-dot handle pills, and range
31
- // label pills below the frame. None of that is a dataZoom capability. They are
32
- // raw zrender elements updated imperatively — routing them through setOption
33
- // re-renders the dataZoom component mid-drag, resetting its drag anchor (the
34
- // handle progressively lags the pointer).
35
- // ─────────────────────────────────────────────────────────────────────────────
36
-
37
- export type BrushRange = { start: number; end: number };
38
- export type BrushGeometry = { bottom: number; height: number };
39
-
40
- export type BrushOverlayParams = {
41
- range: BrushRange;
42
- geom: BrushGeometry;
43
- size: { width: number; height: number };
44
- tokens: ResolvedColors["tokens"];
45
- labels: { start: string; end: string } | null;
46
- showLabels: boolean;
47
- hover: { left: boolean; right: boolean };
48
- };
49
-
50
- type ZrRect = InstanceType<typeof echarts.graphic.Rect>;
51
- type ZrCircle = InstanceType<typeof echarts.graphic.Circle>;
52
- type ZrText = InstanceType<typeof echarts.graphic.Text>;
53
-
54
- export type BrushOverlayElements = {
55
- dimLeft: ZrRect;
56
- dimRight: ZrRect;
57
- frame: ZrRect;
58
- pillLeft: ZrRect;
59
- pillRight: ZrRect;
60
- grips: ZrCircle[]; // 3 left + 3 right
61
- labelStart: ZrText;
62
- labelEnd: ZrText;
63
- };
64
-
65
- export function syncBrushOverlay(
66
- chart: EChartsInstance,
67
- store: { brushOverlay: BrushOverlayElements | null },
68
- params: BrushOverlayParams | null,
69
- ) {
70
- const zr = chart.getZr();
71
- if (!zr) return;
72
-
73
- if (!params) {
74
- if (store.brushOverlay) {
75
- const { grips, ...rest } = store.brushOverlay;
76
- [...Object.values(rest), ...grips].forEach((el) => zr.remove(el));
77
- store.brushOverlay = null;
78
- }
79
- return;
80
- }
81
-
82
- if (!store.brushOverlay) {
83
- const rect = (z: number) => new echarts.graphic.Rect({ silent: true, z, shape: {} });
84
- const els: BrushOverlayElements = {
85
- dimLeft: rect(100),
86
- dimRight: rect(100),
87
- frame: rect(101),
88
- pillLeft: rect(102),
89
- pillRight: rect(102),
90
- grips: Array.from(
91
- { length: 6 },
92
- () => new echarts.graphic.Circle({ silent: true, z: 103, shape: {} }),
93
- ),
94
- labelStart: new echarts.graphic.Text({ silent: true, z: 104 }),
95
- labelEnd: new echarts.graphic.Text({ silent: true, z: 104 }),
96
- };
97
- const { grips, ...rest } = els;
98
- [...Object.values(rest), ...grips].forEach((el) => zr.add(el));
99
- store.brushOverlay = els;
100
- }
101
-
102
- const els = store.brushOverlay;
103
- const { range, geom, size, tokens, labels, showLabels, hover } = params;
104
-
105
- const trackLeft = 8;
106
- const trackRight = Math.max(size.width - 8, trackLeft);
107
- const trackWidth = trackRight - trackLeft;
108
- const top = size.height - geom.bottom - geom.height;
109
- const centerY = top + geom.height / 2;
110
- const selectionLeft = trackLeft + (trackWidth * range.start) / 100;
111
- const selectionRight = trackLeft + (trackWidth * range.end) / 100;
112
-
113
- const dimFill = withAlpha(tokens.background, 0.7);
114
- els.dimLeft.setShape({
115
- x: trackLeft,
116
- y: top,
117
- width: Math.max(selectionLeft - trackLeft, 0),
118
- height: geom.height,
119
- });
120
- els.dimLeft.setStyle({ fill: dimFill });
121
- els.dimRight.setShape({
122
- x: selectionRight,
123
- y: top,
124
- width: Math.max(trackRight - selectionRight, 0),
125
- height: geom.height,
126
- });
127
- els.dimRight.setStyle({ fill: dimFill });
128
-
129
- els.frame.setShape({
130
- x: selectionLeft,
131
- y: top,
132
- width: Math.max(selectionRight - selectionLeft, 0),
133
- height: geom.height,
134
- r: 6,
135
- });
136
- els.frame.setStyle({
137
- fill: "none",
138
- stroke: withAlpha(tokens.border, BRUSH_BORDER_OPACITY),
139
- lineWidth: 1,
140
- });
141
-
142
- // Handle pills: evil-brush's 6×16 grip pill, centered on the selection edge,
143
- // brightening to foreground on hover/drag.
144
- const pill = (el: ZrRect, x: number, hovered: boolean) => {
145
- el.setShape({ x: x - 3, y: centerY - 8, width: 6, height: 16, r: 3 });
146
- el.setStyle({ fill: hovered ? tokens.foreground : tokens.mutedForeground });
147
- };
148
- pill(els.pillLeft, selectionLeft, hover.left);
149
- pill(els.pillRight, selectionRight, hover.right);
150
-
151
- const gripFill = withAlpha(tokens.background, 0.7);
152
- [-4, 0, 4].forEach((offset, i) => {
153
- els.grips[i].setShape({ cx: selectionLeft, cy: centerY + offset, r: 1 });
154
- els.grips[i].setStyle({ fill: gripFill });
155
- els.grips[i + 3].setShape({ cx: selectionRight, cy: centerY + offset, r: 1 });
156
- els.grips[i + 3].setStyle({ fill: gripFill });
157
- });
158
-
159
- // Range label pills straddle the frame's bottom line — an overlay, so they
160
- // occupy no layout space; half the pill sits above the line, half below. Each
161
- // pill grows INWARD from its handle with a small inset, like the Recharts
162
- // labels, instead of hanging past the frame edge.
163
- const label = (el: ZrText, text: string, x: number, align: "left" | "right") => {
164
- el.setStyle({
165
- text,
166
- x: align === "left" ? Math.max(x + 6, trackLeft + 2) : Math.min(x - 6, trackRight - 2),
167
- y: top + geom.height,
168
- align,
169
- verticalAlign: "middle",
170
- fill: tokens.background,
171
- backgroundColor: tokens.foreground,
172
- padding: [2, 5],
173
- borderRadius: 4,
174
- font: "500 9px system-ui, sans-serif",
175
- });
176
- el.attr("invisible", !showLabels || !text);
177
- };
178
- label(els.labelStart, labels?.start ?? "", selectionLeft, "left");
179
- label(els.labelEnd, labels?.end ?? "", selectionRight, "right");
180
- }
181
-
182
- // ─────────────────────────────────────────────────────────────────────────────
183
- // dataZoom slider — the transparent drag layer laid over the mini chart. Fully
184
- // chart-agnostic: the visible frame/handles/labels are the graphic overlays
185
- // above; this provides interaction only. Both zoom entries target only the MAIN
186
- // x-axis (index 0), so the mini chart never filters itself. The per-chart
187
- // mini-series (which differ per chart type) are built by the chart, not here.
188
- // ─────────────────────────────────────────────────────────────────────────────
189
-
190
- export function buildBrushDataZoom(params: {
191
- brushBottom: number;
192
- brushHeight: number;
193
- brushRange: BrushRange;
194
- fillerColor: string;
195
- }): DataZoomComponentOption[] {
196
- const { brushBottom, brushHeight, brushRange, fillerColor } = params;
197
-
198
- return [
199
- {
200
- type: "slider",
201
- show: true,
202
- xAxisIndex: [0],
203
- left: 8,
204
- right: 8,
205
- bottom: brushBottom,
206
- height: brushHeight,
207
- // Carry the live range through every rebuild — a notMerge push
208
- // without start/end would reset the zoom to the full extent.
209
- start: brushRange.start,
210
- end: brushRange.end,
211
- brushSelect: false,
212
- // Range labels are overlay pills below the frame (see
213
- // syncBrushOverlay) — the native detail text renders INSIDE the
214
- // track, which is not the evil-brush look.
215
- showDetail: false,
216
- backgroundColor: "transparent",
217
- // The visible frame is the graphic overlay riding the selection —
218
- // the component's own static border stays hidden.
219
- borderColor: "transparent",
220
- fillerColor,
221
- dataBackground: { lineStyle: { opacity: 0 }, areaStyle: { opacity: 0 } },
222
- selectedDataBackground: { lineStyle: { opacity: 0 }, areaStyle: { opacity: 0 } },
223
- // Interaction only — the visible pills are graphic overlays (see
224
- // syncBrushOverlay). Kept generous for an easy grab target.
225
- handleIcon: "path://M -3 -5 L -3 5 A 3 3 0 0 0 3 5 L 3 -5 A 3 3 0 0 0 -3 -5 Z",
226
- handleSize: "35%",
227
- handleStyle: { opacity: 0 },
228
- moveHandleSize: 0,
229
- emphasis: { handleStyle: { opacity: 0 } },
230
- },
231
- { type: "inside", xAxisIndex: [0] },
232
- ];
233
- }
@@ -1,214 +0,0 @@
1
- import { CanvasRenderer, SVGRenderer } from "echarts/renderers";
2
- import type { ComponentType, ReactNode } from "react";
3
- import * as echarts from "echarts/core";
4
-
5
- export const ECHARTS_RENDERERS = {
6
- canvas: "canvas",
7
- svg: "svg",
8
- } as const;
9
-
10
- export type EChartsRenderer = (typeof ECHARTS_RENDERERS)[keyof typeof ECHARTS_RENDERERS];
11
-
12
- export const DEFAULT_ECHARTS_RENDERER = ECHARTS_RENDERERS.canvas;
13
-
14
- // Renderer registration is shared by every modular ECharts chart. Individual
15
- // chart modules only register the series and components they use.
16
- echarts.use([CanvasRenderer, SVGRenderer]);
17
-
18
- // ─────────────────────────────────────────────────────────────────────────────
19
- // Theme keys + config — replicated from the repo's <ChartStyle> so the ECharts
20
- // charts stay self-contained (no recharts ui imports). Shared by every ECharts
21
- // chart and the tooltip/legend/brush ui modules.
22
- // ─────────────────────────────────────────────────────────────────────────────
23
-
24
- // Theme selectors mirror the repo's <ChartStyle>: light is the bare root, dark is `.dark`.
25
- export const THEMES = { light: "", dark: ".dark" } as const;
26
- export type ThemeKey = keyof typeof THEMES;
27
- export const THEME_KEYS = Object.keys(THEMES) as ThemeKey[];
28
-
29
- // Require at least one theme key — identical constraint to the repo's ChartConfig.
30
- export type AtLeastOneThemeColor =
31
- | { light: string[]; dark?: string[] }
32
- | { light?: string[]; dark: string[] };
33
-
34
- export type ChartConfig = Record<
35
- string,
36
- {
37
- label?: ReactNode;
38
- icon?: ComponentType;
39
- colors?: AtLeastOneThemeColor;
40
- }
41
- >;
42
-
43
- // ─────────────────────────────────────────────────────────────────────────────
44
- // Color plumbing — replicated from the repo's <ChartStyle> so the charts stay
45
- // self-contained (no ./recharts imports).
46
- // ─────────────────────────────────────────────────────────────────────────────
47
-
48
- // Max slots a key needs = longest color array across themes (min 1). Both themes
49
- // always emit the same number of `--color-{key}-{n}` vars.
50
- export function getColorsCount(item: ChartConfig[string]): number {
51
- if (!item.colors) return 1;
52
- const counts = THEME_KEYS.map((theme) => item.colors?.[theme]?.length ?? 0);
53
- return Math.max(...counts, 1);
54
- }
55
-
56
- // Distribute colors evenly across slots; extra slots go to the LAST color(s).
57
- // 2 colors / 4 slots → [c0, c0, c1, c1]; 3 colors / 4 slots → [c0, c1, c2, c2].
58
- export function distributeColors(colors: string[], maxCount: number): string[] {
59
- const available = colors.length;
60
- if (available >= maxCount) return colors.slice(0, maxCount);
61
-
62
- const result: string[] = [];
63
- const baseSlots = Math.floor(maxCount / available);
64
- const extraSlots = maxCount % available;
65
-
66
- for (let i = 0; i < available; i++) {
67
- const isExtra = i >= available - extraSlots;
68
- const slots = baseSlots + (isExtra ? 1 : 0);
69
- for (let j = 0; j < slots; j++) result.push(colors[i]);
70
- }
71
-
72
- return result;
73
- }
74
-
75
- // Emits the same CSS <ChartStyle> would: `--color-{key}-{n}` scoped to
76
- // `[data-chart={id}]` (light) and `.dark [data-chart={id}]` (dark).
77
- export function buildChartCss(id: string, config: ChartConfig): string {
78
- const colorConfig = Object.entries(config).filter(([, item]) => item.colors);
79
- if (!colorConfig.length) return "";
80
-
81
- const varsFor = (theme: ThemeKey) =>
82
- colorConfig
83
- .flatMap(([key, item]) => {
84
- const authored = item.colors?.[theme];
85
- if (!authored || authored.length === 0) return [];
86
- return distributeColors(authored, getColorsCount(item)).map(
87
- (color, index) => ` --color-${key.replace(/[^a-zA-Z0-9_-]/g, character => "\\" + character.codePointAt(0)!.toString(16) + " ")}-${index}: ${color};`,
88
- );
89
- })
90
- .join("\n");
91
-
92
- return Object.entries(THEMES)
93
- .map(([theme, prefix]) => `${prefix} [data-chart=${id}] {\n${varsFor(theme as ThemeKey)}\n}`)
94
- .join("\n");
95
- }
96
-
97
- // A single reusable 1×1 canvas normalizes ANY CSS color (hex, named, oklch, …)
98
- // to a concrete rgba string by painting it and reading the pixel back.
99
- let normalizerCtx: CanvasRenderingContext2D | null = null;
100
- export function normalizeColor(value: string): string {
101
- const raw = value.trim();
102
- if (!raw || typeof document === "undefined") return raw;
103
-
104
- if (!normalizerCtx) {
105
- const canvas = document.createElement("canvas");
106
- canvas.width = 1;
107
- canvas.height = 1;
108
- normalizerCtx = canvas.getContext("2d", { willReadFrequently: true });
109
- }
110
- if (!normalizerCtx) return raw;
111
-
112
- normalizerCtx.clearRect(0, 0, 1, 1);
113
- normalizerCtx.fillStyle = "#000";
114
- normalizerCtx.fillStyle = raw; // invalid values leave the sentinel in place
115
- normalizerCtx.fillRect(0, 0, 1, 1);
116
- const [r, g, b, a] = normalizerCtx.getImageData(0, 0, 1, 1).data;
117
- return `rgba(${r}, ${g}, ${b}, ${(a / 255).toFixed(3)})`;
118
- }
119
-
120
- // Scales the alpha of a normalized `rgba(r, g, b, a)` string. Multiplying (not
121
- // replacing) keeps translucent theme tokens honest: a border that is 10%-white
122
- // at `withAlpha(border, 0.5)` lands at 5%, matching Tailwind's `border/50`.
123
- export function withAlpha(color: string, alpha: number): string {
124
- const match = color.match(/rgba?\(([^)]+)\)/);
125
- if (!match) return color;
126
- const [r, g, b, a] = match[1].split(",").map((p) => p.trim());
127
- const base = a === undefined ? 1 : Number.parseFloat(a) || 0;
128
- return `rgba(${r}, ${g}, ${b}, ${(base * alpha).toFixed(3)})`;
129
- }
130
-
131
- export type ResolvedColors = {
132
- series: Record<string, string[]>; // normalized `--color-{key}-{n}` slots per key
133
- tokens: {
134
- mutedForeground: string;
135
- border: string;
136
- foreground: string;
137
- background: string;
138
- };
139
- };
140
-
141
- // Reads the injected CSS vars + theme tokens from the live DOM. Series slots come
142
- // from `getComputedStyle` on the container; tokens are read off a throwaway probe
143
- // carrying the matching Tailwind class (robust to the var naming a theme uses).
144
- export function resolveColors(
145
- container: HTMLElement,
146
- config: ChartConfig,
147
- seriesKeys: string[],
148
- ): ResolvedColors {
149
- const computed = getComputedStyle(container);
150
- const series: Record<string, string[]> = {};
151
-
152
- for (const key of seriesKeys) {
153
- const count = getColorsCount(config[key] ?? {});
154
- const slots: string[] = [];
155
- for (let n = 0; n < count; n++) {
156
- const raw = computed.getPropertyValue(`--color-${key}-${n}`).trim();
157
- slots.push(raw ? normalizeColor(raw) : "rgba(120, 120, 120, 1)");
158
- }
159
- series[key] = slots;
160
- }
161
-
162
- const probe = document.createElement("span");
163
- probe.style.cssText = "position:absolute;width:0;height:0;visibility:hidden;pointer-events:none;";
164
- container.appendChild(probe);
165
- const readToken = (className: string) => {
166
- probe.className = className;
167
- return normalizeColor(getComputedStyle(probe).color);
168
- };
169
- const tokens = {
170
- mutedForeground: readToken("text-muted-foreground"),
171
- border: readToken("text-border"),
172
- foreground: readToken("text-foreground"),
173
- background: readToken("text-background"),
174
- };
175
- container.removeChild(probe);
176
-
177
- return { series, tokens };
178
- }
179
-
180
- // Horizontal multi-stop color for a series — a solid string when there is only
181
- // one color, else an evenly-distributed left→right LinearGradient. Reused for the
182
- // stroke, symbol fills, and as the base tint for the area fill.
183
- export function seriesPaint(slots: string[]): string | echarts.graphic.LinearGradient {
184
- if (slots.length <= 1) return slots[0] ?? "rgba(120, 120, 120, 1)";
185
- const stops = slots.map((color, i) => ({ offset: i / (slots.length - 1), color }));
186
- return new echarts.graphic.LinearGradient(0, 0, 1, 0, stops);
187
- }
188
-
189
- // Solid var / gradient of vars for a series indicator — mirrors getIndicatorColorStyle.
190
- // Used by BOTH the tooltip rows and the legend indicators.
191
- export function indicatorBackground(key: string, colorsCount: number): string {
192
- if (colorsCount <= 1) return `var(--color-${key}-0)`;
193
- const stops = Array.from({ length: colorsCount }, (_, i) => {
194
- const offset = (i / (colorsCount - 1)) * 100;
195
- return `var(--color-${key}-${i}) ${offset}%`;
196
- }).join(", ");
197
- return `linear-gradient(to right, ${stops})`;
198
- }
199
-
200
- // Composites a translucent color over an opaque base into a FLAT color. The
201
- // tick dots need this: a translucent stroke double-paints where its round caps
202
- // overlap the line body, which reads as two stacked colors.
203
- export function flattenColor(color: string, base: string): string {
204
- const parse = (value: string) =>
205
- value
206
- .match(/rgba?\(([^)]+)\)/)?.[1]
207
- .split(",")
208
- .map((part) => Number.parseFloat(part)) ?? [0, 0, 0, 1];
209
- const [r, g, b, a = 1] = parse(color);
210
- const [baseR, baseG, baseB] = parse(base);
211
- const mix = (channel: number, baseChannel: number) =>
212
- Math.round(channel * a + baseChannel * (1 - a));
213
- return `rgb(${mix(r, baseR)}, ${mix(g, baseG)}, ${mix(b, baseB)})`;
214
- }
@@ -1,111 +0,0 @@
1
- import type * as echarts from "echarts/core";
2
-
3
- // ─────────────────────────────────────────────────────────────────────────────
4
- // Dots — map the resting/active variants onto ECharts symbols. Shared by every
5
- // ECharts chart that draws point markers.
6
- // ─────────────────────────────────────────────────────────────────────────────
7
-
8
- export type DotVariant = "none" | "default" | "border" | "colored-border" | "ping";
9
-
10
- // Dot marker paint — structurally assignable to BOTH the series-level and the
11
- // per-datum itemStyle (the per-datum variant forbids callback color paints, so
12
- // the broader LineSeriesOption["itemStyle"] cannot be reused for it).
13
- export type DotItemStyleOption = {
14
- color?: string | echarts.graphic.LinearGradient;
15
- borderColor?: string | echarts.graphic.LinearGradient;
16
- borderWidth?: number;
17
- opacity?: number;
18
- };
19
-
20
- export type DotStyle = { size: number; itemStyle: DotItemStyleOption };
21
-
22
- // Re-color a solid paint at a given alpha (hex #rgb/#rrggbb or rgb/rgba in, rgba
23
- // out; named colors pass through). Used for the translucent "ping" halo ring.
24
- function withAlpha(color: string, alpha: number): string {
25
- if (color.startsWith("#")) {
26
- let hex = color.slice(1);
27
- if (hex.length === 3)
28
- hex = hex
29
- .split("")
30
- .map((c) => c + c)
31
- .join("");
32
- const n = parseInt(hex, 16);
33
- return `rgba(${(n >> 16) & 255}, ${(n >> 8) & 255}, ${n & 255}, ${alpha})`;
34
- }
35
- const m = color.match(/rgba?\(([^)]+)\)/);
36
- if (m) {
37
- const [r, g, b] = m[1].split(",").map((s) => parseFloat(s));
38
- return `rgba(${r}, ${g}, ${b}, ${alpha})`;
39
- }
40
- return color;
41
- }
42
-
43
- export function dotItemStyle(
44
- variant: DotVariant,
45
- paint: string | echarts.graphic.LinearGradient,
46
- background: string,
47
- ): DotItemStyleOption {
48
- switch (variant) {
49
- case "border":
50
- // Series-colored core with a thick background halo (Recharts r6 / sw5).
51
- return { color: paint, borderColor: background, borderWidth: 2 };
52
- case "colored-border":
53
- // Background-filled core with a thin colored ring (Recharts r3 / sw1).
54
- return { color: background, borderColor: paint, borderWidth: 1 };
55
- case "ping": {
56
- // Solid core wrapped in a wide, translucent same-color ring — a static
57
- // "ping". The ring is the symbol's BORDER (a stroke ~1.25× the core
58
- // radius), which fills out to a soft halo disc; a genuinely large symbol
59
- // would silently fail to render on a category-axis line, so we stroke a
60
- // small one instead.
61
- const halo = typeof paint === "string" ? withAlpha(paint, 0.28) : paint;
62
- return { color: paint, borderColor: halo, borderWidth: 10 };
63
- }
64
- case "default":
65
- return { color: paint, borderWidth: 0 };
66
- default:
67
- return {};
68
- }
69
- }
70
-
71
- // Sizes mirror the Recharts markers: default r3, border r6 (mostly halo), and
72
- // colored-border r3+ring. Flattening these to one size makes the hover ring read
73
- // LARGER than a haloed resting dot — the opposite of the Recharts twin.
74
- export const DOT_SIZES: Record<DotVariant, number> = {
75
- none: 0,
76
- default: 6,
77
- border: 8,
78
- "colored-border": 6,
79
- ping: 8,
80
- };
81
-
82
- export function dotStyle(
83
- variant: DotVariant,
84
- paint: string | echarts.graphic.LinearGradient,
85
- background: string,
86
- ): DotStyle {
87
- return { size: DOT_SIZES[variant], itemStyle: dotItemStyle(variant, paint, background) };
88
- }
89
-
90
- // The color the horizontal series gradient shows at position t ∈ [0, 1]. ECharts
91
- // paints a gradient itemStyle relative to each symbol's own bounding box — a full
92
- // rainbow inside every dot — while the Recharts dots clip a chart-wide gradient,
93
- // so each takes the gradient's color at its x-position. Sampling reproduces that.
94
- export function sampleGradient(slots: string[], t: number): string {
95
- if (slots.length <= 1) return slots[0] ?? "rgba(120, 120, 120, 1)";
96
-
97
- const parse = (color: string) =>
98
- color
99
- .match(/rgba?\(([^)]+)\)/)?.[1]
100
- .split(",")
101
- .map(Number) ?? [120, 120, 120, 1];
102
-
103
- const position = t * (slots.length - 1);
104
- const index = Math.min(Math.floor(position), slots.length - 2);
105
- const fraction = position - index;
106
- const [r1, g1, b1, a1 = 1] = parse(slots[index]);
107
- const [r2, g2, b2, a2 = 1] = parse(slots[index + 1]);
108
- const lerp = (from: number, to: number) => from + (to - from) * fraction;
109
-
110
- return `rgba(${Math.round(lerp(r1, r2))}, ${Math.round(lerp(g1, g2))}, ${Math.round(lerp(b1, b2))}, ${lerp(a1, a2).toFixed(3)})`;
111
- }