@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,249 @@
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, HelixTourAskEvent, hostAria, PopoverController, } from '@fusion.dev/helix-core';
8
+ import { property } from 'lit/decorators.js';
9
+ import { html } from 'lit/static-html.js';
10
+ import '../../button/index.js';
11
+ /**
12
+ * @summary One stop on a tour: what it points at, and a panel to say it in.
13
+ *
14
+ * @description
15
+ * A stop names a target with `for` and holds whatever the consumer puts in it.
16
+ * It owns no content of its own, which is the whole shape of this family: the
17
+ * tour abstracts the three things that are genuinely hard, and the words are
18
+ * the consumer's.
19
+ *
20
+ * What it does own:
21
+ *
22
+ * - **Where the panel goes.** Anchored to the target through the same floating
23
+ * pass every other overlay here uses.
24
+ * - **That it is on top.** A popover, so it is in the top layer. A tour points
25
+ * at things inside dialogs, inside scrollers, inside anything with a stacking
26
+ * context, and a panel in the ordinary flow loses to all three.
27
+ * - **When it shows.** Which is `current`, and which the root decides.
28
+ *
29
+ * What it does not own is the heading, the paragraph, the picture and the
30
+ * layout. Slot a `helix-card`, or a heading and a line of prose, or anything
31
+ * else. This was written the other way first, with `title` and `body` parts and
32
+ * a fixed arrangement, which is a component deciding what a tour is allowed to
33
+ * say.
34
+ *
35
+ * **The buttons are slot fallback, so the common case costs nothing and the
36
+ * uncommon one is possible.** Write nothing and get Back, Next and Skip already
37
+ * wired. Slot `actions` and they are yours, driven by `next()`, `back()` and
38
+ * `skip()` on the root, which are public for exactly that.
39
+ *
40
+ * **`for` is an id, the same as `Tooltip`'s.** The target is elsewhere on the
41
+ * page, and an id is the one reference a consumer can write in markup without
42
+ * holding an element. Resolved against the root node, so a stop inside a shadow
43
+ * tree points at a target in that tree.
44
+ *
45
+ * @since 0.1.0
46
+ * @status experimental
47
+ * @category overlays
48
+ * @documentation https://helix.fusion.dev/components/tour
49
+ *
50
+ * @slot - What this stop says. A card, a heading and a line, anything.
51
+ * @slot actions - Replaces the controls, which are Back, Next and Skip.
52
+ *
53
+ * @event {HelixTourAskEvent} helix-tour-ask - A stop asking the tour to move, from its own controls.
54
+ *
55
+ * @csspart actions - The row the controls sit in.
56
+ * @csspart arrow - The point, which the floating pass places against the target.
57
+ * @csspart back - The control that goes to the previous stop.
58
+ * @csspart back-button - The inner control.
59
+ * @csspart bubble - The panel that points at the target.
60
+ * @csspart content - The region holding the slotted content.
61
+ * @csspart next - The control that goes on, and finishes on the last stop.
62
+ * @csspart next-button - The inner control.
63
+ * @csspart skip - The control that leaves the tour.
64
+ * @csspart skip-button - The inner control.
65
+ */
66
+ let HelixHeadlessTourStop = class HelixHeadlessTourStop extends HelixElement {
67
+ constructor() {
68
+ super(...arguments);
69
+ /**
70
+ * The id of the element this stop is about.
71
+ */
72
+ this.for = '';
73
+ /**
74
+ * Which side of the target the panel prefers.
75
+ */
76
+ this.placement = 'bottom';
77
+ /**
78
+ * Whether this is the stop the reader is on.
79
+ *
80
+ * Written by the root rather than by a consumer, which is the one place this
81
+ * family writes onto markup it does not own. It is acceptable here for a
82
+ * reason that did not hold for the trail or the avatar group: a tour starts
83
+ * closed, so there is no server state to get wrong. The server renders a
84
+ * closed tour, a closed tour shows nothing, and nothing can disagree.
85
+ */
86
+ this.current = false;
87
+ /**
88
+ * Whether this is the last stop, so the control says Done.
89
+ */
90
+ this.last = false;
91
+ /**
92
+ * Whether this is the first stop, so there is nowhere back to.
93
+ */
94
+ this.first = false;
95
+ /**
96
+ * Label for the control that goes back.
97
+ */
98
+ this.backLabel = 'Back';
99
+ /**
100
+ * Label for the control that goes on.
101
+ */
102
+ this.nextLabel = 'Next';
103
+ /**
104
+ * Label for the control that goes on from the last stop.
105
+ */
106
+ this.doneLabel = 'Done';
107
+ /**
108
+ * Label for the control that leaves the tour.
109
+ */
110
+ this.skipLabel = 'Skip';
111
+ this.floating = new PopoverController(this, {
112
+ anchor: () => this.target,
113
+ arrow: () => this.renderRoot?.querySelector('[part="arrow"]'),
114
+ /* A press outside does not end a tour, and this is the decision rather than
115
+ a stub. Everywhere else a surface closes on an outside press because
116
+ pressing elsewhere means the reader is finished with it. Here elsewhere
117
+ is the thing being pointed at: the scrim lets the pointer through on
118
+ purpose, so the first press a reader makes on the button the tour is
119
+ describing would be the press that ends the tour. Leaving is the skip
120
+ control and `Escape`, both of which say so. */
121
+ onDismiss: () => { },
122
+ placement: () => this.placement,
123
+ surface: () => this.renderRoot?.querySelector('[part="bubble"]'),
124
+ });
125
+ }
126
+ /** The element this stop is about, or null where the id resolves to nothing. */
127
+ get target() {
128
+ const scope = this.getRootNode();
129
+ return this.for === '' ? null : (scope.getElementById?.(this.for) ?? null);
130
+ }
131
+ willUpdate(changed) {
132
+ super.willUpdate(changed);
133
+ /* `group`, not `dialog`, and this is a decision rather than a shortcut. A
134
+ tour must not trap focus: the reader has to be able to look at the thing
135
+ being pointed at, and an overlay that will not let them has hidden its
136
+ own subject. */
137
+ hostAria(this.internals, { role: 'group' });
138
+ }
139
+ updated(changed) {
140
+ super.updated(changed);
141
+ /* Shown and hidden from here rather than by a controller reading a
142
+ property, because `current` is written onto this element by the root and
143
+ is not a property this element decides. The controller does the top layer
144
+ and the placement; when is ours. */
145
+ if (this.current) {
146
+ this.floating.show();
147
+ }
148
+ else {
149
+ this.floating.hide();
150
+ }
151
+ }
152
+ /**
153
+ * Skip, back and next, behind a seam the styled tier can move.
154
+ *
155
+ * They are slot fallback rather than markup a consumer has to write, so a
156
+ * tour with nothing slotted still has the three controls a tour needs; and
157
+ * they are a method as well, so a tier above can render its own three without
158
+ * reimplementing the panel around them. Both are needed: the slot is for the
159
+ * consumer and the method is for the tier.
160
+ */
161
+ renderActions() {
162
+ return html `<slot name="actions">
163
+ <${this.tag('button')}
164
+ part="skip"
165
+ exportparts="button: skip-button" appearance="ghost" @click=${() => this.ask('skip')}>
166
+ ${this.skipLabel}
167
+ </${this.tag('button')}>
168
+ ${this.first
169
+ ? ''
170
+ : html `<${this.tag('button')}
171
+ part="back"
172
+ exportparts="button: back-button"
173
+ appearance="outlined"
174
+ @click=${() => this.ask('back')}
175
+ >
176
+ ${this.backLabel}
177
+ </${this.tag('button')}>`}
178
+ <${this.tag('button')}
179
+ part="next"
180
+ exportparts="button: next-button"
181
+ appearance="solid"
182
+ tone="primary"
183
+ @click=${() => this.ask('next')}
184
+ >
185
+ ${this.last ? this.doneLabel : this.nextLabel}
186
+ </${this.tag('button')}>
187
+ </slot>`;
188
+ }
189
+ render() {
190
+ return html `<div part="bubble" popover="manual" ?hidden=${!this.current}>
191
+ ${
192
+ /* The one surface in this library that draws one, and the reason is
193
+ worth stating because everything else here deliberately does not.
194
+ An arrow says which thing a panel is describing, and a menu or a
195
+ select does not need one: it hangs off its trigger and adjacency says
196
+ it. A tour panel is anchored to something it did not open, on a page
197
+ full of other things, and it may be flipped to the far side of its
198
+ target by collision. Fusion's own taste is to leave arrows off, which
199
+ is a fact about the house style rather than about the system. */
200
+ ''}
201
+ <div part="arrow" aria-hidden="true"></div>
202
+ <div part="content"><slot></slot></div>
203
+ <div part="actions">
204
+ ${this.renderActions()}
205
+ </div>
206
+ </div>`;
207
+ }
208
+ /**
209
+ * Says what the reader pressed and lets the root decide.
210
+ *
211
+ * A stop cannot move a tour: it does not know what is after it, and a stop
212
+ * that reached up to its parent to find out would be a stop that only works
213
+ * inside one. Composed, so the root hears it through its own slot.
214
+ */
215
+ ask(what) {
216
+ this.dispatchEvent(new HelixTourAskEvent({ what }));
217
+ }
218
+ };
219
+ __decorate([
220
+ property()
221
+ ], HelixHeadlessTourStop.prototype, "for", void 0);
222
+ __decorate([
223
+ property()
224
+ ], HelixHeadlessTourStop.prototype, "placement", void 0);
225
+ __decorate([
226
+ property({ reflect: true, type: Boolean })
227
+ ], HelixHeadlessTourStop.prototype, "current", void 0);
228
+ __decorate([
229
+ property({ reflect: true, type: Boolean })
230
+ ], HelixHeadlessTourStop.prototype, "last", void 0);
231
+ __decorate([
232
+ property({ reflect: true, type: Boolean })
233
+ ], HelixHeadlessTourStop.prototype, "first", void 0);
234
+ __decorate([
235
+ property({ attribute: 'back-label' })
236
+ ], HelixHeadlessTourStop.prototype, "backLabel", void 0);
237
+ __decorate([
238
+ property({ attribute: 'next-label' })
239
+ ], HelixHeadlessTourStop.prototype, "nextLabel", void 0);
240
+ __decorate([
241
+ property({ attribute: 'done-label' })
242
+ ], HelixHeadlessTourStop.prototype, "doneLabel", void 0);
243
+ __decorate([
244
+ property({ attribute: 'skip-label' })
245
+ ], HelixHeadlessTourStop.prototype, "skipLabel", void 0);
246
+ HelixHeadlessTourStop = __decorate([
247
+ customElement('helix-headless-tour-stop')
248
+ ], HelixHeadlessTourStop);
249
+ export { HelixHeadlessTourStop };
@@ -0,0 +1,2 @@
1
+ export * from './item/tree-item.js';
2
+ export * from './root/tree-root.js';
@@ -0,0 +1,2 @@
1
+ export * from './item/tree-item.js';
2
+ export * from './root/tree-root.js';
@@ -0,0 +1,208 @@
1
+ import { HelixElement } from '@fusion.dev/helix-core';
2
+ import { type PropertyValues, type TemplateResult } from 'lit';
3
+ declare const HelixHeadlessTreeItem_base: (new (...args: any[]) => import("@fusion.dev/helix-core").MixinControllerOpenInterface) & typeof HelixElement;
4
+ /**
5
+ * @summary One node in a tree.
6
+ *
7
+ * @description
8
+ * **`open`, on `MixinControllerOpen`, where it was a bare `expanded` boolean.**
9
+ * A branch showing its children is the same state a disclosure holds, and
10
+ * `AccordionItem` has been on that mixin all along. Written here by hand it had
11
+ * neither half of what the mixin gives: `this.expanded = !this.expanded`
12
+ * announced nothing, so a consumer could not know a branch had opened, and
13
+ * could not own the state either. `aria-expanded` is still what the row
14
+ * renders, because that is the attribute a tree uses; the property is what
15
+ * changed, not the semantics.
16
+ *
17
+ * An element rather than a slot because it owns state: whether it is open,
18
+ * whether it is selected, and whether it is the one holding focus.
19
+ *
20
+ * A branch is any item with something slotted into `children`, detected in
21
+ * `firstUpdated` rather than declared by the consumer. That is a client-side
22
+ * enhancement by necessity, since the server cannot inspect children, so the
23
+ * server renders the node as a leaf and the twisty appears on hydration. It
24
+ * appears rather than disappearing, which is the harmless direction.
25
+ *
26
+ * **`href` makes the row itself the link.** A tree used as navigation is a list
27
+ * of links, and the row is what a reader presses: with the anchor slotted into
28
+ * the name instead, everything outside the words is dead, Enter does nothing,
29
+ * and there is no middle-click, no status bar and no open-in-new-tab. Given an
30
+ * `href` the row *is* an `<a>`, so the platform provides all of that and the
31
+ * keyboard needs no handler at all.
32
+ *
33
+ * It changes the shape of the ARIA, which is why it is a property and not the
34
+ * default. An anchor cannot contain the group, since the group holds more
35
+ * anchors and nesting them is invalid, so the row carries `treeitem` and the
36
+ * group becomes its sibling under a presentational wrapper. That is exactly the
37
+ * navigation flavor of the tree pattern, and the arrangement without an `href`
38
+ * stays as it was: `treeitem` containing `group`, which is what an `<li>`
39
+ * holding a `<ul>` is.
40
+ *
41
+ * A consumer whose framework owns routing slots its own link instead and leaves
42
+ * `href` unset. The row follows that one too, so the whole row works either
43
+ * way; what the anchor adds is what only a real anchor can give.
44
+ *
45
+ * The properties below are written by this component and read by whoever draws
46
+ * it. A consumer sets none of them: they carry a number this element computed
47
+ * and CSS cannot, which is what lets a stylesheet on this tier draw the thing
48
+ * without measuring anything itself.
49
+ *
50
+ * @since 0.1.0
51
+ * @status experimental
52
+ * @aliases TreeNode, Branch, Leaf
53
+ * @documentation https://helix.fusion.dev/components/tree
54
+ *
55
+ * @slot - The item's label.
56
+ * @slot children - Nested items, which make this a branch.
57
+ * @slot end - After the label, at the row's far side. A count, or a state.
58
+ * @slot start - Before the label, after the chevron. A mark about the item.
59
+ *
60
+ * @event {HelixBeforeCloseEvent} helix-before-close - Fired before a branch closes, and cancelable.
61
+ * @event {HelixBeforeOpenEvent} helix-before-open - Fired before a branch opens, and cancelable.
62
+ * @event {HelixSelectEvent} helix-select - Fired when the item is chosen. Cancelable: refusing it takes the decision and nothing moves.
63
+ * @event {Event} toggle - Says the state moved, carrying `newState` and `oldState`.
64
+ *
65
+ * @csspart group - The container for nested items.
66
+ * @csspart item - The node, and the focus target unless `href` moves it to the row.
67
+ * @csspart label - The label text.
68
+ * @csspart row - The clickable label row, which is an `<a>` where `href` is set.
69
+ * @csspart toggle - The expand and collapse control.
70
+ *
71
+ * @cssproperty --tree-level - How deep this row sits, counting from zero, for the indent.
72
+ */
73
+ export declare class HelixHeadlessTreeItem extends HelixHeadlessTreeItem_base {
74
+ /**
75
+ * Identifies the item to the consumer, carried in `helix-select`.
76
+ */
77
+ value: string;
78
+ /**
79
+ * Where this node goes, which makes its row a real link.
80
+ *
81
+ * Unset by default, and unreflected: a tree of choosable nodes is not a tree
82
+ * of links, and an empty `href` written onto every row would be a link to the
83
+ * current page on every item a consumer never asked to be one.
84
+ */
85
+ href: string;
86
+ /**
87
+ * Where the link opens, for the rare row that leaves the site.
88
+ */
89
+ target: string;
90
+ /**
91
+ * What the link declares about where it goes.
92
+ *
93
+ * Set by the consumer rather than derived from `target`: `noreferrer` is a
94
+ * decision about their own analytics and a component should not make it for
95
+ * them. `noopener` is not needed as a default either, since every browser
96
+ * this library supports implies it for `target="_blank"` already.
97
+ */
98
+ rel: string;
99
+ /**
100
+ * Whether this item is the current one.
101
+ *
102
+ * Not reflected, for the reason `level` below gives in full: the tree assigns
103
+ * this after it upgrades, so the attribute would be a change to markup the
104
+ * consumer rendered and hydration would report it. It reflected, one line
105
+ * from the paragraph saying why it must not.
106
+ *
107
+ * The stylesheet reads it from the row inside this shadow root, which is the
108
+ * answer `level` gives one paragraph down: the indent it drives is written
109
+ * onto the row rather than onto the host, because the row is not part of the
110
+ * tree React hydrates. Mirroring to `data-selected` on the host instead was
111
+ * the same fault with a different name, and React said so.
112
+ */
113
+ selected: boolean;
114
+ /**
115
+ * Depth from the root, set by the tree so indentation needs no CSS nesting.
116
+ *
117
+ * Not reflected. The tree assigns this after it upgrades, so an attribute
118
+ * here would be a change to markup the consumer rendered and hydration would
119
+ * report it. The indent it drives is written onto the row instead, inside the
120
+ * shadow root, which is not part of the tree React hydrates.
121
+ */
122
+ level?: number;
123
+ /**
124
+ * Whether this item holds the tree's single tab stop.
125
+ */
126
+ focusable: boolean;
127
+ /**
128
+ * Whether anything is slotted into `children`.
129
+ *
130
+ * Read after first render.
131
+ */
132
+ private branch;
133
+ protected firstUpdated(changed: PropertyValues): void;
134
+ /**
135
+ * @internal Read by the tree to identify a branch across the light DOM,
136
+ * which is cheaper than `instanceof` and is why this is public rather than
137
+ * protected. A consumer asks `branch`, which is the property they set.
138
+ */
139
+ get isBranch(): boolean;
140
+ /**
141
+ * Moves focus to this node.
142
+ *
143
+ * Which element that is moves with `href`: the thing carrying `treeitem` is
144
+ * the thing the tree's roving tab stop lives on, and with a link that is the
145
+ * row rather than the wrapper around it.
146
+ */
147
+ focusItem(): void;
148
+ /** Selects this node and announces it. */
149
+ select(): void;
150
+ /**
151
+ * Chooses this node the way a reader does, from a press or from Enter.
152
+ *
153
+ * Selecting and following are two things and this is where they meet, so the
154
+ * pointer and the keyboard take one path to the same end. The tree calls this
155
+ * rather than `select` for the keyboard, which is what fixes Enter: a nav
156
+ * tree whose rows are links could be walked with the arrows and not entered,
157
+ * because choosing announced a value and nothing listened for it.
158
+ */
159
+ activate(): void;
160
+ /**
161
+ * Follows a link slotted into the name, if there is one.
162
+ *
163
+ * A row is wider than the words in it: the indent, the padding, and with the
164
+ * chevron at the far end most of the row's width are all outside the anchor,
165
+ * so a reader who pressed the row anywhere but on the text got nothing. The
166
+ * words are the consumer's own content and this does not rewrite them, so
167
+ * what it does instead is press the link they put there.
168
+ *
169
+ * The consumer's anchor rather than an `href` of this element's own,
170
+ * deliberately: a framework's link component is what carries prefetching and
171
+ * client-side routing, and a plain `<a href>` rendered in here would be a
172
+ * full page load on a site that had neither. A synthetic click is what those
173
+ * components listen for, so both keep working.
174
+ *
175
+ * `querySelector` on the light DOM, not the render root: the link is the
176
+ * consumer's, and it is scoped to this item's own name rather than to the
177
+ * whole subtree, or a branch would follow the first link belonging to one of
178
+ * its children.
179
+ */
180
+ private follow;
181
+ private readonly handleToggleClick;
182
+ private readonly handleRowClick;
183
+ /** Everything inside the row, which is the same whichever element it is. */
184
+ private renderRow;
185
+ /**
186
+ * Mirrors the chosen state where a stylesheet can select on it.
187
+ *
188
+ * **A custom state and not the `selected` attribute it used to reflect.** The
189
+ * parent writes this: a listbox choosing a row, a tab strip moving the tab, a
190
+ * radio group answering for its set. Reflected, that put the element's own
191
+ * bookkeeping onto markup a consumer wrote and a consumer's server never sent,
192
+ * which React reconciles and reports as a mismatch, and which a serialized
193
+ * element pasted back declares as a choice nobody made. `ElementInternals`
194
+ * holds it instead, where it is not in the DOM at all.
195
+ *
196
+ * Reading `selected` is unaffected and so is writing it: the attribute still
197
+ * seeds the property, which is what `<helix-tree-item selected>` in a consumer's
198
+ * markup means. What stops is the write back. See 302 and 304.
199
+ */
200
+ protected willUpdate(changed: PropertyValues): void;
201
+ protected render(): TemplateResult;
202
+ }
203
+ declare global {
204
+ interface HTMLElementTagNameMap {
205
+ 'helix-headless-tree-item': HelixHeadlessTreeItem;
206
+ }
207
+ }
208
+ export {};