gridsmith-ui 0.7.0 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/charts.d.ts +20 -0
- package/dist/charts.js +10 -3
- package/dist/charts.js.map +1 -1
- package/dist/chat.js +2 -2
- package/dist/chunk-5B2ZFL2H.js +89 -0
- package/dist/chunk-5B2ZFL2H.js.map +1 -0
- package/dist/{chunk-EKQHHP72.js → chunk-CRQ6KCRD.js} +5 -5
- package/dist/chunk-CRQ6KCRD.js.map +1 -0
- package/dist/chunk-PDZL4A6K.js +38 -0
- package/dist/chunk-PDZL4A6K.js.map +1 -0
- package/dist/{chunk-QVNGQ64Q.js → chunk-PHQWHAT3.js} +12 -4
- package/dist/chunk-PHQWHAT3.js.map +1 -0
- package/dist/{chunk-G6KC5YNY.js → chunk-X27PSHOH.js} +19 -14
- package/dist/chunk-X27PSHOH.js.map +1 -0
- package/dist/data-grid.d.ts +3 -1
- package/dist/data-grid.js +33 -7
- package/dist/data-grid.js.map +1 -1
- package/dist/editor.js +1 -1
- package/dist/index.d.ts +235 -65
- package/dist/index.js +1946 -1385
- package/dist/index.js.map +1 -1
- package/dist/kanban.js +1 -1
- package/dist/resizable.js +4 -87
- package/dist/resizable.js.map +1 -1
- package/dist/roots.css +8 -4
- package/dist/{use-breakpoint-BfKzmkxx.d.ts → table-utils-GounRE6s.d.ts} +4 -1
- package/dist/tokens.css +6 -4
- package/dist-static/tokens.css +6 -4
- package/package.json +1 -1
- package/dist/chunk-EKQHHP72.js.map +0 -1
- package/dist/chunk-G6KC5YNY.js.map +0 -1
- package/dist/chunk-QVNGQ64Q.js.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -2,12 +2,14 @@ import * as react from 'react';
|
|
|
2
2
|
import { ButtonHTMLAttributes, ReactNode, InputHTMLAttributes, LabelHTMLAttributes, TextareaHTMLAttributes, Ref, CSSProperties, ReactElement, HTMLAttributes, AnchorHTMLAttributes, ComponentType } from 'react';
|
|
3
3
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
4
4
|
import { IconName } from './icons.js';
|
|
5
|
-
import { B as BreakpointKey } from './
|
|
6
|
-
export { a as BreakpointWidthProvider, u as useBreakpoint } from './
|
|
5
|
+
import { C as ColumnKind, B as BreakpointKey } from './table-utils-GounRE6s.js';
|
|
6
|
+
export { a as BreakpointWidthProvider, u as useBreakpoint } from './table-utils-GounRE6s.js';
|
|
7
7
|
|
|
8
8
|
type ButtonVariant = "default" | "secondary" | "tertiary" | "outline" | "ghost" | "destructive" | "success" | "warning" | "link";
|
|
9
9
|
type ButtonSize = "xs" | "sm" | "md" | "lg" | "icon-xs" | "icon-sm" | "icon" | "icon-lg";
|
|
10
|
-
|
|
10
|
+
type ControlSize = "sm" | "md" | "lg";
|
|
11
|
+
declare const ControlSizeContext: react.Context<ControlSize | null>;
|
|
12
|
+
declare const ButtonSizeContext: react.Context<ControlSize | null>;
|
|
11
13
|
interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
|
|
12
14
|
variant?: ButtonVariant;
|
|
13
15
|
size?: ButtonSize;
|
|
@@ -55,8 +57,8 @@ interface BulkActionBarProps {
|
|
|
55
57
|
}
|
|
56
58
|
declare function BulkActionBar({ selectedCount, actions, onClearSelection, className }: BulkActionBarProps): react_jsx_runtime.JSX.Element | null;
|
|
57
59
|
|
|
58
|
-
type InputSize = "sm" | "md";
|
|
59
|
-
declare function Input({ className, size, error, prefix, suffix, ...props }: Omit<InputHTMLAttributes<HTMLInputElement>, "size" | "prefix"> & {
|
|
60
|
+
type InputSize = "sm" | "md" | "lg";
|
|
61
|
+
declare function Input({ className, size: sizeProp, error, prefix, suffix, ...props }: Omit<InputHTMLAttributes<HTMLInputElement>, "size" | "prefix"> & {
|
|
60
62
|
size?: InputSize;
|
|
61
63
|
error?: boolean;
|
|
62
64
|
prefix?: ReactNode;
|
|
@@ -88,7 +90,7 @@ interface Option {
|
|
|
88
90
|
label: string;
|
|
89
91
|
group?: string;
|
|
90
92
|
}
|
|
91
|
-
type DropdownSize = "sm" | "md";
|
|
93
|
+
type DropdownSize = "sm" | "md" | "lg";
|
|
92
94
|
interface DropdownProps {
|
|
93
95
|
options: Option[];
|
|
94
96
|
value: string | string[];
|
|
@@ -108,7 +110,7 @@ interface DropdownProps {
|
|
|
108
110
|
/** Accessible name for the trigger, for when there is no visible `label` (e.g. in a toolbar). */
|
|
109
111
|
"aria-label"?: string;
|
|
110
112
|
}
|
|
111
|
-
declare function Dropdown({ options, value, onChange, label, disabled, placeholder, multiple, searchable, size, className, ref, container, error, showChips, "aria-label": ariaLabel, }: DropdownProps): react_jsx_runtime.JSX.Element;
|
|
113
|
+
declare function Dropdown({ options, value, onChange, label, disabled, placeholder, multiple, searchable, size: sizeProp, className, ref, container, error, showChips, "aria-label": ariaLabel, }: DropdownProps): react_jsx_runtime.JSX.Element;
|
|
112
114
|
|
|
113
115
|
interface ComboboxOption {
|
|
114
116
|
value: string;
|
|
@@ -126,8 +128,9 @@ interface ComboboxProps {
|
|
|
126
128
|
ref?: Ref<HTMLDivElement>;
|
|
127
129
|
container?: Element | DocumentFragment;
|
|
128
130
|
error?: boolean;
|
|
131
|
+
size?: ControlSize;
|
|
129
132
|
}
|
|
130
|
-
declare function Combobox({ value, onChange, options, placeholder, disabled, loading, className, ref, container, error }: ComboboxProps): react_jsx_runtime.JSX.Element;
|
|
133
|
+
declare function Combobox({ value, onChange, options, placeholder, disabled, loading, className, ref, container, error, size: sizeProp }: ComboboxProps): react_jsx_runtime.JSX.Element;
|
|
131
134
|
|
|
132
135
|
type CheckboxSize = "sm" | "md";
|
|
133
136
|
interface CheckboxProps {
|
|
@@ -186,6 +189,7 @@ interface DatePickerProps {
|
|
|
186
189
|
label?: string;
|
|
187
190
|
/** Forwarded to the trigger button so an external Label htmlFor can be associated. Defaults to a generated id used by the built-in label. */
|
|
188
191
|
id?: string;
|
|
192
|
+
size?: ControlSize;
|
|
189
193
|
/** Earliest / latest selectable day (inclusive). Days outside are disabled. */
|
|
190
194
|
min?: Date;
|
|
191
195
|
max?: Date;
|
|
@@ -200,7 +204,7 @@ interface DatePickerProps {
|
|
|
200
204
|
end?: Date | null;
|
|
201
205
|
};
|
|
202
206
|
}
|
|
203
|
-
declare function DatePicker({ value, onChange, placeholder, disabled, className, ref, container, error, label, id, min, max, range }: DatePickerProps): react_jsx_runtime.JSX.Element;
|
|
207
|
+
declare function DatePicker({ value, onChange, placeholder, disabled, className, ref, container, error, label, id, size: sizeProp, min, max, range }: DatePickerProps): react_jsx_runtime.JSX.Element;
|
|
204
208
|
|
|
205
209
|
interface DateRange {
|
|
206
210
|
start: Date | null;
|
|
@@ -230,6 +234,7 @@ interface DateRangePickerProps {
|
|
|
230
234
|
presets?: DateRangePreset[];
|
|
231
235
|
/** First day of the week. Default 0 (Sunday). */
|
|
232
236
|
weekStartsOn?: 0 | 1;
|
|
237
|
+
size?: ControlSize;
|
|
233
238
|
}
|
|
234
239
|
declare const DEFAULT_DATE_RANGE_PRESETS: DateRangePreset[];
|
|
235
240
|
/**
|
|
@@ -238,7 +243,7 @@ declare const DEFAULT_DATE_RANGE_PRESETS: DateRangePreset[];
|
|
|
238
243
|
* the end (clicking before the start restarts the selection). Closes on
|
|
239
244
|
* Escape or outside click. Pair with <Field> for label/hint/error wiring.
|
|
240
245
|
*/
|
|
241
|
-
declare function DateRangePicker({ value, onChange, placeholder, disabled, error, label, id, className, ref, container, min, max, presets, weekStartsOn, }: DateRangePickerProps): react_jsx_runtime.JSX.Element;
|
|
246
|
+
declare function DateRangePicker({ value, onChange, placeholder, disabled, error, label, id, className, ref, container, min, max, presets, weekStartsOn, size: sizeProp, }: DateRangePickerProps): react_jsx_runtime.JSX.Element;
|
|
242
247
|
|
|
243
248
|
interface FileUploadProps {
|
|
244
249
|
onFiles: (files: File[]) => void;
|
|
@@ -284,8 +289,9 @@ interface TimePickerProps {
|
|
|
284
289
|
error?: boolean;
|
|
285
290
|
/** Forwarded to the trigger button so a Label htmlFor can be associated. */
|
|
286
291
|
id?: string;
|
|
292
|
+
size?: ControlSize;
|
|
287
293
|
}
|
|
288
|
-
declare function TimePicker({ value, onChange, use24Hour, minuteStep, disabled, className, ref, container, error, id, }: TimePickerProps): react_jsx_runtime.JSX.Element;
|
|
294
|
+
declare function TimePicker({ value, onChange, use24Hour, minuteStep, disabled, className, ref, container, error, id, size: sizeProp, }: TimePickerProps): react_jsx_runtime.JSX.Element;
|
|
289
295
|
|
|
290
296
|
interface NumberInputProps {
|
|
291
297
|
value: number;
|
|
@@ -305,7 +311,7 @@ interface NumberInputProps {
|
|
|
305
311
|
/** Forwarded to the inner input element so a Label htmlFor can be associated. */
|
|
306
312
|
id?: string;
|
|
307
313
|
}
|
|
308
|
-
declare function NumberInput({ value, onChange, min, max, step, disabled, placeholder, prefix, suffix, size, className, error, allowDecimals, id, }: NumberInputProps): react_jsx_runtime.JSX.Element;
|
|
314
|
+
declare function NumberInput({ value, onChange, min, max, step, disabled, placeholder, prefix, suffix, size: sizeProp, className, error, allowDecimals, id, }: NumberInputProps): react_jsx_runtime.JSX.Element;
|
|
309
315
|
|
|
310
316
|
interface TagInputProps {
|
|
311
317
|
value: string[];
|
|
@@ -334,7 +340,7 @@ interface PinInputProps {
|
|
|
334
340
|
/** Forwarded to the first pin box so a Label htmlFor can be associated. */
|
|
335
341
|
id?: string;
|
|
336
342
|
}
|
|
337
|
-
declare function PinInput({ value, onChange, length, mask, disabled, size, className, error, id, }: PinInputProps): react_jsx_runtime.JSX.Element;
|
|
343
|
+
declare function PinInput({ value, onChange, length, mask, disabled, size: sizeProp, className, error, id, }: PinInputProps): react_jsx_runtime.JSX.Element;
|
|
338
344
|
|
|
339
345
|
interface RatingProps {
|
|
340
346
|
value: number;
|
|
@@ -411,14 +417,33 @@ interface FormContextValue {
|
|
|
411
417
|
submitted: boolean;
|
|
412
418
|
}
|
|
413
419
|
declare function useFormContext(): FormContextValue;
|
|
420
|
+
/** An invalid field as the form finds it in its own DOM after a submit. */
|
|
421
|
+
interface FormFieldError {
|
|
422
|
+
id: string;
|
|
423
|
+
label: string;
|
|
424
|
+
message: string;
|
|
425
|
+
}
|
|
414
426
|
interface FormWrapperProps {
|
|
415
427
|
onSubmit: (errors: FormErrors) => void;
|
|
416
428
|
validationMode?: ValidationMode;
|
|
417
429
|
children: ReactNode;
|
|
430
|
+
/**
|
|
431
|
+
* The buttons row (submit, cancel) with a clear gap above the last field — never a hand-rolled flex row under it
|
|
432
|
+
* (bench round 3, R12). Right-aligned like CardFooter and the overlay footers; `actionsAlign="start"` for a narrow form.
|
|
433
|
+
*/
|
|
434
|
+
actions?: ReactNode;
|
|
435
|
+
actionsAlign?: "start" | "end";
|
|
436
|
+
/** After a failed submit, scroll to and focus the first invalid field (default on). */
|
|
437
|
+
focusFirstError?: boolean;
|
|
438
|
+
/**
|
|
439
|
+
* When two or more fields are invalid after a submit, an error summary above the form links to each (default on).
|
|
440
|
+
* A function renders your own from the list.
|
|
441
|
+
*/
|
|
442
|
+
errorSummary?: boolean | ((errors: FormFieldError[]) => ReactNode);
|
|
418
443
|
className?: string;
|
|
419
444
|
ref?: React.Ref<HTMLFormElement>;
|
|
420
445
|
}
|
|
421
|
-
declare function FormWrapper({ onSubmit, validationMode, children, className, ref }: FormWrapperProps): react_jsx_runtime.JSX.Element;
|
|
446
|
+
declare function FormWrapper({ onSubmit, validationMode, children, actions, actionsAlign, focusFirstError, errorSummary, className, ref }: FormWrapperProps): react_jsx_runtime.JSX.Element;
|
|
422
447
|
|
|
423
448
|
interface TransferItem {
|
|
424
449
|
id: string;
|
|
@@ -476,7 +501,11 @@ interface CardHeaderProps extends HTMLAttributes<HTMLDivElement> {
|
|
|
476
501
|
menuItems?: DropdownMenuEntry[];
|
|
477
502
|
}
|
|
478
503
|
declare const CardHeader: react.ForwardRefExoticComponent<CardHeaderProps & react.RefAttributes<HTMLDivElement>>;
|
|
479
|
-
|
|
504
|
+
interface CardTitleProps extends HTMLAttributes<HTMLHeadingElement> {
|
|
505
|
+
/** Max lines before clamping (with the full title on hover). Default 2, like CardDescription; 1 truncates on one line; 0 = no limit. */
|
|
506
|
+
lines?: number;
|
|
507
|
+
}
|
|
508
|
+
declare const CardTitle: react.ForwardRefExoticComponent<CardTitleProps & react.RefAttributes<HTMLHeadingElement>>;
|
|
480
509
|
interface CardDescriptionProps extends HTMLAttributes<HTMLParagraphElement> {
|
|
481
510
|
/** Max lines before clamping. Default 2. Set to 0 for no limit. */
|
|
482
511
|
lines?: number;
|
|
@@ -488,6 +517,8 @@ declare const CardFooter: react.ForwardRefExoticComponent<HTMLAttributes<HTMLDiv
|
|
|
488
517
|
interface Trend {
|
|
489
518
|
direction: "up" | "down" | "flat";
|
|
490
519
|
value: string;
|
|
520
|
+
/** Whether the change is good news. Default: up = positive, down = negative, flat = neutral. Pass "positive" for a falling cost or overdue count, "negative" for rising churn or errors. */
|
|
521
|
+
sentiment?: "positive" | "negative" | "neutral";
|
|
491
522
|
}
|
|
492
523
|
interface StatsCardProps {
|
|
493
524
|
value: string | number;
|
|
@@ -528,7 +559,8 @@ interface DescriptionListProps {
|
|
|
528
559
|
columns?: 1 | 2 | 3 | 4;
|
|
529
560
|
size?: DescriptionListSize;
|
|
530
561
|
dividers?: boolean;
|
|
531
|
-
|
|
562
|
+
/** Below this breakpoint a multi-column list becomes one column. Default "sm" when columns > 1 (a phone never shows two columns of pairs); "none" keeps the columns at every width. */
|
|
563
|
+
stackBelow?: "sm" | "md" | "lg" | "none";
|
|
532
564
|
className?: string;
|
|
533
565
|
}
|
|
534
566
|
declare const DescriptionList: react.ForwardRefExoticComponent<DescriptionListProps & react.RefAttributes<HTMLDListElement>>;
|
|
@@ -567,6 +599,8 @@ interface Column {
|
|
|
567
599
|
};
|
|
568
600
|
/** CSS max-width for the column (e.g. "200px", "30ch"). Helps constrain wide text columns. */
|
|
569
601
|
maxWidth?: string;
|
|
602
|
+
/** Explicit column kind. When omitted the Table infers it from data values. */
|
|
603
|
+
kind?: ColumnKind;
|
|
570
604
|
}
|
|
571
605
|
type SortDir = "asc" | "desc" | null;
|
|
572
606
|
type TableDensity = "default" | "compact";
|
|
@@ -636,8 +670,11 @@ declare function Calendar({ events, view: controlledView, defaultView, onViewCha
|
|
|
636
670
|
type BadgeVariant = "default" | "neutral" | "subtle" | "success" | "success-soft" | "warning" | "warning-soft" | "error" | "error-soft" | "outline";
|
|
637
671
|
type BadgeSize = "xs" | "sm" | "md";
|
|
638
672
|
type BadgePaletteColor = 1 | 2 | 3 | 4 | 5;
|
|
673
|
+
type BadgeSeverity = "info" | "low" | "medium" | "high" | "critical";
|
|
639
674
|
interface BadgeProps {
|
|
640
675
|
variant?: BadgeVariant;
|
|
676
|
+
/** Severity shorthand — maps to a variant. When set, overrides `variant`. */
|
|
677
|
+
severity?: BadgeSeverity;
|
|
641
678
|
size?: BadgeSize;
|
|
642
679
|
/** Palette colour (1-5). Overrides variant colour with decorative palette tokens. */
|
|
643
680
|
color?: BadgePaletteColor;
|
|
@@ -650,7 +687,7 @@ interface BadgeProps {
|
|
|
650
687
|
className?: string;
|
|
651
688
|
children?: ReactNode;
|
|
652
689
|
}
|
|
653
|
-
declare function Badge({ variant, size, color, iconLeft, iconRight, maxWidth, className, children }: BadgeProps): react_jsx_runtime.JSX.Element;
|
|
690
|
+
declare function Badge({ variant, severity, size, color, iconLeft, iconRight, maxWidth, className, children }: BadgeProps): react_jsx_runtime.JSX.Element;
|
|
654
691
|
|
|
655
692
|
type TagVariant = "default" | "subtle" | "success" | "warning" | "error" | "outline";
|
|
656
693
|
type TagPaletteColor = 1 | 2 | 3 | 4 | 5;
|
|
@@ -736,6 +773,16 @@ interface EmptyStateProps {
|
|
|
736
773
|
}
|
|
737
774
|
declare function EmptyState({ icon, iconFrame, title, description, action, variant, bordered, className }: EmptyStateProps): react_jsx_runtime.JSX.Element;
|
|
738
775
|
|
|
776
|
+
interface EntityCellProps {
|
|
777
|
+
/** Image URL (creates an Avatar) or a pre-built ReactNode. */
|
|
778
|
+
avatar: string | ReactNode;
|
|
779
|
+
primary: string;
|
|
780
|
+
secondary?: string;
|
|
781
|
+
size?: "sm" | "md";
|
|
782
|
+
className?: string;
|
|
783
|
+
}
|
|
784
|
+
declare function EntityCell({ avatar, primary, secondary, size, className }: EntityCellProps): react_jsx_runtime.JSX.Element;
|
|
785
|
+
|
|
739
786
|
interface SkipLinkProps {
|
|
740
787
|
/** The id of the main region (AppShell names its <main> "main"). */
|
|
741
788
|
href?: string;
|
|
@@ -812,19 +859,24 @@ interface TimelineItem {
|
|
|
812
859
|
}
|
|
813
860
|
interface TimelineProps {
|
|
814
861
|
items: TimelineItem[];
|
|
862
|
+
/** "responsive" lays the items out horizontally only when they fit at minItemWidth each, else vertically. */
|
|
815
863
|
orientation?: "vertical" | "horizontal" | "responsive";
|
|
864
|
+
/** The least width a horizontal item gets before the row scrolls (a structural size, not a design value). */
|
|
865
|
+
minItemWidth?: number;
|
|
816
866
|
className?: string;
|
|
817
867
|
ref?: Ref<HTMLDivElement>;
|
|
818
868
|
}
|
|
819
|
-
declare function Timeline({ items, orientation, className, ref }: TimelineProps): react_jsx_runtime.JSX.Element;
|
|
869
|
+
declare function Timeline({ items, orientation, minItemWidth, className, ref }: TimelineProps): react_jsx_runtime.JSX.Element;
|
|
820
870
|
|
|
821
871
|
interface CodeBlockProps {
|
|
822
872
|
code: string;
|
|
823
873
|
language?: string;
|
|
824
874
|
showLineNumbers?: boolean;
|
|
875
|
+
/** Wrap long lines instead of scrolling sideways. Default: on for a single-line snippet (a tracking tag, a command), off for multi-line code. */
|
|
876
|
+
wrap?: boolean;
|
|
825
877
|
className?: string;
|
|
826
878
|
}
|
|
827
|
-
declare function CodeBlock({ code, language, showLineNumbers, className, }: CodeBlockProps): react_jsx_runtime.JSX.Element;
|
|
879
|
+
declare function CodeBlock({ code, language, showLineNumbers, wrap, className, }: CodeBlockProps): react_jsx_runtime.JSX.Element;
|
|
828
880
|
|
|
829
881
|
interface CollapsibleProps {
|
|
830
882
|
open?: boolean;
|
|
@@ -1115,6 +1167,8 @@ interface StackedListProps {
|
|
|
1115
1167
|
flush?: boolean;
|
|
1116
1168
|
/** The current row in a master-detail list. Its treatment follows the theme's in-page vertical active style (rail, tint or pill), like Tabs. */
|
|
1117
1169
|
selectedId?: string | number;
|
|
1170
|
+
/** How an interactive row answers the pointer: "tint" (default) shades the row; "title" colours the title, for article lists (a knowledge base, a changelog). */
|
|
1171
|
+
hover?: "tint" | "title";
|
|
1118
1172
|
className?: string;
|
|
1119
1173
|
}
|
|
1120
1174
|
declare const StackedList: react.ForwardRefExoticComponent<StackedListProps & react.RefAttributes<HTMLUListElement>>;
|
|
@@ -1253,6 +1307,142 @@ declare const Tabs: typeof TabsRoot & {
|
|
|
1253
1307
|
Content: typeof TabsContent;
|
|
1254
1308
|
};
|
|
1255
1309
|
|
|
1310
|
+
/**
|
|
1311
|
+
* The theme's shell-level decisions, carried once by AppShell so that
|
|
1312
|
+
* PageHeader and PageContainer can render a page the way the builder preview
|
|
1313
|
+
* renders it without the page passing a single flag (Sprint 25, 14 Sep 2026).
|
|
1314
|
+
*
|
|
1315
|
+
* The generated shell passes the object the template emits; the builder
|
|
1316
|
+
* preview passes the same values from the theme state. Every field is
|
|
1317
|
+
* optional: a page's own props always win over the theme, and a header
|
|
1318
|
+
* outside any shell falls back to the component defaults it always had.
|
|
1319
|
+
*/
|
|
1320
|
+
type ChromePosition = "flush" | "floating";
|
|
1321
|
+
type ThemePageHeaderVariant = "default" | "colourful" | "minimal" | "tabs-integrated";
|
|
1322
|
+
type ThemePageHeaderBehavior = "static" | "snapping";
|
|
1323
|
+
type ThemePageHeaderIntensity = "subtle" | "bold";
|
|
1324
|
+
type ThemeBreadcrumbPosition = "inline" | "contained";
|
|
1325
|
+
type ThemeBreadcrumbStyle = "default" | "pill";
|
|
1326
|
+
type ThemeBreadcrumbSeparator = "chevron" | "slash" | "dot" | "arrow";
|
|
1327
|
+
type ThemeSettingsLayout = "sidebar" | "tabs";
|
|
1328
|
+
interface AppShellTheme {
|
|
1329
|
+
/** Where the navbar sits; a floating navbar's gutter is the gap above a floating header. Confirmed by the rendered Navbar. */
|
|
1330
|
+
navbarPosition?: ChromePosition;
|
|
1331
|
+
/** Where the sidebar sits; a floating sidebar's gutter is the gap beside a floating header. Confirmed by the rendered Sidebar. */
|
|
1332
|
+
sidebarPosition?: ChromePosition;
|
|
1333
|
+
pageHeader?: {
|
|
1334
|
+
variant?: ThemePageHeaderVariant;
|
|
1335
|
+
behavior?: ThemePageHeaderBehavior;
|
|
1336
|
+
position?: ChromePosition;
|
|
1337
|
+
/** Colourful only. */
|
|
1338
|
+
intensity?: ThemePageHeaderIntensity;
|
|
1339
|
+
/** Colourful on the home page only; other pages take `otherPagesVariant`. The shell decides which page is home. */
|
|
1340
|
+
colourfulHomeOnly?: boolean;
|
|
1341
|
+
otherPagesVariant?: "default" | "minimal";
|
|
1342
|
+
/** Colourful: the container derives the overlap from the first content element and pulls it up. */
|
|
1343
|
+
overlap?: boolean;
|
|
1344
|
+
};
|
|
1345
|
+
breadcrumbs?: {
|
|
1346
|
+
/** Inline in the header, or a contained strip the container renders above it. */
|
|
1347
|
+
position?: ThemeBreadcrumbPosition;
|
|
1348
|
+
style?: ThemeBreadcrumbStyle;
|
|
1349
|
+
separator?: ThemeBreadcrumbSeparator;
|
|
1350
|
+
};
|
|
1351
|
+
/** The customer's settings.layout preference: a rail of sections beside the panel, or horizontal tabs above it. SettingsLayout reads it. */
|
|
1352
|
+
settingsLayout?: ThemeSettingsLayout;
|
|
1353
|
+
}
|
|
1354
|
+
|
|
1355
|
+
interface SettingsSection {
|
|
1356
|
+
id: string;
|
|
1357
|
+
label: string;
|
|
1358
|
+
icon?: IconName;
|
|
1359
|
+
/** Heading above this section in the rail; the option group in the collapsed Dropdown. */
|
|
1360
|
+
group?: string;
|
|
1361
|
+
disabled?: boolean;
|
|
1362
|
+
}
|
|
1363
|
+
interface SettingsLayoutProps {
|
|
1364
|
+
sections: SettingsSection[];
|
|
1365
|
+
/** The selected section id. */
|
|
1366
|
+
value: string;
|
|
1367
|
+
onChange: (id: string) => void;
|
|
1368
|
+
/**
|
|
1369
|
+
* 'sidebar': a rail of sections beside the panel; 'tabs': horizontal tabs above it.
|
|
1370
|
+
* Default: the shell theme's settings.layout preference, else 'sidebar'. A page passes nothing.
|
|
1371
|
+
*/
|
|
1372
|
+
layout?: ThemeSettingsLayout;
|
|
1373
|
+
/** Width of the rail in px (sidebar layout). */
|
|
1374
|
+
railWidth?: number;
|
|
1375
|
+
/**
|
|
1376
|
+
* Below this width of the layout itself (not the viewport) the rail becomes a Dropdown. Default: the rail plus a
|
|
1377
|
+
* usable panel (railWidth + 480). Measured on the layout, so a narrow PageContainer or a sidebar shell counts.
|
|
1378
|
+
*/
|
|
1379
|
+
collapseBelow?: number;
|
|
1380
|
+
/** Accessible name of the section navigation. */
|
|
1381
|
+
"aria-label"?: string;
|
|
1382
|
+
/** The panel: the selected section's content. */
|
|
1383
|
+
children: ReactNode;
|
|
1384
|
+
className?: string;
|
|
1385
|
+
}
|
|
1386
|
+
/**
|
|
1387
|
+
* The settings page composition (Sprint 25.2, R8): a rail of sections beside
|
|
1388
|
+
* the panel, sticky while the page scrolls, or horizontal tabs above it — the
|
|
1389
|
+
* customer's settings.layout preference decides which, the component decides
|
|
1390
|
+
* the breakpoints. The collapse is measured on the layout's own width (a narrow
|
|
1391
|
+
* PageContainer, a sidebar shell): when the rail would leave too little for the
|
|
1392
|
+
* panel it becomes a Dropdown above the panel; a vertical rail never sits above
|
|
1393
|
+
* the content (settings#10).
|
|
1394
|
+
*
|
|
1395
|
+
* The rail is a Tabs (vertical) styled by the theme's in-page vertical style;
|
|
1396
|
+
* the page assembles the sections' contents and nothing else.
|
|
1397
|
+
*/
|
|
1398
|
+
declare function SettingsLayout({ sections, value, onChange, layout: layoutProp, railWidth, collapseBelow, "aria-label": ariaLabel, children, className, }: SettingsLayoutProps): react_jsx_runtime.JSX.Element;
|
|
1399
|
+
|
|
1400
|
+
type SplitViewFrame = "fill" | "page";
|
|
1401
|
+
interface SplitViewProps {
|
|
1402
|
+
/** The list (an inbox, a queue): it scrolls on its own. */
|
|
1403
|
+
list: ReactNode;
|
|
1404
|
+
/** The selected item (a thread, a record): it fills the height and scrolls on its own. */
|
|
1405
|
+
detail: ReactNode;
|
|
1406
|
+
/** Context beside the detail (a contact, properties). Collapses to a toggle that opens it in a Drawer when the layout is narrower than `asideCollapseBelow`. */
|
|
1407
|
+
aside?: ReactNode;
|
|
1408
|
+
/** Names the aside's toggle and Drawer. */
|
|
1409
|
+
asideTitle?: string;
|
|
1410
|
+
/**
|
|
1411
|
+
* Below `collapseBelow` the list shows alone; with `detailOpen` the detail replaces it, with a Back button that calls
|
|
1412
|
+
* `onDetailClose` (detailMode "stack"). The page owns the selection, so it owns this flag.
|
|
1413
|
+
*/
|
|
1414
|
+
detailOpen?: boolean;
|
|
1415
|
+
onDetailClose?: () => void;
|
|
1416
|
+
/** "stack" (default): the detail stacks over the list below the collapse width. "route": the app navigates to the detail's own route instead, and this renders the list alone there. */
|
|
1417
|
+
detailMode?: "stack" | "route";
|
|
1418
|
+
backLabel?: string;
|
|
1419
|
+
/** Percent of the width the list takes; the divider is draggable. */
|
|
1420
|
+
listWidth?: number;
|
|
1421
|
+
listMinWidth?: number;
|
|
1422
|
+
asideWidth?: number;
|
|
1423
|
+
/** Below this width of the layout itself (px) the list and detail stop sitting side by side. */
|
|
1424
|
+
collapseBelow?: number;
|
|
1425
|
+
/** Below this width of the layout itself (px) the aside becomes a toggle. */
|
|
1426
|
+
asideCollapseBelow?: number;
|
|
1427
|
+
/** A bordered, rounded surface (inside a page with padding) instead of edge to edge (filling <main>). */
|
|
1428
|
+
bordered?: boolean;
|
|
1429
|
+
/** "fill": the page root, flush to the shell, h-full against main, each pane owns its inset. "page" (default): inside a PageContainer under a PageHeader. */
|
|
1430
|
+
frame?: SplitViewFrame;
|
|
1431
|
+
"aria-label"?: string;
|
|
1432
|
+
className?: string;
|
|
1433
|
+
}
|
|
1434
|
+
/**
|
|
1435
|
+
* The reading-pane composition (Sprint 25.2, R3): one surface with dividers —
|
|
1436
|
+
* list, detail and an optional aside — that fills the height it is given (an
|
|
1437
|
+
* AppShell's <main> already gives it) and never three cards with gaps. The
|
|
1438
|
+
* panels compose ResizablePanelGroup, so the dividers drag. Below the collapse
|
|
1439
|
+
* width, measured on the layout itself, the list shows alone and the detail
|
|
1440
|
+
* stacks over it (or the app routes to it); the aside collapses to a toggle.
|
|
1441
|
+
* The page owns the selection and assembles the contents; keyboard movement
|
|
1442
|
+
* through the list is the list's job (StackedList selectedId).
|
|
1443
|
+
*/
|
|
1444
|
+
declare function SplitView({ list, detail, aside, asideTitle, detailOpen, onDetailClose, detailMode, backLabel, listWidth, listMinWidth, asideWidth, collapseBelow, asideCollapseBelow, bordered, frame, "aria-label": ariaLabel, className, }: SplitViewProps): react_jsx_runtime.JSX.Element;
|
|
1445
|
+
|
|
1256
1446
|
interface BreadcrumbItem$1 {
|
|
1257
1447
|
label: string;
|
|
1258
1448
|
href?: string;
|
|
@@ -1408,8 +1598,13 @@ interface SegmentedControlProps {
|
|
|
1408
1598
|
className?: string;
|
|
1409
1599
|
/** Accessible name for the radiogroup, for when there is no visible label (e.g. in a toolbar). */
|
|
1410
1600
|
"aria-label"?: string;
|
|
1601
|
+
/**
|
|
1602
|
+
* Above this many options the control renders a Dropdown with the same value, onChange and options — a row of
|
|
1603
|
+
* eleven segments runs off the page (bench round 3). Default 6; raise it only where the row is known to fit.
|
|
1604
|
+
*/
|
|
1605
|
+
maxOptions?: number;
|
|
1411
1606
|
}
|
|
1412
|
-
declare function SegmentedControl({ value, onChange, options, size, variant, fullWidth, onHoverChange, className, "aria-label": ariaLabel, }: SegmentedControlProps): react_jsx_runtime.JSX.Element;
|
|
1607
|
+
declare function SegmentedControl({ value, onChange, options, size: sizeProp, variant, fullWidth, onHoverChange, className, "aria-label": ariaLabel, maxOptions, }: SegmentedControlProps): react_jsx_runtime.JSX.Element;
|
|
1413
1608
|
|
|
1414
1609
|
interface BottomNavItem {
|
|
1415
1610
|
label: string;
|
|
@@ -1454,8 +1649,6 @@ interface PageHeaderProps {
|
|
|
1454
1649
|
intensity?: PageHeaderIntensity;
|
|
1455
1650
|
/** Colourful: background image URL — overlaid with accent colour */
|
|
1456
1651
|
backgroundImage?: string;
|
|
1457
|
-
/** Colourful: extra bottom padding (px) for content overlap. Content below should use -mt-[value] to pull up. */
|
|
1458
|
-
overlapHeight?: number;
|
|
1459
1652
|
/** Snapping: content shown only when expanded */
|
|
1460
1653
|
expandedContent?: ReactNode;
|
|
1461
1654
|
/** Snapping: scroll offset before collapse (px) */
|
|
@@ -1593,6 +1786,10 @@ interface DialogProps {
|
|
|
1593
1786
|
description?: string;
|
|
1594
1787
|
children?: ReactNode;
|
|
1595
1788
|
footer?: ReactNode;
|
|
1789
|
+
/** The content has unsaved changes: Escape, the backdrop and the close control ask before discarding, inside the dialog (Sprint 25.2, C1). */
|
|
1790
|
+
dirty?: boolean;
|
|
1791
|
+
/** Called when the user chooses to discard, before onClose. */
|
|
1792
|
+
onDiscard?: () => void;
|
|
1596
1793
|
variant?: "default" | "destructive";
|
|
1597
1794
|
size?: DialogSize;
|
|
1598
1795
|
alert?: boolean;
|
|
@@ -1608,7 +1805,7 @@ interface DialogProps {
|
|
|
1608
1805
|
*/
|
|
1609
1806
|
onSubmit?: () => void;
|
|
1610
1807
|
}
|
|
1611
|
-
declare function Dialog({ open, onClose, title, description, children, footer, variant, size, alert, container, onSubmit }: DialogProps): react.ReactPortal | null;
|
|
1808
|
+
declare function Dialog({ open, onClose: onCloseProp, title, description, children, footer, variant, size, alert, container, onSubmit, dirty, onDiscard }: DialogProps): react.ReactPortal | null;
|
|
1612
1809
|
|
|
1613
1810
|
interface DrawerProps {
|
|
1614
1811
|
open: boolean;
|
|
@@ -1658,6 +1855,10 @@ interface DrawerProps {
|
|
|
1658
1855
|
*/
|
|
1659
1856
|
resizable?: boolean;
|
|
1660
1857
|
maxWidth?: string;
|
|
1858
|
+
/** The content has unsaved changes: every close path asks before discarding, inside the drawer (Sprint 25.2, C1). */
|
|
1859
|
+
dirty?: boolean;
|
|
1860
|
+
/** Called when the user chooses to discard, before onClose. */
|
|
1861
|
+
onDiscard?: () => void;
|
|
1661
1862
|
}
|
|
1662
1863
|
declare function Drawer(props: DrawerProps): react_jsx_runtime.JSX.Element;
|
|
1663
1864
|
|
|
@@ -1746,6 +1947,8 @@ interface SheetProps {
|
|
|
1746
1947
|
title?: ReactNode;
|
|
1747
1948
|
children: ReactNode;
|
|
1748
1949
|
footer?: ReactNode;
|
|
1950
|
+
/** A strip between the content and the footer (the Drawer's unsaved-changes question). */
|
|
1951
|
+
confirm?: ReactNode;
|
|
1749
1952
|
/** Heights the sheet snaps to, as fractions of the viewport (or container). Default [0.5, 0.92]. */
|
|
1750
1953
|
snapPoints?: number[];
|
|
1751
1954
|
/** Render inside this element (absolute positioning, no body scroll lock) instead of document.body. */
|
|
@@ -1759,7 +1962,7 @@ interface SheetProps {
|
|
|
1759
1962
|
/** id of the element that names the dialog when no title is rendered. */
|
|
1760
1963
|
labelledBy?: string;
|
|
1761
1964
|
}
|
|
1762
|
-
declare function Sheet({ open, onClose, title, children, footer, snapPoints, container, flush, keepMounted, id, labelledBy }: SheetProps): react.ReactPortal | null;
|
|
1965
|
+
declare function Sheet({ open, onClose, title, children, footer, confirm, snapPoints, container, flush, keepMounted, id, labelledBy }: SheetProps): react.ReactPortal | null;
|
|
1763
1966
|
|
|
1764
1967
|
interface Notification {
|
|
1765
1968
|
id: string;
|
|
@@ -1943,46 +2146,6 @@ interface ScrollAreaProps {
|
|
|
1943
2146
|
}
|
|
1944
2147
|
declare function ScrollArea({ children, className, orientation, maxHeight, maxWidth, }: ScrollAreaProps): react_jsx_runtime.JSX.Element;
|
|
1945
2148
|
|
|
1946
|
-
/**
|
|
1947
|
-
* The theme's shell-level decisions, carried once by AppShell so that
|
|
1948
|
-
* PageHeader and PageContainer can render a page the way the builder preview
|
|
1949
|
-
* renders it without the page passing a single flag (Sprint 25, 14 Sep 2026).
|
|
1950
|
-
*
|
|
1951
|
-
* The generated shell passes the object the template emits; the builder
|
|
1952
|
-
* preview passes the same values from the theme state. Every field is
|
|
1953
|
-
* optional: a page's own props always win over the theme, and a header
|
|
1954
|
-
* outside any shell falls back to the component defaults it always had.
|
|
1955
|
-
*/
|
|
1956
|
-
type ChromePosition = "flush" | "floating";
|
|
1957
|
-
type ThemePageHeaderVariant = "default" | "colourful" | "minimal" | "tabs-integrated";
|
|
1958
|
-
type ThemePageHeaderBehavior = "static" | "snapping";
|
|
1959
|
-
type ThemePageHeaderIntensity = "subtle" | "bold";
|
|
1960
|
-
type ThemeBreadcrumbPosition = "inline" | "contained";
|
|
1961
|
-
type ThemeBreadcrumbStyle = "default" | "pill";
|
|
1962
|
-
type ThemeBreadcrumbSeparator = "chevron" | "slash" | "dot" | "arrow";
|
|
1963
|
-
interface AppShellTheme {
|
|
1964
|
-
/** Where the navbar sits; a floating navbar's gutter is the gap above a floating header. Confirmed by the rendered Navbar. */
|
|
1965
|
-
navbarPosition?: ChromePosition;
|
|
1966
|
-
/** Where the sidebar sits; a floating sidebar's gutter is the gap beside a floating header. Confirmed by the rendered Sidebar. */
|
|
1967
|
-
sidebarPosition?: ChromePosition;
|
|
1968
|
-
pageHeader?: {
|
|
1969
|
-
variant?: ThemePageHeaderVariant;
|
|
1970
|
-
behavior?: ThemePageHeaderBehavior;
|
|
1971
|
-
position?: ChromePosition;
|
|
1972
|
-
/** Colourful only. */
|
|
1973
|
-
intensity?: ThemePageHeaderIntensity;
|
|
1974
|
-
/** Colourful on the home page only; other pages take `otherPagesVariant`. The shell decides which page is home. */
|
|
1975
|
-
colourfulHomeOnly?: boolean;
|
|
1976
|
-
otherPagesVariant?: "default" | "minimal";
|
|
1977
|
-
};
|
|
1978
|
-
breadcrumbs?: {
|
|
1979
|
-
/** Inline in the header, or a contained strip the container renders above it. */
|
|
1980
|
-
position?: ThemeBreadcrumbPosition;
|
|
1981
|
-
style?: ThemeBreadcrumbStyle;
|
|
1982
|
-
separator?: ThemeBreadcrumbSeparator;
|
|
1983
|
-
};
|
|
1984
|
-
}
|
|
1985
|
-
|
|
1986
2149
|
interface AppShellContextValue {
|
|
1987
2150
|
hasSidebar: boolean;
|
|
1988
2151
|
hasMobileMenu: boolean;
|
|
@@ -2028,6 +2191,13 @@ interface AppShellContextValue {
|
|
|
2028
2191
|
sidebarFloating: boolean;
|
|
2029
2192
|
/** Called by Sidebar and Navbar so the shell knows the chrome that is actually rendered. Returns the unregister. */
|
|
2030
2193
|
registerChrome: (kind: "navbar" | "sidebar", position: ChromePosition) => () => void;
|
|
2194
|
+
/** True when the shell renders a Launcher above sm — PageContainer adjusts its bottom padding to clear the launcher. */
|
|
2195
|
+
hasLauncher: boolean;
|
|
2196
|
+
/** The bottom corner that launcher occupies (a ribbon occupies none), so the container reads that corner's inset variable. */
|
|
2197
|
+
launcherCorner: "bottom-right" | "bottom-left" | null;
|
|
2198
|
+
/** The shell renders an app footer under the page. Its children sit in a wrapper whose height is not definite, so a
|
|
2199
|
+
* `fill` SplitView reads `--ds-main-height` (published on the shell element) instead of `h-full`. */
|
|
2200
|
+
hasFooter: boolean;
|
|
2031
2201
|
}
|
|
2032
2202
|
declare function useAppShell(): AppShellContextValue | null;
|
|
2033
2203
|
type AppShellLayout = "sidebar" | "stacked" | "sidebar-header" | "multi-column";
|
|
@@ -2179,4 +2349,4 @@ interface UseTextOverflowResult {
|
|
|
2179
2349
|
*/
|
|
2180
2350
|
declare function useTextOverflow(options?: UseTextOverflowOptions): UseTextOverflowResult;
|
|
2181
2351
|
|
|
2182
|
-
export { Accordion, ActionPanel, ActionPanelGroup, Alert, type AlertPlacement, AppShell, type AppShellContextValue, type AppShellTheme, AsidePanel, type AsidePanelProps, type AsidePanelSide, Avatar, AvatarGroup, type AvatarGroupItem, type AvatarGroupProps, type AvatarStatus, Badge, type BadgePaletteColor, type BadgeSize, type BadgeVariant, BottomNav, type BottomNavItem, type BreadcrumbItem$1 as BreadcrumbItem, Breadcrumbs, type BreadcrumbsSeparator, type BreadcrumbsSize, type BreadcrumbsVariant, BreakpointKey, BulkActionBar, Button, ButtonSizeContext, Calendar, Card, CardContent, CardDescription, CardFooter, CardHeader, type CardSelectType, CardTitle, type CardVariant, Carousel, type ChatMessage, type ChatMessageAction, type ChatMessageLayout, ChatMessageList, type ChatMessageSender, type ChatMessageSource, type ChatMessageStatus, ChatPanel, type ChatPanelProps, type ChatPanelStatusTone, Checkbox, CheckboxGroup, CheckboxGroupItem, CodeBlock, Collapsible, ColorPicker, type Column, Combobox, CommandPalette, ContextMenu, CornerPanel, type CornerPanelEdge, type CornerPanelProps, DEFAULT_DATE_RANGE_PRESETS, DataList, DatePicker, type DateRange, DateRangePicker, type DateRangePickerProps, type DateRangePreset, type DescriptionItem, DescriptionList, type DescriptionListOrientation, type DescriptionListSize, Dialog, Divider, Dock, Drawer, Dropdown, DropdownMenu, type DropdownMenuDivider, type DropdownMenuEntry, type DropdownMenuItem, EmptyState, Field, type FieldControlProps, type FieldProps, FileUpload, FormWrapper, HoverCard, InlineFieldError, Input, Kbd, Label, Launcher, type LauncherEdge, type LauncherProps, type LauncherVariant, type LauncherWhenOpen, Link, type LinkProps, MentionInput, MobileHeaderMenu, type MobileHeaderMenuItemData, type MobileHeaderMenuType, NavItem, type NavItemProps, type NavItemType, NavMenu, type NavMenuItem, Navbar, type NavbarSize, type NavbarType, type NavbarVariant, NotificationCenter, NumberInput, PageContainer, type PageContainerWidth, PageHeader, type PageHeaderBehavior, type PageHeaderIntensity, type PageHeaderProps, type PageHeaderVariant, Pagination, PinInput, Popover, Progress, type PromiseToastMessages, RadioGroup, Rating, ScrollArea, SectionHeading, SegmentedControl, Sheet, Sidebar, type SidebarContextValue, type SidebarItem, SidebarNav, type SidebarNavSize, type SidebarPosition, type SidebarSection, type SidebarType, Skeleton, SkipLink, SliderRange, Spinner, StackedList, StatsCard, StatusDot, type StatusDotVariant, Stepper, type Tab, Table, type TableDensity, type TableProps, TableToolbar, type TableToolbarActiveFilter, type TableToolbarFilterOption, Tabs, Tag, TagInput, type TagPaletteColor, type TagVariant, TextOverflow, type TextOverflowProps, Textarea, TimePicker, Timeline, Toast, type ToastAction, type ToastApi, type ToastOptions, type ToastPosition, ToastProvider, type ToastVariant, Toggle, Tooltip, Tour, TransferList, TreeView, type UseTextOverflowOptions, type UseTextOverflowResult, useAppShell, useFormContext, useSidebar, useTextOverflow, useToast };
|
|
2352
|
+
export { Accordion, ActionPanel, ActionPanelGroup, Alert, type AlertPlacement, AppShell, type AppShellContextValue, type AppShellTheme, AsidePanel, type AsidePanelProps, type AsidePanelSide, Avatar, AvatarGroup, type AvatarGroupItem, type AvatarGroupProps, type AvatarStatus, Badge, type BadgePaletteColor, type BadgeSeverity, type BadgeSize, type BadgeVariant, BottomNav, type BottomNavItem, type BreadcrumbItem$1 as BreadcrumbItem, Breadcrumbs, type BreadcrumbsSeparator, type BreadcrumbsSize, type BreadcrumbsVariant, BreakpointKey, BulkActionBar, Button, ButtonSizeContext, Calendar, Card, CardContent, CardDescription, CardFooter, CardHeader, type CardSelectType, CardTitle, type CardVariant, Carousel, type ChatMessage, type ChatMessageAction, type ChatMessageLayout, ChatMessageList, type ChatMessageSender, type ChatMessageSource, type ChatMessageStatus, ChatPanel, type ChatPanelProps, type ChatPanelStatusTone, Checkbox, CheckboxGroup, CheckboxGroupItem, CodeBlock, Collapsible, ColorPicker, type Column, Combobox, CommandPalette, ContextMenu, type ControlSize, ControlSizeContext, CornerPanel, type CornerPanelEdge, type CornerPanelProps, DEFAULT_DATE_RANGE_PRESETS, DataList, DatePicker, type DateRange, DateRangePicker, type DateRangePickerProps, type DateRangePreset, type DescriptionItem, DescriptionList, type DescriptionListOrientation, type DescriptionListSize, Dialog, Divider, Dock, Drawer, Dropdown, DropdownMenu, type DropdownMenuDivider, type DropdownMenuEntry, type DropdownMenuItem, EmptyState, EntityCell, Field, type FieldControlProps, type FieldProps, FileUpload, FormWrapper, HoverCard, InlineFieldError, Input, Kbd, Label, Launcher, type LauncherEdge, type LauncherProps, type LauncherVariant, type LauncherWhenOpen, Link, type LinkProps, MentionInput, MobileHeaderMenu, type MobileHeaderMenuItemData, type MobileHeaderMenuType, NavItem, type NavItemProps, type NavItemType, NavMenu, type NavMenuItem, Navbar, type NavbarSize, type NavbarType, type NavbarVariant, NotificationCenter, NumberInput, PageContainer, type PageContainerWidth, PageHeader, type PageHeaderBehavior, type PageHeaderIntensity, type PageHeaderProps, type PageHeaderVariant, Pagination, PinInput, Popover, Progress, type PromiseToastMessages, RadioGroup, Rating, ScrollArea, SectionHeading, SegmentedControl, SettingsLayout, type SettingsLayoutProps, type SettingsSection, Sheet, Sidebar, type SidebarContextValue, type SidebarItem, SidebarNav, type SidebarNavSize, type SidebarPosition, type SidebarSection, type SidebarType, Skeleton, SkipLink, SliderRange, Spinner, SplitView, type SplitViewFrame, type SplitViewProps, StackedList, StatsCard, StatusDot, type StatusDotVariant, Stepper, type Tab, Table, type TableDensity, type TableProps, TableToolbar, type TableToolbarActiveFilter, type TableToolbarFilterOption, Tabs, Tag, TagInput, type TagPaletteColor, type TagVariant, TextOverflow, type TextOverflowProps, Textarea, TimePicker, Timeline, Toast, type ToastAction, type ToastApi, type ToastOptions, type ToastPosition, ToastProvider, type ToastVariant, Toggle, Tooltip, Tour, TransferList, TreeView, type Trend, type UseTextOverflowOptions, type UseTextOverflowResult, useAppShell, useFormContext, useSidebar, useTextOverflow, useToast };
|