@yselimcan/ui 0.0.4 → 0.0.6
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/index100.js +32 -5
- package/dist/index101.js +19 -134
- package/dist/index102.js +4 -26
- package/dist/index103.js +4 -9
- package/dist/index104.js +5 -5
- package/dist/index105.js +7 -8
- package/dist/index106.js +16 -20
- package/dist/index107.js +13 -8
- package/dist/index108.js +291 -82
- package/dist/index109.js +4 -12
- package/dist/index110.js +37 -61
- package/dist/index111.js +126 -38
- package/dist/index112.js +5 -14
- package/dist/index113.js +21 -33
- package/dist/index114.js +77 -19
- package/dist/index115.js +63 -4
- package/dist/index116.js +46 -4
- package/dist/index117.js +67 -5
- package/dist/index118.js +8 -11
- package/dist/index119.js +13 -18
- package/dist/index120.js +4 -13
- package/dist/index121.js +3 -296
- package/dist/index122.js +5 -4
- package/dist/index123.js +131 -36
- package/dist/index124.js +24 -122
- package/dist/index125.js +8 -20
- package/dist/index126.js +5 -77
- package/dist/index127.js +11 -63
- package/dist/index128.js +22 -45
- package/dist/index132.js +2 -2
- package/dist/index133.js +1 -1
- package/dist/index134.js +2 -2
- package/dist/index135.js +1 -1
- package/dist/index136.js +4 -4
- package/dist/index137.js +1 -1
- package/dist/index139.js +1 -1
- package/dist/index140.js +3 -3
- package/dist/index141.js +1 -1
- package/dist/index143.js +2 -2
- package/dist/index144.js +1 -1
- package/dist/index145.js +3 -3
- package/dist/index146.js +5 -5
- package/dist/index147.js +6 -6
- package/dist/index148.js +4 -4
- package/dist/index149.js +3 -3
- package/dist/index152.js +1 -1
- package/dist/index155.js +1 -1
- package/dist/index157.js +3 -3
- package/dist/index158.js +3 -3
- package/dist/index159.js +2 -2
- package/dist/index160.js +1 -1
- package/dist/index164.js +1 -1
- package/dist/index167.js +2 -2
- package/dist/index168.js +1 -1
- package/dist/index169.js +1 -1
- package/dist/index17.js +4 -4
- package/dist/index170.js +3 -3
- package/dist/index171.js +1 -1
- package/dist/index172.js +1 -1
- package/dist/index173.js +3 -3
- package/dist/index174.js +1 -1
- package/dist/index175.js +2 -2
- package/dist/index176.js +1 -1
- package/dist/index177.js +1 -1
- package/dist/index178.js +6 -6
- package/dist/index179.js +1 -1
- package/dist/index18.js +5 -5
- package/dist/index180.js +1 -1
- package/dist/index181.js +2 -2
- package/dist/index182.js +1 -1
- package/dist/index183.js +1 -1
- package/dist/index184.js +1 -1
- package/dist/index187.js +2 -2
- package/dist/index189.js +3 -3
- package/dist/index19.js +10 -10
- package/dist/index190.js +1 -1
- package/dist/index191.js +1 -1
- package/dist/index192.js +3 -3
- package/dist/index193.js +1 -1
- package/dist/index194.js +1 -1
- package/dist/index195.js +1 -1
- package/dist/index196.js +5 -5
- package/dist/index197.js +1 -1
- package/dist/index198.js +3 -3
- package/dist/index20.js +3 -3
- package/dist/index200.js +2 -2
- package/dist/index201.js +3 -3
- package/dist/index202.js +1 -1
- package/dist/index203.js +2 -2
- package/dist/index204.js +26 -5
- package/dist/index205.js +5 -26
- package/dist/index206.js +9 -11
- package/dist/index207.js +11 -9
- package/dist/index21.js +4 -4
- package/dist/index217.js +2 -2
- package/dist/index218.js +1 -1
- package/dist/index219.js +4 -39
- package/dist/index22.js +5 -5
- package/dist/index220.js +4 -56
- package/dist/index221.js +14 -27
- package/dist/index222.js +32 -7
- package/dist/index223.js +37 -11
- package/dist/index224.js +57 -12
- package/dist/index225.js +27 -11
- package/dist/index226.js +6 -20
- package/dist/index227.js +11 -10
- package/dist/index228.js +11 -7
- package/dist/index229.js +11 -42
- package/dist/index23.js +3 -3
- package/dist/index230.js +17 -592
- package/dist/index231.js +6 -6
- package/dist/index232.js +7 -32
- package/dist/index233.js +43 -4
- package/dist/index234.js +597 -5
- package/dist/index235.js +11 -14
- package/dist/index239.js +1 -1
- package/dist/index24.js +10 -10
- package/dist/index242.js +2 -2
- package/dist/index244.js +1 -1
- package/dist/index246.js +2 -2
- package/dist/index247.js +14 -321
- package/dist/index248.js +322 -3
- package/dist/index249.js +3 -3
- package/dist/index250.js +3 -15
- package/dist/index26.js +1 -1
- package/dist/index27.js +1 -1
- package/dist/index28.js +2 -2
- package/dist/index32.js +1 -1
- package/dist/index33.js +11 -11
- package/dist/index34.js +4 -4
- package/dist/index35.js +11 -11
- package/dist/index36.js +8 -8
- package/dist/index37.js +6 -6
- package/dist/index38.js +7 -7
- package/dist/index39.js +4 -4
- package/dist/index40.js +3 -3
- package/dist/index41.js +4 -4
- package/dist/index42.js +2 -2
- package/dist/index43.js +2 -2
- package/dist/index44.js +1 -1
- package/dist/index45.js +4 -4
- package/dist/index46.js +8 -8
- package/dist/index47.js +8 -8
- package/dist/index48.js +10 -10
- package/dist/index49.js +2 -2
- package/dist/index50.js +9 -9
- package/dist/index52.js +8 -8
- package/dist/index53.js +1 -1
- package/dist/index54.js +15 -15
- package/dist/index55.js +7 -7
- package/dist/index56.js +8 -8
- package/dist/index57.js +1 -1
- package/dist/index58.js +3 -3
- package/dist/index59.js +2 -2
- package/dist/index60.js +5 -5
- package/dist/index61.js +2 -2
- package/dist/index62.js +2 -2
- package/dist/index63.js +5 -5
- package/dist/index64.js +2 -2
- package/dist/index66.js +7 -7
- package/dist/index67.js +1 -1
- package/dist/index69.js +10 -10
- package/dist/index70.js +1 -1
- package/dist/index71.js +9 -9
- package/dist/index72.js +11 -11
- package/dist/index73.js +2 -2
- package/dist/index74.js +1 -1
- package/dist/index75.js +5 -5
- package/dist/index76.js +1 -1
- package/dist/index77.js +3 -3
- package/dist/index78.js +3 -3
- package/dist/index81.js +7 -7
- package/dist/index82.js +2 -2
- package/dist/index83.js +1 -1
- package/dist/index86.js +11 -54
- package/dist/index87.js +54 -11
- package/dist/index88.js +87 -81
- package/dist/index89.js +81 -87
- package/dist/index94.js +7 -4
- package/dist/index95.js +86 -65
- package/dist/index96.js +12 -8
- package/dist/index97.js +61 -12
- package/dist/index98.js +38 -4
- package/dist/index99.js +14 -4
- package/dist/styles.css +1 -1
- package/package.json +4 -3
package/dist/index108.js
CHANGED
|
@@ -1,90 +1,299 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import * as
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
2
|
+
import * as b from "react";
|
|
3
|
+
import { tabbable as we, isTabbable as De, focusable as Ke } from "./index236.js";
|
|
4
|
+
import { isHTMLElement as q, getNodeName as He, getWindow as _e, getComputedStyle as Ue } from "./index123.js";
|
|
5
|
+
import { useMergedRefs as Re } from "./index117.js";
|
|
6
|
+
import { useValueAsRef as H } from "./index132.js";
|
|
7
|
+
import { useStableCallback as _ } from "./index124.js";
|
|
8
|
+
import { useIsoLayoutEffect as U } from "./index126.js";
|
|
9
|
+
import { visuallyHidden as We } from "./index129.js";
|
|
10
|
+
import { useTimeout as ye } from "./index152.js";
|
|
11
|
+
import { useAnimationFrame as $e } from "./index164.js";
|
|
12
|
+
import { FocusGuard as Te } from "./index195.js";
|
|
13
|
+
import { createChangeEventDetails as ze } from "./index100.js";
|
|
14
|
+
import { createAttribute as Fe } from "./index237.js";
|
|
15
|
+
import { enqueueFocus as te } from "./index238.js";
|
|
16
|
+
import { markOthers as Je } from "./index239.js";
|
|
17
|
+
import { usePortalContext as Qe } from "./index111.js";
|
|
18
|
+
import { useFloatingTree as Xe } from "./index181.js";
|
|
19
|
+
import { CLICK_TRIGGER_IDENTIFIER as Ye } from "./index113.js";
|
|
20
|
+
import { resolveRef as D } from "./index240.js";
|
|
21
|
+
import { jsxs as Ze, jsx as xe } from "react/jsx-runtime";
|
|
22
|
+
import { isTypeableCombobox as he, getFloatingFocusElement as Ie, getDocument as I, activeElement as V, contains as m, getTarget as W } from "./index155.js";
|
|
23
|
+
import { getTabbableOptions as re, isOutsideEvent as Le, getNextTabbable as et, getPreviousTabbable as tt } from "./index199.js";
|
|
24
|
+
import { getNodeAncestors as ke, getNodeChildren as Ce } from "./index241.js";
|
|
25
|
+
import { isVirtualClick as nt, isVirtualPointerEvent as rt, stopEvent as ot } from "./index225.js";
|
|
26
|
+
import { triggerHover as st, outsidePress as ut, focusOut as it } from "./index101.js";
|
|
27
|
+
function ct(n, p) {
|
|
28
|
+
const h = _e(n.target);
|
|
29
|
+
return n instanceof h.KeyboardEvent ? "keyboard" : n instanceof h.FocusEvent ? p || "keyboard" : "pointerType" in n ? n.pointerType || "keyboard" : "touches" in n ? "touch" : n instanceof h.MouseEvent ? p || (n.detail === 0 ? "keyboard" : "mouse") : "";
|
|
30
|
+
}
|
|
31
|
+
const Ae = 20;
|
|
32
|
+
let L = [];
|
|
33
|
+
function oe() {
|
|
34
|
+
L = L.filter((n) => n.isConnected);
|
|
35
|
+
}
|
|
36
|
+
function at(n) {
|
|
37
|
+
oe(), n && He(n) !== "body" && (L.push(n), L.length > Ae && (L = L.slice(-Ae)));
|
|
38
|
+
}
|
|
39
|
+
function ne() {
|
|
40
|
+
return oe(), L[L.length - 1];
|
|
41
|
+
}
|
|
42
|
+
function ft(n) {
|
|
43
|
+
if (!n)
|
|
44
|
+
return null;
|
|
45
|
+
const p = re();
|
|
46
|
+
return De(n, p) ? n : we(n, p)[0] || n;
|
|
47
|
+
}
|
|
48
|
+
function lt(n) {
|
|
49
|
+
return !n || !n.isConnected ? !1 : typeof n.checkVisibility == "function" ? n.checkVisibility() : Ue(n).display !== "none";
|
|
50
|
+
}
|
|
51
|
+
function Oe(n, p) {
|
|
52
|
+
if (!p.current.includes("floating") && !n.getAttribute("role")?.includes("dialog"))
|
|
53
|
+
return;
|
|
54
|
+
const h = re(), $ = Ke(n, h).filter((S) => {
|
|
55
|
+
const P = S.getAttribute("data-tabindex") || "";
|
|
56
|
+
return De(S, h) || S.hasAttribute("data-tabindex") && !P.startsWith("-");
|
|
57
|
+
}), N = n.getAttribute("tabindex");
|
|
58
|
+
p.current.includes("floating") || $.length === 0 ? N !== "0" && n.setAttribute("tabindex", "0") : (N !== "-1" || n.hasAttribute("data-tabindex") && n.getAttribute("data-tabindex") !== "-1") && (n.setAttribute("tabindex", "-1"), n.setAttribute("data-tabindex", "-1"));
|
|
59
|
+
}
|
|
60
|
+
function Mt(n) {
|
|
25
61
|
const {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
62
|
+
context: p,
|
|
63
|
+
children: h,
|
|
64
|
+
disabled: i = !1,
|
|
65
|
+
order: $ = ["content"],
|
|
66
|
+
initialFocus: N = !0,
|
|
67
|
+
returnFocus: S = !0,
|
|
68
|
+
restoreFocus: P = !1,
|
|
69
|
+
modal: E = !0,
|
|
70
|
+
closeOnFocusOut: M = !0,
|
|
71
|
+
openInteractionType: Ne = "",
|
|
72
|
+
getInsideElements: Se = () => [],
|
|
73
|
+
nextFocusableElement: z,
|
|
74
|
+
previousFocusableElement: J,
|
|
75
|
+
beforeContentFocusGuardRef: Pe,
|
|
76
|
+
externalTree: Me
|
|
77
|
+
} = n, F = "rootStore" in p ? p.rootStore : p, v = F.useState("open"), a = F.useState("domReferenceElement"), f = F.useState("floatingElement"), {
|
|
78
|
+
events: Q,
|
|
79
|
+
dataRef: k
|
|
80
|
+
} = F.context, O = _(() => k.current.floatingContext?.nodeId), se = _(Se), ue = N === !1, x = he(a) && ue, C = H($), ie = H(N), j = H(S), ce = H(Ne), R = Xe(Me), c = Qe(), Ge = b.useRef(null), qe = b.useRef(null), y = b.useRef(!1), B = b.useRef(!1), X = b.useRef(!1), ae = b.useRef(-1), fe = b.useRef(""), Y = b.useRef(""), le = ye(), de = ye(), be = $e(), Z = c != null, r = Ie(f), A = _((t = r) => t ? we(t, re()) : []), G = _((t) => {
|
|
81
|
+
const o = A(t);
|
|
82
|
+
return C.current.map(() => o).filter(Boolean).flat();
|
|
83
|
+
});
|
|
84
|
+
b.useEffect(() => {
|
|
85
|
+
if (i || !E)
|
|
86
|
+
return;
|
|
87
|
+
function t(l) {
|
|
88
|
+
l.key === "Tab" && m(r, V(I(r))) && A().length === 0 && !x && ot(l);
|
|
89
|
+
}
|
|
90
|
+
const o = I(r);
|
|
91
|
+
return o.addEventListener("keydown", t), () => {
|
|
92
|
+
o.removeEventListener("keydown", t);
|
|
93
|
+
};
|
|
94
|
+
}, [i, a, r, E, C, x, A, G]), b.useEffect(() => {
|
|
95
|
+
if (i || !f)
|
|
96
|
+
return;
|
|
97
|
+
function t(o) {
|
|
98
|
+
const l = W(o), d = A().indexOf(l);
|
|
99
|
+
d !== -1 && (ae.current = d);
|
|
100
|
+
}
|
|
101
|
+
return f.addEventListener("focusin", t), () => {
|
|
102
|
+
f.removeEventListener("focusin", t);
|
|
103
|
+
};
|
|
104
|
+
}, [i, f, A]), b.useEffect(() => {
|
|
105
|
+
if (i || !v)
|
|
106
|
+
return;
|
|
107
|
+
const t = I(r);
|
|
108
|
+
function o() {
|
|
109
|
+
X.current = !1;
|
|
110
|
+
}
|
|
111
|
+
function l(d) {
|
|
112
|
+
const e = W(d), s = m(f, e) || m(a, e) || m(c?.portalNode, e);
|
|
113
|
+
X.current = !s, Y.current = d.pointerType || "keyboard";
|
|
114
|
+
}
|
|
115
|
+
function u() {
|
|
116
|
+
Y.current = "keyboard";
|
|
117
|
+
}
|
|
118
|
+
return t.addEventListener("pointerdown", l, !0), t.addEventListener("pointerup", o, !0), t.addEventListener("pointercancel", o, !0), t.addEventListener("keydown", u, !0), () => {
|
|
119
|
+
t.removeEventListener("pointerdown", l, !0), t.removeEventListener("pointerup", o, !0), t.removeEventListener("pointercancel", o, !0), t.removeEventListener("keydown", u, !0);
|
|
120
|
+
};
|
|
121
|
+
}, [i, f, a, r, v, c]), b.useEffect(() => {
|
|
122
|
+
if (i || !M)
|
|
123
|
+
return;
|
|
124
|
+
function t() {
|
|
125
|
+
B.current = !0, de.start(0, () => {
|
|
126
|
+
B.current = !1;
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
function o(e) {
|
|
130
|
+
const s = e.relatedTarget, w = e.currentTarget, g = W(e);
|
|
131
|
+
queueMicrotask(() => {
|
|
132
|
+
const K = O(), ge = F.context.triggerElements, Be = !(m(a, s) || m(f, s) || m(s, f) || m(c?.portalNode, s) || s != null && ge.hasElement(s) || ge.hasMatchingElement((T) => m(T, s)) || s?.hasAttribute(Fe("focus-guard")) || R && (Ce(R.nodesRef.current, K).find((T) => m(T.context?.elements.floating, s) || m(T.context?.elements.domReference, s)) || ke(R.nodesRef.current, K).find((T) => [T.context?.elements.floating, Ie(T.context?.elements.floating)].includes(s) || T.context?.elements.domReference === s)));
|
|
133
|
+
if (w === a && r && Oe(r, C), P && w !== a && !lt(g) && V(I(r)) === I(r).body) {
|
|
134
|
+
if (q(r) && (r.focus(), P === "popup")) {
|
|
135
|
+
be.request(() => {
|
|
136
|
+
r.focus();
|
|
137
|
+
});
|
|
138
|
+
return;
|
|
139
|
+
}
|
|
140
|
+
const T = ae.current, ee = A(), ve = ee[T] || ee[ee.length - 1] || r;
|
|
141
|
+
q(ve) && ve.focus();
|
|
142
|
+
}
|
|
143
|
+
if (k.current.insideReactTree) {
|
|
144
|
+
k.current.insideReactTree = !1;
|
|
145
|
+
return;
|
|
146
|
+
}
|
|
147
|
+
(x || !E) && s && Be && !B.current && // Fix React 18 Strict Mode returnFocus due to double rendering.
|
|
148
|
+
// For an "untrapped" typeable combobox (input role=combobox with
|
|
149
|
+
// initialFocus=false), re-opening the popup and tabbing out should still close it even
|
|
150
|
+
// when the previously focused element (e.g. the next tabbable outside the popup) is
|
|
151
|
+
// focused again. Otherwise, the popup remains open on the second Tab sequence:
|
|
152
|
+
// click input -> Tab (closes) -> click input -> Tab.
|
|
153
|
+
// Allow closing when `isUntrappedTypeableCombobox` regardless of the previously focused element.
|
|
154
|
+
(x || s !== ne()) && (y.current = !0, F.setOpen(!1, ze(it, e)));
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
function l() {
|
|
158
|
+
X.current || (k.current.insideReactTree = !0, le.start(0, () => {
|
|
159
|
+
k.current.insideReactTree = !1;
|
|
160
|
+
}));
|
|
161
|
+
}
|
|
162
|
+
const u = q(a) ? a : null, d = [];
|
|
163
|
+
if (!(!f && !u))
|
|
164
|
+
return u && (u.addEventListener("focusout", o), u.addEventListener("pointerdown", t), d.push(() => {
|
|
165
|
+
u.removeEventListener("focusout", o), u.removeEventListener("pointerdown", t);
|
|
166
|
+
})), f && (f.addEventListener("focusout", o), c && (f.addEventListener("focusout", l, !0), d.push(() => {
|
|
167
|
+
f.removeEventListener("focusout", l, !0);
|
|
168
|
+
})), d.push(() => {
|
|
169
|
+
f.removeEventListener("focusout", o);
|
|
170
|
+
})), () => {
|
|
171
|
+
d.forEach((e) => {
|
|
172
|
+
e();
|
|
173
|
+
});
|
|
51
174
|
};
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
175
|
+
}, [i, a, f, r, E, R, c, F, M, P, A, x, O, C, k, le, de, be]);
|
|
176
|
+
const me = b.useRef(null), pe = b.useRef(null), Ve = Re(me, Pe, c?.beforeInsideRef), je = Re(pe, c?.afterInsideRef);
|
|
177
|
+
b.useEffect(() => {
|
|
178
|
+
if (i || !f || !v)
|
|
179
|
+
return;
|
|
180
|
+
const t = Array.from(c?.portalNode?.querySelectorAll(`[${Fe("portal")}]`) || []), l = (R ? ke(R.nodesRef.current, O()) : []).find((e) => he(e.context?.elements.domReference || null))?.context?.elements.domReference, u = [f, l, ...t, ...se(), Ge.current, qe.current, me.current, pe.current, c?.beforeOutsideRef.current, c?.afterOutsideRef.current, D(J), D(z), x ? a : null].filter((e) => e != null), d = Je(u, E || x);
|
|
181
|
+
return () => {
|
|
182
|
+
d();
|
|
183
|
+
};
|
|
184
|
+
}, [v, i, a, f, E, C, c, x, R, O, se, z, J]), U(() => {
|
|
185
|
+
if (!v || i || !q(r))
|
|
186
|
+
return;
|
|
187
|
+
const t = I(r), o = V(t);
|
|
188
|
+
queueMicrotask(() => {
|
|
189
|
+
const l = G(r), u = ie.current, d = typeof u == "function" ? u(ce.current || "") : u;
|
|
190
|
+
if (d === void 0 || d === !1)
|
|
191
|
+
return;
|
|
192
|
+
let e;
|
|
193
|
+
d === !0 || d === null ? e = l[0] || r : e = D(d), e = e || l[0] || r, !m(r, o) && te(e, {
|
|
194
|
+
preventScroll: e === r
|
|
195
|
+
});
|
|
196
|
+
});
|
|
197
|
+
}, [i, v, r, ue, G, ie, ce]), U(() => {
|
|
198
|
+
if (i || !r)
|
|
199
|
+
return;
|
|
200
|
+
const t = I(r), o = V(t);
|
|
201
|
+
at(o);
|
|
202
|
+
function l(e) {
|
|
203
|
+
if (e.open || (fe.current = ct(e.nativeEvent, Y.current)), e.reason === st && e.nativeEvent.type === "mouseleave" && (y.current = !0), e.reason === ut)
|
|
204
|
+
if (e.nested)
|
|
205
|
+
y.current = !1;
|
|
206
|
+
else if (nt(e.nativeEvent) || rt(e.nativeEvent))
|
|
207
|
+
y.current = !1;
|
|
208
|
+
else {
|
|
209
|
+
let s = !1;
|
|
210
|
+
document.createElement("div").focus({
|
|
211
|
+
get preventScroll() {
|
|
212
|
+
return s = !0, !1;
|
|
213
|
+
}
|
|
214
|
+
}), s ? y.current = !1 : y.current = !0;
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
Q.on("openchange", l);
|
|
218
|
+
const u = t.createElement("span");
|
|
219
|
+
u.setAttribute("tabindex", "-1"), u.setAttribute("aria-hidden", "true"), Object.assign(u.style, We), Z && a && a.insertAdjacentElement("afterend", u);
|
|
220
|
+
function d() {
|
|
221
|
+
const e = j.current;
|
|
222
|
+
let s = typeof e == "function" ? e(fe.current) : e;
|
|
223
|
+
if (s === void 0 || s === !1)
|
|
224
|
+
return null;
|
|
225
|
+
if (s === null && (s = !0), typeof s == "boolean") {
|
|
226
|
+
const g = a || ne();
|
|
227
|
+
return g && g.isConnected ? g : u;
|
|
60
228
|
}
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
229
|
+
const w = a || ne() || u;
|
|
230
|
+
return D(s) || w;
|
|
231
|
+
}
|
|
232
|
+
return () => {
|
|
233
|
+
Q.off("openchange", l);
|
|
234
|
+
const e = V(t), s = m(f, e) || R && Ce(R.nodesRef.current, O(), !1).some((g) => m(g.context?.elements.floating, e)), w = d();
|
|
235
|
+
queueMicrotask(() => {
|
|
236
|
+
const g = ft(w), K = typeof j.current != "boolean";
|
|
237
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
238
|
+
j.current && !y.current && q(g) && // If the focus moved somewhere else after mount, avoid returning focus
|
|
239
|
+
// since it likely entered a different element which should be
|
|
240
|
+
// respected: https://github.com/floating-ui/floating-ui/issues/2607
|
|
241
|
+
(!(!K && g !== e && e !== t.body) || s) && g.focus({
|
|
242
|
+
preventScroll: !0
|
|
243
|
+
}), u.remove();
|
|
244
|
+
});
|
|
245
|
+
};
|
|
246
|
+
}, [i, f, r, j, k, Q, R, Z, a, O]), b.useEffect(() => {
|
|
247
|
+
queueMicrotask(() => {
|
|
248
|
+
y.current = !1;
|
|
249
|
+
});
|
|
250
|
+
}, [i]), b.useEffect(() => {
|
|
251
|
+
if (i || !v)
|
|
252
|
+
return;
|
|
253
|
+
function t(l) {
|
|
254
|
+
W(l)?.closest(`[${Ye}]`) && (B.current = !0);
|
|
255
|
+
}
|
|
256
|
+
const o = I(r);
|
|
257
|
+
return o.addEventListener("pointerdown", t, !0), () => {
|
|
258
|
+
o.removeEventListener("pointerdown", t, !0);
|
|
259
|
+
};
|
|
260
|
+
}, [i, v, r]), U(() => {
|
|
261
|
+
if (!i && c)
|
|
262
|
+
return c.setFocusManagerState({
|
|
263
|
+
modal: E,
|
|
264
|
+
closeOnFocusOut: M,
|
|
265
|
+
open: v,
|
|
266
|
+
onOpenChange: F.setOpen,
|
|
267
|
+
domReference: a
|
|
268
|
+
}), () => {
|
|
269
|
+
c.setFocusManagerState(null);
|
|
270
|
+
};
|
|
271
|
+
}, [i, c, E, v, F, M, a]), U(() => {
|
|
272
|
+
if (!(i || !r))
|
|
273
|
+
return Oe(r, C), () => {
|
|
274
|
+
queueMicrotask(oe);
|
|
275
|
+
};
|
|
276
|
+
}, [i, r, C]);
|
|
277
|
+
const Ee = !i && (E ? !x : !0) && (Z || E);
|
|
278
|
+
return /* @__PURE__ */ Ze(b.Fragment, {
|
|
279
|
+
children: [Ee && /* @__PURE__ */ xe(Te, {
|
|
280
|
+
"data-type": "inside",
|
|
281
|
+
ref: Ve,
|
|
282
|
+
onFocus: (t) => {
|
|
283
|
+
if (E) {
|
|
284
|
+
const o = G();
|
|
285
|
+
te(o[o.length - 1]);
|
|
286
|
+
} else c?.portalNode && (y.current = !1, Le(t, c.portalNode) ? et(a)?.focus() : D(J ?? c.beforeOutsideRef)?.focus());
|
|
287
|
+
}
|
|
288
|
+
}), h, Ee && /* @__PURE__ */ xe(Te, {
|
|
289
|
+
"data-type": "inside",
|
|
290
|
+
ref: je,
|
|
291
|
+
onFocus: (t) => {
|
|
292
|
+
E ? te(G()[0]) : c?.portalNode && (M && (y.current = !0), Le(t, c.portalNode) ? tt(a)?.focus() : D(z ?? c.afterOutsideRef)?.focus());
|
|
293
|
+
}
|
|
294
|
+
})]
|
|
86
295
|
});
|
|
87
296
|
}
|
|
88
297
|
export {
|
|
89
|
-
|
|
298
|
+
Mt as FloatingFocusManager
|
|
90
299
|
};
|
package/dist/index109.js
CHANGED
|
@@ -1,15 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const e = /* @__PURE__ */ t.createContext(void 0);
|
|
5
|
-
process.env.NODE_ENV !== "production" && (e.displayName = "DialogRootContext");
|
|
6
|
-
function s(n) {
|
|
7
|
-
const o = t.useContext(e);
|
|
8
|
-
if (n === !1 && o === void 0)
|
|
9
|
-
throw new Error(process.env.NODE_ENV !== "production" ? "Base UI: DialogRootContext is missing. Dialog parts must be placed within <Dialog.Root>." : i(27));
|
|
10
|
-
return o;
|
|
1
|
+
import { isReactVersionAtLeast as r } from "./index205.js";
|
|
2
|
+
function n(e) {
|
|
3
|
+
return r(19) ? e : e ? "true" : void 0;
|
|
11
4
|
}
|
|
12
5
|
export {
|
|
13
|
-
|
|
14
|
-
s as useDialogRootContext
|
|
6
|
+
n as inertValue
|
|
15
7
|
};
|
package/dist/index110.js
CHANGED
|
@@ -1,65 +1,41 @@
|
|
|
1
1
|
import * as i from "react";
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
internalBackdropRef: /* @__PURE__ */ i.createRef(),
|
|
24
|
-
triggerElements: new g(),
|
|
25
|
-
onOpenChange: void 0,
|
|
26
|
-
onOpenChangeComplete: void 0
|
|
27
|
-
}, m);
|
|
2
|
+
import { jsx as a } from "react/jsx-runtime";
|
|
3
|
+
const c = /* @__PURE__ */ i.forwardRef(function(r, n) {
|
|
4
|
+
const {
|
|
5
|
+
cutout: e,
|
|
6
|
+
...p
|
|
7
|
+
} = r;
|
|
8
|
+
let o;
|
|
9
|
+
if (e) {
|
|
10
|
+
const t = e?.getBoundingClientRect();
|
|
11
|
+
o = `polygon(
|
|
12
|
+
0% 0%,
|
|
13
|
+
100% 0%,
|
|
14
|
+
100% 100%,
|
|
15
|
+
0% 100%,
|
|
16
|
+
0% 0%,
|
|
17
|
+
${t.left}px ${t.top}px,
|
|
18
|
+
${t.left}px ${t.bottom}px,
|
|
19
|
+
${t.right}px ${t.bottom}px,
|
|
20
|
+
${t.right}px ${t.top}px,
|
|
21
|
+
${t.left}px ${t.top}px
|
|
22
|
+
)`;
|
|
28
23
|
}
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
(l || o) && (r.activeTriggerId = l, r.activeTriggerElement = t.trigger ?? null), this.update(r);
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
function c(e = {}) {
|
|
48
|
-
return {
|
|
49
|
-
...a(),
|
|
50
|
-
modal: !0,
|
|
51
|
-
disablePointerDismissal: !1,
|
|
52
|
-
popupElement: null,
|
|
53
|
-
viewportElement: null,
|
|
54
|
-
descriptionElementId: void 0,
|
|
55
|
-
titleElementId: void 0,
|
|
56
|
-
openMethod: null,
|
|
57
|
-
nested: !1,
|
|
58
|
-
nestedOpenDialogCount: 0,
|
|
59
|
-
role: "dialog",
|
|
60
|
-
...e
|
|
61
|
-
};
|
|
62
|
-
}
|
|
24
|
+
return /* @__PURE__ */ a("div", {
|
|
25
|
+
ref: n,
|
|
26
|
+
role: "presentation",
|
|
27
|
+
"data-base-ui-inert": "",
|
|
28
|
+
...p,
|
|
29
|
+
style: {
|
|
30
|
+
position: "fixed",
|
|
31
|
+
inset: 0,
|
|
32
|
+
userSelect: "none",
|
|
33
|
+
WebkitUserSelect: "none",
|
|
34
|
+
clipPath: o
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
});
|
|
38
|
+
process.env.NODE_ENV !== "production" && (c.displayName = "InternalBackdrop");
|
|
63
39
|
export {
|
|
64
|
-
|
|
40
|
+
c as InternalBackdrop
|
|
65
41
|
};
|