@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,597 @@
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/Menu.tsx.
14
+ * Modified for Solid Aria: adapted collection ownership, contexts, accessibility primitives, and reactive properties for Solid 2; uses Solid class props and press responders for custom triggers.
15
+ * Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
16
+ */
17
+ import { DEFAULT_SLOT, assignRef, createContextProps, createRenderProps, createSlot, createSlottedContext, dom } from "./utils.js";
18
+ import { FieldInputContext, SelectableCollectionContext } from "./autocomplete.js";
19
+ import { CollectionRendererContext, SectionContext } from "./collection.js";
20
+ import { TextContext } from "./text.js";
21
+ import { SelectionIndicatorContext } from "./selection-indicator.js";
22
+ import { HeaderContext } from "./header.js";
23
+ import { OverlayTriggerStateContext } from "./overlay-contexts.js";
24
+ import { PopoverContext } from "./popover.js";
25
+ import { KeyboardContext } from "./keyboard.js";
26
+ import { applyRef, createComponent, dynamic, getNextElement, insert, memo, mergeProps, ref, scope, template } from "@solidjs/web";
27
+ import { mergeProps as mergeProps$1 } from "@solid2-aria/core/utils/merge-props";
28
+ import { Show, createContext, createMemo, createSignal, merge, omit, untrack, useContext } from "solid-js";
29
+ import { BaseCollection, CollectionNode, ItemNode, LoaderNode, SectionNode } from "@solid2-aria/core/collections/base-collection";
30
+ import { Collection, CollectionBuilder, createBranchComponent, createLeafComponent } from "@solid2-aria/core/collections/collection-builder";
31
+ import { filterDOMProps } from "@solid2-aria/core/utils/filter-dom-props";
32
+ import { createHover } from "@solid2-aria/core/interactions/create-hover";
33
+ import { isTruthy } from "@solid2-aria/core/utils/truthy";
34
+ import { createIsHidden } from "@solid2-aria/core/collections/hidden";
35
+ import { createLoadMoreSentinel } from "@solid2-aria/core/utils/create-load-more-sentinel";
36
+ import { createMenuTriggerState } from "@solid2-aria/stately/menu/create-menu-trigger-state";
37
+ import { PressResponder } from "@solid2-aria/core/interactions/press-responder";
38
+ import { createMenu } from "@solid2-aria/core/menu/create-menu";
39
+ import { createMenuItem } from "@solid2-aria/core/menu/create-menu-item";
40
+ import { createMenuSection } from "@solid2-aria/core/menu/create-menu-section";
41
+ import { createMenuTrigger } from "@solid2-aria/core/menu/create-menu-trigger";
42
+ import { createSubmenuTrigger } from "@solid2-aria/core/menu/create-submenu-trigger";
43
+ import { createSubmenuTriggerState } from "@solid2-aria/stately/menu/create-submenu-trigger-state";
44
+ import { createMultipleSelectionState } from "@solid2-aria/stately/selection/create-multiple-selection-state";
45
+ import { SelectionManager } from "@solid2-aria/stately/selection/selection-manager";
46
+ import { createTreeState } from "@solid2-aria/stately/tree/create-tree-state";
47
+ // src/menu.tsx
48
+ var _tmpl$ = /* @__PURE__ */ template(`<div role=menuitem style=display:contents>`);
49
+ var _tmpl$2 = /* @__PURE__ */ template(`<div inert style=height:0;position:relative;width:0><div data-testid=loadMoreSentinel style=height:1px;position:absolute;width:1px>`);
50
+ const MenuContext = createContext(null);
51
+ const MenuStateContext = createContext(null);
52
+ const RootMenuTriggerStateContext = createContext(null);
53
+ const SelectionManagerContext = createContext(null);
54
+ const MenuItemContext = createContext(null);
55
+ const SubmenuContext = createContext(null);
56
+ const SubmenuCaptureContext = createContext(false);
57
+ function MenuTrigger(props) {
58
+ const [scrollRef, setScrollRef] = createSignal(null, { ownedWrite: true });
59
+ if (createIsHidden()) return null;
60
+ const state = createMenuTriggerState(props);
61
+ const [ref, setRef] = createSignal(null, { ownedWrite: true });
62
+ const aria = createMenuTrigger(mergeProps$1(props, { get type() {
63
+ return "menu";
64
+ } }), state, ref);
65
+ return createComponent(MenuContext, {
66
+ get value() {
67
+ return mergeProps$1(merge(() => aria.menuProps ?? {}), { ref: (element) => {
68
+ setScrollRef(element);
69
+ } });
70
+ },
71
+ get children() {
72
+ return createComponent(OverlayTriggerStateContext, {
73
+ value: state,
74
+ get children() {
75
+ return createComponent(RootMenuTriggerStateContext, {
76
+ value: state,
77
+ get children() {
78
+ return createComponent(PopoverContext, {
79
+ get value() {
80
+ return mergeProps$1({
81
+ get placement() {
82
+ return "bottom start";
83
+ },
84
+ scrollRef,
85
+ trigger: "MenuTrigger",
86
+ triggerRef: ref
87
+ }, {
88
+ get "aria-labelledby"() {
89
+ return aria.menuProps["aria-labelledby"];
90
+ },
91
+ get offset() {
92
+ return props.trigger === "contextMenu" ? 0 : void 0;
93
+ }
94
+ });
95
+ },
96
+ get children() {
97
+ return createComponent(PressResponder, mergeProps(() => {
98
+ return merge(() => aria.menuTriggerProps ?? {});
99
+ }, {
100
+ get isPressed() {
101
+ return state.isOpen;
102
+ },
103
+ ref: (element) => {
104
+ setRef(element);
105
+ },
106
+ get children() {
107
+ return props.children;
108
+ }
109
+ }));
110
+ }
111
+ });
112
+ }
113
+ });
114
+ }
115
+ });
116
+ }
117
+ });
118
+ }
119
+ function Menu(input) {
120
+ const [props, , setRef] = createContextProps(input, untrack(() => input.ref), MenuContext);
121
+ return createComponent(CollectionBuilder, {
122
+ createCollection: () => new BaseCollection(),
123
+ get content() {
124
+ return createComponent(Collection, props);
125
+ },
126
+ children: (collection) => createComponent(MenuInner, {
127
+ props,
128
+ collection,
129
+ menuRef: setRef
130
+ })
131
+ });
132
+ }
133
+ function MenuInner(input) {
134
+ const [props, ref, setRef] = createContextProps(untrack(() => input.props), untrack(() => input.menuRef), SelectableCollectionContext);
135
+ const renderer = useContext(CollectionRendererContext);
136
+ const Root = renderer.CollectionRoot;
137
+ const state = createTreeState(mergeProps$1(omit(props, "items", "filter"), {
138
+ children: void 0,
139
+ get collection() {
140
+ return props.filter ? input.collection.filter(props.filter) : input.collection;
141
+ }
142
+ }));
143
+ const trigger = useContext(RootMenuTriggerStateContext) ?? createMenuTriggerState({});
144
+ const aria = createMenu(mergeProps$1(omit(props, "items", "children"), {
145
+ get isVirtualized() {
146
+ return renderer.isVirtualized;
147
+ },
148
+ get onClose() {
149
+ return props.onClose ?? trigger.close;
150
+ }
151
+ }), state, ref);
152
+ const render = createRenderProps(mergeProps$1(props, {
153
+ children: void 0,
154
+ defaultClass: "solid2-aria-Menu",
155
+ values: { get isEmpty() {
156
+ return state.collection.size === 0;
157
+ } }
158
+ }));
159
+ return createComponent(dom.div, mergeProps(() => {
160
+ return mergeProps$1(filterDOMProps(props, { global: true }), render, merge(() => aria.menuProps ?? {}));
161
+ }, {
162
+ ref: (element) => {
163
+ setRef(element);
164
+ },
165
+ get slot() {
166
+ return props.slot ?? void 0;
167
+ },
168
+ get "data-empty"() {
169
+ return state.collection.size === 0 || void 0;
170
+ },
171
+ get children() {
172
+ return [createComponent(MenuStateContext, {
173
+ value: state,
174
+ get children() {
175
+ return createComponent(SelectionManagerContext, {
176
+ get value() {
177
+ return untrack(() => state.selectionManager);
178
+ },
179
+ get children() {
180
+ return createComponent(RootMenuTriggerStateContext, {
181
+ value: trigger,
182
+ get children() {
183
+ return createComponent(SubmenuContext, {
184
+ value: {
185
+ parentMenuRef: ref,
186
+ get shouldUseVirtualFocus() {
187
+ return props.shouldUseVirtualFocus;
188
+ }
189
+ },
190
+ get children() {
191
+ return createComponent(MenuItemContext, {
192
+ value: { get shouldCloseOnSelect() {
193
+ return props.shouldCloseOnSelect;
194
+ } },
195
+ get children() {
196
+ return createComponent(SelectableCollectionContext, {
197
+ value: null,
198
+ get children() {
199
+ return createComponent(FieldInputContext, {
200
+ value: null,
201
+ get children() {
202
+ return createComponent(SectionContext, {
203
+ value: {
204
+ name: "MenuSection",
205
+ render: (sectionProps, sectionRef, node, defaultClass) => MenuSectionInner(sectionProps, sectionRef, node, defaultClass)
206
+ },
207
+ get children() {
208
+ return createComponent(Root, {
209
+ get collection() {
210
+ return state.collection;
211
+ },
212
+ scrollRef: ref
213
+ });
214
+ }
215
+ });
216
+ }
217
+ });
218
+ }
219
+ });
220
+ }
221
+ });
222
+ }
223
+ });
224
+ }
225
+ });
226
+ }
227
+ });
228
+ }
229
+ }), memo(() => {
230
+ return memo(() => {
231
+ return !!(state.collection.size === 0 && props.renderEmptyState);
232
+ })() ? (() => {
233
+ var _el$ = getNextElement(_tmpl$);
234
+ insert(_el$, scope(() => {
235
+ return props.renderEmptyState();
236
+ }));
237
+ return _el$;
238
+ })() : null;
239
+ })];
240
+ }
241
+ }));
242
+ }
243
+ var GroupSelectionManager = class extends SelectionManager {
244
+ parent;
245
+ constructor(parent, state) {
246
+ super(parent.collection, state);
247
+ this.parent = parent;
248
+ }
249
+ get focusedKey() {
250
+ return this.parent.focusedKey;
251
+ }
252
+ get isFocused() {
253
+ return this.parent.isFocused;
254
+ }
255
+ setFocusedKey(key, strategy) {
256
+ this.parent.setFocusedKey(key, strategy);
257
+ }
258
+ setFocused(value) {
259
+ this.parent.setFocused(value);
260
+ }
261
+ get childFocusStrategy() {
262
+ return this.parent.childFocusStrategy;
263
+ }
264
+ };
265
+ function MenuSectionInner(props, ref, node, defaultClass = "solid2-aria-MenuSection") {
266
+ const state = useContext(MenuStateContext);
267
+ const parent = useContext(SelectionManagerContext);
268
+ if (!state || !parent) throw new Error("MenuSection must be rendered in a Menu.");
269
+ const Branch = useContext(CollectionRendererContext).CollectionBranch;
270
+ const [registerHeading, heading] = createSlot();
271
+ const aria = createMenuSection({
272
+ get "aria-label"() {
273
+ return props["aria-label"] ?? void 0;
274
+ },
275
+ get heading() {
276
+ return heading();
277
+ }
278
+ });
279
+ const selection = createMultipleSelectionState(props);
280
+ const manager = createMemo(() => props.selectionMode === null || props.selectionMode === void 0 ? parent : new GroupSelectionManager(parent, selection));
281
+ const context = createSlottedContext(MenuItemContext);
282
+ return createComponent(dom.section, mergeProps(() => {
283
+ return mergeProps$1(omit(filterDOMProps(props, { global: true }), "id"), merge(() => aria.groupProps ?? {}));
284
+ }, {
285
+ ref(r$) {
286
+ var _ref$ = ref;
287
+ typeof _ref$ === "function" || Array.isArray(_ref$) ? applyRef(_ref$, r$) : ref = r$;
288
+ },
289
+ get render() {
290
+ return props.render;
291
+ },
292
+ get "class"() {
293
+ return props.class ?? defaultClass;
294
+ },
295
+ get style() {
296
+ return props.style;
297
+ },
298
+ get children() {
299
+ return createComponent(HeaderContext, {
300
+ get value() {
301
+ return mergeProps$1(merge(() => aria.headingProps ?? {}), { registerSlot: registerHeading });
302
+ },
303
+ get children() {
304
+ return createComponent(SelectionManagerContext, {
305
+ get value() {
306
+ return untrack(manager);
307
+ },
308
+ get children() {
309
+ return createComponent(MenuItemContext, {
310
+ value: { get shouldCloseOnSelect() {
311
+ return props.shouldCloseOnSelect ?? context?.shouldCloseOnSelect;
312
+ } },
313
+ get children() {
314
+ return createComponent(Branch, {
315
+ get collection() {
316
+ return state.collection;
317
+ },
318
+ parent: node
319
+ });
320
+ }
321
+ });
322
+ }
323
+ });
324
+ }
325
+ });
326
+ }
327
+ }));
328
+ }
329
+ const MenuSectionCollection = createBranchComponent(SectionNode, MenuSectionInner);
330
+ const MenuItemCollection = createLeafComponent(ItemNode, (input, forwardedRef, node) => {
331
+ const [props, ref, setRef] = createContextProps(input, forwardedRef, MenuItemContext);
332
+ const context = createSlottedContext(MenuItemContext);
333
+ const state = useContext(MenuStateContext);
334
+ if (!state) throw new Error("MenuItem must be rendered in a Menu.");
335
+ const manager = useContext(SelectionManagerContext) ?? state.selectionManager;
336
+ const renderer = useContext(CollectionRendererContext);
337
+ const aria = createMenuItem(mergeProps$1(omit(props, "id", "onAction"), context ? omit(context, "id", "onAction") : void 0, {
338
+ get isVirtualized() {
339
+ return renderer.isVirtualized;
340
+ },
341
+ get key() {
342
+ return node.key;
343
+ },
344
+ selectionManager: manager
345
+ }), state, ref);
346
+ const hover = createHover(mergeProps$1(props, { get isDisabled() {
347
+ return aria.isDisabled;
348
+ } }));
349
+ const values = {
350
+ get hasSubmenu() {
351
+ return !!context?.["aria-haspopup"];
352
+ },
353
+ get isDisabled() {
354
+ return aria.isDisabled;
355
+ },
356
+ get isFocusVisible() {
357
+ return aria.isFocusVisible;
358
+ },
359
+ get isFocused() {
360
+ return aria.isFocused;
361
+ },
362
+ get isHovered() {
363
+ return hover.isHovered;
364
+ },
365
+ get isOpen() {
366
+ return context?.isOpen === true;
367
+ },
368
+ get isPressed() {
369
+ return aria.isPressed;
370
+ },
371
+ get isSelected() {
372
+ return aria.isSelected;
373
+ },
374
+ get selectionBehavior() {
375
+ return manager.selectionBehavior;
376
+ },
377
+ get selectionMode() {
378
+ return manager.selectionMode;
379
+ }
380
+ };
381
+ const render = createRenderProps(mergeProps$1(props, {
382
+ defaultClass: "solid2-aria-MenuItem",
383
+ values
384
+ }));
385
+ const Element = dynamic(() => isTruthy(props.href) ? dom.a : dom.div);
386
+ return createComponent(Element, mergeProps(() => {
387
+ return mergeProps$1(omit(filterDOMProps(props, { global: true }), "id", "onClick"), render, merge(() => aria.menuItemProps ?? {}), merge(() => hover.hoverProps ?? {}));
388
+ }, {
389
+ ref: (element) => {
390
+ setRef(element);
391
+ },
392
+ get "data-selected"() {
393
+ return aria.isSelected || void 0;
394
+ },
395
+ get "data-disabled"() {
396
+ return aria.isDisabled || void 0;
397
+ },
398
+ get "data-hovered"() {
399
+ return hover.isHovered || void 0;
400
+ },
401
+ get "data-focused"() {
402
+ return aria.isFocused || void 0;
403
+ },
404
+ get "data-focus-visible"() {
405
+ return aria.isFocusVisible || void 0;
406
+ },
407
+ get "data-pressed"() {
408
+ return aria.isPressed || void 0;
409
+ },
410
+ get "data-has-submenu"() {
411
+ return values.hasSubmenu || void 0;
412
+ },
413
+ get "data-open"() {
414
+ return values.isOpen || void 0;
415
+ },
416
+ get "data-selection-mode"() {
417
+ return memo(() => {
418
+ return manager.selectionMode === "none";
419
+ })() ? void 0 : manager.selectionMode;
420
+ },
421
+ get children() {
422
+ return createComponent(TextContext, {
423
+ value: { slots: {
424
+ get [DEFAULT_SLOT]() {
425
+ return aria.labelProps;
426
+ },
427
+ get description() {
428
+ return aria.descriptionProps;
429
+ },
430
+ get label() {
431
+ return aria.labelProps;
432
+ }
433
+ } },
434
+ get children() {
435
+ return createComponent(KeyboardContext, {
436
+ get value() {
437
+ return aria.keyboardShortcutProps;
438
+ },
439
+ get children() {
440
+ return createComponent(SelectionIndicatorContext, {
441
+ value: { get isSelected() {
442
+ return aria.isSelected;
443
+ } },
444
+ get children() {
445
+ return render.children;
446
+ }
447
+ });
448
+ }
449
+ });
450
+ }
451
+ });
452
+ }
453
+ }));
454
+ });
455
+ var SubmenuTriggerNode = class extends CollectionNode {
456
+ static type = "submenutrigger";
457
+ filter(collection, target, filter) {
458
+ const item = this.firstChildKey === null || this.firstChildKey === void 0 ? null : collection.getItem(this.firstChildKey);
459
+ if (item && filter(item.textValue, this)) {
460
+ const clone = this.clone();
461
+ target.addDescendants(clone, collection);
462
+ return clone;
463
+ }
464
+ return null;
465
+ }
466
+ };
467
+ const SubmenuTriggerCollection = createBranchComponent(SubmenuTriggerNode, (props, forwardedRef, item) => {
468
+ const [submenuRef, setSubmenuRef] = createSignal(null, { ownedWrite: true });
469
+ const state = useContext(MenuStateContext);
470
+ const root = useContext(RootMenuTriggerStateContext);
471
+ const parent = useContext(SubmenuContext);
472
+ if (!state || !root || !parent) throw new Error("SubmenuTrigger must be rendered in a Menu.");
473
+ const Branch = useContext(CollectionRendererContext).CollectionBranch;
474
+ const trigger = createSubmenuTriggerState({ triggerKey: item.key }, root);
475
+ const [itemRef, setItemRef] = createSignal(null, { ownedWrite: true });
476
+ const aria = createSubmenuTrigger(mergeProps$1(props, parent, { submenuRef }), trigger, itemRef);
477
+ return createComponent(MenuItemContext, {
478
+ get value() {
479
+ return mergeProps$1(merge(() => aria.submenuTriggerProps ?? {}), {
480
+ onAction: void 0,
481
+ ref: (element) => {
482
+ setItemRef(element);
483
+ }
484
+ });
485
+ },
486
+ get children() {
487
+ return createComponent(MenuContext, {
488
+ get value() {
489
+ return mergeProps$1(merge(() => aria.submenuProps ?? {}), { ref: (element) => {
490
+ setSubmenuRef(element);
491
+ } });
492
+ },
493
+ get children() {
494
+ return createComponent(OverlayTriggerStateContext, {
495
+ value: trigger,
496
+ get children() {
497
+ return createComponent(PopoverContext, {
498
+ get value() {
499
+ return mergeProps$1(merge(() => aria.popoverProps ?? {}), {
500
+ get "aria-labelledby"() {
501
+ return aria.submenuProps["aria-labelledby"];
502
+ },
503
+ get placement() {
504
+ return "end top";
505
+ },
506
+ trigger: "SubmenuTrigger",
507
+ triggerRef: itemRef
508
+ });
509
+ },
510
+ get children() {
511
+ return [createComponent(Branch, {
512
+ get collection() {
513
+ return state.collection;
514
+ },
515
+ parent: item
516
+ }), createComponent(SubmenuCaptureContext, {
517
+ value: true,
518
+ get children() {
519
+ return props.renderPopover();
520
+ }
521
+ })];
522
+ }
523
+ });
524
+ }
525
+ });
526
+ }
527
+ });
528
+ }
529
+ });
530
+ }, (props) => untrack(() => props.children[0]));
531
+ const MenuLoadMoreItemCollection = createLeafComponent(LoaderNode, (props, forwardedRef, _node) => {
532
+ const state = useContext(MenuStateContext);
533
+ if (!state) throw new Error("MenuLoadMoreItem must be rendered in a Menu.");
534
+ const [sentinel, setSentinel] = createSignal(null, { ownedWrite: true });
535
+ createLoadMoreSentinel(mergeProps$1(props, { get collection() {
536
+ return state.collection;
537
+ } }), sentinel);
538
+ const render = createRenderProps(mergeProps$1(props, {
539
+ defaultClass: "solid2-aria-MenuLoadingIndicator",
540
+ values: void 0
541
+ }));
542
+ return [(() => {
543
+ var _el$2 = getNextElement(_tmpl$2);
544
+ var _el$3 = _el$2.firstChild;
545
+ ref(() => {
546
+ return (element) => {
547
+ setSentinel(element);
548
+ };
549
+ }, _el$3);
550
+ return _el$2;
551
+ })(), createComponent(Show, {
552
+ get when() {
553
+ return props.isLoading;
554
+ },
555
+ get children() {
556
+ return createComponent(dom.div, mergeProps(() => {
557
+ return filterDOMProps(props, { global: true });
558
+ }, render, {
559
+ ref: (element) => {
560
+ assignRef(forwardedRef, element);
561
+ },
562
+ role: "menuitem",
563
+ tabindex: -1,
564
+ get children() {
565
+ return render.children;
566
+ }
567
+ }));
568
+ }
569
+ })];
570
+ });
571
+ function MenuSection(props) {
572
+ return createComponent(MenuSectionCollection, mergeProps(props, { ref: (element) => {
573
+ assignRef(untrack(() => props.ref), element);
574
+ } }));
575
+ }
576
+ function MenuItem(props) {
577
+ if (useContext(SubmenuCaptureContext) && !createIsHidden()) return null;
578
+ return createComponent(MenuItemCollection, mergeProps(props, { ref: (element) => {
579
+ assignRef(untrack(() => props.ref), element);
580
+ } }));
581
+ }
582
+ function SubmenuTrigger(props) {
583
+ return createComponent(SubmenuTriggerCollection, mergeProps(props, {
584
+ renderPopover: () => props.children[1],
585
+ ref: (element) => {
586
+ assignRef(untrack(() => props.ref), element);
587
+ }
588
+ }));
589
+ }
590
+ function MenuLoadMoreItem(props) {
591
+ return createComponent(MenuLoadMoreItemCollection, mergeProps(props, { ref: (element) => {
592
+ assignRef(untrack(() => props.ref), element);
593
+ } }));
594
+ }
595
+ export { Menu, MenuContext, MenuItem, MenuLoadMoreItem, MenuSection, MenuStateContext, MenuTrigger, RootMenuTriggerStateContext, SubmenuTrigger };
596
+
597
+ //# sourceMappingURL=menu.js.map