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 = () => ( {iconData.map(({ defaultTitle, component, name, notes }) => ( {/* eslint-disable-next-line react/no-danger -- Story with known text */} ))}
Icon Component Example Default title attribute Notes
{name} {component} {defaultTitle}
); export const HhsLogo = () => ;