@fanvue/ui 1.2.0 → 1.2.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/cjs/components/Alert/Alert.cjs +4 -4
- package/dist/cjs/components/Alert/Alert.cjs.map +1 -1
- package/dist/cjs/components/Avatar/Avatar.cjs.map +1 -1
- package/dist/cjs/components/Badge/Badge.cjs.map +1 -1
- package/dist/cjs/components/Button/Button.cjs +9 -9
- package/dist/cjs/components/Button/Button.cjs.map +1 -1
- package/dist/cjs/components/Checkbox/Checkbox.cjs +6 -7
- package/dist/cjs/components/Checkbox/Checkbox.cjs.map +1 -1
- package/dist/cjs/components/Chip/Chip.cjs +2 -2
- package/dist/cjs/components/Chip/Chip.cjs.map +1 -1
- package/dist/cjs/components/Count/Count.cjs.map +1 -1
- package/dist/cjs/components/DatePicker/DatePicker.cjs +30 -7
- package/dist/cjs/components/DatePicker/DatePicker.cjs.map +1 -1
- package/dist/cjs/components/Divider/Divider.cjs.map +1 -1
- package/dist/cjs/components/IconButton/IconButton.cjs +10 -10
- package/dist/cjs/components/IconButton/IconButton.cjs.map +1 -1
- package/dist/cjs/components/Icons/ArrowRightIcon.cjs.map +1 -1
- package/dist/cjs/components/Icons/ArrowUpRightIcon.cjs.map +1 -1
- package/dist/cjs/components/Icons/CheckCircleIcon.cjs.map +1 -1
- package/dist/cjs/components/Icons/ChevronLeftIcon.cjs.map +1 -1
- package/dist/cjs/components/Icons/ChevronRightIcon.cjs.map +1 -1
- package/dist/cjs/components/Icons/CloseIcon.cjs.map +1 -1
- package/dist/cjs/components/Icons/CrossIcon.cjs.map +1 -1
- package/dist/cjs/components/Icons/CrownIcon.cjs.map +1 -1
- package/dist/cjs/components/Icons/ErrorCircleIcon.cjs.map +1 -1
- package/dist/cjs/components/Icons/ErrorIcon.cjs.map +1 -1
- package/dist/cjs/components/Icons/EyeIcon.cjs.map +1 -1
- package/dist/cjs/components/Icons/FireIcon.cjs.map +1 -1
- package/dist/cjs/components/Icons/HomeIcon.cjs.map +1 -1
- package/dist/cjs/components/Icons/InfoCircleIcon.cjs.map +1 -1
- package/dist/cjs/components/Icons/InfoIcon.cjs.map +1 -1
- package/dist/cjs/components/Icons/MicrophoneIcon.cjs.map +1 -1
- package/dist/cjs/components/Icons/PlusIcon.cjs.map +1 -1
- package/dist/cjs/components/Icons/SpinnerIcon.cjs.map +1 -1
- package/dist/cjs/components/Icons/StopIcon.cjs.map +1 -1
- package/dist/cjs/components/Icons/SuccessIcon.cjs.map +1 -1
- package/dist/cjs/components/Icons/WarningIcon.cjs.map +1 -1
- package/dist/cjs/components/Icons/WarningTriangleIcon.cjs.map +1 -1
- package/dist/cjs/components/Logo/Logo.cjs +11 -11
- package/dist/cjs/components/Logo/Logo.cjs.map +1 -1
- package/dist/cjs/components/Pagination/Pagination.cjs +3 -3
- package/dist/cjs/components/Pagination/Pagination.cjs.map +1 -1
- package/dist/cjs/components/Pill/Pill.cjs.map +1 -1
- package/dist/cjs/components/ProgressBar/ProgressBar.cjs.map +1 -1
- package/dist/cjs/components/Radio/Radio.cjs +1 -1
- package/dist/cjs/components/Radio/Radio.cjs.map +1 -1
- package/dist/cjs/components/RadioGroup/RadioGroup.cjs.map +1 -1
- package/dist/cjs/components/Slider/Slider.cjs.map +1 -1
- package/dist/cjs/components/Slider/SliderThumb.cjs +1 -0
- package/dist/cjs/components/Slider/SliderThumb.cjs.map +1 -1
- package/dist/cjs/components/Snackbar/Snackbar.cjs.map +1 -1
- package/dist/cjs/components/Switch/Switch.cjs +1 -0
- package/dist/cjs/components/Switch/Switch.cjs.map +1 -1
- package/dist/cjs/components/SwitchField/SwitchField.cjs.map +1 -1
- package/dist/cjs/components/SwitchToggle/SwitchToggle.cjs +48 -31
- package/dist/cjs/components/SwitchToggle/SwitchToggle.cjs.map +1 -1
- package/dist/cjs/components/Tabs/Tabs.cjs.map +1 -1
- package/dist/cjs/components/Tabs/TabsContent.cjs.map +1 -1
- package/dist/cjs/components/Tabs/TabsList.cjs.map +1 -1
- package/dist/cjs/components/Tabs/TabsTrigger.cjs +2 -0
- package/dist/cjs/components/Tabs/TabsTrigger.cjs.map +1 -1
- package/dist/cjs/components/TextField/TextField.cjs +1 -1
- package/dist/cjs/components/TextField/TextField.cjs.map +1 -1
- package/dist/cjs/components/Toast/Toast.cjs +1 -1
- package/dist/cjs/components/Toast/Toast.cjs.map +1 -1
- package/dist/cjs/components/Tooltip/Tooltip.cjs.map +1 -1
- package/dist/components/Alert/Alert.mjs +4 -4
- package/dist/components/Alert/Alert.mjs.map +1 -1
- package/dist/components/Avatar/Avatar.mjs.map +1 -1
- package/dist/components/Badge/Badge.mjs.map +1 -1
- package/dist/components/Button/Button.mjs +9 -9
- package/dist/components/Button/Button.mjs.map +1 -1
- package/dist/components/Checkbox/Checkbox.mjs +6 -7
- package/dist/components/Checkbox/Checkbox.mjs.map +1 -1
- package/dist/components/Chip/Chip.mjs +2 -2
- package/dist/components/Chip/Chip.mjs.map +1 -1
- package/dist/components/Count/Count.mjs.map +1 -1
- package/dist/components/DatePicker/DatePicker.mjs +30 -7
- package/dist/components/DatePicker/DatePicker.mjs.map +1 -1
- package/dist/components/Divider/Divider.mjs.map +1 -1
- package/dist/components/IconButton/IconButton.mjs +10 -10
- package/dist/components/IconButton/IconButton.mjs.map +1 -1
- package/dist/components/Icons/ArrowRightIcon.mjs.map +1 -1
- package/dist/components/Icons/ArrowUpRightIcon.mjs.map +1 -1
- package/dist/components/Icons/CheckCircleIcon.mjs.map +1 -1
- package/dist/components/Icons/ChevronLeftIcon.mjs.map +1 -1
- package/dist/components/Icons/ChevronRightIcon.mjs.map +1 -1
- package/dist/components/Icons/CloseIcon.mjs.map +1 -1
- package/dist/components/Icons/CrossIcon.mjs.map +1 -1
- package/dist/components/Icons/CrownIcon.mjs.map +1 -1
- package/dist/components/Icons/ErrorCircleIcon.mjs.map +1 -1
- package/dist/components/Icons/ErrorIcon.mjs.map +1 -1
- package/dist/components/Icons/EyeIcon.mjs.map +1 -1
- package/dist/components/Icons/FireIcon.mjs.map +1 -1
- package/dist/components/Icons/HomeIcon.mjs.map +1 -1
- package/dist/components/Icons/InfoCircleIcon.mjs.map +1 -1
- package/dist/components/Icons/InfoIcon.mjs.map +1 -1
- package/dist/components/Icons/MicrophoneIcon.mjs.map +1 -1
- package/dist/components/Icons/PlusIcon.mjs.map +1 -1
- package/dist/components/Icons/SpinnerIcon.mjs.map +1 -1
- package/dist/components/Icons/StopIcon.mjs.map +1 -1
- package/dist/components/Icons/SuccessIcon.mjs.map +1 -1
- package/dist/components/Icons/WarningIcon.mjs.map +1 -1
- package/dist/components/Icons/WarningTriangleIcon.mjs.map +1 -1
- package/dist/components/Logo/Logo.mjs +11 -11
- package/dist/components/Logo/Logo.mjs.map +1 -1
- package/dist/components/Pagination/Pagination.mjs +3 -3
- package/dist/components/Pagination/Pagination.mjs.map +1 -1
- package/dist/components/Pill/Pill.mjs.map +1 -1
- package/dist/components/ProgressBar/ProgressBar.mjs.map +1 -1
- package/dist/components/Radio/Radio.mjs +1 -1
- package/dist/components/Radio/Radio.mjs.map +1 -1
- package/dist/components/RadioGroup/RadioGroup.mjs.map +1 -1
- package/dist/components/Slider/Slider.mjs.map +1 -1
- package/dist/components/Slider/SliderThumb.mjs +1 -0
- package/dist/components/Slider/SliderThumb.mjs.map +1 -1
- package/dist/components/Snackbar/Snackbar.mjs.map +1 -1
- package/dist/components/Switch/Switch.mjs +1 -0
- package/dist/components/Switch/Switch.mjs.map +1 -1
- package/dist/components/SwitchField/SwitchField.mjs.map +1 -1
- package/dist/components/SwitchToggle/SwitchToggle.mjs +48 -31
- package/dist/components/SwitchToggle/SwitchToggle.mjs.map +1 -1
- package/dist/components/Tabs/Tabs.mjs.map +1 -1
- package/dist/components/Tabs/TabsContent.mjs.map +1 -1
- package/dist/components/Tabs/TabsList.mjs.map +1 -1
- package/dist/components/Tabs/TabsTrigger.mjs +2 -0
- package/dist/components/Tabs/TabsTrigger.mjs.map +1 -1
- package/dist/components/TextField/TextField.mjs +1 -1
- package/dist/components/TextField/TextField.mjs.map +1 -1
- package/dist/components/Toast/Toast.mjs +1 -1
- package/dist/components/Toast/Toast.mjs.map +1 -1
- package/dist/components/Tooltip/Tooltip.mjs.map +1 -1
- package/dist/index.d.ts +521 -142
- package/dist/styles/theme.css +6 -0
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -15,133 +15,204 @@ import * as TabsPrimitive from '@radix-ui/react-tabs';
|
|
|
15
15
|
import * as ToastPrimitive from '@radix-ui/react-toast';
|
|
16
16
|
import * as TooltipPrimitive from '@radix-ui/react-tooltip';
|
|
17
17
|
|
|
18
|
+
/**
|
|
19
|
+
* Displays a contextual feedback message to the user.
|
|
20
|
+
*
|
|
21
|
+
* Supports `info`, `success`, `warning`, and `error` variants with an optional
|
|
22
|
+
* icon, title, description, and dismiss button.
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* ```tsx
|
|
26
|
+
* <Alert variant="success" title="Saved" closable onClose={handleClose}>
|
|
27
|
+
* Your changes have been saved.
|
|
28
|
+
* </Alert>
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
18
31
|
export declare const Alert: React_2.ForwardRefExoticComponent<AlertProps & React_2.RefAttributes<HTMLDivElement>>;
|
|
19
32
|
|
|
20
33
|
export declare interface AlertProps extends React_2.HTMLAttributes<HTMLDivElement> {
|
|
21
|
-
/** Visual style variant of the alert
|
|
34
|
+
/** Visual style variant of the alert. @default "info" */
|
|
22
35
|
variant?: AlertVariant;
|
|
23
|
-
/** Optional title text
|
|
36
|
+
/** Optional title text displayed in bold above the description. */
|
|
24
37
|
title?: string;
|
|
25
|
-
/**
|
|
38
|
+
/** Icon element displayed at the leading edge of the alert. */
|
|
26
39
|
icon?: React_2.ReactNode;
|
|
27
|
-
/**
|
|
40
|
+
/** Whether to show the close button. @default false */
|
|
28
41
|
closable?: boolean;
|
|
29
|
-
/** Callback when close button is clicked */
|
|
42
|
+
/** Callback fired when the close button is clicked. */
|
|
30
43
|
onClose?: () => void;
|
|
31
44
|
/** Accessible label for the close button. @default "Close alert" */
|
|
32
45
|
closeLabel?: string;
|
|
33
46
|
}
|
|
34
47
|
|
|
48
|
+
/** Visual style variant of the alert. */
|
|
35
49
|
export declare type AlertVariant = "info" | "success" | "warning" | "error";
|
|
36
50
|
|
|
51
|
+
/** A right-pointing arrow icon (20 × 20). */
|
|
37
52
|
export declare const ArrowRightIcon: React_2.ForwardRefExoticComponent<React_2.SVGAttributes<SVGSVGElement> & {
|
|
38
53
|
className?: string;
|
|
39
54
|
} & React_2.RefAttributes<SVGSVGElement>>;
|
|
40
55
|
|
|
56
|
+
/** A diagonal up-right arrow icon, commonly used for external links (20 × 20). */
|
|
41
57
|
export declare const ArrowUpRightIcon: React_2.ForwardRefExoticComponent<React_2.SVGAttributes<SVGSVGElement> & {
|
|
42
58
|
className?: string;
|
|
43
59
|
} & React_2.RefAttributes<SVGSVGElement>>;
|
|
44
60
|
|
|
61
|
+
/**
|
|
62
|
+
* Displays a user avatar with optional online indicator, platinum border, and
|
|
63
|
+
* NSFW blur. Pass `src` and `fallback` for the simple API, or compose your own
|
|
64
|
+
* layout with `AvatarRoot`, `AvatarImage`, and `AvatarFallback` as children.
|
|
65
|
+
*
|
|
66
|
+
* @example
|
|
67
|
+
* ```tsx
|
|
68
|
+
* <Avatar src="/photo.jpg" alt="Jane Doe" fallback="JD" size={48} />
|
|
69
|
+
* ```
|
|
70
|
+
*/
|
|
45
71
|
export declare const Avatar: React_2.ForwardRefExoticComponent<AvatarProps & React_2.RefAttributes<HTMLSpanElement>>;
|
|
46
72
|
|
|
73
|
+
/** Renders fallback content (e.g. initials or an icon) when the avatar image has not loaded. */
|
|
47
74
|
export declare const AvatarFallback: React_2.ForwardRefExoticComponent<AvatarFallbackProps & React_2.RefAttributes<HTMLSpanElement>>;
|
|
48
75
|
|
|
76
|
+
/** Props for the {@link AvatarFallback} compound component. */
|
|
49
77
|
export declare interface AvatarFallbackProps extends React_2.ComponentPropsWithoutRef<typeof AvatarPrimitive.Fallback> {
|
|
50
78
|
}
|
|
51
79
|
|
|
80
|
+
/** Renders the avatar image. Automatically applies the NSFW blur when enabled on the parent `AvatarRoot`. */
|
|
52
81
|
export declare const AvatarImage: React_2.ForwardRefExoticComponent<AvatarImageProps & React_2.RefAttributes<HTMLImageElement>>;
|
|
53
82
|
|
|
83
|
+
/** Props for the {@link AvatarImage} compound component. */
|
|
54
84
|
export declare interface AvatarImageProps extends React_2.ComponentPropsWithoutRef<typeof AvatarPrimitive.Image> {
|
|
55
85
|
}
|
|
56
86
|
|
|
57
87
|
export declare interface AvatarProps extends React_2.ComponentPropsWithoutRef<typeof AvatarPrimitive.Root>, AvatarStyleProps {
|
|
58
|
-
/** URL of the avatar image */
|
|
88
|
+
/** URL of the avatar image. */
|
|
59
89
|
src?: string;
|
|
60
|
-
/** Alt text for the avatar image */
|
|
90
|
+
/** Alt text for the avatar image. @default "Avatar" */
|
|
61
91
|
alt?: string;
|
|
62
|
-
/** Fallback content (initials
|
|
92
|
+
/** Fallback content rendered when the image has not loaded (e.g. initials or an icon). */
|
|
63
93
|
fallback?: React_2.ReactNode;
|
|
64
94
|
}
|
|
65
95
|
|
|
96
|
+
/**
|
|
97
|
+
* Low-level avatar root for custom compositions. Provides size context to
|
|
98
|
+
* child `AvatarImage` and `AvatarFallback` components.
|
|
99
|
+
*
|
|
100
|
+
* Prefer the higher-level {@link Avatar} component for most use cases.
|
|
101
|
+
*/
|
|
66
102
|
export declare const AvatarRoot: React_2.ForwardRefExoticComponent<AvatarRootProps & React_2.RefAttributes<HTMLSpanElement>>;
|
|
67
103
|
|
|
104
|
+
/** Props for the low-level {@link AvatarRoot} compound component. */
|
|
68
105
|
export declare interface AvatarRootProps extends React_2.ComponentPropsWithoutRef<typeof AvatarPrimitive.Root>, AvatarStyleProps {
|
|
69
106
|
}
|
|
70
107
|
|
|
108
|
+
/** Allowed pixel sizes for the avatar. */
|
|
71
109
|
export declare type AvatarSize = 16 | 24 | 32 | 40 | 48 | 64 | 88 | 148;
|
|
72
110
|
|
|
73
|
-
/** Shared avatar styling props */
|
|
111
|
+
/** Shared avatar styling props. */
|
|
74
112
|
declare interface AvatarStyleProps {
|
|
75
|
-
/**
|
|
113
|
+
/** Pixel size of the avatar. @default 40 */
|
|
76
114
|
size?: AvatarSize;
|
|
77
|
-
/**
|
|
115
|
+
/** Whether to show the online-status indicator dot. @default false */
|
|
78
116
|
onlineIndicator?: boolean;
|
|
79
|
-
/**
|
|
117
|
+
/** Whether to show the platinum gradient border ring. @default false */
|
|
80
118
|
platinumShow?: boolean;
|
|
81
|
-
/**
|
|
119
|
+
/** Whether to apply the NSFW blur filter over the image. @default false */
|
|
82
120
|
NSFWShow?: boolean;
|
|
83
121
|
}
|
|
84
122
|
|
|
123
|
+
/**
|
|
124
|
+
* A small inline label for status, category, or metadata information.
|
|
125
|
+
*
|
|
126
|
+
* @example
|
|
127
|
+
* ```tsx
|
|
128
|
+
* <Badge variant="success">Active</Badge>
|
|
129
|
+
* ```
|
|
130
|
+
*/
|
|
85
131
|
export declare const Badge: React_2.ForwardRefExoticComponent<BadgeProps & React_2.RefAttributes<HTMLSpanElement>>;
|
|
86
132
|
|
|
87
133
|
export declare interface BadgeProps extends React_2.HTMLAttributes<HTMLSpanElement> {
|
|
88
|
-
/** Visual style variant of the badge */
|
|
134
|
+
/** Visual style variant of the badge. @default "default" */
|
|
89
135
|
variant?: BadgeVariant;
|
|
90
|
-
/**
|
|
136
|
+
/** Whether to show a coloured status dot at the leading edge. @default true */
|
|
91
137
|
leftDot?: boolean;
|
|
92
|
-
/**
|
|
138
|
+
/** Icon element displayed before the label. */
|
|
93
139
|
leftIcon?: React_2.ReactNode;
|
|
94
|
-
/**
|
|
140
|
+
/** Icon element displayed after the label. */
|
|
95
141
|
rightIcon?: React_2.ReactNode;
|
|
96
|
-
/**
|
|
142
|
+
/** Merge props onto a child element instead of rendering a `<span>`. @default false */
|
|
97
143
|
asChild?: boolean;
|
|
98
144
|
}
|
|
99
145
|
|
|
146
|
+
/** Visual style variant of the badge. */
|
|
100
147
|
export declare type BadgeVariant = "default" | "dark" | "success" | "warning" | "error" | "special" | "info" | "online" | "brand" | "pink" | "brandLight" | "pinkLight";
|
|
101
148
|
|
|
149
|
+
/**
|
|
150
|
+
* A versatile button component with multiple visual variants, sizes, icon
|
|
151
|
+
* slots, loading state, and optional pricing display.
|
|
152
|
+
*
|
|
153
|
+
* @example
|
|
154
|
+
* ```tsx
|
|
155
|
+
* <Button variant="brand" size="40" leftIcon={<StarIcon />}>
|
|
156
|
+
* Subscribe
|
|
157
|
+
* </Button>
|
|
158
|
+
* ```
|
|
159
|
+
*/
|
|
102
160
|
export declare const Button: React_2.ForwardRefExoticComponent<ButtonProps & React_2.RefAttributes<HTMLButtonElement>>;
|
|
103
161
|
|
|
104
162
|
export declare interface ButtonProps extends React_2.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
105
|
-
/** Visual style variant of the button */
|
|
163
|
+
/** Visual style variant of the button. @default "primary" */
|
|
106
164
|
variant?: ButtonVariant;
|
|
107
|
-
/**
|
|
165
|
+
/** Height of the button in pixels. @default "48" */
|
|
108
166
|
size?: ButtonSize;
|
|
109
|
-
/**
|
|
167
|
+
/** Icon element displayed before the label. */
|
|
110
168
|
leftIcon?: React_2.ReactNode;
|
|
111
|
-
/**
|
|
169
|
+
/** Icon element displayed after the label. */
|
|
112
170
|
rightIcon?: React_2.ReactNode;
|
|
113
|
-
/**
|
|
171
|
+
/** When `true`, replaces the label with a spinner and disables interaction. @default false */
|
|
114
172
|
loading?: boolean;
|
|
115
|
-
/**
|
|
173
|
+
/** Merge props onto a child element instead of rendering a `<button>`. @default false */
|
|
116
174
|
asChild?: boolean;
|
|
117
|
-
/** Old price shown with strikethrough before the current price */
|
|
175
|
+
/** Old price shown with a strikethrough before the current price. */
|
|
118
176
|
discount?: string;
|
|
119
|
-
/** Current price shown inside the button after the label
|
|
177
|
+
/** Current price shown inside the button after the label and icons. */
|
|
120
178
|
price?: string;
|
|
121
179
|
}
|
|
122
180
|
|
|
181
|
+
/** Button height in pixels. */
|
|
123
182
|
export declare type ButtonSize = "48" | "40" | "32" | "24";
|
|
124
183
|
|
|
184
|
+
/** Visual style variant of the button. */
|
|
125
185
|
export declare type ButtonVariant = "primary" | "secondary" | "tertiary" | "link" | "brand" | "destructive" | "white" | "tertiaryDestructive" | "text";
|
|
126
186
|
|
|
127
187
|
/**
|
|
128
|
-
*
|
|
129
|
-
*
|
|
130
|
-
*
|
|
188
|
+
* A checkbox input with optional label and helper text. Supports checked,
|
|
189
|
+
* unchecked, and indeterminate states.
|
|
190
|
+
*
|
|
191
|
+
* The ref type is intentionally `HTMLInputElement` (not `HTMLButtonElement`) for
|
|
192
|
+
* form-library compatibility — libraries like react-hook-form call `register()`
|
|
193
|
+
* which expects an `HTMLInputElement` ref. A hidden `<input>` is synced to the
|
|
194
|
+
* Radix checkbox state via `useImperativeHandle`.
|
|
195
|
+
*
|
|
196
|
+
* @example
|
|
197
|
+
* ```tsx
|
|
198
|
+
* <Checkbox label="Accept terms" helperText="Required to continue" />
|
|
199
|
+
* ```
|
|
131
200
|
*/
|
|
132
201
|
export declare const Checkbox: React_2.ForwardRefExoticComponent<CheckboxProps & React_2.RefAttributes<HTMLInputElement>>;
|
|
133
202
|
|
|
134
203
|
export declare interface CheckboxProps extends Omit<React_2.ComponentPropsWithoutRef<typeof CheckboxPrimitive.Root>, "asChild"> {
|
|
135
|
-
/** Size variant
|
|
204
|
+
/** Size variant that controls label and helper text typography. @default "default" */
|
|
136
205
|
size?: CheckboxSize;
|
|
137
|
-
/** Label text displayed next to the checkbox */
|
|
206
|
+
/** Label text displayed next to the checkbox. */
|
|
138
207
|
label?: string;
|
|
139
|
-
/**
|
|
208
|
+
/** Descriptive text displayed below the label. */
|
|
140
209
|
helperText?: string;
|
|
141
210
|
}
|
|
142
211
|
|
|
212
|
+
/** Size variant controlling label and helper text typography. */
|
|
143
213
|
export declare type CheckboxSize = "default" | "small";
|
|
144
214
|
|
|
215
|
+
/** A checkmark inside a filled circle icon (20 × 20). */
|
|
145
216
|
export declare const CheckCircleIcon: React_2.ForwardRefExoticComponent<React_2.SVGAttributes<SVGSVGElement> & {
|
|
146
217
|
className?: string;
|
|
147
218
|
} & React_2.RefAttributes<SVGSVGElement>>;
|
|
@@ -151,173 +222,270 @@ export declare const CheckIcon: React_2.ForwardRefExoticComponent<React_2.SVGAtt
|
|
|
151
222
|
className?: string;
|
|
152
223
|
} & React_2.RefAttributes<SVGSVGElement>>;
|
|
153
224
|
|
|
225
|
+
/** A left-pointing chevron icon (20 × 20). */
|
|
154
226
|
export declare const ChevronLeftIcon: React_2.ForwardRefExoticComponent<React_2.SVGAttributes<SVGSVGElement> & {
|
|
155
227
|
className?: string;
|
|
156
228
|
} & React_2.RefAttributes<SVGSVGElement>>;
|
|
157
229
|
|
|
230
|
+
/** A right-pointing chevron icon (20 × 20). */
|
|
158
231
|
export declare const ChevronRightIcon: React_2.ForwardRefExoticComponent<React_2.SVGAttributes<SVGSVGElement> & {
|
|
159
232
|
className?: string;
|
|
160
233
|
} & React_2.RefAttributes<SVGSVGElement>>;
|
|
161
234
|
|
|
235
|
+
/**
|
|
236
|
+
* A compact element for filters, tags, or toggleable actions. When an `onClick`
|
|
237
|
+
* handler is provided, the chip renders as an interactive `<button>` with
|
|
238
|
+
* `aria-pressed` support.
|
|
239
|
+
*
|
|
240
|
+
* @example
|
|
241
|
+
* ```tsx
|
|
242
|
+
* <Chip selected onClick={toggle}>Music</Chip>
|
|
243
|
+
* ```
|
|
244
|
+
*/
|
|
162
245
|
export declare const Chip: React_2.ForwardRefExoticComponent<ChipProps & React_2.RefAttributes<HTMLButtonElement>>;
|
|
163
246
|
|
|
164
247
|
export declare interface ChipProps extends React_2.HTMLAttributes<HTMLElement> {
|
|
165
|
-
/** Visual
|
|
248
|
+
/** Visual variant of the chip. @default "rounded" */
|
|
166
249
|
variant?: ChipVariant;
|
|
167
|
-
/**
|
|
250
|
+
/** Height of the chip in pixels. @default "32" */
|
|
168
251
|
size?: ChipSize;
|
|
169
|
-
/** Whether the chip is in a selected state */
|
|
252
|
+
/** Whether the chip is in a selected (pressed) state. @default false */
|
|
170
253
|
selected?: boolean;
|
|
171
|
-
/** Whether the chip is disabled */
|
|
254
|
+
/** Whether the chip is disabled. @default false */
|
|
172
255
|
disabled?: boolean;
|
|
173
|
-
/**
|
|
256
|
+
/** Whether to show a coloured status dot at the leading edge. @default false */
|
|
174
257
|
leftDot?: boolean;
|
|
175
|
-
/**
|
|
258
|
+
/** Icon element displayed before the label. */
|
|
176
259
|
leftIcon?: React_2.ReactNode;
|
|
177
|
-
/**
|
|
260
|
+
/** Icon element displayed after the label. */
|
|
178
261
|
rightIcon?: React_2.ReactNode;
|
|
179
|
-
/** Notification badge content (e.g
|
|
262
|
+
/** Notification badge content (e.g. `"99+"`). Passed as a string for i18n support. */
|
|
180
263
|
notificationLabel?: string;
|
|
181
|
-
/** Click handler — when provided, the chip renders as a `<button>` for accessibility */
|
|
264
|
+
/** Click handler — when provided, the chip renders as a `<button>` for accessibility. */
|
|
182
265
|
onClick?: React_2.MouseEventHandler<HTMLElement>;
|
|
183
|
-
/**
|
|
266
|
+
/** Merge props onto a child element instead of rendering a wrapper. @default false */
|
|
184
267
|
asChild?: boolean;
|
|
185
268
|
}
|
|
186
269
|
|
|
270
|
+
/** Height of the chip in pixels. */
|
|
187
271
|
export declare type ChipSize = "32" | "40";
|
|
188
272
|
|
|
273
|
+
/** Visual variant of the chip. */
|
|
189
274
|
export declare type ChipVariant = "rounded" | "square" | "dark";
|
|
190
275
|
|
|
276
|
+
/** A close/dismiss "×" icon with rounded stroke ends (20 × 20). */
|
|
191
277
|
export declare const CloseIcon: React_2.ForwardRefExoticComponent<React_2.SVGAttributes<SVGSVGElement> & {
|
|
192
278
|
className?: string;
|
|
193
279
|
} & React_2.RefAttributes<SVGSVGElement>>;
|
|
194
280
|
|
|
195
281
|
export declare function cn(...inputs: ClassValue[]): string;
|
|
196
282
|
|
|
283
|
+
/**
|
|
284
|
+
* A numeric badge typically used for notification counts. Automatically
|
|
285
|
+
* truncates values above `max` (e.g. `"99+"`). Renders nothing when the
|
|
286
|
+
* value is `0` and no children are provided.
|
|
287
|
+
*
|
|
288
|
+
* @example
|
|
289
|
+
* ```tsx
|
|
290
|
+
* <Count value={5} variant="brand" />
|
|
291
|
+
* ```
|
|
292
|
+
*/
|
|
197
293
|
export declare const Count: React_2.ForwardRefExoticComponent<CountProps & React_2.RefAttributes<HTMLSpanElement>>;
|
|
198
294
|
|
|
199
295
|
export declare interface CountProps extends React_2.HTMLAttributes<HTMLSpanElement> {
|
|
200
|
-
/**
|
|
296
|
+
/** Colour variant of the count badge. @default "default" */
|
|
201
297
|
variant?: CountVariant;
|
|
202
|
-
/**
|
|
298
|
+
/** Numeric value to display. Renders nothing when `0` and no `children` are provided. @default 0 */
|
|
203
299
|
value?: number;
|
|
204
|
-
/** Maximum value
|
|
300
|
+
/** Maximum value before showing overflow (e.g. `"99+"`). @default 99 */
|
|
205
301
|
max?: number;
|
|
206
|
-
/**
|
|
302
|
+
/** Merge props onto a child element instead of rendering a `<span>`. @default false */
|
|
207
303
|
asChild?: boolean;
|
|
208
304
|
}
|
|
209
305
|
|
|
306
|
+
/** Colour variant for the count badge. */
|
|
210
307
|
export declare type CountVariant = "default" | "brand" | "pink" | "info" | "success" | "warning";
|
|
211
308
|
|
|
309
|
+
/** A compact "×" cross icon (20 × 20). */
|
|
212
310
|
export declare const CrossIcon: React_2.ForwardRefExoticComponent<React_2.SVGAttributes<SVGSVGElement> & {
|
|
213
311
|
className?: string;
|
|
214
312
|
} & React_2.RefAttributes<SVGSVGElement>>;
|
|
215
313
|
|
|
314
|
+
/** A crown icon used for premium/VIP indicators (20 × 20). */
|
|
216
315
|
export declare const CrownIcon: React_2.ForwardRefExoticComponent<React_2.SVGAttributes<SVGSVGElement> & {
|
|
217
316
|
className?: string;
|
|
218
317
|
} & React_2.RefAttributes<SVGSVGElement>>;
|
|
219
318
|
|
|
319
|
+
/**
|
|
320
|
+
* A calendar date picker supporting single-date and date-range selection with
|
|
321
|
+
* optional side-by-side month display and footer action buttons.
|
|
322
|
+
*
|
|
323
|
+
* Built on top of [react-day-picker](https://react-day-picker.js.org/) — all
|
|
324
|
+
* `DayPickerProps` (except `numberOfMonths`) are forwarded.
|
|
325
|
+
*
|
|
326
|
+
* @example
|
|
327
|
+
* ```tsx
|
|
328
|
+
* <DatePicker
|
|
329
|
+
* mode="range"
|
|
330
|
+
* type="double"
|
|
331
|
+
* selected={range}
|
|
332
|
+
* onSelect={setRange}
|
|
333
|
+
* onApply={save}
|
|
334
|
+
* onCancel={close}
|
|
335
|
+
* />
|
|
336
|
+
* ```
|
|
337
|
+
*/
|
|
220
338
|
export declare const DatePicker: ForwardRefExoticComponent<DatePickerProps & RefAttributes<HTMLDivElement>>;
|
|
221
339
|
|
|
340
|
+
/** Props specific to the DatePicker wrapper (not inherited from react-day-picker). */
|
|
222
341
|
export declare interface DatePickerOwnProps {
|
|
223
342
|
/** Display one month or two side-by-side. @default "single" */
|
|
224
|
-
|
|
225
|
-
/**
|
|
343
|
+
variant?: DatePickerVariant;
|
|
344
|
+
/** Callback fired when the Apply button is clicked. */
|
|
226
345
|
onApply?: () => void;
|
|
227
|
-
/**
|
|
346
|
+
/** Callback fired when the Cancel button is clicked. */
|
|
228
347
|
onCancel?: () => void;
|
|
229
348
|
/** Label for the cancel button. @default "Cancel" */
|
|
230
349
|
cancelLabel?: string;
|
|
231
350
|
/** Label for the apply button. @default "Apply" */
|
|
232
351
|
applyLabel?: string;
|
|
233
|
-
/** Whether to render cancel / apply footer buttons. @default true */
|
|
352
|
+
/** Whether to render the cancel / apply footer buttons. @default true */
|
|
234
353
|
showFooter?: boolean;
|
|
235
|
-
/** Additional
|
|
354
|
+
/** Additional CSS class name for the outer container. */
|
|
236
355
|
className?: string;
|
|
237
356
|
}
|
|
238
357
|
|
|
358
|
+
/** Combined props — own DatePicker options plus all react-day-picker props (except `numberOfMonths`). */
|
|
239
359
|
export declare type DatePickerProps = DatePickerOwnProps & OmitDistributed<DayPickerProps, "numberOfMonths">;
|
|
240
360
|
|
|
241
|
-
|
|
361
|
+
/** Layout variant — single or side-by-side month display. */
|
|
362
|
+
export declare type DatePickerVariant = "single" | "double";
|
|
242
363
|
|
|
243
364
|
export { DateRange }
|
|
244
365
|
|
|
366
|
+
/**
|
|
367
|
+
* A horizontal separator used to divide content sections. Optionally displays a
|
|
368
|
+
* centred text label between two lines.
|
|
369
|
+
*
|
|
370
|
+
* @example
|
|
371
|
+
* ```tsx
|
|
372
|
+
* <Divider />
|
|
373
|
+
* <Divider label="or" />
|
|
374
|
+
* ```
|
|
375
|
+
*/
|
|
245
376
|
export declare const Divider: React_2.ForwardRefExoticComponent<DividerProps & React_2.RefAttributes<HTMLDivElement>>;
|
|
246
377
|
|
|
247
378
|
export declare interface DividerProps extends React_2.ComponentPropsWithoutRef<typeof SeparatorPrimitive.Root> {
|
|
248
|
-
/**
|
|
379
|
+
/** Optional centred label text. When provided, the divider renders as two lines with the label between them. */
|
|
249
380
|
label?: string;
|
|
250
381
|
}
|
|
251
382
|
|
|
383
|
+
/** An "×" inside a filled circle icon for error states (20 × 20). */
|
|
252
384
|
export declare const ErrorCircleIcon: React_2.ForwardRefExoticComponent<React_2.SVGAttributes<SVGSVGElement> & {
|
|
253
385
|
className?: string;
|
|
254
386
|
} & React_2.RefAttributes<SVGSVGElement>>;
|
|
255
387
|
|
|
388
|
+
/** An exclamation mark inside a filled circle icon for error/alert states (20 × 20). */
|
|
256
389
|
export declare const ErrorIcon: default_2.ForwardRefExoticComponent<default_2.SVGAttributes<SVGSVGElement> & {
|
|
257
390
|
className?: string;
|
|
258
391
|
} & default_2.RefAttributes<SVGSVGElement>>;
|
|
259
392
|
|
|
393
|
+
/** An eye icon for visibility/show actions (20 × 20). */
|
|
260
394
|
export declare const EyeIcon: React_2.ForwardRefExoticComponent<React_2.SVGAttributes<SVGSVGElement> & {
|
|
261
395
|
className?: string;
|
|
262
396
|
} & React_2.RefAttributes<SVGSVGElement>>;
|
|
263
397
|
|
|
398
|
+
/** A flame/fire icon for trending or popular content (20 × 20). */
|
|
264
399
|
export declare const FireIcon: React_2.ForwardRefExoticComponent<React_2.SVGAttributes<SVGSVGElement> & {
|
|
265
400
|
className?: string;
|
|
266
401
|
} & React_2.RefAttributes<SVGSVGElement>>;
|
|
267
402
|
|
|
403
|
+
/** A house icon for home/dashboard navigation (20 × 20). */
|
|
268
404
|
export declare const HomeIcon: React_2.ForwardRefExoticComponent<React_2.SVGAttributes<SVGSVGElement> & {
|
|
269
405
|
className?: string;
|
|
270
406
|
} & React_2.RefAttributes<SVGSVGElement>>;
|
|
271
407
|
|
|
408
|
+
/**
|
|
409
|
+
* A circular button containing only an icon. Use when an action can be
|
|
410
|
+
* represented by an icon alone (e.g. close, send, mic). Pair with an
|
|
411
|
+
* `aria-label` for accessibility.
|
|
412
|
+
*
|
|
413
|
+
* @example
|
|
414
|
+
* ```tsx
|
|
415
|
+
* <IconButton icon={<CloseIcon />} aria-label="Close" variant="tertiary" />
|
|
416
|
+
* ```
|
|
417
|
+
*/
|
|
272
418
|
export declare const IconButton: React_2.ForwardRefExoticComponent<IconButtonProps & React_2.RefAttributes<HTMLButtonElement>>;
|
|
273
419
|
|
|
274
420
|
export declare interface IconButtonProps extends React_2.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
275
|
-
/** Visual style variant of the icon button */
|
|
421
|
+
/** Visual style variant of the icon button. @default "primary" */
|
|
276
422
|
variant?: IconButtonVariant;
|
|
277
|
-
/** Size of the button */
|
|
423
|
+
/** Size of the button in pixels. @default "40" */
|
|
278
424
|
size?: IconButtonSize;
|
|
279
|
-
/** Icon element to
|
|
425
|
+
/** Icon element to render inside the button. */
|
|
280
426
|
icon: React_2.ReactNode;
|
|
281
|
-
/**
|
|
427
|
+
/** When provided, displays a {@link Count} badge at the top-right corner (tertiary & navTray variants only). */
|
|
282
428
|
counterValue?: number;
|
|
283
429
|
}
|
|
284
430
|
|
|
431
|
+
/** Icon button size in pixels. */
|
|
285
432
|
export declare type IconButtonSize = "24" | "32" | "40" | "52" | "72";
|
|
286
433
|
|
|
434
|
+
/** Visual style variant of the icon button. */
|
|
287
435
|
export declare type IconButtonVariant = "primary" | "secondary" | "tertiary" | "brand" | "contrast" | "messaging" | "navTray" | "tertiaryDestructive" | "stop" | "microphone";
|
|
288
436
|
|
|
289
|
-
/**
|
|
437
|
+
/**
|
|
438
|
+
* Shared props for all icon components. Extends standard SVG attributes.
|
|
439
|
+
*
|
|
440
|
+
* Each icon ships with a default size class (e.g. `size-5`). Override it via
|
|
441
|
+
* `className` (e.g. `className="size-6"`).
|
|
442
|
+
*/
|
|
290
443
|
export declare type IconProps = React_2.SVGAttributes<SVGSVGElement> & {
|
|
291
444
|
className?: string;
|
|
292
445
|
};
|
|
293
446
|
|
|
447
|
+
/** An "i" inside a filled circle icon for informational tooltips (20 × 20). */
|
|
294
448
|
export declare const InfoCircleIcon: React_2.ForwardRefExoticComponent<React_2.SVGAttributes<SVGSVGElement> & {
|
|
295
449
|
className?: string;
|
|
296
450
|
} & React_2.RefAttributes<SVGSVGElement>>;
|
|
297
451
|
|
|
452
|
+
/** An info icon with exclamation-style "i" in a circle (20 × 20). */
|
|
298
453
|
export declare const InfoIcon: default_2.ForwardRefExoticComponent<default_2.SVGAttributes<SVGSVGElement> & {
|
|
299
454
|
className?: string;
|
|
300
455
|
} & default_2.RefAttributes<SVGSVGElement>>;
|
|
301
456
|
|
|
457
|
+
/**
|
|
458
|
+
* The Fanvue brand logo. Supports full (icon + wordmark), icon-only, wordmark-only,
|
|
459
|
+
* and portrait (stacked) layouts with multiple colour schemes.
|
|
460
|
+
*
|
|
461
|
+
* @example
|
|
462
|
+
* ```tsx
|
|
463
|
+
* <Logo type="full" color="fullColour" />
|
|
464
|
+
* ```
|
|
465
|
+
*/
|
|
302
466
|
export declare const Logo: React_2.ForwardRefExoticComponent<LogoProps & React_2.RefAttributes<HTMLDivElement>>;
|
|
303
467
|
|
|
468
|
+
/** Colour scheme of the logo. */
|
|
304
469
|
export declare type LogoColor = "fullColour" | "decolour" | "whiteAlways" | "blackAlways";
|
|
305
470
|
|
|
306
471
|
export declare interface LogoProps extends React_2.HTMLAttributes<HTMLDivElement> {
|
|
307
|
-
/**
|
|
308
|
-
|
|
309
|
-
/**
|
|
472
|
+
/** Layout variant of the logo. @default "full" */
|
|
473
|
+
variant?: LogoVariant;
|
|
474
|
+
/** Colour scheme of the logo. @default "fullColour" */
|
|
310
475
|
color?: LogoColor;
|
|
311
476
|
/**
|
|
312
|
-
* Accessible label for the logo.
|
|
313
|
-
*
|
|
314
|
-
*
|
|
477
|
+
* Accessible label for the logo. Required when `type` is `"icon"` and
|
|
478
|
+
* the logo is used inside interactive contexts (links, buttons).
|
|
479
|
+
*
|
|
480
|
+
* @example "Fanvue home"
|
|
315
481
|
*/
|
|
316
482
|
"aria-label"?: string;
|
|
317
483
|
}
|
|
318
484
|
|
|
319
|
-
|
|
485
|
+
/** Layout variant of the logo. */
|
|
486
|
+
export declare type LogoVariant = "full" | "icon" | "wordmark" | "portrait";
|
|
320
487
|
|
|
488
|
+
/** A microphone icon for audio recording actions (40 × 40). */
|
|
321
489
|
export declare const MicrophoneIcon: React_2.ForwardRefExoticComponent<React_2.SVGAttributes<SVGSVGElement> & {
|
|
322
490
|
className?: string;
|
|
323
491
|
} & React_2.RefAttributes<SVGSVGElement>>;
|
|
@@ -342,309 +510,518 @@ export declare const MinusIcon: React_2.ForwardRefExoticComponent<React_2.SVGAtt
|
|
|
342
510
|
*/
|
|
343
511
|
export declare type OmitDistributed<T, K extends PropertyKey> = T extends unknown ? Omit<T, K> : never;
|
|
344
512
|
|
|
513
|
+
/**
|
|
514
|
+
* Page navigation control with previous/next buttons and numbered page
|
|
515
|
+
* indicators. Supports a numbered-buttons layout (`"default"`) and a compact
|
|
516
|
+
* dots layout (`"dots"`).
|
|
517
|
+
*
|
|
518
|
+
* @example
|
|
519
|
+
* ```tsx
|
|
520
|
+
* <Pagination totalPages={10} currentPage={page} onPageChange={setPage} />
|
|
521
|
+
* ```
|
|
522
|
+
*/
|
|
345
523
|
export declare const Pagination: React_2.ForwardRefExoticComponent<PaginationProps & React_2.RefAttributes<HTMLElement>>;
|
|
346
524
|
|
|
347
525
|
export declare interface PaginationProps extends Omit<React_2.HTMLAttributes<HTMLElement>, "onChange"> {
|
|
348
|
-
/**
|
|
526
|
+
/** Display style — numbered page buttons or minimal dots. @default "default" */
|
|
349
527
|
variant?: PaginationVariant;
|
|
350
|
-
/** Total number of pages */
|
|
528
|
+
/** Total number of pages. */
|
|
351
529
|
totalPages: number;
|
|
352
|
-
/** Current active page (1-indexed) */
|
|
530
|
+
/** Current active page (1-indexed). */
|
|
353
531
|
currentPage: number;
|
|
354
|
-
/**
|
|
532
|
+
/** Callback fired when the active page changes. Receives the new 1-indexed page number. */
|
|
355
533
|
onPageChange?: (page: number) => void;
|
|
356
|
-
/**
|
|
534
|
+
/** Accessible label for the `<nav>` landmark. @default "Pagination" */
|
|
357
535
|
ariaLabel?: string;
|
|
358
|
-
/**
|
|
536
|
+
/** Accessible label for the previous-page button. @default "Previous page" */
|
|
359
537
|
previousLabel?: string;
|
|
360
|
-
/**
|
|
538
|
+
/** Accessible label for the next-page button. @default "Next page" */
|
|
361
539
|
nextLabel?: string;
|
|
362
|
-
/**
|
|
540
|
+
/** Function that returns an accessible label for each page button. @default (page) => \`Page ${page}\` */
|
|
363
541
|
getPageLabel?: (page: number) => string;
|
|
364
542
|
}
|
|
365
543
|
|
|
544
|
+
/** Pagination display style — numbered buttons or minimal dots. */
|
|
366
545
|
export declare type PaginationVariant = "default" | "dots";
|
|
367
546
|
|
|
547
|
+
/**
|
|
548
|
+
* A small rounded label for categorisation, status, or tagging.
|
|
549
|
+
*
|
|
550
|
+
* @example
|
|
551
|
+
* ```tsx
|
|
552
|
+
* <Pill variant="brand">New</Pill>
|
|
553
|
+
* ```
|
|
554
|
+
*/
|
|
368
555
|
export declare const Pill: React_2.ForwardRefExoticComponent<PillProps & React_2.RefAttributes<HTMLSpanElement>>;
|
|
369
556
|
|
|
370
557
|
export declare interface PillProps extends React_2.HTMLAttributes<HTMLSpanElement> {
|
|
371
|
-
/**
|
|
558
|
+
/** Colour variant of the pill. @default "green" */
|
|
372
559
|
variant?: PillVariant;
|
|
373
|
-
/**
|
|
560
|
+
/** Icon element displayed before the label. */
|
|
374
561
|
leftIcon?: React_2.ReactNode;
|
|
375
|
-
/**
|
|
562
|
+
/** Icon element displayed after the label. */
|
|
376
563
|
rightIcon?: React_2.ReactNode;
|
|
377
|
-
/**
|
|
564
|
+
/** Merge props onto a child element instead of rendering a `<span>`. @default false */
|
|
378
565
|
asChild?: boolean;
|
|
379
566
|
}
|
|
380
567
|
|
|
568
|
+
/** Colour variant of the pill. */
|
|
381
569
|
export declare type PillVariant = "green" | "grey" | "blue" | "gold" | "pinkLight" | "base" | "brand" | "brandLight" | "beta" | "error";
|
|
382
570
|
|
|
571
|
+
/** A "+" plus icon for add/create actions (20 × 20). */
|
|
383
572
|
export declare const PlusIcon: React_2.ForwardRefExoticComponent<React_2.SVGAttributes<SVGSVGElement> & {
|
|
384
573
|
className?: string;
|
|
385
574
|
} & React_2.RefAttributes<SVGSVGElement>>;
|
|
386
575
|
|
|
576
|
+
/**
|
|
577
|
+
* A horizontal progress indicator with optional title, completion percentage,
|
|
578
|
+
* step count, and helper text. The bar colour reflects progress when using the
|
|
579
|
+
* `"default"` variant.
|
|
580
|
+
*
|
|
581
|
+
* @example
|
|
582
|
+
* ```tsx
|
|
583
|
+
* <ProgressBar value={65} title="Upload" showCompletion />
|
|
584
|
+
* ```
|
|
585
|
+
*/
|
|
387
586
|
export declare const ProgressBar: React_2.ForwardRefExoticComponent<ProgressBarProps & React_2.RefAttributes<HTMLDivElement>>;
|
|
388
587
|
|
|
389
588
|
export declare interface ProgressBarProps extends Omit<React_2.HTMLAttributes<HTMLDivElement>, "title"> {
|
|
390
|
-
/** Current progress value
|
|
589
|
+
/** Current progress value, clamped to 0–100. */
|
|
391
590
|
value: number;
|
|
392
|
-
/**
|
|
591
|
+
/** Track height — `"default"` (12px) or `"small"` (6px). @default "default" */
|
|
393
592
|
size?: ProgressBarSize;
|
|
394
|
-
/**
|
|
593
|
+
/** Colour mode — `"default"` is colour-coded by value, `"generic"` always uses brand green. @default "default" */
|
|
395
594
|
variant?: ProgressBarVariant;
|
|
396
|
-
/** Title content shown at top
|
|
595
|
+
/** Title content shown at the top-left of the bar. */
|
|
397
596
|
title?: React_2.ReactNode;
|
|
398
|
-
/**
|
|
597
|
+
/** Whether to display the completion percentage above the track. @default false */
|
|
399
598
|
showCompletion?: boolean;
|
|
400
|
-
/** Steps label shown at top
|
|
599
|
+
/** Steps label shown at the top-right (e.g. `"2/8 steps"`). */
|
|
401
600
|
stepsLabel?: React_2.ReactNode;
|
|
402
|
-
/** Helper content at bottom
|
|
601
|
+
/** Helper content at the bottom-left of the bar. */
|
|
403
602
|
helperLeft?: React_2.ReactNode;
|
|
404
|
-
/** Helper content at bottom
|
|
603
|
+
/** Helper content at the bottom-right of the bar. */
|
|
405
604
|
helperRight?: React_2.ReactNode;
|
|
406
|
-
/** Icon shown at bottom
|
|
605
|
+
/** Icon shown at the bottom-left before the helper text. */
|
|
407
606
|
leftIcon?: React_2.ReactNode;
|
|
408
|
-
/** Accessible label for the
|
|
607
|
+
/** Accessible label for the `progressbar` role. @default "Progress" */
|
|
409
608
|
ariaLabel?: string;
|
|
410
609
|
}
|
|
411
610
|
|
|
611
|
+
/** Track height — `"default"` (12px) or `"small"` (6px). */
|
|
412
612
|
export declare type ProgressBarSize = "default" | "small";
|
|
413
613
|
|
|
614
|
+
/** Colour mode — `"default"` uses red/yellow/green by value, `"generic"` always uses brand green. */
|
|
414
615
|
export declare type ProgressBarVariant = "default" | "generic";
|
|
415
616
|
|
|
617
|
+
/**
|
|
618
|
+
* A single radio option within a {@link RadioGroup}. Includes an optional label
|
|
619
|
+
* and helper text.
|
|
620
|
+
*
|
|
621
|
+
* @example
|
|
622
|
+
* ```tsx
|
|
623
|
+
* <RadioGroup value={value} onValueChange={setValue}>
|
|
624
|
+
* <Radio value="a" label="Option A" />
|
|
625
|
+
* <Radio value="b" label="Option B" />
|
|
626
|
+
* </RadioGroup>
|
|
627
|
+
* ```
|
|
628
|
+
*/
|
|
416
629
|
export declare const Radio: React_2.ForwardRefExoticComponent<RadioProps & React_2.RefAttributes<HTMLButtonElement>>;
|
|
417
630
|
|
|
631
|
+
/**
|
|
632
|
+
* Groups {@link Radio} items into a single controlled or uncontrolled selection.
|
|
633
|
+
* Built on Radix UI `RadioGroup.Root`.
|
|
634
|
+
*
|
|
635
|
+
* @example
|
|
636
|
+
* ```tsx
|
|
637
|
+
* <RadioGroup value={value} onValueChange={setValue}>
|
|
638
|
+
* <Radio value="a" label="Option A" />
|
|
639
|
+
* <Radio value="b" label="Option B" />
|
|
640
|
+
* </RadioGroup>
|
|
641
|
+
* ```
|
|
642
|
+
*/
|
|
418
643
|
export declare const RadioGroup: React_2.ForwardRefExoticComponent<Omit<RadioGroupPrimitive.RadioGroupProps & React_2.RefAttributes<HTMLDivElement>, "ref"> & React_2.RefAttributes<HTMLDivElement>>;
|
|
419
644
|
|
|
645
|
+
/** Props for the {@link RadioGroup} component. Extends the Radix `RadioGroup.Root` props. */
|
|
420
646
|
export declare type RadioGroupProps = React_2.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Root>;
|
|
421
647
|
|
|
422
648
|
export declare interface RadioProps extends Omit<React_2.ComponentPropsWithoutRef<typeof RadioGroupPrimitive.Item>, "asChild"> {
|
|
423
|
-
/** Size variant
|
|
649
|
+
/** Size variant controlling label and helper text typography. @default "default" */
|
|
424
650
|
size?: "default" | "small";
|
|
425
|
-
/** Label text
|
|
651
|
+
/** Label text displayed next to the radio button. */
|
|
426
652
|
label?: string;
|
|
427
|
-
/**
|
|
653
|
+
/** Descriptive text displayed below the label. */
|
|
428
654
|
helperText?: string;
|
|
429
655
|
}
|
|
430
656
|
|
|
657
|
+
/**
|
|
658
|
+
* A range input for selecting one or more numeric values along a track.
|
|
659
|
+
* Supports single and multi-thumb modes, optional labels, and a value tooltip.
|
|
660
|
+
*
|
|
661
|
+
* Built on Radix UI `Slider`.
|
|
662
|
+
*
|
|
663
|
+
* @example
|
|
664
|
+
* ```tsx
|
|
665
|
+
* <Slider
|
|
666
|
+
* label="Volume"
|
|
667
|
+
* min={0}
|
|
668
|
+
* max={100}
|
|
669
|
+
* defaultValue={[50]}
|
|
670
|
+
* showTooltip
|
|
671
|
+
* />
|
|
672
|
+
* ```
|
|
673
|
+
*/
|
|
431
674
|
export declare const Slider: React_2.ForwardRefExoticComponent<SliderProps & React_2.RefAttributes<HTMLSpanElement>>;
|
|
432
675
|
|
|
676
|
+
/** Position of the slider label relative to the track. */
|
|
433
677
|
export declare type SliderLabelPosition = "top" | "left";
|
|
434
678
|
|
|
435
679
|
export declare interface SliderProps extends Omit<React_2.ComponentPropsWithoutRef<typeof SliderPrimitive.Root>, "asChild" | "children"> {
|
|
436
|
-
/** Label text displayed alongside the slider */
|
|
680
|
+
/** Label text displayed alongside the slider. */
|
|
437
681
|
label?: string;
|
|
438
|
-
/** Position of the label relative to the slider track */
|
|
682
|
+
/** Position of the label relative to the slider track. @default "top" */
|
|
439
683
|
labelPosition?: SliderLabelPosition;
|
|
440
|
-
/** Text shown at the minimum end of the track */
|
|
684
|
+
/** Text shown at the minimum end of the track. */
|
|
441
685
|
minLabel?: string;
|
|
442
|
-
/** Text shown at the maximum end of the track */
|
|
686
|
+
/** Text shown at the maximum end of the track. */
|
|
443
687
|
maxLabel?: string;
|
|
444
|
-
/** Whether to show a tooltip with the current value above the thumb */
|
|
688
|
+
/** Whether to show a tooltip with the current value above the thumb. @default false */
|
|
445
689
|
showTooltip?: boolean;
|
|
446
|
-
/**
|
|
690
|
+
/** Custom formatter for the tooltip value (e.g. to add units or format numbers). */
|
|
447
691
|
formatTooltip?: (value: number) => string;
|
|
448
692
|
}
|
|
449
693
|
|
|
694
|
+
/**
|
|
695
|
+
* A prominent inline message with optional title, description, action buttons,
|
|
696
|
+
* and close control. Supports three layout variants: `default`, `vipEarn`, and
|
|
697
|
+
* `welcome`.
|
|
698
|
+
*
|
|
699
|
+
* @example
|
|
700
|
+
* ```tsx
|
|
701
|
+
* <Snackbar
|
|
702
|
+
* variant="default"
|
|
703
|
+
* primaryLabel="Undo"
|
|
704
|
+
* primaryOnClick={undo}
|
|
705
|
+
* closable
|
|
706
|
+
* onClose={dismiss}
|
|
707
|
+
* >
|
|
708
|
+
* Item deleted
|
|
709
|
+
* </Snackbar>
|
|
710
|
+
* ```
|
|
711
|
+
*/
|
|
450
712
|
export declare const Snackbar: React_2.ForwardRefExoticComponent<SnackbarProps & React_2.RefAttributes<HTMLDivElement>>;
|
|
451
713
|
|
|
452
714
|
export declare interface SnackbarProps extends Omit<React_2.HTMLAttributes<HTMLDivElement>, "title"> {
|
|
453
|
-
/**
|
|
715
|
+
/** Layout variant of the snackbar. @default "default" */
|
|
454
716
|
variant?: SnackbarVariant;
|
|
455
|
-
/**
|
|
717
|
+
/** Icon element displayed at the leading edge (used by the `vipEarn` variant). */
|
|
456
718
|
icon?: React_2.ReactNode;
|
|
457
|
-
/** Title
|
|
719
|
+
/** Title content. */
|
|
458
720
|
title?: React_2.ReactNode;
|
|
459
|
-
/**
|
|
721
|
+
/** Descriptive body text. */
|
|
460
722
|
description?: React_2.ReactNode;
|
|
461
|
-
/** Whether to show
|
|
723
|
+
/** Whether to show primary/secondary action buttons. @default true */
|
|
462
724
|
showActions?: boolean;
|
|
463
|
-
/** Primary CTA label
|
|
725
|
+
/** Primary CTA label — renders a default {@link Button}. */
|
|
464
726
|
primaryLabel?: string;
|
|
465
|
-
/**
|
|
727
|
+
/** Click handler for the primary CTA (used together with `primaryLabel`). */
|
|
466
728
|
primaryOnClick?: () => void;
|
|
467
|
-
/** Custom element
|
|
729
|
+
/** Custom element rendered as the primary CTA. Overrides `primaryLabel` / `primaryOnClick`. */
|
|
468
730
|
primarySlot?: React_2.ReactNode;
|
|
469
|
-
/** Secondary CTA label
|
|
731
|
+
/** Secondary CTA label — renders a default {@link Button}. */
|
|
470
732
|
secondaryLabel?: string;
|
|
471
|
-
/**
|
|
733
|
+
/** Click handler for the secondary CTA (used together with `secondaryLabel`). */
|
|
472
734
|
secondaryOnClick?: () => void;
|
|
473
|
-
/** Custom element
|
|
735
|
+
/** Custom element rendered as the secondary CTA. Overrides `secondaryLabel` / `secondaryOnClick`. */
|
|
474
736
|
secondarySlot?: React_2.ReactNode;
|
|
475
|
-
/**
|
|
737
|
+
/** Whether to show the close button. @default false */
|
|
476
738
|
closable?: boolean;
|
|
477
|
-
/**
|
|
739
|
+
/** Callback fired when the close button is clicked. */
|
|
478
740
|
onClose?: () => void;
|
|
479
741
|
/** Accessible label for the close button. @default "Close snackbar" */
|
|
480
742
|
closeLabel?: string;
|
|
481
743
|
}
|
|
482
744
|
|
|
745
|
+
/** Layout variant of the snackbar. */
|
|
483
746
|
export declare type SnackbarVariant = "default" | "vipEarn" | "welcome";
|
|
484
747
|
|
|
748
|
+
/** A circular spinner icon for loading states (20 × 20). Pair with a CSS `animate-spin` class. */
|
|
485
749
|
export declare const SpinnerIcon: React_2.ForwardRefExoticComponent<React_2.SVGAttributes<SVGSVGElement> & {
|
|
486
750
|
className?: string;
|
|
487
751
|
} & React_2.RefAttributes<SVGSVGElement>>;
|
|
488
752
|
|
|
753
|
+
/** A filled-square stop icon for media/recording controls (40 × 40). */
|
|
489
754
|
export declare const StopIcon: React_2.ForwardRefExoticComponent<React_2.SVGAttributes<SVGSVGElement> & {
|
|
490
755
|
className?: string;
|
|
491
756
|
} & React_2.RefAttributes<SVGSVGElement>>;
|
|
492
757
|
|
|
758
|
+
/** A checkmark inside a filled circle icon for success states (20 × 20). */
|
|
493
759
|
export declare const SuccessIcon: default_2.ForwardRefExoticComponent<default_2.SVGAttributes<SVGSVGElement> & {
|
|
494
760
|
className?: string;
|
|
495
761
|
} & default_2.RefAttributes<SVGSVGElement>>;
|
|
496
762
|
|
|
763
|
+
/**
|
|
764
|
+
* A toggle switch for boolean on/off states. Built on Radix UI `Switch`.
|
|
765
|
+
*
|
|
766
|
+
* For a labelled switch with helper text, see {@link SwitchField}.
|
|
767
|
+
*
|
|
768
|
+
* @example
|
|
769
|
+
* ```tsx
|
|
770
|
+
* <Switch checked={on} onCheckedChange={setOn} />
|
|
771
|
+
* ```
|
|
772
|
+
*/
|
|
497
773
|
export declare const Switch: React_2.ForwardRefExoticComponent<SwitchProps & React_2.RefAttributes<HTMLButtonElement>>;
|
|
498
774
|
|
|
775
|
+
/**
|
|
776
|
+
* A labelled switch field with optional helper text and info tooltip. Composes
|
|
777
|
+
* the {@link Switch} component with a `<label>` and description.
|
|
778
|
+
*
|
|
779
|
+
* @example
|
|
780
|
+
* ```tsx
|
|
781
|
+
* <SwitchField
|
|
782
|
+
* label="Notifications"
|
|
783
|
+
* helperText="Receive push notifications"
|
|
784
|
+
* checked={enabled}
|
|
785
|
+
* onCheckedChange={setEnabled}
|
|
786
|
+
* />
|
|
787
|
+
* ```
|
|
788
|
+
*/
|
|
499
789
|
export declare const SwitchField: React_2.ForwardRefExoticComponent<SwitchFieldProps & React_2.RefAttributes<HTMLButtonElement>>;
|
|
500
790
|
|
|
791
|
+
/** Side on which the switch toggle is positioned relative to the label. */
|
|
501
792
|
export declare type SwitchFieldOrientation = "right" | "left";
|
|
502
793
|
|
|
503
794
|
export declare interface SwitchFieldProps extends Omit<React_2.ComponentPropsWithoutRef<typeof Switch>, "size" | "className"> {
|
|
504
|
-
/**
|
|
795
|
+
/** Side on which the switch is placed relative to the label. @default "right" */
|
|
505
796
|
orientation?: SwitchFieldOrientation;
|
|
506
|
-
/** Size variant of the switch and text */
|
|
797
|
+
/** Size variant of the switch and accompanying text. @default "default" */
|
|
507
798
|
size?: SwitchSize;
|
|
508
|
-
/** Label text displayed next to the switch */
|
|
799
|
+
/** Label text displayed next to the switch. */
|
|
509
800
|
label?: string;
|
|
510
|
-
/**
|
|
801
|
+
/** Descriptive text displayed below the label. */
|
|
511
802
|
helperText?: string;
|
|
512
|
-
/**
|
|
803
|
+
/** Tooltip text shown when hovering the info icon next to the label. */
|
|
513
804
|
infoText?: string;
|
|
514
805
|
/** Accessible label for the info tooltip trigger button. Override for i18n.
|
|
515
806
|
* @default "More information"
|
|
516
807
|
*/
|
|
517
808
|
infoLabel?: string;
|
|
518
|
-
/** Additional
|
|
809
|
+
/** Additional CSS class name for the outer wrapper. */
|
|
519
810
|
className?: string;
|
|
520
811
|
}
|
|
521
812
|
|
|
522
813
|
export declare interface SwitchProps extends Omit<React_2.ComponentPropsWithoutRef<typeof SwitchPrimitive.Root>, "asChild"> {
|
|
523
|
-
/** Size variant of the switch */
|
|
814
|
+
/** Size variant of the switch. @default "default" */
|
|
524
815
|
size?: SwitchSize;
|
|
525
816
|
}
|
|
526
817
|
|
|
818
|
+
/** Size variant of the switch toggle. */
|
|
527
819
|
export declare type SwitchSize = "default" | "small";
|
|
528
820
|
|
|
821
|
+
/**
|
|
822
|
+
* A binary segmented toggle rendered as a `radiogroup`. The active option is
|
|
823
|
+
* highlighted with a sliding pill indicator. Supports both controlled and
|
|
824
|
+
* uncontrolled usage.
|
|
825
|
+
*
|
|
826
|
+
* @example
|
|
827
|
+
* ```tsx
|
|
828
|
+
* <SwitchToggle
|
|
829
|
+
* options={[
|
|
830
|
+
* { label: "Monthly", value: "monthly" },
|
|
831
|
+
* { label: "Yearly", value: "yearly" },
|
|
832
|
+
* ]}
|
|
833
|
+
* value={billing}
|
|
834
|
+
* onChange={setBilling}
|
|
835
|
+
* />
|
|
836
|
+
* ```
|
|
837
|
+
*/
|
|
529
838
|
export declare const SwitchToggle: React_2.ForwardRefExoticComponent<SwitchToggleProps & React_2.RefAttributes<HTMLDivElement>>;
|
|
530
839
|
|
|
840
|
+
/** Describes one side of the binary toggle. */
|
|
531
841
|
export declare interface SwitchToggleOption {
|
|
532
|
-
/** Display label for the option */
|
|
842
|
+
/** Display label for the option. */
|
|
533
843
|
label: string;
|
|
534
|
-
/** Value identifier
|
|
844
|
+
/** Value identifier returned via `onChange`. */
|
|
535
845
|
value: string;
|
|
536
846
|
}
|
|
537
847
|
|
|
538
848
|
export declare interface SwitchToggleProps extends Omit<React_2.HTMLAttributes<HTMLDivElement>, "onChange"> {
|
|
539
|
-
/**
|
|
849
|
+
/** Height of the toggle in pixels. @default "24" */
|
|
540
850
|
size?: SwitchToggleSize;
|
|
541
|
-
/** The two options to toggle between */
|
|
851
|
+
/** The two options to toggle between (exactly two required). */
|
|
542
852
|
options: [SwitchToggleOption, SwitchToggleOption];
|
|
543
|
-
/** Currently selected value */
|
|
853
|
+
/** Currently selected value (controlled). */
|
|
544
854
|
value?: string;
|
|
545
|
-
/**
|
|
855
|
+
/** Initially selected value (uncontrolled). */
|
|
546
856
|
defaultValue?: string;
|
|
547
|
-
/** Callback when the selected value changes */
|
|
857
|
+
/** Callback fired when the selected value changes. */
|
|
548
858
|
onChange?: (value: string) => void;
|
|
549
|
-
/** Whether the toggle is disabled */
|
|
859
|
+
/** Whether the toggle is disabled. @default false */
|
|
550
860
|
disabled?: boolean;
|
|
551
861
|
}
|
|
552
862
|
|
|
863
|
+
/** Height of the switch toggle in pixels. */
|
|
553
864
|
export declare type SwitchToggleSize = "24" | "32" | "40";
|
|
554
865
|
|
|
866
|
+
/**
|
|
867
|
+
* Root container for a tabbed interface. Manages the active tab state and
|
|
868
|
+
* coordinates {@link TabsList}, {@link TabsTrigger}, and {@link TabsContent}.
|
|
869
|
+
*
|
|
870
|
+
* Built on Radix UI `Tabs`.
|
|
871
|
+
*
|
|
872
|
+
* @example
|
|
873
|
+
* ```tsx
|
|
874
|
+
* <Tabs defaultValue="tab1">
|
|
875
|
+
* <TabsList>
|
|
876
|
+
* <TabsTrigger value="tab1">Tab 1</TabsTrigger>
|
|
877
|
+
* <TabsTrigger value="tab2">Tab 2</TabsTrigger>
|
|
878
|
+
* </TabsList>
|
|
879
|
+
* <TabsContent value="tab1">Content 1</TabsContent>
|
|
880
|
+
* <TabsContent value="tab2">Content 2</TabsContent>
|
|
881
|
+
* </Tabs>
|
|
882
|
+
* ```
|
|
883
|
+
*/
|
|
555
884
|
export declare const Tabs: React_2.ForwardRefExoticComponent<TabsPrimitive.TabsProps & React_2.RefAttributes<HTMLDivElement>>;
|
|
556
885
|
|
|
886
|
+
/** Renders the content panel for a given tab `value`. Only visible when its value matches the active tab. */
|
|
557
887
|
export declare const TabsContent: React_2.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsContentProps & React_2.RefAttributes<HTMLDivElement>, "ref"> & React_2.RefAttributes<HTMLDivElement>>;
|
|
558
888
|
|
|
889
|
+
/** Props for the {@link TabsContent} panel component. */
|
|
559
890
|
export declare type TabsContentProps = React_2.ComponentPropsWithoutRef<typeof TabsPrimitive.Content>;
|
|
560
891
|
|
|
892
|
+
/** Container for {@link TabsTrigger} elements. Supports both horizontal and vertical orientations. */
|
|
561
893
|
export declare const TabsList: React_2.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsListProps & React_2.RefAttributes<HTMLDivElement>, "ref"> & React_2.RefAttributes<HTMLDivElement>>;
|
|
562
894
|
|
|
895
|
+
/** Props for the {@link TabsList} component. */
|
|
563
896
|
export declare type TabsListProps = React_2.ComponentPropsWithoutRef<typeof TabsPrimitive.List>;
|
|
564
897
|
|
|
898
|
+
/** Props for the {@link Tabs} root component. Extends Radix `Tabs.Root` props. */
|
|
565
899
|
export declare type TabsProps = React_2.ComponentPropsWithoutRef<typeof TabsPrimitive.Root>;
|
|
566
900
|
|
|
901
|
+
/** An interactive tab button that activates its associated {@link TabsContent} panel when clicked. */
|
|
567
902
|
export declare const TabsTrigger: React_2.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsTriggerProps & React_2.RefAttributes<HTMLButtonElement>, "ref"> & React_2.RefAttributes<HTMLButtonElement>>;
|
|
568
903
|
|
|
904
|
+
/** Props for the {@link TabsTrigger} button component. */
|
|
569
905
|
export declare type TabsTriggerProps = React_2.ComponentPropsWithoutRef<typeof TabsPrimitive.Trigger>;
|
|
570
906
|
|
|
907
|
+
/**
|
|
908
|
+
* A text input field with optional label, helper/error text, and icon slots.
|
|
909
|
+
*
|
|
910
|
+
* Provide at least one of `label`, `aria-label`, or `aria-labelledby` for
|
|
911
|
+
* accessibility — a console warning is emitted in development if none are set.
|
|
912
|
+
*
|
|
913
|
+
* @example
|
|
914
|
+
* ```tsx
|
|
915
|
+
* <TextField
|
|
916
|
+
* label="Email"
|
|
917
|
+
* placeholder="you@example.com"
|
|
918
|
+
* error={!!emailError}
|
|
919
|
+
* errorMessage={emailError}
|
|
920
|
+
* />
|
|
921
|
+
* ```
|
|
922
|
+
*/
|
|
571
923
|
export declare const TextField: React_2.ForwardRefExoticComponent<TextFieldProps & React_2.RefAttributes<HTMLInputElement>>;
|
|
572
924
|
|
|
573
925
|
export declare interface TextFieldProps extends Omit<React_2.InputHTMLAttributes<HTMLInputElement>, "size" | "prefix"> {
|
|
574
|
-
/** Label text displayed above the input */
|
|
926
|
+
/** Label text displayed above the input. Also used as the accessible name. */
|
|
575
927
|
label?: string;
|
|
576
|
-
/** Helper text displayed below the input */
|
|
928
|
+
/** Helper text displayed below the input. Replaced by `errorMessage` when `error` is `true`. */
|
|
577
929
|
helperText?: string;
|
|
578
|
-
/**
|
|
930
|
+
/** Height of the text field in pixels. @default "48" */
|
|
579
931
|
size?: TextFieldSize;
|
|
580
|
-
/**
|
|
932
|
+
/** Whether the text field is in an error state. @default false */
|
|
581
933
|
error?: boolean;
|
|
582
|
-
/** Error message displayed below the input.
|
|
934
|
+
/** Error message displayed below the input. Shown instead of `helperText` when `error` is `true`. */
|
|
583
935
|
errorMessage?: string;
|
|
584
|
-
/** Icon displayed
|
|
936
|
+
/** Icon element displayed at the left side of the input. */
|
|
585
937
|
leftIcon?: React_2.ReactNode;
|
|
586
|
-
/** Icon displayed
|
|
938
|
+
/** Icon element displayed at the right side of the input. */
|
|
587
939
|
rightIcon?: React_2.ReactNode;
|
|
588
|
-
/** Whether the text field
|
|
940
|
+
/** Whether the text field stretches to fill its container width. @default false */
|
|
589
941
|
fullWidth?: boolean;
|
|
590
942
|
}
|
|
591
943
|
|
|
944
|
+
/** Text field height in pixels. */
|
|
592
945
|
export declare type TextFieldSize = "48" | "40" | "32";
|
|
593
946
|
|
|
947
|
+
/**
|
|
948
|
+
* A dismissible notification that appears temporarily. Supports `info`,
|
|
949
|
+
* `warning`, `success`, `error`, and `messageToast` variants with optional
|
|
950
|
+
* action button, close control, and avatar.
|
|
951
|
+
*
|
|
952
|
+
* Use inside a {@link ToastProvider} with a {@link ToastViewport}.
|
|
953
|
+
*
|
|
954
|
+
* @example
|
|
955
|
+
* ```tsx
|
|
956
|
+
* <Toast variant="success" title="Saved" description="Your changes are live." />
|
|
957
|
+
* ```
|
|
958
|
+
*/
|
|
594
959
|
export declare const Toast: React_2.ForwardRefExoticComponent<ToastProps & React_2.RefAttributes<HTMLLIElement>>;
|
|
595
960
|
|
|
596
961
|
export declare interface ToastProps extends Omit<Omit<React_2.ComponentPropsWithoutRef<typeof ToastPrimitive.Root>, "type">, "title"> {
|
|
597
|
-
/**
|
|
962
|
+
/** Visual/semantic variant of the toast. @default "info" */
|
|
598
963
|
variant?: ToastVariant;
|
|
599
|
-
/**
|
|
964
|
+
/** Title text displayed in bold at the top of the toast. */
|
|
600
965
|
title?: string;
|
|
601
|
-
/**
|
|
966
|
+
/** Description or body content displayed below the title. */
|
|
602
967
|
description?: React_2.ReactNode;
|
|
603
|
-
/**
|
|
968
|
+
/** Label for the optional action button. @default "Action" */
|
|
604
969
|
actionLabel?: string;
|
|
605
|
-
/**
|
|
970
|
+
/** Click handler for the action button. When provided, the action button is rendered. */
|
|
606
971
|
onActionClick?: () => void;
|
|
607
|
-
/**
|
|
972
|
+
/** Whether to show the close button. @default true */
|
|
608
973
|
showClose?: boolean;
|
|
609
974
|
/** Accessible label for the close button. @default "Close notification" */
|
|
610
975
|
closeLabel?: string;
|
|
611
|
-
/** Avatar image
|
|
976
|
+
/** Avatar image URL (used by the `messageToast` variant). */
|
|
612
977
|
avatarSrc?: string;
|
|
613
|
-
/**
|
|
978
|
+
/** Alt text for the avatar image. */
|
|
614
979
|
avatarAlt?: string;
|
|
615
|
-
/**
|
|
980
|
+
/** Fallback content for the avatar (e.g. initials). */
|
|
616
981
|
avatarFallback?: string;
|
|
617
982
|
}
|
|
618
983
|
|
|
984
|
+
/** Provides toast context. Wrap your application (or a subtree) with this provider. */
|
|
619
985
|
export declare const ToastProvider: React_2.FC<ToastProviderProps>;
|
|
620
986
|
|
|
987
|
+
/** Props for the {@link ToastProvider}. Wraps Radix `Toast.Provider`. */
|
|
621
988
|
export declare interface ToastProviderProps extends ToastPrimitive.ToastProviderProps {
|
|
622
989
|
}
|
|
623
990
|
|
|
991
|
+
/** Visual/semantic variant of the toast notification. */
|
|
624
992
|
export declare type ToastVariant = "info" | "warning" | "success" | "error" | "messageToast";
|
|
625
993
|
|
|
994
|
+
/** Fixed-position container that renders active toasts. Place once at the root of your app. */
|
|
626
995
|
export declare const ToastViewport: React_2.ForwardRefExoticComponent<ToastViewportProps & React_2.RefAttributes<HTMLOListElement>>;
|
|
627
996
|
|
|
997
|
+
/** Props for the {@link ToastViewport}. Controls where toasts are rendered on screen. */
|
|
628
998
|
export declare interface ToastViewportProps extends React_2.ComponentPropsWithoutRef<typeof ToastPrimitive.Viewport> {
|
|
629
999
|
}
|
|
630
1000
|
|
|
1001
|
+
/** Root component that manages open/close state for a single tooltip. */
|
|
631
1002
|
export declare const Tooltip: React_2.FC<TooltipPrimitive.TooltipProps>;
|
|
632
1003
|
|
|
1004
|
+
/** The popup content of the tooltip. Renders inside a portal. */
|
|
633
1005
|
export declare const TooltipContent: React_2.ForwardRefExoticComponent<TooltipContentProps & React_2.RefAttributes<HTMLDivElement>>;
|
|
634
1006
|
|
|
635
1007
|
export declare interface TooltipContentProps extends React_2.ComponentPropsWithoutRef<typeof TooltipPrimitive.Content> {
|
|
636
|
-
/** Whether to show the arrow pointer */
|
|
1008
|
+
/** Whether to show the arrow pointer. @default true */
|
|
637
1009
|
showArrow?: boolean;
|
|
638
1010
|
}
|
|
639
1011
|
|
|
1012
|
+
/** Props for the {@link Tooltip} root component. */
|
|
640
1013
|
export declare type TooltipProps = React_2.ComponentPropsWithoutRef<typeof TooltipPrimitive.Root>;
|
|
641
1014
|
|
|
1015
|
+
/** Provides tooltip delay and skip-delay context. Wrap your app or a subtree. */
|
|
642
1016
|
export declare const TooltipProvider: React_2.FC<TooltipPrimitive.TooltipProviderProps>;
|
|
643
1017
|
|
|
1018
|
+
/** Props for the {@link TooltipProvider}. Wraps Radix `Tooltip.Provider`. */
|
|
644
1019
|
export declare type TooltipProviderProps = React_2.ComponentPropsWithoutRef<typeof TooltipPrimitive.Provider>;
|
|
645
1020
|
|
|
1021
|
+
/** The element that triggers the tooltip on hover/focus. */
|
|
646
1022
|
export declare const TooltipTrigger: React_2.ForwardRefExoticComponent<TooltipPrimitive.TooltipTriggerProps & React_2.RefAttributes<HTMLButtonElement>>;
|
|
647
1023
|
|
|
1024
|
+
/** Props for the {@link TooltipTrigger} component. */
|
|
648
1025
|
export declare type TooltipTriggerProps = React_2.ComponentPropsWithoutRef<typeof TooltipPrimitive.Trigger>;
|
|
649
1026
|
|
|
650
1027
|
/** VIP badge icon with metallic gradient background and crown symbol */
|
|
@@ -652,10 +1029,12 @@ export declare const VipBadgeIcon: React_2.ForwardRefExoticComponent<React_2.SVG
|
|
|
652
1029
|
className?: string;
|
|
653
1030
|
} & React_2.RefAttributes<SVGSVGElement>>;
|
|
654
1031
|
|
|
1032
|
+
/** A filled warning icon with exclamation mark (20 × 20). */
|
|
655
1033
|
export declare const WarningIcon: default_2.ForwardRefExoticComponent<default_2.SVGAttributes<SVGSVGElement> & {
|
|
656
1034
|
className?: string;
|
|
657
1035
|
} & default_2.RefAttributes<SVGSVGElement>>;
|
|
658
1036
|
|
|
1037
|
+
/** A filled warning-triangle icon with exclamation mark (20 × 20). */
|
|
659
1038
|
export declare const WarningTriangleIcon: React_2.ForwardRefExoticComponent<React_2.SVGAttributes<SVGSVGElement> & {
|
|
660
1039
|
className?: string;
|
|
661
1040
|
} & React_2.RefAttributes<SVGSVGElement>>;
|