@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
@@ -8,7 +8,7 @@ type PopoverSheetContainerProps = {
8
8
  * Omit for Base UI default (`document.body` from the module window —
9
9
  * iframe hosts must pass the iframe document body explicitly).
10
10
  *
11
- * @default Base UI FloatingPortal resolution
11
+ * @defaultValue Base UI FloatingPortal resolution
12
12
  */
13
13
  container?: React.ComponentProps<typeof PrimitivePopover.Portal>['container'];
14
14
  };
@@ -17,7 +17,7 @@ type PopoverSheetStyledProps = PopoverSheetPositionerProps & PopoverSheetContain
17
17
  * Whether to skip the built-in Surface, header, and close chrome and render
18
18
  * only the positioning/animation shell (Portal + Positioner + Popup + Viewport).
19
19
  *
20
- * @default false
20
+ * @defaultValue false
21
21
  */
22
22
  unstyled?: false;
23
23
  /**
@@ -27,19 +27,19 @@ type PopoverSheetStyledProps = PopoverSheetPositionerProps & PopoverSheetContain
27
27
  /**
28
28
  * Supporting copy announced with the title.
29
29
  *
30
- * @default No description is rendered.
30
+ * @defaultValue No description is rendered.
31
31
  */
32
32
  description?: React.ReactNode;
33
33
  /**
34
34
  * Whether to show the built-in flat IconButton close control.
35
35
  *
36
- * @default false
36
+ * @defaultValue false
37
37
  */
38
38
  showCloseButton?: boolean;
39
39
  /**
40
40
  * Aligns the header content.
41
41
  *
42
- * @default `start`
42
+ * @defaultValue `start`
43
43
  */
44
44
  headerAlign?: Extract<StackProps['hAlign'], 'start' | 'center' | 'end'>;
45
45
  };
@@ -68,7 +68,7 @@ type PopoverSheetUnstyledProps = PopoverSheetPositionerProps & PopoverSheetConta
68
68
  * and must compose `Popover.Title` (and `Popover.Description` when needed) for
69
69
  * accessible naming.
70
70
  *
71
- * @default `sideOffset` is `8`; no description, no close button, styled chrome.
71
+ * @defaultValue `sideOffset` is `8`; no description, no close button, styled chrome.
72
72
  */
73
73
  export type PopoverSheetProps = PopoverSheetStyledProps | PopoverSheetUnstyledProps;
74
74
  export declare const PopoverSheet: React.FC<PopoverSheetProps>;
@@ -9,7 +9,7 @@ import type * as React from 'react';
9
9
  * and `handle` for detached/multiple triggers. `children` may be a node or a
10
10
  * `({ payload }) => ReactNode` render function for per-trigger content.
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 PopoverProps = PopoverRoot.Props;
15
15
  /**
@@ -21,7 +21,7 @@ export type PopoverProps = PopoverRoot.Props;
21
21
  * `payload` for per-trigger content, `openOnHover`/`delay`/`closeDelay` for hover
22
22
  * open behavior, and `id` for controlled activation via the Root `triggerId` prop.
23
23
  *
24
- * @default Base UI pass-through props keep upstream defaults.
24
+ * @defaultValue Base UI pass-through props keep upstream defaults.
25
25
  */
26
26
  export type PopoverTriggerProps = PopoverTriggerNamespace.Props;
27
27
  /**
@@ -33,7 +33,7 @@ export type PopoverTriggerProps = PopoverTriggerNamespace.Props;
33
33
  *
34
34
  * Compose inside `Popover.Sheet` so the control closes the open popover.
35
35
  *
36
- * @default Base UI pass-through props keep upstream defaults.
36
+ * @defaultValue Base UI pass-through props keep upstream defaults.
37
37
  */
38
38
  export type PopoverCloseProps = PopoverCloseNamespace.Props;
