@jetshop/ui 5.13.12-0 → 5.14.0-alpha.49df897e

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 (556) hide show
  1. package/Accordion/Accordion.d.ts +33 -33
  2. package/Accordion/Accordion.js +58 -58
  3. package/Accordion/Accordion.test.js +73 -73
  4. package/Accordion/__doc_utils__/AccordionHeader.js +12 -12
  5. package/Auth/FormFields/CountriesInput.d.ts +14 -14
  6. package/Auth/FormFields/CountriesInput.js +27 -27
  7. package/Auth/LogInBehavior.d.ts +22 -22
  8. package/Auth/LogInBehavior.js +23 -23
  9. package/Auth/LogInFormProvider.d.ts +7 -7
  10. package/Auth/LogInFormProvider.js +70 -70
  11. package/Auth/LogOut.d.ts +10 -10
  12. package/Auth/LogOut.js +23 -23
  13. package/Auth/logInValidator.d.ts +8 -8
  14. package/Auth/logInValidator.js +15 -15
  15. package/Breadcrumbs/Breadcrumbs.d.ts +14 -14
  16. package/Breadcrumbs/Breadcrumbs.js +83 -83
  17. package/Breadcrumbs/getParentsOrCanonicalRoute.d.ts +3 -3
  18. package/Breadcrumbs/getParentsOrCanonicalRoute.js +13 -13
  19. package/Breadcrumbs/index.d.ts +1 -1
  20. package/Breadcrumbs/index.js +1 -1
  21. package/Breakpoints.d.ts +12 -12
  22. package/Breakpoints.js +35 -35
  23. package/Button/Button.d.ts +14 -14
  24. package/Button/Button.js +59 -59
  25. package/Button/OutlineButton.d.ts +4 -4
  26. package/Button/OutlineButton.js +9 -9
  27. package/Button/SecondaryButton.d.ts +3 -3
  28. package/Button/SecondaryButton.js +8 -8
  29. package/Button/TrendButton.d.ts +3 -3
  30. package/Button/TrendButton.js +7 -7
  31. package/Button/index.d.ts +4 -4
  32. package/Button/index.js +4 -4
  33. package/CategoryLink.d.ts +9 -9
  34. package/CategoryLink.js +42 -42
  35. package/ChannelSelector/ChannelListItem.d.ts +10 -10
  36. package/ChannelSelector/ChannelListItem.js +50 -50
  37. package/ChannelSelector/ChannelListItem.test.js +85 -85
  38. package/ChannelSelector/ChannelSelector.d.ts +63 -63
  39. package/ChannelSelector/ChannelSelector.js +79 -79
  40. package/ChannelSelector/ChannelSelector.test.js +167 -167
  41. package/ChannelSelector/ChannelSelectorButtons.d.ts +3 -3
  42. package/ChannelSelector/ChannelSelectorButtons.js +19 -19
  43. package/ChannelSelector/Channels.d.ts +17 -17
  44. package/ChannelSelector/Channels.js +11 -11
  45. package/ChannelSelector/Channels.test.js +90 -90
  46. package/ChannelSelector/LargeSelector.d.ts +3 -3
  47. package/ChannelSelector/LargeSelector.js +66 -66
  48. package/ChannelSelector/MiniSelector.d.ts +4 -4
  49. package/ChannelSelector/MiniSelector.js +57 -57
  50. package/ChannelSelector/Region.d.ts +28 -28
  51. package/ChannelSelector/Region.js +20 -20
  52. package/ChannelSelector/Region.test.js +37 -37
  53. package/ChannelSelector/exampleChannels.js +577 -577
  54. package/ChannelSelector/groupBy.d.ts +7 -7
  55. package/ChannelSelector/groupBy.js +15 -15
  56. package/ChannelSelector/groupBy.test.js +42 -42
  57. package/Checkbox/Checkbox.d.ts +10 -10
  58. package/Checkbox/Checkbox.js +68 -68
  59. package/Checkbox/CheckboxGroup.d.ts +23 -23
  60. package/Checkbox/CheckboxGroup.js +21 -21
  61. package/Checkbox/index.d.ts +2 -2
  62. package/Checkbox/index.js +2 -2
  63. package/ContentPageLink.d.ts +9 -9
  64. package/ContentPageLink.js +36 -36
  65. package/ContentRenderer.d.ts +9 -9
  66. package/ContentRenderer.js +35 -35
  67. package/DropdownMenu/Button.d.ts +7 -7
  68. package/DropdownMenu/Button.js +31 -31
  69. package/DropdownMenu/DropdownMenu.d.ts +21 -21
  70. package/DropdownMenu/DropdownMenu.js +71 -71
  71. package/DropdownMenu/Item.d.ts +13 -13
  72. package/DropdownMenu/Item.js +47 -47
  73. package/DropdownMenu/Items.d.ts +16 -16
  74. package/DropdownMenu/Items.js +52 -52
  75. package/DropdownMenu/index.d.ts +4 -4
  76. package/DropdownMenu/index.js +4 -4
  77. package/ErrorBoundary/Generic.d.ts +17 -17
  78. package/ErrorBoundary/Generic.js +68 -68
  79. package/ErrorBoundary/PassThrough.d.ts +3 -3
  80. package/ErrorBoundary/PassThrough.js +6 -6
  81. package/Gallery/Gallery.d.ts +39 -39
  82. package/Gallery/Gallery.js +121 -121
  83. package/Gallery/constructGallery.d.ts +15 -15
  84. package/Gallery/constructGallery.js +40 -40
  85. package/Image/B2BImage.d.ts +50 -50
  86. package/Image/B2BImage.js +52 -52
  87. package/Image/BaseImage.d.ts +39 -39
  88. package/Image/BaseImage.js +191 -191
  89. package/Image/Fallback.d.ts +5 -5
  90. package/Image/Fallback.js +3 -3
  91. package/Image/FlightImage.d.ts +52 -52
  92. package/Image/FlightImage.js +57 -57
  93. package/Image/FlightImage.test.js +277 -277
  94. package/Image/Image.d.ts +2 -2
  95. package/Image/Image.js +2 -2
  96. package/Image/index.d.ts +1 -1
  97. package/Image/index.js +1 -1
  98. package/Image/useConstructImage.d.ts +46 -46
  99. package/Image/useConstructImage.js +96 -96
  100. package/Image/utils/aspectRatioToFraction.d.ts +2 -2
  101. package/Image/utils/aspectRatioToFraction.js +10 -10
  102. package/Image/utils/getFullUrl.d.ts +6 -6
  103. package/Image/utils/getFullUrl.js +17 -17
  104. package/Image/utils/getImageWidth.d.ts +1 -1
  105. package/Image/utils/getImageWidth.js +11 -11
  106. package/Image/utils/getImageWidths.d.ts +2 -2
  107. package/Image/utils/getImageWidths.js +13 -13
  108. package/Image/utils/getLQIP.d.ts +8 -8
  109. package/Image/utils/getLQIP.js +19 -19
  110. package/Image/utils/getLargestSize.d.ts +7 -7
  111. package/Image/utils/getLargestSize.js +16 -16
  112. package/Image/utils/getSizeForBreakpoint.d.ts +2 -2
  113. package/Image/utils/getSizeForBreakpoint.js +15 -15
  114. package/Image/utils/getSizesMap.d.ts +2 -2
  115. package/Image/utils/getSizesMap.js +21 -21
  116. package/Image/utils/getSmallestSize.d.ts +2 -2
  117. package/Image/utils/getSmallestSize.js +11 -11
  118. package/Image/utils/getSrcSetFromWidths.d.ts +10 -10
  119. package/Image/utils/getSrcSetFromWidths.js +8 -8
  120. package/Image/utils/getSrcWithParams.d.ts +3 -3
  121. package/Image/utils/getSrcWithParams.js +28 -28
  122. package/Image/utils/paddingForAspectRatio.d.ts +1 -1
  123. package/Image/utils/paddingForAspectRatio.js +5 -5
  124. package/Image/utils/remToPx.d.ts +1 -1
  125. package/Image/utils/remToPx.js +1 -1
  126. package/Image/utils/sizeToNumber.d.ts +2 -2
  127. package/Image/utils/sizeToNumber.js +26 -26
  128. package/Input/Input.d.ts +6 -6
  129. package/Input/Input.js +44 -44
  130. package/Input/index.d.ts +3 -3
  131. package/Input/index.js +3 -3
  132. package/JetshopText.d.ts +3 -3
  133. package/JetshopText.js +11 -11
  134. package/Loading/LoadingBar.d.ts +8 -8
  135. package/Loading/LoadingBar.js +57 -57
  136. package/Loading/LoadingLine.d.ts +31 -31
  137. package/Loading/LoadingLine.js +25 -25
  138. package/Loading/LoadingLine.test.js +18 -18
  139. package/Loading/NetworkStatusNotifier.d.ts +2 -2
  140. package/Loading/NetworkStatusNotifier.js +3 -3
  141. package/Menu/GetMoreSubcategoriesQuery.gql +25 -25
  142. package/Menu/MenuContainer.d.ts +28 -28
  143. package/Menu/MenuContainer.js +45 -45
  144. package/Menu/MenuContainer.test.js +245 -245
  145. package/Menu/RecursiveTree.d.ts +28 -28
  146. package/Menu/RecursiveTree.js +90 -90
  147. package/Menu/RecursiveTree.test.js +416 -416
  148. package/Modal/Drawer/Drawer.d.ts +11 -11
  149. package/Modal/Drawer/Drawer.js +30 -30
  150. package/Modal/Drawer/DrawerTarget.d.ts +6 -6
  151. package/Modal/Drawer/DrawerTarget.js +11 -11
  152. package/Modal/Drawer/DrawerTarget.test.js +92 -92
  153. package/Modal/Drawer/DrawerTrigger.d.ts +11 -11
  154. package/Modal/Drawer/DrawerTrigger.js +15 -15
  155. package/Modal/Drawer/DrawerTrigger.test.js +51 -51
  156. package/Modal/Drawer/index.d.ts +3 -3
  157. package/Modal/Drawer/index.js +3 -3
  158. package/Modal/Flyout/FlyoutTarget.d.ts +10 -10
  159. package/Modal/Flyout/FlyoutTarget.js +14 -14
  160. package/Modal/Flyout/FlyoutTarget.test.js +84 -84
  161. package/Modal/Flyout/FlyoutTrigger.d.ts +15 -15
  162. package/Modal/Flyout/FlyoutTrigger.js +17 -17
  163. package/Modal/Flyout/FlyoutTrigger.test.js +72 -72
  164. package/Modal/Flyout/index.d.ts +2 -2
  165. package/Modal/Flyout/index.js +2 -2
  166. package/Modal/ModalContext.d.ts +26 -26
  167. package/Modal/ModalContext.js +8 -8
  168. package/Modal/ModalProvider.d.ts +5 -5
  169. package/Modal/ModalProvider.js +82 -82
  170. package/Modal/ModalProvider.test.js +26 -26
  171. package/Modal/ModalRoot.d.ts +3 -3
  172. package/Modal/ModalRoot.js +43 -43
  173. package/Modal/ModalRoot.test.js +80 -80
  174. package/Modal/ModalTrigger.d.ts +9 -9
  175. package/Modal/ModalTrigger.js +8 -8
  176. package/Modal/__test_utils__/getComponentWithModalContext.js +29 -29
  177. package/Pagination/Pagination.d.ts +7 -7
  178. package/Pagination/Pagination.js +22 -22
  179. package/Pagination/PaginationBehaviour.d.ts +52 -52
  180. package/Pagination/PaginationBehaviour.js +67 -67
  181. package/Pagination/index.d.ts +2 -2
  182. package/Pagination/index.js +2 -2
  183. package/Pagination/usePagination.d.ts +15 -15
  184. package/Pagination/usePagination.js +45 -45
  185. package/PreOrderDateSelector/PreOrderDateSelector.d.ts +20 -20
  186. package/PreOrderDateSelector/PreOrderDateSelector.js +73 -73
  187. package/PreOrderDateSelector/index.d.ts +2 -2
  188. package/PreOrderDateSelector/index.js +2 -2
  189. package/Price/Currency.d.ts +9 -9
  190. package/Price/Currency.js +10 -10
  191. package/Price/Price.d.ts +29 -28
  192. package/Price/Price.js +35 -34
  193. package/Price/Price.js.map +1 -1
  194. package/Price/index.d.ts +1 -1
  195. package/Price/index.js +1 -1
  196. package/ProductLink.d.ts +21 -21
  197. package/ProductLink.js +81 -81
  198. package/ProductList/Badges.d.ts +6 -6
  199. package/ProductList/Badges.js +55 -55
  200. package/ProductList/GridProduct.d.ts +24 -24
  201. package/ProductList/GridProduct.js +57 -57
  202. package/ProductList/ProductGrid.d.ts +16 -16
  203. package/ProductList/ProductGrid.js +29 -29
  204. package/ProductList/ProductImage.d.ts +12 -12
  205. package/ProductList/ProductImage.js +20 -20
  206. package/ProductSpecifications/ProductSpecifications.d.ts +8 -8
  207. package/ProductSpecifications/ProductSpecifications.js +77 -77
  208. package/ScrollRestorationHandler/ScrollRestorationHandler.d.ts +8 -8
  209. package/ScrollRestorationHandler/ScrollRestorationHandler.js +16 -16
  210. package/ScrollRestorationHandler/ScrollRestorationHandler.test.js +75 -75
  211. package/ScrollRestorationHandler/index.d.ts +1 -1
  212. package/ScrollRestorationHandler/index.js +1 -1
  213. package/ScrollRestorationHandler/isInIgnoredRouteTypes.d.ts +6 -6
  214. package/ScrollRestorationHandler/isInIgnoredRouteTypes.js +7 -7
  215. package/ScrollRestorationHandler/useScrollRestore.d.ts +7 -7
  216. package/ScrollRestorationHandler/useScrollRestore.js +19 -19
  217. package/Search/AutocompleteQuery.gql +10 -10
  218. package/Search/SearchAutoCompleteContainer.d.ts +45 -45
  219. package/Search/SearchAutoCompleteContainer.js +171 -171
  220. package/Search/SearchAutoCompleteContainer.test.js +460 -460
  221. package/Search/SearchField.d.ts +15 -15
  222. package/Search/SearchField.js +96 -96
  223. package/Search/SearchPage/PageOf.d.ts +5 -5
  224. package/Search/SearchPage/PageOf.js +6 -6
  225. package/Search/SearchPage/SearchMeta.d.ts +16 -16
  226. package/Search/SearchPage/SearchMeta.js +19 -19
  227. package/Search/SearchPage/SearchPageBehaviour.d.ts +19 -19
  228. package/Search/SearchPage/SearchPageBehaviour.js +66 -66
  229. package/Search/SuggestedTerm.d.ts +16 -16
  230. package/Search/SuggestedTerm.js +34 -34
  231. package/Search/index.d.ts +1 -1
  232. package/Search/index.js +1 -1
  233. package/Select/Components.d.ts +28 -28
  234. package/Select/Components.js +90 -90
  235. package/Select/SelectComponents/Quantity.d.ts +5 -5
  236. package/Select/SelectComponents/Quantity.js +7 -7
  237. package/Select/index.d.ts +5 -5
  238. package/Select/index.js +1 -1
  239. package/SortOrder/SortOrder.d.ts +16 -16
  240. package/SortOrder/SortOrder.js +31 -31
  241. package/SortOrder/SortOrderDropdown.d.ts +9 -9
  242. package/SortOrder/SortOrderDropdown.js +24 -24
  243. package/SortOrder/SortOrderList.d.ts +7 -7
  244. package/SortOrder/SortOrderList.js +16 -16
  245. package/StartPageRenderer/StartPageRenderer.d.ts +17 -17
  246. package/StartPageRenderer/StartPageRenderer.js +51 -51
  247. package/StartPageRenderer/index.d.ts +1 -1
  248. package/StartPageRenderer/index.js +1 -1
  249. package/Stock/StockStatusContainer.d.ts +16 -16
  250. package/Stock/StockStatusContainer.js +39 -39
  251. package/Stock/__tests__/StockStatusContainer.test.js +65 -65
  252. package/Text/Text.d.ts +11 -11
  253. package/Text/Text.js +21 -21
  254. package/Text/index.d.ts +3 -3
  255. package/Text/index.js +3 -3
  256. package/Theme/createTheme.d.ts +16 -16
  257. package/Theme/createTheme.js +4 -4
  258. package/Theme/cssReset.d.ts +1 -1
  259. package/Theme/cssReset.js +159 -159
  260. package/Theme/normalizeCss.d.ts +1 -1
  261. package/Theme/normalizeCss.js +356 -356
  262. package/Theme/sanitizeCss.d.ts +1 -1
  263. package/Theme/sanitizeCss.js +571 -571
  264. package/WindowGrid/WindowGrid.d.ts +11 -11
  265. package/WindowGrid/WindowGrid.js +57 -57
  266. package/WindowGrid/index.d.ts +1 -1
  267. package/WindowGrid/index.js +1 -1
  268. package/WindowGrid/useResizeObserver.d.ts +8 -8
  269. package/WindowGrid/useResizeObserver.js +13 -13
  270. package/WindowGrid/useScrollWithWindow.d.ts +12 -12
  271. package/WindowGrid/useScrollWithWindow.js +38 -38
  272. package/dependencies.d.ts +98 -98
  273. package/fuzzySearch/fuzzySearch.d.ts +8 -8
  274. package/fuzzySearch/fuzzySearch.js +42 -42
  275. package/fuzzySearch/index.d.ts +1 -1
  276. package/fuzzySearch/index.js +1 -1
  277. package/global.d.ts +1 -1
  278. package/hooks/index.d.ts +2 -2
  279. package/hooks/index.js +2 -2
  280. package/hooks/useOnClickOutside.d.ts +6 -6
  281. package/hooks/useOnClickOutside.js +16 -16
  282. package/hooks/useOnEsc.d.ts +4 -4
  283. package/hooks/useOnEsc.js +16 -16
  284. package/package.json +1 -1
  285. package/setupTests.js +2 -2
  286. package/svg/flags/ad.svg +150 -150
  287. package/svg/flags/ae.svg +6 -6
  288. package/svg/flags/af.svg +81 -81
  289. package/svg/flags/ag.svg +14 -14
  290. package/svg/flags/ai.svg +767 -767
  291. package/svg/flags/al.svg +5 -5
  292. package/svg/flags/am.svg +5 -5
  293. package/svg/flags/ao.svg +13 -13
  294. package/svg/flags/aq.svg +6 -6
  295. package/svg/flags/ar.svg +31 -31
  296. package/svg/flags/as.svg +33 -33
  297. package/svg/flags/at.svg +6 -6
  298. package/svg/flags/au.svg +9 -9
  299. package/svg/flags/aw.svg +186 -186
  300. package/svg/flags/ax.svg +18 -18
  301. package/svg/flags/az.svg +8 -8
  302. package/svg/flags/ba.svg +12 -12
  303. package/svg/flags/bb.svg +6 -6
  304. package/svg/flags/bd.svg +4 -4
  305. package/svg/flags/be.svg +7 -7
  306. package/svg/flags/bf.svg +7 -7
  307. package/svg/flags/bg.svg +7 -7
  308. package/svg/flags/bh.svg +11 -11
  309. package/svg/flags/bi.svg +15 -15
  310. package/svg/flags/bj.svg +14 -14
  311. package/svg/flags/bl.svg +7 -7
  312. package/svg/flags/bm.svg +98 -98
  313. package/svg/flags/bn.svg +36 -36
  314. package/svg/flags/bo.svg +676 -676
  315. package/svg/flags/bq.svg +5 -5
  316. package/svg/flags/br.svg +45 -45
  317. package/svg/flags/bs.svg +13 -13
  318. package/svg/flags/bt.svg +89 -89
  319. package/svg/flags/bv.svg +13 -13
  320. package/svg/flags/bw.svg +7 -7
  321. package/svg/flags/by.svg +20 -20
  322. package/svg/flags/bz.svg +145 -145
  323. package/svg/flags/ca.svg +4 -4
  324. package/svg/flags/cc.svg +19 -19
  325. package/svg/flags/cd.svg +5 -5
  326. package/svg/flags/cf.svg +15 -15
  327. package/svg/flags/cg.svg +12 -12
  328. package/svg/flags/ch.svg +9 -9
  329. package/svg/flags/ci.svg +7 -7
  330. package/svg/flags/ck.svg +9 -9
  331. package/svg/flags/cl.svg +13 -13
  332. package/svg/flags/cm.svg +15 -15
  333. package/svg/flags/cn.svg +11 -11
  334. package/svg/flags/co.svg +7 -7
  335. package/svg/flags/cr.svg +7 -7
  336. package/svg/flags/cu.svg +13 -13
  337. package/svg/flags/cv.svg +13 -13
  338. package/svg/flags/cw.svg +14 -14
  339. package/svg/flags/cx.svg +15 -15
  340. package/svg/flags/cy.svg +6 -6
  341. package/svg/flags/cz.svg +12 -12
  342. package/svg/flags/de.svg +5 -5
  343. package/svg/flags/dj.svg +13 -13
  344. package/svg/flags/dk.svg +5 -5
  345. package/svg/flags/dm.svg +152 -152
  346. package/svg/flags/do.svg +6745 -6745
  347. package/svg/flags/dz.svg +5 -5
  348. package/svg/flags/ec.svg +138 -138
  349. package/svg/flags/ee.svg +7 -7
  350. package/svg/flags/eg.svg +38 -38
  351. package/svg/flags/eh.svg +15 -15
  352. package/svg/flags/er.svg +8 -8
  353. package/svg/flags/es-ct.svg +4 -4
  354. package/svg/flags/es.svg +544 -544
  355. package/svg/flags/et.svg +14 -14
  356. package/svg/flags/eu.svg +28 -28
  357. package/svg/flags/fi.svg +5 -5
  358. package/svg/flags/fj.svg +120 -120
  359. package/svg/flags/fk.svg +89 -89
  360. package/svg/flags/fm.svg +11 -11
  361. package/svg/flags/fo.svg +12 -12
  362. package/svg/flags/fr.svg +7 -7
  363. package/svg/flags/ga.svg +7 -7
  364. package/svg/flags/gb-eng.svg +5 -5
  365. package/svg/flags/gb-nir.svg +131 -131
  366. package/svg/flags/gb-sct.svg +4 -4
  367. package/svg/flags/gb-wls.svg +9 -9
  368. package/svg/flags/gb.svg +15 -15
  369. package/svg/flags/gd.svg +27 -27
  370. package/svg/flags/ge.svg +6 -6
  371. package/svg/flags/gf.svg +5 -5
  372. package/svg/flags/gg.svg +9 -9
  373. package/svg/flags/gh.svg +6 -6
  374. package/svg/flags/gi.svg +32 -32
  375. package/svg/flags/gl.svg +4 -4
  376. package/svg/flags/gm.svg +14 -14
  377. package/svg/flags/gn.svg +7 -7
  378. package/svg/flags/gp.svg +7 -7
  379. package/svg/flags/gq.svg +23 -23
  380. package/svg/flags/gr.svg +22 -22
  381. package/svg/flags/gs.svg +201 -201
  382. package/svg/flags/gt.svg +204 -204
  383. package/svg/flags/gu.svg +39 -39
  384. package/svg/flags/gw.svg +13 -13
  385. package/svg/flags/gy.svg +9 -9
  386. package/svg/flags/hk.svg +30 -30
  387. package/svg/flags/hm.svg +9 -9
  388. package/svg/flags/hn.svg +18 -18
  389. package/svg/flags/hr.svg +58 -58
  390. package/svg/flags/ht.svg +116 -116
  391. package/svg/flags/hu.svg +7 -7
  392. package/svg/flags/id.svg +6 -6
  393. package/svg/flags/ie.svg +7 -7
  394. package/svg/flags/il.svg +14 -14
  395. package/svg/flags/im.svg +36 -36
  396. package/svg/flags/in.svg +25 -25
  397. package/svg/flags/io.svg +138 -138
  398. package/svg/flags/iq.svg +10 -10
  399. package/svg/flags/ir.svg +219 -219
  400. package/svg/flags/is.svg +12 -12
  401. package/svg/flags/it.svg +7 -7
  402. package/svg/flags/je.svg +31 -31
  403. package/svg/flags/jm.svg +8 -8
  404. package/svg/flags/jo.svg +16 -16
  405. package/svg/flags/jp.svg +11 -11
  406. package/svg/flags/ke.svg +23 -23
  407. package/svg/flags/kg.svg +15 -15
  408. package/svg/flags/kh.svg +61 -61
  409. package/svg/flags/ki.svg +36 -36
  410. package/svg/flags/km.svg +16 -16
  411. package/svg/flags/kn.svg +14 -14
  412. package/svg/flags/kp.svg +15 -15
  413. package/svg/flags/kr.svg +24 -24
  414. package/svg/flags/kw.svg +13 -13
  415. package/svg/flags/ky.svg +63 -63
  416. package/svg/flags/kz.svg +23 -23
  417. package/svg/flags/la.svg +12 -12
  418. package/svg/flags/lb.svg +15 -15
  419. package/svg/flags/lc.svg +8 -8
  420. package/svg/flags/li.svg +43 -43
  421. package/svg/flags/lk.svg +22 -22
  422. package/svg/flags/lr.svg +14 -14
  423. package/svg/flags/ls.svg +8 -8
  424. package/svg/flags/lt.svg +7 -7
  425. package/svg/flags/lu.svg +5 -5
  426. package/svg/flags/lv.svg +6 -6
  427. package/svg/flags/ly.svg +13 -13
  428. package/svg/flags/ma.svg +4 -4
  429. package/svg/flags/mc.svg +6 -6
  430. package/svg/flags/md.svg +70 -70
  431. package/svg/flags/me.svg +116 -116
  432. package/svg/flags/mf.svg +7 -7
  433. package/svg/flags/mg.svg +7 -7
  434. package/svg/flags/mh.svg +7 -7
  435. package/svg/flags/mk.svg +5 -5
  436. package/svg/flags/ml.svg +7 -7
  437. package/svg/flags/mm.svg +16 -16
  438. package/svg/flags/mn.svg +13 -13
  439. package/svg/flags/mo.svg +9 -9
  440. package/svg/flags/mp.svg +86 -86
  441. package/svg/flags/mq.svg +7 -7
  442. package/svg/flags/mr.svg +6 -6
  443. package/svg/flags/ms.svg +39 -39
  444. package/svg/flags/mt.svg +49 -49
  445. package/svg/flags/mu.svg +8 -8
  446. package/svg/flags/mv.svg +6 -6
  447. package/svg/flags/mw.svg +10 -10
  448. package/svg/flags/mx.svg +382 -382
  449. package/svg/flags/my.svg +15 -15
  450. package/svg/flags/mz.svg +21 -21
  451. package/svg/flags/na.svg +16 -16
  452. package/svg/flags/nc.svg +7 -7
  453. package/svg/flags/ne.svg +6 -6
  454. package/svg/flags/nf.svg +9 -9
  455. package/svg/flags/ng.svg +6 -6
  456. package/svg/flags/ni.svg +129 -129
  457. package/svg/flags/nl.svg +7 -7
  458. package/svg/flags/no.svg +7 -7
  459. package/svg/flags/np.svg +14 -14
  460. package/svg/flags/nr.svg +12 -12
  461. package/svg/flags/nu.svg +26 -26
  462. package/svg/flags/nz.svg +41 -41
  463. package/svg/flags/om.svg +115 -115
  464. package/svg/flags/pa.svg +14 -14
  465. package/svg/flags/pe.svg +244 -244
  466. package/svg/flags/pf.svg +19 -19
  467. package/svg/flags/pg.svg +9 -9
  468. package/svg/flags/ph.svg +13 -13
  469. package/svg/flags/pk.svg +15 -15
  470. package/svg/flags/pl.svg +6 -6
  471. package/svg/flags/pm.svg +7 -7
  472. package/svg/flags/pn.svg +62 -62
  473. package/svg/flags/pr.svg +13 -13
  474. package/svg/flags/ps.svg +15 -15
  475. package/svg/flags/pt.svg +57 -57
  476. package/svg/flags/pw.svg +11 -11
  477. package/svg/flags/py.svg +157 -157
  478. package/svg/flags/qa.svg +4 -4
  479. package/svg/flags/re.svg +7 -7
  480. package/svg/flags/ro.svg +7 -7
  481. package/svg/flags/rs.svg +292 -292
  482. package/svg/flags/ru.svg +7 -7
  483. package/svg/flags/rw.svg +13 -13
  484. package/svg/flags/sa.svg +26 -26
  485. package/svg/flags/sb.svg +13 -13
  486. package/svg/flags/sc.svg +14 -14
  487. package/svg/flags/sd.svg +13 -13
  488. package/svg/flags/se.svg +16 -16
  489. package/svg/flags/sg.svg +13 -13
  490. package/svg/flags/sh.svg +74 -74
  491. package/svg/flags/si.svg +18 -18
  492. package/svg/flags/sj.svg +7 -7
  493. package/svg/flags/sk.svg +9 -9
  494. package/svg/flags/sl.svg +7 -7
  495. package/svg/flags/sm.svg +91 -91
  496. package/svg/flags/sn.svg +8 -8
  497. package/svg/flags/so.svg +11 -11
  498. package/svg/flags/sr.svg +6 -6
  499. package/svg/flags/ss.svg +8 -8
  500. package/svg/flags/st.svg +16 -16
  501. package/svg/flags/sv.svg +606 -606
  502. package/svg/flags/sx.svg +56 -56
  503. package/svg/flags/sy.svg +6 -6
  504. package/svg/flags/sz.svg +45 -45
  505. package/svg/flags/tc.svg +67 -67
  506. package/svg/flags/td.svg +7 -7
  507. package/svg/flags/tf.svg +15 -15
  508. package/svg/flags/tg.svg +14 -14
  509. package/svg/flags/th.svg +7 -7
  510. package/svg/flags/tj.svg +22 -22
  511. package/svg/flags/tk.svg +5 -5
  512. package/svg/flags/tl.svg +13 -13
  513. package/svg/flags/tm.svg +206 -206
  514. package/svg/flags/tn.svg +13 -13
  515. package/svg/flags/to.svg +10 -10
  516. package/svg/flags/tr.svg +8 -8
  517. package/svg/flags/tt.svg +5 -5
  518. package/svg/flags/tv.svg +27 -27
  519. package/svg/flags/tw.svg +14 -14
  520. package/svg/flags/tz.svg +13 -13
  521. package/svg/flags/ua.svg +6 -6
  522. package/svg/flags/ug.svg +30 -30
  523. package/svg/flags/um.svg +15 -15
  524. package/svg/flags/un.svg +16 -16
  525. package/svg/flags/us.svg +10 -10
  526. package/svg/flags/uy.svg +28 -28
  527. package/svg/flags/uz.svg +30 -30
  528. package/svg/flags/va.svg +479 -479
  529. package/svg/flags/vc.svg +8 -8
  530. package/svg/flags/ve.svg +26 -26
  531. package/svg/flags/vg.svg +127 -127
  532. package/svg/flags/vi.svg +28 -28
  533. package/svg/flags/vn.svg +11 -11
  534. package/svg/flags/vu.svg +18 -18
  535. package/svg/flags/wf.svg +7 -7
  536. package/svg/flags/ws.svg +7 -7
  537. package/svg/flags/ye.svg +7 -7
  538. package/svg/flags/yt.svg +7 -7
  539. package/svg/flags/za.svg +17 -17
  540. package/svg/flags/zm.svg +27 -27
  541. package/svg/flags/zw.svg +21 -21
  542. package/test-utils/mock-response/product-status.js +44 -44
  543. package/utils/breakpoints.d.ts +23 -23
  544. package/utils/breakpoints.js +89 -89
  545. package/utils/callAllEventHandlers.d.ts +5 -5
  546. package/utils/callAllEventHandlers.js +8 -8
  547. package/utils/text.d.ts +1 -1
  548. package/utils/text.js +22 -22
  549. package/utils/theme.d.ts +3 -3
  550. package/utils/theme.js +4 -4
  551. package/utils/useHoverIntent.d.ts +10 -10
  552. package/utils/useHoverIntent.js +77 -77
  553. package/utils/usePropsOfType.d.ts +11 -11
  554. package/utils/usePropsOfType.js +17 -17
  555. package/withFlightUI.d.ts +17 -17
  556. package/withFlightUI.js +19 -19
