110 lines
2.3 KiB
TypeScript
110 lines
2.3 KiB
TypeScript
import { cx } from 'class-variance-authority';
|
|
import { twMerge } from 'tailwind-merge';
|
|
|
|
export const cn = (...inputs: Parameters<typeof cx>) => twMerge(cx(inputs));
|
|
|
|
export const ccn = ({
|
|
context,
|
|
className,
|
|
on = '',
|
|
off = '',
|
|
}: {
|
|
context: boolean;
|
|
className: string;
|
|
on: string;
|
|
off: string;
|
|
}) => twMerge(className, context ? on : off);
|
|
|
|
export { Avatar, AvatarImage, AvatarFallback } from './avatar';
|
|
export { BasedAvatar } from './based-avatar';
|
|
export { BasedProgress } from './based-progress';
|
|
export { Button, buttonVariants } from './button';
|
|
export {
|
|
Card,
|
|
CardHeader,
|
|
CardFooter,
|
|
CardTitle,
|
|
CardAction,
|
|
CardDescription,
|
|
CardContent,
|
|
} from './card';
|
|
export { Checkbox } from './checkbox';
|
|
export {
|
|
Drawer,
|
|
DrawerPortal,
|
|
DrawerOverlay,
|
|
DrawerTrigger,
|
|
DrawerClose,
|
|
DrawerContent,
|
|
DrawerHeader,
|
|
DrawerFooter,
|
|
DrawerTitle,
|
|
DrawerDescription,
|
|
} from './drawer';
|
|
export {
|
|
DropdownMenu,
|
|
DropdownMenuContent,
|
|
DropdownMenuItem,
|
|
DropdownMenuLabel,
|
|
DropdownMenuSeparator,
|
|
DropdownMenuTrigger,
|
|
} from './dropdown-menu';
|
|
export {
|
|
useFormField,
|
|
Form,
|
|
FormItem,
|
|
FormLabel,
|
|
FormControl,
|
|
FormDescription,
|
|
FormMessage,
|
|
FormField,
|
|
} from './form';
|
|
export {
|
|
type ImageCropProps,
|
|
type ImageCropApplyProps,
|
|
type ImageCropContentProps,
|
|
type ImageCropResetProps,
|
|
type CropperProps,
|
|
Cropper,
|
|
ImageCrop,
|
|
ImageCropApply,
|
|
ImageCropContent,
|
|
ImageCropReset,
|
|
} from './shadcn-io/image-crop';
|
|
export { Input } from './input';
|
|
export {
|
|
InputOTP,
|
|
InputOTPGroup,
|
|
InputOTPSlot,
|
|
InputOTPSeparator,
|
|
} from './input-otp';
|
|
export { Label } from './label';
|
|
export {
|
|
Pagination,
|
|
PaginationContent,
|
|
PaginationLink,
|
|
PaginationItem,
|
|
PaginationPrevious,
|
|
PaginationNext,
|
|
PaginationEllipsis,
|
|
} from './pagination';
|
|
export { Progress } from './progress';
|
|
export { ScrollArea, ScrollBar } from './scroll-area';
|
|
export { Separator } from './separator';
|
|
export { StatusMessage } from './status-message';
|
|
export { SubmitButton } from './submit-button';
|
|
export { Switch } from './switch';
|
|
export {
|
|
Table,
|
|
TableHeader,
|
|
TableBody,
|
|
TableFooter,
|
|
TableHead,
|
|
TableRow,
|
|
TableCell,
|
|
TableCaption,
|
|
} from './table';
|
|
export { Tabs, TabsList, TabsTrigger, TabsContent } from './tabs';
|
|
export { Toaster } from './sonner';
|
|
export { ThemeProvider, ThemeToggle, type ThemeToggleProps } from './theme';
|