39
39
  /**
@@ -44,7 +44,7 @@ export type PopoverCloseProps = PopoverCloseNamespace.Props;
44
44
  * `Popover.Sheet` so the popup keeps an accessible name; the styled sheet
45
45
  * renders it internally from its `title` prop.
46
46
  *
47
- * @default Base UI pass-through props keep upstream defaults.
47
+ * @defaultValue Base UI pass-through props keep upstream defaults.
48
48
  */
49
49
  export type PopoverTitleProps = PopoverTitleNamespace.Props;
50
50
  /**
@@ -55,7 +55,7 @@ export type PopoverTitleProps = PopoverTitleNamespace.Props;
55
55
  * `Popover.Sheet`; the styled sheet renders it internally from its
56
56
  * `description` prop.
57
57
  *
58
- * @default Base UI pass-through props keep upstream defaults.
58
+ * @defaultValue Base UI pass-through props keep upstream defaults.
59
59
  */
60
60
  export type PopoverDescriptionProps = PopoverDescriptionNamespace.Props;
61
61
  export declare const PopoverTrigger: PrimitivePopover.Trigger;
@@ -6,31 +6,31 @@ import type * as React from 'react';
6
6
  * Includes standard `div` attributes such as `id`, `className`, and event handlers,
7
7
  * plus Vira-owned progressive backdrop blur controls.
8
8
  *
9
- * @default Native div pass-through props keep React defaults.
9
+ * @defaultValue Native div pass-through props keep React defaults.
10
10
  */
11
11
  export type ProgressiveBlurProps = React.ComponentPropsWithRef<'div'> & {
12
12
  /**
13
13
  * Sets the maximum blur radius applied to the first layer at the selected edge.
14
14
  *
15
- * @default '16px'
15
+ * @defaultValue '16px'
16
16
  */
17
17
  blur?: string;
18
18
  /**
19
19
  * Selects the edge where maximum blur starts and fades toward the opposite edge.
20
20
  *
21
- * @default 'bottom'
21
+ * @defaultValue 'bottom'
22
22
  */
23
23
  direction?: ProgressiveBlurDirection;
24
24
  /**
25
25
  * Selects the easing curve used to distribute blur factors across internal layers.
26
26
  *
27
- * @default 'exponential'
27
+ * @defaultValue 'exponential'
28
28
  */
29
29
  easing?: ProgressiveBlurEasing;
30
30
  /**
31
31
  * Sets the number of internal blur layers. Values are clamped to `2..16`.
32
32
  *
33
- * @default Varies by easing: linear `6`, ease-in/out `8`, ease-in-out `10`, exponential `8`.
33
+ * @defaultValue Varies by easing: linear `6`, ease-in/out `8`, ease-in-out `10`, exponential `8`.
34
34
  */
35
35
  steps?: number;
36
36
  };
