myoperator-mcp 0.2.126 → 0.2.127
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/index.js +387 -306
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -139,7 +139,7 @@ export interface AccordionProps
|
|
|
139
139
|
onValueChange?: (value: string[]) => void;
|
|
140
140
|
}
|
|
141
141
|
|
|
142
|
-
const Accordion = React.forwardRef
|
|
142
|
+
const Accordion = React.forwardRef(
|
|
143
143
|
(
|
|
144
144
|
{
|
|
145
145
|
className,
|
|
@@ -150,8 +150,8 @@ const Accordion = React.forwardRef<HTMLDivElement, AccordionProps>(
|
|
|
150
150
|
onValueChange,
|
|
151
151
|
children,
|
|
152
152
|
...props
|
|
153
|
-
},
|
|
154
|
-
ref
|
|
153
|
+
}: AccordionProps,
|
|
154
|
+
ref: React.Ref<HTMLDivElement>
|
|
155
155
|
) => {
|
|
156
156
|
const [internalValue, setInternalValue] =
|
|
157
157
|
React.useState<string[]>(defaultValue);
|
|
@@ -207,8 +207,8 @@ export interface AccordionItemProps
|
|
|
207
207
|
disabled?: boolean;
|
|
208
208
|
}
|
|
209
209
|
|
|
210
|
-
const AccordionItem = React.forwardRef
|
|
211
|
-
({ className, value, disabled, children, ...props }, ref) => {
|
|
210
|
+
const AccordionItem = React.forwardRef(
|
|
211
|
+
({ className, value, disabled, children, ...props }: AccordionItemProps, ref: React.Ref<HTMLDivElement>) => {
|
|
212
212
|
const { value: openValues, variant } = useAccordionContext();
|
|
213
213
|
const isOpen = openValues.includes(value);
|
|
214
214
|
|
|
@@ -248,10 +248,7 @@ export interface AccordionTriggerProps
|
|
|
248
248
|
showChevron?: boolean;
|
|
249
249
|
}
|
|
250
250
|
|
|
251
|
-
const AccordionTrigger = React.forwardRef<
|
|
252
|
-
HTMLButtonElement,
|
|
253
|
-
AccordionTriggerProps
|
|
254
|
-
>(({ className, showChevron = true, children, ...props }, ref) => {
|
|
251
|
+
const AccordionTrigger = React.forwardRef(({ className, showChevron = true, children, ...props }: AccordionTriggerProps, ref: React.Ref<HTMLButtonElement>) => {
|
|
255
252
|
const {
|
|
256
253
|
type,
|
|
257
254
|
value: openValues,
|
|
@@ -310,10 +307,7 @@ export interface AccordionContentProps
|
|
|
310
307
|
React.HTMLAttributes<HTMLDivElement>,
|
|
311
308
|
VariantProps<typeof accordionContentVariants> {}
|
|
312
309
|
|
|
313
|
-
const AccordionContent = React.forwardRef<
|
|
314
|
-
HTMLDivElement,
|
|
315
|
-
AccordionContentProps
|
|
316
|
-
>(({ className, children, ...props }, ref) => {
|
|
310
|
+
const AccordionContent = React.forwardRef(({ className, children, ...props }: AccordionContentProps, ref: React.Ref<HTMLDivElement>) => {
|
|
317
311
|
const { variant } = useAccordionContext();
|
|
318
312
|
const { isOpen } = useAccordionItemContext();
|
|
319
313
|
const contentRef = React.useRef<HTMLDivElement>(null);
|
|
@@ -448,7 +442,7 @@ export interface AlertProps
|
|
|
448
442
|
defaultOpen?: boolean;
|
|
449
443
|
}
|
|
450
444
|
|
|
451
|
-
const Alert = React.forwardRef
|
|
445
|
+
const Alert = React.forwardRef(
|
|
452
446
|
(
|
|
453
447
|
{
|
|
454
448
|
className,
|
|
@@ -463,8 +457,8 @@ const Alert = React.forwardRef<HTMLDivElement, AlertProps>(
|
|
|
463
457
|
defaultOpen = true,
|
|
464
458
|
children,
|
|
465
459
|
...props
|
|
466
|
-
},
|
|
467
|
-
ref
|
|
460
|
+
}: AlertProps,
|
|
461
|
+
ref: React.Ref<HTMLDivElement>
|
|
468
462
|
) => {
|
|
469
463
|
const [internalOpen, setInternalOpen] = React.useState(defaultOpen);
|
|
470
464
|
const isControlled = controlledOpen !== undefined;
|
|
@@ -536,10 +530,7 @@ Alert.displayName = "Alert";
|
|
|
536
530
|
/**
|
|
537
531
|
* Alert title component for the heading text.
|
|
538
532
|
*/
|
|
539
|
-
const AlertTitle = React.forwardRef<
|
|
540
|
-
HTMLHeadingElement,
|
|
541
|
-
React.HTMLAttributes<HTMLHeadingElement>
|
|
542
|
-
>(({ className, children, ...props }, ref) => (
|
|
533
|
+
const AlertTitle = React.forwardRef(({ className, children, ...props }: React.HTMLAttributes<HTMLHeadingElement>, ref: React.Ref<HTMLHeadingElement>) => (
|
|
543
534
|
<h5
|
|
544
535
|
ref={ref}
|
|
545
536
|
className={cn("font-semibold leading-tight tracking-tight", className)}
|
|
@@ -553,10 +544,7 @@ AlertTitle.displayName = "AlertTitle";
|
|
|
553
544
|
/**
|
|
554
545
|
* Alert description component for the body text.
|
|
555
546
|
*/
|
|
556
|
-
const AlertDescription = React.forwardRef<
|
|
557
|
-
HTMLParagraphElement,
|
|
558
|
-
React.HTMLAttributes<HTMLParagraphElement>
|
|
559
|
-
>(({ className, ...props }, ref) => (
|
|
547
|
+
const AlertDescription = React.forwardRef(({ className, ...props }: React.HTMLAttributes<HTMLParagraphElement>, ref: React.Ref<HTMLParagraphElement>) => (
|
|
560
548
|
<p ref={ref} className={cn("m-0 mt-1 text-sm", className)} {...props} />
|
|
561
549
|
));
|
|
562
550
|
AlertDescription.displayName = "AlertDescription";
|
|
@@ -648,7 +636,7 @@ export interface AvatarProps
|
|
|
648
636
|
* <Avatar initials="AS" size="xs" />
|
|
649
637
|
* \`\`\`
|
|
650
638
|
*/
|
|
651
|
-
const Avatar = React.forwardRef
|
|
639
|
+
const Avatar = React.forwardRef(
|
|
652
640
|
(
|
|
653
641
|
{
|
|
654
642
|
className,
|
|
@@ -661,8 +649,8 @@ const Avatar = React.forwardRef<HTMLDivElement, AvatarProps>(
|
|
|
661
649
|
status,
|
|
662
650
|
children,
|
|
663
651
|
...props
|
|
664
|
-
},
|
|
665
|
-
ref
|
|
652
|
+
}: AvatarProps,
|
|
653
|
+
ref: React.Ref<HTMLDivElement>
|
|
666
654
|
) => {
|
|
667
655
|
const resolvedSize = size ?? "md";
|
|
668
656
|
const displayInitials = initials ?? (name ? getInitials(name) : undefined);
|
|
@@ -774,7 +762,7 @@ export interface BadgeProps
|
|
|
774
762
|
asChild?: boolean;
|
|
775
763
|
}
|
|
776
764
|
|
|
777
|
-
const Badge = React.forwardRef
|
|
765
|
+
const Badge = React.forwardRef(
|
|
778
766
|
(
|
|
779
767
|
{
|
|
780
768
|
className,
|
|
@@ -785,8 +773,8 @@ const Badge = React.forwardRef<HTMLDivElement, BadgeProps>(
|
|
|
785
773
|
asChild = false,
|
|
786
774
|
children,
|
|
787
775
|
...props
|
|
788
|
-
},
|
|
789
|
-
ref
|
|
776
|
+
}: BadgeProps,
|
|
777
|
+
ref: React.Ref<HTMLDivElement>
|
|
790
778
|
) => {
|
|
791
779
|
const Comp = asChild ? Slot : "div";
|
|
792
780
|
|
|
@@ -842,12 +830,12 @@ const buttonVariants = cva(
|
|
|
842
830
|
success:
|
|
843
831
|
"bg-semantic-success-primary text-semantic-text-inverted hover:bg-semantic-success-hover",
|
|
844
832
|
outline:
|
|
845
|
-
"border border-
|
|
833
|
+
"border border-[var(--color-neutral-300,#D5D7DA)] bg-semantic-bg-primary text-semantic-text-secondary hover:bg-semantic-primary-surface",
|
|
846
834
|
secondary:
|
|
847
835
|
"bg-semantic-primary-surface text-semantic-text-secondary hover:bg-semantic-bg-hover",
|
|
848
836
|
ghost:
|
|
849
837
|
"text-semantic-text-muted hover:bg-semantic-bg-ui hover:text-semantic-text-primary",
|
|
850
|
-
link: "text-semantic-text-
|
|
838
|
+
link: "text-semantic-text-link underline-offset-4 hover:underline",
|
|
851
839
|
dashed:
|
|
852
840
|
"border border-dashed border-semantic-bg-hover bg-transparent text-semantic-text-muted hover:border-semantic-border-primary hover:text-semantic-text-secondary hover:bg-[var(--color-neutral-50)]",
|
|
853
841
|
},
|
|
@@ -893,7 +881,7 @@ export interface ButtonProps
|
|
|
893
881
|
loadingText?: string;
|
|
894
882
|
}
|
|
895
883
|
|
|
896
|
-
const Button = React.forwardRef
|
|
884
|
+
const Button = React.forwardRef(
|
|
897
885
|
(
|
|
898
886
|
{
|
|
899
887
|
className,
|
|
@@ -907,8 +895,8 @@ const Button = React.forwardRef<HTMLButtonElement, ButtonProps>(
|
|
|
907
895
|
children,
|
|
908
896
|
disabled,
|
|
909
897
|
...props
|
|
910
|
-
},
|
|
911
|
-
ref
|
|
898
|
+
}: ButtonProps,
|
|
899
|
+
ref: React.Ref<HTMLButtonElement>
|
|
912
900
|
) => {
|
|
913
901
|
const Comp = asChild ? Slot : "button";
|
|
914
902
|
|
|
@@ -1030,10 +1018,7 @@ export interface CheckboxProps
|
|
|
1030
1018
|
separateLabel?: boolean;
|
|
1031
1019
|
}
|
|
1032
1020
|
|
|
1033
|
-
const Checkbox = React.forwardRef
|
|
1034
|
-
React.ElementRef<typeof CheckboxPrimitive.Root>,
|
|
1035
|
-
CheckboxProps
|
|
1036
|
-
>(
|
|
1021
|
+
const Checkbox = React.forwardRef(
|
|
1037
1022
|
(
|
|
1038
1023
|
{
|
|
1039
1024
|
className,
|
|
@@ -1046,8 +1031,8 @@ const Checkbox = React.forwardRef<
|
|
|
1046
1031
|
id,
|
|
1047
1032
|
disabled,
|
|
1048
1033
|
...props
|
|
1049
|
-
},
|
|
1050
|
-
ref
|
|
1034
|
+
}: CheckboxProps,
|
|
1035
|
+
ref: React.Ref<React.ElementRef<typeof CheckboxPrimitive.Root>>
|
|
1051
1036
|
) => {
|
|
1052
1037
|
const checkbox = (
|
|
1053
1038
|
<CheckboxPrimitive.Root
|
|
@@ -1221,10 +1206,7 @@ export interface ConfirmationModalProps {
|
|
|
1221
1206
|
* />
|
|
1222
1207
|
* \`\`\`
|
|
1223
1208
|
*/
|
|
1224
|
-
const ConfirmationModal = React.forwardRef
|
|
1225
|
-
HTMLDivElement,
|
|
1226
|
-
ConfirmationModalProps
|
|
1227
|
-
>(
|
|
1209
|
+
const ConfirmationModal = React.forwardRef(
|
|
1228
1210
|
(
|
|
1229
1211
|
{
|
|
1230
1212
|
open,
|
|
@@ -1239,8 +1221,8 @@ const ConfirmationModal = React.forwardRef<
|
|
|
1239
1221
|
cancelButtonText = "Cancel",
|
|
1240
1222
|
trigger,
|
|
1241
1223
|
className,
|
|
1242
|
-
},
|
|
1243
|
-
ref
|
|
1224
|
+
}: ConfirmationModalProps,
|
|
1225
|
+
ref: React.Ref<HTMLDivElement>
|
|
1244
1226
|
) => {
|
|
1245
1227
|
const handleConfirm = () => {
|
|
1246
1228
|
onConfirm?.();
|
|
@@ -1319,7 +1301,7 @@ export interface ContactListItemProps
|
|
|
1319
1301
|
* />
|
|
1320
1302
|
* \`\`\`
|
|
1321
1303
|
*/
|
|
1322
|
-
const ContactListItem = React.forwardRef
|
|
1304
|
+
const ContactListItem = React.forwardRef(
|
|
1323
1305
|
(
|
|
1324
1306
|
{
|
|
1325
1307
|
name,
|
|
@@ -1330,8 +1312,8 @@ const ContactListItem = React.forwardRef<HTMLDivElement, ContactListItemProps>(
|
|
|
1330
1312
|
onClick,
|
|
1331
1313
|
className,
|
|
1332
1314
|
...props
|
|
1333
|
-
},
|
|
1334
|
-
ref
|
|
1315
|
+
}: ContactListItemProps,
|
|
1316
|
+
ref: React.Ref<HTMLDivElement>
|
|
1335
1317
|
) => {
|
|
1336
1318
|
return (
|
|
1337
1319
|
<div
|
|
@@ -1438,10 +1420,7 @@ export interface CreatableMultiSelectProps
|
|
|
1438
1420
|
maxLengthPerItem?: number
|
|
1439
1421
|
}
|
|
1440
1422
|
|
|
1441
|
-
const CreatableMultiSelect = React.forwardRef
|
|
1442
|
-
HTMLDivElement,
|
|
1443
|
-
CreatableMultiSelectProps
|
|
1444
|
-
>(
|
|
1423
|
+
const CreatableMultiSelect = React.forwardRef(
|
|
1445
1424
|
(
|
|
1446
1425
|
{
|
|
1447
1426
|
className,
|
|
@@ -1456,8 +1435,8 @@ const CreatableMultiSelect = React.forwardRef<
|
|
|
1456
1435
|
maxItems,
|
|
1457
1436
|
maxLengthPerItem,
|
|
1458
1437
|
...props
|
|
1459
|
-
},
|
|
1460
|
-
ref
|
|
1438
|
+
}: CreatableMultiSelectProps,
|
|
1439
|
+
ref: React.Ref<HTMLDivElement>
|
|
1461
1440
|
) => {
|
|
1462
1441
|
const [isOpen, setIsOpen] = React.useState(false)
|
|
1463
1442
|
const [inputValue, setInputValue] = React.useState("")
|
|
@@ -1733,7 +1712,7 @@ export interface CreatableSelectProps
|
|
|
1733
1712
|
maxLength?: number
|
|
1734
1713
|
}
|
|
1735
1714
|
|
|
1736
|
-
const CreatableSelect = React.forwardRef
|
|
1715
|
+
const CreatableSelect = React.forwardRef(
|
|
1737
1716
|
(
|
|
1738
1717
|
{
|
|
1739
1718
|
className,
|
|
@@ -1746,8 +1725,8 @@ const CreatableSelect = React.forwardRef<HTMLDivElement, CreatableSelectProps>(
|
|
|
1746
1725
|
disabled = false,
|
|
1747
1726
|
maxLength,
|
|
1748
1727
|
...props
|
|
1749
|
-
},
|
|
1750
|
-
ref
|
|
1728
|
+
}: CreatableSelectProps,
|
|
1729
|
+
ref: React.Ref<HTMLDivElement>
|
|
1751
1730
|
) => {
|
|
1752
1731
|
const [open, setOpen] = React.useState(false)
|
|
1753
1732
|
const [search, setSearch] = React.useState("")
|
|
@@ -2028,8 +2007,8 @@ export interface DateDividerProps
|
|
|
2028
2007
|
children: React.ReactNode;
|
|
2029
2008
|
}
|
|
2030
2009
|
|
|
2031
|
-
const DateDivider = React.forwardRef
|
|
2032
|
-
({ className, children, ...props }, ref) => (
|
|
2010
|
+
const DateDivider = React.forwardRef(
|
|
2011
|
+
({ className, children, ...props }: DateDividerProps, ref: React.Ref<HTMLDivElement>) => (
|
|
2033
2012
|
<div
|
|
2034
2013
|
ref={ref}
|
|
2035
2014
|
className={cn("flex items-center gap-4 my-4", className)}
|
|
@@ -2115,10 +2094,7 @@ export interface DeleteConfirmationModalProps {
|
|
|
2115
2094
|
* />
|
|
2116
2095
|
* \`\`\`
|
|
2117
2096
|
*/
|
|
2118
|
-
const DeleteConfirmationModal = React.forwardRef
|
|
2119
|
-
HTMLDivElement,
|
|
2120
|
-
DeleteConfirmationModalProps
|
|
2121
|
-
>(
|
|
2097
|
+
const DeleteConfirmationModal = React.forwardRef(
|
|
2122
2098
|
(
|
|
2123
2099
|
{
|
|
2124
2100
|
open,
|
|
@@ -2134,8 +2110,8 @@ const DeleteConfirmationModal = React.forwardRef<
|
|
|
2134
2110
|
cancelButtonText = "Cancel",
|
|
2135
2111
|
trigger,
|
|
2136
2112
|
className,
|
|
2137
|
-
},
|
|
2138
|
-
ref
|
|
2113
|
+
}: DeleteConfirmationModalProps,
|
|
2114
|
+
ref: React.Ref<HTMLDivElement>
|
|
2139
2115
|
) => {
|
|
2140
2116
|
const [inputValue, setInputValue] = React.useState("");
|
|
2141
2117
|
const isConfirmEnabled = inputValue === confirmText;
|
|
@@ -2231,10 +2207,7 @@ const DialogPortal = DialogPrimitive.Portal;
|
|
|
2231
2207
|
|
|
2232
2208
|
const DialogClose = DialogPrimitive.Close;
|
|
2233
2209
|
|
|
2234
|
-
const DialogOverlay = React.forwardRef<
|
|
2235
|
-
React.ElementRef<typeof DialogPrimitive.Overlay>,
|
|
2236
|
-
React.ComponentPropsWithoutRef<typeof DialogPrimitive.Overlay>
|
|
2237
|
-
>(({ className, ...props }, ref) => (
|
|
2210
|
+
const DialogOverlay = React.forwardRef(({ className, ...props }: React.ComponentPropsWithoutRef<typeof DialogPrimitive.Overlay>, ref: React.Ref<React.ElementRef<typeof DialogPrimitive.Overlay>>) => (
|
|
2238
2211
|
<DialogPrimitive.Overlay
|
|
2239
2212
|
ref={ref}
|
|
2240
2213
|
className={cn(
|
|
@@ -2292,10 +2265,7 @@ const hasDialogDescription = (children: React.ReactNode): boolean => {
|
|
|
2292
2265
|
return found;
|
|
2293
2266
|
};
|
|
2294
2267
|
|
|
2295
|
-
const DialogContent = React.forwardRef<
|
|
2296
|
-
React.ElementRef<typeof DialogPrimitive.Content>,
|
|
2297
|
-
DialogContentProps
|
|
2298
|
-
>(({ className, children, size, hideCloseButton = false, ...props }, ref) => {
|
|
2268
|
+
const DialogContent = React.forwardRef(({ className, children, size, hideCloseButton = false, ...props }: DialogContentProps, ref: React.Ref<React.ElementRef<typeof DialogPrimitive.Content>>) => {
|
|
2299
2269
|
const hasDescription = hasDialogDescription(children);
|
|
2300
2270
|
|
|
2301
2271
|
return (
|
|
@@ -2353,10 +2323,7 @@ const DialogFooter = ({
|
|
|
2353
2323
|
);
|
|
2354
2324
|
DialogFooter.displayName = "DialogFooter";
|
|
2355
2325
|
|
|
2356
|
-
const DialogTitle = React.forwardRef<
|
|
2357
|
-
React.ElementRef<typeof DialogPrimitive.Title>,
|
|
2358
|
-
React.ComponentPropsWithoutRef<typeof DialogPrimitive.Title>
|
|
2359
|
-
>(({ className, ...props }, ref) => (
|
|
2326
|
+
const DialogTitle = React.forwardRef(({ className, ...props }: React.ComponentPropsWithoutRef<typeof DialogPrimitive.Title>, ref: React.Ref<React.ElementRef<typeof DialogPrimitive.Title>>) => (
|
|
2360
2327
|
<DialogPrimitive.Title
|
|
2361
2328
|
ref={ref}
|
|
2362
2329
|
className={cn(
|
|
@@ -2368,10 +2335,7 @@ const DialogTitle = React.forwardRef<
|
|
|
2368
2335
|
));
|
|
2369
2336
|
DialogTitle.displayName = DialogPrimitive.Title.displayName;
|
|
2370
2337
|
|
|
2371
|
-
const DialogDescription = React.forwardRef<
|
|
2372
|
-
React.ElementRef<typeof DialogPrimitive.Description>,
|
|
2373
|
-
React.ComponentPropsWithoutRef<typeof DialogPrimitive.Description>
|
|
2374
|
-
>(({ className, ...props }, ref) => (
|
|
2338
|
+
const DialogDescription = React.forwardRef(({ className, ...props }: React.ComponentPropsWithoutRef<typeof DialogPrimitive.Description>, ref: React.Ref<React.ElementRef<typeof DialogPrimitive.Description>>) => (
|
|
2375
2339
|
<DialogPrimitive.Description
|
|
2376
2340
|
ref={ref}
|
|
2377
2341
|
className={cn("text-sm text-muted-foreground", className)}
|
|
@@ -2402,10 +2366,7 @@ import { cn } from "@/lib/utils";
|
|
|
2402
2366
|
|
|
2403
2367
|
const DropdownMenu = DropdownMenuPrimitive.Root;
|
|
2404
2368
|
|
|
2405
|
-
const DropdownMenuTrigger = React.forwardRef<
|
|
2406
|
-
React.ElementRef<typeof DropdownMenuPrimitive.Trigger>,
|
|
2407
|
-
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Trigger>
|
|
2408
|
-
>(({ className, ...props }, ref) => (
|
|
2369
|
+
const DropdownMenuTrigger = React.forwardRef(({ className, ...props }: React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Trigger>, ref: React.Ref<React.ElementRef<typeof DropdownMenuPrimitive.Trigger>>) => (
|
|
2409
2370
|
<DropdownMenuPrimitive.Trigger
|
|
2410
2371
|
ref={ref}
|
|
2411
2372
|
className={cn("focus-visible:outline-none focus-visible:ring-0", className)}
|
|
@@ -2422,12 +2383,9 @@ const DropdownMenuSub = DropdownMenuPrimitive.Sub;
|
|
|
2422
2383
|
|
|
2423
2384
|
const DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;
|
|
2424
2385
|
|
|
2425
|
-
const DropdownMenuSubTrigger = React.forwardRef<
|
|
2426
|
-
React.ElementRef<typeof DropdownMenuPrimitive.SubTrigger>,
|
|
2427
|
-
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubTrigger> & {
|
|
2386
|
+
const DropdownMenuSubTrigger = React.forwardRef(({ className, inset, children, ...props }: React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubTrigger> & {
|
|
2428
2387
|
inset?: boolean;
|
|
2429
|
-
}
|
|
2430
|
-
>(({ className, inset, children, ...props }, ref) => (
|
|
2388
|
+
}, ref: React.Ref<React.ElementRef<typeof DropdownMenuPrimitive.SubTrigger>>) => (
|
|
2431
2389
|
<DropdownMenuPrimitive.SubTrigger
|
|
2432
2390
|
ref={ref}
|
|
2433
2391
|
className={cn(
|
|
@@ -2444,10 +2402,7 @@ const DropdownMenuSubTrigger = React.forwardRef<
|
|
|
2444
2402
|
DropdownMenuSubTrigger.displayName =
|
|
2445
2403
|
DropdownMenuPrimitive.SubTrigger.displayName;
|
|
2446
2404
|
|
|
2447
|
-
const DropdownMenuSubContent = React.forwardRef<
|
|
2448
|
-
React.ElementRef<typeof DropdownMenuPrimitive.SubContent>,
|
|
2449
|
-
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubContent>
|
|
2450
|
-
>(({ className, ...props }, ref) => (
|
|
2405
|
+
const DropdownMenuSubContent = React.forwardRef(({ className, ...props }: React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubContent>, ref: React.Ref<React.ElementRef<typeof DropdownMenuPrimitive.SubContent>>) => (
|
|
2451
2406
|
<DropdownMenuPrimitive.SubContent
|
|
2452
2407
|
ref={ref}
|
|
2453
2408
|
className={cn(
|
|
@@ -2460,10 +2415,7 @@ const DropdownMenuSubContent = React.forwardRef<
|
|
|
2460
2415
|
DropdownMenuSubContent.displayName =
|
|
2461
2416
|
DropdownMenuPrimitive.SubContent.displayName;
|
|
2462
2417
|
|
|
2463
|
-
const DropdownMenuContent = React.forwardRef<
|
|
2464
|
-
React.ElementRef<typeof DropdownMenuPrimitive.Content>,
|
|
2465
|
-
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Content>
|
|
2466
|
-
>(({ className, sideOffset = 4, ...props }, ref) => (
|
|
2418
|
+
const DropdownMenuContent = React.forwardRef(({ className, sideOffset = 4, ...props }: React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Content>, ref: React.Ref<React.ElementRef<typeof DropdownMenuPrimitive.Content>>) => (
|
|
2467
2419
|
<DropdownMenuPrimitive.Portal>
|
|
2468
2420
|
<DropdownMenuPrimitive.Content
|
|
2469
2421
|
ref={ref}
|
|
@@ -2479,20 +2431,17 @@ const DropdownMenuContent = React.forwardRef<
|
|
|
2479
2431
|
));
|
|
2480
2432
|
DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
|
|
2481
2433
|
|
|
2482
|
-
const DropdownMenuItem = React.forwardRef<
|
|
2483
|
-
React.ElementRef<typeof DropdownMenuPrimitive.Item>,
|
|
2484
|
-
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Item> & {
|
|
2434
|
+
const DropdownMenuItem = React.forwardRef(({ className, inset, children, description, suffix, ...props }: React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Item> & {
|
|
2485
2435
|
inset?: boolean;
|
|
2486
2436
|
/** Secondary text displayed below children */
|
|
2487
2437
|
description?: string;
|
|
2488
2438
|
/** Content displayed at the right edge of the item */
|
|
2489
2439
|
suffix?: React.ReactNode;
|
|
2490
|
-
}
|
|
2491
|
-
>(({ className, inset, children, description, suffix, ...props }, ref) => (
|
|
2440
|
+
}, ref: React.Ref<React.ElementRef<typeof DropdownMenuPrimitive.Item>>) => (
|
|
2492
2441
|
<DropdownMenuPrimitive.Item
|
|
2493
2442
|
ref={ref}
|
|
2494
2443
|
className={cn(
|
|
2495
|
-
"relative flex cursor-pointer select-none items-center rounded-sm px-2 py-2 text-sm text-semantic-text-secondary outline-none transition-colors focus:bg-semantic-bg-ui focus:text-semantic-text-primary data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
|
|
2444
|
+
"relative flex cursor-pointer select-none items-center gap-2 rounded-sm px-2 py-2 text-sm text-semantic-text-secondary outline-none transition-colors focus:bg-semantic-bg-ui focus:text-semantic-text-primary data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
|
|
2496
2445
|
inset && "pl-8",
|
|
2497
2446
|
className
|
|
2498
2447
|
)}
|
|
@@ -2513,15 +2462,12 @@ const DropdownMenuItem = React.forwardRef<
|
|
|
2513
2462
|
));
|
|
2514
2463
|
DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
|
|
2515
2464
|
|
|
2516
|
-
const DropdownMenuCheckboxItem = React.forwardRef<
|
|
2517
|
-
React.ElementRef<typeof DropdownMenuPrimitive.CheckboxItem>,
|
|
2518
|
-
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.CheckboxItem> & {
|
|
2465
|
+
const DropdownMenuCheckboxItem = React.forwardRef(({ className, children, checked, description, suffix, ...props }: React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.CheckboxItem> & {
|
|
2519
2466
|
/** Secondary text displayed below children */
|
|
2520
2467
|
description?: string;
|
|
2521
2468
|
/** Content displayed at the right edge of the item */
|
|
2522
2469
|
suffix?: React.ReactNode;
|
|
2523
|
-
}
|
|
2524
|
-
>(({ className, children, checked, description, suffix, ...props }, ref) => (
|
|
2470
|
+
}, ref: React.Ref<React.ElementRef<typeof DropdownMenuPrimitive.CheckboxItem>>) => (
|
|
2525
2471
|
<DropdownMenuPrimitive.CheckboxItem
|
|
2526
2472
|
ref={ref}
|
|
2527
2473
|
className={cn(
|
|
@@ -2552,15 +2498,12 @@ const DropdownMenuCheckboxItem = React.forwardRef<
|
|
|
2552
2498
|
DropdownMenuCheckboxItem.displayName =
|
|
2553
2499
|
DropdownMenuPrimitive.CheckboxItem.displayName;
|
|
2554
2500
|
|
|
2555
|
-
const DropdownMenuRadioItem = React.forwardRef<
|
|
2556
|
-
React.ElementRef<typeof DropdownMenuPrimitive.RadioItem>,
|
|
2557
|
-
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.RadioItem> & {
|
|
2501
|
+
const DropdownMenuRadioItem = React.forwardRef(({ className, children, description, suffix, ...props }: React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.RadioItem> & {
|
|
2558
2502
|
/** Secondary text displayed below children */
|
|
2559
2503
|
description?: string;
|
|
2560
2504
|
/** Content displayed at the right edge of the item */
|
|
2561
2505
|
suffix?: React.ReactNode;
|
|
2562
|
-
}
|
|
2563
|
-
>(({ className, children, description, suffix, ...props }, ref) => (
|
|
2506
|
+
}, ref: React.Ref<React.ElementRef<typeof DropdownMenuPrimitive.RadioItem>>) => (
|
|
2564
2507
|
<DropdownMenuPrimitive.RadioItem
|
|
2565
2508
|
ref={ref}
|
|
2566
2509
|
className={cn(
|
|
@@ -2589,12 +2532,9 @@ const DropdownMenuRadioItem = React.forwardRef<
|
|
|
2589
2532
|
));
|
|
2590
2533
|
DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
|
|
2591
2534
|
|
|
2592
|
-
const DropdownMenuLabel = React.forwardRef<
|
|
2593
|
-
React.ElementRef<typeof DropdownMenuPrimitive.Label>,
|
|
2594
|
-
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Label> & {
|
|
2535
|
+
const DropdownMenuLabel = React.forwardRef(({ className, inset, ...props }: React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Label> & {
|
|
2595
2536
|
inset?: boolean;
|
|
2596
|
-
}
|
|
2597
|
-
>(({ className, inset, ...props }, ref) => (
|
|
2537
|
+
}, ref: React.Ref<React.ElementRef<typeof DropdownMenuPrimitive.Label>>) => (
|
|
2598
2538
|
<DropdownMenuPrimitive.Label
|
|
2599
2539
|
ref={ref}
|
|
2600
2540
|
className={cn(
|
|
@@ -2607,10 +2547,7 @@ const DropdownMenuLabel = React.forwardRef<
|
|
|
2607
2547
|
));
|
|
2608
2548
|
DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
|
|
2609
2549
|
|
|
2610
|
-
const DropdownMenuSeparator = React.forwardRef<
|
|
2611
|
-
React.ElementRef<typeof DropdownMenuPrimitive.Separator>,
|
|
2612
|
-
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Separator>
|
|
2613
|
-
>(({ className, ...props }, ref) => (
|
|
2550
|
+
const DropdownMenuSeparator = React.forwardRef(({ className, ...props }: React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Separator>, ref: React.Ref<React.ElementRef<typeof DropdownMenuPrimitive.Separator>>) => (
|
|
2614
2551
|
<DropdownMenuPrimitive.Separator
|
|
2615
2552
|
ref={ref}
|
|
2616
2553
|
className={cn("-mx-1 my-1 h-px bg-semantic-border-layout", className)}
|
|
@@ -2777,7 +2714,7 @@ export interface FormModalProps {
|
|
|
2777
2714
|
* </FormModal>
|
|
2778
2715
|
* \`\`\`
|
|
2779
2716
|
*/
|
|
2780
|
-
const FormModal = React.forwardRef
|
|
2717
|
+
const FormModal = React.forwardRef(
|
|
2781
2718
|
(
|
|
2782
2719
|
{
|
|
2783
2720
|
open,
|
|
@@ -2793,8 +2730,8 @@ const FormModal = React.forwardRef<HTMLDivElement, FormModalProps>(
|
|
|
2793
2730
|
disableSave = false,
|
|
2794
2731
|
className,
|
|
2795
2732
|
size = "sm",
|
|
2796
|
-
},
|
|
2797
|
-
ref
|
|
2733
|
+
}: FormModalProps,
|
|
2734
|
+
ref: React.Ref<HTMLDivElement>
|
|
2798
2735
|
) => {
|
|
2799
2736
|
const handleSave = () => {
|
|
2800
2737
|
onSave?.();
|
|
@@ -2868,8 +2805,8 @@ export interface ImageMediaProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
|
2868
2805
|
maxHeight?: number | string;
|
|
2869
2806
|
}
|
|
2870
2807
|
|
|
2871
|
-
const ImageMedia = React.forwardRef
|
|
2872
|
-
({ className, src, alt = "Image", maxHeight = 280, ...props }, ref) => {
|
|
2808
|
+
const ImageMedia = React.forwardRef(
|
|
2809
|
+
({ className, src, alt = "Image", maxHeight = 280, ...props }: ImageMediaProps, ref: React.Ref<HTMLDivElement>) => {
|
|
2873
2810
|
const maxHeightStyle =
|
|
2874
2811
|
typeof maxHeight === "number" ? \`\${maxHeight}px\` : maxHeight;
|
|
2875
2812
|
|
|
@@ -2904,9 +2841,9 @@ const inputVariants = cva(
|
|
|
2904
2841
|
variants: {
|
|
2905
2842
|
state: {
|
|
2906
2843
|
default:
|
|
2907
|
-
"border border-semantic-border-input
|
|
2844
|
+
"border border-semantic-border-input focus:outline-none focus:border-semantic-border-input-focus focus:shadow-[0_0_0_1px_rgba(43,188,202,0.15)]",
|
|
2908
2845
|
error:
|
|
2909
|
-
"border border-semantic-error-primary/40
|
|
2846
|
+
"border border-semantic-error-primary/40 focus:outline-none focus:border-semantic-error-primary focus:shadow-[0_0_0_1px_rgba(240,68,56,0.1)]",
|
|
2910
2847
|
},
|
|
2911
2848
|
},
|
|
2912
2849
|
defaultVariants: {
|
|
@@ -2933,8 +2870,8 @@ export interface InputProps
|
|
|
2933
2870
|
showCheckIcon?: boolean;
|
|
2934
2871
|
}
|
|
2935
2872
|
|
|
2936
|
-
const Input = React.forwardRef
|
|
2937
|
-
({ className, state, type, showCheckIcon, onFocus, onBlur, onWheel, ...props }, ref) => {
|
|
2873
|
+
const Input = React.forwardRef(
|
|
2874
|
+
({ className, state, type, showCheckIcon, onFocus, onBlur, onWheel, ...props }: InputProps, ref: React.Ref<HTMLInputElement>) => {
|
|
2938
2875
|
const [isFocused, setIsFocused] = React.useState(false);
|
|
2939
2876
|
|
|
2940
2877
|
const inputEl = (
|
|
@@ -3078,7 +3015,7 @@ export interface MultiSelectProps extends VariantProps<
|
|
|
3078
3015
|
* />
|
|
3079
3016
|
* \`\`\`
|
|
3080
3017
|
*/
|
|
3081
|
-
const MultiSelect = React.forwardRef
|
|
3018
|
+
const MultiSelect = React.forwardRef(
|
|
3082
3019
|
(
|
|
3083
3020
|
{
|
|
3084
3021
|
label,
|
|
@@ -3101,8 +3038,8 @@ const MultiSelect = React.forwardRef<HTMLButtonElement, MultiSelectProps>(
|
|
|
3101
3038
|
state,
|
|
3102
3039
|
id,
|
|
3103
3040
|
name,
|
|
3104
|
-
},
|
|
3105
|
-
ref
|
|
3041
|
+
}: MultiSelectProps,
|
|
3042
|
+
ref: React.Ref<HTMLButtonElement>
|
|
3106
3043
|
) => {
|
|
3107
3044
|
// Internal state for selected values (uncontrolled mode)
|
|
3108
3045
|
const [internalValue, setInternalValue] =
|
|
@@ -3500,7 +3437,7 @@ export interface PageHeaderProps
|
|
|
3500
3437
|
mobileOverflowLimit?: number;
|
|
3501
3438
|
}
|
|
3502
3439
|
|
|
3503
|
-
const PageHeader = React.forwardRef
|
|
3440
|
+
const PageHeader = React.forwardRef(
|
|
3504
3441
|
(
|
|
3505
3442
|
{
|
|
3506
3443
|
className,
|
|
@@ -3516,8 +3453,8 @@ const PageHeader = React.forwardRef<HTMLDivElement, PageHeaderProps>(
|
|
|
3516
3453
|
layout = "responsive",
|
|
3517
3454
|
mobileOverflowLimit = 2,
|
|
3518
3455
|
...props
|
|
3519
|
-
},
|
|
3520
|
-
ref
|
|
3456
|
+
}: PageHeaderProps,
|
|
3457
|
+
ref: React.Ref<HTMLDivElement>
|
|
3521
3458
|
) => {
|
|
3522
3459
|
// State for overflow expansion (moved to top level)
|
|
3523
3460
|
const [isOverflowExpanded, setIsOverflowExpanded] = React.useState(false);
|
|
@@ -4083,7 +4020,7 @@ export interface PanelProps
|
|
|
4083
4020
|
* </Panel>
|
|
4084
4021
|
* \`\`\`
|
|
4085
4022
|
*/
|
|
4086
|
-
const Panel = React.forwardRef
|
|
4023
|
+
const Panel = React.forwardRef(
|
|
4087
4024
|
(
|
|
4088
4025
|
{
|
|
4089
4026
|
open = true,
|
|
@@ -4097,8 +4034,8 @@ const Panel = React.forwardRef<HTMLElement, PanelProps>(
|
|
|
4097
4034
|
"aria-label": ariaLabel,
|
|
4098
4035
|
onKeyDown,
|
|
4099
4036
|
...props
|
|
4100
|
-
},
|
|
4101
|
-
ref
|
|
4037
|
+
}: PanelProps,
|
|
4038
|
+
ref: React.Ref<HTMLElement>
|
|
4102
4039
|
) => {
|
|
4103
4040
|
const resolvedSize = size ?? "default";
|
|
4104
4041
|
const widthClass = panelWidths[resolvedSize];
|
|
@@ -4207,7 +4144,7 @@ export interface PhoneInputProps
|
|
|
4207
4144
|
wrapperClassName?: string;
|
|
4208
4145
|
}
|
|
4209
4146
|
|
|
4210
|
-
const PhoneInput = React.forwardRef
|
|
4147
|
+
const PhoneInput = React.forwardRef(
|
|
4211
4148
|
(
|
|
4212
4149
|
{
|
|
4213
4150
|
className,
|
|
@@ -4218,8 +4155,8 @@ const PhoneInput = React.forwardRef<HTMLInputElement, PhoneInputProps>(
|
|
|
4218
4155
|
wrapperClassName,
|
|
4219
4156
|
disabled,
|
|
4220
4157
|
...props
|
|
4221
|
-
},
|
|
4222
|
-
ref
|
|
4158
|
+
}: PhoneInputProps,
|
|
4159
|
+
ref: React.Ref<HTMLInputElement>
|
|
4223
4160
|
) => {
|
|
4224
4161
|
return (
|
|
4225
4162
|
<div
|
|
@@ -4318,7 +4255,7 @@ export interface ReadableFieldProps
|
|
|
4318
4255
|
* />
|
|
4319
4256
|
* \`\`\`
|
|
4320
4257
|
*/
|
|
4321
|
-
export const ReadableField = React.forwardRef
|
|
4258
|
+
export const ReadableField = React.forwardRef(
|
|
4322
4259
|
(
|
|
4323
4260
|
{
|
|
4324
4261
|
label,
|
|
@@ -4330,8 +4267,8 @@ export const ReadableField = React.forwardRef<HTMLDivElement, ReadableFieldProps
|
|
|
4330
4267
|
className,
|
|
4331
4268
|
inputClassName,
|
|
4332
4269
|
...props
|
|
4333
|
-
},
|
|
4334
|
-
ref
|
|
4270
|
+
}: ReadableFieldProps,
|
|
4271
|
+
ref: React.Ref<HTMLDivElement>
|
|
4335
4272
|
) => {
|
|
4336
4273
|
const [copied, setCopied] = React.useState(false);
|
|
4337
4274
|
const [isVisible, setIsVisible] = React.useState(!secret);
|
|
@@ -4503,8 +4440,8 @@ export interface ReplyQuoteProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
|
4503
4440
|
message: string;
|
|
4504
4441
|
}
|
|
4505
4442
|
|
|
4506
|
-
const ReplyQuote = React.forwardRef
|
|
4507
|
-
({ className, sender, message, onClick, onKeyDown, role, tabIndex, "aria-label": ariaLabel, ...props }, ref) => {
|
|
4443
|
+
const ReplyQuote = React.forwardRef(
|
|
4444
|
+
({ className, sender, message, onClick, onKeyDown, role, tabIndex, "aria-label": ariaLabel, ...props }: ReplyQuoteProps, ref: React.Ref<HTMLDivElement>) => {
|
|
4508
4445
|
const isInteractive = !!onClick;
|
|
4509
4446
|
|
|
4510
4447
|
const handleKeyDown = React.useCallback(
|
|
@@ -4640,7 +4577,7 @@ export interface SelectFieldProps {
|
|
|
4640
4577
|
* />
|
|
4641
4578
|
* \`\`\`
|
|
4642
4579
|
*/
|
|
4643
|
-
const SelectField = React.forwardRef
|
|
4580
|
+
const SelectField = React.forwardRef(
|
|
4644
4581
|
(
|
|
4645
4582
|
{
|
|
4646
4583
|
label,
|
|
@@ -4663,8 +4600,8 @@ const SelectField = React.forwardRef<HTMLButtonElement, SelectFieldProps>(
|
|
|
4663
4600
|
labelClassName,
|
|
4664
4601
|
id,
|
|
4665
4602
|
name,
|
|
4666
|
-
},
|
|
4667
|
-
ref
|
|
4603
|
+
}: SelectFieldProps,
|
|
4604
|
+
ref: React.Ref<HTMLButtonElement>
|
|
4668
4605
|
) => {
|
|
4669
4606
|
// Internal state for search
|
|
4670
4607
|
const [searchQuery, setSearchQuery] = React.useState("");
|
|
@@ -4912,10 +4849,7 @@ const Select = SelectPrimitive.Root;
|
|
|
4912
4849
|
|
|
4913
4850
|
const SelectGroup = SelectPrimitive.Group;
|
|
4914
4851
|
|
|
4915
|
-
const SelectValue = React.forwardRef<
|
|
4916
|
-
React.ElementRef<typeof SelectPrimitive.Value>,
|
|
4917
|
-
React.ComponentPropsWithoutRef<typeof SelectPrimitive.Value>
|
|
4918
|
-
>(({ className, ...props }, ref) => (
|
|
4852
|
+
const SelectValue = React.forwardRef(({ className, ...props }: React.ComponentPropsWithoutRef<typeof SelectPrimitive.Value>, ref: React.Ref<React.ElementRef<typeof SelectPrimitive.Value>>) => (
|
|
4919
4853
|
<SelectPrimitive.Value
|
|
4920
4854
|
ref={ref}
|
|
4921
4855
|
className={cn("[&[data-placeholder]]:text-semantic-text-muted", className)}
|
|
@@ -4929,10 +4863,7 @@ export interface SelectTriggerProps
|
|
|
4929
4863
|
React.ComponentPropsWithoutRef<typeof SelectPrimitive.Trigger>,
|
|
4930
4864
|
VariantProps<typeof selectTriggerVariants> {}
|
|
4931
4865
|
|
|
4932
|
-
const SelectTrigger = React.forwardRef<
|
|
4933
|
-
React.ElementRef<typeof SelectPrimitive.Trigger>,
|
|
4934
|
-
SelectTriggerProps
|
|
4935
|
-
>(({ className, state, children, ...props }, ref) => (
|
|
4866
|
+
const SelectTrigger = React.forwardRef(({ className, state, children, ...props }: SelectTriggerProps, ref: React.Ref<React.ElementRef<typeof SelectPrimitive.Trigger>>) => (
|
|
4936
4867
|
<SelectPrimitive.Trigger
|
|
4937
4868
|
ref={ref}
|
|
4938
4869
|
className={cn(selectTriggerVariants({ state, className }))}
|
|
@@ -4946,10 +4877,7 @@ const SelectTrigger = React.forwardRef<
|
|
|
4946
4877
|
));
|
|
4947
4878
|
SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
|
|
4948
4879
|
|
|
4949
|
-
const SelectScrollUpButton = React.forwardRef<
|
|
4950
|
-
React.ElementRef<typeof SelectPrimitive.ScrollUpButton>,
|
|
4951
|
-
React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollUpButton>
|
|
4952
|
-
>(({ className, ...props }, ref) => (
|
|
4880
|
+
const SelectScrollUpButton = React.forwardRef(({ className, ...props }: React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollUpButton>, ref: React.Ref<React.ElementRef<typeof SelectPrimitive.ScrollUpButton>>) => (
|
|
4953
4881
|
<SelectPrimitive.ScrollUpButton
|
|
4954
4882
|
ref={ref}
|
|
4955
4883
|
className={cn(
|
|
@@ -4963,10 +4891,7 @@ const SelectScrollUpButton = React.forwardRef<
|
|
|
4963
4891
|
));
|
|
4964
4892
|
SelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;
|
|
4965
4893
|
|
|
4966
|
-
const SelectScrollDownButton = React.forwardRef<
|
|
4967
|
-
React.ElementRef<typeof SelectPrimitive.ScrollDownButton>,
|
|
4968
|
-
React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollDownButton>
|
|
4969
|
-
>(({ className, ...props }, ref) => (
|
|
4894
|
+
const SelectScrollDownButton = React.forwardRef(({ className, ...props }: React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollDownButton>, ref: React.Ref<React.ElementRef<typeof SelectPrimitive.ScrollDownButton>>) => (
|
|
4970
4895
|
<SelectPrimitive.ScrollDownButton
|
|
4971
4896
|
ref={ref}
|
|
4972
4897
|
className={cn(
|
|
@@ -5020,10 +4945,7 @@ function useUnlockBodyScroll() {
|
|
|
5020
4945
|
}, []);
|
|
5021
4946
|
}
|
|
5022
4947
|
|
|
5023
|
-
const SelectContent = React.forwardRef<
|
|
5024
|
-
React.ElementRef<typeof SelectPrimitive.Content>,
|
|
5025
|
-
React.ComponentPropsWithoutRef<typeof SelectPrimitive.Content>
|
|
5026
|
-
>(({ className, children, position = "popper", ...props }, ref) => {
|
|
4948
|
+
const SelectContent = React.forwardRef(({ className, children, position = "popper", ...props }: React.ComponentPropsWithoutRef<typeof SelectPrimitive.Content>, ref: React.Ref<React.ElementRef<typeof SelectPrimitive.Content>>) => {
|
|
5027
4949
|
useUnlockBodyScroll();
|
|
5028
4950
|
|
|
5029
4951
|
return (
|
|
@@ -5061,10 +4983,7 @@ const SelectContent = React.forwardRef<
|
|
|
5061
4983
|
});
|
|
5062
4984
|
SelectContent.displayName = SelectPrimitive.Content.displayName;
|
|
5063
4985
|
|
|
5064
|
-
const SelectLabel = React.forwardRef<
|
|
5065
|
-
React.ElementRef<typeof SelectPrimitive.Label>,
|
|
5066
|
-
React.ComponentPropsWithoutRef<typeof SelectPrimitive.Label>
|
|
5067
|
-
>(({ className, ...props }, ref) => (
|
|
4986
|
+
const SelectLabel = React.forwardRef(({ className, ...props }: React.ComponentPropsWithoutRef<typeof SelectPrimitive.Label>, ref: React.Ref<React.ElementRef<typeof SelectPrimitive.Label>>) => (
|
|
5068
4987
|
<SelectPrimitive.Label
|
|
5069
4988
|
ref={ref}
|
|
5070
4989
|
className={cn(
|
|
@@ -5076,10 +4995,7 @@ const SelectLabel = React.forwardRef<
|
|
|
5076
4995
|
));
|
|
5077
4996
|
SelectLabel.displayName = SelectPrimitive.Label.displayName;
|
|
5078
4997
|
|
|
5079
|
-
const SelectItem = React.forwardRef<
|
|
5080
|
-
React.ElementRef<typeof SelectPrimitive.Item>,
|
|
5081
|
-
React.ComponentPropsWithoutRef<typeof SelectPrimitive.Item>
|
|
5082
|
-
>(({ className, children, ...props }, ref) => (
|
|
4998
|
+
const SelectItem = React.forwardRef(({ className, children, ...props }: React.ComponentPropsWithoutRef<typeof SelectPrimitive.Item>, ref: React.Ref<React.ElementRef<typeof SelectPrimitive.Item>>) => (
|
|
5083
4999
|
<SelectPrimitive.Item
|
|
5084
5000
|
ref={ref}
|
|
5085
5001
|
className={cn(
|
|
@@ -5100,10 +5016,7 @@ const SelectItem = React.forwardRef<
|
|
|
5100
5016
|
));
|
|
5101
5017
|
SelectItem.displayName = SelectPrimitive.Item.displayName;
|
|
5102
5018
|
|
|
5103
|
-
const SelectSeparator = React.forwardRef<
|
|
5104
|
-
React.ElementRef<typeof SelectPrimitive.Separator>,
|
|
5105
|
-
React.ComponentPropsWithoutRef<typeof SelectPrimitive.Separator>
|
|
5106
|
-
>(({ className, ...props }, ref) => (
|
|
5019
|
+
const SelectSeparator = React.forwardRef(({ className, ...props }: React.ComponentPropsWithoutRef<typeof SelectPrimitive.Separator>, ref: React.Ref<React.ElementRef<typeof SelectPrimitive.Separator>>) => (
|
|
5107
5020
|
<SelectPrimitive.Separator
|
|
5108
5021
|
ref={ref}
|
|
5109
5022
|
className={cn("-mx-1 my-1 h-px bg-semantic-border-layout", className)}
|
|
@@ -5181,8 +5094,8 @@ export interface SkeletonProps
|
|
|
5181
5094
|
height?: number | string;
|
|
5182
5095
|
}
|
|
5183
5096
|
|
|
5184
|
-
const Skeleton = React.forwardRef
|
|
5185
|
-
({ className, variant, shape, width, height, style, ...props }, ref) => {
|
|
5097
|
+
const Skeleton = React.forwardRef(
|
|
5098
|
+
({ className, variant, shape, width, height, style, ...props }: SkeletonProps, ref: React.Ref<HTMLDivElement>) => {
|
|
5186
5099
|
const dimensionStyle: React.CSSProperties = {
|
|
5187
5100
|
...style,
|
|
5188
5101
|
...(width !== undefined
|
|
@@ -5268,7 +5181,7 @@ export interface SpinnerProps
|
|
|
5268
5181
|
"aria-label"?: string;
|
|
5269
5182
|
}
|
|
5270
5183
|
|
|
5271
|
-
const Spinner = React.forwardRef
|
|
5184
|
+
const Spinner = React.forwardRef(
|
|
5272
5185
|
(
|
|
5273
5186
|
{
|
|
5274
5187
|
className,
|
|
@@ -5276,8 +5189,8 @@ const Spinner = React.forwardRef<HTMLDivElement, SpinnerProps>(
|
|
|
5276
5189
|
variant,
|
|
5277
5190
|
"aria-label": ariaLabel = "Loading",
|
|
5278
5191
|
...props
|
|
5279
|
-
},
|
|
5280
|
-
ref
|
|
5192
|
+
}: SpinnerProps,
|
|
5193
|
+
ref: React.Ref<HTMLDivElement>
|
|
5281
5194
|
) => {
|
|
5282
5195
|
const strokeWidth = strokeWidths[size || "default"] ?? 3;
|
|
5283
5196
|
const radius = 10;
|
|
@@ -5410,13 +5323,10 @@ export interface SwitchProps
|
|
|
5410
5323
|
labelPosition?: "left" | "right";
|
|
5411
5324
|
}
|
|
5412
5325
|
|
|
5413
|
-
const Switch = React.forwardRef
|
|
5414
|
-
React.ElementRef<typeof SwitchPrimitives.Root>,
|
|
5415
|
-
SwitchProps
|
|
5416
|
-
>(
|
|
5326
|
+
const Switch = React.forwardRef(
|
|
5417
5327
|
(
|
|
5418
|
-
{ className, size, label, labelPosition = "right", disabled, ...props },
|
|
5419
|
-
ref
|
|
5328
|
+
{ className, size, label, labelPosition = "right", disabled, ...props }: SwitchProps,
|
|
5329
|
+
ref: React.Ref<React.ElementRef<typeof SwitchPrimitives.Root>>
|
|
5420
5330
|
) => {
|
|
5421
5331
|
const switchElement = (
|
|
5422
5332
|
<SwitchPrimitives.Root
|
|
@@ -5492,8 +5402,8 @@ export interface SystemMessageProps
|
|
|
5492
5402
|
children: string;
|
|
5493
5403
|
}
|
|
5494
5404
|
|
|
5495
|
-
const SystemMessage = React.forwardRef
|
|
5496
|
-
({ className, children, ...props }, ref) => (
|
|
5405
|
+
const SystemMessage = React.forwardRef(
|
|
5406
|
+
({ className, children, ...props }: SystemMessageProps, ref: React.Ref<HTMLDivElement>) => (
|
|
5497
5407
|
<div
|
|
5498
5408
|
ref={ref}
|
|
5499
5409
|
className={cn("flex justify-center my-1", className)}
|
|
@@ -5571,8 +5481,8 @@ export interface TableProps
|
|
|
5571
5481
|
wrapContent?: boolean;
|
|
5572
5482
|
}
|
|
5573
5483
|
|
|
5574
|
-
const Table = React.forwardRef
|
|
5575
|
-
({ className, size, withoutBorder, wrapContent, ...props }, ref) => (
|
|
5484
|
+
const Table = React.forwardRef(
|
|
5485
|
+
({ className, size, withoutBorder, wrapContent, ...props }: TableProps, ref: React.Ref<HTMLTableElement>) => (
|
|
5576
5486
|
<div
|
|
5577
5487
|
className={cn(
|
|
5578
5488
|
"relative w-full overflow-auto",
|
|
@@ -5593,10 +5503,7 @@ const Table = React.forwardRef<HTMLTableElement, TableProps>(
|
|
|
5593
5503
|
);
|
|
5594
5504
|
Table.displayName = "Table";
|
|
5595
5505
|
|
|
5596
|
-
const TableHeader = React.forwardRef<
|
|
5597
|
-
HTMLTableSectionElement,
|
|
5598
|
-
React.HTMLAttributes<HTMLTableSectionElement>
|
|
5599
|
-
>(({ className, ...props }, ref) => (
|
|
5506
|
+
const TableHeader = React.forwardRef(({ className, ...props }: React.HTMLAttributes<HTMLTableSectionElement>, ref: React.Ref<HTMLTableSectionElement>) => (
|
|
5600
5507
|
<thead
|
|
5601
5508
|
ref={ref}
|
|
5602
5509
|
className={cn("bg-[var(--color-neutral-100)] [&_tr]:border-b", className)}
|
|
@@ -5615,8 +5522,8 @@ export interface TableBodyProps
|
|
|
5615
5522
|
loadingColumns?: number;
|
|
5616
5523
|
}
|
|
5617
5524
|
|
|
5618
|
-
const TableBody = React.forwardRef
|
|
5619
|
-
({ className, isLoading, loadingRows = 5, loadingColumns = 5, children, ...props }, ref) => (
|
|
5525
|
+
const TableBody = React.forwardRef(
|
|
5526
|
+
({ className, isLoading, loadingRows = 5, loadingColumns = 5, children, ...props }: TableBodyProps, ref: React.Ref<HTMLTableSectionElement>) => (
|
|
5620
5527
|
<tbody
|
|
5621
5528
|
ref={ref}
|
|
5622
5529
|
className={cn("[&_tr:last-child]:border-0", className)}
|
|
@@ -5632,10 +5539,7 @@ const TableBody = React.forwardRef<HTMLTableSectionElement, TableBodyProps>(
|
|
|
5632
5539
|
);
|
|
5633
5540
|
TableBody.displayName = "TableBody";
|
|
5634
5541
|
|
|
5635
|
-
const TableFooter = React.forwardRef<
|
|
5636
|
-
HTMLTableSectionElement,
|
|
5637
|
-
React.HTMLAttributes<HTMLTableSectionElement>
|
|
5638
|
-
>(({ className, ...props }, ref) => (
|
|
5542
|
+
const TableFooter = React.forwardRef(({ className, ...props }: React.HTMLAttributes<HTMLTableSectionElement>, ref: React.Ref<HTMLTableSectionElement>) => (
|
|
5639
5543
|
<tfoot
|
|
5640
5544
|
ref={ref}
|
|
5641
5545
|
className={cn(
|
|
@@ -5652,8 +5556,8 @@ export interface TableRowProps extends React.HTMLAttributes<HTMLTableRowElement>
|
|
|
5652
5556
|
highlighted?: boolean;
|
|
5653
5557
|
}
|
|
5654
5558
|
|
|
5655
|
-
const TableRow = React.forwardRef
|
|
5656
|
-
({ className, highlighted, ...props }, ref) => (
|
|
5559
|
+
const TableRow = React.forwardRef(
|
|
5560
|
+
({ className, highlighted, ...props }: TableRowProps, ref: React.Ref<HTMLTableRowElement>) => (
|
|
5657
5561
|
<tr
|
|
5658
5562
|
ref={ref}
|
|
5659
5563
|
className={cn(
|
|
@@ -5678,10 +5582,10 @@ export interface TableHeadProps extends React.ThHTMLAttributes<HTMLTableCellElem
|
|
|
5678
5582
|
infoTooltip?: string;
|
|
5679
5583
|
}
|
|
5680
5584
|
|
|
5681
|
-
const TableHead = React.forwardRef
|
|
5585
|
+
const TableHead = React.forwardRef(
|
|
5682
5586
|
(
|
|
5683
|
-
{ className, sticky, sortDirection, infoTooltip, children, ...props },
|
|
5684
|
-
ref
|
|
5587
|
+
{ className, sticky, sortDirection, infoTooltip, children, ...props }: TableHeadProps,
|
|
5588
|
+
ref: React.Ref<HTMLTableCellElement>
|
|
5685
5589
|
) => (
|
|
5686
5590
|
<th
|
|
5687
5591
|
ref={ref}
|
|
@@ -5719,8 +5623,8 @@ export interface TableCellProps extends React.TdHTMLAttributes<HTMLTableCellElem
|
|
|
5719
5623
|
sticky?: boolean;
|
|
5720
5624
|
}
|
|
5721
5625
|
|
|
5722
|
-
const TableCell = React.forwardRef
|
|
5723
|
-
({ className, sticky, ...props }, ref) => (
|
|
5626
|
+
const TableCell = React.forwardRef(
|
|
5627
|
+
({ className, sticky, ...props }: TableCellProps, ref: React.Ref<HTMLTableCellElement>) => (
|
|
5724
5628
|
<td
|
|
5725
5629
|
ref={ref}
|
|
5726
5630
|
className={cn(
|
|
@@ -5734,10 +5638,7 @@ const TableCell = React.forwardRef<HTMLTableCellElement, TableCellProps>(
|
|
|
5734
5638
|
);
|
|
5735
5639
|
TableCell.displayName = "TableCell";
|
|
5736
5640
|
|
|
5737
|
-
const TableCaption = React.forwardRef<
|
|
5738
|
-
HTMLTableCaptionElement,
|
|
5739
|
-
React.HTMLAttributes<HTMLTableCaptionElement>
|
|
5740
|
-
>(({ className, ...props }, ref) => (
|
|
5641
|
+
const TableCaption = React.forwardRef(({ className, ...props }: React.HTMLAttributes<HTMLTableCaptionElement>, ref: React.Ref<HTMLTableCaptionElement>) => (
|
|
5741
5642
|
<caption
|
|
5742
5643
|
ref={ref}
|
|
5743
5644
|
className={cn("mt-4 text-sm text-semantic-text-muted", className)}
|
|
@@ -5826,8 +5727,8 @@ export interface TableToggleProps extends Omit<SwitchProps, "size"> {
|
|
|
5826
5727
|
size?: "sm" | "default";
|
|
5827
5728
|
}
|
|
5828
5729
|
|
|
5829
|
-
const TableToggle = React.forwardRef
|
|
5830
|
-
({ size = "sm", ...props }, ref) => (
|
|
5730
|
+
const TableToggle = React.forwardRef(
|
|
5731
|
+
({ size = "sm", ...props }: TableToggleProps, ref: React.Ref<HTMLButtonElement>) => (
|
|
5831
5732
|
<Switch ref={ref} size={size} {...props} />
|
|
5832
5733
|
)
|
|
5833
5734
|
);
|
|
@@ -5877,10 +5778,7 @@ export interface TabsListProps
|
|
|
5877
5778
|
fullWidth?: boolean
|
|
5878
5779
|
}
|
|
5879
5780
|
|
|
5880
|
-
const TabsList = React.forwardRef<
|
|
5881
|
-
React.ComponentRef<typeof TabsPrimitive.List>,
|
|
5882
|
-
TabsListProps
|
|
5883
|
-
>(({ className, fullWidth, ...props }, ref) => (
|
|
5781
|
+
const TabsList = React.forwardRef(({ className, fullWidth, ...props }: TabsListProps, ref: React.Ref<React.ComponentRef<typeof TabsPrimitive.List>>) => (
|
|
5884
5782
|
<TabsPrimitive.List
|
|
5885
5783
|
ref={ref}
|
|
5886
5784
|
className={cn(
|
|
@@ -5893,10 +5791,7 @@ const TabsList = React.forwardRef<
|
|
|
5893
5791
|
))
|
|
5894
5792
|
TabsList.displayName = TabsPrimitive.List.displayName
|
|
5895
5793
|
|
|
5896
|
-
const TabsTrigger = React.forwardRef<
|
|
5897
|
-
React.ComponentRef<typeof TabsPrimitive.Trigger>,
|
|
5898
|
-
React.ComponentPropsWithoutRef<typeof TabsPrimitive.Trigger>
|
|
5899
|
-
>(({ className, ...props }, ref) => (
|
|
5794
|
+
const TabsTrigger = React.forwardRef(({ className, ...props }: React.ComponentPropsWithoutRef<typeof TabsPrimitive.Trigger>, ref: React.Ref<React.ComponentRef<typeof TabsPrimitive.Trigger>>) => (
|
|
5900
5795
|
<TabsPrimitive.Trigger
|
|
5901
5796
|
ref={ref}
|
|
5902
5797
|
className={cn(
|
|
@@ -5911,10 +5806,7 @@ const TabsTrigger = React.forwardRef<
|
|
|
5911
5806
|
))
|
|
5912
5807
|
TabsTrigger.displayName = TabsPrimitive.Trigger.displayName
|
|
5913
5808
|
|
|
5914
|
-
const TabsContent = React.forwardRef<
|
|
5915
|
-
React.ComponentRef<typeof TabsPrimitive.Content>,
|
|
5916
|
-
React.ComponentPropsWithoutRef<typeof TabsPrimitive.Content>
|
|
5917
|
-
>(({ className, ...props }, ref) => (
|
|
5809
|
+
const TabsContent = React.forwardRef(({ className, ...props }: React.ComponentPropsWithoutRef<typeof TabsPrimitive.Content>, ref: React.Ref<React.ComponentRef<typeof TabsPrimitive.Content>>) => (
|
|
5918
5810
|
<TabsPrimitive.Content
|
|
5919
5811
|
ref={ref}
|
|
5920
5812
|
className={cn(
|
|
@@ -5978,8 +5870,8 @@ export interface TagProps
|
|
|
5978
5870
|
label?: string;
|
|
5979
5871
|
}
|
|
5980
5872
|
|
|
5981
|
-
const Tag = React.forwardRef
|
|
5982
|
-
({ className, variant, size, label, children, ...props }, ref) => {
|
|
5873
|
+
const Tag = React.forwardRef(
|
|
5874
|
+
({ className, variant, size, label, children, ...props }: TagProps, ref: React.Ref<HTMLSpanElement>) => {
|
|
5983
5875
|
return (
|
|
5984
5876
|
<span
|
|
5985
5877
|
className={cn(tagVariants({ variant, size, className }))}
|
|
@@ -5987,7 +5879,7 @@ const Tag = React.forwardRef<HTMLSpanElement, TagProps>(
|
|
|
5987
5879
|
{...props}
|
|
5988
5880
|
>
|
|
5989
5881
|
{label && <span className="font-semibold mr-1">{label}</span>}
|
|
5990
|
-
<span className="font-normal">{children}</span>
|
|
5882
|
+
<span className="font-normal inline-flex items-center gap-1">{children}</span>
|
|
5991
5883
|
</span>
|
|
5992
5884
|
);
|
|
5993
5885
|
}
|
|
@@ -6064,16 +5956,7 @@ TagGroup.displayName = "TagGroup";
|
|
|
6064
5956
|
|
|
6065
5957
|
export { Tag, TagGroup, tagVariants };
|
|
6066
5958
|
`,
|
|
6067
|
-
"text-field": `import
|
|
6068
|
-
forwardRef,
|
|
6069
|
-
useRef,
|
|
6070
|
-
useCallback,
|
|
6071
|
-
useState,
|
|
6072
|
-
useId,
|
|
6073
|
-
type ChangeEvent,
|
|
6074
|
-
type ReactNode,
|
|
6075
|
-
type ComponentProps,
|
|
6076
|
-
} from "react";
|
|
5959
|
+
"text-field": `import * as React from "react";
|
|
6077
5960
|
import { cva, type VariantProps } from "class-variance-authority";
|
|
6078
5961
|
import { Loader2, X } from "lucide-react";
|
|
6079
5962
|
|
|
@@ -6088,9 +5971,9 @@ const textFieldContainerVariants = cva(
|
|
|
6088
5971
|
variants: {
|
|
6089
5972
|
state: {
|
|
6090
5973
|
default:
|
|
6091
|
-
"border border-semantic-border-input focus-within:border-semantic-border-input-focus
|
|
5974
|
+
"border border-semantic-border-input focus-within:border-semantic-border-input-focus focus-within:shadow-[0_0_0_1px_rgba(43,188,202,0.15)]",
|
|
6092
5975
|
error:
|
|
6093
|
-
"border border-semantic-error-primary/40 focus-within:border-semantic-error-primary
|
|
5976
|
+
"border border-semantic-error-primary/40 focus-within:border-semantic-error-primary focus-within:shadow-[0_0_0_1px_rgba(240,68,56,0.1)]",
|
|
6094
5977
|
},
|
|
6095
5978
|
disabled: {
|
|
6096
5979
|
true: "cursor-not-allowed opacity-50 bg-[var(--color-neutral-50)]",
|
|
@@ -6113,9 +5996,9 @@ const textFieldInputVariants = cva(
|
|
|
6113
5996
|
variants: {
|
|
6114
5997
|
state: {
|
|
6115
5998
|
default:
|
|
6116
|
-
"border border-semantic-border-input focus:outline-none focus:border-semantic-border-input-focus
|
|
5999
|
+
"border border-semantic-border-input focus:outline-none focus:border-semantic-border-input-focus focus:shadow-[0_0_0_1px_rgba(43,188,202,0.15)]",
|
|
6117
6000
|
error:
|
|
6118
|
-
"border border-semantic-error-primary/40 focus:outline-none focus:border-semantic-error-primary
|
|
6001
|
+
"border border-semantic-error-primary/40 focus:outline-none focus:border-semantic-error-primary focus:shadow-[0_0_0_1px_rgba(240,68,56,0.1)]",
|
|
6119
6002
|
},
|
|
6120
6003
|
size: {
|
|
6121
6004
|
default: "h-[42px] px-4 py-2 text-base file:text-base",
|
|
@@ -6141,7 +6024,7 @@ const textFieldInputVariants = cva(
|
|
|
6141
6024
|
*/
|
|
6142
6025
|
export interface TextFieldProps
|
|
6143
6026
|
extends
|
|
6144
|
-
Omit<ComponentProps<"input">, "size">,
|
|
6027
|
+
Omit<React.ComponentProps<"input">, "size">,
|
|
6145
6028
|
VariantProps<typeof textFieldInputVariants> {
|
|
6146
6029
|
/** Size of the text field \u2014 \`default\` (42px) or \`sm\` (36px, compact) */
|
|
6147
6030
|
size?: "default" | "sm";
|
|
@@ -6154,9 +6037,9 @@ export interface TextFieldProps
|
|
|
6154
6037
|
/** Error message - shows error state with red styling */
|
|
6155
6038
|
error?: string;
|
|
6156
6039
|
/** Icon displayed on the left inside the input */
|
|
6157
|
-
leftIcon?: ReactNode;
|
|
6040
|
+
leftIcon?: React.ReactNode;
|
|
6158
6041
|
/** Icon displayed on the right inside the input */
|
|
6159
|
-
rightIcon?: ReactNode;
|
|
6042
|
+
rightIcon?: React.ReactNode;
|
|
6160
6043
|
/** Text prefix inside input (e.g., "https://") */
|
|
6161
6044
|
prefix?: string;
|
|
6162
6045
|
/** Text suffix inside input (e.g., ".com") */
|
|
@@ -6177,7 +6060,7 @@ export interface TextFieldProps
|
|
|
6177
6060
|
inputContainerClassName?: string;
|
|
6178
6061
|
}
|
|
6179
6062
|
|
|
6180
|
-
const TextField = forwardRef
|
|
6063
|
+
const TextField = React.forwardRef(
|
|
6181
6064
|
(
|
|
6182
6065
|
{
|
|
6183
6066
|
className,
|
|
@@ -6207,22 +6090,22 @@ const TextField = forwardRef<HTMLInputElement, TextFieldProps>(
|
|
|
6207
6090
|
id,
|
|
6208
6091
|
type,
|
|
6209
6092
|
...props
|
|
6210
|
-
},
|
|
6211
|
-
ref
|
|
6093
|
+
}: TextFieldProps,
|
|
6094
|
+
ref: React.ForwardedRef<HTMLInputElement>
|
|
6212
6095
|
) => {
|
|
6213
6096
|
// Internal ref for programmatic control (e.g., clearable)
|
|
6214
|
-
const internalRef = useRef<HTMLInputElement>(null);
|
|
6215
|
-
const mergedRef = useCallback(
|
|
6097
|
+
const internalRef = React.useRef<HTMLInputElement | null>(null);
|
|
6098
|
+
const mergedRef = React.useCallback(
|
|
6216
6099
|
(node: HTMLInputElement | null) => {
|
|
6217
6100
|
internalRef.current = node;
|
|
6218
6101
|
if (typeof ref === "function") ref(node);
|
|
6219
|
-
else if (ref) ref.current = node;
|
|
6102
|
+
else if (ref && typeof ref === "object") ref.current = node;
|
|
6220
6103
|
},
|
|
6221
6104
|
[ref]
|
|
6222
6105
|
);
|
|
6223
6106
|
|
|
6224
6107
|
// Internal state for character count in uncontrolled mode
|
|
6225
|
-
const [internalValue, setInternalValue] = useState(
|
|
6108
|
+
const [internalValue, setInternalValue] = React.useState(
|
|
6226
6109
|
defaultValue ?? ""
|
|
6227
6110
|
);
|
|
6228
6111
|
|
|
@@ -6234,7 +6117,7 @@ const TextField = forwardRef<HTMLInputElement, TextFieldProps>(
|
|
|
6234
6117
|
const derivedState = error ? "error" : (state ?? "default");
|
|
6235
6118
|
|
|
6236
6119
|
// Handle change for both controlled and uncontrolled
|
|
6237
|
-
const handleChange = (e: ChangeEvent<HTMLInputElement>) => {
|
|
6120
|
+
const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {
|
|
6238
6121
|
if (!isControlled) {
|
|
6239
6122
|
setInternalValue(e.target.value);
|
|
6240
6123
|
}
|
|
@@ -6261,7 +6144,7 @@ const TextField = forwardRef<HTMLInputElement, TextFieldProps>(
|
|
|
6261
6144
|
const charCount = String(currentValue).length;
|
|
6262
6145
|
|
|
6263
6146
|
// Generate unique IDs for accessibility
|
|
6264
|
-
const generatedId = useId();
|
|
6147
|
+
const generatedId = React.useId();
|
|
6265
6148
|
const inputId = id || generatedId;
|
|
6266
6149
|
const helperId = \`\${inputId}-helper\`;
|
|
6267
6150
|
const errorId = \`\${inputId}-error\`;
|
|
@@ -6380,12 +6263,12 @@ const TextField = forwardRef<HTMLInputElement, TextFieldProps>(
|
|
|
6380
6263
|
{error ? (
|
|
6381
6264
|
<span
|
|
6382
6265
|
id={errorId}
|
|
6383
|
-
className="text-
|
|
6266
|
+
className="text-sm text-semantic-error-primary"
|
|
6384
6267
|
>
|
|
6385
6268
|
{error}
|
|
6386
6269
|
</span>
|
|
6387
6270
|
) : helperText ? (
|
|
6388
|
-
<span id={helperId} className="text-
|
|
6271
|
+
<span id={helperId} className="text-sm text-semantic-text-muted">
|
|
6389
6272
|
{helperText}
|
|
6390
6273
|
</span>
|
|
6391
6274
|
) : (
|
|
@@ -6394,7 +6277,7 @@ const TextField = forwardRef<HTMLInputElement, TextFieldProps>(
|
|
|
6394
6277
|
{showCount && maxLength && (
|
|
6395
6278
|
<span
|
|
6396
6279
|
className={cn(
|
|
6397
|
-
"text-
|
|
6280
|
+
"text-sm",
|
|
6398
6281
|
charCount > maxLength
|
|
6399
6282
|
? "text-semantic-error-primary"
|
|
6400
6283
|
: "text-semantic-text-muted"
|
|
@@ -6412,6 +6295,210 @@ const TextField = forwardRef<HTMLInputElement, TextFieldProps>(
|
|
|
6412
6295
|
TextField.displayName = "TextField";
|
|
6413
6296
|
|
|
6414
6297
|
export { TextField, textFieldContainerVariants, textFieldInputVariants };
|
|
6298
|
+
`,
|
|
6299
|
+
"textarea": `import * as React from "react";
|
|
6300
|
+
import { cva, type VariantProps } from "class-variance-authority";
|
|
6301
|
+
|
|
6302
|
+
import { cn } from "@/lib/utils";
|
|
6303
|
+
|
|
6304
|
+
/**
|
|
6305
|
+
* Textarea variants for different visual states
|
|
6306
|
+
*/
|
|
6307
|
+
const textareaVariants = cva(
|
|
6308
|
+
"w-full rounded bg-semantic-bg-primary text-semantic-text-primary outline-none transition-all placeholder:text-semantic-text-placeholder disabled:cursor-not-allowed disabled:opacity-50 disabled:bg-[var(--color-neutral-50)]",
|
|
6309
|
+
{
|
|
6310
|
+
variants: {
|
|
6311
|
+
state: {
|
|
6312
|
+
default:
|
|
6313
|
+
"border border-semantic-border-input focus:outline-none focus:border-semantic-border-input-focus focus:shadow-[0_0_0_1px_rgba(43,188,202,0.15)]",
|
|
6314
|
+
error:
|
|
6315
|
+
"border border-semantic-error-primary/40 focus:outline-none focus:border-semantic-error-primary focus:shadow-[0_0_0_1px_rgba(240,68,56,0.1)]",
|
|
6316
|
+
},
|
|
6317
|
+
size: {
|
|
6318
|
+
default: "px-4 py-2.5 text-base",
|
|
6319
|
+
sm: "px-3 py-2 text-sm",
|
|
6320
|
+
},
|
|
6321
|
+
},
|
|
6322
|
+
defaultVariants: {
|
|
6323
|
+
state: "default",
|
|
6324
|
+
size: "default",
|
|
6325
|
+
},
|
|
6326
|
+
}
|
|
6327
|
+
);
|
|
6328
|
+
|
|
6329
|
+
/**
|
|
6330
|
+
* A multi-line text input with label, error state, helper text, character counter, and resize control.
|
|
6331
|
+
*
|
|
6332
|
+
* @example
|
|
6333
|
+
* \`\`\`tsx
|
|
6334
|
+
* <Textarea label="Description" placeholder="Enter description" />
|
|
6335
|
+
* <Textarea label="Notes" error="Too short" showCount maxLength={500} />
|
|
6336
|
+
* <Textarea label="JSON" rows={8} resize="vertical" />
|
|
6337
|
+
* \`\`\`
|
|
6338
|
+
*/
|
|
6339
|
+
export interface TextareaProps
|
|
6340
|
+
extends Omit<React.ComponentProps<"textarea">, "size">,
|
|
6341
|
+
VariantProps<typeof textareaVariants> {
|
|
6342
|
+
/** Size of the textarea \u2014 \`default\` or \`sm\` (compact) */
|
|
6343
|
+
size?: "default" | "sm";
|
|
6344
|
+
/** Label text displayed above the textarea */
|
|
6345
|
+
label?: string;
|
|
6346
|
+
/** Shows red asterisk next to label when true */
|
|
6347
|
+
required?: boolean;
|
|
6348
|
+
/** Helper text displayed below the textarea */
|
|
6349
|
+
helperText?: string;
|
|
6350
|
+
/** Error message \u2014 shows error state with red styling */
|
|
6351
|
+
error?: string;
|
|
6352
|
+
/** Shows character count when maxLength is set */
|
|
6353
|
+
showCount?: boolean;
|
|
6354
|
+
/** Controls CSS resize behavior. Defaults to "none" */
|
|
6355
|
+
resize?: "none" | "vertical" | "horizontal" | "both";
|
|
6356
|
+
/** Additional class for the wrapper container */
|
|
6357
|
+
wrapperClassName?: string;
|
|
6358
|
+
/** Additional class for the label */
|
|
6359
|
+
labelClassName?: string;
|
|
6360
|
+
}
|
|
6361
|
+
|
|
6362
|
+
const Textarea = React.forwardRef(
|
|
6363
|
+
(
|
|
6364
|
+
{
|
|
6365
|
+
className,
|
|
6366
|
+
wrapperClassName,
|
|
6367
|
+
labelClassName,
|
|
6368
|
+
state,
|
|
6369
|
+
size,
|
|
6370
|
+
label,
|
|
6371
|
+
required,
|
|
6372
|
+
helperText,
|
|
6373
|
+
error,
|
|
6374
|
+
showCount,
|
|
6375
|
+
resize = "none",
|
|
6376
|
+
maxLength,
|
|
6377
|
+
rows = 4,
|
|
6378
|
+
value,
|
|
6379
|
+
defaultValue,
|
|
6380
|
+
onChange,
|
|
6381
|
+
disabled,
|
|
6382
|
+
id,
|
|
6383
|
+
...props
|
|
6384
|
+
}: TextareaProps,
|
|
6385
|
+
ref: React.ForwardedRef<HTMLTextAreaElement>
|
|
6386
|
+
) => {
|
|
6387
|
+
// Internal state for character count in uncontrolled mode
|
|
6388
|
+
const [internalValue, setInternalValue] = React.useState(
|
|
6389
|
+
defaultValue ?? ""
|
|
6390
|
+
);
|
|
6391
|
+
|
|
6392
|
+
// Determine if controlled
|
|
6393
|
+
const isControlled = value !== undefined;
|
|
6394
|
+
const currentValue = isControlled ? value : internalValue;
|
|
6395
|
+
|
|
6396
|
+
// Derive state from props
|
|
6397
|
+
const derivedState = error ? "error" : (state ?? "default");
|
|
6398
|
+
|
|
6399
|
+
// Handle change for both controlled and uncontrolled
|
|
6400
|
+
const handleChange = (e: React.ChangeEvent<HTMLTextAreaElement>) => {
|
|
6401
|
+
if (!isControlled) {
|
|
6402
|
+
setInternalValue(e.target.value);
|
|
6403
|
+
}
|
|
6404
|
+
onChange?.(e);
|
|
6405
|
+
};
|
|
6406
|
+
|
|
6407
|
+
// Character count
|
|
6408
|
+
const charCount = String(currentValue).length;
|
|
6409
|
+
|
|
6410
|
+
// Generate unique IDs for accessibility
|
|
6411
|
+
const generatedId = React.useId();
|
|
6412
|
+
const textareaId = id || generatedId;
|
|
6413
|
+
const helperId = \`\${textareaId}-helper\`;
|
|
6414
|
+
const errorId = \`\${textareaId}-error\`;
|
|
6415
|
+
|
|
6416
|
+
// Determine aria-describedby
|
|
6417
|
+
const ariaDescribedBy = error ? errorId : helperText ? helperId : undefined;
|
|
6418
|
+
|
|
6419
|
+
// Resize class map
|
|
6420
|
+
const resizeClasses: Record<string, string> = {
|
|
6421
|
+
none: "resize-none",
|
|
6422
|
+
vertical: "resize-y",
|
|
6423
|
+
horizontal: "resize-x",
|
|
6424
|
+
both: "resize",
|
|
6425
|
+
};
|
|
6426
|
+
|
|
6427
|
+
return (
|
|
6428
|
+
<div className={cn("flex flex-col gap-1", wrapperClassName)}>
|
|
6429
|
+
{/* Label */}
|
|
6430
|
+
{label && (
|
|
6431
|
+
<label
|
|
6432
|
+
htmlFor={textareaId}
|
|
6433
|
+
className={cn(
|
|
6434
|
+
"text-sm font-medium text-semantic-text-muted",
|
|
6435
|
+
labelClassName
|
|
6436
|
+
)}
|
|
6437
|
+
>
|
|
6438
|
+
{label}
|
|
6439
|
+
{required && (
|
|
6440
|
+
<span className="text-semantic-error-primary ml-0.5">*</span>
|
|
6441
|
+
)}
|
|
6442
|
+
</label>
|
|
6443
|
+
)}
|
|
6444
|
+
|
|
6445
|
+
{/* Textarea */}
|
|
6446
|
+
<textarea
|
|
6447
|
+
ref={ref}
|
|
6448
|
+
id={textareaId}
|
|
6449
|
+
rows={rows}
|
|
6450
|
+
className={cn(
|
|
6451
|
+
textareaVariants({ state: derivedState, size, className }),
|
|
6452
|
+
resizeClasses[resize]
|
|
6453
|
+
)}
|
|
6454
|
+
disabled={disabled}
|
|
6455
|
+
maxLength={maxLength}
|
|
6456
|
+
value={isControlled ? value : undefined}
|
|
6457
|
+
defaultValue={!isControlled ? defaultValue : undefined}
|
|
6458
|
+
onChange={handleChange}
|
|
6459
|
+
aria-invalid={!!error}
|
|
6460
|
+
aria-describedby={ariaDescribedBy}
|
|
6461
|
+
{...props}
|
|
6462
|
+
/>
|
|
6463
|
+
|
|
6464
|
+
{/* Helper text / Error message / Character count */}
|
|
6465
|
+
{(error || helperText || (showCount && maxLength)) && (
|
|
6466
|
+
<div className="flex justify-between items-start gap-2">
|
|
6467
|
+
{error ? (
|
|
6468
|
+
<span
|
|
6469
|
+
id={errorId}
|
|
6470
|
+
className="text-sm text-semantic-error-primary"
|
|
6471
|
+
>
|
|
6472
|
+
{error}
|
|
6473
|
+
</span>
|
|
6474
|
+
) : helperText ? (
|
|
6475
|
+
<span id={helperId} className="text-sm text-semantic-text-muted">
|
|
6476
|
+
{helperText}
|
|
6477
|
+
</span>
|
|
6478
|
+
) : (
|
|
6479
|
+
<span />
|
|
6480
|
+
)}
|
|
6481
|
+
{showCount && maxLength && (
|
|
6482
|
+
<span
|
|
6483
|
+
className={cn(
|
|
6484
|
+
"text-sm",
|
|
6485
|
+
charCount > maxLength
|
|
6486
|
+
? "text-semantic-error-primary"
|
|
6487
|
+
: "text-semantic-text-muted"
|
|
6488
|
+
)}
|
|
6489
|
+
>
|
|
6490
|
+
{charCount}/{maxLength}
|
|
6491
|
+
</span>
|
|
6492
|
+
)}
|
|
6493
|
+
</div>
|
|
6494
|
+
)}
|
|
6495
|
+
</div>
|
|
6496
|
+
);
|
|
6497
|
+
}
|
|
6498
|
+
);
|
|
6499
|
+
Textarea.displayName = "Textarea";
|
|
6500
|
+
|
|
6501
|
+
export { Textarea, textareaVariants };
|
|
6415
6502
|
`,
|
|
6416
6503
|
"toast": `import * as React from "react";
|
|
6417
6504
|
import * as ToastPrimitives from "@radix-ui/react-toast";
|
|
@@ -6422,10 +6509,7 @@ import { cn } from "@/lib/utils";
|
|
|
6422
6509
|
|
|
6423
6510
|
const ToastProvider = ToastPrimitives.Provider;
|
|
6424
6511
|
|
|
6425
|
-
const ToastViewport = React.forwardRef<
|
|
6426
|
-
React.ElementRef<typeof ToastPrimitives.Viewport>,
|
|
6427
|
-
React.ComponentPropsWithoutRef<typeof ToastPrimitives.Viewport>
|
|
6428
|
-
>(({ className, ...props }, ref) => (
|
|
6512
|
+
const ToastViewport = React.forwardRef(({ className, ...props }: React.ComponentPropsWithoutRef<typeof ToastPrimitives.Viewport>, ref: React.Ref<React.ElementRef<typeof ToastPrimitives.Viewport>>) => (
|
|
6429
6513
|
<ToastPrimitives.Viewport
|
|
6430
6514
|
ref={ref}
|
|
6431
6515
|
className={cn(
|
|
@@ -6459,11 +6543,8 @@ const toastVariants = cva(
|
|
|
6459
6543
|
}
|
|
6460
6544
|
);
|
|
6461
6545
|
|
|
6462
|
-
const Toast = React.forwardRef<
|
|
6463
|
-
|
|
6464
|
-
React.ComponentPropsWithoutRef<typeof ToastPrimitives.Root> &
|
|
6465
|
-
VariantProps<typeof toastVariants>
|
|
6466
|
-
>(({ className, variant, ...props }, ref) => {
|
|
6546
|
+
const Toast = React.forwardRef(({ className, variant, ...props }: React.ComponentPropsWithoutRef<typeof ToastPrimitives.Root> &
|
|
6547
|
+
VariantProps<typeof toastVariants>, ref: React.Ref<React.ElementRef<typeof ToastPrimitives.Root>>) => {
|
|
6467
6548
|
return (
|
|
6468
6549
|
<ToastPrimitives.Root
|
|
6469
6550
|
ref={ref}
|
|
@@ -6474,10 +6555,7 @@ const Toast = React.forwardRef<
|
|
|
6474
6555
|
});
|
|
6475
6556
|
Toast.displayName = ToastPrimitives.Root.displayName;
|
|
6476
6557
|
|
|
6477
|
-
const ToastAction = React.forwardRef<
|
|
6478
|
-
React.ElementRef<typeof ToastPrimitives.Action>,
|
|
6479
|
-
React.ComponentPropsWithoutRef<typeof ToastPrimitives.Action>
|
|
6480
|
-
>(({ className, ...props }, ref) => (
|
|
6558
|
+
const ToastAction = React.forwardRef(({ className, ...props }: React.ComponentPropsWithoutRef<typeof ToastPrimitives.Action>, ref: React.Ref<React.ElementRef<typeof ToastPrimitives.Action>>) => (
|
|
6481
6559
|
<ToastPrimitives.Action
|
|
6482
6560
|
ref={ref}
|
|
6483
6561
|
className={cn(
|
|
@@ -6493,10 +6571,7 @@ const ToastAction = React.forwardRef<
|
|
|
6493
6571
|
));
|
|
6494
6572
|
ToastAction.displayName = ToastPrimitives.Action.displayName;
|
|
6495
6573
|
|
|
6496
|
-
const ToastClose = React.forwardRef<
|
|
6497
|
-
React.ElementRef<typeof ToastPrimitives.Close>,
|
|
6498
|
-
React.ComponentPropsWithoutRef<typeof ToastPrimitives.Close>
|
|
6499
|
-
>(({ className, ...props }, ref) => (
|
|
6574
|
+
const ToastClose = React.forwardRef(({ className, ...props }: React.ComponentPropsWithoutRef<typeof ToastPrimitives.Close>, ref: React.Ref<React.ElementRef<typeof ToastPrimitives.Close>>) => (
|
|
6500
6575
|
<ToastPrimitives.Close
|
|
6501
6576
|
ref={ref}
|
|
6502
6577
|
className={cn(
|
|
@@ -6511,10 +6586,7 @@ const ToastClose = React.forwardRef<
|
|
|
6511
6586
|
));
|
|
6512
6587
|
ToastClose.displayName = ToastPrimitives.Close.displayName;
|
|
6513
6588
|
|
|
6514
|
-
const ToastTitle = React.forwardRef<
|
|
6515
|
-
React.ElementRef<typeof ToastPrimitives.Title>,
|
|
6516
|
-
React.ComponentPropsWithoutRef<typeof ToastPrimitives.Title>
|
|
6517
|
-
>(({ className, ...props }, ref) => (
|
|
6589
|
+
const ToastTitle = React.forwardRef(({ className, ...props }: React.ComponentPropsWithoutRef<typeof ToastPrimitives.Title>, ref: React.Ref<React.ElementRef<typeof ToastPrimitives.Title>>) => (
|
|
6518
6590
|
<ToastPrimitives.Title
|
|
6519
6591
|
ref={ref}
|
|
6520
6592
|
className={cn("text-sm font-semibold tracking-[0.014px]", className)}
|
|
@@ -6523,10 +6595,7 @@ const ToastTitle = React.forwardRef<
|
|
|
6523
6595
|
));
|
|
6524
6596
|
ToastTitle.displayName = ToastPrimitives.Title.displayName;
|
|
6525
6597
|
|
|
6526
|
-
const ToastDescription = React.forwardRef<
|
|
6527
|
-
React.ElementRef<typeof ToastPrimitives.Description>,
|
|
6528
|
-
React.ComponentPropsWithoutRef<typeof ToastPrimitives.Description>
|
|
6529
|
-
>(({ className, ...props }, ref) => (
|
|
6598
|
+
const ToastDescription = React.forwardRef(({ className, ...props }: React.ComponentPropsWithoutRef<typeof ToastPrimitives.Description>, ref: React.Ref<React.ElementRef<typeof ToastPrimitives.Description>>) => (
|
|
6530
6599
|
<ToastPrimitives.Description
|
|
6531
6600
|
ref={ref}
|
|
6532
6601
|
className={cn("text-xs tracking-[0.048px]", className)}
|
|
@@ -6911,10 +6980,7 @@ const Tooltip = TooltipPrimitive.Root;
|
|
|
6911
6980
|
|
|
6912
6981
|
const TooltipTrigger = TooltipPrimitive.Trigger;
|
|
6913
6982
|
|
|
6914
|
-
const TooltipContent = React.forwardRef<
|
|
6915
|
-
React.ElementRef<typeof TooltipPrimitive.Content>,
|
|
6916
|
-
React.ComponentPropsWithoutRef<typeof TooltipPrimitive.Content>
|
|
6917
|
-
>(({ className, sideOffset = 4, ...props }, ref) => (
|
|
6983
|
+
const TooltipContent = React.forwardRef(({ className, sideOffset = 4, ...props }: React.ComponentPropsWithoutRef<typeof TooltipPrimitive.Content>, ref: React.Ref<React.ElementRef<typeof TooltipPrimitive.Content>>) => (
|
|
6918
6984
|
<TooltipPrimitive.Portal>
|
|
6919
6985
|
<TooltipPrimitive.Content
|
|
6920
6986
|
ref={ref}
|
|
@@ -6929,10 +6995,7 @@ const TooltipContent = React.forwardRef<
|
|
|
6929
6995
|
));
|
|
6930
6996
|
TooltipContent.displayName = TooltipPrimitive.Content.displayName;
|
|
6931
6997
|
|
|
6932
|
-
const TooltipArrow = React.forwardRef<
|
|
6933
|
-
React.ElementRef<typeof TooltipPrimitive.Arrow>,
|
|
6934
|
-
React.ComponentPropsWithoutRef<typeof TooltipPrimitive.Arrow>
|
|
6935
|
-
>(({ className, ...props }, ref) => (
|
|
6998
|
+
const TooltipArrow = React.forwardRef(({ className, ...props }: React.ComponentPropsWithoutRef<typeof TooltipPrimitive.Arrow>, ref: React.Ref<React.ElementRef<typeof TooltipPrimitive.Arrow>>) => (
|
|
6936
6999
|
<TooltipPrimitive.Arrow
|
|
6937
7000
|
ref={ref}
|
|
6938
7001
|
className={cn("fill-semantic-primary", className)}
|
|
@@ -7084,7 +7147,7 @@ export interface TypographyProps extends React.HTMLAttributes<HTMLElement> {
|
|
|
7084
7147
|
* <Typography truncate>Very long text that will be truncated...</Typography>
|
|
7085
7148
|
* \`\`\`
|
|
7086
7149
|
*/
|
|
7087
|
-
const Typography = React.forwardRef
|
|
7150
|
+
const Typography = React.forwardRef(
|
|
7088
7151
|
(
|
|
7089
7152
|
{
|
|
7090
7153
|
children,
|
|
@@ -7097,8 +7160,8 @@ const Typography = React.forwardRef<HTMLElement, TypographyProps>(
|
|
|
7097
7160
|
tag,
|
|
7098
7161
|
htmlFor,
|
|
7099
7162
|
...props
|
|
7100
|
-
},
|
|
7101
|
-
ref
|
|
7163
|
+
}: TypographyProps,
|
|
7164
|
+
ref: React.Ref<HTMLElement>
|
|
7102
7165
|
) => {
|
|
7103
7166
|
const key: Key = \`\${kind}-\${variant}\`;
|
|
7104
7167
|
const Tag = (tag || mapTagName[key]) as React.ElementType;
|
|
@@ -7159,8 +7222,8 @@ export interface UnreadSeparatorProps
|
|
|
7159
7222
|
label?: string;
|
|
7160
7223
|
}
|
|
7161
7224
|
|
|
7162
|
-
const UnreadSeparator = React.forwardRef
|
|
7163
|
-
({ className, count, label, ...props }, ref) => (
|
|
7225
|
+
const UnreadSeparator = React.forwardRef(
|
|
7226
|
+
({ className, count, label, ...props }: UnreadSeparatorProps, ref: React.Ref<HTMLDivElement>) => (
|
|
7164
7227
|
<div
|
|
7165
7228
|
ref={ref}
|
|
7166
7229
|
className={cn("flex items-center gap-4 my-2", className)}
|
|
@@ -8462,6 +8525,24 @@ var componentMetadata = {
|
|
|
8462
8525
|
}
|
|
8463
8526
|
]
|
|
8464
8527
|
},
|
|
8528
|
+
"textarea": {
|
|
8529
|
+
"name": "Textarea",
|
|
8530
|
+
"description": "A textarea component.",
|
|
8531
|
+
"dependencies": [
|
|
8532
|
+
"class-variance-authority",
|
|
8533
|
+
"clsx",
|
|
8534
|
+
"tailwind-merge"
|
|
8535
|
+
],
|
|
8536
|
+
"props": [],
|
|
8537
|
+
"variants": [],
|
|
8538
|
+
"examples": [
|
|
8539
|
+
{
|
|
8540
|
+
"title": "Basic Textarea",
|
|
8541
|
+
"code": "<Textarea>Content</Textarea>",
|
|
8542
|
+
"description": "Simple textarea usage"
|
|
8543
|
+
}
|
|
8544
|
+
]
|
|
8545
|
+
},
|
|
8465
8546
|
"toast": {
|
|
8466
8547
|
"name": "Toast",
|
|
8467
8548
|
"description": "A toast component.",
|