@luokuiai/lumen-ui 1.0.0-alpha.5 → 1.0.0-alpha.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/index.js +634 -636
- package/dist/index.js.map +1 -1
- package/dist/lumen-ui.css +1 -1
- package/dist/theme-contract.js +1 -0
- package/dist/theme-contract.js.map +1 -1
- package/dist/types/components/DatePicker.d.ts.map +1 -1
- package/dist/types/components/DropdownMenu.d.ts.map +1 -1
- package/dist/types/components/TimePicker.d.ts.map +1 -1
- package/dist/types/components/Toast.d.ts.map +1 -1
- package/dist/types/components/Tooltip.d.ts +3 -3
- package/dist/types/components/Tooltip.d.ts.map +1 -1
- package/dist/types/components/TreeSelect.d.ts.map +1 -1
- package/dist/types/components/designTokens.d.ts +1 -1
- package/dist/types/theme-contract.d.ts +1 -1
- package/dist/types/theme-contract.d.ts.map +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { lumenThemeAttributes as Ks, lumenThemeVariables as Xs } from "./theme-contract.js";
|
|
2
|
-
import xe, { useState as D, useRef as
|
|
3
|
-
import { X as Ve, AlertCircle as Ct, CircleAlert as Cr, CheckCircle2 as dr, Info as ur, User as Mr, Minus as Rr, Check as Dt, ChevronDown as Ue, Loader2 as Dr, Calendar as mr, ChevronLeft as Le, ChevronRight as Me, Clock as xr, ChevronsUpDown as Pr, ArrowUp as Lr, ArrowDown as
|
|
2
|
+
import xe, { useState as D, useRef as se, useId as De, useEffect as re, useMemo as me, useContext as _r, createContext as Ir, useCallback as P, useLayoutEffect as gt, cloneElement as $r } from "react";
|
|
3
|
+
import { X as Ve, AlertCircle as Ct, CircleAlert as Cr, CheckCircle2 as dr, Info as ur, User as Mr, Minus as Rr, Check as Dt, ChevronDown as Ue, Loader2 as Dr, Calendar as mr, ChevronLeft as Le, ChevronRight as Me, Clock as xr, ChevronsUpDown as Pr, ArrowUp as Lr, ArrowDown as Or, Inbox as Fr, LoaderCircle as vt, UploadCloud as Wt, FileText as Wr, Search as Pt, Circle as Hr, ChevronUp as Br } from "lucide-react";
|
|
4
4
|
import { createPortal as Re } from "react-dom";
|
|
5
5
|
import { createRoot as Yr } from "react-dom/client";
|
|
6
6
|
var pt = { exports: {} }, ot = {};
|
|
@@ -60,18 +60,18 @@ function Vr() {
|
|
|
60
60
|
return "Profiler";
|
|
61
61
|
case j:
|
|
62
62
|
return "StrictMode";
|
|
63
|
-
case
|
|
63
|
+
case F:
|
|
64
64
|
return "Suspense";
|
|
65
|
-
case
|
|
65
|
+
case R:
|
|
66
66
|
return "SuspenseList";
|
|
67
|
-
case
|
|
67
|
+
case y:
|
|
68
68
|
return "Activity";
|
|
69
69
|
}
|
|
70
70
|
if (typeof f == "object")
|
|
71
71
|
switch (typeof f.tag == "number" && console.error(
|
|
72
72
|
"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
|
|
73
73
|
), f.$$typeof) {
|
|
74
|
-
case
|
|
74
|
+
case g:
|
|
75
75
|
return "Portal";
|
|
76
76
|
case z:
|
|
77
77
|
return f.displayName || "Context";
|
|
@@ -123,7 +123,7 @@ function Vr() {
|
|
|
123
123
|
}
|
|
124
124
|
}
|
|
125
125
|
function s() {
|
|
126
|
-
var f =
|
|
126
|
+
var f = oe.A;
|
|
127
127
|
return f === null ? null : f.getOwner();
|
|
128
128
|
}
|
|
129
129
|
function a() {
|
|
@@ -154,7 +154,7 @@ function Vr() {
|
|
|
154
154
|
"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
|
|
155
155
|
)), f = this.props.ref, f !== void 0 ? f : null;
|
|
156
156
|
}
|
|
157
|
-
function l(f, I, A, E,
|
|
157
|
+
function l(f, I, A, E, ee, te) {
|
|
158
158
|
var W = A.ref;
|
|
159
159
|
return f = {
|
|
160
160
|
$$typeof: k,
|
|
@@ -179,15 +179,15 @@ function Vr() {
|
|
|
179
179
|
configurable: !1,
|
|
180
180
|
enumerable: !1,
|
|
181
181
|
writable: !0,
|
|
182
|
-
value:
|
|
182
|
+
value: ee
|
|
183
183
|
}), Object.defineProperty(f, "_debugTask", {
|
|
184
184
|
configurable: !1,
|
|
185
185
|
enumerable: !1,
|
|
186
186
|
writable: !0,
|
|
187
|
-
value:
|
|
187
|
+
value: te
|
|
188
188
|
}), Object.freeze && (Object.freeze(f.props), Object.freeze(f)), f;
|
|
189
189
|
}
|
|
190
|
-
function d(f, I, A, E,
|
|
190
|
+
function d(f, I, A, E, ee, te) {
|
|
191
191
|
var W = I.children;
|
|
192
192
|
if (W !== void 0)
|
|
193
193
|
if (E)
|
|
@@ -231,8 +231,8 @@ React keys must be passed directly to JSX without using spread:
|
|
|
231
231
|
W,
|
|
232
232
|
A,
|
|
233
233
|
s(),
|
|
234
|
-
|
|
235
|
-
|
|
234
|
+
ee,
|
|
235
|
+
te
|
|
236
236
|
);
|
|
237
237
|
}
|
|
238
238
|
function m(f) {
|
|
@@ -241,7 +241,7 @@ React keys must be passed directly to JSX without using spread:
|
|
|
241
241
|
function u(f) {
|
|
242
242
|
return typeof f == "object" && f !== null && f.$$typeof === k;
|
|
243
243
|
}
|
|
244
|
-
var h = xe, k = Symbol.for("react.transitional.element"),
|
|
244
|
+
var h = xe, k = Symbol.for("react.transitional.element"), g = Symbol.for("react.portal"), N = Symbol.for("react.fragment"), j = Symbol.for("react.strict_mode"), b = Symbol.for("react.profiler"), T = Symbol.for("react.consumer"), z = Symbol.for("react.context"), _ = Symbol.for("react.forward_ref"), F = Symbol.for("react.suspense"), R = Symbol.for("react.suspense_list"), C = Symbol.for("react.memo"), H = Symbol.for("react.lazy"), y = Symbol.for("react.activity"), Z = Symbol.for("react.client.reference"), oe = h.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, X = Object.prototype.hasOwnProperty, B = Array.isArray, L = console.createTask ? console.createTask : function() {
|
|
245
245
|
return null;
|
|
246
246
|
};
|
|
247
247
|
h = {
|
|
@@ -249,29 +249,29 @@ React keys must be passed directly to JSX without using spread:
|
|
|
249
249
|
return f();
|
|
250
250
|
}
|
|
251
251
|
};
|
|
252
|
-
var v, S = {},
|
|
252
|
+
var v, S = {}, M = h.react_stack_bottom_frame.bind(
|
|
253
253
|
h,
|
|
254
254
|
a
|
|
255
|
-
)(), Q =
|
|
255
|
+
)(), Q = L(o(a)), J = {};
|
|
256
256
|
st.Fragment = N, st.jsx = function(f, I, A) {
|
|
257
|
-
var E = 1e4 >
|
|
257
|
+
var E = 1e4 > oe.recentlyCreatedOwnerStacks++;
|
|
258
258
|
return d(
|
|
259
259
|
f,
|
|
260
260
|
I,
|
|
261
261
|
A,
|
|
262
262
|
!1,
|
|
263
|
-
E ? Error("react-stack-top-frame") :
|
|
264
|
-
E ?
|
|
263
|
+
E ? Error("react-stack-top-frame") : M,
|
|
264
|
+
E ? L(o(f)) : Q
|
|
265
265
|
);
|
|
266
266
|
}, st.jsxs = function(f, I, A) {
|
|
267
|
-
var E = 1e4 >
|
|
267
|
+
var E = 1e4 > oe.recentlyCreatedOwnerStacks++;
|
|
268
268
|
return d(
|
|
269
269
|
f,
|
|
270
270
|
I,
|
|
271
271
|
A,
|
|
272
272
|
!0,
|
|
273
|
-
E ? Error("react-stack-top-frame") :
|
|
274
|
-
E ?
|
|
273
|
+
E ? Error("react-stack-top-frame") : M,
|
|
274
|
+
E ? L(o(f)) : Q
|
|
275
275
|
);
|
|
276
276
|
};
|
|
277
277
|
})()), st;
|
|
@@ -480,7 +480,7 @@ const nn = {
|
|
|
480
480
|
...d
|
|
481
481
|
}, m) => {
|
|
482
482
|
const [u, h] = D(null), k = !!(t && u !== t), {
|
|
483
|
-
className:
|
|
483
|
+
className: g,
|
|
484
484
|
onError: N,
|
|
485
485
|
...j
|
|
486
486
|
} = i ?? {}, b = n ? sn(n) : "";
|
|
@@ -505,7 +505,7 @@ const nn = {
|
|
|
505
505
|
alt: "",
|
|
506
506
|
"aria-hidden": "true",
|
|
507
507
|
draggable: !1,
|
|
508
|
-
className: p("h-full w-full object-cover",
|
|
508
|
+
className: p("h-full w-full object-cover", g),
|
|
509
509
|
onError: (T) => {
|
|
510
510
|
h(t ?? null), N == null || N(T);
|
|
511
511
|
}
|
|
@@ -530,7 +530,7 @@ const ln = {
|
|
|
530
530
|
success: `border-transparent ${Ye.success}`,
|
|
531
531
|
warning: `border-transparent ${Ye.warning}`,
|
|
532
532
|
danger: `border-transparent ${Ye.danger}`,
|
|
533
|
-
outline: "border-[var(--lumen-color-border
|
|
533
|
+
outline: "border-[var(--lumen-color-border)] bg-[var(--lumen-color-surface)] text-[var(--lumen-color-text-secondary)]"
|
|
534
534
|
};
|
|
535
535
|
function Es({
|
|
536
536
|
children: t,
|
|
@@ -553,7 +553,7 @@ function Es({
|
|
|
553
553
|
}
|
|
554
554
|
);
|
|
555
555
|
}
|
|
556
|
-
const
|
|
556
|
+
const Oe = ({
|
|
557
557
|
children: t,
|
|
558
558
|
variant: r = "primary",
|
|
559
559
|
size: n = "md",
|
|
@@ -670,14 +670,14 @@ const bt = ({
|
|
|
670
670
|
id: l,
|
|
671
671
|
...d
|
|
672
672
|
}) => {
|
|
673
|
-
const m =
|
|
674
|
-
|
|
673
|
+
const m = se(null), u = De(), h = l ?? u, k = `${h}-label`, g = `${h}-description`, N = typeof r == "boolean", [j, b] = D(n), T = N ? r : j, z = t === "sm", _ = !!i, F = d["aria-label"];
|
|
674
|
+
re(() => {
|
|
675
675
|
m.current && (m.current.indeterminate = s);
|
|
676
676
|
}, [s, T]);
|
|
677
|
-
const
|
|
677
|
+
const R = (H) => {
|
|
678
678
|
if (o) return;
|
|
679
|
-
const
|
|
680
|
-
N || b(
|
|
679
|
+
const y = H.target.checked;
|
|
680
|
+
N || b(y), x == null || x(y);
|
|
681
681
|
}, C = s || T;
|
|
682
682
|
return /* @__PURE__ */ e.jsxs(
|
|
683
683
|
"label",
|
|
@@ -709,12 +709,12 @@ const bt = ({
|
|
|
709
709
|
type: "checkbox",
|
|
710
710
|
checked: T,
|
|
711
711
|
disabled: o,
|
|
712
|
-
"aria-labelledby": !
|
|
713
|
-
"aria-describedby": i ?
|
|
714
|
-
"aria-label":
|
|
712
|
+
"aria-labelledby": !F && a ? k : void 0,
|
|
713
|
+
"aria-describedby": i ? g : void 0,
|
|
714
|
+
"aria-label": F ?? (typeof a == "string" ? a : void 0),
|
|
715
715
|
"aria-checked": s ? "mixed" : T,
|
|
716
716
|
className: "peer sr-only",
|
|
717
|
-
onChange:
|
|
717
|
+
onChange: R
|
|
718
718
|
}
|
|
719
719
|
),
|
|
720
720
|
/* @__PURE__ */ e.jsx(
|
|
@@ -724,7 +724,7 @@ const bt = ({
|
|
|
724
724
|
className: p(
|
|
725
725
|
"flex items-center justify-center border transition-all",
|
|
726
726
|
z ? "h-4 w-4 rounded-[4px]" : "h-5 w-5 rounded-[5px]",
|
|
727
|
-
C ? "border-[var(--lumen-color-primary)] bg-[var(--lumen-color-primary)] text-[var(--lumen-color-on-primary)] shadow-[0_8px_18px_var(--lumen-color-focus-ring)]" : "border-[var(--lumen-color-border
|
|
727
|
+
C ? "border-[var(--lumen-color-primary)] bg-[var(--lumen-color-primary)] text-[var(--lumen-color-on-primary)] shadow-[0_8px_18px_var(--lumen-color-focus-ring)]" : "border-[var(--lumen-color-border)] bg-[var(--lumen-color-surface)] text-transparent",
|
|
728
728
|
!o && "peer-focus-visible:ring-2 peer-focus-visible:ring-[var(--lumen-color-info-border)]/70 peer-focus-visible:ring-offset-2",
|
|
729
729
|
!o && !C && "hover:border-[var(--lumen-color-info-border)] hover:bg-[var(--lumen-color-surface-hover)]"
|
|
730
730
|
),
|
|
@@ -750,7 +750,7 @@ const bt = ({
|
|
|
750
750
|
i ? /* @__PURE__ */ e.jsx(
|
|
751
751
|
"span",
|
|
752
752
|
{
|
|
753
|
-
id:
|
|
753
|
+
id: g,
|
|
754
754
|
className: p(
|
|
755
755
|
"mt-0.5 block text-[var(--lumen-color-text-muted)]",
|
|
756
756
|
z ? "text-[12px] leading-4.5" : "text-[12px] leading-5"
|
|
@@ -841,8 +841,8 @@ const bt = ({
|
|
|
841
841
|
const d = Array.isArray(t), [m, u] = D(r), h = d ? t : m, k = me(() => ({
|
|
842
842
|
openValues: h,
|
|
843
843
|
density: s,
|
|
844
|
-
toggle: (
|
|
845
|
-
const N = h.includes(
|
|
844
|
+
toggle: (g) => {
|
|
845
|
+
const N = h.includes(g), j = o ? N ? [] : [g] : N ? h.filter((b) => b !== g) : [...h, g];
|
|
846
846
|
d || u(j), n == null || n(j);
|
|
847
847
|
}
|
|
848
848
|
}), [o, d, s, n, h]);
|
|
@@ -964,27 +964,27 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
964
964
|
panelClassName: x = "",
|
|
965
965
|
closeOnOverlayClick: c = !0
|
|
966
966
|
}) => {
|
|
967
|
-
const [l, d] = D(t), [m, u] = D(!1), [h, k] = D(o),
|
|
968
|
-
|
|
967
|
+
const [l, d] = D(t), [m, u] = D(!1), [h, k] = D(o), g = m || l && !t;
|
|
968
|
+
re(() => {
|
|
969
969
|
t ? (d(!0), u(!1), k(o)) : l && u(!0);
|
|
970
|
-
}, [o, l, t]),
|
|
970
|
+
}, [o, l, t]), re(() => {
|
|
971
971
|
t && o != null && k(o);
|
|
972
972
|
}, [o, t]);
|
|
973
|
-
const N =
|
|
973
|
+
const N = P(
|
|
974
974
|
(b) => {
|
|
975
975
|
b.target !== b.currentTarget || !m || (d(!1), u(!1), k(null), n == null || n());
|
|
976
976
|
},
|
|
977
977
|
[m, n]
|
|
978
978
|
);
|
|
979
979
|
if (!l || typeof document > "u") return null;
|
|
980
|
-
const j =
|
|
980
|
+
const j = g ? h : o;
|
|
981
981
|
return Re(
|
|
982
982
|
/* @__PURE__ */ e.jsx(
|
|
983
983
|
"div",
|
|
984
984
|
{
|
|
985
985
|
"data-modal-overlay": a || s,
|
|
986
986
|
"data-lumen-motion": !0,
|
|
987
|
-
className: `${jn} ${
|
|
987
|
+
className: `${jn} ${g ? "animate-[lumen-page-fade-out_150ms_ease-in_forwards]" : "animate-[lumen-page-fade-in_200ms_ease-out]"} ${i}`.trim(),
|
|
988
988
|
onClick: c ? r : void 0,
|
|
989
989
|
onAnimationEnd: N,
|
|
990
990
|
children: /* @__PURE__ */ e.jsx(
|
|
@@ -992,7 +992,7 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
992
992
|
{
|
|
993
993
|
"data-modal": s,
|
|
994
994
|
"data-lumen-motion": !0,
|
|
995
|
-
className: `max-h-[calc(100dvh-1.5rem)] ${
|
|
995
|
+
className: `max-h-[calc(100dvh-1.5rem)] ${g ? "animate-[lumen-modal-out_150ms_ease-in_forwards]" : "animate-[lumen-modal-in_200ms_ease-out]"} ${x}`.trim(),
|
|
996
996
|
onClick: (b) => b.stopPropagation(),
|
|
997
997
|
children: j
|
|
998
998
|
}
|
|
@@ -1033,7 +1033,7 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1033
1033
|
className: "mt-5 flex flex-col-reverse gap-2.5 pad:mt-6 pad:flex-row pad:items-center pad:justify-end l:mt-6 l:flex-row l:items-center l:justify-end",
|
|
1034
1034
|
children: [
|
|
1035
1035
|
/* @__PURE__ */ e.jsx(
|
|
1036
|
-
|
|
1036
|
+
Oe,
|
|
1037
1037
|
{
|
|
1038
1038
|
disabled: c,
|
|
1039
1039
|
variant: "outline",
|
|
@@ -1043,7 +1043,7 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1043
1043
|
}
|
|
1044
1044
|
),
|
|
1045
1045
|
/* @__PURE__ */ e.jsxs(
|
|
1046
|
-
|
|
1046
|
+
Oe,
|
|
1047
1047
|
{
|
|
1048
1048
|
"aria-busy": x,
|
|
1049
1049
|
disabled: i || x,
|
|
@@ -1126,18 +1126,18 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1126
1126
|
minDate: m,
|
|
1127
1127
|
maxDate: u
|
|
1128
1128
|
}) => {
|
|
1129
|
-
const [h, k] = D(!1), [
|
|
1129
|
+
const [h, k] = D(!1), [g, N] = D(!1), j = se(null), b = se(null), T = _n[i], [z, _] = D(
|
|
1130
1130
|
null
|
|
1131
|
-
), [
|
|
1131
|
+
), [F, R] = D(!1), [C, H] = D(!1), [y, Z] = D(0), [oe, X] = D("day"), [B, L] = D(0), [v, S] = D({
|
|
1132
1132
|
position: "fixed",
|
|
1133
1133
|
zIndex: 9999
|
|
1134
|
-
}), [
|
|
1135
|
-
var
|
|
1134
|
+
}), [M, Q] = D("down"), J = se(null), f = se(null), I = P(() => {
|
|
1135
|
+
var Ft;
|
|
1136
1136
|
if (!J.current) return;
|
|
1137
1137
|
const $ = J.current.getBoundingClientRect(), be = window.innerWidth, we = Math.min(
|
|
1138
1138
|
Sn,
|
|
1139
1139
|
Math.max(0, be - qe * 2)
|
|
1140
|
-
), ze = a === "year-month-day" ? 392 : 304, We = ((
|
|
1140
|
+
), ze = a === "year-month-day" ? 392 : 304, We = ((Ft = f.current) == null ? void 0 : Ft.offsetHeight) || ze, Te = 6, Ge = window.innerHeight - $.bottom < We, kt = Ge ? Math.max(qe, $.top - We - Te) : $.bottom + Te, Sr = $.left + we > be - qe ? $.right - we : $.left, zr = Math.max(
|
|
1141
1141
|
qe,
|
|
1142
1142
|
be - we - qe
|
|
1143
1143
|
), Ar = Math.min(
|
|
@@ -1154,15 +1154,15 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1154
1154
|
}, [a]), A = me(() => Ut(t), [t]), E = me(() => {
|
|
1155
1155
|
const $ = /* @__PURE__ */ new Date();
|
|
1156
1156
|
return { year: $.getFullYear(), month: $.getMonth(), day: $.getDate() };
|
|
1157
|
-
}, []),
|
|
1157
|
+
}, []), ee = me(() => `${E.year}-${_e(E.month + 1)}-${_e(E.day)}`, [E]), te = me(
|
|
1158
1158
|
() => Ke(E.year),
|
|
1159
1159
|
[E.year]
|
|
1160
1160
|
), W = me(
|
|
1161
|
-
() =>
|
|
1162
|
-
[
|
|
1161
|
+
() => te - Pe * Tn,
|
|
1162
|
+
[te]
|
|
1163
1163
|
), Y = me(
|
|
1164
|
-
() =>
|
|
1165
|
-
[
|
|
1164
|
+
() => te + Pe * En,
|
|
1165
|
+
[te]
|
|
1166
1166
|
), q = me(() => m ? Math.min(
|
|
1167
1167
|
W,
|
|
1168
1168
|
Ke(Number(m.substring(0, 4)))
|
|
@@ -1170,30 +1170,30 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1170
1170
|
Y,
|
|
1171
1171
|
Ke(Number(u.substring(0, 4)))
|
|
1172
1172
|
) : Y, [Y, u]), [le, ie] = D((A == null ? void 0 : A.year) ?? E.year), [G, je] = D((A == null ? void 0 : A.month) ?? E.month);
|
|
1173
|
-
|
|
1173
|
+
re(() => {
|
|
1174
1174
|
A && (ie(A.year), je(A.month));
|
|
1175
1175
|
}, [A]);
|
|
1176
|
-
const Ne =
|
|
1176
|
+
const Ne = P(() => {
|
|
1177
1177
|
b.current && clearTimeout(b.current), N(!0), b.current = setTimeout(() => {
|
|
1178
1178
|
k(!1), N(!1);
|
|
1179
1179
|
}, 120);
|
|
1180
|
-
}, []), Se =
|
|
1180
|
+
}, []), Se = P(() => {
|
|
1181
1181
|
b.current && clearTimeout(b.current), k(!1), N(!1);
|
|
1182
1182
|
}, []);
|
|
1183
|
-
|
|
1183
|
+
re(() => {
|
|
1184
1184
|
if (h) {
|
|
1185
1185
|
X("day"), H(!1), A ? (ie(A.year), je(A.month)) : (ie(E.year), je(E.month));
|
|
1186
1186
|
const $ = Ke(
|
|
1187
1187
|
(A == null ? void 0 : A.year) ?? E.year
|
|
1188
1188
|
);
|
|
1189
|
-
|
|
1189
|
+
L($), Z($), I();
|
|
1190
1190
|
}
|
|
1191
|
-
}, [h]),
|
|
1191
|
+
}, [h]), re(() => {
|
|
1192
1192
|
if (h)
|
|
1193
1193
|
return I(), window.addEventListener("scroll", I, !0), window.addEventListener("resize", I), () => {
|
|
1194
1194
|
window.removeEventListener("scroll", I, !0), window.removeEventListener("resize", I);
|
|
1195
1195
|
};
|
|
1196
|
-
}, [h, I]),
|
|
1196
|
+
}, [h, I]), re(() => {
|
|
1197
1197
|
if (!h) return;
|
|
1198
1198
|
const $ = window.requestAnimationFrame(() => {
|
|
1199
1199
|
I();
|
|
@@ -1208,9 +1208,9 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1208
1208
|
return be.observe(f.current), () => {
|
|
1209
1209
|
window.cancelAnimationFrame($), be.disconnect();
|
|
1210
1210
|
};
|
|
1211
|
-
}, [h, I,
|
|
1211
|
+
}, [h, I, oe, C]), re(() => () => {
|
|
1212
1212
|
b.current && clearTimeout(b.current);
|
|
1213
|
-
}, []),
|
|
1213
|
+
}, []), re(() => {
|
|
1214
1214
|
if (!h) return;
|
|
1215
1215
|
const $ = (be) => {
|
|
1216
1216
|
var We;
|
|
@@ -1221,26 +1221,26 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1221
1221
|
};
|
|
1222
1222
|
return document.addEventListener("mousedown", $), () => document.removeEventListener("mousedown", $);
|
|
1223
1223
|
}, [h, Ne]);
|
|
1224
|
-
const U =
|
|
1224
|
+
const U = P(
|
|
1225
1225
|
($) => {
|
|
1226
1226
|
if (!m && !u) return !1;
|
|
1227
1227
|
const be = $.length > 7 ? $ : $ + "-01", we = m ? m.length === 7 ? m + "-01" : m : null, ze = u ? u.length === 7 ? u + "-31" : u : null;
|
|
1228
1228
|
return !!(we && be < we || ze && be > ze);
|
|
1229
1229
|
},
|
|
1230
1230
|
[m, u]
|
|
1231
|
-
), he =
|
|
1231
|
+
), he = P(
|
|
1232
1232
|
($, be) => {
|
|
1233
1233
|
const we = `${$}-${_e(be + 1)}`;
|
|
1234
1234
|
return !!(m && we < m.substring(0, 7) || u && we > u.substring(0, 7));
|
|
1235
1235
|
},
|
|
1236
1236
|
[m, u]
|
|
1237
|
-
), ne =
|
|
1237
|
+
), ne = P(
|
|
1238
1238
|
($) => !!(m && $ < Number(m.substring(0, 4)) || u && $ > Number(u.substring(0, 4))),
|
|
1239
1239
|
[m, u]
|
|
1240
|
-
), fe =
|
|
1241
|
-
_($),
|
|
1242
|
-
}, []), ve =
|
|
1243
|
-
_(null),
|
|
1240
|
+
), fe = P(($) => {
|
|
1241
|
+
_($), R(!0);
|
|
1242
|
+
}, []), ve = P(() => {
|
|
1243
|
+
_(null), R(!1);
|
|
1244
1244
|
}, []), ye = me(() => {
|
|
1245
1245
|
if (!m) return !0;
|
|
1246
1246
|
const $ = G === 0 ? 11 : G - 1, be = G === 0 ? le - 1 : le;
|
|
@@ -1248,59 +1248,59 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1248
1248
|
`${be}-${_e($ + 1)}`,
|
|
1249
1249
|
m.substring(0, 7)
|
|
1250
1250
|
) >= 0;
|
|
1251
|
-
}, [le, G, m, he]),
|
|
1251
|
+
}, [le, G, m, he]), O = me(() => {
|
|
1252
1252
|
if (!u) return !0;
|
|
1253
1253
|
const $ = G === 11 ? 0 : G + 1, be = G === 11 ? le + 1 : le;
|
|
1254
1254
|
return !he(be, $) || Vt(
|
|
1255
1255
|
`${be}-${_e($ + 1)}`,
|
|
1256
1256
|
u.substring(0, 7)
|
|
1257
1257
|
) <= 0;
|
|
1258
|
-
}, [le, G, u, he]), ce =
|
|
1259
|
-
|
|
1260
|
-
}, [G,
|
|
1261
|
-
|
|
1262
|
-
}, [G,
|
|
1258
|
+
}, [le, G, u, he]), ce = y > q, ue = y < ae, ge = B > q, w = B < ae, V = P(() => {
|
|
1259
|
+
F || (G === 0 ? (je(11), ie(($) => $ - 1)) : je(($) => $ - 1), fe("right"));
|
|
1260
|
+
}, [G, F, fe]), K = P(() => {
|
|
1261
|
+
F || (G === 11 ? (je(0), ie(($) => $ + 1)) : je(($) => $ + 1), fe("left"));
|
|
1262
|
+
}, [G, F, fe]), pe = P(() => {
|
|
1263
1263
|
ie(($) => $ - 1), fe("right");
|
|
1264
|
-
}, [fe]), de =
|
|
1264
|
+
}, [fe]), de = P(() => {
|
|
1265
1265
|
ie(($) => $ + 1), fe("left");
|
|
1266
|
-
}, [fe]), dt =
|
|
1266
|
+
}, [fe]), dt = P(() => {
|
|
1267
1267
|
Z(
|
|
1268
1268
|
($) => Math.max(q, $ - Pe)
|
|
1269
1269
|
);
|
|
1270
|
-
}, [q]), ut =
|
|
1270
|
+
}, [q]), ut = P(() => {
|
|
1271
1271
|
Z(
|
|
1272
1272
|
($) => Math.min(ae, $ + Pe)
|
|
1273
1273
|
);
|
|
1274
|
-
}, [ae]), wt =
|
|
1275
|
-
|
|
1274
|
+
}, [ae]), wt = P(() => {
|
|
1275
|
+
L(
|
|
1276
1276
|
($) => Math.max(q, $ - Pe)
|
|
1277
1277
|
);
|
|
1278
|
-
}, [q]), mt =
|
|
1279
|
-
|
|
1278
|
+
}, [q]), mt = P(() => {
|
|
1279
|
+
L(
|
|
1280
1280
|
($) => Math.min(ae, $ + Pe)
|
|
1281
1281
|
);
|
|
1282
|
-
}, [ae]),
|
|
1282
|
+
}, [ae]), Fe = P(
|
|
1283
1283
|
($) => {
|
|
1284
1284
|
U($) || (r($), Se());
|
|
1285
1285
|
},
|
|
1286
1286
|
[r, U, Se]
|
|
1287
|
-
), tt =
|
|
1287
|
+
), tt = P(
|
|
1288
1288
|
($, be) => {
|
|
1289
1289
|
const we = `${$}-${_e(be + 1)}`;
|
|
1290
1290
|
m && we < m.substring(0, 7) || u && we > u.substring(0, 7) || (r(we), Se());
|
|
1291
1291
|
},
|
|
1292
1292
|
[r, m, u, Se]
|
|
1293
|
-
), jt =
|
|
1293
|
+
), jt = P(
|
|
1294
1294
|
($) => {
|
|
1295
1295
|
ne($) || (ie($), Z(Ke($)), H(!1));
|
|
1296
1296
|
},
|
|
1297
1297
|
[ne]
|
|
1298
|
-
), Nt =
|
|
1298
|
+
), Nt = P(
|
|
1299
1299
|
($) => {
|
|
1300
|
-
ne($) || (ie($),
|
|
1300
|
+
ne($) || (ie($), L(Ke($)), X("month"));
|
|
1301
1301
|
},
|
|
1302
1302
|
[ne]
|
|
1303
|
-
), xt =
|
|
1303
|
+
), xt = P(($) => {
|
|
1304
1304
|
je($), X("day");
|
|
1305
1305
|
}, []), rt = me(() => An(t, a, d), [t, a, d]), Tr = me(() => {
|
|
1306
1306
|
const $ = Tt(le, G), be = zn(le, G), we = G === 0 ? Tt(le - 1, 11) : Tt(le, G - 1), ze = [];
|
|
@@ -1347,7 +1347,7 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1347
1347
|
className: p(
|
|
1348
1348
|
`flex w-full cursor-pointer items-center border border-[var(--lumen-color-border)] bg-[var(--lumen-color-surface)] outline-none transition-all ${Ee.control}`,
|
|
1349
1349
|
"hover:border-[var(--lumen-color-border-hover)] focus:border-[var(--lumen-color-primary)]",
|
|
1350
|
-
h && !
|
|
1350
|
+
h && !g && "border-[var(--lumen-color-primary)] ring-1 ring-[var(--lumen-color-primary)]/10",
|
|
1351
1351
|
T.trigger,
|
|
1352
1352
|
x && "cursor-not-allowed opacity-50"
|
|
1353
1353
|
),
|
|
@@ -1368,12 +1368,13 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1368
1368
|
"div",
|
|
1369
1369
|
{
|
|
1370
1370
|
ref: f,
|
|
1371
|
+
"data-ui": "date-picker-panel",
|
|
1371
1372
|
"data-date-picker-portal": !0,
|
|
1372
1373
|
className: "rounded-[12px] border border-[var(--lumen-color-border)] bg-[var(--lumen-color-surface)] shadow-xl",
|
|
1373
1374
|
style: {
|
|
1374
1375
|
...v,
|
|
1375
|
-
animation:
|
|
1376
|
-
transformOrigin:
|
|
1376
|
+
animation: g ? M === "up" ? "lumen-dropdown-out-up 0.12s ease-in forwards" : "lumen-dropdown-out 0.12s ease-in forwards" : M === "up" ? "lumen-dropdown-in-up 0.12s ease-out" : "lumen-dropdown-in 0.12s ease-out",
|
|
1377
|
+
transformOrigin: M === "up" ? "bottom" : "top"
|
|
1377
1378
|
},
|
|
1378
1379
|
children: a === "year-month-day" ? /* @__PURE__ */ e.jsx(
|
|
1379
1380
|
In,
|
|
@@ -1383,14 +1384,14 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1383
1384
|
viewMonth: G,
|
|
1384
1385
|
days: Tr,
|
|
1385
1386
|
value: t,
|
|
1386
|
-
todayStr:
|
|
1387
|
+
todayStr: ee,
|
|
1387
1388
|
todayDate: E,
|
|
1388
1389
|
slideDirection: z,
|
|
1389
|
-
dayView:
|
|
1390
|
+
dayView: oe,
|
|
1390
1391
|
dayYearPickerStart: B,
|
|
1391
1392
|
canGoPrevDayYearRange: ge,
|
|
1392
1393
|
canGoNextDayYearRange: w,
|
|
1393
|
-
selectDate:
|
|
1394
|
+
selectDate: Fe,
|
|
1394
1395
|
prevDayYearRange: wt,
|
|
1395
1396
|
nextDayYearRange: mt,
|
|
1396
1397
|
prevMonth: V,
|
|
@@ -1401,10 +1402,10 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1401
1402
|
onClear: () => {
|
|
1402
1403
|
r(""), Ne();
|
|
1403
1404
|
},
|
|
1404
|
-
onSelectToday: () =>
|
|
1405
|
+
onSelectToday: () => Fe(ee),
|
|
1405
1406
|
isDateDisabled: U,
|
|
1406
1407
|
canGoPrevMonth: ye,
|
|
1407
|
-
canGoNextMonth:
|
|
1408
|
+
canGoNextMonth: O,
|
|
1408
1409
|
setDayView: X,
|
|
1409
1410
|
selectYearInDayMode: Nt,
|
|
1410
1411
|
selectMonthInDayMode: xt,
|
|
@@ -1419,7 +1420,7 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1419
1420
|
tokens: T,
|
|
1420
1421
|
viewYear: le,
|
|
1421
1422
|
showYearPicker: C,
|
|
1422
|
-
yearPickerStart:
|
|
1423
|
+
yearPickerStart: y,
|
|
1423
1424
|
canGoPrevYearRange: ce,
|
|
1424
1425
|
canGoNextYearRange: ue,
|
|
1425
1426
|
selectedMonth: Er,
|
|
@@ -1464,23 +1465,23 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1464
1465
|
selectDate: u,
|
|
1465
1466
|
prevDayYearRange: h,
|
|
1466
1467
|
nextDayYearRange: k,
|
|
1467
|
-
prevMonth:
|
|
1468
|
+
prevMonth: g,
|
|
1468
1469
|
nextMonth: N,
|
|
1469
1470
|
onAnimationEnd: j,
|
|
1470
1471
|
showToday: b,
|
|
1471
1472
|
clearable: T,
|
|
1472
1473
|
onClear: z,
|
|
1473
1474
|
onSelectToday: _,
|
|
1474
|
-
isDateDisabled:
|
|
1475
|
-
canGoPrevMonth:
|
|
1475
|
+
isDateDisabled: F,
|
|
1476
|
+
canGoPrevMonth: R,
|
|
1476
1477
|
canGoNextMonth: C,
|
|
1477
1478
|
setDayView: H,
|
|
1478
|
-
selectYearInDayMode:
|
|
1479
|
+
selectYearInDayMode: y,
|
|
1479
1480
|
selectMonthInDayMode: Z,
|
|
1480
|
-
prevYear:
|
|
1481
|
+
prevYear: oe,
|
|
1481
1482
|
nextYear: X,
|
|
1482
1483
|
isYearDisabled: B,
|
|
1483
|
-
isMonthDisabled:
|
|
1484
|
+
isMonthDisabled: L
|
|
1484
1485
|
}) => /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
|
|
1485
1486
|
/* @__PURE__ */ e.jsx("div", { className: p(t.dropdown, "pb-0"), children: c === "year" ? (
|
|
1486
1487
|
/* ─── 年份选择器 ────────────────────────── */
|
|
@@ -1520,19 +1521,19 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1520
1521
|
] }),
|
|
1521
1522
|
/* @__PURE__ */ e.jsx("div", { className: "grid grid-cols-5 gap-1 text-center", children: Array.from({ length: 20 }, (v, S) => l + S).map(
|
|
1522
1523
|
(v) => {
|
|
1523
|
-
const S = B(v),
|
|
1524
|
+
const S = B(v), M = v === i.year, Q = v === r;
|
|
1524
1525
|
return /* @__PURE__ */ e.jsx(
|
|
1525
1526
|
"button",
|
|
1526
1527
|
{
|
|
1527
1528
|
type: "button",
|
|
1528
1529
|
disabled: S,
|
|
1529
|
-
onClick: () =>
|
|
1530
|
+
onClick: () => y(v),
|
|
1530
1531
|
className: p(
|
|
1531
1532
|
"mx-auto flex h-10 w-12 items-center justify-center rounded-full text-[13px] transition-all",
|
|
1532
1533
|
lt,
|
|
1533
1534
|
Q && "bg-[var(--lumen-color-primary)] font-medium text-[var(--lumen-color-on-primary)] shadow-sm",
|
|
1534
|
-
!Q &&
|
|
1535
|
-
!Q && !
|
|
1535
|
+
!Q && M && "font-semibold text-[var(--lumen-color-primary)]",
|
|
1536
|
+
!Q && !M && !S && "text-[var(--lumen-color-text-secondary)] hover:bg-[var(--lumen-color-primary-soft)]",
|
|
1536
1537
|
S && "cursor-not-allowed text-[var(--lumen-color-border-hover)]"
|
|
1537
1538
|
),
|
|
1538
1539
|
children: v
|
|
@@ -1550,7 +1551,7 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1550
1551
|
"button",
|
|
1551
1552
|
{
|
|
1552
1553
|
type: "button",
|
|
1553
|
-
onClick:
|
|
1554
|
+
onClick: oe,
|
|
1554
1555
|
className: Ce,
|
|
1555
1556
|
children: /* @__PURE__ */ e.jsx(Le, { size: 18 })
|
|
1556
1557
|
}
|
|
@@ -1581,7 +1582,7 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1581
1582
|
)
|
|
1582
1583
|
] }),
|
|
1583
1584
|
/* @__PURE__ */ e.jsx("div", { className: "grid grid-cols-4 gap-2", children: Mt.map((v, S) => {
|
|
1584
|
-
const
|
|
1585
|
+
const M = r === i.year && S === i.month, Q = r === i.year && S === n, J = L(r, S);
|
|
1585
1586
|
return /* @__PURE__ */ e.jsxs(
|
|
1586
1587
|
"button",
|
|
1587
1588
|
{
|
|
@@ -1592,13 +1593,13 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1592
1593
|
"relative mx-auto flex h-10 w-10 items-center justify-center rounded-full text-[13px] transition-all",
|
|
1593
1594
|
lt,
|
|
1594
1595
|
Q && "bg-[var(--lumen-color-primary)] font-medium text-[var(--lumen-color-on-primary)] shadow-sm",
|
|
1595
|
-
!Q &&
|
|
1596
|
-
!Q && !
|
|
1596
|
+
!Q && M && "font-semibold text-[var(--lumen-color-primary)]",
|
|
1597
|
+
!Q && !M && !J && "text-[var(--lumen-color-text-secondary)] hover:bg-[var(--lumen-color-primary-soft)] hover:text-[var(--lumen-color-primary)]",
|
|
1597
1598
|
J && "cursor-not-allowed text-[var(--lumen-color-border-hover)]"
|
|
1598
1599
|
),
|
|
1599
1600
|
children: [
|
|
1600
1601
|
v,
|
|
1601
|
-
|
|
1602
|
+
M && !Q && /* @__PURE__ */ e.jsx("span", { className: "absolute bottom-1 left-1/2 h-1 w-1 -translate-x-1/2 rounded-full bg-[var(--lumen-color-primary)]" })
|
|
1602
1603
|
]
|
|
1603
1604
|
},
|
|
1604
1605
|
S
|
|
@@ -1613,8 +1614,8 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1613
1614
|
"button",
|
|
1614
1615
|
{
|
|
1615
1616
|
type: "button",
|
|
1616
|
-
onClick:
|
|
1617
|
-
disabled: !
|
|
1617
|
+
onClick: g,
|
|
1618
|
+
disabled: !R,
|
|
1618
1619
|
className: Ce,
|
|
1619
1620
|
children: /* @__PURE__ */ e.jsx(Le, { size: 18 })
|
|
1620
1621
|
}
|
|
@@ -1674,7 +1675,7 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1674
1675
|
v
|
|
1675
1676
|
)) }),
|
|
1676
1677
|
/* @__PURE__ */ e.jsx("div", { className: "grid grid-cols-7 text-center", children: o.map((v, S) => {
|
|
1677
|
-
const
|
|
1678
|
+
const M = v.dateStr === s, Q = v.dateStr === a, J = v.current && F(v.dateStr);
|
|
1678
1679
|
return /* @__PURE__ */ e.jsxs(
|
|
1679
1680
|
"button",
|
|
1680
1681
|
{
|
|
@@ -1686,13 +1687,13 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1686
1687
|
t.cell,
|
|
1687
1688
|
!v.current && "text-[var(--lumen-color-border-hover)]",
|
|
1688
1689
|
J && "pointer-events-none text-[var(--lumen-color-border-hover)]",
|
|
1689
|
-
v.current && !
|
|
1690
|
-
|
|
1691
|
-
Q && !
|
|
1690
|
+
v.current && !M && !J && "text-[var(--lumen-color-text-secondary)] hover:bg-[var(--lumen-color-primary-soft)] hover:text-[var(--lumen-color-primary)]",
|
|
1691
|
+
M && "bg-[var(--lumen-color-primary)] text-[var(--lumen-color-on-primary)] font-medium shadow-sm",
|
|
1692
|
+
Q && !M && !J && "font-semibold text-[var(--lumen-color-primary)]"
|
|
1692
1693
|
),
|
|
1693
1694
|
children: [
|
|
1694
1695
|
v.day,
|
|
1695
|
-
Q && !
|
|
1696
|
+
Q && !M && /* @__PURE__ */ e.jsx("span", { className: "absolute bottom-0.5 left-1/2 h-1 w-1 -translate-x-1/2 rounded-full bg-[var(--lumen-color-primary)]" })
|
|
1696
1697
|
]
|
|
1697
1698
|
},
|
|
1698
1699
|
S
|
|
@@ -1745,14 +1746,14 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1745
1746
|
nextYear: u,
|
|
1746
1747
|
prevYearRange: h,
|
|
1747
1748
|
nextYearRange: k,
|
|
1748
|
-
setShowYearPicker:
|
|
1749
|
+
setShowYearPicker: g,
|
|
1749
1750
|
onAnimationEnd: N,
|
|
1750
1751
|
showToday: j,
|
|
1751
1752
|
clearable: b,
|
|
1752
1753
|
onClear: T,
|
|
1753
1754
|
onSelectToday: z,
|
|
1754
1755
|
isMonthDisabled: _,
|
|
1755
|
-
isYearDisabled:
|
|
1756
|
+
isYearDisabled: F
|
|
1756
1757
|
}) => /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
|
|
1757
1758
|
/* @__PURE__ */ e.jsx("div", { className: p(t.dropdown, "pb-0"), children: n ? (
|
|
1758
1759
|
// ─── 年份选择器 ──────────────────────────
|
|
@@ -1790,26 +1791,26 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1790
1791
|
}
|
|
1791
1792
|
)
|
|
1792
1793
|
] }),
|
|
1793
|
-
/* @__PURE__ */ e.jsx("div", { className: "grid grid-cols-5 gap-1 text-center", children: Array.from({ length: 20 }, (
|
|
1794
|
-
(
|
|
1795
|
-
const C =
|
|
1794
|
+
/* @__PURE__ */ e.jsx("div", { className: "grid grid-cols-5 gap-1 text-center", children: Array.from({ length: 20 }, (R, C) => o + C).map(
|
|
1795
|
+
(R) => {
|
|
1796
|
+
const C = F(R), H = R === x.year, y = R === r;
|
|
1796
1797
|
return /* @__PURE__ */ e.jsx(
|
|
1797
1798
|
"button",
|
|
1798
1799
|
{
|
|
1799
1800
|
type: "button",
|
|
1800
1801
|
disabled: C,
|
|
1801
|
-
onClick: () => d(
|
|
1802
|
+
onClick: () => d(R),
|
|
1802
1803
|
className: p(
|
|
1803
1804
|
"mx-auto flex h-10 w-12 items-center justify-center rounded-full text-[13px] transition-all",
|
|
1804
1805
|
lt,
|
|
1805
|
-
|
|
1806
|
-
!
|
|
1807
|
-
!
|
|
1806
|
+
y && "bg-[var(--lumen-color-primary)] font-medium text-[var(--lumen-color-on-primary)] shadow-sm",
|
|
1807
|
+
!y && H && "font-semibold text-[var(--lumen-color-primary)]",
|
|
1808
|
+
!y && !H && !C && "text-[var(--lumen-color-text-secondary)] hover:bg-[var(--lumen-color-primary-soft)]",
|
|
1808
1809
|
C && "cursor-not-allowed text-[var(--lumen-color-border-hover)]"
|
|
1809
1810
|
),
|
|
1810
|
-
children:
|
|
1811
|
+
children: R
|
|
1811
1812
|
},
|
|
1812
|
-
|
|
1813
|
+
R
|
|
1813
1814
|
);
|
|
1814
1815
|
}
|
|
1815
1816
|
) })
|
|
@@ -1831,7 +1832,7 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1831
1832
|
"button",
|
|
1832
1833
|
{
|
|
1833
1834
|
type: "button",
|
|
1834
|
-
onClick: () =>
|
|
1835
|
+
onClick: () => g(!0),
|
|
1835
1836
|
className: p(
|
|
1836
1837
|
t.header,
|
|
1837
1838
|
ft
|
|
@@ -1857,8 +1858,8 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1857
1858
|
{
|
|
1858
1859
|
onAnimationEnd: N,
|
|
1859
1860
|
style: c === "left" ? { animation: "calendarSlideLeft 0.2s ease-out" } : c === "right" ? { animation: "calendarSlideRight 0.2s ease-out" } : void 0,
|
|
1860
|
-
children: /* @__PURE__ */ e.jsx("div", { className: "grid grid-cols-4 gap-2", children: Mt.map((
|
|
1861
|
-
const H = (i == null ? void 0 : i.year) === r && (i == null ? void 0 : i.month) === C,
|
|
1861
|
+
children: /* @__PURE__ */ e.jsx("div", { className: "grid grid-cols-4 gap-2", children: Mt.map((R, C) => {
|
|
1862
|
+
const H = (i == null ? void 0 : i.year) === r && (i == null ? void 0 : i.month) === C, y = r === x.year && C === x.month, Z = _(r, C);
|
|
1862
1863
|
return /* @__PURE__ */ e.jsxs(
|
|
1863
1864
|
"button",
|
|
1864
1865
|
{
|
|
@@ -1869,13 +1870,13 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1869
1870
|
"relative mx-auto flex h-10 w-10 items-center justify-center rounded-full text-[13px] transition-all",
|
|
1870
1871
|
lt,
|
|
1871
1872
|
H && "bg-[var(--lumen-color-primary)] font-medium text-[var(--lumen-color-on-primary)] shadow-sm",
|
|
1872
|
-
!H &&
|
|
1873
|
-
!H && !
|
|
1873
|
+
!H && y && "font-semibold text-[var(--lumen-color-primary)]",
|
|
1874
|
+
!H && !y && !Z && "text-[var(--lumen-color-text-secondary)] hover:bg-[var(--lumen-color-primary-soft)] hover:text-[var(--lumen-color-primary)]",
|
|
1874
1875
|
Z && "cursor-not-allowed text-[var(--lumen-color-border-hover)]"
|
|
1875
1876
|
),
|
|
1876
1877
|
children: [
|
|
1877
|
-
|
|
1878
|
-
|
|
1878
|
+
R,
|
|
1879
|
+
y && !H && /* @__PURE__ */ e.jsx("span", { className: "absolute bottom-1 left-1/2 h-1 w-1 -translate-x-1/2 rounded-full bg-[var(--lumen-color-primary)]" })
|
|
1879
1880
|
]
|
|
1880
1881
|
},
|
|
1881
1882
|
C
|
|
@@ -1967,8 +1968,8 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
1967
1968
|
isSecondDisabled: d,
|
|
1968
1969
|
className: m
|
|
1969
1970
|
}) => {
|
|
1970
|
-
const u =
|
|
1971
|
-
return
|
|
1971
|
+
const u = se(null), h = me(() => Et(24), []), k = me(() => Et(60, x), [x]), g = me(() => Et(60), []);
|
|
1972
|
+
return re(() => {
|
|
1972
1973
|
const N = window.requestAnimationFrame(() => {
|
|
1973
1974
|
var j;
|
|
1974
1975
|
(j = u.current) == null || j.querySelectorAll("[data-time-selector-column]").forEach((b) => {
|
|
@@ -2035,7 +2036,7 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
2035
2036
|
St,
|
|
2036
2037
|
{
|
|
2037
2038
|
title: "秒",
|
|
2038
|
-
values:
|
|
2039
|
+
values: g,
|
|
2039
2040
|
selected: n,
|
|
2040
2041
|
onSelect: a ?? (() => {
|
|
2041
2042
|
}),
|
|
@@ -2116,7 +2117,7 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
2116
2117
|
});
|
|
2117
2118
|
}
|
|
2118
2119
|
return x;
|
|
2119
|
-
}, qt = 320,
|
|
2120
|
+
}, qt = 320, On = 374, At = 6, Fn = 120, Kt = "flex h-8 w-8 items-center justify-center rounded-[6px] text-[var(--lumen-color-text-muted)] transition-colors hover:bg-[var(--lumen-color-surface-muted)] hover:text-[var(--lumen-color-text-secondary)] focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--lumen-color-primary)]/20", Xt = "rounded-[6px] px-2 py-1 text-[13px] transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--lumen-color-primary)]/20", Wn = {
|
|
2120
2121
|
sm: "h-[var(--lumen-control-height-sm)] px-2.5 text-[13px]",
|
|
2121
2122
|
md: "h-[var(--lumen-control-height-md)] px-3 text-[14px]",
|
|
2122
2123
|
lg: "h-[var(--lumen-control-height-lg)] px-3.5 text-[15px]"
|
|
@@ -2135,16 +2136,16 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
2135
2136
|
size: m = "md"
|
|
2136
2137
|
}) => {
|
|
2137
2138
|
var ye;
|
|
2138
|
-
const u = me(() => ht(t), [t]), h = me(() => /* @__PURE__ */ new Date(), []), k = (u == null ? void 0 : u.date) ?? zt(h),
|
|
2139
|
+
const u = me(() => ht(t), [t]), h = me(() => /* @__PURE__ */ new Date(), []), k = (u == null ? void 0 : u.date) ?? zt(h), g = Number(k.slice(0, 4)), N = Number(k.slice(5, 7)) - 1, [j, b] = D(!1), [T, z] = D(g), [_, F] = D(N), [R, C] = D(k), [H, y] = D(
|
|
2139
2140
|
(u == null ? void 0 : u.hour) ?? (d ? ke(h.getHours()) : "09")
|
|
2140
|
-
), [Z,
|
|
2141
|
+
), [Z, oe] = D(
|
|
2141
2142
|
(u == null ? void 0 : u.minute) ?? (d ? ke(h.getMinutes()) : "00")
|
|
2142
2143
|
), [X, B] = D(
|
|
2143
2144
|
(u == null ? void 0 : u.second) ?? (d ? ke(h.getSeconds()) : "00")
|
|
2144
|
-
), [
|
|
2145
|
+
), [L, v] = D("down"), [S, M] = D(!1), Q = se(null), J = se(null), f = se(null), I = se(null), A = se(t), [E, ee] = D({
|
|
2145
2146
|
position: "fixed",
|
|
2146
2147
|
zIndex: 9999
|
|
2147
|
-
}),
|
|
2148
|
+
}), te = me(
|
|
2148
2149
|
() => Ln(T, _),
|
|
2149
2150
|
[_, T]
|
|
2150
2151
|
), W = x === "minute" ? 148 : 210, Y = qt + W, q = c ?? ((ye = ht(l ?? "")) == null ? void 0 : ye.date) ?? null, ae = Pn(l), le = u ? Dn(
|
|
@@ -2153,29 +2154,29 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
2153
2154
|
u.minute,
|
|
2154
2155
|
u.second,
|
|
2155
2156
|
x
|
|
2156
|
-
) : "", ie =
|
|
2157
|
-
const
|
|
2158
|
-
C(ue),
|
|
2159
|
-
(
|
|
2160
|
-
),
|
|
2161
|
-
(
|
|
2157
|
+
) : "", ie = P(() => {
|
|
2158
|
+
const O = ht(t), ce = d ? /* @__PURE__ */ new Date() : h, ue = (O == null ? void 0 : O.date) ?? zt(ce);
|
|
2159
|
+
C(ue), y(
|
|
2160
|
+
(O == null ? void 0 : O.hour) ?? (d ? ke(ce.getHours()) : "09")
|
|
2161
|
+
), oe(
|
|
2162
|
+
(O == null ? void 0 : O.minute) ?? (d ? ke(ce.getMinutes()) : "00")
|
|
2162
2163
|
), B(
|
|
2163
|
-
(
|
|
2164
|
-
), z(Number(ue.slice(0, 4))),
|
|
2164
|
+
(O == null ? void 0 : O.second) ?? (d ? ke(ce.getSeconds()) : "00")
|
|
2165
|
+
), z(Number(ue.slice(0, 4))), F(Number(ue.slice(5, 7)) - 1), A.current = t;
|
|
2165
2166
|
}, [d, h, t]);
|
|
2166
|
-
|
|
2167
|
+
re(() => {
|
|
2167
2168
|
j && A.current !== t && ie();
|
|
2168
2169
|
}, [j, ie, t]);
|
|
2169
|
-
const G =
|
|
2170
|
+
const G = P(() => {
|
|
2170
2171
|
var pe, de;
|
|
2171
|
-
const
|
|
2172
|
-
if (!
|
|
2172
|
+
const O = (pe = J.current) == null ? void 0 : pe.getBoundingClientRect();
|
|
2173
|
+
if (!O)
|
|
2173
2174
|
return;
|
|
2174
|
-
const ce = ((de = f.current) == null ? void 0 : de.offsetHeight) ||
|
|
2175
|
-
Math.max(8,
|
|
2175
|
+
const ce = ((de = f.current) == null ? void 0 : de.offsetHeight) || On, ue = Math.min(Y, Math.max(0, window.innerWidth - 16)), w = window.innerHeight - O.bottom < ce + At, V = w ? Math.max(8, O.top - ce - At) : O.bottom + At, K = Math.min(
|
|
2176
|
+
Math.max(8, O.left),
|
|
2176
2177
|
Math.max(8, window.innerWidth - ue - 8)
|
|
2177
2178
|
);
|
|
2178
|
-
v(w ? "up" : "down"),
|
|
2179
|
+
v(w ? "up" : "down"), ee({
|
|
2179
2180
|
position: "fixed",
|
|
2180
2181
|
left: K,
|
|
2181
2182
|
top: V,
|
|
@@ -2184,69 +2185,69 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
2184
2185
|
zIndex: 9999
|
|
2185
2186
|
});
|
|
2186
2187
|
}, [Y]), je = () => {
|
|
2187
|
-
I.current && clearTimeout(I.current),
|
|
2188
|
-
}, Ne =
|
|
2189
|
-
I.current && clearTimeout(I.current),
|
|
2190
|
-
b(!1),
|
|
2191
|
-
},
|
|
2192
|
-
}, []), Se =
|
|
2193
|
-
I.current && clearTimeout(I.current), b(!1),
|
|
2188
|
+
I.current && clearTimeout(I.current), M(!1), ie(), G(), b(!0);
|
|
2189
|
+
}, Ne = P(() => {
|
|
2190
|
+
I.current && clearTimeout(I.current), M(!0), I.current = setTimeout(() => {
|
|
2191
|
+
b(!1), M(!1);
|
|
2192
|
+
}, Fn);
|
|
2193
|
+
}, []), Se = P(() => {
|
|
2194
|
+
I.current && clearTimeout(I.current), b(!1), M(!1);
|
|
2194
2195
|
}, []);
|
|
2195
|
-
|
|
2196
|
+
re(() => {
|
|
2196
2197
|
if (j)
|
|
2197
2198
|
return G(), window.addEventListener("resize", G), window.addEventListener("scroll", G, !0), () => {
|
|
2198
2199
|
window.removeEventListener("resize", G), window.removeEventListener("scroll", G, !0);
|
|
2199
2200
|
};
|
|
2200
|
-
}, [j, G]),
|
|
2201
|
+
}, [j, G]), re(() => {
|
|
2201
2202
|
if (!j)
|
|
2202
2203
|
return;
|
|
2203
|
-
const
|
|
2204
|
+
const O = window.requestAnimationFrame(G);
|
|
2204
2205
|
if (!f.current || typeof ResizeObserver > "u")
|
|
2205
|
-
return () => window.cancelAnimationFrame(
|
|
2206
|
+
return () => window.cancelAnimationFrame(O);
|
|
2206
2207
|
const ce = new ResizeObserver(G);
|
|
2207
2208
|
return ce.observe(f.current), () => {
|
|
2208
|
-
window.cancelAnimationFrame(
|
|
2209
|
+
window.cancelAnimationFrame(O), ce.disconnect();
|
|
2209
2210
|
};
|
|
2210
|
-
}, [j, x, G]),
|
|
2211
|
+
}, [j, x, G]), re(() => () => {
|
|
2211
2212
|
I.current && clearTimeout(I.current);
|
|
2212
|
-
}, []),
|
|
2213
|
+
}, []), re(() => {
|
|
2213
2214
|
if (!j)
|
|
2214
2215
|
return;
|
|
2215
|
-
const
|
|
2216
|
+
const O = (ce) => {
|
|
2216
2217
|
var ge, w;
|
|
2217
2218
|
const ue = ce.target;
|
|
2218
2219
|
(ge = Q.current) != null && ge.contains(ue) || (w = f.current) != null && w.contains(ue) || Ne();
|
|
2219
2220
|
};
|
|
2220
|
-
return document.addEventListener("mousedown",
|
|
2221
|
+
return document.addEventListener("mousedown", O), () => document.removeEventListener("mousedown", O);
|
|
2221
2222
|
}, [Ne, j]);
|
|
2222
|
-
const U = (
|
|
2223
|
-
const ce = new Date(T, _ +
|
|
2224
|
-
z(ce.getFullYear()),
|
|
2225
|
-
}, he = (
|
|
2223
|
+
const U = (O) => {
|
|
2224
|
+
const ce = new Date(T, _ + O, 1);
|
|
2225
|
+
z(ce.getFullYear()), F(ce.getMonth());
|
|
2226
|
+
}, he = (O) => q != null && O < q, ne = (O, ce, ue) => {
|
|
2226
2227
|
if (ae == null)
|
|
2227
2228
|
return !1;
|
|
2228
|
-
const ge = Rt(
|
|
2229
|
+
const ge = Rt(O, ce, ue, "00");
|
|
2229
2230
|
return ge != null && ge < ae;
|
|
2230
2231
|
}, fe = () => {
|
|
2231
|
-
const
|
|
2232
|
-
|
|
2232
|
+
const O = Rt(
|
|
2233
|
+
R,
|
|
2233
2234
|
H,
|
|
2234
2235
|
Z,
|
|
2235
2236
|
x === "minute" ? "00" : X
|
|
2236
2237
|
);
|
|
2237
|
-
ae != null &&
|
|
2238
|
+
ae != null && O != null && O < ae || (r(
|
|
2238
2239
|
vr(
|
|
2239
|
-
|
|
2240
|
+
R,
|
|
2240
2241
|
H,
|
|
2241
2242
|
Z,
|
|
2242
2243
|
x === "minute" ? "00" : X
|
|
2243
2244
|
)
|
|
2244
2245
|
), Se());
|
|
2245
2246
|
}, ve = () => {
|
|
2246
|
-
const
|
|
2247
|
-
C(zt(
|
|
2248
|
-
const ce = ke(
|
|
2249
|
-
|
|
2247
|
+
const O = /* @__PURE__ */ new Date();
|
|
2248
|
+
C(zt(O));
|
|
2249
|
+
const ce = ke(O.getHours()), ue = ke(O.getMinutes()), ge = ke(O.getSeconds());
|
|
2250
|
+
y(ce), oe(ue), B(ge), z(O.getFullYear()), F(O.getMonth());
|
|
2250
2251
|
};
|
|
2251
2252
|
return /* @__PURE__ */ e.jsxs("div", { ref: Q, className: p("relative", s), children: [
|
|
2252
2253
|
/* @__PURE__ */ e.jsx(
|
|
@@ -2255,7 +2256,7 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
2255
2256
|
"aria-label": `${n}值`,
|
|
2256
2257
|
className: "sr-only",
|
|
2257
2258
|
value: t,
|
|
2258
|
-
onChange: (
|
|
2259
|
+
onChange: (O) => r(O.target.value),
|
|
2259
2260
|
disabled: o,
|
|
2260
2261
|
tabIndex: -1
|
|
2261
2262
|
}
|
|
@@ -2301,8 +2302,8 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
2301
2302
|
className: "overflow-x-auto overflow-y-auto rounded-[8px] border border-[var(--lumen-color-border)] bg-[var(--lumen-color-surface)] shadow-[0_18px_46px_var(--lumen-color-shadow)]",
|
|
2302
2303
|
style: {
|
|
2303
2304
|
...E,
|
|
2304
|
-
animation: S ?
|
|
2305
|
-
transformOrigin:
|
|
2305
|
+
animation: S ? L === "up" ? "lumen-dropdown-out-up 0.12s ease-in forwards" : "lumen-dropdown-out 0.12s ease-in forwards" : L === "up" ? "lumen-dropdown-in-up 0.12s ease-out" : "lumen-dropdown-in 0.12s ease-out",
|
|
2306
|
+
transformOrigin: L === "up" ? "bottom" : "top"
|
|
2306
2307
|
},
|
|
2307
2308
|
children: [
|
|
2308
2309
|
/* @__PURE__ */ e.jsxs(
|
|
@@ -2339,27 +2340,27 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
2339
2340
|
}
|
|
2340
2341
|
)
|
|
2341
2342
|
] }),
|
|
2342
|
-
/* @__PURE__ */ e.jsx("div", { className: "grid grid-cols-7 text-center text-[12px] font-medium text-[var(--lumen-color-text-placeholder)]", children: Mn.map((
|
|
2343
|
-
/* @__PURE__ */ e.jsx("div", { className: "grid grid-cols-7 text-center", children:
|
|
2344
|
-
const ce =
|
|
2343
|
+
/* @__PURE__ */ e.jsx("div", { className: "grid grid-cols-7 text-center text-[12px] font-medium text-[var(--lumen-color-text-placeholder)]", children: Mn.map((O) => /* @__PURE__ */ e.jsx("div", { className: "py-1.5", children: O }, O)) }),
|
|
2344
|
+
/* @__PURE__ */ e.jsx("div", { className: "grid grid-cols-7 text-center", children: te.map((O) => {
|
|
2345
|
+
const ce = O.date === R, ue = he(O.date);
|
|
2345
2346
|
return /* @__PURE__ */ e.jsx(
|
|
2346
2347
|
"button",
|
|
2347
2348
|
{
|
|
2348
2349
|
type: "button",
|
|
2349
|
-
"aria-label": `选择日期 ${
|
|
2350
|
+
"aria-label": `选择日期 ${O.date}`,
|
|
2350
2351
|
disabled: ue,
|
|
2351
|
-
onClick: () => C(
|
|
2352
|
+
onClick: () => C(O.date),
|
|
2352
2353
|
className: p(
|
|
2353
2354
|
"mx-auto my-0.5 flex h-8 w-8 items-center justify-center rounded-full text-[13px] transition-all",
|
|
2354
2355
|
"focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--lumen-color-primary)]/20",
|
|
2355
|
-
!
|
|
2356
|
+
!O.current && "text-[var(--lumen-color-border-hover)]",
|
|
2356
2357
|
ue && "cursor-not-allowed text-[var(--lumen-color-border-hover)] hover:bg-transparent hover:text-[var(--lumen-color-border-hover)]",
|
|
2357
|
-
|
|
2358
|
+
O.current && !ce && !ue && "text-[var(--lumen-color-text-secondary)] hover:bg-[var(--lumen-color-primary-soft)] hover:text-[var(--lumen-color-primary)]",
|
|
2358
2359
|
ce && "bg-[var(--lumen-color-primary)] font-medium text-[var(--lumen-color-on-primary)] shadow-sm"
|
|
2359
2360
|
),
|
|
2360
|
-
children:
|
|
2361
|
+
children: O.day
|
|
2361
2362
|
},
|
|
2362
|
-
|
|
2363
|
+
O.date
|
|
2363
2364
|
);
|
|
2364
2365
|
}) })
|
|
2365
2366
|
] }),
|
|
@@ -2369,13 +2370,13 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
2369
2370
|
hour: H,
|
|
2370
2371
|
minute: Z,
|
|
2371
2372
|
second: X,
|
|
2372
|
-
onHourChange:
|
|
2373
|
-
onMinuteChange:
|
|
2373
|
+
onHourChange: y,
|
|
2374
|
+
onMinuteChange: oe,
|
|
2374
2375
|
onSecondChange: B,
|
|
2375
2376
|
precision: x,
|
|
2376
2377
|
minuteStep: a,
|
|
2377
|
-
isHourDisabled: (
|
|
2378
|
-
isMinuteDisabled: (
|
|
2378
|
+
isHourDisabled: (O) => ne(R, O, "59"),
|
|
2379
|
+
isMinuteDisabled: (O) => ne(R, H, O),
|
|
2379
2380
|
className: p(
|
|
2380
2381
|
"border-l border-[var(--lumen-color-surface-muted)]"
|
|
2381
2382
|
)
|
|
@@ -2412,7 +2413,7 @@ const jn = "fixed inset-0 z-[100] flex items-center justify-center overflow-y-au
|
|
|
2412
2413
|
children: "此刻"
|
|
2413
2414
|
}
|
|
2414
2415
|
),
|
|
2415
|
-
/* @__PURE__ */ e.jsx(
|
|
2416
|
+
/* @__PURE__ */ e.jsx(Oe, { type: "button", size: "sm", onClick: fe, children: "确定" })
|
|
2416
2417
|
] })
|
|
2417
2418
|
] })
|
|
2418
2419
|
]
|
|
@@ -2441,23 +2442,23 @@ function Is({
|
|
|
2441
2442
|
onSelectedRowKeysChange: u,
|
|
2442
2443
|
isRowSelectable: h,
|
|
2443
2444
|
rowClassName: k,
|
|
2444
|
-
className:
|
|
2445
|
+
className: g,
|
|
2445
2446
|
tableClassName: N
|
|
2446
2447
|
}) {
|
|
2447
|
-
const j = !!(m && u), b = new Set(m ?? []), z = r.filter((v) => (h == null ? void 0 : h(v)) ?? !0).map(n), _ = z.filter((v) => b.has(v)).length,
|
|
2448
|
+
const j = !!(m && u), b = new Set(m ?? []), z = r.filter((v) => (h == null ? void 0 : h(v)) ?? !0).map(n), _ = z.filter((v) => b.has(v)).length, F = z.length > 0 && _ === z.length, R = _ > 0 && !F, C = s === "compact" ? "px-3 py-2 mobile:px-2.5" : "px-4 py-3 mobile:px-3 mobile:py-2.5", H = s === "compact" ? "text-[13px]" : "text-[14px]", y = s === "compact" ? "text-[13px]" : "text-[14px]", Z = (v) => {
|
|
2448
2449
|
const S = new Set(b);
|
|
2449
|
-
z.forEach((
|
|
2450
|
-
v ? S.add(
|
|
2450
|
+
z.forEach((M) => {
|
|
2451
|
+
v ? S.add(M) : S.delete(M);
|
|
2451
2452
|
}), u == null || u(Array.from(S));
|
|
2452
|
-
},
|
|
2453
|
-
const
|
|
2454
|
-
S ?
|
|
2453
|
+
}, oe = (v, S) => {
|
|
2454
|
+
const M = new Set(b);
|
|
2455
|
+
S ? M.add(v) : M.delete(v), u == null || u(Array.from(M));
|
|
2455
2456
|
}, X = (v) => {
|
|
2456
2457
|
!v.sortable || !d || d({
|
|
2457
2458
|
key: v.key,
|
|
2458
2459
|
direction: (l == null ? void 0 : l.key) === v.key && l.direction === "asc" ? "desc" : "asc"
|
|
2459
2460
|
});
|
|
2460
|
-
}, B = (v) => (l == null ? void 0 : l.key) !== v.key ? /* @__PURE__ */ e.jsx(Pr, { "aria-hidden": "true", size: 14 }) : l.direction === "asc" ? /* @__PURE__ */ e.jsx(Lr, { "aria-hidden": "true", size: 14 }) : /* @__PURE__ */ e.jsx(
|
|
2461
|
+
}, B = (v) => (l == null ? void 0 : l.key) !== v.key ? /* @__PURE__ */ e.jsx(Pr, { "aria-hidden": "true", size: 14 }) : l.direction === "asc" ? /* @__PURE__ */ e.jsx(Lr, { "aria-hidden": "true", size: 14 }) : /* @__PURE__ */ e.jsx(Or, { "aria-hidden": "true", size: 14 }), L = t.length + (j ? 1 : 0);
|
|
2461
2462
|
return /* @__PURE__ */ e.jsx(
|
|
2462
2463
|
"div",
|
|
2463
2464
|
{
|
|
@@ -2467,17 +2468,17 @@ function Is({
|
|
|
2467
2468
|
className: p(
|
|
2468
2469
|
"min-w-0 overflow-hidden bg-[var(--lumen-color-surface)]",
|
|
2469
2470
|
Hn[a],
|
|
2470
|
-
|
|
2471
|
+
g
|
|
2471
2472
|
),
|
|
2472
2473
|
children: /* @__PURE__ */ e.jsx("div", { className: "max-w-full overflow-x-auto", children: /* @__PURE__ */ e.jsxs("table", { className: p("w-full border-collapse text-left", N), children: [
|
|
2473
2474
|
o ? /* @__PURE__ */ e.jsx("caption", { className: "sr-only", children: o }) : null,
|
|
2474
|
-
/* @__PURE__ */ e.jsx("thead", { className: "bg-[var(--lumen-color-surface-subtle)]", children: /* @__PURE__ */ e.jsxs("tr", { className: "border-b border-[var(--lumen-color-
|
|
2475
|
+
/* @__PURE__ */ e.jsx("thead", { className: "bg-[var(--lumen-color-surface-subtle)]", children: /* @__PURE__ */ e.jsxs("tr", { className: "border-b border-[var(--lumen-color-divider)]", children: [
|
|
2475
2476
|
j ? /* @__PURE__ */ e.jsx("th", { scope: "col", className: p("w-12", C), children: /* @__PURE__ */ e.jsx(
|
|
2476
2477
|
bt,
|
|
2477
2478
|
{
|
|
2478
2479
|
"aria-label": "选择当前页全部行",
|
|
2479
|
-
checked:
|
|
2480
|
-
indeterminate:
|
|
2480
|
+
checked: F,
|
|
2481
|
+
indeterminate: R,
|
|
2481
2482
|
disabled: i || z.length === 0,
|
|
2482
2483
|
onChange: Z
|
|
2483
2484
|
}
|
|
@@ -2492,7 +2493,7 @@ function Is({
|
|
|
2492
2493
|
className: p(
|
|
2493
2494
|
C,
|
|
2494
2495
|
"whitespace-nowrap font-normal leading-5 text-[var(--lumen-color-text-secondary)]",
|
|
2495
|
-
|
|
2496
|
+
y,
|
|
2496
2497
|
v.align === "center" && "text-center",
|
|
2497
2498
|
v.align === "right" && "text-right",
|
|
2498
2499
|
v.headerClassName
|
|
@@ -2529,20 +2530,20 @@ function Is({
|
|
|
2529
2530
|
className: "border-b border-[var(--lumen-color-surface-muted)] last:border-b-0",
|
|
2530
2531
|
children: [
|
|
2531
2532
|
j ? /* @__PURE__ */ e.jsx("td", { className: C }) : null,
|
|
2532
|
-
t.map((
|
|
2533
|
+
t.map((M, Q) => /* @__PURE__ */ e.jsx("td", { className: C, children: /* @__PURE__ */ e.jsx(
|
|
2533
2534
|
"span",
|
|
2534
2535
|
{
|
|
2535
2536
|
className: "block h-3 animate-pulse rounded-[4px] bg-[var(--lumen-color-surface-muted)]",
|
|
2536
2537
|
style: { width: Zt[Q % Zt.length] }
|
|
2537
2538
|
}
|
|
2538
|
-
) },
|
|
2539
|
+
) }, M.key))
|
|
2539
2540
|
]
|
|
2540
2541
|
},
|
|
2541
2542
|
`loading-${S}`
|
|
2542
2543
|
)) : r.length === 0 ? /* @__PURE__ */ e.jsx("tr", { children: /* @__PURE__ */ e.jsx(
|
|
2543
2544
|
"td",
|
|
2544
2545
|
{
|
|
2545
|
-
colSpan:
|
|
2546
|
+
colSpan: L,
|
|
2546
2547
|
className: p(
|
|
2547
2548
|
"px-4 py-14 text-center text-[var(--lumen-color-text-placeholder)]",
|
|
2548
2549
|
H
|
|
@@ -2550,11 +2551,11 @@ function Is({
|
|
|
2550
2551
|
children: c
|
|
2551
2552
|
}
|
|
2552
2553
|
) }) : r.map((v, S) => {
|
|
2553
|
-
const
|
|
2554
|
+
const M = n(v), Q = (h == null ? void 0 : h(v)) ?? !0, J = typeof k == "function" ? k(v, S) : k;
|
|
2554
2555
|
return /* @__PURE__ */ e.jsxs(
|
|
2555
2556
|
"tr",
|
|
2556
2557
|
{
|
|
2557
|
-
"data-selected": b.has(
|
|
2558
|
+
"data-selected": b.has(M) || void 0,
|
|
2558
2559
|
className: p(
|
|
2559
2560
|
"border-b border-[var(--lumen-color-surface-muted)] transition-colors last:border-b-0 hover:bg-[var(--lumen-color-surface-hover)] data-[selected=true]:bg-[var(--lumen-color-info-soft)]",
|
|
2560
2561
|
J
|
|
@@ -2564,9 +2565,9 @@ function Is({
|
|
|
2564
2565
|
bt,
|
|
2565
2566
|
{
|
|
2566
2567
|
"aria-label": `选择第 ${S + 1} 行`,
|
|
2567
|
-
checked: b.has(
|
|
2568
|
+
checked: b.has(M),
|
|
2568
2569
|
disabled: !Q,
|
|
2569
|
-
onChange: (f) =>
|
|
2570
|
+
onChange: (f) => oe(M, f)
|
|
2570
2571
|
}
|
|
2571
2572
|
) }) : null,
|
|
2572
2573
|
t.map((f) => /* @__PURE__ */ e.jsx(
|
|
@@ -2586,7 +2587,7 @@ function Is({
|
|
|
2586
2587
|
))
|
|
2587
2588
|
]
|
|
2588
2589
|
},
|
|
2589
|
-
|
|
2590
|
+
M
|
|
2590
2591
|
);
|
|
2591
2592
|
}) })
|
|
2592
2593
|
] }) })
|
|
@@ -2613,7 +2614,7 @@ const Bn = xe.forwardRef(
|
|
|
2613
2614
|
"aria-orientation": "vertical",
|
|
2614
2615
|
"data-ui": "divider",
|
|
2615
2616
|
className: p(
|
|
2616
|
-
"mx-2 inline-block min-h-4 self-stretch border-l border-[var(--lumen-color-
|
|
2617
|
+
"mx-2 inline-block min-h-4 self-stretch border-l border-[var(--lumen-color-divider)] align-middle",
|
|
2617
2618
|
c,
|
|
2618
2619
|
s
|
|
2619
2620
|
)
|
|
@@ -2632,7 +2633,7 @@ const Bn = xe.forwardRef(
|
|
|
2632
2633
|
"span",
|
|
2633
2634
|
{
|
|
2634
2635
|
className: p(
|
|
2635
|
-
"border-t border-[var(--lumen-color-
|
|
2636
|
+
"border-t border-[var(--lumen-color-divider)]",
|
|
2636
2637
|
c,
|
|
2637
2638
|
"flex-1"
|
|
2638
2639
|
)
|
|
@@ -2643,7 +2644,7 @@ const Bn = xe.forwardRef(
|
|
|
2643
2644
|
"span",
|
|
2644
2645
|
{
|
|
2645
2646
|
className: p(
|
|
2646
|
-
"border-t border-[var(--lumen-color-
|
|
2647
|
+
"border-t border-[var(--lumen-color-divider)]",
|
|
2647
2648
|
c,
|
|
2648
2649
|
"flex-1"
|
|
2649
2650
|
)
|
|
@@ -2660,7 +2661,7 @@ const Bn = xe.forwardRef(
|
|
|
2660
2661
|
"aria-orientation": "horizontal",
|
|
2661
2662
|
"data-ui": "divider",
|
|
2662
2663
|
className: p(
|
|
2663
|
-
"my-4 w-full border-t border-[var(--lumen-color-
|
|
2664
|
+
"my-4 w-full border-t border-[var(--lumen-color-divider)]",
|
|
2664
2665
|
c,
|
|
2665
2666
|
s
|
|
2666
2667
|
)
|
|
@@ -2685,21 +2686,21 @@ const Yn = "fixed inset-0 z-[100] flex items-stretch overflow-hidden bg-[var(--l
|
|
|
2685
2686
|
overlayDataAttributes: d,
|
|
2686
2687
|
panelDataAttributes: m
|
|
2687
2688
|
}) => {
|
|
2688
|
-
const [u, h] = D(t), [k,
|
|
2689
|
-
|
|
2690
|
-
t && (N.current = !1, h(!0),
|
|
2689
|
+
const [u, h] = D(t), [k, g] = D(o), N = se(!1);
|
|
2690
|
+
re(() => {
|
|
2691
|
+
t && (N.current = !1, h(!0), g(o));
|
|
2691
2692
|
}, [o, t]);
|
|
2692
|
-
const j =
|
|
2693
|
-
N.current || (N.current = !0, h(!1),
|
|
2693
|
+
const j = P(() => {
|
|
2694
|
+
N.current || (N.current = !0, h(!1), g(null), n == null || n());
|
|
2694
2695
|
}, [n]);
|
|
2695
|
-
|
|
2696
|
+
re(() => {
|
|
2696
2697
|
if (!u || t) return;
|
|
2697
|
-
const
|
|
2698
|
-
return () => window.clearTimeout(
|
|
2698
|
+
const F = window.setTimeout(j, 310);
|
|
2699
|
+
return () => window.clearTimeout(F);
|
|
2699
2700
|
}, [j, u, t]);
|
|
2700
|
-
const b =
|
|
2701
|
-
(
|
|
2702
|
-
|
|
2701
|
+
const b = P(
|
|
2702
|
+
(F) => {
|
|
2703
|
+
F.target !== F.currentTarget || t || j();
|
|
2703
2704
|
},
|
|
2704
2705
|
[j, t]
|
|
2705
2706
|
);
|
|
@@ -2723,7 +2724,7 @@ const Yn = "fixed inset-0 z-[100] flex items-stretch overflow-hidden bg-[var(--l
|
|
|
2723
2724
|
"data-drawer-state": _,
|
|
2724
2725
|
"data-lumen-motion": !0,
|
|
2725
2726
|
className: `lumen-drawer-panel h-full max-w-full overflow-y-auto ${x}`.trim(),
|
|
2726
|
-
onClick: (
|
|
2727
|
+
onClick: (F) => F.stopPropagation(),
|
|
2727
2728
|
onAnimationEnd: b,
|
|
2728
2729
|
...Jt(m),
|
|
2729
2730
|
children: z
|
|
@@ -2754,99 +2755,99 @@ const Yn = "fixed inset-0 z-[100] flex items-stretch overflow-hidden bg-[var(--l
|
|
|
2754
2755
|
position: "fixed",
|
|
2755
2756
|
right: "auto",
|
|
2756
2757
|
top: -9999
|
|
2757
|
-
}),
|
|
2758
|
-
|
|
2759
|
-
}, []),
|
|
2758
|
+
}), g = se(null), N = se(null), j = se(null), b = se(null), T = se(null), z = l !== "closed", _ = l === "opening" || l === "open", F = P(() => {
|
|
2759
|
+
g.current && (clearTimeout(g.current), g.current = null);
|
|
2760
|
+
}, []), R = P(() => {
|
|
2760
2761
|
N.current && (clearTimeout(N.current), N.current = null);
|
|
2761
|
-
}, []), C =
|
|
2762
|
-
var
|
|
2763
|
-
if (
|
|
2762
|
+
}, []), C = P(() => {
|
|
2763
|
+
var L, v;
|
|
2764
|
+
if (F(), R(), i) {
|
|
2764
2765
|
const S = document.activeElement;
|
|
2765
|
-
T.current = S instanceof HTMLElement && ((
|
|
2766
|
+
T.current = S instanceof HTMLElement && ((L = j.current) != null && L.contains(S)) ? S : ((v = j.current) == null ? void 0 : v.querySelector(
|
|
2766
2767
|
'button:not([disabled]), [href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])'
|
|
2767
2768
|
)) ?? null;
|
|
2768
2769
|
}
|
|
2769
2770
|
d("opening"), x == null || x(!0), br(c);
|
|
2770
|
-
}, [
|
|
2771
|
-
|
|
2772
|
-
}, [
|
|
2773
|
-
var
|
|
2774
|
-
|
|
2775
|
-
d("closed"),
|
|
2771
|
+
}, [F, R, c, i, x]), H = P(() => {
|
|
2772
|
+
F(), R(), d("closed"), x == null || x(!1);
|
|
2773
|
+
}, [F, R, x]), y = P(() => {
|
|
2774
|
+
var L;
|
|
2775
|
+
F(), R(), d("closing"), x == null || x(!1), i && ((L = T.current) == null || L.focus()), g.current = setTimeout(() => {
|
|
2776
|
+
d("closed"), g.current = null;
|
|
2776
2777
|
}, a);
|
|
2777
2778
|
}, [
|
|
2778
|
-
|
|
2779
|
-
|
|
2779
|
+
F,
|
|
2780
|
+
R,
|
|
2780
2781
|
a,
|
|
2781
2782
|
i,
|
|
2782
2783
|
x
|
|
2783
|
-
]), Z =
|
|
2784
|
+
]), Z = P(() => {
|
|
2784
2785
|
if (_) {
|
|
2785
|
-
|
|
2786
|
+
y();
|
|
2786
2787
|
return;
|
|
2787
2788
|
}
|
|
2788
2789
|
C();
|
|
2789
|
-
}, [
|
|
2790
|
+
}, [y, _, C]), oe = P(
|
|
2790
2791
|
() => {
|
|
2791
|
-
var
|
|
2792
|
+
var L;
|
|
2792
2793
|
return Array.from(
|
|
2793
|
-
((
|
|
2794
|
+
((L = b.current) == null ? void 0 : L.querySelectorAll('[role="menuitem"]')) ?? []
|
|
2794
2795
|
).filter(
|
|
2795
2796
|
(v) => !v.hasAttribute("disabled") && v.getAttribute("aria-disabled") !== "true"
|
|
2796
2797
|
);
|
|
2797
2798
|
},
|
|
2798
2799
|
[]
|
|
2799
|
-
), X =
|
|
2800
|
-
(
|
|
2800
|
+
), X = P(
|
|
2801
|
+
(L) => {
|
|
2801
2802
|
var Q;
|
|
2802
2803
|
if (!i) return;
|
|
2803
|
-
if (
|
|
2804
|
-
|
|
2804
|
+
if (L.key === "Escape") {
|
|
2805
|
+
L.preventDefault(), L.stopPropagation(), y();
|
|
2805
2806
|
return;
|
|
2806
2807
|
}
|
|
2807
|
-
const v =
|
|
2808
|
+
const v = oe();
|
|
2808
2809
|
if (v.length === 0) return;
|
|
2809
2810
|
const S = v.indexOf(
|
|
2810
2811
|
document.activeElement
|
|
2811
2812
|
);
|
|
2812
|
-
let
|
|
2813
|
-
switch (
|
|
2813
|
+
let M = null;
|
|
2814
|
+
switch (L.key) {
|
|
2814
2815
|
case "ArrowDown":
|
|
2815
|
-
|
|
2816
|
+
M = S < 0 ? 0 : (S + 1) % v.length;
|
|
2816
2817
|
break;
|
|
2817
2818
|
case "ArrowUp":
|
|
2818
|
-
|
|
2819
|
+
M = S < 0 ? v.length - 1 : (S - 1 + v.length) % v.length;
|
|
2819
2820
|
break;
|
|
2820
2821
|
case "Home":
|
|
2821
|
-
|
|
2822
|
+
M = 0;
|
|
2822
2823
|
break;
|
|
2823
2824
|
case "End":
|
|
2824
|
-
|
|
2825
|
+
M = v.length - 1;
|
|
2825
2826
|
break;
|
|
2826
2827
|
default:
|
|
2827
2828
|
return;
|
|
2828
2829
|
}
|
|
2829
|
-
|
|
2830
|
+
L.preventDefault(), (Q = v[M]) == null || Q.focus();
|
|
2830
2831
|
},
|
|
2831
|
-
[
|
|
2832
|
-
), B =
|
|
2832
|
+
[y, oe, i]
|
|
2833
|
+
), B = P(() => {
|
|
2833
2834
|
var le, ie;
|
|
2834
2835
|
if (!j.current) return;
|
|
2835
|
-
const
|
|
2836
|
+
const L = j.current.firstElementChild, v = L instanceof HTMLElement ? L.getBoundingClientRect() : j.current.getBoundingClientRect(), S = ((le = b.current) == null ? void 0 : le.offsetWidth) || 200, M = ((ie = b.current) == null ? void 0 : ie.offsetHeight) || 200, Q = window.innerWidth, J = window.innerHeight, f = 8, I = 8, A = Math.min(
|
|
2836
2837
|
S,
|
|
2837
2838
|
Math.max(0, Q - f * 2)
|
|
2838
|
-
), E = Q - f - v.left,
|
|
2839
|
+
), E = Q - f - v.left, ee = v.right - f, te = s === "auto" ? E >= A || E >= ee ? "left" : "right" : s, W = te === "right" ? v.right - A : v.left, Y = Math.max(
|
|
2839
2840
|
f,
|
|
2840
2841
|
Q - A - f
|
|
2841
2842
|
), q = Math.min(
|
|
2842
2843
|
Math.max(f, W),
|
|
2843
2844
|
Y
|
|
2844
2845
|
);
|
|
2845
|
-
u(
|
|
2846
|
+
u(te);
|
|
2846
2847
|
let ae = v.bottom + I;
|
|
2847
|
-
if (ae +
|
|
2848
|
-
const G = v.top - I -
|
|
2849
|
-
ae = G >= f ? G : Math.max(f, J -
|
|
2848
|
+
if (ae + M > J - f) {
|
|
2849
|
+
const G = v.top - I - M;
|
|
2850
|
+
ae = G >= f ? G : Math.max(f, J - M - f);
|
|
2850
2851
|
}
|
|
2851
2852
|
k({
|
|
2852
2853
|
left: q,
|
|
@@ -2856,46 +2857,46 @@ const Yn = "fixed inset-0 z-[100] flex items-stretch overflow-hidden bg-[var(--l
|
|
|
2856
2857
|
maxWidth: `calc(100vw - ${f * 2}px)`
|
|
2857
2858
|
});
|
|
2858
2859
|
}, [s]);
|
|
2859
|
-
return
|
|
2860
|
-
const
|
|
2860
|
+
return re(() => {
|
|
2861
|
+
const L = (v) => {
|
|
2861
2862
|
const S = v.detail;
|
|
2862
2863
|
S && S !== c && H();
|
|
2863
2864
|
};
|
|
2864
|
-
return window.addEventListener(ct,
|
|
2865
|
-
window.removeEventListener(ct,
|
|
2865
|
+
return window.addEventListener(ct, L), () => {
|
|
2866
|
+
window.removeEventListener(ct, L);
|
|
2866
2867
|
};
|
|
2867
|
-
}, [H, c]),
|
|
2868
|
+
}, [H, c]), re(() => {
|
|
2868
2869
|
if (!z) return;
|
|
2869
|
-
const
|
|
2870
|
-
b.current && b.current.contains(S.target) || j.current && !j.current.contains(S.target) &&
|
|
2870
|
+
const L = (S) => {
|
|
2871
|
+
b.current && b.current.contains(S.target) || j.current && !j.current.contains(S.target) && y();
|
|
2871
2872
|
}, v = (S) => {
|
|
2872
|
-
S.key === "Escape" &&
|
|
2873
|
+
S.key === "Escape" && y();
|
|
2873
2874
|
};
|
|
2874
|
-
return document.addEventListener("mousedown",
|
|
2875
|
-
document.removeEventListener("mousedown",
|
|
2875
|
+
return document.addEventListener("mousedown", L), document.addEventListener("keydown", v), () => {
|
|
2876
|
+
document.removeEventListener("mousedown", L), document.removeEventListener("keydown", v);
|
|
2876
2877
|
};
|
|
2877
|
-
}, [
|
|
2878
|
-
var
|
|
2879
|
-
z && (B(), i && l === "opening" && ((
|
|
2880
|
-
}, [
|
|
2878
|
+
}, [y, z]), gt(() => {
|
|
2879
|
+
var L;
|
|
2880
|
+
z && (B(), i && l === "opening" && ((L = b.current) == null || L.focus()));
|
|
2881
|
+
}, [oe, i, z, l, B]), re(() => {
|
|
2881
2882
|
if (!(!z || l !== "opening"))
|
|
2882
2883
|
return N.current = setTimeout(() => {
|
|
2883
2884
|
d("open"), N.current = null;
|
|
2884
2885
|
}, Vn), () => {
|
|
2885
|
-
|
|
2886
|
+
R();
|
|
2886
2887
|
};
|
|
2887
|
-
}, [z, l,
|
|
2888
|
+
}, [z, l, R]), re(() => {
|
|
2888
2889
|
if (z)
|
|
2889
2890
|
return window.addEventListener("scroll", B, !0), window.addEventListener("resize", B), () => {
|
|
2890
2891
|
window.removeEventListener("scroll", B, !0), window.removeEventListener("resize", B);
|
|
2891
2892
|
};
|
|
2892
|
-
}, [z, B]),
|
|
2893
|
-
|
|
2894
|
-
}, [
|
|
2893
|
+
}, [z, B]), re(() => () => {
|
|
2894
|
+
F(), R();
|
|
2895
|
+
}, [F, R]), /* @__PURE__ */ e.jsxs("div", { ref: j, className: p("relative", n), children: [
|
|
2895
2896
|
t({
|
|
2896
2897
|
open: _,
|
|
2897
2898
|
menuId: c,
|
|
2898
|
-
close:
|
|
2899
|
+
close: y,
|
|
2899
2900
|
toggle: Z
|
|
2900
2901
|
}),
|
|
2901
2902
|
z && Re(
|
|
@@ -2912,13 +2913,14 @@ const Yn = "fixed inset-0 z-[100] flex items-stretch overflow-hidden bg-[var(--l
|
|
|
2912
2913
|
ref: b,
|
|
2913
2914
|
onKeyDown: i ? X : void 0,
|
|
2914
2915
|
style: h,
|
|
2915
|
-
className: "z-
|
|
2916
|
+
className: "z-[90] outline-none",
|
|
2916
2917
|
children: /* @__PURE__ */ e.jsx(
|
|
2917
2918
|
"div",
|
|
2918
2919
|
{
|
|
2919
2920
|
"data-lumen-motion": !0,
|
|
2921
|
+
"data-ui": "dropdown-surface",
|
|
2920
2922
|
className: p(
|
|
2921
|
-
"rounded-[var(--lumen-radius-icon)] border border-[var(--lumen-color-border)] bg-[var(--lumen-color-surface)] py-1 shadow-[
|
|
2923
|
+
"rounded-[var(--lumen-radius-icon)] border border-[var(--lumen-color-border)] bg-[var(--lumen-color-surface)] py-1 shadow-[var(--lumen-shadow-dropdown)]",
|
|
2922
2924
|
m === "right" ? "origin-top-right" : "origin-top-left",
|
|
2923
2925
|
i && "min-w-max whitespace-nowrap [&_svg]:shrink-0",
|
|
2924
2926
|
o
|
|
@@ -2926,7 +2928,7 @@ const Yn = "fixed inset-0 z-[100] flex items-stretch overflow-hidden bg-[var(--l
|
|
|
2926
2928
|
style: {
|
|
2927
2929
|
animation: l === "closing" ? "lumen-dropdown-out 0.12s ease-in forwards" : "lumen-dropdown-in 0.12s ease-out"
|
|
2928
2930
|
},
|
|
2929
|
-
children: typeof r == "function" ? r({ open: _, close:
|
|
2931
|
+
children: typeof r == "function" ? r({ open: _, close: y }) : r
|
|
2930
2932
|
}
|
|
2931
2933
|
)
|
|
2932
2934
|
}
|
|
@@ -2949,7 +2951,7 @@ const Yn = "fixed inset-0 z-[100] flex items-stretch overflow-hidden bg-[var(--l
|
|
|
2949
2951
|
className: i,
|
|
2950
2952
|
...x
|
|
2951
2953
|
}, c) => {
|
|
2952
|
-
const l = Gn[s], d = n === !1 ? null : n ?? /* @__PURE__ */ e.jsx(
|
|
2954
|
+
const l = Gn[s], d = n === !1 ? null : n ?? /* @__PURE__ */ e.jsx(Fr, { "aria-hidden": "true", size: l.iconSize });
|
|
2953
2955
|
return /* @__PURE__ */ e.jsxs(
|
|
2954
2956
|
"div",
|
|
2955
2957
|
{
|
|
@@ -2968,7 +2970,7 @@ const Yn = "fixed inset-0 z-[100] flex items-stretch overflow-hidden bg-[var(--l
|
|
|
2968
2970
|
"span",
|
|
2969
2971
|
{
|
|
2970
2972
|
className: p(
|
|
2971
|
-
"mb-3 flex items-center justify-center rounded-[8px]
|
|
2973
|
+
"mb-3 flex items-center justify-center rounded-[8px] text-[var(--lumen-color-text-placeholder)]",
|
|
2972
2974
|
l.icon
|
|
2973
2975
|
),
|
|
2974
2976
|
children: d
|
|
@@ -3004,13 +3006,13 @@ const er = (t) => t < 1024 ? `${t} B` : t < 1024 * 1024 ? `${(t / 1024).toFixed(
|
|
|
3004
3006
|
uploading: u = !1,
|
|
3005
3007
|
progress: h,
|
|
3006
3008
|
inputAriaLabel: k = "文件上传",
|
|
3007
|
-
className:
|
|
3009
|
+
className: g,
|
|
3008
3010
|
...N
|
|
3009
3011
|
}, j) => {
|
|
3010
|
-
const [b, T] = D(!1), z =
|
|
3011
|
-
if (c || u ||
|
|
3012
|
-
const Z = new Set(t.map(at)),
|
|
3013
|
-
for (const B of
|
|
3012
|
+
const [b, T] = D(!1), z = se(null), _ = l === "compact", F = o ? s ?? Number.POSITIVE_INFINITY : 1, R = (y) => {
|
|
3013
|
+
if (c || u || y.length === 0) return;
|
|
3014
|
+
const Z = new Set(t.map(at)), oe = [], X = [];
|
|
3015
|
+
for (const B of y) {
|
|
3014
3016
|
if (!Kn(B, n)) {
|
|
3015
3017
|
X.push({ file: B, reason: "type", message: "文件格式不受支持" });
|
|
3016
3018
|
continue;
|
|
@@ -3023,34 +3025,34 @@ const er = (t) => t < 1024 ? `${t} B` : t < 1024 * 1024 ? `${(t / 1024).toFixed(
|
|
|
3023
3025
|
});
|
|
3024
3026
|
continue;
|
|
3025
3027
|
}
|
|
3026
|
-
const
|
|
3027
|
-
if (
|
|
3028
|
-
X.push({ file: B, reason: "custom", message:
|
|
3028
|
+
const L = i == null ? void 0 : i(B);
|
|
3029
|
+
if (L) {
|
|
3030
|
+
X.push({ file: B, reason: "custom", message: L });
|
|
3029
3031
|
continue;
|
|
3030
3032
|
}
|
|
3031
3033
|
const v = at(B);
|
|
3032
3034
|
if (!Z.has(v)) {
|
|
3033
|
-
if ((o ? t.length : 0) +
|
|
3035
|
+
if ((o ? t.length : 0) + oe.length >= F) {
|
|
3034
3036
|
X.push({
|
|
3035
3037
|
file: B,
|
|
3036
3038
|
reason: "limit",
|
|
3037
|
-
message: `最多选择 ${
|
|
3039
|
+
message: `最多选择 ${F} 个文件`
|
|
3038
3040
|
});
|
|
3039
3041
|
continue;
|
|
3040
3042
|
}
|
|
3041
|
-
Z.add(v),
|
|
3043
|
+
Z.add(v), oe.push(B);
|
|
3042
3044
|
}
|
|
3043
3045
|
}
|
|
3044
|
-
|
|
3045
|
-
}, C = (
|
|
3046
|
-
const Z = at(
|
|
3047
|
-
r(t.filter((
|
|
3046
|
+
oe.length > 0 && r(o ? [...t, ...oe] : oe.slice(0, 1)), X.length > 0 && (x == null || x(X));
|
|
3047
|
+
}, C = (y) => {
|
|
3048
|
+
const Z = at(y);
|
|
3049
|
+
r(t.filter((oe) => at(oe) !== Z));
|
|
3048
3050
|
}, H = h === void 0 ? void 0 : Math.min(100, Math.max(0, h));
|
|
3049
3051
|
return /* @__PURE__ */ e.jsxs(
|
|
3050
3052
|
"div",
|
|
3051
3053
|
{
|
|
3052
3054
|
ref: j,
|
|
3053
|
-
className: p("flex w-full min-w-0 flex-col", _ ? "gap-2" : "gap-4",
|
|
3055
|
+
className: p("flex w-full min-w-0 flex-col", _ ? "gap-2" : "gap-4", g),
|
|
3054
3056
|
...N,
|
|
3055
3057
|
children: [
|
|
3056
3058
|
/* @__PURE__ */ e.jsx(
|
|
@@ -3060,23 +3062,23 @@ const er = (t) => t < 1024 ? `${t} B` : t < 1024 * 1024 ? `${(t / 1024).toFixed(
|
|
|
3060
3062
|
disabled: c || u,
|
|
3061
3063
|
"aria-label": k,
|
|
3062
3064
|
onClick: () => {
|
|
3063
|
-
var
|
|
3064
|
-
return (
|
|
3065
|
+
var y;
|
|
3066
|
+
return (y = z.current) == null ? void 0 : y.click();
|
|
3065
3067
|
},
|
|
3066
|
-
onDragEnter: (
|
|
3067
|
-
|
|
3068
|
+
onDragEnter: (y) => {
|
|
3069
|
+
y.preventDefault(), !c && !u && T(!0);
|
|
3068
3070
|
},
|
|
3069
|
-
onDragOver: (
|
|
3070
|
-
onDragLeave: (
|
|
3071
|
-
|
|
3071
|
+
onDragOver: (y) => y.preventDefault(),
|
|
3072
|
+
onDragLeave: (y) => {
|
|
3073
|
+
y.currentTarget.contains(y.relatedTarget) || T(!1);
|
|
3072
3074
|
},
|
|
3073
|
-
onDrop: (
|
|
3074
|
-
|
|
3075
|
+
onDrop: (y) => {
|
|
3076
|
+
y.preventDefault(), T(!1), R(Array.from(y.dataTransfer.files));
|
|
3075
3077
|
},
|
|
3076
3078
|
className: p(
|
|
3077
3079
|
"relative w-full min-w-0 border-dashed text-[var(--lumen-color-text-muted)] transition-all duration-200 focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--lumen-color-primary)]/20 disabled:cursor-not-allowed disabled:opacity-60",
|
|
3078
3080
|
_ ? "min-h-11 rounded-[7px] border px-3" : "rounded-[var(--lumen-radius-card)] border-2 px-5 py-3",
|
|
3079
|
-
b ? "border-[var(--lumen-color-primary)] bg-[var(--lumen-color-primary-soft)] text-[var(--lumen-color-primary)]" : "border-[var(--lumen-color-border
|
|
3081
|
+
b ? "border-[var(--lumen-color-primary)] bg-[var(--lumen-color-primary-soft)] text-[var(--lumen-color-primary)]" : "border-[var(--lumen-color-border)] bg-[var(--lumen-color-surface-muted)] hover:border-[var(--lumen-color-info-border)] hover:bg-[var(--lumen-color-surface-hover)] hover:text-[var(--lumen-color-primary)]"
|
|
3080
3082
|
),
|
|
3081
3083
|
children: _ ? /* @__PURE__ */ e.jsxs("span", { className: "flex min-h-11 items-center justify-center gap-2 text-[12px]", children: [
|
|
3082
3084
|
u ? /* @__PURE__ */ e.jsx(vt, { size: 16, className: "shrink-0 animate-spin" }) : /* @__PURE__ */ e.jsx(Wt, { size: 16, className: "shrink-0" }),
|
|
@@ -3111,8 +3113,8 @@ const er = (t) => t < 1024 ? `${t} B` : t < 1024 * 1024 ? `${(t / 1024).toFixed(
|
|
|
3111
3113
|
className: "hidden",
|
|
3112
3114
|
"aria-hidden": "true",
|
|
3113
3115
|
tabIndex: -1,
|
|
3114
|
-
onChange: (
|
|
3115
|
-
|
|
3116
|
+
onChange: (y) => {
|
|
3117
|
+
R(Array.from(y.target.files ?? [])), y.target.value = "";
|
|
3116
3118
|
}
|
|
3117
3119
|
}
|
|
3118
3120
|
),
|
|
@@ -3134,7 +3136,7 @@ const er = (t) => t < 1024 ? `${t} B` : t < 1024 * 1024 ? `${(t / 1024).toFixed(
|
|
|
3134
3136
|
)
|
|
3135
3137
|
}
|
|
3136
3138
|
) : null,
|
|
3137
|
-
m && t.length > 0 ? /* @__PURE__ */ e.jsx("div", { className: p("border-t border-[var(--lumen-color-border)] pt-2", _ ? "space-y-1.5" : "space-y-2"), children: t.map((
|
|
3139
|
+
m && t.length > 0 ? /* @__PURE__ */ e.jsx("div", { className: p("border-t border-[var(--lumen-color-border)] pt-2", _ ? "space-y-1.5" : "space-y-2"), children: t.map((y) => /* @__PURE__ */ e.jsxs(
|
|
3138
3140
|
"div",
|
|
3139
3141
|
{
|
|
3140
3142
|
className: p(
|
|
@@ -3144,23 +3146,23 @@ const er = (t) => t < 1024 ? `${t} B` : t < 1024 * 1024 ? `${(t / 1024).toFixed(
|
|
|
3144
3146
|
children: [
|
|
3145
3147
|
/* @__PURE__ */ e.jsx("span", { className: "flex h-8 w-8 shrink-0 items-center justify-center rounded-[6px] bg-[var(--lumen-color-primary-soft)] text-[var(--lumen-color-primary)]", children: /* @__PURE__ */ e.jsx(Wr, { size: 16 }) }),
|
|
3146
3148
|
/* @__PURE__ */ e.jsxs("span", { className: "min-w-0 flex-1 text-left", children: [
|
|
3147
|
-
/* @__PURE__ */ e.jsx("span", { className: "block truncate text-[13px] font-medium text-[var(--lumen-color-text)]", children:
|
|
3148
|
-
/* @__PURE__ */ e.jsx("span", { className: "mt-0.5 block text-[12px] text-[var(--lumen-color-text-placeholder)]", children: er(
|
|
3149
|
+
/* @__PURE__ */ e.jsx("span", { className: "block truncate text-[13px] font-medium text-[var(--lumen-color-text)]", children: y.name }),
|
|
3150
|
+
/* @__PURE__ */ e.jsx("span", { className: "mt-0.5 block text-[12px] text-[var(--lumen-color-text-placeholder)]", children: er(y.size) })
|
|
3149
3151
|
] }),
|
|
3150
3152
|
/* @__PURE__ */ e.jsx(
|
|
3151
3153
|
"button",
|
|
3152
3154
|
{
|
|
3153
3155
|
type: "button",
|
|
3154
3156
|
disabled: c || u,
|
|
3155
|
-
"aria-label": `移除 ${
|
|
3156
|
-
onClick: () => C(
|
|
3157
|
+
"aria-label": `移除 ${y.name}`,
|
|
3158
|
+
onClick: () => C(y),
|
|
3157
3159
|
className: "flex h-7 w-7 shrink-0 items-center justify-center rounded-full text-[var(--lumen-color-text-placeholder)] transition-colors hover:bg-[var(--lumen-color-surface-muted)] hover:text-[var(--lumen-color-danger)] focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--lumen-color-primary)]/20 disabled:cursor-not-allowed disabled:opacity-45",
|
|
3158
3160
|
children: /* @__PURE__ */ e.jsx(Ve, { size: 14 })
|
|
3159
3161
|
}
|
|
3160
3162
|
)
|
|
3161
3163
|
]
|
|
3162
3164
|
},
|
|
3163
|
-
at(
|
|
3165
|
+
at(y)
|
|
3164
3166
|
)) }) : null
|
|
3165
3167
|
]
|
|
3166
3168
|
}
|
|
@@ -3437,15 +3439,15 @@ function Ms({
|
|
|
3437
3439
|
const d = De(), m = oo({ fileName: t, extension: r, mimeType: n }), u = o ?? m.category, h = lo(
|
|
3438
3440
|
s ?? (o ? yt[o] : m.label),
|
|
3439
3441
|
u
|
|
3440
|
-
), k = !!(i || c),
|
|
3442
|
+
), k = !!(i || c), g = so[a];
|
|
3441
3443
|
return /* @__PURE__ */ e.jsxs(
|
|
3442
3444
|
"svg",
|
|
3443
3445
|
{
|
|
3444
3446
|
...l,
|
|
3445
3447
|
xmlns: "http://www.w3.org/2000/svg",
|
|
3446
3448
|
viewBox: "0 0 40 40",
|
|
3447
|
-
width:
|
|
3448
|
-
height:
|
|
3449
|
+
width: g,
|
|
3450
|
+
height: g,
|
|
3449
3451
|
fill: "none",
|
|
3450
3452
|
role: k ? "img" : void 0,
|
|
3451
3453
|
"aria-hidden": k ? void 0 : !0,
|
|
@@ -3563,7 +3565,7 @@ const io = {
|
|
|
3563
3565
|
sm: "h-[var(--lumen-control-height-sm)] px-2.5 text-[13px] mobile:text-[16px]",
|
|
3564
3566
|
md: "h-[var(--lumen-control-height-md)] px-3 text-[14px] mobile:text-[16px]",
|
|
3565
3567
|
lg: "h-[var(--lumen-control-height-lg)] px-3.5 text-[15px] mobile:text-[16px]"
|
|
3566
|
-
}, mo = "w-full border bg-[var(--lumen-color-surface)] text-[var(--lumen-color-text)] outline-none transition-all placeholder:text-[var(--lumen-color-text-placeholder)] disabled:cursor-not-allowed disabled:bg-[var(--lumen-color-surface-muted)] disabled:text-[var(--lumen-color-text-placeholder)] disabled:opacity-100", xo = (t) => t ? "border-[var(--lumen-color-danger)] focus:border-[var(--lumen-color-danger)] focus:ring-2 focus:ring-[var(--lumen-color-danger)]/10" : "border-[var(--lumen-color-border
|
|
3568
|
+
}, mo = "w-full border bg-[var(--lumen-color-surface)] text-[var(--lumen-color-text)] outline-none transition-all placeholder:text-[var(--lumen-color-text-placeholder)] disabled:cursor-not-allowed disabled:bg-[var(--lumen-color-surface-muted)] disabled:text-[var(--lumen-color-text-placeholder)] disabled:opacity-100", xo = (t) => t ? "border-[var(--lumen-color-danger)] focus:border-[var(--lumen-color-danger)] focus:ring-2 focus:ring-[var(--lumen-color-danger)]/10" : "border-[var(--lumen-color-border)] hover:border-[var(--lumen-color-border-hover)] focus:border-[var(--lumen-color-primary)] focus:ring-2 focus:ring-[var(--lumen-color-primary)]/10", po = (t) => t ? "border-[var(--lumen-color-danger)] focus-within:border-[var(--lumen-color-danger)] focus-within:ring-2 focus-within:ring-[var(--lumen-color-danger)]/10" : "border-[var(--lumen-color-border)] hover:border-[var(--lumen-color-border-hover)] focus-within:border-[var(--lumen-color-primary)] focus-within:ring-2 focus-within:ring-[var(--lumen-color-primary)]/10", yr = xe.forwardRef(
|
|
3567
3569
|
({
|
|
3568
3570
|
size: t = "md",
|
|
3569
3571
|
invalid: r = !1,
|
|
@@ -3722,7 +3724,7 @@ const vo = 120, bo = {
|
|
|
3722
3724
|
disabled: s = !1,
|
|
3723
3725
|
value: a,
|
|
3724
3726
|
multipleTriggerDisplay: i = "chips",
|
|
3725
|
-
multipleCountLabel: x = (
|
|
3727
|
+
multipleCountLabel: x = (y) => `已选择 ${y} 项`,
|
|
3726
3728
|
onChange: c,
|
|
3727
3729
|
size: l = "md",
|
|
3728
3730
|
className: d,
|
|
@@ -3730,41 +3732,41 @@ const vo = 120, bo = {
|
|
|
3730
3732
|
radius: u,
|
|
3731
3733
|
onBeforeOpen: h,
|
|
3732
3734
|
searchPlaceholder: k = "搜索...",
|
|
3733
|
-
emptyText:
|
|
3735
|
+
emptyText: g = "无匹配选项",
|
|
3734
3736
|
filterOptions: N = !0,
|
|
3735
3737
|
loadingText: j = "加载中...",
|
|
3736
3738
|
loading: b = !1,
|
|
3737
3739
|
searchValue: T,
|
|
3738
3740
|
onSearchChange: z,
|
|
3739
3741
|
onOpenChange: _,
|
|
3740
|
-
renderTrigger:
|
|
3741
|
-
renderOption:
|
|
3742
|
+
renderTrigger: F,
|
|
3743
|
+
renderOption: R,
|
|
3742
3744
|
optionClassName: C,
|
|
3743
3745
|
"aria-label": H
|
|
3744
3746
|
}) => {
|
|
3745
|
-
const [
|
|
3747
|
+
const [y, Z] = D(!1), [oe, X] = D(!1), [B, L] = D(!1), [v, S] = D(!1), [M, Q] = D(""), [J, f] = D(-1), [I, A] = D({
|
|
3746
3748
|
position: "fixed",
|
|
3747
3749
|
top: 0,
|
|
3748
3750
|
left: 0,
|
|
3749
3751
|
zIndex: 9999
|
|
3750
|
-
}), E =
|
|
3752
|
+
}), E = se(null), ee = se(null), te = se(null), W = se(null), Y = T ?? M, q = me(() => r === "multiple" ? Array.isArray(a) ? a : [] : a == null ? [] : [a], [r, a]), ae = me(() => {
|
|
3751
3753
|
if (!N || !Y) return t;
|
|
3752
3754
|
const w = Y.toLowerCase();
|
|
3753
3755
|
return t.filter((V) => V.label.toLowerCase().includes(w));
|
|
3754
|
-
}, [N, t, Y]), le =
|
|
3756
|
+
}, [N, t, Y]), le = P(
|
|
3755
3757
|
(w) => {
|
|
3756
3758
|
T === void 0 && Q(w), z == null || z(w);
|
|
3757
3759
|
},
|
|
3758
3760
|
[z, T]
|
|
3759
|
-
), ie =
|
|
3761
|
+
), ie = P(() => {
|
|
3760
3762
|
var xt, rt;
|
|
3761
3763
|
if (!E.current) return;
|
|
3762
|
-
const w = E.current.getBoundingClientRect(), V = 240 + (n ? 58 : 0) + (r === "multiple" && q.length > 0 ? 46 : 0) + 12, K = ((xt =
|
|
3763
|
-
|
|
3764
|
+
const w = E.current.getBoundingClientRect(), V = 240 + (n ? 58 : 0) + (r === "multiple" && q.length > 0 ? 46 : 0) + 12, K = ((xt = te.current) == null ? void 0 : xt.offsetHeight) || V, pe = 6, de = 8, ut = window.innerHeight - w.bottom < K, wt = ut ? Math.max(de, w.top - K - pe) : Math.min(window.innerHeight - de, w.bottom + pe), mt = Math.max(0, window.innerWidth - de * 2), Fe = Math.min(w.width, mt), tt = Math.max(
|
|
3765
|
+
Fe,
|
|
3764
3766
|
Math.min(mt, 480)
|
|
3765
3767
|
), jt = Math.min(
|
|
3766
3768
|
tt,
|
|
3767
|
-
Math.max(
|
|
3769
|
+
Math.max(Fe, ((rt = te.current) == null ? void 0 : rt.offsetWidth) || Fe)
|
|
3768
3770
|
), Nt = Math.min(
|
|
3769
3771
|
Math.max(de, w.left),
|
|
3770
3772
|
Math.max(de, window.innerWidth - jt - de)
|
|
@@ -3774,27 +3776,27 @@ const vo = 120, bo = {
|
|
|
3774
3776
|
top: wt,
|
|
3775
3777
|
left: Nt,
|
|
3776
3778
|
width: "max-content",
|
|
3777
|
-
minWidth:
|
|
3779
|
+
minWidth: Fe,
|
|
3778
3780
|
maxWidth: tt,
|
|
3779
3781
|
zIndex: 9999
|
|
3780
3782
|
});
|
|
3781
|
-
}, [r, n, q.length]), G =
|
|
3783
|
+
}, [r, n, q.length]), G = P(() => {
|
|
3782
3784
|
W.current && clearTimeout(W.current), X(!0), W.current = setTimeout(() => {
|
|
3783
3785
|
Z(!1), X(!1), le(""), f(-1), _ == null || _(!1);
|
|
3784
3786
|
}, vo);
|
|
3785
|
-
}, [_, le]), je =
|
|
3787
|
+
}, [_, le]), je = P(() => {
|
|
3786
3788
|
W.current && clearTimeout(W.current), Z(!1), X(!1), le(""), f(-1), _ == null || _(!1);
|
|
3787
|
-
}, [_, le]), Ne =
|
|
3789
|
+
}, [_, le]), Ne = P(async () => {
|
|
3788
3790
|
if (W.current && clearTimeout(W.current), h) {
|
|
3789
|
-
|
|
3791
|
+
L(!0);
|
|
3790
3792
|
try {
|
|
3791
3793
|
await h();
|
|
3792
3794
|
} finally {
|
|
3793
|
-
|
|
3795
|
+
L(!1);
|
|
3794
3796
|
}
|
|
3795
3797
|
}
|
|
3796
3798
|
Z(!0), X(!1), le(""), f(-1), _ == null || _(!0);
|
|
3797
|
-
}, [h, _, le]), Se =
|
|
3799
|
+
}, [h, _, le]), Se = P(
|
|
3798
3800
|
(w) => {
|
|
3799
3801
|
if (r === "single")
|
|
3800
3802
|
c(w), je();
|
|
@@ -3804,58 +3806,58 @@ const vo = 120, bo = {
|
|
|
3804
3806
|
}
|
|
3805
3807
|
},
|
|
3806
3808
|
[r, c, q, je]
|
|
3807
|
-
), U =
|
|
3809
|
+
), U = P(
|
|
3808
3810
|
(w, V) => {
|
|
3809
3811
|
V.stopPropagation(), c(q.filter((K) => K !== w));
|
|
3810
3812
|
},
|
|
3811
3813
|
[c, q]
|
|
3812
|
-
), he =
|
|
3814
|
+
), he = P(() => {
|
|
3813
3815
|
c([]), Q("");
|
|
3814
3816
|
}, [c]);
|
|
3815
|
-
|
|
3816
|
-
if (!
|
|
3817
|
+
re(() => {
|
|
3818
|
+
if (!y) return;
|
|
3817
3819
|
const w = (V) => {
|
|
3818
3820
|
var pe, de;
|
|
3819
3821
|
const K = V.target;
|
|
3820
|
-
(pe = E.current) != null && pe.contains(K) || (de =
|
|
3822
|
+
(pe = E.current) != null && pe.contains(K) || (de = te.current) != null && de.contains(K) || G();
|
|
3821
3823
|
};
|
|
3822
3824
|
return document.addEventListener("mousedown", w), () => document.removeEventListener("mousedown", w);
|
|
3823
|
-
}, [
|
|
3824
|
-
|
|
3825
|
-
}, [
|
|
3826
|
-
if (
|
|
3825
|
+
}, [y, G]), re(() => {
|
|
3826
|
+
y && n && ee.current && ee.current.focus();
|
|
3827
|
+
}, [y, n]), re(() => {
|
|
3828
|
+
if (y)
|
|
3827
3829
|
return ie(), window.addEventListener("scroll", ie, !0), window.addEventListener("resize", ie), () => {
|
|
3828
3830
|
window.removeEventListener("scroll", ie, !0), window.removeEventListener("resize", ie);
|
|
3829
3831
|
};
|
|
3830
|
-
}, [
|
|
3831
|
-
if (!
|
|
3832
|
+
}, [y, ie]), re(() => {
|
|
3833
|
+
if (!y) return;
|
|
3832
3834
|
const w = window.requestAnimationFrame(() => {
|
|
3833
3835
|
ie();
|
|
3834
3836
|
});
|
|
3835
|
-
if (!
|
|
3837
|
+
if (!te.current || typeof ResizeObserver > "u")
|
|
3836
3838
|
return () => {
|
|
3837
3839
|
window.cancelAnimationFrame(w);
|
|
3838
3840
|
};
|
|
3839
3841
|
const V = new ResizeObserver(() => {
|
|
3840
3842
|
ie();
|
|
3841
3843
|
});
|
|
3842
|
-
return V.observe(
|
|
3844
|
+
return V.observe(te.current), () => {
|
|
3843
3845
|
window.cancelAnimationFrame(w), V.disconnect();
|
|
3844
3846
|
};
|
|
3845
3847
|
}, [
|
|
3846
|
-
|
|
3848
|
+
y,
|
|
3847
3849
|
ie,
|
|
3848
3850
|
ae.length,
|
|
3849
3851
|
n,
|
|
3850
3852
|
q.length
|
|
3851
|
-
]),
|
|
3853
|
+
]), re(() => {
|
|
3852
3854
|
f(-1);
|
|
3853
|
-
}, [ae]),
|
|
3855
|
+
}, [ae]), re(() => () => {
|
|
3854
3856
|
W.current && clearTimeout(W.current);
|
|
3855
3857
|
}, []);
|
|
3856
|
-
const ne =
|
|
3858
|
+
const ne = P(
|
|
3857
3859
|
(w) => {
|
|
3858
|
-
if (!
|
|
3860
|
+
if (!y) {
|
|
3859
3861
|
(w.key === "Enter" || w.key === " ") && (w.preventDefault(), Ne());
|
|
3860
3862
|
return;
|
|
3861
3863
|
}
|
|
@@ -3889,19 +3891,19 @@ const vo = 120, bo = {
|
|
|
3889
3891
|
}
|
|
3890
3892
|
},
|
|
3891
3893
|
[
|
|
3892
|
-
|
|
3894
|
+
y,
|
|
3893
3895
|
J,
|
|
3894
3896
|
ae,
|
|
3895
3897
|
Se,
|
|
3896
3898
|
je,
|
|
3897
3899
|
Ne
|
|
3898
3900
|
]
|
|
3899
|
-
), fe =
|
|
3901
|
+
), fe = P(
|
|
3900
3902
|
(w) => t.find((V) => V.value === w),
|
|
3901
3903
|
[t]
|
|
3902
3904
|
), ve = () => {
|
|
3903
|
-
if (
|
|
3904
|
-
return
|
|
3905
|
+
if (F)
|
|
3906
|
+
return F(
|
|
3905
3907
|
q.map((K) => fe(K)).filter(Boolean)
|
|
3906
3908
|
);
|
|
3907
3909
|
if (q.length === 0)
|
|
@@ -3931,12 +3933,12 @@ const vo = 120, bo = {
|
|
|
3931
3933
|
},
|
|
3932
3934
|
String(w)
|
|
3933
3935
|
);
|
|
3934
|
-
}) : /* @__PURE__ */ e.jsx("span", { className: "text-[var(--lumen-color-text-placeholder)]", children: o }) }),
|
|
3936
|
+
}) : /* @__PURE__ */ e.jsx("span", { className: "text-[var(--lumen-color-text-placeholder)]", children: o }) }), O = () => /* @__PURE__ */ e.jsx("div", { className: "border-b border-[var(--lumen-color-surface-muted)] p-2.5", children: /* @__PURE__ */ e.jsxs("div", { className: "flex items-center gap-2 rounded-[8px] bg-[var(--lumen-color-surface-muted)] px-3 py-2", children: [
|
|
3935
3937
|
/* @__PURE__ */ e.jsx(Pt, { size: 14, className: "shrink-0 text-[var(--lumen-color-text-placeholder)]" }),
|
|
3936
3938
|
/* @__PURE__ */ e.jsx(
|
|
3937
3939
|
"input",
|
|
3938
3940
|
{
|
|
3939
|
-
ref:
|
|
3941
|
+
ref: ee,
|
|
3940
3942
|
className: "w-full bg-transparent text-[13px] text-[var(--lumen-color-text)] outline-none placeholder:text-[var(--lumen-color-text-placeholder)] mobile:text-[16px]",
|
|
3941
3943
|
placeholder: k,
|
|
3942
3944
|
value: Y,
|
|
@@ -3960,19 +3962,19 @@ const vo = 120, bo = {
|
|
|
3960
3962
|
onClick: () => !w.disabled && Se(w.value),
|
|
3961
3963
|
onMouseEnter: () => !w.disabled && f(V),
|
|
3962
3964
|
className: p(
|
|
3963
|
-
|
|
3965
|
+
R ? "block w-full text-left transition-all" : "flex w-full items-center gap-2.5 rounded-[8px] p-2 text-left text-[13px] transition-colors",
|
|
3964
3966
|
w.disabled && "cursor-not-allowed opacity-40",
|
|
3965
|
-
!
|
|
3966
|
-
!
|
|
3967
|
+
!R && (K ? "bg-[var(--lumen-color-primary-soft)] text-[var(--lumen-color-primary)]" : "text-[var(--lumen-color-text-secondary)] hover:bg-[var(--lumen-color-surface-muted)]"),
|
|
3968
|
+
!R && pe && !w.disabled && !K && "bg-[var(--lumen-color-surface-muted)]",
|
|
3967
3969
|
C == null ? void 0 : C(w, de)
|
|
3968
3970
|
),
|
|
3969
|
-
children:
|
|
3971
|
+
children: R ? R(w, de) : /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
|
|
3970
3972
|
/* @__PURE__ */ e.jsx(
|
|
3971
3973
|
"div",
|
|
3972
3974
|
{
|
|
3973
3975
|
className: p(
|
|
3974
3976
|
"flex h-[18px] w-[18px] shrink-0 items-center justify-center rounded-[4px] border transition-colors",
|
|
3975
|
-
K ? "border-[var(--lumen-color-primary)] bg-[var(--lumen-color-primary)]" : "border-[var(--lumen-color-border
|
|
3977
|
+
K ? "border-[var(--lumen-color-primary)] bg-[var(--lumen-color-primary)]" : "border-[var(--lumen-color-border)]"
|
|
3976
3978
|
),
|
|
3977
3979
|
children: K && /* @__PURE__ */ e.jsx(Dt, { size: 12, className: "text-[var(--lumen-color-on-primary)]" })
|
|
3978
3980
|
}
|
|
@@ -3995,13 +3997,13 @@ const vo = 120, bo = {
|
|
|
3995
3997
|
onClick: () => !w.disabled && Se(w.value),
|
|
3996
3998
|
onMouseEnter: () => !w.disabled && f(V),
|
|
3997
3999
|
className: p(
|
|
3998
|
-
|
|
4000
|
+
R ? "block w-full text-left transition-all" : "flex w-full items-center gap-2 rounded-[8px] p-2 text-left text-[13px] transition-colors",
|
|
3999
4001
|
w.disabled && "cursor-not-allowed opacity-40",
|
|
4000
|
-
!
|
|
4001
|
-
!
|
|
4002
|
+
!R && (K ? "bg-[var(--lumen-color-primary-soft)] font-normal text-[var(--lumen-color-primary)]" : "text-[var(--lumen-color-text-secondary)] hover:bg-[var(--lumen-color-surface-muted)]"),
|
|
4003
|
+
!R && pe && !w.disabled && !K && "bg-[var(--lumen-color-surface-muted)]",
|
|
4002
4004
|
C == null ? void 0 : C(w, de)
|
|
4003
4005
|
),
|
|
4004
|
-
children:
|
|
4006
|
+
children: R ? R(w, de) : /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
|
|
4005
4007
|
w.icon && /* @__PURE__ */ e.jsx("span", { className: "shrink-0", children: w.icon }),
|
|
4006
4008
|
/* @__PURE__ */ e.jsxs("div", { className: "min-w-0 flex-1", children: [
|
|
4007
4009
|
/* @__PURE__ */ e.jsx("div", { className: "leading-5", children: w.label }),
|
|
@@ -4011,7 +4013,7 @@ const vo = 120, bo = {
|
|
|
4011
4013
|
},
|
|
4012
4014
|
String(w.value)
|
|
4013
4015
|
);
|
|
4014
|
-
}, ue = () => /* @__PURE__ */ e.jsx("div", { className: "px-3 py-4 text-center text-[13px] text-[var(--lumen-color-text-placeholder)]", children:
|
|
4016
|
+
}, ue = () => /* @__PURE__ */ e.jsx("div", { className: "px-3 py-4 text-center text-[13px] text-[var(--lumen-color-text-placeholder)]", children: g }), ge = () => /* @__PURE__ */ e.jsxs("div", { className: "flex items-center justify-between border-t border-[var(--lumen-color-surface-muted)] px-3 py-2.5", children: [
|
|
4015
4017
|
/* @__PURE__ */ e.jsxs("span", { className: "text-[12px] text-[var(--lumen-color-text-placeholder)]", children: [
|
|
4016
4018
|
"已选 ",
|
|
4017
4019
|
q.length,
|
|
@@ -4041,17 +4043,17 @@ const vo = 120, bo = {
|
|
|
4041
4043
|
type: "button",
|
|
4042
4044
|
"data-testid": "select-trigger",
|
|
4043
4045
|
"aria-label": H,
|
|
4044
|
-
"aria-expanded":
|
|
4046
|
+
"aria-expanded": y,
|
|
4045
4047
|
"aria-haspopup": "listbox",
|
|
4046
4048
|
disabled: s,
|
|
4047
4049
|
onClick: () => {
|
|
4048
|
-
s || B || (
|
|
4050
|
+
s || B || (y ? G() : Ne());
|
|
4049
4051
|
},
|
|
4050
4052
|
className: p(
|
|
4051
4053
|
"flex w-full cursor-pointer items-center gap-2 border bg-[var(--lumen-color-surface)] text-left font-normal outline-none transition-all",
|
|
4052
4054
|
u ?? Ee.control,
|
|
4053
4055
|
bo[l],
|
|
4054
|
-
s || B ? "cursor-not-allowed border-[var(--lumen-color-border)] bg-[var(--lumen-color-surface-muted)] opacity-50" :
|
|
4056
|
+
s || B ? "cursor-not-allowed border-[var(--lumen-color-border)] bg-[var(--lumen-color-surface-muted)] opacity-50" : y ? "border-[var(--lumen-color-primary)] ring-1 ring-[var(--lumen-color-primary)]/10" : "border-[var(--lumen-color-border)] hover:border-[var(--lumen-color-border-hover)]",
|
|
4055
4057
|
m
|
|
4056
4058
|
),
|
|
4057
4059
|
children: [
|
|
@@ -4068,18 +4070,18 @@ const vo = 120, bo = {
|
|
|
4068
4070
|
size: 16,
|
|
4069
4071
|
className: p(
|
|
4070
4072
|
"shrink-0 text-[var(--lumen-color-text-placeholder)] transition-transform duration-200",
|
|
4071
|
-
|
|
4073
|
+
y && "rotate-180"
|
|
4072
4074
|
)
|
|
4073
4075
|
}
|
|
4074
4076
|
)
|
|
4075
4077
|
]
|
|
4076
4078
|
}
|
|
4077
4079
|
),
|
|
4078
|
-
|
|
4080
|
+
y && Re(
|
|
4079
4081
|
/* @__PURE__ */ e.jsxs(
|
|
4080
4082
|
"div",
|
|
4081
4083
|
{
|
|
4082
|
-
ref:
|
|
4084
|
+
ref: te,
|
|
4083
4085
|
"data-ui": "select-dropdown",
|
|
4084
4086
|
"data-testid": "select-dropdown",
|
|
4085
4087
|
className: p(
|
|
@@ -4088,11 +4090,11 @@ const vo = 120, bo = {
|
|
|
4088
4090
|
),
|
|
4089
4091
|
style: {
|
|
4090
4092
|
...I,
|
|
4091
|
-
animation:
|
|
4093
|
+
animation: oe ? v ? "lumen-dropdown-out-up 0.12s ease-in forwards" : "lumen-dropdown-out 0.12s ease-in forwards" : v ? "lumen-dropdown-in-up 0.12s ease-out" : "lumen-dropdown-in 0.12s ease-out",
|
|
4092
4094
|
transformOrigin: wr(v)
|
|
4093
4095
|
},
|
|
4094
4096
|
children: [
|
|
4095
|
-
n &&
|
|
4097
|
+
n && O(),
|
|
4096
4098
|
/* @__PURE__ */ e.jsx("div", { className: "flex max-h-[252px] flex-col gap-1 overflow-y-auto p-2", children: b ? /* @__PURE__ */ e.jsx("div", { className: "px-3 py-4 text-center text-[13px] text-[var(--lumen-color-text-placeholder)]", children: j }) : ae.length === 0 ? ue() : ae.map((w, V) => {
|
|
4097
4099
|
var de;
|
|
4098
4100
|
const K = (de = ae[V - 1]) == null ? void 0 : de.group, pe = w.group && w.group !== K;
|
|
@@ -4137,7 +4139,7 @@ const vo = 120, bo = {
|
|
|
4137
4139
|
(b, T) => b - T
|
|
4138
4140
|
),
|
|
4139
4141
|
[l]
|
|
4140
|
-
),
|
|
4142
|
+
), g = typeof c == "number" && typeof d == "function" && k.length > 0, N = me(
|
|
4141
4143
|
() => yo(h, u),
|
|
4142
4144
|
[h, u]
|
|
4143
4145
|
);
|
|
@@ -4164,7 +4166,7 @@ const vo = 120, bo = {
|
|
|
4164
4166
|
] }),
|
|
4165
4167
|
/* @__PURE__ */ e.jsxs("div", { className: "flex gap-1.5", children: [
|
|
4166
4168
|
/* @__PURE__ */ e.jsx(
|
|
4167
|
-
|
|
4169
|
+
Oe,
|
|
4168
4170
|
{
|
|
4169
4171
|
disabled: h <= 1 || a,
|
|
4170
4172
|
onClick: () => o(h - 1),
|
|
@@ -4175,7 +4177,7 @@ const vo = 120, bo = {
|
|
|
4175
4177
|
}
|
|
4176
4178
|
),
|
|
4177
4179
|
/* @__PURE__ */ e.jsx(
|
|
4178
|
-
|
|
4180
|
+
Oe,
|
|
4179
4181
|
{
|
|
4180
4182
|
disabled: h >= u || a,
|
|
4181
4183
|
onClick: () => o(h + 1),
|
|
@@ -4211,7 +4213,7 @@ const vo = 120, bo = {
|
|
|
4211
4213
|
u,
|
|
4212
4214
|
" 页"
|
|
4213
4215
|
] }),
|
|
4214
|
-
|
|
4216
|
+
g ? /* @__PURE__ */ e.jsx("div", { className: "w-[104px]", children: /* @__PURE__ */ e.jsx(
|
|
4215
4217
|
go,
|
|
4216
4218
|
{
|
|
4217
4219
|
options: k.map((b) => ({
|
|
@@ -4356,8 +4358,8 @@ function ko(t, r) {
|
|
|
4356
4358
|
function jr(t, r, n, o, s = 8, a = typeof window < "u" ? { width: window.innerWidth, height: window.innerHeight } : { width: 1024, height: 768 }) {
|
|
4357
4359
|
let i = n;
|
|
4358
4360
|
if (!tr(t, r, n, o, s, a)) {
|
|
4359
|
-
const
|
|
4360
|
-
tr(t, r,
|
|
4361
|
+
const g = jo[n];
|
|
4362
|
+
tr(t, r, g, o, s, a) && (i = g);
|
|
4361
4363
|
}
|
|
4362
4364
|
const { width: x, height: c } = r, l = t.left + t.width / 2, d = t.top + t.height / 2;
|
|
4363
4365
|
let m, u, h;
|
|
@@ -4379,16 +4381,16 @@ function jr(t, r, n, o, s = 8, a = typeof window < "u" ? { width: window.innerWi
|
|
|
4379
4381
|
if (m < s)
|
|
4380
4382
|
h += m - s, m = s;
|
|
4381
4383
|
else if (m + x > a.width - s) {
|
|
4382
|
-
const
|
|
4383
|
-
h -=
|
|
4384
|
+
const g = m + x - (a.width - s);
|
|
4385
|
+
h -= g, m -= g;
|
|
4384
4386
|
}
|
|
4385
4387
|
}
|
|
4386
4388
|
if (i === "left" || i === "right") {
|
|
4387
4389
|
if (u < s)
|
|
4388
4390
|
h += u - s, u = s;
|
|
4389
4391
|
else if (u + c > a.height - s) {
|
|
4390
|
-
const
|
|
4391
|
-
h -=
|
|
4392
|
+
const g = u + c - (a.height - s);
|
|
4393
|
+
h -= g, u -= g;
|
|
4392
4394
|
}
|
|
4393
4395
|
}
|
|
4394
4396
|
const k = ko(i, h);
|
|
@@ -4411,23 +4413,23 @@ const To = 16, Eo = 120, He = 8, rr = (t, r, n) => Math.min(Math.max(t, r), Math
|
|
|
4411
4413
|
contentRole: h = "dialog",
|
|
4412
4414
|
ariaLabel: k
|
|
4413
4415
|
}) => {
|
|
4414
|
-
const
|
|
4416
|
+
const g = De(), N = typeof n == "boolean", [j, b] = D(o), T = N ? n : j, [z, _] = D(o || n ? "open" : "closed"), [F, R] = D(a), [C, H] = D({
|
|
4415
4417
|
left: -9999,
|
|
4416
4418
|
position: "fixed",
|
|
4417
4419
|
top: -9999
|
|
4418
|
-
}),
|
|
4419
|
-
B.current && clearTimeout(B.current),
|
|
4420
|
-
}, []), Q =
|
|
4421
|
-
N || b(E), s == null || s(E), E && br(
|
|
4422
|
-
}, [N, s,
|
|
4420
|
+
}), y = se(null), Z = se(null), oe = se(null), X = se(o || !!n), B = se(null), L = se(null), v = z !== "closed", S = T && z !== "closing", M = P(() => {
|
|
4421
|
+
B.current && clearTimeout(B.current), L.current && clearTimeout(L.current), B.current = null, L.current = null;
|
|
4422
|
+
}, []), Q = P((E) => {
|
|
4423
|
+
N || b(E), s == null || s(E), E && br(g);
|
|
4424
|
+
}, [N, s, g]), J = P(() => Q(!1), [Q]), f = P(
|
|
4423
4425
|
() => Q(!T),
|
|
4424
4426
|
[T, Q]
|
|
4425
|
-
), I =
|
|
4426
|
-
|
|
4427
|
-
}, [
|
|
4428
|
-
const E =
|
|
4429
|
-
if (!E || !
|
|
4430
|
-
const
|
|
4427
|
+
), I = P(() => {
|
|
4428
|
+
M(), X.current = !1, N || b(!1), _("closed"), s == null || s(!1);
|
|
4429
|
+
}, [M, N, s]), A = P(() => {
|
|
4430
|
+
const E = y.current, ee = Z.current;
|
|
4431
|
+
if (!E || !ee) return;
|
|
4432
|
+
const te = E.firstElementChild, W = te instanceof HTMLElement ? te.getBoundingClientRect() : E.getBoundingClientRect(), Y = ee.offsetWidth || 280, q = ee.offsetHeight || 160, ae = { width: window.innerWidth, height: window.innerHeight }, le = jr(
|
|
4431
4433
|
W,
|
|
4432
4434
|
{ width: Y, height: q },
|
|
4433
4435
|
a,
|
|
@@ -4436,7 +4438,7 @@ const To = 16, Eo = 120, He = 8, rr = (t, r, n) => Math.min(Math.max(t, r), Math
|
|
|
4436
4438
|
ae
|
|
4437
4439
|
);
|
|
4438
4440
|
let ie = le.x, G = le.y;
|
|
4439
|
-
le.actualPlacement === "top" || le.actualPlacement === "bottom" ? (i === "start" && (ie = W.left), i === "end" && (ie = W.right - Y), ie = rr(ie, He, ae.width - Y - He)) : (i === "start" && (G = W.top), i === "end" && (G = W.bottom - q), G = rr(G, He, ae.height - q - He)),
|
|
4441
|
+
le.actualPlacement === "top" || le.actualPlacement === "bottom" ? (i === "start" && (ie = W.left), i === "end" && (ie = W.right - Y), ie = rr(ie, He, ae.width - Y - He)) : (i === "start" && (G = W.top), i === "end" && (G = W.bottom - q), G = rr(G, He, ae.height - q - He)), R(le.actualPlacement), H({
|
|
4440
4442
|
left: ie,
|
|
4441
4443
|
top: G,
|
|
4442
4444
|
position: "fixed",
|
|
@@ -4444,61 +4446,61 @@ const To = 16, Eo = 120, He = 8, rr = (t, r, n) => Math.min(Math.max(t, r), Math
|
|
|
4444
4446
|
maxWidth: `calc(100vw - ${He * 2}px)`
|
|
4445
4447
|
});
|
|
4446
4448
|
}, [i, x, a]);
|
|
4447
|
-
return
|
|
4449
|
+
return re(() => {
|
|
4448
4450
|
var E;
|
|
4449
|
-
return
|
|
4451
|
+
return M(), T ? (X.current = !0, oe.current = ((E = y.current) == null ? void 0 : E.firstElementChild) instanceof HTMLElement ? y.current.firstElementChild : null, _("opening"), B.current = setTimeout(() => {
|
|
4450
4452
|
_("open"), B.current = null;
|
|
4451
|
-
}, To),
|
|
4452
|
-
_("closed"), X.current = !1,
|
|
4453
|
-
}, c)),
|
|
4454
|
-
}, [
|
|
4455
|
-
const E = (
|
|
4456
|
-
const
|
|
4457
|
-
|
|
4453
|
+
}, To), M) : (X.current && (_("closing"), L.current = setTimeout(() => {
|
|
4454
|
+
_("closed"), X.current = !1, L.current = null;
|
|
4455
|
+
}, c)), M);
|
|
4456
|
+
}, [M, c, T]), re(() => {
|
|
4457
|
+
const E = (ee) => {
|
|
4458
|
+
const te = ee.detail;
|
|
4459
|
+
te && te !== g && T && I();
|
|
4458
4460
|
};
|
|
4459
4461
|
return window.addEventListener(ct, E), () => window.removeEventListener(ct, E);
|
|
4460
|
-
}, [I, T,
|
|
4462
|
+
}, [I, T, g]), re(() => {
|
|
4461
4463
|
if (!v) return;
|
|
4462
|
-
const E = (
|
|
4464
|
+
const E = (te) => {
|
|
4463
4465
|
var Y, q;
|
|
4464
|
-
const W =
|
|
4465
|
-
(Y = Z.current) != null && Y.contains(W) || (q =
|
|
4466
|
-
},
|
|
4466
|
+
const W = te.target;
|
|
4467
|
+
(Y = Z.current) != null && Y.contains(W) || (q = y.current) != null && q.contains(W) || l && J();
|
|
4468
|
+
}, ee = (te) => {
|
|
4467
4469
|
var W;
|
|
4468
|
-
|
|
4470
|
+
te.key !== "Escape" || !d || (te.preventDefault(), J(), (W = oe.current) == null || W.focus());
|
|
4469
4471
|
};
|
|
4470
|
-
return document.addEventListener("mousedown", E), document.addEventListener("keydown",
|
|
4471
|
-
document.removeEventListener("mousedown", E), document.removeEventListener("keydown",
|
|
4472
|
+
return document.addEventListener("mousedown", E), document.addEventListener("keydown", ee), () => {
|
|
4473
|
+
document.removeEventListener("mousedown", E), document.removeEventListener("keydown", ee);
|
|
4472
4474
|
};
|
|
4473
4475
|
}, [J, d, l, v]), gt(() => {
|
|
4474
4476
|
v && A();
|
|
4475
|
-
}, [v, z, A]),
|
|
4477
|
+
}, [v, z, A]), re(() => {
|
|
4476
4478
|
if (v)
|
|
4477
4479
|
return window.addEventListener("scroll", A, !0), window.addEventListener("resize", A), () => {
|
|
4478
4480
|
window.removeEventListener("scroll", A, !0), window.removeEventListener("resize", A);
|
|
4479
4481
|
};
|
|
4480
|
-
}, [v, A]),
|
|
4481
|
-
t({ open: S, popoverId:
|
|
4482
|
+
}, [v, A]), re(() => M, [M]), /* @__PURE__ */ e.jsxs("div", { ref: y, className: p("relative inline-flex", m), children: [
|
|
4483
|
+
t({ open: S, popoverId: g, close: J, toggle: f }),
|
|
4482
4484
|
v && Re(
|
|
4483
4485
|
/* @__PURE__ */ e.jsx(
|
|
4484
4486
|
"div",
|
|
4485
4487
|
{
|
|
4486
|
-
id:
|
|
4488
|
+
id: g,
|
|
4487
4489
|
ref: Z,
|
|
4488
4490
|
role: h,
|
|
4489
4491
|
"aria-label": k,
|
|
4490
|
-
"data-ui": "popover",
|
|
4491
4492
|
"data-state": z,
|
|
4492
|
-
"data-placement":
|
|
4493
|
+
"data-placement": F,
|
|
4493
4494
|
style: C,
|
|
4494
|
-
className: "z-50
|
|
4495
|
+
className: "z-50 outline-none",
|
|
4495
4496
|
children: /* @__PURE__ */ e.jsx(
|
|
4496
4497
|
"div",
|
|
4497
4498
|
{
|
|
4498
4499
|
"data-lumen-motion": !0,
|
|
4500
|
+
"data-ui": "popover",
|
|
4499
4501
|
className: p(
|
|
4500
|
-
"rounded-[8px] border border-[var(--lumen-color-border)] bg-[var(--lumen-color-surface)] p-4 shadow-[var(--lumen-shadow-dropdown)]",
|
|
4501
|
-
So(
|
|
4502
|
+
"max-h-[inherit] max-w-[inherit] overflow-auto rounded-[8px] border border-[var(--lumen-color-border)] bg-[var(--lumen-color-surface)] p-4 shadow-[var(--lumen-shadow-dropdown)]",
|
|
4503
|
+
So(F, i),
|
|
4502
4504
|
u
|
|
4503
4505
|
),
|
|
4504
4506
|
style: {
|
|
@@ -4539,7 +4541,7 @@ const To = 16, Eo = 120, He = 8, rr = (t, r, n) => Math.min(Math.max(t, r), Math
|
|
|
4539
4541
|
className: l,
|
|
4540
4542
|
...d
|
|
4541
4543
|
}, m) => {
|
|
4542
|
-
const u = r > 0 ? r : 100, h = Math.min(u, Math.max(0, t)), k = Math.round(h / u * 100),
|
|
4544
|
+
const u = r > 0 ? r : 100, h = Math.min(u, Math.max(0, t)), k = Math.round(h / u * 100), g = (c == null ? void 0 : c(k, h, u)) ?? `${k}%`, N = zo[s], j = x ? { "aria-valuetext": "加载中" } : { "aria-valuemin": 0, "aria-valuemax": u, "aria-valuenow": h };
|
|
4543
4545
|
if (n === "circle") {
|
|
4544
4546
|
const b = _o[o];
|
|
4545
4547
|
return /* @__PURE__ */ e.jsxs(
|
|
@@ -4568,7 +4570,7 @@ const To = 16, Eo = 120, He = 8, rr = (t, r, n) => Math.min(Math.max(t, r), Math
|
|
|
4568
4570
|
{
|
|
4569
4571
|
className: "absolute flex items-center justify-center rounded-full bg-[var(--lumen-color-surface)] text-[12px] font-medium text-[var(--lumen-color-text-secondary)]",
|
|
4570
4572
|
style: { inset: b.inset },
|
|
4571
|
-
children: !x && i ?
|
|
4573
|
+
children: !x && i ? g : null
|
|
4572
4574
|
}
|
|
4573
4575
|
)
|
|
4574
4576
|
}
|
|
@@ -4592,7 +4594,7 @@ const To = 16, Eo = 120, He = 8, rr = (t, r, n) => Math.min(Math.max(t, r), Math
|
|
|
4592
4594
|
children: [
|
|
4593
4595
|
a || i ? /* @__PURE__ */ e.jsxs("div", { className: "mb-2 flex items-center justify-between gap-3 text-[13px] leading-5", children: [
|
|
4594
4596
|
/* @__PURE__ */ e.jsx("span", { className: "min-w-0 text-[var(--lumen-color-text-secondary)]", children: a }),
|
|
4595
|
-
i && !x ? /* @__PURE__ */ e.jsx("span", { className: "shrink-0 font-medium text-[var(--lumen-color-text)]", children:
|
|
4597
|
+
i && !x ? /* @__PURE__ */ e.jsx("span", { className: "shrink-0 font-medium text-[var(--lumen-color-text)]", children: g }) : null
|
|
4596
4598
|
] }) : null,
|
|
4597
4599
|
/* @__PURE__ */ e.jsx(
|
|
4598
4600
|
"div",
|
|
@@ -4634,10 +4636,10 @@ const $o = ({
|
|
|
4634
4636
|
id: c,
|
|
4635
4637
|
...l
|
|
4636
4638
|
}) => {
|
|
4637
|
-
const d = De(), m = c ?? d, u = `${m}-label`, h = `${m}-description`, k = typeof r == "boolean", [
|
|
4639
|
+
const d = De(), m = c ?? d, u = `${m}-label`, h = `${m}-description`, k = typeof r == "boolean", [g, N] = D(n), j = k ? r : g, b = t === "sm", T = !!a, z = (_) => {
|
|
4638
4640
|
if (o) return;
|
|
4639
|
-
const
|
|
4640
|
-
k || N(
|
|
4641
|
+
const F = _.target.checked;
|
|
4642
|
+
k || N(F), i == null || i(F);
|
|
4641
4643
|
};
|
|
4642
4644
|
return /* @__PURE__ */ e.jsxs(
|
|
4643
4645
|
"label",
|
|
@@ -4682,7 +4684,7 @@ const $o = ({
|
|
|
4682
4684
|
className: p(
|
|
4683
4685
|
"flex items-center justify-center rounded-full border transition-all",
|
|
4684
4686
|
b ? "h-4 w-4" : "h-5 w-5",
|
|
4685
|
-
j ? "border-[var(--lumen-color-primary)] bg-[var(--lumen-color-surface)] text-[var(--lumen-color-primary)] shadow-[0_8px_18px_var(--lumen-color-focus-ring)]" : "border-[var(--lumen-color-border
|
|
4687
|
+
j ? "border-[var(--lumen-color-primary)] bg-[var(--lumen-color-surface)] text-[var(--lumen-color-primary)] shadow-[0_8px_18px_var(--lumen-color-focus-ring)]" : "border-[var(--lumen-color-border)] bg-[var(--lumen-color-surface)] text-transparent",
|
|
4686
4688
|
!o && "peer-focus-visible:ring-2 peer-focus-visible:ring-[var(--lumen-color-info-border)]/70 peer-focus-visible:ring-offset-2",
|
|
4687
4689
|
!o && !j && "hover:border-[var(--lumen-color-info-border)] hover:bg-[var(--lumen-color-surface-hover)]"
|
|
4688
4690
|
),
|
|
@@ -4740,7 +4742,7 @@ const $o = ({
|
|
|
4740
4742
|
role: d = "radiogroup",
|
|
4741
4743
|
...m
|
|
4742
4744
|
}) => {
|
|
4743
|
-
const u = De(), h = o ?? u, k = r !== void 0, [
|
|
4745
|
+
const u = De(), h = o ?? u, k = r !== void 0, [g, N] = D(n), j = k ? r : g, b = (T) => {
|
|
4744
4746
|
k || N(T), c == null || c(T);
|
|
4745
4747
|
};
|
|
4746
4748
|
return /* @__PURE__ */ e.jsx(
|
|
@@ -4807,7 +4809,7 @@ Mo.displayName = "Scrollbar";
|
|
|
4807
4809
|
const Ro = {
|
|
4808
4810
|
sm: "h-7 px-3 text-[12px]",
|
|
4809
4811
|
md: "h-[var(--lumen-control-height-md)] px-4 text-[14px]"
|
|
4810
|
-
},
|
|
4812
|
+
}, Os = ({
|
|
4811
4813
|
value: t,
|
|
4812
4814
|
options: r,
|
|
4813
4815
|
onChange: n,
|
|
@@ -4874,95 +4876,88 @@ const Lo = ({
|
|
|
4874
4876
|
children: r,
|
|
4875
4877
|
placement: n = "top",
|
|
4876
4878
|
showDelay: o = 350,
|
|
4877
|
-
hideDelay: s =
|
|
4879
|
+
hideDelay: s = 150,
|
|
4878
4880
|
disabled: a = !1,
|
|
4879
4881
|
className: i,
|
|
4880
|
-
offset: x =
|
|
4882
|
+
offset: x = 12,
|
|
4881
4883
|
showArrow: c = !0
|
|
4882
4884
|
}) => {
|
|
4883
4885
|
const [l, d] = D("hidden"), [m, u] = D({
|
|
4884
4886
|
position: "fixed",
|
|
4885
4887
|
pointerEvents: "none"
|
|
4886
|
-
}), [h, k] = D(n), [
|
|
4888
|
+
}), [h, k] = D(n), [g, N] = D({}), j = se(null), b = se(null), T = se(void 0), z = se(void 0), _ = P(() => {
|
|
4887
4889
|
clearTimeout(T.current), clearTimeout(z.current), T.current = void 0, z.current = void 0;
|
|
4888
|
-
}, []),
|
|
4889
|
-
const B = j.current,
|
|
4890
|
-
if (!B || !
|
|
4890
|
+
}, []), F = P(() => {
|
|
4891
|
+
const B = j.current, L = b.current;
|
|
4892
|
+
if (!B || !L) return;
|
|
4891
4893
|
const v = B.getBoundingClientRect(), S = {
|
|
4892
|
-
width:
|
|
4893
|
-
height:
|
|
4894
|
-
},
|
|
4894
|
+
width: L.offsetWidth,
|
|
4895
|
+
height: L.offsetHeight
|
|
4896
|
+
}, M = jr(v, S, n, x);
|
|
4895
4897
|
u({
|
|
4896
4898
|
position: "fixed",
|
|
4897
|
-
left:
|
|
4898
|
-
top:
|
|
4899
|
+
left: M.x,
|
|
4900
|
+
top: M.y,
|
|
4899
4901
|
zIndex: 1200,
|
|
4900
4902
|
pointerEvents: "none"
|
|
4901
|
-
}), k(
|
|
4902
|
-
}, [n, x]),
|
|
4903
|
-
a || (
|
|
4903
|
+
}), k(M.actualPlacement), N(M.arrowStyle);
|
|
4904
|
+
}, [n, x]), R = P(() => {
|
|
4905
|
+
a || (_(), T.current = setTimeout(() => {
|
|
4904
4906
|
d("entering");
|
|
4905
4907
|
}, o));
|
|
4906
|
-
}, [a, o,
|
|
4907
|
-
|
|
4908
|
+
}, [a, o, _]), C = P(() => {
|
|
4909
|
+
_(), l !== "hidden" && (z.current = setTimeout(() => {
|
|
4908
4910
|
d("exiting");
|
|
4909
|
-
}, s);
|
|
4910
|
-
}, [s,
|
|
4911
|
-
|
|
4912
|
-
}, [
|
|
4911
|
+
}, s));
|
|
4912
|
+
}, [l, s, _]), H = P(() => {
|
|
4913
|
+
_(), d("hidden");
|
|
4914
|
+
}, [_]);
|
|
4913
4915
|
gt(() => {
|
|
4914
|
-
l === "entering" && (
|
|
4915
|
-
|
|
4916
|
-
d("visible");
|
|
4917
|
-
});
|
|
4918
|
-
}));
|
|
4919
|
-
}, [l, M]), ee(() => {
|
|
4920
|
-
if (l === "exiting") {
|
|
4921
|
-
const B = setTimeout(() => d("hidden"), 150);
|
|
4922
|
-
return () => clearTimeout(B);
|
|
4923
|
-
}
|
|
4924
|
-
}, [l]), ee(() => (window.addEventListener("scroll", g, {
|
|
4916
|
+
l === "entering" && F();
|
|
4917
|
+
}, [l, F]), re(() => (window.addEventListener("scroll", H, {
|
|
4925
4918
|
capture: !0,
|
|
4926
4919
|
passive: !0
|
|
4927
4920
|
}), () => {
|
|
4928
|
-
window.removeEventListener("scroll",
|
|
4929
|
-
}), [
|
|
4921
|
+
window.removeEventListener("scroll", H, !0);
|
|
4922
|
+
}), [H]), re(() => {
|
|
4930
4923
|
if (l !== "visible" && l !== "entering") return;
|
|
4931
|
-
const B = () =>
|
|
4924
|
+
const B = () => F();
|
|
4932
4925
|
return window.addEventListener("resize", B, { passive: !0 }), () => {
|
|
4933
4926
|
window.removeEventListener("resize", B);
|
|
4934
4927
|
};
|
|
4935
|
-
}, [l,
|
|
4936
|
-
|
|
4937
|
-
|
|
4938
|
-
|
|
4928
|
+
}, [l, F]), re(() => _, [_]);
|
|
4929
|
+
const y = P(() => R(), [R]), Z = P(() => C(), [C]), oe = P((B) => {
|
|
4930
|
+
B.target === B.currentTarget && d((L) => L === "entering" ? "visible" : L === "exiting" ? "hidden" : L);
|
|
4931
|
+
}, []), X = l !== "hidden" ? /* @__PURE__ */ e.jsxs(
|
|
4939
4932
|
"div",
|
|
4940
4933
|
{
|
|
4941
4934
|
ref: b,
|
|
4935
|
+
"data-lumen-motion": !0,
|
|
4936
|
+
"data-placement": h,
|
|
4937
|
+
"data-state": l === "entering" ? "opening" : l === "exiting" ? "closing" : "open",
|
|
4942
4938
|
className: p(
|
|
4943
|
-
"bg-[var(--lumen-color-tooltip)]/90 text-[var(--lumen-color-on-primary)] text-[12px] px-3 py-1.5 rounded-md shadow-xl whitespace-nowrap",
|
|
4939
|
+
"lumen-tooltip bg-[var(--lumen-color-tooltip)]/90 text-[var(--lumen-color-on-primary)] text-[12px] px-3 py-1.5 rounded-md shadow-xl whitespace-nowrap",
|
|
4944
4940
|
Po(h),
|
|
4945
|
-
"transition-[opacity,transform] duration-150 ease-out",
|
|
4946
|
-
l === "visible" ? "opacity-100 scale-100" : "opacity-0 scale-95",
|
|
4947
4941
|
i
|
|
4948
4942
|
),
|
|
4949
4943
|
style: m,
|
|
4950
4944
|
role: "tooltip",
|
|
4945
|
+
onAnimationEnd: oe,
|
|
4951
4946
|
children: [
|
|
4952
4947
|
t,
|
|
4953
|
-
c && /* @__PURE__ */ e.jsx("div", { style:
|
|
4948
|
+
c && /* @__PURE__ */ e.jsx("div", { style: g })
|
|
4954
4949
|
]
|
|
4955
4950
|
}
|
|
4956
4951
|
) : null;
|
|
4957
4952
|
return /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
|
|
4958
4953
|
$r(r, {
|
|
4959
4954
|
ref: Do(r.ref, j),
|
|
4960
|
-
onPointerEnter:
|
|
4961
|
-
onPointerLeave:
|
|
4955
|
+
onPointerEnter: y,
|
|
4956
|
+
onPointerLeave: Z
|
|
4962
4957
|
}),
|
|
4963
4958
|
X && Re(X, document.body)
|
|
4964
4959
|
] });
|
|
4965
|
-
},
|
|
4960
|
+
}, Fs = ({
|
|
4966
4961
|
sections: t,
|
|
4967
4962
|
activeValue: r,
|
|
4968
4963
|
collapsed: n = !1,
|
|
@@ -4996,7 +4991,7 @@ const Lo = ({
|
|
|
4996
4991
|
/* @__PURE__ */ e.jsx("span", { className: n ? "sr-only" : "min-w-0 truncate", children: l.label })
|
|
4997
4992
|
] }), k = () => {
|
|
4998
4993
|
l.disabled || i == null || i(l.value, l);
|
|
4999
|
-
},
|
|
4994
|
+
}, g = l.href && !l.disabled ? /* @__PURE__ */ e.jsx(
|
|
5000
4995
|
"a",
|
|
5001
4996
|
{
|
|
5002
4997
|
href: l.href,
|
|
@@ -5020,18 +5015,18 @@ const Lo = ({
|
|
|
5020
5015
|
children: h
|
|
5021
5016
|
}
|
|
5022
5017
|
);
|
|
5023
|
-
return n ? /* @__PURE__ */ e.jsx(Lo, { content: l.label, placement: "right",
|
|
5018
|
+
return n ? /* @__PURE__ */ e.jsx(Lo, { content: l.label, placement: "right", children: g }, l.value) : /* @__PURE__ */ e.jsx(xe.Fragment, { children: g }, l.value);
|
|
5024
5019
|
})
|
|
5025
5020
|
]
|
|
5026
5021
|
},
|
|
5027
5022
|
x.title ?? c
|
|
5028
5023
|
))
|
|
5029
5024
|
}
|
|
5030
|
-
),
|
|
5025
|
+
), Oo = {
|
|
5031
5026
|
sm: "h-1",
|
|
5032
5027
|
md: "h-1.5",
|
|
5033
5028
|
lg: "h-2"
|
|
5034
|
-
},
|
|
5029
|
+
}, Fo = {
|
|
5035
5030
|
info: "var(--lumen-color-primary)",
|
|
5036
5031
|
success: "var(--lumen-color-success)",
|
|
5037
5032
|
warning: "var(--lumen-color-warning)",
|
|
@@ -5053,10 +5048,10 @@ const Lo = ({
|
|
|
5053
5048
|
disabled: u,
|
|
5054
5049
|
className: h,
|
|
5055
5050
|
...k
|
|
5056
|
-
},
|
|
5051
|
+
}, g) => {
|
|
5057
5052
|
const N = o > n ? o : n + 100, j = typeof t == "number", [b, T] = D(
|
|
5058
5053
|
_t(r ?? n, n, N)
|
|
5059
|
-
), z = _t(j ? t : b, n, N), _ = (z - n) / (N - n) * 100,
|
|
5054
|
+
), z = _t(j ? t : b, n, N), _ = (z - n) / (N - n) * 100, F = (d == null ? void 0 : d(z)) ?? z, R = Fo[i];
|
|
5060
5055
|
return /* @__PURE__ */ e.jsxs(
|
|
5061
5056
|
"div",
|
|
5062
5057
|
{
|
|
@@ -5067,7 +5062,7 @@ const Lo = ({
|
|
|
5067
5062
|
children: [
|
|
5068
5063
|
x || c ? /* @__PURE__ */ e.jsxs("div", { className: "mb-2 flex items-center justify-between gap-3 text-[13px] leading-5", children: [
|
|
5069
5064
|
/* @__PURE__ */ e.jsx("span", { className: "min-w-0 font-medium text-[var(--lumen-color-text-secondary)]", children: x }),
|
|
5070
|
-
c ? /* @__PURE__ */ e.jsx("span", { className: "shrink-0 text-[var(--lumen-color-text)]", children:
|
|
5065
|
+
c ? /* @__PURE__ */ e.jsx("span", { className: "shrink-0 text-[var(--lumen-color-text)]", children: F }) : null
|
|
5071
5066
|
] }) : null,
|
|
5072
5067
|
/* @__PURE__ */ e.jsxs("div", { className: "relative flex h-5 items-center", children: [
|
|
5073
5068
|
/* @__PURE__ */ e.jsx(
|
|
@@ -5075,13 +5070,13 @@ const Lo = ({
|
|
|
5075
5070
|
{
|
|
5076
5071
|
className: p(
|
|
5077
5072
|
"pointer-events-none absolute left-0 right-0 overflow-hidden rounded-full bg-[var(--lumen-color-surface-muted)]",
|
|
5078
|
-
|
|
5073
|
+
Oo[a]
|
|
5079
5074
|
),
|
|
5080
5075
|
children: /* @__PURE__ */ e.jsx(
|
|
5081
5076
|
"div",
|
|
5082
5077
|
{
|
|
5083
5078
|
className: "h-full rounded-full",
|
|
5084
|
-
style: { width: `${_}%`, backgroundColor:
|
|
5079
|
+
style: { width: `${_}%`, backgroundColor: R }
|
|
5085
5080
|
}
|
|
5086
5081
|
)
|
|
5087
5082
|
}
|
|
@@ -5090,18 +5085,18 @@ const Lo = ({
|
|
|
5090
5085
|
"input",
|
|
5091
5086
|
{
|
|
5092
5087
|
...k,
|
|
5093
|
-
ref:
|
|
5088
|
+
ref: g,
|
|
5094
5089
|
type: "range",
|
|
5095
5090
|
min: n,
|
|
5096
5091
|
max: N,
|
|
5097
5092
|
step: s,
|
|
5098
5093
|
value: z,
|
|
5099
5094
|
disabled: u,
|
|
5100
|
-
"aria-valuetext": typeof
|
|
5095
|
+
"aria-valuetext": typeof F == "string" || typeof F == "number" ? String(F) : void 0,
|
|
5101
5096
|
className: "absolute inset-0 h-5 w-full cursor-pointer appearance-none bg-transparent outline-none disabled:cursor-not-allowed [&::-moz-range-thumb]:h-4 [&::-moz-range-thumb]:w-4 [&::-moz-range-thumb]:appearance-none [&::-moz-range-thumb]:rounded-full [&::-moz-range-thumb]:border-2 [&::-moz-range-thumb]:border-[var(--lumen-color-surface)] [&::-moz-range-thumb]:bg-[var(--lumen-slider-color)] [&::-moz-range-thumb]:shadow-[0_1px_4px_var(--lumen-color-shadow)] [&::-webkit-slider-thumb]:h-4 [&::-webkit-slider-thumb]:w-4 [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:border-2 [&::-webkit-slider-thumb]:border-[var(--lumen-color-surface)] [&::-webkit-slider-thumb]:bg-[var(--lumen-slider-color)] [&::-webkit-slider-thumb]:shadow-[0_1px_4px_var(--lumen-color-shadow)] focus-visible:[&::-moz-range-thumb]:ring-4 focus-visible:[&::-moz-range-thumb]:ring-[var(--lumen-color-focus-ring)] focus-visible:[&::-webkit-slider-thumb]:ring-4 focus-visible:[&::-webkit-slider-thumb]:ring-[var(--lumen-color-focus-ring)]",
|
|
5102
5097
|
style: {
|
|
5103
|
-
accentColor:
|
|
5104
|
-
"--lumen-slider-color":
|
|
5098
|
+
accentColor: R,
|
|
5099
|
+
"--lumen-slider-color": R
|
|
5105
5100
|
},
|
|
5106
5101
|
onChange: (C) => {
|
|
5107
5102
|
const H = Number(C.target.value);
|
|
@@ -5190,7 +5185,7 @@ const Yo = {
|
|
|
5190
5185
|
a
|
|
5191
5186
|
),
|
|
5192
5187
|
children: t.map((c, l) => {
|
|
5193
|
-
const d = nr(c, l, r), m = t[l + 1], u = m ? nr(m, l + 1, r) : void 0, h = !!s && !c.disabled, k = o === "sm" ? "h-9 w-9" : "h-10 w-10",
|
|
5188
|
+
const d = nr(c, l, r), m = t[l + 1], u = m ? nr(m, l + 1, r) : void 0, h = !!s && !c.disabled, k = o === "sm" ? "h-9 w-9" : "h-10 w-10", g = o === "sm" ? "h-7 w-7 text-[12px]" : "h-8 w-8 text-[13px]", N = o === "sm" ? d === "process" ? "after:left-[calc(50%+22px)]" : "after:left-[calc(50%+18px)]" : d === "process" ? "after:left-[calc(50%+24px)]" : "after:left-[calc(50%+20px)]", j = o === "sm" ? u === "process" ? "after:right-[calc(-50%+22px)]" : "after:right-[calc(-50%+18px)]" : u === "process" ? "after:right-[calc(-50%+24px)]" : "after:right-[calc(-50%+20px)]", b = o === "sm" ? "after:top-[17px]" : "after:top-[19px]", T = o === "sm" ? d === "process" ? "after:top-10" : "after:top-9" : d === "process" ? "after:top-11" : "after:top-10", z = u === "process" ? "after:bottom-[-12px]" : "after:bottom-[-16px]", _ = o === "sm" ? "after:left-[17px]" : "after:left-[19px]", F = c.icon ?? (d === "finish" ? /* @__PURE__ */ e.jsx(Dt, { size: 15, strokeWidth: 2.5 }) : d === "error" ? /* @__PURE__ */ e.jsx(Ve, { size: 15, strokeWidth: 2.5 }) : l + 1), R = /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
|
|
5194
5189
|
/* @__PURE__ */ e.jsx(
|
|
5195
5190
|
"span",
|
|
5196
5191
|
{
|
|
@@ -5205,10 +5200,10 @@ const Yo = {
|
|
|
5205
5200
|
{
|
|
5206
5201
|
className: p(
|
|
5207
5202
|
"flex items-center justify-center rounded-full font-medium transition-colors",
|
|
5208
|
-
|
|
5203
|
+
g,
|
|
5209
5204
|
Yo[d]
|
|
5210
5205
|
),
|
|
5211
|
-
children:
|
|
5206
|
+
children: F
|
|
5212
5207
|
}
|
|
5213
5208
|
)
|
|
5214
5209
|
}
|
|
@@ -5260,7 +5255,7 @@ const Yo = {
|
|
|
5260
5255
|
n === "horizontal" ? "flex-col items-center px-2 text-center" : "items-start text-left"
|
|
5261
5256
|
),
|
|
5262
5257
|
onClick: () => s == null ? void 0 : s(l, c),
|
|
5263
|
-
children:
|
|
5258
|
+
children: R
|
|
5264
5259
|
}
|
|
5265
5260
|
) : /* @__PURE__ */ e.jsx(
|
|
5266
5261
|
"div",
|
|
@@ -5269,7 +5264,7 @@ const Yo = {
|
|
|
5269
5264
|
"flex gap-3",
|
|
5270
5265
|
n === "horizontal" ? "flex-col items-center px-2 text-center" : "items-start text-left"
|
|
5271
5266
|
),
|
|
5272
|
-
children:
|
|
5267
|
+
children: R
|
|
5273
5268
|
}
|
|
5274
5269
|
)
|
|
5275
5270
|
},
|
|
@@ -5292,7 +5287,7 @@ const Ws = ({
|
|
|
5292
5287
|
id: c,
|
|
5293
5288
|
...l
|
|
5294
5289
|
}) => {
|
|
5295
|
-
const d = De(), m = c ?? d, u = `${m}-label`, h = `${m}-description`, k = typeof r == "boolean", [
|
|
5290
|
+
const d = De(), m = c ?? d, u = `${m}-label`, h = `${m}-description`, k = typeof r == "boolean", [g, N] = D(n), j = k ? r : g, b = t === "sm", T = (z) => {
|
|
5296
5291
|
if (o) return;
|
|
5297
5292
|
const _ = z.target.checked;
|
|
5298
5293
|
k || N(_), i == null || i(_);
|
|
@@ -5474,7 +5469,7 @@ const Hs = ({
|
|
|
5474
5469
|
}, Xo = {
|
|
5475
5470
|
none: "resize-none",
|
|
5476
5471
|
vertical: "resize-y"
|
|
5477
|
-
}, Qo = (t) => t ? "border-[var(--lumen-color-danger)] focus:border-[var(--lumen-color-danger)] focus:ring-2 focus:ring-[var(--lumen-color-danger)]/10" : "border-[var(--lumen-color-border
|
|
5472
|
+
}, Qo = (t) => t ? "border-[var(--lumen-color-danger)] focus:border-[var(--lumen-color-danger)] focus:ring-2 focus:ring-[var(--lumen-color-danger)]/10" : "border-[var(--lumen-color-border)] hover:border-[var(--lumen-color-border-hover)] focus:border-[var(--lumen-color-primary)] focus:ring-2 focus:ring-[var(--lumen-color-primary)]/10", Zo = xe.forwardRef(
|
|
5478
5473
|
({
|
|
5479
5474
|
size: t = "lg",
|
|
5480
5475
|
resize: r = "vertical",
|
|
@@ -5490,7 +5485,7 @@ const Hs = ({
|
|
|
5490
5485
|
}, m) => {
|
|
5491
5486
|
const [u, h] = xe.useState(
|
|
5492
5487
|
() => String(x ?? "").length
|
|
5493
|
-
), k = i === void 0 ? u : String(i ?? "").length,
|
|
5488
|
+
), k = i === void 0 ? u : String(i ?? "").length, g = /* @__PURE__ */ e.jsx(
|
|
5494
5489
|
"textarea",
|
|
5495
5490
|
{
|
|
5496
5491
|
ref: m,
|
|
@@ -5517,7 +5512,7 @@ const Hs = ({
|
|
|
5517
5512
|
}
|
|
5518
5513
|
);
|
|
5519
5514
|
return o ? /* @__PURE__ */ e.jsxs("div", { className: "relative w-full", children: [
|
|
5520
|
-
|
|
5515
|
+
g,
|
|
5521
5516
|
/* @__PURE__ */ e.jsxs(
|
|
5522
5517
|
"span",
|
|
5523
5518
|
{
|
|
@@ -5529,7 +5524,7 @@ const Hs = ({
|
|
|
5529
5524
|
]
|
|
5530
5525
|
}
|
|
5531
5526
|
)
|
|
5532
|
-
] }) :
|
|
5527
|
+
] }) : g;
|
|
5533
5528
|
}
|
|
5534
5529
|
);
|
|
5535
5530
|
Zo.displayName = "Textarea";
|
|
@@ -5554,48 +5549,48 @@ const Jo = /^((?:[01]\d|2[0-3])):([0-5]\d)(?::([0-5]\d))?$/, es = 220, ts = 326,
|
|
|
5554
5549
|
minExclusiveTime: x,
|
|
5555
5550
|
disabled: c = !1
|
|
5556
5551
|
}) => {
|
|
5557
|
-
const l = or(t), [d, m] = D(l.hour), [u, h] = D(l.minute), [k,
|
|
5552
|
+
const l = or(t), [d, m] = D(l.hour), [u, h] = D(l.minute), [k, g] = D(l.second), [N, j] = D(!1), [b, T] = D(!1), [z, _] = D("down"), F = se(null), R = se(null), C = se(null), H = se(null), [y, Z] = D({
|
|
5558
5553
|
position: "fixed",
|
|
5559
5554
|
zIndex: 9999
|
|
5560
|
-
}),
|
|
5555
|
+
}), oe = a === "second" ? `${d}:${u}:${k}` : `${d}:${u}`, X = sr(x), B = sr(oe), L = X !== null && B !== null && B <= X, v = P(() => {
|
|
5561
5556
|
var W, Y;
|
|
5562
|
-
const A = (W =
|
|
5557
|
+
const A = (W = R.current) == null ? void 0 : W.getBoundingClientRect();
|
|
5563
5558
|
if (!A) return;
|
|
5564
|
-
const E = ((Y = C.current) == null ? void 0 : Y.offsetHeight) || ts,
|
|
5565
|
-
_(
|
|
5559
|
+
const E = ((Y = C.current) == null ? void 0 : Y.offsetHeight) || ts, ee = Math.min(es, Math.max(0, window.innerWidth - 16)), te = window.innerHeight - A.bottom < E + It;
|
|
5560
|
+
_(te ? "up" : "down"), Z({
|
|
5566
5561
|
position: "fixed",
|
|
5567
5562
|
left: Math.min(
|
|
5568
5563
|
Math.max(8, A.left),
|
|
5569
|
-
Math.max(8, window.innerWidth -
|
|
5564
|
+
Math.max(8, window.innerWidth - ee - 8)
|
|
5570
5565
|
),
|
|
5571
|
-
top:
|
|
5572
|
-
width:
|
|
5566
|
+
top: te ? Math.max(8, A.top - E - It) : A.bottom + It,
|
|
5567
|
+
width: ee,
|
|
5573
5568
|
maxHeight: "calc(100dvh - 16px)",
|
|
5574
5569
|
zIndex: 9999
|
|
5575
5570
|
});
|
|
5576
|
-
}, []), S =
|
|
5571
|
+
}, []), S = P(() => {
|
|
5577
5572
|
H.current && clearTimeout(H.current), j(!1), T(!1);
|
|
5578
|
-
}, []),
|
|
5573
|
+
}, []), M = P(() => {
|
|
5579
5574
|
H.current && clearTimeout(H.current), T(!0), H.current = setTimeout(
|
|
5580
5575
|
S,
|
|
5581
5576
|
rs
|
|
5582
5577
|
);
|
|
5583
5578
|
}, [S]), Q = () => {
|
|
5584
5579
|
const A = or(t);
|
|
5585
|
-
m(A.hour), h(A.minute),
|
|
5580
|
+
m(A.hour), h(A.minute), g(A.second), T(!1), v(), j(!0);
|
|
5586
5581
|
};
|
|
5587
|
-
|
|
5582
|
+
re(() => {
|
|
5588
5583
|
if (!N) return;
|
|
5589
5584
|
v();
|
|
5590
5585
|
const A = (E) => {
|
|
5591
|
-
var
|
|
5592
|
-
const
|
|
5593
|
-
(
|
|
5586
|
+
var te, W;
|
|
5587
|
+
const ee = E.target;
|
|
5588
|
+
(te = F.current) != null && te.contains(ee) || (W = C.current) != null && W.contains(ee) || M();
|
|
5594
5589
|
};
|
|
5595
5590
|
return window.addEventListener("resize", v), window.addEventListener("scroll", v, !0), document.addEventListener("mousedown", A), () => {
|
|
5596
5591
|
window.removeEventListener("resize", v), window.removeEventListener("scroll", v, !0), document.removeEventListener("mousedown", A);
|
|
5597
5592
|
};
|
|
5598
|
-
}, [
|
|
5593
|
+
}, [M, N, v]), re(
|
|
5599
5594
|
() => () => {
|
|
5600
5595
|
H.current && clearTimeout(H.current);
|
|
5601
5596
|
},
|
|
@@ -5603,19 +5598,19 @@ const Jo = /^((?:[01]\d|2[0-3])):([0-5]\d)(?::([0-5]\d))?$/, es = 220, ts = 326,
|
|
|
5603
5598
|
);
|
|
5604
5599
|
const J = () => {
|
|
5605
5600
|
const A = /* @__PURE__ */ new Date();
|
|
5606
|
-
m($t(A.getHours())), h($t(A.getMinutes())),
|
|
5601
|
+
m($t(A.getHours())), h($t(A.getMinutes())), g($t(A.getSeconds()));
|
|
5607
5602
|
}, f = Lt(t), I = f ? a === "second" ? `${f.hour}:${f.minute}:${f.second}` : `${f.hour}:${f.minute}` : "";
|
|
5608
|
-
return /* @__PURE__ */ e.jsxs("div", { ref:
|
|
5603
|
+
return /* @__PURE__ */ e.jsxs("div", { ref: F, className: p("relative", o), children: [
|
|
5609
5604
|
/* @__PURE__ */ e.jsxs(
|
|
5610
5605
|
"button",
|
|
5611
5606
|
{
|
|
5612
|
-
ref:
|
|
5607
|
+
ref: R,
|
|
5613
5608
|
type: "button",
|
|
5614
5609
|
disabled: c,
|
|
5615
5610
|
"aria-label": n,
|
|
5616
|
-
onClick: () => N ?
|
|
5611
|
+
onClick: () => N ? M() : Q(),
|
|
5617
5612
|
className: p(
|
|
5618
|
-
"flex w-full cursor-pointer items-center border border-[var(--lumen-color-border
|
|
5613
|
+
"flex w-full cursor-pointer items-center border border-[var(--lumen-color-border)] bg-[var(--lumen-color-surface)] outline-none transition-all hover:border-[var(--lumen-color-border-hover)] focus:border-[var(--lumen-color-primary)] focus:ring-2 focus:ring-[var(--lumen-color-primary)]/10",
|
|
5619
5614
|
Ee.control,
|
|
5620
5615
|
ns[s],
|
|
5621
5616
|
c && "cursor-not-allowed bg-[var(--lumen-color-surface-muted)] opacity-60"
|
|
@@ -5650,10 +5645,11 @@ const Jo = /^((?:[01]\d|2[0-3])):([0-5]\d)(?::([0-5]\d))?$/, es = 220, ts = 326,
|
|
|
5650
5645
|
"div",
|
|
5651
5646
|
{
|
|
5652
5647
|
ref: C,
|
|
5648
|
+
"data-ui": "time-picker-panel",
|
|
5653
5649
|
"data-time-picker-panel": !0,
|
|
5654
5650
|
className: "overflow-x-hidden overflow-y-auto rounded-[8px] border border-[var(--lumen-color-border)] bg-[var(--lumen-color-surface)] shadow-[0_18px_46px_var(--lumen-color-shadow)]",
|
|
5655
5651
|
style: {
|
|
5656
|
-
...
|
|
5652
|
+
...y,
|
|
5657
5653
|
animation: b ? z === "up" ? "lumen-dropdown-out-up 0.12s ease-in forwards" : "lumen-dropdown-out 0.12s ease-in forwards" : z === "up" ? "lumen-dropdown-in-up 0.12s ease-out" : "lumen-dropdown-in 0.12s ease-out",
|
|
5658
5654
|
transformOrigin: z === "up" ? "bottom" : "top"
|
|
5659
5655
|
},
|
|
@@ -5666,7 +5662,7 @@ const Jo = /^((?:[01]\d|2[0-3])):([0-5]\d)(?::([0-5]\d))?$/, es = 220, ts = 326,
|
|
|
5666
5662
|
second: k,
|
|
5667
5663
|
onHourChange: m,
|
|
5668
5664
|
onMinuteChange: h,
|
|
5669
|
-
onSecondChange:
|
|
5665
|
+
onSecondChange: g,
|
|
5670
5666
|
precision: a,
|
|
5671
5667
|
minuteStep: i
|
|
5672
5668
|
}
|
|
@@ -5694,13 +5690,13 @@ const Jo = /^((?:[01]\d|2[0-3])):([0-5]\d)(?::([0-5]\d))?$/, es = 220, ts = 326,
|
|
|
5694
5690
|
}
|
|
5695
5691
|
),
|
|
5696
5692
|
/* @__PURE__ */ e.jsx(
|
|
5697
|
-
|
|
5693
|
+
Oe,
|
|
5698
5694
|
{
|
|
5699
5695
|
type: "button",
|
|
5700
5696
|
size: "sm",
|
|
5701
|
-
disabled:
|
|
5697
|
+
disabled: L,
|
|
5702
5698
|
onClick: () => {
|
|
5703
|
-
r(
|
|
5699
|
+
r(oe), S();
|
|
5704
5700
|
},
|
|
5705
5701
|
children: "确定"
|
|
5706
5702
|
}
|
|
@@ -5849,9 +5845,9 @@ const Jo = /^((?:[01]\d|2[0-3])):([0-5]\d)(?::([0-5]\d))?$/, es = 220, ts = 326,
|
|
|
5849
5845
|
}
|
|
5850
5846
|
};
|
|
5851
5847
|
let Ie = null, Ae = null;
|
|
5852
|
-
const Je = /* @__PURE__ */ new Set(),
|
|
5848
|
+
const Je = /* @__PURE__ */ new Set(), Ot = [], it = /* @__PURE__ */ new Set(), ls = () => `toast-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`, Nr = (t) => `${t.type}:${t.message}`, lr = (t) => {
|
|
5853
5849
|
if (Je.size === 0 && t) {
|
|
5854
|
-
|
|
5850
|
+
Ot.push(t);
|
|
5855
5851
|
return;
|
|
5856
5852
|
}
|
|
5857
5853
|
Je.forEach((r) => r(t));
|
|
@@ -5859,17 +5855,17 @@ const Je = /* @__PURE__ */ new Set(), Ft = [], it = /* @__PURE__ */ new Set(), l
|
|
|
5859
5855
|
if (typeof document > "u" || (Ae && !document.body.contains(Ae) && (Ie == null || Ie.unmount(), Ie = null, Ae = null, Je.clear()), Ie && Ae)) return;
|
|
5860
5856
|
const t = document.getElementById(ar);
|
|
5861
5857
|
Ae = t || document.createElement("div"), Ae.id = ar, t || document.body.appendChild(Ae), Ie = Yr(Ae), Ie.render(/* @__PURE__ */ e.jsx(ds, {}));
|
|
5862
|
-
}, cs = (t) => (Je.add(t),
|
|
5858
|
+
}, cs = (t) => (Je.add(t), Ot.splice(0).forEach((r) => t(r)), () => {
|
|
5863
5859
|
Je.delete(t);
|
|
5864
5860
|
}), ds = () => {
|
|
5865
|
-
const [t, r] = D([]), n =
|
|
5861
|
+
const [t, r] = D([]), n = se(/* @__PURE__ */ new Map()), o = P((l) => {
|
|
5866
5862
|
const d = n.current.get(l);
|
|
5867
5863
|
(d == null ? void 0 : d.timeoutId) != null && typeof window < "u" && window.clearTimeout(d.timeoutId), n.current.delete(l);
|
|
5868
|
-
}, []), s =
|
|
5864
|
+
}, []), s = P((l) => {
|
|
5869
5865
|
typeof window > "u" || (o(l), r(
|
|
5870
5866
|
(d) => d.map((m) => m.id === l ? { ...m, closing: !0 } : m)
|
|
5871
5867
|
));
|
|
5872
|
-
}, [o]), a =
|
|
5868
|
+
}, [o]), a = P((l, d) => {
|
|
5873
5869
|
if (typeof window > "u") return;
|
|
5874
5870
|
const m = window.setTimeout(() => s(l), d);
|
|
5875
5871
|
n.current.set(l, {
|
|
@@ -5877,19 +5873,19 @@ const Je = /* @__PURE__ */ new Set(), Ft = [], it = /* @__PURE__ */ new Set(), l
|
|
|
5877
5873
|
remaining: d,
|
|
5878
5874
|
startedAt: Date.now()
|
|
5879
5875
|
});
|
|
5880
|
-
}, [s]), i =
|
|
5876
|
+
}, [s]), i = P((l) => {
|
|
5881
5877
|
const d = n.current.get(l);
|
|
5882
5878
|
!d || d.timeoutId == null || typeof window > "u" || (window.clearTimeout(d.timeoutId), d.remaining = Math.max(0, d.remaining - (Date.now() - d.startedAt)), d.timeoutId = null);
|
|
5883
|
-
}, []), x =
|
|
5879
|
+
}, []), x = P((l) => {
|
|
5884
5880
|
const d = n.current.get(l);
|
|
5885
5881
|
!d || d.timeoutId != null || a(l, d.remaining);
|
|
5886
|
-
}, [a]), c =
|
|
5882
|
+
}, [a]), c = P((l) => {
|
|
5887
5883
|
o(l), r((d) => {
|
|
5888
5884
|
const m = d.find((u) => u.id === l);
|
|
5889
5885
|
return m && it.delete(Nr(m)), d.filter((u) => u.id !== l);
|
|
5890
5886
|
});
|
|
5891
5887
|
}, [o]);
|
|
5892
|
-
return
|
|
5888
|
+
return re(() => {
|
|
5893
5889
|
const l = n.current, d = cs((m) => {
|
|
5894
5890
|
if (!m) {
|
|
5895
5891
|
l.forEach((u) => {
|
|
@@ -5927,7 +5923,8 @@ const Je = /* @__PURE__ */ new Set(), Ft = [], it = /* @__PURE__ */ new Set(), l
|
|
|
5927
5923
|
return /* @__PURE__ */ e.jsxs(
|
|
5928
5924
|
"div",
|
|
5929
5925
|
{
|
|
5930
|
-
className: `pointer-events-auto relative flex w-full min-w-0 max-w-full items-start gap-2.5 overflow-hidden rounded-[
|
|
5926
|
+
className: `pointer-events-auto relative flex w-full min-w-0 max-w-full items-start gap-2.5 overflow-hidden rounded-[var(--lumen-radius-icon)] border border-[var(--lumen-color-border)] bg-[var(--lumen-color-surface)] px-3 py-3 shadow-[var(--lumen-shadow-dropdown)] pad:gap-3 pad:px-4 ${t.closing ? "animate-[lumen-toast-out_160ms_ease-in_forwards]" : "animate-[lumen-toast-in_180ms_ease-out]"}`,
|
|
5927
|
+
"data-ui": "toast",
|
|
5931
5928
|
"data-toast-id": t.id,
|
|
5932
5929
|
onAnimationEnd: () => {
|
|
5933
5930
|
t.closing && n();
|
|
@@ -5979,7 +5976,7 @@ class Qe {
|
|
|
5979
5976
|
Qe.show(r, "error", n);
|
|
5980
5977
|
}
|
|
5981
5978
|
static clear() {
|
|
5982
|
-
|
|
5979
|
+
Ot.splice(0), it.clear(), lr(null);
|
|
5983
5980
|
}
|
|
5984
5981
|
static resetForTests() {
|
|
5985
5982
|
Qe.clear(), Je.clear(), Ie == null || Ie.unmount(), Ae != null && Ae.parentNode && Ae.parentNode.removeChild(Ae), Ie = null, Ae = null;
|
|
@@ -5999,42 +5996,42 @@ const ms = (t, r) => `${r.label} ${typeof r.description == "string" ? r.descript
|
|
|
5999
5996
|
renderItem: d,
|
|
6000
5997
|
className: m
|
|
6001
5998
|
}) => {
|
|
6002
|
-
const [u, h] = D(""), [k,
|
|
5999
|
+
const [u, h] = D(""), [k, g] = D(""), [N, j] = D([]), [b, T] = D([]), z = me(() => new Set(r), [r]), _ = me(
|
|
6003
6000
|
() => new Map(t.map((v) => [v.key, v])),
|
|
6004
6001
|
[t]
|
|
6005
|
-
),
|
|
6002
|
+
), F = me(
|
|
6006
6003
|
() => t.filter((v) => !z.has(v.key)),
|
|
6007
6004
|
[t, z]
|
|
6008
|
-
),
|
|
6005
|
+
), R = me(
|
|
6009
6006
|
() => r.map((v) => _.get(v)).filter((v) => !!v),
|
|
6010
6007
|
[_, r]
|
|
6011
|
-
), C =
|
|
6008
|
+
), C = F.filter((v) => l(u.trim(), v)), H = R.filter((v) => l(k.trim(), v)), y = new Set(N), Z = new Set(b), oe = N.filter((v) => {
|
|
6012
6009
|
const S = _.get(v);
|
|
6013
6010
|
return S && !S.disabled && !z.has(v);
|
|
6014
6011
|
}), X = b.filter((v) => {
|
|
6015
6012
|
const S = _.get(v);
|
|
6016
6013
|
return S && !S.disabled && z.has(v);
|
|
6017
|
-
}), B = (v, S,
|
|
6018
|
-
const J = new Set(
|
|
6014
|
+
}), B = (v, S, M, Q) => {
|
|
6015
|
+
const J = new Set(M);
|
|
6019
6016
|
S ? J.add(v) : J.delete(v), Q(Array.from(J));
|
|
6020
|
-
},
|
|
6017
|
+
}, L = ({
|
|
6021
6018
|
title: v,
|
|
6022
6019
|
panelItems: S,
|
|
6023
|
-
query:
|
|
6020
|
+
query: M,
|
|
6024
6021
|
setQuery: Q,
|
|
6025
6022
|
selectedKeys: J,
|
|
6026
6023
|
selectedSet: f,
|
|
6027
6024
|
setSelectedKeys: I,
|
|
6028
6025
|
side: A
|
|
6029
6026
|
}) => {
|
|
6030
|
-
const E = S.filter((Y) => !Y.disabled),
|
|
6027
|
+
const E = S.filter((Y) => !Y.disabled), ee = E.filter((Y) => f.has(Y.key)).length, te = E.length > 0 && ee === E.length, W = ee > 0 && !te;
|
|
6031
6028
|
return /* @__PURE__ */ e.jsxs("section", { className: "flex min-h-0 min-w-0 flex-col overflow-hidden rounded-[8px] border border-[var(--lumen-color-border)] bg-[var(--lumen-color-surface)]", children: [
|
|
6032
|
-
/* @__PURE__ */ e.jsxs("header", { className: "flex h-11 shrink-0 items-center gap-2 border-b border-[var(--lumen-color-
|
|
6029
|
+
/* @__PURE__ */ e.jsxs("header", { className: "flex h-11 shrink-0 items-center gap-2 border-b border-[var(--lumen-color-divider)] px-3", children: [
|
|
6033
6030
|
/* @__PURE__ */ e.jsx(
|
|
6034
6031
|
bt,
|
|
6035
6032
|
{
|
|
6036
6033
|
"aria-label": `选择${A === "source" ? "可选" : "已选"}列表全部可见项`,
|
|
6037
|
-
checked:
|
|
6034
|
+
checked: te,
|
|
6038
6035
|
indeterminate: W,
|
|
6039
6036
|
disabled: c || E.length === 0,
|
|
6040
6037
|
onChange: (Y) => {
|
|
@@ -6047,17 +6044,17 @@ const ms = (t, r) => `${r.label} ${typeof r.description == "string" ? r.descript
|
|
|
6047
6044
|
),
|
|
6048
6045
|
/* @__PURE__ */ e.jsx("span", { className: "min-w-0 flex-1 truncate text-[14px] font-normal text-[var(--lumen-color-text)]", children: v }),
|
|
6049
6046
|
/* @__PURE__ */ e.jsxs("span", { className: "text-[13px] text-[var(--lumen-color-text-muted)]", children: [
|
|
6050
|
-
|
|
6047
|
+
ee,
|
|
6051
6048
|
"/",
|
|
6052
6049
|
S.length
|
|
6053
6050
|
] })
|
|
6054
6051
|
] }),
|
|
6055
|
-
a ? /* @__PURE__ */ e.jsx("div", { className: "shrink-0
|
|
6052
|
+
a ? /* @__PURE__ */ e.jsx("div", { className: "shrink-0 px-2 pb-1 pt-3.5", children: /* @__PURE__ */ e.jsx(
|
|
6056
6053
|
yr,
|
|
6057
6054
|
{
|
|
6058
6055
|
"aria-label": `${A === "source" ? "可选" : "已选"}列表搜索`,
|
|
6059
6056
|
size: "md",
|
|
6060
|
-
value:
|
|
6057
|
+
value: M,
|
|
6061
6058
|
prefix: /* @__PURE__ */ e.jsx(Pt, { "aria-hidden": "true", size: 15 }),
|
|
6062
6059
|
placeholder: i,
|
|
6063
6060
|
disabled: c,
|
|
@@ -6098,36 +6095,36 @@ const ms = (t, r) => `${r.label} ${typeof r.description == "string" ? r.descript
|
|
|
6098
6095
|
m
|
|
6099
6096
|
),
|
|
6100
6097
|
children: [
|
|
6101
|
-
|
|
6098
|
+
L({
|
|
6102
6099
|
title: o,
|
|
6103
6100
|
panelItems: C,
|
|
6104
6101
|
query: u,
|
|
6105
6102
|
setQuery: h,
|
|
6106
6103
|
selectedKeys: N,
|
|
6107
|
-
selectedSet:
|
|
6104
|
+
selectedSet: y,
|
|
6108
6105
|
setSelectedKeys: j,
|
|
6109
6106
|
side: "source"
|
|
6110
6107
|
}),
|
|
6111
6108
|
/* @__PURE__ */ e.jsxs("div", { className: "flex justify-center gap-2 pad:flex-col l:flex-col", children: [
|
|
6112
6109
|
/* @__PURE__ */ e.jsx(
|
|
6113
|
-
|
|
6110
|
+
Oe,
|
|
6114
6111
|
{
|
|
6115
6112
|
iconOnly: !0,
|
|
6116
6113
|
size: "sm",
|
|
6117
6114
|
variant: "secondary",
|
|
6118
6115
|
"aria-label": "移到右侧",
|
|
6119
|
-
disabled: c ||
|
|
6116
|
+
disabled: c || oe.length === 0,
|
|
6120
6117
|
icon: /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
|
|
6121
6118
|
/* @__PURE__ */ e.jsx(Ue, { className: "pad:hidden l:hidden", size: 16 }),
|
|
6122
6119
|
/* @__PURE__ */ e.jsx(Me, { className: "hidden pad:block l:block", size: 16 })
|
|
6123
6120
|
] }),
|
|
6124
6121
|
onClick: () => {
|
|
6125
|
-
n([...r, ...
|
|
6122
|
+
n([...r, ...oe]), j([]);
|
|
6126
6123
|
}
|
|
6127
6124
|
}
|
|
6128
6125
|
),
|
|
6129
6126
|
/* @__PURE__ */ e.jsx(
|
|
6130
|
-
|
|
6127
|
+
Oe,
|
|
6131
6128
|
{
|
|
6132
6129
|
iconOnly: !0,
|
|
6133
6130
|
size: "sm",
|
|
@@ -6145,11 +6142,11 @@ const ms = (t, r) => `${r.label} ${typeof r.description == "string" ? r.descript
|
|
|
6145
6142
|
}
|
|
6146
6143
|
)
|
|
6147
6144
|
] }),
|
|
6148
|
-
|
|
6145
|
+
L({
|
|
6149
6146
|
title: s,
|
|
6150
6147
|
panelItems: H,
|
|
6151
6148
|
query: k,
|
|
6152
|
-
setQuery:
|
|
6149
|
+
setQuery: g,
|
|
6153
6150
|
selectedKeys: b,
|
|
6154
6151
|
selectedSet: Z,
|
|
6155
6152
|
setSelectedKeys: T,
|
|
@@ -6251,27 +6248,27 @@ const Vs = ({
|
|
|
6251
6248
|
getLabel: u,
|
|
6252
6249
|
getChildren: h,
|
|
6253
6250
|
isNodeSelectable: k,
|
|
6254
|
-
renderPrefix:
|
|
6251
|
+
renderPrefix: g,
|
|
6255
6252
|
defaultExpandedDepth: N = 1,
|
|
6256
6253
|
placeholder: j = "请选择",
|
|
6257
6254
|
disabled: b = !1,
|
|
6258
6255
|
loading: T = !1,
|
|
6259
6256
|
emptyText: z = "无可选节点",
|
|
6260
6257
|
className: _,
|
|
6261
|
-
size:
|
|
6258
|
+
size: F = "md"
|
|
6262
6259
|
}) => {
|
|
6263
|
-
const
|
|
6260
|
+
const R = me(() => new Set(s), [s]), [C, H] = D(!1), [y, Z] = D(!1), [oe, X] = D(!1), [B, L] = D(!1), [v, S] = D(
|
|
6264
6261
|
cr(t, m, h, N)
|
|
6265
|
-
), [
|
|
6262
|
+
), [M, Q] = D(""), [J, f] = D({
|
|
6266
6263
|
position: "fixed",
|
|
6267
6264
|
top: 0,
|
|
6268
6265
|
left: 0,
|
|
6269
6266
|
zIndex: 9999
|
|
6270
|
-
}), I =
|
|
6267
|
+
}), I = se(null), A = se(null), E = se(null), ee = P(() => {
|
|
6271
6268
|
var K, pe;
|
|
6272
6269
|
if (!I.current)
|
|
6273
6270
|
return;
|
|
6274
|
-
const U = I.current.getBoundingClientRect(), ne = ((K = A.current) == null ? void 0 : K.offsetHeight) || 280, fe = 6, ve = 8, ye = window.innerHeight - U.bottom < ne,
|
|
6271
|
+
const U = I.current.getBoundingClientRect(), ne = ((K = A.current) == null ? void 0 : K.offsetHeight) || 280, fe = 6, ve = 8, ye = window.innerHeight - U.bottom < ne, O = ye ? Math.max(ve, U.top - ne - fe) : Math.min(window.innerHeight - ve, U.bottom + fe), ce = Math.max(0, window.innerWidth - ve * 2), ue = Math.min(U.width, ce), ge = Math.min(Math.max(ue, ue * 2.8), ce, 480), w = Math.max(
|
|
6275
6272
|
ue,
|
|
6276
6273
|
Math.min(
|
|
6277
6274
|
ge,
|
|
@@ -6281,26 +6278,26 @@ const Vs = ({
|
|
|
6281
6278
|
Math.max(ve, U.left),
|
|
6282
6279
|
Math.max(ve, window.innerWidth - w - ve)
|
|
6283
6280
|
);
|
|
6284
|
-
|
|
6281
|
+
L(ye), f({
|
|
6285
6282
|
position: "fixed",
|
|
6286
|
-
top:
|
|
6283
|
+
top: O,
|
|
6287
6284
|
left: V,
|
|
6288
6285
|
width: "max-content",
|
|
6289
6286
|
minWidth: ue,
|
|
6290
6287
|
maxWidth: ge,
|
|
6291
6288
|
zIndex: 9999
|
|
6292
6289
|
}), X(!0);
|
|
6293
|
-
}, []),
|
|
6290
|
+
}, []), te = r == null ? null : Ze(t, r, m, u, h), W = i ? o ?? [] : [], Y = se(W);
|
|
6294
6291
|
Y.current = W;
|
|
6295
6292
|
const q = W.map(
|
|
6296
6293
|
(U) => Ze(t, U, m, u, h)
|
|
6297
6294
|
).filter((U) => U !== null), ae = kr(
|
|
6298
6295
|
t,
|
|
6299
|
-
c ?
|
|
6296
|
+
c ? M : "",
|
|
6300
6297
|
u,
|
|
6301
6298
|
h
|
|
6302
|
-
), le = l && c &&
|
|
6303
|
-
|
|
6299
|
+
), le = l && c && M.trim().length > 0;
|
|
6300
|
+
re(() => {
|
|
6304
6301
|
S(
|
|
6305
6302
|
cr(
|
|
6306
6303
|
t,
|
|
@@ -6309,9 +6306,9 @@ const Vs = ({
|
|
|
6309
6306
|
N
|
|
6310
6307
|
)
|
|
6311
6308
|
);
|
|
6312
|
-
}, [N, t]),
|
|
6309
|
+
}, [N, t]), re(() => () => {
|
|
6313
6310
|
E.current && clearTimeout(E.current);
|
|
6314
|
-
}, []),
|
|
6311
|
+
}, []), re(() => {
|
|
6315
6312
|
if (!C) {
|
|
6316
6313
|
X(!1);
|
|
6317
6314
|
return;
|
|
@@ -6327,12 +6324,12 @@ const Vs = ({
|
|
|
6327
6324
|
}, [C]), gt(() => {
|
|
6328
6325
|
if (!C)
|
|
6329
6326
|
return;
|
|
6330
|
-
|
|
6331
|
-
const U = window.requestAnimationFrame(
|
|
6332
|
-
return window.addEventListener("scroll",
|
|
6333
|
-
window.cancelAnimationFrame(U), window.removeEventListener("scroll",
|
|
6327
|
+
ee();
|
|
6328
|
+
const U = window.requestAnimationFrame(ee);
|
|
6329
|
+
return window.addEventListener("scroll", ee, !0), window.addEventListener("resize", ee), () => {
|
|
6330
|
+
window.cancelAnimationFrame(U), window.removeEventListener("scroll", ee, !0), window.removeEventListener("resize", ee);
|
|
6334
6331
|
};
|
|
6335
|
-
}, [C, t, T,
|
|
6332
|
+
}, [C, t, T, ee]), re(() => {
|
|
6336
6333
|
C || Q("");
|
|
6337
6334
|
}, [C]);
|
|
6338
6335
|
const ie = () => {
|
|
@@ -6342,21 +6339,21 @@ const Vs = ({
|
|
|
6342
6339
|
}, G = () => {
|
|
6343
6340
|
E.current && clearTimeout(E.current), H(!1), Z(!1);
|
|
6344
6341
|
}, je = () => {
|
|
6345
|
-
E.current && clearTimeout(E.current), X(!1),
|
|
6342
|
+
E.current && clearTimeout(E.current), X(!1), ee(), H(!0), Z(!1);
|
|
6346
6343
|
}, Ne = (U) => {
|
|
6347
6344
|
S(
|
|
6348
6345
|
(he) => he.includes(U) ? he.filter((ne) => ne !== U) : [...he, U]
|
|
6349
6346
|
);
|
|
6350
6347
|
}, Se = (U, he) => {
|
|
6351
|
-
const ne = m(U), fe = et(U, h), ve = fe.length > 0, ye = le || v.includes(ne),
|
|
6348
|
+
const ne = m(U), fe = et(U, h), ve = fe.length > 0, ye = le || v.includes(ne), O = (k == null ? void 0 : k(U)) ?? !0, ce = !O && ve, ue = i ? W.includes(ne) : r === ne;
|
|
6352
6349
|
return /* @__PURE__ */ e.jsxs("div", { className: "space-y-1", children: [
|
|
6353
6350
|
/* @__PURE__ */ e.jsxs(
|
|
6354
6351
|
"div",
|
|
6355
6352
|
{
|
|
6356
6353
|
className: p(
|
|
6357
6354
|
"flex items-center rounded-[8px] px-2 py-1.5 transition-colors",
|
|
6358
|
-
fs[
|
|
6359
|
-
ue ? "bg-[var(--lumen-color-primary-soft)] font-normal text-[var(--lumen-color-primary)]" :
|
|
6355
|
+
fs[F],
|
|
6356
|
+
ue ? "bg-[var(--lumen-color-primary-soft)] font-normal text-[var(--lumen-color-primary)]" : O || ce ? "text-[var(--lumen-color-text-secondary)] hover:bg-[var(--lumen-color-surface-muted)]" : "text-[var(--lumen-color-text-placeholder)]"
|
|
6360
6357
|
),
|
|
6361
6358
|
style: { paddingLeft: `${he * 16 + 8}px` },
|
|
6362
6359
|
children: [
|
|
@@ -6377,19 +6374,19 @@ const Vs = ({
|
|
|
6377
6374
|
{
|
|
6378
6375
|
type: "button",
|
|
6379
6376
|
"data-testid": `tree-select-option-${ne}`,
|
|
6380
|
-
"aria-disabled": !
|
|
6377
|
+
"aria-disabled": !O,
|
|
6381
6378
|
className: p(
|
|
6382
6379
|
"flex min-w-0 flex-1 items-center gap-2 bg-transparent text-left text-inherit",
|
|
6383
|
-
|
|
6380
|
+
O ? "cursor-pointer" : "cursor-default"
|
|
6384
6381
|
),
|
|
6385
6382
|
onClick: (ge) => {
|
|
6386
|
-
if (!
|
|
6383
|
+
if (!O) {
|
|
6387
6384
|
ve && !ye && (ge.stopPropagation(), Ne(ne));
|
|
6388
6385
|
return;
|
|
6389
6386
|
}
|
|
6390
6387
|
if (i) {
|
|
6391
6388
|
const w = Y.current, V = w.includes(ne);
|
|
6392
|
-
if (V &&
|
|
6389
|
+
if (V && R.has(ne))
|
|
6393
6390
|
return;
|
|
6394
6391
|
let K = w.filter(
|
|
6395
6392
|
(de) => de !== ne
|
|
@@ -6423,7 +6420,7 @@ const Vs = ({
|
|
|
6423
6420
|
n(ne, U), G();
|
|
6424
6421
|
},
|
|
6425
6422
|
children: [
|
|
6426
|
-
|
|
6423
|
+
g == null ? void 0 : g(U),
|
|
6427
6424
|
/* @__PURE__ */ e.jsx("span", { className: "truncate", children: u(U) })
|
|
6428
6425
|
]
|
|
6429
6426
|
}
|
|
@@ -6467,7 +6464,7 @@ const Vs = ({
|
|
|
6467
6464
|
className: p(
|
|
6468
6465
|
"flex w-full cursor-pointer items-center gap-2 border bg-[var(--lumen-color-surface)] text-left font-normal outline-none transition-all",
|
|
6469
6466
|
Ee.control,
|
|
6470
|
-
ps[
|
|
6467
|
+
ps[F],
|
|
6471
6468
|
b ? "cursor-not-allowed border-[var(--lumen-color-border)] bg-[var(--lumen-color-surface-muted)] opacity-50" : C ? "border-[var(--lumen-color-primary)] ring-1 ring-[var(--lumen-color-primary)]/10" : "border-[var(--lumen-color-border)] hover:border-[var(--lumen-color-border-hover)]"
|
|
6472
6469
|
),
|
|
6473
6470
|
children: [
|
|
@@ -6479,7 +6476,7 @@ const Vs = ({
|
|
|
6479
6476
|
className: "inline-flex items-center gap-1 rounded-[6px] bg-[var(--lumen-color-primary-soft)] px-2 py-0.5 text-[13px] text-[var(--lumen-color-primary)]",
|
|
6480
6477
|
children: [
|
|
6481
6478
|
u(U),
|
|
6482
|
-
|
|
6479
|
+
R.has(he) ? null : /* @__PURE__ */ e.jsx(
|
|
6483
6480
|
Ve,
|
|
6484
6481
|
{
|
|
6485
6482
|
size: 12,
|
|
@@ -6506,7 +6503,7 @@ const Vs = ({
|
|
|
6506
6503
|
},
|
|
6507
6504
|
he
|
|
6508
6505
|
);
|
|
6509
|
-
}) : /* @__PURE__ */ e.jsx("span", { className: "text-[var(--lumen-color-text-placeholder)]", children: j }) }) :
|
|
6506
|
+
}) : /* @__PURE__ */ e.jsx("span", { className: "text-[var(--lumen-color-text-placeholder)]", children: j }) }) : te ? /* @__PURE__ */ e.jsx("span", { className: "min-w-0 flex-1 truncate text-[var(--lumen-color-text)]", children: u(te) }) : /* @__PURE__ */ e.jsx("span", { className: "min-w-0 flex-1 truncate text-[var(--lumen-color-text-placeholder)]", children: j }),
|
|
6510
6507
|
/* @__PURE__ */ e.jsx(
|
|
6511
6508
|
Ue,
|
|
6512
6509
|
{
|
|
@@ -6525,6 +6522,7 @@ const Vs = ({
|
|
|
6525
6522
|
"div",
|
|
6526
6523
|
{
|
|
6527
6524
|
ref: A,
|
|
6525
|
+
"data-ui": "tree-select-dropdown",
|
|
6528
6526
|
"data-testid": "tree-select-dropdown",
|
|
6529
6527
|
className: p(
|
|
6530
6528
|
Ee.card,
|
|
@@ -6532,9 +6530,9 @@ const Vs = ({
|
|
|
6532
6530
|
),
|
|
6533
6531
|
style: {
|
|
6534
6532
|
...J,
|
|
6535
|
-
animation:
|
|
6533
|
+
animation: y ? B ? "lumen-dropdown-out-up 0.12s ease-in forwards" : "lumen-dropdown-out 0.12s ease-in forwards" : B ? "lumen-dropdown-in-up 0.12s ease-out" : "lumen-dropdown-in 0.12s ease-out",
|
|
6536
6534
|
transformOrigin: wr(B),
|
|
6537
|
-
visibility:
|
|
6535
|
+
visibility: oe ? void 0 : "hidden"
|
|
6538
6536
|
},
|
|
6539
6537
|
children: [
|
|
6540
6538
|
c ? /* @__PURE__ */ e.jsx("div", { className: "border-b border-[var(--lumen-color-surface-muted)] p-2.5", children: /* @__PURE__ */ e.jsxs("div", { className: "flex items-center gap-2 rounded-[8px] bg-[var(--lumen-color-surface-muted)] px-3 py-2", children: [
|
|
@@ -6544,14 +6542,14 @@ const Vs = ({
|
|
|
6544
6542
|
{
|
|
6545
6543
|
className: "w-full bg-transparent text-[13px] text-[var(--lumen-color-text)] outline-none placeholder:text-[var(--lumen-color-text-placeholder)] mobile:text-[16px]",
|
|
6546
6544
|
placeholder: d,
|
|
6547
|
-
value:
|
|
6545
|
+
value: M,
|
|
6548
6546
|
onChange: (U) => Q(U.target.value),
|
|
6549
6547
|
autoFocus: !0
|
|
6550
6548
|
}
|
|
6551
6549
|
)
|
|
6552
6550
|
] }) }) : null,
|
|
6553
6551
|
/* @__PURE__ */ e.jsx("div", { className: "max-h-[280px] overflow-y-auto px-2.5 py-1.5", children: T ? /* @__PURE__ */ e.jsx("div", { className: "px-3 py-4 text-center text-[13px] text-[var(--lumen-color-text-placeholder)]", children: "加载中..." }) : ae.length === 0 ? /* @__PURE__ */ e.jsx("div", { className: "px-3 py-4 text-center text-[13px] text-[var(--lumen-color-text-placeholder)]", children: z }) : ae.map((U) => Se(U, 0)) }),
|
|
6554
|
-
i && W.some((U) => !
|
|
6552
|
+
i && W.some((U) => !R.has(U)) ? /* @__PURE__ */ e.jsxs("div", { className: "flex items-center justify-between border-t border-[var(--lumen-color-surface-muted)] px-3 py-2.5", children: [
|
|
6555
6553
|
/* @__PURE__ */ e.jsxs("span", { className: "text-[12px] text-[var(--lumen-color-text-placeholder)]", children: [
|
|
6556
6554
|
"已选 ",
|
|
6557
6555
|
W.length,
|
|
@@ -6563,7 +6561,7 @@ const Vs = ({
|
|
|
6563
6561
|
type: "button",
|
|
6564
6562
|
className: "text-[12px] text-[var(--lumen-color-text-placeholder)] transition-colors hover:text-[var(--lumen-color-text-muted)]",
|
|
6565
6563
|
onClick: () => {
|
|
6566
|
-
const U = Y.current.filter((ne) =>
|
|
6564
|
+
const U = Y.current.filter((ne) => R.has(ne)), he = U.map((ne) => Ze(t, ne, m, u, h)).filter((ne) => ne !== null);
|
|
6567
6565
|
Y.current = U, a == null || a(U, he);
|
|
6568
6566
|
},
|
|
6569
6567
|
children: "清空"
|
|
@@ -6636,7 +6634,7 @@ export {
|
|
|
6636
6634
|
rn as Alert,
|
|
6637
6635
|
an as Avatar,
|
|
6638
6636
|
Es as Badge,
|
|
6639
|
-
|
|
6637
|
+
Oe as Button,
|
|
6640
6638
|
mn as Card,
|
|
6641
6639
|
hn as CardContent,
|
|
6642
6640
|
fn as CardDescription,
|
|
@@ -6668,9 +6666,9 @@ export {
|
|
|
6668
6666
|
$o as Radio,
|
|
6669
6667
|
Ls as RadioGroup,
|
|
6670
6668
|
Mo as Scrollbar,
|
|
6671
|
-
|
|
6669
|
+
Os as SegmentedControl,
|
|
6672
6670
|
go as Select,
|
|
6673
|
-
|
|
6671
|
+
Fs as SideNav,
|
|
6674
6672
|
Bo as Skeleton,
|
|
6675
6673
|
Wo as Slider,
|
|
6676
6674
|
qo as Spinner,
|