@react-pdf-kit/viewer 2.7.1-rc.1 → 2.7.2-rc.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 (147) hide show
  1. package/dist/{AnnotationLayer-CAIvKf_O.js → AnnotationLayer-SQbmx6wX.js} +1 -1
  2. package/dist/{Button-DBu3SaMk.js → Button-BNlmxWrV.js} +1 -1
  3. package/dist/{Checkbox-Cl-BpoFJ.js → Checkbox-Brta-YKG.js} +4 -4
  4. package/dist/{Combination-11kyhTGt.js → Combination-DqNkTtir.js} +15 -15
  5. package/dist/{Container-BuamPhw4.js → Container-BxNZX82X.js} +1 -1
  6. package/dist/{DocumentDialog-cRr9sSSH.js → DocumentDialog-C9G7lVTh.js} +4 -4
  7. package/dist/{DropDown-D6c4mnJL.js → DropDown-DikL-krI.js} +2 -2
  8. package/dist/{Input-Dpo1Xfxe.js → Input-DjSWOjCI.js} +1 -1
  9. package/dist/{LoaderIcon-B3ddfd0D.js → LoaderIcon-D9YjinGf.js} +1 -1
  10. package/dist/{LoadingIndicator-Bzzf28Xv.js → LoadingIndicator-B_Jsf8No.js} +8 -8
  11. package/dist/{MenuItem-BP_RjUuW.js → MenuItem-BJDWfzAw.js} +2 -2
  12. package/dist/{MenuSeparator-Df2Dzzea.js → MenuSeparator-D1H5l8Ej.js} +1 -1
  13. package/dist/{PaginationContext-Cwf8sCpK.js → PaginationContext-B3qzCYJu.js} +46 -53
  14. package/dist/{PasswordModal-BtHVvrMg.js → PasswordModal-CB9Rd2zJ.js} +1 -1
  15. package/dist/{RPDropFileZone-Bq1bzWmO.js → RPDropFileZone-D1C3ouep.js} +1 -1
  16. package/dist/RPLayout.module-CkUgQ1Fi.js +14 -0
  17. package/dist/{RPPage-C_r8aeTc.js → RPPage-BdoE0RrK.js} +1 -1
  18. package/dist/{RPPages-DeA52_rv.js → RPPages-Ct1XvFTS.js} +12 -12
  19. package/dist/RPTooltip-ZZoFqP7C.js +381 -0
  20. package/dist/SearchTool.module-F4m4ggTb.js +17 -0
  21. package/dist/{Thumbnail-DyRfHsAh.js → Thumbnail-BNpCO-jm.js} +3 -3
  22. package/dist/{Thumbnails-Cbr54TOa.js → Thumbnails-DYvhzEUD.js} +2 -2
  23. package/dist/assets/LoadingIndicator.css +1 -1
  24. package/dist/assets/RPLayout.css +1 -1
  25. package/dist/assets/SearchTool.css +1 -1
  26. package/dist/assets/style.js +1 -1
  27. package/dist/{clsx-DSGuh5YW.js → clsx-B7LyVm5O.js} +1 -1
  28. package/dist/components/RPController.js +1 -1
  29. package/dist/components/RPDropFileZone.js +1 -1
  30. package/dist/components/RPPages.js +1 -1
  31. package/dist/components/RPProvider.js +1 -1
  32. package/dist/components/icons/LoaderIcon.js +1 -1
  33. package/dist/components/layout/Container.js +1 -1
  34. package/dist/components/layout/LayoutContainer.js +2 -2
  35. package/dist/components/layout/LayoutWrapper.js +1 -1
  36. package/dist/components/layout/RPDefaultLayout.js +3 -3
  37. package/dist/components/layout/RPLayout.js +3 -3
  38. package/dist/components/layout/sidebar/RPSidebar.js +3 -3
  39. package/dist/components/layout/sidebar/Thumbnail.js +1 -1
  40. package/dist/components/layout/sidebar/Thumbnails.js +1 -1
  41. package/dist/components/layout/toolbar/DarkModeTool.js +2 -2
  42. package/dist/components/layout/toolbar/DocumentDialog.js +1 -1
  43. package/dist/components/layout/toolbar/DocumentProperties.js +3 -3
  44. package/dist/components/layout/toolbar/FileDownloadTool.js +3 -3
  45. package/dist/components/layout/toolbar/FileUploadTool.js +3 -3
  46. package/dist/components/layout/toolbar/FullScreenTool.js +3 -3
  47. package/dist/components/layout/toolbar/MenuItem.js +1 -1
  48. package/dist/components/layout/toolbar/MenuSeparator.js +1 -1
  49. package/dist/components/layout/toolbar/MostPageTool.js +5 -5
  50. package/dist/components/layout/toolbar/OtherTool.js +6 -6
  51. package/dist/components/layout/toolbar/Paginate.js +4 -4
  52. package/dist/components/layout/toolbar/PrintTool.js +3 -3
  53. package/dist/components/layout/toolbar/RPMenuItem.js +3 -3
  54. package/dist/components/layout/toolbar/RPMoreOptions.js +6 -6
  55. package/dist/components/layout/toolbar/RPToolbar.js +1 -1
  56. package/dist/components/layout/toolbar/RotateTool.js +4 -4
  57. package/dist/components/layout/toolbar/ScrollModeTool.js +3 -3
  58. package/dist/components/layout/toolbar/SearchCloseButton.js +3 -3
  59. package/dist/components/layout/toolbar/SearchResultNavigator.js +3 -3
  60. package/dist/components/layout/toolbar/SearchTool.js +134 -122
  61. package/dist/components/layout/toolbar/SelectionModeTool.js +4 -4
  62. package/dist/components/layout/toolbar/ThumbnailTool.js +2 -2
  63. package/dist/components/layout/toolbar/ToolbarCustom.js +2 -2
  64. package/dist/components/layout/toolbar/ToolbarDefault.js +2 -2
  65. package/dist/components/layout/toolbar/ViewModeTool.js +4 -4
  66. package/dist/components/layout/toolbar/ZoomTool.js +7 -7
  67. package/dist/components/layout/toolbar/tools/DocumentPropertiesTool.js +3 -3
  68. package/dist/components/layout/toolbar/tools/DualPageTool.js +2 -2
  69. package/dist/components/layout/toolbar/tools/DualPageWithCoverTool.js +1 -1
  70. package/dist/components/layout/toolbar/tools/FileDownloadTool.js +2 -2
  71. package/dist/components/layout/toolbar/tools/FileUploadTool.js +2 -2
  72. package/dist/components/layout/toolbar/tools/FirstPageTool.js +1 -1
  73. package/dist/components/layout/toolbar/tools/FullScreenTool.js +2 -2
  74. package/dist/components/layout/toolbar/tools/HorizontalScrollingTool.js +2 -2
  75. package/dist/components/layout/toolbar/tools/InputPageTool.js +3 -3
  76. package/dist/components/layout/toolbar/tools/LastPageTool.js +1 -1
  77. package/dist/components/layout/toolbar/tools/NextPageTool.js +3 -3
  78. package/dist/components/layout/toolbar/tools/PageScrollingTool.js +2 -2
  79. package/dist/components/layout/toolbar/tools/PreviousPageTool.js +3 -3
  80. package/dist/components/layout/toolbar/tools/PrintTool.js +2 -2
  81. package/dist/components/layout/toolbar/tools/RotateClockwiseTool.js +2 -2
  82. package/dist/components/layout/toolbar/tools/RotateCounterclockwiseTool.js +2 -2
  83. package/dist/components/layout/toolbar/tools/SelectionModeSwitcherTool.js +2 -2
  84. package/dist/components/layout/toolbar/tools/SinglePageTool.js +2 -2
  85. package/dist/components/layout/toolbar/tools/ThemeSwitcherTool.js +2 -2
  86. package/dist/components/layout/toolbar/tools/ThumbnailTool.js +2 -2
  87. package/dist/components/layout/toolbar/tools/VerticalScrollingTool.js +2 -2
  88. package/dist/components/layout/toolbar/tools/ZoomInTool.js +2 -2
  89. package/dist/components/layout/toolbar/tools/ZoomLevelTool.js +6 -6
  90. package/dist/components/layout/toolbar/tools/ZoomOutTool.js +2 -2
  91. package/dist/components/layout/toolbar/tools/more-options/DocumentProperties.js +2 -2
  92. package/dist/components/layout/toolbar/tools/more-options/FileDownloadTool.js +2 -2
  93. package/dist/components/layout/toolbar/tools/more-options/FileUploadTool.js +2 -2
  94. package/dist/components/layout/toolbar/tools/more-options/FullScreenTool.js +2 -2
  95. package/dist/components/layout/toolbar/tools/more-options/MostPageTool.js +5 -5
  96. package/dist/components/layout/toolbar/tools/more-options/PrintTool.js +2 -2
  97. package/dist/components/layout/toolbar/tools/more-options/RotateTool.js +4 -4
  98. package/dist/components/layout/toolbar/tools/more-options/ScrollModeTool.js +3 -3
  99. package/dist/components/layout/toolbar/tools/more-options/SelectionModeTool.js +4 -4
  100. package/dist/components/layout/toolbar/tools/more-options/ViewModeTool.js +4 -4
  101. package/dist/components/page/AnnotationLayer.js +1 -1
  102. package/dist/components/page/DualPage.js +2 -2
  103. package/dist/components/page/DualPageWithCover.js +2 -2
  104. package/dist/components/page/RPPage.js +1 -1
  105. package/dist/components/page/SinglePage.js +2 -2
  106. package/dist/components/ui/Button.js +1 -1
  107. package/dist/components/ui/Checkbox.js +1 -1
  108. package/dist/components/ui/DropDown.js +1 -1
  109. package/dist/components/ui/Input.js +1 -1
  110. package/dist/components/ui/LoadingIndicator.js +1 -1
  111. package/dist/components/ui/PasswordModal.js +1 -1
  112. package/dist/components/ui/RPTooltip.js +1 -1
  113. package/dist/contexts/ElementThumbnailContext.js +1 -1
  114. package/dist/contexts/LoaderContext.js +1 -1
  115. package/dist/contexts/PaginationContext.js +1 -1
  116. package/dist/contexts/RenderQueueProvider.js +1 -1
  117. package/dist/{de_DE-DwUvXUWH.js → de_DE-C1OrwQKj.js} +18 -0
  118. package/dist/dist-7FA4Do6I.js +1286 -0
  119. package/dist/{dist-BfuBBQ14.js → dist-BRVqFn7R.js} +6 -6
  120. package/dist/{dist-CHiIt8ey.js → dist-C3WNMuW2.js} +2 -2
  121. package/dist/dist-CKteKPPA.js +947 -0
  122. package/dist/{dist-CgoP608h.js → dist-bK-AHWLF.js} +7 -7
  123. package/dist/icons.js +1 -1
  124. package/dist/{main-BVY8P7qz.js → main-CnL3zQcy.js} +3 -3
  125. package/dist/main.js +5 -5
  126. package/dist/style-DCakeEMr.js +5 -0
  127. package/dist/types/locales/de_DE.json.d.ts +3 -0
  128. package/dist/types/locales/en_US.json.d.ts +3 -0
  129. package/dist/types/locales/it_IT.json.d.ts +3 -0
  130. package/dist/types/locales/pt_PT.json.d.ts +3 -0
  131. package/dist/types/locales/th_TH.json.d.ts +3 -0
  132. package/dist/types/locales/zh_CN.json.d.ts +3 -0
  133. package/dist/types/utils/types.d.ts +5 -0
  134. package/dist/utils/hooks/useLicense.js +1 -1
  135. package/dist/utils/hooks/useLocalization.js +1 -1
  136. package/dist/utils/hooks/usePaginate.js +1 -1
  137. package/dist/utils/hooks/usePresentPage.js +23 -19
  138. package/dist/utils/hooks/useScrollToPage.js +1 -1
  139. package/dist/utils/hooks/useSearch.js +1 -1
  140. package/dist/utils/types.js +2 -2
  141. package/package.json +1 -1
  142. package/dist/RPLayout.module-Vc3h4xxS.js +0 -14
  143. package/dist/RPTooltip-B4KrW-_f.js +0 -568
  144. package/dist/SearchTool.module-DUkVXfOn.js +0 -16
  145. package/dist/dist-Ch2NetCM.js +0 -1134
  146. package/dist/floating-ui.react-dom-DWNOhDoc.js +0 -1096
  147. package/dist/style-C8T5x1fE.js +0 -5
