@drjoshcsimmons/scl 0.2.3 → 0.2.5

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 (105) hide show
  1. package/dist/index100.js +205 -167
  2. package/dist/index101.js +14 -9
  3. package/dist/index102.js +47 -29
  4. package/dist/index103.js +49 -47
  5. package/dist/index104.js +9 -4
  6. package/dist/index105.js +1 -1
  7. package/dist/index106.js +649 -5
  8. package/dist/index107.js +12 -647
  9. package/dist/index108.js +4 -30
  10. package/dist/index109.js +9 -30
  11. package/dist/index11.js +2 -2
  12. package/dist/index110.js +30 -15
  13. package/dist/index111.js +47 -24
  14. package/dist/index112.js +30 -9
  15. package/dist/index113.js +48 -6
  16. package/dist/index114.js +6 -48
  17. package/dist/index115.js +1 -1
  18. package/dist/index116.js +1 -1
  19. package/dist/index118.js +1 -1
  20. package/dist/index12.js +1 -1
  21. package/dist/index124.js +1 -1
  22. package/dist/index13.js +2 -2
  23. package/dist/index142.js +1 -1
  24. package/dist/index143.js +1 -1
  25. package/dist/index148.js +11 -21
  26. package/dist/index149.js +26 -11
  27. package/dist/index15.js +2 -2
  28. package/dist/index150.js +4 -27
  29. package/dist/index151.js +22 -4
  30. package/dist/index17.js +4 -4
  31. package/dist/index18.js +2 -2
  32. package/dist/index20.js +2 -2
  33. package/dist/index21.js +1 -1
  34. package/dist/index22.js +1 -1
  35. package/dist/index23.js +2 -2
  36. package/dist/index24.js +1 -1
  37. package/dist/index25.js +4 -4
  38. package/dist/index26.js +1 -1
  39. package/dist/index27.js +3 -3
  40. package/dist/index29.js +1 -1
  41. package/dist/index31.js +1 -1
  42. package/dist/index33.js +1 -1
  43. package/dist/index36.js +2 -2
  44. package/dist/index37.js +1 -1
  45. package/dist/index4.js +2 -2
  46. package/dist/index45.js +124 -32
  47. package/dist/index46.js +33 -73
  48. package/dist/index47.js +244 -55
  49. package/dist/index48.js +9 -237
  50. package/dist/index49.js +73 -11
  51. package/dist/index5.js +1 -1
  52. package/dist/index50.js +210 -214
  53. package/dist/index51.js +11 -82
  54. package/dist/index52.js +52 -246
  55. package/dist/index53.js +12 -118
  56. package/dist/index54.js +16 -159
  57. package/dist/index55.js +103 -321
  58. package/dist/index56.js +71 -249
  59. package/dist/index57.js +241 -12
  60. package/dist/index58.js +204 -828
  61. package/dist/index59.js +5 -3
  62. package/dist/index6.js +1 -1
  63. package/dist/index60.js +130 -9
  64. package/dist/index61.js +248 -219
  65. package/dist/index62.js +260 -11
  66. package/dist/index63.js +5 -4
  67. package/dist/index64.js +225 -12
  68. package/dist/index65.js +11 -530
  69. package/dist/index66.js +27 -18
  70. package/dist/index67.js +5 -5
  71. package/dist/index69.js +530 -18
  72. package/dist/index7.js +1 -1
  73. package/dist/index70.js +855 -26
  74. package/dist/index71.js +9 -236
  75. package/dist/index72.js +308 -407
  76. package/dist/index73.js +402 -216
  77. package/dist/index74.js +147 -111
  78. package/dist/index75.js +21 -129
  79. package/dist/index76.js +24 -52
  80. package/dist/index77.js +67 -10
  81. package/dist/index78.js +7 -4
  82. package/dist/index79.js +52 -30
  83. package/dist/index8.js +1 -1
  84. package/dist/index80.js +5 -12
  85. package/dist/index81.js +24 -67
  86. package/dist/index82.js +66 -43
  87. package/dist/index83.js +32 -25
  88. package/dist/index84.js +8 -6
  89. package/dist/index85.js +52 -49
  90. package/dist/index86.js +10 -33
  91. package/dist/index87.js +4 -11
  92. package/dist/index88.js +30 -8
  93. package/dist/index89.js +11 -123
  94. package/dist/index9.js +2 -2
  95. package/dist/index90.js +45 -14
  96. package/dist/index91.js +10 -134
  97. package/dist/index92.js +7 -218
  98. package/dist/index93.js +30 -14
  99. package/dist/index94.js +51 -65
  100. package/dist/index95.js +29 -47
  101. package/dist/index96.js +179 -48
  102. package/dist/index97.js +124 -8
  103. package/dist/index98.js +12 -52
  104. package/dist/index99.js +134 -29
  105. package/package.json +1 -1
