@phillips/seldon 1.137.1 → 1.139.0

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 (235) hide show
  1. package/dist/assets/formatted/Account.d.ts +9 -0
  2. package/dist/assets/formatted/Account.js +36 -0
  3. package/dist/assets/formatted/AccountActive.d.ts +9 -0
  4. package/dist/assets/formatted/AccountActive.js +37 -0
  5. package/dist/assets/formatted/Add.d.ts +9 -0
  6. package/dist/assets/formatted/Add.js +29 -0
  7. package/dist/assets/formatted/AppleAppStoreBadge.d.ts +1 -1
  8. package/dist/assets/formatted/AppleAppStoreBadge.js +8 -8
  9. package/dist/assets/formatted/ArrowDown.d.ts +9 -0
  10. package/dist/assets/formatted/ArrowDown.js +29 -0
  11. package/dist/assets/formatted/ArrowLeft.d.ts +9 -0
  12. package/dist/assets/formatted/ArrowLeft.js +29 -0
  13. package/dist/assets/formatted/ArrowRight.d.ts +9 -0
  14. package/dist/assets/formatted/ArrowRight.js +29 -0
  15. package/dist/assets/formatted/ArrowUp.d.ts +9 -0
  16. package/dist/assets/formatted/ArrowUp.js +29 -0
  17. package/dist/assets/formatted/Bag.d.ts +9 -0
  18. package/dist/assets/formatted/Bag.js +37 -0
  19. package/dist/assets/formatted/Calendar.d.ts +1 -1
  20. package/dist/assets/formatted/Calendar.js +24 -16
  21. package/dist/assets/formatted/ChevronDown.d.ts +1 -1
  22. package/dist/assets/formatted/ChevronDown.js +9 -9
  23. package/dist/assets/formatted/ChevronLeft.d.ts +9 -0
  24. package/dist/assets/formatted/{ChevronNext.js → ChevronLeft.js} +6 -6
  25. package/dist/assets/formatted/ChevronRight.d.ts +1 -1
  26. package/dist/assets/formatted/ChevronRight.js +12 -12
  27. package/dist/assets/formatted/ChevronUp.d.ts +9 -0
  28. package/dist/assets/formatted/ChevronUp.js +37 -0
  29. package/dist/assets/formatted/Close (x).d.ts +9 -0
  30. package/dist/assets/formatted/CloseX.d.ts +9 -0
  31. package/dist/assets/formatted/CloseX.js +29 -0
  32. package/dist/assets/formatted/ConditionReport.d.ts +9 -0
  33. package/dist/assets/formatted/ConditionReport.js +37 -0
  34. package/dist/assets/formatted/Delete.d.ts +9 -0
  35. package/dist/assets/formatted/Delete.js +38 -0
  36. package/dist/assets/formatted/Download.d.ts +9 -0
  37. package/dist/assets/formatted/Download.js +30 -0
  38. package/dist/assets/formatted/Edit.d.ts +9 -0
  39. package/dist/assets/formatted/Edit.js +38 -0
  40. package/dist/assets/formatted/Email.d.ts +9 -0
  41. package/dist/assets/formatted/Email.js +37 -0
  42. package/dist/assets/formatted/Error.d.ts +9 -0
  43. package/dist/assets/formatted/Error.js +38 -0
  44. package/dist/assets/formatted/ExternalLink.d.ts +9 -0
  45. package/dist/assets/formatted/ExternalLink.js +30 -0
  46. package/dist/assets/formatted/Facebook.d.ts +9 -0
  47. package/dist/assets/formatted/Facebook.js +35 -0
  48. package/dist/assets/formatted/Favorite.d.ts +1 -1
  49. package/dist/assets/formatted/Favorite.js +18 -21
  50. package/dist/assets/formatted/FavoriteActive.d.ts +9 -0
  51. package/dist/assets/formatted/FavoriteActive.js +44 -0
  52. package/dist/assets/formatted/Filters.d.ts +9 -0
  53. package/dist/assets/formatted/Filters.js +37 -0
  54. package/dist/assets/formatted/Fullscreen.d.ts +9 -0
  55. package/dist/assets/formatted/Fullscreen.js +37 -0
  56. package/dist/assets/formatted/FullscreenExit.d.ts +9 -0
  57. package/dist/assets/formatted/FullscreenExit.js +29 -0
  58. package/dist/assets/formatted/Gavel.d.ts +9 -0
  59. package/dist/assets/formatted/Gavel.js +37 -0
  60. package/dist/assets/formatted/GavelActive.d.ts +9 -0
  61. package/dist/assets/formatted/GavelActive.js +37 -0
  62. package/dist/assets/formatted/Grid.d.ts +9 -0
  63. package/dist/assets/formatted/Grid.js +29 -0
  64. package/dist/assets/formatted/Hide.d.ts +9 -0
  65. package/dist/assets/formatted/Hide.js +44 -0
  66. package/dist/assets/formatted/Home.d.ts +9 -0
  67. package/dist/assets/formatted/Home.js +36 -0
  68. package/dist/assets/formatted/HomeActive.d.ts +9 -0
  69. package/dist/assets/formatted/HomeActive.js +39 -0
  70. package/dist/assets/formatted/Icon.d.ts +9 -0
  71. package/dist/assets/formatted/Icon.js +35 -0
  72. package/dist/assets/formatted/IconGreenCircle.d.ts +1 -1
  73. package/dist/assets/formatted/IconRedCircle.d.ts +1 -1
  74. package/dist/assets/formatted/Instagram.d.ts +1 -1
  75. package/dist/assets/formatted/Instagram.js +23 -38
  76. package/dist/assets/formatted/LinkedIn.d.ts +9 -0
  77. package/dist/assets/formatted/LinkedIn.js +35 -0
  78. package/dist/assets/formatted/List.d.ts +9 -0
  79. package/dist/assets/formatted/List.js +38 -0
  80. package/dist/assets/formatted/Lock.d.ts +1 -1
  81. package/dist/assets/formatted/Lock.js +13 -19
  82. package/dist/assets/formatted/MagnificentSeven.d.ts +1 -1
  83. package/dist/assets/formatted/Menu.d.ts +1 -1
  84. package/dist/assets/formatted/Mute.d.ts +9 -0
  85. package/dist/assets/formatted/Mute.js +51 -0
  86. package/dist/assets/formatted/Pause.d.ts +9 -0
  87. package/dist/assets/formatted/Pause.js +35 -0
  88. package/dist/assets/formatted/PhillipsAppIcon.d.ts +1 -1
  89. package/dist/assets/formatted/PhillipsLogo.d.ts +1 -1
  90. package/dist/assets/formatted/Play.d.ts +9 -0
  91. package/dist/assets/formatted/Play.js +35 -0
  92. package/dist/assets/formatted/Red.d.ts +9 -0
  93. package/dist/assets/formatted/Red.js +44 -0
  94. package/dist/assets/formatted/Refresh.d.ts +9 -0
  95. package/dist/assets/formatted/Refresh.js +35 -0
  96. package/dist/assets/formatted/Search.d.ts +1 -1
  97. package/dist/assets/formatted/Search.js +6 -6
  98. package/dist/assets/formatted/Sell.d.ts +9 -0
  99. package/dist/assets/formatted/Sell.js +38 -0
  100. package/dist/assets/formatted/SellActive.d.ts +9 -0
  101. package/dist/assets/formatted/SellActive.js +39 -0
  102. package/dist/assets/formatted/Share.d.ts +1 -1
  103. package/dist/assets/formatted/Share.js +15 -27
  104. package/dist/assets/formatted/Subtract.d.ts +9 -0
  105. package/dist/assets/formatted/Subtract.js +29 -0
  106. package/dist/assets/formatted/Success.d.ts +9 -0
  107. package/dist/assets/formatted/Success.js +29 -0
  108. package/dist/assets/formatted/Tooltip.d.ts +9 -0
  109. package/dist/assets/formatted/Tooltip.js +38 -0
  110. package/dist/assets/formatted/TwitterX.d.ts +9 -0
  111. package/dist/assets/formatted/TwitterX.js +35 -0
  112. package/dist/assets/formatted/Upload.d.ts +9 -0
  113. package/dist/assets/formatted/Upload.js +30 -0
  114. package/dist/assets/formatted/View.d.ts +9 -0
  115. package/dist/assets/formatted/View.js +37 -0
  116. package/dist/assets/formatted/VolumeMaximum.d.ts +9 -0
  117. package/dist/assets/formatted/VolumeMaximum.js +37 -0
  118. package/dist/assets/formatted/VolumeMid.d.ts +9 -0
  119. package/dist/assets/formatted/VolumeMid.js +44 -0
  120. package/dist/assets/formatted/VolumeMinimum.d.ts +9 -0
  121. package/dist/assets/formatted/VolumeMinimum.js +37 -0
  122. package/dist/assets/formatted/WeChat.d.ts +9 -0
  123. package/dist/assets/formatted/WeChat.js +35 -0
  124. package/dist/assets/formatted/index.d.ts +49 -20
  125. package/dist/assets/formatted/index.js +128 -70
  126. package/dist/components/Accordion/AccordionItem.js +36 -36
  127. package/dist/components/Breadcrumb/Breadcrumb.js +10 -10
  128. package/dist/components/Breadcrumb/BreadcrumbItem.js +21 -21
  129. package/dist/components/Carousel/CarouselArrows.js +11 -11
  130. package/dist/components/ContentPeek/ContentPeek.js +25 -25
  131. package/dist/components/Divider/Divider.js +17 -8
  132. package/dist/components/Drawer/Drawer.js +6 -6
  133. package/dist/components/Dropdown/Dropdown.js +8 -6
  134. package/dist/components/Filter/Filter.js +16 -16
  135. package/dist/components/Filter/FilterHeader.js +11 -11
  136. package/dist/components/Icon/Icon.d.ts +3 -2
  137. package/dist/components/Icon/Icon.js +9 -9
  138. package/dist/components/Modal/Modal.js +13 -13
  139. package/dist/components/Search/SearchButton.js +1 -1
  140. package/dist/components/Tags/Tags.js +29 -29
  141. package/dist/index.d.ts +42 -41
  142. package/dist/index.js +171 -169
  143. package/dist/node_modules/@radix-ui/react-collapsible/dist/index.js +1 -1
  144. package/dist/node_modules/@radix-ui/react-collection/dist/index.js +27 -27
  145. package/dist/node_modules/@radix-ui/react-compose-refs/dist/index.js +24 -9
  146. package/dist/node_modules/@radix-ui/react-context/dist/index.js +50 -34
  147. package/dist/node_modules/@radix-ui/react-dialog/dist/index.js +45 -45
  148. package/dist/node_modules/@radix-ui/react-focus-guards/dist/index.js +1 -1
  149. package/dist/node_modules/@radix-ui/react-id/dist/index.js +10 -10
  150. package/dist/node_modules/@radix-ui/react-popover/dist/index.js +239 -0
  151. package/dist/node_modules/@radix-ui/react-presence/dist/index.js +30 -25
  152. package/dist/node_modules/@radix-ui/react-primitive/dist/index.js +13 -13
  153. package/dist/node_modules/@radix-ui/react-select/dist/index.js +364 -338
  154. package/dist/node_modules/@radix-ui/react-slot/dist/index.js +41 -40
  155. package/dist/node_modules/@radix-ui/react-tabs/dist/index.js +2 -2
  156. package/dist/node_modules/@radix-ui/react-use-layout-effect/dist/index.js +3 -3
  157. package/dist/node_modules/@radix-ui/react-visually-hidden/dist/index.js +1 -1
  158. package/dist/patterns/FavoritesCollectionTile/FavoritesCollectionTile.d.ts +75 -0
  159. package/dist/patterns/FavoritesCollectionTile/FavoritesCollectionTile.js +131 -0
  160. package/dist/patterns/FavoritesCollectionTile/FavoritesCollectionTile.stories.d.ts +78 -0
  161. package/dist/patterns/FavoritesCollectionTile/FavoritesCollectionTile.test.d.ts +1 -0
  162. package/dist/patterns/FavoritesCollectionTile/index.d.ts +1 -0
  163. package/dist/patterns/UserManagement/UserManagement.js +13 -29
  164. package/dist/scss/_vars.scss +1 -0
  165. package/dist/scss/_vars.scss.js +1 -0
  166. package/dist/scss/componentStyles.scss +1 -0
  167. package/dist/scss/components/Breadcrumb/_breadcrumb.scss +4 -5
  168. package/dist/scss/components/Drawer/_drawer.scss +4 -0
  169. package/dist/scss/components/Filter/_filter.scss +0 -4
  170. package/dist/scss/components/IconButton/_iconButton.scss +9 -5
  171. package/dist/scss/components/Tags/_tags.scss +9 -13
  172. package/dist/scss/patterns/FavoritesCollectionTile/_favoritesCollectionTile.scss +159 -0
  173. package/dist/scss/patterns/Social/_social.scss +6 -17
  174. package/dist/scss/site-furniture/Footer/_footer.scss +0 -5
  175. package/dist/site-furniture/Footer/Footer.js +5 -5
  176. package/package.json +2 -1
  177. package/dist/assets/formatted/AccountCircle.d.ts +0 -9
  178. package/dist/assets/formatted/AccountCircle.js +0 -40
  179. package/dist/assets/formatted/ArrowPrev.d.ts +0 -9
  180. package/dist/assets/formatted/ArrowPrev.js +0 -37
  181. package/dist/assets/formatted/CalendarAlt.d.ts +0 -9
  182. package/dist/assets/formatted/CalendarAlt.js +0 -44
  183. package/dist/assets/formatted/CarouselArrowNext.d.ts +0 -9
  184. package/dist/assets/formatted/CarouselArrowNext.js +0 -29
  185. package/dist/assets/formatted/CarouselArrowPrev.d.ts +0 -9
  186. package/dist/assets/formatted/CarouselArrowPrev.js +0 -29
  187. package/dist/assets/formatted/Checkmark.d.ts +0 -9
  188. package/dist/assets/formatted/Checkmark.js +0 -37
  189. package/dist/assets/formatted/ChevronNext.d.ts +0 -9
  190. package/dist/assets/formatted/Close.d.ts +0 -9
  191. package/dist/assets/formatted/Close.js +0 -46
  192. package/dist/assets/formatted/FavoriteOutline.d.ts +0 -9
  193. package/dist/assets/formatted/FavoriteOutline.js +0 -38
  194. package/dist/assets/formatted/IconFooterFacebook.d.ts +0 -9
  195. package/dist/assets/formatted/IconFooterFacebook.js +0 -35
  196. package/dist/assets/formatted/IconFooterInstagram.d.ts +0 -9
  197. package/dist/assets/formatted/IconFooterInstagram.js +0 -31
  198. package/dist/assets/formatted/IconFooterLinkedin.d.ts +0 -9
  199. package/dist/assets/formatted/IconFooterLinkedin.js +0 -35
  200. package/dist/assets/formatted/IconFooterRed.d.ts +0 -9
  201. package/dist/assets/formatted/IconFooterRed.js +0 -42
  202. package/dist/assets/formatted/IconFooterWechat.d.ts +0 -9
  203. package/dist/assets/formatted/IconFooterWechat.js +0 -37
  204. package/dist/assets/formatted/Minus.d.ts +0 -9
  205. package/dist/assets/formatted/Minus.js +0 -46
  206. package/dist/assets/formatted/Plus.d.ts +0 -9
  207. package/dist/assets/formatted/Plus.js +0 -46
  208. package/dist/assets/formatted/React.d.ts +0 -9
  209. package/dist/assets/formatted/React.js +0 -36
  210. package/dist/assets/formatted/Spotify.d.ts +0 -9
  211. package/dist/assets/formatted/Spotify.js +0 -35
  212. package/dist/assets/formatted/Wechat.d.ts +0 -9
  213. package/dist/assets/formatted/Wechat.js +0 -42
  214. package/dist/assets/formatted/Youtube.d.ts +0 -9
  215. package/dist/assets/formatted/Youtube.js +0 -36
  216. package/dist/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/primitive/dist/index.js +0 -9
  217. package/dist/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-compose-refs/dist/index.js +0 -29
  218. package/dist/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-context/dist/index.js +0 -68
  219. package/dist/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-dismissable-layer/dist/index.js +0 -127
  220. package/dist/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-focus-guards/dist/index.js +0 -17
  221. package/dist/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-focus-scope/dist/index.js +0 -136
  222. package/dist/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-portal/dist/index.js +0 -15
  223. package/dist/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-presence/dist/index.js +0 -70
  224. package/dist/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-primitive/dist/index.js +0 -35
  225. package/dist/node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-slot/dist/index.js +0 -47
  226. package/dist/node_modules/@radix-ui/react-select/node_modules/react-remove-scroll/dist/es2015/Combination.js +0 -11
  227. package/dist/node_modules/@radix-ui/react-select/node_modules/react-remove-scroll/dist/es2015/SideEffect.js +0 -112
  228. package/dist/node_modules/@radix-ui/react-select/node_modules/react-remove-scroll/dist/es2015/UI.js +0 -31
  229. package/dist/node_modules/@radix-ui/react-select/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js +0 -16
  230. package/dist/node_modules/@radix-ui/react-select/node_modules/react-remove-scroll/dist/es2015/handleScroll.js +0 -62
  231. package/dist/node_modules/@radix-ui/react-select/node_modules/react-remove-scroll/dist/es2015/medium.js +0 -5
  232. package/dist/node_modules/@radix-ui/react-select/node_modules/react-remove-scroll/dist/es2015/sidecar.js +0 -7
  233. package/dist/node_modules/@radix-ui/react-select/node_modules/tslib/tslib.es6.js +0 -27
  234. package/dist/node_modules/@radix-ui/react-tabs/node_modules/@radix-ui/react-context/dist/index.js +0 -53
  235. package/dist/node_modules/@radix-ui/react-tabs/node_modules/@radix-ui/react-presence/dist/index.js +0 -70
