@coopdigital/react 0.46.0 → 0.48.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 (198) hide show
  1. package/dist/components/AlertBanner/AlertBanner.d.ts +16 -4
  2. package/dist/components/AlertBanner/AlertBanner.js +8 -3
  3. package/dist/components/Author/Author.d.ts +4 -2
  4. package/dist/components/Author/Author.js +2 -2
  5. package/dist/components/Button/Button.d.ts +1 -1
  6. package/dist/components/Button/Button.js +1 -2
  7. package/dist/components/Card/Card.d.ts +4 -2
  8. package/dist/components/Card/Card.js +2 -2
  9. package/dist/components/Checkbox/Checkbox.d.ts +4 -2
  10. package/dist/components/Checkbox/Checkbox.js +3 -3
  11. package/dist/components/Expandable/Expandable.d.ts +4 -2
  12. package/dist/components/Expandable/Expandable.js +2 -2
  13. package/dist/components/Field/Field.d.ts +4 -2
  14. package/dist/components/Field/Field.js +4 -4
  15. package/dist/components/FieldMarkers/Error.d.ts +4 -2
  16. package/dist/components/FieldMarkers/Error.js +2 -2
  17. package/dist/components/FieldMarkers/Hint.d.ts +5 -3
  18. package/dist/components/FieldMarkers/Hint.js +2 -2
  19. package/dist/components/FieldMarkers/Label.d.ts +4 -2
  20. package/dist/components/FieldMarkers/Label.js +6 -2
  21. package/dist/components/FieldMarkers/Legend.d.ts +4 -2
  22. package/dist/components/FieldMarkers/Legend.js +2 -2
  23. package/dist/components/Fieldset/Fieldset.d.ts +4 -2
  24. package/dist/components/Fieldset/Fieldset.js +2 -4
  25. package/dist/components/Flourish/Flourish.d.ts +4 -2
  26. package/dist/components/Flourish/Flourish.js +2 -2
  27. package/dist/components/Icon/AddIcon.d.ts +1 -1
  28. package/dist/components/Icon/AddIcon.js +6 -5
  29. package/dist/components/Icon/ArrowDownIcon.d.ts +1 -1
  30. package/dist/components/Icon/ArrowDownIcon.js +6 -5
  31. package/dist/components/Icon/ArrowLeftIcon.d.ts +1 -1
  32. package/dist/components/Icon/ArrowLeftIcon.js +6 -5
  33. package/dist/components/Icon/ArrowRightIcon.d.ts +1 -1
  34. package/dist/components/Icon/ArrowRightIcon.js +6 -5
  35. package/dist/components/Icon/ArrowUpIcon.d.ts +1 -1
  36. package/dist/components/Icon/ArrowUpIcon.js +6 -5
  37. package/dist/components/Icon/AvatarAltIcon.d.ts +1 -1
  38. package/dist/components/Icon/AvatarAltIcon.js +6 -5
  39. package/dist/components/Icon/AvatarIcon.d.ts +1 -1
  40. package/dist/components/Icon/AvatarIcon.js +6 -5
  41. package/dist/components/Icon/BasketIcon.d.ts +1 -1
  42. package/dist/components/Icon/BasketIcon.js +6 -5
  43. package/dist/components/Icon/CalendarIcon.d.ts +1 -1
  44. package/dist/components/Icon/CalendarIcon.js +6 -5
  45. package/dist/components/Icon/ChevronDownIcon.d.ts +1 -1
  46. package/dist/components/Icon/ChevronDownIcon.js +6 -5
  47. package/dist/components/Icon/ChevronLeftIcon.d.ts +1 -1
  48. package/dist/components/Icon/ChevronLeftIcon.js +6 -5
  49. package/dist/components/Icon/ChevronRightIcon.d.ts +1 -1
  50. package/dist/components/Icon/ChevronRightIcon.js +6 -5
  51. package/dist/components/Icon/ChevronUpIcon.d.ts +1 -1
  52. package/dist/components/Icon/ChevronUpIcon.js +6 -5
  53. package/dist/components/Icon/ClockIcon.d.ts +1 -1
  54. package/dist/components/Icon/ClockIcon.js +6 -5
  55. package/dist/components/Icon/CloseAltIcon.d.ts +1 -1
  56. package/dist/components/Icon/CloseAltIcon.js +6 -5
  57. package/dist/components/Icon/CloseIcon.d.ts +1 -1
  58. package/dist/components/Icon/CloseIcon.js +6 -5
  59. package/dist/components/Icon/CoopCardIcon.d.ts +1 -1
  60. package/dist/components/Icon/CoopCardIcon.js +6 -5
  61. package/dist/components/Icon/CoopIcon.d.ts +1 -1
  62. package/dist/components/Icon/CoopIcon.js +6 -5
  63. package/dist/components/Icon/CoopLocationIcon.d.ts +1 -1
  64. package/dist/components/Icon/CoopLocationIcon.js +6 -5
  65. package/dist/components/Icon/DownloadIcon.d.ts +1 -1
  66. package/dist/components/Icon/DownloadIcon.js +6 -5
  67. package/dist/components/Icon/HomeIcon.d.ts +1 -1
  68. package/dist/components/Icon/HomeIcon.js +6 -5
  69. package/dist/components/Icon/InformationIcon.d.ts +1 -1
  70. package/dist/components/Icon/InformationIcon.js +6 -5
  71. package/dist/components/Icon/LoadingIcon.d.ts +1 -1
  72. package/dist/components/Icon/LoadingIcon.js +6 -5
  73. package/dist/components/Icon/LocationIcon.d.ts +1 -1
  74. package/dist/components/Icon/LocationIcon.js +6 -5
  75. package/dist/components/Icon/MailIcon.d.ts +1 -1
  76. package/dist/components/Icon/MailIcon.js +6 -5
  77. package/dist/components/Icon/MenuIcon.d.ts +1 -1
  78. package/dist/components/Icon/MenuIcon.js +6 -5
  79. package/dist/components/Icon/MessageIcon.d.ts +1 -1
  80. package/dist/components/Icon/MessageIcon.js +6 -5
  81. package/dist/components/Icon/MinusIcon.d.ts +1 -1
  82. package/dist/components/Icon/MinusIcon.js +6 -5
  83. package/dist/components/Icon/OpenNewIcon.d.ts +1 -1
  84. package/dist/components/Icon/OpenNewIcon.js +6 -5
  85. package/dist/components/Icon/PencilIcon.d.ts +1 -1
  86. package/dist/components/Icon/PencilIcon.js +6 -5
  87. package/dist/components/Icon/PhoneIcon.d.ts +1 -1
  88. package/dist/components/Icon/PhoneIcon.js +6 -5
  89. package/dist/components/Icon/QuestionIcon.d.ts +1 -1
  90. package/dist/components/Icon/QuestionIcon.js +6 -5
  91. package/dist/components/Icon/ScooterIcon.d.ts +1 -1
  92. package/dist/components/Icon/ScooterIcon.js +6 -5
  93. package/dist/components/Icon/SearchIcon.d.ts +1 -1
  94. package/dist/components/Icon/SearchIcon.js +6 -5
  95. package/dist/components/Icon/SettingsIcon.d.ts +1 -1
  96. package/dist/components/Icon/SettingsIcon.js +6 -5
  97. package/dist/components/Icon/TickAltIcon.d.ts +1 -1
  98. package/dist/components/Icon/TickAltIcon.js +6 -5
  99. package/dist/components/Icon/TickIcon.d.ts +1 -1
  100. package/dist/components/Icon/TickIcon.js +6 -5
  101. package/dist/components/Icon/VanIcon.d.ts +1 -1
  102. package/dist/components/Icon/VanIcon.js +6 -5
  103. package/dist/components/Icon/WarningIcon.d.ts +1 -1
  104. package/dist/components/Icon/WarningIcon.js +6 -5
  105. package/dist/components/Icon/WriteIcon.d.ts +1 -1
  106. package/dist/components/Icon/WriteIcon.js +6 -5
  107. package/dist/components/Image/Image.d.ts +4 -2
  108. package/dist/components/Image/Image.js +2 -2
  109. package/dist/components/Pill/Pill.d.ts +4 -2
  110. package/dist/components/Pill/Pill.js +5 -6
  111. package/dist/components/Radio/Radio.d.ts +5 -3
  112. package/dist/components/Radio/Radio.js +6 -7
  113. package/dist/components/Searchbox/Searchbox.d.ts +4 -2
  114. package/dist/components/Searchbox/Searchbox.js +14 -9
  115. package/dist/components/Select/Select.d.ts +46 -0
  116. package/dist/components/Select/Select.js +29 -0
  117. package/dist/components/Select/index.d.ts +4 -0
  118. package/dist/components/Signpost/Signpost.d.ts +6 -4
  119. package/dist/components/Signpost/Signpost.js +3 -6
  120. package/dist/components/SkipNav/SkipNav.d.ts +4 -2
  121. package/dist/components/SkipNav/SkipNav.js +2 -2
  122. package/dist/components/Squircle/Squircle.d.ts +4 -2
  123. package/dist/components/Squircle/Squircle.js +2 -2
  124. package/dist/components/Tag/Tag.d.ts +5 -3
  125. package/dist/components/Tag/Tag.js +3 -6
  126. package/dist/components/TextInput/TextInput.d.ts +4 -2
  127. package/dist/components/TextInput/TextInput.js +3 -3
  128. package/dist/components/Textarea/Textarea.d.ts +4 -2
  129. package/dist/components/Textarea/Textarea.js +5 -6
  130. package/dist/index.d.ts +1 -0
  131. package/dist/index.js +1 -0
  132. package/package.json +10 -10
  133. package/src/components/AlertBanner/AlertBanner.tsx +22 -9
  134. package/src/components/Author/Author.tsx +5 -2
  135. package/src/components/Button/Button.tsx +2 -3
  136. package/src/components/Card/Card.tsx +5 -2
  137. package/src/components/Checkbox/Checkbox.tsx +11 -5
  138. package/src/components/Expandable/Expandable.tsx +10 -3
  139. package/src/components/Field/Field.tsx +7 -5
  140. package/src/components/FieldMarkers/Error.tsx +9 -3
  141. package/src/components/FieldMarkers/Hint.tsx +10 -4
  142. package/src/components/FieldMarkers/Label.tsx +9 -3
  143. package/src/components/FieldMarkers/Legend.tsx +9 -3
  144. package/src/components/Fieldset/Fieldset.tsx +9 -4
  145. package/src/components/Flourish/Flourish.tsx +5 -2
  146. package/src/components/Icon/AddIcon.tsx +9 -6
  147. package/src/components/Icon/ArrowDownIcon.tsx +9 -6
  148. package/src/components/Icon/ArrowLeftIcon.tsx +9 -6
  149. package/src/components/Icon/ArrowRightIcon.tsx +9 -6
  150. package/src/components/Icon/ArrowUpIcon.tsx +9 -6
  151. package/src/components/Icon/AvatarAltIcon.tsx +9 -6
  152. package/src/components/Icon/AvatarIcon.tsx +9 -6
  153. package/src/components/Icon/BasketIcon.tsx +9 -6
  154. package/src/components/Icon/CalendarIcon.tsx +9 -6
  155. package/src/components/Icon/ChevronDownIcon.tsx +9 -6
  156. package/src/components/Icon/ChevronLeftIcon.tsx +9 -6
  157. package/src/components/Icon/ChevronRightIcon.tsx +9 -6
  158. package/src/components/Icon/ChevronUpIcon.tsx +9 -6
  159. package/src/components/Icon/ClockIcon.tsx +9 -6
  160. package/src/components/Icon/CloseAltIcon.tsx +9 -6
  161. package/src/components/Icon/CloseIcon.tsx +9 -6
  162. package/src/components/Icon/CoopCardIcon.tsx +9 -6
  163. package/src/components/Icon/CoopIcon.tsx +9 -6
  164. package/src/components/Icon/CoopLocationIcon.tsx +9 -6
  165. package/src/components/Icon/DownloadIcon.tsx +9 -6
  166. package/src/components/Icon/HomeIcon.tsx +9 -6
  167. package/src/components/Icon/InformationIcon.tsx +9 -6
  168. package/src/components/Icon/LoadingIcon.tsx +9 -6
  169. package/src/components/Icon/LocationIcon.tsx +9 -6
  170. package/src/components/Icon/MailIcon.tsx +9 -6
  171. package/src/components/Icon/MenuIcon.tsx +9 -6
  172. package/src/components/Icon/MessageIcon.tsx +9 -6
  173. package/src/components/Icon/MinusIcon.tsx +9 -6
  174. package/src/components/Icon/OpenNewIcon.tsx +9 -6
  175. package/src/components/Icon/PencilIcon.tsx +9 -6
  176. package/src/components/Icon/PhoneIcon.tsx +9 -6
  177. package/src/components/Icon/QuestionIcon.tsx +9 -6
  178. package/src/components/Icon/ScooterIcon.tsx +9 -6
  179. package/src/components/Icon/SearchIcon.tsx +9 -6
  180. package/src/components/Icon/SettingsIcon.tsx +9 -6
  181. package/src/components/Icon/TickAltIcon.tsx +9 -6
  182. package/src/components/Icon/TickIcon.tsx +9 -6
  183. package/src/components/Icon/VanIcon.tsx +9 -6
  184. package/src/components/Icon/WarningIcon.tsx +9 -6
  185. package/src/components/Icon/WriteIcon.tsx +9 -6
  186. package/src/components/Image/Image.tsx +5 -2
  187. package/src/components/Pill/Pill.tsx +8 -7
  188. package/src/components/Radio/Radio.tsx +11 -8
  189. package/src/components/Searchbox/Searchbox.tsx +26 -21
  190. package/src/components/Select/Select.tsx +97 -0
  191. package/src/components/Select/index.ts +5 -0
  192. package/src/components/Signpost/Signpost.tsx +8 -8
  193. package/src/components/SkipNav/SkipNav.tsx +5 -2
  194. package/src/components/Squircle/Squircle.tsx +5 -2
  195. package/src/components/Tag/Tag.tsx +9 -8
  196. package/src/components/TextInput/TextInput.tsx +10 -5
  197. package/src/components/Textarea/Textarea.tsx +9 -7
  198. package/src/index.ts +1 -0
