Spaces:
Paused
Paused
| 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<typeof Button> | |
| export default meta | |
| type Story = StoryObj<typeof meta> | |
| 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: ( | |
| <> | |
| <RocketLaunchIcon className="h-4 w-4 mr-1.5 stroke-[1.8px]" /> | |
| Launch | |
| </> | |
| ), | |
| }, | |
| } | |