@smg-automotive/components 25.11.0-migrate-searchable-list.1 → 25.11.0-talamcol-migrate-collapse.1

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 (249) hide show
  1. package/dist/cjs/components/alert/index.d.ts +2 -2
  2. package/dist/cjs/components/alert/index.d.ts.map +1 -1
  3. package/dist/cjs/components/carousel/DotsPagination.d.ts +8 -0
  4. package/dist/cjs/components/carousel/DotsPagination.d.ts.map +1 -0
  5. package/dist/cjs/components/carousel/DotsPaginationIndicator.d.ts +7 -0
  6. package/dist/cjs/components/carousel/DotsPaginationIndicator.d.ts.map +1 -0
  7. package/dist/cjs/components/carousel/NavigationButton.d.ts +11 -0
  8. package/dist/cjs/components/carousel/NavigationButton.d.ts.map +1 -0
  9. package/dist/cjs/components/carousel/NumbersPagination.d.ts +10 -0
  10. package/dist/cjs/components/carousel/NumbersPagination.d.ts.map +1 -0
  11. package/dist/cjs/components/carousel/NumbersPaginationButton.d.ts +10 -0
  12. package/dist/cjs/components/carousel/NumbersPaginationButton.d.ts.map +1 -0
  13. package/dist/cjs/components/carousel/Slide.d.ts +13 -0
  14. package/dist/cjs/components/carousel/Slide.d.ts.map +1 -0
  15. package/dist/cjs/components/carousel/Thumbnail.d.ts +10 -0
  16. package/dist/cjs/components/carousel/Thumbnail.d.ts.map +1 -0
  17. package/dist/cjs/components/carousel/ThumbnailNavigationButton.d.ts +9 -0
  18. package/dist/cjs/components/carousel/ThumbnailNavigationButton.d.ts.map +1 -0
  19. package/dist/cjs/components/carousel/ThumbnailPagination.d.ts +12 -0
  20. package/dist/cjs/components/carousel/ThumbnailPagination.d.ts.map +1 -0
  21. package/dist/cjs/components/carousel/index.d.ts +36 -0
  22. package/dist/cjs/components/carousel/index.d.ts.map +1 -0
  23. package/dist/cjs/components/closeButton/index.d.ts +2 -2
  24. package/dist/cjs/components/closeButton/index.d.ts.map +1 -1
  25. package/dist/cjs/components/collapse/index.d.ts +9 -0
  26. package/dist/cjs/components/collapse/index.d.ts.map +1 -0
  27. package/dist/cjs/components/colorPicker/index.d.ts +8 -0
  28. package/dist/cjs/components/colorPicker/index.d.ts.map +1 -0
  29. package/dist/cjs/components/errorPage/content/index.d.ts +10 -0
  30. package/dist/cjs/components/errorPage/content/index.d.ts.map +1 -0
  31. package/dist/cjs/components/errorPage/index.d.ts +2 -9
  32. package/dist/cjs/components/errorPage/index.d.ts.map +1 -1
  33. package/dist/cjs/components/filterPatterns/ActionButton.d.ts.map +1 -1
  34. package/dist/cjs/components/filterPatterns/Heading.d.ts +2 -9
  35. package/dist/cjs/components/filterPatterns/Heading.d.ts.map +1 -1
  36. package/dist/cjs/components/filterPatterns/HeadingContent.d.ts +10 -0
  37. package/dist/cjs/components/filterPatterns/HeadingContent.d.ts.map +1 -0
  38. package/dist/cjs/components/filterPatterns/dialog/Content.d.ts +4 -0
  39. package/dist/cjs/components/filterPatterns/dialog/Content.d.ts.map +1 -0
  40. package/dist/cjs/components/filterPatterns/dialog/index.d.ts +1 -2
  41. package/dist/cjs/components/filterPatterns/dialog/index.d.ts.map +1 -1
  42. package/dist/cjs/components/filterPatterns/popover/Content.d.ts +4 -0
  43. package/dist/cjs/components/filterPatterns/popover/Content.d.ts.map +1 -0
  44. package/dist/cjs/components/filterPatterns/popover/index.d.ts +1 -2
  45. package/dist/cjs/components/filterPatterns/popover/index.d.ts.map +1 -1
  46. package/dist/cjs/components/galleryHeader/Content.d.ts +10 -0
  47. package/dist/cjs/components/galleryHeader/Content.d.ts.map +1 -0
  48. package/dist/cjs/components/galleryHeader/index.d.ts +3 -9
  49. package/dist/cjs/components/galleryHeader/index.d.ts.map +1 -1
  50. package/dist/cjs/components/index.d.ts +11 -8
  51. package/dist/cjs/components/index.d.ts.map +1 -1
  52. package/dist/cjs/components/link/index.d.ts +3 -2
  53. package/dist/cjs/components/link/index.d.ts.map +1 -1
  54. package/dist/cjs/components/list/SearchableList.d.ts.map +1 -1
  55. package/dist/cjs/components/navigation/header/NavigationAvatar.d.ts.map +1 -1
  56. package/dist/cjs/components/navigation/header/drawer/DrawerLoginToggle.d.ts.map +1 -1
  57. package/dist/cjs/components/navigation/header/links/NavigationLink.d.ts.map +1 -1
  58. package/dist/cjs/components/navigation/header/navigationTenantMenu/index.d.ts.map +1 -1
  59. package/dist/cjs/components/skeleton/index.d.ts +1 -1
  60. package/dist/cjs/components/skeleton/index.d.ts.map +1 -1
  61. package/dist/cjs/components/tab/index.d.ts +4 -4
  62. package/dist/cjs/components/tab/index.d.ts.map +1 -1
  63. package/dist/cjs/components/tenantSelection/Overview.d.ts.map +1 -1
  64. package/dist/cjs/components/tenantSelection/select/index.d.ts.map +1 -1
  65. package/dist/cjs/components/text/index.d.ts +1 -1
  66. package/dist/cjs/components/text/index.d.ts.map +1 -1
  67. package/dist/cjs/components/translationProvider/index.d.ts.map +1 -1
  68. package/dist/cjs/components/translationProvider/withTranslationProvider.d.ts +8 -0
  69. package/dist/cjs/components/translationProvider/withTranslationProvider.d.ts.map +1 -0
  70. package/dist/cjs/hooks/useToast/Toast.d.ts +12 -0
  71. package/dist/cjs/hooks/useToast/Toast.d.ts.map +1 -0
  72. package/dist/cjs/hooks/useToast/TopRightToast.d.ts +4 -0
  73. package/dist/cjs/hooks/useToast/TopRightToast.d.ts.map +1 -0
  74. package/dist/cjs/hooks/useToast/TopToaster.d.ts +4 -0
  75. package/dist/cjs/hooks/useToast/TopToaster.d.ts.map +1 -0
  76. package/dist/cjs/hooks/useToast/index.d.ts +9 -0
  77. package/dist/cjs/hooks/useToast/index.d.ts.map +1 -0
  78. package/dist/cjs/index.js +1071 -528
  79. package/dist/cjs/index.js.map +1 -1
  80. package/dist/cjs/themes/shared/index.d.ts +31 -0
  81. package/dist/cjs/themes/shared/index.d.ts.map +1 -1
  82. package/dist/cjs/themes/shared/slotRecipes/alert.d.ts +16 -0
  83. package/dist/cjs/themes/shared/slotRecipes/alert.d.ts.map +1 -1
  84. package/dist/cjs/themes/shared/slotRecipes/carousel.d.ts +16 -0
  85. package/dist/cjs/themes/shared/slotRecipes/carousel.d.ts.map +1 -0
  86. package/dist/cjs/themes/shared/slotRecipes/index.d.ts +31 -0
  87. package/dist/cjs/themes/shared/slotRecipes/index.d.ts.map +1 -1
  88. package/dist/cjs/utilities/i18nInit.d.ts +18 -0
  89. package/dist/cjs/utilities/i18nInit.d.ts.map +1 -0
  90. package/dist/esm/components/alert/index.d.ts +2 -2
  91. package/dist/esm/components/alert/index.d.ts.map +1 -1
  92. package/dist/esm/components/carousel/DotsPagination.d.ts +8 -0
  93. package/dist/esm/components/carousel/DotsPagination.d.ts.map +1 -0
  94. package/dist/esm/components/carousel/DotsPagination.js +16 -0
  95. package/dist/esm/components/carousel/DotsPagination.js.map +1 -0
  96. package/dist/esm/components/carousel/DotsPaginationIndicator.d.ts +7 -0
  97. package/dist/esm/components/carousel/DotsPaginationIndicator.d.ts.map +1 -0
  98. package/dist/esm/components/carousel/DotsPaginationIndicator.js +12 -0
  99. package/dist/esm/components/carousel/DotsPaginationIndicator.js.map +1 -0
  100. package/dist/esm/components/carousel/NavigationButton.d.ts +11 -0
  101. package/dist/esm/components/carousel/NavigationButton.d.ts.map +1 -0
  102. package/dist/esm/components/carousel/NavigationButton.js +186 -0
  103. package/dist/esm/components/carousel/NavigationButton.js.map +1 -0
  104. package/dist/esm/components/carousel/NumbersPagination.d.ts +10 -0
  105. package/dist/esm/components/carousel/NumbersPagination.d.ts.map +1 -0
  106. package/dist/esm/components/carousel/NumbersPagination.js +19 -0
  107. package/dist/esm/components/carousel/NumbersPagination.js.map +1 -0
  108. package/dist/esm/components/carousel/NumbersPaginationButton.d.ts +10 -0
  109. package/dist/esm/components/carousel/NumbersPaginationButton.d.ts.map +1 -0
  110. package/dist/esm/components/carousel/NumbersPaginationButton.js +12 -0
  111. package/dist/esm/components/carousel/NumbersPaginationButton.js.map +1 -0
  112. package/dist/esm/components/carousel/Slide.d.ts +13 -0
  113. package/dist/esm/components/carousel/Slide.d.ts.map +1 -0
  114. package/dist/esm/components/carousel/Slide.js +29 -0
  115. package/dist/esm/components/carousel/Slide.js.map +1 -0
  116. package/dist/esm/components/carousel/Thumbnail.d.ts +10 -0
  117. package/dist/esm/components/carousel/Thumbnail.d.ts.map +1 -0
  118. package/dist/esm/components/carousel/Thumbnail.js +10 -0
  119. package/dist/esm/components/carousel/Thumbnail.js.map +1 -0
  120. package/dist/esm/components/carousel/ThumbnailNavigationButton.d.ts +9 -0
  121. package/dist/esm/components/carousel/ThumbnailNavigationButton.d.ts.map +1 -0
  122. package/dist/esm/components/carousel/ThumbnailNavigationButton.js +186 -0
  123. package/dist/esm/components/carousel/ThumbnailNavigationButton.js.map +1 -0
  124. package/dist/esm/components/carousel/ThumbnailPagination.d.ts +12 -0
  125. package/dist/esm/components/carousel/ThumbnailPagination.d.ts.map +1 -0
  126. package/dist/esm/components/carousel/ThumbnailPagination.js +46 -0
  127. package/dist/esm/components/carousel/ThumbnailPagination.js.map +1 -0
  128. package/dist/esm/components/carousel/index.d.ts +36 -0
  129. package/dist/esm/components/carousel/index.d.ts.map +1 -0
  130. package/dist/esm/components/carousel/index.js +211 -0
  131. package/dist/esm/components/carousel/index.js.map +1 -0
  132. package/dist/esm/components/closeButton/index.d.ts +2 -2
  133. package/dist/esm/components/closeButton/index.d.ts.map +1 -1
  134. package/dist/esm/components/collapse/index.d.ts +9 -0
  135. package/dist/esm/components/collapse/index.d.ts.map +1 -0
  136. package/dist/esm/components/collapse/index.js +15 -0
  137. package/dist/esm/components/collapse/index.js.map +1 -0
  138. package/dist/esm/components/colorPicker/index.d.ts +8 -0
  139. package/dist/esm/components/colorPicker/index.d.ts.map +1 -0
  140. package/dist/esm/components/colorPicker/index.js +13 -0
  141. package/dist/esm/components/colorPicker/index.js.map +1 -0
  142. package/dist/esm/components/errorPage/content/EmailChangeVerification.js +1 -1
  143. package/dist/esm/components/errorPage/content/index.d.ts +10 -0
  144. package/dist/esm/components/errorPage/content/index.d.ts.map +1 -0
  145. package/dist/esm/components/errorPage/content/index.js +283 -0
  146. package/dist/esm/components/errorPage/content/index.js.map +1 -0
  147. package/dist/esm/components/errorPage/index.d.ts +2 -9
  148. package/dist/esm/components/errorPage/index.d.ts.map +1 -1
  149. package/dist/esm/components/errorPage/index.js +5 -283
  150. package/dist/esm/components/errorPage/index.js.map +1 -1
  151. package/dist/esm/components/filterPatterns/ActionButton.d.ts.map +1 -1
  152. package/dist/esm/components/filterPatterns/Heading.d.ts +2 -9
  153. package/dist/esm/components/filterPatterns/Heading.d.ts.map +1 -1
  154. package/dist/esm/components/filterPatterns/HeadingContent.d.ts +10 -0
  155. package/dist/esm/components/filterPatterns/HeadingContent.d.ts.map +1 -0
  156. package/dist/esm/components/filterPatterns/dialog/Content.d.ts +4 -0
  157. package/dist/esm/components/filterPatterns/dialog/Content.d.ts.map +1 -0
  158. package/dist/esm/components/filterPatterns/dialog/index.d.ts +1 -2
  159. package/dist/esm/components/filterPatterns/dialog/index.d.ts.map +1 -1
  160. package/dist/esm/components/filterPatterns/popover/Content.d.ts +4 -0
  161. package/dist/esm/components/filterPatterns/popover/Content.d.ts.map +1 -0
  162. package/dist/esm/components/filterPatterns/popover/index.d.ts +1 -2
  163. package/dist/esm/components/filterPatterns/popover/index.d.ts.map +1 -1
  164. package/dist/esm/components/galleryHeader/Content.d.ts +10 -0
  165. package/dist/esm/components/galleryHeader/Content.d.ts.map +1 -0
  166. package/dist/esm/components/galleryHeader/Content.js +196 -0
  167. package/dist/esm/components/galleryHeader/Content.js.map +1 -0
  168. package/dist/esm/components/galleryHeader/index.d.ts +3 -9
  169. package/dist/esm/components/galleryHeader/index.d.ts.map +1 -1
  170. package/dist/esm/components/galleryHeader/index.js +3 -196
  171. package/dist/esm/components/galleryHeader/index.js.map +1 -1
  172. package/dist/esm/components/index.d.ts +11 -8
  173. package/dist/esm/components/index.d.ts.map +1 -1
  174. package/dist/esm/components/link/index.d.ts +3 -2
  175. package/dist/esm/components/link/index.d.ts.map +1 -1
  176. package/dist/esm/components/link/index.js.map +1 -1
  177. package/dist/esm/components/list/SearchableList.d.ts.map +1 -1
  178. package/dist/esm/components/list/SearchableList.js +6 -1
  179. package/dist/esm/components/list/SearchableList.js.map +1 -1
  180. package/dist/esm/components/navigation/footer/Apps.js +1 -1
  181. package/dist/esm/components/navigation/footer/Copyright.js +1 -1
  182. package/dist/esm/components/navigation/footer/Link.js +1 -1
  183. package/dist/esm/components/navigation/footer/Sections.js +1 -1
  184. package/dist/esm/components/navigation/header/ComparisonItem.js +1 -1
  185. package/dist/esm/components/navigation/header/FavoritesItem.js +1 -1
  186. package/dist/esm/components/navigation/header/NavigationAvatar.d.ts.map +1 -1
  187. package/dist/esm/components/navigation/header/NavigationAvatar.js +1 -1
  188. package/dist/esm/components/navigation/header/NavigationItem.js +1 -1
  189. package/dist/esm/components/navigation/header/drawer/DrawerLoginToggle.d.ts.map +1 -1
  190. package/dist/esm/components/navigation/header/drawer/DrawerLoginToggle.js +1 -1
  191. package/dist/esm/components/navigation/header/drawer/DrawerSections.js +1 -1
  192. package/dist/esm/components/navigation/header/drawer/index.js +1 -1
  193. package/dist/esm/components/navigation/header/drawer/index.js.map +1 -1
  194. package/dist/esm/components/navigation/header/links/NavigationLink.d.ts.map +1 -1
  195. package/dist/esm/components/navigation/header/links/NavigationLink.js +1 -1
  196. package/dist/esm/components/navigation/header/links/NavigationLink.js.map +1 -1
  197. package/dist/esm/components/navigation/header/navigationTenantMenu/index.d.ts.map +1 -1
  198. package/dist/esm/components/navigation/header/navigationTenantMenu/index.js +1 -1
  199. package/dist/esm/components/skeleton/index.d.ts +1 -1
  200. package/dist/esm/components/skeleton/index.d.ts.map +1 -1
  201. package/dist/esm/components/tab/index.d.ts +4 -4
  202. package/dist/esm/components/tab/index.d.ts.map +1 -1
  203. package/dist/esm/components/tenantSelection/Overview.d.ts.map +1 -1
  204. package/dist/esm/components/tenantSelection/Overview.js +1 -1
  205. package/dist/esm/components/tenantSelection/Overview.js.map +1 -1
  206. package/dist/esm/components/tenantSelection/select/index.d.ts.map +1 -1
  207. package/dist/esm/components/tenantSelection/select/index.js +1 -1
  208. package/dist/esm/components/tenantSelection/select/index.js.map +1 -1
  209. package/dist/esm/components/text/index.d.ts +1 -1
  210. package/dist/esm/components/text/index.d.ts.map +1 -1
  211. package/dist/esm/components/themeProvider/index.js +1 -0
  212. package/dist/esm/components/themeProvider/index.js.map +1 -1
  213. package/dist/esm/components/translationProvider/index.d.ts.map +1 -1
  214. package/dist/esm/components/translationProvider/index.js +2 -1
  215. package/dist/esm/components/translationProvider/index.js.map +1 -1
  216. package/dist/esm/components/translationProvider/withTranslationProvider.d.ts +8 -0
  217. package/dist/esm/components/translationProvider/withTranslationProvider.d.ts.map +1 -0
  218. package/dist/esm/components/translationProvider/withTranslationProvider.js +16 -0
  219. package/dist/esm/components/translationProvider/withTranslationProvider.js.map +1 -0
  220. package/dist/esm/hooks/useToast/Toast.d.ts +12 -0
  221. package/dist/esm/hooks/useToast/Toast.d.ts.map +1 -0
  222. package/dist/esm/hooks/useToast/TopRightToast.d.ts +4 -0
  223. package/dist/esm/hooks/useToast/TopRightToast.d.ts.map +1 -0
  224. package/dist/esm/hooks/useToast/TopToaster.d.ts +4 -0
  225. package/dist/esm/hooks/useToast/TopToaster.d.ts.map +1 -0
  226. package/dist/esm/hooks/useToast/index.d.ts +9 -0
  227. package/dist/esm/hooks/useToast/index.d.ts.map +1 -0
  228. package/dist/esm/index.js +12 -8
  229. package/dist/esm/index.js.map +1 -1
  230. package/dist/esm/themes/shared/index.d.ts +31 -0
  231. package/dist/esm/themes/shared/index.d.ts.map +1 -1
  232. package/dist/esm/themes/shared/slotRecipes/alert.d.ts +16 -0
  233. package/dist/esm/themes/shared/slotRecipes/alert.d.ts.map +1 -1
  234. package/dist/esm/themes/shared/slotRecipes/alert.js +19 -0
  235. package/dist/esm/themes/shared/slotRecipes/alert.js.map +1 -1
  236. package/dist/esm/themes/shared/slotRecipes/carousel.d.ts +16 -0
  237. package/dist/esm/themes/shared/slotRecipes/carousel.d.ts.map +1 -0
  238. package/dist/esm/themes/shared/slotRecipes/carousel.js +233 -0
  239. package/dist/esm/themes/shared/slotRecipes/carousel.js.map +1 -0
  240. package/dist/esm/themes/shared/slotRecipes/index.d.ts +31 -0
  241. package/dist/esm/themes/shared/slotRecipes/index.d.ts.map +1 -1
  242. package/dist/esm/themes/shared/slotRecipes/index.js +2 -0
  243. package/dist/esm/themes/shared/slotRecipes/index.js.map +1 -1
  244. package/dist/esm/utilities/i18nInit.d.ts +18 -0
  245. package/dist/esm/utilities/i18nInit.d.ts.map +1 -0
  246. package/dist/esm/utilities/i18nInit.js +7 -0
  247. package/dist/esm/utilities/i18nInit.js.map +1 -0
  248. package/dist/index.d.ts +255 -153
  249. package/package.json +12 -12