@@ -1,69 +1,69 @@
1
- import * as React from 'react';
2
- import report from '@jetshop/core/errorReporting';
3
- import { styled } from 'linaria/react';
4
- const Wrapper = styled('section') `
5
- width: 57ch;
6
- max-width: 100%;
7
- margin: 4rem auto;
8
- padding: 1rem;
9
- a {
10
- display: inline-block;
11
- margin: 1rem 0 3rem 0;
12
- border-radius: 3px;
13
- padding: 0.5rem;
14
- text-decoration: none;
15
- font-weight: 600;
16
- background: #e2e2e2;
17
- border: 1px solid #c3c3c3;
18
- color: #000;
19
- :hover {
20
- background: #eaeaea;
21
- }
22
- }
23
- h1 {
24
- font-size: 1.5rem;
25
- margin-bottom: 2rem;
26
- }
27
- pre {
28
- font-size: 0.875rem;
29
- line-height: 1.5;
30
- color: #585858;
31
- }
32
- `;
33
- export const DefaultError = ({ error, info }) => (React.createElement(Wrapper, null,
34
- React.createElement("h1", null, "Something went wrong!"),
35
- React.createElement("p", null, "Sorry! Our developers have been notified."),
36
- React.createElement("div", null,
37
- React.createElement("a", { href: "/" }, "Go back to the start page")),
38
- process.env.NODE_ENV !== 'production' && (React.createElement("div", null,
39
- error && React.createElement("p", null,
40
- "Error: ",
41
- error.message),
42
- info && React.createElement("pre", null, info.componentStack)))));
43
- class ErrorBoundary extends React.Component {
44
- constructor() {
45
- super(...arguments);
46
- this.state = {
47
- error: undefined,
48
- info: undefined
49
- };
50
- }
51
- componentDidCatch(error, info) {
52
- const { extraInfo = {} } = this.props;
53
- // Report to Sentry
54
- report(error, Object.assign(Object.assign({}, extraInfo), { reactInfo: info }));
55
- this.setState({ error, info });
56
- }
57
- render() {
58
- const Comp = this.props.component;
59
- if (!this.state.error) {
60
- return this.props.children;
61
- }
62
- return React.createElement(Comp, Object.assign({}, this.state));
63
- }
64
- }
65
- ErrorBoundary.defaultProps = {
66
- component: DefaultError
67
- };
68
- export default ErrorBoundary;
1
+ import * as React from 'react';
2
+ import report from '@jetshop/core/errorReporting';
3
+ import { styled } from 'linaria/react';
4
+ const Wrapper = styled('section') `
5
+ width: 57ch;
6
+ max-width: 100%;
7
+ margin: 4rem auto;
8
+ padding: 1rem;
9
+ a {
10
+ display: inline-block;
11
+ margin: 1rem 0 3rem 0;
12
+ border-radius: 3px;
13
+ padding: 0.5rem;
14
+ text-decoration: none;
15
+ font-weight: 600;
16
+ background: #e2e2e2;
17
+ border: 1px solid #c3c3c3;
18
+ color: #000;
19
+ :hover {
20
+ background: #eaeaea;
21
+ }
22
+ }
23
+ h1 {
24
+ font-size: 1.5rem;
25
+ margin-bottom: 2rem;
26
+ }
27
+ pre {
28
+ font-size: 0.875rem;
29
+ line-height: 1.5;
30
+ color: #585858;
31
+ }
32
+ `;
33
+ export const DefaultError = ({ error, info }) => (React.createElement(Wrapper, null,
34
+ React.createElement("h1", null, "Something went wrong!"),
35
+ React.createElement("p", null, "Sorry! Our developers have been notified."),
36
+ React.createElement("div", null,
37
+ React.createElement("a", { href: "/" }, "Go back to the start page")),
38
+ process.env.NODE_ENV !== 'production' && (React.createElement("div", null,
39
+ error && React.createElement("p", null,
40
+ "Error: ",
41
+ error.message),
42
+ info && React.createElement("pre", null, info.componentStack)))));
43
+ class ErrorBoundary extends React.Component {
44
+ constructor() {
45
+ super(...arguments);
46
+ this.state = {
47
+ error: undefined,
48
+ info: undefined
49
+ };
50
+ }
51
+ componentDidCatch(error, info) {
52
+ const { extraInfo = {} } = this.props;
53
+ // Report to Sentry
54
+ report(error, Object.assign(Object.assign({}, extraInfo), { reactInfo: info }));
55
+ this.setState({ error, info });
56
+ }
57
+ render() {
58
+ const Comp = this.props.component;
59
+ if (!this.state.error) {
60
+ return this.props.children;
61
+ }
62
+ return React.createElement(Comp, Object.assign({}, this.state));
63
+ }
64
+ }
65
+ ErrorBoundary.defaultProps = {
66
+ component: DefaultError
67
+ };
68
+ export default ErrorBoundary;
69
69
  //# sourceMappingURL=Generic.js.map
