@primitiv-ui/icons 0.1.0 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/package.json +2 -1
- package/src/IconBase.tsx +10 -3
- package/src/icons/ArrowLeft.tsx +15 -3
- package/src/icons/ArrowRight.tsx +15 -3
- package/src/icons/Bell.tsx +15 -3
- package/src/icons/Calendar.tsx +15 -3
- package/src/icons/Check.tsx +15 -3
- package/src/icons/ChevronDown.tsx +15 -3
- package/src/icons/ChevronLeft.tsx +15 -3
- package/src/icons/ChevronRight.tsx +15 -3
- package/src/icons/ChevronUp.tsx +15 -3
- package/src/icons/Close.tsx +15 -3
- package/src/icons/Copy.tsx +15 -3
- package/src/icons/Delete.tsx +15 -3
- package/src/icons/Download.tsx +15 -3
- package/src/icons/Edit.tsx +15 -3
- package/src/icons/Error.tsx +15 -3
- package/src/icons/ExternalLink.tsx +15 -3
- package/src/icons/Eye.tsx +15 -3
- package/src/icons/EyeOff.tsx +15 -3
- package/src/icons/File.tsx +15 -3
- package/src/icons/Filter.tsx +15 -3
- package/src/icons/Folder.tsx +15 -3
- package/src/icons/Grid.tsx +15 -3
- package/src/icons/Home.tsx +15 -3
- package/src/icons/Image.tsx +15 -3
- package/src/icons/Info.tsx +15 -3
- package/src/icons/Link.tsx +15 -3
- package/src/icons/List.tsx +15 -3
- package/src/icons/Mail.tsx +15 -3
- package/src/icons/Menu.tsx +15 -3
- package/src/icons/Minus.tsx +15 -3
- package/src/icons/Moon.tsx +15 -3
- package/src/icons/Plus.tsx +15 -3
- package/src/icons/Search.tsx +15 -3
- package/src/icons/Settings.tsx +15 -3
- package/src/icons/Share.tsx +15 -3
- package/src/icons/Sort.tsx +15 -3
- package/src/icons/Success.tsx +15 -3
- package/src/icons/Sun.tsx +15 -3
- package/src/icons/Upload.tsx +15 -3
- package/src/icons/User.tsx +15 -3
- package/src/icons/Warning.tsx +15 -3
- package/src/index.ts +3 -3
- package/src/types.ts +9 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Simon Revill
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/package.json
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@primitiv-ui/icons",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2",
|
|
4
|
+
"description": "Fill-based SVG icon library for the Primitiv ecosystem. Icons inherit currentColor, scale via a size prop, accept all native SVG attributes, and tree-shake cleanly.",
|
|
4
5
|
"type": "module",
|
|
5
6
|
"main": "./src/index.ts",
|
|
6
7
|
"types": "./src/index.ts",
|
package/src/IconBase.tsx
CHANGED
|
@@ -1,16 +1,23 @@
|
|
|
1
|
-
import type { Ref } from 'react'
|
|
2
|
-
import type { IconProps } from './types'
|
|
1
|
+
import type { Ref, ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from './types.ts'
|
|
3
3
|
|
|
4
4
|
interface IconBaseProps extends IconProps {
|
|
5
5
|
ref?: Ref<SVGSVGElement>
|
|
6
6
|
}
|
|
7
7
|
|
|
8
|
+
/**
|
|
9
|
+
* The shared SVG wrapper every Primitiv icon renders through. Sets up the
|
|
10
|
+
* `viewBox`, `currentColor` fill, and `size`-driven width/height, forwards
|
|
11
|
+
* a ref to the `<svg>`, and marks the icon `aria-hidden` unless an
|
|
12
|
+
* `aria-label` is provided. Generated icon components pass their paths as
|
|
13
|
+
* `children`; you rarely render this directly.
|
|
14
|
+
*/
|
|
8
15
|
export const IconBase = ({
|
|
9
16
|
size = 24,
|
|
10
17
|
ref,
|
|
11
18
|
children,
|
|
12
19
|
...props
|
|
13
|
-
}: IconBaseProps) => (
|
|
20
|
+
}: IconBaseProps): ReactElement => (
|
|
14
21
|
<svg
|
|
15
22
|
xmlns="http://www.w3.org/2000/svg"
|
|
16
23
|
width={size}
|
package/src/icons/ArrowLeft.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The ArrowLeft icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <ArrowLeft size={20} aria-label="ArrowLeft" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const ArrowLeft = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M20.75 11.25v1.5H3.908v-1.5z"/><path d="m12.06 5-7 7 7 7L11 20.06 2.94 12 11 3.94z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/ArrowRight.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The ArrowRight icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <ArrowRight size={20} aria-label="ArrowRight" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const ArrowRight = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M19.75 11.25v1.5H3.25v-1.5z"/><path d="M21.06 12 13 20.06 11.94 19l7-7-7-7L13 3.94z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Bell.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Bell icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Bell size={20} aria-label="Bell" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Bell = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M17.25 11c0-3.662-2.737-6.25-5.25-6.25S6.75 7.338 6.75 11v5.31l-.94.94h12.38l-.94-.94zm1.5 4.69 3.06 3.06H2.19l3.06-3.06V11c0-4.338 3.263-7.75 6.75-7.75s6.75 3.412 6.75 7.75zm-4 4.56v1.5h-5.5v-1.5z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Calendar.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Calendar icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Calendar size={20} aria-label="Calendar" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Calendar = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M21.75 4.25v17.5H2.25V4.25zm-18 16h16.5V5.75H3.75z"/><path d="M21.75 9.25v1.5H2.25v-1.5zm-14.5-7h1.5v5.5h-1.5zm8 0h1.5v5.5h-1.5z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Check.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Check icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Check size={20} aria-label="Check" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Check = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M21.057 5.904 10.05 19.111 2.939 12 4 10.94l5.95 5.949 9.954-11.946z"/>
|
|
7
19
|
</IconBase>
|
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The ChevronDown icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <ChevronDown size={20} aria-label="ChevronDown" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const ChevronDown = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M20.06 9 12 17.06 3.94 9 5 7.94l7 7 7-7z"/>
|
|
7
19
|
</IconBase>
|
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The ChevronLeft icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <ChevronLeft size={20} aria-label="ChevronLeft" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const ChevronLeft = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="m16.06 5-7 7 7 7L15 20.06 6.94 12 15 3.94z"/>
|
|
7
19
|
</IconBase>
|
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The ChevronRight icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <ChevronRight size={20} aria-label="ChevronRight" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const ChevronRight = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M17.06 12 9 20.06 7.94 19l7-7-7-7L9 3.94z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/ChevronUp.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The ChevronUp icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <ChevronUp size={20} aria-label="ChevronUp" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const ChevronUp = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M20.06 15 19 16.06l-7-7-7 7L3.94 15 12 6.94z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Close.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Close icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Close size={20} aria-label="Close" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Close = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M20.06 19 19 20.06 3.94 5 5 3.94z"/><path d="M20.06 5 5 20.06 3.94 19 19 3.94z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Copy.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Copy icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Copy size={20} aria-label="Copy" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Copy = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M20.75 7.25v13.5H7.25V7.25zm-12 12h10.5V8.75H8.75z"/><path d="M15.25 4.75H4.75v10.5h4v1.5h-5.5V3.25h13.5v5.5h-1.5z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Delete.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Delete icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Delete size={20} aria-label="Delete" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Delete = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M20.75 6.25v1.5H3.25v-1.5z"/><path d="M18.81 7.314 17.69 20.75H6.31L5.19 7.314l1.496-.124 1.003 12.06h8.622l1.003-12.06z"/><path d="M14.25 4.75h-4.5v3h-1.5v-4.5h7.5v4.5h-1.5zm-5 5.5h1.5v7.5h-1.5zm4 0h1.5v7.5h-1.5z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Download.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Download icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Download size={20} aria-label="Download" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Download = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M11 3h1.5v13H11z"/><path d="m18.81 10.75-7.06 7.06-7.06-7.06 1.06-1.06 6 6 6-6zM20.5 19v1.5H3V19z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Edit.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Edit icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Edit size={20} aria-label="Edit" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Edit = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M21.06 8 8.31 20.75H3.25v-5.06L16 2.94zM4.75 16.31v2.94h2.94L18.94 8 16 5.06z"/><path d="M18.06 11 17 12.06 11.94 7 13 5.94z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Error.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Error icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Error size={20} aria-label="Error" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Error = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M20.25 12a8.25 8.25 0 1 0-16.5 0 8.25 8.25 0 0 0 16.5 0m1.5 0c0 5.385-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12 6.615 2.25 12 2.25s9.75 4.365 9.75 9.75"/><path d="M17.06 16 16 17.06 6.94 8 8 6.94z"/><path d="M17.06 8 8 17.06 6.94 16 16 6.94z"/>
|
|
7
19
|
</IconBase>
|
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The ExternalLink icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <ExternalLink size={20} aria-label="ExternalLink" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const ExternalLink = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M19.25 4.75h-6v-1.5h7.5v7.5h-1.5z"/><path d="M20.06 5 11 14.06 9.94 13 19 3.94z"/><path d="M10.75 5.25v1.5h-6v12.5h12.5v-6h1.5v7.5H3.25V5.25z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Eye.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Eye icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Eye size={20} aria-label="Eye" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Eye = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M12 4.25c2.06 0 3.972.256 5.769 1.361 1.789 1.101 3.368 2.987 4.902 6.054l.168.335-.168.335c-1.534 3.067-3.113 4.953-4.902 6.054-1.797 1.105-3.71 1.361-5.769 1.361s-3.972-.256-5.769-1.361c-1.789-1.101-3.368-2.987-4.902-6.054L1.161 12l.168-.335c1.534-3.067 3.113-4.953 4.902-6.054C8.028 4.506 9.941 4.25 12 4.25m0 1.5c-1.94 0-3.528.244-4.981 1.139-1.405.864-2.77 2.39-4.176 5.111 1.406 2.721 2.771 4.247 4.176 5.111 1.453.895 3.04 1.139 4.981 1.139s3.528-.244 4.981-1.139c1.404-.864 2.77-2.39 4.175-5.111-1.406-2.721-2.77-4.247-4.175-5.111C15.528 5.994 13.941 5.75 12 5.75"/><path d="M14.25 12a2.25 2.25 0 1 0-4.5 0 2.25 2.25 0 0 0 4.5 0m1.5 0a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/EyeOff.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The EyeOff icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <EyeOff size={20} aria-label="EyeOff" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const EyeOff = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="m22.059 19.938-.997 1.12L1.942 4.064l.996-1.122 19.12 16.996Z"/><path d="m7.06 7-.53.53c-.956.956-1.678 1.917-2.295 2.78-.461.647-.899 1.29-1.332 1.807 1.385 2.648 2.732 4.143 4.116 4.994 1.453.895 3.04 1.139 4.981 1.139 1.432 0 2.832-.19 4.222-.746l.696-.278.557 1.392-.697.279c-1.61.644-3.21.853-4.778.853-2.06 0-3.972-.256-5.769-1.361-1.789-1.101-3.368-2.987-4.902-6.054l-.241-.483.382-.382c.442-.443.89-1.114 1.545-2.03.633-.887 1.41-1.926 2.455-2.97L6 5.94zM12 4.25c2.06 0 3.972.256 5.769 1.361 1.789 1.101 3.368 2.987 4.902 6.054l.155.31-.137.32a19.5 19.5 0 0 1-2.182 3.847l-.442.606-1.213-.883.441-.606a18 18 0 0 0 1.875-3.236c-1.41-2.736-2.779-4.268-4.187-5.134C15.528 5.994 13.941 5.75 12 5.75c-.262 0-.553.103-.944.305-.331.17-.84.477-1.292.647l-.702.264-.528-1.404.702-.264c.347-.13.64-.323 1.133-.577.434-.224.993-.471 1.631-.471"/><path d="M8.25 12c0-.697.276-1.335.606-1.886l.387-.643 1.286.772-.385.643c-.27.45-.394.81-.394 1.114 0 1.286.964 2.25 2.25 2.25.303 0 .665-.124 1.114-.394l.643-.385.772 1.286-.643.387c-.55.33-1.19.606-1.886.606-2.114 0-3.75-1.636-3.75-3.75"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/File.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The File icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <File size={20} aria-label="File" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const File = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="m14.31 2.25 5.44 5.44v14.06H4.25V2.25zm-8.56 18h12.5V8.31l-4.56-4.56H5.75z"/><path d="M13.25 2.75h1.5v4.5h4.5v1.5h-6z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Filter.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Filter icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Filter size={20} aria-label="Filter" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Filter = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M22.533 3.25 14.75 13.257v7.493h-5.5v-7.493L1.467 3.25zM10.75 12.742v6.508h2.5v-6.508l6.217-7.992H4.533z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Folder.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Folder icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Folder size={20} aria-label="Folder" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Folder = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="m10.31 5.25 2 2h9.44v12.5H2.25V5.25zm-6.56 13h16.5v-9.5h-8.56l-2-2H3.75z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Grid.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Grid icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Grid size={20} aria-label="Grid" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Grid = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M11.75 2.25v9.5h-9.5v-9.5zm-8 8h6.5v-6.5h-6.5zm18-8v9.5h-9.5v-9.5zm-8 8h6.5v-6.5h-6.5zm-2 2v9.5h-9.5v-9.5zm-8 8h6.5v-6.5h-6.5zm18-8v9.5h-9.5v-9.5zm-8 8h6.5v-6.5h-6.5z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Home.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Home icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Home size={20} aria-label="Home" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Home = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="m22.059 10.938-.997 1.12L12 4.004 2.937 12.06l-.996-1.121L12 1.995l10.059 8.941Z"/><path d="M4.25 9.25h1.5v10h12.5v-10h1.5v11.5H4.25z"/><path d="M13.25 14.75h-2.5v6h-1.5v-7.5h5.5v7.5h-1.5z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Image.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Image icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Image size={20} aria-label="Image" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Image = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M21.75 3.25v17.5H2.25V3.25zm-18 16h16.5V4.75H3.75z"/><path d="M10.25 9a1.25 1.25 0 1 0-2.5 0 1.25 1.25 0 0 0 2.5 0m1.5 0a2.75 2.75 0 1 1-5.5 0 2.75 2.75 0 0 1 5.5 0"/><path d="m21.56 11.042-7.525 6.946-5.057-4.045-5.643 4.105-.883-1.213 6.57-4.778 4.943 3.954 6.577-6.07z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Info.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Info icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Info size={20} aria-label="Info" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Info = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M20.25 12a8.25 8.25 0 1 0-16.5 0 8.25 8.25 0 0 0 16.5 0m1.5 0c0 5.385-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12 6.615 2.25 12 2.25s9.75 4.365 9.75 9.75"/><path d="M11.25 10.25h1.5v7.5h-1.5zm0-4h1.5v2.5h-1.5z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Link.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Link icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Link size={20} aria-label="Link" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Link = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M10.75 7.25v1.5H4c-.053 0-.233.029-.44.492-.194.438-.31 1.076-.31 1.758s.116 1.32.31 1.758c.207.463.387.492.44.492h6.75v1.5H4c-.947 0-1.517-.721-1.81-1.383-.306-.687-.44-1.549-.44-2.367s.134-1.68.44-2.367C2.482 7.97 3.052 7.25 4 7.25zm9.25 2c.947 0 1.517.721 1.81 1.383.306.687.44 1.549.44 2.367s-.134 1.68-.44 2.367c-.293.662-.863 1.383-1.81 1.383h-6.75v-1.5H20c.053 0 .233-.029.44-.492.194-.438.31-1.076.31-1.758s-.116-1.32-.31-1.758c-.207-.463-.387-.492-.44-.492h-6.75v-1.5z"/><path d="M16.75 11.25v1.5h-9.5v-1.5z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/List.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The List icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <List size={20} aria-label="List" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const List = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M21.75 5.25v1.5H7.25v-1.5zm0 6v1.5H7.25v-1.5zm0 6v1.5H7.25v-1.5zm-17-12v1.5h-2.5v-1.5zm0 6v1.5h-2.5v-1.5zm0 6v1.5h-2.5v-1.5z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Mail.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Mail icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Mail size={20} aria-label="Mail" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Mail = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M21.75 4.25v15.5H2.25V4.25zm-18 14h16.5V5.75H3.75z"/><path d="m20.542 5.406.86 1.232L12 13.95 2.673 6.696 3.577 5.5 12 12.049z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Menu.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Menu icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Menu size={20} aria-label="Menu" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Menu = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M21.75 6.25v1.5H2.25v-1.5zm0 5v1.5H2.25v-1.5zm0 5v1.5H2.25v-1.5z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Minus.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Minus icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Minus size={20} aria-label="Minus" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Minus = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M20.75 11.25v1.5H3.25v-1.5z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Moon.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Moon icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Moon size={20} aria-label="Moon" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Moon = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path fillRule="evenodd" d="M8.41 3.745a8.7 8.7 0 0 0 11.844 11.842A9 9 0 1 1 8.41 3.745M5.806 7.771a7.5 7.5 0 0 0 10.422 10.422c-.076.002-.152.007-.228.007-5.633 0-10.2-4.567-10.2-10.2q.001-.114.006-.229" clipRule="evenodd"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Plus.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Plus icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Plus size={20} aria-label="Plus" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Plus = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M11.25 3.25h1.5v17.5h-1.5z"/><path d="M20.75 11.25v1.5H3.25v-1.5z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Search.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Search icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Search size={20} aria-label="Search" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Search = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M16.25 10.5a5.75 5.75 0 1 0-11.5 0 5.75 5.75 0 0 0 11.5 0m1.5 0a7.25 7.25 0 1 1-14.5 0 7.25 7.25 0 0 1 14.5 0"/><path d="M21.06 20 20 21.06l-5.56-5.56 1.06-1.06z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Settings.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Settings icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Settings size={20} aria-label="Settings" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Settings = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M14.25 12a2.25 2.25 0 1 0-4.5 0 2.25 2.25 0 0 0 4.5 0m1.5 0a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0"/><path d="m13.335 3.993 2-.999 1.129 2.256h2.286v2.286l2.256 1.129-1 2L22.676 12l-2.67 1.335 1 2-2.256 1.128v2.287h-2.286l-1.129 2.256-2-1L12 22.676l-1.336-2.67-1.999 1-1.129-2.256H5.25v-2.287l-2.256-1.128 1-2L1.323 12l2.67-1.336-1-1.999L5.25 7.536V5.25h2.286l1.129-2.256 2 1L12 1.323zm-2 2.013-2-1-.871 1.744H6.75v1.714l-1.744.871 1 2-1.33.665 1.33.665-1 2 1.329.664.415.207v1.714h1.714l.871 1.743 2-.999.665 1.33.665-1.33 2 1 .664-1.329.207-.415h1.714v-1.714l.415-.207 1.328-.665-.999-1.999 1.33-.665-1.33-.665 1-2-1.744-.871V6.75h-1.714l-.207-.415-.665-1.33-1.999 1L12 4.678z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Share.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Share icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Share size={20} aria-label="Share" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Share = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M8.25 12a2.25 2.25 0 1 0-4.5 0 2.25 2.25 0 0 0 4.5 0m1.5 0a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0m10.5-6a2.25 2.25 0 1 0-4.5 0 2.25 2.25 0 0 0 4.5 0m1.5 0a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0m-1.5 12a2.25 2.25 0 1 0-4.5 0 2.25 2.25 0 0 0 4.5 0m1.5 0a3.75 3.75 0 1 1-7.5 0 3.75 3.75 0 0 1 7.5 0"/><path d="m15.91 7.335-7.414 4.17-.596-1.34 7.414-4.17zm0 9.33-.596 1.34-7.414-4.17.596-1.34z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Sort.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Sort icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Sort size={20} aria-label="Sort" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Sort = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M5.25 4.25h1.5v16.5h-1.5z"/><path d="M10.06 7 9 8.06l-3-3-3 3L1.94 7 6 2.94zm7.19-3.75h1.5v16.5h-1.5z"/><path d="M22.06 17 18 21.06 13.94 17 15 15.94l3 3 3-3z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Success.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Success icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Success size={20} aria-label="Success" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Success = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M20.25 12a8.25 8.25 0 1 0-16.5 0 8.25 8.25 0 0 0 16.5 0m1.5 0c0 5.385-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12 6.615 2.25 12 2.25s9.75 4.365 9.75 9.75"/><path d="m18.058 8.919-7.016 8.183L5.939 12 7 10.94l3.957 3.957 5.962-6.955z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Sun.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Sun icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Sun size={20} aria-label="Sun" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Sun = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path fillRule="evenodd" d="M12.75 21.5h-1.5v-3h1.5zm-4.82-4.37-2.12 2.12-1.06-1.06 2.12-2.12zm11.32 1.06-1.06 1.06-2.12-2.12 1.06-1.06zM12 7.5a4.5 4.5 0 1 1 0 9 4.5 4.5 0 0 1 0-9M12 9a3 3 0 1 0 0 6 3 3 0 0 0 0-6m-6.5 3.75h-3v-1.5h3zm16 0h-3v-1.5h3zM7.93 6.87 6.87 7.93 4.75 5.81l1.06-1.06zm11.32-1.06-2.12 2.12-1.06-1.06 2.12-2.12zm-6.5-.31h-1.5v-3h1.5z" clipRule="evenodd"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Upload.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Upload icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Upload size={20} aria-label="Upload" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Upload = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M12.5 17.81H11v-13h1.5z"/><path d="M4.69 10.06 11.75 3l7.06 7.06-1.06 1.061-6-6-6 6zM20.5 19v1.5H3V19z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/User.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The User icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <User size={20} aria-label="User" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const User = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M15.25 8a3.25 3.25 0 1 0-6.5 0 3.25 3.25 0 0 0 6.5 0m1.5 0a4.75 4.75 0 1 1-9.5 0 4.75 4.75 0 0 1 9.5 0"/><path d="M19.25 21c0-4.526-3.601-7.25-7.25-7.25S4.75 16.474 4.75 21v.75h-1.5V21c0-5.474 4.399-8.75 8.75-8.75s8.75 3.276 8.75 8.75v.75h-1.5z"/>
|
|
7
19
|
</IconBase>
|
package/src/icons/Warning.tsx
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import {
|
|
1
|
+
import type { ReactElement } from 'react'
|
|
2
|
+
import type { IconProps } from '../types.ts'
|
|
3
|
+
import { IconBase } from '../IconBase.tsx'
|
|
3
4
|
|
|
4
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The Warning icon.
|
|
7
|
+
*
|
|
8
|
+
* A fill-based SVG that inherits `currentColor` and scales via the
|
|
9
|
+
* `size` prop. Accepts all native `<svg>` attributes (see {@link IconProps}).
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <Warning size={20} aria-label="Warning" />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export const Warning = (props: IconProps): ReactElement => (
|
|
5
17
|
<IconBase {...props}>
|
|
6
18
|
<path d="M23.311 20.75H.688L12 1.52zm-20-1.5H20.69L12 4.479z"/><path d="M11.25 8.25h1.5v6.5h-1.5zm0 7.5h1.5v2.5h-1.5z"/>
|
|
7
19
|
</IconBase>
|
package/src/index.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export type { IconProps } from './types'
|
|
2
|
-
export { IconBase } from './IconBase'
|
|
3
|
-
export * from './icons/index'
|
|
1
|
+
export type { IconProps } from './types.ts'
|
|
2
|
+
export { IconBase } from './IconBase.tsx'
|
|
3
|
+
export * from './icons/index.ts'
|
package/src/types.ts
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
import type { SVGProps } from 'react'
|
|
2
2
|
|
|
3
|
+
/**
|
|
4
|
+
* Props accepted by every Primitiv icon. Extends all native `<svg>`
|
|
5
|
+
* attributes, so `className`, `style`, `onClick`, `aria-*`, etc. pass
|
|
6
|
+
* straight through to the rendered element.
|
|
7
|
+
*/
|
|
3
8
|
export interface IconProps extends SVGProps<SVGSVGElement> {
|
|
9
|
+
/**
|
|
10
|
+
* Width and height of the icon, in pixels (number) or any CSS length
|
|
11
|
+
* (string). Defaults to `24`.
|
|
12
|
+
*/
|
|
4
13
|
size?: number | string
|
|
5
14
|
}
|