@platformatic/ui-components 0.1.53 → 0.1.55

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.
Files changed (51) hide show
  1. package/package.json +1 -1
  2. package/renovate.json +6 -0
  3. package/src/components/Modal.jsx +1 -1
  4. package/src/components/Sidebar.jsx +12 -5
  5. package/src/components/Sidebar.module.css +1 -1
  6. package/src/components/SimpleMetric.jsx +1 -1
  7. package/src/components/forms/Preview.jsx +1 -1
  8. package/src/components/icons/AlertIcon.jsx +1 -1
  9. package/src/components/icons/ApiEmptyIcon.jsx +140 -106
  10. package/src/components/icons/ApiIconClosed.jsx +51 -18
  11. package/src/components/icons/AppEmptyIcon.jsx +126 -93
  12. package/src/components/icons/AppListIcon.jsx +101 -71
  13. package/src/components/icons/BellIcon.jsx +78 -0
  14. package/src/components/icons/BillingIcon.jsx +98 -0
  15. package/src/components/icons/CircleArrowLeftIcon.jsx +95 -0
  16. package/src/components/icons/CircleArrowRightIcon.jsx +98 -0
  17. package/src/components/icons/CircleCheckMarkIcon.jsx +41 -29
  18. package/src/components/icons/CircleCloseHoverIcon.jsx +62 -36
  19. package/src/components/icons/CircleCloseIcon.jsx +52 -26
  20. package/src/components/icons/CircleExclamationIcon.jsx +87 -24
  21. package/src/components/icons/CircleTwoArrowsDownIcon.jsx +84 -0
  22. package/src/components/icons/CircleTwoArrowsUpIcon.jsx +87 -0
  23. package/src/components/icons/EnlargeIcon.jsx +85 -0
  24. package/src/components/icons/EntryIcon.jsx +82 -0
  25. package/src/components/icons/ExploreDocIcon.jsx +95 -0
  26. package/src/components/icons/GearIcon.jsx +2 -2
  27. package/src/components/icons/GraphQLIcon.jsx +98 -0
  28. package/src/components/icons/Icons.module.css +6 -0
  29. package/src/components/icons/KeyIcon.jsx +85 -0
  30. package/src/components/icons/LayersIcon.jsx +81 -0
  31. package/src/components/icons/LensIcon.jsx +79 -0
  32. package/src/components/icons/LiveIcon.jsx +60 -18
  33. package/src/components/icons/LogOutIcon.jsx +81 -0
  34. package/src/components/icons/MetricsIcon.jsx +80 -47
  35. package/src/components/icons/PlayIcon.jsx +57 -2
  36. package/src/components/icons/PullRequestIcon.jsx +87 -30
  37. package/src/components/icons/SendIcon.jsx +75 -0
  38. package/src/components/icons/SocialDiscordIcon.jsx +79 -0
  39. package/src/components/icons/SocialGitHubIcon.jsx +98 -0
  40. package/src/components/icons/SocialGitLabIcon.jsx +122 -0
  41. package/src/components/icons/SocialLinkedInIcon.jsx +85 -0
  42. package/src/components/icons/SocialNPMIcon.jsx +77 -0
  43. package/src/components/icons/SocialTwitterIcon.jsx +77 -0
  44. package/src/components/icons/StopIcon.jsx +59 -2
  45. package/src/components/icons/TerminalIcon.jsx +62 -2
  46. package/src/components/icons/{Users2Icon.jsx → TwoUsersIcon.jsx} +4 -4
  47. package/src/components/icons/UpgradeIcon.jsx +70 -1
  48. package/src/components/icons/WorkspaceFailIcon.jsx +112 -0
  49. package/src/components/icons/index.js +47 -5
  50. package/src/stories/PlatformaticIcon.stories.jsx +58 -26
  51. package/src/components/icons/CircleBackIcon.jsx +0 -51