@@ -1 +1 @@
1
- @layer viraui.preflight, viraui.components, viraui.overrides;@layer viraui.components{@property --vui-prose-align{syntax:"*";inherits:false;initial-value:start}@property --vui-prose-gap-blocks{syntax:"<length>";inherits:true;initial-value:2em}@property --vui-prose-gap-heading-start{syntax:"<length>";inherits:true;initial-value:1.3em}@property --vui-prose-gap-heading-end{syntax:"<length>";inherits:true;initial-value:.8em}.viraui__prose-module__Prose_8yO9h{--vui-prose-gap-blocks:2em;--vui-prose-gap-heading-start:1.3em;--vui-prose-gap-heading-end:0.8em;&[data-prose-gap=s]{--vui-prose-gap-blocks:1em;--vui-prose-gap-heading-start:0.7em;--vui-prose-gap-heading-end:0.3em}&[data-prose-gap=m]{--vui-prose-gap-blocks:1.5em;--vui-prose-gap-heading-start:1em;--vui-prose-gap-heading-end:0.6em}&[data-prose-has-align=true]{text-align:var(--vui-prose-align)}}.viraui__prose-module__Prose_8yO9h>:is(h1,h2,h3,h4,h5,h6,hgroup,ul,ol,dd,p,figure,img,pre,table,fieldset,blockquote,picture,div):not(:first-child){margin-block:var(--vui-prose-gap-blocks)}.viraui__prose-module__Prose_8yO9h>:is(h1,h2,h3,h4,h5,h6):not(:last-child)+*{margin-block-start:var(--vui-prose-gap-heading-start)}.viraui__prose-module__Prose_8yO9h>:is(h1,h2,h3,h4,h5,h6){margin-block-end:var(--vui-prose-gap-heading-end);text-box:trim-both cap alphabetic}}
1
+ @layer viraui.preflight, viraui.components, viraui.overrides;@layer viraui.components{@property --vui-prose-align{syntax:"*";inherits:false;initial-value:start}@property --vui-prose-gap-blocks{syntax:"<length>";inherits:true;initial-value:2em}@property --vui-prose-gap-heading-start{syntax:"<length>";inherits:true;initial-value:1.3em}@property --vui-prose-gap-heading-end{syntax:"<length>";inherits:true;initial-value:.8em}.viraui__prose-module__Prose_8yO9h{--vui-prose-gap-blocks:2em;--vui-prose-gap-heading-start:1.3em;--vui-prose-gap-heading-end:0.8em;&[data-prose-gap=s]{--vui-prose-gap-blocks:1em;--vui-prose-gap-heading-start:0.7em;--vui-prose-gap-heading-end:0.3em}&[data-prose-gap=m]{--vui-prose-gap-blocks:1.5em;--vui-prose-gap-heading-start:1em;--vui-prose-gap-heading-end:0.6em}&[data-prose-has-align=true]{text-align:var(--vui-prose-align)}&>:is(h1,h2,h3,h4,h5,h6,hgroup,ul,ol,dd,p,figure,img,pre,table,fieldset,blockquote,picture,div):where(:not(:first-child)){margin-block:var(--vui-prose-gap-blocks)}&>:is(h1,h2,h3,h4,h5,h6)+*{margin-block-start:var(--vui-prose-gap-heading-start)}&>:is(h1,h2,h3,h4,h5,h6){margin-block-end:var(--vui-prose-gap-heading-end);text-box:trim-both cap alphabetic}}}
@@ -7,7 +7,7 @@ type ProseGap = 's' | 'm' | 'l';
7
7
  * Grouping wrapper for document blocks. Native `div` attributes pass through.
8
8
  * Replace the root with Base UI `render` (for example `article`). No `as` prop.
9
9
  *
10
- * @default Native div pass-through props keep React defaults.
10
+ * @defaultValue Native div pass-through props keep React defaults.
11
11
  */
12
12
  export type ProseProps = React.ComponentPropsWithoutRef<'div'> & {
13
13
  /**
@@ -20,19 +20,19 @@ export type ProseProps = React.ComponentPropsWithoutRef<'div'> & {
20
20
  * Aligns the region using logical alignment values.
21
21
  * Omit so `text-align` inherits from the parent. Title/Text children that omit `align` inherit this value.
22
22
  *
23
- * @default Inherits parent `text-align`.
23
+ * @defaultValue Inherits parent `text-align`.
24
24
  */
25
25
  align?: React.CSSProperties['textAlign'];
26
26
  /**
27
27
  * Replaces the default `div` root using Base UI render semantics.
28
28
  *
29
- * @default The prose region renders a `div` root.
29
+ * @defaultValue The prose region renders a `div` root.
30
30
  */
31
31
  render?: useRender.RenderProp;
32
32
  /**
33
33
  * Ref forwarded to the rendered prose root element.
34
34
  *
35
- * @default No ref is attached.
35
+ * @defaultValue No ref is attached.
36
36
  */
37
37
  ref?: React.Ref<HTMLElement>;
38
38
  };
@@ -5,7 +5,7 @@ import { RadioGroup as RadioGroupPrimitive } from '@base-ui/react';
5
5
  * Thin wrapper around Base UI `RadioGroup` with default option spacing.
