@epicbagel/saas-kit 1.32.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/THIRD_PARTY_NOTICES.md +6 -5
- package/dist/chunk-2BNEE3U6.cjs +36 -0
- package/dist/chunk-2DCJ2SFU.js +20 -0
- package/dist/chunk-5GFMSK27.js +489 -0
- package/dist/chunk-5PHOKJCT.cjs +42 -0
- package/dist/chunk-B54ZEKBG.cjs +63 -0
- package/dist/chunk-BB7PO2BW.js +67 -0
- package/dist/chunk-BOMVE7QO.cjs +47 -0
- package/dist/{chunk-FPOJ2NGG.js → chunk-C3VZMTVB.js} +1 -1
- package/dist/chunk-CXAFTEEP.cjs +20 -0
- package/dist/chunk-EXHF3QUY.js +36 -0
- package/dist/chunk-FYNHRHVY.cjs +47 -0
- package/dist/chunk-HTTRUJQU.cjs +60 -0
- package/dist/chunk-I3GBXIFL.cjs +67 -0
- package/dist/chunk-O3G3TVPU.js +27 -0
- package/dist/{chunk-JS6BLIWL.js → chunk-ROUWBWEQ.js} +7 -7
- package/dist/chunk-TDCVZKMX.cjs +27 -0
- package/dist/{chunk-E2UVQXBO.cjs → chunk-TP74SBRH.cjs} +6 -6
- package/dist/chunk-TUQVHPSI.js +60 -0
- package/dist/chunk-UKYUWSF2.cjs +489 -0
- package/dist/{chunk-MOJHETNO.cjs → chunk-VUMLLKWY.cjs} +5 -5
- package/dist/chunk-VWOWPNKT.js +73 -0
- package/dist/chunk-W5L6LQI3.js +42 -0
- package/dist/chunk-WMTCL463.js +47 -0
- package/dist/chunk-WTVL2FK7.js +47 -0
- package/dist/chunk-XH2I3YJ6.js +63 -0
- package/dist/chunk-Y6X6XDHE.cjs +73 -0
- package/dist/primitives/accent-theme.cjs +7 -0
- package/dist/primitives/accent-theme.d.cts +32 -0
- package/dist/primitives/accent-theme.d.ts +32 -0
- package/dist/primitives/accent-theme.js +7 -0
- package/dist/primitives/activity-feed.cjs +3 -3
- package/dist/primitives/activity-feed.js +4 -4
- package/dist/primitives/anchor.cjs +3 -30
- package/dist/primitives/anchor.js +3 -30
- package/dist/primitives/app-layout.cjs +114 -0
- package/dist/primitives/app-layout.d.cts +47 -0
- package/dist/primitives/app-layout.d.ts +47 -0
- package/dist/primitives/app-layout.js +114 -0
- package/dist/primitives/app-sidebar.cjs +52 -0
- package/dist/primitives/app-sidebar.d.cts +105 -0
- package/dist/primitives/app-sidebar.d.ts +105 -0
- package/dist/primitives/app-sidebar.js +52 -0
- package/dist/primitives/back-bar.cjs +37 -0
- package/dist/primitives/back-bar.d.cts +31 -0
- package/dist/primitives/back-bar.d.ts +31 -0
- package/dist/primitives/back-bar.js +37 -0
- package/dist/primitives/batch-action-bar.cjs +134 -0
- package/dist/primitives/batch-action-bar.d.cts +27 -0
- package/dist/primitives/batch-action-bar.d.ts +27 -0
- package/dist/primitives/batch-action-bar.js +134 -0
- package/dist/primitives/board-view.cjs +7 -7
- package/dist/primitives/board-view.js +6 -6
- package/dist/primitives/brand-mark.cjs +8 -0
- package/dist/primitives/brand-mark.d.cts +10 -0
- package/dist/primitives/brand-mark.d.ts +10 -0
- package/dist/primitives/brand-mark.js +8 -0
- 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/call-card.cjs +2 -2
- package/dist/primitives/call-card.js +3 -3
- package/dist/primitives/chat.cjs +21 -21
- package/dist/primitives/chat.js +17 -17
- package/dist/primitives/command.cjs +129 -0
- package/dist/primitives/command.d.cts +60 -0
- package/dist/primitives/command.d.ts +60 -0
- package/dist/primitives/command.js +129 -0
- package/dist/primitives/compact-list.cjs +24 -0
- package/dist/primitives/compact-list.d.cts +18 -0
- package/dist/primitives/compact-list.d.ts +18 -0
- package/dist/primitives/compact-list.js +24 -0
- package/dist/primitives/connection.cjs +2 -2
- package/dist/primitives/connection.js +2 -2
- package/dist/primitives/context-bar.cjs +57 -0
- package/dist/primitives/context-bar.d.cts +50 -0
- package/dist/primitives/context-bar.d.ts +50 -0
- package/dist/primitives/context-bar.js +57 -0
- package/dist/primitives/cycling-prompt.cjs +102 -0
- package/dist/primitives/cycling-prompt.d.cts +24 -0
- package/dist/primitives/cycling-prompt.d.ts +24 -0
- package/dist/primitives/cycling-prompt.js +102 -0
- package/dist/primitives/dialog.d.cts +9 -9
- package/dist/primitives/dialog.d.ts +9 -9
- package/dist/primitives/document-preview.cjs +5 -5
- package/dist/primitives/document-preview.js +3 -3
- package/dist/primitives/dotted-list.cjs +41 -0
- package/dist/primitives/dotted-list.d.cts +28 -0
- package/dist/primitives/dotted-list.d.ts +28 -0
- package/dist/primitives/dotted-list.js +41 -0
- package/dist/primitives/drawer.d.cts +6 -6
- package/dist/primitives/drawer.d.ts +6 -6
- package/dist/primitives/field.cjs +3 -3
- package/dist/primitives/field.js +2 -2
- package/dist/primitives/file-dropzone.cjs +3 -3
- package/dist/primitives/file-dropzone.js +2 -2
- package/dist/primitives/file-preview-internals.cjs +4 -4
- package/dist/primitives/file-preview-internals.js +3 -3
- package/dist/primitives/file-preview.cjs +12 -12
- package/dist/primitives/file-preview.js +3 -3
- package/dist/primitives/filter-bar.cjs +4 -4
- package/dist/primitives/filter-bar.js +3 -3
- package/dist/primitives/fixed-action-bar.cjs +9 -0
- package/dist/primitives/fixed-action-bar.d.cts +15 -0
- package/dist/primitives/fixed-action-bar.d.ts +15 -0
- package/dist/primitives/fixed-action-bar.js +9 -0
- package/dist/primitives/floating-action-button.cjs +65 -0
- package/dist/primitives/floating-action-button.d.cts +52 -0
- package/dist/primitives/floating-action-button.d.ts +52 -0
- package/dist/primitives/floating-action-button.js +65 -0
- package/dist/primitives/form-section.cjs +38 -0
- package/dist/primitives/form-section.d.cts +43 -0
- package/dist/primitives/form-section.d.ts +43 -0
- package/dist/primitives/form-section.js +38 -0
- package/dist/primitives/key-value-grid.cjs +52 -0
- package/dist/primitives/key-value-grid.d.cts +20 -0
- package/dist/primitives/key-value-grid.d.ts +20 -0
- package/dist/primitives/key-value-grid.js +52 -0
- package/dist/primitives/marketing-footer.cjs +34 -0
- package/dist/primitives/marketing-footer.d.cts +29 -0
- package/dist/primitives/marketing-footer.d.ts +29 -0
- package/dist/primitives/marketing-footer.js +34 -0
- package/dist/primitives/marketing-header.cjs +8 -0
- package/dist/primitives/marketing-header.d.cts +31 -0
- package/dist/primitives/marketing-header.d.ts +31 -0
- package/dist/primitives/marketing-header.js +8 -0
- package/dist/primitives/marketing-section.cjs +8 -0
- package/dist/primitives/marketing-section.d.cts +35 -0
- package/dist/primitives/marketing-section.d.ts +35 -0
- package/dist/primitives/marketing-section.js +8 -0
- package/dist/primitives/marketing-shell.cjs +28 -0
- package/dist/primitives/marketing-shell.d.cts +14 -0
- package/dist/primitives/marketing-shell.d.ts +14 -0
- package/dist/primitives/marketing-shell.js +28 -0
- package/dist/primitives/notes.cjs +3 -3
- package/dist/primitives/notes.js +3 -3
- package/dist/primitives/page-header.cjs +3 -67
- package/dist/primitives/page-header.js +3 -67
- package/dist/primitives/page-shell.cjs +3 -41
- package/dist/primitives/page-shell.js +3 -41
- package/dist/primitives/page-tabs.cjs +4 -57
- package/dist/primitives/page-tabs.js +4 -57
- package/dist/primitives/pager.cjs +85 -0
- package/dist/primitives/pager.d.cts +39 -0
- package/dist/primitives/pager.d.ts +39 -0
- package/dist/primitives/pager.js +85 -0
- package/dist/primitives/pagination.cjs +119 -0
- package/dist/primitives/pagination.d.cts +41 -0
- package/dist/primitives/pagination.d.ts +41 -0
- package/dist/primitives/pagination.js +119 -0
- package/dist/primitives/poster.cjs +11 -1
- package/dist/primitives/poster.d.cts +12 -1
- package/dist/primitives/poster.d.ts +12 -1
- package/dist/primitives/poster.js +10 -0
- package/dist/primitives/resource-list.cjs +7 -7
- package/dist/primitives/resource-list.js +6 -6
- package/dist/primitives/responsive-dialog.cjs +3 -3
- package/dist/primitives/responsive-dialog.js +2 -2
- package/dist/primitives/responsive-embed.cjs +29 -0
- package/dist/primitives/responsive-embed.d.cts +14 -0
- package/dist/primitives/responsive-embed.d.ts +14 -0
- package/dist/primitives/responsive-embed.js +29 -0
- package/dist/primitives/save-bar.cjs +91 -0
- package/dist/primitives/save-bar.d.cts +55 -0
- package/dist/primitives/save-bar.d.ts +55 -0
- package/dist/primitives/save-bar.js +91 -0
- package/dist/primitives/section.cjs +2 -2
- package/dist/primitives/section.js +3 -3
- package/dist/primitives/settings-list.cjs +10 -0
- package/dist/primitives/settings-list.d.cts +31 -0
- package/dist/primitives/settings-list.d.ts +31 -0
- package/dist/primitives/settings-list.js +10 -0
- package/dist/primitives/settings-section.cjs +34 -0
- package/dist/primitives/settings-section.d.cts +44 -0
- package/dist/primitives/settings-section.d.ts +44 -0
- package/dist/primitives/settings-section.js +34 -0
- package/dist/primitives/sheet.d.cts +9 -9
- package/dist/primitives/sheet.d.ts +9 -9
- package/dist/primitives/short-video.cjs +110 -0
- package/dist/primitives/short-video.d.cts +30 -0
- package/dist/primitives/short-video.d.ts +30 -0
- package/dist/primitives/short-video.js +110 -0
- package/dist/primitives/stats-card.cjs +46 -0
- package/dist/primitives/stats-card.d.cts +19 -0
- package/dist/primitives/stats-card.d.ts +19 -0
- package/dist/primitives/stats-card.js +46 -0
- package/dist/primitives/stats-strip.cjs +38 -0
- package/dist/primitives/stats-strip.d.cts +24 -0
- package/dist/primitives/stats-strip.d.ts +24 -0
- package/dist/primitives/stats-strip.js +38 -0
- package/dist/primitives/step-list.cjs +32 -0
- package/dist/primitives/step-list.d.cts +19 -0
- package/dist/primitives/step-list.d.ts +19 -0
- package/dist/primitives/step-list.js +32 -0
- package/dist/primitives/steps.cjs +77 -0
- package/dist/primitives/steps.d.cts +35 -0
- package/dist/primitives/steps.d.ts +35 -0
- package/dist/primitives/steps.js +77 -0
- package/dist/primitives/switch-field.cjs +3 -3
- package/dist/primitives/switch-field.js +3 -3
- package/dist/primitives/tabbed-page-header.cjs +53 -0
- package/dist/primitives/tabbed-page-header.d.cts +26 -0
- package/dist/primitives/tabbed-page-header.d.ts +26 -0
- package/dist/primitives/tabbed-page-header.js +53 -0
- package/dist/primitives/theme-selector.cjs +15 -15
- package/dist/primitives/theme-selector.js +2 -2
- package/dist/primitives/voice-dictation-button.cjs +3 -3
- package/dist/primitives/voice-dictation-button.js +2 -2
- package/dist/primitives/voice-session-controls.cjs +3 -3
- package/dist/primitives/voice-session-controls.js +2 -2
- package/dist/primitives/workflow-assistant.cjs +4 -4
- package/dist/primitives/workflow-assistant.js +2 -2
- package/package.json +322 -1
- package/src/styles/components/poster.css +42 -1
- package/dist/{chunk-PH2TV7XI.cjs → chunk-2YW5VA2V.cjs} +2 -2
- package/dist/{chunk-UFFHGKI7.js → chunk-6LB37JWO.js} +8 -8
- package/dist/{chunk-AO56ET4F.cjs → chunk-BTHYGHOH.cjs} +2 -2
- package/dist/{chunk-WHDHUYS6.js → chunk-HBRVOGLA.js} +3 -3
- package/dist/{chunk-6O3DUMF7.js → chunk-HTUYUMAH.js} +3 -3
- package/dist/{chunk-PNI354BY.cjs → chunk-JMNDFISN.cjs} +2 -2
- package/dist/{chunk-CRZ4INEJ.js → chunk-JTI4244T.js} +10 -10
- package/dist/{chunk-ZGTPNSR7.js → chunk-NNEV5RHQ.js} +3 -3
- package/dist/{chunk-TWCJMFST.js → chunk-O42YC6ZQ.js} +3 -3
- package/dist/{chunk-MW67PHAQ.cjs → chunk-S2IMM37Q.cjs} +6 -6
- package/dist/{chunk-ZJFYOXSM.cjs → chunk-SRVRNHCX.cjs} +2 -2
- package/dist/{chunk-ZLEM2SAU.cjs → chunk-Z3JJSNR5.cjs} +2 -2
|
@@ -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
|
+
};
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
Tabs,
|
|
4
|
+
TabsList,
|
|
5
|
+
TabsTrigger
|
|
6
|
+
} from "./chunk-7CRDYV3C.js";
|
|
7
|
+
import {
|
|
8
|
+
cn
|
|
9
|
+
} from "./chunk-G6SRSWXB.js";
|
|
10
|
+
|
|
11
|
+
// src/primitives/page-tabs.tsx
|
|
12
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
13
|
+
function PageTabs({
|
|
14
|
+
value,
|
|
15
|
+
onValueChange,
|
|
16
|
+
items,
|
|
17
|
+
ariaLabel,
|
|
18
|
+
layout = "equal",
|
|
19
|
+
className
|
|
20
|
+
}) {
|
|
21
|
+
if (items.length === 0) return null;
|
|
22
|
+
return /* @__PURE__ */ jsx(
|
|
23
|
+
Tabs,
|
|
24
|
+
{
|
|
25
|
+
value,
|
|
26
|
+
onValueChange: (next) => onValueChange(next),
|
|
27
|
+
className,
|
|
28
|
+
children: /* @__PURE__ */ jsx(
|
|
29
|
+
TabsList,
|
|
30
|
+
{
|
|
31
|
+
"aria-label": ariaLabel,
|
|
32
|
+
scrollable: layout === "scroll",
|
|
33
|
+
width: "full",
|
|
34
|
+
className: cn(
|
|
35
|
+
"w-full",
|
|
36
|
+
layout === "equal" ? "grid h-auto p-1.5" : "justify-start"
|
|
37
|
+
),
|
|
38
|
+
style: layout === "equal" ? { gridTemplateColumns: `repeat(${items.length}, minmax(0, 1fr))` } : void 0,
|
|
39
|
+
children: items.map((item) => /* @__PURE__ */ jsxs(
|
|
40
|
+
TabsTrigger,
|
|
41
|
+
{
|
|
42
|
+
value: item.value,
|
|
43
|
+
className: cn(
|
|
44
|
+
layout === "equal" && "min-h-11 gap-2 text-sm sm:text-base",
|
|
45
|
+
layout === "scroll" && "shrink-0 gap-2"
|
|
46
|
+
),
|
|
47
|
+
children: [
|
|
48
|
+
item.icon,
|
|
49
|
+
/* @__PURE__ */ jsx("span", { className: "truncate", children: item.label }),
|
|
50
|
+
item.badge && /* @__PURE__ */ jsx("span", { className: "shrink-0", children: item.badge })
|
|
51
|
+
]
|
|
52
|
+
},
|
|
53
|
+
item.value
|
|
54
|
+
))
|
|
55
|
+
}
|
|
56
|
+
)
|
|
57
|
+
}
|
|
58
|
+
);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
export {
|
|
62
|
+
PageTabs
|
|
63
|
+
};
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
var _chunkKWLSBTB2cjs = require('./chunk-KWLSBTB2.cjs');
|
|
5
|
+
|
|
6
|
+
// src/primitives/page-header.tsx
|
|
7
|
+
var _jsxruntime = require('react/jsx-runtime');
|
|
8
|
+
function PageHeader({
|
|
9
|
+
eyebrow,
|
|
10
|
+
title,
|
|
11
|
+
description,
|
|
12
|
+
children,
|
|
13
|
+
size = "default",
|
|
14
|
+
actionsLayout = "inline",
|
|
15
|
+
spacing = "default",
|
|
16
|
+
responsiveVisibility = "always",
|
|
17
|
+
className
|
|
18
|
+
}) {
|
|
19
|
+
const display = size === "display";
|
|
20
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
21
|
+
"div",
|
|
22
|
+
{
|
|
23
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0,
|
|
24
|
+
"flex items-start justify-between gap-4",
|
|
25
|
+
spacing === "default" && (display ? "mb-8 md:mb-10" : "mb-6"),
|
|
26
|
+
spacing === "compact" && "mb-4",
|
|
27
|
+
display && "flex-col gap-6 sm:flex-row sm:gap-4",
|
|
28
|
+
actionsLayout === "responsive" && "flex-wrap gap-y-3 [&>div:last-child]:w-full [&>div:last-child]:justify-end sm:[&>div:last-child]:w-auto",
|
|
29
|
+
responsiveVisibility === "desktop" && "hidden md:flex",
|
|
30
|
+
className
|
|
31
|
+
),
|
|
32
|
+
children: [
|
|
33
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: _chunkKWLSBTB2cjs.cn.call(void 0, "min-w-0 flex-1", display ? "space-y-2" : "space-y-1.5"), children: [
|
|
34
|
+
eyebrow && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "font-mono text-xs uppercase tracking-widest text-muted-foreground", children: eyebrow }),
|
|
35
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
36
|
+
"h1",
|
|
37
|
+
{
|
|
38
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0,
|
|
39
|
+
"font-semibold tracking-tight",
|
|
40
|
+
size === "display" ? "text-4xl leading-none md:text-6xl md:leading-none" : "text-2xl md:text-3xl"
|
|
41
|
+
),
|
|
42
|
+
children: title
|
|
43
|
+
}
|
|
44
|
+
),
|
|
45
|
+
description && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
46
|
+
"p",
|
|
47
|
+
{
|
|
48
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0,
|
|
49
|
+
"max-w-[72ch] text-muted-foreground",
|
|
50
|
+
size === "display" ? "text-base md:text-lg" : "text-sm"
|
|
51
|
+
),
|
|
52
|
+
children: description
|
|
53
|
+
}
|
|
54
|
+
)
|
|
55
|
+
] }),
|
|
56
|
+
children && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
57
|
+
"div",
|
|
58
|
+
{
|
|
59
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0,
|
|
60
|
+
"flex shrink-0 items-center gap-2",
|
|
61
|
+
size === "display" ? "w-full flex-wrap sm:mt-0.5 sm:w-auto sm:flex-nowrap md:mt-1" : "mt-1"
|
|
62
|
+
),
|
|
63
|
+
children
|
|
64
|
+
}
|
|
65
|
+
)
|
|
66
|
+
]
|
|
67
|
+
}
|
|
68
|
+
);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
exports.PageHeader = PageHeader;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
|
|
4
|
+
interface AccentThemeColours {
|
|
5
|
+
light?: string | null;
|
|
6
|
+
dark?: string | null;
|
|
7
|
+
}
|
|
8
|
+
interface AccentThemeProps {
|
|
9
|
+
colours?: AccentThemeColours | null;
|
|
10
|
+
/**
|
|
11
|
+
* `region` (default) accents only the wrapped content. Use `document` once
|
|
12
|
+
* at the application root so body portals inherit the same accent too.
|
|
13
|
+
*/
|
|
14
|
+
scope?: "region" | "document";
|
|
15
|
+
/**
|
|
16
|
+
* Apply the accent only while the document is in this palette
|
|
17
|
+
* (`data-theme` on `<html>`), so a palette someone picks keeps its own
|
|
18
|
+
* accent. Leave it off to apply the accent in every palette.
|
|
19
|
+
*/
|
|
20
|
+
palette?: string;
|
|
21
|
+
children: ReactNode;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Scopes the UI-kit accent tokens to a region or document without changing its neutral
|
|
25
|
+
* surfaces or typography. Light and dark values are selected entirely in CSS,
|
|
26
|
+
* so switching themes does not require app-owned listeners or render state,
|
|
27
|
+
* and with `palette` neither does switching palettes: the wrapper stays, and
|
|
28
|
+
* only the rules stop matching.
|
|
29
|
+
*/
|
|
30
|
+
declare function AccentTheme({ colours, palette, scope: target, children }: AccentThemeProps): react_jsx_runtime.JSX.Element;
|
|
31
|
+
|
|
32
|
+
export { AccentTheme, type AccentThemeColours, type AccentThemeProps };
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
|
|
4
|
+
interface AccentThemeColours {
|
|
5
|
+
light?: string | null;
|
|
6
|
+
dark?: string | null;
|
|
7
|
+
}
|
|
8
|
+
interface AccentThemeProps {
|
|
9
|
+
colours?: AccentThemeColours | null;
|
|
10
|
+
/**
|
|
11
|
+
* `region` (default) accents only the wrapped content. Use `document` once
|
|
12
|
+
* at the application root so body portals inherit the same accent too.
|
|
13
|
+
*/
|
|
14
|
+
scope?: "region" | "document";
|
|
15
|
+
/**
|
|
16
|
+
* Apply the accent only while the document is in this palette
|
|
17
|
+
* (`data-theme` on `<html>`), so a palette someone picks keeps its own
|
|
18
|
+
* accent. Leave it off to apply the accent in every palette.
|
|
19
|
+
*/
|
|
20
|
+
palette?: string;
|
|
21
|
+
children: ReactNode;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Scopes the UI-kit accent tokens to a region or document without changing its neutral
|
|
25
|
+
* surfaces or typography. Light and dark values are selected entirely in CSS,
|
|
26
|
+
* so switching themes does not require app-owned listeners or render state,
|
|
27
|
+
* and with `palette` neither does switching palettes: the wrapper stays, and
|
|
28
|
+
* only the rules stop matching.
|
|
29
|
+
*/
|
|
30
|
+
declare function AccentTheme({ colours, palette, scope: target, children }: AccentThemeProps): react_jsx_runtime.JSX.Element;
|
|
31
|
+
|
|
32
|
+
export { AccentTheme, type AccentThemeColours, type AccentThemeProps };
|
|
@@ -4,13 +4,13 @@
|
|
|
4
4
|
var _chunkPPYHNJMVcjs = require('../chunk-PPYHNJMV.cjs');
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
var _chunkPQUSJEXLcjs = require('../chunk-PQUSJEXL.cjs');
|
|
8
|
-
require('../chunk-VGTINL5Q.cjs');
|
|
9
7
|
|
|
10
8
|
|
|
9
|
+
var _chunkWABCLRBRcjs = require('../chunk-WABCLRBR.cjs');
|
|
11
10
|
|
|
12
11
|
|
|
13
|
-
var
|
|
12
|
+
var _chunkPQUSJEXLcjs = require('../chunk-PQUSJEXL.cjs');
|
|
13
|
+
require('../chunk-VGTINL5Q.cjs');
|
|
14
14
|
require('../chunk-I6GUOEBO.cjs');
|
|
15
15
|
|
|
16
16
|
|
|
@@ -2,15 +2,15 @@
|
|
|
2
2
|
import {
|
|
3
3
|
ChipTabs
|
|
4
4
|
} from "../chunk-MP64UGRF.js";
|
|
5
|
-
import {
|
|
6
|
-
Input
|
|
7
|
-
} from "../chunk-QMA3WVB7.js";
|
|
8
|
-
import "../chunk-H7TETFLB.js";
|
|
9
5
|
import {
|
|
10
6
|
Avatar,
|
|
11
7
|
AvatarFallback,
|
|
12
8
|
AvatarImage
|
|
13
9
|
} from "../chunk-3OWGL4Q2.js";
|
|
10
|
+
import {
|
|
11
|
+
Input
|
|
12
|
+
} from "../chunk-QMA3WVB7.js";
|
|
13
|
+
import "../chunk-H7TETFLB.js";
|
|
14
14
|
import "../chunk-D4ZL2OEQ.js";
|
|
15
15
|
import {
|
|
16
16
|
EmptyState
|
|
@@ -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
|
};
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
var _chunkUKYUWSF2cjs = require('../chunk-UKYUWSF2.cjs');
|
|
7
|
+
require('../chunk-NQK5ZWC7.cjs');
|
|
8
|
+
require('../chunk-PPX2VPGI.cjs');
|
|
9
|
+
require('../chunk-U2NES7VR.cjs');
|
|
10
|
+
require('../chunk-VGTINL5Q.cjs');
|
|
11
|
+
require('../chunk-I6GUOEBO.cjs');
|
|
12
|
+
require('../chunk-JDEXZGIY.cjs');
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
var _chunkKWLSBTB2cjs = require('../chunk-KWLSBTB2.cjs');
|
|
16
|
+
require('../chunk-R35FT53G.cjs');
|
|
17
|
+
|
|
18
|
+
// src/primitives/app-layout.tsx
|
|
19
|
+
var _jsxruntime = require('react/jsx-runtime');
|
|
20
|
+
function AppLayout({
|
|
21
|
+
sidebar,
|
|
22
|
+
breadcrumbs,
|
|
23
|
+
mobileBrand,
|
|
24
|
+
children,
|
|
25
|
+
headerActions,
|
|
26
|
+
headerContent,
|
|
27
|
+
className,
|
|
28
|
+
headerClassName,
|
|
29
|
+
frostedHeader = false,
|
|
30
|
+
contentClassName,
|
|
31
|
+
sidebarStorageKey,
|
|
32
|
+
sidebarWidth = "default",
|
|
33
|
+
chromeSurface = "background",
|
|
34
|
+
contentWidth = "contained",
|
|
35
|
+
viewport = "document"
|
|
36
|
+
}) {
|
|
37
|
+
const fixedViewport = viewport === "fixed";
|
|
38
|
+
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
39
|
+
_chunkUKYUWSF2cjs.SidebarProvider,
|
|
40
|
+
{
|
|
41
|
+
storageKey: sidebarStorageKey,
|
|
42
|
+
width: sidebarWidth,
|
|
43
|
+
surface: chromeSurface,
|
|
44
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0, fixedViewport && "h-svh min-h-0 overflow-hidden", className),
|
|
45
|
+
children: [
|
|
46
|
+
sidebar,
|
|
47
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
48
|
+
_chunkUKYUWSF2cjs.SidebarInset,
|
|
49
|
+
{
|
|
50
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0,
|
|
51
|
+
"bg-muted/40",
|
|
52
|
+
fixedViewport && "h-svh min-h-0 overflow-hidden"
|
|
53
|
+
),
|
|
54
|
+
children: [
|
|
55
|
+
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
56
|
+
"header",
|
|
57
|
+
{
|
|
58
|
+
"data-slot": "app-layout-header",
|
|
59
|
+
"data-surface": chromeSurface,
|
|
60
|
+
"data-frosted-surface": frostedHeader ? chromeSurface : void 0,
|
|
61
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0,
|
|
62
|
+
"sticky top-0 z-30 flex min-h-16 shrink-0 items-center gap-2 border-b border-border px-3 md:px-4",
|
|
63
|
+
!frostedHeader && "backdrop-blur-sm",
|
|
64
|
+
!frostedHeader && (chromeSurface === "card" ? "bg-card supports-[backdrop-filter]:bg-card" : "bg-background/85 supports-[backdrop-filter]:bg-background/75"),
|
|
65
|
+
headerClassName
|
|
66
|
+
),
|
|
67
|
+
children: [
|
|
68
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkUKYUWSF2cjs.SidebarTrigger, { visibility: "mobile" }),
|
|
69
|
+
(mobileBrand || breadcrumbs || headerActions) && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
70
|
+
"div",
|
|
71
|
+
{
|
|
72
|
+
"data-slot": "app-layout-header-primary",
|
|
73
|
+
className: "flex min-w-0 flex-1 items-center gap-6",
|
|
74
|
+
children: [
|
|
75
|
+
mobileBrand && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "flex min-w-0 flex-1 items-center md:hidden", children: mobileBrand }),
|
|
76
|
+
breadcrumbs && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "hidden min-w-0 flex-1 items-center md:flex", children: breadcrumbs }),
|
|
77
|
+
headerActions && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
78
|
+
"div",
|
|
79
|
+
{
|
|
80
|
+
"data-slot": "app-layout-header-actions",
|
|
81
|
+
className: "flex shrink-0 items-center gap-3",
|
|
82
|
+
children: headerActions
|
|
83
|
+
}
|
|
84
|
+
)
|
|
85
|
+
]
|
|
86
|
+
}
|
|
87
|
+
),
|
|
88
|
+
headerContent && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { "data-slot": "app-layout-header-content", className: "ml-auto flex shrink-0 items-center", children: headerContent })
|
|
89
|
+
]
|
|
90
|
+
}
|
|
91
|
+
),
|
|
92
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
93
|
+
"div",
|
|
94
|
+
{
|
|
95
|
+
"data-slot": "app-layout-content",
|
|
96
|
+
className: _chunkKWLSBTB2cjs.cn.call(void 0,
|
|
97
|
+
"mx-auto flex w-full flex-1 flex-col bg-background",
|
|
98
|
+
contentWidth === "contained" ? "max-w-6xl border-x border-border" : "max-w-none",
|
|
99
|
+
fixedViewport && "min-h-0 overflow-hidden",
|
|
100
|
+
contentClassName
|
|
101
|
+
),
|
|
102
|
+
children
|
|
103
|
+
}
|
|
104
|
+
)
|
|
105
|
+
]
|
|
106
|
+
}
|
|
107
|
+
)
|
|
108
|
+
]
|
|
109
|
+
}
|
|
110
|
+
);
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
exports.AppLayout = AppLayout;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
import { SidebarProviderProps } from './app-sidebar.cjs';
|
|
4
|
+
import './button.cjs';
|
|
5
|
+
import 'class-variance-authority/types';
|
|
6
|
+
import 'class-variance-authority';
|
|
7
|
+
import './count-badge.cjs';
|
|
8
|
+
import './badge.cjs';
|
|
9
|
+
import './separator.cjs';
|
|
10
|
+
import '@radix-ui/react-separator';
|
|
11
|
+
import './sheet.cjs';
|
|
12
|
+
import '@radix-ui/react-dialog';
|
|
13
|
+
|
|
14
|
+
interface AppLayoutProps {
|
|
15
|
+
sidebar: ReactNode;
|
|
16
|
+
breadcrumbs?: ReactNode;
|
|
17
|
+
mobileBrand?: ReactNode;
|
|
18
|
+
children: ReactNode;
|
|
19
|
+
/** Primary page actions shown beside the current title. Spacing is owned by the shell. */
|
|
20
|
+
headerActions?: ReactNode;
|
|
21
|
+
headerContent?: ReactNode;
|
|
22
|
+
className?: string;
|
|
23
|
+
headerClassName?: string;
|
|
24
|
+
/** Translucent, blurred header with a solid fallback. Does not change the sidebar or scrolling. */
|
|
25
|
+
frostedHeader?: boolean;
|
|
26
|
+
contentClassName?: string;
|
|
27
|
+
sidebarStorageKey?: SidebarProviderProps["storageKey"];
|
|
28
|
+
sidebarWidth?: SidebarProviderProps["width"];
|
|
29
|
+
/** Surface shared by the application header and responsive navigation chrome. */
|
|
30
|
+
chromeSurface?: SidebarProviderProps["surface"];
|
|
31
|
+
/** `full` lets workspace-style products own the full inset rather than a bordered page column. */
|
|
32
|
+
contentWidth?: "contained" | "full";
|
|
33
|
+
/**
|
|
34
|
+
* `fixed` locks the shell to the viewport so a child workspace can own its
|
|
35
|
+
* scrolling region (for example, a chat transcript with a pinned composer).
|
|
36
|
+
* Normal pages keep document scrolling by default.
|
|
37
|
+
*/
|
|
38
|
+
viewport?: "document" | "fixed";
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Responsive application shell for products whose navigation has outgrown a
|
|
42
|
+
* horizontal header. Navigation is persistent/collapsible on desktop and is
|
|
43
|
+
* exposed as a sheet from the same trigger on mobile.
|
|
44
|
+
*/
|
|
45
|
+
declare function AppLayout({ sidebar, breadcrumbs, mobileBrand, children, headerActions, headerContent, className, headerClassName, frostedHeader, contentClassName, sidebarStorageKey, sidebarWidth, chromeSurface, contentWidth, viewport, }: AppLayoutProps): react_jsx_runtime.JSX.Element;
|
|
46
|
+
|
|
47
|
+
export { AppLayout, type AppLayoutProps };
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
import { SidebarProviderProps } from './app-sidebar.js';
|
|
4
|
+
import './button.js';
|
|
5
|
+
import 'class-variance-authority/types';
|
|
6
|
+
import 'class-variance-authority';
|
|
7
|
+
import './count-badge.js';
|
|
8
|
+
import './badge.js';
|
|
9
|
+
import './separator.js';
|
|
10
|
+
import '@radix-ui/react-separator';
|
|
11
|
+
import './sheet.js';
|
|
12
|
+
import '@radix-ui/react-dialog';
|
|
13
|
+
|
|
14
|
+
interface AppLayoutProps {
|
|
15
|
+
sidebar: ReactNode;
|
|
16
|
+
breadcrumbs?: ReactNode;
|
|
17
|
+
mobileBrand?: ReactNode;
|
|
18
|
+
children: ReactNode;
|
|
19
|
+
/** Primary page actions shown beside the current title. Spacing is owned by the shell. */
|
|
20
|
+
headerActions?: ReactNode;
|
|
21
|
+
headerContent?: ReactNode;
|
|
22
|
+
className?: string;
|
|
23
|
+
headerClassName?: string;
|
|
24
|
+
/** Translucent, blurred header with a solid fallback. Does not change the sidebar or scrolling. */
|
|
25
|
+
frostedHeader?: boolean;
|
|
26
|
+
contentClassName?: string;
|
|
27
|
+
sidebarStorageKey?: SidebarProviderProps["storageKey"];
|
|
28
|
+
sidebarWidth?: SidebarProviderProps["width"];
|
|
29
|
+
/** Surface shared by the application header and responsive navigation chrome. */
|
|
30
|
+
chromeSurface?: SidebarProviderProps["surface"];
|
|
31
|
+
/** `full` lets workspace-style products own the full inset rather than a bordered page column. */
|
|
32
|
+
contentWidth?: "contained" | "full";
|
|
33
|
+
/**
|
|
34
|
+
* `fixed` locks the shell to the viewport so a child workspace can own its
|
|
35
|
+
* scrolling region (for example, a chat transcript with a pinned composer).
|
|
36
|
+
* Normal pages keep document scrolling by default.
|
|
37
|
+
*/
|
|
38
|
+
viewport?: "document" | "fixed";
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Responsive application shell for products whose navigation has outgrown a
|
|
42
|
+
* horizontal header. Navigation is persistent/collapsible on desktop and is
|
|
43
|
+
* exposed as a sheet from the same trigger on mobile.
|
|
44
|
+
*/
|
|
45
|
+
declare function AppLayout({ sidebar, breadcrumbs, mobileBrand, children, headerActions, headerContent, className, headerClassName, frostedHeader, contentClassName, sidebarStorageKey, sidebarWidth, chromeSurface, contentWidth, viewport, }: AppLayoutProps): react_jsx_runtime.JSX.Element;
|
|
46
|
+
|
|
47
|
+
export { AppLayout, type AppLayoutProps };
|