1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90
import React from 'react'; import styled, { css } from 'styled-components'; import Icon from './Icon'; import { icons } from '../../shared/icons'; const Meta = styled.div` color: #666; font-size: 12px; `; const Item = styled.li` display: inline-flex; flex-direction: row; align-items: center; flex: 0 1 20%; min-width: 120px; padding: 0px 7.5px 20px; svg { margin-right: 10px; width: 24px; height: 24px; } ___CSS_0___; `; const List = styled.ul` display: flex; flex-flow: row wrap; list-style: none; `; export default { title: 'Components|Icon', component: Icon, }; export const labels = () => ( <> There are {Object.keys(icons).length} icons <List> {Object.keys(icons).map(key => ( <Item key={key}> <Icon icon={key} aria-hidden /> <Meta>{key}</Meta> </Item> ))} </List> </> ); export const noLabels = () => ( <List> {Object.keys(icons).map(key => ( <Item minimal key={key}> <Icon icon={key} aria-label={key} /> </Item> ))} </List> ); export const inline = () => ( <> this is an inline <Icon icon="facehappy" aria-label="Happy face" /> icon (default) </> ); export const block = () => ( <> this is a block <Icon icon="facehappy" aria-label="Happy face" block /> icon </> );