6
6
  * Compose with `Field.Root` and `Fieldset` for group labels, validation, and copy.
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 RadioGroupProps<Value = string> = RadioGroupPrimitive.Props<Value>;
11
11
  export declare const RadioGroup: <Value>({ children, className, ...otherProps }: RadioGroupProps<Value>) => import('react').JSX.Element;
@@ -7,37 +7,37 @@ import type * as React from 'react';
7
7
  * Self-contained option row for use inside `RadioGroup`. Group-level `name`,
8
8
  * `invalid`, and `error` belong on an external `Field.Root` and `Fieldset`, not on individual options.
9
9
  *
10
- * @default Base UI pass-through props keep upstream defaults.
10
+ * @defaultValue Base UI pass-through props keep upstream defaults.
11
11
  */
12
12
  export type RadioProps = RadioRoot.Props & {
13
13
  /**
14
14
  * Visible label rendered with shared internal `FieldLabel`.
15
15
  *
16
- * @default No label is rendered.
16
+ * @defaultValue No label is rendered.
17
17
  */
18
18
  label?: React.ReactNode;
19
19
  /**
20
20
  * Helper copy rendered with `Field.Description` and `Text` for this option.
21
21
  *
22
- * @default No description is rendered.
22
+ * @defaultValue No description is rendered.
23
23
  */
24
24
  description?: React.ReactNode;
25
25
  /**
26
26
  * Controls the visual radio size.
27
27
  *
28
- * @default 's'
28
+ * @defaultValue 's'
29
29
  */
30
30
  size?: 'm' | 's';
31
31
  /**
32
32
  * Sets block padding using one token for both sides or a `[start, end]` tuple.
33
33
  *
34
- * @default No block padding.
34
+ * @defaultValue No block padding.
35
35
  */
36
36
  vPadding?: StackProps['vPadding'];
37
37
  /**
38
38
  * Sets inline padding using one token for both sides or a `[start, end]` tuple.
39
39
  *
40
- * @default No inline padding.
40
+ * @defaultValue No inline padding.
41
41
  */
42
42
  hPadding?: StackProps['hPadding'];
43
43
  };
@@ -5,7 +5,7 @@ export type SelectIndicatorSlotProps = {
5
5
  * When true, renders as Base UI `ItemIndicator` with `keepMounted`.
6
6
  * When false, renders an empty spacer with the same inline footprint.
7
7
  *
8
- * @default false
8
+ * @defaultValue false
9
9
  */
10
10
  interactive?: boolean;
11
11
  };
@@ -4,25 +4,25 @@ import type * as React from 'react';
4
4
  /**
5
5
  * Public Select.Option props.
6
6
  *
7
- * @default Base UI pass-through props keep upstream defaults.
7
+ * @defaultValue Base UI pass-through props keep upstream defaults.
8
8
  */
9
9
  export type SelectOptionProps = SelectItem.Props & {
10
10
  /**
11
11
  * Decorative leading node rendered before the option label.
12
12
  *
13
- * @default No addon is rendered.
13
+ * @defaultValue No addon is rendered.
14
14
  */
15
15
  addon?: React.ReactNode;
16
16
  /**
17
17
  * Vertical alignment of the addon relative to the option label row.
18
18
  *
19
- * @default 'center'
19
+ * @defaultValue 'center'
20
20
  */
21
21
  addonAlign?: StackProps['vAlign'];
22
22
  /**
23
23
  * Custom indicator node rendered when the option is selected.
24
24
  *
25
- * @default Built-in Check chrome SVG at size 16
25
+ * @defaultValue Built-in Check chrome SVG at size 16
26
26
  */
27
27
  indicator?: React.ReactNode;
28
28
  };
@@ -3,7 +3,7 @@ import type * as React from 'react';
3
3
  /**
4
4
  * Public Select.Separator props.
5
5
  *
6
- * @default `orientation` is `'horizontal'`.
6
+ * @defaultValue `orientation` is `'horizontal'`.
7
7
  */
8
8
  export type SelectSeparatorProps = React.ComponentProps<typeof PrimitiveSelect.Separator>;
