@slotted/react 0.1.0-beta.10 → 0.1.0-beta.12

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 (329) hide show
  1. package/dist/action-bar-z2DPc1Wy.js +285 -0
  2. package/dist/action-bar.js +1 -1
  3. package/dist/action-sheet-BnedGewu.js +360 -0
  4. package/dist/action-sheet.js +1 -1
  5. package/dist/{alert-BTcqbG8w.js → alert-BTAXJ69M.js} +5 -5
  6. package/dist/alert.js +1 -1
  7. package/dist/{app-shell-BlkqQrOx.js → app-shell-Cb_kDBeV.js} +232 -173
  8. package/dist/app-shell.js +1 -1
  9. package/dist/{attachment-zlOPJvIm.js → attachment-D1O4qS8H.js} +28 -28
  10. package/dist/attachment.js +1 -1
  11. package/dist/{breadcrumb-DCGynpkb.js → breadcrumb-CnFjxxI2.js} +10 -10
  12. package/dist/breadcrumb.js +1 -1
  13. package/dist/{button-BCVjdzkn.js → button-D31perSu.js} +2 -2
  14. package/dist/button.js +2 -2
  15. package/dist/{calendar-qGUJ-kAy.js → calendar-DZyC1gAT.js} +8 -8
  16. package/dist/calendar.js +1 -1
  17. package/dist/{carousel-CjRTu8m7.js → carousel-Dso3gcYd.js} +14 -14
  18. package/dist/carousel.js +1 -1
  19. package/dist/cascader-BbajBwsX.js +1157 -0
  20. package/dist/cascader.js +1 -1
  21. package/dist/{chart-CPFq3jIE.js → chart-Bb6ctahn.js} +9 -9
  22. package/dist/chart.js +1 -1
  23. package/dist/{checkbox-CMY2KIih.js → checkbox-C_8GVtjD.js} +3 -3
  24. package/dist/{checkbox-group-DzMtLF7f.js → checkbox-group-DXCcusol.js} +2 -2
  25. package/dist/checkbox-group.js +1 -1
  26. package/dist/checkbox.js +1 -1
  27. package/dist/{code-block-Bh_2Eg3M.js → code-block-C4mtsROE.js} +8 -8
  28. package/dist/code-block.js +1 -1
  29. package/dist/{color-picker-DlepH5co.js → color-picker-JZPnPb7s.js} +49 -49
  30. package/dist/color-picker.js +1 -1
  31. package/dist/{column-manager-CV9tCnKa.js → column-manager-BDUj-WIs.js} +31 -31
  32. package/dist/column-manager.js +1 -1
  33. package/dist/combobox-Dn69QwGX.js +904 -0
  34. package/dist/combobox.js +1 -1
  35. package/dist/command-palette-Dh1HKz_F.js +744 -0
  36. package/dist/command-palette.js +1 -1
  37. package/dist/{context-menu-Dbc0KkFp.js → context-menu-uJjEmAN3.js} +1 -1
  38. package/dist/context-menu.js +1 -1
  39. package/dist/{currency-field--wIfgVAx.js → currency-field-lHcrNJ7X.js} +13 -13
  40. package/dist/currency-field.js +1 -1
  41. package/dist/{dashboard-grid-D_LbWfdZ.js → dashboard-grid-z-SOm9H0.js} +65 -65
  42. package/dist/dashboard-grid.js +1 -1
  43. package/dist/{data-grid-XH5fGoGj.js → data-grid-Kj1b9RD-.js} +1316 -1272
  44. package/dist/data-grid.js +1 -1
  45. package/dist/data-list-BgdkA3bD.js +587 -0
  46. package/dist/data-list.js +1 -1
  47. package/dist/{date-field-BrNyJBiJ.js → date-field-B2lQzE3p.js} +5 -5
  48. package/dist/date-field.js +1 -1
  49. package/dist/{date-picker-Nl55so0C.js → date-picker-DpTRb-Y1.js} +16 -16
  50. package/dist/date-picker.js +1 -1
  51. package/dist/{date-range-picker-DLkvfUJD.js → date-range-picker-CBUPJep5.js} +17 -17
  52. package/dist/date-range-picker.js +1 -1
  53. package/dist/{datetime-field-CZRhRDPb.js → datetime-field-BZ44uJ_B.js} +7 -7
  54. package/dist/datetime-field.js +1 -1
  55. package/dist/{datetime-picker-_GHra2WL.js → datetime-picker-BK_bV3Yr.js} +21 -21
  56. package/dist/datetime-picker.js +1 -1
  57. package/dist/{datetime-range-picker-Dy1A0Wqy.js → datetime-range-picker-ChdbRgzQ.js} +21 -21
  58. package/dist/datetime-range-picker.js +1 -1
  59. package/dist/{description-list-Cc4JYZ-3.js → description-list-CYlfHDwx.js} +11 -11
  60. package/dist/description-list.js +1 -1
  61. package/dist/{detail-panel-BI_wHSoz.js → detail-panel-DimjnPI8.js} +91 -91
  62. package/dist/detail-panel.js +1 -1
  63. package/dist/{dialog-B6MP7GYI.js → dialog-BB5MdJex.js} +108 -108
  64. package/dist/dialog.js +1 -1
  65. package/dist/docs/action-bar.json +4 -4
  66. package/dist/docs/action-bar.md +3 -3
  67. package/dist/docs/calendar.md +2 -2
  68. package/dist/docs/command-palette.json +1 -0
  69. package/dist/docs/command-palette.md +1 -1
  70. package/dist/docs/data-grid.examples.md +8 -2
  71. package/dist/docs/data-grid.json +12 -2
  72. package/dist/docs/data-grid.md +3 -1
  73. package/dist/docs/detail-panel.json +4 -2
  74. package/dist/docs/detail-panel.md +15 -5
  75. package/dist/docs/dialog.json +1 -0
  76. package/dist/docs/dialog.md +1 -1
  77. package/dist/docs/drawer.json +6 -4
  78. package/dist/docs/drawer.md +3 -3
  79. package/dist/docs/event-calendar.md +2 -2
  80. package/dist/docs/guidelines/index.md +4 -3
  81. package/dist/docs/guidelines/layout-alignment.md +17 -7
  82. package/dist/docs/guidelines/list-pages.md +3 -3
  83. package/dist/docs/page-header.json +18 -2
  84. package/dist/docs/page-header.md +5 -3
  85. package/dist/docs/page.json +1 -0
  86. package/dist/docs/page.md +1 -1
  87. package/dist/docs/rating.md +1 -1
  88. package/dist/docs/section.json +1 -1
  89. package/dist/docs/section.md +1 -1
  90. package/dist/docs/skills/compose-screen/SKILL.md +12 -4
  91. package/dist/docs/skills/review-screen/SKILL.md +20 -18
  92. package/dist/docs/skills/theme-app/SKILL.md +12 -1
  93. package/dist/docs/toast.json +1 -0
  94. package/dist/docs/toast.md +1 -1
  95. package/dist/docs/tokens.md +1 -1
  96. package/dist/docs/toolbar.json +1 -1
  97. package/dist/docs/toolbar.md +1 -1
  98. package/dist/docs/typography.md +1 -1
  99. package/dist/{drawer-CkpFlKYa.js → drawer-fyPyxnYQ.js} +216 -206
  100. package/dist/drawer.js +1 -1
  101. package/dist/entity-picker-ClyhBTyK.js +1283 -0
  102. package/dist/entity-picker.js +1 -1
  103. package/dist/{event-calendar-BDjI5T44.js → event-calendar-COgC24UG.js} +23 -23
  104. package/dist/event-calendar.js +1 -1
  105. package/dist/{field-group-CCM2vPKL.js → field-group-Bj-EbPIU.js} +2 -2
  106. package/dist/field-group.js +1 -1
  107. package/dist/{field-CzSGs7wo.js → field-tnEZiRLg.js} +19 -19
  108. package/dist/field.js +1 -1
  109. package/dist/filter-bar-BRuCz79-.js +1342 -0
  110. package/dist/filter-bar.js +1 -1
  111. package/dist/{form-CDq04WDY.js → form-DEcJ7tHf.js} +1 -1
  112. package/dist/form.js +1 -1
  113. package/dist/{fullscreen-6GW4naDP.js → fullscreen-BwweNj3-.js} +13 -13
  114. package/dist/fullscreen.js +1 -1
  115. package/dist/{hover-card-aadyPXzF.js → hover-card-BWcU37Yp.js} +1 -1
  116. package/dist/hover-card.js +1 -1
  117. package/dist/{i18n-DpW8lqJ1.js → i18n-D7xXDd8-.js} +11 -4
  118. package/dist/i18n.js +1 -1
  119. package/dist/{icon-button-CRB218_z.js → icon-button-DbSZKGT4.js} +73 -71
  120. package/dist/{import-export-center-DUrNwRKP.js → import-export-center-CYf0Qxl_.js} +291 -289
  121. package/dist/import-export-center.js +1 -1
  122. package/dist/index.js +100 -100
  123. package/dist/{kbd-Z4YmSPRy.js → kbd-dNz8QHfL.js} +1 -1
  124. package/dist/kbd.js +1 -1
  125. package/dist/{link-BsSlZ1ts.js → link-DLPyg54C.js} +5 -5
  126. package/dist/link.js +1 -1
  127. package/dist/{listbox-VFcfZT70.js → listbox-BSqx_ARf.js} +1 -1
  128. package/dist/listbox.js +1 -1
  129. package/dist/{loading-overlay-BZPBDK4w.js → loading-overlay-BLIrcaoj.js} +9 -9
  130. package/dist/loading-overlay.js +1 -1
  131. package/dist/{markdown-BmCU_sOv.js → markdown-DccRb1xf.js} +17 -17
  132. package/dist/markdown.js +1 -1
  133. package/dist/{menu-parts-DS9JEUCt.js → menu-parts-CNNHRduK.js} +42 -42
  134. package/dist/menu.js +1 -1
  135. package/dist/{menubar-BV43BKep.js → menubar-Bdr6zigi.js} +1 -1
  136. package/dist/menubar.js +1 -1
  137. package/dist/message-BkTiWsUp.js +436 -0
  138. package/dist/message-scroller-akQEtQLn.js +218 -0
  139. package/dist/message-scroller.js +1 -1
  140. package/dist/message.js +1 -1
  141. package/dist/{multi-select-YaxhhH9y.js → multi-select-BvlJIEtz.js} +445 -443
  142. package/dist/multi-select.js +1 -1
  143. package/dist/{navigation-menu-parts-B64gKl8B.js → navigation-menu-parts-CEW4fgCo.js} +12 -12
  144. package/dist/navigation-menu.js +1 -1
  145. package/dist/{notification-center-Ci-OLWTO.js → notification-center-BQO0Ey3h.js} +40 -40
  146. package/dist/notification-center.js +1 -1
  147. package/dist/{number-field-BYQmPyM-.js → number-field-D1MqT8_A.js} +13 -13
  148. package/dist/number-field.js +1 -1
  149. package/dist/{otp-input-BKO0WPZc.js → otp-input-Cub9H9Di.js} +1 -1
  150. package/dist/otp-input.js +1 -1
  151. package/dist/{page-CfjGviUA.js → page-CwYmBoZQ.js} +1 -1
  152. package/dist/{page-header-w_PFLnLG.js → page-header-CMxCQqu_.js} +117 -114
  153. package/dist/page-header.js +1 -1
  154. package/dist/page.js +1 -1
  155. package/dist/{pagination-Cm9665gb.js → pagination-IEuos7H1.js} +12 -12
  156. package/dist/pagination.js +1 -1
  157. package/dist/{popover-D1krYeP-.js → popover-C7NpEzq6.js} +22 -22
  158. package/dist/popover.js +1 -1
  159. package/dist/prompt-composer-Cu8bj1Vb.js +276 -0
  160. package/dist/prompt-composer.js +1 -1
  161. package/dist/{prose-Bl5OjXTb.js → prose-CQN4Bqqh.js} +1 -1
  162. package/dist/prose.js +1 -1
  163. package/dist/{radio-group-D9VTBLUB.js → radio-group-BHlDgCLk.js} +2 -2
  164. package/dist/radio-group.js +1 -1
  165. package/dist/{rating-BRqsV5OF.js → rating-Cr0lXaAV.js} +15 -15
  166. package/dist/rating.js +1 -1
  167. package/dist/{saved-views-C_76obIv.js → saved-views-CyLSn8a2.js} +151 -151
  168. package/dist/saved-views.js +1 -1
  169. package/dist/{scroll-area-vrm2bbtZ.js → scroll-area-Fr0PmnRS.js} +1 -1
  170. package/dist/scroll-area.js +1 -1
  171. package/dist/{segmented-control-5DTOKO3g.js → segmented-control-uPnQYklX.js} +2 -2
  172. package/dist/segmented-control.js +1 -1
  173. package/dist/select-C0JYHwBy.js +1020 -0
  174. package/dist/select.js +1 -1
  175. package/dist/{side-navigation-MNMSkj9b.js → side-navigation-D8lRpHwj.js} +64 -64
  176. package/dist/side-navigation.js +1 -1
  177. package/dist/{skeleton-DyOwgYmF.js → skeleton-DeEOmm1y.js} +1 -1
  178. package/dist/skeleton.js +1 -1
  179. package/dist/{slider-OMe1DAC-.js → slider-BSI1xvjw.js} +2 -2
  180. package/dist/slider.js +1 -1
  181. package/dist/{sparkline-ChkaLVdY.js → sparkline-CYU4_lCD.js} +1 -1
  182. package/dist/sparkline.js +1 -1
  183. package/dist/spinner-ring-DyfaYloA.js +19 -0
  184. package/dist/{split-button-DbmRwfMC.js → split-button-CkbylOMN.js} +2 -2
  185. package/dist/split-button.js +1 -1
  186. package/dist/{stat-card-BSnsTmsq.js → stat-card-CAh4SdeY.js} +16 -16
  187. package/dist/stat-card.js +1 -1
  188. package/dist/{status-indicator-CyKhBdvN.js → status-indicator-BVMnpcm8.js} +4 -4
  189. package/dist/status-indicator.js +1 -1
  190. package/dist/{stepper-Cw1Auv3n.js → stepper-BLfvMz04.js} +16 -16
  191. package/dist/stepper.js +1 -1
  192. package/dist/styles/action-bar.css +1 -1
  193. package/dist/styles/action-sheet.css +2 -2
  194. package/dist/styles/button.css +2 -2
  195. package/dist/styles/cascader.css +2 -2
  196. package/dist/styles/chart.css +1 -1
  197. package/dist/styles/column-manager.css +3 -3
  198. package/dist/styles/command-palette.css +3 -3
  199. package/dist/styles/dashboard-grid.css +2 -2
  200. package/dist/styles/data-grid.css +3 -3
  201. package/dist/styles/data-list.css +2 -2
  202. package/dist/styles/detail-panel.css +4 -4
  203. package/dist/styles/dialog.css +1 -1
  204. package/dist/styles/drawer.css +1 -1
  205. package/dist/styles/entity-picker.css +1 -1
  206. package/dist/styles/event-calendar.css +1 -1
  207. package/dist/styles/filter-bar.css +3 -3
  208. package/dist/styles/import-export-center.css +4 -4
  209. package/dist/styles/index.css +12 -12
  210. package/dist/styles/markdown.css +2 -2
  211. package/dist/styles/multi-select.css +1 -1
  212. package/dist/styles/notification-center.css +3 -3
  213. package/dist/styles/page-header.css +2 -2
  214. package/dist/styles/page.css +1 -1
  215. package/dist/styles/prompt-composer.css +1 -1
  216. package/dist/styles/saved-views.css +2 -2
  217. package/dist/styles/split-button.css +2 -2
  218. package/dist/styles/table.css +2 -2
  219. package/dist/styles/tabs.css +1 -1
  220. package/dist/styles/timeline.css +1 -1
  221. package/dist/styles/toast.css +1 -1
  222. package/dist/styles/tour.css +2 -2
  223. package/dist/styles/transfer.css +2 -2
  224. package/dist/styles/upload.css +1 -1
  225. package/dist/styles/wizard.css +2 -2
  226. package/dist/styles.css +1 -1
  227. package/dist/{switch-CQ1rpuKa.js → switch-BHyKHqeI.js} +5 -5
  228. package/dist/switch.js +1 -1
  229. package/dist/{table-DpGTPtnb.js → table-C8zOHDcY.js} +30 -30
  230. package/dist/{table-of-contents-BFVERMZy.js → table-of-contents-BAIuPCdy.js} +8 -8
  231. package/dist/table-of-contents.js +1 -1
  232. package/dist/table.js +1 -1
  233. package/dist/{tag-aX7uyAN0.js → tag-XYGEPUHR.js} +14 -14
  234. package/dist/tag.js +1 -1
  235. package/dist/{tags-input-BgpS22sf.js → tags-input-ClYSd-No.js} +40 -40
  236. package/dist/tags-input.js +1 -1
  237. package/dist/text-field-Cguj75tn.js +205 -0
  238. package/dist/text-field.js +1 -1
  239. package/dist/{textarea-DNCjsQYd.js → textarea-BKsh_jAo.js} +1 -1
  240. package/dist/textarea.js +1 -1
  241. package/dist/{time-field-Cm6iBjwH.js → time-field-BIE4WMpS.js} +7 -7
  242. package/dist/time-field.js +1 -1
  243. package/dist/{time-picker-Ce18FSO2.js → time-picker-CNfafRDF.js} +18 -18
  244. package/dist/time-picker.js +1 -1
  245. package/dist/{time-range-picker-kDnw4PQ3.js → time-range-picker-D7gM_Wno.js} +20 -20
  246. package/dist/time-range-picker.js +1 -1
  247. package/dist/timeline-BLadNUkS.js +449 -0
  248. package/dist/timeline.js +1 -1
  249. package/dist/{toast-58ex8PDK.js → toast-CjbiXiza.js} +16 -16
  250. package/dist/toast.js +1 -1
  251. package/dist/{toggle-group-YxVJlCnI.js → toggle-group-BZmghKac.js} +1 -1
  252. package/dist/toggle-group.js +1 -1
  253. package/dist/toolbar-BI4ZepBs.js +243 -0
  254. package/dist/toolbar.js +1 -1
  255. package/dist/{top-navigation-DorkYBnR.js → top-navigation-BTZpx5VA.js} +13 -13
  256. package/dist/top-navigation.js +1 -1
  257. package/dist/{tour-CwK_m_Jp.js → tour-_CQ1kYov.js} +23 -23
  258. package/dist/tour.js +1 -1
  259. package/dist/{transfer-DxGDWIEt.js → transfer-BVhBdIGp.js} +59 -59
  260. package/dist/transfer.js +1 -1
  261. package/dist/tree-DfI9UWLA.js +794 -0
  262. package/dist/tree.js +1 -1
  263. package/dist/types/action-bar/action-bar-overflow.d.ts.map +1 -1
  264. package/dist/types/action-bar/action-bar.types.d.ts +2 -2
  265. package/dist/types/action-sheet/action-sheet-parts.d.ts.map +1 -1
  266. package/dist/types/app-shell/app-shell-parts.d.ts.map +1 -1
  267. package/dist/types/app-shell/app-shell.d.ts.map +1 -1
  268. package/dist/types/app-shell/app-shell.types.d.ts +21 -14
  269. package/dist/types/app-shell/app-shell.types.d.ts.map +1 -1
  270. package/dist/types/app-shell/index.d.ts +1 -1
  271. package/dist/types/app-shell/index.d.ts.map +1 -1
  272. package/dist/types/button/button-indicator.d.ts.map +1 -1
  273. package/dist/types/button/spinner-ring.d.ts +8 -0
  274. package/dist/types/button/spinner-ring.d.ts.map +1 -0
  275. package/dist/types/cascader/cascader-surface.d.ts.map +1 -1
  276. package/dist/types/cascader/cascader.d.ts.map +1 -1
  277. package/dist/types/combobox/combobox-parts.d.ts.map +1 -1
  278. package/dist/types/command-palette/command-palette.d.ts.map +1 -1
  279. package/dist/types/data-grid/data-grid-body.d.ts +7 -2
  280. package/dist/types/data-grid/data-grid-body.d.ts.map +1 -1
  281. package/dist/types/data-grid/data-grid-header.d.ts.map +1 -1
  282. package/dist/types/data-grid/data-grid.d.ts +1 -1
  283. package/dist/types/data-grid/data-grid.d.ts.map +1 -1
  284. package/dist/types/detail-panel/detail-panel-parts.d.ts +2 -1
  285. package/dist/types/detail-panel/detail-panel-parts.d.ts.map +1 -1
  286. package/dist/types/drawer/drawer-parts.d.ts.map +1 -1
  287. package/dist/types/entity-picker/entity-picker-control.d.ts.map +1 -1
  288. package/dist/types/filter-bar/filter-bar.d.ts.map +1 -1
  289. package/dist/types/i18n/slotted-provider.d.ts +6 -0
  290. package/dist/types/i18n/slotted-provider.d.ts.map +1 -1
  291. package/dist/types/import-export-center/import-export-center.d.ts.map +1 -1
  292. package/dist/types/message/message-parts.d.ts.map +1 -1
  293. package/dist/types/message-scroller/message-scroller.d.ts.map +1 -1
  294. package/dist/types/multi-select/multi-select-parts.d.ts.map +1 -1
  295. package/dist/types/page-header/page-header-defaults.d.ts +1 -1
  296. package/dist/types/page-header/page-header-defaults.d.ts.map +1 -1
  297. package/dist/types/page-header/page-header.d.ts +1 -1
  298. package/dist/types/page-header/page-header.d.ts.map +1 -1
  299. package/dist/types/page-header/page-header.types.d.ts +9 -0
  300. package/dist/types/page-header/page-header.types.d.ts.map +1 -1
  301. package/dist/types/prompt-composer/prompt-composer.d.ts.map +1 -1
  302. package/dist/types/select/select-parts.d.ts.map +1 -1
  303. package/dist/types/text-field/text-field.d.ts.map +1 -1
  304. package/dist/types/timeline/timeline-parts.d.ts.map +1 -1
  305. package/dist/types/timeline/timeline.d.ts.map +1 -1
  306. package/dist/types/toolbar/toolbar-overflow.d.ts.map +1 -1
  307. package/dist/types/toolbar/toolbar.types.d.ts +2 -2
  308. package/dist/types/tree/tree-parts.d.ts.map +1 -1
  309. package/dist/{upload-CEDsfMWz.js → upload-N2-nyO8x.js} +65 -65
  310. package/dist/upload.js +1 -1
  311. package/dist/{wizard-B3p7zCSj.js → wizard-CK1x2fs3.js} +16 -16
  312. package/dist/wizard.js +1 -1
  313. package/package.json +6 -6
  314. package/dist/action-bar-CJgBierN.js +0 -283
  315. package/dist/action-sheet-tRrjm7WQ.js +0 -358
  316. package/dist/cascader-DqlC1z5b.js +0 -1154
  317. package/dist/combobox-YWFkxaQ3.js +0 -902
  318. package/dist/command-palette-DXNq-zKN.js +0 -741
  319. package/dist/data-list-DZCN_uW1.js +0 -587
  320. package/dist/entity-picker-CFwLGQeU.js +0 -1281
  321. package/dist/filter-bar-G50WdRac.js +0 -1340
  322. package/dist/message-Dtck9RJy.js +0 -434
  323. package/dist/message-scroller-niUJ8RoL.js +0 -216
  324. package/dist/prompt-composer-sh_TXKYZ.js +0 -273
  325. package/dist/select-BFx5EgAa.js +0 -1018
  326. package/dist/text-field-DL_uhNXV.js +0 -203
  327. package/dist/timeline-pEL30Jp8.js +0 -446
  328. package/dist/toolbar-BtIyVbs4.js +0 -241
  329. package/dist/tree-DbLRyItM.js +0 -792
