import type { Meta, StoryObj } from '@storybook/vue3-vite'; import SelectContent from '../select-content.vue'; import SelectGroup from '../select-group.vue'; import SelectIcon from '../select-icon.vue'; import SelectItem from '../select-item.vue'; import SelectLabel from '../select-label.vue'; import SelectSeparator from '../select-separator.vue'; import SelectTrigger from '../select-trigger.vue'; import SelectValue from '../select-value.vue'; import Select from '../select.vue'; const meta: Meta = { title: 'Components/Select', component: Select, }; export default meta; type Story = StoryObj; export const Default: Story = { args: { }, render: args => ({ components: { Select, SelectValue, SelectTrigger, SelectSeparator, SelectLabel, SelectGroup, SelectItem, SelectIcon, SelectContent }, setup() { return { args }; }, template: ` `, }), }; export const WithIcons: Story = { args: { defaultValue: 'utility', }, render: args => ({ components: { Select, SelectValue, SelectTrigger, SelectSeparator, SelectLabel, SelectGroup, SelectItem, SelectIcon, SelectContent }, setup() { return { args }; }, template: ` `, }), }; export const Size: Story = { args: { defaultValue: 'apple', }, render: args => ({ components: { Select, SelectValue, SelectTrigger, SelectSeparator, SelectLabel, SelectGroup, SelectItem, SelectIcon, SelectContent }, setup() { return { args }; }, template: `
`, }), }; export const Country: Story = { args: { disabled: true, }, render: args => ({ components: { Select, SelectValue, SelectTrigger, SelectSeparator, SelectLabel, SelectGroup, SelectItem, SelectIcon, SelectContent }, setup() { return { args }; }, template: ` `, }), }; export const Disabled: Story = { args: { defaultValue: 'apple', disabled: true, }, render: args => ({ components: { Select, SelectValue, SelectTrigger, SelectSeparator, SelectLabel, SelectGroup, SelectItem, SelectIcon, SelectContent }, setup() { return { args }; }, template: `
`, }), }; export const Compact: Story = { args: { defaultValue: '5', }, render: args => ({ components: { Select, SelectValue, SelectTrigger, SelectSeparator, SelectLabel, SelectGroup, SelectItem, SelectIcon, SelectContent }, setup() { return { args }; }, template: ` `, }), }; export const Inline: Story = { args: { }, render: args => ({ components: { Select, SelectValue, SelectTrigger, SelectSeparator, SelectLabel, SelectGroup, SelectItem, SelectIcon, SelectContent }, setup() { return { args }; }, template: ` `, }), }; export const Group: Story = { args: { }, render: args => ({ components: { Select, SelectValue, SelectTrigger, SelectSeparator, SelectLabel, SelectGroup, SelectItem, SelectIcon, SelectContent }, setup() { return { args }; }, template: ` `, }), }; export const HasError: Story = { args: { }, render: args => ({ components: { Select, SelectValue, SelectTrigger, SelectSeparator, SelectLabel, SelectGroup, SelectItem, SelectIcon, SelectContent }, setup() { return { args }; }, template: ` `, }), };