@shopgate/engage 7.32.0-beta.1 → 7.32.0-beta.10

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 (529) hide show
  1. package/README.md +0 -1
  2. package/account/components/Profile/Profile.provider.d.ts +1 -1
  3. package/account/components/Profile/ProfileAddressBook.d.ts.map +1 -1
  4. package/account/components/Profile/ProfileAddressBook.js +13 -22
  5. package/account/components/Profile/ProfileAddressCard.d.ts.map +1 -1
  6. package/account/components/Profile/ProfileAddressCard.js +9 -18
  7. package/account/components/Profile/ProfileForm.d.ts.map +1 -1
  8. package/account/components/Profile/ProfileForm.js +15 -42
  9. package/account/components/ProfileContact/ProfileContact.js +13 -21
  10. package/admin-preview/components/FrontendSettingsPreviewBridge/FrontendSettingsPreviewBridge.d.ts +2 -1
  11. package/admin-preview/components/FrontendSettingsPreviewBridge/FrontendSettingsPreviewBridge.d.ts.map +1 -1
  12. package/admin-preview/components/FrontendSettingsPreviewBridge/FrontendSettingsPreviewBridge.js +61 -5
  13. package/admin-preview/components/FrontendSettingsPreviewBridge/helpers.d.ts +7 -1
  14. package/admin-preview/components/FrontendSettingsPreviewBridge/helpers.d.ts.map +1 -1
  15. package/admin-preview/components/FrontendSettingsPreviewBridge/helpers.js +14 -2
  16. package/admin-preview/components/FrontendSettingsPreviewBridge/types.d.ts +15 -2
  17. package/admin-preview/components/FrontendSettingsPreviewBridge/types.d.ts.map +1 -1
  18. package/admin-preview/constants/index.d.ts +0 -12
  19. package/admin-preview/constants/index.d.ts.map +1 -1
  20. package/admin-preview/constants/index.js +0 -16
  21. package/admin-preview/helpers/_internal/detection.d.ts +53 -0
  22. package/admin-preview/helpers/_internal/detection.d.ts.map +1 -0
  23. package/admin-preview/helpers/_internal/detection.js +93 -0
  24. package/admin-preview/helpers/index.d.ts +7 -0
  25. package/admin-preview/helpers/index.d.ts.map +1 -1
  26. package/admin-preview/helpers/index.js +12 -4
  27. package/admin-preview/initialization/_internal/initialFrontendSettings.d.ts +32 -0
  28. package/admin-preview/initialization/_internal/initialFrontendSettings.d.ts.map +1 -0
  29. package/admin-preview/initialization/_internal/initialFrontendSettings.js +43 -0
  30. package/admin-preview/initialization/awaitInitialFrontendSettings.d.ts +22 -0
  31. package/admin-preview/initialization/awaitInitialFrontendSettings.d.ts.map +1 -0
  32. package/admin-preview/initialization/awaitInitialFrontendSettings.js +84 -0
  33. package/back-in-stock/components/BackInStockButton/index.js +5 -5
  34. package/back-in-stock/components/Subscriptions/components/Subscription/index.js +2 -5
  35. package/cart/components/CartItem/CartItemProductLayout.js +2 -1
  36. package/cart/components/CartItem/CartItemProductLayoutWide.js +2 -2
  37. package/cart/components/CartItem/CartItemProductLayoutWideRemoveItem.js +7 -14
  38. package/cart/components/CartItem/CartItemProductProvider.connector.js +0 -2
  39. package/cart/components/CartItem/CartItemProductProvider.js +3 -30
  40. package/cart/components/CartItem/CartItemProductProvider.types.js +0 -1
  41. package/cart/components/CartItem/CartItemQuantityPicker.js +1 -0
  42. package/cart/components/CartItems/CartItemCardReservationLabelChangeStore.js +6 -24
  43. package/cart/components/CartItems/CartItems.js +8 -10
  44. package/cart/components/CartItems/CartItemsSubstitution.js +3 -2
  45. package/cart/components/CartSummaryWide/CartSummaryWide.js +2 -2
  46. package/cart/components/CartSummaryWide/CartSummaryWideCheckoutButton.js +9 -23
  47. package/cart/components/PaymentBar/PaymentBarCheckoutButton.js +8 -30
  48. package/cart/components/PaymentBar/PaymentBarContent.js +1 -1
  49. package/cart/components/PaymentBar/testUtils/mockFactories.js +4 -11
  50. package/category/components/CategoryImage/index.js +24 -17
  51. package/checkout/components/AddressBook/AddressList.js +14 -23
  52. package/checkout/components/Checkout/CheckoutActions.js +4 -3
  53. package/checkout/components/Checkout/CheckoutAddress.js +8 -0
  54. package/checkout/components/Checkout/CheckoutSection.js +6 -2
  55. package/checkout/components/CheckoutConfirmation/CheckoutConfirmation.js +6 -7
  56. package/checkout/components/ResponsiveBackButton/ResponsiveBackButton.js +7 -17
  57. package/components/Badge/Badge.d.ts +30 -0
  58. package/components/Badge/Badge.d.ts.map +1 -0
  59. package/components/Badge/Badge.js +48 -0
  60. package/components/Badge/index.d.ts +3 -0
  61. package/components/Badge/index.d.ts.map +1 -0
  62. package/components/Badge/index.js +1 -0
  63. package/components/Card/Card.d.ts +27 -0
  64. package/components/Card/Card.d.ts.map +1 -0
  65. package/components/Card/Card.js +57 -0
  66. package/components/Card/index.d.ts +4 -0
  67. package/components/Card/index.d.ts.map +1 -0
  68. package/components/Card/index.js +2 -0
  69. package/components/Card/useCardAppearance.d.ts +11 -0
  70. package/components/Card/useCardAppearance.d.ts.map +1 -0
  71. package/components/Card/useCardAppearance.js +22 -0
  72. package/components/ChipLayout/index.js +2 -4
  73. package/components/Logo/index.d.ts.map +1 -1
  74. package/components/Logo/index.js +3 -6
  75. package/components/NavigationHandler/connector.js +1 -1
  76. package/components/NavigationHandler/index.d.ts +2 -2
  77. package/components/Paper/Paper.d.ts +48 -0
  78. package/components/Paper/Paper.d.ts.map +1 -0
  79. package/components/Paper/Paper.js +64 -0
  80. package/components/Paper/index.d.ts +3 -0
  81. package/components/Paper/index.d.ts.map +1 -0
  82. package/components/Paper/index.js +1 -0
  83. package/components/PickerUtilize/index.d.ts +2 -1
  84. package/components/PickerUtilize/index.d.ts.map +1 -1
  85. package/components/RadioCard/RadioCard.d.ts.map +1 -1
  86. package/components/RadioCard/RadioCard.js +2 -1
  87. package/components/SheetList/components/Item/index.js +8 -8
  88. package/components/Tabs/components/Tab.d.ts.map +1 -1
  89. package/components/Tabs/components/Tab.js +14 -16
  90. package/components/Typography/Typography.d.ts +1 -1
  91. package/components/View/components/Above/index.d.ts.map +1 -1
  92. package/components/View/components/Above/index.js +3 -1
  93. package/components/View/components/Below/index.d.ts.map +1 -1
  94. package/components/View/components/Below/index.js +3 -1
  95. package/components/View/components/Content/index.d.ts +2 -1
  96. package/components/View/components/Content/index.d.ts.map +1 -1
  97. package/components/View/components/Content/index.js +4 -1
  98. package/components/constants.d.ts +6 -0
  99. package/components/constants.d.ts.map +1 -0
  100. package/components/index.d.ts +5 -1
  101. package/components/index.d.ts.map +1 -1
  102. package/components/index.js +4 -2
  103. package/components/v2/Button/Button.d.ts +24 -13
  104. package/components/v2/Button/Button.d.ts.map +1 -1
  105. package/components/v2/Button/Button.js +139 -41
  106. package/components/v2/ButtonBase/ButtonBase.d.ts +50 -10
  107. package/components/v2/ButtonBase/ButtonBase.d.ts.map +1 -1
  108. package/components/v2/ButtonBase/ButtonBase.js +192 -17
  109. package/components/v2/ButtonBase/Ripple.d.ts +2 -1
  110. package/components/v2/ButtonBase/Ripple.d.ts.map +1 -1
  111. package/components/v2/ButtonBase/hooks.d.ts +0 -1
  112. package/components/v2/ButtonBase/hooks.d.ts.map +1 -1
  113. package/components/v2/ButtonBase/hooks.js +36 -12
  114. package/components/v2/ButtonGroup/ButtonGroup.d.ts +11 -5
  115. package/components/v2/ButtonGroup/ButtonGroup.d.ts.map +1 -1
  116. package/components/v2/ButtonGroup/ButtonGroup.js +49 -26
  117. package/components/v2/CircularProgress/CircularProgress.d.ts.map +1 -1
  118. package/components/v2/CircularProgress/CircularProgress.js +10 -5
  119. package/core/helpers/getFullImageSource.d.ts +5 -1
  120. package/core/helpers/getFullImageSource.d.ts.map +1 -1
  121. package/core/helpers/getFullImageSource.js +30 -14
  122. package/core/helpers/i18n.d.ts +4 -0
  123. package/core/helpers/i18n.d.ts.map +1 -1
  124. package/core/helpers/i18n.js +3 -0
  125. package/core/hooks/html/useLoadImage.d.ts +3 -3
  126. package/core/hooks/html/useLoadImage.d.ts.map +1 -1
  127. package/core/hooks/html/useLoadImage.js +2 -2
  128. package/core/hooks/useLocalStorage.d.ts +8 -0
  129. package/core/hooks/useLocalStorage.d.ts.map +1 -1
  130. package/core/hooks/useLocalStorage.js +22 -15
  131. package/core/hooks/useNavigation.d.ts +10 -2
  132. package/core/hooks/useNavigation.d.ts.map +1 -1
  133. package/core/hooks/useNavigation.js +1 -2
  134. package/core/initialization/fetchSettings.d.ts +12 -0
  135. package/core/initialization/fetchSettings.d.ts.map +1 -0
  136. package/core/initialization/fetchSettings.js +134 -0
  137. package/core/initialization/index.d.ts +33 -2
  138. package/core/initialization/index.d.ts.map +1 -1
  139. package/core/initialization/index.js +44 -103
  140. package/core/router/conductor.d.ts +9 -0
  141. package/core/router/helpers.d.ts +28 -15
  142. package/core/router/helpers.d.ts.map +1 -1
  143. package/core/router/helpers.js +8 -8
  144. package/development/components/DevelopmentSettings/DevelopmentSettings.js +3 -3
  145. package/development/components/SimulatedInsets/SimulatedInsetBottom.js +3 -3
  146. package/development/components/SimulatedInsets/SimulatedInsetTop.js +2 -2
  147. package/favorites/components/FavoriteButtonWide/FavoriteButtonWide.js +7 -17
  148. package/favorites/components/Item/Item.d.ts +1 -1
  149. package/favorites/components/Item/Item.d.ts.map +1 -1
  150. package/favorites/components/Item/Item.js +7 -7
  151. package/favorites/components/List/List.d.ts +1 -1
  152. package/favorites/components/List/List.d.ts.map +1 -1
  153. package/favorites/components/List/List.js +0 -1
  154. package/favorites/components/List/ListContent.js +4 -5
  155. package/favorites/components/Lists/Lists.js +17 -6
  156. package/filter/components/FilterPageContent/components/ApplyButton/index.js +8 -10
  157. package/filter/components/FilterPageContent/components/ResetButton/index.js +8 -6
  158. package/filter/components/PriceSlider/index.js +6 -1
  159. package/locations/components/ChangeLocationButton/ChangeLocationButton.js +10 -14
  160. package/locations/components/FulfillmentSheet/FulfillmentSheetContent.js +4 -8
  161. package/locations/components/FulfillmentSlotSwitcher/FulfillmentSlotDialog.js +4 -8
  162. package/locations/components/FulfillmentSlotSwitcher/FulfillmentSlotSwitcher.js +1 -1
  163. package/locations/components/FulfillmentSlotSwitcher/FulfillmentSlotSwitcherBar.js +9 -18
  164. package/locations/components/FulfillmentSlotSwitcher/FulfillmentSlotSwitcherDefault.js +10 -10
  165. package/locations/components/GlobalLocationSwitcher/GlobalLocationSwitcherBar.js +9 -19
  166. package/locations/components/GlobalLocationSwitcher/GlobalLocationSwitcherDefault.js +9 -10
  167. package/locations/components/ReserveForm/ReserveForm.js +6 -7
  168. package/locations/components/StoreDetails/components/GetDirectionsButton.js +2 -4
  169. package/locations/components/StoreDetails/components/StoreDetails.js +5 -10
  170. package/locations/components/StoreDetails/components/StoresNearbyListItem.js +13 -21
  171. package/locations/components/StoreFinder/StoreFinderSelectLocationButton.js +5 -11
  172. package/locations/components/StoreFinder/StoreFinderStoreInfoButton.js +5 -11
  173. package/locations/components/StoreList/StoreListProduct.js +2 -3
  174. package/locations/components/StoreList/StoreListSearch.js +1 -0
  175. package/locations/components/StoreList/StoreSelectLocationButton.js +5 -11
  176. package/login/components/ForgotPassword/ForgotPassword.js +11 -23
  177. package/mocks/date.js +31 -0
  178. package/mocks/index.js +3 -0
  179. package/mocks/pipelineRequest.js +1 -0
  180. package/mocks/subscriptions.js +1 -0
  181. package/orders/components/OrderDetails/OrderDetailsAuthenticate.js +5 -7
  182. package/orders/components/OrderHistory/OrderHistoryList.d.ts.map +1 -1
  183. package/orders/components/OrderHistory/OrderHistoryList.js +8 -9
  184. package/orders/components/OrderHistory/OrderHistoryTable.d.ts.map +1 -1
  185. package/orders/components/OrderHistory/OrderHistoryTable.js +4 -0
  186. package/package.json +12 -12
  187. package/page/components/NotFound.d.ts +7 -0
  188. package/page/components/NotFound.d.ts.map +1 -0
  189. package/page/components/NotFound.js +8 -8
  190. package/page/components/ResponsiveWidgetImage/ResponsiveWidgetImage.d.ts +52 -0
  191. package/page/components/ResponsiveWidgetImage/ResponsiveWidgetImage.d.ts.map +1 -0
  192. package/page/components/ResponsiveWidgetImage/ResponsiveWidgetImage.js +4 -4
  193. package/page/components/ResponsiveWidgetImage/index.d.ts +2 -0
  194. package/page/components/ResponsiveWidgetImage/index.d.ts.map +1 -0
  195. package/page/components/WidgetRichText/WidgetRichText.d.ts +25 -0
  196. package/page/components/WidgetRichText/WidgetRichText.d.ts.map +1 -0
  197. package/page/components/WidgetRichText/index.d.ts +2 -0
  198. package/page/components/WidgetRichText/index.d.ts.map +1 -0
  199. package/page/components/WidgetVideo/WidgetVideo.d.ts +43 -0
  200. package/page/components/WidgetVideo/WidgetVideo.d.ts.map +1 -0
  201. package/page/components/WidgetVideo/WidgetVideo.js +33 -39
  202. package/page/components/WidgetVideo/index.d.ts +2 -0
  203. package/page/components/WidgetVideo/index.d.ts.map +1 -0
  204. package/page/components/Widgets/Overlay.d.ts +17 -0
  205. package/page/components/Widgets/Overlay.d.ts.map +1 -0
  206. package/page/components/Widgets/Overlay.js +24 -38
  207. package/page/components/Widgets/Tooltip.d.ts +20 -0
  208. package/page/components/Widgets/Tooltip.d.ts.map +1 -0
  209. package/page/components/Widgets/Tooltip.js +6 -10
  210. package/page/components/Widgets/Widget.d.ts +32 -0
  211. package/page/components/Widgets/Widget.d.ts.map +1 -0
  212. package/page/components/Widgets/Widget.js +7 -18
  213. package/page/components/Widgets/WidgetContext.d.ts +32 -38
  214. package/page/components/Widgets/WidgetContext.d.ts.map +1 -0
  215. package/page/components/Widgets/WidgetContext.js +2 -8
  216. package/page/components/Widgets/WidgetProvider.d.ts +25 -0
  217. package/page/components/Widgets/WidgetProvider.d.ts.map +1 -0
  218. package/page/components/Widgets/WidgetProvider.js +5 -12
  219. package/page/components/Widgets/Widgets.d.ts +16 -0
  220. package/page/components/Widgets/Widgets.d.ts.map +1 -0
  221. package/page/components/Widgets/Widgets.js +5 -12
  222. package/page/components/Widgets/WidgetsPreviewContext.d.ts +21 -0
  223. package/page/components/Widgets/WidgetsPreviewContext.d.ts.map +1 -0
  224. package/page/components/Widgets/WidgetsPreviewContext.js +5 -7
  225. package/page/components/Widgets/WidgetsPreviewProvider.d.ts +18 -0
  226. package/page/components/Widgets/WidgetsPreviewProvider.d.ts.map +1 -0
  227. package/page/components/Widgets/WidgetsPreviewProvider.js +5 -6
  228. package/page/components/Widgets/constants.d.ts +5 -0
  229. package/page/components/Widgets/constants.d.ts.map +1 -0
  230. package/page/components/Widgets/constants.js +3 -1
  231. package/page/components/Widgets/events.d.ts +38 -0
  232. package/page/components/Widgets/events.d.ts.map +1 -0
  233. package/page/components/Widgets/events.js +8 -12
  234. package/page/components/Widgets/helpers.d.ts +50 -0
  235. package/page/components/Widgets/helpers.d.ts.map +1 -0
  236. package/page/components/Widgets/helpers.js +8 -13
  237. package/page/components/Widgets/hooks.d.ts +13 -0
  238. package/page/components/Widgets/hooks.d.ts.map +1 -0
  239. package/page/components/Widgets/hooks.js +13 -11
  240. package/page/components/Widgets/index.d.ts +3 -0
  241. package/page/components/Widgets/index.d.ts.map +1 -0
  242. package/page/components/Widgets/types.d.ts +111 -113
  243. package/page/components/Widgets/types.d.ts.map +1 -0
  244. package/page/components/Widgets/types.js +1 -0
  245. package/page/components/index.d.ts +5 -0
  246. package/page/components/index.d.ts.map +1 -0
  247. package/page/constants/actionTypes.d.ts +4 -0
  248. package/page/constants/actionTypes.d.ts.map +1 -0
  249. package/page/constants/index.d.ts +25 -0
  250. package/page/constants/index.d.ts.map +1 -0
  251. package/page/constants/index.js +5 -3
  252. package/page/helpers/index.d.ts +70 -62
  253. package/page/helpers/index.d.ts.map +1 -0
  254. package/page/helpers/index.js +31 -29
  255. package/page/hooks/index.d.ts +54 -53
  256. package/page/hooks/index.d.ts.map +1 -0
  257. package/page/hooks/index.js +20 -15
  258. package/page/selectors/index.d.ts +32 -0
  259. package/page/selectors/index.d.ts.map +1 -0
  260. package/page/widgets/Button/Button.js +2 -3
  261. package/page/widgets/NestedCategoryFilter/NestedCategoryFilter.js +8 -8
  262. package/page/widgets/ProductList/ProductList.js +18 -14
  263. package/page/widgets/ProductSlider/ProductSlider.js +1 -15
  264. package/page/widgets/Video/Video.d.ts +6 -0
  265. package/page/widgets/Video/Video.d.ts.map +1 -0
  266. package/page/widgets/Video/Video.js +0 -2
  267. package/page/widgets/Video/hooks.d.ts +53 -0
  268. package/page/widgets/Video/hooks.d.ts.map +1 -0
  269. package/page/widgets/Video/hooks.js +4 -12
  270. package/page/widgets/Video/index.d.ts +2 -0
  271. package/page/widgets/Video/index.d.ts.map +1 -0
  272. package/product/components/Description/index.js +0 -2
  273. package/product/components/FilterBar/components/Content/components/FilterButton/index.js +2 -6
  274. package/product/components/FilterBar/components/Content/components/Sort/index.js +1 -5
  275. package/product/components/Media/FeaturedMedia.js +7 -1
  276. package/product/components/Media/MediaImage.js +24 -23
  277. package/product/components/Media/MediaPlaceholder.js +4 -7
  278. package/product/components/MediaSlider/components/MediaImage/index.js +6 -2
  279. package/product/components/MediaSlider/constants.js +1 -12
  280. package/product/components/OrderQuantityHint/index.js +16 -1
  281. package/product/components/ProductCard/index.js +36 -23
  282. package/product/components/ProductGrid/components/Item/components/ItemDetails/index.js +12 -4
  283. package/product/components/ProductGrid/components/Item/components/ItemImage/index.js +3 -6
  284. package/product/components/ProductGrid/components/Item/components/ItemName/index.js +6 -1
  285. package/product/components/ProductGrid/components/Item/index.js +10 -2
  286. package/product/components/ProductGrid/components/Layout/index.js +19 -4
  287. package/product/components/ProductGrid/constants.d.ts +2 -0
  288. package/product/components/ProductGrid/constants.d.ts.map +1 -0
  289. package/product/components/ProductGrid/constants.js +1 -0
  290. package/product/components/ProductGrid/hooks.d.ts +11 -0
  291. package/product/components/ProductGrid/hooks.d.ts.map +1 -0
  292. package/product/components/ProductGrid/hooks.js +48 -0
  293. package/product/components/ProductGrid/index.js +3 -6
  294. package/product/components/ProductGridPrice/index.js +0 -1
  295. package/product/components/ProductImage/ProductImage.d.ts +42 -0
  296. package/product/components/ProductImage/ProductImage.d.ts.map +1 -0
  297. package/product/components/ProductImage/ProductImage.js +158 -0
  298. package/product/components/ProductImage/ProductImagePlaceholder.d.ts +23 -0
  299. package/product/components/ProductImage/ProductImagePlaceholder.d.ts.map +1 -0
  300. package/product/components/ProductImage/ProductImagePlaceholder.js +12 -17
  301. package/product/components/ProductImage/constants.d.ts +7 -0
  302. package/product/components/ProductImage/constants.d.ts.map +1 -0
  303. package/product/components/ProductImage/constants.js +6 -0
  304. package/product/components/ProductImage/hooks.d.ts +8 -0
  305. package/product/components/ProductImage/hooks.d.ts.map +1 -0
  306. package/product/components/ProductImage/hooks.js +32 -0
  307. package/product/components/ProductImage/index.d.ts +3 -0
  308. package/product/components/ProductImage/index.d.ts.map +1 -0
  309. package/product/components/ProductImage/index.js +1 -201
  310. package/product/components/ProductList/components/Item/index.js +5 -3
  311. package/product/components/ProductList/components/Layout/index.js +8 -20
  312. package/product/components/ProductName/ProductName.d.ts +1 -1
  313. package/product/components/ProductName/ProductName.d.ts.map +1 -1
  314. package/product/components/ProductName/ProductNameContent.d.ts +2 -1
  315. package/product/components/ProductName/ProductNameContent.d.ts.map +1 -1
  316. package/product/components/ProductRatingStars/ProductRatingStars.d.ts +1 -1
  317. package/product/components/ProductRatingStars/ProductRatingStars.js +2 -4
  318. package/product/components/ProductSlider/constants.d.ts +3 -0
  319. package/product/components/ProductSlider/constants.d.ts.map +1 -0
  320. package/product/components/ProductSlider/constants.js +2 -0
  321. package/product/components/ProductSlider/hooks.d.ts +7 -0
  322. package/product/components/ProductSlider/hooks.d.ts.map +1 -0
  323. package/product/components/ProductSlider/hooks.js +40 -0
  324. package/product/components/ProductSlider/index.js +8 -8
  325. package/product/components/Rating/index.js +2 -4
  326. package/product/components/RelationsSlider/RelationsSheet.js +1 -5
  327. package/product/components/RelationsSlider/RelationsSliderContent.js +3 -2
  328. package/product/components/RelationsSlider/constants.d.ts +3 -0
  329. package/product/components/RelationsSlider/constants.d.ts.map +1 -0
  330. package/product/components/RelationsSlider/constants.js +2 -1
  331. package/product/components/RelationsSlider/hooks.d.ts +6 -0
  332. package/product/components/RelationsSlider/hooks.d.ts.map +1 -0
  333. package/product/components/RelationsSlider/hooks.js +34 -0
  334. package/product/components/UnitQuantityPicker/UnitQuantityPicker.d.ts.map +1 -1
  335. package/product/components/UnitQuantityPicker/UnitQuantityPicker.js +16 -34
  336. package/product/helpers/index.js +29 -11
  337. package/product/hooks/index.js +3 -1
  338. package/product/hooks/useLoadProductImage.js +4 -2
  339. package/product/hooks/useShowEmptyRatingStars.d.ts +7 -0
  340. package/product/hooks/useShowEmptyRatingStars.d.ts.map +1 -0
  341. package/product/hooks/useShowEmptyRatingStars.js +21 -0
  342. package/product/index.js +0 -1
  343. package/product/selectors/mocks/productProperties.mock.js +49 -0
  344. package/push-opt-in/components/PushOptInModal/index.js +4 -4
  345. package/registration/components/Registration/RegistrationFormActions.js +4 -4
  346. package/reviews/components/Reviews/components/AllReviewsLink/index.js +6 -6
  347. package/reviews/components/Reviews/components/Header/components/WriteReviewLink/index.js +4 -3
  348. package/settings/action-creators/appSettings.d.ts +3 -3
  349. package/settings/action-creators/appSettings.d.ts.map +1 -1
  350. package/settings/constants/appSettings.d.ts +3 -0
  351. package/settings/constants/appSettings.d.ts.map +1 -1
  352. package/settings/constants/appSettings.js +6 -1
  353. package/settings/constants/imageSettings.d.ts +52 -0
  354. package/settings/constants/imageSettings.d.ts.map +1 -0
  355. package/settings/constants/imageSettings.js +69 -0
  356. package/settings/helpers/index.d.ts +3 -0
  357. package/settings/helpers/index.d.ts.map +1 -0
  358. package/settings/helpers/index.js +1 -0
  359. package/settings/helpers/resolveImageSettings.d.ts +70 -0
  360. package/settings/helpers/resolveImageSettings.d.ts.map +1 -0
  361. package/settings/helpers/resolveImageSettings.js +171 -0
  362. package/settings/helpers/toImageQuality.d.ts +7 -0
  363. package/settings/helpers/toImageQuality.d.ts.map +1 -0
  364. package/settings/helpers/toImageQuality.js +44 -0
  365. package/settings/helpers/toThumborColor.d.ts +15 -0
  366. package/settings/helpers/toThumborColor.d.ts.map +1 -0
  367. package/settings/helpers/toThumborColor.js +51 -0
  368. package/settings/hooks/index.d.ts +2 -0
  369. package/settings/hooks/index.d.ts.map +1 -0
  370. package/settings/hooks/index.js +1 -0
  371. package/settings/hooks/useImageSettings.d.ts +28 -0
  372. package/settings/hooks/useImageSettings.d.ts.map +1 -0
  373. package/settings/hooks/useImageSettings.js +39 -0
  374. package/settings/reducers/appSettings.d.ts.map +1 -1
  375. package/settings/reducers/appSettings.js +100 -8
  376. package/settings/reducers/index.d.ts +3 -3
  377. package/settings/selectors/appSettings.d.ts +114 -1
  378. package/settings/selectors/appSettings.d.ts.map +1 -1
  379. package/settings/selectors/appSettings.js +75 -1
  380. package/settings/types/appSettings.d.ts +244 -0
  381. package/settings/types/appSettings.d.ts.map +1 -1
  382. package/settings/types/appSettings.js +124 -1
  383. package/styles/helpers/index.d.ts +2 -0
  384. package/styles/helpers/index.js +2 -0
  385. package/styles/helpers/loadFontCss.d.ts +22 -0
  386. package/styles/helpers/loadFontCss.d.ts.map +1 -0
  387. package/styles/helpers/loadFontCss.js +138 -0
  388. package/styles/helpers/loadThemeCss.d.ts +14 -0
  389. package/styles/helpers/loadThemeCss.d.ts.map +1 -0
  390. package/styles/helpers/loadThemeCss.js +123 -0
  391. package/styles/index.d.ts +1 -1
  392. package/styles/index.d.ts.map +1 -1
  393. package/styles/index.js +1 -1
  394. package/styles/reset/root.js +23 -4
  395. package/styles/reset/typographyCustomProps.d.ts +12 -0
  396. package/styles/reset/typographyCustomProps.d.ts.map +1 -0
  397. package/styles/reset/typographyCustomProps.js +11 -0
  398. package/styles/theme/createDefaultThemeOptions/index.d.ts.map +1 -1
  399. package/styles/theme/createDefaultThemeOptions/index.js +107 -4
  400. package/styles/theme/createTheme/createComponents.d.ts +2 -2
  401. package/styles/theme/createTheme/createComponents.d.ts.map +1 -1
  402. package/styles/theme/createTheme/createComponents.js +0 -1
  403. package/styles/theme/createTheme/createComponents.types.d.ts +117 -0
  404. package/styles/theme/createTheme/createComponents.types.d.ts.map +1 -1
  405. package/styles/theme/createTheme/createComponents.types.js +119 -2
  406. package/styles/theme/createTheme/createCssVarsForColorSchemeThemes.d.ts.map +1 -1
  407. package/styles/theme/createTheme/createCssVarsForColorSchemeThemes.js +13 -3
  408. package/styles/theme/createTheme/createPalette.types.d.ts +5 -0
  409. package/styles/theme/createTheme/createPalette.types.d.ts.map +1 -1
  410. package/styles/theme/createTheme/createPalette.types.js +7 -2
  411. package/styles/theme/createTheme/createShape.d.ts +3 -0
  412. package/styles/theme/createTheme/createShape.d.ts.map +1 -1
  413. package/styles/theme/createTheme/createSpacing.js +4 -1
  414. package/styles/theme/createTheme/createThemeFromColorScheme.d.ts +4 -2
  415. package/styles/theme/createTheme/createThemeFromColorScheme.d.ts.map +1 -1
  416. package/styles/theme/createTheme/createThemeFromColorScheme.js +6 -3
  417. package/styles/theme/createTheme/createTypography.d.ts +2 -1
  418. package/styles/theme/createTheme/createTypography.js +59 -18
  419. package/styles/theme/createTheme/helpers/cssVarsParser.d.ts.map +1 -1
  420. package/styles/theme/createTheme/helpers/cssVarsParser.js +10 -3
  421. package/styles/theme/createTheme/index.d.ts +2 -1
  422. package/styles/theme/createTheme/index.d.ts.map +1 -1
  423. package/styles/theme/createTheme/index.js +5 -2
  424. package/styles/theme/createTheme/layout.d.ts +23 -0
  425. package/styles/theme/createTheme/layout.d.ts.map +1 -0
  426. package/styles/theme/createTheme/layout.js +20 -0
  427. package/styles/theme/createTheme/shadows.d.ts +11 -1
  428. package/styles/theme/createTheme/shadows.d.ts.map +1 -1
  429. package/styles/theme/createTheme/shadows.js +41 -7
  430. package/styles/theme/createTheme/transitions.d.ts +4 -0
  431. package/styles/theme/createTheme/transitions.js +3 -1
  432. package/styles/theme/createTheme/types.d.ts +41 -9
  433. package/styles/theme/createTheme/types.d.ts.map +1 -1
  434. package/styles/theme/createTheme/types.js +16 -4
  435. package/styles/theme/hocs/index.d.ts +2 -0
  436. package/styles/theme/hocs/index.d.ts.map +1 -0
  437. package/styles/theme/hocs/index.js +1 -0
  438. package/styles/theme/hocs/withTheme.d.ts +21 -0
  439. package/styles/theme/hocs/withTheme.d.ts.map +1 -0
  440. package/styles/theme/hocs/withTheme.js +33 -0
  441. package/styles/theme/hooks/useColorScheme.d.ts +4 -3
  442. package/styles/theme/hooks/useColorScheme.d.ts.map +1 -1
  443. package/styles/theme/hooks/useColorScheme.js +4 -3
  444. package/styles/theme/hooks/useMediaQuery.d.ts +7 -0
  445. package/styles/theme/hooks/useMediaQuery.d.ts.map +1 -1
  446. package/styles/theme/hooks/useMediaQuery.js +5 -5
  447. package/styles/theme/hooks/useTheme.js +1 -1
  448. package/styles/theme/index.d.ts +5 -1
  449. package/styles/theme/index.d.ts.map +1 -1
  450. package/styles/theme/index.js +2 -1
  451. package/styles/theme/providers/ActiveBreakpointProvider.d.ts +1 -1
  452. package/styles/theme/providers/ColorSchemeContext.d.ts +40 -0
  453. package/styles/theme/providers/ColorSchemeContext.d.ts.map +1 -0
  454. package/styles/theme/providers/ColorSchemeContext.js +14 -0
  455. package/styles/theme/providers/ThemeContext.d.ts +3 -0
  456. package/styles/theme/providers/ThemeContext.d.ts.map +1 -0
  457. package/styles/theme/providers/ThemeContext.js +2 -0
  458. package/styles/theme/providers/ThemeProvider.d.ts +4 -14
  459. package/styles/theme/providers/ThemeProvider.d.ts.map +1 -1
  460. package/styles/theme/providers/ThemeProvider.js +88 -26
  461. package/styles/theme/utils/color.d.ts +12 -12
  462. package/styles/theme/utils/color.d.ts.map +1 -1
  463. package/tracking/components/CookieConsentModal/index.js +3 -4
  464. package/tracking/components/PrivacySettings/index.js +3 -3
  465. package/cart/components/PaymentBar/PaymentBarReserveButton.connector.js +0 -6
  466. package/cart/components/PaymentBar/PaymentBarReserveButton.js +0 -71
  467. package/components/ChipLayout/spec.js +0 -41
  468. package/components/Logo/spec.js +0 -12
  469. package/components/NavigationHandler/spec.js +0 -84
  470. package/components/Picker/spec.js +0 -94
  471. package/components/PickerUtilize/spec.js +0 -35
  472. package/components/RangeSlider/spec.js +0 -190
  473. package/components/SheetList/components/Item/spec.js +0 -101
  474. package/components/SheetList/spec.js +0 -43
  475. package/components/TimeBoundary/spec.js +0 -83
  476. package/filter/components/FilterItem/spec.js +0 -14
  477. package/filter/components/FilterPageContent/components/ApplyButton/spec.js +0 -46
  478. package/filter/components/FilterPageContent/components/ResetButton/spec.js +0 -29
  479. package/filter/components/FilterPageContent/components/Selector/components/Selected/spec.js +0 -26
  480. package/filter/components/FilterPageContent/components/Selector/components/Toggle/spec.js +0 -34
  481. package/filter/components/FilterPageContent/components/Selector/components/ValueButton/spec.js +0 -32
  482. package/filter/components/FilterPageContent/components/Selector/spec.js +0 -33
  483. package/filter/components/PriceSlider/components/Label/spec.js +0 -26
  484. package/filter/components/PriceSlider/spec.js +0 -30
  485. package/locations/components/StoreFinder/StoreFinderGetDirectionsButton.connector.js +0 -16
  486. package/locations/components/StoreFinder/StoreFinderGetDirectionsButton.js +0 -52
  487. package/product/collections/index.js +0 -1
  488. package/product/components/EffectivityDates/constants.d.ts +0 -3
  489. package/product/components/EffectivityDates/constants.d.ts.map +0 -1
  490. package/product/components/EffectivityDates/helpers.d.ts +0 -6
  491. package/product/components/EffectivityDates/helpers.d.ts.map +0 -1
  492. package/product/components/FilterBar/components/Content/spec.js +0 -136
  493. package/product/components/Header/Shipping/spec.js +0 -36
  494. package/product/components/Header/Tiers/components/Tier/spec.js +0 -48
  495. package/product/components/Header/Tiers/spec.js +0 -64
  496. package/product/components/Media/helpers.d.ts +0 -2
  497. package/product/components/Media/helpers.d.ts.map +0 -1
  498. package/product/components/Options/components/Content/spec.js +0 -73
  499. package/product/components/Options/components/TextOption/components/OptionInfo/spec.js +0 -72
  500. package/product/components/ProductDiscountBadge/spec.js +0 -58
  501. package/product/components/ProductGrid/components/Item/components/ItemDetails/spec.js +0 -73
  502. package/product/components/ProductGrid/components/Item/components/ItemFavoritesButton/spec.js +0 -33
  503. package/product/components/ProductGrid/components/Item/components/ItemImage/spec.js +0 -16
  504. package/product/components/ProductGrid/components/Item/components/ItemName/spec.js +0 -21
  505. package/product/components/ProductGrid/components/Item/components/ItemPrice/spec.js +0 -37
  506. package/product/components/ProductGrid/spec.js +0 -52
  507. package/product/components/ProductImage/connector.js +0 -12
  508. package/product/components/ProductImage/spec.js +0 -87
  509. package/product/components/ProductSlider/spec.js +0 -37
  510. package/product/components/Rating/spec.js +0 -58
  511. package/product/helpers/index.d.ts +0 -13
  512. package/product/helpers/index.d.ts.map +0 -1
  513. package/product/helpers/redirects.d.ts +0 -2
  514. package/product/helpers/redirects.d.ts.map +0 -1
  515. package/product/selectors/helpers/filterProperties.d.ts +0 -8
  516. package/product/selectors/helpers/filterProperties.d.ts.map +0 -1
  517. package/product/selectors/helpers/index.d.ts +0 -3
  518. package/product/selectors/helpers/index.d.ts.map +0 -1
  519. package/product/selectors/helpers/wrapMemoizedSelector.d.ts +0 -2
  520. package/product/selectors/helpers/wrapMemoizedSelector.d.ts.map +0 -1
  521. package/product/selectors/product.d.ts +0 -112
  522. package/product/selectors/product.d.ts.map +0 -1
  523. package/reviews/components/Reviews/components/Header/components/WriteReviewLink/spec.js +0 -52
  524. package/reviews/components/Reviews/components/Header/spec.js +0 -78
  525. package/reviews/components/Reviews/components/List/spec.js +0 -108
  526. package/reviews/components/Reviews/components/RatingCount/spec.js +0 -38
  527. package/reviews/components/Reviews/spec.js +0 -101
  528. package/tsconfig.build.json +0 -26
  529. package/tsconfig.json +0 -19
