@epicbagel/saas-kit 1.33.0 → 1.34.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/README.md +67 -0
- package/dist/chunk-2BNEE3U6.cjs +36 -0
- package/dist/{chunk-KOR2QR7I.cjs → chunk-2YW5VA2V.cjs} +5 -5
- package/dist/chunk-5PHOKJCT.cjs +42 -0
- package/dist/chunk-BB7PO2BW.js +67 -0
- package/dist/{chunk-PTMZTP3V.cjs → chunk-BGCNGYPL.cjs} +2 -2
- package/dist/chunk-BOMVE7QO.cjs +47 -0
- package/dist/{chunk-FPOJ2NGG.js → chunk-C3VZMTVB.js} +1 -1
- package/dist/chunk-EXHF3QUY.js +36 -0
- package/dist/chunk-FYNHRHVY.cjs +47 -0
- package/dist/{chunk-AWCXVYPL.js → chunk-HTPPNW74.js} +1 -1
- package/dist/{chunk-REGA2L5S.js → chunk-HTUYUMAH.js} +3 -3
- package/dist/chunk-I3GBXIFL.cjs +67 -0
- package/dist/{chunk-SL6ECEN6.cjs → chunk-JMNDFISN.cjs} +3 -3
- package/dist/{chunk-TS4MC3B3.js → chunk-NNEV5RHQ.js} +6 -6
- package/dist/chunk-O3G3TVPU.js +27 -0
- package/dist/{chunk-IZF4WCK6.js → chunk-ROUWBWEQ.js} +5 -5
- package/dist/chunk-TDCVZKMX.cjs +27 -0
- package/dist/{chunk-E2UVQXBO.cjs → chunk-TP74SBRH.cjs} +6 -6
- package/dist/{chunk-F3D5HA2F.cjs → chunk-VUMLLKWY.cjs} +8 -8
- package/dist/chunk-W5L6LQI3.js +42 -0
- package/dist/chunk-WMTCL463.js +47 -0
- package/dist/chunk-WTVL2FK7.js +47 -0
- package/dist/primitives/accent-theme.cjs +4 -63
- package/dist/primitives/accent-theme.js +3 -62
- package/dist/primitives/activity-feed.cjs +4 -4
- package/dist/primitives/activity-feed.js +5 -5
- package/dist/primitives/agent-audio-visualizer-bar.cjs +3 -3
- package/dist/primitives/agent-audio-visualizer-bar.js +2 -2
- package/dist/primitives/alert.d.cts +1 -1
- package/dist/primitives/alert.d.ts +1 -1
- package/dist/primitives/anchor.cjs +3 -30
- package/dist/primitives/anchor.js +3 -30
- package/dist/primitives/app-layout.cjs +5 -5
- package/dist/primitives/app-layout.js +2 -2
- package/dist/primitives/app-sidebar.cjs +3 -3
- package/dist/primitives/app-sidebar.js +2 -2
- package/dist/primitives/archive-confirmation-dialog.cjs +2 -2
- package/dist/primitives/archive-confirmation-dialog.js +3 -3
- package/dist/primitives/badge.d.cts +1 -1
- package/dist/primitives/badge.d.ts +1 -1
- package/dist/primitives/board-view-internals.cjs +3 -3
- package/dist/primitives/board-view-internals.js +2 -2
- package/dist/primitives/board-view.cjs +8 -8
- package/dist/primitives/board-view.js +7 -7
- package/dist/primitives/brand-mark.cjs +3 -21
- package/dist/primitives/brand-mark.js +3 -21
- package/dist/primitives/branded-page.cjs +201 -0
- package/dist/primitives/branded-page.d.cts +118 -0
- package/dist/primitives/branded-page.d.ts +118 -0
- package/dist/primitives/branded-page.js +201 -0
- package/dist/primitives/bubble.d.cts +1 -1
- package/dist/primitives/bubble.d.ts +1 -1
- package/dist/primitives/button.d.cts +2 -2
- package/dist/primitives/button.d.ts +2 -2
- package/dist/primitives/call-card.cjs +2 -2
- package/dist/primitives/call-card.js +3 -3
- package/dist/primitives/chat.cjs +25 -25
- package/dist/primitives/chat.js +22 -22
- package/dist/primitives/code-block.cjs +4 -4
- package/dist/primitives/code-block.js +3 -3
- package/dist/primitives/command.d.cts +1 -1
- package/dist/primitives/command.d.ts +1 -1
- package/dist/primitives/connection.cjs +5 -5
- package/dist/primitives/connection.js +7 -7
- package/dist/primitives/copy-button.cjs +3 -3
- package/dist/primitives/copy-button.js +2 -2
- package/dist/primitives/document-preview.cjs +5 -5
- package/dist/primitives/document-preview.js +3 -3
- package/dist/primitives/file-preview-internals.cjs +4 -4
- package/dist/primitives/file-preview-internals.js +3 -3
- package/dist/primitives/file-preview.cjs +16 -16
- package/dist/primitives/file-preview.js +6 -6
- package/dist/primitives/filter-bar.cjs +4 -4
- package/dist/primitives/filter-bar.js +3 -3
- package/dist/primitives/fixed-action-bar.cjs +4 -41
- package/dist/primitives/fixed-action-bar.js +4 -41
- package/dist/primitives/marketing-header.cjs +3 -36
- package/dist/primitives/marketing-header.js +3 -36
- package/dist/primitives/notes.cjs +7 -7
- package/dist/primitives/notes.js +7 -7
- package/dist/primitives/page-shell.cjs +3 -41
- package/dist/primitives/page-shell.js +3 -41
- package/dist/primitives/resource-list.cjs +8 -8
- package/dist/primitives/resource-list.js +7 -7
- package/dist/primitives/responsive-dialog.cjs +3 -3
- package/dist/primitives/responsive-dialog.js +2 -2
- package/dist/primitives/section.cjs +2 -2
- package/dist/primitives/section.js +3 -3
- package/dist/primitives/switch-field.cjs +3 -3
- package/dist/primitives/switch-field.js +3 -3
- package/dist/primitives/tabbed-page-header.cjs +3 -3
- package/dist/primitives/tabbed-page-header.js +3 -3
- package/dist/primitives/theme-selector.cjs +3 -3
- package/dist/primitives/theme-selector.js +4 -4
- package/dist/primitives/voice-dictation-button.cjs +5 -5
- package/dist/primitives/voice-dictation-button.js +4 -4
- package/dist/primitives/voice-session-controls.cjs +4 -4
- package/dist/primitives/voice-session-controls.js +3 -3
- package/dist/primitives/workflow-assistant.cjs +5 -5
- package/dist/primitives/workflow-assistant.js +3 -3
- package/package.json +11 -1
- package/dist/{chunk-2FVFPGP5.js → chunk-5GFMSK27.js} +3 -3
- package/dist/{chunk-4TJBXXUE.js → chunk-5OF6D3GH.js} +3 -3
- package/dist/{chunk-ULZB4A2I.js → chunk-62UTAG2C.js} +3 -3
- package/dist/{chunk-SW4T3O7M.js → chunk-6LB37JWO.js} +6 -6
- package/dist/{chunk-AO56ET4F.cjs → chunk-BTHYGHOH.cjs} +2 -2
- package/dist/{chunk-7ZRFXJVN.js → chunk-DILYV4FI.js} +3 -3
- package/dist/{chunk-HHF5DEKM.cjs → chunk-FARCLWLU.cjs} +3 -3
- package/dist/{chunk-CRZ4INEJ.js → chunk-JTI4244T.js} +10 -10
- package/dist/{chunk-FB3VY2PL.cjs → chunk-NKWHDI4C.cjs} +2 -2
- package/dist/{chunk-GUVQAWUW.cjs → chunk-S2IMM37Q.cjs} +5 -5
- package/dist/{chunk-G3SF4RRA.cjs → chunk-UKYUWSF2.cjs} +3 -3
- package/dist/{chunk-D46FNEZ5.cjs → chunk-YYFVG5A6.cjs} +2 -2
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
9
|
-
var
|
|
9
|
+
var _chunkBTHYGHOHcjs = require('./chunk-BTHYGHOH.cjs');
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
var _chunkT2ZFSPE4cjs = require('./chunk-T2ZFSPE4.cjs');
|
|
@@ -29,10 +29,10 @@ function PreviewDialog({
|
|
|
29
29
|
downloadLabel,
|
|
30
30
|
children
|
|
31
31
|
}) {
|
|
32
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
33
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
32
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBTHYGHOHcjs.ResponsiveDialog, { open, onOpenChange, children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkBTHYGHOHcjs.ResponsiveDialogContent, { presentation: "preview", className: "h-[92dvh] outline-none", children: [
|
|
33
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkBTHYGHOHcjs.ResponsiveDialogHeader, { className: "shrink-0 border-b border-border", children: [
|
|
34
34
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "flex min-w-0 items-center gap-2", children: [
|
|
35
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
35
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBTHYGHOHcjs.ResponsiveDialogTitle, { className: "min-w-0 flex-1 truncate text-left", children: title }),
|
|
36
36
|
onDownload && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
37
37
|
_chunkJDEXZGIYcjs.Button,
|
|
38
38
|
{
|
|
@@ -46,7 +46,7 @@ function PreviewDialog({
|
|
|
46
46
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkT2ZFSPE4cjs.Icon, { icon: downloading ? _lucidereact.Loader2 : _lucidereact.Download, size: "sm", spin: downloading })
|
|
47
47
|
}
|
|
48
48
|
),
|
|
49
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
49
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkBTHYGHOHcjs.ResponsiveDialogClose, { asChild: true, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
50
50
|
_chunkJDEXZGIYcjs.Button,
|
|
51
51
|
{
|
|
52
52
|
type: "button",
|
|
@@ -58,7 +58,7 @@ function PreviewDialog({
|
|
|
58
58
|
}
|
|
59
59
|
) })
|
|
60
60
|
] }),
|
|
61
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
61
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _chunkBTHYGHOHcjs.ResponsiveDialogDescription, { className: "sr-only", children: [
|
|
62
62
|
"Preview of ",
|
|
63
63
|
title
|
|
64
64
|
] })
|
|
@@ -7,22 +7,19 @@ var _chunkEUFV25KLcjs = require('./chunk-EUFV25KL.cjs');
|
|
|
7
7
|
var _chunk7YCKII7Gcjs = require('./chunk-7YCKII7G.cjs');
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _chunkS2IMM37Qcjs = require('./chunk-S2IMM37Q.cjs');
|
|
11
11
|
|
|
12
12
|
|
|
13
13
|
var _chunkLELBCBDTcjs = require('./chunk-LELBCBDT.cjs');
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
|
|
17
|
-
var
|
|
17
|
+
var _chunkYYFVG5A6cjs = require('./chunk-YYFVG5A6.cjs');
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
var _chunkXLIAY56Vcjs = require('./chunk-XLIAY56V.cjs');
|
|
21
21
|
|
|
22
22
|
|
|
23
|
-
var _chunkR35FT53Gcjs = require('./chunk-R35FT53G.cjs');
|
|
24
|
-
|
|
25
|
-
|
|
26
23
|
|
|
27
24
|
|
|
28
25
|
|
|
@@ -37,6 +34,9 @@ var _chunkJDEXZGIYcjs = require('./chunk-JDEXZGIY.cjs');
|
|
|
37
34
|
|
|
38
35
|
var _chunkKWLSBTB2cjs = require('./chunk-KWLSBTB2.cjs');
|
|
39
36
|
|
|
37
|
+
|
|
38
|
+
var _chunkR35FT53Gcjs = require('./chunk-R35FT53G.cjs');
|
|
39
|
+
|
|
40
40
|
// src/primitives/resource-list.tsx
|
|
41
41
|
var _lucidereact = require('lucide-react');
|
|
42
42
|
var _react = require('react');
|
|
@@ -209,7 +209,7 @@ function ResourceList({
|
|
|
209
209
|
if (boardActive && boardConfig) {
|
|
210
210
|
if (isMobile) {
|
|
211
211
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
212
|
-
|
|
212
|
+
_chunkYYFVG5A6cjs.MobileBoardView,
|
|
213
213
|
{
|
|
214
214
|
columns: boardConfig.columns,
|
|
215
215
|
grouped,
|
|
@@ -235,7 +235,7 @@ function ResourceList({
|
|
|
235
235
|
minHeight: boardConfig.viewport === "bounded" ? void 0 : _nullishCoalesce(boardConfig.columnMinHeight, () => ( "400px"))
|
|
236
236
|
},
|
|
237
237
|
children: boardConfig.columns.map((col) => /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
238
|
-
|
|
238
|
+
_chunkYYFVG5A6cjs.BoardColumnComponent,
|
|
239
239
|
{
|
|
240
240
|
column: col,
|
|
241
241
|
items: grouped[col.id] || [],
|
|
@@ -268,7 +268,7 @@ function ResourceList({
|
|
|
268
268
|
const controlsVisible = !(hideControlsWhenEmpty && !loading && !error && _optionalChain([data, 'optionalAccess', _5 => _5.length]) === 0);
|
|
269
269
|
const filterOnQuickRow = filterBarVisible && !toolbarHasOtherControls && hasQuickFilters;
|
|
270
270
|
const filterBarNode = filterBarVisible ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
271
|
-
|
|
271
|
+
_chunkS2IMM37Qcjs.FilterBar,
|
|
272
272
|
{
|
|
273
273
|
filters: filterSchema,
|
|
274
274
|
onFiltersChange,
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
cn
|
|
4
|
+
} from "./chunk-G6SRSWXB.js";
|
|
5
|
+
|
|
6
|
+
// src/primitives/marketing-header.tsx
|
|
7
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
8
|
+
function MarketingHeader({
|
|
9
|
+
brand,
|
|
10
|
+
links = [],
|
|
11
|
+
trailing,
|
|
12
|
+
renderLink,
|
|
13
|
+
variant = "default",
|
|
14
|
+
className
|
|
15
|
+
}) {
|
|
16
|
+
const link = (l) => {
|
|
17
|
+
const cls = variant === "mono" ? "font-mono text-xs uppercase tracking-[0.18em] text-muted-foreground transition-colors hover:text-foreground" : "text-sm text-muted-foreground transition-colors hover:text-foreground";
|
|
18
|
+
if (renderLink)
|
|
19
|
+
return /* @__PURE__ */ jsx("span", { children: renderLink({ href: l.href, children: l.label, className: cls }) }, l.href);
|
|
20
|
+
return /* @__PURE__ */ jsx("a", { href: l.href, className: cls, children: l.label }, l.href);
|
|
21
|
+
};
|
|
22
|
+
return /* @__PURE__ */ jsx(
|
|
23
|
+
"header",
|
|
24
|
+
{
|
|
25
|
+
className: cn(
|
|
26
|
+
"sticky top-0 z-50 border-b border-border bg-background/80 backdrop-blur-sm supports-[backdrop-filter]:bg-background/70",
|
|
27
|
+
className
|
|
28
|
+
),
|
|
29
|
+
children: /* @__PURE__ */ jsxs("div", { className: "mx-auto flex w-full max-w-5xl items-center justify-between px-4 py-4 md:px-6", children: [
|
|
30
|
+
/* @__PURE__ */ jsx("div", { className: "flex items-center", children: brand }),
|
|
31
|
+
/* @__PURE__ */ jsxs("nav", { className: "flex items-center gap-3 md:gap-5", children: [
|
|
32
|
+
links.length > 0 && /* @__PURE__ */ jsx("div", { className: "hidden items-center gap-5 sm:flex", children: links.map(link) }),
|
|
33
|
+
trailing && /* @__PURE__ */ jsx("div", { className: "flex items-center gap-2 md:gap-3", children: trailing })
|
|
34
|
+
] })
|
|
35
|
+
] })
|
|
36
|
+
}
|
|
37
|
+
);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export {
|
|
41
|
+
MarketingHeader
|
|
42
|
+
};
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
Text
|
|
4
|
+
} from "./chunk-EIY5LLSP.js";
|
|
5
|
+
import {
|
|
6
|
+
cn
|
|
7
|
+
} from "./chunk-G6SRSWXB.js";
|
|
8
|
+
|
|
9
|
+
// src/primitives/fixed-action-bar.tsx
|
|
10
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
11
|
+
var widthStyles = {
|
|
12
|
+
compact: "max-w-2xl",
|
|
13
|
+
narrow: "max-w-3xl",
|
|
14
|
+
wide: "max-w-5xl",
|
|
15
|
+
full: "max-w-none"
|
|
16
|
+
};
|
|
17
|
+
function FixedActionBar({
|
|
18
|
+
title,
|
|
19
|
+
description,
|
|
20
|
+
children,
|
|
21
|
+
width = "narrow",
|
|
22
|
+
actionsWidth = "auto",
|
|
23
|
+
className
|
|
24
|
+
}) {
|
|
25
|
+
return /* @__PURE__ */ jsx(
|
|
26
|
+
"aside",
|
|
27
|
+
{
|
|
28
|
+
"aria-label": "Page action",
|
|
29
|
+
className: cn(
|
|
30
|
+
"fixed inset-x-0 bottom-0 z-40 border-t border-border bg-background/95 backdrop-blur-sm",
|
|
31
|
+
"pb-[env(safe-area-inset-bottom)] supports-backdrop-filter:bg-background/80",
|
|
32
|
+
className
|
|
33
|
+
),
|
|
34
|
+
children: /* @__PURE__ */ jsxs("div", { className: cn("mx-auto flex items-center gap-4 px-4 py-3 md:px-6", title ? "justify-between" : "justify-end", widthStyles[width]), children: [
|
|
35
|
+
title && /* @__PURE__ */ jsxs("div", { className: "min-w-0", children: [
|
|
36
|
+
/* @__PURE__ */ jsx(Text, { className: "truncate font-medium", children: title }),
|
|
37
|
+
description && /* @__PURE__ */ jsx(Text, { variant: "muted", className: "text-sm", children: description })
|
|
38
|
+
] }),
|
|
39
|
+
/* @__PURE__ */ jsx("div", { className: cn("shrink-0", actionsWidth === "full" && "w-full"), children })
|
|
40
|
+
] })
|
|
41
|
+
}
|
|
42
|
+
);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export {
|
|
46
|
+
FixedActionBar
|
|
47
|
+
};
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
cn
|
|
4
|
+
} from "./chunk-G6SRSWXB.js";
|
|
5
|
+
|
|
6
|
+
// src/primitives/page-shell.tsx
|
|
7
|
+
import { forwardRef } from "react";
|
|
8
|
+
import { jsx } from "react/jsx-runtime";
|
|
9
|
+
var widthStyles = {
|
|
10
|
+
narrow: "max-w-3xl",
|
|
11
|
+
wide: "max-w-5xl",
|
|
12
|
+
full: "max-w-none"
|
|
13
|
+
};
|
|
14
|
+
var paddingStyles = {
|
|
15
|
+
none: "",
|
|
16
|
+
base: "px-4 md:px-6",
|
|
17
|
+
relaxed: "px-6 md:px-10",
|
|
18
|
+
spacious: "px-6 md:px-10 xl:px-16"
|
|
19
|
+
};
|
|
20
|
+
var PageShell = forwardRef(
|
|
21
|
+
function PageShell2({ width = "full", padding = "base", spacing = "default", bottomInset = "default", minHeight = "none", align = "start", printMode = "default", mobileTreatment = "page", as = "main", className, ...props }, ref) {
|
|
22
|
+
const Tag = as;
|
|
23
|
+
return /* @__PURE__ */ jsx(
|
|
24
|
+
Tag,
|
|
25
|
+
{
|
|
26
|
+
ref,
|
|
27
|
+
className: cn(
|
|
28
|
+
"mx-auto w-full pt-6 md:pt-8 mb-28",
|
|
29
|
+
spacing === "default" ? "space-y-6" : "space-y-4",
|
|
30
|
+
widthStyles[width],
|
|
31
|
+
paddingStyles[padding],
|
|
32
|
+
bottomInset === "action" && "pb-32",
|
|
33
|
+
minHeight === "content" && "min-h-[70vh]",
|
|
34
|
+
align === "center" && "flex items-center",
|
|
35
|
+
printMode === "compact" && "print:my-0 print:pt-0",
|
|
36
|
+
mobileTreatment === "application" && "mb-0 flex min-h-[calc(100svh-4rem)] flex-1 flex-col space-y-0 px-0 pt-0 md:mb-28 md:block md:min-h-0 md:pt-8",
|
|
37
|
+
className
|
|
38
|
+
),
|
|
39
|
+
...props
|
|
40
|
+
}
|
|
41
|
+
);
|
|
42
|
+
}
|
|
43
|
+
);
|
|
44
|
+
|
|
45
|
+
export {
|
|
46
|
+
PageShell
|
|
47
|
+
};
|
|
@@ -1,66 +1,7 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
|
|
2
2
|
|
|
3
|
-
// src/primitives/accent-theme.tsx
|
|
4
|
-
var _react = require('react');
|
|
5
|
-
var _jsxruntime = require('react/jsx-runtime');
|
|
6
|
-
var PALETTE_ID = /^[A-Za-z0-9_-]+$/;
|
|
7
|
-
function hexToHslTriplet(hex) {
|
|
8
|
-
const match = /^#([0-9a-f]{6})$/i.exec(hex.trim());
|
|
9
|
-
if (!match) return null;
|
|
10
|
-
const value = Number.parseInt(match[1], 16);
|
|
11
|
-
const red = (value >> 16 & 255) / 255;
|
|
12
|
-
const green = (value >> 8 & 255) / 255;
|
|
13
|
-
const blue = (value & 255) / 255;
|
|
14
|
-
const maximum = Math.max(red, green, blue);
|
|
15
|
-
const minimum = Math.min(red, green, blue);
|
|
16
|
-
const lightness = (maximum + minimum) / 2;
|
|
17
|
-
let hue = 0;
|
|
18
|
-
let saturation = 0;
|
|
19
|
-
if (maximum !== minimum) {
|
|
20
|
-
const delta = maximum - minimum;
|
|
21
|
-
saturation = lightness > 0.5 ? delta / (2 - maximum - minimum) : delta / (maximum + minimum);
|
|
22
|
-
if (maximum === red) hue = ((green - blue) / delta + (green < blue ? 6 : 0)) / 6;
|
|
23
|
-
else if (maximum === green) hue = ((blue - red) / delta + 2) / 6;
|
|
24
|
-
else hue = ((red - green) / delta + 4) / 6;
|
|
25
|
-
}
|
|
26
|
-
const round = (number) => Math.round(number * 10) / 10;
|
|
27
|
-
return `${round(hue * 360)} ${round(saturation * 100)}% ${round(lightness * 100)}%`;
|
|
28
|
-
}
|
|
29
|
-
function foregroundFor(hex) {
|
|
30
|
-
const match = /^#([0-9a-f]{6})$/i.exec(hex.trim());
|
|
31
|
-
if (!match) return "0 0% 100%";
|
|
32
|
-
const value = Number.parseInt(match[1], 16);
|
|
33
|
-
const channel = (number) => {
|
|
34
|
-
const normalized = number / 255;
|
|
35
|
-
return normalized <= 0.03928 ? normalized / 12.92 : ((normalized + 0.055) / 1.055) ** 2.4;
|
|
36
|
-
};
|
|
37
|
-
const luminance = 0.2126 * channel(value >> 16 & 255) + 0.7152 * channel(value >> 8 & 255) + 0.0722 * channel(value & 255);
|
|
38
|
-
return luminance > 0.45 ? "0 0% 9%" : "0 0% 100%";
|
|
39
|
-
}
|
|
40
|
-
function AccentTheme({ colours, palette, scope: target = "region", children }) {
|
|
41
|
-
const scope = `accent-${_react.useId.call(void 0, ).replace(/[^a-zA-Z0-9]/g, "")}`;
|
|
42
|
-
const light = _optionalChain([colours, 'optionalAccess', _ => _.light]) ? hexToHslTriplet(colours.light) : null;
|
|
43
|
-
const dark = _optionalChain([colours, 'optionalAccess', _2 => _2.dark]) ? hexToHslTriplet(colours.dark) : null;
|
|
44
|
-
if (!light && !dark) return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _jsxruntime.Fragment, { children });
|
|
45
|
-
const root = palette === void 0 ? null : PALETTE_ID.test(palette) ? `:root[data-theme="${palette}"]` : ":root:not(*)";
|
|
46
|
-
const lightSelector = target === "document" ? _nullishCoalesce(root, () => ( ":root")) : root ? `${root} .${scope}` : `.${scope}`;
|
|
47
|
-
const darkSelector = `${_nullishCoalesce(root, () => ( ":root"))}.dark${target === "document" ? "" : ` .${scope}`}`;
|
|
48
|
-
const rules = [];
|
|
49
|
-
if (light && _optionalChain([colours, 'optionalAccess', _3 => _3.light])) {
|
|
50
|
-
rules.push(
|
|
51
|
-
`${lightSelector}{--primary:${light};--primary-foreground:${foregroundFor(colours.light)};--ring:${light};--color-primary:hsl(var(--primary));--color-primary-foreground:hsl(var(--primary-foreground));--color-ring:hsl(var(--ring));}`
|
|
52
|
-
);
|
|
53
|
-
}
|
|
54
|
-
if (dark && _optionalChain([colours, 'optionalAccess', _4 => _4.dark])) {
|
|
55
|
-
rules.push(
|
|
56
|
-
`${darkSelector}{--primary:${dark};--primary-foreground:${foregroundFor(colours.dark)};--ring:${dark};--color-primary:hsl(var(--primary));--color-primary-foreground:hsl(var(--primary-foreground));--color-ring:hsl(var(--ring));}`
|
|
57
|
-
);
|
|
58
|
-
}
|
|
59
|
-
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
60
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "style", { dangerouslySetInnerHTML: { __html: rules.join("") } }),
|
|
61
|
-
target === "document" ? children : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: scope, children })
|
|
62
|
-
] });
|
|
63
|
-
}
|
|
64
3
|
|
|
4
|
+
var _chunkI3GBXIFLcjs = require('../chunk-I3GBXIFL.cjs');
|
|
65
5
|
|
|
66
|
-
|
|
6
|
+
|
|
7
|
+
exports.AccentTheme = _chunkI3GBXIFLcjs.AccentTheme;
|
|
@@ -1,66 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
6
|
-
var PALETTE_ID = /^[A-Za-z0-9_-]+$/;
|
|
7
|
-
function hexToHslTriplet(hex) {
|
|
8
|
-
const match = /^#([0-9a-f]{6})$/i.exec(hex.trim());
|
|
9
|
-
if (!match) return null;
|
|
10
|
-
const value = Number.parseInt(match[1], 16);
|
|
11
|
-
const red = (value >> 16 & 255) / 255;
|
|
12
|
-
const green = (value >> 8 & 255) / 255;
|
|
13
|
-
const blue = (value & 255) / 255;
|
|
14
|
-
const maximum = Math.max(red, green, blue);
|
|
15
|
-
const minimum = Math.min(red, green, blue);
|
|
16
|
-
const lightness = (maximum + minimum) / 2;
|
|
17
|
-
let hue = 0;
|
|
18
|
-
let saturation = 0;
|
|
19
|
-
if (maximum !== minimum) {
|
|
20
|
-
const delta = maximum - minimum;
|
|
21
|
-
saturation = lightness > 0.5 ? delta / (2 - maximum - minimum) : delta / (maximum + minimum);
|
|
22
|
-
if (maximum === red) hue = ((green - blue) / delta + (green < blue ? 6 : 0)) / 6;
|
|
23
|
-
else if (maximum === green) hue = ((blue - red) / delta + 2) / 6;
|
|
24
|
-
else hue = ((red - green) / delta + 4) / 6;
|
|
25
|
-
}
|
|
26
|
-
const round = (number) => Math.round(number * 10) / 10;
|
|
27
|
-
return `${round(hue * 360)} ${round(saturation * 100)}% ${round(lightness * 100)}%`;
|
|
28
|
-
}
|
|
29
|
-
function foregroundFor(hex) {
|
|
30
|
-
const match = /^#([0-9a-f]{6})$/i.exec(hex.trim());
|
|
31
|
-
if (!match) return "0 0% 100%";
|
|
32
|
-
const value = Number.parseInt(match[1], 16);
|
|
33
|
-
const channel = (number) => {
|
|
34
|
-
const normalized = number / 255;
|
|
35
|
-
return normalized <= 0.03928 ? normalized / 12.92 : ((normalized + 0.055) / 1.055) ** 2.4;
|
|
36
|
-
};
|
|
37
|
-
const luminance = 0.2126 * channel(value >> 16 & 255) + 0.7152 * channel(value >> 8 & 255) + 0.0722 * channel(value & 255);
|
|
38
|
-
return luminance > 0.45 ? "0 0% 9%" : "0 0% 100%";
|
|
39
|
-
}
|
|
40
|
-
function AccentTheme({ colours, palette, scope: target = "region", children }) {
|
|
41
|
-
const scope = `accent-${useId().replace(/[^a-zA-Z0-9]/g, "")}`;
|
|
42
|
-
const light = colours?.light ? hexToHslTriplet(colours.light) : null;
|
|
43
|
-
const dark = colours?.dark ? hexToHslTriplet(colours.dark) : null;
|
|
44
|
-
if (!light && !dark) return /* @__PURE__ */ jsx(Fragment, { children });
|
|
45
|
-
const root = palette === void 0 ? null : PALETTE_ID.test(palette) ? `:root[data-theme="${palette}"]` : ":root:not(*)";
|
|
46
|
-
const lightSelector = target === "document" ? root ?? ":root" : root ? `${root} .${scope}` : `.${scope}`;
|
|
47
|
-
const darkSelector = `${root ?? ":root"}.dark${target === "document" ? "" : ` .${scope}`}`;
|
|
48
|
-
const rules = [];
|
|
49
|
-
if (light && colours?.light) {
|
|
50
|
-
rules.push(
|
|
51
|
-
`${lightSelector}{--primary:${light};--primary-foreground:${foregroundFor(colours.light)};--ring:${light};--color-primary:hsl(var(--primary));--color-primary-foreground:hsl(var(--primary-foreground));--color-ring:hsl(var(--ring));}`
|
|
52
|
-
);
|
|
53
|
-
}
|
|
54
|
-
if (dark && colours?.dark) {
|
|
55
|
-
rules.push(
|
|
56
|
-
`${darkSelector}{--primary:${dark};--primary-foreground:${foregroundFor(colours.dark)};--ring:${dark};--color-primary:hsl(var(--primary));--color-primary-foreground:hsl(var(--primary-foreground));--color-ring:hsl(var(--ring));}`
|
|
57
|
-
);
|
|
58
|
-
}
|
|
59
|
-
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
60
|
-
/* @__PURE__ */ jsx("style", { dangerouslySetInnerHTML: { __html: rules.join("") } }),
|
|
61
|
-
target === "document" ? children : /* @__PURE__ */ jsx("div", { className: scope, children })
|
|
62
|
-
] });
|
|
63
|
-
}
|
|
2
|
+
import {
|
|
3
|
+
AccentTheme
|
|
4
|
+
} from "../chunk-BB7PO2BW.js";
|
|
64
5
|
export {
|
|
65
6
|
AccentTheme
|
|
66
7
|
};
|
|
@@ -4,20 +4,20 @@
|
|
|
4
4
|
var _chunkPPYHNJMVcjs = require('../chunk-PPYHNJMV.cjs');
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
var _chunkPQUSJEXLcjs = require('../chunk-PQUSJEXL.cjs');
|
|
8
7
|
|
|
9
8
|
|
|
9
|
+
var _chunkWABCLRBRcjs = require('../chunk-WABCLRBR.cjs');
|
|
10
10
|
|
|
11
11
|
|
|
12
|
-
var
|
|
12
|
+
var _chunkPQUSJEXLcjs = require('../chunk-PQUSJEXL.cjs');
|
|
13
|
+
require('../chunk-VGTINL5Q.cjs');
|
|
14
|
+
require('../chunk-I6GUOEBO.cjs');
|
|
13
15
|
|
|
14
16
|
|
|
15
17
|
var _chunkCLYAASFNcjs = require('../chunk-CLYAASFN.cjs');
|
|
16
18
|
|
|
17
19
|
|
|
18
20
|
var _chunkVBPPFC7Xcjs = require('../chunk-VBPPFC7X.cjs');
|
|
19
|
-
require('../chunk-VGTINL5Q.cjs');
|
|
20
|
-
require('../chunk-I6GUOEBO.cjs');
|
|
21
21
|
require('../chunk-JDEXZGIY.cjs');
|
|
22
22
|
|
|
23
23
|
|
|
@@ -2,22 +2,22 @@
|
|
|
2
2
|
import {
|
|
3
3
|
ChipTabs
|
|
4
4
|
} from "../chunk-MP64UGRF.js";
|
|
5
|
-
import {
|
|
6
|
-
Input
|
|
7
|
-
} from "../chunk-QMA3WVB7.js";
|
|
8
5
|
import {
|
|
9
6
|
Avatar,
|
|
10
7
|
AvatarFallback,
|
|
11
8
|
AvatarImage
|
|
12
9
|
} from "../chunk-3OWGL4Q2.js";
|
|
10
|
+
import {
|
|
11
|
+
Input
|
|
12
|
+
} from "../chunk-QMA3WVB7.js";
|
|
13
|
+
import "../chunk-H7TETFLB.js";
|
|
14
|
+
import "../chunk-D4ZL2OEQ.js";
|
|
13
15
|
import {
|
|
14
16
|
EmptyState
|
|
15
17
|
} from "../chunk-ET4THLFX.js";
|
|
16
18
|
import {
|
|
17
19
|
Skeleton
|
|
18
20
|
} from "../chunk-YEW65ASC.js";
|
|
19
|
-
import "../chunk-H7TETFLB.js";
|
|
20
|
-
import "../chunk-D4ZL2OEQ.js";
|
|
21
21
|
import "../chunk-W326GKML.js";
|
|
22
22
|
import {
|
|
23
23
|
cn
|
|
@@ -5,12 +5,12 @@
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
var
|
|
9
|
-
require('../chunk-2BSFYU22.cjs');
|
|
8
|
+
var _chunkNKWHDI4Ccjs = require('../chunk-NKWHDI4C.cjs');
|
|
10
9
|
require('../chunk-KWLSBTB2.cjs');
|
|
10
|
+
require('../chunk-2BSFYU22.cjs');
|
|
11
11
|
|
|
12
12
|
|
|
13
13
|
|
|
14
14
|
|
|
15
15
|
|
|
16
|
-
exports.AgentAudioVisualizerBar =
|
|
16
|
+
exports.AgentAudioVisualizerBar = _chunkNKWHDI4Ccjs.AgentAudioVisualizerBar; exports.AgentAudioVisualizerBarElementVariants = _chunkNKWHDI4Ccjs.AgentAudioVisualizerBarElementVariants; exports.AgentAudioVisualizerBarVariants = _chunkNKWHDI4Ccjs.AgentAudioVisualizerBarVariants; exports.normalizeVolumeBands = _chunkNKWHDI4Ccjs.normalizeVolumeBands;
|
|
@@ -5,9 +5,9 @@ import {
|
|
|
5
5
|
AgentAudioVisualizerBarElementVariants,
|
|
6
6
|
AgentAudioVisualizerBarVariants,
|
|
7
7
|
normalizeVolumeBands
|
|
8
|
-
} from "../chunk-
|
|
9
|
-
import "../chunk-GJ7S3L6R.js";
|
|
8
|
+
} from "../chunk-5OF6D3GH.js";
|
|
10
9
|
import "../chunk-G6SRSWXB.js";
|
|
10
|
+
import "../chunk-GJ7S3L6R.js";
|
|
11
11
|
export {
|
|
12
12
|
AgentAudioVisualizerBar,
|
|
13
13
|
AgentAudioVisualizerBarElementVariants,
|
|
@@ -4,7 +4,7 @@ import * as class_variance_authority_types from 'class-variance-authority/types'
|
|
|
4
4
|
import { VariantProps } from 'class-variance-authority';
|
|
5
5
|
|
|
6
6
|
declare const alertVariants: (props?: ({
|
|
7
|
-
variant?: "
|
|
7
|
+
variant?: "default" | "destructive" | "success" | "warning" | null | undefined;
|
|
8
8
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
9
9
|
interface AlertProps extends HTMLAttributes<HTMLDivElement>, VariantProps<typeof alertVariants> {
|
|
10
10
|
marginBottom?: "none" | "md";
|
|
@@ -4,7 +4,7 @@ import * as class_variance_authority_types from 'class-variance-authority/types'
|
|
|
4
4
|
import { VariantProps } from 'class-variance-authority';
|
|
5
5
|
|
|
6
6
|
declare const alertVariants: (props?: ({
|
|
7
|
-
variant?: "
|
|
7
|
+
variant?: "default" | "destructive" | "success" | "warning" | null | undefined;
|
|
8
8
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
9
9
|
interface AlertProps extends HTMLAttributes<HTMLDivElement>, VariantProps<typeof alertVariants> {
|
|
10
10
|
marginBottom?: "none" | "md";
|
|
@@ -1,35 +1,8 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
|
|
2
2
|
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var _chunk2BNEE3U6cjs = require('../chunk-2BNEE3U6.cjs');
|
|
5
|
+
require('../chunk-KWLSBTB2.cjs');
|
|
5
6
|
|
|
6
|
-
// src/primitives/anchor.tsx
|
|
7
|
-
var _reactslot = require('@radix-ui/react-slot');
|
|
8
|
-
var _react = require('react');
|
|
9
|
-
var _jsxruntime = require('react/jsx-runtime');
|
|
10
|
-
var Anchor = _react.forwardRef.call(void 0, function Anchor2({ variant = "unstyled", size = "inherit", display = "inline", underline = false, asChild = false, border = "none", weight = "normal", className, ...props }, ref) {
|
|
11
|
-
const Component = asChild ? _reactslot.Slot : "a";
|
|
12
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
13
|
-
Component,
|
|
14
|
-
{
|
|
15
|
-
ref,
|
|
16
|
-
className: _chunkKWLSBTB2cjs.cn.call(void 0,
|
|
17
|
-
variant === "text" && "font-medium text-primary underline-offset-4 hover:underline",
|
|
18
|
-
variant === "muted" && "text-muted-foreground underline underline-offset-2 hover:text-foreground",
|
|
19
|
-
variant === "foreground" && "text-foreground underline-offset-2 hover:underline",
|
|
20
|
-
size === "xs" && "text-xs",
|
|
21
|
-
size === "sm" && "text-sm",
|
|
22
|
-
display === "inline-flex" && "inline-flex items-center gap-1",
|
|
23
|
-
display === "block" && "block",
|
|
24
|
-
border === "bottom" && "border-b last:border-b-0",
|
|
25
|
-
weight === "medium" && "font-medium",
|
|
26
|
-
underline && "underline",
|
|
27
|
-
className
|
|
28
|
-
),
|
|
29
|
-
...props
|
|
30
|
-
}
|
|
31
|
-
);
|
|
32
|
-
});
|
|
33
7
|
|
|
34
|
-
|
|
35
|
-
exports.Anchor = Anchor;
|
|
8
|
+
exports.Anchor = _chunk2BNEE3U6cjs.Anchor;
|
|
@@ -1,35 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import {
|
|
3
|
-
|
|
4
|
-
} from "../chunk-
|
|
5
|
-
|
|
6
|
-
// src/primitives/anchor.tsx
|
|
7
|
-
import { Slot } from "@radix-ui/react-slot";
|
|
8
|
-
import { forwardRef } from "react";
|
|
9
|
-
import { jsx } from "react/jsx-runtime";
|
|
10
|
-
var Anchor = forwardRef(function Anchor2({ variant = "unstyled", size = "inherit", display = "inline", underline = false, asChild = false, border = "none", weight = "normal", className, ...props }, ref) {
|
|
11
|
-
const Component = asChild ? Slot : "a";
|
|
12
|
-
return /* @__PURE__ */ jsx(
|
|
13
|
-
Component,
|
|
14
|
-
{
|
|
15
|
-
ref,
|
|
16
|
-
className: cn(
|
|
17
|
-
variant === "text" && "font-medium text-primary underline-offset-4 hover:underline",
|
|
18
|
-
variant === "muted" && "text-muted-foreground underline underline-offset-2 hover:text-foreground",
|
|
19
|
-
variant === "foreground" && "text-foreground underline-offset-2 hover:underline",
|
|
20
|
-
size === "xs" && "text-xs",
|
|
21
|
-
size === "sm" && "text-sm",
|
|
22
|
-
display === "inline-flex" && "inline-flex items-center gap-1",
|
|
23
|
-
display === "block" && "block",
|
|
24
|
-
border === "bottom" && "border-b last:border-b-0",
|
|
25
|
-
weight === "medium" && "font-medium",
|
|
26
|
-
underline && "underline",
|
|
27
|
-
className
|
|
28
|
-
),
|
|
29
|
-
...props
|
|
30
|
-
}
|
|
31
|
-
);
|
|
32
|
-
});
|
|
3
|
+
Anchor
|
|
4
|
+
} from "../chunk-EXHF3QUY.js";
|
|
5
|
+
import "../chunk-G6SRSWXB.js";
|
|
33
6
|
export {
|
|
34
7
|
Anchor
|
|
35
8
|
};
|
|
@@ -3,10 +3,9 @@
|
|
|
3
3
|
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
var
|
|
6
|
+
var _chunkUKYUWSF2cjs = require('../chunk-UKYUWSF2.cjs');
|
|
7
7
|
require('../chunk-NQK5ZWC7.cjs');
|
|
8
8
|
require('../chunk-PPX2VPGI.cjs');
|
|
9
|
-
require('../chunk-R35FT53G.cjs');
|
|
10
9
|
require('../chunk-U2NES7VR.cjs');
|
|
11
10
|
require('../chunk-VGTINL5Q.cjs');
|
|
12
11
|
require('../chunk-I6GUOEBO.cjs');
|
|
@@ -14,6 +13,7 @@ require('../chunk-JDEXZGIY.cjs');
|
|
|
14
13
|
|
|
15
14
|
|
|
16
15
|
var _chunkKWLSBTB2cjs = require('../chunk-KWLSBTB2.cjs');
|
|
16
|
+
require('../chunk-R35FT53G.cjs');
|
|
17
17
|
|
|
18
18
|
// src/primitives/app-layout.tsx
|
|
19
19
|
var _jsxruntime = require('react/jsx-runtime');
|
|
@@ -36,7 +36,7 @@ function AppLayout({
|
|
|
36
36
|
}) {
|
|
37
37
|
const fixedViewport = viewport === "fixed";
|
|
38
38
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
39
|
-
|
|
39
|
+
_chunkUKYUWSF2cjs.SidebarProvider,
|
|
40
40
|
{
|
|
41
41
|
storageKey: sidebarStorageKey,
|
|
42
42
|
width: sidebarWidth,
|
|
@@ -45,7 +45,7 @@ function AppLayout({
|
|
|
45
45
|
children: [
|
|
46
46
|
sidebar,
|
|
47
47
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
48
|
-
|
|
48
|
+
_chunkUKYUWSF2cjs.SidebarInset,
|
|
49
49
|
{
|
|
50
50
|
className: _chunkKWLSBTB2cjs.cn.call(void 0,
|
|
51
51
|
"bg-muted/40",
|
|
@@ -65,7 +65,7 @@ function AppLayout({
|
|
|
65
65
|
headerClassName
|
|
66
66
|
),
|
|
67
67
|
children: [
|
|
68
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
68
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUKYUWSF2cjs.SidebarTrigger, { visibility: "mobile" }),
|
|
69
69
|
(mobileBrand || breadcrumbs || headerActions) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
70
70
|
"div",
|
|
71
71
|
{
|
|
@@ -3,10 +3,9 @@ import {
|
|
|
3
3
|
SidebarInset,
|
|
4
4
|
SidebarProvider,
|
|
5
5
|
SidebarTrigger
|
|
6
|
-
} from "../chunk-
|
|
6
|
+
} from "../chunk-5GFMSK27.js";
|
|
7
7
|
import "../chunk-HYTILYE5.js";
|
|
8
8
|
import "../chunk-G76JANB4.js";
|
|
9
|
-
import "../chunk-PIU5SSUV.js";
|
|
10
9
|
import "../chunk-ZRLUUZHK.js";
|
|
11
10
|
import "../chunk-H7TETFLB.js";
|
|
12
11
|
import "../chunk-D4ZL2OEQ.js";
|
|
@@ -14,6 +13,7 @@ import "../chunk-W326GKML.js";
|
|
|
14
13
|
import {
|
|
15
14
|
cn
|
|
16
15
|
} from "../chunk-G6SRSWXB.js";
|
|
16
|
+
import "../chunk-PIU5SSUV.js";
|
|
17
17
|
|
|
18
18
|
// src/primitives/app-layout.tsx
|
|
19
19
|
import { jsx, jsxs } from "react/jsx-runtime";
|