@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,316 @@
1
+ /*
2
+ * Copyright 2026 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/NavigationTree.tsx.
14
+ * Modified for Solid Aria: route synchronization, link slots and render values use Solid contexts 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, createContextProps, dom } from "./utils.js";
18
+ import { LinkContext } from "./link.js";
19
+ import { Tree, TreeHeader, TreeItem, TreeItemContent, TreeSection } from "./tree.js";
20
+ import { mergeProps } from "@solid2-aria/core/utils/merge-props";
21
+ import { createContext, createEffect, createSignal, merge, omit, untrack, useContext } from "solid-js";
22
+ import { memo, mergeProps as mergeProps$1 } from "@solidjs/web";
23
+ import { isTruthy } from "@solid2-aria/core/utils/truthy";
24
+ import { isPresent } from "@solid2-aria/core/utils/is-present";
25
+ import { getNodeProps } from "@solid2-aria/stately/utils/get-node-props";
26
+ // src/navigation-tree.tsx
27
+ var _m$ = Symbol();
28
+ var _m$2 = Symbol();
29
+ var _m$3 = Symbol();
30
+ var _d$ = {
31
+ get() {
32
+ return this[_m$].class ?? "solid2-aria-NavigationTree";
33
+ },
34
+ enumerable: true,
35
+ configurable: true
36
+ };
37
+ function _P$(_p, _p2, _p3, _p4) {
38
+ this[_m$] = _p;
39
+ this.ref = _p2;
40
+ Object.defineProperty(this, "class", _d$);
41
+ this.selectionMode = _p3;
42
+ this.keyboardNavigationBehavior = _p4;
43
+ }
44
+ _P$.prototype = Object.prototype;
45
+ var _d$2 = {
46
+ get() {
47
+ const props = this[_m$];
48
+ const setRef = this[_m$2];
49
+ return Tree(mergeProps$1(() => {
50
+ return omit(props, "selectedRoute");
51
+ }, new _P$(props, (element) => {
52
+ setRef(element);
53
+ }, "none", "tab")));
54
+ },
55
+ enumerable: true,
56
+ configurable: true
57
+ };
58
+ function _P$2(_p5, _p6, _p7) {
59
+ this[_m$] = _p5;
60
+ this[_m$2] = _p6;
61
+ this.value = _p7;
62
+ Object.defineProperty(this, "children", _d$2);
63
+ }
64
+ _P$2.prototype = Object.prototype;
65
+ var _d$3 = {
66
+ get() {
67
+ return this[_m$].children;
68
+ },
69
+ enumerable: true,
70
+ configurable: true
71
+ };
72
+ function _P$3(_p8, _p9) {
73
+ this[_m$] = _p8;
74
+ this.value = _p9;
75
+ Object.defineProperty(this, "children", _d$3);
76
+ }
77
+ _P$3.prototype = Object.prototype;
78
+ var _d$4 = {
79
+ get() {
80
+ const props = this[_m$];
81
+ return isTruthy(props.href) ? "child" : void 0;
82
+ },
83
+ enumerable: true,
84
+ configurable: true
85
+ };
86
+ var _d$5 = {
87
+ get() {
88
+ return this[_m$2].isCurrent || void 0;
89
+ },
90
+ enumerable: true,
91
+ configurable: true
92
+ };
93
+ function _P$4(_p0, _p1, _p10, _p11, _p12, _p13, _p14) {
94
+ this[_m$] = _p0;
95
+ this[_m$2] = _p1;
96
+ this.ref = _p10;
97
+ Object.defineProperty(this, "focusMode", _d$4);
98
+ this.allowsArrowNavigation = _p11;
99
+ Object.defineProperty(this, "data-current", _d$5);
100
+ this.class = _p12;
101
+ this.style = _p13;
102
+ this.render = _p14;
103
+ }
104
+ _P$4.prototype = Object.prototype;
105
+ var _d$6 = {
106
+ get() {
107
+ const props = this[_m$];
108
+ const link = this[_m$2];
109
+ const values = this[_m$3];
110
+ return TreeItem(mergeProps$1(() => {
111
+ return omit(props, "class", "style", "render", "ref");
112
+ }, new _P$4(props, link, (element) => {
113
+ assignRef(untrack(() => props.ref), element);
114
+ }, true, (state) => {
115
+ const classValue = props.class;
116
+ return typeof classValue === "function" ? classValue(mergeProps(values(state), { get defaultClass() {
117
+ return state.defaultClass;
118
+ } })) : classValue ?? "solid2-aria-NavigationTreeItem";
119
+ }, (state) => {
120
+ if (typeof props.style === "function") return props.style(mergeProps(values(state), { get defaultStyle() {
121
+ return state.defaultStyle;
122
+ } }));
123
+ return typeof props.style === "object" ? props.style : void 0;
124
+ }, (domProps, state) => {
125
+ const value = values(state);
126
+ const content = NavigationTreeItemStateContext(new _P$3(domProps, value));
127
+ const forwarded = mergeProps(domProps, {
128
+ children: content,
129
+ "data-current": value.isCurrent || void 0,
130
+ "data-current-ancestor": value.isCurrentAncestor || void 0,
131
+ "data-focus-visible": value.isFocusVisible || void 0
132
+ });
133
+ return props.render ? props.render(forwarded, value) : dom.div(forwarded);
134
+ })));
135
+ },
136
+ enumerable: true,
137
+ configurable: true
138
+ };
139
+ function _P$5(_p15, _p16, _p17, _p18) {
140
+ this[_m$] = _p15;
141
+ this[_m$2] = _p16;
142
+ this[_m$3] = _p17;
143
+ this.value = _p18;
144
+ Object.defineProperty(this, "children", _d$6);
145
+ }
146
+ _P$5.prototype = Object.prototype;
147
+ var _d$7 = {
148
+ get() {
149
+ return this[_m$].children;
150
+ },
151
+ enumerable: true,
152
+ configurable: true
153
+ };
154
+ function _P$6(_p19, _p20, _p21, _p22) {
155
+ this[_m$] = _p19;
156
+ this.tree = _p20;
157
+ this.link = _p21;
158
+ this.route = _p22;
159
+ Object.defineProperty(this, "children", _d$7);
160
+ }
161
+ _P$6.prototype = Object.prototype;
162
+ var _d$8 = {
163
+ get() {
164
+ const props = this[_m$];
165
+ return mergeProps(omit(props.link, "isCurrent", "isLinkFocused", "setLinkFocused"), {
166
+ get "aria-current"() {
167
+ return props.link.isCurrent ? "page" : void 0;
168
+ },
169
+ get onFocusChange() {
170
+ return props.link.setLinkFocused;
171
+ },
172
+ onPress: () => {
173
+ if (!isTruthy(props.link.href) && props.tree.hasChildItems) props.tree.state.toggleKey(props.tree.id);
174
+ }
175
+ });
176
+ },
177
+ enumerable: true,
178
+ configurable: true
179
+ };
180
+ var _d$9 = {
181
+ get() {
182
+ const props = this[_m$];
183
+ const values = this[_m$2];
184
+ return memo(() => {
185
+ return typeof props.children === "function";
186
+ })() ? props.children(values) : props.children;
187
+ },
188
+ enumerable: true,
189
+ configurable: true
190
+ };
191
+ function _P$7(_p23, _p24) {
192
+ this[_m$] = _p23;
193
+ this[_m$2] = _p24;
194
+ Object.defineProperty(this, "value", _d$8);
195
+ Object.defineProperty(this, "children", _d$9);
196
+ }
197
+ _P$7.prototype = Object.prototype;
198
+ const NavigationTreeContext = createContext(null);
199
+ const NavigationTreeItemStateContext = createContext({ isCurrentAncestor: false });
200
+ const RouteContext = createContext({});
201
+ const ItemLinkContext = createContext({
202
+ isCurrent: false,
203
+ isLinkFocused: false,
204
+ setLinkFocused: () => {}
205
+ });
206
+ function NavigationTree(input) {
207
+ const [props, , setRef] = createContextProps(input, untrack(() => input.ref), NavigationTreeContext);
208
+ return RouteContext(new _P$2(props, setRef, {
209
+ get selectedRoute() {
210
+ return props.selectedRoute;
211
+ },
212
+ syncedRoute: void 0
213
+ }));
214
+ }
215
+ function selectedAncestors(state, route) {
216
+ const result = /* @__PURE__ */ new Set();
217
+ if (!isPresent(route)) return result;
218
+ for (const key of state.collection.getKeys()) if (getNodeProps(state.collection.getItem(key)).href === route) {
219
+ let node = state.collection.getItem(key);
220
+ while (isPresent(node?.parentKey) && !result.has(node.parentKey)) {
221
+ result.add(node.parentKey);
222
+ node = state.collection.getItem(node.parentKey);
223
+ }
224
+ break;
225
+ }
226
+ return result;
227
+ }
228
+ function NavigationTreeItem(props) {
229
+ const route = useContext(RouteContext);
230
+ const [focused, setFocused] = createSignal(false);
231
+ const link = mergeProps(props, {
232
+ get isCurrent() {
233
+ return isTruthy(props.href) && props.href === route.selectedRoute;
234
+ },
235
+ get isLinkFocused() {
236
+ return focused();
237
+ },
238
+ setLinkFocused: setFocused
239
+ });
240
+ const values = (tree) => mergeProps(tree, {
241
+ get isCurrent() {
242
+ return link.isCurrent;
243
+ },
244
+ get isCurrentAncestor() {
245
+ return selectedAncestors(tree.state, route.selectedRoute).has(tree.id);
246
+ },
247
+ get isFocusVisible() {
248
+ return tree.isFocusVisible || tree.isFocusVisibleWithin && focused();
249
+ }
250
+ });
251
+ return ItemLinkContext(new _P$5(props, link, values, link));
252
+ }
253
+ function NavigationTreeItemContent(props) {
254
+ const link = useContext(ItemLinkContext);
255
+ const route = useContext(RouteContext);
256
+ return TreeItemContent({ children: (tree) => NavigationTreeContentInner(new _P$6(props, tree, link, route)) });
257
+ }
258
+ function NavigationTreeContentInner(props) {
259
+ const ancestor = useContext(NavigationTreeItemStateContext);
260
+ createEffect(() => {
261
+ const routeContext = props.route;
262
+ const route = routeContext.selectedRoute;
263
+ const { state } = props.tree;
264
+ const manager = state.selectionManager;
265
+ let target;
266
+ if (isPresent(route) && routeContext.syncedRoute !== route) {
267
+ for (const key of state.collection.getKeys()) if (getNodeProps(state.collection.getItem(key)).href === route) {
268
+ target = key;
269
+ let node = state.collection.getItem(key);
270
+ while (isPresent(node?.parentKey)) {
271
+ const parent = state.collection.getItem(node.parentKey);
272
+ if (parent?.type === "item" && !state.expandedKeys.has(node.parentKey)) target = node.parentKey;
273
+ node = parent;
274
+ }
275
+ break;
276
+ }
277
+ }
278
+ return {
279
+ manager,
280
+ route,
281
+ routeContext,
282
+ target
283
+ };
284
+ }, (next) => {
285
+ if (next.target !== void 0 && isPresent(next.route)) {
286
+ next.routeContext.syncedRoute = next.route;
287
+ next.manager.setFocusedKey(next.target);
288
+ }
289
+ });
290
+ const values = mergeProps(merge(() => props.tree ?? {}), {
291
+ defaultChildren: void 0,
292
+ get isCurrent() {
293
+ return props.link.isCurrent;
294
+ },
295
+ get isCurrentAncestor() {
296
+ return ancestor.isCurrentAncestor;
297
+ },
298
+ get isFocusVisible() {
299
+ return props.tree.isFocusVisible || props.tree.isFocusVisibleWithin && props.link.isLinkFocused;
300
+ }
301
+ });
302
+ return LinkContext(new _P$7(props, values));
303
+ }
304
+ function NavigationTreeSection(props) {
305
+ return TreeSection(props);
306
+ }
307
+ function NavigationTreeHeader(props) {
308
+ return TreeHeader(mergeProps$1(() => {
309
+ return omit(props, "ref");
310
+ }, { ref: (element) => {
311
+ assignRef(untrack(() => props.ref), element);
312
+ } }));
313
+ }
314
+ export { NavigationTree, NavigationTreeContext, NavigationTreeHeader, NavigationTreeItem, NavigationTreeItemContent, NavigationTreeItemStateContext, NavigationTreeSection };
315
+
316
+ //# sourceMappingURL=navigation-tree.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"navigation-tree.js","names":["dom.div","<TreeHeader\n {\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n ...omit(props, \"ref\")\n // oxlint-enable solid/reactivity\n }\n ref={(element: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n element\n );\n }}\n />","ref={(element: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n element\n );\n }}","_$mergeProps","_$memo"],"sources":["../../src/navigation-tree.tsx"],"sourcesContent":["/*\n * Copyright 2026 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n/*\n * Derived from Adobe React Spectrum: packages/react-aria-components/src/NavigationTree.tsx.\n * Modified for Solid Aria: route synchronization, link slots and render values use Solid contexts 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 { isPresent } from \"@solid2-aria/core/utils/is-present\";\nimport { mergeProps } from \"@solid2-aria/core/utils/merge-props\";\nimport { isTruthy } from \"@solid2-aria/core/utils/truthy\";\nimport type { TreeState } from \"@solid2-aria/stately/tree/create-tree-state\";\nimport { getNodeProps } from \"@solid2-aria/stately/utils/get-node-props\";\nimport type { Key, LinkDOMProps } from \"@solid2-aria/types-shared\";\nimport type { JSX } from \"@solidjs/web\";\nimport {\n merge,\n untrack,\n createContext,\n useContext,\n createSignal,\n createEffect,\n omit,\n} from \"solid-js\";\n\nimport { LinkContext } from \"./link\";\nimport {\n Tree,\n TreeItem,\n TreeItemContent,\n TreeSection,\n TreeHeader,\n} from \"./tree\";\nimport type {\n TreeProps,\n TreeItemProps,\n TreeItemRenderProps,\n TreeRenderProps,\n TreeSectionProps,\n TreeHeaderProps,\n} from \"./tree\";\nimport { assignRef, dom, createContextProps } from \"./utils\";\nimport type {\n Ref,\n ContextValue,\n ClassOrFunction,\n StyleRenderProps,\n ChildrenOrFunction,\n} from \"./utils\";\n\nexport type NavigationTreeRenderProps = Pick<\n TreeRenderProps,\n \"isEmpty\" | \"isFocused\" | \"isFocusVisible\" | \"state\"\n>;\n\nexport interface NavigationTreeProps<T>\n extends\n Omit<\n TreeProps<T>,\n | \"selectionMode\"\n | \"selectionBehavior\"\n | \"selectedKeys\"\n | \"defaultSelectedKeys\"\n | \"onSelectionChange\"\n | \"disallowEmptySelection\"\n | \"disabledBehavior\"\n | \"keyboardNavigationBehavior\"\n | \"escapeKeyBehavior\"\n | \"shouldSelectOnPressUp\"\n | \"dragAndDropHooks\"\n | \"renderEmptyState\"\n | \"onAction\"\n | \"class\"\n | \"style\"\n | \"render\"\n >,\n StyleRenderProps<NavigationTreeRenderProps> {\n class?: ClassOrFunction<NavigationTreeRenderProps>;\n\n selectedRoute?: string | null;\n}\n\nexport interface NavigationTreeItemRenderProps extends TreeItemRenderProps {\n isCurrent: boolean;\n\n isCurrentAncestor: boolean;\n}\n\nexport interface NavigationTreeItemProps<T = object>\n extends\n Omit<\n TreeItemProps<T>,\n | \"class\"\n | \"style\"\n | \"render\"\n | \"onAction\"\n | \"allowsArrowNavigation\"\n | \"value\"\n >,\n StyleRenderProps<NavigationTreeItemRenderProps> {\n class?: ClassOrFunction<NavigationTreeItemRenderProps>;\n\n children: JSX.Element;\n}\n\nexport type NavigationTreeItemContentRenderProps =\n NavigationTreeItemRenderProps;\n\nexport interface NavigationTreeItemContentProps {\n children: ChildrenOrFunction<NavigationTreeItemContentRenderProps>;\n}\n\nexport type NavigationTreeSectionProps<T> = Omit<TreeSectionProps<T>, \"value\">;\n\nexport type NavigationTreeHeaderProps = TreeHeaderProps;\n\nexport const NavigationTreeContext =\n // oxlint-disable-next-line typescript/no-explicit-any -- The collection owner and its descendants share one item type through this context.\n createContext<ContextValue<NavigationTreeProps<any>, HTMLDivElement>>(null);\n\nexport const NavigationTreeItemStateContext = createContext<{\n isCurrentAncestor: boolean;\n}>({ isCurrentAncestor: false });\n\ninterface NavigationRoute {\n selectedRoute?: string | null;\n syncedRoute?: string;\n}\n\nconst RouteContext = createContext<NavigationRoute>({});\n\nconst ItemLinkContext = createContext<\n LinkDOMProps & {\n isCurrent: boolean;\n isLinkFocused: boolean;\n setLinkFocused: (value: boolean) => void;\n }\n>({\n isCurrent: false,\n isLinkFocused: false,\n setLinkFocused: () => {\n /* empty */\n },\n});\n\nexport function NavigationTree<T>(\n input: NavigationTreeProps<T> & { ref?: Ref<HTMLDivElement> }\n) {\n const [props, , setRef] = createContextProps(\n input,\n untrack(() => input.ref),\n NavigationTreeContext\n );\n\n const route: NavigationRoute = {\n get selectedRoute() {\n return props.selectedRoute;\n },\n syncedRoute: undefined,\n };\n\n return (\n <RouteContext value={route}>\n <Tree\n {\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n ...omit(props, \"selectedRoute\")\n // oxlint-enable solid/reactivity\n }\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n class={props.class ?? \"solid2-aria-NavigationTree\"}\n selectionMode=\"none\"\n keyboardNavigationBehavior=\"tab\"\n />\n </RouteContext>\n );\n}\n\nfunction selectedAncestors(\n state: TreeState<unknown>,\n route: string | null | undefined\n): Set<Key> {\n const result = new Set<Key>();\n\n if (!isPresent(route)) {\n return result;\n }\n\n for (const key of state.collection.getKeys()) {\n if (getNodeProps(state.collection.getItem(key)).href === route) {\n let node = state.collection.getItem(key);\n\n while (isPresent(node?.parentKey) && !result.has(node.parentKey)) {\n result.add(node.parentKey);\n node = state.collection.getItem(node.parentKey);\n }\n\n break;\n }\n }\n\n return result;\n}\n\nexport function NavigationTreeItem<T>(\n props: NavigationTreeItemProps<T> & { ref?: Ref<HTMLDivElement> }\n) {\n const route = useContext(RouteContext);\n const [focused, setFocused] = createSignal(false);\n\n const link = mergeProps(props, {\n get isCurrent() {\n return isTruthy(props.href) && props.href === route.selectedRoute;\n },\n get isLinkFocused() {\n return focused();\n },\n setLinkFocused: setFocused,\n });\n\n const values = (tree: TreeItemRenderProps): NavigationTreeItemRenderProps =>\n mergeProps(tree, {\n get isCurrent() {\n return link.isCurrent;\n },\n get isCurrentAncestor() {\n return selectedAncestors(tree.state, route.selectedRoute).has(tree.id);\n },\n get isFocusVisible() {\n return tree.isFocusVisible || (tree.isFocusVisibleWithin && focused());\n },\n });\n\n return (\n <ItemLinkContext value={link}>\n <TreeItem\n {\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n ...omit(props, \"class\", \"style\", \"render\", \"ref\")\n // oxlint-enable solid/reactivity\n }\n ref={(element: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n element\n );\n }}\n focusMode={isTruthy(props.href) ? \"child\" : undefined}\n allowsArrowNavigation\n data-current={link.isCurrent || undefined}\n class={(state) => {\n const classValue = props.class;\n\n return typeof classValue === \"function\"\n ? classValue(\n mergeProps(values(state), {\n get defaultClass() {\n return state.defaultClass;\n },\n })\n )\n : (classValue ?? \"solid2-aria-NavigationTreeItem\");\n }}\n style={(state) => {\n if (typeof props.style === \"function\") {\n return props.style(\n mergeProps(values(state), {\n get defaultStyle() {\n return state.defaultStyle;\n },\n })\n );\n }\n\n return typeof props.style === \"object\" ? props.style : undefined;\n }}\n render={(domProps, state) => {\n const value = values(state);\n\n const content = (\n <NavigationTreeItemStateContext value={value}>\n {domProps.children}\n </NavigationTreeItemStateContext>\n );\n\n const forwarded = mergeProps(domProps, {\n children: content,\n \"data-current\": value.isCurrent || undefined,\n \"data-current-ancestor\": value.isCurrentAncestor || undefined,\n \"data-focus-visible\": value.isFocusVisible || undefined,\n });\n\n return props.render ? (\n props.render(forwarded, value)\n ) : (\n <dom.div {...forwarded} />\n );\n }}\n />\n </ItemLinkContext>\n );\n}\n\nexport function NavigationTreeItemContent(\n props: NavigationTreeItemContentProps\n) {\n const link = useContext(ItemLinkContext);\n const route = useContext(RouteContext);\n\n return (\n <TreeItemContent>\n {(tree) => (\n <NavigationTreeContentInner tree={tree} link={link} route={route}>\n {props.children}\n </NavigationTreeContentInner>\n )}\n </TreeItemContent>\n );\n}\n\nfunction NavigationTreeContentInner(props: {\n tree: TreeItemRenderProps;\n link: LinkDOMProps & {\n isCurrent: boolean;\n isLinkFocused: boolean;\n setLinkFocused: (value: boolean) => void;\n };\n route: { selectedRoute?: string | null; syncedRoute?: string };\n children: ChildrenOrFunction<NavigationTreeItemContentRenderProps>;\n}) {\n const ancestor = useContext(NavigationTreeItemStateContext);\n createEffect(\n () => {\n const routeContext = props.route;\n const route = routeContext.selectedRoute;\n const { state } = props.tree;\n const manager = state.selectionManager;\n let target: Key | undefined;\n\n if (isPresent(route) && routeContext.syncedRoute !== route) {\n for (const key of state.collection.getKeys()) {\n if (getNodeProps(state.collection.getItem(key)).href === route) {\n target = key;\n let node = state.collection.getItem(key);\n\n while (isPresent(node?.parentKey)) {\n const parent = state.collection.getItem(node.parentKey);\n\n if (\n parent?.type === \"item\" &&\n !state.expandedKeys.has(node.parentKey)\n ) {\n target = node.parentKey;\n }\n\n node = parent;\n }\n\n break;\n }\n }\n }\n\n return { manager, route, routeContext, target };\n },\n (next) => {\n if (next.target !== undefined && isPresent(next.route)) {\n next.routeContext.syncedRoute = next.route;\n next.manager.setFocusedKey(next.target);\n }\n }\n );\n\n const values = mergeProps(\n merge(() => props.tree ?? {}),\n {\n defaultChildren: undefined,\n get isCurrent() {\n return props.link.isCurrent;\n },\n get isCurrentAncestor() {\n return ancestor.isCurrentAncestor;\n },\n get isFocusVisible() {\n return (\n props.tree.isFocusVisible ||\n (props.tree.isFocusVisibleWithin && props.link.isLinkFocused)\n );\n },\n }\n );\n\n return (\n <LinkContext\n value={mergeProps(\n omit(props.link, \"isCurrent\", \"isLinkFocused\", \"setLinkFocused\"),\n {\n get \"aria-current\"() {\n return props.link.isCurrent ? \"page\" : undefined;\n },\n get onFocusChange() {\n return props.link.setLinkFocused;\n },\n onPress: () => {\n if (!isTruthy(props.link.href) && props.tree.hasChildItems) {\n props.tree.state.toggleKey(props.tree.id);\n }\n },\n }\n )}\n >\n {typeof props.children === \"function\"\n ? props.children(values)\n : props.children}\n </LinkContext>\n );\n}\n\nexport function NavigationTreeSection<T>(props: NavigationTreeSectionProps<T>) {\n return <TreeSection {...props} />;\n}\n\nexport function NavigationTreeHeader(\n props: NavigationTreeHeaderProps & { ref?: Ref<HTMLDivElement> }\n) {\n return (\n <TreeHeader\n {\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n ...omit(props, \"ref\")\n // oxlint-enable solid/reactivity\n }\n ref={(element: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n element\n );\n }}\n />\n );\n}\n"],"mappings":"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"}