UNPKG

@storybook/cli

Version:

Storybook's CLI - easiest method of adding storybook to your projects

50 lines (43 loc) 1.36 kB
import { Story, Meta } from '@storybook/html'; import { createButton, ButtonProps } from './Button'; // More on default export: https://storybook.js.org/docs/html/writing-stories/introduction#default-export export default { title: 'Example/Button', // More on argTypes: https://storybook.js.org/docs/html/api/argtypes argTypes: { backgroundColor: { control: 'color' }, label: { control: 'text' }, onClick: { action: 'onClick' }, primary: { control: 'boolean' }, size: { control: { type: 'select' }, options: ['small', 'medium', 'large'], }, }, } as Meta; // More on component templates: https://storybook.js.org/docs/html/writing-stories/introduction#using-args const Template: Story<ButtonProps> = (args) => { // You can either use a function to create DOM elements or use a plain html string! // return `<div>${label}</div>`; return createButton(args); }; export const Primary = Template.bind({}); // More on args: https://storybook.js.org/docs/html/writing-stories/args Primary.args = { primary: true, label: 'Button', }; export const Secondary = Template.bind({}); Secondary.args = { label: 'Button', }; export const Large = Template.bind({}); Large.args = { size: 'large', label: 'Button', }; export const Small = Template.bind({}); Small.args = { size: 'small', label: 'Button', };