import * as React from 'react';
import { Slot, Slottable } from '@radix-ui/react-slot';
import { ChevronRight } from 'lucide-react';
import { cn } from '../utils';
export const CardButton = React.forwardRef<
HTMLButtonElement,
{
asChild?: boolean;
className?: string;
children: React.ReactNode;
}
>(function CardButton({ className, asChild, ...props }, ref) {
const Comp = asChild ? Slot : 'button';
return (
{props.children}
);
});
export const CardButtonTitle = React.forwardRef<
HTMLDivElement,
{
className?: string;
asChild?: boolean;
children: React.ReactNode;
}
>(function CardButtonTitle({ className, asChild, ...props }, ref) {
const Comp = asChild ? Slot : 'div';
return (
{props.children}
);
});
export const CardButtonHeader = React.forwardRef<
HTMLDivElement,
{
className?: string;
children: React.ReactNode;
asChild?: boolean;
displayArrow?: boolean;
}
>(function CardButtonHeader(
{ className, asChild, displayArrow = true, ...props },
ref,
) {
const Comp = asChild ? Slot : 'div';
return (
{props.children}
);
});
export const CardButtonContent = React.forwardRef<
HTMLDivElement,
{
className?: string;
asChild?: boolean;
children: React.ReactNode;
}
>(function CardButtonContent({ className, asChild, ...props }, ref) {
const Comp = asChild ? Slot : 'div';
return (
{props.children}
);
});
export const CardButtonFooter = React.forwardRef<
HTMLDivElement,
{
className?: string;
asChild?: boolean;
children: React.ReactNode;
}
>(function CardButtonFooter({ className, asChild, ...props }, ref) {
const Comp = asChild ? Slot : 'div';
return (
{props.children}
);
});