@@ -0,0 +1,1020 @@
1
+ import { n as e, r as t } from "./i18n-D7xXDd8-.js";
2
+ import { n, t as r } from "./icon-DjqSEQ-o.js";
3
+ import { t as i } from "./spinner-ring-DyfaYloA.js";
4
+ import { b as a } from "./field-tnEZiRLg.js";
5
+ import { t as o } from "./select-tags-CMe5rzql.js";
6
+ import { t as s } from "./highlight-9lRPIZ9O.js";
7
+ import { keyedProps as c, selectorKeyProps as l, withSelectorKey as u } from "@slotted/core/selector-key";
8
+ import { tabbables as d } from "@slotted/core/focus";
9
+ import { createControllable as f } from "@slotted/core/state";
10
+ import { createContext as p, useCallback as m, useContext as h, useEffect as g, useId as _, useImperativeHandle as ee, useLayoutEffect as v, useMemo as y, useRef as b, useState as x } from "react";
11
+ import { Fragment as S, jsx as C, jsxs as w } from "react/jsx-runtime";
12
+ import { createPresence as te } from "@slotted/core/presence";
13
+ import { selectMessages as T } from "@slotted/core/i18n";
14
+ import { createPortalRoot as E, setPortalContainer as D } from "@slotted/core/portal";
15
+ import { createDismissableLayer as O } from "@slotted/core/dismissable-layer";
16
+ import { createPositioner as k } from "@slotted/core/positioner";
17
+ import { createTypeahead as A, isPrintable as ne } from "@slotted/core/typeahead";
18
+ import { createPortal as re } from "react-dom";
19
+ import { createFilter as j, moveIndex as M, revealWithin as N } from "@slotted/core/collection";
20
+ import { matchRanges as P } from "@slotted/core/highlight";
21
+ //#region src/select/select-defaults.tsx
22
+ var F = {
23
+ align: "start",
24
+ alignOffset: 0,
25
+ clearable: !1,
26
+ highlightMatch: !0,
27
+ search: !1,
28
+ closeOnEscape: !0,
29
+ closeOnOutsidePress: !0,
30
+ closeOnSelect: !0,
31
+ collisionPadding: 8,
32
+ disabled: !1,
33
+ flip: !0,
34
+ fullWidth: !0,
35
+ hideWhenDetached: !0,
36
+ invalid: !1,
37
+ loading: !1,
38
+ loop: !1,
39
+ mount: "active",
40
+ multiple: !1,
41
+ portal: !0,
42
+ readOnly: !1,
43
+ required: !1,
44
+ shift: !0,
45
+ side: "bottom",
46
+ sideOffset: 4,
47
+ size: "md",
48
+ strategy: "absolute",
49
+ typeahead: !0,
50
+ typeaheadTimeout: 500,
51
+ variant: "outline",
52
+ width: "content"
53
+ }, I = p(F);
54
+ function L() {
55
+ return h(I);
56
+ }
57
+ function R({ children: e, container: t, ...n }) {
58
+ let r = L();
59
+ g(() => {
60
+ if (t !== void 0) return D(t), () => D(null);
61
+ }, [t]);
62
+ let i = {
63
+ align: n.align ?? r.align,
64
+ alignOffset: n.alignOffset ?? r.alignOffset,
65
+ clearable: n.clearable ?? r.clearable,
66
+ highlightMatch: n.highlightMatch ?? r.highlightMatch,
67
+ search: n.search ?? r.search,
68
+ closeOnEscape: n.closeOnEscape ?? r.closeOnEscape,
69
+ closeOnOutsidePress: n.closeOnOutsidePress ?? r.closeOnOutsidePress,
70
+ closeOnSelect: n.closeOnSelect ?? r.closeOnSelect,
71
+ collisionPadding: n.collisionPadding ?? r.collisionPadding,
72
+ disabled: n.disabled ?? r.disabled,
73
+ flip: n.flip ?? r.flip,
74
+ fullWidth: n.fullWidth ?? r.fullWidth,
75
+ hideWhenDetached: n.hideWhenDetached ?? r.hideWhenDetached,
76
+ invalid: n.invalid ?? r.invalid,
77
+ loading: n.loading ?? r.loading,
78
+ loop: n.loop ?? r.loop,
79
+ mount: n.mount ?? r.mount,
80
+ multiple: n.multiple ?? r.multiple,
81
+ portal: n.portal ?? r.portal,
82
+ readOnly: n.readOnly ?? r.readOnly,
83
+ required: n.required ?? r.required,
84
+ shift: n.shift ?? r.shift,
85
+ side: n.side ?? r.side,
86
+ sideOffset: n.sideOffset ?? r.sideOffset,
87
+ size: n.size ?? r.size,
88
+ strategy: n.strategy ?? r.strategy,
89
+ typeahead: n.typeahead ?? r.typeahead,
90
+ typeaheadTimeout: n.typeaheadTimeout ?? r.typeaheadTimeout,
91
+ variant: n.variant ?? r.variant,
92
+ width: n.width ?? r.width
93
+ };
94
+ return /* @__PURE__ */ C(I.Provider, {
95
+ value: i,
96
+ children: e
97
+ });
98
+ }
99
+ //#endregion
100
+ //#region src/select/select.tsx
101
+ var ie = p(void 0);
102
+ function z() {
103
+ let e = h(ie);
104
+ if (e === void 0) throw Error("SelectTrigger, SelectContent and every option have to be inside a Select.");
105
+ return e;
106
+ }
107
+ function ae(e) {
108
+ return e == null ? [] : typeof e == "string" ? [e] : e;
109
+ }
110
+ function oe(e, t) {
111
+ return t ? e : e[0] ?? null;
112
+ }
113
+ var se = (e) => "options" in e;
114
+ function ce(e) {
115
+ return e === void 0 ? [] : e.flatMap((e) => se(e) ? e.options : [e]);
116
+ }
117
+ function le({ align: n, alignOffset: r, children: i, clearable: o, closeOnEscape: s, closeOnOutsidePress: c, closeOnSelect: l, collisionPadding: u, defaultHighlightedValue: d = null, defaultOpen: p = !1, defaultSearchValue: h = "", defaultValue: g, disabled: v, filter: S, flip: w, form: te, fullWidth: E, hideWhenDetached: D, highlightedValue: O, highlightMatch: k, invalid: A, items: ne, loading: re, locale: M, loop: P, messages: F, mount: I, multiple: R, name: z, onHighlightedValueChange: se, onOpenChange: le, onSearchValueChange: B, onValueChange: V, open: H, portal: U, readOnly: ue, ref: de, required: W, search: fe, searchValue: pe, shift: G, side: K, sideOffset: me, size: he, strategy: ge, total: _e, typeahead: ve, typeaheadTimeout: ye, value: q, variant: be, width: xe }) {
118
+ let J = L(), Y = a(), Se = t(T, F), Ce = e(), we = M ?? Ce, X = _(), Te = `${X}listbox`, Ee = `${X}list`, De = `${X}search`, Oe = Y?.ids.control ?? `${X}trigger`, [ke, Ae] = x(p), [je] = x(() => ae(g)), [Me, Ne] = x(je), [Pe, Fe] = x(d), [Ie, Le] = x(h), [Re, ze] = x(null), [Be, Ve] = x(null), [He, Ue] = x(null), We = R ?? J.multiple, Ge = v ?? Y?.disabled ?? J.disabled, Ke = ue ?? Y?.readOnly ?? J.readOnly, qe = (H ?? ke) && !Ge, Je = q === void 0 ? Me : ae(q), Ye = O === void 0 ? Pe : O, Xe = fe ?? J.search, Z = Xe ? pe === void 0 ? Ie : pe : "", Ze = b(qe);
119
+ qe && (Ze.current = !0);
120
+ let Qe = b("selected"), $e = b(/* @__PURE__ */ new Map()), [et, tt] = x(0), nt = y(() => {
121
+ let e = /* @__PURE__ */ new Map();
122
+ for (let t of ce(ne)) e.set(t.value, t.label);
123
+ return e;
124
+ }, [ne]), rt = m((e, t) => {
125
+ $e.current.get(e) !== t && ($e.current.set(e, t), tt((e) => e + 1));
126
+ }, []), it = m((e) => nt.get(e) ?? $e.current.get(e), [nt, et]), at = y(() => j({ locale: we }), [we]), ot = m((e) => Z === "" || S === null ? !0 : S === void 0 ? at.contains(e, Z) : S(e, Z), [
127
+ Z,
128
+ at,
129
+ S
130
+ ]), st = m((e) => `${X}option-${encodeURIComponent(e)}`, [X]), ct = {
131
+ currentHighlighted: Ye,
132
+ currentOpen: qe,
133
+ currentQuery: Z,
134
+ currentSelection: Je,
135
+ highlightedValue: O,
136
+ onHighlightedValueChange: se,
137
+ onOpenChange: le,
138
+ onSearchValueChange: B,
139
+ onValueChange: V,
140
+ open: H,
141
+ resolvedMultiple: We,
142
+ resolvedSearch: Xe,
143
+ searchNode: He,
144
+ searchValue: pe,
145
+ triggerNode: Re,
146
+ value: q
147
+ }, Q = b(ct);
148
+ Q.current = ct;
149
+ let lt = m((e, t, n) => {
150
+ let r = Q.current;
151
+ e !== r.currentQuery && f({
152
+ controlled: r.searchValue,
153
+ initial: r.currentQuery,
154
+ onRequest: (e) => r.onSearchValueChange?.(e.value, e)
155
+ }).request(e, t, n) && Le(e);
156
+ }, []), ut = m((e, t, n) => {
157
+ let r = Q.current;
158
+ e !== r.currentOpen && f({
159
+ controlled: r.open,
160
+ initial: r.currentOpen,
161
+ onRequest: (e) => r.onOpenChange?.(e.value, e)
162
+ }).request(e, t, n) && (Ae(e), e || (Fe(null), Qe.current = "selected", lt("", "clear", n)));
163
+ }, [lt]), dt = m((e, t, n) => {
164
+ let r = Q.current;
165
+ e !== r.currentHighlighted && f({
166
+ controlled: r.highlightedValue,
167
+ initial: r.currentHighlighted,
168
+ onRequest: (e) => r.onHighlightedValueChange?.(e.value, e)
169
+ }).request(e, t, n) && Fe(e);
170
+ }, []), $ = m((e, t, n) => {
171
+ let r = Q.current;
172
+ e.length === r.currentSelection.length && e.every((e, t) => e === r.currentSelection[t]) || f({
173
+ controlled: r.value,
174
+ initial: oe(r.currentSelection, r.resolvedMultiple),
175
+ equals: () => !1,
176
+ onRequest: (e) => r.onValueChange?.(e.value, e)
177
+ }).request(oe(e, r.resolvedMultiple), t, n) && Ne(e);
178
+ }, []), ft = m((e, t, n) => {
179
+ let r = Q.current;
180
+ if (!r.resolvedMultiple) {
181
+ $([e], t, n);
182
+ return;
183
+ }
184
+ let i = r.currentSelection.includes(e);
185
+ $(i ? r.currentSelection.filter((t) => t !== e) : [...r.currentSelection, e], t, n);
186
+ }, [$]), pt = m((e, t) => $([], e, t), [$]), mt = m((e) => $(je, "programmatic", e), [$, je]);
187
+ ee(de, () => ({
188
+ close: () => ut(!1, "programmatic"),
189
+ focus: () => Q.current.triggerNode?.focus({ preventScroll: !0 }),
190
+ focusSearch: () => {
191
+ let e = Q.current;
192
+ (e.searchNode ?? e.triggerNode)?.focus({ preventScroll: !0 });
193
+ },
194
+ open: () => ut(!0, "programmatic"),
195
+ scrollToKey: (e) => {
196
+ let t = Be?.querySelector(`[data-part='item'][data-value="${CSS.escape(e)}"]`);
197
+ t != null && Be !== null && N(t, Be);
198
+ }
199
+ }), [Be, ut]);
200
+ let ht = {
201
+ align: n ?? J.align,
202
+ alignOffset: r ?? J.alignOffset,
203
+ clear: pt,
204
+ clearable: o ?? J.clearable,
205
+ closeOnEscape: s ?? J.closeOnEscape,
206
+ closeOnOutsidePress: c ?? J.closeOnOutsidePress,
207
+ closeOnSelect: l ?? J.closeOnSelect,
208
+ collisionPadding: u ?? J.collisionPadding,
209
+ contentId: Te,
210
+ contentNode: Be,
211
+ disabled: Ge,
212
+ entry: Qe,
213
+ flip: w ?? J.flip,
214
+ form: te,
215
+ fullWidth: E ?? J.fullWidth,
216
+ hideWhenDetached: D ?? J.hideWhenDetached,
217
+ highlighted: Ye,
218
+ highlightMatch: k ?? J.highlightMatch,
219
+ invalid: A ?? Y?.invalid ?? J.invalid,
220
+ labelFor: it,
221
+ listId: Ee,
222
+ loading: re ?? J.loading,
223
+ locale: we,
224
+ loop: P ?? J.loop,
225
+ matches: ot,
226
+ mount: I ?? J.mount,
227
+ multiple: We,
228
+ name: z,
229
+ open: qe,
230
+ optionId: st,
231
+ portal: U ?? J.portal,
232
+ query: Z,
233
+ readOnly: Ke,
234
+ registerLabel: rt,
235
+ required: W ?? Y?.required ?? J.required,
236
+ restore: mt,
237
+ search: Xe,
238
+ searchId: De,
239
+ searchNode: He,
240
+ seen: Ze.current,
241
+ selection: Je,
242
+ setContentNode: Ve,
243
+ setHighlighted: dt,
244
+ setOpen: ut,
245
+ setQuery: lt,
246
+ setSearchNode: Ue,
247
+ setTriggerNode: ze,
248
+ shift: G ?? J.shift,
249
+ side: K ?? J.side,
250
+ sideOffset: me ?? J.sideOffset,
251
+ size: he ?? Y?.size ?? J.size,
252
+ strategy: ge ?? J.strategy,
253
+ t: Se,
254
+ toggle: ft,
255
+ total: _e,
256
+ triggerId: Oe,
257
+ triggerNode: Re,
258
+ typeahead: Xe ? !1 : ve ?? J.typeahead,
259
+ typeaheadTimeout: ye ?? J.typeaheadTimeout,
260
+ variant: be ?? J.variant,
261
+ width: xe ?? J.width
262
+ };
263
+ return /* @__PURE__ */ C(ie.Provider, {
264
+ value: ht,
265
+ children: i
266
+ });
267
+ }
268
+ //#endregion
269
+ //#region src/select/select-collection.ts
270
+ var B = "[data-part='item']";
271
+ function V(e) {
272
+ return e === null ? [] : [...e.querySelectorAll(B)];
273
+ }
274
+ var H = (e) => e.dataset.value ?? "", U = (e) => e.dataset.disabled === void 0, ue = (e) => e.dataset.textValue ?? e.querySelector("[data-part='label']")?.textContent?.trim() ?? e.textContent?.trim() ?? "";
275
+ function de(e) {
276
+ let t = V(e).filter(U);
277
+ return {
278
+ elements: t,
279
+ labels: t.map(ue)
280
+ };
281
+ }
282
+ function W(e, t, n, r) {
283
+ let i = V(e);
284
+ if (i.length === 0) return null;
285
+ let a = M({
286
+ enabled: i.map(U),
287
+ from: t === null ? -1 : i.findIndex((e) => H(e) === t),
288
+ intent: n,
289
+ loop: r
290
+ });
291
+ return a === -1 ? null : H(i[a]);
292
+ }
293
+ function fe(e, t, n, r) {
294
+ if (n === "none") return null;
295
+ if (n === "selected") {
296
+ let n = V(e).find((e) => t.includes(H(e)) && U(e));
297
+ return n === void 0 ? W(e, null, "first", r) : H(n);
298
+ }
299
+ return W(e, null, n, r);
300
+ }
301
+ function pe(e, t) {
302
+ if (e === null || t === null) return;
303
+ let n = V(e).find((e) => H(e) === t);
304
+ n !== void 0 && N(n, e);
305
+ }
306
+ //#endregion
307
+ //#region src/select/select-parts.tsx
308
+ function G(e, t) {
309
+ return (n) => {
310
+ e?.(n), n.defaultPrevented || t(n);
311
+ };
312
+ }
313
+ function K(e, t, n) {
314
+ if (e === null) return;
315
+ let r = d(document.body).filter((e) => t === null || !t.contains(e)), i = r.indexOf(e);
316
+ ((i === -1 ? void 0 : r[i + (n ? -1 : 1)]) ?? e).focus({ preventScroll: !0 });
317
+ }
318
+ function me(e, ...t) {
319
+ for (let n of t) typeof n == "function" ? n(e) : n != null && (n.current = e);
320
+ }
321
+ function he({ children: e, ref: t, render: s, ...c }) {
322
+ let u = z(), d = a(), f = d?.registerControl;
323
+ g(() => f?.(), [f]);
324
+ let [p, h] = x(null), [_, ee] = x(null), v = b(!1);
325
+ g(() => {
326
+ if (_ === null) return;
327
+ let e = _.ownerDocument, t = () => {
328
+ v.current = !1;
329
+ }, n = () => {
330
+ v.current = !0;
331
+ };
332
+ return e.addEventListener("pointerdown", t, !0), _.addEventListener("pointerdown", n), () => {
333
+ e.removeEventListener("pointerdown", t, !0), _.removeEventListener("pointerdown", n);
334
+ };
335
+ }, [_]);
336
+ let [y, te] = x(!1), T = b(null), E = b(null);
337
+ g(() => {
338
+ u.setTriggerNode(p);
339
+ }, [p, u]), g(() => {
340
+ if (!u.typeahead) return;
341
+ let e = A({ timeout: u.typeaheadTimeout });
342
+ return E.current = e, () => {
343
+ e.destroy(), E.current = null;
344
+ };
345
+ }, [u.typeahead, u.typeaheadTimeout]), g(() => {
346
+ if (!u.open || u.contentNode === null) return;
347
+ let e = T.current;
348
+ if (T.current = null, e === null || E.current === null) return;
349
+ let { elements: t, labels: n } = de(u.contentNode), r = E.current.match(e, n, -1);
350
+ r !== -1 && u.setHighlighted(H(t[r]), "keyboard");
351
+ }, [
352
+ u,
353
+ u.contentNode,
354
+ u.open
355
+ ]);
356
+ let D = (e, t) => {
357
+ u.entry.current = e, u.setOpen(!0, "keyboard", t);
358
+ }, O = (e, t) => {
359
+ let n = W(u.contentNode, u.highlighted, e, u.loop);
360
+ n !== null && u.setHighlighted(n, "keyboard", t);
361
+ }, k = (e, t) => {
362
+ if (u.highlighted === null) {
363
+ t && u.setOpen(!1, "select", e);
364
+ return;
365
+ }
366
+ u.toggle(u.highlighted, "keyboard", e), t && u.setOpen(!1, "select", e);
367
+ }, re = (e) => {
368
+ if (u.disabled || u.readOnly) return;
369
+ let t = e.altKey;
370
+ if (!u.open) {
371
+ switch (e.key) {
372
+ case "ArrowDown":
373
+ e.preventDefault(), D(t ? "none" : "selected", e.nativeEvent);
374
+ return;
375
+ case "ArrowUp":
376
+ e.preventDefault(), D("last", e.nativeEvent);
377
+ return;
378
+ case "Enter":
379
+ case " ":
380
+ e.preventDefault(), D("selected", e.nativeEvent);
381
+ return;
382
+ case "Home":
383
+ e.preventDefault(), D("first", e.nativeEvent);
384
+ return;
385
+ case "End":
386
+ e.preventDefault(), D("last", e.nativeEvent);
387
+ return;
388
+ }
389
+ if (!e.ctrlKey && !e.metaKey && !t && ne(e.key)) {
390
+ if (u.search) {
391
+ e.preventDefault(), u.setQuery(e.key, "keyboard", e.nativeEvent), D("first", e.nativeEvent);
392
+ return;
393
+ }
394
+ u.typeahead && (e.preventDefault(), T.current = e.key, D("none", e.nativeEvent));
395
+ }
396
+ return;
397
+ }
398
+ switch (e.key) {
399
+ case "ArrowDown":
400
+ e.preventDefault(), O("next", e.nativeEvent);
401
+ return;
402
+ case "ArrowUp":
403
+ e.preventDefault(), t ? k(e.nativeEvent, !0) : O("previous", e.nativeEvent);
404
+ return;
405
+ case "Home":
406
+ e.preventDefault(), O("first", e.nativeEvent);
407
+ return;
408
+ case "End":
409
+ e.preventDefault(), O("last", e.nativeEvent);
410
+ return;
411
+ case "PageDown":
412
+ e.preventDefault(), O("pageDown", e.nativeEvent);
413
+ return;
414
+ case "PageUp":
415
+ e.preventDefault(), O("pageUp", e.nativeEvent);
416
+ return;
417
+ case "Enter":
418
+ e.preventDefault(), k(e.nativeEvent, u.closeOnSelect);
419
+ return;
420
+ case " ":
421
+ e.preventDefault(), k(e.nativeEvent, !u.multiple && u.closeOnSelect);
422
+ return;
423
+ case "Escape":
424
+ e.preventDefault(), u.setOpen(!1, "escape", e.nativeEvent);
425
+ return;
426
+ case "Tab":
427
+ k(e.nativeEvent, !0);
428
+ return;
429
+ }
430
+ if (!u.typeahead || E.current === null || e.ctrlKey || e.metaKey || t || !ne(e.key, E.current.query.length > 0)) return;
431
+ e.preventDefault();
432
+ let { elements: n, labels: r } = de(u.contentNode), i = n.findIndex((e) => H(e) === u.highlighted), a = E.current.match(e.key, r, i);
433
+ a !== -1 && u.setHighlighted(H(n[a]), "keyboard");
434
+ }, j = (e) => {
435
+ let t = v.current;
436
+ if (v.current = !1, e.detail > 0 && !t) {
437
+ e.currentTarget.focus({ preventScroll: !0 });
438
+ return;
439
+ }
440
+ u.disabled || u.readOnly || (u.entry.current = "selected", u.setOpen(!u.open, "pointer", e.nativeEvent));
441
+ }, M = (e) => {
442
+ u.clear("clear", e.nativeEvent), p?.focus({ preventScroll: !0 });
443
+ }, N = m((e) => {
444
+ h(e), me(e, t);
445
+ }, [t]), P = [c["aria-describedby"], d?.describedBy].filter(Boolean).join(" "), F = u.clearable && u.selection.length > 0 && !u.disabled && !u.readOnly, I = {
446
+ "data-part": "root",
447
+ ...l("part", "root"),
448
+ "data-size": u.size,
449
+ "data-ui": "select",
450
+ ...l("ui", "select"),
451
+ "data-variant": u.variant,
452
+ ...u.fullWidth ? { "data-full-width": "" } : {},
453
+ ...u.multiple ? { "data-multiple": "" } : {},
454
+ ...u.open ? { "data-open": "" } : {},
455
+ ...u.disabled ? { "data-disabled": "" } : {},
456
+ ...u.readOnly ? { "data-readonly": "" } : {},
457
+ ...u.invalid ? { "data-invalid": "" } : {},
458
+ ...u.required ? { "data-required": "" } : {},
459
+ ...u.loading ? { "data-loading": "" } : {},
460
+ ...y ? { "data-narrow": "" } : {}
461
+ }, L = u.multiple && u.selection.length > 0 ? /* @__PURE__ */ C(o, {
462
+ disabled: u.disabled || u.readOnly,
463
+ frame: _,
464
+ labelFor: u.labelFor,
465
+ onNarrow: te,
466
+ onRemove: (e, t) => {
467
+ u.toggle(e, "select", t.nativeEvent), p?.focus({ preventScroll: !0 });
468
+ },
469
+ removeLabel: (e) => u.t("remove", { label: e }),
470
+ values: u.selection
471
+ }) : null, R = /* @__PURE__ */ w(S, { children: [
472
+ /* @__PURE__ */ C("button", {
473
+ ...c,
474
+ "aria-activedescendant": u.open && !u.search && u.highlighted !== null ? u.optionId(u.highlighted) : void 0,
475
+ "aria-controls": u.open ? u.contentId : void 0,
476
+ "aria-describedby": P === "" ? void 0 : P,
477
+ "aria-expanded": u.open,
478
+ "aria-haspopup": u.search ? "dialog" : "listbox",
479
+ "aria-invalid": u.invalid ? !0 : void 0,
480
+ "aria-labelledby": c["aria-label"] === void 0 && c["aria-labelledby"] === void 0 ? d?.ids.label : c["aria-labelledby"],
481
+ "aria-readonly": u.readOnly ? !0 : void 0,
482
+ "aria-required": u.required ? !0 : void 0,
483
+ "data-part": "trigger",
484
+ "data-part-trigger": "",
485
+ disabled: u.disabled,
486
+ id: u.triggerId,
487
+ onClick: G(c.onClick, j),
488
+ onKeyDown: G(c.onKeyDown, re),
489
+ ref: N,
490
+ role: "combobox",
491
+ type: "button",
492
+ children: e
493
+ }),
494
+ L,
495
+ F ? /* @__PURE__ */ C("button", {
496
+ "aria-label": u.t("clear"),
497
+ "data-part": "clear",
498
+ "data-part-clear": "",
499
+ onClick: M,
500
+ type: "button",
501
+ children: /* @__PURE__ */ C(r, { children: /* @__PURE__ */ C(n, { name: "x" }) })
502
+ }) : null,
503
+ u.loading ? /* @__PURE__ */ C("span", {
504
+ "aria-hidden": "true",
505
+ "data-part": "busy",
506
+ "data-part-busy": "",
507
+ "data-ui": "spinner",
508
+ "data-ui-spinner": "",
509
+ children: i
510
+ }) : /* @__PURE__ */ C("span", {
511
+ "data-part": "arrow",
512
+ "data-part-arrow": "",
513
+ children: /* @__PURE__ */ C(r, { children: /* @__PURE__ */ C(n, { name: "chevron-down" }) })
514
+ }),
515
+ /* @__PURE__ */ C(ge, {})
516
+ ] });
517
+ return s === void 0 ? /* @__PURE__ */ C("div", {
518
+ ...I,
519
+ ref: ee,
520
+ children: R
521
+ }) : s({
522
+ ...I,
523
+ children: R
524
+ });
525
+ }
526
+ function ge() {
527
+ let e = z(), [t, n] = x(null), { restore: r } = e;
528
+ return g(() => {
529
+ let e = t?.form;
530
+ if (e == null) return;
531
+ let n = (e) => r(e);
532
+ return e.addEventListener("reset", n), () => e.removeEventListener("reset", n);
533
+ }, [
534
+ t,
535
+ r,
536
+ e.form
537
+ ]), e.name === void 0 ? null : /* @__PURE__ */ w("select", {
538
+ "aria-hidden": "true",
539
+ disabled: e.disabled,
540
+ form: e.form,
541
+ multiple: e.multiple,
542
+ name: e.name,
543
+ onChange: () => void 0,
544
+ ref: n,
545
+ required: e.required,
546
+ style: {
547
+ border: 0,
548
+ clip: "rect(0 0 0 0)",
549
+ clipPath: "inset(50%)",
550
+ height: "1px",
551
+ overflow: "hidden",
552
+ padding: 0,
553
+ position: "absolute",
554
+ whiteSpace: "nowrap",
555
+ width: "1px"
556
+ },
557
+ tabIndex: -1,
558
+ value: e.multiple ? [...e.selection] : e.selection[0] ?? "",
559
+ children: [/* @__PURE__ */ C("option", { value: "" }), e.selection.map((t) => /* @__PURE__ */ C("option", {
560
+ value: t,
561
+ children: e.labelFor(t) ?? t
562
+ }, t))]
563
+ });
564
+ }
565
+ function _e({ children: e, placeholder: t, ...n }) {
566
+ let r = z(), i = r.selection.map((e) => r.labelFor(e)), a = i.filter((e) => e !== void 0), o = r.selection.length > 0 && a.length < r.selection.length, s = (() => {
567
+ if (e !== void 0) return e(r.selection, a);
568
+ if (r.selection.length === 0) return t;
569
+ let n = i[0] ?? r.selection[0];
570
+ return !r.multiple || r.selection.length === 1 ? n : /* @__PURE__ */ C("span", {
571
+ "data-part": "summary",
572
+ "data-part-summary": "",
573
+ children: r.t("summary", { count: r.selection.length })
574
+ });
575
+ })();
576
+ return /* @__PURE__ */ C("span", {
577
+ ...u(n, "part", "value"),
578
+ ...r.selection.length === 0 ? { "data-placeholder": "" } : {},
579
+ ...o ? { "data-unmatched": "" } : {},
580
+ children: s
581
+ });
582
+ }
583
+ function ve({ icon: e, ref: t, render: i, ...a }) {
584
+ let o = z(), s = (e, t) => {
585
+ let n = W(o.contentNode, o.highlighted, e, o.loop);
586
+ n !== null && o.setHighlighted(n, "keyboard", t);
587
+ }, c = (e, t) => {
588
+ if (o.highlighted !== null && o.toggle(o.highlighted, "keyboard", e), t) {
589
+ o.setOpen(!1, "select", e), o.triggerNode?.focus({ preventScroll: !0 });
590
+ return;
591
+ }
592
+ o.highlighted !== null && o.setQuery("", "select", e);
593
+ }, d = (e) => {
594
+ let t = e.altKey;
595
+ switch (e.key) {
596
+ case "ArrowDown":
597
+ e.preventDefault(), s("next", e.nativeEvent);
598
+ return;
599
+ case "ArrowUp":
600
+ e.preventDefault(), t ? c(e.nativeEvent, !0) : s("previous", e.nativeEvent);
601
+ return;
602
+ case "PageDown":
603
+ e.preventDefault(), s("pageDown", e.nativeEvent);
604
+ return;
605
+ case "PageUp":
606
+ e.preventDefault(), s("pageUp", e.nativeEvent);
607
+ return;
608
+ case "Enter":
609
+ e.preventDefault(), c(e.nativeEvent, o.closeOnSelect && !o.multiple);
610
+ return;
611
+ case "Escape":
612
+ e.preventDefault(), o.query !== "" && o.setQuery("", "clear", e.nativeEvent);
613
+ return;
614
+ case "Tab":
615
+ e.preventDefault(), c(e.nativeEvent, !0), K(o.triggerNode, e.currentTarget.closest("[data-part='positioner']"), e.shiftKey);
616
+ return;
617
+ }
618
+ }, f = {
619
+ "data-part": "search",
620
+ ...l("part", "search")
621
+ }, p = /* @__PURE__ */ w(S, { children: [e === null ? null : e ?? /* @__PURE__ */ C("span", {
622
+ "aria-hidden": "true",
623
+ "data-part": "search-icon",
624
+ "data-part-search-icon": "",
625
+ children: /* @__PURE__ */ C(r, { children: /* @__PURE__ */ C(n, { name: "search" }) })
626
+ }), /* @__PURE__ */ C("input", {
627
+ ...u(a, "part", "search-input"),
628
+ "aria-activedescendant": o.highlighted === null ? void 0 : o.optionId(o.highlighted),
629
+ "aria-autocomplete": "list",
630
+ "aria-controls": o.listId,
631
+ "aria-expanded": !0,
632
+ "aria-label": a["aria-label"] ?? o.t("search"),
633
+ autoComplete: "off",
634
+ id: a.id ?? o.searchId,
635
+ onChange: G(a.onChange, (e) => o.setQuery(e.target.value, "keyboard", e.nativeEvent)),
636
+ onKeyDown: G(a.onKeyDown, d),
637
+ placeholder: a.placeholder ?? o.t("searchPlaceholder"),
638
+ ref: (e) => {
639
+ o.setSearchNode(e), me(e, t);
640
+ },
641
+ role: "combobox",
642
+ spellCheck: !1,
643
+ type: "text",
644
+ value: o.query
645
+ })] });
646
+ return i === void 0 ? /* @__PURE__ */ C("div", {
647
+ ...f,
648
+ children: p
649
+ }) : i({
650
+ ...f,
651
+ children: p
652
+ });
653
+ }
654
+ function ye({ children: e, empty: t, ref: n, render: r, searchProps: i, status: a, ...o }) {
655
+ let s = z(), [l, d] = x(null), [f, p] = x(null), [h, _] = x(null), [ee, y] = x("unmounted"), [T, D] = x(!1), [A, ne] = x(0), j = b(null), M = b(s);
656
+ M.current = s, g(() => {
657
+ let e = te({
658
+ present: M.current.open,
659
+ onStatusChange: y
660
+ });
661
+ return j.current = e, y(e.status), () => {
662
+ e.destroy(), j.current = null;
663
+ };
664
+ }, []), g(() => j.current?.sync(s.open), [s.open]), g(() => j.current?.setNode(l), [l]), g(() => s.setContentNode(f), [s, f]);
665
+ let N = s.mount === "eager" || s.mount === "lazy" && s.seen || s.open || ee !== "unmounted";
666
+ g(() => {
667
+ let e = s.triggerNode;
668
+ if (e === null || T) return;
669
+ let t = () => D(!0);
670
+ return e.addEventListener("focusin", t), e.addEventListener("pointerdown", t), () => {
671
+ e.removeEventListener("focusin", t), e.removeEventListener("pointerdown", t);
672
+ };
673
+ }, [s.triggerNode, T]);
674
+ let P = N || T;
675
+ v(() => {
676
+ if (!P) {
677
+ _(null);
678
+ return;
679
+ }
680
+ let e = E({
681
+ origin: s.triggerNode,
682
+ disabled: !s.portal
683
+ });
684
+ return _(e.container), () => e.release();
685
+ }, [
686
+ P,
687
+ s.portal,
688
+ s.triggerNode
689
+ ]);
690
+ let { align: F, alignOffset: I, collisionPadding: L, flip: R, hideWhenDetached: ie, shift: ae, side: oe, sideOffset: se, strategy: ce, width: le } = s, B = b(null), H = b(0), U = m((e, t) => {
691
+ e.update().then(() => {
692
+ if (B.current !== e || !M.current.open) return;
693
+ t.setAttribute("data-open", "");
694
+ let n = t.ownerDocument.defaultView;
695
+ n !== null && H.current === 0 && (H.current = n.requestAnimationFrame(() => {
696
+ H.current = 0, pe(M.current.contentNode, M.current.highlighted);
697
+ }));
698
+ });
699
+ }, []);
700
+ v(() => {
701
+ if (l === null || s.triggerNode === null) return;
702
+ let e = s.triggerNode.closest("[data-part='root']") ?? s.triggerNode, t = k(e, l, {
703
+ align: F,
704
+ alignOffset: I,
705
+ boundaryPadding: L,
706
+ flip: R,
707
+ hideWhenDetached: ie,
708
+ matchWidth: le === "anchor",
709
+ shift: ae,
710
+ side: oe,
711
+ sideOffset: se,
712
+ strategy: ce
713
+ });
714
+ return B.current = t, M.current.open && U(t, l), () => {
715
+ t.destroy(), B.current = null, l.removeAttribute("data-open");
716
+ };
717
+ }, [
718
+ F,
719
+ I,
720
+ L,
721
+ R,
722
+ ie,
723
+ l,
724
+ s.triggerNode,
725
+ ae,
726
+ oe,
727
+ se,
728
+ ce,
729
+ le,
730
+ U
731
+ ]), v(() => {
732
+ let e = B.current;
733
+ if (e !== null && l !== null) {
734
+ if (s.open) {
735
+ U(e, l);
736
+ return;
737
+ }
738
+ l.removeAttribute("data-open"), H.current !== 0 && (l.ownerDocument.defaultView?.cancelAnimationFrame(H.current), H.current = 0);
739
+ }
740
+ }, [
741
+ l,
742
+ U,
743
+ s.open
744
+ ]), g(() => {
745
+ if (l === null || !s.open) return;
746
+ let e = [s.triggerNode].filter((e) => e !== null), t = O(l, {
747
+ branches: e,
748
+ escape: s.closeOnEscape,
749
+ focusOutside: !1,
750
+ modal: !1,
751
+ outsidePress: s.closeOnOutsidePress,
752
+ scrollLock: !1,
753
+ onDismiss: (e) => {
754
+ let t = M.current;
755
+ if (e.reason === "escape" && t.search && t.query !== "") {
756
+ t.setQuery("", "clear", e.source);
757
+ return;
758
+ }
759
+ t.setOpen(!1, e.reason === "escape" ? "escape" : "outsidePress", e.source), e.reason === "escape" && t.triggerNode?.focus({ preventScroll: !0 });
760
+ }
761
+ });
762
+ return () => t.destroy();
763
+ }, [
764
+ l,
765
+ s.closeOnEscape,
766
+ s.closeOnOutsidePress,
767
+ s.open,
768
+ s.triggerNode
769
+ ]), v(() => {
770
+ let e = M.current;
771
+ if (!e.open || f === null || e.entry.current === "none") return;
772
+ let t = fe(f, e.selection, e.entry.current, e.loop);
773
+ t !== null && e.setHighlighted(t, "keyboard");
774
+ }, [s.open, f]), v(() => {
775
+ let e = V(f).length;
776
+ ne((t) => t === e ? t : e);
777
+ }), g(() => {
778
+ l?.hasAttribute("data-open") === !0 && pe(f, s.highlighted);
779
+ }, [
780
+ l,
781
+ s.highlighted,
782
+ f
783
+ ]);
784
+ let ue = s.searchNode;
785
+ g(() => {
786
+ s.open && s.search && ue !== null && ue.focus({ preventScroll: !0 });
787
+ }, [
788
+ ue,
789
+ s.open,
790
+ s.search
791
+ ]);
792
+ let de = b(s.query);
793
+ g(() => {
794
+ s.open && s.search && f !== null && de.current !== s.query && (de.current = s.query, M.current.setHighlighted(W(f, null, "first", !1), "keyboard"));
795
+ }, [
796
+ A,
797
+ s.open,
798
+ s.query,
799
+ s.search,
800
+ f
801
+ ]);
802
+ let G = s.selection.filter((e) => s.labelFor(e) === void 0).join("\0"), [K, he] = x(null), ge = b(null);
803
+ if (g(() => {
804
+ if (K !== null) {
805
+ he(null);
806
+ return;
807
+ }
808
+ N || G === "" || ge.current === G || (ge.current = G, he((s.triggerNode?.ownerDocument ?? document).createDocumentFragment()));
809
+ }, [
810
+ K,
811
+ N,
812
+ s.triggerNode,
813
+ G
814
+ ]), !N) return K === null ? null : re(e, K);
815
+ let _e = c({
816
+ "data-align": F,
817
+ ...s.open ? {} : { inert: !0 },
818
+ "data-part": "positioner",
819
+ "data-size": s.size,
820
+ "data-ui": "select",
821
+ "data-width": s.width
822
+ }), ye = a === void 0 ? s.loading ? s.t("loading") : !s.search || A === 0 ? null : s.t("count", { count: A }) : a, q = s.multiple && s.selection.length > 0 ? /* @__PURE__ */ C("div", {
823
+ "aria-hidden": "true",
824
+ "data-part": "chosen",
825
+ "data-part-chosen": "",
826
+ children: s.selection.map((e) => /* @__PURE__ */ C("span", {
827
+ "data-part": "root",
828
+ "data-part-root": "",
829
+ "data-size": "sm",
830
+ "data-ui": "tag",
831
+ "data-ui-tag": "",
832
+ "data-variant": "soft",
833
+ children: /* @__PURE__ */ C("span", {
834
+ "data-part": "body",
835
+ "data-part-body": "",
836
+ children: /* @__PURE__ */ C("span", {
837
+ "data-part": "label",
838
+ "data-part-label": "",
839
+ children: s.labelFor(e) ?? String(e)
840
+ })
841
+ })
842
+ }, String(e)))
843
+ }) : null, be = /* @__PURE__ */ w(S, { children: [
844
+ q,
845
+ e,
846
+ s.loading ? /* @__PURE__ */ C("div", {
847
+ "aria-hidden": "true",
848
+ "data-part": "placeholder",
849
+ "data-part-placeholder": "",
850
+ children: [
851
+ 0,
852
+ 1,
853
+ 2
854
+ ].map((e) => /* @__PURE__ */ C("div", { children: /* @__PURE__ */ C("span", {
855
+ "data-part": "root",
856
+ "data-part-root": "",
857
+ "data-shape": "text",
858
+ "data-ui": "skeleton",
859
+ "data-ui-skeleton": "",
860
+ "data-loading": ""
861
+ }) }, e))
862
+ }) : null,
863
+ !s.loading && A === 0 ? /* @__PURE__ */ C("div", {
864
+ "data-part": "empty",
865
+ "data-part-empty": "",
866
+ children: t ?? s.t("empty")
867
+ }) : null,
868
+ s.search || s.loading ? /* @__PURE__ */ C("div", {
869
+ "aria-live": "polite",
870
+ "data-part": "status",
871
+ "data-part-status": "",
872
+ ...s.loading ? { "data-loading": "" } : {},
873
+ role: "status",
874
+ children: ye
875
+ }) : null
876
+ ] }), xe = {
877
+ "aria-busy": s.loading ? !0 : void 0,
878
+ "aria-multiselectable": s.multiple ? !0 : void 0
879
+ }, J = /* @__PURE__ */ C("div", {
880
+ ..._e,
881
+ ref: (e) => {
882
+ d(e), me(e, n);
883
+ },
884
+ children: /* @__PURE__ */ C("div", {
885
+ ...o,
886
+ ...u(s.search ? {} : xe, "part", "content"),
887
+ "aria-labelledby": o["aria-label"] === void 0 ? s.triggerId : void 0,
888
+ "data-loading": s.loading ? "" : void 0,
889
+ ...s.search ? { "data-search": "" } : {},
890
+ id: s.contentId,
891
+ ref: p,
892
+ role: s.search ? "dialog" : "listbox",
893
+ children: s.search ? /* @__PURE__ */ w(S, { children: [/* @__PURE__ */ C(ve, { ...i }), /* @__PURE__ */ C("div", {
894
+ ...u(xe, "part", "list"),
895
+ "aria-labelledby": s.triggerId,
896
+ id: s.listId,
897
+ role: "listbox",
898
+ children: be
899
+ })] }) : be
900
+ })
901
+ }), Y = r === void 0 ? J : r({
902
+ ..._e,
903
+ children: e
904
+ });
905
+ return h === null ? Y : re(Y, h);
906
+ }
907
+ //#endregion
908
+ //#region src/select/select-items.tsx
909
+ function q({ children: e, description: t, disabled: i = !1, icon: a, position: o, ref: c, textValue: l, value: d, ...f }) {
910
+ let p = z(), m = b(null), h = b(null);
911
+ g(() => {
912
+ if (m.current === null) return;
913
+ let e = l ?? m.current.querySelector("[data-part='label']")?.textContent?.trim() ?? "";
914
+ e !== "" && e !== h.current && (h.current = e, p.registerLabel(d, e));
915
+ }, [
916
+ e,
917
+ p,
918
+ l,
919
+ d
920
+ ]);
921
+ let _ = l ?? (typeof e == "string" ? e : void 0), ee = y(() => {
922
+ if (!p.search || !p.highlightMatch || p.query === "" || _ === void 0) return e;
923
+ let t = P(_, p.query, { locale: p.locale });
924
+ return t.length === 0 ? e : /* @__PURE__ */ C(s, {
925
+ ranges: t,
926
+ text: _
927
+ });
928
+ }, [
929
+ e,
930
+ p.highlightMatch,
931
+ p.locale,
932
+ p.query,
933
+ p.search,
934
+ _
935
+ ]);
936
+ if (_ !== void 0 && !p.matches(_)) return null;
937
+ let v = p.selection.includes(d), x = p.highlighted === d, S = (e) => {
938
+ i || p.setHighlighted(d, "pointer", e.nativeEvent);
939
+ }, te = (e) => {
940
+ f.onPointerDown?.(e), !e.defaultPrevented && e.preventDefault();
941
+ }, T = (e) => {
942
+ if (!i) {
943
+ if (p.toggle(d, "pointer", e.nativeEvent), p.closeOnSelect && !p.multiple) {
944
+ p.setOpen(!1, "select", e.nativeEvent);
945
+ return;
946
+ }
947
+ p.setQuery("", "select", e.nativeEvent), p.searchNode?.focus({ preventScroll: !0 });
948
+ }
949
+ };
950
+ return /* @__PURE__ */ w("div", {
951
+ ...u(f, "part", "item"),
952
+ "aria-disabled": i ? !0 : void 0,
953
+ "aria-posinset": o,
954
+ "aria-setsize": o === void 0 ? void 0 : p.total,
955
+ "aria-selected": v,
956
+ "data-value": d,
957
+ id: f.id ?? p.optionId(d),
958
+ ..._ === void 0 ? {} : { "data-text-value": _ },
959
+ ...i ? { "data-disabled": "" } : {},
960
+ ...v ? { "data-selected": "" } : {},
961
+ ...x ? { "data-current": "" } : {},
962
+ onClick: T,
963
+ onPointerDown: te,
964
+ onPointerEnter: S,
965
+ ref: (e) => {
966
+ m.current = e, typeof c == "function" ? c(e) : c != null && (c.current = e);
967
+ },
968
+ role: "option",
969
+ children: [
970
+ a === void 0 ? null : /* @__PURE__ */ C("span", {
971
+ "data-part": "icon",
972
+ "data-part-icon": "",
973
+ children: a
974
+ }),
975
+ /* @__PURE__ */ C("span", {
976
+ "data-part": "label",
977
+ "data-part-label": "",
978
+ children: ee
979
+ }),
980
+ t === void 0 ? null : /* @__PURE__ */ C("span", {
981
+ "data-part": "description",
982
+ "data-part-description": "",
983
+ children: t
984
+ }),
985
+ /* @__PURE__ */ C("span", {
986
+ "data-part": "indicator",
987
+ "data-part-indicator": "",
988
+ children: /* @__PURE__ */ C(r, { children: /* @__PURE__ */ C(n, { name: "check" }) })
989
+ })
990
+ ]
991
+ });
992
+ }
993
+ function be({ children: e, label: t, ...n }) {
994
+ let r = `${_()}group`, { query: i } = z(), [a, o] = x(null), [s, c] = x(!1);
995
+ return g(() => {
996
+ a !== null && c(a.querySelector("[data-part='item']") === null);
997
+ }, [a, i]), /* @__PURE__ */ w("div", {
998
+ ...u(n, "part", "group"),
999
+ "aria-labelledby": r,
1000
+ hidden: s,
1001
+ ref: o,
1002
+ role: "group",
1003
+ children: [/* @__PURE__ */ C("div", {
1004
+ "data-part": "group-label",
1005
+ "data-part-group-label": "",
1006
+ id: r,
1007
+ children: t
1008
+ }), e]
1009
+ });
1010
+ }
1011
+ function xe(e) {
1012
+ return /* @__PURE__ */ C("div", {
1013
+ "data-part": "separator",
1014
+ "data-part-separator": "",
1015
+ ref: e.ref,
1016
+ role: "separator"
1017
+ });
1018
+ }
1019
+ //#endregion
1020
+ export { ve as a, le as c, R as d, L as f, ye as i, z as l, q as n, he as o, xe as r, _e as s, be as t, F as u };