@@ -0,0 +1,95 @@
1
+ import * as React from 'react'
2
+ import PropTypes from 'prop-types'
3
+ import styles from './Icons.module.css'
4
+
5
+ const CircleArrowLeftIcon = ({ color, size }) => {
6
+ const className = `${styles.noShrinkForFlex} ` + styles[`${color}`]
7
+ let icon = <></>
8
+
9
+ switch (size) {
10
+ case 'small':
11
+ icon = (
12
+ <svg
13
+ width={18}
14
+ height={18}
15
+ viewBox='0 0 18 18'
16
+ fill='none'
17
+ xmlns='http://www.w3.org/2000/svg'
18
+ className={className}
19
+ >
20
+ <circle cx={9} cy={9} r={8} stroke='none' />
21
+ <path
22
+ d='M10 5L6 9L10 13'
23
+ stroke='none'
24
+ strokeLinecap='round'
25
+ strokeLinejoin='round'
26
+ />
27
+ </svg>
28
+ )
29
+ break
30
+ case 'medium':
31
+ icon = (
32
+ <svg
33
+ width={26}
34
+ height={26}
35
+ viewBox='0 0 26 26'
36
+ fill='none'
37
+ xmlns='http://www.w3.org/2000/svg'
38
+ className={className}
39
+ >
40
+ <circle cx={13} cy={13} r={12} fill='none' stroke='none' strokeWidth={1.5} />
41
+ <path
42
+ d='M14.5 7L8.5 13L14.5 19'
43
+ stroke='none'
44
+ strokeWidth={1.5}
45
+ strokeLinecap='round'
46
+ strokeLinejoin='round'
47
+ />
48
+ </svg>
49
+ )
50
+ break
51
+
52
+ case 'large':
53
+ icon = (
54
+ <svg
55
+ width={42}
56
+ height={42}
57
+ viewBox='0 0 42 42'
58
+ fill='none'
59
+ xmlns='http://www.w3.org/2000/svg'
60
+ className={className}
61
+ >
62
+ <circle cx={21} cy={21} r={20} fill='none' stroke='none' strokeWidth={2} />
63
+ <path
64
+ d='M23.5 11L13.5 21L23.5 31'
65
+ stroke='none'
66
+ strokeWidth={2}
67
+ strokeLinecap='round'
68
+ strokeLinejoin='round'
69
+ />
70
+ </svg>
71
+ )
72
+ break
73
+ default:
74
+ break
75
+ }
76
+ return icon
77
+ }
78
+
79
+ CircleArrowLeftIcon.propTypes = {
80
+ /**
81
+ * color of text, icon and borders
82
+ */
83
+ color: PropTypes.oneOf(['green', 'white', 'main-dark-blue', 'red']),
84
+ /**
85
+ * Size
86
+ */
87
+ size: PropTypes.oneOf(['small', 'medium', 'large', 'extra-large'])
88
+ }
89
+
90
+ CircleArrowLeftIcon.defaultProps = {
91
+ color: 'main-dark-blue',
92
+ size: 'medium'
93
+ }
94
+
95
+ export default CircleArrowLeftIcon
@@ -0,0 +1,98 @@
1
+ import * as React from 'react'
2
+ import PropTypes from 'prop-types'
3
+ import styles from './Icons.module.css'
4
+
5
+ const CircleArrowRightIcon = ({ color, size }) => {
6
+ const className = `${styles.noShrinkForFlex} ` + styles[`${color}`]
7
+ let icon = <></>
8
+
9
+ switch (size) {
10
+ case 'small':
11
+ icon = (
12
+ <svg
13
+ width={18}
14
+ height={18}
15
+ viewBox='0 0 18 18'
16
+ fill='none'
17
+ xmlns='http://www.w3.org/2000/svg'
18
+ transform='rotate(180)'
19
+ className={className}
20
+ >
21
+ <circle cx={9} cy={9} r={8} stroke='none' />
22
+ <path
23
+ d='M10 5L6 9L10 13'
24
+ stroke='none'
25
+ strokeLinecap='round'
26
+ strokeLinejoin='round'
27
+ />
28
+ </svg>
29
+ )
30
+ break
31
+ case 'medium':
32
+ icon = (
33
+ <svg
34
+ width={26}
35
+ height={26}
36
+ viewBox='0 0 26 26'
37
+ fill='none'
38
+ xmlns='http://www.w3.org/2000/svg'
39
+ transform='rotate(180)'
40
+ className={className}
41
+ >
42
+ <circle cx={13} cy={13} r={12} fill='none' stroke='none' strokeWidth={1.5} />
43
+ <path
44
+ d='M14.5 7L8.5 13L14.5 19'
45
+ stroke='none'
46
+ strokeWidth={1.5}
47
+ strokeLinecap='round'
48
+ strokeLinejoin='round'
49
+ />
50
+ </svg>
51
+ )
52
+ break
53
+
54
+ case 'large':
55
+ icon = (
56
+ <svg
57
+ width={42}
58
+ height={42}
59
+ viewBox='0 0 42 42'
60
+ fill='none'
61
+ xmlns='http://www.w3.org/2000/svg'
62
+ transform='rotate(180)'
63
+ className={className}
64
+ >
65
+ <circle cx={21} cy={21} r={20} fill='none' stroke='none' strokeWidth={2} />
66
+ <path
67
+ d='M23.5 11L13.5 21L23.5 31'
68
+ stroke='none'
69
+ strokeWidth={2}
70
+ strokeLinecap='round'
71
+ strokeLinejoin='round'
72
+ />
73
+ </svg>
74
+ )
75
+ break
76
+ default:
77
+ break
78
+ }
79
+ return icon
80
+ }
81
+
82
+ CircleArrowRightIcon.propTypes = {
83
+ /**
84
+ * color of text, icon and borders
85
+ */
86
+ color: PropTypes.oneOf(['green', 'white', 'main-dark-blue', 'red']),
87
+ /**
88
+ * Size
89
+ */
90
+ size: PropTypes.oneOf(['small', 'medium', 'large', 'extra-large'])
91
+ }
92
+
93
+ CircleArrowRightIcon.defaultProps = {
94
+ color: 'main-dark-blue',
95
+ size: 'medium'
96
+ }
97
+
98
+ export default CircleArrowRightIcon
@@ -1,9 +1,11 @@
1
1
  import * as React from 'react'