9
9
  export declare function SelectSeparator({ className, orientation, ...separatorProps }: SelectSeparatorProps): React.JSX.Element;
@@ -11,59 +11,59 @@ import type * as React from 'react';
11
11
  * and change handlers, plus optional field copy rendered with the shared Vira
12
12
  * field label/helper pattern.
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 SelectProps = SelectRoot.Props<string> & Omit<FieldRoot.Props, 'ref'> & {
17
17
  /**
18
18
  * Visible label rendered with shared internal `FieldLabel`.
19
19
  *
20
- * @default No label is rendered.
20
+ * @defaultValue No label is rendered.
21
21
  */
22
22
  label?: React.ReactNode;
23
23
  /**
24
24
  * Helper copy rendered with `Field.Description` and `Text` while the field is valid.
25
25
  *
26
- * @default No description is rendered.
26
+ * @defaultValue No description is rendered.
27
27
  */
28
28
  description?: React.ReactNode;
29
29
  /**
30
30
  * Error copy rendered with `Field.Error` and `Text` in the same slot as `description`.
31
31
  * Replaces description while the field is invalid and dirty.
32
32
  *
33
- * @default No static error copy is rendered.
33
+ * @defaultValue No static error copy is rendered.
34
34
  */
35
35
  error?: React.ReactNode;
36
36
  /**
37
37
  * Placeholder text shown in the trigger when no value is selected.
38
38
  *
39
- * @default No placeholder is rendered.
39
+ * @defaultValue No placeholder is rendered.
40
40
  */
41
41
  placeholder?: React.ReactNode;
42
42
  /**
43
43
  * Trigger addon rendered inside `Select.Icon`.
44
44
  * Pass any React node; use a named icon from `@viraui/icons/react` for content icons.
45
45
  *
46
- * @default Built-in ChevronExpandY chrome SVG at size 16
46
+ * @defaultValue Built-in ChevronExpandY chrome SVG at size 16
47
47
  */
48
48
  addon?: React.ReactNode;
49
49
  /**
50
50
  * Ref forwarded to the select trigger button.
51
51
  *
52
- * @default No ref is attached.
52
+ * @defaultValue No ref is attached.
53
53
  */
54
54
  ref?: React.Ref<HTMLButtonElement>;
55
55
  /**
56
56
  * When `true`, aligns the list popup width with the trigger via Base UI `alignItemWithTrigger`.
57
57
  * Prefer `false` when options use a leading `addon`.
58
58
  *
59
- * @default true
59
+ * @defaultValue true
60
60
  */
61
61
  alignListWithTrigger?: boolean;
62
62
  /**
63
63
  * When `true`, open select locks page scroll and blocks outside pointer interaction
64
64
  * (Base UI modal). Vira defaults to non-modal so the page stays scrollable.
65
65
  *
66
- * @default false
66
+ * @defaultValue false
67
67
  */
68
68
  modal?: boolean;
69
69
  /**
@@ -71,7 +71,7 @@ export type SelectProps = SelectRoot.Props<string> & Omit<FieldRoot.Props, 'ref'
71
71
  * Omit for Base UI default (`document.body` from the module window —
72
72
  * iframe hosts must pass the iframe document body explicitly).
73
73
  *
74
- * @default Base UI FloatingPortal resolution
74
+ * @defaultValue Base UI FloatingPortal resolution
75
75
  */
76
76
  container?: React.ComponentProps<typeof PrimitiveSelect.Portal>['container'];
77
77
  };
@@ -11,55 +11,55 @@ type SeparatorSize = 's' | 'm' | 'l';
11
11
  * plus Vira-owned orientation, line thickness, Stack padding, and Base UI `render` support for replacing the line root.
12
12
  * `className`, `style`, and `ref` apply to the line root only.
13
13
  *
14
- * @default Native pass-through props keep React defaults on the wrapper unless noted above.
14
+ * @defaultValue Native pass-through props keep React defaults on the wrapper unless noted above.
15
15
  */
