Skip to content

Commit 73cac42

Browse files
authored
1 parent 1c93f39 commit 73cac42

File tree

4 files changed

+82
-0
lines changed

4 files changed

+82
-0
lines changed

static/app/icons/iconKeyboard.tsx

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
import {forwardRef} from 'react';
2+
3+
import type {SVGIconProps} from './svgIcon';
4+
import {SvgIcon} from './svgIcon';
5+
6+
const IconKeyboard = forwardRef<SVGSVGElement, SVGIconProps>((props, ref) => {
7+
return (
8+
<SvgIcon {...props} ref={ref}>
9+
<path d="M15.28,13.49H.72c-.41,0-.75-.34-.75-.75V3.26c0-.41.34-.75.75-.75h14.56c.41,0,.75.34.75.75v9.49c0,.41-.34.75-.75.75ZM1.47,11.99h13.06v-7.99H1.47v7.99Z" />
10+
<rect x="10.89" y="3.26" width="1.5" height="6.32" />
11+
<rect x="3.61" y="3.26" width="1.5" height="6.32" />
12+
<rect x="7.25" y="3.26" width="1.5" height="6.32" />
13+
<rect x=".72" y="8.83" width="14.56" height="1.5" />
14+
<rect x=".72" y="5.67" width="14.56" height="1.5" />
15+
</SvgIcon>
16+
);
17+
});
18+
19+
IconKeyboard.displayName = 'IconKeyboard';
20+
21+
export {IconKeyboard};

static/app/icons/iconThumb.tsx

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
import {forwardRef} from 'react';
2+
import {css, useTheme} from '@emotion/react';
3+
4+
import type {SVGIconProps} from './svgIcon';
5+
import {SvgIcon} from './svgIcon';
6+
7+
interface Props extends SVGIconProps {
8+
direction?: 'up' | 'right' | 'down' | 'left';
9+
}
10+
11+
const IconThumb = forwardRef<SVGSVGElement, Props>(
12+
({direction = 'up', ...props}, ref) => {
13+
const theme = useTheme();
14+
15+
return (
16+
<SvgIcon
17+
{...props}
18+
ref={ref}
19+
css={
20+
direction
21+
? css`
22+
transition: transform 120ms ease-in-out;
23+
transform: rotate(${theme.iconDirections[direction]}deg);
24+
`
25+
: undefined
26+
}
27+
>
28+
<path d="M12.57,16.01h-5.27c-.7,0-1.41-.09-2.09-.25l-1.91-.47H.74c-.41,0-.75-.34-.75-.75v-7.96c0-.41.34-.75.75-.75h3.15c.61,0,1.13-.44,1.23-1.04l.51-2.93c.1-.59.43-1.11.93-1.45.49-.34,1.09-.47,1.68-.37.59.1,1.11.43,1.45.92.34.49.48,1.09.37,1.68l-.51,2.89h4.19c1.24,0,2.25,1.01,2.25,2.25,0,.68-.31,1.29-.79,1.71.26.37.41.81.41,1.29,0,.8-.42,1.51-1.06,1.91.18.32.28.69.28,1.09,0,1.24-1.01,2.25-2.25,2.25ZM1.49,13.79h1.91c.06,0,.12,0,.18.02l1.99.49c.57.14,1.15.21,1.73.21h5.27c.41,0,.75-.33.75-.75s-.33-.75-.75-.75-.75-.34-.75-.75.34-.75.75-.75h.78c.41,0,.75-.33.75-.75s-.33-.75-.75-.75-.75-.34-.75-.75.34-.75.75-.75h.38c.41,0,.75-.33.75-.75s-.33-.75-.75-.75h-5.09c-.22,0-.43-.1-.58-.27s-.2-.39-.16-.61l.67-3.77c.03-.2,0-.39-.12-.56-.11-.16-.29-.27-.48-.31-.2-.03-.39,0-.56.12-.16.11-.27.29-.31.48l-.51,2.93c-.23,1.32-1.37,2.28-2.71,2.28H1.49v6.46Z" />
29+
<path d="M3.4,15.29c-.41,0-.75-.34-.75-.75v-7.96c0-.41.34-.75.75-.75s.75.34.75.75v7.96c0,.41-.34.75-.75.75Z" />
30+
</SvgIcon>
31+
);
32+
}
33+
);
34+
35+
IconThumb.displayName = 'IconThumb';
36+
37+
export {IconThumb};

static/app/icons/icons.stories.tsx

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1029,6 +1029,28 @@ const SECTIONS: TSection[] = [
10291029
name: 'Tap',
10301030
defaultProps: {},
10311031
},
1032+
{
1033+
id: 'keyboard',
1034+
keywords: ['keys', 'shortcut'],
1035+
name: 'Keyboard',
1036+
defaultProps: {},
1037+
},
1038+
{
1039+
id: 'thumb',
1040+
keywords: ['feedback', 'good'],
1041+
additionalProps: ['direction'],
1042+
name: 'Thumb',
1043+
defaultProps: {},
1044+
},
1045+
{
1046+
id: 'thumb',
1047+
keywords: ['feedback', 'bad', 'poor'],
1048+
additionalProps: ['direction'],
1049+
name: 'Thumb',
1050+
defaultProps: {
1051+
direction: ['down'],
1052+
},
1053+
},
10321054
],
10331055
},
10341056
{

static/app/icons/index.tsx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ export {IconInput} from './iconInput';
5252
export {IconIssues} from './iconIssues';
5353
export {IconJira} from './iconJira';
5454
export {IconJson} from './iconJson';
55+
export {IconKeyboard} from './iconKeyboard';
5556
export {IconKeyDown} from './iconKeyDown';
5657
export {IconLab} from './iconLab';
5758
export {IconLaptop} from './iconLaptop';
@@ -109,6 +110,7 @@ export {IconTag} from './iconTag';
109110
export {IconTap} from './iconTap';
110111
export {IconTeamwork} from './iconTeamwork';
111112
export {IconTelescope} from './iconTelescope';
113+
export {IconThumb} from './iconThumb';
112114
export {IconTerminal} from './iconTerminal';
113115
export {IconTimer} from './iconTimer';
114116
export {IconToggle} from './iconToggle';

0 commit comments

Comments
 (0)