@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":"color-slider.js","names":["<ColorSliderStateContext value={state}>\n <SliderStateContext value={state}>\n <SliderTrackContext\n value={mergeProps(\n merge(() => aria.trackProps),\n {\n ref: (element: HTMLDivElement) => {\n setTrackRef(element);\n },\n trackRef,\n }\n )}\n >\n <SliderOutputContext\n value={\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n merge(() => aria.outputProps)\n // oxlint-enable solid/reactivity\n }\n >\n <LabelContext\n value={mergeProps(\n merge(() => aria.labelProps),\n {\n get children() {\n return state.value.getChannelName(\n props.channel,\n locale.locale\n );\n },\n registerSlot: registerLabel,\n }\n )}\n >\n <InternalColorThumbContext value={thumb}>\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\")\n // oxlint-enable solid/reactivity\n }\n {...render}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n slot={\n typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined\n }\n data-orientation={state.orientation}\n data-disabled={state.isDisabled || undefined}\n >\n {render.children}\n </dom.div>\n </InternalColorThumbContext>\n </LabelContext>\n </SliderOutputContext>\n </SliderTrackContext>\n </SliderStateContext>\n </ColorSliderStateContext>","value={state}","<SliderStateContext value={state}>\n <SliderTrackContext\n value={mergeProps(\n merge(() => aria.trackProps),\n {\n ref: (element: HTMLDivElement) => {\n setTrackRef(element);\n },\n trackRef,\n }\n )}\n >\n <SliderOutputContext\n value={\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n merge(() => aria.outputProps)\n // oxlint-enable solid/reactivity\n }\n >\n <LabelContext\n value={mergeProps(\n merge(() => aria.labelProps),\n {\n get children() {\n return state.value.getChannelName(\n props.channel,\n locale.locale\n );\n },\n registerSlot: registerLabel,\n }\n )}\n >\n <InternalColorThumbContext value={thumb}>\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\")\n // oxlint-enable solid/reactivity\n }\n {...render}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n slot={\n typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined\n }\n data-orientation={state.orientation}\n data-disabled={state.isDisabled || undefined}\n >\n {render.children}\n </dom.div>\n </InternalColorThumbContext>\n </LabelContext>\n </SliderOutputContext>\n </SliderTrackContext>\n </SliderStateContext>","<SliderTrackContext\n value={mergeProps(\n merge(() => aria.trackProps),\n {\n ref: (element: HTMLDivElement) => {\n setTrackRef(element);\n },\n trackRef,\n }\n )}\n >\n <SliderOutputContext\n value={\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n merge(() => aria.outputProps)\n // oxlint-enable solid/reactivity\n }\n >\n <LabelContext\n value={mergeProps(\n merge(() => aria.labelProps),\n {\n get children() {\n return state.value.getChannelName(\n props.channel,\n locale.locale\n );\n },\n registerSlot: registerLabel,\n }\n )}\n >\n <InternalColorThumbContext value={thumb}>\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\")\n // oxlint-enable solid/reactivity\n }\n {...render}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n slot={\n typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined\n }\n data-orientation={state.orientation}\n data-disabled={state.isDisabled || undefined}\n >\n {render.children}\n </dom.div>\n </InternalColorThumbContext>\n </LabelContext>\n </SliderOutputContext>\n </SliderTrackContext>","<SliderOutputContext\n value={\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n merge(() => aria.outputProps)\n // oxlint-enable solid/reactivity\n }\n >\n <LabelContext\n value={mergeProps(\n merge(() => aria.labelProps),\n {\n get children() {\n return state.value.getChannelName(\n props.channel,\n locale.locale\n );\n },\n registerSlot: registerLabel,\n }\n )}\n >\n <InternalColorThumbContext value={thumb}>\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\")\n // oxlint-enable solid/reactivity\n }\n {...render}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n slot={\n typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined\n }\n data-orientation={state.orientation}\n data-disabled={state.isDisabled || undefined}\n >\n {render.children}\n </dom.div>\n </InternalColorThumbContext>\n </LabelContext>\n </SliderOutputContext>","<LabelContext\n value={mergeProps(\n merge(() => aria.labelProps),\n {\n get children() {\n return state.value.getChannelName(\n props.channel,\n locale.locale\n );\n },\n registerSlot: registerLabel,\n }\n )}\n >\n <InternalColorThumbContext value={thumb}>\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\")\n // oxlint-enable solid/reactivity\n }\n {...render}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n slot={\n typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined\n }\n data-orientation={state.orientation}\n data-disabled={state.isDisabled || undefined}\n >\n {render.children}\n </dom.div>\n </InternalColorThumbContext>\n </LabelContext>","<InternalColorThumbContext value={thumb}>\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\")\n // oxlint-enable solid/reactivity\n }\n {...render}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n slot={\n typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined\n }\n data-orientation={state.orientation}\n data-disabled={state.isDisabled || undefined}\n >\n {render.children}\n </dom.div>\n </InternalColorThumbContext>","value={thumb}","<dom.div\n {\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n ...omit(filterDOMProps(props, { global: true }), \"id\")\n // oxlint-enable solid/reactivity\n }\n {...render}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n slot={\n typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined\n }\n data-orientation={state.orientation}\n data-disabled={state.isDisabled || undefined}\n >\n {render.children}\n </dom.div>","dom.div","ref={(element: HTMLDivElement) => {\n setRef(element);\n }}","typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined","mergeProps","_$createComponent","_$mergeProps","_$memo"],"sources":["../../src/color-slider.tsx"],"sourcesContent":["/*\n * Derived from Adobe React Spectrum: packages/react-aria-components/src/ColorSlider.tsx.\n * Modified for Solid Aria: composed Solid Aria and Stately primitives with Solid 2 contexts, reactive getters, and DOM refs; 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 { createColorSlider } from \"@solid2-aria/core/color/create-color-slider\";\nimport type { AriaColorSliderProps } from \"@solid2-aria/core/color/create-color-slider\";\nimport { createLocale } from \"@solid2-aria/core/i18n/i18n-provider\";\nimport { filterDOMProps } from \"@solid2-aria/core/utils/filter-dom-props\";\nimport { mergeProps } from \"@solid2-aria/core/utils/merge-props\";\nimport { createColorSliderState } from \"@solid2-aria/stately/color/create-color-slider-state\";\nimport type { ColorSliderState } from \"@solid2-aria/stately/color/create-color-slider-state\";\nimport type { Orientation } from \"@solid2-aria/types-shared\";\nimport type { GlobalDOMAttributes } from \"@solid2-aria/types-shared-web\";\nimport type { JSX } from \"@solidjs/web\";\nimport { untrack, createSignal, merge, createContext, omit } from \"solid-js\";\n\nimport { InternalColorThumbContext } from \"./color-thumb\";\nimport { LabelContext } from \"./label\";\nimport {\n SliderStateContext,\n SliderTrackContext,\n SliderOutputContext,\n} from \"./slider\";\nimport {\n dom,\n createContextProps,\n createRenderProps,\n createSlot,\n} from \"./utils\";\nimport type { ContextValue, RenderProps, SlotProps, Ref } from \"./utils\";\n\nexport interface ColorSliderRenderProps {\n orientation: Orientation;\n isDisabled: boolean;\n state: ColorSliderState;\n}\n\nexport interface ColorSliderProps\n extends\n Omit<AriaColorSliderProps, \"label\">,\n RenderProps<ColorSliderRenderProps>,\n SlotProps,\n GlobalDOMAttributes<HTMLDivElement> {\n ref?: Ref<HTMLDivElement>;\n}\n\nexport const ColorSliderContext =\n createContext<ContextValue<Partial<ColorSliderProps>, HTMLDivElement>>(null);\n\nexport const ColorSliderStateContext = createContext<ColorSliderState | null>(\n null\n);\n\nexport function ColorSlider(input: ColorSliderProps): JSX.Element {\n const [trackRef, setTrackRef] = createSignal<HTMLDivElement | null>(null, {\n ownedWrite: true,\n });\n\n const [props, , setRef] = createContextProps(\n input,\n untrack(() => input.ref),\n ColorSliderContext\n );\n\n const locale = createLocale();\n\n const state = createColorSliderState(\n mergeProps(props, {\n get locale() {\n return locale.locale;\n },\n })\n );\n\n const [inputRef, setInputRef] = createSignal<HTMLInputElement | null>(null, {\n ownedWrite: true,\n });\n\n const [registerLabel, label] = createSlot(\n () =>\n (props[\"aria-label\"]?.length ?? 0) === 0 &&\n (props[\"aria-labelledby\"]?.length ?? 0) === 0\n );\n\n const aria = createColorSlider(\n mergeProps(props, {\n inputRef,\n get label() {\n return label();\n },\n trackRef,\n }),\n state\n );\n\n const values: ColorSliderRenderProps = {\n get isDisabled() {\n return state.isDisabled;\n },\n get orientation() {\n return state.orientation;\n },\n state,\n };\n\n const render = createRenderProps(\n mergeProps(props, { defaultClass: \"solid2-aria-ColorSlider\", values })\n );\n\n const thumb = {\n inputXRef: inputRef,\n get isDisabled() {\n return props.isDisabled;\n },\n setInputXRef: setInputRef,\n state,\n get thumbProps() {\n return aria.thumbProps;\n },\n get xInputProps() {\n return aria.inputProps;\n },\n };\n\n return (\n <ColorSliderStateContext value={state}>\n <SliderStateContext value={state}>\n <SliderTrackContext\n value={mergeProps(\n merge(() => aria.trackProps),\n {\n ref: (element: HTMLDivElement) => {\n setTrackRef(element);\n },\n trackRef,\n }\n )}\n >\n <SliderOutputContext\n value={\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n merge(() => aria.outputProps)\n // oxlint-enable solid/reactivity\n }\n >\n <LabelContext\n value={mergeProps(\n merge(() => aria.labelProps),\n {\n get children() {\n return state.value.getChannelName(\n props.channel,\n locale.locale\n );\n },\n registerSlot: registerLabel,\n }\n )}\n >\n <InternalColorThumbContext value={thumb}>\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\")\n // oxlint-enable solid/reactivity\n }\n {...render}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n slot={\n typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined\n }\n data-orientation={state.orientation}\n data-disabled={state.isDisabled || undefined}\n >\n {render.children}\n </dom.div>\n </InternalColorThumbContext>\n </LabelContext>\n </SliderOutputContext>\n </SliderTrackContext>\n </SliderStateContext>\n </ColorSliderStateContext>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAgDA,MAAa,qBACX,cAAuE,IAAI;AAE7E,MAAa,0BAA0B,cACrC,IACF;AAEA,SAAgB,YAAY,OAAsC;CAChE,MAAM,CAAC,UAAU,eAAe,aAAoC,MAAM,EACxE,YAAY,KACd,CAAC;CAED,MAAM,CAAC,SAAS,UAAU,mBACxB,OACA,cAAc,MAAM,GAAG,GACvB,kBACF;CAEA,MAAM,SAAS,aAAa;CAE5B,MAAM,QAAQ,uBACZY,aAAW,OAAO,EAChB,IAAI,SAAS;EACX,OAAO,OAAO;CAChB,EACF,CAAC,CACH;CAEA,MAAM,CAAC,UAAU,eAAe,aAAsC,MAAM,EAC1E,YAAY,KACd,CAAC;CAED,MAAM,CAAC,eAAe,SAAS,kBAE1B,MAAM,aAAa,EAAE,UAAU,OAAO,MACtC,MAAM,kBAAkB,EAAE,UAAU,OAAO,CAChD;CAEA,MAAM,OAAO,kBACXA,aAAW,OAAO;EAChB;EACA,IAAI,QAAQ;GACV,OAAO,MAAM;EACf;EACA;CACF,CAAC,GACD,KACF;CAYA,MAAM,SAAS,kBACbA,aAAW,OAAO;EAAE,cAAc;EAA2B,QAAA;GAV7D,IAAI,aAAa;IACf,OAAO,MAAM;GACf;GACA,IAAI,cAAc;IAChB,OAAO,MAAM;GACf;GACA;EAI6D;CAAO,CAAC,CACvE;CAEA,MAAM,QAAQ;EACZ,WAAW;EACX,IAAI,aAAa;GACf,OAAO,MAAM;EACf;EACA,cAAc;EACd;EACA,IAAI,aAAa;GACf,OAAO,KAAK;EACd;EACA,IAAI,cAAc;GAChB,OAAO,KAAK;EACd;CACF;CAEA,OACEZ,gBAAAA,yBAAAA;EAAyBC,OAAO;EAAhC,IAAA,WAAA;GACEC,OAAAA,gBAAAA,oBAAAA;IAAoBD,OAAO;IAA3B,IAAA,WAAA;KACEE,OAAAA,gBAAAA,oBAAAA;MACE,IAAA,QAAA;OAAO,OAAAS,aACL,YAAY,KAAK,UAAU,GAC3B;QACE,MAAM,YAA4B;SAChC,YAAY,OAAO;QACrB;QACA;OACF,CACF;MAAC;MATH,IAAA,WAAA;OAWER,OAAAA,gBAAAA,qBAAAA;QACE,IAAA,QAAA;SAEE,OAAA,YAAY,KAAK,WAAW;QAE9B;QALF,IAAA,WAAA;SAOEC,OAAAA,gBAAAA,cAAAA;UACE,IAAA,QAAA;WAAO,OAAAO,aACL,YAAY,KAAK,UAAU,GAC3B;YACE,IAAI,WAAW;aACb,OAAO,MAAM,MAAM,eACjB,MAAM,SACN,OAAO,MACT;YACF;YACA,cAAc;WAChB,CACF;UAAC;UAZH,IAAA,WAAA;WAcEN,OAAAA,gBAAAA,2BAAAA;YAA2BC,OAAO;YAAlC,IAAA,WAAA;aACEC,OAAAA,gBAAAA,IAACC,KAADD,iBACE;cAEK,OAAA,KAAK,eAAe,OAAO,EAAE,QAAQ,KAAK,CAAC,GAAG,IAAI;aAEvD,GACI,QANN;cAOEE,MAAM,YAA4B;eAChC,OAAO,OAAO;cAChB;cACA,IAAA,OAAA;eACEC,OAAAA,WAAAA;gBAAO,OAAA,CAAA,EAAA,OAAA,MAAM,SAAS,YAAY,MAAM,KAAK,SAAS;eAE1C,CAAA,CAAC,CAAD,IADR,MAAM,OACN,KAAA;cACN;cACA,IAAA,qBAAA;eAAkB,OAAA,MAAM;cAAW;cACnC,IAAA,kBAAA;eAAe,OAAA,MAAM,cAAc,KAAA;cAAS;cAhB9C,IAAA,WAAA;eAkBG,OAAA,OAAO;cACD;;YACgB;;UACf;;QACK;;MACH;;IACF;;EACG;;AAE7B"}
@@ -0,0 +1,29 @@
1
+ /*
2
+ * Derived from Adobe React Spectrum: packages/react-aria-components/src/ColorSwatchPicker.tsx.
3
+ * Modified for Solid Aria: composed Solid Aria and Stately primitives with Solid 2 contexts, reactive getters, and DOM refs; uses Solid class props.
4
+ * Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
5
+ */
6
+ import { ContextValue, Ref, RenderProps, StyleRenderProps } from "./utils.js";
7
+ import { ListBoxItemRenderProps, ListBoxRenderProps } from "./list-box.js";
8
+ import { JSX } from "@solidjs/web";
9
+ import { AriaLabelingProps, HoverEvents, PressEvents, ValueBase } from "@solid2-aria/types-shared";
10
+ import { GlobalDOMAttributes } from "@solid2-aria/types-shared-web";
11
+ import { Color } from "@solid2-aria/stately/color/types";
12
+ export type ColorSwatchPickerRenderProps = Omit<ListBoxRenderProps, "isDropTarget">;
13
+ export interface ColorSwatchPickerProps extends ValueBase<string | Color, Color>, AriaLabelingProps, StyleRenderProps<ColorSwatchPickerRenderProps>, GlobalDOMAttributes<HTMLDivElement> {
14
+ children?: JSX.Element;
15
+ layout?: "grid" | "stack";
16
+ ref?: Ref<HTMLDivElement>;
17
+ }
18
+ export interface ColorSwatchPickerItemRenderProps extends Omit<ListBoxItemRenderProps, "selectionMode" | "selectionBehavior"> {
19
+ color: Color;
20
+ }
21
+ export interface ColorSwatchPickerItemProps extends RenderProps<ColorSwatchPickerItemRenderProps>, HoverEvents, PressEvents, Omit<GlobalDOMAttributes<HTMLDivElement>, "onClick"> {
22
+ color: string | Color;
23
+ isDisabled?: boolean;
24
+ ref?: Ref<HTMLDivElement>;
25
+ }
26
+ export declare const ColorSwatchPickerContext: import("solid-js").Context<ContextValue<ColorSwatchPickerProps, HTMLDivElement>>;
27
+ export declare function ColorSwatchPicker(input: ColorSwatchPickerProps): JSX.Element;
28
+ export declare function ColorSwatchPickerItem(props: ColorSwatchPickerItemProps): JSX.Element;
29
+ //# sourceMappingURL=color-swatch-picker.d.ts.map
@@ -0,0 +1,131 @@
1
+ /*
2
+ * Derived from Adobe React Spectrum: packages/react-aria-components/src/ColorSwatchPicker.tsx.
3
+ * Modified for Solid Aria: composed Solid Aria and Stately primitives with Solid 2 contexts, reactive getters, and DOM refs; uses Solid class props.
4
+ * Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
5
+ */
6
+ import { assignRef, createContextProps } from "./utils.js";
7
+ import { ColorSwatchContext } from "./color-swatch.js";
8
+ import intl_default from "./intl/index.js";
9
+ import { ListBox, ListBoxItem } from "./list-box.js";
10
+ import { createComponent, memo, mergeProps } from "@solidjs/web";
11
+ import { mergeProps as mergeProps$1 } from "@solid2-aria/core/utils/merge-props";
12
+ import { createContext, createEffect, createMemo, omit, untrack, useContext } from "solid-js";
13
+ import { requireValue } from "@solid2-aria/core/utils/require-value";
14
+ import { filterDOMProps } from "@solid2-aria/core/utils/filter-dom-props";
15
+ import { createLocale } from "@solid2-aria/core/i18n/i18n-provider";
16
+ import { createColorPickerState } from "@solid2-aria/stately/color/create-color-picker-state";
17
+ import { createLocalizedStringFormatter } from "@solid2-aria/core/i18n/create-localized-string-formatter";
18
+ import { parseColor } from "@solid2-aria/stately/color/color";
19
+ // src/color-swatch-picker.tsx
20
+ const ColorSwatchPickerContext = createContext(null);
21
+ const ColorMapContext = createContext(null);
22
+ function ColorSwatchPicker(input) {
23
+ const [props, , setRef] = createContextProps(input, untrack(() => input.ref), ColorSwatchPickerContext);
24
+ const state = createColorPickerState(props);
25
+ const map = /* @__PURE__ */ new Map();
26
+ const formatter = createLocalizedStringFormatter(intl_default, "@solid2-aria/components");
27
+ return createComponent(ListBox, mergeProps(() => {
28
+ return filterDOMProps(props, { labelable: true });
29
+ }, {
30
+ ref: (element) => {
31
+ setRef(element);
32
+ },
33
+ get "class"() {
34
+ return props.class ?? "solid2-aria-ColorSwatchPicker";
35
+ },
36
+ get style() {
37
+ return props.style;
38
+ },
39
+ get render() {
40
+ return props.render;
41
+ },
42
+ get "aria-label"() {
43
+ return props["aria-label"] ?? ((props["aria-labelledby"]?.length ?? 0) > 0 ? void 0 : formatter.format("colorSwatchPicker"));
44
+ },
45
+ get layout() {
46
+ return props.layout ?? "grid";
47
+ },
48
+ selectionMode: "single",
49
+ get selectedKeys() {
50
+ return [state.color.toString("hexa")];
51
+ },
52
+ onSelectionChange: (keys) => {
53
+ if (keys !== "all") {
54
+ const first = keys.values().next().value;
55
+ const color = typeof first === "string" ? map.get(first) : void 0;
56
+ if (color) state.setColor(color);
57
+ }
58
+ },
59
+ disallowEmptySelection: true,
60
+ get children() {
61
+ return createComponent(ColorMapContext, {
62
+ value: map,
63
+ get children() {
64
+ return props.children;
65
+ }
66
+ });
67
+ }
68
+ }));
69
+ }
70
+ function ColorSwatchPickerItem(props) {
71
+ const color = createMemo(() => typeof props.color === "string" ? parseColor(props.color || "#0000") : props.color);
72
+ const locale = createLocale();
73
+ const map = requireValue(useContext(ColorMapContext), "Expected required component value");
74
+ createEffect(color, (value) => {
75
+ const key = value.toString("hexa");
76
+ map.set(key, value);
77
+ return () => {
78
+ if (map.get(key) === value) map.delete(key);
79
+ };
80
+ });
81
+ const values = (original) => mergeProps$1(original, { get color() {
82
+ return color();
83
+ } });
84
+ return createComponent(ListBoxItem, mergeProps(() => {
85
+ return omit(props, "class", "style", "children", "render", "ref", "color");
86
+ }, {
87
+ ref: (el) => {
88
+ assignRef(untrack(() => props.ref), el);
89
+ },
90
+ get id() {
91
+ return color().toString("hexa");
92
+ },
93
+ get textValue() {
94
+ return color().getColorName(locale.locale);
95
+ },
96
+ get render() {
97
+ return props.render ? (domProps, original) => requireValue(props.render, "Expected required component value")(domProps, values(original)) : void 0;
98
+ },
99
+ class: (original) => {
100
+ const value = props.class;
101
+ return typeof value === "function" ? value(mergeProps$1(values(original), { get defaultClass() {
102
+ return original.defaultClass;
103
+ } })) : value ?? "solid2-aria-ColorSwatchPickerItem";
104
+ },
105
+ get style() {
106
+ return memo(() => {
107
+ return typeof props.style === "function";
108
+ })() ? (original) => {
109
+ const value = props.style;
110
+ return typeof value === "function" ? value(mergeProps$1(values(original), { get defaultStyle() {
111
+ return original.defaultStyle;
112
+ } })) : void 0;
113
+ } : props.style;
114
+ },
115
+ children: (original) => createComponent(ColorSwatchContext, {
116
+ value: { get color() {
117
+ return color();
118
+ } },
119
+ get children() {
120
+ return memo(() => {
121
+ return typeof props.children === "function";
122
+ })() ? props.children(mergeProps$1(values(original), { get defaultChildren() {
123
+ return original.defaultChildren;
124
+ } })) : props.children;
125
+ }
126
+ })
127
+ }));
128
+ }
129
+ export { ColorSwatchPicker, ColorSwatchPickerContext, ColorSwatchPickerItem };
130
+
131
+ //# sourceMappingURL=color-swatch-picker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"color-swatch-picker.js","names":["<ListBox\n {...filterDOMProps(props, { labelable: true })}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n class={props.class ?? \"solid2-aria-ColorSwatchPicker\"}\n style={props.style}\n render={props.render}\n aria-label={\n props[\"aria-label\"] ??\n ((props[\"aria-labelledby\"]?.length ?? 0) > 0\n ? undefined\n : formatter.format(\"colorSwatchPicker\"))\n }\n layout={props.layout ?? \"grid\"}\n selectionMode=\"single\"\n selectedKeys={[state.color.toString(\"hexa\")]}\n onSelectionChange={(keys) => {\n if (keys !== \"all\") {\n const first = keys.values().next().value;\n const color = typeof first === \"string\" ? map.get(first) : undefined;\n\n if (color) {\n state.setColor(color);\n }\n }\n }}\n disallowEmptySelection\n >\n <ColorMapContext value={map}>{props.children}</ColorMapContext>\n </ListBox>","ref={(element: HTMLDivElement) => {\n setRef(element);\n }}","selectionMode=\"single\"","onSelectionChange={(keys) => {\n if (keys !== \"all\") {\n const first = keys.values().next().value;\n const color = typeof first === \"string\" ? map.get(first) : undefined;\n\n if (color) {\n state.setColor(color);\n }\n }\n }}","<ColorMapContext value={map}>{props.children}</ColorMapContext>","value={map}","<ListBoxItem\n {\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n ...omit(props, \"class\", \"style\", \"children\", \"render\", \"ref\", \"color\")\n // oxlint-enable solid/reactivity\n }\n ref={(el: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n el\n );\n }}\n id={color().toString(\"hexa\")}\n textValue={color().getColorName(locale.locale)}\n render={\n props.render\n ? (domProps, original) =>\n requireValue(props.render, \"Expected required component value\")(\n // SAFETY: ColorSwatchPickerItem has no link props, so ListBoxItem always renders a div.\n // oxlint-disable-next-line typescript/no-unsafe-type-assertion -- Narrow the link-capable render API at this non-link component boundary.\n domProps as JSX.IntrinsicElements[\"div\"],\n values(original)\n )\n : undefined\n }\n class={(original) => {\n const value = props.class;\n\n return typeof value === \"function\"\n ? value(\n mergeProps(values(original), {\n get defaultClass() {\n return original.defaultClass;\n },\n })\n )\n : (value ?? \"solid2-aria-ColorSwatchPickerItem\");\n }}\n style={\n typeof props.style === \"function\"\n ? (original) => {\n const value = props.style;\n\n return typeof value === \"function\"\n ? value(\n mergeProps(values(original), {\n get defaultStyle() {\n return original.defaultStyle;\n },\n })\n )\n : undefined;\n }\n : props.style\n }\n >\n {(original) => (\n <ColorSwatchContext\n value={{\n get color() {\n return color();\n },\n }}\n >\n {typeof props.children === \"function\"\n ? props.children(\n mergeProps(values(original), {\n get defaultChildren() {\n return original.defaultChildren;\n },\n })\n )\n : props.children}\n </ColorSwatchContext>\n )}\n </ListBoxItem>","ref={(el: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n el\n );\n }}","class={(original) => {\n const value = props.class;\n\n return typeof value === \"function\"\n ? value(\n mergeProps(values(original), {\n get defaultClass() {\n return original.defaultClass;\n },\n })\n )\n : (value ?? \"solid2-aria-ColorSwatchPickerItem\");\n }}","typeof props.style === \"function\"\n ? (original) => {\n const value = props.style;\n\n return typeof value === \"function\"\n ? value(\n mergeProps(values(original), {\n get defaultStyle() {\n return original.defaultStyle;\n },\n })\n )\n : undefined;\n }\n : props.style","<ColorSwatchContext\n value={{\n get color() {\n return color();\n },\n }}\n >\n {typeof props.children === \"function\"\n ? props.children(\n mergeProps(values(original), {\n get defaultChildren() {\n return original.defaultChildren;\n },\n })\n )\n : props.children}\n </ColorSwatchContext>","value={{\n get color() {\n return color();\n },\n }}","{typeof props.children === \"function\"\n ? props.children(\n mergeProps(values(original), {\n get defaultChildren() {\n return original.defaultChildren;\n },\n })\n )\n : props.children}","intlMessages","_$createComponent","_$mergeProps","mergeProps","_$memo"],"sources":["../../src/color-swatch-picker.tsx"],"sourcesContent":["/*\n * Derived from Adobe React Spectrum: packages/react-aria-components/src/ColorSwatchPicker.tsx.\n * Modified for Solid Aria: composed Solid Aria and Stately primitives with Solid 2 contexts, reactive getters, and DOM refs; 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 { createLocalizedStringFormatter } from \"@solid2-aria/core/i18n/create-localized-string-formatter\";\nimport { createLocale } from \"@solid2-aria/core/i18n/i18n-provider\";\nimport { filterDOMProps } from \"@solid2-aria/core/utils/filter-dom-props\";\nimport { mergeProps } from \"@solid2-aria/core/utils/merge-props\";\nimport { requireValue } from \"@solid2-aria/core/utils/require-value\";\nimport { parseColor } from \"@solid2-aria/stately/color/color\";\nimport { createColorPickerState } from \"@solid2-aria/stately/color/create-color-picker-state\";\nimport type { Color } from \"@solid2-aria/stately/color/types\";\nimport type {\n AriaLabelingProps,\n HoverEvents,\n PressEvents,\n ValueBase,\n} from \"@solid2-aria/types-shared\";\nimport type { GlobalDOMAttributes } from \"@solid2-aria/types-shared-web\";\nimport type { JSX } from \"@solidjs/web\";\nimport {\n untrack,\n createContext,\n createMemo,\n createEffect,\n useContext,\n omit,\n} from \"solid-js\";\n\nimport intlMessages from \"../intl/index\";\nimport { ColorSwatchContext } from \"./color-swatch\";\nimport { ListBox, ListBoxItem } from \"./list-box\";\nimport type { ListBoxRenderProps, ListBoxItemRenderProps } from \"./list-box\";\nimport { createContextProps, assignRef } from \"./utils\";\nimport type { ContextValue, RenderProps, StyleRenderProps, Ref } from \"./utils\";\n\nexport type ColorSwatchPickerRenderProps = Omit<\n ListBoxRenderProps,\n \"isDropTarget\"\n>;\n\nexport interface ColorSwatchPickerProps\n extends\n ValueBase<string | Color, Color>,\n AriaLabelingProps,\n StyleRenderProps<ColorSwatchPickerRenderProps>,\n GlobalDOMAttributes<HTMLDivElement> {\n children?: JSX.Element;\n layout?: \"grid\" | \"stack\";\n ref?: Ref<HTMLDivElement>;\n}\n\nexport interface ColorSwatchPickerItemRenderProps extends Omit<\n ListBoxItemRenderProps,\n \"selectionMode\" | \"selectionBehavior\"\n> {\n color: Color;\n}\n\nexport interface ColorSwatchPickerItemProps\n extends\n RenderProps<ColorSwatchPickerItemRenderProps>,\n HoverEvents,\n PressEvents,\n Omit<GlobalDOMAttributes<HTMLDivElement>, \"onClick\"> {\n color: string | Color;\n isDisabled?: boolean;\n ref?: Ref<HTMLDivElement>;\n}\n\nexport const ColorSwatchPickerContext =\n createContext<ContextValue<ColorSwatchPickerProps, HTMLDivElement>>(null);\n\nconst ColorMapContext = createContext<Map<string, Color> | null>(null);\n\nexport function ColorSwatchPicker(input: ColorSwatchPickerProps): JSX.Element {\n const [props, , setRef] = createContextProps(\n input,\n untrack(() => input.ref),\n ColorSwatchPickerContext\n );\n\n const state = createColorPickerState(props);\n const map = new Map<string, Color>();\n\n const formatter = createLocalizedStringFormatter(\n intlMessages,\n \"@solid2-aria/components\"\n );\n\n return (\n <ListBox\n {...filterDOMProps(props, { labelable: true })}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n class={props.class ?? \"solid2-aria-ColorSwatchPicker\"}\n style={props.style}\n render={props.render}\n aria-label={\n props[\"aria-label\"] ??\n ((props[\"aria-labelledby\"]?.length ?? 0) > 0\n ? undefined\n : formatter.format(\"colorSwatchPicker\"))\n }\n layout={props.layout ?? \"grid\"}\n selectionMode=\"single\"\n selectedKeys={[state.color.toString(\"hexa\")]}\n onSelectionChange={(keys) => {\n if (keys !== \"all\") {\n const first = keys.values().next().value;\n const color = typeof first === \"string\" ? map.get(first) : undefined;\n\n if (color) {\n state.setColor(color);\n }\n }\n }}\n disallowEmptySelection\n >\n <ColorMapContext value={map}>{props.children}</ColorMapContext>\n </ListBox>\n );\n}\n\nexport function ColorSwatchPickerItem(\n props: ColorSwatchPickerItemProps\n): JSX.Element {\n const color = createMemo(() =>\n typeof props.color === \"string\"\n ? parseColor(props.color || \"#0000\")\n : props.color\n );\n\n const locale = createLocale();\n\n const map = requireValue(\n useContext(ColorMapContext),\n \"Expected required component value\"\n );\n\n createEffect(color, (value) => {\n const key = value.toString(\"hexa\");\n map.set(key, value);\n\n return () => {\n if (map.get(key) === value) {\n map.delete(key);\n }\n };\n });\n\n const values = (\n original: ListBoxItemRenderProps\n ): ColorSwatchPickerItemRenderProps =>\n mergeProps(original, {\n get color() {\n return color();\n },\n });\n\n return (\n <ListBoxItem\n {\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n ...omit(props, \"class\", \"style\", \"children\", \"render\", \"ref\", \"color\")\n // oxlint-enable solid/reactivity\n }\n ref={(el: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n el\n );\n }}\n id={color().toString(\"hexa\")}\n textValue={color().getColorName(locale.locale)}\n render={\n props.render\n ? (domProps, original) =>\n requireValue(props.render, \"Expected required component value\")(\n // SAFETY: ColorSwatchPickerItem has no link props, so ListBoxItem always renders a div.\n // oxlint-disable-next-line typescript/no-unsafe-type-assertion -- Narrow the link-capable render API at this non-link component boundary.\n domProps as JSX.IntrinsicElements[\"div\"],\n values(original)\n )\n : undefined\n }\n class={(original) => {\n const value = props.class;\n\n return typeof value === \"function\"\n ? value(\n mergeProps(values(original), {\n get defaultClass() {\n return original.defaultClass;\n },\n })\n )\n : (value ?? \"solid2-aria-ColorSwatchPickerItem\");\n }}\n style={\n typeof props.style === \"function\"\n ? (original) => {\n const value = props.style;\n\n return typeof value === \"function\"\n ? value(\n mergeProps(values(original), {\n get defaultStyle() {\n return original.defaultStyle;\n },\n })\n )\n : undefined;\n }\n : props.style\n }\n >\n {(original) => (\n <ColorSwatchContext\n value={{\n get color() {\n return color();\n },\n }}\n >\n {typeof props.children === \"function\"\n ? props.children(\n mergeProps(values(original), {\n get defaultChildren() {\n return original.defaultChildren;\n },\n })\n )\n : props.children}\n </ColorSwatchContext>\n )}\n </ListBoxItem>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAwEA,MAAa,2BACX,cAAoE,IAAI;AAE1E,MAAM,kBAAkB,cAAyC,IAAI;AAErE,SAAgB,kBAAkB,OAA4C;CAC5E,MAAM,CAAC,SAAS,UAAU,mBACxB,OACA,cAAc,MAAM,GAAG,GACvB,wBACF;CAEA,MAAM,QAAQ,uBAAuB,KAAK;CAC1C,MAAM,sBAAM,IAAI,IAAmB;CAEnC,MAAM,YAAY,+BAChBa,cACA,yBACF;CAEA,OACEb,gBAAAA,SAAAA,iBACE;EAAI,OAAA,eAAe,OAAO,EAAE,WAAW,KAAK,CAAC;CAAC,GADhD;EAEEC,MAAM,YAA4B;GAChC,OAAO,OAAO;EAChB;EACA,IAAA,UAAA;GAAO,OAAA,MAAM,SAAS;EAA+B;EACrD,IAAA,QAAA;GAAO,OAAA,MAAM;EAAK;EAClB,IAAA,SAAA;GAAQ,OAAA,MAAM;EAAM;EACpB,IAAA,eAAA;GACE,OAAA,MAAM,mBACJ,MAAM,kBAAkB,EAAE,UAAU,KAAK,IACvC,KAAA,IACA,UAAU,OAAO,mBAAmB;EAC1C;EACA,IAAA,SAAA;GAAQ,OAAA,MAAM,UAAU;EAAM;EAC9BC,eAAc;EACd,IAAA,eAAA;GAAc,OAAA,CAAC,MAAM,MAAM,SAAS,MAAM,CAAC;EAAC;EAC5CC,oBAAoB,SAAS;GAC3B,IAAI,SAAS,OAAO;IAClB,MAAM,QAAQ,KAAK,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC;IACnC,MAAM,QAAQ,OAAO,UAAU,WAAW,IAAI,IAAI,KAAK,IAAI,KAAA;IAE3D,IAAI,OACF,MAAM,SAAS,KAAK;GAExB;EACF;EACA,wBAAA;EA3BF,IAAA,WAAA;GA6BEC,OAAAA,gBAAAA,iBAAAA;IAAiBC,OAAO;IAAxB,IAAA,WAAA;KAA8B,OAAA,MAAM;IAA0B;;EACvD;;AAEb;AAEA,SAAgB,sBACd,OACa;CACb,MAAM,QAAQ,iBACZ,OAAO,MAAM,UAAU,WACnB,WAAW,MAAM,SAAS,OAAO,IACjC,MAAM,KACZ;CAEA,MAAM,SAAS,aAAa;CAE5B,MAAM,MAAM,aACV,WAAW,eAAe,GAC1B,mCACF;CAEA,aAAa,QAAQ,UAAU;EAC7B,MAAM,MAAM,MAAM,SAAS,MAAM;EACjC,IAAI,IAAI,KAAK,KAAK;EAElB,aAAa;GACX,IAAI,IAAI,IAAI,GAAG,MAAM,OACnB,IAAI,OAAO,GAAG;EAElB;CACF,CAAC;CAED,MAAM,UACJ,aAEAW,aAAW,UAAU,EACnB,IAAI,QAAQ;EACV,OAAO,MAAM;CACf,EACF,CAAC;CAEH,OACEV,gBAAAA,aAAAA,iBACE;EAEK,OAAA,KAAK,OAAO,SAAS,SAAS,YAAY,UAAU,OAAO,OAAO;CAEvE,GALF;EAMEC,MAAM,OAAuB;GAC3B,UACE,cAAc,MAAM,GAAG,GACvB,EACF;EACF;EACA,IAAA,KAAA;GAAI,OAAA,MAAM,CAAC,CAAC,SAAS,MAAM;EAAC;EAC5B,IAAA,YAAA;GAAW,OAAA,MAAM,CAAC,CAAC,aAAa,OAAO,MAAM;EAAC;EAC9C,IAAA,SAAA;GACE,OAAA,MAAM,UACD,UAAU,aACT,aAAa,MAAM,QAAQ,mCAAmC,CAAC,CAG7D,UACA,OAAO,QAAQ,CACjB,IACF,KAAA;EACN;EACAC,QAAQ,aAAa;GACnB,MAAM,QAAQ,MAAM;GAEpB,OAAO,OAAO,UAAU,aACpB,MACEQ,aAAW,OAAO,QAAQ,GAAG,EAC3B,IAAI,eAAe;IACjB,OAAO,SAAS;GAClB,EACF,CAAC,CACH,IACC,SAAS;EAChB;EACA,IAAA,QAAA;GACEP,OAAAA,WAAAA;IAAO,OAAA,OAAA,MAAM,UAAU;GAcT,CAAA,CAAC,CAAD,KAbT,aAAa;IACZ,MAAM,QAAQ,MAAM;IAEpB,OAAO,OAAO,UAAU,aACpB,MACEO,aAAW,OAAO,QAAQ,GAAG,EAC3B,IAAI,eAAe;KACjB,OAAO,SAAS;IAClB,EACF,CAAC,CACH,IACA,KAAA;GACN,IACA,MAAM;EACZ;EAtDFV,WAwDI,aACAI,gBAAAA,oBAAAA;GACEC,OAAO,EACL,IAAI,QAAQ;IACV,OAAO,MAAM;GACf,EACF;GALF,IAAA,WAAA;IAOEC,OAAAA,WAAAA;KAAC,OAAA,OAAO,MAAM,aAAa;IAQT,CAAA,CAAC,CAAD,IAPd,MAAM,SACJI,aAAW,OAAO,QAAQ,GAAG,EAC3B,IAAI,kBAAkB;KACpB,OAAO,SAAS;IAClB,EACF,CAAC,CACH,IACA,MAAM;GACQ;;CAEX,CAAA,CAAA;AAEjB"}
@@ -0,0 +1,19 @@
1
+ /*
2
+ * Derived from Adobe React Spectrum: packages/react-aria-components/src/ColorSwatch.tsx.
3
+ * Modified for Solid Aria: composed Solid Aria and Stately primitives with Solid 2 contexts, reactive getters, and DOM refs; uses Solid class props.
4
+ * Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
5
+ */
6
+ import { ContextValue, Ref, SlotProps, StyleRenderProps } from "./utils.js";
7
+ import { JSX } from "@solidjs/web";
8
+ import { AriaColorSwatchProps } from "@solid2-aria/core/color/create-color-swatch";
9
+ import { GlobalDOMAttributes } from "@solid2-aria/types-shared-web";
10
+ import { Color } from "@solid2-aria/stately/color/types";
11
+ export interface ColorSwatchRenderProps {
12
+ color: Color;
13
+ }
14
+ export interface ColorSwatchProps extends AriaColorSwatchProps, StyleRenderProps<ColorSwatchRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
15
+ ref?: Ref<HTMLDivElement>;
16
+ }
17
+ export declare const ColorSwatchContext: import("solid-js").Context<ContextValue<ColorSwatchProps, HTMLDivElement>>;
18
+ export declare function ColorSwatch(input: ColorSwatchProps): JSX.Element;
19
+ //# sourceMappingURL=color-swatch.d.ts.map
@@ -0,0 +1,42 @@
1
+ /*
2
+ * Derived from Adobe React Spectrum: packages/react-aria-components/src/ColorSwatch.tsx.
3
+ * Modified for Solid Aria: composed Solid Aria and Stately primitives with Solid 2 contexts, reactive getters, and DOM refs; uses Solid class props.
4
+ * Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
5
+ */
6
+ import { createContextProps, createRenderProps, dom } from "./utils.js";
7
+ import { createComponent, memo, mergeProps } from "@solidjs/web";
8
+ import { mergeProps as mergeProps$1 } from "@solid2-aria/core/utils/merge-props";
9
+ import { createContext, merge, untrack } from "solid-js";
10
+ import { filterDOMProps } from "@solid2-aria/core/utils/filter-dom-props";
11
+ import { createColorSwatch } from "@solid2-aria/core/color/create-color-swatch";
12
+ // src/color-swatch.tsx
13
+ const ColorSwatchContext = createContext(null);
14
+ function ColorSwatch(input) {
15
+ const [props, , setRef] = createContextProps(input, untrack(() => input.ref), ColorSwatchContext);
16
+ const aria = createColorSwatch(props);
17
+ const render = createRenderProps(mergeProps$1(props, {
18
+ defaultClass: "solid2-aria-ColorSwatch",
19
+ get defaultStyle() {
20
+ const { style } = aria.colorSwatchProps;
21
+ return style !== null && typeof style === "object" ? style : void 0;
22
+ },
23
+ values: { get color() {
24
+ return aria.color;
25
+ } }
26
+ }));
27
+ return createComponent(dom.div, mergeProps(() => {
28
+ return mergeProps$1(filterDOMProps(props, { global: true }), merge(() => aria.colorSwatchProps), render);
29
+ }, {
30
+ get slot() {
31
+ return memo(() => {
32
+ return !!(typeof props.slot === "string" && props.slot.length > 0);
33
+ })() ? props.slot : void 0;
34
+ },
35
+ ref: (element) => {
36
+ setRef(element);
37
+ }
38
+ }));
39
+ }
40
+ export { ColorSwatch, ColorSwatchContext };
41
+
42
+ //# sourceMappingURL=color-swatch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"color-swatch.js","names":["<dom.div\n {...mergeProps(\n filterDOMProps(props, { global: true }),\n merge(() => aria.colorSwatchProps),\n render\n )}\n slot={\n typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined\n }\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n />","dom.div","typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined","ref={(element: HTMLDivElement) => {\n setRef(element);\n }}","mergeProps","_$createComponent","_$mergeProps","_$memo"],"sources":["../../src/color-swatch.tsx"],"sourcesContent":["/*\n * Derived from Adobe React Spectrum: packages/react-aria-components/src/ColorSwatch.tsx.\n * Modified for Solid Aria: composed Solid Aria and Stately primitives with Solid 2 contexts, reactive getters, and DOM refs; 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 { createColorSwatch } from \"@solid2-aria/core/color/create-color-swatch\";\nimport type { AriaColorSwatchProps } from \"@solid2-aria/core/color/create-color-swatch\";\nimport { filterDOMProps } from \"@solid2-aria/core/utils/filter-dom-props\";\nimport { mergeProps } from \"@solid2-aria/core/utils/merge-props\";\nimport type { Color } from \"@solid2-aria/stately/color/types\";\nimport type { GlobalDOMAttributes } from \"@solid2-aria/types-shared-web\";\nimport type { JSX } from \"@solidjs/web\";\nimport { untrack, merge, createContext } from \"solid-js\";\n\nimport { dom, createContextProps, createRenderProps } from \"./utils\";\nimport type { ContextValue, StyleRenderProps, SlotProps, Ref } from \"./utils\";\n\nexport interface ColorSwatchRenderProps {\n color: Color;\n}\n\nexport interface ColorSwatchProps\n extends\n AriaColorSwatchProps,\n StyleRenderProps<ColorSwatchRenderProps>,\n SlotProps,\n GlobalDOMAttributes<HTMLDivElement> {\n ref?: Ref<HTMLDivElement>;\n}\n\nexport const ColorSwatchContext =\n createContext<ContextValue<ColorSwatchProps, HTMLDivElement>>(null);\n\nexport function ColorSwatch(input: ColorSwatchProps): JSX.Element {\n const [props, , setRef] = createContextProps(\n input,\n untrack(() => input.ref),\n ColorSwatchContext\n );\n\n const aria = createColorSwatch(props);\n\n const render = createRenderProps(\n mergeProps(props, {\n defaultClass: \"solid2-aria-ColorSwatch\",\n get defaultStyle() {\n const { style } = aria.colorSwatchProps;\n\n return style !== null && typeof style === \"object\" ? style : undefined;\n },\n values: {\n get color() {\n return aria.color;\n },\n },\n })\n );\n\n return (\n <dom.div\n {...mergeProps(\n filterDOMProps(props, { global: true }),\n merge(() => aria.colorSwatchProps),\n render\n )}\n slot={\n typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined\n }\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n />\n );\n}\n"],"mappings":";;;;;;;;;;;;AA+BA,MAAa,qBACX,cAA8D,IAAI;AAEpE,SAAgB,YAAY,OAAsC;CAChE,MAAM,CAAC,SAAS,UAAU,mBACxB,OACA,cAAc,MAAM,GAAG,GACvB,kBACF;CAEA,MAAM,OAAO,kBAAkB,KAAK;CAEpC,MAAM,SAAS,kBACbI,aAAW,OAAO;EAChB,cAAc;EACd,IAAI,eAAe;GACjB,MAAM,EAAE,UAAU,KAAK;GAEvB,OAAO,UAAU,QAAQ,OAAO,UAAU,WAAW,QAAQ,KAAA;EAC/D;EACA,QAAQ,EACN,IAAI,QAAQ;GACV,OAAO,KAAK;EACd,EACF;CACF,CAAC,CACH;CAEA,OACEJ,gBAAAA,IAACC,KAADD,iBACE;EAAI,OAAAI,aACF,eAAe,OAAO,EAAE,QAAQ,KAAK,CAAC,GACtC,YAAY,KAAK,gBAAgB,GACjC,MACF;CAAC,GALH;EAME,IAAA,OAAA;GACEF,OAAAA,WAAAA;IAAO,OAAA,CAAA,EAAA,OAAA,MAAM,SAAS,YAAY,MAAM,KAAK,SAAS;GAE1C,CAAA,CAAC,CAAD,IADR,MAAM,OACN,KAAA;EACN;EACAC,MAAM,YAA4B;GAChC,OAAO,OAAO;EAChB;CACD,CAAA,CAAA;AAEL"}
@@ -0,0 +1,42 @@
1
+ /*
2
+ * Derived from Adobe React Spectrum: packages/react-aria-components/src/ColorThumb.tsx.
3
+ * Modified for Solid Aria: composed Solid Aria and Stately primitives with Solid 2 contexts, reactive getters, and DOM refs; uses Solid class props.
4
+ * Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
5
+ */
6
+ import { Ref, RenderProps } from "./utils.js";
7
+ import { JSX } from "@solidjs/web";
8
+ import { Accessor } from "solid-js";
9
+ import { HoverEvents } from "@solid2-aria/types-shared";
10
+ import { InputHTMLAttributes } from "@solid2-aria/core/types";
11
+ import { DOMAttributes, GlobalDOMAttributes } from "@solid2-aria/types-shared-web";
12
+ import { Color } from "@solid2-aria/stately/color/types";
13
+ interface ColorState {
14
+ getDisplayColor: () => Color;
15
+ isDragging: boolean;
16
+ }
17
+ interface InternalColorThumbContextValue {
18
+ state: ColorState;
19
+ thumbProps: DOMAttributes;
20
+ inputXRef: Accessor<HTMLInputElement | null>;
21
+ setInputXRef: (element: HTMLInputElement) => void;
22
+ inputYRef?: Accessor<HTMLInputElement | null>;
23
+ setInputYRef?: (element: HTMLInputElement) => void;
24
+ xInputProps: InputHTMLAttributes;
25
+ yInputProps?: InputHTMLAttributes;
26
+ isDisabled?: boolean;
27
+ }
28
+ export declare const InternalColorThumbContext: import("solid-js").Context<InternalColorThumbContextValue | null>;
29
+ export interface ColorThumbRenderProps {
30
+ color: Color;
31
+ isDragging: boolean;
32
+ isHovered: boolean;
33
+ isFocused: boolean;
34
+ isFocusVisible: boolean;
35
+ isDisabled: boolean;
36
+ }
37
+ export interface ColorThumbProps extends HoverEvents, RenderProps<ColorThumbRenderProps>, GlobalDOMAttributes<HTMLDivElement> {
38
+ ref?: Ref<HTMLDivElement>;
39
+ }
40
+ export declare function ColorThumb(props: ColorThumbProps): JSX.Element;
41
+ export {};
42
+ //# sourceMappingURL=color-thumb.d.ts.map
@@ -0,0 +1,114 @@
1
+ /*
2
+ * Derived from Adobe React Spectrum: packages/react-aria-components/src/ColorThumb.tsx.
3
+ * Modified for Solid Aria: composed Solid Aria and Stately primitives with Solid 2 contexts, reactive getters, and DOM refs; uses Solid class props.
4
+ * Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
5
+ */
6
+ import { assignRef, createRenderProps, dom } from "./utils.js";
7
+ import { createComponent, getNextElement, memo, mergeProps, ref, runHydrationEvents, spread, template } from "@solidjs/web";
8
+ import { mergeProps as mergeProps$1 } from "@solid2-aria/core/utils/merge-props";
9
+ import { createContext, merge, omit, untrack, useContext } from "solid-js";
10
+ import { requireValue } from "@solid2-aria/core/utils/require-value";
11
+ import { filterDOMProps } from "@solid2-aria/core/utils/filter-dom-props";
12
+ import { createFocusRing } from "@solid2-aria/core/focus/create-focus-ring";
13
+ import { createHover } from "@solid2-aria/core/interactions/create-hover";
14
+ // src/color-thumb.tsx
15
+ var _tmpl$ = /* @__PURE__ */ template(`<input>`);
16
+ const InternalColorThumbContext = createContext(null);
17
+ function ColorThumb(props) {
18
+ const ctx = requireValue(useContext(InternalColorThumbContext), "Expected required component value");
19
+ const focus = createFocusRing();
20
+ const hover = createHover(props);
21
+ const render = createRenderProps(mergeProps$1(props, {
22
+ defaultClass: "solid2-aria-ColorThumb",
23
+ get defaultStyle() {
24
+ const { style } = ctx.thumbProps;
25
+ const background = { "background-color": ctx.state.getDisplayColor().toString() };
26
+ return typeof style === "object" ? {
27
+ ...style,
28
+ ...background
29
+ } : background;
30
+ },
31
+ values: {
32
+ get color() {
33
+ return ctx.state.getDisplayColor();
34
+ },
35
+ get isDisabled() {
36
+ return ctx.isDisabled ?? false;
37
+ },
38
+ get isDragging() {
39
+ return ctx.state.isDragging;
40
+ },
41
+ get isFocusVisible() {
42
+ return focus.isFocusVisible;
43
+ },
44
+ get isFocused() {
45
+ return focus.isFocused;
46
+ },
47
+ get isHovered() {
48
+ return hover.isHovered;
49
+ }
50
+ }
51
+ }));
52
+ return createComponent(dom.div, mergeProps(() => {
53
+ return mergeProps$1(merge(() => ctx.thumbProps), merge(() => hover.hoverProps ?? {}), omit(filterDOMProps(props, { global: true }), "id"), render);
54
+ }, {
55
+ ref: (element) => {
56
+ assignRef(untrack(() => props.ref), element);
57
+ },
58
+ get "data-hovered"() {
59
+ return hover.isHovered || void 0;
60
+ },
61
+ get "data-dragging"() {
62
+ return ctx.state.isDragging || void 0;
63
+ },
64
+ get "data-focused"() {
65
+ return focus.isFocused || void 0;
66
+ },
67
+ get "data-focus-visible"() {
68
+ return focus.isFocusVisible || void 0;
69
+ },
70
+ get "data-disabled"() {
71
+ return ctx.isDisabled === true ? true : void 0;
72
+ },
73
+ get children() {
74
+ return [
75
+ (() => {
76
+ var _el$ = getNextElement(_tmpl$);
77
+ spread(_el$, () => {
78
+ return mergeProps$1(merge(() => ctx.xInputProps), merge(() => focus.focusProps ?? {}));
79
+ }, false);
80
+ ref(() => {
81
+ return (element) => {
82
+ ctx.setInputXRef(element);
83
+ };
84
+ }, _el$);
85
+ runHydrationEvents();
86
+ return _el$;
87
+ })(),
88
+ memo(() => {
89
+ return memo(() => {
90
+ return !!ctx.yInputProps;
91
+ })() ? (() => {
92
+ var _el$2 = getNextElement(_tmpl$);
93
+ spread(_el$2, () => {
94
+ return mergeProps$1(merge(() => ctx.yInputProps ?? {}), merge(() => focus.focusProps ?? {}));
95
+ }, false);
96
+ ref(() => {
97
+ return (el) => {
98
+ if (ctx.setInputYRef) ctx.setInputYRef(el);
99
+ };
100
+ }, _el$2);
101
+ runHydrationEvents();
102
+ return _el$2;
103
+ })() : ctx.yInputProps;
104
+ }),
105
+ memo(() => {
106
+ return render.children;
107
+ })
108
+ ];
109
+ }
110
+ }));
111
+ }
112
+ export { ColorThumb, InternalColorThumbContext };
113
+
114
+ //# sourceMappingURL=color-thumb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"color-thumb.js","names":["<dom.div\n {...mergeProps(\n merge(() => ctx.thumbProps),\n merge(() => hover.hoverProps ?? {}),\n omit(filterDOMProps(props, { global: true }), \"id\"),\n render\n )}\n ref={(element: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n element\n );\n }}\n data-hovered={hover.isHovered || undefined}\n data-dragging={ctx.state.isDragging || undefined}\n data-focused={focus.isFocused || undefined}\n data-focus-visible={focus.isFocusVisible || undefined}\n data-disabled={ctx.isDisabled === true ? true : undefined}\n >\n <input\n {...mergeProps(\n merge(() => ctx.xInputProps),\n merge(() => focus.focusProps ?? {})\n )}\n ref={(element: HTMLInputElement) => {\n ctx.setInputXRef(element);\n }}\n />\n {ctx.yInputProps && (\n <input\n {...mergeProps(\n merge(() => ctx.yInputProps ?? {}),\n merge(() => focus.focusProps ?? {})\n )}\n ref={(el: HTMLInputElement) => {\n if (ctx.setInputYRef) {\n ctx.setInputYRef(el);\n }\n }}\n />\n )}\n {render.children}\n </dom.div>","dom.div","ref={(element: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n element\n );\n }}","ref={(element: HTMLInputElement) => {\n ctx.setInputXRef(element);\n }}","{ctx.yInputProps && (\n <input\n {...mergeProps(\n merge(() => ctx.yInputProps ?? {}),\n merge(() => focus.focusProps ?? {})\n )}\n ref={(el: HTMLInputElement) => {\n if (ctx.setInputYRef) {\n ctx.setInputYRef(el);\n }\n }}\n />\n )}","ref={(el: HTMLInputElement) => {\n if (ctx.setInputYRef) {\n ctx.setInputYRef(el);\n }\n }}","render.children","mergeProps","_$createComponent","_$mergeProps","_$getNextElement","_$memo"],"sources":["../../src/color-thumb.tsx"],"sourcesContent":["/*\n * Derived from Adobe React Spectrum: packages/react-aria-components/src/ColorThumb.tsx.\n * Modified for Solid Aria: composed Solid Aria and Stately primitives with Solid 2 contexts, reactive getters, and DOM refs; 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 type { InputHTMLAttributes } from \"@solid2-aria/core/types\";\nimport { filterDOMProps } from \"@solid2-aria/core/utils/filter-dom-props\";\nimport { mergeProps } from \"@solid2-aria/core/utils/merge-props\";\nimport { requireValue } from \"@solid2-aria/core/utils/require-value\";\nimport type { Color } from \"@solid2-aria/stately/color/types\";\nimport type { HoverEvents } from \"@solid2-aria/types-shared\";\nimport type {\n GlobalDOMAttributes,\n DOMAttributes,\n} from \"@solid2-aria/types-shared-web\";\nimport type { JSX } from \"@solidjs/web\";\nimport { untrack, merge, createContext, omit, useContext } from \"solid-js\";\nimport type { Accessor } from \"solid-js\";\n\nimport { assignRef, dom, createRenderProps } from \"./utils\";\nimport type { RenderProps, Ref } from \"./utils\";\n\ninterface ColorState {\n getDisplayColor: () => Color;\n isDragging: boolean;\n}\n\ninterface InternalColorThumbContextValue {\n state: ColorState;\n thumbProps: DOMAttributes;\n inputXRef: Accessor<HTMLInputElement | null>;\n setInputXRef: (element: HTMLInputElement) => void;\n inputYRef?: Accessor<HTMLInputElement | null>;\n setInputYRef?: (element: HTMLInputElement) => void;\n xInputProps: InputHTMLAttributes;\n yInputProps?: InputHTMLAttributes;\n isDisabled?: boolean;\n}\n\nexport const InternalColorThumbContext =\n createContext<InternalColorThumbContextValue | null>(null);\n\nexport interface ColorThumbRenderProps {\n color: Color;\n isDragging: boolean;\n isHovered: boolean;\n isFocused: boolean;\n isFocusVisible: boolean;\n isDisabled: boolean;\n}\n\nexport interface ColorThumbProps\n extends\n HoverEvents,\n RenderProps<ColorThumbRenderProps>,\n GlobalDOMAttributes<HTMLDivElement> {\n ref?: Ref<HTMLDivElement>;\n}\n\nexport function ColorThumb(props: ColorThumbProps): JSX.Element {\n const ctx = requireValue(\n useContext(InternalColorThumbContext),\n \"Expected required component value\"\n );\n\n const focus = createFocusRing();\n const hover = createHover(props);\n\n const values: ColorThumbRenderProps = {\n get color() {\n return ctx.state.getDisplayColor();\n },\n get isDisabled() {\n return ctx.isDisabled ?? false;\n },\n get isDragging() {\n return ctx.state.isDragging;\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 };\n\n const render = createRenderProps(\n mergeProps(props, {\n defaultClass: \"solid2-aria-ColorThumb\",\n get defaultStyle() {\n const { style } = ctx.thumbProps;\n\n const background = {\n \"background-color\": ctx.state.getDisplayColor().toString(),\n };\n\n return typeof style === \"object\"\n ? { ...style, ...background }\n : background;\n },\n values,\n })\n );\n\n return (\n <dom.div\n {...mergeProps(\n merge(() => ctx.thumbProps),\n merge(() => hover.hoverProps ?? {}),\n omit(filterDOMProps(props, { global: true }), \"id\"),\n render\n )}\n ref={(element: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n element\n );\n }}\n data-hovered={hover.isHovered || undefined}\n data-dragging={ctx.state.isDragging || undefined}\n data-focused={focus.isFocused || undefined}\n data-focus-visible={focus.isFocusVisible || undefined}\n data-disabled={ctx.isDisabled === true ? true : undefined}\n >\n <input\n {...mergeProps(\n merge(() => ctx.xInputProps),\n merge(() => focus.focusProps ?? {})\n )}\n ref={(element: HTMLInputElement) => {\n ctx.setInputXRef(element);\n }}\n />\n {ctx.yInputProps && (\n <input\n {...mergeProps(\n merge(() => ctx.yInputProps ?? {}),\n merge(() => focus.focusProps ?? {})\n )}\n ref={(el: HTMLInputElement) => {\n if (ctx.setInputYRef) {\n ctx.setInputYRef(el);\n }\n }}\n />\n )}\n {render.children}\n </dom.div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;AA0CA,MAAa,4BACX,cAAqD,IAAI;AAmB3D,SAAgB,WAAW,OAAqC;CAC9D,MAAM,MAAM,aACV,WAAW,yBAAyB,GACpC,mCACF;CAEA,MAAM,QAAQ,gBAAgB;CAC9B,MAAM,QAAQ,YAAY,KAAK;CAuB/B,MAAM,SAAS,kBACbO,aAAW,OAAO;EAChB,cAAc;EACd,IAAI,eAAe;GACjB,MAAM,EAAE,UAAU,IAAI;GAEtB,MAAM,aAAa,EACjB,oBAAoB,IAAI,MAAM,gBAAgB,CAAC,CAAC,SAAS,EAC3D;GAEA,OAAO,OAAO,UAAU,WACpB;IAAE,GAAG;IAAO,GAAG;GAAW,IAC1B;EACN;EACA,QAAA;GAlCF,IAAI,QAAQ;IACV,OAAO,IAAI,MAAM,gBAAgB;GACnC;GACA,IAAI,aAAa;IACf,OAAO,IAAI,cAAc;GAC3B;GACA,IAAI,aAAa;IACf,OAAO,IAAI,MAAM;GACnB;GACA,IAAI,iBAAiB;IACnB,OAAO,MAAM;GACf;GACA,IAAI,YAAY;IACd,OAAO,MAAM;GACf;GACA,IAAI,YAAY;IACd,OAAO,MAAM;GACf;EAiBE;CACF,CAAC,CACH;CAEA,OACEP,gBAAAA,IAACC,KAADD,iBACE;EAAI,OAAAO,aACF,YAAY,IAAI,UAAU,GAC1B,YAAY,MAAM,cAAc,CAAC,CAAC,GAClC,KAAK,eAAe,OAAO,EAAE,QAAQ,KAAK,CAAC,GAAG,IAAI,GAClD,MACF;CAAC,GANH;EAOEL,MAAM,YAA4B;GAChC,UACE,cAAc,MAAM,GAAG,GACvB,OACF;EACF;EACA,IAAA,iBAAA;GAAc,OAAA,MAAM,aAAa,KAAA;EAAS;EAC1C,IAAA,kBAAA;GAAe,OAAA,IAAI,MAAM,cAAc,KAAA;EAAS;EAChD,IAAA,iBAAA;GAAc,OAAA,MAAM,aAAa,KAAA;EAAS;EAC1C,IAAA,uBAAA;GAAoB,OAAA,MAAM,kBAAkB,KAAA;EAAS;EACrD,IAAA,kBAAA;GAAe,OAAA,IAAI,eAAe,OAAO,OAAO,KAAA;EAAS;EAjB3D,IAAA,WAAA;GAkBC,OAAA;WACC;KAQC,IAAA,OAAAQ,eAAA,MAAA;KAPC,OAAA,YAAA;MAAI,OAAAH,aACF,YAAY,IAAI,WAAW,GAC3B,YAAY,MAAM,cAAc,CAAC,CAAC,CACpC;KAAC,GAAA,KAAA;KACD,UAAA;MAAM,QAAA,YAA8B;OAClC,IAAI,aAAa,OAAO;MAC1B;KAAC,GAFDJ,IAEC;KAPH,mBAQC;KARD,OAAA;IAQC,EAAA,CAAA;IACDC,WAAAA;;MAAC,OAAA,CAAA,CAAA,IAAI;KAYJ,CAAA,CAAC,CAAD,WAXC;MAUC,IAAA,QAAAM,eAAA,MAAA;MATC,OAAA,aAAA;OAAI,OAAAH,aACF,YAAY,IAAI,eAAe,CAAC,CAAC,GACjC,YAAY,MAAM,cAAc,CAAC,CAAC,CACpC;MAAC,GAAA,KAAA;MACD,UAAA;OAAM,QAAA,OAAyB;QAC7B,IAAI,IAAI,cACN,IAAI,aAAa,EAAE;OAEvB;MAAC,GAJDF,KAIC;MATH,mBAUC;MAVD,OAAA;KAUC,EAAA,CAAA,IAXF,IAAI;IAYJ,CAAA;IACAC,WAAAA;KAAO,OAAA,OAAA;IAAO,CAAA;GAtBhB;EAuBQ;;AAEb"}
@@ -0,0 +1,29 @@
1
+ /*
2
+ * Derived from Adobe React Spectrum: packages/react-aria-components/src/ColorWheel.tsx.
3
+ * Modified for Solid Aria: composed Solid Aria and Stately primitives with Solid 2 contexts, reactive getters, and DOM refs; uses Solid class props.
4
+ * Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
5
+ */
6
+ import { ContextValue, Ref, RenderProps, SlotProps, StyleRenderProps } from "./utils.js";
7
+ import { JSX } from "@solidjs/web";
8
+ import { AriaColorWheelOptions } from "@solid2-aria/core/color/create-color-wheel";
9
+ import { ColorWheelState } from "@solid2-aria/stately/color/create-color-wheel-state";
10
+ import { GlobalDOMAttributes } from "@solid2-aria/types-shared-web";
11
+ export interface ColorWheelRenderProps {
12
+ isDisabled: boolean;
13
+ state: ColorWheelState;
14
+ }
15
+ export interface ColorWheelProps extends AriaColorWheelOptions, RenderProps<ColorWheelRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
16
+ ref?: Ref<HTMLDivElement>;
17
+ }
18
+ export type ColorWheelTrackRenderProps = ColorWheelRenderProps;
19
+ export interface ColorWheelTrackProps extends StyleRenderProps<ColorWheelTrackRenderProps>, GlobalDOMAttributes<HTMLDivElement> {
20
+ ref?: Ref<HTMLDivElement>;
21
+ }
22
+ type TrackContext = Omit<ColorWheelTrackProps, keyof JSX.HTMLAttributes<HTMLDivElement>> & Omit<JSX.HTMLAttributes<HTMLDivElement>, "ref" | "class" | "style" | "children"> & Pick<ColorWheelTrackProps, "class" | "style">;
23
+ export declare const ColorWheelContext: import("solid-js").Context<ContextValue<Partial<ColorWheelProps>, HTMLDivElement>>;
24
+ export declare const ColorWheelStateContext: import("solid-js").Context<ColorWheelState | null>;
25
+ export declare const ColorWheelTrackContext: import("solid-js").Context<ContextValue<TrackContext, HTMLDivElement>>;
26
+ export declare function ColorWheel(input: ColorWheelProps): JSX.Element;
27
+ export declare function ColorWheelTrack(input: ColorWheelTrackProps): JSX.Element;
28
+ export {};
29
+ //# sourceMappingURL=color-wheel.d.ts.map
@@ -0,0 +1,109 @@
1
+ /*
2
+ * Derived from Adobe React Spectrum: packages/react-aria-components/src/ColorWheel.tsx.
3
+ * Modified for Solid Aria: composed Solid Aria and Stately primitives with Solid 2 contexts, reactive getters, and DOM refs; uses Solid class props.
4
+ * Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
5
+ */
6
+ import { createContextProps, createRenderProps, dom } from "./utils.js";
7
+ import { InternalColorThumbContext } from "./color-thumb.js";
8
+ import { createComponent, memo, mergeProps } from "@solidjs/web";
9
+ import { mergeProps as mergeProps$1 } from "@solid2-aria/core/utils/merge-props";
10
+ import { createContext, createSignal, merge, omit, untrack, useContext } from "solid-js";
11
+ import { requireValue } from "@solid2-aria/core/utils/require-value";
12
+ import { filterDOMProps } from "@solid2-aria/core/utils/filter-dom-props";
13
+ import { createColorWheel } from "@solid2-aria/core/color/create-color-wheel";
14
+ import { createColorWheelState } from "@solid2-aria/stately/color/create-color-wheel-state";
15
+ // src/color-wheel.tsx
16
+ const ColorWheelContext = createContext(null);
17
+ const ColorWheelStateContext = createContext(null);
18
+ const ColorWheelTrackContext = createContext(null);
19
+ function ColorWheel(input) {
20
+ const [props, , setRef] = createContextProps(input, untrack(() => input.ref), ColorWheelContext);
21
+ const state = createColorWheelState(props);
22
+ const [inputRef, setInputRef] = createSignal(null, { ownedWrite: true });
23
+ const aria = createColorWheel(props, state, inputRef);
24
+ const render = createRenderProps(mergeProps$1(props, {
25
+ defaultClass: "solid2-aria-ColorWheel",
26
+ defaultStyle: { position: "relative" },
27
+ values: {
28
+ get isDisabled() {
29
+ return props.isDisabled ?? false;
30
+ },
31
+ state
32
+ }
33
+ }));
34
+ const thumb = {
35
+ inputXRef: inputRef,
36
+ get isDisabled() {
37
+ return props.isDisabled;
38
+ },
39
+ setInputXRef: setInputRef,
40
+ state,
41
+ get thumbProps() {
42
+ return aria.thumbProps;
43
+ },
44
+ get xInputProps() {
45
+ return aria.inputProps;
46
+ }
47
+ };
48
+ return createComponent(dom.div, mergeProps(() => {
49
+ return omit(filterDOMProps(props, { global: true }), "id");
50
+ }, render, {
51
+ ref: (element) => {
52
+ setRef(element);
53
+ },
54
+ get slot() {
55
+ return memo(() => {
56
+ return !!(typeof props.slot === "string" && props.slot.length > 0);
57
+ })() ? props.slot : void 0;
58
+ },
59
+ get "data-disabled"() {
60
+ return props.isDisabled === true ? true : void 0;
61
+ },
62
+ get children() {
63
+ return createComponent(ColorWheelStateContext, {
64
+ value: state,
65
+ get children() {
66
+ return createComponent(ColorWheelTrackContext, {
67
+ get value() {
68
+ return merge(() => aria.trackProps);
69
+ },
70
+ get children() {
71
+ return createComponent(InternalColorThumbContext, {
72
+ value: thumb,
73
+ get children() {
74
+ return render.children;
75
+ }
76
+ });
77
+ }
78
+ });
79
+ }
80
+ });
81
+ }
82
+ }));
83
+ }
84
+ function ColorWheelTrack(input) {
85
+ const [props, , setRef] = createContextProps(input, untrack(() => input.ref), ColorWheelTrackContext);
86
+ const state = requireValue(useContext(ColorWheelStateContext), "Expected required component value");
87
+ const render = createRenderProps(mergeProps$1(props, {
88
+ defaultClass: "solid2-aria-ColorWheelTrack",
89
+ values: {
90
+ get isDisabled() {
91
+ return state.isDisabled;
92
+ },
93
+ state
94
+ }
95
+ }));
96
+ return createComponent(dom.div, mergeProps(() => {
97
+ return omit(props, "ref");
98
+ }, render, {
99
+ ref: (element) => {
100
+ setRef(element);
101
+ },
102
+ get "data-disabled"() {
103
+ return state.isDisabled || void 0;
104
+ }
105
+ }));
106
+ }
107
+ export { ColorWheel, ColorWheelContext, ColorWheelStateContext, ColorWheelTrack, ColorWheelTrackContext };
108
+
109
+ //# sourceMappingURL=color-wheel.js.map