@solid2-aria/components 0.0.0-stage → 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (514) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +58 -2
  3. package/dist/LICENSES/Apache-2.0.txt +201 -0
  4. package/dist/LICENSES/react-spectrum-NOTICE.txt +242 -0
  5. package/dist/NOTICE.txt +636 -0
  6. package/dist/browser/autocomplete.d.ts +35 -0
  7. package/dist/browser/autocomplete.js +69 -0
  8. package/dist/browser/autocomplete.js.map +1 -0
  9. package/dist/browser/breadcrumbs.d.ts +71 -0
  10. package/dist/browser/breadcrumbs.js +121 -0
  11. package/dist/browser/breadcrumbs.js.map +1 -0
  12. package/dist/browser/button.d.ts +36 -0
  13. package/dist/browser/button.js +156 -0
  14. package/dist/browser/button.js.map +1 -0
  15. package/dist/browser/calendar.d.ts +103 -0
  16. package/dist/browser/calendar.js +581 -0
  17. package/dist/browser/calendar.js.map +1 -0
  18. package/dist/browser/checkbox.d.ts +67 -0
  19. package/dist/browser/checkbox.js +345 -0
  20. package/dist/browser/checkbox.js.map +1 -0
  21. package/dist/browser/collection-dnd.d.ts +56 -0
  22. package/dist/browser/collection-dnd.js +156 -0
  23. package/dist/browser/collection-dnd.js.map +1 -0
  24. package/dist/browser/collection.d.ts +153 -0
  25. package/dist/browser/collection.js +106 -0
  26. package/dist/browser/collection.js.map +1 -0
  27. package/dist/browser/color-area.d.ts +21 -0
  28. package/dist/browser/color-area.js +94 -0
  29. package/dist/browser/color-area.js.map +1 -0
  30. package/dist/browser/color-field.d.ts +39 -0
  31. package/dist/browser/color-field.js +232 -0
  32. package/dist/browser/color-field.js.map +1 -0
  33. package/dist/browser/color-picker.d.ts +30 -0
  34. package/dist/browser/color-picker.js +84 -0
  35. package/dist/browser/color-picker.js.map +1 -0
  36. package/dist/browser/color-slider.d.ts +23 -0
  37. package/dist/browser/color-slider.js +132 -0
  38. package/dist/browser/color-slider.js.map +1 -0
  39. package/dist/browser/color-swatch-picker.d.ts +29 -0
  40. package/dist/browser/color-swatch-picker.js +131 -0
  41. package/dist/browser/color-swatch-picker.js.map +1 -0
  42. package/dist/browser/color-swatch.d.ts +19 -0
  43. package/dist/browser/color-swatch.js +42 -0
  44. package/dist/browser/color-swatch.js.map +1 -0
  45. package/dist/browser/color-thumb.d.ts +42 -0
  46. package/dist/browser/color-thumb.js +114 -0
  47. package/dist/browser/color-thumb.js.map +1 -0
  48. package/dist/browser/color-wheel.d.ts +29 -0
  49. package/dist/browser/color-wheel.js +109 -0
  50. package/dist/browser/color-wheel.js.map +1 -0
  51. package/dist/browser/combo-box.d.ts +113 -0
  52. package/dist/browser/combo-box.js +394 -0
  53. package/dist/browser/combo-box.js.map +1 -0
  54. package/dist/browser/create-drag-and-drop.d.ts +61 -0
  55. package/dist/browser/create-drag-and-drop.js +56 -0
  56. package/dist/browser/create-drag-and-drop.js.map +1 -0
  57. package/dist/browser/date-field.d.ts +71 -0
  58. package/dist/browser/date-field.js +508 -0
  59. package/dist/browser/date-field.js.map +1 -0
  60. package/dist/browser/date-picker.d.ts +50 -0
  61. package/dist/browser/date-picker.js +403 -0
  62. package/dist/browser/date-picker.js.map +1 -0
  63. package/dist/browser/dialog.d.ts +35 -0
  64. package/dist/browser/dialog.js +148 -0
  65. package/dist/browser/dialog.js.map +1 -0
  66. package/dist/browser/disclosure.d.ts +56 -0
  67. package/dist/browser/disclosure.js +180 -0
  68. package/dist/browser/disclosure.js.map +1 -0
  69. package/dist/browser/drag-and-drop.d.ts +43 -0
  70. package/dist/browser/drag-and-drop.js +66 -0
  71. package/dist/browser/drag-and-drop.js.map +1 -0
  72. package/dist/browser/drop-zone.d.ts +33 -0
  73. package/dist/browser/drop-zone.js +161 -0
  74. package/dist/browser/drop-zone.js.map +1 -0
  75. package/dist/browser/field-error.d.ts +28 -0
  76. package/dist/browser/field-error.js +60 -0
  77. package/dist/browser/field-error.js.map +1 -0
  78. package/dist/browser/file-trigger.d.ts +30 -0
  79. package/dist/browser/file-trigger.js +66 -0
  80. package/dist/browser/file-trigger.js.map +1 -0
  81. package/dist/browser/form.d.ts +28 -0
  82. package/dist/browser/form.js +64 -0
  83. package/dist/browser/form.js.map +1 -0
  84. package/dist/browser/grid-layout.d.ts +22 -0
  85. package/dist/browser/grid-layout.js +30 -0
  86. package/dist/browser/grid-layout.js.map +1 -0
  87. package/dist/browser/grid-list.d.ts +95 -0
  88. package/dist/browser/grid-list.js +609 -0
  89. package/dist/browser/grid-list.js.map +1 -0
  90. package/dist/browser/group.d.ts +35 -0
  91. package/dist/browser/group.js +92 -0
  92. package/dist/browser/group.js.map +1 -0
  93. package/dist/browser/header.d.ts +25 -0
  94. package/dist/browser/header.js +57 -0
  95. package/dist/browser/header.js.map +1 -0
  96. package/dist/browser/heading.d.ts +26 -0
  97. package/dist/browser/heading.js +53 -0
  98. package/dist/browser/heading.js.map +1 -0
  99. package/dist/browser/hidden-date-input.d.ts +34 -0
  100. package/dist/browser/hidden-date-input.js +84 -0
  101. package/dist/browser/hidden-date-input.js.map +1 -0
  102. package/dist/browser/index.d.ts +133 -0
  103. package/dist/browser/index.js +98 -0
  104. package/dist/browser/input.d.ts +33 -0
  105. package/dist/browser/input.js +94 -0
  106. package/dist/browser/input.js.map +1 -0
  107. package/dist/browser/intl/ar-AE.js +11 -0
  108. package/dist/browser/intl/ar-AE.js.map +1 -0
  109. package/dist/browser/intl/bg-BG.js +11 -0
  110. package/dist/browser/intl/bg-BG.js.map +1 -0
  111. package/dist/browser/intl/cs-CZ.js +11 -0
  112. package/dist/browser/intl/cs-CZ.js.map +1 -0
  113. package/dist/browser/intl/da-DK.js +11 -0
  114. package/dist/browser/intl/da-DK.js.map +1 -0
  115. package/dist/browser/intl/de-DE.js +11 -0
  116. package/dist/browser/intl/de-DE.js.map +1 -0
  117. package/dist/browser/intl/el-GR.js +11 -0
  118. package/dist/browser/intl/el-GR.js.map +1 -0
  119. package/dist/browser/intl/en-US.js +11 -0
  120. package/dist/browser/intl/en-US.js.map +1 -0
  121. package/dist/browser/intl/es-ES.js +11 -0
  122. package/dist/browser/intl/es-ES.js.map +1 -0
  123. package/dist/browser/intl/et-EE.js +11 -0
  124. package/dist/browser/intl/et-EE.js.map +1 -0
  125. package/dist/browser/intl/fi-FI.js +11 -0
  126. package/dist/browser/intl/fi-FI.js.map +1 -0
  127. package/dist/browser/intl/fr-FR.js +11 -0
  128. package/dist/browser/intl/fr-FR.js.map +1 -0
  129. package/dist/browser/intl/he-IL.js +11 -0
  130. package/dist/browser/intl/he-IL.js.map +1 -0
  131. package/dist/browser/intl/hr-HR.js +11 -0
  132. package/dist/browser/intl/hr-HR.js.map +1 -0
  133. package/dist/browser/intl/hu-HU.js +11 -0
  134. package/dist/browser/intl/hu-HU.js.map +1 -0
  135. package/dist/browser/intl/index.js +75 -0
  136. package/dist/browser/intl/index.js.map +1 -0
  137. package/dist/browser/intl/it-IT.js +11 -0
  138. package/dist/browser/intl/it-IT.js.map +1 -0
  139. package/dist/browser/intl/ja-JP.js +11 -0
  140. package/dist/browser/intl/ja-JP.js.map +1 -0
  141. package/dist/browser/intl/ko-KR.js +11 -0
  142. package/dist/browser/intl/ko-KR.js.map +1 -0
  143. package/dist/browser/intl/lt-LT.js +11 -0
  144. package/dist/browser/intl/lt-LT.js.map +1 -0
  145. package/dist/browser/intl/lv-LV.js +11 -0
  146. package/dist/browser/intl/lv-LV.js.map +1 -0
  147. package/dist/browser/intl/nb-NO.js +11 -0
  148. package/dist/browser/intl/nb-NO.js.map +1 -0
  149. package/dist/browser/intl/nl-NL.js +11 -0
  150. package/dist/browser/intl/nl-NL.js.map +1 -0
  151. package/dist/browser/intl/pl-PL.js +11 -0
  152. package/dist/browser/intl/pl-PL.js.map +1 -0
  153. package/dist/browser/intl/pt-BR.js +11 -0
  154. package/dist/browser/intl/pt-BR.js.map +1 -0
  155. package/dist/browser/intl/pt-PT.js +11 -0
  156. package/dist/browser/intl/pt-PT.js.map +1 -0
  157. package/dist/browser/intl/ro-RO.js +11 -0
  158. package/dist/browser/intl/ro-RO.js.map +1 -0
  159. package/dist/browser/intl/ru-RU.js +11 -0
  160. package/dist/browser/intl/ru-RU.js.map +1 -0
  161. package/dist/browser/intl/sk-SK.js +11 -0
  162. package/dist/browser/intl/sk-SK.js.map +1 -0
  163. package/dist/browser/intl/sl-SI.js +11 -0
  164. package/dist/browser/intl/sl-SI.js.map +1 -0
  165. package/dist/browser/intl/sr-SP.js +11 -0
  166. package/dist/browser/intl/sr-SP.js.map +1 -0
  167. package/dist/browser/intl/sv-SE.js +11 -0
  168. package/dist/browser/intl/sv-SE.js.map +1 -0
  169. package/dist/browser/intl/tr-TR.js +11 -0
  170. package/dist/browser/intl/tr-TR.js.map +1 -0
  171. package/dist/browser/intl/uk-UA.js +11 -0
  172. package/dist/browser/intl/uk-UA.js.map +1 -0
  173. package/dist/browser/intl/zh-CN.js +11 -0
  174. package/dist/browser/intl/zh-CN.js.map +1 -0
  175. package/dist/browser/intl/zh-TW.js +11 -0
  176. package/dist/browser/intl/zh-TW.js.map +1 -0
  177. package/dist/browser/keyboard.d.ts +25 -0
  178. package/dist/browser/keyboard.js +50 -0
  179. package/dist/browser/keyboard.js.map +1 -0
  180. package/dist/browser/label.d.ts +26 -0
  181. package/dist/browser/label.js +53 -0
  182. package/dist/browser/label.js.map +1 -0
  183. package/dist/browser/link.d.ts +34 -0
  184. package/dist/browser/link.js +92 -0
  185. package/dist/browser/link.js.map +1 -0
  186. package/dist/browser/list-box.d.ts +171 -0
  187. package/dist/browser/list-box.js +547 -0
  188. package/dist/browser/list-box.js.map +1 -0
  189. package/dist/browser/menu.d.ts +150 -0
  190. package/dist/browser/menu.js +597 -0
  191. package/dist/browser/menu.js.map +1 -0
  192. package/dist/browser/meter.d.ts +29 -0
  193. package/dist/browser/meter.js +73 -0
  194. package/dist/browser/meter.js.map +1 -0
  195. package/dist/browser/modal.d.ts +48 -0
  196. package/dist/browser/modal.js +190 -0
  197. package/dist/browser/modal.js.map +1 -0
  198. package/dist/browser/navigation-tree.d.ts +54 -0
  199. package/dist/browser/navigation-tree.js +233 -0
  200. package/dist/browser/navigation-tree.js.map +1 -0
  201. package/dist/browser/number-field.d.ts +36 -0
  202. package/dist/browser/number-field.js +179 -0
  203. package/dist/browser/number-field.js.map +1 -0
  204. package/dist/browser/overlay-arrow.d.ts +32 -0
  205. package/dist/browser/overlay-arrow.js +65 -0
  206. package/dist/browser/overlay-arrow.js.map +1 -0
  207. package/dist/browser/overlay-contexts.d.ts +22 -0
  208. package/dist/browser/overlay-contexts.js +24 -0
  209. package/dist/browser/overlay-contexts.js.map +1 -0
  210. package/dist/browser/popover.d.ts +50 -0
  211. package/dist/browser/popover.js +255 -0
  212. package/dist/browser/popover.js.map +1 -0
  213. package/dist/browser/preview-trigger.d.ts +25 -0
  214. package/dist/browser/preview-trigger.js +93 -0
  215. package/dist/browser/preview-trigger.js.map +1 -0
  216. package/dist/browser/progress-bar.d.ts +30 -0
  217. package/dist/browser/progress-bar.js +76 -0
  218. package/dist/browser/progress-bar.js.map +1 -0
  219. package/dist/browser/radio-group.d.ts +67 -0
  220. package/dist/browser/radio-group.js +336 -0
  221. package/dist/browser/radio-group.js.map +1 -0
  222. package/dist/browser/search-field.d.ts +34 -0
  223. package/dist/browser/search-field.js +156 -0
  224. package/dist/browser/search-field.js.map +1 -0
  225. package/dist/browser/select.d.ts +115 -0
  226. package/dist/browser/select.js +351 -0
  227. package/dist/browser/select.js.map +1 -0
  228. package/dist/browser/selection-indicator.d.ts +25 -0
  229. package/dist/browser/selection-indicator.js +40 -0
  230. package/dist/browser/selection-indicator.js.map +1 -0
  231. package/dist/browser/separator.d.ts +30 -0
  232. package/dist/browser/separator.js +68 -0
  233. package/dist/browser/separator.js.map +1 -0
  234. package/dist/browser/shared-element-transition.d.ts +35 -0
  235. package/dist/browser/shared-element-transition.js +141 -0
  236. package/dist/browser/shared-element-transition.js.map +1 -0
  237. package/dist/browser/sheet.d.ts +64 -0
  238. package/dist/browser/sheet.js +982 -0
  239. package/dist/browser/sheet.js.map +1 -0
  240. package/dist/browser/slider.d.ts +77 -0
  241. package/dist/browser/slider.js +318 -0
  242. package/dist/browser/slider.js.map +1 -0
  243. package/dist/browser/switch.d.ts +54 -0
  244. package/dist/browser/switch.js +240 -0
  245. package/dist/browser/switch.js.map +1 -0
  246. package/dist/browser/table-layout.d.ts +22 -0
  247. package/dist/browser/table-layout.js +31 -0
  248. package/dist/browser/table-layout.js.map +1 -0
  249. package/dist/browser/table.d.ts +184 -0
  250. package/dist/browser/table.js +1268 -0
  251. package/dist/browser/table.js.map +1 -0
  252. package/dist/browser/tabs.d.ts +194 -0
  253. package/dist/browser/tabs.js +378 -0
  254. package/dist/browser/tabs.js.map +1 -0
  255. package/dist/browser/tag-group.d.ts +112 -0
  256. package/dist/browser/tag-group.js +291 -0
  257. package/dist/browser/tag-group.js.map +1 -0
  258. package/dist/browser/text-area.d.ts +16 -0
  259. package/dist/browser/text-area.js +75 -0
  260. package/dist/browser/text-area.js.map +1 -0
  261. package/dist/browser/text-field.d.ts +31 -0
  262. package/dist/browser/text-field.js +152 -0
  263. package/dist/browser/text-field.js.map +1 -0
  264. package/dist/browser/text.d.ts +25 -0
  265. package/dist/browser/text.js +52 -0
  266. package/dist/browser/text.js.map +1 -0
  267. package/dist/browser/toast.d.ts +66 -0
  268. package/dist/browser/toast.js +226 -0
  269. package/dist/browser/toast.js.map +1 -0
  270. package/dist/browser/toggle-button-group.d.ts +32 -0
  271. package/dist/browser/toggle-button-group.js +74 -0
  272. package/dist/browser/toggle-button-group.js.map +1 -0
  273. package/dist/browser/toggle-button.d.ts +33 -0
  274. package/dist/browser/toggle-button.js +119 -0
  275. package/dist/browser/toggle-button.js.map +1 -0
  276. package/dist/browser/token-field.d.ts +124 -0
  277. package/dist/browser/token-field.js +277 -0
  278. package/dist/browser/token-field.js.map +1 -0
  279. package/dist/browser/toolbar.d.ts +28 -0
  280. package/dist/browser/toolbar.js +51 -0
  281. package/dist/browser/toolbar.js.map +1 -0
  282. package/dist/browser/tooltip.d.ts +44 -0
  283. package/dist/browser/tooltip.js +183 -0
  284. package/dist/browser/tooltip.js.map +1 -0
  285. package/dist/browser/tree-drop-target-delegate.d.ts +33 -0
  286. package/dist/browser/tree-drop-target-delegate.js +178 -0
  287. package/dist/browser/tree-drop-target-delegate.js.map +1 -0
  288. package/dist/browser/tree.d.ts +98 -0
  289. package/dist/browser/tree.js +699 -0
  290. package/dist/browser/tree.js.map +1 -0
  291. package/dist/browser/utils.d.ts +94 -0
  292. package/dist/browser/utils.js +173 -0
  293. package/dist/browser/utils.js.map +1 -0
  294. package/dist/browser/virtualizer.d.ts +33 -0
  295. package/dist/browser/virtualizer.js +179 -0
  296. package/dist/browser/virtualizer.js.map +1 -0
  297. package/dist/server/autocomplete.js +125 -0
  298. package/dist/server/autocomplete.js.map +1 -0
  299. package/dist/server/breadcrumbs.js +185 -0
  300. package/dist/server/breadcrumbs.js.map +1 -0
  301. package/dist/server/button.js +252 -0
  302. package/dist/server/button.js.map +1 -0
  303. package/dist/server/calendar.js +1054 -0
  304. package/dist/server/calendar.js.map +1 -0
  305. package/dist/server/checkbox.js +595 -0
  306. package/dist/server/checkbox.js.map +1 -0
  307. package/dist/server/collection-dnd.js +217 -0
  308. package/dist/server/collection-dnd.js.map +1 -0
  309. package/dist/server/collection.js +106 -0
  310. package/dist/server/collection.js.map +1 -0
  311. package/dist/server/color-area.js +142 -0
  312. package/dist/server/color-area.js.map +1 -0
  313. package/dist/server/color-field.js +394 -0
  314. package/dist/server/color-field.js.map +1 -0
  315. package/dist/server/color-picker.js +170 -0
  316. package/dist/server/color-picker.js.map +1 -0
  317. package/dist/server/color-slider.js +328 -0
  318. package/dist/server/color-slider.js.map +1 -0
  319. package/dist/server/color-swatch-picker.js +234 -0
  320. package/dist/server/color-swatch-picker.js.map +1 -0
  321. package/dist/server/color-swatch.js +52 -0
  322. package/dist/server/color-swatch.js.map +1 -0
  323. package/dist/server/color-thumb.js +132 -0
  324. package/dist/server/color-thumb.js.map +1 -0
  325. package/dist/server/color-wheel.js +188 -0
  326. package/dist/server/color-wheel.js.map +1 -0
  327. package/dist/server/combo-box.js +914 -0
  328. package/dist/server/combo-box.js.map +1 -0
  329. package/dist/server/create-drag-and-drop.js +56 -0
  330. package/dist/server/create-drag-and-drop.js.map +1 -0
  331. package/dist/server/date-field.js +1055 -0
  332. package/dist/server/date-field.js.map +1 -0
  333. package/dist/server/date-picker.js +1079 -0
  334. package/dist/server/date-picker.js.map +1 -0
  335. package/dist/server/dialog.js +295 -0
  336. package/dist/server/dialog.js.map +1 -0
  337. package/dist/server/disclosure.js +292 -0
  338. package/dist/server/disclosure.js.map +1 -0
  339. package/dist/server/drag-and-drop.js +66 -0
  340. package/dist/server/drag-and-drop.js.map +1 -0
  341. package/dist/server/drop-zone.js +241 -0
  342. package/dist/server/drop-zone.js.map +1 -0
  343. package/dist/server/field-error.js +90 -0
  344. package/dist/server/field-error.js.map +1 -0
  345. package/dist/server/file-trigger.js +98 -0
  346. package/dist/server/file-trigger.js.map +1 -0
  347. package/dist/server/form.js +116 -0
  348. package/dist/server/form.js.map +1 -0
  349. package/dist/server/grid-layout.js +30 -0
  350. package/dist/server/grid-layout.js.map +1 -0
  351. package/dist/server/grid-list.js +1015 -0
  352. package/dist/server/grid-list.js.map +1 -0
  353. package/dist/server/group.js +146 -0
  354. package/dist/server/group.js.map +1 -0
  355. package/dist/server/header.js +72 -0
  356. package/dist/server/header.js.map +1 -0
  357. package/dist/server/heading.js +68 -0
  358. package/dist/server/heading.js.map +1 -0
  359. package/dist/server/hidden-date-input.js +79 -0
  360. package/dist/server/hidden-date-input.js.map +1 -0
  361. package/dist/server/index.js +98 -0
  362. package/dist/server/input.js +134 -0
  363. package/dist/server/input.js.map +1 -0
  364. package/dist/server/intl/ar-AE.js +11 -0
  365. package/dist/server/intl/ar-AE.js.map +1 -0
  366. package/dist/server/intl/bg-BG.js +11 -0
  367. package/dist/server/intl/bg-BG.js.map +1 -0
  368. package/dist/server/intl/cs-CZ.js +11 -0
  369. package/dist/server/intl/cs-CZ.js.map +1 -0
  370. package/dist/server/intl/da-DK.js +11 -0
  371. package/dist/server/intl/da-DK.js.map +1 -0
  372. package/dist/server/intl/de-DE.js +11 -0
  373. package/dist/server/intl/de-DE.js.map +1 -0
  374. package/dist/server/intl/el-GR.js +11 -0
  375. package/dist/server/intl/el-GR.js.map +1 -0
  376. package/dist/server/intl/en-US.js +11 -0
  377. package/dist/server/intl/en-US.js.map +1 -0
  378. package/dist/server/intl/es-ES.js +11 -0
  379. package/dist/server/intl/es-ES.js.map +1 -0
  380. package/dist/server/intl/et-EE.js +11 -0
  381. package/dist/server/intl/et-EE.js.map +1 -0
  382. package/dist/server/intl/fi-FI.js +11 -0
  383. package/dist/server/intl/fi-FI.js.map +1 -0
  384. package/dist/server/intl/fr-FR.js +11 -0
  385. package/dist/server/intl/fr-FR.js.map +1 -0
  386. package/dist/server/intl/he-IL.js +11 -0
  387. package/dist/server/intl/he-IL.js.map +1 -0
  388. package/dist/server/intl/hr-HR.js +11 -0
  389. package/dist/server/intl/hr-HR.js.map +1 -0
  390. package/dist/server/intl/hu-HU.js +11 -0
  391. package/dist/server/intl/hu-HU.js.map +1 -0
  392. package/dist/server/intl/index.js +75 -0
  393. package/dist/server/intl/index.js.map +1 -0
  394. package/dist/server/intl/it-IT.js +11 -0
  395. package/dist/server/intl/it-IT.js.map +1 -0
  396. package/dist/server/intl/ja-JP.js +11 -0
  397. package/dist/server/intl/ja-JP.js.map +1 -0
  398. package/dist/server/intl/ko-KR.js +11 -0
  399. package/dist/server/intl/ko-KR.js.map +1 -0
  400. package/dist/server/intl/lt-LT.js +11 -0
  401. package/dist/server/intl/lt-LT.js.map +1 -0
  402. package/dist/server/intl/lv-LV.js +11 -0
  403. package/dist/server/intl/lv-LV.js.map +1 -0
  404. package/dist/server/intl/nb-NO.js +11 -0
  405. package/dist/server/intl/nb-NO.js.map +1 -0
  406. package/dist/server/intl/nl-NL.js +11 -0
  407. package/dist/server/intl/nl-NL.js.map +1 -0
  408. package/dist/server/intl/pl-PL.js +11 -0
  409. package/dist/server/intl/pl-PL.js.map +1 -0
  410. package/dist/server/intl/pt-BR.js +11 -0
  411. package/dist/server/intl/pt-BR.js.map +1 -0
  412. package/dist/server/intl/pt-PT.js +11 -0
  413. package/dist/server/intl/pt-PT.js.map +1 -0
  414. package/dist/server/intl/ro-RO.js +11 -0
  415. package/dist/server/intl/ro-RO.js.map +1 -0
  416. package/dist/server/intl/ru-RU.js +11 -0
  417. package/dist/server/intl/ru-RU.js.map +1 -0
  418. package/dist/server/intl/sk-SK.js +11 -0
  419. package/dist/server/intl/sk-SK.js.map +1 -0
  420. package/dist/server/intl/sl-SI.js +11 -0
  421. package/dist/server/intl/sl-SI.js.map +1 -0
  422. package/dist/server/intl/sr-SP.js +11 -0
  423. package/dist/server/intl/sr-SP.js.map +1 -0
  424. package/dist/server/intl/sv-SE.js +11 -0
  425. package/dist/server/intl/sv-SE.js.map +1 -0
  426. package/dist/server/intl/tr-TR.js +11 -0
  427. package/dist/server/intl/tr-TR.js.map +1 -0
  428. package/dist/server/intl/uk-UA.js +11 -0
  429. package/dist/server/intl/uk-UA.js.map +1 -0
  430. package/dist/server/intl/zh-CN.js +11 -0
  431. package/dist/server/intl/zh-CN.js.map +1 -0
  432. package/dist/server/intl/zh-TW.js +11 -0
  433. package/dist/server/intl/zh-TW.js.map +1 -0
  434. package/dist/server/keyboard.js +65 -0
  435. package/dist/server/keyboard.js.map +1 -0
  436. package/dist/server/label.js +68 -0
  437. package/dist/server/label.js.map +1 -0
  438. package/dist/server/link.js +138 -0
  439. package/dist/server/link.js.map +1 -0
  440. package/dist/server/list-box.js +906 -0
  441. package/dist/server/list-box.js.map +1 -0
  442. package/dist/server/menu.js +1188 -0
  443. package/dist/server/menu.js.map +1 -0
  444. package/dist/server/meter.js +101 -0
  445. package/dist/server/meter.js.map +1 -0
  446. package/dist/server/modal.js +360 -0
  447. package/dist/server/modal.js.map +1 -0
  448. package/dist/server/navigation-tree.js +316 -0
  449. package/dist/server/navigation-tree.js.map +1 -0
  450. package/dist/server/number-field.js +371 -0
  451. package/dist/server/number-field.js.map +1 -0
  452. package/dist/server/overlay-arrow.js +81 -0
  453. package/dist/server/overlay-arrow.js.map +1 -0
  454. package/dist/server/overlay-contexts.js +24 -0
  455. package/dist/server/overlay-contexts.js.map +1 -0
  456. package/dist/server/popover.js +455 -0
  457. package/dist/server/popover.js.map +1 -0
  458. package/dist/server/preview-trigger.js +153 -0
  459. package/dist/server/preview-trigger.js.map +1 -0
  460. package/dist/server/progress-bar.js +104 -0
  461. package/dist/server/progress-bar.js.map +1 -0
  462. package/dist/server/radio-group.js +586 -0
  463. package/dist/server/radio-group.js.map +1 -0
  464. package/dist/server/search-field.js +288 -0
  465. package/dist/server/search-field.js.map +1 -0
  466. package/dist/server/select.js +771 -0
  467. package/dist/server/select.js.map +1 -0
  468. package/dist/server/selection-indicator.js +54 -0
  469. package/dist/server/selection-indicator.js.map +1 -0
  470. package/dist/server/separator.js +91 -0
  471. package/dist/server/separator.js.map +1 -0
  472. package/dist/server/shared-element-transition.js +189 -0
  473. package/dist/server/shared-element-transition.js.map +1 -0
  474. package/dist/server/sheet.js +1197 -0
  475. package/dist/server/sheet.js.map +1 -0
  476. package/dist/server/slider.js +581 -0
  477. package/dist/server/slider.js.map +1 -0
  478. package/dist/server/switch.js +400 -0
  479. package/dist/server/switch.js.map +1 -0
  480. package/dist/server/table-layout.js +31 -0
  481. package/dist/server/table-layout.js.map +1 -0
  482. package/dist/server/table.js +2075 -0
  483. package/dist/server/table.js.map +1 -0
  484. package/dist/server/tabs.js +668 -0
  485. package/dist/server/tabs.js.map +1 -0
  486. package/dist/server/tag-group.js +538 -0
  487. package/dist/server/tag-group.js.map +1 -0
  488. package/dist/server/text-area.js +115 -0
  489. package/dist/server/text-area.js.map +1 -0
  490. package/dist/server/text-field.js +272 -0
  491. package/dist/server/text-field.js.map +1 -0
  492. package/dist/server/text.js +67 -0
  493. package/dist/server/text.js.map +1 -0
  494. package/dist/server/toast.js +449 -0
  495. package/dist/server/toast.js.map +1 -0
  496. package/dist/server/toggle-button-group.js +125 -0
  497. package/dist/server/toggle-button-group.js.map +1 -0
  498. package/dist/server/toggle-button.js +183 -0
  499. package/dist/server/toggle-button.js.map +1 -0
  500. package/dist/server/token-field.js +457 -0
  501. package/dist/server/token-field.js.map +1 -0
  502. package/dist/server/toolbar.js +67 -0
  503. package/dist/server/toolbar.js.map +1 -0
  504. package/dist/server/tooltip.js +331 -0
  505. package/dist/server/tooltip.js.map +1 -0
  506. package/dist/server/tree-drop-target-delegate.js +178 -0
  507. package/dist/server/tree-drop-target-delegate.js.map +1 -0
  508. package/dist/server/tree.js +1096 -0
  509. package/dist/server/tree.js.map +1 -0
  510. package/dist/server/utils.js +184 -0
  511. package/dist/server/utils.js.map +1 -0
  512. package/dist/server/virtualizer.js +254 -0
  513. package/dist/server/virtualizer.js.map +1 -0
  514. package/package.json +437 -4
