@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 @@
1
+ {"version":3,"file":"table.js","names":["<dom.div\n {...filterDOMProps(props, { global: true })}\n render={props.render}\n class={props.class ?? \"solid2-aria-ResizableTableContainer\"}\n style={props.style}\n ref={[\n (element: HTMLElement) => {\n setRef(element);\n },\n (element: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n element\n );\n },\n ]}\n >\n <ResizableTableContainerContext value={context}>\n {props.children}\n </ResizableTableContainerContext>\n </dom.div>","dom.div","ref={[\n (element: HTMLElement) => {\n setRef(element);\n },\n (element: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n element\n );\n },\n ]}","<ResizableTableContainerContext value={context}>\n {props.children}\n </ResizableTableContainerContext>","value={context}","<CollectionBuilder\n createCollection={() => new TableCollection<unknown>()}\n content={<Collection>{props.children}</Collection>}\n >\n {(collection) => (\n <TableInner\n props={props}\n collection={collection}\n elementRef={ref}\n setElementRef={(element: HTMLTableElement) => {\n setRef(element);\n }}\n />\n )}\n </CollectionBuilder>","createCollection={() => new TableCollection<unknown>()}","<Collection>{props.children}</Collection>","<TableInner\n props={props}\n collection={collection}\n elementRef={ref}\n setElementRef={(element: HTMLTableElement) => {\n setRef(element);\n }}\n />","elementRef={ref}","setElementRef={(element: HTMLTableElement) => {\n setRef(element);\n }}","<Tag\n {...mergeProps(\n filterDOMProps(props, { global: true }),\n render,\n merge(() => aria.gridProps ?? {}),\n merge(() => focus.focusProps ?? {}),\n merge(() => dnd.collectionProps ?? {})\n )}\n ref={(element: HTMLTableElement) => {\n outer.setElementRef(element);\n\n if (container) {\n container.setTableRef(element);\n }\n }}\n slot={props.slot ?? undefined}\n data-focused={focus.isFocused || undefined}\n data-focus-visible={focus.isFocusVisible || undefined}\n data-drop-target={values.isDropTarget || undefined}\n >\n <TableStateContext value={state}>\n <TableColumnResizeStateContext value={resize}>\n <TableOptionsContext value={options}>\n <DragAndDropContext value={dnd}>\n <DropIndicatorContext\n value={{\n render: (indicatorProps, ref) => (\n <CollectionDropIndicator\n {...indicatorProps}\n ref={ref}\n table={!(renderer.isVirtualized === true)}\n columnCount={state.collection.columnCount}\n />\n ),\n }}\n >\n <Root\n collection={state.collection}\n scrollRef={outer.elementRef}\n persistedKeys={createDndPersistedKeys(\n state.selectionManager,\n props.dragAndDropHooks,\n dnd.dropState\n )}\n />\n </DropIndicatorContext>\n </DragAndDropContext>\n </TableOptionsContext>\n </TableColumnResizeStateContext>\n </TableStateContext>\n {dnd.preview}\n </Tag>","ref={(element: HTMLTableElement) => {\n outer.setElementRef(element);\n\n if (container) {\n container.setTableRef(element);\n }\n }}","<TableStateContext value={state}>\n <TableColumnResizeStateContext value={resize}>\n <TableOptionsContext value={options}>\n <DragAndDropContext value={dnd}>\n <DropIndicatorContext\n value={{\n render: (indicatorProps, ref) => (\n <CollectionDropIndicator\n {...indicatorProps}\n ref={ref}\n table={!(renderer.isVirtualized === true)}\n columnCount={state.collection.columnCount}\n />\n ),\n }}\n >\n <Root\n collection={state.collection}\n scrollRef={outer.elementRef}\n persistedKeys={createDndPersistedKeys(\n state.selectionManager,\n props.dragAndDropHooks,\n dnd.dropState\n )}\n />\n </DropIndicatorContext>\n </DragAndDropContext>\n </TableOptionsContext>\n </TableColumnResizeStateContext>\n </TableStateContext>","value={state}","<TableColumnResizeStateContext value={resize}>\n <TableOptionsContext value={options}>\n <DragAndDropContext value={dnd}>\n <DropIndicatorContext\n value={{\n render: (indicatorProps, ref) => (\n <CollectionDropIndicator\n {...indicatorProps}\n ref={ref}\n table={!(renderer.isVirtualized === true)}\n columnCount={state.collection.columnCount}\n />\n ),\n }}\n >\n <Root\n collection={state.collection}\n scrollRef={outer.elementRef}\n persistedKeys={createDndPersistedKeys(\n state.selectionManager,\n props.dragAndDropHooks,\n dnd.dropState\n )}\n />\n </DropIndicatorContext>\n </DragAndDropContext>\n </TableOptionsContext>\n </TableColumnResizeStateContext>","value={resize}","<TableOptionsContext value={options}>\n <DragAndDropContext value={dnd}>\n <DropIndicatorContext\n value={{\n render: (indicatorProps, ref) => (\n <CollectionDropIndicator\n {...indicatorProps}\n ref={ref}\n table={!(renderer.isVirtualized === true)}\n columnCount={state.collection.columnCount}\n />\n ),\n }}\n >\n <Root\n collection={state.collection}\n scrollRef={outer.elementRef}\n persistedKeys={createDndPersistedKeys(\n state.selectionManager,\n props.dragAndDropHooks,\n dnd.dropState\n )}\n />\n </DropIndicatorContext>\n </DragAndDropContext>\n </TableOptionsContext>","value={options}","<DragAndDropContext value={dnd}>\n <DropIndicatorContext\n value={{\n render: (indicatorProps, ref) => (\n <CollectionDropIndicator\n {...indicatorProps}\n ref={ref}\n table={!(renderer.isVirtualized === true)}\n columnCount={state.collection.columnCount}\n />\n ),\n }}\n >\n <Root\n collection={state.collection}\n scrollRef={outer.elementRef}\n persistedKeys={createDndPersistedKeys(\n state.selectionManager,\n props.dragAndDropHooks,\n dnd.dropState\n )}\n />\n </DropIndicatorContext>\n </DragAndDropContext>","value={dnd}","<DropIndicatorContext\n value={{\n render: (indicatorProps, ref) => (\n <CollectionDropIndicator\n {...indicatorProps}\n ref={ref}\n table={!(renderer.isVirtualized === true)}\n columnCount={state.collection.columnCount}\n />\n ),\n }}\n >\n <Root\n collection={state.collection}\n scrollRef={outer.elementRef}\n persistedKeys={createDndPersistedKeys(\n state.selectionManager,\n props.dragAndDropHooks,\n dnd.dropState\n )}\n />\n </DropIndicatorContext>","value={{\n render: (indicatorProps, ref) => (\n <CollectionDropIndicator\n {...indicatorProps}\n ref={ref}\n table={!(renderer.isVirtualized === true)}\n columnCount={state.collection.columnCount}\n />\n ),\n }}","<CollectionDropIndicator\n {...indicatorProps}\n ref={ref}\n table={!(renderer.isVirtualized === true)}\n columnCount={state.collection.columnCount}\n />","ref={ref}","<Root\n collection={state.collection}\n scrollRef={outer.elementRef}\n persistedKeys={createDndPersistedKeys(\n state.selectionManager,\n props.dragAndDropHooks,\n dnd.dropState\n )}\n />","dnd.preview","<TableHeaderRow item={item} />","<Tag\n {...mergeProps(\n filterDOMProps(props, { global: true }),\n merge(() => group.rowGroupProps ?? {}),\n merge(() => hover.hoverProps ?? {}),\n render\n )}\n ref={ref}\n data-hovered={hover.isHovered || undefined}\n >\n {rows()}\n </Tag>","<Collection items={props.columns} dependencies={props.dependencies}>\n {props.children}\n </Collection>","<Tag\n {...aria.rowProps}\n ref={(element: HTMLTableRowElement) => {\n setRef(element);\n }}\n >\n <CheckboxContext\n value={{\n slots: {\n get selection() {\n return checkbox.checkboxProps;\n },\n },\n }}\n >\n <CheckboxFieldContext\n value={{\n slots: {\n get selection() {\n return checkbox.checkboxProps;\n },\n },\n }}\n >\n <Branch collection={state.collection} parent={props.item} />\n </CheckboxFieldContext>\n </CheckboxContext>\n </Tag>","ref={(element: HTMLTableRowElement) => {\n setRef(element);\n }}","<CheckboxContext\n value={{\n slots: {\n get selection() {\n return checkbox.checkboxProps;\n },\n },\n }}\n >\n <CheckboxFieldContext\n value={{\n slots: {\n get selection() {\n return checkbox.checkboxProps;\n },\n },\n }}\n >\n <Branch collection={state.collection} parent={props.item} />\n </CheckboxFieldContext>\n </CheckboxContext>","value={{\n slots: {\n get selection() {\n return checkbox.checkboxProps;\n },\n },\n }}","<CheckboxFieldContext\n value={{\n slots: {\n get selection() {\n return checkbox.checkboxProps;\n },\n },\n }}\n >\n <Branch collection={state.collection} parent={props.item} />\n </CheckboxFieldContext>","value={{\n slots: {\n get selection() {\n return checkbox.checkboxProps;\n },\n },\n }}","<Branch collection={state.collection} parent={props.item} />","<Tag\n {...mergeProps(\n omit(filterDOMProps(props, { global: true }), \"id\"),\n merge(() => aria.columnHeaderProps ?? {}),\n merge(() => focus.focusProps ?? {}),\n merge(() => hover.hoverProps ?? {}),\n render\n )}\n style={\n resize\n ? mergeProps(typeof render.style === \"object\" ? render.style : {}, {\n width: resize.getColumnWidth(column.key),\n })\n : render.style\n }\n ref={(element: HTMLTableCellElement) => {\n setRef(element);\n }}\n data-hovered={hover.isHovered || undefined}\n data-pressed={aria.isPressed || undefined}\n data-focused={focus.isFocused || undefined}\n data-focus-visible={focus.isFocusVisible || undefined}\n data-resizing={values.isResizing || undefined}\n data-allows-sorting={values.allowsSorting || undefined}\n data-sort-direction={values.sortDirection}\n >\n <ColumnResizerContext value={{ column, triggerRef: ref }}>\n <CollectionRendererContext value={DefaultCollectionRenderer}>\n {render.children}\n </CollectionRendererContext>\n </ColumnResizerContext>\n </Tag>","ref={(element: HTMLTableCellElement) => {\n setRef(element);\n }}","<ColumnResizerContext value={{ column, triggerRef: ref }}>\n <CollectionRendererContext value={DefaultCollectionRenderer}>\n {render.children}\n </CollectionRendererContext>\n </ColumnResizerContext>","value={{ column, triggerRef: ref }}","<CollectionRendererContext value={DefaultCollectionRenderer}>\n {render.children}\n </CollectionRendererContext>","value={DefaultCollectionRenderer}","<dom.div\n {...mergeProps(\n filterDOMProps(props, { global: true }),\n render,\n merge(() => aria.resizerProps ?? {}),\n merge(() => hover.hoverProps ?? {})\n )}\n role=\"presentation\"\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n data-hovered={hover.isHovered || undefined}\n data-focused={focus.isFocused || undefined}\n data-focus-visible={focus.isFocusVisible || undefined}\n data-resizing={aria.isResizing || undefined}\n data-resizable-direction={values.resizableDirection}\n >\n {render.children}\n <input\n {...mergeProps(\n merge(() => aria.inputProps ?? {}),\n merge(() => focus.focusProps ?? {})\n )}\n ref={(element: HTMLInputElement) => {\n setInput(element);\n }}\n />\n {aria.isMouseResizing && (\n <Portal mount={document.body}>\n <div\n style={{\n bottom: 0,\n get cursor() {\n const element = ref();\n\n return element ? getComputedStyle(element).cursor : undefined;\n },\n left: 0,\n position: \"fixed\",\n right: 0,\n top: 0,\n }}\n data-testid=\"cursor-overlay\"\n />\n </Portal>\n )}\n </dom.div>","role=\"presentation\"","ref={(element: HTMLDivElement) => {\n setRef(element);\n }}","render.children","ref={(element: HTMLInputElement) => {\n setInput(element);\n }}","{aria.isMouseResizing && (\n <Portal mount={document.body}>\n <div\n style={{\n bottom: 0,\n get cursor() {\n const element = ref();\n\n return element ? getComputedStyle(element).cursor : undefined;\n },\n left: 0,\n position: \"fixed\",\n right: 0,\n top: 0,\n }}\n data-testid=\"cursor-overlay\"\n />\n </Portal>\n )}","<Portal mount={document.body}>\n <div\n style={{\n bottom: 0,\n get cursor() {\n const element = ref();\n\n return element ? getComputedStyle(element).cursor : undefined;\n },\n left: 0,\n position: \"fixed\",\n right: 0,\n top: 0,\n }}\n data-testid=\"cursor-overlay\"\n />\n </Portal>","<div\n style={{\n bottom: 0,\n get cursor() {\n const element = ref();\n\n return element ? getComputedStyle(element).cursor : undefined;\n },\n left: 0,\n position: \"fixed\",\n right: 0,\n top: 0,\n }}\n data-testid=\"cursor-overlay\"\n />","<Tag\n {...mergeProps(\n filterDOMProps(props, { global: true }),\n render,\n merge(() => group.rowGroupProps ?? {})\n )}\n ref={ref}\n data-empty={values.isEmpty || undefined}\n >\n {dnd.dropState && (\n <RootDropIndicator\n table={!(renderer.isVirtualized === true)}\n columnCount={state.collection.columnCount}\n />\n )}\n <Branch\n collection={state.collection}\n parent={node}\n renderDropIndicator={createRenderDropIndicator(\n dnd.dragAndDropHooks,\n dnd.dropState\n )}\n />\n {values.isEmpty && props.renderEmptyState && (\n <RowTag role=\"row\">\n <CellTag role=\"rowheader\" colspan={state.collection.columnCount}>\n {props.renderEmptyState(values)}\n </CellTag>\n </RowTag>\n )}\n </Tag>","{dnd.dropState && (\n <RootDropIndicator\n table={!(renderer.isVirtualized === true)}\n columnCount={state.collection.columnCount}\n />\n )}","<RootDropIndicator\n table={!(renderer.isVirtualized === true)}\n columnCount={state.collection.columnCount}\n />","<Branch\n collection={state.collection}\n parent={node}\n renderDropIndicator={createRenderDropIndicator(\n dnd.dragAndDropHooks,\n dnd.dropState\n )}\n />","parent={node}","{values.isEmpty && props.renderEmptyState && (\n <RowTag role=\"row\">\n <CellTag role=\"rowheader\" colspan={state.collection.columnCount}>\n {props.renderEmptyState(values)}\n </CellTag>\n </RowTag>\n )}","<RowTag role=\"row\">\n <CellTag role=\"rowheader\" colspan={state.collection.columnCount}>\n {props.renderEmptyState(values)}\n </CellTag>\n </RowTag>","role=\"row\"","<CellTag role=\"rowheader\" colspan={state.collection.columnCount}>\n {props.renderEmptyState(values)}\n </CellTag>","role=\"rowheader\"","<Tag\n {...mergeProps(\n filterDOMProps(props, { global: true }),\n merge(() => group.rowGroupProps ?? {})\n )}\n class={props.class ?? \"solid2-aria-TableFooter\"}\n style={props.style}\n ref={ref}\n >\n <Branch\n collection={state.collection}\n parent={node}\n renderDropIndicator={createRenderDropIndicator(\n dnd.dragAndDropHooks,\n dnd.dropState\n )}\n />\n </Tag>","<Tag\n {...mergeProps(\n omit(filterDOMProps(props, { global: true }), \"id\", \"onClick\"),\n render,\n merge(() => aria.rowProps ?? {}),\n merge(() => focus.focusProps ?? {}),\n merge(() => within.focusProps ?? {}),\n merge(() => hover.hoverProps ?? {}),\n merge(() => drag?.dragProps ?? {})\n )}\n ref={(element: HTMLTableRowElement) => {\n setRef(element);\n }}\n data-selected={aria.isSelected || undefined}\n data-disabled={aria.isDisabled || undefined}\n data-hovered={hover.isHovered || undefined}\n data-focused={focus.isFocused || undefined}\n data-focus-visible={focus.isFocusVisible || undefined}\n data-focus-visible-within={within.isFocusVisible || undefined}\n data-pressed={aria.isPressed || undefined}\n data-expanded={\n (values.hasChildItems && values.isExpanded) || undefined\n }\n data-has-child-items={values.hasChildItems || undefined}\n data-level={values.level}\n data-allows-dragging={!!dnd.dragState || undefined}\n data-dragging={values.isDragging ?? undefined}\n data-drop-target={values.isDropTarget ?? undefined}\n data-selection-mode={\n state.selectionManager.selectionMode === \"none\"\n ? undefined\n : state.selectionManager.selectionMode\n }\n >\n <CheckboxContext\n value={{\n slots: {\n [DEFAULT_SLOT]: {},\n get selection() {\n return checkbox.checkboxProps;\n },\n },\n }}\n >\n <CheckboxFieldContext\n value={{\n slots: {\n [DEFAULT_SLOT]: {},\n get selection() {\n return checkbox.checkboxProps;\n },\n },\n }}\n >\n <ButtonContext\n value={{\n slots: {\n [DEFAULT_SLOT]: {},\n get chevron() {\n return aria.expandButtonProps;\n },\n drag: mergeProps(\n merge(() => drag?.dragButtonProps ?? {}),\n {\n style: { \"pointer-events\": \"none\" as const },\n }\n ),\n },\n }}\n >\n <RowFocusContext\n value={{\n get isFocusVisibleWithinRow() {\n return within.isFocusVisible;\n },\n }}\n >\n <SelectionIndicatorContext\n value={{\n get isSelected() {\n return aria.isSelected;\n },\n }}\n >\n <Branch collection={state.collection} parent={item} />\n </SelectionIndicatorContext>\n </RowFocusContext>\n </ButtonContext>\n </CheckboxFieldContext>\n </CheckboxContext>\n </Tag>","ref={(element: HTMLTableRowElement) => {\n setRef(element);\n }}","(values.hasChildItems && values.isExpanded) || undefined","state.selectionManager.selectionMode === \"none\"\n ? undefined\n : state.selectionManager.selectionMode","<CheckboxContext\n value={{\n slots: {\n [DEFAULT_SLOT]: {},\n get selection() {\n return checkbox.checkboxProps;\n },\n },\n }}\n >\n <CheckboxFieldContext\n value={{\n slots: {\n [DEFAULT_SLOT]: {},\n get selection() {\n return checkbox.checkboxProps;\n },\n },\n }}\n >\n <ButtonContext\n value={{\n slots: {\n [DEFAULT_SLOT]: {},\n get chevron() {\n return aria.expandButtonProps;\n },\n drag: mergeProps(\n merge(() => drag?.dragButtonProps ?? {}),\n {\n style: { \"pointer-events\": \"none\" as const },\n }\n ),\n },\n }}\n >\n <RowFocusContext\n value={{\n get isFocusVisibleWithinRow() {\n return within.isFocusVisible;\n },\n }}\n >\n <SelectionIndicatorContext\n value={{\n get isSelected() {\n return aria.isSelected;\n },\n }}\n >\n <Branch collection={state.collection} parent={item} />\n </SelectionIndicatorContext>\n </RowFocusContext>\n </ButtonContext>\n </CheckboxFieldContext>\n </CheckboxContext>","value={{\n slots: {\n [DEFAULT_SLOT]: {},\n get selection() {\n return checkbox.checkboxProps;\n },\n },\n }}","<CheckboxFieldContext\n value={{\n slots: {\n [DEFAULT_SLOT]: {},\n get selection() {\n return checkbox.checkboxProps;\n },\n },\n }}\n >\n <ButtonContext\n value={{\n slots: {\n [DEFAULT_SLOT]: {},\n get chevron() {\n return aria.expandButtonProps;\n },\n drag: mergeProps(\n merge(() => drag?.dragButtonProps ?? {}),\n {\n style: { \"pointer-events\": \"none\" as const },\n }\n ),\n },\n }}\n >\n <RowFocusContext\n value={{\n get isFocusVisibleWithinRow() {\n return within.isFocusVisible;\n },\n }}\n >\n <SelectionIndicatorContext\n value={{\n get isSelected() {\n return aria.isSelected;\n },\n }}\n >\n <Branch collection={state.collection} parent={item} />\n </SelectionIndicatorContext>\n </RowFocusContext>\n </ButtonContext>\n </CheckboxFieldContext>","value={{\n slots: {\n [DEFAULT_SLOT]: {},\n get selection() {\n return checkbox.checkboxProps;\n },\n },\n }}","<ButtonContext\n value={{\n slots: {\n [DEFAULT_SLOT]: {},\n get chevron() {\n return aria.expandButtonProps;\n },\n drag: mergeProps(\n merge(() => drag?.dragButtonProps ?? {}),\n {\n style: { \"pointer-events\": \"none\" as const },\n }\n ),\n },\n }}\n >\n <RowFocusContext\n value={{\n get isFocusVisibleWithinRow() {\n return within.isFocusVisible;\n },\n }}\n >\n <SelectionIndicatorContext\n value={{\n get isSelected() {\n return aria.isSelected;\n },\n }}\n >\n <Branch collection={state.collection} parent={item} />\n </SelectionIndicatorContext>\n </RowFocusContext>\n </ButtonContext>","<RowFocusContext\n value={{\n get isFocusVisibleWithinRow() {\n return within.isFocusVisible;\n },\n }}\n >\n <SelectionIndicatorContext\n value={{\n get isSelected() {\n return aria.isSelected;\n },\n }}\n >\n <Branch collection={state.collection} parent={item} />\n </SelectionIndicatorContext>\n </RowFocusContext>","value={{\n get isFocusVisibleWithinRow() {\n return within.isFocusVisible;\n },\n }}","<SelectionIndicatorContext\n value={{\n get isSelected() {\n return aria.isSelected;\n },\n }}\n >\n <Branch collection={state.collection} parent={item} />\n </SelectionIndicatorContext>","value={{\n get isSelected() {\n return aria.isSelected;\n },\n }}","<Branch collection={state.collection} parent={item} />","parent={item}","<Collection items={props.columns} dependencies={props.dependencies}>\n {props.children}\n </Collection>","<Tag\n {...mergeProps(\n omit(filterDOMProps(props, { global: true }), \"id\"),\n render,\n merge(() => aria.gridCellProps ?? {}),\n merge(() => focus.focusProps ?? {}),\n merge(() => hover.hoverProps ?? {})\n )}\n ref={(element: HTMLTableCellElement) => {\n setRef(element);\n }}\n data-focused={focus.isFocused || undefined}\n data-focus-visible={focus.isFocusVisible || undefined}\n data-focus-visible-within-row={\n within.isFocusVisibleWithinRow || undefined\n }\n data-hovered={hover.isHovered || undefined}\n data-pressed={aria.isPressed || undefined}\n data-selected={values.isSelected || undefined}\n data-column-index={values.columnIndex}\n data-tree-column={values.isTreeColumn || undefined}\n data-expanded={values.isExpanded || undefined}\n data-has-child-items={values.hasChildItems || undefined}\n data-level={values.level}\n data-disabled={values.isDisabled || undefined}\n >\n <CollectionRendererContext value={DefaultCollectionRenderer}>\n {render.children}\n </CollectionRendererContext>\n </Tag>","<CollectionRendererContext value={DefaultCollectionRenderer}>\n {render.children}\n </CollectionRendererContext>","ref={(element: HTMLDivElement) => {\n setSentinel(element);\n }}","{props.isLoading === true && (\n <Tag\n {...filterDOMProps(props, { global: true })}\n ref={ref}\n render={props.render}\n class={props.class ?? \"solid2-aria-TableLoadingIndicator\"}\n >\n <CellTag role=\"gridcell\" colspan={state.collection.columnCount}>\n {item.rendered}\n </CellTag>\n </Tag>\n )}","<Tag\n {...filterDOMProps(props, { global: true })}\n ref={ref}\n render={props.render}\n class={props.class ?? \"solid2-aria-TableLoadingIndicator\"}\n >\n <CellTag role=\"gridcell\" colspan={state.collection.columnCount}>\n {item.rendered}\n </CellTag>\n </Tag>","<CellTag role=\"gridcell\" colspan={state.collection.columnCount}>\n {item.rendered}\n </CellTag>","role=\"gridcell\"","mergeProps","_$createComponent","_$mergeProps","_$applyRef","_$memo","intlMessages","ref","_$getNextElement"],"sources":["../../src/table.tsx"],"sourcesContent":["/*\n * Derived from Adobe React Spectrum: packages/react-aria-components/src/Table.tsx.\n * Modified for Solid Aria: preserve table collection, sorting and sizing algorithms with Solid contexts, collection descriptors and reactive accessibility primitives; uses Solid class props.\n * Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.\n */\n\nimport {\n BaseCollection,\n CollectionNode,\n FilterableNode,\n LoaderNode,\n} from \"@solid2-aria/core/collections/base-collection\";\nimport {\n Collection,\n CollectionBuilder,\n createLeafComponent,\n createBranchComponent,\n} from \"@solid2-aria/core/collections/collection-builder\";\nimport { createCachedChildren } from \"@solid2-aria/core/collections/create-cached-children\";\nimport { createFocusRing } from \"@solid2-aria/core/focus/create-focus-ring\";\nimport { createLocalizedStringFormatter } from \"@solid2-aria/core/i18n/create-localized-string-formatter\";\nimport { createLocale } from \"@solid2-aria/core/i18n/i18n-provider\";\nimport { createHover } from \"@solid2-aria/core/interactions/create-hover\";\nimport { createTable } from \"@solid2-aria/core/table/create-table\";\nimport { createTableCell } from \"@solid2-aria/core/table/create-table-cell\";\nimport { createTableColumnHeader } from \"@solid2-aria/core/table/create-table-column-header\";\nimport { createTableColumnResize } from \"@solid2-aria/core/table/create-table-column-resize\";\nimport { createTableHeaderRow } from \"@solid2-aria/core/table/create-table-header-row\";\nimport { createTableRow } from \"@solid2-aria/core/table/create-table-row\";\nimport { createTableRowGroup } from \"@solid2-aria/core/table/create-table-row-group\";\nimport {\n createTableSelectionCheckbox,\n createTableSelectAllCheckbox,\n} from \"@solid2-aria/core/table/create-table-selection-checkbox\";\nimport { createLoadMoreSentinel } from \"@solid2-aria/core/utils/create-load-more-sentinel\";\nimport type { LoadMoreSentinelProps } from \"@solid2-aria/core/utils/create-load-more-sentinel\";\nimport { filterDOMProps } from \"@solid2-aria/core/utils/filter-dom-props\";\nimport { isPresent } from \"@solid2-aria/core/utils/is-present\";\nimport { mergeProps } from \"@solid2-aria/core/utils/merge-props\";\nimport { requireValue } from \"@solid2-aria/core/utils/require-value\";\nimport { isTruthy } from \"@solid2-aria/core/utils/truthy\";\nimport type { GridNode } from \"@solid2-aria/stately/grid/grid-collection\";\nimport type {\n ColumnSize,\n ColumnStaticSize,\n} from \"@solid2-aria/stately/table/column\";\nimport { createTableColumnResizeState } from \"@solid2-aria/stately/table/create-table-column-resize-state\";\nimport type { TableColumnResizeState } from \"@solid2-aria/stately/table/create-table-column-resize-state\";\nimport { createTableState } from \"@solid2-aria/stately/table/create-table-state\";\nimport type {\n TableState,\n TableProps as SharedTableProps,\n} from \"@solid2-aria/stately/table/create-table-state\";\nimport { buildHeaderRows } from \"@solid2-aria/stately/table/table-collection\";\nimport type { ITableCollection } from \"@solid2-aria/stately/table/table-collection\";\nimport { createControlledSignal } from \"@solid2-aria/stately/utils/create-controlled-signal\";\nimport { getNodeProps } from \"@solid2-aria/stately/utils/get-node-props\";\nimport type {\n Key,\n Node,\n LinkDOMProps,\n HoverEvents,\n PressEvents,\n SelectionMode,\n SelectionBehavior,\n DisabledBehavior,\n SortDirection,\n AriaLabelingProps,\n} from \"@solid2-aria/types-shared\";\nimport type { GlobalDOMAttributes } from \"@solid2-aria/types-shared-web\";\nimport { dynamic, Portal } from \"@solidjs/web\";\nimport type { JSX } from \"@solidjs/web\";\nimport {\n merge,\n untrack,\n createSignal,\n createContext,\n useContext,\n createMemo,\n omit,\n onSettled,\n} from \"solid-js\";\nimport type { Accessor } from \"solid-js\";\n\nimport intlMessages from \"../intl\";\nimport { ButtonContext } from \"./button\";\nimport { CheckboxContext, CheckboxFieldContext } from \"./checkbox\";\nimport {\n CollectionRendererContext,\n DefaultCollectionRenderer,\n} from \"./collection\";\nimport type { CollectionProps, ItemRenderProps } from \"./collection\";\nimport type { DragAndDropHooks } from \"./create-drag-and-drop\";\nimport {\n DragAndDropContext,\n DropIndicatorContext,\n createDndPersistedKeys,\n createRenderDropIndicator,\n} from \"./drag-and-drop\";\nimport {\n RootDropIndicator,\n createCollectionDragAndDrop,\n CollectionDropIndicator,\n} from \"./grid-list\";\nimport { SelectionIndicatorContext } from \"./selection-indicator\";\nimport { TreeDropTargetDelegate } from \"./tree-drop-target-delegate\";\nimport {\n assignRef,\n dom,\n DEFAULT_SLOT,\n createContextProps,\n createRenderProps,\n} from \"./utils\";\nimport type {\n ClassOrFunction,\n ContextValue,\n RenderProps,\n StyleRenderProps,\n StyleProps,\n SlotProps,\n DOMProps,\n DOMRenderProps,\n Ref,\n} from \"./utils\";\n\nclass TableHeaderNode<T> extends CollectionNode<T> {\n static override readonly type = \"tableheader\";\n}\n\nclass TableColumnNode extends CollectionNode<unknown> {\n static override readonly type = \"column\";\n}\n\nclass TableBodyNode<T> extends FilterableNode<T> {\n static override readonly type = \"tablebody\";\n}\n\nclass TableFooterNode<T> extends FilterableNode<T> {\n static override readonly type = \"tablefooter\";\n}\n\nclass TableRowNode<T> extends CollectionNode<T> {\n static override readonly type = \"item\";\n override filter(\n collection: BaseCollection<T>,\n newCollection: BaseCollection<T>,\n filterFn: (text: string, node: Node<T>) => boolean\n ): this | null {\n for (const cell of collection.getChildren(this.key)) {\n if (filterFn(cell.textValue, cell)) {\n const clone = this.clone();\n newCollection.addDescendants(clone, collection);\n\n return clone;\n }\n }\n\n return null;\n }\n}\n\nclass TableCellNode extends CollectionNode<unknown> {\n static override readonly type = \"cell\";\n}\n\nclass TableCollection<T>\n extends BaseCollection<T>\n implements ITableCollection<T>\n{\n headerRows: GridNode<T>[] = [];\n columns: GridNode<T>[] = [];\n rows: GridNode<T>[] = [];\n rowHeaderColumnKeys = new Set<Key>();\n head = new TableHeaderNode<T>(-1);\n columnsDirty = true;\n expandedKeys = new Set<Key>();\n\n withExpandedKeys(expandedKeys: Set<Key>) {\n const collection = this.clone();\n collection.expandedKeys = expandedKeys;\n collection.frozen = this.frozen;\n collection.rows = [...collection.getRows()];\n\n return collection;\n }\n\n override addNode(node: CollectionNode<T>) {\n super.addNode(node);\n\n this.columnsDirty ||= node.type === \"column\";\n\n if (node.type === \"tableheader\") {\n this.head = node;\n }\n }\n\n private getRows(): GridNode<T>[] {\n const rows: GridNode<T>[] = [];\n\n for (const child of this) {\n if (child.type === \"tablebody\" || child.type === \"tablefooter\") {\n rows.push(...this.getChildren(child.key));\n }\n }\n\n return rows;\n }\n\n // backward compatibility\n get body() {\n for (const child of this) {\n if (child.type === \"tablebody\") {\n return child;\n }\n }\n\n return new TableBodyNode<T>(-2);\n }\n\n override commit(firstKey: Key, lastKey: Key, isSSR = false) {\n this.updateColumns(isSSR);\n\n this.firstKey = firstKey;\n this.lastKey = lastKey;\n this.rows = [];\n\n for (const row of this.getRows()) {\n const { lastChildKey } = row;\n\n if (isPresent(lastChildKey)) {\n let lastCell = this.getItem(lastChildKey);\n\n while (lastCell && lastCell.type !== \"cell\") {\n lastCell = isPresent(lastCell.prevKey)\n ? this.getItem(lastCell.prevKey)\n : null;\n }\n\n if (lastCell) {\n const numberOfCellsInRow =\n (lastCell.colIndex ?? lastCell.index) + (lastCell.colSpan ?? 1);\n\n if (numberOfCellsInRow !== this.columns.length && !isSSR) {\n throw new Error(\n `Cell count must match column count. Found ${numberOfCellsInRow} cells and ${this.columns.length} columns.`\n );\n }\n }\n }\n\n this.rows.push(row);\n }\n\n super.commit(firstKey, lastKey, isSSR);\n }\n\n private updateColumns(isSSR: boolean) {\n if (!this.columnsDirty) {\n return;\n }\n\n this.rowHeaderColumnKeys = new Set();\n this.columns = [];\n const columnKeyMap = new Map<Key, GridNode<T>>();\n\n const visit = (node: Node<T>) => {\n switch (node.type) {\n case \"column\": {\n columnKeyMap.set(node.key, node);\n\n if (!node.hasChildNodes) {\n node.index = this.columns.length;\n this.columns.push(node);\n\n if (isTruthy(getNodeProps(node).isRowHeader)) {\n this.rowHeaderColumnKeys.add(node.key);\n }\n }\n\n break;\n }\n\n default: {\n break;\n }\n }\n\n for (const child of this.getChildren(node.key)) {\n visit(child);\n }\n };\n\n for (const node of this.getChildren(this.head.key)) {\n visit(node);\n }\n\n this.headerRows = buildHeaderRows(columnKeyMap, this.columns);\n this.columnsDirty = false;\n\n if (\n this.rowHeaderColumnKeys.size === 0 &&\n this.columns.length > 0 &&\n !isSSR\n ) {\n throw new Error(\n \"A table must have at least one Column with the isRowHeader prop set to true\"\n );\n }\n }\n\n get columnCount() {\n return this.columns.length;\n }\n\n override *[Symbol.iterator]() {\n let key = this.firstKey;\n\n while (isPresent(key)) {\n const node = this.getItem(key);\n\n if (node) {\n yield node;\n }\n\n key = node?.nextKey ?? null;\n }\n }\n\n override getFirstKey() {\n for (const child of this) {\n if (child.type === \"tablebody\") {\n return child.firstChildKey ?? null;\n }\n }\n\n return null;\n }\n\n override getLastKey() {\n const key = this.lastKey;\n\n if (!isPresent(key)) {\n return null;\n }\n\n let node = requireValue(this.getItem(key), \"Expected this.getItem(key)\");\n\n while (\n isPresent(node?.lastChildKey) &&\n (node.type !== \"item\" || this.expandedKeys.has(node.key))\n ) {\n node = requireValue(\n this.getItem(node.lastChildKey),\n \"Expected this.getItem(node.lastChildKey)\"\n );\n }\n\n return node?.key;\n }\n\n override getKeyAfter(key: Key) {\n const node = requireValue(this.getItem(key), \"Expected this.getItem(key)\");\n\n if (node?.type === \"column\") {\n return node.nextKey ?? null;\n }\n\n if (!isTruthy(node)) {\n return null;\n }\n\n // If this is an expanded item, return the first child item if unknown.\n if (\n node.type === \"item\" &&\n isPresent(node.firstChildKey) &&\n this.expandedKeys.has(node.key)\n ) {\n let child = this.getItem(node.firstChildKey);\n\n while (child) {\n if (child.type === \"item\") {\n return child.key;\n }\n\n child = isPresent(child.nextKey) ? this.getItem(child.nextKey) : null;\n }\n }\n\n return super.getKeyAfter(key);\n }\n\n override getKeyBefore(key: Key) {\n let node = requireValue(this.getItem(key), \"Expected this.getItem(key)\");\n\n if (node?.type === \"column\") {\n return node.prevKey ?? null;\n }\n\n if (!isTruthy(node)) {\n return null;\n }\n\n let k: Key | null = null;\n\n if (isPresent(node.prevKey)) {\n node = requireValue(\n this.getItem(node.prevKey),\n \"Expected this.getItem(node.prevKey)\"\n );\n\n // Traverse to the deepest expanded child.\n while (\n Boolean(node) &&\n (node.type !== \"item\" || this.expandedKeys.has(node.key)) &&\n isPresent(node.lastChildKey)\n ) {\n node = requireValue(\n this.getItem(node.lastChildKey),\n \"Expected this.getItem(node.lastChildKey)\"\n );\n }\n\n k = node?.key ?? null;\n }\n\n k ??= node.parentKey;\n\n if (isPresent(k) && this.getItem(k)?.type === \"tableheader\") {\n return null;\n }\n\n return k;\n }\n\n private *headerChildren(key: Key): IterableIterator<CollectionNode<T>> {\n const header = this.headerRows.find((row) => row.key === key);\n\n if (!header) {\n return;\n }\n\n // oxlint-disable-next-line typescript/no-deprecated -- buildHeaderRows returns synthetic headers with the upstream childNodes output contract.\n for (const child of header.childNodes) {\n yield child instanceof CollectionNode\n ? child\n : Object.assign(new CollectionNode<T>(child.key), child);\n }\n }\n\n override *getChildren(key: Key): IterableIterator<CollectionNode<T>> {\n const parent = this.getItem(key);\n\n if (!parent) {\n yield* this.headerChildren(key);\n\n return;\n }\n\n let node = isPresent(parent?.firstChildKey)\n ? this.getItem(parent.firstChildKey)\n : null;\n\n const flattenRows =\n parent?.type === \"tablebody\" || parent?.type === \"tablefooter\";\n\n while (node) {\n yield node;\n const nextKey = flattenRows ? this.getKeyAfter(node.key) : node.nextKey;\n node = isPresent(nextKey) ? this.getItem(nextKey) : null;\n\n if (flattenRows && node?.parentKey === parent?.parentKey) {\n break;\n }\n\n if (!flattenRows && parent?.type === \"item\" && node?.type !== \"cell\") {\n break;\n }\n }\n }\n\n override clone() {\n const collection = super.clone();\n collection.headerRows = this.headerRows;\n collection.columns = this.columns;\n collection.rows = this.rows;\n collection.rowHeaderColumnKeys = this.rowHeaderColumnKeys;\n collection.head = this.head;\n\n return collection;\n }\n\n getTextValue(key: Key): string {\n const row = this.getItem(key);\n\n if (!row) {\n return \"\";\n }\n\n // If the row has a textValue, use that.\n if (row.textValue) {\n return row.textValue;\n }\n\n // Otherwise combine the text of each of the row header columns.\n const { rowHeaderColumnKeys } = this;\n const text: string[] = [];\n\n for (const cell of this.getChildren(key)) {\n const column = this.columns[cell.index];\n\n if (column && rowHeaderColumnKeys.has(column.key) && cell.textValue) {\n text.push(cell.textValue);\n }\n\n if (text.length === rowHeaderColumnKeys.size) {\n break;\n }\n }\n\n return text.join(\" \");\n }\n}\n\nexport interface ResizableTableContainerProps\n extends\n DOMProps,\n DOMRenderProps<\"div\", undefined>,\n GlobalDOMAttributes<HTMLDivElement> {\n class?: JSX.ClassValue;\n\n onResizeStart?: (widths: Map<Key, ColumnSize>) => void;\n\n onResize?: (widths: Map<Key, ColumnSize>) => void;\n\n onResizeEnd?: (widths: Map<Key, ColumnSize>) => void;\n}\n\nexport interface TableRenderProps {\n isFocused: boolean;\n\n isFocusVisible: boolean;\n\n isDropTarget: boolean;\n\n state: TableState<unknown>;\n}\n\nexport interface TableProps\n extends\n Omit<SharedTableProps<unknown>, \"children\">,\n StyleRenderProps<TableRenderProps, \"table\" | \"div\">,\n SlotProps,\n AriaLabelingProps,\n GlobalDOMAttributes<HTMLTableElement> {\n class?: ClassOrFunction<TableRenderProps>;\n\n children?: JSX.Element;\n\n selectionBehavior?: SelectionBehavior;\n\n disabledBehavior?: DisabledBehavior;\n\n onRowAction?: (key: Key) => void;\n\n dragAndDropHooks?: DragAndDropHooks;\n}\n\nexport interface TableOptionsContextValue {\n selectionMode: SelectionMode;\n\n selectionBehavior: SelectionBehavior | null;\n\n disallowEmptySelection: boolean;\n\n allowsDragging: boolean;\n}\n\nexport interface TableHeaderRenderProps {\n isHovered: boolean;\n}\n\nexport interface TableHeaderProps<T>\n extends\n StyleRenderProps<TableHeaderRenderProps, \"thead\" | \"div\">,\n HoverEvents,\n GlobalDOMAttributes<HTMLTableSectionElement> {\n class?: ClassOrFunction<TableHeaderRenderProps>;\n\n columns?: Iterable<T>;\n\n children?: JSX.Element | ((item: T) => JSX.Element);\n\n dependencies?: readonly unknown[];\n}\n\nexport interface ColumnRenderProps {\n isHovered: boolean;\n\n isPressed: boolean;\n\n isFocused: boolean;\n\n isFocusVisible: boolean;\n\n allowsSorting: boolean;\n\n sortDirection: SortDirection | undefined;\n\n isResizing: boolean;\n\n sort: (direction: SortDirection) => void;\n\n startResize: () => void;\n}\n\nexport interface ColumnProps\n extends\n RenderProps<ColumnRenderProps, \"th\" | \"div\">,\n GlobalDOMAttributes<HTMLTableCellElement> {\n class?: ClassOrFunction<ColumnRenderProps>;\n\n id?: Key;\n\n allowsSorting?: boolean;\n\n isRowHeader?: boolean;\n\n textValue?: string;\n\n width?: ColumnSize | null;\n\n defaultWidth?: ColumnSize | null;\n\n minWidth?: ColumnStaticSize | null;\n\n maxWidth?: ColumnStaticSize | null;\n\n focusMode?: \"child\" | \"cell\";\n\n allowsArrowNavigation?: boolean;\n}\n\nexport interface ColumnResizerRenderProps {\n isHovered: boolean;\n\n isFocused: boolean;\n\n isFocusVisible: boolean;\n\n isResizing: boolean;\n\n resizableDirection: \"right\" | \"left\" | \"both\";\n}\n\nexport interface ColumnResizerProps\n extends\n HoverEvents,\n RenderProps<ColumnResizerRenderProps>,\n GlobalDOMAttributes<HTMLDivElement> {\n class?: ClassOrFunction<ColumnResizerRenderProps>;\n\n \"aria-label\"?: string;\n}\n\nexport interface TableBodyRenderProps {\n isEmpty: boolean;\n\n isDropTarget: boolean;\n}\n\nexport interface TableBodyProps<T>\n extends\n Omit<CollectionProps<T>, \"disabledKeys\">,\n StyleRenderProps<TableBodyRenderProps, \"tbody\" | \"div\">,\n GlobalDOMAttributes<HTMLTableSectionElement> {\n class?: ClassOrFunction<TableBodyRenderProps>;\n\n renderEmptyState?: (props: TableBodyRenderProps) => JSX.Element;\n}\n\nexport interface TableFooterProps<T>\n extends\n Omit<CollectionProps<T>, \"disabledKeys\">,\n StyleProps,\n GlobalDOMAttributes<HTMLTableSectionElement> {\n class?: JSX.ClassValue;\n}\n\nexport interface RowRenderProps extends ItemRenderProps {\n isFocusVisibleWithin: boolean;\n\n id?: Key;\n\n isExpanded: boolean;\n\n hasChildItems: boolean;\n\n level: number;\n\n state: TableState<unknown>;\n}\n\nexport interface RowFocusContextValue {\n isFocusVisibleWithinRow: boolean;\n}\n\nexport interface RowProps<T>\n extends\n StyleRenderProps<RowRenderProps, \"tr\" | \"div\">,\n LinkDOMProps,\n HoverEvents,\n PressEvents,\n Omit<GlobalDOMAttributes<HTMLTableRowElement>, \"onClick\"> {\n class?: ClassOrFunction<RowRenderProps>;\n\n columns?: Iterable<T>;\n\n children?: JSX.Element | ((item: T) => JSX.Element);\n\n value?: T;\n\n dependencies?: readonly unknown[];\n\n textValue?: string;\n\n isDisabled?: boolean;\n\n disabledBehavior?: DisabledBehavior;\n\n onAction?: () => void;\n\n id?: Key;\n\n hasChildItems?: boolean;\n}\n\nexport interface CellRenderProps {\n isPressed: boolean;\n\n isFocused: boolean;\n\n isFocusVisible: boolean;\n\n isHovered: boolean;\n\n isSelected: boolean;\n\n isDisabled: boolean;\n\n isFocusVisibleWithinRow: boolean;\n\n id?: Key;\n\n columnIndex?: number | null;\n\n isTreeColumn: boolean;\n\n isExpanded: boolean;\n\n hasChildItems: boolean;\n\n level: number;\n}\n\nexport interface CellProps\n extends\n RenderProps<CellRenderProps, \"td\" | \"div\">,\n GlobalDOMAttributes<HTMLTableCellElement> {\n class?: ClassOrFunction<CellRenderProps>;\n\n id?: Key;\n\n textValue?: string;\n\n colSpan?: number;\n\n focusMode?: \"child\" | \"cell\";\n\n allowsArrowNavigation?: boolean;\n}\n\nexport interface TableLoadMoreItemProps\n extends\n Omit<LoadMoreSentinelProps, \"collection\">,\n StyleProps,\n DOMRenderProps<\"tr\" | \"div\", undefined>,\n GlobalDOMAttributes<HTMLTableRowElement> {\n class?: JSX.ClassValue;\n\n children?: JSX.Element;\n\n isLoading?: boolean;\n}\n\nexport const TableContext =\n createContext<ContextValue<TableProps, HTMLTableElement>>(null);\n\nexport const TableStateContext = createContext<TableState<unknown> | null>(\n null\n);\n\nexport const TableColumnResizeStateContext =\n createContext<TableColumnResizeState<unknown> | null>(null);\n\nexport const RowFocusContext = createContext<RowFocusContextValue>({\n isFocusVisibleWithinRow: false,\n});\n\nconst TableOptionsContext = createContext<TableOptionsContextValue | null>(\n null\n);\n\nconst ResizableTableContainerContext = createContext<\n | (Pick<\n ResizableTableContainerProps,\n \"onResizeStart\" | \"onResize\" | \"onResizeEnd\"\n > & {\n tableWidth: number;\n tableRef: Accessor<HTMLTableElement | null>;\n setTableRef: (element: HTMLTableElement) => void;\n })\n | null\n>(null);\n\nconst ColumnResizerContext = createContext<{\n column: GridNode<unknown>;\n triggerRef: Accessor<HTMLElement | null>;\n} | null>(null);\n\nexport function createTableOptions(): TableOptionsContextValue {\n const options = useContext(TableOptionsContext);\n\n if (!options) {\n throw new Error(\"Table options require a Table.\");\n }\n\n return options;\n}\n\nexport function ResizableTableContainer(\n props: ResizableTableContainerProps & { ref?: Ref<HTMLDivElement> }\n) {\n const [ref, setRef] = createSignal<HTMLElement | null>(null, {\n ownedWrite: true,\n });\n\n const [tableRef, setTableRef] = createSignal<HTMLTableElement | null>(null, {\n ownedWrite: true,\n });\n\n const [width, setWidth] = createSignal(0);\n onSettled((): undefined | (() => void) => {\n let measured: HTMLElement | null = tableRef();\n\n while (\n measured &&\n measured !== ref() &&\n measured.scrollWidth <= measured.clientWidth\n ) {\n measured = measured.parentElement;\n }\n\n measured ??= ref();\n\n if (!measured) {\n return undefined;\n }\n\n const element = measured;\n setWidth(element.clientWidth);\n\n const observer = new ResizeObserver(() => {\n setWidth(element.clientWidth);\n });\n\n observer.observe(element, { box: \"border-box\" });\n\n return () => {\n observer.disconnect();\n };\n });\n\n const context = mergeProps(props, {\n setTableRef: (element: HTMLTableElement) => {\n setTableRef(element);\n },\n tableRef,\n get tableWidth() {\n return width();\n },\n });\n\n return (\n <dom.div\n {...filterDOMProps(props, { global: true })}\n render={props.render}\n class={props.class ?? \"solid2-aria-ResizableTableContainer\"}\n style={props.style}\n ref={[\n (element: HTMLElement) => {\n setRef(element);\n },\n (element: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n element\n );\n },\n ]}\n >\n <ResizableTableContainerContext value={context}>\n {props.children}\n </ResizableTableContainerContext>\n </dom.div>\n );\n}\n\nexport function Table(input: TableProps & { ref?: Ref<HTMLTableElement> }) {\n const [props, ref, setRef] = createContextProps(\n input,\n untrack(() => input.ref),\n TableContext\n );\n\n return (\n <CollectionBuilder\n createCollection={() => new TableCollection<unknown>()}\n content={<Collection>{props.children}</Collection>}\n >\n {(collection) => (\n <TableInner\n props={props}\n collection={collection}\n elementRef={ref}\n setElementRef={(element: HTMLTableElement) => {\n setRef(element);\n }}\n />\n )}\n </CollectionBuilder>\n );\n}\n\nfunction TableInner(outer: {\n props: TableProps;\n collection: TableCollection<unknown>;\n elementRef: Accessor<HTMLTableElement | null>;\n setElementRef: (element: HTMLTableElement) => void;\n}) {\n const { props } = untrack(() => outer);\n const renderer = useContext(CollectionRendererContext);\n const container = useContext(ResizableTableContainerContext);\n\n const [expanded, setExpanded] = createControlledSignal(\n () => (props.expandedKeys ? new Set(props.expandedKeys) : undefined),\n new Set(props.defaultExpandedKeys),\n (keys) => {\n props.onExpandedChange?.(keys);\n }\n );\n\n const collection = createMemo(() =>\n outer.collection.withExpandedKeys(expanded())\n );\n\n // oxlint-disable-next-line typescript/no-explicit-any -- The public collection accepts primitive items; this state adapter only reads their keyed nodes.\n const state = createTableState<any>(\n mergeProps(props, {\n children: undefined,\n get collection() {\n return collection();\n },\n get expandedKeys() {\n return expanded();\n },\n onExpandedChange: setExpanded,\n })\n );\n\n const aria = createTable(\n mergeProps(props, {\n get isVirtualized() {\n return renderer.isVirtualized;\n },\n get layoutDelegate() {\n return renderer.layoutDelegate;\n },\n }),\n state,\n untrack(() => outer.elementRef)\n );\n\n const resize = container\n ? createTableColumnResizeState(\n {\n get tableWidth() {\n return container.tableWidth;\n },\n },\n state\n )\n : null;\n\n const locale = createLocale();\n const treeDelegate = new TreeDropTargetDelegate<unknown>();\n\n if (props.dragAndDropHooks?.createDroppableCollectionState) {\n const hooks = props.dragAndDropHooks;\n treeDelegate.setup(\n hooks.dropTargetDelegate ??\n renderer.dropTargetDelegate ??\n new hooks.ListDropTargetDelegate(\n {\n [Symbol.iterator]() {\n return state.collection.rows[Symbol.iterator]();\n },\n },\n untrack(() => outer.elementRef)\n ),\n state,\n locale.direction\n );\n }\n\n const dnd = createCollectionDragAndDrop({\n get collection() {\n return state.collection;\n },\n get dropTargetCollection() {\n return state.collection.rows;\n },\n dropTargetDelegate: treeDelegate,\n get hooks() {\n return props.dragAndDropHooks;\n },\n get ref() {\n return outer.elementRef;\n },\n get selectionManager() {\n return state.selectionManager;\n },\n });\n\n const focus = createFocusRing();\n\n const values: TableRenderProps = {\n get isDropTarget() {\n return dnd.dropState?.isDropTarget({ type: \"root\" }) === true;\n },\n get isFocusVisible() {\n return focus.isFocusVisible;\n },\n get isFocused() {\n return focus.isFocused;\n },\n state,\n };\n\n const render = createRenderProps(\n mergeProps(props, {\n children: undefined,\n defaultClass: \"solid2-aria-Table\",\n values,\n })\n );\n\n const Root = renderer.CollectionRoot;\n\n const Tag = dynamic(() =>\n renderer.isVirtualized === true ? dom.div : dom.table\n );\n\n const options: TableOptionsContextValue = {\n get allowsDragging() {\n return !!dnd.dragState;\n },\n get disallowEmptySelection() {\n return props.disallowEmptySelection === true;\n },\n get selectionBehavior() {\n return state.selectionManager.selectionMode === \"none\"\n ? null\n : state.selectionManager.selectionBehavior;\n },\n get selectionMode() {\n return state.selectionManager.selectionMode;\n },\n };\n\n return (\n <Tag\n {...mergeProps(\n filterDOMProps(props, { global: true }),\n render,\n merge(() => aria.gridProps ?? {}),\n merge(() => focus.focusProps ?? {}),\n merge(() => dnd.collectionProps ?? {})\n )}\n ref={(element: HTMLTableElement) => {\n outer.setElementRef(element);\n\n if (container) {\n container.setTableRef(element);\n }\n }}\n slot={props.slot ?? undefined}\n data-focused={focus.isFocused || undefined}\n data-focus-visible={focus.isFocusVisible || undefined}\n data-drop-target={values.isDropTarget || undefined}\n >\n <TableStateContext value={state}>\n <TableColumnResizeStateContext value={resize}>\n <TableOptionsContext value={options}>\n <DragAndDropContext value={dnd}>\n <DropIndicatorContext\n value={{\n render: (indicatorProps, ref) => (\n <CollectionDropIndicator\n {...indicatorProps}\n ref={ref}\n table={!(renderer.isVirtualized === true)}\n columnCount={state.collection.columnCount}\n />\n ),\n }}\n >\n <Root\n collection={state.collection}\n scrollRef={outer.elementRef}\n persistedKeys={createDndPersistedKeys(\n state.selectionManager,\n props.dragAndDropHooks,\n dnd.dropState\n )}\n />\n </DropIndicatorContext>\n </DragAndDropContext>\n </TableOptionsContext>\n </TableColumnResizeStateContext>\n </TableStateContext>\n {dnd.preview}\n </Tag>\n );\n}\n\nexport const TableHeader = createBranchComponent(\n TableHeaderNode,\n <T,>(\n props: TableHeaderProps<T>,\n ref: Ref<HTMLTableSectionElement>,\n _node: Node<T>\n ) => {\n const state = requireValue(\n useContext(TableStateContext),\n \"Expected useContext(TableStateContext)\"\n );\n\n const renderer = useContext(CollectionRendererContext);\n\n const Tag = dynamic(() =>\n renderer.isVirtualized === true ? dom.div : dom.thead\n );\n\n const hover = createHover(props);\n const group = createTableRowGroup();\n\n const render = createRenderProps(\n mergeProps(props, {\n children: undefined,\n defaultClass: \"solid2-aria-TableHeader\",\n values: {\n get isHovered() {\n return hover.isHovered;\n },\n },\n })\n );\n\n const rows = createCachedChildren({\n children: (item: GridNode<unknown>) => <TableHeaderRow item={item} />,\n get items() {\n return state.collection.headerRows;\n },\n });\n\n return (\n <Tag\n {...mergeProps(\n filterDOMProps(props, { global: true }),\n merge(() => group.rowGroupProps ?? {}),\n merge(() => hover.hoverProps ?? {}),\n render\n )}\n ref={ref}\n data-hovered={hover.isHovered || undefined}\n >\n {rows()}\n </Tag>\n );\n },\n <T,>(props: TableHeaderProps<T>) => (\n <Collection items={props.columns} dependencies={props.dependencies}>\n {props.children}\n </Collection>\n )\n);\n\nfunction TableHeaderRow(props: { item: GridNode<unknown> }) {\n const state = requireValue(\n useContext(TableStateContext),\n \"Expected useContext(TableStateContext)\"\n );\n\n const renderer = useContext(CollectionRendererContext);\n\n const [ref, setRef] = createSignal<HTMLTableRowElement | null>(null, {\n ownedWrite: true,\n });\n\n const Tag = dynamic(() =>\n renderer.isVirtualized === true ? dom.div : dom.tr\n );\n\n const Branch = renderer.CollectionBranch;\n\n const aria = createTableHeaderRow(\n {\n isVirtualized: renderer.isVirtualized,\n get node() {\n return props.item;\n },\n },\n state,\n ref\n );\n\n const checkbox = createTableSelectAllCheckbox(state);\n\n return (\n <Tag\n {...aria.rowProps}\n ref={(element: HTMLTableRowElement) => {\n setRef(element);\n }}\n >\n <CheckboxContext\n value={{\n slots: {\n get selection() {\n return checkbox.checkboxProps;\n },\n },\n }}\n >\n <CheckboxFieldContext\n value={{\n slots: {\n get selection() {\n return checkbox.checkboxProps;\n },\n },\n }}\n >\n <Branch collection={state.collection} parent={props.item} />\n </CheckboxFieldContext>\n </CheckboxContext>\n </Tag>\n );\n}\n\nexport const Column = createLeafComponent(\n TableColumnNode,\n (\n props: ColumnProps,\n forwardedRef: Ref<HTMLTableCellElement>,\n column: GridNode<unknown>\n ) => {\n const state = requireValue(\n useContext(TableStateContext),\n \"Expected useContext(TableStateContext)\"\n );\n\n const renderer = useContext(CollectionRendererContext);\n const resize = useContext(TableColumnResizeStateContext);\n\n const [ref, setRef] = createSignal<HTMLTableCellElement | null>(null, {\n ownedWrite: true,\n });\n\n const Tag = dynamic(() =>\n renderer.isVirtualized === true ? dom.div : dom.th\n );\n\n const aria = createTableColumnHeader(\n {\n get allowsArrowNavigation() {\n return props.allowsArrowNavigation;\n },\n get focusMode() {\n return props.focusMode;\n },\n isVirtualized: renderer.isVirtualized,\n node: column,\n },\n state,\n ref\n );\n\n const focus = createFocusRing();\n\n const hover = createHover({\n get isDisabled() {\n return !(props.allowsSorting === true);\n },\n });\n\n const values: ColumnRenderProps = {\n get allowsSorting() {\n return isTruthy(getNodeProps(column).allowsSorting);\n },\n get isFocusVisible() {\n return focus.isFocusVisible;\n },\n get isFocused() {\n return focus.isFocused;\n },\n get isHovered() {\n return hover.isHovered;\n },\n get isPressed() {\n return aria.isPressed;\n },\n get isResizing() {\n return resize?.resizingColumn === column.key;\n },\n sort: (direction) => {\n state.sort(column.key, direction);\n },\n get sortDirection() {\n return state.sortDescriptor?.column === column.key\n ? state.sortDescriptor.direction\n : undefined;\n },\n startResize: () => {\n if (!resize) {\n throw new Error(\n \"Wrap Table in ResizableTableContainer to enable resizing.\"\n );\n }\n\n resize.startResize(column.key);\n state.setKeyboardNavigationDisabled(true);\n },\n };\n\n const render = createRenderProps(\n mergeProps(props, {\n get children() {\n return column.rendered;\n },\n defaultClass: \"solid2-aria-Column\",\n id: undefined,\n values,\n })\n );\n\n return (\n <Tag\n {...mergeProps(\n omit(filterDOMProps(props, { global: true }), \"id\"),\n merge(() => aria.columnHeaderProps ?? {}),\n merge(() => focus.focusProps ?? {}),\n merge(() => hover.hoverProps ?? {}),\n render\n )}\n style={\n resize\n ? mergeProps(typeof render.style === \"object\" ? render.style : {}, {\n width: resize.getColumnWidth(column.key),\n })\n : render.style\n }\n ref={(element: HTMLTableCellElement) => {\n setRef(element);\n }}\n data-hovered={hover.isHovered || undefined}\n data-pressed={aria.isPressed || undefined}\n data-focused={focus.isFocused || undefined}\n data-focus-visible={focus.isFocusVisible || undefined}\n data-resizing={values.isResizing || undefined}\n data-allows-sorting={values.allowsSorting || undefined}\n data-sort-direction={values.sortDirection}\n >\n <ColumnResizerContext value={{ column, triggerRef: ref }}>\n <CollectionRendererContext value={DefaultCollectionRenderer}>\n {render.children}\n </CollectionRendererContext>\n </ColumnResizerContext>\n </Tag>\n );\n }\n);\n\nexport function ColumnResizer(\n props: ColumnResizerProps & { ref?: Ref<HTMLDivElement> }\n) {\n const resize = useContext(TableColumnResizeStateContext);\n const column = useContext(ColumnResizerContext);\n const container = useContext(ResizableTableContainerContext);\n\n if (!resize || !column) {\n throw new Error(\n \"ColumnResizer requires a column in ResizableTableContainer.\"\n );\n }\n\n const formatter = createLocalizedStringFormatter(\n intlMessages,\n \"@solid2-aria/components\"\n );\n\n const [input, setInput] = createSignal<HTMLInputElement | null>(null, {\n ownedWrite: true,\n });\n\n const [ref, setRef] = createSignal<HTMLDivElement | null>(null, {\n ownedWrite: true,\n });\n\n const locale = createLocale();\n\n const aria = createTableColumnResize(\n mergeProps(container ?? {}, {\n get \"aria-label\"() {\n return props[\"aria-label\"] ?? formatter.format(\"tableResizer\");\n },\n get column() {\n return column.column;\n },\n get triggerRef() {\n return column.triggerRef;\n },\n }),\n resize,\n input\n );\n\n const focus = createFocusRing();\n const hover = createHover(props);\n\n const values: ColumnResizerRenderProps = {\n get isFocusVisible() {\n return focus.isFocusVisible;\n },\n get isFocused() {\n return focus.isFocused;\n },\n get isHovered() {\n return hover.isHovered;\n },\n get isResizing() {\n return aria.isResizing;\n },\n get resizableDirection() {\n if (\n resize.getColumnMinWidth(column.column.key) >=\n resize.getColumnWidth(column.column.key)\n ) {\n return locale.direction === \"rtl\" ? \"right\" : \"left\";\n }\n\n if (\n resize.getColumnMaxWidth(column.column.key) <=\n resize.getColumnWidth(column.column.key)\n ) {\n return locale.direction === \"rtl\" ? \"left\" : \"right\";\n }\n\n return \"both\";\n },\n };\n\n const render = createRenderProps(\n mergeProps(props, { defaultClass: \"solid2-aria-ColumnResizer\", values })\n );\n\n return (\n <dom.div\n {...mergeProps(\n filterDOMProps(props, { global: true }),\n render,\n merge(() => aria.resizerProps ?? {}),\n merge(() => hover.hoverProps ?? {})\n )}\n role=\"presentation\"\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n data-hovered={hover.isHovered || undefined}\n data-focused={focus.isFocused || undefined}\n data-focus-visible={focus.isFocusVisible || undefined}\n data-resizing={aria.isResizing || undefined}\n data-resizable-direction={values.resizableDirection}\n >\n {render.children}\n <input\n {...mergeProps(\n merge(() => aria.inputProps ?? {}),\n merge(() => focus.focusProps ?? {})\n )}\n ref={(element: HTMLInputElement) => {\n setInput(element);\n }}\n />\n {aria.isMouseResizing && (\n <Portal mount={document.body}>\n <div\n style={{\n bottom: 0,\n get cursor() {\n const element = ref();\n\n return element ? getComputedStyle(element).cursor : undefined;\n },\n left: 0,\n position: \"fixed\",\n right: 0,\n top: 0,\n }}\n data-testid=\"cursor-overlay\"\n />\n </Portal>\n )}\n </dom.div>\n );\n}\n\nexport const TableBody = createBranchComponent(\n TableBodyNode,\n <T,>(\n props: TableBodyProps<T>,\n ref: Ref<HTMLTableSectionElement>,\n node: Node<T>\n ) => {\n const state = requireValue(\n useContext(TableStateContext),\n \"Expected useContext(TableStateContext)\"\n );\n\n const renderer = useContext(CollectionRendererContext);\n const dnd = useContext(DragAndDropContext);\n const Branch = renderer.CollectionBranch;\n\n const Tag = dynamic(() =>\n renderer.isVirtualized === true ? dom.div : dom.tbody\n );\n\n const RowTag = dynamic(() =>\n renderer.isVirtualized === true ? dom.div : dom.tr\n );\n\n const CellTag = dynamic(() =>\n renderer.isVirtualized === true ? dom.div : dom.td\n );\n\n const group = createTableRowGroup();\n\n const values: TableBodyRenderProps = {\n get isDropTarget() {\n return dnd.dropState?.isDropTarget({ type: \"root\" }) === true;\n },\n get isEmpty() {\n return !state.collection.rows.some((row) => row.type === \"item\");\n },\n };\n\n const render = createRenderProps(\n mergeProps(props, {\n children: undefined,\n defaultClass: \"solid2-aria-TableBody\",\n values,\n })\n );\n\n return (\n <Tag\n {...mergeProps(\n filterDOMProps(props, { global: true }),\n render,\n merge(() => group.rowGroupProps ?? {})\n )}\n ref={ref}\n data-empty={values.isEmpty || undefined}\n >\n {dnd.dropState && (\n <RootDropIndicator\n table={!(renderer.isVirtualized === true)}\n columnCount={state.collection.columnCount}\n />\n )}\n <Branch\n collection={state.collection}\n parent={node}\n renderDropIndicator={createRenderDropIndicator(\n dnd.dragAndDropHooks,\n dnd.dropState\n )}\n />\n {values.isEmpty && props.renderEmptyState && (\n <RowTag role=\"row\">\n <CellTag role=\"rowheader\" colspan={state.collection.columnCount}>\n {props.renderEmptyState(values)}\n </CellTag>\n </RowTag>\n )}\n </Tag>\n );\n }\n);\n\nexport const TableFooter = createBranchComponent(\n TableFooterNode,\n <T,>(\n props: TableFooterProps<T>,\n ref: Ref<HTMLTableSectionElement>,\n node: Node<T>\n ) => {\n const state = requireValue(\n useContext(TableStateContext),\n \"Expected useContext(TableStateContext)\"\n );\n\n const renderer = useContext(CollectionRendererContext);\n const dnd = useContext(DragAndDropContext);\n const Branch = renderer.CollectionBranch;\n\n const Tag = dynamic(() =>\n renderer.isVirtualized === true ? dom.div : dom.tfoot\n );\n\n const group = createTableRowGroup();\n\n return (\n <Tag\n {...mergeProps(\n filterDOMProps(props, { global: true }),\n merge(() => group.rowGroupProps ?? {})\n )}\n class={props.class ?? \"solid2-aria-TableFooter\"}\n style={props.style}\n ref={ref}\n >\n <Branch\n collection={state.collection}\n parent={node}\n renderDropIndicator={createRenderDropIndicator(\n dnd.dragAndDropHooks,\n dnd.dropState\n )}\n />\n </Tag>\n );\n }\n);\n\nexport function Row<T>(\n ownProps: RowProps<T> & { ref?: Ref<HTMLTableRowElement> }\n): JSX.Element {\n return createBranchComponent<T, RowProps<T>, HTMLTableRowElement>(\n TableRowNode,\n (\n props: RowProps<T>,\n forwardedRef: Ref<HTMLTableRowElement>,\n item: GridNode<T>\n ) => {\n const state = requireValue(\n useContext(TableStateContext),\n \"Expected useContext(TableStateContext)\"\n );\n\n const renderer = useContext(CollectionRendererContext);\n const dnd = useContext(DragAndDropContext);\n const Branch = renderer.CollectionBranch;\n\n const Tag = dynamic(() =>\n renderer.isVirtualized === true ? dom.div : dom.tr\n );\n\n const [ref, setRef] = createSignal<HTMLTableRowElement | null>(null, {\n ownedWrite: true,\n });\n\n const aria = createTableRow(\n {\n isVirtualized: renderer.isVirtualized,\n node: item,\n shouldSelectOnPressUp: !!dnd.dragState,\n },\n state,\n ref\n );\n\n const focus = createFocusRing();\n const within = createFocusRing({ within: true });\n\n const hover = createHover(\n mergeProps(props, {\n get isDisabled() {\n return !aria.allowsSelection && !aria.hasAction && !dnd.dragState;\n },\n })\n );\n\n const checkbox = createTableSelectionCheckbox({ key: item.key }, state);\n\n const drag = dnd.dragState\n ? dnd.dragAndDropHooks?.createDraggableItem?.(\n { hasDragButton: true, key: item.key },\n dnd.dragState\n )\n : undefined;\n\n const values: RowRenderProps = {\n get allowsDragging() {\n return !!dnd.dragState;\n },\n get hasChildItems() {\n return (\n props.hasChildItems === true ||\n (isPresent(item.lastChildKey) &&\n state.collection.getItem(item.lastChildKey)?.type !== \"cell\")\n );\n },\n id: item.key,\n get isDisabled() {\n return aria.isDisabled;\n },\n get isDragging() {\n return dnd.dragState?.isDragging(item.key) === true;\n },\n get isDropTarget() {\n return (\n dnd.dropState?.isDropTarget({\n dropPosition: \"on\",\n key: item.key,\n type: \"item\",\n }) === true\n );\n },\n get isExpanded() {\n return state.expandedKeys.has(item.key);\n },\n get isFocusVisible() {\n return focus.isFocusVisible;\n },\n get isFocusVisibleWithin() {\n return within.isFocusVisible;\n },\n get isFocused() {\n return focus.isFocused;\n },\n get isHovered() {\n return hover.isHovered;\n },\n get isPressed() {\n return aria.isPressed;\n },\n get isSelected() {\n return aria.isSelected;\n },\n level: item.level + 1,\n get selectionBehavior() {\n return state.selectionManager.selectionBehavior;\n },\n get selectionMode() {\n return state.selectionManager.selectionMode;\n },\n state,\n };\n\n const render = createRenderProps(\n mergeProps(props, {\n children: undefined,\n defaultClass: \"solid2-aria-Row\",\n values,\n })\n );\n\n return (\n <Tag\n {...mergeProps(\n omit(filterDOMProps(props, { global: true }), \"id\", \"onClick\"),\n render,\n merge(() => aria.rowProps ?? {}),\n merge(() => focus.focusProps ?? {}),\n merge(() => within.focusProps ?? {}),\n merge(() => hover.hoverProps ?? {}),\n merge(() => drag?.dragProps ?? {})\n )}\n ref={(element: HTMLTableRowElement) => {\n setRef(element);\n }}\n data-selected={aria.isSelected || undefined}\n data-disabled={aria.isDisabled || undefined}\n data-hovered={hover.isHovered || undefined}\n data-focused={focus.isFocused || undefined}\n data-focus-visible={focus.isFocusVisible || undefined}\n data-focus-visible-within={within.isFocusVisible || undefined}\n data-pressed={aria.isPressed || undefined}\n data-expanded={\n (values.hasChildItems && values.isExpanded) || undefined\n }\n data-has-child-items={values.hasChildItems || undefined}\n data-level={values.level}\n data-allows-dragging={!!dnd.dragState || undefined}\n data-dragging={values.isDragging ?? undefined}\n data-drop-target={values.isDropTarget ?? undefined}\n data-selection-mode={\n state.selectionManager.selectionMode === \"none\"\n ? undefined\n : state.selectionManager.selectionMode\n }\n >\n <CheckboxContext\n value={{\n slots: {\n [DEFAULT_SLOT]: {},\n get selection() {\n return checkbox.checkboxProps;\n },\n },\n }}\n >\n <CheckboxFieldContext\n value={{\n slots: {\n [DEFAULT_SLOT]: {},\n get selection() {\n return checkbox.checkboxProps;\n },\n },\n }}\n >\n <ButtonContext\n value={{\n slots: {\n [DEFAULT_SLOT]: {},\n get chevron() {\n return aria.expandButtonProps;\n },\n drag: mergeProps(\n merge(() => drag?.dragButtonProps ?? {}),\n {\n style: { \"pointer-events\": \"none\" as const },\n }\n ),\n },\n }}\n >\n <RowFocusContext\n value={{\n get isFocusVisibleWithinRow() {\n return within.isFocusVisible;\n },\n }}\n >\n <SelectionIndicatorContext\n value={{\n get isSelected() {\n return aria.isSelected;\n },\n }}\n >\n <Branch collection={state.collection} parent={item} />\n </SelectionIndicatorContext>\n </RowFocusContext>\n </ButtonContext>\n </CheckboxFieldContext>\n </CheckboxContext>\n </Tag>\n );\n },\n (props: RowProps<T>) => (\n <Collection items={props.columns} dependencies={props.dependencies}>\n {props.children}\n </Collection>\n )\n )(ownProps);\n}\n\nexport const Cell = createLeafComponent(\n TableCellNode,\n (\n props: CellProps,\n forwardedRef: Ref<HTMLTableCellElement>,\n cell: GridNode<unknown>\n ) => {\n const state = requireValue(\n useContext(TableStateContext),\n \"Expected useContext(TableStateContext)\"\n );\n\n const renderer = useContext(CollectionRendererContext);\n const dnd = useContext(DragAndDropContext);\n const within = useContext(RowFocusContext);\n\n const [ref, setRef] = createSignal<HTMLTableCellElement | null>(null, {\n ownedWrite: true,\n });\n\n const Tag = dynamic(() =>\n renderer.isVirtualized === true ? dom.div : dom.td\n );\n\n cell.column = state.collection.columns[cell.index];\n\n const aria = createTableCell(\n {\n get allowsArrowNavigation() {\n return props.allowsArrowNavigation;\n },\n get focusMode() {\n return props.focusMode;\n },\n isVirtualized: renderer.isVirtualized,\n node: cell,\n shouldSelectOnPressUp: !!dnd.dragState,\n },\n state,\n ref\n );\n\n const focus = createFocusRing();\n const hover = createHover({});\n\n const row = () =>\n isPresent(cell.parentKey)\n ? state.collection.getItem(cell.parentKey)\n : null;\n\n const values: CellRenderProps = {\n columnIndex: cell.colIndex ?? cell.index,\n get hasChildItems() {\n const node = row();\n\n return (\n isTruthy(getNodeProps(node).hasChildItems) ||\n (isPresent(node?.lastChildKey) &&\n state.collection.getItem(node.lastChildKey)?.type !== \"cell\")\n );\n },\n id: cell.key,\n get isDisabled() {\n return (\n isPresent(cell.parentKey) &&\n state.selectionManager.isDisabled(cell.parentKey)\n );\n },\n get isExpanded() {\n return (\n isPresent(cell.parentKey) && state.expandedKeys.has(cell.parentKey)\n );\n },\n get isFocusVisible() {\n return focus.isFocusVisible;\n },\n get isFocusVisibleWithinRow() {\n return within.isFocusVisibleWithinRow;\n },\n get isFocused() {\n return focus.isFocused;\n },\n get isHovered() {\n return hover.isHovered;\n },\n get isPressed() {\n return aria.isPressed;\n },\n get isSelected() {\n return (\n isPresent(cell.parentKey) &&\n state.selectionManager.isSelected(cell.parentKey)\n );\n },\n get isTreeColumn() {\n return cell.column?.key === state.treeColumn;\n },\n get level() {\n return (row()?.level ?? 0) + 1;\n },\n };\n\n const render = createRenderProps(\n mergeProps(props, {\n get children() {\n return cell.rendered;\n },\n defaultClass: \"solid2-aria-Cell\",\n values,\n })\n );\n\n return (\n <Tag\n {...mergeProps(\n omit(filterDOMProps(props, { global: true }), \"id\"),\n render,\n merge(() => aria.gridCellProps ?? {}),\n merge(() => focus.focusProps ?? {}),\n merge(() => hover.hoverProps ?? {})\n )}\n ref={(element: HTMLTableCellElement) => {\n setRef(element);\n }}\n data-focused={focus.isFocused || undefined}\n data-focus-visible={focus.isFocusVisible || undefined}\n data-focus-visible-within-row={\n within.isFocusVisibleWithinRow || undefined\n }\n data-hovered={hover.isHovered || undefined}\n data-pressed={aria.isPressed || undefined}\n data-selected={values.isSelected || undefined}\n data-column-index={values.columnIndex}\n data-tree-column={values.isTreeColumn || undefined}\n data-expanded={values.isExpanded || undefined}\n data-has-child-items={values.hasChildItems || undefined}\n data-level={values.level}\n data-disabled={values.isDisabled || undefined}\n >\n <CollectionRendererContext value={DefaultCollectionRenderer}>\n {render.children}\n </CollectionRendererContext>\n </Tag>\n );\n }\n);\n\nexport const TableLoadMoreItem = createLeafComponent(\n LoaderNode,\n (\n props: TableLoadMoreItemProps,\n ref: Ref<HTMLTableRowElement>,\n item: Node<object>\n ) => {\n const state = requireValue(\n useContext(TableStateContext),\n \"Expected useContext(TableStateContext)\"\n );\n\n const renderer = useContext(CollectionRendererContext);\n\n const Tag = dynamic(() =>\n renderer.isVirtualized === true ? dom.div : dom.tr\n );\n\n const CellTag = dynamic(() =>\n renderer.isVirtualized === true ? dom.div : dom.td\n );\n\n const [sentinel, setSentinel] = createSignal<HTMLDivElement | null>(null, {\n ownedWrite: true,\n });\n\n createLoadMoreSentinel(\n mergeProps(props, {\n get collection() {\n return state.collection;\n },\n }),\n sentinel\n );\n\n return (\n <>\n <tr inert style={{ height: 0 }}>\n <td\n colspan={state.collection.columnCount}\n style={{ height: 0, padding: 0 }}\n >\n <div\n ref={(element: HTMLDivElement) => {\n setSentinel(element);\n }}\n style={{ height: \"1px\", width: \"1px\" }}\n />\n </td>\n </tr>\n {props.isLoading === true && (\n <Tag\n {...filterDOMProps(props, { global: true })}\n ref={ref}\n render={props.render}\n class={props.class ?? \"solid2-aria-TableLoadingIndicator\"}\n >\n <CellTag role=\"gridcell\" colspan={state.collection.columnCount}>\n {item.rendered}\n </CellTag>\n </Tag>\n )}\n </>\n );\n }\n);\n"],"mappings":"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"}
@@ -0,0 +1,194 @@
1
+ /*
2
+ * Copyright 2022 Adobe. All rights reserved.
3
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License. You may obtain a copy
5
+ * of the License at http://www.apache.org/licenses/LICENSE-2.0
6
+ *
7
+ * Unless required by applicable law or agreed to in writing, software distributed under
8
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9
+ * OF ANY KIND, either express or implied. See the License for the specific language
10
+ * governing permissions and limitations under the License.
11
+ */
12
+ /*
13
+ * Derived from Adobe React Spectrum: packages/react-aria-components/src/Tabs.tsx.
14
+ * Modified for Solid Aria: adapted collection ownership, contexts, accessibility primitives, and reactive properties for Solid 2; uses Solid class props.
15
+ * Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
16
+ */
17
+ import { ClassOrFunction, ContextValue, DOMRenderProps, PossibleLinkDOMRenderProps, Ref, RenderProps, SlotProps, StyleProps, StyleRenderProps } from "./utils.js";
18
+ import { CollectionProps } from "./collection.js";
19
+ import { JSX } from "@solidjs/web";
20
+ import { AriaTabListProps } from "@solid2-aria/core/tabs/create-tab-list";
21
+ import { AriaTabPanelProps } from "@solid2-aria/core/tabs/create-tab-panel";
22
+ import { TabListState } from "@solid2-aria/stately/tabs/create-tab-list-state";
23
+ import { AriaLabelingProps, FocusEvents, HoverEvents, Key, LinkDOMProps, Orientation, PressEvents } from "@solid2-aria/types-shared";
24
+ import { GlobalDOMAttributes } from "@solid2-aria/types-shared-web";
25
+ export declare const TabsContext: import("solid-js").Context<ContextValue<TabsProps, HTMLDivElement>>;
26
+ export declare const TabListStateContext: import("solid-js").Context<TabListState<unknown> | null>;
27
+ export interface TabsProps extends Omit<AriaTabListProps<unknown>, "items" | "children">, RenderProps<TabsRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
28
+ /**
29
+ * The CSS [class](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/class) for the
30
+ * element. A function may be provided to compute the class based on component state.
31
+ *
32
+ * @default 'react-aria-Tabs'
33
+ */
34
+ class?: ClassOrFunction<TabsRenderProps>;
35
+ }
36
+ export interface TabsRenderProps {
37
+ /**
38
+ * The orientation of the tabs.
39
+ *
40
+ * @selector [data-orientation="horizontal | vertical"]
41
+ */
42
+ orientation: Orientation;
43
+ }
44
+ export interface TabListProps<T> extends StyleRenderProps<TabListRenderProps>, AriaLabelingProps, Omit<CollectionProps<T>, "disabledKeys">, GlobalDOMAttributes<HTMLDivElement> {
45
+ /**
46
+ * The CSS [class](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/class) for the
47
+ * element. A function may be provided to compute the class based on component state.
48
+ *
49
+ * @default 'react-aria-TabList'
50
+ */
51
+ class?: ClassOrFunction<TabListRenderProps>;
52
+ }
53
+ export interface TabListRenderProps {
54
+ /**
55
+ * The orientation of the tab list.
56
+ *
57
+ * @selector [data-orientation="horizontal | vertical"]
58
+ */
59
+ orientation: Orientation;
60
+ /**
61
+ * State of the tab list.
62
+ */
63
+ state: TabListState<unknown>;
64
+ }
65
+ export interface TabProps extends Omit<RenderProps<TabRenderProps>, "render">, PossibleLinkDOMRenderProps<"div", TabRenderProps>, AriaLabelingProps, LinkDOMProps, HoverEvents, FocusEvents, PressEvents, Omit<GlobalDOMAttributes<HTMLDivElement>, "onClick"> {
66
+ /**
67
+ * The CSS [class](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/class) for the
68
+ * element. A function may be provided to compute the class based on component state.
69
+ *
70
+ * @default 'react-aria-Tab'
71
+ */
72
+ class?: ClassOrFunction<TabRenderProps>;
73
+ /** The unique id of the tab. */
74
+ id?: Key;
75
+ /** Whether the tab is disabled. */
76
+ isDisabled?: boolean;
77
+ }
78
+ export interface TabRenderProps {
79
+ /**
80
+ * Whether the tab is currently hovered with a mouse.
81
+ *
82
+ * @selector [data-hovered]
83
+ */
84
+ isHovered: boolean;
85
+ /**
86
+ * Whether the tab is currently in a pressed state.
87
+ *
88
+ * @selector [data-pressed]
89
+ */
90
+ isPressed: boolean;
91
+ /**
92
+ * Whether the tab is currently selected.
93
+ *
94
+ * @selector [data-selected]
95
+ */
96
+ isSelected: boolean;
97
+ /**
98
+ * Whether the tab is currently focused.
99
+ *
100
+ * @selector [data-focused]
101
+ */
102
+ isFocused: boolean;
103
+ /**
104
+ * Whether the tab is currently keyboard focused.
105
+ *
106
+ * @selector [data-focus-visible]
107
+ */
108
+ isFocusVisible: boolean;
109
+ /**
110
+ * Whether the tab is disabled.
111
+ *
112
+ * @selector [data-disabled]
113
+ */
114
+ isDisabled: boolean;
115
+ }
116
+ export interface TabPanelProps extends AriaTabPanelProps, RenderProps<TabPanelRenderProps>, GlobalDOMAttributes<HTMLDivElement> {
117
+ /**
118
+ * The CSS [class](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/class) for the
119
+ * element. A function may be provided to compute the class based on component state.
120
+ *
121
+ * @default 'react-aria-TabPanel'
122
+ */
123
+ class?: ClassOrFunction<TabPanelRenderProps>;
124
+ /**
125
+ * Whether to mount the tab panel in the DOM even when it is not currently selected. Inactive tab
126
+ * panels are inert and cannot be interacted with. They must be styled appropriately so this is
127
+ * clear to the user visually.
128
+ *
129
+ * @default false
130
+ */
131
+ shouldForceMount?: boolean;
132
+ }
133
+ export interface TabPanelRenderProps {
134
+ /**
135
+ * Whether the tab panel is currently focused.
136
+ *
137
+ * @selector [data-focused]
138
+ */
139
+ isFocused: boolean;
140
+ /**
141
+ * Whether the tab panel is currently keyboard focused.
142
+ *
143
+ * @selector [data-focus-visible]
144
+ */
145
+ isFocusVisible: boolean;
146
+ /**
147
+ * Whether the tab panel is currently non-interactive. This occurs when the
148
+ * `shouldForceMount` prop is true, and the corresponding tab is not selected.
149
+ *
150
+ * @selector [data-inert]
151
+ */
152
+ isInert: boolean;
153
+ /**
154
+ * Whether the tab panel is currently entering. Use this to apply animations.
155
+ *
156
+ * @selector [data-entering]
157
+ */
158
+ isEntering: boolean;
159
+ /**
160
+ * Whether the tab panel is currently exiting. Use this to apply animations.
161
+ *
162
+ * @selector [data-exiting]
163
+ */
164
+ isExiting: boolean;
165
+ /**
166
+ * State of the tab list.
167
+ */
168
+ state: TabListState<unknown>;
169
+ }
170
+ export interface TabPanelsProps<T> extends Omit<CollectionProps<T>, "disabledKeys">, StyleProps, DOMRenderProps<"div", undefined>, GlobalDOMAttributes<HTMLDivElement> {
171
+ /**
172
+ * The CSS [class](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/class) for the
173
+ * element.
174
+ *
175
+ * @default 'react-aria-TabPanels'
176
+ */
177
+ class?: JSX.ClassValue;
178
+ }
179
+ export declare function TabPanels<T>(props: TabPanelsProps<T> & {
180
+ ref?: Ref<HTMLDivElement>;
181
+ }): JSX.Element;
182
+ export declare function TabPanel(props: TabPanelProps & {
183
+ ref?: Ref<HTMLDivElement>;
184
+ }): JSX.Element;
185
+ export declare function Tab(props: TabProps & {
186
+ ref?: Ref<HTMLDivElement>;
187
+ }): JSX.Element;
188
+ export declare function Tabs(input: TabsProps & {
189
+ ref?: Ref<HTMLDivElement>;
190
+ }): JSX.Element;
191
+ export declare function TabList<T>(props: TabListProps<T> & {
192
+ ref?: Ref<HTMLDivElement>;
193
+ }): JSX.Element;
194
+ //# sourceMappingURL=tabs.d.ts.map