16
16
  export type SeparatorProps = Omit<React.ComponentPropsWithoutRef<'div'>, 'children'> & {
17
17
  /**
18
18
  * Replaces the default `hr` line root using Base UI render semantics.
19
19
  *
20
- * @default The separator renders an `hr` line root.
20
+ * @defaultValue The separator renders an `hr` line root.
21
21
  */
22
22
  render?: useRender.RenderProp;
23
23
  /**
24
24
  * Ref forwarded to the rendered line root element.
25
25
  *
26
- * @default No ref is attached.
26
+ * @defaultValue No ref is attached.
27
27
  */
28
28
  ref?: React.Ref<HTMLElement>;
29
29
  /**
30
30
  * Sets the separator line direction.
31
31
  *
32
- * @default 'horizontal'
32
+ * @defaultValue 'horizontal'
33
33
  */
34
34
  orientation?: 'horizontal' | 'vertical';
35
35
  /**
36
36
  * Sets inline padding on the Stack wrapper using one token for both sides or a `[start, end]` tuple.
37
37
  *
38
- * @default No inline padding.
38
+ * @defaultValue No inline padding.
39
39
  */
40
40
  hPadding?: SeparatorAxisPadding;
41
41
  /**
42
42
  * Sets block padding on the Stack wrapper using one token for both sides or a `[start, end]` tuple.
43
43
  *
44
- * @default No block padding.
44
+ * @defaultValue No block padding.
45
45
  */
46
46
  vPadding?: SeparatorAxisPadding;
47
47
  /**
48
48
  * Caps the Stack wrapper inline size.
49
49
  *
50
- * @default No max width constraint.
50
+ * @defaultValue No max width constraint.
51
51
  */
52
52
  maxWidth?: StackProps['maxWidth'];
53
53
  /**
54
54
  * Sets the line thickness preset.
55
55
  *
56
- * @default 's'
56
+ * @defaultValue 's'
57
57
  */
58
58
  size?: SeparatorSize;
59
59
  /**
60
60
  * Sets the separator line variant through `--vui-separator-border-style`.
61
61
  *
62
- * @default 'solid'
62
+ * @defaultValue 'solid'
63
63
  */
64
64
  variant?: React.CSSProperties['borderStyle'];
65
65
  };
@@ -5,37 +5,37 @@ import type * as React from 'react';
5
5
  * Includes standard `span` attributes such as `children`, `id`, `title`, and event handlers,
6
6
  * plus Vira-owned shimmer tuning controls.
7
7
  *
8
- * @default Native span pass-through props keep React defaults.
8
+ * @defaultValue Native span pass-through props keep React defaults.
9
9
  */
10
10
  export type ShimmerProps = React.ComponentPropsWithoutRef<'span'> & {
11
11
  /**
12
12
  * Sets the shimmer sweep duration using any valid CSS time string.
13
13
  *
14
- * @default The CSS duration is `var(--duration-slowest)`.
14
+ * @defaultValue The CSS duration is `var(--duration-slowest)`.
15
15
  */
16
16
  duration?: string;
17
17
  /**
18
18
  * Sets the shimmer highlight spread using any valid CSS length string.
19
19
  *
20
- * @default The CSS spread is `calc(3ch + var(--space-2xl))`.
20
+ * @defaultValue The CSS spread is `calc(3ch + var(--space-2xl))`.
21
21
  */
22
22
  spread?: string;
23
23
  /**
24
24
  * Sets the shimmer gradient angle offset using any valid CSS angle string.
25
25
  *
26
- * @default The CSS angle offset is `0deg`.
26
+ * @defaultValue The CSS angle offset is `0deg`.
27
27
  */
28
28
  angle?: string;
29
29
  /**
30
30
  * Overrides the shimmer highlight color when relative base lightness tuning is not used.
31
31
  *
32
- * @default The highlight increases base `currentColor` lightness.
32
+ * @defaultValue The highlight increases base `currentColor` lightness.
33
33
  */
34
34
  highlightColor?: string;
35
35
  /**
36
36
  * Ref forwarded to the rendered shimmer root element.
37
37
  *
38
- * @default No ref is attached.
38
+ * @defaultValue No ref is attached.
39
39
  */
40
40
  ref?: React.Ref<HTMLSpanElement>;
41
41
  };
