import { forwardRef, type HTMLAttributes } from 'react'
import { cn } from '@/lib/utils'
// --- Card ---
export interface CardProps extends HTMLAttributes {
variant?: 'surface' | 'outlined' | 'elevated' | 'filled'
}
const variantStyles: Record = {
surface: 'bg-surface border border-border shadow-default',
outlined: 'bg-surface border border-border',
elevated: 'bg-surface shadow-md',
filled: 'bg-primary text-white',
}
export const Card = forwardRef(
({ variant = 'surface', className, ...props }, ref) => (
),
)
Card.displayName = 'Card'
// --- CardHeader ---
export interface CardHeaderProps extends HTMLAttributes {
action?: React.ReactNode
}
export const CardHeader = forwardRef(
({ action, className, children, ...props }, ref) => (
{children}
{action &&
{action}
}
),
)
CardHeader.displayName = 'CardHeader'
// --- CardTitle ---
export type CardTitleProps = HTMLAttributes
export const CardTitle = forwardRef(
({ className, ...props }, ref) => (
),
)
CardTitle.displayName = 'CardTitle'
// --- CardDescription ---
export type CardDescriptionProps = HTMLAttributes
export const CardDescription = forwardRef(
({ className, ...props }, ref) => (
),
)
CardDescription.displayName = 'CardDescription'
// --- CardContent ---
export type CardContentProps = HTMLAttributes
export const CardContent = forwardRef(
({ className, ...props }, ref) => (
),
)
CardContent.displayName = 'CardContent'
// --- CardFooter ---
export type CardFooterProps = HTMLAttributes
export const CardFooter = forwardRef(
({ className, ...props }, ref) => (
),
)
CardFooter.displayName = 'CardFooter'