@@ -1,7 +1,7 @@
1
1
  import * as t from "react";
2
2
  import * as be from "react-dom";
3
- import { clamp as Ee } from "../../number/dist/index.js";
4
- import { composeEventHandlers as b } from "../../primitive/dist/index.js";
3
+ import { clamp as Re } from "../../number/dist/index.js";
4
+ import { composeEventHandlers as R } from "../../primitive/dist/index.js";
5
5
  import { createCollection as tt } from "../../react-collection/dist/index.js";
6
6
  import { useComposedRefs as k } from "../../react-compose-refs/dist/index.js";
7
7
  import { createContextScope as ot } from "../../react-context/dist/index.js";
@@ -12,96 +12,98 @@ import { FocusScope as st } from "../../react-focus-scope/dist/index.js";
12
12
  import { useId as Ie } from "../../react-id/dist/index.js";
13
13
  import { createPopperScope as Ne, Anchor as ct, Content as it, Arrow as at, Root as dt } from "../../react-popper/dist/index.js";
14
14
  import { Portal as ut } from "../../react-portal/dist/index.js";
15
- import { Primitive as O } from "../../react-primitive/dist/index.js";
16
- import { Slot as pt } from "../../react-slot/dist/index.js";
15
+ import { Primitive as M } from "../../react-primitive/dist/index.js";
16
+ import { createSlot as pt } from "../../react-slot/dist/index.js";
17
17
  import { useCallbackRef as ft } from "../../react-use-callback-ref/dist/index.js";
18
- import { useControllableState as Re } from "../../react-use-controllable-state/dist/index.js";
19
- import { useLayoutEffect as K } from "../../react-use-layout-effect/dist/index.js";
18
+ import { useControllableState as Ee } from "../../react-use-controllable-state/dist/index.js";
19
+ import { useLayoutEffect as j } from "../../react-use-layout-effect/dist/index.js";
20
20
  import { usePrevious as mt } from "../../react-use-previous/dist/index.js";
21
21
  import { VisuallyHidden as ht } from "../../react-visually-hidden/dist/index.js";
22
22
  import { hideOthers as vt } from "../../../aria-hidden/dist/es2015/index.js";
