@fusion.dev/helix-headless 0.0.0-dev

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 (424) hide show
  1. package/LICENSE +21 -0
  2. package/custom-elements.json +75202 -0
  3. package/dist/accordion/index.d.ts +2 -0
  4. package/dist/accordion/index.js +2 -0
  5. package/dist/accordion/item/accordion-item.d.ts +141 -0
  6. package/dist/accordion/item/accordion-item.js +214 -0
  7. package/dist/accordion/root/accordion-root.d.ts +57 -0
  8. package/dist/accordion/root/accordion-root.js +96 -0
  9. package/dist/announcement/index.d.ts +1 -0
  10. package/dist/announcement/index.js +1 -0
  11. package/dist/announcement/root/announcement-root.d.ts +106 -0
  12. package/dist/announcement/root/announcement-root.js +144 -0
  13. package/dist/app-header/index.d.ts +1 -0
  14. package/dist/app-header/index.js +1 -0
  15. package/dist/app-header/root/app-header-root.d.ts +113 -0
  16. package/dist/app-header/root/app-header-root.js +147 -0
  17. package/dist/avatar/group/avatar-group.d.ts +116 -0
  18. package/dist/avatar/group/avatar-group.js +136 -0
  19. package/dist/avatar/index.d.ts +2 -0
  20. package/dist/avatar/index.js +2 -0
  21. package/dist/avatar/root/avatar-root.d.ts +71 -0
  22. package/dist/avatar/root/avatar-root.js +147 -0
  23. package/dist/badge/index.d.ts +1 -0
  24. package/dist/badge/index.js +1 -0
  25. package/dist/badge/root/badge-root.d.ts +61 -0
  26. package/dist/badge/root/badge-root.js +121 -0
  27. package/dist/bar-chart/index.d.ts +1 -0
  28. package/dist/bar-chart/index.js +1 -0
  29. package/dist/bar-chart/root/bar-chart-root.d.ts +266 -0
  30. package/dist/bar-chart/root/bar-chart-root.js +515 -0
  31. package/dist/blockquote/index.d.ts +1 -0
  32. package/dist/blockquote/index.js +1 -0
  33. package/dist/blockquote/root/blockquote-root.d.ts +51 -0
  34. package/dist/blockquote/root/blockquote-root.js +84 -0
  35. package/dist/breadcrumbs/breadcrumb/breadcrumb.d.ts +104 -0
  36. package/dist/breadcrumbs/breadcrumb/breadcrumb.js +137 -0
  37. package/dist/breadcrumbs/index.d.ts +2 -0
  38. package/dist/breadcrumbs/index.js +2 -0
  39. package/dist/breadcrumbs/root/breadcrumbs-root.d.ts +77 -0
  40. package/dist/breadcrumbs/root/breadcrumbs-root.js +94 -0
  41. package/dist/button/index.d.ts +1 -0
  42. package/dist/button/index.js +1 -0
  43. package/dist/button/root/button-root.d.ts +251 -0
  44. package/dist/button/root/button-root.js +401 -0
  45. package/dist/button-group/index.d.ts +1 -0
  46. package/dist/button-group/index.js +1 -0
  47. package/dist/button-group/root/button-group-root.d.ts +62 -0
  48. package/dist/button-group/root/button-group-root.js +62 -0
  49. package/dist/callout/index.d.ts +1 -0
  50. package/dist/callout/index.js +1 -0
  51. package/dist/callout/root/callout-root.d.ts +72 -0
  52. package/dist/callout/root/callout-root.js +90 -0
  53. package/dist/card/index.d.ts +1 -0
  54. package/dist/card/index.js +1 -0
  55. package/dist/card/root/card-root.d.ts +54 -0
  56. package/dist/card/root/card-root.js +71 -0
  57. package/dist/carousel/index.d.ts +1 -0
  58. package/dist/carousel/index.js +1 -0
  59. package/dist/carousel/root/carousel-root.d.ts +399 -0
  60. package/dist/carousel/root/carousel-root.js +723 -0
  61. package/dist/chat/composer/chat-composer.d.ts +160 -0
  62. package/dist/chat/composer/chat-composer.js +273 -0
  63. package/dist/chat/index.d.ts +3 -0
  64. package/dist/chat/index.js +3 -0
  65. package/dist/chat/message/chat-message.d.ts +170 -0
  66. package/dist/chat/message/chat-message.js +271 -0
  67. package/dist/chat/root/chat-root.d.ts +216 -0
  68. package/dist/chat/root/chat-root.js +389 -0
  69. package/dist/checkbox/index.d.ts +1 -0
  70. package/dist/checkbox/index.js +1 -0
  71. package/dist/checkbox/root/checkbox-root.d.ts +108 -0
  72. package/dist/checkbox/root/checkbox-root.js +207 -0
  73. package/dist/checkbox-group/index.d.ts +1 -0
  74. package/dist/checkbox-group/index.js +1 -0
  75. package/dist/checkbox-group/root/checkbox-group-root.d.ts +155 -0
  76. package/dist/checkbox-group/root/checkbox-group-root.js +293 -0
  77. package/dist/code/index.d.ts +1 -0
  78. package/dist/code/index.js +1 -0
  79. package/dist/code/root/code-root.d.ts +36 -0
  80. package/dist/code/root/code-root.js +43 -0
  81. package/dist/code-block/index.d.ts +1 -0
  82. package/dist/code-block/index.js +1 -0
  83. package/dist/code-block/root/code-block-root.d.ts +112 -0
  84. package/dist/code-block/root/code-block-root.js +155 -0
  85. package/dist/color-input/index.d.ts +1 -0
  86. package/dist/color-input/index.js +1 -0
  87. package/dist/color-input/root/color-input-root.d.ts +227 -0
  88. package/dist/color-input/root/color-input-root.js +456 -0
  89. package/dist/color-picker/color.d.ts +74 -0
  90. package/dist/color-picker/color.js +238 -0
  91. package/dist/color-picker/index.d.ts +2 -0
  92. package/dist/color-picker/index.js +2 -0
  93. package/dist/color-picker/root/color-picker-root.d.ts +303 -0
  94. package/dist/color-picker/root/color-picker-root.js +576 -0
  95. package/dist/combobox/index.d.ts +1 -0
  96. package/dist/combobox/index.js +1 -0
  97. package/dist/combobox/root/combobox-root.d.ts +396 -0
  98. package/dist/combobox/root/combobox-root.js +808 -0
  99. package/dist/command/index.d.ts +1 -0
  100. package/dist/command/index.js +1 -0
  101. package/dist/command/root/command-root.d.ts +166 -0
  102. package/dist/command/root/command-root.js +353 -0
  103. package/dist/copy-button/index.d.ts +1 -0
  104. package/dist/copy-button/index.js +1 -0
  105. package/dist/copy-button/root/copy-button-root.d.ts +154 -0
  106. package/dist/copy-button/root/copy-button-root.js +225 -0
  107. package/dist/data-table/index.d.ts +2 -0
  108. package/dist/data-table/index.js +2 -0
  109. package/dist/data-table/root/data-table-root.d.ts +392 -0
  110. package/dist/data-table/root/data-table-root.js +729 -0
  111. package/dist/data-table/root/order.d.ts +116 -0
  112. package/dist/data-table/root/order.js +175 -0
  113. package/dist/date-input/index.d.ts +1 -0
  114. package/dist/date-input/index.js +1 -0
  115. package/dist/date-input/root/date-input-root.d.ts +361 -0
  116. package/dist/date-input/root/date-input-root.js +791 -0
  117. package/dist/date-picker/index.d.ts +1 -0
  118. package/dist/date-picker/index.js +1 -0
  119. package/dist/date-picker/root/date-picker-root.d.ts +361 -0
  120. package/dist/date-picker/root/date-picker-root.js +837 -0
  121. package/dist/dialog/index.d.ts +1 -0
  122. package/dist/dialog/index.js +1 -0
  123. package/dist/dialog/root/dialog-root.d.ts +185 -0
  124. package/dist/dialog/root/dialog-root.js +319 -0
  125. package/dist/divider/index.d.ts +1 -0
  126. package/dist/divider/index.js +1 -0
  127. package/dist/divider/root/divider-root.d.ts +68 -0
  128. package/dist/divider/root/divider-root.js +116 -0
  129. package/dist/donut-chart/index.d.ts +1 -0
  130. package/dist/donut-chart/index.js +1 -0
  131. package/dist/donut-chart/root/donut-chart-root.d.ts +209 -0
  132. package/dist/donut-chart/root/donut-chart-root.js +395 -0
  133. package/dist/drawer/index.d.ts +1 -0
  134. package/dist/drawer/index.js +1 -0
  135. package/dist/drawer/root/drawer-root.d.ts +144 -0
  136. package/dist/drawer/root/drawer-root.js +222 -0
  137. package/dist/drilldown/index.d.ts +2 -0
  138. package/dist/drilldown/index.js +2 -0
  139. package/dist/drilldown/item/drilldown-item.d.ts +87 -0
  140. package/dist/drilldown/item/drilldown-item.js +152 -0
  141. package/dist/drilldown/root/drilldown-root.d.ts +115 -0
  142. package/dist/drilldown/root/drilldown-root.js +263 -0
  143. package/dist/element-events.generated.d.ts +1 -0
  144. package/dist/element-events.generated.js +125 -0
  145. package/dist/empty/index.d.ts +1 -0
  146. package/dist/empty/index.js +1 -0
  147. package/dist/empty/root/empty-root.d.ts +47 -0
  148. package/dist/empty/root/empty-root.js +68 -0
  149. package/dist/file-input/index.d.ts +1 -0
  150. package/dist/file-input/index.js +1 -0
  151. package/dist/file-input/root/file-input-root.d.ts +196 -0
  152. package/dist/file-input/root/file-input-root.js +488 -0
  153. package/dist/format-date/index.d.ts +1 -0
  154. package/dist/format-date/index.js +1 -0
  155. package/dist/format-date/root/format-date-root.d.ts +151 -0
  156. package/dist/format-date/root/format-date-root.js +266 -0
  157. package/dist/heatmap/index.d.ts +2 -0
  158. package/dist/heatmap/index.js +2 -0
  159. package/dist/heatmap/root/buckets.d.ts +62 -0
  160. package/dist/heatmap/root/buckets.js +85 -0
  161. package/dist/heatmap/root/heatmap-root.d.ts +330 -0
  162. package/dist/heatmap/root/heatmap-root.js +526 -0
  163. package/dist/icon/index.d.ts +1 -0
  164. package/dist/icon/index.js +1 -0
  165. package/dist/icon/root/icon-root.d.ts +53 -0
  166. package/dist/icon/root/icon-root.js +93 -0
  167. package/dist/icon-button/index.d.ts +1 -0
  168. package/dist/icon-button/index.js +1 -0
  169. package/dist/icon-button/root/icon-button-root.d.ts +40 -0
  170. package/dist/icon-button/root/icon-button-root.js +46 -0
  171. package/dist/image/index.d.ts +1 -0
  172. package/dist/image/index.js +1 -0
  173. package/dist/image/root/image-root.d.ts +213 -0
  174. package/dist/image/root/image-root.js +335 -0
  175. package/dist/index.d.ts +99 -0
  176. package/dist/index.js +99 -0
  177. package/dist/input/index.d.ts +1 -0
  178. package/dist/input/index.js +1 -0
  179. package/dist/input/root/input-root.d.ts +281 -0
  180. package/dist/input/root/input-root.js +472 -0
  181. package/dist/kbd/index.d.ts +1 -0
  182. package/dist/kbd/index.js +1 -0
  183. package/dist/kbd/root/kbd-root.d.ts +98 -0
  184. package/dist/kbd/root/kbd-root.js +230 -0
  185. package/dist/legend/index.d.ts +1 -0
  186. package/dist/legend/index.js +1 -0
  187. package/dist/legend/root/legend-root.d.ts +83 -0
  188. package/dist/legend/root/legend-root.js +125 -0
  189. package/dist/line-chart/index.d.ts +1 -0
  190. package/dist/line-chart/index.js +1 -0
  191. package/dist/line-chart/root/line-chart-root.d.ts +238 -0
  192. package/dist/line-chart/root/line-chart-root.js +365 -0
  193. package/dist/list/index.d.ts +2 -0
  194. package/dist/list/index.js +2 -0
  195. package/dist/list/item/list-item.d.ts +95 -0
  196. package/dist/list/item/list-item.js +148 -0
  197. package/dist/list/root/list-root.d.ts +72 -0
  198. package/dist/list/root/list-root.js +61 -0
  199. package/dist/listbox/index.d.ts +1 -0
  200. package/dist/listbox/index.js +1 -0
  201. package/dist/listbox/root/listbox-root.d.ts +357 -0
  202. package/dist/listbox/root/listbox-root.js +890 -0
  203. package/dist/loader/index.d.ts +1 -0
  204. package/dist/loader/index.js +1 -0
  205. package/dist/loader/root/loader-root.d.ts +52 -0
  206. package/dist/loader/root/loader-root.js +74 -0
  207. package/dist/megamenu/index.d.ts +1 -0
  208. package/dist/megamenu/index.js +1 -0
  209. package/dist/megamenu/root/megamenu-root.d.ts +254 -0
  210. package/dist/megamenu/root/megamenu-root.js +526 -0
  211. package/dist/menu/index.d.ts +2 -0
  212. package/dist/menu/index.js +2 -0
  213. package/dist/menu/item/menu-item.d.ts +231 -0
  214. package/dist/menu/item/menu-item.js +405 -0
  215. package/dist/menu/root/menu-root.d.ts +158 -0
  216. package/dist/menu/root/menu-root.js +422 -0
  217. package/dist/meter/index.d.ts +1 -0
  218. package/dist/meter/index.js +1 -0
  219. package/dist/meter/root/meter-root.d.ts +234 -0
  220. package/dist/meter/root/meter-root.js +316 -0
  221. package/dist/navigation/index.d.ts +1 -0
  222. package/dist/navigation/index.js +1 -0
  223. package/dist/navigation/root/navigation-root.d.ts +55 -0
  224. package/dist/navigation/root/navigation-root.js +130 -0
  225. package/dist/notifications/index.d.ts +2 -0
  226. package/dist/notifications/index.js +2 -0
  227. package/dist/notifications/notification/notification.d.ts +181 -0
  228. package/dist/notifications/notification/notification.js +305 -0
  229. package/dist/notifications/root/notifications-root.d.ts +168 -0
  230. package/dist/notifications/root/notifications-root.js +291 -0
  231. package/dist/number-input/index.d.ts +1 -0
  232. package/dist/number-input/index.js +1 -0
  233. package/dist/number-input/root/number-input-root.d.ts +282 -0
  234. package/dist/number-input/root/number-input-root.js +592 -0
  235. package/dist/option/group/option-group.d.ts +38 -0
  236. package/dist/option/group/option-group.js +58 -0
  237. package/dist/option/index.d.ts +2 -0
  238. package/dist/option/index.js +2 -0
  239. package/dist/option/root/option-root.d.ts +194 -0
  240. package/dist/option/root/option-root.js +247 -0
  241. package/dist/outline/index.d.ts +1 -0
  242. package/dist/outline/index.js +1 -0
  243. package/dist/outline/root/outline-root.d.ts +237 -0
  244. package/dist/outline/root/outline-root.js +519 -0
  245. package/dist/pagination/index.d.ts +3 -0
  246. package/dist/pagination/index.js +3 -0
  247. package/dist/pagination/root/pagination-root.d.ts +390 -0
  248. package/dist/pagination/root/pagination-root.js +695 -0
  249. package/dist/pagination/size/pagination-size.d.ts +127 -0
  250. package/dist/pagination/size/pagination-size.js +232 -0
  251. package/dist/pagination/summary/pagination-summary.d.ts +90 -0
  252. package/dist/pagination/summary/pagination-summary.js +145 -0
  253. package/dist/pin-input/index.d.ts +1 -0
  254. package/dist/pin-input/index.js +1 -0
  255. package/dist/pin-input/root/pin-input-root.d.ts +292 -0
  256. package/dist/pin-input/root/pin-input-root.js +553 -0
  257. package/dist/popover/index.d.ts +1 -0
  258. package/dist/popover/index.js +1 -0
  259. package/dist/popover/root/popover-root.d.ts +108 -0
  260. package/dist/popover/root/popover-root.js +231 -0
  261. package/dist/progress/index.d.ts +1 -0
  262. package/dist/progress/index.js +1 -0
  263. package/dist/progress/root/progress-root.d.ts +125 -0
  264. package/dist/progress/root/progress-root.js +212 -0
  265. package/dist/qr-code/index.d.ts +1 -0
  266. package/dist/qr-code/index.js +1 -0
  267. package/dist/qr-code/root/qr-code-root.d.ts +93 -0
  268. package/dist/qr-code/root/qr-code-root.js +233 -0
  269. package/dist/quote/index.d.ts +1 -0
  270. package/dist/quote/index.js +1 -0
  271. package/dist/quote/root/quote-root.d.ts +36 -0
  272. package/dist/quote/root/quote-root.js +50 -0
  273. package/dist/radio/group/radio-group.d.ts +84 -0
  274. package/dist/radio/group/radio-group.js +170 -0
  275. package/dist/radio/index.d.ts +2 -0
  276. package/dist/radio/index.js +2 -0
  277. package/dist/radio/root/radio-root.d.ts +102 -0
  278. package/dist/radio/root/radio-root.js +151 -0
  279. package/dist/rating/index.d.ts +1 -0
  280. package/dist/rating/index.js +1 -0
  281. package/dist/rating/root/rating-root.d.ts +242 -0
  282. package/dist/rating/root/rating-root.js +484 -0
  283. package/dist/scroll-area/index.d.ts +1 -0
  284. package/dist/scroll-area/index.js +1 -0
  285. package/dist/scroll-area/root/scroll-area-root.d.ts +96 -0
  286. package/dist/scroll-area/root/scroll-area-root.js +215 -0
  287. package/dist/select/index.d.ts +1 -0
  288. package/dist/select/index.js +1 -0
  289. package/dist/select/root/select-root.d.ts +170 -0
  290. package/dist/select/root/select-root.js +419 -0
  291. package/dist/skeleton/index.d.ts +1 -0
  292. package/dist/skeleton/index.js +1 -0
  293. package/dist/skeleton/root/skeleton-root.d.ts +31 -0
  294. package/dist/skeleton/root/skeleton-root.js +42 -0
  295. package/dist/slider/index.d.ts +1 -0
  296. package/dist/slider/index.js +1 -0
  297. package/dist/slider/root/slider-root.d.ts +235 -0
  298. package/dist/slider/root/slider-root.js +488 -0
  299. package/dist/sparkline/index.d.ts +1 -0
  300. package/dist/sparkline/index.js +1 -0
  301. package/dist/sparkline/root/sparkline-root.d.ts +147 -0
  302. package/dist/sparkline/root/sparkline-root.js +278 -0
  303. package/dist/speed-dial/index.d.ts +2 -0
  304. package/dist/speed-dial/index.js +2 -0
  305. package/dist/speed-dial/item/speed-dial-item.d.ts +71 -0
  306. package/dist/speed-dial/item/speed-dial-item.js +113 -0
  307. package/dist/speed-dial/root/speed-dial-root.d.ts +122 -0
  308. package/dist/speed-dial/root/speed-dial-root.js +251 -0
  309. package/dist/splitter/index.d.ts +1 -0
  310. package/dist/splitter/index.js +1 -0
  311. package/dist/splitter/root/splitter-root.d.ts +491 -0
  312. package/dist/splitter/root/splitter-root.js +1030 -0
  313. package/dist/stat/group/stat-group.d.ts +30 -0
  314. package/dist/stat/group/stat-group.js +47 -0
  315. package/dist/stat/index.d.ts +2 -0
  316. package/dist/stat/index.js +2 -0
  317. package/dist/stat/root/stat-root.d.ts +62 -0
  318. package/dist/stat/root/stat-root.js +51 -0
  319. package/dist/steps/index.d.ts +2 -0
  320. package/dist/steps/index.js +2 -0
  321. package/dist/steps/root/steps-root.d.ts +110 -0
  322. package/dist/steps/root/steps-root.js +130 -0
  323. package/dist/steps/step/step.d.ts +139 -0
  324. package/dist/steps/step/step.js +215 -0
  325. package/dist/switch/index.d.ts +1 -0
  326. package/dist/switch/index.js +1 -0
  327. package/dist/switch/root/switch-root.d.ts +74 -0
  328. package/dist/switch/root/switch-root.js +153 -0
  329. package/dist/table/cell/table-cell.d.ts +34 -0
  330. package/dist/table/cell/table-cell.js +52 -0
  331. package/dist/table/column/table-column.d.ts +165 -0
  332. package/dist/table/column/table-column.js +222 -0
  333. package/dist/table/index.d.ts +4 -0
  334. package/dist/table/index.js +4 -0
  335. package/dist/table/root/table-root.d.ts +98 -0
  336. package/dist/table/root/table-root.js +161 -0
  337. package/dist/table/row/table-row.d.ts +27 -0
  338. package/dist/table/row/table-row.js +42 -0
  339. package/dist/tabs/index.d.ts +3 -0
  340. package/dist/tabs/index.js +3 -0
  341. package/dist/tabs/panel/tab-panel.d.ts +67 -0
  342. package/dist/tabs/panel/tab-panel.js +98 -0
  343. package/dist/tabs/root/tabs-root.d.ts +123 -0
  344. package/dist/tabs/root/tabs-root.js +217 -0
  345. package/dist/tabs/tab/tab.d.ts +64 -0
  346. package/dist/tabs/tab/tab.js +116 -0
  347. package/dist/tag/index.d.ts +1 -0
  348. package/dist/tag/index.js +1 -0
  349. package/dist/tag/root/tag-root.d.ts +41 -0
  350. package/dist/tag/root/tag-root.js +67 -0
  351. package/dist/textarea/index.d.ts +1 -0
  352. package/dist/textarea/index.js +1 -0
  353. package/dist/textarea/root/textarea-root.d.ts +215 -0
  354. package/dist/textarea/root/textarea-root.js +380 -0
  355. package/dist/time-input/index.d.ts +1 -0
  356. package/dist/time-input/index.js +1 -0
  357. package/dist/time-input/root/time-input-root.d.ts +322 -0
  358. package/dist/time-input/root/time-input-root.js +661 -0
  359. package/dist/time-picker/index.d.ts +1 -0
  360. package/dist/time-picker/index.js +1 -0
  361. package/dist/time-picker/root/time-picker-root.d.ts +380 -0
  362. package/dist/time-picker/root/time-picker-root.js +669 -0
  363. package/dist/timeline/index.d.ts +2 -0
  364. package/dist/timeline/index.js +2 -0
  365. package/dist/timeline/item/timeline-item.d.ts +81 -0
  366. package/dist/timeline/item/timeline-item.js +128 -0
  367. package/dist/timeline/root/timeline-root.d.ts +52 -0
  368. package/dist/timeline/root/timeline-root.js +72 -0
  369. package/dist/toast/index.d.ts +2 -0
  370. package/dist/toast/index.js +2 -0
  371. package/dist/toast/item/toast-item.d.ts +183 -0
  372. package/dist/toast/item/toast-item.js +345 -0
  373. package/dist/toast/root/toast-root.d.ts +72 -0
  374. package/dist/toast/root/toast-root.js +87 -0
  375. package/dist/toggle/group/toggle-group.d.ts +140 -0
  376. package/dist/toggle/group/toggle-group.js +278 -0
  377. package/dist/toggle/index.d.ts +2 -0
  378. package/dist/toggle/index.js +2 -0
  379. package/dist/toggle/root/toggle-root.d.ts +99 -0
  380. package/dist/toggle/root/toggle-root.js +146 -0
  381. package/dist/toolbar/index.d.ts +1 -0
  382. package/dist/toolbar/index.js +1 -0
  383. package/dist/toolbar/root/toolbar-root.d.ts +105 -0
  384. package/dist/toolbar/root/toolbar-root.js +260 -0
  385. package/dist/tooltip/index.d.ts +1 -0
  386. package/dist/tooltip/index.js +1 -0
  387. package/dist/tooltip/root/tooltip-root.d.ts +388 -0
  388. package/dist/tooltip/root/tooltip-root.js +707 -0
  389. package/dist/tour/index.d.ts +2 -0
  390. package/dist/tour/index.js +2 -0
  391. package/dist/tour/root/tour-root.d.ts +161 -0
  392. package/dist/tour/root/tour-root.js +351 -0
  393. package/dist/tour/stop/tour-stop.d.ts +131 -0
  394. package/dist/tour/stop/tour-stop.js +249 -0
  395. package/dist/tree/index.d.ts +2 -0
  396. package/dist/tree/index.js +2 -0
  397. package/dist/tree/item/tree-item.d.ts +208 -0
  398. package/dist/tree/item/tree-item.js +381 -0
  399. package/dist/tree/root/tree-root.d.ts +88 -0
  400. package/dist/tree/root/tree-root.js +287 -0
  401. package/dist/trend/index.d.ts +1 -0
  402. package/dist/trend/index.js +1 -0
  403. package/dist/trend/root/trend-root.d.ts +67 -0
  404. package/dist/trend/root/trend-root.js +106 -0
  405. package/dist/video/index.d.ts +1 -0
  406. package/dist/video/index.js +1 -0
  407. package/dist/video/root/video-root.d.ts +711 -0
  408. package/dist/video/root/video-root.js +1821 -0
  409. package/dist/video-playlist/index.d.ts +3 -0
  410. package/dist/video-playlist/index.js +3 -0
  411. package/dist/video-playlist/item/video-playlist-item.d.ts +101 -0
  412. package/dist/video-playlist/item/video-playlist-item.js +162 -0
  413. package/dist/video-playlist/menu/video-playlist-menu.d.ts +121 -0
  414. package/dist/video-playlist/menu/video-playlist-menu.js +237 -0
  415. package/dist/video-playlist/root/video-playlist-root.d.ts +108 -0
  416. package/dist/video-playlist/root/video-playlist-root.js +218 -0
  417. package/dist/virtual-list/index.d.ts +1 -0
  418. package/dist/virtual-list/index.js +1 -0
  419. package/dist/virtual-list/root/virtual-list-root.d.ts +121 -0
  420. package/dist/virtual-list/root/virtual-list-root.js +221 -0
  421. package/jsx.d.ts +49767 -0
  422. package/package.json +77 -0
  423. package/svelte.d.ts +129 -0
  424. package/vue.d.ts +9242 -0
