import type { Meta, StoryObj } from '@storybook/react'; import { type ChangeEvent, useState, useCallback } from 'react'; import { Select, type SelectOptions, type SelectProps } from './select'; const meta = { component: Select, title: 'Atoms/Forms/Fields/Select', excludeStories: /Controlled.*$/, } satisfies Meta; export default meta; type Story = StoryObj; export const ControlledSelect = ({ multiple, ...args }: SelectProps) => { const [selected, setSelected] = useState(multiple === true ? [''] : ''); const handler = useCallback( (e: ChangeEvent) => { if (multiple) setSelected( Array.from(e.target.selectedOptions, (option) => option.value) ); else setSelected(e.target.value); }, [multiple] ); return (