import type { Meta, StoryObj } from '@storybook/react'

import { Select } from './Select'

const meta: Meta<typeof Select> = {
  title: 'Components/Select',
  component: Select,
  argTypes: {},
}

export default meta

type Story = StoryObj<typeof Select>

const items = [
  { label: 'Foo', value: 'foo' },
  { label: 'Bar', value: 'bar' },
  { label: 'Baz', value: 'baz' },
]

export const Default: Story = {
  args: {
    items,
    label: 'Select an item',
    name: 'foo',
  },
}

export const DefaultSelected: Story = {
  args: {
    items,
    label: 'Select an item',
    name: 'foo',
    defaultSelectedKey: 'foo',
  },
}

export const Icons: Story = {
  args: {
    items,
    label: 'Select an item',
    name: 'foo',
    icon: 'star',
    itemIcon: 'check',
  },
}

export const Filtering: Story = {
  args: {
    items,
    label: 'Select an item',
    name: 'foo',
    enableFiltering: true,
  },
}

export const FilteringSelected: Story = {
  args: {
    items,
    label: 'Select an item',
    name: 'foo',
    enableFiltering: true,
    defaultSelectedKey: 'foo',
  },
}
