import type { Meta, StoryObj } from '@storybook/react' import { fn } from '@storybook/test' import { RocketLaunchIcon } from '@heroicons/react/20/solid' import { Button } from '.' const meta = { title: 'Base/Button', component: Button, parameters: { layout: 'centered', }, tags: ['autodocs'], argTypes: { loading: { control: 'boolean' }, variant: { control: 'select', options: ['primary', 'warning', 'secondary', 'secondary-accent', 'ghost', 'ghost-accent', 'tertiary'], }, }, args: { variant: 'ghost', onClick: fn(), children: 'adsf', }, } satisfies Meta export default meta type Story = StoryObj export const Default: Story = { args: { variant: 'primary', loading: false, children: 'Primary Button', }, } export const Secondary: Story = { args: { variant: 'secondary', children: 'Secondary Button', }, } export const SecondaryAccent: Story = { args: { variant: 'secondary-accent', children: 'Secondary Accent Button', }, } export const Ghost: Story = { args: { variant: 'ghost', children: 'Ghost Button', }, } export const GhostAccent: Story = { args: { variant: 'ghost-accent', children: 'Ghost Accent Button', }, } export const Tertiary: Story = { args: { variant: 'tertiary', children: 'Tertiary Button', }, } export const Warning: Story = { args: { variant: 'warning', children: 'Warning Button', }, } export const Disabled: Story = { args: { variant: 'primary', disabled: true, children: 'Disabled Button', }, } export const Loading: Story = { args: { variant: 'primary', loading: true, children: 'Loading Button', }, } export const WithIcon: Story = { args: { variant: 'primary', children: ( <> Launch ), }, }