@slotted/react 0.1.0-beta.3 → 0.1.0-beta.5

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 (245) hide show
  1. package/README.md +16 -1
  2. package/dist/{accordion-D-YuMJzk.js → accordion-lCqrmQ3w.js} +43 -43
  3. package/dist/accordion.js +1 -1
  4. package/dist/{action-bar-OACchRZw.js → action-bar-ti3e6FK1.js} +1 -1
  5. package/dist/action-bar.js +1 -1
  6. package/dist/{app-shell-CmYvnu_7.js → app-shell-nnSP44OO.js} +271 -267
  7. package/dist/app-shell.js +1 -1
  8. package/dist/bin/slotted-agent-docs.mjs +297 -0
  9. package/dist/calendar-BZ6PP7Ke.js +436 -0
  10. package/dist/calendar.js +1 -1
  11. package/dist/{cascader-D1AhTyBL.js → cascader-Cn2Acpcv.js} +227 -210
  12. package/dist/cascader.js +1 -1
  13. package/dist/chart-04i6NZQA.js +968 -0
  14. package/dist/chart.js +1 -1
  15. package/dist/{checkbox-DfxFHZaU.js → checkbox-B4Sb1eXj.js} +3 -3
  16. package/dist/{checkbox-group-9sDgrV5Z.js → checkbox-group-LpGMuq9w.js} +2 -2
  17. package/dist/checkbox-group.js +1 -1
  18. package/dist/checkbox.js +1 -1
  19. package/dist/{code-block-CFHf8uTm.js → code-block-CTNiyt0U.js} +1 -1
  20. package/dist/code-block.js +1 -1
  21. package/dist/{collapsible-CGo49NNW.js → collapsible-F-K36XbF.js} +17 -17
  22. package/dist/collapsible.js +1 -1
  23. package/dist/{color-picker-CwbWzCKg.js → color-picker-BcRCeISx.js} +4 -4
  24. package/dist/color-picker.js +1 -1
  25. package/dist/{column-manager-CTtizVhm.js → column-manager-BtkYLs5G.js} +4 -4
  26. package/dist/column-manager.js +1 -1
  27. package/dist/{combobox-BVMI9lg8.js → combobox-C1D5doWM.js} +227 -198
  28. package/dist/combobox.js +1 -1
  29. package/dist/{context-menu-BuST6W94.js → context-menu-B00UIBVC.js} +1 -1
  30. package/dist/context-menu.js +1 -1
  31. package/dist/{currency-field-DD9A5U3D.js → currency-field-Dti9JFu0.js} +1 -1
  32. package/dist/currency-field.js +1 -1
  33. package/dist/{dashboard-grid-CBMP_-JV.js → dashboard-grid-CoLKLvYL.js} +1 -1
  34. package/dist/dashboard-grid.js +1 -1
  35. package/dist/{data-grid-BKaGMqIm.js → data-grid-DX95Y7mY.js} +18 -18
  36. package/dist/data-grid.js +1 -1
  37. package/dist/{data-list-oICmxGkA.js → data-list-CWYTPNm-.js} +2 -2
  38. package/dist/data-list.js +1 -1
  39. package/dist/date-field-BxEpqAPg.js +290 -0
  40. package/dist/date-field.js +1 -1
  41. package/dist/date-picker-DRk9SZp1.js +308 -0
  42. package/dist/date-picker.js +1 -1
  43. package/dist/date-range-picker-6Yz7avTS.js +483 -0
  44. package/dist/date-range-picker.js +1 -1
  45. package/dist/{datetime-field-B8TrmsDK.js → datetime-field-D2f9u6im.js} +1 -1
  46. package/dist/datetime-field.js +1 -1
  47. package/dist/datetime-picker-STqSWMkH.js +645 -0
  48. package/dist/datetime-picker.js +1 -1
  49. package/dist/datetime-range-picker-DQNQwr3K.js +1000 -0
  50. package/dist/datetime-range-picker.js +1 -1
  51. package/dist/{detail-panel-qOJiNuzr.js → detail-panel-z6WGleP4.js} +3 -3
  52. package/dist/detail-panel.js +1 -1
  53. package/dist/docs/AGENTS.snippet.md +2 -0
  54. package/dist/docs/app-shell.examples.md +1 -1
  55. package/dist/docs/app-shell.json +4 -4
  56. package/dist/docs/app-shell.md +2 -2
  57. package/dist/docs/calendar.json +7 -0
  58. package/dist/docs/calendar.md +1 -0
  59. package/dist/docs/collapsible.json +1 -1
  60. package/dist/docs/collapsible.md +1 -1
  61. package/dist/docs/date-field.json +8 -1
  62. package/dist/docs/date-field.md +2 -1
  63. package/dist/docs/date-picker.examples.md +29 -0
  64. package/dist/docs/date-picker.json +16 -1
  65. package/dist/docs/date-picker.md +2 -1
  66. package/dist/docs/guidelines/README.md +2 -2
  67. package/dist/docs/guidelines/composition.md +10 -0
  68. package/dist/docs/guidelines/index.md +3 -1
  69. package/dist/docs/guidelines/list-pages.md +12 -1
  70. package/dist/docs/guidelines/own-elements.md +1 -1
  71. package/dist/docs/page-header.json +1 -0
  72. package/dist/docs/page-header.md +1 -1
  73. package/dist/docs/page.json +1 -0
  74. package/dist/docs/page.md +1 -0
  75. package/dist/docs/select.json +1 -1
  76. package/dist/docs/select.md +1 -1
  77. package/dist/docs/skills/build-own-element/SKILL.md +6 -6
  78. package/dist/docs/skills/compose-screen/SKILL.md +13 -6
  79. package/dist/docs/skills/review-screen/SKILL.md +6 -6
  80. package/dist/docs/skills/theme-app/SKILL.md +1 -1
  81. package/dist/docs/skills/waiting-states/SKILL.md +2 -2
  82. package/dist/docs/table.json +13 -0
  83. package/dist/docs/table.md +3 -1
  84. package/dist/docs/tabs.json +22 -4
  85. package/dist/docs/tabs.md +6 -3
  86. package/dist/docs/text-field.json +1 -1
  87. package/dist/docs/text-field.md +1 -1
  88. package/dist/{entity-picker-CPDd73JR.js → entity-picker-BdySwW8F.js} +274 -256
  89. package/dist/entity-picker.js +1 -1
  90. package/dist/{event-calendar-CnF3iIZD.js → event-calendar-CiphPXdV.js} +4 -4
  91. package/dist/event-calendar.js +1 -1
  92. package/dist/{field-NJaCxl2h.js → field-BxQFpOXS.js} +1 -1
  93. package/dist/{field-group-hAzVa2O9.js → field-group-DcN_hiZN.js} +1 -1
  94. package/dist/field-group.js +1 -1
  95. package/dist/field.js +1 -1
  96. package/dist/{filter-bar-D_xDcAp2.js → filter-bar-C_dXljI_.js} +10 -10
  97. package/dist/filter-bar.js +1 -1
  98. package/dist/{hover-card-BJE5dtaQ.js → hover-card-DpVzwvDJ.js} +1 -1
  99. package/dist/hover-card.js +1 -1
  100. package/dist/{import-export-center-DpY2DGBZ.js → import-export-center-BQnMJz4g.js} +3 -3
  101. package/dist/import-export-center.js +1 -1
  102. package/dist/index.js +68 -68
  103. package/dist/{listbox-Dv856z9I.js → listbox-D0MJcAMm.js} +1 -1
  104. package/dist/listbox.js +1 -1
  105. package/dist/{markdown-CeG8mUbI.js → markdown-IiVoh6yi.js} +2 -2
  106. package/dist/markdown.js +1 -1
  107. package/dist/menu-parts-D6v_mz6O.js +809 -0
  108. package/dist/menu.js +1 -1
  109. package/dist/{menubar-b2CruimJ.js → menubar-DApIg1eR.js} +1 -1
  110. package/dist/menubar.js +1 -1
  111. package/dist/{multi-select-DQ5ds0fX.js → multi-select-B8z6ApgW.js} +286 -257
  112. package/dist/multi-select.js +1 -1
  113. package/dist/{notification-center-Sz54IziY.js → notification-center-CGEEHcRA.js} +2 -2
  114. package/dist/notification-center.js +1 -1
  115. package/dist/{number-field-BFIAmv-z.js → number-field-DXk1TAXA.js} +1 -1
  116. package/dist/number-field.js +1 -1
  117. package/dist/{otp-input-BNQhuKaT.js → otp-input-CI-kdNgx.js} +1 -1
  118. package/dist/otp-input.js +1 -1
  119. package/dist/{page-kQgLctsA.js → page-IiYXk1sz.js} +32 -32
  120. package/dist/{page-header-CWEBfMGq.js → page-header-Bn4nIGfF.js} +1 -1
  121. package/dist/page-header.js +1 -1
  122. package/dist/page.js +1 -1
  123. package/dist/{popover-Be7JWbGJ.js → popover-DEp8Bf3e.js} +186 -166
  124. package/dist/popover.js +1 -1
  125. package/dist/{prompt-composer-BxpdkTpZ.js → prompt-composer-DdcU3S3L.js} +1 -1
  126. package/dist/prompt-composer.js +1 -1
  127. package/dist/{radio-group-BaVIP9UH.js → radio-group-D8csBZ8Z.js} +2 -2
  128. package/dist/radio-group.js +1 -1
  129. package/dist/{rating-DYBQBzwB.js → rating-rI3b5zII.js} +1 -1
  130. package/dist/rating.js +1 -1
  131. package/dist/{saved-views-DlE_--Z9.js → saved-views-B3brBTD9.js} +4 -4
  132. package/dist/saved-views.js +1 -1
  133. package/dist/scroll-area-DQ_ansLu.js +112 -0
  134. package/dist/scroll-area.js +1 -1
  135. package/dist/{segmented-control-DmuOGiu6.js → segmented-control-C-PzkTtg.js} +2 -2
  136. package/dist/segmented-control.js +1 -1
  137. package/dist/{select-DOFqPy26.js → select-BUylPwpb.js} +309 -258
  138. package/dist/select.js +1 -1
  139. package/dist/{side-navigation-CBLtCzuJ.js → side-navigation-Bm-BZma1.js} +156 -140
  140. package/dist/side-navigation.js +1 -1
  141. package/dist/{slider-DTes4HLF.js → slider-fp7kyg-6.js} +1 -1
  142. package/dist/slider.js +1 -1
  143. package/dist/{split-button-CPgHiy9G.js → split-button-DKRm0j5c.js} +1 -1
  144. package/dist/split-button.js +1 -1
  145. package/dist/styles.css +1 -1
  146. package/dist/{switch-DQzuIhPX.js → switch-aVoc4C2F.js} +1 -1
  147. package/dist/switch.js +1 -1
  148. package/dist/{table-Cipi2c5X.js → table-BYEvFr4P.js} +206 -203
  149. package/dist/table.js +1 -1
  150. package/dist/tabs-HWmvOKM4.js +355 -0
  151. package/dist/tabs.js +1 -1
  152. package/dist/{tags-input-CcOkm0AW.js → tags-input-pbv6x1Pi.js} +1 -1
  153. package/dist/tags-input.js +1 -1
  154. package/dist/{text-field-DLfIZ0fk.js → text-field-CbQ6UCAP.js} +1 -1
  155. package/dist/text-field.js +1 -1
  156. package/dist/{textarea-CBJBJBi6.js → textarea-DJSfhrXH.js} +1 -1
  157. package/dist/textarea.js +1 -1
  158. package/dist/{time-field-DrhiCtUl.js → time-field-BI9n607q.js} +1 -1
  159. package/dist/time-field.js +1 -1
  160. package/dist/time-picker-D6SlQWNF.js +402 -0
  161. package/dist/time-picker.js +1 -1
  162. package/dist/time-range-picker-CcV3_45h.js +751 -0
  163. package/dist/time-range-picker.js +1 -1
  164. package/dist/{toggle-group-7iBR9Rn1.js → toggle-group-i7JPO8BM.js} +1 -1
  165. package/dist/toggle-group.js +1 -1
  166. package/dist/{toolbar-DDZpEftQ.js → toolbar-B9knmgHA.js} +1 -1
  167. package/dist/toolbar.js +1 -1
  168. package/dist/tooltip-CgjIROUy.js +410 -0
  169. package/dist/tooltip.js +1 -1
  170. package/dist/{top-navigation-e-tWMGNr.js → top-navigation-DiG2PF5W.js} +2 -2
  171. package/dist/top-navigation.js +1 -1
  172. package/dist/{transfer-CqZOTLMP.js → transfer--UOQVeKE.js} +5 -5
  173. package/dist/transfer.js +1 -1
  174. package/dist/types/accordion/accordion.d.ts.map +1 -1
  175. package/dist/types/app-shell/app-shell-parts.d.ts +6 -4
  176. package/dist/types/app-shell/app-shell-parts.d.ts.map +1 -1
  177. package/dist/types/app-shell/app-shell.d.ts.map +1 -1
  178. package/dist/types/calendar/calendar.d.ts +1 -1
  179. package/dist/types/calendar/calendar.d.ts.map +1 -1
  180. package/dist/types/calendar/calendar.types.d.ts +9 -0
  181. package/dist/types/calendar/calendar.types.d.ts.map +1 -1
  182. package/dist/types/calendar/index.d.ts +1 -1
  183. package/dist/types/calendar/index.d.ts.map +1 -1
  184. package/dist/types/cascader/cascader.d.ts.map +1 -1
  185. package/dist/types/chart/chart.d.ts.map +1 -1
  186. package/dist/types/collapsible/collapsible-parts.d.ts.map +1 -1
  187. package/dist/types/combobox/combobox-parts.d.ts.map +1 -1
  188. package/dist/types/date-field/date-field.d.ts +1 -1
  189. package/dist/types/date-field/date-field.d.ts.map +1 -1
  190. package/dist/types/date-field/date-field.types.d.ts +7 -0
  191. package/dist/types/date-field/date-field.types.d.ts.map +1 -1
  192. package/dist/types/date-picker/date-picker.d.ts +5 -1
  193. package/dist/types/date-picker/date-picker.d.ts.map +1 -1
  194. package/dist/types/date-picker/date-picker.types.d.ts +20 -2
  195. package/dist/types/date-picker/date-picker.types.d.ts.map +1 -1
  196. package/dist/types/date-picker/index.d.ts +1 -1
  197. package/dist/types/date-picker/index.d.ts.map +1 -1
  198. package/dist/types/date-range-picker/date-range-picker.d.ts.map +1 -1
  199. package/dist/types/datetime-picker/datetime-picker.d.ts.map +1 -1
  200. package/dist/types/datetime-range-picker/datetime-range-picker.d.ts.map +1 -1
  201. package/dist/types/entity-picker/entity-picker-popup.d.ts.map +1 -1
  202. package/dist/types/menu/menu-parts.d.ts.map +1 -1
  203. package/dist/types/multi-select/multi-select-parts.d.ts.map +1 -1
  204. package/dist/types/page/page.d.ts.map +1 -1
  205. package/dist/types/popover/popover-parts.d.ts.map +1 -1
  206. package/dist/types/scroll-area/scroll-area.d.ts.map +1 -1
  207. package/dist/types/select/select-items.d.ts.map +1 -1
  208. package/dist/types/select/select-parts.d.ts.map +1 -1
  209. package/dist/types/select/select.d.ts.map +1 -1
  210. package/dist/types/side-navigation/side-navigation-parts.d.ts.map +1 -1
  211. package/dist/types/stat-card/stat-card.types.d.ts +2 -2
  212. package/dist/types/stat-card/stat-card.types.d.ts.map +1 -1
  213. package/dist/types/table/index.d.ts +1 -1
  214. package/dist/types/table/index.d.ts.map +1 -1
  215. package/dist/types/table/table-content.d.ts.map +1 -1
  216. package/dist/types/table/table-defaults.d.ts.map +1 -1
  217. package/dist/types/table/table.d.ts +1 -1
  218. package/dist/types/table/table.d.ts.map +1 -1
  219. package/dist/types/table/table.types.d.ts +15 -0
  220. package/dist/types/table/table.types.d.ts.map +1 -1
  221. package/dist/types/tabs/tabs-parts.d.ts +2 -4
  222. package/dist/types/tabs/tabs-parts.d.ts.map +1 -1
  223. package/dist/types/tabs/tabs.d.ts +1 -1
  224. package/dist/types/tabs/tabs.d.ts.map +1 -1
  225. package/dist/types/tabs/tabs.types.d.ts +18 -0
  226. package/dist/types/tabs/tabs.types.d.ts.map +1 -1
  227. package/dist/types/time-picker/time-picker.d.ts.map +1 -1
  228. package/dist/types/time-range-picker/time-range-picker.d.ts.map +1 -1
  229. package/dist/types/tooltip/tooltip-parts.d.ts.map +1 -1
  230. package/dist/{upload-DjnlVR8y.js → upload-CLX5cURk.js} +1 -1
  231. package/dist/upload.js +1 -1
  232. package/package.json +10 -7
  233. package/dist/calendar-B3mio8iQ.js +0 -387
  234. package/dist/chart-O0ZhkzJe.js +0 -966
  235. package/dist/date-field-CYcN6diW.js +0 -279
  236. package/dist/date-picker-4X-_2ltN.js +0 -264
  237. package/dist/date-range-picker-CNOAtHwU.js +0 -471
  238. package/dist/datetime-picker-HDVlUhzy.js +0 -629
  239. package/dist/datetime-range-picker-IqOFJtdW.js +0 -994
  240. package/dist/menu-parts-W58pVNUt.js +0 -786
  241. package/dist/scroll-area-BriwmvYY.js +0 -111
  242. package/dist/tabs-DQ36APY-.js +0 -343
  243. package/dist/time-picker-CRQsMJbQ.js +0 -396
  244. package/dist/time-range-picker-DlZJsj1e.js +0 -745
  245. package/dist/tooltip-DbKTPe_i.js +0 -392
