@jetshop/template-trend 6.1.4 → 6.1.5

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 (409) hide show
  1. package/dist/src/client.js +6 -0
  2. package/dist/src/client.js.map +1 -0
  3. package/dist/src/components/Auth/ForgotPassword.js +30 -0
  4. package/dist/src/components/Auth/ForgotPassword.js.map +1 -0
  5. package/dist/src/components/Auth/ForgotPassword.loadable.js +7 -0
  6. package/dist/src/components/Auth/ForgotPassword.loadable.js.map +1 -0
  7. package/dist/src/components/Auth/LogInPage.js +69 -0
  8. package/dist/src/components/Auth/LogInPage.js.map +1 -0
  9. package/dist/src/components/Auth/LogInPage.loadable.js +7 -0
  10. package/dist/src/components/Auth/LogInPage.loadable.js.map +1 -0
  11. package/dist/src/components/Auth/ResetPassword.js +30 -0
  12. package/dist/src/components/Auth/ResetPassword.js.map +1 -0
  13. package/dist/src/components/Auth/ResetPassword.loadable.js +7 -0
  14. package/dist/src/components/Auth/ResetPassword.loadable.js.map +1 -0
  15. package/dist/src/components/Auth/Signup/Address.js +34 -0
  16. package/dist/src/components/Auth/Signup/Address.js.map +1 -0
  17. package/dist/src/components/Auth/Signup/CustomerType.js +30 -0
  18. package/dist/src/components/Auth/Signup/CustomerType.js.map +1 -0
  19. package/dist/src/components/Auth/Signup/LoginFields.js +31 -0
  20. package/dist/src/components/Auth/Signup/LoginFields.js.map +1 -0
  21. package/dist/src/components/Auth/Signup/PID.js +11 -0
  22. package/dist/src/components/Auth/Signup/PID.js.map +1 -0
  23. package/dist/src/components/Auth/Signup/SSN.js +29 -0
  24. package/dist/src/components/Auth/Signup/SSN.js.map +1 -0
  25. package/dist/src/components/Auth/Signup/SignUpPage.js +78 -0
  26. package/dist/src/components/Auth/Signup/SignUpPage.js.map +1 -0
  27. package/dist/src/components/Auth/Signup/SignUpPage.loadable.js +7 -0
  28. package/dist/src/components/Auth/Signup/SignUpPage.loadable.js.map +1 -0
  29. package/dist/src/components/Auth/Signup/useSignupValidation.js +29 -0
  30. package/dist/src/components/Auth/Signup/useSignupValidation.js.map +1 -0
  31. package/dist/src/components/Auth/UI/Form.js +33 -0
  32. package/dist/src/components/Auth/UI/Form.js.map +1 -0
  33. package/dist/src/components/Cart/CartButton.js +46 -0
  34. package/dist/src/components/Cart/CartButton.js.map +1 -0
  35. package/dist/src/components/Cart/CartFlyout.js +190 -0
  36. package/dist/src/components/Cart/CartFlyout.js.map +1 -0
  37. package/dist/src/components/Cart/CartItem.js +155 -0
  38. package/dist/src/components/Cart/CartItem.js.map +1 -0
  39. package/dist/src/components/Cart/FreeShipping.js +51 -0
  40. package/dist/src/components/Cart/FreeShipping.js.map +1 -0
  41. package/dist/src/components/CategoryPage/CategoryHeader.js +104 -0
  42. package/dist/src/components/CategoryPage/CategoryHeader.js.map +1 -0
  43. package/dist/src/components/CategoryPage/CategoryHeaderLoadingState.js +13 -0
  44. package/dist/src/components/CategoryPage/CategoryHeaderLoadingState.js.map +1 -0
  45. package/dist/src/components/CategoryPage/CategoryPage.js +26 -0
  46. package/dist/src/components/CategoryPage/CategoryPage.js.map +1 -0
  47. package/dist/src/components/CategoryPage/CategoryPage.loadable.js +7 -0
  48. package/dist/src/components/CategoryPage/CategoryPage.loadable.js.map +1 -0
  49. package/dist/src/components/CategoryPage/Filters/ActiveFilters.js +79 -0
  50. package/dist/src/components/CategoryPage/Filters/ActiveFilters.js.map +1 -0
  51. package/dist/src/components/CategoryPage/Filters/BooleanFilters.js +18 -0
  52. package/dist/src/components/CategoryPage/Filters/BooleanFilters.js.map +1 -0
  53. package/dist/src/components/CategoryPage/Filters/Filter.js +97 -0
  54. package/dist/src/components/CategoryPage/Filters/Filter.js.map +1 -0
  55. package/dist/src/components/CategoryPage/Filters/FilterDrawer.js +91 -0
  56. package/dist/src/components/CategoryPage/Filters/FilterDrawer.js.map +1 -0
  57. package/dist/src/components/CategoryPage/Filters/FilterDropdownMenu.js +77 -0
  58. package/dist/src/components/CategoryPage/Filters/FilterDropdownMenu.js.map +1 -0
  59. package/dist/src/components/CategoryPage/Filters/ListFilters.js +38 -0
  60. package/dist/src/components/CategoryPage/Filters/ListFilters.js.map +1 -0
  61. package/dist/src/components/CategoryPage/Filters/Mobile/ActiveCarot.js +15 -0
  62. package/dist/src/components/CategoryPage/Filters/Mobile/ActiveCarot.js.map +1 -0
  63. package/dist/src/components/CategoryPage/Filters/Mobile/FilterButton.js +107 -0
  64. package/dist/src/components/CategoryPage/Filters/Mobile/FilterButton.js.map +1 -0
  65. package/dist/src/components/CategoryPage/Filters/Mobile/ListAccordion.js +44 -0
  66. package/dist/src/components/CategoryPage/Filters/Mobile/ListAccordion.js.map +1 -0
  67. package/dist/src/components/CategoryPage/Filters/Mobile/RangeAccordion.js +21 -0
  68. package/dist/src/components/CategoryPage/Filters/Mobile/RangeAccordion.js.map +1 -0
  69. package/dist/src/components/CategoryPage/Filters/Mobile/SortOrderAccordion.js +30 -0
  70. package/dist/src/components/CategoryPage/Filters/Mobile/SortOrderAccordion.js.map +1 -0
  71. package/dist/src/components/CategoryPage/Filters/Mobile/shared/styles.js +12 -0
  72. package/dist/src/components/CategoryPage/Filters/Mobile/shared/styles.js.map +1 -0
  73. package/dist/src/components/CategoryPage/Filters/MultiListFilters.js +37 -0
  74. package/dist/src/components/CategoryPage/Filters/MultiListFilters.js.map +1 -0
  75. package/dist/src/components/CategoryPage/Filters/RangeFilters.js +122 -0
  76. package/dist/src/components/CategoryPage/Filters/RangeFilters.js.map +1 -0
  77. package/dist/src/components/CategoryPage/Filters/SortOrders.js +29 -0
  78. package/dist/src/components/CategoryPage/Filters/SortOrders.js.map +1 -0
  79. package/dist/src/components/CategoryPage/Filters/index.js +2 -0
  80. package/dist/src/components/CategoryPage/Filters/index.js.map +1 -0
  81. package/dist/src/components/CategoryPage/ProductCard.js +98 -0
  82. package/dist/src/components/CategoryPage/ProductCard.js.map +1 -0
  83. package/dist/src/components/CategoryPage/ProductGrid.js +89 -0
  84. package/dist/src/components/CategoryPage/ProductGrid.js.map +1 -0
  85. package/dist/src/components/CategoryPage/ProductGridWindow.js +48 -0
  86. package/dist/src/components/CategoryPage/ProductGridWindow.js.map +1 -0
  87. package/dist/src/components/CategoryPage/StandardCategoryPage.js +51 -0
  88. package/dist/src/components/CategoryPage/StandardCategoryPage.js.map +1 -0
  89. package/dist/src/components/CategoryPage/WindowedCategoryPage.js +87 -0
  90. package/dist/src/components/CategoryPage/WindowedCategoryPage.js.map +1 -0
  91. package/dist/src/components/CategoryPage/index.js +2 -0
  92. package/dist/src/components/CategoryPage/index.js.map +1 -0
  93. package/dist/src/components/ContentPage/ContentPage.js +64 -0
  94. package/dist/src/components/ContentPage/ContentPage.js.map +1 -0
  95. package/dist/src/components/ContentPage/ContentPage.loadable.js +7 -0
  96. package/dist/src/components/ContentPage/ContentPage.loadable.js.map +1 -0
  97. package/dist/src/components/ContentPage/SubPageNavigation.js +164 -0
  98. package/dist/src/components/ContentPage/SubPageNavigation.js.map +1 -0
  99. package/dist/src/components/ContentPage/index.js +2 -0
  100. package/dist/src/components/ContentPage/index.js.map +1 -0
  101. package/dist/src/components/CookieConsent.js +84 -0
  102. package/dist/src/components/CookieConsent.js.map +1 -0
  103. package/dist/src/components/Forms/GlobalError.js +28 -0
  104. package/dist/src/components/Forms/GlobalError.js.map +1 -0
  105. package/dist/src/components/Forms/Input.js +79 -0
  106. package/dist/src/components/Forms/Input.js.map +1 -0
  107. package/dist/src/components/Forms/InputStatus.js +42 -0
  108. package/dist/src/components/Forms/InputStatus.js.map +1 -0
  109. package/dist/src/components/Forms/Success.js +25 -0
  110. package/dist/src/components/Forms/Success.js.map +1 -0
  111. package/dist/src/components/Layout/Container.js +19 -0
  112. package/dist/src/components/Layout/Container.js.map +1 -0
  113. package/dist/src/components/Layout/Content/index.js +7 -0
  114. package/dist/src/components/Layout/Content/index.js.map +1 -0
  115. package/dist/src/components/Layout/Footer/Footer.js +106 -0
  116. package/dist/src/components/Layout/Footer/Footer.js.map +1 -0
  117. package/dist/src/components/Layout/Footer/FooterLinks.js +24 -0
  118. package/dist/src/components/Layout/Footer/FooterLinks.js.map +1 -0
  119. package/dist/src/components/Layout/Footer/SocialLinks.js +62 -0
  120. package/dist/src/components/Layout/Footer/SocialLinks.js.map +1 -0
  121. package/dist/src/components/Layout/Header/Categories/Categories.js +10 -0
  122. package/dist/src/components/Layout/Header/Categories/Categories.js.map +1 -0
  123. package/dist/src/components/Layout/Header/Categories/MobileCategories.js +128 -0
  124. package/dist/src/components/Layout/Header/Categories/MobileCategories.js.map +1 -0
  125. package/dist/src/components/Layout/Header/Categories/__util__/getCategoriesByLevel.js +4 -0
  126. package/dist/src/components/Layout/Header/Categories/__util__/getCategoriesByLevel.js.map +1 -0
  127. package/dist/src/components/Layout/Header/Categories/__util__/getCategoriesUnderParent.js +4 -0
  128. package/dist/src/components/Layout/Header/Categories/__util__/getCategoriesUnderParent.js.map +1 -0
  129. package/dist/src/components/Layout/Header/Categories/__util__/hasChildCategories.js +4 -0
  130. package/dist/src/components/Layout/Header/Categories/__util__/hasChildCategories.js.map +1 -0
  131. package/dist/src/components/Layout/Header/CategoryMenu/CategoryMenu.js +21 -0
  132. package/dist/src/components/Layout/Header/CategoryMenu/CategoryMenu.js.map +1 -0
  133. package/dist/src/components/Layout/Header/CategoryMenu/CategoryMenuContainer.js +55 -0
  134. package/dist/src/components/Layout/Header/CategoryMenu/CategoryMenuContainer.js.map +1 -0
  135. package/dist/src/components/Layout/Header/CategoryMenu/SubMenuSection.js +60 -0
  136. package/dist/src/components/Layout/Header/CategoryMenu/SubMenuSection.js.map +1 -0
  137. package/dist/src/components/Layout/Header/CategoryMenu/SubMenuWrapper.js +78 -0
  138. package/dist/src/components/Layout/Header/CategoryMenu/SubMenuWrapper.js.map +1 -0
  139. package/dist/src/components/Layout/Header/ChannelSelector/ChannelSelector.js +26 -0
  140. package/dist/src/components/Layout/Header/ChannelSelector/ChannelSelector.js.map +1 -0
  141. package/dist/src/components/Layout/Header/ChannelSelector/ChannelSelectorModal.js +36 -0
  142. package/dist/src/components/Layout/Header/ChannelSelector/ChannelSelectorModal.js.map +1 -0
  143. package/dist/src/components/Layout/Header/ChannelSelector/LanguageSelector.js +12 -0
  144. package/dist/src/components/Layout/Header/ChannelSelector/LanguageSelector.js.map +1 -0
  145. package/dist/src/components/Layout/Header/ChannelSelector/Selector.js +120 -0
  146. package/dist/src/components/Layout/Header/ChannelSelector/Selector.js.map +1 -0
  147. package/dist/src/components/Layout/Header/ChannelSelector/flattenCountries.js +15 -0
  148. package/dist/src/components/Layout/Header/ChannelSelector/flattenCountries.js.map +1 -0
  149. package/dist/src/components/Layout/Header/Header.js +189 -0
  150. package/dist/src/components/Layout/Header/Header.js.map +1 -0
  151. package/dist/src/components/Layout/Header/Logo.js +40 -0
  152. package/dist/src/components/Layout/Header/Logo.js.map +1 -0
  153. package/dist/src/components/Layout/Header/LogoSearchBar.js +15 -0
  154. package/dist/src/components/Layout/Header/LogoSearchBar.js.map +1 -0
  155. package/dist/src/components/Layout/Header/MobileMenu.js +76 -0
  156. package/dist/src/components/Layout/Header/MobileMenu.js.map +1 -0
  157. package/dist/src/components/Layout/Header/RecommendedChannel/ChannelBanner.js +218 -0
  158. package/dist/src/components/Layout/Header/RecommendedChannel/ChannelBanner.js.map +1 -0
  159. package/dist/src/components/Layout/Header/RecommendedChannel/RecommendedChannelSelector.js +123 -0
  160. package/dist/src/components/Layout/Header/RecommendedChannel/RecommendedChannelSelector.js.map +1 -0
  161. package/dist/src/components/Layout/Header/SearchBar.js +79 -0
  162. package/dist/src/components/Layout/Header/SearchBar.js.map +1 -0
  163. package/dist/src/components/Layout/Header/SearchButton.js +50 -0
  164. package/dist/src/components/Layout/Header/SearchButton.js.map +1 -0
  165. package/dist/src/components/Layout/Header/SubCategoryNav.js +71 -0
  166. package/dist/src/components/Layout/Header/SubCategoryNav.js.map +1 -0
  167. package/dist/src/components/Layout/Header/TopNav.js +63 -0
  168. package/dist/src/components/Layout/Header/TopNav.js.map +1 -0
  169. package/dist/src/components/Layout/MaxWidth.js +19 -0
  170. package/dist/src/components/Layout/MaxWidth.js.map +1 -0
  171. package/dist/src/components/Layout/Notifications.js +70 -0
  172. package/dist/src/components/Layout/Notifications.js.map +1 -0
  173. package/dist/src/components/LoadingPage.js +19 -0
  174. package/dist/src/components/LoadingPage.js.map +1 -0
  175. package/dist/src/components/LogOut.loadable.js +7 -0
  176. package/dist/src/components/LogOut.loadable.js.map +1 -0
  177. package/dist/src/components/MyPages/ChangePasswordPage.js +26 -0
  178. package/dist/src/components/MyPages/ChangePasswordPage.js.map +1 -0
  179. package/dist/src/components/MyPages/CustomerNameHeader.js +28 -0
  180. package/dist/src/components/MyPages/CustomerNameHeader.js.map +1 -0
  181. package/dist/src/components/MyPages/DeleteAccount.js +47 -0
  182. package/dist/src/components/MyPages/DeleteAccount.js.map +1 -0
  183. package/dist/src/components/MyPages/MyPages.js +152 -0
  184. package/dist/src/components/MyPages/MyPages.js.map +1 -0
  185. package/dist/src/components/MyPages/MyPages.loadable.js +7 -0
  186. package/dist/src/components/MyPages/MyPages.loadable.js.map +1 -0
  187. package/dist/src/components/MyPages/MyPagesBreadcrumbs.js +18 -0
  188. package/dist/src/components/MyPages/MyPagesBreadcrumbs.js.map +1 -0
  189. package/dist/src/components/MyPages/MyPagesSidebar.js +81 -0
  190. package/dist/src/components/MyPages/MyPagesSidebar.js.map +1 -0
  191. package/dist/src/components/MyPages/MyPagesStartPage.js +99 -0
  192. package/dist/src/components/MyPages/MyPagesStartPage.js.map +1 -0
  193. package/dist/src/components/MyPages/Newsletter.js +33 -0
  194. package/dist/src/components/MyPages/Newsletter.js.map +1 -0
  195. package/dist/src/components/MyPages/Orders/ListOrder.js +159 -0
  196. package/dist/src/components/MyPages/Orders/ListOrder.js.map +1 -0
  197. package/dist/src/components/MyPages/Orders/OrderDetail/Contact.js +38 -0
  198. package/dist/src/components/MyPages/Orders/OrderDetail/Contact.js.map +1 -0
  199. package/dist/src/components/MyPages/Orders/OrderDetail/ListDetail.js +196 -0
  200. package/dist/src/components/MyPages/Orders/OrderDetail/ListDetail.js.map +1 -0
  201. package/dist/src/components/MyPages/Orders/OrderDetail/OrderTotals.js +81 -0
  202. package/dist/src/components/MyPages/Orders/OrderDetail/OrderTotals.js.map +1 -0
  203. package/dist/src/components/MyPages/Orders/OrderDetail/ShippingPayment.js +37 -0
  204. package/dist/src/components/MyPages/Orders/OrderDetail/ShippingPayment.js.map +1 -0
  205. package/dist/src/components/MyPages/Orders/OrderListPage.js +56 -0
  206. package/dist/src/components/MyPages/Orders/OrderListPage.js.map +1 -0
  207. package/dist/src/components/MyPages/ProfileDeliveryAddresses.js +93 -0
  208. package/dist/src/components/MyPages/ProfileDeliveryAddresses.js.map +1 -0
  209. package/dist/src/components/MyPages/ProfilePage.js +109 -0
  210. package/dist/src/components/MyPages/ProfilePage.js.map +1 -0
  211. package/dist/src/components/MyPages/ProfileView.js +42 -0
  212. package/dist/src/components/MyPages/ProfileView.js.map +1 -0
  213. package/dist/src/components/NavigationTree/NavTree.js +53 -0
  214. package/dist/src/components/NavigationTree/NavTree.js.map +1 -0
  215. package/dist/src/components/NavigationTree/NavTreePage.js +7 -0
  216. package/dist/src/components/NavigationTree/NavTreePage.js.map +1 -0
  217. package/dist/src/components/NavigationTree/NavTreePage.loadable.js +7 -0
  218. package/dist/src/components/NavigationTree/NavTreePage.loadable.js.map +1 -0
  219. package/dist/src/components/Newsletter/NewsletterField.js +93 -0
  220. package/dist/src/components/Newsletter/NewsletterField.js.map +1 -0
  221. package/dist/src/components/NotFoundPage.js +59 -0
  222. package/dist/src/components/NotFoundPage.js.map +1 -0
  223. package/dist/src/components/NotFoundPage.loadable.js +7 -0
  224. package/dist/src/components/NotFoundPage.loadable.js.map +1 -0
  225. package/dist/src/components/Pages/About.js +7 -0
  226. package/dist/src/components/Pages/About.js.map +1 -0
  227. package/dist/src/components/Pagination/Pagination.js +29 -0
  228. package/dist/src/components/Pagination/Pagination.js.map +1 -0
  229. package/dist/src/components/Pagination/PaginationWrapper.js +16 -0
  230. package/dist/src/components/Pagination/PaginationWrapper.js.map +1 -0
  231. package/dist/src/components/PreviewRoute.loadable.js +7 -0
  232. package/dist/src/components/PreviewRoute.loadable.js.map +1 -0
  233. package/dist/src/components/ProductList/AddToCart.js +46 -0
  234. package/dist/src/components/ProductList/AddToCart.js.map +1 -0
  235. package/dist/src/components/ProductList/Favourite.js +46 -0
  236. package/dist/src/components/ProductList/Favourite.js.map +1 -0
  237. package/dist/src/components/ProductList/FavouriteCount.js +15 -0
  238. package/dist/src/components/ProductList/FavouriteCount.js.map +1 -0
  239. package/dist/src/components/ProductList/Favourites.js +187 -0
  240. package/dist/src/components/ProductList/Favourites.js.map +1 -0
  241. package/dist/src/components/ProductList/Lister.js +22 -0
  242. package/dist/src/components/ProductList/Lister.js.map +1 -0
  243. package/dist/src/components/ProductList/Product.js +62 -0
  244. package/dist/src/components/ProductList/Product.js.map +1 -0
  245. package/dist/src/components/ProductList/SelectVariant.js +47 -0
  246. package/dist/src/components/ProductList/SelectVariant.js.map +1 -0
  247. package/dist/src/components/ProductList/productListQueries.js +15 -0
  248. package/dist/src/components/ProductList/productListQueries.js.map +1 -0
  249. package/dist/src/components/ProductPage/AddToCart/AddToCartForm.js +110 -0
  250. package/dist/src/components/ProductPage/AddToCart/AddToCartForm.js.map +1 -0
  251. package/dist/src/components/ProductPage/AddToCart/ProductToast.js +118 -0
  252. package/dist/src/components/ProductPage/AddToCart/ProductToast.js.map +1 -0
  253. package/dist/src/components/ProductPage/AddToCart/useProductToast.js +21 -0
  254. package/dist/src/components/ProductPage/AddToCart/useProductToast.js.map +1 -0
  255. package/dist/src/components/ProductPage/Campaigns.js +43 -0
  256. package/dist/src/components/ProductPage/Campaigns.js.map +1 -0
  257. package/dist/src/components/ProductPage/ConfigurationSelector.js +62 -0
  258. package/dist/src/components/ProductPage/ConfigurationSelector.js.map +1 -0
  259. package/dist/src/components/ProductPage/Images/ImageContainer.js +45 -0
  260. package/dist/src/components/ProductPage/Images/ImageContainer.js.map +1 -0
  261. package/dist/src/components/ProductPage/Images/Thumbnails.js +32 -0
  262. package/dist/src/components/ProductPage/Images/Thumbnails.js.map +1 -0
  263. package/dist/src/components/ProductPage/PackageProduct/IncludedInPackages.js +32 -0
  264. package/dist/src/components/ProductPage/PackageProduct/IncludedInPackages.js.map +1 -0
  265. package/dist/src/components/ProductPage/PackageProduct/PackageProduct.js +170 -0
  266. package/dist/src/components/ProductPage/PackageProduct/PackageProduct.js.map +1 -0
  267. package/dist/src/components/ProductPage/PackageProduct/PackageProductItem.js +92 -0
  268. package/dist/src/components/ProductPage/PackageProduct/PackageProductItem.js.map +1 -0
  269. package/dist/src/components/ProductPage/PriceHistory.js +99 -0
  270. package/dist/src/components/ProductPage/PriceHistory.js.map +1 -0
  271. package/dist/src/components/ProductPage/ProductInfo.js +55 -0
  272. package/dist/src/components/ProductPage/ProductInfo.js.map +1 -0
  273. package/dist/src/components/ProductPage/ProductInfoAccordion.js +46 -0
  274. package/dist/src/components/ProductPage/ProductInfoAccordion.js.map +1 -0
  275. package/dist/src/components/ProductPage/ProductPage.js +174 -0
  276. package/dist/src/components/ProductPage/ProductPage.js.map +1 -0
  277. package/dist/src/components/ProductPage/ProductPage.loadable.js +7 -0
  278. package/dist/src/components/ProductPage/ProductPage.loadable.js.map +1 -0
  279. package/dist/src/components/ProductPage/ProductPageLoadingState.js +55 -0
  280. package/dist/src/components/ProductPage/ProductPageLoadingState.js.map +1 -0
  281. package/dist/src/components/ProductPage/QuantityContainer.js +21 -0
  282. package/dist/src/components/ProductPage/QuantityContainer.js.map +1 -0
  283. package/dist/src/components/ProductPage/RelatedProducts.js +45 -0
  284. package/dist/src/components/ProductPage/RelatedProducts.js.map +1 -0
  285. package/dist/src/components/ProductPage/SizePicker.js +37 -0
  286. package/dist/src/components/ProductPage/SizePicker.js.map +1 -0
  287. package/dist/src/components/ProductPage/StockStatus/NotifyWhenBack.js +93 -0
  288. package/dist/src/components/ProductPage/StockStatus/NotifyWhenBack.js.map +1 -0
  289. package/dist/src/components/ProductPage/StockStatus/StockOrb.js +31 -0
  290. package/dist/src/components/ProductPage/StockStatus/StockOrb.js.map +1 -0
  291. package/dist/src/components/ProductPage/StockStatus/StockStatusIndicator.js +33 -0
  292. package/dist/src/components/ProductPage/StockStatus/StockStatusIndicator.js.map +1 -0
  293. package/dist/src/components/ProductPage/StockStatus/WarehouseStock.js +255 -0
  294. package/dist/src/components/ProductPage/StockStatus/WarehouseStock.js.map +1 -0
  295. package/dist/src/components/ProductPage/VariantSelector.js +138 -0
  296. package/dist/src/components/ProductPage/VariantSelector.js.map +1 -0
  297. package/dist/src/components/ProductPage/styledComponents.js +11 -0
  298. package/dist/src/components/ProductPage/styledComponents.js.map +1 -0
  299. package/dist/src/components/ProductPage/useProductValidationMessage.js +24 -0
  300. package/dist/src/components/ProductPage/useProductValidationMessage.js.map +1 -0
  301. package/dist/src/components/SearchPage/CategoryList.js +129 -0
  302. package/dist/src/components/SearchPage/CategoryList.js.map +1 -0
  303. package/dist/src/components/SearchPage/EmptySearchResults.js +23 -0
  304. package/dist/src/components/SearchPage/EmptySearchResults.js.map +1 -0
  305. package/dist/src/components/SearchPage/SearchMeta.js +27 -0
  306. package/dist/src/components/SearchPage/SearchMeta.js.map +1 -0
  307. package/dist/src/components/SearchPage/SearchPage.js +52 -0
  308. package/dist/src/components/SearchPage/SearchPage.js.map +1 -0
  309. package/dist/src/components/SearchPage/SearchPage.loadable.js +7 -0
  310. package/dist/src/components/SearchPage/SearchPage.loadable.js.map +1 -0
  311. package/dist/src/components/SearchPage/SearchResults.js +60 -0
  312. package/dist/src/components/SearchPage/SearchResults.js.map +1 -0
  313. package/dist/src/components/SearchPage/SearchTerm.js +11 -0
  314. package/dist/src/components/SearchPage/SearchTerm.js.map +1 -0
  315. package/dist/src/components/SearchPage/WindowedSearchResults.js +80 -0
  316. package/dist/src/components/SearchPage/WindowedSearchResults.js.map +1 -0
  317. package/dist/src/components/SearchPage/index.js +3 -0
  318. package/dist/src/components/SearchPage/index.js.map +1 -0
  319. package/dist/src/components/Shop.js +82 -0
  320. package/dist/src/components/Shop.js.map +1 -0
  321. package/dist/src/components/StartPage/Content/Row.js +40 -0
  322. package/dist/src/components/StartPage/Content/Row.js.map +1 -0
  323. package/dist/src/components/StartPage/Content/StartPageCampaign.js +112 -0
  324. package/dist/src/components/StartPage/Content/StartPageCampaign.js.map +1 -0
  325. package/dist/src/components/StartPage/Content/StartPageCategories.js +80 -0
  326. package/dist/src/components/StartPage/Content/StartPageCategories.js.map +1 -0
  327. package/dist/src/components/StartPage/Content/StartPageHTMLContent.js +74 -0
  328. package/dist/src/components/StartPage/Content/StartPageHTMLContent.js.map +1 -0
  329. package/dist/src/components/StartPage/Content/StartPageHero.js +73 -0
  330. package/dist/src/components/StartPage/Content/StartPageHero.js.map +1 -0
  331. package/dist/src/components/StartPage/Content/StartPageProductGrid.js +69 -0
  332. package/dist/src/components/StartPage/Content/StartPageProductGrid.js.map +1 -0
  333. package/dist/src/components/StartPage/StartPage.js +37 -0
  334. package/dist/src/components/StartPage/StartPage.js.map +1 -0
  335. package/dist/src/components/StartPage/StartPage.loadable.js +7 -0
  336. package/dist/src/components/StartPage/StartPage.loadable.js.map +1 -0
  337. package/dist/src/components/StartPage/index.js +3 -0
  338. package/dist/src/components/StartPage/index.js.map +1 -0
  339. package/dist/src/components/Store/Store.js +26 -0
  340. package/dist/src/components/Store/Store.js.map +1 -0
  341. package/dist/src/components/Store/Store.loadable.js +7 -0
  342. package/dist/src/components/Store/Store.loadable.js.map +1 -0
  343. package/dist/src/components/Store/StoreDetail.js +13 -0
  344. package/dist/src/components/Store/StoreDetail.js.map +1 -0
  345. package/dist/src/components/StoreLocator/StoreList.js +160 -0
  346. package/dist/src/components/StoreLocator/StoreList.js.map +1 -0
  347. package/dist/src/components/StoreLocator/StoreLocator.js +133 -0
  348. package/dist/src/components/StoreLocator/StoreLocator.js.map +1 -0
  349. package/dist/src/components/StoreLocator/StoreLocator.loadable.js +7 -0
  350. package/dist/src/components/StoreLocator/StoreLocator.loadable.js.map +1 -0
  351. package/dist/src/components/StoreLocator/StoreMap.js +116 -0
  352. package/dist/src/components/StoreLocator/StoreMap.js.map +1 -0
  353. package/dist/src/components/StoreLocator/StoreMarker.js +63 -0
  354. package/dist/src/components/StoreLocator/StoreMarker.js.map +1 -0
  355. package/dist/src/components/StoreLocator/StoreSearch.js +47 -0
  356. package/dist/src/components/StoreLocator/StoreSearch.js.map +1 -0
  357. package/dist/src/components/StoreLocator/UserLocation.js +76 -0
  358. package/dist/src/components/StoreLocator/UserLocation.js.map +1 -0
  359. package/dist/src/components/StoreLocator/useLocationState.js +14 -0
  360. package/dist/src/components/StoreLocator/useLocationState.js.map +1 -0
  361. package/dist/src/components/StoreLocator/useMapState.js +16 -0
  362. package/dist/src/components/StoreLocator/useMapState.js.map +1 -0
  363. package/dist/src/components/Theme.js +6 -0
  364. package/dist/src/components/Theme.js.map +1 -0
  365. package/dist/src/components/ui/Badge.js +33 -0
  366. package/dist/src/components/ui/Badge.js.map +1 -0
  367. package/dist/src/components/ui/Button.js +93 -0
  368. package/dist/src/components/ui/Button.js.map +1 -0
  369. package/dist/src/components/ui/CloseButton.js +18 -0
  370. package/dist/src/components/ui/CloseButton.js.map +1 -0
  371. package/dist/src/components/ui/Divider.js +11 -0
  372. package/dist/src/components/ui/Divider.js.map +1 -0
  373. package/dist/src/components/ui/Headings.js +19 -0
  374. package/dist/src/components/ui/Headings.js.map +1 -0
  375. package/dist/src/components/ui/RadioGroupWithLabels.js +16 -0
  376. package/dist/src/components/ui/RadioGroupWithLabels.js.map +1 -0
  377. package/dist/src/components/ui/Spinner.js +39 -0
  378. package/dist/src/components/ui/Spinner.js.map +1 -0
  379. package/dist/src/fonts/loadFontCss.js +51 -0
  380. package/dist/src/fonts/loadFontCss.js.map +1 -0
  381. package/dist/src/globalStyles.js +83 -0
  382. package/dist/src/globalStyles.js.map +1 -0
  383. package/dist/src/server.js +12 -0
  384. package/dist/src/server.js.map +1 -0
  385. package/dist/src/shop.config.js +68 -0
  386. package/dist/src/shop.config.js.map +1 -0
  387. package/dist/src/theme-variables.js +65 -0
  388. package/dist/src/theme-variables.js.map +1 -0
  389. package/dist/translations/cs.json +788 -0
  390. package/dist/translations/da.json +791 -0
  391. package/dist/translations/de.json +788 -0
  392. package/dist/translations/en.json +794 -0
  393. package/dist/translations/es.json +788 -0
  394. package/dist/translations/et.json +788 -0
  395. package/dist/translations/fi.json +794 -0
  396. package/dist/translations/fr.json +788 -0
  397. package/dist/translations/index.js +18 -0
  398. package/dist/translations/index.js.map +1 -0
  399. package/dist/translations/it.json +788 -0
  400. package/dist/translations/lv.json +788 -0
  401. package/dist/translations/nb.json +791 -0
  402. package/dist/translations/nl.json +788 -0
  403. package/dist/translations/pl.json +788 -0
  404. package/dist/translations/ru.json +788 -0
  405. package/dist/translations/sk.json +788 -0
  406. package/dist/translations/sr.json +464 -0
  407. package/dist/translations/sv.json +794 -0
  408. package/jsconfig.json +1 -0
  409. package/package.json +5 -5
