Skip to content

Commit f96aa6b

Browse files
Merge pull request #57 from storybookjs/add-ai-and-delta-icons
Add QR, AI, and status icons. Remove the "new" icon
2 parents 10f75f5 + 4ca094c commit f96aa6b

10 files changed

Lines changed: 181 additions & 2 deletions

src/iconList.tsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,7 @@ export const iconList = [
145145
'StructureIcon',
146146
'BoxIcon',
147147
'PowerIcon',
148+
'QRIcon',
148149
]
149150
},
150151
{
@@ -240,8 +241,10 @@ export const iconList = [
240241
'StatusWarnIcon',
241242
'StatusPassIcon',
242243
'GiftIcon',
243-
'StatusNewIcon',
244+
'SparkleIcon',
244245
'PopOutIcon',
246+
'StatusAddIcon',
247+
'StatusRemoveIcon',
245248
]
246249
},
247250
{

src/icons/QRIcon.stories.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import type { Meta, StoryObj } from '@storybook/react-vite';
2+
3+
import { QRIcon } from './QRIcon';
4+
5+
const meta: Meta<typeof QRIcon> = {
6+
component: QRIcon,
7+
};
8+
9+
export default meta;
10+
type Story = StoryObj<typeof QRIcon>;
11+
12+
export const Default: Story = { args: { size: 100 } };

src/icons/QRIcon.tsx

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
import * as React from 'react';
2+
import { IconProps } from '../types';
3+
4+
export const QRIcon = /* @__PURE__ */ React.forwardRef<
5+
SVGSVGElement,
6+
IconProps
7+
>(({ color = 'currentColor', size = 14, ...props }, forwardedRef) => {
8+
return (
9+
<svg
10+
width={size}
11+
height={size}
12+
viewBox="0 0 14 14"
13+
fill="none"
14+
xmlns="http://www.w3.org/2000/svg"
15+
ref={forwardedRef}
16+
{...props}
17+
>
18+
<path
19+
d="M1.5 9a.5.5 0 01.5.5v2.504h2.5a.5.5 0 010 1H2a1 1 0 01-1-1V9.5a.5.5 0 01.5-.5zM12.5 9a.5.5 0 01.5.5v2.504a1 1 0 01-1 1H9.5a.5.5 0 010-1H12V9.5a.5.5 0 01.5-.5z"
20+
fill={color}
21+
/>
22+
<path
23+
fillRule="evenodd"
24+
clipRule="evenodd"
25+
d="M5.6 8.01a.5.5 0 01.4.49v2l-.01.1a.501.501 0 01-.39.39l-.1.01h-2a.5.5 0 01-.49-.4L3 10.5v-2a.5.5 0 01.5-.5h2l.1.01zM4 10h1V9H4v1z"
26+
fill={color}
27+
/>
28+
<path
29+
d="M8.75 10a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5a.25.25 0 01-.25-.25v-.5a.25.25 0 01.25-.25h.5zM10.75 10a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5a.25.25 0 01-.25-.25v-.5a.25.25 0 01.25-.25h.5zM9.75 9a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5A.25.25 0 019 9.75v-.5A.25.25 0 019.25 9h.5zM8.75 8a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5A.25.25 0 018 8.75v-.5A.25.25 0 018.25 8h.5zM10.75 8a.25.25 0 01.25.25v.5a.25.25 0 01-.25.25h-.5a.25.25 0 01-.25-.25v-.5a.25.25 0 01.25-.25h.5z"
30+
fill={color}
31+
/>
32+
<path
33+
fillRule="evenodd"
34+
clipRule="evenodd"
35+
d="M5.6 3.01a.5.5 0 01.4.49v2l-.01.1a.501.501 0 01-.39.39L5.5 6h-2a.5.5 0 01-.49-.4L3 5.5v-2a.5.5 0 01.5-.5h2l.1.01zM4 5h1V4H4v1zM10.6 3.01a.5.5 0 01.4.49v2l-.01.1a.501.501 0 01-.39.39l-.1.01h-2a.5.5 0 01-.49-.4L8 5.5v-2a.5.5 0 01.5-.5h2l.1.01zM9 5h1V4H9v1z"
36+
fill={color}
37+
/>
38+
<path
39+
d="M12 1a1 1 0 011 1v2.504a.5.5 0 01-1 0V2H9.5a.5.5 0 010-1H12zM4.5 1.004a.5.5 0 110 1H2V4.5a.5.5 0 01-1 0V2.004a1 1 0 011-1h2.5z"
40+
fill={color}
41+
/>
42+
</svg>
43+
);
44+
});

src/icons/SparkleIcon.stories.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import type { Meta, StoryObj } from '@storybook/react-vite';
2+
3+
import { SparkleIcon } from './SparkleIcon';
4+
5+
const meta: Meta<typeof SparkleIcon> = {
6+
component: SparkleIcon,
7+
};
8+
9+
export default meta;
10+
type Story = StoryObj<typeof SparkleIcon>;
11+
12+
export const Default: Story = { args: { size: 100 } };

src/icons/SparkleIcon.tsx

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
import * as React from 'react';
2+
import { IconProps } from '../types';
3+
4+
export const SparkleIcon = /* @__PURE__ */ React.forwardRef<
5+
SVGSVGElement,
6+
IconProps
7+
>(({ color = 'currentColor', size = 14, ...props }, forwardedRef) => {
8+
return (
9+
<svg
10+
width={size}
11+
height={size}
12+
viewBox="0 0 14 14"
13+
fill="none"
14+
xmlns="http://www.w3.org/2000/svg"
15+
ref={forwardedRef}
16+
{...props}
17+
>
18+
<path
19+
d="M7.052 3.004c.01 0 .02 0 .03.002.004 0 .01.003.015.004a.493.493 0 01.051.013l.043.015a.497.497 0 01.089.049l.03.023c.015.012.029.023.042.036.012.012.023.026.035.04l.023.03c.01.015.019.03.027.047.008.014.016.028.022.043.006.014.01.028.015.043.005.017.01.034.013.051l.005.017.03.182A3.5 3.5 0 0010.4 6.476l.182.03c.005 0 .01.003.016.004a.494.494 0 01.051.013l.043.015a.503.503 0 01.089.049l.03.023c.015.012.029.023.042.036.012.012.023.026.035.04l.023.03c.01.015.019.03.027.047.008.014.016.028.022.043l.014.04.014.054.005.017c.002.01 0 .019.001.028.002.018.004.036.004.054 0 .018-.002.035-.004.053v.03l-.006.015a.479.479 0 01-.013.051l-.015.043a.507.507 0 01-.049.089l-.023.03-.035.042-.042.035-.03.023a.503.503 0 01-.046.027c-.014.008-.028.016-.043.022-.014.006-.028.01-.043.015a.491.491 0 01-.051.013l-.016.005-.182.03A3.5 3.5 0 007.522 10.4l-.03.182c0 .005-.004.01-.005.016a.491.491 0 01-.013.051l-.015.043a.503.503 0 01-.049.089l-.023.03-.035.042-.041.035-.03.023a.507.507 0 01-.047.027c-.014.008-.028.016-.043.022-.014.006-.028.01-.043.015a.479.479 0 01-.051.013l-.016.005c-.01.002-.02 0-.03.001-.017.002-.034.004-.052.004-.018 0-.036-.002-.054-.004h-.028c-.006-.002-.011-.005-.017-.006a.503.503 0 01-.051-.013l-.043-.015a.505.505 0 01-.089-.049l-.03-.023c-.015-.012-.029-.023-.041-.035-.013-.013-.024-.027-.036-.042l-.023-.03a.503.503 0 01-.027-.046c-.008-.014-.016-.028-.022-.043-.006-.014-.01-.028-.015-.043a.494.494 0 01-.013-.051l-.004-.016-.03-.182a3.5 3.5 0 00-2.877-2.877l-.182-.03c-.006 0-.011-.004-.017-.005a.493.493 0 01-.051-.013l-.043-.015a.492.492 0 01-.089-.049l-.03-.023c-.015-.012-.029-.023-.041-.035-.013-.013-.024-.027-.036-.041l-.023-.03a.497.497 0 01-.027-.047c-.008-.014-.016-.028-.022-.043-.006-.013-.01-.028-.015-.043a.493.493 0 01-.013-.051l-.004-.016c-.002-.01-.001-.02-.002-.03C3.002 7.035 3 7.018 3 7c0-.018.002-.036.004-.054 0-.009 0-.019.002-.028 0-.006.003-.011.004-.017l.015-.054.013-.04a.498.498 0 01.049-.089l.023-.03.026-.032.02-.02.03-.025.03-.023a.498.498 0 01.047-.027c.014-.008.028-.016.043-.022.014-.006.028-.01.043-.015A.493.493 0 013.4 6.51l.017-.004.182-.03a3.5 3.5 0 002.877-2.877l.03-.182c0-.006.003-.011.004-.017a.493.493 0 01.013-.051l.015-.043a.498.498 0 01.049-.089l.023-.03.026-.032.02-.02.03-.025.03-.023a.498.498 0 01.047-.027c.014-.008.028-.016.043-.022.014-.006.028-.01.043-.015A.493.493 0 016.9 3.01l.017-.004c.01-.002.019-.001.028-.002C6.963 3.002 6.981 3 7 3c.018 0 .035.002.053.004z"
20+
fill={color}
21+
/>
22+
</svg>
23+
);
24+
});

src/icons/StatusAddIcon.stories.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import type { Meta, StoryObj } from '@storybook/react-vite';
2+
3+
import { StatusAddIcon } from './StatusAddIcon';
4+
5+
const meta: Meta<typeof StatusAddIcon> = {
6+
component: StatusAddIcon,
7+
};
8+
9+
export default meta;
10+
type Story = StoryObj<typeof StatusAddIcon>;
11+
12+
export const Default: Story = { args: { size: 100 } };

src/icons/StatusAddIcon.tsx

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
import * as React from 'react';
2+
import { IconProps } from '../types';
3+
4+
export const StatusAddIcon = /* @__PURE__ */ React.forwardRef<
5+
SVGSVGElement,
6+
IconProps
7+
>(({ color = 'currentColor', size = 14, ...props }, forwardedRef) => {
8+
return (
9+
<svg
10+
width={size}
11+
height={size}
12+
viewBox="0 0 14 14"
13+
fill="none"
14+
xmlns="http://www.w3.org/2000/svg"
15+
ref={forwardedRef}
16+
{...props}
17+
>
18+
<path
19+
d="M7 5a.5.5 0 01.5.5v1h1a.5.5 0 010 1h-1v1a.5.5 0 01-1 0v-1h-1a.5.5 0 010-1h1v-1A.5.5 0 017 5z"
20+
fill={color}
21+
/>
22+
<path
23+
fillRule="evenodd"
24+
clipRule="evenodd"
25+
d="M10.5 3a.5.5 0 01.5.5v7a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-7a.5.5 0 01.5-.5h7zM4 10h6V4H4v6z"
26+
fill={color}
27+
/>
28+
</svg>
29+
);
30+
});
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import type { Meta, StoryObj } from '@storybook/react-vite';
2+
3+
import { StatusRemoveIcon } from './StatusRemoveIcon';
4+
5+
const meta: Meta<typeof StatusRemoveIcon> = {
6+
component: StatusRemoveIcon,
7+
};
8+
9+
export default meta;
10+
type Story = StoryObj<typeof StatusRemoveIcon>;
11+
12+
export const Default: Story = { args: { size: 100 } };

src/icons/StatusRemoveIcon.tsx

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
import * as React from 'react';
2+
import { IconProps } from '../types';
3+
4+
export const StatusRemoveIcon = /* @__PURE__ */ React.forwardRef<
5+
SVGSVGElement,
6+
IconProps
7+
>(({ color = 'currentColor', size = 14, ...props }, forwardedRef) => {
8+
return (
9+
<svg
10+
width={size}
11+
height={size}
12+
viewBox="0 0 14 14"
13+
fill="none"
14+
xmlns="http://www.w3.org/2000/svg"
15+
ref={forwardedRef}
16+
{...props}
17+
>
18+
<path d="M8.5 6.5a.5.5 0 010 1h-3a.5.5 0 010-1h3z" fill={color} />
19+
<path
20+
fillRule="evenodd"
21+
clipRule="evenodd"
22+
d="M10.5 3a.5.5 0 01.5.5v7a.5.5 0 01-.5.5h-7a.5.5 0 01-.5-.5v-7a.5.5 0 01.5-.5h7zM4 10h6V4H4v6z"
23+
fill={color}
24+
/>
25+
</svg>
26+
);
27+
});

src/index.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,7 @@ export { MemoryIcon } from './icons/MemoryIcon';
113113
export { StructureIcon } from './icons/StructureIcon';
114114
export { BoxIcon } from './icons/BoxIcon';
115115
export { PowerIcon } from './icons/PowerIcon';
116+
export { QRIcon } from './icons/QRIcon';
116117
export { EditIcon } from './icons/EditIcon';
117118
export { CogIcon } from './icons/CogIcon';
118119
export { NutIcon } from './icons/NutIcon';
@@ -198,8 +199,10 @@ export { StatusIcon } from './icons/StatusIcon';
198199
export { StatusWarnIcon } from './icons/StatusWarnIcon';
199200
export { StatusPassIcon } from './icons/StatusPassIcon';
200201
export { GiftIcon } from './icons/GiftIcon';
201-
export { StatusNewIcon } from './icons/StatusNewIcon';
202+
export { SparkleIcon } from './icons/SparkleIcon';
202203
export { PopOutIcon } from './icons/PopOutIcon';
204+
export { StatusAddIcon } from './icons/StatusAddIcon';
205+
export { StatusRemoveIcon } from './icons/StatusRemoveIcon';
203206
export { ChevronUpIcon } from './icons/ChevronUpIcon';
204207
export { ChevronDownIcon } from './icons/ChevronDownIcon';
205208
export { ChevronLeftIcon } from './icons/ChevronLeftIcon';

0 commit comments

Comments
 (0)