import type { Meta, StoryObj } from '@storybook/nextjs' import { useState } from 'react' import Textarea from '.' const meta = { title: 'Base/Textarea', component: Textarea, parameters: { layout: 'centered', docs: { description: { component: 'Textarea component with multiple sizes (small, regular, large). Built with class-variance-authority for consistent styling.', }, }, }, tags: ['autodocs'], argTypes: { size: { control: 'select', options: ['small', 'regular', 'large'], description: 'Textarea size', }, value: { control: 'text', description: 'Textarea value', }, placeholder: { control: 'text', description: 'Placeholder text', }, disabled: { control: 'boolean', description: 'Disabled state', }, destructive: { control: 'boolean', description: 'Error/destructive state', }, rows: { control: 'number', description: 'Number of visible text rows', }, }, } satisfies Meta export default meta type Story = StoryObj // Interactive demo wrapper const TextareaDemo = (args: any) => { const [value, setValue] = useState(args.value || '') return (