@viraui/react 2026.7.0-next.0 → 2026.7.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.
Files changed (122) hide show
  1. package/dist/catalog.json +13 -1
  2. package/dist/components/accordion/accordion-item.d.ts +10 -10
  3. package/dist/components/accordion/accordion.d.ts +2 -2
  4. package/dist/components/annotate/annotate.d.ts +15 -15
  5. package/dist/components/autocomplete/autocomplete-item.d.ts +3 -3
  6. package/dist/components/autocomplete/autocomplete.d.ts +12 -12
  7. package/dist/components/avatar/avatar.d.ts +6 -6
  8. package/dist/components/avatar-group/avatar-group.d.ts +6 -6
  9. package/dist/components/badge/badge.d.ts +5 -5
  10. package/dist/components/basic-input/basic-input.d.ts +1 -1
  11. package/dist/components/basic-input/input-control-group.d.ts +2 -2
  12. package/dist/components/beam/beam.css +1 -1
  13. package/dist/components/beam/beam.d.ts +12 -12
  14. package/dist/components/bleed/bleed.d.ts +3 -3
  15. package/dist/components/button/button-link.d.ts +1 -1
  16. package/dist/components/button/button.d.ts +1 -1
  17. package/dist/components/checkbox/checkbox-group.d.ts +1 -1
  18. package/dist/components/checkbox/checkbox.d.ts +7 -7
  19. package/dist/components/chip/chip.d.ts +6 -6
  20. package/dist/components/clamp-text/clamp-text.d.ts +5 -5
  21. package/dist/components/dialog/dialog-close.d.ts +1 -1
  22. package/dist/components/dialog/dialog-indent-background.d.ts +1 -1
  23. package/dist/components/dialog/dialog-indent.d.ts +1 -1
  24. package/dist/components/dialog/dialog-sheet.d.ts +10 -10
  25. package/dist/components/dialog/dialog-trigger.d.ts +1 -1
  26. package/dist/components/dialog/dialog.d.ts +1 -1
  27. package/dist/components/disclosure/disclosure-panel.d.ts +12 -0
  28. package/dist/components/disclosure/disclosure-panel.js +13 -0
  29. package/dist/components/disclosure/disclosure-trigger.d.ts +46 -0
  30. package/dist/components/disclosure/disclosure-trigger.js +82 -0
  31. package/dist/components/disclosure/disclosure.css +1 -0
  32. package/dist/components/disclosure/disclosure.d.ts +25 -0
  33. package/dist/components/disclosure/disclosure.js +30 -0
  34. package/dist/components/disclosure/disclosure.module.js +15 -0
  35. package/dist/components/disclosure/index.d.ts +4 -0
  36. package/dist/components/elevator/elevator.d.ts +7 -7
  37. package/dist/components/fieldset/fieldset.d.ts +4 -4
  38. package/dist/components/fit-text/fit-text.d.ts +2 -2
  39. package/dist/components/glow/glow.d.ts +12 -12
  40. package/dist/components/grid/grid-item.d.ts +8 -8
  41. package/dist/components/grid/grid.d.ts +12 -12
  42. package/dist/components/icon-button/icon-button-link.d.ts +2 -2
  43. package/dist/components/icon-button/icon-button.d.ts +2 -2
  44. package/dist/components/index.d.ts +2 -0
  45. package/dist/components/linear-progress/linear-progress.d.ts +4 -4
  46. package/dist/components/masonry/masonry-item.d.ts +3 -3
  47. package/dist/components/masonry/masonry.d.ts +4 -4
  48. package/dist/components/menu/menu-checkbox-item.d.ts +4 -4
  49. package/dist/components/menu/menu-item.d.ts +4 -4
  50. package/dist/components/menu/menu-link-item.d.ts +4 -4
  51. package/dist/components/menu/menu-popup.d.ts +2 -2
  52. package/dist/components/menu/menu-radio-group.d.ts +2 -2
  53. package/dist/components/menu/menu-radio-item.d.ts +4 -4
  54. package/dist/components/menu/menu-separator.d.ts +1 -1
  55. package/dist/components/menu/menu-submenu-trigger.d.ts +3 -3
  56. package/dist/components/menu/menu.d.ts +3 -3
  57. package/dist/components/meter/meter.d.ts +5 -5
  58. package/dist/components/number-field/index.d.ts +2 -0
  59. package/dist/components/number-field/number-field.css +1 -0
  60. package/dist/components/number-field/number-field.d.ts +78 -0
  61. package/dist/components/number-field/number-field.js +120 -0
  62. package/dist/components/number-field/number-field.module.js +21 -0
  63. package/dist/components/otp-field/index.d.ts +1 -1
  64. package/dist/components/otp-field/otp-field-input.d.ts +1 -1
  65. package/dist/components/otp-field/otp-field-separator.d.ts +3 -1
  66. package/dist/components/otp-field/otp-field-separator.js +5 -1
  67. package/dist/components/otp-field/otp-field.d.ts +4 -5
  68. package/dist/components/otp-field/otp-field.js +0 -1
  69. package/dist/components/popover/popover-sheet.d.ts +6 -6
  70. package/dist/components/popover/popover.d.ts +5 -5
  71. package/dist/components/progressive-blur/progressive-blur.d.ts +5 -5
  72. package/dist/components/prose/prose.css +1 -1
  73. package/dist/components/prose/prose.d.ts +4 -4
  74. package/dist/components/radio/radio-group.d.ts +1 -1
  75. package/dist/components/radio/radio.d.ts +6 -6
  76. package/dist/components/select/select-indicator-slot.d.ts +1 -1
  77. package/dist/components/select/select-option.d.ts +4 -4
  78. package/dist/components/select/select-separator.d.ts +1 -1
  79. package/dist/components/select/select.d.ts +10 -10
  80. package/dist/components/separator/separator.d.ts +9 -9
  81. package/dist/components/shimmer/shimmer.d.ts +6 -6
  82. package/dist/components/skeleton/skeleton-overlay.d.ts +5 -5
  83. package/dist/components/skeleton/skeleton.d.ts +9 -9
  84. package/dist/components/slider/slider.d.ts +7 -7
  85. package/dist/components/spinner/spinner.d.ts +3 -3
  86. package/dist/components/stack/stack.d.ts +17 -17
  87. package/dist/components/static-noise/static-noise.d.ts +5 -5
  88. package/dist/components/surface/surface.d.ts +12 -12
  89. package/dist/components/switch/switch.d.ts +7 -7
  90. package/dist/components/tabs/tabs-list.d.ts +1 -1
  91. package/dist/components/tabs/tabs-panel.d.ts +1 -1
  92. package/dist/components/tabs/tabs-tab.d.ts +3 -3
  93. package/dist/components/tabs/tabs.d.ts +2 -2
  94. package/dist/components/text/text.d.ts +23 -23
  95. package/dist/components/textarea/textarea.d.ts +6 -6
  96. package/dist/components/textfield/textfield.d.ts +1 -1
  97. package/dist/components/title/title.d.ts +21 -21
  98. package/dist/components/toast/toast-action.d.ts +1 -1
  99. package/dist/components/toast/toast-banner.d.ts +7 -7
  100. package/dist/components/toast/toast-viewport.d.ts +2 -2
  101. package/dist/components/toggle-button/toggle-button.d.ts +6 -6
  102. package/dist/components/toggle-group/toggle-group.d.ts +1 -1
  103. package/dist/components/tooltip/tooltip-content.d.ts +2 -2
  104. package/dist/components/typewriter/typewriter.d.ts +10 -10
  105. package/dist/index.js +3 -1
  106. package/dist/specs/components/accordion/usage.xml +1 -0
  107. package/dist/specs/components/disclosure/a11y.xml +9 -0
  108. package/dist/specs/components/disclosure/meta.xml +20 -0
  109. package/dist/specs/components/disclosure/patterns.xml +55 -0
  110. package/dist/specs/components/disclosure/props.xml +54 -0
  111. package/dist/specs/components/disclosure/usage.xml +11 -0
  112. package/dist/specs/components/number-field/a11y.xml +10 -0
  113. package/dist/specs/components/number-field/meta.xml +21 -0
  114. package/dist/specs/components/number-field/patterns.xml +43 -0
  115. package/dist/specs/components/number-field/props.xml +35 -0
  116. package/dist/specs/components/number-field/usage.xml +12 -0
  117. package/dist/specs/components/otp-field/meta.xml +1 -4
  118. package/dist/specs/components/otp-field/patterns.xml +8 -8
  119. package/dist/specs/components/otp-field/props.xml +2 -2
  120. package/dist/specs/components/otp-field/usage.xml +4 -4
  121. package/dist/specs/index.xml +22 -2
  122. package/package.json +2 -2