@@ -1,1134 +0,0 @@
1
- import { a as e, d as t, f as n, i as r, l as i, n as a, o, r as s, t as c, u as l } from "./dist-CgoP608h.js";
2
- import { i as u, n as d, r as f, t as p } from "./dist-BfuBBQ14.js";
3
- import { a as m, c as h, i as g, l as _, n as v, o as y, r as b, s as ee, t as te } from "./floating-ui.react-dom-DWNOhDoc.js";
4
- import { t as x } from "./dist-CHiIt8ey.js";
5
- import { i as S, n as C, r as w, t as ne } from "./Combination-11kyhTGt.js";
6
- import * as T from "react";
7
- import E from "react";
8
- import { jsx as D } from "react/jsx-runtime";
9
- //#region node_modules/@radix-ui/react-collection/dist/index.mjs
10
- function O(e) {
11
- let n = e + "CollectionProvider", [r, a] = i(n), [s, c] = r(n, {
12
- collectionRef: { current: null },
13
- itemMap: /* @__PURE__ */ new Map()
14
- }), l = (e) => {
15
- let { scope: t, children: n } = e, r = E.useRef(null), i = E.useRef(/* @__PURE__ */ new Map()).current;
16
- return /* @__PURE__ */ D(s, {
17
- scope: t,
18
- itemMap: i,
19
- collectionRef: r,
20
- children: n
21
- });
22
- };
23
- l.displayName = n;
24
- let u = e + "CollectionSlot", d = o(u), f = E.forwardRef((e, n) => {
25
- let { scope: r, children: i } = e;
26
- return /* @__PURE__ */ D(d, {
27
- ref: t(n, c(u, r).collectionRef),
28
- children: i
29
- });
30
- });
31
- f.displayName = u;
32
- let p = e + "CollectionItemSlot", m = "data-radix-collection-item", h = o(p), g = E.forwardRef((e, n) => {
33
- let { scope: r, children: i, ...a } = e, o = E.useRef(null), s = t(n, o), l = c(p, r);
34
- return E.useEffect(() => (l.itemMap.set(o, {
35
- ref: o,
36
- ...a
37
- }), () => void l.itemMap.delete(o))), /* @__PURE__ */ D(h, {
38
- [m]: "",
39
- ref: s,
40
- children: i
41
- });
42
- });
43
- g.displayName = p;
44
- function _(t) {
45
- let n = c(e + "CollectionConsumer", t);
46
- return E.useCallback(() => {
47
- let e = n.collectionRef.current;
48
- if (!e) return [];
49
- let t = Array.from(e.querySelectorAll(`[${m}]`));
50
- return Array.from(n.itemMap.values()).sort((e, n) => t.indexOf(e.ref.current) - t.indexOf(n.ref.current));
51
- }, [n.collectionRef, n.itemMap]);
52
- }
53
- return [
54
- {
55
- Provider: l,
56
- Slot: f,
57
- ItemSlot: g
58
- },
59
- _,
60
- a
61
- ];
62
- }
63
- //#endregion
64
- //#region node_modules/@radix-ui/react-direction/dist/index.mjs
65
- var re = T.createContext(void 0);
66
- function k(e) {
67
- let t = T.useContext(re);
68
- return e || t || "ltr";
69
- }
70
- //#endregion
71
- //#region node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-popper/node_modules/@radix-ui/react-arrow/dist/index.mjs
72
- var A = "Arrow", j = T.forwardRef((e, t) => {
73
- let { children: n, width: i = 10, height: a = 5, ...o } = e;
74
- return /* @__PURE__ */ D(r.svg, {
75
- ...o,
76
- ref: t,
77
- width: i,
78
- height: a,
79
- viewBox: "0 0 30 10",
80
- preserveAspectRatio: "none",
81
- children: e.asChild ? n : /* @__PURE__ */ D("polygon", { points: "0,0 30,0 15,10" })
82
- });
83
- });
84
- j.displayName = A;
85
- var M = j, N = "Popper", [P, ie] = i(N), [ae, oe] = P(N), F = (e) => {
86
- let { __scopePopper: t, children: n } = e, [r, i] = T.useState(null);
87
- return /* @__PURE__ */ D(ae, {
88
- scope: t,
89
- anchor: r,
90
- onAnchorChange: i,
91
- children: n
92
- });
93
- };
94
- F.displayName = N;
95
- var se = "PopperAnchor", I = T.forwardRef((e, n) => {
96
- let { __scopePopper: i, virtualRef: a, ...o } = e, s = oe(se, i), c = T.useRef(null), l = t(n, c), u = T.useRef(null);
97
- return T.useEffect(() => {
98
- let e = u.current;
99
- u.current = a?.current || c.current, e !== u.current && s.onAnchorChange(u.current);
100
- }), a ? null : /* @__PURE__ */ D(r.div, {
101
- ...o,
102
- ref: l
103
- });
104
- });
105
- I.displayName = se;
106
- var ce = "PopperContent", [le, ue] = P(ce), L = T.forwardRef((e, n) => {
107
- let { __scopePopper: i, side: a = "bottom", sideOffset: o = 0, align: c = "center", alignOffset: l = 0, arrowPadding: d = 0, avoidCollisions: f = !0, collisionBoundary: p = [], collisionPadding: S = 0, sticky: C = "partial", hideWhenDetached: w = !1, updatePositionStrategy: ne = "optimized", onPlaced: E, ...O } = e, re = oe(ce, i), [k, A] = T.useState(null), j = t(n, (e) => A(e)), [M, N] = T.useState(null), P = x(M), ie = P?.width ?? 0, ae = P?.height ?? 0, F = a + (c === "center" ? "" : "-" + c), se = typeof S == "number" ? S : {
108
- top: 0,
109
- right: 0,
110
- bottom: 0,
111
- left: 0,
112
- ...S
113
- }, I = Array.isArray(p) ? p : [p], ue = I.length > 0, L = {
114
- padding: se,
115
- boundary: I.filter(me),
116
- altBoundary: ue
117
- }, { refs: de, floatingStyles: fe, placement: pe, isPositioned: R, middlewareData: z } = h({
118
- strategy: "fixed",
119
- placement: F,
120
- whileElementsMounted: (...e) => _(...e, { animationFrame: ne === "always" }),
121
- elements: { reference: re.anchor },
122
- middleware: [
123
- m({
124
- mainAxis: o + ae,
125
- alignmentAxis: l
126
- }),
127
- f && y({
128
- mainAxis: !0,
129
- crossAxis: !1,
130
- limiter: C === "partial" ? g() : void 0,
131
- ...L
132
- }),
133
- f && v({ ...L }),
134
- ee({
135
- ...L,
136
- apply: ({ elements: e, rects: t, availableWidth: n, availableHeight: r }) => {
137
- let { width: i, height: a } = t.reference, o = e.floating.style;
138
- o.setProperty("--radix-popper-available-width", `${n}px`), o.setProperty("--radix-popper-available-height", `${r}px`), o.setProperty("--radix-popper-anchor-width", `${i}px`), o.setProperty("--radix-popper-anchor-height", `${a}px`);
139
- }
140
- }),
141
- M && te({
142
- element: M,
143
- padding: d
144
- }),
145
- he({
146
- arrowWidth: ie,
147
- arrowHeight: ae
148
- }),
149
- w && b({
150
- strategy: "referenceHidden",
151
- ...L
152
- })
153
- ]
154
- }), [_e, ve] = ge(pe), B = u(E);
155
- s(() => {
156
- R && B?.();
157
- }, [R, B]);
158
- let ye = z.arrow?.x, V = z.arrow?.y, H = z.arrow?.centerOffset !== 0, [be, xe] = T.useState();
159
- return s(() => {
160
- k && xe(window.getComputedStyle(k).zIndex);
161
- }, [k]), /* @__PURE__ */ D("div", {
162
- ref: de.setFloating,
163
- "data-radix-popper-content-wrapper": "",
164
- style: {
165
- ...fe,
166
- transform: R ? fe.transform : "translate(0, -200%)",
167
- minWidth: "max-content",
168
- zIndex: be,
169
- "--radix-popper-transform-origin": [z.transformOrigin?.x, z.transformOrigin?.y].join(" "),
170
- ...z.hide?.referenceHidden && {
171
- visibility: "hidden",
172
- pointerEvents: "none"
173
- }
174
- },
175
- dir: e.dir,
176
- children: /* @__PURE__ */ D(le, {
177
- scope: i,
178
- placedSide: _e,
179
- onArrowChange: N,
180
- arrowX: ye,
181
- arrowY: V,
182
- shouldHideArrow: H,
183
- children: /* @__PURE__ */ D(r.div, {
184
- "data-side": _e,
185
- "data-align": ve,
186
- ...O,
187
- ref: j,
188
- style: {
189
- ...O.style,
190
- animation: R ? void 0 : "none"
191
- }
192
- })
193
- })
194
- });
195
- });
196
- L.displayName = ce;
197
- var de = "PopperArrow", fe = {
198
- top: "bottom",
199
- right: "left",
200
- bottom: "top",
201
- left: "right"
202
- }, pe = T.forwardRef(function(e, t) {
203
- let { __scopePopper: n, ...r } = e, i = ue(de, n), a = fe[i.placedSide];
204
- return /* @__PURE__ */ D("span", {
205
- ref: i.onArrowChange,
206
- style: {
207
- position: "absolute",
208
- left: i.arrowX,
209
- top: i.arrowY,
210
- [a]: 0,
211
- transformOrigin: {
212
- top: "",
213
- right: "0 0",
214
- bottom: "center 0",
215
- left: "100% 0"
216
- }[i.placedSide],
217
- transform: {
218
- top: "translateY(100%)",
219
- right: "translateY(50%) rotate(90deg) translateX(-50%)",
220
- bottom: "rotate(180deg)",
221
- left: "translateY(50%) rotate(-90deg) translateX(50%)"
222
- }[i.placedSide],
223
- visibility: i.shouldHideArrow ? "hidden" : void 0
224
- },
225
- children: /* @__PURE__ */ D(M, {
226
- ...r,
227
- ref: t,
228
- style: {
229
- ...r.style,
230
- display: "block"
231
- }
232
- })
233
- });
234
- });
235
- pe.displayName = de;
236
- function me(e) {
237
- return e !== null;
238
- }
239
- var he = (e) => ({
240
- name: "transformOrigin",
241
- options: e,
242
- fn(t) {
243
- let { placement: n, rects: r, middlewareData: i } = t, a = i.arrow?.centerOffset !== 0, o = a ? 0 : e.arrowWidth, s = a ? 0 : e.arrowHeight, [c, l] = ge(n), u = {
244
- start: "0%",
245
- center: "50%",
246
- end: "100%"
247
- }[l], d = (i.arrow?.x ?? 0) + o / 2, f = (i.arrow?.y ?? 0) + s / 2, p = "", m = "";
248
- return c === "bottom" ? (p = a ? u : `${d}px`, m = `${-s}px`) : c === "top" ? (p = a ? u : `${d}px`, m = `${r.floating.height + s}px`) : c === "right" ? (p = `${-s}px`, m = a ? u : `${f}px`) : c === "left" && (p = `${r.floating.width + s}px`, m = a ? u : `${f}px`), { data: {
249
- x: p,
250
- y: m
251
- } };
252
- }
253
- });
254
- function ge(e) {
255
- let [t, n = "center"] = e.split("-");
256
- return [t, n];
257
- }
258
- var R = F, z = I, _e = L, ve = pe, B = "rovingFocusGroup.onEntryFocus", ye = {
259
- bubbles: !1,
260
- cancelable: !0
261
- }, V = "RovingFocusGroup", [H, be, xe] = O(V), [Se, Ce] = i(V, [xe]), [we, Te] = Se(V), Ee = T.forwardRef((e, t) => /* @__PURE__ */ D(H.Provider, {
262
- scope: e.__scopeRovingFocusGroup,
263
- children: /* @__PURE__ */ D(H.Slot, {
264
- scope: e.__scopeRovingFocusGroup,
265
- children: /* @__PURE__ */ D(De, {
266
- ...e,
267
- ref: t
268
- })
269
- })
270
- }));
271
- Ee.displayName = V;
272
- var De = T.forwardRef((e, i) => {
273
- let { __scopeRovingFocusGroup: a, orientation: o, loop: s = !1, dir: l, currentTabStopId: d, defaultCurrentTabStopId: f, onCurrentTabStopIdChange: p, onEntryFocus: m, preventScrollOnEntryFocus: h = !1, ...g } = e, _ = T.useRef(null), v = t(i, _), y = k(l), [b, ee] = c({
274
- prop: d,
275
- defaultProp: f ?? null,
276
- onChange: p,
277
- caller: V
278
- }), [te, x] = T.useState(!1), S = u(m), C = be(a), w = T.useRef(!1), [ne, E] = T.useState(0);
279
- return T.useEffect(() => {
280
- let e = _.current;
281
- if (e) return e.addEventListener(B, S), () => e.removeEventListener(B, S);
282
- }, [S]), /* @__PURE__ */ D(we, {
283
- scope: a,
284
- orientation: o,
285
- dir: y,
286
- loop: s,
287
- currentTabStopId: b,
288
- onItemFocus: T.useCallback((e) => ee(e), [ee]),
289
- onItemShiftTab: T.useCallback(() => x(!0), []),
290
- onFocusableItemAdd: T.useCallback(() => E((e) => e + 1), []),
291
- onFocusableItemRemove: T.useCallback(() => E((e) => e - 1), []),
292
- children: /* @__PURE__ */ D(r.div, {
293
- tabIndex: te || ne === 0 ? -1 : 0,
294
- "data-orientation": o,
295
- ...g,
296
- ref: v,
297
- style: {
298
- outline: "none",
299
- ...e.style
300
- },
301
- onMouseDown: n(e.onMouseDown, () => {
302
- w.current = !0;
303
- }),
304
- onFocus: n(e.onFocus, (e) => {
305
- let t = !w.current;
306
- if (e.target === e.currentTarget && t && !te) {
307
- let t = new CustomEvent(B, ye);
308
- if (e.currentTarget.dispatchEvent(t), !t.defaultPrevented) {
309
- let e = C().filter((e) => e.focusable);
310
- Ne([
311
- e.find((e) => e.active),
312
- e.find((e) => e.id === b),
313
- ...e
314
- ].filter(Boolean).map((e) => e.ref.current), h);
315
- }
316
- }
317
- w.current = !1;
318
- }),
319
- onBlur: n(e.onBlur, () => x(!1))
320
- })
321
- });
322
- }), Oe = "RovingFocusGroupItem", ke = T.forwardRef((e, t) => {
323
- let { __scopeRovingFocusGroup: i, focusable: a = !0, active: o = !1, tabStopId: s, children: c, ...l } = e, u = d(), f = s || u, p = Te(Oe, i), m = p.currentTabStopId === f, h = be(i), { onFocusableItemAdd: g, onFocusableItemRemove: _, currentTabStopId: v } = p;
324
- return T.useEffect(() => {
325
- if (a) return g(), () => _();
326
- }, [
327
- a,
328
- g,
329
- _
330
- ]), /* @__PURE__ */ D(H.ItemSlot, {
331
- scope: i,
332
- id: f,
333
- focusable: a,
334
- active: o,
335
- children: /* @__PURE__ */ D(r.span, {
336
- tabIndex: m ? 0 : -1,
337
- "data-orientation": p.orientation,
338
- ...l,
339
- ref: t,
340
- onMouseDown: n(e.onMouseDown, (e) => {
341
- a ? p.onItemFocus(f) : e.preventDefault();
342
- }),
343
- onFocus: n(e.onFocus, () => p.onItemFocus(f)),
344
- onKeyDown: n(e.onKeyDown, (e) => {
345
- if (e.key === "Tab" && e.shiftKey) {
346
- p.onItemShiftTab();
347
- return;
348
- }
349
- if (e.target !== e.currentTarget) return;
350
- let t = Me(e, p.orientation, p.dir);
351
- if (t !== void 0) {
352
- if (e.metaKey || e.ctrlKey || e.altKey || e.shiftKey) return;
353
- e.preventDefault();
354
- let n = h().filter((e) => e.focusable).map((e) => e.ref.current);
355
- if (t === "last") n.reverse();
356
- else if (t === "prev" || t === "next") {
357
- t === "prev" && n.reverse();
358
- let r = n.indexOf(e.currentTarget);
359
- n = p.loop ? Pe(n, r + 1) : n.slice(r + 1);
360
- }
361
- setTimeout(() => Ne(n));
362
- }
363
- }),
364
- children: typeof c == "function" ? c({
365
- isCurrentTabStop: m,
366
- hasTabStop: v != null
367
- }) : c
368
- })
369
- });
370
- });
371
- ke.displayName = Oe;
372
- var Ae = {
373
- ArrowLeft: "prev",
374
- ArrowUp: "prev",
375
- ArrowRight: "next",
376
- ArrowDown: "next",
377
- PageUp: "first",
378
- Home: "first",
379
- PageDown: "last",
380
- End: "last"
381
- };
382
- function je(e, t) {
383
- return t === "rtl" ? e === "ArrowLeft" ? "ArrowRight" : e === "ArrowRight" ? "ArrowLeft" : e : e;
384
- }
385
- function Me(e, t, n) {
386
- let r = je(e.key, n);
387
- if (!(t === "vertical" && ["ArrowLeft", "ArrowRight"].includes(r)) && !(t === "horizontal" && ["ArrowUp", "ArrowDown"].includes(r))) return Ae[r];
388
- }
389
- function Ne(e, t = !1) {
390
- let n = document.activeElement;
391
- for (let r of e) if (r === n || (r.focus({ preventScroll: t }), document.activeElement !== n)) return;
392
- }
393
- function Pe(e, t) {
394
- return e.map((n, r) => e[(t + r) % e.length]);
395
- }
396
- var Fe = Ee, Ie = ke, Le = ["Enter", " "], Re = [
397
- "ArrowDown",
398
- "PageUp",
399
- "Home"
400
- ], ze = [
401
- "ArrowUp",
402
- "PageDown",
403
- "End"
404
- ], Be = [...Re, ...ze], Ve = {
405
- ltr: [...Le, "ArrowRight"],
406
- rtl: [...Le, "ArrowLeft"]
407
- }, He = {
408
- ltr: ["ArrowLeft"],
409
- rtl: ["ArrowRight"]
410
- }, U = "Menu", [W, Ue, We] = O(U), [G, Ge] = i(U, [
411
- We,
412
- ie,
413
- Ce
414
- ]), K = ie(), Ke = Ce(), [qe, q] = G(U), [Je, J] = G(U), Ye = (e) => {
415
- let { __scopeMenu: t, open: n = !1, children: r, dir: i, onOpenChange: a, modal: o = !0 } = e, s = K(t), [c, l] = T.useState(null), d = T.useRef(!1), f = u(a), p = k(i);
416
- return T.useEffect(() => {
417
- let e = () => {
418
- d.current = !0, document.addEventListener("pointerdown", t, {
419
- capture: !0,
420
- once: !0
421
- }), document.addEventListener("pointermove", t, {
422
- capture: !0,
423
- once: !0
424
- });
425
- }, t = () => d.current = !1;
426
- return document.addEventListener("keydown", e, { capture: !0 }), () => {
427
- document.removeEventListener("keydown", e, { capture: !0 }), document.removeEventListener("pointerdown", t, { capture: !0 }), document.removeEventListener("pointermove", t, { capture: !0 });
428
- };
429
- }, []), /* @__PURE__ */ D(R, {
430
- ...s,
431
- children: /* @__PURE__ */ D(qe, {
432
- scope: t,
433
- open: n,
434
- onOpenChange: f,
435
- content: c,
436
- onContentChange: l,
437
- children: /* @__PURE__ */ D(Je, {
438
- scope: t,
439
- onClose: T.useCallback(() => f(!1), [f]),
440
- isUsingKeyboardRef: d,
441
- dir: p,
442
- modal: o,
443
- children: r
444
- })
445
- })
446
- });
447
- };
448
- Ye.displayName = U;
449
- var Xe = "MenuAnchor", Ze = T.forwardRef((e, t) => {
450
- let { __scopeMenu: n, ...r } = e;
451
- return /* @__PURE__ */ D(z, {
452
- ...K(n),
453
- ...r,
454
- ref: t
455
- });
456
- });
457
- Ze.displayName = Xe;
458
- var Qe = "MenuPortal", [$e, et] = G(Qe, { forceMount: void 0 }), tt = (e) => {
459
- let { __scopeMenu: t, forceMount: n, children: r, container: i } = e, o = q(Qe, t);
460
- return /* @__PURE__ */ D($e, {
461
- scope: t,
462
- forceMount: n,
463
- children: /* @__PURE__ */ D(a, {
464
- present: n || o.open,
465
- children: /* @__PURE__ */ D(p, {
466
- asChild: !0,
467
- container: i,
468
- children: r
469
- })
470
- })
471
- });
472
- };
473
- tt.displayName = Qe;
474
- var Y = "MenuContent", [nt, rt] = G(Y), it = T.forwardRef((e, t) => {
475
- let n = et(Y, e.__scopeMenu), { forceMount: r = n.forceMount, ...i } = e, o = q(Y, e.__scopeMenu), s = J(Y, e.__scopeMenu);
476
- return /* @__PURE__ */ D(W.Provider, {
477
- scope: e.__scopeMenu,
478
- children: /* @__PURE__ */ D(a, {
479
- present: r || o.open,
480
- children: /* @__PURE__ */ D(W.Slot, {
481
- scope: e.__scopeMenu,
482
- children: s.modal ? /* @__PURE__ */ D(at, {
483
- ...i,
484
- ref: t
485
- }) : /* @__PURE__ */ D(ot, {
486
- ...i,
487
- ref: t
488
- })
489
- })
490
- })
491
- });
492
- }), at = T.forwardRef((e, r) => {
493
- let i = q(Y, e.__scopeMenu), a = T.useRef(null), o = t(r, a);
494
- return T.useEffect(() => {
495
- let e = a.current;
496
- if (e) return C(e);
497
- }, []), /* @__PURE__ */ D(ct, {
498
- ...e,
499
- ref: o,
500
- trapFocus: i.open,
501
- disableOutsidePointerEvents: i.open,
502
- disableOutsideScroll: !0,
503
- onFocusOutside: n(e.onFocusOutside, (e) => e.preventDefault(), { checkForDefaultPrevented: !1 }),
504
- onDismiss: () => i.onOpenChange(!1)
505
- });
506
- }), ot = T.forwardRef((e, t) => {
507
- let n = q(Y, e.__scopeMenu);
508
- return /* @__PURE__ */ D(ct, {
509
- ...e,
510
- ref: t,
511
- trapFocus: !1,
512
- disableOutsidePointerEvents: !1,
513
- disableOutsideScroll: !1,
514
- onDismiss: () => n.onOpenChange(!1)
515
- });
516
- }), st = o("MenuContent.ScrollLock"), ct = T.forwardRef((e, r) => {
517
- let { __scopeMenu: i, loop: a = !1, trapFocus: o, onOpenAutoFocus: s, onCloseAutoFocus: c, disableOutsidePointerEvents: l, onEntryFocus: u, onEscapeKeyDown: d, onPointerDownOutside: p, onFocusOutside: m, onInteractOutside: h, onDismiss: g, disableOutsideScroll: _, ...v } = e, y = q(Y, i), b = J(Y, i), ee = K(i), te = Ke(i), x = Ue(i), [C, E] = T.useState(null), O = T.useRef(null), re = t(r, O, y.onContentChange), k = T.useRef(0), A = T.useRef(""), j = T.useRef(0), M = T.useRef(null), N = T.useRef("right"), P = T.useRef(0), ie = _ ? ne : T.Fragment, ae = _ ? {
518
- as: st,
519
- allowPinchZoom: !0
520
- } : void 0, oe = (e) => {
521
- let t = A.current + e, n = x().filter((e) => !e.disabled), r = document.activeElement, i = n.find((e) => e.ref.current === r)?.textValue, a = Wt(n.map((e) => e.textValue), t, i), o = n.find((e) => e.textValue === a)?.ref.current;
522
- (function e(t) {
523
- A.current = t, window.clearTimeout(k.current), t !== "" && (k.current = window.setTimeout(() => e(""), 1e3));
524
- })(t), o && setTimeout(() => o.focus());
525
- };
526
- T.useEffect(() => () => window.clearTimeout(k.current), []), S();
527
- let F = T.useCallback((e) => N.current === M.current?.side && Kt(e, M.current?.area), []);
528
- return /* @__PURE__ */ D(nt, {
529
- scope: i,
530
- searchRef: A,
531
- onItemEnter: T.useCallback((e) => {
532
- F(e) && e.preventDefault();
533
- }, [F]),
534
- onItemLeave: T.useCallback((e) => {
535
- F(e) || (O.current?.focus(), E(null));
536
- }, [F]),
537
- onTriggerLeave: T.useCallback((e) => {
538
- F(e) && e.preventDefault();
539
- }, [F]),
540
- pointerGraceTimerRef: j,
541
- onPointerGraceIntentChange: T.useCallback((e) => {
542
- M.current = e;
543
- }, []),
544
- children: /* @__PURE__ */ D(ie, {
545
- ...ae,
546
- children: /* @__PURE__ */ D(w, {
547
- asChild: !0,
548
- trapped: o,
549
- onMountAutoFocus: n(s, (e) => {
550
- e.preventDefault(), O.current?.focus({ preventScroll: !0 });
551
- }),
552
- onUnmountAutoFocus: c,
553
- children: /* @__PURE__ */ D(f, {
554
- asChild: !0,
555
- disableOutsidePointerEvents: l,
556
- onEscapeKeyDown: d,
557
- onPointerDownOutside: p,
558
- onFocusOutside: m,
559
- onInteractOutside: h,
560
- onDismiss: g,
561
- children: /* @__PURE__ */ D(Fe, {
562
- asChild: !0,
563
- ...te,
564
- dir: b.dir,
565
- orientation: "vertical",
566
- loop: a,
567
- currentTabStopId: C,
568
- onCurrentTabStopIdChange: E,
569
- onEntryFocus: n(u, (e) => {
570
- b.isUsingKeyboardRef.current || e.preventDefault();
571
- }),
572
- preventScrollOnEntryFocus: !0,
573
- children: /* @__PURE__ */ D(_e, {
574
- role: "menu",
575
- "aria-orientation": "vertical",
576
- "data-state": Bt(y.open),
577
- "data-radix-menu-content": "",
578
- dir: b.dir,
579
- ...ee,
580
- ...v,
581
- ref: re,
582
- style: {
583
- outline: "none",
584
- ...v.style
585
- },
586
- onKeyDown: n(v.onKeyDown, (e) => {
587
- let t = e.target.closest("[data-radix-menu-content]") === e.currentTarget, n = e.ctrlKey || e.altKey || e.metaKey, r = e.key.length === 1;
588
- t && (e.key === "Tab" && e.preventDefault(), !n && r && oe(e.key));
589
- let i = O.current;
590
- if (e.target !== i || !Be.includes(e.key)) return;
591
- e.preventDefault();
592
- let a = x().filter((e) => !e.disabled).map((e) => e.ref.current);
593
- ze.includes(e.key) && a.reverse(), Ht(a);
594
- }),
595
- onBlur: n(e.onBlur, (e) => {
596
- e.currentTarget.contains(e.target) || (window.clearTimeout(k.current), A.current = "");
597
- }),
598
- onPointerMove: n(e.onPointerMove, Q((e) => {
599
- let t = e.target, n = P.current !== e.clientX;
600
- e.currentTarget.contains(t) && n && (N.current = e.clientX > P.current ? "right" : "left", P.current = e.clientX);
601
- }))
602
- })
603
- })
604
- })
605
- })
606
- })
607
- });
608
- });
609
- it.displayName = Y;
610
- var lt = "MenuGroup", ut = T.forwardRef((e, t) => {
611
- let { __scopeMenu: n, ...i } = e;
612
- return /* @__PURE__ */ D(r.div, {
613
- role: "group",
614
- ...i,
615
- ref: t
616
- });
617
- });
618
- ut.displayName = lt;
619
- var dt = "MenuLabel", ft = T.forwardRef((e, t) => {
620
- let { __scopeMenu: n, ...i } = e;
621
- return /* @__PURE__ */ D(r.div, {
622
- ...i,
623
- ref: t
624
- });
625
- });
626
- ft.displayName = dt;
627
- var pt = "MenuItem", mt = "menu.itemSelect", ht = T.forwardRef((r, i) => {
628
- let { disabled: a = !1, onSelect: o, ...s } = r, c = T.useRef(null), l = J(pt, r.__scopeMenu), u = rt(pt, r.__scopeMenu), d = t(i, c), f = T.useRef(!1), p = () => {
629
- let t = c.current;
630
- if (!a && t) {
631
- let n = new CustomEvent(mt, {
632
- bubbles: !0,
633
- cancelable: !0
634
- });
635
- t.addEventListener(mt, (e) => o?.(e), { once: !0 }), e(t, n), n.defaultPrevented ? f.current = !1 : l.onClose();
636
- }
637
- };
638
- return /* @__PURE__ */ D(gt, {
639
- ...s,
640
- ref: d,
641
- disabled: a,
642
- onClick: n(r.onClick, p),
643
- onPointerDown: (e) => {
644
- r.onPointerDown?.(e), f.current = !0;
645
- },
646
- onPointerUp: n(r.onPointerUp, (e) => {
647
- f.current || e.currentTarget?.click();
648
- }),
649
- onKeyDown: n(r.onKeyDown, (e) => {
650
- let t = u.searchRef.current !== "";
651
- a || t && e.key === " " || Le.includes(e.key) && (e.currentTarget.click(), e.preventDefault());
652
- })
653
- });
654
- });
655
- ht.displayName = pt;
656
- var gt = T.forwardRef((e, i) => {
657
- let { __scopeMenu: a, disabled: o = !1, textValue: s, ...c } = e, l = rt(pt, a), u = Ke(a), d = T.useRef(null), f = t(i, d), [p, m] = T.useState(!1), [h, g] = T.useState("");
658
- return T.useEffect(() => {
659
- let e = d.current;
660
- e && g((e.textContent ?? "").trim());
661
- }, [c.children]), /* @__PURE__ */ D(W.ItemSlot, {
662
- scope: a,
663
- disabled: o,
664
- textValue: s ?? h,
665
- children: /* @__PURE__ */ D(Ie, {
666
- asChild: !0,
667
- ...u,
668
- focusable: !o,
669
- children: /* @__PURE__ */ D(r.div, {
670
- role: "menuitem",
671
- "data-highlighted": p ? "" : void 0,
672
- "aria-disabled": o || void 0,
673
- "data-disabled": o ? "" : void 0,
674
- ...c,
675
- ref: f,
676
- onPointerMove: n(e.onPointerMove, Q((e) => {
677
- o ? l.onItemLeave(e) : (l.onItemEnter(e), e.defaultPrevented || e.currentTarget.focus({ preventScroll: !0 }));
678
- })),
679
- onPointerLeave: n(e.onPointerLeave, Q((e) => l.onItemLeave(e))),
680
- onFocus: n(e.onFocus, () => m(!0)),
681
- onBlur: n(e.onBlur, () => m(!1))
682
- })
683
- })
684
- });
685
- }), _t = "MenuCheckboxItem", vt = T.forwardRef((e, t) => {
686
- let { checked: r = !1, onCheckedChange: i, ...a } = e;
687
- return /* @__PURE__ */ D(Et, {
688
- scope: e.__scopeMenu,
689
- checked: r,
690
- children: /* @__PURE__ */ D(ht, {
691
- role: "menuitemcheckbox",
692
- "aria-checked": Z(r) ? "mixed" : r,
693
- ...a,
694
- ref: t,
695
- "data-state": Vt(r),
696
- onSelect: n(a.onSelect, () => i?.(Z(r) ? !0 : !r), { checkForDefaultPrevented: !1 })
697
- })
698
- });
699
- });
700
- vt.displayName = _t;
701
- var yt = "MenuRadioGroup", [bt, xt] = G(yt, {
702
- value: void 0,
703
- onValueChange: () => {}
704
- }), St = T.forwardRef((e, t) => {
705
- let { value: n, onValueChange: r, ...i } = e, a = u(r);
706
- return /* @__PURE__ */ D(bt, {
707
- scope: e.__scopeMenu,
708
- value: n,
709
- onValueChange: a,
710
- children: /* @__PURE__ */ D(ut, {
711
- ...i,
712
- ref: t
713
- })
714
- });
715
- });
716
- St.displayName = yt;
717
- var Ct = "MenuRadioItem", wt = T.forwardRef((e, t) => {
718
- let { value: r, ...i } = e, a = xt(Ct, e.__scopeMenu), o = r === a.value;
719
- return /* @__PURE__ */ D(Et, {
720
- scope: e.__scopeMenu,
721
- checked: o,
722
- children: /* @__PURE__ */ D(ht, {
723
- role: "menuitemradio",
724
- "aria-checked": o,
725
- ...i,
726
- ref: t,
727
- "data-state": Vt(o),
728
- onSelect: n(i.onSelect, () => a.onValueChange?.(r), { checkForDefaultPrevented: !1 })
729
- })
730
- });
731
- });
732
- wt.displayName = Ct;
733
- var Tt = "MenuItemIndicator", [Et, Dt] = G(Tt, { checked: !1 }), Ot = T.forwardRef((e, t) => {
734
- let { __scopeMenu: n, forceMount: i, ...o } = e, s = Dt(Tt, n);
735
- return /* @__PURE__ */ D(a, {
736
- present: i || Z(s.checked) || s.checked === !0,
737
- children: /* @__PURE__ */ D(r.span, {
738
- ...o,
739
- ref: t,
740
- "data-state": Vt(s.checked)
741
- })
742
- });
743
- });
744
- Ot.displayName = Tt;
745
- var kt = "MenuSeparator", At = T.forwardRef((e, t) => {
746
- let { __scopeMenu: n, ...i } = e;
747
- return /* @__PURE__ */ D(r.div, {
748
- role: "separator",
749
- "aria-orientation": "horizontal",
750
- ...i,
751
- ref: t
752
- });
753
- });
754
- At.displayName = kt;
755
- var jt = "MenuArrow", Mt = T.forwardRef((e, t) => {
756
- let { __scopeMenu: n, ...r } = e;
757
- return /* @__PURE__ */ D(ve, {
758
- ...K(n),
759
- ...r,
760
- ref: t
761
- });
762
- });
763
- Mt.displayName = jt;
764
- var Nt = "MenuSub", [Pt, Ft] = G(Nt), It = (e) => {
765
- let { __scopeMenu: t, children: n, open: r = !1, onOpenChange: i } = e, a = q(Nt, t), o = K(t), [s, c] = T.useState(null), [l, f] = T.useState(null), p = u(i);
766
- return T.useEffect(() => (a.open === !1 && p(!1), () => p(!1)), [a.open, p]), /* @__PURE__ */ D(R, {
767
- ...o,
768
- children: /* @__PURE__ */ D(qe, {
769
- scope: t,
770
- open: r,
771
- onOpenChange: p,
772
- content: l,
773
- onContentChange: f,
774
- children: /* @__PURE__ */ D(Pt, {
775
- scope: t,
776
- contentId: d(),
777
- triggerId: d(),
778
- trigger: s,
779
- onTriggerChange: c,
780
- children: n
781
- })
782
- })
783
- });
784
- };
785
- It.displayName = Nt;
786
- var X = "MenuSubTrigger", Lt = T.forwardRef((e, t) => {
787
- let r = q(X, e.__scopeMenu), i = J(X, e.__scopeMenu), a = Ft(X, e.__scopeMenu), o = rt(X, e.__scopeMenu), s = T.useRef(null), { pointerGraceTimerRef: c, onPointerGraceIntentChange: u } = o, d = { __scopeMenu: e.__scopeMenu }, f = T.useCallback(() => {
788
- s.current && window.clearTimeout(s.current), s.current = null;
789
- }, []);
790
- return T.useEffect(() => f, [f]), T.useEffect(() => {
791
- let e = c.current;
792
- return () => {
793
- window.clearTimeout(e), u(null);
794
- };
795
- }, [c, u]), /* @__PURE__ */ D(Ze, {
796
- asChild: !0,
797
- ...d,
798
- children: /* @__PURE__ */ D(gt, {
799
- id: a.triggerId,
800
- "aria-haspopup": "menu",
801
- "aria-expanded": r.open,
802
- "aria-controls": a.contentId,
803
- "data-state": Bt(r.open),
804
- ...e,
805
- ref: l(t, a.onTriggerChange),
806
- onClick: (t) => {
807
- e.onClick?.(t), !(e.disabled || t.defaultPrevented) && (t.currentTarget.focus(), r.open || r.onOpenChange(!0));
808
- },
809
- onPointerMove: n(e.onPointerMove, Q((t) => {
810
- o.onItemEnter(t), !t.defaultPrevented && !e.disabled && !r.open && !s.current && (o.onPointerGraceIntentChange(null), s.current = window.setTimeout(() => {
811
- r.onOpenChange(!0), f();
812
- }, 100));
813
- })),
814
- onPointerLeave: n(e.onPointerLeave, Q((e) => {
815
- f();
816
- let t = r.content?.getBoundingClientRect();
817
- if (t) {
818
- let n = r.content?.dataset.side, i = n === "right", a = i ? -5 : 5, s = t[i ? "left" : "right"], l = t[i ? "right" : "left"];
819
- o.onPointerGraceIntentChange({
820
- area: [
821
- {
822
- x: e.clientX + a,
823
- y: e.clientY
824
- },
825
- {
826
- x: s,
827
- y: t.top
828
- },
829
- {
830
- x: l,
831
- y: t.top
832
- },
833
- {
834
- x: l,
835
- y: t.bottom
836
- },
837
- {
838
- x: s,
839
- y: t.bottom
840
- }
841
- ],
842
- side: n
843
- }), window.clearTimeout(c.current), c.current = window.setTimeout(() => o.onPointerGraceIntentChange(null), 300);
844
- } else {
845
- if (o.onTriggerLeave(e), e.defaultPrevented) return;
846
- o.onPointerGraceIntentChange(null);
847
- }
848
- })),
849
- onKeyDown: n(e.onKeyDown, (t) => {
850
- let n = o.searchRef.current !== "";
851
- e.disabled || n && t.key === " " || Ve[i.dir].includes(t.key) && (r.onOpenChange(!0), r.content?.focus(), t.preventDefault());
852
- })
853
- })
854
- });
855
- });
856
- Lt.displayName = X;
857
- var Rt = "MenuSubContent", zt = T.forwardRef((e, r) => {
858
- let i = et(Y, e.__scopeMenu), { forceMount: o = i.forceMount, ...s } = e, c = q(Y, e.__scopeMenu), l = J(Y, e.__scopeMenu), u = Ft(Rt, e.__scopeMenu), d = T.useRef(null), f = t(r, d);
859
- return /* @__PURE__ */ D(W.Provider, {
860
- scope: e.__scopeMenu,
861
- children: /* @__PURE__ */ D(a, {
862
- present: o || c.open,
863
- children: /* @__PURE__ */ D(W.Slot, {
864
- scope: e.__scopeMenu,
865
- children: /* @__PURE__ */ D(ct, {
866
- id: u.contentId,
867
- "aria-labelledby": u.triggerId,
868
- ...s,
869
- ref: f,
870
- align: "start",
871
- side: l.dir === "rtl" ? "left" : "right",
872
- disableOutsidePointerEvents: !1,
873
- disableOutsideScroll: !1,
874
- trapFocus: !1,
875
- onOpenAutoFocus: (e) => {
876
- l.isUsingKeyboardRef.current && d.current?.focus(), e.preventDefault();
877
- },
878
- onCloseAutoFocus: (e) => e.preventDefault(),
879
- onFocusOutside: n(e.onFocusOutside, (e) => {
880
- e.target !== u.trigger && c.onOpenChange(!1);
881
- }),
882
- onEscapeKeyDown: n(e.onEscapeKeyDown, (e) => {
883
- l.onClose(), e.preventDefault();
884
- }),
885
- onKeyDown: n(e.onKeyDown, (e) => {
886
- let t = e.currentTarget.contains(e.target), n = He[l.dir].includes(e.key);
887
- t && n && (c.onOpenChange(!1), u.trigger?.focus(), e.preventDefault());
888
- })
889
- })
890
- })
891
- })
892
- });
893
- });
894
- zt.displayName = Rt;
895
- function Bt(e) {
896
- return e ? "open" : "closed";
897
- }
898
- function Z(e) {
899
- return e === "indeterminate";
900
- }
901
- function Vt(e) {
902
- return Z(e) ? "indeterminate" : e ? "checked" : "unchecked";
903
- }
904
- function Ht(e) {
905
- let t = document.activeElement;
906
- for (let n of e) if (n === t || (n.focus(), document.activeElement !== t)) return;
907
- }
908
- function Ut(e, t) {
909
- return e.map((n, r) => e[(t + r) % e.length]);
910
- }
911
- function Wt(e, t, n) {
912
- let r = t.length > 1 && Array.from(t).every((e) => e === t[0]) ? t[0] : t, i = n ? e.indexOf(n) : -1, a = Ut(e, Math.max(i, 0));
913
- r.length === 1 && (a = a.filter((e) => e !== n));
914
- let o = a.find((e) => e.toLowerCase().startsWith(r.toLowerCase()));
915
- return o === n ? void 0 : o;
916
- }
917
- function Gt(e, t) {
918
- let { x: n, y: r } = e, i = !1;
919
- for (let e = 0, a = t.length - 1; e < t.length; a = e++) {
920
- let o = t[e], s = t[a], c = o.x, l = o.y, u = s.x, d = s.y;
921
- l > r != d > r && n < (u - c) * (r - l) / (d - l) + c && (i = !i);
922
- }
923
- return i;
924
- }
925
- function Kt(e, t) {
926
- return t ? Gt({
927
- x: e.clientX,
928
- y: e.clientY
929
- }, t) : !1;
930
- }
931
- function Q(e) {
932
- return (t) => t.pointerType === "mouse" ? e(t) : void 0;
933
- }
934
- var qt = Ye, Jt = Ze, Yt = tt, Xt = it, Zt = ut, Qt = ft, $t = ht, en = vt, tn = St, nn = wt, rn = Ot, an = At, on = Mt, sn = Lt, cn = zt, ln = "DropdownMenu", [un, dn] = i(ln, [Ge]), $ = Ge(), [fn, pn] = un(ln), mn = (e) => {
935
- let { __scopeDropdownMenu: t, children: n, dir: r, open: i, defaultOpen: a, onOpenChange: o, modal: s = !0 } = e, l = $(t), u = T.useRef(null), [f, p] = c({
936
- prop: i,
937
- defaultProp: a ?? !1,
938
- onChange: o,
939
- caller: ln
940
- });
941
- return /* @__PURE__ */ D(fn, {
942
- scope: t,
943
- triggerId: d(),
944
- triggerRef: u,
945
- contentId: d(),
946
- open: f,
947
- onOpenChange: p,
948
- onOpenToggle: T.useCallback(() => p((e) => !e), [p]),
949
- modal: s,
950
- children: /* @__PURE__ */ D(qt, {
951
- ...l,
952
- open: f,
953
- onOpenChange: p,
954
- dir: r,
955
- modal: s,
956
- children: n
957
- })
958
- });
959
- };
960
- mn.displayName = ln;
961
- var hn = "DropdownMenuTrigger", gn = T.forwardRef((e, t) => {
962
- let { __scopeDropdownMenu: i, disabled: a = !1, ...o } = e, s = pn(hn, i);
963
- return /* @__PURE__ */ D(Jt, {
964
- asChild: !0,
965
- ...$(i),
966
- children: /* @__PURE__ */ D(r.button, {
967
- type: "button",
968
- id: s.triggerId,
969
- "aria-haspopup": "menu",
970
- "aria-expanded": s.open,
971
- "aria-controls": s.open ? s.contentId : void 0,
972
- "data-state": s.open ? "open" : "closed",
973
- "data-disabled": a ? "" : void 0,
974
- disabled: a,
975
- ...o,
976
- ref: l(t, s.triggerRef),
977
- onPointerDown: n(e.onPointerDown, (e) => {
978
- !a && e.button === 0 && e.ctrlKey === !1 && (s.onOpenToggle(), s.open || e.preventDefault());
979
- }),
980
- onKeyDown: n(e.onKeyDown, (e) => {
981
- a || (["Enter", " "].includes(e.key) && s.onOpenToggle(), e.key === "ArrowDown" && s.onOpenChange(!0), [
982
- "Enter",
983
- " ",
984
- "ArrowDown"
985
- ].includes(e.key) && e.preventDefault());
986
- })
987
- })
988
- });
989
- });
990
- gn.displayName = hn;
991
- var _n = "DropdownMenuPortal", vn = (e) => {
992
- let { __scopeDropdownMenu: t, ...n } = e;
993
- return /* @__PURE__ */ D(Yt, {
994
- ...$(t),
995
- ...n
996
- });
997
- };
998
- vn.displayName = _n;
999
- var yn = "DropdownMenuContent", bn = T.forwardRef((e, t) => {
1000
- let { __scopeDropdownMenu: r, ...i } = e, a = pn(yn, r), o = $(r), s = T.useRef(!1);
1001
- return /* @__PURE__ */ D(Xt, {
1002
- id: a.contentId,
1003
- "aria-labelledby": a.triggerId,
1004
- ...o,
1005
- ...i,
1006
- ref: t,
1007
- onCloseAutoFocus: n(e.onCloseAutoFocus, (e) => {
1008
- s.current || a.triggerRef.current?.focus(), s.current = !1, e.preventDefault();
1009
- }),
1010
- onInteractOutside: n(e.onInteractOutside, (e) => {
1011
- let t = e.detail.originalEvent, n = t.button === 0 && t.ctrlKey === !0, r = t.button === 2 || n;
1012
- (!a.modal || r) && (s.current = !0);
1013
- }),
1014
- style: {
1015
- ...e.style,
1016
- "--radix-dropdown-menu-content-transform-origin": "var(--radix-popper-transform-origin)",
1017
- "--radix-dropdown-menu-content-available-width": "var(--radix-popper-available-width)",
1018
- "--radix-dropdown-menu-content-available-height": "var(--radix-popper-available-height)",
1019
- "--radix-dropdown-menu-trigger-width": "var(--radix-popper-anchor-width)",
1020
- "--radix-dropdown-menu-trigger-height": "var(--radix-popper-anchor-height)"
1021
- }
1022
- });
1023
- });
1024
- bn.displayName = yn;
1025
- var xn = "DropdownMenuGroup", Sn = T.forwardRef((e, t) => {
1026
- let { __scopeDropdownMenu: n, ...r } = e;
1027
- return /* @__PURE__ */ D(Zt, {
1028
- ...$(n),
1029
- ...r,
1030
- ref: t
1031
- });
1032
- });
1033
- Sn.displayName = xn;
1034
- var Cn = "DropdownMenuLabel", wn = T.forwardRef((e, t) => {
1035
- let { __scopeDropdownMenu: n, ...r } = e;
1036
- return /* @__PURE__ */ D(Qt, {
1037
- ...$(n),
1038
- ...r,
1039
- ref: t
1040
- });
1041
- });
1042
- wn.displayName = Cn;
1043
- var Tn = "DropdownMenuItem", En = T.forwardRef((e, t) => {
1044
- let { __scopeDropdownMenu: n, ...r } = e;
1045
- return /* @__PURE__ */ D($t, {
1046
- ...$(n),
1047
- ...r,
1048
- ref: t
1049
- });
1050
- });
1051
- En.displayName = Tn;
1052
- var Dn = "DropdownMenuCheckboxItem", On = T.forwardRef((e, t) => {
1053
- let { __scopeDropdownMenu: n, ...r } = e;
1054
- return /* @__PURE__ */ D(en, {
1055
- ...$(n),
1056
- ...r,
1057
- ref: t
1058
- });
1059
- });
1060
- On.displayName = Dn;
1061
- var kn = "DropdownMenuRadioGroup", An = T.forwardRef((e, t) => {
1062
- let { __scopeDropdownMenu: n, ...r } = e;
1063
- return /* @__PURE__ */ D(tn, {
1064
- ...$(n),
1065
- ...r,
1066
- ref: t
1067
- });
1068
- });
1069
- An.displayName = kn;
1070
- var jn = "DropdownMenuRadioItem", Mn = T.forwardRef((e, t) => {
1071
- let { __scopeDropdownMenu: n, ...r } = e;
1072
- return /* @__PURE__ */ D(nn, {
1073
- ...$(n),
1074
- ...r,
1075
- ref: t
1076
- });
1077
- });
1078
- Mn.displayName = jn;
1079
- var Nn = "DropdownMenuItemIndicator", Pn = T.forwardRef((e, t) => {
1080
- let { __scopeDropdownMenu: n, ...r } = e;
1081
- return /* @__PURE__ */ D(rn, {
1082
- ...$(n),
1083
- ...r,
1084
- ref: t
1085
- });
1086
- });
1087
- Pn.displayName = Nn;
1088
- var Fn = "DropdownMenuSeparator", In = T.forwardRef((e, t) => {
1089
- let { __scopeDropdownMenu: n, ...r } = e;
1090
- return /* @__PURE__ */ D(an, {
1091
- ...$(n),
1092
- ...r,
1093
- ref: t
1094
- });
1095
- });
1096
- In.displayName = Fn;
1097
- var Ln = "DropdownMenuArrow", Rn = T.forwardRef((e, t) => {
1098
- let { __scopeDropdownMenu: n, ...r } = e;
1099
- return /* @__PURE__ */ D(on, {
1100
- ...$(n),
1101
- ...r,
1102
- ref: t
1103
- });
1104
- });
1105
- Rn.displayName = Ln;
1106
- var zn = "DropdownMenuSubTrigger", Bn = T.forwardRef((e, t) => {
1107
- let { __scopeDropdownMenu: n, ...r } = e;
1108
- return /* @__PURE__ */ D(sn, {
1109
- ...$(n),
1110
- ...r,
1111
- ref: t
1112
- });
1113
- });
1114
- Bn.displayName = zn;
1115
- var Vn = "DropdownMenuSubContent", Hn = T.forwardRef((e, t) => {
1116
- let { __scopeDropdownMenu: n, ...r } = e;
1117
- return /* @__PURE__ */ D(cn, {
1118
- ...$(n),
1119
- ...r,
1120
- ref: t,
1121
- style: {
1122
- ...e.style,
1123
- "--radix-dropdown-menu-content-transform-origin": "var(--radix-popper-transform-origin)",
1124
- "--radix-dropdown-menu-content-available-width": "var(--radix-popper-available-width)",
1125
- "--radix-dropdown-menu-content-available-height": "var(--radix-popper-available-height)",
1126
- "--radix-dropdown-menu-trigger-width": "var(--radix-popper-anchor-width)",
1127
- "--radix-dropdown-menu-trigger-height": "var(--radix-popper-anchor-height)"
1128
- }
1129
- });
1130
- });
1131
- Hn.displayName = Vn;
1132
- var Un = mn, Wn = gn, Gn = vn, Kn = bn, qn = Sn, Jn = En, Yn = In;
1133
- //#endregion
1134
- export { Un as a, Gn as i, qn as n, Yn as o, Jn as r, Wn as s, Kn as t };