@@ -1,60 +1,61 @@
1
- import type { WidgetContextType } from '../components/Widgets/WidgetContext';
2
-
1
+ import { type WidgetContextType } from '@shopgate/engage/page/components/Widgets';
3
2
  /**
4
3
  * The useWidget hook provides access to the context that is wrapped around a widget.
5
4
  * @returns The widget context.
6
5
  */
7
- export declare function useWidget<C = Record<string, any>>(): WidgetContextType<C>
8
-
9
-
10
- export type UseWidgetProductsOptions = {
11
- /**
12
- * The search value to use for the product search
13
- */
14
- value: string;
15
- /**
16
- * The type of product search to perform.
17
- */
18
- type: 'searchTerm' | 'productIds' | 'brand' | 'category' | 'highlights';
19
- /**
20
- * The number of products to return per page.
21
- * @default 32
22
- */
23
- limit?: number;
24
- /**
25
- * Sort order for the products
26
- * @default 'relevance'
27
- */
28
- sort?: 'relevance' | 'priceAsc' | 'priceDesc' | 'nameAsc' | 'nameDesc';
29
- };
30
-
31
- export type UseWidgetProductsResult = {
32
- /**
33
- * Function to fetch the next page of products.
34
- */
35
- fetchNext: () => void;
36
- /**
37
- * Whether there are more products to fetch.
38
- */
39
- hasNext: boolean;
40
- /**
41
- * Whether the products are currently being fetched.
42
- */
43
- isFetching: boolean;
44
- /**
45
- * Number of products available in the current result set.
46
- */
47
- totalResultCount: number;
48
- /**
49
- * Array of product results.
50
- */
51
- results: Object[];
6
+ export declare const useWidget: <C = Record<string, unknown>>() => WidgetContextType<C>;
7
+ /**
8
+ * Options for the {@link useWidgetProducts} hook.
9
+ */
10
+ export interface UseWidgetProductsOptions {
11
+ /**
12
+ * The search value to use for the product search.
13
+ */
14
+ value: string;
15
+ /**
16
+ * The type of product search to perform.
17
+ */
18
+ type: 'searchTerm' | 'productIds' | 'brand' | 'category' | 'highlights';
19
+ /**
20
+ * The number of products to return per page.
21
+ * @default 32
22
+ */
23
+ limit?: number;
24
+ /**
25
+ * Sort order for the products.
26
+ * @default 'relevance'
27
+ */
28
+ sort?: 'relevance' | 'priceAsc' | 'priceDesc' | 'nameAsc' | 'nameDesc';
29
+ }
30
+ /**
31
+ * Result of the {@link useWidgetProducts} hook.
32
+ */
33
+ export interface UseWidgetProductsResult {
34
+ /**
35
+ * Function to fetch the next page of products.
36
+ */
37
+ fetchNext: () => void;
38
+ /**
39
+ * Whether there are more products to fetch.
40
+ */
41
+ hasNext: boolean;
42
+ /**
43
+ * Whether the products are currently being fetched.
44
+ */
45
+ isFetching: boolean;
46
+ /**
47
+ * Number of products available in the current result set.
48
+ */
49
+ totalResultCount: number;
50
+ /**
51
+ * Array of product results.
52
+ */
53
+ results: unknown[];
52
54
  }
53
-
54
55
  /**
55
- * The useWidgetProducts hook provides an easy way to retrieve products based on a search term or
56
- * other criteria.
56
+ * Retrieves the products for the current widget.
57
+ * @param options Hook options.
58
+ * @returns The products and a function to fetch more products.
57
59
  */
58
- export declare function useWidgetProducts(
59
- options: UseWidgetProductsOptions
60
- ): UseWidgetProductsResult;
60
+ export declare const useWidgetProducts: (options?: UseWidgetProductsOptions) => UseWidgetProductsResult;
61
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../page/hooks/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAiB,KAAK,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAMjG;;;GAGG;AACH,eAAO,MAAM,SAAS,GAAI,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,OAAK,iBAAiB,CAAC,CAAC,CAC1B,CAAC;AA2CpD;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,IAAI,EAAE,YAAY,GAAG,YAAY,GAAG,OAAO,GAAG,UAAU,GAAG,YAAY,CAAC;IACxE;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,IAAI,CAAC,EAAE,WAAW,GAAG,UAAU,GAAG,WAAW,GAAG,SAAS,GAAG,UAAU,CAAC;CACxE;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,UAAU,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,OAAO,EAAE,OAAO,EAAE,CAAC;CACpB;AAED;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAC5B,UAAS,wBAAyD,KACjE,uBAyIF,CAAC"}
@@ -6,21 +6,9 @@ import { transformDisplayOptions } from '@shopgate/engage/core/helpers';
6
6
  import { fetchProductsByQuery } from '@shopgate/engage/product';
7
7
  import { makeGetWidgetProducts } from "../selectors";
8
8
 
9
- /**
10
- * @typedef {import('../components/Widgets/WidgetContext').WidgetContextType WidgetContextType}
11
- */
12
-
13
- /**
14
- * @typedef {import('./index').UseWidgetProductsOptions} UseWidgetProductsOptions
15
- */
16
-
17
- /**
18
- * @typedef {import('./index').UseWidgetProductsResult} UseWidgetProductsResult
19
- */
20
-
21
9
  /**
22
10
  * The useWidget hook provides access to the context that is wrapped around a widget.
23
- * @returns {WidgetContextType} The widget context.
11
+ * @returns The widget context.
24
12
  */
25
13
  export const useWidget = () => useContext(WidgetContext);
26
14
  const REQUEST_TYPE_MAPPING = {
@@ -31,10 +19,27 @@ const REQUEST_TYPE_MAPPING = {
31
19
  category: 5
32
20
  };
33
21
 
22
+ /**
23
+ * Shape of the memoized widget products selector result. The underlying selector and its
24
+ * dependencies live in untyped JS, so the shape is described here at the consumption boundary.
25
+ */
26
+
27
+ /**
28
+ * Shape of the result returned by the (untyped) `fetchProductsByQuery` thunk.
29
+ */
30
+
31
+ /**
32
+ * Options for the {@link useWidgetProducts} hook.
33
+ */
34
+
35
+ /**
36
+ * Result of the {@link useWidgetProducts} hook.
37
+ */
38
+
34
39
  /**
35
40
  * Retrieves the products for the current widget.
36
- * @param {UseWidgetProductsOptions} options Hook options
37
- * @returns {UseWidgetProductsResult} The products and a function to fetch more products.
41
+ * @param options Hook options.
42
+ * @returns The products and a function to fetch more products.
38
43
  */
39
44
  export const useWidgetProducts = (options = {}) => {
40
45
  const {
@@ -0,0 +1,32 @@
1
+ export * from "@shopgate/pwa-common/selectors/page";
2
+ export function makeGetPrivacyPolicyLink(): string | null;
3
+ export function makeGetPage({ type, slug, }: {
4
+ type?: PageType | undefined;
5
+ slug?: string | null | undefined;
6
+ }): Function;
7
+ export function makeGetWidgetsFromPage({ type, slug, dropzone, }: {
8
+ type?: PageType | undefined;
9
+ dropzone?: "cmsWidgetList" | undefined;
10
+ slug?: string | null | undefined;
11
+ }): Function;
12
+ /**
13
+ * Determines whether the new CMS version 2 is enabled.
14
+ */
15
+ export const getIsCms2Enabled: ((state: any, ...params: any) => boolean) & import("reselect").OutputSelectorFields<(args_0: boolean, args_1: boolean) => boolean, {
16
+ clearCache: () => void;
17
+ }> & {
18
+ clearCache: () => void;
19
+ };
20
+ export function makeGetUnifiedCMSPageData({ slug }: {
21
+ slug: string;
22
+ }): Function;
23
+ export function makeGetWidgetProducts(type: "searchTerm" | "productIds" | "brand" | "category" | "highlights", options: Object, id: string): Function;
24
+ /**
25
+ * List of available page types.
26
+ */
27
+ export type PageType = "cms" | "category";
28
+ /**
29
+ * List of available dropzone types.
30
+ */
31
+ export type DropzoneType = "cmsWidgetList";
32
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../page/selectors/index.js"],"names":[],"mappings":";AAmCO,4CAFM,MAAM,GAAC,IAAI,CAuBvB;AAyBM,6CAJJ;IAA0B,IAAI;IACD,IAAI;CACjC,YAcF;AAYM,kEANJ;IAA0B,IAAI;IACA,QAAQ;IAET,IAAI;CACjC,YAqBF;AAED;;GAEG;AACH;;;;EAIE;AASK,oDAHJ;IAAuB,IAAI,EAAnB,MAAM;CACd,YAwCF;AA2FM,4CANI,YAAY,GAAG,YAAY,GAAG,OAAO,GAAG,UAAU,GAAE,YAAY,WAEhE,MAAM,MACN,MAAM,YAkBhB;;;;uBA5NY,KAAK,GAAG,UAAU;;;;2BAKlB,eAAe"}
@@ -1,5 +1,5 @@
1
1
  import React, { useCallback } from 'react';
2
- import { Button } from '@shopgate/engage/components';
2
+ import { Button } from '@shopgate/engage/components/v2';
3
3
  import { useWidget } from '@shopgate/engage/page/hooks';
4
4
  import { makeStyles } from '@shopgate/engage/styles';
5
5
  import { useNavigation } from '@shopgate/engage/core';
@@ -46,9 +46,8 @@ const ButtonWidget = () => {
46
46
  return /*#__PURE__*/_jsx("div", {
47
47
  className: classes.root,
48
48
  children: /*#__PURE__*/_jsx(Button, {
49
- type: "secondary",
49
+ color: "primary",
50
50
  onClick: handleClick,
51
- wrapContent: false,
52
51
  children: /*#__PURE__*/_jsx("span", {
53
52
  className: classes.text,
54
53
  children: text
@@ -1,8 +1,9 @@
1
1
  import React, { useCallback, useEffect, useMemo, useState } from 'react';
2
- import { I18n, ButtonLink } from '@shopgate/engage/components';
2
+ import { I18n } from '@shopgate/engage/components';
3
3
  import { bin2hex } from '@shopgate/engage/core/helpers';
4
4
  import { CATEGORY_PATH } from '@shopgate/engage/category';
5
5
  import { makeStyles } from '@shopgate/engage/styles';
6
+ import { Button } from '@shopgate/engage/components/v2';
6
7
  import { useRoute, usePrevious, useLocalStorage } from '@shopgate/engage/core/hooks';
7
8
  import { router } from '@virtuous/conductor';
8
9
  import CategoryPicker from "./components/Picker";
@@ -16,10 +17,8 @@ const useStyles = makeStyles()(theme => ({
16
17
  paddingBottom: theme.spacing(2)
17
18
  },
18
19
  buttonContainer: {
19
- padding: theme.spacing(0, 2)
20
- },
21
- button: {
22
- width: '100%'
20
+ padding: theme.spacing(0, 2),
21
+ margin: theme.spacing(1, 0)
23
22
  }
24
23
  }));
25
24
 
@@ -142,11 +141,12 @@ const NestedCategoryFilter = () => {
142
141
  className: "widget__nested-category-filter__headline"
143
142
  }) : null, categoryPickers, /*#__PURE__*/_jsx("div", {
144
143
  className: cx(classes.buttonContainer, 'widget__nested-category-filter__button-container'),
145
- children: /*#__PURE__*/_jsx(ButtonLink, {
146
- className: cx(classes.button, 'widget__nested-category-filter__CTA-button'),
144
+ children: /*#__PURE__*/_jsx(Button, {
147
145
  href: `${CATEGORY_PATH}/${bin2hex(state.buttonCategoryId)}`,
146
+ color: "primary",
147
+ fullWidth: true,
148
+ className: "widget__nested-category-filter__CTA-button",
148
149
  disabled: !state.buttonCategoryId,
149
- flat: false,
150
150
  children: /*#__PURE__*/_jsx(I18n.Text, {
151
151
  string: "common.show_products",
152
152
  className: "widget__nested-category-filter__CTA-button__text"
@@ -1,23 +1,27 @@
1
1
  import "core-js/modules/es.regexp.flags.js";
2
2
  import React, { useCallback } from 'react';
3
- import { ActionButton, I18n } from '@shopgate/engage/components';
3
+ import { I18n } from '@shopgate/engage/components';
4
+ import { Button } from '@shopgate/engage/components/v2';
4
5
  import { ProductGrid } from '@shopgate/engage/product/components';
5
6
  import { useWidgetProducts } from '@shopgate/engage/page/hooks';
6
7
  import { makeStyles } from '@shopgate/engage/styles';
7
8
  import { useProductListWidget } from "./hooks";
8
9
  import WidgetHeadline from "../../components/WidgetHeadline";
9
10
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
- const useStyles = makeStyles()({
11
+ const useStyles = makeStyles()(theme => ({
11
12
  root: {
12
- // Prevent that the ActionButton margin messes with the layout of the sibling widgets
13
13
  overflow: 'hidden'
14
14
  },
15
+ loadMore: {
16
+ textAlign: 'center',
17
+ margin: theme.spacing(1, 0)
18
+ },
15
19
  grid: {
16
20
  '&&': {
17
21
  marginTop: 0
18
22
  }
19
23
  }
20
- });
24
+ }));
21
25
 
22
26
  /**
23
27
  * The ProductListWidget is used to display product lists.
@@ -66,16 +70,16 @@ const ProductListWidget = () => {
66
70
  scope: "widgets",
67
71
  infiniteLoad: false,
68
72
  className: classes.grid
69
- }), hasNext && showLoadMore && /*#__PURE__*/_jsx(ActionButton, {
70
- loading: isFetching,
71
- onClick: handleFetchNext
72
- // Disable click delay in preview mode to enable stopping of propagation.
73
- ,
74
- ...(isPreview && {
75
- disableClickDelay: true
76
- }),
77
- children: /*#__PURE__*/_jsx(I18n.Text, {
78
- string: "common.load_more"
73
+ }), hasNext && showLoadMore && /*#__PURE__*/_jsx("div", {
74
+ className: classes.loadMore,
75
+ children: /*#__PURE__*/_jsx(Button, {
76
+ variant: "text",
77
+ color: "secondary",
78
+ loading: isFetching,
79
+ onClick: handleFetchNext,
80
+ children: /*#__PURE__*/_jsx(I18n.Text, {
81
+ string: "common.load_more"
82
+ })
79
83
  })
80
84
  })]
81
85
  });
@@ -1,7 +1,6 @@
1
1
  import React, { useMemo } from 'react';
2
2
  import { ProductSlider } from '@shopgate/engage/product/components';
3
3
  import { useWidgetProducts } from '@shopgate/engage/page/hooks';
4
- import { useTheme } from '@shopgate/engage/styles';
5
4
  import { useProductSliderWidget } from "./hooks";
6
5
  import WidgetHeadline from "../../components/WidgetHeadline";
7
6
 
@@ -30,7 +29,6 @@ const ProductSliderWidget = () => {
30
29
  limit: productCount,
31
30
  sort
32
31
  });
33
- const theme = useTheme();
34
32
  const productIds = useMemo(() => results?.map(result => result.id), [results]);
35
33
  if (!productIds || !productIds.length) {
36
34
  return null;
@@ -41,24 +39,12 @@ const ProductSliderWidget = () => {
41
39
  }) : null, /*#__PURE__*/_jsx(ProductSlider, {
42
40
  productIds: productIds,
43
41
  scope: "widgets",
44
- productItemProps: productItemProps,
45
- slidesPerView: 2.3
42
+ productItemProps: productItemProps
46
43
  // Improves interaction with the slider in the CMS preview iframe
47
44
  ,
48
45
  ...(isPreview ? {
49
46
  touchStartPreventDefault: true
50
47
  } : {}),
51
- breakpoints: {
52
- [theme.breakpoints.values.sm]: {
53
- slidesPerView: 3.3
54
- },
55
- [theme.breakpoints.values.md]: {
56
- slidesPerView: 4.3
57
- },
58
- [theme.breakpoints.values.lg]: {
59
- slidesPerView: 5.3
60
- }
61
- },
62
48
  ...swiperProps
63
49
  })]
64
50
  });
@@ -0,0 +1,6 @@
1
+ /**
2
+ * The VideoWidget is used to display a video.
3
+ */
4
+ declare const Video: () => import("react").JSX.Element;
5
+ export default Video;
6
+ //# sourceMappingURL=Video.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Video.d.ts","sourceRoot":"","sources":["../../../../page/widgets/Video/Video.tsx"],"names":[],"mappings":"AAGA;;GAEG;AACH,QAAA,MAAM,KAAK,mCAgBV,CAAC;AAEF,eAAe,KAAK,CAAC"}
@@ -1,10 +1,8 @@
1
- import React from 'react';
2
1
  import { useVideoWidget } from "./hooks";
3
2
  import WidgetVideo from "../../components/WidgetVideo";
4
3
 
5
4
  /**
6
5
  * The VideoWidget is used to display a video.
7
- * @returns {JSX.Element}
8
6
  */
9
7
  import { jsx as _jsx } from "react/jsx-runtime";
10
8
  const Video = () => {
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Configuration of the Video widget.
3
+ */
4
+ export interface VideoWidgetConfig {
5
+ /**
6
+ * The video URL.
7
+ */
8
+ url: string;
9
+ /**
10
+ * Whether the video should be muted.
11
+ */
12
+ muted?: boolean;
13
+ /**
14
+ * Whether the video should loop.
15
+ */
16
+ loop?: boolean;
17
+ /**
18
+ * Whether the video should display controls.
19
+ */
20
+ controls?: boolean;
21
+ /**
22
+ * Whether the video should autoplay.
23
+ */
24
+ autoplay?: boolean;
25
+ /**
26
+ * The border radius option.
27
+ */
28
+ borderRadius: 'default' | 'none' | 'rounded' | 'custom';
29
+ /**
30
+ * The custom border radius value.
31
+ */
32
+ borderRadiusCustom?: number;
33
+ /**
34
+ * The link URL.
35
+ */
36
+ link?: string;
37
+ }
38
+ /**
39
+ * Resolved data returned by {@link useVideoWidget}. Reuses the field docs from
40
+ * {@link VideoWidgetConfig} for the pass-through fields via `Pick`.
41
+ */
42
+ export interface UseVideoWidgetResult extends Pick<VideoWidgetConfig, 'url' | 'muted' | 'loop' | 'controls' | 'autoplay' | 'link'> {
43
+ /**
44
+ * The resolved border radius as a CSS length.
45
+ */
46
+ borderRadius: string;
47
+ }
48
+ /**
49
+ * Hook to access the Video widget configuration and data.
50
+ * @returns The resolved Video widget data.
51
+ */
52
+ export declare const useVideoWidget: () => UseVideoWidgetResult;
53
+ //# sourceMappingURL=hooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../../page/widgets/Video/hooks.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,YAAY,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC;IACxD;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAqB,SAAQ,IAAI,CAChD,iBAAiB,EACjB,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,GAAG,MAAM,CAC5D;IACC;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,QAAO,oBAoBjC,CAAC"}
@@ -2,27 +2,19 @@ import { useWidget } from '@shopgate/engage/page/hooks';
2
2
  import { resolveBorderRadiusFromWidgetConfig } from "../../helpers";
3
3
 
4
4
  /**
5
- * @typedef {Object} VideoWidgetConfig
6
- * @property {string} url The video URL.
7
- * @property {boolean} [muted] Whether the video should be muted.
8
- * @property {boolean} [loop] Whether the video should loop.
9
- * @property {boolean} [controls] Whether the video should display controls.
10
- * @property {boolean} [autoplay] Whether the video should autoplay.
11
- * @property {number} [borderRadius] The border radius preset.
12
- * @property {string} [link] The link URL.
5
+ * Configuration of the Video widget.
13
6
  */
14
7
 
15
8
  /**
16
- * @typedef {ReturnType< typeof import('@shopgate/engage/page/hooks')
17
- * .useWidget<VideoWidgetConfig> >} UseWidgetReturnType
9
+ * Resolved data returned by {@link useVideoWidget}. Reuses the field docs from
10
+ * {@link VideoWidgetConfig} for the pass-through fields via `Pick`.
18
11
  */
19
12
 
20
- // eslint-disable-next-line valid-jsdoc
21
13
  /**
22
14
  * Hook to access the Video widget configuration and data.
15
+ * @returns The resolved Video widget data.
23
16
  */
24
17
  export const useVideoWidget = () => {
25
- /** @type {UseWidgetReturnType} */
26
18
  const {
27
19
  config
28
20
  } = useWidget();
@@ -0,0 +1,2 @@
1
+ export { default } from './Video';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../page/widgets/Video/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC"}
@@ -16,7 +16,6 @@ const useStyles = makeStyles()(theme => ({
16
16
  lineHeight: 1.7,
17
17
  overflow: 'hidden',
18
18
  wordBreak: ['break-all', 'break-word'],
19
- color: theme.palette.text.primary,
20
19
  hyphens: 'auto',
21
20
  ' ul': {
22
21
  listStyle: 'disc'
@@ -69,7 +68,6 @@ function Description({
69
68
  variant: "h5",
70
69
  component: "div",
71
70
  className: cx(classes.title, 'theme__description_heading'),
72
- color: "textPrimary",
73
71
  children: /*#__PURE__*/_jsx(I18n.Text, {
74
72
  string: "product.description_heading"
75
73
  })
@@ -1,20 +1,16 @@
1
1
  import React from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import { makeStyles } from '@shopgate/engage/styles';
4
- import { themeConfig } from '@shopgate/pwa-common/helpers/config';
5
4
  import { Grid, I18n, Ripple, FilterIcon, Typography } from '@shopgate/engage/components';
6
5
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
- const {
8
- variables
9
- } = themeConfig;
10
6
  const useStyles = makeStyles()(theme => ({
11
7
  button: {
12
8
  color: 'inherit',
13
9
  fontSize: theme.components.icon.medium,
14
10
  outline: 0,
15
11
  padding: 0,
16
- minWidth: variables.navigator.height,
17
- height: variables.filterbar.height,
12
+ minWidth: theme.components.navigator.height,
13
+ height: theme.components.filterBar.height,
18
14
  position: 'relative',
19
15
  zIndex: 1,
20
16
  overflow: 'hidden'
@@ -2,12 +2,8 @@ import React from 'react';
2
2
  import { SelectBox, ArrowDropIcon, SurroundPortals } from '@shopgate/engage/components';
3
3
  import { useSort, PORTAL_FILTER_SORT_OPTIONS } from '@shopgate/engage/filter';
4
4
  import { makeStyles, responsiveMediaQuery } from '@shopgate/engage/styles';
5
- import { themeConfig } from '@shopgate/pwa-common/helpers/config';
6
5
  import Item from "./components/Item";
7
6
  import { jsx as _jsx } from "react/jsx-runtime";
8
- const {
9
- variables
10
- } = themeConfig;
11
7
  const useStyles = makeStyles()(theme => ({
12
8
  button: {
13
9
  color: 'inherit',
@@ -17,7 +13,7 @@ const useStyles = makeStyles()(theme => ({
17
13
  alignItems: 'center',
18
14
  textOverflow: 'ellipsis',
19
15
  justifyContent: 'center',
20
- height: variables.filterbar.height,
16
+ height: theme.components.filterBar.height,
21
17
  whiteSpace: 'nowrap'
22
18
  },
23
19
  selection: {
@@ -1,6 +1,7 @@
1
1
  import React from 'react';
2
2
  import { SurroundPortals } from '@shopgate/engage/components';
3
3
  import { MEDIA_TYPE_IMAGE, MEDIA_TYPE_VIDEO } from '@shopgate/engage/product';
4
+ import { useProductImageSettings } from '@shopgate/engage/settings/hooks';
4
5
  import { PORTAL_PRODUCT_MEDIA } from "../../../components/constants";
5
6
  import MediaImage from "./MediaImage";
6
7
  import FeaturedVideo from "./FeaturedVideo";
@@ -21,11 +22,16 @@ const FeaturedMedia = ({
21
22
  altText
22
23
  }) => {
23
24
  const TypeRenderer = types[type] || MediaImage;
25
+ const {
26
+ list
27
+ } = useProductImageSettings();
24
28
  return /*#__PURE__*/_jsx(SurroundPortals, {
25
29
  portalName: PORTAL_PRODUCT_MEDIA,
26
30
  children: /*#__PURE__*/_jsx(TypeRenderer, {
27
31
  url: url,
28
- altText: altText
32
+ altText: altText,
33
+ resolutions: list.resolutions,
34
+ ratio: list.ratio
29
35
  })
30
36
  });
31
37
  };