@@ -10,37 +10,37 @@ type StackAxisPadding = StackSpace | [StackSpace | 0, StackSpace | 0];
10
10
  * Includes standard `div` attributes such as `id`, `role`, `title`, and event handlers,
11
11
  * plus Vira-owned flex layout controls and Base UI `render` support for replacing the root element.
12
12
  *
13
- * @default Base UI pass-through props keep upstream defaults.
13
+ * @defaultValue Base UI pass-through props keep upstream defaults.
14
14
  */
15
15
  export type StackProps = React.ComponentPropsWithoutRef<'div'> & {
16
16
  /**
17
17
  * Replaces the default `div` root using Base UI render semantics.
18
18
  *
19
- * @default The stack renders a `div` root.
19
+ * @defaultValue The stack renders a `div` root.
20
20
  */
21
21
  render?: useRender.RenderProp;
22
22
  /**
23
23
  * Ref forwarded to the rendered stack root element.
24
24
  *
25
- * @default No ref is attached.
25
+ * @defaultValue No ref is attached.
26
26
  */
27
27
  ref?: React.Ref<HTMLElement>;
28
28
  /**
29
29
  * Renders children across rows or columns using the chosen flex direction.
30
30
  *
31
- * @default 'column'
31
+ * @defaultValue 'column'
32
32
  */
33
33
  direction?: 'row' | 'column' | 'row-reverse' | 'column-reverse';
34
34
  /**
35
35
  * Displays the stack as `inline-flex` instead of `flex`.
36
36
  *
37
- * @default false
37
+ * @defaultValue false
38
38
  */
39
39
  inline?: boolean;
40
40
  /**
41
41
  * Allows direct children to wrap onto additional lines when space is constrained.
42
42
  *
43
- * @default false
43
+ * @defaultValue false
44
44
  */
45
45
  wrap?: boolean;
46
46
  /**
@@ -50,7 +50,7 @@ export type StackProps = React.ComponentPropsWithoutRef<'div'> & {
50
50
  * Does not set the stack root's own inline size — use `fullWidth` when this stack must
51
51
  * fill its parent width (e.g. centered shell with `maxWidth`, or a full-bleed Button column).
52
52
  *
53
- * @default false
53
+ * @defaultValue false
54
54
  */
55
55
  expandChildren?: boolean;
56
56
  /**
@@ -61,55 +61,55 @@ export type StackProps = React.ComponentPropsWithoutRef<'div'> & {
61
61
  * Use with `maxWidth` under a parent `hAlign="center"` for a fluid, capped, centered shell.
62
62
  * Orthogonal to `expandChildren` (self size vs children grow).
63
63
  *
64
- * @default false
64
+ * @defaultValue false
65
65
  */
66
66
  fullWidth?: boolean;
67
67
  /**
68
68
  * Sets the gap between flex rows using the Vira space token scale.
69
69
  *
70
- * @default No row gap.
70
+ * @defaultValue No row gap.
71
71
  */
72
72
  rowGap?: StackSpace;
73
73
  /**
74
74
  * Sets the gap between flex columns using the Vira space token scale.
75
75
  *
76
- * @default No column gap.
76
+ * @defaultValue No column gap.
77
77
  */
78
78
  columnGap?: StackSpace;
79
79
  /**
80
80
  * Aligns content on the horizontal axis from the consumer point of view.
81
81
  *
82
- * @default 'initial'
82
+ * @defaultValue 'initial'
83
83
  */
84
84
  hAlign?: StackAlignment;
85
85
  /**
86
86
  * Aligns content on the vertical axis from the consumer point of view.
87
87
  *
88
- * @default 'initial'
88
+ * @defaultValue 'initial'
89
89
  */
90
90
  vAlign?: StackAlignment;
91
91
  /**
92
92
  * Sets inline padding using one token for both sides or a `[start, end]` tuple.
93
93
  *
94
- * @default No inline padding.
94
+ * @defaultValue No inline padding.
95
95
  */
96
96
  hPadding?: StackAxisPadding;
97
97
  /**
98
98
  * Sets block padding using one token for both sides or a `[start, end]` tuple.
99
99
  *
100
- * @default No block padding.
100
+ * @defaultValue No block padding.
101
101
  */
102
102
  vPadding?: StackAxisPadding;
103
103
  /**
104
104
  * Applies a maximum width value to the stack root.
105
105
  *
106
- * @default No max width constraint.
106
+ * @defaultValue No max width constraint.
107
107
  */
108
108
  maxWidth?: string;
109
109
  /**
110
110
  * Applies a minimum width value to the stack root.
111
111
  *
112
- * @default No minimum width constraint.
112
+ * @defaultValue No minimum width constraint.
113
113
  */
114
114
  minWidth?: string;
115
115
  /**
@@ -121,7 +121,7 @@ export type StackProps = React.ComponentPropsWithoutRef<'div'> & {
121
121
  * Warning: inline-size containment can affect nested layout (e.g. cards inside Masonry).
122
122
  * Use only when you need container queries against this specific Stack.
123
123
  *
124
- * @default false
124
+ * @defaultValue false
125
125
  */
126
126
  enableContainer?: boolean;
127
127
  };