package/dist/cjs/index.js CHANGED
@@ -4,6 +4,7 @@ var react$1 = require('@chakra-ui/react');
4
4
  var react = require('@emotion/react');
5
5
  var useDebounce = require('use-debounce');
6
6
  var React = require('react');
7
+ var useEmblaCarousel = require('embla-carousel-react');
7
8
  var i18nPkg = require('@smg-automotive/i18n-pkg');
8
9
  var Fuse = require('fuse.js');
9
10
  var auth$4 = require('@smg-automotive/auth');
@@ -1790,14 +1791,14 @@ var baseStyleCloseContainer = react$1.defineStyle({
1790
1791
  alignItems: 'center',
1791
1792
  justifyContent: 'flex-end',
1792
1793
  });
1793
- var slots$1 = [
1794
+ var slots$2 = [
1794
1795
  'container',
1795
1796
  'grid',
1796
1797
  'countContainer',
1797
1798
  'closeContainer',
1798
1799
  ];
1799
1800
  var galleryHeaderRecipe = react$1.defineSlotRecipe({
1800
- slots: slots$1,
1801
+ slots: slots$2,
1801
1802
  className: 'chakra-gallery-header',
1802
1803
  base: {
1803
1804
  container: baseStyleContainer,
@@ -2314,7 +2315,7 @@ var sizeContent = function (w) {
2314
2315
  borderRadius: { base: 'none', sm: 'sm' },
2315
2316
  });
2316
2317
  };
2317
- var slots = [
2318
+ var slots$1 = [
2318
2319
  'header',
2319
2320
  'body',
2320
2321
  'footer',
@@ -2324,7 +2325,7 @@ var slots = [
2324
2325
  'closeTrigger',
2325
2326
  ];
2326
2327
  var dialogRecipe = react$1.defineSlotRecipe({
2327
- slots: slots,
2328
+ slots: slots$1,
2328
2329
  className: 'chakra-dialog',
2329
2330
  base: {
2330
2331
  positioner: baseStyleDialogContainer,
@@ -2521,6 +2522,235 @@ var checkboxRecipe = react$1.defineSlotRecipe({
2521
2522
  },
2522
2523
  });
2523
2524
 
2525
+ var slots = [
2526
+ 'container',
2527
+ 'carousel',
2528
+ 'slide',
2529
+ 'slideContainer',
2530
+ 'buttonContainer',
2531
+ 'button',
2532
+ 'icon',
2533
+ 'pagination',
2534
+ 'paginationButton',
2535
+ 'paginationIconContainer',
2536
+ 'dotsPaginationContainer',
2537
+ 'dotsPaginationIndicator',
2538
+ 'numbersPaginationButton',
2539
+ ];
2540
+ var baseContainer = react$1.defineStyle({
2541
+ height: 'full',
2542
+ width: 'full',
2543
+ '--carousel-overlay-weak': 'rgba(51,51,51,0.4)',
2544
+ '--carousel-overlay-strong': 'rgba(51,51,51,0.8)',
2545
+ '--carousel-pagination-height': '7.5rem',
2546
+ '--carousel-numbers-pagination-height': '5rem',
2547
+ '--carousel-dot-size': '6px',
2548
+ '--carousel-dot-size-active': '8px',
2549
+ '--carousel-dot-size-last': '4px',
2550
+ '--carousel-dot-margin-x': '6px',
2551
+ });
2552
+ var baseCarousel = react$1.defineStyle({
2553
+ overflow: 'hidden',
2554
+ position: 'relative',
2555
+ });
2556
+ var baseSlide = react$1.defineStyle({
2557
+ flexGrow: '0',
2558
+ flexShrink: '0',
2559
+ flexBasis: 'full',
2560
+ });
2561
+ var baseSlideContainer = react$1.defineStyle({
2562
+ height: 'full',
2563
+ alignItems: 'center',
2564
+ display: 'flex',
2565
+ });
2566
+ var baseButtonContainer = react$1.defineStyle({
2567
+ position: 'absolute',
2568
+ top: '0',
2569
+ width: 'lg',
2570
+ height: 'full',
2571
+ display: 'flex',
2572
+ justifyContent: 'center',
2573
+ alignItems: 'center',
2574
+ color: 'white',
2575
+ visibility: 'hidden',
2576
+ pointerEvents: 'none',
2577
+ cursor: 'pointer',
2578
+ _groupHover: { md: { visibility: 'visible', pointerEvents: 'auto' } },
2579
+ _focus: {
2580
+ outline: 'none',
2581
+ },
2582
+ });
2583
+ var baseButton = react$1.defineStyle({
2584
+ display: 'flex',
2585
+ justifyContent: 'center',
2586
+ alignItems: 'center',
2587
+ width: 'md',
2588
+ height: 'md',
2589
+ borderRadius: 'sm',
2590
+ backgroundColor: 'var(--carousel-overlay-weak)',
2591
+ color: 'white',
2592
+ _hover: { background: 'var(--carousel-overlay-strong)' },
2593
+ });
2594
+ var baseIcon = react$1.defineStyle({
2595
+ boxSize: 'sm',
2596
+ });
2597
+ var numbersPaginationButton = react$1.defineStyle({
2598
+ display: 'inline-flex',
2599
+ alignItems: 'center',
2600
+ justifyContent: 'center',
2601
+ verticalAlign: 'middle',
2602
+ textAlign: 'center',
2603
+ minWidth: 'md',
2604
+ height: 'md',
2605
+ borderRadius: 'sm',
2606
+ _hover: {
2607
+ backgroundColor: 'gray.100',
2608
+ },
2609
+ '&[aria-current="true"]': {
2610
+ color: 'white',
2611
+ backgroundColor: 'gray.900',
2612
+ _hover: {
2613
+ backgroundColor: 'gray.900',
2614
+ },
2615
+ },
2616
+ });
2617
+ var dotsPaginationIndicator = react$1.defineStyle({
2618
+ backgroundColor: 'transparent',
2619
+ touchAction: 'pan-x',
2620
+ display: 'inline-flex',
2621
+ textDecoration: 'none',
2622
+ border: 'none',
2623
+ padding: '0',
2624
+ width: 'var(--carousel-dot-size)',
2625
+ height: 'var(--carousel-dot-size)',
2626
+ marginX: 'var(--carousel-dot-margin-x)',
2627
+ _last: {
2628
+ width: 'var(--carousel-dot-size-last)',
2629
+ height: 'var(--carousel-dot-size-last)',
2630
+ _after: {
2631
+ width: 'full',
2632
+ height: 'var(--carousel-dot-size-last)',
2633
+ content: '""',
2634
+ },
2635
+ },
2636
+ _after: {
2637
+ backgroundColor: 'gray.300',
2638
+ opacity: '40',
2639
+ borderRadius: 'full',
2640
+ width: 'full',
2641
+ height: 'var(--carousel-dot-size)',
2642
+ content: '""',
2643
+ },
2644
+ '&[aria-current="true"]': {
2645
+ width: 'var(--carousel-dot-size-active)',
2646
+ height: 'var(--carousel-dot-size-active)',
2647
+ _last: {
2648
+ width: 'var(--carousel-dot-size-active)',
2649
+ height: 'var(--carousel-dot-size-active)',
2650
+ _after: {
2651
+ width: 'full',
2652
+ height: 'var(--carousel-dot-size-active)',
2653
+ content: '""',
2654
+ },
2655
+ },
2656
+ _after: {
2657
+ backgroundColor: 'white',
2658
+ borderRadius: 'full',
2659
+ opacity: '100',
2660
+ width: 'full',
2661
+ height: 'var(--carousel-dot-size-active)',
2662
+ content: '""',
2663
+ },
2664
+ },
2665
+ });
2666
+ var fullScreenVariant = {
2667
+ container: react$1.defineStyle({
2668
+ backgroundColor: 'black',
2669
+ position: {
2670
+ base: 'fixed',
2671
+ md: 'static',
2672
+ },
2673
+ }),
2674
+ carousel: react$1.defineStyle({
2675
+ paddingX: {
2676
+ md: '5xl',
2677
+ },
2678
+ }),
2679
+ pagination: react$1.defineStyle({
2680
+ overflow: 'hidden',
2681
+ position: 'relative',
2682
+ paddingX: {
2683
+ base: 'md',
2684
+ md: '5xl',
2685
+ },
2686
+ height: 'var(--carousel-pagination-height)',
2687
+ }),
2688
+ paginationButton: react$1.defineStyle({
2689
+ position: 'absolute',
2690
+ top: '0',
2691
+ width: 'lg',
2692
+ height: 'full',
2693
+ display: 'flex',
2694
+ justifyContent: 'center',
2695
+ alignItems: 'center',
2696
+ color: 'white',
2697
+ backgroundColor: 'transparent',
2698
+ }),
2699
+ paginationIconContainer: react$1.defineStyle({
2700
+ display: 'flex',
2701
+ justifyContent: 'center',
2702
+ alignItems: 'center',
2703
+ width: 'md',
2704
+ height: 'md',
2705
+ borderRadius: 'sm',
2706
+ backgroundColor: 'var(--carousel-overlay-strong)',
2707
+ }),
2708
+ buttonContainer: react$1.defineStyle({
2709
+ backgroundColor: 'black',
2710
+ width: 'xl',
2711
+ visibility: { base: 'hidden', md: 'visible' },
2712
+ pointerEvents: { base: 'none', md: 'auto' },
2713
+ }),
2714
+ slide: react$1.defineStyle({
2715
+ height: 'full',
2716
+ }),
2717
+ button: react$1.defineStyle({
2718
+ opacity: '100',
2719
+ backgroundColor: 'black',
2720
+ }),
2721
+ icon: react$1.defineStyle({
2722
+ boxSize: 'md',
2723
+ }),
2724
+ };
2725
+ var carouselRecipe = react$1.defineSlotRecipe({
2726
+ slots: slots,
2727
+ className: 'chakra-carousel',
2728
+ base: {
2729
+ container: baseContainer,
2730
+ carousel: baseCarousel,
2731
+ slide: baseSlide,
2732
+ slideContainer: baseSlideContainer,
2733
+ buttonContainer: baseButtonContainer,
2734
+ button: baseButton,
2735
+ icon: baseIcon,
2736
+ numbersPaginationButton: numbersPaginationButton,
2737
+ dotsPaginationContainer: react$1.defineStyle({
2738
+ position: 'absolute',
2739
+ width: 'full',
2740
+ bottom: 'lg',
2741
+ display: 'flex',
2742
+ justifyContent: 'center',
2743
+ alignItems: 'center',
2744
+ }),
2745
+ dotsPaginationIndicator: dotsPaginationIndicator,
2746
+ },
2747
+ variants: {
2748
+ variant: {
2749
+ fullScreen: fullScreenVariant,
2750
+ },
2751
+ },
2752
+ });
2753
+
2524
2754
  var cardRecipe = react$1.defineSlotRecipe({
2525
2755
  className: 'chakra-card',
2526
2756
  slots: ['root', 'header', 'body', 'footer'],
@@ -2649,6 +2879,25 @@ var alertRecipe = react$1.defineSlotRecipe({
2649
2879
  },
2650
2880
  },
2651
2881
  },
2882
+ variant: {
2883
+ toast: {
2884
+ root: {
2885
+ translate: 'var(--x) var(--y)',
2886
+ scale: 'var(--scale)',
2887
+ width: 'full',
2888
+ position: 'relative',
2889
+ zIndex: 'var(--z-index)',
2890
+ height: 'var(--height)',
2891
+ opacity: 'var(--opacity)',
2892
+ willChange: 'translate, opacity, scale',
2893
+ transitionProperty: 'common',
2894
+ transitionDuration: 'normal',
2895
+ },
2896
+ },
2897
+ },
2898
+ },
2899
+ defaultVariants: {
2900
+ variant: 'toast',
2652
2901
  },
2653
2902
  });
2654
2903
 
@@ -2773,6 +3022,7 @@ var accordionRecipe = react$1.defineSlotRecipe({
2773
3022
  var slotRecipes = {
2774
3023
  articleTeaser: articleTeaserRecipe,
2775
3024
  accordion: accordionRecipe,
3025
+ carousel: carouselRecipe,
2776
3026
  breadcrumbs: breadcrumbsRecipe,
2777
3027
  card: cardRecipe,
2778
3028
  energyLabel: energyLabelRecipe,
@@ -5697,6 +5947,287 @@ var Card = {
5697
5947
  Footer: Footer$2,
5698
5948
  };
5699
5949
 
5950
+ var Flex = function (_a) {
5951
+ var children = _a.children, rest = __rest(_a, ["children"]);
5952
+ return (React.createElement(react$1.Flex, __assign({}, rest), children));
5953
+ };
5954
+
5955
+ var icons = {
5956
+ previous: React.createElement(ChevronLeftSmallIcon, null),
5957
+ next: React.createElement(ChevronRightSmallIcon, null),
5958
+ };
5959
+ var ThumbnailNavigationButton = function (_a) {
5960
+ var direction = _a.direction, onClick = _a.onClick;
5961
+ var recipe = react$1.useSlotRecipe({ key: 'carousel' });
5962
+ var styles = recipe({ variant: 'fullScreen' });
5963
+ var side = direction === 'previous' ? { left: '0' } : { right: '0' };
5964
+ return (React.createElement(react$1.chakra.button, { onClick: onClick, "aria-label": "scroll to ".concat(direction, " thumbnail group"), "aria-controls": "thumbnails-wrapper", css: __assign(__assign({}, styles.paginationButton), side) },
5965
+ React.createElement(Flex, { css: styles.paginationIconContainer }, icons[direction])));
5966
+ };
5967
+
5968
+ var Thumbnail = function (_a) {
5969
+ var onClick = _a.onClick, isCurrent = _a.isCurrent, thumbnailIndex = _a.thumbnailIndex, totalThumbnails = _a.totalThumbnails, children = _a.children;
5970
+ return (React.createElement(AspectRatio, { ratio: 4 / 3, onClick: onClick, width: "3xl", flexShrink: "0", cursor: "pointer", mr: "xs", border: "4px", borderColor: isCurrent ? 'blue.400' : 'transparent', "aria-current": isCurrent, "aria-label": "thumbnail ".concat(thumbnailIndex + 1, " of ").concat(totalThumbnails) }, children));
5971
+ };
5972
+
5973
+ var ThumbnailPagination = function (_a) {
5974
+ var currentSlideIndex = _a.currentSlideIndex, thumbnails = _a.thumbnails, mainCarousel = _a.mainCarousel, paginationCarouselRef = _a.paginationCarouselRef, paginationCarousel = _a.paginationCarousel;
5975
+ var _b = React.useState({ previous: false, next: true }), paginationButtonVisibility = _b[0], setPaginationButtonVisibility = _b[1];
5976
+ var recipe = react$1.useSlotRecipe({ key: 'carousel' });
5977
+ var styles = recipe({ variant: 'fullScreen' });
5978
+ var scrollPrev = React.useCallback(function () { return paginationCarousel && paginationCarousel.scrollPrev(true); }, [paginationCarousel]);
5979
+ var scrollNext = React.useCallback(function () { return paginationCarousel && paginationCarousel.scrollNext(true); }, [paginationCarousel]);
5980
+ var onThumbnailClick = React.useCallback(function (index) {
5981
+ if (!mainCarousel || !paginationCarousel)
5982
+ return;
5983
+ mainCarousel.scrollTo(index, true);
5984
+ }, [mainCarousel, paginationCarousel]);
5985
+ var evalPaginationButtonVisibility = React.useCallback(function () {
5986
+ if (!paginationCarousel ||
5987
+ paginationCarousel.slidesNotInView().length === 0) {
5988
+ setPaginationButtonVisibility({ previous: false, next: false });
5989
+ return;
5990
+ }
5991
+ var progress = Math.max(0, Math.min(1, paginationCarousel.scrollProgress()));
5992
+ var slideWidth = 1 / thumbnails.length;
5993
+ setPaginationButtonVisibility({
5994
+ previous: progress > slideWidth,
5995
+ next: progress < 1 - slideWidth,
5996
+ });
5997
+ }, [paginationCarousel, thumbnails.length]);
5998
+ React.useEffect(function () {
5999
+ if (!paginationCarousel)
6000
+ return;
6001
+ evalPaginationButtonVisibility();
6002
+ paginationCarousel.on('scroll', evalPaginationButtonVisibility);
6003
+ paginationCarousel.on('slidesInView', evalPaginationButtonVisibility);
6004
+ }, [paginationCarousel, evalPaginationButtonVisibility]);
6005
+ return (React.createElement(react$1.Box, { ref: paginationCarouselRef, css: styles.pagination, "aria-label": "Pagination" },
6006
+ React.createElement(Flex, { alignItems: "center", height: "full", id: "thumbnail-wrapper" }, thumbnails.map(function (slide, index) { return (React.createElement(Thumbnail, { key: "slide-".concat(index), onClick: function () { return onThumbnailClick(index); }, isCurrent: index === currentSlideIndex, thumbnailIndex: index, totalThumbnails: thumbnails.length }, paginationCarouselRef ? (slide) : (React.createElement(react$1.Box, { h: "full", w: "full", backgroundColor: "gray.50" })))); })),
6007
+ paginationButtonVisibility.previous ? (React.createElement(ThumbnailNavigationButton, { onClick: scrollPrev, direction: "previous" })) : null,
6008
+ paginationButtonVisibility.next ? (React.createElement(ThumbnailNavigationButton, { onClick: scrollNext, direction: "next" })) : null));
6009
+ };
6010
+
6011
+ var Slide = function (_a) {
6012
+ var onClick = _a.onClick, slideIndex = _a.slideIndex, totalSlides = _a.totalSlides, isCurrent = _a.isCurrent, children = _a.children, fullScreen = _a.fullScreen, slidesPerView = _a.slidesPerView;
6013
+ var recipe = react$1.useSlotRecipe({ key: 'carousel' });
6014
+ var styles = recipe(fullScreen ? { variant: 'fullScreen' } : {});
6015
+ var flexBasisTokenOrVar = slidesPerView === 1 ? 'full' : 'var(--carousel-slide-basis)';
6016
+ var basisVarResponsive = slidesPerView === 1
6017
+ ? undefined
6018
+ : (function () {
6019
+ var map = slidesPerView;
6020
+ var result = {};
6021
+ Object.keys(map).forEach(function (bp) {
6022
+ var value = map[bp];
6023
+ if (typeof value === 'number') {
6024
+ result[bp] = "calc(100% / ".concat(value, ")");
6025
+ }
6026
+ });
6027
+ return result;
6028
+ })();
6029
+ return (React.createElement(react$1.Box, { css: __assign(__assign({}, styles.slide), (basisVarResponsive
6030
+ ? { '--carousel-slide-basis': basisVarResponsive }
6031
+ : {})), flexBasis: flexBasisTokenOrVar, paddingLeft: slidesPerView === 1 ? '0' : { base: 'md', md: '2xl' }, onClick: onClick, "aria-roledescription": "slide", "aria-label": "".concat(slideIndex + 1, " of ").concat(totalSlides), "aria-current": isCurrent }, children));
6032
+ };
6033
+
6034
+ var NumbersPaginationButton = function (_a) {
6035
+ var onClick = _a.onClick, isCurrent = _a.isCurrent, currentPageNumber = _a.currentPageNumber, totalNumbers = _a.totalNumbers;
6036
+ var recipe = react$1.useSlotRecipe({ key: 'carousel' });
6037
+ var styles = recipe();
6038
+ return (React.createElement(react$1.chakra.button, { css: styles.numbersPaginationButton, onClick: onClick, "aria-current": isCurrent, "aria-label": "numbers pagination ".concat(currentPageNumber, " of ").concat(totalNumbers) }, currentPageNumber));
6039
+ };
6040
+
6041
+ var NumbersPagination = function (_a) {
6042
+ var currentSlideIndex = _a.currentSlideIndex, numberOfSlides = _a.numberOfSlides, mainCarousel = _a.mainCarousel;
6043
+ var onClick = React.useCallback(function (index) {
6044
+ if (mainCarousel) {
6045
+ mainCarousel.scrollTo(index);
6046
+ }
6047
+ }, [mainCarousel]);
6048
+ var pagination = Array.from({ length: numberOfSlides }, function (_, i) { return i; });
6049
+ return (React.createElement(react$1.Box, { "aria-label": "Numbers Pagination" },
6050
+ React.createElement(Flex, { flexDirection: "row", alignItems: "center", justifyContent: "center" }, pagination.map(function (index) { return (React.createElement(NumbersPaginationButton, { key: "slide-".concat(index), isCurrent: index === currentSlideIndex, currentPageNumber: index + 1, totalNumbers: numberOfSlides, onClick: function () { return onClick(index); } })); }))));
6051
+ };
6052
+
6053
+ var NavigationButton = function (_a) {
6054
+ var direction = _a.direction, onClick = _a.onClick, fullScreen = _a.fullScreen, _b = _a.isHovered, isHovered = _b === void 0 ? false : _b;
6055
+ var recipe = react$1.useSlotRecipe({ key: 'carousel' });
6056
+ var styles = recipe(fullScreen ? { variant: 'fullScreen' } : {});
6057
+ var side = direction === 'previous' ? { left: '0' } : { right: '0' };
6058
+ var icons = {
6059
+ previous: React.createElement(ChevronLeftLargeIcon, { boxSize: undefined, css: styles.icon }),
6060
+ next: React.createElement(ChevronRightLargeIcon, { boxSize: undefined, css: styles.icon }),
6061
+ };
6062
+ return (React.createElement(react$1.chakra.button, { onClick: onClick, "aria-label": "".concat(direction, " slide"), css: __assign(__assign(__assign({}, styles.buttonContainer), (isHovered ? { visibility: 'visible', pointerEvents: 'auto' } : {})), side) },
6063
+ React.createElement(Flex, { css: styles.button }, icons[direction])));
6064
+ };
6065
+
6066
+ var DotsPaginationIndicator = function (_a) {
6067
+ var isCurrent = _a.isCurrent;
6068
+ var recipe = react$1.useSlotRecipe({ key: 'carousel' });
6069
+ var styles = recipe();
6070
+ return (React.createElement(react$1.chakra.span, { "aria-current": isCurrent, css: styles.dotsPaginationIndicator }));
6071
+ };
6072
+
6073
+ var DotsPagination = function (_a) {
6074
+ var currentSlideIndex = _a.currentSlideIndex, numberOfSlides = _a.numberOfSlides;
6075
+ var pagination = Array.from({ length: numberOfSlides }, function (_, i) { return i; });
6076
+ var recipe = react$1.useSlotRecipe({ key: 'carousel' });
6077
+ var styles = recipe();
6078
+ return (React.createElement(react$1.Box, { "aria-label": "Dots Pagination", css: styles.dotsPaginationContainer },
6079
+ React.createElement(Flex, { flexDirection: "row", alignItems: "center", justifyContent: "center" }, pagination.map(function (index) { return (React.createElement(DotsPaginationIndicator, { key: "slide-".concat(index), isCurrent: index === currentSlideIndex })); }))));
6080
+ };
6081
+
6082
+ exports.PaginationType = void 0;
6083
+ (function (PaginationType) {
6084
+ PaginationType["Thumbnail"] = "thumbnail";
6085
+ PaginationType["Number"] = "number";
6086
+ PaginationType["None"] = "none";
6087
+ PaginationType["Dot"] = "dot";
6088
+ })(exports.PaginationType || (exports.PaginationType = {}));
6089
+ var isFullScreenSlide = function (value) {
6090
+ return typeof value === 'object' && value !== null && 'slide' in value;
6091
+ };
6092
+ // eslint-disable-next-line sonarjs/cognitive-complexity
6093
+ var Carousel = function (props) {
6094
+ var _a;
6095
+ var _b;
6096
+ var _c = props.startIndex, startIndex = _c === void 0 ? 0 : _c, onSlideClick = props.onSlideClick, onSlideSelect = props.onSlideSelect, fullScreen = props.fullScreen, _d = props.paginationType, paginationType = _d === void 0 ? exports.PaginationType.None : _d, _e = props.slidesPerView, slidesPerView = _e === void 0 ? 1 : _e, _f = props.loop, loop = _f === void 0 ? true : _f, _g = props.slidesToScroll, slidesToScroll = _g === void 0 ? 1 : _g;
6097
+ var _h = React.useState(loop), canScrollPrevious = _h[0], setCanScrollPrevious = _h[1];
6098
+ var _j = React.useState(loop), canScrollNext = _j[0], setCanScrollNext = _j[1];
6099
+ var _k = React.useState(startIndex), selectedIndex = _k[0], setSelectedIndex = _k[1];
6100
+ var isSmallLandscapeViewport = react$1.useMediaQuery(["(max-height: ".concat(breakpoints.sm.px, "px) and (orientation: landscape)")], {
6101
+ ssr: true,
6102
+ fallback: [false],
6103
+ })[0];
6104
+ var recipe = react$1.useSlotRecipe({ key: 'carousel' });
6105
+ var styles = recipe(fullScreen ? { variant: 'fullScreen' } : {});
6106
+ var _l = useEmblaCarousel({
6107
+ loop: loop,
6108
+ startIndex: startIndex,
6109
+ duration: 20,
6110
+ align: 'start',
6111
+ slidesToScroll: slidesToScroll,
6112
+ }), mainCarouselRef = _l[0], mainCarousel = _l[1];
6113
+ var _m = useEmblaCarousel({
6114
+ containScroll: 'keepSnaps',
6115
+ dragFree: true,
6116
+ slidesToScroll: 'auto',
6117
+ inViewThreshold: 1,
6118
+ duration: 20,
6119
+ }), paginationCarouselRef = _m[0], paginationCarousel = _m[1];
6120
+ var scrollPrev = React.useCallback(function () { return mainCarousel && mainCarousel.scrollPrev(true); }, [mainCarousel]);
6121
+ var scrollNext = React.useCallback(function () { return mainCarousel && mainCarousel.scrollNext(true); }, [mainCarousel]);
6122
+ var onClick = React.useCallback(function (index) {
6123
+ if (onSlideClick) {
6124
+ onSlideClick(index);
6125
+ }
6126
+ }, [onSlideClick]);
6127
+ var numberOfSlides = props.children.length;
6128
+ var hasThumbnailPagination = fullScreen && !isSmallLandscapeViewport;
6129
+ var onSelect = React.useCallback(function () {
6130
+ var _a, _b;
6131
+ if (!mainCarousel)
6132
+ return;
6133
+ var newIndex = mainCarousel.selectedScrollSnap();
6134
+ var previousIndex = mainCarousel.previousScrollSnap();
6135
+ setSelectedIndex(newIndex);
6136
+ setCanScrollPrevious(mainCarousel.canScrollPrev());
6137
+ setCanScrollNext(mainCarousel.canScrollNext());
6138
+ if (paginationCarousel && hasThumbnailPagination) {
6139
+ var slideRegistry = paginationCarousel.internalEngine().slideRegistry;
6140
+ var snapIndexThatSlideBelongsTo = slideRegistry.findIndex(function (group) {
6141
+ return group.includes(newIndex);
6142
+ });
6143
+ if (typeof snapIndexThatSlideBelongsTo !== 'undefined') {
6144
+ paginationCarousel.scrollTo(snapIndexThatSlideBelongsTo);
6145
+ }
6146
+ }
6147
+ if (onSlideSelect) {
6148
+ onSlideSelect(newIndex);
6149
+ }
6150
+ if (!props.fullScreen) {
6151
+ return;
6152
+ }
6153
+ var fullScreenChildren = props.children;
6154
+ if (newIndex !== undefined) {
6155
+ var currentSlide = fullScreenChildren[newIndex];
6156
+ (_a = currentSlide === null || currentSlide === void 0 ? void 0 : currentSlide.onSlideEnter) === null || _a === void 0 ? void 0 : _a.call(currentSlide);
6157
+ }
6158
+ if (previousIndex !== undefined && previousIndex !== newIndex) {
6159
+ var previousSlide = fullScreenChildren[previousIndex];
6160
+ (_b = previousSlide === null || previousSlide === void 0 ? void 0 : previousSlide.onSlideLeave) === null || _b === void 0 ? void 0 : _b.call(previousSlide);
6161
+ }
6162
+ }, [
6163
+ mainCarousel,
6164
+ paginationCarousel,
6165
+ onSlideSelect,
6166
+ hasThumbnailPagination,
6167
+ props.children,
6168
+ props.fullScreen,
6169
+ ]);
6170
+ React.useEffect(function () {
6171
+ if (!mainCarousel)
6172
+ return;
6173
+ onSelect();
6174
+ mainCarousel.on('select', onSelect);
6175
+ }, [mainCarousel, onSelect]);
6176
+ React.useEffect(function () {
6177
+ var keydownListener = function (e) {
6178
+ if (fullScreen) {
6179
+ switch (e.code) {
6180
+ case 'ArrowRight':
6181
+ scrollNext();
6182
+ break;
6183
+ case 'ArrowLeft':
6184
+ scrollPrev();
6185
+ break;
6186
+ }
6187
+ }
6188
+ };
6189
+ document.addEventListener('keydown', keydownListener);
6190
+ return function () { return document.removeEventListener('keydown', keydownListener); };
6191
+ }, [fullScreen, scrollNext, scrollPrev]);
6192
+ var prerenderFallbackSlide = startIndex !== 0 && !mainCarouselRef;
6193
+ var carouselHeightByPaginationTypeMap = (_a = {},
6194
+ _a[exports.PaginationType.None] = '100%',
6195
+ _a[exports.PaginationType.Dot] = '100%',
6196
+ _a[exports.PaginationType.Thumbnail] = 'calc(100% - var(--carousel-pagination-height))',
6197
+ _a[exports.PaginationType.Number] = 'calc(100% - var(--carousel-numbers-pagination-height))',
6198
+ _a);
6199
+ var carouselHeightCssVarValue = hasThumbnailPagination
6200
+ ? carouselHeightByPaginationTypeMap[exports.PaginationType.Thumbnail]
6201
+ : carouselHeightByPaginationTypeMap[paginationType];
6202
+ var _o = React.useState(false), isHovered = _o[0], setIsHovered = _o[1];
6203
+ return (React.createElement(react$1.Box, { css: styles.container, "data-group": true },
6204
+ prerenderFallbackSlide ? (React.createElement(Slide, { slideIndex: startIndex, onClick: function () { return onClick(startIndex); }, totalSlides: numberOfSlides, isCurrent: startIndex === selectedIndex, fullScreen: !!fullScreen, slidesPerView: slidesPerView }, props.fullScreen
6205
+ ? (_b = props.children[startIndex]) === null || _b === void 0 ? void 0 : _b.slide
6206
+ : props.children[startIndex])) : (React.createElement(react$1.Box, { ref: mainCarouselRef, "aria-label": "Carousel", "aria-roledescription": "Carousel", role: "group", "data-group": true, onMouseEnter: function () { return setIsHovered(true); }, onMouseLeave: function () { return setIsHovered(false); }, height: 'var(--carousel-height)', css: __assign(__assign({}, styles.carousel), { '--carousel-height': carouselHeightCssVarValue }) },
6207
+ React.createElement(Flex, { css: styles.slideContainer, marginLeft: slidesPerView === 1 ? '0' : { base: '-md', md: '-2xl' } }, props.children.map(function (slide, index) { return (React.createElement(Slide, { key: "slide-".concat(index), slideIndex: index, onClick: function () { return onClick(index); }, totalSlides: numberOfSlides, isCurrent: index === selectedIndex, fullScreen: !!fullScreen, slidesPerView: slidesPerView }, isFullScreenSlide(slide) ? slide.slide : slide)); })),
6208
+ canScrollPrevious ? (React.createElement(NavigationButton, { onClick: scrollPrev, direction: "previous", fullScreen: !!fullScreen, isHovered: isHovered || (!!fullScreen && !isSmallLandscapeViewport) })) : null,
6209
+ canScrollNext ? (React.createElement(NavigationButton, { onClick: scrollNext, direction: "next", fullScreen: !!fullScreen, isHovered: isHovered || (!!fullScreen && !isSmallLandscapeViewport) })) : null,
6210
+ paginationType === exports.PaginationType.Dot ? (React.createElement(DotsPagination, { currentSlideIndex: selectedIndex, numberOfSlides: props.children.length })) : null)),
6211
+ hasThumbnailPagination ? (React.createElement(ThumbnailPagination, { currentSlideIndex: selectedIndex, thumbnails: props.children.map(function (slide) { return slide.thumbnail; }), mainCarousel: mainCarousel, paginationCarousel: paginationCarousel, paginationCarouselRef: paginationCarouselRef })) : null,
6212
+ paginationType === exports.PaginationType.Number ? (React.createElement(NumbersPagination, { mainCarousel: mainCarousel, currentSlideIndex: selectedIndex, numberOfSlides: props.children.length })) : null));
6213
+ };
6214
+
6215
+ var ColorPicker = React.forwardRef(function (_a, ref) {
6216
+ var _b = _a.width, width = _b === void 0 ? 'md' : _b, _c = _a.height, height = _c === void 0 ? 'md' : _c, _d = _a.padding, padding = _d === void 0 ? '0' : _d, _e = _a.backgroundColor, backgroundColor = _e === void 0 ? 'whiteAlpha.100' : _e, invalid = _a.invalid, rest = __rest(_a, ["width", "height", "padding", "backgroundColor", "invalid"]);
6217
+ return (React.createElement(react$1.Field.Root, { invalid: invalid },
6218
+ React.createElement(react$1.Input, __assign({}, rest, { ref: ref, type: "color", width: width, height: height, padding: padding, backgroundColor: backgroundColor, cursor: "pointer", _invalid: { borderColor: 'red.500' } }))));
6219
+ });
6220
+ ColorPicker.displayName = 'ColorPicker';
6221
+
6222
+ var Collapse = function (_a) {
6223
+ var isOpen = _a.in, animateOpacity = _a.animateOpacity, rest = __rest(_a, ["in", "animateOpacity"]);
6224
+ var animationProps = animateOpacity
6225
+ ? { _open: { animation: 'fade-in' } }
6226
+ : {};
6227
+ return (React.createElement(react$1.Collapsible.Root, __assign({ open: isOpen }, rest, animationProps),
6228
+ React.createElement(react$1.Collapsible.Content, null, "Some content")));
6229
+ };
6230
+
5700
6231
  var Center = function (_a) {
5701
6232
  var children = _a.children, padding = _a.padding;
5702
6233
  return (React.createElement(react$1.Center, { padding: padding }, children));
@@ -5728,6 +6259,31 @@ var CheckboxGroup = function (_a) {
5728
6259
  };
5729
6260
  CheckboxGroup.displayName = 'CheckboxGroup';
5730
6261
 
6262
+ var Chip = function (_a) {
6263
+ var children = _a.children, onClick = _a.onClick, href = _a.href, ariaLabel = _a["aria-label"], rest = __rest(_a, ["children", "onClick", "href", 'aria-label']);
6264
+ var recipe = react$1.useRecipe({ recipe: chipRecipe });
6265
+ var recipeProps = recipe.splitVariantProps(rest)[0];
6266
+ var styles = recipe(recipeProps);
6267
+ var handleClick = function () {
6268
+ onClick === null || onClick === void 0 ? void 0 : onClick();
6269
+ };
6270
+ var handleKeyDown = function (event) {
6271
+ if (event.key === 'Enter' || event.key === ' ') {
6272
+ event.preventDefault();
6273
+ onClick === null || onClick === void 0 ? void 0 : onClick();
6274
+ }
6275
+ };
6276
+ var commonProps = __assign({ css: styles, 'aria-label': ariaLabel }, rest);
6277
+ var isLink = Boolean(href);
6278
+ var asType = isLink ? 'a' : 'button';
6279
+ return (React.createElement(react$1.Flex, __assign({ as: asType }, (isLink && onClick ? { href: href } : {}), (!isLink ? { type: 'button' } : {}), { onClick: handleClick, onKeyDown: handleKeyDown }, commonProps),
6280
+ recipeProps.selected ? (React.createElement(react$1.Box, { mx: "xs", color: "currentColor", display: "flex", alignItems: "center", justifyContent: "center" },
6281
+ React.createElement(CheckmarkIcon, { height: "xs", width: "xs" }))) : null,
6282
+ React.createElement(react$1.Box, { as: "span", whiteSpace: "nowrap" },
6283
+ React.createElement(react$1.Text, { textStyle: "body-small" }, children))));
6284
+ };
6285
+ Chip.displayName = 'Chip';
6286
+
5731
6287
  var Count = function (_a) {
5732
6288
  var count = _a.count, ariaLabel = _a.ariaLabel, props = __rest(_a, ["count", "ariaLabel"]);
5733
6289
  var recipe = react$1.useRecipe({ key: 'count' });
@@ -5848,6 +6404,46 @@ var Dialog = function (_a) {
5848
6404
  primaryActionButton ? (React.createElement(Button, { variant: "primary", onClick: primaryActionButton.action, width: { base: 'full', sm: 'fit' } }, primaryActionButton.label)) : null))))))));
5849
6405
  };
5850
6406
 
6407
+ var emptyItemOffset = 0;
6408
+ var firstItemOffset = 1;
6409
+ var getItemOffset = function (applyIndentation) {
6410
+ return applyIndentation ? firstItemOffset : emptyItemOffset;
6411
+ };
6412
+ var getSliderStepValue = function (marks, applyIndentation, value) {
6413
+ var selectedMarkIndex = marks.findIndex(function (mark) { return mark.value === value; });
6414
+ if (selectedMarkIndex < emptyItemOffset) {
6415
+ return getItemOffset(applyIndentation);
6416
+ }
6417
+ return selectedMarkIndex + getItemOffset(applyIndentation);
6418
+ };
6419
+ var getSliderMarks = function (marks, applyIndentation) {
6420
+ return marks.map(function (mark, index) { return (__assign(__assign({}, mark), { stepValue: index + getItemOffset(applyIndentation) })); });
6421
+ };
6422
+ var DiscreteSlider = function (_a) {
6423
+ var marks = _a.marks, _b = _a.applyIndentation, applyIndentation = _b === void 0 ? true : _b, onValueChanged = _a.onValueChanged, value = _a.value;
6424
+ var sliderStepValue = getSliderStepValue(marks, applyIndentation, value);
6425
+ var sliderMarks = getSliderMarks(marks, applyIndentation);
6426
+ var handleOnChange = function (newStepValue) {
6427
+ var _a;
6428
+ if (applyIndentation && newStepValue < firstItemOffset)
6429
+ return;
6430
+ var newSliderMark = (_a = sliderMarks.find(function (mark) { return mark.stepValue === newStepValue; })) === null || _a === void 0 ? void 0 : _a.value;
6431
+ onValueChanged(newSliderMark);
6432
+ };
6433
+ return (React.createElement(react$1.Slider.Root, { step: 1, max: sliderMarks.length - 1 + getItemOffset(applyIndentation), value: [sliderStepValue], onValueChange: function (details) { var _a; return handleOnChange((_a = details.value[0]) !== null && _a !== void 0 ? _a : sliderStepValue); } },
6434
+ React.createElement(react$1.Slider.Control, null,
6435
+ React.createElement(react$1.Slider.Track, null,
6436
+ React.createElement(react$1.Slider.Range, null)),
6437
+ React.createElement(react$1.Slider.Thumbs, null),
6438
+ React.createElement(react$1.Slider.MarkerGroup, null, sliderMarks.map(function (_a, index) {
6439
+ var stepValue = _a.stepValue, label = _a.label;
6440
+ return (React.createElement(react$1.Slider.Marker, { key: index, value: stepValue, style: {
6441
+ pointerEvents: 'all',
6442
+ fontWeight: sliderStepValue === stepValue ? 'bold' : 'normal',
6443
+ } }, label));
6444
+ })))));
6445
+ };
6446
+
5851
6447
  var DrawerOverlay = function (props) {
5852
6448
  return React.createElement(react$1.Drawer.Backdrop, __assign({}, props));
5853
6449
  };
@@ -5875,11 +6471,6 @@ var Drawer = function (props) {
5875
6471
  var Text = react$1.Text;
5876
6472
  Text.displayName = 'Text';
5877
6473
 
5878
- var Flex = function (_a) {
5879
- var children = _a.children, rest = __rest(_a, ["children"]);
5880
- return (React.createElement(react$1.Flex, __assign({}, rest), children));
5881
- };
5882
-
5883
6474
  var EnergyLabel = function (props) {
5884
6475
  var efficiency = props.efficiency;
5885
6476
  var recipe = react$1.useSlotRecipe({ key: 'energyLabel' });
@@ -5891,6 +6482,9 @@ var EnergyLabel = function (props) {
5891
6482
  React.createElement(Text, { css: styles.text }, efficiency.toString()))));
5892
6483
  };
