@loykin/designkit 0.0.1-dev.2 → 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 +113 -22
- package/dist/index.cjs +426 -103
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +100 -3
- package/dist/index.d.ts +100 -3
- package/dist/index.js +425 -106
- package/dist/index.js.map +1 -1
- package/dist/styles.css +2 -77
- package/package.json +5 -3
package/dist/index.d.cts
CHANGED
|
@@ -193,6 +193,7 @@ declare function SidebarMenuSubButton({ render, size, isActive, className, ...pr
|
|
|
193
193
|
size?: 'sm' | 'md';
|
|
194
194
|
isActive?: boolean;
|
|
195
195
|
}): React$1.ReactElement<unknown, string | React$1.JSXElementConstructor<any>>;
|
|
196
|
+
declare function useSidebarOptional(): SidebarContextProps | null;
|
|
196
197
|
|
|
197
198
|
interface EmptyStateAction {
|
|
198
199
|
label: string;
|
|
@@ -237,7 +238,7 @@ declare function TabsContent({ className, ...props }: Tabs$2.Panel.Props): react
|
|
|
237
238
|
|
|
238
239
|
type ShellId = 'sidebar' | 'header';
|
|
239
240
|
type DensityId = 'compact' | 'default' | 'comfortable';
|
|
240
|
-
type TemplateId = 'table' | 'table-infinity' | 'table-drag' | 'table-card' | 'table-card-list' | 'tabbed' | 'form' | 'form-stacked' | 'form-wizard' | 'form-inline' | 'databody' | 'databody-detail' | 'databody-split' | 'sectioned' | 'typography' | 'colors' | 'login' | 'login-forgot' | 'login-reset' | 'login-otp' | 'dashboard' | 'browse' | 'detail' | 'detail-record' | 'detail-full';
|
|
241
|
+
type TemplateId = 'table' | 'table-infinity' | 'table-drag' | 'table-card' | 'table-card-list' | 'tabbed' | 'form' | 'form-stacked' | 'form-wizard' | 'form-inline' | 'databody' | 'databody-detail' | 'databody-split' | 'sectioned' | 'typography' | 'colors' | 'login' | 'login-forgot' | 'login-reset' | 'login-otp' | 'dashboard' | 'workbench-panel-editor' | 'workbench-sql-editor' | 'workbench-agent-chat' | 'browse' | 'detail' | 'detail-record' | 'detail-full' | 'list-detail' | 'panel';
|
|
241
242
|
interface GlobalTheme {
|
|
242
243
|
radius: number;
|
|
243
244
|
primaryHue: number;
|
|
@@ -294,6 +295,47 @@ interface DashboardBodyTemplateProps {
|
|
|
294
295
|
}
|
|
295
296
|
declare function DashboardBodyTemplate({ theme, className, title, description, topBar, toolbar, variableBar, children, contentClassName, }: DashboardBodyTemplateProps): react_jsx_runtime.JSX.Element;
|
|
296
297
|
|
|
298
|
+
interface WorkbenchBodyTemplateProps {
|
|
299
|
+
theme?: CSSProperties;
|
|
300
|
+
className?: string;
|
|
301
|
+
contentClassName?: string;
|
|
302
|
+
title?: ReactNode;
|
|
303
|
+
description?: ReactNode;
|
|
304
|
+
topBar?: ReactNode;
|
|
305
|
+
/** Right side of the built-in workbench header. Prefer this over toolbar for new code. */
|
|
306
|
+
headerRight?: ReactNode;
|
|
307
|
+
/** @deprecated Use headerRight. */
|
|
308
|
+
toolbar?: ReactNode;
|
|
309
|
+
actions?: ReactNode;
|
|
310
|
+
leftPane?: ReactNode;
|
|
311
|
+
mainPane?: ReactNode;
|
|
312
|
+
rightPane?: ReactNode;
|
|
313
|
+
bottomPane?: ReactNode;
|
|
314
|
+
children?: ReactNode;
|
|
315
|
+
resizable?: boolean;
|
|
316
|
+
leftPaneCollapsed?: boolean;
|
|
317
|
+
rightPaneCollapsed?: boolean;
|
|
318
|
+
bottomPaneCollapsed?: boolean;
|
|
319
|
+
leftPaneWidth?: number;
|
|
320
|
+
rightPaneWidth?: number;
|
|
321
|
+
bottomPaneHeight?: number;
|
|
322
|
+
minLeftPaneWidth?: number;
|
|
323
|
+
maxLeftPaneWidth?: number;
|
|
324
|
+
minRightPaneWidth?: number;
|
|
325
|
+
maxRightPaneWidth?: number;
|
|
326
|
+
minBottomPaneHeight?: number;
|
|
327
|
+
maxBottomPaneHeight?: number;
|
|
328
|
+
leftPaneClassName?: string;
|
|
329
|
+
mainPaneClassName?: string;
|
|
330
|
+
rightPaneClassName?: string;
|
|
331
|
+
bottomPaneClassName?: string;
|
|
332
|
+
/** Mobile Sheet label for the left pane trigger */
|
|
333
|
+
leftPaneLabel?: string;
|
|
334
|
+
/** Mobile Sheet label for the right pane trigger */
|
|
335
|
+
rightPaneLabel?: string;
|
|
336
|
+
}
|
|
337
|
+
declare function WorkbenchBodyTemplate({ theme, className, contentClassName, title, description, topBar, headerRight, toolbar, actions, leftPane, mainPane, rightPane, bottomPane, children, resizable, leftPaneCollapsed, rightPaneCollapsed, bottomPaneCollapsed, leftPaneWidth, rightPaneWidth, bottomPaneHeight, minLeftPaneWidth, maxLeftPaneWidth, minRightPaneWidth, maxRightPaneWidth, minBottomPaneHeight, maxBottomPaneHeight, leftPaneClassName, mainPaneClassName, rightPaneClassName, bottomPaneClassName, leftPaneLabel, rightPaneLabel, }: WorkbenchBodyTemplateProps): react_jsx_runtime.JSX.Element;
|
|
338
|
+
|
|
297
339
|
interface DataBodyTabProps {
|
|
298
340
|
id: string;
|
|
299
341
|
label: React__default.ReactNode;
|
|
@@ -328,6 +370,7 @@ interface DataBodyGroupProps {
|
|
|
328
370
|
description?: React__default.ReactNode;
|
|
329
371
|
actions?: React__default.ReactNode;
|
|
330
372
|
danger?: boolean;
|
|
373
|
+
className?: string;
|
|
331
374
|
children?: React__default.ReactNode;
|
|
332
375
|
}
|
|
333
376
|
declare function DataBodyGroup(props: DataBodyGroupProps): react_jsx_runtime.JSX.Element;
|
|
@@ -443,6 +486,52 @@ declare const DetailBodyTemplate: typeof DetailBodyTemplateRoot & {
|
|
|
443
486
|
Section: typeof DetailBodySection;
|
|
444
487
|
};
|
|
445
488
|
|
|
489
|
+
interface ListDetailBodyTemplateProps {
|
|
490
|
+
theme?: CSSProperties;
|
|
491
|
+
className?: string;
|
|
492
|
+
topBar?: ReactNode;
|
|
493
|
+
/** List pane content — typically a DataGrid, DataGridList, or navigation list */
|
|
494
|
+
list: ReactNode;
|
|
495
|
+
/**
|
|
496
|
+
* Detail pane content. When undefined, `emptyDetail` is shown on desktop
|
|
497
|
+
* and the list pane fills the screen on mobile.
|
|
498
|
+
*/
|
|
499
|
+
detail?: ReactNode;
|
|
500
|
+
/** Placeholder rendered in the detail pane when nothing is selected */
|
|
501
|
+
emptyDetail?: ReactNode;
|
|
502
|
+
/** Width of the list pane in px. Default: 320 */
|
|
503
|
+
listWidth?: number;
|
|
504
|
+
listClassName?: string;
|
|
505
|
+
detailClassName?: string;
|
|
506
|
+
/** Called when the mobile back button is pressed — use to clear the selected item */
|
|
507
|
+
onBack?: () => void;
|
|
508
|
+
/** Label for the mobile back button. Default: "Back" */
|
|
509
|
+
backLabel?: string;
|
|
510
|
+
}
|
|
511
|
+
declare function ListDetailBodyTemplate({ theme, className, topBar, list, detail, emptyDetail, listWidth, listClassName, detailClassName, onBack, backLabel, }: ListDetailBodyTemplateProps): react_jsx_runtime.JSX.Element;
|
|
512
|
+
|
|
513
|
+
interface PanelTemplateProps {
|
|
514
|
+
title?: React__default.ReactNode;
|
|
515
|
+
eyebrow?: React__default.ReactNode;
|
|
516
|
+
actions?: React__default.ReactNode;
|
|
517
|
+
footer?: React__default.ReactNode;
|
|
518
|
+
children?: React__default.ReactNode;
|
|
519
|
+
className?: string;
|
|
520
|
+
bodyClassName?: string;
|
|
521
|
+
}
|
|
522
|
+
interface PanelTemplateSectionProps {
|
|
523
|
+
title?: React__default.ReactNode;
|
|
524
|
+
description?: React__default.ReactNode;
|
|
525
|
+
actions?: React__default.ReactNode;
|
|
526
|
+
className?: string;
|
|
527
|
+
children?: React__default.ReactNode;
|
|
528
|
+
}
|
|
529
|
+
declare function PanelTemplateSection({ title, description, actions, className, children, }: PanelTemplateSectionProps): react_jsx_runtime.JSX.Element;
|
|
530
|
+
declare function PanelTemplateRoot({ title, eyebrow, actions, footer, children, className, bodyClassName, }: PanelTemplateProps): react_jsx_runtime.JSX.Element;
|
|
531
|
+
declare const PanelTemplate: typeof PanelTemplateRoot & {
|
|
532
|
+
Section: typeof PanelTemplateSection;
|
|
533
|
+
};
|
|
534
|
+
|
|
446
535
|
type FormWizardVariant = 'card' | 'plain';
|
|
447
536
|
interface FormWizardStep {
|
|
448
537
|
key: string;
|
|
@@ -588,6 +677,13 @@ interface PageTopBarProps {
|
|
|
588
677
|
className?: string;
|
|
589
678
|
style?: React__default.CSSProperties;
|
|
590
679
|
children?: React__default.ReactNode;
|
|
680
|
+
/**
|
|
681
|
+
* Mobile sidebar trigger shown at the far left of the bar.
|
|
682
|
+
* - undefined (default): auto-detect — shows when inside SidebarProvider on mobile
|
|
683
|
+
* - false: suppress entirely
|
|
684
|
+
* - ReactNode: custom trigger content
|
|
685
|
+
*/
|
|
686
|
+
sidebarTrigger?: false | React__default.ReactNode;
|
|
591
687
|
}
|
|
592
688
|
type PageBreadcrumbItem = string | {
|
|
593
689
|
label: string;
|
|
@@ -604,7 +700,7 @@ declare function buildTopBar(opts: {
|
|
|
604
700
|
left: React__default.ReactNode;
|
|
605
701
|
right?: React__default.ReactNode;
|
|
606
702
|
}): React__default.ReactNode;
|
|
607
|
-
declare function PageTopBar({ left, right, variant, height, className, style, children, }: PageTopBarProps): react_jsx_runtime.JSX.Element;
|
|
703
|
+
declare function PageTopBar({ left, right, variant, height, className, style, children, sidebarTrigger, }: PageTopBarProps): react_jsx_runtime.JSX.Element;
|
|
608
704
|
|
|
609
705
|
interface TemplateNavigationItem {
|
|
610
706
|
id: TemplateId;
|
|
@@ -627,6 +723,7 @@ declare function buildTemplateTheme(g: {
|
|
|
627
723
|
radius: number;
|
|
628
724
|
primaryHue: number;
|
|
629
725
|
primaryChroma: number;
|
|
726
|
+
darkMode?: boolean;
|
|
630
727
|
density?: DensityId;
|
|
631
728
|
fontScale?: number;
|
|
632
729
|
lineHeight?: number;
|
|
@@ -643,4 +740,4 @@ declare function cn(...inputs: ClassValue[]): string;
|
|
|
643
740
|
|
|
644
741
|
declare const useThemeStore: zustand.UseBoundStore<zustand.StoreApi<ThemeState>>;
|
|
645
742
|
|
|
646
|
-
export { Avatar, AvatarBadge, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarImage, Badge, BrowseBodyTemplate, type BrowseBodyTemplateProps, Button, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, ColorsBodyTemplate, type ColorsBodyTemplateProps, DashboardBodyTemplate, type DashboardBodyTemplateProps, DashboardPanel, type DashboardPanelProps, type DataBodyBodyProps, type DataBodyFieldProps, type DataBodyGroupProps, type DataBodyRowProps, type DataBodySectionProps, type DataBodySummaryProps, type DataBodyTabProps, DataBodyTemplate, type DataBodyTemplateProps, DataPage, type DataPageActionsProps, type DataPageContentProps, type DataPageFooterProps, type DataPageGroupBodyProps, type DataPageGroupHeaderProps, type DataPageGroupProps, type DataPageGroupToolbarProps, type DataPageHeaderProps, type DataPageProps, type DataPageTabProps, type DataPageTabsProps, type DataPageTitleBlockProps, type DensityId, type DetailBodyHeaderProps, type DetailBodySectionProps, type DetailBodyTabProps, DetailBodyTemplate, type DetailBodyTemplateProps, type DetailBodyVariant, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, type EmptyStateAction, type EmptyStateProps, FormWizardBodyTemplate, type FormWizardBodyTemplateProps, type FormWizardStep, type FormWizardVariant, type GlobalTheme, type GroupLayout, type GroupVariant, Input, Label, type LoginBg, LoginBodyTemplate, type LoginBodyTemplateProps, type LoginCard, type LoginCardWidth, type LoginLayout, type LoginSide, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuPositioner, NavigationMenuTrigger, PageBreadcrumb, type PageBreadcrumbItem, PageTopBar, type PageTopBarProps, type PageTopBarVariant, 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, type ShellId, 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$1 as Tabs, TabsContent, TabsList, TabsTrigger, type TemplateId, type TemplateNavigationGroup, type TemplateNavigationItem, type TemplateOverride, type ThemeState, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TypographyBodyTemplate, type TypographyBodyTemplateProps, badgeVariants, buildTemplateTheme, buildTopBar, buttonVariants, cn, navigationMenuTriggerStyle, tabsListVariants, useIsMobile, useSidebar, useStyleInjector, useThemeStore };
|
|
743
|
+
export { Avatar, AvatarBadge, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarImage, Badge, BrowseBodyTemplate, type BrowseBodyTemplateProps, Button, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, ColorsBodyTemplate, type ColorsBodyTemplateProps, DashboardBodyTemplate, type DashboardBodyTemplateProps, DashboardPanel, type DashboardPanelProps, type DataBodyBodyProps, type DataBodyFieldProps, type DataBodyGroupProps, type DataBodyRowProps, type DataBodySectionProps, type DataBodySummaryProps, type DataBodyTabProps, DataBodyTemplate, type DataBodyTemplateProps, DataPage, type DataPageActionsProps, type DataPageContentProps, type DataPageFooterProps, type DataPageGroupBodyProps, type DataPageGroupHeaderProps, type DataPageGroupProps, type DataPageGroupToolbarProps, type DataPageHeaderProps, type DataPageProps, type DataPageTabProps, type DataPageTabsProps, type DataPageTitleBlockProps, type DensityId, type DetailBodyHeaderProps, type DetailBodySectionProps, type DetailBodyTabProps, DetailBodyTemplate, type DetailBodyTemplateProps, type DetailBodyVariant, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, type EmptyStateAction, type EmptyStateProps, FormWizardBodyTemplate, type FormWizardBodyTemplateProps, type FormWizardStep, type FormWizardVariant, type GlobalTheme, type GroupLayout, type GroupVariant, Input, Label, ListDetailBodyTemplate, type ListDetailBodyTemplateProps, type LoginBg, LoginBodyTemplate, type LoginBodyTemplateProps, type LoginCard, type LoginCardWidth, type LoginLayout, type LoginSide, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuPositioner, NavigationMenuTrigger, PageBreadcrumb, type PageBreadcrumbItem, PageTopBar, type PageTopBarProps, type PageTopBarVariant, PanelTemplate, type PanelTemplateProps, type PanelTemplateSectionProps, 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, type ShellId, 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$1 as Tabs, TabsContent, TabsList, TabsTrigger, type TemplateId, type TemplateNavigationGroup, type TemplateNavigationItem, type TemplateOverride, type ThemeState, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TypographyBodyTemplate, type TypographyBodyTemplateProps, WorkbenchBodyTemplate, type WorkbenchBodyTemplateProps, badgeVariants, buildTemplateTheme, buildTopBar, buttonVariants, cn, navigationMenuTriggerStyle, tabsListVariants, useIsMobile, useSidebar, useSidebarOptional, useStyleInjector, useThemeStore };
|
package/dist/index.d.ts
CHANGED
|
@@ -193,6 +193,7 @@ declare function SidebarMenuSubButton({ render, size, isActive, className, ...pr
|
|
|
193
193
|
size?: 'sm' | 'md';
|
|
194
194
|
isActive?: boolean;
|
|
195
195
|
}): React$1.ReactElement<unknown, string | React$1.JSXElementConstructor<any>>;
|
|
196
|
+
declare function useSidebarOptional(): SidebarContextProps | null;
|
|
196
197
|
|
|
197
198
|
interface EmptyStateAction {
|
|
198
199
|
label: string;
|
|
@@ -237,7 +238,7 @@ declare function TabsContent({ className, ...props }: Tabs$2.Panel.Props): react
|
|
|
237
238
|
|
|
238
239
|
type ShellId = 'sidebar' | 'header';
|
|
239
240
|
type DensityId = 'compact' | 'default' | 'comfortable';
|
|
240
|
-
type TemplateId = 'table' | 'table-infinity' | 'table-drag' | 'table-card' | 'table-card-list' | 'tabbed' | 'form' | 'form-stacked' | 'form-wizard' | 'form-inline' | 'databody' | 'databody-detail' | 'databody-split' | 'sectioned' | 'typography' | 'colors' | 'login' | 'login-forgot' | 'login-reset' | 'login-otp' | 'dashboard' | 'browse' | 'detail' | 'detail-record' | 'detail-full';
|
|
241
|
+
type TemplateId = 'table' | 'table-infinity' | 'table-drag' | 'table-card' | 'table-card-list' | 'tabbed' | 'form' | 'form-stacked' | 'form-wizard' | 'form-inline' | 'databody' | 'databody-detail' | 'databody-split' | 'sectioned' | 'typography' | 'colors' | 'login' | 'login-forgot' | 'login-reset' | 'login-otp' | 'dashboard' | 'workbench-panel-editor' | 'workbench-sql-editor' | 'workbench-agent-chat' | 'browse' | 'detail' | 'detail-record' | 'detail-full' | 'list-detail' | 'panel';
|
|
241
242
|
interface GlobalTheme {
|
|
242
243
|
radius: number;
|
|
243
244
|
primaryHue: number;
|
|
@@ -294,6 +295,47 @@ interface DashboardBodyTemplateProps {
|
|
|
294
295
|
}
|
|
295
296
|
declare function DashboardBodyTemplate({ theme, className, title, description, topBar, toolbar, variableBar, children, contentClassName, }: DashboardBodyTemplateProps): react_jsx_runtime.JSX.Element;
|
|
296
297
|
|
|
298
|
+
interface WorkbenchBodyTemplateProps {
|
|
299
|
+
theme?: CSSProperties;
|
|
300
|
+
className?: string;
|
|
301
|
+
contentClassName?: string;
|
|
302
|
+
title?: ReactNode;
|
|
303
|
+
description?: ReactNode;
|
|
304
|
+
topBar?: ReactNode;
|
|
305
|
+
/** Right side of the built-in workbench header. Prefer this over toolbar for new code. */
|
|
306
|
+
headerRight?: ReactNode;
|
|
307
|
+
/** @deprecated Use headerRight. */
|
|
308
|
+
toolbar?: ReactNode;
|
|
309
|
+
actions?: ReactNode;
|
|
310
|
+
leftPane?: ReactNode;
|
|
311
|
+
mainPane?: ReactNode;
|
|
312
|
+
rightPane?: ReactNode;
|
|
313
|
+
bottomPane?: ReactNode;
|
|
314
|
+
children?: ReactNode;
|
|
315
|
+
resizable?: boolean;
|
|
316
|
+
leftPaneCollapsed?: boolean;
|
|
317
|
+
rightPaneCollapsed?: boolean;
|
|
318
|
+
bottomPaneCollapsed?: boolean;
|
|
319
|
+
leftPaneWidth?: number;
|
|
320
|
+
rightPaneWidth?: number;
|
|
321
|
+
bottomPaneHeight?: number;
|
|
322
|
+
minLeftPaneWidth?: number;
|
|
323
|
+
maxLeftPaneWidth?: number;
|
|
324
|
+
minRightPaneWidth?: number;
|
|
325
|
+
maxRightPaneWidth?: number;
|
|
326
|
+
minBottomPaneHeight?: number;
|
|
327
|
+
maxBottomPaneHeight?: number;
|
|
328
|
+
leftPaneClassName?: string;
|
|
329
|
+
mainPaneClassName?: string;
|
|
330
|
+
rightPaneClassName?: string;
|
|
331
|
+
bottomPaneClassName?: string;
|
|
332
|
+
/** Mobile Sheet label for the left pane trigger */
|
|
333
|
+
leftPaneLabel?: string;
|
|
334
|
+
/** Mobile Sheet label for the right pane trigger */
|
|
335
|
+
rightPaneLabel?: string;
|
|
336
|
+
}
|
|
337
|
+
declare function WorkbenchBodyTemplate({ theme, className, contentClassName, title, description, topBar, headerRight, toolbar, actions, leftPane, mainPane, rightPane, bottomPane, children, resizable, leftPaneCollapsed, rightPaneCollapsed, bottomPaneCollapsed, leftPaneWidth, rightPaneWidth, bottomPaneHeight, minLeftPaneWidth, maxLeftPaneWidth, minRightPaneWidth, maxRightPaneWidth, minBottomPaneHeight, maxBottomPaneHeight, leftPaneClassName, mainPaneClassName, rightPaneClassName, bottomPaneClassName, leftPaneLabel, rightPaneLabel, }: WorkbenchBodyTemplateProps): react_jsx_runtime.JSX.Element;
|
|
338
|
+
|
|
297
339
|
interface DataBodyTabProps {
|
|
298
340
|
id: string;
|
|
299
341
|
label: React__default.ReactNode;
|
|
@@ -328,6 +370,7 @@ interface DataBodyGroupProps {
|
|
|
328
370
|
description?: React__default.ReactNode;
|
|
329
371
|
actions?: React__default.ReactNode;
|
|
330
372
|
danger?: boolean;
|
|
373
|
+
className?: string;
|
|
331
374
|
children?: React__default.ReactNode;
|
|
332
375
|
}
|
|
333
376
|
declare function DataBodyGroup(props: DataBodyGroupProps): react_jsx_runtime.JSX.Element;
|
|
@@ -443,6 +486,52 @@ declare const DetailBodyTemplate: typeof DetailBodyTemplateRoot & {
|
|
|
443
486
|
Section: typeof DetailBodySection;
|
|
444
487
|
};
|
|
445
488
|
|
|
489
|
+
interface ListDetailBodyTemplateProps {
|
|
490
|
+
theme?: CSSProperties;
|
|
491
|
+
className?: string;
|
|
492
|
+
topBar?: ReactNode;
|
|
493
|
+
/** List pane content — typically a DataGrid, DataGridList, or navigation list */
|
|
494
|
+
list: ReactNode;
|
|
495
|
+
/**
|
|
496
|
+
* Detail pane content. When undefined, `emptyDetail` is shown on desktop
|
|
497
|
+
* and the list pane fills the screen on mobile.
|
|
498
|
+
*/
|
|
499
|
+
detail?: ReactNode;
|
|
500
|
+
/** Placeholder rendered in the detail pane when nothing is selected */
|
|
501
|
+
emptyDetail?: ReactNode;
|
|
502
|
+
/** Width of the list pane in px. Default: 320 */
|
|
503
|
+
listWidth?: number;
|
|
504
|
+
listClassName?: string;
|
|
505
|
+
detailClassName?: string;
|
|
506
|
+
/** Called when the mobile back button is pressed — use to clear the selected item */
|
|
507
|
+
onBack?: () => void;
|
|
508
|
+
/** Label for the mobile back button. Default: "Back" */
|
|
509
|
+
backLabel?: string;
|
|
510
|
+
}
|
|
511
|
+
declare function ListDetailBodyTemplate({ theme, className, topBar, list, detail, emptyDetail, listWidth, listClassName, detailClassName, onBack, backLabel, }: ListDetailBodyTemplateProps): react_jsx_runtime.JSX.Element;
|
|
512
|
+
|
|
513
|
+
interface PanelTemplateProps {
|
|
514
|
+
title?: React__default.ReactNode;
|
|
515
|
+
eyebrow?: React__default.ReactNode;
|
|
516
|
+
actions?: React__default.ReactNode;
|
|
517
|
+
footer?: React__default.ReactNode;
|
|
518
|
+
children?: React__default.ReactNode;
|
|
519
|
+
className?: string;
|
|
520
|
+
bodyClassName?: string;
|
|
521
|
+
}
|
|
522
|
+
interface PanelTemplateSectionProps {
|
|
523
|
+
title?: React__default.ReactNode;
|
|
524
|
+
description?: React__default.ReactNode;
|
|
525
|
+
actions?: React__default.ReactNode;
|
|
526
|
+
className?: string;
|
|
527
|
+
children?: React__default.ReactNode;
|
|
528
|
+
}
|
|
529
|
+
declare function PanelTemplateSection({ title, description, actions, className, children, }: PanelTemplateSectionProps): react_jsx_runtime.JSX.Element;
|
|
530
|
+
declare function PanelTemplateRoot({ title, eyebrow, actions, footer, children, className, bodyClassName, }: PanelTemplateProps): react_jsx_runtime.JSX.Element;
|
|
531
|
+
declare const PanelTemplate: typeof PanelTemplateRoot & {
|
|
532
|
+
Section: typeof PanelTemplateSection;
|
|
533
|
+
};
|
|
534
|
+
|
|
446
535
|
type FormWizardVariant = 'card' | 'plain';
|
|
447
536
|
interface FormWizardStep {
|
|
448
537
|
key: string;
|
|
@@ -588,6 +677,13 @@ interface PageTopBarProps {
|
|
|
588
677
|
className?: string;
|
|
589
678
|
style?: React__default.CSSProperties;
|
|
590
679
|
children?: React__default.ReactNode;
|
|
680
|
+
/**
|
|
681
|
+
* Mobile sidebar trigger shown at the far left of the bar.
|
|
682
|
+
* - undefined (default): auto-detect — shows when inside SidebarProvider on mobile
|
|
683
|
+
* - false: suppress entirely
|
|
684
|
+
* - ReactNode: custom trigger content
|
|
685
|
+
*/
|
|
686
|
+
sidebarTrigger?: false | React__default.ReactNode;
|
|
591
687
|
}
|
|
592
688
|
type PageBreadcrumbItem = string | {
|
|
593
689
|
label: string;
|
|
@@ -604,7 +700,7 @@ declare function buildTopBar(opts: {
|
|
|
604
700
|
left: React__default.ReactNode;
|
|
605
701
|
right?: React__default.ReactNode;
|
|
606
702
|
}): React__default.ReactNode;
|
|
607
|
-
declare function PageTopBar({ left, right, variant, height, className, style, children, }: PageTopBarProps): react_jsx_runtime.JSX.Element;
|
|
703
|
+
declare function PageTopBar({ left, right, variant, height, className, style, children, sidebarTrigger, }: PageTopBarProps): react_jsx_runtime.JSX.Element;
|
|
608
704
|
|
|
609
705
|
interface TemplateNavigationItem {
|
|
610
706
|
id: TemplateId;
|
|
@@ -627,6 +723,7 @@ declare function buildTemplateTheme(g: {
|
|
|
627
723
|
radius: number;
|
|
628
724
|
primaryHue: number;
|
|
629
725
|
primaryChroma: number;
|
|
726
|
+
darkMode?: boolean;
|
|
630
727
|
density?: DensityId;
|
|
631
728
|
fontScale?: number;
|
|
632
729
|
lineHeight?: number;
|
|
@@ -643,4 +740,4 @@ declare function cn(...inputs: ClassValue[]): string;
|
|
|
643
740
|
|
|
644
741
|
declare const useThemeStore: zustand.UseBoundStore<zustand.StoreApi<ThemeState>>;
|
|
645
742
|
|
|
646
|
-
export { Avatar, AvatarBadge, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarImage, Badge, BrowseBodyTemplate, type BrowseBodyTemplateProps, Button, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, ColorsBodyTemplate, type ColorsBodyTemplateProps, DashboardBodyTemplate, type DashboardBodyTemplateProps, DashboardPanel, type DashboardPanelProps, type DataBodyBodyProps, type DataBodyFieldProps, type DataBodyGroupProps, type DataBodyRowProps, type DataBodySectionProps, type DataBodySummaryProps, type DataBodyTabProps, DataBodyTemplate, type DataBodyTemplateProps, DataPage, type DataPageActionsProps, type DataPageContentProps, type DataPageFooterProps, type DataPageGroupBodyProps, type DataPageGroupHeaderProps, type DataPageGroupProps, type DataPageGroupToolbarProps, type DataPageHeaderProps, type DataPageProps, type DataPageTabProps, type DataPageTabsProps, type DataPageTitleBlockProps, type DensityId, type DetailBodyHeaderProps, type DetailBodySectionProps, type DetailBodyTabProps, DetailBodyTemplate, type DetailBodyTemplateProps, type DetailBodyVariant, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, type EmptyStateAction, type EmptyStateProps, FormWizardBodyTemplate, type FormWizardBodyTemplateProps, type FormWizardStep, type FormWizardVariant, type GlobalTheme, type GroupLayout, type GroupVariant, Input, Label, type LoginBg, LoginBodyTemplate, type LoginBodyTemplateProps, type LoginCard, type LoginCardWidth, type LoginLayout, type LoginSide, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuPositioner, NavigationMenuTrigger, PageBreadcrumb, type PageBreadcrumbItem, PageTopBar, type PageTopBarProps, type PageTopBarVariant, 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, type ShellId, 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$1 as Tabs, TabsContent, TabsList, TabsTrigger, type TemplateId, type TemplateNavigationGroup, type TemplateNavigationItem, type TemplateOverride, type ThemeState, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TypographyBodyTemplate, type TypographyBodyTemplateProps, badgeVariants, buildTemplateTheme, buildTopBar, buttonVariants, cn, navigationMenuTriggerStyle, tabsListVariants, useIsMobile, useSidebar, useStyleInjector, useThemeStore };
|
|
743
|
+
export { Avatar, AvatarBadge, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarImage, Badge, BrowseBodyTemplate, type BrowseBodyTemplateProps, Button, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, ColorsBodyTemplate, type ColorsBodyTemplateProps, DashboardBodyTemplate, type DashboardBodyTemplateProps, DashboardPanel, type DashboardPanelProps, type DataBodyBodyProps, type DataBodyFieldProps, type DataBodyGroupProps, type DataBodyRowProps, type DataBodySectionProps, type DataBodySummaryProps, type DataBodyTabProps, DataBodyTemplate, type DataBodyTemplateProps, DataPage, type DataPageActionsProps, type DataPageContentProps, type DataPageFooterProps, type DataPageGroupBodyProps, type DataPageGroupHeaderProps, type DataPageGroupProps, type DataPageGroupToolbarProps, type DataPageHeaderProps, type DataPageProps, type DataPageTabProps, type DataPageTabsProps, type DataPageTitleBlockProps, type DensityId, type DetailBodyHeaderProps, type DetailBodySectionProps, type DetailBodyTabProps, DetailBodyTemplate, type DetailBodyTemplateProps, type DetailBodyVariant, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, type EmptyStateAction, type EmptyStateProps, FormWizardBodyTemplate, type FormWizardBodyTemplateProps, type FormWizardStep, type FormWizardVariant, type GlobalTheme, type GroupLayout, type GroupVariant, Input, Label, ListDetailBodyTemplate, type ListDetailBodyTemplateProps, type LoginBg, LoginBodyTemplate, type LoginBodyTemplateProps, type LoginCard, type LoginCardWidth, type LoginLayout, type LoginSide, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuPositioner, NavigationMenuTrigger, PageBreadcrumb, type PageBreadcrumbItem, PageTopBar, type PageTopBarProps, type PageTopBarVariant, PanelTemplate, type PanelTemplateProps, type PanelTemplateSectionProps, 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, type ShellId, 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$1 as Tabs, TabsContent, TabsList, TabsTrigger, type TemplateId, type TemplateNavigationGroup, type TemplateNavigationItem, type TemplateOverride, type ThemeState, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TypographyBodyTemplate, type TypographyBodyTemplateProps, WorkbenchBodyTemplate, type WorkbenchBodyTemplateProps, badgeVariants, buildTemplateTheme, buildTopBar, buttonVariants, cn, navigationMenuTriggerStyle, tabsListVariants, useIsMobile, useSidebar, useSidebarOptional, useStyleInjector, useThemeStore };
|