import { ComponentMeta, ComponentStory } from '@storybook/react'; import DescriptionList, { DescriptionListItem } from './description-list'; /** * DescriptionList - Storybook Meta */ export default { title: 'Atoms/Typography/Lists/DescriptionList', component: DescriptionList, args: { layout: 'column', withSeparator: false, }, argTypes: { className: { control: { type: 'text', }, description: 'Set additional classnames to the list wrapper', table: { category: 'Styles', }, type: { name: 'string', required: false, }, }, groupClassName: { control: { type: 'text', }, description: 'Set additional classnames to the item wrapper.', table: { category: 'Styles', }, type: { name: 'string', required: false, }, }, items: { control: { type: null, }, description: 'The list items.', type: { name: 'object', required: true, value: {}, }, }, labelClassName: { control: { type: 'text', }, description: 'Set additional classnames to the label wrapper.', table: { category: 'Styles', }, type: { name: 'string', required: false, }, }, layout: { control: { type: 'select', }, description: 'The list layout.', options: ['column', 'inline'], table: { category: 'Options', defaultValue: { summary: 'column' }, }, type: { name: 'string', required: false, }, }, valueClassName: { control: { type: 'text', }, description: 'Set additional classnames to the value wrapper.', table: { category: 'Styles', }, type: { name: 'string', required: false, }, }, withSeparator: { control: { type: 'boolean', }, description: 'Add a slash as separator between multiple values.', table: { category: 'Options', defaultValue: { summary: false }, }, type: { name: 'boolean', required: false, }, }, }, } as ComponentMeta; const Template: ComponentStory = (args) => ( ); const items: DescriptionListItem[] = [ { id: 'term-1', label: 'Term 1:', value: ['Value for term 1'] }, { id: 'term-2', label: 'Term 2:', value: ['Value for term 2'] }, { id: 'term-3', label: 'Term 3:', value: ['Value 1 for term 3', 'Value 2 for term 3', 'Value 3 for term 3'], }, { id: 'term-4', label: 'Term 4:', value: ['Value for term 4'] }, ]; /** * List Stories - Description list */ export const List = Template.bind({}); List.args = { items, };