@exegia/corpora-ui 0.16.0 → 0.17.0
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-lib/components/blocks/shell/shell-layout.d.ts +1 -1
- package/dist-lib/components/blocks/shell/type.d.ts +1 -0
- package/dist-lib/components/motion/animated-sidebar.d.ts +0 -3
- package/dist-lib/index.js +869 -877
- package/dist-lib/index.js.map +1 -1
- package/package.json +1 -1
- package/src/components/blocks/shell/__tests__/shell-layout.test.tsx +3 -3
- package/src/components/blocks/shell/shell-layout.tsx +27 -39
- package/src/components/blocks/shell/type.ts +1 -0
- package/src/components/motion/animated-sidebar.tsx +21 -46
- package/src/components/ui/button.tsx +3 -3
package/dist-lib/index.js
CHANGED
|
@@ -5,69 +5,69 @@ import { Fragment as r, jsx as i, jsxs as a } from "react/jsx-runtime";
|
|
|
5
5
|
import { mergeProps as o } from "@base-ui/react/merge-props";
|
|
6
6
|
import { useRender as s } from "@base-ui/react/use-render";
|
|
7
7
|
import { cva as c } from "class-variance-authority";
|
|
8
|
-
import { ArrowLeftIcon as l, Bookmark as u, CheckIcon as d, ChevronRight as f, ChevronRightIcon as p, ChevronsUpDownIcon as m, EyeIcon as h, EyeOffIcon as g, FileText as _, FingerprintIcon as v, Folder as y, FolderOpen as b, KeyRoundIcon as x, Loader2Icon as S, LogOutIcon as C, MailIcon as w, MoreHorizontal as T, PanelLeftIcon as E, Pencil as D, SettingsIcon as O, SmartphoneIcon as k, UserIcon as A, UserPlusIcon as
|
|
9
|
-
import * as
|
|
10
|
-
import { Children as
|
|
11
|
-
import { Checkbox as
|
|
12
|
-
import { bind as
|
|
13
|
-
import { Field as
|
|
14
|
-
import { Input as
|
|
15
|
-
import { Menu as
|
|
16
|
-
import { OTPField as
|
|
17
|
-
import { Separator as
|
|
18
|
-
import { AnimatePresence as
|
|
19
|
-
import { RiAppleFill as
|
|
20
|
-
import { createPortal as
|
|
21
|
-
import { MotionIcon as
|
|
8
|
+
import { ArrowLeftIcon as l, Bookmark as u, CheckIcon as d, ChevronRight as f, ChevronRightIcon as p, ChevronsUpDownIcon as m, EyeIcon as h, EyeOffIcon as g, FileText as _, FingerprintIcon as v, Folder as y, FolderOpen as b, KeyRoundIcon as x, Loader2Icon as S, LogOutIcon as C, MailIcon as w, MoreHorizontal as T, PanelLeftIcon as E, Pencil as D, SettingsIcon as O, SmartphoneIcon as k, UserIcon as A, UserPlusIcon as j, UsersIcon as M, XIcon as N } from "lucide-react";
|
|
9
|
+
import * as P from "react";
|
|
10
|
+
import { Children as ee, cloneElement as te, createContext as F, createElement as I, forwardRef as L, isValidElement as R, useCallback as z, useContext as B, useEffect as V, useId as ne, useLayoutEffect as re, useMemo as ie, useRef as H, useState as U, useSyncExternalStore as ae } from "react";
|
|
11
|
+
import { Checkbox as oe } from "@base-ui/react/checkbox";
|
|
12
|
+
import { bind as se, play as ce, play as le, setEnabled as ue, setVolume as de, sounds as fe } from "cuelume";
|
|
13
|
+
import { Field as pe, Field as me } from "@base-ui/react/field";
|
|
14
|
+
import { Input as he } from "@base-ui/react/input";
|
|
15
|
+
import { Menu as W } from "@base-ui/react/menu";
|
|
16
|
+
import { OTPField as ge } from "@base-ui/react/otp-field";
|
|
17
|
+
import { Separator as _e } from "@base-ui/react/separator";
|
|
18
|
+
import { AnimatePresence as G, MotionConfig as ve, motion as K, useReducedMotion as ye } from "motion/react";
|
|
19
|
+
import { RiAppleFill as be, RiGithubFill as xe, RiGoogleFill as Se, RiTwitterXFill as Ce } from "@remixicon/react";
|
|
20
|
+
import { createPortal as we } from "react-dom";
|
|
21
|
+
import { MotionIcon as Te } from "motion-icons-react";
|
|
22
22
|
//#region src/lib/utils.ts
|
|
23
|
-
function
|
|
23
|
+
function q(...e) {
|
|
24
24
|
return n(t(e));
|
|
25
25
|
}
|
|
26
26
|
//#endregion
|
|
27
27
|
//#region src/components/ui/avatar.tsx
|
|
28
|
-
function
|
|
28
|
+
function Ee({ className: t, ...n }) {
|
|
29
29
|
return /* @__PURE__ */ i(e.Root, {
|
|
30
|
-
className:
|
|
30
|
+
className: q("inline-flex size-8 shrink-0 select-none items-center justify-center overflow-hidden rounded-full bg-background align-middle font-medium text-xs", t),
|
|
31
31
|
"data-slot": "avatar",
|
|
32
32
|
...n
|
|
33
33
|
});
|
|
34
34
|
}
|
|
35
|
-
function
|
|
35
|
+
function De({ className: t, ...n }) {
|
|
36
36
|
return /* @__PURE__ */ i(e.Image, {
|
|
37
|
-
className:
|
|
37
|
+
className: q("size-full object-cover", t),
|
|
38
38
|
"data-slot": "avatar-image",
|
|
39
39
|
...n
|
|
40
40
|
});
|
|
41
41
|
}
|
|
42
|
-
function
|
|
42
|
+
function Oe({ className: t, ...n }) {
|
|
43
43
|
return /* @__PURE__ */ i(e.Fallback, {
|
|
44
|
-
className:
|
|
44
|
+
className: q("flex size-full items-center justify-center rounded-full bg-muted", t),
|
|
45
45
|
"data-slot": "avatar-fallback",
|
|
46
46
|
...n
|
|
47
47
|
});
|
|
48
48
|
}
|
|
49
49
|
//#endregion
|
|
50
50
|
//#region src/components/ui/spinner.tsx
|
|
51
|
-
function
|
|
51
|
+
function ke({ className: e, ...t }) {
|
|
52
52
|
return /* @__PURE__ */ i(S, {
|
|
53
53
|
"aria-label": "Loading",
|
|
54
|
-
className:
|
|
54
|
+
className: q("animate-spin", e),
|
|
55
55
|
role: "status",
|
|
56
56
|
...t
|
|
57
57
|
});
|
|
58
58
|
}
|
|
59
59
|
//#endregion
|
|
60
60
|
//#region src/components/ui/glasscn/liquid-glass.tsx
|
|
61
|
-
var
|
|
62
|
-
function
|
|
61
|
+
var Ae = 480, je = 1.25, Me = /* @__PURE__ */ new Map();
|
|
62
|
+
function Ne() {
|
|
63
63
|
if (typeof navigator > "u") return !1;
|
|
64
64
|
let e = navigator.userAgent;
|
|
65
65
|
return (/Chrom(e|ium)/.test(e) || /Edg\//.test(e)) && !/Firefox/.test(e);
|
|
66
66
|
}
|
|
67
|
-
function
|
|
68
|
-
let i = `${e}:${t}:${n}:${r}`, a =
|
|
67
|
+
function Pe({ width: e, height: t, radius: n, bezel: r }) {
|
|
68
|
+
let i = `${e}:${t}:${n}:${r}`, a = Me.get(i);
|
|
69
69
|
if (a !== void 0) return a;
|
|
70
|
-
let o = Math.min(1,
|
|
70
|
+
let o = Math.min(1, Ae / Math.max(e, t)), s = Math.max(2, Math.round(e * o)), c = Math.max(2, Math.round(t * o)), l = document.createElement("canvas");
|
|
71
71
|
l.width = s, l.height = c;
|
|
72
72
|
let u = l.getContext("2d");
|
|
73
73
|
if (!u) return "";
|
|
@@ -83,23 +83,23 @@ function Fe({ width: e, height: t, radius: n, bezel: r }) {
|
|
|
83
83
|
f[v] = 128, f[v + 1] = 128, f[v + 2] = 128, f[v + 3] = 255;
|
|
84
84
|
continue;
|
|
85
85
|
}
|
|
86
|
-
let b = 1 -
|
|
87
|
-
b *= Math.min(1, y /
|
|
86
|
+
let b = 1 - Fe(Math.min(1, y / g));
|
|
87
|
+
b *= Math.min(1, y / je), f[v] = Math.round(128 + d * b * 127), f[v + 1] = Math.round(128 + _ * b * 127), f[v + 2] = 128, f[v + 3] = 255;
|
|
88
88
|
}
|
|
89
89
|
u.putImageData(d, 0, 0);
|
|
90
90
|
let _ = l.toDataURL("image/png");
|
|
91
|
-
return
|
|
91
|
+
return Me.set(i, _), _;
|
|
92
92
|
}
|
|
93
|
-
function
|
|
93
|
+
function Fe(e) {
|
|
94
94
|
return (1 - (1 - e) ** 4) ** .25;
|
|
95
95
|
}
|
|
96
|
-
var
|
|
97
|
-
let p =
|
|
96
|
+
var Ie = L(function({ blur: e = 2, refraction: t = 15, mapSize: n, bezel: o = .34, saturation: s = 1.28, className: c, style: l, children: u, ...d }, f) {
|
|
97
|
+
let p = ne(), m = ie(() => `liquid-glass-${p.replace(/:/g, "")}`, [p]);
|
|
98
98
|
console.log(n);
|
|
99
|
-
let h =
|
|
99
|
+
let h = H(null), g = z((e) => {
|
|
100
100
|
h.current = e, typeof f == "function" ? f(e) : f && (f.current = e);
|
|
101
|
-
}, [f]), [_, v] =
|
|
102
|
-
|
|
101
|
+
}, [f]), [_, v] = U(null);
|
|
102
|
+
V(() => {
|
|
103
103
|
let e = h.current;
|
|
104
104
|
if (!e) return;
|
|
105
105
|
let t = () => {
|
|
@@ -117,14 +117,14 @@ var Le = I(function({ blur: e = 2, refraction: t = 15, mapSize: n, bezel: o = .3
|
|
|
117
117
|
let n = new ResizeObserver(t);
|
|
118
118
|
return n.observe(e), () => n.disconnect();
|
|
119
119
|
}, [o]);
|
|
120
|
-
let y =
|
|
121
|
-
|
|
122
|
-
x(
|
|
120
|
+
let y = ie(() => _ ? Pe(_) : "", [_]), [b, x] = U(!1);
|
|
121
|
+
V(() => {
|
|
122
|
+
x(Ne());
|
|
123
123
|
}, []);
|
|
124
124
|
let S = b && y !== "", C = S ? `url(#${m}) blur(${e}px) saturate(${s})` : `blur(${e + 2}px) saturate(${s})`;
|
|
125
125
|
return /* @__PURE__ */ a(r, { children: [/* @__PURE__ */ a("div", {
|
|
126
126
|
ref: g,
|
|
127
|
-
className:
|
|
127
|
+
className: q("relative overflow-hidden rounded-full bg-white/[0.08]", c),
|
|
128
128
|
style: {
|
|
129
129
|
...l,
|
|
130
130
|
backdropFilter: C,
|
|
@@ -177,7 +177,7 @@ var Le = I(function({ blur: e = 2, refraction: t = 15, mapSize: n, bezel: o = .3
|
|
|
177
177
|
]
|
|
178
178
|
})
|
|
179
179
|
})] });
|
|
180
|
-
}),
|
|
180
|
+
}), Le = {
|
|
181
181
|
clear: [
|
|
182
182
|
"backdrop-blur-[2px] backdrop-saturate-[1.9]",
|
|
183
183
|
"bg-white/[0.25] dark:bg-black/[0.25]",
|
|
@@ -211,7 +211,7 @@ var Le = I(function({ blur: e = 2, refraction: t = 15, mapSize: n, bezel: o = .3
|
|
|
211
211
|
"[will-change:background-position]"
|
|
212
212
|
].join(" "),
|
|
213
213
|
"liquid-refract": ""
|
|
214
|
-
},
|
|
214
|
+
}, Re = c("relative inline-flex shrink-0 cursor-pointer items-center justify-center gap-2 whitespace-nowrap rounded-lg border font-medium text-base outline-none transition-[scale,box-shadow,width,height,background-color,border-color] [transition-duration:150ms,150ms,300ms,300ms,150ms,150ms] ease-smooth-out active:scale-97 data-pressed:scale-97 motion-reduce:transition-none motion-reduce:active:scale-100 motion-reduce:data-pressed:scale-100 [&_svg]:transition-transform [&_svg]:duration-150 [&_svg]:ease-smooth-out motion-reduce:[&_svg]:transition-none before:pointer-events-none before:absolute before:inset-0 before:rounded-[calc(var(--radius-lg)-1px)] pointer-coarse:after:absolute pointer-coarse:after:size-full pointer-coarse:after:min-h-11 pointer-coarse:after:min-w-11 focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:ring-offset-background disabled:pointer-events-none disabled:opacity-64 data-loading:select-none sm:text-sm [&_svg:not([class*='opacity-'])]:opacity-80 [&_svg:not([class*='size-'])]:size-4.5 sm:[&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:-mx-0.5 [&_svg]:shrink-0", {
|
|
215
215
|
compoundVariants: [{
|
|
216
216
|
class: "h-auto border-0 px-0 align-middle sm:h-auto",
|
|
217
217
|
size: [
|
|
@@ -231,9 +231,9 @@ var Le = I(function({ blur: e = 2, refraction: t = 15, mapSize: n, bezel: o = .3
|
|
|
231
231
|
size: {
|
|
232
232
|
default: "h-9 px-[calc(--spacing(3)-1px)] sm:h-8",
|
|
233
233
|
icon: "size-9 sm:size-8",
|
|
234
|
-
"icon-lg": "size-
|
|
235
|
-
"icon-sm": "size-
|
|
236
|
-
"icon-xl": "size-
|
|
234
|
+
"icon-lg": "size-8 sm:size-8",
|
|
235
|
+
"icon-sm": "size-7 sm:size-6",
|
|
236
|
+
"icon-xl": "size-10 sm:size-9 [&_svg:not([class*='size-'])]:size-5 sm:[&_svg:not([class*='size-'])]:size-4.5",
|
|
237
237
|
"icon-xs": "size-7 rounded-md before:rounded-[calc(var(--radius-md)-1px)] sm:size-6 not-in-data-[slot=input-group]:[&_svg:not([class*='size-'])]:size-4 sm:not-in-data-[slot=input-group]:[&_svg:not([class*='size-'])]:size-3.5",
|
|
238
238
|
lg: "h-10 px-[calc(--spacing(3.5)-1px)] sm:h-9",
|
|
239
239
|
sm: "h-8 gap-1.5 px-[calc(--spacing(2.5)-1px)] sm:h-7",
|
|
@@ -252,7 +252,7 @@ var Le = I(function({ blur: e = 2, refraction: t = 15, mapSize: n, bezel: o = .3
|
|
|
252
252
|
}
|
|
253
253
|
}
|
|
254
254
|
});
|
|
255
|
-
function
|
|
255
|
+
function J({ className: e, variant: t, size: n, render: c, children: l, loading: u = !1, disabled: d, glassVariant: f, sound: p = !0, ...m }) {
|
|
256
256
|
let h = !!(u || d), g = c ? void 0 : "button", _ = t === "glass" ? f ?? "liquid-refract" : void 0, v = _ === "liquid-refract", y = (n ?? "default").startsWith("icon"), b = s({
|
|
257
257
|
defaultTagName: "button",
|
|
258
258
|
props: o({
|
|
@@ -260,19 +260,19 @@ function q({ className: e, variant: t, size: n, render: c, children: l, loading:
|
|
|
260
260
|
!y && /* @__PURE__ */ i("span", {
|
|
261
261
|
"aria-hidden": !u || void 0,
|
|
262
262
|
"data-slot": "button-loading-indicator",
|
|
263
|
-
className:
|
|
264
|
-
children: /* @__PURE__ */ i(
|
|
263
|
+
className: q("pointer-events-none inline-flex shrink-0 items-center overflow-hidden transition-[max-width,margin-inline-start,opacity,filter] duration-300 ease-smooth-out motion-reduce:transition-none", u ? "max-w-6" : q("max-w-0 opacity-0 blur-[2px]", n === "xs" ? "-ms-1" : n === "sm" ? "-ms-1.5" : "-ms-2")),
|
|
264
|
+
children: /* @__PURE__ */ i(ke, { className: u ? void 0 : "animate-none" })
|
|
265
265
|
}),
|
|
266
266
|
l,
|
|
267
|
-
u && y && /* @__PURE__ */ i(
|
|
267
|
+
u && y && /* @__PURE__ */ i(ke, {
|
|
268
268
|
className: "pointer-events-none absolute",
|
|
269
269
|
"data-slot": "button-loading-indicator"
|
|
270
270
|
})
|
|
271
271
|
] }),
|
|
272
|
-
className:
|
|
272
|
+
className: q(Re({
|
|
273
273
|
size: n,
|
|
274
274
|
variant: t
|
|
275
|
-
}), !y && "hover:[&_svg:not([class*='animate-'])]:scale-110 motion-reduce:hover:[&_svg]:scale-100", u && y && "data-loading:text-transparent", _ &&
|
|
275
|
+
}), !y && "hover:[&_svg:not([class*='animate-'])]:scale-110 motion-reduce:hover:[&_svg]:scale-100", u && y && "data-loading:text-transparent", _ && Le[_], v && "bg-transparent border-0 shadow-none", e),
|
|
276
276
|
"aria-disabled": u || void 0,
|
|
277
277
|
"data-cuelume-press": p ? "" : void 0,
|
|
278
278
|
"data-cuelume-release": p ? "" : void 0,
|
|
@@ -284,135 +284,135 @@ function q({ className: e, variant: t, size: n, render: c, children: l, loading:
|
|
|
284
284
|
}, m),
|
|
285
285
|
render: c
|
|
286
286
|
});
|
|
287
|
-
return v ? /* @__PURE__ */ i(
|
|
287
|
+
return v ? /* @__PURE__ */ i(Ie, { children: b }) : b;
|
|
288
288
|
}
|
|
289
289
|
//#endregion
|
|
290
290
|
//#region src/components/ui/card.tsx
|
|
291
|
-
function
|
|
291
|
+
function ze({ className: e, render: t, ...n }) {
|
|
292
292
|
return s({
|
|
293
293
|
defaultTagName: "div",
|
|
294
294
|
props: o({
|
|
295
|
-
className:
|
|
295
|
+
className: q("relative flex flex-col rounded-2xl border bg-card not-dark:bg-clip-padding text-card-foreground shadow-xs/5 before:pointer-events-none before:absolute before:inset-0 before:rounded-[calc(var(--radius-2xl)-1px)] before:shadow-[0_1px_--theme(--color-black/4%)] dark:before:shadow-[0_-1px_--theme(--color-white/6%)]", e),
|
|
296
296
|
"data-slot": "card"
|
|
297
297
|
}, n),
|
|
298
298
|
render: t
|
|
299
299
|
});
|
|
300
300
|
}
|
|
301
|
-
function
|
|
301
|
+
function Be({ className: e, render: t, ...n }) {
|
|
302
302
|
return s({
|
|
303
303
|
defaultTagName: "div",
|
|
304
304
|
props: o({
|
|
305
|
-
className:
|
|
305
|
+
className: q("relative flex flex-col rounded-2xl border bg-card not-dark:bg-clip-padding text-card-foreground shadow-xs/5 [--clip-bottom:-1rem] [--clip-top:-1rem] before:pointer-events-none before:absolute before:inset-0 before:rounded-[calc(var(--radius-2xl)-1px)] before:bg-muted/72 before:shadow-[0_1px_--theme(--color-black/4%)] has-data-[slot=table-container]:overflow-hidden *:data-[slot=card]:-m-px *:data-[slot=table-container]:-m-px *:data-[slot=table-container]:w-[calc(100%+2px)] *:not-first:data-[slot=card]:rounded-t-xl *:not-last:data-[slot=card]:rounded-b-xl *:data-[slot=card]:bg-clip-padding *:data-[slot=card]:shadow-none *:data-[slot=card]:before:hidden *:not-first:data-[slot=card]:before:rounded-t-[calc(var(--radius-xl)-1px)] *:not-last:data-[slot=card]:before:rounded-b-[calc(var(--radius-xl)-1px)] dark:before:shadow-[0_-1px_--theme(--color-white/6%)] *:data-[slot=card]:[clip-path:inset(var(--clip-top)_1px_var(--clip-bottom)_1px_round_calc(var(--radius-2xl)-1px))] *:data-[slot=card]:last:[--clip-bottom:1px] *:data-[slot=card]:first:[--clip-top:1px]", e),
|
|
306
306
|
"data-slot": "card-frame"
|
|
307
307
|
}, n),
|
|
308
308
|
render: t
|
|
309
309
|
});
|
|
310
310
|
}
|
|
311
|
-
function
|
|
311
|
+
function Ve({ className: e, render: t, ...n }) {
|
|
312
312
|
return s({
|
|
313
313
|
defaultTagName: "div",
|
|
314
314
|
props: o({
|
|
315
|
-
className:
|
|
315
|
+
className: q("relative flex grid auto-rows-min grid-rows-[auto_auto] flex-col items-start gap-x-4 px-6 py-4 has-data-[slot=card-frame-action]:grid-cols-[1fr_auto]", e),
|
|
316
316
|
"data-slot": "card-frame-header"
|
|
317
317
|
}, n),
|
|
318
318
|
render: t
|
|
319
319
|
});
|
|
320
320
|
}
|
|
321
|
-
function
|
|
321
|
+
function He({ className: e, render: t, ...n }) {
|
|
322
322
|
return s({
|
|
323
323
|
defaultTagName: "div",
|
|
324
324
|
props: o({
|
|
325
|
-
className:
|
|
325
|
+
className: q("self-center font-semibold text-sm", e),
|
|
326
326
|
"data-slot": "card-frame-title"
|
|
327
327
|
}, n),
|
|
328
328
|
render: t
|
|
329
329
|
});
|
|
330
330
|
}
|
|
331
|
-
function
|
|
331
|
+
function Ue({ className: e, render: t, ...n }) {
|
|
332
332
|
return s({
|
|
333
333
|
defaultTagName: "div",
|
|
334
334
|
props: o({
|
|
335
|
-
className:
|
|
335
|
+
className: q("self-center text-muted-foreground text-sm", e),
|
|
336
336
|
"data-slot": "card-frame-description"
|
|
337
337
|
}, n),
|
|
338
338
|
render: t
|
|
339
339
|
});
|
|
340
340
|
}
|
|
341
|
-
function
|
|
341
|
+
function We({ className: e, render: t, ...n }) {
|
|
342
342
|
return s({
|
|
343
343
|
defaultTagName: "div",
|
|
344
344
|
props: o({
|
|
345
|
-
className:
|
|
345
|
+
className: q("col-start-2 nth-3:row-span-2 nth-3:row-start-1 inline-flex self-center justify-self-end", e),
|
|
346
346
|
"data-slot": "card-frame-action"
|
|
347
347
|
}, n),
|
|
348
348
|
render: t
|
|
349
349
|
});
|
|
350
350
|
}
|
|
351
|
-
function
|
|
351
|
+
function Ge({ className: e, render: t, ...n }) {
|
|
352
352
|
return s({
|
|
353
353
|
defaultTagName: "div",
|
|
354
354
|
props: o({
|
|
355
|
-
className:
|
|
355
|
+
className: q("px-6 py-4", e),
|
|
356
356
|
"data-slot": "card-frame-footer"
|
|
357
357
|
}, n),
|
|
358
358
|
render: t
|
|
359
359
|
});
|
|
360
360
|
}
|
|
361
|
-
function
|
|
361
|
+
function Ke({ className: e, render: t, ...n }) {
|
|
362
362
|
return s({
|
|
363
363
|
defaultTagName: "div",
|
|
364
364
|
props: o({
|
|
365
|
-
className:
|
|
365
|
+
className: q("grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 p-6 in-[[data-slot=card]:has(>[data-slot=card-panel])]:pb-4 has-data-[slot=card-action]:grid-cols-[1fr_auto]", e),
|
|
366
366
|
"data-slot": "card-header"
|
|
367
367
|
}, n),
|
|
368
368
|
render: t
|
|
369
369
|
});
|
|
370
370
|
}
|
|
371
|
-
function
|
|
371
|
+
function qe({ className: e, render: t, ...n }) {
|
|
372
372
|
return s({
|
|
373
373
|
defaultTagName: "div",
|
|
374
374
|
props: o({
|
|
375
|
-
className:
|
|
375
|
+
className: q("font-heading font-semibold text-lg leading-none", e),
|
|
376
376
|
"data-slot": "card-title"
|
|
377
377
|
}, n),
|
|
378
378
|
render: t
|
|
379
379
|
});
|
|
380
380
|
}
|
|
381
|
-
function
|
|
381
|
+
function Je({ className: e, render: t, ...n }) {
|
|
382
382
|
return s({
|
|
383
383
|
defaultTagName: "div",
|
|
384
384
|
props: o({
|
|
385
|
-
className:
|
|
385
|
+
className: q("text-muted-foreground text-sm", e),
|
|
386
386
|
"data-slot": "card-description"
|
|
387
387
|
}, n),
|
|
388
388
|
render: t
|
|
389
389
|
});
|
|
390
390
|
}
|
|
391
|
-
function
|
|
391
|
+
function Ye({ className: e, render: t, ...n }) {
|
|
392
392
|
return s({
|
|
393
393
|
defaultTagName: "div",
|
|
394
394
|
props: o({
|
|
395
|
-
className:
|
|
395
|
+
className: q("col-start-2 row-span-2 row-start-1 inline-flex self-start justify-self-end", e),
|
|
396
396
|
"data-slot": "card-action"
|
|
397
397
|
}, n),
|
|
398
398
|
render: t
|
|
399
399
|
});
|
|
400
400
|
}
|
|
401
|
-
function
|
|
401
|
+
function Xe({ className: e, render: t, ...n }) {
|
|
402
402
|
return s({
|
|
403
403
|
defaultTagName: "div",
|
|
404
404
|
props: o({
|
|
405
|
-
className:
|
|
405
|
+
className: q("flex-1 p-6 in-[[data-slot=card]:has(>[data-slot=card-header]:not(.border-b))]:pt-0 in-[[data-slot=card]:has(>[data-slot=card-footer]:not(.border-t))]:pb-0", e),
|
|
406
406
|
"data-slot": "card-panel"
|
|
407
407
|
}, n),
|
|
408
408
|
render: t
|
|
409
409
|
});
|
|
410
410
|
}
|
|
411
|
-
function
|
|
411
|
+
function Ze({ className: e, render: t, ...n }) {
|
|
412
412
|
return s({
|
|
413
413
|
defaultTagName: "div",
|
|
414
414
|
props: o({
|
|
415
|
-
className:
|
|
415
|
+
className: q("flex items-center p-6 in-[[data-slot=card]:has(>[data-slot=card-panel])]:pt-4", e),
|
|
416
416
|
"data-slot": "card-footer"
|
|
417
417
|
}, n),
|
|
418
418
|
render: t
|
|
@@ -420,24 +420,24 @@ function Qe({ className: e, render: t, ...n }) {
|
|
|
420
420
|
}
|
|
421
421
|
//#endregion
|
|
422
422
|
//#region src/lib/sound.ts
|
|
423
|
-
var
|
|
424
|
-
function
|
|
425
|
-
|
|
423
|
+
var Qe = !1;
|
|
424
|
+
function $e(e) {
|
|
425
|
+
Qe = !0, se(e);
|
|
426
426
|
}
|
|
427
|
-
function
|
|
428
|
-
|
|
427
|
+
function et(e, t) {
|
|
428
|
+
Qe && ce(e, t);
|
|
429
429
|
}
|
|
430
430
|
//#endregion
|
|
431
431
|
//#region src/components/ui/checkbox.tsx
|
|
432
|
-
function
|
|
433
|
-
return /* @__PURE__ */ i(
|
|
432
|
+
function tt({ className: e, sound: t = !0, onCheckedChange: n, ...r }) {
|
|
433
|
+
return /* @__PURE__ */ i(oe.Root, {
|
|
434
434
|
onCheckedChange: (e, r) => {
|
|
435
|
-
t &&
|
|
435
|
+
t && et("toggle"), n?.(e, r);
|
|
436
436
|
},
|
|
437
|
-
className:
|
|
437
|
+
className: q("relative inline-flex size-4.5 shrink-0 cursor-pointer items-center justify-center rounded-[.25rem] border border-input bg-background not-dark:bg-clip-padding shadow-xs/5 outline-none ring-ring transition-shadow before:pointer-events-none before:absolute before:inset-0 before:rounded-[3px] not-data-disabled:not-data-checked:not-aria-invalid:before:shadow-[0_1px_--theme(--color-black/4%)] focus-visible:ring-2 focus-visible:ring-offset-1 focus-visible:ring-offset-background aria-invalid:border-destructive/36 focus-visible:aria-invalid:border-destructive/64 focus-visible:aria-invalid:ring-destructive/48 data-disabled:cursor-not-allowed data-disabled:opacity-64 sm:size-4 dark:not-data-checked:bg-input/32 dark:aria-invalid:ring-destructive/24 dark:not-data-disabled:not-data-checked:not-aria-invalid:before:shadow-[0_-1px_--theme(--color-white/6%)] [[data-disabled],[data-checked],[aria-invalid]]:shadow-none", e),
|
|
438
438
|
"data-slot": "checkbox",
|
|
439
439
|
...r,
|
|
440
|
-
children: /* @__PURE__ */ i(
|
|
440
|
+
children: /* @__PURE__ */ i(oe.Indicator, {
|
|
441
441
|
className: "absolute -inset-px flex items-center justify-center rounded-[.25rem] text-primary-foreground data-unchecked:hidden data-checked:bg-primary data-indeterminate:text-foreground",
|
|
442
442
|
"data-slot": "checkbox-indicator",
|
|
443
443
|
render: (e, t) => /* @__PURE__ */ i("span", {
|
|
@@ -475,92 +475,92 @@ function nt({ className: e, sound: t = !0, onCheckedChange: n, ...r }) {
|
|
|
475
475
|
}
|
|
476
476
|
//#endregion
|
|
477
477
|
//#region src/components/ui/field.tsx
|
|
478
|
-
function
|
|
479
|
-
return /* @__PURE__ */ i(
|
|
480
|
-
className:
|
|
478
|
+
function Y({ className: e, ...t }) {
|
|
479
|
+
return /* @__PURE__ */ i(me.Root, {
|
|
480
|
+
className: q("flex flex-col items-start gap-2", e),
|
|
481
481
|
"data-slot": "field",
|
|
482
482
|
...t
|
|
483
483
|
});
|
|
484
484
|
}
|
|
485
|
-
function
|
|
486
|
-
return /* @__PURE__ */ i(
|
|
487
|
-
className:
|
|
485
|
+
function X({ className: e, ...t }) {
|
|
486
|
+
return /* @__PURE__ */ i(me.Label, {
|
|
487
|
+
className: q("inline-flex cursor-pointer items-center gap-2 font-medium text-base/4 text-foreground data-disabled:cursor-not-allowed data-disabled:opacity-64 sm:text-xs/3.5 ml-3", e),
|
|
488
488
|
"data-slot": "field-label",
|
|
489
489
|
...t
|
|
490
490
|
});
|
|
491
491
|
}
|
|
492
|
-
function
|
|
493
|
-
return /* @__PURE__ */ i(
|
|
494
|
-
className:
|
|
492
|
+
function nt({ className: e, ...t }) {
|
|
493
|
+
return /* @__PURE__ */ i(me.Item, {
|
|
494
|
+
className: q("flex", e),
|
|
495
495
|
"data-slot": "field-item",
|
|
496
496
|
...t
|
|
497
497
|
});
|
|
498
498
|
}
|
|
499
|
-
function
|
|
500
|
-
return /* @__PURE__ */ i(
|
|
501
|
-
className:
|
|
499
|
+
function rt({ className: e, ...t }) {
|
|
500
|
+
return /* @__PURE__ */ i(me.Description, {
|
|
501
|
+
className: q("overflow-hidden text-muted-foreground text-xs transition-[height,opacity,filter,translate] duration-300 ease-smooth-out starting:h-0 starting:translate-y-1 starting:opacity-0 starting:blur-[2px] motion-reduce:transition-none", e),
|
|
502
502
|
"data-slot": "field-description",
|
|
503
503
|
...t
|
|
504
504
|
});
|
|
505
505
|
}
|
|
506
|
-
function
|
|
507
|
-
return /* @__PURE__ */ i(
|
|
508
|
-
className:
|
|
506
|
+
function it({ className: e, ...t }) {
|
|
507
|
+
return /* @__PURE__ */ i(me.Error, {
|
|
508
|
+
className: q("overflow-hidden text-destructive-foreground text-xs transition-[height,opacity,filter,translate] duration-300 ease-smooth-out starting:h-0 starting:translate-y-1 starting:opacity-0 starting:blur-[2px] motion-reduce:transition-none", e),
|
|
509
509
|
"data-slot": "field-error",
|
|
510
510
|
...t
|
|
511
511
|
});
|
|
512
512
|
}
|
|
513
|
-
var
|
|
513
|
+
var at = me.Control, ot = me.Validity;
|
|
514
514
|
//#endregion
|
|
515
515
|
//#region src/components/ui/frame.tsx
|
|
516
|
-
function
|
|
516
|
+
function st({ className: e, ...t }) {
|
|
517
517
|
return /* @__PURE__ */ i("div", {
|
|
518
|
-
className:
|
|
518
|
+
className: q("relative flex flex-col rounded-2xl bg-muted/72 p-1", "*:[[data-slot=frame-panel]+[data-slot=frame-panel]]:mt-1", e),
|
|
519
519
|
"data-slot": "frame",
|
|
520
520
|
...t
|
|
521
521
|
});
|
|
522
522
|
}
|
|
523
|
-
function
|
|
523
|
+
function ct({ className: e, ...t }) {
|
|
524
524
|
return /* @__PURE__ */ i("div", {
|
|
525
|
-
className:
|
|
525
|
+
className: q("relative rounded-xl border bg-background bg-clip-padding p-5 shadow-xs/5 before:pointer-events-none before:absolute before:inset-0 before:rounded-[calc(var(--radius-xl)-1px)] before:shadow-[0_1px_--theme(--color-black/4%)] dark:before:shadow-[0_-1px_--theme(--color-white/6%)]", e),
|
|
526
526
|
"data-slot": "frame-panel",
|
|
527
527
|
...t
|
|
528
528
|
});
|
|
529
529
|
}
|
|
530
|
-
function
|
|
530
|
+
function lt({ className: e, ...t }) {
|
|
531
531
|
return /* @__PURE__ */ i("header", {
|
|
532
|
-
className:
|
|
532
|
+
className: q("flex flex-col px-5 py-4", e),
|
|
533
533
|
"data-slot": "frame-panel-header",
|
|
534
534
|
...t
|
|
535
535
|
});
|
|
536
536
|
}
|
|
537
|
-
function
|
|
537
|
+
function ut({ className: e, ...t }) {
|
|
538
538
|
return /* @__PURE__ */ i("div", {
|
|
539
|
-
className:
|
|
539
|
+
className: q("font-semibold text-sm", e),
|
|
540
540
|
"data-slot": "frame-panel-title",
|
|
541
541
|
...t
|
|
542
542
|
});
|
|
543
543
|
}
|
|
544
|
-
function
|
|
544
|
+
function dt({ className: e, ...t }) {
|
|
545
545
|
return /* @__PURE__ */ i("div", {
|
|
546
|
-
className:
|
|
546
|
+
className: q("text-muted-foreground text-sm", e),
|
|
547
547
|
"data-slot": "frame-panel-description",
|
|
548
548
|
...t
|
|
549
549
|
});
|
|
550
550
|
}
|
|
551
|
-
function
|
|
551
|
+
function ft({ className: e, ...t }) {
|
|
552
552
|
return /* @__PURE__ */ i("footer", {
|
|
553
|
-
className:
|
|
553
|
+
className: q("px-5 py-4", e),
|
|
554
554
|
"data-slot": "frame-panel-footer",
|
|
555
555
|
...t
|
|
556
556
|
});
|
|
557
557
|
}
|
|
558
558
|
//#endregion
|
|
559
559
|
//#region src/components/ui/input.tsx
|
|
560
|
-
function
|
|
561
|
-
let s =
|
|
560
|
+
function pt({ className: e, size: t = "default", unstyled: n = !1, nativeInput: r = !1, style: a, ...o }) {
|
|
561
|
+
let s = q("h-8.5 w-full min-w-0 rounded-[inherit] px-[calc(--spacing(3)-1px)] leading-8.5 outline-none [transition:background-color_5000000s_ease-in-out_0s,height_300ms_var(--ease-smooth-out),line-height_300ms_var(--ease-smooth-out),padding_300ms_var(--ease-smooth-out),font-size_300ms_var(--ease-smooth-out)] placeholder:text-muted-foreground/72 motion-reduce:[transition:background-color_5000000s_ease-in-out_0s] sm:h-7.5 sm:leading-7.5", t === "sm" && "h-7.5 px-[calc(--spacing(2.5)-1px)] leading-7.5 sm:h-6.5 sm:leading-6.5", t === "lg" && "h-9.5 leading-9.5 sm:h-8.5 sm:leading-8.5", o.type === "search" && "[&::-webkit-search-cancel-button]:appearance-none [&::-webkit-search-decoration]:appearance-none [&::-webkit-search-results-button]:appearance-none [&::-webkit-search-results-decoration]:appearance-none", o.type === "file" && "text-muted-foreground file:me-3 file:bg-transparent file:font-medium file:text-foreground file:text-sm");
|
|
562
562
|
return /* @__PURE__ */ i("span", {
|
|
563
|
-
className:
|
|
563
|
+
className: q(!n && "relative inline-flex w-full rounded-lg border border-input bg-background not-dark:bg-clip-padding text-base text-foreground shadow-xs/5 ring-ring/24 transition-[box-shadow,border-color] duration-150 ease-smooth-out has-aria-invalid:animate-input-shake motion-reduce:animate-none motion-reduce:transition-none before:pointer-events-none before:absolute before:inset-0 before:rounded-[calc(var(--radius-lg)-1px)] not-has-disabled:not-has-focus-visible:not-has-aria-invalid:before:shadow-[0_1px_--theme(--color-black/4%)] has-focus-visible:has-aria-invalid:border-destructive/64 has-focus-visible:has-aria-invalid:ring-destructive/16 has-aria-invalid:border-destructive/36 has-focus-visible:border-ring has-autofill:bg-foreground/4 has-disabled:opacity-64 has-[:disabled,:focus-visible,[aria-invalid]]:shadow-none has-focus-visible:ring-[3px] sm:text-sm dark:bg-input/32 dark:has-autofill:bg-foreground/8 dark:has-aria-invalid:ring-destructive/24 dark:not-has-disabled:not-has-focus-visible:not-has-aria-invalid:before:shadow-[0_-1px_--theme(--color-white/6%)]", e) || void 0,
|
|
564
564
|
"data-size": t,
|
|
565
565
|
"data-slot": "input-control",
|
|
566
566
|
children: r ? /* @__PURE__ */ i("input", {
|
|
@@ -569,7 +569,7 @@ function mt({ className: e, size: t = "default", unstyled: n = !1, nativeInput:
|
|
|
569
569
|
size: typeof t == "number" ? t : void 0,
|
|
570
570
|
style: typeof a == "function" ? void 0 : a,
|
|
571
571
|
...o
|
|
572
|
-
}) : /* @__PURE__ */ i(
|
|
572
|
+
}) : /* @__PURE__ */ i(he, {
|
|
573
573
|
className: s,
|
|
574
574
|
"data-slot": "input",
|
|
575
575
|
size: typeof t == "number" ? t : void 0,
|
|
@@ -580,12 +580,12 @@ function mt({ className: e, size: t = "default", unstyled: n = !1, nativeInput:
|
|
|
580
580
|
}
|
|
581
581
|
//#endregion
|
|
582
582
|
//#region src/components/ui/textarea.tsx
|
|
583
|
-
function
|
|
583
|
+
function mt({ className: e, size: t = "default", unstyled: n = !1, ref: r, ...a }) {
|
|
584
584
|
return /* @__PURE__ */ i("span", {
|
|
585
|
-
className:
|
|
585
|
+
className: q(!n && "relative inline-flex w-full rounded-lg border border-input bg-background not-dark:bg-clip-padding text-base text-foreground shadow-xs/5 ring-ring/24 transition-shadow before:pointer-events-none before:absolute before:inset-0 before:rounded-[calc(var(--radius-lg)-1px)] has-focus-visible:has-aria-invalid:border-destructive/64 has-focus-visible:has-aria-invalid:ring-destructive/16 has-aria-invalid:border-destructive/36 has-focus-visible:border-ring has-disabled:opacity-64 has-[:disabled,:focus-visible,[aria-invalid]]:shadow-none has-focus-visible:ring-[3px] not-has-disabled:has-not-focus-visible:not-has-aria-invalid:before:shadow-[0_1px_--theme(--color-black/4%)] sm:text-sm dark:bg-input/32 dark:has-aria-invalid:ring-destructive/24 dark:not-has-disabled:has-not-focus-visible:not-has-aria-invalid:before:shadow-[0_-1px_--theme(--color-white/6%)]", e) || void 0,
|
|
586
586
|
"data-size": t,
|
|
587
587
|
"data-slot": "textarea-control",
|
|
588
|
-
children: /* @__PURE__ */ i(
|
|
588
|
+
children: /* @__PURE__ */ i(pe.Control, {
|
|
589
589
|
ref: r,
|
|
590
590
|
value: a.value,
|
|
591
591
|
defaultValue: a.defaultValue,
|
|
@@ -593,7 +593,7 @@ function ht({ className: e, size: t = "default", unstyled: n = !1, ref: r, ...a
|
|
|
593
593
|
id: a.id,
|
|
594
594
|
name: a.name,
|
|
595
595
|
render: (e) => /* @__PURE__ */ i("textarea", {
|
|
596
|
-
className:
|
|
596
|
+
className: q("field-sizing-content min-h-17.5 w-full rounded-[inherit] px-[calc(--spacing(3)-1px)] py-[calc(--spacing(1.5)-1px)] outline-none max-sm:min-h-20.5", t === "sm" && "min-h-16.5 px-[calc(--spacing(2.5)-1px)] py-[calc(--spacing(1)-1px)] max-sm:min-h-19.5", t === "lg" && "min-h-18.5 py-[calc(--spacing(2)-1px)] max-sm:min-h-21.5"),
|
|
597
597
|
"data-slot": "textarea",
|
|
598
598
|
...o(e, a)
|
|
599
599
|
})
|
|
@@ -602,7 +602,7 @@ function ht({ className: e, size: t = "default", unstyled: n = !1, ref: r, ...a
|
|
|
602
602
|
}
|
|
603
603
|
//#endregion
|
|
604
604
|
//#region src/components/ui/input-group.tsx
|
|
605
|
-
var
|
|
605
|
+
var ht = c("flex h-auto cursor-text select-none items-center justify-center gap-2 leading-none [&>kbd]:rounded-[calc(var(--radius)-5px)] in-[[data-slot=input-group]:has([data-slot=input-control],[data-slot=textarea-control])]:[&_svg:not([class*='size-'])]:size-4.5 sm:in-[[data-slot=input-group]:has([data-slot=input-control],[data-slot=textarea-control])]:[&_svg:not([class*='size-'])]:size-4 [&_svg]:-mx-0.5 not-has-[button]:**:[svg:not([class*='opacity-'])]:opacity-80", {
|
|
606
606
|
defaultVariants: { align: "inline-start" },
|
|
607
607
|
variants: { align: {
|
|
608
608
|
"block-end": "order-last w-full justify-start px-[calc(--spacing(3)-1px)] pb-[calc(--spacing(3)-1px)] [.border-t]:pt-[calc(--spacing(3)-1px)] [[data-size=sm]+&]:px-[calc(--spacing(2.5)-1px)]",
|
|
@@ -611,17 +611,17 @@ var gt = c("flex h-auto cursor-text select-none items-center justify-center gap-
|
|
|
611
611
|
"inline-start": "order-first ps-[calc(--spacing(3)-1px)] has-[>:last-child[data-slot=badge]]:-ms-1.5 has-[>button]:-ms-2 has-[>kbd:last-child]:ms-[-0.35rem] [[data-size=sm]+&]:ps-[calc(--spacing(2.5)-1px)]"
|
|
612
612
|
} }
|
|
613
613
|
});
|
|
614
|
-
function
|
|
614
|
+
function gt({ className: e, ...t }) {
|
|
615
615
|
return /* @__PURE__ */ i("div", {
|
|
616
|
-
className:
|
|
616
|
+
className: q("relative inline-flex w-full min-w-0 items-center rounded-lg border border-input bg-background not-dark:bg-clip-padding text-base text-foreground shadow-xs/5 ring-ring/24 transition-shadow before:pointer-events-none before:absolute before:inset-0 before:rounded-[calc(var(--radius-lg)-1px)] not-has-[input:disabled,textarea:disabled]:not-has-[input:focus-visible,textarea:focus-visible]:not-has-[input[aria-invalid],textarea[aria-invalid]]:before:shadow-[0_1px_--theme(--color-black/4%)] has-[input:focus-visible,textarea:focus-visible]:has-[input[aria-invalid],textarea[aria-invalid]]:border-destructive/64 has-[input:focus-visible,textarea:focus-visible]:has-[input[aria-invalid],textarea[aria-invalid]]:ring-destructive/16 has-[textarea]:h-auto has-data-[align=block-end]:h-auto has-data-[align=block-start]:h-auto has-data-[align=block-end]:flex-col has-data-[align=block-start]:flex-col has-[input:focus-visible,textarea:focus-visible]:border-ring has-[input[aria-invalid],textarea[aria-invalid]]:border-destructive/36 has-autofill:bg-foreground/4 has-[input:disabled,textarea:disabled]:opacity-64 has-[input:disabled,textarea:disabled,input:focus-visible,textarea:focus-visible,input[aria-invalid],textarea[aria-invalid]]:shadow-none has-[input:focus-visible,textarea:focus-visible]:ring-[3px] sm:text-sm dark:bg-input/32 dark:has-autofill:bg-foreground/8 dark:has-[input[aria-invalid],textarea[aria-invalid]]:ring-destructive/24 dark:not-has-[input:disabled,textarea:disabled]:not-has-[input:focus-visible,textarea:focus-visible]:not-has-[input[aria-invalid],textarea[aria-invalid]]:before:shadow-[0_-1px_--theme(--color-white/6%)] has-data-[align=inline-start]:**:[[data-size=sm]_input]:ps-1.5 has-data-[align=inline-end]:**:[[data-size=sm]_input]:pe-1.5 *:[[data-slot=input-control],[data-slot=textarea-control]]:contents *:[[data-slot=input-control],[data-slot=textarea-control]]:before:hidden has-[[data-align=block-start],[data-align=block-end]]:**:[input]:h-auto has-data-[align=inline-start]:**:[input]:ps-2 has-data-[align=inline-end]:**:[input]:pe-2 has-data-[align=block-end]:**:[input]:pt-1.5 has-data-[align=block-start]:**:[input]:pb-1.5 **:[textarea]:min-h-20.5 **:[textarea]:resize-none **:[textarea]:py-[calc(--spacing(3)-1px)] **:[textarea]:max-sm:min-h-23.5 **:[textarea_button]:rounded-[calc(var(--radius-md)-1px)]", e),
|
|
617
617
|
"data-slot": "input-group",
|
|
618
618
|
role: "group",
|
|
619
619
|
...t
|
|
620
620
|
});
|
|
621
621
|
}
|
|
622
|
-
function
|
|
622
|
+
function _t({ className: e, align: t = "inline-start", ...n }) {
|
|
623
623
|
return /* @__PURE__ */ i("div", {
|
|
624
|
-
className:
|
|
624
|
+
className: q(ht({ align: t }), e),
|
|
625
625
|
"data-align": t,
|
|
626
626
|
"data-slot": "input-group-addon",
|
|
627
627
|
onMouseDown: (e) => {
|
|
@@ -633,21 +633,21 @@ function vt({ className: e, align: t = "inline-start", ...n }) {
|
|
|
633
633
|
...n
|
|
634
634
|
});
|
|
635
635
|
}
|
|
636
|
-
function
|
|
636
|
+
function vt({ className: e, ...t }) {
|
|
637
637
|
return /* @__PURE__ */ i("span", {
|
|
638
|
-
className:
|
|
638
|
+
className: q("line-clamp-1 flex items-center gap-2 whitespace-nowrap text-muted-foreground leading-none in-[[data-slot=input-group]:has([data-slot=input-control],[data-slot=textarea-control])]:[&_svg:not([class*='size-'])]:size-4.5 sm:in-[[data-slot=input-group]:has([data-slot=input-control],[data-slot=textarea-control])]:[&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:-mx-0.5", e),
|
|
639
639
|
...t
|
|
640
640
|
});
|
|
641
641
|
}
|
|
642
|
-
function
|
|
643
|
-
return /* @__PURE__ */ i(
|
|
642
|
+
function yt({ className: e, ...t }) {
|
|
643
|
+
return /* @__PURE__ */ i(pt, {
|
|
644
644
|
className: e,
|
|
645
645
|
unstyled: !0,
|
|
646
646
|
...t
|
|
647
647
|
});
|
|
648
648
|
}
|
|
649
|
-
function
|
|
650
|
-
return /* @__PURE__ */ i(
|
|
649
|
+
function bt({ className: e, ...t }) {
|
|
650
|
+
return /* @__PURE__ */ i(mt, {
|
|
651
651
|
className: e,
|
|
652
652
|
unstyled: !0,
|
|
653
653
|
...t
|
|
@@ -655,11 +655,11 @@ function xt({ className: e, ...t }) {
|
|
|
655
655
|
}
|
|
656
656
|
//#endregion
|
|
657
657
|
//#region src/components/ui/label.tsx
|
|
658
|
-
function
|
|
658
|
+
function xt({ className: e, render: t, sound: n = !1, ...r }) {
|
|
659
659
|
return s({
|
|
660
660
|
defaultTagName: "label",
|
|
661
661
|
props: o({
|
|
662
|
-
className:
|
|
662
|
+
className: q("inline-flex cursor-pointer items-center gap-2 font-medium text-base/4.5 text-foreground sm:text-sm/4", e),
|
|
663
663
|
"data-cuelume-hover": n ? "tick" : void 0,
|
|
664
664
|
"data-slot": "label"
|
|
665
665
|
}, r),
|
|
@@ -668,19 +668,19 @@ function St({ className: e, render: t, sound: n = !1, ...r }) {
|
|
|
668
668
|
}
|
|
669
669
|
//#endregion
|
|
670
670
|
//#region src/components/ui/menu.tsx
|
|
671
|
-
var
|
|
672
|
-
function
|
|
673
|
-
return /* @__PURE__ */ i(
|
|
671
|
+
var St = W.createHandle, Ct = W.Root, wt = W.Portal;
|
|
672
|
+
function Tt({ className: e, children: t, ...n }) {
|
|
673
|
+
return /* @__PURE__ */ i(W.Trigger, {
|
|
674
674
|
className: e,
|
|
675
675
|
"data-slot": "menu-trigger",
|
|
676
676
|
...n,
|
|
677
677
|
children: t
|
|
678
678
|
});
|
|
679
679
|
}
|
|
680
|
-
function
|
|
681
|
-
return /* @__PURE__ */ i(
|
|
680
|
+
function Et({ children: e, className: t, sideOffset: n = 4, align: r = "center", alignOffset: a, side: o = "bottom", anchor: s, portalProps: c, ...l }) {
|
|
681
|
+
return /* @__PURE__ */ i(wt, {
|
|
682
682
|
...c,
|
|
683
|
-
children: /* @__PURE__ */ i(
|
|
683
|
+
children: /* @__PURE__ */ i(W.Positioner, {
|
|
684
684
|
align: r,
|
|
685
685
|
alignOffset: a,
|
|
686
686
|
anchor: s,
|
|
@@ -688,8 +688,8 @@ function Dt({ children: e, className: t, sideOffset: n = 4, align: r = "center",
|
|
|
688
688
|
"data-slot": "menu-positioner",
|
|
689
689
|
side: o,
|
|
690
690
|
sideOffset: n,
|
|
691
|
-
children: /* @__PURE__ */ i(
|
|
692
|
-
className:
|
|
691
|
+
children: /* @__PURE__ */ i(W.Popup, {
|
|
692
|
+
className: q("relative flex not-[class*='w-']:min-w-32 origin-(--transform-origin) rounded-lg border bg-popover not-dark:bg-clip-padding shadow-lg/5 outline-none before:pointer-events-none before:absolute before:inset-0 before:rounded-[calc(var(--radius-lg)-1px)] before:shadow-[0_1px_--theme(--color-black/4%)] focus:outline-none dark:before:shadow-[0_-1px_--theme(--color-white/6%)]", t),
|
|
693
693
|
"data-slot": "menu-popup",
|
|
694
694
|
...l,
|
|
695
695
|
children: /* @__PURE__ */ i("div", {
|
|
@@ -700,24 +700,24 @@ function Dt({ children: e, className: t, sideOffset: n = 4, align: r = "center",
|
|
|
700
700
|
})
|
|
701
701
|
});
|
|
702
702
|
}
|
|
703
|
-
function
|
|
704
|
-
return /* @__PURE__ */ i(
|
|
703
|
+
function Dt(e) {
|
|
704
|
+
return /* @__PURE__ */ i(W.Group, {
|
|
705
705
|
"data-slot": "menu-group",
|
|
706
706
|
...e
|
|
707
707
|
});
|
|
708
708
|
}
|
|
709
|
-
function
|
|
710
|
-
return /* @__PURE__ */ i(
|
|
711
|
-
className:
|
|
709
|
+
function Ot({ className: e, inset: t, variant: n = "default", ...r }) {
|
|
710
|
+
return /* @__PURE__ */ i(W.Item, {
|
|
711
|
+
className: q("flex min-h-8 cursor-default select-none items-center gap-2 rounded-sm px-2 py-1 text-base text-foreground outline-none data-disabled:pointer-events-none data-highlighted:bg-accent data-inset:ps-8 data-[variant=destructive]:text-destructive-foreground data-highlighted:text-accent-foreground data-disabled:opacity-64 sm:min-h-7 sm:text-sm [&>svg:not([class*='opacity-'])]:opacity-80 [&>svg:not([class*='size-'])]:size-4.5 sm:[&>svg:not([class*='size-'])]:size-4 [&>svg]:pointer-events-none [&>svg]:-mx-0.5 [&>svg]:shrink-0", e),
|
|
712
712
|
"data-inset": t,
|
|
713
713
|
"data-slot": "menu-item",
|
|
714
714
|
"data-variant": n,
|
|
715
715
|
...r
|
|
716
716
|
});
|
|
717
717
|
}
|
|
718
|
-
function
|
|
719
|
-
return /* @__PURE__ */ i(
|
|
720
|
-
className:
|
|
718
|
+
function kt({ className: e, inset: t, variant: n = "default", closeOnClick: r = !0, ...a }) {
|
|
719
|
+
return /* @__PURE__ */ i(W.LinkItem, {
|
|
720
|
+
className: q("flex min-h-8 cursor-default select-none items-center gap-2 rounded-sm px-2 py-1 text-base text-foreground outline-none data-disabled:pointer-events-none data-highlighted:bg-accent data-inset:ps-8 data-[variant=destructive]:text-destructive-foreground data-highlighted:text-accent-foreground data-disabled:opacity-64 sm:min-h-7 sm:text-sm [&>svg:not([class*='opacity-'])]:opacity-80 [&>svg:not([class*='size-'])]:size-4.5 sm:[&>svg:not([class*='size-'])]:size-4 [&>svg]:pointer-events-none [&>svg]:-mx-0.5 [&>svg]:shrink-0", e),
|
|
721
721
|
closeOnClick: r,
|
|
722
722
|
"data-inset": t,
|
|
723
723
|
"data-slot": "menu-link-item",
|
|
@@ -725,20 +725,20 @@ function At({ className: e, inset: t, variant: n = "default", closeOnClick: r =
|
|
|
725
725
|
...a
|
|
726
726
|
});
|
|
727
727
|
}
|
|
728
|
-
function
|
|
729
|
-
return /* @__PURE__ */ i(
|
|
728
|
+
function At({ className: e, children: t, checked: n, variant: o = "default", ...s }) {
|
|
729
|
+
return /* @__PURE__ */ i(W.CheckboxItem, {
|
|
730
730
|
checked: n,
|
|
731
|
-
className:
|
|
731
|
+
className: q("grid min-h-8 in-data-[side=none]:min-w-[calc(var(--anchor-width)+1.25rem)] cursor-default items-center gap-2 rounded-sm py-1 ps-2 text-base text-foreground outline-none data-disabled:pointer-events-none data-highlighted:bg-accent data-highlighted:text-accent-foreground data-disabled:opacity-64 sm:min-h-7 sm:text-sm [&_svg:not([class*='size-'])]:size-4.5 sm:[&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0", o === "switch" ? "grid-cols-[1fr_auto] gap-4 pe-1.5" : "grid-cols-[.75rem_1fr] pe-4", e),
|
|
732
732
|
"data-slot": "menu-checkbox-item",
|
|
733
733
|
...s,
|
|
734
734
|
children: o === "switch" ? /* @__PURE__ */ a(r, { children: [/* @__PURE__ */ i("span", {
|
|
735
735
|
className: "col-start-1",
|
|
736
736
|
children: t
|
|
737
|
-
}), /* @__PURE__ */ i(
|
|
737
|
+
}), /* @__PURE__ */ i(W.CheckboxItemIndicator, {
|
|
738
738
|
className: "inset-shadow-[0_1px_--theme(--color-black/4%)] inline-flex h-[calc(var(--thumb-size)+2px)] w-[calc(var(--thumb-size)*2-2px)] shrink-0 items-center rounded-full p-px outline-none transition-[background-color,box-shadow] duration-200 [--thumb-size:--spacing(4)] focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:ring-offset-background data-checked:bg-primary data-unchecked:bg-input data-disabled:opacity-64 sm:[--thumb-size:--spacing(3)]",
|
|
739
739
|
keepMounted: !0,
|
|
740
740
|
children: /* @__PURE__ */ i("span", { className: "pointer-events-none block aspect-square h-full in-[[data-slot=menu-checkbox-item][data-checked]]:origin-[var(--thumb-size)_50%] origin-left in-[[data-slot=menu-checkbox-item][data-checked]]:translate-x-[calc(var(--thumb-size)-4px)] in-[[data-slot=menu-checkbox-item]:active]:not-data-disabled:scale-x-110 in-[[data-slot=menu-checkbox-item]:active]:rounded-[var(--thumb-size)/calc(var(--thumb-size)*1.10)] rounded-(--thumb-size) bg-background shadow-sm/5 will-change-transform [transition:translate_.15s,border-radius_.15s,scale_.1s_.1s,transform-origin_.15s]" })
|
|
741
|
-
})] }) : /* @__PURE__ */ a(r, { children: [/* @__PURE__ */ i(
|
|
741
|
+
})] }) : /* @__PURE__ */ a(r, { children: [/* @__PURE__ */ i(W.CheckboxItemIndicator, {
|
|
742
742
|
className: "col-start-1 -ms-0.5",
|
|
743
743
|
children: /* @__PURE__ */ i("svg", {
|
|
744
744
|
"aria-hidden": "true",
|
|
@@ -759,18 +759,18 @@ function jt({ className: e, children: t, checked: n, variant: o = "default", ...
|
|
|
759
759
|
})] })
|
|
760
760
|
});
|
|
761
761
|
}
|
|
762
|
-
function
|
|
763
|
-
return /* @__PURE__ */ i(
|
|
762
|
+
function jt(e) {
|
|
763
|
+
return /* @__PURE__ */ i(W.RadioGroup, {
|
|
764
764
|
"data-slot": "menu-radio-group",
|
|
765
765
|
...e
|
|
766
766
|
});
|
|
767
767
|
}
|
|
768
|
-
function
|
|
769
|
-
return /* @__PURE__ */ a(
|
|
770
|
-
className:
|
|
768
|
+
function Mt({ className: e, children: t, ...n }) {
|
|
769
|
+
return /* @__PURE__ */ a(W.RadioItem, {
|
|
770
|
+
className: q("grid min-h-8 in-data-[side=none]:min-w-[calc(var(--anchor-width)+1.25rem)] cursor-default grid-cols-[.75rem_1fr] items-center gap-2 rounded-sm py-1 ps-2 pe-4 text-base text-foreground outline-none data-disabled:pointer-events-none data-highlighted:bg-accent data-highlighted:text-accent-foreground data-disabled:opacity-64 sm:min-h-7 sm:text-sm [&_svg:not([class*='size-'])]:size-4.5 sm:[&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0", e),
|
|
771
771
|
"data-slot": "menu-radio-item",
|
|
772
772
|
...n,
|
|
773
|
-
children: [/* @__PURE__ */ i(
|
|
773
|
+
children: [/* @__PURE__ */ i(W.RadioItemIndicator, {
|
|
774
774
|
className: "col-start-1 -ms-0.5",
|
|
775
775
|
children: /* @__PURE__ */ i("svg", {
|
|
776
776
|
"aria-hidden": "true",
|
|
@@ -791,45 +791,45 @@ function Nt({ className: e, children: t, ...n }) {
|
|
|
791
791
|
})]
|
|
792
792
|
});
|
|
793
793
|
}
|
|
794
|
-
function
|
|
795
|
-
return /* @__PURE__ */ i(
|
|
796
|
-
className:
|
|
794
|
+
function Nt({ className: e, inset: t, ...n }) {
|
|
795
|
+
return /* @__PURE__ */ i(W.GroupLabel, {
|
|
796
|
+
className: q("px-2 py-1.5 font-medium text-muted-foreground text-xs data-inset:ps-9 sm:data-inset:ps-8", e),
|
|
797
797
|
"data-inset": t,
|
|
798
798
|
"data-slot": "menu-label",
|
|
799
799
|
...n
|
|
800
800
|
});
|
|
801
801
|
}
|
|
802
|
-
function
|
|
803
|
-
return /* @__PURE__ */ i(
|
|
804
|
-
className:
|
|
802
|
+
function Pt({ className: e, ...t }) {
|
|
803
|
+
return /* @__PURE__ */ i(W.Separator, {
|
|
804
|
+
className: q("mx-2 my-1 h-px bg-border", e),
|
|
805
805
|
"data-slot": "menu-separator",
|
|
806
806
|
...t
|
|
807
807
|
});
|
|
808
808
|
}
|
|
809
|
-
function
|
|
809
|
+
function Ft({ className: e, ...t }) {
|
|
810
810
|
return /* @__PURE__ */ i("kbd", {
|
|
811
|
-
className:
|
|
811
|
+
className: q("ms-auto font-medium font-sans text-muted-foreground/72 text-xs tracking-widest", e),
|
|
812
812
|
"data-slot": "menu-shortcut",
|
|
813
813
|
...t
|
|
814
814
|
});
|
|
815
815
|
}
|
|
816
|
-
function
|
|
817
|
-
return /* @__PURE__ */ i(
|
|
816
|
+
function It(e) {
|
|
817
|
+
return /* @__PURE__ */ i(W.SubmenuRoot, {
|
|
818
818
|
"data-slot": "menu-sub",
|
|
819
819
|
...e
|
|
820
820
|
});
|
|
821
821
|
}
|
|
822
|
-
function
|
|
823
|
-
return /* @__PURE__ */ a(
|
|
824
|
-
className:
|
|
822
|
+
function Lt({ className: e, inset: t, children: n, ...r }) {
|
|
823
|
+
return /* @__PURE__ */ a(W.SubmenuTrigger, {
|
|
824
|
+
className: q("flex min-h-8 items-center gap-2 rounded-sm px-2 py-1 text-base text-foreground outline-none data-disabled:pointer-events-none data-highlighted:bg-accent data-popup-open:bg-accent data-inset:ps-8 data-highlighted:text-accent-foreground data-popup-open:text-accent-foreground data-disabled:opacity-64 sm:min-h-7 sm:text-sm [&>svg:not(:last-child)]:-mx-0.5 [&_svg:not([class*='size-'])]:size-4.5 sm:[&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none", e),
|
|
825
825
|
"data-inset": t,
|
|
826
826
|
"data-slot": "menu-sub-trigger",
|
|
827
827
|
...r,
|
|
828
828
|
children: [n, /* @__PURE__ */ i(p, { className: "ms-auto -me-0.5 opacity-80" })]
|
|
829
829
|
});
|
|
830
830
|
}
|
|
831
|
-
function
|
|
832
|
-
return /* @__PURE__ */ i(
|
|
831
|
+
function Rt({ className: e, sideOffset: t = 0, alignOffset: n, align: r = "start", ...a }) {
|
|
832
|
+
return /* @__PURE__ */ i(Et, {
|
|
833
833
|
align: r,
|
|
834
834
|
alignOffset: n ?? (r === "center" ? void 0 : -5),
|
|
835
835
|
className: e,
|
|
@@ -841,9 +841,9 @@ function zt({ className: e, sideOffset: t = 0, alignOffset: n, align: r = "start
|
|
|
841
841
|
}
|
|
842
842
|
//#endregion
|
|
843
843
|
//#region src/components/ui/separator.tsx
|
|
844
|
-
function
|
|
845
|
-
return /* @__PURE__ */ i(
|
|
846
|
-
className:
|
|
844
|
+
function zt({ className: e, orientation: t = "horizontal", ...n }) {
|
|
845
|
+
return /* @__PURE__ */ i(_e, {
|
|
846
|
+
className: q("shrink-0 bg-border data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:w-px data-[orientation=vertical]:not-[[class^='h-']]:not-[[class*='_h-']]:self-stretch", e),
|
|
847
847
|
"data-slot": "separator",
|
|
848
848
|
orientation: t,
|
|
849
849
|
...n
|
|
@@ -851,50 +851,50 @@ function Bt({ className: e, orientation: t = "horizontal", ...n }) {
|
|
|
851
851
|
}
|
|
852
852
|
//#endregion
|
|
853
853
|
//#region src/components/ui/otp-field.tsx
|
|
854
|
-
function
|
|
855
|
-
let o =
|
|
856
|
-
return /* @__PURE__ */ i(
|
|
857
|
-
className:
|
|
854
|
+
function Bt({ className: e, size: t = "default", sound: n = !0, onValueChange: r, ...a }) {
|
|
855
|
+
let o = P.useRef(String(a.value ?? a.defaultValue ?? "").length);
|
|
856
|
+
return /* @__PURE__ */ i(ge.Root, {
|
|
857
|
+
className: q("flex items-center gap-2 has-disabled:opacity-64 has-disabled:**:data-[slot=otp-field-input]:shadow-none has-disabled:**:data-[slot=otp-field-input]:before:shadow-none!", e),
|
|
858
858
|
"data-size": t,
|
|
859
859
|
"data-slot": "otp-field",
|
|
860
860
|
onValueChange: (e, ...t) => {
|
|
861
|
-
n && e.length > o.current &&
|
|
861
|
+
n && e.length > o.current && et("tick"), o.current = e.length, r?.(e, ...t);
|
|
862
862
|
},
|
|
863
863
|
...a
|
|
864
864
|
});
|
|
865
865
|
}
|
|
866
|
-
function
|
|
867
|
-
return /* @__PURE__ */ i(
|
|
868
|
-
className:
|
|
866
|
+
function Vt({ className: e, ...t }) {
|
|
867
|
+
return /* @__PURE__ */ i(ge.Input, {
|
|
868
|
+
className: q("relative in-[[data-slot=otp-field][data-size=lg]]:size-10 size-9 min-w-0 rounded-lg border border-input bg-background not-dark:bg-clip-padding text-center in-[[data-slot=otp-field][data-size=lg]]:text-lg text-base text-foreground in-[[data-slot=otp-field][data-size=lg]]:leading-10 leading-9 shadow-xs/5 outline-none ring-ring/24 transition-shadow before:pointer-events-none before:absolute before:inset-0 before:rounded-[calc(var(--radius-lg)-1px)] not-focus-visible:not-aria-invalid:before:shadow-[0_1px_--theme(--color-black/4%)] focus-visible:z-10 focus-visible:border-ring focus-visible:shadow-none focus-visible:ring-[3px] focus-visible:ring-ring/24 aria-invalid:border-destructive/36 aria-invalid:shadow-none aria-invalid:focus-visible:border-destructive/64 aria-invalid:focus-visible:ring-destructive/16 sm:in-[[data-slot=otp-field][data-size=lg]]:size-9 sm:size-8 sm:in-[[data-slot=otp-field][data-size=lg]]:text-base sm:text-sm sm:in-[[data-slot=otp-field][data-size=lg]]:leading-9 sm:leading-8 dark:bg-input/32 dark:aria-invalid:focus-visible:ring-destructive/24 dark:not-focus-visible:not-aria-invalid:before:shadow-[0_-1px_--theme(--color-white/6%)]", e),
|
|
869
869
|
"data-slot": "otp-field-input",
|
|
870
870
|
spellCheck: !1,
|
|
871
871
|
...t
|
|
872
872
|
});
|
|
873
873
|
}
|
|
874
|
-
function
|
|
875
|
-
return /* @__PURE__ */ i(
|
|
876
|
-
className:
|
|
874
|
+
function Ht({ className: e, ...t }) {
|
|
875
|
+
return /* @__PURE__ */ i(ge.Separator, { render: /* @__PURE__ */ i(zt, {
|
|
876
|
+
className: q("rounded-full bg-input data-[orientation=horizontal]:h-0.5 data-[orientation=horizontal]:w-3", e),
|
|
877
877
|
orientation: "horizontal",
|
|
878
878
|
...t
|
|
879
879
|
}) });
|
|
880
880
|
}
|
|
881
881
|
//#endregion
|
|
882
882
|
//#region src/components/ui/skeleton.tsx
|
|
883
|
-
function
|
|
883
|
+
function Ut({ className: e, ...t }) {
|
|
884
884
|
return /* @__PURE__ */ i("div", {
|
|
885
|
-
className:
|
|
885
|
+
className: q("animate-skeleton rounded-sm [--skeleton-highlight:--alpha(var(--color-white)/64%)] [background:linear-gradient(120deg,transparent_40%,var(--skeleton-highlight),transparent_60%)_var(--color-muted)_0_0/200%_100%_fixed] dark:[--skeleton-highlight:--alpha(var(--color-white)/4%)]", e),
|
|
886
886
|
"data-slot": "skeleton",
|
|
887
887
|
...t
|
|
888
888
|
});
|
|
889
889
|
}
|
|
890
890
|
//#endregion
|
|
891
891
|
//#region src/components/composed/password-input.tsx
|
|
892
|
-
var
|
|
892
|
+
var Wt = [
|
|
893
893
|
.22,
|
|
894
894
|
1,
|
|
895
895
|
.36,
|
|
896
896
|
1
|
|
897
|
-
],
|
|
897
|
+
], Gt = [
|
|
898
898
|
{
|
|
899
899
|
regex: /.{8,}/,
|
|
900
900
|
text: "At least 8 characters"
|
|
@@ -912,21 +912,21 @@ var Gt = [
|
|
|
912
912
|
text: "At least 1 uppercase letter"
|
|
913
913
|
}
|
|
914
914
|
];
|
|
915
|
-
function
|
|
916
|
-
return
|
|
915
|
+
function Kt(e) {
|
|
916
|
+
return Gt.filter((t) => t.regex.test(e)).length;
|
|
917
917
|
}
|
|
918
|
-
var
|
|
918
|
+
var qt = [
|
|
919
919
|
"bg-border",
|
|
920
920
|
"bg-red-500",
|
|
921
921
|
"bg-orange-500",
|
|
922
922
|
"bg-amber-500",
|
|
923
923
|
"bg-emerald-500"
|
|
924
924
|
];
|
|
925
|
-
function
|
|
926
|
-
let [u, f] =
|
|
925
|
+
function Jt({ visibilityToggle: e = !0, showStrength: t = !1, sound: n = !0, className: r, value: o, defaultValue: s, onChange: c, ...l }) {
|
|
926
|
+
let [u, f] = P.useState(!1), [p, m] = P.useState(String(s ?? "")), _ = o === void 0 ? p : String(o), v = Kt(_);
|
|
927
927
|
return /* @__PURE__ */ a("div", {
|
|
928
|
-
className:
|
|
929
|
-
children: [/* @__PURE__ */ a(
|
|
928
|
+
className: q("flex w-full flex-col gap-3", r),
|
|
929
|
+
children: [/* @__PURE__ */ a(gt, { children: [/* @__PURE__ */ i(yt, {
|
|
930
930
|
placeholder: "Enter your password",
|
|
931
931
|
...l,
|
|
932
932
|
type: u ? "text" : "password",
|
|
@@ -934,20 +934,20 @@ function Yt({ visibilityToggle: e = !0, showStrength: t = !1, sound: n = !0, cla
|
|
|
934
934
|
onChange: (e) => {
|
|
935
935
|
m(e.target.value), c?.(e);
|
|
936
936
|
}
|
|
937
|
-
}), e && /* @__PURE__ */ i(
|
|
937
|
+
}), e && /* @__PURE__ */ i(_t, {
|
|
938
938
|
align: "inline-end",
|
|
939
|
-
children: /* @__PURE__ */ i(
|
|
939
|
+
children: /* @__PURE__ */ i(J, {
|
|
940
940
|
"aria-label": u ? "Hide password" : "Show password",
|
|
941
941
|
onClick: () => {
|
|
942
|
-
n &&
|
|
942
|
+
n && et(u ? "droplet" : "bloom"), f((e) => !e);
|
|
943
943
|
},
|
|
944
944
|
size: "icon-xs",
|
|
945
945
|
variant: "ghost",
|
|
946
946
|
sound: !1,
|
|
947
|
-
children: /* @__PURE__ */ i(
|
|
947
|
+
children: /* @__PURE__ */ i(G, {
|
|
948
948
|
mode: "wait",
|
|
949
949
|
initial: !1,
|
|
950
|
-
children: /* @__PURE__ */ i(
|
|
950
|
+
children: /* @__PURE__ */ i(K.span, {
|
|
951
951
|
className: "inline-flex",
|
|
952
952
|
initial: {
|
|
953
953
|
opacity: 0,
|
|
@@ -966,15 +966,15 @@ function Yt({ visibilityToggle: e = !0, showStrength: t = !1, sound: n = !0, cla
|
|
|
966
966
|
},
|
|
967
967
|
transition: {
|
|
968
968
|
duration: .15,
|
|
969
|
-
ease:
|
|
969
|
+
ease: Wt
|
|
970
970
|
},
|
|
971
971
|
children: i(u ? g : h, { "aria-hidden": "true" })
|
|
972
972
|
}, u ? "off" : "on")
|
|
973
973
|
})
|
|
974
974
|
})
|
|
975
|
-
})] }), /* @__PURE__ */ i(
|
|
975
|
+
})] }), /* @__PURE__ */ i(G, {
|
|
976
976
|
initial: !1,
|
|
977
|
-
children: t && /* @__PURE__ */ a(
|
|
977
|
+
children: t && /* @__PURE__ */ a(K.div, {
|
|
978
978
|
className: "flex flex-col gap-2 overflow-hidden",
|
|
979
979
|
initial: {
|
|
980
980
|
height: 0,
|
|
@@ -990,7 +990,7 @@ function Yt({ visibilityToggle: e = !0, showStrength: t = !1, sound: n = !0, cla
|
|
|
990
990
|
},
|
|
991
991
|
transition: {
|
|
992
992
|
duration: .25,
|
|
993
|
-
ease:
|
|
993
|
+
ease: Wt
|
|
994
994
|
},
|
|
995
995
|
children: [/* @__PURE__ */ i("div", {
|
|
996
996
|
"aria-label": "Password strength",
|
|
@@ -999,25 +999,25 @@ function Yt({ visibilityToggle: e = !0, showStrength: t = !1, sound: n = !0, cla
|
|
|
999
999
|
"aria-valuenow": v,
|
|
1000
1000
|
className: "h-1 w-full overflow-hidden rounded-full bg-border",
|
|
1001
1001
|
role: "progressbar",
|
|
1002
|
-
children: /* @__PURE__ */ i(
|
|
1003
|
-
className:
|
|
1002
|
+
children: /* @__PURE__ */ i(K.div, {
|
|
1003
|
+
className: q("h-full rounded-full", qt[v]),
|
|
1004
1004
|
animate: { width: `${v / 4 * 100}%` },
|
|
1005
1005
|
transition: {
|
|
1006
1006
|
duration: .4,
|
|
1007
|
-
ease:
|
|
1007
|
+
ease: Wt
|
|
1008
1008
|
}
|
|
1009
1009
|
})
|
|
1010
1010
|
}), /* @__PURE__ */ i("ul", {
|
|
1011
1011
|
"aria-label": "Password requirements",
|
|
1012
1012
|
className: "flex flex-col gap-1",
|
|
1013
|
-
children:
|
|
1013
|
+
children: Gt.map((e) => {
|
|
1014
1014
|
let t = e.regex.test(_);
|
|
1015
1015
|
return /* @__PURE__ */ a("li", {
|
|
1016
1016
|
className: "flex items-center gap-2 text-xs",
|
|
1017
1017
|
children: [t ? /* @__PURE__ */ i(d, {
|
|
1018
1018
|
"aria-hidden": "true",
|
|
1019
1019
|
className: "size-3.5 text-emerald-500"
|
|
1020
|
-
}) : /* @__PURE__ */ i(
|
|
1020
|
+
}) : /* @__PURE__ */ i(N, {
|
|
1021
1021
|
"aria-hidden": "true",
|
|
1022
1022
|
className: "size-3.5 text-muted-foreground/80"
|
|
1023
1023
|
}), /* @__PURE__ */ a("span", {
|
|
@@ -1036,7 +1036,7 @@ function Yt({ visibilityToggle: e = !0, showStrength: t = !1, sound: n = !0, cla
|
|
|
1036
1036
|
}
|
|
1037
1037
|
//#endregion
|
|
1038
1038
|
//#region src/components/composed/social-providers.tsx
|
|
1039
|
-
function
|
|
1039
|
+
function Yt(e) {
|
|
1040
1040
|
return /* @__PURE__ */ a("svg", {
|
|
1041
1041
|
viewBox: "0 0 24 24",
|
|
1042
1042
|
fill: "none",
|
|
@@ -1061,58 +1061,58 @@ function Xt(e) {
|
|
|
1061
1061
|
]
|
|
1062
1062
|
});
|
|
1063
1063
|
}
|
|
1064
|
-
var
|
|
1064
|
+
var Xt = {
|
|
1065
1065
|
google: {
|
|
1066
1066
|
label: "Google",
|
|
1067
|
-
Icon:
|
|
1068
|
-
BrandIcon:
|
|
1067
|
+
Icon: Se,
|
|
1068
|
+
BrandIcon: Yt,
|
|
1069
1069
|
brandClassName: ""
|
|
1070
1070
|
},
|
|
1071
1071
|
apple: {
|
|
1072
1072
|
label: "Apple",
|
|
1073
|
-
Icon:
|
|
1074
|
-
BrandIcon:
|
|
1073
|
+
Icon: be,
|
|
1074
|
+
BrandIcon: be,
|
|
1075
1075
|
brandClassName: "text-foreground"
|
|
1076
1076
|
},
|
|
1077
1077
|
github: {
|
|
1078
1078
|
label: "GitHub",
|
|
1079
|
-
Icon:
|
|
1080
|
-
BrandIcon:
|
|
1079
|
+
Icon: xe,
|
|
1080
|
+
BrandIcon: xe,
|
|
1081
1081
|
brandClassName: "text-foreground"
|
|
1082
1082
|
},
|
|
1083
1083
|
x: {
|
|
1084
1084
|
label: "X",
|
|
1085
|
-
Icon:
|
|
1086
|
-
BrandIcon:
|
|
1085
|
+
Icon: Ce,
|
|
1086
|
+
BrandIcon: Ce,
|
|
1087
1087
|
brandClassName: "text-foreground"
|
|
1088
1088
|
}
|
|
1089
|
-
},
|
|
1089
|
+
}, Zt = {
|
|
1090
1090
|
login: "Login with",
|
|
1091
1091
|
signup: "Sign up with",
|
|
1092
1092
|
continue: "Continue with"
|
|
1093
1093
|
};
|
|
1094
|
-
function
|
|
1094
|
+
function Qt({ providers: e = [
|
|
1095
1095
|
"google",
|
|
1096
1096
|
"apple",
|
|
1097
1097
|
"github"
|
|
1098
1098
|
], action: t = "continue", layout: n = "stack", loadingProvider: r = null, disabled: o = !1, onSelect: s, className: c }) {
|
|
1099
1099
|
let l = n === "row";
|
|
1100
1100
|
return /* @__PURE__ */ i("div", {
|
|
1101
|
-
className:
|
|
1101
|
+
className: q("flex w-full gap-2", l ? "flex-row justify-center" : "flex-col", c),
|
|
1102
1102
|
children: e.map((e) => {
|
|
1103
|
-
let { label: n, Icon: c } =
|
|
1104
|
-
return /* @__PURE__ */ a(
|
|
1103
|
+
let { label: n, Icon: c } = Xt[e];
|
|
1104
|
+
return /* @__PURE__ */ a(J, {
|
|
1105
1105
|
variant: "outline",
|
|
1106
1106
|
size: l ? "icon" : "default",
|
|
1107
1107
|
className: l ? void 0 : "w-full",
|
|
1108
|
-
"aria-label": `${
|
|
1108
|
+
"aria-label": `${Zt[t]} ${n}`,
|
|
1109
1109
|
loading: r === e,
|
|
1110
1110
|
disabled: o || r !== null && r !== e,
|
|
1111
1111
|
onClick: () => s?.(e),
|
|
1112
1112
|
children: [/* @__PURE__ */ i(c, { "aria-hidden": "true" }), !l && /* @__PURE__ */ a("span", {
|
|
1113
1113
|
className: "flex-1",
|
|
1114
1114
|
children: [
|
|
1115
|
-
|
|
1115
|
+
Zt[t],
|
|
1116
1116
|
" ",
|
|
1117
1117
|
n
|
|
1118
1118
|
]
|
|
@@ -1123,30 +1123,30 @@ function $t({ providers: e = [
|
|
|
1123
1123
|
}
|
|
1124
1124
|
//#endregion
|
|
1125
1125
|
//#region src/components/composed/user-avatar.tsx
|
|
1126
|
-
function
|
|
1126
|
+
function $t(e) {
|
|
1127
1127
|
let t = e.trim().split(/\s+/).filter(Boolean);
|
|
1128
1128
|
return t.length === 0 ? "" : ((t[0]?.[0] ?? "") + (t.length > 1 ? t.at(-1)?.[0] ?? "" : "")).toUpperCase();
|
|
1129
1129
|
}
|
|
1130
|
-
function
|
|
1131
|
-
let [l, u] =
|
|
1132
|
-
return /* @__PURE__ */ a(
|
|
1133
|
-
className:
|
|
1130
|
+
function en({ src: e, name: t = "", initials: n, alt: r, loading: o, className: s, ...c }) {
|
|
1131
|
+
let [l, u] = P.useState("idle"), d = o ?? (e !== void 0 && (l === "idle" || l === "loading"));
|
|
1132
|
+
return /* @__PURE__ */ a(Ee, {
|
|
1133
|
+
className: q("size-8", s),
|
|
1134
1134
|
"data-loading": d || void 0,
|
|
1135
1135
|
"data-slot": "user-avatar",
|
|
1136
1136
|
...c,
|
|
1137
|
-
children: [e === void 0 || o === !0 ? null : /* @__PURE__ */ i(
|
|
1137
|
+
children: [e === void 0 || o === !0 ? null : /* @__PURE__ */ i(De, {
|
|
1138
1138
|
alt: r ?? t,
|
|
1139
1139
|
onLoadingStatusChange: u,
|
|
1140
1140
|
src: e
|
|
1141
|
-
}), /* @__PURE__ */ i(
|
|
1141
|
+
}), /* @__PURE__ */ i(Oe, { children: d ? /* @__PURE__ */ i(Ut, {
|
|
1142
1142
|
className: "size-full rounded-full",
|
|
1143
1143
|
"data-slot": "avatar-skeleton"
|
|
1144
|
-
}) : n ??
|
|
1144
|
+
}) : n ?? $t(t) })]
|
|
1145
1145
|
});
|
|
1146
1146
|
}
|
|
1147
1147
|
//#endregion
|
|
1148
1148
|
//#region src/lib/auth-accent.ts
|
|
1149
|
-
var
|
|
1149
|
+
var tn = {
|
|
1150
1150
|
corpora: {
|
|
1151
1151
|
"--auth-accent": "#E8B124",
|
|
1152
1152
|
"--auth-accent-image": "none",
|
|
@@ -1157,38 +1157,38 @@ var nn = {
|
|
|
1157
1157
|
"--auth-accent-image": "linear-gradient(44deg in oklab, rgba(29,0,202,0.66) 3%, #3B0080 37%, rgba(36,0,72,0.86) 98%)",
|
|
1158
1158
|
"--auth-accent-foreground": "oklch(0.985 0 0)"
|
|
1159
1159
|
}
|
|
1160
|
-
},
|
|
1160
|
+
}, nn = "border-transparent bg-[var(--auth-accent)] bg-[image:var(--auth-accent-image)] text-[var(--auth-accent-foreground)] shadow-none hover:bg-[var(--auth-accent)] hover:brightness-110 data-pressed:bg-[var(--auth-accent)] data-pressed:brightness-110 *:data-[slot=button-loading-indicator]:text-[var(--auth-accent-foreground)]", Z = [
|
|
1161
1161
|
.22,
|
|
1162
1162
|
1,
|
|
1163
1163
|
.36,
|
|
1164
1164
|
1
|
|
1165
1165
|
];
|
|
1166
|
-
function
|
|
1167
|
-
return /* @__PURE__ */ i(
|
|
1166
|
+
function rn({ title: e, description: t, children: n, footer: r, className: o, logo: s, accent: c }) {
|
|
1167
|
+
return /* @__PURE__ */ i(ve, {
|
|
1168
1168
|
reducedMotion: "user",
|
|
1169
|
-
children: /* @__PURE__ */ i(
|
|
1170
|
-
className:
|
|
1169
|
+
children: /* @__PURE__ */ i(st, {
|
|
1170
|
+
className: q("w-full max-w-sm", o),
|
|
1171
1171
|
"data-accent": c,
|
|
1172
|
-
style: c ?
|
|
1173
|
-
children: /* @__PURE__ */ a(
|
|
1172
|
+
style: c ? tn[c] : void 0,
|
|
1173
|
+
children: /* @__PURE__ */ a(K.div, {
|
|
1174
1174
|
layout: !0,
|
|
1175
1175
|
transition: {
|
|
1176
1176
|
duration: .3,
|
|
1177
|
-
ease:
|
|
1177
|
+
ease: Z
|
|
1178
1178
|
},
|
|
1179
1179
|
className: "flex flex-col",
|
|
1180
|
-
children: [/* @__PURE__ */ a(
|
|
1180
|
+
children: [/* @__PURE__ */ a(ze, { children: [/* @__PURE__ */ a(Ke, { children: [
|
|
1181
1181
|
s && /* @__PURE__ */ i("div", {
|
|
1182
1182
|
className: "mb-1.5 flex items-center [&_img:not([class*='h-'])]:h-8 [&_img]:w-auto [&_svg:not([class*='size-'])]:size-8",
|
|
1183
1183
|
"data-slot": "auth-logo",
|
|
1184
1184
|
children: s
|
|
1185
1185
|
}),
|
|
1186
|
-
/* @__PURE__ */ i(
|
|
1187
|
-
t && /* @__PURE__ */ i(
|
|
1188
|
-
] }), /* @__PURE__ */ i(
|
|
1186
|
+
/* @__PURE__ */ i(qe, { children: e }),
|
|
1187
|
+
t && /* @__PURE__ */ i(Je, { children: t })
|
|
1188
|
+
] }), /* @__PURE__ */ i(Xe, {
|
|
1189
1189
|
className: "overflow-hidden",
|
|
1190
1190
|
children: n
|
|
1191
|
-
})] }), r && /* @__PURE__ */ i(
|
|
1191
|
+
})] }), r && /* @__PURE__ */ i(ft, {
|
|
1192
1192
|
className: "text-center text-sm text-muted-foreground",
|
|
1193
1193
|
children: r
|
|
1194
1194
|
})]
|
|
@@ -1196,11 +1196,11 @@ function an({ title: e, description: t, children: n, footer: r, className: o, lo
|
|
|
1196
1196
|
})
|
|
1197
1197
|
});
|
|
1198
1198
|
}
|
|
1199
|
-
function
|
|
1200
|
-
return /* @__PURE__ */ i(
|
|
1199
|
+
function an({ step: e, children: t, className: n }) {
|
|
1200
|
+
return /* @__PURE__ */ i(G, {
|
|
1201
1201
|
mode: "popLayout",
|
|
1202
1202
|
initial: !1,
|
|
1203
|
-
children: /* @__PURE__ */ i(
|
|
1203
|
+
children: /* @__PURE__ */ i(K.div, {
|
|
1204
1204
|
className: n,
|
|
1205
1205
|
initial: {
|
|
1206
1206
|
opacity: 0,
|
|
@@ -1219,24 +1219,24 @@ function on({ step: e, children: t, className: n }) {
|
|
|
1219
1219
|
},
|
|
1220
1220
|
transition: {
|
|
1221
1221
|
duration: .25,
|
|
1222
|
-
ease:
|
|
1222
|
+
ease: Z
|
|
1223
1223
|
},
|
|
1224
1224
|
children: t
|
|
1225
1225
|
}, e)
|
|
1226
1226
|
});
|
|
1227
1227
|
}
|
|
1228
|
-
function
|
|
1229
|
-
let [r, a] =
|
|
1228
|
+
function Q({ show: e, children: t, className: n }) {
|
|
1229
|
+
let [r, a] = P.useState({
|
|
1230
1230
|
show: e,
|
|
1231
1231
|
settled: e
|
|
1232
1232
|
});
|
|
1233
1233
|
return r.show !== e && a({
|
|
1234
1234
|
show: e,
|
|
1235
1235
|
settled: !1
|
|
1236
|
-
}), /* @__PURE__ */ i(
|
|
1236
|
+
}), /* @__PURE__ */ i(G, {
|
|
1237
1237
|
initial: !1,
|
|
1238
|
-
children: e && /* @__PURE__ */ i(
|
|
1239
|
-
className:
|
|
1238
|
+
children: e && /* @__PURE__ */ i(K.div, {
|
|
1239
|
+
className: q(!r.settled && "overflow-hidden", n),
|
|
1240
1240
|
initial: {
|
|
1241
1241
|
height: 0,
|
|
1242
1242
|
opacity: 0,
|
|
@@ -1257,7 +1257,7 @@ function Z({ show: e, children: t, className: n }) {
|
|
|
1257
1257
|
},
|
|
1258
1258
|
transition: {
|
|
1259
1259
|
duration: .25,
|
|
1260
|
-
ease:
|
|
1260
|
+
ease: Z
|
|
1261
1261
|
},
|
|
1262
1262
|
onAnimationComplete: () => a((e) => ({
|
|
1263
1263
|
...e,
|
|
@@ -1267,10 +1267,10 @@ function Z({ show: e, children: t, className: n }) {
|
|
|
1267
1267
|
})
|
|
1268
1268
|
});
|
|
1269
1269
|
}
|
|
1270
|
-
function
|
|
1271
|
-
return /* @__PURE__ */ i(
|
|
1270
|
+
function $({ message: e }) {
|
|
1271
|
+
return /* @__PURE__ */ i(G, {
|
|
1272
1272
|
initial: !1,
|
|
1273
|
-
children: e && /* @__PURE__ */ i(
|
|
1273
|
+
children: e && /* @__PURE__ */ i(K.p, {
|
|
1274
1274
|
role: "alert",
|
|
1275
1275
|
className: "text-sm text-destructive-foreground",
|
|
1276
1276
|
initial: {
|
|
@@ -1295,7 +1295,7 @@ function Q({ message: e }) {
|
|
|
1295
1295
|
},
|
|
1296
1296
|
transition: {
|
|
1297
1297
|
duration: .25,
|
|
1298
|
-
ease:
|
|
1298
|
+
ease: Z,
|
|
1299
1299
|
x: {
|
|
1300
1300
|
duration: .4,
|
|
1301
1301
|
ease: "easeInOut"
|
|
@@ -1305,11 +1305,11 @@ function Q({ message: e }) {
|
|
|
1305
1305
|
}, e)
|
|
1306
1306
|
});
|
|
1307
1307
|
}
|
|
1308
|
-
function
|
|
1308
|
+
function on({ title: e, description: t, children: n }) {
|
|
1309
1309
|
return /* @__PURE__ */ a("div", {
|
|
1310
1310
|
className: "flex flex-col items-center gap-3 py-4 text-center",
|
|
1311
1311
|
children: [
|
|
1312
|
-
/* @__PURE__ */ i(
|
|
1312
|
+
/* @__PURE__ */ i(K.span, {
|
|
1313
1313
|
className: "flex size-12 items-center justify-center rounded-full bg-emerald-500/12 text-emerald-600",
|
|
1314
1314
|
initial: {
|
|
1315
1315
|
scale: .6,
|
|
@@ -1321,7 +1321,7 @@ function sn({ title: e, description: t, children: n }) {
|
|
|
1321
1321
|
},
|
|
1322
1322
|
transition: {
|
|
1323
1323
|
duration: .4,
|
|
1324
|
-
ease:
|
|
1324
|
+
ease: Z
|
|
1325
1325
|
},
|
|
1326
1326
|
children: /* @__PURE__ */ i("svg", {
|
|
1327
1327
|
"aria-hidden": "true",
|
|
@@ -1332,14 +1332,14 @@ function sn({ title: e, description: t, children: n }) {
|
|
|
1332
1332
|
strokeWidth: "2.5",
|
|
1333
1333
|
strokeLinecap: "round",
|
|
1334
1334
|
strokeLinejoin: "round",
|
|
1335
|
-
children: /* @__PURE__ */ i(
|
|
1335
|
+
children: /* @__PURE__ */ i(K.path, {
|
|
1336
1336
|
d: "M4 12.5l5 5L20 6.5",
|
|
1337
1337
|
initial: { pathLength: 0 },
|
|
1338
1338
|
animate: { pathLength: 1 },
|
|
1339
1339
|
transition: {
|
|
1340
1340
|
duration: .4,
|
|
1341
1341
|
delay: .15,
|
|
1342
|
-
ease:
|
|
1342
|
+
ease: Z
|
|
1343
1343
|
}
|
|
1344
1344
|
})
|
|
1345
1345
|
})
|
|
@@ -1358,21 +1358,21 @@ function sn({ title: e, description: t, children: n }) {
|
|
|
1358
1358
|
]
|
|
1359
1359
|
});
|
|
1360
1360
|
}
|
|
1361
|
-
function
|
|
1361
|
+
function sn({ label: e = "Or" }) {
|
|
1362
1362
|
return /* @__PURE__ */ a("div", {
|
|
1363
1363
|
className: "flex items-center gap-3",
|
|
1364
1364
|
children: [
|
|
1365
|
-
/* @__PURE__ */ i(
|
|
1365
|
+
/* @__PURE__ */ i(zt, { className: "flex-1" }),
|
|
1366
1366
|
/* @__PURE__ */ i("span", {
|
|
1367
1367
|
className: "text-xs text-muted-foreground uppercase",
|
|
1368
1368
|
children: e
|
|
1369
1369
|
}),
|
|
1370
|
-
/* @__PURE__ */ i(
|
|
1370
|
+
/* @__PURE__ */ i(zt, { className: "flex-1" })
|
|
1371
1371
|
]
|
|
1372
1372
|
});
|
|
1373
1373
|
}
|
|
1374
|
-
function
|
|
1375
|
-
let [n, r] =
|
|
1374
|
+
function cn(e, t) {
|
|
1375
|
+
let [n, r] = P.useState({
|
|
1376
1376
|
restartKey: t,
|
|
1377
1377
|
seconds: e,
|
|
1378
1378
|
remaining: e
|
|
@@ -1381,7 +1381,7 @@ function ln(e, t) {
|
|
|
1381
1381
|
restartKey: t,
|
|
1382
1382
|
seconds: e,
|
|
1383
1383
|
remaining: e
|
|
1384
|
-
}),
|
|
1384
|
+
}), P.useEffect(() => {
|
|
1385
1385
|
if (e <= 0) return;
|
|
1386
1386
|
let t = window.setInterval(() => {
|
|
1387
1387
|
r((e) => e.remaining <= 0 ? e : {
|
|
@@ -1394,8 +1394,8 @@ function ln(e, t) {
|
|
|
1394
1394
|
}
|
|
1395
1395
|
//#endregion
|
|
1396
1396
|
//#region src/components/blocks/auth/code-auth-block.tsx
|
|
1397
|
-
function
|
|
1398
|
-
let [p, m] =
|
|
1397
|
+
function ln({ channel: e = "email", logo: t, accent: n, destination: o, length: s = 6, autoSubmit: c = !0, resendSeconds: l = 30, onVerify: u, onResend: d, onBack: f }) {
|
|
1398
|
+
let [p, m] = P.useState("idle"), [h, g] = P.useState(null), [_, v] = P.useState(""), [y, b] = P.useState(0), x = cn(l, y), S = e === "sms" ? k : w, C = e === "sms" ? "phone" : "email", T = P.useCallback(async (e) => {
|
|
1399
1399
|
g(null), m("loading");
|
|
1400
1400
|
try {
|
|
1401
1401
|
await u?.(e), m("success");
|
|
@@ -1409,7 +1409,7 @@ function un({ channel: e = "email", logo: t, accent: n, destination: o, length:
|
|
|
1409
1409
|
async function D() {
|
|
1410
1410
|
b((e) => e + 1), v(""), g(null), await d?.();
|
|
1411
1411
|
}
|
|
1412
|
-
return /* @__PURE__ */ i(
|
|
1412
|
+
return /* @__PURE__ */ i(rn, {
|
|
1413
1413
|
title: "Enter verification code",
|
|
1414
1414
|
logo: t,
|
|
1415
1415
|
accent: n,
|
|
@@ -1427,20 +1427,20 @@ function un({ channel: e = "email", logo: t, accent: n, destination: o, length:
|
|
|
1427
1427
|
"."
|
|
1428
1428
|
] })]
|
|
1429
1429
|
}),
|
|
1430
|
-
footer: p !== "success" && /* @__PURE__ */ a(
|
|
1430
|
+
footer: p !== "success" && /* @__PURE__ */ a(J, {
|
|
1431
1431
|
variant: "link",
|
|
1432
1432
|
onClick: f,
|
|
1433
1433
|
children: ["Use a different ", C]
|
|
1434
1434
|
}),
|
|
1435
|
-
children: /* @__PURE__ */ i(
|
|
1435
|
+
children: /* @__PURE__ */ i(an, {
|
|
1436
1436
|
step: p === "success" ? "success" : "form",
|
|
1437
|
-
children: p === "success" ? /* @__PURE__ */ i(
|
|
1437
|
+
children: p === "success" ? /* @__PURE__ */ i(on, {
|
|
1438
1438
|
title: "Verified",
|
|
1439
1439
|
description: "Your identity has been confirmed."
|
|
1440
1440
|
}) : /* @__PURE__ */ a("div", {
|
|
1441
1441
|
className: "flex flex-col items-center gap-4",
|
|
1442
1442
|
children: [
|
|
1443
|
-
/* @__PURE__ */ i(
|
|
1443
|
+
/* @__PURE__ */ i(K.div, {
|
|
1444
1444
|
animate: h ? { x: [
|
|
1445
1445
|
0,
|
|
1446
1446
|
-8,
|
|
@@ -1453,30 +1453,30 @@ function un({ channel: e = "email", logo: t, accent: n, destination: o, length:
|
|
|
1453
1453
|
duration: .4,
|
|
1454
1454
|
ease: "easeInOut"
|
|
1455
1455
|
},
|
|
1456
|
-
children: /* @__PURE__ */ i(
|
|
1456
|
+
children: /* @__PURE__ */ i(Bt, {
|
|
1457
1457
|
length: s,
|
|
1458
1458
|
value: _,
|
|
1459
1459
|
onValueChange: E,
|
|
1460
1460
|
disabled: p === "loading",
|
|
1461
|
-
children: Array.from({ length: s }, (e, t) => /* @__PURE__ */ i(
|
|
1461
|
+
children: Array.from({ length: s }, (e, t) => /* @__PURE__ */ i(Vt, {
|
|
1462
1462
|
"aria-invalid": h ? !0 : void 0,
|
|
1463
1463
|
"aria-label": `Digit ${t + 1} of ${s}`
|
|
1464
1464
|
}, `slot-${t}`))
|
|
1465
1465
|
})
|
|
1466
1466
|
}, h ?? "steady"),
|
|
1467
|
-
/* @__PURE__ */ i(
|
|
1468
|
-
!c && /* @__PURE__ */ i(
|
|
1469
|
-
className:
|
|
1467
|
+
/* @__PURE__ */ i($, { message: h }),
|
|
1468
|
+
!c && /* @__PURE__ */ i(J, {
|
|
1469
|
+
className: q("w-full", n && "border-transparent bg-[var(--auth-accent)] bg-[image:var(--auth-accent-image)] text-[var(--auth-accent-foreground)] shadow-none hover:bg-[var(--auth-accent)] hover:brightness-110 data-pressed:bg-[var(--auth-accent)] data-pressed:brightness-110 *:data-[slot=button-loading-indicator]:text-[var(--auth-accent-foreground)]"),
|
|
1470
1470
|
loading: p === "loading",
|
|
1471
1471
|
disabled: _.length !== s,
|
|
1472
1472
|
onClick: () => void T(_),
|
|
1473
1473
|
children: "Verify"
|
|
1474
1474
|
}),
|
|
1475
|
-
/* @__PURE__ */ i(
|
|
1475
|
+
/* @__PURE__ */ i(K.p, {
|
|
1476
1476
|
layout: !0,
|
|
1477
1477
|
transition: {
|
|
1478
1478
|
duration: .25,
|
|
1479
|
-
ease:
|
|
1479
|
+
ease: Z
|
|
1480
1480
|
},
|
|
1481
1481
|
className: "text-center text-sm text-muted-foreground",
|
|
1482
1482
|
children: x > 0 ? /* @__PURE__ */ a(r, { children: [
|
|
@@ -1486,7 +1486,7 @@ function un({ channel: e = "email", logo: t, accent: n, destination: o, length:
|
|
|
1486
1486
|
className: "font-medium tabular-nums text-foreground",
|
|
1487
1487
|
children: [x, "s"]
|
|
1488
1488
|
})
|
|
1489
|
-
] }) : /* @__PURE__ */ i(
|
|
1489
|
+
] }) : /* @__PURE__ */ i(J, {
|
|
1490
1490
|
variant: "link",
|
|
1491
1491
|
disabled: p === "loading",
|
|
1492
1492
|
onClick: () => void D(),
|
|
@@ -1500,8 +1500,8 @@ function un({ channel: e = "email", logo: t, accent: n, destination: o, length:
|
|
|
1500
1500
|
}
|
|
1501
1501
|
//#endregion
|
|
1502
1502
|
//#region src/components/blocks/auth/forgot-password-block.tsx
|
|
1503
|
-
function
|
|
1504
|
-
let u =
|
|
1503
|
+
function un({ title: e = "Reset your password", logo: t, accent: n, description: o = "Enter your email and we will send you a reset link", onSubmit: s, onBackToLogin: c }) {
|
|
1504
|
+
let u = P.useId(), [d, f] = P.useState("idle"), [p, m] = P.useState(null), [h, g] = P.useState("");
|
|
1505
1505
|
async function _(e) {
|
|
1506
1506
|
e.preventDefault(), m(null), f("loading");
|
|
1507
1507
|
try {
|
|
@@ -1510,20 +1510,20 @@ function dn({ title: e = "Reset your password", logo: t, accent: n, description:
|
|
|
1510
1510
|
f("idle"), m(e instanceof Error ? e.message : "Unable to send reset link.");
|
|
1511
1511
|
}
|
|
1512
1512
|
}
|
|
1513
|
-
return /* @__PURE__ */ i(
|
|
1513
|
+
return /* @__PURE__ */ i(rn, {
|
|
1514
1514
|
title: e,
|
|
1515
1515
|
description: o,
|
|
1516
1516
|
logo: t,
|
|
1517
1517
|
accent: n,
|
|
1518
|
-
footer: /* @__PURE__ */ a(
|
|
1518
|
+
footer: /* @__PURE__ */ a(J, {
|
|
1519
1519
|
variant: "link",
|
|
1520
1520
|
className: "gap-1",
|
|
1521
1521
|
onClick: c,
|
|
1522
1522
|
children: [/* @__PURE__ */ i(l, { className: "size-3.5" }), "Back to login"]
|
|
1523
1523
|
}),
|
|
1524
|
-
children: /* @__PURE__ */ i(
|
|
1524
|
+
children: /* @__PURE__ */ i(an, {
|
|
1525
1525
|
step: d === "success" ? "success" : "form",
|
|
1526
|
-
children: d === "success" ? /* @__PURE__ */ i(
|
|
1526
|
+
children: d === "success" ? /* @__PURE__ */ i(on, {
|
|
1527
1527
|
title: "Check your inbox",
|
|
1528
1528
|
description: /* @__PURE__ */ a(r, { children: [
|
|
1529
1529
|
"We sent a password reset link to",
|
|
@@ -1534,7 +1534,7 @@ function dn({ title: e = "Reset your password", logo: t, accent: n, description:
|
|
|
1534
1534
|
}),
|
|
1535
1535
|
"."
|
|
1536
1536
|
] }),
|
|
1537
|
-
children: /* @__PURE__ */ i(
|
|
1537
|
+
children: /* @__PURE__ */ i(J, {
|
|
1538
1538
|
variant: "link",
|
|
1539
1539
|
className: "text-xs sm:text-xs",
|
|
1540
1540
|
onClick: () => f("idle"),
|
|
@@ -1544,12 +1544,12 @@ function dn({ title: e = "Reset your password", logo: t, accent: n, description:
|
|
|
1544
1544
|
className: "flex flex-col gap-4",
|
|
1545
1545
|
onSubmit: _,
|
|
1546
1546
|
children: [
|
|
1547
|
-
/* @__PURE__ */ a(
|
|
1547
|
+
/* @__PURE__ */ a(Y, {
|
|
1548
1548
|
name: "email",
|
|
1549
|
-
children: [/* @__PURE__ */ i(
|
|
1549
|
+
children: [/* @__PURE__ */ i(X, {
|
|
1550
1550
|
htmlFor: u,
|
|
1551
1551
|
children: "Email"
|
|
1552
|
-
}), /* @__PURE__ */ i(
|
|
1552
|
+
}), /* @__PURE__ */ i(pt, {
|
|
1553
1553
|
id: u,
|
|
1554
1554
|
name: "email",
|
|
1555
1555
|
type: "email",
|
|
@@ -1561,9 +1561,9 @@ function dn({ title: e = "Reset your password", logo: t, accent: n, description:
|
|
|
1561
1561
|
onChange: (e) => g(e.target.value)
|
|
1562
1562
|
})]
|
|
1563
1563
|
}),
|
|
1564
|
-
/* @__PURE__ */ i(
|
|
1565
|
-
/* @__PURE__ */ i(
|
|
1566
|
-
className:
|
|
1564
|
+
/* @__PURE__ */ i($, { message: p }),
|
|
1565
|
+
/* @__PURE__ */ i(J, {
|
|
1566
|
+
className: q("w-full", n && "border-transparent bg-[var(--auth-accent)] bg-[image:var(--auth-accent-image)] text-[var(--auth-accent-foreground)] shadow-none hover:bg-[var(--auth-accent)] hover:brightness-110 data-pressed:bg-[var(--auth-accent)] data-pressed:brightness-110 *:data-[slot=button-loading-indicator]:text-[var(--auth-accent-foreground)]"),
|
|
1567
1567
|
type: "submit",
|
|
1568
1568
|
loading: d === "loading",
|
|
1569
1569
|
children: "Send reset link"
|
|
@@ -1575,13 +1575,13 @@ function dn({ title: e = "Reset your password", logo: t, accent: n, description:
|
|
|
1575
1575
|
}
|
|
1576
1576
|
//#endregion
|
|
1577
1577
|
//#region src/components/blocks/auth/linked-accounts-block.tsx
|
|
1578
|
-
var
|
|
1579
|
-
function
|
|
1578
|
+
var dn = "This is your only way to sign in, so it can't be disconnected.";
|
|
1579
|
+
function fn({ title: e = "Connected accounts", description: t = "Manage the accounts you can use to sign in.", identities: n = [], providers: r = [
|
|
1580
1580
|
"google",
|
|
1581
1581
|
"apple",
|
|
1582
1582
|
"github"
|
|
1583
1583
|
], loading: o = !1, hasOtherSignInMethods: s = !1, onLink: c, onUnlink: l, className: u }) {
|
|
1584
|
-
let d =
|
|
1584
|
+
let d = P.useId(), [f, p] = P.useState(null), [m, h] = P.useState(null), [g, _] = P.useState(null), v = new Set(n.map((e) => e.provider)), y = r.filter((e) => !v.has(e)), b = m !== null || g !== null, x = !s && n.length <= 1;
|
|
1585
1585
|
async function S(e) {
|
|
1586
1586
|
if (!b) {
|
|
1587
1587
|
p(null), h(e);
|
|
@@ -1606,31 +1606,31 @@ function pn({ title: e = "Connected accounts", description: t = "Manage the acco
|
|
|
1606
1606
|
}
|
|
1607
1607
|
}
|
|
1608
1608
|
}
|
|
1609
|
-
return /* @__PURE__ */ i(
|
|
1609
|
+
return /* @__PURE__ */ i(ve, {
|
|
1610
1610
|
reducedMotion: "user",
|
|
1611
|
-
children: /* @__PURE__ */ a(
|
|
1612
|
-
className:
|
|
1611
|
+
children: /* @__PURE__ */ a(ze, {
|
|
1612
|
+
className: q("w-full", u),
|
|
1613
1613
|
"data-slot": "auth-block",
|
|
1614
|
-
children: [/* @__PURE__ */ a(
|
|
1614
|
+
children: [/* @__PURE__ */ a(Ke, { children: [/* @__PURE__ */ i(qe, { children: e }), /* @__PURE__ */ i(Je, { children: t })] }), /* @__PURE__ */ i(Xe, { children: o ? /* @__PURE__ */ a("div", {
|
|
1615
1615
|
className: "flex items-center gap-2 text-sm text-muted-foreground",
|
|
1616
|
-
children: [/* @__PURE__ */ i(
|
|
1617
|
-
}) : /* @__PURE__ */ a(
|
|
1616
|
+
children: [/* @__PURE__ */ i(ke, { className: "size-4" }), "Loading connected accounts…"]
|
|
1617
|
+
}) : /* @__PURE__ */ a(K.div, {
|
|
1618
1618
|
layout: !0,
|
|
1619
1619
|
transition: {
|
|
1620
1620
|
duration: .3,
|
|
1621
|
-
ease:
|
|
1621
|
+
ease: Z
|
|
1622
1622
|
},
|
|
1623
1623
|
className: "flex flex-col gap-3",
|
|
1624
1624
|
children: [
|
|
1625
|
-
/* @__PURE__ */ i(
|
|
1625
|
+
/* @__PURE__ */ i($, { message: f }),
|
|
1626
1626
|
n.length > 0 ? /* @__PURE__ */ i("ul", {
|
|
1627
1627
|
"aria-label": "Connected accounts",
|
|
1628
1628
|
className: "flex flex-col gap-2",
|
|
1629
|
-
children: /* @__PURE__ */ i(
|
|
1629
|
+
children: /* @__PURE__ */ i(G, {
|
|
1630
1630
|
initial: !1,
|
|
1631
1631
|
children: n.map((e, t) => {
|
|
1632
|
-
let { label: n, BrandIcon: r, brandClassName: o } =
|
|
1633
|
-
return /* @__PURE__ */ a(
|
|
1632
|
+
let { label: n, BrandIcon: r, brandClassName: o } = Xt[e.provider];
|
|
1633
|
+
return /* @__PURE__ */ a(K.li, {
|
|
1634
1634
|
layout: !0,
|
|
1635
1635
|
className: "flex items-center justify-between gap-3 rounded-lg border px-3 py-2",
|
|
1636
1636
|
initial: {
|
|
@@ -1647,14 +1647,14 @@ function pn({ title: e = "Connected accounts", description: t = "Manage the acco
|
|
|
1647
1647
|
},
|
|
1648
1648
|
transition: {
|
|
1649
1649
|
duration: .25,
|
|
1650
|
-
ease:
|
|
1650
|
+
ease: Z,
|
|
1651
1651
|
delay: Math.min(t, 5) * .04
|
|
1652
1652
|
},
|
|
1653
1653
|
children: [/* @__PURE__ */ a("div", {
|
|
1654
1654
|
className: "flex min-w-0 items-center gap-2.5",
|
|
1655
1655
|
children: [/* @__PURE__ */ i(r, {
|
|
1656
1656
|
"aria-hidden": "true",
|
|
1657
|
-
className:
|
|
1657
|
+
className: q("size-4", o)
|
|
1658
1658
|
}), /* @__PURE__ */ a("div", {
|
|
1659
1659
|
className: "flex min-w-0 flex-col",
|
|
1660
1660
|
children: [/* @__PURE__ */ i("span", {
|
|
@@ -1665,7 +1665,7 @@ function pn({ title: e = "Connected accounts", description: t = "Manage the acco
|
|
|
1665
1665
|
children: e.email
|
|
1666
1666
|
})]
|
|
1667
1667
|
})]
|
|
1668
|
-
}), /* @__PURE__ */ i(
|
|
1668
|
+
}), /* @__PURE__ */ i(J, {
|
|
1669
1669
|
"aria-describedby": x ? d : void 0,
|
|
1670
1670
|
"aria-label": `Disconnect ${n}`,
|
|
1671
1671
|
size: "sm",
|
|
@@ -1686,11 +1686,11 @@ function pn({ title: e = "Connected accounts", description: t = "Manage the acco
|
|
|
1686
1686
|
x && n.length > 0 && /* @__PURE__ */ i("p", {
|
|
1687
1687
|
className: "text-xs text-muted-foreground",
|
|
1688
1688
|
id: d,
|
|
1689
|
-
children:
|
|
1689
|
+
children: dn
|
|
1690
1690
|
}),
|
|
1691
1691
|
y.map((e) => {
|
|
1692
|
-
let { label: t, BrandIcon: n, brandClassName: r } =
|
|
1693
|
-
return /* @__PURE__ */ a(
|
|
1692
|
+
let { label: t, BrandIcon: n, brandClassName: r } = Xt[e];
|
|
1693
|
+
return /* @__PURE__ */ a(J, {
|
|
1694
1694
|
className: "w-full",
|
|
1695
1695
|
type: "button",
|
|
1696
1696
|
variant: "outline",
|
|
@@ -1713,14 +1713,14 @@ function pn({ title: e = "Connected accounts", description: t = "Manage the acco
|
|
|
1713
1713
|
}
|
|
1714
1714
|
//#endregion
|
|
1715
1715
|
//#region src/components/blocks/auth/login-block.tsx
|
|
1716
|
-
function
|
|
1716
|
+
function pn({ title: e = "Login to your account", description: t = "Enter your email and password to login", logo: n, accent: o, providers: s = [
|
|
1717
1717
|
"google",
|
|
1718
1718
|
"apple",
|
|
1719
1719
|
"github"
|
|
1720
1720
|
], showRememberMe: c = !0, showForgotPassword: l = !0, onSubmit: u, onProviderSelect: d, onForgotPassword: f, onSignup: p }) {
|
|
1721
|
-
let m =
|
|
1722
|
-
async function
|
|
1723
|
-
if (e.preventDefault(), !
|
|
1721
|
+
let m = P.useId(), h = P.useId(), [g, _] = P.useState("idle"), [v, y] = P.useState(null), [b, x] = P.useState(null), [S, C] = P.useState(!1), [w, T] = P.useState(""), [E, D] = P.useState(!1), [O, k] = P.useState(""), A = g === "loading" || b !== null, j = O.trim().length > 0, M = E && j;
|
|
1722
|
+
async function N(e) {
|
|
1723
|
+
if (e.preventDefault(), !M) return;
|
|
1724
1724
|
let t = new FormData(e.currentTarget);
|
|
1725
1725
|
y(null), _("loading");
|
|
1726
1726
|
try {
|
|
@@ -1733,7 +1733,7 @@ function mn({ title: e = "Login to your account", description: t = "Enter your e
|
|
|
1733
1733
|
_("idle"), y(e instanceof Error ? e.message : "Unable to login.");
|
|
1734
1734
|
}
|
|
1735
1735
|
}
|
|
1736
|
-
async function
|
|
1736
|
+
async function ee(e) {
|
|
1737
1737
|
y(null), x(e);
|
|
1738
1738
|
try {
|
|
1739
1739
|
await d?.(e), _("success");
|
|
@@ -1743,7 +1743,7 @@ function mn({ title: e = "Login to your account", description: t = "Enter your e
|
|
|
1743
1743
|
x(null);
|
|
1744
1744
|
}
|
|
1745
1745
|
}
|
|
1746
|
-
return /* @__PURE__ */ i(
|
|
1746
|
+
return /* @__PURE__ */ i(rn, {
|
|
1747
1747
|
title: e,
|
|
1748
1748
|
description: t,
|
|
1749
1749
|
logo: n,
|
|
@@ -1751,29 +1751,29 @@ function mn({ title: e = "Login to your account", description: t = "Enter your e
|
|
|
1751
1751
|
footer: g !== "success" && /* @__PURE__ */ a(r, { children: [
|
|
1752
1752
|
"Don't have an account?",
|
|
1753
1753
|
" ",
|
|
1754
|
-
/* @__PURE__ */ i(
|
|
1754
|
+
/* @__PURE__ */ i(J, {
|
|
1755
1755
|
variant: "link",
|
|
1756
1756
|
onClick: p,
|
|
1757
1757
|
children: "Sign up"
|
|
1758
1758
|
})
|
|
1759
1759
|
] }),
|
|
1760
|
-
children: /* @__PURE__ */ i(
|
|
1760
|
+
children: /* @__PURE__ */ i(an, {
|
|
1761
1761
|
step: g === "success" ? "success" : "form",
|
|
1762
|
-
children: g === "success" ? /* @__PURE__ */ i(
|
|
1762
|
+
children: g === "success" ? /* @__PURE__ */ i(on, {
|
|
1763
1763
|
title: "Welcome back",
|
|
1764
1764
|
description: "You are now logged in."
|
|
1765
1765
|
}) : /* @__PURE__ */ a("div", {
|
|
1766
1766
|
className: "flex flex-col gap-4",
|
|
1767
1767
|
children: [/* @__PURE__ */ a("form", {
|
|
1768
1768
|
className: "flex flex-col gap-4",
|
|
1769
|
-
onSubmit:
|
|
1769
|
+
onSubmit: N,
|
|
1770
1770
|
children: [
|
|
1771
|
-
/* @__PURE__ */ a(
|
|
1771
|
+
/* @__PURE__ */ a(Y, {
|
|
1772
1772
|
name: "email",
|
|
1773
|
-
children: [/* @__PURE__ */ i(
|
|
1773
|
+
children: [/* @__PURE__ */ i(X, {
|
|
1774
1774
|
htmlFor: m,
|
|
1775
1775
|
children: "Email"
|
|
1776
|
-
}), /* @__PURE__ */ i(
|
|
1776
|
+
}), /* @__PURE__ */ i(pt, {
|
|
1777
1777
|
id: m,
|
|
1778
1778
|
"aria-label": "Email",
|
|
1779
1779
|
name: "email",
|
|
@@ -1788,16 +1788,16 @@ function mn({ title: e = "Login to your account", description: t = "Enter your e
|
|
|
1788
1788
|
}
|
|
1789
1789
|
})]
|
|
1790
1790
|
}),
|
|
1791
|
-
/* @__PURE__ */ i(
|
|
1791
|
+
/* @__PURE__ */ i(Q, {
|
|
1792
1792
|
show: E,
|
|
1793
|
-
children: /* @__PURE__ */ a(
|
|
1793
|
+
children: /* @__PURE__ */ a(Y, {
|
|
1794
1794
|
name: "password",
|
|
1795
1795
|
children: [
|
|
1796
|
-
/* @__PURE__ */ i(
|
|
1796
|
+
/* @__PURE__ */ i(X, {
|
|
1797
1797
|
htmlFor: "password",
|
|
1798
1798
|
children: "Password"
|
|
1799
1799
|
}),
|
|
1800
|
-
/* @__PURE__ */ i(
|
|
1800
|
+
/* @__PURE__ */ i(Jt, {
|
|
1801
1801
|
id: "password",
|
|
1802
1802
|
name: "password",
|
|
1803
1803
|
autoComplete: "current-password",
|
|
@@ -1806,7 +1806,7 @@ function mn({ title: e = "Login to your account", description: t = "Enter your e
|
|
|
1806
1806
|
value: O,
|
|
1807
1807
|
onChange: (e) => k(e.target.value)
|
|
1808
1808
|
}),
|
|
1809
|
-
l && /* @__PURE__ */ i(
|
|
1809
|
+
l && /* @__PURE__ */ i(J, {
|
|
1810
1810
|
variant: "link",
|
|
1811
1811
|
type: "button",
|
|
1812
1812
|
className: "self-end font-normal text-muted-foreground text-xs hover:text-foreground sm:text-xs",
|
|
@@ -1818,22 +1818,22 @@ function mn({ title: e = "Login to your account", description: t = "Enter your e
|
|
|
1818
1818
|
}),
|
|
1819
1819
|
c && /* @__PURE__ */ a("div", {
|
|
1820
1820
|
className: "flex items-center gap-2",
|
|
1821
|
-
children: [/* @__PURE__ */ i(
|
|
1821
|
+
children: [/* @__PURE__ */ i(tt, {
|
|
1822
1822
|
id: h,
|
|
1823
1823
|
checked: S,
|
|
1824
1824
|
onCheckedChange: (e) => C(e),
|
|
1825
1825
|
disabled: A
|
|
1826
|
-
}), /* @__PURE__ */ i(
|
|
1826
|
+
}), /* @__PURE__ */ i(xt, {
|
|
1827
1827
|
htmlFor: h,
|
|
1828
1828
|
className: "font-normal",
|
|
1829
1829
|
children: "Remember me"
|
|
1830
1830
|
})]
|
|
1831
1831
|
}),
|
|
1832
|
-
/* @__PURE__ */ i(
|
|
1833
|
-
/* @__PURE__ */ i(
|
|
1834
|
-
show:
|
|
1835
|
-
children: /* @__PURE__ */ i(
|
|
1836
|
-
className:
|
|
1832
|
+
/* @__PURE__ */ i($, { message: v }),
|
|
1833
|
+
/* @__PURE__ */ i(Q, {
|
|
1834
|
+
show: M,
|
|
1835
|
+
children: /* @__PURE__ */ i(J, {
|
|
1836
|
+
className: q("w-full", o && "border-transparent bg-[var(--auth-accent)] bg-[image:var(--auth-accent-image)] text-[var(--auth-accent-foreground)] shadow-none hover:bg-[var(--auth-accent)] hover:brightness-110 data-pressed:bg-[var(--auth-accent)] data-pressed:brightness-110 *:data-[slot=button-loading-indicator]:text-[var(--auth-accent-foreground)]"),
|
|
1837
1837
|
type: "submit",
|
|
1838
1838
|
loading: g === "loading",
|
|
1839
1839
|
disabled: A,
|
|
@@ -1841,15 +1841,15 @@ function mn({ title: e = "Login to your account", description: t = "Enter your e
|
|
|
1841
1841
|
})
|
|
1842
1842
|
})
|
|
1843
1843
|
]
|
|
1844
|
-
}), s.length > 0 && /* @__PURE__ */ a(
|
|
1845
|
-
show: !
|
|
1844
|
+
}), s.length > 0 && /* @__PURE__ */ a(Q, {
|
|
1845
|
+
show: !M,
|
|
1846
1846
|
className: "flex flex-col gap-4",
|
|
1847
|
-
children: [/* @__PURE__ */ i(
|
|
1847
|
+
children: [/* @__PURE__ */ i(sn, { label: "Or continue with" }), /* @__PURE__ */ i(Qt, {
|
|
1848
1848
|
providers: s,
|
|
1849
1849
|
action: "login",
|
|
1850
1850
|
loadingProvider: b,
|
|
1851
1851
|
disabled: g === "loading",
|
|
1852
|
-
onSelect:
|
|
1852
|
+
onSelect: ee
|
|
1853
1853
|
})]
|
|
1854
1854
|
})]
|
|
1855
1855
|
})
|
|
@@ -1858,10 +1858,10 @@ function mn({ title: e = "Login to your account", description: t = "Enter your e
|
|
|
1858
1858
|
}
|
|
1859
1859
|
//#endregion
|
|
1860
1860
|
//#region src/components/blocks/auth/onboarding/profile-step.tsx
|
|
1861
|
-
function
|
|
1861
|
+
function mn(e, t) {
|
|
1862
1862
|
return e.kind === "checkbox" ? typeof t == "boolean" && t : typeof t == "string" ? t : "";
|
|
1863
1863
|
}
|
|
1864
|
-
function
|
|
1864
|
+
function hn(e, t) {
|
|
1865
1865
|
let n = e.required === !0;
|
|
1866
1866
|
if (e.kind === "checkbox") return n && t !== !0 ? `${e.label} is required` : null;
|
|
1867
1867
|
let r = typeof t == "string" ? t.trim() : "";
|
|
@@ -1873,8 +1873,8 @@ function gn(e, t) {
|
|
|
1873
1873
|
}
|
|
1874
1874
|
return e.kind === "select" && r.length > 0 && !e.options.map((e) => e.value).includes(r) ? `Choose a valid option for ${e.label}` : e.validate?.(r) ?? null;
|
|
1875
1875
|
}
|
|
1876
|
-
function
|
|
1877
|
-
let l =
|
|
1876
|
+
function gn({ step: e, values: t, submitting: n = !1, submitLabel: r, onSubmit: o, onBack: s, onDraftChange: c }) {
|
|
1877
|
+
let l = P.useId(), [u, d] = P.useState(() => Object.fromEntries(e.fields.map((e) => [e.name, mn(e, t[e.name])]))), [f, p] = P.useState({});
|
|
1878
1878
|
function m(e, t) {
|
|
1879
1879
|
d((n) => ({
|
|
1880
1880
|
...n,
|
|
@@ -1888,7 +1888,7 @@ function _n({ step: e, values: t, submitting: n = !1, submitLabel: r, onSubmit:
|
|
|
1888
1888
|
if (t.preventDefault(), n) return;
|
|
1889
1889
|
let r = {};
|
|
1890
1890
|
for (let t of e.fields) {
|
|
1891
|
-
let e =
|
|
1891
|
+
let e = hn(t, u[t.name]);
|
|
1892
1892
|
e && (r[t.name] = e);
|
|
1893
1893
|
}
|
|
1894
1894
|
if (Object.keys(r).length > 0) {
|
|
@@ -1909,35 +1909,35 @@ function _n({ step: e, values: t, submitting: n = !1, submitLabel: r, onSubmit:
|
|
|
1909
1909
|
onSubmit: h,
|
|
1910
1910
|
children: [e.fields.map((e) => {
|
|
1911
1911
|
let t = f[e.name] || void 0, r = `${l}-${e.name}`, o = u[e.name];
|
|
1912
|
-
return e.kind === "checkbox" ? /* @__PURE__ */ a(
|
|
1912
|
+
return e.kind === "checkbox" ? /* @__PURE__ */ a(Y, {
|
|
1913
1913
|
name: e.name,
|
|
1914
1914
|
invalid: !!t,
|
|
1915
1915
|
className: "gap-1.5",
|
|
1916
1916
|
children: [/* @__PURE__ */ a("div", {
|
|
1917
1917
|
className: "flex items-center gap-2",
|
|
1918
|
-
children: [/* @__PURE__ */ i(
|
|
1918
|
+
children: [/* @__PURE__ */ i(tt, {
|
|
1919
1919
|
id: r,
|
|
1920
1920
|
checked: o === !0,
|
|
1921
1921
|
disabled: n,
|
|
1922
1922
|
onCheckedChange: (t) => m(e.name, t)
|
|
1923
|
-
}), /* @__PURE__ */ i(
|
|
1923
|
+
}), /* @__PURE__ */ i(xt, {
|
|
1924
1924
|
htmlFor: r,
|
|
1925
1925
|
className: "font-normal",
|
|
1926
1926
|
children: e.label
|
|
1927
1927
|
})]
|
|
1928
|
-
}), t && /* @__PURE__ */ i(
|
|
1928
|
+
}), t && /* @__PURE__ */ i(it, {
|
|
1929
1929
|
match: !0,
|
|
1930
1930
|
children: t
|
|
1931
1931
|
})]
|
|
1932
|
-
}, e.name) : /* @__PURE__ */ a(
|
|
1932
|
+
}, e.name) : /* @__PURE__ */ a(Y, {
|
|
1933
1933
|
name: e.name,
|
|
1934
1934
|
invalid: !!t,
|
|
1935
1935
|
children: [
|
|
1936
|
-
/* @__PURE__ */ i(
|
|
1936
|
+
/* @__PURE__ */ i(X, {
|
|
1937
1937
|
htmlFor: r,
|
|
1938
1938
|
children: e.label
|
|
1939
1939
|
}),
|
|
1940
|
-
e.kind === "textarea" ? /* @__PURE__ */ i(
|
|
1940
|
+
e.kind === "textarea" ? /* @__PURE__ */ i(mt, {
|
|
1941
1941
|
id: r,
|
|
1942
1942
|
"aria-invalid": t ? !0 : void 0,
|
|
1943
1943
|
disabled: n,
|
|
@@ -1947,7 +1947,7 @@ function _n({ step: e, values: t, submitting: n = !1, submitLabel: r, onSubmit:
|
|
|
1947
1947
|
}) : e.kind === "select" ? /* @__PURE__ */ a("select", {
|
|
1948
1948
|
id: r,
|
|
1949
1949
|
"aria-invalid": t ? !0 : void 0,
|
|
1950
|
-
className:
|
|
1950
|
+
className: q("h-8.5 w-full rounded-lg border border-input bg-background px-[calc(--spacing(3)-1px)] text-base text-foreground shadow-xs/5 outline-none transition-[box-shadow,border-color] duration-150 ease-smooth-out focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/24 disabled:opacity-64 aria-invalid:border-destructive/36 sm:h-7.5 sm:text-sm dark:bg-input/32"),
|
|
1951
1951
|
disabled: n,
|
|
1952
1952
|
value: String(o ?? ""),
|
|
1953
1953
|
onChange: (t) => m(e.name, t.target.value),
|
|
@@ -1958,7 +1958,7 @@ function _n({ step: e, values: t, submitting: n = !1, submitLabel: r, onSubmit:
|
|
|
1958
1958
|
value: e.value,
|
|
1959
1959
|
children: e.label
|
|
1960
1960
|
}, e.value))]
|
|
1961
|
-
}) : /* @__PURE__ */ i(
|
|
1961
|
+
}) : /* @__PURE__ */ i(pt, {
|
|
1962
1962
|
id: r,
|
|
1963
1963
|
"aria-invalid": t ? !0 : void 0,
|
|
1964
1964
|
disabled: n,
|
|
@@ -1967,7 +1967,7 @@ function _n({ step: e, values: t, submitting: n = !1, submitLabel: r, onSubmit:
|
|
|
1967
1967
|
value: String(o ?? ""),
|
|
1968
1968
|
onChange: (t) => m(e.name, t.target.value)
|
|
1969
1969
|
}),
|
|
1970
|
-
t && /* @__PURE__ */ i(
|
|
1970
|
+
t && /* @__PURE__ */ i(it, {
|
|
1971
1971
|
match: !0,
|
|
1972
1972
|
children: t
|
|
1973
1973
|
})
|
|
@@ -1975,13 +1975,13 @@ function _n({ step: e, values: t, submitting: n = !1, submitLabel: r, onSubmit:
|
|
|
1975
1975
|
}, e.name);
|
|
1976
1976
|
}), /* @__PURE__ */ a("div", {
|
|
1977
1977
|
className: "flex gap-2",
|
|
1978
|
-
children: [s && /* @__PURE__ */ i(
|
|
1978
|
+
children: [s && /* @__PURE__ */ i(J, {
|
|
1979
1979
|
type: "button",
|
|
1980
1980
|
variant: "outline",
|
|
1981
1981
|
disabled: n,
|
|
1982
1982
|
onClick: s,
|
|
1983
1983
|
children: "Back"
|
|
1984
|
-
}), /* @__PURE__ */ i(
|
|
1984
|
+
}), /* @__PURE__ */ i(J, {
|
|
1985
1985
|
className: "flex-1",
|
|
1986
1986
|
type: "submit",
|
|
1987
1987
|
loading: n,
|
|
@@ -1992,7 +1992,7 @@ function _n({ step: e, values: t, submitting: n = !1, submitLabel: r, onSubmit:
|
|
|
1992
1992
|
}
|
|
1993
1993
|
//#endregion
|
|
1994
1994
|
//#region src/components/blocks/auth/onboarding-block.tsx
|
|
1995
|
-
var
|
|
1995
|
+
var _n = [{
|
|
1996
1996
|
id: "profile",
|
|
1997
1997
|
title: "Your profile",
|
|
1998
1998
|
fields: [{
|
|
@@ -2002,9 +2002,9 @@ var vn = [{
|
|
|
2002
2002
|
required: !0
|
|
2003
2003
|
}]
|
|
2004
2004
|
}];
|
|
2005
|
-
function
|
|
2006
|
-
let l =
|
|
2007
|
-
|
|
2005
|
+
function vn({ steps: e = _n, logo: t, accent: n, onStepSubmit: r, onComplete: o, showCompleteScreen: s = !0, className: c }) {
|
|
2006
|
+
let l = P.useRef(null), u = P.useRef({}), [d, f] = P.useState({}), [p, m] = P.useState(0), [h, g] = P.useState({}), [_, v] = P.useState("idle"), [y, b] = P.useState(null), x = _ === "success", S = e[p], C = p >= e.length - 1;
|
|
2007
|
+
P.useEffect(() => {
|
|
2008
2008
|
y || l.current?.focus();
|
|
2009
2009
|
}, [
|
|
2010
2010
|
p,
|
|
@@ -2024,15 +2024,15 @@ function yn({ steps: e = vn, logo: t, accent: n, onStepSubmit: r, onComplete: o,
|
|
|
2024
2024
|
v("idle"), b(e instanceof Error ? e.message : "Unable to save your profile.");
|
|
2025
2025
|
}
|
|
2026
2026
|
}
|
|
2027
|
-
return x && !s ? null : /* @__PURE__ */ i(
|
|
2027
|
+
return x && !s ? null : /* @__PURE__ */ i(rn, {
|
|
2028
2028
|
title: x ? "You're all set" : S?.title ?? "Your profile",
|
|
2029
2029
|
description: x ? void 0 : S?.description,
|
|
2030
2030
|
logo: t,
|
|
2031
2031
|
accent: n,
|
|
2032
2032
|
className: c,
|
|
2033
|
-
children: /* @__PURE__ */ i(
|
|
2033
|
+
children: /* @__PURE__ */ i(an, {
|
|
2034
2034
|
step: x ? "done" : `step-${p}`,
|
|
2035
|
-
children: x ? /* @__PURE__ */ i(
|
|
2035
|
+
children: x ? /* @__PURE__ */ i(on, {
|
|
2036
2036
|
title: "Profile saved",
|
|
2037
2037
|
description: "Your account is ready and your profile has been saved."
|
|
2038
2038
|
}) : S ? /* @__PURE__ */ a("div", {
|
|
@@ -2044,7 +2044,7 @@ function yn({ steps: e = vn, logo: t, accent: n, onStepSubmit: r, onComplete: o,
|
|
|
2044
2044
|
className: "flex flex-wrap gap-x-3 gap-y-1 text-xs",
|
|
2045
2045
|
children: e.map((e, t) => /* @__PURE__ */ a("li", {
|
|
2046
2046
|
"aria-current": t === p ? "step" : void 0,
|
|
2047
|
-
className:
|
|
2047
|
+
className: q("text-muted-foreground", t === p && "font-medium text-foreground"),
|
|
2048
2048
|
children: [e.title, t < p && /* @__PURE__ */ i("span", {
|
|
2049
2049
|
className: "sr-only",
|
|
2050
2050
|
children: " (completed)"
|
|
@@ -2058,8 +2058,8 @@ function yn({ steps: e = vn, logo: t, accent: n, onStepSubmit: r, onComplete: o,
|
|
|
2058
2058
|
className: "sr-only",
|
|
2059
2059
|
children: S.title
|
|
2060
2060
|
}),
|
|
2061
|
-
/* @__PURE__ */ i(
|
|
2062
|
-
/* @__PURE__ */ i(
|
|
2061
|
+
/* @__PURE__ */ i($, { message: y }),
|
|
2062
|
+
/* @__PURE__ */ i(gn, {
|
|
2063
2063
|
step: S,
|
|
2064
2064
|
values: {
|
|
2065
2065
|
...h,
|
|
@@ -2085,14 +2085,14 @@ function yn({ steps: e = vn, logo: t, accent: n, onStepSubmit: r, onComplete: o,
|
|
|
2085
2085
|
}
|
|
2086
2086
|
//#endregion
|
|
2087
2087
|
//#region src/components/blocks/auth/passkey-manager-block.tsx
|
|
2088
|
-
var
|
|
2089
|
-
function
|
|
2088
|
+
var yn = 120, bn = "This is your last passkey. After deleting it you won't be able to sign in with a passkey until you register a new one.";
|
|
2089
|
+
function xn(e) {
|
|
2090
2090
|
if (!e) return null;
|
|
2091
2091
|
let t = new Date(e);
|
|
2092
2092
|
return Number.isNaN(t.getTime()) ? null : t.toLocaleDateString();
|
|
2093
2093
|
}
|
|
2094
|
-
function
|
|
2095
|
-
let [d, f] =
|
|
2094
|
+
function Sn({ title: e = "Passkeys", description: t = "Sign in without a password using your device's biometrics or security key.", passkeys: n = [], available: r = !0, loading: o = !1, onRegister: s, onRename: c, onDelete: l, className: u }) {
|
|
2095
|
+
let [d, f] = P.useState(null), [p, m] = P.useState(!1), [h, g] = P.useState(!1), [_, v] = P.useState(null), [y, b] = P.useState(""), [S, C] = P.useState(null), [w, T] = P.useState(null), E = n.length === 1;
|
|
2096
2096
|
async function D(e) {
|
|
2097
2097
|
if (p) return { ok: !1 };
|
|
2098
2098
|
f(null), m(!0);
|
|
@@ -2115,41 +2115,41 @@ function Cn({ title: e = "Passkeys", description: t = "Sign in without a passwor
|
|
|
2115
2115
|
}
|
|
2116
2116
|
async function A(e) {
|
|
2117
2117
|
let t = y.trim();
|
|
2118
|
-
if (t.length < 1 || t.length >
|
|
2119
|
-
C(`Name must be between 1 and ${
|
|
2118
|
+
if (t.length < 1 || t.length > yn) {
|
|
2119
|
+
C(`Name must be between 1 and ${yn} characters.`);
|
|
2120
2120
|
return;
|
|
2121
2121
|
}
|
|
2122
2122
|
(await D(() => c?.(e, t))).ok && (v(null), C(null));
|
|
2123
2123
|
}
|
|
2124
|
-
async function
|
|
2124
|
+
async function j(e) {
|
|
2125
2125
|
let t = await D(() => l?.(e));
|
|
2126
2126
|
T(null), t.ok && _ === e && v(null);
|
|
2127
2127
|
}
|
|
2128
|
-
return /* @__PURE__ */ i(
|
|
2128
|
+
return /* @__PURE__ */ i(ve, {
|
|
2129
2129
|
reducedMotion: "user",
|
|
2130
|
-
children: /* @__PURE__ */ a(
|
|
2131
|
-
className:
|
|
2130
|
+
children: /* @__PURE__ */ a(ze, {
|
|
2131
|
+
className: q("w-full", u),
|
|
2132
2132
|
"data-slot": "auth-block",
|
|
2133
|
-
children: [/* @__PURE__ */ a(
|
|
2133
|
+
children: [/* @__PURE__ */ a(Ke, { children: [/* @__PURE__ */ i(qe, { children: e }), /* @__PURE__ */ i(Je, { children: t })] }), /* @__PURE__ */ i(Xe, { children: r ? o ? /* @__PURE__ */ a("div", {
|
|
2134
2134
|
className: "flex items-center gap-2 text-sm text-muted-foreground",
|
|
2135
|
-
children: [/* @__PURE__ */ i(
|
|
2136
|
-
}) : /* @__PURE__ */ a(
|
|
2135
|
+
children: [/* @__PURE__ */ i(ke, { className: "size-4" }), "Loading passkeys…"]
|
|
2136
|
+
}) : /* @__PURE__ */ a(K.div, {
|
|
2137
2137
|
layout: !0,
|
|
2138
2138
|
transition: {
|
|
2139
2139
|
duration: .3,
|
|
2140
|
-
ease:
|
|
2140
|
+
ease: Z
|
|
2141
2141
|
},
|
|
2142
2142
|
className: "flex flex-col gap-3",
|
|
2143
2143
|
children: [
|
|
2144
|
-
/* @__PURE__ */ i(
|
|
2144
|
+
/* @__PURE__ */ i($, { message: d }),
|
|
2145
2145
|
n.length > 0 ? /* @__PURE__ */ i("ul", {
|
|
2146
2146
|
"aria-label": "Passkeys",
|
|
2147
2147
|
className: "flex flex-col gap-2",
|
|
2148
|
-
children: /* @__PURE__ */ i(
|
|
2148
|
+
children: /* @__PURE__ */ i(G, {
|
|
2149
2149
|
initial: !1,
|
|
2150
2150
|
children: n.map((e, t) => {
|
|
2151
|
-
let n = e.name ?? "Passkey", r =
|
|
2152
|
-
return /* @__PURE__ */ a(
|
|
2151
|
+
let n = e.name ?? "Passkey", r = xn(e.createdAt), o = xn(e.lastUsedAt);
|
|
2152
|
+
return /* @__PURE__ */ a(K.li, {
|
|
2153
2153
|
layout: !0,
|
|
2154
2154
|
className: "flex flex-col gap-2 rounded-lg border px-3 py-2",
|
|
2155
2155
|
initial: {
|
|
@@ -2166,7 +2166,7 @@ function Cn({ title: e = "Passkeys", description: t = "Sign in without a passwor
|
|
|
2166
2166
|
},
|
|
2167
2167
|
transition: {
|
|
2168
2168
|
duration: .25,
|
|
2169
|
-
ease:
|
|
2169
|
+
ease: Z,
|
|
2170
2170
|
delay: Math.min(t, 5) * .04
|
|
2171
2171
|
},
|
|
2172
2172
|
children: [
|
|
@@ -2194,7 +2194,7 @@ function Cn({ title: e = "Passkeys", description: t = "Sign in without a passwor
|
|
|
2194
2194
|
})]
|
|
2195
2195
|
}), /* @__PURE__ */ a("div", {
|
|
2196
2196
|
className: "flex shrink-0 gap-2",
|
|
2197
|
-
children: [/* @__PURE__ */ i(
|
|
2197
|
+
children: [/* @__PURE__ */ i(J, {
|
|
2198
2198
|
"aria-label": `Rename ${n}`,
|
|
2199
2199
|
size: "sm",
|
|
2200
2200
|
type: "button",
|
|
@@ -2202,7 +2202,7 @@ function Cn({ title: e = "Passkeys", description: t = "Sign in without a passwor
|
|
|
2202
2202
|
disabled: p,
|
|
2203
2203
|
onClick: () => k(e),
|
|
2204
2204
|
children: "Rename"
|
|
2205
|
-
}), /* @__PURE__ */ i(
|
|
2205
|
+
}), /* @__PURE__ */ i(J, {
|
|
2206
2206
|
"aria-label": `Delete ${n}`,
|
|
2207
2207
|
size: "sm",
|
|
2208
2208
|
type: "button",
|
|
@@ -2215,7 +2215,7 @@ function Cn({ title: e = "Passkeys", description: t = "Sign in without a passwor
|
|
|
2215
2215
|
})]
|
|
2216
2216
|
})]
|
|
2217
2217
|
}),
|
|
2218
|
-
/* @__PURE__ */ i(
|
|
2218
|
+
/* @__PURE__ */ i(Q, {
|
|
2219
2219
|
show: _ === e.id,
|
|
2220
2220
|
children: /* @__PURE__ */ a("form", {
|
|
2221
2221
|
className: "flex items-start gap-2 pt-1",
|
|
@@ -2223,15 +2223,15 @@ function Cn({ title: e = "Passkeys", description: t = "Sign in without a passwor
|
|
|
2223
2223
|
t.preventDefault(), A(e.id);
|
|
2224
2224
|
},
|
|
2225
2225
|
children: [
|
|
2226
|
-
/* @__PURE__ */ a(
|
|
2226
|
+
/* @__PURE__ */ a(Y, {
|
|
2227
2227
|
className: "min-w-0 grow",
|
|
2228
2228
|
invalid: !!S,
|
|
2229
2229
|
children: [
|
|
2230
|
-
/* @__PURE__ */ i(
|
|
2230
|
+
/* @__PURE__ */ i(X, {
|
|
2231
2231
|
className: "sr-only",
|
|
2232
2232
|
children: "Passkey name"
|
|
2233
2233
|
}),
|
|
2234
|
-
/* @__PURE__ */ i(
|
|
2234
|
+
/* @__PURE__ */ i(pt, {
|
|
2235
2235
|
"aria-label": "Passkey name",
|
|
2236
2236
|
"aria-invalid": S ? !0 : void 0,
|
|
2237
2237
|
autoFocus: !0,
|
|
@@ -2240,19 +2240,19 @@ function Cn({ title: e = "Passkeys", description: t = "Sign in without a passwor
|
|
|
2240
2240
|
value: y,
|
|
2241
2241
|
onChange: (e) => b(e.target.value)
|
|
2242
2242
|
}),
|
|
2243
|
-
S && /* @__PURE__ */ i(
|
|
2243
|
+
S && /* @__PURE__ */ i(it, {
|
|
2244
2244
|
match: !0,
|
|
2245
2245
|
children: S
|
|
2246
2246
|
})
|
|
2247
2247
|
]
|
|
2248
2248
|
}),
|
|
2249
|
-
/* @__PURE__ */ i(
|
|
2249
|
+
/* @__PURE__ */ i(J, {
|
|
2250
2250
|
size: "sm",
|
|
2251
2251
|
type: "submit",
|
|
2252
2252
|
loading: p,
|
|
2253
2253
|
children: "Save"
|
|
2254
2254
|
}),
|
|
2255
|
-
/* @__PURE__ */ i(
|
|
2255
|
+
/* @__PURE__ */ i(J, {
|
|
2256
2256
|
size: "sm",
|
|
2257
2257
|
type: "button",
|
|
2258
2258
|
variant: "ghost",
|
|
@@ -2263,7 +2263,7 @@ function Cn({ title: e = "Passkeys", description: t = "Sign in without a passwor
|
|
|
2263
2263
|
]
|
|
2264
2264
|
})
|
|
2265
2265
|
}),
|
|
2266
|
-
/* @__PURE__ */ i(
|
|
2266
|
+
/* @__PURE__ */ i(Q, {
|
|
2267
2267
|
show: w === e.id,
|
|
2268
2268
|
children: /* @__PURE__ */ a("div", {
|
|
2269
2269
|
className: "flex flex-col gap-2 rounded-lg bg-muted/50 p-2",
|
|
@@ -2276,18 +2276,18 @@ function Cn({ title: e = "Passkeys", description: t = "Sign in without a passwor
|
|
|
2276
2276
|
}),
|
|
2277
2277
|
E && /* @__PURE__ */ i("p", {
|
|
2278
2278
|
className: "text-xs text-destructive-foreground",
|
|
2279
|
-
children:
|
|
2279
|
+
children: bn
|
|
2280
2280
|
}),
|
|
2281
2281
|
/* @__PURE__ */ a("div", {
|
|
2282
2282
|
className: "flex gap-2",
|
|
2283
|
-
children: [/* @__PURE__ */ i(
|
|
2283
|
+
children: [/* @__PURE__ */ i(J, {
|
|
2284
2284
|
size: "sm",
|
|
2285
2285
|
type: "button",
|
|
2286
2286
|
variant: "destructive",
|
|
2287
2287
|
loading: p,
|
|
2288
|
-
onClick: () => void
|
|
2288
|
+
onClick: () => void j(e.id),
|
|
2289
2289
|
children: "Delete passkey"
|
|
2290
|
-
}), /* @__PURE__ */ i(
|
|
2290
|
+
}), /* @__PURE__ */ i(J, {
|
|
2291
2291
|
size: "sm",
|
|
2292
2292
|
type: "button",
|
|
2293
2293
|
variant: "ghost",
|
|
@@ -2307,7 +2307,7 @@ function Cn({ title: e = "Passkeys", description: t = "Sign in without a passwor
|
|
|
2307
2307
|
className: "text-sm text-muted-foreground",
|
|
2308
2308
|
children: "No passkeys registered yet. Add one to sign in without a password."
|
|
2309
2309
|
}),
|
|
2310
|
-
/* @__PURE__ */ i(
|
|
2310
|
+
/* @__PURE__ */ i(J, {
|
|
2311
2311
|
className: "w-full",
|
|
2312
2312
|
type: "button",
|
|
2313
2313
|
variant: "outline",
|
|
@@ -2326,8 +2326,8 @@ function Cn({ title: e = "Passkeys", description: t = "Sign in without a passwor
|
|
|
2326
2326
|
}
|
|
2327
2327
|
//#endregion
|
|
2328
2328
|
//#region src/components/blocks/auth/passkey-sign-in-block.tsx
|
|
2329
|
-
function
|
|
2330
|
-
let [s, c] =
|
|
2329
|
+
function Cn({ available: e = !0, label: t = "Sign in with a passkey", onSignIn: n, fallbackHint: r = "You can still sign in with your other methods below.", className: o }) {
|
|
2330
|
+
let [s, c] = P.useState(null), [l, u] = P.useState(!1);
|
|
2331
2331
|
if (!e) return null;
|
|
2332
2332
|
async function d() {
|
|
2333
2333
|
if (!l) {
|
|
@@ -2342,9 +2342,9 @@ function wn({ available: e = !0, label: t = "Sign in with a passkey", onSignIn:
|
|
|
2342
2342
|
}
|
|
2343
2343
|
}
|
|
2344
2344
|
return /* @__PURE__ */ a("div", {
|
|
2345
|
-
className:
|
|
2345
|
+
className: q("flex w-full flex-col gap-2", o),
|
|
2346
2346
|
children: [
|
|
2347
|
-
/* @__PURE__ */ a(
|
|
2347
|
+
/* @__PURE__ */ a(J, {
|
|
2348
2348
|
variant: "outline",
|
|
2349
2349
|
className: "w-full",
|
|
2350
2350
|
type: "button",
|
|
@@ -2355,8 +2355,8 @@ function wn({ available: e = !0, label: t = "Sign in with a passkey", onSignIn:
|
|
|
2355
2355
|
children: t
|
|
2356
2356
|
})]
|
|
2357
2357
|
}),
|
|
2358
|
-
/* @__PURE__ */ i(
|
|
2359
|
-
/* @__PURE__ */ i(
|
|
2358
|
+
/* @__PURE__ */ i($, { message: s }),
|
|
2359
|
+
/* @__PURE__ */ i(Q, {
|
|
2360
2360
|
show: !!s && !!r,
|
|
2361
2361
|
children: /* @__PURE__ */ i("p", {
|
|
2362
2362
|
className: "text-xs text-muted-foreground",
|
|
@@ -2368,22 +2368,22 @@ function wn({ available: e = !0, label: t = "Sign in with a passkey", onSignIn:
|
|
|
2368
2368
|
}
|
|
2369
2369
|
//#endregion
|
|
2370
2370
|
//#region src/components/blocks/auth/signup-block.tsx
|
|
2371
|
-
function
|
|
2371
|
+
function wn({ title: e = "Create your account", description: t = "Start exploring manuscripts in minutes", logo: n, accent: o, providers: s = [
|
|
2372
2372
|
"google",
|
|
2373
2373
|
"apple",
|
|
2374
2374
|
"github"
|
|
2375
2375
|
], showNameField: c = !0, showTerms: l = !0, termsChecked: u, defaultTermsChecked: d = !1, onTermsCheckedChange: f, enforceStrongPassword: p = !0, onSubmit: m, termsComponent: h, onProviderSelect: g, onLogin: _, onTerms: v }) {
|
|
2376
|
-
let y =
|
|
2377
|
-
function
|
|
2378
|
-
u === void 0 &&
|
|
2376
|
+
let y = P.useId(), b = P.useId(), x = P.useId(), S = P.useId(), [C, w] = P.useState("idle"), [T, E] = P.useState(null), [D, O] = P.useState(null), [k, A] = P.useState(""), [j, M] = P.useState(d), N = u ?? j;
|
|
2377
|
+
function ee(e) {
|
|
2378
|
+
u === void 0 && M(e), f?.(e);
|
|
2379
2379
|
}
|
|
2380
|
-
let [
|
|
2381
|
-
async function
|
|
2382
|
-
if (e.preventDefault(), E(null), !
|
|
2380
|
+
let [te, F] = P.useState(!1), [I, L] = P.useState(!1), R = C === "loading" || D !== null, z = !p || Kt(k) === Gt.length, B = k.trim().length > 0 && z, V = (!c || I) && te && B;
|
|
2381
|
+
async function ne(e) {
|
|
2382
|
+
if (e.preventDefault(), E(null), !z) {
|
|
2383
2383
|
E("Please meet all password requirements.");
|
|
2384
2384
|
return;
|
|
2385
2385
|
}
|
|
2386
|
-
if (l && !
|
|
2386
|
+
if (l && !N) {
|
|
2387
2387
|
E("Please accept the terms to continue.");
|
|
2388
2388
|
return;
|
|
2389
2389
|
}
|
|
@@ -2399,7 +2399,7 @@ function Tn({ title: e = "Create your account", description: t = "Start explorin
|
|
|
2399
2399
|
w("idle"), E(e instanceof Error ? e.message : "Unable to create account.");
|
|
2400
2400
|
}
|
|
2401
2401
|
}
|
|
2402
|
-
async function
|
|
2402
|
+
async function re(e) {
|
|
2403
2403
|
E(null), O(e);
|
|
2404
2404
|
try {
|
|
2405
2405
|
await g?.(e), w("success");
|
|
@@ -2409,7 +2409,7 @@ function Tn({ title: e = "Create your account", description: t = "Start explorin
|
|
|
2409
2409
|
O(null);
|
|
2410
2410
|
}
|
|
2411
2411
|
}
|
|
2412
|
-
return /* @__PURE__ */ i(
|
|
2412
|
+
return /* @__PURE__ */ i(rn, {
|
|
2413
2413
|
title: e,
|
|
2414
2414
|
description: t,
|
|
2415
2415
|
logo: n,
|
|
@@ -2417,55 +2417,55 @@ function Tn({ title: e = "Create your account", description: t = "Start explorin
|
|
|
2417
2417
|
footer: C !== "success" && /* @__PURE__ */ a(r, { children: [
|
|
2418
2418
|
"Already have an account?",
|
|
2419
2419
|
" ",
|
|
2420
|
-
/* @__PURE__ */ i(
|
|
2420
|
+
/* @__PURE__ */ i(J, {
|
|
2421
2421
|
variant: "link",
|
|
2422
2422
|
onClick: _,
|
|
2423
2423
|
children: "Login"
|
|
2424
2424
|
})
|
|
2425
2425
|
] }),
|
|
2426
|
-
children: /* @__PURE__ */ i(
|
|
2426
|
+
children: /* @__PURE__ */ i(an, {
|
|
2427
2427
|
step: C === "success" ? "success" : "form",
|
|
2428
|
-
children: C === "success" ? /* @__PURE__ */ i(
|
|
2428
|
+
children: C === "success" ? /* @__PURE__ */ i(on, {
|
|
2429
2429
|
title: "Account created",
|
|
2430
2430
|
description: "Check your inbox to confirm your email address."
|
|
2431
2431
|
}) : /* @__PURE__ */ a("div", {
|
|
2432
2432
|
className: "flex flex-col gap-4",
|
|
2433
|
-
children: [s.length > 0 && /* @__PURE__ */ a(
|
|
2434
|
-
show: !
|
|
2433
|
+
children: [s.length > 0 && /* @__PURE__ */ a(Q, {
|
|
2434
|
+
show: !V,
|
|
2435
2435
|
className: "flex flex-col gap-4",
|
|
2436
|
-
children: [/* @__PURE__ */ i(
|
|
2436
|
+
children: [/* @__PURE__ */ i(Qt, {
|
|
2437
2437
|
providers: s,
|
|
2438
2438
|
action: "signup",
|
|
2439
2439
|
loadingProvider: D,
|
|
2440
2440
|
disabled: C === "loading",
|
|
2441
|
-
onSelect:
|
|
2442
|
-
}), /* @__PURE__ */ i(
|
|
2441
|
+
onSelect: re
|
|
2442
|
+
}), /* @__PURE__ */ i(sn, { label: "Or with email" })]
|
|
2443
2443
|
}), /* @__PURE__ */ a("form", {
|
|
2444
2444
|
className: "flex flex-col gap-4",
|
|
2445
|
-
onSubmit:
|
|
2445
|
+
onSubmit: ne,
|
|
2446
2446
|
children: [
|
|
2447
|
-
c && /* @__PURE__ */ a(
|
|
2447
|
+
c && /* @__PURE__ */ a(Y, {
|
|
2448
2448
|
name: "name",
|
|
2449
|
-
children: [/* @__PURE__ */ i(
|
|
2449
|
+
children: [/* @__PURE__ */ i(X, {
|
|
2450
2450
|
htmlFor: y,
|
|
2451
2451
|
children: "Name"
|
|
2452
|
-
}), /* @__PURE__ */ i(
|
|
2452
|
+
}), /* @__PURE__ */ i(pt, {
|
|
2453
2453
|
"aria-label": "Name",
|
|
2454
2454
|
id: y,
|
|
2455
2455
|
name: "name",
|
|
2456
2456
|
autoComplete: "name",
|
|
2457
2457
|
placeholder: "Your name",
|
|
2458
2458
|
required: !0,
|
|
2459
|
-
disabled:
|
|
2460
|
-
onChange: (e) =>
|
|
2459
|
+
disabled: R,
|
|
2460
|
+
onChange: (e) => L(e.currentTarget.validity.valid)
|
|
2461
2461
|
})]
|
|
2462
2462
|
}),
|
|
2463
|
-
/* @__PURE__ */ a(
|
|
2463
|
+
/* @__PURE__ */ a(Y, {
|
|
2464
2464
|
name: "email",
|
|
2465
|
-
children: [/* @__PURE__ */ i(
|
|
2465
|
+
children: [/* @__PURE__ */ i(X, {
|
|
2466
2466
|
htmlFor: b,
|
|
2467
2467
|
children: "Email"
|
|
2468
|
-
}), /* @__PURE__ */ i(
|
|
2468
|
+
}), /* @__PURE__ */ i(pt, {
|
|
2469
2469
|
id: b,
|
|
2470
2470
|
name: "email",
|
|
2471
2471
|
type: "email",
|
|
@@ -2473,18 +2473,18 @@ function Tn({ title: e = "Create your account", description: t = "Start explorin
|
|
|
2473
2473
|
autoComplete: "email",
|
|
2474
2474
|
placeholder: "you@example.com",
|
|
2475
2475
|
required: !0,
|
|
2476
|
-
disabled:
|
|
2477
|
-
onChange: (e) =>
|
|
2476
|
+
disabled: R,
|
|
2477
|
+
onChange: (e) => F(e.currentTarget.validity.valid)
|
|
2478
2478
|
})]
|
|
2479
2479
|
}),
|
|
2480
|
-
/* @__PURE__ */ i(
|
|
2481
|
-
show:
|
|
2482
|
-
children: /* @__PURE__ */ a(
|
|
2480
|
+
/* @__PURE__ */ i(Q, {
|
|
2481
|
+
show: te,
|
|
2482
|
+
children: /* @__PURE__ */ a(Y, {
|
|
2483
2483
|
name: "password",
|
|
2484
|
-
children: [/* @__PURE__ */ i(
|
|
2484
|
+
children: [/* @__PURE__ */ i(X, {
|
|
2485
2485
|
htmlFor: x,
|
|
2486
2486
|
children: "Password"
|
|
2487
|
-
}), /* @__PURE__ */ i(
|
|
2487
|
+
}), /* @__PURE__ */ i(Jt, {
|
|
2488
2488
|
id: x,
|
|
2489
2489
|
name: "password",
|
|
2490
2490
|
"aria-label": "Password",
|
|
@@ -2492,7 +2492,7 @@ function Tn({ title: e = "Create your account", description: t = "Start explorin
|
|
|
2492
2492
|
placeholder: "Create a password",
|
|
2493
2493
|
showStrength: !0,
|
|
2494
2494
|
required: !0,
|
|
2495
|
-
disabled:
|
|
2495
|
+
disabled: R,
|
|
2496
2496
|
value: k,
|
|
2497
2497
|
onChange: (e) => A(e.target.value)
|
|
2498
2498
|
})]
|
|
@@ -2500,18 +2500,18 @@ function Tn({ title: e = "Create your account", description: t = "Start explorin
|
|
|
2500
2500
|
}),
|
|
2501
2501
|
l && /* @__PURE__ */ a("div", {
|
|
2502
2502
|
className: "flex items-center gap-2",
|
|
2503
|
-
children: [/* @__PURE__ */ i(
|
|
2503
|
+
children: [/* @__PURE__ */ i(tt, {
|
|
2504
2504
|
id: S,
|
|
2505
|
-
checked:
|
|
2506
|
-
onCheckedChange: (e) =>
|
|
2507
|
-
disabled:
|
|
2508
|
-
}), /* @__PURE__ */ a(
|
|
2505
|
+
checked: N,
|
|
2506
|
+
onCheckedChange: (e) => ee(e === !0),
|
|
2507
|
+
disabled: R
|
|
2508
|
+
}), /* @__PURE__ */ a(xt, {
|
|
2509
2509
|
htmlFor: S,
|
|
2510
2510
|
className: "font-normal",
|
|
2511
2511
|
children: [
|
|
2512
2512
|
"I agree to the",
|
|
2513
2513
|
" ",
|
|
2514
|
-
h ?? /* @__PURE__ */ i(
|
|
2514
|
+
h ?? /* @__PURE__ */ i(J, {
|
|
2515
2515
|
variant: "link",
|
|
2516
2516
|
type: "button",
|
|
2517
2517
|
onClick: v,
|
|
@@ -2520,12 +2520,12 @@ function Tn({ title: e = "Create your account", description: t = "Start explorin
|
|
|
2520
2520
|
]
|
|
2521
2521
|
})]
|
|
2522
2522
|
}),
|
|
2523
|
-
/* @__PURE__ */ i(
|
|
2524
|
-
/* @__PURE__ */ i(
|
|
2525
|
-
className:
|
|
2523
|
+
/* @__PURE__ */ i($, { message: T }),
|
|
2524
|
+
/* @__PURE__ */ i(J, {
|
|
2525
|
+
className: q("w-full", o && "border-transparent bg-[var(--auth-accent)] bg-[image:var(--auth-accent-image)] text-[var(--auth-accent-foreground)] shadow-none hover:bg-[var(--auth-accent)] hover:brightness-110 data-pressed:bg-[var(--auth-accent)] data-pressed:brightness-110 *:data-[slot=button-loading-indicator]:text-[var(--auth-accent-foreground)]"),
|
|
2526
2526
|
type: "submit",
|
|
2527
2527
|
loading: C === "loading",
|
|
2528
|
-
disabled:
|
|
2528
|
+
disabled: R,
|
|
2529
2529
|
children: "Create account"
|
|
2530
2530
|
})
|
|
2531
2531
|
]
|
|
@@ -2536,8 +2536,8 @@ function Tn({ title: e = "Create your account", description: t = "Start explorin
|
|
|
2536
2536
|
}
|
|
2537
2537
|
//#endregion
|
|
2538
2538
|
//#region src/components/blocks/auth/update-password-block.tsx
|
|
2539
|
-
function
|
|
2540
|
-
let l =
|
|
2539
|
+
function Tn({ title: e = "Update your password", description: t = "Choose a new password for your account", logo: n, accent: r, minStrength: o = 4, onSubmit: s, onDone: c }) {
|
|
2540
|
+
let l = P.useId(), u = P.useId(), [d, f] = P.useState("idle"), [p, m] = P.useState(null), [h, g] = P.useState(""), [_, v] = P.useState(""), y = Kt(h) >= o, b = _.length > 0 && _ === h, x = y && b, S = _.length > 0 && !h.startsWith(_);
|
|
2541
2541
|
async function C(e) {
|
|
2542
2542
|
if (e.preventDefault(), x) {
|
|
2543
2543
|
m(null), f("loading");
|
|
@@ -2548,17 +2548,17 @@ function En({ title: e = "Update your password", description: t = "Choose a new
|
|
|
2548
2548
|
}
|
|
2549
2549
|
}
|
|
2550
2550
|
}
|
|
2551
|
-
return /* @__PURE__ */ i(
|
|
2551
|
+
return /* @__PURE__ */ i(rn, {
|
|
2552
2552
|
title: e,
|
|
2553
2553
|
description: t,
|
|
2554
2554
|
logo: n,
|
|
2555
2555
|
accent: r,
|
|
2556
|
-
children: /* @__PURE__ */ i(
|
|
2556
|
+
children: /* @__PURE__ */ i(an, {
|
|
2557
2557
|
step: d === "success" ? "success" : "form",
|
|
2558
|
-
children: d === "success" ? /* @__PURE__ */ i(
|
|
2558
|
+
children: d === "success" ? /* @__PURE__ */ i(on, {
|
|
2559
2559
|
title: "Password updated",
|
|
2560
2560
|
description: "Your password has been changed successfully.",
|
|
2561
|
-
children: c && /* @__PURE__ */ i(
|
|
2561
|
+
children: c && /* @__PURE__ */ i(J, {
|
|
2562
2562
|
variant: "link",
|
|
2563
2563
|
onClick: c,
|
|
2564
2564
|
children: "Continue"
|
|
@@ -2567,12 +2567,12 @@ function En({ title: e = "Update your password", description: t = "Choose a new
|
|
|
2567
2567
|
className: "flex flex-col gap-4",
|
|
2568
2568
|
onSubmit: C,
|
|
2569
2569
|
children: [
|
|
2570
|
-
/* @__PURE__ */ a(
|
|
2570
|
+
/* @__PURE__ */ a(Y, {
|
|
2571
2571
|
name: "password",
|
|
2572
|
-
children: [/* @__PURE__ */ i(
|
|
2572
|
+
children: [/* @__PURE__ */ i(X, {
|
|
2573
2573
|
htmlFor: l,
|
|
2574
2574
|
children: "New password"
|
|
2575
|
-
}), /* @__PURE__ */ i(
|
|
2575
|
+
}), /* @__PURE__ */ i(Jt, {
|
|
2576
2576
|
id: l,
|
|
2577
2577
|
name: "password",
|
|
2578
2578
|
autoComplete: "new-password",
|
|
@@ -2583,14 +2583,14 @@ function En({ title: e = "Update your password", description: t = "Choose a new
|
|
|
2583
2583
|
onChange: (e) => g(e.target.value)
|
|
2584
2584
|
})]
|
|
2585
2585
|
}),
|
|
2586
|
-
/* @__PURE__ */ i(
|
|
2586
|
+
/* @__PURE__ */ i(Q, {
|
|
2587
2587
|
show: y,
|
|
2588
|
-
children: /* @__PURE__ */ a(
|
|
2588
|
+
children: /* @__PURE__ */ a(Y, {
|
|
2589
2589
|
name: "confirmPassword",
|
|
2590
|
-
children: [/* @__PURE__ */ i(
|
|
2590
|
+
children: [/* @__PURE__ */ i(X, {
|
|
2591
2591
|
htmlFor: u,
|
|
2592
2592
|
children: "Confirm new password"
|
|
2593
|
-
}), /* @__PURE__ */ i(
|
|
2593
|
+
}), /* @__PURE__ */ i(Jt, {
|
|
2594
2594
|
id: u,
|
|
2595
2595
|
name: "confirmPassword",
|
|
2596
2596
|
autoComplete: "new-password",
|
|
@@ -2601,11 +2601,11 @@ function En({ title: e = "Update your password", description: t = "Choose a new
|
|
|
2601
2601
|
})]
|
|
2602
2602
|
})
|
|
2603
2603
|
}),
|
|
2604
|
-
/* @__PURE__ */ i(
|
|
2605
|
-
/* @__PURE__ */ i(
|
|
2604
|
+
/* @__PURE__ */ i($, { message: p ?? (S ? "Passwords do not match." : null) }),
|
|
2605
|
+
/* @__PURE__ */ i(Q, {
|
|
2606
2606
|
show: x,
|
|
2607
|
-
children: /* @__PURE__ */ i(
|
|
2608
|
-
className:
|
|
2607
|
+
children: /* @__PURE__ */ i(J, {
|
|
2608
|
+
className: q("w-full", r && "border-transparent bg-[var(--auth-accent)] bg-[image:var(--auth-accent-image)] text-[var(--auth-accent-foreground)] shadow-none hover:bg-[var(--auth-accent)] hover:brightness-110 data-pressed:bg-[var(--auth-accent)] data-pressed:brightness-110 *:data-[slot=button-loading-indicator]:text-[var(--auth-accent-foreground)]"),
|
|
2609
2609
|
type: "submit",
|
|
2610
2610
|
loading: d === "loading",
|
|
2611
2611
|
children: "Update password"
|
|
@@ -2618,7 +2618,7 @@ function En({ title: e = "Update your password", description: t = "Choose a new
|
|
|
2618
2618
|
}
|
|
2619
2619
|
//#endregion
|
|
2620
2620
|
//#region src/lib/ease.ts
|
|
2621
|
-
var
|
|
2621
|
+
var En = [
|
|
2622
2622
|
.16,
|
|
2623
2623
|
1,
|
|
2624
2624
|
.3,
|
|
@@ -2678,32 +2678,32 @@ var $ = [
|
|
|
2678
2678
|
initial: { opacity: 0 },
|
|
2679
2679
|
animate: { opacity: 1 },
|
|
2680
2680
|
exit: (e) => e ? {} : { opacity: 0 }
|
|
2681
|
-
}, Rn =
|
|
2682
|
-
let [f, p] =
|
|
2681
|
+
}, Rn = L(function({ children: e, as: t = "div", className: n, onMouseLeave: o, pillClassName: s, pillContainerClassName: c, inset: l = 20, ...u }, d) {
|
|
2682
|
+
let [f, p] = U(null), m = ne(), h = ye(), g = ee.toArray(e).filter(R).map((e, t) => {
|
|
2683
2683
|
let n = e, o = n.key ? String(n.key) : `item-${t}`;
|
|
2684
|
-
return
|
|
2684
|
+
return te(n, {
|
|
2685
2685
|
key: o,
|
|
2686
|
-
className:
|
|
2686
|
+
className: q("relative", n.props.className),
|
|
2687
2687
|
onMouseEnter: () => {
|
|
2688
2688
|
n.props.onMouseEnter?.(), p(o);
|
|
2689
2689
|
}
|
|
2690
|
-
}, /* @__PURE__ */ a(r, { children: [/* @__PURE__ */ i(
|
|
2690
|
+
}, /* @__PURE__ */ a(r, { children: [/* @__PURE__ */ i(G, {
|
|
2691
2691
|
custom: f !== null,
|
|
2692
|
-
children: f === null ? null : /* @__PURE__ */ i(
|
|
2692
|
+
children: f === null ? null : /* @__PURE__ */ i(K.div, {
|
|
2693
2693
|
variants: h ? Ln : In,
|
|
2694
2694
|
initial: "initial",
|
|
2695
2695
|
animate: "animate",
|
|
2696
2696
|
exit: "exit",
|
|
2697
2697
|
custom: f !== null,
|
|
2698
|
-
className:
|
|
2698
|
+
className: q("pointer-events-none absolute inset-y-0", c),
|
|
2699
2699
|
style: {
|
|
2700
2700
|
left: -l,
|
|
2701
2701
|
right: -l
|
|
2702
2702
|
},
|
|
2703
|
-
children: f === o ? /* @__PURE__ */ i(
|
|
2703
|
+
children: f === o ? /* @__PURE__ */ i(K.div, {
|
|
2704
2704
|
layoutId: `shared-bg-${m}`,
|
|
2705
2705
|
transition: h ? { duration: 0 } : Nn,
|
|
2706
|
-
className:
|
|
2706
|
+
className: q("pointer-events-none h-full w-full rounded-2xl bg-primary/[0.06]", s)
|
|
2707
2707
|
}) : null
|
|
2708
2708
|
})
|
|
2709
2709
|
}), /* @__PURE__ */ i("div", {
|
|
@@ -2713,12 +2713,12 @@ var $ = [
|
|
|
2713
2713
|
}), _ = (e) => {
|
|
2714
2714
|
p(null), o?.(e);
|
|
2715
2715
|
};
|
|
2716
|
-
return i(t === "ul" ?
|
|
2716
|
+
return i(t === "ul" ? K.ul : K.div, {
|
|
2717
2717
|
...u,
|
|
2718
2718
|
ref: d,
|
|
2719
2719
|
layoutRoot: !0,
|
|
2720
2720
|
onMouseLeave: _,
|
|
2721
|
-
className:
|
|
2721
|
+
className: q("flex w-full flex-col", n),
|
|
2722
2722
|
children: g
|
|
2723
2723
|
});
|
|
2724
2724
|
}), zn = "(max-width: 767px)", Bn = "b", Vn = {
|
|
@@ -2732,20 +2732,20 @@ var $ = [
|
|
|
2732
2732
|
}, Un = {
|
|
2733
2733
|
duration: .2,
|
|
2734
2734
|
delay: .08,
|
|
2735
|
-
ease:
|
|
2735
|
+
ease: En
|
|
2736
2736
|
}, Wn = {
|
|
2737
2737
|
duration: .12,
|
|
2738
|
-
ease:
|
|
2738
|
+
ease: En
|
|
2739
2739
|
}, Gn = {
|
|
2740
2740
|
duration: .18,
|
|
2741
|
-
ease:
|
|
2741
|
+
ease: En
|
|
2742
2742
|
}, Kn = {
|
|
2743
2743
|
closed: {
|
|
2744
2744
|
opacity: 0,
|
|
2745
2745
|
clipPath: "inset(0 0 100% 0 round 8px)",
|
|
2746
2746
|
transition: {
|
|
2747
2747
|
duration: .14,
|
|
2748
|
-
ease:
|
|
2748
|
+
ease: En,
|
|
2749
2749
|
staggerChildren: .025,
|
|
2750
2750
|
staggerDirection: -1
|
|
2751
2751
|
}
|
|
@@ -2756,7 +2756,7 @@ var $ = [
|
|
|
2756
2756
|
transition: {
|
|
2757
2757
|
duration: .2,
|
|
2758
2758
|
delayChildren: .035,
|
|
2759
|
-
ease:
|
|
2759
|
+
ease: En,
|
|
2760
2760
|
staggerChildren: .045
|
|
2761
2761
|
}
|
|
2762
2762
|
}
|
|
@@ -2774,7 +2774,7 @@ var $ = [
|
|
|
2774
2774
|
}
|
|
2775
2775
|
}, Jn = {
|
|
2776
2776
|
duration: .16,
|
|
2777
|
-
ease:
|
|
2777
|
+
ease: En
|
|
2778
2778
|
}, Yn = [
|
|
2779
2779
|
"a[href]",
|
|
2780
2780
|
"button:not([disabled])",
|
|
@@ -2794,41 +2794,41 @@ function Qn() {
|
|
|
2794
2794
|
return !1;
|
|
2795
2795
|
}
|
|
2796
2796
|
function $n() {
|
|
2797
|
-
return
|
|
2797
|
+
return ae(Xn, Zn, Qn);
|
|
2798
2798
|
}
|
|
2799
|
-
var er =
|
|
2799
|
+
var er = F(null), tr = F(null);
|
|
2800
2800
|
function nr() {
|
|
2801
|
-
let e =
|
|
2801
|
+
let e = B(er);
|
|
2802
2802
|
if (!e) throw Error("useAnimatedSidebar must be used inside AnimatedSidebarProvider.");
|
|
2803
2803
|
return e;
|
|
2804
2804
|
}
|
|
2805
2805
|
function rr() {
|
|
2806
|
-
let e =
|
|
2806
|
+
let e = B(tr);
|
|
2807
2807
|
if (!e) throw Error("Animated Sidebar parts must be used inside AnimatedSidebar.");
|
|
2808
2808
|
return e;
|
|
2809
2809
|
}
|
|
2810
2810
|
function ir({ children: e, open: t, defaultOpen: n, onOpenChange: r, openMobile: a, defaultOpenMobile: o, onOpenMobileChange: s, className: c, style: l, ...u }) {
|
|
2811
|
-
let [d, f] =
|
|
2811
|
+
let [d, f] = U(() => ({
|
|
2812
2812
|
left: n?.left ?? !0,
|
|
2813
2813
|
right: n?.right ?? !1
|
|
2814
|
-
})), [p, m] =
|
|
2814
|
+
})), [p, m] = U(() => ({
|
|
2815
2815
|
left: o?.left ?? !1,
|
|
2816
2816
|
right: o?.right ?? !1
|
|
2817
|
-
})), h = $n(), g =
|
|
2817
|
+
})), h = $n(), g = ye() ?? !1, _ = ne(), v = H(null), y = H(null), b = t?.left, x = t?.right, S = a?.left, C = a?.right, w = ie(() => ({
|
|
2818
2818
|
left: b ?? d.left,
|
|
2819
2819
|
right: x ?? d.right
|
|
2820
2820
|
}), [
|
|
2821
2821
|
b,
|
|
2822
2822
|
x,
|
|
2823
2823
|
d
|
|
2824
|
-
]), T =
|
|
2824
|
+
]), T = ie(() => ({
|
|
2825
2825
|
left: S ?? p.left,
|
|
2826
2826
|
right: C ?? p.right
|
|
2827
2827
|
}), [
|
|
2828
2828
|
S,
|
|
2829
2829
|
C,
|
|
2830
2830
|
p
|
|
2831
|
-
]), E =
|
|
2831
|
+
]), E = z((e, t) => {
|
|
2832
2832
|
(t === "left" ? b : x) === void 0 && f((n) => n[t] === e ? n : {
|
|
2833
2833
|
...n,
|
|
2834
2834
|
[t]: e
|
|
@@ -2837,7 +2837,7 @@ function ir({ children: e, open: t, defaultOpen: n, onOpenChange: r, openMobile:
|
|
|
2837
2837
|
b,
|
|
2838
2838
|
x,
|
|
2839
2839
|
r
|
|
2840
|
-
]), D =
|
|
2840
|
+
]), D = z((e, t) => {
|
|
2841
2841
|
(t === "left" ? S : C) === void 0 && m((n) => n[t] === e ? n : {
|
|
2842
2842
|
...n,
|
|
2843
2843
|
[t]: e
|
|
@@ -2846,7 +2846,7 @@ function ir({ children: e, open: t, defaultOpen: n, onOpenChange: r, openMobile:
|
|
|
2846
2846
|
S,
|
|
2847
2847
|
C,
|
|
2848
2848
|
s
|
|
2849
|
-
]), O =
|
|
2849
|
+
]), O = z((e) => {
|
|
2850
2850
|
h ? D(!T[e], e) : E(!w[e], e);
|
|
2851
2851
|
}, [
|
|
2852
2852
|
h,
|
|
@@ -2854,11 +2854,11 @@ function ir({ children: e, open: t, defaultOpen: n, onOpenChange: r, openMobile:
|
|
|
2854
2854
|
w,
|
|
2855
2855
|
E,
|
|
2856
2856
|
D
|
|
2857
|
-
]), k =
|
|
2857
|
+
]), k = ie(() => ({
|
|
2858
2858
|
left: v,
|
|
2859
2859
|
right: y
|
|
2860
2860
|
}), []);
|
|
2861
|
-
return
|
|
2861
|
+
return V(() => {
|
|
2862
2862
|
let e = (e) => {
|
|
2863
2863
|
e.key.toLowerCase() === Bn && (e.metaKey || e.ctrlKey) && (e.preventDefault(), O("left"));
|
|
2864
2864
|
};
|
|
@@ -2886,14 +2886,14 @@ function ir({ children: e, open: t, defaultOpen: n, onOpenChange: r, openMobile:
|
|
|
2886
2886
|
"--sidebar-width-mobile": "18rem",
|
|
2887
2887
|
...l
|
|
2888
2888
|
},
|
|
2889
|
-
className:
|
|
2889
|
+
className: q("group/sidebar-wrapper flex min-h-svh w-full min-w-0", c),
|
|
2890
2890
|
children: e
|
|
2891
2891
|
})
|
|
2892
2892
|
});
|
|
2893
2893
|
}
|
|
2894
2894
|
function ar({ ariaLabel: e, children: t, className: n, side: r }) {
|
|
2895
|
-
let o = nr(), s = o.openMobile[r], c = (e) => o.setOpenMobile(e, r), l = o.triggerRefs[r], u =
|
|
2896
|
-
return
|
|
2895
|
+
let o = nr(), s = o.openMobile[r], c = (e) => o.setOpenMobile(e, r), l = o.triggerRefs[r], u = H(null), [d, f] = U(!1);
|
|
2896
|
+
return V(() => f(!0), []), V(() => {
|
|
2897
2897
|
if (!s) return;
|
|
2898
2898
|
let e = document.body, t = window.scrollY, n = l.current, r = {
|
|
2899
2899
|
left: e.style.left,
|
|
@@ -2909,9 +2909,9 @@ function ar({ ariaLabel: e, children: t, className: n, side: r }) {
|
|
|
2909
2909
|
return () => {
|
|
2910
2910
|
cancelAnimationFrame(i), e.style.position = r.position, e.style.top = r.top, e.style.left = r.left, e.style.right = r.right, e.style.overflow = r.overflow, window.scrollTo(0, t), n?.focus({ preventScroll: !0 });
|
|
2911
2911
|
};
|
|
2912
|
-
}, [s, l]), d ?
|
|
2913
|
-
className:
|
|
2914
|
-
children: [/* @__PURE__ */ i(
|
|
2912
|
+
}, [s, l]), d ? we(/* @__PURE__ */ a("div", {
|
|
2913
|
+
className: q("pointer-events-none fixed inset-0 z-50 md:hidden", s ? "visible" : "invisible"),
|
|
2914
|
+
children: [/* @__PURE__ */ i(K.button, {
|
|
2915
2915
|
type: "button",
|
|
2916
2916
|
"aria-label": "Close sidebar",
|
|
2917
2917
|
tabIndex: s ? 0 : -1,
|
|
@@ -2919,8 +2919,8 @@ function ar({ ariaLabel: e, children: t, className: n, side: r }) {
|
|
|
2919
2919
|
animate: { opacity: +!!s },
|
|
2920
2920
|
transition: o.reduce ? Jn : Vn,
|
|
2921
2921
|
onClick: () => c(!1),
|
|
2922
|
-
className:
|
|
2923
|
-
}), /* @__PURE__ */ i(
|
|
2922
|
+
className: q("absolute inset-0", s ? "pointer-events-auto" : "pointer-events-none")
|
|
2923
|
+
}), /* @__PURE__ */ i(K.div, {
|
|
2924
2924
|
ref: u,
|
|
2925
2925
|
role: "dialog",
|
|
2926
2926
|
"aria-modal": "true",
|
|
@@ -2951,7 +2951,7 @@ function ar({ ariaLabel: e, children: t, className: n, side: r }) {
|
|
|
2951
2951
|
let n = t[0], r = t[t.length - 1];
|
|
2952
2952
|
e.shiftKey && document.activeElement === n ? (e.preventDefault(), r.focus()) : !e.shiftKey && document.activeElement === r && (e.preventDefault(), n.focus());
|
|
2953
2953
|
},
|
|
2954
|
-
className:
|
|
2954
|
+
className: q("pointer-events-auto absolute inset-y-0 flex h-dvh w-(--sidebar-width-mobile) max-w-[88vw] flex-col overflow-hidden", "will-change-transform", r === "left" ? "left-0 border-r" : "right-0", !s && "pointer-events-none", n),
|
|
2955
2955
|
children: /* @__PURE__ */ i(tr.Provider, {
|
|
2956
2956
|
value: {
|
|
2957
2957
|
collapsed: !1,
|
|
@@ -2963,14 +2963,14 @@ function ar({ ariaLabel: e, children: t, className: n, side: r }) {
|
|
|
2963
2963
|
})]
|
|
2964
2964
|
}), document.body) : null;
|
|
2965
2965
|
}
|
|
2966
|
-
var or =
|
|
2966
|
+
var or = L(function({ side: e = "left", variant: t = "sidebar", collapsible: n = "icon", ariaLabel: r = "Sidebar", children: o, className: s, panelClassName: c, style: l, ...u }, d) {
|
|
2967
2967
|
let f = nr(), p = f.open[e], m = n !== "none" && !p, h = m && n === "offcanvas", g = h ? "0px" : m ? "var(--sidebar-width-icon)" : "var(--sidebar-width)";
|
|
2968
2968
|
return f.isMobile ? /* @__PURE__ */ i(ar, {
|
|
2969
2969
|
ariaLabel: r,
|
|
2970
2970
|
className: s,
|
|
2971
2971
|
side: e,
|
|
2972
2972
|
children: o
|
|
2973
|
-
}) : /* @__PURE__ */ a(
|
|
2973
|
+
}) : /* @__PURE__ */ a(K.aside, {
|
|
2974
2974
|
...u,
|
|
2975
2975
|
ref: d,
|
|
2976
2976
|
initial: !1,
|
|
@@ -2983,15 +2983,18 @@ var or = I(function({ side: e = "left", variant: t = "sidebar", collapsible: n =
|
|
|
2983
2983
|
animate: { width: g },
|
|
2984
2984
|
transition: f.reduce ? { duration: 0 } : Hn,
|
|
2985
2985
|
style: l,
|
|
2986
|
-
className:
|
|
2987
|
-
children: [e === "right" && !m && /* @__PURE__ */ i(
|
|
2986
|
+
className: q("group/sidebar relative hidden h-auto shrink-0 will-change-[width] md:block", "peer flex!", n === "offcanvas" && "overflow-x-visible [overflow-clip-margin:1rem]", e === "right" && "order-last", s),
|
|
2987
|
+
children: [e === "right" && !m && /* @__PURE__ */ i(K.div, {
|
|
2988
|
+
className: "flex h-full cursor-col-resize justify-center p-1 group relative",
|
|
2989
|
+
children: /* @__PURE__ */ i(K.div, { className: "h-full w-full scale-y-0 animate-in bg-radial/decreasing from-amber-300/70 to-amber-500/0 to-40% transition-[colors,scale] duration-200 ease-smooth-out group-hover:scale-y-100 absolute" })
|
|
2990
|
+
}), /* @__PURE__ */ i(K.div, {
|
|
2988
2991
|
initial: !1,
|
|
2989
2992
|
animate: {
|
|
2990
2993
|
opacity: +!h,
|
|
2991
2994
|
x: h ? e === "left" ? "-100%" : "100%" : "0%"
|
|
2992
2995
|
},
|
|
2993
2996
|
transition: f.reduce ? Jn : Vn,
|
|
2994
|
-
className:
|
|
2997
|
+
className: q("sticky top-0 flex h-svh w-full flex-col overflow-hidden", "bg-neutral-50 dark:bg-neutral-900", "outline-offset-0.5 border-t-3 border-white outline-neutral-100 dark:border-neutral-800 dark:inset-ring-black", "rounded-lg shadow-md shadow-neutral-200 dark:shadow-neutral-950", n === "offcanvas" && "w-(--sidebar-width)", t === "floating" && "m-2 h-[calc(100svh-1rem)]", t === "inset" && "my-2 h-[calc(100svh-1rem)]", t === "inset" && e === "right" && "w-[calc(var(--sidebar-width)-0.5rem)]", t === "inset" && e === "left" && "border-transparent! bg-transparent! shadow-none!", c),
|
|
2995
2998
|
children: /* @__PURE__ */ i(tr.Provider, {
|
|
2996
2999
|
value: {
|
|
2997
3000
|
collapsed: m,
|
|
@@ -3002,25 +3005,26 @@ var or = I(function({ side: e = "left", variant: t = "sidebar", collapsible: n =
|
|
|
3002
3005
|
})
|
|
3003
3006
|
})]
|
|
3004
3007
|
});
|
|
3005
|
-
}), sr =
|
|
3006
|
-
let
|
|
3007
|
-
return /* @__PURE__ */ i(
|
|
3008
|
-
...
|
|
3008
|
+
}), sr = L(function({ onClick: e, side: t = "left", type: n = "button", ...r }, a) {
|
|
3009
|
+
let o = nr(), s = o.isMobile ? o.openMobile[t] : o.open[t], c = o.triggerRefs[t];
|
|
3010
|
+
return /* @__PURE__ */ i(J, {
|
|
3011
|
+
...r,
|
|
3009
3012
|
ref: (e) => {
|
|
3010
|
-
|
|
3013
|
+
c.current = e, typeof a == "function" ? a(e) : a && (a.current = e);
|
|
3011
3014
|
},
|
|
3012
|
-
type:
|
|
3013
|
-
|
|
3014
|
-
"
|
|
3015
|
+
type: n,
|
|
3016
|
+
variant: "ghost",
|
|
3017
|
+
size: "icon-xl",
|
|
3018
|
+
"aria-label": r["aria-label"] ?? "Toggle sidebar",
|
|
3019
|
+
"aria-expanded": s,
|
|
3015
3020
|
"data-slot": "sidebar-trigger",
|
|
3016
|
-
"data-side":
|
|
3017
|
-
"data-state":
|
|
3018
|
-
onClick: (
|
|
3019
|
-
|
|
3020
|
-
}
|
|
3021
|
-
className: K("inline-flex size-10 shrink-0 items-center justify-center rounded-xl outline-none", "focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background", e)
|
|
3021
|
+
"data-side": t,
|
|
3022
|
+
"data-state": s ? "expanded" : "collapsed",
|
|
3023
|
+
onClick: (n) => {
|
|
3024
|
+
e?.(n), !n.defaultPrevented && o.toggleSidebar(t);
|
|
3025
|
+
}
|
|
3022
3026
|
});
|
|
3023
|
-
}), cr =
|
|
3027
|
+
}), cr = L(function({ className: e, onClick: t, side: n = "left", type: r = "button", ...a }, o) {
|
|
3024
3028
|
let s = nr();
|
|
3025
3029
|
return /* @__PURE__ */ i("button", {
|
|
3026
3030
|
...a,
|
|
@@ -3031,76 +3035,61 @@ var or = I(function({ side: e = "left", variant: t = "sidebar", collapsible: n =
|
|
|
3031
3035
|
onClick: (e) => {
|
|
3032
3036
|
t?.(e), !e.defaultPrevented && (s.isMobile ? s.setOpenMobile(!1, n) : s.setOpen(!1, n));
|
|
3033
3037
|
},
|
|
3034
|
-
className:
|
|
3035
|
-
});
|
|
3036
|
-
}), lr = I(function({ className: e, onClick: t, type: n = "button", ...r }, a) {
|
|
3037
|
-
let o = nr(), s = rr();
|
|
3038
|
-
return /* @__PURE__ */ i("button", {
|
|
3039
|
-
...r,
|
|
3040
|
-
ref: a,
|
|
3041
|
-
type: n,
|
|
3042
|
-
"data-side": s.side,
|
|
3043
|
-
"aria-label": r["aria-label"] ?? "Toggle sidebar",
|
|
3044
|
-
title: "Toggle sidebar",
|
|
3045
|
-
tabIndex: -1,
|
|
3046
|
-
onClick: (e) => {
|
|
3047
|
-
t?.(e), !e.defaultPrevented && o.toggleSidebar(s.side);
|
|
3048
|
-
},
|
|
3049
|
-
className: K("absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 outline-none md:block", "after:absolute after:inset-y-0 after:left-1/2 after:w-px after:bg-transparent after:transition-colors hover:after:bg-border", "data-[side=left]:left-full data-[side=right]:right-0 data-[side=right]:translate-x-1/2", e)
|
|
3038
|
+
className: q("inline-flex size-10 shrink-0 items-center justify-center rounded-xl outline-none", "focus-visible:ring-2 focus-visible:ring-ring", e)
|
|
3050
3039
|
});
|
|
3051
|
-
}),
|
|
3052
|
-
return /* @__PURE__ */ i(
|
|
3040
|
+
}), lr = L(function({ className: e, ...t }, n) {
|
|
3041
|
+
return /* @__PURE__ */ i(K.main, {
|
|
3053
3042
|
...t,
|
|
3054
3043
|
ref: n,
|
|
3055
3044
|
"data-slot": "sidebar-inset",
|
|
3056
|
-
className:
|
|
3045
|
+
className: q("relative flex min-w-0 flex-1 flex-col bg-neutral-50 dark:bg-neutral-900", "outline-offset-0.5 overflow-hidden border-t-3 border-white outline-neutral-100 dark:border-neutral-800 dark:inset-ring-black", "m-2 mx-0 rounded-lg shadow-md shadow-neutral-200 dark:shadow-neutral-950", e)
|
|
3057
3046
|
});
|
|
3058
|
-
}),
|
|
3047
|
+
}), ur = L(function({ className: e, ...t }, n) {
|
|
3059
3048
|
return /* @__PURE__ */ i("div", {
|
|
3060
3049
|
...t,
|
|
3061
3050
|
ref: n,
|
|
3062
3051
|
"data-slot": "sidebar-header",
|
|
3063
|
-
className:
|
|
3052
|
+
className: q("flex shrink-0 flex-col gap-2 p-3", e)
|
|
3064
3053
|
});
|
|
3065
|
-
}),
|
|
3054
|
+
}), dr = L(function({ className: e, ...t }, n) {
|
|
3066
3055
|
return /* @__PURE__ */ i("div", {
|
|
3067
3056
|
...t,
|
|
3068
3057
|
ref: n,
|
|
3069
3058
|
"data-slot": "sidebar-content",
|
|
3070
|
-
className:
|
|
3059
|
+
className: q("flex min-h-0 flex-1 flex-col gap-2 overflow-x-hidden overflow-y-auto overscroll-contain px-2 py-2", e)
|
|
3071
3060
|
});
|
|
3072
|
-
}),
|
|
3061
|
+
}), fr = L(function({ className: e, ...t }, n) {
|
|
3073
3062
|
return /* @__PURE__ */ i("div", {
|
|
3074
3063
|
...t,
|
|
3075
3064
|
ref: n,
|
|
3076
3065
|
"data-slot": "sidebar-footer",
|
|
3077
|
-
className:
|
|
3066
|
+
className: q("flex shrink-0 flex-col gap-2 border-t border-border p-3 pb-[max(0.75rem,env(safe-area-inset-bottom))]", e)
|
|
3078
3067
|
});
|
|
3079
|
-
}),
|
|
3068
|
+
}), pr = L(function({ className: e, ...t }, n) {
|
|
3080
3069
|
return /* @__PURE__ */ i("div", {
|
|
3081
3070
|
...t,
|
|
3082
3071
|
ref: n,
|
|
3083
3072
|
"data-slot": "sidebar-group",
|
|
3084
|
-
className:
|
|
3073
|
+
className: q("flex w-full min-w-0 flex-col px-1 py-1.5", e)
|
|
3085
3074
|
});
|
|
3086
|
-
}),
|
|
3075
|
+
}), mr = L(function({ children: e, className: t, ...n }, r) {
|
|
3087
3076
|
let { collapsed: a } = rr();
|
|
3088
3077
|
return /* @__PURE__ */ i("div", {
|
|
3089
3078
|
...n,
|
|
3090
3079
|
ref: r,
|
|
3091
3080
|
"aria-hidden": a,
|
|
3092
3081
|
"data-slot": "sidebar-group-label",
|
|
3093
|
-
className:
|
|
3082
|
+
className: q("mb-1 h-7 overflow-hidden px-2 text-[10px] font-medium tracking-[0.14em] text-muted-foreground uppercase transition-opacity", a ? "opacity-0" : "opacity-100", t),
|
|
3094
3083
|
children: e
|
|
3095
3084
|
});
|
|
3096
|
-
}),
|
|
3085
|
+
}), hr = L(function({ className: e, ...t }, n) {
|
|
3097
3086
|
return /* @__PURE__ */ i("div", {
|
|
3098
3087
|
...t,
|
|
3099
3088
|
ref: n,
|
|
3100
3089
|
"data-slot": "sidebar-group-content",
|
|
3101
|
-
className:
|
|
3090
|
+
className: q("w-full min-w-0", e)
|
|
3102
3091
|
});
|
|
3103
|
-
}),
|
|
3092
|
+
}), gr = L(function({ children: e, className: t, ...n }, r) {
|
|
3104
3093
|
return /* @__PURE__ */ i(Rn, {
|
|
3105
3094
|
...n,
|
|
3106
3095
|
ref: r,
|
|
@@ -3109,24 +3098,24 @@ var or = I(function({ side: e = "left", variant: t = "sidebar", collapsible: n =
|
|
|
3109
3098
|
pillClassName: "rounded-xl bg-muted/70",
|
|
3110
3099
|
pillContainerClassName: "inset-y-auto top-0 h-9",
|
|
3111
3100
|
"data-slot": "sidebar-menu",
|
|
3112
|
-
className:
|
|
3101
|
+
className: q("flex w-full min-w-0 list-none flex-col gap-0.5", t),
|
|
3113
3102
|
children: e
|
|
3114
3103
|
});
|
|
3115
|
-
}),
|
|
3116
|
-
return /* @__PURE__ */ i(
|
|
3104
|
+
}), _r = L(function({ className: e, ...t }, n) {
|
|
3105
|
+
return /* @__PURE__ */ i(K.li, {
|
|
3117
3106
|
...t,
|
|
3118
3107
|
ref: n,
|
|
3119
3108
|
layout: "position",
|
|
3120
3109
|
transition: Nn,
|
|
3121
3110
|
"data-slot": "sidebar-menu-item",
|
|
3122
|
-
className:
|
|
3111
|
+
className: q("relative", e)
|
|
3123
3112
|
});
|
|
3124
|
-
}),
|
|
3113
|
+
}), vr = L(function({ open: e, children: t, className: n, ...r }, a) {
|
|
3125
3114
|
let o = nr(), s = rr();
|
|
3126
|
-
return /* @__PURE__ */ i(
|
|
3115
|
+
return /* @__PURE__ */ i(G, {
|
|
3127
3116
|
initial: !1,
|
|
3128
3117
|
mode: "popLayout",
|
|
3129
|
-
children: e && !s.collapsed ? /* @__PURE__ */
|
|
3118
|
+
children: e && !s.collapsed ? /* @__PURE__ */ I(K.ul, {
|
|
3130
3119
|
...r,
|
|
3131
3120
|
ref: a,
|
|
3132
3121
|
key: "sidebar-submenu",
|
|
@@ -3136,19 +3125,19 @@ var or = I(function({ side: e = "left", variant: t = "sidebar", collapsible: n =
|
|
|
3136
3125
|
exit: o.reduce ? { opacity: 0 } : "closed",
|
|
3137
3126
|
transition: o.reduce ? { duration: .12 } : void 0,
|
|
3138
3127
|
"data-slot": "sidebar-menu-sub",
|
|
3139
|
-
className:
|
|
3128
|
+
className: q("relative mt-1 ml-5 flex min-w-0 flex-col gap-0.5 border-l border-border pl-3", n)
|
|
3140
3129
|
}, t) : null
|
|
3141
3130
|
});
|
|
3142
|
-
}),
|
|
3143
|
-
return /* @__PURE__ */ i(
|
|
3131
|
+
}), yr = L(function({ className: e, ...t }, n) {
|
|
3132
|
+
return /* @__PURE__ */ i(K.li, {
|
|
3144
3133
|
...t,
|
|
3145
3134
|
ref: n,
|
|
3146
3135
|
variants: qn,
|
|
3147
3136
|
"data-slot": "sidebar-menu-sub-item",
|
|
3148
|
-
className:
|
|
3137
|
+
className: q("relative min-w-0", e)
|
|
3149
3138
|
});
|
|
3150
3139
|
});
|
|
3151
|
-
function
|
|
3140
|
+
function br({ children: e, icon: t, href: n, isActive: o = !1, disabled: s = !1, closeOnSelect: c = !0, target: l, rel: u, onSelect: d, className: f }) {
|
|
3152
3141
|
let p = nr(), m = rr(), h = (e) => {
|
|
3153
3142
|
if (s) {
|
|
3154
3143
|
e.preventDefault();
|
|
@@ -3162,8 +3151,8 @@ function xr({ children: e, icon: t, href: n, isActive: o = !1, disabled: s = !1,
|
|
|
3162
3151
|
}), /* @__PURE__ */ i("span", {
|
|
3163
3152
|
className: "min-w-0 flex-1 truncate",
|
|
3164
3153
|
children: e
|
|
3165
|
-
})] }), _ =
|
|
3166
|
-
return n ? /* @__PURE__ */ i(
|
|
3154
|
+
})] }), _ = q("flex min-h-8 w-full min-w-0 items-center gap-2 rounded-lg px-2 text-left text-xs outline-none", "text-muted-foreground transition-colors hover:bg-muted/60 hover:text-foreground", "focus-visible:bg-muted/70 focus-visible:ring-2 focus-visible:ring-ring", o && "bg-muted/70 text-foreground", s && "cursor-not-allowed opacity-40", f);
|
|
3155
|
+
return n ? /* @__PURE__ */ i(K.a, {
|
|
3167
3156
|
href: n,
|
|
3168
3157
|
target: l,
|
|
3169
3158
|
rel: u ?? (l === "_blank" ? "noreferrer noopener" : void 0),
|
|
@@ -3175,7 +3164,7 @@ function xr({ children: e, icon: t, href: n, isActive: o = !1, disabled: s = !1,
|
|
|
3175
3164
|
transition: An,
|
|
3176
3165
|
className: _,
|
|
3177
3166
|
children: g
|
|
3178
|
-
}) : /* @__PURE__ */ i(
|
|
3167
|
+
}) : /* @__PURE__ */ i(K.button, {
|
|
3179
3168
|
type: "button",
|
|
3180
3169
|
disabled: s,
|
|
3181
3170
|
"aria-current": o ? "page" : void 0,
|
|
@@ -3186,7 +3175,7 @@ function xr({ children: e, icon: t, href: n, isActive: o = !1, disabled: s = !1,
|
|
|
3186
3175
|
children: g
|
|
3187
3176
|
});
|
|
3188
3177
|
}
|
|
3189
|
-
function
|
|
3178
|
+
function xr({ children: e, icon: t, badge: n, href: o, isActive: s = !1, ariaExpanded: c, disabled: l = !1, closeOnSelect: u, target: d, rel: p, onSelect: m, className: h }) {
|
|
3190
3179
|
let g = nr(), _ = rr(), v = typeof e == "string" ? e : void 0, y = (e) => {
|
|
3191
3180
|
if (l) {
|
|
3192
3181
|
e.preventDefault();
|
|
@@ -3196,7 +3185,7 @@ function Sr({ children: e, icon: t, badge: n, href: o, isActive: s = !1, ariaExp
|
|
|
3196
3185
|
let t = u ?? c === void 0;
|
|
3197
3186
|
g.isMobile && t && g.setOpenMobile(!1, _.side);
|
|
3198
3187
|
}, b = /* @__PURE__ */ a(r, { children: [
|
|
3199
|
-
s ? /* @__PURE__ */ i(
|
|
3188
|
+
s ? /* @__PURE__ */ i(K.span, {
|
|
3200
3189
|
layoutId: g.layoutId,
|
|
3201
3190
|
transition: g.reduce ? { duration: 0 } : Nn,
|
|
3202
3191
|
className: "absolute inset-0 rounded-xl bg-muted"
|
|
@@ -3206,7 +3195,7 @@ function Sr({ children: e, icon: t, badge: n, href: o, isActive: s = !1, ariaExp
|
|
|
3206
3195
|
className: "relative z-10 grid size-5 shrink-0 place-items-center",
|
|
3207
3196
|
children: t
|
|
3208
3197
|
}) : null,
|
|
3209
|
-
/* @__PURE__ */ i(
|
|
3198
|
+
/* @__PURE__ */ i(K.span, {
|
|
3210
3199
|
initial: !1,
|
|
3211
3200
|
animate: {
|
|
3212
3201
|
opacity: +!_.collapsed,
|
|
@@ -3214,14 +3203,14 @@ function Sr({ children: e, icon: t, badge: n, href: o, isActive: s = !1, ariaExp
|
|
|
3214
3203
|
},
|
|
3215
3204
|
transition: g.reduce ? Jn : _.collapsed ? Wn : Un,
|
|
3216
3205
|
"aria-hidden": _.collapsed,
|
|
3217
|
-
className:
|
|
3206
|
+
className: q("relative z-10 min-w-0 flex-1 truncate", _.collapsed && "pointer-events-none"),
|
|
3218
3207
|
children: e
|
|
3219
3208
|
}),
|
|
3220
3209
|
n && !_.collapsed ? /* @__PURE__ */ i("span", {
|
|
3221
3210
|
className: "relative z-10 shrink-0 text-xs text-muted-foreground",
|
|
3222
3211
|
children: n
|
|
3223
3212
|
}) : null,
|
|
3224
|
-
c === void 0 ? null : /* @__PURE__ */ i(
|
|
3213
|
+
c === void 0 ? null : /* @__PURE__ */ i(K.span, {
|
|
3225
3214
|
"aria-hidden": "true",
|
|
3226
3215
|
initial: !1,
|
|
3227
3216
|
animate: {
|
|
@@ -3233,8 +3222,8 @@ function Sr({ children: e, icon: t, badge: n, href: o, isActive: s = !1, ariaExp
|
|
|
3233
3222
|
className: "relative z-10 grid size-4 shrink-0 place-items-center text-muted-foreground",
|
|
3234
3223
|
children: /* @__PURE__ */ i(f, { className: "size-3.5" })
|
|
3235
3224
|
})
|
|
3236
|
-
] }), x =
|
|
3237
|
-
return o ? /* @__PURE__ */ i(
|
|
3225
|
+
] }), x = q("relative flex min-h-9 w-full min-w-0 items-center gap-2.5 overflow-hidden rounded-xl px-3 text-left text-sm font-medium outline-none", "text-muted-foreground transition-colors hover:text-foreground", "focus-visible:bg-muted/70 focus-visible:ring-2 focus-visible:ring-ring", s && "text-foreground", l && "cursor-not-allowed opacity-40", h);
|
|
3226
|
+
return o ? /* @__PURE__ */ i(K.a, {
|
|
3238
3227
|
href: o,
|
|
3239
3228
|
target: d,
|
|
3240
3229
|
rel: p ?? (d === "_blank" ? "noreferrer noopener" : void 0),
|
|
@@ -3249,7 +3238,7 @@ function Sr({ children: e, icon: t, badge: n, href: o, isActive: s = !1, ariaExp
|
|
|
3249
3238
|
transition: An,
|
|
3250
3239
|
className: x,
|
|
3251
3240
|
children: b
|
|
3252
|
-
}) : /* @__PURE__ */ i(
|
|
3241
|
+
}) : /* @__PURE__ */ i(K.button, {
|
|
3253
3242
|
type: "button",
|
|
3254
3243
|
disabled: l,
|
|
3255
3244
|
"aria-current": s ? "page" : void 0,
|
|
@@ -3265,25 +3254,25 @@ function Sr({ children: e, icon: t, badge: n, href: o, isActive: s = !1, ariaExp
|
|
|
3265
3254
|
}
|
|
3266
3255
|
//#endregion
|
|
3267
3256
|
//#region src/components/blocks/nav/utils.ts
|
|
3268
|
-
function
|
|
3257
|
+
function Sr(e, t) {
|
|
3269
3258
|
return t !== void 0 && e === t;
|
|
3270
3259
|
}
|
|
3271
3260
|
//#endregion
|
|
3272
3261
|
//#region src/components/blocks/nav/sidebar-nav-row.tsx
|
|
3273
|
-
function
|
|
3274
|
-
let r = e.items ?? [], o = r.length > 0, s = r.some((e) =>
|
|
3262
|
+
function Cr({ item: e, activeId: t, onNavigate: n }) {
|
|
3263
|
+
let r = e.items ?? [], o = r.length > 0, s = r.some((e) => Sr(e.id, t)), [c, l] = P.useState(null), [u, d] = P.useState(s);
|
|
3275
3264
|
s !== u && (d(s), s && l(null));
|
|
3276
3265
|
let f = c ?? e.defaultOpen ?? s;
|
|
3277
3266
|
function p(e) {
|
|
3278
3267
|
e.onSelect?.(), n?.(e);
|
|
3279
3268
|
}
|
|
3280
|
-
return /* @__PURE__ */ a(
|
|
3269
|
+
return /* @__PURE__ */ a(_r, { children: [/* @__PURE__ */ i(xr, {
|
|
3281
3270
|
ariaExpanded: o ? f : void 0,
|
|
3282
3271
|
badge: e.badge,
|
|
3283
3272
|
disabled: e.disabled,
|
|
3284
3273
|
href: o ? void 0 : e.href,
|
|
3285
3274
|
icon: e.icon,
|
|
3286
|
-
isActive:
|
|
3275
|
+
isActive: Sr(e.id, t),
|
|
3287
3276
|
onSelect: () => {
|
|
3288
3277
|
if (o) {
|
|
3289
3278
|
l(!f);
|
|
@@ -3293,13 +3282,13 @@ function wr({ item: e, activeId: t, onNavigate: n }) {
|
|
|
3293
3282
|
},
|
|
3294
3283
|
target: e.target,
|
|
3295
3284
|
children: e.label
|
|
3296
|
-
}), o ? /* @__PURE__ */ i(
|
|
3285
|
+
}), o ? /* @__PURE__ */ i(vr, {
|
|
3297
3286
|
open: f,
|
|
3298
|
-
children: r.map((e) => /* @__PURE__ */ i(
|
|
3287
|
+
children: r.map((e) => /* @__PURE__ */ i(yr, { children: /* @__PURE__ */ i(br, {
|
|
3299
3288
|
disabled: e.disabled,
|
|
3300
3289
|
href: e.href,
|
|
3301
3290
|
icon: e.icon,
|
|
3302
|
-
isActive:
|
|
3291
|
+
isActive: Sr(e.id, t),
|
|
3303
3292
|
onSelect: () => p(e),
|
|
3304
3293
|
target: e.target,
|
|
3305
3294
|
children: e.label
|
|
@@ -3308,7 +3297,7 @@ function wr({ item: e, activeId: t, onNavigate: n }) {
|
|
|
3308
3297
|
}
|
|
3309
3298
|
//#endregion
|
|
3310
3299
|
//#region src/components/blocks/nav/sidebar-block.tsx
|
|
3311
|
-
function
|
|
3300
|
+
function wr({ sections: e, activeId: t, onNavigate: n, header: r, footer: o, showTrigger: s = !0, side: c = "left", variant: l = "sidebar", collapsible: u = "icon", open: d, defaultOpen: f, onOpenChange: p, openMobile: m, defaultOpenMobile: h, onOpenMobileChange: g, width: _, iconWidth: v, mobileWidth: y, ariaLabel: b = "Main", className: x }) {
|
|
3312
3301
|
return /* @__PURE__ */ i(ir, {
|
|
3313
3302
|
className: "h-full min-h-0 w-auto",
|
|
3314
3303
|
defaultOpen: { [c]: f ?? !0 },
|
|
@@ -3328,14 +3317,14 @@ function Tr({ sections: e, activeId: t, onNavigate: n, header: r, footer: o, sho
|
|
|
3328
3317
|
},
|
|
3329
3318
|
children: /* @__PURE__ */ a(or, {
|
|
3330
3319
|
ariaLabel: b,
|
|
3331
|
-
className:
|
|
3320
|
+
className: q("h-full", x),
|
|
3332
3321
|
collapsible: u,
|
|
3333
3322
|
panelClassName: "h-full",
|
|
3334
3323
|
role: "navigation",
|
|
3335
3324
|
side: c,
|
|
3336
3325
|
variant: l,
|
|
3337
3326
|
children: [
|
|
3338
|
-
r || s && /* @__PURE__ */ i(
|
|
3327
|
+
r || s && /* @__PURE__ */ i(ur, { children: /* @__PURE__ */ a("div", {
|
|
3339
3328
|
className: "flex min-w-0 items-center justify-between gap-2",
|
|
3340
3329
|
children: [r && /* @__PURE__ */ i("div", {
|
|
3341
3330
|
className: "min-w-0 flex-1",
|
|
@@ -3345,46 +3334,46 @@ function Tr({ sections: e, activeId: t, onNavigate: n, header: r, footer: o, sho
|
|
|
3345
3334
|
children: /* @__PURE__ */ i(E, { className: "size-4.5" })
|
|
3346
3335
|
})]
|
|
3347
3336
|
}) }),
|
|
3348
|
-
/* @__PURE__ */ i(
|
|
3337
|
+
/* @__PURE__ */ i(dr, { children: e.map((e) => /* @__PURE__ */ a(pr, { children: [e.label && /* @__PURE__ */ i(mr, { children: e.label }), /* @__PURE__ */ i(hr, { children: /* @__PURE__ */ i(gr, { children: e.items.map((e) => /* @__PURE__ */ i(Cr, {
|
|
3349
3338
|
activeId: t,
|
|
3350
3339
|
item: e,
|
|
3351
3340
|
onNavigate: n
|
|
3352
3341
|
}, e.id)) }) })] }, e.id)) }),
|
|
3353
|
-
o && /* @__PURE__ */ i(
|
|
3342
|
+
o && /* @__PURE__ */ i(fr, { children: o })
|
|
3354
3343
|
]
|
|
3355
3344
|
})
|
|
3356
3345
|
});
|
|
3357
3346
|
}
|
|
3358
3347
|
//#endregion
|
|
3359
3348
|
//#region src/components/blocks/nav/sidebar/utils.ts
|
|
3360
|
-
var
|
|
3349
|
+
var Tr = {
|
|
3361
3350
|
duration: .16,
|
|
3362
|
-
ease:
|
|
3351
|
+
ease: En
|
|
3363
3352
|
};
|
|
3364
|
-
function
|
|
3353
|
+
function Er(e) {
|
|
3365
3354
|
return e.kind === "folder" || e.kind === "project";
|
|
3366
3355
|
}
|
|
3367
|
-
function
|
|
3356
|
+
function Dr(e, t, n = 0, r = null) {
|
|
3368
3357
|
return e.flatMap((e) => {
|
|
3369
3358
|
let i = {
|
|
3370
3359
|
item: e,
|
|
3371
3360
|
depth: n,
|
|
3372
3361
|
parentId: r
|
|
3373
3362
|
};
|
|
3374
|
-
return !e.children?.length || !t.has(e.id) ? [i] : [i, ...
|
|
3363
|
+
return !e.children?.length || !t.has(e.id) ? [i] : [i, ...Dr(e.children, t, n + 1, e.id)];
|
|
3375
3364
|
});
|
|
3376
3365
|
}
|
|
3377
|
-
function
|
|
3366
|
+
function Or(e, t) {
|
|
3378
3367
|
for (let n of e) {
|
|
3379
3368
|
if (n.id === t) return n;
|
|
3380
|
-
let e = n.children ?
|
|
3369
|
+
let e = n.children ? Or(n.children, t) : void 0;
|
|
3381
3370
|
if (e) return e;
|
|
3382
3371
|
}
|
|
3383
3372
|
}
|
|
3384
|
-
function
|
|
3385
|
-
return e.id === t || e.children?.some((e) =>
|
|
3373
|
+
function kr(e, t) {
|
|
3374
|
+
return e.id === t || e.children?.some((e) => kr(e, t)) === !0;
|
|
3386
3375
|
}
|
|
3387
|
-
function
|
|
3376
|
+
function Ar(e, t) {
|
|
3388
3377
|
let n, r = [];
|
|
3389
3378
|
for (let i of e) {
|
|
3390
3379
|
if (i.id === t) {
|
|
@@ -3392,7 +3381,7 @@ function jr(e, t) {
|
|
|
3392
3381
|
continue;
|
|
3393
3382
|
}
|
|
3394
3383
|
if (i.children?.length) {
|
|
3395
|
-
let e =
|
|
3384
|
+
let e = Ar(i.children, t);
|
|
3396
3385
|
if (e.removed) {
|
|
3397
3386
|
n = e.removed, r.push({
|
|
3398
3387
|
...i,
|
|
@@ -3408,7 +3397,7 @@ function jr(e, t) {
|
|
|
3408
3397
|
removed: n
|
|
3409
3398
|
};
|
|
3410
3399
|
}
|
|
3411
|
-
function
|
|
3400
|
+
function jr(e, t, n, r) {
|
|
3412
3401
|
if (n === null) return [...e, t];
|
|
3413
3402
|
let i = [];
|
|
3414
3403
|
for (let a of e) {
|
|
@@ -3421,96 +3410,96 @@ function Mr(e, t, n, r) {
|
|
|
3421
3410
|
}
|
|
3422
3411
|
a.children?.length ? i.push({
|
|
3423
3412
|
...a,
|
|
3424
|
-
children:
|
|
3413
|
+
children: jr(a.children, t, n, r)
|
|
3425
3414
|
}) : i.push(a);
|
|
3426
3415
|
}
|
|
3427
3416
|
return i;
|
|
3428
3417
|
}
|
|
3429
|
-
function
|
|
3430
|
-
let n =
|
|
3431
|
-
if (!n || n.disabled || t.targetId &&
|
|
3432
|
-
let r = t.targetId ?
|
|
3433
|
-
if (t.position === "inside" && (!r || r.disabled || !
|
|
3434
|
-
let i =
|
|
3435
|
-
return i.removed ?
|
|
3418
|
+
function Mr(e, t) {
|
|
3419
|
+
let n = Or(e, t.itemId);
|
|
3420
|
+
if (!n || n.disabled || t.targetId && kr(n, t.targetId)) return null;
|
|
3421
|
+
let r = t.targetId ? Or(e, t.targetId) : void 0;
|
|
3422
|
+
if (t.position === "inside" && (!r || r.disabled || !Er(r))) return null;
|
|
3423
|
+
let i = Ar(e, t.itemId);
|
|
3424
|
+
return i.removed ? jr(i.items, i.removed, t.targetId, t.position) : null;
|
|
3436
3425
|
}
|
|
3437
|
-
function
|
|
3426
|
+
function Nr(e, t, n) {
|
|
3438
3427
|
return e.map((e) => ({
|
|
3439
3428
|
...e,
|
|
3440
3429
|
label: e.id === t ? n : e.label,
|
|
3441
|
-
children: e.children ?
|
|
3430
|
+
children: e.children ? Nr(e.children, t, n) : void 0
|
|
3442
3431
|
}));
|
|
3443
3432
|
}
|
|
3444
3433
|
//#endregion
|
|
3445
3434
|
//#region src/components/blocks/nav/sidebar/use-ai-sidebar.ts
|
|
3446
|
-
function
|
|
3447
|
-
let [u, d] =
|
|
3448
|
-
e !==
|
|
3449
|
-
let
|
|
3450
|
-
if (!(g !== null &&
|
|
3451
|
-
let e =
|
|
3435
|
+
function Pr({ items: e, defaultItems: t = [], onItemsChange: n, onMove: r, onMoveError: i, onRename: a, activeId: o, defaultActiveId: s = null, onActiveChange: c, defaultExpandedIds: l = [] }) {
|
|
3436
|
+
let [u, d] = U(e ?? t), [f, p] = U(s), [m, h] = U(() => new Set(l)), [g, _] = U(o ?? s), [v, y] = U(null), [b, x] = U(null), [S, C] = U(null), [w, T] = U(null), [E, D] = U(null), O = ne(), [k, A] = U(""), j = H(/* @__PURE__ */ new Map()), M = H(!1), N = u, P = o ?? f, [ee, te] = U(e);
|
|
3437
|
+
e !== ee && (te(e), e && d(e));
|
|
3438
|
+
let F = ie(() => Dr(N, m), [m, N]);
|
|
3439
|
+
if (!(g !== null && F.some((e) => e.item.id === g))) {
|
|
3440
|
+
let e = F[0]?.item.id ?? null;
|
|
3452
3441
|
g !== e && _(e);
|
|
3453
3442
|
}
|
|
3454
|
-
|
|
3443
|
+
V(() => {
|
|
3455
3444
|
if (!S) return;
|
|
3456
3445
|
let e = requestAnimationFrame(() => {
|
|
3457
3446
|
Array.from(document.querySelectorAll("[data-sidebar-resource-menu]")).find((e) => e.dataset.sidebarResourceMenu === S)?.querySelector("button, a[href]")?.focus();
|
|
3458
3447
|
});
|
|
3459
3448
|
return () => cancelAnimationFrame(e);
|
|
3460
3449
|
}, [S]);
|
|
3461
|
-
let
|
|
3450
|
+
let I = z((e) => {
|
|
3462
3451
|
d(e), n?.(e);
|
|
3463
|
-
}, [n]),
|
|
3464
|
-
if (
|
|
3452
|
+
}, [n]), L = z(async (e) => {
|
|
3453
|
+
if (M.current) {
|
|
3465
3454
|
A("Wait for the current move to finish.");
|
|
3466
3455
|
return;
|
|
3467
3456
|
}
|
|
3468
|
-
let t =
|
|
3457
|
+
let t = N, n = Mr(t, e);
|
|
3469
3458
|
if (!n || n === t) return;
|
|
3470
|
-
|
|
3471
|
-
let a =
|
|
3459
|
+
M.current = !0, I(n), x(null), y(null);
|
|
3460
|
+
let a = Or(t, e.itemId), o = e.targetId ? Or(t, e.targetId) : null;
|
|
3472
3461
|
A(o ? `Moved ${a?.label ?? "item"} ${e.position} ${o.label}.` : `Moved ${a?.label ?? "item"} to the top level.`);
|
|
3473
3462
|
try {
|
|
3474
3463
|
await r?.(e);
|
|
3475
3464
|
} catch (n) {
|
|
3476
|
-
|
|
3465
|
+
I(t), A(`Move failed. ${a?.label ?? "Item"} was restored.`), i?.(n, e);
|
|
3477
3466
|
} finally {
|
|
3478
|
-
|
|
3467
|
+
M.current = !1;
|
|
3479
3468
|
}
|
|
3480
3469
|
}, [
|
|
3481
3470
|
r,
|
|
3482
3471
|
i,
|
|
3483
|
-
|
|
3484
|
-
|
|
3485
|
-
]),
|
|
3486
|
-
_(e), requestAnimationFrame(() =>
|
|
3487
|
-
}, []),
|
|
3472
|
+
N,
|
|
3473
|
+
I
|
|
3474
|
+
]), R = z((e) => {
|
|
3475
|
+
_(e), requestAnimationFrame(() => j.current.get(e)?.focus());
|
|
3476
|
+
}, []), B = z((e) => {
|
|
3488
3477
|
o === void 0 && p(e), c?.(e);
|
|
3489
|
-
}, [o, c]),
|
|
3478
|
+
}, [o, c]), re = z((e) => {
|
|
3490
3479
|
h((t) => {
|
|
3491
3480
|
let n = new Set(t);
|
|
3492
3481
|
return n.has(e) ? n.delete(e) : n.add(e), n;
|
|
3493
3482
|
});
|
|
3494
|
-
}, []),
|
|
3495
|
-
let n =
|
|
3483
|
+
}, []), ae = z((e, t) => {
|
|
3484
|
+
let n = F.findIndex(({ item: e }) => e.id === t.item.id), r = F[n - 1], i = F[n + 1], a = e.altKey && e.shiftKey;
|
|
3496
3485
|
if (e.key === "ArrowDown" && !a && i) {
|
|
3497
|
-
e.preventDefault(),
|
|
3486
|
+
e.preventDefault(), R(i.item.id);
|
|
3498
3487
|
return;
|
|
3499
3488
|
}
|
|
3500
3489
|
if (e.key === "ArrowUp" && !a && r) {
|
|
3501
|
-
e.preventDefault(),
|
|
3490
|
+
e.preventDefault(), R(r.item.id);
|
|
3502
3491
|
return;
|
|
3503
3492
|
}
|
|
3504
|
-
if (e.key === "Home" &&
|
|
3505
|
-
e.preventDefault(),
|
|
3493
|
+
if (e.key === "Home" && F[0]) {
|
|
3494
|
+
e.preventDefault(), R(F[0].item.id);
|
|
3506
3495
|
return;
|
|
3507
3496
|
}
|
|
3508
|
-
if (e.key === "End" &&
|
|
3509
|
-
e.preventDefault(),
|
|
3497
|
+
if (e.key === "End" && F.at(-1)) {
|
|
3498
|
+
e.preventDefault(), R(F.at(-1)?.item.id ?? t.item.id);
|
|
3510
3499
|
return;
|
|
3511
3500
|
}
|
|
3512
3501
|
if (t.item.disabled) {
|
|
3513
|
-
e.key === "ArrowLeft" && t.parentId ? (e.preventDefault(),
|
|
3502
|
+
e.key === "ArrowLeft" && t.parentId ? (e.preventDefault(), R(t.parentId)) : (a || [
|
|
3514
3503
|
"ArrowRight",
|
|
3515
3504
|
"Enter",
|
|
3516
3505
|
" ",
|
|
@@ -3520,7 +3509,7 @@ function Fr({ items: e, defaultItems: t = [], onItemsChange: n, onMove: r, onMov
|
|
|
3520
3509
|
return;
|
|
3521
3510
|
}
|
|
3522
3511
|
if (a && e.key === "ArrowUp" && r) {
|
|
3523
|
-
e.preventDefault(),
|
|
3512
|
+
e.preventDefault(), L({
|
|
3524
3513
|
itemId: t.item.id,
|
|
3525
3514
|
targetId: r.item.id,
|
|
3526
3515
|
position: "before"
|
|
@@ -3528,15 +3517,15 @@ function Fr({ items: e, defaultItems: t = [], onItemsChange: n, onMove: r, onMov
|
|
|
3528
3517
|
return;
|
|
3529
3518
|
}
|
|
3530
3519
|
if (a && e.key === "ArrowDown" && i) {
|
|
3531
|
-
e.preventDefault(),
|
|
3520
|
+
e.preventDefault(), L({
|
|
3532
3521
|
itemId: t.item.id,
|
|
3533
3522
|
targetId: i.item.id,
|
|
3534
3523
|
position: "after"
|
|
3535
3524
|
});
|
|
3536
3525
|
return;
|
|
3537
3526
|
}
|
|
3538
|
-
if (a && e.key === "ArrowRight" && r &&
|
|
3539
|
-
e.preventDefault(), h((e) => new Set(e).add(r.item.id)),
|
|
3527
|
+
if (a && e.key === "ArrowRight" && r && Er(r.item)) {
|
|
3528
|
+
e.preventDefault(), h((e) => new Set(e).add(r.item.id)), L({
|
|
3540
3529
|
itemId: t.item.id,
|
|
3541
3530
|
targetId: r.item.id,
|
|
3542
3531
|
position: "inside"
|
|
@@ -3544,28 +3533,28 @@ function Fr({ items: e, defaultItems: t = [], onItemsChange: n, onMove: r, onMov
|
|
|
3544
3533
|
return;
|
|
3545
3534
|
}
|
|
3546
3535
|
if (a && e.key === "ArrowLeft" && t.parentId) {
|
|
3547
|
-
e.preventDefault(),
|
|
3536
|
+
e.preventDefault(), L({
|
|
3548
3537
|
itemId: t.item.id,
|
|
3549
3538
|
targetId: t.parentId,
|
|
3550
3539
|
position: "after"
|
|
3551
3540
|
});
|
|
3552
3541
|
return;
|
|
3553
3542
|
}
|
|
3554
|
-
e.key === "ArrowRight" &&
|
|
3543
|
+
e.key === "ArrowRight" && Er(t.item) ? (e.preventDefault(), m.has(t.item.id) ? i?.parentId === t.item.id && R(i.item.id) : re(t.item.id)) : e.key === "ArrowLeft" ? (e.preventDefault(), m.has(t.item.id) ? re(t.item.id) : t.parentId && R(t.parentId)) : e.key === "Enter" || e.key === " " ? (e.preventDefault(), Er(t.item) ? re(t.item.id) : B(t.item.id)) : e.key === "F2" ? (e.preventDefault(), T(t.item.id)) : (e.key === "ContextMenu" || e.shiftKey && e.key === "F10") && (e.preventDefault(), C(t.item.id));
|
|
3555
3544
|
}, [
|
|
3556
3545
|
m,
|
|
3557
|
-
|
|
3546
|
+
F,
|
|
3547
|
+
R,
|
|
3558
3548
|
L,
|
|
3559
|
-
|
|
3560
|
-
|
|
3561
|
-
|
|
3562
|
-
]), se = R((e) => {
|
|
3549
|
+
B,
|
|
3550
|
+
re
|
|
3551
|
+
]), oe = z((e) => {
|
|
3563
3552
|
!v || e.target !== e.currentTarget || (e.preventDefault(), x({
|
|
3564
3553
|
id: null,
|
|
3565
3554
|
position: "after"
|
|
3566
3555
|
}));
|
|
3567
|
-
}, [v]),
|
|
3568
|
-
e.preventDefault(), e.stopPropagation(), v && b &&
|
|
3556
|
+
}, [v]), se = z((e) => {
|
|
3557
|
+
e.preventDefault(), e.stopPropagation(), v && b && L({
|
|
3569
3558
|
itemId: v,
|
|
3570
3559
|
targetId: b.id,
|
|
3571
3560
|
position: b.position
|
|
@@ -3573,38 +3562,38 @@ function Fr({ items: e, defaultItems: t = [], onItemsChange: n, onMove: r, onMov
|
|
|
3573
3562
|
}, [
|
|
3574
3563
|
v,
|
|
3575
3564
|
b,
|
|
3576
|
-
|
|
3577
|
-
]),
|
|
3565
|
+
L
|
|
3566
|
+
]), ce = z((e, t) => {
|
|
3578
3567
|
y(t), e.dataTransfer.effectAllowed = "move", e.dataTransfer.setData("text/plain", t);
|
|
3579
|
-
}, []),
|
|
3568
|
+
}, []), le = z(() => {
|
|
3580
3569
|
y(null), x(null);
|
|
3581
|
-
}, []),
|
|
3570
|
+
}, []), ue = z((e, t) => {
|
|
3582
3571
|
if (!v || v === t.item.id) return;
|
|
3583
|
-
let n =
|
|
3584
|
-
if (n &&
|
|
3572
|
+
let n = Or(N, v);
|
|
3573
|
+
if (n && kr(n, t.item.id)) return;
|
|
3585
3574
|
e.preventDefault(), e.stopPropagation();
|
|
3586
|
-
let r = e.currentTarget.getBoundingClientRect(), i = (e.clientY - r.top) / r.height, a = !t.item.disabled &&
|
|
3575
|
+
let r = e.currentTarget.getBoundingClientRect(), i = (e.clientY - r.top) / r.height, a = !t.item.disabled && Er(t.item) && i >= .25 && i <= .75 ? "inside" : i < .5 ? "before" : "after";
|
|
3587
3576
|
x({
|
|
3588
3577
|
id: t.item.id,
|
|
3589
3578
|
position: a
|
|
3590
3579
|
});
|
|
3591
|
-
}, [v,
|
|
3580
|
+
}, [v, N]), de = z((e, t) => {
|
|
3592
3581
|
let n = t.trim();
|
|
3593
3582
|
if (T(null), !n || n === e.item.label) return;
|
|
3594
|
-
let r =
|
|
3595
|
-
|
|
3596
|
-
|
|
3583
|
+
let r = N;
|
|
3584
|
+
I(Nr(r, e.item.id, n)), Promise.resolve(a?.(e.item, n)).catch(() => {
|
|
3585
|
+
I(r), A(`Rename failed. ${e.item.label} was restored.`);
|
|
3597
3586
|
});
|
|
3598
3587
|
}, [
|
|
3599
3588
|
a,
|
|
3600
|
-
|
|
3601
|
-
|
|
3602
|
-
]),
|
|
3603
|
-
C(t ? e.item.id : null), t ||
|
|
3604
|
-
}, [
|
|
3589
|
+
N,
|
|
3590
|
+
I
|
|
3591
|
+
]), fe = z((e, t) => {
|
|
3592
|
+
C(t ? e.item.id : null), t || R(e.item.id);
|
|
3593
|
+
}, [R]);
|
|
3605
3594
|
return {
|
|
3606
|
-
flat:
|
|
3607
|
-
selectedId:
|
|
3595
|
+
flat: F,
|
|
3596
|
+
selectedId: P,
|
|
3608
3597
|
expandedIds: m,
|
|
3609
3598
|
focusedId: g,
|
|
3610
3599
|
setFocusedId: _,
|
|
@@ -3612,39 +3601,39 @@ function Fr({ items: e, defaultItems: t = [], onItemsChange: n, onMove: r, onMov
|
|
|
3612
3601
|
dropTarget: b,
|
|
3613
3602
|
hoveredId: E,
|
|
3614
3603
|
hoverLayoutId: O,
|
|
3615
|
-
handleRowHover:
|
|
3604
|
+
handleRowHover: z((e, t) => {
|
|
3616
3605
|
D((n) => t ? e : n === e ? null : n);
|
|
3617
3606
|
}, []),
|
|
3618
|
-
clearHover:
|
|
3607
|
+
clearHover: z(() => D(null), []),
|
|
3619
3608
|
menuOpenId: S,
|
|
3620
3609
|
renamingId: w,
|
|
3621
3610
|
setRenamingId: T,
|
|
3622
3611
|
announcement: k,
|
|
3623
|
-
select:
|
|
3624
|
-
toggle:
|
|
3625
|
-
handleKeyDown:
|
|
3626
|
-
handleRootDragOver:
|
|
3627
|
-
handleDrop:
|
|
3628
|
-
handleRowDragStart:
|
|
3629
|
-
handleRowDragEnd:
|
|
3630
|
-
handleRowDragOver:
|
|
3631
|
-
commitRename:
|
|
3632
|
-
handleMenuOpenChange:
|
|
3633
|
-
setRowRef:
|
|
3634
|
-
t ?
|
|
3612
|
+
select: B,
|
|
3613
|
+
toggle: re,
|
|
3614
|
+
handleKeyDown: ae,
|
|
3615
|
+
handleRootDragOver: oe,
|
|
3616
|
+
handleDrop: se,
|
|
3617
|
+
handleRowDragStart: ce,
|
|
3618
|
+
handleRowDragEnd: le,
|
|
3619
|
+
handleRowDragOver: ue,
|
|
3620
|
+
commitRename: de,
|
|
3621
|
+
handleMenuOpenChange: fe,
|
|
3622
|
+
setRowRef: z((e, t) => {
|
|
3623
|
+
t ? j.current.set(e, t) : j.current.delete(e);
|
|
3635
3624
|
}, [])
|
|
3636
3625
|
};
|
|
3637
3626
|
}
|
|
3638
3627
|
//#endregion
|
|
3639
3628
|
//#region src/components/blocks/nav/sidebar/sidebar-icon.tsx
|
|
3640
|
-
function
|
|
3629
|
+
function Fr(e, t) {
|
|
3641
3630
|
return /* @__PURE__ */ i(e.kind === "folder" || e.kind === "project" ? t ? b : y : e.kind === "bookmark" ? u : _, { className: "size-4" });
|
|
3642
3631
|
}
|
|
3643
3632
|
//#endregion
|
|
3644
3633
|
//#region src/components/blocks/nav/sidebar/marquee-label.tsx
|
|
3645
|
-
function
|
|
3646
|
-
let n =
|
|
3647
|
-
|
|
3634
|
+
function Ir({ active: e, children: t }) {
|
|
3635
|
+
let n = ye() ?? !1, r = H(null), o = H(null), [s, c] = U(0);
|
|
3636
|
+
V(() => {
|
|
3648
3637
|
let e = () => {
|
|
3649
3638
|
let e = r.current, t = o.current;
|
|
3650
3639
|
!e || !t || c(t.scrollWidth > e.clientWidth ? t.scrollWidth + 24 : 0);
|
|
@@ -3657,7 +3646,7 @@ function Lr({ active: e, children: t }) {
|
|
|
3657
3646
|
return /* @__PURE__ */ i("span", {
|
|
3658
3647
|
ref: r,
|
|
3659
3648
|
className: "relative block min-w-0 flex-1 overflow-hidden",
|
|
3660
|
-
children: /* @__PURE__ */ a(
|
|
3649
|
+
children: /* @__PURE__ */ a(K.span, {
|
|
3661
3650
|
className: "flex w-max items-center gap-6 whitespace-nowrap",
|
|
3662
3651
|
animate: { x: l ? [0, -s] : 0 },
|
|
3663
3652
|
transition: l ? {
|
|
@@ -3665,7 +3654,7 @@ function Lr({ active: e, children: t }) {
|
|
|
3665
3654
|
ease: "linear",
|
|
3666
3655
|
repeat: Infinity,
|
|
3667
3656
|
repeatDelay: 2
|
|
3668
|
-
} :
|
|
3657
|
+
} : Tr,
|
|
3669
3658
|
children: [/* @__PURE__ */ i("span", {
|
|
3670
3659
|
ref: o,
|
|
3671
3660
|
children: t
|
|
@@ -3678,11 +3667,11 @@ function Lr({ active: e, children: t }) {
|
|
|
3678
3667
|
}
|
|
3679
3668
|
//#endregion
|
|
3680
3669
|
//#region src/components/motion/popover-position.ts
|
|
3681
|
-
function
|
|
3670
|
+
function Lr(e, t) {
|
|
3682
3671
|
return e?.trigger.left === t.trigger.left && e.trigger.top === t.trigger.top && e.trigger.width === t.trigger.width && e.trigger.height === t.trigger.height && e.content.width === t.content.width && e.content.height === t.content.height;
|
|
3683
3672
|
}
|
|
3684
|
-
function
|
|
3685
|
-
let [r, i] =
|
|
3673
|
+
function Rr(e, t, n) {
|
|
3674
|
+
let [r, i] = U(null), a = z(() => {
|
|
3686
3675
|
let n = e.current, r = t.current;
|
|
3687
3676
|
if (!n || !r) return;
|
|
3688
3677
|
let a = n.getBoundingClientRect(), o = {
|
|
@@ -3697,9 +3686,9 @@ function zr(e, t, n) {
|
|
|
3697
3686
|
height: r.offsetHeight
|
|
3698
3687
|
}
|
|
3699
3688
|
};
|
|
3700
|
-
i((e) =>
|
|
3689
|
+
i((e) => Lr(e, o) ? e : o);
|
|
3701
3690
|
}, [t, e]);
|
|
3702
|
-
return
|
|
3691
|
+
return re(() => {
|
|
3703
3692
|
if (a(), !n) return;
|
|
3704
3693
|
let r = e.current, i = t.current, o = new ResizeObserver(a);
|
|
3705
3694
|
return r && o.observe(r), i && o.observe(i), window.addEventListener("scroll", a, !0), window.addEventListener("resize", a), () => {
|
|
@@ -3714,17 +3703,17 @@ function zr(e, t, n) {
|
|
|
3714
3703
|
}
|
|
3715
3704
|
//#endregion
|
|
3716
3705
|
//#region src/components/motion/popover-morph.tsx
|
|
3717
|
-
var
|
|
3718
|
-
function
|
|
3719
|
-
let t =
|
|
3706
|
+
var zr = F(null);
|
|
3707
|
+
function Br(e) {
|
|
3708
|
+
let t = B(zr);
|
|
3720
3709
|
if (!t) throw Error(`${e} must be used within <MorphPopover>`);
|
|
3721
3710
|
return t;
|
|
3722
3711
|
}
|
|
3723
|
-
function
|
|
3724
|
-
let o =
|
|
3712
|
+
function Vr({ children: e, open: t, defaultOpen: n = !1, onOpenChange: r, className: a }) {
|
|
3713
|
+
let o = ne(), s = H(null), c = H(null), l = H(null), [u, d] = U(n), f = t !== void 0, p = f ? t : u, m = z((e) => {
|
|
3725
3714
|
f || d(e), r?.(e);
|
|
3726
|
-
}, [f, r]), h =
|
|
3727
|
-
|
|
3715
|
+
}, [f, r]), h = z(() => m(!p), [m, p]);
|
|
3716
|
+
V(() => {
|
|
3728
3717
|
if (!p) return;
|
|
3729
3718
|
let e = (e) => e.key === "Escape" && m(!1), t = (e) => {
|
|
3730
3719
|
let t = e.target;
|
|
@@ -3734,7 +3723,7 @@ function Hr({ children: e, open: t, defaultOpen: n = !1, onOpenChange: r, classN
|
|
|
3734
3723
|
window.removeEventListener("keydown", e), window.removeEventListener("pointerdown", t);
|
|
3735
3724
|
};
|
|
3736
3725
|
}, [p, m]);
|
|
3737
|
-
let g =
|
|
3726
|
+
let g = ie(() => ({
|
|
3738
3727
|
open: p,
|
|
3739
3728
|
setOpen: m,
|
|
3740
3729
|
toggle: h,
|
|
@@ -3751,27 +3740,27 @@ function Hr({ children: e, open: t, defaultOpen: n = !1, onOpenChange: r, classN
|
|
|
3751
3740
|
h,
|
|
3752
3741
|
o
|
|
3753
3742
|
]);
|
|
3754
|
-
return /* @__PURE__ */ i(
|
|
3743
|
+
return /* @__PURE__ */ i(zr.Provider, {
|
|
3755
3744
|
value: g,
|
|
3756
3745
|
children: /* @__PURE__ */ i("div", {
|
|
3757
3746
|
ref: s,
|
|
3758
|
-
className:
|
|
3747
|
+
className: q("relative inline-flex", a),
|
|
3759
3748
|
children: e
|
|
3760
3749
|
})
|
|
3761
3750
|
});
|
|
3762
3751
|
}
|
|
3763
|
-
function
|
|
3752
|
+
function Hr(...e) {
|
|
3764
3753
|
return (t) => {
|
|
3765
3754
|
for (let n of e) typeof n == "function" ? n(t) : n && typeof n == "object" && (n.current = t);
|
|
3766
3755
|
};
|
|
3767
3756
|
}
|
|
3768
|
-
function
|
|
3769
|
-
let t =
|
|
3770
|
-
if (!
|
|
3757
|
+
function Ur({ children: e }) {
|
|
3758
|
+
let t = Br("MorphPopoverTrigger");
|
|
3759
|
+
if (!R(e)) return e;
|
|
3771
3760
|
let n = e, r = n.props.onClick, i = n.props.ref;
|
|
3772
|
-
return
|
|
3761
|
+
return te(n, {
|
|
3773
3762
|
id: t.triggerId,
|
|
3774
|
-
ref:
|
|
3763
|
+
ref: Hr(i, (e) => {
|
|
3775
3764
|
t.triggerRef.current = e;
|
|
3776
3765
|
}),
|
|
3777
3766
|
onClick: (e) => {
|
|
@@ -3782,17 +3771,17 @@ function Wr({ children: e }) {
|
|
|
3782
3771
|
"aria-controls": t.open ? t.contentId : void 0
|
|
3783
3772
|
});
|
|
3784
3773
|
}
|
|
3785
|
-
var
|
|
3786
|
-
function
|
|
3774
|
+
var Wr = (e, t) => `${e === "bottom" ? "top" : "bottom"} ${t === "end" ? "right" : "left"}`;
|
|
3775
|
+
function Gr(e, t, n) {
|
|
3787
3776
|
return `inset(${e === "bottom" ? "0%" : "92%"} ${t === "end" ? "0%" : "92%"} ${e === "bottom" ? "92%" : "0%"} ${t === "end" ? "92%" : "0%"} round ${n}px)`;
|
|
3788
3777
|
}
|
|
3789
|
-
var
|
|
3778
|
+
var Kr = (e) => `inset(0% 0% 0% 0% round ${e}px)`, qr = {
|
|
3790
3779
|
duration: .32,
|
|
3791
|
-
ease:
|
|
3780
|
+
ease: En
|
|
3792
3781
|
};
|
|
3793
|
-
function
|
|
3794
|
-
let s =
|
|
3795
|
-
|
|
3782
|
+
function Jr({ children: e, side: t = "bottom", align: n = "end", sideOffset: r = 8, radius: a = 16, className: o }) {
|
|
3783
|
+
let s = Br("MorphPopoverContent"), { contentId: c, setContentRef: l, triggerId: u } = s, d = ye() ?? !1, [f, p] = U(!1), m = Rr(s.triggerRef, s.contentRef, f && s.open);
|
|
3784
|
+
V(() => p(!0), []);
|
|
3796
3785
|
let h = m ? n === "end" ? m.trigger.left + m.trigger.width - m.content.width : m.trigger.left : 0, g = m ? t === "bottom" ? m.trigger.top + m.trigger.height + r : m.trigger.top - m.content.height - r : 0, _ = d ? void 0 : {
|
|
3797
3786
|
hidden: {
|
|
3798
3787
|
opacity: 0,
|
|
@@ -3806,15 +3795,15 @@ function Yr({ children: e, side: t = "bottom", align: n = "end", sideOffset: r =
|
|
|
3806
3795
|
}
|
|
3807
3796
|
}, v = d ? void 0 : {
|
|
3808
3797
|
hidden: {
|
|
3809
|
-
clipPath:
|
|
3810
|
-
transition:
|
|
3798
|
+
clipPath: Gr(t, n, a),
|
|
3799
|
+
transition: qr
|
|
3811
3800
|
},
|
|
3812
3801
|
show: {
|
|
3813
|
-
clipPath:
|
|
3814
|
-
transition:
|
|
3802
|
+
clipPath: Kr(a),
|
|
3803
|
+
transition: qr
|
|
3815
3804
|
}
|
|
3816
3805
|
};
|
|
3817
|
-
return f ?
|
|
3806
|
+
return f ? we(/* @__PURE__ */ i(G, { children: s.open ? /* @__PURE__ */ i(K.div, {
|
|
3818
3807
|
"data-morph-popover-portal": "",
|
|
3819
3808
|
variants: _,
|
|
3820
3809
|
initial: d ? { opacity: 0 } : "hidden",
|
|
@@ -3825,24 +3814,24 @@ function Yr({ children: e, side: t = "bottom", align: n = "end", sideOffset: r =
|
|
|
3825
3814
|
left: h,
|
|
3826
3815
|
top: g,
|
|
3827
3816
|
visibility: m ? "visible" : "hidden",
|
|
3828
|
-
transformOrigin:
|
|
3817
|
+
transformOrigin: Wr(t, n)
|
|
3829
3818
|
},
|
|
3830
3819
|
className: "fixed z-[9999] [filter:drop-shadow(0_10px_18px_rgba(0,0,0,0.14))]",
|
|
3831
|
-
children: /* @__PURE__ */ i(
|
|
3820
|
+
children: /* @__PURE__ */ i(K.div, {
|
|
3832
3821
|
ref: l,
|
|
3833
3822
|
id: c,
|
|
3834
3823
|
role: "dialog",
|
|
3835
3824
|
"aria-labelledby": u,
|
|
3836
3825
|
variants: v,
|
|
3837
3826
|
style: { borderRadius: a },
|
|
3838
|
-
className:
|
|
3827
|
+
className: q("overflow-hidden border border-border bg-background", o),
|
|
3839
3828
|
children: e
|
|
3840
3829
|
})
|
|
3841
3830
|
}) : null }), document.body) : null;
|
|
3842
3831
|
}
|
|
3843
3832
|
//#endregion
|
|
3844
3833
|
//#region src/components/blocks/nav/sidebar/sidebar-row.tsx
|
|
3845
|
-
var
|
|
3834
|
+
var Yr = {
|
|
3846
3835
|
initial: {
|
|
3847
3836
|
opacity: 0,
|
|
3848
3837
|
filter: "blur(6px)"
|
|
@@ -3855,19 +3844,19 @@ var Xr = {
|
|
|
3855
3844
|
opacity: 0,
|
|
3856
3845
|
filter: "blur(6px)"
|
|
3857
3846
|
}
|
|
3858
|
-
},
|
|
3847
|
+
}, Xr = {
|
|
3859
3848
|
initial: { opacity: 0 },
|
|
3860
3849
|
animate: { opacity: 1 },
|
|
3861
3850
|
exit: (e) => e ? {} : { opacity: 0 }
|
|
3862
3851
|
};
|
|
3863
|
-
function
|
|
3864
|
-
let
|
|
3865
|
-
|
|
3866
|
-
l && (
|
|
3867
|
-
|
|
3852
|
+
function Zr({ row: e, active: t, expanded: n, focused: r, draggingId: o, dropTarget: s, menuOpen: c, renaming: l, onDragEnd: u, onDragOver: d, onDragStart: p, onDrop: m, onFocus: h, onKeyDown: g, onMenuOpenChange: _, onRenameCancel: v, onRenameCommit: y, onRenameStart: b, onSelect: x, onToggle: S, hoverActive: C = !1, hoverPill: w = !1, hoverLayoutId: E, onHoverChange: O, renderIcon: k, renderMenu: A, renderActionsTrigger: j, setRef: M }) {
|
|
3853
|
+
let N = ye() ?? !1, [P, ee] = U(!1), F = H(null), I = H(!1), L = H(!1), [R, z] = U(e.item.label), B = Er(e.item), ne = o === e.item.id, re = s?.id === e.item.id ? s.position : null;
|
|
3854
|
+
V(() => {
|
|
3855
|
+
l && (I.current = !1, requestAnimationFrame(() => {
|
|
3856
|
+
F.current?.focus(), F.current?.select();
|
|
3868
3857
|
}));
|
|
3869
3858
|
}, [l, e.item.label]);
|
|
3870
|
-
let
|
|
3859
|
+
let ie = A?.(e.item, {
|
|
3871
3860
|
close: () => _(!1),
|
|
3872
3861
|
rename: () => {
|
|
3873
3862
|
_(!1), b();
|
|
@@ -3883,60 +3872,60 @@ function Qr({ row: e, active: t, expanded: n, focused: r, draggingId: o, dropTar
|
|
|
3883
3872
|
className: "size-3.5"
|
|
3884
3873
|
}), "Rename"]
|
|
3885
3874
|
});
|
|
3886
|
-
return /* @__PURE__ */ a(
|
|
3887
|
-
ref:
|
|
3875
|
+
return /* @__PURE__ */ a(K.div, {
|
|
3876
|
+
ref: M,
|
|
3888
3877
|
layout: "position",
|
|
3889
|
-
transition:
|
|
3878
|
+
transition: N ? { duration: 0 } : Nn,
|
|
3890
3879
|
role: "treeitem",
|
|
3891
3880
|
"aria-level": e.depth + 1,
|
|
3892
|
-
"aria-selected":
|
|
3893
|
-
"aria-expanded":
|
|
3881
|
+
"aria-selected": B ? void 0 : t,
|
|
3882
|
+
"aria-expanded": B ? n : void 0,
|
|
3894
3883
|
"aria-disabled": e.item.disabled || void 0,
|
|
3895
3884
|
tabIndex: r ? 0 : -1,
|
|
3896
3885
|
draggable: !e.item.disabled && !l,
|
|
3897
3886
|
"data-menu-open": c || void 0,
|
|
3898
|
-
"data-drop":
|
|
3899
|
-
"data-dragging":
|
|
3887
|
+
"data-drop": re ?? void 0,
|
|
3888
|
+
"data-dragging": ne || void 0,
|
|
3900
3889
|
onFocus: h,
|
|
3901
3890
|
onKeyDown: g,
|
|
3902
3891
|
onClick: (t) => {
|
|
3903
|
-
t.defaultPrevented ||
|
|
3892
|
+
t.defaultPrevented || L.current || l || e.item.disabled || (B ? S() : x());
|
|
3904
3893
|
},
|
|
3905
3894
|
onDoubleClick: (t) => {
|
|
3906
|
-
|
|
3895
|
+
B || e.item.disabled || (t.preventDefault(), b());
|
|
3907
3896
|
},
|
|
3908
3897
|
onMouseEnter: () => {
|
|
3909
|
-
|
|
3898
|
+
ee(!0), O?.(!0);
|
|
3910
3899
|
},
|
|
3911
3900
|
onMouseLeave: () => {
|
|
3912
|
-
|
|
3901
|
+
ee(!1), O?.(!1);
|
|
3913
3902
|
},
|
|
3914
3903
|
onDragStartCapture: (t) => {
|
|
3915
|
-
|
|
3904
|
+
L.current = !0, p(t, e.item.id);
|
|
3916
3905
|
},
|
|
3917
3906
|
onDragEndCapture: () => {
|
|
3918
3907
|
u(), requestAnimationFrame(() => {
|
|
3919
|
-
|
|
3908
|
+
L.current = !1;
|
|
3920
3909
|
});
|
|
3921
3910
|
},
|
|
3922
3911
|
onDragOver: (t) => d(t, e),
|
|
3923
3912
|
onDrop: m,
|
|
3924
|
-
className:
|
|
3913
|
+
className: q("group/resource relative flex min-h-9 min-w-0 cursor-pointer items-center gap-2.5 rounded-md pr-3 text-sm outline-none", "text-muted-foreground transition-[color,background-color,scale] duration-150 ease-smooth-out hover:text-foreground motion-reduce:transition-none", !e.item.disabled && !l && "active:scale-97 motion-reduce:active:scale-100", E === void 0 && "hover:bg-muted", "focus-visible:bg-muted/70 focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset", "data-[menu-open=true]:bg-muted data-[menu-open=true]:text-foreground", "data-[dragging=true]:opacity-40", "data-[drop=inside]:bg-primary/10 data-[drop=inside]:ring-1 data-[drop=inside]:ring-primary/45", "data-[drop=before]:before:absolute data-[drop=before]:before:-top-0.5 data-[drop=before]:before:right-2 data-[drop=before]:before:left-2 data-[drop=before]:before:h-0.5 data-[drop=before]:before:rounded-full data-[drop=before]:before:bg-primary", "data-[drop=after]:after:absolute data-[drop=after]:after:right-2 data-[drop=after]:after:-bottom-0.5 data-[drop=after]:after:left-2 data-[drop=after]:after:h-0.5 data-[drop=after]:after:rounded-full data-[drop=after]:after:bg-primary", !B && t && "bg-primary/10 text-primary dark:bg-primary/25 dark:text-primary-foreground", e.item.disabled && "cursor-not-allowed opacity-45"),
|
|
3925
3914
|
style: { paddingLeft: `${12 + e.depth * 16}px` },
|
|
3926
3915
|
children: [
|
|
3927
|
-
E ? /* @__PURE__ */ i(
|
|
3916
|
+
E ? /* @__PURE__ */ i(G, {
|
|
3928
3917
|
custom: C,
|
|
3929
|
-
children: C ? /* @__PURE__ */ i(
|
|
3918
|
+
children: C ? /* @__PURE__ */ i(K.span, {
|
|
3930
3919
|
"aria-hidden": "true",
|
|
3931
|
-
variants:
|
|
3920
|
+
variants: N ? Xr : Yr,
|
|
3932
3921
|
initial: "initial",
|
|
3933
3922
|
animate: "animate",
|
|
3934
3923
|
exit: "exit",
|
|
3935
3924
|
custom: C,
|
|
3936
3925
|
className: "pointer-events-none absolute inset-0",
|
|
3937
|
-
children: w ? /* @__PURE__ */ i(
|
|
3926
|
+
children: w ? /* @__PURE__ */ i(K.span, {
|
|
3938
3927
|
layoutId: E,
|
|
3939
|
-
transition:
|
|
3928
|
+
transition: N ? { duration: 0 } : Nn,
|
|
3940
3929
|
className: "block h-full w-full rounded-md bg-foreground/8 dark:bg-muted/50"
|
|
3941
3930
|
}) : null
|
|
3942
3931
|
}) : null
|
|
@@ -3944,42 +3933,42 @@ function Qr({ row: e, active: t, expanded: n, focused: r, draggingId: o, dropTar
|
|
|
3944
3933
|
/* @__PURE__ */ i("span", {
|
|
3945
3934
|
"aria-hidden": "true",
|
|
3946
3935
|
className: "relative grid size-5 shrink-0 place-items-center",
|
|
3947
|
-
children: k?.(e.item) ??
|
|
3936
|
+
children: k?.(e.item) ?? Fr(e.item, n)
|
|
3948
3937
|
}),
|
|
3949
3938
|
l ? /* @__PURE__ */ i("input", {
|
|
3950
|
-
ref:
|
|
3951
|
-
value:
|
|
3939
|
+
ref: F,
|
|
3940
|
+
value: R,
|
|
3952
3941
|
"aria-label": `Rename ${e.item.label}`,
|
|
3953
|
-
onChange: (e) =>
|
|
3942
|
+
onChange: (e) => z(e.target.value),
|
|
3954
3943
|
draggable: !1,
|
|
3955
3944
|
onClick: (e) => e.stopPropagation(),
|
|
3956
3945
|
onDoubleClick: (e) => e.stopPropagation(),
|
|
3957
3946
|
onBlur: () => {
|
|
3958
|
-
|
|
3947
|
+
I.current || y(R);
|
|
3959
3948
|
},
|
|
3960
3949
|
onKeyDown: (e) => {
|
|
3961
|
-
e.stopPropagation(), e.key === "Enter" && (
|
|
3950
|
+
e.stopPropagation(), e.key === "Enter" && (I.current = !0, y(R)), e.key === "Escape" && (I.current = !0, v());
|
|
3962
3951
|
},
|
|
3963
3952
|
className: "relative h-7 min-w-0 flex-1 text-sm text-foreground outline-none focus-visible:ring-0 focus-visible:ring-ring"
|
|
3964
|
-
}) : /* @__PURE__ */ i(
|
|
3965
|
-
active:
|
|
3953
|
+
}) : /* @__PURE__ */ i(Ir, {
|
|
3954
|
+
active: P || c,
|
|
3966
3955
|
children: e.item.label
|
|
3967
3956
|
}),
|
|
3968
|
-
!l && !e.item.disabled ? /* @__PURE__ */ a(
|
|
3957
|
+
!l && !e.item.disabled ? /* @__PURE__ */ a(Vr, {
|
|
3969
3958
|
open: c,
|
|
3970
3959
|
onOpenChange: _,
|
|
3971
|
-
children: [/* @__PURE__ */ i(
|
|
3972
|
-
let t =
|
|
3960
|
+
children: [/* @__PURE__ */ i(Ur, { children: (() => {
|
|
3961
|
+
let t = j?.(e.item);
|
|
3973
3962
|
if (t) {
|
|
3974
3963
|
let e = t.props.onClick;
|
|
3975
|
-
return
|
|
3964
|
+
return te(t, {
|
|
3976
3965
|
draggable: !1,
|
|
3977
3966
|
onClick: (t) => {
|
|
3978
3967
|
t.stopPropagation(), e?.(t);
|
|
3979
3968
|
}
|
|
3980
3969
|
});
|
|
3981
3970
|
}
|
|
3982
|
-
return /* @__PURE__ */ i(
|
|
3971
|
+
return /* @__PURE__ */ i(J, {
|
|
3983
3972
|
draggable: !1,
|
|
3984
3973
|
tabIndex: -1,
|
|
3985
3974
|
variant: "link",
|
|
@@ -3991,7 +3980,7 @@ function Qr({ row: e, active: t, expanded: n, focused: r, draggingId: o, dropTar
|
|
|
3991
3980
|
className: "size-4"
|
|
3992
3981
|
})
|
|
3993
3982
|
});
|
|
3994
|
-
})() }), /* @__PURE__ */ i(
|
|
3983
|
+
})() }), /* @__PURE__ */ i(Jr, {
|
|
3995
3984
|
side: "bottom",
|
|
3996
3985
|
align: "end",
|
|
3997
3986
|
sideOffset: 8,
|
|
@@ -3999,21 +3988,21 @@ function Qr({ row: e, active: t, expanded: n, focused: r, draggingId: o, dropTar
|
|
|
3999
3988
|
className: "w-40 p-1.5",
|
|
4000
3989
|
children: /* @__PURE__ */ i("div", {
|
|
4001
3990
|
"data-sidebar-resource-menu": e.item.id,
|
|
4002
|
-
children:
|
|
3991
|
+
children: ie
|
|
4003
3992
|
})
|
|
4004
3993
|
})]
|
|
4005
3994
|
}) : null,
|
|
4006
|
-
e.depth === 0 &&
|
|
3995
|
+
e.depth === 0 && B && (e.item.children?.length ?? 0) > 0 ? /* @__PURE__ */ i(f, {
|
|
4007
3996
|
"aria-hidden": "true",
|
|
4008
|
-
className:
|
|
3997
|
+
className: q("relative size-3.5 shrink-0 text-muted-foreground transition-transform duration-200 ease-smooth-out motion-reduce:transition-none", n && "rotate-90")
|
|
4009
3998
|
}) : null
|
|
4010
3999
|
]
|
|
4011
4000
|
});
|
|
4012
4001
|
}
|
|
4013
4002
|
//#endregion
|
|
4014
4003
|
//#region src/components/blocks/nav/sidebar/ai-sidebar.tsx
|
|
4015
|
-
function
|
|
4016
|
-
let { flat: l, selectedId: u, expandedIds: d, focusedId: f, setFocusedId: p, draggingId: m, dropTarget: h, hoveredId: g, hoverLayoutId: _, handleRowHover: v, clearHover: y, menuOpenId: b, renamingId: x, setRenamingId: S, announcement: C, select: w, toggle: T, handleKeyDown: E, handleRootDragOver: D, handleDrop: O, handleRowDragStart: k, handleRowDragEnd: A, handleRowDragOver:
|
|
4004
|
+
function Qr({ renderIcon: e, renderMenu: t, renderActionsTrigger: n, ariaLabel: o = "Resources", className: s, ...c }) {
|
|
4005
|
+
let { flat: l, selectedId: u, expandedIds: d, focusedId: f, setFocusedId: p, draggingId: m, dropTarget: h, hoveredId: g, hoverLayoutId: _, handleRowHover: v, clearHover: y, menuOpenId: b, renamingId: x, setRenamingId: S, announcement: C, select: w, toggle: T, handleKeyDown: E, handleRootDragOver: D, handleDrop: O, handleRowDragStart: k, handleRowDragEnd: A, handleRowDragOver: j, commitRename: M, handleMenuOpenChange: N, setRowRef: P } = Pr(c);
|
|
4017
4006
|
return /* @__PURE__ */ a(r, { children: [/* @__PURE__ */ a("div", {
|
|
4018
4007
|
role: "tree",
|
|
4019
4008
|
"aria-label": o,
|
|
@@ -4021,10 +4010,10 @@ function $r({ renderIcon: e, renderMenu: t, renderActionsTrigger: n, ariaLabel:
|
|
|
4021
4010
|
onDragOver: D,
|
|
4022
4011
|
onDrop: O,
|
|
4023
4012
|
onMouseLeave: y,
|
|
4024
|
-
className:
|
|
4025
|
-
children: [/* @__PURE__ */ i(
|
|
4013
|
+
className: q("relative min-w-0 flex-col gap-0.5 [overflow-anchor:none] group-data-[state=collapsed]/sidebar:hidden", m && "pb-9 select-none", s),
|
|
4014
|
+
children: [/* @__PURE__ */ i(G, {
|
|
4026
4015
|
initial: !1,
|
|
4027
|
-
children: l.map((r) => /* @__PURE__ */ i(
|
|
4016
|
+
children: l.map((r) => /* @__PURE__ */ i(Zr, {
|
|
4028
4017
|
row: r,
|
|
4029
4018
|
active: u === r.item.id,
|
|
4030
4019
|
expanded: d.has(r.item.id),
|
|
@@ -4043,16 +4032,16 @@ function $r({ renderIcon: e, renderMenu: t, renderActionsTrigger: n, ariaLabel:
|
|
|
4043
4032
|
onKeyDown: (e) => E(e, r),
|
|
4044
4033
|
onRenameStart: () => S(r.item.id),
|
|
4045
4034
|
onRenameCancel: () => S(null),
|
|
4046
|
-
onRenameCommit: (e) =>
|
|
4047
|
-
onMenuOpenChange: (e) =>
|
|
4035
|
+
onRenameCommit: (e) => M(r, e),
|
|
4036
|
+
onMenuOpenChange: (e) => N(r, e),
|
|
4048
4037
|
onDragStart: k,
|
|
4049
4038
|
onDragEnd: A,
|
|
4050
|
-
onDragOver:
|
|
4039
|
+
onDragOver: j,
|
|
4051
4040
|
onDrop: O,
|
|
4052
4041
|
renderIcon: e,
|
|
4053
4042
|
renderMenu: t,
|
|
4054
4043
|
renderActionsTrigger: n,
|
|
4055
|
-
setRef: (e) =>
|
|
4044
|
+
setRef: (e) => P(r.item.id, e)
|
|
4056
4045
|
}, r.item.id))
|
|
4057
4046
|
}), m && /* @__PURE__ */ i("div", {
|
|
4058
4047
|
"aria-hidden": "true",
|
|
@@ -4068,24 +4057,24 @@ function $r({ renderIcon: e, renderMenu: t, renderActionsTrigger: n, ariaLabel:
|
|
|
4068
4057
|
}
|
|
4069
4058
|
//#endregion
|
|
4070
4059
|
//#region src/components/blocks/nav/sidebar/index.ts
|
|
4071
|
-
var
|
|
4072
|
-
Wrapper:
|
|
4073
|
-
MarqueeLabel:
|
|
4074
|
-
Row:
|
|
4075
|
-
Icon:
|
|
4076
|
-
},
|
|
4060
|
+
var $r = {
|
|
4061
|
+
Wrapper: Qr,
|
|
4062
|
+
MarqueeLabel: Ir,
|
|
4063
|
+
Row: Zr,
|
|
4064
|
+
Icon: Fr
|
|
4065
|
+
}, ei = 48;
|
|
4077
4066
|
//#endregion
|
|
4078
4067
|
//#region src/components/blocks/shell/shell-layout.tsx
|
|
4079
|
-
function
|
|
4080
|
-
let
|
|
4081
|
-
...n?.left && { left: n.left.defaultOpen ??
|
|
4082
|
-
...n?.right && { right: n.right.defaultOpen ??
|
|
4083
|
-
...
|
|
4068
|
+
function ti({ children: e, variant: t = "desktop", panels: n, className: r, header: o, defaultOpen: s, ...c }) {
|
|
4069
|
+
let l = {
|
|
4070
|
+
...n?.left && { left: n.left.defaultOpen ?? !0 },
|
|
4071
|
+
...n?.right && { right: n.right.defaultOpen ?? !1 },
|
|
4072
|
+
...s
|
|
4084
4073
|
};
|
|
4085
4074
|
return /* @__PURE__ */ a(ir, {
|
|
4086
|
-
...
|
|
4087
|
-
defaultOpen:
|
|
4088
|
-
className:
|
|
4075
|
+
...c,
|
|
4076
|
+
defaultOpen: l,
|
|
4077
|
+
className: q("relative block-full pr-2", r, "bg-linear-to-tr/increasing from-neutral-200 via-neutral-100 to-stone-200 dark:from-neutral-900 dark:via-neutral-950 dark:to-stone-950"),
|
|
4089
4078
|
style: { paddingTop: t === "desktop" ? 48 : 0 },
|
|
4090
4079
|
children: [
|
|
4091
4080
|
/* @__PURE__ */ i(or, {
|
|
@@ -4095,39 +4084,45 @@ function ni({ children: e, variant: t = "desktop", panels: n, className: r, defa
|
|
|
4095
4084
|
variant: "inset",
|
|
4096
4085
|
children: n?.left?.component
|
|
4097
4086
|
}),
|
|
4098
|
-
/* @__PURE__ */ a(
|
|
4099
|
-
className:
|
|
4087
|
+
/* @__PURE__ */ a(lr, {
|
|
4088
|
+
className: "min-w-24",
|
|
4100
4089
|
children: [/* @__PURE__ */ a("header", {
|
|
4101
|
-
className: "flex h-
|
|
4102
|
-
children: [
|
|
4103
|
-
|
|
4104
|
-
|
|
4105
|
-
|
|
4106
|
-
|
|
4107
|
-
animation: "press"
|
|
4108
|
-
}) })
|
|
4109
|
-
}), /* @__PURE__ */ i("div", {
|
|
4110
|
-
className: "flex shrink-0 items-center gap-3",
|
|
4111
|
-
children: /* @__PURE__ */ i(sr, {
|
|
4112
|
-
"aria-label": "Toggle panel",
|
|
4113
|
-
side: "right",
|
|
4114
|
-
children: n?.right?.trigger ?? /* @__PURE__ */ i(Ee, {
|
|
4115
|
-
name: "PanelRight",
|
|
4090
|
+
className: "flex h-12 items-center justify-between gap-2 px-2",
|
|
4091
|
+
children: [
|
|
4092
|
+
/* @__PURE__ */ i("div", {
|
|
4093
|
+
className: "flex min-w-0 items-center gap-2",
|
|
4094
|
+
children: /* @__PURE__ */ i(sr, { children: n?.left?.trigger ?? /* @__PURE__ */ i(Te, {
|
|
4095
|
+
name: "PanelLeft",
|
|
4116
4096
|
size: 24,
|
|
4117
4097
|
animation: "press"
|
|
4098
|
+
}) })
|
|
4099
|
+
}),
|
|
4100
|
+
o && /* @__PURE__ */ i("div", {
|
|
4101
|
+
className: "flex flex-1 items-center",
|
|
4102
|
+
children: o
|
|
4103
|
+
}),
|
|
4104
|
+
/* @__PURE__ */ i("div", {
|
|
4105
|
+
className: "flex shrink-0 items-center gap-2",
|
|
4106
|
+
children: /* @__PURE__ */ i(sr, {
|
|
4107
|
+
"aria-label": "Toggle panel",
|
|
4108
|
+
side: "right",
|
|
4109
|
+
children: n?.right?.trigger ?? /* @__PURE__ */ i(Te, {
|
|
4110
|
+
className: "opacity-70",
|
|
4111
|
+
name: "PanelRight",
|
|
4112
|
+
size: 24
|
|
4113
|
+
})
|
|
4118
4114
|
})
|
|
4119
4115
|
})
|
|
4120
|
-
|
|
4116
|
+
]
|
|
4121
4117
|
}), /* @__PURE__ */ i("div", {
|
|
4122
4118
|
className: "min-h-24 flex-1 overflow-auto",
|
|
4123
|
-
children: e ?? /* @__PURE__ */ i(
|
|
4119
|
+
children: e ?? /* @__PURE__ */ i(ni, {})
|
|
4124
4120
|
})]
|
|
4125
4121
|
}),
|
|
4126
4122
|
/* @__PURE__ */ i(or, {
|
|
4127
4123
|
ariaLabel: n?.right?.name ?? "Secondary panel",
|
|
4128
|
-
className:
|
|
4124
|
+
className: q("max-md:border-l max-md:border-neutral-200 max-md:bg-white dark:max-md:border-neutral-700 dark:max-md:bg-card"),
|
|
4129
4125
|
collapsible: "offcanvas",
|
|
4130
|
-
panelClassName: K("top-2 ml-0 h-[calc(100%-1rem)] min-w-[calc(var(--sidebar-width))]", "rounded-lg border-t border-neutral-200 bg-white shadow-md inset-ring-1 inset-ring-neutral-50", "dark:border-neutral-700 dark:bg-card dark:inset-ring-black"),
|
|
4131
4126
|
role: "complementary",
|
|
4132
4127
|
side: "right",
|
|
4133
4128
|
variant: "inset",
|
|
@@ -4136,30 +4131,27 @@ function ni({ children: e, variant: t = "desktop", panels: n, className: r, defa
|
|
|
4136
4131
|
]
|
|
4137
4132
|
});
|
|
4138
4133
|
}
|
|
4139
|
-
function
|
|
4140
|
-
return /* @__PURE__ */
|
|
4141
|
-
className: "
|
|
4142
|
-
children:
|
|
4143
|
-
className: "grid gap-5 lg:grid-cols-3",
|
|
4144
|
-
children: Array.from({ length: 3 }).map((e, t) => /* @__PURE__ */ i("div", { className: "h-32 border border-border bg-background/60" }, t))
|
|
4145
|
-
}), /* @__PURE__ */ i("div", { className: "h-72 border border-border bg-background/60" })]
|
|
4134
|
+
function ni() {
|
|
4135
|
+
return /* @__PURE__ */ i("div", {
|
|
4136
|
+
className: "flex flex-col flex-1 p-4",
|
|
4137
|
+
children: /* @__PURE__ */ i("div", { className: "h-96 border border-border bg-muted-foreground/10 rounded-lg" })
|
|
4146
4138
|
});
|
|
4147
4139
|
}
|
|
4148
4140
|
//#endregion
|
|
4149
4141
|
//#region src/components/blocks/shell/use-shell-panels.ts
|
|
4150
|
-
function
|
|
4151
|
-
let [r, i] =
|
|
4142
|
+
function ri({ defaultOpen: e, defaultOpenMobile: t, onPanelChange: n } = {}) {
|
|
4143
|
+
let [r, i] = U(() => ({
|
|
4152
4144
|
left: e?.left ?? !0,
|
|
4153
4145
|
right: e?.right ?? !1
|
|
4154
|
-
})), [a, o] =
|
|
4146
|
+
})), [a, o] = U(() => ({
|
|
4155
4147
|
left: t?.left ?? !1,
|
|
4156
4148
|
right: t?.right ?? !1
|
|
4157
|
-
})), s =
|
|
4149
|
+
})), s = z((e, t) => {
|
|
4158
4150
|
i((n) => n[t] === e ? n : {
|
|
4159
4151
|
...n,
|
|
4160
4152
|
[t]: e
|
|
4161
4153
|
}), n?.(e, t);
|
|
4162
|
-
}, [n]), c =
|
|
4154
|
+
}, [n]), c = z((e, t) => {
|
|
4163
4155
|
o((n) => n[t] === e ? n : {
|
|
4164
4156
|
...n,
|
|
4165
4157
|
[t]: e
|
|
@@ -4170,8 +4162,8 @@ function ii({ defaultOpen: e, defaultOpenMobile: t, onPanelChange: n } = {}) {
|
|
|
4170
4162
|
openMobile: a,
|
|
4171
4163
|
setOpen: s,
|
|
4172
4164
|
setOpenMobile: c,
|
|
4173
|
-
toggle:
|
|
4174
|
-
providerProps:
|
|
4165
|
+
toggle: z((e) => s(!r[e], e), [r, s]),
|
|
4166
|
+
providerProps: ie(() => ({
|
|
4175
4167
|
open: r,
|
|
4176
4168
|
onOpenChange: s,
|
|
4177
4169
|
openMobile: a,
|
|
@@ -4186,7 +4178,7 @@ function ii({ defaultOpen: e, defaultOpenMobile: t, onPanelChange: n } = {}) {
|
|
|
4186
4178
|
}
|
|
4187
4179
|
//#endregion
|
|
4188
4180
|
//#region src/components/blocks/layout.ts
|
|
4189
|
-
var
|
|
4181
|
+
var ii = { Main: ti }, ai = [
|
|
4190
4182
|
{
|
|
4191
4183
|
type: "label",
|
|
4192
4184
|
label: "Management"
|
|
@@ -4205,12 +4197,12 @@ var ai = { Main: ni }, oi = [
|
|
|
4205
4197
|
{
|
|
4206
4198
|
id: "teams",
|
|
4207
4199
|
label: "Teams",
|
|
4208
|
-
icon: /* @__PURE__ */ i(
|
|
4200
|
+
icon: /* @__PURE__ */ i(M, { "aria-hidden": "true" })
|
|
4209
4201
|
},
|
|
4210
4202
|
{
|
|
4211
4203
|
id: "invite",
|
|
4212
4204
|
label: "Invite",
|
|
4213
|
-
icon: /* @__PURE__ */ i(
|
|
4205
|
+
icon: /* @__PURE__ */ i(j, { "aria-hidden": "true" })
|
|
4214
4206
|
},
|
|
4215
4207
|
{ type: "separator" },
|
|
4216
4208
|
{
|
|
@@ -4220,17 +4212,17 @@ var ai = { Main: ni }, oi = [
|
|
|
4220
4212
|
variant: "destructive"
|
|
4221
4213
|
}
|
|
4222
4214
|
];
|
|
4223
|
-
function
|
|
4215
|
+
function oi(e) {
|
|
4224
4216
|
let t = [], n = { actions: [] };
|
|
4225
4217
|
for (let r of e) r.type === "separator" ? (t.push(n), n = { actions: [] }) : r.type === "label" ? n.label = r.label : n.actions.push(r);
|
|
4226
4218
|
return t.push(n), t.filter((e) => e.actions.length > 0 || e.label !== void 0);
|
|
4227
4219
|
}
|
|
4228
|
-
function
|
|
4229
|
-
let [h, g] =
|
|
4230
|
-
|
|
4220
|
+
function si({ user: e, items: t = ai, align: n = "center", side: r = "bottom", sideOffset: o = 8, menuWidth: s = "content", open: c, defaultOpen: l, onOpenChange: u, sound: d = !0, onError: f, className: p }) {
|
|
4221
|
+
let [h, g] = P.useState(null), _ = P.useRef(!0);
|
|
4222
|
+
P.useEffect(() => (_.current = !0, () => {
|
|
4231
4223
|
_.current = !1;
|
|
4232
4224
|
}), []);
|
|
4233
|
-
let v =
|
|
4225
|
+
let v = P.useMemo(() => oi(t), [t]);
|
|
4234
4226
|
function y(e) {
|
|
4235
4227
|
let t = e.onSelect?.();
|
|
4236
4228
|
t instanceof Promise && (g(e.id), t.catch((e) => f?.(e)).finally(() => {
|
|
@@ -4238,24 +4230,24 @@ function ci({ user: e, items: t = oi, align: n = "center", side: r = "bottom", s
|
|
|
4238
4230
|
}));
|
|
4239
4231
|
}
|
|
4240
4232
|
let b = h !== null;
|
|
4241
|
-
return /* @__PURE__ */ a(
|
|
4233
|
+
return /* @__PURE__ */ a(Ct, {
|
|
4242
4234
|
defaultOpen: l,
|
|
4243
4235
|
onOpenChange: (e, t) => {
|
|
4244
|
-
d &&
|
|
4236
|
+
d && et(e ? "bloom" : "droplet"), u?.(e, t);
|
|
4245
4237
|
},
|
|
4246
4238
|
open: c,
|
|
4247
|
-
children: [/* @__PURE__ */ i(
|
|
4239
|
+
children: [/* @__PURE__ */ i(Tt, {
|
|
4248
4240
|
disabled: b,
|
|
4249
|
-
render: /* @__PURE__ */ a(
|
|
4241
|
+
render: /* @__PURE__ */ a(J, {
|
|
4250
4242
|
"aria-label": `${e.name}${e.username ? ` ${e.username}` : ""}, account menu`,
|
|
4251
|
-
className:
|
|
4243
|
+
className: q("h-auto w-full justify-between py-1.5 pl-1.5 data-popup-open:bg-accent sm:h-auto", p),
|
|
4252
4244
|
"data-slot": "profile-card",
|
|
4253
4245
|
loading: b,
|
|
4254
4246
|
sound: d,
|
|
4255
4247
|
variant: "ghost",
|
|
4256
4248
|
children: [/* @__PURE__ */ a("span", {
|
|
4257
4249
|
className: "flex w-full min-w-0 items-center justify-start gap-2",
|
|
4258
|
-
children: [/* @__PURE__ */ i(
|
|
4250
|
+
children: [/* @__PURE__ */ i(en, {
|
|
4259
4251
|
alt: "",
|
|
4260
4252
|
initials: e.initials,
|
|
4261
4253
|
name: e.name,
|
|
@@ -4275,25 +4267,25 @@ function ci({ user: e, items: t = oi, align: n = "center", side: r = "bottom", s
|
|
|
4275
4267
|
className: "size-3.5"
|
|
4276
4268
|
})]
|
|
4277
4269
|
})
|
|
4278
|
-
}), /* @__PURE__ */ i(
|
|
4270
|
+
}), /* @__PURE__ */ i(Et, {
|
|
4279
4271
|
align: n,
|
|
4280
|
-
className:
|
|
4272
|
+
className: q(s === "card" ? "w-(--anchor-width)" : "min-w-44!", "origin-(--transform-origin) transition-[opacity,scale,translate] duration-150 ease-smooth-out data-ending-style:scale-98 data-ending-style:opacity-0 data-ending-style:duration-100 data-starting-style:scale-98 data-starting-style:opacity-0 data-[side=bottom]:data-ending-style:-translate-y-1 data-[side=bottom]:data-starting-style:-translate-y-1 data-[side=top]:data-ending-style:translate-y-1 data-[side=top]:data-starting-style:translate-y-1 motion-reduce:transition-none"),
|
|
4281
4273
|
side: r,
|
|
4282
4274
|
sideOffset: o,
|
|
4283
|
-
children: v.map((e, t) => /* @__PURE__ */ a(
|
|
4275
|
+
children: v.map((e, t) => /* @__PURE__ */ a(P.Fragment, { children: [t > 0 ? /* @__PURE__ */ i(Pt, {}) : null, /* @__PURE__ */ a(Dt, { children: [e.label ? /* @__PURE__ */ i(Nt, { children: e.label }) : null, e.actions.map((e) => /* @__PURE__ */ a(Ot, {
|
|
4284
4276
|
disabled: e.disabled,
|
|
4285
4277
|
onClick: () => y(e),
|
|
4286
4278
|
variant: e.variant,
|
|
4287
4279
|
children: [
|
|
4288
4280
|
e.icon,
|
|
4289
4281
|
/* @__PURE__ */ i("span", { children: e.label }),
|
|
4290
|
-
e.shortcut ? /* @__PURE__ */ i(
|
|
4282
|
+
e.shortcut ? /* @__PURE__ */ i(Ft, { children: e.shortcut }) : null
|
|
4291
4283
|
]
|
|
4292
4284
|
}, e.id))] })] }, e.label ?? `group-${e.actions[0]?.id}`))
|
|
4293
4285
|
})]
|
|
4294
4286
|
});
|
|
4295
4287
|
}
|
|
4296
4288
|
//#endregion
|
|
4297
|
-
export {
|
|
4289
|
+
export { Qr as AISidebar, or as AnimatedSidebar, cr as AnimatedSidebarClose, dr as AnimatedSidebarContent, fr as AnimatedSidebarFooter, pr as AnimatedSidebarGroup, hr as AnimatedSidebarGroupContent, mr as AnimatedSidebarGroupLabel, ur as AnimatedSidebarHeader, lr as AnimatedSidebarInset, gr as AnimatedSidebarMenu, xr as AnimatedSidebarMenuButton, _r as AnimatedSidebarMenuItem, vr as AnimatedSidebarMenuSub, br as AnimatedSidebarMenuSubButton, yr as AnimatedSidebarMenuSubItem, ir as AnimatedSidebarProvider, sr as AnimatedSidebarTrigger, rn as AuthCard, $ as AuthError, sn as AuthSeparator, on as AuthSuccess, Ee as Avatar, Oe as AvatarFallback, De as AvatarImage, e as AvatarPrimitive, J as Button, ze as Card, Ye as CardAction, Xe as CardContent, Xe as CardPanel, Je as CardDescription, Ze as CardFooter, Be as CardFrame, We as CardFrameAction, Ue as CardFrameDescription, Ge as CardFrameFooter, Ve as CardFrameHeader, He as CardFrameTitle, Ke as CardHeader, qe as CardTitle, tt as Checkbox, oe as CheckboxPrimitive, ln as CodeAuthBlock, _n as DEFAULT_ONBOARDING_STEPS, Ct as DropdownMenu, Ct as Menu, At as DropdownMenuCheckboxItem, At as MenuCheckboxItem, Et as DropdownMenuContent, Et as MenuPopup, St as DropdownMenuCreateHandle, St as MenuCreateHandle, Dt as DropdownMenuGroup, Dt as MenuGroup, Ot as DropdownMenuItem, Ot as MenuItem, Nt as DropdownMenuLabel, Nt as MenuGroupLabel, wt as DropdownMenuPortal, wt as MenuPortal, jt as DropdownMenuRadioGroup, jt as MenuRadioGroup, Mt as DropdownMenuRadioItem, Mt as MenuRadioItem, Pt as DropdownMenuSeparator, Pt as MenuSeparator, Ft as DropdownMenuShortcut, Ft as MenuShortcut, It as DropdownMenuSub, It as MenuSub, Rt as DropdownMenuSubContent, Rt as MenuSubPopup, Lt as DropdownMenuSubTrigger, Lt as MenuSubTrigger, Tt as DropdownMenuTrigger, Tt as MenuTrigger, Z as EASE, On as EASE_DRAWER, Dn as EASE_IN_OUT, En as EASE_OUT, kn as EASE_OUT_CSS, Y as Field, at as FieldControl, rt as FieldDescription, it as FieldError, nt as FieldItem, X as FieldLabel, ot as FieldValidity, un as ForgotPasswordBlock, st as Frame, dt as FrameDescription, ft as FrameFooter, lt as FrameHeader, ct as FramePanel, ut as FrameTitle, pt as Input, gt as InputGroup, _t as InputGroupAddon, yt as InputGroupInput, vt as InputGroupText, bt as InputGroupTextarea, he as InputPrimitive, xt as Label, ii as Layout, fn as LinkedAccountsBlock, pn as LoginBlock, Ir as MarqueeLabel, kt as MenuLinkItem, W as MenuPrimitive, an as MorphStep, Bt as OTPField, Vt as OTPFieldInput, ge as OTPFieldPrimitive, Ht as OTPFieldSeparator, vn as OnboardingBlock, Sn as PasskeyManagerBlock, Cn as PasskeySignInBlock, Jt as PasswordInput, si as ProfileCardBlock, Zr as ResourceRow, Q as Reveal, Xt as SOCIAL_PROVIDERS, Fn as SPRING_GLIDE, Nn as SPRING_LAYOUT, Pn as SPRING_MOUSE, Mn as SPRING_PANEL, An as SPRING_PRESS, jn as SPRING_SWAP, zt as Separator, _e as SeparatorPrimitive, Rn as SharedLayoutBg, ti as ShellLayout, $r as Sidebar, wr as SidebarBlock, Fr as SidebarIcon, wn as SignupBlock, Ut as Skeleton, Qt as SocialProviders, ke as Spinner, ei as TITLE_BAR_HEIGHT, mt as Textarea, Tn as UpdatePasswordBlock, en as UserAvatar, nn as authAccentActionStyles, tn as authAccentVars, $e as bindSounds, Re as buttonVariants, q as cn, ai as defaultProfileCardItems, Kt as getPasswordStrength, $t as initialsFrom, Gt as passwordRequirements, et as playCue, le as playSound, ue as setSoundEnabled, de as setSoundVolume, fe as sounds, Pr as useAISidebar, nr as useAnimatedSidebar, cn as useCountdown, ri as useShellPanels };
|
|
4298
4290
|
|
|
4299
4291
|
//# sourceMappingURL=index.js.map
|