@@ -5,31 +5,31 @@ import type * as React from 'react';
5
5
  * Includes standard `figure` attributes such as `id`, `className`, and event handlers,
6
6
  * plus Vira-owned turbulence tuning controls.
7
7
  *
8
- * @default Native figure pass-through props keep React defaults.
8
+ * @defaultValue Native figure pass-through props keep React defaults.
9
9
  */
10
10
  export type StaticNoiseProps = React.ComponentPropsWithRef<'figure'> & {
11
11
  /**
12
12
  * Sets the SVG turbulence `baseFrequency` for the internal noise filter.
13
13
  *
14
- * @default 0.5
14
+ * @defaultValue 0.5
15
15
  */
16
16
  baseFrequency?: number | string;
17
17
  /**
18
18
  * Sets the rendered overlay opacity.
19
19
  *
20
- * @default 0.2
20
+ * @defaultValue 0.2
21
21
  */
22
22
  opacity?: number;
23
23
  /**
24
24
  * Sets the rendered overlay mix blend mode.
25
25
  *
26
- * @default 'difference'
26
+ * @defaultValue 'difference'
27
27
  */
28
28
  mixBlendMode?: React.CSSProperties['mixBlendMode'];
29
29
  /**
30
30
  * Animates the internal turbulence filter by cycling `feTurbulence` seed values.
31
31
  *
32
- * @default false
32
+ * @defaultValue false
33
33
  */
34
34
  animate?: boolean;
35
35
  };
