ics-ui-kit 0.1.0-alpha.12 → 0.1.0-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.
- package/dist/Button-DQtBfU9y.js +57 -0
- package/dist/Button-DQtBfU9y.js.map +1 -0
- package/dist/{Button-DhfE69q0.js → ButtonBase-BEM8SNmT.js} +27 -56
- package/dist/ButtonBase-BEM8SNmT.js.map +1 -0
- package/dist/CarouselItem-pSHe0ufN.js +1500 -0
- package/dist/CarouselItem-pSHe0ufN.js.map +1 -0
- package/dist/CheckboxField-i_-dPpFM.js +370 -0
- package/dist/CheckboxField-i_-dPpFM.js.map +1 -0
- package/dist/Divider-C0Ss5GJT.js +47 -0
- package/dist/{Divider-D3NvaU8c.js.map → Divider-C0Ss5GJT.js.map} +1 -1
- package/dist/Field-3XJNFTql.js +78 -0
- package/dist/Field-3XJNFTql.js.map +1 -0
- package/dist/FieldLabel-CAbVan3E.js +97 -0
- package/dist/FieldLabel-CAbVan3E.js.map +1 -0
- package/dist/FormBody-4HptEjhb.js +103 -0
- package/dist/FormBody-4HptEjhb.js.map +1 -0
- package/dist/{IconButton-BUPs2kEo.js → IconButton-BkBsOIf5.js} +15 -15
- package/dist/{IconButton-BUPs2kEo.js.map → IconButton-BkBsOIf5.js.map} +1 -1
- package/dist/ImagePlaceholder-CNAKQWTh.js +45 -0
- package/dist/ImagePlaceholder-CNAKQWTh.js.map +1 -0
- package/dist/ImagePreview-DHi7A8md.js +156 -0
- package/dist/ImagePreview-DHi7A8md.js.map +1 -0
- package/dist/ImageUploader-46sxdmt5.js +123 -0
- package/dist/ImageUploader-46sxdmt5.js.map +1 -0
- package/dist/IsolatedStylesWrapper-WgaoHh7y.js +179 -0
- package/dist/IsolatedStylesWrapper-WgaoHh7y.js.map +1 -0
- package/dist/Modal-D33MSQot.js +125 -0
- package/dist/Modal-D33MSQot.js.map +1 -0
- package/dist/ScrollShadowContainer-ByNH68Kg.js +636 -0
- package/dist/ScrollShadowContainer-ByNH68Kg.js.map +1 -0
- package/dist/Toggle-7AlEmn8A.js +104 -0
- package/dist/Toggle-7AlEmn8A.js.map +1 -0
- package/dist/ToggleGroup-CT453MNp.js +200 -0
- package/dist/ToggleGroup-CT453MNp.js.map +1 -0
- package/dist/Tooltip-C4BbGF2_.js +372 -0
- package/dist/Tooltip-C4BbGF2_.js.map +1 -0
- package/dist/{bundle-mjs-D6wdQkGI.js → bundle-mjs-LhQum_e3.js} +676 -425
- package/dist/bundle-mjs-LhQum_e3.js.map +1 -0
- package/dist/check-C-TqZgvb.js.map +1 -1
- package/dist/chevron-right-CobOebzi.js.map +1 -1
- package/dist/components/badge.js +1 -1
- package/dist/components/button/icon-button/IconButton.stories.d.ts +330 -2
- package/dist/components/button/loading-button/LoadingButton.d.ts +249 -0
- package/dist/components/button/loading-button/LoadingButton.stories.d.ts +219 -0
- package/dist/components/button.js +6 -5
- package/dist/components/button.js.map +1 -1
- package/dist/components/carousel.js +65 -1532
- package/dist/components/carousel.js.map +1 -1
- package/dist/components/checkbox.js +1 -1
- package/dist/components/divider/content-divider/ContentDivider.d.ts +14 -0
- package/dist/components/divider/content-divider/ContentDivider.stories.d.ts +7 -0
- package/dist/components/divider/index.d.ts +1 -0
- package/dist/components/divider.js +45 -2
- package/dist/components/divider.js.map +1 -1
- package/dist/components/drawer/templates/drawer-footer-template/DrawerFooterTemplate.d.ts +3 -0
- package/dist/components/drawer.js +450 -447
- package/dist/components/drawer.js.map +1 -1
- package/dist/components/dropdown.js +37 -33
- package/dist/components/dropdown.js.map +1 -1
- package/dist/components/empty-state/EmptyState.d.ts +2 -2
- package/dist/components/empty-state.js +1 -1
- package/dist/components/empty-state.js.map +1 -1
- package/dist/components/field/Field.d.ts +35 -0
- package/dist/components/field.js +1 -1
- package/dist/components/form/components/form-header/FormHeader.d.ts +2 -2
- package/dist/components/form.js +289 -288
- package/dist/components/form.js.map +1 -1
- package/dist/components/gallery/Gallery.d.ts +21 -0
- package/dist/components/gallery/Gallery.stories.d.ts +26 -0
- package/dist/components/gallery/index.d.ts +1 -0
- package/dist/components/gallery.d.ts +2 -0
- package/dist/components/gallery.js +130 -0
- package/dist/components/gallery.js.map +1 -0
- package/dist/components/icon-tooltip/IconTooltip.d.ts +2 -1
- package/dist/components/image-placeholder.js +2 -42
- package/dist/components/image-placeholder.js.map +1 -1
- package/dist/components/image-preview/ImagePreview.d.ts +6 -6
- package/dist/components/image-preview.js +2 -136
- package/dist/components/image-preview.js.map +1 -1
- package/dist/components/image-uploader.js +2 -118
- package/dist/components/image-uploader.js.map +1 -1
- package/dist/components/input/file-input/FileInput.d.ts +3 -1
- package/dist/components/input-otp.js +1 -1
- package/dist/components/input-otp.js.map +1 -1
- package/dist/components/input.js +176 -195
- package/dist/components/input.js.map +1 -1
- package/dist/components/isolated-styles-wrapper/IsolatedStylesWrapper.d.ts +1 -1
- package/dist/components/label/Label.stories.d.ts +0 -2
- package/dist/components/label/field-label/FieldLabel.d.ts +11 -0
- package/dist/components/label/field-label/FieldLabel.stories.d.ts +1 -0
- package/dist/components/label/field-label/components/RequiredIcon.d.ts +5 -0
- package/dist/components/label.js +1 -1
- package/dist/components/loading/Loading.d.ts +4 -4
- package/dist/components/loading.js +2 -2
- package/dist/components/loading.js.map +1 -1
- package/dist/components/modal.js +12 -122
- package/dist/components/modal.js.map +1 -1
- package/dist/components/option-group.js +1 -1
- package/dist/components/popover.js +34 -31
- package/dist/components/popover.js.map +1 -1
- package/dist/components/scheduler.js +11 -11
- package/dist/components/scheduler.js.map +1 -1
- package/dist/components/scroll-shadow-container/ScrollShadowContainer.d.ts +1 -0
- package/dist/components/scroll-shadow-container.js +1 -1
- package/dist/components/select.js +487 -519
- package/dist/components/select.js.map +1 -1
- package/dist/components/shortcut/Shortcut.d.ts +14 -14
- package/dist/components/shortcut/Shortcut.stories.d.ts +7 -7
- package/dist/components/shortcut.js +16 -16
- package/dist/components/shortcut.js.map +1 -1
- package/dist/components/skeleton/Skeleton.d.ts +1 -0
- package/dist/components/skeleton/Skeleton.stories.d.ts +7 -0
- package/dist/components/skeleton/index.d.ts +1 -0
- package/dist/components/skeleton.d.ts +2 -0
- package/dist/components/skeleton.js +33 -0
- package/dist/components/skeleton.js.map +1 -0
- package/dist/components/switch.js +147 -126
- package/dist/components/switch.js.map +1 -1
- package/dist/components/tabs.js +9 -8
- package/dist/components/tabs.js.map +1 -1
- package/dist/components/tag.js +3 -3
- package/dist/components/toast.js +4 -4
- package/dist/components/toast.js.map +1 -1
- package/dist/components/toggle-group.js +1 -1
- package/dist/components/toggle.js +1 -1
- package/dist/components/tooltip/Tooltip.stories.d.ts +7 -0
- package/dist/components/tooltip/index.d.ts +1 -0
- package/dist/components/tooltip.d.ts +2 -0
- package/dist/components/tooltip.js +8 -0
- package/dist/components/tooltip.js.map +1 -0
- package/dist/createLucideIcon-DgrNxRV5.js.map +1 -1
- package/dist/design-tokens.source.json +1 -1
- package/dist/download-CVOGyQ0e.js.map +1 -1
- package/dist/downloadFile-yZV-aaO2.js +15 -0
- package/dist/downloadFile-yZV-aaO2.js.map +1 -0
- package/dist/index-B6K06mzp.js +67 -0
- package/dist/index-B6K06mzp.js.map +1 -0
- package/dist/index-BCZIl2rL.js +68 -0
- package/dist/index-BCZIl2rL.js.map +1 -0
- package/dist/index-BZPx6jYI.js.map +1 -1
- package/dist/index-Bj6ZBhqh.js +105 -0
- package/dist/index-Bj6ZBhqh.js.map +1 -0
- package/dist/index-ByaXH_ih.js.map +1 -1
- package/dist/index-CACw01gt.js +702 -0
- package/dist/index-CACw01gt.js.map +1 -0
- package/dist/index-COBL2CQB.js +14 -0
- package/dist/index-COBL2CQB.js.map +1 -0
- package/dist/index-CR-odn5-.js.map +1 -1
- package/dist/{index-BjbwEU_d.js → index-ClwWa5fz.js} +20 -20
- package/dist/index-ClwWa5fz.js.map +1 -0
- package/dist/{index-DwbC6luJ.js → index-Cx4x7Bv2.js} +52 -50
- package/dist/index-Cx4x7Bv2.js.map +1 -0
- package/dist/index-CzNelU6n.js +55 -0
- package/dist/index-CzNelU6n.js.map +1 -0
- package/dist/index-DBsc8nMF.js +43 -0
- package/dist/index-DBsc8nMF.js.map +1 -0
- package/dist/index-Mbnk_gHS.js +102 -0
- package/dist/index-Mbnk_gHS.js.map +1 -0
- package/dist/index-bhXb51Q1.js +215 -0
- package/dist/index-bhXb51Q1.js.map +1 -0
- package/dist/index-n71RB2rx.js +1592 -0
- package/dist/index-n71RB2rx.js.map +1 -0
- package/dist/index-rKs9bXHr.js +7 -0
- package/dist/index-rKs9bXHr.js.map +1 -0
- package/dist/lib/utils/file/downloadFile.d.ts +2 -0
- package/dist/lib/utils/image/imageConverter.d.ts +23 -0
- package/dist/styles-scoped.css +72 -18
- package/dist/styles.css +72 -18
- package/dist/{utils-DGzAmwok.js → utils-BK4mPzkB.js} +2 -2
- package/dist/utils-BK4mPzkB.js.map +1 -0
- package/dist/x-JgjNP5oH.js.map +1 -1
- package/package.json +1 -1
- package/dist/Button-DhfE69q0.js.map +0 -1
- package/dist/CheckboxField-CL1Tc7P4.js +0 -257
- package/dist/CheckboxField-CL1Tc7P4.js.map +0 -1
- package/dist/Divider-D3NvaU8c.js +0 -46
- package/dist/Field-COOo8o9f.js +0 -80
- package/dist/Field-COOo8o9f.js.map +0 -1
- package/dist/FieldLabel-BGxT_RaE.js +0 -64
- package/dist/FieldLabel-BGxT_RaE.js.map +0 -1
- package/dist/FormBody-DM52shm4.js +0 -101
- package/dist/FormBody-DM52shm4.js.map +0 -1
- package/dist/IsolatedStylesWrapper-B_Qu75eR.js +0 -555
- package/dist/IsolatedStylesWrapper-B_Qu75eR.js.map +0 -1
- package/dist/ScrollShadowContainer-DSKr3_fV.js +0 -690
- package/dist/ScrollShadowContainer-DSKr3_fV.js.map +0 -1
- package/dist/Toggle-BuYtICWv.js +0 -129
- package/dist/Toggle-BuYtICWv.js.map +0 -1
- package/dist/ToggleGroup-CMyUAz04.js +0 -467
- package/dist/ToggleGroup-CMyUAz04.js.map +0 -1
- package/dist/bundle-mjs-D6wdQkGI.js.map +0 -1
- package/dist/floating-ui.react-dom-CWfR7VfF.js +0 -1346
- package/dist/floating-ui.react-dom-CWfR7VfF.js.map +0 -1
- package/dist/index-0WznJ1QS.js +0 -276
- package/dist/index-0WznJ1QS.js.map +0 -1
- package/dist/index-BjbwEU_d.js.map +0 -1
- package/dist/index-BqriTm0o.js +0 -47
- package/dist/index-BqriTm0o.js.map +0 -1
- package/dist/index-C6bvrqL8.js +0 -563
- package/dist/index-C6bvrqL8.js.map +0 -1
- package/dist/index-C6t9z3on.js +0 -97
- package/dist/index-C6t9z3on.js.map +0 -1
- package/dist/index-CaQG3DzJ.js +0 -64
- package/dist/index-CaQG3DzJ.js.map +0 -1
- package/dist/index-ChTGHCkY.js +0 -255
- package/dist/index-ChTGHCkY.js.map +0 -1
- package/dist/index-D808y1pT.js +0 -178
- package/dist/index-D808y1pT.js.map +0 -1
- package/dist/index-DE3fiSzl.js +0 -28
- package/dist/index-DE3fiSzl.js.map +0 -1
- package/dist/index-DPws5oAn.js +0 -90
- package/dist/index-DPws5oAn.js.map +0 -1
- package/dist/index-DeUgDpdG.js +0 -80
- package/dist/index-DeUgDpdG.js.map +0 -1
- package/dist/index-DvquTpxI.js +0 -140
- package/dist/index-DvquTpxI.js.map +0 -1
- package/dist/index-DwbC6luJ.js.map +0 -1
- package/dist/index-Ncxt32Wo.js +0 -174
- package/dist/index-Ncxt32Wo.js.map +0 -1
- package/dist/index-U7y6nBZR.js +0 -179
- package/dist/index-U7y6nBZR.js.map +0 -1
- package/dist/index-pysSAa5G.js +0 -57
- package/dist/index-pysSAa5G.js.map +0 -1
- package/dist/tooltip-DI3_ZKNk.js +0 -365
- package/dist/tooltip-DI3_ZKNk.js.map +0 -1
- package/dist/utils-DGzAmwok.js.map +0 -1
- /package/dist/components/{ui/tooltip.d.ts → tooltip/Tooltip.d.ts} +0 -0
|
@@ -0,0 +1,372 @@
|
|
|
1
|
+
var te = Object.defineProperty, oe = Object.defineProperties;
|
|
2
|
+
var re = Object.getOwnPropertyDescriptors;
|
|
3
|
+
var O = Object.getOwnPropertySymbols;
|
|
4
|
+
var $ = Object.prototype.hasOwnProperty, B = Object.prototype.propertyIsEnumerable;
|
|
5
|
+
var F = (e, o, t) => o in e ? te(e, o, { enumerable: !0, configurable: !0, writable: !0, value: t }) : e[o] = t, T = (e, o) => {
|
|
6
|
+
for (var t in o || (o = {}))
|
|
7
|
+
$.call(o, t) && F(e, t, o[t]);
|
|
8
|
+
if (O)
|
|
9
|
+
for (var t of O(o))
|
|
10
|
+
B.call(o, t) && F(e, t, o[t]);
|
|
11
|
+
return e;
|
|
12
|
+
}, g = (e, o) => oe(e, re(o));
|
|
13
|
+
var w = (e, o) => {
|
|
14
|
+
var t = {};
|
|
15
|
+
for (var r in e)
|
|
16
|
+
$.call(e, r) && o.indexOf(r) < 0 && (t[r] = e[r]);
|
|
17
|
+
if (e != null && O)
|
|
18
|
+
for (var r of O(e))
|
|
19
|
+
o.indexOf(r) < 0 && B.call(e, r) && (t[r] = e[r]);
|
|
20
|
+
return t;
|
|
21
|
+
};
|
|
22
|
+
import { jsx as d, jsxs as ne } from "react/jsx-runtime";
|
|
23
|
+
import * as s from "react";
|
|
24
|
+
import { P as se, c as P } from "./index-B6K06mzp.js";
|
|
25
|
+
import { u as z, a as ae } from "./index-Bj6ZBhqh.js";
|
|
26
|
+
import { c as ie } from "./index-Mbnk_gHS.js";
|
|
27
|
+
import { P as ce, D as le, I as ue } from "./IsolatedStylesWrapper-WgaoHh7y.js";
|
|
28
|
+
import { u as pe } from "./index-COBL2CQB.js";
|
|
29
|
+
import { c as U, R as de, A as fe, C as ve, a as me } from "./index-n71RB2rx.js";
|
|
30
|
+
import { P as V } from "./index-ClwWa5fz.js";
|
|
31
|
+
import { u as he } from "./index-CzNelU6n.js";
|
|
32
|
+
import { R as Te } from "./index-DBsc8nMF.js";
|
|
33
|
+
import { c as ye } from "./index-CR-odn5-.js";
|
|
34
|
+
var [k, Ze] = ie("Tooltip", [
|
|
35
|
+
U
|
|
36
|
+
]), I = U(), Y = "TooltipProvider", xe = 700, M = "tooltip.open", [Ce, S] = k(Y), q = (e) => {
|
|
37
|
+
const {
|
|
38
|
+
__scopeTooltip: o,
|
|
39
|
+
delayDuration: t = xe,
|
|
40
|
+
skipDelayDuration: r = 300,
|
|
41
|
+
disableHoverableContent: n = !1,
|
|
42
|
+
children: i
|
|
43
|
+
} = e, a = s.useRef(!0), p = s.useRef(!1), c = s.useRef(0);
|
|
44
|
+
return s.useEffect(() => {
|
|
45
|
+
const v = c.current;
|
|
46
|
+
return () => window.clearTimeout(v);
|
|
47
|
+
}, []), /* @__PURE__ */ d(
|
|
48
|
+
Ce,
|
|
49
|
+
{
|
|
50
|
+
scope: o,
|
|
51
|
+
isOpenDelayedRef: a,
|
|
52
|
+
delayDuration: t,
|
|
53
|
+
onOpen: s.useCallback(() => {
|
|
54
|
+
window.clearTimeout(c.current), a.current = !1;
|
|
55
|
+
}, []),
|
|
56
|
+
onClose: s.useCallback(() => {
|
|
57
|
+
window.clearTimeout(c.current), c.current = window.setTimeout(
|
|
58
|
+
() => a.current = !0,
|
|
59
|
+
r
|
|
60
|
+
);
|
|
61
|
+
}, [r]),
|
|
62
|
+
isPointerInTransitRef: p,
|
|
63
|
+
onPointerInTransitChange: s.useCallback((v) => {
|
|
64
|
+
p.current = v;
|
|
65
|
+
}, []),
|
|
66
|
+
disableHoverableContent: n,
|
|
67
|
+
children: i
|
|
68
|
+
}
|
|
69
|
+
);
|
|
70
|
+
};
|
|
71
|
+
q.displayName = Y;
|
|
72
|
+
var D = "Tooltip", [ge, L] = k(D), W = (e) => {
|
|
73
|
+
const {
|
|
74
|
+
__scopeTooltip: o,
|
|
75
|
+
children: t,
|
|
76
|
+
open: r,
|
|
77
|
+
defaultOpen: n,
|
|
78
|
+
onOpenChange: i,
|
|
79
|
+
disableHoverableContent: a,
|
|
80
|
+
delayDuration: p
|
|
81
|
+
} = e, c = S(D, e.__scopeTooltip), v = I(o), [l, h] = s.useState(null), f = pe(), u = s.useRef(0), m = a != null ? a : c.disableHoverableContent, x = p != null ? p : c.delayDuration, y = s.useRef(!1), [b, C] = he({
|
|
82
|
+
prop: r,
|
|
83
|
+
defaultProp: n != null ? n : !1,
|
|
84
|
+
onChange: (j) => {
|
|
85
|
+
j ? (c.onOpen(), document.dispatchEvent(new CustomEvent(M))) : c.onClose(), i == null || i(j);
|
|
86
|
+
},
|
|
87
|
+
caller: D
|
|
88
|
+
}), E = s.useMemo(() => b ? y.current ? "delayed-open" : "instant-open" : "closed", [b]), _ = s.useCallback(() => {
|
|
89
|
+
window.clearTimeout(u.current), u.current = 0, y.current = !1, C(!0);
|
|
90
|
+
}, [C]), A = s.useCallback(() => {
|
|
91
|
+
window.clearTimeout(u.current), u.current = 0, C(!1);
|
|
92
|
+
}, [C]), G = s.useCallback(() => {
|
|
93
|
+
window.clearTimeout(u.current), u.current = window.setTimeout(() => {
|
|
94
|
+
y.current = !0, C(!0), u.current = 0;
|
|
95
|
+
}, x);
|
|
96
|
+
}, [x, C]);
|
|
97
|
+
return s.useEffect(() => () => {
|
|
98
|
+
u.current && (window.clearTimeout(u.current), u.current = 0);
|
|
99
|
+
}, []), /* @__PURE__ */ d(de, g(T({}, v), { children: /* @__PURE__ */ d(
|
|
100
|
+
ge,
|
|
101
|
+
{
|
|
102
|
+
scope: o,
|
|
103
|
+
contentId: f,
|
|
104
|
+
open: b,
|
|
105
|
+
stateAttribute: E,
|
|
106
|
+
trigger: l,
|
|
107
|
+
onTriggerChange: h,
|
|
108
|
+
onTriggerEnter: s.useCallback(() => {
|
|
109
|
+
c.isOpenDelayedRef.current ? G() : _();
|
|
110
|
+
}, [c.isOpenDelayedRef, G, _]),
|
|
111
|
+
onTriggerLeave: s.useCallback(() => {
|
|
112
|
+
m ? A() : (window.clearTimeout(u.current), u.current = 0);
|
|
113
|
+
}, [A, m]),
|
|
114
|
+
onOpen: _,
|
|
115
|
+
onClose: A,
|
|
116
|
+
disableHoverableContent: m,
|
|
117
|
+
children: t
|
|
118
|
+
}
|
|
119
|
+
) }));
|
|
120
|
+
};
|
|
121
|
+
W.displayName = D;
|
|
122
|
+
var N = "TooltipTrigger", X = s.forwardRef(
|
|
123
|
+
(e, o) => {
|
|
124
|
+
const f = e, { __scopeTooltip: t } = f, r = w(f, ["__scopeTooltip"]), n = L(N, t), i = S(N, t), a = I(t), p = s.useRef(null), c = z(o, p, n.onTriggerChange), v = s.useRef(!1), l = s.useRef(!1), h = s.useCallback(() => v.current = !1, []);
|
|
125
|
+
return s.useEffect(() => () => document.removeEventListener("pointerup", h), [h]), /* @__PURE__ */ d(fe, g(T({ asChild: !0 }, a), { children: /* @__PURE__ */ d(
|
|
126
|
+
se.button,
|
|
127
|
+
g(T({
|
|
128
|
+
"aria-describedby": n.open ? n.contentId : void 0,
|
|
129
|
+
"data-state": n.stateAttribute
|
|
130
|
+
}, r), {
|
|
131
|
+
ref: c,
|
|
132
|
+
onPointerMove: P(e.onPointerMove, (u) => {
|
|
133
|
+
u.pointerType !== "touch" && !l.current && !i.isPointerInTransitRef.current && (n.onTriggerEnter(), l.current = !0);
|
|
134
|
+
}),
|
|
135
|
+
onPointerLeave: P(e.onPointerLeave, () => {
|
|
136
|
+
n.onTriggerLeave(), l.current = !1;
|
|
137
|
+
}),
|
|
138
|
+
onPointerDown: P(e.onPointerDown, () => {
|
|
139
|
+
n.open && n.onClose(), v.current = !0, document.addEventListener("pointerup", h, { once: !0 });
|
|
140
|
+
}),
|
|
141
|
+
onFocus: P(e.onFocus, () => {
|
|
142
|
+
v.current || n.onOpen();
|
|
143
|
+
}),
|
|
144
|
+
onBlur: P(e.onBlur, n.onClose),
|
|
145
|
+
onClick: P(e.onClick, n.onClose)
|
|
146
|
+
})
|
|
147
|
+
) }));
|
|
148
|
+
}
|
|
149
|
+
);
|
|
150
|
+
X.displayName = N;
|
|
151
|
+
var H = "TooltipPortal", [be, we] = k(H, {
|
|
152
|
+
forceMount: void 0
|
|
153
|
+
}), K = (e) => {
|
|
154
|
+
const { __scopeTooltip: o, forceMount: t, children: r, container: n } = e, i = L(H, o);
|
|
155
|
+
return /* @__PURE__ */ d(be, { scope: o, forceMount: t, children: /* @__PURE__ */ d(V, { present: t || i.open, children: /* @__PURE__ */ d(ce, { asChild: !0, container: n, children: r }) }) });
|
|
156
|
+
};
|
|
157
|
+
K.displayName = H;
|
|
158
|
+
var R = "TooltipContent", J = s.forwardRef(
|
|
159
|
+
(e, o) => {
|
|
160
|
+
const t = we(R, e.__scopeTooltip), p = e, { forceMount: r = t.forceMount, side: n = "top" } = p, i = w(p, ["forceMount", "side"]), a = L(R, e.__scopeTooltip);
|
|
161
|
+
return /* @__PURE__ */ d(V, { present: r || a.open, children: a.disableHoverableContent ? /* @__PURE__ */ d(Q, g(T({ side: n }, i), { ref: o })) : /* @__PURE__ */ d(Pe, g(T({ side: n }, i), { ref: o })) });
|
|
162
|
+
}
|
|
163
|
+
), Pe = s.forwardRef((e, o) => {
|
|
164
|
+
const t = L(R, e.__scopeTooltip), r = S(R, e.__scopeTooltip), n = s.useRef(null), i = z(o, n), [a, p] = s.useState(null), { trigger: c, onClose: v } = t, l = n.current, { onPointerInTransitChange: h } = r, f = s.useCallback(() => {
|
|
165
|
+
p(null), h(!1);
|
|
166
|
+
}, [h]), u = s.useCallback(
|
|
167
|
+
(m, x) => {
|
|
168
|
+
const y = m.currentTarget, b = { x: m.clientX, y: m.clientY }, C = De(b, y.getBoundingClientRect()), E = Le(b, C), _ = Oe(x.getBoundingClientRect()), A = Ie([...E, ..._]);
|
|
169
|
+
p(A), h(!0);
|
|
170
|
+
},
|
|
171
|
+
[h]
|
|
172
|
+
);
|
|
173
|
+
return s.useEffect(() => () => f(), [f]), s.useEffect(() => {
|
|
174
|
+
if (c && l) {
|
|
175
|
+
const m = (y) => u(y, l), x = (y) => u(y, c);
|
|
176
|
+
return c.addEventListener("pointerleave", m), l.addEventListener("pointerleave", x), () => {
|
|
177
|
+
c.removeEventListener("pointerleave", m), l.removeEventListener("pointerleave", x);
|
|
178
|
+
};
|
|
179
|
+
}
|
|
180
|
+
}, [c, l, u, f]), s.useEffect(() => {
|
|
181
|
+
if (a) {
|
|
182
|
+
const m = (x) => {
|
|
183
|
+
const y = x.target, b = { x: x.clientX, y: x.clientY }, C = (c == null ? void 0 : c.contains(y)) || (l == null ? void 0 : l.contains(y)), E = !ke(b, a);
|
|
184
|
+
C ? f() : E && (f(), v());
|
|
185
|
+
};
|
|
186
|
+
return document.addEventListener("pointermove", m), () => document.removeEventListener("pointermove", m);
|
|
187
|
+
}
|
|
188
|
+
}, [c, l, a, v, f]), /* @__PURE__ */ d(Q, g(T({}, e), { ref: i }));
|
|
189
|
+
}), [Re, Ee] = k(D, { isInside: !1 }), _e = ae("TooltipContent"), Q = s.forwardRef(
|
|
190
|
+
(e, o) => {
|
|
191
|
+
const h = e, {
|
|
192
|
+
__scopeTooltip: t,
|
|
193
|
+
children: r,
|
|
194
|
+
"aria-label": n,
|
|
195
|
+
onEscapeKeyDown: i,
|
|
196
|
+
onPointerDownOutside: a
|
|
197
|
+
} = h, p = w(h, [
|
|
198
|
+
"__scopeTooltip",
|
|
199
|
+
"children",
|
|
200
|
+
"aria-label",
|
|
201
|
+
"onEscapeKeyDown",
|
|
202
|
+
"onPointerDownOutside"
|
|
203
|
+
]), c = L(R, t), v = I(t), { onClose: l } = c;
|
|
204
|
+
return s.useEffect(() => (document.addEventListener(M, l), () => document.removeEventListener(M, l)), [l]), s.useEffect(() => {
|
|
205
|
+
if (c.trigger) {
|
|
206
|
+
const f = (u) => {
|
|
207
|
+
const m = u.target;
|
|
208
|
+
m != null && m.contains(c.trigger) && l();
|
|
209
|
+
};
|
|
210
|
+
return window.addEventListener("scroll", f, { capture: !0 }), () => window.removeEventListener("scroll", f, { capture: !0 });
|
|
211
|
+
}
|
|
212
|
+
}, [c.trigger, l]), /* @__PURE__ */ d(
|
|
213
|
+
le,
|
|
214
|
+
{
|
|
215
|
+
asChild: !0,
|
|
216
|
+
disableOutsidePointerEvents: !1,
|
|
217
|
+
onEscapeKeyDown: i,
|
|
218
|
+
onPointerDownOutside: a,
|
|
219
|
+
onFocusOutside: (f) => f.preventDefault(),
|
|
220
|
+
onDismiss: l,
|
|
221
|
+
children: /* @__PURE__ */ ne(
|
|
222
|
+
ve,
|
|
223
|
+
g(T(T({
|
|
224
|
+
"data-state": c.stateAttribute
|
|
225
|
+
}, v), p), {
|
|
226
|
+
ref: o,
|
|
227
|
+
style: g(T({}, p.style), {
|
|
228
|
+
"--radix-tooltip-content-transform-origin": "var(--radix-popper-transform-origin)",
|
|
229
|
+
"--radix-tooltip-content-available-width": "var(--radix-popper-available-width)",
|
|
230
|
+
"--radix-tooltip-content-available-height": "var(--radix-popper-available-height)",
|
|
231
|
+
"--radix-tooltip-trigger-width": "var(--radix-popper-anchor-width)",
|
|
232
|
+
"--radix-tooltip-trigger-height": "var(--radix-popper-anchor-height)"
|
|
233
|
+
}),
|
|
234
|
+
children: [
|
|
235
|
+
/* @__PURE__ */ d(_e, { children: r }),
|
|
236
|
+
/* @__PURE__ */ d(Re, { scope: t, isInside: !0, children: /* @__PURE__ */ d(Te, { id: c.contentId, role: "tooltip", children: n || r }) })
|
|
237
|
+
]
|
|
238
|
+
})
|
|
239
|
+
)
|
|
240
|
+
}
|
|
241
|
+
);
|
|
242
|
+
}
|
|
243
|
+
);
|
|
244
|
+
J.displayName = R;
|
|
245
|
+
var Z = "TooltipArrow", Ae = s.forwardRef(
|
|
246
|
+
(e, o) => {
|
|
247
|
+
const a = e, { __scopeTooltip: t } = a, r = w(a, ["__scopeTooltip"]), n = I(t);
|
|
248
|
+
return Ee(
|
|
249
|
+
Z,
|
|
250
|
+
t
|
|
251
|
+
).isInside ? null : /* @__PURE__ */ d(me, g(T(T({}, n), r), { ref: o }));
|
|
252
|
+
}
|
|
253
|
+
);
|
|
254
|
+
Ae.displayName = Z;
|
|
255
|
+
function De(e, o) {
|
|
256
|
+
const t = Math.abs(o.top - e.y), r = Math.abs(o.bottom - e.y), n = Math.abs(o.right - e.x), i = Math.abs(o.left - e.x);
|
|
257
|
+
switch (Math.min(t, r, n, i)) {
|
|
258
|
+
case i:
|
|
259
|
+
return "left";
|
|
260
|
+
case n:
|
|
261
|
+
return "right";
|
|
262
|
+
case t:
|
|
263
|
+
return "top";
|
|
264
|
+
case r:
|
|
265
|
+
return "bottom";
|
|
266
|
+
default:
|
|
267
|
+
throw new Error("unreachable");
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
function Le(e, o, t = 5) {
|
|
271
|
+
const r = [];
|
|
272
|
+
switch (o) {
|
|
273
|
+
case "top":
|
|
274
|
+
r.push(
|
|
275
|
+
{ x: e.x - t, y: e.y + t },
|
|
276
|
+
{ x: e.x + t, y: e.y + t }
|
|
277
|
+
);
|
|
278
|
+
break;
|
|
279
|
+
case "bottom":
|
|
280
|
+
r.push(
|
|
281
|
+
{ x: e.x - t, y: e.y - t },
|
|
282
|
+
{ x: e.x + t, y: e.y - t }
|
|
283
|
+
);
|
|
284
|
+
break;
|
|
285
|
+
case "left":
|
|
286
|
+
r.push(
|
|
287
|
+
{ x: e.x + t, y: e.y - t },
|
|
288
|
+
{ x: e.x + t, y: e.y + t }
|
|
289
|
+
);
|
|
290
|
+
break;
|
|
291
|
+
case "right":
|
|
292
|
+
r.push(
|
|
293
|
+
{ x: e.x - t, y: e.y - t },
|
|
294
|
+
{ x: e.x - t, y: e.y + t }
|
|
295
|
+
);
|
|
296
|
+
break;
|
|
297
|
+
}
|
|
298
|
+
return r;
|
|
299
|
+
}
|
|
300
|
+
function Oe(e) {
|
|
301
|
+
const { top: o, right: t, bottom: r, left: n } = e;
|
|
302
|
+
return [
|
|
303
|
+
{ x: n, y: o },
|
|
304
|
+
{ x: t, y: o },
|
|
305
|
+
{ x: t, y: r },
|
|
306
|
+
{ x: n, y: r }
|
|
307
|
+
];
|
|
308
|
+
}
|
|
309
|
+
function ke(e, o) {
|
|
310
|
+
const { x: t, y: r } = e;
|
|
311
|
+
let n = !1;
|
|
312
|
+
for (let i = 0, a = o.length - 1; i < o.length; a = i++) {
|
|
313
|
+
const p = o[i], c = o[a], v = p.x, l = p.y, h = c.x, f = c.y;
|
|
314
|
+
l > r != f > r && t < (h - v) * (r - l) / (f - l) + v && (n = !n);
|
|
315
|
+
}
|
|
316
|
+
return n;
|
|
317
|
+
}
|
|
318
|
+
function Ie(e) {
|
|
319
|
+
const o = e.slice();
|
|
320
|
+
return o.sort((t, r) => t.x < r.x ? -1 : t.x > r.x ? 1 : t.y < r.y ? -1 : t.y > r.y ? 1 : 0), Me(o);
|
|
321
|
+
}
|
|
322
|
+
function Me(e) {
|
|
323
|
+
if (e.length <= 1) return e.slice();
|
|
324
|
+
const o = [];
|
|
325
|
+
for (let r = 0; r < e.length; r++) {
|
|
326
|
+
const n = e[r];
|
|
327
|
+
for (; o.length >= 2; ) {
|
|
328
|
+
const i = o[o.length - 1], a = o[o.length - 2];
|
|
329
|
+
if ((i.x - a.x) * (n.y - a.y) >= (i.y - a.y) * (n.x - a.x)) o.pop();
|
|
330
|
+
else break;
|
|
331
|
+
}
|
|
332
|
+
o.push(n);
|
|
333
|
+
}
|
|
334
|
+
o.pop();
|
|
335
|
+
const t = [];
|
|
336
|
+
for (let r = e.length - 1; r >= 0; r--) {
|
|
337
|
+
const n = e[r];
|
|
338
|
+
for (; t.length >= 2; ) {
|
|
339
|
+
const i = t[t.length - 1], a = t[t.length - 2];
|
|
340
|
+
if ((i.x - a.x) * (n.y - a.y) >= (i.y - a.y) * (n.x - a.x)) t.pop();
|
|
341
|
+
else break;
|
|
342
|
+
}
|
|
343
|
+
t.push(n);
|
|
344
|
+
}
|
|
345
|
+
return t.pop(), o.length === 1 && t.length === 1 && o[0].x === t[0].x && o[0].y === t[0].y ? o : o.concat(t);
|
|
346
|
+
}
|
|
347
|
+
var Ne = q, Se = W, He = X, Ge = K, ee = J;
|
|
348
|
+
const et = Ne, tt = Se, ot = He, je = ye({
|
|
349
|
+
base: [
|
|
350
|
+
"z-50 overflow-hidden rounded-md bg-primary px-3 py-1.5 text-xs text-primary-foreground animate-in fade-in-0 zoom-in-95",
|
|
351
|
+
"data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",
|
|
352
|
+
"data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2"
|
|
353
|
+
]
|
|
354
|
+
}), Fe = s.forwardRef((n, r) => {
|
|
355
|
+
var i = n, { className: e, sideOffset: o = 4 } = i, t = w(i, ["className", "sideOffset"]);
|
|
356
|
+
return /* @__PURE__ */ d(Ge, { children: /* @__PURE__ */ d(ue, { children: /* @__PURE__ */ d(
|
|
357
|
+
ee,
|
|
358
|
+
T({
|
|
359
|
+
ref: r,
|
|
360
|
+
sideOffset: o,
|
|
361
|
+
className: je({ className: e })
|
|
362
|
+
}, t)
|
|
363
|
+
) }) });
|
|
364
|
+
});
|
|
365
|
+
Fe.displayName = ee.displayName;
|
|
366
|
+
export {
|
|
367
|
+
tt as T,
|
|
368
|
+
et as a,
|
|
369
|
+
ot as b,
|
|
370
|
+
Fe as c
|
|
371
|
+
};
|
|
372
|
+
//# sourceMappingURL=Tooltip-C4BbGF2_.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Tooltip-C4BbGF2_.js","sources":["../node_modules/@radix-ui/react-tooltip/dist/index.mjs","../src/components/tooltip/Tooltip.tsx"],"sourcesContent":["\"use client\";\n\n// src/tooltip.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { DismissableLayer } from \"@radix-ui/react-dismissable-layer\";\nimport { useId } from \"@radix-ui/react-id\";\nimport * as PopperPrimitive from \"@radix-ui/react-popper\";\nimport { createPopperScope } from \"@radix-ui/react-popper\";\nimport { Portal as PortalPrimitive } from \"@radix-ui/react-portal\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { createSlottable } from \"@radix-ui/react-slot\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport * as VisuallyHiddenPrimitive from \"@radix-ui/react-visually-hidden\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nvar [createTooltipContext, createTooltipScope] = createContextScope(\"Tooltip\", [\n createPopperScope\n]);\nvar usePopperScope = createPopperScope();\nvar PROVIDER_NAME = \"TooltipProvider\";\nvar DEFAULT_DELAY_DURATION = 700;\nvar TOOLTIP_OPEN = \"tooltip.open\";\nvar [TooltipProviderContextProvider, useTooltipProviderContext] = createTooltipContext(PROVIDER_NAME);\nvar TooltipProvider = (props) => {\n const {\n __scopeTooltip,\n delayDuration = DEFAULT_DELAY_DURATION,\n skipDelayDuration = 300,\n disableHoverableContent = false,\n children\n } = props;\n const isOpenDelayedRef = React.useRef(true);\n const isPointerInTransitRef = React.useRef(false);\n const skipDelayTimerRef = React.useRef(0);\n React.useEffect(() => {\n const skipDelayTimer = skipDelayTimerRef.current;\n return () => window.clearTimeout(skipDelayTimer);\n }, []);\n return /* @__PURE__ */ jsx(\n TooltipProviderContextProvider,\n {\n scope: __scopeTooltip,\n isOpenDelayedRef,\n delayDuration,\n onOpen: React.useCallback(() => {\n window.clearTimeout(skipDelayTimerRef.current);\n isOpenDelayedRef.current = false;\n }, []),\n onClose: React.useCallback(() => {\n window.clearTimeout(skipDelayTimerRef.current);\n skipDelayTimerRef.current = window.setTimeout(\n () => isOpenDelayedRef.current = true,\n skipDelayDuration\n );\n }, [skipDelayDuration]),\n isPointerInTransitRef,\n onPointerInTransitChange: React.useCallback((inTransit) => {\n isPointerInTransitRef.current = inTransit;\n }, []),\n disableHoverableContent,\n children\n }\n );\n};\nTooltipProvider.displayName = PROVIDER_NAME;\nvar TOOLTIP_NAME = \"Tooltip\";\nvar [TooltipContextProvider, useTooltipContext] = createTooltipContext(TOOLTIP_NAME);\nvar Tooltip = (props) => {\n const {\n __scopeTooltip,\n children,\n open: openProp,\n defaultOpen,\n onOpenChange,\n disableHoverableContent: disableHoverableContentProp,\n delayDuration: delayDurationProp\n } = props;\n const providerContext = useTooltipProviderContext(TOOLTIP_NAME, props.__scopeTooltip);\n const popperScope = usePopperScope(__scopeTooltip);\n const [trigger, setTrigger] = React.useState(null);\n const contentId = useId();\n const openTimerRef = React.useRef(0);\n const disableHoverableContent = disableHoverableContentProp ?? providerContext.disableHoverableContent;\n const delayDuration = delayDurationProp ?? providerContext.delayDuration;\n const wasOpenDelayedRef = React.useRef(false);\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen ?? false,\n onChange: (open2) => {\n if (open2) {\n providerContext.onOpen();\n document.dispatchEvent(new CustomEvent(TOOLTIP_OPEN));\n } else {\n providerContext.onClose();\n }\n onOpenChange?.(open2);\n },\n caller: TOOLTIP_NAME\n });\n const stateAttribute = React.useMemo(() => {\n return open ? wasOpenDelayedRef.current ? \"delayed-open\" : \"instant-open\" : \"closed\";\n }, [open]);\n const handleOpen = React.useCallback(() => {\n window.clearTimeout(openTimerRef.current);\n openTimerRef.current = 0;\n wasOpenDelayedRef.current = false;\n setOpen(true);\n }, [setOpen]);\n const handleClose = React.useCallback(() => {\n window.clearTimeout(openTimerRef.current);\n openTimerRef.current = 0;\n setOpen(false);\n }, [setOpen]);\n const handleDelayedOpen = React.useCallback(() => {\n window.clearTimeout(openTimerRef.current);\n openTimerRef.current = window.setTimeout(() => {\n wasOpenDelayedRef.current = true;\n setOpen(true);\n openTimerRef.current = 0;\n }, delayDuration);\n }, [delayDuration, setOpen]);\n React.useEffect(() => {\n return () => {\n if (openTimerRef.current) {\n window.clearTimeout(openTimerRef.current);\n openTimerRef.current = 0;\n }\n };\n }, []);\n return /* @__PURE__ */ jsx(PopperPrimitive.Root, { ...popperScope, children: /* @__PURE__ */ jsx(\n TooltipContextProvider,\n {\n scope: __scopeTooltip,\n contentId,\n open,\n stateAttribute,\n trigger,\n onTriggerChange: setTrigger,\n onTriggerEnter: React.useCallback(() => {\n if (providerContext.isOpenDelayedRef.current) handleDelayedOpen();\n else handleOpen();\n }, [providerContext.isOpenDelayedRef, handleDelayedOpen, handleOpen]),\n onTriggerLeave: React.useCallback(() => {\n if (disableHoverableContent) {\n handleClose();\n } else {\n window.clearTimeout(openTimerRef.current);\n openTimerRef.current = 0;\n }\n }, [handleClose, disableHoverableContent]),\n onOpen: handleOpen,\n onClose: handleClose,\n disableHoverableContent,\n children\n }\n ) });\n};\nTooltip.displayName = TOOLTIP_NAME;\nvar TRIGGER_NAME = \"TooltipTrigger\";\nvar TooltipTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTooltip, ...triggerProps } = props;\n const context = useTooltipContext(TRIGGER_NAME, __scopeTooltip);\n const providerContext = useTooltipProviderContext(TRIGGER_NAME, __scopeTooltip);\n const popperScope = usePopperScope(__scopeTooltip);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref, context.onTriggerChange);\n const isPointerDownRef = React.useRef(false);\n const hasPointerMoveOpenedRef = React.useRef(false);\n const handlePointerUp = React.useCallback(() => isPointerDownRef.current = false, []);\n React.useEffect(() => {\n return () => document.removeEventListener(\"pointerup\", handlePointerUp);\n }, [handlePointerUp]);\n return /* @__PURE__ */ jsx(PopperPrimitive.Anchor, { asChild: true, ...popperScope, children: /* @__PURE__ */ jsx(\n Primitive.button,\n {\n \"aria-describedby\": context.open ? context.contentId : void 0,\n \"data-state\": context.stateAttribute,\n ...triggerProps,\n ref: composedRefs,\n onPointerMove: composeEventHandlers(props.onPointerMove, (event) => {\n if (event.pointerType === \"touch\") return;\n if (!hasPointerMoveOpenedRef.current && !providerContext.isPointerInTransitRef.current) {\n context.onTriggerEnter();\n hasPointerMoveOpenedRef.current = true;\n }\n }),\n onPointerLeave: composeEventHandlers(props.onPointerLeave, () => {\n context.onTriggerLeave();\n hasPointerMoveOpenedRef.current = false;\n }),\n onPointerDown: composeEventHandlers(props.onPointerDown, () => {\n if (context.open) {\n context.onClose();\n }\n isPointerDownRef.current = true;\n document.addEventListener(\"pointerup\", handlePointerUp, { once: true });\n }),\n onFocus: composeEventHandlers(props.onFocus, () => {\n if (!isPointerDownRef.current) context.onOpen();\n }),\n onBlur: composeEventHandlers(props.onBlur, context.onClose),\n onClick: composeEventHandlers(props.onClick, context.onClose)\n }\n ) });\n }\n);\nTooltipTrigger.displayName = TRIGGER_NAME;\nvar PORTAL_NAME = \"TooltipPortal\";\nvar [PortalProvider, usePortalContext] = createTooltipContext(PORTAL_NAME, {\n forceMount: void 0\n});\nvar TooltipPortal = (props) => {\n const { __scopeTooltip, forceMount, children, container } = props;\n const context = useTooltipContext(PORTAL_NAME, __scopeTooltip);\n return /* @__PURE__ */ jsx(PortalProvider, { scope: __scopeTooltip, forceMount, children: /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(PortalPrimitive, { asChild: true, container, children }) }) });\n};\nTooltipPortal.displayName = PORTAL_NAME;\nvar CONTENT_NAME = \"TooltipContent\";\nvar TooltipContent = React.forwardRef(\n (props, forwardedRef) => {\n const portalContext = usePortalContext(CONTENT_NAME, props.__scopeTooltip);\n const { forceMount = portalContext.forceMount, side = \"top\", ...contentProps } = props;\n const context = useTooltipContext(CONTENT_NAME, props.__scopeTooltip);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: context.disableHoverableContent ? /* @__PURE__ */ jsx(TooltipContentImpl, { side, ...contentProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(TooltipContentHoverable, { side, ...contentProps, ref: forwardedRef }) });\n }\n);\nvar TooltipContentHoverable = React.forwardRef((props, forwardedRef) => {\n const context = useTooltipContext(CONTENT_NAME, props.__scopeTooltip);\n const providerContext = useTooltipProviderContext(CONTENT_NAME, props.__scopeTooltip);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const [pointerGraceArea, setPointerGraceArea] = React.useState(null);\n const { trigger, onClose } = context;\n const content = ref.current;\n const { onPointerInTransitChange } = providerContext;\n const handleRemoveGraceArea = React.useCallback(() => {\n setPointerGraceArea(null);\n onPointerInTransitChange(false);\n }, [onPointerInTransitChange]);\n const handleCreateGraceArea = React.useCallback(\n (event, hoverTarget) => {\n const currentTarget = event.currentTarget;\n const exitPoint = { x: event.clientX, y: event.clientY };\n const exitSide = getExitSideFromRect(exitPoint, currentTarget.getBoundingClientRect());\n const paddedExitPoints = getPaddedExitPoints(exitPoint, exitSide);\n const hoverTargetPoints = getPointsFromRect(hoverTarget.getBoundingClientRect());\n const graceArea = getHull([...paddedExitPoints, ...hoverTargetPoints]);\n setPointerGraceArea(graceArea);\n onPointerInTransitChange(true);\n },\n [onPointerInTransitChange]\n );\n React.useEffect(() => {\n return () => handleRemoveGraceArea();\n }, [handleRemoveGraceArea]);\n React.useEffect(() => {\n if (trigger && content) {\n const handleTriggerLeave = (event) => handleCreateGraceArea(event, content);\n const handleContentLeave = (event) => handleCreateGraceArea(event, trigger);\n trigger.addEventListener(\"pointerleave\", handleTriggerLeave);\n content.addEventListener(\"pointerleave\", handleContentLeave);\n return () => {\n trigger.removeEventListener(\"pointerleave\", handleTriggerLeave);\n content.removeEventListener(\"pointerleave\", handleContentLeave);\n };\n }\n }, [trigger, content, handleCreateGraceArea, handleRemoveGraceArea]);\n React.useEffect(() => {\n if (pointerGraceArea) {\n const handleTrackPointerGrace = (event) => {\n const target = event.target;\n const pointerPosition = { x: event.clientX, y: event.clientY };\n const hasEnteredTarget = trigger?.contains(target) || content?.contains(target);\n const isPointerOutsideGraceArea = !isPointInPolygon(pointerPosition, pointerGraceArea);\n if (hasEnteredTarget) {\n handleRemoveGraceArea();\n } else if (isPointerOutsideGraceArea) {\n handleRemoveGraceArea();\n onClose();\n }\n };\n document.addEventListener(\"pointermove\", handleTrackPointerGrace);\n return () => document.removeEventListener(\"pointermove\", handleTrackPointerGrace);\n }\n }, [trigger, content, pointerGraceArea, onClose, handleRemoveGraceArea]);\n return /* @__PURE__ */ jsx(TooltipContentImpl, { ...props, ref: composedRefs });\n});\nvar [VisuallyHiddenContentContextProvider, useVisuallyHiddenContentContext] = createTooltipContext(TOOLTIP_NAME, { isInside: false });\nvar Slottable = createSlottable(\"TooltipContent\");\nvar TooltipContentImpl = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeTooltip,\n children,\n \"aria-label\": ariaLabel,\n onEscapeKeyDown,\n onPointerDownOutside,\n ...contentProps\n } = props;\n const context = useTooltipContext(CONTENT_NAME, __scopeTooltip);\n const popperScope = usePopperScope(__scopeTooltip);\n const { onClose } = context;\n React.useEffect(() => {\n document.addEventListener(TOOLTIP_OPEN, onClose);\n return () => document.removeEventListener(TOOLTIP_OPEN, onClose);\n }, [onClose]);\n React.useEffect(() => {\n if (context.trigger) {\n const handleScroll = (event) => {\n const target = event.target;\n if (target?.contains(context.trigger)) onClose();\n };\n window.addEventListener(\"scroll\", handleScroll, { capture: true });\n return () => window.removeEventListener(\"scroll\", handleScroll, { capture: true });\n }\n }, [context.trigger, onClose]);\n return /* @__PURE__ */ jsx(\n DismissableLayer,\n {\n asChild: true,\n disableOutsidePointerEvents: false,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside: (event) => event.preventDefault(),\n onDismiss: onClose,\n children: /* @__PURE__ */ jsxs(\n PopperPrimitive.Content,\n {\n \"data-state\": context.stateAttribute,\n ...popperScope,\n ...contentProps,\n ref: forwardedRef,\n style: {\n ...contentProps.style,\n // re-namespace exposed content custom properties\n ...{\n \"--radix-tooltip-content-transform-origin\": \"var(--radix-popper-transform-origin)\",\n \"--radix-tooltip-content-available-width\": \"var(--radix-popper-available-width)\",\n \"--radix-tooltip-content-available-height\": \"var(--radix-popper-available-height)\",\n \"--radix-tooltip-trigger-width\": \"var(--radix-popper-anchor-width)\",\n \"--radix-tooltip-trigger-height\": \"var(--radix-popper-anchor-height)\"\n }\n },\n children: [\n /* @__PURE__ */ jsx(Slottable, { children }),\n /* @__PURE__ */ jsx(VisuallyHiddenContentContextProvider, { scope: __scopeTooltip, isInside: true, children: /* @__PURE__ */ jsx(VisuallyHiddenPrimitive.Root, { id: context.contentId, role: \"tooltip\", children: ariaLabel || children }) })\n ]\n }\n )\n }\n );\n }\n);\nTooltipContent.displayName = CONTENT_NAME;\nvar ARROW_NAME = \"TooltipArrow\";\nvar TooltipArrow = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTooltip, ...arrowProps } = props;\n const popperScope = usePopperScope(__scopeTooltip);\n const visuallyHiddenContentContext = useVisuallyHiddenContentContext(\n ARROW_NAME,\n __scopeTooltip\n );\n return visuallyHiddenContentContext.isInside ? null : /* @__PURE__ */ jsx(PopperPrimitive.Arrow, { ...popperScope, ...arrowProps, ref: forwardedRef });\n }\n);\nTooltipArrow.displayName = ARROW_NAME;\nfunction getExitSideFromRect(point, rect) {\n const top = Math.abs(rect.top - point.y);\n const bottom = Math.abs(rect.bottom - point.y);\n const right = Math.abs(rect.right - point.x);\n const left = Math.abs(rect.left - point.x);\n switch (Math.min(top, bottom, right, left)) {\n case left:\n return \"left\";\n case right:\n return \"right\";\n case top:\n return \"top\";\n case bottom:\n return \"bottom\";\n default:\n throw new Error(\"unreachable\");\n }\n}\nfunction getPaddedExitPoints(exitPoint, exitSide, padding = 5) {\n const paddedExitPoints = [];\n switch (exitSide) {\n case \"top\":\n paddedExitPoints.push(\n { x: exitPoint.x - padding, y: exitPoint.y + padding },\n { x: exitPoint.x + padding, y: exitPoint.y + padding }\n );\n break;\n case \"bottom\":\n paddedExitPoints.push(\n { x: exitPoint.x - padding, y: exitPoint.y - padding },\n { x: exitPoint.x + padding, y: exitPoint.y - padding }\n );\n break;\n case \"left\":\n paddedExitPoints.push(\n { x: exitPoint.x + padding, y: exitPoint.y - padding },\n { x: exitPoint.x + padding, y: exitPoint.y + padding }\n );\n break;\n case \"right\":\n paddedExitPoints.push(\n { x: exitPoint.x - padding, y: exitPoint.y - padding },\n { x: exitPoint.x - padding, y: exitPoint.y + padding }\n );\n break;\n }\n return paddedExitPoints;\n}\nfunction getPointsFromRect(rect) {\n const { top, right, bottom, left } = rect;\n return [\n { x: left, y: top },\n { x: right, y: top },\n { x: right, y: bottom },\n { x: left, y: bottom }\n ];\n}\nfunction isPointInPolygon(point, polygon) {\n const { x, y } = point;\n let inside = false;\n for (let i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {\n const ii = polygon[i];\n const jj = polygon[j];\n const xi = ii.x;\n const yi = ii.y;\n const xj = jj.x;\n const yj = jj.y;\n const intersect = yi > y !== yj > y && x < (xj - xi) * (y - yi) / (yj - yi) + xi;\n if (intersect) inside = !inside;\n }\n return inside;\n}\nfunction getHull(points) {\n const newPoints = points.slice();\n newPoints.sort((a, b) => {\n if (a.x < b.x) return -1;\n else if (a.x > b.x) return 1;\n else if (a.y < b.y) return -1;\n else if (a.y > b.y) return 1;\n else return 0;\n });\n return getHullPresorted(newPoints);\n}\nfunction getHullPresorted(points) {\n if (points.length <= 1) return points.slice();\n const upperHull = [];\n for (let i = 0; i < points.length; i++) {\n const p = points[i];\n while (upperHull.length >= 2) {\n const q = upperHull[upperHull.length - 1];\n const r = upperHull[upperHull.length - 2];\n if ((q.x - r.x) * (p.y - r.y) >= (q.y - r.y) * (p.x - r.x)) upperHull.pop();\n else break;\n }\n upperHull.push(p);\n }\n upperHull.pop();\n const lowerHull = [];\n for (let i = points.length - 1; i >= 0; i--) {\n const p = points[i];\n while (lowerHull.length >= 2) {\n const q = lowerHull[lowerHull.length - 1];\n const r = lowerHull[lowerHull.length - 2];\n if ((q.x - r.x) * (p.y - r.y) >= (q.y - r.y) * (p.x - r.x)) lowerHull.pop();\n else break;\n }\n lowerHull.push(p);\n }\n lowerHull.pop();\n if (upperHull.length === 1 && lowerHull.length === 1 && upperHull[0].x === lowerHull[0].x && upperHull[0].y === lowerHull[0].y) {\n return upperHull;\n } else {\n return upperHull.concat(lowerHull);\n }\n}\nvar Provider = TooltipProvider;\nvar Root3 = Tooltip;\nvar Trigger = TooltipTrigger;\nvar Portal = TooltipPortal;\nvar Content2 = TooltipContent;\nvar Arrow2 = TooltipArrow;\nexport {\n Arrow2 as Arrow,\n Content2 as Content,\n Portal,\n Provider,\n Root3 as Root,\n Tooltip,\n TooltipArrow,\n TooltipContent,\n TooltipPortal,\n TooltipProvider,\n TooltipTrigger,\n Trigger,\n createTooltipScope\n};\n//# sourceMappingURL=index.mjs.map\n","import * as React from \"react\";\r\nimport * as TooltipPrimitive from \"@radix-ui/react-tooltip\";\r\nimport { tv } from \"tailwind-variants\";\r\nimport { IsolatedStylesWrapper } from \"../isolated-styles-wrapper/IsolatedStylesWrapper\";\r\n\r\nconst TooltipProvider = TooltipPrimitive.Provider;\r\n\r\nconst Tooltip = TooltipPrimitive.Root;\r\n\r\nconst TooltipTrigger = TooltipPrimitive.Trigger;\r\n\r\nconst tooltipContentStyles = tv({\r\n\tbase: [\r\n\t\t\"z-50 overflow-hidden rounded-md bg-primary px-3 py-1.5 text-xs text-primary-foreground animate-in fade-in-0 zoom-in-95\",\r\n\t\t\"data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95\",\r\n\t\t\"data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\"\r\n\t]\r\n});\r\n\r\nconst TooltipContent = React.forwardRef<\r\n\tReact.ElementRef<typeof TooltipPrimitive.Content>,\r\n\tReact.ComponentPropsWithoutRef<typeof TooltipPrimitive.Content>\r\n>(({ className, sideOffset = 4, ...props }, ref) => (\r\n\t<TooltipPrimitive.Portal>\r\n\t\t<IsolatedStylesWrapper>\r\n\t\t\t<TooltipPrimitive.Content\r\n\t\t\t\tref={ref}\r\n\t\t\t\tsideOffset={sideOffset}\r\n\t\t\t\tclassName={tooltipContentStyles({ className })}\r\n\t\t\t\t{...props}\r\n\t\t\t/>\r\n\t\t</IsolatedStylesWrapper>\r\n\t</TooltipPrimitive.Portal>\r\n));\r\nTooltipContent.displayName = TooltipPrimitive.Content.displayName;\r\n\r\nexport { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };\r\n"],"names":["createTooltipContext","createTooltipScope","createContextScope","createPopperScope","usePopperScope","PROVIDER_NAME","DEFAULT_DELAY_DURATION","TOOLTIP_OPEN","TooltipProviderContextProvider","useTooltipProviderContext","TooltipProvider","props","__scopeTooltip","delayDuration","skipDelayDuration","disableHoverableContent","children","isOpenDelayedRef","React","isPointerInTransitRef","skipDelayTimerRef","skipDelayTimer","jsx","inTransit","TOOLTIP_NAME","TooltipContextProvider","useTooltipContext","Tooltip","openProp","defaultOpen","onOpenChange","disableHoverableContentProp","delayDurationProp","providerContext","popperScope","trigger","setTrigger","contentId","useId","openTimerRef","wasOpenDelayedRef","open","setOpen","useControllableState","open2","stateAttribute","handleOpen","handleClose","handleDelayedOpen","PopperPrimitive.Root","__spreadProps","__spreadValues","TRIGGER_NAME","TooltipTrigger","forwardedRef","_a","triggerProps","__objRest","context","ref","composedRefs","useComposedRefs","isPointerDownRef","hasPointerMoveOpenedRef","handlePointerUp","PopperPrimitive.Anchor","Primitive","composeEventHandlers","event","PORTAL_NAME","PortalProvider","usePortalContext","TooltipPortal","forceMount","container","Presence","PortalPrimitive","CONTENT_NAME","TooltipContent","portalContext","side","contentProps","TooltipContentImpl","TooltipContentHoverable","pointerGraceArea","setPointerGraceArea","onClose","content","onPointerInTransitChange","handleRemoveGraceArea","handleCreateGraceArea","hoverTarget","currentTarget","exitPoint","exitSide","getExitSideFromRect","paddedExitPoints","getPaddedExitPoints","hoverTargetPoints","getPointsFromRect","graceArea","getHull","handleTriggerLeave","handleContentLeave","handleTrackPointerGrace","target","pointerPosition","hasEnteredTarget","isPointerOutsideGraceArea","isPointInPolygon","VisuallyHiddenContentContextProvider","useVisuallyHiddenContentContext","Slottable","createSlottable","ariaLabel","onEscapeKeyDown","onPointerDownOutside","handleScroll","DismissableLayer","jsxs","PopperPrimitive.Content","VisuallyHiddenPrimitive.Root","ARROW_NAME","TooltipArrow","arrowProps","PopperPrimitive.Arrow","point","rect","top","bottom","right","left","padding","polygon","x","y","inside","j","ii","jj","xi","yi","xj","yj","points","newPoints","a","b","getHullPresorted","upperHull","i","p","q","r","lowerHull","Provider","Root3","Trigger","Portal","Content2","TooltipPrimitive.Provider","TooltipPrimitive.Root","TooltipPrimitive.Trigger","tooltipContentStyles","tv","_b","className","sideOffset","TooltipPrimitive.Portal","IsolatedStylesWrapper","TooltipPrimitive.Content"],"mappings":"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","x_google_ignoreList":[0]}
|