import {
AddIcon,
AlertCircleIcon,
AlertIcon,
ArrowsStackedIcon,
ArrowIcon,
BuildingCircleIcon,
CalendarIcon,
CheckCircleIcon,
CheckIcon,
CloseIcon,
CloseIconThin,
DownloadIcon,
EmailIcon,
ExternalLinkIcon,
HHSLogo,
ImageIcon,
InfoCircleIcon,
InfoCircleIconThin,
LinkIcon,
LockCircleIcon,
LockIcon,
MenuIcon,
MenuIconThin,
MinusCircleIcon,
NextIcon,
PdfIcon,
PlusCircleIcon,
PrintIcon,
QuotationMarkIcon,
RemoveIcon,
RssIcon,
StarIcon,
SvgIcon,
UsaFlagIcon,
WarningIcon,
WhatsNewIcon,
} from './index';
export default {
title: 'Components/Icons',
component: SvgIcon,
parameters: {
docs: {
underlyingHtmlElements: ['svg'],
},
},
};
const iconData = [
{
defaultTitle: 'Add',
component: ,
name: 'AddIcon',
},
{
defaultTitle: 'Alert Circle Icon',
component: ,
name: 'AlertCircleIcon',
},
{
defaultTitle: 'Alert',
component: ,
name: 'AlertIcon',
},
{
defaultTitle: 'Sort',
component: ,
name: 'ArrowsStackedIcon',
},
{
defaultTitle: '[direction of arrow]',
component: (
<>
>
),
name: 'ArrowIcon',
notes:
'Component takes direction
prop to determine if it is up, down, left or right.',
},
{
defaultTitle: 'Building in circle',
component: ,
name: 'BuildingCircleIcon',
},
{
defaultTitle: 'Calendar',
component: ,
name: 'CalendarIcon',
},
{
defaultTitle: 'Check mark in circle',
component: ,
name: 'CheckCircleIcon',
},
{
defaultTitle: 'Check mark',
component: ,
name: 'CheckIcon',
},
{
defaultTitle: 'Close',
component: ,
name: 'CloseIcon',
},
{
defaultTitle: 'Close',
component: ,
name: 'CloseIconThin',
},
{
defaultTitle: 'Download',
component: ,
name: 'DownloadIcon',
},
{
defaultTitle: 'Email',
component: ,
name: 'EmailIcon',
},
{
defaultTitle: 'External Link',
component: ,
name: 'ExternalLinkIcon',
},
{
defaultTitle: 'Image',
component: ,
name: 'ImageIcon',
},
{
defaultTitle: 'Information',
component: ,
name: 'InfoCircleIcon',
},
{
defaultTitle: 'Information',
component: ,
name: 'InfoCircleIconThin',
},
{
defaultTitle: 'Link',
component: ,
name: 'LinkIcon',
},
{
defaultTitle: 'Lock in circle',
component: ,
name: 'LockCircleIcon',
},
{
defaultTitle: 'Lock',
component: ,
name: 'LockIcon',
},
{
defaultTitle: 'Menu Icon',
component: ,
name: 'MenuIcon',
},
{
defaultTitle: 'Menu',
component: ,
name: 'MenuIconThin',
},
{
defaultTitle: 'Minus in circle',
component: ,
name: 'MinusCircleIcon',
},
{
defaultTitle: 'Next',
component: ,
name: 'NextIcon',
},
{
defaultTitle: 'Pdf',
component: ,
name: 'PdfIcon',
},
{
defaultTitle: 'Plus in circle',
component: ,
name: 'PlusCircleIcon',
},
{
defaultTitle: 'Print',
component: ,
name: 'PrintIcon',
},
{
defaultTitle: 'Quotation Mark',
component: ,
name: 'QuotationMarkIcon',
},
{
defaultTitle: 'Remove',
component: ,
name: 'RemoveIcon',
},
{
defaultTitle: 'RSS',
component: ,
name: 'RssIcon',
},
{
defaultTitle: 'Star / Star Filled',
component: (
<>
>
),
name: 'StarIcon',
notes: 'Component takes isFilled
prop to determine star is filled or an outline.',
},
{
defaultTitle: 'U.S. flag',
component: ,
name: 'UsaFlagIcon',
},
{
defaultTitle: 'Warning',
component: ,
name: 'WarningIcon',
},
{
defaultTitle: 'What’s New',
component: ,
name: 'WhatsNewIcon',
},
];
export const AvailableIcons = () => (
Icon Component |
Example |
Default title attribute
|
Notes |
{iconData.map(({ defaultTitle, component, name, notes }) => (
{name}
|
{component} |
{defaultTitle} |
{/* eslint-disable-next-line react/no-danger -- Story with known text */}
|
))}
);
export const HhsLogo = () => ;