@expofp/floorplan 3.13.0 → 3.13.2

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 (171) hide show
  1. package/dist/browser/{Button-BhFl-di8.js → Button-C5DLguTW.js} +6 -6
  2. package/dist/browser/{CookieConsent-sa6NrKxH.js → CookieConsent-CPXxoJkz.js} +8 -8
  3. package/dist/browser/{Debug-C9cxUup2.js → Debug-bxMz-HDF.js} +8 -8
  4. package/dist/browser/{Demo-Ddm9RP_A.js → Demo-CGCZqU_8.js} +10 -10
  5. package/dist/browser/{Free-rUcFT9c4.js → Free-I-EGiu3o.js} +10 -10
  6. package/dist/browser/{Gallery-DiQ8516Y.js → Gallery-Bce2fubu.js} +31 -25
  7. package/dist/browser/{GpsLoader-Dg3oPXFb.js → GpsLoader-CnPH3rxE.js} +12 -12
  8. package/dist/browser/{KioskStore-DXzJYJDf.js → KioskStore-K0Ps7wq6.js} +4 -4
  9. package/dist/browser/{MaplibreAdapter-CyrBeOGN.js → MaplibreAdapter-DKa1N9-7.js} +85 -57
  10. package/dist/browser/{ModalContainer-De7wWR5x.js → ModalContainer-BxCJTxBS.js} +11 -11
  11. package/dist/browser/{PermissionNotice-CZ2zOZpC.js → PermissionNotice-BS53dDaS.js} +7 -7
  12. package/dist/browser/{SetKioskMode-CADu-Nec.js → SetKioskMode-P2g_TnCr.js} +10 -10
  13. package/dist/browser/{ShowKiosk-DCb39wY6.js → ShowKiosk-Bz-7t-PL.js} +12 -12
  14. package/dist/browser/{TouchHand-BfZmlSSQ.js → TouchHand-Dm3c6gpk.js} +5 -5
  15. package/dist/browser/{ViewerMenuPanel-MrTdl0Lk.js → ViewerMenuPanel-COyljU8V.js} +10 -10
  16. package/dist/browser/{add-debug-secret-listener-BbMMQOGn.js → add-debug-secret-listener-DQjjtobD.js} +1 -1
  17. package/dist/browser/{reset-all-settings-CSD5_eeL.js → adopt-global-settings-DIJsf94E.js} +12 -17
  18. package/dist/browser/{boolean-editor-CklOhr36.js → boolean-editor-D4Y66mgk.js} +46 -46
  19. package/dist/browser/{bootIntercom-CGiDjnZs.js → bootIntercom-DUPbX22l.js} +3 -3
  20. package/dist/browser/{booth-by-xy-ByPe7dOB.js → booth-by-xy-DKyMJwg9.js} +13 -13
  21. package/dist/browser/bundle.json +67 -70
  22. package/dist/browser/{classnames-Dg3Epqr5.js → classnames-CTiheKEO.js} +2 -2
  23. package/dist/browser/{client-BtIR_QJ0.js → client-B0g0Q0fu.js} +9 -9
  24. package/dist/browser/{components-Ba7imFfV.js → components-DUbHmBQ6.js} +60 -53
  25. package/dist/browser/{debug-overlay-Mgkh8CCK.js → debug-overlay-CKXL3Z9z.js} +470 -464
  26. package/dist/browser/{debug-ui-DLG8EKHO.js → debug-ui-D2GPuJSX.js} +7 -7
  27. package/dist/browser/{dist-B2eHvCOU.js → dist-BFVoy_zB.js} +7 -7
  28. package/dist/browser/{dist-ByAJEdRV.js → dist-CFY_dc-C.js} +5 -5
  29. package/dist/browser/{dist-Dd2UZ1cI.js → dist-CZH-D_bo.js} +66 -67
  30. package/dist/browser/{efp-debug-init-BCsVUzwy.js → efp-debug-init-pd2smy4A.js} +4 -4
  31. package/dist/browser/{enum-editor-DGQxevil.js → enum-editor-a07SOXXi.js} +5 -5
  32. package/dist/browser/{es5-cfKynydw.js → es5-jDwWZhmf.js} +2 -2
  33. package/dist/browser/{event-not-found-BJLLcNqO.js → event-not-found-CPqO_ew-.js} +1 -1
  34. package/dist/browser/{exports-BQHYfgvY.js → exports-8JcxTO7_.js} +567 -566
  35. package/dist/browser/{favicon-C56bzaeG.js → favicon-BhTDecsz.js} +1 -1
  36. package/dist/browser/{fetch-retry.umd-DYC2sEmH.js → fetch-retry.umd-BuEcG130.js} +2 -2
  37. package/dist/browser/{flex-8VuyKxuf.js → flex-FVc6l8VM.js} +17 -17
  38. package/dist/browser/{floorplan.loader-B9Jv3g5N.js → floorplan.loader-DM3BoMUa.js} +1372 -1298
  39. package/dist/browser/{floorplan.ready-Cnxr8xZd.js → floorplan.ready-DQAk0-bE.js} +294 -294
  40. package/dist/browser/{fuse-DgPaqPDU.js → fuse-hiNWVTid.js} +2 -2
  41. package/dist/browser/{i18n-DL3k5TYE.js → i18n-DmUQ2csh.js} +2399 -2412
  42. package/dist/browser/index.js +36 -36
  43. package/dist/browser/{index.module-DvMglRjg.js → index.module-Ce5K5GHH.js} +6 -6
  44. package/dist/browser/{integrateKiosk-DqfQtnQ5.js → integrateKiosk-DLY98yHT.js} +4 -4
  45. package/dist/browser/{is-webview-CYXkFxGI.js → is-webview-DYW7jMPo.js} +1 -1
  46. package/dist/browser/{jsx-runtime-Ddgd7eiz.js → jsx-runtime-Cn7VZCRr.js} +4 -4
  47. package/dist/browser/{lib-Ba7o5H8-.js → lib-DKxIjoGs.js} +155 -112
  48. package/dist/browser/{loadImage-sIGoQ_pR.js → loadImage-CFRF6nKm.js} +5 -5
  49. package/dist/browser/{logDeviceInfo-DlAlNCzD.js → logDeviceInfo-B2xD643p.js} +9 -9
  50. package/dist/browser/{main-BUG7EnSp.js → main-BE7HSdfx.js} +1 -1
  51. package/dist/browser/{mobx-CjGP1jW0.js → mobx-Dss6V0uv.js} +5 -5
  52. package/dist/browser/{optional-boolean-editor-Duqb7gc6.js → optional-boolean-editor-BDWvD6R3.js} +4 -4
  53. package/dist/browser/{optional-enum-editor-DsJC_Z9B.js → optional-enum-editor-DzJSD274.js} +5 -5
  54. package/dist/browser/{optional-string-editor-CDPA6AbE.js → optional-string-editor-DvQrsAvN.js} +5 -5
  55. package/dist/browser/{particles.min-Cw7MNnR7.js → particles.min-0GINFlmD.js} +2 -2
  56. package/dist/browser/{react-jeXnPF9E.js → react-CQIXbbli.js} +5 -5
  57. package/dist/browser/{react-dom-Du74Uwxl.js → react-dom-DB3HP1L3.js} +6 -6
  58. package/dist/browser/{rolldown-runtime-DE59zyqc.js → rolldown-runtime-CBbNE2KV.js} +1 -1
  59. package/dist/browser/select-DkvD6Ont.js +1367 -0
  60. package/dist/browser/{settings-CETkuvKR.js → settings-3RnELfMa.js} +3 -3
  61. package/dist/browser/{settings-item-BCaZImcD.js → settings-item-wgFS4pwq.js} +16 -16
  62. package/dist/browser/{store-Sol8yqmO.js → store-Bh1UUDBZ.js} +3955 -3943
  63. package/dist/browser/{string-editor-DkEYMW6l.js → string-editor-DIG3V4Iv.js} +5 -5
  64. package/dist/browser/{text-field-CPJjFaAn.js → text-field-Ce1nLpTL.js} +25 -25
  65. package/dist/browser/{theme-CN0bL8JF.js → theme-DE94e68B.js} +949 -946
  66. package/dist/browser/{ui-CLJ3PDlT.js → ui-DKrc1LYz.js} +11 -11
  67. package/dist/browser/{useRenderTarget-BbbTquxP.js → useRenderTarget-DwEjrRiD.js} +5 -5
  68. package/dist/esm/components/AutocompleteContainer.d.ts +1 -1
  69. package/dist/esm/components/Bookmarks.d.ts +1 -1
  70. package/dist/esm/components/Bookmarks.js +1 -1
  71. package/dist/esm/components/Booth/Booth.js +1 -1
  72. package/dist/esm/components/Category.d.ts +1 -1
  73. package/dist/esm/components/Debug.d.ts +1 -1
  74. package/dist/esm/components/Debug.js +1 -1
  75. package/dist/esm/components/ErrorBoundary.d.ts +1 -1
  76. package/dist/esm/components/ErrorBoundary.js +1 -1
  77. package/dist/esm/components/Event.js +1 -1
  78. package/dist/esm/components/Exhibitor.d.ts +1 -1
  79. package/dist/esm/components/Exhibitor.js +1 -1
  80. package/dist/esm/components/Filter.d.ts +1 -1
  81. package/dist/esm/components/Filter.js +1 -1
  82. package/dist/esm/components/Gallery/GalleryBadges/GalleryBadges.js +1 -1
  83. package/dist/esm/components/Gallery/GalleryPreLoader.js +1 -1
  84. package/dist/esm/components/Kiosk/KioskStore.js +1 -1
  85. package/dist/esm/components/Kiosk/SetKiosk/SetKioskComponent.js +1 -1
  86. package/dist/esm/components/Map/Map.js +1 -1
  87. package/dist/esm/components/Map/drawing/config/BoothDrawerBase.js +1 -1
  88. package/dist/esm/components/Map/drawing/config/BoothShape.js +1 -1
  89. package/dist/esm/components/Map/drawing/config/TextFitter.js +1 -1
  90. package/dist/esm/components/Map/drawing/config/config-booth-bg.js +1 -1
  91. package/dist/esm/components/Map/drawing/config/config-booth-bookmark.js +1 -1
  92. package/dist/esm/components/Map/drawing/config/config-booth-border.js +1 -1
  93. package/dist/esm/components/Map/drawing/config/config-booth-labels-special.js +2 -2
  94. package/dist/esm/components/Map/drawing/config/config-booth-labels.js +1 -1
  95. package/dist/esm/components/Map/traffic/UpdateQueue.js +1 -1
  96. package/dist/esm/components/Map/traffic/useBuildRoute.js +1 -1
  97. package/dist/esm/components/Menu.d.ts +1 -1
  98. package/dist/esm/components/Menu.js +1 -1
  99. package/dist/esm/components/ModalContainer.d.ts +4 -4
  100. package/dist/esm/components/RebookingNotesContainer.d.ts +1 -1
  101. package/dist/esm/components/RebookingRadioGroupContainer.d.ts +1 -1
  102. package/dist/esm/components/RoutePlanner/RoutePlannerStopItem.js +1 -1
  103. package/dist/esm/components/Schedule.js +1 -1
  104. package/dist/esm/components/Search.d.ts +1 -1
  105. package/dist/esm/components/Search.js +1 -1
  106. package/dist/esm/components/Toast/ToastContainer.d.ts +1 -1
  107. package/dist/esm/components/TourPoints.d.ts +1 -1
  108. package/dist/esm/components/Tours.js +1 -1
  109. package/dist/esm/components/Visited.d.ts +1 -1
  110. package/dist/esm/components/WayfindingTemplate.js +1 -1
  111. package/dist/esm/components/Ws.d.ts +1 -1
  112. package/dist/esm/floorplan.loader.js +1 -1
  113. package/dist/esm/floorplan.ready.js +1 -1
  114. package/dist/esm/renderer/HandlerRegistry.js +1 -1
  115. package/dist/esm/renderer/RendererService.js +1 -1
  116. package/dist/esm/services/URLFilterManager.js +1 -1
  117. package/dist/esm/store/BaseFilterStore.js +1 -1
  118. package/dist/esm/store/BookmarksStore.js +2 -2
  119. package/dist/esm/store/BoothStore.js +1 -1
  120. package/dist/esm/store/CategoryFilterStore.js +1 -1
  121. package/dist/esm/store/CategoryStore.d.ts +1 -1
  122. package/dist/esm/store/CategoryStore.js +1 -1
  123. package/dist/esm/store/EventStore.d.ts +2 -2
  124. package/dist/esm/store/EventStore.js +1 -1
  125. package/dist/esm/store/ExhibitorStore.d.ts +1 -1
  126. package/dist/esm/store/ExhibitorStore.js +1 -1
  127. package/dist/esm/store/FuzzySearchEngineStore.js +1 -1
  128. package/dist/esm/store/HeatmapStore.d.ts +1 -1
  129. package/dist/esm/store/HeatmapStore.js +1 -1
  130. package/dist/esm/store/IntercomStore.js +1 -1
  131. package/dist/esm/store/LayerStore.js +1 -1
  132. package/dist/esm/store/MaplibreStore.js +1 -1
  133. package/dist/esm/store/PoiTypeStore.js +1 -1
  134. package/dist/esm/store/RootStore.js +1 -1
  135. package/dist/esm/store/RoutePlannerStore.js +1 -1
  136. package/dist/esm/store/RouteStore.js +1 -1
  137. package/dist/esm/store/SearchStore.d.ts +1 -1
  138. package/dist/esm/store/SearchStore.js +1 -1
  139. package/dist/esm/store/SessionsFilterStore.js +1 -1
  140. package/dist/esm/store/ShortcutRegistry.js +1 -1
  141. package/dist/esm/store/SpeakerFilterStore.js +1 -1
  142. package/dist/esm/store/SpeakerStore.d.ts +2 -2
  143. package/dist/esm/store/SpeakerStore.js +1 -1
  144. package/dist/esm/store/SubButtonRegistry.js +1 -1
  145. package/dist/esm/store/ToursStore.js +1 -1
  146. package/dist/esm/store/UIState.d.ts +2 -2
  147. package/dist/esm/store/UIState.js +1 -1
  148. package/dist/esm/store/providers/SearchShortcutProvider.js +1 -1
  149. package/dist/esm/store/providers/SessionsShortcutProvider.js +1 -1
  150. package/dist/esm/store/providers/SessionsSubButtonProvider.js +1 -1
  151. package/dist/esm/store/providers/SpeakerShortcutProvider.js +1 -1
  152. package/dist/esm/store/search-buttons/SearchButtonsActions.js +1 -1
  153. package/dist/esm/store/search-buttons/SearchButtonsFactory.js +1 -1
  154. package/dist/esm/store/search-buttons/SearchButtonsFilters.js +1 -1
  155. package/dist/esm/store/search-buttons/SearchButtonsState.js +1 -1
  156. package/dist/esm/store/search-buttons/SearchButtonsStore.js +1 -1
  157. package/dist/esm/store/search-buttons/constants.d.ts +8 -8
  158. package/dist/esm/tools/expofpUrl.d.ts +2 -2
  159. package/dist/esm/tools/logger.js +1 -1
  160. package/dist/esm/tools/settings.js +1 -1
  161. package/dist/esm/ui/Autocomplete/Autocomplete.js +1 -1
  162. package/dist/esm/ui/EntityItem/EntityItem.js +1 -1
  163. package/dist/esm/ui/EventBadge/EventBadge.js +1 -1
  164. package/dist/esm/ui/Share/Share.js +1 -1
  165. package/dist/esm/utils/dimming.d.ts +1 -1
  166. package/dist/esm/utils/is-from-designer.d.ts +1 -1
  167. package/dist/esm/utils/silence-mobx-react-lite-warning.d.ts +1 -0
  168. package/dist/esm/utils/silence-mobx-react-lite-warning.js +1 -1
  169. package/package.json +17 -17
  170. package/dist/browser/prop-types-BYN2smyR.js +0 -57
  171. package/dist/browser/select-jZKJ9MVb.js +0 -1360
