@konstructio/ui 0.1.2-alpha.28 → 0.1.2-alpha.29

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 (40) hide show
  1. package/dist/chevron-up-DrQr2Fwd.js +5 -0
  2. package/dist/components/Badge/Badge.variants.js +1 -1
  3. package/dist/components/Datepicker/DatePicker.js +124 -124
  4. package/dist/components/Divider/Divider.variants.js +1 -1
  5. package/dist/components/Dropdown/components/List/List.js +45 -39
  6. package/dist/components/Dropdown/components/Wrapper.js +81 -80
  7. package/dist/components/Dropdown/hooks/useDropdown.js +21 -21
  8. package/dist/components/Filter/Filter.variants.js +2 -2
  9. package/dist/components/Input/Input.variants.js +1 -1
  10. package/dist/components/PhoneNumberInput/PhoneNumberInput.js +8 -0
  11. package/dist/components/PhoneNumberInput/PhoneNumberInput.variants.js +45 -0
  12. package/dist/components/PhoneNumberInput/components/FlagContent/FlagContent.js +27 -0
  13. package/dist/components/PhoneNumberInput/components/FlagSelectorList/FlagSelectorList.js +629 -0
  14. package/dist/components/PhoneNumberInput/components/FlagSelectorWrapper/FlagSelectorWrapper.js +27 -0
  15. package/dist/components/PhoneNumberInput/components/TruncateText/TruncateText.js +45 -0
  16. package/dist/components/PhoneNumberInput/components/Wrapper.js +621 -0
  17. package/dist/components/PhoneNumberInput/components/index.js +6 -0
  18. package/dist/components/PhoneNumberInput/contexts/index.js +8 -0
  19. package/dist/components/PhoneNumberInput/contexts/phone-number.context.js +28 -0
  20. package/dist/components/PhoneNumberInput/contexts/phone-number.hook.js +13 -0
  21. package/dist/components/PhoneNumberInput/contexts/phone-number.provider.js +6137 -0
  22. package/dist/components/PhoneNumberInput/utils/index.js +11 -0
  23. package/dist/components/Sidebar/Sidebar.variants.js +2 -2
  24. package/dist/components/Switch/Switch.variants.js +4 -4
  25. package/dist/components/Tabs/Tabs.variants.js +1 -1
  26. package/dist/components/TimePicker/TimePicker.variants.js +2 -2
  27. package/dist/components/TimePicker/components/Wrapper/Wrapper.js +1 -1
  28. package/dist/components/Typography/Typography.variants.js +18 -23
  29. package/dist/components/VirtualizedTable/components/DropdownPaginate/DropdownPaginate.js +1 -1
  30. package/dist/components/VirtualizedTable/components/FormPaginate/FormPaginate.js +5 -5
  31. package/dist/components/VirtualizedTable/components/TruncateText/TruncateText.js +22 -1886
  32. package/dist/components/index.js +72 -70
  33. package/dist/index-2hB40Iuc.js +1873 -0
  34. package/dist/index-C3tHPg8y.js +662 -0
  35. package/dist/index.d.ts +32 -13
  36. package/dist/index.js +82 -80
  37. package/dist/libphonenumber-_7ZyKWA7.js +11549 -0
  38. package/dist/package.json +7 -1
  39. package/dist/styles.css +1 -1
  40. package/package.json +7 -1
