This commit introduces multiple new UI components for the project. The added components include ToggleGroup, RadioGroup, Pagination, ToastBox, Textarea, Breadcrumb, Skeleton, Collapsible, Checkbox, Calendar, Accordion, Sonner, and CopyButton. These components enhance the flexibility and functionality of the UI, providing essential elements for better user interaction.
30 lines
1.2 KiB
TypeScript
30 lines
1.2 KiB
TypeScript
"use client";
|
|
|
|
import * as HoverCardPrimitive from "@radix-ui/react-hover-card";
|
|
import * as React from "react";
|
|
|
|
import { cn } from "@/lib/utils";
|
|
|
|
const HoverCard = HoverCardPrimitive.Root;
|
|
|
|
const HoverCardTrigger = HoverCardPrimitive.Trigger;
|
|
|
|
const HoverCardContent = React.forwardRef<
|
|
React.ElementRef<typeof HoverCardPrimitive.Content>,
|
|
React.ComponentPropsWithoutRef<typeof HoverCardPrimitive.Content>
|
|
>(({ className, align = "center", sideOffset = 4, ...props }, ref) => (
|
|
<HoverCardPrimitive.Content
|
|
ref={ref}
|
|
align={align}
|
|
sideOffset={sideOffset}
|
|
className={cn(
|
|
"z-50 w-64 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none 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",
|
|
className,
|
|
)}
|
|
{...props}
|
|
/>
|
|
));
|
|
HoverCardContent.displayName = HoverCardPrimitive.Content.displayName;
|
|
|
|
export { HoverCard, HoverCardTrigger, HoverCardContent };
|