@@ -14,70 +14,70 @@ export type SurfaceBorder = 'all' | 'top' | 'right' | 'bottom' | 'left';
14
14
  * Includes standard `div` attributes such as `id`, `role`, `title`, and event handlers,
15
15
  * plus Vira-owned container styling controls and Base UI `render` support for replacing the root element.
16
16
  *
17
- * @default Base UI pass-through props keep upstream defaults.
17
+ * @defaultValue Base UI pass-through props keep upstream defaults.
18
18
  */
19
19
  export type SurfaceProps = Omit<React.ComponentPropsWithoutRef<'div'>, 'color'> & {
20
20
  /**
21
21
  * Replaces the default `div` root using Base UI render semantics.
22
22
  *
23
- * @default The surface renders a `div` root.
23
+ * @defaultValue The surface renders a `div` root.
24
24
  */
25
25
  render?: useRender.RenderProp;
26
26
  /**
27
27
  * Ref forwarded to the rendered surface root element.
28
28
  *
29
- * @default No ref is attached.
29
+ * @defaultValue No ref is attached.
30
30
  */
31
31
  ref?: React.Ref<HTMLElement>;
32
32
  /**
33
33
  * Sets the resting background using a base ramp layer (`1`–`3`), a literal CSS color value, or the named token
34
34
  * `primary` (`data-surface-color="primary"`; CSS owns light/dark opacity via `--global-primary`).
35
35
  *
36
- * @default No background.
36
+ * @defaultValue No background.
37
37
  */
38
38
  color?: SurfaceColor;
39
39
  /**
40
40
  * Sets the hover background on hover-capable pointers using a base ramp layer (`1`–`3`), a literal CSS value, or the
41
41
  * named token `primary` (`data-surface-hover-color="primary"`; CSS owns light/dark opacity via `--global-primary`).
42
42
  *
43
- * @default No hover color override.
43
+ * @defaultValue No hover color override.
44
44
  */
45
45
  hoverColor?: SurfaceColor;
46
46
  /**
47
47
  * Applies the shared contrast border on one or more sides (`'all'`, `'top'`, `'right'`, `'bottom'`, `'left'`).
48
48
  * Pass a single side or a list (e.g. `['bottom', 'left']`). Omit for no border.
49
49
  *
50
- * @default No border.
50
+ * @defaultValue No border.
51
51
  */
52
52
  border?: SurfaceBorder | readonly SurfaceBorder[];
53
53
  /**
54
54
  * Sets the CSS border style when `border` is set.
55
55
  *
56
- * @default solid
56
+ * @defaultValue solid
57
57
  */
58
58
  borderStyle?: 'solid' | 'dashed' | 'dotted' | 'double';
59
59
  /**
60
60
  * Sets corner radius from the Vira radius token scale, a per-corner `[top-left, top-right, bottom-right, bottom-left]` tuple (`0` for square corners), or `auto` for concentric radii from the nearest ancestor Surface.
61
61
  *
62
- * @default No radius.
62
+ * @defaultValue No radius.
63
63
  */
64
64
  radius?: SurfaceRadiusInput;
65
65
  /**
66
66
  * Sets inline padding using one token for both sides or a `[start, end]` tuple.
67
67
  *
68
- * @default No inline padding.
68
+ * @defaultValue No inline padding.
69
69
  */
70
70
  hPadding?: SurfacePadding;
71
71
  /**
72
72
  * Sets block padding using one token for both sides or a `[start, end]` tuple.
73
73
  *
74
- * @default No block padding.
74
+ * @defaultValue No block padding.
75
75
  */
76
76
  vPadding?: SurfacePadding;
77
77
  /**
78
78
  * Sets root overflow through the `--vui-surface-overflow` custom property.
79
79
  *
80
- * @default visible
80
+ * @defaultValue visible
81
81
  */
82
82
  overflow?: React.CSSProperties['overflow'];
83
83
  /**
@@ -89,7 +89,7 @@ export type SurfaceProps = Omit<React.ComponentPropsWithoutRef<'div'>, 'color'>
89
89
  * Warning: inline-size containment can affect nested layout (e.g. cards inside Masonry).
90
90
  * Use only when you need container queries against this specific Surface.
91
91
  *
92
- * @default false
92
+ * @defaultValue false
93
93
  */
94
94
  enableContainer?: boolean;
95
95
  };
