13 lines
600 B
TypeScript
13 lines
600 B
TypeScript
import type { TextareaHTMLAttributes } from 'react'
|
|
import { cn } from '@/lib/utils'
|
|
|
|
const sizes: Record<string, string> = {
|
|
sm: 'text-[length:var(--ui-font-sm)] px-[var(--ui-px-sm)] py-1.5 min-h-16',
|
|
md: 'text-[length:var(--ui-font-md)] px-[var(--ui-px-md)] py-2 min-h-24',
|
|
lg: 'text-[length:var(--ui-font-lg)] px-[var(--ui-px-lg)] py-2.5 min-h-32',
|
|
}
|
|
|
|
export function Textarea({ className, size = 'md', ...props }: TextareaHTMLAttributes<HTMLTextAreaElement> & { size?: 'sm' | 'md' | 'lg' }) {
|
|
return <textarea {...props} className={cn('ui-control resize-y', sizes[size], className)} />
|
|
}
|