import React from 'react' import { type Meta } from '@storybook/react' import type { ButtonProps } from '~components/ButtonV1' import { Icon } from '~components/Icon' import { StickerSheet, type StickerSheetStory } from '~storybook/components/StickerSheet' import { IconButton, type IconButtonProps } from '../index' export default { title: 'Components/Button/IconButton (deprecated)', parameters: { chromatic: { disable: false }, controls: { disable: true }, }, tags: ['!dev'], } satisfies Meta const WORKING_PROPS: ButtonProps = { label: 'Label', working: true, workingLabel: 'Submitting', workingLabelHidden: true, } const REVERSED__VARIANT_PROPS: { title: string props: IconButtonProps }[] = [ { title: 'Default', props: { label: 'Default label', icon: , }, }, { title: 'Primary', props: { label: 'Primary label', icon: , primary: true, }, }, { title: 'Destructive', props: { label: 'Label', icon: , destructive: true, }, }, { title: 'Secondary', props: { label: 'Label', icon: , secondary: true, }, }, ] const StickerSheetTemplate: StickerSheetStory = { render: ({ isReversed }) => { const VARIANTS_PROPS: { title: string props: ButtonProps }[] = isReversed ? REVERSED__VARIANT_PROPS : [ ...REVERSED__VARIANT_PROPS, { title: 'Secondary Destructive', props: { label: 'Label', icon: , secondary: true, destructive: true, }, }, ] return ( {VARIANTS_PROPS.map(({ title, props }) => ( ))} ) }, parameters: { pseudo: { hover: '[data-sb-pseudo-styles="hover"]', active: '[data-sb-pseudo-styles="active"]', focus: '[data-sb-pseudo-styles="focus"]', focusVisible: '[data-sb-pseudo-styles="focus"]', }, }, } export const StickerSheetDefault: StickerSheetStory = { ...StickerSheetTemplate, name: 'Sticker Sheet (Default)', } export const StickerSheetReversed: StickerSheetStory = { ...StickerSheetTemplate, name: 'Sticker Sheet (Reversed)', parameters: { ...StickerSheetTemplate.parameters, backgrounds: { default: 'Purple 700' }, }, args: { isReversed: true }, } export const StickerSheetRTL: StickerSheetStory = { ...StickerSheetTemplate, name: 'Sticker Sheet (RTL)', parameters: { ...StickerSheetTemplate.parameters, textDirection: 'rtl', }, }