@rdna/radiants 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +674 -0
- package/README.md +125 -0
- package/animations.css +68 -0
- package/assets/scrollbar-background.svg +9 -0
- package/base.css +144 -0
- package/dark.css +117 -0
- package/dist/chunk-SR2T7OEJ.mjs +46 -0
- package/dist/chunk-SR2T7OEJ.mjs.map +1 -0
- package/dist/components/core/index.d.mts +911 -0
- package/dist/components/core/index.mjs +2475 -0
- package/dist/components/core/index.mjs.map +1 -0
- package/dist/hooks/index.d.mts +22 -0
- package/dist/hooks/index.mjs +3 -0
- package/dist/hooks/index.mjs.map +1 -0
- package/dist/remotion/index.d.mts +252 -0
- package/dist/remotion/index.mjs +170 -0
- package/dist/remotion/index.mjs.map +1 -0
- package/dna.config.json +8 -0
- package/fonts/Joystix.woff2 +0 -0
- package/fonts/PixelCode-Black-Italic.woff2 +0 -0
- package/fonts/PixelCode-Black.woff2 +0 -0
- package/fonts/PixelCode-Bold-Italic.woff2 +0 -0
- package/fonts/PixelCode-Bold.woff2 +0 -0
- package/fonts/PixelCode-DemiBold-Italic.woff2 +0 -0
- package/fonts/PixelCode-DemiBold.woff2 +0 -0
- package/fonts/PixelCode-ExtraBlack-Italic.woff2 +0 -0
- package/fonts/PixelCode-ExtraBlack.woff2 +0 -0
- package/fonts/PixelCode-ExtraBold-Italic.woff2 +0 -0
- package/fonts/PixelCode-ExtraBold.woff2 +0 -0
- package/fonts/PixelCode-ExtraLight-Italic.woff2 +0 -0
- package/fonts/PixelCode-ExtraLight.woff2 +0 -0
- package/fonts/PixelCode-Italic.woff2 +0 -0
- package/fonts/PixelCode-Light-Italic.woff2 +0 -0
- package/fonts/PixelCode-Light.woff2 +0 -0
- package/fonts/PixelCode-Medium-Italic.woff2 +0 -0
- package/fonts/PixelCode-Medium.woff2 +0 -0
- package/fonts/PixelCode-Thin-Italic.woff2 +0 -0
- package/fonts/PixelCode-Thin.woff2 +0 -0
- package/fonts/PixelCode.woff2 +0 -0
- package/fonts.css +115 -0
- package/index.css +25 -0
- package/package.json +88 -0
- package/tokens.css +202 -0
- package/typography.css +175 -0
|
@@ -0,0 +1,911 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
|
|
4
|
+
type AccordionType = 'single' | 'multiple';
|
|
5
|
+
interface AccordionProps {
|
|
6
|
+
/** Allow single or multiple items to be expanded at once */
|
|
7
|
+
type?: AccordionType;
|
|
8
|
+
/** Default expanded item(s) - string for single, array for multiple */
|
|
9
|
+
defaultValue?: string | string[];
|
|
10
|
+
/** Controlled expanded value(s) */
|
|
11
|
+
value?: string | string[];
|
|
12
|
+
/** Callback when expanded items change */
|
|
13
|
+
onValueChange?: (value: string | string[]) => void;
|
|
14
|
+
/** Additional className */
|
|
15
|
+
className?: string;
|
|
16
|
+
/** Children */
|
|
17
|
+
children: React.ReactNode;
|
|
18
|
+
}
|
|
19
|
+
declare function Accordion({ type, defaultValue, value: controlledValue, onValueChange, className, children, }: AccordionProps): react_jsx_runtime.JSX.Element;
|
|
20
|
+
interface AccordionItemProps {
|
|
21
|
+
/** Unique value for this item */
|
|
22
|
+
value: string;
|
|
23
|
+
/** Additional className */
|
|
24
|
+
className?: string;
|
|
25
|
+
/** Children (AccordionTrigger and AccordionContent) */
|
|
26
|
+
children: React.ReactNode;
|
|
27
|
+
}
|
|
28
|
+
declare function AccordionItem({ value, className, children }: AccordionItemProps): react_jsx_runtime.JSX.Element;
|
|
29
|
+
interface AccordionTriggerProps {
|
|
30
|
+
/** Additional className */
|
|
31
|
+
className?: string;
|
|
32
|
+
/** Children (header content) */
|
|
33
|
+
children: React.ReactNode;
|
|
34
|
+
}
|
|
35
|
+
declare function AccordionTrigger({ className, children }: AccordionTriggerProps): react_jsx_runtime.JSX.Element;
|
|
36
|
+
interface AccordionContentProps {
|
|
37
|
+
/** Additional className */
|
|
38
|
+
className?: string;
|
|
39
|
+
/** Children (content) */
|
|
40
|
+
children: React.ReactNode;
|
|
41
|
+
}
|
|
42
|
+
declare function AccordionContent({ className, children }: AccordionContentProps): react_jsx_runtime.JSX.Element;
|
|
43
|
+
|
|
44
|
+
type AlertVariant = 'default' | 'success' | 'warning' | 'error' | 'info';
|
|
45
|
+
interface AlertProps {
|
|
46
|
+
/** Alert variant */
|
|
47
|
+
variant?: AlertVariant;
|
|
48
|
+
/** Alert title */
|
|
49
|
+
title?: string;
|
|
50
|
+
/** Alert content */
|
|
51
|
+
children: React.ReactNode;
|
|
52
|
+
/** Show close button */
|
|
53
|
+
closable?: boolean;
|
|
54
|
+
/** Close handler */
|
|
55
|
+
onClose?: () => void;
|
|
56
|
+
/** Icon slot - renders before content */
|
|
57
|
+
icon?: React.ReactNode;
|
|
58
|
+
/** Close icon slot - renders for close button */
|
|
59
|
+
closeIcon?: React.ReactNode;
|
|
60
|
+
/** Additional className */
|
|
61
|
+
className?: string;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Alert component - Static alert banners
|
|
65
|
+
*
|
|
66
|
+
* Uses slot-based API for icons to avoid coupling to specific icon systems.
|
|
67
|
+
* Pass your own icon components via the `icon` and `closeIcon` props.
|
|
68
|
+
*/
|
|
69
|
+
declare function Alert({ variant, title, children, closable, onClose, icon, closeIcon, className, }: AlertProps): react_jsx_runtime.JSX.Element;
|
|
70
|
+
|
|
71
|
+
type BadgeVariant = 'default' | 'success' | 'warning' | 'error' | 'info';
|
|
72
|
+
type BadgeSize = 'sm' | 'md';
|
|
73
|
+
interface BadgeProps {
|
|
74
|
+
/** Visual variant */
|
|
75
|
+
variant?: BadgeVariant;
|
|
76
|
+
/** Size preset */
|
|
77
|
+
size?: BadgeSize;
|
|
78
|
+
/** Badge content */
|
|
79
|
+
children: React.ReactNode;
|
|
80
|
+
/** Additional classes */
|
|
81
|
+
className?: string;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Badge component for status indicators and labels
|
|
85
|
+
*/
|
|
86
|
+
declare function Badge({ variant, size, children, className, }: BadgeProps): react_jsx_runtime.JSX.Element;
|
|
87
|
+
|
|
88
|
+
interface BreadcrumbItem {
|
|
89
|
+
/** Display label */
|
|
90
|
+
label: string;
|
|
91
|
+
/** Navigation href (optional for current/last item) */
|
|
92
|
+
href?: string;
|
|
93
|
+
}
|
|
94
|
+
interface BreadcrumbsProps {
|
|
95
|
+
/** Breadcrumb items */
|
|
96
|
+
items: BreadcrumbItem[];
|
|
97
|
+
/** Separator character */
|
|
98
|
+
separator?: string;
|
|
99
|
+
/** Additional className */
|
|
100
|
+
className?: string;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Breadcrumbs component - Navigation hierarchy
|
|
104
|
+
*/
|
|
105
|
+
declare function Breadcrumbs({ items, separator, className, }: BreadcrumbsProps): react_jsx_runtime.JSX.Element | null;
|
|
106
|
+
|
|
107
|
+
type ButtonVariant = 'primary' | 'secondary' | 'outline' | 'ghost';
|
|
108
|
+
type ButtonSize = 'sm' | 'md' | 'lg';
|
|
109
|
+
interface BaseButtonProps {
|
|
110
|
+
/** Visual variant */
|
|
111
|
+
variant?: ButtonVariant;
|
|
112
|
+
/** Size preset */
|
|
113
|
+
size?: ButtonSize;
|
|
114
|
+
/** Expand to fill container width */
|
|
115
|
+
fullWidth?: boolean;
|
|
116
|
+
/** Square button with icon only (no text) */
|
|
117
|
+
iconOnly?: boolean;
|
|
118
|
+
/** Show loading state */
|
|
119
|
+
loading?: boolean;
|
|
120
|
+
/** Button content (optional when iconOnly is true) */
|
|
121
|
+
children?: React.ReactNode;
|
|
122
|
+
/** Additional className */
|
|
123
|
+
className?: string;
|
|
124
|
+
/** Icon slot - render your icon component here */
|
|
125
|
+
icon?: React.ReactNode;
|
|
126
|
+
/** Loading indicator slot - render your spinner here */
|
|
127
|
+
loadingIndicator?: React.ReactNode;
|
|
128
|
+
}
|
|
129
|
+
interface ButtonAsButtonProps extends BaseButtonProps, Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, keyof BaseButtonProps> {
|
|
130
|
+
/** URL for navigation - when provided, button can act as a link */
|
|
131
|
+
href?: undefined;
|
|
132
|
+
}
|
|
133
|
+
interface ButtonAsLinkProps extends BaseButtonProps, Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, keyof BaseButtonProps> {
|
|
134
|
+
/** URL for navigation - renders as anchor element */
|
|
135
|
+
href: string;
|
|
136
|
+
/** Whether to render as anchor (true) or use window.open (false) */
|
|
137
|
+
asLink?: boolean;
|
|
138
|
+
/** Target for link navigation (e.g., '_blank') */
|
|
139
|
+
target?: string;
|
|
140
|
+
}
|
|
141
|
+
type ButtonProps = ButtonAsButtonProps | ButtonAsLinkProps;
|
|
142
|
+
/**
|
|
143
|
+
* Button component with retro lift effect
|
|
144
|
+
*
|
|
145
|
+
* Supports both button and link behaviors:
|
|
146
|
+
* - Without href: renders as <button>
|
|
147
|
+
* - With href + asLink=true (default): renders as <a>
|
|
148
|
+
* - With href + asLink=false: renders as <button> that opens URL via window.open
|
|
149
|
+
*
|
|
150
|
+
* Icon and loading indicator are provided via slots:
|
|
151
|
+
* - icon: Pass your icon component (renders on the right)
|
|
152
|
+
* - loadingIndicator: Pass your spinner component (replaces icon when loading)
|
|
153
|
+
*/
|
|
154
|
+
declare function Button(props: ButtonProps): react_jsx_runtime.JSX.Element;
|
|
155
|
+
|
|
156
|
+
type CardVariant = 'default' | 'dark' | 'raised';
|
|
157
|
+
interface CardProps {
|
|
158
|
+
/** Visual variant */
|
|
159
|
+
variant?: CardVariant;
|
|
160
|
+
/** Card content */
|
|
161
|
+
children: React.ReactNode;
|
|
162
|
+
/** Additional classes */
|
|
163
|
+
className?: string;
|
|
164
|
+
/** Optional padding override */
|
|
165
|
+
noPadding?: boolean;
|
|
166
|
+
}
|
|
167
|
+
interface CardHeaderProps {
|
|
168
|
+
children: React.ReactNode;
|
|
169
|
+
className?: string;
|
|
170
|
+
}
|
|
171
|
+
interface CardBodyProps {
|
|
172
|
+
children: React.ReactNode;
|
|
173
|
+
className?: string;
|
|
174
|
+
}
|
|
175
|
+
interface CardFooterProps {
|
|
176
|
+
children: React.ReactNode;
|
|
177
|
+
className?: string;
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Card container component with consistent styling
|
|
181
|
+
*/
|
|
182
|
+
declare function Card({ variant, children, className, noPadding, }: CardProps): react_jsx_runtime.JSX.Element;
|
|
183
|
+
/**
|
|
184
|
+
* Card header with bottom border
|
|
185
|
+
*/
|
|
186
|
+
declare function CardHeader({ children, className }: CardHeaderProps): react_jsx_runtime.JSX.Element;
|
|
187
|
+
/**
|
|
188
|
+
* Card body with standard padding
|
|
189
|
+
*/
|
|
190
|
+
declare function CardBody({ children, className }: CardBodyProps): react_jsx_runtime.JSX.Element;
|
|
191
|
+
/**
|
|
192
|
+
* Card footer with top border
|
|
193
|
+
*/
|
|
194
|
+
declare function CardFooter({ children, className }: CardFooterProps): react_jsx_runtime.JSX.Element;
|
|
195
|
+
|
|
196
|
+
interface CheckboxProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type'> {
|
|
197
|
+
/** Label text */
|
|
198
|
+
label?: string;
|
|
199
|
+
/** Additional classes for container */
|
|
200
|
+
className?: string;
|
|
201
|
+
}
|
|
202
|
+
interface RadioProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type'> {
|
|
203
|
+
/** Label text */
|
|
204
|
+
label?: string;
|
|
205
|
+
/** Additional classes for container */
|
|
206
|
+
className?: string;
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Retro-styled checkbox
|
|
210
|
+
*/
|
|
211
|
+
declare const Checkbox: React.ForwardRefExoticComponent<CheckboxProps & React.RefAttributes<HTMLInputElement>>;
|
|
212
|
+
/**
|
|
213
|
+
* Retro-styled radio button
|
|
214
|
+
*/
|
|
215
|
+
declare const Radio: React.ForwardRefExoticComponent<RadioProps & React.RefAttributes<HTMLInputElement>>;
|
|
216
|
+
|
|
217
|
+
interface ContextMenuProps {
|
|
218
|
+
/** Content that triggers context menu on right-click */
|
|
219
|
+
children: React.ReactNode;
|
|
220
|
+
/** Additional classes for trigger container */
|
|
221
|
+
className?: string;
|
|
222
|
+
}
|
|
223
|
+
interface ContextMenuContentProps {
|
|
224
|
+
/** Menu items */
|
|
225
|
+
children: React.ReactNode;
|
|
226
|
+
/** Additional classes */
|
|
227
|
+
className?: string;
|
|
228
|
+
}
|
|
229
|
+
interface ContextMenuItemProps {
|
|
230
|
+
/** Click handler */
|
|
231
|
+
onClick?: () => void;
|
|
232
|
+
/** Disabled state */
|
|
233
|
+
disabled?: boolean;
|
|
234
|
+
/** Destructive action (red text) */
|
|
235
|
+
destructive?: boolean;
|
|
236
|
+
/** Icon element to display before the label */
|
|
237
|
+
icon?: React.ReactNode;
|
|
238
|
+
/** Menu item content */
|
|
239
|
+
children: React.ReactNode;
|
|
240
|
+
/** Additional classes */
|
|
241
|
+
className?: string;
|
|
242
|
+
}
|
|
243
|
+
interface ContextMenuSeparatorProps {
|
|
244
|
+
className?: string;
|
|
245
|
+
}
|
|
246
|
+
/**
|
|
247
|
+
* Context menu container - wraps content that should have right-click menu
|
|
248
|
+
*/
|
|
249
|
+
declare function ContextMenu({ children, className }: ContextMenuProps): react_jsx_runtime.JSX.Element;
|
|
250
|
+
/**
|
|
251
|
+
* Context menu dropdown content
|
|
252
|
+
*/
|
|
253
|
+
declare function ContextMenuContent({ children, className }: ContextMenuContentProps): react_jsx_runtime.JSX.Element | null;
|
|
254
|
+
/**
|
|
255
|
+
* Context menu item
|
|
256
|
+
*/
|
|
257
|
+
declare function ContextMenuItem({ onClick, disabled, destructive, icon, children, className, }: ContextMenuItemProps): react_jsx_runtime.JSX.Element;
|
|
258
|
+
/**
|
|
259
|
+
* Context menu separator line
|
|
260
|
+
*/
|
|
261
|
+
declare function ContextMenuSeparator({ className }: ContextMenuSeparatorProps): react_jsx_runtime.JSX.Element;
|
|
262
|
+
|
|
263
|
+
type DividerOrientation = 'horizontal' | 'vertical';
|
|
264
|
+
type DividerVariant = 'solid' | 'dashed' | 'decorated';
|
|
265
|
+
interface DividerProps {
|
|
266
|
+
/** Orientation */
|
|
267
|
+
orientation?: DividerOrientation;
|
|
268
|
+
/** Visual variant */
|
|
269
|
+
variant?: DividerVariant;
|
|
270
|
+
/** Additional classes */
|
|
271
|
+
className?: string;
|
|
272
|
+
}
|
|
273
|
+
/**
|
|
274
|
+
* Divider component for separating content
|
|
275
|
+
*/
|
|
276
|
+
declare function Divider({ orientation, variant, className, }: DividerProps): react_jsx_runtime.JSX.Element;
|
|
277
|
+
|
|
278
|
+
type DropdownPosition = 'bottom-start' | 'bottom-end' | 'top-start' | 'top-end';
|
|
279
|
+
interface DropdownMenuProps {
|
|
280
|
+
/** Controlled open state */
|
|
281
|
+
open?: boolean;
|
|
282
|
+
/** Default open state */
|
|
283
|
+
defaultOpen?: boolean;
|
|
284
|
+
/** Callback when open state changes */
|
|
285
|
+
onOpenChange?: (open: boolean) => void;
|
|
286
|
+
/** Position relative to trigger */
|
|
287
|
+
position?: DropdownPosition;
|
|
288
|
+
/** Children */
|
|
289
|
+
children: React.ReactNode;
|
|
290
|
+
}
|
|
291
|
+
declare function DropdownMenu({ open: controlledOpen, defaultOpen, onOpenChange, position, children, }: DropdownMenuProps): react_jsx_runtime.JSX.Element;
|
|
292
|
+
interface DropdownMenuTriggerProps {
|
|
293
|
+
/** Trigger element */
|
|
294
|
+
children: React.ReactElement;
|
|
295
|
+
/** Pass through as child instead of wrapping */
|
|
296
|
+
asChild?: boolean;
|
|
297
|
+
}
|
|
298
|
+
declare function DropdownMenuTrigger({ children, asChild }: DropdownMenuTriggerProps): react_jsx_runtime.JSX.Element;
|
|
299
|
+
interface DropdownMenuContentProps {
|
|
300
|
+
/** Additional className */
|
|
301
|
+
className?: string;
|
|
302
|
+
/** Children */
|
|
303
|
+
children: React.ReactNode;
|
|
304
|
+
}
|
|
305
|
+
declare function DropdownMenuContent({ className, children }: DropdownMenuContentProps): React.ReactPortal | null;
|
|
306
|
+
interface DropdownMenuItemProps {
|
|
307
|
+
/** Item content */
|
|
308
|
+
children: React.ReactNode;
|
|
309
|
+
/** Click handler */
|
|
310
|
+
onClick?: () => void;
|
|
311
|
+
/** Disabled state */
|
|
312
|
+
disabled?: boolean;
|
|
313
|
+
/** Destructive styling */
|
|
314
|
+
destructive?: boolean;
|
|
315
|
+
/** Additional className */
|
|
316
|
+
className?: string;
|
|
317
|
+
}
|
|
318
|
+
declare function DropdownMenuItem({ children, onClick, disabled, destructive, className, }: DropdownMenuItemProps): react_jsx_runtime.JSX.Element;
|
|
319
|
+
interface DropdownMenuSeparatorProps {
|
|
320
|
+
/** Additional className */
|
|
321
|
+
className?: string;
|
|
322
|
+
}
|
|
323
|
+
declare function DropdownMenuSeparator({ className }: DropdownMenuSeparatorProps): react_jsx_runtime.JSX.Element;
|
|
324
|
+
interface DropdownMenuLabelProps {
|
|
325
|
+
/** Label content */
|
|
326
|
+
children: React.ReactNode;
|
|
327
|
+
/** Additional className */
|
|
328
|
+
className?: string;
|
|
329
|
+
}
|
|
330
|
+
declare function DropdownMenuLabel({ children, className }: DropdownMenuLabelProps): react_jsx_runtime.JSX.Element;
|
|
331
|
+
|
|
332
|
+
type InputSize = 'sm' | 'md' | 'lg';
|
|
333
|
+
interface InputProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'size'> {
|
|
334
|
+
/** Size preset */
|
|
335
|
+
size?: InputSize;
|
|
336
|
+
/** Error state */
|
|
337
|
+
error?: boolean;
|
|
338
|
+
/** Full width */
|
|
339
|
+
fullWidth?: boolean;
|
|
340
|
+
/** Icon name (filename without .svg extension) - displays on the left */
|
|
341
|
+
iconName?: string;
|
|
342
|
+
/** Additional classes */
|
|
343
|
+
className?: string;
|
|
344
|
+
}
|
|
345
|
+
interface TextAreaProps extends React.TextareaHTMLAttributes<HTMLTextAreaElement> {
|
|
346
|
+
/** Error state */
|
|
347
|
+
error?: boolean;
|
|
348
|
+
/** Full width */
|
|
349
|
+
fullWidth?: boolean;
|
|
350
|
+
/** Additional classes */
|
|
351
|
+
className?: string;
|
|
352
|
+
}
|
|
353
|
+
interface LabelProps extends React.LabelHTMLAttributes<HTMLLabelElement> {
|
|
354
|
+
children: React.ReactNode;
|
|
355
|
+
required?: boolean;
|
|
356
|
+
className?: string;
|
|
357
|
+
}
|
|
358
|
+
/**
|
|
359
|
+
* Text input with semantic token styling
|
|
360
|
+
*/
|
|
361
|
+
declare const Input: React.ForwardRefExoticComponent<InputProps & React.RefAttributes<HTMLInputElement>>;
|
|
362
|
+
/**
|
|
363
|
+
* Textarea with semantic token styling
|
|
364
|
+
*/
|
|
365
|
+
declare const TextArea: React.ForwardRefExoticComponent<TextAreaProps & React.RefAttributes<HTMLTextAreaElement>>;
|
|
366
|
+
/**
|
|
367
|
+
* Form label with optional required indicator
|
|
368
|
+
*/
|
|
369
|
+
declare function Label({ children, required, className, ...props }: LabelProps): react_jsx_runtime.JSX.Element;
|
|
370
|
+
|
|
371
|
+
type ProgressVariant = 'default' | 'success' | 'warning' | 'error';
|
|
372
|
+
type ProgressSize = 'sm' | 'md' | 'lg';
|
|
373
|
+
interface ProgressProps {
|
|
374
|
+
/** Progress value (0-100) */
|
|
375
|
+
value: number;
|
|
376
|
+
/** Maximum value */
|
|
377
|
+
max?: number;
|
|
378
|
+
/** Visual variant */
|
|
379
|
+
variant?: ProgressVariant;
|
|
380
|
+
/** Size preset */
|
|
381
|
+
size?: ProgressSize;
|
|
382
|
+
/** Show percentage label */
|
|
383
|
+
showLabel?: boolean;
|
|
384
|
+
/** Additional classes */
|
|
385
|
+
className?: string;
|
|
386
|
+
}
|
|
387
|
+
/**
|
|
388
|
+
* Progress bar with retro styling
|
|
389
|
+
*/
|
|
390
|
+
declare function Progress({ value, max, variant, size, showLabel, className, }: ProgressProps): react_jsx_runtime.JSX.Element;
|
|
391
|
+
interface SpinnerProps {
|
|
392
|
+
/** Size in pixels */
|
|
393
|
+
size?: number;
|
|
394
|
+
/** Additional classes */
|
|
395
|
+
className?: string;
|
|
396
|
+
/** Whether loading is completed - shows checkmark */
|
|
397
|
+
completed?: boolean;
|
|
398
|
+
}
|
|
399
|
+
/**
|
|
400
|
+
* PixelCode loader with animated frames that loop through 6 frames
|
|
401
|
+
* When completed, displays a checkmark (checkmark)
|
|
402
|
+
*/
|
|
403
|
+
declare function Spinner({ size, className, completed }: SpinnerProps): react_jsx_runtime.JSX.Element;
|
|
404
|
+
|
|
405
|
+
interface SelectOption {
|
|
406
|
+
value: string;
|
|
407
|
+
label: string;
|
|
408
|
+
disabled?: boolean;
|
|
409
|
+
}
|
|
410
|
+
interface SelectProps {
|
|
411
|
+
/** Available options */
|
|
412
|
+
options: SelectOption[];
|
|
413
|
+
/** Currently selected value */
|
|
414
|
+
value?: string;
|
|
415
|
+
/** Placeholder text when no value selected */
|
|
416
|
+
placeholder?: string;
|
|
417
|
+
/** Change handler */
|
|
418
|
+
onChange?: (value: string) => void;
|
|
419
|
+
/** Disabled state */
|
|
420
|
+
disabled?: boolean;
|
|
421
|
+
/** Error state */
|
|
422
|
+
error?: boolean;
|
|
423
|
+
/** Full width */
|
|
424
|
+
fullWidth?: boolean;
|
|
425
|
+
/** Additional classes */
|
|
426
|
+
className?: string;
|
|
427
|
+
}
|
|
428
|
+
/**
|
|
429
|
+
* Custom select/dropdown with retro styling
|
|
430
|
+
*/
|
|
431
|
+
declare function Select({ options, value, placeholder, onChange, disabled, error, fullWidth, className, }: SelectProps): react_jsx_runtime.JSX.Element;
|
|
432
|
+
|
|
433
|
+
type SliderSize = 'sm' | 'md' | 'lg';
|
|
434
|
+
interface SliderProps {
|
|
435
|
+
/** Current value */
|
|
436
|
+
value: number;
|
|
437
|
+
/** Change handler */
|
|
438
|
+
onChange: (value: number) => void;
|
|
439
|
+
/** Minimum value */
|
|
440
|
+
min?: number;
|
|
441
|
+
/** Maximum value */
|
|
442
|
+
max?: number;
|
|
443
|
+
/** Step increment */
|
|
444
|
+
step?: number;
|
|
445
|
+
/** Size preset */
|
|
446
|
+
size?: SliderSize;
|
|
447
|
+
/** Disabled state */
|
|
448
|
+
disabled?: boolean;
|
|
449
|
+
/** Show value label */
|
|
450
|
+
showValue?: boolean;
|
|
451
|
+
/** Label text */
|
|
452
|
+
label?: string;
|
|
453
|
+
/** Additional className */
|
|
454
|
+
className?: string;
|
|
455
|
+
}
|
|
456
|
+
/**
|
|
457
|
+
* Slider component - Numeric range input
|
|
458
|
+
*/
|
|
459
|
+
declare function Slider({ value, onChange, min, max, step, size, disabled, showValue, label, className, }: SliderProps): react_jsx_runtime.JSX.Element;
|
|
460
|
+
|
|
461
|
+
type SwitchSize = 'sm' | 'md' | 'lg';
|
|
462
|
+
interface SwitchProps {
|
|
463
|
+
/** Checked state */
|
|
464
|
+
checked: boolean;
|
|
465
|
+
/** Change handler */
|
|
466
|
+
onChange: (checked: boolean) => void;
|
|
467
|
+
/** Size preset */
|
|
468
|
+
size?: SwitchSize;
|
|
469
|
+
/** Disabled state */
|
|
470
|
+
disabled?: boolean;
|
|
471
|
+
/** Label text */
|
|
472
|
+
label?: string;
|
|
473
|
+
/** Label position */
|
|
474
|
+
labelPosition?: 'left' | 'right';
|
|
475
|
+
/** Additional className */
|
|
476
|
+
className?: string;
|
|
477
|
+
/** ID for accessibility */
|
|
478
|
+
id?: string;
|
|
479
|
+
}
|
|
480
|
+
/**
|
|
481
|
+
* Switch component - On/off toggle
|
|
482
|
+
*/
|
|
483
|
+
declare function Switch({ checked, onChange, size, disabled, label, labelPosition, className, id, }: SwitchProps): react_jsx_runtime.JSX.Element;
|
|
484
|
+
|
|
485
|
+
type TabsVariant = 'pill' | 'line';
|
|
486
|
+
type TabsLayout = 'default' | 'bottom-tabs';
|
|
487
|
+
interface TabsProps {
|
|
488
|
+
/** Default active tab ID (uncontrolled mode) */
|
|
489
|
+
defaultValue?: string;
|
|
490
|
+
/** Active tab ID (controlled mode) */
|
|
491
|
+
value?: string;
|
|
492
|
+
/** Callback when tab changes (controlled mode) */
|
|
493
|
+
onValueChange?: (value: string) => void;
|
|
494
|
+
/** Visual variant */
|
|
495
|
+
variant?: TabsVariant;
|
|
496
|
+
/** Layout pattern - 'bottom-tabs' (default) for fixed bottom tabs, 'default' for top tabs */
|
|
497
|
+
layout?: TabsLayout;
|
|
498
|
+
/** Tab components */
|
|
499
|
+
children: React.ReactNode;
|
|
500
|
+
/** Additional classes for container */
|
|
501
|
+
className?: string;
|
|
502
|
+
}
|
|
503
|
+
interface TabListProps {
|
|
504
|
+
/** TabTrigger components */
|
|
505
|
+
children: React.ReactNode;
|
|
506
|
+
/** Additional classes */
|
|
507
|
+
className?: string;
|
|
508
|
+
}
|
|
509
|
+
interface TabTriggerProps {
|
|
510
|
+
/** Unique tab ID */
|
|
511
|
+
value: string;
|
|
512
|
+
/** Tab label */
|
|
513
|
+
children: React.ReactNode;
|
|
514
|
+
/** Icon as React element (slot pattern for theme components) */
|
|
515
|
+
icon?: React.ReactNode;
|
|
516
|
+
/** Additional classes */
|
|
517
|
+
className?: string;
|
|
518
|
+
}
|
|
519
|
+
interface TabContentProps {
|
|
520
|
+
/** Tab ID this content belongs to */
|
|
521
|
+
value: string;
|
|
522
|
+
/** Content to render when active */
|
|
523
|
+
children: React.ReactNode;
|
|
524
|
+
/** Additional classes */
|
|
525
|
+
className?: string;
|
|
526
|
+
}
|
|
527
|
+
/**
|
|
528
|
+
* Tabs container - provides context for tab state
|
|
529
|
+
* Supports both controlled and uncontrolled modes
|
|
530
|
+
*/
|
|
531
|
+
declare function Tabs({ defaultValue, value, onValueChange, variant, layout, children, className, }: TabsProps): react_jsx_runtime.JSX.Element;
|
|
532
|
+
/**
|
|
533
|
+
* Container for tab triggers - matching PrimaryNavigationFooter styles
|
|
534
|
+
*/
|
|
535
|
+
declare function TabList({ children, className }: TabListProps): react_jsx_runtime.JSX.Element;
|
|
536
|
+
/**
|
|
537
|
+
* Individual tab trigger button - Webflow-style
|
|
538
|
+
*/
|
|
539
|
+
declare function TabTrigger({ value, children, icon, className, }: TabTriggerProps): react_jsx_runtime.JSX.Element;
|
|
540
|
+
/**
|
|
541
|
+
* Tab content panel - Webflow-style tab pane
|
|
542
|
+
*/
|
|
543
|
+
declare function TabContent({ value, children, className, }: TabContentProps): react_jsx_runtime.JSX.Element | null;
|
|
544
|
+
|
|
545
|
+
type TooltipPosition = 'top' | 'bottom' | 'left' | 'right';
|
|
546
|
+
type TooltipSize = 'sm' | 'md' | 'lg';
|
|
547
|
+
interface TooltipProps {
|
|
548
|
+
/** Tooltip content */
|
|
549
|
+
content: React.ReactNode;
|
|
550
|
+
/** Position relative to trigger */
|
|
551
|
+
position?: TooltipPosition;
|
|
552
|
+
/** Delay before showing (ms) - set to 0 for instant */
|
|
553
|
+
delay?: number;
|
|
554
|
+
/** Size preset - matches Button sizes (sm=12px, md=12px, lg=14px) */
|
|
555
|
+
size?: TooltipSize;
|
|
556
|
+
/** Trigger element */
|
|
557
|
+
children: React.ReactNode;
|
|
558
|
+
/** Additional classes */
|
|
559
|
+
className?: string;
|
|
560
|
+
}
|
|
561
|
+
/**
|
|
562
|
+
* Tooltip component for hover information
|
|
563
|
+
*/
|
|
564
|
+
declare function Tooltip({ content, position, delay, size, children, className, }: TooltipProps): react_jsx_runtime.JSX.Element;
|
|
565
|
+
|
|
566
|
+
type ToastVariant = 'default' | 'success' | 'warning' | 'error' | 'info';
|
|
567
|
+
interface ToastData {
|
|
568
|
+
id: string;
|
|
569
|
+
title: string;
|
|
570
|
+
description?: string;
|
|
571
|
+
variant?: ToastVariant;
|
|
572
|
+
duration?: number;
|
|
573
|
+
/** Custom icon element - overrides variant default */
|
|
574
|
+
icon?: React.ReactNode;
|
|
575
|
+
}
|
|
576
|
+
interface ToastContextValue {
|
|
577
|
+
toasts: ToastData[];
|
|
578
|
+
addToast: (toast: Omit<ToastData, 'id'>) => string;
|
|
579
|
+
removeToast: (id: string) => void;
|
|
580
|
+
}
|
|
581
|
+
declare function useToast(): ToastContextValue;
|
|
582
|
+
interface ToastProviderProps {
|
|
583
|
+
/** Children */
|
|
584
|
+
children: React.ReactNode;
|
|
585
|
+
/** Default duration in ms */
|
|
586
|
+
defaultDuration?: number;
|
|
587
|
+
/** Optional render function for variant icons */
|
|
588
|
+
renderIcon?: (variant: ToastVariant) => React.ReactNode;
|
|
589
|
+
/** Optional render function for close icon */
|
|
590
|
+
renderCloseIcon?: () => React.ReactNode;
|
|
591
|
+
}
|
|
592
|
+
declare function ToastProvider({ children, defaultDuration, renderIcon, renderCloseIcon, }: ToastProviderProps): react_jsx_runtime.JSX.Element;
|
|
593
|
+
|
|
594
|
+
interface HelpPanelProps {
|
|
595
|
+
/** Whether the panel is open */
|
|
596
|
+
isOpen: boolean;
|
|
597
|
+
/** Callback when panel should close */
|
|
598
|
+
onClose: () => void;
|
|
599
|
+
/** Help content to display */
|
|
600
|
+
children: React.ReactNode;
|
|
601
|
+
/** Optional title for the help panel */
|
|
602
|
+
title?: string;
|
|
603
|
+
/** Close button slot - renders your own close button/icon */
|
|
604
|
+
closeButton?: React.ReactNode;
|
|
605
|
+
/** Additional className */
|
|
606
|
+
className?: string;
|
|
607
|
+
}
|
|
608
|
+
/**
|
|
609
|
+
* Slide-in help panel that appears from the right side of the window.
|
|
610
|
+
* Used to display contextual help content within app windows.
|
|
611
|
+
*
|
|
612
|
+
* Uses slot-based API for the close button to avoid coupling to specific
|
|
613
|
+
* icon systems. Pass your own button component via the `closeButton` prop.
|
|
614
|
+
*/
|
|
615
|
+
declare function HelpPanel({ isOpen, onClose, children, title, closeButton, className, }: HelpPanelProps): react_jsx_runtime.JSX.Element | null;
|
|
616
|
+
|
|
617
|
+
type PopoverPosition = 'top' | 'bottom' | 'left' | 'right';
|
|
618
|
+
interface PopoverProps {
|
|
619
|
+
/** Controlled open state */
|
|
620
|
+
open?: boolean;
|
|
621
|
+
/** Default open state */
|
|
622
|
+
defaultOpen?: boolean;
|
|
623
|
+
/** Callback when open state changes */
|
|
624
|
+
onOpenChange?: (open: boolean) => void;
|
|
625
|
+
/** Position relative to trigger */
|
|
626
|
+
position?: PopoverPosition;
|
|
627
|
+
/** Children */
|
|
628
|
+
children: React.ReactNode;
|
|
629
|
+
}
|
|
630
|
+
declare function Popover({ open: controlledOpen, defaultOpen, onOpenChange, position, children, }: PopoverProps): react_jsx_runtime.JSX.Element;
|
|
631
|
+
interface PopoverTriggerProps {
|
|
632
|
+
/** Trigger element */
|
|
633
|
+
children: React.ReactElement;
|
|
634
|
+
/** Pass through as child instead of wrapping */
|
|
635
|
+
asChild?: boolean;
|
|
636
|
+
}
|
|
637
|
+
declare function PopoverTrigger({ children, asChild }: PopoverTriggerProps): react_jsx_runtime.JSX.Element;
|
|
638
|
+
interface PopoverContentProps {
|
|
639
|
+
/** Additional className */
|
|
640
|
+
className?: string;
|
|
641
|
+
/** Children */
|
|
642
|
+
children: React.ReactNode;
|
|
643
|
+
/** Alignment relative to trigger */
|
|
644
|
+
align?: 'start' | 'center' | 'end';
|
|
645
|
+
}
|
|
646
|
+
declare function PopoverContent({ className, children, align }: PopoverContentProps): React.ReactPortal | null;
|
|
647
|
+
|
|
648
|
+
type SheetSide = 'left' | 'right' | 'top' | 'bottom';
|
|
649
|
+
interface SheetProps {
|
|
650
|
+
/** Controlled open state */
|
|
651
|
+
open?: boolean;
|
|
652
|
+
/** Default open state */
|
|
653
|
+
defaultOpen?: boolean;
|
|
654
|
+
/** Callback when open state changes */
|
|
655
|
+
onOpenChange?: (open: boolean) => void;
|
|
656
|
+
/** Side to slide in from */
|
|
657
|
+
side?: SheetSide;
|
|
658
|
+
/** Children */
|
|
659
|
+
children: React.ReactNode;
|
|
660
|
+
}
|
|
661
|
+
declare function Sheet({ open: controlledOpen, defaultOpen, onOpenChange, side, children, }: SheetProps): react_jsx_runtime.JSX.Element;
|
|
662
|
+
interface SheetTriggerProps {
|
|
663
|
+
/** Trigger element */
|
|
664
|
+
children: React.ReactElement;
|
|
665
|
+
/** Pass through as child instead of wrapping */
|
|
666
|
+
asChild?: boolean;
|
|
667
|
+
}
|
|
668
|
+
declare function SheetTrigger({ children, asChild }: SheetTriggerProps): react_jsx_runtime.JSX.Element;
|
|
669
|
+
interface SheetContentProps {
|
|
670
|
+
/** Additional className */
|
|
671
|
+
className?: string;
|
|
672
|
+
/** Children */
|
|
673
|
+
children: React.ReactNode;
|
|
674
|
+
}
|
|
675
|
+
declare function SheetContent({ className, children }: SheetContentProps): React.ReactPortal | null;
|
|
676
|
+
interface SheetHeaderProps {
|
|
677
|
+
/** Additional className */
|
|
678
|
+
className?: string;
|
|
679
|
+
/** Children */
|
|
680
|
+
children: React.ReactNode;
|
|
681
|
+
}
|
|
682
|
+
declare function SheetHeader({ className, children }: SheetHeaderProps): react_jsx_runtime.JSX.Element;
|
|
683
|
+
interface SheetTitleProps {
|
|
684
|
+
/** Additional className */
|
|
685
|
+
className?: string;
|
|
686
|
+
/** Children */
|
|
687
|
+
children: React.ReactNode;
|
|
688
|
+
}
|
|
689
|
+
declare function SheetTitle({ className, children }: SheetTitleProps): react_jsx_runtime.JSX.Element;
|
|
690
|
+
interface SheetDescriptionProps {
|
|
691
|
+
/** Additional className */
|
|
692
|
+
className?: string;
|
|
693
|
+
/** Children */
|
|
694
|
+
children: React.ReactNode;
|
|
695
|
+
}
|
|
696
|
+
declare function SheetDescription({ className, children }: SheetDescriptionProps): react_jsx_runtime.JSX.Element;
|
|
697
|
+
interface SheetBodyProps {
|
|
698
|
+
/** Additional className */
|
|
699
|
+
className?: string;
|
|
700
|
+
/** Children */
|
|
701
|
+
children: React.ReactNode;
|
|
702
|
+
}
|
|
703
|
+
declare function SheetBody({ className, children }: SheetBodyProps): react_jsx_runtime.JSX.Element;
|
|
704
|
+
interface SheetFooterProps {
|
|
705
|
+
/** Additional className */
|
|
706
|
+
className?: string;
|
|
707
|
+
/** Children */
|
|
708
|
+
children: React.ReactNode;
|
|
709
|
+
}
|
|
710
|
+
declare function SheetFooter({ className, children }: SheetFooterProps): react_jsx_runtime.JSX.Element;
|
|
711
|
+
interface SheetCloseProps {
|
|
712
|
+
/** Close button element */
|
|
713
|
+
children: React.ReactElement;
|
|
714
|
+
/** Pass through as child instead of wrapping */
|
|
715
|
+
asChild?: boolean;
|
|
716
|
+
}
|
|
717
|
+
declare function SheetClose({ children, asChild }: SheetCloseProps): react_jsx_runtime.JSX.Element;
|
|
718
|
+
|
|
719
|
+
interface MockStateDefinition {
|
|
720
|
+
/** Unique identifier for this mock state */
|
|
721
|
+
id: string;
|
|
722
|
+
/** Display name */
|
|
723
|
+
name: string;
|
|
724
|
+
/** Short description */
|
|
725
|
+
description: string;
|
|
726
|
+
/** Category for grouping (e.g., 'wallet', 'auction', 'user') */
|
|
727
|
+
category: string;
|
|
728
|
+
/** Optional icon (emoji or component) */
|
|
729
|
+
icon?: React.ReactNode;
|
|
730
|
+
}
|
|
731
|
+
interface MockStateCategory {
|
|
732
|
+
/** Category identifier */
|
|
733
|
+
id: string;
|
|
734
|
+
/** Display label */
|
|
735
|
+
label: string;
|
|
736
|
+
}
|
|
737
|
+
interface MockStatesPopoverProps {
|
|
738
|
+
/** Whether the popover is open */
|
|
739
|
+
isOpen: boolean;
|
|
740
|
+
/** Callback when the popover should close */
|
|
741
|
+
onClose: () => void;
|
|
742
|
+
/** Array of mock state definitions */
|
|
743
|
+
mockStates: MockStateDefinition[];
|
|
744
|
+
/** Currently active mock state ID */
|
|
745
|
+
activeMockState?: string;
|
|
746
|
+
/** Callback when a mock state is selected */
|
|
747
|
+
onSelectState: (stateId: string) => void;
|
|
748
|
+
/** Categories to display (in order). States are grouped by category. */
|
|
749
|
+
categories?: MockStateCategory[];
|
|
750
|
+
/** Title shown in the header */
|
|
751
|
+
title?: string;
|
|
752
|
+
/** Footer text */
|
|
753
|
+
footerText?: string;
|
|
754
|
+
/** Additional className for the popover container */
|
|
755
|
+
className?: string;
|
|
756
|
+
}
|
|
757
|
+
/**
|
|
758
|
+
* MockStatesPopover
|
|
759
|
+
*
|
|
760
|
+
* A development-only popover for toggling between mock states.
|
|
761
|
+
* Displays categorized mock state presets that can be applied
|
|
762
|
+
* to test different UI scenarios.
|
|
763
|
+
*
|
|
764
|
+
* This is a generic component - pass your mock state definitions
|
|
765
|
+
* and handlers as props.
|
|
766
|
+
*/
|
|
767
|
+
declare function MockStatesPopover({ isOpen, onClose, mockStates, activeMockState, onSelectState, categories, title, footerText, className, }: MockStatesPopoverProps): react_jsx_runtime.JSX.Element | null;
|
|
768
|
+
|
|
769
|
+
type CountdownVariant = 'default' | 'compact' | 'large';
|
|
770
|
+
interface CountdownTimerProps {
|
|
771
|
+
/** Target timestamp (Unix ms or Date) */
|
|
772
|
+
endTime: number | Date;
|
|
773
|
+
/** Optional start time for "upcoming" status */
|
|
774
|
+
startTime?: number | Date;
|
|
775
|
+
/** Visual variant */
|
|
776
|
+
variant?: CountdownVariant;
|
|
777
|
+
/** Label text shown above timer */
|
|
778
|
+
label?: string;
|
|
779
|
+
/** Callback when countdown reaches zero */
|
|
780
|
+
onComplete?: () => void;
|
|
781
|
+
/** Custom ended message */
|
|
782
|
+
endedMessage?: string;
|
|
783
|
+
/** Custom upcoming message */
|
|
784
|
+
upcomingMessage?: string;
|
|
785
|
+
/** Show days segment */
|
|
786
|
+
showDays?: boolean;
|
|
787
|
+
/** Additional classes */
|
|
788
|
+
className?: string;
|
|
789
|
+
}
|
|
790
|
+
/**
|
|
791
|
+
* CountdownTimer component for auction countdowns
|
|
792
|
+
*
|
|
793
|
+
* Features:
|
|
794
|
+
* - Live countdown with days/hours/mins/secs
|
|
795
|
+
* - Three size variants (compact, default, large)
|
|
796
|
+
* - Automatic status detection (active, ended, upcoming)
|
|
797
|
+
* - Callback on completion
|
|
798
|
+
*/
|
|
799
|
+
declare function CountdownTimer({ endTime, startTime, variant, label, onComplete, endedMessage, upcomingMessage, showDays, className, }: CountdownTimerProps): react_jsx_runtime.JSX.Element;
|
|
800
|
+
|
|
801
|
+
interface Web3ActionBarProps {
|
|
802
|
+
/** Whether wallet is connected */
|
|
803
|
+
isConnected: boolean;
|
|
804
|
+
/** Wallet address to display when connected */
|
|
805
|
+
walletAddress?: string | null;
|
|
806
|
+
/** Callback when connect button is clicked */
|
|
807
|
+
onConnect: () => void;
|
|
808
|
+
/** Optional callback when disconnect button is clicked */
|
|
809
|
+
onDisconnect?: () => void;
|
|
810
|
+
/** Icon slot for disconnect button (pass your close icon component) */
|
|
811
|
+
disconnectIcon?: React.ReactNode;
|
|
812
|
+
/** App-specific action buttons (My Vault, Place Offering, Stake, etc.) */
|
|
813
|
+
children?: React.ReactNode;
|
|
814
|
+
/** Additional className */
|
|
815
|
+
className?: string;
|
|
816
|
+
}
|
|
817
|
+
/**
|
|
818
|
+
* Universal Web3 Action Bar for all web3 apps in RadOS
|
|
819
|
+
*
|
|
820
|
+
* Provides a consistent bottom bar for wallet connection and app-specific
|
|
821
|
+
* blockchain actions. Used across Auctions, MurderTree, Vault, and future web3 apps.
|
|
822
|
+
*
|
|
823
|
+
* Architecture:
|
|
824
|
+
* - TabList = Navigation tabs (web2 apps)
|
|
825
|
+
* - Web3ActionBar = Wallet + blockchain actions (web3 apps)
|
|
826
|
+
*
|
|
827
|
+
* @example
|
|
828
|
+
* ```tsx
|
|
829
|
+
* <Web3ActionBar
|
|
830
|
+
* isConnected={isConnected}
|
|
831
|
+
* walletAddress={walletAddress}
|
|
832
|
+
* onConnect={handleConnect}
|
|
833
|
+
* onDisconnect={handleDisconnect}
|
|
834
|
+
* disconnectIcon={<CloseIcon />}
|
|
835
|
+
* >
|
|
836
|
+
* <Button variant="outline" onClick={handleShowVault}>My Vault</Button>
|
|
837
|
+
* {status === 'live' && <Button>Place Offering</Button>}
|
|
838
|
+
* </Web3ActionBar>
|
|
839
|
+
* ```
|
|
840
|
+
*/
|
|
841
|
+
declare function Web3ActionBar({ isConnected, walletAddress, onConnect, onDisconnect, disconnectIcon, children, className, }: Web3ActionBarProps): react_jsx_runtime.JSX.Element;
|
|
842
|
+
|
|
843
|
+
interface DialogProps {
|
|
844
|
+
/** Controlled open state */
|
|
845
|
+
open?: boolean;
|
|
846
|
+
/** Default open state for uncontrolled usage */
|
|
847
|
+
defaultOpen?: boolean;
|
|
848
|
+
/** Callback when open state changes */
|
|
849
|
+
onOpenChange?: (open: boolean) => void;
|
|
850
|
+
/** Children */
|
|
851
|
+
children: React.ReactNode;
|
|
852
|
+
}
|
|
853
|
+
declare function Dialog({ open: controlledOpen, defaultOpen, onOpenChange, children, }: DialogProps): react_jsx_runtime.JSX.Element;
|
|
854
|
+
interface DialogTriggerProps {
|
|
855
|
+
/** Trigger element */
|
|
856
|
+
children: React.ReactElement;
|
|
857
|
+
/** Pass through as child instead of wrapping */
|
|
858
|
+
asChild?: boolean;
|
|
859
|
+
}
|
|
860
|
+
declare function DialogTrigger({ children, asChild }: DialogTriggerProps): react_jsx_runtime.JSX.Element;
|
|
861
|
+
interface DialogContentProps {
|
|
862
|
+
/** Additional className */
|
|
863
|
+
className?: string;
|
|
864
|
+
/** Children */
|
|
865
|
+
children: React.ReactNode;
|
|
866
|
+
}
|
|
867
|
+
declare function DialogContent({ className, children }: DialogContentProps): React.ReactPortal | null;
|
|
868
|
+
interface DialogHeaderProps {
|
|
869
|
+
/** Additional className */
|
|
870
|
+
className?: string;
|
|
871
|
+
/** Children */
|
|
872
|
+
children: React.ReactNode;
|
|
873
|
+
}
|
|
874
|
+
declare function DialogHeader({ className, children }: DialogHeaderProps): react_jsx_runtime.JSX.Element;
|
|
875
|
+
interface DialogTitleProps {
|
|
876
|
+
/** Additional className */
|
|
877
|
+
className?: string;
|
|
878
|
+
/** Children */
|
|
879
|
+
children: React.ReactNode;
|
|
880
|
+
}
|
|
881
|
+
declare function DialogTitle({ className, children }: DialogTitleProps): react_jsx_runtime.JSX.Element;
|
|
882
|
+
interface DialogDescriptionProps {
|
|
883
|
+
/** Additional className */
|
|
884
|
+
className?: string;
|
|
885
|
+
/** Children */
|
|
886
|
+
children: React.ReactNode;
|
|
887
|
+
}
|
|
888
|
+
declare function DialogDescription({ className, children }: DialogDescriptionProps): react_jsx_runtime.JSX.Element;
|
|
889
|
+
interface DialogBodyProps {
|
|
890
|
+
/** Additional className */
|
|
891
|
+
className?: string;
|
|
892
|
+
/** Children */
|
|
893
|
+
children: React.ReactNode;
|
|
894
|
+
}
|
|
895
|
+
declare function DialogBody({ className, children }: DialogBodyProps): react_jsx_runtime.JSX.Element;
|
|
896
|
+
interface DialogFooterProps {
|
|
897
|
+
/** Additional className */
|
|
898
|
+
className?: string;
|
|
899
|
+
/** Children */
|
|
900
|
+
children: React.ReactNode;
|
|
901
|
+
}
|
|
902
|
+
declare function DialogFooter({ className, children }: DialogFooterProps): react_jsx_runtime.JSX.Element;
|
|
903
|
+
interface DialogCloseProps {
|
|
904
|
+
/** Close button element */
|
|
905
|
+
children: React.ReactElement;
|
|
906
|
+
/** Pass through as child instead of wrapping */
|
|
907
|
+
asChild?: boolean;
|
|
908
|
+
}
|
|
909
|
+
declare function DialogClose({ children, asChild }: DialogCloseProps): react_jsx_runtime.JSX.Element;
|
|
910
|
+
|
|
911
|
+
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, Badge, Breadcrumbs, Button, Card, CardBody, CardFooter, CardHeader, Checkbox, ContextMenu, ContextMenuContent, ContextMenuItem, ContextMenuSeparator, CountdownTimer, Dialog, DialogBody, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, Divider, DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, HelpPanel, Input, Label, type MockStateCategory, type MockStateDefinition, MockStatesPopover, type MockStatesPopoverProps, Popover, PopoverContent, PopoverTrigger, Progress, Radio, Select, Sheet, SheetBody, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Slider, Spinner, Switch, TabContent, TabList, TabTrigger, Tabs, TextArea, ToastProvider, Tooltip, Web3ActionBar, useToast };
|