@@ -6,31 +6,31 @@ import type * as React from 'react';
6
6
  * Zero-layout-shift shimmer wrapper sized by hidden children. Includes standard `div`
7
7
  * pass-through props plus Vira-owned shimmer controls.
8
8
  *
9
- * @default Native div pass-through props keep React defaults.
9
+ * @defaultValue Native div pass-through props keep React defaults.
10
10
  */
11
11
  export type SkeletonOverlayProps = React.ComponentPropsWithRef<'div'> & {
12
12
  /**
13
13
  * Supplies placeholder content whose layout and dimensions define the skeleton bounding box.
14
14
  *
15
- * @default No default; consumer must provide children.
15
+ * @defaultValue No default; consumer must provide children.
16
16
  */
17
17
  children: React.ReactNode;
18
18
  /**
19
19
  * Enables or disables the shimmer animation.
20
20
  *
21
- * @default true
21
+ * @defaultValue true
22
22
  */
23
23
  animate?: boolean;
24
24
  /**
25
25
  * Sets the corner radius from the Vira radius token scale.
26
26
  *
27
- * @default 's'
27
+ * @defaultValue 's'
28
28
  */
29
29
  radius?: ThemeTypes['radius'];
30
30
  /**
31
31
  * Sets the shimmer sweep duration from the Vira duration token scale.
32
32
  *
33
- * @default 'slow'
33
+ * @defaultValue 'slow'
34
34
  */
35
35
  duration?: ThemeTypes['duration'];
36
36
  };
@@ -7,55 +7,55 @@ import type * as React from 'react';
7
7
  * GPU shimmer block primitive. Includes standard `div` pass-through props such as `id`, `title`,
8
8
  * data attributes, and event handlers, plus Vira-owned sizing and shimmer controls.
9
9
  *
10
- * @default Native div pass-through props keep React defaults.
10
+ * @defaultValue Native div pass-through props keep React defaults.
11
11
  */
12
12
  export type SkeletonProps = React.ComponentPropsWithoutRef<'div'> & {
13
13
  /**
14
14
  * Sets the skeleton inline size using any valid CSS size string.
15
15
  *
16
- * @default The skeleton sizes from context, constrained by the CSS minimum.
16
+ * @defaultValue The skeleton sizes from context, constrained by the CSS minimum.
17
17
  */
18
18
  width?: string;
19
19
  /**
20
20
  * Sets the skeleton block size using any valid CSS size string.
21
21
  *
22
- * @default The skeleton sizes from context, constrained by the CSS minimum.
22
+ * @defaultValue The skeleton sizes from context, constrained by the CSS minimum.
23
23
  */
24
24
  height?: string;
25
25
  /**
26
26
  * Sets the skeleton minimum inline size using any valid CSS size string.
27
27
  *
28
- * @default The CSS minimum inline size is `2rem`.
28
+ * @defaultValue The CSS minimum inline size is `2rem`.
29
29
  */
30
30
  minWidth?: string;
31
31
  /**
32
32
  * Sets the skeleton minimum block size using any valid CSS size string.
33
33
  *
34
- * @default The CSS minimum block size is `1rem`.
34
+ * @defaultValue The CSS minimum block size is `1rem`.
35
35
  */
36
36
  minHeight?: string;
37
37
  /**
38
38
  * Enables or disables the shimmer animation.
39
39
  *
40
- * @default true
40
+ * @defaultValue true
41
41
  */
42
42
  animate?: boolean;
43
43
  /**
44
44
  * Sets the corner radius from the Vira radius token scale.
45
45
  *
46
- * @default 's'
46
+ * @defaultValue 's'
47
47
  */
48
48
  radius?: ThemeTypes['radius'];
49
49
  /**
50
50
  * Sets the shimmer sweep duration from the Vira duration token scale.
51
51
  *
52
- * @default 'slow'
52
+ * @defaultValue 'slow'
53
53
  */
54
54
  duration?: ThemeTypes['duration'];
55
55
  /**
56
56
  * Ref forwarded to the rendered skeleton root element.
57
57
  *
58
- * @default No ref is attached.
58
+ * @defaultValue No ref is attached.
59
59
  */
60
60
  ref?: React.Ref<HTMLDivElement>;
61
61
  };
