@assure-one/design-system 1.35.0 → 1.37.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/README.md +52 -0
- package/codemods/README.md +155 -12
- package/codemods/lib/registry.mjs +5 -0
- package/codemods/transforms/cm-07-input-size.mjs +104 -0
- package/codemods/transforms/cm-08-search-select-to-combobox.mjs +236 -0
- package/codemods/transforms/cm-09-side-drawer-to-sheet.mjs +348 -0
- package/codemods/transforms/cm-10-date-picker-value-change.mjs +416 -0
- package/codemods/transforms/cm-13-tooltip-delay.mjs +99 -0
- package/codemods/transforms/cm-14-hidden-mirrors.mjs +2 -2
- package/dist/css/components.css +1 -1
- package/dist/css/legacy-aliases.css +25 -1
- package/dist/css/shadcn.css +2 -2
- package/dist/css/tailwind.css +9 -0
- package/dist/css/tokens.css +64 -38
- package/dist/design-system-provider-C8UlFe52.d.ts +549 -0
- package/dist/icons/index.d.ts +2 -2
- package/dist/icons/index.js +6 -2
- package/dist/icons/index.js.map +1 -1
- package/dist/{index-B3OiMlQv.d.ts → index-vztxMSfl.d.ts} +7 -4
- package/dist/index.d.ts +2259 -345
- package/dist/index.js +7229 -3057
- package/dist/index.js.map +1 -1
- package/dist/next/index.d.ts +20 -0
- package/dist/next/index.js +16 -0
- package/dist/next/index.js.map +1 -0
- package/dist/styles.css +1 -1
- package/dist/{system-lyhOUTpa.d.ts → system-CyAVbHhM.d.ts} +17 -17
- package/dist/testing/index.cjs +133 -11
- package/dist/testing/index.d.cts +98 -2
- package/dist/testing/index.d.ts +98 -2
- package/dist/testing/index.js +132 -12
- package/dist/tokens/index.d.ts +1 -1
- package/dist/tokens/index.js +8 -8
- package/dist/tokens/index.js.map +1 -1
- package/docs/components.md +606 -0
- package/docs/components.registry.json +1604 -0
- package/docs/for-ai-agents.md +153 -0
- package/package.json +15 -3
package/dist/index.d.ts
CHANGED
|
@@ -1,18 +1,20 @@
|
|
|
1
|
-
export { C as ColorName, R as ReferenceTokens, S as SystemTokens, c as colors, r as radii, a as reference, s as shadows,
|
|
1
|
+
export { C as ColorName, R as ReferenceTokens, S as SystemTokens, c as colors, r as radii, a as reference, s as shadows, b as spacing, d as surfaces, e as systemTokens, t as typography } from './system-CyAVbHhM.js';
|
|
2
2
|
import * as React$1 from 'react';
|
|
3
|
-
import { ReactNode, CSSProperties } from 'react';
|
|
3
|
+
import { ReactNode, InputHTMLAttributes, HTMLAttributes, RefCallback, ReactElement, FieldsetHTMLAttributes, CSSProperties } from 'react';
|
|
4
4
|
import * as AccordionPrimitive from '@radix-ui/react-accordion';
|
|
5
5
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
6
6
|
import * as AlertDialogPrimitive from '@radix-ui/react-alert-dialog';
|
|
7
|
+
import { V as Variant, I as Intent, C as ControlSize, S as Shape } from './index-vztxMSfl.js';
|
|
8
|
+
export { A as AlertCircleIcon, a as AlertTriangleIcon, b as AlertTriangleSolidIcon, c as ArchiveIcon, d as ArrowDownIcon, e as ArrowLeftIcon, f as ArrowRightIcon, g as ArrowRightSmallIcon, h as ArrowUpIcon, i as AtSignIcon, B as BarChartIcon, j as BellIcon, k as BoldIcon, l as BrainIcon, m as BriefcaseIcon, n as Building2Icon, o as BuildingIcon, p as CalendarIcon, q as ChatBubbleIcon, r as CheckCircle2Icon, s as CheckCircleSolidIcon, t as CheckIcon, u as ChevronDownIcon, v as ChevronLeftIcon, w as ChevronRightIcon, x as ChevronUpIcon, y as ChevronsDownUpIcon, z as ChevronsUpDownIcon, D as CircleDotIcon, E as CircleIcon, F as ClipboardCheckIcon, G as ClockIcon, H as CloseIcon, J as CommandIcon, K as CopyIcon, L as CornerDownLeftIcon, M as CreditCardIcon, N as DocumentIcon, O as DollarSignIcon, P as DownloadIcon, Q as ExternalLinkIcon, R as ExtractIcon, T as EyeIcon, U as EyeOffIcon, W as FileIcon, X as FileReturnIcon, Y as FileTextIcon, Z as FilterIcon, _ as FlagIcon, $ as FolderClosedIcon, a0 as FolderOpenIcon, a1 as FolderPlusIcon, a2 as FolderUpIcon, a3 as GlobeIcon, a4 as GoogleBrandIcon, a5 as GripVerticalIcon, a6 as HelpCircleIcon, a7 as HistoryIcon, a8 as HomeIcon, a9 as IconComponent, aa as IconDefinition, ab as IconProps, ac as IconSize, ad as InboxIcon, ae as InfoCircleSolidIcon, af as InfoIcon, ag as ItalicIcon, ah as KanbanIcon, ai as KeyIcon, aj as LandmarkIcon, ak as LayersIcon, al as LayoutDashboardIcon, am as LayoutGridIcon, an as LayoutListIcon, ao as LightningIcon, ap as Link2Icon, aq as LinkIcon, ar as ListChecksIcon, as as ListIcon, at as ListOrderedIcon, au as LoaderIcon, av as LockIcon, aw as LockKeyholeIcon, ax as LockOpenIcon, ay as LogOutIcon, az as MailIcon, aA as MapPinIcon, aB as MaximizeIcon, aC as MenuIcon, aD as MessageCircleIcon, aE as MessageCircleWarningIcon, aF as MicIcon, aG as MicrosoftBrandIcon, aH as MinimizeIcon, aI as MinusIcon, aJ as MonitorIcon, aK as MoonIcon, aL as MoreHorizontalIcon, aM as MoveIcon, aN as PaletteIcon, aO as PanelLeftCloseIcon, aP as PanelLeftIcon, aQ as PanelRightIcon, aR as PaperclipIcon, aS as PauseIcon, aT as PenSignIcon, aU as PenToolIcon, aV as PencilIcon, aW as PhoneIcon, aX as PlayIcon, aY as PlusIcon, aZ as ReceiptIcon, a_ as RefreshCwIcon, a$ as ReplyIcon, b0 as RotateCcwIcon, b1 as SaveIcon, b2 as SearchIcon, b3 as SendIcon, b4 as SettingsIcon, b5 as ShieldIcon, b6 as SigmaIcon, b7 as SlashIcon, b8 as SmartphoneIcon, b9 as SparkleIcon, ba as SparklesIcon, bb as StarIcon, bc as StopIcon, bd as StrikethroughIcon, be as SunIcon, bf as TableIcon, bg as TagIcon, bh as TeamIcon, bi as ThumbsDownIcon, bj as ThumbsUpIcon, bk as TimerIcon, bl as Trash2Icon, bm as TrashIcon, bn as TrashSolidIcon, bo as TrendingDownIcon, bp as TrendingUpIcon, bq as UnderlineIcon, br as UploadIcon, bs as UserCircleIcon, bt as UserIcon, bu as UsersIcon, bv as VideoIcon, bw as Volume2Icon, bx as VolumeXIcon, by as WorkflowIcon, bz as XCircleSolidIcon, bA as XIcon, bB as ZoomInIcon, bC as ZoomOutIcon, bD as createIcon } from './index-vztxMSfl.js';
|
|
7
9
|
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
8
10
|
import { VariantProps } from 'class-variance-authority';
|
|
9
11
|
import * as AspectRatioPrimitive from '@radix-ui/react-aspect-ratio';
|
|
10
12
|
import * as AvatarPrimitive from '@radix-ui/react-avatar';
|
|
11
|
-
import { V as Variant, I as Intent, C as ControlSize, S as Shape } from './index-B3OiMlQv.js';
|
|
12
|
-
export { A as AlertCircleIcon, a as AlertTriangleIcon, b as AlertTriangleSolidIcon, c as ArchiveIcon, d as ArrowDownIcon, e as ArrowLeftIcon, f as ArrowRightIcon, g as ArrowRightSmallIcon, h as ArrowUpIcon, i as AtSignIcon, B as BarChartIcon, j as BellIcon, k as BoldIcon, l as BrainIcon, m as BriefcaseIcon, n as Building2Icon, o as BuildingIcon, p as CalendarIcon, q as ChatBubbleIcon, r as CheckCircle2Icon, s as CheckCircleSolidIcon, t as CheckIcon, u as ChevronDownIcon, v as ChevronLeftIcon, w as ChevronRightIcon, x as ChevronUpIcon, y as ChevronsDownUpIcon, z as ChevronsUpDownIcon, D as CircleDotIcon, E as CircleIcon, F as ClipboardCheckIcon, G as ClockIcon, H as CloseIcon, J as CommandIcon, K as CopyIcon, L as CornerDownLeftIcon, M as CreditCardIcon, N as DocumentIcon, O as DollarSignIcon, P as DownloadIcon, Q as ExternalLinkIcon, R as ExtractIcon, T as EyeIcon, U as EyeOffIcon, W as FileIcon, X as FileReturnIcon, Y as FileTextIcon, Z as FilterIcon, _ as FlagIcon, $ as FolderClosedIcon, a0 as FolderOpenIcon, a1 as FolderPlusIcon, a2 as FolderUpIcon, a3 as GlobeIcon, a4 as GoogleBrandIcon, a5 as GripVerticalIcon, a6 as HelpCircleIcon, a7 as HistoryIcon, a8 as HomeIcon, a9 as IconComponent, aa as IconDefinition, ab as IconProps, ac as IconSize, ad as InboxIcon, ae as InfoCircleSolidIcon, af as InfoIcon, ag as ItalicIcon, ah as KanbanIcon, ai as KeyIcon, aj as LandmarkIcon, ak as LayersIcon, al as LayoutDashboardIcon, am as LayoutGridIcon, an as LayoutListIcon, ao as LightningIcon, ap as Link2Icon, aq as LinkIcon, ar as ListChecksIcon, as as ListIcon, at as ListOrderedIcon, au as LoaderIcon, av as LockIcon, aw as LockKeyholeIcon, ax as LockOpenIcon, ay as LogOutIcon, az as MailIcon, aA as MapPinIcon, aB as MaximizeIcon, aC as MenuIcon, aD as MessageCircleIcon, aE as MessageCircleWarningIcon, aF as MicIcon, aG as MicrosoftBrandIcon, aH as MinimizeIcon, aI as MinusIcon, aJ as MonitorIcon, aK as MoonIcon, aL as MoreHorizontalIcon, aM as MoveIcon, aN as PaletteIcon, aO as PanelLeftCloseIcon, aP as PanelLeftIcon, aQ as PanelRightIcon, aR as PaperclipIcon, aS as PauseIcon, aT as PenSignIcon, aU as PenToolIcon, aV as PencilIcon, aW as PhoneIcon, aX as PlayIcon, aY as PlusIcon, aZ as ReceiptIcon, a_ as RefreshCwIcon, a$ as ReplyIcon, b0 as RotateCcwIcon, b1 as SaveIcon, b2 as SearchIcon, b3 as SendIcon, b4 as SettingsIcon, b5 as ShieldIcon, b6 as SigmaIcon, b7 as SlashIcon, b8 as SmartphoneIcon, b9 as SparkleIcon, ba as SparklesIcon, bb as StarIcon, bc as StopIcon, bd as StrikethroughIcon, be as SunIcon, bf as TableIcon, bg as TagIcon, bh as TeamIcon, bi as ThumbsDownIcon, bj as ThumbsUpIcon, bk as TimerIcon, bl as Trash2Icon, bm as TrashIcon, bn as TrashSolidIcon, bo as TrendingDownIcon, bp as TrendingUpIcon, bq as UnderlineIcon, br as UploadIcon, bs as UserCircleIcon, bt as UserIcon, bu as UsersIcon, bv as VideoIcon, bw as Volume2Icon, bx as VolumeXIcon, by as WorkflowIcon, bz as XCircleSolidIcon, bA as XIcon, bB as ZoomInIcon, bC as ZoomOutIcon, bD as createIcon } from './index-B3OiMlQv.js';
|
|
13
13
|
import { DayPickerProps } from 'react-day-picker';
|
|
14
14
|
import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
|
|
15
15
|
import * as CollapsiblePrimitive from '@radix-ui/react-collapsible';
|
|
16
|
+
import { C as CommandPaletteMessages, a as ConfirmMessages, b as CopyButtonMessages, F as FileUploadMessages, K as KeyboardShortcutsMessages, P as PaginationMessages, c as PhoneFieldMessages, S as SearchInputMessages, d as SelectMessages, T as ToastMessages, e as FieldMessages, f as ComboboxMessages } from './design-system-provider-C8UlFe52.js';
|
|
17
|
+
export { g as DesignSystemProvider, D as DesignSystemProviderProps, h as DsDirection, i as DsMessageNamespace, j as DsMessages, k as DsMessagesOverride, I as ImageComponent, l as ImageComponentProps, L as LinkComponent, m as LinkComponentProps, n as TooltipDefaults, u as useDsMessages } from './design-system-provider-C8UlFe52.js';
|
|
16
18
|
import * as ContextMenuPrimitive from '@radix-ui/react-context-menu';
|
|
17
19
|
import * as DialogPrimitive from '@radix-ui/react-dialog';
|
|
18
20
|
import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
|
|
@@ -31,6 +33,7 @@ import * as ToggleGroupPrimitive from '@radix-ui/react-toggle-group';
|
|
|
31
33
|
import * as TooltipPrimitive from '@radix-ui/react-tooltip';
|
|
32
34
|
import * as VisuallyHiddenPrimitive from '@radix-ui/react-visually-hidden';
|
|
33
35
|
import { ClassValue } from 'clsx';
|
|
36
|
+
import { BrandTheme } from './tokens/index.js';
|
|
34
37
|
|
|
35
38
|
type AccordionProps = React$1.ComponentPropsWithoutRef<typeof AccordionPrimitive.Root>;
|
|
36
39
|
declare const Accordion: React$1.ForwardRefExoticComponent<AccordionProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
@@ -91,19 +94,20 @@ type BadgeSlot = "root" | "dot" | "icon";
|
|
|
91
94
|
* `className` lands on (`C-INPUT-CLASSNAME`). The wrappers around it are
|
|
92
95
|
* private (target architecture §29.2).
|
|
93
96
|
* States on the root: `data-variant`, `data-size`, `data-disabled`,
|
|
94
|
-
* `data-invalid`.
|
|
97
|
+
* `data-invalid`. `description` is the `description` sugar's hint text (W4-05).
|
|
95
98
|
*
|
|
96
99
|
* @experimental Slot names are experimental until ADR-008 is accepted (W2-18).
|
|
97
100
|
*/
|
|
98
|
-
type InputSlot = "root" | "label" | "icon-start" | "icon-end" | "password-toggle" | "error";
|
|
101
|
+
type InputSlot = "root" | "label" | "icon-start" | "icon-end" | "password-toggle" | "description" | "error";
|
|
99
102
|
/**
|
|
100
103
|
* `Textarea` parts, stamped as `data-slot="textarea[-<part>]"` (ADR-008).
|
|
101
104
|
* `root` is the `<textarea>`. States on the root: `data-variant`, `data-size`,
|
|
102
|
-
* `data-disabled`, `data-invalid`.
|
|
105
|
+
* `data-disabled`, `data-invalid`. `description` is the `description` sugar's
|
|
106
|
+
* hint text (W4-06).
|
|
103
107
|
*
|
|
104
108
|
* @experimental Slot names are experimental until ADR-008 is accepted (W2-18).
|
|
105
109
|
*/
|
|
106
|
-
type TextareaSlot = "root" | "label" | "error" | "count";
|
|
110
|
+
type TextareaSlot = "root" | "label" | "description" | "error" | "count";
|
|
107
111
|
/**
|
|
108
112
|
* `SearchInput` parts, stamped as `data-slot="search-input[-<part>]"`
|
|
109
113
|
* (ADR-008). `root` is the positioning wrapper `className` lands on;
|
|
@@ -114,18 +118,23 @@ type TextareaSlot = "root" | "label" | "error" | "count";
|
|
|
114
118
|
*/
|
|
115
119
|
type SearchInputSlot = "root" | "control" | "icon" | "clear";
|
|
116
120
|
/**
|
|
117
|
-
* `Select` parts, stamped as `data-slot="select-<part>"` (ADR-008).
|
|
118
|
-
*
|
|
119
|
-
* `
|
|
120
|
-
*
|
|
121
|
+
* `Select` parts, stamped as `data-slot="select-<part>"` (ADR-008).
|
|
122
|
+
* `SelectRoot` renders no element: `root` is the wrapper the options-driven
|
|
123
|
+
* `Select clearable` renders around the trigger and the `clear` button (W4-08),
|
|
124
|
+
* and exists only then. Radix's own `data-state`, `data-disabled`,
|
|
125
|
+
* `data-placeholder` and `data-highlighted` are left as they are
|
|
126
|
+
* (`P-DATA-STATE`); the trigger adds `data-size` when a `size` is set.
|
|
121
127
|
*
|
|
122
128
|
* `SelectValue` and `SelectGroup` are re-exported Radix components with no
|
|
123
|
-
* wrapper of ours, so they carry no slot
|
|
124
|
-
* `classNames.value`
|
|
129
|
+
* wrapper of ours, so they carry no slot of their own. `value` is the span
|
|
130
|
+
* the options-driven `Select` wraps Radix's value in when `classNames.value`
|
|
131
|
+
* or `clearable` asks for it (Radix's own span drops `className`); a legacy
|
|
132
|
+
* call renders no wrapper, so the `SelectTrigger > span` structure PRO selects
|
|
133
|
+
* on stays as frozen by `C-DOM-10`.
|
|
125
134
|
*
|
|
126
135
|
* @experimental Slot names are experimental until ADR-008 is accepted (W2-18).
|
|
127
136
|
*/
|
|
128
|
-
type SelectSlot = "trigger" | "icon" | "content" | "viewport" | "item" | "item-indicator" | "label" | "separator" | "scroll-up-button" | "scroll-down-button";
|
|
137
|
+
type SelectSlot = "root" | "trigger" | "value" | "icon" | "clear" | "content" | "viewport" | "item" | "item-indicator" | "label" | "separator" | "scroll-up-button" | "scroll-down-button";
|
|
129
138
|
/**
|
|
130
139
|
* `Checkbox` parts, stamped as `data-slot="checkbox[-<part>]"` (ADR-008).
|
|
131
140
|
* `root` is the Radix root — the box, and the element `className` lands on.
|
|
@@ -139,11 +148,14 @@ type CheckboxSlot = "root" | "indicator" | "label";
|
|
|
139
148
|
/**
|
|
140
149
|
* `RadioGroup` / `RadioGroupItem` parts, stamped as
|
|
141
150
|
* `data-slot="radio-group[-<part>]"` (ADR-008). `root` is the group,
|
|
142
|
-
* `item` the radio. Radix's `data-state` is left as it is.
|
|
151
|
+
* `item` the radio. Radix's `data-state` is left as it is. With
|
|
152
|
+
* `appearance="card"` (W4-14) the root carries `data-appearance="card"` and
|
|
153
|
+
* every item is wrapped in a `card` holding the `label` (stretched over the
|
|
154
|
+
* card, so the whole box is the click target) and an optional `description`.
|
|
143
155
|
*
|
|
144
156
|
* @experimental Slot names are experimental until ADR-008 is accepted (W2-18).
|
|
145
157
|
*/
|
|
146
|
-
type RadioGroupSlot = "root" | "item" | "indicator" | "label";
|
|
158
|
+
type RadioGroupSlot = "root" | "item" | "indicator" | "label" | "card" | "description";
|
|
147
159
|
/**
|
|
148
160
|
* `Switch` parts, stamped as `data-slot="switch[-<part>]"` (ADR-008).
|
|
149
161
|
* `root` is the Radix root — the track, and the element `className` lands on;
|
|
@@ -159,6 +171,28 @@ type SwitchSlot = "root" | "thumb" | "label";
|
|
|
159
171
|
* @experimental Slot names are experimental until ADR-008 is accepted (W2-18).
|
|
160
172
|
*/
|
|
161
173
|
type LabelSlot = "root" | "required";
|
|
174
|
+
/**
|
|
175
|
+
* `NumberInput` parts, stamped as `data-slot="number-input"` (ADR-008).
|
|
176
|
+
* `root` is the `<input>` itself — the control frame and the element
|
|
177
|
+
* `className` lands on, like `Input`. The hidden inputs `FormBridge` renders
|
|
178
|
+
* next to it are not parts. States on the root: `data-variant`, `data-size`,
|
|
179
|
+
* `data-disabled`, `data-invalid`.
|
|
180
|
+
*
|
|
181
|
+
* @experimental Slot names are experimental until ADR-008 is accepted (W4-21).
|
|
182
|
+
*/
|
|
183
|
+
type NumberInputSlot = "root";
|
|
184
|
+
/**
|
|
185
|
+
* `PhoneField` parts, stamped as `data-slot="phone-field[-<part>]"` (ADR-008).
|
|
186
|
+
* `root` is the row (the element `className` lands on), `number` the `tel`
|
|
187
|
+
* `<input>` on the control chrome, `flag` a `CountryFlag` (the SVG, or its
|
|
188
|
+
* placeholder while the flag set loads). `country` is the country picker: a
|
|
189
|
+
* `Combobox`, stamped with its own anatomy and styled through
|
|
190
|
+
* `classNames.country`. States on the root: `data-variant`, `data-size`,
|
|
191
|
+
* `data-disabled`, `data-invalid`.
|
|
192
|
+
*
|
|
193
|
+
* @experimental Slot names are experimental until ADR-008 is accepted (W4-22).
|
|
194
|
+
*/
|
|
195
|
+
type PhoneFieldSlot = "root" | "country" | "number" | "flag";
|
|
162
196
|
/**
|
|
163
197
|
* `FileUpload` parts, stamped as `data-slot="file-upload[-<part>]"` (ADR-008).
|
|
164
198
|
* `dropzone` is the `<label>` that `C-DOM-04` freezes and that
|
|
@@ -169,16 +203,28 @@ type LabelSlot = "root" | "required";
|
|
|
169
203
|
* @experimental Slot names are experimental until ADR-008 is accepted (W2-18).
|
|
170
204
|
*/
|
|
171
205
|
type FileUploadSlot = "root" | "dropzone" | "input" | "error";
|
|
206
|
+
/**
|
|
207
|
+
* `Command` / `CommandPalette` parts, stamped as `data-slot="command-<part>"`
|
|
208
|
+
* (ADR-008, W5-19). `overlay`, `content`, `title` and `description` are the
|
|
209
|
+
* spotlight modal (`CommandDialog`); `root`, `input`, `list`, `empty`,
|
|
210
|
+
* `group` and `item` are the command-list parts; `footer` is the
|
|
211
|
+
* keyboard-hint strip `CommandPalette` renders below the list.
|
|
212
|
+
*
|
|
213
|
+
* @experimental Slot names are experimental until ADR-008 is accepted (W2-18).
|
|
214
|
+
*/
|
|
215
|
+
type CommandSlot = "overlay" | "content" | "title" | "description" | "root" | "input" | "list" | "empty" | "group" | "item" | "footer";
|
|
172
216
|
/**
|
|
173
217
|
* `Dialog` parts, stamped as `data-slot="dialog-<part>"` (ADR-008). There is
|
|
174
218
|
* no `root`: `Dialog` is Radix's non-rendering root. `close` is stamped on
|
|
175
219
|
* both the built-in close button and `DialogClose`; they are the same part —
|
|
176
|
-
* a control that dismisses the dialog.
|
|
177
|
-
*
|
|
220
|
+
* a control that dismisses the dialog. `body` is the scroll region between
|
|
221
|
+
* header and footer (W5-05). States: `data-size` on the content, and
|
|
222
|
+
* `data-variant="responsive"` when it presents as a bottom sheet below `sm`
|
|
223
|
+
* (W5-09). Radix's `data-state` is left as it is (`P-DATA-STATE`).
|
|
178
224
|
*
|
|
179
225
|
* @experimental Slot names are experimental until ADR-008 is accepted (W2-18).
|
|
180
226
|
*/
|
|
181
|
-
type DialogSlot = "overlay" | "content" | "header" | "title" | "description" | "footer" | "close";
|
|
227
|
+
type DialogSlot = "overlay" | "content" | "header" | "title" | "description" | "body" | "footer" | "close";
|
|
182
228
|
/**
|
|
183
229
|
* `AlertDialog` parts, stamped as `data-slot="alert-dialog-<part>"`
|
|
184
230
|
* (ADR-008). No `root` — Radix's root renders no element.
|
|
@@ -188,13 +234,14 @@ type DialogSlot = "overlay" | "content" | "header" | "title" | "description" | "
|
|
|
188
234
|
type AlertDialogSlot = "overlay" | "content" | "header" | "title" | "description" | "footer" | "action" | "cancel";
|
|
189
235
|
/**
|
|
190
236
|
* `Sheet` parts, stamped as `data-slot="sheet-<part>"` (ADR-008).
|
|
191
|
-
*
|
|
192
|
-
*
|
|
193
|
-
*
|
|
237
|
+
* `body` is the scroll region between header and footer (W5-07). States:
|
|
238
|
+
* `data-size` on the content, carrying the `size` step (or the deprecated
|
|
239
|
+
* `width` preset, C-SHEET-WIDTH; `default` when neither is given). The
|
|
240
|
+
* `side` is not in the §29.2 vocabulary and stays a class.
|
|
194
241
|
*
|
|
195
242
|
* @experimental Slot names are experimental until ADR-008 is accepted (W2-18).
|
|
196
243
|
*/
|
|
197
|
-
type SheetSlot = "overlay" | "content" | "header" | "title" | "description" | "footer" | "close";
|
|
244
|
+
type SheetSlot = "overlay" | "content" | "header" | "title" | "description" | "body" | "footer" | "close";
|
|
198
245
|
/**
|
|
199
246
|
* `SideDrawer` parts, stamped as `data-slot="side-drawer[-<part>]"`
|
|
200
247
|
* (ADR-008). `root` is the panel. The screen-reader-only Radix title that the
|
|
@@ -415,6 +462,229 @@ type IconButtonSlot = "root" | "icon" | "spinner";
|
|
|
415
462
|
* @experimental Slot names are experimental until ADR-008 is accepted (W3-15).
|
|
416
463
|
*/
|
|
417
464
|
type ChipSlot = "root" | "icon" | "label" | "count" | "remove";
|
|
465
|
+
/**
|
|
466
|
+
* `Field` parts, stamped as `data-slot="field[-<part>]"` (ADR-008, W4-01):
|
|
467
|
+
* the root (the layout wrapper, no chrome), the `label` (a `Label` rendered
|
|
468
|
+
* inside a field stamps this over its own `label`, the way `Card` stamps
|
|
469
|
+
* `card` over `surface`), its `required` asterisk and `optional` indicator,
|
|
470
|
+
* the `description` and the `error`. The control is not a part: it keeps its
|
|
471
|
+
* own anatomy (`input`, `select-trigger`, …) and is found by the field's id.
|
|
472
|
+
* States on the root: `data-orientation`, `data-invalid`, `data-disabled`,
|
|
473
|
+
* `data-required`.
|
|
474
|
+
*
|
|
475
|
+
* @experimental Slot names are experimental until ADR-008 is accepted (W4-01).
|
|
476
|
+
*/
|
|
477
|
+
type FieldSlot = "root" | "label" | "required" | "optional" | "description" | "error";
|
|
478
|
+
/**
|
|
479
|
+
* `Fieldset` parts, stamped as `data-slot="fieldset[-<part>]"` (ADR-008,
|
|
480
|
+
* W4-01): the `<fieldset>` root and its `<legend>`. States on the root:
|
|
481
|
+
* `data-disabled`, `data-invalid`.
|
|
482
|
+
*
|
|
483
|
+
* @experimental Slot names are experimental until ADR-008 is accepted (W4-01).
|
|
484
|
+
*/
|
|
485
|
+
type FieldsetSlot = "root" | "legend";
|
|
486
|
+
/**
|
|
487
|
+
* `Combobox` parts, stamped as `data-slot="combobox[-<part>]"` (ADR-008,
|
|
488
|
+
* W4-10): the `root` (the frame that holds the control and its form bridge),
|
|
489
|
+
* the `control` (the field-shaped box the popover anchors to), the `value`
|
|
490
|
+
* (a custom `renderValue` node over the input), the `chips` row and its
|
|
491
|
+
* `Chip`s in `multiple` mode, the `input` (the `role="combobox"` element that
|
|
492
|
+
* keeps focus), the leading `icon`, the `clear` and `toggle` buttons; then
|
|
493
|
+
* the portalled `content` with an optional `header`, the `list`
|
|
494
|
+
* (`role="listbox"`), a `group` with its `group-heading`, each `item`
|
|
495
|
+
* (`role="option"`, see `behavior/collection/item-attributes.ts`) and its
|
|
496
|
+
* `item-indicator`, the `create` row, the `empty` and `loading` states and an
|
|
497
|
+
* optional `footer`. States on the root: `data-state` (`open` · `closed`),
|
|
498
|
+
* `data-disabled`, `data-invalid`, `data-size`.
|
|
499
|
+
*
|
|
500
|
+
* @experimental Slot names are experimental until ADR-008 is accepted (W4-10).
|
|
501
|
+
*/
|
|
502
|
+
type ComboboxSlot = "root" | "control" | "value" | "chips" | "input" | "icon" | "clear" | "toggle" | "content" | "header" | "list" | "group" | "group-heading" | "item" | "item-indicator" | "create" | "empty" | "loading" | "footer";
|
|
503
|
+
|
|
504
|
+
/**
|
|
505
|
+
* L1a behaviour primitive (private). Not exported from the package.
|
|
506
|
+
*
|
|
507
|
+
* `buttonBase` — the one class recipe every button-shaped control renders
|
|
508
|
+
* (W3-03; target architecture §4 L1a, §30), and the `variant` + `intent`
|
|
509
|
+
* resolver in front of it (W3-02; ADR-007). `Button`, `LinkButton` and
|
|
510
|
+
* `SubmitButton` read both through the public `buttonVariants`;
|
|
511
|
+
* `IconButton` (W3-09) and `Chip` (W3-15) read them next, so the geometry,
|
|
512
|
+
* the focus ring, the disabled treatment, the press feedback and the colour
|
|
513
|
+
* table of an action are written once.
|
|
514
|
+
*
|
|
515
|
+
* Two axes, one table: `variant` says how loudly (`solid · soft · outline ·
|
|
516
|
+
* ghost · link`), `intent` says what it means (`brand · neutral · success ·
|
|
517
|
+
* danger`), and every pair has one row in {@link BUTTON_LOOKS}. The legacy
|
|
518
|
+
* single-axis words (`primary`, `secondary`, `destructive`, `success`,
|
|
519
|
+
* `accent`, `dashed`) resolve to a pair through {@link LEGACY_BUTTON_VARIANTS}
|
|
520
|
+
* and produce the class string they always did:
|
|
521
|
+
* `src/primitives/__tests__/button-legacy-classes.test.tsx` pins every legacy
|
|
522
|
+
* `variant` × `size` to the output recorded from `main` before W3-02.
|
|
523
|
+
*
|
|
524
|
+
* No React, no client directive: plain functions of props to a string, so a
|
|
525
|
+
* Server Component can call them once the root entry is server-safe (S3).
|
|
526
|
+
*/
|
|
527
|
+
/**
|
|
528
|
+
* The emphases a Button offers: all five of the shared vocabulary.
|
|
529
|
+
*
|
|
530
|
+
* @experimental
|
|
531
|
+
*/
|
|
532
|
+
type ButtonEmphasis = Variant;
|
|
533
|
+
/**
|
|
534
|
+
* The intents a Button offers (ADR-007 §1; `info` and `warning` are not actions).
|
|
535
|
+
*
|
|
536
|
+
* @experimental
|
|
537
|
+
*/
|
|
538
|
+
type ButtonIntent = Extract<Intent, "brand" | "neutral" | "success" | "danger">;
|
|
539
|
+
/**
|
|
540
|
+
* `destructive` is accepted where an intent is expected, as an alias of
|
|
541
|
+
* `danger`, until decision D4 settles the canonical word (ADR-007 §5).
|
|
542
|
+
*
|
|
543
|
+
* @deprecated Use `intent="danger"`.
|
|
544
|
+
* @experimental
|
|
545
|
+
*/
|
|
546
|
+
type ButtonIntentAlias = "destructive";
|
|
547
|
+
/**
|
|
548
|
+
* The single-axis words Button accepted before W3-02, each a fixed
|
|
549
|
+
* `{ variant, intent }` pair (ADR-007 §4, target architecture §28):
|
|
550
|
+
*
|
|
551
|
+
* - `primary` → `solid` + `brand` (the default; nothing to migrate)
|
|
552
|
+
* - `secondary` → `soft` + `neutral`
|
|
553
|
+
* - `destructive` → `solid` + `danger`
|
|
554
|
+
* - `success` → `solid` + `success`
|
|
555
|
+
* - `accent` → `solid` + `brand` in the suite-action colour; folds into
|
|
556
|
+
* `intent="brand"` and is dropped in 2.0 (decision D13)
|
|
557
|
+
* - `dashed` → `outline` + `neutral` with a dashed 2px border; kept for the
|
|
558
|
+
* 2.x line
|
|
559
|
+
*
|
|
560
|
+
* `ghost`, `outline` and `link` are not legacy: they already are emphases.
|
|
561
|
+
*
|
|
562
|
+
* @deprecated Pass `variant` (emphasis) and `intent` (meaning) instead. The
|
|
563
|
+
* codemod CM-04 rewrites call sites mechanically.
|
|
564
|
+
* @experimental
|
|
565
|
+
*/
|
|
566
|
+
type ButtonLegacyVariant = "primary" | "secondary" | "destructive" | "success" | "accent" | "dashed";
|
|
567
|
+
/** What `variant` accepts on the Button family: the vocabulary plus the deprecated aliases. */
|
|
568
|
+
type ButtonVariant = ButtonEmphasis | ButtonLegacyVariant;
|
|
569
|
+
/**
|
|
570
|
+
* A row of the colour table: a `variant`/`intent` pair or one of the two
|
|
571
|
+
* legacy-only looks. The separator is `/`, not `-`: the keys of the table are
|
|
572
|
+
* text Tailwind scans, and an `outline` emphasis joined to an intent with a
|
|
573
|
+
* hyphen would compile to an outline-colour utility nobody asked for.
|
|
574
|
+
*
|
|
575
|
+
* @experimental
|
|
576
|
+
*/
|
|
577
|
+
type ButtonLook = `${ButtonEmphasis}/${ButtonIntent}` | "accent" | "dashed";
|
|
578
|
+
/**
|
|
579
|
+
* The resolved appearance of a Button.
|
|
580
|
+
*
|
|
581
|
+
* @experimental
|
|
582
|
+
*/
|
|
583
|
+
interface ButtonStyle {
|
|
584
|
+
variant: ButtonEmphasis;
|
|
585
|
+
intent: ButtonIntent;
|
|
586
|
+
/** The row of the colour table the pair renders. */
|
|
587
|
+
look: ButtonLook;
|
|
588
|
+
}
|
|
589
|
+
/**
|
|
590
|
+
* Resolve what a Button renders from the two-axis props, accepting every
|
|
591
|
+
* legacy word (W3-02, ADR-007 §4).
|
|
592
|
+
*
|
|
593
|
+
* - No `variant`: `solid` + `brand` (what `primary` always rendered).
|
|
594
|
+
* - A legacy `variant` alone: its fixed pair; `accent` and `dashed` keep
|
|
595
|
+
* their own look.
|
|
596
|
+
* - A legacy `variant` with an explicit `intent`: the alias contributes its
|
|
597
|
+
* emphasis, the intent is the caller's (`variant="primary" intent="danger"`
|
|
598
|
+
* is a solid danger button). `accent`'s and `dashed`'s own looks apply only
|
|
599
|
+
* without a competing intent.
|
|
600
|
+
* - `intent="destructive"` is `danger` (deprecated alias, D4).
|
|
601
|
+
*
|
|
602
|
+
* @experimental
|
|
603
|
+
*/
|
|
604
|
+
declare function resolveButtonStyle({ variant, intent, }: {
|
|
605
|
+
variant?: ButtonVariant | null;
|
|
606
|
+
intent?: ButtonIntent | ButtonIntentAlias | null;
|
|
607
|
+
}): ButtonStyle;
|
|
608
|
+
/**
|
|
609
|
+
* The size names the recipe knows (W3-05, ADR-013): the shared control scale
|
|
610
|
+
* `xs · sm · md · lg · xl` (`ControlSize`), the 1.31 aliases
|
|
611
|
+
* `compact` / `default` / `comfortable` of `sm` / `md` / `lg`, and the square
|
|
612
|
+
* icon-only steps `icon-xs` / `icon-sm` / `icon` (C-BTN-SIZE-ICON).
|
|
613
|
+
*
|
|
614
|
+
* `xs` and `xl` are new in W3-05 and read the shared scale
|
|
615
|
+
* (`--control-*-{xs,xl}`: 28px and 48px tall), so they follow the density
|
|
616
|
+
* scope. `md` (40px) and `lg` (48px) are the two A1 mismatches recorded in
|
|
617
|
+
* `baselines/size-geometry.json`: they keep today's pixels through the
|
|
618
|
+
* D5-gated compat tokens `--button-height-md` / `--button-height-lg` and
|
|
619
|
+
* their padding, gap and label size stay on Tailwind's scale — nothing about
|
|
620
|
+
* them moves until decision D5 (W2-05, CM-03). `sm` (32px) already agrees
|
|
621
|
+
* with the scale's `sm` step, so it reads the shared row like `xs`/`xl`.
|
|
622
|
+
*/
|
|
623
|
+
type ButtonSize = ControlSize | ButtonSizeAlias | ButtonIconSize;
|
|
624
|
+
/**
|
|
625
|
+
* The 1.31 aliases of `sm` / `md` / `lg` (C-BTN-SIZE-ALIAS). No known consumer
|
|
626
|
+
* uses them; they leave in 2.0.
|
|
627
|
+
*
|
|
628
|
+
* @deprecated Use `size="sm"`, `"md"` or `"lg"`.
|
|
629
|
+
* @experimental
|
|
630
|
+
*/
|
|
631
|
+
type ButtonSizeAlias = "compact" | "default" | "comfortable";
|
|
632
|
+
/**
|
|
633
|
+
* The icon-only squares (C-BTN-SIZE-ICON): 24 / 28 / 40px. `IconButton`
|
|
634
|
+
* (W3-09) owns icon-only geometry; the codemod CM-03 rewrites the call sites.
|
|
635
|
+
* Removed in 3.0.
|
|
636
|
+
*
|
|
637
|
+
* @deprecated Use `IconButton`.
|
|
638
|
+
* @experimental
|
|
639
|
+
*/
|
|
640
|
+
type ButtonIconSize = "icon-xs" | "icon-sm" | "icon";
|
|
641
|
+
/**
|
|
642
|
+
* What {@link buttonVariants} takes: the two axes, the size and cva's class
|
|
643
|
+
* pass-through.
|
|
644
|
+
*
|
|
645
|
+
* @experimental
|
|
646
|
+
*/
|
|
647
|
+
interface ButtonVariantsProps {
|
|
648
|
+
variant?: ButtonVariant | null;
|
|
649
|
+
intent?: ButtonIntent | ButtonIntentAlias | null;
|
|
650
|
+
size?: ButtonSize | null;
|
|
651
|
+
class?: string | null;
|
|
652
|
+
className?: string | null;
|
|
653
|
+
}
|
|
654
|
+
/**
|
|
655
|
+
* The public recipe of the Button family: resolves `variant` + `intent`
|
|
656
|
+
* (legacy words included) and renders the row with the size. Same name and
|
|
657
|
+
* output as before W3-02 for every call that existed; `intent` is the one
|
|
658
|
+
* addition. Server-safe.
|
|
659
|
+
*/
|
|
660
|
+
declare function buttonVariants({ variant, intent, size, class: classProp, className, }?: ButtonVariantsProps): string;
|
|
661
|
+
/**
|
|
662
|
+
* The icon slots of the Button family (W3-07). `iconStart` / `iconEnd` are
|
|
663
|
+
* logical — start is the left in LTR and the right in RTL, because the button
|
|
664
|
+
* is a flex row and the slot follows the writing direction. `iconLeft` /
|
|
665
|
+
* `iconRight` are the names consumers use today (140 call sites) and stay as
|
|
666
|
+
* aliases of the same slots.
|
|
667
|
+
*
|
|
668
|
+
* @experimental
|
|
669
|
+
*/
|
|
670
|
+
interface ButtonIconProps {
|
|
671
|
+
/** Icon before the label (logical start). */
|
|
672
|
+
iconStart?: ReactNode;
|
|
673
|
+
/** Icon after the label (logical end). */
|
|
674
|
+
iconEnd?: ReactNode;
|
|
675
|
+
/**
|
|
676
|
+
* Alias of `iconStart`. The codemod CM-05 renames it.
|
|
677
|
+
*
|
|
678
|
+
* @deprecated Use `iconStart`.
|
|
679
|
+
*/
|
|
680
|
+
iconLeft?: ReactNode;
|
|
681
|
+
/**
|
|
682
|
+
* Alias of `iconEnd`. The codemod CM-05 renames it.
|
|
683
|
+
*
|
|
684
|
+
* @deprecated Use `iconEnd`.
|
|
685
|
+
*/
|
|
686
|
+
iconRight?: ReactNode;
|
|
687
|
+
}
|
|
418
688
|
|
|
419
689
|
declare const AlertDialog: React$1.FC<AlertDialogPrimitive.AlertDialogProps>;
|
|
420
690
|
declare const AlertDialogTrigger: React$1.ForwardRefExoticComponent<AlertDialogPrimitive.AlertDialogTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
@@ -422,16 +692,33 @@ declare const AlertDialogPortal: React$1.FC<AlertDialogPrimitive.AlertDialogPort
|
|
|
422
692
|
declare const AlertDialogOverlay: React$1.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogOverlayProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
423
693
|
declare const AlertDialogContent: React$1.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
424
694
|
declare const AlertDialogHeader: {
|
|
425
|
-
(
|
|
695
|
+
(props: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime.JSX.Element;
|
|
426
696
|
displayName: string;
|
|
427
697
|
};
|
|
428
698
|
declare const AlertDialogFooter: {
|
|
429
|
-
(
|
|
699
|
+
(props: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime.JSX.Element;
|
|
430
700
|
displayName: string;
|
|
431
701
|
};
|
|
432
702
|
declare const AlertDialogTitle: React$1.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogTitleProps & React$1.RefAttributes<HTMLHeadingElement>, "ref"> & React$1.RefAttributes<HTMLHeadingElement>>;
|
|
433
703
|
declare const AlertDialogDescription: React$1.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogDescriptionProps & React$1.RefAttributes<HTMLParagraphElement>, "ref"> & React$1.RefAttributes<HTMLParagraphElement>>;
|
|
434
|
-
|
|
704
|
+
/**
|
|
705
|
+
* Props of `AlertDialogAction` (W5-06): Radix's action props plus the two
|
|
706
|
+
* Button axes.
|
|
707
|
+
*
|
|
708
|
+
* @experimental
|
|
709
|
+
*/
|
|
710
|
+
interface AlertDialogActionProps extends React$1.ComponentPropsWithoutRef<typeof AlertDialogPrimitive.Action> {
|
|
711
|
+
/**
|
|
712
|
+
* Emphasis, as on `Button` (ADR-007): `solid · soft · outline · ghost ·
|
|
713
|
+
* link`, or a legacy word. Without `variant` and `intent` the action keeps
|
|
714
|
+
* its 1.x destructive look; naming either resolves through the Button
|
|
715
|
+
* recipe, so `intent="brand"` is a non-destructive confirm.
|
|
716
|
+
*/
|
|
717
|
+
variant?: ButtonVariant;
|
|
718
|
+
/** Meaning, as on `Button`: `brand · neutral · success · danger`. */
|
|
719
|
+
intent?: ButtonIntent | ButtonIntentAlias;
|
|
720
|
+
}
|
|
721
|
+
declare const AlertDialogAction: React$1.ForwardRefExoticComponent<AlertDialogActionProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
435
722
|
declare const AlertDialogCancel: React$1.ForwardRefExoticComponent<Omit<AlertDialogPrimitive.AlertDialogCancelProps & React$1.RefAttributes<HTMLButtonElement>, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
|
|
436
723
|
|
|
437
724
|
/**
|
|
@@ -685,191 +972,6 @@ declare const BreadcrumbPage: React$1.ForwardRefExoticComponent<BreadcrumbPagePr
|
|
|
685
972
|
type BreadcrumbSeparatorProps = React.HTMLAttributes<HTMLSpanElement>;
|
|
686
973
|
declare const BreadcrumbSeparator: React$1.ForwardRefExoticComponent<BreadcrumbSeparatorProps & React$1.RefAttributes<HTMLSpanElement>>;
|
|
687
974
|
|
|
688
|
-
/**
|
|
689
|
-
* L1a behaviour primitive (private). Not exported from the package.
|
|
690
|
-
*
|
|
691
|
-
* `buttonBase` — the one class recipe every button-shaped control renders
|
|
692
|
-
* (W3-03; target architecture §4 L1a, §30), and the `variant` + `intent`
|
|
693
|
-
* resolver in front of it (W3-02; ADR-007). `Button`, `LinkButton` and
|
|
694
|
-
* `SubmitButton` read both through the public `buttonVariants`;
|
|
695
|
-
* `IconButton` (W3-09) and `Chip` (W3-15) read them next, so the geometry,
|
|
696
|
-
* the focus ring, the disabled treatment, the press feedback and the colour
|
|
697
|
-
* table of an action are written once.
|
|
698
|
-
*
|
|
699
|
-
* Two axes, one table: `variant` says how loudly (`solid · soft · outline ·
|
|
700
|
-
* ghost · link`), `intent` says what it means (`brand · neutral · success ·
|
|
701
|
-
* danger`), and every pair has one row in {@link BUTTON_LOOKS}. The legacy
|
|
702
|
-
* single-axis words (`primary`, `secondary`, `destructive`, `success`,
|
|
703
|
-
* `accent`, `dashed`) resolve to a pair through {@link LEGACY_BUTTON_VARIANTS}
|
|
704
|
-
* and produce the class string they always did:
|
|
705
|
-
* `src/primitives/__tests__/button-legacy-classes.test.tsx` pins every legacy
|
|
706
|
-
* `variant` × `size` to the output recorded from `main` before W3-02.
|
|
707
|
-
*
|
|
708
|
-
* No React, no client directive: plain functions of props to a string, so a
|
|
709
|
-
* Server Component can call them once the root entry is server-safe (S3).
|
|
710
|
-
*/
|
|
711
|
-
/**
|
|
712
|
-
* The emphases a Button offers: all five of the shared vocabulary.
|
|
713
|
-
*
|
|
714
|
-
* @experimental
|
|
715
|
-
*/
|
|
716
|
-
type ButtonEmphasis = Variant;
|
|
717
|
-
/**
|
|
718
|
-
* The intents a Button offers (ADR-007 §1; `info` and `warning` are not actions).
|
|
719
|
-
*
|
|
720
|
-
* @experimental
|
|
721
|
-
*/
|
|
722
|
-
type ButtonIntent = Extract<Intent, "brand" | "neutral" | "success" | "danger">;
|
|
723
|
-
/**
|
|
724
|
-
* `destructive` is accepted where an intent is expected, as an alias of
|
|
725
|
-
* `danger`, until decision D4 settles the canonical word (ADR-007 §5).
|
|
726
|
-
*
|
|
727
|
-
* @deprecated Use `intent="danger"`.
|
|
728
|
-
* @experimental
|
|
729
|
-
*/
|
|
730
|
-
type ButtonIntentAlias = "destructive";
|
|
731
|
-
/**
|
|
732
|
-
* The single-axis words Button accepted before W3-02, each a fixed
|
|
733
|
-
* `{ variant, intent }` pair (ADR-007 §4, target architecture §28):
|
|
734
|
-
*
|
|
735
|
-
* - `primary` → `solid` + `brand` (the default; nothing to migrate)
|
|
736
|
-
* - `secondary` → `soft` + `neutral`
|
|
737
|
-
* - `destructive` → `solid` + `danger`
|
|
738
|
-
* - `success` → `solid` + `success`
|
|
739
|
-
* - `accent` → `solid` + `brand` in the suite-action colour; folds into
|
|
740
|
-
* `intent="brand"` and is dropped in 2.0 (decision D13)
|
|
741
|
-
* - `dashed` → `outline` + `neutral` with a dashed 2px border; kept for the
|
|
742
|
-
* 2.x line
|
|
743
|
-
*
|
|
744
|
-
* `ghost`, `outline` and `link` are not legacy: they already are emphases.
|
|
745
|
-
*
|
|
746
|
-
* @deprecated Pass `variant` (emphasis) and `intent` (meaning) instead. The
|
|
747
|
-
* codemod CM-04 rewrites call sites mechanically.
|
|
748
|
-
* @experimental
|
|
749
|
-
*/
|
|
750
|
-
type ButtonLegacyVariant = "primary" | "secondary" | "destructive" | "success" | "accent" | "dashed";
|
|
751
|
-
/** What `variant` accepts on the Button family: the vocabulary plus the deprecated aliases. */
|
|
752
|
-
type ButtonVariant = ButtonEmphasis | ButtonLegacyVariant;
|
|
753
|
-
/**
|
|
754
|
-
* A row of the colour table: a `variant`/`intent` pair or one of the two
|
|
755
|
-
* legacy-only looks. The separator is `/`, not `-`: the keys of the table are
|
|
756
|
-
* text Tailwind scans, and an `outline` emphasis joined to an intent with a
|
|
757
|
-
* hyphen would compile to an outline-colour utility nobody asked for.
|
|
758
|
-
*
|
|
759
|
-
* @experimental
|
|
760
|
-
*/
|
|
761
|
-
type ButtonLook = `${ButtonEmphasis}/${ButtonIntent}` | "accent" | "dashed";
|
|
762
|
-
/**
|
|
763
|
-
* The resolved appearance of a Button.
|
|
764
|
-
*
|
|
765
|
-
* @experimental
|
|
766
|
-
*/
|
|
767
|
-
interface ButtonStyle {
|
|
768
|
-
variant: ButtonEmphasis;
|
|
769
|
-
intent: ButtonIntent;
|
|
770
|
-
/** The row of the colour table the pair renders. */
|
|
771
|
-
look: ButtonLook;
|
|
772
|
-
}
|
|
773
|
-
/**
|
|
774
|
-
* Resolve what a Button renders from the two-axis props, accepting every
|
|
775
|
-
* legacy word (W3-02, ADR-007 §4).
|
|
776
|
-
*
|
|
777
|
-
* - No `variant`: `solid` + `brand` (what `primary` always rendered).
|
|
778
|
-
* - A legacy `variant` alone: its fixed pair; `accent` and `dashed` keep
|
|
779
|
-
* their own look.
|
|
780
|
-
* - A legacy `variant` with an explicit `intent`: the alias contributes its
|
|
781
|
-
* emphasis, the intent is the caller's (`variant="primary" intent="danger"`
|
|
782
|
-
* is a solid danger button). `accent`'s and `dashed`'s own looks apply only
|
|
783
|
-
* without a competing intent.
|
|
784
|
-
* - `intent="destructive"` is `danger` (deprecated alias, D4).
|
|
785
|
-
*
|
|
786
|
-
* @experimental
|
|
787
|
-
*/
|
|
788
|
-
declare function resolveButtonStyle({ variant, intent, }: {
|
|
789
|
-
variant?: ButtonVariant | null;
|
|
790
|
-
intent?: ButtonIntent | ButtonIntentAlias | null;
|
|
791
|
-
}): ButtonStyle;
|
|
792
|
-
/**
|
|
793
|
-
* The size names the recipe knows (W3-05, ADR-013): the shared control scale
|
|
794
|
-
* `xs · sm · md · lg · xl` (`ControlSize`), the 1.31 aliases
|
|
795
|
-
* `compact` / `default` / `comfortable` of `sm` / `md` / `lg`, and the square
|
|
796
|
-
* icon-only steps `icon-xs` / `icon-sm` / `icon` (C-BTN-SIZE-ICON).
|
|
797
|
-
*
|
|
798
|
-
* `xs` and `xl` are new in W3-05 and read the shared scale
|
|
799
|
-
* (`--control-*-{xs,xl}`: 28px and 48px tall), so they follow the density
|
|
800
|
-
* scope. `md` (40px) and `lg` (48px) are the two A1 mismatches recorded in
|
|
801
|
-
* `baselines/size-geometry.json`: they keep today's pixels through the
|
|
802
|
-
* D5-gated compat tokens `--button-height-md` / `--button-height-lg` and
|
|
803
|
-
* their padding, gap and label size stay on Tailwind's scale — nothing about
|
|
804
|
-
* them moves until decision D5 (W2-05, CM-03). `sm` (32px) already agrees
|
|
805
|
-
* with the scale's `sm` step, so it reads the shared row like `xs`/`xl`.
|
|
806
|
-
*/
|
|
807
|
-
type ButtonSize = ControlSize | ButtonSizeAlias | ButtonIconSize;
|
|
808
|
-
/**
|
|
809
|
-
* The 1.31 aliases of `sm` / `md` / `lg` (C-BTN-SIZE-ALIAS). No known consumer
|
|
810
|
-
* uses them; they leave in 2.0.
|
|
811
|
-
*
|
|
812
|
-
* @deprecated Use `size="sm"`, `"md"` or `"lg"`.
|
|
813
|
-
* @experimental
|
|
814
|
-
*/
|
|
815
|
-
type ButtonSizeAlias = "compact" | "default" | "comfortable";
|
|
816
|
-
/**
|
|
817
|
-
* The icon-only squares (C-BTN-SIZE-ICON): 24 / 28 / 40px. `IconButton`
|
|
818
|
-
* (W3-09) owns icon-only geometry; the codemod CM-03 rewrites the call sites.
|
|
819
|
-
* Removed in 3.0.
|
|
820
|
-
*
|
|
821
|
-
* @deprecated Use `IconButton`.
|
|
822
|
-
* @experimental
|
|
823
|
-
*/
|
|
824
|
-
type ButtonIconSize = "icon-xs" | "icon-sm" | "icon";
|
|
825
|
-
/**
|
|
826
|
-
* What {@link buttonVariants} takes: the two axes, the size and cva's class
|
|
827
|
-
* pass-through.
|
|
828
|
-
*
|
|
829
|
-
* @experimental
|
|
830
|
-
*/
|
|
831
|
-
interface ButtonVariantsProps {
|
|
832
|
-
variant?: ButtonVariant | null;
|
|
833
|
-
intent?: ButtonIntent | ButtonIntentAlias | null;
|
|
834
|
-
size?: ButtonSize | null;
|
|
835
|
-
class?: string | null;
|
|
836
|
-
className?: string | null;
|
|
837
|
-
}
|
|
838
|
-
/**
|
|
839
|
-
* The public recipe of the Button family: resolves `variant` + `intent`
|
|
840
|
-
* (legacy words included) and renders the row with the size. Same name and
|
|
841
|
-
* output as before W3-02 for every call that existed; `intent` is the one
|
|
842
|
-
* addition. Server-safe.
|
|
843
|
-
*/
|
|
844
|
-
declare function buttonVariants({ variant, intent, size, class: classProp, className, }?: ButtonVariantsProps): string;
|
|
845
|
-
/**
|
|
846
|
-
* The icon slots of the Button family (W3-07). `iconStart` / `iconEnd` are
|
|
847
|
-
* logical — start is the left in LTR and the right in RTL, because the button
|
|
848
|
-
* is a flex row and the slot follows the writing direction. `iconLeft` /
|
|
849
|
-
* `iconRight` are the names consumers use today (140 call sites) and stay as
|
|
850
|
-
* aliases of the same slots.
|
|
851
|
-
*
|
|
852
|
-
* @experimental
|
|
853
|
-
*/
|
|
854
|
-
interface ButtonIconProps {
|
|
855
|
-
/** Icon before the label (logical start). */
|
|
856
|
-
iconStart?: ReactNode;
|
|
857
|
-
/** Icon after the label (logical end). */
|
|
858
|
-
iconEnd?: ReactNode;
|
|
859
|
-
/**
|
|
860
|
-
* Alias of `iconStart`. The codemod CM-05 renames it.
|
|
861
|
-
*
|
|
862
|
-
* @deprecated Use `iconStart`.
|
|
863
|
-
*/
|
|
864
|
-
iconLeft?: ReactNode;
|
|
865
|
-
/**
|
|
866
|
-
* Alias of `iconEnd`. The codemod CM-05 renames it.
|
|
867
|
-
*
|
|
868
|
-
* @deprecated Use `iconEnd`.
|
|
869
|
-
*/
|
|
870
|
-
iconRight?: ReactNode;
|
|
871
|
-
}
|
|
872
|
-
|
|
873
975
|
interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, ButtonIconProps {
|
|
874
976
|
/**
|
|
875
977
|
* Visual emphasis: `solid` (default) · `soft` · `outline` · `ghost` · `link`.
|
|
@@ -920,15 +1022,41 @@ interface CalendarHighlight {
|
|
|
920
1022
|
date: Date;
|
|
921
1023
|
color?: CalendarHighlightColor;
|
|
922
1024
|
}
|
|
923
|
-
|
|
1025
|
+
/** A range as `Calendar mode="range"` reports it: either edge may be missing while the user picks. */
|
|
1026
|
+
interface CalendarRange {
|
|
1027
|
+
from?: Date;
|
|
1028
|
+
to?: Date;
|
|
1029
|
+
}
|
|
1030
|
+
/** Props shared by both modes of `Calendar`. */
|
|
1031
|
+
interface CalendarBaseProps extends Omit<DayPickerProps, "mode" | "selected" | "onSelect" | "modifiers" | "modifiersClassNames" | "locale" | "required"> {
|
|
1032
|
+
highlights?: CalendarHighlight[];
|
|
1033
|
+
minDate?: Date;
|
|
1034
|
+
maxDate?: Date;
|
|
1035
|
+
className?: string;
|
|
1036
|
+
/**
|
|
1037
|
+
* A BCP 47 language tag (`"en-US"`, `"fr-FR"`), or a `date-fns` locale
|
|
1038
|
+
* object as before. Default: the provider's locale, else `"en-US"` (A3).
|
|
1039
|
+
*/
|
|
1040
|
+
locale?: string | DayPickerProps["locale"];
|
|
1041
|
+
}
|
|
1042
|
+
/** Single-date calendar (the default mode). */
|
|
1043
|
+
interface CalendarProps extends CalendarBaseProps {
|
|
1044
|
+
mode?: "single";
|
|
924
1045
|
selected?: Date | null;
|
|
925
1046
|
onSelect?: (date: Date) => void;
|
|
926
|
-
highlights?: CalendarHighlight[];
|
|
927
|
-
minDate?: Date;
|
|
928
|
-
maxDate?: Date;
|
|
929
|
-
className?: string;
|
|
930
1047
|
}
|
|
931
|
-
|
|
1048
|
+
/**
|
|
1049
|
+
* Range calendar: `selected` is a `{ from, to }` pair and `onSelect` reports
|
|
1050
|
+
* the pair react-day-picker produced, `undefined` when it cleared the range.
|
|
1051
|
+
*
|
|
1052
|
+
* @experimental
|
|
1053
|
+
*/
|
|
1054
|
+
interface CalendarRangeProps extends CalendarBaseProps {
|
|
1055
|
+
mode: "range";
|
|
1056
|
+
selected?: CalendarRange | null;
|
|
1057
|
+
onSelect?: (range: CalendarRange | undefined) => void;
|
|
1058
|
+
}
|
|
1059
|
+
declare function Calendar({ mode, selected, onSelect, highlights, minDate, maxDate, className, classNames, captionLayout, navLayout, startMonth, endMonth, components, locale: localeProp, today: todayProp, formatters, labels, lang, weekStartsOn, ...props }: CalendarProps | CalendarRangeProps): react_jsx_runtime.JSX.Element;
|
|
932
1060
|
declare namespace Calendar {
|
|
933
1061
|
var displayName: string;
|
|
934
1062
|
}
|
|
@@ -1167,16 +1295,33 @@ interface CategoryDividerProps extends React.HTMLAttributes<HTMLDivElement>, Var
|
|
|
1167
1295
|
}
|
|
1168
1296
|
declare const CategoryDivider: React$1.ForwardRefExoticComponent<CategoryDividerProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
1169
1297
|
|
|
1298
|
+
/** The states a checkbox renders: checked, unchecked, or partly checked. */
|
|
1299
|
+
type CheckboxChecked = boolean | "indeterminate";
|
|
1170
1300
|
interface CheckboxProps extends Omit<React$1.ComponentPropsWithoutRef<typeof CheckboxPrimitive.Root>, "checked" | "defaultChecked"> {
|
|
1171
|
-
/** Optional inline label rendered to the right of the box */
|
|
1301
|
+
/** Optional inline label rendered to the right of the box. Names the button through `htmlFor`. */
|
|
1172
1302
|
label?: string;
|
|
1173
1303
|
/** Tri-state support: true | false | "indeterminate" */
|
|
1174
|
-
checked?:
|
|
1175
|
-
defaultChecked?:
|
|
1176
|
-
/**
|
|
1304
|
+
checked?: CheckboxChecked;
|
|
1305
|
+
defaultChecked?: CheckboxChecked;
|
|
1306
|
+
/**
|
|
1307
|
+
* Render the indeterminate state.
|
|
1308
|
+
*
|
|
1309
|
+
* @deprecated Pass `checked="indeterminate"` instead (C-CHECKBOX-INDET;
|
|
1310
|
+
* codemod CM-11 rewrites it). Removed in 3.0.
|
|
1311
|
+
*/
|
|
1177
1312
|
indeterminate?: boolean;
|
|
1178
1313
|
/** Box shape. Defaults to "square". */
|
|
1179
1314
|
shape?: "square" | "circle";
|
|
1315
|
+
/**
|
|
1316
|
+
* The value submitted with `name` while checked. Default `"on"`, like a
|
|
1317
|
+
* native checkbox.
|
|
1318
|
+
*/
|
|
1319
|
+
value?: string;
|
|
1320
|
+
/**
|
|
1321
|
+
* The checkbox is in error: `aria-invalid` and `data-invalid`. Implied by
|
|
1322
|
+
* the surrounding `Field`'s `invalid` or a mounted `FieldError`.
|
|
1323
|
+
*/
|
|
1324
|
+
invalid?: boolean;
|
|
1180
1325
|
}
|
|
1181
1326
|
declare const Checkbox: React$1.ForwardRefExoticComponent<CheckboxProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
1182
1327
|
|
|
@@ -1229,12 +1374,111 @@ interface CommandItem {
|
|
|
1229
1374
|
}
|
|
1230
1375
|
interface CommandPaletteProps {
|
|
1231
1376
|
items: CommandItem[];
|
|
1377
|
+
/** Controlled open state. Omit for the uncontrolled palette (Cmd/Ctrl+K toggles it). */
|
|
1232
1378
|
open?: boolean;
|
|
1379
|
+
/** The initial open state of an uncontrolled palette. Default `false`. */
|
|
1380
|
+
defaultOpen?: boolean;
|
|
1233
1381
|
onOpenChange?: (open: boolean) => void;
|
|
1382
|
+
/** The search input's placeholder. Default `messages.search` (`"Type a command or search..."`). */
|
|
1234
1383
|
placeholder?: string;
|
|
1384
|
+
/** Overrides of the copy the palette renders (W5-22). */
|
|
1385
|
+
messages?: Partial<CommandPaletteMessages>;
|
|
1235
1386
|
}
|
|
1236
1387
|
|
|
1237
|
-
declare function CommandPalette({ items, open: controlledOpen, onOpenChange, placeholder, }: CommandPaletteProps): react_jsx_runtime.JSX.Element;
|
|
1388
|
+
declare function CommandPalette({ items, open: controlledOpen, defaultOpen, onOpenChange, placeholder: placeholderProp, messages: messagesProp, }: CommandPaletteProps): react_jsx_runtime.JSX.Element;
|
|
1389
|
+
|
|
1390
|
+
/** The meaning of a confirmation, as on `Button`. @experimental */
|
|
1391
|
+
type ConfirmIntent = Extract<Intent, "brand" | "neutral" | "success" | "danger">;
|
|
1392
|
+
/**
|
|
1393
|
+
* How the dialog presents (W5-09). `dialog` (default) is the centred box;
|
|
1394
|
+
* `responsive` renders the same content as a bottom sheet below the `sm`
|
|
1395
|
+
* breakpoint once the overlay primitives support it. Forwarded as is.
|
|
1396
|
+
*
|
|
1397
|
+
* @experimental
|
|
1398
|
+
*/
|
|
1399
|
+
type ConfirmPresentation = "dialog" | "responsive";
|
|
1400
|
+
/** Where focus starts when a `ConfirmDialog` opens. @experimental */
|
|
1401
|
+
type ConfirmInitialFocus = "cancel" | "confirm" | "none";
|
|
1402
|
+
/** The result of `onConfirm`: `false` keeps the dialog open. @experimental */
|
|
1403
|
+
type ConfirmResult = void | boolean;
|
|
1404
|
+
/**
|
|
1405
|
+
* Props of `ConfirmDialog`.
|
|
1406
|
+
*
|
|
1407
|
+
* @experimental
|
|
1408
|
+
*/
|
|
1409
|
+
interface ConfirmDialogProps {
|
|
1410
|
+
/** Controlled open state. */
|
|
1411
|
+
open?: boolean;
|
|
1412
|
+
/** Initial open state for uncontrolled usage. */
|
|
1413
|
+
defaultOpen?: boolean;
|
|
1414
|
+
/** Called when the dialog requests an open-state change. */
|
|
1415
|
+
onOpenChange?: (open: boolean) => void;
|
|
1416
|
+
/**
|
|
1417
|
+
* Element rendered as the dialog trigger (`<AlertDialogTrigger asChild>`).
|
|
1418
|
+
* Omit it when the dialog is driven entirely by `open` / `onOpenChange`.
|
|
1419
|
+
*/
|
|
1420
|
+
trigger?: React$1.ReactNode;
|
|
1421
|
+
/** The question. Required: an alert dialog needs a name. */
|
|
1422
|
+
title: React$1.ReactNode;
|
|
1423
|
+
/** The explanation under the title (inline content — it renders in a paragraph). */
|
|
1424
|
+
description?: React$1.ReactNode;
|
|
1425
|
+
/**
|
|
1426
|
+
* Block content between the description and the actions: a form field, a
|
|
1427
|
+
* list of what will be affected, a fee notice. Not read as the dialog's
|
|
1428
|
+
* description; label it on its own.
|
|
1429
|
+
*/
|
|
1430
|
+
children?: React$1.ReactNode;
|
|
1431
|
+
/** The confirm button's label. Default: `messages.confirm` (`"Confirm"`). */
|
|
1432
|
+
confirmLabel?: React$1.ReactNode;
|
|
1433
|
+
/** The confirm button's label while `onConfirm` is pending. Default: `confirmLabel`. */
|
|
1434
|
+
pendingLabel?: React$1.ReactNode;
|
|
1435
|
+
/** The cancel button's label. Default: `messages.cancel` (`"Cancel"`). */
|
|
1436
|
+
cancelLabel?: React$1.ReactNode;
|
|
1437
|
+
/** Overrides of the copy the dialog renders; the provider's `messages.confirm` sits below. */
|
|
1438
|
+
messages?: Partial<ConfirmMessages>;
|
|
1439
|
+
/**
|
|
1440
|
+
* Awaited. The dialog closes when it resolves (to anything but `false`)
|
|
1441
|
+
* and stays open when it rejects or resolves `false`.
|
|
1442
|
+
*/
|
|
1443
|
+
onConfirm: () => ConfirmResult | Promise<ConfirmResult>;
|
|
1444
|
+
/** Called when the user cancels (button, Escape, backdrop). */
|
|
1445
|
+
onCancel?: () => void;
|
|
1446
|
+
/**
|
|
1447
|
+
* Called when `onConfirm` rejects, with the rejection. The dialog stays
|
|
1448
|
+
* open either way; see `inlineError` for what renders.
|
|
1449
|
+
*/
|
|
1450
|
+
onError?: (error: unknown) => void;
|
|
1451
|
+
/**
|
|
1452
|
+
* Whether a rejection renders inline (a `FieldError`-style alert under the
|
|
1453
|
+
* content: the `Error`'s message, or `messages.failed`). Default `true`.
|
|
1454
|
+
* `false` leaves the surfacing to `onError` (a toast, for example).
|
|
1455
|
+
*/
|
|
1456
|
+
inlineError?: boolean;
|
|
1457
|
+
/** Meaning. Default `danger`. See {@link ConfirmIntent}. */
|
|
1458
|
+
intent?: ConfirmIntent;
|
|
1459
|
+
/**
|
|
1460
|
+
* Where focus starts when the dialog opens. Default: `cancel` for `danger`
|
|
1461
|
+
* (a destructive confirmation must not proceed on a reflex Enter), `confirm`
|
|
1462
|
+
* for every other intent. `none` leaves it to the content — the element
|
|
1463
|
+
* with `autoFocus` inside `children`, as `usePrompt` does for its input.
|
|
1464
|
+
*/
|
|
1465
|
+
initialFocus?: ConfirmInitialFocus;
|
|
1466
|
+
/** Disables the confirm button (a type-to-confirm or required field that is not satisfied yet). */
|
|
1467
|
+
confirmDisabled?: boolean;
|
|
1468
|
+
/** Presentation. Default `dialog`. See {@link ConfirmPresentation}. */
|
|
1469
|
+
presentation?: ConfirmPresentation;
|
|
1470
|
+
/** Forwarded to the content for one-off layout overrides. */
|
|
1471
|
+
className?: string;
|
|
1472
|
+
}
|
|
1473
|
+
/**
|
|
1474
|
+
* The confirmation pattern (W5-16). See the file comment.
|
|
1475
|
+
*
|
|
1476
|
+
* @experimental
|
|
1477
|
+
*/
|
|
1478
|
+
declare function ConfirmDialog({ open, defaultOpen, onOpenChange, trigger, title, description, children, confirmLabel, pendingLabel, cancelLabel, messages: messagesOverride, onConfirm, onCancel, onError, inlineError, intent, initialFocus, confirmDisabled, presentation, className, }: ConfirmDialogProps): react_jsx_runtime.JSX.Element;
|
|
1479
|
+
declare namespace ConfirmDialog {
|
|
1480
|
+
var displayName: string;
|
|
1481
|
+
}
|
|
1238
1482
|
|
|
1239
1483
|
interface ConfirmActionButtonProps {
|
|
1240
1484
|
/** Element rendered as the dialog trigger via `<AlertDialogTrigger asChild>`.
|
|
@@ -1244,16 +1488,45 @@ interface ConfirmActionButtonProps {
|
|
|
1244
1488
|
trigger?: React$1.ReactNode;
|
|
1245
1489
|
title: React$1.ReactNode;
|
|
1246
1490
|
description?: React$1.ReactNode;
|
|
1491
|
+
/** Default `"Confirm"` (the provider's `messages.confirm.confirm`). */
|
|
1247
1492
|
confirmLabel?: React$1.ReactNode;
|
|
1248
1493
|
/** Shown on the confirm button while `onConfirm` is awaiting. Falls back to
|
|
1249
1494
|
* `confirmLabel` when omitted, so existing callers are unaffected. */
|
|
1250
1495
|
pendingLabel?: React$1.ReactNode;
|
|
1496
|
+
/** Default `"Cancel"` (the provider's `messages.confirm.cancel`). */
|
|
1251
1497
|
cancelLabel?: React$1.ReactNode;
|
|
1252
|
-
/** Awaited; dialog closes after resolve, stays open on reject. */
|
|
1253
|
-
onConfirm: () => void | Promise<void>;
|
|
1254
|
-
/**
|
|
1255
|
-
|
|
1498
|
+
/** Awaited; dialog closes after resolve, stays open on reject (or a resolved `false`). */
|
|
1499
|
+
onConfirm: () => void | boolean | Promise<void | boolean>;
|
|
1500
|
+
/** Called with the rejection of `onConfirm` (the dialog stays open). @experimental */
|
|
1501
|
+
onError?: (error: unknown) => void;
|
|
1502
|
+
/**
|
|
1503
|
+
* When true (default) the Action button uses the destructive palette;
|
|
1504
|
+
* when false it uses the brand primary palette.
|
|
1505
|
+
*
|
|
1506
|
+
* Alias of `intent` (W5-17): `true` is `intent="danger"`, `false` is
|
|
1507
|
+
* `intent="brand"`. `intent`, when passed, wins.
|
|
1508
|
+
*/
|
|
1256
1509
|
destructive?: boolean;
|
|
1510
|
+
/**
|
|
1511
|
+
* Meaning of the confirmation, as on `ConfirmDialog`: `danger` (default)
|
|
1512
|
+
* keeps the destructive action and starts focus on Cancel; `brand`,
|
|
1513
|
+
* `neutral` and `success` render the action through the Button recipe and
|
|
1514
|
+
* start focus on the confirm button.
|
|
1515
|
+
*
|
|
1516
|
+
* @experimental
|
|
1517
|
+
*/
|
|
1518
|
+
intent?: ConfirmIntent;
|
|
1519
|
+
/**
|
|
1520
|
+
* Render the rejection of `onConfirm` inline under the description instead
|
|
1521
|
+
* of leaving it to the consumer. Default `false` (the 1.x behaviour).
|
|
1522
|
+
*
|
|
1523
|
+
* @experimental
|
|
1524
|
+
*/
|
|
1525
|
+
inlineError?: boolean;
|
|
1526
|
+
/** Presentation of the dialog (W5-09). Default `dialog`. @experimental */
|
|
1527
|
+
presentation?: ConfirmPresentation;
|
|
1528
|
+
/** Block content between the description and the actions (a form field). @experimental */
|
|
1529
|
+
children?: React$1.ReactNode;
|
|
1257
1530
|
/** Forwarded to AlertDialogContent for one-off layout overrides. */
|
|
1258
1531
|
contentClassName?: string;
|
|
1259
1532
|
/** Controlled open state for menu-hoisted or externally triggered dialogs. */
|
|
@@ -1263,7 +1536,7 @@ interface ConfirmActionButtonProps {
|
|
|
1263
1536
|
/** Called when the dialog requests an open-state change. */
|
|
1264
1537
|
onOpenChange?: (open: boolean) => void;
|
|
1265
1538
|
}
|
|
1266
|
-
declare function ConfirmActionButton({ trigger, title, description, confirmLabel, pendingLabel, cancelLabel, onConfirm, destructive, contentClassName, open, defaultOpen, onOpenChange, }: ConfirmActionButtonProps): react_jsx_runtime.JSX.Element;
|
|
1539
|
+
declare function ConfirmActionButton({ trigger, title, description, confirmLabel, pendingLabel, cancelLabel, onConfirm, onError, destructive, intent, inlineError, presentation, children, contentClassName, open, defaultOpen, onOpenChange, }: ConfirmActionButtonProps): react_jsx_runtime.JSX.Element;
|
|
1267
1540
|
|
|
1268
1541
|
declare const ContextMenu: React$1.FC<ContextMenuPrimitive.ContextMenuProps>;
|
|
1269
1542
|
declare const ContextMenuTrigger: React$1.ForwardRefExoticComponent<ContextMenuPrimitive.ContextMenuTriggerProps & React$1.RefAttributes<HTMLSpanElement>>;
|
|
@@ -1277,9 +1550,17 @@ declare const ContextMenuSubTrigger: React$1.ForwardRefExoticComponent<Omit<Cont
|
|
|
1277
1550
|
declare const ContextMenuSubContent: React$1.ForwardRefExoticComponent<Omit<ContextMenuPrimitive.ContextMenuSubContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
1278
1551
|
declare const ContextMenuContent: React$1.ForwardRefExoticComponent<Omit<ContextMenuPrimitive.ContextMenuContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
1279
1552
|
interface ContextMenuItemProps extends React$1.ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Item> {
|
|
1553
|
+
/** Render as a destructive (danger) action — the `intent="danger"` look of the shared Menu recipe. */
|
|
1280
1554
|
destructive?: boolean;
|
|
1555
|
+
/** Increase left padding to align with checkbox/radio items. */
|
|
1281
1556
|
inset?: boolean;
|
|
1282
1557
|
}
|
|
1558
|
+
/**
|
|
1559
|
+
* A menu item. Activation fires both `onSelect` (canonical; call
|
|
1560
|
+
* `event.preventDefault()` on it to keep the menu open) and `onClick`
|
|
1561
|
+
* (tolerated): Radix composes `onClick` with its select handler and a
|
|
1562
|
+
* keyboard activation clicks the element.
|
|
1563
|
+
*/
|
|
1283
1564
|
declare const ContextMenuItem: React$1.ForwardRefExoticComponent<ContextMenuItemProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
1284
1565
|
declare const ContextMenuCheckboxItem: React$1.ForwardRefExoticComponent<Omit<ContextMenuPrimitive.ContextMenuCheckboxItemProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
1285
1566
|
declare const ContextMenuRadioItem: React$1.ForwardRefExoticComponent<Omit<ContextMenuPrimitive.ContextMenuRadioItemProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
@@ -1295,6 +1576,8 @@ declare const ContextMenuShortcut: {
|
|
|
1295
1576
|
interface CopyButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
1296
1577
|
value: string;
|
|
1297
1578
|
feedbackDuration?: number;
|
|
1579
|
+
/** Overrides of the two accessible names (W5-22): prop > provider `messages.copyButton` > English. */
|
|
1580
|
+
messages?: Partial<CopyButtonMessages>;
|
|
1298
1581
|
}
|
|
1299
1582
|
/**
|
|
1300
1583
|
* CopyButton — single-click clipboard copy with check-mark feedback.
|
|
@@ -1322,10 +1605,25 @@ declare function isoToYear(iso: string | undefined | null): string;
|
|
|
1322
1605
|
declare function yearToIso(year: string): string;
|
|
1323
1606
|
/** Apply the `YYYY` mask while the user types. */
|
|
1324
1607
|
declare function applyYearMask(input: string): string;
|
|
1608
|
+
/** A display pattern: the tokens `MM`, `DD` and `YYYY`, once each, around literal separators — `"MM/DD/YYYY"`, `"DD.MM.YYYY"`, `"YYYY-MM-DD"`. */
|
|
1609
|
+
type DatePattern = string;
|
|
1325
1610
|
|
|
1326
1611
|
interface DatePickerProps {
|
|
1327
|
-
|
|
1612
|
+
/** ISO `YYYY-MM-DD`; `""` or `null` is "controlled, empty". */
|
|
1613
|
+
value?: string | null;
|
|
1328
1614
|
defaultValue?: string;
|
|
1615
|
+
/**
|
|
1616
|
+
* The value callback: the ISO date, or `null` when the field is cleared.
|
|
1617
|
+
* Fires before the legacy `onChange` when both are passed.
|
|
1618
|
+
*
|
|
1619
|
+
* @experimental
|
|
1620
|
+
*/
|
|
1621
|
+
onValueChange?: (value: string | null) => void;
|
|
1622
|
+
/**
|
|
1623
|
+
* Legacy fake-event callback (C-DATE-FAKEEVENT): `{ target: { name, value } }`
|
|
1624
|
+
* with the ISO string (`""` when cleared). Prefer `onValueChange`; codemod
|
|
1625
|
+
* CM-10 rewrites the recognisable shapes.
|
|
1626
|
+
*/
|
|
1329
1627
|
onChange?: (event: {
|
|
1330
1628
|
target: {
|
|
1331
1629
|
name?: string;
|
|
@@ -1333,6 +1631,22 @@ interface DatePickerProps {
|
|
|
1333
1631
|
};
|
|
1334
1632
|
}) => void;
|
|
1335
1633
|
name?: string;
|
|
1634
|
+
/** `id` of the form to submit with when the picker is rendered outside it (Dialog, Sheet). */
|
|
1635
|
+
form?: string;
|
|
1636
|
+
/**
|
|
1637
|
+
* BCP 47 tag deciding the typed pattern, the mask and the default
|
|
1638
|
+
* placeholder. Default: the provider's locale, else `"en-US"` (`MM/DD/YYYY`).
|
|
1639
|
+
*
|
|
1640
|
+
* @experimental
|
|
1641
|
+
*/
|
|
1642
|
+
locale?: string;
|
|
1643
|
+
/**
|
|
1644
|
+
* The display pattern, overriding the locale's: `MM`, `DD` and `YYYY`
|
|
1645
|
+
* once each around literal separators (`"DD.MM.YYYY"`). Ignored in year mode.
|
|
1646
|
+
*
|
|
1647
|
+
* @experimental
|
|
1648
|
+
*/
|
|
1649
|
+
dateFormat?: DatePattern;
|
|
1336
1650
|
id?: string;
|
|
1337
1651
|
label?: string;
|
|
1338
1652
|
error?: string;
|
|
@@ -1377,11 +1691,33 @@ interface DateRangeValue {
|
|
|
1377
1691
|
from?: string;
|
|
1378
1692
|
to?: string;
|
|
1379
1693
|
}
|
|
1694
|
+
/** The two form field names of a range. */
|
|
1695
|
+
interface DateRangeNames {
|
|
1696
|
+
from: string;
|
|
1697
|
+
to: string;
|
|
1698
|
+
}
|
|
1380
1699
|
interface DateRangePickerProps {
|
|
1381
1700
|
value?: DateRangeValue;
|
|
1382
1701
|
defaultValue?: DateRangeValue;
|
|
1383
1702
|
onChange?: (value: DateRangeValue) => void;
|
|
1703
|
+
/** Base of the two field names: `${name}_from` / `${name}_to` unless `names` says otherwise. */
|
|
1384
1704
|
name?: string;
|
|
1705
|
+
/**
|
|
1706
|
+
* Explicit field names for the two edges, replacing the `${name}_from` /
|
|
1707
|
+
* `${name}_to` default (C-DATERANGE-NAMES, kept through 2.x).
|
|
1708
|
+
*
|
|
1709
|
+
* @experimental
|
|
1710
|
+
*/
|
|
1711
|
+
names?: DateRangeNames;
|
|
1712
|
+
/** `id` of the form to submit with when the picker is rendered outside it (Dialog, Sheet). */
|
|
1713
|
+
form?: string;
|
|
1714
|
+
/**
|
|
1715
|
+
* BCP 47 tag deciding the displayed pattern of both edges and the
|
|
1716
|
+
* calendar's language. Default: the provider's locale, else `"en-US"`.
|
|
1717
|
+
*
|
|
1718
|
+
* @experimental
|
|
1719
|
+
*/
|
|
1720
|
+
locale?: string;
|
|
1385
1721
|
id?: string;
|
|
1386
1722
|
label?: string;
|
|
1387
1723
|
error?: string;
|
|
@@ -1404,28 +1740,106 @@ declare const Dialog: React$1.FC<DialogPrimitive.DialogProps>;
|
|
|
1404
1740
|
declare const DialogTrigger: React$1.ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
1405
1741
|
declare const DialogPortal: React$1.FC<DialogPrimitive.DialogPortalProps>;
|
|
1406
1742
|
declare const DialogOverlay: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogOverlayProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
1407
|
-
|
|
1408
|
-
|
|
1409
|
-
|
|
1410
|
-
|
|
1411
|
-
|
|
1412
|
-
|
|
1743
|
+
/**
|
|
1744
|
+
* Width of a `DialogContent`, as a step of the dialog width scale (W5-05):
|
|
1745
|
+
* `sm` 24rem · `md` 32rem (default) · `lg` 42rem · `xl` 56rem · `full` the
|
|
1746
|
+
* viewport minus a 1rem gutter. `sm`/`md`/`lg`/`full` are the 1.x steps,
|
|
1747
|
+
* pixel for pixel; `xl` is new. Every step yields to `--ds-dialog-width`
|
|
1748
|
+
* when a consumer sets it (on the content, or on a scope above it), which
|
|
1749
|
+
* is the replacement for the `!max-w-*` overrides products write today.
|
|
1750
|
+
*
|
|
1751
|
+
* @experimental
|
|
1752
|
+
*/
|
|
1753
|
+
type DialogSize = "sm" | "md" | "lg" | "xl" | "full";
|
|
1754
|
+
/**
|
|
1755
|
+
* Height of a `DialogContent` (W5-05). `auto` (default) grows with the
|
|
1756
|
+
* content and scrolls the whole box past `100vh - 6rem`, as it always did.
|
|
1757
|
+
* A fixed step (`sm` 24rem · `md` 32rem · `lg` 44rem · `full` the viewport
|
|
1758
|
+
* minus the same gutter, each capped at the viewport) turns the box into a
|
|
1759
|
+
* column whose `DialogBody` is the scroll region, so header and footer stay
|
|
1760
|
+
* put while long content scrolls.
|
|
1761
|
+
*
|
|
1762
|
+
* @experimental
|
|
1763
|
+
*/
|
|
1764
|
+
type DialogHeight = "auto" | "sm" | "md" | "lg" | "full";
|
|
1765
|
+
/**
|
|
1766
|
+
* How a `DialogContent` presents (W5-09). `dialog` (default) is the centred
|
|
1767
|
+
* box. `responsive` renders the same content as a bottom sheet below the `sm`
|
|
1768
|
+
* breakpoint (full width, top corners rounded, safe-area padding, `85vh`
|
|
1769
|
+
* cap) and as the centred box from it — one Radix root and one content node
|
|
1770
|
+
* whose surface CSS switches at the breakpoint, so focus, form state and
|
|
1771
|
+
* scroll position survive a resize or rotation. `size` and `--ds-dialog-width`
|
|
1772
|
+
* apply to the centred form only.
|
|
1773
|
+
*
|
|
1774
|
+
* @experimental
|
|
1775
|
+
*/
|
|
1776
|
+
type DialogPresentation = "dialog" | "responsive";
|
|
1777
|
+
/**
|
|
1778
|
+
* The copy a `Dialog` renders (target architecture §24.5). English defaults
|
|
1779
|
+
* until the messages contract of the provider lands (W5-20).
|
|
1780
|
+
*
|
|
1781
|
+
* @experimental
|
|
1782
|
+
*/
|
|
1783
|
+
interface DialogMessages {
|
|
1784
|
+
/** The accessible name of the built-in close button. Default `"Close"`. */
|
|
1785
|
+
close: string;
|
|
1786
|
+
}
|
|
1787
|
+
/**
|
|
1788
|
+
* Props of `DialogContent`: Radix's content props plus the sizing and
|
|
1789
|
+
* dismiss options.
|
|
1790
|
+
*
|
|
1791
|
+
* @experimental
|
|
1792
|
+
*/
|
|
1413
1793
|
interface DialogContentProps extends React$1.ComponentPropsWithoutRef<typeof DialogPrimitive.Content> {
|
|
1414
|
-
|
|
1794
|
+
/** Width step. Default `md`. See {@link DialogSize}. */
|
|
1795
|
+
size?: DialogSize;
|
|
1796
|
+
/** Height step. Default `auto`. See {@link DialogHeight}. */
|
|
1797
|
+
height?: DialogHeight;
|
|
1798
|
+
/** Centred box, or a bottom sheet below `sm`. Default `dialog`. See {@link DialogPresentation}. */
|
|
1799
|
+
presentation?: DialogPresentation;
|
|
1415
1800
|
/**
|
|
1416
1801
|
* If false, the built-in close button is hidden. Default: true.
|
|
1417
1802
|
* Use `<DialogClose>` inside content to render your own close UI.
|
|
1418
1803
|
*/
|
|
1419
1804
|
showCloseButton?: boolean;
|
|
1805
|
+
/**
|
|
1806
|
+
* The accessible name of the built-in close button. Takes precedence over
|
|
1807
|
+
* `messages.close`. Default `"Close"`.
|
|
1808
|
+
*/
|
|
1809
|
+
closeLabel?: string;
|
|
1810
|
+
/** Overrides of the copy the dialog renders (English defaults until W5-20). */
|
|
1811
|
+
messages?: Partial<DialogMessages>;
|
|
1420
1812
|
}
|
|
1421
1813
|
declare const DialogContent: React$1.ForwardRefExoticComponent<DialogContentProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
1422
1814
|
declare const DialogClose: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogCloseProps & React$1.RefAttributes<HTMLButtonElement>, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
|
|
1423
1815
|
declare const DialogHeader: {
|
|
1424
|
-
(
|
|
1816
|
+
(props: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime.JSX.Element;
|
|
1425
1817
|
displayName: string;
|
|
1426
1818
|
};
|
|
1819
|
+
/**
|
|
1820
|
+
* Props of `DialogBody` (W5-05).
|
|
1821
|
+
*
|
|
1822
|
+
* @experimental
|
|
1823
|
+
*/
|
|
1824
|
+
interface DialogBodyProps extends React$1.HTMLAttributes<HTMLDivElement> {
|
|
1825
|
+
/**
|
|
1826
|
+
* Inner padding. Default `none`: the content box already pads itself
|
|
1827
|
+
* (`p-6`), so the body only needs its own padding when the content is
|
|
1828
|
+
* `height`-fixed and a scrolling region wants breathing room.
|
|
1829
|
+
*/
|
|
1830
|
+
padding?: "none" | "sm" | "md" | "lg";
|
|
1831
|
+
}
|
|
1832
|
+
/**
|
|
1833
|
+
* The scroll region of a dialog between `DialogHeader` and `DialogFooter`
|
|
1834
|
+
* (W5-05). With `height="auto"` (the default) the whole content scrolls as
|
|
1835
|
+
* before and the body is a plain block; with a fixed `height` it takes the
|
|
1836
|
+
* remaining height and scrolls while the header and footer stay in place.
|
|
1837
|
+
*
|
|
1838
|
+
* @experimental
|
|
1839
|
+
*/
|
|
1840
|
+
declare const DialogBody: React$1.ForwardRefExoticComponent<DialogBodyProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
1427
1841
|
declare const DialogFooter: {
|
|
1428
|
-
(
|
|
1842
|
+
(props: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime.JSX.Element;
|
|
1429
1843
|
displayName: string;
|
|
1430
1844
|
};
|
|
1431
1845
|
declare const DialogTitle: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogTitleProps & React$1.RefAttributes<HTMLHeadingElement>, "ref"> & React$1.RefAttributes<HTMLHeadingElement>>;
|
|
@@ -1526,6 +1940,22 @@ interface DonutChartProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "ch
|
|
|
1526
1940
|
}
|
|
1527
1941
|
declare const DonutChart: React$1.ForwardRefExoticComponent<DonutChartProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
1528
1942
|
|
|
1943
|
+
/**
|
|
1944
|
+
* L1a behaviour primitive (private). Not exported from the package.
|
|
1945
|
+
*
|
|
1946
|
+
* The `width` of a menu content surface (W5-13; target architecture §14
|
|
1947
|
+
* "Menus: `width: auto | trigger | sm | md`" — 62% of consumer
|
|
1948
|
+
* `DropdownMenuContent` uses override the width by class today). `auto` is
|
|
1949
|
+
* the default and adds nothing, so every existing menu keeps its class string
|
|
1950
|
+
* byte for byte; the other values are opt-in. `trigger` reads the Popper
|
|
1951
|
+
* variable Radix stamps on the content, so the menu is as wide as the element
|
|
1952
|
+
* that opened it.
|
|
1953
|
+
*
|
|
1954
|
+
* Full literals, one per row, so Tailwind's scanner sees them.
|
|
1955
|
+
*/
|
|
1956
|
+
/** How wide a menu content surface is. */
|
|
1957
|
+
type MenuWidth = "auto" | "trigger" | "sm" | "md";
|
|
1958
|
+
|
|
1529
1959
|
declare const DropdownMenu: React$1.FC<DropdownMenuPrimitive.DropdownMenuProps>;
|
|
1530
1960
|
declare const DropdownMenuTrigger: React$1.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
1531
1961
|
declare const DropdownMenuGroup: React$1.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuGroupProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
@@ -1536,13 +1966,32 @@ declare const DropdownMenuSubTrigger: React$1.ForwardRefExoticComponent<Omit<Dro
|
|
|
1536
1966
|
inset?: boolean;
|
|
1537
1967
|
} & React$1.RefAttributes<HTMLDivElement>>;
|
|
1538
1968
|
declare const DropdownMenuSubContent: React$1.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
1539
|
-
|
|
1969
|
+
interface DropdownMenuContentProps extends React$1.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Content> {
|
|
1970
|
+
/**
|
|
1971
|
+
* The width of the menu surface. `auto` (default) sizes to the items with
|
|
1972
|
+
* the 10rem minimum; `trigger` matches the element that opened the menu;
|
|
1973
|
+
* `sm` and `md` are fixed widths (12rem, 16rem). Replaces the `w-*` class
|
|
1974
|
+
* overrides most consumers write today.
|
|
1975
|
+
* @default "auto"
|
|
1976
|
+
*/
|
|
1977
|
+
width?: MenuWidth;
|
|
1978
|
+
}
|
|
1979
|
+
declare const DropdownMenuContent: React$1.ForwardRefExoticComponent<DropdownMenuContentProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
1540
1980
|
interface DropdownMenuItemProps extends React$1.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Item> {
|
|
1541
|
-
/**
|
|
1981
|
+
/**
|
|
1982
|
+
* Render as a destructive (danger) action — the `intent="danger"` look of
|
|
1983
|
+
* the shared Menu recipe (`menu.item.destructive.*` tokens).
|
|
1984
|
+
*/
|
|
1542
1985
|
destructive?: boolean;
|
|
1543
1986
|
/** Increase left padding to align with checkbox/radio items. */
|
|
1544
1987
|
inset?: boolean;
|
|
1545
1988
|
}
|
|
1989
|
+
/**
|
|
1990
|
+
* A menu item. Activation fires both `onSelect` (canonical; call
|
|
1991
|
+
* `event.preventDefault()` on it to keep the menu open) and `onClick`
|
|
1992
|
+
* (tolerated): Radix composes `onClick` with its select handler and a
|
|
1993
|
+
* keyboard activation clicks the element.
|
|
1994
|
+
*/
|
|
1546
1995
|
declare const DropdownMenuItem: React$1.ForwardRefExoticComponent<DropdownMenuItemProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
1547
1996
|
declare const DropdownMenuCheckboxItem: React$1.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuCheckboxItemProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
1548
1997
|
declare const DropdownMenuRadioItem: React$1.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuRadioItemProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
@@ -1556,7 +2005,8 @@ declare const DropdownMenuShortcut: {
|
|
|
1556
2005
|
};
|
|
1557
2006
|
|
|
1558
2007
|
/**
|
|
1559
|
-
* EmptyState — display headline (Inter), fg-3 description,
|
|
2008
|
+
* EmptyState — display headline (Inter), fg-3 description, icon tile on surface-2 with a
|
|
2009
|
+
* hairline ring (Polish 2 §3.10: the tile reads as a surface, the icon as content).
|
|
1560
2010
|
*
|
|
1561
2011
|
* Public API preserved: `icon`, `title`, `description`, `action`.
|
|
1562
2012
|
*/
|
|
@@ -1633,21 +2083,87 @@ interface FileTypeBadgeProps extends Omit<React.HTMLAttributes<HTMLSpanElement>,
|
|
|
1633
2083
|
}
|
|
1634
2084
|
declare const FileTypeBadge: React$1.ForwardRefExoticComponent<FileTypeBadgeProps & React$1.RefAttributes<HTMLSpanElement>>;
|
|
1635
2085
|
|
|
2086
|
+
/**
|
|
2087
|
+
* The looks of the dropzone: `default` stacks the icon and the copy in a
|
|
2088
|
+
* padded tile; `compact` lays them out in one row for dialogs and dense
|
|
2089
|
+
* forms.
|
|
2090
|
+
*
|
|
2091
|
+
* @experimental
|
|
2092
|
+
*/
|
|
2093
|
+
type FileUploadVariant = "default" | "compact";
|
|
2094
|
+
|
|
2095
|
+
/**
|
|
2096
|
+
* Props of `FileUpload`.
|
|
2097
|
+
*
|
|
2098
|
+
* @experimental The W4-24 additions (`name`, `form`, `required`, `classNames`,
|
|
2099
|
+
* `variant`, `inputRef`) are experimental; the legacy props keep their contract.
|
|
2100
|
+
*/
|
|
1636
2101
|
interface FileUploadProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
1637
2102
|
accept?: string;
|
|
1638
2103
|
maxSize?: number;
|
|
1639
2104
|
multiple?: boolean;
|
|
1640
2105
|
onFilesSelected?: (files: File[]) => void;
|
|
1641
2106
|
disabled?: boolean;
|
|
2107
|
+
/**
|
|
2108
|
+
* The form field name. With it the owned `<input type="file">` submits the
|
|
2109
|
+
* selected or dropped files; a surrounding `Field` can supply it.
|
|
2110
|
+
*/
|
|
2111
|
+
name?: string;
|
|
2112
|
+
/** `id` of the form to submit with when the dropzone is rendered outside it. */
|
|
2113
|
+
form?: string;
|
|
2114
|
+
/** Block native submission while no file is selected. */
|
|
2115
|
+
required?: boolean;
|
|
2116
|
+
/** `default` (stacked tile) or `compact` (one row). */
|
|
2117
|
+
variant?: FileUploadVariant;
|
|
2118
|
+
/**
|
|
2119
|
+
* One class per part, keyed by `FileUploadSlot` (ADR-008). `className`
|
|
2120
|
+
* keeps landing on the root; `dropzone` is the `<label>` that
|
|
2121
|
+
* `[&_label]` selectors reach for today (C-DOM-04), `input` the file
|
|
2122
|
+
* input, `error` the message.
|
|
2123
|
+
*/
|
|
2124
|
+
classNames?: Partial<Record<Exclude<FileUploadSlot, "root">, string>>;
|
|
2125
|
+
/** A ref to the owned file input. */
|
|
2126
|
+
inputRef?: React.Ref<HTMLInputElement>;
|
|
2127
|
+
/** Overrides for the default dropzone copy (W5-20). @experimental */
|
|
2128
|
+
messages?: Partial<FileUploadMessages>;
|
|
1642
2129
|
}
|
|
1643
|
-
declare function FileUpload({ accept, maxSize, multiple, onFilesSelected, disabled, className, children, ...props }: FileUploadProps): react_jsx_runtime.JSX.Element;
|
|
2130
|
+
declare function FileUpload({ accept, maxSize, multiple, onFilesSelected, disabled, name, form, required, variant, classNames, inputRef: inputRefProp, messages: messagesProp, className, children, ...props }: FileUploadProps): react_jsx_runtime.JSX.Element;
|
|
1644
2131
|
|
|
2132
|
+
/**
|
|
2133
|
+
* `FormError` / `FormSuccess` — the pre-Field inline messages (contract
|
|
2134
|
+
* C-FORM-MSG, replaced by the Field parts in W4-25, removed in 3.0).
|
|
2135
|
+
*
|
|
2136
|
+
* They are deliberately **not** thin adapters over `FieldError` and
|
|
2137
|
+
* `FieldDescription`: the Field parts stamp `data-slot="field-error"` /
|
|
2138
|
+
* `data-slot="field-description"`, always render a part `id` (a `useId`
|
|
2139
|
+
* fallback outside a `Field`), and `FieldError` renders nothing without
|
|
2140
|
+
* content and chooses its `role` from the mount timing — none of which
|
|
2141
|
+
* today's `<p role="alert"><svg/><span>…</span></p>` has. Rendering through
|
|
2142
|
+
* the parts would therefore change the DOM every consumer freezes (C-DOM
|
|
2143
|
+
* snapshots) for no visible gain, so the markup below stays byte for byte
|
|
2144
|
+
* until 3.0 and the replacement is a call-site migration:
|
|
2145
|
+
*
|
|
2146
|
+
* ```tsx
|
|
2147
|
+
* <Field invalid={!!error}>
|
|
2148
|
+
* <Label>Email</Label>
|
|
2149
|
+
* <Input />
|
|
2150
|
+
* <FieldError>{error}</FieldError>
|
|
2151
|
+
* </Field>
|
|
2152
|
+
* ```
|
|
2153
|
+
*
|
|
2154
|
+
* `FormSuccess` has no Field counterpart by design: a confirmation is a
|
|
2155
|
+
* `FieldDescription` (or a toast), not a field state.
|
|
2156
|
+
*/
|
|
1645
2157
|
interface FormErrorProps extends React.HTMLAttributes<HTMLParagraphElement> {
|
|
1646
2158
|
children: React.ReactNode;
|
|
1647
2159
|
}
|
|
1648
2160
|
/**
|
|
1649
2161
|
* Inline form error — paired below an input to communicate validation failure.
|
|
1650
2162
|
* Uses architectural --color-danger-fg token.
|
|
2163
|
+
*
|
|
2164
|
+
* @deprecated Use `FieldError` inside a `Field` (W4-25, C-FORM-MSG): it wires
|
|
2165
|
+
* `aria-describedby` and `aria-invalid` on the control and announces itself
|
|
2166
|
+
* only after an interaction. Removed in 3.0.
|
|
1651
2167
|
*/
|
|
1652
2168
|
declare function FormError({ children, className, ...props }: FormErrorProps): react_jsx_runtime.JSX.Element;
|
|
1653
2169
|
interface FormSuccessProps extends React.HTMLAttributes<HTMLParagraphElement> {
|
|
@@ -1656,6 +2172,10 @@ interface FormSuccessProps extends React.HTMLAttributes<HTMLParagraphElement> {
|
|
|
1656
2172
|
/**
|
|
1657
2173
|
* Inline form success — paired below an input to confirm a saved value.
|
|
1658
2174
|
* Uses architectural --color-success-fg token.
|
|
2175
|
+
*
|
|
2176
|
+
* @deprecated Use `FieldDescription` inside a `Field` for a per-field
|
|
2177
|
+
* confirmation, or a toast for a saved form (W4-25, C-FORM-MSG). Removed in
|
|
2178
|
+
* 3.0.
|
|
1659
2179
|
*/
|
|
1660
2180
|
declare function FormSuccess({ children, className, ...props }: FormSuccessProps): react_jsx_runtime.JSX.Element;
|
|
1661
2181
|
|
|
@@ -1674,6 +2194,21 @@ declare function FormSuccess({ children, className, ...props }: FormSuccessProps
|
|
|
1674
2194
|
* For marketing-style centered section heads, prefer `<SectionHeader>`.
|
|
1675
2195
|
* For lower-level title+description blocks that aren't part of a form,
|
|
1676
2196
|
* use `<SectionHead>` from `./section`.
|
|
2197
|
+
*
|
|
2198
|
+
* Contract C-FORM-MSG (W4-25): replaced by `Fieldset` + `FieldsetLegend`,
|
|
2199
|
+
* removed in 3.0. It is deliberately **not** an adapter over them: `Fieldset`
|
|
2200
|
+
* stamps `data-slot="fieldset"` and lays its children out as a
|
|
2201
|
+
* `flex-col gap-3` column, `FieldsetLegend` adds `mb-1.5` — both would move
|
|
2202
|
+
* the heading row and the fields this component renders today. The markup
|
|
2203
|
+
* below therefore stays byte for byte until 3.0; the replacement is a
|
|
2204
|
+
* call-site migration:
|
|
2205
|
+
*
|
|
2206
|
+
* ```tsx
|
|
2207
|
+
* <Fieldset>
|
|
2208
|
+
* <FieldsetLegend>Contact</FieldsetLegend>
|
|
2209
|
+
* <Field>…</Field>
|
|
2210
|
+
* </Fieldset>
|
|
2211
|
+
* ```
|
|
1677
2212
|
*/
|
|
1678
2213
|
interface FormSectionProps extends Omit<React.FieldsetHTMLAttributes<HTMLFieldSetElement>, "title"> {
|
|
1679
2214
|
/** The section heading (renders as `<legend>` text). */
|
|
@@ -1685,12 +2220,53 @@ interface FormSectionProps extends Omit<React.FieldsetHTMLAttributes<HTMLFieldSe
|
|
|
1685
2220
|
/** Space between the heading block and the fields. Default `mt-4`. */
|
|
1686
2221
|
headSpacing?: string;
|
|
1687
2222
|
}
|
|
2223
|
+
/**
|
|
2224
|
+
* A grouped block of a settings/profile form: `<fieldset>` + `<legend>` with
|
|
2225
|
+
* an optional description and trailing action.
|
|
2226
|
+
*
|
|
2227
|
+
* @deprecated Use `Fieldset` with `FieldsetLegend` (W4-25, C-FORM-MSG); put
|
|
2228
|
+
* a description in a `Text` and each control in its own `Field`. Removed in
|
|
2229
|
+
* 3.0.
|
|
2230
|
+
*/
|
|
1688
2231
|
declare const FormSection: React$1.ForwardRefExoticComponent<FormSectionProps & React$1.RefAttributes<HTMLFieldSetElement>>;
|
|
1689
2232
|
|
|
2233
|
+
/**
|
|
2234
|
+
* How wide a floating surface is (W5-11; target architecture §14 "Popover /
|
|
2235
|
+
* HoverCard: `width: auto | trigger | sm | md | lg`" — 100% of consumer
|
|
2236
|
+
* `PopoverContent` uses override width or padding by class today). `auto`
|
|
2237
|
+
* adds nothing (the content sizes the box); `trigger` reads the popper
|
|
2238
|
+
* variable Radix stamps on the content; `sm`/`md`/`lg` are 16/18/24rem —
|
|
2239
|
+
* `md` is the `w-72` Popover always wrote, `sm` the `w-64` of HoverCard.
|
|
2240
|
+
*/
|
|
2241
|
+
type FloatingWidth = "auto" | "trigger" | "sm" | "md" | "lg";
|
|
2242
|
+
/** Inner padding of a floating surface; `md` is the `p-4` both adopters wrote. */
|
|
2243
|
+
type FloatingPadding = "none" | "sm" | "md";
|
|
2244
|
+
|
|
2245
|
+
/** How wide a `HoverCardContent` is. @experimental */
|
|
2246
|
+
type HoverCardWidth = FloatingWidth;
|
|
2247
|
+
/** Inner padding of a `HoverCardContent`. @experimental */
|
|
2248
|
+
type HoverCardPadding = FloatingPadding;
|
|
1690
2249
|
declare const HoverCard: React$1.FC<HoverCardPrimitive.HoverCardProps>;
|
|
1691
2250
|
declare const HoverCardTrigger: React$1.ForwardRefExoticComponent<HoverCardPrimitive.HoverCardTriggerProps & React$1.RefAttributes<HTMLAnchorElement>>;
|
|
1692
2251
|
declare const HoverCardPortal: React$1.FC<HoverCardPrimitive.HoverCardPortalProps>;
|
|
1693
|
-
|
|
2252
|
+
interface HoverCardContentProps extends React$1.ComponentPropsWithoutRef<typeof HoverCardPrimitive.Content> {
|
|
2253
|
+
/**
|
|
2254
|
+
* The width of the surface. `sm` (default, 16rem) is what the hover card
|
|
2255
|
+
* always rendered; `auto` sizes to the content, `trigger` matches the
|
|
2256
|
+
* element that opened it, `md` and `lg` are 18rem and 24rem.
|
|
2257
|
+
*
|
|
2258
|
+
* @experimental
|
|
2259
|
+
*/
|
|
2260
|
+
width?: HoverCardWidth;
|
|
2261
|
+
/**
|
|
2262
|
+
* Inner padding of the surface. `md` (default) is the `p-4` the hover card
|
|
2263
|
+
* always rendered; `sm` is `p-3`; `none` lets the content pad itself.
|
|
2264
|
+
*
|
|
2265
|
+
* @experimental
|
|
2266
|
+
*/
|
|
2267
|
+
padding?: HoverCardPadding;
|
|
2268
|
+
}
|
|
2269
|
+
declare const HoverCardContent: React$1.ForwardRefExoticComponent<HoverCardContentProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
1694
2270
|
|
|
1695
2271
|
/**
|
|
1696
2272
|
* IconTile — the recurring tinted rounded-square icon chip. An intent tint
|
|
@@ -1762,15 +2338,86 @@ interface IconTileProps extends React.HTMLAttributes<HTMLDivElement>, IconTileVa
|
|
|
1762
2338
|
declare const IconTile: React$1.ForwardRefExoticComponent<IconTileProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
1763
2339
|
|
|
1764
2340
|
/**
|
|
1765
|
-
*
|
|
1766
|
-
*
|
|
2341
|
+
* The emphases an Input offers: the shared chrome's `default` (a
|
|
2342
|
+
* `--color-rule-strong` hairline) and `ghost` (no border and no background
|
|
2343
|
+
* until focused). Spelled out rather than aliased to the recipe's private
|
|
2344
|
+
* type so the public declaration names no unexported symbol; the
|
|
2345
|
+
* `satisfies` below keeps the two in step.
|
|
2346
|
+
*
|
|
2347
|
+
* @experimental
|
|
2348
|
+
*/
|
|
2349
|
+
type InputVariant = "default" | "ghost";
|
|
2350
|
+
/**
|
|
2351
|
+
* The 1.31 aliases of `sm` / `md` / `lg` (C-INPUT-SIZE). No known consumer
|
|
2352
|
+
* uses them; they leave with `inputSize` in 3.0.
|
|
2353
|
+
*
|
|
2354
|
+
* @deprecated Use `size="sm"`, `"md"` or `"lg"`.
|
|
2355
|
+
* @experimental
|
|
2356
|
+
*/
|
|
2357
|
+
type InputSizeAlias = "compact" | "default" | "comfortable";
|
|
2358
|
+
/**
|
|
2359
|
+
* The size names an Input knows (W4-05, ADR-013): the shared control scale
|
|
2360
|
+
* `xs · sm · md · lg · xl` (`ControlSize`) and the 1.31 aliases.
|
|
2361
|
+
*
|
|
2362
|
+
* `sm` and `md` are today's pixels *and* the scale's steps (32 / 36px), so
|
|
2363
|
+
* they read `--control-height-{sm,md}` and follow the density scope. `lg` is
|
|
2364
|
+
* the A1 mismatch recorded in `baselines/size-geometry.json` (44px where the
|
|
2365
|
+
* scale says 40): it keeps today's pixels through the D5-gated compat token
|
|
2366
|
+
* `--input-height-lg` until decision D5 (W2-05). `xs` and `xl` are new and
|
|
2367
|
+
* read the shared rows in full. Padding and text of the compat rows stay on
|
|
2368
|
+
* Tailwind's steps — nothing about them moves until D5.
|
|
2369
|
+
*
|
|
2370
|
+
* @experimental
|
|
2371
|
+
*/
|
|
2372
|
+
type InputSize = ControlSize | InputSizeAlias;
|
|
2373
|
+
/**
|
|
2374
|
+
* What {@link inputVariants} takes: the emphasis, the size (either name — the
|
|
2375
|
+
* new `size` wins when both are given) and cva's class props.
|
|
2376
|
+
*
|
|
2377
|
+
* @experimental
|
|
2378
|
+
*/
|
|
2379
|
+
interface InputVariantsOptions {
|
|
2380
|
+
variant?: InputVariant | null;
|
|
2381
|
+
size?: InputSize | null;
|
|
2382
|
+
/**
|
|
2383
|
+
* The legacy size prop (C-INPUT-SIZE): today's rows, byte for byte, so a
|
|
2384
|
+
* call that has not moved to `size` renders the classes it always did.
|
|
2385
|
+
*
|
|
2386
|
+
* @deprecated Use `size`. Codemod CM-07 renames it.
|
|
2387
|
+
*/
|
|
2388
|
+
inputSize?: InputSize | null;
|
|
2389
|
+
class?: string | null;
|
|
2390
|
+
className?: string | null;
|
|
2391
|
+
}
|
|
2392
|
+
/** The variant props of `inputVariants` (cva's `VariantProps` shape, kept for the API report). */
|
|
2393
|
+
type InputVariants = Omit<InputVariantsOptions, "class" | "className">;
|
|
2394
|
+
/**
|
|
2395
|
+
* The Input class recipe (W4-05): the shared control chrome
|
|
2396
|
+
* (`behavior/control-chrome.ts` — border, VN-5 focus edge + field halo,
|
|
2397
|
+
* `aria-invalid`, `disabled`, `ghost`) called with the emphasis and, for the
|
|
2398
|
+
* scale steps `xs` / `xl`, the shared size row; then the file-selector reset
|
|
2399
|
+
* and, for the compat sizes, Input's own row (see {@link InputSize}).
|
|
2400
|
+
*
|
|
2401
|
+
* Emits the same *set* of classes as the cva it replaces for every legacy
|
|
2402
|
+
* `variant` × `inputSize` (`src/primitives/__tests__/input-chrome-classes.test.tsx`
|
|
2403
|
+
* pins the set and the browser test pins the pixels); only the position of
|
|
2404
|
+
* the file reset moved, which Tailwind does not read. Server-safe.
|
|
2405
|
+
*
|
|
2406
|
+
* @experimental
|
|
2407
|
+
*/
|
|
2408
|
+
declare function inputVariants({ variant, size, inputSize, class: classProp, className, }?: InputVariantsOptions): string;
|
|
2409
|
+
/**
|
|
2410
|
+
* Props of `Input` (W4-05; target architecture §24.3, §29.1).
|
|
2411
|
+
*
|
|
2412
|
+
* @experimental The name is exported since W4-05; the props it lists have been
|
|
2413
|
+
* stable since 1.x.
|
|
1767
2414
|
*/
|
|
1768
|
-
declare const inputVariants: (props?: ({
|
|
1769
|
-
variant?: "ghost" | "default" | null | undefined;
|
|
1770
|
-
inputSize?: "sm" | "md" | "lg" | "default" | "compact" | "comfortable" | null | undefined;
|
|
1771
|
-
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
1772
|
-
type InputVariants = VariantProps<typeof inputVariants>;
|
|
1773
2415
|
interface InputProps$1 extends Omit<React.InputHTMLAttributes<HTMLInputElement>, "size">, InputVariants {
|
|
2416
|
+
/**
|
|
2417
|
+
* Sugar for the field label: renders the label above the control, bound
|
|
2418
|
+
* through the field wiring (`htmlFor`/`id`), exactly as
|
|
2419
|
+
* `<Field><Label>…</Label><Input/></Field>` binds it.
|
|
2420
|
+
*/
|
|
1774
2421
|
label?: string;
|
|
1775
2422
|
/**
|
|
1776
2423
|
* Render `label` inside the field instead of stacked above it: it rests like
|
|
@@ -1782,10 +2429,50 @@ interface InputProps$1 extends Omit<React.InputHTMLAttributes<HTMLInputElement>,
|
|
|
1782
2429
|
* ("e.g. 555-0100") can still sit behind the label without competing with it.
|
|
1783
2430
|
*/
|
|
1784
2431
|
floatingLabel?: boolean;
|
|
2432
|
+
/**
|
|
2433
|
+
* Sugar for the hint text under the control, referenced first in the
|
|
2434
|
+
* control's `aria-describedby` (before `error`).
|
|
2435
|
+
*/
|
|
2436
|
+
description?: string;
|
|
2437
|
+
/**
|
|
2438
|
+
* Sugar for the error message: renders it under the control, linked through
|
|
2439
|
+
* `aria-describedby`, and marks the control invalid.
|
|
2440
|
+
*/
|
|
1785
2441
|
error?: string;
|
|
1786
|
-
|
|
1787
|
-
|
|
2442
|
+
/**
|
|
2443
|
+
* The value is invalid without a message to show: `aria-invalid`,
|
|
2444
|
+
* `data-invalid` and the chrome's invalid treatment. Implied by `error`.
|
|
2445
|
+
*/
|
|
2446
|
+
invalid?: boolean;
|
|
2447
|
+
prefixIcon?: ReactNode;
|
|
2448
|
+
suffixIcon?: ReactNode;
|
|
2449
|
+
/**
|
|
2450
|
+
* Called with the new string value on every change, next to `onChange`
|
|
2451
|
+
* (which keeps receiving the event).
|
|
2452
|
+
*/
|
|
2453
|
+
onValueChange?: (value: string) => void;
|
|
2454
|
+
/**
|
|
2455
|
+
* Classes per anatomy part (the `input-*` slots). The `<input>` is
|
|
2456
|
+
* the root part and takes `className` (C-INPUT-CLASSNAME), so it has no
|
|
2457
|
+
* entry here.
|
|
2458
|
+
*/
|
|
2459
|
+
classNames?: Partial<Record<Exclude<InputSlot, "root">, string>>;
|
|
2460
|
+
/**
|
|
2461
|
+
* Classes for the outer wrapper around the control and its parts.
|
|
2462
|
+
* Transitional (C-INPUT-CLASSNAME): `className` keeps landing on the
|
|
2463
|
+
* `<input>` because 192 consumer overrides depend on it; this is the name
|
|
2464
|
+
* for the wrapper until `className` moves there in 3.0.
|
|
2465
|
+
*/
|
|
2466
|
+
rootClassName?: string;
|
|
1788
2467
|
}
|
|
2468
|
+
/**
|
|
2469
|
+
* A single-line text field (target architecture §24, §29). The control is a
|
|
2470
|
+
* native `<input>` and takes part in a form on its own. Inside a `Field` it
|
|
2471
|
+
* binds itself through `useFieldControl` — id, name, `aria-describedby`,
|
|
2472
|
+
* invalid / required / disabled come from the field; explicit props win. The
|
|
2473
|
+
* `label` / `description` / `error` sugar renders the same wiring around the
|
|
2474
|
+
* control for the call sites that never adopt the compound form.
|
|
2475
|
+
*/
|
|
1789
2476
|
declare const Input: React$1.ForwardRefExoticComponent<InputProps$1 & React$1.RefAttributes<HTMLInputElement>>;
|
|
1790
2477
|
|
|
1791
2478
|
interface KeyboardShortcut {
|
|
@@ -1811,13 +2498,29 @@ interface KeyboardShortcutsDialogProps {
|
|
|
1811
2498
|
* keydown handling.
|
|
1812
2499
|
*/
|
|
1813
2500
|
hotkey?: string | null;
|
|
2501
|
+
/** Controlled open state (W5-19). Omit for the uncontrolled dialog. */
|
|
2502
|
+
open?: boolean;
|
|
2503
|
+
/** The initial open state of an uncontrolled dialog. Default `false`. */
|
|
2504
|
+
defaultOpen?: boolean;
|
|
2505
|
+
/** Called with the next open state — on the hotkey, the close button, Escape and the backdrop. */
|
|
2506
|
+
onOpenChange?: (open: boolean) => void;
|
|
2507
|
+
/** Overrides of the copy the dialog renders (W5-22). */
|
|
2508
|
+
messages?: Partial<KeyboardShortcutsMessages>;
|
|
1814
2509
|
}
|
|
1815
|
-
declare function KeyboardShortcutsDialog({ sections, hotkey, }?: KeyboardShortcutsDialogProps): react_jsx_runtime.JSX.Element;
|
|
2510
|
+
declare function KeyboardShortcutsDialog({ sections, hotkey, open: controlledOpen, defaultOpen, onOpenChange, messages: messagesProp, }?: KeyboardShortcutsDialogProps): react_jsx_runtime.JSX.Element;
|
|
1816
2511
|
|
|
1817
2512
|
declare const labelVariants: (props?: class_variance_authority_types.ClassProp | undefined) => string;
|
|
1818
2513
|
interface LabelProps extends React$1.ComponentPropsWithoutRef<typeof LabelPrimitive.Root>, VariantProps<typeof labelVariants> {
|
|
1819
2514
|
required?: boolean;
|
|
1820
2515
|
}
|
|
2516
|
+
/**
|
|
2517
|
+
* The label of a form control. On its own, a `<label>` that names the
|
|
2518
|
+
* control `htmlFor` points to. Inside a `Field` (W4-01, target architecture
|
|
2519
|
+
* §24) it binds itself: `htmlFor` is the field's control id, `id` is the id a
|
|
2520
|
+
* non-native control references through `aria-labelledby`, `required` and
|
|
2521
|
+
* `optional` come from the field, and a click focuses a control that
|
|
2522
|
+
* `htmlFor` cannot reach (a `div` editor). Explicit props win.
|
|
2523
|
+
*/
|
|
1821
2524
|
declare const Label: React$1.ForwardRefExoticComponent<LabelProps & React$1.RefAttributes<HTMLLabelElement>>;
|
|
1822
2525
|
|
|
1823
2526
|
interface LinkButtonProps$1 extends Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, "href">, ButtonIconProps {
|
|
@@ -1845,7 +2548,7 @@ interface LinkButtonProps$1 extends Omit<React.AnchorHTMLAttributes<HTMLAnchorEl
|
|
|
1845
2548
|
children: React.ReactNode;
|
|
1846
2549
|
className?: string;
|
|
1847
2550
|
/**
|
|
1848
|
-
* Render a native `<a>` instead of
|
|
2551
|
+
* Render a native `<a>` instead of the router link. Use for:
|
|
1849
2552
|
* - cross-origin URLs (e.g. https://other-app.example/sign-in)
|
|
1850
2553
|
* - same-origin `/api/*` route handlers that 302-redirect off-app
|
|
1851
2554
|
* (next/link tries to client-route, which doesn't follow the 302)
|
|
@@ -1871,7 +2574,10 @@ interface LinkButtonProps$1 extends Omit<React.AnchorHTMLAttributes<HTMLAnchorEl
|
|
|
1871
2574
|
* Shares `buttonVariants` so styling stays in lock-step: the same `variant`
|
|
1872
2575
|
* + `intent` axes and the same legacy aliases (W3-02).
|
|
1873
2576
|
*
|
|
1874
|
-
* - Default: renders `
|
|
2577
|
+
* - Default: renders the provider's `linkComponent` (W5-21, ADR-010) when a
|
|
2578
|
+
* `DesignSystemProvider` supplies one, else `next/link` (client-routed
|
|
2579
|
+
* internal navigation). The static `next/link` import stays until 2.0
|
|
2580
|
+
* (C-NEXT-PEER), so a Next.js app without a provider is unchanged.
|
|
1875
2581
|
* - `external`: renders a native `<a>` so the browser handles the request
|
|
1876
2582
|
* end-to-end. Required for cross-origin URLs and same-origin `/api/*`
|
|
1877
2583
|
* handlers that 302 off-app.
|
|
@@ -1900,7 +2606,7 @@ interface LoadingRowsProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
|
1900
2606
|
gap?: string;
|
|
1901
2607
|
/** Override the row Skeleton className (radius, width, etc). */
|
|
1902
2608
|
rowClassName?: string;
|
|
1903
|
-
/** Accessible label announced to screen readers. */
|
|
2609
|
+
/** Accessible label announced to screen readers. Default `messages.loadingRows.loading` (`"Loading"`). */
|
|
1904
2610
|
label?: string;
|
|
1905
2611
|
}
|
|
1906
2612
|
declare const LoadingRows: React$1.ForwardRefExoticComponent<LoadingRowsProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
@@ -1918,6 +2624,11 @@ declare const LoadingRows: React$1.ForwardRefExoticComponent<LoadingRowsProps &
|
|
|
1918
2624
|
* - `productName` (the suffix text; `null` renders just "Assure")
|
|
1919
2625
|
* - `className`, `iconClassName`, `textClassName` (style overrides)
|
|
1920
2626
|
*
|
|
2627
|
+
* The link and the wordmark image are the provider's `linkComponent` /
|
|
2628
|
+
* `imageComponent` when a `DesignSystemProvider` supplies them (W5-21,
|
|
2629
|
+
* ADR-010), else `next/link` / `next/image`; the static imports stay until 2.0
|
|
2630
|
+
* (C-NEXT-PEER), so a Next.js app without a provider is unchanged.
|
|
2631
|
+
*
|
|
1921
2632
|
* By default the lockup is a link (`href="/"`). Pass `href={null}` to render a
|
|
1922
2633
|
* non-interactive `<span>` wrapper instead — required when embedding the lockup
|
|
1923
2634
|
* inside another interactive element (a menu trigger `<button>`, a
|
|
@@ -2044,27 +2755,99 @@ declare namespace MultiSelectField {
|
|
|
2044
2755
|
var displayName: string;
|
|
2045
2756
|
}
|
|
2046
2757
|
|
|
2758
|
+
/**
|
|
2759
|
+
* Props of `NumberInput`. Everything a text `<input>` takes except the
|
|
2760
|
+
* value-shaped attributes the component owns (`value`, `defaultValue`,
|
|
2761
|
+
* `onChange`, `type`, `min`, `max`, `step`, `size`).
|
|
2762
|
+
*
|
|
2763
|
+
* @experimental
|
|
2764
|
+
*/
|
|
2765
|
+
interface NumberInputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, "value" | "defaultValue" | "onChange" | "type" | "min" | "max" | "step" | "size"> {
|
|
2766
|
+
/** The controlled value; `null` is an empty field. */
|
|
2767
|
+
value?: number | null;
|
|
2768
|
+
/** The initial value while uncontrolled. */
|
|
2769
|
+
defaultValue?: number | null;
|
|
2770
|
+
/** Called with the new value on every change; `null` when the field is emptied. */
|
|
2771
|
+
onValueChange?: (value: number | null) => void;
|
|
2772
|
+
/**
|
|
2773
|
+
* The BCP 47 locale the value is formatted and parsed in: this prop, else
|
|
2774
|
+
* `DesignSystemProvider locale`, else `"en-US"` on the server and the client
|
|
2775
|
+
* alike (A3) — never `navigator.language`.
|
|
2776
|
+
*/
|
|
2777
|
+
locale?: string;
|
|
2778
|
+
/** `Intl.NumberFormat` options: fraction digits, `style: "currency"`, `style: "percent"`, … */
|
|
2779
|
+
formatOptions?: Intl.NumberFormatOptions;
|
|
2780
|
+
/** The lowest committed value; ArrowDown and Home stop here. */
|
|
2781
|
+
min?: number;
|
|
2782
|
+
/** The highest committed value; ArrowUp and End stop here. */
|
|
2783
|
+
max?: number;
|
|
2784
|
+
/** The increment of the arrow keys. Default `1`. */
|
|
2785
|
+
step?: number;
|
|
2786
|
+
/** The control scale (`--control-*-<size>`). Default `md`. */
|
|
2787
|
+
size?: ControlSize;
|
|
2788
|
+
/**
|
|
2789
|
+
* `default` draws the field border; `ghost` draws none until focused. The
|
|
2790
|
+
* words are `ControlChromeVariant` (`behavior/control-chrome.ts`), spelled
|
|
2791
|
+
* out so the public declaration names no unexported type.
|
|
2792
|
+
*/
|
|
2793
|
+
variant?: "default" | "ghost";
|
|
2794
|
+
/** Marks the control invalid (`aria-invalid`, danger chrome); a surrounding `Field` can set it too. */
|
|
2795
|
+
invalid?: boolean;
|
|
2796
|
+
/** One class per part, keyed by `NumberInputSlot`. `root` is the `<input>`, the element `className` lands on too. */
|
|
2797
|
+
classNames?: Partial<Record<NumberInputSlot, string>>;
|
|
2798
|
+
}
|
|
2799
|
+
/**
|
|
2800
|
+
* The design-system number field: a locale-formatted `number | null` that
|
|
2801
|
+
* submits its canonical value and reads as a spinbutton.
|
|
2802
|
+
*
|
|
2803
|
+
* @experimental
|
|
2804
|
+
*/
|
|
2805
|
+
declare const NumberInput: React$1.ForwardRefExoticComponent<NumberInputProps & React$1.RefAttributes<HTMLInputElement>>;
|
|
2806
|
+
|
|
2807
|
+
/**
|
|
2808
|
+
* Props of `OTPInput`.
|
|
2809
|
+
*
|
|
2810
|
+
* @experimental The Field / form additions of W4-23 (`onValueChange`,
|
|
2811
|
+
* `required`, `form`, `invalid`, an optional `name`) are experimental; the
|
|
2812
|
+
* legacy props keep their contract.
|
|
2813
|
+
*/
|
|
2047
2814
|
interface OTPInputProps {
|
|
2048
|
-
name:
|
|
2815
|
+
/** The form field name. Optional since W4-23: a surrounding `Field` can supply it. */
|
|
2816
|
+
name?: string;
|
|
2049
2817
|
length?: number;
|
|
2050
2818
|
error?: string;
|
|
2819
|
+
/**
|
|
2820
|
+
* Move focus into the code on mount. Opt-in: only for a screen whose one
|
|
2821
|
+
* purpose is the code (step-up auth, post-redirect verification), never in
|
|
2822
|
+
* a form with other fields. Documented in the `AutoFocus` story.
|
|
2823
|
+
*/
|
|
2051
2824
|
autoFocus?: boolean;
|
|
2052
2825
|
className?: string;
|
|
2053
2826
|
defaultValue?: string;
|
|
2054
2827
|
/** Optional controlled value (additive). */
|
|
2055
2828
|
value?: string;
|
|
2056
|
-
/** Optional controlled onChange (additive). */
|
|
2829
|
+
/** Optional controlled onChange (additive). Fires with the same string as `onValueChange`. */
|
|
2057
2830
|
onChange?: (value: string) => void;
|
|
2831
|
+
/** Called with the new code on every change (ADR-006 spelling). */
|
|
2832
|
+
onValueChange?: (value: string) => void;
|
|
2058
2833
|
/** Optional callback fired when all slots are filled (additive). */
|
|
2059
2834
|
onComplete?: (value: string) => void;
|
|
2060
2835
|
/** Optional id for the underlying input (additive). */
|
|
2061
2836
|
id?: string;
|
|
2062
2837
|
/** Optional disabled flag (additive). */
|
|
2063
2838
|
disabled?: boolean;
|
|
2064
|
-
/**
|
|
2839
|
+
/** Block native submission while the code is empty. */
|
|
2840
|
+
required?: boolean;
|
|
2841
|
+
/** `id` of the form to submit with when the input is rendered outside it. */
|
|
2842
|
+
form?: string;
|
|
2843
|
+
/** Marks the input invalid without a message of its own; `error` and a `Field` can set it too. */
|
|
2844
|
+
invalid?: boolean;
|
|
2845
|
+
/** Accessible label for the underlying one-time-code input. A `Field` label takes precedence. */
|
|
2065
2846
|
"aria-label"?: string;
|
|
2847
|
+
"aria-labelledby"?: string;
|
|
2848
|
+
"aria-describedby"?: string;
|
|
2066
2849
|
}
|
|
2067
|
-
declare function OTPInput({ name, length, error, autoFocus, className, defaultValue, value, onChange, onComplete, id, disabled, "aria-label": ariaLabel, }: OTPInputProps): react_jsx_runtime.JSX.Element;
|
|
2850
|
+
declare function OTPInput({ name, length, error, autoFocus, className, defaultValue, value: valueProp, onChange, onValueChange, onComplete, id, disabled, required, form, invalid, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, "aria-describedby": ariaDescribedBy, }: OTPInputProps): react_jsx_runtime.JSX.Element;
|
|
2068
2851
|
declare namespace OTPInput {
|
|
2069
2852
|
var displayName: string;
|
|
2070
2853
|
}
|
|
@@ -2078,6 +2861,8 @@ interface PaginationProps extends React.HTMLAttributes<HTMLElement> {
|
|
|
2078
2861
|
totalItems?: number;
|
|
2079
2862
|
/** Items per page — used with totalItems for range display */
|
|
2080
2863
|
pageSize?: number;
|
|
2864
|
+
/** Overrides of the copy the pager renders (W5-22): prop > provider `messages.pagination` > English. */
|
|
2865
|
+
messages?: Partial<PaginationMessages>;
|
|
2081
2866
|
}
|
|
2082
2867
|
declare const Pagination: React$1.ForwardRefExoticComponent<PaginationProps & React$1.RefAttributes<HTMLElement>>;
|
|
2083
2868
|
|
|
@@ -2142,14 +2927,6 @@ interface PdfPreviewProps extends React.HTMLAttributes<HTMLDivElement>, VariantP
|
|
|
2142
2927
|
}
|
|
2143
2928
|
declare const PdfPreview: React$1.ForwardRefExoticComponent<PdfPreviewProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
2144
2929
|
|
|
2145
|
-
type InputProps = React.ComponentProps<typeof Input>;
|
|
2146
|
-
interface PhoneInputProps extends Omit<InputProps, "type" | "onChange" | "value" | "defaultValue"> {
|
|
2147
|
-
value?: string;
|
|
2148
|
-
defaultValue?: string;
|
|
2149
|
-
onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
|
|
2150
|
-
}
|
|
2151
|
-
declare const PhoneInput: React$1.ForwardRefExoticComponent<Omit<PhoneInputProps, "ref"> & React$1.RefAttributes<HTMLInputElement>>;
|
|
2152
|
-
|
|
2153
2930
|
interface CountryCode {
|
|
2154
2931
|
iso: string;
|
|
2155
2932
|
name: string;
|
|
@@ -2171,14 +2948,93 @@ declare function parsePhoneForEditing(phone: string): {
|
|
|
2171
2948
|
localPhone: string;
|
|
2172
2949
|
};
|
|
2173
2950
|
|
|
2951
|
+
declare const DEFAULT_PHONE_FIELD_MESSAGES: PhoneFieldMessages;
|
|
2952
|
+
/** What `onValueChange` is told besides the E.164 value. @experimental */
|
|
2953
|
+
interface PhoneFieldChangeDetails {
|
|
2954
|
+
/** The ISO 3166-1 alpha-2 code of the picked country. */
|
|
2955
|
+
country: string;
|
|
2956
|
+
/** The national digits as typed, without the dial code. */
|
|
2957
|
+
nationalNumber: string;
|
|
2958
|
+
}
|
|
2959
|
+
/**
|
|
2960
|
+
* Props of `PhoneField`. Everything a `tel` `<input>` takes except the
|
|
2961
|
+
* value-shaped attributes the component owns.
|
|
2962
|
+
*
|
|
2963
|
+
* @experimental
|
|
2964
|
+
*/
|
|
2965
|
+
interface PhoneFieldProps extends Omit<InputHTMLAttributes<HTMLInputElement>, "value" | "defaultValue" | "onChange" | "type" | "size"> {
|
|
2966
|
+
/** The controlled E.164 value; `null` (or `""`) is an empty field. */
|
|
2967
|
+
value?: string | null;
|
|
2968
|
+
/** The initial E.164 value while uncontrolled. */
|
|
2969
|
+
defaultValue?: string | null;
|
|
2970
|
+
/** Called with the E.164 value on every change; `null` when the number is emptied. */
|
|
2971
|
+
onValueChange?: (value: string | null, details: PhoneFieldChangeDetails) => void;
|
|
2972
|
+
/**
|
|
2973
|
+
* The controlled country (ISO 3166-1 alpha-2). Without `onCountryChange`
|
|
2974
|
+
* the country is fixed and the picker is not rendered.
|
|
2975
|
+
*/
|
|
2976
|
+
country?: string;
|
|
2977
|
+
/** The initial country while uncontrolled. Default `"US"`. */
|
|
2978
|
+
defaultCountry?: string;
|
|
2979
|
+
onCountryChange?: (country: string) => void;
|
|
2980
|
+
/** The countries offered. Default: every entry of `COUNTRY_CODES`. */
|
|
2981
|
+
countries?: readonly CountryCode[];
|
|
2982
|
+
/** The control scale (`--control-*-<size>`). Default `md`. */
|
|
2983
|
+
size?: ControlSize;
|
|
2984
|
+
/**
|
|
2985
|
+
* `default` draws the field border; `ghost` draws none until focused. The
|
|
2986
|
+
* words are `ControlChromeVariant` (`behavior/control-chrome.ts`).
|
|
2987
|
+
*/
|
|
2988
|
+
variant?: "default" | "ghost";
|
|
2989
|
+
/** Marks the control invalid (`aria-invalid`, danger chrome); a surrounding `Field` can set it too. */
|
|
2990
|
+
invalid?: boolean;
|
|
2991
|
+
messages?: Partial<PhoneFieldMessages>;
|
|
2992
|
+
/** One class per part, keyed by `PhoneFieldSlot`. `root` is the row, the element `className` lands on too. */
|
|
2993
|
+
classNames?: Partial<Record<PhoneFieldSlot, string>>;
|
|
2994
|
+
}
|
|
2995
|
+
/**
|
|
2996
|
+
* The design-system phone field: a country picker beside a national number,
|
|
2997
|
+
* one E.164 value.
|
|
2998
|
+
*
|
|
2999
|
+
* @experimental
|
|
3000
|
+
*/
|
|
3001
|
+
declare const PhoneField: React$1.ForwardRefExoticComponent<PhoneFieldProps & React$1.RefAttributes<HTMLInputElement>>;
|
|
3002
|
+
|
|
3003
|
+
type InputProps = React.ComponentProps<typeof Input>;
|
|
3004
|
+
interface PhoneInputProps extends Omit<InputProps, "type" | "onChange" | "value" | "defaultValue"> {
|
|
3005
|
+
value?: string;
|
|
3006
|
+
defaultValue?: string;
|
|
3007
|
+
onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
|
|
3008
|
+
}
|
|
3009
|
+
/**
|
|
3010
|
+
* @deprecated Use `PhoneField` (`country="US"` for the fixed-country mode;
|
|
3011
|
+
* `value` is E.164). Removed in 3.0.
|
|
3012
|
+
*/
|
|
3013
|
+
declare const PhoneInput: React$1.ForwardRefExoticComponent<Omit<PhoneInputProps, "ref"> & React$1.RefAttributes<HTMLInputElement>>;
|
|
3014
|
+
|
|
3015
|
+
/**
|
|
3016
|
+
* The legacy flag: the same 20×14 box and ISO fallback as before, drawn from
|
|
3017
|
+
* `PhoneField`'s lazily loaded flag set (a same-size placeholder until it
|
|
3018
|
+
* lands).
|
|
3019
|
+
*
|
|
3020
|
+
* @deprecated Use `PhoneField`'s `CountryFlag`. Removed in 3.0.
|
|
3021
|
+
*/
|
|
2174
3022
|
declare function CountryFlag({ iso }: {
|
|
2175
3023
|
iso: string;
|
|
2176
3024
|
}): react_jsx_runtime.JSX.Element;
|
|
3025
|
+
/**
|
|
3026
|
+
* @deprecated Use `PhoneField` (its country picker is a `Combobox`). Removed
|
|
3027
|
+
* in 3.0.
|
|
3028
|
+
*/
|
|
2177
3029
|
declare function CountrySelect({ value, onChange, disabled, }: {
|
|
2178
3030
|
value: string;
|
|
2179
3031
|
onChange: (iso: string) => void;
|
|
2180
3032
|
disabled?: boolean;
|
|
2181
3033
|
}): react_jsx_runtime.JSX.Element;
|
|
3034
|
+
/**
|
|
3035
|
+
* @deprecated Use `PhoneField`: one E.164 `value` / `onValueChange`, Field
|
|
3036
|
+
* binding and form submission built in. Removed in 3.0.
|
|
3037
|
+
*/
|
|
2182
3038
|
declare function PhoneCountryInput({ countryIso, localPhone, onCountryChange, onPhoneChange, placeholder, error, disabled, id, }: {
|
|
2183
3039
|
countryIso: string;
|
|
2184
3040
|
localPhone: string;
|
|
@@ -2190,12 +3046,35 @@ declare function PhoneCountryInput({ countryIso, localPhone, onCountryChange, on
|
|
|
2190
3046
|
id?: string;
|
|
2191
3047
|
}): react_jsx_runtime.JSX.Element;
|
|
2192
3048
|
|
|
3049
|
+
/** How wide a `PopoverContent` is. @experimental */
|
|
3050
|
+
type PopoverWidth = FloatingWidth;
|
|
3051
|
+
/** Inner padding of a `PopoverContent`. @experimental */
|
|
3052
|
+
type PopoverPadding = FloatingPadding;
|
|
2193
3053
|
declare const Popover: React$1.FC<PopoverPrimitive.PopoverProps>;
|
|
2194
3054
|
declare const PopoverTrigger: React$1.ForwardRefExoticComponent<PopoverPrimitive.PopoverTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
2195
3055
|
declare const PopoverAnchor: React$1.ForwardRefExoticComponent<PopoverPrimitive.PopoverAnchorProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
2196
3056
|
declare const PopoverPortal: React$1.FC<PopoverPrimitive.PopoverPortalProps>;
|
|
2197
3057
|
declare const PopoverClose: React$1.ForwardRefExoticComponent<PopoverPrimitive.PopoverCloseProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
2198
|
-
|
|
3058
|
+
interface PopoverContentProps extends React$1.ComponentPropsWithoutRef<typeof PopoverPrimitive.Content> {
|
|
3059
|
+
/**
|
|
3060
|
+
* The width of the surface. `md` (default, 18rem) is what the popover
|
|
3061
|
+
* always rendered; `auto` sizes to the content, `trigger` matches the
|
|
3062
|
+
* element that opened it, `sm` and `lg` are 16rem and 24rem. Replaces the
|
|
3063
|
+
* `w-*` class consumers wrote on `className`.
|
|
3064
|
+
*
|
|
3065
|
+
* @experimental
|
|
3066
|
+
*/
|
|
3067
|
+
width?: PopoverWidth;
|
|
3068
|
+
/**
|
|
3069
|
+
* Inner padding of the surface. `md` (default) is the `p-4` the popover
|
|
3070
|
+
* always rendered; `sm` is `p-3`; `none` lets the content pad itself (a
|
|
3071
|
+
* list, a form). Replaces the `p-*` class consumers wrote on `className`.
|
|
3072
|
+
*
|
|
3073
|
+
* @experimental
|
|
3074
|
+
*/
|
|
3075
|
+
padding?: PopoverPadding;
|
|
3076
|
+
}
|
|
3077
|
+
declare const PopoverContent: React$1.ForwardRefExoticComponent<PopoverContentProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
2199
3078
|
|
|
2200
3079
|
interface PressableProps extends React.ButtonHTMLAttributes<HTMLElement> {
|
|
2201
3080
|
/**
|
|
@@ -2365,10 +3244,27 @@ interface ProgressRingProps extends React.HTMLAttributes<HTMLDivElement>, Progre
|
|
|
2365
3244
|
}
|
|
2366
3245
|
declare const ProgressRing: React$1.ForwardRefExoticComponent<ProgressRingProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
2367
3246
|
|
|
2368
|
-
|
|
3247
|
+
/** How the items render: the bare radio (`plain`, default) or a selectable card. */
|
|
3248
|
+
type RadioGroupAppearance = "plain" | "card";
|
|
3249
|
+
interface RadioGroupProps extends React$1.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Root> {
|
|
3250
|
+
/** `card` renders each item as a bordered, clickable card with its label and description. */
|
|
3251
|
+
appearance?: RadioGroupAppearance;
|
|
3252
|
+
/**
|
|
3253
|
+
* The group is in error: `aria-invalid` and `data-invalid` on the group
|
|
3254
|
+
* and `aria-invalid` on every item. Implied by the surrounding `Field`'s
|
|
3255
|
+
* `invalid` or a mounted `FieldError`.
|
|
3256
|
+
*/
|
|
3257
|
+
invalid?: boolean;
|
|
3258
|
+
}
|
|
3259
|
+
declare const RadioGroup: React$1.ForwardRefExoticComponent<RadioGroupProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
2369
3260
|
interface RadioGroupItemProps extends React$1.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Item> {
|
|
2370
3261
|
/** Optional inline label rendered to the right of the radio */
|
|
2371
3262
|
label?: string;
|
|
3263
|
+
/**
|
|
3264
|
+
* Secondary text under the label, referenced by the radio through
|
|
3265
|
+
* `aria-describedby`. Rendered only with `appearance="card"` on the group.
|
|
3266
|
+
*/
|
|
3267
|
+
description?: React$1.ReactNode;
|
|
2372
3268
|
}
|
|
2373
3269
|
declare const RadioGroupItem: React$1.ForwardRefExoticComponent<RadioGroupItemProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
2374
3270
|
|
|
@@ -2399,16 +3295,29 @@ interface RankedBarsProps extends React.HTMLAttributes<HTMLUListElement> {
|
|
|
2399
3295
|
}
|
|
2400
3296
|
declare const RankedBars: React$1.ForwardRefExoticComponent<RankedBarsProps & React$1.RefAttributes<HTMLUListElement>>;
|
|
2401
3297
|
|
|
2402
|
-
|
|
2403
|
-
|
|
3298
|
+
/**
|
|
3299
|
+
* Props of `ResponsiveDialog`.
|
|
3300
|
+
*
|
|
3301
|
+
* @experimental
|
|
3302
|
+
*/
|
|
2404
3303
|
interface ResponsiveDialogProps {
|
|
2405
|
-
/** Controlled open state. */
|
|
2406
|
-
open
|
|
2407
|
-
/**
|
|
2408
|
-
|
|
2409
|
-
/**
|
|
2410
|
-
|
|
2411
|
-
/**
|
|
3304
|
+
/** Controlled open state. Omit it (with `defaultOpen` / `trigger`) for uncontrolled mode. */
|
|
3305
|
+
open?: boolean;
|
|
3306
|
+
/** Initial open state in uncontrolled mode. Default `false`. */
|
|
3307
|
+
defaultOpen?: boolean;
|
|
3308
|
+
/** Open-state change handler (fires on backdrop, Escape and close as well). */
|
|
3309
|
+
onOpenChange?: (open: boolean) => void;
|
|
3310
|
+
/**
|
|
3311
|
+
* The element that opens the dialog, rendered as the Radix trigger
|
|
3312
|
+
* (`asChild`), so focus returns to it on close. Useful in uncontrolled mode.
|
|
3313
|
+
*/
|
|
3314
|
+
trigger?: React$1.ReactNode;
|
|
3315
|
+
/**
|
|
3316
|
+
* The accessible name and visible heading. Required: a dialog without a
|
|
3317
|
+
* title is announced as "dialog" only (development error when missing).
|
|
3318
|
+
*/
|
|
3319
|
+
title: React$1.ReactNode;
|
|
3320
|
+
/** Supporting copy rendered under the title. */
|
|
2412
3321
|
description?: React$1.ReactNode;
|
|
2413
3322
|
/** Body content. */
|
|
2414
3323
|
children?: React$1.ReactNode;
|
|
@@ -2417,18 +3326,28 @@ interface ResponsiveDialogProps {
|
|
|
2417
3326
|
* callback (`() => onOpenChange(false)`) for self-dismissing buttons.
|
|
2418
3327
|
*/
|
|
2419
3328
|
footer?: React$1.ReactNode | ((close: () => void) => React$1.ReactNode);
|
|
2420
|
-
/** Class applied to the
|
|
3329
|
+
/** Class applied to the content surface (both presentations). */
|
|
2421
3330
|
className?: string;
|
|
2422
|
-
/**
|
|
2423
|
-
|
|
2424
|
-
|
|
3331
|
+
/**
|
|
3332
|
+
* The edge the small-viewport sheet slides in from. Only `bottom` is
|
|
3333
|
+
* rendered: the responsive presentation is a bottom sheet.
|
|
3334
|
+
*
|
|
3335
|
+
* @deprecated Ignored (development warning for a value other than
|
|
3336
|
+
* `bottom`). Removed in 3.0.
|
|
3337
|
+
*/
|
|
3338
|
+
side?: "top" | "right" | "bottom" | "left";
|
|
3339
|
+
/** Width step of the centred dialog. Default `md`. See `DialogSize`. */
|
|
2425
3340
|
size?: DialogSize;
|
|
2426
3341
|
}
|
|
2427
3342
|
/**
|
|
2428
|
-
*
|
|
2429
|
-
*
|
|
3343
|
+
* A bottom sheet on small viewports and a centred dialog from the `sm`
|
|
3344
|
+
* breakpoint, from one API: a thin wrapper over
|
|
3345
|
+
* `<Dialog><DialogContent presentation="responsive">` with the header and
|
|
3346
|
+
* footer parts filled from props.
|
|
3347
|
+
*
|
|
3348
|
+
* @experimental
|
|
2430
3349
|
*/
|
|
2431
|
-
declare function ResponsiveDialog({ open, onOpenChange, title, description, children, footer, className, side, size, }: ResponsiveDialogProps): react_jsx_runtime.JSX.Element;
|
|
3350
|
+
declare function ResponsiveDialog({ open, defaultOpen, onOpenChange, trigger, title, description, children, footer, className, side, size, }: ResponsiveDialogProps): react_jsx_runtime.JSX.Element;
|
|
2432
3351
|
declare namespace ResponsiveDialog {
|
|
2433
3352
|
var displayName: string;
|
|
2434
3353
|
}
|
|
@@ -2459,18 +3378,78 @@ interface ScrollAreaProps extends React$1.ComponentPropsWithoutRef<typeof Scroll
|
|
|
2459
3378
|
declare const ScrollArea: React$1.ForwardRefExoticComponent<ScrollAreaProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
2460
3379
|
declare const ScrollBar: React$1.ForwardRefExoticComponent<Omit<ScrollAreaPrimitive.ScrollAreaScrollbarProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
2461
3380
|
|
|
2462
|
-
|
|
2463
|
-
|
|
2464
|
-
|
|
2465
|
-
|
|
3381
|
+
/**
|
|
3382
|
+
* The size names a SearchInput knows (W4-07): the three steps Input's compat
|
|
3383
|
+
* rows cover, plus the 1.31 aliases (deprecated with `inputSize`).
|
|
3384
|
+
*
|
|
3385
|
+
* @experimental
|
|
3386
|
+
*/
|
|
3387
|
+
type SearchInputSize = Extract<ControlSize, "sm" | "md" | "lg"> | InputSizeAlias;
|
|
3388
|
+
|
|
3389
|
+
/**
|
|
3390
|
+
* What {@link searchInputVariants} takes: the size (either name — `size`
|
|
3391
|
+
* wins when both are given) and cva's class props.
|
|
3392
|
+
*
|
|
3393
|
+
* @experimental
|
|
3394
|
+
*/
|
|
3395
|
+
interface SearchInputVariantsOptions {
|
|
3396
|
+
size?: SearchInputSize | null;
|
|
3397
|
+
/**
|
|
3398
|
+
* The legacy size prop (C-INPUT-SIZE): today's rows, byte for byte.
|
|
3399
|
+
*
|
|
3400
|
+
* @deprecated Use `size`. Codemod CM-07 renames it.
|
|
3401
|
+
*/
|
|
3402
|
+
inputSize?: SearchInputSize | null;
|
|
3403
|
+
class?: string | null;
|
|
3404
|
+
className?: string | null;
|
|
3405
|
+
}
|
|
3406
|
+
/** The variant props of `searchInputVariants` (cva's `VariantProps` shape, kept for the API report). */
|
|
3407
|
+
type SearchInputVariants = Omit<SearchInputVariantsOptions, "class" | "className">;
|
|
3408
|
+
/**
|
|
3409
|
+
* The SearchInput class recipe (W4-07): the shared control chrome
|
|
3410
|
+
* (`behavior/control-chrome.ts`) in its `default` emphasis and no height
|
|
3411
|
+
* row, the native search-decoration reset, then the row of the size.
|
|
3412
|
+
*
|
|
3413
|
+
* Against the cva it replaces (W4-03 mapping, PR #199) the set of classes
|
|
3414
|
+
* gains the chrome's `aria-[invalid=true]` rows — inert until a caller sets
|
|
3415
|
+
* `aria-invalid` — and is otherwise identical for every legacy `inputSize`;
|
|
3416
|
+
* `border-rule-strong` moved after the base, which Tailwind does not read.
|
|
3417
|
+
* Server-safe.
|
|
3418
|
+
*
|
|
3419
|
+
* @experimental
|
|
3420
|
+
*/
|
|
3421
|
+
declare function searchInputVariants({ size, inputSize, class: classProp, className, }?: SearchInputVariantsOptions): string;
|
|
3422
|
+
/**
|
|
3423
|
+
* Props of `SearchInput` (W4-07).
|
|
3424
|
+
*
|
|
3425
|
+
* @experimental The name is exported since W4-07; the props it lists have been
|
|
3426
|
+
* stable since 1.x.
|
|
3427
|
+
*/
|
|
2466
3428
|
interface SearchInputProps extends Omit<React$1.InputHTMLAttributes<HTMLInputElement>, "type" | "onChange" | "size">, SearchInputVariants {
|
|
3429
|
+
/** The current query (controlled). */
|
|
2467
3430
|
value: string;
|
|
3431
|
+
/** Called with the new query on every keystroke and with `""` when cleared or the form resets. */
|
|
2468
3432
|
onValueChange: (value: string) => void;
|
|
3433
|
+
/** Called with the query once it has been stable for `debounceMs`. */
|
|
2469
3434
|
onSearch?: (value: string) => void;
|
|
3435
|
+
/** Default 300. */
|
|
2470
3436
|
debounceMs?: number;
|
|
3437
|
+
/** Overrides of the copy the component renders (English defaults). */
|
|
3438
|
+
messages?: Partial<SearchInputMessages>;
|
|
3439
|
+
/**
|
|
3440
|
+
* Classes per anatomy part (the `search-input-*` slots). The wrapper
|
|
3441
|
+
* is the root part and takes `className`, so it has no entry here.
|
|
3442
|
+
*/
|
|
3443
|
+
classNames?: Partial<Record<Exclude<SearchInputSlot, "root">, string>>;
|
|
2471
3444
|
}
|
|
3445
|
+
/**
|
|
3446
|
+
* A search field. The control is a native `<input type="search">`
|
|
3447
|
+
* (`role="searchbox"`); name it with `aria-label`, or through a `Field`,
|
|
3448
|
+
* which it binds to with `useFieldControl`.
|
|
3449
|
+
*/
|
|
2472
3450
|
declare const SearchInput: React$1.ForwardRefExoticComponent<SearchInputProps & React$1.RefAttributes<HTMLInputElement>>;
|
|
2473
3451
|
|
|
3452
|
+
/** @deprecated Use `Combobox` with `Option` (`{ value, label }`). Removed in 3.0 (C-SEARCHSELECT, CM-08). */
|
|
2474
3453
|
interface SearchSelectOption {
|
|
2475
3454
|
id: string;
|
|
2476
3455
|
label: string;
|
|
@@ -2504,6 +3483,7 @@ interface SearchSelectOption {
|
|
|
2504
3483
|
*/
|
|
2505
3484
|
description?: string;
|
|
2506
3485
|
}
|
|
3486
|
+
/** @deprecated Use `ComboboxProps`. Removed in 3.0 (C-SEARCHSELECT, CM-08). */
|
|
2507
3487
|
interface SearchSelectProps {
|
|
2508
3488
|
options: SearchSelectOption[];
|
|
2509
3489
|
/**
|
|
@@ -2566,8 +3546,22 @@ interface SearchSelectProps {
|
|
|
2566
3546
|
* reads as a tag instead of running into the label. Single-mode only.
|
|
2567
3547
|
*/
|
|
2568
3548
|
descriptionVariant?: "inline" | "pill";
|
|
3549
|
+
/** The accessible name (W4-12). Without it, `placeholder` names the input as before. */
|
|
3550
|
+
"aria-label"?: string;
|
|
3551
|
+
/** Names the input from another element, for example a visible label (W4-12). */
|
|
3552
|
+
"aria-labelledby"?: string;
|
|
3553
|
+
"aria-describedby"?: string;
|
|
3554
|
+
/** The input's id, so a `<label htmlFor>` can point at it (W4-12). */
|
|
3555
|
+
id?: string;
|
|
2569
3556
|
}
|
|
2570
|
-
|
|
3557
|
+
/**
|
|
3558
|
+
* @deprecated Use `Combobox` (single: `value` / `onValueChange` with `null` for
|
|
3559
|
+
* empty; multi: `multiple` with `TValue[]`) and the `Option` shape
|
|
3560
|
+
* (`{ value, label }`). `SearchSelect` is an adapter over it and is removed in
|
|
3561
|
+
* 3.0 (compatibility registry C-SEARCHSELECT); codemod CM-08 rewrites call
|
|
3562
|
+
* sites and flags the ones a human must look at.
|
|
3563
|
+
*/
|
|
3564
|
+
declare function SearchSelect({ options, selected: selectedProp, onSelect: onSelectProp, onRemove: onRemoveProp, value, onValueChange, onCreate, placeholder: placeholderProp, className, disabled, groupFilter, pinnedGroups, closeOnSelect: closeOnSelectProp, showGroupCounts, onCreateNew, createNewLabel: createNewLabelProp, descriptionVariant, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, "aria-describedby": ariaDescribedBy, id, }: SearchSelectProps): react_jsx_runtime.JSX.Element;
|
|
2571
3565
|
declare namespace SearchSelect {
|
|
2572
3566
|
var displayName: string;
|
|
2573
3567
|
}
|
|
@@ -2645,10 +3639,53 @@ declare const SegmentedProgress: React$1.ForwardRefExoticComponent<SegmentedProg
|
|
|
2645
3639
|
declare const SelectRoot: React$1.FC<SelectPrimitive.SelectProps>;
|
|
2646
3640
|
declare const SelectGroup: React$1.ForwardRefExoticComponent<SelectPrimitive.SelectGroupProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
2647
3641
|
declare const SelectValue: React$1.ForwardRefExoticComponent<SelectPrimitive.SelectValueProps & React$1.RefAttributes<HTMLSpanElement>>;
|
|
2648
|
-
|
|
3642
|
+
/**
|
|
3643
|
+
* The Select sizes: the shared control scale, nothing else (A1, ADR-013).
|
|
3644
|
+
*
|
|
3645
|
+
* @experimental
|
|
3646
|
+
*/
|
|
3647
|
+
type SelectSize = ControlSize;
|
|
3648
|
+
/**
|
|
3649
|
+
* The parts a `classNames` entry can reach on the options-driven `Select`,
|
|
3650
|
+
* keyed by the anatomy (ADR-008 decision 4). `value` is a span of ours
|
|
3651
|
+
* around Radix's value (Radix's own span drops `className`), rendered only
|
|
3652
|
+
* when `classNames.value` or `clearable` asks for it, so a legacy call keeps
|
|
3653
|
+
* the `SelectTrigger > span` structure C-DOM-10 freezes.
|
|
3654
|
+
*
|
|
3655
|
+
* @experimental
|
|
3656
|
+
*/
|
|
3657
|
+
type SelectClassNames = Partial<Record<SelectSlot, string>>;
|
|
3658
|
+
|
|
3659
|
+
/**
|
|
3660
|
+
* Props of `SelectTrigger`: Radix's trigger props plus the control-scale
|
|
3661
|
+
* `size` and a class for the chevron.
|
|
3662
|
+
*
|
|
3663
|
+
* @experimental `size` and `classNames`
|
|
3664
|
+
*/
|
|
3665
|
+
interface SelectTriggerProps extends React$1.ComponentPropsWithoutRef<typeof SelectPrimitive.Trigger> {
|
|
3666
|
+
/**
|
|
3667
|
+
* Height, horizontal padding, label size, gap and glyph size from the shared
|
|
3668
|
+
* control scale (A1). Omitted, the trigger keeps its legacy geometry (36px,
|
|
3669
|
+
* the same pixels as `md`).
|
|
3670
|
+
*/
|
|
3671
|
+
size?: SelectSize | null;
|
|
3672
|
+
/** Classes for the parts the trigger renders itself: the chevron `icon`. */
|
|
3673
|
+
classNames?: Pick<SelectClassNames, "icon">;
|
|
3674
|
+
}
|
|
3675
|
+
declare const SelectTrigger: React$1.ForwardRefExoticComponent<SelectTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
2649
3676
|
declare const SelectScrollUpButton: React$1.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectScrollUpButtonProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
2650
3677
|
declare const SelectScrollDownButton: React$1.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectScrollDownButtonProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
2651
|
-
|
|
3678
|
+
/**
|
|
3679
|
+
* Props of `SelectContent`: Radix's content props plus a class for the
|
|
3680
|
+
* viewport (C-DOM-19's `[data-radix-select-viewport]` selector replacement).
|
|
3681
|
+
*
|
|
3682
|
+
* @experimental `classNames`
|
|
3683
|
+
*/
|
|
3684
|
+
interface SelectContentProps extends React$1.ComponentPropsWithoutRef<typeof SelectPrimitive.Content> {
|
|
3685
|
+
/** Classes for the parts the content renders itself: the scrolling `viewport`. */
|
|
3686
|
+
classNames?: Pick<SelectClassNames, "viewport">;
|
|
3687
|
+
}
|
|
3688
|
+
declare const SelectContent: React$1.ForwardRefExoticComponent<SelectContentProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
2652
3689
|
declare const SelectLabel: React$1.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectLabelProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
2653
3690
|
declare const SelectItem: React$1.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectItemProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
2654
3691
|
declare const SelectSeparator: React$1.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectSeparatorProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
@@ -2665,26 +3702,104 @@ interface SelectOption {
|
|
|
2665
3702
|
interface SelectProps {
|
|
2666
3703
|
/** Option list. Required to preserve legacy API. */
|
|
2667
3704
|
options: SelectOption[];
|
|
2668
|
-
/**
|
|
2669
|
-
|
|
2670
|
-
|
|
2671
|
-
|
|
3705
|
+
/**
|
|
3706
|
+
* Controlled value. `null` is "nothing selected" (target architecture §32);
|
|
3707
|
+
* `""` means the same and stays accepted through 2.x (C-SELECT-EMPTY).
|
|
3708
|
+
*/
|
|
3709
|
+
value?: string | null;
|
|
3710
|
+
/** Uncontrolled initial value; restored on form reset. `null` = nothing selected. */
|
|
3711
|
+
defaultValue?: string | null;
|
|
3712
|
+
/**
|
|
3713
|
+
* Called with the picked option's value, and with `""` when the selection
|
|
3714
|
+
* is cleared (`clearable`) — the signature every existing handler already
|
|
3715
|
+
* has. Reporting `null` is a 3.0 change (C-SELECT-EMPTY).
|
|
3716
|
+
*/
|
|
2672
3717
|
onValueChange?: (value: string) => void;
|
|
2673
3718
|
placeholder?: string;
|
|
2674
|
-
/**
|
|
3719
|
+
/**
|
|
3720
|
+
* @deprecated NO-OP: Radix Select cannot filter. Use `Combobox` (or
|
|
3721
|
+
* `SearchSelect`) for filterable selection. Warns once in development;
|
|
3722
|
+
* removed in 2.0 (C-SELECT-DEAD, codemod CM-11).
|
|
3723
|
+
*/
|
|
2675
3724
|
searchable?: boolean;
|
|
2676
3725
|
disabled?: boolean;
|
|
3726
|
+
/**
|
|
3727
|
+
* Submit the value under this name through the form the trigger sits in
|
|
3728
|
+
* (or `form`). Inside a `<Field name>` the field's name applies.
|
|
3729
|
+
*/
|
|
2677
3730
|
name?: string;
|
|
3731
|
+
/**
|
|
3732
|
+
* Block native submission while nothing is selected; the trigger carries
|
|
3733
|
+
* `aria-required`. Inside a `<Field required>` the field's flag applies.
|
|
3734
|
+
*/
|
|
2678
3735
|
required?: boolean;
|
|
3736
|
+
/**
|
|
3737
|
+
* The `id` of the form to submit with when the trigger is rendered outside
|
|
3738
|
+
* it — inside a portalled Dialog or Sheet (ADR-006).
|
|
3739
|
+
*
|
|
3740
|
+
* @experimental
|
|
3741
|
+
*/
|
|
3742
|
+
form?: string;
|
|
3743
|
+
/**
|
|
3744
|
+
* The trigger's `id`; inside a `<Field>` the field's control id applies.
|
|
3745
|
+
*
|
|
3746
|
+
* @experimental
|
|
3747
|
+
*/
|
|
3748
|
+
id?: string;
|
|
3749
|
+
/**
|
|
3750
|
+
* The control scale (A1, ADR-013): `xs` 28 · `sm` 32 · `md` 36 · `lg` 40 ·
|
|
3751
|
+
* `xl` 48. Omitted, the trigger keeps its legacy 36px row; a `<Field size>`
|
|
3752
|
+
* supplies it.
|
|
3753
|
+
*
|
|
3754
|
+
* @experimental
|
|
3755
|
+
*/
|
|
3756
|
+
size?: SelectSize;
|
|
3757
|
+
/**
|
|
3758
|
+
* Show a clear button beside the chevron while a value is selected. Clearing
|
|
3759
|
+
* reports `""` through `onValueChange` and focuses the trigger. Renders the
|
|
3760
|
+
* `root` part (`data-slot="select"`) around the trigger — `className` lands
|
|
3761
|
+
* on that wrapper then, `classNames.trigger` on the trigger.
|
|
3762
|
+
*
|
|
3763
|
+
* @experimental
|
|
3764
|
+
*/
|
|
3765
|
+
clearable?: boolean;
|
|
3766
|
+
/**
|
|
3767
|
+
* The outermost element's class: the trigger, or the `root` wrapper when
|
|
3768
|
+
* `clearable`.
|
|
3769
|
+
*/
|
|
2679
3770
|
className?: string;
|
|
2680
|
-
/**
|
|
3771
|
+
/**
|
|
3772
|
+
* One class per part (ADR-008 decision 4): `trigger`, `value`, `icon`
|
|
3773
|
+
* (chevron), `content`, `viewport`, `item`, `clear`, `root`. Each part's
|
|
3774
|
+
* class comes after the design system's own and before `className`.
|
|
3775
|
+
* `value` wraps Radix's value span in one of ours (see `SelectClassNames`).
|
|
3776
|
+
*
|
|
3777
|
+
* @experimental
|
|
3778
|
+
*/
|
|
3779
|
+
classNames?: SelectClassNames;
|
|
3780
|
+
/** Overrides of the copy the select renders (English defaults until W5-20). */
|
|
3781
|
+
messages?: Partial<SelectMessages>;
|
|
3782
|
+
/**
|
|
3783
|
+
* @deprecated Use `classNames.trigger` (C-CLASSNAME-PROPS, codemod CM-11).
|
|
3784
|
+
* Removed in 3.0.
|
|
3785
|
+
*/
|
|
2681
3786
|
triggerClassName?: string;
|
|
2682
|
-
/**
|
|
3787
|
+
/**
|
|
3788
|
+
* @deprecated Use `classNames.content` (C-CLASSNAME-PROPS, codemod CM-11).
|
|
3789
|
+
* Removed in 3.0.
|
|
3790
|
+
*/
|
|
2683
3791
|
contentClassName?: string;
|
|
2684
|
-
/** aria-invalid + danger styling on trigger. */
|
|
3792
|
+
/** aria-invalid + danger styling on trigger. Inside a `<Field invalid>` the field's flag applies. */
|
|
2685
3793
|
"aria-invalid"?: boolean;
|
|
2686
|
-
/**
|
|
3794
|
+
/**
|
|
3795
|
+
* aria-label fallback when there is no visible label. Inside a `<Field>`
|
|
3796
|
+
* with a `Label` the trigger is named by the label instead.
|
|
3797
|
+
*/
|
|
2687
3798
|
"aria-label"?: string;
|
|
3799
|
+
/** Explicit `aria-labelledby`; wins over the surrounding `Field`. */
|
|
3800
|
+
"aria-labelledby"?: string;
|
|
3801
|
+
/** Explicit `aria-describedby`; appended after the field's description and error. */
|
|
3802
|
+
"aria-describedby"?: string;
|
|
2688
3803
|
}
|
|
2689
3804
|
/**
|
|
2690
3805
|
* Convenience `Select` — preserved options-driven API.
|
|
@@ -2700,15 +3815,48 @@ interface SelectProps {
|
|
|
2700
3815
|
* </SelectContent>
|
|
2701
3816
|
* </SelectRoot>
|
|
2702
3817
|
*/
|
|
2703
|
-
declare function Select({ options, value, defaultValue, onValueChange, placeholder, searchable, disabled, name, required, className, triggerClassName, contentClassName, "aria-invalid": ariaInvalid, "aria-label": ariaLabel, }: SelectProps): react_jsx_runtime.JSX.Element;
|
|
3818
|
+
declare function Select({ options, value: valueProp, defaultValue: defaultValueProp, onValueChange, placeholder: placeholderProp, searchable, disabled: disabledProp, name: nameProp, required: requiredProp, form, id: idProp, size: sizeProp, clearable, className, classNames, messages, triggerClassName, contentClassName, "aria-invalid": ariaInvalid, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, "aria-describedby": ariaDescribedBy, }: SelectProps): react_jsx_runtime.JSX.Element;
|
|
2704
3819
|
declare namespace Select {
|
|
2705
3820
|
var displayName: string;
|
|
2706
3821
|
}
|
|
2707
3822
|
|
|
2708
3823
|
declare const Separator: React$1.ForwardRefExoticComponent<Omit<SeparatorPrimitive.SeparatorProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
2709
3824
|
|
|
2710
|
-
|
|
2711
|
-
|
|
3825
|
+
/**
|
|
3826
|
+
* The edge a `Sheet` slides in from.
|
|
3827
|
+
*
|
|
3828
|
+
* @experimental
|
|
3829
|
+
*/
|
|
3830
|
+
type SheetSide = "top" | "right" | "bottom" | "left";
|
|
3831
|
+
type Side = SheetSide;
|
|
3832
|
+
/**
|
|
3833
|
+
* Width of a left/right `SheetContent`, as a step of the sheet width scale
|
|
3834
|
+
* (W5-07): `sm` 420px · `md` 520px · `lg` 640px · `xl` 760px from the `sm`
|
|
3835
|
+
* breakpoint (95vw below it) · `full` the viewport. Omitted, the panel keeps
|
|
3836
|
+
* its 1.x geometry (`w-3/4 max-w-sm`). Every step and the default yield to
|
|
3837
|
+
* `--ds-sheet-width` when a consumer sets it. Top/bottom sheets span the
|
|
3838
|
+
* viewport and ignore it.
|
|
3839
|
+
*
|
|
3840
|
+
* @experimental
|
|
3841
|
+
*/
|
|
3842
|
+
type SheetSize = "sm" | "md" | "lg" | "xl" | "full";
|
|
3843
|
+
/**
|
|
3844
|
+
* What the deprecated `width` prop accepts: the size steps plus `default`.
|
|
3845
|
+
*
|
|
3846
|
+
* @deprecated Use `size` (C-SHEET-WIDTH, codemod CM-11). Removed in 3.0.
|
|
3847
|
+
* @experimental
|
|
3848
|
+
*/
|
|
3849
|
+
type SheetWidth = "default" | SheetSize;
|
|
3850
|
+
/**
|
|
3851
|
+
* The copy a `Sheet` renders (target architecture §24.5). English defaults
|
|
3852
|
+
* until the messages contract of the provider lands (W5-20).
|
|
3853
|
+
*
|
|
3854
|
+
* @experimental
|
|
3855
|
+
*/
|
|
3856
|
+
interface SheetMessages {
|
|
3857
|
+
/** The accessible name of the built-in close button. Default `"Close"`. */
|
|
3858
|
+
close: string;
|
|
3859
|
+
}
|
|
2712
3860
|
interface SheetProps extends React$1.ComponentPropsWithoutRef<typeof DialogPrimitive.Root> {
|
|
2713
3861
|
/**
|
|
2714
3862
|
* Default side for SheetContent if it doesn't specify its own.
|
|
@@ -2725,47 +3873,95 @@ declare const SheetTrigger: React$1.ForwardRefExoticComponent<DialogPrimitive.Di
|
|
|
2725
3873
|
declare const SheetClose: React$1.ForwardRefExoticComponent<DialogPrimitive.DialogCloseProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
2726
3874
|
declare const SheetPortal: React$1.FC<DialogPrimitive.DialogPortalProps>;
|
|
2727
3875
|
declare const SheetOverlay: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogOverlayProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
|
|
2728
|
-
|
|
2729
|
-
|
|
2730
|
-
|
|
2731
|
-
|
|
3876
|
+
/**
|
|
3877
|
+
* Props of `SheetContent`: Radix's content props plus the side, the sizing
|
|
3878
|
+
* and the dismiss options.
|
|
3879
|
+
*
|
|
3880
|
+
* @experimental
|
|
3881
|
+
*/
|
|
3882
|
+
interface SheetContentProps extends React$1.ComponentPropsWithoutRef<typeof DialogPrimitive.Content> {
|
|
3883
|
+
/** The edge the panel slides in from. Default `right` (or the `Sheet` root's `side`). */
|
|
3884
|
+
side?: SheetSide | null;
|
|
3885
|
+
/**
|
|
3886
|
+
* Width step for left/right sheets. Omit for the 1.x geometry
|
|
3887
|
+
* (`w-3/4 max-w-sm`). See {@link SheetSize}.
|
|
3888
|
+
*/
|
|
3889
|
+
size?: SheetSize;
|
|
2732
3890
|
/** If false, the built-in close button is hidden. Default: true. */
|
|
2733
3891
|
showCloseButton?: boolean;
|
|
2734
3892
|
/**
|
|
2735
|
-
*
|
|
2736
|
-
*
|
|
3893
|
+
* The accessible name of the built-in close button. Takes precedence over
|
|
3894
|
+
* `messages.close`. Default `"Close"`.
|
|
3895
|
+
*/
|
|
3896
|
+
closeLabel?: string;
|
|
3897
|
+
/** Overrides of the copy the sheet renders (English defaults until W5-20). */
|
|
3898
|
+
messages?: Partial<SheetMessages>;
|
|
3899
|
+
/**
|
|
3900
|
+
* Width preset for left/right sheets — the same steps as `size`, plus
|
|
3901
|
+
* `default`. When both are given `size` wins.
|
|
3902
|
+
*
|
|
3903
|
+
* @deprecated Use `size` (C-SHEET-WIDTH, codemod CM-11). Removed in 3.0.
|
|
2737
3904
|
*/
|
|
2738
3905
|
width?: SheetWidth;
|
|
2739
3906
|
/**
|
|
2740
|
-
* Custom CSS width for left/right sheets, e.g. `"520px"
|
|
2741
|
-
*
|
|
2742
|
-
*
|
|
3907
|
+
* Custom CSS width for left/right sheets, e.g. `"520px"`, rendered as an
|
|
3908
|
+
* inline `width` with `max-width: 95vw`.
|
|
3909
|
+
*
|
|
3910
|
+
* @deprecated Set the `--ds-sheet-width` custom property instead
|
|
3911
|
+
* (C-SHEET-WIDTH, codemod CM-11). Removed in 3.0.
|
|
2743
3912
|
*/
|
|
2744
3913
|
customWidth?: string;
|
|
2745
3914
|
}
|
|
2746
3915
|
declare const SheetContent: React$1.ForwardRefExoticComponent<SheetContentProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
2747
3916
|
declare const SheetHeader: {
|
|
2748
|
-
(
|
|
3917
|
+
(props: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime.JSX.Element;
|
|
2749
3918
|
displayName: string;
|
|
2750
3919
|
};
|
|
3920
|
+
/**
|
|
3921
|
+
* Props of `SheetBody` (W5-07).
|
|
3922
|
+
*
|
|
3923
|
+
* @experimental
|
|
3924
|
+
*/
|
|
3925
|
+
interface SheetBodyProps extends React$1.HTMLAttributes<HTMLDivElement> {
|
|
3926
|
+
/**
|
|
3927
|
+
* Horizontal padding, matching the header's and footer's `p-6` at `md`
|
|
3928
|
+
* (the default). The panel's own `gap-4` spaces the parts vertically.
|
|
3929
|
+
*/
|
|
3930
|
+
padding?: "none" | "sm" | "md" | "lg";
|
|
3931
|
+
}
|
|
3932
|
+
/**
|
|
3933
|
+
* The scroll region of a sheet between `SheetHeader` and `SheetFooter`
|
|
3934
|
+
* (W5-07): takes the remaining height of the panel and scrolls on its own,
|
|
3935
|
+
* so the header and the footer stay in place.
|
|
3936
|
+
*
|
|
3937
|
+
* @experimental
|
|
3938
|
+
*/
|
|
3939
|
+
declare const SheetBody: React$1.ForwardRefExoticComponent<SheetBodyProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
2751
3940
|
declare const SheetFooter: {
|
|
2752
|
-
(
|
|
3941
|
+
(props: React$1.HTMLAttributes<HTMLDivElement>): react_jsx_runtime.JSX.Element;
|
|
2753
3942
|
displayName: string;
|
|
2754
3943
|
};
|
|
2755
3944
|
declare const SheetTitle: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogTitleProps & React$1.RefAttributes<HTMLHeadingElement>, "ref"> & React$1.RefAttributes<HTMLHeadingElement>>;
|
|
2756
3945
|
declare const SheetDescription: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogDescriptionProps & React$1.RefAttributes<HTMLParagraphElement>, "ref"> & React$1.RefAttributes<HTMLParagraphElement>>;
|
|
2757
3946
|
|
|
2758
|
-
|
|
2759
|
-
|
|
2760
|
-
|
|
2761
|
-
|
|
2762
|
-
|
|
3947
|
+
type SideDrawerWidth = "sm" | "md" | "lg";
|
|
3948
|
+
type SideDrawerSide = "right" | "left";
|
|
3949
|
+
/**
|
|
3950
|
+
* Props of `SideDrawer`.
|
|
3951
|
+
*
|
|
3952
|
+
* @deprecated Use `Sheet` (`SheetContent side size`, `SheetHeader`,
|
|
3953
|
+
* `SheetBody`, `SheetFooter`, `onOpenChange`); codemod CM-09. Removed in 3.0.
|
|
3954
|
+
*/
|
|
3955
|
+
interface SideDrawerProps {
|
|
2763
3956
|
open: boolean;
|
|
2764
3957
|
onClose: () => void;
|
|
2765
|
-
width?:
|
|
2766
|
-
side?:
|
|
3958
|
+
width?: SideDrawerWidth;
|
|
3959
|
+
side?: SideDrawerSide;
|
|
2767
3960
|
children: React$1.ReactNode;
|
|
2768
3961
|
}
|
|
3962
|
+
/**
|
|
3963
|
+
* @deprecated Use `Sheet` (C-SIDEDRAWER, codemod CM-09). Removed in 3.0.
|
|
3964
|
+
*/
|
|
2769
3965
|
declare function SideDrawer({ open, onClose, width, side, children, }: SideDrawerProps): react_jsx_runtime.JSX.Element;
|
|
2770
3966
|
declare namespace SideDrawer {
|
|
2771
3967
|
var Header: typeof SideDrawerHeader;
|
|
@@ -2790,11 +3986,6 @@ interface SideDrawerFooterProps {
|
|
|
2790
3986
|
}
|
|
2791
3987
|
declare function SideDrawerFooter({ children, className }: SideDrawerFooterProps): react_jsx_runtime.JSX.Element;
|
|
2792
3988
|
|
|
2793
|
-
/**
|
|
2794
|
-
* Skeleton — animated placeholder. The `.skeleton` global class supplies
|
|
2795
|
-
* the shimmer animation (defined in tokens.css). All three primitives are
|
|
2796
|
-
* `aria-hidden` because they're decorative loading affordances.
|
|
2797
|
-
*/
|
|
2798
3989
|
interface SkeletonProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
2799
3990
|
className?: string;
|
|
2800
3991
|
}
|
|
@@ -2808,11 +3999,42 @@ interface SkeletonCircleProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
|
2808
3999
|
}
|
|
2809
4000
|
declare const SkeletonCircle: React$1.ForwardRefExoticComponent<SkeletonCircleProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
2810
4001
|
|
|
4002
|
+
/**
|
|
4003
|
+
* Slider — a Radix slider with the design system's track and thumb (W4-16,
|
|
4004
|
+
* plan §16.1).
|
|
4005
|
+
*
|
|
4006
|
+
* **Form participation** is Radix's own (ADR-006 §1): the thumb is paired
|
|
4007
|
+
* with a hidden native input carrying `name` (`name[]` for a range), the
|
|
4008
|
+
* current value, `disabled` and `form`, so `FormData` holds the number as a
|
|
4009
|
+
* string. Radix Slider does not follow a form `reset`; the wrapper does
|
|
4010
|
+
* (`useFormReset`), restoring `defaultValue`.
|
|
4011
|
+
*
|
|
4012
|
+
* **Field binding** through `useFieldControl`: inside a `Field` the thumb
|
|
4013
|
+
* (the focusable `role="slider"`) references the `Label` through
|
|
4014
|
+
* `aria-labelledby` and the description / error through `aria-describedby`;
|
|
4015
|
+
* `name`, `disabled` and `invalid` come from the field. Explicit props win.
|
|
4016
|
+
* Outside a field the thumb is named by `aria-label`, the `label` sugar, or
|
|
4017
|
+
* "Slider value".
|
|
4018
|
+
*
|
|
4019
|
+
* **Sizes** (`size`, own geometry per plan §2.1): `md` (default) is today's
|
|
4020
|
+
* 6px track and 16px thumb; `sm` and `lg` read the control scale's glyph
|
|
4021
|
+
* tokens for the thumb (`--control-icon-sm` 14px, `--control-icon-xl` 20px)
|
|
4022
|
+
* with a 4px / 8px track.
|
|
4023
|
+
*/
|
|
4024
|
+
/** The slider sizes: the component's own geometry, `md` is today's. */
|
|
4025
|
+
type SliderSize = Extract<ControlSize, "sm" | "md" | "lg">;
|
|
2811
4026
|
interface SliderProps extends React$1.ComponentPropsWithoutRef<typeof SliderPrimitive.Root> {
|
|
2812
|
-
/** Optional inline label rendered above the track */
|
|
4027
|
+
/** Optional inline label rendered above the track. Names the thumb. */
|
|
2813
4028
|
label?: string;
|
|
2814
4029
|
/** When true, renders the current value to the right of the label */
|
|
2815
4030
|
showValue?: boolean;
|
|
4031
|
+
/** Track and thumb geometry. Default `md` (today's 6px track, 16px thumb). */
|
|
4032
|
+
size?: SliderSize;
|
|
4033
|
+
/**
|
|
4034
|
+
* The slider is in error: `aria-invalid` on the thumb and `data-invalid`
|
|
4035
|
+
* on the root. Implied by the surrounding `Field`'s `invalid`.
|
|
4036
|
+
*/
|
|
4037
|
+
invalid?: boolean;
|
|
2816
4038
|
}
|
|
2817
4039
|
declare const Slider: React$1.ForwardRefExoticComponent<SliderProps & React$1.RefAttributes<HTMLSpanElement>>;
|
|
2818
4040
|
|
|
@@ -3258,8 +4480,18 @@ declare const SuiteProgress: React$1.ForwardRefExoticComponent<SuiteProgressProp
|
|
|
3258
4480
|
declare const switchVariants: (props?: ({
|
|
3259
4481
|
size?: "sm" | "md" | null | undefined;
|
|
3260
4482
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
4483
|
+
/** The switch sizes: the component's own geometry (`sm` 20×36, `md` 24×44). */
|
|
4484
|
+
type SwitchSize = NonNullable<VariantProps<typeof switchVariants>["size"]>;
|
|
3261
4485
|
interface SwitchProps extends Omit<React$1.ComponentPropsWithoutRef<typeof SwitchPrimitive.Root>, "size">, VariantProps<typeof switchVariants> {
|
|
4486
|
+
/** Optional inline label rendered to the right of the track. Names the button through `htmlFor`. */
|
|
3262
4487
|
label?: string;
|
|
4488
|
+
/** The value submitted with `name` while on. Default `"on"`, like a native checkbox. */
|
|
4489
|
+
value?: string;
|
|
4490
|
+
/**
|
|
4491
|
+
* The switch is in error: `aria-invalid` and `data-invalid`. Implied by the
|
|
4492
|
+
* surrounding `Field`'s `invalid` or a mounted `FieldError`.
|
|
4493
|
+
*/
|
|
4494
|
+
invalid?: boolean;
|
|
3263
4495
|
}
|
|
3264
4496
|
declare const Switch: React$1.ForwardRefExoticComponent<SwitchProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
3265
4497
|
|
|
@@ -3310,18 +4542,96 @@ declare function TeamMemberSelect({ teamMembers, currentUserId, value, onValueCh
|
|
|
3310
4542
|
declare namespace TeamMemberSelect {
|
|
3311
4543
|
var displayName: string;
|
|
3312
4544
|
}
|
|
3313
|
-
|
|
3314
|
-
|
|
3315
|
-
|
|
3316
|
-
|
|
3317
|
-
|
|
3318
|
-
|
|
4545
|
+
|
|
4546
|
+
/**
|
|
4547
|
+
* The emphases a Textarea offers: the shared chrome's `default` and `ghost`
|
|
4548
|
+
* (spelled out, as on Input, so the public declaration names no unexported
|
|
4549
|
+
* symbol; the `satisfies` keeps it in step with the recipe).
|
|
4550
|
+
*
|
|
4551
|
+
* @experimental
|
|
4552
|
+
*/
|
|
4553
|
+
type TextareaVariant = "default" | "ghost";
|
|
4554
|
+
/**
|
|
4555
|
+
* The size names a Textarea knows (W4-06): the three steps that have a
|
|
4556
|
+
* `--textarea-min-height-<size>` token (64 / 80 / 96px). A textarea grows
|
|
4557
|
+
* with its content, so `size` is a *minimum* height, not the outer height
|
|
4558
|
+
* the shared scale promises (`baselines/size-geometry.json` keeps Textarea
|
|
4559
|
+
* out of A1 on purpose). Padding and text stay on today's steps until D5.
|
|
4560
|
+
*
|
|
4561
|
+
* @experimental
|
|
4562
|
+
*/
|
|
4563
|
+
type TextareaSize = Extract<ControlSize, "sm" | "md" | "lg">;
|
|
4564
|
+
/**
|
|
4565
|
+
* What {@link textareaVariants} takes: the emphasis, the size (either name —
|
|
4566
|
+
* `size` wins when both are given) and cva's class props.
|
|
4567
|
+
*
|
|
4568
|
+
* @experimental
|
|
4569
|
+
*/
|
|
4570
|
+
interface TextareaVariantsOptions {
|
|
4571
|
+
variant?: TextareaVariant | null;
|
|
4572
|
+
size?: TextareaSize | null;
|
|
4573
|
+
/**
|
|
4574
|
+
* The legacy size prop (C-INPUT-SIZE): today's rows, byte for byte.
|
|
4575
|
+
*
|
|
4576
|
+
* @deprecated Use `size`. Codemod CM-07 renames it.
|
|
4577
|
+
*/
|
|
4578
|
+
inputSize?: TextareaSize | null;
|
|
4579
|
+
class?: string | null;
|
|
4580
|
+
className?: string | null;
|
|
4581
|
+
}
|
|
4582
|
+
/** The variant props of `textareaVariants` (cva's `VariantProps` shape, kept for the API report). */
|
|
4583
|
+
type TextareaVariants = Omit<TextareaVariantsOptions, "class" | "className">;
|
|
4584
|
+
/**
|
|
4585
|
+
* The Textarea class recipe (W4-06): the shared control chrome
|
|
4586
|
+
* (`behavior/control-chrome.ts`) with the emphasis and no height row, then
|
|
4587
|
+
* the `min-height` row of the size.
|
|
4588
|
+
*
|
|
4589
|
+
* Against the cva it replaces the set of classes differs in one place, on
|
|
4590
|
+
* purpose (W4-03 mapping, PR #199): the motion string is the shared
|
|
4591
|
+
* `microInteractions.control` — same transitioned properties, the feedback
|
|
4592
|
+
* duration token (the same 150ms `--duration-fast` was) and the `enter`
|
|
4593
|
+
* easing where the copy declared none. `tests/browser/textarea-parity.test.tsx`
|
|
4594
|
+
* holds every other computed property equal under each host fixture.
|
|
4595
|
+
* Server-safe.
|
|
4596
|
+
*
|
|
4597
|
+
* @experimental
|
|
4598
|
+
*/
|
|
4599
|
+
declare function textareaVariants({ variant, size, inputSize, class: classProp, className, }?: TextareaVariantsOptions): string;
|
|
4600
|
+
/**
|
|
4601
|
+
* Props of `Textarea` (W4-06).
|
|
4602
|
+
*
|
|
4603
|
+
* @experimental The name is exported since W4-06; the props it lists have been
|
|
4604
|
+
* stable since 1.x.
|
|
4605
|
+
*/
|
|
3319
4606
|
interface TextareaProps extends Omit<React.TextareaHTMLAttributes<HTMLTextAreaElement>, "size">, TextareaVariants {
|
|
4607
|
+
/** Sugar for the field label, bound through the field wiring (`htmlFor`/`id`). */
|
|
3320
4608
|
label?: string;
|
|
4609
|
+
/** Sugar for the hint text under the control, referenced before `error` in `aria-describedby`. */
|
|
4610
|
+
description?: string;
|
|
4611
|
+
/** Sugar for the error message: linked through `aria-describedby`, marks the control invalid. */
|
|
3321
4612
|
error?: string;
|
|
4613
|
+
/** The value is invalid without a message to show. Implied by `error`. */
|
|
4614
|
+
invalid?: boolean;
|
|
4615
|
+
/** Show `<length>/<maxLength>` under the control. Needs `maxLength`. */
|
|
3322
4616
|
showCount?: boolean;
|
|
4617
|
+
/** Grow with the content instead of scrolling. */
|
|
3323
4618
|
autoResize?: boolean;
|
|
4619
|
+
/** Called with the new string value on every change, next to `onChange`. */
|
|
4620
|
+
onValueChange?: (value: string) => void;
|
|
4621
|
+
/**
|
|
4622
|
+
* Classes per anatomy part (the `textarea-*` slots). The `<textarea>`
|
|
4623
|
+
* is the root part and takes `className` (C-INPUT-CLASSNAME), so it has no
|
|
4624
|
+
* entry here.
|
|
4625
|
+
*/
|
|
4626
|
+
classNames?: Partial<Record<Exclude<TextareaSlot, "root">, string>>;
|
|
4627
|
+
/** Classes for the outer wrapper (transitional, C-INPUT-CLASSNAME — see `Input`). */
|
|
4628
|
+
rootClassName?: string;
|
|
3324
4629
|
}
|
|
4630
|
+
/**
|
|
4631
|
+
* A multi-line text field. The control is a native `<textarea>`; inside a
|
|
4632
|
+
* `Field` it binds itself through `useFieldControl`, and the
|
|
4633
|
+
* `label` / `description` / `error` sugar renders the same wiring around it.
|
|
4634
|
+
*/
|
|
3325
4635
|
declare const Textarea: React$1.ForwardRefExoticComponent<TextareaProps & React$1.RefAttributes<HTMLTextAreaElement>>;
|
|
3326
4636
|
|
|
3327
4637
|
type ToastVariant = "default" | "success" | "destructive" | "warning" | "info" | "loading";
|
|
@@ -3365,16 +4675,49 @@ interface ToastContextValue {
|
|
|
3365
4675
|
}) => Promise<T>;
|
|
3366
4676
|
}
|
|
3367
4677
|
declare function useToast(): ToastContextValue;
|
|
4678
|
+
|
|
3368
4679
|
interface ToastProviderProps {
|
|
3369
4680
|
children: React.ReactNode;
|
|
4681
|
+
/**
|
|
4682
|
+
* Overrides of the copy the region and its toasts render (the region's
|
|
4683
|
+
* accessible name, the dismiss button). Default English; the provider's
|
|
4684
|
+
* `messages.toast` applies below it.
|
|
4685
|
+
*/
|
|
4686
|
+
messages?: Partial<ToastMessages>;
|
|
3370
4687
|
}
|
|
3371
|
-
declare function ToastProvider({ children }: ToastProviderProps): react_jsx_runtime.JSX.Element;
|
|
4688
|
+
declare function ToastProvider({ children, messages: messagesProp }: ToastProviderProps): react_jsx_runtime.JSX.Element;
|
|
3372
4689
|
|
|
3373
4690
|
declare const itemVariants: (props?: ({
|
|
3374
4691
|
variant?: "outline" | "default" | null | undefined;
|
|
3375
4692
|
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
3376
|
-
|
|
3377
|
-
|
|
4693
|
+
/** The toggle-group sizes: the shared control scale (A1). */
|
|
4694
|
+
type ToggleGroupSize = ControlSize;
|
|
4695
|
+
/** The item's look: bare (`default`) or with a border (`outline`). */
|
|
4696
|
+
type ToggleGroupVariant = NonNullable<VariantProps<typeof itemVariants>["variant"]>;
|
|
4697
|
+
type RadixRootProps = React$1.ComponentPropsWithoutRef<typeof ToggleGroupPrimitive.Root>;
|
|
4698
|
+
/** The props every group shares, whatever its `type`. */
|
|
4699
|
+
interface ToggleGroupFormProps extends VariantProps<typeof itemVariants> {
|
|
4700
|
+
/** Outer height from the shared control scale (A1). Omitted: today's geometry. */
|
|
4701
|
+
size?: ToggleGroupSize;
|
|
4702
|
+
/** The form field name. Without it the group does not take part in a form. */
|
|
4703
|
+
name?: string;
|
|
4704
|
+
/** `id` of the form to submit with when the group is rendered outside it. */
|
|
4705
|
+
form?: string;
|
|
4706
|
+
/** Block native submission while nothing is pressed. */
|
|
4707
|
+
required?: boolean;
|
|
4708
|
+
/**
|
|
4709
|
+
* The group is in error: `aria-invalid` and `data-invalid`. Implied by the
|
|
4710
|
+
* surrounding `Field`'s `invalid` or a mounted `FieldError`.
|
|
4711
|
+
*/
|
|
4712
|
+
invalid?: boolean;
|
|
4713
|
+
/**
|
|
4714
|
+
* Single groups only: submit `name=""` while nothing is pressed (`true`,
|
|
4715
|
+
* the default and what a Select does) or omit the entry (`false`).
|
|
4716
|
+
*/
|
|
4717
|
+
submitEmpty?: boolean;
|
|
4718
|
+
}
|
|
4719
|
+
type ToggleGroupProps = RadixRootProps & ToggleGroupFormProps;
|
|
4720
|
+
declare const ToggleGroup: React$1.ForwardRefExoticComponent<ToggleGroupProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
3378
4721
|
interface ToggleGroupItemProps extends React$1.ComponentPropsWithoutRef<typeof ToggleGroupPrimitive.Item>, VariantProps<typeof itemVariants> {
|
|
3379
4722
|
}
|
|
3380
4723
|
declare const ToggleGroupItem: React$1.ForwardRefExoticComponent<ToggleGroupItemProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
@@ -3418,13 +4761,16 @@ declare const TooltipTrigger: React$1.ForwardRefExoticComponent<TooltipPrimitive
|
|
|
3418
4761
|
declare const TooltipPortal: React$1.FC<TooltipPrimitive.TooltipPortalProps>;
|
|
3419
4762
|
interface TooltipProps extends React$1.ComponentPropsWithoutRef<typeof TooltipPrimitive.Root> {
|
|
3420
4763
|
/**
|
|
3421
|
-
*
|
|
3422
|
-
*
|
|
4764
|
+
* Alias of Radix's `delayDuration`. `delayDuration` wins when both are
|
|
4765
|
+
* given. Contract C-TOOLTIP-DELAY, removed in 3.0; codemod CM-13 renames it.
|
|
4766
|
+
*
|
|
4767
|
+
* @deprecated Use `delayDuration`.
|
|
3423
4768
|
*/
|
|
3424
4769
|
delayMs?: number;
|
|
3425
4770
|
/**
|
|
3426
|
-
*
|
|
3427
|
-
*
|
|
4771
|
+
* How long the pointer rests on the trigger before the tooltip opens, in
|
|
4772
|
+
* milliseconds. Default: the surrounding provider's (`DesignSystemProvider
|
|
4773
|
+
* tooltip.delayDuration`), or 300 without one.
|
|
3428
4774
|
*/
|
|
3429
4775
|
delayDuration?: number;
|
|
3430
4776
|
}
|
|
@@ -3432,7 +4778,20 @@ declare const Tooltip: {
|
|
|
3432
4778
|
({ delayMs, delayDuration, children, ...props }: TooltipProps): react_jsx_runtime.JSX.Element;
|
|
3433
4779
|
displayName: string;
|
|
3434
4780
|
};
|
|
3435
|
-
|
|
4781
|
+
/**
|
|
4782
|
+
* How wide a `TooltipContent` may grow before its text wraps. `xs` (20rem)
|
|
4783
|
+
* is what the tooltip always rendered; `sm` and `md` are 24rem and 28rem for
|
|
4784
|
+
* multi-line help; `none` lets the text set the width. Replaces the `max-w-*`
|
|
4785
|
+
* class consumers wrote on `className` (a third of them today).
|
|
4786
|
+
*
|
|
4787
|
+
* @experimental
|
|
4788
|
+
*/
|
|
4789
|
+
type TooltipMaxWidth = "xs" | "sm" | "md" | "none";
|
|
4790
|
+
interface TooltipContentProps extends React$1.ComponentPropsWithoutRef<typeof TooltipPrimitive.Content> {
|
|
4791
|
+
/** See {@link TooltipMaxWidth}. Default `xs`. @experimental */
|
|
4792
|
+
maxWidth?: TooltipMaxWidth;
|
|
4793
|
+
}
|
|
4794
|
+
declare const TooltipContent: React$1.ForwardRefExoticComponent<TooltipContentProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
3436
4795
|
|
|
3437
4796
|
/**
|
|
3438
4797
|
* VisuallyHidden — hides content from sighted users while keeping it
|
|
@@ -4007,6 +5366,440 @@ declare function resolveChipStyle({ variant, intent, pressed, }: {
|
|
|
4007
5366
|
*/
|
|
4008
5367
|
declare const Chip: React$1.ForwardRefExoticComponent<ChipProps & React$1.RefAttributes<HTMLElement>>;
|
|
4009
5368
|
|
|
5369
|
+
/**
|
|
5370
|
+
* How a `Field` lays out its parts: stacked (`vertical`, the default) or on
|
|
5371
|
+
* one row (`horizontal`: settings rows, Switch and Checkbox rows).
|
|
5372
|
+
*
|
|
5373
|
+
* @experimental
|
|
5374
|
+
*/
|
|
5375
|
+
type FieldOrientation = "vertical" | "horizontal";
|
|
5376
|
+
|
|
5377
|
+
/**
|
|
5378
|
+
* Props of `Field`.
|
|
5379
|
+
*
|
|
5380
|
+
* @experimental
|
|
5381
|
+
*/
|
|
5382
|
+
interface FieldProps extends HTMLAttributes<HTMLDivElement> {
|
|
5383
|
+
/**
|
|
5384
|
+
* The control's id and the base of every part id (`<id>-label`,
|
|
5385
|
+
* `<id>-description`, `<id>-error`). Generated with `useId` when omitted.
|
|
5386
|
+
*/
|
|
5387
|
+
id?: string;
|
|
5388
|
+
/** The control's `name`, when the control does not set its own. */
|
|
5389
|
+
name?: string;
|
|
5390
|
+
/**
|
|
5391
|
+
* The field is in error: the control gets `aria-invalid` and
|
|
5392
|
+
* `data-invalid`. Implied by a mounted `FieldError` with content.
|
|
5393
|
+
*/
|
|
5394
|
+
invalid?: boolean;
|
|
5395
|
+
/**
|
|
5396
|
+
* The value is required: a native control gets `required`, any other
|
|
5397
|
+
* `aria-required`; the `Label` shows the asterisk.
|
|
5398
|
+
*/
|
|
5399
|
+
required?: boolean;
|
|
5400
|
+
/** The value is optional: the `Label` shows the `optional` message after the text. */
|
|
5401
|
+
optional?: boolean;
|
|
5402
|
+
/** Propagated to the control. */
|
|
5403
|
+
disabled?: boolean;
|
|
5404
|
+
/** Propagated to the control. */
|
|
5405
|
+
readOnly?: boolean;
|
|
5406
|
+
/** Stacked (`vertical`, default) or on one row (`horizontal`). */
|
|
5407
|
+
orientation?: FieldOrientation;
|
|
5408
|
+
/** The control size the field's controls read (from W4-05). */
|
|
5409
|
+
size?: ControlSize;
|
|
5410
|
+
/** Overrides of the copy the field renders (English defaults until W5-20). */
|
|
5411
|
+
messages?: Partial<FieldMessages>;
|
|
5412
|
+
children?: ReactNode;
|
|
5413
|
+
}
|
|
5414
|
+
/**
|
|
5415
|
+
* One form control with its label, description and error (target
|
|
5416
|
+
* architecture §24.1). Renders a `div` with the field anatomy and puts the
|
|
5417
|
+
* wiring in context.
|
|
5418
|
+
*
|
|
5419
|
+
* @experimental
|
|
5420
|
+
*/
|
|
5421
|
+
declare const Field: React$1.ForwardRefExoticComponent<FieldProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
5422
|
+
/**
|
|
5423
|
+
* Props of `FieldDescription`.
|
|
5424
|
+
*
|
|
5425
|
+
* @experimental
|
|
5426
|
+
*/
|
|
5427
|
+
type FieldDescriptionProps = HTMLAttributes<HTMLParagraphElement>;
|
|
5428
|
+
/**
|
|
5429
|
+
* Hint text for the field's control, referenced first in the control's
|
|
5430
|
+
* `aria-describedby`. Registers itself, so an unmounted description is not
|
|
5431
|
+
* referenced.
|
|
5432
|
+
*
|
|
5433
|
+
* @experimental
|
|
5434
|
+
*/
|
|
5435
|
+
declare const FieldDescription: React$1.ForwardRefExoticComponent<FieldDescriptionProps & React$1.RefAttributes<HTMLParagraphElement>>;
|
|
5436
|
+
/**
|
|
5437
|
+
* Props of `FieldError`.
|
|
5438
|
+
*
|
|
5439
|
+
* @experimental
|
|
5440
|
+
*/
|
|
5441
|
+
type FieldErrorProps = HTMLAttributes<HTMLParagraphElement>;
|
|
5442
|
+
/**
|
|
5443
|
+
* The field's error message, referenced after the description in the
|
|
5444
|
+
* control's `aria-describedby`; a mounted error with content also makes the
|
|
5445
|
+
* field invalid. Renders nothing (and registers nothing) without content, so
|
|
5446
|
+
* `<FieldError>{error}</FieldError>` is the whole call site.
|
|
5447
|
+
*
|
|
5448
|
+
* Announcement (target architecture §24.1): an error that appears after the
|
|
5449
|
+
* field is on screen — after an interaction — is a `role="alert"` live
|
|
5450
|
+
* region, announced once when it mounts and again when its text changes. An
|
|
5451
|
+
* error rendered with the field (server-rendered validation results, the
|
|
5452
|
+
* first client paint) is plain text: it is read with the control through
|
|
5453
|
+
* `aria-describedby`, not shouted on page load. Pass `role` to override.
|
|
5454
|
+
*
|
|
5455
|
+
* @experimental
|
|
5456
|
+
*/
|
|
5457
|
+
declare const FieldError: React$1.ForwardRefExoticComponent<FieldErrorProps & React$1.RefAttributes<HTMLParagraphElement>>;
|
|
5458
|
+
|
|
5459
|
+
/**
|
|
5460
|
+
* L1b (W2-19 scaffolding, public since W4-02). The integration contract of
|
|
5461
|
+
* target architecture §24.2: a control asks for its wiring and never knows
|
|
5462
|
+
* about labels. Explicit props always win over the surrounding `Field`, and a
|
|
5463
|
+
* control outside a field keeps working.
|
|
5464
|
+
*
|
|
5465
|
+
* Every design-system form control calls this hook (from W4-05 on). It is
|
|
5466
|
+
* public for product-built controls — a rich-text editor, an annotation
|
|
5467
|
+
* editor — that want the same binding; `FieldControl` is the same contract as
|
|
5468
|
+
* a Slot for a control that is already a component.
|
|
5469
|
+
*/
|
|
5470
|
+
/**
|
|
5471
|
+
* What a control tells `useFieldControl`. Every prop is optional: inside a
|
|
5472
|
+
* `Field` the context supplies the rest, outside one the hook generates an id
|
|
5473
|
+
* and adds nothing else.
|
|
5474
|
+
*
|
|
5475
|
+
* @experimental
|
|
5476
|
+
*/
|
|
5477
|
+
interface UseFieldControlProps {
|
|
5478
|
+
id?: string | undefined;
|
|
5479
|
+
name?: string | undefined;
|
|
5480
|
+
invalid?: boolean | undefined;
|
|
5481
|
+
required?: boolean | undefined;
|
|
5482
|
+
disabled?: boolean | undefined;
|
|
5483
|
+
readOnly?: boolean | undefined;
|
|
5484
|
+
"aria-labelledby"?: string | undefined;
|
|
5485
|
+
"aria-describedby"?: string | undefined;
|
|
5486
|
+
/**
|
|
5487
|
+
* `false` for a control that cannot be the target of `htmlFor` — a Radix
|
|
5488
|
+
* trigger, a checkbox button, a slider thumb. Those are named with
|
|
5489
|
+
* `aria-labelledby` and cannot carry the native `required` attribute.
|
|
5490
|
+
* Default `true` (`input`, `textarea`, `select`).
|
|
5491
|
+
*/
|
|
5492
|
+
native?: boolean | undefined;
|
|
5493
|
+
}
|
|
5494
|
+
/**
|
|
5495
|
+
* The wiring `useFieldControl` returns. Spread it onto the control's element
|
|
5496
|
+
* (`<input {...wiring} />`); merge `ref` with your own through a ref callback
|
|
5497
|
+
* when you keep one.
|
|
5498
|
+
*
|
|
5499
|
+
* @experimental
|
|
5500
|
+
*/
|
|
5501
|
+
interface FieldControlWiring {
|
|
5502
|
+
id: string;
|
|
5503
|
+
name: string | undefined;
|
|
5504
|
+
"aria-labelledby": string | undefined;
|
|
5505
|
+
"aria-describedby": string | undefined;
|
|
5506
|
+
"aria-invalid": true | undefined;
|
|
5507
|
+
"aria-required": true | undefined;
|
|
5508
|
+
required: true | undefined;
|
|
5509
|
+
disabled: boolean | undefined;
|
|
5510
|
+
readOnly: boolean | undefined;
|
|
5511
|
+
/** State attributes per ADR-008: present when true, absent otherwise. */
|
|
5512
|
+
"data-invalid": "" | undefined;
|
|
5513
|
+
"data-disabled": "" | undefined;
|
|
5514
|
+
/**
|
|
5515
|
+
* Attach to the control's element. In development the hook checks, once the
|
|
5516
|
+
* element is in the document, that it has an accessible name, and prints an
|
|
5517
|
+
* error (once per control) when it has none. Nothing in production.
|
|
5518
|
+
*/
|
|
5519
|
+
ref: RefCallback<HTMLElement>;
|
|
5520
|
+
}
|
|
5521
|
+
/**
|
|
5522
|
+
* The wiring of one form control: `id`, `name`, ARIA references to the
|
|
5523
|
+
* mounted `Field` parts (description before error), invalid / required /
|
|
5524
|
+
* disabled / readOnly and the matching state attributes.
|
|
5525
|
+
*
|
|
5526
|
+
* Merge order: an explicit prop wins over the field; `aria-describedby` is
|
|
5527
|
+
* merged (field ids first, then the prop). Outside a `Field` only the
|
|
5528
|
+
* explicit props and a generated id remain.
|
|
5529
|
+
*
|
|
5530
|
+
* @experimental
|
|
5531
|
+
*/
|
|
5532
|
+
declare function useFieldControl(props?: UseFieldControlProps): FieldControlWiring;
|
|
5533
|
+
|
|
5534
|
+
/**
|
|
5535
|
+
* Props of `FieldControl`.
|
|
5536
|
+
*
|
|
5537
|
+
* @experimental
|
|
5538
|
+
*/
|
|
5539
|
+
interface FieldControlProps extends Pick<UseFieldControlProps, "native"> {
|
|
5540
|
+
/** Exactly one element. Its own `id`, `aria-*` and state props win over the field. */
|
|
5541
|
+
children: ReactElement;
|
|
5542
|
+
}
|
|
5543
|
+
/**
|
|
5544
|
+
* Injects the field's wiring into its only child (see `useFieldControl`).
|
|
5545
|
+
*
|
|
5546
|
+
* `native` defaults to whether the child is an intrinsic `input`, `select`
|
|
5547
|
+
* or `textarea`. A native child receives the full wiring, including `name`,
|
|
5548
|
+
* `required`, `disabled` and `readOnly`. Any other child receives the id,
|
|
5549
|
+
* the ARIA references and states (`aria-labelledby`, `aria-describedby`,
|
|
5550
|
+
* `aria-invalid`, `aria-required`, `aria-disabled`, `aria-readonly`) and the
|
|
5551
|
+
* `data-invalid` / `data-disabled` attributes, and reads `disabled` itself
|
|
5552
|
+
* through `useFieldControl` when it needs the prop.
|
|
5553
|
+
*
|
|
5554
|
+
* @experimental
|
|
5555
|
+
*/
|
|
5556
|
+
declare function FieldControl({ children, native }: FieldControlProps): ReactElement;
|
|
5557
|
+
|
|
5558
|
+
/**
|
|
5559
|
+
* Props of `Fieldset`.
|
|
5560
|
+
*
|
|
5561
|
+
* @experimental
|
|
5562
|
+
*/
|
|
5563
|
+
interface FieldsetProps extends FieldsetHTMLAttributes<HTMLFieldSetElement> {
|
|
5564
|
+
/** The group is in error; `data-invalid` for styling. Each field carries its own `aria-invalid`. */
|
|
5565
|
+
invalid?: boolean;
|
|
5566
|
+
}
|
|
5567
|
+
/**
|
|
5568
|
+
* A group of fields under one legend. No visual chrome: the browser's
|
|
5569
|
+
* fieldset border and padding are reset.
|
|
5570
|
+
*
|
|
5571
|
+
* @experimental
|
|
5572
|
+
*/
|
|
5573
|
+
declare const Fieldset: React$1.ForwardRefExoticComponent<FieldsetProps & React$1.RefAttributes<HTMLFieldSetElement>>;
|
|
5574
|
+
/**
|
|
5575
|
+
* Props of `FieldsetLegend`.
|
|
5576
|
+
*
|
|
5577
|
+
* @experimental
|
|
5578
|
+
*/
|
|
5579
|
+
type FieldsetLegendProps = HTMLAttributes<HTMLLegendElement>;
|
|
5580
|
+
/**
|
|
5581
|
+
* The group's name. Must be the first child of `Fieldset` for the browser to
|
|
5582
|
+
* treat it as the legend. Inside a `Fieldset` it carries the id a grouped
|
|
5583
|
+
* control references through `aria-labelledby`; an explicit `id` wins.
|
|
5584
|
+
*
|
|
5585
|
+
* @experimental
|
|
5586
|
+
*/
|
|
5587
|
+
declare const FieldsetLegend: React$1.ForwardRefExoticComponent<FieldsetLegendProps & React$1.RefAttributes<HTMLLegendElement>>;
|
|
5588
|
+
|
|
5589
|
+
/**
|
|
5590
|
+
* L1a behaviour primitive (private). Not exported from the package.
|
|
5591
|
+
*
|
|
5592
|
+
* The canonical option model of every list-shaped control (W4-09; target
|
|
5593
|
+
* architecture §32): `Select`, the coming `Combobox` (W4-10) and its
|
|
5594
|
+
* `MultiSelect` preset (W4-11), the `SearchSelect` adapter (W4-12) and the
|
|
5595
|
+
* `PeoplePicker` pattern all read one shape, in place of the six that ship
|
|
5596
|
+
* today (`{value,label}`, `{id,label,group…}`, `{id,label,email}`,
|
|
5597
|
+
* `{id,fullName}`, `{key,label,dot}`, `string[]`).
|
|
5598
|
+
*
|
|
5599
|
+
* Two halves:
|
|
5600
|
+
*
|
|
5601
|
+
* - {@link Option} and its accessors: what a row *is*. Consumers with domain
|
|
5602
|
+
* objects pass {@link OptionAccessors} (`getOptionValue`/`getOptionLabel`)
|
|
5603
|
+
* instead of remapping, and {@link toOptions} normalises everything — a
|
|
5604
|
+
* `string[]`, domain objects, `Option`s — into one array the list renders.
|
|
5605
|
+
* - The selection helpers: what a control's *value* is, discriminated by
|
|
5606
|
+
* `multiple` (single `TValue | null`, multi `TValue[]`; §32 "Value"). `""`
|
|
5607
|
+
* keeps meaning empty in 2.x (§32 "Compat"), so {@link normalizeSingleValue}
|
|
5608
|
+
* folds it to `null` at the boundary.
|
|
5609
|
+
*
|
|
5610
|
+
* No React, no client directive, no DOM: plain functions over plain data, so
|
|
5611
|
+
* the same module serves a Server Component, a test and the keyboard helper.
|
|
5612
|
+
*/
|
|
5613
|
+
/**
|
|
5614
|
+
* One row of a list-shaped control.
|
|
5615
|
+
*
|
|
5616
|
+
* `value` is never `""`: emptiness is `value === null` on the control, not a
|
|
5617
|
+
* sentinel row (§32). `label` is the string typeahead, filtering and the
|
|
5618
|
+
* accessible name read; `description` and `icon` are rendered, never searched.
|
|
5619
|
+
* `keywords` widen the match without showing. `meta` carries consumer data
|
|
5620
|
+
* through to `renderOption` / `onValueChange` details untouched.
|
|
5621
|
+
*
|
|
5622
|
+
* @experimental
|
|
5623
|
+
*/
|
|
5624
|
+
interface Option<TValue extends string = string, TMeta = unknown> {
|
|
5625
|
+
value: TValue;
|
|
5626
|
+
label: string;
|
|
5627
|
+
description?: ReactNode;
|
|
5628
|
+
/** Leading visual: icon, avatar, flag, colour swatch. */
|
|
5629
|
+
icon?: ReactNode;
|
|
5630
|
+
disabled?: boolean;
|
|
5631
|
+
group?: string;
|
|
5632
|
+
keywords?: readonly string[];
|
|
5633
|
+
meta?: TMeta;
|
|
5634
|
+
}
|
|
5635
|
+
/**
|
|
5636
|
+
* How a list reads a consumer's own item type. Only `getOptionValue` and
|
|
5637
|
+
* `getOptionLabel` are required: an item with no `disabled`/`group`/`keywords`
|
|
5638
|
+
* accessor is enabled, ungrouped and matched on its label alone.
|
|
5639
|
+
*
|
|
5640
|
+
* @experimental
|
|
5641
|
+
*/
|
|
5642
|
+
interface OptionAccessors<TItem, TValue extends string = string> {
|
|
5643
|
+
getOptionValue: (item: TItem) => TValue;
|
|
5644
|
+
getOptionLabel: (item: TItem) => string;
|
|
5645
|
+
getOptionDisabled?: (item: TItem) => boolean;
|
|
5646
|
+
getOptionGroup?: (item: TItem) => string | undefined;
|
|
5647
|
+
getOptionKeywords?: (item: TItem) => readonly string[] | undefined;
|
|
5648
|
+
}
|
|
5649
|
+
|
|
5650
|
+
/** The English defaults (the `combobox` namespace of the catalogue). */
|
|
5651
|
+
declare const DEFAULT_COMBOBOX_MESSAGES: ComboboxMessages;
|
|
5652
|
+
/** The sizes a combobox offers: the shared control scale (A1). @experimental */
|
|
5653
|
+
type ComboboxSize = ControlSize;
|
|
5654
|
+
/** What `renderOption` is told about the row it renders. @experimental */
|
|
5655
|
+
interface ComboboxOptionState {
|
|
5656
|
+
selected: boolean;
|
|
5657
|
+
highlighted: boolean;
|
|
5658
|
+
disabled: boolean;
|
|
5659
|
+
}
|
|
5660
|
+
/**
|
|
5661
|
+
* Class overrides per part, for the consumer who must restyle one slot
|
|
5662
|
+
* without reaching into the DOM.
|
|
5663
|
+
*
|
|
5664
|
+
* @experimental
|
|
5665
|
+
*/
|
|
5666
|
+
interface ComboboxClassNames {
|
|
5667
|
+
root?: string;
|
|
5668
|
+
control?: string;
|
|
5669
|
+
input?: string;
|
|
5670
|
+
chip?: string;
|
|
5671
|
+
content?: string;
|
|
5672
|
+
list?: string;
|
|
5673
|
+
item?: string;
|
|
5674
|
+
}
|
|
5675
|
+
/** @experimental */
|
|
5676
|
+
interface ComboboxBaseProps<TItem, TValue extends string> extends Partial<OptionAccessors<TItem, TValue>> {
|
|
5677
|
+
/** The rows: `Option`s, strings, or domain objects read through the accessors. */
|
|
5678
|
+
options: readonly TItem[];
|
|
5679
|
+
id?: string;
|
|
5680
|
+
/** The form field name. Without it nothing is submitted. */
|
|
5681
|
+
name?: string;
|
|
5682
|
+
/** The `id` of the form to submit with when the control is rendered outside it. */
|
|
5683
|
+
form?: string;
|
|
5684
|
+
required?: boolean;
|
|
5685
|
+
disabled?: boolean;
|
|
5686
|
+
readOnly?: boolean;
|
|
5687
|
+
invalid?: boolean;
|
|
5688
|
+
/** The accessible name of a combobox outside a `Field`. */
|
|
5689
|
+
"aria-label"?: string;
|
|
5690
|
+
"aria-labelledby"?: string;
|
|
5691
|
+
"aria-describedby"?: string;
|
|
5692
|
+
placeholder?: string;
|
|
5693
|
+
/** Outer height from the shared control scale. Default `md` (36px). */
|
|
5694
|
+
size?: ComboboxSize;
|
|
5695
|
+
/** A leading glyph inside the control, decorative. */
|
|
5696
|
+
icon?: ReactNode;
|
|
5697
|
+
/** Show a clear button while a value is set. Default `true`. */
|
|
5698
|
+
clearable?: boolean;
|
|
5699
|
+
/** Open the list when the input receives focus. Default `false`. */
|
|
5700
|
+
openOnFocus?: boolean;
|
|
5701
|
+
/** Whether the list surface flips to stay in the viewport. Default `true`. */
|
|
5702
|
+
avoidCollisions?: boolean;
|
|
5703
|
+
open?: boolean;
|
|
5704
|
+
defaultOpen?: boolean;
|
|
5705
|
+
onOpenChange?: (open: boolean) => void;
|
|
5706
|
+
/** The typed query (controlled). */
|
|
5707
|
+
search?: string;
|
|
5708
|
+
defaultSearch?: string;
|
|
5709
|
+
/** Called with every query the user types (an async source fetches here). */
|
|
5710
|
+
onSearchChange?: (query: string) => void;
|
|
5711
|
+
/**
|
|
5712
|
+
* Filter `options` by the query (`true`, the default). `false` when the
|
|
5713
|
+
* consumer filters — the options are already the answer to the query.
|
|
5714
|
+
*/
|
|
5715
|
+
shouldFilter?: boolean;
|
|
5716
|
+
/** An async source is fetching: a spinner in the control, `loadingState` in the list. */
|
|
5717
|
+
loading?: boolean;
|
|
5718
|
+
emptyState?: ReactNode;
|
|
5719
|
+
loadingState?: ReactNode;
|
|
5720
|
+
/** Rendered above the list, inside the popover. */
|
|
5721
|
+
header?: ReactNode;
|
|
5722
|
+
/** Rendered below the list, inside the popover. */
|
|
5723
|
+
footer?: ReactNode;
|
|
5724
|
+
/** Offer a "Create …" row for a query that matches no option exactly. */
|
|
5725
|
+
onCreate?: (query: string) => void;
|
|
5726
|
+
/** Replaces the content of a row. */
|
|
5727
|
+
renderOption?: (option: Option<TValue, unknown>, state: ComboboxOptionState) => ReactNode;
|
|
5728
|
+
messages?: Partial<ComboboxMessages>;
|
|
5729
|
+
className?: string;
|
|
5730
|
+
classNames?: ComboboxClassNames;
|
|
5731
|
+
/** The input element. */
|
|
5732
|
+
ref?: React$1.Ref<HTMLInputElement>;
|
|
5733
|
+
}
|
|
5734
|
+
/** @experimental */
|
|
5735
|
+
interface ComboboxSingleProps<TItem, TValue extends string> extends ComboboxBaseProps<TItem, TValue> {
|
|
5736
|
+
multiple?: false;
|
|
5737
|
+
/** The picked value, or `null`. `""` means empty (2.x compat). */
|
|
5738
|
+
value?: TValue | "" | null;
|
|
5739
|
+
defaultValue?: TValue | "" | null;
|
|
5740
|
+
onValueChange?: (value: TValue | null, details: {
|
|
5741
|
+
option: Option<TValue, unknown> | null;
|
|
5742
|
+
}) => void;
|
|
5743
|
+
/** Replaces the closed control's text for the picked option. */
|
|
5744
|
+
renderValue?: (option: Option<TValue, unknown>) => ReactNode;
|
|
5745
|
+
/** Close the list after a pick. Default `true`. */
|
|
5746
|
+
closeOnSelect?: boolean;
|
|
5747
|
+
}
|
|
5748
|
+
/** What `renderValue` receives in `multiple` mode besides the picked options. @experimental */
|
|
5749
|
+
interface ComboboxSelectionControls<TValue extends string> {
|
|
5750
|
+
/** Removes one value from the selection. */
|
|
5751
|
+
remove: (value: TValue) => void;
|
|
5752
|
+
}
|
|
5753
|
+
/** @experimental */
|
|
5754
|
+
interface ComboboxMultipleProps<TItem, TValue extends string> extends ComboboxBaseProps<TItem, TValue> {
|
|
5755
|
+
multiple: true;
|
|
5756
|
+
/** The picked values, in pick order. Empty strings are dropped. */
|
|
5757
|
+
value?: readonly (TValue | "")[];
|
|
5758
|
+
defaultValue?: readonly (TValue | "")[];
|
|
5759
|
+
onValueChange?: (value: TValue[], details: {
|
|
5760
|
+
option: Option<TValue, unknown> | null;
|
|
5761
|
+
}) => void;
|
|
5762
|
+
/**
|
|
5763
|
+
* Replaces the chips inside the control: called with the picked options
|
|
5764
|
+
* and `remove`. Return `null` to render nothing there.
|
|
5765
|
+
*/
|
|
5766
|
+
renderValue?: (options: Option<TValue, unknown>[], controls: ComboboxSelectionControls<TValue>) => ReactNode;
|
|
5767
|
+
/** Close the list after a pick. Default `false`: keep picking. */
|
|
5768
|
+
closeOnSelect?: boolean;
|
|
5769
|
+
/** Drop picked rows from the list (the chips already show them). Default `false`. */
|
|
5770
|
+
hideSelected?: boolean;
|
|
5771
|
+
}
|
|
5772
|
+
/**
|
|
5773
|
+
* The props, discriminated by `multiple` (target architecture §32 "Value"):
|
|
5774
|
+
* a single pick is `TValue | null`, a multi pick is `TValue[]`.
|
|
5775
|
+
*
|
|
5776
|
+
* @experimental
|
|
5777
|
+
*/
|
|
5778
|
+
type ComboboxProps<TItem = Option, TValue extends string = string> = ComboboxSingleProps<TItem, TValue> | ComboboxMultipleProps<TItem, TValue>;
|
|
5779
|
+
/**
|
|
5780
|
+
* The searchable pick: one input, a portalled listbox, the option model.
|
|
5781
|
+
* See the module comment.
|
|
5782
|
+
*
|
|
5783
|
+
* @experimental
|
|
5784
|
+
*/
|
|
5785
|
+
declare function Combobox<TItem = Option, TValue extends string = string>(props: ComboboxProps<TItem, TValue>): react_jsx_runtime.JSX.Element;
|
|
5786
|
+
declare namespace Combobox {
|
|
5787
|
+
var displayName: string;
|
|
5788
|
+
}
|
|
5789
|
+
|
|
5790
|
+
/** @experimental */
|
|
5791
|
+
type MultiSelectProps<TItem = Option, TValue extends string = string> = Omit<ComboboxMultipleProps<TItem, TValue>, "multiple">;
|
|
5792
|
+
/**
|
|
5793
|
+
* `Combobox multiple`: values as `TValue[]`, chips inside the control, one
|
|
5794
|
+
* form entry per value.
|
|
5795
|
+
*
|
|
5796
|
+
* @experimental
|
|
5797
|
+
*/
|
|
5798
|
+
declare function MultiSelect<TItem = Option, TValue extends string = string>(props: MultiSelectProps<TItem, TValue>): react_jsx_runtime.JSX.Element;
|
|
5799
|
+
declare namespace MultiSelect {
|
|
5800
|
+
var displayName: string;
|
|
5801
|
+
}
|
|
5802
|
+
|
|
4010
5803
|
/**
|
|
4011
5804
|
* AgreementViewer — the chrome + navigation shell for a multi-step, branded
|
|
4012
5805
|
* agreement / proposal (the "Signed Agreement Viewer"). It owns the header,
|
|
@@ -6836,7 +8629,7 @@ declare const BulkActionBarAction: React$1.ForwardRefExoticComponent<BulkActionB
|
|
|
6836
8629
|
declare function BulkActionBarSeparator({ className }: {
|
|
6837
8630
|
className?: string;
|
|
6838
8631
|
}): react_jsx_runtime.JSX.Element;
|
|
6839
|
-
declare function BulkActionBar({ variant, selectedCount, label, children, onClear, clearLabel, clearDisabled, footer, className, ...props }: BulkActionBarProps): react_jsx_runtime.JSX.Element | null;
|
|
8632
|
+
declare function BulkActionBar({ variant, selectedCount, label, children, onClear, clearLabel: clearLabelProp, clearDisabled, footer, className, ...props }: BulkActionBarProps): react_jsx_runtime.JSX.Element | null;
|
|
6840
8633
|
|
|
6841
8634
|
/**
|
|
6842
8635
|
* Intent-named action wrappers (Phase 4).
|
|
@@ -7209,6 +9002,53 @@ type StickyStackSectionHeaderProps = StickyStackStickyProps;
|
|
|
7209
9002
|
*/
|
|
7210
9003
|
declare const StickyStackSectionHeader: React$1.ForwardRefExoticComponent<StickyStackStickyProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
7211
9004
|
|
|
9005
|
+
/** What `useConfirm()` asks with: the copy and the meaning of one confirmation. @experimental */
|
|
9006
|
+
interface ConfirmOptions {
|
|
9007
|
+
title: React$1.ReactNode;
|
|
9008
|
+
description?: React$1.ReactNode;
|
|
9009
|
+
confirmLabel?: React$1.ReactNode;
|
|
9010
|
+
cancelLabel?: React$1.ReactNode;
|
|
9011
|
+
intent?: ConfirmIntent;
|
|
9012
|
+
presentation?: ConfirmPresentation;
|
|
9013
|
+
/** Block content under the description (see `ConfirmDialog children`). */
|
|
9014
|
+
content?: React$1.ReactNode;
|
|
9015
|
+
}
|
|
9016
|
+
/** What `usePrompt()` asks with: a confirmation around one text input. @experimental */
|
|
9017
|
+
interface PromptOptions extends ConfirmOptions {
|
|
9018
|
+
/** The input's label. Falls back to the title as the accessible name when it is a string. */
|
|
9019
|
+
label?: string;
|
|
9020
|
+
defaultValue?: string;
|
|
9021
|
+
placeholder?: string;
|
|
9022
|
+
/** The confirm button stays disabled while the value is empty. Default `false`. */
|
|
9023
|
+
required?: boolean;
|
|
9024
|
+
/** The input type. Default `"text"`. */
|
|
9025
|
+
inputType?: "text" | "email" | "number" | "password" | "tel" | "url";
|
|
9026
|
+
}
|
|
9027
|
+
/** The function `useConfirm()` returns. @experimental */
|
|
9028
|
+
type ConfirmFn = (options: ConfirmOptions) => Promise<boolean>;
|
|
9029
|
+
/** The function `usePrompt()` returns. @experimental */
|
|
9030
|
+
type PromptFn = (options: PromptOptions) => Promise<string | null>;
|
|
9031
|
+
/** The design system's imperative confirm. See the file comment. @experimental */
|
|
9032
|
+
declare function useConfirm(): ConfirmFn;
|
|
9033
|
+
/** The design system's imperative prompt. See the file comment. @experimental */
|
|
9034
|
+
declare function usePrompt(): PromptFn;
|
|
9035
|
+
/** Props of `ConfirmHost`. @experimental */
|
|
9036
|
+
interface ConfirmHostProps {
|
|
9037
|
+
children?: React$1.ReactNode;
|
|
9038
|
+
}
|
|
9039
|
+
/**
|
|
9040
|
+
* Where `useConfirm` / `usePrompt` render (W5-18). Mount it once, high in the
|
|
9041
|
+
* tree — `DesignSystemProvider confirm` does — and every hook below it shares
|
|
9042
|
+
* the queue. Renders no DOM of its own while nothing is asked. On the server
|
|
9043
|
+
* a request resolves as cancelled at once (nothing can answer it).
|
|
9044
|
+
*
|
|
9045
|
+
* @experimental
|
|
9046
|
+
*/
|
|
9047
|
+
declare function ConfirmHost({ children }: ConfirmHostProps): react_jsx_runtime.JSX.Element;
|
|
9048
|
+
declare namespace ConfirmHost {
|
|
9049
|
+
var displayName: string;
|
|
9050
|
+
}
|
|
9051
|
+
|
|
7212
9052
|
declare function cn(...inputs: ClassValue[]): string;
|
|
7213
9053
|
|
|
7214
9054
|
/**
|
|
@@ -7288,4 +9128,78 @@ interface BrandScopeProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
|
7288
9128
|
*/
|
|
7289
9129
|
declare const BrandScope: React$1.ForwardRefExoticComponent<BrandScopeProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
7290
9130
|
|
|
7291
|
-
export { AIReceiptPanel, type AIReceiptPanelProps, type AIReceiptResult, Accordion, AccordionContent, AccordionItem, AccordionTrigger, type ActivityDotVariant, ActivityEventItem, type ActivityEventItemProps, ActivityItem, type ActivityItemProps, ActivityList, type ActivityListProps, type AgreementFirm, AgreementPaneHeading, type AgreementPaneHeadingProps, type AgreementStatus, type AgreementStep, AgreementViewer, type AgreementViewerProps, AiDraftCard, type AiDraftCardProps, type AiDraftState, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, type AlertDialogSlot, AlertDialogTitle, AlertDialogTrigger, type AlertProps, AlertTitle, AppHeader, AppHeaderActions, type AppHeaderActionsProps, AppHeaderBreadcrumb, type AppHeaderBreadcrumbProps, type AppHeaderProps, AppHeaderSearch, type AppHeaderSearchProps, AppHeaderTitle, type AppHeaderTitleProps, AreaChart, type AreaChartProps, type AreaPoint, AspectRatio, Assignee, AssureAuditBrandIcon, AssureBooksBrandIcon, AssureProBrandIcon, AssureTaxBrandIcon, AttachmentChip, type AttachmentChipProps, AttentionItem, type AttentionItemProps, type AttentionUrgency, Avatar, type AvatarProps, type AvatarSlot, BRAND_PRODUCTS, Badge, type BadgeAppearance, type BadgeAppearanceInput, type BadgeLegacyVariant, type BadgeProps, type BadgeShape, type BadgeSize, type BadgeSlot, type BadgeVariant, type BadgeVariantsProps, Blockquote, BottomNav, type BottomNavProps, type BottomNavTab, type BrandIconProps, type BrandProduct, BrandScope, type BrandScopeProps, BrandScopeProvider, Breadcrumb, BreadcrumbItem, type BreadcrumbItemProps, BreadcrumbLink, type BreadcrumbLinkProps, BreadcrumbList, type BreadcrumbListProps, BreadcrumbPage, type BreadcrumbPageProps, type BreadcrumbProps, BreadcrumbSeparator, type BreadcrumbSeparatorProps, BulkActionBar, BulkActionBarAction, type BulkActionBarActionProps, type BulkActionBarProps, BulkActionBarSeparator, type BulkActionBarVariant, Button, type ButtonEmphasis, type ButtonIconProps, type ButtonIconSize, type ButtonIntent, type ButtonIntentAlias, type ButtonLegacyVariant, type ButtonLook, type ButtonProps, type ButtonSize, type ButtonSizeAlias, type ButtonSlot, type ButtonStyle, type ButtonVariant, type ButtonVariantsProps, COUNTRY_CODES, Calendar, type CalendarCaptionLayout, type CalendarHighlight, type CalendarHighlightColor, type CalendarProps, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, type CardProps, type CardSlot, CardTitle, type CardTitleProps, type CardVariants, CategoryDivider, type CategoryDividerProps, CategoryTag, type CategoryTagProps, type CategoryTone, type CellValue, type ChannelTabItem, ChannelTabs, type ChannelTabsProps, type ChannelTone, Checkbox, type CheckboxSlot, Chip, type ChipIntent, type ChipProps, type ChipSize, type ChipSlot, type ChipStyle, type ChipVariant, ClientRailGroupHeader, type ClientRailGroupHeaderProps, ClientRailItem, type ClientRailItemProps, ClientSelect, type ClientSelectOption, Code, type CodeProps, type CodeSlot, type CodeVariant, Collapsible, CollapsibleContent, CollapsibleTrigger, ComingSoon, type ComingSoonProps, type CommandItem, CommandPalette, ConfirmActionButton, type ConfirmActionButtonProps, Content, type ContentProps, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, type ContextMenuSlot, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, ControlSize, CopyButton, type CountryCode, CountryFlag, CountrySelect, DATE_DISPLAY_PLACEHOLDER, DangerAction, type DangerActionProps, Dash, DashGrid, type DashGridProps, type DashWidget, DataItem, DataTable, DataTableBody, type DataTableBodyProps, DataTableCell, DataTableCellDue, type DataTableCellDueProps, DataTableCellId, DataTableCellMono, DataTableCellName, type DataTableCellProps, DataTableCheckbox, type DataTableCheckboxProps, DataTableHead, type DataTableHeadProps, DataTableHeader, type DataTableHeaderProps, DataTablePagination, type DataTablePaginationProps, type DataTableProps, DataTableResultsCount, type DataTableResultsCountProps, DataTableRow, type DataTableRowProps, DataTableSearch, type DataTableSearchProps, type DataTableSlot, DataTableSpacer, type DataTableSpacerProps, DataTableToolbar, type DataTableToolbarProps, DataTableView, type DataTableViewColumn, type DataTableViewFilter, type DataTableViewProps, type DataTableViewSelection, DatePicker, DateRangePicker, type DateRangeValue, DetailGrid, type DetailGridProps, DetailMain, type DetailMainProps, DetailSpine, DetailSpineHeader, type DetailSpineHeaderProps, type DetailSpineProps, DetailSpineSection, type DetailSpineSectionProps, DetailSpineStats, type DetailSpineStatsProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, type DialogSlot, DialogTitle, DialogTrigger, DismissibleChip, DisplayMenu, type DisplayMenuOption, type DisplayMenuProps, type DisplayMenuSection, DocumentChecklist, type DocumentChecklistFile, type DocumentChecklistItem, type DocumentChecklistProps, type DocumentChecklistStatus, DocumentDetailActions, type DocumentDetailActionsProps, DocumentDetailBody, type DocumentDetailBodyProps, DocumentDetailHeader, type DocumentDetailHeaderProps, DocumentDetailMetaRow, type DocumentDetailMetaRowProps, DocumentDetailPanel, type DocumentDetailPanelProps, DocumentDetailRequester, type DocumentDetailRequesterProps, DocumentDetailTitle, type DocumentDetailTitleProps, DocumentFileCard, type DocumentFileCardProps, DocumentFileLine, type DocumentFileLineProps, DocumentFileRow, type DocumentFileRowProps, type DocumentItemState, DocumentList, type DocumentListProps, DocumentListSection, type DocumentListSectionProps, type DocumentRequestActivityKind, type DocumentRequestAssigneeOption, DocumentRequestCard, type DocumentRequestCardProps, DocumentRequestDetail, type DocumentRequestDetailActivityEvent, type DocumentRequestDetailComment, type DocumentRequestDetailDoc, type DocumentRequestDetailProps, type DocumentRequestDetailTab, DocumentRequestField, type DocumentRequestFieldProps, type DocumentRequestItemSummary, type DocumentRequestRequestedItem, type DocumentRequestReviewStatusOption, type DocumentRequestTone, DocumentRequestUpload, type DocumentRequestUploadFile, type DocumentRequestUploadProps, DocumentRow, type DocumentRowProps, type DocumentSource, DocumentSourceFilter, type DocumentSourceFilterProps, type DocumentSourceFilterValue, DocumentSourceTag, type DocumentSourceTagProps, DocumentsWorkspaceLayout, type DocumentsWorkspaceLayoutProps, DonutChart, type DonutChartProps, type DonutSegment, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, type DropdownMenuSlot, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmailMessageCard, type EmailMessageCardProps, EmptyState, type EmptyStateProps, EngagementCard, type EngagementCardProps, EngagementTimeline, type EngagementTimelineProps, EngagementTimelineStep, type EngagementTimelineStepProps, Eyebrow, type EyebrowProps, FileChip, type FileChipProps, type FileKind, FileTypeBadge, type FileTypeBadgeProps, type FileTypeTone, FileUpload, type FileUploadSlot, FilterChip, type FilterChipProps, type FolderNode, FolderTree, type FolderTreeProps, FormError, FormSection, FormSuccess, Grid, type GridColumn, type GridInputType, type GridProps, type GridRow, type GridValue, Heading, type HeadingLevel, type HeadingProps, type HeadingSize, type HeadingSlot, HoverCard, HoverCardContent, HoverCardPortal, HoverCardTrigger, ICON_TILE_TONE_TO_INTENT, IconAction, type IconActionProps, IconButton, type IconButtonProps, type IconButtonSize, type IconButtonSlot, type IconButtonTooltipSide, IconTile, type IconTileIntent, type IconTileProps, type IconTileSize, type IconTileSuiteTone, type IconTileTone, type IconTileVariantProps, Inline, type InlineProps, type InlineSlot, Input, type InputSlot, type InputVariants, Intent, IntentBadge, type IntentBadgeProps, type IntentTone, Kanban, KanbanCard, type KanbanCardProps, KanbanColumn, type KanbanColumnProps, type KanbanProps, Kbd, type KbdGlyph, KbdHint, type KbdHintProps, type KbdProps, type KbdSlot, type KbdVariant, type KeyboardShortcut, type KeyboardShortcutSection, KeyboardShortcutsDialog, type KeyboardShortcutsDialogProps, KpiCard, type KpiCardProps, type KpiDelta, Label, type LabelSlot, type LayoutAlign, type LayoutBreakpoint, type LayoutGap, type LayoutJustify, LinkAction, type LinkActionProps, LinkButton, type LinkButtonProps$1 as LinkButtonProps, type LinkButtonSlot, LoadingRows, Logo, Main, type MainProps, MasterDetailLayout, type MasterDetailLayoutProps, MessageBubble, MessageBubbleAction, type MessageBubbleActionProps, type MessageBubbleProps, MessageBubbleTombstone, type MessageBubbleTombstoneProps, MessageComposer, type MessageComposerProps, MetadataGrid, type MissingDocumentItem, MissingDocumentsPanel, type MissingDocumentsPanelProps, MoneyCell, MultiFilterPill, MultiSelectField, MutedSpec, type MutedSpecProps, NewMenu, type NewMenuAction, type NewMenuGroup, type NewMenuProps, NotificationFilter, type NotificationFilterProps, type NotificationFilterValue, NotificationItem, type NotificationItemProps, NotificationList, type NotificationListProps, NotificationPanel, NotificationPanelFooter, type NotificationPanelFooterProps, NotificationPanelHeader, type NotificationPanelHeaderProps, type NotificationPanelProps, Numeric, type NumericProps, OTPInput, type OnlyStatuses, PROGRESS_LEGACY_TO_INTENT, PageHeader, type PageHeaderProps, PageHeaderSep, type PageHeaderSepProps, PageHeaderSpec, type PageHeaderSpecProps, Pagination, type PaginationProps, type PaginationSlot, PdfPreview, type PdfPreviewProps, PhoneCountryInput, PhoneInput, type PillStatus, Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverPortal, type PopoverSlot, PopoverTrigger, Pressable, type PressableProps, type PressableSlot, PrimaryAction, type PrimaryActionProps, type Priority, PriorityIcon, type PriorityIconProps, ProgressBar, type ProgressBarProps, type ProgressBarVariant, type ProgressBarVariantProps, type ProgressIntent, type ProgressLegacyColour, ProgressRing, type ProgressRingProps, type ProgressRingVariant, type ProgressRingVariantProps, ProposalAddOn, type ProposalAddOnProps, type ProposalBillingMode, type ProposalBillingRow, ProposalBillingTerms, type ProposalBillingTermsProps, ProposalConsentGate, type ProposalConsentGateProps, ProposalCustomPage, type ProposalCustomPageKind, type ProposalCustomPageProps, ProposalNote, type ProposalNoteProps, ProposalPackageCard, type ProposalPackageCardProps, type ProposalPackageMode, ProposalPaymentCapture, type ProposalPaymentCaptureProps, ProposalPricingSummary, type ProposalPricingSummaryProps, ProposalServiceRow, type ProposalServiceRowProps, ProposalSignatureBlock, type ProposalSignatureBlockProps, type ProposalSigner, ProposalSignerList, type ProposalSignerListProps, type ProposalSignerStatus, type QuestionAddressValue, type QuestionFileValue, type QuestionHelp, type QuestionLabeledColumn, type QuestionLabeledRow, type QuestionLabeledValue, type QuestionNameValue, type QuestionOption, type QuestionTableColumn, type QuestionTableRow, type QuestionType, QuestionnairePanel, type QuestionnairePanelGroup, type QuestionnairePanelProps, type QuestionnairePanelSection, type QuestionnairePanelStatus, Questions, type QuestionsProps, type QuickReplyChip, RadioGroup, RadioGroupItem, type RadioGroupSlot, type RankedBar, RankedBars, type RankedBarsProps, type Responsive, ResponsiveDialog, type ResponsiveDialogProps, RouteTransition, type RouteTransitionProps, SERVICE_TONES, SPINNER_TONE_TO_INTENT, STATUS_DOT_TONE_TO_INTENT, ScrollArea, ScrollBar, SearchInput, type SearchInputSlot, type SearchInputVariants, SearchSelect, type SearchSelectOption, SecondaryAction, type SecondaryActionProps, Section, SectionHead, SectionHeader, SegmentedProgress, type SegmentedProgressProps, type SegmentedServiceTone, type SegmentedTone, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, type SelectOption, type SelectProps, SelectRoot, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, type SelectSlot, SelectTrigger, SelectValue, SelectableKpiCard, type SelectableKpiCardProps, Separator, type ServiceTone, Shape, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, type SheetSlot, SheetTitle, SheetTrigger, Shell, type ShellProps, type ShellSlot, SideDrawer, type SideDrawerSlot, Sidebar, SidebarBrand, type SidebarBrandProps, SidebarBrandSwitcher, type SidebarBrandSwitcherExtra, type SidebarBrandSwitcherItem, type SidebarBrandSwitcherProps, type SidebarBrandSwitcherSlot, SidebarBrandSwitcherTile, SidebarBrandText, type SidebarBrandTextProps, SidebarFooter, type SidebarFooterProps, SidebarLink, SidebarLinkAction, type SidebarLinkActionProps, SidebarLinkBadge, type SidebarLinkBadgeProps, type SidebarLinkBadgeVariants, SidebarLinkGroup, type SidebarLinkGroupProps, SidebarLinkLabel, type SidebarLinkLabelProps, type SidebarLinkProps, SidebarPinButton, type SidebarPinButtonProps, type SidebarProps, SidebarProvider, type SidebarProviderProps, SidebarSection, type SidebarSectionProps, type SidebarSlot, type SidebarState, SidebarTrigger, type SidebarTriggerProps, SidebarUser, type SidebarUserProps, SignatureEditor, type SignatureEditorProps, Skeleton, SkeletonCircle, SkeletonText, Slider, type SortDirection, Spinner, type SpinnerIntent, type SpinnerProps, type SpinnerSize, type SpinnerTone, type SpinnerVariantProps, SpreadsheetPreview, type SpreadsheetPreviewProps, Stack, type StackDirection, type StackProps, type StackSlot, StackedBarChart, type StackedBarChartProps, type StackedBarDatum, type StackedBarSeries, StagePill, StarRating, type StarRatingProps, Stat, StatusBadge, type StatusBadgeProps, type StatusBadgeSlot, StatusDot, type StatusDotIntent, type StatusDotProps, type StatusDotSize, type StatusDotTone, type StatusDotVariantProps, StatusIcon, type StatusIconProps, type StatusMap, StatusPill, type StatusPillProps, type StatusPresentation, type StatusState, type Step, Stepper, type StepperProps, StickyActionBar, type StickyActionBarProps, StickyStack, StickyStackLayer, type StickyStackLayerProps, type StickyStackProps, StickyStackSectionHeader, type StickyStackSectionHeaderProps, StickyStackSticky, type StickyStackStickyProps, SubmitButton, SuggestionPills, type SuggestionPillsProps, SuiteProgress, type SuiteProgressFillVariantProps, type SuiteProgressProps, type SuiteProgressSize, type SuiteProgressSuiteTone, type SuiteProgressTone, Surface, type SurfaceElevation, type SurfacePadding, type SurfaceProps, type SurfaceRadius, type SurfaceSlot, Switch, type SwitchSlot, Table, TableBody, type TableBodyProps, TableCaption, type TableCaptionProps, TableCell, type TableCellProps, TableFooter, type TableFooterProps, TableHead, type TableHeadProps, TableHeader, type TableHeaderProps, type TableProps, TableRow, type TableRowData, type TableRowProps, type TableSlot, type TableTone, Tabs, TabsContent, TabsList, TabsTrigger, TagsCell, TeamMemberSelect, Text, type TextColor, type TextProps, type TextSize, type TextSlot, type TextWeight, Textarea, type TextareaSlot, type TextareaVariants, TimeLogger, TimeLoggerActions, type TimeLoggerActionsProps, TimeLoggerBillable, type TimeLoggerBillableProps, TimeLoggerContextRow, type TimeLoggerContextRowProps, TimeLoggerEntry, TimeLoggerEntryList, type TimeLoggerEntryListProps, type TimeLoggerEntryProps, TimeLoggerField, type TimeLoggerFieldProps, TimeLoggerFooter, type TimeLoggerFooterProps, TimeLoggerHeader, type TimeLoggerHeaderProps, TimeLoggerNotes, type TimeLoggerNotesProps, type TimeLoggerPhase, type TimeLoggerProps, type TimeLoggerTier, TimeLoggerTimer, type TimeLoggerTimerProps, type TimelineState, type ToastAction, type ToastContextValue, type ToastOptions, ToastProvider, type ToastSlot, type ToastVariant, ToggleGroup, ToggleGroupItem, Toolbar, type ToolbarProps, Tooltip, TooltipContent, TooltipPortal, TooltipProvider, type TooltipSlot, TooltipTrigger, type UseStopwatchReturn, Variant, VisuallyHidden, YEAR_DISPLAY_PLACEHOLDER, alertVariants, applyMask, applyYearMask, assetPath, attachmentChipVariants, badgeVariants, brandLabel, brandScope, buttonVariants, cardVariants, chipVariants, cn, dateToIso, defineStatusMap, displayToIso, fileTypeBadgeVariants, fileTypeFromName, filterChipVariants, formatClock, formatCurrency, formatDuration, getAssetBasePath, getFlagEmoji, iconButtonVariants, resolveIconTileVariants as iconTileVariants, inputVariants, isoToDate, isoToDisplay, isoToYear, labelVariants, parseDuration, parsePhoneForEditing, progressBarVariants, progressRingVariants, resolveBadgeAppearance, resolveButtonStyle, resolveChipStyle, searchInputVariants, serviceToneLabel, serviceToneStyle, setAssetBasePath, sidebarLinkBadgeVariants, spinnerVariants, starRatingVariants, statusDotVariants, suiteProgressFillVariants, textareaVariants, useBrandScope, useSidebarPeekLock, useSidebarState, useStopwatch, useToast, yearToIso };
|
|
9131
|
+
/**
|
|
9132
|
+
* Theme scope — the host dimensions a subtree renders with (W5-02).
|
|
9133
|
+
*
|
|
9134
|
+
* The design system's scopes are DOM attributes: `[data-ds-scheme]`,
|
|
9135
|
+
* `[data-ds-brand]`, `[data-ds-density]`, `dir`, and the `--ds-*` style a
|
|
9136
|
+
* runtime brand writes (`createBrandTheme`). Set on the document root they
|
|
9137
|
+
* reach everything, portalled overlays included. Set on a *subtree* they stop
|
|
9138
|
+
* at the subtree: a Dialog or Popover opened from inside it renders in
|
|
9139
|
+
* `document.body`, outside the scope, and comes up in the root theme.
|
|
9140
|
+
*
|
|
9141
|
+
* `ThemeScope` fixes that. It stamps the attributes on its own element, as a
|
|
9142
|
+
* hand-written scope would, **and** registers them in context, so the shared
|
|
9143
|
+
* `Portal` (`primitives/behavior/portal.tsx`) can re-stamp the same attributes
|
|
9144
|
+
* and runtime-brand style on the container wrapper it mounts portalled content
|
|
9145
|
+
* into. Nested scopes merge: a `density="compact"` scope inside a `brand="tax"`
|
|
9146
|
+
* one propagates both.
|
|
9147
|
+
*
|
|
9148
|
+
* Apps that scope the document root need none of this; the portal path is
|
|
9149
|
+
* unchanged for them (no wrapper is created).
|
|
9150
|
+
*/
|
|
9151
|
+
/** The scheme a subtree renders with (`[data-ds-scheme]`). */
|
|
9152
|
+
type ThemeScheme = "light" | "dark";
|
|
9153
|
+
/** A built-in brand scope (`[data-ds-brand]`). */
|
|
9154
|
+
type ThemeBrand = "pro" | "audit" | "books" | "tax";
|
|
9155
|
+
/** The density scope (`[data-ds-density]`, W2-06). */
|
|
9156
|
+
type ThemeDensity = "comfortable" | "compact";
|
|
9157
|
+
/** Text direction (`dir`). */
|
|
9158
|
+
type ThemeDirection = "ltr" | "rtl";
|
|
9159
|
+
/**
|
|
9160
|
+
* The dimensions a scope sets. Every field is optional; an unset field is
|
|
9161
|
+
* inherited from the enclosing scope, then from the document.
|
|
9162
|
+
*
|
|
9163
|
+
* @experimental
|
|
9164
|
+
*/
|
|
9165
|
+
interface ThemeScopeValue {
|
|
9166
|
+
scheme?: ThemeScheme;
|
|
9167
|
+
brand?: ThemeBrand;
|
|
9168
|
+
density?: ThemeDensity;
|
|
9169
|
+
dir?: ThemeDirection;
|
|
9170
|
+
/**
|
|
9171
|
+
* A registered runtime brand: the object `createBrandTheme()` returns. It is
|
|
9172
|
+
* applied as inline `--ds-*` style on the scope element and re-applied on
|
|
9173
|
+
* portalled content.
|
|
9174
|
+
*/
|
|
9175
|
+
brandTheme?: BrandTheme;
|
|
9176
|
+
}
|
|
9177
|
+
/** Props of {@link ThemeScope}. @experimental */
|
|
9178
|
+
interface ThemeScopeProps extends ThemeScopeValue, Omit<React.HTMLAttributes<HTMLDivElement>, "dir"> {
|
|
9179
|
+
children?: ReactNode;
|
|
9180
|
+
}
|
|
9181
|
+
/**
|
|
9182
|
+
* A `<div>` that scopes the host dimensions of its subtree — scheme, brand,
|
|
9183
|
+
* density, direction and a runtime brand — and propagates them into every
|
|
9184
|
+
* overlay opened from inside it (Dialog, Sheet, Popover, Tooltip, menus,
|
|
9185
|
+
* Select, Toast …), which would otherwise render in the document's theme.
|
|
9186
|
+
*
|
|
9187
|
+
* ```tsx
|
|
9188
|
+
* <ThemeScope brand="tax" density="compact">
|
|
9189
|
+
* <Popover>…</Popover> // its content renders as compact Tax, too
|
|
9190
|
+
* </ThemeScope>
|
|
9191
|
+
*
|
|
9192
|
+
* <ThemeScope brandTheme={createBrandTheme({ brand: firm.primary })}>
|
|
9193
|
+
* <Dialog>…</Dialog> // the runtime brand follows the dialog to <body>
|
|
9194
|
+
* </ThemeScope>
|
|
9195
|
+
* ```
|
|
9196
|
+
*
|
|
9197
|
+
* Nothing changes for apps that scope `<html>` or `<body>`: no wrapper is
|
|
9198
|
+
* created around portalled content when no `ThemeScope` encloses it.
|
|
9199
|
+
*
|
|
9200
|
+
* @experimental W5-02. The public shape follows decision D7 for the runtime
|
|
9201
|
+
* brand seed.
|
|
9202
|
+
*/
|
|
9203
|
+
declare const ThemeScope: React$1.ForwardRefExoticComponent<ThemeScopeProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
9204
|
+
|
|
9205
|
+
export { AIReceiptPanel, type AIReceiptPanelProps, type AIReceiptResult, Accordion, AccordionContent, AccordionItem, AccordionTrigger, type ActivityDotVariant, ActivityEventItem, type ActivityEventItemProps, ActivityItem, type ActivityItemProps, ActivityList, type ActivityListProps, type AgreementFirm, AgreementPaneHeading, type AgreementPaneHeadingProps, type AgreementStatus, type AgreementStep, AgreementViewer, type AgreementViewerProps, AiDraftCard, type AiDraftCardProps, type AiDraftState, Alert, AlertDescription, AlertDialog, AlertDialogAction, type AlertDialogActionProps, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, type AlertDialogSlot, AlertDialogTitle, AlertDialogTrigger, type AlertProps, AlertTitle, AppHeader, AppHeaderActions, type AppHeaderActionsProps, AppHeaderBreadcrumb, type AppHeaderBreadcrumbProps, type AppHeaderProps, AppHeaderSearch, type AppHeaderSearchProps, AppHeaderTitle, type AppHeaderTitleProps, AreaChart, type AreaChartProps, type AreaPoint, AspectRatio, Assignee, AssureAuditBrandIcon, AssureBooksBrandIcon, AssureProBrandIcon, AssureTaxBrandIcon, AttachmentChip, type AttachmentChipProps, AttentionItem, type AttentionItemProps, type AttentionUrgency, Avatar, type AvatarProps, type AvatarSlot, BRAND_PRODUCTS, Badge, type BadgeAppearance, type BadgeAppearanceInput, type BadgeLegacyVariant, type BadgeProps, type BadgeShape, type BadgeSize, type BadgeSlot, type BadgeVariant, type BadgeVariantsProps, Blockquote, BottomNav, type BottomNavProps, type BottomNavTab, type BrandIconProps, type BrandProduct, BrandScope, type BrandScopeProps, BrandScopeProvider, Breadcrumb, BreadcrumbItem, type BreadcrumbItemProps, BreadcrumbLink, type BreadcrumbLinkProps, BreadcrumbList, type BreadcrumbListProps, BreadcrumbPage, type BreadcrumbPageProps, type BreadcrumbProps, BreadcrumbSeparator, type BreadcrumbSeparatorProps, BulkActionBar, BulkActionBarAction, type BulkActionBarActionProps, type BulkActionBarProps, BulkActionBarSeparator, type BulkActionBarVariant, Button, type ButtonEmphasis, type ButtonIconProps, type ButtonIconSize, type ButtonIntent, type ButtonIntentAlias, type ButtonLegacyVariant, type ButtonLook, type ButtonProps, type ButtonSize, type ButtonSizeAlias, type ButtonSlot, type ButtonStyle, type ButtonVariant, type ButtonVariantsProps, COUNTRY_CODES, Calendar, type CalendarBaseProps, type CalendarCaptionLayout, type CalendarHighlight, type CalendarHighlightColor, type CalendarProps, type CalendarRange, type CalendarRangeProps, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, type CardProps, type CardSlot, CardTitle, type CardTitleProps, type CardVariants, CategoryDivider, type CategoryDividerProps, CategoryTag, type CategoryTagProps, type CategoryTone, type CellValue, type ChannelTabItem, ChannelTabs, type ChannelTabsProps, type ChannelTone, Checkbox, type CheckboxChecked, type CheckboxProps, type CheckboxSlot, Chip, type ChipIntent, type ChipProps, type ChipSize, type ChipSlot, type ChipStyle, type ChipVariant, ClientRailGroupHeader, type ClientRailGroupHeaderProps, ClientRailItem, type ClientRailItemProps, ClientSelect, type ClientSelectOption, Code, type CodeProps, type CodeSlot, type CodeVariant, Collapsible, CollapsibleContent, CollapsibleTrigger, Combobox, type ComboboxBaseProps, type ComboboxClassNames, ComboboxMessages, type ComboboxMultipleProps, type ComboboxOptionState, type ComboboxProps, type ComboboxSelectionControls, type ComboboxSingleProps, type ComboboxSize, type ComboboxSlot, ComingSoon, type ComingSoonProps, type CommandItem, CommandPalette, CommandPaletteMessages, type CommandSlot, ConfirmActionButton, type ConfirmActionButtonProps, ConfirmDialog, type ConfirmDialogProps, type ConfirmFn, ConfirmHost, type ConfirmHostProps, type ConfirmInitialFocus, type ConfirmIntent, ConfirmMessages, type ConfirmOptions, type ConfirmPresentation, type ConfirmResult, Content, type ContentProps, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, type ContextMenuSlot, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, ControlSize, CopyButton, type CountryCode, CountryFlag, CountrySelect, DATE_DISPLAY_PLACEHOLDER, DEFAULT_COMBOBOX_MESSAGES, DEFAULT_PHONE_FIELD_MESSAGES, DangerAction, type DangerActionProps, Dash, DashGrid, type DashGridProps, type DashWidget, DataItem, DataTable, DataTableBody, type DataTableBodyProps, DataTableCell, DataTableCellDue, type DataTableCellDueProps, DataTableCellId, DataTableCellMono, DataTableCellName, type DataTableCellProps, DataTableCheckbox, type DataTableCheckboxProps, DataTableHead, type DataTableHeadProps, DataTableHeader, type DataTableHeaderProps, DataTablePagination, type DataTablePaginationProps, type DataTableProps, DataTableResultsCount, type DataTableResultsCountProps, DataTableRow, type DataTableRowProps, DataTableSearch, type DataTableSearchProps, type DataTableSlot, DataTableSpacer, type DataTableSpacerProps, DataTableToolbar, type DataTableToolbarProps, DataTableView, type DataTableViewColumn, type DataTableViewFilter, type DataTableViewProps, type DataTableViewSelection, type DatePattern, DatePicker, type DatePickerProps, type DateRangeNames, DateRangePicker, type DateRangePickerProps, type DateRangeValue, DetailGrid, type DetailGridProps, DetailMain, type DetailMainProps, DetailSpine, DetailSpineHeader, type DetailSpineHeaderProps, type DetailSpineProps, DetailSpineSection, type DetailSpineSectionProps, DetailSpineStats, type DetailSpineStatsProps, Dialog, DialogBody, type DialogBodyProps, DialogClose, DialogContent, type DialogContentProps, DialogDescription, DialogFooter, DialogHeader, type DialogHeight, type DialogMessages, DialogOverlay, DialogPortal, type DialogPresentation, type DialogSize, type DialogSlot, DialogTitle, DialogTrigger, DismissibleChip, DisplayMenu, type DisplayMenuOption, type DisplayMenuProps, type DisplayMenuSection, DocumentChecklist, type DocumentChecklistFile, type DocumentChecklistItem, type DocumentChecklistProps, type DocumentChecklistStatus, DocumentDetailActions, type DocumentDetailActionsProps, DocumentDetailBody, type DocumentDetailBodyProps, DocumentDetailHeader, type DocumentDetailHeaderProps, DocumentDetailMetaRow, type DocumentDetailMetaRowProps, DocumentDetailPanel, type DocumentDetailPanelProps, DocumentDetailRequester, type DocumentDetailRequesterProps, DocumentDetailTitle, type DocumentDetailTitleProps, DocumentFileCard, type DocumentFileCardProps, DocumentFileLine, type DocumentFileLineProps, DocumentFileRow, type DocumentFileRowProps, type DocumentItemState, DocumentList, type DocumentListProps, DocumentListSection, type DocumentListSectionProps, type DocumentRequestActivityKind, type DocumentRequestAssigneeOption, DocumentRequestCard, type DocumentRequestCardProps, DocumentRequestDetail, type DocumentRequestDetailActivityEvent, type DocumentRequestDetailComment, type DocumentRequestDetailDoc, type DocumentRequestDetailProps, type DocumentRequestDetailTab, DocumentRequestField, type DocumentRequestFieldProps, type DocumentRequestItemSummary, type DocumentRequestRequestedItem, type DocumentRequestReviewStatusOption, type DocumentRequestTone, DocumentRequestUpload, type DocumentRequestUploadFile, type DocumentRequestUploadProps, DocumentRow, type DocumentRowProps, type DocumentSource, DocumentSourceFilter, type DocumentSourceFilterProps, type DocumentSourceFilterValue, DocumentSourceTag, type DocumentSourceTagProps, DocumentsWorkspaceLayout, type DocumentsWorkspaceLayoutProps, DonutChart, type DonutChartProps, type DonutSegment, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, type DropdownMenuSlot, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmailMessageCard, type EmailMessageCardProps, EmptyState, type EmptyStateProps, EngagementCard, type EngagementCardProps, EngagementTimeline, type EngagementTimelineProps, EngagementTimelineStep, type EngagementTimelineStepProps, Eyebrow, type EyebrowProps, Field, FieldControl, type FieldControlProps, type FieldControlWiring, FieldDescription, type FieldDescriptionProps, FieldError, type FieldErrorProps, FieldMessages, type FieldOrientation, type FieldProps, type FieldSlot, Fieldset, FieldsetLegend, type FieldsetLegendProps, type FieldsetProps, type FieldsetSlot, FileChip, type FileChipProps, type FileKind, FileTypeBadge, type FileTypeBadgeProps, type FileTypeTone, FileUpload, FileUploadMessages, type FileUploadProps, type FileUploadSlot, type FileUploadVariant, FilterChip, type FilterChipProps, type FolderNode, FolderTree, type FolderTreeProps, FormError, FormSection, FormSuccess, Grid, type GridColumn, type GridInputType, type GridProps, type GridRow, type GridValue, Heading, type HeadingLevel, type HeadingProps, type HeadingSize, type HeadingSlot, HoverCard, HoverCardContent, type HoverCardContentProps, type HoverCardPadding, HoverCardPortal, HoverCardTrigger, type HoverCardWidth, ICON_TILE_TONE_TO_INTENT, IconAction, type IconActionProps, IconButton, type IconButtonProps, type IconButtonSize, type IconButtonSlot, type IconButtonTooltipSide, IconTile, type IconTileIntent, type IconTileProps, type IconTileSize, type IconTileSuiteTone, type IconTileTone, type IconTileVariantProps, Inline, type InlineProps, type InlineSlot, Input, type InputProps$1 as InputProps, type InputSize, type InputSizeAlias, type InputSlot, type InputVariant, type InputVariants, type InputVariantsOptions, Intent, IntentBadge, type IntentBadgeProps, type IntentTone, Kanban, KanbanCard, type KanbanCardProps, KanbanColumn, type KanbanColumnProps, type KanbanProps, Kbd, type KbdGlyph, KbdHint, type KbdHintProps, type KbdProps, type KbdSlot, type KbdVariant, type KeyboardShortcut, type KeyboardShortcutSection, KeyboardShortcutsDialog, type KeyboardShortcutsDialogProps, KeyboardShortcutsMessages, KpiCard, type KpiCardProps, type KpiDelta, Label, type LabelSlot, type LayoutAlign, type LayoutBreakpoint, type LayoutGap, type LayoutJustify, LinkAction, type LinkActionProps, LinkButton, type LinkButtonProps$1 as LinkButtonProps, type LinkButtonSlot, LoadingRows, Logo, Main, type MainProps, MasterDetailLayout, type MasterDetailLayoutProps, MessageBubble, MessageBubbleAction, type MessageBubbleActionProps, type MessageBubbleProps, MessageBubbleTombstone, type MessageBubbleTombstoneProps, MessageComposer, type MessageComposerProps, MetadataGrid, type MissingDocumentItem, MissingDocumentsPanel, type MissingDocumentsPanelProps, MoneyCell, MultiFilterPill, MultiSelect, MultiSelectField, type MultiSelectProps, MutedSpec, type MutedSpecProps, NewMenu, type NewMenuAction, type NewMenuGroup, type NewMenuProps, NotificationFilter, type NotificationFilterProps, type NotificationFilterValue, NotificationItem, type NotificationItemProps, NotificationList, type NotificationListProps, NotificationPanel, NotificationPanelFooter, type NotificationPanelFooterProps, NotificationPanelHeader, type NotificationPanelHeaderProps, type NotificationPanelProps, NumberInput, type NumberInputProps, type NumberInputSlot, Numeric, type NumericProps, OTPInput, type OTPInputProps, type OnlyStatuses, type Option, type OptionAccessors, PROGRESS_LEGACY_TO_INTENT, PageHeader, type PageHeaderProps, PageHeaderSep, type PageHeaderSepProps, PageHeaderSpec, type PageHeaderSpecProps, Pagination, type PaginationProps, type PaginationSlot, PdfPreview, type PdfPreviewProps, PhoneCountryInput, PhoneField, type PhoneFieldChangeDetails, PhoneFieldMessages, type PhoneFieldProps, type PhoneFieldSlot, PhoneInput, type PillStatus, Popover, PopoverAnchor, PopoverClose, PopoverContent, type PopoverContentProps, type PopoverPadding, PopoverPortal, type PopoverSlot, PopoverTrigger, type PopoverWidth, Pressable, type PressableProps, type PressableSlot, PrimaryAction, type PrimaryActionProps, type Priority, PriorityIcon, type PriorityIconProps, ProgressBar, type ProgressBarProps, type ProgressBarVariant, type ProgressBarVariantProps, type ProgressIntent, type ProgressLegacyColour, ProgressRing, type ProgressRingProps, type ProgressRingVariant, type ProgressRingVariantProps, type PromptFn, type PromptOptions, ProposalAddOn, type ProposalAddOnProps, type ProposalBillingMode, type ProposalBillingRow, ProposalBillingTerms, type ProposalBillingTermsProps, ProposalConsentGate, type ProposalConsentGateProps, ProposalCustomPage, type ProposalCustomPageKind, type ProposalCustomPageProps, ProposalNote, type ProposalNoteProps, ProposalPackageCard, type ProposalPackageCardProps, type ProposalPackageMode, ProposalPaymentCapture, type ProposalPaymentCaptureProps, ProposalPricingSummary, type ProposalPricingSummaryProps, ProposalServiceRow, type ProposalServiceRowProps, ProposalSignatureBlock, type ProposalSignatureBlockProps, type ProposalSigner, ProposalSignerList, type ProposalSignerListProps, type ProposalSignerStatus, type QuestionAddressValue, type QuestionFileValue, type QuestionHelp, type QuestionLabeledColumn, type QuestionLabeledRow, type QuestionLabeledValue, type QuestionNameValue, type QuestionOption, type QuestionTableColumn, type QuestionTableRow, type QuestionType, QuestionnairePanel, type QuestionnairePanelGroup, type QuestionnairePanelProps, type QuestionnairePanelSection, type QuestionnairePanelStatus, Questions, type QuestionsProps, type QuickReplyChip, RadioGroup, type RadioGroupAppearance, RadioGroupItem, type RadioGroupItemProps, type RadioGroupProps, type RadioGroupSlot, type RankedBar, RankedBars, type RankedBarsProps, type Responsive, ResponsiveDialog, type ResponsiveDialogProps, RouteTransition, type RouteTransitionProps, SERVICE_TONES, SPINNER_TONE_TO_INTENT, STATUS_DOT_TONE_TO_INTENT, ScrollArea, ScrollBar, SearchInput, SearchInputMessages, type SearchInputProps, type SearchInputSize, type SearchInputSlot, type SearchInputVariants, type SearchInputVariantsOptions, SearchSelect, type SearchSelectOption, type SearchSelectProps, SecondaryAction, type SecondaryActionProps, Section, SectionHead, SectionHeader, SegmentedProgress, type SegmentedProgressProps, type SegmentedServiceTone, type SegmentedTone, Select, type SelectClassNames, SelectContent, type SelectContentProps, SelectGroup, SelectItem, SelectLabel, SelectMessages, type SelectOption, type SelectProps, SelectRoot, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, type SelectSize, type SelectSlot, SelectTrigger, type SelectTriggerProps, SelectValue, SelectableKpiCard, type SelectableKpiCardProps, Separator, type ServiceTone, Shape, Sheet, SheetBody, type SheetBodyProps, SheetClose, SheetContent, type SheetContentProps, SheetDescription, SheetFooter, SheetHeader, type SheetMessages, SheetOverlay, SheetPortal, type SheetSide, type SheetSize, type SheetSlot, SheetTitle, SheetTrigger, type SheetWidth, Shell, type ShellProps, type ShellSlot, SideDrawer, type SideDrawerSlot, Sidebar, SidebarBrand, type SidebarBrandProps, SidebarBrandSwitcher, type SidebarBrandSwitcherExtra, type SidebarBrandSwitcherItem, type SidebarBrandSwitcherProps, type SidebarBrandSwitcherSlot, SidebarBrandSwitcherTile, SidebarBrandText, type SidebarBrandTextProps, SidebarFooter, type SidebarFooterProps, SidebarLink, SidebarLinkAction, type SidebarLinkActionProps, SidebarLinkBadge, type SidebarLinkBadgeProps, type SidebarLinkBadgeVariants, SidebarLinkGroup, type SidebarLinkGroupProps, SidebarLinkLabel, type SidebarLinkLabelProps, type SidebarLinkProps, SidebarPinButton, type SidebarPinButtonProps, type SidebarProps, SidebarProvider, type SidebarProviderProps, SidebarSection, type SidebarSectionProps, type SidebarSlot, type SidebarState, SidebarTrigger, type SidebarTriggerProps, SidebarUser, type SidebarUserProps, SignatureEditor, type SignatureEditorProps, Skeleton, SkeletonCircle, SkeletonText, Slider, type SliderProps, type SliderSize, type SortDirection, Spinner, type SpinnerIntent, type SpinnerProps, type SpinnerSize, type SpinnerTone, type SpinnerVariantProps, SpreadsheetPreview, type SpreadsheetPreviewProps, Stack, type StackDirection, type StackProps, type StackSlot, StackedBarChart, type StackedBarChartProps, type StackedBarDatum, type StackedBarSeries, StagePill, StarRating, type StarRatingProps, Stat, StatusBadge, type StatusBadgeProps, type StatusBadgeSlot, StatusDot, type StatusDotIntent, type StatusDotProps, type StatusDotSize, type StatusDotTone, type StatusDotVariantProps, StatusIcon, type StatusIconProps, type StatusMap, StatusPill, type StatusPillProps, type StatusPresentation, type StatusState, type Step, Stepper, type StepperProps, StickyActionBar, type StickyActionBarProps, StickyStack, StickyStackLayer, type StickyStackLayerProps, type StickyStackProps, StickyStackSectionHeader, type StickyStackSectionHeaderProps, StickyStackSticky, type StickyStackStickyProps, SubmitButton, SuggestionPills, type SuggestionPillsProps, SuiteProgress, type SuiteProgressFillVariantProps, type SuiteProgressProps, type SuiteProgressSize, type SuiteProgressSuiteTone, type SuiteProgressTone, Surface, type SurfaceElevation, type SurfacePadding, type SurfaceProps, type SurfaceRadius, type SurfaceSlot, Switch, type SwitchProps, type SwitchSize, type SwitchSlot, Table, TableBody, type TableBodyProps, TableCaption, type TableCaptionProps, TableCell, type TableCellProps, TableFooter, type TableFooterProps, TableHead, type TableHeadProps, TableHeader, type TableHeaderProps, type TableProps, TableRow, type TableRowData, type TableRowProps, type TableSlot, type TableTone, Tabs, TabsContent, TabsList, TabsTrigger, TagsCell, TeamMemberSelect, Text, type TextColor, type TextProps, type TextSize, type TextSlot, type TextWeight, Textarea, type TextareaProps, type TextareaSize, type TextareaSlot, type TextareaVariant, type TextareaVariants, type TextareaVariantsOptions, type ThemeBrand, type ThemeDensity, type ThemeDirection, type ThemeScheme, ThemeScope, type ThemeScopeProps, type ThemeScopeValue, TimeLogger, TimeLoggerActions, type TimeLoggerActionsProps, TimeLoggerBillable, type TimeLoggerBillableProps, TimeLoggerContextRow, type TimeLoggerContextRowProps, TimeLoggerEntry, TimeLoggerEntryList, type TimeLoggerEntryListProps, type TimeLoggerEntryProps, TimeLoggerField, type TimeLoggerFieldProps, TimeLoggerFooter, type TimeLoggerFooterProps, TimeLoggerHeader, type TimeLoggerHeaderProps, TimeLoggerNotes, type TimeLoggerNotesProps, type TimeLoggerPhase, type TimeLoggerProps, type TimeLoggerTier, TimeLoggerTimer, type TimeLoggerTimerProps, type TimelineState, type ToastAction, type ToastContextValue, ToastMessages, type ToastOptions, ToastProvider, type ToastSlot, type ToastVariant, ToggleGroup, type ToggleGroupFormProps, ToggleGroupItem, type ToggleGroupItemProps, type ToggleGroupProps, type ToggleGroupSize, type ToggleGroupVariant, Toolbar, type ToolbarProps, Tooltip, TooltipContent, type TooltipContentProps, type TooltipMaxWidth, TooltipPortal, type TooltipProps, TooltipProvider, type TooltipSlot, TooltipTrigger, type UseFieldControlProps, type UseStopwatchReturn, Variant, VisuallyHidden, YEAR_DISPLAY_PLACEHOLDER, alertVariants, applyMask, applyYearMask, assetPath, attachmentChipVariants, badgeVariants, brandLabel, brandScope, buttonVariants, cardVariants, chipVariants, cn, dateToIso, defineStatusMap, displayToIso, fileTypeBadgeVariants, fileTypeFromName, filterChipVariants, formatClock, formatCurrency, formatDuration, getAssetBasePath, getFlagEmoji, iconButtonVariants, resolveIconTileVariants as iconTileVariants, inputVariants, isoToDate, isoToDisplay, isoToYear, labelVariants, parseDuration, parsePhoneForEditing, progressBarVariants, progressRingVariants, resolveBadgeAppearance, resolveButtonStyle, resolveChipStyle, searchInputVariants, serviceToneLabel, serviceToneStyle, setAssetBasePath, sidebarLinkBadgeVariants, spinnerVariants, starRatingVariants, statusDotVariants, suiteProgressFillVariants, textareaVariants, useBrandScope, useConfirm, useFieldControl, usePrompt, useSidebarPeekLock, useSidebarState, useStopwatch, useToast, yearToIso };
|