Skip to content

Commit f1e785b

Browse files
authored
Merge pull request #378 from vtfk/adding-icons
Added more icons and simplified how icons are used in stories
2 parents 24cbb1f + 340b736 commit f1e785b

14 files changed

+453
-132
lines changed

src/ui/Button/IconButton.stories.js

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@ import React, { useState } from 'react'
22
import { withKnobs, select, text } from '@storybook/addon-knobs'
33
import { getConfig } from '../../../scripts/storybook/storyConfig'
44
import { IconButton } from '.'
5+
import { icons } from '../Icon'
6+
7+
const iconList = Object.keys(icons)
58

69
export default getConfig({
710
title: 'IconButton',
@@ -10,8 +13,6 @@ export default getConfig({
1013
argTypes: { onClick: { action: 'clicked' } }
1114
})
1215

13-
const icons = ['activity', 'add', 'arrowLeft', 'arrowRight', 'check', 'chevronDown', 'chevronUp', 'classes', 'close', 'help', 'home', 'menu', 'pause', 'retry', 'search', 'statistics', 'students']
14-
1516
export function Basic () {
1617
const [loading, setLoading] = useState(false)
1718

@@ -21,23 +22,23 @@ export function Basic () {
2122
}
2223

2324
return (
24-
<IconButton icon={select('Icon', icons, 'add')} onClick={clickHandler} spinner={loading}>
25+
<IconButton icon={select('Icon', iconList, 'add')} onClick={clickHandler} spinner={loading}>
2526
{text('Icon Button text', 'Legg til element')}
2627
</IconButton>
2728
)
2829
}
2930

3031
export function Disabled () {
3132
return (
32-
<IconButton icon={select('Icon', icons, 'add')} disabled>
33+
<IconButton icon={select('Icon', iconList, 'add')} disabled>
3334
{text('Icon Button text', 'Legg til element')}
3435
</IconButton>
3536
)
3637
}
3738

3839
export function ShowSpinner () {
3940
return (
40-
<IconButton icon={select('Icon', icons, 'add')} spinner>
41+
<IconButton icon={select('Icon', iconList, 'add')} spinner>
4142
{text('Icon Button text', 'Legg til element')}
4243
</IconButton>
4344
)
@@ -52,7 +53,7 @@ export function Bordered () {
5253
}
5354

5455
return (
55-
<IconButton icon={select('Icon', icons, 'add')} bordered onClick={() => clickHandler()} spinner={loading}>
56+
<IconButton icon={select('Icon', iconList, 'add')} bordered onClick={() => clickHandler()} spinner={loading}>
5657
{text('Icon Button text', 'Legg til element')}
5758
</IconButton>
5859
)
@@ -67,6 +68,6 @@ export function WithoutText () {
6768
}
6869

6970
return (
70-
<IconButton icon={select('Icon', icons, 'add')} onClick={() => clickHandler()} spinner={loading} />
71+
<IconButton icon={select('Icon', iconList, 'add')} onClick={() => clickHandler()} spinner={loading} />
7172
)
7273
}

src/ui/Icon/Icon.stories.js

Lines changed: 19 additions & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -1,84 +1,32 @@
11
import React from 'react'
22
import { getConfig } from '../../../scripts/storybook/storyConfig'
3-
4-
import { Icon } from '.'
3+
import { withKnobs, select } from '@storybook/addon-knobs'
4+
import { Icon, icons } from '.'
55

66
export default getConfig(
7-
{ title: 'Icon', component: Icon }
7+
{
8+
title: 'Icon',
9+
component: Icon,
10+
decorators: [withKnobs]
11+
}
812
)
913

14+
const sizes = ['none', 'xsmall', 'small', 'medium', 'auto']
15+
1016
export function Variants () {
1117
return (
1218
<table>
1319
<tbody>
14-
<tr>
15-
<td>activity</td>
16-
<td><Icon name='activity' /></td>
17-
</tr>
18-
<tr>
19-
<td>add</td>
20-
<td><Icon name='add' /></td>
21-
</tr>
22-
<tr>
23-
<td>arrow-left</td>
24-
<td><Icon name='arrowLeft' /></td>
25-
</tr>
26-
<tr>
27-
<td>arrow-right</td>
28-
<td><Icon name='arrowRight' /></td>
29-
</tr>
30-
<tr>
31-
<td>check</td>
32-
<td><Icon name='check' /></td>
33-
</tr>
34-
<tr>
35-
<td>chevron-down</td>
36-
<td><Icon name='chevronDown' /></td>
37-
</tr>
38-
<tr>
39-
<td>chevron-up</td>
40-
<td><Icon name='chevronUp' /></td>
41-
</tr>
42-
<tr>
43-
<td>classes</td>
44-
<td><Icon name='classes' /></td>
45-
</tr>
46-
<tr>
47-
<td>close</td>
48-
<td><Icon name='close' /></td>
49-
</tr>
50-
<tr>
51-
<td>help</td>
52-
<td><Icon name='help' /></td>
53-
</tr>
54-
<tr>
55-
<td>home</td>
56-
<td><Icon name='home' /></td>
57-
</tr>
58-
<tr>
59-
<td>menu</td>
60-
<td><Icon name='menu' /></td>
61-
</tr>
62-
<tr>
63-
<td>pause</td>
64-
<td><Icon name='pause' /></td>
65-
</tr>
66-
<tr>
67-
<td>retry</td>
68-
<td><Icon name='retry' /></td>
69-
</tr>
70-
<tr>
71-
<td>search</td>
72-
<td><Icon name='search' /></td>
73-
</tr>
74-
<tr>
75-
<td>statistics</td>
76-
<td><Icon name='statistics' /></td>
77-
</tr>
78-
<tr>
79-
<td>students</td>
80-
<td><Icon name='students' /></td>
81-
</tr>
20+
{
21+
Object.keys(icons).map((i) => {
22+
return (
23+
<tr key={i}>
24+
<td>{i}</td>
25+
<td><Icon name={i} size={select('size', sizes, 'none')} /></td>
26+
</tr>
27+
)
28+
})
29+
}
8230
</tbody>
8331
</table>
8432
)

src/ui/Icon/icon-copy.svg

Lines changed: 46 additions & 0 deletions
Loading

src/ui/Icon/icon-delete.svg

Lines changed: 10 additions & 0 deletions
Loading

src/ui/Icon/icon-edit.svg

Lines changed: 46 additions & 0 deletions
Loading

src/ui/Icon/icon-error.svg

Lines changed: 1 addition & 0 deletions
Loading

src/ui/Icon/icon-external.svg

Lines changed: 43 additions & 0 deletions
Loading

src/ui/Icon/icon-help.svg

Lines changed: 4 additions & 14 deletions
Loading

src/ui/Icon/icon-info.svg

Lines changed: 45 additions & 0 deletions
Loading

0 commit comments

Comments
 (0)