@@ -1,6 +1,6 @@
1
1
  import { n as e, t } from "./icon-T9Yt4tnm.js";
2
2
  import { n, r } from "./i18n-DpW8lqJ1.js";
3
- import { b as i } from "./field-NJaCxl2h.js";
3
+ import { b as i } from "./field-BxQFpOXS.js";
4
4
  import { t as a } from "./select-tags-CQMcHIQN.js";
5
5
  import { t as o } from "./highlight-0Qw23QPp.js";
6
6
  import { tabbables as s } from "@slotted/core/focus";
@@ -11,13 +11,13 @@ import { createPresence as S } from "@slotted/core/presence";
11
11
  import { createPortalRoot as ee, setPortalContainer as C } from "@slotted/core/portal";
12
12
  import { createDismissableLayer as w } from "@slotted/core/dismissable-layer";
13
13
  import { createPositioner as T } from "@slotted/core/positioner";
14
- import { createTypeahead as E, isPrintable as D } from "@slotted/core/typeahead";
15
- import { createPortal as O } from "react-dom";
16
- import { selectMessages as k } from "@slotted/core/i18n";
17
- import { createFilter as te, moveIndex as A, revealWithin as j } from "@slotted/core/collection";
18
- import { matchRanges as M } from "@slotted/core/highlight";
14
+ import { createTypeahead as te, isPrintable as E } from "@slotted/core/typeahead";
15
+ import { createPortal as D } from "react-dom";
16
+ import { selectMessages as O } from "@slotted/core/i18n";
17
+ import { createFilter as k, moveIndex as ne, revealWithin as A } from "@slotted/core/collection";
18
+ import { matchRanges as j } from "@slotted/core/highlight";
19
19
  //#region src/select/select-defaults.tsx
