@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,378 @@
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 { assignRef, createContextProps, createRenderProps, createSlottedContext, dom } from "./utils.js";
18
+ import { CollectionRendererContext, DefaultCollectionRenderer } from "./collection.js";
19
+ import { SelectionIndicatorContext } from "./selection-indicator.js";
20
+ import { applyRef, createComponent, dynamic, mergeProps } from "@solidjs/web";
21
+ import { mergeProps as mergeProps$1 } from "@solid2-aria/core/utils/merge-props";
22
+ import { Show, createContext, createSignal, merge, omit, untrack, useContext } from "solid-js";
23
+ import { BaseCollection, ItemNode } from "@solid2-aria/core/collections/base-collection";
24
+ import { Collection, CollectionBuilder, createLeafComponent } from "@solid2-aria/core/collections/collection-builder";
25
+ import { filterDOMProps } from "@solid2-aria/core/utils/filter-dom-props";
26
+ import { createFocusRing } from "@solid2-aria/core/focus/create-focus-ring";
27
+ import { createHover } from "@solid2-aria/core/interactions/create-hover";
28
+ import { isTruthy } from "@solid2-aria/core/utils/truthy";
29
+ import { createIsHidden } from "@solid2-aria/core/collections/hidden";
30
+ import { createEnterAnimation, createExitAnimation } from "@solid2-aria/core/utils/animation";
31
+ import { createTab } from "@solid2-aria/core/tabs/create-tab";
32
+ import { createTabList } from "@solid2-aria/core/tabs/create-tab-list";
33
+ import { createTabPanel } from "@solid2-aria/core/tabs/create-tab-panel";
34
+ import { createTabListState } from "@solid2-aria/stately/tabs/create-tab-list-state";
35
+ // src/tabs.tsx
36
+ const TabsContext = createContext(null);
37
+ const TabListStateContext = createContext(null);
38
+ const TabCollection = createLeafComponent(ItemNode, (props, forwardedRef, node) => {
39
+ const state = useContext(TabListStateContext);
40
+ if (!state) throw new Error("Tab must be rendered in Tabs.");
41
+ const [ref, setRef] = createSignal(null, { ownedWrite: true });
42
+ const aria = createTab(mergeProps$1(props, { get key() {
43
+ return node.key;
44
+ } }), state, ref);
45
+ const focus = createFocusRing();
46
+ const hover = createHover(mergeProps$1(props, { get isDisabled() {
47
+ return aria.isDisabled;
48
+ } }));
49
+ const render = createRenderProps(mergeProps$1(props, {
50
+ defaultClass: "solid2-aria-Tab",
51
+ values: {
52
+ get isDisabled() {
53
+ return aria.isDisabled;
54
+ },
55
+ get isFocusVisible() {
56
+ return focus.isFocusVisible;
57
+ },
58
+ get isFocused() {
59
+ return focus.isFocused;
60
+ },
61
+ get isHovered() {
62
+ return hover.isHovered;
63
+ },
64
+ get isPressed() {
65
+ return aria.isPressed;
66
+ },
67
+ get isSelected() {
68
+ return aria.isSelected;
69
+ }
70
+ }
71
+ }));
72
+ const Element = dynamic(() => isTruthy(props.href) ? dom.a : dom.div);
73
+ return createComponent(Element, mergeProps(() => {
74
+ return mergeProps$1(omit(filterDOMProps(props, { global: true }), "id", "onClick"), merge(() => aria.tabProps ?? {}), merge(() => focus.focusProps ?? {}), merge(() => hover.hoverProps ?? {}), render);
75
+ }, {
76
+ ref: [(element) => {
77
+ setRef(element);
78
+ }, (element) => {
79
+ assignRef(forwardedRef, element);
80
+ }],
81
+ get "data-selected"() {
82
+ return aria.isSelected || void 0;
83
+ },
84
+ get "data-disabled"() {
85
+ return aria.isDisabled || void 0;
86
+ },
87
+ get "data-hovered"() {
88
+ return hover.isHovered || void 0;
89
+ },
90
+ get "data-pressed"() {
91
+ return aria.isPressed || void 0;
92
+ },
93
+ get "data-focused"() {
94
+ return focus.isFocused || void 0;
95
+ },
96
+ get "data-focus-visible"() {
97
+ return focus.isFocusVisible || void 0;
98
+ },
99
+ get children() {
100
+ return createComponent(SelectionIndicatorContext, {
101
+ value: { get isSelected() {
102
+ return aria.isSelected;
103
+ } },
104
+ get children() {
105
+ return render.children;
106
+ }
107
+ });
108
+ }
109
+ }));
110
+ });
111
+ function TabPanels(props) {
112
+ if (createIsHidden()) return null;
113
+ return createComponent(dom.div, mergeProps(() => {
114
+ return omit(filterDOMProps(props, {
115
+ global: true,
116
+ labelable: true
117
+ }), "id");
118
+ }, {
119
+ ref(r$) {
120
+ var _ref$ = props.ref;
121
+ typeof _ref$ === "function" || Array.isArray(_ref$) ? applyRef(_ref$, r$) : props.ref = r$;
122
+ },
123
+ get render() {
124
+ return props.render;
125
+ },
126
+ get "class"() {
127
+ return props.class ?? "solid2-aria-TabPanels";
128
+ },
129
+ get style() {
130
+ return props.style;
131
+ },
132
+ get children() {
133
+ return createComponent(Collection, props);
134
+ }
135
+ }));
136
+ }
137
+ function TabPanel(props) {
138
+ if (createIsHidden()) return null;
139
+ const state = useContext(TabListStateContext);
140
+ if (!state) throw new Error("TabPanel must be rendered in Tabs.");
141
+ const [panelRef, setPanelRef] = createSignal(null, { ownedWrite: true });
142
+ const initiallySelected = untrack(() => state.selectedKey === props.id);
143
+ const exiting = createExitAnimation(panelRef, () => state.selectedKey === props.id);
144
+ return createComponent(Show, {
145
+ get when() {
146
+ return (state.selectedKey === props.id || props.shouldForceMount) ?? exiting();
147
+ },
148
+ get children() {
149
+ return createComponent(TabPanelInner, {
150
+ props,
151
+ state,
152
+ panelRef,
153
+ setPanelRef: (element) => {
154
+ setPanelRef(element);
155
+ },
156
+ initiallySelected,
157
+ exiting
158
+ });
159
+ }
160
+ });
161
+ }
162
+ function TabPanelInner(input) {
163
+ const ref = untrack(() => input.panelRef);
164
+ const aria = createTabPanel(untrack(() => input.props), untrack(() => input.state), ref);
165
+ const focus = createFocusRing();
166
+ const selected = () => input.state.selectedKey === input.props.id;
167
+ const entering = createEnterAnimation(ref);
168
+ const values = {
169
+ get isEntering() {
170
+ return !input.initiallySelected && entering();
171
+ },
172
+ get isExiting() {
173
+ return input.exiting();
174
+ },
175
+ get isFocusVisible() {
176
+ return focus.isFocusVisible;
177
+ },
178
+ get isFocused() {
179
+ return focus.isFocused;
180
+ },
181
+ get isInert() {
182
+ return !selected();
183
+ },
184
+ get state() {
185
+ return input.state;
186
+ }
187
+ };
188
+ const render = createRenderProps(mergeProps$1(merge(() => input.props ?? {}), {
189
+ defaultClass: "solid2-aria-TabPanel",
190
+ values
191
+ }));
192
+ return createComponent(dom.div, mergeProps(() => {
193
+ return mergeProps$1(omit(filterDOMProps(input.props, { global: true }), "id"), merge(() => aria.tabPanelProps ?? {}), merge(() => focus.focusProps ?? {}), render);
194
+ }, {
195
+ ref: [(element) => {
196
+ input.setPanelRef(element);
197
+ }, (element) => {
198
+ assignRef(untrack(() => input.props.ref), element);
199
+ }],
200
+ get inert() {
201
+ return !selected() || input.props.inert;
202
+ },
203
+ get "data-entering"() {
204
+ return values.isEntering || void 0;
205
+ },
206
+ get "data-exiting"() {
207
+ return values.isExiting || void 0;
208
+ },
209
+ get "data-inert"() {
210
+ return !selected() || void 0;
211
+ },
212
+ get "data-focused"() {
213
+ return focus.isFocused || void 0;
214
+ },
215
+ get "data-focus-visible"() {
216
+ return focus.isFocusVisible || void 0;
217
+ },
218
+ get children() {
219
+ return createComponent(TabsContext, {
220
+ value: null,
221
+ get children() {
222
+ return createComponent(TabListStateContext, {
223
+ value: null,
224
+ get children() {
225
+ return createComponent(CollectionRendererContext, {
226
+ value: DefaultCollectionRenderer,
227
+ get children() {
228
+ return render.children;
229
+ }
230
+ });
231
+ }
232
+ });
233
+ }
234
+ });
235
+ }
236
+ }));
237
+ }
238
+ function Tab(props) {
239
+ return createComponent(TabCollection, mergeProps(props, { ref: (element) => {
240
+ assignRef(untrack(() => props.ref), element);
241
+ } }));
242
+ }
243
+ function Tabs(input) {
244
+ const [props, , setRef] = createContextProps(input, untrack(() => input.ref), TabsContext);
245
+ const values = { get orientation() {
246
+ return props.orientation ?? "horizontal";
247
+ } };
248
+ const content = () => {
249
+ const child = props.children;
250
+ return typeof child === "function" ? child({
251
+ ...values,
252
+ defaultChildren: void 0
253
+ }) : child;
254
+ };
255
+ return createComponent(TabListStateContext, {
256
+ value: null,
257
+ get children() {
258
+ return createComponent(CollectionBuilder, {
259
+ createCollection: () => new BaseCollection(),
260
+ get content() {
261
+ return content();
262
+ },
263
+ children: (collection) => createComponent(TabsInner, {
264
+ props,
265
+ collection,
266
+ tabsRef: setRef
267
+ })
268
+ });
269
+ }
270
+ });
271
+ }
272
+ function TabsInner(input) {
273
+ const state = createTabListState(mergeProps$1(merge(() => input.props ?? {}), {
274
+ children: void 0,
275
+ get collection() {
276
+ return input.collection;
277
+ }
278
+ }));
279
+ const focus = createFocusRing({ within: true });
280
+ const values = { get orientation() {
281
+ return input.props.orientation ?? "horizontal";
282
+ } };
283
+ const render = createRenderProps(mergeProps$1(merge(() => input.props ?? {}), {
284
+ defaultClass: "solid2-aria-Tabs",
285
+ values
286
+ }));
287
+ const tabProps = merge(() => input.props);
288
+ return createComponent(dom.div, mergeProps(() => {
289
+ return mergeProps$1(filterDOMProps(input.props, { global: true }), merge(() => focus.focusProps ?? {}), render);
290
+ }, {
291
+ ref(r$) {
292
+ var _ref$2 = input.tabsRef;
293
+ typeof _ref$2 === "function" || Array.isArray(_ref$2) ? applyRef(_ref$2, r$) : input.tabsRef = r$;
294
+ },
295
+ get slot() {
296
+ return input.props.slot ?? void 0;
297
+ },
298
+ get "data-orientation"() {
299
+ return values.orientation;
300
+ },
301
+ get "data-focused"() {
302
+ return focus.isFocused || void 0;
303
+ },
304
+ get "data-focus-visible"() {
305
+ return focus.isFocusVisible || void 0;
306
+ },
307
+ get "data-disabled"() {
308
+ return state.isDisabled || void 0;
309
+ },
310
+ get children() {
311
+ return createComponent(TabsContext, {
312
+ value: tabProps,
313
+ get children() {
314
+ return createComponent(TabListStateContext, {
315
+ value: state,
316
+ get children() {
317
+ return render.children;
318
+ }
319
+ });
320
+ }
321
+ });
322
+ }
323
+ }));
324
+ }
325
+ function TabList(props) {
326
+ const state = useContext(TabListStateContext);
327
+ if (!state) return createComponent(Collection, props);
328
+ return createComponent(TabListInner, {
329
+ props,
330
+ state
331
+ });
332
+ }
333
+ function TabListInner(input) {
334
+ const context = createSlottedContext(TabsContext);
335
+ const [ref, setRef] = createSignal(null, { ownedWrite: true });
336
+ const Root = useContext(CollectionRendererContext).CollectionRoot;
337
+ const aria = createTabList(mergeProps$1(merge(() => input.props ?? {}), {
338
+ get keyboardActivation() {
339
+ return context?.keyboardActivation;
340
+ },
341
+ get orientation() {
342
+ return context?.orientation;
343
+ }
344
+ }), untrack(() => input.state), ref);
345
+ const values = {
346
+ get orientation() {
347
+ return context?.orientation ?? "horizontal";
348
+ },
349
+ get state() {
350
+ return input.state;
351
+ }
352
+ };
353
+ const render = createRenderProps(mergeProps$1(merge(() => input.props ?? {}), {
354
+ children: void 0,
355
+ defaultClass: "solid2-aria-TabList",
356
+ values
357
+ }));
358
+ return createComponent(dom.div, mergeProps(() => {
359
+ return mergeProps$1(omit(filterDOMProps(input.props, { global: true }), "id"), merge(() => aria.tabListProps ?? {}), render);
360
+ }, {
361
+ ref: [(element) => {
362
+ setRef(element);
363
+ }, (element) => {
364
+ assignRef(untrack(() => input.props.ref), element);
365
+ }],
366
+ get "data-orientation"() {
367
+ return values.orientation;
368
+ },
369
+ get children() {
370
+ return createComponent(Root, { get collection() {
371
+ return input.state.collection;
372
+ } });
373
+ }
374
+ }));
375
+ }
376
+ export { Tab, TabList, TabListStateContext, TabPanel, TabPanels, Tabs, TabsContext };
377
+
378
+ //# sourceMappingURL=tabs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabs.js","names":["<Element\n {...mergeProps(\n omit(filterDOMProps(props, { global: true }), \"id\", \"onClick\"),\n merge(() => aria.tabProps ?? {}),\n merge(() => focus.focusProps ?? {}),\n merge(() => hover.hoverProps ?? {}),\n render\n )}\n ref={[\n (element: HTMLDivElement) => {\n setRef(element);\n },\n (element: HTMLDivElement) => {\n assignRef(forwardedRef, element);\n },\n ]}\n data-selected={aria.isSelected || undefined}\n data-disabled={aria.isDisabled || undefined}\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 >\n <SelectionIndicatorContext\n value={{\n get isSelected() {\n return aria.isSelected;\n },\n }}\n >\n {render.children}\n </SelectionIndicatorContext>\n </Element>","ref={[\n (element: HTMLDivElement) => {\n setRef(element);\n },\n (element: HTMLDivElement) => {\n assignRef(forwardedRef, element);\n },\n ]}","<SelectionIndicatorContext\n value={{\n get isSelected() {\n return aria.isSelected;\n },\n }}\n >\n {render.children}\n </SelectionIndicatorContext>","value={{\n get isSelected() {\n return aria.isSelected;\n },\n }}","<dom.div\n {\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n ...omit(filterDOMProps(props, { global: true, labelable: true }), \"id\")\n // oxlint-enable solid/reactivity\n }\n ref={props.ref}\n render={props.render}\n class={props.class ?? \"solid2-aria-TabPanels\"}\n style={props.style}\n >\n <Collection {...props} />\n </dom.div>","dom.div","ref={props.ref}","<Collection {...props} />","<Show\n when={\n (state.selectedKey === props.id || props.shouldForceMount) ?? exiting()\n }\n >\n <TabPanelInner\n props={props}\n state={state}\n panelRef={panelRef}\n setPanelRef={(element: HTMLDivElement) => {\n setPanelRef(element);\n }}\n initiallySelected={initiallySelected}\n exiting={exiting}\n />\n </Show>","<TabPanelInner\n props={props}\n state={state}\n panelRef={panelRef}\n setPanelRef={(element: HTMLDivElement) => {\n setPanelRef(element);\n }}\n initiallySelected={initiallySelected}\n exiting={exiting}\n />","setPanelRef={(element: HTMLDivElement) => {\n setPanelRef(element);\n }}","<dom.div\n {...mergeProps(\n omit(filterDOMProps(input.props, { global: true }), \"id\"),\n merge(() => aria.tabPanelProps ?? {}),\n merge(() => focus.focusProps ?? {}),\n render\n )}\n ref={[\n (element: HTMLDivElement) => {\n input.setPanelRef(element);\n },\n (element: HTMLDivElement) => {\n assignRef(\n untrack(() => input.props.ref),\n element\n );\n },\n ]}\n inert={!selected() || input.props.inert}\n data-entering={values.isEntering || undefined}\n data-exiting={values.isExiting || undefined}\n data-inert={!selected() || undefined}\n data-focused={focus.isFocused || undefined}\n data-focus-visible={focus.isFocusVisible || undefined}\n >\n <TabsContext value={null}>\n <TabListStateContext value={null}>\n <CollectionRendererContext value={DefaultCollectionRenderer}>\n {render.children}\n </CollectionRendererContext>\n </TabListStateContext>\n </TabsContext>\n </dom.div>","ref={[\n (element: HTMLDivElement) => {\n input.setPanelRef(element);\n },\n (element: HTMLDivElement) => {\n assignRef(\n untrack(() => input.props.ref),\n element\n );\n },\n ]}","<TabsContext value={null}>\n <TabListStateContext value={null}>\n <CollectionRendererContext value={DefaultCollectionRenderer}>\n {render.children}\n </CollectionRendererContext>\n </TabListStateContext>\n </TabsContext>","value={null}","<TabListStateContext value={null}>\n <CollectionRendererContext value={DefaultCollectionRenderer}>\n {render.children}\n </CollectionRendererContext>\n </TabListStateContext>","<CollectionRendererContext value={DefaultCollectionRenderer}>\n {render.children}\n </CollectionRendererContext>","value={DefaultCollectionRenderer}","<TabCollection\n {...props}\n ref={(element: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n element\n );\n }}\n />","ref={(element: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n element\n );\n }}","<TabListStateContext value={null}>\n <CollectionBuilder\n createCollection={() => new BaseCollection<object>()}\n content={content()}\n >\n {(collection) => (\n <TabsInner props={props} collection={collection} tabsRef={setRef} />\n )}\n </CollectionBuilder>\n </TabListStateContext>","<CollectionBuilder\n createCollection={() => new BaseCollection<object>()}\n content={content()}\n >\n {(collection) => (\n <TabsInner props={props} collection={collection} tabsRef={setRef} />\n )}\n </CollectionBuilder>","createCollection={() => new BaseCollection<object>()}","<TabsInner props={props} collection={collection} tabsRef={setRef} />","tabsRef={setRef}","<dom.div\n {...mergeProps(\n filterDOMProps(input.props, { global: true }),\n merge(() => focus.focusProps ?? {}),\n render\n )}\n ref={input.tabsRef}\n slot={input.props.slot ?? undefined}\n data-orientation={values.orientation}\n data-focused={focus.isFocused || undefined}\n data-focus-visible={focus.isFocusVisible || undefined}\n data-disabled={state.isDisabled || undefined}\n >\n <TabsContext value={tabProps}>\n <TabListStateContext value={state}>\n {render.children}\n </TabListStateContext>\n </TabsContext>\n </dom.div>","ref={input.tabsRef}","<TabsContext value={tabProps}>\n <TabListStateContext value={state}>\n {render.children}\n </TabListStateContext>\n </TabsContext>","value={tabProps}","<TabListStateContext value={state}>\n {render.children}\n </TabListStateContext>","value={state}","<TabListInner props={props} state={state} />","<dom.div\n {...mergeProps(\n omit(filterDOMProps(input.props, { global: true }), \"id\"),\n merge(() => aria.tabListProps ?? {}),\n render\n )}\n ref={[\n (element: HTMLDivElement) => {\n setRef(element);\n },\n (element: HTMLDivElement) => {\n assignRef(\n untrack(() => input.props.ref),\n element\n );\n },\n ]}\n data-orientation={values.orientation}\n >\n <Root collection={input.state.collection} />\n </dom.div>","ref={[\n (element: HTMLDivElement) => {\n setRef(element);\n },\n (element: HTMLDivElement) => {\n assignRef(\n untrack(() => input.props.ref),\n element\n );\n },\n ]}","<Root collection={input.state.collection} />","mergeProps","_$createComponent","_$mergeProps","_$applyRef"],"sources":["../../src/tabs.tsx"],"sourcesContent":["/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n/*\n * Derived from Adobe React Spectrum: packages/react-aria-components/src/Tabs.tsx.\n * Modified for Solid Aria: adapted collection ownership, contexts, accessibility primitives, and reactive properties for Solid 2; 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 ItemNode,\n BaseCollection,\n} from \"@solid2-aria/core/collections/base-collection\";\nimport {\n Collection,\n CollectionBuilder,\n createLeafComponent,\n} from \"@solid2-aria/core/collections/collection-builder\";\nimport { createIsHidden } from \"@solid2-aria/core/collections/hidden\";\nimport { createFocusRing } from \"@solid2-aria/core/focus/create-focus-ring\";\nimport { createHover } from \"@solid2-aria/core/interactions/create-hover\";\nimport { createTab } from \"@solid2-aria/core/tabs/create-tab\";\nimport { createTabList } from \"@solid2-aria/core/tabs/create-tab-list\";\nimport type { AriaTabListProps } from \"@solid2-aria/core/tabs/create-tab-list\";\nimport { createTabPanel } from \"@solid2-aria/core/tabs/create-tab-panel\";\nimport type { AriaTabPanelProps } from \"@solid2-aria/core/tabs/create-tab-panel\";\nimport {\n createEnterAnimation,\n createExitAnimation,\n} from \"@solid2-aria/core/utils/animation\";\nimport { filterDOMProps } from \"@solid2-aria/core/utils/filter-dom-props\";\nimport { mergeProps } from \"@solid2-aria/core/utils/merge-props\";\nimport { isTruthy } from \"@solid2-aria/core/utils/truthy\";\nimport { createTabListState } from \"@solid2-aria/stately/tabs/create-tab-list-state\";\nimport type { TabListState } from \"@solid2-aria/stately/tabs/create-tab-list-state\";\nimport type {\n AriaLabelingProps,\n FocusEvents,\n HoverEvents,\n Key,\n LinkDOMProps,\n PressEvents,\n Orientation,\n Node,\n} from \"@solid2-aria/types-shared\";\nimport type { GlobalDOMAttributes } from \"@solid2-aria/types-shared-web\";\nimport { dynamic } from \"@solidjs/web\";\nimport type { JSX } from \"@solidjs/web\";\nimport {\n merge,\n createSignal,\n createContext,\n useContext,\n omit,\n Show,\n untrack,\n} from \"solid-js\";\nimport type { Accessor } from \"solid-js\";\n\nimport {\n CollectionRendererContext,\n DefaultCollectionRenderer,\n} from \"./collection\";\nimport type { CollectionProps } from \"./collection\";\nimport { SelectionIndicatorContext } from \"./selection-indicator\";\nimport {\n dom,\n createContextProps,\n createRenderProps,\n createSlottedContext,\n assignRef,\n} from \"./utils\";\nimport type {\n Ref,\n ClassOrFunction,\n DOMRenderProps,\n PossibleLinkDOMRenderProps,\n RenderProps,\n SlotProps,\n StyleProps,\n StyleRenderProps,\n ContextValue,\n} from \"./utils\";\n\nexport const TabsContext =\n createContext<ContextValue<TabsProps, HTMLDivElement>>(null);\n\nexport const TabListStateContext = createContext<TabListState<unknown> | null>(\n null\n);\n\nexport interface TabsProps\n // oxlint-disable-next-line typescript/no-explicit-any -- Collection contexts erase item types; each typed factory restores its owner's item contract.\n extends\n Omit<AriaTabListProps<unknown>, \"items\" | \"children\">,\n RenderProps<TabsRenderProps>,\n SlotProps,\n GlobalDOMAttributes<HTMLDivElement> {\n /**\n * The CSS [class](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/class) for the\n * element. A function may be provided to compute the class based on component state.\n *\n * @default 'react-aria-Tabs'\n */\n class?: ClassOrFunction<TabsRenderProps>;\n}\n\nexport interface TabsRenderProps {\n /**\n * The orientation of the tabs.\n *\n * @selector [data-orientation=\"horizontal | vertical\"]\n */\n orientation: Orientation;\n}\n\nexport interface TabListProps<T>\n extends\n StyleRenderProps<TabListRenderProps>,\n AriaLabelingProps,\n Omit<CollectionProps<T>, \"disabledKeys\">,\n GlobalDOMAttributes<HTMLDivElement> {\n /**\n * The CSS [class](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/class) for the\n * element. A function may be provided to compute the class based on component state.\n *\n * @default 'react-aria-TabList'\n */\n class?: ClassOrFunction<TabListRenderProps>;\n}\n\nexport interface TabListRenderProps {\n /**\n * The orientation of the tab list.\n *\n * @selector [data-orientation=\"horizontal | vertical\"]\n */\n orientation: Orientation;\n /**\n * State of the tab list.\n */\n state: TabListState<unknown>;\n}\n\nexport interface TabProps\n extends\n Omit<RenderProps<TabRenderProps>, \"render\">,\n PossibleLinkDOMRenderProps<\"div\", TabRenderProps>,\n AriaLabelingProps,\n LinkDOMProps,\n HoverEvents,\n FocusEvents,\n PressEvents,\n Omit<GlobalDOMAttributes<HTMLDivElement>, \"onClick\"> {\n /**\n * The CSS [class](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/class) for the\n * element. A function may be provided to compute the class based on component state.\n *\n * @default 'react-aria-Tab'\n */\n class?: ClassOrFunction<TabRenderProps>;\n /** The unique id of the tab. */\n id?: Key;\n /** Whether the tab is disabled. */\n isDisabled?: boolean;\n}\n\nexport interface TabRenderProps {\n /**\n * Whether the tab is currently hovered with a mouse.\n *\n * @selector [data-hovered]\n */\n isHovered: boolean;\n /**\n * Whether the tab is currently in a pressed state.\n *\n * @selector [data-pressed]\n */\n isPressed: boolean;\n /**\n * Whether the tab is currently selected.\n *\n * @selector [data-selected]\n */\n isSelected: boolean;\n /**\n * Whether the tab is currently focused.\n *\n * @selector [data-focused]\n */\n isFocused: boolean;\n /**\n * Whether the tab is currently keyboard focused.\n *\n * @selector [data-focus-visible]\n */\n isFocusVisible: boolean;\n /**\n * Whether the tab is disabled.\n *\n * @selector [data-disabled]\n */\n isDisabled: boolean;\n}\n\nexport interface TabPanelProps\n extends\n AriaTabPanelProps,\n RenderProps<TabPanelRenderProps>,\n GlobalDOMAttributes<HTMLDivElement> {\n /**\n * The CSS [class](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/class) for the\n * element. A function may be provided to compute the class based on component state.\n *\n * @default 'react-aria-TabPanel'\n */\n class?: ClassOrFunction<TabPanelRenderProps>;\n /**\n * Whether to mount the tab panel in the DOM even when it is not currently selected. Inactive tab\n * panels are inert and cannot be interacted with. They must be styled appropriately so this is\n * clear to the user visually.\n *\n * @default false\n */\n shouldForceMount?: boolean;\n}\n\nexport interface TabPanelRenderProps {\n /**\n * Whether the tab panel is currently focused.\n *\n * @selector [data-focused]\n */\n isFocused: boolean;\n /**\n * Whether the tab panel is currently keyboard focused.\n *\n * @selector [data-focus-visible]\n */\n isFocusVisible: boolean;\n /**\n * Whether the tab panel is currently non-interactive. This occurs when the\n * `shouldForceMount` prop is true, and the corresponding tab is not selected.\n *\n * @selector [data-inert]\n */\n isInert: boolean;\n /**\n * Whether the tab panel is currently entering. Use this to apply animations.\n *\n * @selector [data-entering]\n */\n isEntering: boolean;\n /**\n * Whether the tab panel is currently exiting. Use this to apply animations.\n *\n * @selector [data-exiting]\n */\n isExiting: boolean;\n /**\n * State of the tab list.\n */\n state: TabListState<unknown>;\n}\n\nexport interface TabPanelsProps<T>\n extends\n Omit<CollectionProps<T>, \"disabledKeys\">,\n StyleProps,\n DOMRenderProps<\"div\", undefined>,\n GlobalDOMAttributes<HTMLDivElement> {\n /**\n * The CSS [class](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/class) for the\n * element.\n *\n * @default 'react-aria-TabPanels'\n */\n class?: JSX.ClassValue;\n}\n\nconst TabCollection = createLeafComponent(\n ItemNode,\n (\n props: TabProps,\n forwardedRef: Ref<HTMLDivElement>,\n node: Node<unknown>\n ): JSX.Element => {\n const state = useContext(TabListStateContext);\n\n if (!state) {\n throw new Error(\"Tab must be rendered in Tabs.\");\n }\n\n const [ref, setRef] = createSignal<HTMLDivElement | null>(null, {\n ownedWrite: true,\n });\n\n const aria = createTab(\n mergeProps(props, {\n get key() {\n return node.key;\n },\n }),\n state,\n ref\n );\n\n const focus = createFocusRing();\n\n const hover = createHover(\n mergeProps(props, {\n get isDisabled() {\n return aria.isDisabled;\n },\n })\n );\n\n const values: TabRenderProps = {\n get isDisabled() {\n return aria.isDisabled;\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 isSelected() {\n return aria.isSelected;\n },\n };\n\n const render = createRenderProps(\n mergeProps(props, { defaultClass: \"solid2-aria-Tab\", values })\n );\n\n const Element = dynamic(() => (isTruthy(props.href) ? dom.a : dom.div));\n\n return (\n <Element\n {...mergeProps(\n omit(filterDOMProps(props, { global: true }), \"id\", \"onClick\"),\n merge(() => aria.tabProps ?? {}),\n merge(() => focus.focusProps ?? {}),\n merge(() => hover.hoverProps ?? {}),\n render\n )}\n ref={[\n (element: HTMLDivElement) => {\n setRef(element);\n },\n (element: HTMLDivElement) => {\n assignRef(forwardedRef, element);\n },\n ]}\n data-selected={aria.isSelected || undefined}\n data-disabled={aria.isDisabled || undefined}\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 >\n <SelectionIndicatorContext\n value={{\n get isSelected() {\n return aria.isSelected;\n },\n }}\n >\n {render.children}\n </SelectionIndicatorContext>\n </Element>\n );\n }\n);\n\nexport function TabPanels<T>(\n props: TabPanelsProps<T> & { ref?: Ref<HTMLDivElement> }\n): JSX.Element {\n if (createIsHidden()) {\n // oxlint-disable-next-line solid/components-return-once -- Static collection traversal and context registration are fixed when the owner is created.\n return null;\n }\n\n return (\n <dom.div\n {\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n ...omit(filterDOMProps(props, { global: true, labelable: true }), \"id\")\n // oxlint-enable solid/reactivity\n }\n ref={props.ref}\n render={props.render}\n class={props.class ?? \"solid2-aria-TabPanels\"}\n style={props.style}\n >\n <Collection {...props} />\n </dom.div>\n );\n}\n\nexport function TabPanel(\n props: TabPanelProps & { ref?: Ref<HTMLDivElement> }\n): JSX.Element {\n if (createIsHidden()) {\n // oxlint-disable-next-line solid/components-return-once -- Static collection traversal and context registration are fixed when the owner is created.\n return null;\n }\n\n const state = useContext(TabListStateContext);\n\n if (!state) {\n throw new Error(\"TabPanel must be rendered in Tabs.\");\n }\n\n const [panelRef, setPanelRef] = createSignal<HTMLDivElement | null>(null, {\n ownedWrite: true,\n });\n\n const initiallySelected = untrack(() => state.selectedKey === props.id);\n\n const exiting = createExitAnimation(\n panelRef,\n () => state.selectedKey === props.id\n );\n\n return (\n <Show\n when={\n (state.selectedKey === props.id || props.shouldForceMount) ?? exiting()\n }\n >\n <TabPanelInner\n props={props}\n state={state}\n panelRef={panelRef}\n setPanelRef={(element: HTMLDivElement) => {\n setPanelRef(element);\n }}\n initiallySelected={initiallySelected}\n exiting={exiting}\n />\n </Show>\n );\n}\n\nfunction TabPanelInner(input: {\n props: TabPanelProps & { ref?: Ref<HTMLDivElement> };\n state: TabListState<unknown>;\n panelRef: Accessor<HTMLDivElement | null>;\n setPanelRef: (element: HTMLDivElement) => void;\n initiallySelected: boolean;\n exiting: () => boolean;\n}): JSX.Element {\n const ref = untrack(() => input.panelRef);\n\n const aria = createTabPanel(\n untrack(() => input.props),\n untrack(() => input.state),\n ref\n );\n\n const focus = createFocusRing();\n const selected = () => input.state.selectedKey === input.props.id;\n const entering = createEnterAnimation(ref);\n\n const values: TabPanelRenderProps = {\n get isEntering() {\n return !input.initiallySelected && entering();\n },\n get isExiting() {\n return input.exiting();\n },\n get isFocusVisible() {\n return focus.isFocusVisible;\n },\n get isFocused() {\n return focus.isFocused;\n },\n get isInert() {\n return !selected();\n },\n get state() {\n return input.state;\n },\n };\n\n const render = createRenderProps(\n mergeProps(\n merge(() => input.props ?? {}),\n { defaultClass: \"solid2-aria-TabPanel\", values }\n )\n );\n\n return (\n <dom.div\n {...mergeProps(\n omit(filterDOMProps(input.props, { global: true }), \"id\"),\n merge(() => aria.tabPanelProps ?? {}),\n merge(() => focus.focusProps ?? {}),\n render\n )}\n ref={[\n (element: HTMLDivElement) => {\n input.setPanelRef(element);\n },\n (element: HTMLDivElement) => {\n assignRef(\n untrack(() => input.props.ref),\n element\n );\n },\n ]}\n inert={!selected() || input.props.inert}\n data-entering={values.isEntering || undefined}\n data-exiting={values.isExiting || undefined}\n data-inert={!selected() || undefined}\n data-focused={focus.isFocused || undefined}\n data-focus-visible={focus.isFocusVisible || undefined}\n >\n <TabsContext value={null}>\n <TabListStateContext value={null}>\n <CollectionRendererContext value={DefaultCollectionRenderer}>\n {render.children}\n </CollectionRendererContext>\n </TabListStateContext>\n </TabsContext>\n </dom.div>\n );\n}\n\nexport function Tab(\n props: TabProps & { ref?: Ref<HTMLDivElement> }\n): JSX.Element {\n return (\n <TabCollection\n {...props}\n ref={(element: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n element\n );\n }}\n />\n );\n}\n\nexport function Tabs(\n input: TabsProps & { ref?: Ref<HTMLDivElement> }\n): JSX.Element {\n const [props, , setRef] = createContextProps(\n input,\n untrack(() => input.ref),\n TabsContext\n );\n\n const values: TabsRenderProps = {\n get orientation() {\n return props.orientation ?? \"horizontal\";\n },\n };\n\n const content = () => {\n const child = props.children;\n\n return typeof child === \"function\"\n ? child({ ...values, defaultChildren: undefined })\n : child;\n };\n\n return (\n <TabListStateContext value={null}>\n <CollectionBuilder\n createCollection={() => new BaseCollection<object>()}\n content={content()}\n >\n {(collection) => (\n <TabsInner props={props} collection={collection} tabsRef={setRef} />\n )}\n </CollectionBuilder>\n </TabListStateContext>\n );\n}\n\nfunction TabsInner(input: {\n props: TabsProps;\n collection: BaseCollection<object>;\n tabsRef: (element: HTMLDivElement) => void;\n}): JSX.Element {\n const state = createTabListState(\n mergeProps(\n merge(() => input.props ?? {}),\n {\n children: undefined,\n get collection() {\n return input.collection;\n },\n }\n )\n );\n\n const focus = createFocusRing({ within: true });\n\n const values: TabsRenderProps = {\n get orientation() {\n return input.props.orientation ?? \"horizontal\";\n },\n };\n\n const render = createRenderProps(\n mergeProps(\n merge(() => input.props ?? {}),\n { defaultClass: \"solid2-aria-Tabs\", values }\n )\n );\n\n const tabProps = merge(() => input.props);\n\n return (\n <dom.div\n {...mergeProps(\n filterDOMProps(input.props, { global: true }),\n merge(() => focus.focusProps ?? {}),\n render\n )}\n ref={input.tabsRef}\n slot={input.props.slot ?? undefined}\n data-orientation={values.orientation}\n data-focused={focus.isFocused || undefined}\n data-focus-visible={focus.isFocusVisible || undefined}\n data-disabled={state.isDisabled || undefined}\n >\n <TabsContext value={tabProps}>\n <TabListStateContext value={state}>\n {render.children}\n </TabListStateContext>\n </TabsContext>\n </dom.div>\n );\n}\n\nexport function TabList<T>(\n props: TabListProps<T> & { ref?: Ref<HTMLDivElement> }\n): JSX.Element {\n const state = useContext(TabListStateContext);\n\n if (!state) {\n // oxlint-disable-next-line solid/components-return-once -- Static collection traversal and context registration are fixed when the owner is created.\n return <Collection {...props} />;\n }\n\n return <TabListInner props={props} state={state} />;\n}\n\nfunction TabListInner<T>(input: {\n props: TabListProps<T> & { ref?: Ref<HTMLDivElement> };\n state: TabListState<unknown>;\n}): JSX.Element {\n const context = createSlottedContext(TabsContext);\n\n const [ref, setRef] = createSignal<HTMLDivElement | null>(null, {\n ownedWrite: true,\n });\n\n const renderer = useContext(CollectionRendererContext);\n const Root = renderer.CollectionRoot;\n\n const aria = createTabList(\n mergeProps(\n merge(() => input.props ?? {}),\n {\n get keyboardActivation() {\n return context?.keyboardActivation;\n },\n get orientation() {\n return context?.orientation;\n },\n }\n ),\n untrack(() => input.state),\n ref\n );\n\n const values: TabListRenderProps = {\n get orientation() {\n return context?.orientation ?? \"horizontal\";\n },\n get state() {\n return input.state;\n },\n };\n\n const render = createRenderProps(\n mergeProps(\n merge(() => input.props ?? {}),\n {\n children: undefined,\n defaultClass: \"solid2-aria-TabList\",\n values,\n }\n )\n );\n\n return (\n <dom.div\n {...mergeProps(\n omit(filterDOMProps(input.props, { global: true }), \"id\"),\n merge(() => aria.tabListProps ?? {}),\n render\n )}\n ref={[\n (element: HTMLDivElement) => {\n setRef(element);\n },\n (element: HTMLDivElement) => {\n assignRef(\n untrack(() => input.props.ref),\n element\n );\n },\n ]}\n data-orientation={values.orientation}\n >\n <Root collection={input.state.collection} />\n </dom.div>\n );\n}\n"],"mappings":"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"}
@@ -0,0 +1,112 @@
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/TagGroup.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, DOMProps as DOMProps$1, DOMRenderProps, Ref, RenderProps, SlotProps, StyleRenderProps } from "./utils.js";
18
+ import { CollectionProps, ItemRenderProps } from "./collection.js";
19
+ import { JSX } from "@solidjs/web";
20
+ import { ListState } from "@solid2-aria/stately/list/create-list-state";
21
+ import { AriaTagGroupProps } from "@solid2-aria/core/tag/create-tag-group";
22
+ import { FocusEvents, HoverEvents, Key, LinkDOMProps, PressEvents } from "@solid2-aria/types-shared";
23
+ import { DOMAttributes, GlobalDOMAttributes } from "@solid2-aria/types-shared-web";
24
+ export declare const TagGroupContext: import("solid-js").Context<ContextValue<TagGroupProps, HTMLElement>>;
25
+ export declare const TagListContext: import("solid-js").Context<ContextValue<TagListProps<unknown> & {
26
+ gridProps?: DOMAttributes;
27
+ }, HTMLElement>>;
28
+ export interface TagGroupProps extends Omit<AriaTagGroupProps<unknown>, "children" | "items" | "label" | "description" | "errorMessage" | "keyboardDelegate">, DOMProps$1, SlotProps, DOMRenderProps<"div", undefined>, GlobalDOMAttributes<HTMLDivElement> {
29
+ /**
30
+ * The CSS [class](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/class) for the
31
+ * element.
32
+ *
33
+ * @default 'react-aria-TagGroup'
34
+ */
35
+ class?: JSX.ClassValue;
36
+ }
37
+ export interface TagListRenderProps {
38
+ /**
39
+ * Whether the tag list has no items and should display its empty state.
40
+ *
41
+ * @selector [data-empty]
42
+ */
43
+ isEmpty: boolean;
44
+ /**
45
+ * Whether the tag list is currently focused.
46
+ *
47
+ * @selector [data-focused]
48
+ */
49
+ isFocused: boolean;
50
+ /**
51
+ * Whether the tag list is currently keyboard focused.
52
+ *
53
+ * @selector [data-focus-visible]
54
+ */
55
+ isFocusVisible: boolean;
56
+ /**
57
+ * State of the TagGroup.
58
+ */
59
+ state: ListState<unknown>;
60
+ }
61
+ export interface TagListProps<T> extends Omit<CollectionProps<T>, "disabledKeys">, StyleRenderProps<TagListRenderProps>, GlobalDOMAttributes<HTMLDivElement> {
62
+ /**
63
+ * The CSS [class](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/class) for the
64
+ * element. A function may be provided to compute the class based on component state.
65
+ *
66
+ * @default 'react-aria-TagList'
67
+ */
68
+ class?: ClassOrFunction<TagListRenderProps>;
69
+ /** Provides content to display when there are no items in the tag list. */
70
+ renderEmptyState?: (props: TagListRenderProps) => JSX.Element;
71
+ }
72
+ export interface TagRenderProps extends Omit<ItemRenderProps, "allowsDragging" | "isDragging" | "isDropTarget"> {
73
+ /**
74
+ * Whether the tag group allows items to be removed.
75
+ *
76
+ * @selector [data-allows-removing]
77
+ */
78
+ allowsRemoving: boolean;
79
+ }
80
+ export interface TagProps extends RenderProps<TagRenderProps>, LinkDOMProps, HoverEvents, FocusEvents, PressEvents, Omit<GlobalDOMAttributes<HTMLDivElement>, "onClick"> {
81
+ /**
82
+ * The CSS [class](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/class) for the
83
+ * element. A function may be provided to compute the class based on component state.
84
+ *
85
+ * @default 'react-aria-Tag'
86
+ */
87
+ class?: ClassOrFunction<TagRenderProps>;
88
+ /** A unique id for the tag. */
89
+ id?: Key;
90
+ /**
91
+ * A string representation of the tags's contents, used for accessibility.
92
+ * Required if children is not a plain text string.
93
+ */
94
+ textValue?: string;
95
+ /** Whether the tag is disabled. */
96
+ isDisabled?: boolean;
97
+ /**
98
+ * Handler that is called when a user performs an action on the item. The exact user event depends
99
+ * on the collection's `selectionBehavior` prop and the interaction modality.
100
+ */
101
+ onAction?: () => void;
102
+ }
103
+ export declare function Tag(props: TagProps & {
104
+ ref?: Ref<HTMLDivElement>;
105
+ }): JSX.Element;
106
+ export declare function TagGroup(input: TagGroupProps & {
107
+ ref?: Ref<HTMLDivElement>;
108
+ }): JSX.Element;
109
+ export declare function TagList<T>(input: TagListProps<T> & {
110
+ ref?: Ref<HTMLDivElement>;
111
+ }): JSX.Element;
112
+ //# sourceMappingURL=tag-group.d.ts.map