@coopdigital/react 0.19.4 → 0.19.6

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 (160) hide show
  1. package/dist/components/AlertBanner/AlertBanner.d.ts +3 -3
  2. package/dist/components/AlertBanner/AlertBanner.js +3 -2
  3. package/dist/components/Author/Author.d.ts +4 -4
  4. package/dist/components/Author/Author.js +3 -2
  5. package/dist/components/Button/Button.d.ts +10 -10
  6. package/dist/components/Button/Button.js +3 -2
  7. package/dist/components/Card/Card.d.ts +14 -14
  8. package/dist/components/Card/Card.js +1 -1
  9. package/dist/components/Expandable/Expandable.d.ts +4 -4
  10. package/dist/components/Expandable/Expandable.js +4 -2
  11. package/dist/components/Icon/AddIcon.d.ts +1 -1
  12. package/dist/components/Icon/AddIcon.js +4 -3
  13. package/dist/components/Icon/ArrowDownIcon.d.ts +1 -1
  14. package/dist/components/Icon/ArrowDownIcon.js +4 -3
  15. package/dist/components/Icon/ArrowLeftIcon.d.ts +1 -1
  16. package/dist/components/Icon/ArrowLeftIcon.js +4 -3
  17. package/dist/components/Icon/ArrowRightIcon.d.ts +1 -1
  18. package/dist/components/Icon/ArrowRightIcon.js +4 -3
  19. package/dist/components/Icon/ArrowUpIcon.d.ts +1 -1
  20. package/dist/components/Icon/ArrowUpIcon.js +4 -3
  21. package/dist/components/Icon/AvatarAltIcon.d.ts +1 -1
  22. package/dist/components/Icon/AvatarAltIcon.js +4 -3
  23. package/dist/components/Icon/AvatarIcon.d.ts +1 -1
  24. package/dist/components/Icon/AvatarIcon.js +4 -3
  25. package/dist/components/Icon/BasketIcon.d.ts +1 -1
  26. package/dist/components/Icon/BasketIcon.js +4 -3
  27. package/dist/components/Icon/CalendarIcon.d.ts +1 -1
  28. package/dist/components/Icon/CalendarIcon.js +4 -3
  29. package/dist/components/Icon/ChevronDownIcon.d.ts +1 -1
  30. package/dist/components/Icon/ChevronDownIcon.js +4 -3
  31. package/dist/components/Icon/ChevronLeftIcon.d.ts +1 -1
  32. package/dist/components/Icon/ChevronLeftIcon.js +4 -3
  33. package/dist/components/Icon/ChevronRightIcon.d.ts +1 -1
  34. package/dist/components/Icon/ChevronRightIcon.js +4 -3
  35. package/dist/components/Icon/ChevronUpIcon.d.ts +1 -1
  36. package/dist/components/Icon/ChevronUpIcon.js +4 -3
  37. package/dist/components/Icon/ClockIcon.d.ts +1 -1
  38. package/dist/components/Icon/ClockIcon.js +4 -3
  39. package/dist/components/Icon/CloseAltIcon.d.ts +1 -1
  40. package/dist/components/Icon/CloseAltIcon.js +4 -3
  41. package/dist/components/Icon/CloseIcon.d.ts +1 -1
  42. package/dist/components/Icon/CloseIcon.js +4 -3
  43. package/dist/components/Icon/CoopCardIcon.d.ts +1 -1
  44. package/dist/components/Icon/CoopCardIcon.js +4 -3
  45. package/dist/components/Icon/CoopIcon.d.ts +1 -1
  46. package/dist/components/Icon/CoopIcon.js +4 -3
  47. package/dist/components/Icon/CoopLocationIcon.d.ts +1 -1
  48. package/dist/components/Icon/CoopLocationIcon.js +4 -3
  49. package/dist/components/Icon/DownloadIcon.d.ts +1 -1
  50. package/dist/components/Icon/DownloadIcon.js +4 -3
  51. package/dist/components/Icon/HomeIcon.d.ts +1 -1
  52. package/dist/components/Icon/HomeIcon.js +4 -3
  53. package/dist/components/Icon/InformationIcon.d.ts +1 -1
  54. package/dist/components/Icon/InformationIcon.js +4 -3
  55. package/dist/components/Icon/LoadingIcon.d.ts +1 -1
  56. package/dist/components/Icon/LoadingIcon.js +4 -3
  57. package/dist/components/Icon/LocationIcon.d.ts +1 -1
  58. package/dist/components/Icon/LocationIcon.js +4 -3
  59. package/dist/components/Icon/MailIcon.d.ts +1 -1
  60. package/dist/components/Icon/MailIcon.js +4 -3
  61. package/dist/components/Icon/MenuIcon.d.ts +1 -1
  62. package/dist/components/Icon/MenuIcon.js +4 -3
  63. package/dist/components/Icon/MessageIcon.d.ts +1 -1
  64. package/dist/components/Icon/MessageIcon.js +4 -3
  65. package/dist/components/Icon/MinusIcon.d.ts +1 -1
  66. package/dist/components/Icon/MinusIcon.js +4 -3
  67. package/dist/components/Icon/OpenNewIcon.d.ts +1 -1
  68. package/dist/components/Icon/OpenNewIcon.js +4 -3
  69. package/dist/components/Icon/PencilIcon.d.ts +1 -1
  70. package/dist/components/Icon/PencilIcon.js +4 -3
  71. package/dist/components/Icon/PhoneIcon.d.ts +1 -1
  72. package/dist/components/Icon/PhoneIcon.js +4 -3
  73. package/dist/components/Icon/QuestionIcon.d.ts +1 -1
  74. package/dist/components/Icon/QuestionIcon.js +4 -3
  75. package/dist/components/Icon/ScooterIcon.d.ts +1 -1
  76. package/dist/components/Icon/ScooterIcon.js +4 -3
  77. package/dist/components/Icon/SearchIcon.d.ts +1 -1
  78. package/dist/components/Icon/SearchIcon.js +4 -3
  79. package/dist/components/Icon/SettingsIcon.d.ts +1 -1
  80. package/dist/components/Icon/SettingsIcon.js +4 -3
  81. package/dist/components/Icon/TickAltIcon.d.ts +1 -1
  82. package/dist/components/Icon/TickAltIcon.js +4 -3
  83. package/dist/components/Icon/TickIcon.d.ts +1 -1
  84. package/dist/components/Icon/TickIcon.js +4 -3
  85. package/dist/components/Icon/VanIcon.d.ts +1 -1
  86. package/dist/components/Icon/VanIcon.js +4 -3
  87. package/dist/components/Icon/WarningIcon.d.ts +1 -1
  88. package/dist/components/Icon/WarningIcon.js +4 -3
  89. package/dist/components/Icon/WriteIcon.d.ts +1 -1
  90. package/dist/components/Icon/WriteIcon.js +4 -3
  91. package/dist/components/Image/Image.d.ts +5 -5
  92. package/dist/components/Pill/Pill.d.ts +10 -10
  93. package/dist/components/Pill/Pill.js +1 -1
  94. package/dist/components/RootSVG/RootSVG.js +1 -1
  95. package/dist/components/SearchBox/SearchBox.d.ts +10 -10
  96. package/dist/components/SearchBox/SearchBox.js +2 -1
  97. package/dist/components/Signpost/Signpost.d.ts +6 -6
  98. package/dist/components/Signpost/Signpost.js +3 -2
  99. package/dist/components/SkipNav/SkipNav.d.ts +4 -6
  100. package/dist/components/SkipNav/SkipNav.js +3 -2
  101. package/dist/components/Squircle/Squircle.d.ts +6 -6
  102. package/dist/components/Squircle/Squircle.js +3 -2
  103. package/dist/components/Tag/Tag.d.ts +5 -5
  104. package/dist/components/Tag/Tag.js +1 -1
  105. package/dist/types/colors.d.ts +2 -2
  106. package/package.json +3 -3
  107. package/src/components/AlertBanner/AlertBanner.tsx +7 -5
  108. package/src/components/Author/Author.tsx +8 -6
  109. package/src/components/Button/Button.tsx +13 -12
  110. package/src/components/Card/Card.tsx +17 -18
  111. package/src/components/Expandable/Expandable.tsx +12 -14
  112. package/src/components/Icon/AddIcon.tsx +6 -5
  113. package/src/components/Icon/ArrowDownIcon.tsx +6 -5
  114. package/src/components/Icon/ArrowLeftIcon.tsx +6 -5
  115. package/src/components/Icon/ArrowRightIcon.tsx +6 -5
  116. package/src/components/Icon/ArrowUpIcon.tsx +6 -5
  117. package/src/components/Icon/AvatarAltIcon.tsx +7 -6
  118. package/src/components/Icon/AvatarIcon.tsx +6 -5
  119. package/src/components/Icon/BasketIcon.tsx +6 -5
  120. package/src/components/Icon/CalendarIcon.tsx +6 -5
  121. package/src/components/Icon/ChevronDownIcon.tsx +5 -4
  122. package/src/components/Icon/ChevronLeftIcon.tsx +5 -4
  123. package/src/components/Icon/ChevronRightIcon.tsx +5 -4
  124. package/src/components/Icon/ChevronUpIcon.tsx +5 -4
  125. package/src/components/Icon/ClockIcon.tsx +6 -5
  126. package/src/components/Icon/CloseAltIcon.tsx +7 -6
  127. package/src/components/Icon/CloseIcon.tsx +6 -5
  128. package/src/components/Icon/CoopCardIcon.tsx +5 -4
  129. package/src/components/Icon/CoopIcon.tsx +5 -4
  130. package/src/components/Icon/CoopLocationIcon.tsx +7 -6
  131. package/src/components/Icon/DownloadIcon.tsx +10 -6
  132. package/src/components/Icon/HomeIcon.tsx +7 -6
  133. package/src/components/Icon/InformationIcon.tsx +6 -5
  134. package/src/components/Icon/LoadingIcon.tsx +5 -4
  135. package/src/components/Icon/LocationIcon.tsx +6 -5
  136. package/src/components/Icon/MailIcon.tsx +5 -4
  137. package/src/components/Icon/MenuIcon.tsx +5 -4
  138. package/src/components/Icon/MessageIcon.tsx +5 -4
  139. package/src/components/Icon/MinusIcon.tsx +5 -4
  140. package/src/components/Icon/OpenNewIcon.tsx +6 -5
  141. package/src/components/Icon/PencilIcon.tsx +5 -4
  142. package/src/components/Icon/PhoneIcon.tsx +5 -4
  143. package/src/components/Icon/QuestionIcon.tsx +6 -5
  144. package/src/components/Icon/ScooterIcon.tsx +7 -6
  145. package/src/components/Icon/SearchIcon.tsx +6 -5
  146. package/src/components/Icon/SettingsIcon.tsx +5 -4
  147. package/src/components/Icon/TickAltIcon.tsx +6 -5
  148. package/src/components/Icon/TickIcon.tsx +5 -4
  149. package/src/components/Icon/VanIcon.tsx +5 -4
  150. package/src/components/Icon/WarningIcon.tsx +6 -5
  151. package/src/components/Icon/WriteIcon.tsx +8 -7
  152. package/src/components/Image/Image.tsx +5 -5
  153. package/src/components/Pill/Pill.tsx +12 -12
  154. package/src/components/RootSVG/RootSVG.tsx +1 -1
  155. package/src/components/SearchBox/SearchBox.tsx +12 -11
  156. package/src/components/Signpost/Signpost.tsx +11 -11
  157. package/src/components/SkipNav/SkipNav.tsx +8 -8
  158. package/src/components/Squircle/Squircle.tsx +10 -8
  159. package/src/components/Tag/Tag.tsx +6 -6
  160. package/src/types/colors.ts +2 -2