@@ -0,0 +1,392 @@
1
+ import { HelixElement } from '@fusion.dev/helix-core';
2
+ import { type PropertyValues, type TemplateResult } from 'lit';
3
+ import type { HelixHeadlessTableColumn } from '../../table/column/table-column.js';
4
+ import '../../pagination/index.js';
5
+ import { type DataRow } from './order.js';
6
+ declare const HelixHeadlessDataTable_base: (new (...args: any[]) => import("@fusion.dev/helix-core").CollectionElement) & typeof HelixElement;
7
+ /**
8
+ * @summary A table that owns a result: rows as data, with sort, filter and paging.
9
+ *
10
+ * @description
11
+ * **The schema is markup and the data is a property.** Columns are declared as
12
+ * `helix-table-column` children, because a schema is small, declarative, and
13
+ * something a reader should be able to see in the HTML; rows are handed over as
14
+ * an array, because data is large and a table that draws ten thousand elements
15
+ * cannot window them.
16
+ *
17
+ * ```html
18
+ * <helix-data-table .rows=${rows} sort="name:asc" page-size="20">
19
+ * <helix-table-column field="name" sortable>Name</helix-table-column>
20
+ * <helix-table-column field="size" align="end" sortable .cell=${bytes}>Size</helix-table-column>
21
+ * </helix-data-table>
22
+ * ```
23
+ *
24
+ * This is the resolution of a deferral rather than a new idea. `helix-table`
25
+ * takes rows as markup and is the right component for a table of twelve things
26
+ * a person wrote out; the repeated `page`, `page-size` and `total` attributes on
27
+ * the three pagination elements are placeholders whose own comments name the fix
28
+ * as "a data table composing a pagination inside itself", and `helix-table`
29
+ * already carried `@aliases DataTable`: a name claimed and not kept.
30
+ *
31
+ * **Sort and filter apply to the whole set, never the page.** Sorting the drawn
32
+ * window is correct on the first screen and wrong on every other one, which is
33
+ * how it survives being looked at. The arithmetic lives in `order.ts` where
34
+ * nothing can see a window, and its spec asserts the composition rather than the
35
+ * three steps, because each step alone passes either way.
36
+ *
37
+ * **What it does not do, stated where a consumer will read it: the cell values
38
+ * do not server-render.** The headings do, because a column renders its own, and
39
+ * the row elements do, because their count comes from `rows`. Reading a cell
40
+ * needs the columns, and the columns are markup children that Lit SSR does not
41
+ * hand this element: `children` is undefined there. So a crawler and a reader on
42
+ * a slow connection see a table of the right shape with nothing in it, which is
43
+ * strictly less than `helix-table` serves for a table whose rows are markup.
44
+ *
45
+ * That is the cost of "the schema is markup and the data is a property". Use
46
+ * `helix-table` where the content has to be in the served HTML and the result is
47
+ * small enough to write out; use this where the result is large, and accept that
48
+ * the first paint is a shell. The obvious workaround, a `columns` property
49
+ * beside the markup columns, is deliberately not offered: this family has
50
+ * already shipped one source of truth for columns splitting into two, nothing
51
+ * checked that they agreed, and a table rendering one way on the server and
52
+ * another in the browser is that failure with a hydration mismatch on top.
53
+ *
54
+ * **Every axis is controlled or uncontrolled, and that is what makes a server
55
+ * mode fall out rather than be bolted on.** `sort`, `filter`, `page` and
56
+ * `page-size` each defer to the consumer when set and seed themselves from a
57
+ * `default-*` when not. A consumer who answers all four holds the data flow:
58
+ * they hear the reader's request, fetch, and hand back a new `rows` with a
59
+ * `total`. Retrofitting that inverts the flow and is a rewrite, so it is here
60
+ * from the start.
61
+ *
62
+ * @since 0.1.0
63
+ * @status experimental
64
+ * @category data
65
+ * @aliases Grid, Result table, Data grid
66
+ * @documentation https://helix.fusion.dev/components/data-table
67
+ *
68
+ * @slot - The columns, declared as `helix-table-column` children.
69
+ * @slot footer - Below the grid, replacing the pagination this would otherwise draw.
70
+ * @slot toolbar - Above the grid, for a search field or actions.
71
+ *
72
+ * @event {HelixFilterEvent} helix-filter - Fired when the query changes, and cancelable.
73
+ * @event {HelixNavigateEvent} helix-navigate - Fired when a reader asks for another page, and cancelable.
74
+ * @event {HelixSortEvent} helix-sort - Fired when a reader asks for a different order, and cancelable.
75
+ *
76
+ * @csspart cell - One cell.
77
+ * @csspart empty - Shown when no rows match.
78
+ * @csspart footer - The region below the grid.
79
+ * @csspart head - The row the column headings sit in. `display: contents`, so it takes no space.
80
+ * @csspart loading - Shown while the rows are still on their way.
81
+ * @csspart pagination - The pagination, where this draws one.
82
+ * @csspart row - One row of data.
83
+ * @csspart table - The grid.
84
+ * @csspart toolbar - The region above the grid.
85
+ *
86
+ * @cssproperty --data-table-template - The column track list this element worked out from the columns declared in it. Written by the component, read by the sheet that paints: a stylesheet takes it to lay the grid out, and setting it does nothing, because the component writes it inline on the very element that reads it and an inline declaration beats any sheet. `--data-table-columns` is the one to set.
87
+ */
88
+ export declare class HelixHeadlessDataTable extends HelixHeadlessDataTable_base {
89
+ /**
90
+ * Nothing is assigned by name, so the columns can be put in a header row.
91
+ *
92
+ * `role="columnheader"` under `role="grid"` with no owning row is invalid, and
93
+ * the columns are ordinary children a consumer writes with no `slot`. Manual
94
+ * assignment is the only way to wrap them without editing the consumer's
95
+ * markup, which is a change a React consumer's hydration reports and does not
96
+ * patch up. The same arrangement `helix-table` arrived at, for the same reason.
97
+ */
98
+ static shadowRootOptions: ShadowRootInit;
99
+ /**
100
+ * The whole result, in the order it arrived.
101
+ *
102
+ * A property and not an attribute: it is an array. Left alone this element
103
+ * filters, sorts and pages it; in `server` mode it is the page the consumer
104
+ * already fetched and none of the three is applied.
105
+ *
106
+ * **Read, never written.** Sorting produces a new array rather than reordering
107
+ * this one, because a consumer's array may be the same object their own state
108
+ * holds and reordering it under them is a mutation they did not ask for.
109
+ */
110
+ rows: readonly DataRow[];
111
+ /**
112
+ * The field naming a row's stable identity.
113
+ *
114
+ * **Needed before selection exists, not after.** Lit keys the rendered rows by
115
+ * it, so a sort moves a row's element rather than rewriting every cell in
116
+ * place, which is what keeps focus inside a cell and keeps a CSS transition
117
+ * attached to the row it belongs to. Left unset the index is the key, which is
118
+ * correct only while nothing reorders: it is why this defaults to something
119
+ * that works and is worth setting anyway.
120
+ */
121
+ key: string;
122
+ /**
123
+ * Whether this element does the work or asks the consumer to.
124
+ *
125
+ * `client` filters, sorts and pages `rows` itself. `server` applies none of
126
+ * them: `rows` is the page, `total` is the size of the whole result, and the
127
+ * three events are requests the consumer answers by fetching. Past some size
128
+ * the client cannot hold the data, so this is not an optimization, it is the
129
+ * only mode that works, and it is here from the start because adding it later
130
+ * inverts the data flow.
131
+ */
132
+ mode: 'client' | 'server';
133
+ /**
134
+ * How many rows the whole result has, where this element cannot count them.
135
+ *
136
+ * Only read in `server` mode, where `rows` is one page and its length says
137
+ * nothing about the result. Ignored in `client` mode rather than trusted,
138
+ * because two sources for one count is the mistake, and here the array is the
139
+ * one that cannot be stale.
140
+ */
141
+ total: number;
142
+ /**
143
+ * Accessible name for the grid.
144
+ */
145
+ label: string;
146
+ /**
147
+ * The order, as `field:direction`.
148
+ *
149
+ * Set it and this element defers: a reader's click fires `helix-sort` and
150
+ * changes nothing until a new value arrives. `default-sort` seeds an order this
151
+ * element then owns.
152
+ *
153
+ *
154
+ */
155
+ get sort(): string;
156
+ set sort(next: string);
157
+ /**
158
+ * Order to open on, where nothing declared one.
159
+ */
160
+ defaultSort: string;
161
+ /**
162
+ * What the rows are narrowed to, as one query across every column.
163
+ *
164
+ * One query rather than a predicate per column, which is what a reader means
165
+ * by a search box above a table. It matches on each column's ordering value,
166
+ * so search and sort cannot disagree about what a column holds.
167
+ *
168
+ *
169
+ */
170
+ get filter(): string;
171
+ set filter(next: string);
172
+ /**
173
+ * Query to open with, where nothing declared one.
174
+ */
175
+ defaultFilter: string;
176
+ /**
177
+ * The page on show, from 1.
178
+ *
179
+ * Clamped on the way out, so what this reports is the page it drew: a
180
+ * bookmarked link to page 99 of a result that has since shrunk reads back as
181
+ * the last page rather than as 99.
182
+ *
183
+ *
184
+ */
185
+ get page(): number;
186
+ set page(next: number);
187
+ /**
188
+ * Page to open on, where nothing declared one.
189
+ */
190
+ defaultPage: number;
191
+ /**
192
+ * How many rows a page holds. Zero is every row, which is what "no paging" means.
193
+ *
194
+ * **It announces nothing, and that is not an omission.** Nothing in this
195
+ * element ever asks for a different page size: a size selector is
196
+ * `helix-pagination-size`, which a consumer puts in the `footer` slot and
197
+ * answers themselves. Routing this through `requestChange` would announce an
198
+ * event the element never has cause to fire.
199
+ */
200
+ get pageSize(): number;
201
+ set pageSize(next: number);
202
+ /**
203
+ * Page size to open with, where nothing declared one.
204
+ */
205
+ defaultPageSize: number;
206
+ /**
207
+ * Whether to draw a pagination under the grid.
208
+ *
209
+ * On by default once a page size is set, because a paged table with no way to
210
+ * change pages shows a reader the first twenty rows and no way to know there
211
+ * are more. Off for a consumer supplying their own through the `footer` slot,
212
+ * which is why the slot replaces this rather than sitting beside it.
213
+ */
214
+ get paginated(): boolean;
215
+ set paginated(next: boolean);
216
+ private sortState;
217
+ private filterState;
218
+ private pageState;
219
+ private pageSizeState;
220
+ private paginatedState;
221
+ /** The columns declared as children, in the order they are written. */
222
+ get tableColumns(): HelixHeadlessTableColumn[];
223
+ /** The columns reduced to what the ordering needs. */
224
+ private get axes();
225
+ /** The track list, from the columns if there are any. */
226
+ private get template();
227
+ /**
228
+ * How many rows this draws before it is worth saying something, and why 2,000.
229
+ *
230
+ * Measured 28 Aug 2026 on a four-column grid, mounting and painting: 100 rows
231
+ * in 10.9ms, 500 in 30.2ms, 2,000 in 83.2ms and **5,000 rows as 20,000 cells
232
+ * in 186ms**. It is linear at roughly 37 microseconds a row, so the 100ms an
233
+ * interaction has to stay inside lands near 2,700 and this sits under it.
234
+ * Sorting stays cheap throughout, 23.7ms at five thousand, so the cost is the
235
+ * cells rather than the work over them.
236
+ */
237
+ private static readonly COMFORTABLE;
238
+ /** Said once per element, so a table that re-renders does not repeat it. */
239
+ private warnedAboutSize;
240
+ /**
241
+ * Says so when a table is asked to draw more than it comfortably can.
242
+ *
243
+ * **The component renders every row it is given and defaults to doing so.**
244
+ * `defaultPageSize` is `0`, so `paginated` is false unless a consumer asks,
245
+ * which means the out-of-the-box arrangement is the unbounded one and nothing
246
+ * about it says that a result of any size will simply be drawn.
247
+ *
248
+ * **Windowing was considered and refused**, which is worth recording because
249
+ * it is the obvious answer. This element already has two: `paginated` with a
250
+ * `page-size`, and `mode="server"` where `rows` is one page, `total` is the
251
+ * whole result and `aria-rowcount` already reports the result rather than the
252
+ * window, which is the hard half of virtualization done correctly. A third
253
+ * mechanism would fight the first two, and virtualizing a grid means variable
254
+ * row heights, a sticky header and keeping `aria-rowindex` honest against a
255
+ * result the element is no longer holding. `VirtualizeController` exists for
256
+ * the case where the rows are a flat list and this is not that. See #326.
257
+ *
258
+ * So the gap was never the capability, it was that nothing said which of the
259
+ * two to reach for. Once per element, in a browser only: a warning during a
260
+ * server render is one nobody can act on and one that would print per request.
261
+ */
262
+ private warnIfCrowded;
263
+ /**
264
+ * The rows to draw, and the counts around them.
265
+ *
266
+ * In `server` mode this element applies nothing: `rows` is already the page,
267
+ * `total` is the result, and both counts come from the consumer. Anything else
268
+ * would be this element filtering a page it was handed, which narrows one
269
+ * screen and calls it a search.
270
+ */
271
+ private get view();
272
+ /** How many pages the result makes, which is at least one even when empty. */
273
+ private get pages();
274
+ /**
275
+ * Rows after filtering, computed without paging.
276
+ *
277
+ * Separate from `view` because `pages` needs it and `page` needs `pages`:
278
+ * asking `view` for it would recurse through the clamp in `page`.
279
+ */
280
+ private get matched();
281
+ /** Emptiness is a fact about the data here, not about slotted children. */
282
+ protected get hasRows(): boolean;
283
+ /**
284
+ * Asks for a different order, and reports whether the request stood.
285
+ *
286
+ * Announced before it is applied, so `preventDefault()` is a refusal and the
287
+ * order does not move, which is what makes a server-side sort expressible: the
288
+ * consumer refuses the local reorder, fetches, and hands back a new set.
289
+ */
290
+ private requestSort;
291
+ /** Asks for a different query. */
292
+ private requestFilter;
293
+ /** Asks for a different page. */
294
+ private requestPage;
295
+ /**
296
+ * Narrows the rows, from a consumer's own search field.
297
+ *
298
+ * Public because the query lives above the table in every design that has one,
299
+ * and a consumer wiring their own input needs somewhere to send it. Returns
300
+ * whether the change stood, the same as every other request here.
301
+ */
302
+ search(query: string): boolean;
303
+ /**
304
+ * Cycles the order by one column, which is what a click on its heading means.
305
+ *
306
+ * Ascending, descending, then the order the rows arrived in. Public for the
307
+ * same reason `search` is: a consumer's own heading UI needs a way to ask.
308
+ */
309
+ toggleSort(field: string): boolean;
310
+ /**
311
+ * The columns into the header row, everything else into the toolbar and footer.
312
+ *
313
+ * Manual assignment, so a consumer's own markup is never written to.
314
+ */
315
+ private assign;
316
+ protected willUpdate(changed: PropertyValues): void;
317
+ /**
318
+ * Says on the toolbar and the footer whether anything is in them.
319
+ *
320
+ * **The stylesheet used to ask, and could not.** It read
321
+ * `[part="toolbar"]:has(> slot:not(:has(*)))`, which is two faults at once:
322
+ * `:has()` may not be nested inside `:has()`, so the selector failed to parse
323
+ * and the whole rule was discarded; and `slot:not(:has(*))` is as true of a
324
+ * filled slot as of an empty one, because assigned nodes are not a slot's DOM
325
+ * children. Both verified in a browser. A table with no toolbar paid the gap
326
+ * above the grid for one that was not there.
327
+ */
328
+ private markEmpty;
329
+ /**
330
+ * One region, hidden when its slot holds nothing and nothing of ours fills it.
331
+ *
332
+ * `hidden` beside the `data-empty` mirror: `data-empty` is the hook the styled
333
+ * sheet reads, and this tier ships no sheet, so an empty region left in the box
334
+ * tree would be a gap a headless consumer cannot close without knowing to look
335
+ * for it. The styled rule stays too, because that sheet sets `display` on these
336
+ * parts and therefore outranks the UA's `[hidden]` one.
337
+ */
338
+ private markRegion;
339
+ protected updated(changed: PropertyValues): void;
340
+ /** Columns arrive from the light DOM, which changes no property here. */
341
+ private readonly handleSlotChange;
342
+ private renderCell;
343
+ private renderRows;
344
+ /**
345
+ * A row's place in the whole result, counting the header as row 1.
346
+ *
347
+ * **The number describes the result and not the window**, which is the whole
348
+ * reason a virtualized or paged grid needs `aria-rowindex` at all: a screen
349
+ * reader on page three should hear row 41, and a grid whose indices restart at
350
+ * every page tells a reader the result is twenty rows long however many it has.
351
+ */
352
+ private rowIndex;
353
+ protected render(): TemplateResult;
354
+ /**
355
+ * Listens on the host, not on the slot the columns are assigned to.
356
+ *
357
+ * The columns are light-DOM children of this element, so their events bubble
358
+ * to it directly and the shadow tree is not involved at all. Bound on the
359
+ * `<slot>` instead, this works in a browser, because an event from a slotted
360
+ * node passes through the slot in the flattened tree, and does not work in
361
+ * happy-dom, which does not implement that propagation: measured, the host
362
+ * hears the click and the slot does not. A spec written against the slot fails
363
+ * in the suite while the component is correct, and the same trust in the
364
+ * flattened tree could as easily have gone the other way.
365
+ *
366
+ * Added here rather than in the template because there is nothing in the
367
+ * shadow tree to attach it to, and removed on disconnect because this element
368
+ * is the listener's owner rather than its subject.
369
+ */
370
+ connectedCallback(): void;
371
+ disconnectedCallback(): void;
372
+ /** A click on a sortable heading. */
373
+ private readonly handleHeadClick;
374
+ /** The same on Enter and Space, since a heading that sorts is a control. */
375
+ private readonly handleHeadKey;
376
+ private columnFrom;
377
+ /**
378
+ * The composed pagination's request, relayed as this element's own.
379
+ *
380
+ * Stopped rather than allowed to bubble, because two `helix-navigate` events
381
+ * for one click would reach a consumer's handler twice: the pagination's, and
382
+ * this element's after it. The one that leaves carries this element's page
383
+ * bounds rather than the inner component's.
384
+ */
385
+ private readonly handleNavigate;
386
+ }
387
+ declare global {
388
+ interface HTMLElementTagNameMap {
389
+ 'helix-headless-data-table': HelixHeadlessDataTable;
390
+ }
391
+ }
392
+ export {};