@@ -9,44 +9,44 @@ import type * as React from 'react';
9
9
  * and change handlers, plus optional field copy rendered with the shared Vira
10
10
  * field label/helper pattern.
11
11
  *
12
- * @default Base UI pass-through props keep upstream defaults.
12
+ * @defaultValue Base UI pass-through props keep upstream defaults.
13
13
  */
14
14
  export type SwitchProps = SwitchRoot.Props & Omit<FieldRoot.Props, 'ref'> & {
15
15
  /**
16
16
  * Visible label rendered with shared internal `FieldLabel`.
17
17
  *
18
- * @default No label is rendered.
18
+ * @defaultValue No label is rendered.
19
19
  */
20
20
  label?: React.ReactNode;
21
21
  /**
22
22
  * Helper copy rendered with `Field.Description` and `Text` while the field is valid.
23
23
  *
24
- * @default No description is rendered.
24
+ * @defaultValue No description is rendered.
25
25
  */
26
26
  description?: React.ReactNode;
27
27
  /**
28
28
  * Error copy rendered with `Field.Error` and `Text` in the same slot as `description`.
29
29
  * Replaces description while the field is invalid and dirty.
30
30
  *
31
- * @default No static error copy is rendered.
31
+ * @defaultValue No static error copy is rendered.
32
32
  */
33
33
  error?: React.ReactNode;
34
34
  /**
35
35
  * Controls the visual switch size.
36
36
  *
37
- * @default 's'
37
+ * @defaultValue 's'
38
38
  */
39
39
  size?: 'm' | 's';
40
40
  /**
41
41
  * Sets block padding using one token for both sides or a `[start, end]` tuple.
42
42
  *
43
- * @default No block padding.
43
+ * @defaultValue No block padding.
44
44
  */
45
45
  vPadding?: StackProps['vPadding'];
46
46
  /**
47
47
  * Sets inline padding using one token for both sides or a `[start, end]` tuple.
48
48
  *
49
- * @default No inline padding.
49
+ * @defaultValue No inline padding.
50
50
  */
51
51
  hPadding?: StackProps['hPadding'];
52
52
  };
@@ -6,7 +6,7 @@ import type * as React from 'react';
6
6
  * Wraps Base UI `Tabs.List` in a compact `Surface`, lays out items with `Stack`,
7
7
  * and renders the active tab indicator internally.
8
8
  *
9
- * @default Base UI pass-through props keep upstream defaults.
9
+ * @defaultValue Base UI pass-through props keep upstream defaults.
10
10
  */
