import type { Meta, StoryObj } from '@storybook/react' import Button from './Button.component'; import { IButton } from './Button.interface'; import Icon from '@/components/atoms/Icon'; import React from 'react'; // More on default export: https://storybook.js.org/docs/react/writing-stories/introduction#default-export export default { title: 'Components/Button', component: Button, // More on argTypes: https://storybook.js.org/docs/react/api/argtypes argTypes: { href: { control: 'text' }, variant: { options: ['primary', 'secondary', 'gray', 'ghost', 'link'], control: { type: 'inline-radio' } }, theme: { options: ['dark', 'light'], control: { type: 'inline-radio' } }, size: { options: ['small', 'normal', 'large'], control: { type: 'inline-radio' } }, outlined: { control: { type: 'boolean' } }, disabled: { control: { type: 'boolean' } }, removeLabel: { control: { type: 'boolean' } }, align: { options: ['left', 'center', 'right'] }, className: { control: 'text' } }, args: { children: 'Button' } } as Meta export const Primary: StoryObj = { render: args => ), args: {} } export const LeftIcon: StoryObj = { args: { ...Primary.args, leftIcon: }, }; export const RightIcon: StoryObj = { args: { ...Primary.args, rightIcon: }, }; export const LeftIconOutlined: StoryObj = { args: { ...Primary.args, outlined: true, leftIcon: }, }; export const TwoButtons: StoryObj = { render: args => ( <> ), args: {} } export const Link: StoryObj = { render: args => ( ), args: {} } export const Disabled: StoryObj = { args: { ...Primary.args, disabled: true }, }; export const All: StoryObj = { render: args => ( <> ), args: {} }