@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":"preview-trigger.js","names":["<OverlayTriggerStateContext value={overlay}>\n <PopoverContext\n value={mergeProps(\n merge(() => aria.popoverProps ?? {}),\n {\n isNonModal: true,\n ref: (element: HTMLElement) => {\n setPopoverRef(element);\n },\n get shouldSkipAnimation() {\n return state.shouldSkipAnimation;\n },\n trigger: \"PreviewTrigger\",\n triggerRef,\n }\n )}\n >\n <FocusableProvider\n ref={(element: FocusableElement) => {\n setTriggerRef(element);\n }}\n {...aria.triggerProps}\n >\n {props.children}\n </FocusableProvider>\n </PopoverContext>\n </OverlayTriggerStateContext>","value={overlay}","<PopoverContext\n value={mergeProps(\n merge(() => aria.popoverProps ?? {}),\n {\n isNonModal: true,\n ref: (element: HTMLElement) => {\n setPopoverRef(element);\n },\n get shouldSkipAnimation() {\n return state.shouldSkipAnimation;\n },\n trigger: \"PreviewTrigger\",\n triggerRef,\n }\n )}\n >\n <FocusableProvider\n ref={(element: FocusableElement) => {\n setTriggerRef(element);\n }}\n {...aria.triggerProps}\n >\n {props.children}\n </FocusableProvider>\n </PopoverContext>","<FocusableProvider\n ref={(element: FocusableElement) => {\n setTriggerRef(element);\n }}\n {...aria.triggerProps}\n >\n {props.children}\n </FocusableProvider>","ref={(element: FocusableElement) => {\n setTriggerRef(element);\n }}","mergeProps","_$createComponent","_$mergeProps"],"sources":["../../src/preview-trigger.tsx"],"sourcesContent":["/*\n * Copyright 2026 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/PreviewTrigger.tsx.\n * Modified for Solid Aria: adapted components, contexts, refs, warmup animation skipping, and reactive properties for Solid 2.\n * Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.\n */\n\nimport { FocusableProvider } from \"@solid2-aria/core/interactions/create-focusable\";\nimport { createPreviewTrigger } from \"@solid2-aria/core/tooltip/create-preview-trigger\";\nimport type { AriaPreviewTriggerProps } from \"@solid2-aria/core/tooltip/create-preview-trigger\";\nimport { mergeProps } from \"@solid2-aria/core/utils/merge-props\";\nimport type { OverlayTriggerState } from \"@solid2-aria/stately/overlays/create-overlay-trigger-state\";\nimport { createTooltipTriggerState } from \"@solid2-aria/stately/tooltip/create-tooltip-trigger-state\";\nimport type { FocusableElement } from \"@solid2-aria/types-shared\";\nimport type { JSX } from \"@solidjs/web\";\nimport { merge, createSignal } from \"solid-js\";\n\nimport { OverlayTriggerStateContext } from \"./dialog\";\nimport { PopoverContext } from \"./popover\";\n\nexport interface PreviewTriggerProps extends AriaPreviewTriggerProps {\n children?: JSX.Element;\n delay?: number;\n closeDelay?: number;\n}\n\nexport function PreviewTrigger(props: PreviewTriggerProps): JSX.Element {\n const [triggerRef, setTriggerRef] = createSignal<FocusableElement | null>(\n null,\n {\n ownedWrite: true,\n }\n );\n\n const [popoverRef, setPopoverRef] = createSignal<HTMLElement | null>(null, {\n ownedWrite: true,\n });\n\n const state = createTooltipTriggerState(\n mergeProps(props, {\n get closeDelay() {\n return props.closeDelay ?? 200;\n },\n get delay() {\n return props.delay ?? 600;\n },\n })\n );\n\n const aria = createPreviewTrigger(\n mergeProps(props, { popoverRef, triggerRef }),\n state\n );\n\n const overlay: OverlayTriggerState = {\n close() {\n state.close();\n },\n get isOpen() {\n return state.isOpen;\n },\n open() {\n state.open();\n },\n point: null,\n setOpen(open) {\n if (open) {\n state.open();\n } else {\n state.close();\n }\n },\n setPoint() {\n /* empty */\n },\n toggle() {\n if (state.isOpen) {\n state.close();\n } else {\n state.open();\n }\n },\n };\n\n return (\n <OverlayTriggerStateContext value={overlay}>\n <PopoverContext\n value={mergeProps(\n merge(() => aria.popoverProps ?? {}),\n {\n isNonModal: true,\n ref: (element: HTMLElement) => {\n setPopoverRef(element);\n },\n get shouldSkipAnimation() {\n return state.shouldSkipAnimation;\n },\n trigger: \"PreviewTrigger\",\n triggerRef,\n }\n )}\n >\n <FocusableProvider\n ref={(element: FocusableElement) => {\n setTriggerRef(element);\n }}\n {...aria.triggerProps}\n >\n {props.children}\n </FocusableProvider>\n </PopoverContext>\n </OverlayTriggerStateContext>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAoCA,SAAgB,eAAe,OAAyC;CACtE,MAAM,CAAC,YAAY,iBAAiB,aAClC,MACA,EACE,YAAY,KACd,CACF;CAEA,MAAM,CAAC,YAAY,iBAAiB,aAAiC,MAAM,EACzE,YAAY,KACd,CAAC;CAED,MAAM,QAAQ,0BACZK,aAAW,OAAO;EAChB,IAAI,aAAa;GACf,OAAO,MAAM,cAAc;EAC7B;EACA,IAAI,QAAQ;GACV,OAAO,MAAM,SAAS;EACxB;CACF,CAAC,CACH;CAEA,MAAM,OAAO,qBACXA,aAAW,OAAO;EAAE;EAAY;CAAW,CAAC,GAC5C,KACF;CAgCA,OACEL,gBAAAA,4BAAAA;EAA4BC,OAAO;GA9BnC,QAAQ;IACN,MAAM,MAAM;GACd;GACA,IAAI,SAAS;IACX,OAAO,MAAM;GACf;GACA,OAAO;IACL,MAAM,KAAK;GACb;GACA,OAAO;GACP,QAAQ,MAAM;IACZ,IAAI,MACF,MAAM,KAAK;SAEX,MAAM,MAAM;GAEhB;GACA,WAAW,CAEX;GACA,SAAS;IACP,IAAI,MAAM,QACR,MAAM,MAAM;SAEZ,MAAM,KAAK;GAEf;EAImC;EAAnC,IAAA,WAAA;GACEC,OAAAA,gBAAAA,gBAAAA;IACE,IAAA,QAAA;KAAO,OAAAG,aACL,YAAY,KAAK,gBAAgB,CAAC,CAAC,GACnC;MACE,YAAY;MACZ,MAAM,YAAyB;OAC7B,cAAc,OAAO;MACvB;MACA,IAAI,sBAAsB;OACxB,OAAO,MAAM;MACf;MACA,SAAS;MACT;KACF,CACF;IAAC;IAdH,IAAA,WAAA;KAgBEF,OAAAA,gBAAAA,mBAAAA,WAAAA,EACEC,MAAM,YAA8B;MAClC,cAAc,OAAO;KACvB,EAIiB,SAHjB;MAAI,OAAA,KAAK;KAAY,GAJvB,EAAA,IAAA,WAAA;MAMG,OAAA,MAAM;KACU,EAAA,CAAA,CAAA;IACL;;EACU;;AAEhC"}
@@ -0,0 +1,30 @@
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/ProgressBar.tsx.
14
+ * Modified for Solid Aria: adapted components, contexts, refs, 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 { ContextValue, Ref, RenderProps, SlotProps } from "./utils.js";
18
+ import { JSX } from "@solidjs/web";
19
+ import { AriaProgressBarProps } from "@solid2-aria/core/progress/create-progress-bar";
20
+ export interface ProgressBarRenderProps {
21
+ percentage: number;
22
+ valueText: string | undefined;
23
+ isIndeterminate: boolean;
24
+ }
25
+ export interface ProgressBarProps extends Omit<AriaProgressBarProps, "label">, SlotProps, RenderProps<ProgressBarRenderProps> {
26
+ ref?: Ref<HTMLDivElement>;
27
+ }
28
+ export declare const ProgressBarContext: import("solid-js").Context<ContextValue<ProgressBarProps, HTMLDivElement>>;
29
+ export declare function ProgressBar(input: ProgressBarProps): JSX.Element;
30
+ //# sourceMappingURL=progress-bar.d.ts.map
@@ -0,0 +1,76 @@
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/ProgressBar.tsx.
14
+ * Modified for Solid Aria: adapted components, contexts, refs, 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 { createContextProps, createRenderProps, createSlot, dom } from "./utils.js";
18
+ import { LabelContext } from "./label.js";
19
+ import { createComponent, mergeProps } from "@solidjs/web";
20
+ import { mergeProps as mergeProps$1 } from "@solid2-aria/core/utils/merge-props";
21
+ import { createContext, merge, untrack } from "solid-js";
22
+ import { filterDOMProps } from "@solid2-aria/core/utils/filter-dom-props";
23
+ import { isTruthy } from "@solid2-aria/core/utils/truthy";
24
+ import { createProgressBar } from "@solid2-aria/core/progress/create-progress-bar";
25
+ // src/progress-bar.tsx
26
+ const ProgressBarContext = createContext(null);
27
+ function ProgressBar(input) {
28
+ const [props, , setRef] = createContextProps(input, untrack(() => input.ref), ProgressBarContext);
29
+ const [registerLabel, label] = createSlot(() => !isTruthy(props["aria-label"]) && !isTruthy(props["aria-labelledby"]));
30
+ const aria = createProgressBar(mergeProps$1(props, { get label() {
31
+ return label();
32
+ } }));
33
+ const values = {
34
+ get isIndeterminate() {
35
+ return props.isIndeterminate === true;
36
+ },
37
+ get percentage() {
38
+ const min = props.minValue ?? 0;
39
+ const max = props.maxValue ?? 100;
40
+ return max === min ? 0 : (Math.min(max, Math.max(min, props.value ?? 0)) - min) / (max - min) * 100;
41
+ },
42
+ get valueText() {
43
+ const text = aria.progressBarProps["aria-valuetext"];
44
+ return typeof text === "string" ? text : void 0;
45
+ }
46
+ };
47
+ const labelProps = mergeProps$1(merge(() => aria.labelProps), {
48
+ elementType: "span",
49
+ registerSlot: registerLabel
50
+ });
51
+ const render = createRenderProps(mergeProps$1(props, {
52
+ defaultClass: "solid2-aria-ProgressBar",
53
+ values
54
+ }));
55
+ return createComponent(dom.div, mergeProps(() => {
56
+ return mergeProps$1(filterDOMProps(props, { global: true }), merge(() => aria.progressBarProps ?? {}), render);
57
+ }, {
58
+ ref: (element) => {
59
+ setRef(element);
60
+ },
61
+ get slot() {
62
+ return props.slot ?? void 0;
63
+ },
64
+ get children() {
65
+ return createComponent(LabelContext, {
66
+ value: labelProps,
67
+ get children() {
68
+ return render.children;
69
+ }
70
+ });
71
+ }
72
+ }));
73
+ }
74
+ export { ProgressBar, ProgressBarContext };
75
+
76
+ //# sourceMappingURL=progress-bar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"progress-bar.js","names":["<dom.div\n {...mergeProps(\n filterDOMProps(props, { global: true }),\n merge(() => aria.progressBarProps ?? {}),\n render\n )}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n slot={props.slot ?? undefined}\n >\n <LabelContext value={labelProps}>{render.children}</LabelContext>\n </dom.div>","dom.div","ref={(element: HTMLDivElement) => {\n setRef(element);\n }}","<LabelContext value={labelProps}>{render.children}</LabelContext>","value={labelProps}","mergeProps","_$createComponent","_$mergeProps"],"sources":["../../src/progress-bar.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/ProgressBar.tsx.\n * Modified for Solid Aria: adapted components, contexts, refs, 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 { createProgressBar } from \"@solid2-aria/core/progress/create-progress-bar\";\nimport type { AriaProgressBarProps } from \"@solid2-aria/core/progress/create-progress-bar\";\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 type { JSX } from \"@solidjs/web\";\nimport { untrack, merge, createContext } from \"solid-js\";\n\nimport { LabelContext } from \"./label\";\nimport {\n dom,\n createContextProps,\n createRenderProps,\n createSlot,\n} from \"./utils\";\nimport type { Ref, ContextValue, SlotProps, RenderProps } from \"./utils\";\n\nexport interface ProgressBarRenderProps {\n percentage: number;\n valueText: string | undefined;\n isIndeterminate: boolean;\n}\n\nexport interface ProgressBarProps\n extends\n Omit<AriaProgressBarProps, \"label\">,\n SlotProps,\n RenderProps<ProgressBarRenderProps> {\n ref?: Ref<HTMLDivElement>;\n}\n\nexport const ProgressBarContext =\n createContext<ContextValue<ProgressBarProps, HTMLDivElement>>(null);\n\nexport function ProgressBar(input: ProgressBarProps): JSX.Element {\n const [props, , setRef] = createContextProps(\n input,\n untrack(() => input.ref),\n ProgressBarContext\n );\n\n const [registerLabel, label] = createSlot(\n () => !isTruthy(props[\"aria-label\"]) && !isTruthy(props[\"aria-labelledby\"])\n );\n\n const aria = createProgressBar(\n mergeProps(props, {\n get label() {\n return label();\n },\n })\n );\n\n const values: ProgressBarRenderProps = {\n get isIndeterminate() {\n return props.isIndeterminate === true;\n },\n get percentage() {\n const min = props.minValue ?? 0;\n const max = props.maxValue ?? 100;\n\n return max === min\n ? 0\n : ((Math.min(max, Math.max(min, props.value ?? 0)) - min) /\n (max - min)) *\n 100;\n },\n get valueText() {\n const text = aria.progressBarProps[\"aria-valuetext\"];\n\n return typeof text === \"string\" ? text : undefined;\n },\n };\n\n const labelProps = mergeProps(\n merge(() => aria.labelProps),\n { elementType: \"span\" as const, registerSlot: registerLabel }\n );\n\n const render = createRenderProps(\n mergeProps(props, { defaultClass: \"solid2-aria-ProgressBar\", values })\n );\n\n return (\n <dom.div\n {...mergeProps(\n filterDOMProps(props, { global: true }),\n merge(() => aria.progressBarProps ?? {}),\n render\n )}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n slot={props.slot ?? undefined}\n >\n <LabelContext value={labelProps}>{render.children}</LabelContext>\n </dom.div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAgDA,MAAa,qBACX,cAA8D,IAAI;AAEpE,SAAgB,YAAY,OAAsC;CAChE,MAAM,CAAC,SAAS,UAAU,mBACxB,OACA,cAAc,MAAM,GAAG,GACvB,kBACF;CAEA,MAAM,CAAC,eAAe,SAAS,iBACvB,CAAC,SAAS,MAAM,aAAa,KAAK,CAAC,SAAS,MAAM,kBAAkB,CAC5E;CAEA,MAAM,OAAO,kBACXK,aAAW,OAAO,EAChB,IAAI,QAAQ;EACV,OAAO,MAAM;CACf,EACF,CAAC,CACH;CAEA,MAAM,SAAiC;EACrC,IAAI,kBAAkB;GACpB,OAAO,MAAM,oBAAoB;EACnC;EACA,IAAI,aAAa;GACf,MAAM,MAAM,MAAM,YAAY;GAC9B,MAAM,MAAM,MAAM,YAAY;GAE9B,OAAO,QAAQ,MACX,KACE,KAAK,IAAI,KAAK,KAAK,IAAI,KAAK,MAAM,SAAS,CAAC,CAAC,IAAI,QAChD,MAAM,OACP;EACR;EACA,IAAI,YAAY;GACd,MAAM,OAAO,KAAK,iBAAiB;GAEnC,OAAO,OAAO,SAAS,WAAW,OAAO,KAAA;EAC3C;CACF;CAEA,MAAM,aAAaA,aACjB,YAAY,KAAK,UAAU,GAC3B;EAAE,aAAa;EAAiB,cAAc;CAAc,CAC9D;CAEA,MAAM,SAAS,kBACbA,aAAW,OAAO;EAAE,cAAc;EAA2B;CAAO,CAAC,CACvE;CAEA,OACEL,gBAAAA,IAACC,KAADD,iBACE;EAAI,OAAAK,aACF,eAAe,OAAO,EAAE,QAAQ,KAAK,CAAC,GACtC,YAAY,KAAK,oBAAoB,CAAC,CAAC,GACvC,MACF;CAAC,GALH;EAMEH,MAAM,YAA4B;GAChC,OAAO,OAAO;EAChB;EACA,IAAA,OAAA;GAAM,OAAA,MAAM,QAAQ,KAAA;EAAS;EAT/B,IAAA,WAAA;GAWEC,OAAAA,gBAAAA,cAAAA;IAAcC,OAAO;IAArB,IAAA,WAAA;KAAkC,OAAA,OAAO;IAAuB;;EACzD;;AAEb"}
@@ -0,0 +1,67 @@
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/RadioGroup.tsx.
14
+ * Modified for Solid Aria: adapted components, contexts, refs, 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 { ContextValue, Ref, RenderProps, SlotProps } from "./utils.js";
18
+ import { JSX } from "@solidjs/web";
19
+ import { AriaRadioProps } from "@solid2-aria/core/radio/create-radio";
20
+ import { AriaRadioGroupProps } from "@solid2-aria/core/radio/create-radio-group";
21
+ import { RadioGroupState } from "@solid2-aria/stately/radio/create-radio-group-state";
22
+ import { HoverEvents } from "@solid2-aria/types-shared";
23
+ export interface RadioRenderProps {
24
+ isSelected: boolean;
25
+ isHovered: boolean;
26
+ isPressed: boolean;
27
+ isFocused: boolean;
28
+ isFocusVisible: boolean;
29
+ isDisabled: boolean;
30
+ isReadOnly: boolean;
31
+ isInvalid: boolean;
32
+ isRequired: boolean;
33
+ }
34
+ export type RadioFieldRenderProps = Omit<RadioRenderProps, "isHovered" | "isPressed" | "isFocused" | "isFocusVisible">;
35
+ export type RadioButtonRenderProps = RadioRenderProps;
36
+ export interface RadioProps extends Omit<AriaRadioProps, "children">, SlotProps, HoverEvents, RenderProps<RadioRenderProps, "label"> {
37
+ inputRef?: Ref<HTMLInputElement>;
38
+ ref?: Ref<HTMLLabelElement>;
39
+ }
40
+ export interface RadioFieldProps extends Omit<AriaRadioProps, "children">, SlotProps, HoverEvents, RenderProps<RadioFieldRenderProps> {
41
+ inputRef?: Ref<HTMLInputElement>;
42
+ ref?: Ref<HTMLDivElement>;
43
+ }
44
+ export interface RadioButtonProps extends SlotProps, HoverEvents, RenderProps<RadioButtonRenderProps, "label"> {
45
+ id?: string;
46
+ ref?: Ref<HTMLLabelElement>;
47
+ }
48
+ export declare const RadioContext: import("solid-js").Context<ContextValue<RadioProps, HTMLLabelElement>>;
49
+ export declare const RadioFieldContext: import("solid-js").Context<ContextValue<RadioFieldProps, HTMLDivElement>>;
50
+ export declare const RadioGroupStateContext: import("solid-js").Context<RadioGroupState | null>;
51
+ export declare function Radio(input: RadioProps): JSX.Element;
52
+ export declare function RadioField(input: RadioFieldProps): JSX.Element;
53
+ export declare function RadioButton(props: RadioButtonProps): JSX.Element;
54
+ export interface RadioGroupRenderProps {
55
+ isDisabled: boolean;
56
+ isReadOnly: boolean;
57
+ isRequired: boolean;
58
+ isInvalid: boolean;
59
+ state: RadioGroupState;
60
+ orientation: "horizontal" | "vertical";
61
+ }
62
+ export interface RadioGroupProps extends Omit<AriaRadioGroupProps, "children" | "label" | "description" | "errorMessage">, SlotProps, RenderProps<RadioGroupRenderProps> {
63
+ ref?: Ref<HTMLDivElement>;
64
+ }
65
+ export declare const RadioGroupContext: import("solid-js").Context<ContextValue<RadioGroupProps, HTMLDivElement>>;
66
+ export declare function RadioGroup(input: RadioGroupProps): JSX.Element;
67
+ //# sourceMappingURL=radio-group.d.ts.map
@@ -0,0 +1,336 @@
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/RadioGroup.tsx.
14
+ * Modified for Solid Aria: adapted components, contexts, refs, 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 { createContextProps, createRenderProps, createSlot, createSlottedContext, dom } from "./utils.js";
18
+ import { LabelContext } from "./label.js";
19
+ import { TextContext } from "./text.js";
20
+ import { FieldErrorContext } from "./field-error.js";
21
+ import { FormContext } from "./form.js";
22
+ import { SelectionIndicatorContext } from "./selection-indicator.js";
23
+ import { applyRef, createComponent, getNextElement, memo, mergeProps, ref, runHydrationEvents, spread, template } from "@solidjs/web";
24
+ import { mergeProps as mergeProps$1 } from "@solid2-aria/core/utils/merge-props";
25
+ import { createContext, createSignal, merge, omit, untrack, useContext } from "solid-js";
26
+ import { filterDOMProps } from "@solid2-aria/core/utils/filter-dom-props";
27
+ import { createFocusRing } from "@solid2-aria/core/focus/create-focus-ring";
28
+ import { createHover } from "@solid2-aria/core/interactions/create-hover";
29
+ import { isTruthy } from "@solid2-aria/core/utils/truthy";
30
+ import { VisuallyHidden } from "@solid2-aria/core/visually-hidden/visually-hidden";
31
+ import { createRadio } from "@solid2-aria/core/radio/create-radio";
32
+ import { createRadioGroup } from "@solid2-aria/core/radio/create-radio-group";
33
+ import { createRadioGroupState } from "@solid2-aria/stately/radio/create-radio-group-state";
34
+ // src/radio-group.tsx
35
+ var _tmpl$ = /* @__PURE__ */ template(`<input>`);
36
+ const RadioContext = createContext(null);
37
+ const RadioFieldContext = createContext(null);
38
+ const InternalContext = createContext(null);
39
+ const RadioGroupStateContext = createContext(null);
40
+ function createAria(props) {
41
+ const [inputRef, setInputRef] = createSignal(null, { ownedWrite: true });
42
+ const form = createSlottedContext(FormContext);
43
+ const options = mergeProps$1(omit(props, "children"), {
44
+ children: true,
45
+ get validationBehavior() {
46
+ return form?.validationBehavior ?? "native";
47
+ }
48
+ });
49
+ const state = useContext(RadioGroupStateContext);
50
+ if (!state) throw new Error("Radio must be inside RadioGroup.");
51
+ return {
52
+ aria: createRadio(options, state, inputRef),
53
+ defaultClass: "solid2-aria-Radio",
54
+ inputRef,
55
+ props,
56
+ setInputRef: (element) => {
57
+ setInputRef(element);
58
+ },
59
+ state
60
+ };
61
+ }
62
+ function fieldValues(ctx) {
63
+ return {
64
+ get isDisabled() {
65
+ return ctx.aria.isDisabled;
66
+ },
67
+ get isInvalid() {
68
+ return ctx.state.isInvalid;
69
+ },
70
+ get isReadOnly() {
71
+ return ctx.state.isReadOnly;
72
+ },
73
+ get isRequired() {
74
+ return ctx.state.isRequired;
75
+ },
76
+ get isSelected() {
77
+ return ctx.aria.isSelected;
78
+ }
79
+ };
80
+ }
81
+ function Radio(input) {
82
+ const [props, , setRef] = createContextProps(input, untrack(() => input.ref), RadioContext);
83
+ const ctx = createAria(props);
84
+ return createComponent(InternalContext, {
85
+ value: ctx,
86
+ get children() {
87
+ return createComponent(RadioButton, mergeProps(props, { ref: (element) => {
88
+ setRef(element);
89
+ } }));
90
+ }
91
+ });
92
+ }
93
+ function RadioField(input) {
94
+ const [props, , setRef] = createContextProps(input, untrack(() => input.ref), RadioFieldContext);
95
+ const ctx = createAria(props);
96
+ ctx.defaultClass = "solid2-aria-RadioButton";
97
+ const values = fieldValues(ctx);
98
+ const render = createRenderProps(mergeProps$1(props, {
99
+ defaultClass: "solid2-aria-RadioField",
100
+ values
101
+ }));
102
+ return createComponent(dom.div, mergeProps(() => {
103
+ return omit(filterDOMProps(props, { global: true }), "id", "onClick");
104
+ }, render, {
105
+ ref: (element) => {
106
+ setRef(element);
107
+ },
108
+ get slot() {
109
+ return props.slot ?? void 0;
110
+ },
111
+ get "data-selected"() {
112
+ return values.isSelected || void 0;
113
+ },
114
+ get "data-disabled"() {
115
+ return values.isDisabled || void 0;
116
+ },
117
+ get "data-invalid"() {
118
+ return values.isInvalid || void 0;
119
+ },
120
+ get "data-readonly"() {
121
+ return values.isReadOnly || void 0;
122
+ },
123
+ get "data-required"() {
124
+ return values.isRequired || void 0;
125
+ },
126
+ get children() {
127
+ return createComponent(InternalContext, {
128
+ value: ctx,
129
+ get children() {
130
+ return createComponent(SelectionIndicatorContext, {
131
+ value: { get isSelected() {
132
+ return values.isSelected;
133
+ } },
134
+ get children() {
135
+ return createComponent(TextContext, {
136
+ value: { slots: { get description() {
137
+ return ctx.aria.descriptionProps;
138
+ } } },
139
+ get children() {
140
+ return render.children;
141
+ }
142
+ });
143
+ }
144
+ });
145
+ }
146
+ });
147
+ }
148
+ }));
149
+ }
150
+ function RadioButton(props) {
151
+ const ctx = useContext(InternalContext);
152
+ if (!ctx) throw new Error("RadioButton must be inside RadioField.");
153
+ const focus = createFocusRing();
154
+ const fields = fieldValues(ctx);
155
+ const hover = createHover(mergeProps$1(props, { get isDisabled() {
156
+ return fields.isDisabled || fields.isReadOnly;
157
+ } }));
158
+ const values = mergeProps$1(fields, {
159
+ get isFocusVisible() {
160
+ return focus.isFocusVisible;
161
+ },
162
+ get isFocused() {
163
+ return focus.isFocused;
164
+ },
165
+ get isHovered() {
166
+ return hover.isHovered;
167
+ },
168
+ get isPressed() {
169
+ return ctx.aria.isPressed;
170
+ }
171
+ });
172
+ const render = createRenderProps(mergeProps$1(props, {
173
+ get defaultClass() {
174
+ return ctx.defaultClass;
175
+ },
176
+ values
177
+ }));
178
+ return createComponent(dom.label, mergeProps(() => {
179
+ return mergeProps$1(omit(filterDOMProps(props, { global: true }), "id", "onClick"), merge(() => ctx.aria.labelProps ?? {}), merge(() => hover.hoverProps ?? {}), render);
180
+ }, {
181
+ ref(r$) {
182
+ var _ref$ = props.ref;
183
+ typeof _ref$ === "function" || Array.isArray(_ref$) ? applyRef(_ref$, r$) : props.ref = r$;
184
+ },
185
+ get slot() {
186
+ return props.slot ?? void 0;
187
+ },
188
+ get "data-selected"() {
189
+ return fields.isSelected || void 0;
190
+ },
191
+ get "data-disabled"() {
192
+ return fields.isDisabled || void 0;
193
+ },
194
+ get "data-readonly"() {
195
+ return fields.isReadOnly || void 0;
196
+ },
197
+ get "data-invalid"() {
198
+ return fields.isInvalid || void 0;
199
+ },
200
+ get "data-required"() {
201
+ return fields.isRequired || void 0;
202
+ },
203
+ get "data-pressed"() {
204
+ return ctx.aria.isPressed || void 0;
205
+ },
206
+ get "data-hovered"() {
207
+ return hover.isHovered || void 0;
208
+ },
209
+ get "data-focused"() {
210
+ return focus.isFocused || void 0;
211
+ },
212
+ get "data-focus-visible"() {
213
+ return focus.isFocusVisible || void 0;
214
+ },
215
+ get children() {
216
+ return [createComponent(VisuallyHidden, {
217
+ elementType: "span",
218
+ get children() {
219
+ var _el$ = getNextElement(_tmpl$);
220
+ spread(_el$, () => {
221
+ return mergeProps$1(merge(() => ctx.aria.inputProps ?? {}), merge(() => focus.focusProps ?? {}));
222
+ }, false);
223
+ ref(() => {
224
+ return (element) => {
225
+ ctx.setInputRef(element);
226
+ };
227
+ }, _el$);
228
+ runHydrationEvents();
229
+ return _el$;
230
+ }
231
+ }), memo(() => {
232
+ return render.children;
233
+ })];
234
+ }
235
+ }));
236
+ }
237
+ const RadioGroupContext = createContext(null);
238
+ function RadioGroup(input) {
239
+ const [props, , setRef] = createContextProps(input, untrack(() => input.ref), RadioGroupContext);
240
+ const form = createSlottedContext(FormContext);
241
+ const [registerLabel, label] = createSlot(() => !isTruthy(props["aria-label"]) && !isTruthy(props["aria-labelledby"]));
242
+ const options = mergeProps$1(props, {
243
+ get label() {
244
+ return label();
245
+ },
246
+ get validationBehavior() {
247
+ return props.validationBehavior ?? form?.validationBehavior ?? "native";
248
+ }
249
+ });
250
+ const state = createRadioGroupState(options);
251
+ const aria = createRadioGroup(options, state);
252
+ const values = {
253
+ get isDisabled() {
254
+ return state.isDisabled;
255
+ },
256
+ get isInvalid() {
257
+ return state.isInvalid;
258
+ },
259
+ get isReadOnly() {
260
+ return state.isReadOnly;
261
+ },
262
+ get isRequired() {
263
+ return props.isRequired === true;
264
+ },
265
+ get orientation() {
266
+ return props.orientation ?? "vertical";
267
+ },
268
+ state
269
+ };
270
+ const labelProps = mergeProps$1(merge(() => aria.labelProps), {
271
+ elementType: "span",
272
+ registerSlot: registerLabel
273
+ });
274
+ const render = createRenderProps(mergeProps$1(props, {
275
+ defaultClass: "solid2-aria-RadioGroup",
276
+ values
277
+ }));
278
+ return createComponent(dom.div, mergeProps(() => {
279
+ return mergeProps$1(filterDOMProps(props, { global: true }), merge(() => aria.radioGroupProps ?? {}), render);
280
+ }, {
281
+ ref: (element) => {
282
+ setRef(element);
283
+ },
284
+ get slot() {
285
+ return props.slot ?? void 0;
286
+ },
287
+ get "data-disabled"() {
288
+ return values.isDisabled || void 0;
289
+ },
290
+ get "data-readonly"() {
291
+ return values.isReadOnly || void 0;
292
+ },
293
+ get "data-required"() {
294
+ return values.isRequired || void 0;
295
+ },
296
+ get "data-invalid"() {
297
+ return values.isInvalid || void 0;
298
+ },
299
+ get "data-orientation"() {
300
+ return values.orientation;
301
+ },
302
+ get children() {
303
+ return createComponent(RadioGroupStateContext, {
304
+ value: state,
305
+ get children() {
306
+ return createComponent(LabelContext, {
307
+ value: labelProps,
308
+ get children() {
309
+ return createComponent(TextContext, {
310
+ value: { slots: {
311
+ get description() {
312
+ return aria.descriptionProps;
313
+ },
314
+ get errorMessage() {
315
+ return aria.errorMessageProps;
316
+ }
317
+ } },
318
+ get children() {
319
+ return createComponent(FieldErrorContext, {
320
+ value: aria,
321
+ get children() {
322
+ return render.children;
323
+ }
324
+ });
325
+ }
326
+ });
327
+ }
328
+ });
329
+ }
330
+ });
331
+ }
332
+ }));
333
+ }
334
+ export { Radio, RadioButton, RadioContext, RadioField, RadioFieldContext, RadioGroup, RadioGroupContext, RadioGroupStateContext };
335
+
336
+ //# sourceMappingURL=radio-group.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radio-group.js","names":["<InternalContext value={ctx}>\n <RadioButton\n {...props}\n ref={(element: HTMLLabelElement) => {\n setRef(element);\n }}\n />\n </InternalContext>","value={ctx}","<RadioButton\n {...props}\n ref={(element: HTMLLabelElement) => {\n setRef(element);\n }}\n />","ref={(element: HTMLLabelElement) => {\n setRef(element);\n }}","<dom.div\n {\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n ...omit(filterDOMProps(props, { global: true }), \"id\", \"onClick\")\n // oxlint-enable solid/reactivity\n }\n {...render}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n slot={props.slot ?? undefined}\n data-selected={values.isSelected || undefined}\n data-disabled={values.isDisabled || undefined}\n data-invalid={values.isInvalid || undefined}\n data-readonly={values.isReadOnly || undefined}\n data-required={values.isRequired || undefined}\n >\n <InternalContext value={ctx}>\n <SelectionIndicatorContext\n value={{\n get isSelected() {\n return values.isSelected;\n },\n }}\n >\n <TextContext\n value={{\n slots: {\n get description() {\n return ctx.aria.descriptionProps;\n },\n },\n }}\n >\n {render.children}\n </TextContext>\n </SelectionIndicatorContext>\n </InternalContext>\n </dom.div>","dom.div","ref={(element: HTMLDivElement) => {\n setRef(element);\n }}","<InternalContext value={ctx}>\n <SelectionIndicatorContext\n value={{\n get isSelected() {\n return values.isSelected;\n },\n }}\n >\n <TextContext\n value={{\n slots: {\n get description() {\n return ctx.aria.descriptionProps;\n },\n },\n }}\n >\n {render.children}\n </TextContext>\n </SelectionIndicatorContext>\n </InternalContext>","<SelectionIndicatorContext\n value={{\n get isSelected() {\n return values.isSelected;\n },\n }}\n >\n <TextContext\n value={{\n slots: {\n get description() {\n return ctx.aria.descriptionProps;\n },\n },\n }}\n >\n {render.children}\n </TextContext>\n </SelectionIndicatorContext>","value={{\n get isSelected() {\n return values.isSelected;\n },\n }}","<TextContext\n value={{\n slots: {\n get description() {\n return ctx.aria.descriptionProps;\n },\n },\n }}\n >\n {render.children}\n </TextContext>","value={{\n slots: {\n get description() {\n return ctx.aria.descriptionProps;\n },\n },\n }}","<dom.label\n {...mergeProps(\n omit(filterDOMProps(props, { global: true }), \"id\", \"onClick\"),\n merge(() => ctx.aria.labelProps ?? {}),\n merge(() => hover.hoverProps ?? {}),\n render\n )}\n ref={props.ref}\n slot={props.slot ?? undefined}\n data-selected={fields.isSelected || undefined}\n data-disabled={fields.isDisabled || undefined}\n data-readonly={fields.isReadOnly || undefined}\n data-invalid={fields.isInvalid || undefined}\n data-required={fields.isRequired || undefined}\n data-pressed={ctx.aria.isPressed || undefined}\n data-hovered={hover.isHovered || undefined}\n data-focused={focus.isFocused || undefined}\n data-focus-visible={focus.isFocusVisible || undefined}\n >\n <VisuallyHidden elementType=\"span\">\n <input\n {...mergeProps(\n merge(() => ctx.aria.inputProps ?? {}),\n merge(() => focus.focusProps ?? {})\n )}\n ref={(element: HTMLInputElement) => {\n ctx.setInputRef(element);\n }}\n />\n </VisuallyHidden>\n {render.children}\n </dom.label>","dom.label","ref={props.ref}","<VisuallyHidden elementType=\"span\">\n <input\n {...mergeProps(\n merge(() => ctx.aria.inputProps ?? {}),\n merge(() => focus.focusProps ?? {})\n )}\n ref={(element: HTMLInputElement) => {\n ctx.setInputRef(element);\n }}\n />\n </VisuallyHidden>","elementType=\"span\"","ref={(element: HTMLInputElement) => {\n ctx.setInputRef(element);\n }}","<input\n {...mergeProps(\n merge(() => ctx.aria.inputProps ?? {}),\n merge(() => focus.focusProps ?? {})\n )}\n ref={(element: HTMLInputElement) => {\n ctx.setInputRef(element);\n }}\n />","render.children","<dom.div\n {...mergeProps(\n filterDOMProps(props, { global: true }),\n merge(() => aria.radioGroupProps ?? {}),\n render\n )}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n slot={props.slot ?? undefined}\n data-disabled={values.isDisabled || undefined}\n data-readonly={values.isReadOnly || undefined}\n data-required={values.isRequired || undefined}\n data-invalid={values.isInvalid || undefined}\n data-orientation={values.orientation}\n >\n <RadioGroupStateContext value={state}>\n <LabelContext value={labelProps}>\n <TextContext\n value={{\n slots: {\n get description() {\n return aria.descriptionProps;\n },\n get errorMessage() {\n return aria.errorMessageProps;\n },\n },\n }}\n >\n <FieldErrorContext value={aria}>\n {render.children}\n </FieldErrorContext>\n </TextContext>\n </LabelContext>\n </RadioGroupStateContext>\n </dom.div>","<RadioGroupStateContext value={state}>\n <LabelContext value={labelProps}>\n <TextContext\n value={{\n slots: {\n get description() {\n return aria.descriptionProps;\n },\n get errorMessage() {\n return aria.errorMessageProps;\n },\n },\n }}\n >\n <FieldErrorContext value={aria}>\n {render.children}\n </FieldErrorContext>\n </TextContext>\n </LabelContext>\n </RadioGroupStateContext>","value={state}","<LabelContext value={labelProps}>\n <TextContext\n value={{\n slots: {\n get description() {\n return aria.descriptionProps;\n },\n get errorMessage() {\n return aria.errorMessageProps;\n },\n },\n }}\n >\n <FieldErrorContext value={aria}>\n {render.children}\n </FieldErrorContext>\n </TextContext>\n </LabelContext>","value={labelProps}","<TextContext\n value={{\n slots: {\n get description() {\n return aria.descriptionProps;\n },\n get errorMessage() {\n return aria.errorMessageProps;\n },\n },\n }}\n >\n <FieldErrorContext value={aria}>\n {render.children}\n </FieldErrorContext>\n </TextContext>","value={{\n slots: {\n get description() {\n return aria.descriptionProps;\n },\n get errorMessage() {\n return aria.errorMessageProps;\n },\n },\n }}","<FieldErrorContext value={aria}>\n {render.children}\n </FieldErrorContext>","value={aria}","mergeProps","_$createComponent","_$mergeProps","_$applyRef","_$getNextElement","_$memo"],"sources":["../../src/radio-group.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/RadioGroup.tsx.\n * Modified for Solid Aria: adapted components, contexts, refs, 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 { createFocusRing } from \"@solid2-aria/core/focus/create-focus-ring\";\nimport { createHover } from \"@solid2-aria/core/interactions/create-hover\";\nimport { createRadio } from \"@solid2-aria/core/radio/create-radio\";\nimport type {\n AriaRadioProps,\n RadioAria,\n} from \"@solid2-aria/core/radio/create-radio\";\nimport { createRadioGroup } from \"@solid2-aria/core/radio/create-radio-group\";\nimport type { AriaRadioGroupProps } from \"@solid2-aria/core/radio/create-radio-group\";\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 { VisuallyHidden } from \"@solid2-aria/core/visually-hidden/visually-hidden\";\nimport { createRadioGroupState } from \"@solid2-aria/stately/radio/create-radio-group-state\";\nimport type { RadioGroupState } from \"@solid2-aria/stately/radio/create-radio-group-state\";\nimport type { HoverEvents } from \"@solid2-aria/types-shared\";\nimport type { JSX } from \"@solidjs/web\";\nimport {\n untrack,\n createSignal,\n merge,\n createContext,\n useContext,\n omit,\n} from \"solid-js\";\nimport type { Accessor } from \"solid-js\";\n\nimport { FieldErrorContext } from \"./field-error\";\nimport { FormContext } from \"./form\";\nimport { LabelContext } from \"./label\";\nimport { SelectionIndicatorContext } from \"./selection-indicator\";\nimport { TextContext } from \"./text\";\nimport {\n dom,\n createContextProps,\n createRenderProps,\n createSlottedContext,\n createSlot,\n} from \"./utils\";\nimport type { Ref, ContextValue, SlotProps, RenderProps } from \"./utils\";\n\nexport interface RadioRenderProps {\n isSelected: boolean;\n isHovered: boolean;\n isPressed: boolean;\n isFocused: boolean;\n isFocusVisible: boolean;\n isDisabled: boolean;\n isReadOnly: boolean;\n isInvalid: boolean;\n isRequired: boolean;\n}\n\nexport type RadioFieldRenderProps = Omit<\n RadioRenderProps,\n \"isHovered\" | \"isPressed\" | \"isFocused\" | \"isFocusVisible\"\n>;\n\nexport type RadioButtonRenderProps = RadioRenderProps;\n\nexport interface RadioProps\n extends\n Omit<AriaRadioProps, \"children\">,\n SlotProps,\n HoverEvents,\n RenderProps<RadioRenderProps, \"label\"> {\n inputRef?: Ref<HTMLInputElement>;\n ref?: Ref<HTMLLabelElement>;\n}\n\nexport interface RadioFieldProps\n extends\n Omit<AriaRadioProps, \"children\">,\n SlotProps,\n HoverEvents,\n RenderProps<RadioFieldRenderProps> {\n inputRef?: Ref<HTMLInputElement>;\n ref?: Ref<HTMLDivElement>;\n}\n\nexport interface RadioButtonProps\n extends SlotProps, HoverEvents, RenderProps<RadioButtonRenderProps, \"label\"> {\n id?: string;\n ref?: Ref<HTMLLabelElement>;\n}\n\nexport const RadioContext =\n createContext<ContextValue<RadioProps, HTMLLabelElement>>(null);\n\nexport const RadioFieldContext =\n createContext<ContextValue<RadioFieldProps, HTMLDivElement>>(null);\n\ninterface InternalValue {\n aria: RadioAria;\n inputRef: Accessor<HTMLInputElement | null>;\n setInputRef: (element: HTMLInputElement) => void;\n state: RadioGroupState;\n props: Omit<AriaRadioProps, \"children\">;\n defaultClass: string;\n}\n\nconst InternalContext = createContext<InternalValue | null>(null);\n\nexport const RadioGroupStateContext = createContext<RadioGroupState | null>(\n null\n);\n\nfunction createAria(props: RadioProps | RadioFieldProps): InternalValue {\n const [inputRef, setInputRef] = createSignal<HTMLInputElement | null>(null, {\n ownedWrite: true,\n });\n\n const form = createSlottedContext(FormContext);\n\n const options = mergeProps(omit(props, \"children\"), {\n children: true,\n get validationBehavior() {\n return form?.validationBehavior ?? \"native\";\n },\n });\n\n const state = useContext(RadioGroupStateContext);\n\n if (!state) {\n throw new Error(\"Radio must be inside RadioGroup.\");\n }\n\n const aria = createRadio(options, state, inputRef);\n\n return {\n aria,\n defaultClass: \"solid2-aria-Radio\",\n inputRef,\n props,\n setInputRef: (element: HTMLInputElement) => {\n setInputRef(element);\n },\n state,\n };\n}\n\nfunction fieldValues(ctx: InternalValue): RadioFieldRenderProps {\n return {\n get isDisabled() {\n return ctx.aria.isDisabled;\n },\n get isInvalid() {\n return ctx.state.isInvalid;\n },\n get isReadOnly() {\n return ctx.state.isReadOnly;\n },\n get isRequired() {\n return ctx.state.isRequired;\n },\n get isSelected() {\n return ctx.aria.isSelected;\n },\n };\n}\n\nexport function Radio(input: RadioProps): JSX.Element {\n const [props, , setRef] = createContextProps(\n input,\n untrack(() => input.ref),\n RadioContext\n );\n\n const ctx = createAria(props);\n\n return (\n <InternalContext value={ctx}>\n <RadioButton\n {...props}\n ref={(element: HTMLLabelElement) => {\n setRef(element);\n }}\n />\n </InternalContext>\n );\n}\n\nexport function RadioField(input: RadioFieldProps): JSX.Element {\n const [props, , setRef] = createContextProps(\n input,\n untrack(() => input.ref),\n RadioFieldContext\n );\n\n const ctx = createAria(props);\n ctx.defaultClass = \"solid2-aria-RadioButton\";\n const values = fieldValues(ctx);\n\n const render = createRenderProps(\n mergeProps(props, { defaultClass: \"solid2-aria-RadioField\", values })\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 }), \"id\", \"onClick\")\n // oxlint-enable solid/reactivity\n }\n {...render}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n slot={props.slot ?? undefined}\n data-selected={values.isSelected || undefined}\n data-disabled={values.isDisabled || undefined}\n data-invalid={values.isInvalid || undefined}\n data-readonly={values.isReadOnly || undefined}\n data-required={values.isRequired || undefined}\n >\n <InternalContext value={ctx}>\n <SelectionIndicatorContext\n value={{\n get isSelected() {\n return values.isSelected;\n },\n }}\n >\n <TextContext\n value={{\n slots: {\n get description() {\n return ctx.aria.descriptionProps;\n },\n },\n }}\n >\n {render.children}\n </TextContext>\n </SelectionIndicatorContext>\n </InternalContext>\n </dom.div>\n );\n}\n\nexport function RadioButton(props: RadioButtonProps): JSX.Element {\n const ctx = useContext(InternalContext);\n\n if (!ctx) {\n throw new Error(\"RadioButton must be inside RadioField.\");\n }\n\n const focus = createFocusRing();\n const fields = fieldValues(ctx);\n\n const hover = createHover(\n mergeProps(props, {\n get isDisabled() {\n return fields.isDisabled || fields.isReadOnly;\n },\n })\n );\n\n const values: RadioButtonRenderProps = mergeProps(fields, {\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 ctx.aria.isPressed;\n },\n });\n\n const render = createRenderProps(\n mergeProps(props, {\n get defaultClass() {\n return ctx.defaultClass;\n },\n values,\n })\n );\n\n return (\n <dom.label\n {...mergeProps(\n omit(filterDOMProps(props, { global: true }), \"id\", \"onClick\"),\n merge(() => ctx.aria.labelProps ?? {}),\n merge(() => hover.hoverProps ?? {}),\n render\n )}\n ref={props.ref}\n slot={props.slot ?? undefined}\n data-selected={fields.isSelected || undefined}\n data-disabled={fields.isDisabled || undefined}\n data-readonly={fields.isReadOnly || undefined}\n data-invalid={fields.isInvalid || undefined}\n data-required={fields.isRequired || undefined}\n data-pressed={ctx.aria.isPressed || undefined}\n data-hovered={hover.isHovered || undefined}\n data-focused={focus.isFocused || undefined}\n data-focus-visible={focus.isFocusVisible || undefined}\n >\n <VisuallyHidden elementType=\"span\">\n <input\n {...mergeProps(\n merge(() => ctx.aria.inputProps ?? {}),\n merge(() => focus.focusProps ?? {})\n )}\n ref={(element: HTMLInputElement) => {\n ctx.setInputRef(element);\n }}\n />\n </VisuallyHidden>\n {render.children}\n </dom.label>\n );\n}\n\nexport interface RadioGroupRenderProps {\n isDisabled: boolean;\n isReadOnly: boolean;\n isRequired: boolean;\n isInvalid: boolean;\n state: RadioGroupState;\n orientation: \"horizontal\" | \"vertical\";\n}\n\nexport interface RadioGroupProps\n extends\n Omit<\n AriaRadioGroupProps,\n \"children\" | \"label\" | \"description\" | \"errorMessage\"\n >,\n SlotProps,\n RenderProps<RadioGroupRenderProps> {\n ref?: Ref<HTMLDivElement>;\n}\n\nexport const RadioGroupContext =\n createContext<ContextValue<RadioGroupProps, HTMLDivElement>>(null);\n\nexport function RadioGroup(input: RadioGroupProps): JSX.Element {\n const [props, , setRef] = createContextProps(\n input,\n untrack(() => input.ref),\n RadioGroupContext\n );\n\n const form = createSlottedContext(FormContext);\n\n const [registerLabel, label] = createSlot(\n () => !isTruthy(props[\"aria-label\"]) && !isTruthy(props[\"aria-labelledby\"])\n );\n\n const options = mergeProps(props, {\n get label() {\n return label();\n },\n get validationBehavior() {\n return props.validationBehavior ?? form?.validationBehavior ?? \"native\";\n },\n });\n\n const state = createRadioGroupState(options);\n const aria = createRadioGroup(options, state);\n\n const values: RadioGroupRenderProps = {\n get isDisabled() {\n return state.isDisabled;\n },\n get isInvalid() {\n return state.isInvalid;\n },\n get isReadOnly() {\n return state.isReadOnly;\n },\n get isRequired() {\n return props.isRequired === true;\n },\n get orientation() {\n return props.orientation ?? \"vertical\";\n },\n state,\n };\n\n const labelProps = mergeProps(\n merge(() => aria.labelProps),\n { elementType: \"span\" as const, registerSlot: registerLabel }\n );\n\n const render = createRenderProps(\n mergeProps(props, { defaultClass: \"solid2-aria-RadioGroup\", values })\n );\n\n return (\n <dom.div\n {...mergeProps(\n filterDOMProps(props, { global: true }),\n merge(() => aria.radioGroupProps ?? {}),\n render\n )}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n slot={props.slot ?? undefined}\n data-disabled={values.isDisabled || undefined}\n data-readonly={values.isReadOnly || undefined}\n data-required={values.isRequired || undefined}\n data-invalid={values.isInvalid || undefined}\n data-orientation={values.orientation}\n >\n <RadioGroupStateContext value={state}>\n <LabelContext value={labelProps}>\n <TextContext\n value={{\n slots: {\n get description() {\n return aria.descriptionProps;\n },\n get errorMessage() {\n return aria.errorMessageProps;\n },\n },\n }}\n >\n <FieldErrorContext value={aria}>\n {render.children}\n </FieldErrorContext>\n </TextContext>\n </LabelContext>\n </RadioGroupStateContext>\n </dom.div>\n );\n}\n"],"mappings":"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"}
@@ -0,0 +1,34 @@
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/SearchField.tsx.
14
+ * Modified for Solid Aria: adapted components, contexts, refs, 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 { ContextValue, Ref, RenderProps, SlotProps } from "./utils.js";
18
+ import { JSX } from "@solidjs/web";
19
+ import { AriaSearchFieldProps } from "@solid2-aria/core/searchfield/create-search-field";
20
+ import { SearchFieldState } from "@solid2-aria/stately/searchfield/create-search-field-state";
21
+ export interface SearchFieldRenderProps {
22
+ isEmpty: boolean;
23
+ isDisabled: boolean;
24
+ isInvalid: boolean;
25
+ isReadOnly: boolean;
26
+ isRequired: boolean;
27
+ state: SearchFieldState;
28
+ }
29
+ export interface SearchFieldProps extends Omit<AriaSearchFieldProps, "label" | "description" | "errorMessage" | "children">, SlotProps, RenderProps<SearchFieldRenderProps> {
30
+ ref?: Ref<HTMLDivElement>;
31
+ }
32
+ export declare const SearchFieldContext: import("solid-js").Context<ContextValue<SearchFieldProps, HTMLDivElement>>;
33
+ export declare function SearchField(input: SearchFieldProps): JSX.Element;
34
+ //# sourceMappingURL=search-field.d.ts.map