@pismo/marola 0.0.1-alpha.11 → 0.0.1-alpha.13

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 (68) hide show
  1. package/README.md +1 -1
  2. package/dist/{ClickAwayListener-BKznXF1d.js → ClickAwayListener-HI1G6ob9.js} +2 -1
  3. package/dist/Popup-DFJQc_jn.js +1249 -0
  4. package/dist/{Portal-BcdMtRGF.js → Portal-D__zvwbZ.js} +1 -1
  5. package/dist/SelectButton-DWtqAiwt.js +45 -0
  6. package/dist/Tabs.module-jkH1Qjn7.js +22 -0
  7. package/dist/assets/Button.css +1 -1
  8. package/dist/assets/Chip.css +1 -0
  9. package/dist/assets/IconButton.css +1 -1
  10. package/dist/assets/Input.css +1 -1
  11. package/dist/assets/InputSearch.css +1 -1
  12. package/dist/assets/SelectButton.css +1 -0
  13. package/dist/assets/Typography.css +1 -1
  14. package/dist/combineHooksSlotProps-BHqhiBfc.js +81 -0
  15. package/dist/components/Button/Button.d.ts +5 -2
  16. package/dist/components/Button/Button.js +87 -63
  17. package/dist/components/Button/Button.stories.d.ts +2 -0
  18. package/dist/components/Button/Button.stories.js +8 -8
  19. package/dist/components/Chip/Chip.d.ts +37 -0
  20. package/dist/components/Chip/Chip.js +143 -0
  21. package/dist/components/Chip/Chip.stories.d.ts +40 -0
  22. package/dist/components/Chip/Chip.stories.js +59 -0
  23. package/dist/components/Chip/chip.test.d.ts +1 -0
  24. package/dist/components/Chip/chip.test.js +17303 -0
  25. package/dist/components/Dialog/Dialog.js +13 -12
  26. package/dist/components/Dialog/Dialog.stories.d.ts +3 -3
  27. package/dist/components/Dialog/Dialog.stories.js +9 -9
  28. package/dist/components/Icon/Icon.d.ts +1 -1
  29. package/dist/components/Icon/Icon.js +27 -20
  30. package/dist/components/IconButton/IconButton.d.ts +2 -2
  31. package/dist/components/IconButton/IconButton.js +63 -61
  32. package/dist/components/Input/Input.d.ts +1 -1
  33. package/dist/components/Input/Input.js +32 -32
  34. package/dist/components/InputSearch/InputSearch.d.ts +7 -9
  35. package/dist/components/InputSearch/InputSearch.js +31 -26
  36. package/dist/components/InputSearch/InputSearch.stories.d.ts +21 -4
  37. package/dist/components/InputSearch/InputSearch.stories.js +55 -18
  38. package/dist/components/LoadingSpinner/LoadingSpinner.d.ts +1 -1
  39. package/dist/components/LoadingSpinner/LoadingSpinner.stories.js +6 -6
  40. package/dist/components/PageHeader/PageHeader.stories.js +3 -3
  41. package/dist/components/Select/Select.d.ts +25 -0
  42. package/dist/components/Select/Select.js +860 -0
  43. package/dist/components/Select/Select.stories.d.ts +31 -0
  44. package/dist/components/Select/Select.stories.js +65 -0
  45. package/dist/components/Select/SelectButton.d.ts +13 -0
  46. package/dist/components/Select/SelectButton.js +8 -0
  47. package/dist/components/Snackbar/Snackbar.js +5 -4
  48. package/dist/components/Tabs/Tab.js +180 -6
  49. package/dist/components/Tabs/TabPanel.js +19 -18
  50. package/dist/components/Tabs/Tabs.js +237 -662
  51. package/dist/components/Tooltip/Tooltip.js +89 -1328
  52. package/dist/components/Typography/Typography.d.ts +1 -1
  53. package/dist/components/Typography/Typography.js +76 -74
  54. package/dist/components/Typography/Typography.stories.js +6 -6
  55. package/dist/components/Typography/typography.test.js +196 -11319
  56. package/dist/{index-BNWbc5Kh.js → index-BJ8HbRCy.js} +3109 -3152
  57. package/dist/main.d.ts +2 -0
  58. package/dist/main.js +57 -54
  59. package/dist/react.esm-DGd9_oKA.js +11126 -0
  60. package/dist/useCompoundItem-D1iRfg8D.js +84 -0
  61. package/dist/useEventCallback-vAfOD-oT.js +45 -0
  62. package/dist/useList-ByMguSS_.js +437 -0
  63. package/dist/utils/styleStrings.test.js +1 -1
  64. package/dist/{vi.Y_w82WR8-Df0JUamG.js → vi.Y_w82WR8-XVYrIxgm.js} +2 -1
  65. package/package.json +1 -1
  66. package/dist/Tab-CRwnhsj5.js +0 -254
  67. package/dist/Tabs.module-yYcTJnj6.js +0 -103
  68. package/dist/assets/global.css +0 -1