@@ -1,1898 +1,34 @@
1
- import { jsx as R, Fragment as zt, jsxs as nt } from "react/jsx-runtime";
2
- import * as g from "react";
3
- import { useLayoutEffect as jt, useRef as Yt, useState as Xt, useCallback as Gt, useEffect as ze } from "react";
4
- import { P as le, c as ot, u as je, a as qt, b as J } from "../../../../index-CIAmiWcw.js";
5
- import { u as we } from "../../../../index-DLcqcWxM.js";
6
- import { D as Ut } from "../../../../index-Dbt2vBmS.js";
7
- import { u as Kt } from "../../../../index-BbQkJE5L.js";
8
- import * as Zt from "react-dom";
9
- import { u as Jt } from "../../../../index-0ioNhtNM.js";
10
- import { u as Qt } from "../../../../index-ohdbKsws.js";
11
- import { P as en } from "../../../../index-mPY_8Y5v.js";
12
- import { d as tn } from "../../../../debounce-BFejQm9P.js";
13
- const nn = ["top", "right", "bottom", "left"], U = Math.min, F = Math.max, pe = Math.round, ue = Math.floor, j = (e) => ({
14
- x: e,
15
- y: e
16
- }), on = {
17
- left: "right",
18
- right: "left",
19
- bottom: "top",
20
- top: "bottom"
21
- }, rn = {
22
- start: "end",
23
- end: "start"
24
- };
25
- function Oe(e, t, n) {
26
- return F(e, U(t, n));
27
- }
28
- function G(e, t) {
29
- return typeof e == "function" ? e(t) : e;
30
- }
31
- function q(e) {
32
- return e.split("-")[0];
33
- }
34
- function ne(e) {
35
- return e.split("-")[1];
36
- }
37
- function Me(e) {
38
- return e === "x" ? "y" : "x";
39
- }
40
- function ke(e) {
41
- return e === "y" ? "height" : "width";
42
- }
43
- const sn = /* @__PURE__ */ new Set(["top", "bottom"]);
44
- function z(e) {
45
- return sn.has(q(e)) ? "y" : "x";
46
- }
47
- function _e(e) {
48
- return Me(z(e));
49
- }
50
- function cn(e, t, n) {
51
- n === void 0 && (n = !1);
52
- const o = ne(e), r = _e(e), i = ke(r);
53
- let s = r === "x" ? o === (n ? "end" : "start") ? "right" : "left" : o === "start" ? "bottom" : "top";
54
- return t.reference[i] > t.floating[i] && (s = he(s)), [s, he(s)];
55
- }
56
- function ln(e) {
57
- const t = he(e);
58
- return [Ee(e), t, Ee(t)];
59
- }
60
- function Ee(e) {
61
- return e.replace(/start|end/g, (t) => rn[t]);
62
- }
63
- const Ye = ["left", "right"], Xe = ["right", "left"], an = ["top", "bottom"], fn = ["bottom", "top"];
64
- function un(e, t, n) {
65
- switch (e) {
66
- case "top":
67
- case "bottom":
68
- return n ? t ? Xe : Ye : t ? Ye : Xe;
69
- case "left":
70
- case "right":
71
- return t ? an : fn;
72
- default:
73
- return [];
74
- }
75
- }
76
- function dn(e, t, n, o) {
77
- const r = ne(e);
78
- let i = un(q(e), n === "start", o);
79
- return r && (i = i.map((s) => s + "-" + r), t && (i = i.concat(i.map(Ee)))), i;
80
- }
81
- function he(e) {
82
- return e.replace(/left|right|bottom|top/g, (t) => on[t]);
83
- }
84
- function pn(e) {
85
- return {
86
- top: 0,
87
- right: 0,
88
- bottom: 0,
89
- left: 0,
90
- ...e
91
- };
92
- }
93
- function rt(e) {
94
- return typeof e != "number" ? pn(e) : {
95
- top: e,
96
- right: e,
97
- bottom: e,
98
- left: e
99
- };
100
- }
101
- function me(e) {
102
- const {
103
- x: t,
104
- y: n,
105
- width: o,
106
- height: r
107
- } = e;
108
- return {
109
- width: o,
110
- height: r,
111
- top: n,
112
- left: t,
113
- right: t + o,
114
- bottom: n + r,
115
- x: t,
116
- y: n
117
- };
118
- }
119
- function Ge(e, t, n) {
120
- let {
121
- reference: o,
122
- floating: r
123
- } = e;
124
- const i = z(t), s = _e(t), l = ke(s), c = q(t), f = i === "y", a = o.x + o.width / 2 - r.width / 2, u = o.y + o.height / 2 - r.height / 2, p = o[l] / 2 - r[l] / 2;
125
- let d;
126
- switch (c) {
127
- case "top":
128
- d = {
129
- x: a,
130
- y: o.y - r.height
131
- };
132
- break;
133
- case "bottom":
134
- d = {
135
- x: a,
136
- y: o.y + o.height
137
- };
138
- break;
139
- case "right":
140
- d = {
141
- x: o.x + o.width,
142
- y: u
143
- };
144
- break;
145
- case "left":
146
- d = {
147
- x: o.x - r.width,
148
- y: u
149
- };
150
- break;
151
- default:
152
- d = {
153
- x: o.x,
154
- y: o.y
155
- };
156
- }
157
- switch (ne(t)) {
158
- case "start":
159
- d[s] -= p * (n && f ? -1 : 1);
160
- break;
161
- case "end":
162
- d[s] += p * (n && f ? -1 : 1);
163
- break;
164
- }
165
- return d;
166
- }
167
- const hn = async (e, t, n) => {
168
- const {
169
- placement: o = "bottom",
170
- strategy: r = "absolute",
171
- middleware: i = [],
172
- platform: s
173
- } = n, l = i.filter(Boolean), c = await (s.isRTL == null ? void 0 : s.isRTL(t));
174
- let f = await s.getElementRects({
175
- reference: e,
176
- floating: t,
177
- strategy: r
178
- }), {
179
- x: a,
180
- y: u
181
- } = Ge(f, o, c), p = o, d = {}, h = 0;
182
- for (let m = 0; m < l.length; m++) {
183
- const {
184
- name: w,
185
- fn: x
186
- } = l[m], {
187
- x: y,
188
- y: C,
189
- data: v,
190
- reset: b
191
- } = await x({
192
- x: a,
193
- y: u,
194
- initialPlacement: o,
195
- placement: p,
196
- strategy: r,
197
- middlewareData: d,
198
- rects: f,
199
- platform: s,
200
- elements: {
201
- reference: e,
202
- floating: t
203
- }
204
- });
205
- a = y ?? a, u = C ?? u, d = {
206
- ...d,
207
- [w]: {
208
- ...d[w],
209
- ...v
210
- }
211
- }, b && h <= 50 && (h++, typeof b == "object" && (b.placement && (p = b.placement), b.rects && (f = b.rects === !0 ? await s.getElementRects({
212
- reference: e,
213
- floating: t,
214
- strategy: r
215
- }) : b.rects), {
216
- x: a,
217
- y: u
218
- } = Ge(f, p, c)), m = -1);
219
- }
220
- return {
221
- x: a,
222
- y: u,
223
- placement: p,
224
- strategy: r,
225
- middlewareData: d
226
- };
227
- };
228
- async function ie(e, t) {
229
- var n;
230
- t === void 0 && (t = {});
231
- const {
232
- x: o,
233
- y: r,
234
- platform: i,
235
- rects: s,
236
- elements: l,
237
- strategy: c
238
- } = e, {
239
- boundary: f = "clippingAncestors",
240
- rootBoundary: a = "viewport",
241
- elementContext: u = "floating",
242
- altBoundary: p = !1,
243
- padding: d = 0
244
- } = G(t, e), h = rt(d), w = l[p ? u === "floating" ? "reference" : "floating" : u], x = me(await i.getClippingRect({
245
- element: (n = await (i.isElement == null ? void 0 : i.isElement(w))) == null || n ? w : w.contextElement || await (i.getDocumentElement == null ? void 0 : i.getDocumentElement(l.floating)),
246
- boundary: f,
247
- rootBoundary: a,
248
- strategy: c
249
- })), y = u === "floating" ? {
250
- x: o,
251
- y: r,
252
- width: s.floating.width,
253
- height: s.floating.height
254
- } : s.reference, C = await (i.getOffsetParent == null ? void 0 : i.getOffsetParent(l.floating)), v = await (i.isElement == null ? void 0 : i.isElement(C)) ? await (i.getScale == null ? void 0 : i.getScale(C)) || {
255
- x: 1,
256
- y: 1
257
- } : {
258
- x: 1,
259
- y: 1
260
- }, b = me(i.convertOffsetParentRelativeRectToViewportRelativeRect ? await i.convertOffsetParentRelativeRectToViewportRelativeRect({
261
- elements: l,
262
- rect: y,
263
- offsetParent: C,
264
- strategy: c
265
- }) : y);
266
- return {
267
- top: (x.top - b.top + h.top) / v.y,
268
- bottom: (b.bottom - x.bottom + h.bottom) / v.y,
269
- left: (x.left - b.left + h.left) / v.x,
270
- right: (b.right - x.right + h.right) / v.x
271
- };
272
- }
273
- const mn = (e) => ({
274
- name: "arrow",
275
- options: e,
276
- async fn(t) {
277
- const {
278
- x: n,
279
- y: o,
280
- placement: r,
281
- rects: i,
282
- platform: s,
283
- elements: l,
284
- middlewareData: c
285
- } = t, {
286
- element: f,
287
- padding: a = 0
288
- } = G(e, t) || {};
289
- if (f == null)
290
- return {};
291
- const u = rt(a), p = {
292
- x: n,
293
- y: o
294
- }, d = _e(r), h = ke(d), m = await s.getDimensions(f), w = d === "y", x = w ? "top" : "left", y = w ? "bottom" : "right", C = w ? "clientHeight" : "clientWidth", v = i.reference[h] + i.reference[d] - p[d] - i.floating[h], b = p[d] - i.reference[d], T = await (s.getOffsetParent == null ? void 0 : s.getOffsetParent(f));
295
- let P = T ? T[C] : 0;
296
- (!P || !await (s.isElement == null ? void 0 : s.isElement(T))) && (P = l.floating[C] || i.floating[h]);
297
- const M = v / 2 - b / 2, H = P / 2 - m[h] / 2 - 1, D = U(u[x], H), _ = U(u[y], H), N = D, E = P - m[h] - _, O = P / 2 - m[h] / 2 + M, $ = Oe(N, O, E), S = !c.arrow && ne(r) != null && O !== $ && i.reference[h] / 2 - (O < N ? D : _) - m[h] / 2 < 0, L = S ? O < N ? O - N : O - E : 0;
298
- return {
299
- [d]: p[d] + L,
300
- data: {
301
- [d]: $,
302
- centerOffset: O - $ - L,
303
- ...S && {
304
- alignmentOffset: L
305
- }
306
- },
307
- reset: S
308
- };
309
- }
310
- }), gn = function(e) {
311
- return e === void 0 && (e = {}), {
312
- name: "flip",
313
- options: e,
314
- async fn(t) {
315
- var n, o;
316
- const {
317
- placement: r,
318
- middlewareData: i,
319
- rects: s,
320
- initialPlacement: l,
321
- platform: c,
322
- elements: f
323
- } = t, {
324
- mainAxis: a = !0,
325
- crossAxis: u = !0,
326
- fallbackPlacements: p,
327
- fallbackStrategy: d = "bestFit",
328
- fallbackAxisSideDirection: h = "none",
329
- flipAlignment: m = !0,
330
- ...w
331
- } = G(e, t);
332
- if ((n = i.arrow) != null && n.alignmentOffset)
333
- return {};
334
- const x = q(r), y = z(l), C = q(l) === l, v = await (c.isRTL == null ? void 0 : c.isRTL(f.floating)), b = p || (C || !m ? [he(l)] : ln(l)), T = h !== "none";
335
- !p && T && b.push(...dn(l, m, h, v));
336
- const P = [l, ...b], M = await ie(t, w), H = [];
337
- let D = ((o = i.flip) == null ? void 0 : o.overflows) || [];
338
- if (a && H.push(M[x]), u) {
339
- const O = cn(r, s, v);
340
- H.push(M[O[0]], M[O[1]]);
341
- }
342
- if (D = [...D, {
343
- placement: r,
344
- overflows: H
345
- }], !H.every((O) => O <= 0)) {
346
- var _, N;
347
- const O = (((_ = i.flip) == null ? void 0 : _.index) || 0) + 1, $ = P[O];
348
- if ($ && (!(u === "alignment" ? y !== z($) : !1) || // We leave the current main axis only if every placement on that axis
349
- // overflows the main axis.
350
- D.every((A) => z(A.placement) === y ? A.overflows[0] > 0 : !0)))
351
- return {
352
- data: {
353
- index: O,
354
- overflows: D
355
- },
356
- reset: {
357
- placement: $
358
- }
359
- };
360
- let S = (N = D.filter((L) => L.overflows[0] <= 0).sort((L, A) => L.overflows[1] - A.overflows[1])[0]) == null ? void 0 : N.placement;
361
- if (!S)
362
- switch (d) {
363
- case "bestFit": {
364
- var E;
365
- const L = (E = D.filter((A) => {
366
- if (T) {
367
- const k = z(A.placement);
368
- return k === y || // Create a bias to the `y` side axis due to horizontal
369
- // reading directions favoring greater width.
370
- k === "y";
371
- }
372
- return !0;
373
- }).map((A) => [A.placement, A.overflows.filter((k) => k > 0).reduce((k, V) => k + V, 0)]).sort((A, k) => A[1] - k[1])[0]) == null ? void 0 : E[0];
374
- L && (S = L);
375
- break;
376
- }
377
- case "initialPlacement":
378
- S = l;
379
- break;
380
- }
381
- if (r !== S)
382
- return {
383
- reset: {
384
- placement: S
385
- }
386
- };
387
- }
388
- return {};
389
- }
390
- };
391
- };
392
- function qe(e, t) {
393
- return {
394
- top: e.top - t.height,
395
- right: e.right - t.width,
396
- bottom: e.bottom - t.height,
397
- left: e.left - t.width
398
- };
399
- }
400
- function Ue(e) {
401
- return nn.some((t) => e[t] >= 0);
402
- }
403
- const wn = function(e) {
404
- return e === void 0 && (e = {}), {
405
- name: "hide",
406
- options: e,
407
- async fn(t) {
408
- const {
409
- rects: n
410
- } = t, {
411
- strategy: o = "referenceHidden",
412
- ...r
413
- } = G(e, t);
414
- switch (o) {
415
- case "referenceHidden": {
416
- const i = await ie(t, {
417
- ...r,
418
- elementContext: "reference"
419
- }), s = qe(i, n.reference);
420
- return {
421
- data: {
422
- referenceHiddenOffsets: s,
423
- referenceHidden: Ue(s)
424
- }
425
- };
426
- }
427
- case "escaped": {
428
- const i = await ie(t, {
429
- ...r,
430
- altBoundary: !0
431
- }), s = qe(i, n.floating);
432
- return {
433
- data: {
434
- escapedOffsets: s,
435
- escaped: Ue(s)
436
- }
437
- };
438
- }
439
- default:
440
- return {};
441
- }
442
- }
443
- };
444
- }, it = /* @__PURE__ */ new Set(["left", "top"]);
445
- async function xn(e, t) {
446
- const {
447
- placement: n,
448
- platform: o,
449
- elements: r
450
- } = e, i = await (o.isRTL == null ? void 0 : o.isRTL(r.floating)), s = q(n), l = ne(n), c = z(n) === "y", f = it.has(s) ? -1 : 1, a = i && c ? -1 : 1, u = G(t, e);
451
- let {
452
- mainAxis: p,
453
- crossAxis: d,
454
- alignmentAxis: h
455
- } = typeof u == "number" ? {
456
- mainAxis: u,
457
- crossAxis: 0,
458
- alignmentAxis: null
459
- } : {
460
- mainAxis: u.mainAxis || 0,
461
- crossAxis: u.crossAxis || 0,
462
- alignmentAxis: u.alignmentAxis
463
- };
464
- return l && typeof h == "number" && (d = l === "end" ? h * -1 : h), c ? {
465
- x: d * a,
466
- y: p * f
467
- } : {
468
- x: p * f,
469
- y: d * a
470
- };
471
- }
472
- const yn = function(e) {
473
- return e === void 0 && (e = 0), {
474
- name: "offset",
475
- options: e,
476
- async fn(t) {
477
- var n, o;
478
- const {
479
- x: r,
480
- y: i,
481
- placement: s,
482
- middlewareData: l
483
- } = t, c = await xn(t, e);
484
- return s === ((n = l.offset) == null ? void 0 : n.placement) && (o = l.arrow) != null && o.alignmentOffset ? {} : {
485
- x: r + c.x,
486
- y: i + c.y,
487
- data: {
488
- ...c,
489
- placement: s
490
- }
491
- };
492
- }
493
- };
494
- }, vn = function(e) {
495
- return e === void 0 && (e = {}), {
496
- name: "shift",
497
- options: e,
498
- async fn(t) {
499
- const {
500
- x: n,
501
- y: o,
502
- placement: r
503
- } = t, {
504
- mainAxis: i = !0,
505
- crossAxis: s = !1,
506
- limiter: l = {
507
- fn: (w) => {
508
- let {
509
- x,
510
- y
511
- } = w;
512
- return {
513
- x,
514
- y
515
- };
516
- }
517
- },
518
- ...c
519
- } = G(e, t), f = {
520
- x: n,
521
- y: o
522
- }, a = await ie(t, c), u = z(q(r)), p = Me(u);
523
- let d = f[p], h = f[u];
524
- if (i) {
525
- const w = p === "y" ? "top" : "left", x = p === "y" ? "bottom" : "right", y = d + a[w], C = d - a[x];
526
- d = Oe(y, d, C);
527
- }
528
- if (s) {
529
- const w = u === "y" ? "top" : "left", x = u === "y" ? "bottom" : "right", y = h + a[w], C = h - a[x];
530
- h = Oe(y, h, C);
531
- }
532
- const m = l.fn({
533
- ...t,
534
- [p]: d,
535
- [u]: h
536
- });
537
- return {
538
- ...m,
539
- data: {
540
- x: m.x - n,
541
- y: m.y - o,
542
- enabled: {
543
- [p]: i,
544
- [u]: s
545
- }
546
- }
547
- };
548
- }
549
- };
550
- }, bn = function(e) {
551
- return e === void 0 && (e = {}), {
552
- options: e,
553
- fn(t) {
554
- const {
555
- x: n,
556
- y: o,
557
- placement: r,
558
- rects: i,
559
- middlewareData: s
560
- } = t, {
561
- offset: l = 0,
562
- mainAxis: c = !0,
563
- crossAxis: f = !0
564
- } = G(e, t), a = {
565
- x: n,
566
- y: o
567
- }, u = z(r), p = Me(u);
568
- let d = a[p], h = a[u];
569
- const m = G(l, t), w = typeof m == "number" ? {
570
- mainAxis: m,
571
- crossAxis: 0
572
- } : {
573
- mainAxis: 0,
574
- crossAxis: 0,
575
- ...m
576
- };
577
- if (c) {
578
- const C = p === "y" ? "height" : "width", v = i.reference[p] - i.floating[C] + w.mainAxis, b = i.reference[p] + i.reference[C] - w.mainAxis;
579
- d < v ? d = v : d > b && (d = b);
580
- }
581
- if (f) {
582
- var x, y;
583
- const C = p === "y" ? "width" : "height", v = it.has(q(r)), b = i.reference[u] - i.floating[C] + (v && ((x = s.offset) == null ? void 0 : x[u]) || 0) + (v ? 0 : w.crossAxis), T = i.reference[u] + i.reference[C] + (v ? 0 : ((y = s.offset) == null ? void 0 : y[u]) || 0) - (v ? w.crossAxis : 0);
584
- h < b ? h = b : h > T && (h = T);
585
- }
586
- return {
587
- [p]: d,
588
- [u]: h
589
- };
590
- }
591
- };
592
- }, Cn = function(e) {
593
- return e === void 0 && (e = {}), {
594
- name: "size",
595
- options: e,
596
- async fn(t) {
597
- var n, o;
598
- const {
599
- placement: r,
600
- rects: i,
601
- platform: s,
602
- elements: l
603
- } = t, {
604
- apply: c = () => {
605
- },
606
- ...f
607
- } = G(e, t), a = await ie(t, f), u = q(r), p = ne(r), d = z(r) === "y", {
608
- width: h,
609
- height: m
610
- } = i.floating;
611
- let w, x;
612
- u === "top" || u === "bottom" ? (w = u, x = p === (await (s.isRTL == null ? void 0 : s.isRTL(l.floating)) ? "start" : "end") ? "left" : "right") : (x = u, w = p === "end" ? "top" : "bottom");
613
- const y = m - a.top - a.bottom, C = h - a.left - a.right, v = U(m - a[w], y), b = U(h - a[x], C), T = !t.middlewareData.shift;
614
- let P = v, M = b;
615
- if ((n = t.middlewareData.shift) != null && n.enabled.x && (M = C), (o = t.middlewareData.shift) != null && o.enabled.y && (P = y), T && !p) {
616
- const D = F(a.left, 0), _ = F(a.right, 0), N = F(a.top, 0), E = F(a.bottom, 0);
617
- d ? M = h - 2 * (D !== 0 || _ !== 0 ? D + _ : F(a.left, a.right)) : P = m - 2 * (N !== 0 || E !== 0 ? N + E : F(a.top, a.bottom));
618
- }
619
- await c({
620
- ...t,
621
- availableWidth: M,
622
- availableHeight: P
623
- });
624
- const H = await s.getDimensions(l.floating);
625
- return h !== H.width || m !== H.height ? {
626
- reset: {
627
- rects: !0
628
- }
629
- } : {};
630
- }
631
- };
632
- };
633
- function xe() {
634
- return typeof window < "u";
635
- }
636
- function oe(e) {
637
- return st(e) ? (e.nodeName || "").toLowerCase() : "#document";
638
- }
639
- function I(e) {
640
- var t;
641
- return (e == null || (t = e.ownerDocument) == null ? void 0 : t.defaultView) || window;
642
- }
643
- function X(e) {
644
- var t;
645
- return (t = (st(e) ? e.ownerDocument : e.document) || window.document) == null ? void 0 : t.documentElement;
646
- }
647
- function st(e) {
648
- return xe() ? e instanceof Node || e instanceof I(e).Node : !1;
649
- }
650
- function W(e) {
651
- return xe() ? e instanceof Element || e instanceof I(e).Element : !1;
652
- }
653
- function Y(e) {
654
- return xe() ? e instanceof HTMLElement || e instanceof I(e).HTMLElement : !1;
655
- }
656
- function Ke(e) {
657
- return !xe() || typeof ShadowRoot > "u" ? !1 : e instanceof ShadowRoot || e instanceof I(e).ShadowRoot;
658
- }
659
- const An = /* @__PURE__ */ new Set(["inline", "contents"]);
660
- function ae(e) {
661
- const {
662
- overflow: t,
663
- overflowX: n,
664
- overflowY: o,
665
- display: r
666
- } = B(e);
667
- return /auto|scroll|overlay|hidden|clip/.test(t + o + n) && !An.has(r);
668
- }
669
- const Rn = /* @__PURE__ */ new Set(["table", "td", "th"]);
670
- function Pn(e) {
671
- return Rn.has(oe(e));
672
- }
673
- const Tn = [":popover-open", ":modal"];
674
- function ye(e) {
675
- return Tn.some((t) => {
676
- try {
677
- return e.matches(t);
678
- } catch {
679
- return !1;
680
- }
681
- });
682
- }
683
- const On = ["transform", "translate", "scale", "rotate", "perspective"], En = ["transform", "translate", "scale", "rotate", "perspective", "filter"], Sn = ["paint", "layout", "strict", "content"];
684
- function Ne(e) {
685
- const t = He(), n = W(e) ? B(e) : e;
686
- return On.some((o) => n[o] ? n[o] !== "none" : !1) || (n.containerType ? n.containerType !== "normal" : !1) || !t && (n.backdropFilter ? n.backdropFilter !== "none" : !1) || !t && (n.filter ? n.filter !== "none" : !1) || En.some((o) => (n.willChange || "").includes(o)) || Sn.some((o) => (n.contain || "").includes(o));
687
- }
688
- function Ln(e) {
689
- let t = K(e);
690
- for (; Y(t) && !ee(t); ) {
691
- if (Ne(t))
692
- return t;
693
- if (ye(t))
694
- return null;
695
- t = K(t);
696
- }
697
- return null;
698
- }
699
- function He() {
700
- return typeof CSS > "u" || !CSS.supports ? !1 : CSS.supports("-webkit-backdrop-filter", "none");
701
- }
702
- const Dn = /* @__PURE__ */ new Set(["html", "body", "#document"]);
703
- function ee(e) {
704
- return Dn.has(oe(e));
705
- }
706
- function B(e) {
707
- return I(e).getComputedStyle(e);
708
- }
709
- function ve(e) {
710
- return W(e) ? {
711
- scrollLeft: e.scrollLeft,
712
- scrollTop: e.scrollTop
713
- } : {
714
- scrollLeft: e.scrollX,
715
- scrollTop: e.scrollY
716
- };
717
- }
718
- function K(e) {
719
- if (oe(e) === "html")
720
- return e;
721
- const t = (
722
- // Step into the shadow DOM of the parent of a slotted node.
723
- e.assignedSlot || // DOM Element detected.
724
- e.parentNode || // ShadowRoot detected.
725
- Ke(e) && e.host || // Fallback.
726
- X(e)
727
- );
728
- return Ke(t) ? t.host : t;
729
- }
730
- function ct(e) {
731
- const t = K(e);
732
- return ee(t) ? e.ownerDocument ? e.ownerDocument.body : e.body : Y(t) && ae(t) ? t : ct(t);
733
- }
734
- function se(e, t, n) {
735
- var o;
736
- t === void 0 && (t = []), n === void 0 && (n = !0);
737
- const r = ct(e), i = r === ((o = e.ownerDocument) == null ? void 0 : o.body), s = I(r);
738
- if (i) {
739
- const l = Se(s);
740
- return t.concat(s, s.visualViewport || [], ae(r) ? r : [], l && n ? se(l) : []);
741
- }
742
- return t.concat(r, se(r, [], n));
743
- }
744
- function Se(e) {
745
- return e.parent && Object.getPrototypeOf(e.parent) ? e.frameElement : null;
746
- }
747
- function lt(e) {
748
- const t = B(e);
749
- let n = parseFloat(t.width) || 0, o = parseFloat(t.height) || 0;
750
- const r = Y(e), i = r ? e.offsetWidth : n, s = r ? e.offsetHeight : o, l = pe(n) !== i || pe(o) !== s;
751
- return l && (n = i, o = s), {
752
- width: n,
753
- height: o,
754
- $: l
755
- };
756
- }
757
- function $e(e) {
758
- return W(e) ? e : e.contextElement;
759
- }
760
- function Q(e) {
761
- const t = $e(e);
762
- if (!Y(t))
763
- return j(1);
764
- const n = t.getBoundingClientRect(), {
765
- width: o,
766
- height: r,
767
- $: i
768
- } = lt(t);
769
- let s = (i ? pe(n.width) : n.width) / o, l = (i ? pe(n.height) : n.height) / r;
770
- return (!s || !Number.isFinite(s)) && (s = 1), (!l || !Number.isFinite(l)) && (l = 1), {
771
- x: s,
772
- y: l
773
- };
774
- }
775
- const Mn = /* @__PURE__ */ j(0);
776
- function at(e) {
777
- const t = I(e);
778
- return !He() || !t.visualViewport ? Mn : {
779
- x: t.visualViewport.offsetLeft,
780
- y: t.visualViewport.offsetTop
781
- };
782
- }
783
- function kn(e, t, n) {
784
- return t === void 0 && (t = !1), !n || t && n !== I(e) ? !1 : t;
785
- }
786
- function Z(e, t, n, o) {
787
- t === void 0 && (t = !1), n === void 0 && (n = !1);
788
- const r = e.getBoundingClientRect(), i = $e(e);
789
- let s = j(1);
790
- t && (o ? W(o) && (s = Q(o)) : s = Q(e));
791
- const l = kn(i, n, o) ? at(i) : j(0);
792
- let c = (r.left + l.x) / s.x, f = (r.top + l.y) / s.y, a = r.width / s.x, u = r.height / s.y;
793
- if (i) {
794
- const p = I(i), d = o && W(o) ? I(o) : o;
795
- let h = p, m = Se(h);
796
- for (; m && o && d !== h; ) {
797
- const w = Q(m), x = m.getBoundingClientRect(), y = B(m), C = x.left + (m.clientLeft + parseFloat(y.paddingLeft)) * w.x, v = x.top + (m.clientTop + parseFloat(y.paddingTop)) * w.y;
798
- c *= w.x, f *= w.y, a *= w.x, u *= w.y, c += C, f += v, h = I(m), m = Se(h);
799
- }
800
- }
801
- return me({
802
- width: a,
803
- height: u,
804
- x: c,
805
- y: f
806
- });
807
- }
808
- function be(e, t) {
809
- const n = ve(e).scrollLeft;
810
- return t ? t.left + n : Z(X(e)).left + n;
811
- }
812
- function ft(e, t) {
813
- const n = e.getBoundingClientRect(), o = n.left + t.scrollLeft - be(e, n), r = n.top + t.scrollTop;
814
- return {
815
- x: o,
816
- y: r
817
- };
818
- }
819
- function _n(e) {
820
- let {
821
- elements: t,
822
- rect: n,
823
- offsetParent: o,
824
- strategy: r
825
- } = e;
826
- const i = r === "fixed", s = X(o), l = t ? ye(t.floating) : !1;
827
- if (o === s || l && i)
828
- return n;
829
- let c = {
830
- scrollLeft: 0,
831
- scrollTop: 0
832
- }, f = j(1);
833
- const a = j(0), u = Y(o);
834
- if ((u || !u && !i) && ((oe(o) !== "body" || ae(s)) && (c = ve(o)), Y(o))) {
835
- const d = Z(o);
836
- f = Q(o), a.x = d.x + o.clientLeft, a.y = d.y + o.clientTop;
837
- }
838
- const p = s && !u && !i ? ft(s, c) : j(0);
839
- return {
840
- width: n.width * f.x,
841
- height: n.height * f.y,
842
- x: n.x * f.x - c.scrollLeft * f.x + a.x + p.x,
843
- y: n.y * f.y - c.scrollTop * f.y + a.y + p.y
844
- };
845
- }
846
- function Nn(e) {
847
- return Array.from(e.getClientRects());
848
- }
849
- function Hn(e) {
850
- const t = X(e), n = ve(e), o = e.ownerDocument.body, r = F(t.scrollWidth, t.clientWidth, o.scrollWidth, o.clientWidth), i = F(t.scrollHeight, t.clientHeight, o.scrollHeight, o.clientHeight);
851
- let s = -n.scrollLeft + be(e);
852
- const l = -n.scrollTop;
853
- return B(o).direction === "rtl" && (s += F(t.clientWidth, o.clientWidth) - r), {
854
- width: r,
855
- height: i,
856
- x: s,
857
- y: l
858
- };
859
- }
860
- const Ze = 25;
861
- function $n(e, t) {
862
- const n = I(e), o = X(e), r = n.visualViewport;
863
- let i = o.clientWidth, s = o.clientHeight, l = 0, c = 0;
864
- if (r) {
865
- i = r.width, s = r.height;
866
- const a = He();
867
- (!a || a && t === "fixed") && (l = r.offsetLeft, c = r.offsetTop);
868
- }
869
- const f = be(o);
870
- if (f <= 0) {
871
- const a = o.ownerDocument, u = a.body, p = getComputedStyle(u), d = a.compatMode === "CSS1Compat" && parseFloat(p.marginLeft) + parseFloat(p.marginRight) || 0, h = Math.abs(o.clientWidth - u.clientWidth - d);
872
- h <= Ze && (i -= h);
873
- } else f <= Ze && (i += f);
874
- return {
875
- width: i,
876
- height: s,
877
- x: l,
878
- y: c
879
- };
880
- }
881
- const Fn = /* @__PURE__ */ new Set(["absolute", "fixed"]);
882
- function In(e, t) {
883
- const n = Z(e, !0, t === "fixed"), o = n.top + e.clientTop, r = n.left + e.clientLeft, i = Y(e) ? Q(e) : j(1), s = e.clientWidth * i.x, l = e.clientHeight * i.y, c = r * i.x, f = o * i.y;
884
- return {
885
- width: s,
886
- height: l,
887
- x: c,
888
- y: f
889
- };
890
- }
891
- function Je(e, t, n) {
892
- let o;
893
- if (t === "viewport")
894
- o = $n(e, n);
895
- else if (t === "document")
896
- o = Hn(X(e));
897
- else if (W(t))
898
- o = In(t, n);
899
- else {
900
- const r = at(e);
901
- o = {
902
- x: t.x - r.x,
903
- y: t.y - r.y,
904
- width: t.width,
905
- height: t.height
906
- };
907
- }
908
- return me(o);
909
- }
910
- function ut(e, t) {
911
- const n = K(e);
912
- return n === t || !W(n) || ee(n) ? !1 : B(n).position === "fixed" || ut(n, t);
913
- }
914
- function Wn(e, t) {
915
- const n = t.get(e);
916
- if (n)
917
- return n;
918
- let o = se(e, [], !1).filter((l) => W(l) && oe(l) !== "body"), r = null;
919
- const i = B(e).position === "fixed";
920
- let s = i ? K(e) : e;
921
- for (; W(s) && !ee(s); ) {
922
- const l = B(s), c = Ne(s);
923
- !c && l.position === "fixed" && (r = null), (i ? !c && !r : !c && l.position === "static" && !!r && Fn.has(r.position) || ae(s) && !c && ut(e, s)) ? o = o.filter((a) => a !== s) : r = l, s = K(s);
924
- }
925
- return t.set(e, o), o;
926
- }
927
- function Bn(e) {
928
- let {
929
- element: t,
930
- boundary: n,
931
- rootBoundary: o,
932
- strategy: r
933
- } = e;
934
- const s = [...n === "clippingAncestors" ? ye(t) ? [] : Wn(t, this._c) : [].concat(n), o], l = s[0], c = s.reduce((f, a) => {
935
- const u = Je(t, a, r);
936
- return f.top = F(u.top, f.top), f.right = U(u.right, f.right), f.bottom = U(u.bottom, f.bottom), f.left = F(u.left, f.left), f;
937
- }, Je(t, l, r));
938
- return {
939
- width: c.right - c.left,
940
- height: c.bottom - c.top,
941
- x: c.left,
942
- y: c.top
943
- };
944
- }
945
- function Vn(e) {
946
- const {
947
- width: t,
948
- height: n
949
- } = lt(e);
950
- return {
951
- width: t,
952
- height: n
953
- };
954
- }
955
- function zn(e, t, n) {
956
- const o = Y(t), r = X(t), i = n === "fixed", s = Z(e, !0, i, t);
957
- let l = {
958
- scrollLeft: 0,
959
- scrollTop: 0
960
- };
961
- const c = j(0);
962
- function f() {
963
- c.x = be(r);
964
- }
965
- if (o || !o && !i)
966
- if ((oe(t) !== "body" || ae(r)) && (l = ve(t)), o) {
967
- const d = Z(t, !0, i, t);
968
- c.x = d.x + t.clientLeft, c.y = d.y + t.clientTop;
969
- } else r && f();
970
- i && !o && r && f();
971
- const a = r && !o && !i ? ft(r, l) : j(0), u = s.left + l.scrollLeft - c.x - a.x, p = s.top + l.scrollTop - c.y - a.y;
972
- return {
973
- x: u,
974
- y: p,
975
- width: s.width,
976
- height: s.height
977
- };
978
- }
979
- function Pe(e) {
980
- return B(e).position === "static";
981
- }
982
- function Qe(e, t) {
983
- if (!Y(e) || B(e).position === "fixed")
984
- return null;
985
- if (t)
986
- return t(e);
987
- let n = e.offsetParent;
988
- return X(e) === n && (n = n.ownerDocument.body), n;
989
- }
990
- function dt(e, t) {
991
- const n = I(e);
992
- if (ye(e))
993
- return n;
994
- if (!Y(e)) {
995
- let r = K(e);
996
- for (; r && !ee(r); ) {
997
- if (W(r) && !Pe(r))
998
- return r;
999
- r = K(r);
1000
- }
1001
- return n;
1002
- }
1003
- let o = Qe(e, t);
1004
- for (; o && Pn(o) && Pe(o); )
1005
- o = Qe(o, t);
1006
- return o && ee(o) && Pe(o) && !Ne(o) ? n : o || Ln(e) || n;
1007
- }
1008
- const jn = async function(e) {
1009
- const t = this.getOffsetParent || dt, n = this.getDimensions, o = await n(e.floating);
1010
- return {
1011
- reference: zn(e.reference, await t(e.floating), e.strategy),
1012
- floating: {
1013
- x: 0,
1014
- y: 0,
1015
- width: o.width,
1016
- height: o.height
1017
- }
1018
- };
1019
- };
1020
- function Yn(e) {
1021
- return B(e).direction === "rtl";
1022
- }
1023
- const Xn = {
1024
- convertOffsetParentRelativeRectToViewportRelativeRect: _n,
1025
- getDocumentElement: X,
1026
- getClippingRect: Bn,
1027
- getOffsetParent: dt,
1028
- getElementRects: jn,
1029
- getClientRects: Nn,
1030
- getDimensions: Vn,
1031
- getScale: Q,
1032
- isElement: W,
1033
- isRTL: Yn
1034
- };
1035
- function pt(e, t) {
1036
- return e.x === t.x && e.y === t.y && e.width === t.width && e.height === t.height;
1037
- }
1038
- function Gn(e, t) {
1039
- let n = null, o;
1040
- const r = X(e);
1041
- function i() {
1042
- var l;
1043
- clearTimeout(o), (l = n) == null || l.disconnect(), n = null;
1044
- }
1045
- function s(l, c) {
1046
- l === void 0 && (l = !1), c === void 0 && (c = 1), i();
1047
- const f = e.getBoundingClientRect(), {
1048
- left: a,
1049
- top: u,
1050
- width: p,
1051
- height: d
1052
- } = f;
1053
- if (l || t(), !p || !d)
1054
- return;
1055
- const h = ue(u), m = ue(r.clientWidth - (a + p)), w = ue(r.clientHeight - (u + d)), x = ue(a), C = {
1056
- rootMargin: -h + "px " + -m + "px " + -w + "px " + -x + "px",
1057
- threshold: F(0, U(1, c)) || 1
1058
- };
1059
- let v = !0;
1060
- function b(T) {
1061
- const P = T[0].intersectionRatio;
1062
- if (P !== c) {
1063
- if (!v)
1064
- return s();
1065
- P ? s(!1, P) : o = setTimeout(() => {
1066
- s(!1, 1e-7);
1067
- }, 1e3);
1068
- }
1069
- P === 1 && !pt(f, e.getBoundingClientRect()) && s(), v = !1;
1070
- }
1071
- try {
1072
- n = new IntersectionObserver(b, {
1073
- ...C,
1074
- // Handle <iframe>s
1075
- root: r.ownerDocument
1076
- });
1077
- } catch {
1078
- n = new IntersectionObserver(b, C);
1079
- }
1080
- n.observe(e);
1081
- }
1082
- return s(!0), i;
1083
- }
1084
- function qn(e, t, n, o) {
1085
- o === void 0 && (o = {});
1086
- const {
1087
- ancestorScroll: r = !0,
1088
- ancestorResize: i = !0,
1089
- elementResize: s = typeof ResizeObserver == "function",
1090
- layoutShift: l = typeof IntersectionObserver == "function",
1091
- animationFrame: c = !1
1092
- } = o, f = $e(e), a = r || i ? [...f ? se(f) : [], ...se(t)] : [];
1093
- a.forEach((x) => {
1094
- r && x.addEventListener("scroll", n, {
1095
- passive: !0
1096
- }), i && x.addEventListener("resize", n);
1097
- });
1098
- const u = f && l ? Gn(f, n) : null;
1099
- let p = -1, d = null;
1100
- s && (d = new ResizeObserver((x) => {
1101
- let [y] = x;
1102
- y && y.target === f && d && (d.unobserve(t), cancelAnimationFrame(p), p = requestAnimationFrame(() => {
1103
- var C;
1104
- (C = d) == null || C.observe(t);
1105
- })), n();
1106
- }), f && !c && d.observe(f), d.observe(t));
1107
- let h, m = c ? Z(e) : null;
1108
- c && w();
1109
- function w() {
1110
- const x = Z(e);
1111
- m && !pt(m, x) && n(), m = x, h = requestAnimationFrame(w);
1112
- }
1113
- return n(), () => {
1114
- var x;
1115
- a.forEach((y) => {
1116
- r && y.removeEventListener("scroll", n), i && y.removeEventListener("resize", n);
1117
- }), u?.(), (x = d) == null || x.disconnect(), d = null, c && cancelAnimationFrame(h);
1118
- };
1119
- }
1120
- const Un = yn, Kn = vn, Zn = gn, Jn = Cn, Qn = wn, et = mn, eo = bn, to = (e, t, n) => {
1121
- const o = /* @__PURE__ */ new Map(), r = {
1122
- platform: Xn,
1123
- ...n
1124
- }, i = {
1125
- ...r.platform,
1126
- _c: o
1127
- };
1128
- return hn(e, t, {
1129
- ...r,
1130
- platform: i
1131
- });
1132
- };
1133
- var no = typeof document < "u", oo = function() {
1134
- }, de = no ? jt : oo;
1135
- function ge(e, t) {
1136
- if (e === t)
1137
- return !0;
1138
- if (typeof e != typeof t)
1139
- return !1;
1140
- if (typeof e == "function" && e.toString() === t.toString())
1141
- return !0;
1142
- let n, o, r;
1143
- if (e && t && typeof e == "object") {
1144
- if (Array.isArray(e)) {
1145
- if (n = e.length, n !== t.length) return !1;
1146
- for (o = n; o-- !== 0; )
1147
- if (!ge(e[o], t[o]))
1148
- return !1;
1149
- return !0;
1150
- }
1151
- if (r = Object.keys(e), n = r.length, n !== Object.keys(t).length)
1152
- return !1;
1153
- for (o = n; o-- !== 0; )
1154
- if (!{}.hasOwnProperty.call(t, r[o]))
1155
- return !1;
1156
- for (o = n; o-- !== 0; ) {
1157
- const i = r[o];
1158
- if (!(i === "_owner" && e.$$typeof) && !ge(e[i], t[i]))
1159
- return !1;
1160
- }
1161
- return !0;
1162
- }
1163
- return e !== e && t !== t;
1164
- }
1165
- function ht(e) {
1166
- return typeof window > "u" ? 1 : (e.ownerDocument.defaultView || window).devicePixelRatio || 1;
1167
- }
1168
- function tt(e, t) {
1169
- const n = ht(e);
1170
- return Math.round(t * n) / n;
1171
- }
1172
- function Te(e) {
1173
- const t = g.useRef(e);
1174
- return de(() => {
1175
- t.current = e;
1176
- }), t;
1177
- }
1178
- function ro(e) {
1179
- e === void 0 && (e = {});
1180
- const {
1181
- placement: t = "bottom",
1182
- strategy: n = "absolute",
1183
- middleware: o = [],
1184
- platform: r,
1185
- elements: {
1186
- reference: i,
1187
- floating: s
1188
- } = {},
1189
- transform: l = !0,
1190
- whileElementsMounted: c,
1191
- open: f
1192
- } = e, [a, u] = g.useState({
1193
- x: 0,
1194
- y: 0,
1195
- strategy: n,
1196
- placement: t,
1197
- middlewareData: {},
1198
- isPositioned: !1
1199
- }), [p, d] = g.useState(o);
1200
- ge(p, o) || d(o);
1201
- const [h, m] = g.useState(null), [w, x] = g.useState(null), y = g.useCallback((A) => {
1202
- A !== T.current && (T.current = A, m(A));
1203
- }, []), C = g.useCallback((A) => {
1204
- A !== P.current && (P.current = A, x(A));
1205
- }, []), v = i || h, b = s || w, T = g.useRef(null), P = g.useRef(null), M = g.useRef(a), H = c != null, D = Te(c), _ = Te(r), N = Te(f), E = g.useCallback(() => {
1206
- if (!T.current || !P.current)
1207
- return;
1208
- const A = {
1209
- placement: t,
1210
- strategy: n,
1211
- middleware: p
1212
- };
1213
- _.current && (A.platform = _.current), to(T.current, P.current, A).then((k) => {
1214
- const V = {
1215
- ...k,
1216
- // The floating element's position may be recomputed while it's closed
1217
- // but still mounted (such as when transitioning out). To ensure
1218
- // `isPositioned` will be `false` initially on the next open, avoid
1219
- // setting it to `true` when `open === false` (must be specified).
1220
- isPositioned: N.current !== !1
1221
- };
1222
- O.current && !ge(M.current, V) && (M.current = V, Zt.flushSync(() => {
1223
- u(V);
1224
- }));
1225
- });
1226
- }, [p, t, n, _, N]);
1227
- de(() => {
1228
- f === !1 && M.current.isPositioned && (M.current.isPositioned = !1, u((A) => ({
1229
- ...A,
1230
- isPositioned: !1
1231
- })));
1232
- }, [f]);
1233
- const O = g.useRef(!1);
1234
- de(() => (O.current = !0, () => {
1235
- O.current = !1;
1236
- }), []), de(() => {
1237
- if (v && (T.current = v), b && (P.current = b), v && b) {
1238
- if (D.current)
1239
- return D.current(v, b, E);
1240
- E();
1241
- }
1242
- }, [v, b, E, D, H]);
1243
- const $ = g.useMemo(() => ({
1244
- reference: T,
1245
- floating: P,
1246
- setReference: y,
1247
- setFloating: C
1248
- }), [y, C]), S = g.useMemo(() => ({
1249
- reference: v,
1250
- floating: b
1251
- }), [v, b]), L = g.useMemo(() => {
1252
- const A = {
1253
- position: n,
1254
- left: 0,
1255
- top: 0
1256
- };
1257
- if (!S.floating)
1258
- return A;
1259
- const k = tt(S.floating, a.x), V = tt(S.floating, a.y);
1260
- return l ? {
1261
- ...A,
1262
- transform: "translate(" + k + "px, " + V + "px)",
1263
- ...ht(S.floating) >= 1.5 && {
1264
- willChange: "transform"
1265
- }
1266
- } : {
1267
- position: n,
1268
- left: k,
1269
- top: V
1270
- };
1271
- }, [n, l, S.floating, a.x, a.y]);
1272
- return g.useMemo(() => ({
1273
- ...a,
1274
- update: E,
1275
- refs: $,
1276
- elements: S,
1277
- floatingStyles: L
1278
- }), [a, E, $, S, L]);
1279
- }
1280
- const io = (e) => {
1281
- function t(n) {
1282
- return {}.hasOwnProperty.call(n, "current");
1283
- }
1284
- return {
1285
- name: "arrow",
1286
- options: e,
1287
- fn(n) {
1288
- const {
1289
- element: o,
1290
- padding: r
1291
- } = typeof e == "function" ? e(n) : e;
1292
- return o && t(o) ? o.current != null ? et({
1293
- element: o.current,
1294
- padding: r
1295
- }).fn(n) : {} : o ? et({
1296
- element: o,
1297
- padding: r
1298
- }).fn(n) : {};
1299
- }
1300
- };
1301
- }, so = (e, t) => ({
1302
- ...Un(e),
1303
- options: [e, t]
1304
- }), co = (e, t) => ({
1305
- ...Kn(e),
1306
- options: [e, t]
1307
- }), lo = (e, t) => ({
1308
- ...eo(e),
1309
- options: [e, t]
1310
- }), ao = (e, t) => ({
1311
- ...Zn(e),
1312
- options: [e, t]
1313
- }), fo = (e, t) => ({
1314
- ...Jn(e),
1315
- options: [e, t]
1316
- }), uo = (e, t) => ({
1317
- ...Qn(e),
1318
- options: [e, t]
1319
- }), po = (e, t) => ({
1320
- ...io(e),
1321
- options: [e, t]
1322
- });
1323
- var ho = "Arrow", mt = g.forwardRef((e, t) => {
1324
- const { children: n, width: o = 10, height: r = 5, ...i } = e;
1325
- return /* @__PURE__ */ R(
1326
- le.svg,
1327
- {
1328
- ...i,
1329
- ref: t,
1330
- width: o,
1331
- height: r,
1332
- viewBox: "0 0 30 10",
1333
- preserveAspectRatio: "none",
1334
- children: e.asChild ? n : /* @__PURE__ */ R("polygon", { points: "0,0 30,0 15,10" })
1335
- }
1336
- );
1337
- });
1338
- mt.displayName = ho;
1339
- var mo = mt, Fe = "Popper", [gt, wt] = ot(Fe), [go, xt] = gt(Fe), yt = (e) => {
1340
- const { __scopePopper: t, children: n } = e, [o, r] = g.useState(null);
1341
- return /* @__PURE__ */ R(go, { scope: t, anchor: o, onAnchorChange: r, children: n });
1342
- };
1343
- yt.displayName = Fe;
1344
- var vt = "PopperAnchor", bt = g.forwardRef(
1345
- (e, t) => {
1346
- const { __scopePopper: n, virtualRef: o, ...r } = e, i = xt(vt, n), s = g.useRef(null), l = we(t, s), c = g.useRef(null);
1347
- return g.useEffect(() => {
1348
- const f = c.current;
1349
- c.current = o?.current || s.current, f !== c.current && i.onAnchorChange(c.current);
1350
- }), o ? null : /* @__PURE__ */ R(le.div, { ...r, ref: l });
1351
- }
1352
- );
1353
- bt.displayName = vt;
1354
- var Ie = "PopperContent", [wo, xo] = gt(Ie), Ct = g.forwardRef(
1355
- (e, t) => {
1356
- const {
1357
- __scopePopper: n,
1358
- side: o = "bottom",
1359
- sideOffset: r = 0,
1360
- align: i = "center",
1361
- alignOffset: s = 0,
1362
- arrowPadding: l = 0,
1363
- avoidCollisions: c = !0,
1364
- collisionBoundary: f = [],
1365
- collisionPadding: a = 0,
1366
- sticky: u = "partial",
1367
- hideWhenDetached: p = !1,
1368
- updatePositionStrategy: d = "optimized",
1369
- onPlaced: h,
1370
- ...m
1371
- } = e, w = xt(Ie, n), [x, y] = g.useState(null), C = we(t, (re) => y(re)), [v, b] = g.useState(null), T = Qt(v), P = T?.width ?? 0, M = T?.height ?? 0, H = o + (i !== "center" ? "-" + i : ""), D = typeof a == "number" ? a : { top: 0, right: 0, bottom: 0, left: 0, ...a }, _ = Array.isArray(f) ? f : [f], N = _.length > 0, E = {
1372
- padding: D,
1373
- boundary: _.filter(vo),
1374
- // with `strategy: 'fixed'`, this is the only way to get it to respect boundaries
1375
- altBoundary: N
1376
- }, { refs: O, floatingStyles: $, placement: S, isPositioned: L, middlewareData: A } = ro({
1377
- // default to `fixed` strategy so users don't have to pick and we also avoid focus scroll issues
1378
- strategy: "fixed",
1379
- placement: H,
1380
- whileElementsMounted: (...re) => qn(...re, {
1381
- animationFrame: d === "always"
1382
- }),
1383
- elements: {
1384
- reference: w.anchor
1385
- },
1386
- middleware: [
1387
- so({ mainAxis: r + M, alignmentAxis: s }),
1388
- c && co({
1389
- mainAxis: !0,
1390
- crossAxis: !1,
1391
- limiter: u === "partial" ? lo() : void 0,
1392
- ...E
1393
- }),
1394
- c && ao({ ...E }),
1395
- fo({
1396
- ...E,
1397
- apply: ({ elements: re, rects: Ve, availableWidth: It, availableHeight: Wt }) => {
1398
- const { width: Bt, height: Vt } = Ve.reference, fe = re.floating.style;
1399
- fe.setProperty("--radix-popper-available-width", `${It}px`), fe.setProperty("--radix-popper-available-height", `${Wt}px`), fe.setProperty("--radix-popper-anchor-width", `${Bt}px`), fe.setProperty("--radix-popper-anchor-height", `${Vt}px`);
1400
- }
1401
- }),
1402
- v && po({ element: v, padding: l }),
1403
- bo({ arrowWidth: P, arrowHeight: M }),
1404
- p && uo({ strategy: "referenceHidden", ...E })
1405
- ]
1406
- }), [k, V] = Pt(S), Be = Jt(h);
1407
- je(() => {
1408
- L && Be?.();
1409
- }, [L, Be]);
1410
- const _t = A.arrow?.x, Nt = A.arrow?.y, Ht = A.arrow?.centerOffset !== 0, [$t, Ft] = g.useState();
1411
- return je(() => {
1412
- x && Ft(window.getComputedStyle(x).zIndex);
1413
- }, [x]), /* @__PURE__ */ R(
1414
- "div",
1415
- {
1416
- ref: O.setFloating,
1417
- "data-radix-popper-content-wrapper": "",
1418
- style: {
1419
- ...$,
1420
- transform: L ? $.transform : "translate(0, -200%)",
1421
- // keep off the page when measuring
1422
- minWidth: "max-content",
1423
- zIndex: $t,
1424
- "--radix-popper-transform-origin": [
1425
- A.transformOrigin?.x,
1426
- A.transformOrigin?.y
1427
- ].join(" "),
1428
- // hide the content if using the hide middleware and should be hidden
1429
- // set visibility to hidden and disable pointer events so the UI behaves
1430
- // as if the PopperContent isn't there at all
1431
- ...A.hide?.referenceHidden && {
1432
- visibility: "hidden",
1433
- pointerEvents: "none"
1434
- }
1435
- },
1436
- dir: e.dir,
1437
- children: /* @__PURE__ */ R(
1438
- wo,
1439
- {
1440
- scope: n,
1441
- placedSide: k,
1442
- onArrowChange: b,
1443
- arrowX: _t,
1444
- arrowY: Nt,
1445
- shouldHideArrow: Ht,
1446
- children: /* @__PURE__ */ R(
1447
- le.div,
1448
- {
1449
- "data-side": k,
1450
- "data-align": V,
1451
- ...m,
1452
- ref: C,
1453
- style: {
1454
- ...m.style,
1455
- // if the PopperContent hasn't been placed yet (not all measurements done)
1456
- // we prevent animations so that users's animation don't kick in too early referring wrong sides
1457
- animation: L ? void 0 : "none"
1458
- }
1459
- }
1460
- )
1461
- }
1462
- )
1463
- }
1464
- );
1465
- }
1466
- );
1467
- Ct.displayName = Ie;
1468
- var At = "PopperArrow", yo = {
1469
- top: "bottom",
1470
- right: "left",
1471
- bottom: "top",
1472
- left: "right"
1473
- }, Rt = g.forwardRef(function(t, n) {
1474
- const { __scopePopper: o, ...r } = t, i = xo(At, o), s = yo[i.placedSide];
1475
- return (
1476
- // we have to use an extra wrapper because `ResizeObserver` (used by `useSize`)
1477
- // doesn't report size as we'd expect on SVG elements.
1478
- // it reports their bounding box which is effectively the largest path inside the SVG.
1479
- /* @__PURE__ */ R(
1480
- "span",
1481
- {
1482
- ref: i.onArrowChange,
1483
- style: {
1484
- position: "absolute",
1485
- left: i.arrowX,
1486
- top: i.arrowY,
1487
- [s]: 0,
1488
- transformOrigin: {
1489
- top: "",
1490
- right: "0 0",
1491
- bottom: "center 0",
1492
- left: "100% 0"
1493
- }[i.placedSide],
1494
- transform: {
1495
- top: "translateY(100%)",
1496
- right: "translateY(50%) rotate(90deg) translateX(-50%)",
1497
- bottom: "rotate(180deg)",
1498
- left: "translateY(50%) rotate(-90deg) translateX(50%)"
1499
- }[i.placedSide],
1500
- visibility: i.shouldHideArrow ? "hidden" : void 0
1501
- },
1502
- children: /* @__PURE__ */ R(
1503
- mo,
1504
- {
1505
- ...r,
1506
- ref: n,
1507
- style: {
1508
- ...r.style,
1509
- // ensures the element can be measured correctly (mostly for if SVG)
1510
- display: "block"
1511
- }
1512
- }
1513
- )
1514
- }
1515
- )
1516
- );
1517
- });
1518
- Rt.displayName = At;
1519
- function vo(e) {
1520
- return e !== null;
1521
- }
1522
- var bo = (e) => ({
1523
- name: "transformOrigin",
1524
- options: e,
1525
- fn(t) {
1526
- const { placement: n, rects: o, middlewareData: r } = t, s = r.arrow?.centerOffset !== 0, l = s ? 0 : e.arrowWidth, c = s ? 0 : e.arrowHeight, [f, a] = Pt(n), u = { start: "0%", center: "50%", end: "100%" }[a], p = (r.arrow?.x ?? 0) + l / 2, d = (r.arrow?.y ?? 0) + c / 2;
1527
- let h = "", m = "";
1528
- return f === "bottom" ? (h = s ? u : `${p}px`, m = `${-c}px`) : f === "top" ? (h = s ? u : `${p}px`, m = `${o.floating.height + c}px`) : f === "right" ? (h = `${-c}px`, m = s ? u : `${d}px`) : f === "left" && (h = `${o.floating.width + c}px`, m = s ? u : `${d}px`), { data: { x: h, y: m } };
1529
- }
1530
- });
1531
- function Pt(e) {
1532
- const [t, n = "center"] = e.split("-");
1533
- return [t, n];
1534
- }
1535
- var Co = yt, Ao = bt, Ro = Ct, Po = Rt, To = Symbol("radix.slottable");
1536
- // @__NO_SIDE_EFFECTS__
1537
- function Oo(e) {
1538
- const t = ({ children: n }) => /* @__PURE__ */ R(zt, { children: n });
1539
- return t.displayName = `${e}.Slottable`, t.__radixId = To, t;
1540
- }
1541
- var Eo = Object.freeze({
1542
- // See: https://github.com/twbs/bootstrap/blob/main/scss/mixins/_visually-hidden.scss
1543
- position: "absolute",
1544
- border: 0,
1545
- width: 1,
1546
- height: 1,
1547
- padding: 0,
1548
- margin: -1,
1549
- overflow: "hidden",
1550
- clip: "rect(0, 0, 0, 0)",
1551
- whiteSpace: "nowrap",
1552
- wordWrap: "normal"
1553
- }), So = "VisuallyHidden", Tt = g.forwardRef(
1554
- (e, t) => /* @__PURE__ */ R(
1555
- le.span,
1556
- {
1557
- ...e,
1558
- ref: t,
1559
- style: { ...Eo, ...e.style }
1560
- }
1561
- )
1562
- );
1563
- Tt.displayName = So;
1564
- var Lo = Tt, [Ce, cr] = ot("Tooltip", [
1565
- wt
1566
- ]), Ae = wt(), Ot = "TooltipProvider", Do = 700, Le = "tooltip.open", [Mo, We] = Ce(Ot), Et = (e) => {
1567
- const {
1568
- __scopeTooltip: t,
1569
- delayDuration: n = Do,
1570
- skipDelayDuration: o = 300,
1571
- disableHoverableContent: r = !1,
1572
- children: i
1573
- } = e, s = g.useRef(!0), l = g.useRef(!1), c = g.useRef(0);
1574
- return g.useEffect(() => {
1575
- const f = c.current;
1576
- return () => window.clearTimeout(f);
1577
- }, []), /* @__PURE__ */ R(
1578
- Mo,
1579
- {
1580
- scope: t,
1581
- isOpenDelayedRef: s,
1582
- delayDuration: n,
1583
- onOpen: g.useCallback(() => {
1584
- window.clearTimeout(c.current), s.current = !1;
1585
- }, []),
1586
- onClose: g.useCallback(() => {
1587
- window.clearTimeout(c.current), c.current = window.setTimeout(
1588
- () => s.current = !0,
1589
- o
1590
- );
1591
- }, [o]),
1592
- isPointerInTransitRef: l,
1593
- onPointerInTransitChange: g.useCallback((f) => {
1594
- l.current = f;
1595
- }, []),
1596
- disableHoverableContent: r,
1597
- children: i
1598
- }
1599
- );
1600
- };
1601
- Et.displayName = Ot;
1602
- var ce = "Tooltip", [ko, Re] = Ce(ce), St = (e) => {
1603
- const {
1604
- __scopeTooltip: t,
1605
- children: n,
1606
- open: o,
1607
- defaultOpen: r,
1608
- onOpenChange: i,
1609
- disableHoverableContent: s,
1610
- delayDuration: l
1611
- } = e, c = We(ce, e.__scopeTooltip), f = Ae(t), [a, u] = g.useState(null), p = Kt(), d = g.useRef(0), h = s ?? c.disableHoverableContent, m = l ?? c.delayDuration, w = g.useRef(!1), [x, y] = qt({
1612
- prop: o,
1613
- defaultProp: r ?? !1,
1614
- onChange: (P) => {
1615
- P ? (c.onOpen(), document.dispatchEvent(new CustomEvent(Le))) : c.onClose(), i?.(P);
1616
- },
1617
- caller: ce
1618
- }), C = g.useMemo(() => x ? w.current ? "delayed-open" : "instant-open" : "closed", [x]), v = g.useCallback(() => {
1619
- window.clearTimeout(d.current), d.current = 0, w.current = !1, y(!0);
1620
- }, [y]), b = g.useCallback(() => {
1621
- window.clearTimeout(d.current), d.current = 0, y(!1);
1622
- }, [y]), T = g.useCallback(() => {
1623
- window.clearTimeout(d.current), d.current = window.setTimeout(() => {
1624
- w.current = !0, y(!0), d.current = 0;
1625
- }, m);
1626
- }, [m, y]);
1627
- return g.useEffect(() => () => {
1628
- d.current && (window.clearTimeout(d.current), d.current = 0);
1629
- }, []), /* @__PURE__ */ R(Co, { ...f, children: /* @__PURE__ */ R(
1630
- ko,
1631
- {
1632
- scope: t,
1633
- contentId: p,
1634
- open: x,
1635
- stateAttribute: C,
1636
- trigger: a,
1637
- onTriggerChange: u,
1638
- onTriggerEnter: g.useCallback(() => {
1639
- c.isOpenDelayedRef.current ? T() : v();
1640
- }, [c.isOpenDelayedRef, T, v]),
1641
- onTriggerLeave: g.useCallback(() => {
1642
- h ? b() : (window.clearTimeout(d.current), d.current = 0);
1643
- }, [b, h]),
1644
- onOpen: v,
1645
- onClose: b,
1646
- disableHoverableContent: h,
1647
- children: n
1648
- }
1649
- ) });
1650
- };
1651
- St.displayName = ce;
1652
- var De = "TooltipTrigger", Lt = g.forwardRef(
1653
- (e, t) => {
1654
- const { __scopeTooltip: n, ...o } = e, r = Re(De, n), i = We(De, n), s = Ae(n), l = g.useRef(null), c = we(t, l, r.onTriggerChange), f = g.useRef(!1), a = g.useRef(!1), u = g.useCallback(() => f.current = !1, []);
1655
- return g.useEffect(() => () => document.removeEventListener("pointerup", u), [u]), /* @__PURE__ */ R(Ao, { asChild: !0, ...s, children: /* @__PURE__ */ R(
1656
- le.button,
1657
- {
1658
- "aria-describedby": r.open ? r.contentId : void 0,
1659
- "data-state": r.stateAttribute,
1660
- ...o,
1661
- ref: c,
1662
- onPointerMove: J(e.onPointerMove, (p) => {
1663
- p.pointerType !== "touch" && !a.current && !i.isPointerInTransitRef.current && (r.onTriggerEnter(), a.current = !0);
1664
- }),
1665
- onPointerLeave: J(e.onPointerLeave, () => {
1666
- r.onTriggerLeave(), a.current = !1;
1667
- }),
1668
- onPointerDown: J(e.onPointerDown, () => {
1669
- r.open && r.onClose(), f.current = !0, document.addEventListener("pointerup", u, { once: !0 });
1670
- }),
1671
- onFocus: J(e.onFocus, () => {
1672
- f.current || r.onOpen();
1673
- }),
1674
- onBlur: J(e.onBlur, r.onClose),
1675
- onClick: J(e.onClick, r.onClose)
1676
- }
1677
- ) });
1678
- }
1679
- );
1680
- Lt.displayName = De;
1681
- var _o = "TooltipPortal", [lr, No] = Ce(_o, {
1682
- forceMount: void 0
1683
- }), te = "TooltipContent", Dt = g.forwardRef(
1684
- (e, t) => {
1685
- const n = No(te, e.__scopeTooltip), { forceMount: o = n.forceMount, side: r = "top", ...i } = e, s = Re(te, e.__scopeTooltip);
1686
- return /* @__PURE__ */ R(en, { present: o || s.open, children: s.disableHoverableContent ? /* @__PURE__ */ R(Mt, { side: r, ...i, ref: t }) : /* @__PURE__ */ R(Ho, { side: r, ...i, ref: t }) });
1687
- }
1688
- ), Ho = g.forwardRef((e, t) => {
1689
- const n = Re(te, e.__scopeTooltip), o = We(te, e.__scopeTooltip), r = g.useRef(null), i = we(t, r), [s, l] = g.useState(null), { trigger: c, onClose: f } = n, a = r.current, { onPointerInTransitChange: u } = o, p = g.useCallback(() => {
1690
- l(null), u(!1);
1691
- }, [u]), d = g.useCallback(
1692
- (h, m) => {
1693
- const w = h.currentTarget, x = { x: h.clientX, y: h.clientY }, y = Bo(x, w.getBoundingClientRect()), C = Vo(x, y), v = zo(m.getBoundingClientRect()), b = Yo([...C, ...v]);
1694
- l(b), u(!0);
1695
- },
1696
- [u]
1697
- );
1698
- return g.useEffect(() => () => p(), [p]), g.useEffect(() => {
1699
- if (c && a) {
1700
- const h = (w) => d(w, a), m = (w) => d(w, c);
1701
- return c.addEventListener("pointerleave", h), a.addEventListener("pointerleave", m), () => {
1702
- c.removeEventListener("pointerleave", h), a.removeEventListener("pointerleave", m);
1703
- };
1704
- }
1705
- }, [c, a, d, p]), g.useEffect(() => {
1706
- if (s) {
1707
- const h = (m) => {
1708
- const w = m.target, x = { x: m.clientX, y: m.clientY }, y = c?.contains(w) || a?.contains(w), C = !jo(x, s);
1709
- y ? p() : C && (p(), f());
1710
- };
1711
- return document.addEventListener("pointermove", h), () => document.removeEventListener("pointermove", h);
1712
- }
1713
- }, [c, a, s, f, p]), /* @__PURE__ */ R(Mt, { ...e, ref: i });
1714
- }), [$o, Fo] = Ce(ce, { isInside: !1 }), Io = /* @__PURE__ */ Oo("TooltipContent"), Mt = g.forwardRef(
1715
- (e, t) => {
1716
- const {
1717
- __scopeTooltip: n,
1718
- children: o,
1719
- "aria-label": r,
1720
- onEscapeKeyDown: i,
1721
- onPointerDownOutside: s,
1722
- ...l
1723
- } = e, c = Re(te, n), f = Ae(n), { onClose: a } = c;
1724
- return g.useEffect(() => (document.addEventListener(Le, a), () => document.removeEventListener(Le, a)), [a]), g.useEffect(() => {
1725
- if (c.trigger) {
1726
- const u = (p) => {
1727
- p.target?.contains(c.trigger) && a();
1728
- };
1729
- return window.addEventListener("scroll", u, { capture: !0 }), () => window.removeEventListener("scroll", u, { capture: !0 });
1730
- }
1731
- }, [c.trigger, a]), /* @__PURE__ */ R(
1732
- Ut,
1733
- {
1734
- asChild: !0,
1735
- disableOutsidePointerEvents: !1,
1736
- onEscapeKeyDown: i,
1737
- onPointerDownOutside: s,
1738
- onFocusOutside: (u) => u.preventDefault(),
1739
- onDismiss: a,
1740
- children: /* @__PURE__ */ nt(
1741
- Ro,
1742
- {
1743
- "data-state": c.stateAttribute,
1744
- ...f,
1745
- ...l,
1746
- ref: t,
1747
- style: {
1748
- ...l.style,
1749
- "--radix-tooltip-content-transform-origin": "var(--radix-popper-transform-origin)",
1750
- "--radix-tooltip-content-available-width": "var(--radix-popper-available-width)",
1751
- "--radix-tooltip-content-available-height": "var(--radix-popper-available-height)",
1752
- "--radix-tooltip-trigger-width": "var(--radix-popper-anchor-width)",
1753
- "--radix-tooltip-trigger-height": "var(--radix-popper-anchor-height)"
1754
- },
1755
- children: [
1756
- /* @__PURE__ */ R(Io, { children: o }),
1757
- /* @__PURE__ */ R($o, { scope: n, isInside: !0, children: /* @__PURE__ */ R(Lo, { id: c.contentId, role: "tooltip", children: r || o }) })
1758
- ]
1759
- }
1760
- )
1761
- }
1762
- );
1763
- }
1764
- );
1765
- Dt.displayName = te;
1766
- var kt = "TooltipArrow", Wo = g.forwardRef(
1767
- (e, t) => {
1768
- const { __scopeTooltip: n, ...o } = e, r = Ae(n);
1769
- return Fo(
1770
- kt,
1771
- n
1772
- ).isInside ? null : /* @__PURE__ */ R(Po, { ...r, ...o, ref: t });
1773
- }
1774
- );
1775
- Wo.displayName = kt;
1776
- function Bo(e, t) {
1777
- const n = Math.abs(t.top - e.y), o = Math.abs(t.bottom - e.y), r = Math.abs(t.right - e.x), i = Math.abs(t.left - e.x);
1778
- switch (Math.min(n, o, r, i)) {
1779
- case i:
1780
- return "left";
1781
- case r:
1782
- return "right";
1783
- case n:
1784
- return "top";
1785
- case o:
1786
- return "bottom";
1787
- default:
1788
- throw new Error("unreachable");
1789
- }
1790
- }
1791
- function Vo(e, t, n = 5) {
1792
- const o = [];
1793
- switch (t) {
1794
- case "top":
1795
- o.push(
1796
- { x: e.x - n, y: e.y + n },
1797
- { x: e.x + n, y: e.y + n }
1798
- );
1799
- break;
1800
- case "bottom":
1801
- o.push(
1802
- { x: e.x - n, y: e.y - n },
1803
- { x: e.x + n, y: e.y - n }
1804
- );
1805
- break;
1806
- case "left":
1807
- o.push(
1808
- { x: e.x + n, y: e.y - n },
1809
- { x: e.x + n, y: e.y + n }
1810
- );
1811
- break;
1812
- case "right":
1813
- o.push(
1814
- { x: e.x - n, y: e.y - n },
1815
- { x: e.x - n, y: e.y + n }
1816
- );
1817
- break;
1818
- }
1819
- return o;
1820
- }
1821
- function zo(e) {
1822
- const { top: t, right: n, bottom: o, left: r } = e;
1823
- return [
1824
- { x: r, y: t },
1825
- { x: n, y: t },
1826
- { x: n, y: o },
1827
- { x: r, y: o }
1828
- ];
1829
- }
1830
- function jo(e, t) {
1831
- const { x: n, y: o } = e;
1832
- let r = !1;
1833
- for (let i = 0, s = t.length - 1; i < t.length; s = i++) {
1834
- const l = t[i], c = t[s], f = l.x, a = l.y, u = c.x, p = c.y;
1835
- a > o != p > o && n < (u - f) * (o - a) / (p - a) + f && (r = !r);
1836
- }
1837
- return r;
1838
- }
1839
- function Yo(e) {
1840
- const t = e.slice();
1841
- return t.sort((n, o) => n.x < o.x ? -1 : n.x > o.x ? 1 : n.y < o.y ? -1 : n.y > o.y ? 1 : 0), Xo(t);
1842
- }
1843
- function Xo(e) {
1844
- if (e.length <= 1) return e.slice();
1845
- const t = [];
1846
- for (let o = 0; o < e.length; o++) {
1847
- const r = e[o];
1848
- for (; t.length >= 2; ) {
1849
- const i = t[t.length - 1], s = t[t.length - 2];
1850
- if ((i.x - s.x) * (r.y - s.y) >= (i.y - s.y) * (r.x - s.x)) t.pop();
1851
- else break;
1852
- }
1853
- t.push(r);
1854
- }
1855
- t.pop();
1856
- const n = [];
1857
- for (let o = e.length - 1; o >= 0; o--) {
1858
- const r = e[o];
1859
- for (; n.length >= 2; ) {
1860
- const i = n[n.length - 1], s = n[n.length - 2];
1861
- if ((i.x - s.x) * (r.y - s.y) >= (i.y - s.y) * (r.x - s.x)) n.pop();
1862
- else break;
1863
- }
1864
- n.push(r);
1865
- }
1866
- return n.pop(), t.length === 1 && n.length === 1 && t[0].x === n[0].x && t[0].y === n[0].y ? t : t.concat(n);
1867
- }
1868
- var Go = Et, qo = St, Uo = Lt, Ko = Dt;
1869
- const ar = ({ getValue: e, value: t }) => {
1870
- const n = Yt(null), [o, r] = Xt(!1), i = t ?? e().toLocaleLowerCase(), s = Gt(() => {
1871
- const l = n.current;
1872
- l && r(l.scrollWidth > l.clientWidth);
1
+ import { jsx as r, jsxs as d } from "react/jsx-runtime";
2
+ import { P as u, R as b, T as m, C as p } from "../../../../index-2hB40Iuc.js";
3
+ import { d as h } from "../../../../debounce-BFejQm9P.js";
4
+ import { useRef as x, useState as w, useCallback as g, useEffect as s } from "react";
5
+ const v = ({ getValue: l, value: i }) => {
6
+ const a = x(null), [c, f] = w(!1), n = i ?? l().toLocaleLowerCase(), t = g(() => {
7
+ const e = a.current;
8
+ e && f(e.scrollWidth > e.clientWidth);
1873
9
  }, []);
1874
- return ze(() => {
1875
- const l = new AbortController(), c = tn(s, 300);
1876
- return window.addEventListener("resize", c, {
1877
- signal: l.signal
10
+ return s(() => {
11
+ const e = new AbortController(), o = h(t, 300);
12
+ return window.addEventListener("resize", o, {
13
+ signal: e.signal
1878
14
  }), () => {
1879
- l.abort(), c.cancel();
15
+ e.abort(), o.cancel();
1880
16
  };
1881
- }, [s]), ze(() => {
1882
- s();
1883
- }, [s]), o ? /* @__PURE__ */ R(Go, { delayDuration: 0, children: /* @__PURE__ */ nt(qo, { children: [
1884
- /* @__PURE__ */ R(Uo, { asChild: !0, children: /* @__PURE__ */ R("p", { ref: n, className: "w-full truncate cursor-pointer", children: i }) }),
1885
- /* @__PURE__ */ R(
1886
- Ko,
17
+ }, [t]), s(() => {
18
+ t();
19
+ }, [t]), c ? /* @__PURE__ */ r(u, { delayDuration: 0, children: /* @__PURE__ */ d(b, { children: [
20
+ /* @__PURE__ */ r(m, { asChild: !0, children: /* @__PURE__ */ r("p", { ref: a, className: "w-full truncate cursor-pointer", children: n }) }),
21
+ /* @__PURE__ */ r(
22
+ p,
1887
23
  {
1888
24
  side: "bottom",
1889
25
  align: "center",
1890
26
  className: "animate-in fade-in-0 relative mt-1.5 overflow-visible bg-kubefirst-dark-blue-900 text-white px-3 py-2 after:content-[''] after:absolute after:left-1/2 after:-translate-x-1/2 after:top-0 after:-translate-y-full after:border-l-8 after:border-l-transparent after:border-r-8 after:border-r-transparent after:border-b-8 after:border-kubefirst-dark-blue-900",
1891
- children: i
27
+ children: n
1892
28
  }
1893
29
  )
1894
- ] }) }) : /* @__PURE__ */ R("p", { ref: n, className: "w-full truncate", children: i });
30
+ ] }) }) : /* @__PURE__ */ r("p", { ref: a, className: "w-full truncate", children: n });
1895
31
  };
1896
32
  export {
1897
- ar as TruncateText
33
+ v as TruncateText
1898
34
  };