@@ -2,5 +2,5 @@ import { type SVGProps } from "react";
2
2
  interface IconProps extends SVGProps<SVGSVGElement> {
3
3
  alt?: string;
4
4
  }
5
- export declare const ArrowRightIcon: ({ alt, className, fill, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const ArrowRightIcon: ({ alt, className, fill, id, ref, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
6
6
  export {};
@@ -1,19 +1,20 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import clsx from 'clsx';
3
- import { useId } from 'react';
3
+ import { useId } from '../../hooks/useId.js';
4
4
 
5
- const ArrowRightIcon = ({ alt, className, fill, ...props }) => {
6
- const id = useId();
5
+ const ArrowRightIcon = ({ alt, className, fill, id, ref, ...props }) => {
6
+ const uid = useId(id);
7
7
  const componentProps = {
8
- "aria-labelledby": alt ? id : undefined,
8
+ "aria-labelledby": alt ? uid + "-title" : undefined,
9
9
  className: clsx("coop-icon", className),
10
10
  "data-icon": "arrow-right",
11
11
  fill: fill !== null && fill !== void 0 ? fill : "none",
12
+ id: uid,
12
13
  role: alt ? "img" : undefined,
13
14
  viewBox: "0 0 32 32",
14
15
  ...props,
15
16
  };
16
- return (jsxs("svg", { ...componentProps, children: [alt ? jsx("title", { id: id, children: alt }) : null, jsx("path", { d: "M28.7 15H3a1 1 0 0 0 0 2h25.7a1 1 0 0 0 0-2", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { d: "M17 3a1 1 0 0 0-.7.3 1 1 0 0 0 0 1.4l10.6 10.6a1 1 0 0 1 0 1.4L16.3 27.3a1 1 0 0 0 0 1.4 1 1 0 0 0 1.4 0l12-12a1 1 0 0 0 0-1.4l-12-12A1 1 0 0 0 17 3", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
+ return (jsxs("svg", { ...componentProps, ref: ref, children: [alt ? jsx("title", { id: uid + "-title", children: alt }) : null, jsx("path", { d: "M28.7 15H3a1 1 0 0 0 0 2h25.7a1 1 0 0 0 0-2", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { d: "M17 3a1 1 0 0 0-.7.3 1 1 0 0 0 0 1.4l10.6 10.6a1 1 0 0 1 0 1.4L16.3 27.3a1 1 0 0 0 0 1.4 1 1 0 0 0 1.4 0l12-12a1 1 0 0 0 0-1.4l-12-12A1 1 0 0 0 17 3", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
18
  };
18
19
 
19
20
  export { ArrowRightIcon };
@@ -2,5 +2,5 @@ import { type SVGProps } from "react";
2
2
  interface IconProps extends SVGProps<SVGSVGElement> {
3
3
  alt?: string;
4
4
  }
5
- export declare const ArrowUpIcon: ({ alt, className, fill, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const ArrowUpIcon: ({ alt, className, fill, id, ref, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
6
6
  export {};
@@ -1,19 +1,20 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import clsx from 'clsx';
3
- import { useId } from 'react';
3
+ import { useId } from '../../hooks/useId.js';
4
4
 
5
- const ArrowUpIcon = ({ alt, className, fill, ...props }) => {
6
- const id = useId();
5
+ const ArrowUpIcon = ({ alt, className, fill, id, ref, ...props }) => {
6
+ const uid = useId(id);
7
7
  const componentProps = {
8
- "aria-labelledby": alt ? id : undefined,
8
+ "aria-labelledby": alt ? uid + "-title" : undefined,
9
9
  className: clsx("coop-icon", className),
10
10
  "data-icon": "arrow-up",
11
11
  fill: fill !== null && fill !== void 0 ? fill : "none",
12
+ id: uid,
12
13
  role: alt ? "img" : undefined,
13
14
  viewBox: "0 0 32 32",
14
15
  ...props,
15
16
  };
16
- return (jsxs("svg", { ...componentProps, children: [alt ? jsx("title", { id: id, children: alt }) : null, jsx("path", { d: "M17 3.34V29a1 1 0 0 1-2 0V3.34a1 1 0 0 1 2 0", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { d: "M29 15a1 1 0 0 1-.29.71 1 1 0 0 1-1.42 0L16 4.42 4.71 15.71a1 1 0 0 1-1.42 0 1 1 0 0 1 0-1.41l12-12a1 1 0 0 1 1.41 0l12 12a1 1 0 0 1 .3.7", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
+ return (jsxs("svg", { ...componentProps, ref: ref, children: [alt ? jsx("title", { id: uid + "-title", children: alt }) : null, jsx("path", { d: "M17 3.34V29a1 1 0 0 1-2 0V3.34a1 1 0 0 1 2 0", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { d: "M29 15a1 1 0 0 1-.29.71 1 1 0 0 1-1.42 0L16 4.42 4.71 15.71a1 1 0 0 1-1.42 0 1 1 0 0 1 0-1.41l12-12a1 1 0 0 1 1.41 0l12 12a1 1 0 0 1 .3.7", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
18
  };
18
19
 
19
20
  export { ArrowUpIcon };
@@ -2,5 +2,5 @@ import { type SVGProps } from "react";
2
2
  interface IconProps extends SVGProps<SVGSVGElement> {
3
3
  alt?: string;
4
4
  }
5
- export declare const AvatarAltIcon: ({ alt, className, fill, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const AvatarAltIcon: ({ alt, className, fill, id, ref, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
6
6
  export {};
@@ -1,19 +1,20 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import clsx from 'clsx';
3
- import { useId } from 'react';
3
+ import { useId } from '../../hooks/useId.js';
4
4
 
5
- const AvatarAltIcon = ({ alt, className, fill, ...props }) => {
6
- const id = useId();
5
+ const AvatarAltIcon = ({ alt, className, fill, id, ref, ...props }) => {
6
+ const uid = useId(id);
7
7
  const componentProps = {
8
- "aria-labelledby": alt ? id : undefined,
8
+ "aria-labelledby": alt ? uid + "-title" : undefined,
9
9
  className: clsx("coop-icon", className),
10
10
  "data-icon": "avatar-alt",
11
11
  fill: fill !== null && fill !== void 0 ? fill : "none",
12
+ id: uid,
12
13
  role: alt ? "img" : undefined,
13
14
  viewBox: "0 0 32 32",
14
15
  ...props,
15
16
  };
16
- return (jsxs("svg", { ...componentProps, children: [alt ? jsx("title", { id: id, children: alt }) : null, jsx("path", { d: "M16 32a16 16 0 1 1 16-16 16 16 0 0 1-16 16m0-30a14 14 0 1 0 14 14A14 14 0 0 0 16 2", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { d: "M16 8a5 5 0 1 1-5 5 5 5 0 0 1 5-5m0-2a7 7 0 1 0 7 7 7 7 0 0 0-7-7", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { d: "M5.64 27.85a.7.7 0 0 1-.19 0 1 1 0 0 1-.79-1.17A10.7 10.7 0 0 1 15.16 18h1.68a10.7 10.7 0 0 1 10.5 8.67 1 1 0 0 1-.79 1.17 1 1 0 0 1-1.17-.84 8.72 8.72 0 0 0-8.54-7h-1.68a8.72 8.72 0 0 0-8.54 7 1 1 0 0 1-.98.85", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
+ return (jsxs("svg", { ...componentProps, ref: ref, children: [alt ? jsx("title", { id: uid + "-title", children: alt }) : null, jsx("path", { d: "M16 32a16 16 0 1 1 16-16 16 16 0 0 1-16 16m0-30a14 14 0 1 0 14 14A14 14 0 0 0 16 2", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { d: "M16 8a5 5 0 1 1-5 5 5 5 0 0 1 5-5m0-2a7 7 0 1 0 7 7 7 7 0 0 0-7-7", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { d: "M5.64 27.85a.7.7 0 0 1-.19 0 1 1 0 0 1-.79-1.17A10.7 10.7 0 0 1 15.16 18h1.68a10.7 10.7 0 0 1 10.5 8.67 1 1 0 0 1-.79 1.17 1 1 0 0 1-1.17-.84 8.72 8.72 0 0 0-8.54-7h-1.68a8.72 8.72 0 0 0-8.54 7 1 1 0 0 1-.98.85", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
18
  };
18
19
 
19
20
  export { AvatarAltIcon };
@@ -2,5 +2,5 @@ import { type SVGProps } from "react";
2
2
  interface IconProps extends SVGProps<SVGSVGElement> {
3
3
  alt?: string;
4
4
  }
5
- export declare const AvatarIcon: ({ alt, className, fill, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const AvatarIcon: ({ alt, className, fill, id, ref, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
6
6
  export {};
@@ -1,19 +1,20 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import clsx from 'clsx';
3
- import { useId } from 'react';
3
+ import { useId } from '../../hooks/useId.js';
4
4
 
5
- const AvatarIcon = ({ alt, className, fill, ...props }) => {
6
- const id = useId();
5
+ const AvatarIcon = ({ alt, className, fill, id, ref, ...props }) => {
6
+ const uid = useId(id);
7
7
  const componentProps = {
8
- "aria-labelledby": alt ? id : undefined,
8
+ "aria-labelledby": alt ? uid + "-title" : undefined,
9
9
  className: clsx("coop-icon", className),
10
10
  "data-icon": "avatar",
11
11
  fill: fill !== null && fill !== void 0 ? fill : "none",
12
+ id: uid,
12
13
  role: alt ? "img" : undefined,
13
14
  viewBox: "0 0 32 32",
14
15
  ...props,
15
16
  };
16
- return (jsxs("svg", { ...componentProps, children: [alt ? jsx("title", { id: id, children: alt }) : null, jsx("path", { d: "M16 31a18.24 18.24 0 0 1-12.64-5.1A1.19 1.19 0 0 1 3 24.86a12.31 12.31 0 0 1 12-10h2a12.31 12.31 0 0 1 12 10 1.19 1.19 0 0 1-.34 1.06A18.24 18.24 0 0 1 16 31M5.42 24.68a15.9 15.9 0 0 0 21.16 0A10 10 0 0 0 17 17.17h-2a10 10 0 0 0-9.58 7.51", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { d: "M15.94 3.33a5.77 5.77 0 1 1-5.72 5.77 5.75 5.75 0 0 1 5.72-5.77m0-2.31a8.08 8.08 0 1 0 8 8.08 8 8 0 0 0-8-8.08", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
+ return (jsxs("svg", { ...componentProps, ref: ref, children: [alt ? jsx("title", { id: uid + "-title", children: alt }) : null, jsx("path", { d: "M16 31a18.24 18.24 0 0 1-12.64-5.1A1.19 1.19 0 0 1 3 24.86a12.31 12.31 0 0 1 12-10h2a12.31 12.31 0 0 1 12 10 1.19 1.19 0 0 1-.34 1.06A18.24 18.24 0 0 1 16 31M5.42 24.68a15.9 15.9 0 0 0 21.16 0A10 10 0 0 0 17 17.17h-2a10 10 0 0 0-9.58 7.51", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { d: "M15.94 3.33a5.77 5.77 0 1 1-5.72 5.77 5.75 5.75 0 0 1 5.72-5.77m0-2.31a8.08 8.08 0 1 0 8 8.08 8 8 0 0 0-8-8.08", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
18
  };
18
19
 
19
20
  export { AvatarIcon };
@@ -2,5 +2,5 @@ import { type SVGProps } from "react";
2
2
  interface IconProps extends SVGProps<SVGSVGElement> {
3
3
  alt?: string;
4
4
  }
5
- export declare const BasketIcon: ({ alt, className, fill, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const BasketIcon: ({ alt, className, fill, id, ref, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
6
6
  export {};
@@ -1,19 +1,20 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import clsx from 'clsx';
3
- import { useId } from 'react';
3
+ import { useId } from '../../hooks/useId.js';
4
4
 
5
- const BasketIcon = ({ alt, className, fill, ...props }) => {
6
- const id = useId();
5
+ const BasketIcon = ({ alt, className, fill, id, ref, ...props }) => {
6
+ const uid = useId(id);
7
7
  const componentProps = {
8
- "aria-labelledby": alt ? id : undefined,
8
+ "aria-labelledby": alt ? uid + "-title" : undefined,
9
9
  className: clsx("coop-icon", className),
10
10
  "data-icon": "basket",
11
11
  fill: fill !== null && fill !== void 0 ? fill : "none",
12
+ id: uid,
12
13
  role: alt ? "img" : undefined,
13
14
  viewBox: "0 0 32 32",
14
15
  ...props,
15
16
  };
16
- return (jsxs("svg", { ...componentProps, children: [alt ? jsx("title", { id: id, children: alt }) : null, jsx("path", { d: "M16.07 26a1 1 0 0 0 1-1v-4.08a1 1 0 1 0-2 0V25a1 1 0 0 0 1 1M21.5 26h.17a1 1 0 0 0 1-.85l.68-4.07a1 1 0 0 0-.82-1.18 1 1 0 0 0-1.16.84l-.67 4.07a1 1 0 0 0 .8 1.19M10.43 26h.17a1 1 0 0 0 .82-1.18l-.68-4.07a1 1 0 0 0-1.15-.84 1 1 0 0 0-.82 1.18l.67 4.07a1 1 0 0 0 .99.84", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { d: "M31 10.7h-3.11l-8.25-8.4a1 1 0 0 0-1.41 0 1 1 0 0 0 0 1.44l6.83 7H6.85l6.8-6.93a1 1 0 0 0 0-1.44 1 1 0 0 0-1.42 0l-8.14 8.25a1 1 0 0 0 0 .08H1a1 1 0 0 0-1 1v5.1a1 1 0 0 0 1 1h1.23l1.88 11.36a1 1 0 0 0 1 .84H27a1 1 0 0 0 1-.84l1.88-11.34H31a1 1 0 0 0 1-1v-5.1a1 1 0 0 0-1-1.02M26.15 28H5.94L4.28 18h23.53ZM30 15.79H2v-3.06h28Z", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
+ return (jsxs("svg", { ...componentProps, ref: ref, children: [alt ? jsx("title", { id: uid + "-title", children: alt }) : null, jsx("path", { d: "M16.07 26a1 1 0 0 0 1-1v-4.08a1 1 0 1 0-2 0V25a1 1 0 0 0 1 1M21.5 26h.17a1 1 0 0 0 1-.85l.68-4.07a1 1 0 0 0-.82-1.18 1 1 0 0 0-1.16.84l-.67 4.07a1 1 0 0 0 .8 1.19M10.43 26h.17a1 1 0 0 0 .82-1.18l-.68-4.07a1 1 0 0 0-1.15-.84 1 1 0 0 0-.82 1.18l.67 4.07a1 1 0 0 0 .99.84", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { d: "M31 10.7h-3.11l-8.25-8.4a1 1 0 0 0-1.41 0 1 1 0 0 0 0 1.44l6.83 7H6.85l6.8-6.93a1 1 0 0 0 0-1.44 1 1 0 0 0-1.42 0l-8.14 8.25a1 1 0 0 0 0 .08H1a1 1 0 0 0-1 1v5.1a1 1 0 0 0 1 1h1.23l1.88 11.36a1 1 0 0 0 1 .84H27a1 1 0 0 0 1-.84l1.88-11.34H31a1 1 0 0 0 1-1v-5.1a1 1 0 0 0-1-1.02M26.15 28H5.94L4.28 18h23.53ZM30 15.79H2v-3.06h28Z", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
18
  };
18
19
 
19
20
  export { BasketIcon };
@@ -2,5 +2,5 @@ import { type SVGProps } from "react";
2
2
  interface IconProps extends SVGProps<SVGSVGElement> {
3
3
  alt?: string;
4
4
  }
5
- export declare const CalendarIcon: ({ alt, className, fill, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const CalendarIcon: ({ alt, className, fill, id, ref, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
6
6
  export {};
@@ -1,19 +1,20 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import clsx from 'clsx';
3
- import { useId } from 'react';
3
+ import { useId } from '../../hooks/useId.js';
4
4
 
5
- const CalendarIcon = ({ alt, className, fill, ...props }) => {
6
- const id = useId();
5
+ const CalendarIcon = ({ alt, className, fill, id, ref, ...props }) => {
6
+ const uid = useId(id);
7
7
  const componentProps = {
8
- "aria-labelledby": alt ? id : undefined,
8
+ "aria-labelledby": alt ? uid + "-title" : undefined,
9
9
  className: clsx("coop-icon", className),
10
10
  "data-icon": "calendar",
11
11
  fill: fill !== null && fill !== void 0 ? fill : "none",
12
+ id: uid,
12
13
  role: alt ? "img" : undefined,
13
14
  viewBox: "0 0 32 32",
14
15
  ...props,
15
16
  };
16
- return (jsxs("svg", { ...componentProps, children: [alt ? jsx("title", { id: id, children: alt }) : null, jsx("path", { d: "M31 2h-4V1a1 1 0 0 0-2 0v1H7V1a1 1 0 0 0-2 0v1H1a1 1 0 0 0-1 1v28a1 1 0 0 0 1 1h30a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1m-1 28H2V10h28Zm0-22H2V4h3v1a1 1 0 0 0 2 0V4h18v1a1 1 0 0 0 2 0V4h3Z", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { d: "M6 23v2a1 1 0 0 0 2 0v-1h7v1a1 1 0 0 0 2 0v-1h7v1a1 1 0 0 0 2 0V15a1 1 0 0 0-2 0v1h-7v-1a1 1 0 0 0-2 0v1H8v-1a1 1 0 0 0-2 0v8m18-1h-7v-4h7Zm-9-4v4H8v-4Z", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
+ return (jsxs("svg", { ...componentProps, ref: ref, children: [alt ? jsx("title", { id: uid + "-title", children: alt }) : null, jsx("path", { d: "M31 2h-4V1a1 1 0 0 0-2 0v1H7V1a1 1 0 0 0-2 0v1H1a1 1 0 0 0-1 1v28a1 1 0 0 0 1 1h30a1 1 0 0 0 1-1V3a1 1 0 0 0-1-1m-1 28H2V10h28Zm0-22H2V4h3v1a1 1 0 0 0 2 0V4h18v1a1 1 0 0 0 2 0V4h3Z", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { d: "M6 23v2a1 1 0 0 0 2 0v-1h7v1a1 1 0 0 0 2 0v-1h7v1a1 1 0 0 0 2 0V15a1 1 0 0 0-2 0v1h-7v-1a1 1 0 0 0-2 0v1H8v-1a1 1 0 0 0-2 0v8m18-1h-7v-4h7Zm-9-4v4H8v-4Z", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
18
  };
18
19
 
19
20
  export { CalendarIcon };
@@ -2,5 +2,5 @@ import { type SVGProps } from "react";
2
2
  interface IconProps extends SVGProps<SVGSVGElement> {
3
3
  alt?: string;
4
4
  }
5
- export declare const ChevronDownIcon: ({ alt, className, fill, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const ChevronDownIcon: ({ alt, className, fill, id, ref, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
6
6
  export {};
@@ -1,19 +1,20 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import clsx from 'clsx';
3
- import { useId } from 'react';
3
+ import { useId } from '../../hooks/useId.js';
4
4
 
5
- const ChevronDownIcon = ({ alt, className, fill, ...props }) => {
6
- const id = useId();
5
+ const ChevronDownIcon = ({ alt, className, fill, id, ref, ...props }) => {
6
+ const uid = useId(id);
7
7
  const componentProps = {
8
- "aria-labelledby": alt ? id : undefined,
8
+ "aria-labelledby": alt ? uid + "-title" : undefined,
9
9
  className: clsx("coop-icon", className),
10
10
  "data-icon": "chevron-down",
11
11
  fill: fill !== null && fill !== void 0 ? fill : "none",
12
+ id: uid,
12
13
  role: alt ? "img" : undefined,
13
14
  viewBox: "0 0 32 32",
14
15
  ...props,
15
16
  };
16
- return (jsxs("svg", { ...componentProps, children: [alt ? jsx("title", { id: id, children: alt }) : null, jsx("path", { d: "M31 9a1 1 0 0 0-.29-.71 1 1 0 0 0-1.42 0L16 21.59 2.71 8.3a1 1 0 0 0-1.42 0 1 1 0 0 0 0 1.41l14 14a1 1 0 0 0 1.41 0l14-14A1 1 0 0 0 31 9", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
+ return (jsxs("svg", { ...componentProps, ref: ref, children: [alt ? jsx("title", { id: uid + "-title", children: alt }) : null, jsx("path", { d: "M31 9a1 1 0 0 0-.29-.71 1 1 0 0 0-1.42 0L16 21.59 2.71 8.3a1 1 0 0 0-1.42 0 1 1 0 0 0 0 1.41l14 14a1 1 0 0 0 1.41 0l14-14A1 1 0 0 0 31 9", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
18
  };
18
19
 
19
20
  export { ChevronDownIcon };
@@ -2,5 +2,5 @@ import { type SVGProps } from "react";
2
2
  interface IconProps extends SVGProps<SVGSVGElement> {
3
3
  alt?: string;
4
4
  }
5
- export declare const ChevronLeftIcon: ({ alt, className, fill, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const ChevronLeftIcon: ({ alt, className, fill, id, ref, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
6
6
  export {};
@@ -1,19 +1,20 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import clsx from 'clsx';
3
- import { useId } from 'react';
3
+ import { useId } from '../../hooks/useId.js';
4
4
 
5
- const ChevronLeftIcon = ({ alt, className, fill, ...props }) => {
6
- const id = useId();
5
+ const ChevronLeftIcon = ({ alt, className, fill, id, ref, ...props }) => {
6
+ const uid = useId(id);
7
7
  const componentProps = {
8
- "aria-labelledby": alt ? id : undefined,
8
+ "aria-labelledby": alt ? uid + "-title" : undefined,
9
9
  className: clsx("coop-icon", className),
10
10
  "data-icon": "chevron-left",
11
11
  fill: fill !== null && fill !== void 0 ? fill : "none",
12
+ id: uid,
12
13
  role: alt ? "img" : undefined,
13
14
  viewBox: "0 0 32 32",
14
15
  ...props,
15
16
  };
16
- return (jsxs("svg", { ...componentProps, children: [alt ? jsx("title", { id: id, children: alt }) : null, jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
+ return (jsxs("svg", { ...componentProps, ref: ref, children: [alt ? jsx("title", { id: uid + "-title", children: alt }) : null, jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
18
  };
18
19
 
19
20
  export { ChevronLeftIcon };
@@ -2,5 +2,5 @@ import { type SVGProps } from "react";
2
2
  interface IconProps extends SVGProps<SVGSVGElement> {
3
3
  alt?: string;
4
4
  }
5
- export declare const ChevronRightIcon: ({ alt, className, fill, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const ChevronRightIcon: ({ alt, className, fill, id, ref, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
6
6
  export {};
@@ -1,19 +1,20 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import clsx from 'clsx';
3
- import { useId } from 'react';
3
+ import { useId } from '../../hooks/useId.js';
4
4
 
5
- const ChevronRightIcon = ({ alt, className, fill, ...props }) => {
6
- const id = useId();
5
+ const ChevronRightIcon = ({ alt, className, fill, id, ref, ...props }) => {
6
+ const uid = useId(id);
7
7
  const componentProps = {
8
- "aria-labelledby": alt ? id : undefined,
8
+ "aria-labelledby": alt ? uid + "-title" : undefined,
9
9
  className: clsx("coop-icon", className),
10
10
  "data-icon": "chevron-right",
11
11
  fill: fill !== null && fill !== void 0 ? fill : "none",
12
+ id: uid,
12
13
  role: alt ? "img" : undefined,
13
14
  viewBox: "0 0 32 32",
14
15
  ...props,
15
16
  };
16
- return (jsxs("svg", { ...componentProps, children: [alt ? jsx("title", { id: id, children: alt }) : null, jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
+ return (jsxs("svg", { ...componentProps, ref: ref, children: [alt ? jsx("title", { id: uid + "-title", children: alt }) : null, jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
18
  };
18
19
 
19
20
  export { ChevronRightIcon };
@@ -2,5 +2,5 @@ import { type SVGProps } from "react";
2
2
  interface IconProps extends SVGProps<SVGSVGElement> {
3
3
  alt?: string;
4
4
  }
5
- export declare const ChevronUpIcon: ({ alt, className, fill, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const ChevronUpIcon: ({ alt, className, fill, id, ref, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
6
6
  export {};
@@ -1,19 +1,20 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import clsx from 'clsx';
3
- import { useId } from 'react';
3
+ import { useId } from '../../hooks/useId.js';
4
4
 
5
- const ChevronUpIcon = ({ alt, className, fill, ...props }) => {
6
- const id = useId();
5
+ const ChevronUpIcon = ({ alt, className, fill, id, ref, ...props }) => {
6
+ const uid = useId(id);
7
7
  const componentProps = {
8
- "aria-labelledby": alt ? id : undefined,
8
+ "aria-labelledby": alt ? uid + "-title" : undefined,
9
9
  className: clsx("coop-icon", className),
10
10
  "data-icon": "chevron-up",
11
11
  fill: fill !== null && fill !== void 0 ? fill : "none",
12
+ id: uid,
12
13
  role: alt ? "img" : undefined,
13
14
  viewBox: "0 0 32 32",
14
15
  ...props,
15
16
  };
16
- return (jsxs("svg", { ...componentProps, children: [alt ? jsx("title", { id: id, children: alt }) : null, jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
+ return (jsxs("svg", { ...componentProps, ref: ref, children: [alt ? jsx("title", { id: uid + "-title", children: alt }) : null, jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
18
  };
18
19
 
19
20
  export { ChevronUpIcon };
@@ -2,5 +2,5 @@ import { type SVGProps } from "react";
2
2
  interface IconProps extends SVGProps<SVGSVGElement> {
3
3
  alt?: string;
4
4
  }
5
- export declare const ClockIcon: ({ alt, className, fill, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const ClockIcon: ({ alt, className, fill, id, ref, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
6
6
  export {};
@@ -1,19 +1,20 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import clsx from 'clsx';
3
- import { useId } from 'react';
3
+ import { useId } from '../../hooks/useId.js';
4
4
 
5
- const ClockIcon = ({ alt, className, fill, ...props }) => {
6
- const id = useId();
5
+ const ClockIcon = ({ alt, className, fill, id, ref, ...props }) => {
6
+ const uid = useId(id);
7
7
  const componentProps = {
8
- "aria-labelledby": alt ? id : undefined,
8
+ "aria-labelledby": alt ? uid + "-title" : undefined,
9
9
  className: clsx("coop-icon", className),
10
10
  "data-icon": "clock",
11
11
  fill: fill !== null && fill !== void 0 ? fill : "none",
12
+ id: uid,
12
13
  role: alt ? "img" : undefined,
13
14
  viewBox: "0 0 32 32",
14
15
  ...props,
15
16
  };
16
- return (jsxs("svg", { ...componentProps, children: [alt ? jsx("title", { id: id, children: alt }) : null, jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
+ return (jsxs("svg", { ...componentProps, ref: ref, children: [alt ? jsx("title", { id: uid + "-title", children: alt }) : null, jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
18
  };
18
19
 
19
20
  export { ClockIcon };
@@ -2,5 +2,5 @@ import { type SVGProps } from "react";
2
2
  interface IconProps extends SVGProps<SVGSVGElement> {
3
3
  alt?: string;
4
4
  }
5
- export declare const CloseAltIcon: ({ alt, className, fill, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const CloseAltIcon: ({ alt, className, fill, id, ref, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
6
6
  export {};
@@ -1,19 +1,20 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import clsx from 'clsx';
3
- import { useId } from 'react';
3
+ import { useId } from '../../hooks/useId.js';
4
4
 
5
- const CloseAltIcon = ({ alt, className, fill, ...props }) => {
6
- const id = useId();
5
+ const CloseAltIcon = ({ alt, className, fill, id, ref, ...props }) => {
6
+ const uid = useId(id);
7
7
  const componentProps = {
8
- "aria-labelledby": alt ? id : undefined,
8
+ "aria-labelledby": alt ? uid + "-title" : undefined,
9
9
  className: clsx("coop-icon", className),
10
10
  "data-icon": "close-alt",
11
11
  fill: fill !== null && fill !== void 0 ? fill : "none",
12
+ id: uid,
12
13
  role: alt ? "img" : undefined,
13
14
  viewBox: "0 0 32 32",
14
15
  ...props,
15
16
  };
16
- return (jsxs("svg", { ...componentProps, children: [alt ? jsx("title", { id: id, children: alt }) : null, jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
+ return (jsxs("svg", { ...componentProps, ref: ref, children: [alt ? jsx("title", { id: uid + "-title", children: alt }) : null, jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
18
  };
18
19
 
19
20
  export { CloseAltIcon };
@@ -2,5 +2,5 @@ import { type SVGProps } from "react";
2
2
  interface IconProps extends SVGProps<SVGSVGElement> {
3
3
  alt?: string;
4
4
  }
5
- export declare const CloseIcon: ({ alt, className, fill, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const CloseIcon: ({ alt, className, fill, id, ref, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
6
6
  export {};
@@ -1,19 +1,20 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import clsx from 'clsx';
3
- import { useId } from 'react';
3
+ import { useId } from '../../hooks/useId.js';
4
4
 
5
- const CloseIcon = ({ alt, className, fill, ...props }) => {
6
- const id = useId();
5
+ const CloseIcon = ({ alt, className, fill, id, ref, ...props }) => {
6
+ const uid = useId(id);
7
7
  const componentProps = {
8
- "aria-labelledby": alt ? id : undefined,
8
+ "aria-labelledby": alt ? uid + "-title" : undefined,
9
9
  className: clsx("coop-icon", className),
10
10
  "data-icon": "close",
11
11
  fill: fill !== null && fill !== void 0 ? fill : "none",
12
+ id: uid,
12
13
  role: alt ? "img" : undefined,
13
14
  viewBox: "0 0 32 32",
14
15
  ...props,
15
16
  };
16
- return (jsxs("svg", { ...componentProps, children: [alt ? jsx("title", { id: id, children: alt }) : null, jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
+ return (jsxs("svg", { ...componentProps, ref: ref, children: [alt ? jsx("title", { id: uid + "-title", children: alt }) : null, jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
18
  };
18
19
 
19
20
  export { CloseIcon };
@@ -2,5 +2,5 @@ import { type SVGProps } from "react";
2
2
  interface IconProps extends SVGProps<SVGSVGElement> {
3
3
  alt?: string;
4
4
  }
5
- export declare const CoopCardIcon: ({ alt, className, fill, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const CoopCardIcon: ({ alt, className, fill, id, ref, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
6
6
  export {};
@@ -1,19 +1,20 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import clsx from 'clsx';
3
- import { useId } from 'react';
3
+ import { useId } from '../../hooks/useId.js';
4
4
 
5
- const CoopCardIcon = ({ alt, className, fill, ...props }) => {
6
- const id = useId();
5
+ const CoopCardIcon = ({ alt, className, fill, id, ref, ...props }) => {
6
+ const uid = useId(id);
7
7
  const componentProps = {
8
- "aria-labelledby": alt ? id : undefined,
8
+ "aria-labelledby": alt ? uid + "-title" : undefined,
9
9
  className: clsx("coop-icon", className),
10
10
  "data-icon": "coop-card",
11
11
  fill: fill !== null && fill !== void 0 ? fill : "none",
12
+ id: uid,
12
13
  role: alt ? "img" : undefined,
13
14
  viewBox: "0 0 32 32",
14
15
  ...props,
15
16
  };
16
- return (jsxs("svg", { ...componentProps, children: [alt ? jsx("title", { id: id, children: alt }) : null, jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor", fillRule: "evenodd" })] }));
17
+ return (jsxs("svg", { ...componentProps, ref: ref, children: [alt ? jsx("title", { id: uid + "-title", children: alt }) : null, jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor", fillRule: "evenodd" })] }));
17
18
  };
18
19
 
19
20
  export { CoopCardIcon };
@@ -2,5 +2,5 @@ import { type SVGProps } from "react";
2
2
  interface IconProps extends SVGProps<SVGSVGElement> {
3
3
  alt?: string;
4
4
  }
5
- export declare const CoopIcon: ({ alt, className, fill, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const CoopIcon: ({ alt, className, fill, id, ref, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
6
6
  export {};
@@ -1,19 +1,20 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import clsx from 'clsx';
3
- import { useId } from 'react';
3
+ import { useId } from '../../hooks/useId.js';
4
4
 
5
- const CoopIcon = ({ alt, className, fill, ...props }) => {
6
- const id = useId();
5
+ const CoopIcon = ({ alt, className, fill, id, ref, ...props }) => {
6
+ const uid = useId(id);
7
7
  const componentProps = {
8
- "aria-labelledby": alt ? id : undefined,
8
+ "aria-labelledby": alt ? uid + "-title" : undefined,
9
9
  className: clsx("coop-icon", className),
10
10
  "data-icon": "coop",
11
11
  fill: fill !== null && fill !== void 0 ? fill : "none",
12
+ id: uid,
12
13
  role: alt ? "img" : undefined,
13
14
  viewBox: "0 0 32 32",
14
15
  ...props,
15
16
  };
16
- return (jsxs("svg", { ...componentProps, children: [alt ? jsx("title", { id: id, children: alt }) : null, jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor", fillRule: "evenodd" })] }));
17
+ return (jsxs("svg", { ...componentProps, ref: ref, children: [alt ? jsx("title", { id: uid + "-title", children: alt }) : null, jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor", fillRule: "evenodd" })] }));
17
18
  };
18
19
 
19
20
  export { CoopIcon };
@@ -2,5 +2,5 @@ import { type SVGProps } from "react";
2
2
  interface IconProps extends SVGProps<SVGSVGElement> {
3
3
  alt?: string;
4
4
  }
5
- export declare const CoopLocationIcon: ({ alt, className, fill, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const CoopLocationIcon: ({ alt, className, fill, id, ref, ...props }: IconProps) => import("react/jsx-runtime").JSX.Element;
6
6
  export {};
@@ -1,19 +1,20 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import clsx from 'clsx';
3
- import { useId } from 'react';
3
+ import { useId } from '../../hooks/useId.js';
4
4
 
5
- const CoopLocationIcon = ({ alt, className, fill, ...props }) => {
6
- const id = useId();
5
+ const CoopLocationIcon = ({ alt, className, fill, id, ref, ...props }) => {
6
+ const uid = useId(id);
7
7
  const componentProps = {
8
- "aria-labelledby": alt ? id : undefined,
8
+ "aria-labelledby": alt ? uid + "-title" : undefined,
9
9
  className: clsx("coop-icon", className),
10
10
  "data-icon": "coop-location",
11
11
  fill: fill !== null && fill !== void 0 ? fill : "none",
12
+ id: uid,
12
13
  role: alt ? "img" : undefined,
13
14
  viewBox: "0 0 32 32",
14
15
  ...props,
15
16
  };
16
- return (jsxs("svg", { ...componentProps, children: [alt ? jsx("title", { id: id, children: alt }) : null, jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
+ return (jsxs("svg", { ...componentProps, ref: ref, children: [alt ? jsx("title", { id: uid + "-title", children: alt }) : null, jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" }), jsx("path", { 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", fill: fill !== null && fill !== void 0 ? fill : "currentColor" })] }));
17
18
  };
18
19
 
19
20
  export { CoopLocationIcon };