@@ -7,31 +7,31 @@ import type * as React from 'react';
7
7
  * Includes Base UI slider root props such as `value`, `defaultValue`, `min`, `max`, `step`,
8
8
  * `disabled`, `orientation`, and change handlers, plus optional field copy and thumb labeling.
9
9
  *
10
- * @default Base UI pass-through props keep upstream defaults.
10
+ * @defaultValue Base UI pass-through props keep upstream defaults.
11
11
  */
12
12
  export type SliderProps = SliderRoot.Props & FieldRoot.Props & {
13
13
  /**
14
14
  * Visible label rendered with shared internal `FieldLabel`.
15
15
  *
16
- * @default No label is rendered.
16
+ * @defaultValue No label is rendered.
17
17
  */
18
18
  label?: React.ReactNode;
19
19
  /**
20
20
  * Helper copy rendered with `Field.Description` and `Text` while the field is valid.
21
21
  *
22
- * @default No description is rendered.
22
+ * @defaultValue No description is rendered.
23
23
  */
24
24
  description?: React.ReactNode;
25
25
  /**
26
26
  * Error copy rendered with `Field.Error` and `Text` in the same slot as `description`.
27
27
  *
28
- * @default No static error copy is rendered.
28
+ * @defaultValue No static error copy is rendered.
29
29
  */
30
30
  error?: React.ReactNode;
31
31
  /**
32
32
  * Marks the slider as required and shows a required indicator on the label.
33
33
  *
34
- * @default false
34
+ * @defaultValue false
35
35
  */
36
36
  required?: boolean;
37
37
  /**
@@ -40,7 +40,7 @@ export type SliderProps = SliderRoot.Props & FieldRoot.Props & {
40
40
  * Pass `true` for Base UI default formatting inside styled `Text`, or a
41
41
  * function matching `Slider.Value` `children` to own the value slot (no `Text`).
42
42
  *
43
- * @default Value UI is hidden.
43
+ * @defaultValue Value UI is hidden.
44
44
  */
45
45
  renderValue?: boolean | Exclude<React.ComponentProps<typeof PrimitiveSlider.Value>['children'], null | undefined>;
46
46
  /**
@@ -50,7 +50,7 @@ export type SliderProps = SliderRoot.Props & FieldRoot.Props & {
50
50
  * Pass a two-element tuple to name each range thumb in order; on a single-thumb slider only the
51
51
  * first tuple value is applied.
52
52
  *
53
- * @default No default; required when `label` is omitted and thumbs need distinct accessible names.
53
+ * @defaultValue No default; required when `label` is omitted and thumbs need distinct accessible names.
54
54
  */
55
55
  thumbAriaLabel?: string | readonly [string, string];
56
56
  };
@@ -4,19 +4,19 @@ export type SpinnerProps = Omit<React.ComponentProps<'svg'>, 'color'> & {
4
4
  /**
5
5
  * Sets the rendered spinner size.
6
6
  *
7
- * @default 'l'
7
+ * @defaultValue 'l'
8
8
  */
9
9
  size?: 's' | 'm' | 'l';
10
10
  /**
11
11
  * Overrides the spinner fill color.
12
12
  *
13
- * @default No default; inherits `currentColor`.
13
+ * @defaultValue No default; inherits `currentColor`.
14
14
  */
15
15
  color?: string;
16
16
  /**
17
17
  * Visual animation style.
18
18
  *
19
- * @default 'bars'
19
+ * @defaultValue 'bars'
20
20
  */
21
21
  variant?: SpinnerVariant;
22
22
  };