23
- import gt from "../node_modules/react-remove-scroll/dist/es2015/Combination.js";
24
- import { jsx as d, Fragment as Te, jsxs as ce } from "react/jsx-runtime";
25
- var St = [" ", "Enter", "ArrowUp", "ArrowDown"], wt = [" ", "Enter"], re = "Select", [ae, de, Ct] = tt(re), [ee, io] = ot(re, [
23
+ import gt from "../../../react-remove-scroll/dist/es2015/Combination.js";
24
+ import { jsx as u, Fragment as Te, jsxs as ce } from "react/jsx-runtime";
25
+ var St = [" ", "Enter", "ArrowUp", "ArrowDown"], wt = [" ", "Enter"], re = "Select", [ae, de, Ct] = tt(re), [ee, ao] = ot(re, [
26
26
  Ct,
27
27
  Ne
28
- ]), ue = Ne(), [xt, G] = ee(re), [yt, It] = ee(re), _e = (o) => {
28
+ ]), ue = Ne(), [xt, Y] = ee(re), [yt, It] = ee(re), _e = (o) => {
29
29
  const {
30
30
  __scopeSelect: i,
31
31
  children: e,
32
32
  open: c,
33
33
  defaultOpen: r,
34
- onOpenChange: a,
34
+ onOpenChange: d,
35
35
  value: n,
36
36
  defaultValue: l,
37
37
  onValueChange: s,
38
- dir: p,
38
+ dir: f,
39
39
  name: g,
40
- autoComplete: w,
40
+ autoComplete: C,
41
41
  disabled: E,
42
- required: I
43
- } = o, f = ue(i), [h, C] = t.useState(null), [m, v] = t.useState(null), [y, H] = t.useState(!1), A = nt(p), [te = !1, N] = Re({
42
+ required: T,
43
+ form: y
44
+ } = o, a = ue(i), [h, S] = t.useState(null), [m, v] = t.useState(null), [U, O] = t.useState(!1), te = nt(f), [b = !1, D] = Ee({
44
45
  prop: c,
45
46
  defaultProp: r,
46
- onChange: a
47
- }), [M, j] = Re({
47
+ onChange: d
48
+ }), [K, X] = Ee({
48
49
  prop: n,
49
50
  defaultProp: l,
50
51
  onChange: s
51
- }), $ = t.useRef(null), Y = h ? !!h.closest("form") : !0, [D, W] = t.useState(/* @__PURE__ */ new Set()), F = Array.from(D).map((R) => R.props.value).join(";");
52
- return /* @__PURE__ */ d(dt, { ...f, children: /* @__PURE__ */ ce(
52
+ }), V = t.useRef(null), B = h ? y || !!h.closest("form") : !0, [G, H] = t.useState(/* @__PURE__ */ new Set()), W = Array.from(G).map((N) => N.props.value).join(";");
53
+ return /* @__PURE__ */ u(dt, { ...a, children: /* @__PURE__ */ ce(
53
54
  xt,
54
55
  {
55
- required: I,
56
+ required: T,
56
57
  scope: i,
57
58
  trigger: h,
58
- onTriggerChange: C,
59
+ onTriggerChange: S,
59
60
  valueNode: m,
60
61
  onValueNodeChange: v,
61
- valueNodeHasChildren: y,
62
- onValueNodeHasChildrenChange: H,
62
+ valueNodeHasChildren: U,
63
+ onValueNodeHasChildrenChange: O,
63
64
  contentId: Ie(),
64
- value: M,
65
- onValueChange: j,
66
- open: te,
67
- onOpenChange: N,
68
- dir: A,
69
- triggerPointerDownPosRef: $,
65
+ value: K,
66
+ onValueChange: X,
67
+ open: b,
68
+ onOpenChange: D,
69
+ dir: te,
70
+ triggerPointerDownPosRef: V,
70
71
  disabled: E,
71
72
  children: [
72
- /* @__PURE__ */ d(ae.Provider, { scope: i, children: /* @__PURE__ */ d(
73
+ /* @__PURE__ */ u(ae.Provider, { scope: i, children: /* @__PURE__ */ u(
73
74
  yt,
74
75
  {
75
76
  scope: o.__scopeSelect,
76
- onNativeOptionAdd: t.useCallback((R) => {
77
- W((L) => new Set(L).add(R));
77
+ onNativeOptionAdd: t.useCallback((N) => {
78
+ H((L) => new Set(L).add(N));
78
79
  }, []),
79
- onNativeOptionRemove: t.useCallback((R) => {
80
- W((L) => {
81
- const V = new Set(L);
82
- return V.delete(R), V;
80
+ onNativeOptionRemove: t.useCallback((N) => {
81
+ H((L) => {
82
+ const F = new Set(L);
83
+ return F.delete(N), F;
83
84
  });
84
85
  }, []),
85
86
  children: e
86
87
  }
87
88
  ) }),
88
- Y ? /* @__PURE__ */ ce(
89
+ B ? /* @__PURE__ */ ce(
89
90
  Je,
90
91
  {
91
92
  "aria-hidden": !0,
92
- required: I,
93
+ required: T,
93
94
  tabIndex: -1,
94
95
  name: g,
95
- autoComplete: w,
96
- value: M,
97
- onChange: (R) => j(R.target.value),
96
+ autoComplete: C,
97
+ value: K,
98
+ onChange: (N) => X(N.target.value),
98
99
  disabled: E,
100
+ form: y,
99
101
  children: [
100
- M === void 0 ? /* @__PURE__ */ d("option", { value: "" }) : null,
101
- Array.from(D)
102
+ K === void 0 ? /* @__PURE__ */ u("option", { value: "" }) : null,
103
+ Array.from(G)
102
104
  ]
103
105
  },
104
- F
106
+ W
105
107
  ) : null
106
108
  ]
107
109
  }
@@ -110,14 +112,17 @@ var St = [" ", "Enter", "ArrowUp", "ArrowDown"], wt = [" ", "Enter"], re = "Sele
110
112
  _e.displayName = re;
111
113
  var Me = "SelectTrigger", Oe = t.forwardRef(
112
114
  (o, i) => {
113
- const { __scopeSelect: e, disabled: c = !1, ...r } = o, a = ue(e), n = G(Me, e), l = n.disabled || c, s = k(i, n.onTriggerChange), p = de(e), [g, w, E] = Qe((f) => {
114
- const h = p().filter((v) => !v.disabled), C = h.find((v) => v.value === n.value), m = et(h, f, C);
115
+ const { __scopeSelect: e, disabled: c = !1, ...r } = o, d = ue(e), n = Y(Me, e), l = n.disabled || c, s = k(i, n.onTriggerChange), f = de(e), g = t.useRef("touch"), [C, E, T] = Qe((a) => {
116
+ const h = f().filter((v) => !v.disabled), S = h.find((v) => v.value === n.value), m = et(h, a, S);
115
117
  m !== void 0 && n.onValueChange(m.value);
116
- }), I = () => {
117
- l || (n.onOpenChange(!0), E());
118
+ }), y = (a) => {
119
+ l || (n.onOpenChange(!0), T()), a && (n.triggerPointerDownPosRef.current = {
120
+ x: Math.round(a.pageX),
121
+ y: Math.round(a.pageY)
122
+ });
118
123
  };
119
- return /* @__PURE__ */ d(ct, { asChild: !0, ...a, children: /* @__PURE__ */ d(
120
- O.button,
124
+ return /* @__PURE__ */ u(ct, { asChild: !0, ...d, children: /* @__PURE__ */ u(
125
+ M.button,
121
126
  {
122
127
  type: "button",
123
128
  role: "combobox",
@@ -132,19 +137,17 @@ var Me = "SelectTrigger", Oe = t.forwardRef(
132
137
  "data-placeholder": $e(n.value) ? "" : void 0,
133
138
  ...r,
134
139
  ref: s,
135
- onClick: b(r.onClick, (f) => {
136
- f.currentTarget.focus();
140
+ onClick: R(r.onClick, (a) => {
141
+ a.currentTarget.focus(), g.current !== "mouse" && y(a);
137
142
  }),
138
- onPointerDown: b(r.onPointerDown, (f) => {
139
- const h = f.target;
140
- h.hasPointerCapture(f.pointerId) && h.releasePointerCapture(f.pointerId), f.button === 0 && f.ctrlKey === !1 && (I(), n.triggerPointerDownPosRef.current = {
141
- x: Math.round(f.pageX),
142
- y: Math.round(f.pageY)
143
- }, f.preventDefault());
143
+ onPointerDown: R(r.onPointerDown, (a) => {
144
+ g.current = a.pointerType;
145
+ const h = a.target;
146
+ h.hasPointerCapture(a.pointerId) && h.releasePointerCapture(a.pointerId), a.button === 0 && a.ctrlKey === !1 && a.pointerType === "mouse" && (y(a), a.preventDefault());
144
147
  }),
145
- onKeyDown: b(r.onKeyDown, (f) => {
146
- const h = g.current !== "";
147
- !(f.ctrlKey || f.altKey || f.metaKey) && f.key.length === 1 && w(f.key), !(h && f.key === " ") && St.includes(f.key) && (I(), f.preventDefault());
148
+ onKeyDown: R(r.onKeyDown, (a) => {
149
+ const h = C.current !== "";
150
+ !(a.ctrlKey || a.altKey || a.metaKey) && a.key.length === 1 && E(a.key), !(h && a.key === " ") && St.includes(a.key) && (y(), a.preventDefault());
148
151
  })
149
152
  }
150
153
  ) });
@@ -153,16 +156,16 @@ var Me = "SelectTrigger", Oe = t.forwardRef(
153
156
  Oe.displayName = Me;
154
157
  var Ae = "SelectValue", De = t.forwardRef(
155
158
  (o, i) => {
156
- const { __scopeSelect: e, className: c, style: r, children: a, placeholder: n = "", ...l } = o, s = G(Ae, e), { onValueNodeHasChildrenChange: p } = s, g = a !== void 0, w = k(i, s.onValueNodeChange);
157
- return K(() => {
158
- p(g);
159
- }, [p, g]), /* @__PURE__ */ d(
160
- O.span,
159
+ const { __scopeSelect: e, className: c, style: r, children: d, placeholder: n = "", ...l } = o, s = Y(Ae, e), { onValueNodeHasChildrenChange: f } = s, g = d !== void 0, C = k(i, s.onValueNodeChange);
160
+ return j(() => {
161
+ f(g);
162
+ }, [f, g]), /* @__PURE__ */ u(
163
+ M.span,
161
164
  {
162
165
  ...l,
163
- ref: w,
166
+ ref: C,
164
167
  style: { pointerEvents: "none" },
165
- children: $e(s.value) ? /* @__PURE__ */ d(Te, { children: n }) : a
168
+ children: $e(s.value) ? /* @__PURE__ */ u(Te, { children: n }) : d
166
169
  }
167
170
  );
168
171
  }
@@ -171,184 +174,184 @@ De.displayName = Ae;
171
174
  var Tt = "SelectIcon", Le = t.forwardRef(
172
175
  (o, i) => {
173
176
  const { __scopeSelect: e, children: c, ...r } = o;
174
- return /* @__PURE__ */ d(O.span, { "aria-hidden": !0, ...r, ref: i, children: c || "▼" });
177
+ return /* @__PURE__ */ u(M.span, { "aria-hidden": !0, ...r, ref: i, children: c || "▼" });
175
178
  }
176
179
  );
177
180
  Le.displayName = Tt;
178
- var Pt = "SelectPortal", ke = (o) => /* @__PURE__ */ d(ut, { asChild: !0, ...o });
181
+ var Pt = "SelectPortal", ke = (o) => /* @__PURE__ */ u(ut, { asChild: !0, ...o });
179
182
  ke.displayName = Pt;
180
- var Z = "SelectContent", Ve = t.forwardRef(
183
+ var J = "SelectContent", Ve = t.forwardRef(
181
184
  (o, i) => {
182
- const e = G(Z, o.__scopeSelect), [c, r] = t.useState();
183
- if (K(() => {
185
+ const e = Y(J, o.__scopeSelect), [c, r] = t.useState();
186
+ if (j(() => {
184
187
  r(new DocumentFragment());
185
188
  }, []), !e.open) {
186
- const a = c;
187
- return a ? be.createPortal(
188
- /* @__PURE__ */ d(Be, { scope: o.__scopeSelect, children: /* @__PURE__ */ d(ae.Slot, { scope: o.__scopeSelect, children: /* @__PURE__ */ d("div", { children: o.children }) }) }),
189
- a
189
+ const d = c;
190
+ return d ? be.createPortal(
191
+ /* @__PURE__ */ u(Be, { scope: o.__scopeSelect, children: /* @__PURE__ */ u(ae.Slot, { scope: o.__scopeSelect, children: /* @__PURE__ */ u("div", { children: o.children }) }) }),
192
+ d
190
193
  ) : null;
191
194
  }
192
- return /* @__PURE__ */ d(He, { ...o, ref: i });
195
+ return /* @__PURE__ */ u(He, { ...o, ref: i });
193
196
  }
194
197
  );
195
- Ve.displayName = Z;
196
- var B = 10, [Be, z] = ee(Z), Et = "SelectContentImpl", He = t.forwardRef(
198
+ Ve.displayName = J;
199
+ var A = 10, [Be, q] = ee(J), Rt = "SelectContentImpl", Et = pt("SelectContent.RemoveScroll"), He = t.forwardRef(
197
200
  (o, i) => {
198
201
  const {
199
202
  __scopeSelect: e,
200
203
  position: c = "item-aligned",
201
204
  onCloseAutoFocus: r,
202
- onEscapeKeyDown: a,
205
+ onEscapeKeyDown: d,
203
206
  onPointerDownOutside: n,
204
207
  //
205
208
  // PopperContent props
206
209
  side: l,
207
210
  sideOffset: s,
208
- align: p,
211
+ align: f,
209
212
  alignOffset: g,
210
- arrowPadding: w,
213
+ arrowPadding: C,
211
214
  collisionBoundary: E,
212
- collisionPadding: I,
213
- sticky: f,
214
- hideWhenDetached: h,
215
- avoidCollisions: C,
215
+ collisionPadding: T,
216
+ sticky: y,
217
+ hideWhenDetached: a,
218
+ avoidCollisions: h,
216
219
  //
217
- ...m
218
- } = o, v = G(Z, e), [y, H] = t.useState(null), [A, te] = t.useState(null), N = k(i, (u) => H(u)), [M, j] = t.useState(null), [$, Y] = t.useState(
220
+ ...S
221
+ } = o, m = Y(J, e), [v, U] = t.useState(null), [O, te] = t.useState(null), b = k(i, (p) => U(p)), [D, K] = t.useState(null), [X, V] = t.useState(
219
222
  null
220
- ), D = de(e), [W, F] = t.useState(!1), R = t.useRef(!1);
223
+ ), B = de(e), [G, H] = t.useState(!1), W = t.useRef(!1);
221
224
  t.useEffect(() => {
222
- if (y) return vt(y);
223
- }, [y]), lt();
224
- const L = t.useCallback(
225
- (u) => {
226
- const [T, ..._] = D().map((P) => P.ref.current), [S] = _.slice(-1), x = document.activeElement;
227
- for (const P of u)
228
- if (P === x || (P?.scrollIntoView({ block: "nearest" }), P === T && A && (A.scrollTop = 0), P === S && A && (A.scrollTop = A.scrollHeight), P?.focus(), document.activeElement !== x)) return;
225
+ if (v) return vt(v);
226
+ }, [v]), lt();
227
+ const N = t.useCallback(
228
+ (p) => {
229
+ const [I, ..._] = B().map((P) => P.ref.current), [w] = _.slice(-1), x = document.activeElement;
230
+ for (const P of p)
231
+ if (P === x || (P?.scrollIntoView({ block: "nearest" }), P === I && O && (O.scrollTop = 0), P === w && O && (O.scrollTop = O.scrollHeight), P?.focus(), document.activeElement !== x)) return;
229
232
  },
230
- [D, A]
231
- ), V = t.useCallback(
232
- () => L([M, y]),
233
- [L, M, y]
233
+ [B, O]
234
+ ), L = t.useCallback(
235
+ () => N([D, v]),
236
+ [N, D, v]
234
237
  );
235
238
  t.useEffect(() => {
236
- W && V();
237
- }, [W, V]);
238
- const { onOpenChange: J, triggerPointerDownPosRef: U } = v;
239
+ G && L();
240
+ }, [G, L]);
241
+ const { onOpenChange: F, triggerPointerDownPosRef: z } = m;
239
242
  t.useEffect(() => {
240
- if (y) {
241
- let u = { x: 0, y: 0 };
242
- const T = (S) => {
243
- u = {
244
- x: Math.abs(Math.round(S.pageX) - (U.current?.x ?? 0)),
245
- y: Math.abs(Math.round(S.pageY) - (U.current?.y ?? 0))
243
+ if (v) {
244
+ let p = { x: 0, y: 0 };
245
+ const I = (w) => {
246
+ p = {
247
+ x: Math.abs(Math.round(w.pageX) - (z.current?.x ?? 0)),
248
+ y: Math.abs(Math.round(w.pageY) - (z.current?.y ?? 0))
246
249
  };
247
- }, _ = (S) => {
248
- u.x <= 10 && u.y <= 10 ? S.preventDefault() : y.contains(S.target) || J(!1), document.removeEventListener("pointermove", T), U.current = null;
250
+ }, _ = (w) => {
251
+ p.x <= 10 && p.y <= 10 ? w.preventDefault() : v.contains(w.target) || F(!1), document.removeEventListener("pointermove", I), z.current = null;
249
252
  };
250
- return U.current !== null && (document.addEventListener("pointermove", T), document.addEventListener("pointerup", _, { capture: !0, once: !0 })), () => {
251
- document.removeEventListener("pointermove", T), document.removeEventListener("pointerup", _, { capture: !0 });
253
+ return z.current !== null && (document.addEventListener("pointermove", I), document.addEventListener("pointerup", _, { capture: !0, once: !0 })), () => {
254
+ document.removeEventListener("pointermove", I), document.removeEventListener("pointerup", _, { capture: !0 });
252
255
  };
253
256
  }
254
- }, [y, J, U]), t.useEffect(() => {
255
- const u = () => J(!1);
256
- return window.addEventListener("blur", u), window.addEventListener("resize", u), () => {
257
- window.removeEventListener("blur", u), window.removeEventListener("resize", u);
257
+ }, [v, F, z]), t.useEffect(() => {
258
+ const p = () => F(!1);
259
+ return window.addEventListener("blur", p), window.addEventListener("resize", p), () => {
260
+ window.removeEventListener("blur", p), window.removeEventListener("resize", p);
258
261
  };
259
- }, [J]);
260
- const [pe, le] = Qe((u) => {
261
- const T = D().filter((x) => !x.disabled), _ = T.find((x) => x.ref.current === document.activeElement), S = et(T, u, _);
262
- S && setTimeout(() => S.ref.current.focus());
262
+ }, [F]);
263
+ const [pe, le] = Qe((p) => {
264
+ const I = B().filter((x) => !x.disabled), _ = I.find((x) => x.ref.current === document.activeElement), w = et(I, p, _);
265
+ w && setTimeout(() => w.ref.current.focus());
263
266
  }), fe = t.useCallback(
264
- (u, T, _) => {
265
- const S = !R.current && !_;
266
- (v.value !== void 0 && v.value === T || S) && (j(u), S && (R.current = !0));
267
+ (p, I, _) => {
268
+ const w = !W.current && !_;
269
+ (m.value !== void 0 && m.value === I || w) && (K(p), w && (W.current = !0));
267
270
  },
268
- [v.value]
269
- ), me = t.useCallback(() => y?.focus(), [y]), Q = t.useCallback(
270
- (u, T, _) => {
271
- const S = !R.current && !_;
272
- (v.value !== void 0 && v.value === T || S) && Y(u);
271
+ [m.value]
272
+ ), me = t.useCallback(() => v?.focus(), [v]), Q = t.useCallback(
273
+ (p, I, _) => {
274
+ const w = !W.current && !_;
275
+ (m.value !== void 0 && m.value === I || w) && V(p);
273
276
  },
274
- [v.value]
277
+ [m.value]
275
278
  ), se = c === "popper" ? Se : We, oe = se === Se ? {
276
279
  side: l,
277
280
  sideOffset: s,
278
- align: p,
281
+ align: f,
279
282
  alignOffset: g,
280
- arrowPadding: w,
283
+ arrowPadding: C,
281
284
  collisionBoundary: E,
282
- collisionPadding: I,
283
- sticky: f,
284
- hideWhenDetached: h,
285
- avoidCollisions: C
285
+ collisionPadding: T,
286
+ sticky: y,
287
+ hideWhenDetached: a,
288
+ avoidCollisions: h
286
289
  } : {};
287
- return /* @__PURE__ */ d(
290
+ return /* @__PURE__ */ u(
288
291
  Be,
289
292
  {
290
293
  scope: e,
291
- content: y,
292
- viewport: A,
294
+ content: v,
295
+ viewport: O,
293
296
  onViewportChange: te,
294
297
  itemRefCallback: fe,
295
- selectedItem: M,
298
+ selectedItem: D,
296
299
  onItemLeave: me,
297
300
  itemTextRefCallback: Q,
298
- focusSelectedItem: V,
299
- selectedItemText: $,
301
+ focusSelectedItem: L,
302
+ selectedItemText: X,
300
303
  position: c,
301
- isPositioned: W,
304
+ isPositioned: G,
302
305
  searchRef: pe,
303
- children: /* @__PURE__ */ d(gt, { as: pt, allowPinchZoom: !0, children: /* @__PURE__ */ d(
306
+ children: /* @__PURE__ */ u(gt, { as: Et, allowPinchZoom: !0, children: /* @__PURE__ */ u(
304
307
  st,
305
308
  {
306
309
  asChild: !0,
307
- trapped: v.open,
308
- onMountAutoFocus: (u) => {
309
- u.preventDefault();
310
+ trapped: m.open,
311
+ onMountAutoFocus: (p) => {
312
+ p.preventDefault();
310
313
  },
311
- onUnmountAutoFocus: b(r, (u) => {
312
- v.trigger?.focus({ preventScroll: !0 }), u.preventDefault();
314
+ onUnmountAutoFocus: R(r, (p) => {
315
+ m.trigger?.focus({ preventScroll: !0 }), p.preventDefault();
313
316
  }),
314
- children: /* @__PURE__ */ d(
317
+ children: /* @__PURE__ */ u(
315
318
  rt,
316
319
  {
317
320
  asChild: !0,
318
321
  disableOutsidePointerEvents: !0,
319
- onEscapeKeyDown: a,
322
+ onEscapeKeyDown: d,
320
323
  onPointerDownOutside: n,
321
- onFocusOutside: (u) => u.preventDefault(),
322
- onDismiss: () => v.onOpenChange(!1),
323
- children: /* @__PURE__ */ d(
324
+ onFocusOutside: (p) => p.preventDefault(),
325
+ onDismiss: () => m.onOpenChange(!1),
326
+ children: /* @__PURE__ */ u(
324
327
  se,
325
328
  {
326
329
  role: "listbox",
327
- id: v.contentId,
328
- "data-state": v.open ? "open" : "closed",
329
- dir: v.dir,
330
- onContextMenu: (u) => u.preventDefault(),
331
- ...m,
330
+ id: m.contentId,
331
+ "data-state": m.open ? "open" : "closed",
332
+ dir: m.dir,
333
+ onContextMenu: (p) => p.preventDefault(),
334
+ ...S,
332
335
  ...oe,
333
- onPlaced: () => F(!0),
334
- ref: N,
336
+ onPlaced: () => H(!0),
337
+ ref: b,
335
338
  style: {
336
339
  // flex layout so we can place the scroll buttons properly
337
340
  display: "flex",
338
341
  flexDirection: "column",
339
342
  // reset the outline by default as the content MAY get focused
340
343
  outline: "none",
341
- ...m.style
344
+ ...S.style
342
345
  },
343
- onKeyDown: b(m.onKeyDown, (u) => {
344
- const T = u.ctrlKey || u.altKey || u.metaKey;
345
- if (u.key === "Tab" && u.preventDefault(), !T && u.key.length === 1 && le(u.key), ["ArrowUp", "ArrowDown", "Home", "End"].includes(u.key)) {
346
- let S = D().filter((x) => !x.disabled).map((x) => x.ref.current);
347
- if (["ArrowUp", "End"].includes(u.key) && (S = S.slice().reverse()), ["ArrowUp", "ArrowDown"].includes(u.key)) {
348
- const x = u.target, P = S.indexOf(x);
349
- S = S.slice(P + 1);
346
+ onKeyDown: R(S.onKeyDown, (p) => {
347
+ const I = p.ctrlKey || p.altKey || p.metaKey;
348
+ if (p.key === "Tab" && p.preventDefault(), !I && p.key.length === 1 && le(p.key), ["ArrowUp", "ArrowDown", "Home", "End"].includes(p.key)) {
349
+ let w = B().filter((x) => !x.disabled).map((x) => x.ref.current);
350
+ if (["ArrowUp", "End"].includes(p.key) && (w = w.slice().reverse()), ["ArrowUp", "ArrowDown"].includes(p.key)) {
351
+ const x = p.target, P = w.indexOf(x);
352
+ w = w.slice(P + 1);
350
353
  }
351
- setTimeout(() => L(S)), u.preventDefault();
354
+ setTimeout(() => N(w)), p.preventDefault();
352
355
  }
353
356
  })
354
357
  }
@@ -361,71 +364,82 @@ var B = 10, [Be, z] = ee(Z), Et = "SelectContentImpl", He = t.forwardRef(
361
364
  );
362
365
  }
363
366
  );
364
- He.displayName = Et;
365
- var Rt = "SelectItemAlignedPosition", We = t.forwardRef((o, i) => {
366
- const { __scopeSelect: e, onPlaced: c, ...r } = o, a = G(Z, e), n = z(Z, e), [l, s] = t.useState(null), [p, g] = t.useState(null), w = k(i, (N) => g(N)), E = de(e), I = t.useRef(!1), f = t.useRef(!0), { viewport: h, selectedItem: C, selectedItemText: m, focusSelectedItem: v } = n, y = t.useCallback(() => {
367
- if (a.trigger && a.valueNode && l && p && h && C && m) {
368
- const N = a.trigger.getBoundingClientRect(), M = p.getBoundingClientRect(), j = a.valueNode.getBoundingClientRect(), $ = m.getBoundingClientRect();
369
- if (a.dir !== "rtl") {
370
- const x = $.left - M.left, P = j.left - x, q = N.left - P, X = N.width + q, he = Math.max(X, M.width), ve = window.innerWidth - B, ge = Ee(P, [B, ve - he]);
371
- l.style.minWidth = X + "px", l.style.left = ge + "px";
367
+ He.displayName = Rt;
368
+ var bt = "SelectItemAlignedPosition", We = t.forwardRef((o, i) => {
369
+ const { __scopeSelect: e, onPlaced: c, ...r } = o, d = Y(J, e), n = q(J, e), [l, s] = t.useState(null), [f, g] = t.useState(null), C = k(i, (b) => g(b)), E = de(e), T = t.useRef(!1), y = t.useRef(!0), { viewport: a, selectedItem: h, selectedItemText: S, focusSelectedItem: m } = n, v = t.useCallback(() => {
370
+ if (d.trigger && d.valueNode && l && f && a && h && S) {
371
+ const b = d.trigger.getBoundingClientRect(), D = f.getBoundingClientRect(), K = d.valueNode.getBoundingClientRect(), X = S.getBoundingClientRect();
372
+ if (d.dir !== "rtl") {
373
+ const x = X.left - D.left, P = K.left - x, Z = b.left - P, $ = b.width + Z, he = Math.max($, D.width), ve = window.innerWidth - A, ge = Re(P, [
374
+ A,
375
+ // Prevents the content from going off the starting edge of the
376
+ // viewport. It may still go off the ending edge, but this can be
377
+ // controlled by the user since they may want to manage overflow in a
378
+ // specific way.
379
+ // https://github.com/radix-ui/primitives/issues/2049
380
+ Math.max(A, ve - he)
381
+ ]);
382
+ l.style.minWidth = $ + "px", l.style.left = ge + "px";
372
383
  } else {
373
- const x = M.right - $.right, P = window.innerWidth - j.right - x, q = window.innerWidth - N.right - P, X = N.width + q, he = Math.max(X, M.width), ve = window.innerWidth - B, ge = Ee(P, [B, ve - he]);
374
- l.style.minWidth = X + "px", l.style.right = ge + "px";
384
+ const x = D.right - X.right, P = window.innerWidth - K.right - x, Z = window.innerWidth - b.right - P, $ = b.width + Z, he = Math.max($, D.width), ve = window.innerWidth - A, ge = Re(P, [
385
+ A,
386
+ Math.max(A, ve - he)
387
+ ]);
388
+ l.style.minWidth = $ + "px", l.style.right = ge + "px";
375
389
  }
376
- const Y = E(), D = window.innerHeight - B * 2, W = h.scrollHeight, F = window.getComputedStyle(p), R = parseInt(F.borderTopWidth, 10), L = parseInt(F.paddingTop, 10), V = parseInt(F.borderBottomWidth, 10), J = parseInt(F.paddingBottom, 10), U = R + L + W + J + V, pe = Math.min(C.offsetHeight * 5, U), le = window.getComputedStyle(h), fe = parseInt(le.paddingTop, 10), me = parseInt(le.paddingBottom, 10), Q = N.top + N.height / 2 - B, se = D - Q, oe = C.offsetHeight / 2, u = C.offsetTop + oe, T = R + L + u, _ = U - T;
377
- if (T <= Q) {
378
- const x = C === Y[Y.length - 1].ref.current;
390
+ const V = E(), B = window.innerHeight - A * 2, G = a.scrollHeight, H = window.getComputedStyle(f), W = parseInt(H.borderTopWidth, 10), N = parseInt(H.paddingTop, 10), L = parseInt(H.borderBottomWidth, 10), F = parseInt(H.paddingBottom, 10), z = W + N + G + F + L, pe = Math.min(h.offsetHeight * 5, z), le = window.getComputedStyle(a), fe = parseInt(le.paddingTop, 10), me = parseInt(le.paddingBottom, 10), Q = b.top + b.height / 2 - A, se = B - Q, oe = h.offsetHeight / 2, p = h.offsetTop + oe, I = W + N + p, _ = z - I;
391
+ if (I <= Q) {
392
+ const x = V.length > 0 && h === V[V.length - 1].ref.current;
379
393
  l.style.bottom = "0px";
380
- const P = p.clientHeight - h.offsetTop - h.offsetHeight, q = Math.max(
394
+ const P = f.clientHeight - a.offsetTop - a.offsetHeight, Z = Math.max(
381
395
  se,
382
396
  oe + // viewport might have padding bottom, include it to avoid a scrollable viewport
383
- (x ? me : 0) + P + V
384
- ), X = T + q;
385
- l.style.height = X + "px";
397
+ (x ? me : 0) + P + L
398
+ ), $ = I + Z;
399
+ l.style.height = $ + "px";
386
400
  } else {
387
- const x = C === Y[0].ref.current;
401
+ const x = V.length > 0 && h === V[0].ref.current;
388
402
  l.style.top = "0px";
389
- const q = Math.max(
403
+ const Z = Math.max(
390
404
  Q,
391
- R + h.offsetTop + // viewport might have padding top, include it to avoid a scrollable viewport
405
+ W + a.offsetTop + // viewport might have padding top, include it to avoid a scrollable viewport
392
406
  (x ? fe : 0) + oe
393
407
  ) + _;
394
- l.style.height = q + "px", h.scrollTop = T - Q + h.offsetTop;
408
+ l.style.height = Z + "px", a.scrollTop = I - Q + a.offsetTop;
395
409
  }
396
- l.style.margin = `${B}px 0`, l.style.minHeight = pe + "px", l.style.maxHeight = D + "px", c?.(), requestAnimationFrame(() => I.current = !0);
410
+ l.style.margin = `${A}px 0`, l.style.minHeight = pe + "px", l.style.maxHeight = B + "px", c?.(), requestAnimationFrame(() => T.current = !0);
397
411
  }
398
412
  }, [
399
413
  E,
400
- a.trigger,
401
- a.valueNode,
414
+ d.trigger,
415
+ d.valueNode,
402
416
  l,
403
- p,
417
+ f,
418
+ a,
404
419
  h,
405
- C,
406
- m,
407
- a.dir,
420
+ S,
421
+ d.dir,
408
422
  c
409
423
  ]);
410
- K(() => y(), [y]);
411
- const [H, A] = t.useState();
412
- K(() => {
413
- p && A(window.getComputedStyle(p).zIndex);
414
- }, [p]);
424
+ j(() => v(), [v]);
425
+ const [U, O] = t.useState();
426
+ j(() => {
427
+ f && O(window.getComputedStyle(f).zIndex);
428
+ }, [f]);
415
429
  const te = t.useCallback(
416
- (N) => {
417
- N && f.current === !0 && (y(), v?.(), f.current = !1);
430
+ (b) => {
431
+ b && y.current === !0 && (v(), m?.(), y.current = !1);
418
432
  },
419
- [y, v]
433
+ [v, m]
420
434
  );
421
- return /* @__PURE__ */ d(
422
- Nt,
435
+ return /* @__PURE__ */ u(
436
+ _t,
423
437
  {
424
438
  scope: e,
425
439
  contentWrapper: l,
426
- shouldExpandOnScrollRef: I,
440
+ shouldExpandOnScrollRef: T,
427
441
  onScrollButtonChange: te,
428
- children: /* @__PURE__ */ d(
442
+ children: /* @__PURE__ */ u(
429
443
  "div",
430
444
  {
431
445
  ref: s,
@@ -433,13 +447,13 @@ var Rt = "SelectItemAlignedPosition", We = t.forwardRef((o, i) => {
433
447
  display: "flex",
434
448
  flexDirection: "column",
435
449
  position: "fixed",
436
- zIndex: H
450
+ zIndex: U
437
451
  },
438
- children: /* @__PURE__ */ d(
439
- O.div,
452
+ children: /* @__PURE__ */ u(
453
+ M.div,
440
454
  {
441
455
  ...r,
442
- ref: w,
456
+ ref: C,
443
457
  style: {
444
458
  // When we get the height of the content, it includes borders. If we were to set
445
459
  // the height without having `boxSizing: 'border-box'` it would be too big.
@@ -455,26 +469,26 @@ var Rt = "SelectItemAlignedPosition", We = t.forwardRef((o, i) => {
455
469
  }
456
470
  );
457
471
  });
458
- We.displayName = Rt;
459
- var bt = "SelectPopperPosition", Se = t.forwardRef((o, i) => {
472
+ We.displayName = bt;
473
+ var Nt = "SelectPopperPosition", Se = t.forwardRef((o, i) => {
460
474
  const {
461
475
  __scopeSelect: e,
462
476
  align: c = "start",
463
- collisionPadding: r = B,
464
- ...a
477
+ collisionPadding: r = A,
478
+ ...d
465
479
  } = o, n = ue(e);
466
- return /* @__PURE__ */ d(
480
+ return /* @__PURE__ */ u(
467
481
  it,
468
482
  {
469
483
  ...n,
470
- ...a,
484
+ ...d,
471
485
  ref: i,
472
486
  align: c,
473
487
  collisionPadding: r,
474
488
  style: {
475
489
  // Ensure border-box for floating-ui calculations
476
490
  boxSizing: "border-box",
477
- ...a.style,
491
+ ...d.style,
478
492
  "--radix-select-content-transform-origin": "var(--radix-popper-transform-origin)",
479
493
  "--radix-select-content-available-width": "var(--radix-popper-available-width)",
480
494
  "--radix-select-content-available-height": "var(--radix-popper-available-height)",
@@ -484,12 +498,12 @@ var bt = "SelectPopperPosition", Se = t.forwardRef((o, i) => {
484
498
  }
485
499
  );
486
500
  });
487
- Se.displayName = bt;
488
- var [Nt, Pe] = ee(Z, {}), we = "SelectViewport", Fe = t.forwardRef(
501
+ Se.displayName = Nt;
502
+ var [_t, Pe] = ee(J, {}), we = "SelectViewport", Fe = t.forwardRef(
489
503
  (o, i) => {
490
- const { __scopeSelect: e, nonce: c, ...r } = o, a = z(we, e), n = Pe(we, e), l = k(i, a.onViewportChange), s = t.useRef(0);
504
+ const { __scopeSelect: e, nonce: c, ...r } = o, d = q(we, e), n = Pe(we, e), l = k(i, d.onViewportChange), s = t.useRef(0);
491
505
  return /* @__PURE__ */ ce(Te, { children: [
492
- /* @__PURE__ */ d(
506
+ /* @__PURE__ */ u(
493
507
  "style",
494
508
  {
495
509
  dangerouslySetInnerHTML: {
@@ -498,8 +512,8 @@ var [Nt, Pe] = ee(Z, {}), we = "SelectViewport", Fe = t.forwardRef(
498
512
  nonce: c
499
513
  }
500
514
  ),
501
- /* @__PURE__ */ d(ae.Slot, { scope: e, children: /* @__PURE__ */ d(
502
- O.div,
515
+ /* @__PURE__ */ u(ae.Slot, { scope: e, children: /* @__PURE__ */ u(
516
+ M.div,
503
517
  {
504
518
  "data-radix-select-viewport": "",
505
519
  role: "presentation",
@@ -511,18 +525,22 @@ var [Nt, Pe] = ee(Z, {}), we = "SelectViewport", Fe = t.forwardRef(
511
525
  // (independent of the scrollUpButton).
512
526
  position: "relative",
513
527
  flex: 1,
514
- overflow: "auto",
528
+ // Viewport should only be scrollable in the vertical direction.
529
+ // This won't work in vertical writing modes, so we'll need to
530
+ // revisit this if/when that is supported
531
+ // https://developer.chrome.com/blog/vertical-form-controls
532
+ overflow: "hidden auto",
515
533
  ...r.style
516
534
  },
517
- onScroll: b(r.onScroll, (p) => {
518
- const g = p.currentTarget, { contentWrapper: w, shouldExpandOnScrollRef: E } = n;
519
- if (E?.current && w) {
520
- const I = Math.abs(s.current - g.scrollTop);
521
- if (I > 0) {
522
- const f = window.innerHeight - B * 2, h = parseFloat(w.style.minHeight), C = parseFloat(w.style.height), m = Math.max(h, C);
523
- if (m < f) {
524
- const v = m + I, y = Math.min(f, v), H = v - y;
525
- w.style.height = y + "px", w.style.bottom === "0px" && (g.scrollTop = H > 0 ? H : 0, w.style.justifyContent = "flex-end");
535
+ onScroll: R(r.onScroll, (f) => {
536
+ const g = f.currentTarget, { contentWrapper: C, shouldExpandOnScrollRef: E } = n;
537
+ if (E?.current && C) {
538
+ const T = Math.abs(s.current - g.scrollTop);
539
+ if (T > 0) {
540
+ const y = window.innerHeight - A * 2, a = parseFloat(C.style.minHeight), h = parseFloat(C.style.height), S = Math.max(a, h);
541
+ if (S < y) {
542
+ const m = S + T, v = Math.min(y, m), U = m - v;
543
+ C.style.height = v + "px", C.style.bottom === "0px" && (g.scrollTop = U > 0 ? U : 0, C.style.justifyContent = "flex-end");
526
544
  }
527
545
  }
528
546
  }
@@ -534,80 +552,88 @@ var [Nt, Pe] = ee(Z, {}), we = "SelectViewport", Fe = t.forwardRef(
534
552
  }
535
553
  );
536
554
  Fe.displayName = we;
537
- var Ue = "SelectGroup", [_t, Mt] = ee(Ue), Ot = t.forwardRef(
555
+ var Ue = "SelectGroup", [Mt, Ot] = ee(Ue), At = t.forwardRef(
538
556
  (o, i) => {
539
557
  const { __scopeSelect: e, ...c } = o, r = Ie();
540
- return /* @__PURE__ */ d(_t, { scope: e, id: r, children: /* @__PURE__ */ d(O.div, { role: "group", "aria-labelledby": r, ...c, ref: i }) });
558
+ return /* @__PURE__ */ u(Mt, { scope: e, id: r, children: /* @__PURE__ */ u(M.div, { role: "group", "aria-labelledby": r, ...c, ref: i }) });
541
559
  }
542
560
  );
543
- Ot.displayName = Ue;
544
- var Ke = "SelectLabel", At = t.forwardRef(
561
+ At.displayName = Ue;
562
+ var Ke = "SelectLabel", Dt = t.forwardRef(
545
563
  (o, i) => {
546
- const { __scopeSelect: e, ...c } = o, r = Mt(Ke, e);
547
- return /* @__PURE__ */ d(O.div, { id: r.id, ...c, ref: i });
564
+ const { __scopeSelect: e, ...c } = o, r = Ot(Ke, e);
565
+ return /* @__PURE__ */ u(M.div, { id: r.id, ...c, ref: i });
548
566
  }
549
567
  );
550
- At.displayName = Ke;
551
- var ie = "SelectItem", [Dt, Ge] = ee(ie), ze = t.forwardRef(
568
+ Dt.displayName = Ke;
569
+ var ie = "SelectItem", [Lt, Ge] = ee(ie), ze = t.forwardRef(
552
570
  (o, i) => {
553
571
  const {
554
572
  __scopeSelect: e,
555
573
  value: c,
556
574
  disabled: r = !1,
557
- textValue: a,
575
+ textValue: d,
558
576
  ...n
559
- } = o, l = G(ie, e), s = z(ie, e), p = l.value === c, [g, w] = t.useState(a ?? ""), [E, I] = t.useState(!1), f = k(
577
+ } = o, l = Y(ie, e), s = q(ie, e), f = l.value === c, [g, C] = t.useState(d ?? ""), [E, T] = t.useState(!1), y = k(
560
578
  i,
561
579
  (m) => s.itemRefCallback?.(m, c, r)
562
- ), h = Ie(), C = () => {
580
+ ), a = Ie(), h = t.useRef("touch"), S = () => {
563
581
  r || (l.onValueChange(c), l.onOpenChange(!1));
564
582
  };
565
583
  if (c === "")
566
584
  throw new Error(
567
585
  "A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder."
568
586
  );
569
- return /* @__PURE__ */ d(
570
- Dt,
587
+ return /* @__PURE__ */ u(
588
+ Lt,
571
589
  {
572
590
  scope: e,
573
591
  value: c,
574
592
  disabled: r,
575
- textId: h,
576
- isSelected: p,
593
+ textId: a,
594
+ isSelected: f,
577
595
  onItemTextChange: t.useCallback((m) => {
578
- w((v) => v || (m?.textContent ?? "").trim());
596
+ C((v) => v || (m?.textContent ?? "").trim());
579
597
  }, []),
580
- children: /* @__PURE__ */ d(
598
+ children: /* @__PURE__ */ u(
581
599
  ae.ItemSlot,
582
600
  {
583
601
  scope: e,
584
602
  value: c,
585
603
  disabled: r,
586
604
  textValue: g,
587
- children: /* @__PURE__ */ d(
588
- O.div,
605
+ children: /* @__PURE__ */ u(
606
+ M.div,
589
607
  {
590
608
  role: "option",
591
- "aria-labelledby": h,
609
+ "aria-labelledby": a,
592
610
  "data-highlighted": E ? "" : void 0,
593
- "aria-selected": p && E,
594
- "data-state": p ? "checked" : "unchecked",
611
+ "aria-selected": f && E,
612
+ "data-state": f ? "checked" : "unchecked",
595
613
  "aria-disabled": r || void 0,
596
614
  "data-disabled": r ? "" : void 0,
597
615
  tabIndex: r ? void 0 : -1,
598
616
  ...n,
599
- ref: f,
600
- onFocus: b(n.onFocus, () => I(!0)),
601
- onBlur: b(n.onBlur, () => I(!1)),
602
- onPointerUp: b(n.onPointerUp, C),
603
- onPointerMove: b(n.onPointerMove, (m) => {
604
- r ? s.onItemLeave?.() : m.currentTarget.focus({ preventScroll: !0 });
617
+ ref: y,
618
+ onFocus: R(n.onFocus, () => T(!0)),
619
+ onBlur: R(n.onBlur, () => T(!1)),
620
+ onClick: R(n.onClick, () => {
621
+ h.current !== "mouse" && S();
605
622
  }),
606
- onPointerLeave: b(n.onPointerLeave, (m) => {
623
+ onPointerUp: R(n.onPointerUp, () => {
624
+ h.current === "mouse" && S();
625
+ }),
626
+ onPointerDown: R(n.onPointerDown, (m) => {
627
+ h.current = m.pointerType;
628
+ }),
629
+ onPointerMove: R(n.onPointerMove, (m) => {
630
+ h.current = m.pointerType, r ? s.onItemLeave?.() : h.current === "mouse" && m.currentTarget.focus({ preventScroll: !0 });
631
+ }),
632
+ onPointerLeave: R(n.onPointerLeave, (m) => {
607
633
  m.currentTarget === document.activeElement && s.onItemLeave?.();
608
634
  }),
609
- onKeyDown: b(n.onKeyDown, (m) => {
610
- s.searchRef?.current !== "" && m.key === " " || (wt.includes(m.key) && C(), m.key === " " && m.preventDefault());
635
+ onKeyDown: R(n.onKeyDown, (m) => {
636
+ s.searchRef?.current !== "" && m.key === " " || (wt.includes(m.key) && S(), m.key === " " && m.preventDefault());
611
637
  })
612
638
  }
613
639
  )
@@ -620,41 +646,41 @@ var ie = "SelectItem", [Dt, Ge] = ee(ie), ze = t.forwardRef(
620
646
  ze.displayName = ie;
621
647
  var ne = "SelectItemText", je = t.forwardRef(
622
648
  (o, i) => {
623
- const { __scopeSelect: e, className: c, style: r, ...a } = o, n = G(ne, e), l = z(ne, e), s = Ge(ne, e), p = It(ne, e), [g, w] = t.useState(null), E = k(
649
+ const { __scopeSelect: e, className: c, style: r, ...d } = o, n = Y(ne, e), l = q(ne, e), s = Ge(ne, e), f = It(ne, e), [g, C] = t.useState(null), E = k(
624
650
  i,
625
- (m) => w(m),
651
+ (S) => C(S),
626
652
  s.onItemTextChange,
627
- (m) => l.itemTextRefCallback?.(m, s.value, s.disabled)
628
- ), I = g?.textContent, f = t.useMemo(
629
- () => /* @__PURE__ */ d("option", { value: s.value, disabled: s.disabled, children: I }, s.value),
630
- [s.disabled, s.value, I]
631
- ), { onNativeOptionAdd: h, onNativeOptionRemove: C } = p;
632
- return K(() => (h(f), () => C(f)), [h, C, f]), /* @__PURE__ */ ce(Te, { children: [
633
- /* @__PURE__ */ d(O.span, { id: s.textId, ...a, ref: E }),
634
- s.isSelected && n.valueNode && !n.valueNodeHasChildren ? be.createPortal(a.children, n.valueNode) : null
653
+ (S) => l.itemTextRefCallback?.(S, s.value, s.disabled)
654
+ ), T = g?.textContent, y = t.useMemo(
655
+ () => /* @__PURE__ */ u("option", { value: s.value, disabled: s.disabled, children: T }, s.value),
656
+ [s.disabled, s.value, T]
657
+ ), { onNativeOptionAdd: a, onNativeOptionRemove: h } = f;
658
+ return j(() => (a(y), () => h(y)), [a, h, y]), /* @__PURE__ */ ce(Te, { children: [
659
+ /* @__PURE__ */ u(M.span, { id: s.textId, ...d, ref: E }),
660
+ s.isSelected && n.valueNode && !n.valueNodeHasChildren ? be.createPortal(d.children, n.valueNode) : null
635
661
  ] });
636
662
  }
637
663
  );
638
664
  je.displayName = ne;
639
- var Ye = "SelectItemIndicator", Lt = t.forwardRef(
665
+ var Ye = "SelectItemIndicator", kt = t.forwardRef(
640
666
  (o, i) => {
641
667
  const { __scopeSelect: e, ...c } = o;
642
- return Ge(Ye, e).isSelected ? /* @__PURE__ */ d(O.span, { "aria-hidden": !0, ...c, ref: i }) : null;
668
+ return Ge(Ye, e).isSelected ? /* @__PURE__ */ u(M.span, { "aria-hidden": !0, ...c, ref: i }) : null;
643
669
  }
644
670
  );
645
- Lt.displayName = Ye;
671
+ kt.displayName = Ye;
646
672
  var Ce = "SelectScrollUpButton", qe = t.forwardRef((o, i) => {
647
- const e = z(Ce, o.__scopeSelect), c = Pe(Ce, o.__scopeSelect), [r, a] = t.useState(!1), n = k(i, c.onScrollButtonChange);
648
- return K(() => {
673
+ const e = q(Ce, o.__scopeSelect), c = Pe(Ce, o.__scopeSelect), [r, d] = t.useState(!1), n = k(i, c.onScrollButtonChange);
674
+ return j(() => {
649
675
  if (e.viewport && e.isPositioned) {
650
676
  let l = function() {
651
- const p = s.scrollTop > 0;
652
- a(p);
677
+ const f = s.scrollTop > 0;
678
+ d(f);
653
679
  };
654
680
  const s = e.viewport;
655
681
  return l(), s.addEventListener("scroll", l), () => s.removeEventListener("scroll", l);
656
682
  }
657
- }, [e.viewport, e.isPositioned]), r ? /* @__PURE__ */ d(
683
+ }, [e.viewport, e.isPositioned]), r ? /* @__PURE__ */ u(
658
684
  Ze,
659
685
  {
660
686
  ...o,
@@ -668,17 +694,17 @@ var Ce = "SelectScrollUpButton", qe = t.forwardRef((o, i) => {
668
694
  });
669
695
  qe.displayName = Ce;
670
696
  var xe = "SelectScrollDownButton", Xe = t.forwardRef((o, i) => {
671
- const e = z(xe, o.__scopeSelect), c = Pe(xe, o.__scopeSelect), [r, a] = t.useState(!1), n = k(i, c.onScrollButtonChange);
672
- return K(() => {
697
+ const e = q(xe, o.__scopeSelect), c = Pe(xe, o.__scopeSelect), [r, d] = t.useState(!1), n = k(i, c.onScrollButtonChange);
698
+ return j(() => {
673
699
  if (e.viewport && e.isPositioned) {
674
700
  let l = function() {
675
- const p = s.scrollHeight - s.clientHeight, g = Math.ceil(s.scrollTop) < p;
676
- a(g);
701
+ const f = s.scrollHeight - s.clientHeight, g = Math.ceil(s.scrollTop) < f;
702
+ d(g);
677
703
  };
678
704
  const s = e.viewport;
679
705
  return l(), s.addEventListener("scroll", l), () => s.removeEventListener("scroll", l);
680
706
  }
681
- }, [e.viewport, e.isPositioned]), r ? /* @__PURE__ */ d(
707
+ }, [e.viewport, e.isPositioned]), r ? /* @__PURE__ */ u(
682
708
  Ze,
683
709
  {
684
710
  ...o,
@@ -692,59 +718,59 @@ var xe = "SelectScrollDownButton", Xe = t.forwardRef((o, i) => {
692
718
  });
693
719
  Xe.displayName = xe;
694
720
  var Ze = t.forwardRef((o, i) => {
695
- const { __scopeSelect: e, onAutoScroll: c, ...r } = o, a = z("SelectScrollButton", e), n = t.useRef(null), l = de(e), s = t.useCallback(() => {
721
+ const { __scopeSelect: e, onAutoScroll: c, ...r } = o, d = q("SelectScrollButton", e), n = t.useRef(null), l = de(e), s = t.useCallback(() => {
696
722
  n.current !== null && (window.clearInterval(n.current), n.current = null);
697
723
  }, []);
698
- return t.useEffect(() => () => s(), [s]), K(() => {
724
+ return t.useEffect(() => () => s(), [s]), j(() => {
699
725
  l().find((g) => g.ref.current === document.activeElement)?.ref.current?.scrollIntoView({ block: "nearest" });
700
- }, [l]), /* @__PURE__ */ d(
701
- O.div,
726
+ }, [l]), /* @__PURE__ */ u(
727
+ M.div,
702
728
  {
703
729
  "aria-hidden": !0,
704
730
  ...r,
705
731
  ref: i,
706
732
  style: { flexShrink: 0, ...r.style },
707
- onPointerDown: b(r.onPointerDown, () => {
733
+ onPointerDown: R(r.onPointerDown, () => {
708
734
  n.current === null && (n.current = window.setInterval(c, 50));
709
735
  }),
710
- onPointerMove: b(r.onPointerMove, () => {
711
- a.onItemLeave?.(), n.current === null && (n.current = window.setInterval(c, 50));
736
+ onPointerMove: R(r.onPointerMove, () => {
737
+ d.onItemLeave?.(), n.current === null && (n.current = window.setInterval(c, 50));
712
738
  }),
713
- onPointerLeave: b(r.onPointerLeave, () => {
739
+ onPointerLeave: R(r.onPointerLeave, () => {
714
740
  s();
715
741
  })
716
742
  }
717
743
  );
718
- }), kt = "SelectSeparator", Vt = t.forwardRef(
744
+ }), Vt = "SelectSeparator", Bt = t.forwardRef(
719
745
  (o, i) => {
720
746
  const { __scopeSelect: e, ...c } = o;
721
- return /* @__PURE__ */ d(O.div, { "aria-hidden": !0, ...c, ref: i });
747
+ return /* @__PURE__ */ u(M.div, { "aria-hidden": !0, ...c, ref: i });
722
748
  }
723
749
  );
724
- Vt.displayName = kt;
725
- var ye = "SelectArrow", Bt = t.forwardRef(
750
+ Bt.displayName = Vt;
751
+ var ye = "SelectArrow", Ht = t.forwardRef(
726
752
  (o, i) => {
727
- const { __scopeSelect: e, ...c } = o, r = ue(e), a = G(ye, e), n = z(ye, e);
728
- return a.open && n.position === "popper" ? /* @__PURE__ */ d(at, { ...r, ...c, ref: i }) : null;
753
+ const { __scopeSelect: e, ...c } = o, r = ue(e), d = Y(ye, e), n = q(ye, e);
754
+ return d.open && n.position === "popper" ? /* @__PURE__ */ u(at, { ...r, ...c, ref: i }) : null;
729
755
  }
730
756
  );
731
- Bt.displayName = ye;
757
+ Ht.displayName = ye;
732
758
  function $e(o) {
733
759
  return o === "" || o === void 0;
734
760
  }
735
761
  var Je = t.forwardRef(
736
762
  (o, i) => {
737
- const { value: e, ...c } = o, r = t.useRef(null), a = k(i, r), n = mt(e);
763
+ const { value: e, ...c } = o, r = t.useRef(null), d = k(i, r), n = mt(e);
738
764
  return t.useEffect(() => {
739
765
  const l = r.current, s = window.HTMLSelectElement.prototype, g = Object.getOwnPropertyDescriptor(
740
766
  s,
741
767
  "value"
742
768
  ).set;
743
769
  if (n !== e && g) {
744
- const w = new Event("change", { bubbles: !0 });
745
- g.call(l, e), l.dispatchEvent(w);
770
+ const C = new Event("change", { bubbles: !0 });
771
+ g.call(l, e), l.dispatchEvent(C);
746
772
  }
747
- }, [n, e]), /* @__PURE__ */ d(ht, { asChild: !0, children: /* @__PURE__ */ d("select", { ...c, ref: a, defaultValue: e }) });
773
+ }, [n, e]), /* @__PURE__ */ u(ht, { asChild: !0, children: /* @__PURE__ */ u("select", { ...c, ref: d, defaultValue: e }) });
748
774
  }
749
775
  );
750
776
  Je.displayName = "BubbleSelect";
@@ -752,56 +778,56 @@ function Qe(o) {
752
778
  const i = ft(o), e = t.useRef(""), c = t.useRef(0), r = t.useCallback(
753
779
  (n) => {
754
780
  const l = e.current + n;
755
- i(l), function s(p) {
756
- e.current = p, window.clearTimeout(c.current), p !== "" && (c.current = window.setTimeout(() => s(""), 1e3));
781
+ i(l), function s(f) {
782
+ e.current = f, window.clearTimeout(c.current), f !== "" && (c.current = window.setTimeout(() => s(""), 1e3));
757
783
  }(l);
758
784
  },
759
785
  [i]
760
- ), a = t.useCallback(() => {
786
+ ), d = t.useCallback(() => {
761
787
  e.current = "", window.clearTimeout(c.current);
762
788
  }, []);
763
- return t.useEffect(() => () => window.clearTimeout(c.current), []), [e, r, a];
789
+ return t.useEffect(() => () => window.clearTimeout(c.current), []), [e, r, d];
764
790
  }
765
791
  function et(o, i, e) {
766
- const r = i.length > 1 && Array.from(i).every((p) => p === i[0]) ? i[0] : i, a = e ? o.indexOf(e) : -1;
767
- let n = Ht(o, Math.max(a, 0));
768
- r.length === 1 && (n = n.filter((p) => p !== e));
792
+ const r = i.length > 1 && Array.from(i).every((f) => f === i[0]) ? i[0] : i, d = e ? o.indexOf(e) : -1;
793
+ let n = Wt(o, Math.max(d, 0));
794
+ r.length === 1 && (n = n.filter((f) => f !== e));
769
795
  const s = n.find(
770
- (p) => p.textValue.toLowerCase().startsWith(r.toLowerCase())
796
+ (f) => f.textValue.toLowerCase().startsWith(r.toLowerCase())
771
797
  );
772
798
  return s !== e ? s : void 0;
773
799
  }
774
- function Ht(o, i) {
800
+ function Wt(o, i) {
775
801
  return o.map((e, c) => o[(i + c) % o.length]);
776
802
  }
777
- var ao = _e, uo = Oe, po = De, fo = Le, mo = ke, ho = Ve, vo = Fe, go = ze, So = je, wo = qe, Co = Xe;
803
+ var uo = _e, po = Oe, fo = De, mo = Le, ho = ke, vo = Ve, go = Fe, So = ze, wo = je, Co = qe, xo = Xe;
778
804
  export {
779
- ho as Content,
780
- fo as Icon,
781
- go as Item,
782
- So as ItemText,
783
- mo as Portal,
784
- ao as Root,
785
- Co as ScrollDownButton,
786
- wo as ScrollUpButton,
805
+ vo as Content,
806
+ mo as Icon,
807
+ So as Item,
808
+ wo as ItemText,
809
+ ho as Portal,
810
+ uo as Root,
811
+ xo as ScrollDownButton,
812
+ Co as ScrollUpButton,
787
813
  _e as Select,
788
- Bt as SelectArrow,
814
+ Ht as SelectArrow,
789
815
  Ve as SelectContent,
790
- Ot as SelectGroup,
816
+ At as SelectGroup,
791
817
  Le as SelectIcon,
792
818
  ze as SelectItem,
793
- Lt as SelectItemIndicator,
819
+ kt as SelectItemIndicator,
794
820
  je as SelectItemText,
795
- At as SelectLabel,
821
+ Dt as SelectLabel,
796
822
  ke as SelectPortal,
797
823
  Xe as SelectScrollDownButton,
798
824
  qe as SelectScrollUpButton,
799
- Vt as SelectSeparator,
825
+ Bt as SelectSeparator,
800
826
  Oe as SelectTrigger,
801
827
  De as SelectValue,
802
828
  Fe as SelectViewport,
803
- uo as Trigger,
804
- po as Value,
805
- vo as Viewport,
806
- io as createSelectScope
829
+ po as Trigger,
830
+ fo as Value,
831
+ go as Viewport,
832
+ ao as createSelectScope
807
833
  };