@viraui/react 2026.7.0-next.0 → 2026.7.0-next.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/catalog.json +13 -1
- package/dist/components/accordion/accordion-item.d.ts +10 -10
- package/dist/components/accordion/accordion.d.ts +2 -2
- package/dist/components/annotate/annotate.d.ts +15 -15
- package/dist/components/autocomplete/autocomplete-item.d.ts +3 -3
- package/dist/components/autocomplete/autocomplete.d.ts +12 -12
- package/dist/components/avatar/avatar.d.ts +6 -6
- package/dist/components/avatar-group/avatar-group.d.ts +6 -6
- package/dist/components/badge/badge.d.ts +5 -5
- package/dist/components/basic-input/basic-input.d.ts +1 -1
- package/dist/components/basic-input/input-control-group.d.ts +2 -2
- package/dist/components/beam/beam.d.ts +12 -12
- package/dist/components/bleed/bleed.d.ts +3 -3
- package/dist/components/button/button-link.d.ts +1 -1
- package/dist/components/button/button.d.ts +1 -1
- package/dist/components/checkbox/checkbox-group.d.ts +1 -1
- package/dist/components/checkbox/checkbox.d.ts +7 -7
- package/dist/components/chip/chip.d.ts +6 -6
- package/dist/components/clamp-text/clamp-text.d.ts +5 -5
- package/dist/components/dialog/dialog-close.d.ts +1 -1
- package/dist/components/dialog/dialog-indent-background.d.ts +1 -1
- package/dist/components/dialog/dialog-indent.d.ts +1 -1
- package/dist/components/dialog/dialog-sheet.d.ts +10 -10
- package/dist/components/dialog/dialog-trigger.d.ts +1 -1
- package/dist/components/dialog/dialog.d.ts +1 -1
- package/dist/components/disclosure/disclosure-panel.d.ts +12 -0
- package/dist/components/disclosure/disclosure-panel.js +13 -0
- package/dist/components/disclosure/disclosure-trigger.d.ts +46 -0
- package/dist/components/disclosure/disclosure-trigger.js +82 -0
- package/dist/components/disclosure/disclosure.css +1 -0
- package/dist/components/disclosure/disclosure.d.ts +25 -0
- package/dist/components/disclosure/disclosure.js +30 -0
- package/dist/components/disclosure/disclosure.module.js +15 -0
- package/dist/components/disclosure/index.d.ts +4 -0
- package/dist/components/elevator/elevator.d.ts +7 -7
- package/dist/components/fieldset/fieldset.d.ts +4 -4
- package/dist/components/fit-text/fit-text.d.ts +2 -2
- package/dist/components/glow/glow.d.ts +12 -12
- package/dist/components/grid/grid-item.d.ts +8 -8
- package/dist/components/grid/grid.d.ts +12 -12
- package/dist/components/icon-button/icon-button-link.d.ts +2 -2
- package/dist/components/icon-button/icon-button.d.ts +2 -2
- package/dist/components/index.d.ts +2 -0
- package/dist/components/linear-progress/linear-progress.d.ts +4 -4
- package/dist/components/masonry/masonry-item.d.ts +3 -3
- package/dist/components/masonry/masonry.d.ts +4 -4
- package/dist/components/menu/menu-checkbox-item.d.ts +4 -4
- package/dist/components/menu/menu-item.d.ts +4 -4
- package/dist/components/menu/menu-link-item.d.ts +4 -4
- package/dist/components/menu/menu-popup.d.ts +2 -2
- package/dist/components/menu/menu-radio-group.d.ts +2 -2
- package/dist/components/menu/menu-radio-item.d.ts +4 -4
- package/dist/components/menu/menu-separator.d.ts +1 -1
- package/dist/components/menu/menu-submenu-trigger.d.ts +3 -3
- package/dist/components/menu/menu.d.ts +3 -3
- package/dist/components/meter/meter.d.ts +5 -5
- package/dist/components/number-field/index.d.ts +2 -0
- package/dist/components/number-field/number-field.css +1 -0
- package/dist/components/number-field/number-field.d.ts +78 -0
- package/dist/components/number-field/number-field.js +120 -0
- package/dist/components/number-field/number-field.module.js +21 -0
- package/dist/components/otp-field/index.d.ts +1 -1
- package/dist/components/otp-field/otp-field-input.d.ts +1 -1
- package/dist/components/otp-field/otp-field-separator.d.ts +3 -1
- package/dist/components/otp-field/otp-field-separator.js +5 -1
- package/dist/components/otp-field/otp-field.d.ts +4 -5
- package/dist/components/otp-field/otp-field.js +0 -1
- package/dist/components/popover/popover-sheet.d.ts +6 -6
- package/dist/components/popover/popover.d.ts +5 -5
- package/dist/components/progressive-blur/progressive-blur.d.ts +5 -5
- package/dist/components/prose/prose.css +1 -1
- package/dist/components/prose/prose.d.ts +4 -4
- package/dist/components/radio/radio-group.d.ts +1 -1
- package/dist/components/radio/radio.d.ts +6 -6
- package/dist/components/select/select-indicator-slot.d.ts +1 -1
- package/dist/components/select/select-option.d.ts +4 -4
- package/dist/components/select/select-separator.d.ts +1 -1
- package/dist/components/select/select.d.ts +10 -10
- package/dist/components/separator/separator.d.ts +9 -9
- package/dist/components/shimmer/shimmer.d.ts +6 -6
- package/dist/components/skeleton/skeleton-overlay.d.ts +5 -5
- package/dist/components/skeleton/skeleton.d.ts +9 -9
- package/dist/components/slider/slider.d.ts +7 -7
- package/dist/components/spinner/spinner.d.ts +3 -3
- package/dist/components/stack/stack.d.ts +17 -17
- package/dist/components/static-noise/static-noise.d.ts +5 -5
- package/dist/components/surface/surface.d.ts +12 -12
- package/dist/components/switch/switch.d.ts +7 -7
- package/dist/components/tabs/tabs-list.d.ts +1 -1
- package/dist/components/tabs/tabs-panel.d.ts +1 -1
- package/dist/components/tabs/tabs-tab.d.ts +3 -3
- package/dist/components/tabs/tabs.d.ts +2 -2
- package/dist/components/text/text.d.ts +23 -23
- package/dist/components/textarea/textarea.d.ts +6 -6
- package/dist/components/textfield/textfield.d.ts +1 -1
- package/dist/components/title/title.d.ts +21 -21
- package/dist/components/toast/toast-action.d.ts +1 -1
- package/dist/components/toast/toast-banner.d.ts +7 -7
- package/dist/components/toast/toast-viewport.d.ts +2 -2
- package/dist/components/toggle-button/toggle-button.d.ts +6 -6
- package/dist/components/toggle-group/toggle-group.d.ts +1 -1
- package/dist/components/tooltip/tooltip-content.d.ts +2 -2
- package/dist/components/typewriter/typewriter.d.ts +10 -10
- package/dist/index.js +3 -1
- package/dist/specs/components/accordion/usage.xml +1 -0
- package/dist/specs/components/disclosure/a11y.xml +9 -0
- package/dist/specs/components/disclosure/meta.xml +20 -0
- package/dist/specs/components/disclosure/patterns.xml +55 -0
- package/dist/specs/components/disclosure/props.xml +54 -0
- package/dist/specs/components/disclosure/usage.xml +11 -0
- package/dist/specs/components/number-field/a11y.xml +10 -0
- package/dist/specs/components/number-field/meta.xml +21 -0
- package/dist/specs/components/number-field/patterns.xml +43 -0
- package/dist/specs/components/number-field/props.xml +35 -0
- package/dist/specs/components/number-field/usage.xml +12 -0
- package/dist/specs/components/otp-field/meta.xml +1 -4
- package/dist/specs/components/otp-field/patterns.xml +8 -8
- package/dist/specs/components/otp-field/props.xml +2 -2
- package/dist/specs/components/otp-field/usage.xml +4 -4
- package/dist/specs/index.xml +22 -2
- package/package.json +2 -2
|
@@ -6,69 +6,69 @@ import type * as React from 'react';
|
|
|
6
6
|
* Glow root is a transparent Surface shell that exposes only `radius` (token, per-corner
|
|
7
7
|
* tuple, or `auto`). Put the visual card as children (typically `Surface` with `radius="auto"`).
|
|
8
8
|
*
|
|
9
|
-
* @
|
|
9
|
+
* @defaultValue Glow-owned props use the defaults below; `radius` keeps Surface defaults when omitted.
|
|
10
10
|
*/
|
|
11
11
|
export type GlowProps = React.ComponentProps<'div'> & Pick<SurfaceProps, 'radius'> & {
|
|
12
12
|
/**
|
|
13
13
|
* Distance from the surface edge where the glow becomes fully active.
|
|
14
14
|
*
|
|
15
|
-
* @
|
|
15
|
+
* @defaultValue 170
|
|
16
16
|
*/
|
|
17
17
|
proximity?: number;
|
|
18
18
|
/**
|
|
19
19
|
* Angular width of the highlighted arc (degrees, used as a unitless CSS number).
|
|
20
20
|
*
|
|
21
|
-
* @
|
|
21
|
+
* @defaultValue 250
|
|
22
22
|
*/
|
|
23
23
|
spread?: number;
|
|
24
24
|
/**
|
|
25
25
|
* Resting opacity of the glow when the pointer is outside proximity.
|
|
26
26
|
*
|
|
27
|
-
* @
|
|
27
|
+
* @defaultValue 0
|
|
28
28
|
*/
|
|
29
29
|
opacity?: number;
|
|
30
30
|
/**
|
|
31
31
|
* Shrinks the root to fit its content (`max-width: fit-content`).
|
|
32
32
|
*
|
|
33
|
-
* @
|
|
33
|
+
* @defaultValue false
|
|
34
34
|
*/
|
|
35
35
|
fitContent?: boolean;
|
|
36
36
|
/**
|
|
37
37
|
* Width of the masked glow border ring.
|
|
38
38
|
*
|
|
39
|
-
* @
|
|
39
|
+
* @defaultValue 2
|
|
40
40
|
*/
|
|
41
41
|
borderWidth?: number;
|
|
42
42
|
/**
|
|
43
43
|
* Color of the masked border ring under the highlight.
|
|
44
44
|
*
|
|
45
|
-
* @
|
|
45
|
+
* @defaultValue var(--global-contrast)
|
|
46
46
|
*/
|
|
47
47
|
borderColor?: string;
|
|
48
48
|
/**
|
|
49
49
|
* Offset of the glow ring from the surface edge. Negative values place the ring outside.
|
|
50
50
|
*
|
|
51
|
-
* @
|
|
51
|
+
* @defaultValue 5
|
|
52
52
|
*/
|
|
53
53
|
borderOffset?: number;
|
|
54
54
|
/**
|
|
55
55
|
* Overrides the glow gradient with a solid color or custom background value.
|
|
56
56
|
* Ignored when `rainbowColors` is true.
|
|
57
57
|
*
|
|
58
|
-
* @
|
|
58
|
+
* @defaultValue Theme highlight conic gradient
|
|
59
59
|
*/
|
|
60
60
|
glowColor?: string;
|
|
61
61
|
/**
|
|
62
62
|
* Shares the highlight gradient across cards via `background-attachment: fixed`.
|
|
63
63
|
* Forced off when `rainbowColors` is true.
|
|
64
64
|
*
|
|
65
|
-
* @
|
|
65
|
+
* @defaultValue true
|
|
66
66
|
*/
|
|
67
67
|
globalHighlight?: boolean;
|
|
68
68
|
/**
|
|
69
69
|
* Uses the multi-stop rainbow highlight gradient and disables global highlight attachment.
|
|
70
70
|
*
|
|
71
|
-
* @
|
|
71
|
+
* @defaultValue false
|
|
72
72
|
*/
|
|
73
73
|
rainbowColors?: boolean;
|
|
74
74
|
/**
|
|
@@ -76,7 +76,7 @@ export type GlowProps = React.ComponentProps<'div'> & Pick<SurfaceProps, 'radius
|
|
|
76
76
|
* set `0` for instant snap. Tracker writes an unwrapped continuous angle so the
|
|
77
77
|
* transition does not take the long way across the 0° seam.
|
|
78
78
|
*
|
|
79
|
-
* @
|
|
79
|
+
* @defaultValue 80
|
|
80
80
|
*/
|
|
81
81
|
angleLag?: number;
|
|
82
82
|
};
|
|
@@ -7,45 +7,45 @@ type GridItemSubgrid = boolean | 'column' | 'row';
|
|
|
7
7
|
* Includes standard `div` attributes such as `id`, `role`, `title`, and event handlers,
|
|
8
8
|
* plus placement controls and Base UI `render` support for replacing the item root.
|
|
9
9
|
*
|
|
10
|
-
* @
|
|
10
|
+
* @defaultValue Base UI pass-through props keep upstream defaults.
|
|
11
11
|
*/
|
|
12
12
|
export type GridItemProps = React.ComponentPropsWithoutRef<'div'> & {
|
|
13
13
|
/**
|
|
14
14
|
* Replaces the default `div` root using Base UI render semantics.
|
|
15
15
|
*
|
|
16
|
-
* @
|
|
16
|
+
* @defaultValue The item renders a `div` root.
|
|
17
17
|
*/
|
|
18
18
|
render?: useRender.RenderProp;
|
|
19
19
|
/**
|
|
20
20
|
* Ref forwarded to the rendered item root element.
|
|
21
21
|
*
|
|
22
|
-
* @
|
|
22
|
+
* @defaultValue No ref is attached.
|
|
23
23
|
*/
|
|
24
24
|
ref?: React.Ref<HTMLElement>;
|
|
25
25
|
/**
|
|
26
26
|
* Spans the item across every column track (`grid-column: 1 / -1`).
|
|
27
27
|
* Wins over `column` when both are set.
|
|
28
28
|
*
|
|
29
|
-
* @
|
|
29
|
+
* @defaultValue false
|
|
30
30
|
*/
|
|
31
31
|
fullWidth?: boolean;
|
|
32
32
|
/**
|
|
33
33
|
* Spans the item across every row track (`grid-row: 1 / -1`).
|
|
34
34
|
* Wins over `row` when both are set.
|
|
35
35
|
*
|
|
36
|
-
* @
|
|
36
|
+
* @defaultValue false
|
|
37
37
|
*/
|
|
38
38
|
fullHeight?: boolean;
|
|
39
39
|
/**
|
|
40
40
|
* Sets explicit `grid-column` placement via `--vui-grid-item-column`.
|
|
41
41
|
*
|
|
42
|
-
* @
|
|
42
|
+
* @defaultValue No explicit column placement.
|
|
43
43
|
*/
|
|
44
44
|
column?: React.CSSProperties['gridColumn'];
|
|
45
45
|
/**
|
|
46
46
|
* Sets explicit `grid-row` placement via `--vui-grid-item-row`.
|
|
47
47
|
*
|
|
48
|
-
* @
|
|
48
|
+
* @defaultValue No explicit row placement.
|
|
49
49
|
*/
|
|
50
50
|
row?: React.CSSProperties['gridRow'];
|
|
51
51
|
/**
|
|
@@ -54,7 +54,7 @@ export type GridItemProps = React.ComponentPropsWithoutRef<'div'> & {
|
|
|
54
54
|
* Pass `true` for both axes, or `'column'` / `'row'` for one axis.
|
|
55
55
|
* Pair with `fullWidth` / `fullHeight` or a `column` / `row` span so the item covers the tracks to inherit.
|
|
56
56
|
*
|
|
57
|
-
* @
|
|
57
|
+
* @defaultValue false
|
|
58
58
|
*/
|
|
59
59
|
subgrid?: GridItemSubgrid;
|
|
60
60
|
};
|
|
@@ -10,19 +10,19 @@ type GridAxisPadding = GridSpace | [GridSpace | 0, GridSpace | 0];
|
|
|
10
10
|
* Includes standard `div` attributes such as `id`, `role`, `title`, and event handlers,
|
|
11
11
|
* plus Vira-owned CSS Grid controls and Base UI `render` support for replacing the root element.
|
|
12
12
|
*
|
|
13
|
-
* @
|
|
13
|
+
* @defaultValue Base UI pass-through props keep upstream defaults.
|
|
14
14
|
*/
|
|
15
15
|
export type GridProps = React.ComponentPropsWithoutRef<'div'> & {
|
|
16
16
|
/**
|
|
17
17
|
* Replaces the default `div` root using Base UI render semantics.
|
|
18
18
|
*
|
|
19
|
-
* @
|
|
19
|
+
* @defaultValue The grid renders a `div` root.
|
|
20
20
|
*/
|
|
21
21
|
render?: useRender.RenderProp;
|
|
22
22
|
/**
|
|
23
23
|
* Ref forwarded to the rendered grid root element.
|
|
24
24
|
*
|
|
25
|
-
* @
|
|
25
|
+
* @defaultValue No ref is attached.
|
|
26
26
|
*/
|
|
27
27
|
ref?: React.Ref<HTMLElement>;
|
|
28
28
|
/**
|
|
@@ -33,32 +33,32 @@ export type GridProps = React.ComponentPropsWithoutRef<'div'> & {
|
|
|
33
33
|
* explicit `colMinWidth` as well for fixed-breadth tracks and
|
|
34
34
|
* `data-grid-fixed-breadth="true"` (`inline-size: max-content`).
|
|
35
35
|
*
|
|
36
|
-
* @
|
|
36
|
+
* @defaultValue No fixed column count (uses `filling` auto tracks).
|
|
37
37
|
*/
|
|
38
38
|
columns?: number;
|
|
39
39
|
/**
|
|
40
40
|
* Fixes the number of row tracks via `--vui-grid-rows`.
|
|
41
41
|
*
|
|
42
|
-
* @
|
|
42
|
+
* @defaultValue No fixed row count.
|
|
43
43
|
*/
|
|
44
44
|
rows?: number;
|
|
45
45
|
/**
|
|
46
46
|
* Sets the gap between grid rows using the Vira space token scale.
|
|
47
47
|
*
|
|
48
|
-
* @
|
|
48
|
+
* @defaultValue No row gap (`0`).
|
|
49
49
|
*/
|
|
50
50
|
rowGap?: GridSpace;
|
|
51
51
|
/**
|
|
52
52
|
* Sets the gap between grid columns using the Vira space token scale.
|
|
53
53
|
*
|
|
54
|
-
* @
|
|
54
|
+
* @defaultValue No column gap (`0`).
|
|
55
55
|
*/
|
|
56
56
|
columnGap?: GridSpace;
|
|
57
57
|
/**
|
|
58
58
|
* Controls `repeat(auto-fill|auto-fit, …)` when `columns` is unset.
|
|
59
59
|
* Pass `false` to skip the filling data attribute.
|
|
60
60
|
*
|
|
61
|
-
* @
|
|
61
|
+
* @defaultValue 'fill'
|
|
62
62
|
*/
|
|
63
63
|
filling?: 'fit' | 'fill' | false;
|
|
64
64
|
/**
|
|
@@ -67,25 +67,25 @@ export type GridProps = React.ComponentPropsWithoutRef<'div'> & {
|
|
|
67
67
|
* tracks (`repeat(N, var(--vui-grid-column-min-w))`) and sets
|
|
68
68
|
* `data-grid-fixed-breadth`; omit this prop to keep fluid `1fr` tracks.
|
|
69
69
|
*
|
|
70
|
-
* @
|
|
70
|
+
* @defaultValue '10rem'
|
|
71
71
|
*/
|
|
72
72
|
colMinWidth?: string;
|
|
73
73
|
/**
|
|
74
74
|
* Minimum row track size used when `rows` is set.
|
|
75
75
|
*
|
|
76
|
-
* @
|
|
76
|
+
* @defaultValue '1fr'
|
|
77
77
|
*/
|
|
78
78
|
rowMinHeight?: string;
|
|
79
79
|
/**
|
|
80
80
|
* Sets inline padding using one token for both sides or a `[start, end]` tuple.
|
|
81
81
|
*
|
|
82
|
-
* @
|
|
82
|
+
* @defaultValue No inline padding.
|
|
83
83
|
*/
|
|
84
84
|
hPadding?: GridAxisPadding;
|
|
85
85
|
/**
|
|
86
86
|
* Sets block padding using one token for both sides or a `[start, end]` tuple.
|
|
87
87
|
*
|
|
88
|
-
* @
|
|
88
|
+
* @defaultValue No block padding.
|
|
89
89
|
*/
|
|
90
90
|
vPadding?: GridAxisPadding;
|
|
91
91
|
};
|
|
@@ -18,13 +18,13 @@ export type IconButtonLinkProps = Omit<ButtonLinkProps, 'children' | 'addon' | '
|
|
|
18
18
|
/**
|
|
19
19
|
* Controls the visual button size.
|
|
20
20
|
*
|
|
21
|
-
* @
|
|
21
|
+
* @defaultValue 'm'
|
|
22
22
|
*/
|
|
23
23
|
size?: ButtonLinkProps['size'];
|
|
24
24
|
/**
|
|
25
25
|
* Icon rendered as the sole visible control content.
|
|
26
26
|
*
|
|
27
|
-
* @
|
|
27
|
+
* @defaultValue No default; required for every IconButtonLink.
|
|
28
28
|
*/
|
|
29
29
|
icon: ReactNode;
|
|
30
30
|
};
|
|
@@ -17,13 +17,13 @@ export type IconButtonProps = Omit<ButtonProps, 'children' | 'addon' | 'addonPos
|
|
|
17
17
|
/**
|
|
18
18
|
* Controls the visual button size.
|
|
19
19
|
*
|
|
20
|
-
* @
|
|
20
|
+
* @defaultValue 'm'
|
|
21
21
|
*/
|
|
22
22
|
size?: ButtonProps['size'];
|
|
23
23
|
/**
|
|
24
24
|
* Icon rendered as the sole visible control content.
|
|
25
25
|
*
|
|
26
|
-
* @
|
|
26
|
+
* @defaultValue No default; required for every IconButton.
|
|
27
27
|
*/
|
|
28
28
|
icon: ReactNode;
|
|
29
29
|
};
|
|
@@ -12,6 +12,7 @@ export * from './checkbox';
|
|
|
12
12
|
export * from './chip';
|
|
13
13
|
export * from './clamp-text';
|
|
14
14
|
export * from './dialog';
|
|
15
|
+
export * from './disclosure';
|
|
15
16
|
export * from './elevator';
|
|
16
17
|
export * from './fieldset';
|
|
17
18
|
export * from './fit-text';
|
|
@@ -22,6 +23,7 @@ export * from './linear-progress';
|
|
|
22
23
|
export * from './masonry';
|
|
23
24
|
export * from './menu';
|
|
24
25
|
export * from './meter';
|
|
26
|
+
export * from './number-field';
|
|
25
27
|
export * from './otp-field';
|
|
26
28
|
export * from './popover';
|
|
27
29
|
export * from './progressive-blur';
|
|
@@ -6,19 +6,19 @@ import type * as React from 'react';
|
|
|
6
6
|
* Includes Base UI progress root props such as `value`, `min`, `max`, `format`,
|
|
7
7
|
* and `getAriaValueText`, plus optional label, description, and value display.
|
|
8
8
|
*
|
|
9
|
-
* @
|
|
9
|
+
* @defaultValue Base UI pass-through props keep upstream defaults.
|
|
10
10
|
*/
|
|
11
11
|
export type LinearProgressProps = ProgressRoot.Props & {
|
|
12
12
|
/**
|
|
13
13
|
* Visible label rendered through `Progress.Label` with shared internal `FieldLabel`.
|
|
14
14
|
*
|
|
15
|
-
* @
|
|
15
|
+
* @defaultValue No label is rendered.
|
|
16
16
|
*/
|
|
17
17
|
label?: React.ReactNode;
|
|
18
18
|
/**
|
|
19
19
|
* Static helper copy rendered with `Text` below the progress track.
|
|
20
20
|
*
|
|
21
|
-
* @
|
|
21
|
+
* @defaultValue No description is rendered.
|
|
22
22
|
*/
|
|
23
23
|
description?: React.ReactNode;
|
|
24
24
|
/**
|
|
@@ -27,7 +27,7 @@ export type LinearProgressProps = ProgressRoot.Props & {
|
|
|
27
27
|
* Pass `true` for Base UI default formatting, or a function matching
|
|
28
28
|
* `Progress.Value` `children` to customize the printed label.
|
|
29
29
|
*
|
|
30
|
-
* @
|
|
30
|
+
* @defaultValue Value UI is hidden.
|
|
31
31
|
*/
|
|
32
32
|
renderValue?: boolean | Exclude<React.ComponentProps<typeof PrimitiveProgress.Value>['children'], null | undefined>;
|
|
33
33
|
};
|
|
@@ -6,19 +6,19 @@ import type * as React from 'react';
|
|
|
6
6
|
* Includes standard `div` attributes such as `id`, `role`, `title`, data attributes, and event handlers,
|
|
7
7
|
* plus Base UI `render` support for replacing the default item root.
|
|
8
8
|
*
|
|
9
|
-
* @
|
|
9
|
+
* @defaultValue Native div pass-through props keep React defaults.
|
|
10
10
|
*/
|
|
11
11
|
export type MasonryItemProps = React.ComponentPropsWithRef<'div'> & {
|
|
12
12
|
/**
|
|
13
13
|
* Replaces the default `div` root using Base UI render semantics.
|
|
14
14
|
*
|
|
15
|
-
* @
|
|
15
|
+
* @defaultValue The item renders a `div` root.
|
|
16
16
|
*/
|
|
17
17
|
render?: useRender.RenderProp;
|
|
18
18
|
/**
|
|
19
19
|
* Ref forwarded to the rendered item root element.
|
|
20
20
|
*
|
|
21
|
-
* @
|
|
21
|
+
* @defaultValue No ref is attached.
|
|
22
22
|
*/
|
|
23
23
|
ref?: React.Ref<HTMLElement>;
|
|
24
24
|
};
|
|
@@ -19,19 +19,19 @@ export type MasonryBreakpointCols = {
|
|
|
19
19
|
* Includes standard `div` attributes such as `id`, `role`, `title`, data attributes, and event handlers,
|
|
20
20
|
* plus mobile-first React column distribution controls.
|
|
21
21
|
*
|
|
22
|
-
* @
|
|
22
|
+
* @defaultValue Native div pass-through props keep React defaults.
|
|
23
23
|
*/
|
|
24
24
|
export type MasonryProps = React.ComponentPropsWithRef<'div'> & {
|
|
25
25
|
/**
|
|
26
26
|
* Replaces the default `div` root using Base UI render semantics.
|
|
27
27
|
*
|
|
28
|
-
* @
|
|
28
|
+
* @defaultValue The masonry renders a `div` root.
|
|
29
29
|
*/
|
|
30
30
|
render?: useRender.RenderProp;
|
|
31
31
|
/**
|
|
32
32
|
* Sets the gap between columns (`--vui-masonry-gap`) and the `rowGap` on each column `Stack`.
|
|
33
33
|
*
|
|
34
|
-
* @
|
|
34
|
+
* @defaultValue 'l'
|
|
35
35
|
*/
|
|
36
36
|
gap?: StackProps['columnGap'];
|
|
37
37
|
/**
|
|
@@ -41,7 +41,7 @@ export type MasonryProps = React.ComponentPropsWithRef<'div'> & {
|
|
|
41
41
|
* root's content-box inline size. Keys may be in any order; the largest
|
|
42
42
|
* matching breakpoint wins. Non-finite keys are ignored.
|
|
43
43
|
*
|
|
44
|
-
* @
|
|
44
|
+
* @defaultValue { default: 1, 480: 2, 768: 3, 960: 4, 1280: 5, 2560: 6 }
|
|
45
45
|
*/
|
|
46
46
|
breakpointCols?: MasonryBreakpointCols;
|
|
47
47
|
};
|
|
@@ -3,26 +3,26 @@ import type * as React from 'react';
|
|
|
3
3
|
/**
|
|
4
4
|
* Public Menu.CheckboxItem props.
|
|
5
5
|
*
|
|
6
|
-
* @
|
|
6
|
+
* @defaultValue `closeOnClick` is `false`.
|
|
7
7
|
*/
|
|
8
8
|
export type MenuCheckboxItemProps = MenuCheckboxItemPrimitive.Props & {
|
|
9
9
|
/**
|
|
10
10
|
* Decorative leading node rendered before the item label.
|
|
11
11
|
*
|
|
12
|
-
* @
|
|
12
|
+
* @defaultValue No addon is rendered.
|
|
13
13
|
*/
|
|
14
14
|
addon?: React.ReactNode;
|
|
15
15
|
/**
|
|
16
16
|
* End-aligned secondary text (e.g. keyboard shortcut) before the check indicator.
|
|
17
17
|
* Rendered muted `xs`.
|
|
18
18
|
*
|
|
19
|
-
* @
|
|
19
|
+
* @defaultValue No note is rendered.
|
|
20
20
|
*/
|
|
21
21
|
note?: React.ReactNode;
|
|
22
22
|
/**
|
|
23
23
|
* Visual sentiment. `destructive` uses highlight-red wash + text.
|
|
24
24
|
*
|
|
25
|
-
* @
|
|
25
|
+
* @defaultValue Neutral item styling.
|
|
26
26
|
*/
|
|
27
27
|
sentiment?: 'destructive';
|
|
28
28
|
};
|
|
@@ -3,25 +3,25 @@ import type * as React from 'react';
|
|
|
3
3
|
/**
|
|
4
4
|
* Public Menu.Item props.
|
|
5
5
|
*
|
|
6
|
-
* @
|
|
6
|
+
* @defaultValue Base UI pass-through props keep upstream defaults.
|
|
7
7
|
*/
|
|
8
8
|
export type MenuItemProps = MenuItemPrimitive.Props & {
|
|
9
9
|
/**
|
|
10
10
|
* Decorative leading node rendered before the item label.
|
|
11
11
|
*
|
|
12
|
-
* @
|
|
12
|
+
* @defaultValue No addon is rendered.
|
|
13
13
|
*/
|
|
14
14
|
addon?: React.ReactNode;
|
|
15
15
|
/**
|
|
16
16
|
* End-aligned secondary text (e.g. keyboard shortcut). Rendered muted `xs`.
|
|
17
17
|
*
|
|
18
|
-
* @
|
|
18
|
+
* @defaultValue No note is rendered.
|
|
19
19
|
*/
|
|
20
20
|
note?: React.ReactNode;
|
|
21
21
|
/**
|
|
22
22
|
* Visual sentiment. `destructive` uses highlight-red wash + text.
|
|
23
23
|
*
|
|
24
|
-
* @
|
|
24
|
+
* @defaultValue Neutral item styling.
|
|
25
25
|
*/
|
|
26
26
|
sentiment?: 'destructive';
|
|
27
27
|
};
|
|
@@ -3,25 +3,25 @@ import type * as React from 'react';
|
|
|
3
3
|
/**
|
|
4
4
|
* Public Menu.LinkItem props.
|
|
5
5
|
*
|
|
6
|
-
* @
|
|
6
|
+
* @defaultValue Base UI pass-through props keep upstream defaults.
|
|
7
7
|
*/
|
|
8
8
|
export type MenuLinkItemProps = MenuLinkItemPrimitive.Props & {
|
|
9
9
|
/**
|
|
10
10
|
* Decorative leading node rendered before the item label.
|
|
11
11
|
*
|
|
12
|
-
* @
|
|
12
|
+
* @defaultValue No addon is rendered.
|
|
13
13
|
*/
|
|
14
14
|
addon?: React.ReactNode;
|
|
15
15
|
/**
|
|
16
16
|
* End-aligned secondary text (e.g. keyboard shortcut). Rendered muted `xs`.
|
|
17
17
|
*
|
|
18
|
-
* @
|
|
18
|
+
* @defaultValue No note is rendered.
|
|
19
19
|
*/
|
|
20
20
|
note?: React.ReactNode;
|
|
21
21
|
/**
|
|
22
22
|
* Visual sentiment. `destructive` uses highlight-red wash + text.
|
|
23
23
|
*
|
|
24
|
-
* @
|
|
24
|
+
* @defaultValue Neutral item styling.
|
|
25
25
|
*/
|
|
26
26
|
sentiment?: 'destructive';
|
|
27
27
|
};
|
|
@@ -9,7 +9,7 @@ type MenuPopupPositionerProps = Omit<MenuPositioner.Props, 'className' | 'style'
|
|
|
9
9
|
* defaults to `2`. RTL placement comes from Base UI `DirectionProvider`;
|
|
10
10
|
* app must also set HTML/`dir` (or `direction`) so portaled CSS inherits RTL.
|
|
11
11
|
*
|
|
12
|
-
* @
|
|
12
|
+
* @defaultValue `sideOffset` is `2`.
|
|
13
13
|
*/
|
|
14
14
|
export type MenuPopupProps = MenuPopupPositionerProps & {
|
|
15
15
|
children?: React.ReactNode;
|
|
@@ -18,7 +18,7 @@ export type MenuPopupProps = MenuPopupPositionerProps & {
|
|
|
18
18
|
* Omit for Base UI default (`document.body` from the module window —
|
|
19
19
|
* iframe hosts must pass the iframe document body explicitly).
|
|
20
20
|
*
|
|
21
|
-
* @
|
|
21
|
+
* @defaultValue Base UI FloatingPortal resolution
|
|
22
22
|
*/
|
|
23
23
|
container?: React.ComponentProps<typeof PrimitiveMenu.Portal>['container'];
|
|
24
24
|
};
|
|
@@ -3,13 +3,13 @@ import type * as React from 'react';
|
|
|
3
3
|
/**
|
|
4
4
|
* Public Menu.RadioGroup props.
|
|
5
5
|
*
|
|
6
|
-
* @
|
|
6
|
+
* @defaultValue No label is rendered.
|
|
7
7
|
*/
|
|
8
8
|
export type MenuRadioGroupProps = MenuRadioGroupPrimitive.Props & {
|
|
9
9
|
/**
|
|
10
10
|
* Optional accessible group label rendered with `Menu.GroupLabel`.
|
|
11
11
|
*
|
|
12
|
-
* @
|
|
12
|
+
* @defaultValue No label is rendered.
|
|
13
13
|
*/
|
|
14
14
|
label?: React.ReactNode;
|
|
15
15
|
};
|
|
@@ -3,26 +3,26 @@ import type * as React from 'react';
|
|
|
3
3
|
/**
|
|
4
4
|
* Public Menu.RadioItem props.
|
|
5
5
|
*
|
|
6
|
-
* @
|
|
6
|
+
* @defaultValue `closeOnClick` is `false`.
|
|
7
7
|
*/
|
|
8
8
|
export type MenuRadioItemProps = MenuRadioItemPrimitive.Props & {
|
|
9
9
|
/**
|
|
10
10
|
* Decorative leading node rendered before the item label.
|
|
11
11
|
*
|
|
12
|
-
* @
|
|
12
|
+
* @defaultValue No addon is rendered.
|
|
13
13
|
*/
|
|
14
14
|
addon?: React.ReactNode;
|
|
15
15
|
/**
|
|
16
16
|
* End-aligned secondary text (e.g. keyboard shortcut) before the check indicator.
|
|
17
17
|
* Rendered muted `xs`.
|
|
18
18
|
*
|
|
19
|
-
* @
|
|
19
|
+
* @defaultValue No note is rendered.
|
|
20
20
|
*/
|
|
21
21
|
note?: React.ReactNode;
|
|
22
22
|
/**
|
|
23
23
|
* Visual sentiment. `destructive` uses highlight-red wash + text.
|
|
24
24
|
*
|
|
25
|
-
* @
|
|
25
|
+
* @defaultValue Neutral item styling.
|
|
26
26
|
*/
|
|
27
27
|
sentiment?: 'destructive';
|
|
28
28
|
};
|
|
@@ -3,7 +3,7 @@ import type * as React from 'react';
|
|
|
3
3
|
/**
|
|
4
4
|
* Public Menu.Separator props.
|
|
5
5
|
*
|
|
6
|
-
* @
|
|
6
|
+
* @defaultValue `orientation` is `'horizontal'`.
|
|
7
7
|
*/
|
|
8
8
|
export type MenuSeparatorProps = React.ComponentProps<typeof PrimitiveMenu.Separator>;
|
|
9
9
|
export declare const MenuSeparator: React.FC<MenuSeparatorProps>;
|
|
@@ -3,19 +3,19 @@ import type * as React from 'react';
|
|
|
3
3
|
/**
|
|
4
4
|
* Public Menu.SubmenuTrigger props.
|
|
5
5
|
*
|
|
6
|
-
* @
|
|
6
|
+
* @defaultValue Trailing end chevron; RTL mirror via CSS `:dir(rtl)`.
|
|
7
7
|
*/
|
|
8
8
|
export type MenuSubmenuTriggerProps = MenuSubmenuTriggerPrimitive.Props & {
|
|
9
9
|
/**
|
|
10
10
|
* Decorative leading node rendered before the item label.
|
|
11
11
|
*
|
|
12
|
-
* @
|
|
12
|
+
* @defaultValue No addon is rendered.
|
|
13
13
|
*/
|
|
14
14
|
addon?: React.ReactNode;
|
|
15
15
|
/**
|
|
16
16
|
* Visual sentiment. `destructive` uses highlight-red wash + text.
|
|
17
17
|
*
|
|
18
|
-
* @
|
|
18
|
+
* @defaultValue Neutral item styling.
|
|
19
19
|
*/
|
|
20
20
|
sentiment?: 'destructive';
|
|
21
21
|
};
|
|
@@ -17,7 +17,7 @@ import type * as React from 'react';
|
|
|
17
17
|
* triggers. `children` may be a node or a `({ payload }) => ReactNode` render function
|
|
18
18
|
* for per-trigger content.
|
|
19
19
|
*
|
|
20
|
-
* @
|
|
20
|
+
* @defaultValue Base UI pass-through props keep upstream defaults.
|
|
21
21
|
*/
|
|
22
22
|
export type MenuProps = MenuRoot.Props;
|
|
23
23
|
/**
|
|
@@ -26,7 +26,7 @@ export type MenuProps = MenuRoot.Props;
|
|
|
26
26
|
* Pass-through to Base UI `Menu.Trigger`. Use `render` for the visible control
|
|
27
27
|
* (`Button`, `IconButton`, or another element).
|
|
28
28
|
*
|
|
29
|
-
* @
|
|
29
|
+
* @defaultValue Base UI pass-through props keep upstream defaults.
|
|
30
30
|
*/
|
|
31
31
|
export type MenuTriggerProps = MenuTriggerNamespace.Props;
|
|
32
32
|
/**
|
|
@@ -35,7 +35,7 @@ export type MenuTriggerProps = MenuTriggerNamespace.Props;
|
|
|
35
35
|
* Pass-through to Base UI `Menu.SubmenuRoot`. Compose `Menu.SubmenuTrigger` and
|
|
36
36
|
* nested `Menu.Popup` as children.
|
|
37
37
|
*
|
|
38
|
-
* @
|
|
38
|
+
* @defaultValue Base UI pass-through props keep upstream defaults.
|
|
39
39
|
*/
|
|
40
40
|
export type MenuSubmenuProps = React.ComponentProps<typeof PrimitiveMenu.SubmenuRoot>;
|
|
41
41
|
export declare const MenuTrigger: PrimitiveMenu.Trigger;
|
|
@@ -8,19 +8,19 @@ import type * as React from 'react';
|
|
|
8
8
|
* and `getAriaValueText`, plus optional label, description, value display, and
|
|
9
9
|
* highlight `variant` for track/indicator color.
|
|
10
10
|
*
|
|
11
|
-
* @
|
|
11
|
+
* @defaultValue Base UI pass-through props keep upstream defaults.
|
|
12
12
|
*/
|
|
13
13
|
export type MeterProps = MeterRoot.Props & {
|
|
14
14
|
/**
|
|
15
15
|
* Visible label rendered through `Meter.Label` with shared internal `FieldLabel`.
|
|
16
16
|
*
|
|
17
|
-
* @
|
|
17
|
+
* @defaultValue No label is rendered.
|
|
18
18
|
*/
|
|
19
19
|
label?: React.ReactNode;
|
|
20
20
|
/**
|
|
21
21
|
* Static helper copy rendered with `Text` below the meter track.
|
|
22
22
|
*
|
|
23
|
-
* @
|
|
23
|
+
* @defaultValue No description is rendered.
|
|
24
24
|
*/
|
|
25
25
|
description?: React.ReactNode;
|
|
26
26
|
/**
|
|
@@ -29,7 +29,7 @@ export type MeterProps = MeterRoot.Props & {
|
|
|
29
29
|
* Pass `true` for Base UI default formatting, or a function matching
|
|
30
30
|
* `Meter.Value` `children` to customize the printed label.
|
|
31
31
|
*
|
|
32
|
-
* @
|
|
32
|
+
* @defaultValue Value UI is hidden.
|
|
33
33
|
*/
|
|
34
34
|
renderValue?: boolean | Exclude<React.ComponentProps<typeof PrimitiveMeter.Value>['children'], null | undefined>;
|
|
35
35
|
/**
|
|
@@ -37,7 +37,7 @@ export type MeterProps = MeterRoot.Props & {
|
|
|
37
37
|
* indicator; highlight token names tint both track (wash) and indicator
|
|
38
38
|
* via `--highlight-*`, matching Chip highlight variants.
|
|
39
39
|
*
|
|
40
|
-
* @
|
|
40
|
+
* @defaultValue 'primary'
|
|
41
41
|
*/
|
|
42
42
|
variant?: 'primary' | ThemeTypes['highlight'];
|
|
43
43
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@layer viraui.preflight, viraui.components, viraui.overrides;@layer viraui.components{.viraui__number-field-module__NumberField_l7i9a{display:contents}.viraui__number-field-module__Field_Ud43i{--vui-textfield-input-height:var(--space-2xl);--vui-textfield-control-group-background:var(--base-1);--vui-textfield-control-group-color:var(--global-foreground);--vui-textfield-control-group-border-color:var(--global-contrast);--vui-textfield-control-group-border-radius:var(--radius-m);--vui-field-label-padding-inline:calc(var(--vui-textfield-control-group-border-radius) / 2);max-block-size:min-content;&:has([required]) .viraui__number-field-module__Label_-Sji0:after{content:" *";color:var(--highlight-red)}}.viraui__number-field-module__ControlGroup_CX5th{box-sizing:border-box;block-size:round(to-zero,var(--vui-textfield-input-height),2px);background:var(--vui-textfield-control-group-background);color:var(--vui-textfield-control-group-color);border:1px solid var(--vui-textfield-control-group-border-color);border-radius:var(--vui-textfield-control-group-border-radius);&:has(.viraui__number-field-module__CustomBasicInput_6fmMO:focus),&:has(.viraui__number-field-module__CustomBasicInput_6fmMO:focus-visible),&:has(.viraui__number-field-module__CustomBasicInput_6fmMO[data-focused]){outline:var(--outline);outline-offset:var(--outline-offset)}&:has(.viraui__number-field-module__CustomBasicInput_6fmMO[data-invalid][data-dirty]){--vui-textfield-control-group-border-color:var(--highlight-red);box-shadow:none;outline-color:oklab(from var(--highlight-red) l a b/.5)}&:has(.viraui__number-field-module__CustomBasicInput_6fmMO:disabled),&:has(.viraui__number-field-module__CustomBasicInput_6fmMO[data-disabled]){--vui-textfield-control-group-background:var(--global-disabled-background);--vui-textfield-control-group-border-color:#0000;--vui-textfield-control-group-color:var(--global-disabled-foreground);box-shadow:none;cursor:not-allowed}}.viraui__number-field-module__Addon_QwT1q{min-inline-size:var(--space-xl)}.viraui__number-field-module__ScrubArea_3Wzje{-webkit-user-select:none;user-select:none;:where(& *){cursor:ew-resize;-webkit-user-select:none;user-select:none}}.viraui__number-field-module__Description_GWcij{padding-inline:calc(var(--vui-textfield-control-group-border-radius) / 2)}}@layer viraui.overrides{.viraui__number-field-module__CustomBasicInput_6fmMO{text-align:center;&:focus,&:focus-visible{outline:none}}}
|