@@ -0,0 +1,1268 @@
1
+ /*
2
+ * Derived from Adobe React Spectrum: packages/react-aria-components/src/Table.tsx.
3
+ * Modified for Solid Aria: preserve table collection, sorting and sizing algorithms with Solid contexts, collection descriptors and reactive accessibility primitives; uses Solid class props.
4
+ * Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
5
+ */
6
+ import { DEFAULT_SLOT, assignRef, createContextProps, createRenderProps, dom } from "./utils.js";
7
+ import { CollectionRendererContext, DefaultCollectionRenderer } from "./collection.js";
8
+ import { ButtonContext } from "./button.js";
9
+ import { SelectionIndicatorContext } from "./selection-indicator.js";
10
+ import { CheckboxContext, CheckboxFieldContext } from "./checkbox.js";
11
+ import { DragAndDropContext, DropIndicatorContext, createDndPersistedKeys, createRenderDropIndicator } from "./drag-and-drop.js";
12
+ import { CollectionDropIndicator, createCollectionDragAndDrop } from "./collection-dnd.js";
13
+ import intl_default from "./intl/index.js";
14
+ import { RootDropIndicator } from "./grid-list.js";
15
+ import { TreeDropTargetDelegate } from "./tree-drop-target-delegate.js";
16
+ import { Portal, applyRef, createComponent, dynamic, effect, getNextElement, memo, mergeProps, ref, runHydrationEvents, setAttribute, setStyleProperty, spread, template } from "@solidjs/web";
17
+ import { mergeProps as mergeProps$1 } from "@solid2-aria/core/utils/merge-props";
18
+ import { createContext, createMemo, createSignal, merge, omit, onSettled, untrack, useContext } from "solid-js";
19
+ import { requireValue } from "@solid2-aria/core/utils/require-value";
20
+ import { BaseCollection, CollectionNode, FilterableNode, LoaderNode } from "@solid2-aria/core/collections/base-collection";
21
+ import { Collection, CollectionBuilder, createBranchComponent, createLeafComponent } from "@solid2-aria/core/collections/collection-builder";
22
+ import { filterDOMProps } from "@solid2-aria/core/utils/filter-dom-props";
23
+ import { createCachedChildren } from "@solid2-aria/core/collections/create-cached-children";
24
+ import { createFocusRing } from "@solid2-aria/core/focus/create-focus-ring";
25
+ import { createHover } from "@solid2-aria/core/interactions/create-hover";
26
+ import { isTruthy } from "@solid2-aria/core/utils/truthy";
27
+ import { createLocale } from "@solid2-aria/core/i18n/i18n-provider";
28
+ import { isPresent } from "@solid2-aria/core/utils/is-present";
29
+ import { createLocalizedStringFormatter } from "@solid2-aria/core/i18n/create-localized-string-formatter";
30
+ import { createLoadMoreSentinel } from "@solid2-aria/core/utils/create-load-more-sentinel";
31
+ import { createTable } from "@solid2-aria/core/table/create-table";
32
+ import { createTableCell } from "@solid2-aria/core/table/create-table-cell";
33
+ import { createTableColumnHeader } from "@solid2-aria/core/table/create-table-column-header";
34
+ import { createTableColumnResize } from "@solid2-aria/core/table/create-table-column-resize";
35
+ import { createTableHeaderRow } from "@solid2-aria/core/table/create-table-header-row";
36
+ import { createTableRow } from "@solid2-aria/core/table/create-table-row";
37
+ import { createTableRowGroup } from "@solid2-aria/core/table/create-table-row-group";
38
+ import { createTableSelectAllCheckbox, createTableSelectionCheckbox } from "@solid2-aria/core/table/create-table-selection-checkbox";
39
+ import { createTableColumnResizeState } from "@solid2-aria/stately/table/create-table-column-resize-state";
40
+ import { createTableState } from "@solid2-aria/stately/table/create-table-state";
41
+ import { buildHeaderRows } from "@solid2-aria/stately/table/table-collection";
42
+ import { createControlledSignal } from "@solid2-aria/stately/utils/create-controlled-signal";
43
+ import { getNodeProps } from "@solid2-aria/stately/utils/get-node-props";
44
+ // src/table.tsx
45
+ var _tmpl$ = /* @__PURE__ */ template(`<input>`);
46
+ var _tmpl$2 = /* @__PURE__ */ template(`<div data-testid=cursor-overlay style=bottom:0;left:0;position:fixed;right:0;top:0>`);
47
+ var _tmpl$3 = /* @__PURE__ */ template(`<tr inert style=height:0><td style=height:0;padding:0><div style=height:1px;width:1px>`);
48
+ var TableHeaderNode = class extends CollectionNode {
49
+ static type = "tableheader";
50
+ };
51
+ var TableColumnNode = class extends CollectionNode {
52
+ static type = "column";
53
+ };
54
+ var TableBodyNode = class extends FilterableNode {
55
+ static type = "tablebody";
56
+ };
57
+ var TableFooterNode = class extends FilterableNode {
58
+ static type = "tablefooter";
59
+ };
60
+ var TableRowNode = class extends CollectionNode {
61
+ static type = "item";
62
+ filter(collection, newCollection, filterFn) {
63
+ for (const cell of collection.getChildren(this.key)) if (filterFn(cell.textValue, cell)) {
64
+ const clone = this.clone();
65
+ newCollection.addDescendants(clone, collection);
66
+ return clone;
67
+ }
68
+ return null;
69
+ }
70
+ };
71
+ var TableCellNode = class extends CollectionNode {
72
+ static type = "cell";
73
+ };
74
+ var TableCollection = class extends BaseCollection {
75
+ headerRows = [];
76
+ columns = [];
77
+ rows = [];
78
+ rowHeaderColumnKeys = /* @__PURE__ */ new Set();
79
+ head = new TableHeaderNode(-1);
80
+ columnsDirty = true;
81
+ expandedKeys = /* @__PURE__ */ new Set();
82
+ withExpandedKeys(expandedKeys) {
83
+ const collection = this.clone();
84
+ collection.expandedKeys = expandedKeys;
85
+ collection.frozen = this.frozen;
86
+ collection.rows = [...collection.getRows()];
87
+ return collection;
88
+ }
89
+ addNode(node) {
90
+ super.addNode(node);
91
+ this.columnsDirty ||= node.type === "column";
92
+ if (node.type === "tableheader") this.head = node;
93
+ }
94
+ getRows() {
95
+ const rows = [];
96
+ for (const child of this) if (child.type === "tablebody" || child.type === "tablefooter") rows.push(...this.getChildren(child.key));
97
+ return rows;
98
+ }
99
+ get body() {
100
+ for (const child of this) if (child.type === "tablebody") return child;
101
+ return new TableBodyNode(-2);
102
+ }
103
+ commit(firstKey, lastKey, isSSR = false) {
104
+ this.updateColumns(isSSR);
105
+ this.firstKey = firstKey;
106
+ this.lastKey = lastKey;
107
+ this.rows = [];
108
+ for (const row of this.getRows()) {
109
+ const { lastChildKey } = row;
110
+ if (isPresent(lastChildKey)) {
111
+ let lastCell = this.getItem(lastChildKey);
112
+ while (lastCell && lastCell.type !== "cell") lastCell = isPresent(lastCell.prevKey) ? this.getItem(lastCell.prevKey) : null;
113
+ if (lastCell) {
114
+ const numberOfCellsInRow = (lastCell.colIndex ?? lastCell.index) + (lastCell.colSpan ?? 1);
115
+ if (numberOfCellsInRow !== this.columns.length && !isSSR) throw new Error(`Cell count must match column count. Found ${numberOfCellsInRow} cells and ${this.columns.length} columns.`);
116
+ }
117
+ }
118
+ this.rows.push(row);
119
+ }
120
+ super.commit(firstKey, lastKey, isSSR);
121
+ }
122
+ updateColumns(isSSR) {
123
+ if (!this.columnsDirty) return;
124
+ this.rowHeaderColumnKeys = /* @__PURE__ */ new Set();
125
+ this.columns = [];
126
+ const columnKeyMap = /* @__PURE__ */ new Map();
127
+ const visit = (node) => {
128
+ switch (node.type) {
129
+ case "column":
130
+ columnKeyMap.set(node.key, node);
131
+ if (!node.hasChildNodes) {
132
+ node.index = this.columns.length;
133
+ this.columns.push(node);
134
+ if (isTruthy(getNodeProps(node).isRowHeader)) this.rowHeaderColumnKeys.add(node.key);
135
+ }
136
+ }
137
+ for (const child of this.getChildren(node.key)) visit(child);
138
+ };
139
+ for (const node of this.getChildren(this.head.key)) visit(node);
140
+ this.headerRows = buildHeaderRows(columnKeyMap, this.columns);
141
+ this.columnsDirty = false;
142
+ if (this.rowHeaderColumnKeys.size === 0 && this.columns.length > 0 && !isSSR) throw new Error("A table must have at least one Column with the isRowHeader prop set to true");
143
+ }
144
+ get columnCount() {
145
+ return this.columns.length;
146
+ }
147
+ *[Symbol.iterator]() {
148
+ let key = this.firstKey;
149
+ while (isPresent(key)) {
150
+ const node = this.getItem(key);
151
+ if (node) yield node;
152
+ key = node?.nextKey ?? null;
153
+ }
154
+ }
155
+ getFirstKey() {
156
+ for (const child of this) if (child.type === "tablebody") return child.firstChildKey ?? null;
157
+ return null;
158
+ }
159
+ getLastKey() {
160
+ const key = this.lastKey;
161
+ if (!isPresent(key)) return null;
162
+ let node = requireValue(this.getItem(key), "Expected this.getItem(key)");
163
+ while (isPresent(node?.lastChildKey) && (node.type !== "item" || this.expandedKeys.has(node.key))) node = requireValue(this.getItem(node.lastChildKey), "Expected this.getItem(node.lastChildKey)");
164
+ return node?.key;
165
+ }
166
+ getKeyAfter(key) {
167
+ const node = requireValue(this.getItem(key), "Expected this.getItem(key)");
168
+ if (node?.type === "column") return node.nextKey ?? null;
169
+ if (!isTruthy(node)) return null;
170
+ if (node.type === "item" && isPresent(node.firstChildKey) && this.expandedKeys.has(node.key)) {
171
+ let child = this.getItem(node.firstChildKey);
172
+ while (child) {
173
+ if (child.type === "item") return child.key;
174
+ child = isPresent(child.nextKey) ? this.getItem(child.nextKey) : null;
175
+ }
176
+ }
177
+ return super.getKeyAfter(key);
178
+ }
179
+ getKeyBefore(key) {
180
+ let node = requireValue(this.getItem(key), "Expected this.getItem(key)");
181
+ if (node?.type === "column") return node.prevKey ?? null;
182
+ if (!isTruthy(node)) return null;
183
+ let k = null;
184
+ if (isPresent(node.prevKey)) {
185
+ node = requireValue(this.getItem(node.prevKey), "Expected this.getItem(node.prevKey)");
186
+ while (Boolean(node) && (node.type !== "item" || this.expandedKeys.has(node.key)) && isPresent(node.lastChildKey)) node = requireValue(this.getItem(node.lastChildKey), "Expected this.getItem(node.lastChildKey)");
187
+ k = node?.key ?? null;
188
+ }
189
+ k ??= node.parentKey;
190
+ if (isPresent(k) && this.getItem(k)?.type === "tableheader") return null;
191
+ return k;
192
+ }
193
+ *headerChildren(key) {
194
+ const header = this.headerRows.find((row) => row.key === key);
195
+ if (!header) return;
196
+ for (const child of header.childNodes) yield child instanceof CollectionNode ? child : Object.assign(new CollectionNode(child.key), child);
197
+ }
198
+ *getChildren(key) {
199
+ const parent = this.getItem(key);
200
+ if (!parent) {
201
+ yield* this.headerChildren(key);
202
+ return;
203
+ }
204
+ let node = isPresent(parent?.firstChildKey) ? this.getItem(parent.firstChildKey) : null;
205
+ const flattenRows = parent?.type === "tablebody" || parent?.type === "tablefooter";
206
+ while (node) {
207
+ yield node;
208
+ const nextKey = flattenRows ? this.getKeyAfter(node.key) : node.nextKey;
209
+ node = isPresent(nextKey) ? this.getItem(nextKey) : null;
210
+ if (flattenRows && node?.parentKey === parent?.parentKey) break;
211
+ if (!flattenRows && parent?.type === "item" && node?.type !== "cell") break;
212
+ }
213
+ }
214
+ clone() {
215
+ const collection = super.clone();
216
+ collection.headerRows = this.headerRows;
217
+ collection.columns = this.columns;
218
+ collection.rows = this.rows;
219
+ collection.rowHeaderColumnKeys = this.rowHeaderColumnKeys;
220
+ collection.head = this.head;
221
+ return collection;
222
+ }
223
+ getTextValue(key) {
224
+ const row = this.getItem(key);
225
+ if (!row) return "";
226
+ if (row.textValue) return row.textValue;
227
+ const { rowHeaderColumnKeys } = this;
228
+ const text = [];
229
+ for (const cell of this.getChildren(key)) {
230
+ const column = this.columns[cell.index];
231
+ if (column && rowHeaderColumnKeys.has(column.key) && cell.textValue) text.push(cell.textValue);
232
+ if (text.length === rowHeaderColumnKeys.size) break;
233
+ }
234
+ return text.join(" ");
235
+ }
236
+ };
237
+ const TableContext = createContext(null);
238
+ const TableStateContext = createContext(null);
239
+ const TableColumnResizeStateContext = createContext(null);
240
+ const RowFocusContext = createContext({ isFocusVisibleWithinRow: false });
241
+ const TableOptionsContext = createContext(null);
242
+ const ResizableTableContainerContext = createContext(null);
243
+ const ColumnResizerContext = createContext(null);
244
+ function createTableOptions() {
245
+ const options = useContext(TableOptionsContext);
246
+ if (!options) throw new Error("Table options require a Table.");
247
+ return options;
248
+ }
249
+ function ResizableTableContainer(props) {
250
+ const [ref, setRef] = createSignal(null, { ownedWrite: true });
251
+ const [tableRef, setTableRef] = createSignal(null, { ownedWrite: true });
252
+ const [width, setWidth] = createSignal(0);
253
+ onSettled(() => {
254
+ let measured = tableRef();
255
+ while (measured && measured !== ref() && measured.scrollWidth <= measured.clientWidth) measured = measured.parentElement;
256
+ measured ??= ref();
257
+ if (!measured) return;
258
+ const element = measured;
259
+ setWidth(element.clientWidth);
260
+ const observer = new ResizeObserver(() => {
261
+ setWidth(element.clientWidth);
262
+ });
263
+ observer.observe(element, { box: "border-box" });
264
+ return () => {
265
+ observer.disconnect();
266
+ };
267
+ });
268
+ const context = mergeProps$1(props, {
269
+ setTableRef: (element) => {
270
+ setTableRef(element);
271
+ },
272
+ tableRef,
273
+ get tableWidth() {
274
+ return width();
275
+ }
276
+ });
277
+ return createComponent(dom.div, mergeProps(() => {
278
+ return filterDOMProps(props, { global: true });
279
+ }, {
280
+ get render() {
281
+ return props.render;
282
+ },
283
+ get "class"() {
284
+ return props.class ?? "solid2-aria-ResizableTableContainer";
285
+ },
286
+ get style() {
287
+ return props.style;
288
+ },
289
+ ref: [(element) => {
290
+ setRef(element);
291
+ }, (element) => {
292
+ assignRef(untrack(() => props.ref), element);
293
+ }],
294
+ get children() {
295
+ return createComponent(ResizableTableContainerContext, {
296
+ value: context,
297
+ get children() {
298
+ return props.children;
299
+ }
300
+ });
301
+ }
302
+ }));
303
+ }
304
+ function Table(input) {
305
+ const [props, ref, setRef] = createContextProps(input, untrack(() => input.ref), TableContext);
306
+ return createComponent(CollectionBuilder, {
307
+ createCollection: () => new TableCollection(),
308
+ get content() {
309
+ return createComponent(Collection, { get children() {
310
+ return props.children;
311
+ } });
312
+ },
313
+ children: (collection) => createComponent(TableInner, {
314
+ props,
315
+ collection,
316
+ elementRef: ref,
317
+ setElementRef: (element) => {
318
+ setRef(element);
319
+ }
320
+ })
321
+ });
322
+ }
323
+ function TableInner(outer) {
324
+ const { props } = untrack(() => outer);
325
+ const renderer = useContext(CollectionRendererContext);
326
+ const container = useContext(ResizableTableContainerContext);
327
+ const [expanded, setExpanded] = createControlledSignal(() => props.expandedKeys ? new Set(props.expandedKeys) : void 0, new Set(props.defaultExpandedKeys), (keys) => {
328
+ props.onExpandedChange?.(keys);
329
+ });
330
+ const collection = createMemo(() => outer.collection.withExpandedKeys(expanded()));
331
+ const state = createTableState(mergeProps$1(props, {
332
+ children: void 0,
333
+ get collection() {
334
+ return collection();
335
+ },
336
+ get expandedKeys() {
337
+ return expanded();
338
+ },
339
+ onExpandedChange: setExpanded
340
+ }));
341
+ const aria = createTable(mergeProps$1(props, {
342
+ get isVirtualized() {
343
+ return renderer.isVirtualized;
344
+ },
345
+ get layoutDelegate() {
346
+ return renderer.layoutDelegate;
347
+ }
348
+ }), state, untrack(() => outer.elementRef));
349
+ const resize = container ? createTableColumnResizeState({ get tableWidth() {
350
+ return container.tableWidth;
351
+ } }, state) : null;
352
+ const locale = createLocale();
353
+ const treeDelegate = new TreeDropTargetDelegate();
354
+ if (props.dragAndDropHooks?.createDroppableCollectionState) {
355
+ const hooks = props.dragAndDropHooks;
356
+ treeDelegate.setup(hooks.dropTargetDelegate ?? renderer.dropTargetDelegate ?? new hooks.ListDropTargetDelegate({ [Symbol.iterator]() {
357
+ return state.collection.rows[Symbol.iterator]();
358
+ } }, untrack(() => outer.elementRef)), state, locale.direction);
359
+ }
360
+ const dnd = createCollectionDragAndDrop({
361
+ get collection() {
362
+ return state.collection;
363
+ },
364
+ get dropTargetCollection() {
365
+ return state.collection.rows;
366
+ },
367
+ dropTargetDelegate: treeDelegate,
368
+ get hooks() {
369
+ return props.dragAndDropHooks;
370
+ },
371
+ get ref() {
372
+ return outer.elementRef;
373
+ },
374
+ get selectionManager() {
375
+ return state.selectionManager;
376
+ }
377
+ });
378
+ const focus = createFocusRing();
379
+ const values = {
380
+ get isDropTarget() {
381
+ return dnd.dropState?.isDropTarget({ type: "root" }) === true;
382
+ },
383
+ get isFocusVisible() {
384
+ return focus.isFocusVisible;
385
+ },
386
+ get isFocused() {
387
+ return focus.isFocused;
388
+ },
389
+ state
390
+ };
391
+ const render = createRenderProps(mergeProps$1(props, {
392
+ children: void 0,
393
+ defaultClass: "solid2-aria-Table",
394
+ values
395
+ }));
396
+ const Root = renderer.CollectionRoot;
397
+ const Tag = dynamic(() => renderer.isVirtualized === true ? dom.div : dom.table);
398
+ const options = {
399
+ get allowsDragging() {
400
+ return !!dnd.dragState;
401
+ },
402
+ get disallowEmptySelection() {
403
+ return props.disallowEmptySelection === true;
404
+ },
405
+ get selectionBehavior() {
406
+ return state.selectionManager.selectionMode === "none" ? null : state.selectionManager.selectionBehavior;
407
+ },
408
+ get selectionMode() {
409
+ return state.selectionManager.selectionMode;
410
+ }
411
+ };
412
+ return createComponent(Tag, mergeProps(() => {
413
+ return mergeProps$1(filterDOMProps(props, { global: true }), render, merge(() => aria.gridProps ?? {}), merge(() => focus.focusProps ?? {}), merge(() => dnd.collectionProps ?? {}));
414
+ }, {
415
+ ref: (element) => {
416
+ outer.setElementRef(element);
417
+ if (container) container.setTableRef(element);
418
+ },
419
+ get slot() {
420
+ return props.slot ?? void 0;
421
+ },
422
+ get "data-focused"() {
423
+ return focus.isFocused || void 0;
424
+ },
425
+ get "data-focus-visible"() {
426
+ return focus.isFocusVisible || void 0;
427
+ },
428
+ get "data-drop-target"() {
429
+ return values.isDropTarget || void 0;
430
+ },
431
+ get children() {
432
+ return [createComponent(TableStateContext, {
433
+ value: state,
434
+ get children() {
435
+ return createComponent(TableColumnResizeStateContext, {
436
+ value: resize,
437
+ get children() {
438
+ return createComponent(TableOptionsContext, {
439
+ value: options,
440
+ get children() {
441
+ return createComponent(DragAndDropContext, {
442
+ value: dnd,
443
+ get children() {
444
+ return createComponent(DropIndicatorContext, {
445
+ value: { render: (indicatorProps, ref) => createComponent(CollectionDropIndicator, mergeProps(indicatorProps, {
446
+ ref(r$) {
447
+ var _ref$ = ref;
448
+ typeof _ref$ === "function" || Array.isArray(_ref$) ? applyRef(_ref$, r$) : ref = r$;
449
+ },
450
+ get table() {
451
+ return !(renderer.isVirtualized === true);
452
+ },
453
+ get columnCount() {
454
+ return state.collection.columnCount;
455
+ }
456
+ })) },
457
+ get children() {
458
+ return createComponent(Root, {
459
+ get collection() {
460
+ return state.collection;
461
+ },
462
+ get scrollRef() {
463
+ return outer.elementRef;
464
+ },
465
+ get persistedKeys() {
466
+ return createDndPersistedKeys(state.selectionManager, props.dragAndDropHooks, dnd.dropState);
467
+ }
468
+ });
469
+ }
470
+ });
471
+ }
472
+ });
473
+ }
474
+ });
475
+ }
476
+ });
477
+ }
478
+ }), memo(() => {
479
+ return dnd.preview;
480
+ })];
481
+ }
482
+ }));
483
+ }
484
+ const TableHeader = createBranchComponent(TableHeaderNode, (props, ref, _node) => {
485
+ const state = requireValue(useContext(TableStateContext), "Expected useContext(TableStateContext)");
486
+ const renderer = useContext(CollectionRendererContext);
487
+ const Tag = dynamic(() => renderer.isVirtualized === true ? dom.div : dom.thead);
488
+ const hover = createHover(props);
489
+ const group = createTableRowGroup();
490
+ const render = createRenderProps(mergeProps$1(props, {
491
+ children: void 0,
492
+ defaultClass: "solid2-aria-TableHeader",
493
+ values: { get isHovered() {
494
+ return hover.isHovered;
495
+ } }
496
+ }));
497
+ const rows = createCachedChildren({
498
+ children: (item) => createComponent(TableHeaderRow, { item }),
499
+ get items() {
500
+ return state.collection.headerRows;
501
+ }
502
+ });
503
+ return createComponent(Tag, mergeProps(() => {
504
+ return mergeProps$1(filterDOMProps(props, { global: true }), merge(() => group.rowGroupProps ?? {}), merge(() => hover.hoverProps ?? {}), render);
505
+ }, {
506
+ ref(r$) {
507
+ var _ref$2 = ref;
508
+ typeof _ref$2 === "function" || Array.isArray(_ref$2) ? applyRef(_ref$2, r$) : ref = r$;
509
+ },
510
+ get "data-hovered"() {
511
+ return hover.isHovered || void 0;
512
+ },
513
+ get children() {
514
+ return rows();
515
+ }
516
+ }));
517
+ }, (props) => createComponent(Collection, {
518
+ get items() {
519
+ return props.columns;
520
+ },
521
+ get dependencies() {
522
+ return props.dependencies;
523
+ },
524
+ get children() {
525
+ return props.children;
526
+ }
527
+ }));
528
+ function TableHeaderRow(props) {
529
+ const state = requireValue(useContext(TableStateContext), "Expected useContext(TableStateContext)");
530
+ const renderer = useContext(CollectionRendererContext);
531
+ const [ref, setRef] = createSignal(null, { ownedWrite: true });
532
+ const Tag = dynamic(() => renderer.isVirtualized === true ? dom.div : dom.tr);
533
+ const Branch = renderer.CollectionBranch;
534
+ const aria = createTableHeaderRow({
535
+ isVirtualized: renderer.isVirtualized,
536
+ get node() {
537
+ return props.item;
538
+ }
539
+ }, state, ref);
540
+ const checkbox = createTableSelectAllCheckbox(state);
541
+ return createComponent(Tag, mergeProps(() => {
542
+ return aria.rowProps;
543
+ }, {
544
+ ref: (element) => {
545
+ setRef(element);
546
+ },
547
+ get children() {
548
+ return createComponent(CheckboxContext, {
549
+ value: { slots: { get selection() {
550
+ return checkbox.checkboxProps;
551
+ } } },
552
+ get children() {
553
+ return createComponent(CheckboxFieldContext, {
554
+ value: { slots: { get selection() {
555
+ return checkbox.checkboxProps;
556
+ } } },
557
+ get children() {
558
+ return createComponent(Branch, {
559
+ get collection() {
560
+ return state.collection;
561
+ },
562
+ get parent() {
563
+ return props.item;
564
+ }
565
+ });
566
+ }
567
+ });
568
+ }
569
+ });
570
+ }
571
+ }));
572
+ }
573
+ const Column = createLeafComponent(TableColumnNode, (props, forwardedRef, column) => {
574
+ const state = requireValue(useContext(TableStateContext), "Expected useContext(TableStateContext)");
575
+ const renderer = useContext(CollectionRendererContext);
576
+ const resize = useContext(TableColumnResizeStateContext);
577
+ const [ref, setRef] = createSignal(null, { ownedWrite: true });
578
+ const Tag = dynamic(() => renderer.isVirtualized === true ? dom.div : dom.th);
579
+ const aria = createTableColumnHeader({
580
+ get allowsArrowNavigation() {
581
+ return props.allowsArrowNavigation;
582
+ },
583
+ get focusMode() {
584
+ return props.focusMode;
585
+ },
586
+ isVirtualized: renderer.isVirtualized,
587
+ node: column
588
+ }, state, ref);
589
+ const focus = createFocusRing();
590
+ const hover = createHover({ get isDisabled() {
591
+ return !(props.allowsSorting === true);
592
+ } });
593
+ const values = {
594
+ get allowsSorting() {
595
+ return isTruthy(getNodeProps(column).allowsSorting);
596
+ },
597
+ get isFocusVisible() {
598
+ return focus.isFocusVisible;
599
+ },
600
+ get isFocused() {
601
+ return focus.isFocused;
602
+ },
603
+ get isHovered() {
604
+ return hover.isHovered;
605
+ },
606
+ get isPressed() {
607
+ return aria.isPressed;
608
+ },
609
+ get isResizing() {
610
+ return resize?.resizingColumn === column.key;
611
+ },
612
+ sort: (direction) => {
613
+ state.sort(column.key, direction);
614
+ },
615
+ get sortDirection() {
616
+ return state.sortDescriptor?.column === column.key ? state.sortDescriptor.direction : void 0;
617
+ },
618
+ startResize: () => {
619
+ if (!resize) throw new Error("Wrap Table in ResizableTableContainer to enable resizing.");
620
+ resize.startResize(column.key);
621
+ state.setKeyboardNavigationDisabled(true);
622
+ }
623
+ };
624
+ const render = createRenderProps(mergeProps$1(props, {
625
+ get children() {
626
+ return column.rendered;
627
+ },
628
+ defaultClass: "solid2-aria-Column",
629
+ id: void 0,
630
+ values
631
+ }));
632
+ return createComponent(Tag, mergeProps(() => {
633
+ return mergeProps$1(omit(filterDOMProps(props, { global: true }), "id"), merge(() => aria.columnHeaderProps ?? {}), merge(() => focus.focusProps ?? {}), merge(() => hover.hoverProps ?? {}), render);
634
+ }, {
635
+ get style() {
636
+ return resize ? mergeProps$1(typeof render.style === "object" ? render.style : {}, { width: resize.getColumnWidth(column.key) }) : render.style;
637
+ },
638
+ ref: (element) => {
639
+ setRef(element);
640
+ },
641
+ get "data-hovered"() {
642
+ return hover.isHovered || void 0;
643
+ },
644
+ get "data-pressed"() {
645
+ return aria.isPressed || void 0;
646
+ },
647
+ get "data-focused"() {
648
+ return focus.isFocused || void 0;
649
+ },
650
+ get "data-focus-visible"() {
651
+ return focus.isFocusVisible || void 0;
652
+ },
653
+ get "data-resizing"() {
654
+ return values.isResizing || void 0;
655
+ },
656
+ get "data-allows-sorting"() {
657
+ return values.allowsSorting || void 0;
658
+ },
659
+ get "data-sort-direction"() {
660
+ return values.sortDirection;
661
+ },
662
+ get children() {
663
+ return createComponent(ColumnResizerContext, {
664
+ value: {
665
+ column,
666
+ triggerRef: ref
667
+ },
668
+ get children() {
669
+ return createComponent(CollectionRendererContext, {
670
+ value: DefaultCollectionRenderer,
671
+ get children() {
672
+ return render.children;
673
+ }
674
+ });
675
+ }
676
+ });
677
+ }
678
+ }));
679
+ });
680
+ function ColumnResizer(props) {
681
+ const resize = useContext(TableColumnResizeStateContext);
682
+ const column = useContext(ColumnResizerContext);
683
+ const container = useContext(ResizableTableContainerContext);
684
+ if (!resize || !column) throw new Error("ColumnResizer requires a column in ResizableTableContainer.");
685
+ const formatter = createLocalizedStringFormatter(intl_default, "@solid2-aria/components");
686
+ const [input, setInput] = createSignal(null, { ownedWrite: true });
687
+ const [ref$1, setRef] = createSignal(null, { ownedWrite: true });
688
+ const locale = createLocale();
689
+ const aria = createTableColumnResize(mergeProps$1(container ?? {}, {
690
+ get "aria-label"() {
691
+ return props["aria-label"] ?? formatter.format("tableResizer");
692
+ },
693
+ get column() {
694
+ return column.column;
695
+ },
696
+ get triggerRef() {
697
+ return column.triggerRef;
698
+ }
699
+ }), resize, input);
700
+ const focus = createFocusRing();
701
+ const hover = createHover(props);
702
+ const values = {
703
+ get isFocusVisible() {
704
+ return focus.isFocusVisible;
705
+ },
706
+ get isFocused() {
707
+ return focus.isFocused;
708
+ },
709
+ get isHovered() {
710
+ return hover.isHovered;
711
+ },
712
+ get isResizing() {
713
+ return aria.isResizing;
714
+ },
715
+ get resizableDirection() {
716
+ if (resize.getColumnMinWidth(column.column.key) >= resize.getColumnWidth(column.column.key)) return locale.direction === "rtl" ? "right" : "left";
717
+ if (resize.getColumnMaxWidth(column.column.key) <= resize.getColumnWidth(column.column.key)) return locale.direction === "rtl" ? "left" : "right";
718
+ return "both";
719
+ }
720
+ };
721
+ const render = createRenderProps(mergeProps$1(props, {
722
+ defaultClass: "solid2-aria-ColumnResizer",
723
+ values
724
+ }));
725
+ return createComponent(dom.div, mergeProps(() => {
726
+ return mergeProps$1(filterDOMProps(props, { global: true }), render, merge(() => aria.resizerProps ?? {}), merge(() => hover.hoverProps ?? {}));
727
+ }, {
728
+ role: "presentation",
729
+ ref: (element) => {
730
+ setRef(element);
731
+ },
732
+ get "data-hovered"() {
733
+ return hover.isHovered || void 0;
734
+ },
735
+ get "data-focused"() {
736
+ return focus.isFocused || void 0;
737
+ },
738
+ get "data-focus-visible"() {
739
+ return focus.isFocusVisible || void 0;
740
+ },
741
+ get "data-resizing"() {
742
+ return aria.isResizing || void 0;
743
+ },
744
+ get "data-resizable-direction"() {
745
+ return values.resizableDirection;
746
+ },
747
+ get children() {
748
+ return [
749
+ memo(() => {
750
+ return render.children;
751
+ }),
752
+ (() => {
753
+ var _el$ = getNextElement(_tmpl$);
754
+ spread(_el$, () => {
755
+ return mergeProps$1(merge(() => aria.inputProps ?? {}), merge(() => focus.focusProps ?? {}));
756
+ }, false);
757
+ ref(() => {
758
+ return (element) => {
759
+ setInput(element);
760
+ };
761
+ }, _el$);
762
+ runHydrationEvents();
763
+ return _el$;
764
+ })(),
765
+ memo(() => {
766
+ return memo(() => {
767
+ return !!aria.isMouseResizing;
768
+ })() ? createComponent(Portal, {
769
+ get mount() {
770
+ return document.body;
771
+ },
772
+ get children() {
773
+ var _el$2 = getNextElement(_tmpl$2);
774
+ setStyleProperty(_el$2, "cursor", function() {
775
+ const element = ref$1();
776
+ return element ? getComputedStyle(element).cursor : void 0;
777
+ });
778
+ return _el$2;
779
+ }
780
+ }) : aria.isMouseResizing;
781
+ })
782
+ ];
783
+ }
784
+ }));
785
+ }
786
+ const TableBody = createBranchComponent(TableBodyNode, (props, ref, node) => {
787
+ const state = requireValue(useContext(TableStateContext), "Expected useContext(TableStateContext)");
788
+ const renderer = useContext(CollectionRendererContext);
789
+ const dnd = useContext(DragAndDropContext);
790
+ const Branch = renderer.CollectionBranch;
791
+ const Tag = dynamic(() => renderer.isVirtualized === true ? dom.div : dom.tbody);
792
+ const RowTag = dynamic(() => renderer.isVirtualized === true ? dom.div : dom.tr);
793
+ const CellTag = dynamic(() => renderer.isVirtualized === true ? dom.div : dom.td);
794
+ const group = createTableRowGroup();
795
+ const values = {
796
+ get isDropTarget() {
797
+ return dnd.dropState?.isDropTarget({ type: "root" }) === true;
798
+ },
799
+ get isEmpty() {
800
+ return !state.collection.rows.some((row) => row.type === "item");
801
+ }
802
+ };
803
+ const render = createRenderProps(mergeProps$1(props, {
804
+ children: void 0,
805
+ defaultClass: "solid2-aria-TableBody",
806
+ values
807
+ }));
808
+ return createComponent(Tag, mergeProps(() => {
809
+ return mergeProps$1(filterDOMProps(props, { global: true }), render, merge(() => group.rowGroupProps ?? {}));
810
+ }, {
811
+ ref(r$) {
812
+ var _ref$3 = ref;
813
+ typeof _ref$3 === "function" || Array.isArray(_ref$3) ? applyRef(_ref$3, r$) : ref = r$;
814
+ },
815
+ get "data-empty"() {
816
+ return values.isEmpty || void 0;
817
+ },
818
+ get children() {
819
+ return [
820
+ memo(() => {
821
+ return memo(() => {
822
+ return !!dnd.dropState;
823
+ })() ? createComponent(RootDropIndicator, {
824
+ get table() {
825
+ return !(renderer.isVirtualized === true);
826
+ },
827
+ get columnCount() {
828
+ return state.collection.columnCount;
829
+ }
830
+ }) : dnd.dropState;
831
+ }),
832
+ createComponent(Branch, {
833
+ get collection() {
834
+ return state.collection;
835
+ },
836
+ parent: node,
837
+ get renderDropIndicator() {
838
+ return createRenderDropIndicator(dnd.dragAndDropHooks, dnd.dropState);
839
+ }
840
+ }),
841
+ memo(() => {
842
+ return memo(() => {
843
+ return !!(values.isEmpty && props.renderEmptyState);
844
+ })() ? createComponent(RowTag, {
845
+ role: "row",
846
+ get children() {
847
+ return createComponent(CellTag, {
848
+ role: "rowheader",
849
+ get colspan() {
850
+ return state.collection.columnCount;
851
+ },
852
+ get children() {
853
+ return props.renderEmptyState(values);
854
+ }
855
+ });
856
+ }
857
+ }) : values.isEmpty && props.renderEmptyState;
858
+ })
859
+ ];
860
+ }
861
+ }));
862
+ });
863
+ const TableFooter = createBranchComponent(TableFooterNode, (props, ref, node) => {
864
+ const state = requireValue(useContext(TableStateContext), "Expected useContext(TableStateContext)");
865
+ const renderer = useContext(CollectionRendererContext);
866
+ const dnd = useContext(DragAndDropContext);
867
+ const Branch = renderer.CollectionBranch;
868
+ const Tag = dynamic(() => renderer.isVirtualized === true ? dom.div : dom.tfoot);
869
+ const group = createTableRowGroup();
870
+ return createComponent(Tag, mergeProps(() => {
871
+ return mergeProps$1(filterDOMProps(props, { global: true }), merge(() => group.rowGroupProps ?? {}));
872
+ }, {
873
+ get "class"() {
874
+ return props.class ?? "solid2-aria-TableFooter";
875
+ },
876
+ get style() {
877
+ return props.style;
878
+ },
879
+ ref(r$) {
880
+ var _ref$4 = ref;
881
+ typeof _ref$4 === "function" || Array.isArray(_ref$4) ? applyRef(_ref$4, r$) : ref = r$;
882
+ },
883
+ get children() {
884
+ return createComponent(Branch, {
885
+ get collection() {
886
+ return state.collection;
887
+ },
888
+ parent: node,
889
+ get renderDropIndicator() {
890
+ return createRenderDropIndicator(dnd.dragAndDropHooks, dnd.dropState);
891
+ }
892
+ });
893
+ }
894
+ }));
895
+ });
896
+ function Row(ownProps) {
897
+ return createBranchComponent(TableRowNode, (props, forwardedRef, item) => {
898
+ const state = requireValue(useContext(TableStateContext), "Expected useContext(TableStateContext)");
899
+ const renderer = useContext(CollectionRendererContext);
900
+ const dnd = useContext(DragAndDropContext);
901
+ const Branch = renderer.CollectionBranch;
902
+ const Tag = dynamic(() => renderer.isVirtualized === true ? dom.div : dom.tr);
903
+ const [ref, setRef] = createSignal(null, { ownedWrite: true });
904
+ const aria = createTableRow({
905
+ isVirtualized: renderer.isVirtualized,
906
+ node: item,
907
+ shouldSelectOnPressUp: !!dnd.dragState
908
+ }, state, ref);
909
+ const focus = createFocusRing();
910
+ const within = createFocusRing({ within: true });
911
+ const hover = createHover(mergeProps$1(props, { get isDisabled() {
912
+ return !aria.allowsSelection && !aria.hasAction && !dnd.dragState;
913
+ } }));
914
+ const checkbox = createTableSelectionCheckbox({ key: item.key }, state);
915
+ const drag = dnd.dragState ? dnd.dragAndDropHooks?.createDraggableItem?.({
916
+ hasDragButton: true,
917
+ key: item.key
918
+ }, dnd.dragState) : void 0;
919
+ const values = {
920
+ get allowsDragging() {
921
+ return !!dnd.dragState;
922
+ },
923
+ get hasChildItems() {
924
+ return props.hasChildItems === true || isPresent(item.lastChildKey) && state.collection.getItem(item.lastChildKey)?.type !== "cell";
925
+ },
926
+ id: item.key,
927
+ get isDisabled() {
928
+ return aria.isDisabled;
929
+ },
930
+ get isDragging() {
931
+ return dnd.dragState?.isDragging(item.key) === true;
932
+ },
933
+ get isDropTarget() {
934
+ return dnd.dropState?.isDropTarget({
935
+ dropPosition: "on",
936
+ key: item.key,
937
+ type: "item"
938
+ }) === true;
939
+ },
940
+ get isExpanded() {
941
+ return state.expandedKeys.has(item.key);
942
+ },
943
+ get isFocusVisible() {
944
+ return focus.isFocusVisible;
945
+ },
946
+ get isFocusVisibleWithin() {
947
+ return within.isFocusVisible;
948
+ },
949
+ get isFocused() {
950
+ return focus.isFocused;
951
+ },
952
+ get isHovered() {
953
+ return hover.isHovered;
954
+ },
955
+ get isPressed() {
956
+ return aria.isPressed;
957
+ },
958
+ get isSelected() {
959
+ return aria.isSelected;
960
+ },
961
+ level: item.level + 1,
962
+ get selectionBehavior() {
963
+ return state.selectionManager.selectionBehavior;
964
+ },
965
+ get selectionMode() {
966
+ return state.selectionManager.selectionMode;
967
+ },
968
+ state
969
+ };
970
+ const render = createRenderProps(mergeProps$1(props, {
971
+ children: void 0,
972
+ defaultClass: "solid2-aria-Row",
973
+ values
974
+ }));
975
+ return createComponent(Tag, mergeProps(() => {
976
+ return mergeProps$1(omit(filterDOMProps(props, { global: true }), "id", "onClick"), render, merge(() => aria.rowProps ?? {}), merge(() => focus.focusProps ?? {}), merge(() => within.focusProps ?? {}), merge(() => hover.hoverProps ?? {}), merge(() => drag?.dragProps ?? {}));
977
+ }, {
978
+ ref: (element) => {
979
+ setRef(element);
980
+ },
981
+ get "data-selected"() {
982
+ return aria.isSelected || void 0;
983
+ },
984
+ get "data-disabled"() {
985
+ return aria.isDisabled || void 0;
986
+ },
987
+ get "data-hovered"() {
988
+ return hover.isHovered || void 0;
989
+ },
990
+ get "data-focused"() {
991
+ return focus.isFocused || void 0;
992
+ },
993
+ get "data-focus-visible"() {
994
+ return focus.isFocusVisible || void 0;
995
+ },
996
+ get "data-focus-visible-within"() {
997
+ return within.isFocusVisible || void 0;
998
+ },
999
+ get "data-pressed"() {
1000
+ return aria.isPressed || void 0;
1001
+ },
1002
+ get "data-expanded"() {
1003
+ return (memo(() => {
1004
+ return !!values.hasChildItems;
1005
+ })() ? values.isExpanded : values.hasChildItems) || void 0;
1006
+ },
1007
+ get "data-has-child-items"() {
1008
+ return values.hasChildItems || void 0;
1009
+ },
1010
+ get "data-level"() {
1011
+ return values.level;
1012
+ },
1013
+ get "data-allows-dragging"() {
1014
+ return !!dnd.dragState || void 0;
1015
+ },
1016
+ get "data-dragging"() {
1017
+ return values.isDragging ?? void 0;
1018
+ },
1019
+ get "data-drop-target"() {
1020
+ return values.isDropTarget ?? void 0;
1021
+ },
1022
+ get "data-selection-mode"() {
1023
+ return memo(() => {
1024
+ return state.selectionManager.selectionMode === "none";
1025
+ })() ? void 0 : state.selectionManager.selectionMode;
1026
+ },
1027
+ get children() {
1028
+ return createComponent(CheckboxContext, {
1029
+ value: { slots: {
1030
+ [DEFAULT_SLOT]: {},
1031
+ get selection() {
1032
+ return checkbox.checkboxProps;
1033
+ }
1034
+ } },
1035
+ get children() {
1036
+ return createComponent(CheckboxFieldContext, {
1037
+ value: { slots: {
1038
+ [DEFAULT_SLOT]: {},
1039
+ get selection() {
1040
+ return checkbox.checkboxProps;
1041
+ }
1042
+ } },
1043
+ get children() {
1044
+ return createComponent(ButtonContext, {
1045
+ get value() {
1046
+ return { slots: {
1047
+ [DEFAULT_SLOT]: {},
1048
+ get chevron() {
1049
+ return aria.expandButtonProps;
1050
+ },
1051
+ drag: mergeProps$1(merge(() => drag?.dragButtonProps ?? {}), { style: { "pointer-events": "none" } })
1052
+ } };
1053
+ },
1054
+ get children() {
1055
+ return createComponent(RowFocusContext, {
1056
+ value: { get isFocusVisibleWithinRow() {
1057
+ return within.isFocusVisible;
1058
+ } },
1059
+ get children() {
1060
+ return createComponent(SelectionIndicatorContext, {
1061
+ value: { get isSelected() {
1062
+ return aria.isSelected;
1063
+ } },
1064
+ get children() {
1065
+ return createComponent(Branch, {
1066
+ get collection() {
1067
+ return state.collection;
1068
+ },
1069
+ parent: item
1070
+ });
1071
+ }
1072
+ });
1073
+ }
1074
+ });
1075
+ }
1076
+ });
1077
+ }
1078
+ });
1079
+ }
1080
+ });
1081
+ }
1082
+ }));
1083
+ }, (props) => createComponent(Collection, {
1084
+ get items() {
1085
+ return props.columns;
1086
+ },
1087
+ get dependencies() {
1088
+ return props.dependencies;
1089
+ },
1090
+ get children() {
1091
+ return props.children;
1092
+ }
1093
+ }))(ownProps);
1094
+ }
1095
+ const Cell = createLeafComponent(TableCellNode, (props, forwardedRef, cell) => {
1096
+ const state = requireValue(useContext(TableStateContext), "Expected useContext(TableStateContext)");
1097
+ const renderer = useContext(CollectionRendererContext);
1098
+ const dnd = useContext(DragAndDropContext);
1099
+ const within = useContext(RowFocusContext);
1100
+ const [ref, setRef] = createSignal(null, { ownedWrite: true });
1101
+ const Tag = dynamic(() => renderer.isVirtualized === true ? dom.div : dom.td);
1102
+ cell.column = state.collection.columns[cell.index];
1103
+ const aria = createTableCell({
1104
+ get allowsArrowNavigation() {
1105
+ return props.allowsArrowNavigation;
1106
+ },
1107
+ get focusMode() {
1108
+ return props.focusMode;
1109
+ },
1110
+ isVirtualized: renderer.isVirtualized,
1111
+ node: cell,
1112
+ shouldSelectOnPressUp: !!dnd.dragState
1113
+ }, state, ref);
1114
+ const focus = createFocusRing();
1115
+ const hover = createHover({});
1116
+ const row = () => isPresent(cell.parentKey) ? state.collection.getItem(cell.parentKey) : null;
1117
+ const values = {
1118
+ columnIndex: cell.colIndex ?? cell.index,
1119
+ get hasChildItems() {
1120
+ const node = row();
1121
+ return isTruthy(getNodeProps(node).hasChildItems) || isPresent(node?.lastChildKey) && state.collection.getItem(node.lastChildKey)?.type !== "cell";
1122
+ },
1123
+ id: cell.key,
1124
+ get isDisabled() {
1125
+ return isPresent(cell.parentKey) && state.selectionManager.isDisabled(cell.parentKey);
1126
+ },
1127
+ get isExpanded() {
1128
+ return isPresent(cell.parentKey) && state.expandedKeys.has(cell.parentKey);
1129
+ },
1130
+ get isFocusVisible() {
1131
+ return focus.isFocusVisible;
1132
+ },
1133
+ get isFocusVisibleWithinRow() {
1134
+ return within.isFocusVisibleWithinRow;
1135
+ },
1136
+ get isFocused() {
1137
+ return focus.isFocused;
1138
+ },
1139
+ get isHovered() {
1140
+ return hover.isHovered;
1141
+ },
1142
+ get isPressed() {
1143
+ return aria.isPressed;
1144
+ },
1145
+ get isSelected() {
1146
+ return isPresent(cell.parentKey) && state.selectionManager.isSelected(cell.parentKey);
1147
+ },
1148
+ get isTreeColumn() {
1149
+ return cell.column?.key === state.treeColumn;
1150
+ },
1151
+ get level() {
1152
+ return (row()?.level ?? 0) + 1;
1153
+ }
1154
+ };
1155
+ const render = createRenderProps(mergeProps$1(props, {
1156
+ get children() {
1157
+ return cell.rendered;
1158
+ },
1159
+ defaultClass: "solid2-aria-Cell",
1160
+ values
1161
+ }));
1162
+ return createComponent(Tag, mergeProps(() => {
1163
+ return mergeProps$1(omit(filterDOMProps(props, { global: true }), "id"), render, merge(() => aria.gridCellProps ?? {}), merge(() => focus.focusProps ?? {}), merge(() => hover.hoverProps ?? {}));
1164
+ }, {
1165
+ ref: (element) => {
1166
+ setRef(element);
1167
+ },
1168
+ get "data-focused"() {
1169
+ return focus.isFocused || void 0;
1170
+ },
1171
+ get "data-focus-visible"() {
1172
+ return focus.isFocusVisible || void 0;
1173
+ },
1174
+ get "data-focus-visible-within-row"() {
1175
+ return within.isFocusVisibleWithinRow || void 0;
1176
+ },
1177
+ get "data-hovered"() {
1178
+ return hover.isHovered || void 0;
1179
+ },
1180
+ get "data-pressed"() {
1181
+ return aria.isPressed || void 0;
1182
+ },
1183
+ get "data-selected"() {
1184
+ return values.isSelected || void 0;
1185
+ },
1186
+ get "data-column-index"() {
1187
+ return values.columnIndex;
1188
+ },
1189
+ get "data-tree-column"() {
1190
+ return values.isTreeColumn || void 0;
1191
+ },
1192
+ get "data-expanded"() {
1193
+ return values.isExpanded || void 0;
1194
+ },
1195
+ get "data-has-child-items"() {
1196
+ return values.hasChildItems || void 0;
1197
+ },
1198
+ get "data-level"() {
1199
+ return values.level;
1200
+ },
1201
+ get "data-disabled"() {
1202
+ return values.isDisabled || void 0;
1203
+ },
1204
+ get children() {
1205
+ return createComponent(CollectionRendererContext, {
1206
+ value: DefaultCollectionRenderer,
1207
+ get children() {
1208
+ return render.children;
1209
+ }
1210
+ });
1211
+ }
1212
+ }));
1213
+ });
1214
+ const TableLoadMoreItem = createLeafComponent(LoaderNode, (props, ref$2, item) => {
1215
+ const state = requireValue(useContext(TableStateContext), "Expected useContext(TableStateContext)");
1216
+ const renderer = useContext(CollectionRendererContext);
1217
+ const Tag = dynamic(() => renderer.isVirtualized === true ? dom.div : dom.tr);
1218
+ const CellTag = dynamic(() => renderer.isVirtualized === true ? dom.div : dom.td);
1219
+ const [sentinel, setSentinel] = createSignal(null, { ownedWrite: true });
1220
+ createLoadMoreSentinel(mergeProps$1(props, { get collection() {
1221
+ return state.collection;
1222
+ } }), sentinel);
1223
+ return [(() => {
1224
+ var _el$3 = getNextElement(_tmpl$3);
1225
+ var _el$4 = _el$3.firstChild;
1226
+ var _el$5 = _el$4.firstChild;
1227
+ ref(() => {
1228
+ return (element) => {
1229
+ setSentinel(element);
1230
+ };
1231
+ }, _el$5);
1232
+ effect(() => state.collection.columnCount, (_v$) => {
1233
+ setAttribute(_el$4, "colspan", _v$);
1234
+ });
1235
+ return _el$3;
1236
+ })(), memo(() => {
1237
+ return memo(() => {
1238
+ return props.isLoading === true;
1239
+ })() && createComponent(Tag, mergeProps(() => {
1240
+ return filterDOMProps(props, { global: true });
1241
+ }, {
1242
+ ref(r$) {
1243
+ var _ref$5 = ref$2;
1244
+ typeof _ref$5 === "function" || Array.isArray(_ref$5) ? applyRef(_ref$5, r$) : ref$2 = r$;
1245
+ },
1246
+ get render() {
1247
+ return props.render;
1248
+ },
1249
+ get "class"() {
1250
+ return props.class ?? "solid2-aria-TableLoadingIndicator";
1251
+ },
1252
+ get children() {
1253
+ return createComponent(CellTag, {
1254
+ role: "gridcell",
1255
+ get colspan() {
1256
+ return state.collection.columnCount;
1257
+ },
1258
+ get children() {
1259
+ return item.rendered;
1260
+ }
1261
+ });
1262
+ }
1263
+ }));
1264
+ })];
1265
+ });
1266
+ export { Cell, Column, ColumnResizer, ResizableTableContainer, Row, RowFocusContext, Table, TableBody, TableColumnResizeStateContext, TableContext, TableFooter, TableHeader, TableLoadMoreItem, TableStateContext, createTableOptions };
1267
+
1268
+ //# sourceMappingURL=table.js.map