@digilogiclabs/saas-factory-ui 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/README.md +172 -0
- package/dist/index.css +1593 -0
- package/dist/index.css.map +1 -0
- package/dist/index.d.mts +198 -0
- package/dist/index.d.ts +198 -0
- package/dist/index.js +1335 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +1222 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +107 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/utils/cn.ts","../src/components/ui/alert/alert.tsx","../src/components/ui/avatar/avatar.tsx","../src/components/ui/badge/badge.tsx","../src/components/ui/button/button.tsx","../src/components/ui/card/card.tsx","../src/components/ui/checkbox/checkbox.tsx","../src/components/ui/dialog/dialog.tsx","../src/components/ui/dropdown-menu/dropdown-menu.tsx","../src/components/ui/form/form.tsx","../src/components/ui/input/input.tsx","../src/components/ui/label/label.tsx","../src/components/ui/modal/modal.tsx","../src/components/ui/progress/progress.tsx","../src/components/ui/select/select.tsx","../src/components/ui/skeleton/skeleton.tsx","../src/components/ui/tabs/tabs.tsx","../src/components/ui/toast/toast.tsx","../src/components/layout/container.tsx","../src/components/layout/grid.tsx","../src/components/layout/section.tsx","../src/hooks/use-media-query.ts","../src/hooks/use-mounted.ts","../src/hooks/use-lock-body.ts"],"names":["twMerge","clsx","cva","React","jsx","React2","AvatarPrimitive","jsxs","React3","React4","React5","CheckboxPrimitive","Check","DialogPrimitive","React6","X","DropdownMenuPrimitive","React7","ChevronRight","Circle","React8","React9","Label","React10","LabelPrimitive","React11","ProgressPrimitive","SelectPrimitive","React12","ChevronDown","ChevronUp","TabsPrimitive","React13","ToastPrimitives","React14","useState","useEffect","useLayoutEffect"],"mappings":"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","file":"index.js","sourcesContent":["// src/utils/cn.ts\r\nimport { clsx, type ClassValue } from 'clsx'\r\nimport { twMerge } from 'tailwind-merge'\r\n\r\nexport function cn(...inputs: ClassValue[]) {\r\n return twMerge(clsx(inputs))\r\n}","// src/components/ui/alert/alert.tsx\r\nimport * as React from \"react\"\r\nimport { cva, type VariantProps } from \"class-variance-authority\"\r\nimport { cn } from \"../../../utils/cn\"\r\n\r\nconst alertVariants = cva(\r\n \"relative w-full rounded-lg border p-4 [&>svg~*]:pl-7 [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground\",\r\n {\r\n variants: {\r\n variant: {\r\n default: \"bg-background text-foreground\",\r\n destructive:\r\n \"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive\",\r\n success: \"border-green-500/50 text-green-600 dark:text-green-400 [&>svg]:text-green-600\",\r\n warning: \"border-yellow-500/50 text-yellow-600 dark:text-yellow-400 [&>svg]:text-yellow-600\",\r\n info: \"border-blue-500/50 text-blue-600 dark:text-blue-400 [&>svg]:text-blue-600\",\r\n },\r\n },\r\n defaultVariants: {\r\n variant: \"default\",\r\n },\r\n }\r\n)\r\n\r\nconst Alert = React.forwardRef<\r\n HTMLDivElement,\r\n React.HTMLAttributes<HTMLDivElement> & VariantProps<typeof alertVariants>\r\n>(({ className, variant, ...props }, ref) => (\r\n <div\r\n ref={ref}\r\n role=\"alert\"\r\n className={cn(alertVariants({ variant }), className)}\r\n {...props}\r\n />\r\n))\r\nAlert.displayName = \"Alert\"\r\n\r\nconst AlertTitle = React.forwardRef<\r\n HTMLParagraphElement,\r\n React.HTMLAttributes<HTMLHeadingElement>\r\n>(({ className, ...props }, ref) => (\r\n <h5\r\n ref={ref}\r\n className={cn(\"mb-1 font-medium leading-none tracking-tight\", className)}\r\n {...props}\r\n />\r\n))\r\nAlertTitle.displayName = \"AlertTitle\"\r\n\r\nconst AlertDescription = React.forwardRef<\r\n HTMLParagraphElement,\r\n React.HTMLAttributes<HTMLParagraphElement>\r\n>(({ className, ...props }, ref) => (\r\n <div\r\n ref={ref}\r\n className={cn(\"text-sm [&_p]:leading-relaxed\", className)}\r\n {...props}\r\n />\r\n))\r\nAlertDescription.displayName = \"AlertDescription\"\r\n\r\nexport { Alert, AlertTitle, AlertDescription }","// src/components/ui/avatar/avatar.tsx\r\nimport * as React from \"react\"\r\nimport * as AvatarPrimitive from \"@radix-ui/react-avatar\"\r\nimport { cn } from \"../../../utils/cn\"\r\n\r\nconst Avatar = React.forwardRef<\r\n React.ElementRef<typeof AvatarPrimitive.Root>,\r\n React.ComponentPropsWithoutRef<typeof AvatarPrimitive.Root> & {\r\n size?: \"sm\" | \"md\" | \"lg\" | \"xl\"\r\n }\r\n>(({ className, size = \"md\", ...props }, ref) => {\r\n const sizeClasses = {\r\n sm: \"h-8 w-8\",\r\n md: \"h-10 w-10\",\r\n lg: \"h-12 w-12\",\r\n xl: \"h-16 w-16\"\r\n }\r\n\r\n return (\r\n <AvatarPrimitive.Root\r\n ref={ref}\r\n className={cn(\r\n \"relative flex shrink-0 overflow-hidden rounded-full\",\r\n sizeClasses[size],\r\n className\r\n )}\r\n {...props}\r\n />\r\n )\r\n})\r\nAvatar.displayName = AvatarPrimitive.Root.displayName\r\n\r\nconst AvatarImage = React.forwardRef<\r\n React.ElementRef<typeof AvatarPrimitive.Image>,\r\n React.ComponentPropsWithoutRef<typeof AvatarPrimitive.Image>\r\n>(({ className, ...props }, ref) => (\r\n <AvatarPrimitive.Image\r\n ref={ref}\r\n className={cn(\"aspect-square h-full w-full\", className)}\r\n {...props}\r\n />\r\n))\r\nAvatarImage.displayName = AvatarPrimitive.Image.displayName\r\n\r\nconst AvatarFallback = React.forwardRef<\r\n React.ElementRef<typeof AvatarPrimitive.Fallback>,\r\n React.ComponentPropsWithoutRef<typeof AvatarPrimitive.Fallback>\r\n>(({ className, ...props }, ref) => (\r\n <AvatarPrimitive.Fallback\r\n ref={ref}\r\n className={cn(\r\n \"flex h-full w-full items-center justify-center rounded-full bg-muted\",\r\n className\r\n )}\r\n {...props}\r\n />\r\n))\r\nAvatarFallback.displayName = AvatarPrimitive.Fallback.displayName\r\n\r\nexport { Avatar, AvatarImage, AvatarFallback }","// src/components/ui/badge/badge.tsx\r\nimport * as React from \"react\"\r\nimport { cva, type VariantProps } from \"class-variance-authority\"\r\nimport { cn } from \"../../../utils/cn\"\r\n\r\nconst badgeVariants = cva(\r\n \"inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2\",\r\n {\r\n variants: {\r\n variant: {\r\n default:\r\n \"border-transparent bg-primary text-primary-foreground hover:bg-primary/80\",\r\n secondary:\r\n \"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80\",\r\n destructive:\r\n \"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80\",\r\n outline: \"text-foreground\",\r\n success: \"border-transparent bg-green-500 text-white hover:bg-green-600\",\r\n warning: \"border-transparent bg-yellow-500 text-white hover:bg-yellow-600\",\r\n info: \"border-transparent bg-blue-500 text-white hover:bg-blue-600\",\r\n },\r\n size: {\r\n default: \"px-2.5 py-0.5 text-xs\",\r\n sm: \"px-2 py-0.5 text-xs\",\r\n lg: \"px-3 py-1 text-sm\",\r\n },\r\n },\r\n defaultVariants: {\r\n variant: \"default\",\r\n size: \"default\",\r\n },\r\n }\r\n)\r\n\r\nexport interface BadgeProps\r\n extends React.HTMLAttributes<HTMLDivElement>,\r\n VariantProps<typeof badgeVariants> {\r\n removable?: boolean\r\n onRemove?: () => void\r\n}\r\n\r\nfunction Badge({\r\n className,\r\n variant,\r\n size,\r\n removable,\r\n onRemove,\r\n children,\r\n ...props\r\n}: BadgeProps) {\r\n return (\r\n <div className={cn(badgeVariants({ variant, size }), className)} {...props}>\r\n {children}\r\n {removable && (\r\n <button\r\n className=\"ml-1 ring-offset-background rounded-full outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2\"\r\n onClick={onRemove}\r\n >\r\n <svg\r\n className=\"h-3 w-3 opacity-60 hover:opacity-100\"\r\n fill=\"none\"\r\n stroke=\"currentColor\"\r\n viewBox=\"0 0 24 24\"\r\n >\r\n <path\r\n strokeLinecap=\"round\"\r\n strokeLinejoin=\"round\"\r\n strokeWidth={2}\r\n d=\"M6 18L18 6M6 6l12 12\"\r\n />\r\n </svg>\r\n </button>\r\n )}\r\n </div>\r\n )\r\n}\r\n\r\nexport { Badge, badgeVariants }","// src/components/ui/button/button.tsx\r\nimport * as React from 'react'\r\nimport { cva, type VariantProps } from 'class-variance-authority'\r\nimport { cn } from '../../../utils/cn'\r\n\r\nconst buttonVariants = cva(\r\n 'inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50',\r\n {\r\n variants: {\r\n variant: {\r\n default: 'bg-primary text-primary-foreground hover:bg-primary/90',\r\n destructive: 'bg-destructive text-destructive-foreground hover:bg-destructive/90',\r\n outline: 'border border-input bg-background hover:bg-accent hover:text-accent-foreground',\r\n secondary: 'bg-secondary text-secondary-foreground hover:bg-secondary/80',\r\n ghost: 'hover:bg-accent hover:text-accent-foreground',\r\n link: 'text-primary underline-offset-4 hover:underline',\r\n },\r\n size: {\r\n default: 'h-10 px-4 py-2',\r\n sm: 'h-9 rounded-md px-3',\r\n lg: 'h-11 rounded-md px-8',\r\n icon: 'h-10 w-10',\r\n },\r\n },\r\n defaultVariants: {\r\n variant: 'default',\r\n size: 'default',\r\n },\r\n }\r\n)\r\n\r\nexport interface ButtonProps\r\n extends React.ButtonHTMLAttributes<HTMLButtonElement>,\r\n VariantProps<typeof buttonVariants> {\r\n asChild?: boolean\r\n}\r\n\r\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\r\n ({ className, variant, size, asChild = false, ...props }, ref) => {\r\n return (\r\n <button\r\n className={cn(buttonVariants({ variant, size, className }))}\r\n ref={ref}\r\n {...props}\r\n />\r\n )\r\n }\r\n)\r\nButton.displayName = 'Button'\r\n\r\nexport { Button, buttonVariants }","// src/components/ui/card/card.tsx\r\nimport * as React from \"react\"\r\nimport { cn } from \"../../../utils/cn\"\r\n\r\nconst Card = React.forwardRef<\r\n HTMLDivElement,\r\n React.HTMLAttributes<HTMLDivElement>\r\n>(({ className, ...props }, ref) => (\r\n <div\r\n ref={ref}\r\n className={cn(\r\n \"rounded-lg border bg-card text-card-foreground shadow-sm\",\r\n className\r\n )}\r\n {...props}\r\n />\r\n))\r\nCard.displayName = \"Card\"\r\n\r\nconst CardHeader = React.forwardRef<\r\n HTMLDivElement,\r\n React.HTMLAttributes<HTMLDivElement>\r\n>(({ className, ...props }, ref) => (\r\n <div\r\n ref={ref}\r\n className={cn(\"flex flex-col space-y-1.5 p-6\", className)}\r\n {...props}\r\n />\r\n))\r\nCardHeader.displayName = \"CardHeader\"\r\n\r\nconst CardTitle = React.forwardRef<\r\n HTMLHeadingElement,\r\n React.HTMLAttributes<HTMLHeadingElement>\r\n>(({ className, ...props }, ref) => (\r\n <h3\r\n ref={ref}\r\n className={cn(\r\n \"text-2xl font-semibold leading-none tracking-tight\",\r\n className\r\n )}\r\n {...props}\r\n />\r\n))\r\nCardTitle.displayName = \"CardTitle\"\r\n\r\nconst CardDescription = React.forwardRef<\r\n HTMLParagraphElement,\r\n React.HTMLAttributes<HTMLParagraphElement>\r\n>(({ className, ...props }, ref) => (\r\n <p\r\n ref={ref}\r\n className={cn(\"text-sm text-muted-foreground\", className)}\r\n {...props}\r\n />\r\n))\r\nCardDescription.displayName = \"CardDescription\"\r\n\r\nconst CardContent = React.forwardRef<\r\n HTMLDivElement,\r\n React.HTMLAttributes<HTMLDivElement>\r\n>(({ className, ...props }, ref) => (\r\n <div ref={ref} className={cn(\"p-6 pt-0\", className)} {...props} />\r\n))\r\nCardContent.displayName = \"CardContent\"\r\n\r\nconst CardFooter = React.forwardRef<\r\n HTMLDivElement,\r\n React.HTMLAttributes<HTMLDivElement>\r\n>(({ className, ...props }, ref) => (\r\n <div\r\n ref={ref}\r\n className={cn(\"flex items-center p-6 pt-0\", className)}\r\n {...props}\r\n />\r\n))\r\nCardFooter.displayName = \"CardFooter\"\r\n\r\nexport {\r\n Card,\r\n CardHeader,\r\n CardFooter,\r\n CardTitle,\r\n CardDescription,\r\n CardContent,\r\n}","// src/components/ui/checkbox/checkbox.tsx\r\nimport * as React from \"react\"\r\nimport * as CheckboxPrimitive from \"@radix-ui/react-checkbox\"\r\nimport { Check } from \"lucide-react\"\r\n\r\nimport { cn } from \"../../../utils/cn\"\r\n\r\nconst Checkbox = React.forwardRef<\r\n React.ElementRef<typeof CheckboxPrimitive.Root>,\r\n React.ComponentPropsWithoutRef<typeof CheckboxPrimitive.Root>\r\n>(({ className, ...props }, ref) => (\r\n <CheckboxPrimitive.Root\r\n ref={ref}\r\n className={cn(\r\n \"peer h-4 w-4 shrink-0 rounded-sm border border-primary ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n <CheckboxPrimitive.Indicator\r\n className={cn(\"flex items-center justify-center text-current\")}\r\n >\r\n <Check className=\"h-4 w-4\" />\r\n </CheckboxPrimitive.Indicator>\r\n </CheckboxPrimitive.Root>\r\n))\r\nCheckbox.displayName = CheckboxPrimitive.Root.displayName\r\n\r\nexport { Checkbox }","// src/components/ui/dialog/dialog.tsx\r\nimport * as React from \"react\"\r\nimport * as DialogPrimitive from \"@radix-ui/react-dialog\"\r\nimport { X } from \"lucide-react\"\r\nimport { cn } from \"../../../utils/cn\"\r\n\r\nconst Dialog = DialogPrimitive.Root\r\n\r\nconst DialogTrigger = DialogPrimitive.Trigger\r\n\r\nconst DialogPortal = DialogPrimitive.Portal\r\n\r\nconst DialogClose = DialogPrimitive.Close\r\n\r\nconst DialogOverlay = React.forwardRef<\r\n React.ElementRef<typeof DialogPrimitive.Overlay>,\r\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Overlay>\r\n>(({ className, ...props }, ref) => (\r\n <DialogPrimitive.Overlay\r\n ref={ref}\r\n className={cn(\r\n \"fixed inset-0 z-50 bg-black/80 backdrop-blur-sm data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\",\r\n className\r\n )}\r\n {...props}\r\n />\r\n))\r\nDialogOverlay.displayName = DialogPrimitive.Overlay.displayName\r\n\r\nconst DialogContent = React.forwardRef<\r\n React.ElementRef<typeof DialogPrimitive.Content>,\r\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Content>\r\n>(({ className, children, ...props }, ref) => (\r\n <DialogPortal>\r\n <DialogOverlay />\r\n <DialogPrimitive.Content\r\n ref={ref}\r\n className={cn(\r\n \"fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n {children}\r\n <DialogPrimitive.Close className=\"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground\">\r\n <X className=\"h-4 w-4\" />\r\n <span className=\"sr-only\">Close</span>\r\n </DialogPrimitive.Close>\r\n </DialogPrimitive.Content>\r\n </DialogPortal>\r\n))\r\nDialogContent.displayName = DialogPrimitive.Content.displayName\r\n\r\nconst DialogHeader = ({\r\n className,\r\n ...props\r\n}: React.HTMLAttributes<HTMLDivElement>) => (\r\n <div\r\n className={cn(\r\n \"flex flex-col space-y-1.5 text-center sm:text-left\",\r\n className\r\n )}\r\n {...props}\r\n />\r\n)\r\nDialogHeader.displayName = \"DialogHeader\"\r\n\r\nconst DialogFooter = ({\r\n className,\r\n ...props\r\n}: React.HTMLAttributes<HTMLDivElement>) => (\r\n <div\r\n className={cn(\r\n \"flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2\",\r\n className\r\n )}\r\n {...props}\r\n />\r\n)\r\nDialogFooter.displayName = \"DialogFooter\"\r\n\r\nconst DialogTitle = React.forwardRef<\r\n React.ElementRef<typeof DialogPrimitive.Title>,\r\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Title>\r\n>(({ className, ...props }, ref) => (\r\n <DialogPrimitive.Title\r\n ref={ref}\r\n className={cn(\r\n \"text-lg font-semibold leading-none tracking-tight\",\r\n className\r\n )}\r\n {...props}\r\n />\r\n))\r\nDialogTitle.displayName = DialogPrimitive.Title.displayName\r\n\r\nconst DialogDescription = React.forwardRef<\r\n React.ElementRef<typeof DialogPrimitive.Description>,\r\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Description>\r\n>(({ className, ...props }, ref) => (\r\n <DialogPrimitive.Description\r\n ref={ref}\r\n className={cn(\"text-sm text-muted-foreground\", className)}\r\n {...props}\r\n />\r\n))\r\nDialogDescription.displayName = DialogPrimitive.Description.displayName\r\n\r\nexport {\r\n Dialog,\r\n DialogPortal,\r\n DialogOverlay,\r\n DialogTrigger,\r\n DialogClose,\r\n DialogContent,\r\n DialogHeader,\r\n DialogFooter,\r\n DialogTitle,\r\n DialogDescription,\r\n}","// src/components/ui/dropdown-menu/dropdown-menu.tsx\r\nimport * as React from \"react\"\r\nimport * as DropdownMenuPrimitive from \"@radix-ui/react-dropdown-menu\"\r\nimport { Check, ChevronRight, Circle } from \"lucide-react\"\r\n\r\nimport { cn } from \"../../../utils/cn\"\r\n\r\nconst DropdownMenu = DropdownMenuPrimitive.Root\r\n\r\nconst DropdownMenuTrigger = DropdownMenuPrimitive.Trigger\r\n\r\nconst DropdownMenuGroup = DropdownMenuPrimitive.Group\r\n\r\nconst DropdownMenuPortal = DropdownMenuPrimitive.Portal\r\n\r\nconst DropdownMenuSub = DropdownMenuPrimitive.Sub\r\n\r\nconst DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup\r\n\r\nconst DropdownMenuSubTrigger = React.forwardRef<\r\n React.ElementRef<typeof DropdownMenuPrimitive.SubTrigger>,\r\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubTrigger> & {\r\n inset?: boolean\r\n }\r\n>(({ className, inset, children, ...props }, ref) => (\r\n <DropdownMenuPrimitive.SubTrigger\r\n ref={ref}\r\n className={cn(\r\n \"flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent\",\r\n inset && \"pl-8\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n {children}\r\n <ChevronRight className=\"ml-auto h-4 w-4\" />\r\n </DropdownMenuPrimitive.SubTrigger>\r\n))\r\nDropdownMenuSubTrigger.displayName =\r\n DropdownMenuPrimitive.SubTrigger.displayName\r\n\r\nconst DropdownMenuSubContent = React.forwardRef<\r\n React.ElementRef<typeof DropdownMenuPrimitive.SubContent>,\r\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubContent>\r\n>(({ className, ...props }, ref) => (\r\n <DropdownMenuPrimitive.SubContent\r\n ref={ref}\r\n className={cn(\r\n \"z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\r\n className\r\n )}\r\n {...props}\r\n />\r\n))\r\nDropdownMenuSubContent.displayName =\r\n DropdownMenuPrimitive.SubContent.displayName\r\n\r\nconst DropdownMenuContent = React.forwardRef<\r\n React.ElementRef<typeof DropdownMenuPrimitive.Content>,\r\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Content>\r\n>(({ className, sideOffset = 4, ...props }, ref) => (\r\n <DropdownMenuPrimitive.Portal>\r\n <DropdownMenuPrimitive.Content\r\n ref={ref}\r\n sideOffset={sideOffset}\r\n className={cn(\r\n \"z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\r\n className\r\n )}\r\n {...props}\r\n />\r\n </DropdownMenuPrimitive.Portal>\r\n))\r\nDropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName\r\n\r\nconst DropdownMenuItem = React.forwardRef<\r\n React.ElementRef<typeof DropdownMenuPrimitive.Item>,\r\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Item> & {\r\n inset?: boolean\r\n }\r\n>(({ className, inset, ...props }, ref) => (\r\n <DropdownMenuPrimitive.Item\r\n ref={ref}\r\n className={cn(\r\n \"relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\r\n inset && \"pl-8\",\r\n className\r\n )}\r\n {...props}\r\n />\r\n))\r\nDropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName\r\n\r\nconst DropdownMenuCheckboxItem = React.forwardRef<\r\n React.ElementRef<typeof DropdownMenuPrimitive.CheckboxItem>,\r\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.CheckboxItem>\r\n>(({ className, children, checked, ...props }, ref) => (\r\n <DropdownMenuPrimitive.CheckboxItem\r\n ref={ref}\r\n className={cn(\r\n \"relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\r\n className\r\n )}\r\n checked={checked}\r\n {...props}\r\n >\r\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\r\n <DropdownMenuPrimitive.ItemIndicator>\r\n <Check className=\"h-4 w-4\" />\r\n </DropdownMenuPrimitive.ItemIndicator>\r\n </span>\r\n {children}\r\n </DropdownMenuPrimitive.CheckboxItem>\r\n))\r\nDropdownMenuCheckboxItem.displayName =\r\n DropdownMenuPrimitive.CheckboxItem.displayName\r\n\r\nconst DropdownMenuRadioItem = React.forwardRef<\r\n React.ElementRef<typeof DropdownMenuPrimitive.RadioItem>,\r\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.RadioItem>\r\n>(({ className, children, ...props }, ref) => (\r\n <DropdownMenuPrimitive.RadioItem\r\n ref={ref}\r\n className={cn(\r\n \"relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\r\n <DropdownMenuPrimitive.ItemIndicator>\r\n <Circle className=\"h-2 w-2 fill-current\" />\r\n </DropdownMenuPrimitive.ItemIndicator>\r\n </span>\r\n {children}\r\n </DropdownMenuPrimitive.RadioItem>\r\n))\r\nDropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName\r\n\r\nconst DropdownMenuLabel = React.forwardRef<\r\n React.ElementRef<typeof DropdownMenuPrimitive.Label>,\r\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Label> & {\r\n inset?: boolean\r\n }\r\n>(({ className, inset, ...props }, ref) => (\r\n <DropdownMenuPrimitive.Label\r\n ref={ref}\r\n className={cn(\r\n \"px-2 py-1.5 text-sm font-semibold\",\r\n inset && \"pl-8\",\r\n className\r\n )}\r\n {...props}\r\n />\r\n))\r\nDropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName\r\n\r\nconst DropdownMenuSeparator = React.forwardRef<\r\n React.ElementRef<typeof DropdownMenuPrimitive.Separator>,\r\n React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Separator>\r\n>(({ className, ...props }, ref) => (\r\n <DropdownMenuPrimitive.Separator\r\n ref={ref}\r\n className={cn(\"-mx-1 my-1 h-px bg-muted\", className)}\r\n {...props}\r\n />\r\n))\r\nDropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName\r\n\r\nconst DropdownMenuShortcut = ({\r\n className,\r\n ...props\r\n}: React.HTMLAttributes<HTMLSpanElement>) => {\r\n return (\r\n <span\r\n className={cn(\"ml-auto text-xs tracking-widest opacity-60\", className)}\r\n {...props}\r\n />\r\n )\r\n}\r\nDropdownMenuShortcut.displayName = \"DropdownMenuShortcut\"\r\n\r\nexport {\r\n DropdownMenu,\r\n DropdownMenuTrigger,\r\n DropdownMenuContent,\r\n DropdownMenuItem,\r\n DropdownMenuCheckboxItem,\r\n DropdownMenuRadioItem,\r\n DropdownMenuLabel,\r\n DropdownMenuSeparator,\r\n DropdownMenuShortcut,\r\n DropdownMenuGroup,\r\n DropdownMenuPortal,\r\n DropdownMenuSub,\r\n DropdownMenuSubContent,\r\n DropdownMenuSubTrigger,\r\n DropdownMenuRadioGroup,\r\n}","// src/components/ui/form/form.tsx\r\nimport * as React from \"react\"\r\nimport { cn } from \"../../../utils/cn\"\r\n\r\nexport interface FormProps extends React.FormHTMLAttributes<HTMLFormElement> {\r\n onSubmit?: (e: React.FormEvent<HTMLFormElement>) => void\r\n}\r\n\r\nconst Form = React.forwardRef<HTMLFormElement, FormProps>(\r\n ({ className, ...props }, ref) => {\r\n return (\r\n <form\r\n ref={ref}\r\n className={cn(\"space-y-6\", className)}\r\n {...props}\r\n />\r\n )\r\n }\r\n)\r\nForm.displayName = \"Form\"\r\n\r\nconst FormSection = React.forwardRef<\r\n HTMLDivElement,\r\n React.HTMLAttributes<HTMLDivElement>\r\n>(({ className, ...props }, ref) => {\r\n return (\r\n <div\r\n ref={ref}\r\n className={cn(\"space-y-4\", className)}\r\n {...props}\r\n />\r\n )\r\n})\r\nFormSection.displayName = \"FormSection\"\r\n\r\nconst FormGroup = React.forwardRef<\r\n HTMLDivElement,\r\n React.HTMLAttributes<HTMLDivElement>\r\n>(({ className, ...props }, ref) => {\r\n return (\r\n <div\r\n ref={ref}\r\n className={cn(\"space-y-2\", className)}\r\n {...props}\r\n />\r\n )\r\n})\r\nFormGroup.displayName = \"FormGroup\"\r\n\r\nconst FormLabel = React.forwardRef<\r\n HTMLLabelElement,\r\n React.LabelHTMLAttributes<HTMLLabelElement> & {\r\n error?: boolean\r\n }\r\n>(({ className, error, ...props }, ref) => {\r\n return (\r\n <label\r\n ref={ref}\r\n className={cn(\r\n \"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70\",\r\n error && \"text-destructive\",\r\n className\r\n )}\r\n {...props}\r\n />\r\n )\r\n})\r\nFormLabel.displayName = \"FormLabel\"\r\n\r\nconst FormMessage = React.forwardRef<\r\n HTMLParagraphElement,\r\n React.HTMLAttributes<HTMLParagraphElement>\r\n>(({ className, children, ...props }, ref) => {\r\n if (!children) return null\r\n\r\n return (\r\n <p\r\n ref={ref}\r\n className={cn(\"text-sm font-medium text-destructive\", className)}\r\n {...props}\r\n >\r\n {children}\r\n </p>\r\n )\r\n})\r\nFormMessage.displayName = \"FormMessage\"\r\n\r\nconst FormDescription = React.forwardRef<\r\n HTMLParagraphElement,\r\n React.HTMLAttributes<HTMLParagraphElement>\r\n>(({ className, ...props }, ref) => {\r\n return (\r\n <p\r\n ref={ref}\r\n className={cn(\"text-sm text-muted-foreground\", className)}\r\n {...props}\r\n />\r\n )\r\n})\r\nFormDescription.displayName = \"FormDescription\"\r\n\r\nexport {\r\n Form,\r\n FormSection,\r\n FormGroup,\r\n FormLabel,\r\n FormMessage,\r\n FormDescription,\r\n}","// src/components/ui/input/input.tsx\r\nimport * as React from \"react\"\r\n\r\nimport { cn } from \"../../../utils/cn\"\r\n\r\nexport interface InputProps\r\n extends React.InputHTMLAttributes<HTMLInputElement> {}\r\n\r\nconst Input = React.forwardRef<HTMLInputElement, InputProps>(\r\n ({ className, type, ...props }, ref) => {\r\n return (\r\n <input\r\n type={type}\r\n className={cn(\r\n \"flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50\",\r\n className\r\n )}\r\n ref={ref}\r\n {...props}\r\n />\r\n )\r\n }\r\n)\r\nInput.displayName = \"Input\"\r\n\r\nexport { Input }","// src/components/ui/label/label.tsx\r\nimport * as React from \"react\"\r\nimport * as LabelPrimitive from \"@radix-ui/react-label\"\r\nimport { cva, type VariantProps } from \"class-variance-authority\"\r\n\r\nimport { cn } from \"../../../utils/cn\"\r\n\r\nconst labelVariants = cva(\r\n \"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70\"\r\n)\r\n\r\nconst Label = React.forwardRef<\r\n React.ElementRef<typeof LabelPrimitive.Root>,\r\n React.ComponentPropsWithoutRef<typeof LabelPrimitive.Root> &\r\n VariantProps<typeof labelVariants>\r\n>(({ className, ...props }, ref) => (\r\n <LabelPrimitive.Root\r\n ref={ref}\r\n className={cn(labelVariants(), className)}\r\n {...props}\r\n />\r\n))\r\nLabel.displayName = LabelPrimitive.Root.displayName\r\n\r\nexport { Label }","// src/components/ui/modal/modal.tsx\r\nimport React from 'react'\r\nimport {\r\n Dialog,\r\n DialogContent,\r\n DialogDescription,\r\n DialogHeader,\r\n DialogTitle,\r\n} from '../dialog/dialog'\r\n\r\ninterface ModalProps {\r\n isOpen: boolean\r\n onClose: () => void\r\n title: string\r\n description?: string\r\n children: React.ReactNode\r\n className?: string\r\n}\r\n\r\nexport function Modal({\r\n isOpen,\r\n onClose,\r\n title,\r\n description,\r\n children,\r\n className,\r\n}: ModalProps) {\r\n return (\r\n <Dialog open={isOpen} onOpenChange={onClose}>\r\n <DialogContent className={className}>\r\n <DialogHeader>\r\n <DialogTitle>{title}</DialogTitle>\r\n {description && <DialogDescription>{description}</DialogDescription>}\r\n </DialogHeader>\r\n {children}\r\n </DialogContent>\r\n </Dialog>\r\n )\r\n}\r\n\r\n// Usage example:\r\n/*\r\nconst MyComponent = () => {\r\n const [isOpen, setIsOpen] = useState(false)\r\n \r\n return (\r\n <Modal \r\n isOpen={isOpen}\r\n onClose={() => setIsOpen(false)}\r\n title=\"Example Modal\"\r\n description=\"This is an example modal dialog\"\r\n >\r\n <div className=\"p-4\">\r\n Modal content goes here\r\n </div>\r\n </Modal>\r\n )\r\n}\r\n*/","// src/components/ui/progress/progress.tsx\r\nimport * as React from \"react\"\r\nimport * as ProgressPrimitive from \"@radix-ui/react-progress\"\r\nimport { cva, type VariantProps } from \"class-variance-authority\"\r\n\r\nimport { cn } from \"../../../utils/cn\"\r\n\r\nconst progressVariants = cva(\r\n \"relative h-4 w-full overflow-hidden rounded-full bg-secondary\",\r\n {\r\n variants: {\r\n variant: {\r\n default: \"\",\r\n success: \"bg-green-100 dark:bg-green-800/20\",\r\n warning: \"bg-yellow-100 dark:bg-yellow-800/20\",\r\n destructive: \"bg-red-100 dark:bg-red-800/20\",\r\n },\r\n size: {\r\n default: \"h-4\",\r\n sm: \"h-2\",\r\n lg: \"h-6\",\r\n },\r\n },\r\n defaultVariants: {\r\n variant: \"default\",\r\n size: \"default\",\r\n },\r\n }\r\n)\r\n\r\nconst progressIndicatorVariants = cva(\r\n \"h-full w-full flex-1 transition-all\",\r\n {\r\n variants: {\r\n variant: {\r\n default: \"bg-primary\",\r\n success: \"bg-green-500\",\r\n warning: \"bg-yellow-500\",\r\n destructive: \"bg-red-500\",\r\n },\r\n },\r\n defaultVariants: {\r\n variant: \"default\",\r\n },\r\n }\r\n)\r\n\r\ninterface ProgressProps\r\n extends React.HTMLAttributes<HTMLDivElement>,\r\n VariantProps<typeof progressVariants> {\r\n value?: number\r\n max?: number\r\n indicatorClassName?: string\r\n}\r\n\r\nconst Progress = React.forwardRef<\r\n React.ElementRef<typeof ProgressPrimitive.Root>,\r\n ProgressProps\r\n>(({ className, value, max = 100, variant, size, indicatorClassName, ...props }, ref) => (\r\n <ProgressPrimitive.Root\r\n ref={ref}\r\n className={cn(progressVariants({ variant, size }), className)}\r\n {...props}\r\n >\r\n <ProgressPrimitive.Indicator\r\n className={cn(\r\n progressIndicatorVariants({ variant }),\r\n \"transition-transform duration-300\",\r\n indicatorClassName\r\n )}\r\n style={{ transform: `translateX(-${100 - ((value || 0) / max) * 100}%)` }}\r\n />\r\n </ProgressPrimitive.Root>\r\n))\r\nProgress.displayName = ProgressPrimitive.Root.displayName\r\n\r\nexport { Progress }","// src/components/ui/select/select.tsx\r\nimport * as React from \"react\"\r\nimport * as SelectPrimitive from \"@radix-ui/react-select\"\r\nimport { Check, ChevronDown, ChevronUp } from \"lucide-react\"\r\n\r\nimport { cn } from \"../../../utils/cn\"\r\n\r\nconst Select = SelectPrimitive.Root\r\n\r\nconst SelectGroup = SelectPrimitive.Group\r\n\r\nconst SelectValue = SelectPrimitive.Value\r\n\r\nconst SelectTrigger = React.forwardRef<\r\n React.ElementRef<typeof SelectPrimitive.Trigger>,\r\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Trigger>\r\n>(({ className, children, ...props }, ref) => (\r\n <SelectPrimitive.Trigger\r\n ref={ref}\r\n className={cn(\r\n \"flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n {children}\r\n <SelectPrimitive.Icon asChild>\r\n <ChevronDown className=\"h-4 w-4 opacity-50\" />\r\n </SelectPrimitive.Icon>\r\n </SelectPrimitive.Trigger>\r\n))\r\nSelectTrigger.displayName = SelectPrimitive.Trigger.displayName\r\n\r\nconst SelectScrollUpButton = React.forwardRef<\r\n React.ElementRef<typeof SelectPrimitive.ScrollUpButton>,\r\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollUpButton>\r\n>(({ className, ...props }, ref) => (\r\n <SelectPrimitive.ScrollUpButton\r\n ref={ref}\r\n className={cn(\r\n \"flex cursor-default items-center justify-center py-1\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n <ChevronUp className=\"h-4 w-4\" />\r\n </SelectPrimitive.ScrollUpButton>\r\n))\r\nSelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName\r\n\r\nconst SelectScrollDownButton = React.forwardRef<\r\n React.ElementRef<typeof SelectPrimitive.ScrollDownButton>,\r\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollDownButton>\r\n>(({ className, ...props }, ref) => (\r\n <SelectPrimitive.ScrollDownButton\r\n ref={ref}\r\n className={cn(\r\n \"flex cursor-default items-center justify-center py-1\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n <ChevronDown className=\"h-4 w-4\" />\r\n </SelectPrimitive.ScrollDownButton>\r\n))\r\nSelectScrollDownButton.displayName =\r\n SelectPrimitive.ScrollDownButton.displayName\r\n\r\nconst SelectContent = React.forwardRef<\r\n React.ElementRef<typeof SelectPrimitive.Content>,\r\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Content>\r\n>(({ className, children, position = \"popper\", ...props }, ref) => (\r\n <SelectPrimitive.Portal>\r\n <SelectPrimitive.Content\r\n ref={ref}\r\n className={cn(\r\n \"relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\r\n position === \"popper\" &&\r\n \"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1\",\r\n className\r\n )}\r\n position={position}\r\n {...props}\r\n >\r\n <SelectScrollUpButton />\r\n <SelectPrimitive.Viewport\r\n className={cn(\r\n \"p-1\",\r\n position === \"popper\" &&\r\n \"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]\"\r\n )}\r\n >\r\n {children}\r\n </SelectPrimitive.Viewport>\r\n <SelectScrollDownButton />\r\n </SelectPrimitive.Content>\r\n </SelectPrimitive.Portal>\r\n))\r\nSelectContent.displayName = SelectPrimitive.Content.displayName\r\n\r\nconst SelectLabel = React.forwardRef<\r\n React.ElementRef<typeof SelectPrimitive.Label>,\r\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Label>\r\n>(({ className, ...props }, ref) => (\r\n <SelectPrimitive.Label\r\n ref={ref}\r\n className={cn(\"py-1.5 pl-8 pr-2 text-sm font-semibold\", className)}\r\n {...props}\r\n />\r\n))\r\nSelectLabel.displayName = SelectPrimitive.Label.displayName\r\n\r\nconst SelectItem = React.forwardRef<\r\n React.ElementRef<typeof SelectPrimitive.Item>,\r\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Item>\r\n>(({ className, children, ...props }, ref) => (\r\n <SelectPrimitive.Item\r\n ref={ref}\r\n className={cn(\r\n \"relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\r\n <SelectPrimitive.ItemIndicator>\r\n <Check className=\"h-4 w-4\" />\r\n </SelectPrimitive.ItemIndicator>\r\n </span>\r\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\r\n </SelectPrimitive.Item>\r\n))\r\nSelectItem.displayName = SelectPrimitive.Item.displayName\r\n\r\nconst SelectSeparator = React.forwardRef<\r\n React.ElementRef<typeof SelectPrimitive.Separator>,\r\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Separator>\r\n>(({ className, ...props }, ref) => (\r\n <SelectPrimitive.Separator\r\n ref={ref}\r\n className={cn(\"-mx-1 my-1 h-px bg-muted\", className)}\r\n {...props}\r\n />\r\n))\r\nSelectSeparator.displayName = SelectPrimitive.Separator.displayName\r\n\r\nexport {\r\n Select,\r\n SelectGroup,\r\n SelectValue,\r\n SelectTrigger,\r\n SelectContent,\r\n SelectLabel,\r\n SelectItem,\r\n SelectSeparator,\r\n SelectScrollUpButton,\r\n SelectScrollDownButton,\r\n}","// src/components/ui/skeleton/skeleton.tsx\r\nimport { cn } from \"../../../utils/cn\"\r\n\r\nfunction Skeleton({\r\n className,\r\n ...props\r\n}: React.HTMLAttributes<HTMLDivElement>) {\r\n return (\r\n <div\r\n className={cn(\r\n \"animate-pulse rounded-md bg-muted\",\r\n className\r\n )}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\nconst SkeletonAvatar = ({\r\n className,\r\n ...props\r\n}: React.HTMLAttributes<HTMLDivElement>) => {\r\n return (\r\n <Skeleton\r\n className={cn(\"h-12 w-12 rounded-full\", className)}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\nconst SkeletonText = ({\r\n className,\r\n ...props\r\n}: React.HTMLAttributes<HTMLDivElement>) => {\r\n return (\r\n <Skeleton\r\n className={cn(\"h-4 w-full\", className)}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\nconst SkeletonButton = ({\r\n className,\r\n ...props\r\n}: React.HTMLAttributes<HTMLDivElement>) => {\r\n return (\r\n <Skeleton\r\n className={cn(\"h-10 w-24 rounded-md\", className)}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\nconst SkeletonCard = ({\r\n className,\r\n ...props\r\n}: React.HTMLAttributes<HTMLDivElement>) => {\r\n return (\r\n <Skeleton\r\n className={cn(\"h-48 w-full rounded-xl\", className)}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\nexport { Skeleton, SkeletonAvatar, SkeletonText, SkeletonButton, SkeletonCard }","// src/components/ui/tabs/tabs.tsx\r\nimport * as React from \"react\"\r\nimport * as TabsPrimitive from \"@radix-ui/react-tabs\"\r\nimport { cva, type VariantProps } from \"class-variance-authority\"\r\n\r\nimport { cn } from \"../../../utils/cn\"\r\n\r\nconst Tabs = TabsPrimitive.Root\r\n\r\nconst tabsListVariants = cva(\r\n \"inline-flex items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground\",\r\n {\r\n variants: {\r\n variant: {\r\n default: \"\",\r\n pills: \"bg-transparent p-0 gap-2\",\r\n underline: \"bg-transparent p-0 w-full justify-start border-b\",\r\n },\r\n },\r\n defaultVariants: {\r\n variant: \"default\",\r\n },\r\n }\r\n)\r\n\r\nconst TabsList = React.forwardRef<\r\n React.ElementRef<typeof TabsPrimitive.List>,\r\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.List> &\r\n VariantProps<typeof tabsListVariants>\r\n>(({ className, variant, ...props }, ref) => (\r\n <TabsPrimitive.List\r\n ref={ref}\r\n className={cn(tabsListVariants({ variant }), className)}\r\n {...props}\r\n />\r\n))\r\nTabsList.displayName = TabsPrimitive.List.displayName\r\n\r\nconst tabsTriggerVariants = cva(\r\n \"inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50\",\r\n {\r\n variants: {\r\n variant: {\r\n default: \"data-[state=active]:bg-background data-[state=active]:text-foreground\",\r\n pills:\r\n \"rounded-full border border-transparent data-[state=active]:bg-primary data-[state=active]:text-primary-foreground\",\r\n underline:\r\n \"rounded-none border-b-2 border-transparent px-4 pb-3 pt-2 data-[state=active]:border-primary\",\r\n },\r\n },\r\n defaultVariants: {\r\n variant: \"default\",\r\n },\r\n }\r\n)\r\n\r\nconst TabsTrigger = React.forwardRef<\r\n React.ElementRef<typeof TabsPrimitive.Trigger>,\r\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.Trigger> &\r\n VariantProps<typeof tabsTriggerVariants>\r\n>(({ className, variant, ...props }, ref) => (\r\n <TabsPrimitive.Trigger\r\n ref={ref}\r\n className={cn(tabsTriggerVariants({ variant }), className)}\r\n {...props}\r\n />\r\n))\r\nTabsTrigger.displayName = TabsPrimitive.Trigger.displayName\r\n\r\nconst TabsContent = React.forwardRef<\r\n React.ElementRef<typeof TabsPrimitive.Content>,\r\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.Content>\r\n>(({ className, ...props }, ref) => (\r\n <TabsPrimitive.Content\r\n ref={ref}\r\n className={cn(\r\n \"mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\",\r\n className\r\n )}\r\n {...props}\r\n />\r\n))\r\nTabsContent.displayName = TabsPrimitive.Content.displayName\r\n\r\nexport { Tabs, TabsList, TabsTrigger, TabsContent }","// src/components/ui/toast/toast.tsx\r\nimport * as React from \"react\"\r\nimport * as ToastPrimitives from \"@radix-ui/react-toast\"\r\nimport { cva, type VariantProps } from \"class-variance-authority\"\r\nimport { X } from \"lucide-react\"\r\nimport { cn } from \"../../../utils/cn\"\r\n\r\nconst ToastProvider = ToastPrimitives.Provider\r\n\r\nconst ToastViewport = React.forwardRef<\r\n React.ElementRef<typeof ToastPrimitives.Viewport>,\r\n React.ComponentPropsWithoutRef<typeof ToastPrimitives.Viewport>\r\n>(({ className, ...props }, ref) => (\r\n <ToastPrimitives.Viewport\r\n ref={ref}\r\n className={cn(\r\n \"fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]\",\r\n className\r\n )}\r\n {...props}\r\n />\r\n))\r\nToastViewport.displayName = ToastPrimitives.Viewport.displayName\r\n\r\nconst toastVariants = cva(\r\n \"group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full\",\r\n {\r\n variants: {\r\n variant: {\r\n default: \"border bg-background text-foreground\",\r\n destructive:\r\n \"destructive group border-destructive bg-destructive text-destructive-foreground\",\r\n },\r\n },\r\n defaultVariants: {\r\n variant: \"default\",\r\n },\r\n }\r\n)\r\n\r\nconst Toast = React.forwardRef<\r\n React.ElementRef<typeof ToastPrimitives.Root>,\r\n React.ComponentPropsWithoutRef<typeof ToastPrimitives.Root> &\r\n VariantProps<typeof toastVariants>\r\n>(({ className, variant, ...props }, ref) => {\r\n return (\r\n <ToastPrimitives.Root\r\n ref={ref}\r\n className={cn(toastVariants({ variant }), className)}\r\n {...props}\r\n />\r\n )\r\n})\r\nToast.displayName = ToastPrimitives.Root.displayName\r\n\r\nconst ToastAction = React.forwardRef<\r\n React.ElementRef<typeof ToastPrimitives.Action>,\r\n React.ComponentPropsWithoutRef<typeof ToastPrimitives.Action>\r\n>(({ className, ...props }, ref) => (\r\n <ToastPrimitives.Action\r\n ref={ref}\r\n className={cn(\r\n \"inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive\",\r\n className\r\n )}\r\n {...props}\r\n />\r\n))\r\nToastAction.displayName = ToastPrimitives.Action.displayName\r\n\r\nconst ToastClose = React.forwardRef<\r\n React.ElementRef<typeof ToastPrimitives.Close>,\r\n React.ComponentPropsWithoutRef<typeof ToastPrimitives.Close>\r\n>(({ className, ...props }, ref) => (\r\n <ToastPrimitives.Close\r\n ref={ref}\r\n className={cn(\r\n \"absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600\",\r\n className\r\n )}\r\n toast-close=\"\"\r\n {...props}\r\n >\r\n <X className=\"h-4 w-4\" />\r\n </ToastPrimitives.Close>\r\n))\r\nToastClose.displayName = ToastPrimitives.Close.displayName\r\n\r\nconst ToastTitle = React.forwardRef<\r\n React.ElementRef<typeof ToastPrimitives.Title>,\r\n React.ComponentPropsWithoutRef<typeof ToastPrimitives.Title>\r\n>(({ className, ...props }, ref) => (\r\n <ToastPrimitives.Title\r\n ref={ref}\r\n className={cn(\"text-sm font-semibold\", className)}\r\n {...props}\r\n />\r\n))\r\nToastTitle.displayName = ToastPrimitives.Title.displayName\r\n\r\nconst ToastDescription = React.forwardRef<\r\n React.ElementRef<typeof ToastPrimitives.Description>,\r\n React.ComponentPropsWithoutRef<typeof ToastPrimitives.Description>\r\n>(({ className, ...props }, ref) => (\r\n <ToastPrimitives.Description\r\n ref={ref}\r\n className={cn(\"text-sm opacity-90\", className)}\r\n {...props}\r\n />\r\n))\r\nToastDescription.displayName = ToastPrimitives.Description.displayName\r\n\r\ntype ToastProps = React.ComponentPropsWithoutRef<typeof Toast>\r\n\r\ntype ToastActionElement = React.ReactElement<typeof ToastAction>\r\n\r\nexport {\r\n type ToastProps,\r\n type ToastActionElement,\r\n ToastProvider,\r\n ToastViewport,\r\n Toast,\r\n ToastTitle,\r\n ToastDescription,\r\n ToastClose,\r\n ToastAction,\r\n}\r\n","import { cn } from \"../../utils/cn\"\r\n\r\ninterface ContainerProps extends React.HTMLAttributes<HTMLDivElement> {\r\n children: React.ReactNode\r\n as?: React.ElementType\r\n}\r\n\r\nexport function Container({\r\n className,\r\n as: Component = \"div\",\r\n children,\r\n ...props\r\n}: ContainerProps) {\r\n return (\r\n <Component\r\n className={cn(\r\n \"mx-auto w-full max-w-7xl px-4 sm:px-6 lg:px-8\",\r\n className\r\n )}\r\n {...props}\r\n >\r\n {children}\r\n </Component>\r\n )\r\n}","// src/components/layout/grid.tsx\r\nimport * as React from \"react\"\r\nimport { cn } from \"../../utils/cn\"\r\n\r\ninterface GridProps extends React.HTMLAttributes<HTMLDivElement> {\r\n children: React.ReactNode\r\n cols?: number\r\n gap?: number\r\n}\r\n\r\nexport function Grid({ \r\n className, \r\n cols = 1, \r\n gap = 4,\r\n children,\r\n ...props \r\n}: GridProps) {\r\n return (\r\n <div\r\n className={cn(\r\n `grid grid-cols-1 gap-${gap} sm:grid-cols-${cols}`,\r\n className\r\n )}\r\n {...props}\r\n >\r\n {children}\r\n </div>\r\n )\r\n}","// src/components/layout/section.tsx\r\nimport * as React from \"react\"\r\nimport { cn } from \"../../utils/cn\"\r\n\r\ninterface SectionProps extends React.HTMLAttributes<HTMLElement> {\r\n children: React.ReactNode\r\n}\r\n\r\nexport function Section({ className, children, ...props }: SectionProps) {\r\n return (\r\n <section\r\n className={cn(\"py-12 md:py-16 lg:py-20\", className)}\r\n {...props}\r\n >\r\n {children}\r\n </section>\r\n )\r\n}","import { useEffect, useState } from \"react\"\r\n\r\nexport function useMediaQuery(query: string) {\r\n const [matches, setMatches] = useState(false)\r\n\r\n useEffect(() => {\r\n const media = window.matchMedia(query)\r\n if (media.matches !== matches) {\r\n setMatches(media.matches)\r\n }\r\n\r\n const listener = () => setMatches(media.matches)\r\n media.addEventListener(\"change\", listener)\r\n return () => media.removeEventListener(\"change\", listener)\r\n }, [matches, query])\r\n\r\n return matches\r\n}","import { useEffect, useState } from \"react\"\r\n\r\nexport function useMounted() {\r\n const [mounted, setMounted] = useState(false)\r\n\r\n useEffect(() => {\r\n setMounted(true)\r\n }, [])\r\n\r\n return mounted\r\n}","import { useLayoutEffect } from \"react\"\r\n\r\nexport function useLockBody() {\r\n useLayoutEffect((): (() => void) => {\r\n const originalStyle: string = window.getComputedStyle(\r\n document.body\r\n ).overflow\r\n document.body.style.overflow = \"hidden\"\r\n return () => (document.body.style.overflow = originalStyle)\r\n }, [])\r\n}"]}
|