21 lines
809 B
TypeScript
21 lines
809 B
TypeScript
'use client';
|
|
|
|
import * as LabelPrimitive from '@radix-ui/react-label';
|
|
import { cn } from '@/lib/utils';
|
|
|
|
export function Form({ className, ...props }: React.FormHTMLAttributes<HTMLFormElement>) {
|
|
return <form className={cn('space-y-4', className)} {...props} />;
|
|
}
|
|
|
|
export function FormItem({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) {
|
|
return <div className={cn('space-y-2', className)} {...props} />;
|
|
}
|
|
|
|
export function FormLabel({ className, ...props }: React.ComponentProps<typeof LabelPrimitive.Root>) {
|
|
return <LabelPrimitive.Root className={cn('text-sm font-medium', className)} {...props} />;
|
|
}
|
|
|
|
export function FormMessage({ className, ...props }: React.HTMLAttributes<HTMLParagraphElement>) {
|
|
return <p className={cn('text-sm text-red-600', className)} {...props} />;
|
|
}
|