@@ -1,3 +1,3 @@
1
- import React from 'react';
2
- declare const PassThrough: React.FC;
3
- export default PassThrough;
1
+ import React from 'react';
2
+ declare const PassThrough: React.FC;
3
+ export default PassThrough;
@@ -1,7 +1,7 @@
1
- // This should be used in cases where it is more desired to render nothing
2
- // rather than rendering a message when an error boundary is hit.
3
- const PassThrough = () => {
4
- return null;
5
- };
6
- export default PassThrough;
1
+ // This should be used in cases where it is more desired to render nothing
2
+ // rather than rendering a message when an error boundary is hit.
3
+ const PassThrough = () => {
4
+ return null;
5
+ };
6
+ export default PassThrough;
7
7
  //# sourceMappingURL=PassThrough.js.map
@@ -1,39 +1,39 @@
1
- import { ProductImage } from '@jetshop/core/types';
2
- import * as React from 'react';
3
- import 'react-image-gallery/styles/css/image-gallery.css';
4
- export interface GalleryProps {
5
- images: ProductImage[];
6
- /** @default null
7
- * The aspect ratio used for the gallery images. If unknown, pass `null` */
8
- aspect?: string;
9
- /**
10
- * @default [1, 1, 1, 1 / 2, 1 / 2]
11
- * An array of sizes to be used for the img
12
- * srcSet. Each size maps to a breakpoint */
13
- sizes?: number[];
14
- /**
15
- * @default ['5rem']
16
- */
17
- thumbnailSizes?: number[];
18
- /**
19
- * @default [1, 1, 1, 1 ]
20
- */
21
- fullScreenSizes?: number[];
22
- /** @default bottom
23
- * The position of image thumbnails */
24
- thumbnailPosition?: 'top' | 'right' | 'bottom' | 'left';
25
- /** The desired background colour for the gallery */
26
- backgroundColor?: string;
27
- /** A ref to forward on to the image gallery in order to access imperative functions */
28
- galleryRef?: {
29
- current: any;
30
- };
31
- quality?: number;
32
- thumbnailQuality?: number;
33
- eagerlyLoad?: number[];
34
- }
35
- export interface GalleryState {
36
- isFullscreen: boolean;
37
- }
38
- declare const Gallery: React.FC<GalleryProps>;
39
- export default Gallery;
1
+ import { ProductImage } from '@jetshop/core/types';
2
+ import * as React from 'react';
3
+ import 'react-image-gallery/styles/css/image-gallery.css';
4
+ export interface GalleryProps {
5
+ images: ProductImage[];
6
+ /** @default null
7
+ * The aspect ratio used for the gallery images. If unknown, pass `null` */
8
+ aspect?: string;
9
+ /**
10
+ * @default [1, 1, 1, 1 / 2, 1 / 2]
11
+ * An array of sizes to be used for the img
12
+ * srcSet. Each size maps to a breakpoint */
13
+ sizes?: number[];
14
+ /**
15
+ * @default ['5rem']
16
+ */
17
+ thumbnailSizes?: number[];
18
+ /**
19
+ * @default [1, 1, 1, 1 ]
20
+ */
21
+ fullScreenSizes?: number[];
22
+ /** @default bottom
23
+ * The position of image thumbnails */
24
+ thumbnailPosition?: 'top' | 'right' | 'bottom' | 'left';
25
+ /** The desired background colour for the gallery */
26
+ backgroundColor?: string;
27
+ /** A ref to forward on to the image gallery in order to access imperative functions */
28
+ galleryRef?: {
29
+ current: any;
30
+ };
31
+ quality?: number;
32
+ thumbnailQuality?: number;
33
+ eagerlyLoad?: number[];
34
+ }
35
+ export interface GalleryState {
36
+ isFullscreen: boolean;
37
+ }
38
+ declare const Gallery: React.FC<GalleryProps>;
39
+ export default Gallery;
@@ -1,122 +1,122 @@
1
- var __rest = (this && this.__rest) || function (s, e) {
2
- var t = {};
3
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
- t[p] = s[p];
5
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
- t[p[i]] = s[p[i]];
9
- }
10
- return t;
11
- };
12
- import * as React from 'react';
13
- import { styled } from 'linaria/react';
14
- import { css } from 'linaria';
15
- import ImageGallery from 'react-image-gallery';
16
- import 'react-image-gallery/styles/css/image-gallery.css';
17
- import { constructGallery } from './constructGallery';
18
- import Image from '@jetshop/ui/Image/Image';
19
- import ChannelContext from '@jetshop/core/components/ChannelContext';
20
- import { useShopConfig } from '@jetshop/core/hooks/useShopConfig';
21
- const wrapperStyles = css `
22
- position: relative;
23
- img {
24
- max-height: 100vh;
25
- }
26
- .image-gallery {
27
- z-index: 140;
28
- }
29
- .image-gallery-image {
30
- text-align: center;
31
- }
32
- .image-gallery-thumbnail-inner {
33
- font-size: 10px;
34
- }
35
- .image-gallery-right-nav,
36
- .image-gallery-left-nav,
37
- .image-gallery-fullscreen-button {
38
- z-index: 2;
39
- font-size: 2rem;
40
- display: flex;
41
- justify-content: center;
42
- align-items: center;
43
- padding: 0;
44
- height: 2.5rem;
45
- width: 2.5rem;
46
- border-radius: 50%;
47
- background: rgba(255, 255, 255, 0.4);
48
- transition: background 0.3s ease-in-out;
49
- margin: 0 0.5rem;
50
- &:hover {
51
- background: rgba(255, 255, 255, 0.8);
52
- }
53
- &:before {
54
- color: black;
55
- text-shadow: none;
56
- }
57
- }
58
- .image-gallery-fullscreen-button {
59
- margin-bottom: 0.5rem;
60
- }
61
- .image-gallery-fullscreen-button:before {
62
- text-shadow: none;
63
- font-size: 0.7em;
64
- padding: 0;
65
- }
66
- .image-gallery-thumbnail.active {
67
- border-width: 1px;
68
- }
69
- .image-gallery-thumbnails-wrapper.left .image-gallery-thumbnails,
70
- .image-gallery-thumbnails-wrapper.right .image-gallery-thumbnails {
71
- display: flex;
72
- flex-direction: column;
73
- justify-content: center;
74
- }
75
- .fullscreen {
76
- .image-gallery-fullscreen-button {
77
- margin: 2rem;
78
- }
79
- .image-gallery-right-nav,
80
- .image-gallery-left-nav {
81
- margin: 0 2rem;
82
- }
83
- img {
84
- width: auto;
85
- max-width: 100%;
86
- }
87
- .image-gallery-thumbnails-wrapper {
88
- display: none;
89
- }
90
- }
91
- .image-gallery-slide {
92
- background-color: var(--slide-bg);
93
- }
94
- `;
95
- const Overlay = styled('div') `
96
- position: absolute;
97
- left: 0;
98
- top: 0;
99
- right: 0;
100
- bottom: 0;
101
- pointer-events: none;
102
- `;
103
- const Gallery = function Gallery(props) {
104
- const { sizes = [1, 1, 1, 1 / 2, 1 / 2], fullScreenSizes = [1, 1, 1, 1], thumbnailSizes = ['5rem'], aspect = '1:1', thumbnailPosition = 'bottom', backgroundColor = 'white', thumbnailQuality, quality, images, galleryRef, eagerlyLoad = [0] } = props, rest = __rest(props, ["sizes", "fullScreenSizes", "thumbnailSizes", "aspect", "thumbnailPosition", "backgroundColor", "thumbnailQuality", "quality", "images", "galleryRef", "eagerlyLoad"]);
105
- const { theme: { breakpoints } } = useShopConfig();
106
- const { selectedChannel } = React.useContext(ChannelContext);
107
- const baseUrl = (selectedChannel === null || selectedChannel === void 0 ? void 0 : selectedChannel.url) ? String(selectedChannel.url) : null;
108
- const [isFullscreen, setFullscreen] = React.useState(false);
109
- const galleryImages = React.useMemo(() => constructGallery(images, fullScreenSizes, aspect, baseUrl, breakpoints), [aspect, baseUrl, breakpoints, fullScreenSizes, images]);
110
- return (React.createElement("div", { className: wrapperStyles, style: { ['--slide-bg']: backgroundColor } },
111
- React.createElement(ImageGallery, Object.assign({ ref: (r) => (galleryRef ? (galleryRef.current = r) : null), thumbnailPosition: thumbnailPosition, items: galleryImages, autoPlay: false, showPlayButton: false, showThumbnails: galleryImages.length > 1, useBrowserFullscreen: false, preventDefaultTouchmoveEvent: isFullscreen, onScreenChange: (el) => setFullscreen(!!el), renderItem: (item) => {
112
- return (React.createElement("div", { className: "image-gallery-image" }, isFullscreen ? (React.createElement("img", { src: item.original, alt: item.originalAlt, srcSet: item.srcSet, sizes: item.sizes, title: item.originalTitle })) : (React.createElement(React.Fragment, null,
113
- React.createElement(Image, { src: item.original, alt: item.originalAlt, sizes: sizes, title: item.originalTitle, aspect: aspect, quality: quality, modifiedDate: item.modifiedDate, critical: eagerlyLoad.includes(item.index) }),
114
- props.children && React.createElement(Overlay, null, props.children)))));
115
- }, renderThumbInner: (item) => {
116
- return (React.createElement("div", { className: "image-gallery-thumbnail-inner" },
117
- React.createElement(Image, { src: item.thumbnail, alt: item.thumbnailAlt, title: item.thumbnailTitle, sizes: thumbnailSizes, aspect: aspect, quality: thumbnailQuality }),
118
- item.thumbnailLabel && (React.createElement("div", { className: "image-gallery-thumbnail-label" }, item.thumbnailLabel))));
119
- } }, rest))));
120
- };
121
- export default Gallery;
1
+ var __rest = (this && this.__rest) || function (s, e) {
2
+ var t = {};
3
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
+ t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
+ t[p[i]] = s[p[i]];
9
+ }
10
+ return t;
11
+ };
12
+ import * as React from 'react';
13
+ import { styled } from 'linaria/react';
14
+ import { css } from 'linaria';
15
+ import ImageGallery from 'react-image-gallery';
16
+ import 'react-image-gallery/styles/css/image-gallery.css';
17
+ import { constructGallery } from './constructGallery';
18
+ import Image from '@jetshop/ui/Image/Image';
19
+ import ChannelContext from '@jetshop/core/components/ChannelContext';
20
+ import { useShopConfig } from '@jetshop/core/hooks/useShopConfig';
21
+ const wrapperStyles = css `
22
+ position: relative;
23
+ img {
24
+ max-height: 100vh;
25
+ }
26
+ .image-gallery {
27
+ z-index: 140;
28
+ }
29
+ .image-gallery-image {
30
+ text-align: center;
31
+ }
32
+ .image-gallery-thumbnail-inner {
33
+ font-size: 10px;
34
+ }
35
+ .image-gallery-right-nav,
36
+ .image-gallery-left-nav,
37
+ .image-gallery-fullscreen-button {
38
+ z-index: 2;
39
+ font-size: 2rem;
40
+ display: flex;
41
+ justify-content: center;
42
+ align-items: center;
43
+ padding: 0;
44
+ height: 2.5rem;
45
+ width: 2.5rem;
46
+ border-radius: 50%;
47
+ background: rgba(255, 255, 255, 0.4);
48
+ transition: background 0.3s ease-in-out;
49
+ margin: 0 0.5rem;
50
+ &:hover {
51
+ background: rgba(255, 255, 255, 0.8);
52
+ }
53
+ &:before {
54
+ color: black;
55
+ text-shadow: none;
56
+ }
57
+ }
58
+ .image-gallery-fullscreen-button {
59
+ margin-bottom: 0.5rem;
60
+ }
61
+ .image-gallery-fullscreen-button:before {
62
+ text-shadow: none;
63
+ font-size: 0.7em;
64
+ padding: 0;
65
+ }
66
+ .image-gallery-thumbnail.active {
67
+ border-width: 1px;
68
+ }
69
+ .image-gallery-thumbnails-wrapper.left .image-gallery-thumbnails,
70
+ .image-gallery-thumbnails-wrapper.right .image-gallery-thumbnails {
71
+ display: flex;
72
+ flex-direction: column;
73
+ justify-content: center;
74
+ }
75
+ .fullscreen {
76
+ .image-gallery-fullscreen-button {
77
+ margin: 2rem;
78
+ }
79
+ .image-gallery-right-nav,
80
+ .image-gallery-left-nav {
81
+ margin: 0 2rem;
82
+ }
83
+ img {
84
+ width: auto;
85
+ max-width: 100%;
86
+ }
87
+ .image-gallery-thumbnails-wrapper {
88
+ display: none;
89
+ }
90
+ }
91
+ .image-gallery-slide {
92
+ background-color: var(--slide-bg);
93
+ }
94
+ `;
95
+ const Overlay = styled('div') `
96
+ position: absolute;
97
+ left: 0;
98
+ top: 0;
99
+ right: 0;
100
+ bottom: 0;
101
+ pointer-events: none;
102
+ `;
103
+ const Gallery = function Gallery(props) {
104
+ const { sizes = [1, 1, 1, 1 / 2, 1 / 2], fullScreenSizes = [1, 1, 1, 1], thumbnailSizes = ['5rem'], aspect = '1:1', thumbnailPosition = 'bottom', backgroundColor = 'white', thumbnailQuality, quality, images, galleryRef, eagerlyLoad = [0] } = props, rest = __rest(props, ["sizes", "fullScreenSizes", "thumbnailSizes", "aspect", "thumbnailPosition", "backgroundColor", "thumbnailQuality", "quality", "images", "galleryRef", "eagerlyLoad"]);
105
+ const { theme: { breakpoints } } = useShopConfig();
106
+ const { selectedChannel } = React.useContext(ChannelContext);
107
+ const baseUrl = (selectedChannel === null || selectedChannel === void 0 ? void 0 : selectedChannel.url) ? String(selectedChannel.url) : null;
108
+ const [isFullscreen, setFullscreen] = React.useState(false);
109
+ const galleryImages = React.useMemo(() => constructGallery(images, fullScreenSizes, aspect, baseUrl, breakpoints), [aspect, baseUrl, breakpoints, fullScreenSizes, images]);
110
+ return (React.createElement("div", { className: wrapperStyles, style: { ['--slide-bg']: backgroundColor } },
111
+ React.createElement(ImageGallery, Object.assign({ ref: (r) => (galleryRef ? (galleryRef.current = r) : null), thumbnailPosition: thumbnailPosition, items: galleryImages, autoPlay: false, showPlayButton: false, showThumbnails: galleryImages.length > 1, useBrowserFullscreen: false, preventDefaultTouchmoveEvent: isFullscreen, onScreenChange: (el) => setFullscreen(!!el), renderItem: (item) => {
112
+ return (React.createElement("div", { className: "image-gallery-image" }, isFullscreen ? (React.createElement("img", { src: item.original, alt: item.originalAlt, srcSet: item.srcSet, sizes: item.sizes, title: item.originalTitle })) : (React.createElement(React.Fragment, null,
113
+ React.createElement(Image, { src: item.original, alt: item.originalAlt, sizes: sizes, title: item.originalTitle, aspect: aspect, quality: quality, modifiedDate: item.modifiedDate, critical: eagerlyLoad.includes(item.index) }),
114
+ props.children && React.createElement(Overlay, null, props.children)))));
115
+ }, renderThumbInner: (item) => {
116
+ return (React.createElement("div", { className: "image-gallery-thumbnail-inner" },
117
+ React.createElement(Image, { src: item.thumbnail, alt: item.thumbnailAlt, title: item.thumbnailTitle, sizes: thumbnailSizes, aspect: aspect, quality: thumbnailQuality }),
118
+ item.thumbnailLabel && (React.createElement("div", { className: "image-gallery-thumbnail-label" }, item.thumbnailLabel))));
119
+ } }, rest))));
120
+ };
121
+ export default Gallery;
122
122
  //# sourceMappingURL=Gallery.js.map
