@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,217 @@
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/GridList.tsx.
14
+ * Modified for Solid Aria: collections, selection, drag and drop, and DOM rendering use Solid 2 ownership and reactive getters; uses Solid class props.
15
+ * Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
16
+ */
17
+ import { assignRef, createRenderProps, dom } from "./utils.js";
18
+ import { DragAndDropContext } from "./drag-and-drop.js";
19
+ import { mergeProps } from "@solid2-aria/core/utils/merge-props";
20
+ import { Show, createMemo, createSignal, merge, untrack, useContext } from "solid-js";
21
+ import { dynamic, memo, mergeProps as mergeProps$1, ssrElement } from "@solidjs/web";
22
+ import { requireValue } from "@solid2-aria/core/utils/require-value";
23
+ import { createVisuallyHidden } from "@solid2-aria/core/visually-hidden/visually-hidden";
24
+ import { ListKeyboardDelegate } from "@solid2-aria/core/selection/list-keyboard-delegate";
25
+ // src/collection-dnd.tsx
26
+ var _sk$ = (k) => k === "role";
27
+ var _m$ = Symbol();
28
+ var _m$2 = Symbol();
29
+ var _m$3 = Symbol();
30
+ var _m$4 = Symbol();
31
+ var _m$5 = Symbol();
32
+ var _m$6 = Symbol();
33
+ var _d$ = {
34
+ get() {
35
+ return this[_m$].columnCount;
36
+ },
37
+ enumerable: true,
38
+ configurable: true
39
+ };
40
+ var _d$2 = {
41
+ get() {
42
+ const hidden = this[_m$2];
43
+ const aria = this[_m$3];
44
+ const render = this[_m$4];
45
+ return [ssrElement("div", () => {
46
+ return mergeProps(merge(() => hidden.visuallyHiddenProps ?? {}), merge(() => aria.dropIndicatorProps ?? {}));
47
+ }, void 0, true, _sk$, " role=\"button\""), memo(() => {
48
+ return render.children;
49
+ })];
50
+ },
51
+ enumerable: true,
52
+ configurable: true
53
+ };
54
+ function _P$(_p, _p2, _p3, _p4, _p5) {
55
+ this[_m$] = _p;
56
+ this[_m$2] = _p2;
57
+ this[_m$3] = _p3;
58
+ this[_m$4] = _p4;
59
+ this.role = _p5;
60
+ Object.defineProperty(this, "colspan", _d$);
61
+ Object.defineProperty(this, "children", _d$2);
62
+ }
63
+ _P$.prototype = Object.prototype;
64
+ var _d$3 = {
65
+ get() {
66
+ return this[_m$].isDropTarget || void 0;
67
+ },
68
+ enumerable: true,
69
+ configurable: true
70
+ };
71
+ var _d$4 = {
72
+ get() {
73
+ const Cell = this[_m$2];
74
+ const props = this[_m$3];
75
+ const hidden = this[_m$4];
76
+ const aria = this[_m$];
77
+ const render = this[_m$5];
78
+ return Cell(new _P$(props, hidden, aria, render, "gridcell"));
79
+ },
80
+ enumerable: true,
81
+ configurable: true
82
+ };
83
+ function _P$2(_p6, _p7, _p8, _p9, _p0, _p1, _p10) {
84
+ this[_m$] = _p6;
85
+ this[_m$2] = _p7;
86
+ this[_m$3] = _p8;
87
+ this[_m$4] = _p9;
88
+ this[_m$5] = _p0;
89
+ this.role = _p1;
90
+ this.ref = _p10;
91
+ Object.defineProperty(this, "data-drop-target", _d$3);
92
+ Object.defineProperty(this, "children", _d$4);
93
+ }
94
+ _P$2.prototype = Object.prototype;
95
+ var _d$5 = {
96
+ get() {
97
+ return !this[_m$].isHidden;
98
+ },
99
+ enumerable: true,
100
+ configurable: true
101
+ };
102
+ var _d$6 = {
103
+ get() {
104
+ const Tag = this[_m$2];
105
+ const render = this[_m$3];
106
+ const aria = this[_m$];
107
+ const Cell = this[_m$4];
108
+ const props = this[_m$5];
109
+ const hidden = this[_m$6];
110
+ return Tag(mergeProps$1(render, new _P$2(aria, Cell, props, hidden, render, "row", (element) => {
111
+ assignRef(untrack(() => props.ref), element);
112
+ })));
113
+ },
114
+ enumerable: true,
115
+ configurable: true
116
+ };
117
+ function _P$3(_p11, _p12, _p13, _p14, _p15, _p16) {
118
+ this[_m$] = _p11;
119
+ this[_m$2] = _p12;
120
+ this[_m$3] = _p13;
121
+ this[_m$4] = _p14;
122
+ this[_m$5] = _p15;
123
+ this[_m$6] = _p16;
124
+ Object.defineProperty(this, "when", _d$5);
125
+ Object.defineProperty(this, "children", _d$6);
126
+ }
127
+ _P$3.prototype = Object.prototype;
128
+ function createCollectionDragAndDrop(options) {
129
+ const hooks = untrack(() => options.hooks);
130
+ const [previewRef, setPreviewRef] = createSignal(null, { ownedWrite: true });
131
+ const dragState = hooks?.createDraggableCollectionState?.({
132
+ get collection() {
133
+ return options.collection;
134
+ },
135
+ preview: hooks.renderDragPreview ? previewRef : void 0,
136
+ get selectionManager() {
137
+ return options.selectionManager;
138
+ }
139
+ });
140
+ if (dragState) hooks?.createDraggableCollection?.({}, dragState, options.ref);
141
+ const dropState = hooks?.createDroppableCollectionState?.({
142
+ get collection() {
143
+ return options.collection;
144
+ },
145
+ get selectionManager() {
146
+ return options.selectionManager;
147
+ }
148
+ });
149
+ const liveCollection = { [Symbol.iterator]() {
150
+ return (options.dropTargetCollection ?? options.collection)[Symbol.iterator]();
151
+ } };
152
+ const fallbackKeyboard = createMemo(() => new ListKeyboardDelegate(options.collection, options.selectionManager.disabledKeys, options.ref));
153
+ const result = dropState ? hooks?.createDroppableCollection?.({
154
+ dropTargetDelegate: options.dropTargetDelegate ?? hooks.dropTargetDelegate ?? new hooks.ListDropTargetDelegate(liveCollection, options.ref, {
155
+ direction: options.direction,
156
+ layout: options.layout,
157
+ orientation: options.orientation
158
+ }),
159
+ get keyboardDelegate() {
160
+ return options.keyboardDelegate ?? fallbackKeyboard();
161
+ },
162
+ onDropActivate: options.onDropActivate,
163
+ onKeyDown: options.onKeyDown
164
+ }, dropState, options.ref) : void 0;
165
+ const Preview = hooks?.DragPreview;
166
+ const renderDragPreview = hooks?.renderDragPreview;
167
+ return {
168
+ get collectionProps() {
169
+ return result?.collectionProps;
170
+ },
171
+ dragAndDropHooks: hooks,
172
+ dragState,
173
+ dropState,
174
+ get preview() {
175
+ return Preview && renderDragPreview && Preview({
176
+ ref: (element) => {
177
+ setPreviewRef(() => element);
178
+ },
179
+ children: renderDragPreview
180
+ });
181
+ }
182
+ };
183
+ }
184
+ function CollectionDropIndicator(props) {
185
+ const context = useContext(DragAndDropContext);
186
+ const [buttonRef, setButtonRef] = createSignal(null, { ownedWrite: true });
187
+ const aria = untrack(() => requireValue(requireValue(context.dragAndDropHooks, "Expected context.dragAndDropHooks").createDropIndicator, "Expected context.dragAndDropHooks!.createDropIndicator")(props, requireValue(context.dropState, "Expected context.dropState"), buttonRef));
188
+ const hidden = createVisuallyHidden();
189
+ const render = createRenderProps(mergeProps(props, {
190
+ defaultClass: "solid2-aria-DropIndicator",
191
+ get values() {
192
+ return { isDropTarget: aria.isDropTarget };
193
+ }
194
+ }));
195
+ const Tag = dynamic(() => props.table === true ? dom.tr : dom.div);
196
+ const Cell = dynamic(() => props.table === true ? dom.td : dom.div);
197
+ return Show(new _P$3(aria, Tag, render, Cell, props, hidden));
198
+ }
199
+ function createCollectionItemDragAndDrop(context, key, dropRef, activateButtonRef) {
200
+ return {
201
+ drag: context.dragState ? context.dragAndDropHooks?.createDraggableItem?.({
202
+ hasDragButton: true,
203
+ key
204
+ }, context.dragState) : void 0,
205
+ drop: context.dropState ? context.dragAndDropHooks?.createDropIndicator?.({
206
+ activateButtonRef,
207
+ target: {
208
+ dropPosition: "on",
209
+ key,
210
+ type: "item"
211
+ }
212
+ }, context.dropState, dropRef) : void 0
213
+ };
214
+ }
215
+ export { CollectionDropIndicator, createCollectionDragAndDrop, createCollectionItemDragAndDrop };
216
+
217
+ //# sourceMappingURL=collection-dnd.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collection-dnd.js","names":["<div\n {...mergeProps(\n merge(() => hidden.visuallyHiddenProps ?? {}),\n merge(() => aria.dropIndicatorProps ?? {})\n )}\n role=\"button\"\n ref={(element: HTMLDivElement) => {\n setButtonRef(element);\n }}\n />","{render.children}","ref={(element: DragPreviewRenderer | null) => {\n setPreviewRef(() => element);\n }}","<Preview\n ref={(element: DragPreviewRenderer | null) => {\n setPreviewRef(() => element);\n }}\n >\n {renderDragPreview}\n </Preview>","_$ssrElement","_$memo","_$mergeProps"],"sources":["../../src/collection-dnd.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/GridList.tsx.\n * Modified for Solid Aria: collections, selection, drag and drop, and DOM rendering use Solid 2 ownership and reactive getters; 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 type { DroppableCollectionOptions } from \"@solid2-aria/core/dnd/create-droppable-collection\";\nimport { ListKeyboardDelegate } from \"@solid2-aria/core/selection/list-keyboard-delegate\";\nimport type { HTMLAttributes } from \"@solid2-aria/core/types\";\nimport { mergeProps } from \"@solid2-aria/core/utils/merge-props\";\nimport { requireValue } from \"@solid2-aria/core/utils/require-value\";\nimport { createVisuallyHidden } from \"@solid2-aria/core/visually-hidden/visually-hidden\";\nimport type { DraggableCollectionState } from \"@solid2-aria/stately/dnd/create-draggable-collection-state\";\nimport type { DroppableCollectionState } from \"@solid2-aria/stately/dnd/create-droppable-collection-state\";\nimport type { MultipleSelectionManager } from \"@solid2-aria/stately/selection/types\";\nimport type {\n Collection as ICollection,\n Node,\n Key,\n DragPreviewRenderer,\n Orientation,\n KeyboardDelegate,\n DroppableCollectionProps,\n DropTargetDelegate,\n} from \"@solid2-aria/types-shared\";\nimport { dynamic } from \"@solidjs/web\";\nimport type { JSX } from \"@solidjs/web\";\nimport {\n merge,\n untrack,\n createSignal,\n createMemo,\n useContext,\n Show,\n} from \"solid-js\";\nimport type { Accessor } from \"solid-js\";\n\nimport type { DragAndDropHooks } from \"./create-drag-and-drop\";\nimport { DragAndDropContext } from \"./drag-and-drop\";\nimport type {\n DragAndDropContextValue,\n DropIndicatorProps,\n} from \"./drag-and-drop\";\nimport { assignRef, dom, createRenderProps } from \"./utils\";\n\nexport interface CollectionDragAndDrop<T> {\n readonly collectionProps: HTMLAttributes | undefined;\n dragAndDropHooks: DragAndDropHooks<T> | undefined;\n dragState: DraggableCollectionState | undefined;\n dropState: DroppableCollectionState | undefined;\n readonly preview: JSX.Element;\n}\n\nexport function createCollectionDragAndDrop<T>(options: {\n hooks?: DragAndDropHooks<T>;\n collection: ICollection<Node<T>>;\n selectionManager: MultipleSelectionManager;\n ref: Accessor<HTMLElement | null>;\n keyboardDelegate?: KeyboardDelegate;\n dropTargetCollection?: Iterable<Node<T>>;\n onDropActivate?: DroppableCollectionProps[\"onDropActivate\"];\n onKeyDown?: DroppableCollectionOptions[\"onKeyDown\"];\n dropTargetDelegate?: DropTargetDelegate;\n layout?: \"stack\" | \"grid\";\n orientation?: Orientation;\n direction?: \"ltr\" | \"rtl\";\n}): CollectionDragAndDrop<T> {\n const hooks = untrack(() => options.hooks);\n\n const [previewRef, setPreviewRef] = createSignal<DragPreviewRenderer | null>(\n null,\n { ownedWrite: true }\n );\n\n const dragState = hooks?.createDraggableCollectionState?.({\n get collection() {\n return options.collection;\n },\n preview: hooks.renderDragPreview ? previewRef : undefined,\n get selectionManager() {\n return options.selectionManager;\n },\n });\n\n if (dragState) {\n hooks?.createDraggableCollection?.({}, dragState, options.ref);\n }\n\n const dropState = hooks?.createDroppableCollectionState?.({\n get collection() {\n return options.collection;\n },\n get selectionManager() {\n return options.selectionManager;\n },\n });\n\n const liveCollection: Iterable<Node<T>> = {\n [Symbol.iterator]() {\n return (options.dropTargetCollection ?? options.collection)[\n Symbol.iterator\n ]();\n },\n };\n\n const fallbackKeyboard = createMemo(\n () =>\n new ListKeyboardDelegate(\n options.collection,\n options.selectionManager.disabledKeys,\n options.ref\n )\n );\n\n const result = dropState\n ? hooks?.createDroppableCollection?.(\n {\n dropTargetDelegate:\n options.dropTargetDelegate ??\n hooks.dropTargetDelegate ??\n new hooks.ListDropTargetDelegate(liveCollection, options.ref, {\n direction: options.direction,\n layout: options.layout,\n orientation: options.orientation,\n }),\n get keyboardDelegate() {\n return options.keyboardDelegate ?? fallbackKeyboard();\n },\n onDropActivate: options.onDropActivate,\n onKeyDown: options.onKeyDown,\n },\n dropState,\n options.ref\n )\n : undefined;\n\n const Preview = hooks?.DragPreview;\n const renderDragPreview = hooks?.renderDragPreview;\n\n return {\n get collectionProps() {\n return result?.collectionProps;\n },\n dragAndDropHooks: hooks,\n dragState,\n dropState,\n get preview() {\n return (\n <>\n {Preview && renderDragPreview && (\n <Preview\n ref={(element: DragPreviewRenderer | null) => {\n setPreviewRef(() => element);\n }}\n >\n {renderDragPreview}\n </Preview>\n )}\n </>\n );\n },\n };\n}\n\nexport function CollectionDropIndicator(\n props: DropIndicatorProps & { table?: boolean; columnCount?: number }\n) {\n const context = useContext(DragAndDropContext);\n\n const [buttonRef, setButtonRef] = createSignal<HTMLDivElement | null>(null, {\n ownedWrite: true,\n });\n\n const aria = untrack(() =>\n requireValue(\n requireValue(\n context.dragAndDropHooks,\n \"Expected context.dragAndDropHooks\"\n ).createDropIndicator,\n \"Expected context.dragAndDropHooks!.createDropIndicator\"\n )(\n props,\n requireValue(context.dropState, \"Expected context.dropState\"),\n buttonRef\n )\n );\n\n const hidden = createVisuallyHidden();\n\n const render = createRenderProps(\n mergeProps(props, {\n defaultClass: \"solid2-aria-DropIndicator\",\n get values() {\n return { isDropTarget: aria.isDropTarget };\n },\n })\n );\n\n const Tag = dynamic(() => (props.table === true ? dom.tr : dom.div));\n const Cell = dynamic(() => (props.table === true ? dom.td : dom.div));\n\n return (\n <Show when={!aria.isHidden}>\n <Tag\n {...render}\n role=\"row\"\n ref={(element: HTMLElement) => {\n assignRef(\n untrack(() => props.ref),\n element\n );\n }}\n data-drop-target={aria.isDropTarget || undefined}\n >\n <Cell role=\"gridcell\" colspan={props.columnCount}>\n <div\n {...mergeProps(\n merge(() => hidden.visuallyHiddenProps ?? {}),\n merge(() => aria.dropIndicatorProps ?? {})\n )}\n role=\"button\"\n ref={(element: HTMLDivElement) => {\n setButtonRef(element);\n }}\n />\n {render.children}\n </Cell>\n </Tag>\n </Show>\n );\n}\n\nexport function createCollectionItemDragAndDrop(\n context: DragAndDropContextValue,\n key: Key,\n dropRef: Accessor<HTMLElement | null>,\n activateButtonRef?: Accessor<HTMLElement | null>\n) {\n const drag = context.dragState\n ? context.dragAndDropHooks?.createDraggableItem?.(\n { hasDragButton: true, key },\n context.dragState\n )\n : undefined;\n\n const drop = context.dropState\n ? context.dragAndDropHooks?.createDropIndicator?.(\n {\n activateButtonRef,\n target: { dropPosition: \"on\", key, type: \"item\" },\n },\n context.dropState,\n dropRef\n )\n : undefined;\n\n return { drag, drop };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiO8B,O,SAAS,CAAM;;;;;;;;;;EAArC,OAAkD,CAChDA,WAAAA,aACM;GACF,OAAA,WAAA,YAAY,OAAO,uBAAuB,CAAC,CAAC,GAC5C,YAAY,KAAK,sBAAsB,CAAC,CAAC,CAC3C;EAJF,GAAA,KAAA,GAAA,MAAA,MAAA,kBASC,GACDC,WAAAA;GAAC,OAAA,OAAO;EAAQ,CAAA,CAVjB;;;;;;;;;;;;;;;;;EAHD,O,SAAkB,CAAK,gBAAgB,KAAA;;;;;;;;;;;;EAEvC,OAAA,KAAA,IAAA,IAA+B,OAGb,QACA,MAOf,QAXG,UAYA,CAAA;;;;;;;;;;;;;;;;;;;EAxBJ,OAAM,C,SAAC,CAAK;;;;;;;;;;;;;EAChB,OAAA,IAAAK,aACM,QADN,IAAA,KASoB,MAAA,MAEa,OAGb,QAQf,QApBH,QACM,YAAyB;GAC7B,UACE,cAAc,MAAM,GAAG,GACvB,OACF;EACF,CAgBG,CAAA,CAAA;;;;;;;;;;;;;;;;AA9KX,SAAgB,4BAA+B,SAalB;CAC3B,MAAM,QAAQ,cAAc,QAAQ,KAAK;CAEzC,MAAM,CAAC,YAAY,iBAAiB,aAClC,MACA,EAAE,YAAY,KAAK,CACrB;CAEA,MAAM,YAAY,OAAO,iCAAiC;EACxD,IAAI,aAAa;GACf,OAAO,QAAQ;EACjB;EACA,SAAS,MAAM,oBAAoB,aAAa,KAAA;EAChD,IAAI,mBAAmB;GACrB,OAAO,QAAQ;EACjB;CACF,CAAC;CAED,IAAI,WACF,OAAO,4BAA4B,CAAC,GAAG,WAAW,QAAQ,GAAG;CAG/D,MAAM,YAAY,OAAO,iCAAiC;EACxD,IAAI,aAAa;GACf,OAAO,QAAQ;EACjB;EACA,IAAI,mBAAmB;GACrB,OAAO,QAAQ;EACjB;CACF,CAAC;CAED,MAAM,iBAAoC,EACxC,CAAC,OAAO,YAAY;EAClB,QAAQ,QAAQ,wBAAwB,QAAQ,WAAA,CAC9C,OAAO,SACR,CAAC;CACJ,EACF;CAEA,MAAM,mBAAmB,iBAErB,IAAI,qBACF,QAAQ,YACR,QAAQ,iBAAiB,cACzB,QAAQ,GACV,CACJ;CAEA,MAAM,SAAS,YACX,OAAO,4BACL;EACE,oBACE,QAAQ,sBACR,MAAM,sBACN,IAAI,MAAM,uBAAuB,gBAAgB,QAAQ,KAAK;GAC5D,WAAW,QAAQ;GACnB,QAAQ,QAAQ;GAChB,aAAa,QAAQ;EACvB,CAAC;EACH,IAAI,mBAAmB;GACrB,OAAO,QAAQ,oBAAoB,iBAAiB;EACtD;EACA,gBAAgB,QAAQ;EACxB,WAAW,QAAQ;CACrB,GACA,WACA,QAAQ,GACV,IACA,KAAA;CAEJ,MAAM,UAAU,OAAO;CACvB,MAAM,oBAAoB,OAAO;CAEjC,OAAO;EACL,IAAI,kBAAkB;GACpB,OAAO,QAAQ;EACjB;EACA,kBAAkB;EAClB;EACA;EACA,IAAI,UAAU;GACZ,OAEK,WAAW,qBAAA,QACV;IACEJ,MAAM,YAAwC;KAC5C,oBAAoB,OAAO;IAC7B;IAHFC,UAKG;GACM,CAAA;EAIjB;CACF;AACF;AAEA,SAAgB,wBACd,OACA;CACA,MAAM,UAAU,WAAW,kBAAkB;CAE7C,MAAM,CAAC,WAAW,gBAAgB,aAAoC,MAAM,EAC1E,YAAY,KACd,CAAC;CAED,MAAM,OAAO,cACX,aACE,aACE,QAAQ,kBACR,mCACF,CAAC,CAAC,qBACF,wDACF,CAAC,CACC,OACA,aAAa,QAAQ,WAAW,4BAA4B,GAC5D,SACF,CACF;CAEA,MAAM,SAAS,qBAAqB;CAEpC,MAAM,SAAS,kBACb,WAAW,OAAO;EAChB,cAAc;EACd,IAAI,SAAS;GACX,OAAO,EAAE,cAAc,KAAK,aAAa;EAC3C;CACF,CAAC,CACH;CAEA,MAAM,MAAM,cAAe,MAAM,UAAU,OAAO,IAAI,KAAK,IAAI,GAAI;CACnE,MAAM,OAAO,cAAe,MAAM,UAAU,OAAO,IAAI,KAAK,IAAI,GAAI;CAEpE,OAAA,KACE,IAAA,KAAa,MAAA,KAEL,QAAA,MAU2B,OAGb,MAWhB,CAAA;AAEV;AAEA,SAAgB,gCACd,SACA,KACA,SACA,mBACA;CAmBA,OAAO;EAAE,MAlBI,QAAQ,YACjB,QAAQ,kBAAkB,sBACxB;GAAE,eAAe;GAAM;EAAI,GAC3B,QAAQ,SACV,IACA,KAAA;EAaW,MAXF,QAAQ,YACjB,QAAQ,kBAAkB,sBACxB;GACE;GACA,QAAQ;IAAE,cAAc;IAAM;IAAK,MAAM;GAAO;EAClD,GACA,QAAQ,WACR,OACF,IACA,KAAA;CAEgB;AACtB"}
@@ -0,0 +1,106 @@
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/Collection.tsx.
14
+ * Modified for Solid Aria: adapted collection ownership, contexts, accessibility primitives, and reactive properties for Solid 2; uses Solid class props.
15
+ * Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
16
+ */
17
+ import { assignRef } from "./utils.js";
18
+ import { createContext, untrack, useContext } from "solid-js";
19
+ import { memo, mergeProps } from "@solidjs/web";
20
+ import { Collection, createBranchComponent } from "@solid2-aria/core/collections/collection-builder";
21
+ import { createCachedChildren } from "@solid2-aria/core/collections/create-cached-children";
22
+ // src/collection.tsx
23
+ const SectionContext = createContext(null);
24
+ const SectionCollection = createBranchComponent("section", (props, ref, section) => {
25
+ const context = useContext(SectionContext);
26
+ if (!context) throw new Error("Section must be rendered in a collection.");
27
+ return context.render(props, ref, section, "solid2-aria-Section");
28
+ });
29
+ function CollectionNodes(props) {
30
+ const content = createCachedChildren({
31
+ children(node) {
32
+ if (node.type === "content") return null;
33
+ const rendered = node.render?.(node) ?? node.rendered;
34
+ return [
35
+ memo(() => {
36
+ return memo(() => {
37
+ return !!(props.renderDropIndicator && node.type === "item");
38
+ })() ? props.renderDropIndicator({
39
+ dropPosition: "before",
40
+ key: node.key,
41
+ type: "item"
42
+ }) : null;
43
+ }),
44
+ rendered,
45
+ memo(() => {
46
+ return memo(() => {
47
+ return !!(props.renderDropIndicator && node.type === "item");
48
+ })() ? renderAfterDropIndicators(props.collection, node, props.renderDropIndicator) : null;
49
+ })
50
+ ];
51
+ },
52
+ get dependencies() {
53
+ return [
54
+ props.collection,
55
+ props.parent,
56
+ props.renderDropIndicator
57
+ ];
58
+ },
59
+ get items() {
60
+ return props.parent ? props.collection.getChildren?.(props.parent.key) : props.collection;
61
+ }
62
+ });
63
+ return memo(content);
64
+ }
65
+ const DefaultCollectionRenderer = {
66
+ CollectionBranch: (props) => CollectionNodes(props),
67
+ CollectionRoot: (props) => CollectionNodes(props)
68
+ };
69
+ const CollectionRendererContext = createContext(DefaultCollectionRenderer);
70
+ function shouldRenderAfter(node, next) {
71
+ return next === null || node.parentKey !== next.parentKey && next.level < node.level;
72
+ }
73
+ function renderAfterDropIndicators(collection, node, renderDropIndicator) {
74
+ let keyAfter = collection.getKeyAfter(node.key);
75
+ let next = keyAfter === null || keyAfter === void 0 ? null : collection.getItem(keyAfter);
76
+ while (next && next.type !== "item") {
77
+ keyAfter = collection.getKeyAfter(next.key);
78
+ next = keyAfter === null || keyAfter === void 0 ? null : collection.getItem(keyAfter);
79
+ }
80
+ let sibling = node.nextKey === null || node.nextKey === void 0 ? null : collection.getItem(node.nextKey);
81
+ while (sibling && sibling.type !== "item") sibling = sibling.nextKey === null || sibling.nextKey === void 0 ? null : collection.getItem(sibling.nextKey);
82
+ const result = [];
83
+ if (!sibling) {
84
+ let current = node;
85
+ while (current?.type === "item" && shouldRenderAfter(current, next)) {
86
+ result.push(renderDropIndicator({
87
+ dropPosition: "after",
88
+ key: current.key,
89
+ type: "item"
90
+ }));
91
+ current = current.parentKey === null || current.parentKey === void 0 ? null : collection.getItem(current.parentKey);
92
+ }
93
+ }
94
+ return result;
95
+ }
96
+ function createPersistedKeys(focusedKey) {
97
+ return focusedKey === null || focusedKey === void 0 ? null : /* @__PURE__ */ new Set([focusedKey]);
98
+ }
99
+ function Section(props) {
100
+ return SectionCollection(mergeProps(props, { ref: (element) => {
101
+ assignRef(untrack(() => props.ref), element);
102
+ } }));
103
+ }
104
+ export { Collection, CollectionRendererContext, DefaultCollectionRenderer, Section, SectionContext, createPersistedKeys, renderAfterDropIndicators };
105
+
106
+ //# sourceMappingURL=collection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collection.js","names":["{props.renderDropIndicator && node.type === \"item\"\n ? props.renderDropIndicator({\n dropPosition: \"before\",\n key: node.key,\n type: \"item\",\n })\n : null}","{props.renderDropIndicator && node.type === \"item\"\n ? renderAfterDropIndicators(\n props.collection,\n node,\n props.renderDropIndicator\n )\n : null}","{content()}","<SectionCollection\n {...props}\n ref={(element: HTMLElement) => {\n assignRef(\n untrack(() => props.ref),\n element\n );\n }}\n />","ref={(element: HTMLElement) => {\n assignRef(\n untrack(() => props.ref),\n element\n );\n }}","_$memo","_$mergeProps"],"sources":["../../src/collection.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/Collection.tsx.\n * Modified for Solid Aria: adapted collection ownership, contexts, accessibility primitives, and reactive properties for Solid 2; uses Solid class props.\n * Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.\n */\n\nimport { createBranchComponent } from \"@solid2-aria/core/collections/collection-builder\";\nimport { createCachedChildren } from \"@solid2-aria/core/collections/create-cached-children\";\nimport type {\n CollectionBase,\n DropTargetDelegate,\n ItemDropTarget,\n Key,\n LayoutDelegate,\n Collection as ICollection,\n Node,\n SelectionBehavior,\n SelectionMode,\n SectionProps as SharedSectionProps,\n} from \"@solid2-aria/types-shared\";\nimport type { GlobalDOMAttributes } from \"@solid2-aria/types-shared-web\";\nimport type { JSX } from \"@solidjs/web\";\nimport { untrack, createContext, useContext } from \"solid-js\";\nimport type { Accessor, Component } from \"solid-js\";\n\nimport { assignRef } from \"./utils\";\nimport type { Ref, StyleProps } from \"./utils\";\n\nexport const SectionContext = createContext<SectionContextValue | null>(null);\n\nexport interface CollectionProps<T> extends Omit<\n CollectionBase<T>,\n \"children\"\n> {\n /** The contents of the collection. */\n children?: JSX.Element | ((item: T) => JSX.Element);\n /** Values that should invalidate the item cache when using dynamic collections. */\n // oxlint-disable-next-line typescript/no-explicit-any -- Collection contexts erase item types; each typed factory restores its owner's item contract.\n dependencies?: readonly any[];\n}\n\nexport interface ItemRenderProps {\n /**\n * Whether the item is currently hovered with a mouse.\n *\n * @selector [data-hovered]\n */\n isHovered: boolean;\n /**\n * Whether the item is currently in a pressed state.\n *\n * @selector [data-pressed]\n */\n isPressed: boolean;\n /**\n * Whether the item is currently selected.\n *\n * @selector [data-selected]\n */\n isSelected: boolean;\n /**\n * Whether the item is currently focused.\n *\n * @selector [data-focused]\n */\n isFocused: boolean;\n /**\n * Whether the item is currently keyboard focused.\n *\n * @selector [data-focus-visible]\n */\n isFocusVisible: boolean;\n /**\n * Whether the item is non-interactive, i.e. both selection and actions are disabled and the item\n * may not be focused. Dependent on `disabledKeys` and `disabledBehavior`.\n *\n * @selector [data-disabled]\n */\n isDisabled: boolean;\n /**\n * The type of selection that is allowed in the collection.\n *\n * @selector [data-selection-mode=\"single | multiple\"]\n */\n selectionMode: SelectionMode;\n /** The selection behavior for the collection. */\n selectionBehavior: SelectionBehavior;\n /**\n * Whether the item allows dragging.\n *\n * Note: This property is only available in collection components that support drag and drop.\n * @selector [data-allows-dragging]\n */\n allowsDragging?: boolean;\n /**\n * Whether the item is currently being dragged.\n *\n * Note: This property is only available in collection components that support drag and drop.\n * @selector [data-dragging]\n */\n isDragging?: boolean;\n /**\n * Whether the item is currently an active drop target.\n *\n * Note: This property is only available in collection components that support drag and drop.\n * @selector [data-drop-target]\n */\n isDropTarget?: boolean;\n}\n\nexport interface SectionProps<T>\n extends\n Omit<SharedSectionProps<T>, \"children\" | \"title\">,\n StyleProps,\n GlobalDOMAttributes<HTMLElement> {\n /** The unique id of the section. */\n id?: Key;\n /**\n * The object value that this section represents. When using dynamic collections, this is set\n * automatically.\n */\n value?: T;\n /** Static child items or a function to render children. */\n children?: JSX.Element | ((item: T) => JSX.Element);\n /** Values that should invalidate the item cache when using dynamic collections. */\n // oxlint-disable-next-line typescript/no-explicit-any -- Collection contexts erase item types; each typed factory restores its owner's item contract.\n dependencies?: readonly any[];\n}\n\nexport interface CollectionBranchProps {\n /** The collection of items to render. */\n collection: ICollection<Node<unknown>>;\n /** The parent node of the items to render. */\n parent: Node<unknown>;\n /** A function that renders a drop indicator between items. */\n renderDropIndicator?: (target: ItemDropTarget) => JSX.Element;\n}\n\nexport interface CollectionRootProps extends JSX.HTMLAttributes<HTMLElement> {\n /** The collection of items to render. */\n collection: ICollection<Node<unknown>>;\n /** A set of keys for items that should always be persisted in the DOM. */\n persistedKeys?: Set<Key> | null;\n /** A ref to the scroll container for the collection. */\n scrollRef?: Accessor<HTMLElement | null>;\n /** A function that renders a drop indicator between items. */\n renderDropIndicator?: (target: ItemDropTarget) => JSX.Element;\n}\n\nexport interface CollectionRenderer {\n /** Whether this is a virtualized collection. */\n isVirtualized?: boolean;\n /** A delegate object that provides layout information for items in the collection. */\n layoutDelegate?: LayoutDelegate;\n /** A delegate object that provides drop targets for pointer coordinates within the collection. */\n dropTargetDelegate?: DropTargetDelegate;\n /** A component that renders the root collection items. */\n CollectionRoot: Component<CollectionRootProps>;\n /** A component that renders the child collection items. */\n CollectionBranch: Component<CollectionBranchProps>;\n}\n\nexport interface SectionContextValue {\n name: string;\n render: (\n // oxlint-disable-next-line typescript/no-explicit-any -- Collection contexts erase item types; each typed factory restores its owner's item contract.\n props: SectionProps<any>,\n ref: Ref<HTMLElement>,\n node: Node<unknown>,\n defaultClass?: string\n ) => JSX.Element;\n}\n\nconst SectionCollection = createBranchComponent(\n \"section\",\n // oxlint-disable-next-line typescript/no-explicit-any -- Collection contexts erase item types; each typed factory restores its owner's item contract.\n (props: SectionProps<any>, ref: Ref<HTMLElement>, section: Node<any>) => {\n const context = useContext(SectionContext);\n\n if (!context) {\n throw new Error(\"Section must be rendered in a collection.\");\n }\n\n return context.render(props, ref, section, \"solid2-aria-Section\");\n }\n);\n\nfunction CollectionNodes(props: {\n collection: ICollection<Node<unknown>>;\n parent?: Node<unknown>;\n renderDropIndicator?: CollectionBranchProps[\"renderDropIndicator\"];\n}): JSX.Element {\n const content = createCachedChildren({\n children(node: Node<unknown>) {\n if (node.type === \"content\") {\n // oxlint-disable-next-line solid/components-return-once -- Static collection traversal and context registration are fixed when the owner is created.\n return null;\n }\n\n const rendered = node.render?.(node) ?? node.rendered;\n\n return (\n <>\n {props.renderDropIndicator && node.type === \"item\"\n ? props.renderDropIndicator({\n dropPosition: \"before\",\n key: node.key,\n type: \"item\",\n })\n : null}\n {rendered}\n {props.renderDropIndicator && node.type === \"item\"\n ? renderAfterDropIndicators(\n props.collection,\n node,\n props.renderDropIndicator\n )\n : null}\n </>\n );\n },\n get dependencies() {\n return [props.collection, props.parent, props.renderDropIndicator];\n },\n get items() {\n return props.parent\n ? props.collection.getChildren?.(props.parent.key)\n : props.collection;\n },\n });\n\n return <>{content()}</>;\n}\n\nexport const DefaultCollectionRenderer: CollectionRenderer = {\n CollectionBranch: (props) => <CollectionNodes {...props} />,\n CollectionRoot: (props) => <CollectionNodes {...props} />,\n};\n\nexport const CollectionRendererContext = createContext<CollectionRenderer>(\n DefaultCollectionRenderer\n);\n\nfunction shouldRenderAfter(\n node: Node<unknown>,\n next: Node<unknown> | null\n): boolean {\n return (\n next === null ||\n (node.parentKey !== next.parentKey && next.level < node.level)\n );\n}\n\nexport function renderAfterDropIndicators(\n collection: ICollection<Node<unknown>>,\n node: Node<unknown>,\n renderDropIndicator: (target: ItemDropTarget) => JSX.Element\n): JSX.Element {\n let keyAfter = collection.getKeyAfter(node.key);\n\n let next =\n keyAfter === null || keyAfter === undefined\n ? null\n : collection.getItem(keyAfter);\n\n while (next && next.type !== \"item\") {\n keyAfter = collection.getKeyAfter(next.key);\n next =\n keyAfter === null || keyAfter === undefined\n ? null\n : collection.getItem(keyAfter);\n }\n\n let sibling =\n node.nextKey === null || node.nextKey === undefined\n ? null\n : collection.getItem(node.nextKey);\n\n while (sibling && sibling.type !== \"item\") {\n sibling =\n sibling.nextKey === null || sibling.nextKey === undefined\n ? null\n : collection.getItem(sibling.nextKey);\n }\n\n const result: JSX.Element[] = [];\n\n if (!sibling) {\n let current: Node<unknown> | null = node;\n\n while (current?.type === \"item\" && shouldRenderAfter(current, next)) {\n result.push(\n renderDropIndicator({\n dropPosition: \"after\",\n key: current.key,\n type: \"item\",\n })\n );\n current =\n current.parentKey === null || current.parentKey === undefined\n ? null\n : collection.getItem(current.parentKey);\n }\n }\n\n return result;\n}\n\nexport function createPersistedKeys(focusedKey: Key | null): Set<Key> | null {\n return focusedKey === null || focusedKey === undefined\n ? null\n : new Set([focusedKey]);\n}\n\nexport { Collection } from \"@solid2-aria/core/collections/collection-builder\";\n\nexport function Section<T>(\n props: SectionProps<T> & { ref?: Ref<HTMLElement> }\n): JSX.Element {\n return (\n <SectionCollection\n {...props}\n ref={(element: HTMLElement) => {\n assignRef(\n untrack(() => props.ref),\n element\n );\n }}\n />\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAuCA,MAAa,iBAAiB,cAA0C,IAAI;AAiJ5E,MAAM,oBAAoB,sBACxB,YAEC,OAA0B,KAAuB,YAAuB;CACvE,MAAM,UAAU,WAAW,cAAc;CAEzC,IAAI,CAAC,SACH,MAAM,IAAI,MAAM,2CAA2C;CAG7D,OAAO,QAAQ,OAAO,OAAO,KAAK,SAAS,qBAAqB;AAClE,CACF;AAEA,SAAS,gBAAgB,OAIT;CACd,MAAM,UAAU,qBAAqB;EACnC,SAAS,MAAqB;GAC5B,IAAI,KAAK,SAAS,WAEhB,OAAO;GAGT,MAAM,WAAW,KAAK,SAAS,IAAI,KAAK,KAAK;GAE7C,OACE;IACEA,WAAAA;;MAAC,OAAA,CAAA,EAAA,MAAM,uBAAuB,KAAK,SAAS;KAMpC,CAAA,CAAC,CAAD,IALJ,MAAM,oBAAoB;MACxB,cAAc;MACd,KAAK,KAAK;MACV,MAAM;KACR,CAAC,IACD;IAAI,CAAA;IACP;IACDC,WAAAA;;MAAC,OAAA,CAAA,EAAA,MAAM,uBAAuB,KAAK,SAAS;KAMpC,CAAA,CAAC,CAAD,IALJ,0BACE,MAAM,YACN,MACA,MAAM,mBACR,IACA;IAAI,CAAA;GACR;EAEN;EACA,IAAI,eAAe;GACjB,OAAO;IAAC,MAAM;IAAY,MAAM;IAAQ,MAAM;GAAmB;EACnE;EACA,IAAI,QAAQ;GACV,OAAO,MAAM,SACT,MAAM,WAAW,cAAc,MAAM,OAAO,GAAG,IAC/C,MAAM;EACZ;CACF,CAAC;CAED,OAASC,KAAC,OAAS;AACrB;AAEA,MAAa,4BAAgD;CAC3D,mBAAmB,UAAA,gBAA+B,KAAQ;CAC1D,iBAAiB,UAAA,gBAA+B,KAAQ;AAC1D;AAEA,MAAa,4BAA4B,cACvC,yBACF;AAEA,SAAS,kBACP,MACA,MACS;CACT,OACE,SAAS,QACR,KAAK,cAAc,KAAK,aAAa,KAAK,QAAQ,KAAK;AAE5D;AAEA,SAAgB,0BACd,YACA,MACA,qBACa;CACb,IAAI,WAAW,WAAW,YAAY,KAAK,GAAG;CAE9C,IAAI,OACF,aAAa,QAAQ,aAAa,KAAA,IAC9B,OACA,WAAW,QAAQ,QAAQ;CAEjC,OAAO,QAAQ,KAAK,SAAS,QAAQ;EACnC,WAAW,WAAW,YAAY,KAAK,GAAG;EAC1C,OACE,aAAa,QAAQ,aAAa,KAAA,IAC9B,OACA,WAAW,QAAQ,QAAQ;CACnC;CAEA,IAAI,UACF,KAAK,YAAY,QAAQ,KAAK,YAAY,KAAA,IACtC,OACA,WAAW,QAAQ,KAAK,OAAO;CAErC,OAAO,WAAW,QAAQ,SAAS,QACjC,UACE,QAAQ,YAAY,QAAQ,QAAQ,YAAY,KAAA,IAC5C,OACA,WAAW,QAAQ,QAAQ,OAAO;CAG1C,MAAM,SAAwB,CAAC;CAE/B,IAAI,CAAC,SAAS;EACZ,IAAI,UAAgC;EAEpC,OAAO,SAAS,SAAS,UAAU,kBAAkB,SAAS,IAAI,GAAG;GACnE,OAAO,KACL,oBAAoB;IAClB,cAAc;IACd,KAAK,QAAQ;IACb,MAAM;GACR,CAAC,CACH;GACA,UACE,QAAQ,cAAc,QAAQ,QAAQ,cAAc,KAAA,IAChD,OACA,WAAW,QAAQ,QAAQ,SAAS;EAC5C;CACF;CAEA,OAAO;AACT;AAEA,SAAgB,oBAAoB,YAAyC;CAC3E,OAAO,eAAe,QAAQ,eAAe,KAAA,IACzC,uBACA,IAAI,IAAI,CAAC,UAAU,CAAC;AAC1B;AAIA,SAAgB,QACd,OACa;CACb,OAAA,kBACEC,WACM,OADN,EAEEC,MAAM,YAAyB;EAC7B,UACE,cAAc,MAAM,GAAG,GACvB,OACF;CACF,EACD,CAAA,CAAA;AAEL"}
@@ -0,0 +1,142 @@
1
+ /*
2
+ * Derived from Adobe React Spectrum: packages/react-aria-components/src/ColorArea.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 { mergeProps } from "@solid2-aria/core/utils/merge-props";
9
+ import { createContext, createSignal, merge, omit, untrack } from "solid-js";
10
+ import { memo, mergeProps as mergeProps$1 } from "@solidjs/web";
11
+ import { filterDOMProps } from "@solid2-aria/core/utils/filter-dom-props";
12
+ import { createColorArea } from "@solid2-aria/core/color/create-color-area";
13
+ import { createColorAreaState } from "@solid2-aria/stately/color/create-color-area-state";
14
+ // src/color-area.tsx
15
+ var _m$ = Symbol();
16
+ var _m$2 = Symbol();
17
+ var _m$3 = Symbol();
18
+ var _m$4 = Symbol();
19
+ var _d$ = {
20
+ get() {
21
+ return this[_m$].children;
22
+ },
23
+ enumerable: true,
24
+ configurable: true
25
+ };
26
+ function _P$(_p, _p2) {
27
+ this[_m$] = _p;
28
+ this.value = _p2;
29
+ Object.defineProperty(this, "children", _d$);
30
+ }
31
+ _P$.prototype = Object.prototype;
32
+ var _d$2 = {
33
+ get() {
34
+ const render = this[_m$];
35
+ const thumb = this[_m$2];
36
+ return InternalColorThumbContext(new _P$(render, thumb));
37
+ },
38
+ enumerable: true,
39
+ configurable: true
40
+ };
41
+ function _P$2(_p3, _p4, _p5) {
42
+ this[_m$] = _p3;
43
+ this[_m$2] = _p4;
44
+ this.value = _p5;
45
+ Object.defineProperty(this, "children", _d$2);
46
+ }
47
+ _P$2.prototype = Object.prototype;
48
+ var _d$3 = {
49
+ get() {
50
+ const props = this[_m$];
51
+ return memo(() => {
52
+ return !!(typeof props.slot === "string" && props.slot.length > 0);
53
+ })() ? props.slot : void 0;
54
+ },
55
+ enumerable: true,
56
+ configurable: true
57
+ };
58
+ var _d$4 = {
59
+ get() {
60
+ return this[_m$].isDisabled === true ? true : void 0;
61
+ },
62
+ enumerable: true,
63
+ configurable: true
64
+ };
65
+ var _d$5 = {
66
+ get() {
67
+ const render = this[_m$2];
68
+ const thumb = this[_m$3];
69
+ const state = this[_m$4];
70
+ return ColorAreaStateContext(new _P$2(render, thumb, state));
71
+ },
72
+ enumerable: true,
73
+ configurable: true
74
+ };
75
+ function _P$3(_p6, _p7, _p8, _p9, _p0) {
76
+ this[_m$] = _p6;
77
+ this[_m$2] = _p7;
78
+ this[_m$3] = _p8;
79
+ this[_m$4] = _p9;
80
+ this.ref = _p0;
81
+ Object.defineProperty(this, "slot", _d$3);
82
+ Object.defineProperty(this, "data-disabled", _d$4);
83
+ Object.defineProperty(this, "children", _d$5);
84
+ }
85
+ _P$3.prototype = Object.prototype;
86
+ const ColorAreaContext = createContext(null);
87
+ const ColorAreaStateContext = createContext(null);
88
+ function ColorArea(input) {
89
+ const [inputXRef, setInputXRef] = createSignal(null, { ownedWrite: true });
90
+ const [inputYRef, setInputYRef] = createSignal(null, { ownedWrite: true });
91
+ const [props, ref, setRef] = createContextProps(input, untrack(() => input.ref), ColorAreaContext);
92
+ const state = createColorAreaState(props);
93
+ const aria = createColorArea(mergeProps(props, {
94
+ containerRef: ref,
95
+ inputXRef,
96
+ inputYRef
97
+ }), state);
98
+ const render = createRenderProps(mergeProps(props, {
99
+ defaultClass: "solid2-aria-ColorArea",
100
+ get defaultStyle() {
101
+ const { style } = aria.colorAreaProps;
102
+ return typeof style === "object" ? style : void 0;
103
+ },
104
+ values: {
105
+ get isDisabled() {
106
+ return props.isDisabled ?? false;
107
+ },
108
+ state
109
+ }
110
+ }));
111
+ const thumb = {
112
+ inputXRef,
113
+ inputYRef,
114
+ get isDisabled() {
115
+ return props.isDisabled;
116
+ },
117
+ setInputXRef: (element) => {
118
+ setInputXRef(element);
119
+ },
120
+ setInputYRef: (element) => {
121
+ setInputYRef(element);
122
+ },
123
+ state,
124
+ get thumbProps() {
125
+ return aria.thumbProps;
126
+ },
127
+ get xInputProps() {
128
+ return aria.xInputProps;
129
+ },
130
+ get yInputProps() {
131
+ return aria.yInputProps;
132
+ }
133
+ };
134
+ return dom.div(mergeProps$1(() => {
135
+ return mergeProps(omit(filterDOMProps(props, { global: true }), "id"), merge(() => aria.colorAreaProps), render);
136
+ }, new _P$3(props, render, thumb, state, (element) => {
137
+ setRef(element);
138
+ })));
139
+ }
140
+ export { ColorArea, ColorAreaContext, ColorAreaStateContext };
141
+
142
+ //# sourceMappingURL=color-area.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"color-area.js","names":["typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined","dom.div","<dom.div\n {...mergeProps(\n omit(filterDOMProps(props, { global: true }), \"id\"),\n merge(() => aria.colorAreaProps),\n render\n )}\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-disabled={props.isDisabled === true ? true : undefined}\n >\n <ColorAreaStateContext value={state}>\n <InternalColorThumbContext value={thumb}>\n {render.children}\n </InternalColorThumbContext>\n </ColorAreaStateContext>\n </dom.div>","_$memo","_$mergeProps"],"sources":["../../src/color-area.tsx"],"sourcesContent":["/*\n * Derived from Adobe React Spectrum: packages/react-aria-components/src/ColorArea.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 { createColorArea } from \"@solid2-aria/core/color/create-color-area\";\nimport type { AriaColorAreaProps } from \"@solid2-aria/core/color/create-color-area\";\nimport { filterDOMProps } from \"@solid2-aria/core/utils/filter-dom-props\";\nimport { mergeProps } from \"@solid2-aria/core/utils/merge-props\";\nimport { createColorAreaState } from \"@solid2-aria/stately/color/create-color-area-state\";\nimport type { ColorAreaState } from \"@solid2-aria/stately/color/create-color-area-state\";\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 { dom, createContextProps, createRenderProps } from \"./utils\";\nimport type { ContextValue, RenderProps, SlotProps, Ref } from \"./utils\";\n\nexport interface ColorAreaRenderProps {\n isDisabled: boolean;\n state: ColorAreaState;\n}\n\nexport interface ColorAreaProps\n extends\n AriaColorAreaProps,\n RenderProps<ColorAreaRenderProps>,\n SlotProps,\n GlobalDOMAttributes<HTMLDivElement> {\n ref?: Ref<HTMLDivElement>;\n}\n\nexport const ColorAreaContext =\n createContext<ContextValue<Partial<ColorAreaProps>, HTMLDivElement>>(null);\n\nexport const ColorAreaStateContext = createContext<ColorAreaState | null>(null);\n\nexport function ColorArea(input: ColorAreaProps): JSX.Element {\n const [inputXRef, setInputXRef] = createSignal<HTMLInputElement | null>(\n null,\n { ownedWrite: true }\n );\n\n const [inputYRef, setInputYRef] = createSignal<HTMLInputElement | null>(\n null,\n { ownedWrite: true }\n );\n\n const [props, ref, setRef] = createContextProps(\n input,\n untrack(() => input.ref),\n ColorAreaContext\n );\n\n const state = createColorAreaState(props);\n\n const aria = createColorArea(\n mergeProps(props, { containerRef: ref, inputXRef, inputYRef }),\n state\n );\n\n const values: ColorAreaRenderProps = {\n get isDisabled() {\n return props.isDisabled ?? false;\n },\n state,\n };\n\n const render = createRenderProps(\n mergeProps(props, {\n defaultClass: \"solid2-aria-ColorArea\",\n get defaultStyle() {\n const { style } = aria.colorAreaProps;\n\n return typeof style === \"object\" ? style : undefined;\n },\n values,\n })\n );\n\n const thumb = {\n inputXRef,\n inputYRef,\n get isDisabled() {\n return props.isDisabled;\n },\n setInputXRef: (element: HTMLInputElement) => {\n setInputXRef(element);\n },\n setInputYRef: (element: HTMLInputElement) => {\n setInputYRef(element);\n },\n state,\n get thumbProps() {\n return aria.thumbProps;\n },\n get xInputProps() {\n return aria.xInputProps;\n },\n get yInputProps() {\n return aria.yInputProps;\n },\n };\n\n return (\n <dom.div\n {...mergeProps(\n omit(filterDOMProps(props, { global: true }), \"id\"),\n merge(() => aria.colorAreaProps),\n render\n )}\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-disabled={props.isDisabled === true ? true : undefined}\n >\n <ColorAreaStateContext value={state}>\n <InternalColorThumbContext value={thumb}>\n {render.children}\n </InternalColorThumbContext>\n </ColorAreaStateContext>\n </dom.div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;EA6HU,O,SAAC,CAAO;;;;;;;;;;;;;;;EADV,OAAA,0BAAA,IAAA,IACG,QAD+B,KAEP,CAAA;;;;;;;;;;;;;;;EAV7B,OACEA,WAAAA;GAAO,OAAA,CAAA,EAAA,OAAA,MAAM,SAAS,YAAY,MAAM,KAAK,SAAS;EAE1C,CAAA,CAAC,CAAD,IADR,MAAM,OACN,KAAA;;;;;;;EAEN,O,SAAe,CAAM,eAAe,OAAO,OAAO,KAAA;;;;;;;;;;EAElD,OAAA,sBAAA,IAAA,KAEK,QAD+B,OADN,KAIP,CAAA;;;;;;;;;;;;;;;;AA7F7B,MAAa,mBACX,cAAqE,IAAI;AAE3E,MAAa,wBAAwB,cAAqC,IAAI;AAE9E,SAAgB,UAAU,OAAoC;CAC5D,MAAM,CAAC,WAAW,gBAAgB,aAChC,MACA,EAAE,YAAY,KAAK,CACrB;CAEA,MAAM,CAAC,WAAW,gBAAgB,aAChC,MACA,EAAE,YAAY,KAAK,CACrB;CAEA,MAAM,CAAC,OAAO,KAAK,UAAU,mBAC3B,OACA,cAAc,MAAM,GAAG,GACvB,gBACF;CAEA,MAAM,QAAQ,qBAAqB,KAAK;CAExC,MAAM,OAAO,gBACX,WAAW,OAAO;EAAE,cAAc;EAAK;EAAW;CAAU,CAAC,GAC7D,KACF;CASA,MAAM,SAAS,kBACb,WAAW,OAAO;EAChB,cAAc;EACd,IAAI,eAAe;GACjB,MAAM,EAAE,UAAU,KAAK;GAEvB,OAAO,OAAO,UAAU,WAAW,QAAQ,KAAA;EAC7C;EACA,QAAA;GAdF,IAAI,aAAa;IACf,OAAO,MAAM,cAAc;GAC7B;GACA;EAWE;CACF,CAAC,CACH;CAEA,MAAM,QAAQ;EACZ;EACA;EACA,IAAI,aAAa;GACf,OAAO,MAAM;EACf;EACA,eAAe,YAA8B;GAC3C,aAAa,OAAO;EACtB;EACA,eAAe,YAA8B;GAC3C,aAAa,OAAO;EACtB;EACA;EACA,IAAI,aAAa;GACf,OAAO,KAAK;EACd;EACA,IAAI,cAAc;GAChB,OAAO,KAAK;EACd;EACA,IAAI,cAAc;GAChB,OAAO,KAAK;EACd;CACF;CAEA,OAAA,IACGC,IAADC,mBACE;EAAI,OAAA,WACF,KAAK,eAAe,OAAO,EAAE,QAAQ,KAAK,CAAC,GAAG,IAAI,GAClD,YAAY,KAAK,cAAc,GAC/B,MACF;CAAC,GALH,IAAA,KAUW,OAQJ,QAD+B,OADN,QAVxB,YAA4B;EAChC,OAAO,OAAO;CAChB,CAaO,CAAA,CAAA;AAEb"}