11
11
  export type TabsListProps = TabsListPrimitive.Props;
12
12
  export declare const TabsList: React.FC<TabsListProps>;
@@ -5,7 +5,7 @@ import type * as React from 'react';
5
5
  *
6
6
  * Base UI `Tabs.Panel` with entry slide/fade animation.
7
7
  *
8
- * @default Base UI pass-through props keep upstream defaults.
8
+ * @defaultValue Base UI pass-through props keep upstream defaults.
9
9
  */
10
10
  export type TabsPanelProps = TabsPanelPrimitive.Props;
11
11
  export declare const TabsPanel: React.FC<TabsPanelProps>;
@@ -5,19 +5,19 @@ import type * as React from 'react';
5
5
  *
6
6
  * Wraps Base UI `Tabs.Tab` with optional decorative addon layout.
7
7
  *
8
- * @default Base UI pass-through props keep upstream defaults.
8
+ * @defaultValue Base UI pass-through props keep upstream defaults.
9
9
  */
10
10
  export type TabsTabProps = TabsTabPrimitive.Props & {
11
11
  /**
12
12
  * Decorative addon rendered alongside the tab label.
13
13
  *
14
- * @default No addon is rendered.
14
+ * @defaultValue No addon is rendered.
15
15
  */
16
16
  addon?: React.ReactNode;
17
17
  /**
18
18
  * Controls whether the addon appears before or after the label.
19
19
  *
20
- * @default 'start'
20
+ * @defaultValue 'start'
21
21
  */
22
22
  addonPosition?: 'start' | 'end';
23
23
  };
@@ -11,13 +11,13 @@ import * as React from 'react';
11
11
  * Includes Base UI tabs root props such as `value`, `defaultValue`, `orientation`,
12
12
  * and `onValueChange`.
13
13
  *
14
- * @default Base UI pass-through props keep upstream defaults.
14
+ * @defaultValue Base UI pass-through props keep upstream defaults.
15
15
  */
16
16
  export type TabsProps = TabsRoot.Props & {
17
17
  /**
18
18
  * Horizontal alignment of tab list within root Stack.
19
19
  *
20
- * @default 'start'
20
+ * @defaultValue 'start'
21
21
  */
22
22
  listAlignment?: Extract<StackProps['hAlign'], 'start' | 'center' | 'end' | 'stretch'>;
23
23
  };
@@ -9,19 +9,19 @@ type TextAxisPadding = TextSpace | [TextSpace | 0, TextSpace | 0];
9
9
  * Includes standard inline text attributes such as `children`, `id`, `title`, and event handlers,
10
10
  * plus Vira-owned body typography, color, and layout controls.
11
11
  *
12
- * @default Base HTML pass-through props keep upstream defaults.
12
+ * @defaultValue Base HTML pass-through props keep upstream defaults.
13
13
  */