5893
6484
 
6485
+ var _a$2;
6486
+ var useI18n = (_a$2 = i18nPkg.createI18nScope(), _a$2.useI18n), I18nProvider = _a$2.I18nProvider, Trans = _a$2.Trans;
6487
+
5894
6488
  var auth$3 = {
5895
6489
  tenantSelection: {
5896
6490
  description: "Puoi passare a un altro garage più tardi nel tuo portale rivenditori.",
@@ -6752,13 +7346,23 @@ var logger = new Logger();
6752
7346
 
6753
7347
  var TranslationProvider = function (_a) {
6754
7348
  var language = _a.language, scopes = _a.scopes, children = _a.children;
6755
- return (React.createElement(i18nPkg.I18nProvider, { language: language, lngDict: i18nPkg.filterDictionaryScopes({
7349
+ return (React.createElement(I18nProvider, { language: language, lngDict: i18nPkg.filterDictionaryScopes({
6756
7350
  dictionaries: dictionaries,
6757
7351
  language: language,
6758
7352
  dictionaryScopes: scopes,
6759
7353
  }), onMissingTranslation: logger.onMissingTranslation }, children));
6760
7354
  };
6761
7355
 
7356
+ function withTranslationProvider(scopes) {
7357
+ return function (WrappedComponent) {
7358
+ return function (props) {
7359
+ var language = props.language;
7360
+ return (React.createElement(TranslationProvider, { language: language, scopes: scopes },
7361
+ React.createElement(WrappedComponent, __assign({}, props))));
7362
+ };
7363
+ };
7364
+ }
7365
+
6762
7366
  var SimpleGrid = function (props) { return React.createElement(react$1.SimpleGrid, __assign({}, props)); };
6763
7367
 
6764
7368
  var BaseLayout = function (_a) {
@@ -6788,19 +7392,6 @@ var img$6 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAAEqBAMAAADJwBvsA
6788
7392
 
6789
7393
  var img$5 = "data:image/png;base64,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";
6790
7394
 
6791
- var EmailChangeVerificationErrorContent = function () {
6792
- return (React.createElement(react$1.Box, { width: "full" },
6793
- React.createElement("p", null,
6794
- React.createElement(i18nPkg.Trans, { i18nKey: "errorPage.EMAIL_CHANGE_VERIFICATION_ERROR.content.email" },
6795
- React.createElement("strong", null))),
6796
- React.createElement("p", null,
6797
- React.createElement(i18nPkg.Trans, { i18nKey: "errorPage.EMAIL_CHANGE_VERIFICATION_ERROR.content.workingHours" },
6798
- React.createElement("strong", null))),
6799
- React.createElement("p", null,
6800
- React.createElement(i18nPkg.Trans, { i18nKey: "errorPage.EMAIL_CHANGE_VERIFICATION_ERROR.content.phone" },
6801
- React.createElement("strong", null)))));
6802
- };
6803
-
6804
7395
  var ContactSupport = function (_a) {
6805
7396
  var t = _a.t, _b = _a.language, language = _b === void 0 ? 'de' : _b;
6806
7397
  var languageToUse = language === 'en' ? 'de' : language;
@@ -6843,6 +7434,19 @@ var BackToHomepagePrimary = function (props) {
6843
7434
  return React.createElement(BackToHomepage, __assign({}, props, { variant: "primary" }));
6844
7435
  };
6845
7436
 
7437
+ var EmailChangeVerificationErrorContent = function () {
7438
+ return (React.createElement(react$1.Box, { width: "full" },
7439
+ React.createElement("p", null,
7440
+ React.createElement(Trans, { i18nKey: "errorPage.EMAIL_CHANGE_VERIFICATION_ERROR.content.email" },
7441
+ React.createElement("strong", null))),
7442
+ React.createElement("p", null,
7443
+ React.createElement(Trans, { i18nKey: "errorPage.EMAIL_CHANGE_VERIFICATION_ERROR.content.workingHours" },
7444
+ React.createElement("strong", null))),
7445
+ React.createElement("p", null,
7446
+ React.createElement(Trans, { i18nKey: "errorPage.EMAIL_CHANGE_VERIFICATION_ERROR.content.phone" },
7447
+ React.createElement("strong", null)))));
7448
+ };
7449
+
6846
7450
  var Nonce = function () {
6847
7451
  return null;
6848
7452
  };
@@ -6904,75 +7508,111 @@ var config = {
6904
7508
  secondaryAction: Nonce,
6905
7509
  },
6906
7510
  };
6907
- var ErrorPage = function (_a) {
7511
+ var ErrorPageContent = function (_a) {
6908
7512
  var statusCode = _a.statusCode, language = _a.language, onButtonClick = _a.onButtonClick;
6909
7513
  var PrimaryAction = config[statusCode].primaryAction;
6910
7514
  var SecondaryAction = config[statusCode].secondaryAction;
6911
7515
  var Content = config[statusCode].content;
6912
- return (React.createElement(TranslationProvider, { language: language, scopes: ['errorPage'] },
6913
- React.createElement(i18nPkg.I18nContext.Consumer, null, function (_a) {
6914
- var t = _a.t;
6915
- var actionButtonProps = {
6916
- t: t,
6917
- language: language,
6918
- };
6919
- return (React.createElement(PageLayout, { maxContentWidth: "md", header: null },
6920
- React.createElement(Flex, { justifyContent: "center", pt: { base: '3xl', md: 'xl' } },
6921
- React.createElement(Stack, { align: "center", gap: "4xl" },
6922
- React.createElement(SimpleGrid, { columns: 2, gap: "4xl" },
6923
- React.createElement(AutoScout24AppLogo, { width: "2xl", height: "xl" }),
6924
- React.createElement(MotoScout24AppLogo, { width: "2xl", height: "xl" })),
6925
- React.createElement(Separator, { orientation: "horizontal" }),
6926
- React.createElement(Stack, { align: "center", gap: "2xl" },
6927
- React.createElement(AspectRatio, { ratio: 4 / 3, css: { maxWidth: '400px', width: 'full' } },
6928
- React.createElement(react$1.chakra.img, { src: config[statusCode].illustration, alt: "a ".concat(statusCode, " error occurred.") })),
6929
- React.createElement(Stack, { align: "center", gap: "md" },
6930
- React.createElement(H1, { textAlign: "center" }, t("errorPage.".concat(statusCode, ".title"))),
6931
- React.createElement(Text, { textAlign: "center" }, t("errorPage.".concat(statusCode, ".description"))),
6932
- React.createElement(Content, __assign({}, actionButtonProps))),
6933
- React.createElement(SimpleGrid, { columns: {
6934
- base: 1,
6935
- sm: config[statusCode].buttonColumns,
6936
- }, alignItems: "center", gap: "md" },
6937
- React.createElement(PrimaryAction, __assign({}, actionButtonProps)),
6938
- React.createElement(SecondaryAction, __assign({}, actionButtonProps, { onButtonClick: onButtonClick }))))))));
6939
- })));
6940
- };
6941
-
6942
- var FullHeight = function (_a) {
6943
- var children = _a.children;
6944
- return (React.createElement(react$1.Box, { minHeight: "screen-height", height: "screen-height" }, children));
7516
+ var t = useI18n().t;
7517
+ var actionButtonProps = {
7518
+ t: t,
7519
+ language: language,
7520
+ };
7521
+ return (React.createElement(PageLayout, { maxContentWidth: "md", header: null },
7522
+ React.createElement(Flex, { justifyContent: "center", pt: { base: '3xl', md: 'xl' } },
7523
+ React.createElement(Stack, { align: "center", gap: "4xl" },
7524
+ React.createElement(SimpleGrid, { columns: 2, gap: "4xl" },
7525
+ React.createElement(AutoScout24AppLogo, { width: "2xl", height: "xl" }),
7526
+ React.createElement(MotoScout24AppLogo, { width: "2xl", height: "xl" })),
7527
+ React.createElement(Separator, { orientation: "horizontal" }),
7528
+ React.createElement(Stack, { align: "center", gap: "2xl" },
7529
+ React.createElement(AspectRatio, { ratio: 4 / 3, css: { maxWidth: '400px', width: 'full' } },
7530
+ React.createElement(react$1.chakra.img, { src: config[statusCode].illustration, alt: "a ".concat(statusCode, " error occurred.") })),
7531
+ React.createElement(Stack, { align: "center", gap: "md" },
7532
+ React.createElement(H1, { textAlign: "center" }, t("errorPage.".concat(statusCode, ".title"))),
7533
+ React.createElement(Text, { textAlign: "center" }, t("errorPage.".concat(statusCode, ".description"))),
7534
+ React.createElement(Content, __assign({}, actionButtonProps))),
7535
+ React.createElement(SimpleGrid, { columns: {
7536
+ base: 1,
7537
+ sm: config[statusCode].buttonColumns,
7538
+ }, alignItems: "center", gap: "md" },
7539
+ React.createElement(PrimaryAction, __assign({}, actionButtonProps)),
7540
+ React.createElement(SecondaryAction, __assign({}, actionButtonProps, { onButtonClick: onButtonClick }))))))));
6945
7541
  };
6946
7542
 
6947
- var Link$1 = function (_a) {
6948
- var isExternal = _a.isExternal, target = _a.target, rel = _a.rel, props = __rest(_a, ["isExternal", "target", "rel"]);
6949
- return (React.createElement(react$1.Link, __assign({ target: target || (isExternal ? '_blank' : undefined), rel: rel || (isExternal ? 'noopener noreferrer' : undefined) }, props)));
6950
- };
7543
+ var ErrorPage = withTranslationProvider([
7544
+ 'errorPage',
7545
+ ])(ErrorPageContent);
6951
7546
 
6952
- var GalleryHeader = function (_a) {
6953
- var currentSlide = _a.currentSlide, slidesCount = _a.slidesCount, onClose = _a.onClose, language = _a.language, children = _a.children;
7547
+ var Tooltip = function (_a) {
7548
+ var children = _a.children, _b = _a.placement, placement = _b === void 0 ? 'bottom' : _b, _c = _a.maxWidth, maxWidth = _c === void 0 ? '6xl' : _c, label = _a.label;
7549
+ var _d = React.useState(false), isOpen = _d[0], setIsOpen = _d[1];
7550
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
7551
+ var childrenWithProps = React.cloneElement(children, {
7552
+ onMouseEnter: function () { return setIsOpen(true); },
7553
+ onMouseLeave: function () { return setIsOpen(false); },
7554
+ onClick: function () { return setIsOpen(true); },
7555
+ });
7556
+ return (React.createElement(react$1.TooltipRoot, { positioning: {
7557
+ placement: placement,
7558
+ }, open: isOpen },
7559
+ React.createElement(react$1.TooltipTrigger, { asChild: true }, childrenWithProps),
7560
+ React.createElement(react$1.TooltipPositioner, null,
7561
+ React.createElement(react$1.TooltipContent, { maxWidth: maxWidth },
7562
+ React.createElement(react$1.TooltipArrow, null,
7563
+ React.createElement(react$1.TooltipArrowTip, null)),
7564
+ label))));
7565
+ };
7566
+
7567
+ var FormControlSection = function (_a) {
7568
+ var children = _a.children, errorMessage = _a.errorMessage, id = _a.id, label = _a.label, hint = _a.hint, tooltip = _a.tooltip;
7569
+ var isInvalid = !!errorMessage;
7570
+ return (React.createElement(react$1.Field.Root, { id: id, invalid: isInvalid },
7571
+ React.createElement(react$1.Box, { border: "1px", borderRadius: "sm", borderColor: isInvalid ? 'red.500' : 'gray.400', padding: "2xl" },
7572
+ React.createElement(Flex, { flexDirection: "column" },
7573
+ React.createElement(react$1.Box, { mb: "lg" },
7574
+ React.createElement(Flex, { alignItems: "center" },
7575
+ label ? (React.createElement(Text, { color: "gray.900", textStyle: "heading4" }, label)) : null,
7576
+ tooltip ? (React.createElement(Tooltip, { label: tooltip },
7577
+ React.createElement(InformationIcon, { ml: "md" }))) : null),
7578
+ hint ? (React.createElement(Text, { color: "gray.900", textStyle: "body" }, hint)) : null),
7579
+ children)),
7580
+ React.createElement(react$1.Field.ErrorText, null, errorMessage)));
7581
+ };
7582
+
7583
+ var FullHeight = function (_a) {
7584
+ var children = _a.children;
7585
+ return (React.createElement(react$1.Box, { minHeight: "screen-height", height: "screen-height" }, children));
7586
+ };
7587
+
7588
+ var Link$1 = function (_a) {
7589
+ var isExternal = _a.isExternal, target = _a.target, rel = _a.rel, props = __rest(_a, ["isExternal", "target", "rel"]);
7590
+ return (React.createElement(react$1.Link, __assign({ target: target || (isExternal ? '_blank' : undefined), rel: rel || (isExternal ? 'noopener noreferrer' : undefined) }, props)));
7591
+ };
7592
+
7593
+ var GalleryHeaderContent = function (_a) {
7594
+ var currentSlide = _a.currentSlide, slidesCount = _a.slidesCount, onClose = _a.onClose, children = _a.children;
7595
+ var t = useI18n().t;
6954
7596
  var recipe = react$1.useSlotRecipe({ key: 'galleryHeader' });
6955
7597
  var styles = recipe();
6956
- return (React.createElement(TranslationProvider, { language: language, scopes: ['galleryHeader'] },
6957
- React.createElement(i18nPkg.I18nContext.Consumer, null, function (_a) {
6958
- var t = _a.t;
6959
- return (React.createElement(react$1.Box, { css: styles.container },
6960
- React.createElement(react$1.Box, { css: styles.grid },
6961
- React.createElement(SimpleGrid, { columns: {
6962
- base: 2,
6963
- md: 3,
6964
- }, alignItems: "center" },
6965
- React.createElement(react$1.Box, { hideBelow: "md" }, children),
6966
- React.createElement(react$1.Box, { css: styles.countContainer },
6967
- React.createElement(react$1.Box, null, t('galleryHeader.imageCount', {
6968
- x: currentSlide,
6969
- of: slidesCount,
6970
- }))),
6971
- React.createElement(react$1.Box, { css: styles.closeContainer },
6972
- React.createElement(Link$1, { "aria-label": "Close gallery", onClick: function () { return onClose(); } },
6973
- React.createElement(CloseIcon, { color: "white" })))))));
6974
- })));
6975
- };
7598
+ return (React.createElement(react$1.Box, { css: styles.container },
7599
+ React.createElement(react$1.Box, { css: styles.grid },
7600
+ React.createElement(SimpleGrid, { columns: {
7601
+ base: 2,
7602
+ md: 3,
7603
+ }, alignItems: "center" },
7604
+ React.createElement(react$1.Box, { hideBelow: "md" }, children),
7605
+ React.createElement(react$1.Box, { css: styles.countContainer },
7606
+ React.createElement(react$1.Box, null, t('galleryHeader.imageCount', {
7607
+ x: currentSlide,
7608
+ of: slidesCount,
7609
+ }))),
7610
+ React.createElement(react$1.Box, { css: styles.closeContainer },
7611
+ React.createElement(Link$1, { "aria-label": "Close gallery", onClick: function () { return onClose(); } },
7612
+ React.createElement(CloseIcon, { color: "white" })))))));
7613
+ };
7614
+
7615
+ var GalleryHeader = withTranslationProvider(['galleryHeader'])(GalleryHeaderContent);
6976
7616
 
6977
7617
  var Grid = react$1.Grid;
6978
7618
  Grid.displayName = 'Grid';
@@ -7152,30 +7792,183 @@ var List = {
7152
7792
  Item: Item,
7153
7793
  };
7154
7794
 
7155
- var Chip = function (_a) {
7156
- var children = _a.children, onClick = _a.onClick, href = _a.href, ariaLabel = _a["aria-label"], rest = __rest(_a, ["children", "onClick", "href", 'aria-label']);
7157
- var recipe = react$1.useRecipe({ recipe: chipRecipe });
7158
- var recipeProps = recipe.splitVariantProps(rest)[0];
7159
- var styles = recipe(recipeProps);
7160
- var handleClick = function () {
7161
- onClick === null || onClick === void 0 ? void 0 : onClick();
7162
- };
7163
- var handleKeyDown = function (event) {
7164
- if (event.key === 'Enter' || event.key === ' ') {
7165
- event.preventDefault();
7166
- onClick === null || onClick === void 0 ? void 0 : onClick();
7795
+ var SearchField = function (_a) {
7796
+ var name = _a.name, _b = _a.placeholder, placeholder = _b === void 0 ? '' : _b, _c = _a.ariaControls, ariaControls = _c === void 0 ? '' : _c, searchQuery = _a.searchQuery, setSearchQuery = _a.setSearchQuery, _d = _a.onFocus, onFocus = _d === void 0 ? function () { return null; } : _d, _e = _a.onBlur, onBlur = _e === void 0 ? function () { return null; } : _e, _f = _a.autofocusOnDesktop, autofocusOnDesktop = _f === void 0 ? true : _f, autoComplete = _a.autoComplete;
7797
+ var isDesktopOnly = useMediaQuery({ above: 'md' });
7798
+ var inputRef = React.useRef(null);
7799
+ React.useEffect(function () {
7800
+ var _a;
7801
+ if (autofocusOnDesktop && isDesktopOnly) {
7802
+ (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
7167
7803
  }
7804
+ }, [isDesktopOnly, autofocusOnDesktop]);
7805
+ return (React.createElement(Input, { ref: inputRef, icon: MagnifierIcon, name: name, placeholder: placeholder, value: searchQuery, setInputValue: setSearchQuery, size: "lg", isClearable: true, debounce: true, onFocus: onFocus, onBlur: onBlur, "aria-controls": ariaControls, autoComplete: autoComplete }));
7806
+ };
7807
+
7808
+ var HighlightedText = function (_a) {
7809
+ var text = _a.text, _b = _a.highlightIndices, highlightIndices = _b === void 0 ? [] : _b, textProps = __rest(_a, ["text", "highlightIndices"]);
7810
+ if (highlightIndices.length === 0)
7811
+ return (React.createElement(Text, __assign({ as: "span" }, textProps), text));
7812
+ var result = [];
7813
+ var currentIndex = 0;
7814
+ for (var _i = 0, highlightIndices_1 = highlightIndices; _i < highlightIndices_1.length; _i++) {
7815
+ var _c = highlightIndices_1[_i], start = _c[0], end = _c[1];
7816
+ // Append the non-matching part
7817
+ result.push(React.createElement(Text, __assign({ key: "non-highlight-".concat(currentIndex, "-").concat(start, "-").concat(text), as: "span" }, textProps), text.substring(currentIndex, start)));
7818
+ // Append the matching part
7819
+ result.push(React.createElement(Text, __assign({ key: "highlight-".concat(start, "-").concat(end + 1, "-").concat(text), as: "u", fontWeight: "bold" }, textProps), text.substring(start, end + 1)));
7820
+ currentIndex = end + 1;
7821
+ }
7822
+ // Append the remaining non-matching part
7823
+ result.push(React.createElement(Text, __assign({ key: "non-highlight-end-".concat(text), as: "span" }, textProps), text.substring(currentIndex)));
7824
+ return (React.createElement(Text, __assign({ as: "span" }, textProps), result));
7825
+ };
7826
+
7827
+ var SearchableListItemLabel = function (_a) {
7828
+ var label = _a.label, isSelected = _a.isSelected, _b = _a.showChevron, showChevron = _b === void 0 ? true : _b, _c = _a.highlightIndices, highlightIndices = _c === void 0 ? [] : _c, _d = _a.isCheckbox, isCheckbox = _d === void 0 ? false : _d, facet = _a.facet;
7829
+ return (React.createElement(Flex, { width: "full", justifyContent: "space-between", whiteSpace: "pre-wrap", fontWeight: isSelected && !isCheckbox ? 'bold' : undefined, color: "gray.900", cursor: "pointer" },
7830
+ React.createElement(Flex, null,
7831
+ isSelected && !isCheckbox ? (React.createElement(CheckmarkIcon, { w: "xs", mr: "xs", color: "gray.900" })) : null,
7832
+ React.createElement(HighlightedText, { text: label, highlightIndices: highlightIndices, textAlign: "left" })),
7833
+ React.createElement(Flex, { as: "span" },
7834
+ facet ? (React.createElement(Text, { as: "span", color: "gray.400", mr: showChevron ? 'lg' : undefined, ml: "sm", minW: "lg", textAlign: "right", fontWeight: "regular" }, facet)) : null,
7835
+ showChevron ? (React.createElement(ChevronRightSmallIcon, { color: "gray.500", w: "sm", h: "sm" })) : null)));
7836
+ };
7837
+
7838
+ var isCheckboxType = function (listItem) {
7839
+ return !!listItem.isCheckbox;
7840
+ };
7841
+ var SearchableListItem = function (props) {
7842
+ var isCheckbox = isCheckboxType(props);
7843
+ var label = props.label, value = props.value, facet = props.facet, isSelected = props.isSelected, _a = props.showChevron, showChevron = _a === void 0 ? true : _a, _b = props.highlightIndices, highlightIndices = _b === void 0 ? [] : _b, children = props.children;
7844
+ var labelProps = {
7845
+ label: label,
7846
+ isSelected: isSelected,
7847
+ showChevron: showChevron,
7848
+ highlightIndices: highlightIndices,
7849
+ isCheckbox: isCheckbox,
7850
+ facet: facet,
7168
7851
  };
7169
- var commonProps = __assign({ css: styles, 'aria-label': ariaLabel }, rest);
7170
- var isLink = Boolean(href);
7171
- var asType = isLink ? 'a' : 'button';
7172
- return (React.createElement(react$1.Flex, __assign({ as: asType }, (isLink && onClick ? { href: href } : {}), (!isLink ? { type: 'button' } : {}), { onClick: handleClick, onKeyDown: handleKeyDown }, commonProps),
7173
- recipeProps.selected ? (React.createElement(react$1.Box, { mx: "xs", color: "currentColor", display: "flex", alignItems: "center", justifyContent: "center" },
7174
- React.createElement(CheckmarkIcon, { height: "xs", width: "xs" }))) : null,
7175
- React.createElement(react$1.Box, { as: "span", whiteSpace: "nowrap" },
7176
- React.createElement(react$1.Text, { textStyle: "body-small" }, children))));
7852
+ var commonProps = {
7853
+ value: value,
7854
+ paddingY: 'sm',
7855
+ name: "searchable-list-item-".concat(value),
7856
+ 'aria-current': isSelected,
7857
+ };
7858
+ var checkboxProps = __assign(__assign({}, commonProps), { label: React.createElement(SearchableListItemLabel, __assign({}, labelProps)), checked: isSelected, indeterminate: isCheckbox ? !!props.isIndeterminate : false, fullWidth: true, variant: 'alignTop', onChange: isCheckbox ? props.onClick : undefined });
7859
+ return (React.createElement(List.Item, { css: { breakInside: 'avoid' }, paddingLeft: props.paddingLeft },
7860
+ isCheckbox ? (React.createElement(Checkbox, __assign({}, checkboxProps))) : (React.createElement(react$1.Button, { value: value, paddingY: "sm", name: "searchable-list-item-".concat(value), "aria-current": isSelected, onClick: !isCheckbox ? props.onClick : undefined, width: "full", display: "flex", paddingX: "0" },
7861
+ React.createElement(SearchableListItemLabel, __assign({}, labelProps)))),
7862
+ children));
7863
+ };
7864
+
7865
+ var fuseOptions = {
7866
+ keys: ['label', 'children.label'],
7867
+ includeMatches: true,
7868
+ threshold: 0,
7869
+ ignoreLocation: true,
7870
+ minMatchCharLength: 1,
7871
+ shouldSort: false,
7872
+ };
7873
+ var mapItemsFromSearchResult = function (searchResults) {
7874
+ return searchResults.map(function (_a) {
7875
+ var _b = _a.matches, matches = _b === void 0 ? [] : _b, item = _a.item;
7876
+ var parentMatch = matches.find(function (match) { return match.key === 'label'; });
7877
+ var parentHighlightIndices = parentMatch ? parentMatch.indices : [];
7878
+ var childMatches = item.children
7879
+ ? matches.filter(function (match) { return match.key === 'children.label'; })
7880
+ : [];
7881
+ if (!item.children ||
7882
+ item.children.length === 0 ||
7883
+ childMatches.length === 0) {
7884
+ return __assign(__assign({}, item), { highlightIndices: parentHighlightIndices });
7885
+ }
7886
+ var itemChildren = item.children || [];
7887
+ var children = childMatches.reduce(function (accumulator, childMatch) {
7888
+ if (childMatch.refIndex === undefined) {
7889
+ return accumulator;
7890
+ }
7891
+ var child = itemChildren[childMatch.refIndex];
7892
+ accumulator.push(__assign(__assign({}, child), { highlightIndices: childMatch.indices }));
7893
+ return accumulator;
7894
+ }, []);
7895
+ return __assign(__assign(__assign({}, item), (children ? { children: children } : {})), { highlightIndices: parentMatch ? parentMatch.indices : [] });
7896
+ });
7897
+ };
7898
+ var empty = function () { return null; };
7899
+ var search = function (_a) {
7900
+ var query = _a.query, fuse = _a.fuse;
7901
+ fuse.options.minMatchCharLength = query.length || 1;
7902
+ return fuse.search(query);
7903
+ };
7904
+ var getFuseInstance = function (listItems) {
7905
+ // Not casting the instance will result in the options not being typed
7906
+ return new Fuse(listItems, fuseOptions);
7907
+ };
7908
+ var SearchableList = function (_a) {
7909
+ var listItems = _a.listItems, _b = _a.NoResults, NoResults = _b === void 0 ? empty : _b, _c = _a.EmptyQueryPlaceholder, EmptyQueryPlaceholder = _c === void 0 ? empty : _c, _d = _a.listAriaLabel, listAriaLabel = _d === void 0 ? 'searchable list' : _d, _e = _a.searchFieldOptions, searchFieldOptions = _e === void 0 ? {} : _e, _f = _a.listOptions, listOptions = _f === void 0 ? { columns: 1, childrenSpacing: 'md' } : _f, listRef = _a.listRef;
7910
+ var gray200 = useToken('colors', ['gray.200'])[0];
7911
+ var _g = React.useState({
7912
+ query: '',
7913
+ listItems: listItems,
7914
+ fullListItems: __spreadArray([], listItems, true),
7915
+ fuse: getFuseInstance(listItems),
7916
+ }), searchState = _g[0], setSearchState = _g[1];
7917
+ var _h = searchFieldOptions.placeholder, placeholder = _h === void 0 ? '' : _h, _j = searchFieldOptions.autofocusOnDesktop, autofocusOnDesktop = _j === void 0 ? true : _j, autoComplete = searchFieldOptions.autoComplete;
7918
+ var _k = listOptions.columns, columns = _k === void 0 ? 1 : _k, _l = listOptions.childrenSpacing, childrenSpacing = _l === void 0 ? 'md' : _l;
7919
+ var areaId = 'searchableList';
7920
+ var query = searchState.query;
7921
+ React.useEffect(function () {
7922
+ setSearchState(function (currentState) {
7923
+ var fuse = getFuseInstance(listItems);
7924
+ if (currentState.query === '') {
7925
+ return {
7926
+ listItems: listItems,
7927
+ fullListItems: __spreadArray([], listItems, true),
7928
+ fuse: fuse,
7929
+ query: currentState.query,
7930
+ };
7931
+ }
7932
+ var searchResults = search({ fuse: fuse, query: currentState.query });
7933
+ var filteredListItems = mapItemsFromSearchResult(searchResults);
7934
+ return {
7935
+ listItems: filteredListItems,
7936
+ fuse: fuse,
7937
+ query: currentState.query,
7938
+ fullListItems: __spreadArray([], listItems, true),
7939
+ };
7940
+ });
7941
+ }, [listItems]);
7942
+ var setSearchQuery = React.useCallback(function (newQuery) {
7943
+ setSearchState(function (currentState) {
7944
+ var trimmedQuery = newQuery.trim();
7945
+ if (!trimmedQuery) {
7946
+ return __assign(__assign({}, currentState), { listItems: currentState.fullListItems, query: trimmedQuery });
7947
+ }
7948
+ var searchResults = search({
7949
+ fuse: currentState.fuse,
7950
+ query: trimmedQuery,
7951
+ });
7952
+ var filteredListItems = mapItemsFromSearchResult(searchResults);
7953
+ return __assign(__assign({}, currentState), { listItems: filteredListItems, query: trimmedQuery });
7954
+ });
7955
+ }, []);
7956
+ return (React.createElement(Flex, { gridGap: "md", direction: "column", width: "full" },
7957
+ React.createElement(SearchField, { name: "searchableListSearchFiled", searchQuery: query, setSearchQuery: setSearchQuery, ariaControls: areaId, placeholder: placeholder, autofocusOnDesktop: autofocusOnDesktop, autoComplete: autoComplete }),
7958
+ searchState.query.length === 0 ? React.createElement(EmptyQueryPlaceholder, null) : null,
7959
+ searchState.listItems.length > 0 ? (React.createElement(List.Root, { ref: listRef, width: "full", height: "full", id: areaId, "aria-live": "polite", css: {
7960
+ columns: { base: 1, md: columns },
7961
+ columnGap: '4xl',
7962
+ columnRule: "1px solid ".concat(gray200),
7963
+ }, "aria-label": listAriaLabel }, searchState.listItems.map(function (item, itemIndex) {
7964
+ var parentKey = "".concat(itemIndex, "-").concat(item.value);
7965
+ var children = item.children || [];
7966
+ return (React.createElement(SearchableListItem, __assign({}, item, { key: parentKey }), children.length > 0 ? (React.createElement(List.Root, { width: "full" }, children.map(function (child, childIndex) {
7967
+ var childKey = "".concat(childIndex, "-").concat(child.value);
7968
+ return (React.createElement(SearchableListItem, __assign({}, child, { key: childKey, paddingLeft: childrenSpacing })));
7969
+ }))) : null));
7970
+ }))) : (React.createElement(NoResults, null))));
7177
7971
  };
7178
- Chip.displayName = 'Chip';
7179
7972
 
7180
7973
  var Menu = function (_a) {
7181
7974
  var title = _a.title, items = _a.items, value = _a.value, _b = _a.fontWeightTitle, fontWeightTitle = _b === void 0 ? 'regular' : _b, _c = _a.offset, offset = _c === void 0 ? [8, 0] : _c, menuColor = _a.menuColor, menuOptionColor = _a.menuOptionColor, _d = _a.showChevron, showChevron = _d === void 0 ? true : _d, icon = _a.icon, _e = _a.iconSpacing, iconSpacing = _e === void 0 ? 'sm' : _e, placement = _a.placement, _f = _a.showOptionsCheckmark, showOptionsCheckmark = _f === void 0 ? false : _f;
@@ -7211,7 +8004,7 @@ var MobileOnlyAccordion = function (props) {
7211
8004
  var FooterLink = function (_a) {
7212
8005
  var _b, _c;
7213
8006
  var linkInstance = _a.linkInstance, children = _a.children, _d = _a.bold, bold = _d === void 0 ? false : _d;
7214
- var _e = i18nPkg.useI18n(), t = _e.t, language = _e.language;
8007
+ var _e = useI18n(), t = _e.t, language = _e.language;
7215
8008
  if (!linkInstance) {
7216
8009
  return null;
7217
8010
  }
@@ -7314,7 +8107,7 @@ var MobileOnlyAccordionButton = function (props) {
7314
8107
 
7315
8108
  var FooterSections = function (_a) {
7316
8109
  var config = _a.config;
7317
- var t = i18nPkg.useI18n().t;
8110
+ var t = useI18n().t;
7318
8111
  var sectionChunks = chunkArray({
7319
8112
  array: config.sections,
7320
8113
  chunkSize: 2,
@@ -7340,7 +8133,7 @@ var img$3 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAARAAAABQCAMAAADm+9r/A
7340
8133
 
7341
8134
  var FooterApps = function (_a) {
7342
8135
  var config = _a.config;
7343
- var t = i18nPkg.useI18n().t;
8136
+ var t = useI18n().t;
7344
8137
  return (React.createElement(GridItem, null,
7345
8138
  React.createElement(Stack, { paddingY: { base: '2xl', md: 'md' }, paddingX: { base: 'md', md: '0' }, gap: "md" },
7346
8139
  React.createElement(Text, { textStyle: "heading5" }, t('footer.apps.title')),
@@ -7375,7 +8168,7 @@ var FooterLanguageNavigation = function () {
7375
8168
  };
7376
8169
 
7377
8170
  var FooterCopyright = function () {
7378
- var t = i18nPkg.useI18n().t;
8171
+ var t = useI18n().t;
7379
8172
  return (React.createElement(react$1.Box, { textStyle: "body-small", textAlign: "center", opacity: "80" }, t('footer.copyright', { year: new Date().getFullYear() })));
7380
8173
  };
7381
8174
 
@@ -8266,183 +9059,6 @@ var Footer$1 = function (_a) {
8266
9059
  React.createElement(FooterCopyright, null)))))));
8267
9060
  };
8268
9061
 
8269
- var SearchField = function (_a) {
8270
- var name = _a.name, _b = _a.placeholder, placeholder = _b === void 0 ? '' : _b, _c = _a.ariaControls, ariaControls = _c === void 0 ? '' : _c, searchQuery = _a.searchQuery, setSearchQuery = _a.setSearchQuery, _d = _a.onFocus, onFocus = _d === void 0 ? function () { return null; } : _d, _e = _a.onBlur, onBlur = _e === void 0 ? function () { return null; } : _e, _f = _a.autofocusOnDesktop, autofocusOnDesktop = _f === void 0 ? true : _f, autoComplete = _a.autoComplete;
8271
- var isDesktopOnly = useMediaQuery({ above: 'md' });
8272
- var inputRef = React.useRef(null);
8273
- React.useEffect(function () {
8274
- var _a;
8275
- if (autofocusOnDesktop && isDesktopOnly) {
8276
- (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
8277
- }
8278
- }, [isDesktopOnly, autofocusOnDesktop]);
8279
- return (React.createElement(Input, { ref: inputRef, icon: MagnifierIcon, name: name, placeholder: placeholder, value: searchQuery, setInputValue: setSearchQuery, size: "lg", isClearable: true, debounce: true, onFocus: onFocus, onBlur: onBlur, "aria-controls": ariaControls, autoComplete: autoComplete }));
8280
- };
8281
-
8282
- var HighlightedText = function (_a) {
8283
- var text = _a.text, _b = _a.highlightIndices, highlightIndices = _b === void 0 ? [] : _b, textProps = __rest(_a, ["text", "highlightIndices"]);
8284
- if (highlightIndices.length === 0)
8285
- return (React.createElement(Text, __assign({ as: "span" }, textProps), text));
8286
- var result = [];
8287
- var currentIndex = 0;
8288
- for (var _i = 0, highlightIndices_1 = highlightIndices; _i < highlightIndices_1.length; _i++) {
8289
- var _c = highlightIndices_1[_i], start = _c[0], end = _c[1];
8290
- // Append the non-matching part
8291
- result.push(React.createElement(Text, __assign({ key: "non-highlight-".concat(currentIndex, "-").concat(start, "-").concat(text), as: "span" }, textProps), text.substring(currentIndex, start)));
8292
- // Append the matching part
8293
- result.push(React.createElement(Text, __assign({ key: "highlight-".concat(start, "-").concat(end + 1, "-").concat(text), as: "u", fontWeight: "bold" }, textProps), text.substring(start, end + 1)));
8294
- currentIndex = end + 1;
8295
- }
8296
- // Append the remaining non-matching part
8297
- result.push(React.createElement(Text, __assign({ key: "non-highlight-end-".concat(text), as: "span" }, textProps), text.substring(currentIndex)));
8298
- return (React.createElement(Text, __assign({ as: "span" }, textProps), result));
8299
- };
8300
-
8301
- var SearchableListItemLabel = function (_a) {
8302
- var label = _a.label, isSelected = _a.isSelected, _b = _a.showChevron, showChevron = _b === void 0 ? true : _b, _c = _a.highlightIndices, highlightIndices = _c === void 0 ? [] : _c, _d = _a.isCheckbox, isCheckbox = _d === void 0 ? false : _d, facet = _a.facet;
8303
- return (React.createElement(Flex, { width: "full", justifyContent: "space-between", whiteSpace: "pre-wrap", fontWeight: isSelected && !isCheckbox ? 'bold' : undefined, color: "gray.900", cursor: "pointer" },
8304
- React.createElement(Flex, null,
8305
- isSelected && !isCheckbox ? (React.createElement(CheckmarkIcon, { w: "xs", mr: "xs", color: "gray.900" })) : null,
8306
- React.createElement(HighlightedText, { text: label, highlightIndices: highlightIndices, textAlign: "left" })),
8307
- React.createElement(Flex, { as: "span" },
8308
- facet ? (React.createElement(Text, { as: "span", color: "gray.400", mr: showChevron ? 'lg' : undefined, ml: "sm", minW: "lg", textAlign: "right", fontWeight: "regular" }, facet)) : null,
8309
- showChevron ? (React.createElement(ChevronRightSmallIcon, { color: "gray.500", w: "sm", h: "sm" })) : null)));
8310
- };
8311
-
8312
- var isCheckboxType = function (listItem) {
8313
- return !!listItem.isCheckbox;
8314
- };
8315
- var SearchableListItem = function (props) {
8316
- var isCheckbox = isCheckboxType(props);
8317
- var label = props.label, value = props.value, facet = props.facet, isSelected = props.isSelected, _a = props.showChevron, showChevron = _a === void 0 ? true : _a, _b = props.highlightIndices, highlightIndices = _b === void 0 ? [] : _b, children = props.children;
8318
- var labelProps = {
8319
- label: label,
8320
- isSelected: isSelected,
8321
- showChevron: showChevron,
8322
- highlightIndices: highlightIndices,
8323
- isCheckbox: isCheckbox,
8324
- facet: facet,
8325
- };
8326
- var commonProps = {
8327
- value: value,
8328
- paddingY: 'sm',
8329
- name: "searchable-list-item-".concat(value),
8330
- 'aria-current': isSelected,
8331
- };
8332
- var checkboxProps = __assign(__assign({}, commonProps), { label: React.createElement(SearchableListItemLabel, __assign({}, labelProps)), checked: isSelected, indeterminate: isCheckbox ? !!props.isIndeterminate : false, fullWidth: true, variant: 'alignTop', onChange: isCheckbox ? props.onClick : undefined });
8333
- return (React.createElement(List.Item, { css: { breakInside: 'avoid' }, paddingLeft: props.paddingLeft },
8334
- isCheckbox ? (React.createElement(Checkbox, __assign({}, checkboxProps))) : (React.createElement(react$1.Button, { value: value, paddingY: "sm", name: "searchable-list-item-".concat(value), "aria-current": isSelected, onClick: !isCheckbox ? props.onClick : undefined, width: "full", display: "flex", paddingX: "0" },
8335
- React.createElement(SearchableListItemLabel, __assign({}, labelProps)))),
8336
- children));
8337
- };
8338
-
8339
- var fuseOptions = {
8340
- keys: ['label', 'children.label'],
8341
- includeMatches: true,
8342
- threshold: 0,
8343
- ignoreLocation: true,
8344
- minMatchCharLength: 1,
8345
- shouldSort: false,
8346
- };
8347
- var mapItemsFromSearchResult = function (searchResults) {
8348
- return searchResults.map(function (_a) {
8349
- var _b = _a.matches, matches = _b === void 0 ? [] : _b, item = _a.item;
8350
- var parentMatch = matches.find(function (match) { return match.key === 'label'; });
8351
- var parentHighlightIndices = parentMatch ? parentMatch.indices : [];
8352
- var childMatches = item.children
8353
- ? matches.filter(function (match) { return match.key === 'children.label'; })
8354
- : [];
8355
- if (!item.children ||
8356
- item.children.length === 0 ||
8357
- childMatches.length === 0) {
8358
- return __assign(__assign({}, item), { highlightIndices: parentHighlightIndices });
8359
- }
8360
- var itemChildren = item.children || [];
8361
- var children = childMatches.reduce(function (accumulator, childMatch) {
8362
- if (childMatch.refIndex === undefined) {
8363
- return accumulator;
8364
- }
8365
- var child = itemChildren[childMatch.refIndex];
8366
- accumulator.push(__assign(__assign({}, child), { highlightIndices: childMatch.indices }));
8367
- return accumulator;
8368
- }, []);
8369
- return __assign(__assign(__assign({}, item), (children ? { children: children } : {})), { highlightIndices: parentMatch ? parentMatch.indices : [] });
8370
- });
8371
- };
8372
- var empty = function () { return null; };
8373
- var search = function (_a) {
8374
- var query = _a.query, fuse = _a.fuse;
8375
- fuse.options.minMatchCharLength = query.length || 1;
8376
- return fuse.search(query);
8377
- };
8378
- var getFuseInstance = function (listItems) {
8379
- // Not casting the instance will result in the options not being typed
8380
- return new Fuse(listItems, fuseOptions);
8381
- };
8382
- var SearchableList = function (_a) {
8383
- var listItems = _a.listItems, _b = _a.NoResults, NoResults = _b === void 0 ? empty : _b, _c = _a.EmptyQueryPlaceholder, EmptyQueryPlaceholder = _c === void 0 ? empty : _c, _d = _a.listAriaLabel, listAriaLabel = _d === void 0 ? 'searchable list' : _d, _e = _a.searchFieldOptions, searchFieldOptions = _e === void 0 ? {} : _e, _f = _a.listOptions, listOptions = _f === void 0 ? { columns: 1, childrenSpacing: 'md' } : _f, listRef = _a.listRef;
8384
- var _g = React.useState({
8385
- query: '',
8386
- listItems: listItems,
8387
- fullListItems: __spreadArray([], listItems, true),
8388
- fuse: getFuseInstance(listItems),
8389
- }), searchState = _g[0], setSearchState = _g[1];
8390
- var _h = searchFieldOptions.placeholder, placeholder = _h === void 0 ? '' : _h, _j = searchFieldOptions.autofocusOnDesktop, autofocusOnDesktop = _j === void 0 ? true : _j, autoComplete = searchFieldOptions.autoComplete;
8391
- var _k = listOptions.columns, columns = _k === void 0 ? 1 : _k, _l = listOptions.childrenSpacing, childrenSpacing = _l === void 0 ? 'md' : _l;
8392
- var areaId = 'searchableList';
8393
- var query = searchState.query;
8394
- React.useEffect(function () {
8395
- setSearchState(function (currentState) {
8396
- var fuse = getFuseInstance(listItems);
8397
- if (currentState.query === '') {
8398
- return {
8399
- listItems: listItems,
8400
- fullListItems: __spreadArray([], listItems, true),
8401
- fuse: fuse,
8402
- query: currentState.query,
8403
- };
8404
- }
8405
- var searchResults = search({ fuse: fuse, query: currentState.query });
8406
- var filteredListItems = mapItemsFromSearchResult(searchResults);
8407
- return {
8408
- listItems: filteredListItems,
8409
- fuse: fuse,
8410
- query: currentState.query,
8411
- fullListItems: __spreadArray([], listItems, true),
8412
- };
8413
- });
8414
- }, [listItems]);
8415
- var setSearchQuery = React.useCallback(function (newQuery) {
8416
- setSearchState(function (currentState) {
8417
- var trimmedQuery = newQuery.trim();
8418
- if (!trimmedQuery) {
8419
- return __assign(__assign({}, currentState), { listItems: currentState.fullListItems, query: trimmedQuery });
8420
- }
8421
- var searchResults = search({
8422
- fuse: currentState.fuse,
8423
- query: trimmedQuery,
8424
- });
8425
- var filteredListItems = mapItemsFromSearchResult(searchResults);
8426
- return __assign(__assign({}, currentState), { listItems: filteredListItems, query: trimmedQuery });
8427
- });
8428
- }, []);
8429
- return (React.createElement(Flex, { gridGap: "md", direction: "column", width: "full" },
8430
- React.createElement(SearchField, { name: "searchableListSearchFiled", searchQuery: query, setSearchQuery: setSearchQuery, ariaControls: areaId, placeholder: placeholder, autofocusOnDesktop: autofocusOnDesktop, autoComplete: autoComplete }),
8431
- searchState.query.length === 0 ? React.createElement(EmptyQueryPlaceholder, null) : null,
8432
- searchState.listItems.length > 0 ? (React.createElement(List.Root, { ref: listRef, width: "full", height: "full", id: areaId, "aria-live": "polite", css: {
8433
- columns: { base: 1, md: columns },
8434
- columnGap: '4xl',
8435
- columnRule: '1px solid #CFCFCF',
8436
- }, "aria-label": listAriaLabel }, searchState.listItems.map(function (item, itemIndex) {
8437
- var parentKey = "".concat(itemIndex, "-").concat(item.value);
8438
- var children = item.children || [];
8439
- return (React.createElement(SearchableListItem, __assign({}, item, { key: parentKey }), children.length > 0 ? (React.createElement(List.Root, { width: "full" }, children.map(function (child, childIndex) {
8440
- var childKey = "".concat(childIndex, "-").concat(child.value);
8441
- return (React.createElement(SearchableListItem, __assign({}, child, { key: childKey, paddingLeft: childrenSpacing })));
8442
- }))) : null));
8443
- }))) : (React.createElement(NoResults, null))));
8444
- };
8445
-
8446
9062
  var createTenantLabel = function (managedSeller) {
8447
9063
  if (!managedSeller)
8448
9064
  return '';
@@ -8514,7 +9130,7 @@ var NavigationTenantMenuContent = function (_a) {
8514
9130
  var NavigationTenantMenu = function (_a) {
8515
9131
  var user = _a.user, selectTenant = _a.selectTenant;
8516
9132
  var _b = react$1.useDisclosure(), onClose = _b.onClose, open = _b.open, onToggle = _b.onToggle;
8517
- var t = i18nPkg.useI18n().t;
9133
+ var t = useI18n().t;
8518
9134
  var selectedTenant = React.useMemo(function () {
8519
9135
  var _a;
8520
9136
  return (_a = user === null || user === void 0 ? void 0 : user.managedSellers) === null || _a === void 0 ? void 0 : _a.find(function (seller) { return seller.id === Number(user.sellerId); });
@@ -8594,7 +9210,7 @@ var DrawerIndicator = function (_a) {
8594
9210
 
8595
9211
  var NavigationItem = function (_a) {
8596
9212
  var translationKey = _a.translationKey, drawerHandler = _a.drawerHandler, isOpen = _a.isOpen;
8597
- var t = i18nPkg.useI18n().t;
9213
+ var t = useI18n().t;
8598
9214
  var recipe = react$1.useSlotRecipe({ key: 'link' });
8599
9215
  var styles = recipe({ variant: 'navigationLink' });
8600
9216
  return (React.createElement(react$1.Box, { onClick: drawerHandler, css: __assign({}, styles.root), fontWeight: "bold", color: isOpen ? 'blue.700' : 'gray.900', _hover: { color: 'blue.700' }, position: "relative", cursor: "pointer", display: "flex", alignItems: "center" },
@@ -8605,7 +9221,7 @@ var NavigationItem = function (_a) {
8605
9221
 
8606
9222
  var NavigationLink = function (_a) {
8607
9223
  var link = _a.link, title = _a.title, translationKey = _a.translationKey, _b = _a.translationParameters, translationParameters = _b === void 0 ? {} : _b, isNew = _a.isNew, _c = _a.fontWeight, fontWeight = _c === void 0 ? 'regular' : _c, _d = _a.variant, variant = _d === void 0 ? 'navigationLink' : _d, color = _a.color, leftIcon = _a.leftIcon, rightIcon = _a.rightIcon, hideTextBelow = _a.hideTextBelow, onClick = _a.onClick;
8608
- var _e = i18nPkg.useI18n(), t = _e.t, language = _e.language;
9224
+ var _e = useI18n(), t = _e.t, language = _e.language;
8609
9225
  var linkColor = color || 'gray.900';
8610
9226
  var hoverStyle = variant === 'navigationLink' ? { color: 'blue.700' } : undefined;
8611
9227
  return (React.createElement(Link$1, { href: link && link[language], variant: variant, fontWeight: fontWeight, css: { color: linkColor }, _hover: hoverStyle, onClick: onClick, display: "flex", alignItems: "center", gap: "md" },
@@ -9652,7 +10268,7 @@ var getComparisonUrl = function (comparisonItemIds) {
9652
10268
  var ComparisonItem = function (_a) {
9653
10269
  var _b, _c;
9654
10270
  var link = _a.link, count = _a.count;
9655
- var _d = i18nPkg.useI18n(), t = _d.t, language = _d.language;
10271
+ var _d = useI18n(), t = _d.t, language = _d.language;
9656
10272
  return (React.createElement(react$1.chakra.a, { position: "relative", display: "block", href: (_b = link.link) === null || _b === void 0 ? void 0 : _b[language], onClick: link.onClick, "aria-label": t((_c = link.translationKey) !== null && _c !== void 0 ? _c : '', link.translationParameters), mr: "lg" },
9657
10273
  React.createElement(CompareIcon, { color: "gray.900" }),
9658
10274
  React.createElement(react$1.Box, { position: "absolute", css: { top: '-10px', right: '-15px' } }, count > 0 ? React.createElement(Count, { count: count }) : null)));
@@ -10063,7 +10679,7 @@ var NavigationAvatar = function (_a) {
10063
10679
  var isDrawerOpened = isOpen && (drawer === null || drawer === void 0 ? void 0 : drawer.current) === DrawerNode.User;
10064
10680
  var recipe = react$1.useSlotRecipe({ key: 'link' });
10065
10681
  var styles = recipe({ variant: 'navigationLink' });
10066
- var t = i18nPkg.useI18n().t;
10682
+ var t = useI18n().t;
10067
10683
  if (user) {
10068
10684
  return (React.createElement(react$1.Box, { hideBelow: "sm" },
10069
10685
  React.createElement(react$1.Box, { display: "flex", flexDirection: "row", gap: "xs", cursor: "pointer", _hover: { color: 'blue.700' }, color: isDrawerOpened ? 'blue.700' : 'gray.900', onClick: createDrawerHandler({
@@ -10134,7 +10750,7 @@ var useNavigationDrawer = function (_a) {
10134
10750
  var FavoritesItem = function (_a) {
10135
10751
  var _b, _c;
10136
10752
  var link = _a.link;
10137
- var _d = i18nPkg.useI18n(), t = _d.t, language = _d.language;
10753
+ var _d = useI18n(), t = _d.t, language = _d.language;
10138
10754
  return (React.createElement(react$1.chakra.a, { position: "relative", href: (_b = link.link) === null || _b === void 0 ? void 0 : _b[language], onClick: link.onClick, "aria-label": t((_c = link.translationKey) !== null && _c !== void 0 ? _c : '') },
10139
10755
  React.createElement(HeartIcon, { color: "gray.900" })));
10140
10756
  };
@@ -10228,7 +10844,7 @@ var NonCollapsibleSection = function (_a) {
10228
10844
  };
10229
10845
  var CollapsibleSection = function (_a) {
10230
10846
  var node = _a.node;
10231
- var t = i18nPkg.useI18n().t;
10847
+ var t = useI18n().t;
10232
10848
  if (!node.translationKey && !node.title) {
10233
10849
  return null;
10234
10850
  }
@@ -10252,7 +10868,7 @@ var DrawerMenu = function (_a) {
10252
10868
 
10253
10869
  var DrawerLoginToggle = function (_a) {
10254
10870
  var user = _a.user, onLogin = _a.onLogin, onLogout = _a.onLogout;
10255
- var t = i18nPkg.useI18n().t;
10871
+ var t = useI18n().t;
10256
10872
  return (React.createElement(Button, { as: "button", variant: "secondary", size: "md", marginTop: "md", marginX: "lg", onClick: user ? onLogout : onLogin },
10257
10873
  user ? React.createElement(LogoutIcon, null) : React.createElement(AvatarIcon, null),
10258
10874
  user ? t('header.userMenu.logout') : t('header.login')));
@@ -10278,7 +10894,7 @@ var NavigationDrawer = function (_a) {
10278
10894
  maxWidth: '100vw',
10279
10895
  width: '100%',
10280
10896
  } },
10281
- React.createElement(react$1.Box, { "data-testid": "drawer-body", py: "lg", px: { md: 'xs' }, maxWidth: "container.2xl", width: "full", margin: "auto" }, isOpen ? (React.createElement(Grid, { height: "full", width: "full", templateColumns: {
10897
+ React.createElement(react$1.Box, { py: "lg", px: { md: 'xs' }, maxWidth: "container.2xl", width: "full", margin: "auto" }, isOpen ? (React.createElement(Grid, { "data-testid": "drawer-body", height: "full", width: "full", templateColumns: {
10282
10898
  '2xs': 'minmax(0, 1fr)',
10283
10899
  md: 'repeat(5, 1fr)',
10284
10900
  }, gap: { md: '3xl' } },
@@ -10588,6 +11204,91 @@ var Pagination = function (_a) {
10588
11204
  React.createElement(ChevronRightSmallIcon, null))))));
10589
11205
  };
10590
11206
 
11207
+ var InputLeftElement = function (_a) {
11208
+ var unit = _a.unit;
11209
+ return (React.createElement(react$1.InputElement, { insetY: "0", px: "sm", textStyle: "body-small", pointerEvents: "none" }, unit));
11210
+ };
11211
+
11212
+ var parseToNumberOrUndef = function (raw) {
11213
+ if (raw.trim() === '')
11214
+ return undefined;
11215
+ var n = Number(raw);
11216
+ return Number.isNaN(n) ? undefined : n;
11217
+ };
11218
+ var InputGroup = function (_a) {
11219
+ var _b;
11220
+ var handleChange = _a.handleChange, inputProps = _a.inputProps, onBlur = _a.onBlur, unit = _a.unit, rest = __rest(_a, ["handleChange", "inputProps", "onBlur", "unit"]);
11221
+ var recipe = react$1.useSlotRecipe({ key: 'numberInput' });
11222
+ var _c = recipe.splitVariantProps(rest), recipeProps = _c[0], restProps = _c[1];
11223
+ var styles = recipe(recipeProps);
11224
+ /**
11225
+ * Local string state that represents exactly what the user typed.
11226
+ *
11227
+ * Why string:
11228
+ * - Allows intermediate values ("1" → "10" → "100")
11229
+ * - Prevents cursor jumps and unstable behavior
11230
+ * - Most stable approach with Chakra v3 NumberInput
11231
+ */
11232
+ var _d = React.useState(inputProps.value != null ? String(inputProps.value) : ''), raw = _d[0], setRaw = _d[1];
11233
+ /**
11234
+ * Sync external value changes (e.g. slider moved) back into the input.
11235
+ * Without this, the input would display stale values.
11236
+ */
11237
+ React.useEffect(function () {
11238
+ setRaw(inputProps.value != null ? String(inputProps.value) : '');
11239
+ }, [inputProps.value]);
11240
+ /**
11241
+ * Debounced emit PER INPUT (important!)
11242
+ *
11243
+ * Why per-input debounce:
11244
+ * - Shared debounce caused race conditions between FROM / TO inputs
11245
+ * - Each input must control its own timing
11246
+ *
11247
+ */
11248
+ var debouncedEmit = useDebounce.useDebouncedCallback(function (nextRaw) {
11249
+ handleChange({
11250
+ name: inputProps.name,
11251
+ value: parseToNumberOrUndef(nextRaw),
11252
+ });
11253
+ }, 1000);
11254
+ return (React.createElement(react$1.NumberInput.Root, __assign({ css: styles.root, width: "full",
11255
+ // Update local string immediately
11256
+ value: raw, onValueChange: function (_a) {
11257
+ var value = _a.value;
11258
+ setRaw(value);
11259
+ debouncedEmit(value);
11260
+ },
11261
+ /**
11262
+ * On blur we emit immediately as a safety net,
11263
+ * ensuring the final value is always propagated.
11264
+ */
11265
+ onBlur: function () {
11266
+ onBlur === null || onBlur === void 0 ? void 0 : onBlur({
11267
+ name: inputProps.name,
11268
+ value: parseToNumberOrUndef(raw),
11269
+ });
11270
+ } }, restProps),
11271
+ unit ? React.createElement(InputLeftElement, { unit: unit }) : null,
11272
+ React.createElement(react$1.NumberInput.Input, { css: styles.input, placeholder: (_b = inputProps.placeholder) !== null && _b !== void 0 ? _b : '', "aria-label": inputProps.ariaLabel, fontSize: "base" })));
11273
+ };
11274
+
11275
+ var RangeFilterInput = function (_a) {
11276
+ var from = _a.from, to = _a.to, handleChange = _a.handleChange, unit = _a.unit, onBlur = _a.onBlur, rest = __rest(_a, ["from", "to", "handleChange", "unit", "onBlur"]);
11277
+ return (React.createElement(react$1.Flex, null,
11278
+ React.createElement(InputGroup, __assign({ inputProps: from, variant: "inputLeft", handleChange: handleChange, onBlur: onBlur, unit: unit }, rest)),
11279
+ React.createElement(InputGroup, __assign({ inputProps: to, variant: "inputRight", handleChange: handleChange, onBlur: onBlur, unit: unit }, rest))));
11280
+ };
11281
+
11282
+ var RangeSlider = function (_a) {
11283
+ var _b = _a.min, min = _b === void 0 ? 0 : _b, _c = _a.max, max = _c === void 0 ? 10 : _c, onChange = _a.onChange, onChangeEnd = _a.onChangeEnd, rest = __rest(_a, ["min", "max", "onChange", "onChangeEnd"]);
11284
+ return (React.createElement(react$1.Slider.Root, __assign({ defaultValue: [min, max], min: min, max: max, onValueChange: function (details) { return onChange === null || onChange === void 0 ? void 0 : onChange(details.value); }, onValueChangeEnd: function (details) { return onChangeEnd === null || onChangeEnd === void 0 ? void 0 : onChangeEnd(details.value); } }, rest),
11285
+ React.createElement(react$1.Slider.Control, null,
11286
+ React.createElement(react$1.Slider.Track, null,
11287
+ React.createElement(react$1.Slider.Range, null)),
11288
+ React.createElement(react$1.Slider.Thumb, { index: 0, "aria-label": "Min", width: { base: 'md', sm: 'sm' }, height: { base: 'md', sm: 'sm' } }),
11289
+ React.createElement(react$1.Slider.Thumb, { index: 1, "aria-label": "Max", width: { base: 'md', sm: 'sm' }, height: { base: 'md', sm: 'sm' } }))));
11290
+ };
11291
+
10591
11292
  var Rating = function (_a) {
10592
11293
  var rating = _a.rating, props = __rest(_a, ["rating"]);
10593
11294
  var percent = "calc((".concat(rating.toString(), " - 0.16) / 5 * 100%)");
@@ -10722,243 +11423,15 @@ var Table = {
10722
11423
  ScrollArea: ScrollArea,
10723
11424
  };
10724
11425
 
10725
- var Underline = function (props) {
10726
- var recipe = react$1.useSlotRecipe({ key: 'markedText' });
10727
- var recipeProps = recipe.splitVariantProps(props)[0];
10728
- var styles = recipe(recipeProps);
10729
- return (React.createElement(react$1.chakra.svg, { css: styles.mark, xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 150 11", fill: "none", preserveAspectRatio: "none" },
10730
- React.createElement(react$1.chakra.path, { fill: "brand.primary", d: "M147.274 5.414c-.221.13-.294.258-.218.427.151.21-.07.447-.291.661-.146.214-.516.43-.737.624-.222.151-.443.324-.665.496.523.185.374.166-.664.517.224.061.374.144.598.227-.892.073-1.71.146-2.678.157-2.381.026-4.762.116-7.144.184l-17.934.389c-2.158.045-4.243.025-6.401.049-.893.01-1.861 0-2.754.03-.446.005-.967.053-1.413.058a275.9 275.9 0 0 1-4.169.025c-.148.002-.372-.017-.521.006-2.306.089-4.689.009-6.996.055-1.116.034-2.232.046-3.349.058l-3.796.042c-3.2.035-6.4.07-9.6.085-2.83.01-5.658-.002-8.486.008-1.861 0-3.796.02-5.731.042-.968.01-1.936 0-2.903.01-.819.01-1.563.039-2.382.048-.595.007-1.191-.05-1.861-.043-.893.01-1.786.062-2.753.072l-9.974.046-11.462.127c-1.116.012-2.158.066-3.274.078-.447.005-.968-.032-1.415-.027-1.563.017-3.05.055-4.614.072-.297.003-.595.007-.743.115 0 .042-.371.046-.595.07l-9.6.169c-1.265.014-2.456.048-3.72.083-.67.029-1.265.1-1.935.107-1.34-.007-2.68-.013-4.02-.041a5.054 5.054 0 0 1-1.193-.2c-.821-.224-1.42-.493-1.498-.832-.077-.275-.23-.57-.307-.846-.001-.127.072-.256.145-.384.073-.086.072-.17.146-.256.144-.384.066-.787.36-1.172.145-.278.29-.555.139-.83 0-.063.222-.13.295-.215.294-.343.514-.707.807-1.05.147-.192.517-.409.366-.577-.226-.295.515-.579.065-.85-.15-.083.072-.213.22-.32 0-.043.222-.11.148-.109-.448-.122-.003-.255.145-.341.296-.173-.004-.361.664-.538a6.1 6.1 0 0 1 1.56-.208c1.638-.04 3.35-.08 4.987-.098 2.753-.051 5.433-.102 8.186-.132 3.052-.055 6.177-.09 9.229-.144l6.251-.07 7.964-.087a219.85 219.85 0 0 1 3.722-.02c1.563-.017 3.051-.033 4.614-.029 2.308-.025 4.54-.029 6.848-.033l6.997-.013c2.158-.003 4.242-.025 6.401-.007 2.903.01 5.806.021 8.71.01 2.009 0 4.018-.065 6.028-.066 2.158-.002 4.392.016 6.55-.008 2.53-.028 5.06-.077 7.666-.106 4.167-.045 8.336-.07 12.429-.115 2.977-.033 5.954-.087 9.005-.142l10.568-.18c3.051-.054 6.028-.15 9.004-.226 2.381-.069 4.837-.117 7.293-.165.521-.006.968.053 1.49.09-.221.257-.145.426.229.55-.594.112-.37.216.003.275-.222.13-.444.239-.517.346-.148.129-.072.255.598.248-.371.068-.669.113-1.115.182.075.042.15.083.225.104.596.078.972.392.527.546-.148.065-.595.07-.892.095v.063c.671.078.524.27.601.418.001.17-.146.3-.517.452-.148.065.003.191-.071.298.001.064.076.148.002.191-.666.283-.588.601-.659.92.001.085-.073.15-.147.214-.074.065-.593.198-.071.34Z" })));
10731
- };
10732
-
10733
- var Highlight = function (props) {
10734
- var recipe = react$1.useSlotRecipe({ key: 'markedText' });
10735
- var recipeProps = recipe.splitVariantProps(props)[0];
10736
- var styles = recipe(recipeProps);
10737
- return (React.createElement(react$1.chakra.svg, { css: styles.mark, xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 155 24", fill: "none", preserveAspectRatio: "none" },
10738
- React.createElement(react$1.chakra.path, { fill: props.highlightColor, d: "M152.76 13.91c-.231.328-.309.657-.231 1.095.154.547-.078 1.15-.309 1.697-.155.548-.541 1.096-.773 1.588-.231.384-.463.822-.695 1.26.541.493.387.438-.695 1.314.232.165.386.384.618.603-.927.164-1.776.328-2.78.328-2.471 0-4.943.164-7.414.274l-18.613.493c-2.239.055-4.402-.055-6.641-.055-.927 0-1.931-.055-2.858 0-.463 0-1.004.11-1.467.11-1.468 0-2.858 0-4.325-.055-.154 0-.386-.055-.541 0-2.394.164-4.865-.11-7.26-.055-1.158.055-2.316.055-3.475.055h-3.938c-3.321 0-6.642 0-9.963-.055-2.935-.055-5.87-.164-8.804-.219-1.93-.055-3.939-.055-5.947-.055-1.004 0-2.008-.054-3.012-.054-.85 0-1.622.054-2.471.054-.618 0-1.236-.164-1.93-.164-.928 0-1.854.11-2.858.11l-10.35-.165H34.137c-1.159 0-2.24.11-3.399.11-.463 0-1.004-.11-1.467-.11-1.622 0-3.166.055-4.788.055-.31 0-.618 0-.773.274 0 .11-.386.11-.617.164l-9.963.164c-1.313 0-2.548.055-3.861.11-.696.055-1.313.219-2.008.219-1.39-.055-2.78-.11-4.17-.219-.464-.055-.85-.274-1.236-.548-.85-.602-1.468-1.314-1.545-2.19-.077-.712-.232-1.479-.309-2.19 0-.33.077-.658.154-.986.078-.22.078-.438.155-.658.154-.985.077-2.026.386-3.011.155-.712.309-1.424.155-2.136 0-.164.231-.329.308-.548.31-.876.541-1.807.85-2.683.154-.493.54-1.04.386-1.479-.232-.766.54-1.478.077-2.19-.154-.22.078-.548.232-.822 0-.109.232-.273.155-.273-.464-.329 0-.657.154-.877.309-.438 0-.93.695-1.369C4.247.493 4.711.33 5.329.33c1.699-.055 3.475-.11 5.174-.11C13.361.164 16.141.109 19 .109 22.165.056 25.409.056 28.575 0h14.751c1.313 0 2.548 0 3.861.055 1.622 0 3.167 0 4.789.055 2.394 0 4.71.054 7.105.109l7.26.164c2.239.055 4.401.055 6.641.165 3.012.11 6.024.219 9.036.273 2.085.055 4.17-.054 6.255 0 2.24.055 4.557.165 6.797.165 2.626 0 5.251-.055 7.954-.055 4.325 0 8.65.055 12.898.055 3.089 0 6.178-.055 9.345-.11l10.966-.164c3.167-.055 6.256-.22 9.345-.329 2.471-.11 5.02-.164 7.568-.219.541 0 1.004.165 1.545.274-.232.657-.154 1.095.232 1.424-.618.274-.386.548 0 .712-.232.328-.464.602-.541.876-.154.329-.077.657.618.657-.386.164-.695.274-1.158.438.077.11.154.22.231.274.618.22 1.004 1.04.541 1.424-.155.164-.618.164-.927.219v.164c.695.22.541.712.618 1.095 0 .439-.155.767-.541 1.15-.154.165 0 .493-.077.767 0 .164.077.383 0 .493-.695.712-.618 1.533-.695 2.355 0 .219-.077.383-.154.547-.078.165-.618.493-.078.877" })));
10739
- };
10740
-
10741
- var MarkedTextMark = function (props) {
10742
- if (props.variant === 'highlight') {
10743
- return React.createElement(Highlight, __assign({}, props));
10744
- }
10745
- if (props.variant === 'underline') {
10746
- return React.createElement(Underline, __assign({}, props));
10747
- }
10748
- return null;
10749
- };
10750
-
10751
- var MarkedText = function (_a) {
10752
- var children = _a.children, props = __rest(_a, ["children"]);
10753
- var recipe = react$1.useSlotRecipe({ key: 'markedText' });
10754
- var _b = recipe.splitVariantProps(props), recipeProps = _b[0], boxProps = _b[1];
10755
- var styles = recipe(recipeProps);
10756
- var variant = props.variant, highlightColor = props.highlightColor;
10757
- return (React.createElement(react$1.Box, __assign({ css: styles.container }, boxProps),
10758
- React.createElement(MarkedTextMark, { variant: variant, highlightColor: highlightColor }),
10759
- React.createElement(react$1.Box, { css: styles.text }, children)));
10760
- };
10761
-
10762
- var _a$1;
10763
- var themes = (_a$1 = {},
10764
- _a$1[Brand.AutoScout24] = autoScout24System,
10765
- _a$1[Brand.MotoScout24] = motoScout24System,
10766
- _a$1);
10767
- var ThemeProvider = function (_a) {
10768
- var children = _a.children, theme = _a.theme;
10769
- return React.createElement(react$1.ChakraProvider, { value: themes[theme] }, children);
10770
- };
10771
-
10772
- var TopListingBadge = function (_a) {
10773
- var children = _a.children, aspectRatio = _a.aspectRatio;
10774
- return (React.createElement(react$1.Grid, null,
10775
- React.createElement(react$1.GridItem, { gridColumn: 1, gridRow: 1 }, aspectRatio ? (React.createElement(react$1.AspectRatio, { ratio: aspectRatio }, children)) : (children)),
10776
- React.createElement(react$1.GridItem, { gridColumn: 1, gridRow: 1, zIndex: "docked", overflow: "hidden", position: "relative", pointerEvents: "none", css: { touchAction: 'none' } },
10777
- React.createElement(react$1.Badge, { transform: "rotate(-45deg) translate(-50%) translateY(9px)", position: "absolute", transformOrigin: "top left", width: "4xl", textAlign: "center", paddingLeft: "sm", color: "gray.900" }, "Top"))));
10778
- };
10779
-
10780
- var InputLeftElement = function (_a) {
10781
- var unit = _a.unit;
10782
- return (React.createElement(react$1.InputElement, { insetY: "0", px: "sm", textStyle: "body-small", pointerEvents: "none" }, unit));
10783
- };
10784
-
10785
- var parseToNumberOrUndef = function (raw) {
10786
- if (raw.trim() === '')
10787
- return undefined;
10788
- var n = Number(raw);
10789
- return Number.isNaN(n) ? undefined : n;
10790
- };
10791
- var InputGroup = function (_a) {
10792
- var _b;
10793
- var handleChange = _a.handleChange, inputProps = _a.inputProps, onBlur = _a.onBlur, unit = _a.unit, rest = __rest(_a, ["handleChange", "inputProps", "onBlur", "unit"]);
10794
- var recipe = react$1.useSlotRecipe({ key: 'numberInput' });
10795
- var _c = recipe.splitVariantProps(rest), recipeProps = _c[0], restProps = _c[1];
10796
- var styles = recipe(recipeProps);
10797
- /**
10798
- * Local string state that represents exactly what the user typed.
10799
- *
10800
- * Why string:
10801
- * - Allows intermediate values ("1" → "10" → "100")
10802
- * - Prevents cursor jumps and unstable behavior
10803
- * - Most stable approach with Chakra v3 NumberInput
10804
- */
10805
- var _d = React.useState(inputProps.value != null ? String(inputProps.value) : ''), raw = _d[0], setRaw = _d[1];
10806
- /**
10807
- * Sync external value changes (e.g. slider moved) back into the input.
10808
- * Without this, the input would display stale values.
10809
- */
10810
- React.useEffect(function () {
10811
- setRaw(inputProps.value != null ? String(inputProps.value) : '');
10812
- }, [inputProps.value]);
10813
- /**
10814
- * Debounced emit PER INPUT (important!)
10815
- *
10816
- * Why per-input debounce:
10817
- * - Shared debounce caused race conditions between FROM / TO inputs
10818
- * - Each input must control its own timing
10819
- *
10820
- */
10821
- var debouncedEmit = useDebounce.useDebouncedCallback(function (nextRaw) {
10822
- handleChange({
10823
- name: inputProps.name,
10824
- value: parseToNumberOrUndef(nextRaw),
10825
- });
10826
- }, 1000);
10827
- return (React.createElement(react$1.NumberInput.Root, __assign({ css: styles.root, width: "full",
10828
- // Update local string immediately
10829
- value: raw, onValueChange: function (_a) {
10830
- var value = _a.value;
10831
- setRaw(value);
10832
- debouncedEmit(value);
10833
- },
10834
- /**
10835
- * On blur we emit immediately as a safety net,
10836
- * ensuring the final value is always propagated.
10837
- */
10838
- onBlur: function () {
10839
- onBlur === null || onBlur === void 0 ? void 0 : onBlur({
10840
- name: inputProps.name,
10841
- value: parseToNumberOrUndef(raw),
10842
- });
10843
- } }, restProps),
10844
- unit ? React.createElement(InputLeftElement, { unit: unit }) : null,
10845
- React.createElement(react$1.NumberInput.Input, { css: styles.input, placeholder: (_b = inputProps.placeholder) !== null && _b !== void 0 ? _b : '', "aria-label": inputProps.ariaLabel, fontSize: "base" })));
10846
- };
10847
-
10848
- var RangeFilterInput = function (_a) {
10849
- var from = _a.from, to = _a.to, handleChange = _a.handleChange, unit = _a.unit, onBlur = _a.onBlur, rest = __rest(_a, ["from", "to", "handleChange", "unit", "onBlur"]);
10850
- return (React.createElement(react$1.Flex, null,
10851
- React.createElement(InputGroup, __assign({ inputProps: from, variant: "inputLeft", handleChange: handleChange, onBlur: onBlur, unit: unit }, rest)),
10852
- React.createElement(InputGroup, __assign({ inputProps: to, variant: "inputRight", handleChange: handleChange, onBlur: onBlur, unit: unit }, rest))));
10853
- };
10854
-
10855
- var _a;
10856
- var badgeText = (_a = {},
10857
- _a[Brand.AutoScout24] = 'TopCar',
10858
- _a[Brand.MotoScout24] = 'TopMoto',
10859
- _a);
10860
- var TopVehicleSharedBadge = function (_a) {
10861
- var children = _a.children, aspectRatio = _a.aspectRatio, brand = _a.brand;
10862
- return (React.createElement(react$1.Box, null,
10863
- React.createElement(react$1.Box, { w: "full", textAlign: "center", textStyle: "heading4", p: "xs", color: "gray.900" }, badgeText[brand]),
10864
- aspectRatio ? (React.createElement(AspectRatio, { ratio: aspectRatio }, children)) : (children)));
10865
- };
10866
-
10867
- var emptyItemOffset = 0;
10868
- var firstItemOffset = 1;
10869
- var getItemOffset = function (applyIndentation) {
10870
- return applyIndentation ? firstItemOffset : emptyItemOffset;
10871
- };
10872
- var getSliderStepValue = function (marks, applyIndentation, value) {
10873
- var selectedMarkIndex = marks.findIndex(function (mark) { return mark.value === value; });
10874
- if (selectedMarkIndex < emptyItemOffset) {
10875
- return getItemOffset(applyIndentation);
10876
- }
10877
- return selectedMarkIndex + getItemOffset(applyIndentation);
10878
- };
10879
- var getSliderMarks = function (marks, applyIndentation) {
10880
- return marks.map(function (mark, index) { return (__assign(__assign({}, mark), { stepValue: index + getItemOffset(applyIndentation) })); });
10881
- };
10882
- var DiscreteSlider = function (_a) {
10883
- var marks = _a.marks, _b = _a.applyIndentation, applyIndentation = _b === void 0 ? true : _b, onValueChanged = _a.onValueChanged, value = _a.value;
10884
- var sliderStepValue = getSliderStepValue(marks, applyIndentation, value);
10885
- var sliderMarks = getSliderMarks(marks, applyIndentation);
10886
- var handleOnChange = function (newStepValue) {
10887
- var _a;
10888
- if (applyIndentation && newStepValue < firstItemOffset)
10889
- return;
10890
- var newSliderMark = (_a = sliderMarks.find(function (mark) { return mark.stepValue === newStepValue; })) === null || _a === void 0 ? void 0 : _a.value;
10891
- onValueChanged(newSliderMark);
10892
- };
10893
- return (React.createElement(react$1.Slider.Root, { step: 1, max: sliderMarks.length - 1 + getItemOffset(applyIndentation), value: [sliderStepValue], onValueChange: function (details) { var _a; return handleOnChange((_a = details.value[0]) !== null && _a !== void 0 ? _a : sliderStepValue); } },
10894
- React.createElement(react$1.Slider.Control, null,
10895
- React.createElement(react$1.Slider.Track, null,
10896
- React.createElement(react$1.Slider.Range, null)),
10897
- React.createElement(react$1.Slider.Thumbs, null),
10898
- React.createElement(react$1.Slider.MarkerGroup, null, sliderMarks.map(function (_a, index) {
10899
- var stepValue = _a.stepValue, label = _a.label;
10900
- return (React.createElement(react$1.Slider.Marker, { key: index, value: stepValue, style: {
10901
- pointerEvents: 'all',
10902
- fontWeight: sliderStepValue === stepValue ? 'bold' : 'normal',
10903
- } }, label));
10904
- })))));
10905
- };
10906
-
10907
- var Tooltip = function (_a) {
10908
- var children = _a.children, _b = _a.placement, placement = _b === void 0 ? 'bottom' : _b, _c = _a.maxWidth, maxWidth = _c === void 0 ? '6xl' : _c, label = _a.label;
10909
- var _d = React.useState(false), isOpen = _d[0], setIsOpen = _d[1];
10910
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
10911
- var childrenWithProps = React.cloneElement(children, {
10912
- onMouseEnter: function () { return setIsOpen(true); },
10913
- onMouseLeave: function () { return setIsOpen(false); },
10914
- onClick: function () { return setIsOpen(true); },
10915
- });
10916
- return (React.createElement(react$1.TooltipRoot, { positioning: {
10917
- placement: placement,
10918
- }, open: isOpen },
10919
- React.createElement(react$1.TooltipTrigger, { asChild: true }, childrenWithProps),
10920
- React.createElement(react$1.TooltipPositioner, null,
10921
- React.createElement(react$1.TooltipContent, { maxWidth: maxWidth },
10922
- React.createElement(react$1.TooltipArrow, null,
10923
- React.createElement(react$1.TooltipArrowTip, null)),
10924
- label))));
10925
- };
10926
-
10927
- var FormControlSection = function (_a) {
10928
- var children = _a.children, errorMessage = _a.errorMessage, id = _a.id, label = _a.label, hint = _a.hint, tooltip = _a.tooltip;
10929
- var isInvalid = !!errorMessage;
10930
- return (React.createElement(react$1.Field.Root, { id: id, invalid: isInvalid },
10931
- React.createElement(react$1.Box, { border: "1px", borderRadius: "sm", borderColor: isInvalid ? 'red.500' : 'gray.400', padding: "2xl" },
10932
- React.createElement(Flex, { flexDirection: "column" },
10933
- React.createElement(react$1.Box, { mb: "lg" },
10934
- React.createElement(Flex, { alignItems: "center" },
10935
- label ? (React.createElement(Text, { color: "gray.900", textStyle: "heading4" }, label)) : null,
10936
- tooltip ? (React.createElement(Tooltip, { label: tooltip },
10937
- React.createElement(InformationIcon, { ml: "md" }))) : null),
10938
- hint ? (React.createElement(Text, { color: "gray.900", textStyle: "body" }, hint)) : null),
10939
- children)),
10940
- React.createElement(react$1.Field.ErrorText, null, errorMessage)));
10941
- };
10942
-
10943
- var RangeSlider = function (_a) {
10944
- var _b = _a.min, min = _b === void 0 ? 0 : _b, _c = _a.max, max = _c === void 0 ? 10 : _c, onChange = _a.onChange, onChangeEnd = _a.onChangeEnd, rest = __rest(_a, ["min", "max", "onChange", "onChangeEnd"]);
10945
- return (React.createElement(react$1.Slider.Root, __assign({ defaultValue: [min, max], min: min, max: max, onValueChange: function (details) { return onChange === null || onChange === void 0 ? void 0 : onChange(details.value); }, onValueChangeEnd: function (details) { return onChangeEnd === null || onChangeEnd === void 0 ? void 0 : onChangeEnd(details.value); } }, rest),
10946
- React.createElement(react$1.Slider.Control, null,
10947
- React.createElement(react$1.Slider.Track, null,
10948
- React.createElement(react$1.Slider.Range, null)),
10949
- React.createElement(react$1.Slider.Thumb, { index: 0, "aria-label": "Min", width: { base: 'md', sm: 'sm' }, height: { base: 'md', sm: 'sm' } }),
10950
- React.createElement(react$1.Slider.Thumb, { index: 1, "aria-label": "Max", width: { base: 'md', sm: 'sm' }, height: { base: 'md', sm: 'sm' } }))));
10951
- };
10952
-
10953
- var TenantSelectionModalLayout = function (_a) {
10954
- var children = _a.children;
10955
- return (React.createElement(react$1.Box, { height: { base: 'full', sm: 'auth0-height' }, maxH: "screen-height", overflowX: "hidden", overflowY: "auto", paddingX: "2xl", paddingY: { base: '3xl', sm: '2xl' }, color: "gray.900" },
10956
- React.createElement(Flex, { direction: "column", alignItems: "center", gridGap: "md", minHeight: "full" }, children)));
11426
+ var TenantSelectionModalLayout = function (_a) {
11427
+ var children = _a.children;
11428
+ return (React.createElement(react$1.Box, { height: { base: 'full', sm: 'auth0-height' }, maxH: "screen-height", overflowX: "hidden", overflowY: "auto", paddingX: "2xl", paddingY: { base: '3xl', sm: '2xl' }, color: "gray.900" },
11429
+ React.createElement(Flex, { direction: "column", alignItems: "center", gridGap: "md", minHeight: "full" }, children)));
10957
11430
  };
10958
11431
 
10959
11432
  var TenantSelectionSelect = function (_a) {
10960
11433
  var tenantSelection = _a.tenantSelection, setTenantSelection = _a.setTenantSelection, user = _a.user;
10961
- var t = i18nPkg.useI18n().t;
11434
+ var t = useI18n().t;
10962
11435
  var onTenantSelect = React.useCallback(function (selectedTenantId) {
10963
11436
  setTenantSelection(function (current) {
10964
11437
  return __assign(__assign({}, current), { selectedTenant: selectedTenantId, showSelection: false });
@@ -10972,7 +11445,7 @@ var img = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEBCAMAAACg8IvxAAA
10972
11445
 
10973
11446
  var TenantSelectionOverview = function (_a) {
10974
11447
  var tenantSelection = _a.tenantSelection, setTenantSelection = _a.setTenantSelection, user = _a.user, selectTenant = _a.selectTenant;
10975
- var t = i18nPkg.useI18n().t;
11448
+ var t = useI18n().t;
10976
11449
  var getSelectButtonLabel = function () {
10977
11450
  if (!tenantSelection.selectedTenant)
10978
11451
  return t('auth.tenantSelection.selectButton');
@@ -11030,6 +11503,73 @@ var TenantSelection = function (_a) {
11030
11503
  React.createElement(TenantSelectionOverview, { user: user, tenantSelection: tenantSelection, setTenantSelection: setTenantSelection, selectTenant: selectTenant })));
11031
11504
  };
11032
11505
 
11506
+ var Underline = function (props) {
11507
+ var recipe = react$1.useSlotRecipe({ key: 'markedText' });
11508
+ var recipeProps = recipe.splitVariantProps(props)[0];
11509
+ var styles = recipe(recipeProps);
11510
+ return (React.createElement(react$1.chakra.svg, { css: styles.mark, xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 150 11", fill: "none", preserveAspectRatio: "none" },
11511
+ React.createElement(react$1.chakra.path, { fill: "brand.primary", d: "M147.274 5.414c-.221.13-.294.258-.218.427.151.21-.07.447-.291.661-.146.214-.516.43-.737.624-.222.151-.443.324-.665.496.523.185.374.166-.664.517.224.061.374.144.598.227-.892.073-1.71.146-2.678.157-2.381.026-4.762.116-7.144.184l-17.934.389c-2.158.045-4.243.025-6.401.049-.893.01-1.861 0-2.754.03-.446.005-.967.053-1.413.058a275.9 275.9 0 0 1-4.169.025c-.148.002-.372-.017-.521.006-2.306.089-4.689.009-6.996.055-1.116.034-2.232.046-3.349.058l-3.796.042c-3.2.035-6.4.07-9.6.085-2.83.01-5.658-.002-8.486.008-1.861 0-3.796.02-5.731.042-.968.01-1.936 0-2.903.01-.819.01-1.563.039-2.382.048-.595.007-1.191-.05-1.861-.043-.893.01-1.786.062-2.753.072l-9.974.046-11.462.127c-1.116.012-2.158.066-3.274.078-.447.005-.968-.032-1.415-.027-1.563.017-3.05.055-4.614.072-.297.003-.595.007-.743.115 0 .042-.371.046-.595.07l-9.6.169c-1.265.014-2.456.048-3.72.083-.67.029-1.265.1-1.935.107-1.34-.007-2.68-.013-4.02-.041a5.054 5.054 0 0 1-1.193-.2c-.821-.224-1.42-.493-1.498-.832-.077-.275-.23-.57-.307-.846-.001-.127.072-.256.145-.384.073-.086.072-.17.146-.256.144-.384.066-.787.36-1.172.145-.278.29-.555.139-.83 0-.063.222-.13.295-.215.294-.343.514-.707.807-1.05.147-.192.517-.409.366-.577-.226-.295.515-.579.065-.85-.15-.083.072-.213.22-.32 0-.043.222-.11.148-.109-.448-.122-.003-.255.145-.341.296-.173-.004-.361.664-.538a6.1 6.1 0 0 1 1.56-.208c1.638-.04 3.35-.08 4.987-.098 2.753-.051 5.433-.102 8.186-.132 3.052-.055 6.177-.09 9.229-.144l6.251-.07 7.964-.087a219.85 219.85 0 0 1 3.722-.02c1.563-.017 3.051-.033 4.614-.029 2.308-.025 4.54-.029 6.848-.033l6.997-.013c2.158-.003 4.242-.025 6.401-.007 2.903.01 5.806.021 8.71.01 2.009 0 4.018-.065 6.028-.066 2.158-.002 4.392.016 6.55-.008 2.53-.028 5.06-.077 7.666-.106 4.167-.045 8.336-.07 12.429-.115 2.977-.033 5.954-.087 9.005-.142l10.568-.18c3.051-.054 6.028-.15 9.004-.226 2.381-.069 4.837-.117 7.293-.165.521-.006.968.053 1.49.09-.221.257-.145.426.229.55-.594.112-.37.216.003.275-.222.13-.444.239-.517.346-.148.129-.072.255.598.248-.371.068-.669.113-1.115.182.075.042.15.083.225.104.596.078.972.392.527.546-.148.065-.595.07-.892.095v.063c.671.078.524.27.601.418.001.17-.146.3-.517.452-.148.065.003.191-.071.298.001.064.076.148.002.191-.666.283-.588.601-.659.92.001.085-.073.15-.147.214-.074.065-.593.198-.071.34Z" })));
11512
+ };
11513
+
11514
+ var Highlight = function (props) {
11515
+ var recipe = react$1.useSlotRecipe({ key: 'markedText' });
11516
+ var recipeProps = recipe.splitVariantProps(props)[0];
11517
+ var styles = recipe(recipeProps);
11518
+ return (React.createElement(react$1.chakra.svg, { css: styles.mark, xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 155 24", fill: "none", preserveAspectRatio: "none" },
11519
+ React.createElement(react$1.chakra.path, { fill: props.highlightColor, d: "M152.76 13.91c-.231.328-.309.657-.231 1.095.154.547-.078 1.15-.309 1.697-.155.548-.541 1.096-.773 1.588-.231.384-.463.822-.695 1.26.541.493.387.438-.695 1.314.232.165.386.384.618.603-.927.164-1.776.328-2.78.328-2.471 0-4.943.164-7.414.274l-18.613.493c-2.239.055-4.402-.055-6.641-.055-.927 0-1.931-.055-2.858 0-.463 0-1.004.11-1.467.11-1.468 0-2.858 0-4.325-.055-.154 0-.386-.055-.541 0-2.394.164-4.865-.11-7.26-.055-1.158.055-2.316.055-3.475.055h-3.938c-3.321 0-6.642 0-9.963-.055-2.935-.055-5.87-.164-8.804-.219-1.93-.055-3.939-.055-5.947-.055-1.004 0-2.008-.054-3.012-.054-.85 0-1.622.054-2.471.054-.618 0-1.236-.164-1.93-.164-.928 0-1.854.11-2.858.11l-10.35-.165H34.137c-1.159 0-2.24.11-3.399.11-.463 0-1.004-.11-1.467-.11-1.622 0-3.166.055-4.788.055-.31 0-.618 0-.773.274 0 .11-.386.11-.617.164l-9.963.164c-1.313 0-2.548.055-3.861.11-.696.055-1.313.219-2.008.219-1.39-.055-2.78-.11-4.17-.219-.464-.055-.85-.274-1.236-.548-.85-.602-1.468-1.314-1.545-2.19-.077-.712-.232-1.479-.309-2.19 0-.33.077-.658.154-.986.078-.22.078-.438.155-.658.154-.985.077-2.026.386-3.011.155-.712.309-1.424.155-2.136 0-.164.231-.329.308-.548.31-.876.541-1.807.85-2.683.154-.493.54-1.04.386-1.479-.232-.766.54-1.478.077-2.19-.154-.22.078-.548.232-.822 0-.109.232-.273.155-.273-.464-.329 0-.657.154-.877.309-.438 0-.93.695-1.369C4.247.493 4.711.33 5.329.33c1.699-.055 3.475-.11 5.174-.11C13.361.164 16.141.109 19 .109 22.165.056 25.409.056 28.575 0h14.751c1.313 0 2.548 0 3.861.055 1.622 0 3.167 0 4.789.055 2.394 0 4.71.054 7.105.109l7.26.164c2.239.055 4.401.055 6.641.165 3.012.11 6.024.219 9.036.273 2.085.055 4.17-.054 6.255 0 2.24.055 4.557.165 6.797.165 2.626 0 5.251-.055 7.954-.055 4.325 0 8.65.055 12.898.055 3.089 0 6.178-.055 9.345-.11l10.966-.164c3.167-.055 6.256-.22 9.345-.329 2.471-.11 5.02-.164 7.568-.219.541 0 1.004.165 1.545.274-.232.657-.154 1.095.232 1.424-.618.274-.386.548 0 .712-.232.328-.464.602-.541.876-.154.329-.077.657.618.657-.386.164-.695.274-1.158.438.077.11.154.22.231.274.618.22 1.004 1.04.541 1.424-.155.164-.618.164-.927.219v.164c.695.22.541.712.618 1.095 0 .439-.155.767-.541 1.15-.154.165 0 .493-.077.767 0 .164.077.383 0 .493-.695.712-.618 1.533-.695 2.355 0 .219-.077.383-.154.547-.078.165-.618.493-.078.877" })));
11520
+ };
11521
+
11522
+ var MarkedTextMark = function (props) {
11523
+ if (props.variant === 'highlight') {
11524
+ return React.createElement(Highlight, __assign({}, props));
11525
+ }
11526
+ if (props.variant === 'underline') {
11527
+ return React.createElement(Underline, __assign({}, props));
11528
+ }
11529
+ return null;
11530
+ };
11531
+
11532
+ var MarkedText = function (_a) {
11533
+ var children = _a.children, props = __rest(_a, ["children"]);
11534
+ var recipe = react$1.useSlotRecipe({ key: 'markedText' });
11535
+ var _b = recipe.splitVariantProps(props), recipeProps = _b[0], boxProps = _b[1];
11536
+ var styles = recipe(recipeProps);
11537
+ var variant = props.variant, highlightColor = props.highlightColor;
11538
+ return (React.createElement(react$1.Box, __assign({ css: styles.container }, boxProps),
11539
+ React.createElement(MarkedTextMark, { variant: variant, highlightColor: highlightColor }),
11540
+ React.createElement(react$1.Box, { css: styles.text }, children)));
11541
+ };
11542
+
11543
+ var _a$1;
11544
+ var themes = (_a$1 = {},
11545
+ _a$1[Brand.AutoScout24] = autoScout24System,
11546
+ _a$1[Brand.MotoScout24] = motoScout24System,
11547
+ _a$1);
11548
+ var ThemeProvider = function (_a) {
11549
+ var children = _a.children, theme = _a.theme;
11550
+ return React.createElement(react$1.ChakraProvider, { value: themes[theme] }, children);
11551
+ };
11552
+
11553
+ var TopListingBadge = function (_a) {
11554
+ var children = _a.children, aspectRatio = _a.aspectRatio;
11555
+ return (React.createElement(react$1.Grid, null,
11556
+ React.createElement(react$1.GridItem, { gridColumn: 1, gridRow: 1 }, aspectRatio ? (React.createElement(react$1.AspectRatio, { ratio: aspectRatio }, children)) : (children)),
11557
+ React.createElement(react$1.GridItem, { gridColumn: 1, gridRow: 1, zIndex: "docked", overflow: "hidden", position: "relative", pointerEvents: "none", css: { touchAction: 'none' } },
11558
+ React.createElement(react$1.Badge, { transform: "rotate(-45deg) translate(-50%) translateY(9px)", position: "absolute", transformOrigin: "top left", width: "4xl", textAlign: "center", paddingLeft: "sm", color: "gray.900" }, "Top"))));
11559
+ };
11560
+
11561
+ var _a;
11562
+ var badgeText = (_a = {},
11563
+ _a[Brand.AutoScout24] = 'TopCar',
11564
+ _a[Brand.MotoScout24] = 'TopMoto',
11565
+ _a);
11566
+ var TopVehicleSharedBadge = function (_a) {
11567
+ var children = _a.children, aspectRatio = _a.aspectRatio, brand = _a.brand;
11568
+ return (React.createElement(react$1.Box, null,
11569
+ React.createElement(react$1.Box, { w: "full", textAlign: "center", textStyle: "heading4", p: "xs", color: "gray.900" }, badgeText[brand]),
11570
+ aspectRatio ? (React.createElement(AspectRatio, { ratio: aspectRatio }, children)) : (children)));
11571
+ };
11572
+
11033
11573
  Object.defineProperty(exports, "Box", {
11034
11574
  enumerable: true,
11035
11575
  get: function () { return react$1.Box; }
@@ -11093,6 +11633,7 @@ exports.CardBody = Body$1;
11093
11633
  exports.CardFooter = Footer$2;
11094
11634
  exports.CardHeader = Header$1;
11095
11635
  exports.CardRoot = Root$2;
11636
+ exports.Carousel = Carousel;
11096
11637
  exports.CartIcon = CartIcon;
11097
11638
  exports.CategoryAIcon = CategoryAIcon;
11098
11639
  exports.CategoryAMinusIcon = CategoryAMinusIcon;
@@ -11118,7 +11659,9 @@ exports.ChevronUpSmallIcon = ChevronUpSmallIcon;
11118
11659
  exports.ChfCurrencyIcon = ChfCurrencyIcon;
11119
11660
  exports.Chip = Chip;
11120
11661
  exports.CloseIcon = CloseIcon;
11662
+ exports.Collapse = Collapse;
11121
11663
  exports.CollapseIcon = CollapseIcon;
11664
+ exports.ColorPicker = ColorPicker;
11122
11665
  exports.CompareIcon = CompareIcon;
11123
11666
  exports.ConsumptionIcon = ConsumptionIcon;
11124
11667
  exports.CopyIcon = CopyIcon;