package/dist/index72.js CHANGED
@@ -1,437 +1,338 @@
1
- import * as d from "react";
2
- import { clamp as $ } from "./index104.js";
3
- import { composeEventHandlers as C } from "./index84.js";
4
- import { useComposedRefs as M } from "./index83.js";
5
- import { createContextScope as ce } from "./index81.js";
6
- import { useControllableState as le } from "./index85.js";
7
- import { useDirection as de } from "./index88.js";
8
- import { usePrevious as ue } from "./index106.js";
9
- import { useSize as fe } from "./index111.js";
10
- import { Primitive as K } from "./index86.js";
11
- import { createCollection as me } from "./index82.js";
12
- import { jsx as v, jsxs as pe } from "react/jsx-runtime";
13
- var j = ["PageUp", "PageDown"], X = ["ArrowUp", "ArrowDown", "ArrowLeft", "ArrowRight"], G = {
14
- "from-left": ["Home", "PageDown", "ArrowDown", "ArrowLeft"],
15
- "from-right": ["Home", "PageDown", "ArrowDown", "ArrowRight"],
16
- "from-bottom": ["Home", "PageDown", "ArrowDown", "ArrowLeft"],
17
- "from-top": ["Home", "PageDown", "ArrowUp", "ArrowLeft"]
18
- }, I = "Slider", [z, he, Se] = me(I), [W] = ce(I, [
19
- Se
20
- ]), [ge, T] = W(I), q = d.forwardRef(
21
- (e, t) => {
22
- const {
23
- name: o,
24
- min: n = 0,
25
- max: a = 100,
26
- step: c = 1,
27
- orientation: r = "horizontal",
28
- disabled: s = !1,
29
- minStepsBetweenThumbs: l = 0,
30
- defaultValue: h = [n],
31
- value: S,
32
- onValueChange: i = () => {
33
- },
34
- onValueCommit: u = () => {
35
- },
36
- inverted: w = !1,
37
- form: P,
38
- ...g
39
- } = e, m = d.useRef(/* @__PURE__ */ new Set()), f = d.useRef(0), b = r === "horizontal" ? ve : we, [p = [], A] = le({
40
- prop: S,
41
- defaultProp: h,
42
- onChange: (R) => {
43
- var E;
44
- (E = [...m.current][f.current]) == null || E.focus(), i(R);
45
- }
46
- }), k = d.useRef(p);
47
- function H(R) {
48
- const x = ye(p, R);
49
- V(R, x);
50
- }
51
- function se(R) {
52
- V(R, f.current);
1
+ import * as s from "react";
2
+ import { composeEventHandlers as g } from "./index78.js";
3
+ import { useComposedRefs as N } from "./index76.js";
4
+ import { createContextScope as K } from "./index77.js";
5
+ import { DismissableLayer as W } from "./index97.js";
6
+ import { useId as $ } from "./index91.js";
7
+ import { createPopperScope as S, Root as z, Anchor as J, Content as Q, Arrow as Z } from "./index100.js";
8
+ import { Portal as ee } from "./index101.js";
9
+ import { Presence as G } from "./index82.js";
10
+ import { Primitive as te } from "./index83.js";
11
+ import { createSlottable as oe } from "./index109.js";
12
+ import { useControllableState as re } from "./index79.js";
13
+ import { Root as ne } from "./index110.js";
14
+ import { jsx as f, jsxs as se } from "react/jsx-runtime";
15
+ var [D] = K("Tooltip", [
16
+ S
17
+ ]), O = S(), j = "TooltipProvider", ie = 700, L = "tooltip.open", [ae, k] = D(j), F = (t) => {
18
+ const {
19
+ __scopeTooltip: o,
20
+ delayDuration: e = ie,
21
+ skipDelayDuration: r = 300,
22
+ disableHoverableContent: n = !1,
23
+ children: a
24
+ } = t, l = s.useRef(!0), v = s.useRef(!1), i = s.useRef(0);
25
+ return s.useEffect(() => {
26
+ const p = i.current;
27
+ return () => window.clearTimeout(p);
28
+ }, []), /* @__PURE__ */ f(
29
+ ae,
30
+ {
31
+ scope: o,
32
+ isOpenDelayedRef: l,
33
+ delayDuration: e,
34
+ onOpen: s.useCallback(() => {
35
+ window.clearTimeout(i.current), l.current = !1;
36
+ }, []),
37
+ onClose: s.useCallback(() => {
38
+ window.clearTimeout(i.current), i.current = window.setTimeout(
39
+ () => l.current = !0,
40
+ r
41
+ );
42
+ }, [r]),
43
+ isPointerInTransitRef: v,
44
+ onPointerInTransitChange: s.useCallback((p) => {
45
+ v.current = p;
46
+ }, []),
47
+ disableHoverableContent: n,
48
+ children: a
53
49
  }
54
- function ae() {
55
- const R = k.current[f.current];
56
- p[f.current] !== R && u(p);
57
- }
58
- function V(R, x, { commit: E } = { commit: !1 }) {
59
- const F = Ce(c), N = Me(Math.round((R - n) / c) * c + n, F), B = $(N, [n, a]);
60
- A((_ = []) => {
61
- const y = Pe(_, B, x);
62
- if (_e(y, l * c)) {
63
- f.current = y.indexOf(B);
64
- const Y = String(y) !== String(_);
65
- return Y && E && u(y), Y ? y : _;
66
- } else
67
- return _;
68
- });
50
+ );
51
+ };
52
+ F.displayName = j;
53
+ var R = "Tooltip", [le, _] = D(R), B = (t) => {
54
+ const {
55
+ __scopeTooltip: o,
56
+ children: e,
57
+ open: r,
58
+ defaultOpen: n,
59
+ onOpenChange: a,
60
+ disableHoverableContent: l,
61
+ delayDuration: v
62
+ } = t, i = k(R, t.__scopeTooltip), p = O(o), [c, d] = s.useState(null), h = $(), u = s.useRef(0), m = l ?? i.disableHoverableContent, y = v ?? i.delayDuration, T = s.useRef(!1), [x, C] = re({
63
+ prop: r,
64
+ defaultProp: n ?? !1,
65
+ onChange: (H) => {
66
+ H ? (i.onOpen(), document.dispatchEvent(new CustomEvent(L))) : i.onClose(), a == null || a(H);
67
+ },
68
+ caller: R
69
+ }), w = s.useMemo(() => x ? T.current ? "delayed-open" : "instant-open" : "closed", [x]), P = s.useCallback(() => {
70
+ window.clearTimeout(u.current), u.current = 0, T.current = !1, C(!0);
71
+ }, [C]), E = s.useCallback(() => {
72
+ window.clearTimeout(u.current), u.current = 0, C(!1);
73
+ }, [C]), I = s.useCallback(() => {
74
+ window.clearTimeout(u.current), u.current = window.setTimeout(() => {
75
+ T.current = !0, C(!0), u.current = 0;
76
+ }, y);
77
+ }, [y, C]);
78
+ return s.useEffect(() => () => {
79
+ u.current && (window.clearTimeout(u.current), u.current = 0);
80
+ }, []), /* @__PURE__ */ f(z, { ...p, children: /* @__PURE__ */ f(
81
+ le,
82
+ {
83
+ scope: o,
84
+ contentId: h,
85
+ open: x,
86
+ stateAttribute: w,
87
+ trigger: c,
88
+ onTriggerChange: d,
89
+ onTriggerEnter: s.useCallback(() => {
90
+ i.isOpenDelayedRef.current ? I() : P();
91
+ }, [i.isOpenDelayedRef, I, P]),
92
+ onTriggerLeave: s.useCallback(() => {
93
+ m ? E() : (window.clearTimeout(u.current), u.current = 0);
94
+ }, [E, m]),
95
+ onOpen: P,
96
+ onClose: E,
97
+ disableHoverableContent: m,
98
+ children: e
69
99
  }
70
- return /* @__PURE__ */ v(
71
- ge,
100
+ ) });
101
+ };
102
+ B.displayName = R;
103
+ var A = "TooltipTrigger", U = s.forwardRef(
104
+ (t, o) => {
105
+ const { __scopeTooltip: e, ...r } = t, n = _(A, e), a = k(A, e), l = O(e), v = s.useRef(null), i = N(o, v, n.onTriggerChange), p = s.useRef(!1), c = s.useRef(!1), d = s.useCallback(() => p.current = !1, []);
106
+ return s.useEffect(() => () => document.removeEventListener("pointerup", d), [d]), /* @__PURE__ */ f(J, { asChild: !0, ...l, children: /* @__PURE__ */ f(
107
+ te.button,
72
108
  {
73
- scope: e.__scopeSlider,
74
- name: o,
75
- disabled: s,
76
- min: n,
77
- max: a,
78
- valueIndexToChangeRef: f,
79
- thumbs: m.current,
80
- values: p,
81
- orientation: r,
82
- form: P,
83
- children: /* @__PURE__ */ v(z.Provider, { scope: e.__scopeSlider, children: /* @__PURE__ */ v(z.Slot, { scope: e.__scopeSlider, children: /* @__PURE__ */ v(
84
- b,
85
- {
86
- "aria-disabled": s,
87
- "data-disabled": s ? "" : void 0,
88
- ...g,
89
- ref: t,
90
- onPointerDown: C(g.onPointerDown, () => {
91
- s || (k.current = p);
92
- }),
93
- min: n,
94
- max: a,
95
- inverted: w,
96
- onSlideStart: s ? void 0 : H,
97
- onSlideMove: s ? void 0 : se,
98
- onSlideEnd: s ? void 0 : ae,
99
- onHomeKeyDown: () => !s && V(n, 0, { commit: !0 }),
100
- onEndKeyDown: () => !s && V(a, p.length - 1, { commit: !0 }),
101
- onStepKeyDown: ({ event: R, direction: x }) => {
102
- if (!s) {
103
- const N = j.includes(R.key) || R.shiftKey && X.includes(R.key) ? 10 : 1, B = f.current, _ = p[B], y = c * N * x;
104
- V(_ + y, B, { commit: !0 });
105
- }
106
- }
107
- }
108
- ) }) })
109
+ "aria-describedby": n.open ? n.contentId : void 0,
110
+ "data-state": n.stateAttribute,
111
+ ...r,
112
+ ref: i,
113
+ onPointerMove: g(t.onPointerMove, (h) => {
114
+ h.pointerType !== "touch" && !c.current && !a.isPointerInTransitRef.current && (n.onTriggerEnter(), c.current = !0);
115
+ }),
116
+ onPointerLeave: g(t.onPointerLeave, () => {
117
+ n.onTriggerLeave(), c.current = !1;
118
+ }),
119
+ onPointerDown: g(t.onPointerDown, () => {
120
+ n.open && n.onClose(), p.current = !0, document.addEventListener("pointerup", d, { once: !0 });
121
+ }),
122
+ onFocus: g(t.onFocus, () => {
123
+ p.current || n.onOpen();
124
+ }),
125
+ onBlur: g(t.onBlur, n.onClose),
126
+ onClick: g(t.onClick, n.onClose)
109
127
  }
110
- );
128
+ ) });
111
129
  }
112
130
  );
113
- q.displayName = I;
114
- var [J, Q] = W(I, {
115
- startEdge: "left",
116
- endEdge: "right",
117
- size: "width",
118
- direction: 1
119
- }), ve = d.forwardRef(
120
- (e, t) => {
121
- const {
122
- min: o,
123
- max: n,
124
- dir: a,
125
- inverted: c,
126
- onSlideStart: r,
127
- onSlideMove: s,
128
- onSlideEnd: l,
129
- onStepKeyDown: h,
130
- ...S
131
- } = e, [i, u] = d.useState(null), w = M(t, (b) => u(b)), P = d.useRef(void 0), g = de(a), m = g === "ltr", f = m && !c || !m && c;
132
- function D(b) {
133
- const p = P.current || i.getBoundingClientRect(), A = [0, p.width], H = U(A, f ? [o, n] : [n, o]);
134
- return P.current = p, H(b - p.left);
135
- }
136
- return /* @__PURE__ */ v(
137
- J,
138
- {
139
- scope: e.__scopeSlider,
140
- startEdge: f ? "left" : "right",
141
- endEdge: f ? "right" : "left",
142
- direction: f ? 1 : -1,
143
- size: "width",
144
- children: /* @__PURE__ */ v(
145
- Z,
146
- {
147
- dir: g,
148
- "data-orientation": "horizontal",
149
- ...S,
150
- ref: w,
151
- style: {
152
- ...S.style,
153
- "--radix-slider-thumb-transform": "translateX(-50%)"
154
- },
155
- onSlideStart: (b) => {
156
- const p = D(b.clientX);
157
- r == null || r(p);
158
- },
159
- onSlideMove: (b) => {
160
- const p = D(b.clientX);
161
- s == null || s(p);
162
- },
163
- onSlideEnd: () => {
164
- P.current = void 0, l == null || l();
165
- },
166
- onStepKeyDown: (b) => {
167
- const A = G[f ? "from-left" : "from-right"].includes(b.key);
168
- h == null || h({ event: b, direction: A ? -1 : 1 });
169
- }
170
- }
171
- )
172
- }
173
- );
131
+ U.displayName = A;
132
+ var M = "TooltipPortal", [ce, ue] = D(M, {
133
+ forceMount: void 0
134
+ }), V = (t) => {
135
+ const { __scopeTooltip: o, forceMount: e, children: r, container: n } = t, a = _(M, o);
136
+ return /* @__PURE__ */ f(ce, { scope: o, forceMount: e, children: /* @__PURE__ */ f(G, { present: e || a.open, children: /* @__PURE__ */ f(ee, { asChild: !0, container: n, children: r }) }) });
137
+ };
138
+ V.displayName = M;
139
+ var b = "TooltipContent", Y = s.forwardRef(
140
+ (t, o) => {
141
+ const e = ue(b, t.__scopeTooltip), { forceMount: r = e.forceMount, side: n = "top", ...a } = t, l = _(b, t.__scopeTooltip);
142
+ return /* @__PURE__ */ f(G, { present: r || l.open, children: l.disableHoverableContent ? /* @__PURE__ */ f(q, { side: n, ...a, ref: o }) : /* @__PURE__ */ f(pe, { side: n, ...a, ref: o }) });
174
143
  }
175
- ), we = d.forwardRef(
176
- (e, t) => {
177
- const {
178
- min: o,
179
- max: n,
180
- inverted: a,
181
- onSlideStart: c,
182
- onSlideMove: r,
183
- onSlideEnd: s,
184
- onStepKeyDown: l,
185
- ...h
186
- } = e, S = d.useRef(null), i = M(t, S), u = d.useRef(void 0), w = !a;
187
- function P(g) {
188
- const m = u.current || S.current.getBoundingClientRect(), f = [0, m.height], b = U(f, w ? [n, o] : [o, n]);
189
- return u.current = m, b(g - m.top);
144
+ ), pe = s.forwardRef((t, o) => {
145
+ const e = _(b, t.__scopeTooltip), r = k(b, t.__scopeTooltip), n = s.useRef(null), a = N(o, n), [l, v] = s.useState(null), { trigger: i, onClose: p } = e, c = n.current, { onPointerInTransitChange: d } = r, h = s.useCallback(() => {
146
+ v(null), d(!1);
147
+ }, [d]), u = s.useCallback(
148
+ (m, y) => {
149
+ const T = m.currentTarget, x = { x: m.clientX, y: m.clientY }, C = me(x, T.getBoundingClientRect()), w = Te(x, C), P = ye(y.getBoundingClientRect()), E = xe([...w, ...P]);
150
+ v(E), d(!0);
151
+ },
152
+ [d]
153
+ );
154
+ return s.useEffect(() => () => h(), [h]), s.useEffect(() => {
155
+ if (i && c) {
156
+ const m = (T) => u(T, c), y = (T) => u(T, i);
157
+ return i.addEventListener("pointerleave", m), c.addEventListener("pointerleave", y), () => {
158
+ i.removeEventListener("pointerleave", m), c.removeEventListener("pointerleave", y);
159
+ };
190
160
  }
191
- return /* @__PURE__ */ v(
192
- J,
161
+ }, [i, c, u, h]), s.useEffect(() => {
162
+ if (l) {
163
+ const m = (y) => {
164
+ const T = y.target, x = { x: y.clientX, y: y.clientY }, C = (i == null ? void 0 : i.contains(T)) || (c == null ? void 0 : c.contains(T)), w = !Ce(x, l);
165
+ C ? h() : w && (h(), p());
166
+ };
167
+ return document.addEventListener("pointermove", m), () => document.removeEventListener("pointermove", m);
168
+ }
169
+ }, [i, c, l, p, h]), /* @__PURE__ */ f(q, { ...t, ref: a });
170
+ }), [de, fe] = D(R, { isInside: !1 }), ve = oe("TooltipContent"), q = s.forwardRef(
171
+ (t, o) => {
172
+ const {
173
+ __scopeTooltip: e,
174
+ children: r,
175
+ "aria-label": n,
176
+ onEscapeKeyDown: a,
177
+ onPointerDownOutside: l,
178
+ ...v
179
+ } = t, i = _(b, e), p = O(e), { onClose: c } = i;
180
+ return s.useEffect(() => (document.addEventListener(L, c), () => document.removeEventListener(L, c)), [c]), s.useEffect(() => {
181
+ if (i.trigger) {
182
+ const d = (h) => {
183
+ const u = h.target;
184
+ u != null && u.contains(i.trigger) && c();
185
+ };
186
+ return window.addEventListener("scroll", d, { capture: !0 }), () => window.removeEventListener("scroll", d, { capture: !0 });
187
+ }
188
+ }, [i.trigger, c]), /* @__PURE__ */ f(
189
+ W,
193
190
  {
194
- scope: e.__scopeSlider,
195
- startEdge: w ? "bottom" : "top",
196
- endEdge: w ? "top" : "bottom",
197
- size: "height",
198
- direction: w ? 1 : -1,
199
- children: /* @__PURE__ */ v(
200
- Z,
191
+ asChild: !0,
192
+ disableOutsidePointerEvents: !1,
193
+ onEscapeKeyDown: a,
194
+ onPointerDownOutside: l,
195
+ onFocusOutside: (d) => d.preventDefault(),
196
+ onDismiss: c,
197
+ children: /* @__PURE__ */ se(
198
+ Q,
201
199
  {
202
- "data-orientation": "vertical",
203
- ...h,
204
- ref: i,
200
+ "data-state": i.stateAttribute,
201
+ ...p,
202
+ ...v,
203
+ ref: o,
205
204
  style: {
206
- ...h.style,
207
- "--radix-slider-thumb-transform": "translateY(50%)"
208
- },
209
- onSlideStart: (g) => {
210
- const m = P(g.clientY);
211
- c == null || c(m);
205
+ ...v.style,
206
+ "--radix-tooltip-content-transform-origin": "var(--radix-popper-transform-origin)",
207
+ "--radix-tooltip-content-available-width": "var(--radix-popper-available-width)",
208
+ "--radix-tooltip-content-available-height": "var(--radix-popper-available-height)",
209
+ "--radix-tooltip-trigger-width": "var(--radix-popper-anchor-width)",
210
+ "--radix-tooltip-trigger-height": "var(--radix-popper-anchor-height)"
212
211
  },
213
- onSlideMove: (g) => {
214
- const m = P(g.clientY);
215
- r == null || r(m);
216
- },
217
- onSlideEnd: () => {
218
- u.current = void 0, s == null || s();
219
- },
220
- onStepKeyDown: (g) => {
221
- const f = G[w ? "from-bottom" : "from-top"].includes(g.key);
222
- l == null || l({ event: g, direction: f ? -1 : 1 });
223
- }
212
+ children: [
213
+ /* @__PURE__ */ f(ve, { children: r }),
214
+ /* @__PURE__ */ f(de, { scope: e, isInside: !0, children: /* @__PURE__ */ f(ne, { id: i.contentId, role: "tooltip", children: n || r }) })
215
+ ]
224
216
  }
225
217
  )
226
218
  }
227
219
  );
228
220
  }
229
- ), Z = d.forwardRef(
230
- (e, t) => {
231
- const {
232
- __scopeSlider: o,
233
- onSlideStart: n,
234
- onSlideMove: a,
235
- onSlideEnd: c,
236
- onHomeKeyDown: r,
237
- onEndKeyDown: s,
238
- onStepKeyDown: l,
239
- ...h
240
- } = e, S = T(I, o);
241
- return /* @__PURE__ */ v(
242
- K.span,
243
- {
244
- ...h,
245
- ref: t,
246
- onKeyDown: C(e.onKeyDown, (i) => {
247
- i.key === "Home" ? (r(i), i.preventDefault()) : i.key === "End" ? (s(i), i.preventDefault()) : j.concat(X).includes(i.key) && (l(i), i.preventDefault());
248
- }),
249
- onPointerDown: C(e.onPointerDown, (i) => {
250
- const u = i.target;
251
- u.setPointerCapture(i.pointerId), i.preventDefault(), S.thumbs.has(u) ? u.focus() : n(i);
252
- }),
253
- onPointerMove: C(e.onPointerMove, (i) => {
254
- i.target.hasPointerCapture(i.pointerId) && a(i);
255
- }),
256
- onPointerUp: C(e.onPointerUp, (i) => {
257
- const u = i.target;
258
- u.hasPointerCapture(i.pointerId) && (u.releasePointerCapture(i.pointerId), c(i));
259
- })
260
- }
261
- );
262
- }
263
- ), ee = "SliderTrack", te = d.forwardRef(
264
- (e, t) => {
265
- const { __scopeSlider: o, ...n } = e, a = T(ee, o);
266
- return /* @__PURE__ */ v(
267
- K.span,
268
- {
269
- "data-disabled": a.disabled ? "" : void 0,
270
- "data-orientation": a.orientation,
271
- ...n,
272
- ref: t
273
- }
274
- );
275
- }
276
221
  );
277
- te.displayName = ee;
278
- var L = "SliderRange", ne = d.forwardRef(
279
- (e, t) => {
280
- const { __scopeSlider: o, ...n } = e, a = T(L, o), c = Q(L, o), r = d.useRef(null), s = M(t, r), l = a.values.length, h = a.values.map(
281
- (u) => ie(u, a.min, a.max)
282
- ), S = l > 1 ? Math.min(...h) : 0, i = 100 - Math.max(...h);
283
- return /* @__PURE__ */ v(
284
- K.span,
285
- {
286
- "data-orientation": a.orientation,
287
- "data-disabled": a.disabled ? "" : void 0,
288
- ...n,
289
- ref: s,
290
- style: {
291
- ...e.style,
292
- [c.startEdge]: S + "%",
293
- [c.endEdge]: i + "%"
294
- }
295
- }
296
- );
297
- }
298
- );
299
- ne.displayName = L;
300
- var O = "SliderThumb", oe = d.forwardRef(
301
- (e, t) => {
302
- const o = he(e.__scopeSlider), [n, a] = d.useState(null), c = M(t, (s) => a(s)), r = d.useMemo(
303
- () => n ? o().findIndex((s) => s.ref.current === n) : -1,
304
- [o, n]
305
- );
306
- return /* @__PURE__ */ v(be, { ...e, ref: c, index: r });
307
- }
308
- ), be = d.forwardRef(
309
- (e, t) => {
310
- const { __scopeSlider: o, index: n, name: a, ...c } = e, r = T(O, o), s = Q(O, o), [l, h] = d.useState(null), S = M(t, (D) => h(D)), i = l ? r.form || !!l.closest("form") : !0, u = fe(l), w = r.values[n], P = w === void 0 ? 0 : ie(w, r.min, r.max), g = xe(n, r.values.length), m = u == null ? void 0 : u[s.size], f = m ? De(m, P, s.direction) : 0;
311
- return d.useEffect(() => {
312
- if (l)
313
- return r.thumbs.add(l), () => {
314
- r.thumbs.delete(l);
315
- };
316
- }, [l, r.thumbs]), /* @__PURE__ */ pe(
317
- "span",
318
- {
319
- style: {
320
- transform: "var(--radix-slider-thumb-transform)",
321
- position: "absolute",
322
- [s.startEdge]: `calc(${P}% + ${f}px)`
323
- },
324
- children: [
325
- /* @__PURE__ */ v(z.ItemSlot, { scope: e.__scopeSlider, children: /* @__PURE__ */ v(
326
- K.span,
327
- {
328
- role: "slider",
329
- "aria-label": e["aria-label"] || g,
330
- "aria-valuemin": r.min,
331
- "aria-valuenow": w,
332
- "aria-valuemax": r.max,
333
- "aria-orientation": r.orientation,
334
- "data-orientation": r.orientation,
335
- "data-disabled": r.disabled ? "" : void 0,
336
- tabIndex: r.disabled ? void 0 : 0,
337
- ...c,
338
- ref: S,
339
- style: w === void 0 ? { display: "none" } : e.style,
340
- onFocus: C(e.onFocus, () => {
341
- r.valueIndexToChangeRef.current = n;
342
- })
343
- }
344
- ) }),
345
- i && /* @__PURE__ */ v(
346
- re,
347
- {
348
- name: a ?? (r.name ? r.name + (r.values.length > 1 ? "[]" : "") : void 0),
349
- form: r.form,
350
- value: w
351
- },
352
- n
353
- )
354
- ]
355
- }
356
- );
222
+ Y.displayName = b;
223
+ var X = "TooltipArrow", he = s.forwardRef(
224
+ (t, o) => {
225
+ const { __scopeTooltip: e, ...r } = t, n = O(e);
226
+ return fe(
227
+ X,
228
+ e
229
+ ).isInside ? null : /* @__PURE__ */ f(Z, { ...n, ...r, ref: o });
357
230
  }
358
231
  );
359
- oe.displayName = O;
360
- var Re = "RadioBubbleInput", re = d.forwardRef(
361
- ({ __scopeSlider: e, value: t, ...o }, n) => {
362
- const a = d.useRef(null), c = M(a, n), r = ue(t);
363
- return d.useEffect(() => {
364
- const s = a.current;
365
- if (!s) return;
366
- const l = window.HTMLInputElement.prototype, S = Object.getOwnPropertyDescriptor(l, "value").set;
367
- if (r !== t && S) {
368
- const i = new Event("input", { bubbles: !0 });
369
- S.call(s, t), s.dispatchEvent(i);
370
- }
371
- }, [r, t]), /* @__PURE__ */ v(
372
- K.input,
373
- {
374
- style: { display: "none" },
375
- ...o,
376
- ref: c,
377
- defaultValue: t
378
- }
379
- );
232
+ he.displayName = X;
233
+ function me(t, o) {
234
+ const e = Math.abs(o.top - t.y), r = Math.abs(o.bottom - t.y), n = Math.abs(o.right - t.x), a = Math.abs(o.left - t.x);
235
+ switch (Math.min(e, r, n, a)) {
236
+ case a:
237
+ return "left";
238
+ case n:
239
+ return "right";
240
+ case e:
241
+ return "top";
242
+ case r:
243
+ return "bottom";
244
+ default:
245
+ throw new Error("unreachable");
380
246
  }
381
- );
382
- re.displayName = Re;
383
- function Pe(e = [], t, o) {
384
- const n = [...e];
385
- return n[o] = t, n.sort((a, c) => a - c);
386
247
  }
387
- function ie(e, t, o) {
388
- const c = 100 / (o - t) * (e - t);
389
- return $(c, [0, 100]);
390
- }
391
- function xe(e, t) {
392
- return t > 2 ? `Value ${e + 1} of ${t}` : t === 2 ? ["Minimum", "Maximum"][e] : void 0;
393
- }
394
- function ye(e, t) {
395
- if (e.length === 1) return 0;
396
- const o = e.map((a) => Math.abs(a - t)), n = Math.min(...o);
397
- return o.indexOf(n);
398
- }
399
- function De(e, t, o) {
400
- const n = e / 2, c = U([0, 50], [0, n]);
401
- return (n - c(t) * o) * o;
248
+ function Te(t, o, e = 5) {
249
+ const r = [];
250
+ switch (o) {
251
+ case "top":
252
+ r.push(
253
+ { x: t.x - e, y: t.y + e },
254
+ { x: t.x + e, y: t.y + e }
255
+ );
256
+ break;
257
+ case "bottom":
258
+ r.push(
259
+ { x: t.x - e, y: t.y - e },
260
+ { x: t.x + e, y: t.y - e }
261
+ );
262
+ break;
263
+ case "left":
264
+ r.push(
265
+ { x: t.x + e, y: t.y - e },
266
+ { x: t.x + e, y: t.y + e }
267
+ );
268
+ break;
269
+ case "right":
270
+ r.push(
271
+ { x: t.x - e, y: t.y - e },
272
+ { x: t.x - e, y: t.y + e }
273
+ );
274
+ break;
275
+ }
276
+ return r;
402
277
  }
403
- function Ee(e) {
404
- return e.slice(0, -1).map((t, o) => e[o + 1] - t);
278
+ function ye(t) {
279
+ const { top: o, right: e, bottom: r, left: n } = t;
280
+ return [
281
+ { x: n, y: o },
282
+ { x: e, y: o },
283
+ { x: e, y: r },
284
+ { x: n, y: r }
285
+ ];
405
286
  }
406
- function _e(e, t) {
407
- if (t > 0) {
408
- const o = Ee(e);
409
- return Math.min(...o) >= t;
287
+ function Ce(t, o) {
288
+ const { x: e, y: r } = t;
289
+ let n = !1;
290
+ for (let a = 0, l = o.length - 1; a < o.length; l = a++) {
291
+ const v = o[a], i = o[l], p = v.x, c = v.y, d = i.x, h = i.y;
292
+ c > r != h > r && e < (d - p) * (r - c) / (h - c) + p && (n = !n);
410
293
  }
411
- return !0;
412
- }
413
- function U(e, t) {
414
- return (o) => {
415
- if (e[0] === e[1] || t[0] === t[1]) return t[0];
416
- const n = (t[1] - t[0]) / (e[1] - e[0]);
417
- return t[0] + n * (o - e[0]);
418
- };
294
+ return n;
419
295
  }
420
- function Ce(e) {
421
- return (String(e).split(".")[1] || "").length;
296
+ function xe(t) {
297
+ const o = t.slice();
298
+ return o.sort((e, r) => e.x < r.x ? -1 : e.x > r.x ? 1 : e.y < r.y ? -1 : e.y > r.y ? 1 : 0), ge(o);
422
299
  }
423
- function Me(e, t) {
424
- const o = Math.pow(10, t);
425
- return Math.round(e * o) / o;
300
+ function ge(t) {
301
+ if (t.length <= 1) return t.slice();
302
+ const o = [];
303
+ for (let r = 0; r < t.length; r++) {
304
+ const n = t[r];
305
+ for (; o.length >= 2; ) {
306
+ const a = o[o.length - 1], l = o[o.length - 2];
307
+ if ((a.x - l.x) * (n.y - l.y) >= (a.y - l.y) * (n.x - l.x)) o.pop();
308
+ else break;
309
+ }
310
+ o.push(n);
311
+ }
312
+ o.pop();
313
+ const e = [];
314
+ for (let r = t.length - 1; r >= 0; r--) {
315
+ const n = t[r];
316
+ for (; e.length >= 2; ) {
317
+ const a = e[e.length - 1], l = e[e.length - 2];
318
+ if ((a.x - l.x) * (n.y - l.y) >= (a.y - l.y) * (n.x - l.x)) e.pop();
319
+ else break;
320
+ }
321
+ e.push(n);
322
+ }
323
+ return e.pop(), o.length === 1 && e.length === 1 && o[0].x === e[0].x && o[0].y === e[0].y ? o : o.concat(e);
426
324
  }
427
- var Oe = q, Ue = te, Fe = ne, Ye = oe;
325
+ var He = F, Ne = B, Se = U, Ge = V, je = Y;
428
326
  export {
429
- Fe as Range,
430
- Oe as Root,
431
- q as Slider,
432
- ne as SliderRange,
433
- oe as SliderThumb,
434
- te as SliderTrack,
435
- Ye as Thumb,
436
- Ue as Track
327
+ je as Content,
328
+ Ge as Portal,
329
+ He as Provider,
330
+ Ne as Root,
331
+ B as Tooltip,
332
+ he as TooltipArrow,
333
+ Y as TooltipContent,
334
+ V as TooltipPortal,
335
+ F as TooltipProvider,
336
+ U as TooltipTrigger,
337
+ Se as Trigger
437
338
  };