@@ -0,0 +1,92 @@
1
+ import { usePackageProductItem } from '@jetshop/core/hooks/PackageProducts';
2
+ import Image from '@jetshop/ui/Image';
3
+ import { Price } from '@jetshop/ui/Price';
4
+ import ProductLink from '@jetshop/ui/ProductLink';
5
+ import React from 'react';
6
+ import { styled } from 'linaria/react';
7
+ import StockStatusIndicator from '../StockStatus/StockStatusIndicator';
8
+ import { VariantSelector } from '../VariantSelector';
9
+ const PackageProductItemWrapper = styled('div') `
10
+ border-bottom: 1px solid #f0f0f0;
11
+ margin-bottom: 12px;
12
+ padding-bottom: 12px;
13
+ color: black;
14
+ display: flex;
15
+ align-items: flex-start;
16
+
17
+ .product-link {
18
+ width: 72px;
19
+ margin-right: 12px;
20
+ img {
21
+ :hover {
22
+ opacity: 0.8 !important;
23
+ }
24
+ }
25
+ }
26
+
27
+ .product-name {
28
+ font-weight: 600;
29
+ font-size: 18px;
30
+ text-decoration: none;
31
+ color: black;
32
+ :hover {
33
+ text-decoration: underline;
34
+ }
35
+ }
36
+
37
+ .product-detail {
38
+ width: 100%;
39
+ > * + * {
40
+ margin-top: 0.5em;
41
+ margin-bottom: 0;
42
+ }
43
+ }
44
+
45
+ .flex {
46
+ display: flex;
47
+ align-items: center;
48
+ }
49
+ .price-quantity-wrapper {
50
+ margin-left: auto;
51
+ font-size: 18px;
52
+ display: flex;
53
+ align-items: center;
54
+ .package-product-price {
55
+ .price,
56
+ .new-price,
57
+ .old-price {
58
+ display: inline-block;
59
+ margin-right: 0px;
60
+ margin-left: 8px;
61
+ }
62
+ .price,
63
+ .new-price {
64
+ color: #ca0c0c;
65
+ font-size: 18px;
66
+ }
67
+ .old-price {
68
+ color: black;
69
+ }
70
+ }
71
+ }
72
+ `;
73
+ export function PackageProductItem({ item, updatePackageItem, validationEnabled, price, fetchingPrice }) {
74
+ const { stockStatus, variantHandler } = usePackageProductItem(item, updatePackageItem, { preselectCheapest: true });
75
+ const product = item.product;
76
+ return (React.createElement(PackageProductItemWrapper, null,
77
+ React.createElement(ProductLink, { product: product, className: "product-link" },
78
+ React.createElement(Image, { sizes: [1 / 10], aspect: '1:1', alt: product.images[0].alt, src: product.images[0].url })),
79
+ React.createElement("div", { className: "product-detail" },
80
+ React.createElement("header", null,
81
+ React.createElement(ProductLink, { product: product, className: "product-name" }, product.name),
82
+ React.createElement("p", null, product.subName)),
83
+ product.hasVariants && (React.createElement(VariantSelector, { product: product, variantHandler: variantHandler, showValidation: validationEnabled, disableOutOfStock: true })),
84
+ React.createElement("div", { className: "flex" },
85
+ React.createElement(StockStatusIndicator, { status: stockStatus.status, text: stockStatus.text, style: { marginTop: 0 } }),
86
+ React.createElement("div", { className: "price-quantity-wrapper", style: {
87
+ opacity: fetchingPrice ? 0.3 : 1
88
+ } },
89
+ item.minQuantity > 1 && `${item.minQuantity} x`,
90
+ React.createElement(Price, Object.assign({}, price, { className: "package-product-price" })))))));
91
+ }
92
+ //# sourceMappingURL=PackageProductItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PackageProductItem.js","sourceRoot":"","sources":["../../../../../src/components/ProductPage/PackageProduct/PackageProductItem.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,KAAK,MAAM,mBAAmB,CAAC;AACtC,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,WAAW,MAAM,yBAAyB,CAAC;AAClD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,oBAAoB,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,MAAM,yBAAyB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+D9C,CAAC;AAEF,MAAM,UAAU,kBAAkB,CAAC,EACjC,IAAI,EACJ,iBAAiB,EACjB,iBAAiB,EACjB,KAAK,EACL,aAAa,EACd;IACC,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,qBAAqB,CAC3D,IAAI,EACJ,iBAAiB,EACjB,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAC5B,CAAC;IAEF,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAE7B,OAAO,CACL,oBAAC,yBAAyB;QACxB,oBAAC,WAAW,IAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAC,cAAc;YACrD,oBAAC,KAAK,IACJ,KAAK,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,EACf,MAAM,EAAE,KAAK,EACb,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,EAC1B,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,GACnB,CACG;QACd,6BAAK,SAAS,EAAC,gBAAgB;YAC7B;gBACE,oBAAC,WAAW,IAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAC,cAAc,IACpD,OAAO,CAAC,IAAI,CACD;gBACd,+BAAI,OAAO,CAAC,OAAO,CAAK,CACjB;YACR,OAAO,CAAC,WAAW,IAAI,CACtB,oBAAC,eAAe,IACd,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,iBAAiB,EACjC,iBAAiB,SACjB,CACH;YACD,6BAAK,SAAS,EAAC,MAAM;gBACnB,oBAAC,oBAAoB,IACnB,MAAM,EAAE,WAAW,CAAC,MAAM,EAC1B,IAAI,EAAE,WAAW,CAAC,IAAI,EACtB,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,GACvB;gBACF,6BACE,SAAS,EAAC,wBAAwB,EAClC,KAAK,EAAE;wBACL,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;qBACjC;oBAEA,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,IAAI;oBAChD,oBAAC,KAAK,oBAAK,KAAK,IAAE,SAAS,EAAC,uBAAuB,IAAG,CAClD,CACF,CACF,CACoB,CAC7B,CAAC;AACJ,CAAC"}
@@ -0,0 +1,99 @@
1
+ import { useQuery } from '@apollo/client';
2
+ import t from '@jetshop/intl';
3
+ import React, { useContext } from 'react';
4
+ import PriceHistoryQuery from './PriceHistoryQuery.gql';
5
+ import { styled } from 'linaria/react';
6
+ import { Price } from '@jetshop/ui/Price';
7
+ import { FlyoutTrigger } from '@jetshop/ui/Modal/Flyout';
8
+ import { FlyoutTarget } from '@jetshop/ui/Modal/Flyout';
9
+ import ChannelContext from '@jetshop/core/components/ChannelContext/ChannelContext';
10
+ const Wrapper = styled.div `
11
+ --innerFontSize: 0.85rem;
12
+ position: relative;
13
+
14
+ .label {
15
+ font-size: 0.75rem;
16
+ cursor: pointer;
17
+ background: transparent;
18
+ }
19
+
20
+ .price-table {
21
+ position: absolute;
22
+ padding: 0.35rem 0.9rem;
23
+ background: white;
24
+ border: 1px solid #e5e5e5;
25
+ max-height: 30rem;
26
+ overflow: scroll;
27
+ z-index: 2;
28
+ min-width: 14rem;
29
+ max-width: 18rem;
30
+
31
+ .label {
32
+ font-size: var(--innerFontSize);
33
+ }
34
+
35
+ li {
36
+ display: flex;
37
+ justify-content: space-between;
38
+
39
+ .timestamp {
40
+ font-size: var(--innerFontSize);
41
+ }
42
+
43
+ [data-flight-price=''] {
44
+ > .price {
45
+ font-size: var(--innerFontSize);
46
+ font-weight: normal;
47
+ }
48
+ }
49
+ }
50
+ }
51
+ `;
52
+ export function PriceHistoryWrapper(props) {
53
+ return (React.createElement(Wrapper, null,
54
+ React.createElement(FlyoutTrigger, { id: "price-history-flyout", coverStyles: { zIndex: 0, background: 'transparent' } }, ({ isOpen, hideTarget, showTarget }) => (React.createElement("button", { onClick: () => {
55
+ if (isOpen) {
56
+ hideTarget();
57
+ }
58
+ else {
59
+ showTarget();
60
+ }
61
+ }, className: "label" }, t('View price history')))),
62
+ React.createElement(FlyoutTarget, { id: "price-history-flyout" }, () => React.createElement(PriceHistory, Object.assign({}, props)))));
63
+ }
64
+ const days = 30;
65
+ function PriceHistory({ articleNumber, variant }) {
66
+ const { error, loading, data } = useQuery(PriceHistoryQuery, {
67
+ variables: { articleNumber, days },
68
+ errorPolicy: 'all',
69
+ skip: !articleNumber
70
+ });
71
+ if (loading || error) {
72
+ return (React.createElement("div", { className: "price-table" },
73
+ loading && (React.createElement("span", { className: "label" }, t('Getting the last { days } days price changes...', {
74
+ days
75
+ }))),
76
+ error && React.createElement("span", { className: "label" }, t('Something went wrong'))));
77
+ }
78
+ const { product } = data;
79
+ if (!variant) {
80
+ return React.createElement(Table, { history: product.history, days: days });
81
+ }
82
+ const selectedVariant = product.variants.values.find(value => value.articleNumber === variant.articleNumber);
83
+ return React.createElement(Table, { history: selectedVariant.history, days: days });
84
+ }
85
+ const Table = ({ history, days }) => {
86
+ var _a;
87
+ const { selectedChannel } = useContext(ChannelContext);
88
+ if (((_a = history === null || history === void 0 ? void 0 : history.previousPrice) === null || _a === void 0 ? void 0 : _a.length) === 0) {
89
+ return (React.createElement("div", { className: "price-table" },
90
+ React.createElement("span", { className: "label" }, t('The price has not changed in the last { days } days', { days }))));
91
+ }
92
+ return (React.createElement("div", { className: "price-table" },
93
+ React.createElement("ul", null, history.previousPrice.map(({ timestamp, price }) => (React.createElement("li", { key: timestamp },
94
+ React.createElement("span", { className: "timestamp" }, new Date(timestamp).toLocaleDateString([
95
+ selectedChannel.language.culture
96
+ ])),
97
+ React.createElement(Price, { price: price, as: "span" })))))));
98
+ };
99
+ //# sourceMappingURL=PriceHistory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PriceHistory.js","sourceRoot":"","sources":["../../../../src/components/ProductPage/PriceHistory.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ import ProductSpecifications from '@jetshop/ui/ProductSpecifications/ProductSpecifications';
2
+ import React from 'react';
3
+ import { styled } from 'linaria/react';
4
+ import t from '@jetshop/intl';
5
+ import { theme } from '../Theme';
6
+ const Description = styled('article') `
7
+ margin-bottom: 42px;
8
+ color: #707070;
9
+ `;
10
+ export const SectionHeading = styled('h2') `
11
+ font-weight: 600;
12
+ font-size: 16px;
13
+ margin-bottom: 0.25em;
14
+ `;
15
+ export const ProductSection = styled('section') `
16
+ line-height: 1.5;
17
+
18
+ width: 100%;
19
+ padding-bottom: 3rem;
20
+
21
+ ${theme.below.md} {
22
+ margin: 0;
23
+ }
24
+
25
+ ${theme.above.md} {
26
+ width: calc(50% - 16px);
27
+ }
28
+
29
+ ${theme.above.lg} {
30
+ :nth-of-type(odd) {
31
+ width: calc(60% - 24px);
32
+ }
33
+ :nth-of-type(even) {
34
+ width: calc(40% - 24px);
35
+ }
36
+ }
37
+ ul.payment-options-list {
38
+ font-size: 16px;
39
+ font-weight: 600;
40
+ }
41
+ `;
42
+ const ProductInfo = ({ product }) => {
43
+ var _a;
44
+ return (React.createElement(React.Fragment, null,
45
+ product.description && (React.createElement(ProductSection, null,
46
+ React.createElement(SectionHeading, null, t('Product description')),
47
+ React.createElement(Description, { dangerouslySetInnerHTML: {
48
+ __html: product.description
49
+ } }))),
50
+ ((_a = product.customFields) === null || _a === void 0 ? void 0 : _a.length) > 0 && (React.createElement(ProductSection, null,
51
+ React.createElement(SectionHeading, null, t('Specifications')),
52
+ React.createElement(ProductSpecifications, { fields: product.customFields })))));
53
+ };
54
+ export default ProductInfo;
55
+ //# sourceMappingURL=ProductInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProductInfo.js","sourceRoot":"","sources":["../../../../src/components/ProductPage/ProductInfo.js"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,MAAM,yDAAyD,CAAC;AAC5F,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,CAAC,MAAM,eAAe,CAAC;AAC9B,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC,CAAA;;;CAGpC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;;;;CAIzC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,CAAA;;;;;;IAM3C,KAAK,CAAC,KAAK,CAAC,EAAE;;;;IAId,KAAK,CAAC,KAAK,CAAC,EAAE;;;;IAId,KAAK,CAAC,KAAK,CAAC,EAAE;;;;;;;;;;;;CAYjB,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;;IAClC,OAAO,CACL;QACG,OAAO,CAAC,WAAW,IAAI,CACtB,oBAAC,cAAc;YACb,oBAAC,cAAc,QAAE,CAAC,CAAC,qBAAqB,CAAC,CAAkB;YAC3D,oBAAC,WAAW,IACV,uBAAuB,EAAE;oBACvB,MAAM,EAAE,OAAO,CAAC,WAAW;iBAC5B,GACD,CACa,CAClB;QACA,CAAA,MAAA,OAAO,CAAC,YAAY,0CAAE,MAAM,IAAG,CAAC,IAAI,CACnC,oBAAC,cAAc;YACb,oBAAC,cAAc,QAAE,CAAC,CAAC,gBAAgB,CAAC,CAAkB;YACtD,oBAAC,qBAAqB,IAAC,MAAM,EAAE,OAAO,CAAC,YAAY,GAAI,CACxC,CAClB,CACA,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -0,0 +1,46 @@
1
+ import t from '@jetshop/intl';
2
+ import Accordion from '@jetshop/ui/Accordion/Accordion';
3
+ import ProductSpecifications from '@jetshop/ui/ProductSpecifications/ProductSpecifications';
4
+ import React, { Fragment } from 'react';
5
+ import { styled } from 'linaria/react';
6
+ import { ProductSection as UIProductSection, SectionHeading } from './ProductInfo';
7
+ const Description = styled('article') `
8
+ line-height: 25px;
9
+ `;
10
+ const ProductSection = styled(UIProductSection) `
11
+ border-bottom: 1px solid #e8e8e8;
12
+ padding: 1rem 0;
13
+ margin: 1rem 0;
14
+ font-size: 0.875rem;
15
+ ${SectionHeading} {
16
+ display: flex;
17
+ justify-items: space-between;
18
+ align-items: center;
19
+ margin-bottom: 0;
20
+ + * > :first-child {
21
+ margin-top: 1rem;
22
+ }
23
+ }
24
+ `;
25
+ const IndicatorIcon = styled('span') `
26
+ margin-left: auto;
27
+ font-size: 1.25rem;
28
+ `;
29
+ const AccordionIndicator = ({ isOpen }) => (React.createElement(IndicatorIcon, null, isOpen ? '-' : '+'));
30
+ const ProductInfoAccordion = ({ product }) => (React.createElement(Accordion, { single: true }, ({ openIndexes, handleClick, AccordionContent }) => (React.createElement(Fragment, null,
31
+ React.createElement(ProductSection, null,
32
+ React.createElement(SectionHeading, { onClick: () => handleClick(0) },
33
+ React.createElement("span", null, t('Product description')),
34
+ React.createElement(AccordionIndicator, { isOpen: openIndexes.includes(0) })),
35
+ React.createElement(AccordionContent, { isOpen: openIndexes.includes(0) },
36
+ React.createElement(Description, { dangerouslySetInnerHTML: {
37
+ __html: product.description
38
+ } }))),
39
+ React.createElement(ProductSection, null,
40
+ React.createElement(SectionHeading, { onClick: () => handleClick(1) },
41
+ React.createElement("span", null, t('Specifications')),
42
+ React.createElement(AccordionIndicator, { isOpen: openIndexes.includes(1) })),
43
+ React.createElement(AccordionContent, { isOpen: openIndexes.includes(1) },
44
+ React.createElement(ProductSpecifications, { fields: product.customFields })))))));
45
+ export default ProductInfoAccordion;
46
+ //# sourceMappingURL=ProductInfoAccordion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProductInfoAccordion.js","sourceRoot":"","sources":["../../../../src/components/ProductPage/ProductInfoAccordion.js"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,eAAe,CAAC;AAC9B,OAAO,SAAS,MAAM,iCAAiC,CAAC;AACxD,OAAO,qBAAqB,MAAM,yDAAyD,CAAC;AAC5F,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EACL,cAAc,IAAI,gBAAgB,EAClC,cAAc,EACf,MAAM,eAAe,CAAC;AAEvB,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC,CAAA;;CAEpC,CAAC;AAEF,MAAM,cAAc,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAA;;;;;IAK3C,cAAc;;;;;;;;;CASjB,CAAC;AAEF,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;;;CAGnC,CAAC;AACF,MAAM,kBAAkB,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CACzC,oBAAC,aAAa,QAAE,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAiB,CACpD,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAC5C,oBAAC,SAAS,IAAC,MAAM,UACd,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAC,CACnD,oBAAC,QAAQ;IACP,oBAAC,cAAc;QACb,oBAAC,cAAc,IAAC,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;YAC3C,kCAAO,CAAC,CAAC,qBAAqB,CAAC,CAAQ;YACvC,oBAAC,kBAAkB,IAAC,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAI,CACxC;QACjB,oBAAC,gBAAgB,IAAC,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC/C,oBAAC,WAAW,IACV,uBAAuB,EAAE;oBACvB,MAAM,EAAE,OAAO,CAAC,WAAW;iBAC5B,GACD,CACe,CACJ;IACjB,oBAAC,cAAc;QACb,oBAAC,cAAc,IAAC,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;YAC3C,kCAAO,CAAC,CAAC,gBAAgB,CAAC,CAAQ;YAClC,oBAAC,kBAAkB,IAAC,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAI,CACxC;QACjB,oBAAC,gBAAgB,IAAC,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC/C,oBAAC,qBAAqB,IAAC,MAAM,EAAE,OAAO,CAAC,YAAY,GAAI,CACtC,CACJ,CACR,CACZ,CACS,CACb,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
@@ -0,0 +1,174 @@
1
+ import { useProductVariants } from '@jetshop/core/hooks/useProductVariants';
2
+ import { useVariantFromUrl } from '@jetshop/core/hooks/useProductVariants/useVariantFromUrl';
3
+ import { useIntl } from '@jetshop/intl';
4
+ import { default as Breadcrumbs } from '@jetshop/ui/Breadcrumbs';
5
+ import getParentOrCanonicalRoute from '@jetshop/ui/Breadcrumbs/getParentsOrCanonicalRoute';
6
+ import { Above } from '@jetshop/ui/Breakpoints';
7
+ import loadable from '@loadable/component';
8
+ import { styled } from 'linaria/react';
9
+ import React from 'react';
10
+ import { ReactComponent as DeliveryCheck } from '../../svg/DeliveryCheck.svg';
11
+ import MaxWidth from '../Layout/MaxWidth';
12
+ import { Favourite } from '../ProductList/Favourite';
13
+ import Spinner from '../ui/Spinner';
14
+ import AddToCartForm from './AddToCart/AddToCartForm';
15
+ import ImageContainer from './Images/ImageContainer';
16
+ import ProductInfo, { ProductSection } from './ProductInfo';
17
+ import ProductInfoAccordion from './ProductInfoAccordion';
18
+ import ProductPageLoadingState from './ProductPageLoadingState';
19
+ import { RelatedProducts } from './RelatedProducts';
20
+ import { Container } from './styledComponents';
21
+ import { theme } from '../Theme';
22
+ const LoadablePackageProduct = loadable(() => import('./PackageProduct/PackageProduct'), {
23
+ fallback: React.createElement(Spinner, null)
24
+ });
25
+ const ProductContainer = styled('div') `
26
+ display: flex;
27
+ align-items: center;
28
+ flex-direction: column;
29
+ padding-top: 1rem;
30
+ header {
31
+ h1 {
32
+ font-size: 28px;
33
+ line-height: 1.25;
34
+ + h2 {
35
+ font-size: 16px;
36
+ font-weight: 600;
37
+ }
38
+ }
39
+ margin-bottom: 24px;
40
+ }
41
+ .customer-comment-input-wrapper {
42
+ width: 100%;
43
+ .customer-comment-input {
44
+ height: 44px;
45
+ }
46
+ .status-wrapper {
47
+ top: -39px;
48
+ }
49
+ }
50
+ .quantity-input-wrapper {
51
+ margin-bottom: 0rem;
52
+ margin-right: 10px;
53
+ width: 54px;
54
+ input::-webkit-outer-spin-button,
55
+ input::-webkit-inner-spin-button {
56
+ -webkit-appearance: none;
57
+ margin: 0;
58
+ }
59
+ input[type='number'] {
60
+ border-radius: 4px;
61
+ -moz-appearance: textfield; /* Firefox */
62
+ }
63
+ input {
64
+ width: 54px;
65
+ height: 54px;
66
+ text-align: center;
67
+ padding: 0px;
68
+ margin-bottom: 0px;
69
+ }
70
+ label {
71
+ text-align: center;
72
+ }
73
+ }
74
+ .short-description {
75
+ line-height: 1.5;
76
+ font-size: 16px;
77
+ margin-bottom: 24px;
78
+ color: #707070;
79
+ p {
80
+ margin-bottom: 1rem;
81
+ }
82
+ }
83
+ .delivery-list {
84
+ li {
85
+ display: flex;
86
+ align-items: center;
87
+ svg {
88
+ margin-right: 16px;
89
+ }
90
+ margin-bottom: 16px;
91
+ }
92
+ }
93
+ .product-details {
94
+ ${theme.above.md} {
95
+ align-items: flex-start;
96
+ }
97
+
98
+ .price,
99
+ .new-price,
100
+ .old-price {
101
+ font-weight: 600;
102
+ display: inline-block;
103
+ }
104
+ .price,
105
+ .new-price {
106
+ font-size: 1.5rem;
107
+ }
108
+ .new-price {
109
+ margin-right: 8px;
110
+ color: ${theme.colors.red};
111
+ }
112
+ .old-price {
113
+ color: #707070;
114
+ }
115
+ }
116
+ `;
117
+ const Product = ({ result: { data, loading }, product, partialProduct }) => {
118
+ var _a, _b, _c;
119
+ const initialVariant = useVariantFromUrl();
120
+ const t = useIntl();
121
+ const variantHandler = useProductVariants(product, {
122
+ initialVariant,
123
+ preselectCheapest: true
124
+ });
125
+ const { selectedVariant: selectedVariation, getMissingOptions } = variantHandler;
126
+ if (!product) {
127
+ product = partialProduct;
128
+ }
129
+ // Return early if there is no product
130
+ if (!product) {
131
+ return (React.createElement(ProductContainer, null,
132
+ React.createElement(ProductPageLoadingState, null)));
133
+ }
134
+ const images = (_a = product.images) !== null && _a !== void 0 ? _a : [];
135
+ const parents = getParentOrCanonicalRoute((_b = data === null || data === void 0 ? void 0 : data.route) === null || _b === void 0 ? void 0 : _b.parents, product);
136
+ const relatedProducts = product.relatedProducts;
137
+ return (React.createElement(ProductContainer, null,
138
+ React.createElement(MaxWidth, null,
139
+ React.createElement(Breadcrumbs, { breadcrumbs: ((_c = data === null || data === void 0 ? void 0 : data.route) === null || _c === void 0 ? void 0 : _c.breadcrumbs) || [], parents: parents })),
140
+ React.createElement(Container, null,
141
+ React.createElement(ProductSection, null, images && (React.createElement(ImageContainer, { images: images, variant: selectedVariation, badges: product.badges }))),
142
+ React.createElement(ProductSection, null,
143
+ React.createElement("div", { className: "product-details" },
144
+ React.createElement("header", null,
145
+ React.createElement(Favourite, { product: product, variant: selectedVariation, style: {
146
+ float: 'right',
147
+ marginLeft: 'auto',
148
+ fontSize: '1.5em'
149
+ } }),
150
+ React.createElement("h1", { "data-testid": "product-title" }, product.name || 'Loading...'),
151
+ React.createElement("h2", null, product.subName),
152
+ product.articleNumber),
153
+ React.createElement("div", { className: "short-description", dangerouslySetInnerHTML: {
154
+ __html: product.shortDescription
155
+ } }),
156
+ (product === null || product === void 0 ? void 0 : product.isPackage) ? (React.createElement(LoadablePackageProduct, { product: product })) : (React.createElement(AddToCartForm, { product: product, variant: selectedVariation, getMissingOptions: getMissingOptions, variantHandler: variantHandler })),
157
+ React.createElement("ul", { className: "delivery-list", css: { marginTop: '36px' } },
158
+ React.createElement("li", null,
159
+ React.createElement(DeliveryCheck, null),
160
+ " ",
161
+ t('Express 1–2 working days')),
162
+ React.createElement("li", null,
163
+ React.createElement(DeliveryCheck, null),
164
+ " ",
165
+ t('Standard 2–5 working days')),
166
+ React.createElement("li", null,
167
+ React.createElement(DeliveryCheck, null),
168
+ " ",
169
+ t('Free shipping and return'))))),
170
+ React.createElement(Above, { breakpoint: "md" }, matches => matches ? (React.createElement(ProductInfo, { product: product })) : (React.createElement(ProductInfoAccordion, { product: product })))),
171
+ relatedProducts && React.createElement(RelatedProducts, Object.assign({}, { relatedProducts, loading }))));
172
+ };
173
+ export default Product;
174
+ //# sourceMappingURL=ProductPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProductPage.js","sourceRoot":"","sources":["../../../../src/components/ProductPage/ProductPage.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import loadable from '@loadable/component';
3
+ import LoadingPage from '../LoadingPage';
4
+ export default loadable(() => import('./ProductPage'), {
5
+ fallback: React.createElement(LoadingPage, null)
6
+ });
7
+ //# sourceMappingURL=ProductPage.loadable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProductPage.loadable.js","sourceRoot":"","sources":["../../../../src/components/ProductPage/ProductPage.loadable.js"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAC3C,OAAO,WAAW,MAAM,gBAAgB,CAAC;AAEzC,eAAe,QAAQ,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE;IACrD,QAAQ,EAAE,oBAAC,WAAW,OAAG;CAC1B,CAAC,CAAC"}
@@ -0,0 +1,55 @@
1
+ import React from 'react';
2
+ import { Container } from './styledComponents';
3
+ import { ProductSection } from './ProductInfo';
4
+ import { LoadingLine } from '@jetshop/ui/Loading/LoadingLine';
5
+ import { styled } from 'linaria/react';
6
+ const MockImage = styled('div') `
7
+ padding-top: 100%;
8
+ background: #f6f6f6;
9
+ `;
10
+ const MockThumbnails = styled('div') `
11
+ margin-top: 1rem;
12
+ display: flex;
13
+ justify-content: space-between;
14
+ `;
15
+ const MockThumbnail = styled('div') `
16
+ width: 22%;
17
+ `;
18
+ export default function ProductPageLoadingState() {
19
+ return (React.createElement(Container, { style: {
20
+ marginTop: '2'
21
+ } },
22
+ React.createElement(ProductSection, null,
23
+ React.createElement(MockImage, null),
24
+ React.createElement(MockThumbnails, null,
25
+ React.createElement(MockThumbnail, null,
26
+ React.createElement(MockImage, null)),
27
+ React.createElement(MockThumbnail, null,
28
+ React.createElement(MockImage, null)),
29
+ React.createElement(MockThumbnail, null,
30
+ React.createElement(MockImage, null)),
31
+ React.createElement(MockThumbnail, null,
32
+ React.createElement(MockImage, null)))),
33
+ React.createElement(ProductSection, null,
34
+ React.createElement(LoadingLine, { heightPx: 24, widthRem: 15, style: {
35
+ marginBottom: '12px'
36
+ } }),
37
+ React.createElement(LoadingLine, { heightPx: 16, style: {
38
+ marginBottom: '14px'
39
+ } }),
40
+ React.createElement(LoadingLine, { heightPx: 12, widthRem: 10, style: {
41
+ marginBottom: '31px'
42
+ } }),
43
+ React.createElement(LoadingLine, { heightPx: 12, widthRem: 14, count: 2, style: {
44
+ marginBottom: '8px'
45
+ } }),
46
+ React.createElement(LoadingLine, { heightPx: 24, style: {
47
+ marginTop: '16px',
48
+ marginBottom: '14px'
49
+ } }),
50
+ React.createElement(LoadingLine, { heightPx: 54, widthRem: 50, style: {
51
+ marginTop: '16px',
52
+ marginBottom: '14px'
53
+ } }))));
54
+ }
55
+ //# sourceMappingURL=ProductPageLoadingState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProductPageLoadingState.js","sourceRoot":"","sources":["../../../../src/components/ProductPage/ProductPageLoadingState.js"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;;;CAG9B,CAAC;AACF,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;;;;CAInC,CAAC;AACF,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;;CAElC,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,uBAAuB;IAC7C,OAAO,CACL,oBAAC,SAAS,IACR,KAAK,EAAE;YACL,SAAS,EAAE,GAAG;SACf;QAED,oBAAC,cAAc;YACb,oBAAC,SAAS,OAAG;YACb,oBAAC,cAAc;gBACb,oBAAC,aAAa;oBACZ,oBAAC,SAAS,OAAG,CACC;gBAChB,oBAAC,aAAa;oBACZ,oBAAC,SAAS,OAAG,CACC;gBAChB,oBAAC,aAAa;oBACZ,oBAAC,SAAS,OAAG,CACC;gBAChB,oBAAC,aAAa;oBACZ,oBAAC,SAAS,OAAG,CACC,CACD,CACF;QACjB,oBAAC,cAAc;YACb,oBAAC,WAAW,IACV,QAAQ,EAAE,EAAE,EACZ,QAAQ,EAAE,EAAE,EACZ,KAAK,EAAE;oBACL,YAAY,EAAE,MAAM;iBACrB,GACD;YACF,oBAAC,WAAW,IACV,QAAQ,EAAE,EAAE,EACZ,KAAK,EAAE;oBACL,YAAY,EAAE,MAAM;iBACrB,GACD;YACF,oBAAC,WAAW,IACV,QAAQ,EAAE,EAAE,EACZ,QAAQ,EAAE,EAAE,EACZ,KAAK,EAAE;oBACL,YAAY,EAAE,MAAM;iBACrB,GACD;YACF,oBAAC,WAAW,IACV,QAAQ,EAAE,EAAE,EACZ,QAAQ,EAAE,EAAE,EACZ,KAAK,EAAE,CAAC,EACR,KAAK,EAAE;oBACL,YAAY,EAAE,KAAK;iBACpB,GACD;YACF,oBAAC,WAAW,IACV,QAAQ,EAAE,EAAE,EACZ,KAAK,EAAE;oBACL,SAAS,EAAE,MAAM;oBACjB,YAAY,EAAE,MAAM;iBACrB,GACD;YAEF,oBAAC,WAAW,IACV,QAAQ,EAAE,EAAE,EACZ,QAAQ,EAAE,EAAE,EACZ,KAAK,EAAE;oBACL,SAAS,EAAE,MAAM;oBACjB,YAAY,EAAE,MAAM;iBACrB,GACD,CACa,CACP,CACb,CAAC;AACJ,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { Component } from 'react';
2
+ export default class QuantityContainer extends Component {
3
+ constructor() {
4
+ super(...arguments);
5
+ this.state = {
6
+ qty: 1
7
+ };
8
+ this.setQuantity = qty => {
9
+ // Ensure negative numbers can't be added
10
+ const limitedQty = qty < 1 ? 1 : qty;
11
+ this.setState({ qty: limitedQty });
12
+ };
13
+ }
14
+ render() {
15
+ return this.props.children({
16
+ quantity: this.state.qty,
17
+ setQuantity: this.setQuantity
18
+ });
19
+ }
20
+ }
21
+ //# sourceMappingURL=QuantityContainer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QuantityContainer.js","sourceRoot":"","sources":["../../../../src/components/ProductPage/QuantityContainer.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,SAAS;IAAxD;;QACE,UAAK,GAAG;YACN,GAAG,EAAE,CAAC;SACP,CAAC;QAEF,gBAAW,GAAG,GAAG,CAAC,EAAE;YAClB,yCAAyC;YACzC,MAAM,UAAU,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YACrC,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;QACrC,CAAC,CAAC;IAQJ,CAAC;IANC,MAAM;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;YACzB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG;YACxB,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -0,0 +1,45 @@
1
+ import t from '@jetshop/intl';
2
+ import React from 'react';
3
+ import { styled } from 'linaria/react';
4
+ import { Container as BaseContainer } from './styledComponents';
5
+ import { ProductGrid } from '../CategoryPage/ProductGrid';
6
+ import { theme } from '../Theme';
7
+ const Container = styled(BaseContainer) `
8
+ background: transparent;
9
+ /* padding: 0; */
10
+
11
+ h2 {
12
+ font-size: 18px;
13
+ font-weight: bold;
14
+ margin-bottom: 0.75em;
15
+ }
16
+
17
+ .product-grid {
18
+ width: 100%;
19
+ .product-card {
20
+ width: 16.667%;
21
+ }
22
+ /* Let products overflow on smaller devices */
23
+ ${theme.below.md} {
24
+ overflow-x: auto;
25
+ display: flex;
26
+ flex-wrap: nowrap;
27
+ .product-card {
28
+ min-width: 34%;
29
+ margin: 0 0.5em;
30
+ }
31
+ }
32
+ }
33
+ .product-card {
34
+ font-size: 0.875em;
35
+ }
36
+ `;
37
+ const RelatedProducts = React.memo(({ relatedProducts, loading }) => {
38
+ if (!relatedProducts || relatedProducts.length === 0)
39
+ return null;
40
+ return (React.createElement(Container, null,
41
+ React.createElement("h2", null, t('Related products')),
42
+ React.createElement(ProductGrid, { listName: "related-products", products: relatedProducts, loading: loading, imageSizes: [1 / 3, 1 / 3, 1 / 6] })));
43
+ });
44
+ export { RelatedProducts };
45
+ //# sourceMappingURL=RelatedProducts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RelatedProducts.js","sourceRoot":"","sources":["../../../../src/components/ProductPage/RelatedProducts.js"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,eAAe,CAAC;AAC9B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE1D,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,MAAM,SAAS,GAAG,MAAM,CAAC,aAAa,CAAC,CAAA;;;;;;;;;;;;;;;;MAgBjC,KAAK,CAAC,KAAK,CAAC,EAAE;;;;;;;;;;;;;CAanB,CAAC;AAEF,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,EAAE;IAClE,IAAI,CAAC,eAAe,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAElE,OAAO,CACL,oBAAC,SAAS;QACR,gCAAK,CAAC,CAAC,kBAAkB,CAAC,CAAM;QAChC,oBAAC,WAAW,IACV,QAAQ,EAAC,kBAAkB,EAC3B,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,OAAO,EAChB,UAAU,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GACjC,CACQ,CACb,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,OAAO,EAAE,eAAe,EAAE,CAAC"}