@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,230 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { customElement, HelixElement, HelixShortcutEvent } from '@fusion.dev/helix-core';
8
+ import { html } from 'lit';
9
+ import { property } from 'lit/decorators.js';
10
+ /**
11
+ * How each name in a chord is drawn, per platform.
12
+ *
13
+ * Apple keyboards label their modifiers with glyphs and print no separator
14
+ * between them, so `⌘K` is the whole of it. Everywhere else the words are the
15
+ * label and the plus is part of the convention rather than prose. That is the
16
+ * one separator this component is willing to supply: the class docstring says
17
+ * a separator between keys is prose because it is "then" in a sequence and
18
+ * "plus" in a simultaneous press, and `keys` is only ever the second of those.
19
+ */
20
+ const APPLE = {
21
+ alt: '⌥',
22
+ backspace: '⌫',
23
+ cmd: '⌘',
24
+ ctrl: '⌃',
25
+ del: '⌦',
26
+ down: '↓',
27
+ enter: '↵',
28
+ esc: 'Esc',
29
+ left: '←',
30
+ meta: '⌘',
31
+ mod: '⌘',
32
+ opt: '⌥',
33
+ right: '→',
34
+ shift: '⇧',
35
+ space: 'Space',
36
+ tab: '⇥',
37
+ up: '↑',
38
+ };
39
+ const ELSEWHERE = {
40
+ alt: 'Alt',
41
+ backspace: 'Backspace',
42
+ cmd: 'Win',
43
+ ctrl: 'Ctrl',
44
+ del: 'Del',
45
+ down: '↓',
46
+ enter: 'Enter',
47
+ esc: 'Esc',
48
+ left: '←',
49
+ meta: 'Win',
50
+ mod: 'Ctrl',
51
+ opt: 'Alt',
52
+ right: '→',
53
+ shift: 'Shift',
54
+ space: 'Space',
55
+ tab: 'Tab',
56
+ up: '↑',
57
+ };
58
+ /** Whether the keyboard in front of the reader labels its modifiers with glyphs. */
59
+ const onApple = () => typeof navigator !== 'undefined' && /mac|iphone|ipad|ipod/i.test(navigator.userAgent);
60
+ /**
61
+ * @summary A keyboard key or chord, set inline with text.
62
+ *
63
+ * @description
64
+ * Renders a real `<kbd>`, so the passage still means "press this" to anything
65
+ * reading the markup rather than only to a reader looking at it.
66
+ *
67
+ * **One key per element, with `keys` as the stated exception.** A *sequence* is
68
+ * several of these with the separator written between them as ordinary text,
69
+ * because that separator is prose: it is "then" in a sequence and "plus" in a
70
+ * simultaneous press, and a component that inserted one would have to guess
71
+ * which. `keys` cannot be guessing, since a chord written `mod+k` has said
72
+ * which it is.
73
+ *
74
+ * **`keys` exists because the glyphs were being typed by hand and were wrong.**
75
+ * A literal `⌘K` in a template tells a reader on Windows to press a key their
76
+ * keyboard does not have, and nothing catches it, a string being a string.
77
+ * Given `mod` this renders `⌘K` on Apple and `Ctrl+K` everywhere else.
78
+ *
79
+ * **`within` is what binds it, and it is absent by default.** Without it this
80
+ * draws a key and listens for nothing, which is what every existing use of this
81
+ * component wants. The two values are the two honest lifetimes:
82
+ *
83
+ * - `control` listens within the element's own parent, which is the case this
84
+ * is mostly for: a hint sitting inside the control it belongs to, where the
85
+ * shortcut should work while that control has focus and stop existing when
86
+ * the control does.
87
+ * - `document` listens on the document, for a chord that works from anywhere.
88
+ *
89
+ * *Corrected 25 Aug 2026: this said `scope`, `self` and `global` until then,
90
+ * naming a property that has never existed under that name. The rename is
91
+ * explained on the property itself, twenty lines below, and this paragraph
92
+ * above it went on teaching the old one. A reader who trusted the class doc
93
+ * wrote an attribute that binds nothing, which is also what an unset `within`
94
+ * does, so nothing about the mistake looked like one.*
95
+ *
96
+ * **A hidden `kbd` is a dead shortcut, and that is the point rather than a
97
+ * trap.** Binding here ties the key to its own advertisement, so a hint that is
98
+ * not rendered is a shortcut that is not offered. A chord that must outlive its
99
+ * label is a chord whose owner is not a label: give it to whatever owns the
100
+ * action and let this element only describe it.
101
+ *
102
+ * Nothing binds until this upgrades, so a shortcut is not available in the
103
+ * moments before hydration.
104
+ *
105
+ * @since 0.1.0
106
+ * @status stable
107
+ * @category typography
108
+ * @aliases Key, Shortcut, Hotkey
109
+ * @documentation https://helix.fusion.dev/components/kbd
110
+ *
111
+ * @slot - The key's label, where `keys` is not set.
112
+ *
113
+ * @event {HelixShortcutEvent} helix-shortcut - Fired when the chord is pressed, and cancelable.
114
+ *
115
+ * @csspart kbd - The key.
116
+ */
117
+ let HelixHeadlessKbd = class HelixHeadlessKbd extends HelixElement {
118
+ constructor() {
119
+ super(...arguments);
120
+ /**
121
+ * The chord, written plainly: `mod+k`, `shift+?`, `/`.
122
+ *
123
+ * `mod` is the platform's own command modifier, which is the reason to write
124
+ * a chord here rather than a glyph: it is the one token whose right answer
125
+ * differs per reader.
126
+ */
127
+ this.keys = '';
128
+ this.handleKeydown = (event) => {
129
+ const press = event;
130
+ /* Mid-composition is not a chord. An IME sends keystrokes that belong to
131
+ the text being composed, and taking one is how a shortcut eats a
132
+ character the reader was trying to type. */
133
+ if (press.isComposing) {
134
+ return;
135
+ }
136
+ if (!this.matches_(press)) {
137
+ return;
138
+ }
139
+ /* Announced before it is consumed, so a consumer can refuse it: the key
140
+ goes on to whatever would have had it wherever this is prevented. */
141
+ const shortcut = new HelixShortcutEvent({ keys: this.keys });
142
+ this.dispatchEvent(shortcut);
143
+ if (!shortcut.defaultPrevented) {
144
+ press.preventDefault();
145
+ }
146
+ };
147
+ }
148
+ connectedCallback() {
149
+ super.connectedCallback();
150
+ this.listen();
151
+ }
152
+ disconnectedCallback() {
153
+ super.disconnectedCallback();
154
+ this.deafen();
155
+ }
156
+ updated(changed) {
157
+ super.updated(changed);
158
+ /* The target changes with `within` and the chord changes with `keys`, and
159
+ the second matters as much as the first: a listener holding the old chord
160
+ answers to a key the element no longer advertises. */
161
+ if (changed.has('within') || changed.has('keys')) {
162
+ this.deafen();
163
+ this.listen();
164
+ }
165
+ }
166
+ /** The chord as this reader's keyboard labels it. */
167
+ get label() {
168
+ const names = onApple() ? APPLE : ELSEWHERE;
169
+ const parts = this.keys
170
+ .split('+')
171
+ .map((part) => part.trim())
172
+ .filter((part) => part !== '')
173
+ .map((part) => names[part.toLowerCase()] ?? (part.length === 1 ? part.toUpperCase() : part));
174
+ return parts.join(onApple() ? '' : '+');
175
+ }
176
+ listen() {
177
+ if (!this.within || this.keys === '') {
178
+ return;
179
+ }
180
+ const target = this.within === 'document' ? this.ownerDocument : this.parentElement;
181
+ if (!target) {
182
+ return;
183
+ }
184
+ this.listening = target;
185
+ target.addEventListener('keydown', this.handleKeydown);
186
+ }
187
+ deafen() {
188
+ this.listening?.removeEventListener('keydown', this.handleKeydown);
189
+ this.listening = undefined;
190
+ }
191
+ /** Whether a press is this chord, modifiers and all. */
192
+ matches_(press) {
193
+ const parts = this.keys
194
+ .split('+')
195
+ .map((part) => part.trim().toLowerCase())
196
+ .filter((part) => part !== '');
197
+ if (parts.length === 0) {
198
+ return false;
199
+ }
200
+ const wanted = parts[parts.length - 1] ?? '';
201
+ const modifiers = new Set(parts.slice(0, -1));
202
+ const mod = onApple() ? press.metaKey : press.ctrlKey;
203
+ /* Every modifier is checked in both directions, so `mod+k` is not answered
204
+ by `shift+mod+k`: a chord a reader did not press is a chord that should
205
+ go to whatever did want it. */
206
+ return (press.key.toLowerCase() === wanted &&
207
+ (modifiers.has('mod') ? mod : true) &&
208
+ (modifiers.has('shift') ? press.shiftKey : !press.shiftKey) &&
209
+ (modifiers.has('alt') || modifiers.has('opt') ? press.altKey : !press.altKey) &&
210
+ (modifiers.has('ctrl') ? press.ctrlKey : modifiers.has('mod') ? true : !press.ctrlKey) &&
211
+ (modifiers.has('cmd') || modifiers.has('meta')
212
+ ? press.metaKey
213
+ : modifiers.has('mod')
214
+ ? true
215
+ : !press.metaKey));
216
+ }
217
+ render() {
218
+ return html `<kbd part="kbd">${this.keys === '' ? html `<slot></slot>` : this.label}</kbd>`;
219
+ }
220
+ };
221
+ __decorate([
222
+ property()
223
+ ], HelixHeadlessKbd.prototype, "keys", void 0);
224
+ __decorate([
225
+ property({ reflect: true })
226
+ ], HelixHeadlessKbd.prototype, "within", void 0);
227
+ HelixHeadlessKbd = __decorate([
228
+ customElement('helix-headless-kbd')
229
+ ], HelixHeadlessKbd);
230
+ export { HelixHeadlessKbd };
@@ -0,0 +1 @@
1
+ export * from './root/legend-root.js';
@@ -0,0 +1 @@
1
+ export * from './root/legend-root.js';
@@ -0,0 +1,83 @@
1
+ import { HelixElement, SourceController } from '@fusion.dev/helix-core';
2
+ import { type PropertyValues, type TemplateResult } from 'lit';
3
+ /**
4
+ * @summary The names a chart draws, each beside the color it is drawn in.
5
+ *
6
+ * @description
7
+ * A legend is a list, so it is a list: not part of a chart, and shared by
8
+ * whichever of them needs one. It takes its entries from the same table the
9
+ * chart reads, through `for`, so the two cannot disagree about how many series
10
+ * there are or what they are called.
11
+ *
12
+ * `entries` picks which way to read that table, and the two ways are the two
13
+ * shapes a chart comes in. `series` is one entry per data column, named by the
14
+ * header row, which is a line or a bar chart. `categories` is one entry per
15
+ * body row, named by its row header, which is a donut: its slices are the rows,
16
+ * and it has no axis to write their names along.
17
+ *
18
+ * **The table is resolved on the client and there is no server pass.** `for` is
19
+ * an id and resolving it wants a document, which the server render does not
20
+ * have, so a legend ships empty and fills in on hydration. The table itself is
21
+ * ordinary markup and is served whole, so nothing is missing from the page
22
+ * before then, only from this list.
23
+ *
24
+ * The table is watched, because a legend that goes stale when its data changes
25
+ * is a legend that has to be told, and nothing else in the page would know to
26
+ * tell it.
27
+ *
28
+ * **Not hidden from a screen reader, though the mapping it draws is a color
29
+ * one.** The argument for hiding it is real: the colours mean nothing to a
30
+ * reader who cannot see them, and the names are already in the table. It stays
31
+ * because the cost of being wrong runs one way. A duplicated list of three
32
+ * words is noise; a consumer who took the table out of the accessibility tree
33
+ * and then found the legend hidden too has a chart nobody can read, and neither
34
+ * decision announces itself.
35
+ *
36
+ * @since 0.1.0
37
+ * @status experimental
38
+ * @category charts
39
+ * @aliases Key, Series Key
40
+ * @documentation https://helix.fusion.dev/components/legend
41
+ *
42
+ * @csspart entry - One name and its swatch.
43
+ * @csspart list - The list itself.
44
+ * @csspart name - One series name.
45
+ * @csspart swatch - The color a series is drawn in.
46
+ */
47
+ export declare class HelixHeadlessLegend extends HelixElement {
48
+ /**
49
+ * Which way to read the table.
50
+ *
51
+ * Absent is `series`, one entry per data column. `categories` reads one entry
52
+ * per body row instead, for a donut, whose slices are the rows.
53
+ */
54
+ entries?: 'categories' | 'series';
55
+ /**
56
+ * The id of the table to take the names from.
57
+ *
58
+ * Resolved through `getRootNode()`, so a legend inside another component's
59
+ * shadow root names a table in that root rather than in the document.
60
+ *
61
+ * **In React this arrives as a property and not as an attribute**, the way
62
+ * `Tooltip.for` does, so it does not reflect and nothing styles on it.
63
+ */
64
+ for: string;
65
+ protected readonly source: SourceController;
66
+ protected willUpdate(changed: PropertyValues<this>): void;
67
+ /**
68
+ * The names, in the order the chart will draw them.
69
+ *
70
+ * `protected` rather than private because the styled tier has to match a
71
+ * per-series treatment against them, the way `BarChart` matches `outlined` and
72
+ * `subtle` against the headings its table gives. A legend keys a chart, so the
73
+ * two answer the same question about the same series, and the tier that paints
74
+ * cannot do that without knowing which entry is which.
75
+ */
76
+ protected names(): string[];
77
+ protected render(): TemplateResult;
78
+ }
79
+ declare global {
80
+ interface HTMLElementTagNameMap {
81
+ 'helix-headless-legend': HelixHeadlessLegend;
82
+ }
83
+ }
@@ -0,0 +1,125 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { customElement, HelixElement, SourceController } from '@fusion.dev/helix-core';
8
+ import { html } from 'lit';
9
+ import { property } from 'lit/decorators.js';
10
+ /** How many colours the series palette has, and so where it starts over. */
11
+ const PALETTE = 24;
12
+ /**
13
+ * @summary The names a chart draws, each beside the color it is drawn in.
14
+ *
15
+ * @description
16
+ * A legend is a list, so it is a list: not part of a chart, and shared by
17
+ * whichever of them needs one. It takes its entries from the same table the
18
+ * chart reads, through `for`, so the two cannot disagree about how many series
19
+ * there are or what they are called.
20
+ *
21
+ * `entries` picks which way to read that table, and the two ways are the two
22
+ * shapes a chart comes in. `series` is one entry per data column, named by the
23
+ * header row, which is a line or a bar chart. `categories` is one entry per
24
+ * body row, named by its row header, which is a donut: its slices are the rows,
25
+ * and it has no axis to write their names along.
26
+ *
27
+ * **The table is resolved on the client and there is no server pass.** `for` is
28
+ * an id and resolving it wants a document, which the server render does not
29
+ * have, so a legend ships empty and fills in on hydration. The table itself is
30
+ * ordinary markup and is served whole, so nothing is missing from the page
31
+ * before then, only from this list.
32
+ *
33
+ * The table is watched, because a legend that goes stale when its data changes
34
+ * is a legend that has to be told, and nothing else in the page would know to
35
+ * tell it.
36
+ *
37
+ * **Not hidden from a screen reader, though the mapping it draws is a color
38
+ * one.** The argument for hiding it is real: the colours mean nothing to a
39
+ * reader who cannot see them, and the names are already in the table. It stays
40
+ * because the cost of being wrong runs one way. A duplicated list of three
41
+ * words is noise; a consumer who took the table out of the accessibility tree
42
+ * and then found the legend hidden too has a chart nobody can read, and neither
43
+ * decision announces itself.
44
+ *
45
+ * @since 0.1.0
46
+ * @status experimental
47
+ * @category charts
48
+ * @aliases Key, Series Key
49
+ * @documentation https://helix.fusion.dev/components/legend
50
+ *
51
+ * @csspart entry - One name and its swatch.
52
+ * @csspart list - The list itself.
53
+ * @csspart name - One series name.
54
+ * @csspart swatch - The color a series is drawn in.
55
+ */
56
+ let HelixHeadlessLegend = class HelixHeadlessLegend extends HelixElement {
57
+ constructor() {
58
+ super(...arguments);
59
+ /**
60
+ * The id of the table to take the names from.
61
+ *
62
+ * Resolved through `getRootNode()`, so a legend inside another component's
63
+ * shadow root names a table in that root rather than in the document.
64
+ *
65
+ * **In React this arrives as a property and not as an attribute**, the way
66
+ * `Tooltip.for` does, so it does not reflect and nothing styles on it.
67
+ */
68
+ this.for = '';
69
+ /* One controller rather than the resolve-and-watch each chart had written
70
+ out for itself. Three copies had already drifted into two names for the
71
+ same lookup. */
72
+ this.source = new SourceController(this);
73
+ }
74
+ willUpdate(changed) {
75
+ if (changed.has('for')) {
76
+ this.source.watch();
77
+ }
78
+ }
79
+ /**
80
+ * The names, in the order the chart will draw them.
81
+ *
82
+ * `protected` rather than private because the styled tier has to match a
83
+ * per-series treatment against them, the way `BarChart` matches `outlined` and
84
+ * `subtle` against the headings its table gives. A legend keys a chart, so the
85
+ * two answer the same question about the same series, and the tier that paints
86
+ * cannot do that without knowing which entry is which.
87
+ */
88
+ names() {
89
+ const series = this.source.series;
90
+ return this.entries === 'categories'
91
+ ? (series[0]?.points.map((point) => point.label) ?? [])
92
+ : series.map((one) => one.name);
93
+ }
94
+ render() {
95
+ /* The index rather than the color, because a color is a token and the
96
+ headless tier holds none. The styled tier maps one to the other, and it
97
+ starts over after twenty-four.
98
+ *
99
+ * The palette is eight hues in three tones, so a legend of nine repeats the
100
+ * first hue in a brighter tone rather than repeating a color outright. It
101
+ * is still a hue collision and a chart with nine series has a worse problem
102
+ * than the palette does; twenty-four is where it stops being able to help. */
103
+ return html `<ul part="list" role="list">
104
+ ${this.names().map((name, index) => html `<li
105
+ data-series=${(index % PALETTE) + 1}
106
+ part="entry"
107
+ style="--chart-series: var(--chart-series-${(index % PALETTE) + 1})"
108
+ role="listitem"
109
+ >
110
+ <span aria-hidden="true" part="swatch"></span>
111
+ <span part="name">${name}</span>
112
+ </li>`)}
113
+ </ul>`;
114
+ }
115
+ };
116
+ __decorate([
117
+ property({ reflect: true })
118
+ ], HelixHeadlessLegend.prototype, "entries", void 0);
119
+ __decorate([
120
+ property()
121
+ ], HelixHeadlessLegend.prototype, "for", void 0);
122
+ HelixHeadlessLegend = __decorate([
123
+ customElement('helix-headless-legend')
124
+ ], HelixHeadlessLegend);
125
+ export { HelixHeadlessLegend };
@@ -0,0 +1 @@
1
+ export * from './root/line-chart-root.js';
@@ -0,0 +1 @@
1
+ export * from './root/line-chart-root.js';