@@ -1,15 +1,15 @@
1
- import { ProductImage } from '@jetshop/core/types';
2
- export declare function constructGallery(images: ProductImage[], sizes: number[], aspect: string, baseUrl: string, breakpoints: {
3
- [label: string]: string;
4
- }): {
5
- index: number;
6
- original: string;
7
- originalAlt: string;
8
- originalTitle: string;
9
- thumbnail: string;
10
- thumbnailAlt: string;
11
- thumbnailTitle: string;
12
- sizes: string;
13
- srcSet: string;
14
- modifiedDate: string;
15
- }[];
1
+ import { ProductImage } from '@jetshop/core/types';
2
+ export declare function constructGallery(images: ProductImage[], sizes: number[], aspect: string, baseUrl: string, breakpoints: {
3
+ [label: string]: string;
4
+ }): {
5
+ index: number;
6
+ original: string;
7
+ originalAlt: string;
8
+ originalTitle: string;
9
+ thumbnail: string;
10
+ thumbnailAlt: string;
11
+ thumbnailTitle: string;
12
+ sizes: string;
13
+ srcSet: string;
14
+ modifiedDate: string;
15
+ }[];
@@ -1,41 +1,41 @@
1
- import { getFullUrl } from '../Image/utils/getFullUrl';
2
- import { getImageWidths } from '../Image/utils/getImageWidths';
3
- import { getLargestSize } from '../Image/utils/getLargestSize';
4
- import { getSizesMap } from '../Image/utils/getSizesMap';
5
- import { getSmallestSize } from '../Image/utils/getSmallestSize';
6
- import { getSrcSetFromWidths } from '../Image/utils/getSrcSetFromWidths';
7
- export function constructGallery(images, sizes, aspect, baseUrl, breakpoints) {
8
- const breakpointValues = Object.values(breakpoints);
9
- const calculatedSizes = getSizesMap(breakpointValues, sizes);
10
- // Get required set of image widths
11
- const widths = getImageWidths(breakpointValues, sizes);
12
- return images.map((img, index) => {
13
- const url = img.url || img.sizes;
14
- let imageSrc;
15
- let thumbSrc;
16
- if (Array.isArray(url)) {
17
- // maintain support for deprecated image sizes object
18
- imageSrc = getFullUrl(getLargestSize(url), baseUrl);
19
- thumbSrc = getFullUrl(getSmallestSize(url), baseUrl);
20
- }
21
- else {
22
- imageSrc = getFullUrl(url, baseUrl);
23
- thumbSrc = imageSrc;
24
- }
25
- // Generate image urls for the required image sizes
26
- const srcSet = getSrcSetFromWidths(imageSrc, widths, aspect, { crop: false, webp: false }, img.modifiedDate);
27
- return {
28
- index,
29
- original: imageSrc,
30
- originalAlt: img.alt,
31
- originalTitle: img.title,
32
- thumbnail: thumbSrc,
33
- thumbnailAlt: img.alt,
34
- thumbnailTitle: img.title,
35
- sizes: calculatedSizes,
36
- srcSet,
37
- modifiedDate: img.modifiedDate
38
- };
39
- });
40
- }
1
+ import { getFullUrl } from '../Image/utils/getFullUrl';
2
+ import { getImageWidths } from '../Image/utils/getImageWidths';
3
+ import { getLargestSize } from '../Image/utils/getLargestSize';
4
+ import { getSizesMap } from '../Image/utils/getSizesMap';
5
+ import { getSmallestSize } from '../Image/utils/getSmallestSize';
6
+ import { getSrcSetFromWidths } from '../Image/utils/getSrcSetFromWidths';
7
+ export function constructGallery(images, sizes, aspect, baseUrl, breakpoints) {
8
+ const breakpointValues = Object.values(breakpoints);
9
+ const calculatedSizes = getSizesMap(breakpointValues, sizes);
10
+ // Get required set of image widths
11
+ const widths = getImageWidths(breakpointValues, sizes);
12
+ return images.map((img, index) => {
13
+ const url = img.url || img.sizes;
14
+ let imageSrc;
15
+ let thumbSrc;
16
+ if (Array.isArray(url)) {
17
+ // maintain support for deprecated image sizes object
18
+ imageSrc = getFullUrl(getLargestSize(url), baseUrl);
19
+ thumbSrc = getFullUrl(getSmallestSize(url), baseUrl);
20
+ }
21
+ else {
22
+ imageSrc = getFullUrl(url, baseUrl);
23
+ thumbSrc = imageSrc;
24
+ }
25
+ // Generate image urls for the required image sizes
26
+ const srcSet = getSrcSetFromWidths(imageSrc, widths, aspect, { crop: false, webp: false }, img.modifiedDate);
27
+ return {
28
+ index,
29
+ original: imageSrc,
30
+ originalAlt: img.alt,
31
+ originalTitle: img.title,
32
+ thumbnail: thumbSrc,
33
+ thumbnailAlt: img.alt,
34
+ thumbnailTitle: img.title,
35
+ sizes: calculatedSizes,
36
+ srcSet,
37
+ modifiedDate: img.modifiedDate
38
+ };
39
+ });
40
+ }
41
41
  //# sourceMappingURL=constructGallery.js.map