20
- var N = {
20
+ var M = {
21
21
  align: "start",
22
22
  alignOffset: 0,
23
23
  clearable: !1,
@@ -48,12 +48,12 @@ var N = {
48
48
  typeaheadTimeout: 500,
49
49
  variant: "outline",
50
50
  width: "content"
51
- }, P = l(N);
52
- function F() {
53
- return d(P);
51
+ }, N = l(M);
52
+ function P() {
53
+ return d(N);
54
54
  }
55
- function I({ children: e, container: t, ...n }) {
56
- let r = F();
55
+ function F({ children: e, container: t, ...n }) {
56
+ let r = P();
57
57
  f(() => {
58
58
  if (t !== void 0) return C(t), () => C(null);
59
59
  }, [t]);
@@ -89,20 +89,20 @@ function I({ children: e, container: t, ...n }) {
89
89
  variant: n.variant ?? r.variant,
90
90
  width: n.width ?? r.width
91
91
  };
92
- return /* @__PURE__ */ b(P.Provider, {
92
+ return /* @__PURE__ */ b(N.Provider, {
93
93
  value: i,
94
94
  children: e
95
95
  });
96
96
  }
97
97
  //#endregion
98
98
  //#region src/select/select.tsx
99
- var L = l(void 0);
100
- function R() {
101
- let e = d(L);
99
+ var I = l(void 0);
100
+ function L() {
101
+ let e = d(I);
102
102
  if (e === void 0) throw Error("SelectTrigger, SelectContent and every option have to be inside a Select.");
103
103
  return e;
104
104
  }
105
- function ne(e) {
105
+ function R(e) {
106
106
  return e == null ? [] : typeof e == "string" ? [e] : e;
107
107
  }
108
108
  function re(e, t) {
@@ -112,36 +112,36 @@ var ie = (e) => "options" in e;
112
112
  function ae(e) {
113
113
  return e === void 0 ? [] : e.flatMap((e) => ie(e) ? e.options : [e]);
114
114
  }
115
- function oe({ align: e, alignOffset: t, children: a, clearable: o, closeOnEscape: s, closeOnOutsidePress: l, closeOnSelect: d, collisionPadding: f, defaultHighlightedValue: h = null, defaultOpen: y = !1, defaultSearchValue: x = "", defaultValue: S, disabled: ee, filter: C, flip: w, form: T, fullWidth: E, hideWhenDetached: D, highlightedValue: O, highlightMatch: A, invalid: M, items: N, loading: P, locale: I, loop: R, messages: ie, mount: oe, multiple: z, name: B, onHighlightedValueChange: V, onOpenChange: H, onSearchValueChange: se, onValueChange: ce, open: U, portal: le, readOnly: ue, ref: W, required: de, search: fe, searchValue: G, shift: pe, side: me, sideOffset: he, size: ge, strategy: _e, total: ve, typeahead: ye, typeaheadTimeout: be, value: xe, variant: Se, width: Ce }) {
116
- let K = F(), q = i(), we = r(k, ie), Te = n(), Ee = I ?? Te, J = p(), De = `${J}listbox`, Oe = `${J}list`, ke = `${J}search`, Ae = q?.ids.control ?? `${J}trigger`, [je, Me] = v(y), [Ne] = v(() => ne(S)), [Pe, Fe] = v(Ne), [Ie, Le] = v(h), [Re, ze] = v(x), [Be, Ve] = v(null), [Y, He] = v(null), [Ue, We] = v(null), Ge = z ?? K.multiple, Ke = ee ?? q?.disabled ?? K.disabled, qe = ue ?? q?.readOnly ?? K.readOnly, X = (U ?? je) && !Ke, Je = xe === void 0 ? Pe : ne(xe), Ye = O === void 0 ? Ie : O, Xe = fe ?? K.search, Z = Xe ? G === void 0 ? Re : G : "", Ze = _(X);
117
- X && (Ze.current = !0);
115
+ function oe({ align: e, alignOffset: t, children: a, clearable: o, closeOnEscape: s, closeOnOutsidePress: l, closeOnSelect: d, collisionPadding: f, defaultHighlightedValue: h = null, defaultOpen: y = !1, defaultSearchValue: x = "", defaultValue: S, disabled: ee, filter: C, flip: w, form: T, fullWidth: te, hideWhenDetached: E, highlightedValue: D, highlightMatch: ne, invalid: j, items: M, loading: N, locale: F, loop: L, messages: ie, mount: oe, multiple: se, name: z, onHighlightedValueChange: B, onOpenChange: V, onSearchValueChange: H, onValueChange: U, open: W, portal: ce, readOnly: le, ref: G, required: ue, search: de, searchValue: K, shift: q, side: fe, sideOffset: pe, size: me, strategy: he, total: ge, typeahead: _e, typeaheadTimeout: ve, value: ye, variant: be, width: xe }) {
116
+ let J = P(), Y = i(), Se = r(O, ie), Ce = n(), we = F ?? Ce, X = p(), Te = `${X}listbox`, Ee = `${X}list`, De = `${X}search`, Oe = Y?.ids.control ?? `${X}trigger`, [ke, Ae] = v(y), [je] = v(() => R(S)), [Me, Ne] = v(je), [Pe, Fe] = v(h), [Ie, Le] = v(x), [Re, ze] = v(null), [Be, Ve] = v(null), [He, Ue] = v(null), We = se ?? J.multiple, Ge = ee ?? Y?.disabled ?? J.disabled, Ke = le ?? Y?.readOnly ?? J.readOnly, qe = (W ?? ke) && !Ge, Je = ye === void 0 ? Me : R(ye), Ye = D === void 0 ? Pe : D, Xe = de ?? J.search, Z = Xe ? K === void 0 ? Ie : K : "", Ze = _(qe);
117
+ qe && (Ze.current = !0);
118
118
  let Qe = _("selected"), $e = _(/* @__PURE__ */ new Map()), [et, tt] = v(0), nt = g(() => {
119
119
  let e = /* @__PURE__ */ new Map();
120
- for (let t of ae(N)) e.set(t.value, t.label);
120
+ for (let t of ae(M)) e.set(t.value, t.label);
121
121
  return e;
122
- }, [N]), rt = u((e, t) => {
122
+ }, [M]), rt = u((e, t) => {
123
123
  $e.current.get(e) !== t && ($e.current.set(e, t), tt((e) => e + 1));
124
- }, []), it = u((e) => nt.get(e) ?? $e.current.get(e), [nt, et]), at = g(() => te({ locale: Ee }), [Ee]), ot = u((e) => Z === "" || C === null ? !0 : C === void 0 ? at.contains(e, Z) : C(e, Z), [
124
+ }, []), it = u((e) => nt.get(e) ?? $e.current.get(e), [nt, et]), at = g(() => k({ locale: we }), [we]), ot = u((e) => Z === "" || C === null ? !0 : C === void 0 ? at.contains(e, Z) : C(e, Z), [
125
125
  Z,
126
126
  at,
127
127
  C
128
- ]), st = u((e) => `${J}option-${encodeURIComponent(e)}`, [J]), ct = {
128
+ ]), st = u((e) => `${X}option-${encodeURIComponent(e)}`, [X]), ct = {
129
129
  currentHighlighted: Ye,
130
- currentOpen: X,
130
+ currentOpen: qe,
131
131
  currentQuery: Z,
132
132
  currentSelection: Je,
133
- highlightedValue: O,
134
- onHighlightedValueChange: V,
135
- onOpenChange: H,
136
- onSearchValueChange: se,
137
- onValueChange: ce,
138
- open: U,
139
- resolvedMultiple: Ge,
133
+ highlightedValue: D,
134
+ onHighlightedValueChange: B,
135
+ onOpenChange: V,
136
+ onSearchValueChange: H,
137
+ onValueChange: U,
138
+ open: W,
139
+ resolvedMultiple: We,
140
140
  resolvedSearch: Xe,
141
- searchNode: Ue,
142
- searchValue: G,
143
- triggerNode: Be,
144
- value: xe
141
+ searchNode: He,
142
+ searchValue: K,
143
+ triggerNode: Re,
144
+ value: ye
145
145
  }, Q = _(ct);
146
146
  Q.current = ct;
147
147
  let lt = u((e, t, n) => {
@@ -150,21 +150,21 @@ function oe({ align: e, alignOffset: t, children: a, clearable: o, closeOnEscape
150
150
  controlled: r.searchValue,
151
151
  initial: r.currentQuery,
152
152
  onRequest: (e) => r.onSearchValueChange?.(e.value, e)
153
- }).request(e, t, n) && ze(e);
153
+ }).request(e, t, n) && Le(e);
154
154
  }, []), ut = u((e, t, n) => {
155
155
  let r = Q.current;
156
156
  e !== r.currentOpen && c({
157
157
  controlled: r.open,
158
158
  initial: r.currentOpen,
159
159
  onRequest: (e) => r.onOpenChange?.(e.value, e)
160
- }).request(e, t, n) && (Me(e), e || (Le(null), Qe.current = "selected", lt("", "clear", n)));
160
+ }).request(e, t, n) && (Ae(e), e || (Fe(null), Qe.current = "selected", lt("", "clear", n)));
161
161
  }, [lt]), dt = u((e, t, n) => {
162
162
  let r = Q.current;
163
163
  e !== r.currentHighlighted && c({
164
164
  controlled: r.highlightedValue,
165
165
  initial: r.currentHighlighted,
166
166
  onRequest: (e) => r.onHighlightedValueChange?.(e.value, e)
167
- }).request(e, t, n) && Le(e);
167
+ }).request(e, t, n) && Fe(e);
168
168
  }, []), $ = u((e, t, n) => {
169
169
  let r = Q.current;
170
170
  e.length === r.currentSelection.length && e.every((e, t) => e === r.currentSelection[t]) || c({
@@ -172,7 +172,7 @@ function oe({ align: e, alignOffset: t, children: a, clearable: o, closeOnEscape
172
172
  initial: re(r.currentSelection, r.resolvedMultiple),
173
173
  equals: () => !1,
174
174
  onRequest: (e) => r.onValueChange?.(e.value, e)
175
- }).request(re(e, r.resolvedMultiple), t, n) && Fe(e);
175
+ }).request(re(e, r.resolvedMultiple), t, n) && Ne(e);
176
176
  }, []), ft = u((e, t, n) => {
177
177
  let r = Q.current;
178
178
  if (!r.resolvedMultiple) {
@@ -181,8 +181,8 @@ function oe({ align: e, alignOffset: t, children: a, clearable: o, closeOnEscape
181
181
  }
182
182
  let i = r.currentSelection.includes(e);
183
183
  $(i ? r.currentSelection.filter((t) => t !== e) : [...r.currentSelection, e], t, n);
184
- }, [$]), pt = u((e, t) => $([], e, t), [$]), mt = u((e) => $(Ne, "programmatic", e), [$, Ne]);
185
- m(W, () => ({
184
+ }, [$]), pt = u((e, t) => $([], e, t), [$]), mt = u((e) => $(je, "programmatic", e), [$, je]);
185
+ m(G, () => ({
186
186
  close: () => ut(!1, "programmatic"),
187
187
  focus: () => Q.current.triggerNode?.focus({ preventScroll: !0 }),
188
188
  focusSearch: () => {
@@ -191,162 +191,170 @@ function oe({ align: e, alignOffset: t, children: a, clearable: o, closeOnEscape
191
191
  },
192
192
  open: () => ut(!0, "programmatic"),
193
193
  scrollToKey: (e) => {
194
- let t = Y?.querySelector(`[data-part='item'][data-value="${CSS.escape(e)}"]`);
195
- t != null && Y !== null && j(t, Y);
194
+ let t = Be?.querySelector(`[data-part='item'][data-value="${CSS.escape(e)}"]`);
195
+ t != null && Be !== null && A(t, Be);
196
196
  }
197
- }), [Y, ut]);
197
+ }), [Be, ut]);
198
198
  let ht = {
199
- align: e ?? K.align,
200
- alignOffset: t ?? K.alignOffset,
199
+ align: e ?? J.align,
200
+ alignOffset: t ?? J.alignOffset,
201
201
  clear: pt,
202
- clearable: o ?? K.clearable,
203
- closeOnEscape: s ?? K.closeOnEscape,
204
- closeOnOutsidePress: l ?? K.closeOnOutsidePress,
205
- closeOnSelect: d ?? K.closeOnSelect,
206
- collisionPadding: f ?? K.collisionPadding,
207
- contentId: De,
208
- contentNode: Y,
209
- disabled: Ke,
202
+ clearable: o ?? J.clearable,
203
+ closeOnEscape: s ?? J.closeOnEscape,
204
+ closeOnOutsidePress: l ?? J.closeOnOutsidePress,
205
+ closeOnSelect: d ?? J.closeOnSelect,
206
+ collisionPadding: f ?? J.collisionPadding,
207
+ contentId: Te,
208
+ contentNode: Be,
209
+ disabled: Ge,
210
210
  entry: Qe,
211
- flip: w ?? K.flip,
211
+ flip: w ?? J.flip,
212
212
  form: T,
213
- fullWidth: E ?? K.fullWidth,
214
- hideWhenDetached: D ?? K.hideWhenDetached,
213
+ fullWidth: te ?? J.fullWidth,
214
+ hideWhenDetached: E ?? J.hideWhenDetached,
215
215
  highlighted: Ye,
216
- highlightMatch: A ?? K.highlightMatch,
217
- invalid: M ?? q?.invalid ?? K.invalid,
216
+ highlightMatch: ne ?? J.highlightMatch,
217
+ invalid: j ?? Y?.invalid ?? J.invalid,
218
218
  labelFor: it,
219
- listId: Oe,
220
- loading: P ?? K.loading,
221
- locale: Ee,
222
- loop: R ?? K.loop,
219
+ listId: Ee,
220
+ loading: N ?? J.loading,
221
+ locale: we,
222
+ loop: L ?? J.loop,
223
223
  matches: ot,
224
- mount: oe ?? K.mount,
225
- multiple: Ge,
226
- name: B,
227
- open: X,
224
+ mount: oe ?? J.mount,
225
+ multiple: We,
226
+ name: z,
227
+ open: qe,
228
228
  optionId: st,
229
- portal: le ?? K.portal,
229
+ portal: ce ?? J.portal,
230
230
  query: Z,
231
- readOnly: qe,
231
+ readOnly: Ke,
232
232
  registerLabel: rt,
233
- required: de ?? q?.required ?? K.required,
233
+ required: ue ?? Y?.required ?? J.required,
234
234
  restore: mt,
235
235
  search: Xe,
236
- searchId: ke,
237
- searchNode: Ue,
236
+ searchId: De,
237
+ searchNode: He,
238
238
  seen: Ze.current,
239
239
  selection: Je,
240
- setContentNode: He,
240
+ setContentNode: Ve,
241
241
  setHighlighted: dt,
242
242
  setOpen: ut,
243
243
  setQuery: lt,
244
- setSearchNode: We,
245
- setTriggerNode: Ve,
246
- shift: pe ?? K.shift,
247
- side: me ?? K.side,
248
- sideOffset: he ?? K.sideOffset,
249
- size: ge ?? q?.size ?? K.size,
250
- strategy: _e ?? K.strategy,
251
- t: we,
244
+ setSearchNode: Ue,
245
+ setTriggerNode: ze,
246
+ shift: q ?? J.shift,
247
+ side: fe ?? J.side,
248
+ sideOffset: pe ?? J.sideOffset,
249
+ size: me ?? Y?.size ?? J.size,
250
+ strategy: he ?? J.strategy,
251
+ t: Se,
252
252
  toggle: ft,
253
- total: ve,
254
- triggerId: Ae,
255
- triggerNode: Be,
256
- typeahead: Xe ? !1 : ye ?? K.typeahead,
257
- typeaheadTimeout: be ?? K.typeaheadTimeout,
258
- variant: Se ?? K.variant,
259
- width: Ce ?? K.width
253
+ total: ge,
254
+ triggerId: Oe,
255
+ triggerNode: Re,
256
+ typeahead: Xe ? !1 : _e ?? J.typeahead,
257
+ typeaheadTimeout: ve ?? J.typeaheadTimeout,
258
+ variant: be ?? J.variant,
259
+ width: xe ?? J.width
260
260
  };
261
- return /* @__PURE__ */ b(L.Provider, {
261
+ return /* @__PURE__ */ b(I.Provider, {
262
262
  value: ht,
263
263
  children: a
264
264
  });
265
265
  }
266
266
  //#endregion
267
267
  //#region src/select/select-collection.ts
268
- var z = "[data-part='item']";
269
- function B(e) {
270
- return e === null ? [] : [...e.querySelectorAll(z)];
268
+ var se = "[data-part='item']";
269
+ function z(e) {
270
+ return e === null ? [] : [...e.querySelectorAll(se)];
271
271
  }
272
- var V = (e) => e.dataset.value ?? "", H = (e) => e.dataset.disabled === void 0, se = (e) => e.dataset.textValue ?? e.querySelector("[data-part='label']")?.textContent?.trim() ?? e.textContent?.trim() ?? "";
273
- function ce(e) {
274
- let t = B(e).filter(H);
272
+ var B = (e) => e.dataset.value ?? "", V = (e) => e.dataset.disabled === void 0, H = (e) => e.dataset.textValue ?? e.querySelector("[data-part='label']")?.textContent?.trim() ?? e.textContent?.trim() ?? "";
273
+ function U(e) {
274
+ let t = z(e).filter(V);
275
275
  return {
276
276
  elements: t,
277
- labels: t.map(se)
277
+ labels: t.map(H)
278
278
  };
279
279
  }
280
- function U(e, t, n, r) {
281
- let i = B(e);
280
+ function W(e, t, n, r) {
281
+ let i = z(e);
282
282
  if (i.length === 0) return null;
283
- let a = A({
284
- enabled: i.map(H),
285
- from: t === null ? -1 : i.findIndex((e) => V(e) === t),
283
+ let a = ne({
284
+ enabled: i.map(V),
285
+ from: t === null ? -1 : i.findIndex((e) => B(e) === t),
286
286
  intent: n,
287
287
  loop: r
288
288
  });
289
- return a === -1 ? null : V(i[a]);
289
+ return a === -1 ? null : B(i[a]);
290
290
  }
291
- function le(e, t, n, r) {
291
+ function ce(e, t, n, r) {
292
292
  if (n === "none") return null;
293
293
  if (n === "selected") {
294
- let n = B(e).find((e) => t.includes(V(e)) && H(e));
295
- return n === void 0 ? U(e, null, "first", r) : V(n);
294
+ let n = z(e).find((e) => t.includes(B(e)) && V(e));
295
+ return n === void 0 ? W(e, null, "first", r) : B(n);
296
296
  }
297
- return U(e, null, n, r);
297
+ return W(e, null, n, r);
298
298
  }
299
- function ue(e, t) {
299
+ function le(e, t) {
300
300
  if (e === null || t === null) return;
301
- let n = B(e).find((e) => V(e) === t);
302
- n !== void 0 && j(n, e);
301
+ let n = z(e).find((e) => B(e) === t);
302
+ n !== void 0 && A(n, e);
303
303
  }
304
304
  //#endregion
305
305
  //#region src/select/select-parts.tsx
306
- function W(e, t) {
306
+ function G(e, t) {
307
307
  return (n) => {
308
308
  e?.(n), n.defaultPrevented || t(n);
309
309
  };
310
310
  }
311
- function de(e, t, n) {
311
+ function ue(e, t, n) {
312
312
  if (e === null) return;
313
313
  let r = s(document.body).filter((e) => t === null || !t.contains(e)), i = r.indexOf(e);
314
314
  ((i === -1 ? void 0 : r[i + (n ? -1 : 1)]) ?? e).focus({ preventScroll: !0 });
315
315
  }
316
- function fe(e, t, n) {
317
- let r = (e.parentElement ?? e).getBoundingClientRect();
318
- return t >= r.left && t <= r.right && n >= r.top && n <= r.bottom;
319
- }
320
- function G(e, ...t) {
316
+ function de(e, ...t) {
321
317
  for (let n of t) typeof n == "function" ? n(e) : n != null && (n.current = e);
322
318
  }
323
- function pe({ children: n, ref: r, render: o, ...s }) {
324
- let c = R(), l = i(), d = l?.registerControl;
319
+ function K({ children: n, ref: r, render: o, ...s }) {
320
+ let c = L(), l = i(), d = l?.registerControl;
325
321
  f(() => d?.(), [d]);
326
- let [p, m] = v(null), [h, g] = v(null), [S, ee] = v(!1), C = _(null), w = _(null);
322
+ let [p, m] = v(null), [h, g] = v(null), S = _(!1);
323
+ f(() => {
324
+ if (h === null) return;
325
+ let e = h.ownerDocument, t = () => {
326
+ S.current = !1;
327
+ }, n = () => {
328
+ S.current = !0;
329
+ };
330
+ return e.addEventListener("pointerdown", t, !0), h.addEventListener("pointerdown", n), () => {
331
+ e.removeEventListener("pointerdown", t, !0), h.removeEventListener("pointerdown", n);
332
+ };
333
+ }, [h]);
334
+ let [ee, C] = v(!1), w = _(null), T = _(null);
327
335
  f(() => {
328
336
  c.setTriggerNode(p);
329
337
  }, [p, c]), f(() => {
330
338
  if (!c.typeahead) return;
331
- let e = E({ timeout: c.typeaheadTimeout });
332
- return w.current = e, () => {
333
- e.destroy(), w.current = null;
339
+ let e = te({ timeout: c.typeaheadTimeout });
340
+ return T.current = e, () => {
341
+ e.destroy(), T.current = null;
334
342
  };
335
343
  }, [c.typeahead, c.typeaheadTimeout]), f(() => {
336
344
  if (!c.open || c.contentNode === null) return;
337
- let e = C.current;
338
- if (C.current = null, e === null || w.current === null) return;
339
- let { elements: t, labels: n } = ce(c.contentNode), r = w.current.match(e, n, -1);
340
- r !== -1 && c.setHighlighted(V(t[r]), "keyboard");
345
+ let e = w.current;
346
+ if (w.current = null, e === null || T.current === null) return;
347
+ let { elements: t, labels: n } = U(c.contentNode), r = T.current.match(e, n, -1);
348
+ r !== -1 && c.setHighlighted(B(t[r]), "keyboard");
341
349
  }, [
342
350
  c,
343
351
  c.contentNode,
344
352
  c.open
345
353
  ]);
346
- let T = (e, t) => {
354
+ let D = (e, t) => {
347
355
  c.entry.current = e, c.setOpen(!0, "keyboard", t);
348
356
  }, O = (e, t) => {
349
- let n = U(c.contentNode, c.highlighted, e, c.loop);
357
+ let n = W(c.contentNode, c.highlighted, e, c.loop);
350
358
  n !== null && c.setHighlighted(n, "keyboard", t);
351
359
  }, k = (e, t) => {
352
360
  if (c.highlighted === null) {
@@ -354,34 +362,34 @@ function pe({ children: n, ref: r, render: o, ...s }) {
354
362
  return;
355
363
  }
356
364
  c.toggle(c.highlighted, "keyboard", e), t && c.setOpen(!1, "select", e);
357
- }, te = (e) => {
365
+ }, ne = (e) => {
358
366
  if (c.disabled || c.readOnly) return;
359
367
  let t = e.altKey;
360
368
  if (!c.open) {
361
369
  switch (e.key) {
362
370
  case "ArrowDown":
363
- e.preventDefault(), T(t ? "none" : "selected", e.nativeEvent);
371
+ e.preventDefault(), D(t ? "none" : "selected", e.nativeEvent);
364
372
  return;
365
373
  case "ArrowUp":
366
- e.preventDefault(), T("last", e.nativeEvent);
374
+ e.preventDefault(), D("last", e.nativeEvent);
367
375
  return;
368
376
  case "Enter":
369
377
  case " ":
370
- e.preventDefault(), T("selected", e.nativeEvent);
378
+ e.preventDefault(), D("selected", e.nativeEvent);
371
379
  return;
372
380
  case "Home":
373
- e.preventDefault(), T("first", e.nativeEvent);
381
+ e.preventDefault(), D("first", e.nativeEvent);
374
382
  return;
375
383
  case "End":
376
- e.preventDefault(), T("last", e.nativeEvent);
384
+ e.preventDefault(), D("last", e.nativeEvent);
377
385
  return;
378
386
  }
379
- if (!e.ctrlKey && !e.metaKey && !t && D(e.key)) {
387
+ if (!e.ctrlKey && !e.metaKey && !t && E(e.key)) {
380
388
  if (c.search) {
381
- e.preventDefault(), c.setQuery(e.key, "keyboard", e.nativeEvent), T("first", e.nativeEvent);
389
+ e.preventDefault(), c.setQuery(e.key, "keyboard", e.nativeEvent), D("first", e.nativeEvent);
382
390
  return;
383
391
  }
384
- c.typeahead && (e.preventDefault(), C.current = e.key, T("none", e.nativeEvent));
392
+ c.typeahead && (e.preventDefault(), w.current = e.key, D("none", e.nativeEvent));
385
393
  }
386
394
  return;
387
395
  }
@@ -417,12 +425,13 @@ function pe({ children: n, ref: r, render: o, ...s }) {
417
425
  k(e.nativeEvent, !0);
418
426
  return;
419
427
  }
420
- if (!c.typeahead || w.current === null || e.ctrlKey || e.metaKey || t || !D(e.key, w.current.query.length > 0)) return;
428
+ if (!c.typeahead || T.current === null || e.ctrlKey || e.metaKey || t || !E(e.key, T.current.query.length > 0)) return;
421
429
  e.preventDefault();
422
- let { elements: n, labels: r } = ce(c.contentNode), i = n.findIndex((e) => V(e) === c.highlighted), a = w.current.match(e.key, r, i);
423
- a !== -1 && c.setHighlighted(V(n[a]), "keyboard");
430
+ let { elements: n, labels: r } = U(c.contentNode), i = n.findIndex((e) => B(e) === c.highlighted), a = T.current.match(e.key, r, i);
431
+ a !== -1 && c.setHighlighted(B(n[a]), "keyboard");
424
432
  }, A = (e) => {
425
- if (e.detail > 0 && !fe(e.currentTarget, e.clientX, e.clientY)) {
433
+ let t = S.current;
434
+ if (S.current = !1, e.detail > 0 && !t) {
426
435
  e.currentTarget.focus({ preventScroll: !0 });
427
436
  return;
428
437
  }
@@ -430,7 +439,7 @@ function pe({ children: n, ref: r, render: o, ...s }) {
430
439
  }, j = (e) => {
431
440
  c.clear("clear", e.nativeEvent), p?.focus({ preventScroll: !0 });
432
441
  }, M = u((e) => {
433
- m(e), G(e, r);
442
+ m(e), de(e, r);
434
443
  }, [r]), N = [s["aria-describedby"], l?.describedBy].filter(Boolean).join(" "), P = c.clearable && c.selection.length > 0 && !c.disabled && !c.readOnly, F = {
435
444
  "data-part": "root",
436
445
  "data-size": c.size,
@@ -444,18 +453,18 @@ function pe({ children: n, ref: r, render: o, ...s }) {
444
453
  ...c.invalid ? { "data-invalid": "" } : {},
445
454
  ...c.required ? { "data-required": "" } : {},
446
455
  ...c.loading ? { "data-loading": "" } : {},
447
- ...S ? { "data-narrow": "" } : {}
456
+ ...ee ? { "data-narrow": "" } : {}
448
457
  }, I = c.multiple && c.selection.length > 0 ? /* @__PURE__ */ b(a, {
449
458
  disabled: c.disabled || c.readOnly,
450
459
  frame: h,
451
460
  labelFor: c.labelFor,
452
- onNarrow: ee,
461
+ onNarrow: C,
453
462
  onRemove: (e, t) => {
454
463
  c.toggle(e, "select", t.nativeEvent), p?.focus({ preventScroll: !0 });
455
464
  },
456
465
  removeLabel: (e) => c.t("remove", { label: e }),
457
466
  values: c.selection
458
- }) : null, L = /* @__PURE__ */ x(y, { children: [
467
+ }) : null, R = /* @__PURE__ */ x(y, { children: [
459
468
  /* @__PURE__ */ b("button", {
460
469
  ...s,
461
470
  "aria-activedescendant": c.open && !c.search && c.highlighted !== null ? c.optionId(c.highlighted) : void 0,
@@ -470,8 +479,8 @@ function pe({ children: n, ref: r, render: o, ...s }) {
470
479
  "data-part": "trigger",
471
480
  disabled: c.disabled,
472
481
  id: c.triggerId,
473
- onClick: W(s.onClick, A),
474
- onKeyDown: W(s.onKeyDown, te),
482
+ onClick: G(s.onClick, A),
483
+ onKeyDown: G(s.onKeyDown, ne),
475
484
  ref: M,
476
485
  role: "combobox",
477
486
  type: "button",
@@ -493,19 +502,19 @@ function pe({ children: n, ref: r, render: o, ...s }) {
493
502
  "data-part": "arrow",
494
503
  children: /* @__PURE__ */ b(t, { children: /* @__PURE__ */ b(e, { name: "chevron-down" }) })
495
504
  }),
496
- /* @__PURE__ */ b(me, {})
505
+ /* @__PURE__ */ b(q, {})
497
506
  ] });
498
507
  return o === void 0 ? /* @__PURE__ */ b("div", {
499
508
  ...F,
500
509
  ref: g,
501
- children: L
510
+ children: R
502
511
  }) : o({
503
512
  ...F,
504
- children: L
513
+ children: R
505
514
  });
506
515
  }
507
- function me() {
508
- let e = R(), [t, n] = v(null), { restore: r } = e;
516
+ function q() {
517
+ let e = L(), [t, n] = v(null), { restore: r } = e;
509
518
  return f(() => {
510
519
  let e = t?.form;
511
520
  if (e == null) return;
@@ -543,8 +552,8 @@ function me() {
543
552
  }, t))]
544
553
  });
545
554
  }
546
- function he({ children: e, placeholder: t, ...n }) {
547
- let r = R(), 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 = (() => {
555
+ function fe({ children: e, placeholder: t, ...n }) {
556
+ let r = L(), 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 = (() => {
548
557
  if (e !== void 0) return e(r.selection, a);
549
558
  if (r.selection.length === 0) return t;
550
559
  let n = i[0] ?? r.selection[0];
@@ -561,9 +570,9 @@ function he({ children: e, placeholder: t, ...n }) {
561
570
  children: s
562
571
  });
563
572
  }
564
- function ge({ icon: n, ref: r, render: i, ...a }) {
565
- let o = R(), s = (e, t) => {
566
- let n = U(o.contentNode, o.highlighted, e, o.loop);
573
+ function pe({ icon: n, ref: r, render: i, ...a }) {
574
+ let o = L(), s = (e, t) => {
575
+ let n = W(o.contentNode, o.highlighted, e, o.loop);
567
576
  n !== null && o.setHighlighted(n, "keyboard", t);
568
577
  }, c = (e, t) => {
569
578
  if (o.highlighted !== null && o.toggle(o.highlighted, "keyboard", e), t) {
@@ -593,7 +602,7 @@ function ge({ icon: n, ref: r, render: i, ...a }) {
593
602
  e.preventDefault(), o.query !== "" && o.setQuery("", "clear", e.nativeEvent);
594
603
  return;
595
604
  case "Tab":
596
- e.preventDefault(), c(e.nativeEvent, !0), de(o.triggerNode, e.currentTarget.closest("[data-part='positioner']"), e.shiftKey);
605
+ e.preventDefault(), c(e.nativeEvent, !0), ue(o.triggerNode, e.currentTarget.closest("[data-part='positioner']"), e.shiftKey);
597
606
  return;
598
607
  }
599
608
  }, u = { "data-part": "search" }, d = /* @__PURE__ */ x(y, { children: [n === null ? null : n ?? /* @__PURE__ */ b("span", {
@@ -610,11 +619,11 @@ function ge({ icon: n, ref: r, render: i, ...a }) {
610
619
  autoComplete: "off",
611
620
  "data-part": "search-input",
612
621
  id: a.id ?? o.searchId,
613
- onChange: W(a.onChange, (e) => o.setQuery(e.target.value, "keyboard", e.nativeEvent)),
614
- onKeyDown: W(a.onKeyDown, l),
622
+ onChange: G(a.onChange, (e) => o.setQuery(e.target.value, "keyboard", e.nativeEvent)),
623
+ onKeyDown: G(a.onKeyDown, l),
615
624
  placeholder: a.placeholder ?? o.t("searchPlaceholder"),
616
625
  ref: (e) => {
617
- o.setSearchNode(e), G(e, r);
626
+ o.setSearchNode(e), de(e, r);
618
627
  },
619
628
  role: "combobox",
620
629
  spellCheck: !1,
@@ -629,66 +638,96 @@ function ge({ icon: n, ref: r, render: i, ...a }) {
629
638
  children: d
630
639
  });
631
640
  }
632
- function _e({ children: e, empty: t, ref: n, render: r, searchProps: i, status: a, ...o }) {
633
- let s = R(), [c, l] = v(null), [u, d] = v(null), [p, m] = v(null), [g, C] = v("unmounted"), [E, D] = v(!1), [k, te] = v(0), A = _(null), j = _(s);
641
+ function me({ children: e, empty: t, ref: n, render: r, searchProps: i, status: a, ...o }) {
642
+ let s = L(), [c, l] = v(null), [d, p] = v(null), [m, g] = v(null), [C, te] = v("unmounted"), [E, O] = v(!1), [k, ne] = v(0), A = _(null), j = _(s);
634
643
  j.current = s, f(() => {
635
644
  let e = S({
636
645
  present: j.current.open,
637
- onStatusChange: C
646
+ onStatusChange: te
638
647
  });
639
- return A.current = e, C(e.status), () => {
648
+ return A.current = e, te(e.status), () => {
640
649
  e.destroy(), A.current = null;
641
650
  };
642
- }, []), f(() => A.current?.sync(s.open), [s.open]), f(() => A.current?.setNode(c), [c]), f(() => s.setContentNode(u), [s, u]);
643
- let M = s.mount === "eager" || s.mount === "lazy" && s.seen || g !== "unmounted";
651
+ }, []), f(() => A.current?.sync(s.open), [s.open]), f(() => A.current?.setNode(c), [c]), f(() => s.setContentNode(d), [s, d]);
652
+ let M = s.mount === "eager" || s.mount === "lazy" && s.seen || s.open || C !== "unmounted";
644
653
  f(() => {
645
- if (!M) {
646
- m(null);
654
+ let e = s.triggerNode;
655
+ if (e === null || E) return;
656
+ let t = () => O(!0);
657
+ return e.addEventListener("focusin", t), e.addEventListener("pointerdown", t), () => {
658
+ e.removeEventListener("focusin", t), e.removeEventListener("pointerdown", t);
659
+ };
660
+ }, [s.triggerNode, E]);
661
+ let N = M || E;
662
+ h(() => {
663
+ if (!N) {
664
+ g(null);
647
665
  return;
648
666
  }
649
667
  let e = ee({
650
668
  origin: s.triggerNode,
651
669
  disabled: !s.portal
652
670
  });
653
- return m(e.container), () => e.release();
671
+ return g(e.container), () => e.release();
654
672
  }, [
655
- M,
673
+ N,
656
674
  s.portal,
657
675
  s.triggerNode
658
676
  ]);
659
- let { align: N, alignOffset: P, collisionPadding: F, flip: I, hideWhenDetached: L, shift: ne, side: re, sideOffset: ie, strategy: ae, width: oe } = s;
660
- f(() => {
677
+ let { align: P, alignOffset: F, collisionPadding: I, flip: R, hideWhenDetached: re, shift: ie, side: ae, sideOffset: oe, strategy: se, width: B } = s, V = _(null), H = _(0), U = u((e, t) => {
678
+ e.update().then(() => {
679
+ if (V.current !== e || !j.current.open) return;
680
+ t.setAttribute("data-open", "");
681
+ let n = t.ownerDocument.defaultView;
682
+ n !== null && H.current === 0 && (H.current = n.requestAnimationFrame(() => {
683
+ H.current = 0, le(j.current.contentNode, j.current.highlighted);
684
+ }));
685
+ });
686
+ }, []);
687
+ h(() => {
661
688
  if (c === null || s.triggerNode === null) return;
662
- let e = !0, t = s.triggerNode.closest("[data-part='root']") ?? s.triggerNode, n = T(t, c, {
663
- align: N,
664
- alignOffset: P,
665
- boundaryPadding: F,
666
- flip: I,
667
- hideWhenDetached: L,
668
- matchWidth: oe === "anchor",
669
- shift: ne,
670
- side: re,
671
- sideOffset: ie,
672
- strategy: ae
689
+ let e = s.triggerNode.closest("[data-part='root']") ?? s.triggerNode, t = T(e, c, {
690
+ align: P,
691
+ alignOffset: F,
692
+ boundaryPadding: I,
693
+ flip: R,
694
+ hideWhenDetached: re,
695
+ matchWidth: B === "anchor",
696
+ shift: ie,
697
+ side: ae,
698
+ sideOffset: oe,
699
+ strategy: se
673
700
  });
674
- return n.update().then(() => {
675
- e && D(!0);
676
- }), () => {
677
- e = !1, n.destroy(), D(!1);
701
+ return V.current = t, j.current.open && U(t, c), () => {
702
+ t.destroy(), V.current = null, c.removeAttribute("data-open");
678
703
  };
679
704
  }, [
680
- N,
681
705
  P,
682
706
  F,
683
707
  I,
684
- L,
708
+ R,
709
+ re,
685
710
  c,
686
711
  s.triggerNode,
687
- ne,
688
- re,
689
712
  ie,
690
713
  ae,
691
- oe
714
+ oe,
715
+ se,
716
+ B,
717
+ U
718
+ ]), h(() => {
719
+ let e = V.current;
720
+ if (e !== null && c !== null) {
721
+ if (s.open) {
722
+ U(e, c);
723
+ return;
724
+ }
725
+ c.removeAttribute("data-open"), H.current !== 0 && (c.ownerDocument.defaultView?.cancelAnimationFrame(H.current), H.current = 0);
726
+ }
727
+ }, [
728
+ c,
729
+ U,
730
+ s.open
692
731
  ]), f(() => {
693
732
  if (c === null || !s.open) return;
694
733
  let e = [s.triggerNode].filter((e) => e !== null), t = w(c, {
@@ -716,46 +755,58 @@ function _e({ children: e, empty: t, ref: n, render: r, searchProps: i, status:
716
755
  s.triggerNode
717
756
  ]), h(() => {
718
757
  let e = j.current;
719
- if (!e.open || u === null || e.entry.current === "none") return;
720
- let t = le(u, e.selection, e.entry.current, e.loop);
758
+ if (!e.open || d === null || e.entry.current === "none") return;
759
+ let t = ce(d, e.selection, e.entry.current, e.loop);
721
760
  t !== null && e.setHighlighted(t, "keyboard");
722
- }, [s.open, u]), h(() => {
723
- let e = B(u).length;
724
- te((t) => t === e ? t : e);
761
+ }, [s.open, d]), h(() => {
762
+ let e = z(d).length;
763
+ ne((t) => t === e ? t : e);
725
764
  }), f(() => {
726
- ue(u, s.highlighted);
765
+ c?.hasAttribute("data-open") === !0 && le(d, s.highlighted);
727
766
  }, [
728
- E,
767
+ c,
729
768
  s.highlighted,
730
- u
769
+ d
731
770
  ]);
732
- let z = s.searchNode;
771
+ let G = s.searchNode;
733
772
  f(() => {
734
- s.open && s.search && z !== null && z.focus({ preventScroll: !0 });
773
+ s.open && s.search && G !== null && G.focus({ preventScroll: !0 });
735
774
  }, [
736
- z,
775
+ G,
737
776
  s.open,
738
777
  s.search
739
778
  ]);
740
- let V = _(s.query);
741
- if (f(() => {
742
- s.open && s.search && u !== null && V.current !== s.query && (V.current = s.query, j.current.setHighlighted(U(u, null, "first", !1), "keyboard"));
779
+ let ue = _(s.query);
780
+ f(() => {
781
+ s.open && s.search && d !== null && ue.current !== s.query && (ue.current = s.query, j.current.setHighlighted(W(d, null, "first", !1), "keyboard"));
743
782
  }, [
744
783
  k,
745
784
  s.open,
746
785
  s.query,
747
786
  s.search,
748
- u
749
- ]), !M) return null;
750
- let H = {
751
- "data-align": N,
787
+ d
788
+ ]);
789
+ let K = s.selection.filter((e) => s.labelFor(e) === void 0).join("\0"), [q, fe] = v(null), me = _(null);
790
+ if (f(() => {
791
+ if (q !== null) {
792
+ fe(null);
793
+ return;
794
+ }
795
+ M || K === "" || me.current === K || (me.current = K, fe((s.triggerNode?.ownerDocument ?? document).createDocumentFragment()));
796
+ }, [
797
+ q,
798
+ M,
799
+ s.triggerNode,
800
+ K
801
+ ]), !M) return q === null ? null : D(e, q);
802
+ let he = {
803
+ "data-align": P,
752
804
  ...s.open ? {} : { inert: !0 },
753
- ...s.open && E ? { "data-open": "" } : {},
754
805
  "data-part": "positioner",
755
806
  "data-size": s.size,
756
807
  "data-ui": "select",
757
808
  "data-width": s.width
758
- }, se = a === void 0 ? s.loading ? s.t("loading") : !s.search || k === 0 ? null : s.t("count", { count: k }) : a, ce = s.multiple && s.selection.length > 0 ? /* @__PURE__ */ b("div", {
809
+ }, ge = a === void 0 ? s.loading ? s.t("loading") : !s.search || k === 0 ? null : s.t("count", { count: k }) : a, _e = s.multiple && s.selection.length > 0 ? /* @__PURE__ */ b("div", {
759
810
  "aria-hidden": "true",
760
811
  "data-part": "chosen",
761
812
  children: s.selection.map((e) => /* @__PURE__ */ b("span", {
@@ -771,8 +822,8 @@ function _e({ children: e, empty: t, ref: n, render: r, searchProps: i, status:
771
822
  })
772
823
  })
773
824
  }, String(e)))
774
- }) : null, W = /* @__PURE__ */ x(y, { children: [
775
- ce,
825
+ }) : null, ve = /* @__PURE__ */ x(y, { children: [
826
+ _e,
776
827
  e,
777
828
  s.loading ? /* @__PURE__ */ b("div", {
778
829
  "aria-hidden": "true",
@@ -797,61 +848,61 @@ function _e({ children: e, empty: t, ref: n, render: r, searchProps: i, status:
797
848
  "data-part": "status",
798
849
  ...s.loading ? { "data-loading": "" } : {},
799
850
  role: "status",
800
- children: se
851
+ children: ge
801
852
  }) : null
802
- ] }), de = {
853
+ ] }), ye = {
803
854
  "aria-busy": s.loading ? !0 : void 0,
804
855
  "aria-multiselectable": s.multiple ? !0 : void 0
805
- }, fe = /* @__PURE__ */ b("div", {
806
- ...H,
856
+ }, be = /* @__PURE__ */ b("div", {
857
+ ...he,
807
858
  ref: (e) => {
808
- l(e), G(e, n);
859
+ l(e), de(e, n);
809
860
  },
810
861
  children: /* @__PURE__ */ b("div", {
811
862
  ...o,
812
- ...s.search ? {} : de,
863
+ ...s.search ? {} : ye,
813
864
  "aria-labelledby": o["aria-label"] === void 0 ? s.triggerId : void 0,
814
865
  "data-loading": s.loading ? "" : void 0,
815
866
  "data-part": "content",
816
867
  ...s.search ? { "data-search": "" } : {},
817
868
  id: s.contentId,
818
- ref: d,
869
+ ref: p,
819
870
  role: s.search ? "dialog" : "listbox",
820
- children: s.search ? /* @__PURE__ */ x(y, { children: [/* @__PURE__ */ b(ge, { ...i }), /* @__PURE__ */ b("div", {
821
- ...de,
871
+ children: s.search ? /* @__PURE__ */ x(y, { children: [/* @__PURE__ */ b(pe, { ...i }), /* @__PURE__ */ b("div", {
872
+ ...ye,
822
873
  "aria-labelledby": s.triggerId,
823
874
  "data-part": "list",
824
875
  id: s.listId,
825
876
  role: "listbox",
826
- children: W
827
- })] }) : W
877
+ children: ve
878
+ })] }) : ve
828
879
  })
829
- }), pe = r === void 0 ? fe : r({
830
- ...H,
880
+ }), xe = r === void 0 ? be : r({
881
+ ...he,
831
882
  children: e
832
883
  });
833
- return p === null ? pe : O(pe, p);
884
+ return m === null ? xe : D(xe, m);
834
885
  }
835
886
  //#endregion
836
887
  //#region src/select/select-items.tsx
837
- function ve({ children: n, description: r, disabled: i = !1, icon: a, position: s, ref: c, textValue: l, value: u, ...d }) {
838
- let p = R(), [m, h] = v(null), y = _(null);
888
+ function he({ children: n, description: r, disabled: i = !1, icon: a, position: s, ref: c, textValue: l, value: u, ...d }) {
889
+ let p = L(), m = _(null), h = _(null);
839
890
  f(() => {
840
- if (m === null) return;
841
- let e = l ?? m.querySelector("[data-part='label']")?.textContent?.trim() ?? "";
842
- e !== "" && e !== y.current && (y.current = e, p.registerLabel(u, e));
891
+ if (m.current === null) return;
892
+ let e = l ?? m.current.querySelector("[data-part='label']")?.textContent?.trim() ?? "";
893
+ e !== "" && e !== h.current && (h.current = e, p.registerLabel(u, e));
843
894
  }, [
844
- m,
895
+ n,
845
896
  p,
846
897
  l,
847
898
  u
848
899
  ]);
849
- let S = l ?? (typeof n == "string" ? n : void 0), ee = g(() => {
850
- if (!p.search || !p.highlightMatch || p.query === "" || S === void 0) return n;
851
- let e = M(S, p.query, { locale: p.locale });
900
+ let v = l ?? (typeof n == "string" ? n : void 0), y = g(() => {
901
+ if (!p.search || !p.highlightMatch || p.query === "" || v === void 0) return n;
902
+ let e = j(v, p.query, { locale: p.locale });
852
903
  return e.length === 0 ? n : /* @__PURE__ */ b(o, {
853
904
  ranges: e,
854
- text: S
905
+ text: v
855
906
  });
856
907
  }, [
857
908
  n,
@@ -859,14 +910,14 @@ function ve({ children: n, description: r, disabled: i = !1, icon: a, position:
859
910
  p.locale,
860
911
  p.query,
861
912
  p.search,
862
- S
913
+ v
863
914
  ]);
864
- if (S !== void 0 && !p.matches(S)) return null;
865
- let C = p.selection.includes(u), w = p.highlighted === u, T = (e) => {
915
+ if (v !== void 0 && !p.matches(v)) return null;
916
+ let S = p.selection.includes(u), ee = p.highlighted === u, C = (e) => {
866
917
  i || p.setHighlighted(u, "pointer", e.nativeEvent);
867
- }, E = (e) => {
918
+ }, w = (e) => {
868
919
  d.onPointerDown?.(e), !e.defaultPrevented && e.preventDefault();
869
- }, D = (e) => {
920
+ }, T = (e) => {
870
921
  if (!i) {
871
922
  if (p.toggle(u, "pointer", e.nativeEvent), p.closeOnSelect && !p.multiple) {
872
923
  p.setOpen(!1, "select", e.nativeEvent);
@@ -880,19 +931,19 @@ function ve({ children: n, description: r, disabled: i = !1, icon: a, position:
880
931
  "aria-disabled": i ? !0 : void 0,
881
932
  "aria-posinset": s,
882
933
  "aria-setsize": s === void 0 ? void 0 : p.total,
883
- "aria-selected": C,
934
+ "aria-selected": S,
884
935
  "data-part": "item",
885
936
  "data-value": u,
886
937
  id: d.id ?? p.optionId(u),
887
- ...S === void 0 ? {} : { "data-text-value": S },
938
+ ...v === void 0 ? {} : { "data-text-value": v },
888
939
  ...i ? { "data-disabled": "" } : {},
889
- ...C ? { "data-selected": "" } : {},
890
- ...w ? { "data-current": "" } : {},
891
- onClick: D,
892
- onPointerDown: E,
893
- onPointerEnter: T,
940
+ ...S ? { "data-selected": "" } : {},
941
+ ...ee ? { "data-current": "" } : {},
942
+ onClick: T,
943
+ onPointerDown: w,
944
+ onPointerEnter: C,
894
945
  ref: (e) => {
895
- h(e), typeof c == "function" ? c(e) : c != null && (c.current = e);
946
+ m.current = e, typeof c == "function" ? c(e) : c != null && (c.current = e);
896
947
  },
897
948
  role: "option",
898
949
  children: [
@@ -902,7 +953,7 @@ function ve({ children: n, description: r, disabled: i = !1, icon: a, position:
902
953
  }),
903
954
  /* @__PURE__ */ b("span", {
904
955
  "data-part": "label",
905
- children: ee
956
+ children: y
906
957
  }),
907
958
  r === void 0 ? null : /* @__PURE__ */ b("span", {
908
959
  "data-part": "description",
@@ -915,8 +966,8 @@ function ve({ children: n, description: r, disabled: i = !1, icon: a, position:
915
966
  ]
916
967
  });
917
968
  }
918
- function ye({ children: e, label: t, ...n }) {
919
- let r = `${p()}group`, { query: i } = R(), [a, o] = v(null), [s, c] = v(!1);
969
+ function ge({ children: e, label: t, ...n }) {
970
+ let r = `${p()}group`, { query: i } = L(), [a, o] = v(null), [s, c] = v(!1);
920
971
  return f(() => {
921
972
  a !== null && c(a.querySelector("[data-part='item']") === null);
922
973
  }, [a, i]), /* @__PURE__ */ x("div", {
@@ -933,7 +984,7 @@ function ye({ children: e, label: t, ...n }) {
933
984
  }), e]
934
985
  });
935
986
  }
936
- function be(e) {
987
+ function _e(e) {
937
988
  return /* @__PURE__ */ b("div", {
938
989
  "data-part": "separator",
939
990
  ref: e.ref,
@@ -941,4 +992,4 @@ function be(e) {
941
992
  });
942
993
  }
943
994
  //#endregion
944
- export { ge as a, oe as c, I as d, F as f, _e as i, R as l, ve as n, pe as o, be as r, he as s, ye as t, N as u };
995
+ export { pe as a, oe as c, F as d, P as f, me as i, L as l, he as n, K as o, _e as r, fe as s, ge as t, M as u };