@loykin/designkit 0.0.1-dev.3 → 0.0.1-dev.4
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 +47 -14
- package/dist/index.cjs +187 -109
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +43 -5
- package/dist/index.d.ts +43 -5
- package/dist/index.js +187 -111
- package/dist/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -7,7 +7,7 @@ import { useRender } from '@base-ui/react/use-render';
|
|
|
7
7
|
import { cva } from 'class-variance-authority';
|
|
8
8
|
import { Button as Button$1 } from '@base-ui/react/button';
|
|
9
9
|
import { Checkbox as Checkbox$1 } from '@base-ui/react/checkbox';
|
|
10
|
-
import { GripHorizontal, CheckIcon, ChevronRightIcon, ChevronDownIcon, ChevronUpIcon, XIcon, PanelLeftIcon, SlidersHorizontal, Check } from 'lucide-react';
|
|
10
|
+
import { GripHorizontal, CheckIcon, ChevronRightIcon, ChevronDownIcon, ChevronUpIcon, XIcon, PanelLeftIcon, SlidersHorizontal, ChevronLeft, Check } from 'lucide-react';
|
|
11
11
|
import { Menu } from '@base-ui/react/menu';
|
|
12
12
|
import { Input as Input$1 } from '@base-ui/react/input';
|
|
13
13
|
import { Popover as Popover$1 } from '@base-ui/react/popover';
|
|
@@ -1735,6 +1735,9 @@ function SidebarMenuSubButton({
|
|
|
1735
1735
|
}
|
|
1736
1736
|
});
|
|
1737
1737
|
}
|
|
1738
|
+
function useSidebarOptional() {
|
|
1739
|
+
return React2.useContext(SidebarContext);
|
|
1740
|
+
}
|
|
1738
1741
|
function EmptyState({ icon: Icon, title, description, action, className }) {
|
|
1739
1742
|
return /* @__PURE__ */ jsxs(
|
|
1740
1743
|
"div",
|
|
@@ -1989,10 +1992,10 @@ function Header({ children, className }) {
|
|
|
1989
1992
|
{
|
|
1990
1993
|
"data-slot": "data-page-header",
|
|
1991
1994
|
className: cn(
|
|
1992
|
-
"shrink-0 px-[var(--
|
|
1995
|
+
"shrink-0 px-[var(--designkit-page-padding-x)] pt-[var(--designkit-page-padding-y)]",
|
|
1993
1996
|
className
|
|
1994
1997
|
),
|
|
1995
|
-
children: /* @__PURE__ */ jsx("div", { className: "flex items-center justify-between gap-[var(--
|
|
1998
|
+
children: /* @__PURE__ */ jsx("div", { className: "flex flex-wrap items-center justify-between gap-[var(--designkit-panel-gap)]", children })
|
|
1996
1999
|
}
|
|
1997
2000
|
);
|
|
1998
2001
|
}
|
|
@@ -2010,7 +2013,7 @@ function Actions({ children, className }) {
|
|
|
2010
2013
|
"div",
|
|
2011
2014
|
{
|
|
2012
2015
|
"data-slot": "data-page-actions",
|
|
2013
|
-
className: cn("flex shrink-0 items-center gap-[calc(var(--
|
|
2016
|
+
className: cn("flex shrink-0 items-center gap-[calc(var(--designkit-panel-gap)*0.5)]", className),
|
|
2014
2017
|
children
|
|
2015
2018
|
}
|
|
2016
2019
|
);
|
|
@@ -2048,8 +2051,8 @@ function Content({ children, className, padding = "default" }) {
|
|
|
2048
2051
|
"data-slot": "data-page-content",
|
|
2049
2052
|
className: cn(
|
|
2050
2053
|
"min-h-0 flex-1 overflow-auto",
|
|
2051
|
-
padding === "default" && "px-[var(--
|
|
2052
|
-
padding === "compact" && "p-[calc(var(--
|
|
2054
|
+
padding === "default" && "px-[var(--designkit-page-padding-x)] pb-[var(--designkit-page-padding-y)] pt-[var(--designkit-page-padding-y)]",
|
|
2055
|
+
padding === "compact" && "p-[calc(var(--designkit-page-padding-y)*0.875)]",
|
|
2053
2056
|
padding === "none" && "p-0",
|
|
2054
2057
|
className
|
|
2055
2058
|
),
|
|
@@ -2086,7 +2089,7 @@ function GroupHeader({
|
|
|
2086
2089
|
{
|
|
2087
2090
|
"data-slot": "data-page-group-header",
|
|
2088
2091
|
className: cn(
|
|
2089
|
-
"flex items-start justify-between gap-4 px-0 pb-[calc(var(--
|
|
2092
|
+
"flex items-start justify-between gap-4 px-0 pb-[calc(var(--designkit-panel-gap)*0.75)]",
|
|
2090
2093
|
className
|
|
2091
2094
|
),
|
|
2092
2095
|
children: [
|
|
@@ -2107,7 +2110,7 @@ function GroupToolbar({ children, className }) {
|
|
|
2107
2110
|
{
|
|
2108
2111
|
"data-slot": "data-page-group-toolbar",
|
|
2109
2112
|
className: cn(
|
|
2110
|
-
"flex min-h-[var(--
|
|
2113
|
+
"flex min-h-[var(--designkit-toolbar-height)] items-center justify-between gap-[calc(var(--designkit-panel-gap)*0.75)] pb-[calc(var(--designkit-panel-gap)*0.75)]",
|
|
2111
2114
|
className
|
|
2112
2115
|
),
|
|
2113
2116
|
children
|
|
@@ -2188,15 +2191,15 @@ function DashboardBodyTemplate({
|
|
|
2188
2191
|
}) {
|
|
2189
2192
|
return /* @__PURE__ */ jsxs(DataPage, { className: cn("layout-dashboard", className), style: theme, children: [
|
|
2190
2193
|
topBar && /* @__PURE__ */ jsx("div", { className: "shrink-0", children: topBar }),
|
|
2191
|
-
(title || toolbar) && /* @__PURE__ */ jsx("header", { className: "shrink-0 border-b px-(--
|
|
2194
|
+
(title || toolbar) && /* @__PURE__ */ jsx("header", { className: "shrink-0 border-b px-(--designkit-page-padding-x) py-(--designkit-page-padding-y)", children: /* @__PURE__ */ jsxs("div", { className: "flex flex-wrap items-center justify-between gap-3", children: [
|
|
2192
2195
|
/* @__PURE__ */ jsxs("div", { className: "min-w-0", children: [
|
|
2193
2196
|
title && /* @__PURE__ */ jsx("h1", { className: "text-sm font-semibold truncate", children: title }),
|
|
2194
2197
|
description && /* @__PURE__ */ jsx("p", { className: "mt-0.5 text-xs text-muted-foreground", children: description })
|
|
2195
2198
|
] }),
|
|
2196
2199
|
toolbar && /* @__PURE__ */ jsx("div", { className: "flex items-center gap-2 shrink-0", children: toolbar })
|
|
2197
2200
|
] }) }),
|
|
2198
|
-
variableBar && /* @__PURE__ */ jsx("div", { className: "shrink-0 flex flex-wrap items-center gap-2 px-(--
|
|
2199
|
-
/* @__PURE__ */ jsx("div", { className: cn("flex-1 min-h-0 overflow-auto px-[calc(var(--
|
|
2201
|
+
variableBar && /* @__PURE__ */ jsx("div", { className: "shrink-0 flex flex-wrap items-center gap-2 px-(--designkit-page-padding-x) py-1.5", children: variableBar }),
|
|
2202
|
+
/* @__PURE__ */ jsx("div", { className: cn("flex-1 min-h-0 overflow-auto px-[calc(var(--designkit-page-padding-x)-0.5rem)] pt-0 pb-(--designkit-page-padding-y)", contentClassName), children })
|
|
2200
2203
|
] });
|
|
2201
2204
|
}
|
|
2202
2205
|
function clamp(value, min, max) {
|
|
@@ -2272,7 +2275,9 @@ function WorkbenchBodyTemplate({
|
|
|
2272
2275
|
leftPaneClassName,
|
|
2273
2276
|
mainPaneClassName,
|
|
2274
2277
|
rightPaneClassName,
|
|
2275
|
-
bottomPaneClassName
|
|
2278
|
+
bottomPaneClassName,
|
|
2279
|
+
leftPaneLabel = "Panel",
|
|
2280
|
+
rightPaneLabel = "Inspector"
|
|
2276
2281
|
}) {
|
|
2277
2282
|
const [leftWidth, setLeftWidth] = useState(leftPaneWidth);
|
|
2278
2283
|
const [rightWidth, setRightWidth] = useState(rightPaneWidth);
|
|
@@ -2304,7 +2309,7 @@ function WorkbenchBodyTemplate({
|
|
|
2304
2309
|
const showBottomPane = bottomPane && !bottomPaneCollapsed;
|
|
2305
2310
|
return /* @__PURE__ */ jsxs(DataPage, { className: cn("layout-workbench", className), style: theme, children: [
|
|
2306
2311
|
topBar && /* @__PURE__ */ jsx("div", { className: "shrink-0", children: topBar }),
|
|
2307
|
-
showHeader && /* @__PURE__ */ jsx("header", { className: "shrink-0 border-b px-(--
|
|
2312
|
+
showHeader && /* @__PURE__ */ jsx("header", { className: "shrink-0 border-b px-(--designkit-page-padding-x) py-[calc(var(--designkit-page-padding-y)*0.75)]", children: /* @__PURE__ */ jsxs("div", { className: "flex min-h-[var(--designkit-toolbar-height)] items-center justify-between gap-3", children: [
|
|
2308
2313
|
/* @__PURE__ */ jsxs("div", { className: "min-w-0", children: [
|
|
2309
2314
|
title && /* @__PURE__ */ jsx("h1", { className: "truncate text-sm font-semibold", children: title }),
|
|
2310
2315
|
description && /* @__PURE__ */ jsx("p", { className: "mt-0.5 truncate text-xs text-muted-foreground", children: description })
|
|
@@ -2314,12 +2319,28 @@ function WorkbenchBodyTemplate({
|
|
|
2314
2319
|
actions
|
|
2315
2320
|
] })
|
|
2316
2321
|
] }) }),
|
|
2322
|
+
(showLeftPane || showRightPane) && /* @__PURE__ */ jsxs("div", { className: "flex shrink-0 items-center gap-1.5 border-b px-2 py-1.5 md:hidden", children: [
|
|
2323
|
+
showLeftPane && /* @__PURE__ */ jsxs(Sheet, { children: [
|
|
2324
|
+
/* @__PURE__ */ jsx(SheetTrigger, { render: /* @__PURE__ */ jsx(Button, { variant: "outline", size: "sm" }), children: leftPaneLabel }),
|
|
2325
|
+
/* @__PURE__ */ jsxs(SheetContent, { side: "left", className: "flex flex-col gap-0 p-0", children: [
|
|
2326
|
+
/* @__PURE__ */ jsx(SheetHeader, { className: "shrink-0 border-b px-4 py-3", children: /* @__PURE__ */ jsx(SheetTitle, { children: leftPaneLabel }) }),
|
|
2327
|
+
/* @__PURE__ */ jsx(ScrollArea, { className: "flex-1", children: leftPane })
|
|
2328
|
+
] })
|
|
2329
|
+
] }),
|
|
2330
|
+
showRightPane && /* @__PURE__ */ jsxs(Sheet, { children: [
|
|
2331
|
+
/* @__PURE__ */ jsx(SheetTrigger, { render: /* @__PURE__ */ jsx(Button, { variant: "outline", size: "sm" }), children: rightPaneLabel }),
|
|
2332
|
+
/* @__PURE__ */ jsxs(SheetContent, { side: "right", className: "flex flex-col gap-0 p-0", children: [
|
|
2333
|
+
/* @__PURE__ */ jsx(SheetHeader, { className: "shrink-0 border-b px-4 py-3", children: /* @__PURE__ */ jsx(SheetTitle, { children: rightPaneLabel }) }),
|
|
2334
|
+
/* @__PURE__ */ jsx(ScrollArea, { className: "flex-1", children: rightPane })
|
|
2335
|
+
] })
|
|
2336
|
+
] })
|
|
2337
|
+
] }),
|
|
2317
2338
|
/* @__PURE__ */ jsxs("div", { className: cn("flex min-h-0 flex-1 overflow-hidden", contentClassName), children: [
|
|
2318
2339
|
showLeftPane && /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
2319
2340
|
/* @__PURE__ */ jsx(
|
|
2320
2341
|
"aside",
|
|
2321
2342
|
{
|
|
2322
|
-
className: cn("min-h-0 shrink-0 overflow-hidden border-r bg-card/45", leftPaneClassName),
|
|
2343
|
+
className: cn("hidden min-h-0 shrink-0 overflow-hidden border-r bg-card/45 md:flex md:flex-col", leftPaneClassName),
|
|
2323
2344
|
style: { width: leftWidth },
|
|
2324
2345
|
children: leftPane
|
|
2325
2346
|
}
|
|
@@ -2328,6 +2349,7 @@ function WorkbenchBodyTemplate({
|
|
|
2328
2349
|
ResizeHandle,
|
|
2329
2350
|
{
|
|
2330
2351
|
axis: "x",
|
|
2352
|
+
className: "hidden md:flex",
|
|
2331
2353
|
onPointerDown: (event) => {
|
|
2332
2354
|
const start = leftWidth;
|
|
2333
2355
|
startResize(event, "x", (delta) => {
|
|
@@ -2344,6 +2366,7 @@ function WorkbenchBodyTemplate({
|
|
|
2344
2366
|
ResizeHandle,
|
|
2345
2367
|
{
|
|
2346
2368
|
axis: "y",
|
|
2369
|
+
className: "hidden md:flex",
|
|
2347
2370
|
onPointerDown: (event) => {
|
|
2348
2371
|
const start = bottomHeight;
|
|
2349
2372
|
startResize(event, "y", (delta) => {
|
|
@@ -2355,7 +2378,7 @@ function WorkbenchBodyTemplate({
|
|
|
2355
2378
|
/* @__PURE__ */ jsx(
|
|
2356
2379
|
"section",
|
|
2357
2380
|
{
|
|
2358
|
-
className: cn("min-h-0 shrink-0 overflow-
|
|
2381
|
+
className: cn("min-h-0 shrink-0 overflow-auto border-t bg-card/40 md:overflow-hidden", bottomPaneClassName),
|
|
2359
2382
|
style: { height: bottomHeight },
|
|
2360
2383
|
children: bottomPane
|
|
2361
2384
|
}
|
|
@@ -2367,6 +2390,7 @@ function WorkbenchBodyTemplate({
|
|
|
2367
2390
|
ResizeHandle,
|
|
2368
2391
|
{
|
|
2369
2392
|
axis: "x",
|
|
2393
|
+
className: "hidden md:flex",
|
|
2370
2394
|
onPointerDown: (event) => {
|
|
2371
2395
|
const start = rightWidth;
|
|
2372
2396
|
startResize(event, "x", (delta) => {
|
|
@@ -2378,7 +2402,7 @@ function WorkbenchBodyTemplate({
|
|
|
2378
2402
|
/* @__PURE__ */ jsx(
|
|
2379
2403
|
"aside",
|
|
2380
2404
|
{
|
|
2381
|
-
className: cn("min-h-0 shrink-0 overflow-hidden border-l bg-card/45", rightPaneClassName),
|
|
2405
|
+
className: cn("hidden min-h-0 shrink-0 overflow-hidden border-l bg-card/45 md:flex md:flex-col", rightPaneClassName),
|
|
2382
2406
|
style: { width: rightWidth },
|
|
2383
2407
|
children: rightPane
|
|
2384
2408
|
}
|
|
@@ -2433,13 +2457,13 @@ function GroupWrapper({
|
|
|
2433
2457
|
children
|
|
2434
2458
|
}) {
|
|
2435
2459
|
if (variant === "card") {
|
|
2436
|
-
return /* @__PURE__ */ jsx(Card, { children: /* @__PURE__ */ jsx(CardContent, { className: "p-(--
|
|
2460
|
+
return /* @__PURE__ */ jsx(Card, { children: /* @__PURE__ */ jsx(CardContent, { className: "p-(--designkit-panel-gap)", children }) });
|
|
2437
2461
|
}
|
|
2438
2462
|
if (variant === "bordered") {
|
|
2439
2463
|
if (layout === "inline") {
|
|
2440
2464
|
return /* @__PURE__ */ jsx("div", { className: "overflow-hidden rounded-(--radius) border divide-y", children });
|
|
2441
2465
|
}
|
|
2442
|
-
return /* @__PURE__ */ jsx("div", { className: "rounded-(--radius) border p-(--
|
|
2466
|
+
return /* @__PURE__ */ jsx("div", { className: "rounded-(--radius) border p-(--designkit-panel-gap)", children });
|
|
2443
2467
|
}
|
|
2444
2468
|
return /* @__PURE__ */ jsx(Fragment$1, { children });
|
|
2445
2469
|
}
|
|
@@ -2465,7 +2489,7 @@ function renderGroupProps(props) {
|
|
|
2465
2489
|
const variant = variantProp ?? layoutDefaultVariant[layout];
|
|
2466
2490
|
if (layout === "split") {
|
|
2467
2491
|
const panes = Children.toArray(children);
|
|
2468
|
-
return /* @__PURE__ */ jsxs("div", { className: cn("py-(--
|
|
2492
|
+
return /* @__PURE__ */ jsxs("div", { className: cn("py-(--designkit-panel-gap)", className), children: [
|
|
2469
2493
|
(title || description || actions) && /* @__PURE__ */ jsxs("div", { className: "mb-3 flex items-start justify-between", children: [
|
|
2470
2494
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
2471
2495
|
title && /* @__PURE__ */ jsx("h2", { className: cn("text-sm font-semibold", danger && "text-destructive"), children: title }),
|
|
@@ -2473,21 +2497,21 @@ function renderGroupProps(props) {
|
|
|
2473
2497
|
] }),
|
|
2474
2498
|
actions && /* @__PURE__ */ jsx("div", { children: actions })
|
|
2475
2499
|
] }),
|
|
2476
|
-
/* @__PURE__ */ jsx("div", { className: "grid min-h-104 gap-(--
|
|
2500
|
+
/* @__PURE__ */ jsx("div", { className: "grid min-h-104 gap-(--designkit-panel-gap) lg:grid-cols-[20rem_minmax(0,1fr)]", children: panes.map((pane, i) => /* @__PURE__ */ jsx(GroupWrapper, { layout, variant, children: pane }, i)) })
|
|
2477
2501
|
] });
|
|
2478
2502
|
}
|
|
2479
2503
|
if (layout === "horizontal") {
|
|
2480
|
-
return /* @__PURE__ */ jsxs("div", { className: cn("grid grid-cols-
|
|
2504
|
+
return /* @__PURE__ */ jsxs("div", { className: cn("grid grid-cols-1 gap-(--designkit-panel-gap) py-(--designkit-panel-gap) sm:grid-cols-3 sm:gap-[calc(var(--designkit-panel-gap)*2)]", className), children: [
|
|
2481
2505
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
2482
2506
|
/* @__PURE__ */ jsx("p", { className: cn("text-sm font-medium", danger && "text-destructive"), children: title }),
|
|
2483
2507
|
description && /* @__PURE__ */ jsx("p", { className: "mt-1 text-xs text-muted-foreground", children: description }),
|
|
2484
2508
|
actions && /* @__PURE__ */ jsx("div", { className: "mt-2", children: actions })
|
|
2485
2509
|
] }),
|
|
2486
|
-
/* @__PURE__ */ jsx("div", { className: "col-span-2", children: /* @__PURE__ */ jsx(GroupWrapper, { layout, variant, children }) })
|
|
2510
|
+
/* @__PURE__ */ jsx("div", { className: "sm:col-span-2", children: /* @__PURE__ */ jsx(GroupWrapper, { layout, variant, children }) })
|
|
2487
2511
|
] });
|
|
2488
2512
|
}
|
|
2489
2513
|
if (layout === "inline") {
|
|
2490
|
-
return /* @__PURE__ */ jsxs("div", { className: cn("py-(--
|
|
2514
|
+
return /* @__PURE__ */ jsxs("div", { className: cn("py-(--designkit-panel-gap)", className), children: [
|
|
2491
2515
|
(title || description) && /* @__PURE__ */ jsxs("div", { className: "mb-2 flex items-start justify-between", children: [
|
|
2492
2516
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
2493
2517
|
title && /* @__PURE__ */ jsx("h2", { className: cn("text-sm font-semibold", danger && "text-destructive"), children: title }),
|
|
@@ -2498,7 +2522,7 @@ function renderGroupProps(props) {
|
|
|
2498
2522
|
/* @__PURE__ */ jsx(GroupWrapper, { layout, variant, children })
|
|
2499
2523
|
] });
|
|
2500
2524
|
}
|
|
2501
|
-
return /* @__PURE__ */ jsxs("div", { className: cn("py-(--
|
|
2525
|
+
return /* @__PURE__ */ jsxs("div", { className: cn("py-(--designkit-panel-gap)", className), children: [
|
|
2502
2526
|
/* @__PURE__ */ jsxs("div", { className: "flex items-start justify-between", children: [
|
|
2503
2527
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
2504
2528
|
/* @__PURE__ */ jsx("h2", { className: cn("text-sm font-semibold", danger && "text-destructive"), children: title }),
|
|
@@ -2513,8 +2537,8 @@ function DataBodyField({ label, description, children }) {
|
|
|
2513
2537
|
return /* @__PURE__ */ jsxs(
|
|
2514
2538
|
"div",
|
|
2515
2539
|
{
|
|
2516
|
-
className: "grid items-start gap-x-4
|
|
2517
|
-
style: { gridTemplateColumns: "var(--
|
|
2540
|
+
className: "flex flex-col gap-y-1 px-4 py-3 sm:grid sm:items-start sm:gap-x-4 sm:gap-y-0",
|
|
2541
|
+
style: { gridTemplateColumns: "var(--designkit-form-label-w, 11rem) 1fr" },
|
|
2518
2542
|
children: [
|
|
2519
2543
|
/* @__PURE__ */ jsxs("div", { className: "pt-0.5", children: [
|
|
2520
2544
|
/* @__PURE__ */ jsx("span", { className: "text-xs text-muted-foreground", children: label }),
|
|
@@ -2529,8 +2553,8 @@ function DataBodyRow({ label, description, required, children }) {
|
|
|
2529
2553
|
return /* @__PURE__ */ jsxs(
|
|
2530
2554
|
"div",
|
|
2531
2555
|
{
|
|
2532
|
-
className: "grid items-start gap-x-4
|
|
2533
|
-
style: { gridTemplateColumns: "var(--
|
|
2556
|
+
className: "flex flex-col gap-y-1.5 px-4 py-3 sm:grid sm:items-start sm:gap-x-4 sm:gap-y-0",
|
|
2557
|
+
style: { gridTemplateColumns: "var(--designkit-form-label-w, 11rem) 1fr" },
|
|
2534
2558
|
children: [
|
|
2535
2559
|
/* @__PURE__ */ jsxs("div", { className: "pt-1", children: [
|
|
2536
2560
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1", children: [
|
|
@@ -2590,7 +2614,7 @@ function Root2({
|
|
|
2590
2614
|
/* @__PURE__ */ jsx(DataPage.TitleBlock, { title, description }),
|
|
2591
2615
|
/* @__PURE__ */ jsx(DataPage.Actions, { children: actions })
|
|
2592
2616
|
] }),
|
|
2593
|
-
summaryEl && /* @__PURE__ */ jsx("div", { className: "shrink-0 border-b px-(--
|
|
2617
|
+
summaryEl && /* @__PURE__ */ jsx("div", { className: "shrink-0 border-b px-(--designkit-page-padding-x) py-(--designkit-panel-gap)", children: summaryEl.props.children }),
|
|
2594
2618
|
/* @__PURE__ */ jsx(DataPage.Content, { className: contentClassName, children: /* @__PURE__ */ jsx(DataPage.Group, { className: "h-full", children: /* @__PURE__ */ jsx(DataPage.GroupBody, { className: cn("h-full", bodyEl.props.className), children: bodyEl.props.children }) }) })
|
|
2595
2619
|
] });
|
|
2596
2620
|
}
|
|
@@ -2602,8 +2626,8 @@ function Root2({
|
|
|
2602
2626
|
/* @__PURE__ */ jsx(DataPage.TitleBlock, { title, description }),
|
|
2603
2627
|
/* @__PURE__ */ jsx(DataPage.Actions, { children: actions })
|
|
2604
2628
|
] }),
|
|
2605
|
-
summaryEl && /* @__PURE__ */ jsx("div", { className: "shrink-0 border-b px-(--
|
|
2606
|
-
/* @__PURE__ */ jsx(DataPage.Content, { className: contentClassName, children: /* @__PURE__ */ jsxs("div", { className: "grid gap-(--
|
|
2629
|
+
summaryEl && /* @__PURE__ */ jsx("div", { className: "shrink-0 border-b px-(--designkit-page-padding-x) py-(--designkit-panel-gap)", children: summaryEl.props.children }),
|
|
2630
|
+
/* @__PURE__ */ jsx(DataPage.Content, { className: contentClassName, children: /* @__PURE__ */ jsxs("div", { className: "grid gap-(--designkit-panel-gap) lg:grid-cols-[16rem_minmax(0,1fr)]", children: [
|
|
2607
2631
|
/* @__PURE__ */ jsx("nav", { className: "space-y-1", children: sections.map((section) => {
|
|
2608
2632
|
const active = section.props.id === activeSection?.props.id;
|
|
2609
2633
|
return /* @__PURE__ */ jsxs(
|
|
@@ -2625,7 +2649,7 @@ function Root2({
|
|
|
2625
2649
|
section.props.id
|
|
2626
2650
|
);
|
|
2627
2651
|
}) }),
|
|
2628
|
-
/* @__PURE__ */ jsx("div", { className: "min-w-0 space-y-(--
|
|
2652
|
+
/* @__PURE__ */ jsx("div", { className: "min-w-0 space-y-(--designkit-panel-gap)", children: renderGroups(activeSection?.props.children) })
|
|
2629
2653
|
] }) })
|
|
2630
2654
|
] });
|
|
2631
2655
|
}
|
|
@@ -2636,7 +2660,7 @@ function Root2({
|
|
|
2636
2660
|
/* @__PURE__ */ jsx(DataPage.TitleBlock, { title, description }),
|
|
2637
2661
|
/* @__PURE__ */ jsx(DataPage.Actions, { children: actions })
|
|
2638
2662
|
] }),
|
|
2639
|
-
summaryEl && /* @__PURE__ */ jsx("div", { className: "shrink-0 border-b px-(--
|
|
2663
|
+
summaryEl && /* @__PURE__ */ jsx("div", { className: "shrink-0 border-b px-(--designkit-page-padding-x) py-(--designkit-panel-gap)", children: summaryEl.props.children }),
|
|
2640
2664
|
hasTabs && /* @__PURE__ */ jsx(DataPage.Tabs, { children: tabs.map((tab) => /* @__PURE__ */ jsx(
|
|
2641
2665
|
DataPage.Tab,
|
|
2642
2666
|
{
|
|
@@ -2701,7 +2725,7 @@ function BrowseBodyTemplate({
|
|
|
2701
2725
|
/* @__PURE__ */ jsx(DataPage.Actions, { children: actions })
|
|
2702
2726
|
] }),
|
|
2703
2727
|
/* @__PURE__ */ jsxs(DataPage.Content, { padding: "none", className: "flex flex-col overflow-hidden", children: [
|
|
2704
|
-
(toolbar || isNarrow) && /* @__PURE__ */ jsxs("div", { className: "flex shrink-0 items-center gap-2 border-b px-(--
|
|
2728
|
+
(toolbar || isNarrow) && /* @__PURE__ */ jsxs("div", { className: "flex shrink-0 items-center gap-2 border-b px-(--designkit-page-padding-x) py-2", children: [
|
|
2705
2729
|
isNarrow && /* @__PURE__ */ jsxs(Sheet, { children: [
|
|
2706
2730
|
/* @__PURE__ */ jsxs(
|
|
2707
2731
|
SheetTrigger,
|
|
@@ -2726,14 +2750,14 @@ function BrowseBodyTemplate({
|
|
|
2726
2750
|
{
|
|
2727
2751
|
className: "shrink-0 overflow-hidden border-r",
|
|
2728
2752
|
style: { width: sidebarWidth },
|
|
2729
|
-
children: /* @__PURE__ */ jsx(ScrollArea, { className: "h-full", children: /* @__PURE__ */ jsx("div", { className: "px-(--
|
|
2753
|
+
children: /* @__PURE__ */ jsx(ScrollArea, { className: "h-full", children: /* @__PURE__ */ jsx("div", { className: "px-(--designkit-page-padding-x) py-(--designkit-page-padding-y)", children: sidebar }) })
|
|
2730
2754
|
}
|
|
2731
2755
|
),
|
|
2732
2756
|
/* @__PURE__ */ jsx(
|
|
2733
2757
|
"div",
|
|
2734
2758
|
{
|
|
2735
2759
|
className: cn(
|
|
2736
|
-
"min-w-0 flex-1 overflow-hidden px-(--
|
|
2760
|
+
"min-w-0 flex-1 overflow-hidden px-(--designkit-page-padding-x) py-(--designkit-page-padding-y)",
|
|
2737
2761
|
"[&_.gridkit-shell]:h-full [&_.gridkit-table-stack]:flex-1 [&_.gridkit-table-stack]:min-h-0",
|
|
2738
2762
|
"[&_.gridkit-frame]:flex-1 [&_.gridkit-frame]:min-h-0 [&_.gridkit-frame]:overflow-auto",
|
|
2739
2763
|
contentClassName
|
|
@@ -2786,8 +2810,8 @@ function DetailBodySection({
|
|
|
2786
2810
|
{
|
|
2787
2811
|
className: cn(
|
|
2788
2812
|
"min-h-0",
|
|
2789
|
-
surface === "card" && "rounded-(--radius) border bg-card p-(--
|
|
2790
|
-
surface === "bordered" && "rounded-(--radius) border p-(--
|
|
2813
|
+
surface === "card" && "rounded-(--radius) border bg-card p-(--designkit-panel-gap) text-card-foreground shadow-sm",
|
|
2814
|
+
surface === "bordered" && "rounded-(--radius) border p-(--designkit-panel-gap)",
|
|
2791
2815
|
className
|
|
2792
2816
|
),
|
|
2793
2817
|
children: [
|
|
@@ -2832,7 +2856,7 @@ function DetailBodyTemplateRoot({
|
|
|
2832
2856
|
const hasTabs = tabs.length > 0;
|
|
2833
2857
|
const [activeTab, setActiveTab] = useState(() => tabs[0]?.props.id ?? "");
|
|
2834
2858
|
const selectedTab = tabs.find((tab) => tab.props.id === activeTab) ?? tabs[0];
|
|
2835
|
-
const summarySlot = summary ? /* @__PURE__ */ jsx("div", { className: "min-h-0 rounded-(--radius) border bg-card p-(--
|
|
2859
|
+
const summarySlot = summary ? /* @__PURE__ */ jsx("div", { className: "min-h-0 rounded-(--radius) border bg-card p-(--designkit-panel-gap) text-card-foreground", children: summary }) : null;
|
|
2836
2860
|
const mediaSlot = media ? /* @__PURE__ */ jsx("div", { className: cn("min-h-0 overflow-hidden rounded-(--radius) border bg-card", mediaClassName), children: media }) : null;
|
|
2837
2861
|
const leadGridClass = variant === "media" ? "xl:grid-cols-[minmax(0,1.35fr)_minmax(18rem,0.65fr)]" : "xl:grid-cols-2";
|
|
2838
2862
|
const defaultHeader = eyebrow || title || description || status || actions ? /* @__PURE__ */ jsx(
|
|
@@ -2845,7 +2869,7 @@ function DetailBodyTemplateRoot({
|
|
|
2845
2869
|
actions
|
|
2846
2870
|
}
|
|
2847
2871
|
) : null;
|
|
2848
|
-
const defaultLead = media || summary ? /* @__PURE__ */ jsxs("div", { className: cn("grid gap-(--
|
|
2872
|
+
const defaultLead = media || summary ? /* @__PURE__ */ jsxs("div", { className: cn("grid gap-(--designkit-panel-gap)", leadGridClass), children: [
|
|
2849
2873
|
mediaSlot,
|
|
2850
2874
|
summarySlot
|
|
2851
2875
|
] }) : null;
|
|
@@ -2861,8 +2885,8 @@ function DetailBodyTemplateRoot({
|
|
|
2861
2885
|
},
|
|
2862
2886
|
tab.props.id
|
|
2863
2887
|
)) }),
|
|
2864
|
-
/* @__PURE__ */ jsx("div", { className: "pt-(--
|
|
2865
|
-
] }) : /* @__PURE__ */ jsx("div", { className: "space-y-(--
|
|
2888
|
+
/* @__PURE__ */ jsx("div", { className: "pt-(--designkit-panel-gap)", children: selectedTab?.props.children })
|
|
2889
|
+
] }) : /* @__PURE__ */ jsx("div", { className: "space-y-(--designkit-panel-gap)", children: renderChildren(children) });
|
|
2866
2890
|
const leadSlot = lead ?? defaultLead;
|
|
2867
2891
|
const outsideAsideSlot = variant === "full" ? null : aside;
|
|
2868
2892
|
const insideAsideSlot = variant === "full" ? aside : null;
|
|
@@ -2870,19 +2894,19 @@ function DetailBodyTemplateRoot({
|
|
|
2870
2894
|
const hasFullLeadArea = Boolean(leadSlot || insideAsideSlot);
|
|
2871
2895
|
const layout = {
|
|
2872
2896
|
media: /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
2873
|
-
leadSlot && /* @__PURE__ */ jsx("div", { className: "mb-(--
|
|
2897
|
+
leadSlot && /* @__PURE__ */ jsx("div", { className: "mb-(--designkit-panel-gap)", children: leadSlot }),
|
|
2874
2898
|
body
|
|
2875
2899
|
] }),
|
|
2876
2900
|
record: /* @__PURE__ */ jsxs(
|
|
2877
2901
|
"div",
|
|
2878
2902
|
{
|
|
2879
2903
|
className: cn(
|
|
2880
|
-
"grid gap-(--
|
|
2904
|
+
"grid gap-(--designkit-panel-gap)",
|
|
2881
2905
|
hasRecordInspector && "xl:grid-cols-[minmax(28rem,1fr)_minmax(14rem,18rem)]"
|
|
2882
2906
|
),
|
|
2883
2907
|
children: [
|
|
2884
2908
|
/* @__PURE__ */ jsx("div", { className: "min-w-0", children: body }),
|
|
2885
|
-
hasRecordInspector && /* @__PURE__ */ jsx("div", { className: "space-y-(--
|
|
2909
|
+
hasRecordInspector && /* @__PURE__ */ jsx("div", { className: "space-y-(--designkit-panel-gap)", children: leadSlot })
|
|
2886
2910
|
]
|
|
2887
2911
|
}
|
|
2888
2912
|
),
|
|
@@ -2891,12 +2915,12 @@ function DetailBodyTemplateRoot({
|
|
|
2891
2915
|
"div",
|
|
2892
2916
|
{
|
|
2893
2917
|
className: cn(
|
|
2894
|
-
"mb-(--
|
|
2918
|
+
"mb-(--designkit-panel-gap) grid gap-(--designkit-panel-gap)",
|
|
2895
2919
|
insideAsideSlot && "xl:grid-cols-[minmax(0,1fr)_minmax(18rem,24rem)]"
|
|
2896
2920
|
),
|
|
2897
2921
|
children: [
|
|
2898
|
-
leadSlot && /* @__PURE__ */ jsx("div", { className: "space-y-(--
|
|
2899
|
-
insideAsideSlot && /* @__PURE__ */ jsx("div", { className: cn("min-h-0 rounded-(--radius) border bg-card p-(--
|
|
2922
|
+
leadSlot && /* @__PURE__ */ jsx("div", { className: "space-y-(--designkit-panel-gap)", children: leadSlot }),
|
|
2923
|
+
insideAsideSlot && /* @__PURE__ */ jsx("div", { className: cn("min-h-0 rounded-(--radius) border bg-card p-(--designkit-panel-gap)", asideClassName), children: insideAsideSlot })
|
|
2900
2924
|
]
|
|
2901
2925
|
}
|
|
2902
2926
|
),
|
|
@@ -2918,7 +2942,7 @@ function DetailBodyTemplateRoot({
|
|
|
2918
2942
|
"main",
|
|
2919
2943
|
{
|
|
2920
2944
|
className: cn(
|
|
2921
|
-
"min-h-0 overflow-auto px-(--
|
|
2945
|
+
"min-h-0 overflow-auto px-(--designkit-page-padding-x) py-(--designkit-page-padding-y)",
|
|
2922
2946
|
contentClassName
|
|
2923
2947
|
),
|
|
2924
2948
|
children: layout[variant]
|
|
@@ -2928,7 +2952,7 @@ function DetailBodyTemplateRoot({
|
|
|
2928
2952
|
"div",
|
|
2929
2953
|
{
|
|
2930
2954
|
className: cn(
|
|
2931
|
-
"px-(--
|
|
2955
|
+
"px-(--designkit-page-padding-x) py-(--designkit-page-padding-y)",
|
|
2932
2956
|
stickyAside && "lg:sticky lg:top-0"
|
|
2933
2957
|
),
|
|
2934
2958
|
children: outsideAsideSlot
|
|
@@ -2953,7 +2977,9 @@ function ListDetailBodyTemplate({
|
|
|
2953
2977
|
emptyDetail,
|
|
2954
2978
|
listWidth = 320,
|
|
2955
2979
|
listClassName,
|
|
2956
|
-
detailClassName
|
|
2980
|
+
detailClassName,
|
|
2981
|
+
onBack,
|
|
2982
|
+
backLabel = "Back"
|
|
2957
2983
|
}) {
|
|
2958
2984
|
return /* @__PURE__ */ jsxs(
|
|
2959
2985
|
DataPage,
|
|
@@ -2974,15 +3000,21 @@ function ListDetailBodyTemplate({
|
|
|
2974
3000
|
children: list
|
|
2975
3001
|
}
|
|
2976
3002
|
),
|
|
2977
|
-
/* @__PURE__ */
|
|
3003
|
+
/* @__PURE__ */ jsxs(
|
|
2978
3004
|
"main",
|
|
2979
3005
|
{
|
|
2980
3006
|
className: cn(
|
|
2981
|
-
"min-h-0 min-w-0 flex-1 overflow-
|
|
2982
|
-
!detail && "hidden lg:
|
|
3007
|
+
"flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden",
|
|
3008
|
+
!detail && "hidden lg:flex",
|
|
2983
3009
|
detailClassName
|
|
2984
3010
|
),
|
|
2985
|
-
children:
|
|
3011
|
+
children: [
|
|
3012
|
+
detail && onBack && /* @__PURE__ */ jsx("div", { className: "flex shrink-0 items-center border-b px-3 py-2 lg:hidden", children: /* @__PURE__ */ jsxs(Button, { variant: "ghost", size: "sm", className: "-ml-1 gap-1", onClick: onBack, children: [
|
|
3013
|
+
/* @__PURE__ */ jsx(ChevronLeft, { className: "h-4 w-4" }),
|
|
3014
|
+
backLabel
|
|
3015
|
+
] }) }),
|
|
3016
|
+
/* @__PURE__ */ jsx("div", { className: "min-h-0 flex-1 overflow-auto", children: detail ?? emptyDetail })
|
|
3017
|
+
]
|
|
2986
3018
|
}
|
|
2987
3019
|
)
|
|
2988
3020
|
] })
|
|
@@ -2990,6 +3022,48 @@ function ListDetailBodyTemplate({
|
|
|
2990
3022
|
}
|
|
2991
3023
|
);
|
|
2992
3024
|
}
|
|
3025
|
+
function PanelTemplateSection({
|
|
3026
|
+
title,
|
|
3027
|
+
description,
|
|
3028
|
+
actions,
|
|
3029
|
+
className,
|
|
3030
|
+
children
|
|
3031
|
+
}) {
|
|
3032
|
+
return /* @__PURE__ */ jsxs("section", { className: cn("space-y-2.5", className), children: [
|
|
3033
|
+
(title || description || actions) && /* @__PURE__ */ jsxs("div", { className: "flex items-start justify-between gap-2", children: [
|
|
3034
|
+
/* @__PURE__ */ jsxs("div", { className: "min-w-0", children: [
|
|
3035
|
+
title && /* @__PURE__ */ jsx("p", { className: "text-[10px] font-semibold uppercase tracking-wider text-muted-foreground", children: title }),
|
|
3036
|
+
description && /* @__PURE__ */ jsx("p", { className: "mt-0.5 text-xs text-muted-foreground", children: description })
|
|
3037
|
+
] }),
|
|
3038
|
+
actions && /* @__PURE__ */ jsx("div", { className: "shrink-0", children: actions })
|
|
3039
|
+
] }),
|
|
3040
|
+
children
|
|
3041
|
+
] });
|
|
3042
|
+
}
|
|
3043
|
+
function PanelTemplateRoot({
|
|
3044
|
+
title,
|
|
3045
|
+
eyebrow,
|
|
3046
|
+
actions,
|
|
3047
|
+
footer,
|
|
3048
|
+
children,
|
|
3049
|
+
className,
|
|
3050
|
+
bodyClassName
|
|
3051
|
+
}) {
|
|
3052
|
+
return /* @__PURE__ */ jsxs("div", { className: cn("flex h-full flex-col overflow-hidden", className), children: [
|
|
3053
|
+
(title || eyebrow || actions) && /* @__PURE__ */ jsxs("div", { className: "shrink-0 px-4 py-3", children: [
|
|
3054
|
+
eyebrow && /* @__PURE__ */ jsx("p", { className: "mb-0.5 text-[10px] font-medium uppercase tracking-wider text-muted-foreground", children: eyebrow }),
|
|
3055
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
|
|
3056
|
+
title && /* @__PURE__ */ jsx("h2", { className: "min-w-0 flex-1 truncate text-sm font-semibold", children: title }),
|
|
3057
|
+
actions && /* @__PURE__ */ jsx("div", { className: "flex shrink-0 items-center gap-1", children: actions })
|
|
3058
|
+
] })
|
|
3059
|
+
] }),
|
|
3060
|
+
/* @__PURE__ */ jsx("div", { className: cn("min-h-0 flex-1 overflow-y-auto px-4 py-4", bodyClassName), children: /* @__PURE__ */ jsx("div", { className: "space-y-5", children }) }),
|
|
3061
|
+
footer && /* @__PURE__ */ jsx("div", { className: "shrink-0 border-t px-4 py-3", children: footer })
|
|
3062
|
+
] });
|
|
3063
|
+
}
|
|
3064
|
+
var PanelTemplate = Object.assign(PanelTemplateRoot, {
|
|
3065
|
+
Section: PanelTemplateSection
|
|
3066
|
+
});
|
|
2993
3067
|
function FormWizardBodyTemplate({
|
|
2994
3068
|
theme,
|
|
2995
3069
|
title,
|
|
@@ -3011,7 +3085,7 @@ function FormWizardBodyTemplate({
|
|
|
3011
3085
|
return /* @__PURE__ */ jsxs(DataPage, { className: "layout-form-wizard", style: theme, children: [
|
|
3012
3086
|
topBar && /* @__PURE__ */ jsx("div", { className: "shrink-0", children: topBar }),
|
|
3013
3087
|
/* @__PURE__ */ jsx(DataPage.Header, { children: /* @__PURE__ */ jsx(DataPage.TitleBlock, { title }) }),
|
|
3014
|
-
/* @__PURE__ */ jsx("div", { className: "shrink-0 px-(--
|
|
3088
|
+
/* @__PURE__ */ jsx("div", { className: "shrink-0 px-(--designkit-page-padding-x) pb-4", children: /* @__PURE__ */ jsx("div", { className: "flex items-center", children: steps.map((step, i) => /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
3015
3089
|
i > 0 && /* @__PURE__ */ jsx(
|
|
3016
3090
|
"div",
|
|
3017
3091
|
{
|
|
@@ -3044,7 +3118,7 @@ function FormWizardBodyTemplate({
|
|
|
3044
3118
|
)
|
|
3045
3119
|
] })
|
|
3046
3120
|
] }, step.key)) }) }),
|
|
3047
|
-
/* @__PURE__ */ jsx(DataPage.Content, { children: current && (variant === "card" ? /* @__PURE__ */ jsx(Card, { children: /* @__PURE__ */ jsx(CardContent, { className: "p-(--
|
|
3121
|
+
/* @__PURE__ */ jsx(DataPage.Content, { children: current && (variant === "card" ? /* @__PURE__ */ jsx(Card, { children: /* @__PURE__ */ jsx(CardContent, { className: "p-(--designkit-panel-gap)", children: /* @__PURE__ */ jsxs("form", { id: current.key, onSubmit: handleStepSubmit, children: [
|
|
3048
3122
|
/* @__PURE__ */ jsxs("div", { className: "mb-5", children: [
|
|
3049
3123
|
/* @__PURE__ */ jsx("h2", { className: "text-sm font-semibold", children: current.title }),
|
|
3050
3124
|
current.description && /* @__PURE__ */ jsx("p", { className: "mt-1 text-xs text-muted-foreground", children: current.description })
|
|
@@ -3102,8 +3176,8 @@ function TypographyBodyTemplate({ theme, breadcrumb }) {
|
|
|
3102
3176
|
description: "Global type scale preview for shell, template, and grid content"
|
|
3103
3177
|
}
|
|
3104
3178
|
) }),
|
|
3105
|
-
/* @__PURE__ */ jsxs(DataPage.Content, { className: "grid gap-[var(--
|
|
3106
|
-
/* @__PURE__ */ jsxs("div", { className: "space-y-[var(--
|
|
3179
|
+
/* @__PURE__ */ jsxs(DataPage.Content, { className: "grid gap-[var(--designkit-panel-gap)] lg:grid-cols-[1fr_22rem]", children: [
|
|
3180
|
+
/* @__PURE__ */ jsxs("div", { className: "space-y-[var(--designkit-panel-gap)]", children: [
|
|
3107
3181
|
/* @__PURE__ */ jsxs(Card, { className: "rounded-lg border border-border ring-0", children: [
|
|
3108
3182
|
/* @__PURE__ */ jsx(CardHeader, { children: /* @__PURE__ */ jsx(CardTitle, { children: "Type Scale" }) }),
|
|
3109
3183
|
/* @__PURE__ */ jsx(CardContent, { className: "space-y-4", children: scaleRows.map((row) => /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-[8rem_1fr] items-baseline gap-4", children: [
|
|
@@ -3294,7 +3368,7 @@ function ColorsBodyTemplate({ theme, breadcrumb }) {
|
|
|
3294
3368
|
description: "Design token color palette and derivation rules for the active theme"
|
|
3295
3369
|
}
|
|
3296
3370
|
) }),
|
|
3297
|
-
/* @__PURE__ */ jsxs(DataPage.Content, { className: "space-y-[var(--
|
|
3371
|
+
/* @__PURE__ */ jsxs(DataPage.Content, { className: "space-y-[var(--designkit-panel-gap)]", children: [
|
|
3298
3372
|
/* @__PURE__ */ jsxs(Card, { className: "rounded-lg border border-border ring-0", children: [
|
|
3299
3373
|
/* @__PURE__ */ jsx(CardHeader, { children: /* @__PURE__ */ jsx(CardTitle, { children: "Primary \u2014 controlled by hue & chroma" }) }),
|
|
3300
3374
|
/* @__PURE__ */ jsxs(CardContent, { className: "space-y-3", children: [
|
|
@@ -3581,26 +3655,36 @@ function buildTopBar(opts) {
|
|
|
3581
3655
|
}
|
|
3582
3656
|
);
|
|
3583
3657
|
}
|
|
3658
|
+
function AutoSidebarTrigger() {
|
|
3659
|
+
const ctx = useSidebarOptional();
|
|
3660
|
+
if (!ctx?.isMobile) return null;
|
|
3661
|
+
return /* @__PURE__ */ jsx(SidebarTrigger, { className: "-ml-1 shrink-0" });
|
|
3662
|
+
}
|
|
3584
3663
|
function PageTopBar({
|
|
3585
3664
|
left,
|
|
3586
3665
|
right,
|
|
3587
3666
|
variant = "ghost",
|
|
3588
|
-
height = "var(--
|
|
3667
|
+
height = "var(--designkit-toolbar-height)",
|
|
3589
3668
|
className,
|
|
3590
3669
|
style,
|
|
3591
|
-
children
|
|
3670
|
+
children,
|
|
3671
|
+
sidebarTrigger
|
|
3592
3672
|
}) {
|
|
3673
|
+
const trigger = sidebarTrigger === false ? null : sidebarTrigger !== void 0 ? sidebarTrigger : /* @__PURE__ */ jsx(AutoSidebarTrigger, {});
|
|
3593
3674
|
return /* @__PURE__ */ jsxs(
|
|
3594
3675
|
"div",
|
|
3595
3676
|
{
|
|
3596
3677
|
className: cn(
|
|
3597
|
-
"flex shrink-0 items-center justify-between gap-4 px-(--
|
|
3678
|
+
"flex shrink-0 items-center justify-between gap-4 px-(--designkit-page-padding-x)",
|
|
3598
3679
|
variant === "default" && "border-b",
|
|
3599
3680
|
className
|
|
3600
3681
|
),
|
|
3601
3682
|
style: { height, ...style },
|
|
3602
3683
|
children: [
|
|
3603
|
-
/* @__PURE__ */
|
|
3684
|
+
/* @__PURE__ */ jsxs("div", { className: "flex min-w-0 items-center gap-2 text-xs text-muted-foreground", children: [
|
|
3685
|
+
trigger,
|
|
3686
|
+
normalizeBreadcrumb(left ?? children)
|
|
3687
|
+
] }),
|
|
3604
3688
|
right && /* @__PURE__ */ jsx("div", { className: "flex shrink-0 items-center gap-2", children: right })
|
|
3605
3689
|
]
|
|
3606
3690
|
}
|
|
@@ -3640,8 +3724,7 @@ function buildTokenMap({
|
|
|
3640
3724
|
}[density];
|
|
3641
3725
|
const c = (factor) => (primaryChroma * factor).toFixed(4);
|
|
3642
3726
|
return {
|
|
3643
|
-
"--
|
|
3644
|
-
"--gridkit-radius": `${radius}rem`,
|
|
3727
|
+
"--designkit-radius": `${radius}rem`,
|
|
3645
3728
|
"--radius": `${radius}rem`,
|
|
3646
3729
|
"--radius-sm": `${(radius * 0.6).toFixed(4)}rem`,
|
|
3647
3730
|
"--radius-md": `${(radius * 0.8).toFixed(4)}rem`,
|
|
@@ -3649,12 +3732,9 @@ function buildTokenMap({
|
|
|
3649
3732
|
"--radius-xl": `${(radius * 1.4).toFixed(4)}rem`,
|
|
3650
3733
|
"--radius-2xl": `${(radius * 1.8).toFixed(4)}rem`,
|
|
3651
3734
|
// primary — fully controlled
|
|
3652
|
-
"--
|
|
3653
|
-
"--
|
|
3654
|
-
"--
|
|
3655
|
-
"--gridkit-primary": `oklch(0.52 ${primaryChroma} ${primaryHue})`,
|
|
3656
|
-
"--gridkit-primary-foreground": "oklch(0.985 0 0)",
|
|
3657
|
-
"--gridkit-ring": `oklch(0.50 ${primaryChroma} ${primaryHue})`,
|
|
3735
|
+
"--designkit-primary": `oklch(0.52 ${primaryChroma} ${primaryHue})`,
|
|
3736
|
+
"--designkit-primary-foreground": "oklch(0.985 0 0)",
|
|
3737
|
+
"--designkit-ring": `oklch(0.50 ${primaryChroma} ${primaryHue})`,
|
|
3658
3738
|
"--primary": `oklch(0.52 ${primaryChroma} ${primaryHue})`,
|
|
3659
3739
|
"--primary-foreground": "oklch(0.985 0 0)",
|
|
3660
3740
|
"--color-primary": `oklch(0.52 ${primaryChroma} ${primaryHue})`,
|
|
@@ -3674,37 +3754,35 @@ function buildTokenMap({
|
|
|
3674
3754
|
"--color-muted": `oklch(0.970 ${c(0.02)} ${primaryHue})`,
|
|
3675
3755
|
"--color-secondary": `oklch(0.970 ${c(0.02)} ${primaryHue})`,
|
|
3676
3756
|
"--color-accent": `oklch(0.970 ${c(0.04)} ${primaryHue})`,
|
|
3677
|
-
"--
|
|
3678
|
-
"--
|
|
3679
|
-
"--
|
|
3680
|
-
"--
|
|
3681
|
-
"--
|
|
3682
|
-
"--
|
|
3683
|
-
"--
|
|
3684
|
-
"--
|
|
3685
|
-
"--
|
|
3686
|
-
"--
|
|
3687
|
-
"--
|
|
3688
|
-
"--
|
|
3689
|
-
"--
|
|
3690
|
-
"--
|
|
3691
|
-
"--
|
|
3692
|
-
"--
|
|
3693
|
-
"--
|
|
3694
|
-
"--
|
|
3695
|
-
"--
|
|
3696
|
-
"--
|
|
3697
|
-
"--
|
|
3698
|
-
"--text-
|
|
3699
|
-
"--text-
|
|
3700
|
-
"--text-
|
|
3701
|
-
"--text-
|
|
3702
|
-
"--text-
|
|
3703
|
-
"--text-
|
|
3704
|
-
"--text-
|
|
3705
|
-
"--text-
|
|
3706
|
-
"--text-lg--line-height": "var(--dk-leading-lg)",
|
|
3707
|
-
"--text-xl--line-height": "var(--dk-leading-xl)"
|
|
3757
|
+
"--designkit-border": `oklch(0.922 ${c(0.04)} ${primaryHue})`,
|
|
3758
|
+
"--designkit-input": `oklch(0.922 ${c(0.04)} ${primaryHue})`,
|
|
3759
|
+
"--designkit-muted": `oklch(0.970 ${c(0.02)} ${primaryHue})`,
|
|
3760
|
+
"--designkit-font-scale": fontScale,
|
|
3761
|
+
"--designkit-line-height": lineHeight,
|
|
3762
|
+
"--designkit-density": densityValues.density,
|
|
3763
|
+
"--designkit-page-padding-y": pagePaddingY ?? densityValues.pagePaddingY,
|
|
3764
|
+
"--designkit-panel-gap": panelGap ?? densityValues.panelGap,
|
|
3765
|
+
"--designkit-toolbar-height": toolbarHeight ?? densityValues.toolbarHeight,
|
|
3766
|
+
"--designkit-text-xs": `calc(0.75rem * ${fontScale})`,
|
|
3767
|
+
"--designkit-text-sm": `calc(0.875rem * ${fontScale})`,
|
|
3768
|
+
"--designkit-text-base": `calc(1rem * ${fontScale})`,
|
|
3769
|
+
"--designkit-text-lg": `calc(1.125rem * ${fontScale})`,
|
|
3770
|
+
"--designkit-text-xl": `calc(1.25rem * ${fontScale})`,
|
|
3771
|
+
"--designkit-leading-xs": `calc(1rem * ${lineHeight})`,
|
|
3772
|
+
"--designkit-leading-sm": `calc(1.25rem * ${lineHeight})`,
|
|
3773
|
+
"--designkit-leading-base": `calc(1.5rem * ${lineHeight})`,
|
|
3774
|
+
"--designkit-leading-lg": `calc(1.75rem * ${lineHeight})`,
|
|
3775
|
+
"--designkit-leading-xl": `calc(1.75rem * ${lineHeight})`,
|
|
3776
|
+
"--text-xs": "var(--designkit-text-xs)",
|
|
3777
|
+
"--text-sm": "var(--designkit-text-sm)",
|
|
3778
|
+
"--text-base": "var(--designkit-text-base)",
|
|
3779
|
+
"--text-lg": "var(--designkit-text-lg)",
|
|
3780
|
+
"--text-xl": "var(--designkit-text-xl)",
|
|
3781
|
+
"--text-xs--line-height": "var(--designkit-leading-xs)",
|
|
3782
|
+
"--text-sm--line-height": "var(--designkit-leading-sm)",
|
|
3783
|
+
"--text-base--line-height": "var(--designkit-leading-base)",
|
|
3784
|
+
"--text-lg--line-height": "var(--designkit-leading-lg)",
|
|
3785
|
+
"--text-xl--line-height": "var(--designkit-leading-xl)"
|
|
3708
3786
|
};
|
|
3709
3787
|
}
|
|
3710
3788
|
function buildDarkTonalTokens(primaryHue, primaryChroma) {
|
|
@@ -3720,11 +3798,9 @@ function buildDarkTonalTokens(primaryHue, primaryChroma) {
|
|
|
3720
3798
|
"--color-muted": `oklch(0.269 ${c(0.03)} ${primaryHue})`,
|
|
3721
3799
|
"--color-secondary": `oklch(0.269 ${c(0.02)} ${primaryHue})`,
|
|
3722
3800
|
"--color-accent": `oklch(0.320 ${c(0.04)} ${primaryHue})`,
|
|
3723
|
-
"--
|
|
3724
|
-
"--
|
|
3725
|
-
"--
|
|
3726
|
-
"--gridkit-border": `oklch(0.32 ${c(0.06)} ${primaryHue})`,
|
|
3727
|
-
"--gridkit-muted": `oklch(0.269 ${c(0.03)} ${primaryHue})`
|
|
3801
|
+
"--designkit-border": `oklch(0.32 ${c(0.06)} ${primaryHue})`,
|
|
3802
|
+
"--designkit-input": `oklch(0.35 ${c(0.06)} ${primaryHue})`,
|
|
3803
|
+
"--designkit-muted": `oklch(0.269 ${c(0.03)} ${primaryHue})`
|
|
3728
3804
|
};
|
|
3729
3805
|
}
|
|
3730
3806
|
function tokenMapToCss(tokens) {
|
|
@@ -3770,10 +3846,10 @@ ${tokenMapToCss(tokens)}
|
|
|
3770
3846
|
}, [g.darkMode]);
|
|
3771
3847
|
useEffect(() => {
|
|
3772
3848
|
if (g.density === "default") {
|
|
3773
|
-
document.documentElement.removeAttribute("data-
|
|
3849
|
+
document.documentElement.removeAttribute("data-designkit-density");
|
|
3774
3850
|
return;
|
|
3775
3851
|
}
|
|
3776
|
-
document.documentElement.dataset.
|
|
3852
|
+
document.documentElement.dataset.designkitDensity = g.density;
|
|
3777
3853
|
}, [g.density]);
|
|
3778
3854
|
}
|
|
3779
3855
|
function buildTemplateTheme(g, ov = {}) {
|
|
@@ -3794,6 +3870,6 @@ function buildTemplateTheme(g, ov = {}) {
|
|
|
3794
3870
|
return tokens;
|
|
3795
3871
|
}
|
|
3796
3872
|
|
|
3797
|
-
export { Avatar, AvatarBadge, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarImage, Badge, BrowseBodyTemplate, Button, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, ColorsBodyTemplate, DashboardBodyTemplate, DashboardPanel, DataBodyTemplate, DataPage, DetailBodyTemplate, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, FormWizardBodyTemplate, Input, Label, ListDetailBodyTemplate, LoginBodyTemplate, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuPositioner, NavigationMenuTrigger, PageBreadcrumb, PageTopBar, Popover, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger, ScrollArea, ScrollBar, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, Slider, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TypographyBodyTemplate, WorkbenchBodyTemplate, badgeVariants, buildTemplateTheme, buildTopBar, buttonVariants, cn, navigationMenuTriggerStyle, tabsListVariants, useIsMobile, useSidebar, useStyleInjector, useThemeStore };
|
|
3873
|
+
export { Avatar, AvatarBadge, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarImage, Badge, BrowseBodyTemplate, Button, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, ColorsBodyTemplate, DashboardBodyTemplate, DashboardPanel, DataBodyTemplate, DataPage, DetailBodyTemplate, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, FormWizardBodyTemplate, Input, Label, ListDetailBodyTemplate, LoginBodyTemplate, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuPositioner, NavigationMenuTrigger, PageBreadcrumb, PageTopBar, PanelTemplate, Popover, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger, ScrollArea, ScrollBar, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, Slider, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TypographyBodyTemplate, WorkbenchBodyTemplate, badgeVariants, buildTemplateTheme, buildTopBar, buttonVariants, cn, navigationMenuTriggerStyle, tabsListVariants, useIsMobile, useSidebar, useSidebarOptional, useStyleInjector, useThemeStore };
|
|
3798
3874
|
//# sourceMappingURL=index.js.map
|
|
3799
3875
|
//# sourceMappingURL=index.js.map
|