import React from 'react';
import {
AlignItems,
Color,
DISPLAY,
FLEX_DIRECTION,
Size,
} from '../../../helpers/constants/design-system';
import Box from '../../ui/box/box';
import { ICON_NAMES } from '../icon';
import { BUTTON_ICON_SIZES } from './button-icon.constants';
import { ButtonIcon } from './button-icon';
import README from './README.mdx';
const marginSizeControlOptions = [
undefined,
0,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
'auto',
];
export default {
title: 'Components/ComponentLibrary/ButtonIcon',
component: ButtonIcon,
parameters: {
docs: {
page: README,
},
},
argTypes: {
ariaLabel: {
control: 'text',
},
as: {
control: 'select',
options: ['button', 'a'],
},
className: {
control: 'text',
},
color: {
control: 'select',
options: Object.values(Color),
},
disabled: {
control: 'boolean',
},
href: {
control: 'text',
},
iconName: {
control: 'select',
options: Object.values(ICON_NAMES),
},
size: {
control: 'select',
options: Object.values(BUTTON_ICON_SIZES),
},
marginTop: {
options: marginSizeControlOptions,
control: 'select',
table: { category: 'box props' },
},
marginRight: {
options: marginSizeControlOptions,
control: 'select',
table: { category: 'box props' },
},
marginBottom: {
options: marginSizeControlOptions,
control: 'select',
table: { category: 'box props' },
},
marginLeft: {
options: marginSizeControlOptions,
control: 'select',
table: { category: 'box props' },
},
},
};
export const DefaultStory = (args) => ;
DefaultStory.args = {
iconName: ICON_NAMES.CLOSE,
ariaLabel: 'Close',
};
DefaultStory.storyName = 'Default';
export const IconName = (args) => ;
IconName.args = {
iconName: ICON_NAMES.CLOSE,
ariaLabel: 'Close',
};
export const SizeStory = (args) => (
);
SizeStory.storyName = 'Size';
export const AriaLabel = (args) => (
<>
>
);
export const As = (args) => (
);
export const Href = (args) => (
);
Href.args = {
ariaLabel: 'Visit Metamask.io',
href: 'https://metamask.io/',
color: Color.primaryDefault,
};
export const ColorStory = (args) => (
);
ColorStory.storyName = 'Color';
ColorStory.args = {
color: Color.primaryDefault,
};
export const Disabled = (args) => (
);
Disabled.args = {
disabled: true,
};