import { Meta } from '@storybook/react-webpack5';
import { ListItem, type ListItemProps } from '../../ListItem';
import { generateVariantsForControl } from './helpers';
import { withSizedContainer } from '../helpers';

export default {
  component: ListItem,
  title: 'Content/ListItem/tests/variants/cq: medium',
  tags: ['!autodocs'],
  parameters: {
    controls: { disable: true },
    actions: { disable: true },
    knobs: { disable: true },
  },
  decorators: [withSizedContainer('medium')],
} satisfies Meta<ListItemProps>;

export const Button = generateVariantsForControl('button');
export const ButtonAsLink = generateVariantsForControl('buttonAsLink');
export const ButtonPartiallyInteractive = generateVariantsForControl('partialButton');
export const ButtonAsLinkPartiallyInteractive = generateVariantsForControl('partialButtonAsLink');
export const IconButton = generateVariantsForControl('iconButton');
export const IconButtonAsLink = generateVariantsForControl('iconButtonAsLink');
export const IconButtonWithLabel = generateVariantsForControl('iconButtonWithLabel');
export const IconButtonAsLinkWithLabel = generateVariantsForControl('iconButtonAsLinkWithLabel');
export const IconButtonPartiallyInteractive = generateVariantsForControl('partialIconButton');
export const IconButtonAsLinkPartiallyInteractive =
  generateVariantsForControl('partialIconButtonAsLink');
export const Navigation = generateVariantsForControl('navigation');
export const NavigationAsButton = generateVariantsForControl('navigationAsButton');
export const Checkbox = generateVariantsForControl('checkbox');
export const Radio = generateVariantsForControl('radio');
export const Switch = generateVariantsForControl('switch');
export const NonInteractive = generateVariantsForControl('non-interactive');
