"use client"; import { Button } from "@/components/ui/button"; import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, } from "@/components/ui/tooltip"; import { cn } from "@/lib/utils"; import { type LucideIcon, XIcon } from "lucide-react"; import type { ComponentProps, HTMLAttributes } from "react"; export type ArtifactProps = HTMLAttributes; export const Artifact = ({ className, ...props }: ArtifactProps) => (
); export type ArtifactHeaderProps = HTMLAttributes; export const ArtifactHeader = ({ className, ...props }: ArtifactHeaderProps) => (
); export type ArtifactCloseProps = ComponentProps; export const ArtifactClose = ({ className, children, size = "sm", variant = "ghost", ...props }: ArtifactCloseProps) => ( ); export type ArtifactTitleProps = HTMLAttributes; export const ArtifactTitle = ({ className, ...props }: ArtifactTitleProps) => (

); export type ArtifactDescriptionProps = HTMLAttributes; export const ArtifactDescription = ({ className, ...props }: ArtifactDescriptionProps) => (

); export type ArtifactActionsProps = HTMLAttributes; export const ArtifactActions = ({ className, ...props }: ArtifactActionsProps) => (

); export type ArtifactActionProps = ComponentProps & { tooltip?: string; label?: string; icon?: LucideIcon; }; export const ArtifactAction = ({ tooltip, label, icon: Icon, children, className, size = "sm", variant = "ghost", ...props }: ArtifactActionProps) => { const button = ( ); if (tooltip) { return ( {button}

{tooltip}

); } return button; }; export type ArtifactContentProps = HTMLAttributes; export const ArtifactContent = ({ className, ...props }: ArtifactContentProps) => (
);