@loykin/designkit 0.0.1-dev.1 → 0.0.1-dev.3
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 +230 -97
- package/dist/index.cjs +606 -14
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +163 -3
- package/dist/index.d.ts +163 -3
- package/dist/index.js +604 -18
- package/dist/index.js.map +1 -1
- package/dist/styles.css +2 -77
- package/package.json +5 -3
package/dist/index.d.cts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import * as React$1 from 'react';
|
|
3
|
-
import React__default, { ComponentType } from 'react';
|
|
3
|
+
import React__default, { ComponentType, CSSProperties, ReactNode } from 'react';
|
|
4
4
|
import { Avatar as Avatar$1 } from '@base-ui/react/avatar';
|
|
5
5
|
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
6
6
|
import { useRender } from '@base-ui/react/use-render';
|
|
@@ -237,7 +237,7 @@ declare function TabsContent({ className, ...props }: Tabs$2.Panel.Props): react
|
|
|
237
237
|
|
|
238
238
|
type ShellId = 'sidebar' | 'header';
|
|
239
239
|
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';
|
|
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' | 'workbench-panel-editor' | 'workbench-sql-editor' | 'workbench-agent-chat' | 'browse' | 'detail' | 'detail-record' | 'detail-full' | 'list-detail';
|
|
241
241
|
interface GlobalTheme {
|
|
242
242
|
radius: number;
|
|
243
243
|
primaryHue: number;
|
|
@@ -266,6 +266,71 @@ interface ThemeState {
|
|
|
266
266
|
setTemplate: (template: TemplateId) => void;
|
|
267
267
|
}
|
|
268
268
|
|
|
269
|
+
interface DashboardPanelProps {
|
|
270
|
+
title?: string;
|
|
271
|
+
description?: string;
|
|
272
|
+
loading?: boolean;
|
|
273
|
+
error?: string | null;
|
|
274
|
+
transparent?: boolean;
|
|
275
|
+
/** Edit mode — shows drag handle and grab cursor on the header */
|
|
276
|
+
editable?: boolean;
|
|
277
|
+
className?: string;
|
|
278
|
+
style?: CSSProperties;
|
|
279
|
+
children?: ReactNode;
|
|
280
|
+
headerRight?: ReactNode;
|
|
281
|
+
}
|
|
282
|
+
declare const DashboardPanel: React$1.ForwardRefExoticComponent<DashboardPanelProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
283
|
+
interface DashboardBodyTemplateProps {
|
|
284
|
+
theme?: CSSProperties;
|
|
285
|
+
className?: string;
|
|
286
|
+
title?: ReactNode;
|
|
287
|
+
description?: ReactNode;
|
|
288
|
+
topBar?: ReactNode;
|
|
289
|
+
toolbar?: ReactNode;
|
|
290
|
+
/** Variable bar — rendered as a separate strip between the header and content */
|
|
291
|
+
variableBar?: ReactNode;
|
|
292
|
+
children?: ReactNode;
|
|
293
|
+
contentClassName?: string;
|
|
294
|
+
}
|
|
295
|
+
declare function DashboardBodyTemplate({ theme, className, title, description, topBar, toolbar, variableBar, children, contentClassName, }: DashboardBodyTemplateProps): react_jsx_runtime.JSX.Element;
|
|
296
|
+
|
|
297
|
+
interface WorkbenchBodyTemplateProps {
|
|
298
|
+
theme?: CSSProperties;
|
|
299
|
+
className?: string;
|
|
300
|
+
contentClassName?: string;
|
|
301
|
+
title?: ReactNode;
|
|
302
|
+
description?: ReactNode;
|
|
303
|
+
topBar?: ReactNode;
|
|
304
|
+
/** Right side of the built-in workbench header. Prefer this over toolbar for new code. */
|
|
305
|
+
headerRight?: ReactNode;
|
|
306
|
+
/** @deprecated Use headerRight. */
|
|
307
|
+
toolbar?: ReactNode;
|
|
308
|
+
actions?: ReactNode;
|
|
309
|
+
leftPane?: ReactNode;
|
|
310
|
+
mainPane?: ReactNode;
|
|
311
|
+
rightPane?: ReactNode;
|
|
312
|
+
bottomPane?: ReactNode;
|
|
313
|
+
children?: ReactNode;
|
|
314
|
+
resizable?: boolean;
|
|
315
|
+
leftPaneCollapsed?: boolean;
|
|
316
|
+
rightPaneCollapsed?: boolean;
|
|
317
|
+
bottomPaneCollapsed?: boolean;
|
|
318
|
+
leftPaneWidth?: number;
|
|
319
|
+
rightPaneWidth?: number;
|
|
320
|
+
bottomPaneHeight?: number;
|
|
321
|
+
minLeftPaneWidth?: number;
|
|
322
|
+
maxLeftPaneWidth?: number;
|
|
323
|
+
minRightPaneWidth?: number;
|
|
324
|
+
maxRightPaneWidth?: number;
|
|
325
|
+
minBottomPaneHeight?: number;
|
|
326
|
+
maxBottomPaneHeight?: number;
|
|
327
|
+
leftPaneClassName?: string;
|
|
328
|
+
mainPaneClassName?: string;
|
|
329
|
+
rightPaneClassName?: string;
|
|
330
|
+
bottomPaneClassName?: string;
|
|
331
|
+
}
|
|
332
|
+
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, }: WorkbenchBodyTemplateProps): react_jsx_runtime.JSX.Element;
|
|
333
|
+
|
|
269
334
|
interface DataBodyTabProps {
|
|
270
335
|
id: string;
|
|
271
336
|
label: React__default.ReactNode;
|
|
@@ -300,6 +365,7 @@ interface DataBodyGroupProps {
|
|
|
300
365
|
description?: React__default.ReactNode;
|
|
301
366
|
actions?: React__default.ReactNode;
|
|
302
367
|
danger?: boolean;
|
|
368
|
+
className?: string;
|
|
303
369
|
children?: React__default.ReactNode;
|
|
304
370
|
}
|
|
305
371
|
declare function DataBodyGroup(props: DataBodyGroupProps): react_jsx_runtime.JSX.Element;
|
|
@@ -342,6 +408,99 @@ declare const DataBodyTemplate: typeof Root$1 & {
|
|
|
342
408
|
Field: typeof DataBodyField;
|
|
343
409
|
};
|
|
344
410
|
|
|
411
|
+
interface BrowseBodyTemplateProps {
|
|
412
|
+
theme?: React__default.CSSProperties;
|
|
413
|
+
className?: string;
|
|
414
|
+
topBar?: React__default.ReactNode;
|
|
415
|
+
title?: React__default.ReactNode;
|
|
416
|
+
description?: React__default.ReactNode;
|
|
417
|
+
actions?: React__default.ReactNode;
|
|
418
|
+
sidebar: React__default.ReactNode;
|
|
419
|
+
sidebarTitle?: string;
|
|
420
|
+
sidebarWidth?: string;
|
|
421
|
+
toolbar?: React__default.ReactNode;
|
|
422
|
+
footer?: React__default.ReactNode;
|
|
423
|
+
contentClassName?: string;
|
|
424
|
+
children?: React__default.ReactNode;
|
|
425
|
+
}
|
|
426
|
+
declare function BrowseBodyTemplate({ theme, className, topBar, title, description, actions, sidebar, sidebarTitle, sidebarWidth, toolbar, footer, contentClassName, children, }: BrowseBodyTemplateProps): react_jsx_runtime.JSX.Element;
|
|
427
|
+
|
|
428
|
+
type DetailBodyVariant = 'media' | 'record' | 'full';
|
|
429
|
+
interface DetailBodyTemplateProps {
|
|
430
|
+
variant?: DetailBodyVariant;
|
|
431
|
+
theme?: React__default.CSSProperties;
|
|
432
|
+
className?: string;
|
|
433
|
+
topBar?: React__default.ReactNode;
|
|
434
|
+
header?: React__default.ReactNode;
|
|
435
|
+
lead?: React__default.ReactNode;
|
|
436
|
+
eyebrow?: React__default.ReactNode;
|
|
437
|
+
title?: React__default.ReactNode;
|
|
438
|
+
description?: React__default.ReactNode;
|
|
439
|
+
status?: React__default.ReactNode;
|
|
440
|
+
actions?: React__default.ReactNode;
|
|
441
|
+
media?: React__default.ReactNode;
|
|
442
|
+
aside?: React__default.ReactNode;
|
|
443
|
+
summary?: React__default.ReactNode;
|
|
444
|
+
stickyAside?: boolean;
|
|
445
|
+
contentClassName?: string;
|
|
446
|
+
mediaClassName?: string;
|
|
447
|
+
asideClassName?: string;
|
|
448
|
+
children?: React__default.ReactNode;
|
|
449
|
+
}
|
|
450
|
+
interface DetailBodyHeaderProps {
|
|
451
|
+
eyebrow?: React__default.ReactNode;
|
|
452
|
+
title?: React__default.ReactNode;
|
|
453
|
+
description?: React__default.ReactNode;
|
|
454
|
+
status?: React__default.ReactNode;
|
|
455
|
+
actions?: React__default.ReactNode;
|
|
456
|
+
compact?: boolean;
|
|
457
|
+
className?: string;
|
|
458
|
+
}
|
|
459
|
+
declare function DetailBodyHeader({ eyebrow, title, description, status, actions, compact, className, }: DetailBodyHeaderProps): react_jsx_runtime.JSX.Element;
|
|
460
|
+
interface DetailBodyTabProps {
|
|
461
|
+
id: string;
|
|
462
|
+
label: React__default.ReactNode;
|
|
463
|
+
count?: number;
|
|
464
|
+
disabled?: boolean;
|
|
465
|
+
children?: React__default.ReactNode;
|
|
466
|
+
}
|
|
467
|
+
declare function DetailBodyTab(_props: DetailBodyTabProps): null;
|
|
468
|
+
interface DetailBodySectionProps {
|
|
469
|
+
title?: React__default.ReactNode;
|
|
470
|
+
description?: React__default.ReactNode;
|
|
471
|
+
actions?: React__default.ReactNode;
|
|
472
|
+
surface?: 'plain' | 'card' | 'bordered';
|
|
473
|
+
className?: string;
|
|
474
|
+
children?: React__default.ReactNode;
|
|
475
|
+
}
|
|
476
|
+
declare function DetailBodySection({ title, description, actions, surface, className, children, }: DetailBodySectionProps): react_jsx_runtime.JSX.Element;
|
|
477
|
+
declare function DetailBodyTemplateRoot({ variant, theme, className, topBar, header, lead, eyebrow, title, description, status, actions, media, aside, summary, stickyAside, contentClassName, mediaClassName, asideClassName, children, }: DetailBodyTemplateProps): react_jsx_runtime.JSX.Element;
|
|
478
|
+
declare const DetailBodyTemplate: typeof DetailBodyTemplateRoot & {
|
|
479
|
+
Header: typeof DetailBodyHeader;
|
|
480
|
+
Tab: typeof DetailBodyTab;
|
|
481
|
+
Section: typeof DetailBodySection;
|
|
482
|
+
};
|
|
483
|
+
|
|
484
|
+
interface ListDetailBodyTemplateProps {
|
|
485
|
+
theme?: CSSProperties;
|
|
486
|
+
className?: string;
|
|
487
|
+
topBar?: ReactNode;
|
|
488
|
+
/** List pane content — typically a DataGrid, DataGridList, or navigation list */
|
|
489
|
+
list: ReactNode;
|
|
490
|
+
/**
|
|
491
|
+
* Detail pane content. When undefined, `emptyDetail` is shown on desktop
|
|
492
|
+
* and the list pane fills the screen on mobile.
|
|
493
|
+
*/
|
|
494
|
+
detail?: ReactNode;
|
|
495
|
+
/** Placeholder rendered in the detail pane when nothing is selected */
|
|
496
|
+
emptyDetail?: ReactNode;
|
|
497
|
+
/** Width of the list pane in px. Default: 320 */
|
|
498
|
+
listWidth?: number;
|
|
499
|
+
listClassName?: string;
|
|
500
|
+
detailClassName?: string;
|
|
501
|
+
}
|
|
502
|
+
declare function ListDetailBodyTemplate({ theme, className, topBar, list, detail, emptyDetail, listWidth, listClassName, detailClassName, }: ListDetailBodyTemplateProps): react_jsx_runtime.JSX.Element;
|
|
503
|
+
|
|
345
504
|
type FormWizardVariant = 'card' | 'plain';
|
|
346
505
|
interface FormWizardStep {
|
|
347
506
|
key: string;
|
|
@@ -526,6 +685,7 @@ declare function buildTemplateTheme(g: {
|
|
|
526
685
|
radius: number;
|
|
527
686
|
primaryHue: number;
|
|
528
687
|
primaryChroma: number;
|
|
688
|
+
darkMode?: boolean;
|
|
529
689
|
density?: DensityId;
|
|
530
690
|
fontScale?: number;
|
|
531
691
|
lineHeight?: number;
|
|
@@ -542,4 +702,4 @@ declare function cn(...inputs: ClassValue[]): string;
|
|
|
542
702
|
|
|
543
703
|
declare const useThemeStore: zustand.UseBoundStore<zustand.StoreApi<ThemeState>>;
|
|
544
704
|
|
|
545
|
-
export { Avatar, AvatarBadge, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarImage, Badge, Button, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, ColorsBodyTemplate, type ColorsBodyTemplateProps, 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, 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 };
|
|
705
|
+
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, 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, useStyleInjector, useThemeStore };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import * as React$1 from 'react';
|
|
3
|
-
import React__default, { ComponentType } from 'react';
|
|
3
|
+
import React__default, { ComponentType, CSSProperties, ReactNode } from 'react';
|
|
4
4
|
import { Avatar as Avatar$1 } from '@base-ui/react/avatar';
|
|
5
5
|
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
6
6
|
import { useRender } from '@base-ui/react/use-render';
|
|
@@ -237,7 +237,7 @@ declare function TabsContent({ className, ...props }: Tabs$2.Panel.Props): react
|
|
|
237
237
|
|
|
238
238
|
type ShellId = 'sidebar' | 'header';
|
|
239
239
|
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';
|
|
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' | 'workbench-panel-editor' | 'workbench-sql-editor' | 'workbench-agent-chat' | 'browse' | 'detail' | 'detail-record' | 'detail-full' | 'list-detail';
|
|
241
241
|
interface GlobalTheme {
|
|
242
242
|
radius: number;
|
|
243
243
|
primaryHue: number;
|
|
@@ -266,6 +266,71 @@ interface ThemeState {
|
|
|
266
266
|
setTemplate: (template: TemplateId) => void;
|
|
267
267
|
}
|
|
268
268
|
|
|
269
|
+
interface DashboardPanelProps {
|
|
270
|
+
title?: string;
|
|
271
|
+
description?: string;
|
|
272
|
+
loading?: boolean;
|
|
273
|
+
error?: string | null;
|
|
274
|
+
transparent?: boolean;
|
|
275
|
+
/** Edit mode — shows drag handle and grab cursor on the header */
|
|
276
|
+
editable?: boolean;
|
|
277
|
+
className?: string;
|
|
278
|
+
style?: CSSProperties;
|
|
279
|
+
children?: ReactNode;
|
|
280
|
+
headerRight?: ReactNode;
|
|
281
|
+
}
|
|
282
|
+
declare const DashboardPanel: React$1.ForwardRefExoticComponent<DashboardPanelProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
283
|
+
interface DashboardBodyTemplateProps {
|
|
284
|
+
theme?: CSSProperties;
|
|
285
|
+
className?: string;
|
|
286
|
+
title?: ReactNode;
|
|
287
|
+
description?: ReactNode;
|
|
288
|
+
topBar?: ReactNode;
|
|
289
|
+
toolbar?: ReactNode;
|
|
290
|
+
/** Variable bar — rendered as a separate strip between the header and content */
|
|
291
|
+
variableBar?: ReactNode;
|
|
292
|
+
children?: ReactNode;
|
|
293
|
+
contentClassName?: string;
|
|
294
|
+
}
|
|
295
|
+
declare function DashboardBodyTemplate({ theme, className, title, description, topBar, toolbar, variableBar, children, contentClassName, }: DashboardBodyTemplateProps): react_jsx_runtime.JSX.Element;
|
|
296
|
+
|
|
297
|
+
interface WorkbenchBodyTemplateProps {
|
|
298
|
+
theme?: CSSProperties;
|
|
299
|
+
className?: string;
|
|
300
|
+
contentClassName?: string;
|
|
301
|
+
title?: ReactNode;
|
|
302
|
+
description?: ReactNode;
|
|
303
|
+
topBar?: ReactNode;
|
|
304
|
+
/** Right side of the built-in workbench header. Prefer this over toolbar for new code. */
|
|
305
|
+
headerRight?: ReactNode;
|
|
306
|
+
/** @deprecated Use headerRight. */
|
|
307
|
+
toolbar?: ReactNode;
|
|
308
|
+
actions?: ReactNode;
|
|
309
|
+
leftPane?: ReactNode;
|
|
310
|
+
mainPane?: ReactNode;
|
|
311
|
+
rightPane?: ReactNode;
|
|
312
|
+
bottomPane?: ReactNode;
|
|
313
|
+
children?: ReactNode;
|
|
314
|
+
resizable?: boolean;
|
|
315
|
+
leftPaneCollapsed?: boolean;
|
|
316
|
+
rightPaneCollapsed?: boolean;
|
|
317
|
+
bottomPaneCollapsed?: boolean;
|
|
318
|
+
leftPaneWidth?: number;
|
|
319
|
+
rightPaneWidth?: number;
|
|
320
|
+
bottomPaneHeight?: number;
|
|
321
|
+
minLeftPaneWidth?: number;
|
|
322
|
+
maxLeftPaneWidth?: number;
|
|
323
|
+
minRightPaneWidth?: number;
|
|
324
|
+
maxRightPaneWidth?: number;
|
|
325
|
+
minBottomPaneHeight?: number;
|
|
326
|
+
maxBottomPaneHeight?: number;
|
|
327
|
+
leftPaneClassName?: string;
|
|
328
|
+
mainPaneClassName?: string;
|
|
329
|
+
rightPaneClassName?: string;
|
|
330
|
+
bottomPaneClassName?: string;
|
|
331
|
+
}
|
|
332
|
+
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, }: WorkbenchBodyTemplateProps): react_jsx_runtime.JSX.Element;
|
|
333
|
+
|
|
269
334
|
interface DataBodyTabProps {
|
|
270
335
|
id: string;
|
|
271
336
|
label: React__default.ReactNode;
|
|
@@ -300,6 +365,7 @@ interface DataBodyGroupProps {
|
|
|
300
365
|
description?: React__default.ReactNode;
|
|
301
366
|
actions?: React__default.ReactNode;
|
|
302
367
|
danger?: boolean;
|
|
368
|
+
className?: string;
|
|
303
369
|
children?: React__default.ReactNode;
|
|
304
370
|
}
|
|
305
371
|
declare function DataBodyGroup(props: DataBodyGroupProps): react_jsx_runtime.JSX.Element;
|
|
@@ -342,6 +408,99 @@ declare const DataBodyTemplate: typeof Root$1 & {
|
|
|
342
408
|
Field: typeof DataBodyField;
|
|
343
409
|
};
|
|
344
410
|
|
|
411
|
+
interface BrowseBodyTemplateProps {
|
|
412
|
+
theme?: React__default.CSSProperties;
|
|
413
|
+
className?: string;
|
|
414
|
+
topBar?: React__default.ReactNode;
|
|
415
|
+
title?: React__default.ReactNode;
|
|
416
|
+
description?: React__default.ReactNode;
|
|
417
|
+
actions?: React__default.ReactNode;
|
|
418
|
+
sidebar: React__default.ReactNode;
|
|
419
|
+
sidebarTitle?: string;
|
|
420
|
+
sidebarWidth?: string;
|
|
421
|
+
toolbar?: React__default.ReactNode;
|
|
422
|
+
footer?: React__default.ReactNode;
|
|
423
|
+
contentClassName?: string;
|
|
424
|
+
children?: React__default.ReactNode;
|
|
425
|
+
}
|
|
426
|
+
declare function BrowseBodyTemplate({ theme, className, topBar, title, description, actions, sidebar, sidebarTitle, sidebarWidth, toolbar, footer, contentClassName, children, }: BrowseBodyTemplateProps): react_jsx_runtime.JSX.Element;
|
|
427
|
+
|
|
428
|
+
type DetailBodyVariant = 'media' | 'record' | 'full';
|
|
429
|
+
interface DetailBodyTemplateProps {
|
|
430
|
+
variant?: DetailBodyVariant;
|
|
431
|
+
theme?: React__default.CSSProperties;
|
|
432
|
+
className?: string;
|
|
433
|
+
topBar?: React__default.ReactNode;
|
|
434
|
+
header?: React__default.ReactNode;
|
|
435
|
+
lead?: React__default.ReactNode;
|
|
436
|
+
eyebrow?: React__default.ReactNode;
|
|
437
|
+
title?: React__default.ReactNode;
|
|
438
|
+
description?: React__default.ReactNode;
|
|
439
|
+
status?: React__default.ReactNode;
|
|
440
|
+
actions?: React__default.ReactNode;
|
|
441
|
+
media?: React__default.ReactNode;
|
|
442
|
+
aside?: React__default.ReactNode;
|
|
443
|
+
summary?: React__default.ReactNode;
|
|
444
|
+
stickyAside?: boolean;
|
|
445
|
+
contentClassName?: string;
|
|
446
|
+
mediaClassName?: string;
|
|
447
|
+
asideClassName?: string;
|
|
448
|
+
children?: React__default.ReactNode;
|
|
449
|
+
}
|
|
450
|
+
interface DetailBodyHeaderProps {
|
|
451
|
+
eyebrow?: React__default.ReactNode;
|
|
452
|
+
title?: React__default.ReactNode;
|
|
453
|
+
description?: React__default.ReactNode;
|
|
454
|
+
status?: React__default.ReactNode;
|
|
455
|
+
actions?: React__default.ReactNode;
|
|
456
|
+
compact?: boolean;
|
|
457
|
+
className?: string;
|
|
458
|
+
}
|
|
459
|
+
declare function DetailBodyHeader({ eyebrow, title, description, status, actions, compact, className, }: DetailBodyHeaderProps): react_jsx_runtime.JSX.Element;
|
|
460
|
+
interface DetailBodyTabProps {
|
|
461
|
+
id: string;
|
|
462
|
+
label: React__default.ReactNode;
|
|
463
|
+
count?: number;
|
|
464
|
+
disabled?: boolean;
|
|
465
|
+
children?: React__default.ReactNode;
|
|
466
|
+
}
|
|
467
|
+
declare function DetailBodyTab(_props: DetailBodyTabProps): null;
|
|
468
|
+
interface DetailBodySectionProps {
|
|
469
|
+
title?: React__default.ReactNode;
|
|
470
|
+
description?: React__default.ReactNode;
|
|
471
|
+
actions?: React__default.ReactNode;
|
|
472
|
+
surface?: 'plain' | 'card' | 'bordered';
|
|
473
|
+
className?: string;
|
|
474
|
+
children?: React__default.ReactNode;
|
|
475
|
+
}
|
|
476
|
+
declare function DetailBodySection({ title, description, actions, surface, className, children, }: DetailBodySectionProps): react_jsx_runtime.JSX.Element;
|
|
477
|
+
declare function DetailBodyTemplateRoot({ variant, theme, className, topBar, header, lead, eyebrow, title, description, status, actions, media, aside, summary, stickyAside, contentClassName, mediaClassName, asideClassName, children, }: DetailBodyTemplateProps): react_jsx_runtime.JSX.Element;
|
|
478
|
+
declare const DetailBodyTemplate: typeof DetailBodyTemplateRoot & {
|
|
479
|
+
Header: typeof DetailBodyHeader;
|
|
480
|
+
Tab: typeof DetailBodyTab;
|
|
481
|
+
Section: typeof DetailBodySection;
|
|
482
|
+
};
|
|
483
|
+
|
|
484
|
+
interface ListDetailBodyTemplateProps {
|
|
485
|
+
theme?: CSSProperties;
|
|
486
|
+
className?: string;
|
|
487
|
+
topBar?: ReactNode;
|
|
488
|
+
/** List pane content — typically a DataGrid, DataGridList, or navigation list */
|
|
489
|
+
list: ReactNode;
|
|
490
|
+
/**
|
|
491
|
+
* Detail pane content. When undefined, `emptyDetail` is shown on desktop
|
|
492
|
+
* and the list pane fills the screen on mobile.
|
|
493
|
+
*/
|
|
494
|
+
detail?: ReactNode;
|
|
495
|
+
/** Placeholder rendered in the detail pane when nothing is selected */
|
|
496
|
+
emptyDetail?: ReactNode;
|
|
497
|
+
/** Width of the list pane in px. Default: 320 */
|
|
498
|
+
listWidth?: number;
|
|
499
|
+
listClassName?: string;
|
|
500
|
+
detailClassName?: string;
|
|
501
|
+
}
|
|
502
|
+
declare function ListDetailBodyTemplate({ theme, className, topBar, list, detail, emptyDetail, listWidth, listClassName, detailClassName, }: ListDetailBodyTemplateProps): react_jsx_runtime.JSX.Element;
|
|
503
|
+
|
|
345
504
|
type FormWizardVariant = 'card' | 'plain';
|
|
346
505
|
interface FormWizardStep {
|
|
347
506
|
key: string;
|
|
@@ -526,6 +685,7 @@ declare function buildTemplateTheme(g: {
|
|
|
526
685
|
radius: number;
|
|
527
686
|
primaryHue: number;
|
|
528
687
|
primaryChroma: number;
|
|
688
|
+
darkMode?: boolean;
|
|
529
689
|
density?: DensityId;
|
|
530
690
|
fontScale?: number;
|
|
531
691
|
lineHeight?: number;
|
|
@@ -542,4 +702,4 @@ declare function cn(...inputs: ClassValue[]): string;
|
|
|
542
702
|
|
|
543
703
|
declare const useThemeStore: zustand.UseBoundStore<zustand.StoreApi<ThemeState>>;
|
|
544
704
|
|
|
545
|
-
export { Avatar, AvatarBadge, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarImage, Badge, Button, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, ColorsBodyTemplate, type ColorsBodyTemplateProps, 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, 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 };
|
|
705
|
+
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, 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, useStyleInjector, useThemeStore };
|