@coopdigital/react 0.16.0 → 0.18.0

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 (87) hide show
  1. package/README.md +2 -2
  2. package/dist/components/Icon/AddIcon.d.ts +6 -0
  3. package/dist/components/Icon/ArrowDownIcon.d.ts +6 -0
  4. package/dist/components/Icon/ArrowLeftIcon.d.ts +6 -0
  5. package/dist/components/Icon/ArrowRightIcon.d.ts +6 -0
  6. package/dist/components/Icon/ArrowUpIcon.d.ts +6 -0
  7. package/dist/components/Icon/AvatarAltIcon.d.ts +6 -0
  8. package/dist/components/Icon/AvatarIcon.d.ts +6 -0
  9. package/dist/components/Icon/BasketIcon.d.ts +6 -0
  10. package/dist/components/Icon/CalendarIcon.d.ts +6 -0
  11. package/dist/components/Icon/ChevronDownIcon.d.ts +6 -0
  12. package/dist/components/Icon/ChevronLeftIcon.d.ts +6 -0
  13. package/dist/components/Icon/ChevronRightIcon.d.ts +6 -0
  14. package/dist/components/Icon/ChevronUpIcon.d.ts +6 -0
  15. package/dist/components/Icon/ClockIcon.d.ts +6 -0
  16. package/dist/components/Icon/CloseAltIcon.d.ts +6 -0
  17. package/dist/components/Icon/CloseIcon.d.ts +6 -0
  18. package/dist/components/Icon/CoopCardIcon.d.ts +6 -0
  19. package/dist/components/Icon/CoopIcon.d.ts +6 -0
  20. package/dist/components/Icon/CoopLocationIcon.d.ts +6 -0
  21. package/dist/components/Icon/DownloadIcon.d.ts +6 -0
  22. package/dist/components/Icon/HomeIcon.d.ts +6 -0
  23. package/dist/components/Icon/InformationIcon.d.ts +6 -0
  24. package/dist/components/Icon/LocationIcon.d.ts +6 -0
  25. package/dist/components/Icon/MailIcon.d.ts +6 -0
  26. package/dist/components/Icon/MenuIcon.d.ts +6 -0
  27. package/dist/components/Icon/MessageIcon.d.ts +6 -0
  28. package/dist/components/Icon/MinusIcon.d.ts +6 -0
  29. package/dist/components/Icon/OpenNewIcon.d.ts +6 -0
  30. package/dist/components/Icon/PencilIcon.d.ts +6 -0
  31. package/dist/components/Icon/PhoneIcon.d.ts +6 -0
  32. package/dist/components/Icon/QuestionIcon.d.ts +6 -0
  33. package/dist/components/Icon/ScooterIcon.d.ts +6 -0
  34. package/dist/components/Icon/SearchIcon.d.ts +6 -0
  35. package/dist/components/Icon/SettingsIcon.d.ts +6 -0
  36. package/dist/components/Icon/TickAltIcon.d.ts +6 -0
  37. package/dist/components/Icon/TickIcon.d.ts +6 -0
  38. package/dist/components/Icon/VanIcon.d.ts +6 -0
  39. package/dist/components/Icon/WarningIcon.d.ts +6 -0
  40. package/dist/components/Icon/WriteIcon.d.ts +6 -0
  41. package/dist/components/Icon/index.d.ts +39 -13
  42. package/dist/components/RootSVG/RootSVG.d.ts +1 -2
  43. package/dist/components/RootSVG/RootSVG.js +2 -2
  44. package/package.json +4 -3
  45. package/src/components/Icon/AddIcon.tsx +30 -0
  46. package/src/components/Icon/ArrowDownIcon.tsx +27 -0
  47. package/src/components/Icon/ArrowLeftIcon.tsx +27 -0
  48. package/src/components/Icon/ArrowRightIcon.tsx +27 -0
  49. package/src/components/Icon/ArrowUpIcon.tsx +27 -0
  50. package/src/components/Icon/AvatarAltIcon.tsx +34 -0
  51. package/src/components/Icon/AvatarIcon.tsx +30 -0
  52. package/src/components/Icon/BasketIcon.tsx +30 -0
  53. package/src/components/Icon/CalendarIcon.tsx +30 -0
  54. package/src/components/Icon/ChevronDownIcon.tsx +26 -0
  55. package/src/components/Icon/ChevronLeftIcon.tsx +26 -0
  56. package/src/components/Icon/ChevronRightIcon.tsx +26 -0
  57. package/src/components/Icon/ChevronUpIcon.tsx +26 -0
  58. package/src/components/Icon/ClockIcon.tsx +30 -0
  59. package/src/components/Icon/CloseAltIcon.tsx +34 -0
  60. package/src/components/Icon/CloseIcon.tsx +30 -0
  61. package/src/components/Icon/CoopCardIcon.tsx +27 -0
  62. package/src/components/Icon/CoopIcon.tsx +27 -0
  63. package/src/components/Icon/CoopLocationIcon.tsx +34 -0
  64. package/src/components/Icon/DownloadIcon.tsx +31 -0
  65. package/src/components/Icon/HomeIcon.tsx +34 -0
  66. package/src/components/Icon/InformationIcon.tsx +30 -0
  67. package/src/components/Icon/LocationIcon.tsx +30 -0
  68. package/src/components/Icon/MailIcon.tsx +26 -0
  69. package/src/components/Icon/MenuIcon.tsx +26 -0
  70. package/src/components/Icon/MessageIcon.tsx +26 -0
  71. package/src/components/Icon/MinusIcon.tsx +26 -0
  72. package/src/components/Icon/OpenNewIcon.tsx +30 -0
  73. package/src/components/Icon/PencilIcon.tsx +26 -0
  74. package/src/components/Icon/PhoneIcon.tsx +26 -0
  75. package/src/components/Icon/QuestionIcon.tsx +30 -0
  76. package/src/components/Icon/ScooterIcon.tsx +42 -0
  77. package/src/components/Icon/SearchIcon.tsx +30 -0
  78. package/src/components/Icon/SettingsIcon.tsx +26 -0
  79. package/src/components/Icon/TickAltIcon.tsx +30 -0
  80. package/src/components/Icon/TickIcon.tsx +26 -0
  81. package/src/components/Icon/VanIcon.tsx +26 -0
  82. package/src/components/Icon/WarningIcon.tsx +30 -0
  83. package/src/components/Icon/WriteIcon.tsx +38 -0
  84. package/src/components/Icon/index.tsx +39 -36
  85. package/src/components/RootSVG/RootSVG.tsx +2 -22
  86. package/dist/components/Icon/template.d.ts +0 -11
  87. package/src/components/Icon/template.tsx +0 -29