@@ -0,0 +1,1367 @@
1
+ (function() {
2
+ try {
3
+ var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
4
+ e.SENTRY_RELEASE = { id: "3.13.2" };
5
+ var t = new e.Error().stack;
6
+ t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "dd596517-c899-4440-bc1a-dac5091635be", e._sentryDebugIdIdentifier = "sentry-dbid-dd596517-c899-4440-bc1a-dac5091635be");
7
+ } catch {}
8
+ })();
9
+ import { r as e } from "./rolldown-runtime-CBbNE2KV.js";
10
+ import { t } from "./react-CQIXbbli.js";
11
+ import { t as n } from "./jsx-runtime-Cn7VZCRr.js";
12
+ import { t as r } from "./react-dom-DB3HP1L3.js";
13
+ import { O as i, T as a, g as o, l as s, s as c, u as l, y as u } from "./flex-FVc6l8VM.js";
14
+ import { i as d, n as f, o as p, r as m, s as h } from "./dist-CZH-D_bo.js";
15
+ import { _ as g, a as _, b as v, c as y, d as b, f as x, g as S, h as C, i as w, l as T, m as E, n as D, o as O, p as k, r as A, s as j, t as ee, u as te, v as ne } from "./theme-DE94e68B.js";
16
+ import { t as M } from "./dist-CFY_dc-C.js";
17
+ import { t as N } from "./classnames-CTiheKEO.js";
18
+ //#region ../../node_modules/.pnpm/@radix-ui+number@1.1.1/node_modules/@radix-ui/number/dist/index.mjs
19
+ var P = /* @__PURE__ */ e(t(), 1);
20
+ function re(e, [t, n]) {
21
+ return Math.min(n, Math.max(t, e));
22
+ }
23
+ //#endregion
24
+ //#region ../../node_modules/.pnpm/@radix-ui+react-scroll-area@1.2.10_@types+react-dom@19.2.3_@types+react@19.2.17__@types_ccf3bf291c3d61fabfd75191215dd41a/node_modules/@radix-ui/react-scroll-area/dist/index.mjs
25
+ var F = n();
26
+ function ie(e, t) {
27
+ return P.useReducer((e, n) => {
28
+ let r = t[e][n];
29
+ return r == null ? e : r;
30
+ }, e);
31
+ }
32
+ var I = "ScrollArea", [L, R] = p(I), [z, B] = L(I), ae = P.forwardRef((e, t) => {
33
+ let { __scopeScrollArea: n, type: r = "hover", dir: a, scrollHideDelay: o = 600, ...s } = e, [c, l] = P.useState(null), [u, d] = P.useState(null), [f, p] = P.useState(null), [m, g] = P.useState(null), [_, v] = P.useState(null), [y, b] = P.useState(0), [x, S] = P.useState(0), [w, T] = P.useState(!1), [E, D] = P.useState(!1), O = i(t, (e) => l(e)), k = C(a);
34
+ return /* @__PURE__ */ (0, F.jsx)(z, {
35
+ scope: n,
36
+ type: r,
37
+ dir: k,
38
+ scrollHideDelay: o,
39
+ scrollArea: c,
40
+ viewport: u,
41
+ onViewportChange: d,
42
+ content: f,
43
+ onContentChange: p,
44
+ scrollbarX: m,
45
+ onScrollbarXChange: g,
46
+ scrollbarXEnabled: w,
47
+ onScrollbarXEnabledChange: T,
48
+ scrollbarY: _,
49
+ onScrollbarYChange: v,
50
+ scrollbarYEnabled: E,
51
+ onScrollbarYEnabledChange: D,
52
+ onCornerWidthChange: b,
53
+ onCornerHeightChange: S,
54
+ children: /* @__PURE__ */ (0, F.jsx)(h.div, {
55
+ dir: k,
56
+ ...s,
57
+ ref: O,
58
+ style: {
59
+ position: "relative",
60
+ "--radix-scroll-area-corner-width": y + "px",
61
+ "--radix-scroll-area-corner-height": x + "px",
62
+ ...e.style
63
+ }
64
+ })
65
+ });
66
+ });
67
+ ae.displayName = I;
68
+ var oe = "ScrollAreaViewport", se = P.forwardRef((e, t) => {
69
+ let { __scopeScrollArea: n, children: r, nonce: a, ...o } = e, s = B(oe, n), c = i(t, P.useRef(null), s.onViewportChange);
70
+ return /* @__PURE__ */ (0, F.jsxs)(F.Fragment, { children: [/* @__PURE__ */ (0, F.jsx)("style", {
71
+ dangerouslySetInnerHTML: { __html: "[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}" },
72
+ nonce: a
73
+ }), /* @__PURE__ */ (0, F.jsx)(h.div, {
74
+ "data-radix-scroll-area-viewport": "",
75
+ ...o,
76
+ ref: c,
77
+ style: {
78
+ overflowX: s.scrollbarXEnabled ? "scroll" : "hidden",
79
+ overflowY: s.scrollbarYEnabled ? "scroll" : "hidden",
80
+ ...e.style
81
+ },
82
+ children: /* @__PURE__ */ (0, F.jsx)("div", {
83
+ ref: s.onContentChange,
84
+ style: {
85
+ minWidth: "100%",
86
+ display: "table"
87
+ },
88
+ children: r
89
+ })
90
+ })] });
91
+ });
92
+ se.displayName = oe;
93
+ var V = "ScrollAreaScrollbar", ce = P.forwardRef((e, t) => {
94
+ let { forceMount: n, ...r } = e, i = B(V, e.__scopeScrollArea), { onScrollbarXEnabledChange: a, onScrollbarYEnabledChange: o } = i, s = e.orientation === "horizontal";
95
+ return P.useEffect(() => (s ? a(!0) : o(!0), () => {
96
+ s ? a(!1) : o(!1);
97
+ }), [
98
+ s,
99
+ a,
100
+ o
101
+ ]), i.type === "hover" ? /* @__PURE__ */ (0, F.jsx)(le, {
102
+ ...r,
103
+ ref: t,
104
+ forceMount: n
105
+ }) : i.type === "scroll" ? /* @__PURE__ */ (0, F.jsx)(ue, {
106
+ ...r,
107
+ ref: t,
108
+ forceMount: n
109
+ }) : i.type === "auto" ? /* @__PURE__ */ (0, F.jsx)(de, {
110
+ ...r,
111
+ ref: t,
112
+ forceMount: n
113
+ }) : i.type === "always" ? /* @__PURE__ */ (0, F.jsx)(fe, {
114
+ ...r,
115
+ ref: t
116
+ }) : null;
117
+ });
118
+ ce.displayName = V;
119
+ var le = P.forwardRef((e, t) => {
120
+ let { forceMount: n, ...r } = e, i = B(V, e.__scopeScrollArea), [a, o] = P.useState(!1);
121
+ return P.useEffect(() => {
122
+ let e = i.scrollArea, t = 0;
123
+ if (e) {
124
+ let n = () => {
125
+ window.clearTimeout(t), o(!0);
126
+ }, r = () => {
127
+ t = window.setTimeout(() => o(!1), i.scrollHideDelay);
128
+ };
129
+ return e.addEventListener("pointerenter", n), e.addEventListener("pointerleave", r), () => {
130
+ window.clearTimeout(t), e.removeEventListener("pointerenter", n), e.removeEventListener("pointerleave", r);
131
+ };
132
+ }
133
+ }, [i.scrollArea, i.scrollHideDelay]), /* @__PURE__ */ (0, F.jsx)(g, {
134
+ present: n || a,
135
+ children: /* @__PURE__ */ (0, F.jsx)(de, {
136
+ "data-state": a ? "visible" : "hidden",
137
+ ...r,
138
+ ref: t
139
+ })
140
+ });
141
+ }), ue = P.forwardRef((e, t) => {
142
+ let { forceMount: n, ...r } = e, i = B(V, e.__scopeScrollArea), a = e.orientation === "horizontal", o = ke(() => c("SCROLL_END"), 100), [s, c] = ie("hidden", {
143
+ hidden: { SCROLL: "scrolling" },
144
+ scrolling: {
145
+ SCROLL_END: "idle",
146
+ POINTER_ENTER: "interacting"
147
+ },
148
+ interacting: {
149
+ SCROLL: "interacting",
150
+ POINTER_LEAVE: "idle"
151
+ },
152
+ idle: {
153
+ HIDE: "hidden",
154
+ SCROLL: "scrolling",
155
+ POINTER_ENTER: "interacting"
156
+ }
157
+ });
158
+ return P.useEffect(() => {
159
+ if (s === "idle") {
160
+ let e = window.setTimeout(() => c("HIDE"), i.scrollHideDelay);
161
+ return () => window.clearTimeout(e);
162
+ }
163
+ }, [
164
+ s,
165
+ i.scrollHideDelay,
166
+ c
167
+ ]), P.useEffect(() => {
168
+ let e = i.viewport, t = a ? "scrollLeft" : "scrollTop";
169
+ if (e) {
170
+ let n = e[t], r = () => {
171
+ let r = e[t];
172
+ n !== r && (c("SCROLL"), o()), n = r;
173
+ };
174
+ return e.addEventListener("scroll", r), () => e.removeEventListener("scroll", r);
175
+ }
176
+ }, [
177
+ i.viewport,
178
+ a,
179
+ c,
180
+ o
181
+ ]), /* @__PURE__ */ (0, F.jsx)(g, {
182
+ present: n || s !== "hidden",
183
+ children: /* @__PURE__ */ (0, F.jsx)(fe, {
184
+ "data-state": s === "hidden" ? "hidden" : "visible",
185
+ ...r,
186
+ ref: t,
187
+ onPointerEnter: d(e.onPointerEnter, () => c("POINTER_ENTER")),
188
+ onPointerLeave: d(e.onPointerLeave, () => c("POINTER_LEAVE"))
189
+ })
190
+ });
191
+ }), de = P.forwardRef((e, t) => {
192
+ let n = B(V, e.__scopeScrollArea), { forceMount: r, ...i } = e, [a, o] = P.useState(!1), s = e.orientation === "horizontal", c = ke(() => {
193
+ if (n.viewport) {
194
+ let e = n.viewport.offsetWidth < n.viewport.scrollWidth, t = n.viewport.offsetHeight < n.viewport.scrollHeight;
195
+ o(s ? e : t);
196
+ }
197
+ }, 10);
198
+ return G(n.viewport, c), G(n.content, c), /* @__PURE__ */ (0, F.jsx)(g, {
199
+ present: r || a,
200
+ children: /* @__PURE__ */ (0, F.jsx)(fe, {
201
+ "data-state": a ? "visible" : "hidden",
202
+ ...i,
203
+ ref: t
204
+ })
205
+ });
206
+ }), fe = P.forwardRef((e, t) => {
207
+ let { orientation: n = "vertical", ...r } = e, i = B(V, e.__scopeScrollArea), a = P.useRef(null), o = P.useRef(0), [s, c] = P.useState({
208
+ content: 0,
209
+ viewport: 0,
210
+ scrollbar: {
211
+ size: 0,
212
+ paddingStart: 0,
213
+ paddingEnd: 0
214
+ }
215
+ }), l = Ce(s.viewport, s.content), u = {
216
+ ...r,
217
+ sizes: s,
218
+ onSizesChange: c,
219
+ hasThumb: l > 0 && l < 1,
220
+ onThumbChange: (e) => a.current = e,
221
+ onThumbPointerUp: () => o.current = 0,
222
+ onThumbPointerDown: (e) => o.current = e
223
+ };
224
+ function d(e, t) {
225
+ return we(e, o.current, s, t);
226
+ }
227
+ return n === "horizontal" ? /* @__PURE__ */ (0, F.jsx)(pe, {
228
+ ...u,
229
+ ref: t,
230
+ onThumbPositionChange: () => {
231
+ if (i.viewport && a.current) {
232
+ let e = i.viewport.scrollLeft, t = Te(e, s, i.dir);
233
+ a.current.style.transform = `translate3d(${t}px, 0, 0)`;
234
+ }
235
+ },
236
+ onWheelScroll: (e) => {
237
+ i.viewport && (i.viewport.scrollLeft = e);
238
+ },
239
+ onDragScroll: (e) => {
240
+ i.viewport && (i.viewport.scrollLeft = d(e, i.dir));
241
+ }
242
+ }) : n === "vertical" ? /* @__PURE__ */ (0, F.jsx)(me, {
243
+ ...u,
244
+ ref: t,
245
+ onThumbPositionChange: () => {
246
+ if (i.viewport && a.current) {
247
+ let e = i.viewport.scrollTop, t = Te(e, s);
248
+ a.current.style.transform = `translate3d(0, ${t}px, 0)`;
249
+ }
250
+ },
251
+ onWheelScroll: (e) => {
252
+ i.viewport && (i.viewport.scrollTop = e);
253
+ },
254
+ onDragScroll: (e) => {
255
+ i.viewport && (i.viewport.scrollTop = d(e));
256
+ }
257
+ }) : null;
258
+ }), pe = P.forwardRef((e, t) => {
259
+ let { sizes: n, onSizesChange: r, ...a } = e, o = B(V, e.__scopeScrollArea), [s, c] = P.useState(), l = P.useRef(null), u = i(t, l, o.onScrollbarXChange);
260
+ return P.useEffect(() => {
261
+ l.current && c(getComputedStyle(l.current));
262
+ }, [l]), /* @__PURE__ */ (0, F.jsx)(_e, {
263
+ "data-orientation": "horizontal",
264
+ ...a,
265
+ ref: u,
266
+ sizes: n,
267
+ style: {
268
+ bottom: 0,
269
+ left: o.dir === "rtl" ? "var(--radix-scroll-area-corner-width)" : 0,
270
+ right: o.dir === "ltr" ? "var(--radix-scroll-area-corner-width)" : 0,
271
+ "--radix-scroll-area-thumb-width": W(n) + "px",
272
+ ...e.style
273
+ },
274
+ onThumbPointerDown: (t) => e.onThumbPointerDown(t.x),
275
+ onDragScroll: (t) => e.onDragScroll(t.x),
276
+ onWheelScroll: (t, n) => {
277
+ if (o.viewport) {
278
+ let r = o.viewport.scrollLeft + t.deltaX;
279
+ e.onWheelScroll(r), De(r, n) && t.preventDefault();
280
+ }
281
+ },
282
+ onResize: () => {
283
+ l.current && o.viewport && s && r({
284
+ content: o.viewport.scrollWidth,
285
+ viewport: o.viewport.offsetWidth,
286
+ scrollbar: {
287
+ size: l.current.clientWidth,
288
+ paddingStart: U(s.paddingLeft),
289
+ paddingEnd: U(s.paddingRight)
290
+ }
291
+ });
292
+ }
293
+ });
294
+ }), me = P.forwardRef((e, t) => {
295
+ let { sizes: n, onSizesChange: r, ...a } = e, o = B(V, e.__scopeScrollArea), [s, c] = P.useState(), l = P.useRef(null), u = i(t, l, o.onScrollbarYChange);
296
+ return P.useEffect(() => {
297
+ l.current && c(getComputedStyle(l.current));
298
+ }, [l]), /* @__PURE__ */ (0, F.jsx)(_e, {
299
+ "data-orientation": "vertical",
300
+ ...a,
301
+ ref: u,
302
+ sizes: n,
303
+ style: {
304
+ top: 0,
305
+ right: o.dir === "ltr" ? 0 : void 0,
306
+ left: o.dir === "rtl" ? 0 : void 0,
307
+ bottom: "var(--radix-scroll-area-corner-height)",
308
+ "--radix-scroll-area-thumb-height": W(n) + "px",
309
+ ...e.style
310
+ },
311
+ onThumbPointerDown: (t) => e.onThumbPointerDown(t.y),
312
+ onDragScroll: (t) => e.onDragScroll(t.y),
313
+ onWheelScroll: (t, n) => {
314
+ if (o.viewport) {
315
+ let r = o.viewport.scrollTop + t.deltaY;
316
+ e.onWheelScroll(r), De(r, n) && t.preventDefault();
317
+ }
318
+ },
319
+ onResize: () => {
320
+ l.current && o.viewport && s && r({
321
+ content: o.viewport.scrollHeight,
322
+ viewport: o.viewport.offsetHeight,
323
+ scrollbar: {
324
+ size: l.current.clientHeight,
325
+ paddingStart: U(s.paddingTop),
326
+ paddingEnd: U(s.paddingBottom)
327
+ }
328
+ });
329
+ }
330
+ });
331
+ }), [he, ge] = L(V), _e = P.forwardRef((e, t) => {
332
+ let { __scopeScrollArea: n, sizes: r, hasThumb: a, onThumbChange: o, onThumbPointerUp: s, onThumbPointerDown: c, onThumbPositionChange: l, onDragScroll: u, onWheelScroll: f, onResize: p, ...m } = e, g = B(V, n), [_, v] = P.useState(null), y = i(t, (e) => v(e)), b = P.useRef(null), x = P.useRef(""), S = g.viewport, C = r.content - r.viewport, w = E(f), T = E(l), D = ke(p, 10);
333
+ function O(e) {
334
+ if (b.current) {
335
+ let t = e.clientX - b.current.left, n = e.clientY - b.current.top;
336
+ u({
337
+ x: t,
338
+ y: n
339
+ });
340
+ }
341
+ }
342
+ return P.useEffect(() => {
343
+ let e = (e) => {
344
+ let t = e.target;
345
+ _ != null && _.contains(t) && w(e, C);
346
+ };
347
+ return document.addEventListener("wheel", e, { passive: !1 }), () => document.removeEventListener("wheel", e, { passive: !1 });
348
+ }, [
349
+ S,
350
+ _,
351
+ C,
352
+ w
353
+ ]), P.useEffect(T, [r, T]), G(_, D), G(g.content, D), /* @__PURE__ */ (0, F.jsx)(he, {
354
+ scope: n,
355
+ scrollbar: _,
356
+ hasThumb: a,
357
+ onThumbChange: E(o),
358
+ onThumbPointerUp: E(s),
359
+ onThumbPositionChange: T,
360
+ onThumbPointerDown: E(c),
361
+ children: /* @__PURE__ */ (0, F.jsx)(h.div, {
362
+ ...m,
363
+ ref: y,
364
+ style: {
365
+ position: "absolute",
366
+ ...m.style
367
+ },
368
+ onPointerDown: d(e.onPointerDown, (e) => {
369
+ e.button === 0 && (e.target.setPointerCapture(e.pointerId), b.current = _.getBoundingClientRect(), x.current = document.body.style.webkitUserSelect, document.body.style.webkitUserSelect = "none", g.viewport && (g.viewport.style.scrollBehavior = "auto"), O(e));
370
+ }),
371
+ onPointerMove: d(e.onPointerMove, O),
372
+ onPointerUp: d(e.onPointerUp, (e) => {
373
+ let t = e.target;
374
+ t.hasPointerCapture(e.pointerId) && t.releasePointerCapture(e.pointerId), document.body.style.webkitUserSelect = x.current, g.viewport && (g.viewport.style.scrollBehavior = ""), b.current = null;
375
+ })
376
+ })
377
+ });
378
+ }), H = "ScrollAreaThumb", ve = P.forwardRef((e, t) => {
379
+ let { forceMount: n, ...r } = e, i = ge(H, e.__scopeScrollArea);
380
+ return /* @__PURE__ */ (0, F.jsx)(g, {
381
+ present: n || i.hasThumb,
382
+ children: /* @__PURE__ */ (0, F.jsx)(ye, {
383
+ ref: t,
384
+ ...r
385
+ })
386
+ });
387
+ }), ye = P.forwardRef((e, t) => {
388
+ let { __scopeScrollArea: n, style: r, ...a } = e, o = B(H, n), s = ge(H, n), { onThumbPositionChange: c } = s, l = i(t, (e) => s.onThumbChange(e)), u = P.useRef(void 0), f = ke(() => {
389
+ u.current && (u.current(), u.current = void 0);
390
+ }, 100);
391
+ return P.useEffect(() => {
392
+ let e = o.viewport;
393
+ if (e) {
394
+ let t = () => {
395
+ if (f(), !u.current) {
396
+ let t = Oe(e, c);
397
+ u.current = t, c();
398
+ }
399
+ };
400
+ return c(), e.addEventListener("scroll", t), () => e.removeEventListener("scroll", t);
401
+ }
402
+ }, [
403
+ o.viewport,
404
+ f,
405
+ c
406
+ ]), /* @__PURE__ */ (0, F.jsx)(h.div, {
407
+ "data-state": s.hasThumb ? "visible" : "hidden",
408
+ ...a,
409
+ ref: l,
410
+ style: {
411
+ width: "var(--radix-scroll-area-thumb-width)",
412
+ height: "var(--radix-scroll-area-thumb-height)",
413
+ ...r
414
+ },
415
+ onPointerDownCapture: d(e.onPointerDownCapture, (e) => {
416
+ let t = e.target.getBoundingClientRect(), n = e.clientX - t.left, r = e.clientY - t.top;
417
+ s.onThumbPointerDown({
418
+ x: n,
419
+ y: r
420
+ });
421
+ }),
422
+ onPointerUp: d(e.onPointerUp, s.onThumbPointerUp)
423
+ });
424
+ });
425
+ ve.displayName = H;
426
+ var be = "ScrollAreaCorner", xe = P.forwardRef((e, t) => {
427
+ let n = B(be, e.__scopeScrollArea), r = !!(n.scrollbarX && n.scrollbarY);
428
+ return n.type !== "scroll" && r ? /* @__PURE__ */ (0, F.jsx)(Se, {
429
+ ...e,
430
+ ref: t
431
+ }) : null;
432
+ });
433
+ xe.displayName = be;
434
+ var Se = P.forwardRef((e, t) => {
435
+ let { __scopeScrollArea: n, ...r } = e, i = B(be, n), [a, o] = P.useState(0), [s, c] = P.useState(0), l = !!(a && s);
436
+ return G(i.scrollbarX, () => {
437
+ var e;
438
+ let t = ((e = i.scrollbarX) == null ? void 0 : e.offsetHeight) || 0;
439
+ i.onCornerHeightChange(t), c(t);
440
+ }), G(i.scrollbarY, () => {
441
+ var e;
442
+ let t = ((e = i.scrollbarY) == null ? void 0 : e.offsetWidth) || 0;
443
+ i.onCornerWidthChange(t), o(t);
444
+ }), l ? /* @__PURE__ */ (0, F.jsx)(h.div, {
445
+ ...r,
446
+ ref: t,
447
+ style: {
448
+ width: a,
449
+ height: s,
450
+ position: "absolute",
451
+ right: i.dir === "ltr" ? 0 : void 0,
452
+ left: i.dir === "rtl" ? 0 : void 0,
453
+ bottom: 0,
454
+ ...e.style
455
+ }
456
+ }) : null;
457
+ });
458
+ function U(e) {
459
+ return e ? parseInt(e, 10) : 0;
460
+ }
461
+ function Ce(e, t) {
462
+ let n = e / t;
463
+ return isNaN(n) ? 0 : n;
464
+ }
465
+ function W(e) {
466
+ let t = Ce(e.viewport, e.content), n = e.scrollbar.paddingStart + e.scrollbar.paddingEnd, r = (e.scrollbar.size - n) * t;
467
+ return Math.max(r, 18);
468
+ }
469
+ function we(e, t, n, r = "ltr") {
470
+ let i = W(n), a = i / 2, o = t || a, s = i - o, c = n.scrollbar.paddingStart + o, l = n.scrollbar.size - n.scrollbar.paddingEnd - s, u = n.content - n.viewport, d = r === "ltr" ? [0, u] : [u * -1, 0];
471
+ return Ee([c, l], d)(e);
472
+ }
473
+ function Te(e, t, n = "ltr") {
474
+ let r = W(t), i = t.scrollbar.paddingStart + t.scrollbar.paddingEnd, a = t.scrollbar.size - i, o = t.content - t.viewport, s = a - r, c = re(e, n === "ltr" ? [0, o] : [o * -1, 0]);
475
+ return Ee([0, o], [0, s])(c);
476
+ }
477
+ function Ee(e, t) {
478
+ return (n) => {
479
+ if (e[0] === e[1] || t[0] === t[1]) return t[0];
480
+ let r = (t[1] - t[0]) / (e[1] - e[0]);
481
+ return t[0] + r * (n - e[0]);
482
+ };
483
+ }
484
+ function De(e, t) {
485
+ return e > 0 && e < t;
486
+ }
487
+ var Oe = (e, t = () => {}) => {
488
+ let n = {
489
+ left: e.scrollLeft,
490
+ top: e.scrollTop
491
+ }, r = 0;
492
+ return (function i() {
493
+ let a = {
494
+ left: e.scrollLeft,
495
+ top: e.scrollTop
496
+ }, o = n.left !== a.left, s = n.top !== a.top;
497
+ (o || s) && t(), n = a, r = window.requestAnimationFrame(i);
498
+ })(), () => window.cancelAnimationFrame(r);
499
+ };
500
+ function ke(e, t) {
501
+ let n = E(e), r = P.useRef(0);
502
+ return P.useEffect(() => () => window.clearTimeout(r.current), []), P.useCallback(() => {
503
+ window.clearTimeout(r.current), r.current = window.setTimeout(n, t);
504
+ }, [n, t]);
505
+ }
506
+ function G(e, t) {
507
+ let n = E(t);
508
+ m(() => {
509
+ let t = 0;
510
+ if (e) {
511
+ let r = new ResizeObserver(() => {
512
+ cancelAnimationFrame(t), t = window.requestAnimationFrame(n);
513
+ });
514
+ return r.observe(e), () => {
515
+ window.cancelAnimationFrame(t), r.unobserve(e);
516
+ };
517
+ }
518
+ }, [e, n]);
519
+ }
520
+ var Ae = ae, je = se, Me = ce, Ne = ve, Pe = /* @__PURE__ */ e(r(), 1), Fe = [
521
+ " ",
522
+ "Enter",
523
+ "ArrowUp",
524
+ "ArrowDown"
525
+ ], Ie = [" ", "Enter"], K = "Select", [Le, Re, ze] = ne(K), [q, Be] = p(K, [ze, j]), Ve = j(), [He, J] = q(K), [Ue, We] = q(K), Ge = (e) => {
526
+ let { __scopeSelect: t, children: n, open: r, defaultOpen: i, onOpenChange: a, value: o, defaultValue: s, onValueChange: c, dir: l, name: u, autoComplete: d, disabled: p, required: m, form: h } = e, g = Ve(t), [_, v] = P.useState(null), [y, b] = P.useState(null), [x, w] = P.useState(!1), T = C(l), [E, D] = f({
527
+ prop: r,
528
+ defaultProp: i != null && i,
529
+ onChange: a,
530
+ caller: K
531
+ }), [k, A] = f({
532
+ prop: o,
533
+ defaultProp: s,
534
+ onChange: c,
535
+ caller: K
536
+ }), j = P.useRef(null), ee = !_ || h || !!_.closest("form"), [te, ne] = P.useState(/* @__PURE__ */ new Set()), M = Array.from(te).map((e) => e.props.value).join(";");
537
+ return /* @__PURE__ */ (0, F.jsx)(O, {
538
+ ...g,
539
+ children: /* @__PURE__ */ (0, F.jsxs)(He, {
540
+ required: m,
541
+ scope: t,
542
+ trigger: _,
543
+ onTriggerChange: v,
544
+ valueNode: y,
545
+ onValueNodeChange: b,
546
+ valueNodeHasChildren: x,
547
+ onValueNodeHasChildrenChange: w,
548
+ contentId: S(),
549
+ value: k,
550
+ onValueChange: A,
551
+ open: E,
552
+ onOpenChange: D,
553
+ dir: T,
554
+ triggerPointerDownPosRef: j,
555
+ disabled: p,
556
+ children: [/* @__PURE__ */ (0, F.jsx)(Le.Provider, {
557
+ scope: t,
558
+ children: /* @__PURE__ */ (0, F.jsx)(Ue, {
559
+ scope: e.__scopeSelect,
560
+ onNativeOptionAdd: P.useCallback((e) => {
561
+ ne((t) => new Set(t).add(e));
562
+ }, []),
563
+ onNativeOptionRemove: P.useCallback((e) => {
564
+ ne((t) => {
565
+ let n = new Set(t);
566
+ return n.delete(e), n;
567
+ });
568
+ }, []),
569
+ children: n
570
+ })
571
+ }), ee ? /* @__PURE__ */ (0, F.jsxs)(It, {
572
+ "aria-hidden": !0,
573
+ required: m,
574
+ tabIndex: -1,
575
+ name: u,
576
+ autoComplete: d,
577
+ value: k,
578
+ onChange: (e) => A(e.target.value),
579
+ disabled: p,
580
+ form: h,
581
+ children: [k === void 0 ? /* @__PURE__ */ (0, F.jsx)("option", { value: "" }) : null, Array.from(te)]
582
+ }, M) : null]
583
+ })
584
+ });
585
+ };
586
+ Ge.displayName = K;
587
+ var Ke = "SelectTrigger", qe = P.forwardRef((e, t) => {
588
+ let { __scopeSelect: n, disabled: r = !1, ...a } = e, o = Ve(n), s = J(Ke, n), c = s.disabled || r, l = i(t, s.onTriggerChange), u = Re(n), f = P.useRef("touch"), [p, m, g] = Rt((e) => {
589
+ let t = u().filter((e) => !e.disabled), n = zt(t, e, t.find((e) => e.value === s.value));
590
+ n !== void 0 && s.onValueChange(n.value);
591
+ }), _ = (e) => {
592
+ c || (s.onOpenChange(!0), g()), e && (s.triggerPointerDownPosRef.current = {
593
+ x: Math.round(e.pageX),
594
+ y: Math.round(e.pageY)
595
+ });
596
+ };
597
+ return /* @__PURE__ */ (0, F.jsx)(A, {
598
+ asChild: !0,
599
+ ...o,
600
+ children: /* @__PURE__ */ (0, F.jsx)(h.button, {
601
+ type: "button",
602
+ role: "combobox",
603
+ "aria-controls": s.contentId,
604
+ "aria-expanded": s.open,
605
+ "aria-required": s.required,
606
+ "aria-autocomplete": "none",
607
+ dir: s.dir,
608
+ "data-state": s.open ? "open" : "closed",
609
+ disabled: c,
610
+ "data-disabled": c ? "" : void 0,
611
+ "data-placeholder": Lt(s.value) ? "" : void 0,
612
+ ...a,
613
+ ref: l,
614
+ onClick: d(a.onClick, (e) => {
615
+ e.currentTarget.focus(), f.current !== "mouse" && _(e);
616
+ }),
617
+ onPointerDown: d(a.onPointerDown, (e) => {
618
+ f.current = e.pointerType;
619
+ let t = e.target;
620
+ t.hasPointerCapture(e.pointerId) && t.releasePointerCapture(e.pointerId), e.button === 0 && e.ctrlKey === !1 && e.pointerType === "mouse" && (_(e), e.preventDefault());
621
+ }),
622
+ onKeyDown: d(a.onKeyDown, (e) => {
623
+ let t = p.current !== "";
624
+ !(e.ctrlKey || e.altKey || e.metaKey) && e.key.length === 1 && m(e.key), !(t && e.key === " ") && Fe.includes(e.key) && (_(), e.preventDefault());
625
+ })
626
+ })
627
+ });
628
+ });
629
+ qe.displayName = Ke;
630
+ var Je = "SelectValue", Ye = P.forwardRef((e, t) => {
631
+ let { __scopeSelect: n, className: r, style: a, children: o, placeholder: s = "", ...c } = e, l = J(Je, n), { onValueNodeHasChildrenChange: u } = l, d = o !== void 0, f = i(t, l.onValueNodeChange);
632
+ return m(() => {
633
+ u(d);
634
+ }, [u, d]), /* @__PURE__ */ (0, F.jsx)(h.span, {
635
+ ...c,
636
+ ref: f,
637
+ style: { pointerEvents: "none" },
638
+ children: Lt(l.value) ? /* @__PURE__ */ (0, F.jsx)(F.Fragment, { children: s }) : o
639
+ });
640
+ });
641
+ Ye.displayName = Je;
642
+ var Xe = "SelectIcon", Ze = P.forwardRef((e, t) => {
643
+ let { __scopeSelect: n, children: r, ...i } = e;
644
+ return /* @__PURE__ */ (0, F.jsx)(h.span, {
645
+ "aria-hidden": !0,
646
+ ...i,
647
+ ref: t,
648
+ children: r || "▼"
649
+ });
650
+ });
651
+ Ze.displayName = Xe;
652
+ var Qe = "SelectPortal", $e = (e) => /* @__PURE__ */ (0, F.jsx)(b, {
653
+ asChild: !0,
654
+ ...e
655
+ });
656
+ $e.displayName = Qe;
657
+ var Y = "SelectContent", et = P.forwardRef((e, t) => {
658
+ let n = J(Y, e.__scopeSelect), [r, i] = P.useState();
659
+ if (m(() => {
660
+ i(new DocumentFragment());
661
+ }, []), !n.open) {
662
+ let t = r;
663
+ return t ? Pe.createPortal(/* @__PURE__ */ (0, F.jsx)(tt, {
664
+ scope: e.__scopeSelect,
665
+ children: /* @__PURE__ */ (0, F.jsx)(Le.Slot, {
666
+ scope: e.__scopeSelect,
667
+ children: /* @__PURE__ */ (0, F.jsx)("div", { children: e.children })
668
+ })
669
+ }), t) : null;
670
+ }
671
+ return /* @__PURE__ */ (0, F.jsx)(it, {
672
+ ...e,
673
+ ref: t
674
+ });
675
+ });
676
+ et.displayName = Y;
677
+ var X = 10, [tt, Z] = q(Y), nt = "SelectContentImpl", rt = a("SelectContent.RemoveScroll"), it = P.forwardRef((e, t) => {
678
+ let { __scopeSelect: n, position: r = "item-aligned", onCloseAutoFocus: a, onEscapeKeyDown: o, onPointerDownOutside: s, side: c, sideOffset: l, align: u, alignOffset: f, arrowPadding: p, collisionBoundary: m, collisionPadding: h, sticky: g, hideWhenDetached: _, avoidCollisions: v, ...b } = e, S = J(Y, n), [C, w] = P.useState(null), [E, D] = P.useState(null), O = i(t, (e) => w(e)), [A, j] = P.useState(null), [ee, ne] = P.useState(null), M = Re(n), [N, re] = P.useState(!1), ie = P.useRef(!1);
679
+ P.useEffect(() => {
680
+ if (C) return y(C);
681
+ }, [C]), te();
682
+ let I = P.useCallback((e) => {
683
+ let [t, ...n] = M().map((e) => e.ref.current), [r] = n.slice(-1), i = document.activeElement;
684
+ for (let n of e) if (n === i || (n == null || n.scrollIntoView({ block: "nearest" }), n === t && E && (E.scrollTop = 0), n === r && E && (E.scrollTop = E.scrollHeight), n == null || n.focus(), document.activeElement !== i)) return;
685
+ }, [M, E]), L = P.useCallback(() => I([A, C]), [
686
+ I,
687
+ A,
688
+ C
689
+ ]);
690
+ P.useEffect(() => {
691
+ N && L();
692
+ }, [N, L]);
693
+ let { onOpenChange: R, triggerPointerDownPosRef: z } = S;
694
+ P.useEffect(() => {
695
+ if (C) {
696
+ let e = {
697
+ x: 0,
698
+ y: 0
699
+ }, t = (t) => {
700
+ var n, r, i, a;
701
+ e = {
702
+ x: Math.abs(Math.round(t.pageX) - ((n = (r = z.current) == null ? void 0 : r.x) == null ? 0 : n)),
703
+ y: Math.abs(Math.round(t.pageY) - ((i = (a = z.current) == null ? void 0 : a.y) == null ? 0 : i))
704
+ };
705
+ }, n = (n) => {
706
+ e.x <= 10 && e.y <= 10 ? n.preventDefault() : C.contains(n.target) || R(!1), document.removeEventListener("pointermove", t), z.current = null;
707
+ };
708
+ return z.current !== null && (document.addEventListener("pointermove", t), document.addEventListener("pointerup", n, {
709
+ capture: !0,
710
+ once: !0
711
+ })), () => {
712
+ document.removeEventListener("pointermove", t), document.removeEventListener("pointerup", n, { capture: !0 });
713
+ };
714
+ }
715
+ }, [
716
+ C,
717
+ R,
718
+ z
719
+ ]), P.useEffect(() => {
720
+ let e = () => R(!1);
721
+ return window.addEventListener("blur", e), window.addEventListener("resize", e), () => {
722
+ window.removeEventListener("blur", e), window.removeEventListener("resize", e);
723
+ };
724
+ }, [R]);
725
+ let [B, ae] = Rt((e) => {
726
+ let t = M().filter((e) => !e.disabled), n = zt(t, e, t.find((e) => e.ref.current === document.activeElement));
727
+ n && setTimeout(() => n.ref.current.focus());
728
+ }), oe = P.useCallback((e, t, n) => {
729
+ let r = !ie.current && !n;
730
+ (S.value !== void 0 && S.value === t || r) && (j(e), r && (ie.current = !0));
731
+ }, [S.value]), se = P.useCallback(() => C == null ? void 0 : C.focus(), [C]), V = P.useCallback((e, t, n) => {
732
+ let r = !ie.current && !n;
733
+ (S.value !== void 0 && S.value === t || r) && ne(e);
734
+ }, [S.value]), ce = r === "popper" ? ct : ot, le = ce === ct ? {
735
+ side: c,
736
+ sideOffset: l,
737
+ align: u,
738
+ alignOffset: f,
739
+ arrowPadding: p,
740
+ collisionBoundary: m,
741
+ collisionPadding: h,
742
+ sticky: g,
743
+ hideWhenDetached: _,
744
+ avoidCollisions: v
745
+ } : {};
746
+ return /* @__PURE__ */ (0, F.jsx)(tt, {
747
+ scope: n,
748
+ content: C,
749
+ viewport: E,
750
+ onViewportChange: D,
751
+ itemRefCallback: oe,
752
+ selectedItem: A,
753
+ onItemLeave: se,
754
+ itemTextRefCallback: V,
755
+ focusSelectedItem: L,
756
+ selectedItemText: ee,
757
+ position: r,
758
+ isPositioned: N,
759
+ searchRef: B,
760
+ children: /* @__PURE__ */ (0, F.jsx)(T, {
761
+ as: rt,
762
+ allowPinchZoom: !0,
763
+ children: /* @__PURE__ */ (0, F.jsx)(x, {
764
+ asChild: !0,
765
+ trapped: S.open,
766
+ onMountAutoFocus: (e) => {
767
+ e.preventDefault();
768
+ },
769
+ onUnmountAutoFocus: d(a, (e) => {
770
+ var t;
771
+ (t = S.trigger) == null || t.focus({ preventScroll: !0 }), e.preventDefault();
772
+ }),
773
+ children: /* @__PURE__ */ (0, F.jsx)(k, {
774
+ asChild: !0,
775
+ disableOutsidePointerEvents: !0,
776
+ onEscapeKeyDown: o,
777
+ onPointerDownOutside: s,
778
+ onFocusOutside: (e) => e.preventDefault(),
779
+ onDismiss: () => S.onOpenChange(!1),
780
+ children: /* @__PURE__ */ (0, F.jsx)(ce, {
781
+ role: "listbox",
782
+ id: S.contentId,
783
+ "data-state": S.open ? "open" : "closed",
784
+ dir: S.dir,
785
+ onContextMenu: (e) => e.preventDefault(),
786
+ ...b,
787
+ ...le,
788
+ onPlaced: () => re(!0),
789
+ ref: O,
790
+ style: {
791
+ display: "flex",
792
+ flexDirection: "column",
793
+ outline: "none",
794
+ ...b.style
795
+ },
796
+ onKeyDown: d(b.onKeyDown, (e) => {
797
+ let t = e.ctrlKey || e.altKey || e.metaKey;
798
+ if (e.key === "Tab" && e.preventDefault(), !t && e.key.length === 1 && ae(e.key), [
799
+ "ArrowUp",
800
+ "ArrowDown",
801
+ "Home",
802
+ "End"
803
+ ].includes(e.key)) {
804
+ let t = M().filter((e) => !e.disabled).map((e) => e.ref.current);
805
+ if (["ArrowUp", "End"].includes(e.key) && (t = t.slice().reverse()), ["ArrowUp", "ArrowDown"].includes(e.key)) {
806
+ let n = e.target, r = t.indexOf(n);
807
+ t = t.slice(r + 1);
808
+ }
809
+ setTimeout(() => I(t)), e.preventDefault();
810
+ }
811
+ })
812
+ })
813
+ })
814
+ })
815
+ })
816
+ });
817
+ });
818
+ it.displayName = nt;
819
+ var at = "SelectItemAlignedPosition", ot = P.forwardRef((e, t) => {
820
+ let { __scopeSelect: n, onPlaced: r, ...a } = e, o = J(Y, n), s = Z(Y, n), [c, l] = P.useState(null), [u, d] = P.useState(null), f = i(t, (e) => d(e)), p = Re(n), g = P.useRef(!1), _ = P.useRef(!0), { viewport: v, selectedItem: y, selectedItemText: b, focusSelectedItem: x } = s, S = P.useCallback(() => {
821
+ if (o.trigger && o.valueNode && c && u && v && y && b) {
822
+ let e = o.trigger.getBoundingClientRect(), t = u.getBoundingClientRect(), n = o.valueNode.getBoundingClientRect(), i = b.getBoundingClientRect();
823
+ if (o.dir !== "rtl") {
824
+ let r = i.left - t.left, a = n.left - r, o = e.left - a, s = e.width + o, l = Math.max(s, t.width), u = window.innerWidth - X, d = re(a, [X, Math.max(X, u - l)]);
825
+ c.style.minWidth = s + "px", c.style.left = d + "px";
826
+ } else {
827
+ let r = t.right - i.right, a = window.innerWidth - n.right - r, o = window.innerWidth - e.right - a, s = e.width + o, l = Math.max(s, t.width), u = window.innerWidth - X, d = re(a, [X, Math.max(X, u - l)]);
828
+ c.style.minWidth = s + "px", c.style.right = d + "px";
829
+ }
830
+ let a = p(), s = window.innerHeight - X * 2, l = v.scrollHeight, d = window.getComputedStyle(u), f = parseInt(d.borderTopWidth, 10), m = parseInt(d.paddingTop, 10), h = parseInt(d.borderBottomWidth, 10), _ = parseInt(d.paddingBottom, 10), x = f + m + l + _ + h, S = Math.min(y.offsetHeight * 5, x), C = window.getComputedStyle(v), w = parseInt(C.paddingTop, 10), T = parseInt(C.paddingBottom, 10), E = e.top + e.height / 2 - X, D = s - E, O = y.offsetHeight / 2, k = y.offsetTop + O, A = f + m + k, j = x - A;
831
+ if (A <= E) {
832
+ let e = a.length > 0 && y === a[a.length - 1].ref.current;
833
+ c.style.bottom = "0px";
834
+ let t = u.clientHeight - v.offsetTop - v.offsetHeight, n = A + Math.max(D, O + (e ? T : 0) + t + h);
835
+ c.style.height = n + "px";
836
+ } else {
837
+ let e = a.length > 0 && y === a[0].ref.current;
838
+ c.style.top = "0px";
839
+ let t = Math.max(E, f + v.offsetTop + (e ? w : 0) + O) + j;
840
+ c.style.height = t + "px", v.scrollTop = A - E + v.offsetTop;
841
+ }
842
+ c.style.margin = `${X}px 0`, c.style.minHeight = S + "px", c.style.maxHeight = s + "px", r == null || r(), requestAnimationFrame(() => g.current = !0);
843
+ }
844
+ }, [
845
+ p,
846
+ o.trigger,
847
+ o.valueNode,
848
+ c,
849
+ u,
850
+ v,
851
+ y,
852
+ b,
853
+ o.dir,
854
+ r
855
+ ]);
856
+ m(() => S(), [S]);
857
+ let [C, w] = P.useState();
858
+ return m(() => {
859
+ u && w(window.getComputedStyle(u).zIndex);
860
+ }, [u]), /* @__PURE__ */ (0, F.jsx)(lt, {
861
+ scope: n,
862
+ contentWrapper: c,
863
+ shouldExpandOnScrollRef: g,
864
+ onScrollButtonChange: P.useCallback((e) => {
865
+ e && _.current === !0 && (S(), x == null || x(), _.current = !1);
866
+ }, [S, x]),
867
+ children: /* @__PURE__ */ (0, F.jsx)("div", {
868
+ ref: l,
869
+ style: {
870
+ display: "flex",
871
+ flexDirection: "column",
872
+ position: "fixed",
873
+ zIndex: C
874
+ },
875
+ children: /* @__PURE__ */ (0, F.jsx)(h.div, {
876
+ ...a,
877
+ ref: f,
878
+ style: {
879
+ boxSizing: "border-box",
880
+ maxHeight: "100%",
881
+ ...a.style
882
+ }
883
+ })
884
+ })
885
+ });
886
+ });
887
+ ot.displayName = at;
888
+ var st = "SelectPopperPosition", ct = P.forwardRef((e, t) => {
889
+ let { __scopeSelect: n, align: r = "start", collisionPadding: i = X, ...a } = e, o = Ve(n);
890
+ return /* @__PURE__ */ (0, F.jsx)(_, {
891
+ ...o,
892
+ ...a,
893
+ ref: t,
894
+ align: r,
895
+ collisionPadding: i,
896
+ style: {
897
+ boxSizing: "border-box",
898
+ ...a.style,
899
+ "--radix-select-content-transform-origin": "var(--radix-popper-transform-origin)",
900
+ "--radix-select-content-available-width": "var(--radix-popper-available-width)",
901
+ "--radix-select-content-available-height": "var(--radix-popper-available-height)",
902
+ "--radix-select-trigger-width": "var(--radix-popper-anchor-width)",
903
+ "--radix-select-trigger-height": "var(--radix-popper-anchor-height)"
904
+ }
905
+ });
906
+ });
907
+ ct.displayName = st;
908
+ var [lt, ut] = q(Y, {}), dt = "SelectViewport", ft = P.forwardRef((e, t) => {
909
+ let { __scopeSelect: n, nonce: r, ...a } = e, o = Z(dt, n), s = ut(dt, n), c = i(t, o.onViewportChange), l = P.useRef(0);
910
+ return /* @__PURE__ */ (0, F.jsxs)(F.Fragment, { children: [/* @__PURE__ */ (0, F.jsx)("style", {
911
+ dangerouslySetInnerHTML: { __html: "[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}" },
912
+ nonce: r
913
+ }), /* @__PURE__ */ (0, F.jsx)(Le.Slot, {
914
+ scope: n,
915
+ children: /* @__PURE__ */ (0, F.jsx)(h.div, {
916
+ "data-radix-select-viewport": "",
917
+ role: "presentation",
918
+ ...a,
919
+ ref: c,
920
+ style: {
921
+ position: "relative",
922
+ flex: 1,
923
+ overflow: "hidden auto",
924
+ ...a.style
925
+ },
926
+ onScroll: d(a.onScroll, (e) => {
927
+ let t = e.currentTarget, { contentWrapper: n, shouldExpandOnScrollRef: r } = s;
928
+ if (r != null && r.current && n) {
929
+ let e = Math.abs(l.current - t.scrollTop);
930
+ if (e > 0) {
931
+ let r = window.innerHeight - X * 2, i = parseFloat(n.style.minHeight), a = parseFloat(n.style.height), o = Math.max(i, a);
932
+ if (o < r) {
933
+ let i = o + e, a = Math.min(r, i), s = i - a;
934
+ n.style.height = a + "px", n.style.bottom === "0px" && (t.scrollTop = s > 0 ? s : 0, n.style.justifyContent = "flex-end");
935
+ }
936
+ }
937
+ }
938
+ l.current = t.scrollTop;
939
+ })
940
+ })
941
+ })] });
942
+ });
943
+ ft.displayName = dt;
944
+ var pt = "SelectGroup", [mt, ht] = q(pt), gt = P.forwardRef((e, t) => {
945
+ let { __scopeSelect: n, ...r } = e, i = S();
946
+ return /* @__PURE__ */ (0, F.jsx)(mt, {
947
+ scope: n,
948
+ id: i,
949
+ children: /* @__PURE__ */ (0, F.jsx)(h.div, {
950
+ role: "group",
951
+ "aria-labelledby": i,
952
+ ...r,
953
+ ref: t
954
+ })
955
+ });
956
+ });
957
+ gt.displayName = pt;
958
+ var _t = "SelectLabel", vt = P.forwardRef((e, t) => {
959
+ let { __scopeSelect: n, ...r } = e, i = ht(_t, n);
960
+ return /* @__PURE__ */ (0, F.jsx)(h.div, {
961
+ id: i.id,
962
+ ...r,
963
+ ref: t
964
+ });
965
+ });
966
+ vt.displayName = _t;
967
+ var yt = "SelectItem", [bt, xt] = q(yt), St = P.forwardRef((e, t) => {
968
+ let { __scopeSelect: n, value: r, disabled: a = !1, textValue: o, ...s } = e, c = J(yt, n), l = Z(yt, n), u = c.value === r, [f, p] = P.useState(o == null ? "" : o), [m, g] = P.useState(!1), _ = i(t, (e) => {
969
+ var t;
970
+ return (t = l.itemRefCallback) == null ? void 0 : t.call(l, e, r, a);
971
+ }), v = S(), y = P.useRef("touch"), b = () => {
972
+ a || (c.onValueChange(r), c.onOpenChange(!1));
973
+ };
974
+ if (r === "") throw Error("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.");
975
+ return /* @__PURE__ */ (0, F.jsx)(bt, {
976
+ scope: n,
977
+ value: r,
978
+ disabled: a,
979
+ textId: v,
980
+ isSelected: u,
981
+ onItemTextChange: P.useCallback((e) => {
982
+ p((t) => {
983
+ var n;
984
+ return t || ((n = e == null ? void 0 : e.textContent) == null ? "" : n).trim();
985
+ });
986
+ }, []),
987
+ children: /* @__PURE__ */ (0, F.jsx)(Le.ItemSlot, {
988
+ scope: n,
989
+ value: r,
990
+ disabled: a,
991
+ textValue: f,
992
+ children: /* @__PURE__ */ (0, F.jsx)(h.div, {
993
+ role: "option",
994
+ "aria-labelledby": v,
995
+ "data-highlighted": m ? "" : void 0,
996
+ "aria-selected": u && m,
997
+ "data-state": u ? "checked" : "unchecked",
998
+ "aria-disabled": a || void 0,
999
+ "data-disabled": a ? "" : void 0,
1000
+ tabIndex: a ? void 0 : -1,
1001
+ ...s,
1002
+ ref: _,
1003
+ onFocus: d(s.onFocus, () => g(!0)),
1004
+ onBlur: d(s.onBlur, () => g(!1)),
1005
+ onClick: d(s.onClick, () => {
1006
+ y.current !== "mouse" && b();
1007
+ }),
1008
+ onPointerUp: d(s.onPointerUp, () => {
1009
+ y.current === "mouse" && b();
1010
+ }),
1011
+ onPointerDown: d(s.onPointerDown, (e) => {
1012
+ y.current = e.pointerType;
1013
+ }),
1014
+ onPointerMove: d(s.onPointerMove, (e) => {
1015
+ if (y.current = e.pointerType, a) {
1016
+ var t;
1017
+ (t = l.onItemLeave) == null || t.call(l);
1018
+ } else y.current === "mouse" && e.currentTarget.focus({ preventScroll: !0 });
1019
+ }),
1020
+ onPointerLeave: d(s.onPointerLeave, (e) => {
1021
+ if (e.currentTarget === document.activeElement) {
1022
+ var t;
1023
+ (t = l.onItemLeave) == null || t.call(l);
1024
+ }
1025
+ }),
1026
+ onKeyDown: d(s.onKeyDown, (e) => {
1027
+ var t;
1028
+ ((t = l.searchRef) == null ? void 0 : t.current) !== "" && e.key === " " || (Ie.includes(e.key) && b(), e.key === " " && e.preventDefault());
1029
+ })
1030
+ })
1031
+ })
1032
+ });
1033
+ });
1034
+ St.displayName = yt;
1035
+ var Q = "SelectItemText", Ct = P.forwardRef((e, t) => {
1036
+ let { __scopeSelect: n, className: r, style: a, ...o } = e, s = J(Q, n), c = Z(Q, n), l = xt(Q, n), u = We(Q, n), [d, f] = P.useState(null), p = i(t, (e) => f(e), l.onItemTextChange, (e) => {
1037
+ var t;
1038
+ return (t = c.itemTextRefCallback) == null ? void 0 : t.call(c, e, l.value, l.disabled);
1039
+ }), g = d == null ? void 0 : d.textContent, _ = P.useMemo(() => /* @__PURE__ */ (0, F.jsx)("option", {
1040
+ value: l.value,
1041
+ disabled: l.disabled,
1042
+ children: g
1043
+ }, l.value), [
1044
+ l.disabled,
1045
+ l.value,
1046
+ g
1047
+ ]), { onNativeOptionAdd: v, onNativeOptionRemove: y } = u;
1048
+ return m(() => (v(_), () => y(_)), [
1049
+ v,
1050
+ y,
1051
+ _
1052
+ ]), /* @__PURE__ */ (0, F.jsxs)(F.Fragment, { children: [/* @__PURE__ */ (0, F.jsx)(h.span, {
1053
+ id: l.textId,
1054
+ ...o,
1055
+ ref: p
1056
+ }), l.isSelected && s.valueNode && !s.valueNodeHasChildren ? Pe.createPortal(o.children, s.valueNode) : null] });
1057
+ });
1058
+ Ct.displayName = Q;
1059
+ var wt = "SelectItemIndicator", Tt = P.forwardRef((e, t) => {
1060
+ let { __scopeSelect: n, ...r } = e;
1061
+ return xt(wt, n).isSelected ? /* @__PURE__ */ (0, F.jsx)(h.span, {
1062
+ "aria-hidden": !0,
1063
+ ...r,
1064
+ ref: t
1065
+ }) : null;
1066
+ });
1067
+ Tt.displayName = wt;
1068
+ var Et = "SelectScrollUpButton", Dt = P.forwardRef((e, t) => {
1069
+ let n = Z(Et, e.__scopeSelect), r = ut(Et, e.__scopeSelect), [a, o] = P.useState(!1), s = i(t, r.onScrollButtonChange);
1070
+ return m(() => {
1071
+ if (n.viewport && n.isPositioned) {
1072
+ let e = function() {
1073
+ let e = t.scrollTop > 0;
1074
+ o(e);
1075
+ }, t = n.viewport;
1076
+ return e(), t.addEventListener("scroll", e), () => t.removeEventListener("scroll", e);
1077
+ }
1078
+ }, [n.viewport, n.isPositioned]), a ? /* @__PURE__ */ (0, F.jsx)(At, {
1079
+ ...e,
1080
+ ref: s,
1081
+ onAutoScroll: () => {
1082
+ let { viewport: e, selectedItem: t } = n;
1083
+ e && t && (e.scrollTop -= t.offsetHeight);
1084
+ }
1085
+ }) : null;
1086
+ });
1087
+ Dt.displayName = Et;
1088
+ var Ot = "SelectScrollDownButton", kt = P.forwardRef((e, t) => {
1089
+ let n = Z(Ot, e.__scopeSelect), r = ut(Ot, e.__scopeSelect), [a, o] = P.useState(!1), s = i(t, r.onScrollButtonChange);
1090
+ return m(() => {
1091
+ if (n.viewport && n.isPositioned) {
1092
+ let e = function() {
1093
+ let e = t.scrollHeight - t.clientHeight, n = Math.ceil(t.scrollTop) < e;
1094
+ o(n);
1095
+ }, t = n.viewport;
1096
+ return e(), t.addEventListener("scroll", e), () => t.removeEventListener("scroll", e);
1097
+ }
1098
+ }, [n.viewport, n.isPositioned]), a ? /* @__PURE__ */ (0, F.jsx)(At, {
1099
+ ...e,
1100
+ ref: s,
1101
+ onAutoScroll: () => {
1102
+ let { viewport: e, selectedItem: t } = n;
1103
+ e && t && (e.scrollTop += t.offsetHeight);
1104
+ }
1105
+ }) : null;
1106
+ });
1107
+ kt.displayName = Ot;
1108
+ var At = P.forwardRef((e, t) => {
1109
+ let { __scopeSelect: n, onAutoScroll: r, ...i } = e, a = Z("SelectScrollButton", n), o = P.useRef(null), s = Re(n), c = P.useCallback(() => {
1110
+ o.current !== null && (window.clearInterval(o.current), o.current = null);
1111
+ }, []);
1112
+ return P.useEffect(() => () => c(), [c]), m(() => {
1113
+ var e;
1114
+ let t = s().find((e) => e.ref.current === document.activeElement);
1115
+ t == null || (e = t.ref.current) == null || e.scrollIntoView({ block: "nearest" });
1116
+ }, [s]), /* @__PURE__ */ (0, F.jsx)(h.div, {
1117
+ "aria-hidden": !0,
1118
+ ...i,
1119
+ ref: t,
1120
+ style: {
1121
+ flexShrink: 0,
1122
+ ...i.style
1123
+ },
1124
+ onPointerDown: d(i.onPointerDown, () => {
1125
+ o.current === null && (o.current = window.setInterval(r, 50));
1126
+ }),
1127
+ onPointerMove: d(i.onPointerMove, () => {
1128
+ var e;
1129
+ (e = a.onItemLeave) == null || e.call(a), o.current === null && (o.current = window.setInterval(r, 50));
1130
+ }),
1131
+ onPointerLeave: d(i.onPointerLeave, () => {
1132
+ c();
1133
+ })
1134
+ });
1135
+ }), jt = "SelectSeparator", Mt = P.forwardRef((e, t) => {
1136
+ let { __scopeSelect: n, ...r } = e;
1137
+ return /* @__PURE__ */ (0, F.jsx)(h.div, {
1138
+ "aria-hidden": !0,
1139
+ ...r,
1140
+ ref: t
1141
+ });
1142
+ });
1143
+ Mt.displayName = jt;
1144
+ var Nt = "SelectArrow", Pt = P.forwardRef((e, t) => {
1145
+ let { __scopeSelect: n, ...r } = e, i = Ve(n), a = J(Nt, n), o = Z(Nt, n);
1146
+ return a.open && o.position === "popper" ? /* @__PURE__ */ (0, F.jsx)(w, {
1147
+ ...i,
1148
+ ...r,
1149
+ ref: t
1150
+ }) : null;
1151
+ });
1152
+ Pt.displayName = Nt;
1153
+ var Ft = "SelectBubbleInput", It = P.forwardRef(({ __scopeSelect: e, value: t, ...n }, r) => {
1154
+ let a = P.useRef(null), o = i(r, a), s = M(t);
1155
+ return P.useEffect(() => {
1156
+ let e = a.current;
1157
+ if (!e) return;
1158
+ let n = window.HTMLSelectElement.prototype, r = Object.getOwnPropertyDescriptor(n, "value").set;
1159
+ if (s !== t && r) {
1160
+ let n = new Event("change", { bubbles: !0 });
1161
+ r.call(e, t), e.dispatchEvent(n);
1162
+ }
1163
+ }, [s, t]), /* @__PURE__ */ (0, F.jsx)(h.select, {
1164
+ ...n,
1165
+ style: {
1166
+ ...v,
1167
+ ...n.style
1168
+ },
1169
+ ref: o,
1170
+ defaultValue: t
1171
+ });
1172
+ });
1173
+ It.displayName = Ft;
1174
+ function Lt(e) {
1175
+ return e === "" || e === void 0;
1176
+ }
1177
+ function Rt(e) {
1178
+ let t = E(e), n = P.useRef(""), r = P.useRef(0), i = P.useCallback((e) => {
1179
+ let i = n.current + e;
1180
+ t(i), (function e(t) {
1181
+ n.current = t, window.clearTimeout(r.current), t !== "" && (r.current = window.setTimeout(() => e(""), 1e3));
1182
+ })(i);
1183
+ }, [t]), a = P.useCallback(() => {
1184
+ n.current = "", window.clearTimeout(r.current);
1185
+ }, []);
1186
+ return P.useEffect(() => () => window.clearTimeout(r.current), []), [
1187
+ n,
1188
+ i,
1189
+ a
1190
+ ];
1191
+ }
1192
+ function zt(e, t, n) {
1193
+ let r = t.length > 1 && Array.from(t).every((e) => e === t[0]) ? t[0] : t, i = n ? e.indexOf(n) : -1, a = Bt(e, Math.max(i, 0));
1194
+ r.length === 1 && (a = a.filter((e) => e !== n));
1195
+ let o = a.find((e) => e.textValue.toLowerCase().startsWith(r.toLowerCase()));
1196
+ return o === n ? void 0 : o;
1197
+ }
1198
+ function Bt(e, t) {
1199
+ return e.map((n, r) => e[(t + r) % e.length]);
1200
+ }
1201
+ var Vt = Ge, Ht = qe, Ut = Ye, Wt = Ze, Gt = $e, Kt = et, qt = ft, Jt = gt, Yt = vt, Xt = St, Zt = Ct, Qt = Tt, $t = Mt, $ = /* @__PURE__ */ e(N()), en = P.forwardRef((e, t) => P.createElement("svg", {
1202
+ width: "9",
1203
+ height: "9",
1204
+ viewBox: "0 0 9 9",
1205
+ fill: "currentcolor",
1206
+ xmlns: "http://www.w3.org/2000/svg",
1207
+ ...e,
1208
+ ref: t
1209
+ }, P.createElement("path", {
1210
+ fillRule: "evenodd",
1211
+ clipRule: "evenodd",
1212
+ d: "M0.75 4.5C0.75 4.08579 1.08579 3.75 1.5 3.75H7.5C7.91421 3.75 8.25 4.08579 8.25 4.5C8.25 4.91421 7.91421 5.25 7.5 5.25H1.5C1.08579 5.25 0.75 4.91421 0.75 4.5Z"
1213
+ })));
1214
+ en.displayName = "ThickDividerHorizontalIcon";
1215
+ var tn = P.forwardRef((e, t) => P.createElement("svg", {
1216
+ width: "9",
1217
+ height: "9",
1218
+ viewBox: "0 0 9 9",
1219
+ fill: "currentcolor",
1220
+ xmlns: "http://www.w3.org/2000/svg",
1221
+ ...e,
1222
+ ref: t
1223
+ }, P.createElement("path", {
1224
+ fillRule: "evenodd",
1225
+ clipRule: "evenodd",
1226
+ d: "M8.53547 0.62293C8.88226 0.849446 8.97976 1.3142 8.75325 1.66099L4.5083 8.1599C4.38833 8.34356 4.19397 8.4655 3.9764 8.49358C3.75883 8.52167 3.53987 8.45309 3.3772 8.30591L0.616113 5.80777C0.308959 5.52987 0.285246 5.05559 0.563148 4.74844C0.84105 4.44128 1.31533 4.41757 1.62249 4.69547L3.73256 6.60459L7.49741 0.840706C7.72393 0.493916 8.18868 0.396414 8.53547 0.62293Z"
1227
+ })));
1228
+ tn.displayName = "ThickCheckIcon";
1229
+ var nn = P.forwardRef((e, t) => P.createElement("svg", {
1230
+ width: "9",
1231
+ height: "9",
1232
+ viewBox: "0 0 9 9",
1233
+ fill: "currentcolor",
1234
+ xmlns: "http://www.w3.org/2000/svg",
1235
+ ...e,
1236
+ ref: t
1237
+ }, P.createElement("path", { d: "M0.135232 3.15803C0.324102 2.95657 0.640521 2.94637 0.841971 3.13523L4.5 6.56464L8.158 3.13523C8.3595 2.94637 8.6759 2.95657 8.8648 3.15803C9.0536 3.35949 9.0434 3.67591 8.842 3.86477L4.84197 7.6148C4.64964 7.7951 4.35036 7.7951 4.15803 7.6148L0.158031 3.86477C-0.0434285 3.67591 -0.0536285 3.35949 0.135232 3.15803Z" })));
1238
+ nn.displayName = "ChevronDownIcon";
1239
+ var rn = P.forwardRef((e, t) => P.createElement("svg", {
1240
+ width: "9",
1241
+ height: "9",
1242
+ viewBox: "0 0 9 9",
1243
+ fill: "currentcolor",
1244
+ xmlns: "http://www.w3.org/2000/svg",
1245
+ ...e,
1246
+ ref: t
1247
+ }, P.createElement("path", {
1248
+ fillRule: "evenodd",
1249
+ clipRule: "evenodd",
1250
+ d: "M3.23826 0.201711C3.54108 -0.0809141 4.01567 -0.0645489 4.29829 0.238264L7.79829 3.98826C8.06724 4.27642 8.06724 4.72359 7.79829 5.01174L4.29829 8.76174C4.01567 9.06455 3.54108 9.08092 3.23826 8.79829C2.93545 8.51567 2.91909 8.04108 3.20171 7.73826L6.22409 4.5L3.20171 1.26174C2.91909 0.958928 2.93545 0.484337 3.23826 0.201711Z"
1251
+ })));
1252
+ rn.displayName = "ThickChevronRightIcon";
1253
+ //#endregion
1254
+ //#region ../../node_modules/.pnpm/@radix-ui+themes@3.3.0_@types+react-dom@19.2.3_@types+react@19.2.17__@types+react@19.2._5ea800d4e947acedb1fa1275f1697b17/node_modules/@radix-ui/themes/dist/esm/components/select.props.js
1255
+ var an = { size: {
1256
+ type: "enum",
1257
+ className: "rt-r-size",
1258
+ values: [
1259
+ "1",
1260
+ "2",
1261
+ "3"
1262
+ ],
1263
+ default: "2",
1264
+ responsive: !0
1265
+ } }, on = {
1266
+ variant: {
1267
+ type: "enum",
1268
+ className: "rt-variant",
1269
+ values: [
1270
+ "classic",
1271
+ "surface",
1272
+ "soft",
1273
+ "ghost"
1274
+ ],
1275
+ default: "surface"
1276
+ },
1277
+ ...u,
1278
+ ...c,
1279
+ placeholder: { type: "string" }
1280
+ }, sn = {
1281
+ variant: {
1282
+ type: "enum",
1283
+ className: "rt-variant",
1284
+ values: ["solid", "soft"],
1285
+ default: "solid"
1286
+ },
1287
+ ...u,
1288
+ ...o
1289
+ }, cn = P.createContext({}), ln = (e) => {
1290
+ let { children: t, size: n = an.size.default, ...r } = e;
1291
+ return P.createElement(Vt, { ...r }, P.createElement(cn.Provider, { value: P.useMemo(() => ({ size: n }), [n]) }, t));
1292
+ };
1293
+ ln.displayName = "Select.Root";
1294
+ var un = P.forwardRef((e, t) => {
1295
+ let n = P.useContext(cn), { children: r, className: i, color: a, radius: o, placeholder: c, ...u } = l({
1296
+ size: n == null ? void 0 : n.size,
1297
+ ...e
1298
+ }, { size: an.size }, on, s);
1299
+ return P.createElement(Ht, { asChild: !0 }, P.createElement("button", {
1300
+ "data-accent-color": a,
1301
+ "data-radius": o,
1302
+ ...u,
1303
+ ref: t,
1304
+ className: (0, $.default)("rt-reset", "rt-SelectTrigger", i)
1305
+ }, P.createElement("span", { className: "rt-SelectTriggerInner" }, P.createElement(Ut, { placeholder: c }, r)), P.createElement(Wt, { asChild: !0 }, P.createElement(nn, { className: "rt-SelectIcon" }))));
1306
+ });
1307
+ un.displayName = "Select.Trigger";
1308
+ var dn = P.forwardRef((e, t) => {
1309
+ let n = P.useContext(cn), { className: r, children: i, color: a, container: o, ...s } = l({
1310
+ size: n == null ? void 0 : n.size,
1311
+ ...e
1312
+ }, { size: an.size }, sn), c = ee(), u = a || c.accentColor;
1313
+ return P.createElement(Gt, { container: o }, P.createElement(D, { asChild: !0 }, P.createElement(Kt, {
1314
+ "data-accent-color": u,
1315
+ sideOffset: 4,
1316
+ ...s,
1317
+ asChild: !1,
1318
+ ref: t,
1319
+ className: (0, $.default)({ "rt-PopperContent": s.position === "popper" }, "rt-SelectContent", r)
1320
+ }, P.createElement(Ae, {
1321
+ type: "auto",
1322
+ className: "rt-ScrollAreaRoot"
1323
+ }, P.createElement(qt, {
1324
+ asChild: !0,
1325
+ className: "rt-SelectViewport"
1326
+ }, P.createElement(je, {
1327
+ className: "rt-ScrollAreaViewport",
1328
+ style: { overflowY: void 0 }
1329
+ }, i)), P.createElement(Me, {
1330
+ className: "rt-ScrollAreaScrollbar rt-r-size-1",
1331
+ orientation: "vertical"
1332
+ }, P.createElement(Ne, { className: "rt-ScrollAreaThumb" }))))));
1333
+ });
1334
+ dn.displayName = "Select.Content";
1335
+ var fn = P.forwardRef((e, t) => {
1336
+ let { className: n, children: r, ...i } = e;
1337
+ return P.createElement(Xt, {
1338
+ ...i,
1339
+ asChild: !1,
1340
+ ref: t,
1341
+ className: (0, $.default)("rt-SelectItem", n)
1342
+ }, P.createElement(Qt, { className: "rt-SelectItemIndicator" }, P.createElement(tn, { className: "rt-SelectItemIndicatorIcon" })), P.createElement(Zt, null, r));
1343
+ });
1344
+ fn.displayName = "Select.Item";
1345
+ var pn = P.forwardRef(({ className: e, ...t }, n) => P.createElement(Jt, {
1346
+ ...t,
1347
+ asChild: !1,
1348
+ ref: n,
1349
+ className: (0, $.default)("rt-SelectGroup", e)
1350
+ }));
1351
+ pn.displayName = "Select.Group";
1352
+ var mn = P.forwardRef(({ className: e, ...t }, n) => P.createElement(Yt, {
1353
+ ...t,
1354
+ asChild: !1,
1355
+ ref: n,
1356
+ className: (0, $.default)("rt-SelectLabel", e)
1357
+ }));
1358
+ mn.displayName = "Select.Label";
1359
+ var hn = P.forwardRef(({ className: e, ...t }, n) => P.createElement($t, {
1360
+ ...t,
1361
+ asChild: !1,
1362
+ ref: n,
1363
+ className: (0, $.default)("rt-SelectSeparator", e)
1364
+ }));
1365
+ hn.displayName = "Select.Separator";
1366
+ //#endregion
1367
+ export { fn as i, dn as n, un as r, ln as t };