import type { Meta, StoryObj } from '@storybook/vue3-vite' import IconButton from './IconButton.vue' const meta: Meta = { title: 'Components/Button/IconButton', component: IconButton, tags: ['autodocs'], argTypes: { size: { control: { type: 'select' }, options: ['sm', 'md'] }, type: { control: { type: 'select' }, options: ['primary', 'secondary', 'transparent'] }, border: { control: 'boolean', description: 'Toggle border attribute' }, disabled: { control: 'boolean', description: 'Toggle disable status' }, onClick: { action: 'clicked' } } } export default meta type Story = StoryObj export const Primary: Story = { render: (args) => ({ components: { IconButton }, setup() { return { args } }, template: ` ` }), args: { type: 'primary', size: 'md' } } export const Secondary: Story = { render: (args) => ({ components: { IconButton }, setup() { return { args } }, template: ` ` }), args: { type: 'secondary', size: 'md' } } export const Transparent: Story = { render: (args) => ({ components: { IconButton }, setup() { return { args } }, template: ` ` }), args: { type: 'transparent', size: 'md' } } export const Small: Story = { render: (args) => ({ components: { IconButton }, setup() { return { args } }, template: ` ` }), args: { type: 'secondary', size: 'sm' } } export const AllVariants: Story = { render: () => ({ components: { IconButton }, template: `
` }), parameters: { controls: { disable: true }, actions: { disable: true } } }