@@ -0,0 +1,26 @@
1
+ import { type SVGProps, useId } from "react"
2
+
3
+ interface IconProps extends SVGProps<SVGSVGElement> {
4
+ alt?: string
5
+ }
6
+
7
+ export const PencilIcon = ({ alt, className, ...props }: IconProps) => {
8
+ const id = useId()
9
+ const componentProps = {
10
+ "aria-labelledby": alt ? id : undefined,
11
+ className: `coop-icon ${className ?? ""}`.trim(),
12
+ fill: "none",
13
+ role: alt ? "img" : undefined,
14
+ viewBox: "0 0 32 32",
15
+ ...props,
16
+ }
17
+ return (
18
+ <svg {...componentProps}>
19
+ {alt ? <title id={id}>{alt}</title> : null}
20
+ <path
21
+ d="M31.7 6.12 25.88.3a1 1 0 0 0-1.4 0L1.3 23.47a.86.86 0 0 0-.3.6L0 30.9a1.14 1.14 0 0 0 .3.8.91.91 0 0 0 .7.3h.1l6.82-1a.61.61 0 0 0 .61-.3L31.7 7.52a1 1 0 0 0 0-1.4M7.22 29l-3.57.56L5.08 28a1 1 0 0 0 0-1.42 1 1 0 0 0-1.41.05L2.39 28l.52-3.29 1.91-1.91 4.12 4.52Zm3.14-3.11-4.12-4.54L25.18 2.41l4.41 4.41Z"
22
+ fill="currentColor"
23
+ />
24
+ </svg>
25
+ )
26
+ }
@@ -0,0 +1,26 @@
1
+ import { type SVGProps, useId } from "react"
2
+
3
+ interface IconProps extends SVGProps<SVGSVGElement> {
4
+ alt?: string
5
+ }
6
+
7
+ export const PhoneIcon = ({ alt, className, ...props }: IconProps) => {
8
+ const id = useId()
9
+ const componentProps = {
10
+ "aria-labelledby": alt ? id : undefined,
11
+ className: `coop-icon ${className ?? ""}`.trim(),
12
+ fill: "none",
13
+ role: alt ? "img" : undefined,
14
+ viewBox: "0 0 32 32",
15
+ ...props,
16
+ }
17
+ return (
18
+ <svg {...componentProps}>
19
+ {alt ? <title id={id}>{alt}</title> : null}
20
+ <path
21
+ d="M28.88 21.26c-2.26-1.72-5.46-2.84-7-1.42-.51.51-1.65 1.52-5.15-1.42-5.73-5.37-5.47-7.29-4.44-8.42 1.44-1.52.41-4.66-1.34-6.89C8.78.38 6.21-.63 4.14.38a6.53 6.53 0 0 0-4 4.67c-.94 4.66 3.49 10.64 7.3 14.89.72.81 1.45 1.52 2.17 2.33l.41.41C14.45 27 20.53 32 25.58 32a4.4 4.4 0 0 0 1.14-.1 6.64 6.64 0 0 0 5-3.95c.87-2.03-.16-4.56-2.84-6.69m-13.6-1.32c2.06 1.72 5.25 3.75 7.93 1.42.42-.3 2.37 0 4.44 1.52 1.44 1.12 2.78 2.84 2.06 4.12a4.45 4.45 0 0 1-3.4 2.84c-3.3.51-8.77-2.63-14.85-8.71l-.31-.31c-.72-.71-1.44-1.41-2.16-2.23H9C4 13.15 1.57 8.49 2.19 5.45a4.69 4.69 0 0 1 2.88-3.24c1.34-.71 3.09.71 4.13 2.13 1.54 2 1.85 3.95 1.44 4.35-2.89 3 .1 6.89 3.92 10.64"
22
+ fill="currentColor"
23
+ />
24
+ </svg>
25
+ )
26
+ }
@@ -0,0 +1,30 @@
1
+ import { type SVGProps, useId } from "react"
2
+
3
+ interface IconProps extends SVGProps<SVGSVGElement> {
4
+ alt?: string
5
+ }
6
+
7
+ export const QuestionIcon = ({ alt, className, ...props }: IconProps) => {
8
+ const id = useId()
9
+ const componentProps = {
10
+ "aria-labelledby": alt ? id : undefined,
11
+ className: `coop-icon ${className ?? ""}`.trim(),
12
+ fill: "none",
13
+ role: alt ? "img" : undefined,
14
+ viewBox: "0 0 32 32",
15
+ ...props,
16
+ }
17
+ return (
18
+ <svg {...componentProps}>
19
+ {alt ? <title id={id}>{alt}</title> : null}
20
+ <path
21
+ d="M16 0a16 16 0 1 0 16 16A16 16 0 0 0 16 0m0 30a14 14 0 1 1 14-14 14 14 0 0 1-14 14"
22
+ fill="currentColor"
23
+ />
24
+ <path
25
+ d="M15.89 20.32a1.58 1.58 0 0 0-1.14.46 1.5 1.5 0 0 0-.47 1.1 1.3 1.3 0 0 0 .13.6 1.6 1.6 0 0 0 .35.48 1.7 1.7 0 0 0 .51.33 1.6 1.6 0 0 0 .62.12 1.55 1.55 0 0 0 1.11-.47 1.48 1.48 0 0 0 .47-1.1 1.4 1.4 0 0 0-.47-1.08 1.6 1.6 0 0 0-1.11-.44M19.11 9.71A4.3 4.3 0 0 0 17.74 9a5.2 5.2 0 0 0-1.63-.25 5.4 5.4 0 0 0-1.73.25 4.5 4.5 0 0 0-1.38.78 4.3 4.3 0 0 0-1 1.28 5 5 0 0 0-.51 1.71l2.41.23a2.7 2.7 0 0 1 .16-.78 1.9 1.9 0 0 1 .41-.67 2.1 2.1 0 0 1 .64-.46 1.9 1.9 0 0 1 .84-.17 1.78 1.78 0 0 1 1.39.53 1.84 1.84 0 0 1 .49 1.31 1.9 1.9 0 0 1-.27 1 4 4 0 0 1-.65.76l-.9.86a5.4 5.4 0 0 0-.63.68 3.05 3.05 0 0 0-.63 1.39 5.4 5.4 0 0 0-.07.86v.76h2.37v-.52a4 4 0 0 1 .06-.74 1.8 1.8 0 0 1 .21-.56 2.7 2.7 0 0 1 .4-.52c.17-.18.39-.38.65-.61s.59-.52.84-.77a5 5 0 0 0 .63-.77 3.4 3.4 0 0 0 .4-.88 4.2 4.2 0 0 0 .14-1.13 3.8 3.8 0 0 0-.38-1.64 3.6 3.6 0 0 0-.89-1.22"
26
+ fill="currentColor"
27
+ />
28
+ </svg>
29
+ )
30
+ }
@@ -0,0 +1,42 @@
1
+ import { type SVGProps, useId } from "react"
2
+
3
+ interface IconProps extends SVGProps<SVGSVGElement> {
4
+ alt?: string
5
+ }
6
+
7
+ export const ScooterIcon = ({ alt, className, ...props }: IconProps) => {
8
+ const id = useId()
9
+ const componentProps = {
10
+ "aria-labelledby": alt ? id : undefined,
11
+ className: `coop-icon ${className ?? ""}`.trim(),
12
+ fill: "none",
13
+ role: alt ? "img" : undefined,
14
+ viewBox: "0 0 32 32",
15
+ ...props,
16
+ }
17
+ return (
18
+ <svg {...componentProps}>
19
+ {alt ? <title id={id}>{alt}</title> : null}
20
+ <g clipPath="url(#a)" clipRule="evenodd" fill="currentColor" fillRule="evenodd">
21
+ <path d="M41.292 18.293a1 1 0 0 1 1.414 0C43.88 19.465 44.6 21.014 44.6 22.8c0 3.452-2.747 6.2-6.2 6.2-3.333 0-6.08-2.622-6.2-5.964a1 1 0 1 1 2-.072 4.19 4.19 0 0 0 4.2 4.036c2.348 0 4.2-1.852 4.2-4.2 0-1.214-.48-2.265-1.307-3.093a1 1 0 0 1 0-1.414M1.1 23a9.28 9.28 0 0 1 9.3-9.3 9.28 9.28 0 0 1 9.3 9.3 1 1 0 0 1-1 1H2.1a1 1 0 0 1-1-1m2.067-1h14.466a7.28 7.28 0 0 0-7.233-6.3A7.28 7.28 0 0 0 3.167 22" />
22
+ <path
23
+ d="M34.754 13.161c3.98-1.476 8.72.438 10.545 4.203a1 1 0 1 1-1.8.872c-1.374-2.834-5.032-4.32-8.052-3.199l-.006.003c-.933.339-1.796.939-2.494 1.724a1 1 0 0 1-1.495-1.328c.9-1.014 2.036-1.813 3.302-2.275M10.4 29.3a6.164 6.164 0 0 1-6.2-6.2h2c0 2.348 1.852 4.2 4.2 4.2s4.2-1.852 4.2-4.2h2c0 3.452-2.749 6.2-6.2 6.2"
24
+ fill="currentColor"
25
+ />
26
+ <path
27
+ d="M21.3 1a1 1 0 0 1 1-1h5.1a1 1 0 0 1 .869.503l7.1 12.4a1 1 0 1 1-1.736.994L26.821 2h-4.52a1 1 0 0 1-1-1M8.585 9.2c3.42-.1 6.556-.012 9.806 1.829 2.713 1.52 4.878 4.116 5.858 7.055a1 1 0 0 1-1.898.632c-.82-2.46-2.654-4.663-4.94-5.943l-.004-.003c-2.745-1.555-5.404-1.67-8.778-1.57H8a1 1 0 1 1 0-2z"
28
+ fill="currentColor"
29
+ />
30
+ <path
31
+ d="M45.33 17.434a1 1 0 0 1-.564 1.297l-12.2 4.8-.05.018c-.966.322-1.976.551-3.116.551H2.1a1 1 0 1 1 0-2h27.3c.851 0 1.634-.167 2.459-.44l12.174-4.79a1 1 0 0 1 1.297.564M0 5.7a1 1 0 0 1 1-1h9.9a1 1 0 1 1 0 2H1a1 1 0 0 1-1-1M1.8 10.2a1 1 0 0 1 1-1h2a1 1 0 1 1 0 2h-2a1 1 0 0 1-1-1M3.2 1a1 1 0 0 1 1-1h7.1a1 1 0 1 1 0 2H4.2a1 1 0 0 1-1-1"
32
+ fill="currentColor"
33
+ />
34
+ </g>
35
+ <defs>
36
+ <clipPath id="a">
37
+ <path d="M0 0h45.4v29.3H0z" fill="currentColor" />
38
+ </clipPath>
39
+ </defs>
40
+ </svg>
41
+ )
42
+ }
@@ -0,0 +1,30 @@
1
+ import { type SVGProps, useId } from "react"
2
+
3
+ interface IconProps extends SVGProps<SVGSVGElement> {
4
+ alt?: string
5
+ }
6
+
7
+ export const SearchIcon = ({ alt, className, ...props }: IconProps) => {
8
+ const id = useId()
9
+ const componentProps = {
10
+ "aria-labelledby": alt ? id : undefined,
11
+ className: `coop-icon ${className ?? ""}`.trim(),
12
+ fill: "none",
13
+ role: alt ? "img" : undefined,
14
+ viewBox: "0 0 32 32",
15
+ ...props,
16
+ }
17
+ return (
18
+ <svg {...componentProps}>
19
+ {alt ? <title id={id}>{alt}</title> : null}
20
+ <path
21
+ d="M13.25 25.49a12.25 12.25 0 1 1 12.24-12.24 12.25 12.25 0 0 1-12.24 12.24m0-22.61a10.37 10.37 0 1 0 10.36 10.37A10.38 10.38 0 0 0 13.25 2.88"
22
+ fill="currentColor"
23
+ />
24
+ <path
25
+ d="M30.06 31a.94.94 0 0 1-.67-.28l-8.81-8.81a.94.94 0 1 1 1.33-1.33l8.81 8.81a.94.94 0 0 1 0 1.33.9.9 0 0 1-.66.28"
26
+ fill="currentColor"
27
+ />
28
+ </svg>
29
+ )
30
+ }
@@ -0,0 +1,26 @@
1
+ import { type SVGProps, useId } from "react"
2
+
3
+ interface IconProps extends SVGProps<SVGSVGElement> {
4
+ alt?: string
5
+ }
6
+
7
+ export const SettingsIcon = ({ alt, className, ...props }: IconProps) => {
8
+ const id = useId()
9
+ const componentProps = {
10
+ "aria-labelledby": alt ? id : undefined,
11
+ className: `coop-icon ${className ?? ""}`.trim(),
12
+ fill: "none",
13
+ role: alt ? "img" : undefined,
14
+ viewBox: "0 0 32 32",
15
+ ...props,
16
+ }
17
+ return (
18
+ <svg {...componentProps}>
19
+ {alt ? <title id={id}>{alt}</title> : null}
20
+ <path
21
+ d="M16 2a14 14 0 0 1 2.13.16v3.57l1.34.47a10.2 10.2 0 0 1 3.27 1.89l1.08.91 1.23-.71 1.86-1.08a14 14 0 0 1 2.14 3.69L27.18 12l-1.18.7.26 1.39a10.6 10.6 0 0 1 0 3.8L26 19.28l1.23.71 1.88 1.09a14.2 14.2 0 0 1-2.14 3.69l-1.86-1.08-1.28-.69-1.07.92a10.6 10.6 0 0 1-3.3 1.9l-1.33.47v3.57A14 14 0 0 1 16 30a14 14 0 0 1-2.13-.16v-3.57l-1.34-.47a10.2 10.2 0 0 1-3.27-1.9L8.18 23 7 23.69l-1.91 1.08A14.1 14.1 0 0 1 3 21.08L4.82 20l1.23-.71-.26-1.39a10.6 10.6 0 0 1 0-3.8l.26-1.39L4.82 12 3 10.92a14.5 14.5 0 0 1 2.08-3.69l1.86 1.08L8.16 9l1.08-.9a10.6 10.6 0 0 1 3.3-1.9l1.33-.47V2.16A14 14 0 0 1 16 2m0 21a7 7 0 1 0-7-7 7 7 0 0 0 7 7m0-23a16 16 0 0 0-3.53.39.76.76 0 0 0-.6.75v3.18a12.7 12.7 0 0 0-3.93 2.26L5.2 5a.75.75 0 0 0-.38-.1.77.77 0 0 0-.57.25 15.9 15.9 0 0 0-3.53 6.1.78.78 0 0 0 .35.91l2.75 1.59a12.3 12.3 0 0 0 0 4.52l-2.75 1.58a.79.79 0 0 0-.35.9 16 16 0 0 0 3.53 6.11.8.8 0 0 0 .57.25.7.7 0 0 0 .38-.11L8 25.42a12.3 12.3 0 0 0 3.92 2.26v3.18a.77.77 0 0 0 .61.75A16.2 16.2 0 0 0 16 32a16 16 0 0 0 3.53-.39.76.76 0 0 0 .6-.75v-3.18a12.5 12.5 0 0 0 3.92-2.26L26.8 27a.79.79 0 0 0 1-.15 16 16 0 0 0 3.53-6.11.8.8 0 0 0-.36-.9l-2.75-1.59a12.8 12.8 0 0 0 0-4.53l2.75-1.59a.78.78 0 0 0 .35-.9 16.1 16.1 0 0 0-3.53-6.1.76.76 0 0 0-.57-.26.73.73 0 0 0-.42.13l-2.75 1.57a12.3 12.3 0 0 0-3.92-2.26V1.14a.77.77 0 0 0-.61-.75A16.2 16.2 0 0 0 16 0m0 21a5 5 0 1 1 5-5 5 5 0 0 1-5 5"
22
+ fill="currentColor"
23
+ />
24
+ </svg>
25
+ )
26
+ }
@@ -0,0 +1,30 @@
1
+ import { type SVGProps, useId } from "react"
2
+
3
+ interface IconProps extends SVGProps<SVGSVGElement> {
4
+ alt?: string
5
+ }
6
+
7
+ export const TickAltIcon = ({ alt, className, ...props }: IconProps) => {
8
+ const id = useId()
9
+ const componentProps = {
10
+ "aria-labelledby": alt ? id : undefined,
11
+ className: `coop-icon ${className ?? ""}`.trim(),
12
+ fill: "none",
13
+ role: alt ? "img" : undefined,
14
+ viewBox: "0 0 32 32",
15
+ ...props,
16
+ }
17
+ return (
18
+ <svg {...componentProps}>
19
+ {alt ? <title id={id}>{alt}</title> : null}
20
+ <path
21
+ d="M12.7 22a1 1 0 0 1-.71-.29L8.3 18a1 1 0 0 1 0-1.42 1 1 0 0 1 1.41 0l3 3 9.41-9.38a1 1 0 0 1 1.42 0 1 1 0 0 1 0 1.41L13.4 21.69a1 1 0 0 1-.7.31"
22
+ fill="currentColor"
23
+ />
24
+ <path
25
+ 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"
26
+ fill="currentColor"
27
+ />
28
+ </svg>
29
+ )
30
+ }
@@ -0,0 +1,26 @@
1
+ import { type SVGProps, useId } from "react"
2
+
3
+ interface IconProps extends SVGProps<SVGSVGElement> {
4
+ alt?: string
5
+ }
6
+
7
+ export const TickIcon = ({ alt, className, ...props }: IconProps) => {
8
+ const id = useId()
9
+ const componentProps = {
10
+ "aria-labelledby": alt ? id : undefined,
11
+ className: `coop-icon ${className ?? ""}`.trim(),
12
+ fill: "none",
13
+ role: alt ? "img" : undefined,
14
+ viewBox: "0 0 32 32",
15
+ ...props,
16
+ }
17
+ return (
18
+ <svg {...componentProps}>
19
+ {alt ? <title id={id}>{alt}</title> : null}
20
+ <path
21
+ d="M10.41 26a1 1 0 0 1-.71-.3l-6.42-6.59a1 1 0 0 1 1.44-1.39l5.69 5.85L27.28 6.3a1 1 0 1 1 1.44 1.4l-17.59 18a1 1 0 0 1-.72.3"
22
+ fill="currentColor"
23
+ />
24
+ </svg>
25
+ )
26
+ }
@@ -0,0 +1,26 @@
1
+ import { type SVGProps, useId } from "react"
2
+
3
+ interface IconProps extends SVGProps<SVGSVGElement> {
4
+ alt?: string
5
+ }
6
+
7
+ export const VanIcon = ({ alt, className, ...props }: IconProps) => {
8
+ const id = useId()
9
+ const componentProps = {
10
+ "aria-labelledby": alt ? id : undefined,
11
+ className: `coop-icon ${className ?? ""}`.trim(),
12
+ fill: "none",
13
+ role: alt ? "img" : undefined,
14
+ viewBox: "0 0 32 32",
15
+ ...props,
16
+ }
17
+ return (
18
+ <svg {...componentProps}>
19
+ {alt ? <title id={id}>{alt}</title> : null}
20
+ <path
21
+ d="M31.05 3H9.8a1 1 0 0 0-1 1v.2H3.06a1 1 0 0 0-1 .86L.89 12.64a1 1 0 0 0-.89 1v10a1 1 0 0 0 1 1h3a5 5 0 0 0 9.9 0H18a5 5 0 0 0 9.89 0h3.21a1 1 0 0 0 .72-.3 1 1 0 0 0 .18-.72V4a1 1 0 0 0-.95-1M3.91 6.24H8.8v6.38H2.93ZM8.92 27A3 3 0 0 1 6 24.71a2.9 2.9 0 0 1-.12-.83 3.1 3.1 0 0 1 .25-1.22 3 3 0 0 1 5.53 0 3.3 3.3 0 0 1 .24 1.22 3.3 3.3 0 0 1-.11.83A3 3 0 0 1 8.92 27M23 27a3 3 0 0 1-2.89-2.24 2.9 2.9 0 0 1-.12-.83 3.1 3.1 0 0 1 .25-1.22 3 3 0 0 1 5.53 0 3.3 3.3 0 0 1 .23 1.17 3.3 3.3 0 0 1-.11.83A3 3 0 0 1 23 27m4.87-4.29a5 5 0 0 0-9.74 0H13.8a5 5 0 0 0-9.75 0H2v-8h7.8a1 1 0 0 0 1-1V5.05H30v17.61Z"
22
+ fill="currentColor"
23
+ />
24
+ </svg>
25
+ )
26
+ }
@@ -0,0 +1,30 @@
1
+ import { type SVGProps, useId } from "react"
2
+
3
+ interface IconProps extends SVGProps<SVGSVGElement> {
4
+ alt?: string
5
+ }
6
+
7
+ export const WarningIcon = ({ alt, className, ...props }: IconProps) => {
8
+ const id = useId()
9
+ const componentProps = {
10
+ "aria-labelledby": alt ? id : undefined,
11
+ className: `coop-icon ${className ?? ""}`.trim(),
12
+ fill: "none",
13
+ role: alt ? "img" : undefined,
14
+ viewBox: "0 0 32 32",
15
+ ...props,
16
+ }
17
+ return (
18
+ <svg {...componentProps}>
19
+ {alt ? <title id={id}>{alt}</title> : null}
20
+ <path
21
+ d="M2.35 28.08 16.06 4.46l13.71 23.62Zm29.32-.7L17.56 3.07A1.73 1.73 0 0 0 16.06 2a1.94 1.94 0 0 0-1.5 1.1L.35 27.38C-.45 28.77.15 30 1.85 30h28.32a1.6 1.6 0 0 0 1.5-2.62"
22
+ fill="currentColor"
23
+ />
24
+ <path
25
+ d="M14.52 24.19A1.44 1.44 0 0 1 15 23.1a1.54 1.54 0 0 1 1.13-.46 1.63 1.63 0 0 1 1.12.44 1.39 1.39 0 0 1 .48 1.07 1.48 1.48 0 0 1-.47 1.1 1.62 1.62 0 0 1-1.74.34 1.6 1.6 0 0 1-.51-.32 1.3 1.3 0 0 1-.35-.48 1.3 1.3 0 0 1-.14-.6m2.8-3h-2.4v-9.71h2.4Z"
26
+ fill="currentColor"
27
+ />
28
+ </svg>
29
+ )
30
+ }
@@ -0,0 +1,38 @@
1
+ import { type SVGProps, useId } from "react"
2
+
3
+ interface IconProps extends SVGProps<SVGSVGElement> {
4
+ alt?: string
5
+ }
6
+
7
+ export const WriteIcon = ({ alt, className, ...props }: IconProps) => {
8
+ const id = useId()
9
+ const componentProps = {
10
+ "aria-labelledby": alt ? id : undefined,
11
+ className: `coop-icon ${className ?? ""}`.trim(),
12
+ fill: "none",
13
+ role: alt ? "img" : undefined,
14
+ viewBox: "0 0 32 32",
15
+ ...props,
16
+ }
17
+ return (
18
+ <svg {...componentProps}>
19
+ {alt ? <title id={id}>{alt}</title> : null}
20
+ <path
21
+ d="M19.67 10.13 17.9 11.9H7a1 1 0 0 1 0-2h12a1 1 0 0 1 .67.23M14.9 14.9l-2 2H7a1 1 0 0 1 0-2ZM20 15.9a1 1 0 0 1-1 1h-1.87l2-2a1 1 0 0 1 .82.59.85.85 0 0 1 .05.41M19 21.9H7a1 1 0 0 1 0-2h12a1 1 0 1 1 0 2"
22
+ fill="currentColor"
23
+ />
24
+ <path
25
+ d="M24.08 10v20h-22V6h21.73l1.54-1.54a1.9 1.9 0 0 0-1-.44H2.07a2 2 0 0 0-2 2V30a2 2 0 0 0 2 2h22a2 2 0 0 0 2-2V8Z"
26
+ fill="currentColor"
27
+ />
28
+ <path
29
+ d="M30.62 3.41 28.5 1.29a1 1 0 0 0-1.42 0L22.38 6l-3.9 3.9-5 5-1.33 1.33a1 1 0 0 0-.27.48v.19l-.6 2.57a.8.8 0 0 0 0 .43 1 1 0 0 0 1.19.77l2.74-.67a.64.64 0 0 0 .29-.13.6.6 0 0 0 .19-.14l2.85-2.86 1.4-1.39L30.62 4.82a1 1 0 0 0 0-1.41M15 19.06l-2.75.63.62-2.75 6.82-6.81L23.81 6l1.54-1.54L27.79 2l2.13 2.12Z"
30
+ fill="currentColor"
31
+ />
32
+ <path
33
+ d="M31.33 2.7 29.21.58a2.06 2.06 0 0 0-2.83 0L11.44 15.52a2.1 2.1 0 0 0-.54 1l-.09.41-.54 2.34a2.18 2.18 0 0 0 .54 1.87 2 2 0 0 0 1.4.58 1.8 1.8 0 0 0 .46-.05l2.75-.67a2.1 2.1 0 0 0 1-.54L31.33 5.53a2 2 0 0 0 0-2.83M15 19.06l-2.75.63.62-2.75 6.82-6.81L23.81 6l1.54-1.54L27.79 2l2.13 2.12Z"
34
+ fill="currentColor"
35
+ />
36
+ </svg>
37
+ )
38
+ }
@@ -1,36 +1,39 @@
1
- /* eslint-disable react-refresh/only-export-components */
2
-
3
- /* DO NOT EDIT THIS FILE DIRECTLY */
4
- /* If you need to make changes, edit template.tsx */
5
-
6
- import { type SVGProps, useId } from "react"
7
-
8
- export interface IconProps extends SVGProps<SVGSVGElement> {
9
- /** **(Optional)** Alt text for the Icon. Will be rendered in a title tag in the SVG. */
10
- alt?: string
11
- /** **(Optional)** Additional class names to forward to the Icon. */
12
- className?: string
13
- /** The name of the icon to render. See the readme for how to add new icons. */
14
- icon?: IconName
15
- }
16
-
17
- export const Icon = ({ alt, className = "", icon, ...props }: IconProps) => {
18
- const id = useId()
19
-
20
- const componentProps = {
21
- className: `coop-icon ${className}`.trim(),
22
- ...props,
23
- }
24
-
25
- return (
26
- <svg aria-labelledby={alt ? id : undefined} role={alt ? "img" : undefined} {...componentProps}>
27
- {alt ? <title id={id}>{alt}</title> : null}
28
- <use href={`#${icon}`} />
29
- </svg>
30
- )
31
- }
32
-
33
- export default Icon
34
-
35
- export const iconNames = ["arrow-right", "chevron", "search"] as const
36
- export type IconName = (typeof iconNames)[number]
1
+ export { AddIcon } from "./AddIcon"
2
+ export { ArrowDownIcon } from "./ArrowDownIcon"
3
+ export { ArrowLeftIcon } from "./ArrowLeftIcon"
4
+ export { ArrowRightIcon } from "./ArrowRightIcon"
5
+ export { ArrowUpIcon } from "./ArrowUpIcon"
6
+ export { AvatarAltIcon } from "./AvatarAltIcon"
7
+ export { AvatarIcon } from "./AvatarIcon"
8
+ export { BasketIcon } from "./BasketIcon"
9
+ export { CalendarIcon } from "./CalendarIcon"
10
+ export { ChevronDownIcon } from "./ChevronDownIcon"
11
+ export { ChevronLeftIcon } from "./ChevronLeftIcon"
12
+ export { ChevronRightIcon } from "./ChevronRightIcon"
13
+ export { ChevronUpIcon } from "./ChevronUpIcon"
14
+ export { ClockIcon } from "./ClockIcon"
15
+ export { CloseAltIcon } from "./CloseAltIcon"
16
+ export { CloseIcon } from "./CloseIcon"
17
+ export { CoopCardIcon } from "./CoopCardIcon"
18
+ export { CoopIcon } from "./CoopIcon"
19
+ export { CoopLocationIcon } from "./CoopLocationIcon"
20
+ export { DownloadIcon } from "./DownloadIcon"
21
+ export { HomeIcon } from "./HomeIcon"
22
+ export { InformationIcon } from "./InformationIcon"
23
+ export { LocationIcon } from "./LocationIcon"
24
+ export { MailIcon } from "./MailIcon"
25
+ export { MenuIcon } from "./MenuIcon"
26
+ export { MessageIcon } from "./MessageIcon"
27
+ export { MinusIcon } from "./MinusIcon"
28
+ export { OpenNewIcon } from "./OpenNewIcon"
29
+ export { PencilIcon } from "./PencilIcon"
30
+ export { PhoneIcon } from "./PhoneIcon"
31
+ export { QuestionIcon } from "./QuestionIcon"
32
+ export { ScooterIcon } from "./ScooterIcon"
33
+ export { SearchIcon } from "./SearchIcon"
34
+ export { SettingsIcon } from "./SettingsIcon"
35
+ export { TickAltIcon } from "./TickAltIcon"
36
+ export { TickIcon } from "./TickIcon"
37
+ export { VanIcon } from "./VanIcon"
38
+ export { WarningIcon } from "./WarningIcon"
39
+ export { WriteIcon } from "./WriteIcon"
@@ -1,27 +1,6 @@
1
- import { JSX } from "react"
2
- export const RootSVG = (): JSX.Element => {
1
+ export const RootSVG = () => {
3
2
  return (
4
3
  <svg height="0" width="0" xmlns="http://www.w3.org/2000/svg">
5
- <symbol fill="currentColor" id="arrow-right" viewBox="0 0 22 20">
6
- <path
7
- clipRule="evenodd"
8
- d="M11.127 1.65a.9.9 0 0 1 1.246-1.3l8.812 8.46a1.65 1.65 0 0 1 0 2.38l-8.812 8.46a.9.9 0 0 1-1.246-1.3l7.76-7.45H1.25a.9.9 0 1 1 0-1.8h17.638z"
9
- fill="currentColor"
10
- fillRule="evenodd"
11
- />
12
- </symbol>
13
- <symbol id="chevron" viewBox="0 0 16 29">
14
- <path d="M2 28.1a1.6 1.6 0 0 1-1.2-2.7l11-10.9-11-11a1.6 1.6 0 1 1 2.2-2l12 12a1.6 1.6 0 0 1 0 2.2l-12 12c-.3.4-.7.5-1 .5z" />
15
- </symbol>
16
- <symbol fill="currentColor" id="search" viewBox="0 0 24 24">
17
- <path
18
- clipRule="evenodd"
19
- d="M4.65 10.5a5.85 5.85 0 1 1 11.7 0 5.85 5.85 0 0 1-11.7 0m5.85-7.65a7.65 7.65 0 1 0 4.736 13.658l4.378 4.378a.9.9 0 1 0 1.273-1.273l-4.378-4.378A7.65 7.65 0 0 0 10.5 2.85"
20
- fill="currentColor"
21
- fillRule="evenodd"
22
- />
23
- </symbol>
24
-
25
4
  <defs>
26
5
  <clipPath clipPathUnits="objectBoundingBox" id="squircle">
27
6
  <path d="M0,0.5 C0,0.165,0.165,0,0.5,0 S1,0.165,1,0.5 S0.835,1,0.5,1 S0,0.835,0,0.5"></path>
@@ -30,4 +9,5 @@ export const RootSVG = (): JSX.Element => {
30
9
  </svg>
31
10
  )
32
11
  }
12
+
33
13
  export default RootSVG
@@ -1,11 +0,0 @@
1
- import { type SVGProps } from "react";
2
- export interface IconProps extends SVGProps<SVGSVGElement> {
3
- /** **(Optional)** Alt text for the Icon. Will be rendered in a title tag in the SVG. */
4
- alt?: string;
5
- /** **(Optional)** Additional class names to forward to the Icon. */
6
- className?: string;
7
- /** The name of the icon to render. See the readme for how to add new icons. */
8
- icon?: IconName;
9
- }
10
- export declare const Icon: ({ alt, className, icon, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
11
- export default Icon;
@@ -1,29 +0,0 @@
1
- import { type SVGProps, useId } from "react"
2
-
3
- export interface IconProps extends SVGProps<SVGSVGElement> {
4
- /** **(Optional)** Alt text for the Icon. Will be rendered in a title tag in the SVG. */
5
- alt?: string
6
- /** **(Optional)** Additional class names to forward to the Icon. */
7
- className?: string
8
- /** The name of the icon to render. See the readme for how to add new icons. */
9
- ///@ts-expect-error IconName does not exist yet
10
- icon?: IconName
11
- }
12
-
13
- export const Icon = ({ alt, className = "", icon, ...props }: IconProps) => {
14
- const id = useId()
15
-
16
- const componentProps = {
17
- className: `coop-icon ${className}`.trim(),
18
- ...props,
19
- }
20
-
21
- return (
22
- <svg aria-labelledby={alt ? id : undefined} role={alt ? "img" : undefined} {...componentProps}>
23
- {alt ? <title id={id}>{alt}</title> : null}
24
- <use href={`#${icon}`} />
25
- </svg>
26
- )
27
- }
28
-
29
- export default Icon