"use client"; import { clsx } from "clsx"; import { useEffect, useRef, useState, type ReactNode, type ButtonHTMLAttributes, type InputHTMLAttributes, type TextareaHTMLAttributes } from "react"; import { X, Loader2, Check } from "lucide-react"; export const cn = clsx; export function Button({ variant = "default", size = "md", loading, className, children, ...p }: ButtonHTMLAttributes & { variant?: "default" | "primary" | "ghost" | "danger" | "outline"; size?: "sm" | "md" | "lg" | "icon"; loading?: boolean }) { return ( ); } export function IconButton({ label, className, children, ...p }: ButtonHTMLAttributes & { label: string }) { return ; } export function Input(p: InputHTMLAttributes) { return ; } export function Textarea(p: TextareaHTMLAttributes) { return