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
|
import type { FC } from 'react';
import {
ArrowIconPaths,
type ArrowOrientation,
CCBySAIconPaths,
CareerIconPaths,
CogIconPaths,
ComputerIconPaths,
EnvelopIconPaths,
FeedIconPaths,
HomeIconPaths,
MagnifyingGlassIconPaths,
MoonIconPaths,
PostsStackIconPaths,
SunIconPaths,
CrossIconPaths,
HelpIconPaths,
} from './icons-paths';
export type SVGIconOrientation = ArrowOrientation;
export type SVGIconShape =
| 'arrow'
| 'career'
| 'cc-by-sa'
| 'cog'
| 'computer'
| 'cross'
| 'envelop'
| 'feed'
| 'help'
| 'home'
| 'magnifying-glass'
| 'moon'
| 'posts-stack'
| 'sun';
export type SVGPathsProps = {
/**
* The icon orientation. Only used with arrow icon.
*
* @default 'right'
*/
orientation?: SVGIconOrientation;
/**
* The icon shape.
*/
shape: SVGIconShape;
};
export const SVGPaths: FC<SVGPathsProps> = ({
orientation = 'right',
shape,
}) => {
switch (shape) {
case 'arrow':
return <ArrowIconPaths orientation={orientation} />;
case 'career':
return <CareerIconPaths />;
case 'cc-by-sa':
return <CCBySAIconPaths />;
case 'cog':
return <CogIconPaths />;
case 'computer':
return <ComputerIconPaths />;
case 'cross':
return <CrossIconPaths />;
case 'envelop':
return <EnvelopIconPaths />;
case 'feed':
return <FeedIconPaths />;
case 'help':
return <HelpIconPaths />;
case 'home':
return <HomeIconPaths />;
case 'magnifying-glass':
return <MagnifyingGlassIconPaths />;
case 'moon':
return <MoonIconPaths />;
case 'posts-stack':
return <PostsStackIconPaths />;
case 'sun':
default:
return <SunIconPaths />;
}
};
|