2
+ import PropTypes from 'prop-types'
2
3
  import styles from './Icons.module.css'
3
4
 
4
- const CircleCheckMarkIcon = ({ color = 'green', size = 'small' }) => {
5
+ const CircleCheckMarkIcon = ({ color, size }) => {
5
6
  const className = `${styles.noShrinkForFlex} ` + styles[`${color}`]
6
7
  let icon = <></>
8
+
7
9
  switch (size) {
8
10
  case 'small':
9
11
  icon = (
@@ -15,18 +17,23 @@ const CircleCheckMarkIcon = ({ color = 'green', size = 'small' }) => {
15
17
  xmlns='http://www.w3.org/2000/svg'
16
18
  className={className}
17
19
  >
18
- <circle
19
- cx={8}
20
- cy={8}
21
- r={6}
22
- stroke='none'
23
- />
24
- <path
25
- d='M5 8L7.5 10L11 6'
26
- stroke='none'
27
- strokeLinecap='round'
28
- strokeLinejoin='round'
29
- />
20
+ <circle cx={8} cy={8} r={6} stroke='none' />
21
+ <path d='M5 8L7.5 10L11 6' stroke='none' strokeLinecap='round' strokeLinejoin='round' />
22
+ </svg>
23
+ )
24
+ break
25
+ case 'medium':
26
+ icon = (
27
+ <svg
28
+ width={24}
29
+ height={24}
30
+ viewBox='0 0 24 24'
31
+ fill='none'
32
+ xmlns='http://www.w3.org/2000/svg'
33
+ className={className}
34
+ >
35
+ <circle cx={12} cy={12} r={9} stroke='none' strokeWidth={1.5} />
36
+ <path d='M7.5 12L11.25 15L16.5 9' stroke='none' strokeWidth={1.5} strokeLinecap='round' strokeLinejoin='round' />
30
37
  </svg>
31
38
  )
32
39
  break
@@ -34,33 +41,38 @@ const CircleCheckMarkIcon = ({ color = 'green', size = 'small' }) => {
34
41
  icon = (
35
42
  <svg
36
43
  width={40}
37
- height={41}
38
- viewBox='0 0 40 41'
44
+ height={40}
45
+ viewBox='0 0 40 40'
39
46
  fill='none'
40
47
  xmlns='http://www.w3.org/2000/svg'
41
48
  className={className}
42
49
  >
43
- <circle
44
- cx={20}
45
- cy={20.3334}
46
- r={15}
47
- stroke='none'
48
- strokeWidth={2.5}
49
- />
50
- <path
51
- d='M12.5 20.3334L18.75 25.3334L27.5 15.3334'
52
- stroke='none'
53
- strokeWidth={2.5}
54
- strokeLinecap='round'
55
- strokeLinejoin='round'
56
- />
50
+ <circle cx={20} cy={20} r={15} stroke='none' strokeWidth={2} />
51
+ <path d='M12.5 20L18.75 25L27.5 15' stroke='none' strokeWidth={2} strokeLinecap='round' strokeLinejoin='round' />
57
52
  </svg>
58
53
  )
59
54
  break
55
+
60
56
  default:
61
57
  break
62
58
  }
63
59
  return icon
64
60
  }
65
61
 
62
+ CircleCheckMarkIcon.propTypes = {
63
+ /**
64
+ * color of text, icon and borders
65
+ */
66
+ color: PropTypes.oneOf(['green', 'white', 'main-dark-blue', 'red']),
67
+ /**
68
+ * Size
69
+ */
70
+ size: PropTypes.oneOf(['small', 'medium', 'large', 'extra-large'])
71
+ }
72
+
73
+ CircleCheckMarkIcon.defaultProps = {
74
+ color: 'main-dark-blue',
75
+ size: 'medium'
76
+ }
77
+
66
78
  export default CircleCheckMarkIcon
@@ -1,42 +1,68 @@
1
1
  import * as React from 'react'
2
+ import PropTypes from 'prop-types'
2
3
  import styles from './Icons.module.css'
3
4
 
4
- const CircleCloseHoverIcon = ({ color = 'green' }) => {
5
- const className = styles[`${color}`] + ' ' + styles[`fill-circle-${color}`]
6
- return (
7
- <svg
8
- width={24}
9
- height={24}
10
- viewBox='0 0 24 24'
11
- fill='none'
12
- xmlns='http://www.w3.org/2000/svg'
13
- className={className}
14
- >
15
- <circle
16
- cx={12}
17
- cy={12}
18
- r={11.25}
19
- fill='none'
20
- fillOpacity={0.2}
21
- stroke='none'
22
- strokeWidth={1.5}
23
- />
24
- <path
25
- d='M6 6L18 18'
26
- stroke='none'
27
- strokeWidth={1.5}
28
- strokeLinecap='round'
29
- strokeLinejoin='round'
30
- />
31
- <path
32
- d='M6 18L18 6'
33
- stroke='none'
34
- strokeWidth={1.5}
35
- strokeLinecap='round'
36
- strokeLinejoin='round'
37
- />
38
- </svg>
39
- )
5
+ const CircleCloseHoverIcon = ({ color, size }) => {
6
+ const className = `${styles.noShrinkForFlex} ` + styles[`${color}`]
7
+ let icon = <></>
8
+
9
+ switch (size) {
10
+ case 'medium':
11
+ icon = (
12
+ <svg
13
+ width={24}
14
+ height={24}
15
+ viewBox='0 0 24 24'
16
+ fill='none'
17
+ xmlns='http://www.w3.org/2000/svg'
18
+ className={className}
19
+ >
20
+ <circle
21
+ cx={12}
22
+ cy={12}
23
+ r={11.25}
24
+ fill='none'
25
+ fillOpacity={0.2}
26
+ stroke='none'
27
+ strokeWidth={1.5}
28
+ />
29
+ <path
30
+ d='M6 6L18 18'
31
+ stroke='none'
32
+ strokeWidth={1.5}
33
+ strokeLinecap='round'
34
+ strokeLinejoin='round'
35
+ />
36
+ <path
37
+ d='M6 18L18 6'
38
+ stroke='none'
39
+ strokeWidth={1.5}
40
+ strokeLinecap='round'
41
+ strokeLinejoin='round'
42
+ />
43
+ </svg>
44
+ )
45
+ break
46
+ default:
47
+ break
48
+ }
49
+ return icon
50
+ }
51
+
52
+ CircleCloseHoverIcon.propTypes = {
53
+ /**
54
+ * color of text, icon and borders
55
+ */
56
+ color: PropTypes.oneOf(['green', 'white', 'main-dark-blue', 'red']),
57
+ /**
58
+ * Size
59
+ */
60
+ size: PropTypes.oneOf(['small', 'medium', 'large', 'extra-large'])
61
+ }
62
+
63
+ CircleCloseHoverIcon.defaultProps = {
64
+ color: 'main-dark-blue',
65
+ size: 'medium'
40
66
  }
41
67
 
42
68
  export default CircleCloseHoverIcon
@@ -1,32 +1,58 @@
1
1
  import * as React from 'react'
2
+ import PropTypes from 'prop-types'
2
3
  import styles from './Icons.module.css'
3
4
 
4
- const CircleCloseIcon = ({ color = 'green' }) => {
5
- const className = styles[`${color}`]
6
- return (
7
- <svg
8
- width={24}
9
- height={24}
10
- viewBox='0 0 24 24'
11
- fill='none'
12
- xmlns='http://www.w3.org/2000/svg'
13
- className={className}
14
- >
15
- <circle cx={12} cy={12} r={11.5} stroke='none' />
16
- <path
17
- d='M6 6L18 18'
18
- stroke='none'
19
- strokeLinecap='round'
20
- strokeLinejoin='round'
21
- />
22
- <path
23
- d='M6 18L18 6'
24
- stroke='none'
25
- strokeLinecap='round'
26
- strokeLinejoin='round'
27
- />
28
- </svg>
29
- )
5
+ const CircleCloseIcon = ({ color, size }) => {
6
+ const className = `${styles.noShrinkForFlex} ` + styles[`${color}`]
7
+ let icon = <></>
8
+
9
+ switch (size) {
10
+ case 'medium':
11
+ icon = (
12
+ <svg
13
+ width={24}
14
+ height={24}
15
+ viewBox='0 0 24 24'
16
+ fill='none'
17
+ xmlns='http://www.w3.org/2000/svg'
18
+ className={className}
19
+ >
20
+ <circle cx={12} cy={12} r={11.5} stroke='none' />
21
+ <path
22
+ d='M6 6L18 18'
23
+ stroke='none'
24
+ strokeLinecap='round'
25
+ strokeLinejoin='round'
26
+ />
27
+ <path
28
+ d='M6 18L18 6'
29
+ stroke='none'
30
+ strokeLinecap='round'
31
+ strokeLinejoin='round'
32
+ />
33
+ </svg>
34
+ )
35
+ break
36
+ default:
37
+ break
38
+ }
39
+ return icon
40
+ }
41
+
42
+ CircleCloseIcon.propTypes = {
43
+ /**
44
+ * color of text, icon and borders
45
+ */
46
+ color: PropTypes.oneOf(['green', 'white', 'main-dark-blue', 'red']),
47
+ /**
48
+ * Size
49
+ */
50
+ size: PropTypes.oneOf(['small', 'medium', 'large', 'extra-large'])
51
+ }
52
+
53
+ CircleCloseIcon.defaultProps = {
54
+ color: 'main-dark-blue',
55
+ size: 'medium'
30
56
  }
31
57
 
32
58
  export default CircleCloseIcon
@@ -1,29 +1,92 @@
1
1
  import * as React from 'react'
2
+ import PropTypes from 'prop-types'
2
3
  import styles from './Icons.module.css'
3
- const CircleExclamationIcon = ({ color = 'white', tip = '' }) => {
4
- const className = styles[`${color}`]
5
-
6
- return (
7
- <svg
8
- width={24}
9
- height={24}
10
- viewBox='0 0 24 24'
11
- fill='none'
12
- xmlns='http://www.w3.org/2000/svg'
13
- className={className}
14
- data-tip={tip}
15
- >
16
- <circle cx={12} cy={12} r={9} stroke='none' strokeWidth={1.5} />
17
- <path
18
- d='M12 8.25V13.5'
19
- stroke='none'
20
- strokeWidth={1.5}
21
- strokeLinecap='round'
22
- strokeLinejoin='round'
23
- />
24
- <circle cx={12} cy={15.75} r={0.75} fill='none' />
25
- </svg>
26
- )
4
+
5
+ const CircleExclamationIcon = ({ color, size, tip }) => {
6
+ const className = `${styles.noShrinkForFlex} ` + styles[`${color}`]
7
+ const filledClassName = styles[`filled-${color}`]
8
+ let icon = <></>
9
+
10
+ switch (size) {
11
+ case 'small':
12
+ icon = (
13
+ <svg
14
+ width={16}
15
+ height={16}
16
+ viewBox='0 0 16 16'
17
+ fill='none'
18
+ xmlns='http://www.w3.org/2000/svg'
19
+ data-tip={tip}
20
+ className={className}
21
+ >
22
+ <circle cx={8} cy={8} r={6} stroke='none' />
23
+ <path d='M8 5.5V9' stroke='none' strokeLinecap='round' strokeLinejoin='round' />
24
+ <circle cx={8} cy={10.5} r={0.5} fill='none' className={filledClassName} />
25
+ </svg>
26
+ )
27
+ break
28
+ case 'medium':
29
+ icon = (
30
+ <svg
31
+ width={24}
32
+ height={24}
33
+ viewBox='0 0 24 24'
34
+ fill='none'
35
+ xmlns='http://www.w3.org/2000/svg'
36
+ className={className}
37
+ data-tip={tip}
38
+ >
39
+ <circle cx={12} cy={12} r={9} stroke='none' strokeWidth={1.5} />
40
+ <path d='M12 8.25V13.5' stroke='none' strokeWidth={1.5} strokeLinecap='round' strokeLinejoin='round' />
41
+ <circle cx={12} cy={15.75} r={0.75} fill='none' className={filledClassName} />
42
+
43
+ </svg>
44
+ )
45
+ break
46
+ case 'large':
47
+ icon = (
48
+ <svg
49
+ width={40}
50
+ height={40}
51
+ viewBox='0 0 40 40'
52
+ fill='none'
53
+ xmlns='http://www.w3.org/2000/svg'
54
+ className={className}
55
+ data-tip={tip}
56
+ >
57
+ <circle cx={20} cy={20} r={15} stroke='none' strokeWidth={2} />
58
+ <path d='M20 13.75V22.5' stroke='none' strokeWidth={2} strokeLinecap='round' strokeLinejoin='round' />
59
+ <circle cx={20} cy={26.25} r={1.25} fill='none' className={filledClassName} />
60
+
61
+ </svg>
62
+ )
63
+ break
64
+
65
+ default:
66
+ break
67
+ }
68
+ return icon
69
+ }
70
+
71
+ CircleExclamationIcon.propTypes = {
72
+ /**
73
+ * color of text, icon and borders
74
+ */
75
+ color: PropTypes.oneOf(['green', 'white', 'main-dark-blue', 'red']),
76
+ /**
77
+ * Size
78
+ */
79
+ size: PropTypes.oneOf(['small', 'medium', 'large', 'extra-large']),
80
+ /**
81
+ * tip
82
+ */
83
+ tip: PropTypes.string
84
+ }
85
+
86
+ CircleExclamationIcon.defaultProps = {
87
+ color: 'main-dark-blue',
88
+ size: 'medium',
89
+ tip: ''
27
90
  }
28
91
 
29
92
  export default CircleExclamationIcon
@@ -0,0 +1,84 @@
1
+ import * as React from 'react'
2
+ import PropTypes from 'prop-types'
3
+ import styles from './Icons.module.css'
4
+
5
+ const CircleTwoArrowsDownIcon = ({ color, size }) => {
6
+ const className = `${styles.noShrinkForFlex} ` + styles[`${color}`]
7
+ let icon = <></>
8
+
9
+ switch (size) {
10
+ case 'small':
11
+ icon = (
12
+ <svg
13
+ width={18}
14
+ height={18}
15
+ viewBox='0 0 18 18'
16
+ fill='none'
17
+ xmlns='http://www.w3.org/2000/svg'
18
+ className={className}
19
+ >
20
+ <circle cx={9} cy={9} r={8} stroke='none' />
21
+ <path d='M6 9.40009L9 12.4001L12 9.40009' stroke='none' strokeLinecap='round' strokeLinejoin='round' />
22
+ <path d='M6 6L9 9L12 6' stroke='none' strokeLinecap='round' strokeLinejoin='round' />
23
+
24
+ </svg>
25
+ )
26
+ break
27
+ case 'medium':
28
+ icon = (
29
+ <svg
30
+ width={26}
31
+ height={26}
32
+ viewBox='0 0 26 26'
33
+ fill='none'
34
+ xmlns='http://www.w3.org/2000/svg'
35
+ className={className}
36
+ >
37
+ <circle cx={13} cy={13} r={12} stroke='none' strokeWidth={1.5} />
38
+ <path d='M8.5 13.6001L13 18.1001L17.5 13.6001' stroke='none' strokeWidth={1.5} strokeLinecap='round' strokeLinejoin='round' />
39
+ <path d='M8.5 8.5L13 13L17.5 8.5' stroke='none' strokeWidth={1.5} strokeLinecap='round' strokeLinejoin='round' />
40
+
41
+ </svg>
42
+ )
43
+ break
44
+
45
+ case 'large':
46
+ icon = (
47
+ <svg
48
+ width={42}
49
+ height={42}
50
+ viewBox='0 0 42 42'
51
+ fill='none'
52
+ xmlns='http://www.w3.org/2000/svg'
53
+ className={className}
54
+ >
55
+ <circle cx={21} cy={21} r={20} stroke='none' strokeWidth={2} />
56
+ <path d='M13.5 22.0002L21 29.5002L28.5 22.0002' stroke='none' strokeWidth={2} strokeLinecap='round' strokeLinejoin='round' />
57
+ <path d='M13.5 13.5L21 21L28.5 13.5' stroke='none' strokeWidth={2} strokeLinecap='round' strokeLinejoin='round' />
58
+
59
+ </svg>
60
+ )
61
+ break
62
+ default:
63
+ break
64
+ }
65
+ return icon
66
+ }
67
+
68
+ CircleTwoArrowsDownIcon.propTypes = {
69
+ /**
70
+ * color of text, icon and borders
71
+ */
72
+ color: PropTypes.oneOf(['green', 'white', 'main-dark-blue', 'red']),
73
+ /**
74
+ * Size
75
+ */
76
+ size: PropTypes.oneOf(['small', 'medium', 'large', 'extra-large'])
77
+ }
78
+
79
+ CircleTwoArrowsDownIcon.defaultProps = {
80
+ color: 'main-dark-blue',
81
+ size: 'medium'
82
+ }
83
+
84
+ export default CircleTwoArrowsDownIcon