import { ComponentMeta, ComponentStory } from '@storybook/react'; import { useState } from 'react'; import HeadingButtonComponent from './heading-button'; /** * HeadingButton - Storybook Meta */ export default { title: 'Molecules/Buttons/HeadingButton', component: HeadingButtonComponent, argTypes: { className: { control: { type: 'text', }, description: 'Set additional classnames to the button.', table: { category: 'Styles', }, type: { name: 'string', required: false, }, }, expanded: { control: { type: null, }, description: 'Heading button state (plus or minus).', type: { name: 'boolean', required: true, }, }, level: { control: { type: 'number', min: 1, max: 6, }, description: 'Heading level.', type: { name: 'number', required: true, }, }, setExpanded: { control: { type: null, }, description: 'Callback function to set heading button state.', type: { name: 'function', required: true, }, }, title: { control: { type: 'text', }, description: 'Heading title.', type: { name: 'string', required: true, }, }, }, } as ComponentMeta; const Template: ComponentStory = ({ expanded, setExpanded: _setExpanded, ...args }) => { const [isExpanded, setIsExpanded] = useState(expanded); return ( ); }; /** * Heading Button Stories - Expanded */ export const Expanded = Template.bind({}); Expanded.args = { expanded: true, level: 2, title: 'Your title', }; /** * Heading Button Stories - Collapsed */ export const Collapsed = Template.bind({}); Collapsed.args = { expanded: false, level: 2, title: 'Your title', };