14
14
  export type TextProps = React.ComponentPropsWithoutRef<'span'> & {
15
15
  /**
16
16
  * Replaces the default `span` root using Base UI render semantics.
17
17
  *
18
- * @default The text renders a `span` root.
18
+ * @defaultValue The text renders a `span` root.
19
19
  */
20
20
  render?: useRender.RenderProp;
21
21
  /**
22
22
  * Ref forwarded to the rendered text root element.
23
23
  *
24
- * @default No ref is attached.
24
+ * @defaultValue No ref is attached.
25
25
  */
26
26
  ref?: React.Ref<HTMLElement>;
27
27
  /**
@@ -29,19 +29,19 @@ export type TextProps = React.ComponentPropsWithoutRef<'span'> & {
29
29
  * (`4xl` | `3xl` | `2xl` | `xl` | `l` | `m` | `s` | `xs`).
30
30
  * Omit when nested in Text so font-size inherits the outer Text size.
31
31
  *
32
- * @default 'm' on root Text (CSS); inherit when nested and omitted
32
+ * @defaultValue 'm' on root Text (CSS); inherit when nested and omitted
33
33
  */
34
34
  size?: '4xl' | '3xl' | '2xl' | 'xl' | 'l' | 'm' | 's' | 'xs';
35
35
  /**
36
36
  * Selects the semantic font family for body copy and inline code-like text.
37
37
  *
38
- * @default 'body'
38
+ * @defaultValue 'body'
39
39
  */
40
40
  family?: 'body' | 'mono';
41
41
  /**
42
42
  * Selects a semantic weight keyword or a numeric weight (`font-weight` + `wght` axis).
43
43
  *
44
- * @default 'regular'
44
+ * @defaultValue 'regular'
45
45
  */
46
46
  weight?: 'light' | 'regular' | 'semibold' | 'bold' | number;
47
47
  /**
@@ -50,102 +50,102 @@ export type TextProps = React.ComponentPropsWithoutRef<'span'> & {
50
50
  * `interactive` → `--global-interactive-text`; `positive` / `informative` / `danger` / `warning`
51
51
  * → `--highlight-green` / `--highlight-blue` / `--highlight-red` / `--highlight-yellow`.
52
52
  *
53
- * @default No semantic tone override.
53
+ * @defaultValue No semantic tone override.
54
54
  */
55
55
  tone?: 'default' | 'primary' | 'muted' | 'interactive' | 'positive' | 'informative' | 'danger' | 'warning';
56
56
  /**
57
57
  * Applies a custom color as an escape hatch when semantic `tone` is not used.
58
58
  *
59
- * @default No literal color override.
59
+ * @defaultValue No literal color override.
60
60
  */
61
61
  color?: string;
62
62
  /**
63
63
  * Controls line height through foundation leading tokens.
64
64
  * Omit when nested in Text so line-height inherits the outer Text.
65
65
  *
66
- * @default 'm' on root Text (CSS); inherit when nested and omitted
66
+ * @defaultValue 'm' on root Text (CSS); inherit when nested and omitted
67
67
  */
68
68
  lineHeight?: 'none' | 'xs' | 's' | 'm' | 'l';
69
69
  /**
70
70
  * Aligns text using logical alignment values.
71
71
  * Omit so `text-align` inherits from the parent.
72
72
  *
73
- * @default Inherits parent `text-align`.
73
+ * @defaultValue Inherits parent `text-align`.
74
74
  */
75
75
  align?: React.CSSProperties['textAlign'];
76
76
  /**
77
77
  * Constrains the maximum inline size of the rendered text block.
78
78
  *
79
- * @default No max width constraint.
79
+ * @defaultValue No max width constraint.
80
80
  */
81
81
  maxWidth?: string;
82
82
  /**
83
83
  * Controls white-space preservation and wrapping behavior.
84
84
  *
85
- * @default 'normal'
85
+ * @defaultValue 'normal'
86
86
  */
87
87
  whiteSpace?: React.CSSProperties['whiteSpace'];
88
88
  /**
89
89
  * Sets letter-spacing on the rendered copy. Prefer this prop over CSS
90
90
  * `letter-spacing` on the same Text root.
91
91
  *
92
- * @default No letter-spacing override.
92
+ * @defaultValue No letter-spacing override.
93
93
  */
94
94
  tracking?: React.CSSProperties['letterSpacing'];
95
95
  /**
96
96
  * Applies `text-transform` on the rendered copy. Prefer this prop over CSS
97
97
  * `text-transform` on the same Text root.
98
98
  *
99
- * @default No text-transform override.
99
+ * @defaultValue No text-transform override.
100
100
  */
101
101
  transform?: React.CSSProperties['textTransform'];
102
102
  /**
103
103
  * Enables balanced wrapping for block-like copy.
104
104
  *
105
- * @default false
105
+ * @defaultValue false
106
106
  */
107
107
  balanced?: boolean;
108
108
  /**
109
109
  * Enables text selection on the rendered copy.
110
110
  *
111
- * @default true
111
+ * @defaultValue true
112
112
  */
113
113
  selection?: boolean;
114
114
  /**
115
115
  * Sets inline padding using one token for both sides or a `[start, end]` tuple.
116
116
  *
117
- * @default No inline padding.
117
+ * @defaultValue No inline padding.
118
118
  */
119
119
  hPadding?: TextAxisPadding;
120
120
  /**
121
121
  * Sets block padding using one token for both sides or a `[start, end]` tuple.
122
122
  *
123
- * @default No block padding.
123
+ * @defaultValue No block padding.
124
124
  */
125
125
  vPadding?: TextAxisPadding;
126
126
  /**
127
127
  * Trims text box whitespace at the chosen edge when the browser supports `text-box`.
128
128
  * Pass `false` to disable text-box trim.
129
129
  *
130
- * @default 'both'
130
+ * @defaultValue 'both'
131
131
  */
132
132
  trim?: 'start' | 'end' | 'both' | false;
133
133
  /**
134
134
  * Selects the `text-box` trim basis when `trim` is active.
135
135
  *
136
- * @default 'cap alphabetic'
136
+ * @defaultValue 'cap alphabetic'
137
137
  */
138
138
  trimType?: string;
139
139
  /**
140
140
  * Overrides font width as a percentage (100 = normal); maps to `font-stretch` and `wdth`.
141
141
  *
142
- * @default No width override.
142
+ * @defaultValue No width override.
143
143
  */
144
144
  fontWidth?: number;
145
145
  /**
146
146
  * Overrides the optical size (`opsz`) axis on variable fonts; static fonts keep `font-optical-sizing: auto`.
147
147
  *
148
- * @default No optical size override.
148
+ * @defaultValue No optical size override.
149
149
  */
150
150
  opticalSize?: number;
151
151
  /**
@@ -153,7 +153,7 @@ export type TextProps = React.ComponentPropsWithoutRef<'span'> & {
153
153
  * Default locks at this size’s `--font-scale-body-*` token (UI chrome stays stable).
154
154
  * Pass `true` for fluid page/body copy. Theme `--effect-fluid-typography: initial` still locks all Text globally.
155
155
  *
156
- * @default false
156
+ * @defaultValue false
157
157
  */
158
158
  fluid?: boolean;
159
159
  };
