import { htmlMatrix, Meta, Story } from '../../../../../docs';
import { Checkbox, CheckboxProps } from './checkbox.story';
const bordered = [true, false] as const;
const disabled = [true, false] as const;
const invalid = [true, false] as const;
export default {
title: 'CSS/Checkbox',
component: Checkbox,
render: Checkbox,
argTypes: {
children: { description: 'Acts as a label for the ``.' },
},
args: {
children: '',
bordered: false,
disabled: false,
invalid: false,
},
parameters: { display: 'flex' },
} as Meta;
export const Playground: Story = {};
export const Bordered = htmlMatrix(Checkbox, { bordered });
export const Invalid = htmlMatrix(Checkbox, { invalid });
export const Disabled = htmlMatrix(Checkbox, { disabled });
export const AllCombinations: Story = {
...htmlMatrix(
(props: CheckboxProps) => Checkbox({ ...props, children: label(props) }),
{ bordered, disabled, invalid }
),
parameters: {
display: 'grid',
columns: 'repeat(2, 1fr)',
},
};
const label = ({ bordered, disabled, invalid }: CheckboxProps) =>
[
invalid ? 'invalid' : '',
bordered ? 'bordered' : '',
disabled ? 'disabled' : '',
].join(' ');