import type { Meta, StoryObj } from '@storybook/vue3-vite' import { ref } from 'vue' import { Select as NychSelect } from '@nychthemeron/library' const meta = { title: 'Components/Select', component: NychSelect, parameters: { layout: 'centered', }, tags: ['autodocs'], argTypes: { placeholder: { control: { type: 'text' }, description: 'Placeholder text', }, disabled: { control: { type: 'boolean' }, description: 'Disable the select', }, }, } satisfies Meta export default meta type Story = StoryObj const RIVERS = ['Styx', 'Acheron', 'Cocytus', 'Phlegethon', 'Lethe'] export const Default: Story = { render: () => ({ components: { NychSelect }, setup() { const river = ref(null) return { river, RIVERS } }, template: ``, }), } export const Selected: Story = { render: () => ({ components: { NychSelect }, setup() { const river = ref('Lethe') return { river, RIVERS } }, template: ``, }), } export const Disabled: Story = { render: () => ({ components: { NychSelect }, setup() { const river = ref('Styx') return { river, RIVERS } }, template: ``, }), } export const ObjectOptions: Story = { render: () => ({ components: { NychSelect }, setup() { const god = ref(null) const gods = [ { name: 'Apollo', domain: 'apollo' }, { name: 'Hades', domain: 'hades' }, { name: 'Hermes', domain: 'hermes' }, ] return { god, gods } }, template: ``, }), }