@@ -8,19 +8,19 @@ import type * as React from 'react';
8
8
  * `rows`, and event handlers on `Field.Control` (`render={<textarea />}`), plus optional
9
9
  * `label`, `description`, and `error` copy rendered with `Text` inside a `Stack` field layout.
10
10
  *
11
- * @default Base UI `Field.Root` pass-through props keep upstream defaults.
11
+ * @defaultValue Base UI `Field.Root` pass-through props keep upstream defaults.
12
12
  */
13
13
  export type TextareaProps = React.ComponentPropsWithRef<'textarea'> & Omit<FieldRoot.Props, 'ref'> & {
14
14
  /**
15
15
  * Visible label rendered with shared internal `FieldLabel`.
16
16
  *
17
- * @default No label is rendered.
17
+ * @defaultValue No label is rendered.
18
18
  */
19
19
  label?: React.ReactNode;
20
20
  /**
21
21
  * Helper copy rendered with `Field.Description` and `Text` while the field is valid.
22
22
  *
23
- * @default No description is rendered.
23
+ * @defaultValue No description is rendered.
24
24
  */
25
25
  description?: React.ReactNode;
26
26
  /**
@@ -28,7 +28,7 @@ export type TextareaProps = React.ComponentPropsWithRef<'textarea'> & Omit<Field
28
28
  * Replaces description while the field is invalid and dirty. Validation messages from `validate`
29
29
  * are shown by `Field.Error` even when this prop is omitted.
30
30
  *
31
- * @default No static error copy is rendered.
31
+ * @defaultValue No static error copy is rendered.
32
32
  */
33
33
  error?: React.ReactNode;
34
34
  /**
@@ -36,14 +36,14 @@ export type TextareaProps = React.ComponentPropsWithRef<'textarea'> & Omit<Field
36
36
  * (`none`); accepts any valid `CSSProperties['resize']` value such as `"vertical"`, `"horizontal"`,
37
37
  * or `"both"`.
38
38
  *
39
- * @default undefined (no resize)
39
+ * @defaultValue undefined (no resize)
40
40
  */
41
41
  resize?: React.CSSProperties['resize'];
42
42
  /**
43
43
  * When `true`, sets `field-sizing: content` so the control grows with its value.
44
44
  * Still respects `min-block-size` and `resize`. Omitted / `false` keeps the browser fixed default.
45
45
  *
46
- * @default undefined (browser fixed)
46
+ * @defaultValue undefined (browser fixed)
47
47
  */
48
48
  fitContent?: BasicInputProps['fitContent'];
49
49
  };
@@ -9,7 +9,7 @@ import type * as React from 'react';
9
9
  * `size`, and event handlers, plus optional `label`, `description`, and `error` copy rendered with
10
10
  * `Text` inside a `Stack` field layout. `controlOnly` skips Field chrome for compose inside another Field.
11
11
  *
12
- * @default Base UI pass-through props keep upstream defaults.
12
+ * @defaultValue Base UI pass-through props keep upstream defaults.
13
13
  */
14
14
  export type TextfieldProps = PrimitiveInput.Props & Omit<FieldRoot.Props, 'render' | keyof PrimitiveInput.Props> & {
15
15
  /**