@@ -0,0 +1,1249 @@
1
+ import { _ as jt, a as ut } from "./objectWithoutPropertiesLoose-D7Cp0Pg_.js";
2
+ import * as b from "react";
3
+ import { useLayoutEffect as zt, useEffect as It } from "react";
4
+ import { g as Ut, a as Xt, u as Yt, b as Kt, P as x, c as Gt, d as Jt } from "./index-CqjC7P5Y.js";
5
+ import { r as Qt } from "./index-BJ8HbRCy.js";
6
+ import { jsx as Z } from "react/jsx-runtime";
7
+ import { u as Zt } from "./useEnhancedEffect-CJGo-L3B.js";
8
+ import { P as qt, H as gt } from "./Portal-D__zvwbZ.js";
9
+ const et = Math.min, z = Math.max, nt = Math.round, q = Math.floor, H = (t) => ({
10
+ x: t,
11
+ y: t
12
+ }), te = {
13
+ left: "right",
14
+ right: "left",
15
+ bottom: "top",
16
+ top: "bottom"
17
+ }, ee = {
18
+ start: "end",
19
+ end: "start"
20
+ };
21
+ function yt(t, e, o) {
22
+ return z(t, et(e, o));
23
+ }
24
+ function st(t, e) {
25
+ return typeof t == "function" ? t(e) : t;
26
+ }
27
+ function I(t) {
28
+ return t.split("-")[0];
29
+ }
30
+ function ct(t) {
31
+ return t.split("-")[1];
32
+ }
33
+ function Ot(t) {
34
+ return t === "x" ? "y" : "x";
35
+ }
36
+ function At(t) {
37
+ return t === "y" ? "height" : "width";
38
+ }
39
+ function lt(t) {
40
+ return ["top", "bottom"].includes(I(t)) ? "y" : "x";
41
+ }
42
+ function Pt(t) {
43
+ return Ot(lt(t));
44
+ }
45
+ function ne(t, e, o) {
46
+ o === void 0 && (o = !1);
47
+ const n = ct(t), i = Pt(t), s = At(i);
48
+ let r = i === "x" ? n === (o ? "end" : "start") ? "right" : "left" : n === "start" ? "bottom" : "top";
49
+ return e.reference[s] > e.floating[s] && (r = ot(r)), [r, ot(r)];
50
+ }
51
+ function oe(t) {
52
+ const e = ot(t);
53
+ return [dt(t), e, dt(e)];
54
+ }
55
+ function dt(t) {
56
+ return t.replace(/start|end/g, (e) => ee[e]);
57
+ }
58
+ function ie(t, e, o) {
59
+ const n = ["left", "right"], i = ["right", "left"], s = ["top", "bottom"], r = ["bottom", "top"];
60
+ switch (t) {
61
+ case "top":
62
+ case "bottom":
63
+ return o ? e ? i : n : e ? n : i;
64
+ case "left":
65
+ case "right":
66
+ return e ? s : r;
67
+ default:
68
+ return [];
69
+ }
70
+ }
71
+ function re(t, e, o, n) {
72
+ const i = ct(t);
73
+ let s = ie(I(t), o === "start", n);
74
+ return i && (s = s.map((r) => r + "-" + i), e && (s = s.concat(s.map(dt)))), s;
75
+ }
76
+ function ot(t) {
77
+ return t.replace(/left|right|bottom|top/g, (e) => te[e]);
78
+ }
79
+ function se(t) {
80
+ return {
81
+ top: 0,
82
+ right: 0,
83
+ bottom: 0,
84
+ left: 0,
85
+ ...t
86
+ };
87
+ }
88
+ function ce(t) {
89
+ return typeof t != "number" ? se(t) : {
90
+ top: t,
91
+ right: t,
92
+ bottom: t,
93
+ left: t
94
+ };
95
+ }
96
+ function it(t) {
97
+ const {
98
+ x: e,
99
+ y: o,
100
+ width: n,
101
+ height: i
102
+ } = t;
103
+ return {
104
+ width: n,
105
+ height: i,
106
+ top: o,
107
+ left: e,
108
+ right: e + n,
109
+ bottom: o + i,
110
+ x: e,
111
+ y: o
112
+ };
113
+ }
114
+ function xt(t, e, o) {
115
+ let {
116
+ reference: n,
117
+ floating: i
118
+ } = t;
119
+ const s = lt(e), r = Pt(e), c = At(r), l = I(e), f = s === "y", a = n.x + n.width / 2 - i.width / 2, u = n.y + n.height / 2 - i.height / 2, m = n[c] / 2 - i[c] / 2;
120
+ let d;
121
+ switch (l) {
122
+ case "top":
123
+ d = {
124
+ x: a,
125
+ y: n.y - i.height
126
+ };
127
+ break;
128
+ case "bottom":
129
+ d = {
130
+ x: a,
131
+ y: n.y + n.height
132
+ };
133
+ break;
134
+ case "right":
135
+ d = {
136
+ x: n.x + n.width,
137
+ y: u
138
+ };
139
+ break;
140
+ case "left":
141
+ d = {
142
+ x: n.x - i.width,
143
+ y: u
144
+ };
145
+ break;
146
+ default:
147
+ d = {
148
+ x: n.x,
149
+ y: n.y
150
+ };
151
+ }
152
+ switch (ct(e)) {
153
+ case "start":
154
+ d[r] -= m * (o && f ? -1 : 1);
155
+ break;
156
+ case "end":
157
+ d[r] += m * (o && f ? -1 : 1);
158
+ break;
159
+ }
160
+ return d;
161
+ }
162
+ const le = async (t, e, o) => {
163
+ const {
164
+ placement: n = "bottom",
165
+ strategy: i = "absolute",
166
+ middleware: s = [],
167
+ platform: r
168
+ } = o, c = s.filter(Boolean), l = await (r.isRTL == null ? void 0 : r.isRTL(e));
169
+ let f = await r.getElementRects({
170
+ reference: t,
171
+ floating: e,
172
+ strategy: i
173
+ }), {
174
+ x: a,
175
+ y: u
176
+ } = xt(f, n, l), m = n, d = {}, h = 0;
177
+ for (let g = 0; g < c.length; g++) {
178
+ const {
179
+ name: w,
180
+ fn: p
181
+ } = c[g], {
182
+ x: y,
183
+ y: R,
184
+ data: C,
185
+ reset: v
186
+ } = await p({
187
+ x: a,
188
+ y: u,
189
+ initialPlacement: n,
190
+ placement: m,
191
+ strategy: i,
192
+ middlewareData: d,
193
+ rects: f,
194
+ platform: r,
195
+ elements: {
196
+ reference: t,
197
+ floating: e
198
+ }
199
+ });
200
+ a = y ?? a, u = R ?? u, d = {
201
+ ...d,
202
+ [w]: {
203
+ ...d[w],
204
+ ...C
205
+ }
206
+ }, v && h <= 50 && (h++, typeof v == "object" && (v.placement && (m = v.placement), v.rects && (f = v.rects === !0 ? await r.getElementRects({
207
+ reference: t,
208
+ floating: e,
209
+ strategy: i
210
+ }) : v.rects), {
211
+ x: a,
212
+ y: u
213
+ } = xt(f, m, l)), g = -1);
214
+ }
215
+ return {
216
+ x: a,
217
+ y: u,
218
+ placement: m,
219
+ strategy: i,
220
+ middlewareData: d
221
+ };
222
+ };
223
+ async function St(t, e) {
224
+ var o;
225
+ e === void 0 && (e = {});
226
+ const {
227
+ x: n,
228
+ y: i,
229
+ platform: s,
230
+ rects: r,
231
+ elements: c,
232
+ strategy: l
233
+ } = t, {
234
+ boundary: f = "clippingAncestors",
235
+ rootBoundary: a = "viewport",
236
+ elementContext: u = "floating",
237
+ altBoundary: m = !1,
238
+ padding: d = 0
239
+ } = st(e, t), h = ce(d), w = c[m ? u === "floating" ? "reference" : "floating" : u], p = it(await s.getClippingRect({
240
+ element: (o = await (s.isElement == null ? void 0 : s.isElement(w))) == null || o ? w : w.contextElement || await (s.getDocumentElement == null ? void 0 : s.getDocumentElement(c.floating)),
241
+ boundary: f,
242
+ rootBoundary: a,
243
+ strategy: l
244
+ })), y = u === "floating" ? {
245
+ x: n,
246
+ y: i,
247
+ width: r.floating.width,
248
+ height: r.floating.height
249
+ } : r.reference, R = await (s.getOffsetParent == null ? void 0 : s.getOffsetParent(c.floating)), C = await (s.isElement == null ? void 0 : s.isElement(R)) ? await (s.getScale == null ? void 0 : s.getScale(R)) || {
250
+ x: 1,
251
+ y: 1
252
+ } : {
253
+ x: 1,
254
+ y: 1
255
+ }, v = it(s.convertOffsetParentRelativeRectToViewportRelativeRect ? await s.convertOffsetParentRelativeRectToViewportRelativeRect({
256
+ elements: c,
257
+ rect: y,
258
+ offsetParent: R,
259
+ strategy: l
260
+ }) : y);
261
+ return {
262
+ top: (p.top - v.top + h.top) / C.y,
263
+ bottom: (v.bottom - p.bottom + h.bottom) / C.y,
264
+ left: (p.left - v.left + h.left) / C.x,
265
+ right: (v.right - p.right + h.right) / C.x
266
+ };
267
+ }
268
+ const fe = function(t) {
269
+ return t === void 0 && (t = {}), {
270
+ name: "flip",
271
+ options: t,
272
+ async fn(e) {
273
+ var o, n;
274
+ const {
275
+ placement: i,
276
+ middlewareData: s,
277
+ rects: r,
278
+ initialPlacement: c,
279
+ platform: l,
280
+ elements: f
281
+ } = e, {
282
+ mainAxis: a = !0,
283
+ crossAxis: u = !0,
284
+ fallbackPlacements: m,
285
+ fallbackStrategy: d = "bestFit",
286
+ fallbackAxisSideDirection: h = "none",
287
+ flipAlignment: g = !0,
288
+ ...w
289
+ } = st(t, e);
290
+ if ((o = s.arrow) != null && o.alignmentOffset)
291
+ return {};
292
+ const p = I(i), y = I(c) === c, R = await (l.isRTL == null ? void 0 : l.isRTL(f.floating)), C = m || (y || !g ? [ot(c)] : oe(c));
293
+ !m && h !== "none" && C.push(...re(c, g, h, R));
294
+ const v = [c, ...C], T = await St(e, w), P = [];
295
+ let L = ((n = s.flip) == null ? void 0 : n.overflows) || [];
296
+ if (a && P.push(T[p]), u) {
297
+ const O = ne(i, r, R);
298
+ P.push(T[O[0]], T[O[1]]);
299
+ }
300
+ if (L = [...L, {
301
+ placement: i,
302
+ overflows: P
303
+ }], !P.every((O) => O <= 0)) {
304
+ var j, _;
305
+ const O = (((j = s.flip) == null ? void 0 : j.index) || 0) + 1, W = v[O];
306
+ if (W)
307
+ return {
308
+ data: {
309
+ index: O,
310
+ overflows: L
311
+ },
312
+ reset: {
313
+ placement: W
314
+ }
315
+ };
316
+ let k = (_ = L.filter((A) => A.overflows[0] <= 0).sort((A, D) => A.overflows[1] - D.overflows[1])[0]) == null ? void 0 : _.placement;
317
+ if (!k)
318
+ switch (d) {
319
+ case "bestFit": {
320
+ var B;
321
+ const A = (B = L.map((D) => [D.placement, D.overflows.filter((E) => E > 0).reduce((E, X) => E + X, 0)]).sort((D, E) => D[1] - E[1])[0]) == null ? void 0 : B[0];
322
+ A && (k = A);
323
+ break;
324
+ }
325
+ case "initialPlacement":
326
+ k = c;
327
+ break;
328
+ }
329
+ if (i !== k)
330
+ return {
331
+ reset: {
332
+ placement: k
333
+ }
334
+ };
335
+ }
336
+ return {};
337
+ }
338
+ };
339
+ };
340
+ async function ae(t, e) {
341
+ const {
342
+ placement: o,
343
+ platform: n,
344
+ elements: i
345
+ } = t, s = await (n.isRTL == null ? void 0 : n.isRTL(i.floating)), r = I(o), c = ct(o), l = lt(o) === "y", f = ["left", "top"].includes(r) ? -1 : 1, a = s && l ? -1 : 1, u = st(e, t);
346
+ let {
347
+ mainAxis: m,
348
+ crossAxis: d,
349
+ alignmentAxis: h
350
+ } = typeof u == "number" ? {
351
+ mainAxis: u,
352
+ crossAxis: 0,
353
+ alignmentAxis: null
354
+ } : {
355
+ mainAxis: 0,
356
+ crossAxis: 0,
357
+ alignmentAxis: null,
358
+ ...u
359
+ };
360
+ return c && typeof h == "number" && (d = c === "end" ? h * -1 : h), l ? {
361
+ x: d * a,
362
+ y: m * f
363
+ } : {
364
+ x: m * f,
365
+ y: d * a
366
+ };
367
+ }
368
+ const ue = function(t) {
369
+ return t === void 0 && (t = 0), {
370
+ name: "offset",
371
+ options: t,
372
+ async fn(e) {
373
+ var o, n;
374
+ const {
375
+ x: i,
376
+ y: s,
377
+ placement: r,
378
+ middlewareData: c
379
+ } = e, l = await ae(e, t);
380
+ return r === ((o = c.offset) == null ? void 0 : o.placement) && (n = c.arrow) != null && n.alignmentOffset ? {} : {
381
+ x: i + l.x,
382
+ y: s + l.y,
383
+ data: {
384
+ ...l,
385
+ placement: r
386
+ }
387
+ };
388
+ }
389
+ };
390
+ }, de = function(t) {
391
+ return t === void 0 && (t = {}), {
392
+ name: "shift",
393
+ options: t,
394
+ async fn(e) {
395
+ const {
396
+ x: o,
397
+ y: n,
398
+ placement: i
399
+ } = e, {
400
+ mainAxis: s = !0,
401
+ crossAxis: r = !1,
402
+ limiter: c = {
403
+ fn: (w) => {
404
+ let {
405
+ x: p,
406
+ y
407
+ } = w;
408
+ return {
409
+ x: p,
410
+ y
411
+ };
412
+ }
413
+ },
414
+ ...l
415
+ } = st(t, e), f = {
416
+ x: o,
417
+ y: n
418
+ }, a = await St(e, l), u = lt(I(i)), m = Ot(u);
419
+ let d = f[m], h = f[u];
420
+ if (s) {
421
+ const w = m === "y" ? "top" : "left", p = m === "y" ? "bottom" : "right", y = d + a[w], R = d - a[p];
422
+ d = yt(y, d, R);
423
+ }
424
+ if (r) {
425
+ const w = u === "y" ? "top" : "left", p = u === "y" ? "bottom" : "right", y = h + a[w], R = h - a[p];
426
+ h = yt(y, h, R);
427
+ }
428
+ const g = c.fn({
429
+ ...e,
430
+ [m]: d,
431
+ [u]: h
432
+ });
433
+ return {
434
+ ...g,
435
+ data: {
436
+ x: g.x - o,
437
+ y: g.y - n
438
+ }
439
+ };
440
+ }
441
+ };
442
+ };
443
+ function $(t) {
444
+ return Lt(t) ? (t.nodeName || "").toLowerCase() : "#document";
445
+ }
446
+ function S(t) {
447
+ var e;
448
+ return (t == null || (e = t.ownerDocument) == null ? void 0 : e.defaultView) || window;
449
+ }
450
+ function V(t) {
451
+ var e;
452
+ return (e = (Lt(t) ? t.ownerDocument : t.document) || window.document) == null ? void 0 : e.documentElement;
453
+ }
454
+ function Lt(t) {
455
+ return t instanceof Node || t instanceof S(t).Node;
456
+ }
457
+ function N(t) {
458
+ return t instanceof Element || t instanceof S(t).Element;
459
+ }
460
+ function F(t) {
461
+ return t instanceof HTMLElement || t instanceof S(t).HTMLElement;
462
+ }
463
+ function wt(t) {
464
+ return typeof ShadowRoot > "u" ? !1 : t instanceof ShadowRoot || t instanceof S(t).ShadowRoot;
465
+ }
466
+ function Q(t) {
467
+ const {
468
+ overflow: e,
469
+ overflowX: o,
470
+ overflowY: n,
471
+ display: i
472
+ } = M(t);
473
+ return /auto|scroll|overlay|hidden|clip/.test(e + n + o) && !["inline", "contents"].includes(i);
474
+ }
475
+ function me(t) {
476
+ return ["table", "td", "th"].includes($(t));
477
+ }
478
+ function mt(t) {
479
+ const e = pt(), o = M(t);
480
+ return o.transform !== "none" || o.perspective !== "none" || (o.containerType ? o.containerType !== "normal" : !1) || !e && (o.backdropFilter ? o.backdropFilter !== "none" : !1) || !e && (o.filter ? o.filter !== "none" : !1) || ["transform", "perspective", "filter"].some((n) => (o.willChange || "").includes(n)) || ["paint", "layout", "strict", "content"].some((n) => (o.contain || "").includes(n));
481
+ }
482
+ function pe(t) {
483
+ let e = G(t);
484
+ for (; F(e) && !ft(e); ) {
485
+ if (mt(e))
486
+ return e;
487
+ e = G(e);
488
+ }
489
+ return null;
490
+ }
491
+ function pt() {
492
+ return typeof CSS > "u" || !CSS.supports ? !1 : CSS.supports("-webkit-backdrop-filter", "none");
493
+ }
494
+ function ft(t) {
495
+ return ["html", "body", "#document"].includes($(t));
496
+ }
497
+ function M(t) {
498
+ return S(t).getComputedStyle(t);
499
+ }
500
+ function at(t) {
501
+ return N(t) ? {
502
+ scrollLeft: t.scrollLeft,
503
+ scrollTop: t.scrollTop
504
+ } : {
505
+ scrollLeft: t.pageXOffset,
506
+ scrollTop: t.pageYOffset
507
+ };
508
+ }
509
+ function G(t) {
510
+ if ($(t) === "html")
511
+ return t;
512
+ const e = (
513
+ // Step into the shadow DOM of the parent of a slotted node.
514
+ t.assignedSlot || // DOM Element detected.
515
+ t.parentNode || // ShadowRoot detected.
516
+ wt(t) && t.host || // Fallback.
517
+ V(t)
518
+ );
519
+ return wt(e) ? e.host : e;
520
+ }
521
+ function Mt(t) {
522
+ const e = G(t);
523
+ return ft(e) ? t.ownerDocument ? t.ownerDocument.body : t.body : F(e) && Q(e) ? e : Mt(e);
524
+ }
525
+ function J(t, e, o) {
526
+ var n;
527
+ e === void 0 && (e = []), o === void 0 && (o = !0);
528
+ const i = Mt(t), s = i === ((n = t.ownerDocument) == null ? void 0 : n.body), r = S(i);
529
+ return s ? e.concat(r, r.visualViewport || [], Q(i) ? i : [], r.frameElement && o ? J(r.frameElement) : []) : e.concat(i, J(i, [], o));
530
+ }
531
+ function kt(t) {
532
+ const e = M(t);
533
+ let o = parseFloat(e.width) || 0, n = parseFloat(e.height) || 0;
534
+ const i = F(t), s = i ? t.offsetWidth : o, r = i ? t.offsetHeight : n, c = nt(o) !== s || nt(n) !== r;
535
+ return c && (o = s, n = r), {
536
+ width: o,
537
+ height: n,
538
+ $: c
539
+ };
540
+ }
541
+ function ht(t) {
542
+ return N(t) ? t : t.contextElement;
543
+ }
544
+ function K(t) {
545
+ const e = ht(t);
546
+ if (!F(e))
547
+ return H(1);
548
+ const o = e.getBoundingClientRect(), {
549
+ width: n,
550
+ height: i,
551
+ $: s
552
+ } = kt(e);
553
+ let r = (s ? nt(o.width) : o.width) / n, c = (s ? nt(o.height) : o.height) / i;
554
+ return (!r || !Number.isFinite(r)) && (r = 1), (!c || !Number.isFinite(c)) && (c = 1), {
555
+ x: r,
556
+ y: c
557
+ };
558
+ }
559
+ const he = /* @__PURE__ */ H(0);
560
+ function Dt(t) {
561
+ const e = S(t);
562
+ return !pt() || !e.visualViewport ? he : {
563
+ x: e.visualViewport.offsetLeft,
564
+ y: e.visualViewport.offsetTop
565
+ };
566
+ }
567
+ function ge(t, e, o) {
568
+ return e === void 0 && (e = !1), !o || e && o !== S(t) ? !1 : e;
569
+ }
570
+ function U(t, e, o, n) {
571
+ e === void 0 && (e = !1), o === void 0 && (o = !1);
572
+ const i = t.getBoundingClientRect(), s = ht(t);
573
+ let r = H(1);
574
+ e && (n ? N(n) && (r = K(n)) : r = K(t));
575
+ const c = ge(s, o, n) ? Dt(s) : H(0);
576
+ let l = (i.left + c.x) / r.x, f = (i.top + c.y) / r.y, a = i.width / r.x, u = i.height / r.y;
577
+ if (s) {
578
+ const m = S(s), d = n && N(n) ? S(n) : n;
579
+ let h = m, g = h.frameElement;
580
+ for (; g && n && d !== h; ) {
581
+ const w = K(g), p = g.getBoundingClientRect(), y = M(g), R = p.left + (g.clientLeft + parseFloat(y.paddingLeft)) * w.x, C = p.top + (g.clientTop + parseFloat(y.paddingTop)) * w.y;
582
+ l *= w.x, f *= w.y, a *= w.x, u *= w.y, l += R, f += C, h = S(g), g = h.frameElement;
583
+ }
584
+ }
585
+ return it({
586
+ width: a,
587
+ height: u,
588
+ x: l,
589
+ y: f
590
+ });
591
+ }
592
+ const ye = [":popover-open", ":modal"];
593
+ function Ft(t) {
594
+ return ye.some((e) => {
595
+ try {
596
+ return t.matches(e);
597
+ } catch {
598
+ return !1;
599
+ }
600
+ });
601
+ }
602
+ function xe(t) {
603
+ let {
604
+ elements: e,
605
+ rect: o,
606
+ offsetParent: n,
607
+ strategy: i
608
+ } = t;
609
+ const s = i === "fixed", r = V(n), c = e ? Ft(e.floating) : !1;
610
+ if (n === r || c && s)
611
+ return o;
612
+ let l = {
613
+ scrollLeft: 0,
614
+ scrollTop: 0
615
+ }, f = H(1);
616
+ const a = H(0), u = F(n);
617
+ if ((u || !u && !s) && (($(n) !== "body" || Q(r)) && (l = at(n)), F(n))) {
618
+ const m = U(n);
619
+ f = K(n), a.x = m.x + n.clientLeft, a.y = m.y + n.clientTop;
620
+ }
621
+ return {
622
+ width: o.width * f.x,
623
+ height: o.height * f.y,
624
+ x: o.x * f.x - l.scrollLeft * f.x + a.x,
625
+ y: o.y * f.y - l.scrollTop * f.y + a.y
626
+ };
627
+ }
628
+ function we(t) {
629
+ return Array.from(t.getClientRects());
630
+ }
631
+ function Nt(t) {
632
+ return U(V(t)).left + at(t).scrollLeft;
633
+ }
634
+ function ve(t) {
635
+ const e = V(t), o = at(t), n = t.ownerDocument.body, i = z(e.scrollWidth, e.clientWidth, n.scrollWidth, n.clientWidth), s = z(e.scrollHeight, e.clientHeight, n.scrollHeight, n.clientHeight);
636
+ let r = -o.scrollLeft + Nt(t);
637
+ const c = -o.scrollTop;
638
+ return M(n).direction === "rtl" && (r += z(e.clientWidth, n.clientWidth) - i), {
639
+ width: i,
640
+ height: s,
641
+ x: r,
642
+ y: c
643
+ };
644
+ }
645
+ function be(t, e) {
646
+ const o = S(t), n = V(t), i = o.visualViewport;
647
+ let s = n.clientWidth, r = n.clientHeight, c = 0, l = 0;
648
+ if (i) {
649
+ s = i.width, r = i.height;
650
+ const f = pt();
651
+ (!f || f && e === "fixed") && (c = i.offsetLeft, l = i.offsetTop);
652
+ }
653
+ return {
654
+ width: s,
655
+ height: r,
656
+ x: c,
657
+ y: l
658
+ };
659
+ }
660
+ function Re(t, e) {
661
+ const o = U(t, !0, e === "fixed"), n = o.top + t.clientTop, i = o.left + t.clientLeft, s = F(t) ? K(t) : H(1), r = t.clientWidth * s.x, c = t.clientHeight * s.y, l = i * s.x, f = n * s.y;
662
+ return {
663
+ width: r,
664
+ height: c,
665
+ x: l,
666
+ y: f
667
+ };
668
+ }
669
+ function vt(t, e, o) {
670
+ let n;
671
+ if (e === "viewport")
672
+ n = be(t, o);
673
+ else if (e === "document")
674
+ n = ve(V(t));
675
+ else if (N(e))
676
+ n = Re(e, o);
677
+ else {
678
+ const i = Dt(t);
679
+ n = {
680
+ ...e,
681
+ x: e.x - i.x,
682
+ y: e.y - i.y
683
+ };
684
+ }
685
+ return it(n);
686
+ }
687
+ function Vt(t, e) {
688
+ const o = G(t);
689
+ return o === e || !N(o) || ft(o) ? !1 : M(o).position === "fixed" || Vt(o, e);
690
+ }
691
+ function Ce(t, e) {
692
+ const o = e.get(t);
693
+ if (o)
694
+ return o;
695
+ let n = J(t, [], !1).filter((c) => N(c) && $(c) !== "body"), i = null;
696
+ const s = M(t).position === "fixed";
697
+ let r = s ? G(t) : t;
698
+ for (; N(r) && !ft(r); ) {
699
+ const c = M(r), l = mt(r);
700
+ !l && c.position === "fixed" && (i = null), (s ? !l && !i : !l && c.position === "static" && !!i && ["absolute", "fixed"].includes(i.position) || Q(r) && !l && Vt(t, r)) ? n = n.filter((a) => a !== r) : i = c, r = G(r);
701
+ }
702
+ return e.set(t, n), n;
703
+ }
704
+ function Ee(t) {
705
+ let {
706
+ element: e,
707
+ boundary: o,
708
+ rootBoundary: n,
709
+ strategy: i
710
+ } = t;
711
+ const r = [...o === "clippingAncestors" ? Ce(e, this._c) : [].concat(o), n], c = r[0], l = r.reduce((f, a) => {
712
+ const u = vt(e, a, i);
713
+ return f.top = z(u.top, f.top), f.right = et(u.right, f.right), f.bottom = et(u.bottom, f.bottom), f.left = z(u.left, f.left), f;
714
+ }, vt(e, c, i));
715
+ return {
716
+ width: l.right - l.left,
717
+ height: l.bottom - l.top,
718
+ x: l.left,
719
+ y: l.top
720
+ };
721
+ }
722
+ function Te(t) {
723
+ const {
724
+ width: e,
725
+ height: o
726
+ } = kt(t);
727
+ return {
728
+ width: e,
729
+ height: o
730
+ };
731
+ }
732
+ function Oe(t, e, o) {
733
+ const n = F(e), i = V(e), s = o === "fixed", r = U(t, !0, s, e);
734
+ let c = {
735
+ scrollLeft: 0,
736
+ scrollTop: 0
737
+ };
738
+ const l = H(0);
739
+ if (n || !n && !s)
740
+ if (($(e) !== "body" || Q(i)) && (c = at(e)), n) {
741
+ const u = U(e, !0, s, e);
742
+ l.x = u.x + e.clientLeft, l.y = u.y + e.clientTop;
743
+ } else
744
+ i && (l.x = Nt(i));
745
+ const f = r.left + c.scrollLeft - l.x, a = r.top + c.scrollTop - l.y;
746
+ return {
747
+ x: f,
748
+ y: a,
749
+ width: r.width,
750
+ height: r.height
751
+ };
752
+ }
753
+ function bt(t, e) {
754
+ return !F(t) || M(t).position === "fixed" ? null : e ? e(t) : t.offsetParent;
755
+ }
756
+ function _t(t, e) {
757
+ const o = S(t);
758
+ if (!F(t) || Ft(t))
759
+ return o;
760
+ let n = bt(t, e);
761
+ for (; n && me(n) && M(n).position === "static"; )
762
+ n = bt(n, e);
763
+ return n && ($(n) === "html" || $(n) === "body" && M(n).position === "static" && !mt(n)) ? o : n || pe(t) || o;
764
+ }
765
+ const Ae = async function(t) {
766
+ const e = this.getOffsetParent || _t, o = this.getDimensions, n = await o(t.floating);
767
+ return {
768
+ reference: Oe(t.reference, await e(t.floating), t.strategy),
769
+ floating: {
770
+ x: 0,
771
+ y: 0,
772
+ width: n.width,
773
+ height: n.height
774
+ }
775
+ };
776
+ };
777
+ function Pe(t) {
778
+ return M(t).direction === "rtl";
779
+ }
780
+ const Se = {
781
+ convertOffsetParentRelativeRectToViewportRelativeRect: xe,
782
+ getDocumentElement: V,
783
+ getClippingRect: Ee,
784
+ getOffsetParent: _t,
785
+ getElementRects: Ae,
786
+ getClientRects: we,
787
+ getDimensions: Te,
788
+ getScale: K,
789
+ isElement: N,
790
+ isRTL: Pe
791
+ };
792
+ function Le(t, e) {
793
+ let o = null, n;
794
+ const i = V(t);
795
+ function s() {
796
+ var c;
797
+ clearTimeout(n), (c = o) == null || c.disconnect(), o = null;
798
+ }
799
+ function r(c, l) {
800
+ c === void 0 && (c = !1), l === void 0 && (l = 1), s();
801
+ const {
802
+ left: f,
803
+ top: a,
804
+ width: u,
805
+ height: m
806
+ } = t.getBoundingClientRect();
807
+ if (c || e(), !u || !m)
808
+ return;
809
+ const d = q(a), h = q(i.clientWidth - (f + u)), g = q(i.clientHeight - (a + m)), w = q(f), y = {
810
+ rootMargin: -d + "px " + -h + "px " + -g + "px " + -w + "px",
811
+ threshold: z(0, et(1, l)) || 1
812
+ };
813
+ let R = !0;
814
+ function C(v) {
815
+ const T = v[0].intersectionRatio;
816
+ if (T !== l) {
817
+ if (!R)
818
+ return r();
819
+ T ? r(!1, T) : n = setTimeout(() => {
820
+ r(!1, 1e-7);
821
+ }, 1e3);
822
+ }
823
+ R = !1;
824
+ }
825
+ try {
826
+ o = new IntersectionObserver(C, {
827
+ ...y,
828
+ // Handle <iframe>s
829
+ root: i.ownerDocument
830
+ });
831
+ } catch {
832
+ o = new IntersectionObserver(C, y);
833
+ }
834
+ o.observe(t);
835
+ }
836
+ return r(!0), s;
837
+ }
838
+ function Rt(t, e, o, n) {
839
+ n === void 0 && (n = {});
840
+ const {
841
+ ancestorScroll: i = !0,
842
+ ancestorResize: s = !0,
843
+ elementResize: r = typeof ResizeObserver == "function",
844
+ layoutShift: c = typeof IntersectionObserver == "function",
845
+ animationFrame: l = !1
846
+ } = n, f = ht(t), a = i || s ? [...f ? J(f) : [], ...J(e)] : [];
847
+ a.forEach((p) => {
848
+ i && p.addEventListener("scroll", o, {
849
+ passive: !0
850
+ }), s && p.addEventListener("resize", o);
851
+ });
852
+ const u = f && c ? Le(f, o) : null;
853
+ let m = -1, d = null;
854
+ r && (d = new ResizeObserver((p) => {
855
+ let [y] = p;
856
+ y && y.target === f && d && (d.unobserve(e), cancelAnimationFrame(m), m = requestAnimationFrame(() => {
857
+ var R;
858
+ (R = d) == null || R.observe(e);
859
+ })), o();
860
+ }), f && !l && d.observe(f), d.observe(e));
861
+ let h, g = l ? U(t) : null;
862
+ l && w();
863
+ function w() {
864
+ const p = U(t);
865
+ g && (p.x !== g.x || p.y !== g.y || p.width !== g.width || p.height !== g.height) && o(), g = p, h = requestAnimationFrame(w);
866
+ }
867
+ return o(), () => {
868
+ var p;
869
+ a.forEach((y) => {
870
+ i && y.removeEventListener("scroll", o), s && y.removeEventListener("resize", o);
871
+ }), u == null || u(), (p = d) == null || p.disconnect(), d = null, l && cancelAnimationFrame(h);
872
+ };
873
+ }
874
+ const Ct = ue, Me = de, ke = fe, De = (t, e, o) => {
875
+ const n = /* @__PURE__ */ new Map(), i = {
876
+ platform: Se,
877
+ ...o
878
+ }, s = {
879
+ ...i.platform,
880
+ _c: n
881
+ };
882
+ return le(t, e, {
883
+ ...i,
884
+ platform: s
885
+ });
886
+ };
887
+ var tt = typeof document < "u" ? zt : It;
888
+ function rt(t, e) {
889
+ if (t === e)
890
+ return !0;
891
+ if (typeof t != typeof e)
892
+ return !1;
893
+ if (typeof t == "function" && t.toString() === e.toString())
894
+ return !0;
895
+ let o, n, i;
896
+ if (t && e && typeof t == "object") {
897
+ if (Array.isArray(t)) {
898
+ if (o = t.length, o !== e.length)
899
+ return !1;
900
+ for (n = o; n-- !== 0; )
901
+ if (!rt(t[n], e[n]))
902
+ return !1;
903
+ return !0;
904
+ }
905
+ if (i = Object.keys(t), o = i.length, o !== Object.keys(e).length)
906
+ return !1;
907
+ for (n = o; n-- !== 0; )
908
+ if (!{}.hasOwnProperty.call(e, i[n]))
909
+ return !1;
910
+ for (n = o; n-- !== 0; ) {
911
+ const s = i[n];
912
+ if (!(s === "_owner" && t.$$typeof) && !rt(t[s], e[s]))
913
+ return !1;
914
+ }
915
+ return !0;
916
+ }
917
+ return t !== t && e !== e;
918
+ }
919
+ function Bt(t) {
920
+ return typeof window > "u" ? 1 : (t.ownerDocument.defaultView || window).devicePixelRatio || 1;
921
+ }
922
+ function Et(t, e) {
923
+ const o = Bt(t);
924
+ return Math.round(e * o) / o;
925
+ }
926
+ function Tt(t) {
927
+ const e = b.useRef(t);
928
+ return tt(() => {
929
+ e.current = t;
930
+ }), e;
931
+ }
932
+ function Fe(t) {
933
+ t === void 0 && (t = {});
934
+ const {
935
+ placement: e = "bottom",
936
+ strategy: o = "absolute",
937
+ middleware: n = [],
938
+ platform: i,
939
+ elements: {
940
+ reference: s,
941
+ floating: r
942
+ } = {},
943
+ transform: c = !0,
944
+ whileElementsMounted: l,
945
+ open: f
946
+ } = t, [a, u] = b.useState({
947
+ x: 0,
948
+ y: 0,
949
+ strategy: o,
950
+ placement: e,
951
+ middlewareData: {},
952
+ isPositioned: !1
953
+ }), [m, d] = b.useState(n);
954
+ rt(m, n) || d(n);
955
+ const [h, g] = b.useState(null), [w, p] = b.useState(null), y = b.useCallback((E) => {
956
+ E !== T.current && (T.current = E, g(E));
957
+ }, []), R = b.useCallback((E) => {
958
+ E !== P.current && (P.current = E, p(E));
959
+ }, []), C = s || h, v = r || w, T = b.useRef(null), P = b.useRef(null), L = b.useRef(a), j = l != null, _ = Tt(l), B = Tt(i), O = b.useCallback(() => {
960
+ if (!T.current || !P.current)
961
+ return;
962
+ const E = {
963
+ placement: e,
964
+ strategy: o,
965
+ middleware: m
966
+ };
967
+ B.current && (E.platform = B.current), De(T.current, P.current, E).then((X) => {
968
+ const Y = {
969
+ ...X,
970
+ isPositioned: !0
971
+ };
972
+ W.current && !rt(L.current, Y) && (L.current = Y, Qt.flushSync(() => {
973
+ u(Y);
974
+ }));
975
+ });
976
+ }, [m, e, o, B]);
977
+ tt(() => {
978
+ f === !1 && L.current.isPositioned && (L.current.isPositioned = !1, u((E) => ({
979
+ ...E,
980
+ isPositioned: !1
981
+ })));
982
+ }, [f]);
983
+ const W = b.useRef(!1);
984
+ tt(() => (W.current = !0, () => {
985
+ W.current = !1;
986
+ }), []), tt(() => {
987
+ if (C && (T.current = C), v && (P.current = v), C && v) {
988
+ if (_.current)
989
+ return _.current(C, v, O);
990
+ O();
991
+ }
992
+ }, [C, v, O, _, j]);
993
+ const k = b.useMemo(() => ({
994
+ reference: T,
995
+ floating: P,
996
+ setReference: y,
997
+ setFloating: R
998
+ }), [y, R]), A = b.useMemo(() => ({
999
+ reference: C,
1000
+ floating: v
1001
+ }), [C, v]), D = b.useMemo(() => {
1002
+ const E = {
1003
+ position: o,
1004
+ left: 0,
1005
+ top: 0
1006
+ };
1007
+ if (!A.floating)
1008
+ return E;
1009
+ const X = Et(A.floating, a.x), Y = Et(A.floating, a.y);
1010
+ return c ? {
1011
+ ...E,
1012
+ transform: "translate(" + X + "px, " + Y + "px)",
1013
+ ...Bt(A.floating) >= 1.5 && {
1014
+ willChange: "transform"
1015
+ }
1016
+ } : {
1017
+ position: o,
1018
+ left: X,
1019
+ top: Y
1020
+ };
1021
+ }, [o, c, A.floating, a.x, a.y]);
1022
+ return b.useMemo(() => ({
1023
+ ...a,
1024
+ update: O,
1025
+ refs: k,
1026
+ elements: A,
1027
+ floatingStyles: D
1028
+ }), [a, O, k, A, D]);
1029
+ }
1030
+ const Wt = "Popup";
1031
+ function Ne(t) {
1032
+ return Ut(Wt, t);
1033
+ }
1034
+ Xt(Wt, ["root", "open"]);
1035
+ const Ht = /* @__PURE__ */ b.createContext(null);
1036
+ process.env.NODE_ENV !== "production" && (Ht.displayName = "TransitionContext");
1037
+ function Ve(t) {
1038
+ const [e, o] = b.useState(!0), n = b.useRef(!1), i = b.useRef(0), [s, r] = b.useState(!1), c = b.useRef(t);
1039
+ b.useEffect(() => {
1040
+ !t && // checking registeredTransitions.current instead of hasTransition to avoid this effect re-firing whenever hasTransition changes
1041
+ i.current > 0 && // prevents waiting for a pending transition right after mounting
1042
+ c.current !== t && (n.current = !0, o(!1)), c.current = t;
1043
+ }, [t]);
1044
+ const l = b.useCallback(() => {
1045
+ n.current = !1, o(!0);
1046
+ }, []), f = b.useCallback(() => (i.current += 1, r(!0), () => {
1047
+ i.current -= 1, i.current === 0 && r(!1);
1048
+ }), []);
1049
+ let a;
1050
+ return s ? t ? a = !1 : a = !n.current && e : a = !t, {
1051
+ contextValue: b.useMemo(() => ({
1052
+ requestedEnter: t,
1053
+ onExited: l,
1054
+ registerTransition: f,
1055
+ hasExited: a
1056
+ }), [l, t, f, a]),
1057
+ hasExited: a
1058
+ };
1059
+ }
1060
+ const $t = /* @__PURE__ */ b.createContext(null);
1061
+ process.env.NODE_ENV !== "production" && ($t.displayName = "PopupContext");
1062
+ const _e = ["anchor", "children", "container", "disablePortal", "keepMounted", "middleware", "offset", "open", "placement", "slotProps", "slots", "strategy"];
1063
+ function Be(t) {
1064
+ const {
1065
+ open: e
1066
+ } = t;
1067
+ return Gt({
1068
+ root: ["root", e && "open"]
1069
+ }, Jt(Ne));
1070
+ }
1071
+ function We(t) {
1072
+ return typeof t == "function" ? t() : t;
1073
+ }
1074
+ const He = /* @__PURE__ */ b.forwardRef(function(e, o) {
1075
+ var n;
1076
+ const {
1077
+ anchor: i,
1078
+ children: s,
1079
+ container: r,
1080
+ disablePortal: c = !1,
1081
+ keepMounted: l = !1,
1082
+ middleware: f,
1083
+ offset: a = 0,
1084
+ open: u = !1,
1085
+ placement: m = "bottom",
1086
+ slotProps: d = {},
1087
+ slots: h = {},
1088
+ strategy: g = "absolute"
1089
+ } = e, w = jt(e, _e), {
1090
+ refs: p,
1091
+ elements: y,
1092
+ floatingStyles: R,
1093
+ update: C,
1094
+ placement: v
1095
+ } = Fe({
1096
+ elements: {
1097
+ reference: We(i)
1098
+ },
1099
+ open: u,
1100
+ middleware: f ?? [Ct(a ?? 0), ke(), Me()],
1101
+ placement: m,
1102
+ strategy: g,
1103
+ whileElementsMounted: l ? void 0 : Rt
1104
+ }), T = Yt(p.setFloating, o);
1105
+ Zt(() => {
1106
+ if (l && u && y.reference && y.floating)
1107
+ return Rt(y.reference, y.floating, C);
1108
+ }, [l, u, y, C]);
1109
+ const P = ut({}, e, {
1110
+ disablePortal: c,
1111
+ keepMounted: l,
1112
+ offset: Ct,
1113
+ open: u,
1114
+ placement: m,
1115
+ finalPlacement: v,
1116
+ strategy: g
1117
+ }), {
1118
+ contextValue: L,
1119
+ hasExited: j
1120
+ } = Ve(u), _ = l && j ? "hidden" : void 0, B = Be(P), O = (n = h == null ? void 0 : h.root) != null ? n : "div", W = Kt({
1121
+ elementType: O,
1122
+ externalSlotProps: d.root,
1123
+ externalForwardedProps: w,
1124
+ ownerState: P,
1125
+ className: B.root,
1126
+ additionalProps: {
1127
+ ref: T,
1128
+ role: "tooltip",
1129
+ style: ut({}, R, {
1130
+ visibility: _
1131
+ })
1132
+ }
1133
+ }), k = b.useMemo(() => ({
1134
+ placement: v
1135
+ }), [v]);
1136
+ return l || !j ? /* @__PURE__ */ Z(qt, {
1137
+ disablePortal: c,
1138
+ container: r,
1139
+ children: /* @__PURE__ */ Z($t.Provider, {
1140
+ value: k,
1141
+ children: /* @__PURE__ */ Z(Ht.Provider, {
1142
+ value: L,
1143
+ children: /* @__PURE__ */ Z(O, ut({}, W, {
1144
+ children: s
1145
+ }))
1146
+ })
1147
+ })
1148
+ }) : null;
1149
+ });
1150
+ process.env.NODE_ENV !== "production" && (He.propTypes = {
1151
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
1152
+ // │ These PropTypes are generated from the TypeScript type definitions. │
1153
+ // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │
1154
+ // └─────────────────────────────────────────────────────────────────────┘
1155
+ /**
1156
+ * An HTML element, [virtual element](https://floating-ui.com/docs/virtual-elements),
1157
+ * or a function that returns either.
1158
+ * It's used to set the position of the popup.
1159
+ */
1160
+ anchor: x.oneOfType([gt, x.object, x.func]),
1161
+ /**
1162
+ * @ignore
1163
+ */
1164
+ children: x.oneOfType([x.node, x.func]),
1165
+ /**
1166
+ * An HTML element or function that returns one. The container will have the portal children appended to it.
1167
+ * By default, it uses the body of the top-level document object, so it's `document.body` in these cases.
1168
+ */
1169
+ container: x.oneOfType([gt, x.func]),
1170
+ /**
1171
+ * If `true`, the popup will be rendered where it is defined, without the use of portals.
1172
+ * @default false
1173
+ */
1174
+ disablePortal: x.bool,
1175
+ /**
1176
+ * If `true`, the popup will exist in the DOM even if it's closed.
1177
+ * Its visibility will be controlled by the `visibility` CSS property.
1178
+ *
1179
+ * Otherwise, a closed popup will be removed from the DOM.
1180
+ *
1181
+ * @default false
1182
+ */
1183
+ keepMounted: x.bool,
1184
+ /**
1185
+ * Collection of Floating UI middleware to use when positioning the popup.
1186
+ * If not provided, the [`offset`](https://floating-ui.com/docs/offset)
1187
+ * and [`flip`](https://floating-ui.com/docs/flip) functions will be used.
1188
+ *
1189
+ * @see https://floating-ui.com/docs/computePosition#middleware
1190
+ */
1191
+ middleware: x.arrayOf(x.oneOfType([x.oneOf([!1]), x.shape({
1192
+ fn: x.func.isRequired,
1193
+ name: x.string.isRequired,
1194
+ options: x.any
1195
+ })])),
1196
+ /**
1197
+ * Distance between a popup and the trigger element.
1198
+ * This prop is ignored when custom `middleware` is provided.
1199
+ *
1200
+ * @default 0
1201
+ * @see https://floating-ui.com/docs/offset
1202
+ */
1203
+ offset: x.oneOfType([x.func, x.number, x.shape({
1204
+ alignmentAxis: x.number,
1205
+ crossAxis: x.number,
1206
+ mainAxis: x.number
1207
+ })]),
1208
+ /**
1209
+ * If `true`, the popup is visible.
1210
+ *
1211
+ * @default false
1212
+ */
1213
+ open: x.bool,
1214
+ /**
1215
+ * Determines where to place the popup relative to the trigger element.
1216
+ *
1217
+ * @default 'bottom'
1218
+ * @see https://floating-ui.com/docs/computePosition#placement
1219
+ */
1220
+ placement: x.oneOf(["bottom-end", "bottom-start", "bottom", "left-end", "left-start", "left", "right-end", "right-start", "right", "top-end", "top-start", "top"]),
1221
+ /**
1222
+ * The props used for each slot inside the Popup.
1223
+ *
1224
+ * @default {}
1225
+ */
1226
+ slotProps: x.shape({
1227
+ root: x.oneOfType([x.func, x.object])
1228
+ }),
1229
+ /**
1230
+ * The components used for each slot inside the Popup.
1231
+ * Either a string to use a HTML element or a component.
1232
+ *
1233
+ * @default {}
1234
+ */
1235
+ slots: x.shape({
1236
+ root: x.elementType
1237
+ }),
1238
+ /**
1239
+ * The type of CSS position property to use (absolute or fixed).
1240
+ *
1241
+ * @default 'absolute'
1242
+ * @see https://floating-ui.com/docs/computePosition#strategy
1243
+ */
1244
+ strategy: x.oneOf(["absolute", "fixed"])
1245
+ });
1246
+ export {
1247
+ He as P,
1248
+ Ht as T
1249
+ };