@flood-md/react 0.2.10 → 0.2.12
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 +275 -5
- package/dist/app-shell.d.ts +3 -0
- package/dist/app-shell.js +66 -0
- package/dist/bulk-action-bar.d.ts +3 -0
- package/dist/bulk-action-bar.js +17 -0
- package/dist/collection-toolbar.d.ts +3 -0
- package/dist/collection-toolbar.js +26 -0
- package/dist/collection-view-switcher.d.ts +3 -0
- package/dist/collection-view-switcher.js +19 -0
- package/dist/combobox.d.ts +6 -1
- package/dist/combobox.js +77 -29
- package/dist/command-list.d.ts +5 -1
- package/dist/command-list.js +2 -2
- package/dist/data-display.js +28 -4
- package/dist/data-table-columns.d.ts +25 -0
- package/dist/data-table-columns.js +271 -0
- package/dist/data-table-expansion.d.ts +21 -0
- package/dist/data-table-expansion.js +79 -0
- package/dist/data-table.js +140 -12
- package/dist/date-picker.js +2 -2
- package/dist/date-range-picker.js +2 -2
- package/dist/date-time-picker.js +2 -2
- package/dist/date-time-range-picker.js +2 -2
- package/dist/disclosure.d.ts +2 -1
- package/dist/disclosure.js +4 -4
- package/dist/editable.js +57 -18
- package/dist/filter-condition.d.ts +3 -0
- package/dist/filter-condition.js +21 -0
- package/dist/filter-group.d.ts +2 -0
- package/dist/filter-group.js +62 -0
- package/dist/foundations.css +1131 -93
- package/dist/index.d.ts +469 -5
- package/dist/index.js +72 -9
- package/dist/menu.js +5 -4
- package/dist/menubar.d.ts +2 -0
- package/dist/menubar.js +85 -0
- package/dist/navigation-group.d.ts +3 -0
- package/dist/navigation-group.js +13 -0
- package/dist/navigation-item.d.ts +3 -0
- package/dist/navigation-item.js +68 -0
- package/dist/navigation-layout.d.ts +2 -1
- package/dist/navigation-layout.js +12 -4
- package/dist/navigation-tree.js +51 -7
- package/dist/navigation.js +2 -2
- package/dist/overflow-actions.d.ts +2 -0
- package/dist/overflow-actions.js +75 -0
- package/dist/overlay-runtime.d.ts +6 -2
- package/dist/overlay-runtime.js +41 -5
- package/dist/overlays.d.ts +1 -0
- package/dist/overlays.js +34 -18
- package/dist/select.js +4 -1
- package/dist/sidebar.d.ts +2 -0
- package/dist/sidebar.js +58 -0
- package/dist/sparkline.d.ts +2 -0
- package/dist/sparkline.js +65 -0
- package/dist/toolbar.js +2 -2
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,164 @@
|
|
|
1
1
|
import { type ButtonHTMLAttributes, type InputHTMLAttributes, type TextareaHTMLAttributes, type SelectHTMLAttributes, type AnchorHTMLAttributes, type ReactNode, type HTMLAttributes, type CSSProperties, type LabelHTMLAttributes, type FieldsetHTMLAttributes, type RefCallback, type RefObject, type Ref, type MouseEvent as ReactMouseEvent, type TableHTMLAttributes, type ImgHTMLAttributes, type BlockquoteHTMLAttributes } from "react";
|
|
2
|
+
export interface OverflowAction extends MenuActionItem {
|
|
3
|
+
/** Higher priority actions remain visible longer; source order stays unchanged. */
|
|
4
|
+
priority?: number;
|
|
5
|
+
}
|
|
6
|
+
export interface OverflowActionsProps extends Omit<HTMLAttributes<HTMLDivElement>, "children" | "onAction"> {
|
|
7
|
+
label: string;
|
|
8
|
+
items: readonly OverflowAction[];
|
|
9
|
+
onAction?: (id: string) => void;
|
|
10
|
+
moreLabel?: string;
|
|
11
|
+
size?: "sm" | "md" | "lg" | "xl";
|
|
12
|
+
variant?: ButtonProps["variant"];
|
|
13
|
+
shape?: ToolbarProps["shape"];
|
|
14
|
+
containerVariant?: ToolbarProps["variant"];
|
|
15
|
+
disabled?: boolean;
|
|
16
|
+
/** Optional fixed content measured before command space is allocated. */
|
|
17
|
+
leading?: ReactNode;
|
|
18
|
+
trailing?: ReactNode;
|
|
19
|
+
/** Upper bound for visible commands; additional commands remain in More. */
|
|
20
|
+
maxVisibleActions?: number;
|
|
21
|
+
}
|
|
22
|
+
/** Priority-based overflow composed from Toolbar, Button and Menu. @since 0.2.11 */
|
|
23
|
+
export declare const OverflowActions: import("react").ForwardRefExoticComponent<OverflowActionsProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
24
|
+
export interface FilterConditionValue {
|
|
25
|
+
property: string;
|
|
26
|
+
operator: "is" | "is-not";
|
|
27
|
+
values: string[];
|
|
28
|
+
}
|
|
29
|
+
export interface FilterConditionProperty {
|
|
30
|
+
id: string;
|
|
31
|
+
label: string;
|
|
32
|
+
options: readonly ComboboxOption[];
|
|
33
|
+
disabled?: boolean;
|
|
34
|
+
}
|
|
35
|
+
export interface FilterConditionProps extends Omit<FieldsetProps, "children" | "legend" | "onChange"> {
|
|
36
|
+
label: string;
|
|
37
|
+
properties: readonly FilterConditionProperty[];
|
|
38
|
+
value: FilterConditionValue;
|
|
39
|
+
onValueChange: (value: FilterConditionValue) => void;
|
|
40
|
+
onRemove?: () => void;
|
|
41
|
+
controlSize?: "sm" | "md" | "lg" | "xl";
|
|
42
|
+
labels?: Partial<Record<"property" | "operator" | "values" | "include" | "exclude" | "placeholder" | "remove", string>>;
|
|
43
|
+
}
|
|
44
|
+
/** One finite-choice filter predicate; the host owns application and query semantics. @since 0.2.11 */
|
|
45
|
+
export declare const FilterCondition: import("react").ForwardRefExoticComponent<FilterConditionProps & import("react").RefAttributes<HTMLFieldSetElement>>;
|
|
46
|
+
export interface FilterGroupCondition extends FilterConditionValue {
|
|
47
|
+
id: string;
|
|
48
|
+
}
|
|
49
|
+
export interface FilterGroupValue {
|
|
50
|
+
match: "all" | "any";
|
|
51
|
+
conditions: FilterGroupCondition[];
|
|
52
|
+
}
|
|
53
|
+
export interface FilterGroupProps extends Omit<FieldsetProps, "children" | "legend" | "onChange"> {
|
|
54
|
+
label: string;
|
|
55
|
+
properties: readonly FilterConditionProperty[];
|
|
56
|
+
value: FilterGroupValue;
|
|
57
|
+
onValueChange: (value: FilterGroupValue) => void;
|
|
58
|
+
controlSize?: "sm" | "md" | "lg" | "xl";
|
|
59
|
+
allowDuplicateProperties?: boolean;
|
|
60
|
+
maxConditions?: number;
|
|
61
|
+
labels?: Partial<Record<"match" | "all" | "any" | "add" | "condition", string>>;
|
|
62
|
+
conditionLabels?: FilterConditionProps["labels"];
|
|
63
|
+
}
|
|
64
|
+
/** A flat controlled group of finite-choice predicates, without query execution or Apply/Cancel ownership. @since 0.2.11 */
|
|
65
|
+
export declare const FilterGroup: import("react").ForwardRefExoticComponent<FilterGroupProps & import("react").RefAttributes<HTMLFieldSetElement>>;
|
|
66
|
+
export interface CollectionFilterSummary {
|
|
67
|
+
id: string;
|
|
68
|
+
label: string;
|
|
69
|
+
removeLabel?: string;
|
|
70
|
+
disabled?: boolean;
|
|
71
|
+
}
|
|
72
|
+
export interface CollectionToolbarProps extends Omit<FieldsetProps, "children" | "legend" | "onChange"> {
|
|
73
|
+
label: string;
|
|
74
|
+
searchValue: string;
|
|
75
|
+
onSearchValueChange: (value: string) => void;
|
|
76
|
+
searchLabel?: string;
|
|
77
|
+
searchPlaceholder?: string;
|
|
78
|
+
clearSearchLabel?: string;
|
|
79
|
+
appliedFilters?: readonly CollectionFilterSummary[];
|
|
80
|
+
onRemoveFilter?: (id: string) => void;
|
|
81
|
+
appliedFiltersLabel?: string;
|
|
82
|
+
summaryPrefix?: ReactNode;
|
|
83
|
+
/** At most two task-important quick filters; move additional properties into filterContent. */
|
|
84
|
+
quickFilters?: ReactNode;
|
|
85
|
+
/** Additional commands beside Filters in the same tool row. */
|
|
86
|
+
actions?: ReactNode;
|
|
87
|
+
filterContent?: ReactNode;
|
|
88
|
+
filtersLabel?: string;
|
|
89
|
+
filterTitle?: string;
|
|
90
|
+
filtersOpen?: boolean;
|
|
91
|
+
onFiltersOpenChange?: (open: boolean) => void;
|
|
92
|
+
filterPanelRef?: Ref<HTMLDivElement>;
|
|
93
|
+
filterPanelClassName?: string;
|
|
94
|
+
onClear?: () => void;
|
|
95
|
+
canClear?: boolean;
|
|
96
|
+
clearLabel?: string;
|
|
97
|
+
controlSize?: "sm" | "md" | "lg" | "xl";
|
|
98
|
+
}
|
|
99
|
+
/** Search, accepted summaries and staged filter disclosure; saved views and query semantics stay host-owned. @since 0.2.11 */
|
|
100
|
+
export declare const CollectionToolbar: import("react").ForwardRefExoticComponent<CollectionToolbarProps & import("react").RefAttributes<HTMLFieldSetElement>>;
|
|
101
|
+
export interface CollectionViewOption {
|
|
102
|
+
id: string;
|
|
103
|
+
name: string;
|
|
104
|
+
disabled?: boolean;
|
|
105
|
+
}
|
|
106
|
+
export interface CollectionViewSwitcherProps extends Omit<HTMLAttributes<HTMLDivElement>, "children" | "onChange"> {
|
|
107
|
+
label: string;
|
|
108
|
+
views: readonly CollectionViewOption[];
|
|
109
|
+
value: string;
|
|
110
|
+
onValueChange: (id: string) => void;
|
|
111
|
+
actions?: readonly OverflowAction[];
|
|
112
|
+
onAction?: (id: string) => void;
|
|
113
|
+
actionsLabel?: string;
|
|
114
|
+
moreLabel?: string;
|
|
115
|
+
controlSize?: "sm" | "md" | "lg" | "xl";
|
|
116
|
+
disabled?: boolean;
|
|
117
|
+
/** Focus target for host-owned naming/deletion dialogs. */
|
|
118
|
+
selectRef?: Ref<HTMLSelectElement>;
|
|
119
|
+
}
|
|
120
|
+
/** Controlled saved/preset view choice with optional adaptive commands. @since 0.2.11 */
|
|
121
|
+
export declare const CollectionViewSwitcher: import("react").ForwardRefExoticComponent<CollectionViewSwitcherProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
122
|
+
export interface BulkActionBarProps extends Omit<HTMLAttributes<HTMLDivElement>, "children" | "onAction"> {
|
|
123
|
+
label: string;
|
|
124
|
+
selectionCount: number;
|
|
125
|
+
/** Complete localized count, for example "2 selected". */
|
|
126
|
+
selectionLabel?: string;
|
|
127
|
+
/** Visible selection summary. Hidden counters do not reserve a slot. */
|
|
128
|
+
counter?: "label" | "number" | "none";
|
|
129
|
+
/** Reserved counter width; stable while selectionCount changes. */
|
|
130
|
+
counterWidth?: CSSProperties["inlineSize"];
|
|
131
|
+
items: readonly OverflowAction[];
|
|
132
|
+
onAction?: (id: string) => void;
|
|
133
|
+
onClear: () => void;
|
|
134
|
+
clearLabel?: string;
|
|
135
|
+
moreLabel?: string;
|
|
136
|
+
size?: "sm" | "md" | "lg" | "xl";
|
|
137
|
+
/** One to three visible commands; the default is two. */
|
|
138
|
+
maxVisibleActions?: 1 | 2 | 3;
|
|
139
|
+
disabled?: boolean;
|
|
140
|
+
pending?: boolean;
|
|
141
|
+
}
|
|
142
|
+
/** A bounded single-row selection command capsule. The host owns positioning and updates. @since 0.2.11 */
|
|
143
|
+
export declare const BulkActionBar: import("react").ForwardRefExoticComponent<BulkActionBarProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
144
|
+
export interface MenubarMenu {
|
|
145
|
+
id: string;
|
|
146
|
+
label: string;
|
|
147
|
+
disabled?: boolean;
|
|
148
|
+
items: readonly MenuItem[];
|
|
149
|
+
}
|
|
150
|
+
export interface MenubarProps extends Omit<HTMLAttributes<HTMLDivElement>, "children" | "onAction"> {
|
|
151
|
+
label: string;
|
|
152
|
+
menus: readonly MenubarMenu[];
|
|
153
|
+
openValue?: string | null;
|
|
154
|
+
defaultOpenValue?: string | null;
|
|
155
|
+
onOpenValueChange?: (id: string | null) => void;
|
|
156
|
+
onAction?: (menuId: string, actionId: string) => void;
|
|
157
|
+
controlSize?: "sm" | "md" | "lg" | "xl";
|
|
158
|
+
disabled?: boolean;
|
|
159
|
+
}
|
|
160
|
+
/** Desktop application commands; destinations use native links instead. @since 0.2.11 */
|
|
161
|
+
export declare const Menubar: import("react").ForwardRefExoticComponent<MenubarProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
2
162
|
export interface TimePickerProps extends Omit<TimeFieldProps, "end"> {
|
|
3
163
|
interval?: number;
|
|
4
164
|
open?: boolean;
|
|
@@ -29,6 +189,10 @@ export interface DateTimeRangePickerProps extends Omit<HTMLAttributes<HTMLDivEle
|
|
|
29
189
|
startTimeLabel?: string;
|
|
30
190
|
endDateLabel?: string;
|
|
31
191
|
endTimeLabel?: string;
|
|
192
|
+
startDatePickerLabels?: DateTimePickerProps["datePickerLabels"];
|
|
193
|
+
endDatePickerLabels?: DateTimePickerProps["datePickerLabels"];
|
|
194
|
+
startTimePickerLabels?: DateTimePickerProps["timePickerLabels"];
|
|
195
|
+
endTimePickerLabels?: DateTimePickerProps["timePickerLabels"];
|
|
32
196
|
form?: string;
|
|
33
197
|
required?: boolean;
|
|
34
198
|
disabled?: boolean;
|
|
@@ -115,9 +279,21 @@ export declare const ImagePreview: import("react").ForwardRefExoticComponent<Ima
|
|
|
115
279
|
export interface DataTableColumn {
|
|
116
280
|
id: string;
|
|
117
281
|
label: string;
|
|
282
|
+
/** Short unit shown alongside the label, such as USD or kg. */
|
|
283
|
+
unit?: string;
|
|
118
284
|
sortable?: boolean;
|
|
285
|
+
numeric?: boolean;
|
|
119
286
|
align?: "start" | "end";
|
|
120
287
|
width?: CSSProperties["width"];
|
|
288
|
+
/** Keep this column visible when the host or Columns menu hides other columns. */
|
|
289
|
+
hideable?: boolean;
|
|
290
|
+
/** Opt into pointer and keyboard width adjustments for this column. */
|
|
291
|
+
resizable?: boolean;
|
|
292
|
+
/** Interactive width bounds in CSS pixels. */
|
|
293
|
+
minWidth?: number;
|
|
294
|
+
maxWidth?: number;
|
|
295
|
+
/** Keep the column at a logical edge when the table scrolls horizontally. */
|
|
296
|
+
pinned?: "start" | "end";
|
|
121
297
|
}
|
|
122
298
|
export interface DataTableRow {
|
|
123
299
|
id: string;
|
|
@@ -125,6 +301,17 @@ export interface DataTableRow {
|
|
|
125
301
|
cells: Readonly<Record<string, ReactNode>>;
|
|
126
302
|
sortValues?: Readonly<Record<string, string | number | null>>;
|
|
127
303
|
selectionDisabled?: boolean;
|
|
304
|
+
/** Related detail rendered in a separate full-width row on disclosure. */
|
|
305
|
+
expandedContent?: ReactNode;
|
|
306
|
+
/** One named record-opening action. Other controls in the row remain independent. */
|
|
307
|
+
primaryAction?: {
|
|
308
|
+
column: string;
|
|
309
|
+
title: string;
|
|
310
|
+
description?: ReactNode;
|
|
311
|
+
buttonProps: Omit<ButtonProps, "children" | "type" | "variant" | "size"> & {
|
|
312
|
+
ref?: Ref<HTMLButtonElement>;
|
|
313
|
+
};
|
|
314
|
+
};
|
|
128
315
|
}
|
|
129
316
|
export interface DataTableSort {
|
|
130
317
|
column: string;
|
|
@@ -140,19 +327,47 @@ export interface DataTableLabels {
|
|
|
140
327
|
results?: (from: number, to: number, total: number) => string;
|
|
141
328
|
selection?: (selected: number, total: number) => string;
|
|
142
329
|
sort?: (label: string) => string;
|
|
330
|
+
columns?: string;
|
|
331
|
+
resetColumns?: string;
|
|
332
|
+
sortedColumn?: (label: string) => string;
|
|
333
|
+
resizeColumn?: (label: string) => string;
|
|
334
|
+
expandRow?: (label: string) => string;
|
|
335
|
+
collapseRow?: (label: string) => string;
|
|
336
|
+
rowDetails?: string;
|
|
143
337
|
pagination?: string;
|
|
144
338
|
previousPage?: string;
|
|
145
339
|
nextPage?: string;
|
|
146
340
|
page?: (page: number) => string;
|
|
147
341
|
}
|
|
148
342
|
export interface DataTableProps extends Omit<HTMLAttributes<HTMLDivElement>, "children"> {
|
|
343
|
+
/** Host-owned heading, search and filters aligned with the outer table cells. */
|
|
344
|
+
toolbar?: ReactNode | ((controls: {
|
|
345
|
+
columns: ReactNode;
|
|
346
|
+
}) => ReactNode);
|
|
347
|
+
inset?: "standard" | "roomy";
|
|
348
|
+
/** Ready with no rows only. Compose EmptyState/actions here; loading and error keep their owners. */
|
|
349
|
+
emptyContent?: ReactNode;
|
|
149
350
|
caption: string;
|
|
150
351
|
hideCaption?: boolean;
|
|
151
352
|
columns: readonly DataTableColumn[];
|
|
353
|
+
showColumnVisibility?: boolean;
|
|
354
|
+
hiddenColumnIds?: readonly string[];
|
|
355
|
+
/** Initial hidden columns and the layout restored by Reset columns. */
|
|
356
|
+
defaultHiddenColumnIds?: readonly string[];
|
|
357
|
+
onHiddenColumnIdsChange?: (ids: string[]) => void;
|
|
358
|
+
columnWidths?: Readonly<Record<string, number>>;
|
|
359
|
+
defaultColumnWidths?: Readonly<Record<string, number>>;
|
|
360
|
+
onColumnWidthsChange?: (widths: Record<string, number>) => void;
|
|
152
361
|
rows: readonly DataTableRow[];
|
|
362
|
+
expandedIds?: readonly string[];
|
|
363
|
+
defaultExpandedIds?: readonly string[];
|
|
364
|
+
onExpandedChange?: (ids: string[]) => void;
|
|
153
365
|
density?: "compact" | "comfortable";
|
|
154
366
|
striped?: boolean;
|
|
155
367
|
minWidth?: CSSProperties["minWidth"];
|
|
368
|
+
/** Maximum height of the scroll viewport, including the header. */
|
|
369
|
+
maxViewportHeight?: CSSProperties["maxBlockSize"];
|
|
370
|
+
stickyHeader?: boolean;
|
|
156
371
|
sort?: DataTableSort | null;
|
|
157
372
|
defaultSort?: DataTableSort | null;
|
|
158
373
|
onSortChange?: (sort: DataTableSort | null) => void;
|
|
@@ -165,12 +380,35 @@ export interface DataTableProps extends Omit<HTMLAttributes<HTMLDivElement>, "ch
|
|
|
165
380
|
defaultPage?: number;
|
|
166
381
|
pageSize?: number;
|
|
167
382
|
onPageChange?: (page: number) => void;
|
|
383
|
+
/** Hide the result range while preserving selection and pagination controls. */
|
|
384
|
+
showResults?: boolean;
|
|
385
|
+
/** Hide the visible selection count while retaining its accessible status. */
|
|
386
|
+
showSelection?: boolean;
|
|
387
|
+
/** Server mode renders rows as the supplied page, without local sorting/slicing. */
|
|
388
|
+
paginationMode?: "client" | "server";
|
|
389
|
+
totalRows?: number;
|
|
390
|
+
/** Server dataset selection is controlled; the host validates IDs outside this page. */
|
|
391
|
+
selectionScope?: "page" | "dataset";
|
|
168
392
|
state?: "ready" | "loading" | "error";
|
|
169
393
|
onRetry?: () => void;
|
|
170
394
|
labels?: DataTableLabels;
|
|
171
395
|
}
|
|
172
396
|
/** A client-side table composed from native table, checkbox and pagination. @since 0.2.8 */
|
|
173
397
|
export declare const DataTable: import("react").ForwardRefExoticComponent<DataTableProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
398
|
+
export interface SparklineProps extends Omit<HTMLAttributes<HTMLDivElement>, "children" | "role" | "aria-label" | "aria-labelledby"> {
|
|
399
|
+
/** Equally spaced observations in order. Missing or nonfinite values break the line. */
|
|
400
|
+
values: readonly (number | null)[];
|
|
401
|
+
/** Localized text conveying the trend or the absence of data. */
|
|
402
|
+
label: string;
|
|
403
|
+
showLabel?: boolean;
|
|
404
|
+
/** Shared lower and upper bounds for comparisons. Values outside the bounds are clipped. */
|
|
405
|
+
domain?: readonly [number, number];
|
|
406
|
+
size?: "sm" | "md";
|
|
407
|
+
tone?: "neutral" | "accent" | "success" | "warning" | "error";
|
|
408
|
+
variant?: "line" | "area";
|
|
409
|
+
}
|
|
410
|
+
/** @since 0.2.11 */
|
|
411
|
+
export declare const Sparkline: import("react").ForwardRefExoticComponent<SparklineProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
174
412
|
export interface DataListProps extends Omit<HTMLAttributes<HTMLUListElement>, "role"> {
|
|
175
413
|
density?: "compact" | "comfortable";
|
|
176
414
|
dividers?: boolean;
|
|
@@ -289,6 +527,8 @@ export interface DateTimePickerProps extends Omit<HTMLAttributes<HTMLDivElement>
|
|
|
289
527
|
onValueChange?: (value: DateTimeValue) => void;
|
|
290
528
|
dateLabel?: string;
|
|
291
529
|
timeLabel?: string;
|
|
530
|
+
datePickerLabels?: Pick<DatePickerProps, "calendarLabel" | "openCalendarLabel" | "previousMonthLabel" | "nextMonthLabel" | "viewLabels" | "segmentLabels" | "messages">;
|
|
531
|
+
timePickerLabels?: Pick<TimePickerProps, "panelLabel" | "openTimeLabel" | "segmentLabels" | "messages">;
|
|
292
532
|
dateName?: string;
|
|
293
533
|
timeName?: string;
|
|
294
534
|
form?: string;
|
|
@@ -342,28 +582,136 @@ export interface TreeProps extends Omit<HTMLAttributes<HTMLDivElement>, "childre
|
|
|
342
582
|
}
|
|
343
583
|
/** @since 0.2.7 */
|
|
344
584
|
export declare const Tree: import("react").ForwardRefExoticComponent<TreeProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
585
|
+
export interface NavigationItemDisclosure {
|
|
586
|
+
expanded: boolean;
|
|
587
|
+
onExpandedChange: (expanded: boolean) => void;
|
|
588
|
+
label: string;
|
|
589
|
+
controls?: string;
|
|
590
|
+
disabled?: boolean;
|
|
591
|
+
}
|
|
592
|
+
export interface NavigationItemProps extends Omit<HTMLAttributes<HTMLDivElement>, 'children' | 'onChange'> {
|
|
593
|
+
label: string;
|
|
594
|
+
description?: string;
|
|
595
|
+
icon?: ReactNode;
|
|
596
|
+
reserveIcon?: boolean;
|
|
597
|
+
trailing?: ReactNode;
|
|
598
|
+
/** Independent action rendered beside the primary control in expanded rows. */
|
|
599
|
+
trailingAction?: ReactNode;
|
|
600
|
+
href?: string;
|
|
601
|
+
linkProps?: Omit<AnchorHTMLAttributes<HTMLAnchorElement>, 'href' | 'children' | 'aria-current'>;
|
|
602
|
+
onAction?: () => void;
|
|
603
|
+
actionProps?: Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'>;
|
|
604
|
+
disclosure?: NavigationItemDisclosure;
|
|
605
|
+
current?: boolean;
|
|
606
|
+
currentKind?: 'page' | 'location';
|
|
607
|
+
ancestorCurrent?: boolean;
|
|
608
|
+
disabled?: boolean;
|
|
609
|
+
size?: 'sm' | 'md' | 'lg';
|
|
610
|
+
compact?: boolean;
|
|
611
|
+
variant?: 'quiet' | 'standard';
|
|
612
|
+
tooltip?: boolean;
|
|
613
|
+
tooltipSide?: 'left' | 'right';
|
|
614
|
+
controlRef?: Ref<HTMLElement>;
|
|
615
|
+
disclosureRef?: Ref<HTMLButtonElement>;
|
|
616
|
+
}
|
|
617
|
+
/** Shared navigation row geometry and native destination/action behavior. @since 0.2.11 */
|
|
618
|
+
export declare const NavigationItem: import("react").ForwardRefExoticComponent<NavigationItemProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
619
|
+
export interface NavigationGroupProps extends Omit<HTMLAttributes<HTMLDivElement>, "children" | "title" | "onChange"> {
|
|
620
|
+
label?: string;
|
|
621
|
+
hideLabel?: boolean;
|
|
622
|
+
headingAction?: ReactNode;
|
|
623
|
+
separator?: boolean;
|
|
624
|
+
collapsible?: boolean;
|
|
625
|
+
expanded?: boolean;
|
|
626
|
+
defaultExpanded?: boolean;
|
|
627
|
+
onExpandedChange?: (expanded: boolean) => void;
|
|
628
|
+
compact?: boolean;
|
|
629
|
+
size?: "sm" | "md" | "lg";
|
|
630
|
+
collapseDisabled?: boolean;
|
|
631
|
+
children?: ReactNode;
|
|
632
|
+
}
|
|
633
|
+
/** Related navigation with independently configurable presentation. @since 0.2.11 */
|
|
634
|
+
export declare const NavigationGroup: import("react").ForwardRefExoticComponent<NavigationGroupProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
345
635
|
export interface NavigationTreeItem {
|
|
346
636
|
value: string;
|
|
347
637
|
label: string;
|
|
348
638
|
href?: string;
|
|
349
639
|
icon?: ReactNode;
|
|
640
|
+
trailing?: ReactNode;
|
|
641
|
+
trailingAction?: ReactNode;
|
|
350
642
|
disabled?: boolean;
|
|
351
643
|
children?: readonly NavigationTreeItem[];
|
|
352
644
|
content?: ReactNode;
|
|
645
|
+
flyout?: {
|
|
646
|
+
openOnHover?: boolean;
|
|
647
|
+
positionReference?: RefObject<HTMLElement | null>;
|
|
648
|
+
};
|
|
353
649
|
linkProps?: Omit<AnchorHTMLAttributes<HTMLAnchorElement>, "href" | "children" | "aria-current">;
|
|
354
650
|
}
|
|
355
651
|
export interface NavigationTreeProps extends Omit<HTMLAttributes<HTMLElement>, "children" | "onChange"> {
|
|
356
652
|
label: string;
|
|
357
653
|
items: readonly NavigationTreeItem[];
|
|
358
654
|
currentValue?: string;
|
|
655
|
+
/** Page destination versus the current global module/location. */
|
|
656
|
+
currentKind?: "page" | "location";
|
|
359
657
|
expandedValues?: readonly string[];
|
|
360
658
|
defaultExpandedValues?: readonly string[];
|
|
361
659
|
onExpandedValuesChange?: (values: string[]) => void;
|
|
362
660
|
expandLabel?: (item: NavigationTreeItem, expanded: boolean) => string;
|
|
363
661
|
size?: ContentSize;
|
|
662
|
+
variant?: "quiet" | "standard";
|
|
663
|
+
/** Icon rail; branches open a Popover without changing the accepted expansion set. */
|
|
664
|
+
compact?: boolean;
|
|
665
|
+
flyoutSide?: "left" | "right";
|
|
666
|
+
branchGuides?: boolean;
|
|
364
667
|
}
|
|
365
668
|
/** @since 0.2.7 */
|
|
366
669
|
export declare const NavigationTree: import("react").ForwardRefExoticComponent<NavigationTreeProps & import("react").RefAttributes<HTMLElement>>;
|
|
670
|
+
export interface SidebarGroup {
|
|
671
|
+
id: string;
|
|
672
|
+
label: string;
|
|
673
|
+
/** Keep the navigation name while omitting a redundant visible section title. */
|
|
674
|
+
hideLabel?: boolean;
|
|
675
|
+
separator?: boolean;
|
|
676
|
+
branchGuides?: boolean;
|
|
677
|
+
headingAction?: ReactNode;
|
|
678
|
+
collapsible?: boolean;
|
|
679
|
+
expanded?: boolean;
|
|
680
|
+
defaultExpanded?: boolean;
|
|
681
|
+
onExpandedChange?: (expanded: boolean) => void;
|
|
682
|
+
items: readonly NavigationTreeItem[];
|
|
683
|
+
}
|
|
684
|
+
export interface SidebarSlotState {
|
|
685
|
+
collapsed: boolean;
|
|
686
|
+
}
|
|
687
|
+
export interface SidebarProps extends Omit<HTMLAttributes<HTMLElement>, "children" | "onChange"> {
|
|
688
|
+
label: string;
|
|
689
|
+
groups: readonly SidebarGroup[];
|
|
690
|
+
currentValue?: string;
|
|
691
|
+
currentKind?: NavigationTreeProps["currentKind"];
|
|
692
|
+
collapsed?: boolean;
|
|
693
|
+
defaultCollapsed?: boolean;
|
|
694
|
+
onCollapsedChange?: (collapsed: boolean) => void;
|
|
695
|
+
collapsible?: boolean;
|
|
696
|
+
collapseLabel?: string;
|
|
697
|
+
expandLabel?: string;
|
|
698
|
+
expandedValues?: readonly string[];
|
|
699
|
+
defaultExpandedValues?: readonly string[];
|
|
700
|
+
onExpandedValuesChange?: (values: string[]) => void;
|
|
701
|
+
expandItemLabel?: NavigationTreeProps["expandLabel"];
|
|
702
|
+
size?: ContentSize;
|
|
703
|
+
/** Quiet recedes behind work content; standard preserves the stronger pill recipe. */
|
|
704
|
+
variant?: "quiet" | "standard";
|
|
705
|
+
side?: "start" | "end";
|
|
706
|
+
width?: CSSProperties["width"];
|
|
707
|
+
header?: ReactNode | ((state: SidebarSlotState) => ReactNode);
|
|
708
|
+
headerLayout?: "stacked" | "inline";
|
|
709
|
+
footer?: ReactNode | ((state: SidebarSlotState) => ReactNode);
|
|
710
|
+
footerSeparator?: boolean;
|
|
711
|
+
headerSeparator?: boolean;
|
|
712
|
+
}
|
|
713
|
+
/** Bounded desktop navigation composed from NavigationTree and ScrollArea. @since 0.2.11 */
|
|
714
|
+
export declare const Sidebar: import("react").ForwardRefExoticComponent<SidebarProps & import("react").RefAttributes<HTMLElement>>;
|
|
367
715
|
export interface ErrorSummaryItem {
|
|
368
716
|
id: string;
|
|
369
717
|
fieldId: string;
|
|
@@ -440,6 +788,7 @@ export interface DateRangePickerProps extends Omit<DateRangeFieldProps, "end"> {
|
|
|
440
788
|
onOpenChange?: (open: boolean) => void;
|
|
441
789
|
calendarLabel?: string;
|
|
442
790
|
openCalendarLabel?: string;
|
|
791
|
+
viewLabels?: CalendarProps["viewLabels"];
|
|
443
792
|
locale?: string;
|
|
444
793
|
weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6;
|
|
445
794
|
today?: string;
|
|
@@ -455,6 +804,7 @@ export interface DatePickerProps extends Omit<DateFieldProps, "end"> {
|
|
|
455
804
|
onOpenChange?: (open: boolean) => void;
|
|
456
805
|
calendarLabel?: string;
|
|
457
806
|
openCalendarLabel?: string;
|
|
807
|
+
viewLabels?: CalendarProps["viewLabels"];
|
|
458
808
|
locale?: string;
|
|
459
809
|
weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6;
|
|
460
810
|
today?: string;
|
|
@@ -602,6 +952,12 @@ export interface EditableProps extends Omit<HTMLAttributes<HTMLDivElement>, "def
|
|
|
602
952
|
onEditingChange?: (editing: boolean) => void;
|
|
603
953
|
onCommit?: (value: string) => void;
|
|
604
954
|
onCancel?: () => void;
|
|
955
|
+
/** Return a message to keep the draft open and prevent a commit. */
|
|
956
|
+
validate?: (value: string) => string | undefined;
|
|
957
|
+
inputMode?: InputHTMLAttributes<HTMLInputElement>["inputMode"];
|
|
958
|
+
previewVariant?: "subtle" | "ghost";
|
|
959
|
+
/** Render the editor over its trigger at this preferred width. */
|
|
960
|
+
editorOverlayWidth?: CSSProperties["inlineSize"];
|
|
605
961
|
blurAction?: "commit" | "cancel" | "none";
|
|
606
962
|
readOnly?: boolean;
|
|
607
963
|
disabled?: boolean;
|
|
@@ -620,6 +976,7 @@ export declare const Editable: import("react").ForwardRefExoticComponent<Editabl
|
|
|
620
976
|
export type ControlSize = "2xs" | "xs" | "sm" | "md" | "lg" | "xl" | "2xl";
|
|
621
977
|
export interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
|
|
622
978
|
variant?: "solid" | "subtle" | "outline" | "ghost";
|
|
979
|
+
tone?: "default" | "danger";
|
|
623
980
|
size?: ControlSize;
|
|
624
981
|
loading?: boolean;
|
|
625
982
|
}
|
|
@@ -645,6 +1002,10 @@ export interface ToolbarProps extends Omit<HTMLAttributes<HTMLDivElement>, "role
|
|
|
645
1002
|
label: string;
|
|
646
1003
|
orientation?: "horizontal" | "vertical";
|
|
647
1004
|
loop?: boolean;
|
|
1005
|
+
/** Pill keeps a single horizontal rail; rounded permits wrapped tool groups. */
|
|
1006
|
+
shape?: "rounded" | "pill";
|
|
1007
|
+
/** Plain groups keep control height without another surface or outer inset. */
|
|
1008
|
+
variant?: "contained" | "plain";
|
|
648
1009
|
}
|
|
649
1010
|
/** @since 0.2.4 */
|
|
650
1011
|
export declare const Toolbar: import("react").ForwardRefExoticComponent<ToolbarProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -669,6 +1030,9 @@ export interface TableProps extends Omit<TableHTMLAttributes<HTMLTableElement>,
|
|
|
669
1030
|
density?: DataDensity;
|
|
670
1031
|
striped?: boolean;
|
|
671
1032
|
scrollLabel?: string;
|
|
1033
|
+
/** Maximum height of the scroll viewport, including the header and caption. */
|
|
1034
|
+
maxViewportHeight?: CSSProperties["maxBlockSize"];
|
|
1035
|
+
stickyHeader?: boolean;
|
|
672
1036
|
/** Shared cell alignment. Middle keeps mixed record/action rows coherent; top is an explicit prose-table choice. */
|
|
673
1037
|
cellVerticalAlign?: "top" | "middle" | "bottom";
|
|
674
1038
|
}
|
|
@@ -748,6 +1112,7 @@ export interface TabsProps extends Omit<HTMLAttributes<HTMLDivElement>, "childre
|
|
|
748
1112
|
onValueChange?: (value: string) => void;
|
|
749
1113
|
activationMode?: "automatic" | "manual";
|
|
750
1114
|
orientation?: "horizontal" | "vertical";
|
|
1115
|
+
variant?: "contained" | "line";
|
|
751
1116
|
controlSize?: "sm" | "md" | "lg" | "xl";
|
|
752
1117
|
disabled?: boolean;
|
|
753
1118
|
iconOnly?: boolean;
|
|
@@ -839,9 +1204,13 @@ export interface MenuProps extends Omit<HTMLAttributes<HTMLDivElement>, "childre
|
|
|
839
1204
|
}
|
|
840
1205
|
/** @since 0.2.4 */
|
|
841
1206
|
export declare const Menu: import("react").ForwardRefExoticComponent<MenuProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
1207
|
+
export interface TooltipTriggerProps extends HTMLAttributes<HTMLElement> {
|
|
1208
|
+
ref: RefCallback<HTMLElement>;
|
|
1209
|
+
}
|
|
842
1210
|
export interface TooltipProps extends Omit<HTMLAttributes<HTMLDivElement>, "children" | "content" | "title" | "role"> {
|
|
843
1211
|
content: string;
|
|
844
|
-
|
|
1212
|
+
/** Native link/button-safe hover/focus props; the trigger keeps its own semantics. */
|
|
1213
|
+
trigger: (props: TooltipTriggerProps) => ReactNode;
|
|
845
1214
|
side?: "top" | "bottom" | "left" | "right";
|
|
846
1215
|
align?: "start" | "center" | "end";
|
|
847
1216
|
delay?: number;
|
|
@@ -850,7 +1219,7 @@ export interface TooltipProps extends Omit<HTMLAttributes<HTMLDivElement>, "chil
|
|
|
850
1219
|
export declare const Tooltip: import("react").ForwardRefExoticComponent<TooltipProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
851
1220
|
export interface PopoverProps extends Omit<HTMLAttributes<HTMLDivElement>, "children" | "title" | "role"> {
|
|
852
1221
|
title: string;
|
|
853
|
-
chrome?: "default" | "minimal";
|
|
1222
|
+
chrome?: "default" | "minimal" | "title-only";
|
|
854
1223
|
trigger: (props: OverlayTriggerProps) => ReactNode;
|
|
855
1224
|
children?: ReactNode;
|
|
856
1225
|
open?: boolean;
|
|
@@ -862,6 +1231,7 @@ export interface PopoverProps extends Omit<HTMLAttributes<HTMLDivElement>, "chil
|
|
|
862
1231
|
closeLabel?: string;
|
|
863
1232
|
initialFocusRef?: RefObject<HTMLElement | null>;
|
|
864
1233
|
positionReference?: RefObject<HTMLElement | null>;
|
|
1234
|
+
focusOnOpen?: boolean;
|
|
865
1235
|
}
|
|
866
1236
|
export declare const Popover: import("react").ForwardRefExoticComponent<PopoverProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
867
1237
|
export interface DialogProps extends Omit<HTMLAttributes<HTMLDialogElement>, "children" | "title" | "role"> {
|
|
@@ -878,12 +1248,30 @@ export interface DialogProps extends Omit<HTMLAttributes<HTMLDialogElement>, "ch
|
|
|
878
1248
|
initialFocusRef?: RefObject<HTMLElement | null>;
|
|
879
1249
|
}
|
|
880
1250
|
export declare const Dialog: import("react").ForwardRefExoticComponent<DialogProps & import("react").RefAttributes<HTMLDialogElement>>;
|
|
1251
|
+
export interface CommandPaletteProps extends Omit<DialogProps, "children" | "description" | "initialFocusRef"> {
|
|
1252
|
+
searchLabel: string;
|
|
1253
|
+
items: readonly CommandListItem[];
|
|
1254
|
+
density?: "comfortable" | "compact";
|
|
1255
|
+
query?: string;
|
|
1256
|
+
defaultQuery?: string;
|
|
1257
|
+
onQueryChange?: (query: string) => void;
|
|
1258
|
+
onAction: (id: string) => void;
|
|
1259
|
+
loading?: boolean;
|
|
1260
|
+
placeholder?: string;
|
|
1261
|
+
emptyMessage?: string;
|
|
1262
|
+
loadingMessage?: string;
|
|
1263
|
+
}
|
|
1264
|
+
/** @since 0.2.11 */
|
|
1265
|
+
export declare const CommandPalette: import("react").ForwardRefExoticComponent<CommandPaletteProps & import("react").RefAttributes<HTMLDialogElement>>;
|
|
881
1266
|
export interface DrawerProps extends DialogProps {
|
|
882
1267
|
side?: "start" | "end" | "top" | "bottom";
|
|
883
1268
|
size?: "sm" | "md" | "lg";
|
|
884
1269
|
footer?: ReactNode;
|
|
885
1270
|
}
|
|
886
1271
|
export declare const Drawer: import("react").ForwardRefExoticComponent<DrawerProps & import("react").RefAttributes<HTMLDialogElement>>;
|
|
1272
|
+
export type SheetProps = Omit<DrawerProps, "side">;
|
|
1273
|
+
/** A modal bottom sheet for a short task or a list of choices. @since 0.2.12 */
|
|
1274
|
+
export declare const Sheet: import("react").ForwardRefExoticComponent<SheetProps & import("react").RefAttributes<HTMLDialogElement>>;
|
|
887
1275
|
export interface AlertDialogProps extends Omit<DialogProps, "children" | "role" | "description" | "closeLabel" | "closeOnOutsideClick" | "initialFocusRef"> {
|
|
888
1276
|
description: string;
|
|
889
1277
|
confirmLabel?: string;
|
|
@@ -895,6 +1283,8 @@ export interface AlertDialogProps extends Omit<DialogProps, "children" | "role"
|
|
|
895
1283
|
export declare const AlertDialog: import("react").ForwardRefExoticComponent<AlertDialogProps & import("react").RefAttributes<HTMLDialogElement>>;
|
|
896
1284
|
export interface CollapsibleProps extends Omit<HTMLAttributes<HTMLDivElement>, "title" | "onChange"> {
|
|
897
1285
|
title: string;
|
|
1286
|
+
/** Independent action beside the disclosure trigger, never nested inside it. */
|
|
1287
|
+
headerAction?: ReactNode;
|
|
898
1288
|
open?: boolean;
|
|
899
1289
|
defaultOpen?: boolean;
|
|
900
1290
|
onOpenChange?: (open: boolean) => void;
|
|
@@ -996,6 +1386,7 @@ export interface ComboboxOption {
|
|
|
996
1386
|
description?: string;
|
|
997
1387
|
keywords?: readonly string[];
|
|
998
1388
|
disabled?: boolean;
|
|
1389
|
+
group?: string;
|
|
999
1390
|
}
|
|
1000
1391
|
export interface ComboboxProps extends Omit<InputProps, "type" | "value" | "defaultValue" | "onChange" | "children"> {
|
|
1001
1392
|
options: readonly ComboboxOption[];
|
|
@@ -1008,7 +1399,27 @@ export interface ComboboxProps extends Omit<InputProps, "type" | "value" | "defa
|
|
|
1008
1399
|
toggleLabel?: string;
|
|
1009
1400
|
clearLabel?: string;
|
|
1010
1401
|
invalidSelectionMessage?: string;
|
|
1402
|
+
query?: string;
|
|
1403
|
+
onQueryChange?: (query: string) => void;
|
|
1404
|
+
/** Manual results require a controlled query and a matching optionsQuery. */
|
|
1405
|
+
filtering?: "local" | "manual";
|
|
1406
|
+
optionsQuery?: string;
|
|
1407
|
+
/** Retain the selected record's presentation while remote results change. */
|
|
1408
|
+
selectedOptions?: readonly ComboboxOption[];
|
|
1409
|
+
loadState?: "ready" | "loading" | "error";
|
|
1410
|
+
loadingMessage?: string;
|
|
1411
|
+
errorMessage?: string;
|
|
1412
|
+
onRetry?: () => void;
|
|
1413
|
+
retryLabel?: string;
|
|
1011
1414
|
}
|
|
1415
|
+
export interface AutocompleteProps extends Omit<ComboboxProps, "query" | "onQueryChange" | "selectedOptions" | "value" | "defaultValue" | "onValueChange"> {
|
|
1416
|
+
value?: string;
|
|
1417
|
+
defaultValue?: string;
|
|
1418
|
+
onValueChange?: (value: string) => void;
|
|
1419
|
+
onOptionSelect?: (option: ComboboxOption) => void;
|
|
1420
|
+
}
|
|
1421
|
+
/** A free text field with suggestions; FormData contains text rather than an option ID. @since 0.2.11 */
|
|
1422
|
+
export declare const Autocomplete: import("react").ForwardRefExoticComponent<AutocompleteProps & import("react").RefAttributes<HTMLInputElement>>;
|
|
1012
1423
|
/** @since 0.2.5 */
|
|
1013
1424
|
export declare const Combobox: import("react").ForwardRefExoticComponent<ComboboxProps & import("react").RefAttributes<HTMLInputElement>>;
|
|
1014
1425
|
export interface MultiSelectProps extends Omit<ComboboxProps, "value" | "defaultValue" | "onValueChange"> {
|
|
@@ -1101,9 +1512,13 @@ export interface RadioGroupProps extends Omit<FieldsetProps, "children" | "defau
|
|
|
1101
1512
|
required?: boolean;
|
|
1102
1513
|
}
|
|
1103
1514
|
export declare const RadioGroup: import("react").ForwardRefExoticComponent<RadioGroupProps & import("react").RefAttributes<HTMLFieldSetElement>>;
|
|
1515
|
+
export interface SegmentedControlOption extends ToggleOption {
|
|
1516
|
+
/** Optional visible count read with the label. Format localized counts before passing them. @since 0.2.11 */
|
|
1517
|
+
count?: number | string;
|
|
1518
|
+
}
|
|
1104
1519
|
export interface SegmentedControlProps extends Omit<RadioGroupProps, "legend" | "options"> {
|
|
1105
1520
|
label: string;
|
|
1106
|
-
options: readonly
|
|
1521
|
+
options: readonly SegmentedControlOption[];
|
|
1107
1522
|
controlSize?: "sm" | "md" | "lg" | "xl";
|
|
1108
1523
|
iconOnly?: boolean;
|
|
1109
1524
|
fullWidth?: boolean;
|
|
@@ -1155,7 +1570,7 @@ export interface TextProps extends HTMLAttributes<HTMLElement> {
|
|
|
1155
1570
|
export declare const Text: import("react").ForwardRefExoticComponent<TextProps & import("react").RefAttributes<HTMLElement>>;
|
|
1156
1571
|
export interface HeadingProps extends HTMLAttributes<HTMLHeadingElement> {
|
|
1157
1572
|
level?: 1 | 2 | 3 | 4 | 5 | 6;
|
|
1158
|
-
size?: "display" | "large" | "page" | "section";
|
|
1573
|
+
size?: "display" | "large" | "page" | "section" | "group";
|
|
1159
1574
|
}
|
|
1160
1575
|
export declare const Heading: import("react").ForwardRefExoticComponent<HeadingProps & import("react").RefAttributes<HTMLHeadingElement>>;
|
|
1161
1576
|
export type Space = "0" | "1" | "2" | "3" | "4" | "6" | "8" | "12";
|
|
@@ -1240,6 +1655,8 @@ export interface IconSlotProps extends HTMLAttributes<HTMLSpanElement> {
|
|
|
1240
1655
|
export declare const IconSlot: import("react").ForwardRefExoticComponent<IconSlotProps & import("react").RefAttributes<HTMLSpanElement>>;
|
|
1241
1656
|
export interface IconButtonProps extends Omit<ButtonProps, "aria-label"> {
|
|
1242
1657
|
label: string;
|
|
1658
|
+
/** Glyph size only; size continues to own the interactive target and insets. */
|
|
1659
|
+
iconSize?: ControlSize;
|
|
1243
1660
|
}
|
|
1244
1661
|
export declare const IconButton: import("react").ForwardRefExoticComponent<IconButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
|
|
1245
1662
|
export declare const Divider: import("react").ForwardRefExoticComponent<HTMLAttributes<HTMLHRElement> & import("react").RefAttributes<HTMLHRElement>>;
|
|
@@ -1397,9 +1814,56 @@ export interface SectionProps extends Omit<HTMLAttributes<HTMLElement>, "title">
|
|
|
1397
1814
|
description?: ReactNode;
|
|
1398
1815
|
actions?: ReactNode;
|
|
1399
1816
|
headingLevel?: 2 | 3 | 4 | 5 | 6;
|
|
1400
|
-
headingSize?: "
|
|
1817
|
+
headingSize?: HeadingProps["size"];
|
|
1401
1818
|
}
|
|
1402
1819
|
export declare const Section: import("react").ForwardRefExoticComponent<SectionProps & import("react").RefAttributes<HTMLElement>>;
|
|
1820
|
+
export interface PageHeaderProps extends Omit<HTMLAttributes<HTMLElement>, "title" | "children"> {
|
|
1821
|
+
title: string;
|
|
1822
|
+
description?: ReactNode;
|
|
1823
|
+
actions?: ReactNode;
|
|
1824
|
+
headingId?: string;
|
|
1825
|
+
/** Use level 2 when showing a page header inside an existing document outline. */
|
|
1826
|
+
headingLevel?: 1 | 2;
|
|
1827
|
+
headingSize?: "page" | "large" | "display";
|
|
1828
|
+
}
|
|
1829
|
+
/** The primary heading and associated actions inside a page's main region. @since 0.2.11 */
|
|
1830
|
+
export declare const PageHeader: import("react").ForwardRefExoticComponent<PageHeaderProps & import("react").RefAttributes<HTMLElement>>;
|
|
1831
|
+
export interface AppTopBarProps extends Omit<HTMLAttributes<HTMLElement>, "children"> {
|
|
1832
|
+
start?: ReactNode;
|
|
1833
|
+
end?: ReactNode;
|
|
1834
|
+
bordered?: boolean;
|
|
1835
|
+
}
|
|
1836
|
+
/** Persistent application chrome with independent context and action slots. @since 0.2.11 */
|
|
1837
|
+
export declare const AppTopBar: import("react").ForwardRefExoticComponent<AppTopBarProps & import("react").RefAttributes<HTMLElement>>;
|
|
1838
|
+
export interface AppShellNavigationDrawer {
|
|
1839
|
+
/** Switch below this shell width in CSS pixels. */
|
|
1840
|
+
below: number;
|
|
1841
|
+
title: string;
|
|
1842
|
+
triggerLabel?: string;
|
|
1843
|
+
size?: DrawerProps["size"];
|
|
1844
|
+
renderContent: (close: () => void) => ReactNode;
|
|
1845
|
+
}
|
|
1846
|
+
export interface AppShellProps extends HTMLAttributes<HTMLDivElement> {
|
|
1847
|
+
navigation?: ReactNode;
|
|
1848
|
+
navigationSide?: "start" | "end";
|
|
1849
|
+
navigationDrawer?: AppShellNavigationDrawer;
|
|
1850
|
+
/** Render function places the shell's responsive trigger in a custom top bar. */
|
|
1851
|
+
topBar?: ReactNode | ((navigationTrigger: ReactNode) => ReactNode);
|
|
1852
|
+
footer?: ReactNode;
|
|
1853
|
+
scroll?: "content" | "page";
|
|
1854
|
+
mainId?: string;
|
|
1855
|
+
/** Use section when embedding a shell inside an existing main landmark. */
|
|
1856
|
+
mainAs?: "main" | "section";
|
|
1857
|
+
mainLabel?: string;
|
|
1858
|
+
mainRef?: Ref<HTMLElement>;
|
|
1859
|
+
scrollLabel?: string;
|
|
1860
|
+
scrollOrientation?: ScrollAreaProps["orientation"];
|
|
1861
|
+
/** Keep the content width stable with "none" when the layout already clears the overlay rails. */
|
|
1862
|
+
scrollContentInset?: ScrollAreaProps["contentInset"];
|
|
1863
|
+
skipLabel?: string;
|
|
1864
|
+
}
|
|
1865
|
+
/** Composes application navigation and a main landmark with optional bounded scrolling. @since 0.2.11 */
|
|
1866
|
+
export declare const AppShell: import("react").ForwardRefExoticComponent<AppShellProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
1403
1867
|
export interface SplitProps extends Omit<HTMLAttributes<HTMLDivElement>, "children"> {
|
|
1404
1868
|
main: ReactNode;
|
|
1405
1869
|
aside: ReactNode;
|