@@ -1,16 +1,17 @@
1
+ import clsx from "clsx"
1
2
  import { type SVGProps, useId } from "react"
2
3
 
3
4
  interface IconProps extends SVGProps<SVGSVGElement> {
4
5
  alt?: string
5
6
  }
6
7
 
7
- export const ChevronLeftIcon = ({ alt, className, ...props }: IconProps) => {
8
+ export const ChevronLeftIcon = ({ alt, className, fill, ...props }: IconProps) => {
8
9
  const id = useId()
9
10
  const componentProps = {
10
11
  "aria-labelledby": alt ? id : undefined,
11
- className: `coop-icon ${className ?? ""}`.trim(),
12
+ className: clsx("coop-icon", className),
12
13
  "data-icon": "chevron-left",
13
- fill: "none",
14
+ fill: fill ?? "none",
14
15
  role: alt ? "img" : undefined,
15
16
  viewBox: "0 0 32 32",
16
17
  ...props,
@@ -20,7 +21,7 @@ export const ChevronLeftIcon = ({ alt, className, ...props }: IconProps) => {
20
21
  {alt ? <title id={id}>{alt}</title> : null}
21
22
  <path
22
23
  d="M22.5 30a1 1 0 0 0 .71-.29 1 1 0 0 0 0-1.42L10.91 16 23.2 3.71a1 1 0 0 0 0-1.41 1 1 0 0 0-1.41 0l-13 13a1 1 0 0 0 0 1.41l13 13a1 1 0 0 0 .71.29"
23
- fill="currentColor"
24
+ fill={fill ?? "currentColor"}
24
25
  />
25
26
  </svg>
26
27
  )
@@ -1,16 +1,17 @@
1
+ import clsx from "clsx"
1
2
  import { type SVGProps, useId } from "react"
2
3
 
3
4
  interface IconProps extends SVGProps<SVGSVGElement> {
4
5
  alt?: string
5
6
  }
6
7
 
7
- export const ChevronRightIcon = ({ alt, className, ...props }: IconProps) => {
8
+ export const ChevronRightIcon = ({ alt, className, fill, ...props }: IconProps) => {
8
9
  const id = useId()
9
10
  const componentProps = {
10
11
  "aria-labelledby": alt ? id : undefined,
11
- className: `coop-icon ${className ?? ""}`.trim(),
12
+ className: clsx("coop-icon", className),
12
13
  "data-icon": "chevron-right",
13
- fill: "none",
14
+ fill: fill ?? "none",
14
15
  role: alt ? "img" : undefined,
15
16
  viewBox: "0 0 32 32",
16
17
  ...props,
@@ -20,7 +21,7 @@ export const ChevronRightIcon = ({ alt, className, ...props }: IconProps) => {
20
21
  {alt ? <title id={id}>{alt}</title> : null}
21
22
  <path
22
23
  d="M9.49 2a1 1 0 0 0-.71 1.71L21.07 16 8.79 28.3a1 1 0 1 0 1.41 1.41l13-13a1 1 0 0 0 0-1.42l-13-13A1 1 0 0 0 9.49 2"
23
- fill="currentColor"
24
+ fill={fill ?? "currentColor"}
24
25
  />
25
26
  </svg>
26
27
  )
@@ -1,16 +1,17 @@
1
+ import clsx from "clsx"
1
2
  import { type SVGProps, useId } from "react"
2
3
 
3
4
  interface IconProps extends SVGProps<SVGSVGElement> {
4
5
  alt?: string
5
6
  }
6
7
 
7
- export const ChevronUpIcon = ({ alt, className, ...props }: IconProps) => {
8
+ export const ChevronUpIcon = ({ alt, className, fill, ...props }: IconProps) => {
8
9
  const id = useId()
9
10
  const componentProps = {
10
11
  "aria-labelledby": alt ? id : undefined,
11
- className: `coop-icon ${className ?? ""}`.trim(),
12
+ className: clsx("coop-icon", className),
12
13
  "data-icon": "chevron-up",
13
- fill: "none",
14
+ fill: fill ?? "none",
14
15
  role: alt ? "img" : undefined,
15
16
  viewBox: "0 0 32 32",
16
17
  ...props,
@@ -20,7 +21,7 @@ export const ChevronUpIcon = ({ alt, className, ...props }: IconProps) => {
20
21
  {alt ? <title id={id}>{alt}</title> : null}
21
22
  <path
22
23
  d="M1 23a1 1 0 0 0 .29.71 1 1 0 0 0 1.42 0L16 10.41 29.29 23.7a1 1 0 0 0 1.42 0 1 1 0 0 0 0-1.41l-14-14a1 1 0 0 0-1.41 0l-14 14A1 1 0 0 0 1 23"
23
- fill="currentColor"
24
+ fill={fill ?? "currentColor"}
24
25
  />
25
26
  </svg>
26
27
  )
@@ -1,16 +1,17 @@
1
+ import clsx from "clsx"
1
2
  import { type SVGProps, useId } from "react"
2
3
 
3
4
  interface IconProps extends SVGProps<SVGSVGElement> {
4
5
  alt?: string
5
6
  }
6
7
 
7
- export const ClockIcon = ({ alt, className, ...props }: IconProps) => {
8
+ export const ClockIcon = ({ alt, className, fill, ...props }: IconProps) => {
8
9
  const id = useId()
9
10
  const componentProps = {
10
11
  "aria-labelledby": alt ? id : undefined,
11
- className: `coop-icon ${className ?? ""}`.trim(),
12
+ className: clsx("coop-icon", className),
12
13
  "data-icon": "clock",
13
- fill: "none",
14
+ fill: fill ?? "none",
14
15
  role: alt ? "img" : undefined,
15
16
  viewBox: "0 0 32 32",
16
17
  ...props,
@@ -20,11 +21,11 @@ export const ClockIcon = ({ alt, className, ...props }: IconProps) => {
20
21
  {alt ? <title id={id}>{alt}</title> : null}
21
22
  <path
22
23
  d="M23 21.05a.93.93 0 0 1-.5-.14L15 16.58v-9.5a1 1 0 0 1 1-1 1 1 0 0 1 1 1v8.35l6.47 3.77a1 1 0 0 1 .36 1.36 1 1 0 0 1-.83.49"
23
- fill="currentColor"
24
+ fill={fill ?? "currentColor"}
24
25
  />
25
26
  <path
26
27
  d="M16 2A14 14 0 1 1 2 16 14 14 0 0 1 16 2m0-2a16 16 0 1 0 16 16A16 16 0 0 0 16 0"
27
- fill="currentColor"
28
+ fill={fill ?? "currentColor"}
28
29
  />
29
30
  </svg>
30
31
  )
@@ -1,16 +1,17 @@
1
+ import clsx from "clsx"
1
2
  import { type SVGProps, useId } from "react"
2
3
 
3
4
  interface IconProps extends SVGProps<SVGSVGElement> {
4
5
  alt?: string
5
6
  }
6
7
 
7
- export const CloseAltIcon = ({ alt, className, ...props }: IconProps) => {
8
+ export const CloseAltIcon = ({ alt, className, fill, ...props }: IconProps) => {
8
9
  const id = useId()
9
10
  const componentProps = {
10
11
  "aria-labelledby": alt ? id : undefined,
11
- className: `coop-icon ${className ?? ""}`.trim(),
12
+ className: clsx("coop-icon", className),
12
13
  "data-icon": "close-alt",
13
- fill: "none",
14
+ fill: fill ?? "none",
14
15
  role: alt ? "img" : undefined,
15
16
  viewBox: "0 0 32 32",
16
17
  ...props,
@@ -20,15 +21,15 @@ export const CloseAltIcon = ({ alt, className, ...props }: IconProps) => {
20
21
  {alt ? <title id={id}>{alt}</title> : null}
21
22
  <path
22
23
  d="M21.55 22.51a1 1 0 0 1-.7-.3l-11-11a1 1 0 0 1 1.41-1.41l11 11a1 1 0 0 1 0 1.41 1 1 0 0 1-.71.3"
23
- fill="currentColor"
24
+ fill={fill ?? "currentColor"}
24
25
  />
25
26
  <path
26
27
  d="M10.55 22.51a1 1 0 0 1-.7-.3 1 1 0 0 1 0-1.41l11-11a1 1 0 0 1 1.41 1.41l-11 11a1 1 0 0 1-.71.3"
27
- fill="currentColor"
28
+ fill={fill ?? "currentColor"}
28
29
  />
29
30
  <path
30
31
  d="M16 2A14 14 0 1 1 2 16 14 14 0 0 1 16 2m0-2a16 16 0 1 0 16 16A16 16 0 0 0 16 0"
31
- fill="currentColor"
32
+ fill={fill ?? "currentColor"}
32
33
  />
33
34
  </svg>
34
35
  )
@@ -1,16 +1,17 @@
1
+ import clsx from "clsx"
1
2
  import { type SVGProps, useId } from "react"
2
3
 
3
4
  interface IconProps extends SVGProps<SVGSVGElement> {
4
5
  alt?: string
5
6
  }
6
7
 
7
- export const CloseIcon = ({ alt, className, ...props }: IconProps) => {
8
+ export const CloseIcon = ({ alt, className, fill, ...props }: IconProps) => {
8
9
  const id = useId()
9
10
  const componentProps = {
10
11
  "aria-labelledby": alt ? id : undefined,
11
- className: `coop-icon ${className ?? ""}`.trim(),
12
+ className: clsx("coop-icon", className),
12
13
  "data-icon": "close",
13
- fill: "none",
14
+ fill: fill ?? "none",
14
15
  role: alt ? "img" : undefined,
15
16
  viewBox: "0 0 32 32",
16
17
  ...props,
@@ -20,11 +21,11 @@ export const CloseIcon = ({ alt, className, ...props }: IconProps) => {
20
21
  {alt ? <title id={id}>{alt}</title> : null}
21
22
  <path
22
23
  d="M27 28a1 1 0 0 1-.71-.29l-22-22a1 1 0 0 1 1.42-1.42l22 22a1 1 0 0 1 0 1.42A1 1 0 0 1 27 28"
23
- fill="currentColor"
24
+ fill={fill ?? "currentColor"}
24
25
  />
25
26
  <path
26
27
  d="M5 28a1 1 0 0 1-.71-.29 1 1 0 0 1 0-1.42l22-22a1 1 0 1 1 1.42 1.42l-22 22A1 1 0 0 1 5 28"
27
- fill="currentColor"
28
+ fill={fill ?? "currentColor"}
28
29
  />
29
30
  </svg>
30
31
  )
@@ -1,16 +1,17 @@
1
+ import clsx from "clsx"
1
2
  import { type SVGProps, useId } from "react"
2
3
 
3
4
  interface IconProps extends SVGProps<SVGSVGElement> {
4
5
  alt?: string
5
6
  }
6
7
 
7
- export const CoopCardIcon = ({ alt, className, ...props }: IconProps) => {
8
+ export const CoopCardIcon = ({ alt, className, fill, ...props }: IconProps) => {
8
9
  const id = useId()
9
10
  const componentProps = {
10
11
  "aria-labelledby": alt ? id : undefined,
11
- className: `coop-icon ${className ?? ""}`.trim(),
12
+ className: clsx("coop-icon", className),
12
13
  "data-icon": "coop-card",
13
- fill: "none",
14
+ fill: fill ?? "none",
14
15
  role: alt ? "img" : undefined,
15
16
  viewBox: "0 0 32 32",
16
17
  ...props,
@@ -20,7 +21,7 @@ export const CoopCardIcon = ({ alt, className, ...props }: IconProps) => {
20
21
  {alt ? <title id={id}>{alt}</title> : null}
21
22
  <path
22
23
  d="M6.67 0a1.34 1.34 0 0 0-1.34 1.33v29.34A1.34 1.34 0 0 0 6.67 32h18.66a1.34 1.34 0 0 0 1.34-1.33V1.33A1.34 1.34 0 0 0 25.33 0ZM23 4.77a6.4 6.4 0 0 1 .21 1.62A6.8 6.8 0 0 1 22.94 8a2.1 2.1 0 0 1-.48.85 2.3 2.3 0 0 1-.82.55 6.3 6.3 0 0 1-1.93.31 5.3 5.3 0 0 1-1.94-.31 2.2 2.2 0 0 1-.8-.55 2.3 2.3 0 0 1-.49-.85 5.94 5.94 0 0 1 0-3.24 2.2 2.2 0 0 1 .52-.84 2.1 2.1 0 0 1 .82-.54 5.84 5.84 0 0 1 3.87 0 2.24 2.24 0 0 1 .81.55 2.3 2.3 0 0 1 .5.84m-2 2.4a2.5 2.5 0 0 0 .12-.78 2.4 2.4 0 0 0-.13-.8 1 1 0 0 0-.28-.45 1.15 1.15 0 0 0-.47-.23 2.8 2.8 0 0 0-1 0 1 1 0 0 0-.47.24.9.9 0 0 0-.29.44 2.66 2.66 0 0 0 0 1.58 1 1 0 0 0 .28.45 1.1 1.1 0 0 0 .48.23 2.8 2.8 0 0 0 1 0 1.1 1.1 0 0 0 .47-.24 1 1 0 0 0 .23-.44Zm-5.5 4.75a5.9 5.9 0 0 1 0 3.23 2.07 2.07 0 0 1-1.3 1.4 5.84 5.84 0 0 1-3.87 0 2.16 2.16 0 0 1-.81-.55 2.1 2.1 0 0 1-.52-.85 5.9 5.9 0 0 1 0-3.23 2.1 2.1 0 0 1 .48-.85 2.16 2.16 0 0 1 .82-.55 5.84 5.84 0 0 1 3.87 0 2.19 2.19 0 0 1 1.3 1.4Zm-2 2.41a2.5 2.5 0 0 0 .12-.77 2.7 2.7 0 0 0-.12-.8 1 1 0 0 0-.28-.45 1 1 0 0 0-.48-.23 2.8 2.8 0 0 0-1 0 1 1 0 0 0-.47.24 1 1 0 0 0-.28.44 2.63 2.63 0 0 0 0 1.57.9.9 0 0 0 .28.45 1 1 0 0 0 .47.23 2.8 2.8 0 0 0 1 0 1 1 0 0 0 .47-.23 1 1 0 0 0 .29-.45m2.22-8h-2.1a3.3 3.3 0 0 0-.1-.78 1 1 0 0 0-.29-.45 1.1 1.1 0 0 0-.47-.23 2.8 2.8 0 0 0-1 0 1.05 1.05 0 0 0-.47.24 1.1 1.1 0 0 0-.29.44 2.66 2.66 0 0 0 0 1.58 1 1 0 0 0 .28.45 1.1 1.1 0 0 0 .48.23 2.8 2.8 0 0 0 1 0 1.1 1.1 0 0 0 .47-.24 1.1 1.1 0 0 0 .29-.44 2.3 2.3 0 0 0 .07-.36l2 .92a3 3 0 0 0-.09.31 2.1 2.1 0 0 1-.49.85 2.16 2.16 0 0 1-.81.55 6.4 6.4 0 0 1-1.94.31 5.7 5.7 0 0 1-1.93-.31 2.1 2.1 0 0 1-.8-.55A2.16 2.16 0 0 1 9 8a5.94 5.94 0 0 1 0-3.23 2.06 2.06 0 0 1 .48-.85 2 2 0 0 1 .82-.54 5.84 5.84 0 0 1 3.87 0 2.2 2.2 0 0 1 .8.55 2 2 0 0 1 .49.84 6.7 6.7 0 0 1 .26 1.6Zm.5 7.18a6.2 6.2 0 0 1 .21-1.61 2.06 2.06 0 0 1 .51-.85 2 2 0 0 1 .85-.5 5.84 5.84 0 0 1 3.87 0 2.16 2.16 0 0 1 .81.55 2.1 2.1 0 0 1 .53.9 5.9 5.9 0 0 1 0 3.23 2.1 2.1 0 0 1-.48.85 2.16 2.16 0 0 1-.82.55 6.7 6.7 0 0 1-1.93.32L19 15h.2a2.8 2.8 0 0 0 1 0 1 1 0 0 0 .46-.24 1.05 1.05 0 0 0 .27-.44 2.66 2.66 0 0 0 0-1.58 1 1 0 0 0-.28-.44 1 1 0 0 0-.47-.23 2.4 2.4 0 0 0-1 0 .9.9 0 0 0-.47.23.9.9 0 0 0-.29.44 2.3 2.3 0 0 0-.11.78v4.73h-2.1Z"
23
- fill="currentColor"
24
+ fill={fill ?? "currentColor"}
24
25
  fillRule="evenodd"
25
26
  />
26
27
  </svg>
@@ -1,16 +1,17 @@
1
+ import clsx from "clsx"
1
2
  import { type SVGProps, useId } from "react"
2
3
 
3
4
  interface IconProps extends SVGProps<SVGSVGElement> {
4
5
  alt?: string
5
6
  }
6
7
 
7
- export const CoopIcon = ({ alt, className, ...props }: IconProps) => {
8
+ export const CoopIcon = ({ alt, className, fill, ...props }: IconProps) => {
8
9
  const id = useId()
9
10
  const componentProps = {
10
11
  "aria-labelledby": alt ? id : undefined,
11
- className: `coop-icon ${className ?? ""}`.trim(),
12
+ className: clsx("coop-icon", className),
12
13
  "data-icon": "coop",
13
- fill: "none",
14
+ fill: fill ?? "none",
14
15
  role: alt ? "img" : undefined,
15
16
  viewBox: "0 0 32 32",
16
17
  ...props,
@@ -20,7 +21,7 @@ export const CoopIcon = ({ alt, className, ...props }: IconProps) => {
20
21
  {alt ? <title id={id}>{alt}</title> : null}
21
22
  <path
22
23
  d="M28.77 5.17a11.33 11.33 0 0 1 0 5.93 4 4 0 0 1-.88 1.57 4.1 4.1 0 0 1-1.5 1 12 12 0 0 1-3.56.58 9.8 9.8 0 0 1-3.56-.58 4.2 4.2 0 0 1-1.47-1 4.1 4.1 0 0 1-.9-1.55 10.9 10.9 0 0 1 0-5.94 3.8 3.8 0 0 1 .89-1.56 3.8 3.8 0 0 1 1.49-1 10.73 10.73 0 0 1 7.12 0 3.9 3.9 0 0 1 1.48 1 3.9 3.9 0 0 1 .89 1.55m-3.67 4.4a4.9 4.9 0 0 0 .21-1.43 4.9 4.9 0 0 0-.23-1.47 1.8 1.8 0 0 0-.53-.82 1.77 1.77 0 0 0-.87-.42 5.1 5.1 0 0 0-1.83 0 2 2 0 0 0-.87.43 1.9 1.9 0 0 0-.53.81 4.94 4.94 0 0 0 0 2.9 1.86 1.86 0 0 0 .52.82 1.8 1.8 0 0 0 .88.43 5.1 5.1 0 0 0 1.83 0 1.88 1.88 0 0 0 1.4-1.25Zm-10 8.73a10.9 10.9 0 0 1 0 5.94 3.75 3.75 0 0 1-.88 1.58 3.8 3.8 0 0 1-1.5 1 10.7 10.7 0 0 1-7.11 0 4 4 0 0 1-1.49-1 4.1 4.1 0 0 1-.9-1.56 10.9 10.9 0 0 1 0-5.94 3.9 3.9 0 0 1 .89-1.57 3.8 3.8 0 0 1 1.5-1 10.7 10.7 0 0 1 7.11 0 4 4 0 0 1 1.48 1 3.9 3.9 0 0 1 .88 1.55Zm-3.66 4.44a5 5 0 0 0 .22-1.43 5.2 5.2 0 0 0-.22-1.47 1.9 1.9 0 0 0-.54-.84 1.8 1.8 0 0 0-.88-.43 5.6 5.6 0 0 0-1.83 0 2 2 0 0 0-.87.44 1.9 1.9 0 0 0-.52.81 4.8 4.8 0 0 0 0 2.9 1.7 1.7 0 0 0 .52.82 1.65 1.65 0 0 0 .87.42A4.7 4.7 0 0 0 10 24a1.83 1.83 0 0 0 .87-.43 2 2 0 0 0 .55-.83Zm4.05-14.63h-3.85a6.3 6.3 0 0 0-.19-1.43 1.8 1.8 0 0 0-.52-.82 1.8 1.8 0 0 0-.88-.42 5.1 5.1 0 0 0-1.83 0 1.93 1.93 0 0 0-.87.43 1.9 1.9 0 0 0-.53.81 4.94 4.94 0 0 0 0 2.9 1.86 1.86 0 0 0 .52.82 1.8 1.8 0 0 0 .88.43 5.1 5.1 0 0 0 1.83 0 2 2 0 0 0 .87-.44 2 2 0 0 0 .53-.81 4.5 4.5 0 0 0 .14-.66l3.63 1.69c-.05.16-.1.33-.14.5a4 4 0 0 1-.88 1.57 4.1 4.1 0 0 1-1.5 1 12 12 0 0 1-3.56.58 10.7 10.7 0 0 1-3.55-.58 4.2 4.2 0 0 1-1.48-1 4 4 0 0 1-.89-1.55 10.9 10.9 0 0 1 0-5.94A3.9 3.9 0 0 1 4.1 3.6a4 4 0 0 1 1.5-1 10.7 10.7 0 0 1 7.11 0 3.9 3.9 0 0 1 1.49 1 4 4 0 0 1 .9 1.55 11.3 11.3 0 0 1 .39 2.96m.93 13.19a11 11 0 0 1 .39-3 3.6 3.6 0 0 1 .93-1.55 3.7 3.7 0 0 1 1.56-.92 10.7 10.7 0 0 1 7.11 0 3.9 3.9 0 0 1 1.49 1 4 4 0 0 1 .9 1.55 10.93 10.93 0 0 1 0 5.95 3.8 3.8 0 0 1-.89 1.56 3.74 3.74 0 0 1-1.5 1 11.5 11.5 0 0 1-3.55.59l-1.32-3.59h.15l.21.06a5.2 5.2 0 0 0 1.84 0 1.84 1.84 0 0 0 .84-.44 1.9 1.9 0 0 0 .52-.8 4.94 4.94 0 0 0 0-2.9 1.83 1.83 0 0 0-1.4-1.25 5.1 5.1 0 0 0-1.83 0A2 2 0 0 0 21 19a1.9 1.9 0 0 0-.53.81 4.6 4.6 0 0 0-.2 1.42V30h-3.85Z"
23
- fill="currentColor"
24
+ fill={fill ?? "currentColor"}
24
25
  fillRule="evenodd"
25
26
  />
26
27
  </svg>
@@ -1,16 +1,17 @@
1
+ import clsx from "clsx"
1
2
  import { type SVGProps, useId } from "react"
2
3
 
3
4
  interface IconProps extends SVGProps<SVGSVGElement> {
4
5
  alt?: string
5
6
  }
6
7
 
7
- export const CoopLocationIcon = ({ alt, className, ...props }: IconProps) => {
8
+ export const CoopLocationIcon = ({ alt, className, fill, ...props }: IconProps) => {
8
9
  const id = useId()
9
10
  const componentProps = {
10
11
  "aria-labelledby": alt ? id : undefined,
11
- className: `coop-icon ${className ?? ""}`.trim(),
12
+ className: clsx("coop-icon", className),
12
13
  "data-icon": "coop-location",
13
- fill: "none",
14
+ fill: fill ?? "none",
14
15
  role: alt ? "img" : undefined,
15
16
  viewBox: "0 0 32 32",
16
17
  ...props,
@@ -20,15 +21,15 @@ export const CoopLocationIcon = ({ alt, className, ...props }: IconProps) => {
20
21
  {alt ? <title id={id}>{alt}</title> : null}
21
22
  <path
22
23
  d="M20.48 6.51a2.4 2.4 0 0 0-.54 0 2.3 2.3 0 0 0-.53 0 1 1 0 0 0-.8.71 2.75 2.75 0 0 0 0 1.67 1.07 1.07 0 0 0 .8.71 3 3 0 0 0 .53.05 3.3 3.3 0 0 0 .54-.05 1.07 1.07 0 0 0 .8-.71 3 3 0 0 0 0-1.67 1 1 0 0 0-.8-.71"
23
- fill="currentColor"
24
+ fill={fill ?? "currentColor"}
24
25
  />
25
26
  <path
26
27
  d="M16 0C13 0 3-.25 3 11c0 13.71 12 21 13 21s13-7.29 13-21C29-.25 19 0 16 0m-.5 17.36a2.25 2.25 0 0 1-1.39 1.49 6.2 6.2 0 0 1-4.11 0 2.27 2.27 0 0 1-1.39-1.49 6.2 6.2 0 0 1 0-3.42A2.27 2.27 0 0 1 10 12.45a6.2 6.2 0 0 1 2.06-.35 6.3 6.3 0 0 1 2.06.35 2.26 2.26 0 0 1 1.38 1.49 6.2 6.2 0 0 1 0 3.42M13.52 8a3.2 3.2 0 0 0-.13-.82 1 1 0 0 0-.8-.71 2.3 2.3 0 0 0-.53 0 2.5 2.5 0 0 0-.54 0 1.05 1.05 0 0 0-.8.71 3 3 0 0 0 0 1.67 1.09 1.09 0 0 0 .8.71 3.3 3.3 0 0 0 .54.05 3 3 0 0 0 .53-.05 1.07 1.07 0 0 0 .8-.71 3 3 0 0 0 .09-.39l2.1 1c0 .09-.05.19-.08.28a2.26 2.26 0 0 1-1.38 1.49 6.1 6.1 0 0 1-2.06.35 6 6 0 0 1-2.06-.33 2.27 2.27 0 0 1-1.39-1.49 6.2 6.2 0 0 1 0-3.42A2.29 2.29 0 0 1 10 4.85a6.2 6.2 0 0 1 2.06-.35 6.3 6.3 0 0 1 2.06.35 2.28 2.28 0 0 1 1.38 1.49A6 6 0 0 1 15.74 8Zm9.87 9.32A2.27 2.27 0 0 1 22 18.85a6.2 6.2 0 0 1-2 .35l-.75-2.07.21.07a3 3 0 0 0 .53.05 3.3 3.3 0 0 0 .54-.05 1.09 1.09 0 0 0 .8-.71 3 3 0 0 0 0-1.67 1 1 0 0 0-.8-.71 2.4 2.4 0 0 0-.54-.06 2.3 2.3 0 0 0-.53.06 1 1 0 0 0-.8.71 2.9 2.9 0 0 0-.13.83v5h-2.27v-5a6.2 6.2 0 0 1 .24-1.71 2.25 2.25 0 0 1 1.39-1.49 6.2 6.2 0 0 1 4.11 0 2.27 2.27 0 0 1 1.39 1.49 6.2 6.2 0 0 1 0 3.42Zm0-7.6A2.26 2.26 0 0 1 22 11.25a6.1 6.1 0 0 1-2 .35 6 6 0 0 1-2.06-.35 2.25 2.25 0 0 1-1.44-1.49 6.2 6.2 0 0 1 0-3.42 2.27 2.27 0 0 1 1.39-1.49 6.2 6.2 0 0 1 4.11 0 2.29 2.29 0 0 1 1.39 1.49 6.2 6.2 0 0 1 0 3.42Z"
27
- fill="currentColor"
28
+ fill={fill ?? "currentColor"}
28
29
  />
29
30
  <path
30
31
  d="M12.59 14.11a2.3 2.3 0 0 0-.53 0 2.5 2.5 0 0 0-.54 0 1.05 1.05 0 0 0-.8.71 3 3 0 0 0 0 1.67 1.07 1.07 0 0 0 .8.71 3.3 3.3 0 0 0 .54.05 3 3 0 0 0 .53-.05 1.07 1.07 0 0 0 .8-.71 2.75 2.75 0 0 0 0-1.67 1 1 0 0 0-.8-.71"
31
- fill="currentColor"
32
+ fill={fill ?? "currentColor"}
32
33
  />
33
34
  </svg>
34
35
  )
@@ -1,16 +1,17 @@
1
+ import clsx from "clsx"
1
2
  import { type SVGProps, useId } from "react"
2
3
 
3
4
  interface IconProps extends SVGProps<SVGSVGElement> {
4
5
  alt?: string
5
6
  }
6
7
 
7
- export const DownloadIcon = ({ alt, className, ...props }: IconProps) => {
8
+ export const DownloadIcon = ({ alt, className, fill, ...props }: IconProps) => {
8
9
  const id = useId()
9
10
  const componentProps = {
10
11
  "aria-labelledby": alt ? id : undefined,
11
- className: `coop-icon ${className ?? ""}`.trim(),
12
+ className: clsx("coop-icon", className),
12
13
  "data-icon": "download",
13
- fill: "none",
14
+ fill: fill ?? "none",
14
15
  role: alt ? "img" : undefined,
15
16
  viewBox: "0 0 32 32",
16
17
  ...props,
@@ -18,14 +19,17 @@ export const DownloadIcon = ({ alt, className, ...props }: IconProps) => {
18
19
  return (
19
20
  <svg {...componentProps}>
20
21
  {alt ? <title id={id}>{alt}</title> : null}
21
- <path d="M16 22.56a1 1 0 0 1-1-1V1a1 1 0 0 1 2 0v20.56a1 1 0 0 1-1 1" fill="currentColor" />
22
+ <path
23
+ d="M16 22.56a1 1 0 0 1-1-1V1a1 1 0 0 1 2 0v20.56a1 1 0 0 1-1 1"
24
+ fill={fill ?? "currentColor"}
25
+ />
22
26
  <path
23
27
  d="M16 23a1 1 0 0 1-.7-.3l-9.76-9.77A1 1 0 0 1 7 11.52l9 9 9-9a1 1 0 0 1 1.41 0 1 1 0 0 1 0 1.42l-9.73 9.72A1 1 0 0 1 16 23"
24
- fill="currentColor"
28
+ fill={fill ?? "currentColor"}
25
29
  />
26
30
  <path
27
31
  d="M30 32H2a2 2 0 0 1-2-2v-7.49a1 1 0 0 1 2 0V30h28v-7.49a1 1 0 0 1 2 0V30a2 2 0 0 1-2 2"
28
- fill="currentColor"
32
+ fill={fill ?? "currentColor"}
29
33
  />
30
34
  </svg>
31
35
  )
@@ -1,16 +1,17 @@
1
+ import clsx from "clsx"
1
2
  import { type SVGProps, useId } from "react"
2
3
 
3
4
  interface IconProps extends SVGProps<SVGSVGElement> {
4
5
  alt?: string
5
6
  }
6
7
 
7
- export const HomeIcon = ({ alt, className, ...props }: IconProps) => {
8
+ export const HomeIcon = ({ alt, className, fill, ...props }: IconProps) => {
8
9
  const id = useId()
9
10
  const componentProps = {
10
11
  "aria-labelledby": alt ? id : undefined,
11
- className: `coop-icon ${className ?? ""}`.trim(),
12
+ className: clsx("coop-icon", className),
12
13
  "data-icon": "home",
13
- fill: "none",
14
+ fill: fill ?? "none",
14
15
  role: alt ? "img" : undefined,
15
16
  viewBox: "0 0 32 32",
16
17
  ...props,
@@ -20,15 +21,15 @@ export const HomeIcon = ({ alt, className, ...props }: IconProps) => {
20
21
  {alt ? <title id={id}>{alt}</title> : null}
21
22
  <path
22
23
  d="M29 31H3a1 1 0 0 1-1-1V15a1 1 0 0 1 2 0v14h24V15a1 1 0 0 1 2 0v15a1 1 0 0 1-1 1"
23
- fill="currentColor"
24
+ fill={fill ?? "currentColor"}
24
25
  />
25
26
  <path
26
27
  d="M31 17a1 1 0 0 1-.68-.27L15.92 3.37 1.68 16.73a1 1 0 0 1-1.41-.05 1 1 0 0 1 0-1.41l14.91-14a1 1 0 0 1 1.36 0l15.09 14a1 1 0 0 1 .05 1.42A1 1 0 0 1 31 17"
27
- fill="currentColor"
28
+ fill={fill ?? "currentColor"}
28
29
  />
29
30
  <path
30
31
  d="M22.86 31h-8a1 1 0 0 1-1-1V18a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1m-7-2h6V19h-6Z"
31
- fill="currentColor"
32
+ fill={fill ?? "currentColor"}
32
33
  />
33
34
  </svg>
34
35
  )
@@ -1,16 +1,17 @@
1
+ import clsx from "clsx"
1
2
  import { type SVGProps, useId } from "react"
2
3
 
3
4
  interface IconProps extends SVGProps<SVGSVGElement> {
4
5
  alt?: string
5
6
  }
6
7
 
7
- export const InformationIcon = ({ alt, className, ...props }: IconProps) => {
8
+ export const InformationIcon = ({ alt, className, fill, ...props }: IconProps) => {
8
9
  const id = useId()
9
10
  const componentProps = {
10
11
  "aria-labelledby": alt ? id : undefined,
11
- className: `coop-icon ${className ?? ""}`.trim(),
12
+ className: clsx("coop-icon", className),
12
13
  "data-icon": "information",
13
- fill: "none",
14
+ fill: fill ?? "none",
14
15
  role: alt ? "img" : undefined,
15
16
  viewBox: "0 0 32 32",
16
17
  ...props,
@@ -20,11 +21,11 @@ export const InformationIcon = ({ alt, className, ...props }: IconProps) => {
20
21
  {alt ? <title id={id}>{alt}</title> : null}
21
22
  <path
22
23
  d="M14.46 10.19a1.4 1.4 0 0 1 .43-1A1.5 1.5 0 0 1 16 8.75a1.6 1.6 0 0 1 1.11.41 1.35 1.35 0 0 1 .45 1 1.32 1.32 0 0 1-.45 1 1.56 1.56 0 0 1-1.11.41 1.47 1.47 0 0 1-1.09-.43 1.35 1.35 0 0 1-.45-.95m.34 3.26h2.4v9.6h-2.4Z"
23
- fill="currentColor"
24
+ fill={fill ?? "currentColor"}
24
25
  />
25
26
  <path
26
27
  d="M16 2A14 14 0 1 1 2 16 14 14 0 0 1 16 2m0-2a16 16 0 1 0 16 16A16 16 0 0 0 16 0"
27
- fill="currentColor"
28
+ fill={fill ?? "currentColor"}
28
29
  />
29
30
  </svg>
30
31
  )
@@ -1,16 +1,17 @@
1
+ import clsx from "clsx"
1
2
  import { type SVGProps, useId } from "react"
2
3
 
3
4
  interface IconProps extends SVGProps<SVGSVGElement> {
4
5
  alt?: string
5
6
  }
6
7
 
7
- export const LoadingIcon = ({ alt, className, ...props }: IconProps) => {
8
+ export const LoadingIcon = ({ alt, className, fill, ...props }: IconProps) => {
8
9
  const id = useId()
9
10
  const componentProps = {
10
11
  "aria-labelledby": alt ? id : undefined,
11
- className: `coop-icon ${className ?? ""}`.trim(),
12
+ className: clsx("coop-icon", className),
12
13
  "data-icon": "loading",
13
- fill: "none",
14
+ fill: fill ?? "none",
14
15
  role: alt ? "img" : undefined,
15
16
  viewBox: "0 0 24 24",
16
17
  ...props,
@@ -20,7 +21,7 @@ export const LoadingIcon = ({ alt, className, ...props }: IconProps) => {
20
21
  {alt ? <title id={id}>{alt}</title> : null}
21
22
  <path
22
23
  d="M10.72 19.9a8 8 0 0 1-6.5-9.79 7.77 7.77 0 0 1 6.18-5.95 8 8 0 0 1 9.49 6.52A1.54 1.54 0 0 0 21.38 12h.13a1.37 1.37 0 0 0 1.38-1.54 11 11 0 1 0-12.7 12.39A1.54 1.54 0 0 0 12 21.34a1.47 1.47 0 0 0-1.28-1.44"
23
- fill="currentColor"
24
+ fill={fill ?? "currentColor"}
24
25
  />
25
26
  </svg>
26
27
  )
@@ -1,16 +1,17 @@
1
+ import clsx from "clsx"
1
2
  import { type SVGProps, useId } from "react"
2
3
 
3
4
  interface IconProps extends SVGProps<SVGSVGElement> {
4
5
  alt?: string
5
6
  }
6
7
 
7
- export const LocationIcon = ({ alt, className, ...props }: IconProps) => {
8
+ export const LocationIcon = ({ alt, className, fill, ...props }: IconProps) => {
8
9
  const id = useId()
9
10
  const componentProps = {
10
11
  "aria-labelledby": alt ? id : undefined,
11
- className: `coop-icon ${className ?? ""}`.trim(),
12
+ className: clsx("coop-icon", className),
12
13
  "data-icon": "location",
13
- fill: "none",
14
+ fill: fill ?? "none",
14
15
  role: alt ? "img" : undefined,
15
16
  viewBox: "0 0 32 32",
16
17
  ...props,
@@ -20,11 +21,11 @@ export const LocationIcon = ({ alt, className, ...props }: IconProps) => {
20
21
  {alt ? <title id={id}>{alt}</title> : null}
21
22
  <path
22
23
  d="M28 6.3a8 8 0 0 0-4.92-5.1 22.68 22.68 0 0 0-14.56 0A7.39 7.39 0 0 0 3.9 6.3a17.8 17.8 0 0 0-.9 5.9c0 4.1 1.51 12.2 11.74 19.3l.41.3a1.45 1.45 0 0 0 .7.2 1.9 1.9 0 0 0 .7-.2h.1l.5-.3C27.39 24.4 29 16.3 29 12.2a21.5 21.5 0 0 0-1-5.9m-5.53-3.1a6.16 6.16 0 0 1 3.72 3.7 20 20 0 0 1 .8 5.3c0 4.6-2 9.1-5.82 13.2a31 31 0 0 1-4.72 4.1l-.1.1c-.1 0-.1.1-.2.1l-.2.2h-.1c-.1 0-.1-.1-.2-.1a.1.1 0 0 1-.1-.1 37.5 37.5 0 0 1-4.72-4.1C6.91 21.5 4.91 17 4.91 12.3a20.7 20.7 0 0 1 .8-5.3 5.72 5.72 0 0 1 3.61-3.8 21.1 21.1 0 0 1 13.15 0"
23
- fill="currentColor"
24
+ fill={fill ?? "currentColor"}
24
25
  />
25
26
  <path
26
27
  d="M16 18.9a7.11 7.11 0 0 0 7-7 7 7 0 1 0-7 7m0-12a5 5 0 0 1 5 5 5.09 5.09 0 0 1-5 5 5 5 0 1 1 0-10"
27
- fill="currentColor"
28
+ fill={fill ?? "currentColor"}
28
29
  />
29
30
  </svg>
30
31
  )
@@ -1,16 +1,17 @@
1
+ import clsx from "clsx"
1
2
  import { type SVGProps, useId } from "react"
2
3
 
3
4
  interface IconProps extends SVGProps<SVGSVGElement> {
4
5
  alt?: string
5
6
  }
6
7
 
7
- export const MailIcon = ({ alt, className, ...props }: IconProps) => {
8
+ export const MailIcon = ({ alt, className, fill, ...props }: IconProps) => {
8
9
  const id = useId()
9
10
  const componentProps = {
10
11
  "aria-labelledby": alt ? id : undefined,
11
- className: `coop-icon ${className ?? ""}`.trim(),
12
+ className: clsx("coop-icon", className),
12
13
  "data-icon": "mail",
13
- fill: "none",
14
+ fill: fill ?? "none",
14
15
  role: alt ? "img" : undefined,
15
16
  viewBox: "0 0 32 32",
16
17
  ...props,
@@ -20,7 +21,7 @@ export const MailIcon = ({ alt, className, ...props }: IconProps) => {
20
21
  {alt ? <title id={id}>{alt}</title> : null}
21
22
  <path
22
23
  d="M32 25.61V6.39a1.4 1.4 0 0 0 0-.2.6.6 0 0 0-.15-.19s0-.08-.05-.11 0 0-.05 0a1 1 0 0 0-.15-.14 1 1 0 0 0-.16-.11l-.17-.05H.73l-.17.07a.5.5 0 0 0-.16.1 1 1 0 0 0-.15.14s-.08.1-.1.1l-.09.18a1.4 1.4 0 0 0 0 .2V25.6a1.4 1.4 0 0 0 0 .2c0 .07.06.12.09.18a1 1 0 0 0 .05.11 1 1 0 0 0 .24.2.5.5 0 0 0 .09.06 1 1 0 0 0 .42.1H31a1 1 0 0 0 .42-.1.5.5 0 0 0 .09-.06 1 1 0 0 0 .24-.2h.05s0-.07.05-.1a.7.7 0 0 0 .09-.19 1 1 0 0 0 .06-.19M2 8.49 12.06 16 2 23.51Zm14 8L4 7.5h24Zm-2.26.81 1.66 1.24.11.06.1.05a1.1 1.1 0 0 0 .39.09 1.1 1.1 0 0 0 .39-.09l.1-.05.11-.06 1.66-1.24L28 24.5H4Zm6.19-1.3L30 8.49v15Z"
23
- fill="currentColor"
24
+ fill={fill ?? "currentColor"}
24
25
  />
25
26
  </svg>
26
27
  )
@@ -1,16 +1,17 @@
1
+ import clsx from "clsx"
1
2
  import { type SVGProps, useId } from "react"
2
3
 
3
4
  interface IconProps extends SVGProps<SVGSVGElement> {
4
5
  alt?: string
5
6
  }
6
7
 
7
- export const MenuIcon = ({ alt, className, ...props }: IconProps) => {
8
+ export const MenuIcon = ({ alt, className, fill, ...props }: IconProps) => {
8
9
  const id = useId()
9
10
  const componentProps = {
10
11
  "aria-labelledby": alt ? id : undefined,
11
- className: `coop-icon ${className ?? ""}`.trim(),
12
+ className: clsx("coop-icon", className),
12
13
  "data-icon": "menu",
13
- fill: "none",
14
+ fill: fill ?? "none",
14
15
  role: alt ? "img" : undefined,
15
16
  viewBox: "0 0 32 32",
16
17
  ...props,
@@ -20,7 +21,7 @@ export const MenuIcon = ({ alt, className, ...props }: IconProps) => {
20
21
  {alt ? <title id={id}>{alt}</title> : null}
21
22
  <path
22
23
  d="M28 5H4a1 1 0 0 1 0-2h24a1 1 0 0 1 0 2M28 17H4a1 1 0 0 1 0-2h24a1 1 0 0 1 0 2M28 29H4a1 1 0 0 1 0-2h24a1 1 0 0 1 0 2"
23
- fill="currentColor"
24
+ fill={fill ?? "currentColor"}
24
25
  />
25
26
  </svg>
26
27
  )
@@ -1,16 +1,17 @@
1
+ import clsx from "clsx"
1
2
  import { type SVGProps, useId } from "react"
2
3
 
3
4
  interface IconProps extends SVGProps<SVGSVGElement> {
4
5
  alt?: string
5
6
  }
6
7
 
7
- export const MessageIcon = ({ alt, className, ...props }: IconProps) => {
8
+ export const MessageIcon = ({ alt, className, fill, ...props }: IconProps) => {
8
9
  const id = useId()
9
10
  const componentProps = {
10
11
  "aria-labelledby": alt ? id : undefined,
11
- className: `coop-icon ${className ?? ""}`.trim(),
12
+ className: clsx("coop-icon", className),
12
13
  "data-icon": "message",
13
- fill: "none",
14
+ fill: fill ?? "none",
14
15
  role: alt ? "img" : undefined,
15
16
  viewBox: "0 0 32 32",
16
17
  ...props,
@@ -20,7 +21,7 @@ export const MessageIcon = ({ alt, className, ...props }: IconProps) => {
20
21
  {alt ? <title id={id}>{alt}</title> : null}
21
22
  <path
22
23
  d="M30 31a1 1 0 0 1-.75-.34l-7.64-8.6H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h28a1 1 0 0 1 .71.29A1 1 0 0 1 31 2v28a1 1 0 0 1-.65.93.8.8 0 0 1-.35.07M3 20.06h19.06a1 1 0 0 1 .75.33l6.19 7V3H3Z"
23
- fill="currentColor"
24
+ fill={fill ?? "currentColor"}
24
25
  />
25
26
  </svg>
26
27
  )
@@ -1,16 +1,17 @@
1
+ import clsx from "clsx"
1
2
  import { type SVGProps, useId } from "react"
2
3
 
3
4
  interface IconProps extends SVGProps<SVGSVGElement> {
4
5
  alt?: string
5
6
  }
6
7
 
7
- export const MinusIcon = ({ alt, className, ...props }: IconProps) => {
8
+ export const MinusIcon = ({ alt, className, fill, ...props }: IconProps) => {
8
9
  const id = useId()
9
10
  const componentProps = {
10
11
  "aria-labelledby": alt ? id : undefined,
11
- className: `coop-icon ${className ?? ""}`.trim(),
12
+ className: clsx("coop-icon", className),
12
13
  "data-icon": "minus",
13
- fill: "none",
14
+ fill: fill ?? "none",
14
15
  role: alt ? "img" : undefined,
15
16
  viewBox: "0 0 32 32",
16
17
  ...props,
@@ -20,7 +21,7 @@ export const MinusIcon = ({ alt, className, ...props }: IconProps) => {
20
21
  {alt ? <title id={id}>{alt}</title> : null}
21
22
  <path
22
23
  d="M24.7 16.71a1 1 0 0 1-.7.29H8a1 1 0 1 1 0-2h16a1 1 0 0 1 1 1 1 1 0 0 1-.3.71"
23
- fill="currentColor"
24
+ fill={fill ?? "currentColor"}
24
25
  />
25
26
  </svg>
26
27
  )