@shopgate/engage 7.31.6 → 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 (742) hide show
  1. package/README.md +0 -1
  2. package/account/components/Account/Account.d.ts.map +1 -1
  3. package/account/components/Account/Account.js +4 -3
  4. package/account/components/Profile/Profile.provider.js +1 -1
  5. package/account/components/Profile/ProfileAddressBook.d.ts.map +1 -1
  6. package/account/components/Profile/ProfileAddressBook.js +19 -30
  7. package/account/components/Profile/ProfileAddressCard.d.ts.map +1 -1
  8. package/account/components/Profile/ProfileAddressCard.js +43 -49
  9. package/account/components/Profile/ProfileForm.d.ts.map +1 -1
  10. package/account/components/Profile/ProfileForm.js +15 -42
  11. package/account/components/Profile/ProfileHeader.d.ts.map +1 -1
  12. package/account/components/Profile/ProfileHeader.js +8 -9
  13. package/account/components/ProfileContact/ProfileContact.js +15 -22
  14. package/admin-preview/components/FrontendSettingsPreviewBridge/FrontendSettingsPreviewBridge.d.ts +8 -0
  15. package/admin-preview/components/FrontendSettingsPreviewBridge/FrontendSettingsPreviewBridge.d.ts.map +1 -0
  16. package/admin-preview/components/FrontendSettingsPreviewBridge/FrontendSettingsPreviewBridge.js +98 -0
  17. package/admin-preview/components/FrontendSettingsPreviewBridge/helpers.d.ts +26 -0
  18. package/admin-preview/components/FrontendSettingsPreviewBridge/helpers.d.ts.map +1 -0
  19. package/admin-preview/components/FrontendSettingsPreviewBridge/helpers.js +61 -0
  20. package/admin-preview/components/FrontendSettingsPreviewBridge/index.d.ts +2 -0
  21. package/admin-preview/components/FrontendSettingsPreviewBridge/index.d.ts.map +1 -0
  22. package/admin-preview/components/FrontendSettingsPreviewBridge/index.js +1 -0
  23. package/admin-preview/components/FrontendSettingsPreviewBridge/types.d.ts +27 -0
  24. package/admin-preview/components/FrontendSettingsPreviewBridge/types.d.ts.map +1 -0
  25. package/admin-preview/components/FrontendSettingsPreviewBridge/types.js +1 -0
  26. package/admin-preview/components/index.d.ts +2 -0
  27. package/admin-preview/components/index.d.ts.map +1 -0
  28. package/admin-preview/components/index.js +1 -0
  29. package/admin-preview/constants/index.d.ts +6 -0
  30. package/admin-preview/constants/index.d.ts.map +1 -0
  31. package/admin-preview/constants/index.js +6 -0
  32. package/admin-preview/helpers/_internal/detection.d.ts +53 -0
  33. package/admin-preview/helpers/_internal/detection.d.ts.map +1 -0
  34. package/admin-preview/helpers/_internal/detection.js +93 -0
  35. package/admin-preview/helpers/index.d.ts +23 -0
  36. package/admin-preview/helpers/index.d.ts.map +1 -0
  37. package/admin-preview/helpers/index.js +27 -0
  38. package/admin-preview/hooks/index.d.ts +36 -0
  39. package/admin-preview/hooks/index.d.ts.map +1 -0
  40. package/admin-preview/hooks/index.js +74 -0
  41. package/admin-preview/initialization/_internal/initialFrontendSettings.d.ts +32 -0
  42. package/admin-preview/initialization/_internal/initialFrontendSettings.d.ts.map +1 -0
  43. package/admin-preview/initialization/_internal/initialFrontendSettings.js +43 -0
  44. package/admin-preview/initialization/awaitInitialFrontendSettings.d.ts +22 -0
  45. package/admin-preview/initialization/awaitInitialFrontendSettings.d.ts.map +1 -0
  46. package/admin-preview/initialization/awaitInitialFrontendSettings.js +84 -0
  47. package/back-in-stock/components/BackInStockButton/index.js +19 -22
  48. package/back-in-stock/components/Subscriptions/components/Subscription/index.js +22 -26
  49. package/cart/components/CartHeaderWide/CartHeaderWide.js +4 -3
  50. package/cart/components/CartItem/CartItemCoupon.js +2 -6
  51. package/cart/components/CartItem/CartItemCouponDelete.js +3 -3
  52. package/cart/components/CartItem/CartItemCouponLayout.js +1 -1
  53. package/cart/components/CartItem/CartItemCouponPrice.js +16 -19
  54. package/cart/components/CartItem/CartItemCouponTitle.js +4 -4
  55. package/cart/components/CartItem/CartItemProduct.js +2 -6
  56. package/cart/components/CartItem/CartItemProductLayout.js +6 -9
  57. package/cart/components/CartItem/CartItemProductLayoutWide.js +21 -16
  58. package/cart/components/CartItem/CartItemProductLayoutWideFulfillmentLabel.js +5 -3
  59. package/cart/components/CartItem/CartItemProductLayoutWideOrderDetails.js +18 -12
  60. package/cart/components/CartItem/CartItemProductLayoutWideRemoveItem.js +7 -14
  61. package/cart/components/CartItem/CartItemProductOrderDetails.js +2 -2
  62. package/cart/components/CartItem/CartItemProductPriceCaption.js +5 -4
  63. package/cart/components/CartItem/CartItemProductPriceList.js +18 -12
  64. package/cart/components/CartItem/CartItemProductPriceListPromotion.js +7 -7
  65. package/cart/components/CartItem/CartItemProductProvider.connector.js +0 -2
  66. package/cart/components/CartItem/CartItemProductProvider.js +3 -30
  67. package/cart/components/CartItem/CartItemProductProvider.types.js +0 -1
  68. package/cart/components/CartItem/CartItemProductTitle.js +2 -3
  69. package/cart/components/CartItem/CartItemQuantityPicker.js +3 -7
  70. package/cart/components/CartItem/CartItemSubstitution.js +1 -2
  71. package/cart/components/CartItems/CartItemCard.js +3 -4
  72. package/cart/components/CartItems/CartItemCardReservationAccordion.js +9 -10
  73. package/cart/components/CartItems/CartItemCardReservationLabel.js +11 -11
  74. package/cart/components/CartItems/CartItemCardReservationLabelChangeStore.js +6 -24
  75. package/cart/components/CartItems/CartItemGroupReservation.js +4 -3
  76. package/cart/components/CartItems/CartItemGroupReservationLabel.js +12 -10
  77. package/cart/components/CartItems/CartItemGroupShipping.js +7 -5
  78. package/cart/components/CartItems/CartItems.js +8 -12
  79. package/cart/components/CartItems/CartItemsHeaderWide.js +43 -18
  80. package/cart/components/CartItems/CartItemsSubstitution.js +3 -2
  81. package/cart/components/CartSummaryWide/CartSummaryWide.js +9 -16
  82. package/cart/components/CartSummaryWide/CartSummaryWideCheckoutButton.js +9 -27
  83. package/cart/components/PaymentBar/PaymentBarCheckoutButton.js +8 -34
  84. package/cart/components/PaymentBar/PaymentBarContent.js +4 -10
  85. package/cart/components/PaymentBar/PaymentBarPromotionCouponMessages.js +6 -2
  86. package/cart/components/PaymentBar/PaymentBarPromotionCoupons.js +5 -5
  87. package/cart/components/PaymentBar/PaymentBarPromotionalText.js +9 -10
  88. package/cart/components/PaymentBar/testUtils/mockFactories.js +57 -0
  89. package/cart/components/Substitution/connector.js +1 -1
  90. package/cart/components/SupplementalContent/SupplementalContent.connector.js +2 -1
  91. package/cart/components/SupplementalContent/SupplementalContent.js +6 -7
  92. package/category/components/CategoryImage/connector.js +1 -1
  93. package/category/components/CategoryImage/index.js +24 -17
  94. package/category/components/CategoryList/index.js +4 -8
  95. package/checkout/components/AddressBook/AddressList.js +19 -29
  96. package/checkout/components/AddressBookContact/AddressBookContact.js +6 -6
  97. package/checkout/components/Checkout/CheckoutActions.js +4 -3
  98. package/checkout/components/Checkout/CheckoutAddress.js +33 -15
  99. package/checkout/components/Checkout/CheckoutHeader.js +9 -11
  100. package/checkout/components/Checkout/CheckoutPickupContactForm.js +2 -2
  101. package/checkout/components/Checkout/CheckoutSection.js +26 -15
  102. package/checkout/components/Checkout/CheckoutSectionInfo.js +14 -17
  103. package/checkout/components/Checkout/CheckoutSectionMessages.js +5 -4
  104. package/checkout/components/CheckoutConfirmation/CheckoutConfirmation.js +20 -20
  105. package/checkout/components/CheckoutConfirmation/CheckoutConfirmationSection.js +44 -62
  106. package/checkout/components/GuestCheckout/GuestCheckoutPickup.js +7 -4
  107. package/checkout/components/PaymentMethodButton/PaymentMethodButton.js +3 -3
  108. package/checkout/components/ResponsiveBackButton/ResponsiveBackButton.js +7 -17
  109. package/checkout/components/ShippingMethods/ShippingMethod.js +6 -5
  110. package/checkout/components/ShippingMethods/ShippingMethods.js +11 -8
  111. package/checkout/components/SupplementalContent/SupplementalContent.connector.js +2 -1
  112. package/checkout/components/SupplementalContent/SupplementalContent.js +6 -7
  113. package/checkout/paymentMethods/index.js +5 -4
  114. package/checkout/paymentMethods/paypal/PaypalPayButton.js +7 -6
  115. package/checkout/paymentMethods/stripe/StripeCreditCard.js +6 -9
  116. package/components/Badge/Badge.d.ts +30 -0
  117. package/components/Badge/Badge.d.ts.map +1 -0
  118. package/components/Badge/Badge.js +48 -0
  119. package/components/Badge/index.d.ts +3 -0
  120. package/components/Badge/index.d.ts.map +1 -0
  121. package/components/Badge/index.js +1 -0
  122. package/components/Card/Card.d.ts +27 -0
  123. package/components/Card/Card.d.ts.map +1 -0
  124. package/components/Card/Card.js +57 -0
  125. package/components/Card/index.d.ts +4 -0
  126. package/components/Card/index.d.ts.map +1 -0
  127. package/components/Card/index.js +2 -0
  128. package/components/Card/useCardAppearance.d.ts +11 -0
  129. package/components/Card/useCardAppearance.d.ts.map +1 -0
  130. package/components/Card/useCardAppearance.js +22 -0
  131. package/components/ChipLayout/index.js +6 -8
  132. package/components/Form/Builder/ElementPhoneNumber.d.ts.map +1 -1
  133. package/components/Form/Builder/ElementPhoneNumber.js +2 -6
  134. package/components/Form/Builder/stylePresets.d.ts.map +1 -1
  135. package/components/Form/Builder/stylePresets.js +12 -17
  136. package/components/Logo/connector.js +3 -1
  137. package/components/Logo/index.d.ts.map +1 -1
  138. package/components/Logo/index.js +3 -6
  139. package/components/Menu/components/Item/index.d.ts.map +1 -1
  140. package/components/Menu/components/Item/index.js +5 -17
  141. package/components/Menu/index.d.ts.map +1 -1
  142. package/components/Menu/index.js +2 -3
  143. package/components/MessageBar/MessageBar.d.ts.map +1 -1
  144. package/components/MessageBar/MessageBar.js +35 -42
  145. package/components/NavigationHandler/connector.js +1 -1
  146. package/components/Paper/Paper.d.ts +48 -0
  147. package/components/Paper/Paper.d.ts.map +1 -0
  148. package/components/Paper/Paper.js +64 -0
  149. package/components/Paper/index.d.ts +3 -0
  150. package/components/Paper/index.d.ts.map +1 -0
  151. package/components/Paper/index.js +1 -0
  152. package/components/Picker/components/Button/index.js +3 -3
  153. package/components/Picker/components/List/index.js +3 -3
  154. package/components/Picker/components/Modal/index.d.ts.map +1 -1
  155. package/components/Picker/components/Modal/index.js +2 -3
  156. package/components/PickerUtilize/components/Button/index.d.ts.map +1 -1
  157. package/components/PickerUtilize/components/Button/index.js +6 -10
  158. package/components/PickerUtilize/index.d.ts +2 -1
  159. package/components/PickerUtilize/index.d.ts.map +1 -1
  160. package/components/Radio/Radio.js +6 -5
  161. package/components/RadioCard/RadioCard.d.ts.map +1 -1
  162. package/components/RadioCard/RadioCard.js +2 -1
  163. package/components/ResponsiveContainer/breakpoints.js +2 -2
  164. package/components/ScrollHeader/index.js +3 -3
  165. package/components/SheetList/components/Item/index.js +18 -23
  166. package/components/SheetList/index.d.ts.map +1 -1
  167. package/components/SheetList/index.js +3 -7
  168. package/components/SideNavigation/SideNavigationCategories.js +2 -7
  169. package/components/SideNavigation/SideNavigationCategoriesItem.js +2 -2
  170. package/components/SideNavigation/SideNavigationContent.js +3 -3
  171. package/components/SideNavigation/SideNavigationItem.d.ts.map +1 -1
  172. package/components/SideNavigation/SideNavigationItem.js +3 -4
  173. package/components/SideNavigation/SideNavigationNestedItem.js +2 -2
  174. package/components/Switch/index.d.ts.map +1 -1
  175. package/components/Switch/index.js +6 -7
  176. package/components/Tabs/components/Tab.d.ts.map +1 -1
  177. package/components/Tabs/components/Tab.js +14 -16
  178. package/components/Tabs/components/TabIndicator.js +3 -3
  179. package/components/TextLink/TextLink.d.ts.map +1 -1
  180. package/components/TextLink/TextLink.js +8 -26
  181. package/components/Toggle/index.js +5 -5
  182. package/components/Typography/Typography.d.ts +87 -124
  183. package/components/Typography/Typography.d.ts.map +1 -0
  184. package/components/Typography/Typography.js +72 -57
  185. package/components/Typography/index.d.ts +2 -1
  186. package/components/Typography/index.d.ts.map +1 -0
  187. package/components/View/components/Above/index.d.ts.map +1 -1
  188. package/components/View/components/Above/index.js +3 -1
  189. package/components/View/components/Below/index.d.ts.map +1 -1
  190. package/components/View/components/Below/index.js +3 -1
  191. package/components/View/components/Content/index.d.ts +2 -1
  192. package/components/View/components/Content/index.d.ts.map +1 -1
  193. package/components/View/components/Content/index.js +6 -3
  194. package/components/View/index.d.ts.map +1 -1
  195. package/components/View/index.js +1 -5
  196. package/components/constants.d.ts +6 -0
  197. package/components/constants.d.ts.map +1 -0
  198. package/components/index.d.ts +5 -1
  199. package/components/index.d.ts.map +1 -1
  200. package/components/index.js +4 -2
  201. package/components/v2/Button/Button.d.ts +24 -13
  202. package/components/v2/Button/Button.d.ts.map +1 -1
  203. package/components/v2/Button/Button.js +139 -41
  204. package/components/v2/ButtonBase/ButtonBase.d.ts +50 -10
  205. package/components/v2/ButtonBase/ButtonBase.d.ts.map +1 -1
  206. package/components/v2/ButtonBase/ButtonBase.js +192 -17
  207. package/components/v2/ButtonBase/Ripple.d.ts +2 -1
  208. package/components/v2/ButtonBase/Ripple.d.ts.map +1 -1
  209. package/components/v2/ButtonBase/hooks.d.ts +0 -1
  210. package/components/v2/ButtonBase/hooks.d.ts.map +1 -1
  211. package/components/v2/ButtonBase/hooks.js +36 -12
  212. package/components/v2/ButtonGroup/ButtonGroup.d.ts +11 -5
  213. package/components/v2/ButtonGroup/ButtonGroup.d.ts.map +1 -1
  214. package/components/v2/ButtonGroup/ButtonGroup.js +49 -26
  215. package/components/v2/CircularProgress/CircularProgress.d.ts.map +1 -1
  216. package/components/v2/CircularProgress/CircularProgress.js +10 -5
  217. package/core/action-creators/merchantSettings.d.ts +1 -1
  218. package/core/action-creators/merchantSettings.d.ts.map +1 -1
  219. package/core/action-creators/merchantSettings.js +3 -11
  220. package/core/action-creators/shopSettings.d.ts +1 -2
  221. package/core/action-creators/shopSettings.d.ts.map +1 -1
  222. package/core/action-creators/shopSettings.js +3 -21
  223. package/core/constants/merchantSettings.d.ts +1 -11
  224. package/core/constants/merchantSettings.d.ts.map +1 -1
  225. package/core/constants/merchantSettings.js +3 -11
  226. package/core/constants/shopSettings.d.ts +1 -27
  227. package/core/constants/shopSettings.d.ts.map +1 -1
  228. package/core/constants/shopSettings.js +3 -27
  229. package/core/helpers/getFullImageSource.d.ts +5 -1
  230. package/core/helpers/getFullImageSource.d.ts.map +1 -1
  231. package/core/helpers/getFullImageSource.js +30 -14
  232. package/core/helpers/scrollContainer.js +2 -2
  233. package/core/hooks/html/useLoadImage.d.ts +3 -3
  234. package/core/hooks/html/useLoadImage.d.ts.map +1 -1
  235. package/core/hooks/html/useLoadImage.js +2 -2
  236. package/core/hooks/useLocalStorage.d.ts +8 -0
  237. package/core/hooks/useLocalStorage.d.ts.map +1 -1
  238. package/core/hooks/useLocalStorage.js +22 -15
  239. package/core/hooks/useNavigation.d.ts +10 -2
  240. package/core/hooks/useNavigation.d.ts.map +1 -1
  241. package/core/hooks/useNavigation.js +1 -2
  242. package/core/initialization/fetchSettings.d.ts +12 -0
  243. package/core/initialization/fetchSettings.d.ts.map +1 -0
  244. package/core/initialization/fetchSettings.js +134 -0
  245. package/core/initialization/index.d.ts +33 -2
  246. package/core/initialization/index.d.ts.map +1 -1
  247. package/core/initialization/index.js +44 -102
  248. package/core/router/conductor.d.ts +9 -0
  249. package/core/router/helpers.d.ts +28 -15
  250. package/core/router/helpers.d.ts.map +1 -1
  251. package/core/router/helpers.js +8 -8
  252. package/core/selectors/merchantSettings.d.ts +1 -20
  253. package/core/selectors/merchantSettings.d.ts.map +1 -1
  254. package/core/selectors/merchantSettings.js +3 -33
  255. package/core/selectors/shopSettings.d.ts +1 -53
  256. package/core/selectors/shopSettings.d.ts.map +1 -1
  257. package/core/selectors/shopSettings.js +3 -80
  258. package/development/components/ClientInformation/ClientInformation.js +5 -3
  259. package/development/components/DevelopmentSettings/DevelopmentSettings.js +6 -5
  260. package/development/components/SimulatedInsets/SimulatedInsetBottom.js +3 -3
  261. package/development/components/SimulatedInsets/SimulatedInsetTop.js +6 -6
  262. package/favorites/components/CommentDialog/CommentDialog.js +17 -15
  263. package/favorites/components/FavoriteButtonWide/FavoriteButtonWide.js +9 -20
  264. package/favorites/components/Item/Item.d.ts +1 -1
  265. package/favorites/components/Item/Item.d.ts.map +1 -1
  266. package/favorites/components/Item/Item.js +21 -22
  267. package/favorites/components/Item/ItemCharacteristics.d.ts.map +1 -1
  268. package/favorites/components/Item/ItemCharacteristics.js +6 -14
  269. package/favorites/components/Item/ItemNotes.js +23 -20
  270. package/favorites/components/Item/ItemQuantity.js +1 -1
  271. package/favorites/components/List/List.d.ts +1 -1
  272. package/favorites/components/List/List.d.ts.map +1 -1
  273. package/favorites/components/List/List.js +0 -5
  274. package/favorites/components/List/ListContent.js +4 -5
  275. package/favorites/components/ListChooser/ListChooserItem.js +1 -1
  276. package/favorites/components/Lists/Lists.js +19 -8
  277. package/favorites/components/Lists/ListsModal.d.ts.map +1 -1
  278. package/favorites/components/Lists/ListsModal.js +4 -11
  279. package/favorites/components/RemoveButton/RemoveButton.d.ts.map +1 -1
  280. package/favorites/components/RemoveButton/RemoveButton.js +1 -2
  281. package/filter/components/FilterItem/index.js +5 -8
  282. package/filter/components/FilterPageContent/components/ApplyButton/index.js +8 -10
  283. package/filter/components/FilterPageContent/components/ResetButton/index.js +8 -6
  284. package/filter/components/FilterPageContent/components/Selector/components/Toggle/index.js +3 -3
  285. package/filter/components/FilterPageContent/components/Selector/components/ValueButton/index.js +4 -5
  286. package/filter/components/PriceSlider/components/Label/index.js +9 -13
  287. package/filter/components/PriceSlider/index.js +9 -9
  288. package/filter/selectors/index.js +2 -2
  289. package/locations/components/Cart/CartContextMenuChangeFulfillmentContent.js +1 -1
  290. package/locations/components/ChangeLocationButton/ChangeLocationButton.js +10 -14
  291. package/locations/components/FulfillmentPath/FulfillmentPathItem.js +1 -7
  292. package/locations/components/FulfillmentSelector/FulfillmentSelector.connector.js +2 -2
  293. package/locations/components/FulfillmentSelector/FulfillmentSelectorAlternativeLocation.js +12 -10
  294. package/locations/components/FulfillmentSelector/FulfillmentSelectorHeader.js +1 -1
  295. package/locations/components/FulfillmentSelector/FulfillmentSelectorImpossibleError.js +3 -3
  296. package/locations/components/FulfillmentSelector/FulfillmentSelectorItem.js +4 -4
  297. package/locations/components/FulfillmentSelector/FulfillmentSelectorLocation.js +18 -15
  298. package/locations/components/FulfillmentSelector/FulfillmentSelectorLocationMethodNotAvailable.js +3 -3
  299. package/locations/components/FulfillmentSheet/FulfillmentSheetContent.js +4 -8
  300. package/locations/components/FulfillmentSlotSwitcher/FulfillmentSlotDialog.js +25 -28
  301. package/locations/components/FulfillmentSlotSwitcher/FulfillmentSlotProvider.connector.js +1 -1
  302. package/locations/components/FulfillmentSlotSwitcher/FulfillmentSlotSwitcher.connector.js +1 -1
  303. package/locations/components/FulfillmentSlotSwitcher/FulfillmentSlotSwitcher.js +5 -5
  304. package/locations/components/FulfillmentSlotSwitcher/FulfillmentSlotSwitcherBar.js +19 -28
  305. package/locations/components/FulfillmentSlotSwitcher/FulfillmentSlotSwitcherDefault.js +20 -23
  306. package/locations/components/GlobalLocationSelector/GlobalLocationSelector.js +1 -1
  307. package/locations/components/GlobalLocationSwitcher/GlobalLocationSwitcher.connector.js +1 -1
  308. package/locations/components/GlobalLocationSwitcher/GlobalLocationSwitcherBar.js +18 -28
  309. package/locations/components/GlobalLocationSwitcher/GlobalLocationSwitcherDefault.js +19 -20
  310. package/locations/components/ReservationResponses/ReservationError.js +9 -6
  311. package/locations/components/ReservationResponses/ReservationSuccess.js +14 -9
  312. package/locations/components/ReserveForm/ReserveForm.js +11 -11
  313. package/locations/components/ReserveForm/ReserveFormPhone.js +7 -9
  314. package/locations/components/StockInfo/StockInfo.js +4 -2
  315. package/locations/components/StockInfoLists/index.js +5 -7
  316. package/locations/components/StoreDetails/components/FindMoreStores.js +11 -12
  317. package/locations/components/StoreDetails/components/GetDirectionsButton.js +5 -9
  318. package/locations/components/StoreDetails/components/StoreDetails.js +27 -34
  319. package/locations/components/StoreDetails/components/StoreFinderMap.js +4 -4
  320. package/locations/components/StoreDetails/components/StoresNearby.js +5 -3
  321. package/locations/components/StoreDetails/components/StoresNearbyListItem.js +36 -30
  322. package/locations/components/StoreFinder/StoreFinder.js +1 -1
  323. package/locations/components/StoreFinder/StoreFinderLocationDetails.js +7 -6
  324. package/locations/components/StoreFinder/StoreFinderLocationHeader.js +17 -21
  325. package/locations/components/StoreFinder/StoreFinderLocations.js +2 -6
  326. package/locations/components/StoreFinder/StoreFinderSelectLocationButton.js +5 -11
  327. package/locations/components/StoreFinder/StoreFinderStoreInfoButton.js +5 -11
  328. package/locations/components/StoreList/StoreAddress.js +3 -3
  329. package/locations/components/StoreList/StoreAddressShort.js +10 -12
  330. package/locations/components/StoreList/StoreDetails.js +1 -2
  331. package/locations/components/StoreList/StoreDetailsLine.js +3 -3
  332. package/locations/components/StoreList/StoreDistance.js +6 -17
  333. package/locations/components/StoreList/StoreHeader.js +7 -7
  334. package/locations/components/StoreList/StoreHoursToday.js +3 -3
  335. package/locations/components/StoreList/StoreListLocations.js +20 -18
  336. package/locations/components/StoreList/StoreListProduct.js +4 -6
  337. package/locations/components/StoreList/StoreListProductInfo.js +9 -6
  338. package/locations/components/StoreList/StoreListProductName.js +4 -3
  339. package/locations/components/StoreList/StoreListSearch.js +11 -11
  340. package/locations/components/StoreList/StoreListSearchRadius.js +4 -5
  341. package/locations/components/StoreList/StoreOpeningHours.js +10 -12
  342. package/locations/components/StoreList/StorePhoneNumber.js +10 -12
  343. package/locations/components/StoreList/StoreSelectLocationButton.js +5 -11
  344. package/locations/helpers/showInventoryInLists.js +1 -1
  345. package/locations/providers/FulfillmentProvider.connector.js +1 -1
  346. package/locations/reducers/index.js +1 -1
  347. package/locations/selectors/index.js +2 -1
  348. package/locations/subscriptions.js +2 -2
  349. package/login/components/ForgotPassword/ForgotPassword.js +24 -36
  350. package/orders/components/OrderDetails/OrderDetailsAuthenticate.js +6 -8
  351. package/orders/components/OrderDetails/OrderDetailsContent.js +5 -4
  352. package/orders/components/OrderDetails/OrderDetailsOrderHeader.js +7 -8
  353. package/orders/components/OrderDetails/OrderDetailsOrderPickupLocation.js +2 -2
  354. package/orders/components/OrderHistory/OrderHistoryList.d.ts.map +1 -1
  355. package/orders/components/OrderHistory/OrderHistoryList.js +9 -14
  356. package/orders/components/OrderHistory/OrderHistoryTable.d.ts.map +1 -1
  357. package/orders/components/OrderHistory/OrderHistoryTable.js +5 -1
  358. package/package.json +11 -10
  359. package/page/components/NotFound.d.ts +7 -0
  360. package/page/components/NotFound.d.ts.map +1 -0
  361. package/page/components/NotFound.js +16 -15
  362. package/page/components/ResponsiveWidgetImage/ResponsiveWidgetImage.d.ts +52 -0
  363. package/page/components/ResponsiveWidgetImage/ResponsiveWidgetImage.d.ts.map +1 -0
  364. package/page/components/ResponsiveWidgetImage/ResponsiveWidgetImage.js +4 -4
  365. package/page/components/ResponsiveWidgetImage/index.d.ts +2 -0
  366. package/page/components/ResponsiveWidgetImage/index.d.ts.map +1 -0
  367. package/page/components/WidgetHeadline/WidgetHeadline.js +4 -3
  368. package/page/components/WidgetRichText/WidgetRichText.d.ts +25 -0
  369. package/page/components/WidgetRichText/WidgetRichText.d.ts.map +1 -0
  370. package/page/components/WidgetRichText/WidgetRichText.js +1 -1
  371. package/page/components/WidgetRichText/index.d.ts +2 -0
  372. package/page/components/WidgetRichText/index.d.ts.map +1 -0
  373. package/page/components/WidgetVideo/WidgetVideo.d.ts +43 -0
  374. package/page/components/WidgetVideo/WidgetVideo.d.ts.map +1 -0
  375. package/page/components/WidgetVideo/WidgetVideo.js +33 -39
  376. package/page/components/WidgetVideo/index.d.ts +2 -0
  377. package/page/components/WidgetVideo/index.d.ts.map +1 -0
  378. package/page/components/Widgets/Overlay.d.ts +17 -0
  379. package/page/components/Widgets/Overlay.d.ts.map +1 -0
  380. package/page/components/Widgets/Overlay.js +24 -38
  381. package/page/components/Widgets/Tooltip.d.ts +20 -0
  382. package/page/components/Widgets/Tooltip.d.ts.map +1 -0
  383. package/page/components/Widgets/Tooltip.js +13 -18
  384. package/page/components/Widgets/Widget.d.ts +32 -0
  385. package/page/components/Widgets/Widget.d.ts.map +1 -0
  386. package/page/components/Widgets/Widget.js +11 -22
  387. package/page/components/Widgets/WidgetContext.d.ts +32 -38
  388. package/page/components/Widgets/WidgetContext.d.ts.map +1 -0
  389. package/page/components/Widgets/WidgetContext.js +2 -8
  390. package/page/components/Widgets/WidgetProvider.d.ts +25 -0
  391. package/page/components/Widgets/WidgetProvider.d.ts.map +1 -0
  392. package/page/components/Widgets/WidgetProvider.js +5 -12
  393. package/page/components/Widgets/Widgets.d.ts +16 -0
  394. package/page/components/Widgets/Widgets.d.ts.map +1 -0
  395. package/page/components/Widgets/Widgets.js +5 -12
  396. package/page/components/Widgets/WidgetsPreviewContext.d.ts +21 -0
  397. package/page/components/Widgets/WidgetsPreviewContext.d.ts.map +1 -0
  398. package/page/components/Widgets/WidgetsPreviewContext.js +5 -7
  399. package/page/components/Widgets/WidgetsPreviewProvider.d.ts +18 -0
  400. package/page/components/Widgets/WidgetsPreviewProvider.d.ts.map +1 -0
  401. package/page/components/Widgets/WidgetsPreviewProvider.js +5 -6
  402. package/page/components/Widgets/constants.d.ts +5 -0
  403. package/page/components/Widgets/constants.d.ts.map +1 -0
  404. package/page/components/Widgets/constants.js +1 -4
  405. package/page/components/Widgets/events.d.ts +38 -0
  406. package/page/components/Widgets/events.d.ts.map +1 -0
  407. package/page/components/Widgets/events.js +8 -12
  408. package/page/components/Widgets/helpers.d.ts +50 -0
  409. package/page/components/Widgets/helpers.d.ts.map +1 -0
  410. package/page/components/Widgets/helpers.js +8 -13
  411. package/page/components/Widgets/hooks.d.ts +13 -0
  412. package/page/components/Widgets/hooks.d.ts.map +1 -0
  413. package/page/components/Widgets/hooks.js +15 -104
  414. package/page/components/Widgets/index.d.ts +3 -0
  415. package/page/components/Widgets/index.d.ts.map +1 -0
  416. package/page/components/Widgets/types.d.ts +111 -113
  417. package/page/components/Widgets/types.d.ts.map +1 -0
  418. package/page/components/Widgets/types.js +1 -0
  419. package/page/components/index.d.ts +5 -0
  420. package/page/components/index.d.ts.map +1 -0
  421. package/page/constants/actionTypes.d.ts +4 -0
  422. package/page/constants/actionTypes.d.ts.map +1 -0
  423. package/page/constants/index.d.ts +25 -0
  424. package/page/constants/index.d.ts.map +1 -0
  425. package/page/constants/index.js +7 -2
  426. package/page/helpers/index.d.ts +70 -62
  427. package/page/helpers/index.d.ts.map +1 -0
  428. package/page/helpers/index.js +31 -29
  429. package/page/hooks/index.d.ts +54 -53
  430. package/page/hooks/index.d.ts.map +1 -0
  431. package/page/hooks/index.js +20 -15
  432. package/page/selectors/index.d.ts +32 -0
  433. package/page/selectors/index.d.ts.map +1 -0
  434. package/page/selectors/index.js +2 -1
  435. package/page/widgets/Button/Button.js +2 -3
  436. package/page/widgets/HTML/HTML.js +5 -9
  437. package/page/widgets/NestedCategoryFilter/NestedCategoryFilter.js +8 -13
  438. package/page/widgets/NestedCategoryFilter/components/Picker/components/SheetItem/index.js +2 -2
  439. package/page/widgets/NestedCategoryFilter/components/Picker/index.js +7 -9
  440. package/page/widgets/Placeholder/Placeholder.js +7 -8
  441. package/page/widgets/ProductList/ProductList.js +18 -14
  442. package/page/widgets/ProductSlider/ProductSlider.js +1 -15
  443. package/page/widgets/Video/Video.d.ts +6 -0
  444. package/page/widgets/Video/Video.d.ts.map +1 -0
  445. package/page/widgets/Video/Video.js +0 -2
  446. package/page/widgets/Video/hooks.d.ts +53 -0
  447. package/page/widgets/Video/hooks.d.ts.map +1 -0
  448. package/page/widgets/Video/hooks.js +4 -12
  449. package/page/widgets/Video/index.d.ts +2 -0
  450. package/page/widgets/Video/index.d.ts.map +1 -0
  451. package/product/components/Availability/Availability.js +0 -4
  452. package/product/components/Characteristics/Characteristic/components/SheetItem/index.js +4 -8
  453. package/product/components/Characteristics/Characteristic/index.js +9 -12
  454. package/product/components/Characteristics/Swatch/index.js +3 -7
  455. package/product/components/Characteristics/transition.js +4 -4
  456. package/product/components/Description/index.js +5 -8
  457. package/product/components/EffectivityDates/index.js +23 -17
  458. package/product/components/FilterBar/components/Content/components/FilterButton/index.js +7 -13
  459. package/product/components/FilterBar/components/Content/components/Sort/index.js +7 -13
  460. package/product/components/FilterBar/components/FilterModal/FilterModalContent.js +3 -7
  461. package/product/components/FilterBar/components/FilterModal/FilterModalTitle.js +13 -12
  462. package/product/components/FilterBar/index.js +4 -8
  463. package/product/components/Header/PriceStriked/index.js +4 -8
  464. package/product/components/Header/Shipping/index.js +3 -3
  465. package/product/components/Header/Tiers/components/Tier/index.js +3 -3
  466. package/product/components/Header/Tiers/index.js +5 -3
  467. package/product/components/MapPriceHint/index.js +8 -7
  468. package/product/components/Media/FeaturedMedia.js +7 -1
  469. package/product/components/Media/MediaImage.js +25 -24
  470. package/product/components/Media/MediaPlaceholder.js +7 -11
  471. package/product/components/MediaSlider/components/MediaImage/index.js +6 -2
  472. package/product/components/MediaSlider/constants.js +1 -12
  473. package/product/components/Options/components/TextOption/components/OptionInfo/index.js +18 -18
  474. package/product/components/Options/components/TextOption/index.js +8 -11
  475. package/product/components/OrderQuantityHint/index.js +17 -8
  476. package/product/components/PriceDifference/index.js +4 -8
  477. package/product/components/PriceInfo/PriceInfo.connector.js +2 -2
  478. package/product/components/PriceInfo/PriceInfo.js +3 -4
  479. package/product/components/ProductCard/index.js +39 -27
  480. package/product/components/ProductDiscountBadge/index.js +3 -3
  481. package/product/components/ProductGrid/components/Item/components/ItemDetails/index.js +12 -4
  482. package/product/components/ProductGrid/components/Item/components/ItemFavoritesButton/index.js +1 -1
  483. package/product/components/ProductGrid/components/Item/components/ItemImage/index.js +3 -6
  484. package/product/components/ProductGrid/components/Item/components/ItemName/index.js +9 -5
  485. package/product/components/ProductGrid/components/Item/index.js +10 -6
  486. package/product/components/ProductGrid/components/Layout/index.js +19 -4
  487. package/product/components/ProductGrid/constants.d.ts +2 -0
  488. package/product/components/ProductGrid/constants.d.ts.map +1 -0
  489. package/product/components/ProductGrid/constants.js +1 -0
  490. package/product/components/ProductGrid/hooks.d.ts +11 -0
  491. package/product/components/ProductGrid/hooks.d.ts.map +1 -0
  492. package/product/components/ProductGrid/hooks.js +48 -0
  493. package/product/components/ProductGrid/index.js +3 -6
  494. package/product/components/ProductGridPrice/index.js +8 -15
  495. package/product/components/ProductImage/ProductImage.d.ts +42 -0
  496. package/product/components/ProductImage/ProductImage.d.ts.map +1 -0
  497. package/product/components/ProductImage/ProductImage.js +158 -0
  498. package/product/components/ProductImage/ProductImagePlaceholder.d.ts +23 -0
  499. package/product/components/ProductImage/ProductImagePlaceholder.d.ts.map +1 -0
  500. package/product/components/ProductImage/ProductImagePlaceholder.js +18 -26
  501. package/product/components/ProductImage/constants.d.ts +7 -0
  502. package/product/components/ProductImage/constants.d.ts.map +1 -0
  503. package/product/components/ProductImage/constants.js +6 -0
  504. package/product/components/ProductImage/hooks.d.ts +8 -0
  505. package/product/components/ProductImage/hooks.d.ts.map +1 -0
  506. package/product/components/ProductImage/hooks.js +32 -0
  507. package/product/components/ProductImage/index.d.ts +3 -0
  508. package/product/components/ProductImage/index.d.ts.map +1 -0
  509. package/product/components/ProductImage/index.js +1 -203
  510. package/product/components/ProductList/components/Item/index.js +10 -12
  511. package/product/components/ProductList/components/Layout/index.js +8 -20
  512. package/product/components/ProductName/ProductName.d.ts +1 -1
  513. package/product/components/ProductName/ProductName.d.ts.map +1 -1
  514. package/product/components/ProductName/ProductNameContent.d.ts +2 -1
  515. package/product/components/ProductName/ProductNameContent.d.ts.map +1 -1
  516. package/product/components/ProductProperties/Content.js +1 -1
  517. package/product/components/ProductProperties/Group.js +6 -4
  518. package/product/components/ProductProperties/GroupedProperties.js +1 -1
  519. package/product/components/ProductProperties/Wrapper.js +4 -2
  520. package/product/components/ProductRatingStars/ProductRatingStars.d.ts +1 -1
  521. package/product/components/ProductRatingStars/ProductRatingStars.js +2 -4
  522. package/product/components/ProductSlider/constants.d.ts +3 -0
  523. package/product/components/ProductSlider/constants.d.ts.map +1 -0
  524. package/product/components/ProductSlider/constants.js +2 -0
  525. package/product/components/ProductSlider/hooks.d.ts +7 -0
  526. package/product/components/ProductSlider/hooks.d.ts.map +1 -0
  527. package/product/components/ProductSlider/hooks.js +40 -0
  528. package/product/components/ProductSlider/index.js +8 -8
  529. package/product/components/Rating/index.js +2 -4
  530. package/product/components/RelationsSlider/RelationsSheet.js +1 -5
  531. package/product/components/RelationsSlider/RelationsSliderContent.js +7 -6
  532. package/product/components/RelationsSlider/constants.d.ts +3 -0
  533. package/product/components/RelationsSlider/constants.d.ts.map +1 -0
  534. package/product/components/RelationsSlider/constants.js +2 -1
  535. package/product/components/RelationsSlider/hooks.d.ts +6 -0
  536. package/product/components/RelationsSlider/hooks.d.ts.map +1 -0
  537. package/product/components/RelationsSlider/hooks.js +34 -0
  538. package/product/components/Swatch/SwatchContent.js +3 -7
  539. package/product/components/Swatches/Swatches.js +3 -7
  540. package/product/components/UnitQuantityPicker/ProductUnitQuantityPicker.js +4 -4
  541. package/product/components/UnitQuantityPicker/UnitQuantityPicker.d.ts.map +1 -1
  542. package/product/components/UnitQuantityPicker/UnitQuantityPicker.js +24 -45
  543. package/product/helpers/index.js +29 -11
  544. package/product/hooks/index.js +3 -1
  545. package/product/hooks/useLoadProductImage.js +4 -2
  546. package/product/hooks/useShowEmptyRatingStars.d.ts +7 -0
  547. package/product/hooks/useShowEmptyRatingStars.d.ts.map +1 -0
  548. package/product/hooks/useShowEmptyRatingStars.js +21 -0
  549. package/product/index.js +0 -1
  550. package/push-opt-in/components/PushOptInModal/index.js +17 -17
  551. package/registration/components/GuestRegistration/GuestRegistrationFormPickup.js +2 -2
  552. package/registration/components/Registration/RegistrationContent.js +2 -1
  553. package/registration/components/Registration/RegistrationFormActions.js +4 -4
  554. package/registration/components/Registration/RegistrationFormBase.config.js +2 -1
  555. package/registration/providers/GuestRegistrationProvider.actions.js +1 -1
  556. package/registration/providers/GuestRegistrationProvider.connector.js +3 -2
  557. package/registration/providers/GuestRegistrationProvider.js +2 -1
  558. package/registration/providers/RegistrationProvider.actions.js +4 -2
  559. package/registration/providers/RegistrationProvider.connector.js +2 -2
  560. package/registration/providers/RegistrationProvider.constraints.js +1 -1
  561. package/registration/providers/RegistrationProvider.js +2 -1
  562. package/reviews/components/Reviews/components/AllReviewsLink/index.js +6 -6
  563. package/reviews/components/Reviews/components/Header/components/NoReviews/index.js +1 -1
  564. package/reviews/components/Reviews/components/Header/components/ReviewsExcerpt/index.js +3 -3
  565. package/reviews/components/Reviews/components/Header/components/WriteReviewLink/index.js +4 -3
  566. package/reviews/components/Reviews/components/List/components/Info/index.js +16 -26
  567. package/reviews/components/Reviews/components/List/components/Text/index.js +4 -2
  568. package/reviews/components/Reviews/components/List/components/Title/index.js +3 -3
  569. package/reviews/components/Reviews/components/List/index.js +1 -5
  570. package/reviews/components/Reviews/components/RatingCount/index.js +13 -15
  571. package/reviews/components/Reviews/components/ReviewsInfo/index.js +9 -9
  572. package/settings/action-creators/appSettings.d.ts +12 -0
  573. package/settings/action-creators/appSettings.d.ts.map +1 -0
  574. package/settings/action-creators/appSettings.js +10 -0
  575. package/settings/action-creators/merchantSettings.d.ts +2 -0
  576. package/settings/action-creators/merchantSettings.d.ts.map +1 -0
  577. package/settings/action-creators/merchantSettings.js +11 -0
  578. package/settings/action-creators/shopSettings.d.ts +3 -0
  579. package/settings/action-creators/shopSettings.d.ts.map +1 -0
  580. package/settings/action-creators/shopSettings.js +21 -0
  581. package/settings/constants/appSettings.d.ts +5 -0
  582. package/settings/constants/appSettings.d.ts.map +1 -0
  583. package/settings/constants/appSettings.js +6 -0
  584. package/settings/constants/imageSettings.d.ts +52 -0
  585. package/settings/constants/imageSettings.d.ts.map +1 -0
  586. package/settings/constants/imageSettings.js +69 -0
  587. package/settings/constants/merchantSettings.d.ts +12 -0
  588. package/settings/constants/merchantSettings.d.ts.map +1 -0
  589. package/settings/constants/merchantSettings.js +11 -0
  590. package/settings/constants/shopSettings.d.ts +28 -0
  591. package/settings/constants/shopSettings.d.ts.map +1 -0
  592. package/settings/constants/shopSettings.js +27 -0
  593. package/settings/helpers/index.d.ts +3 -0
  594. package/settings/helpers/index.d.ts.map +1 -0
  595. package/settings/helpers/index.js +1 -0
  596. package/settings/helpers/resolveImageSettings.d.ts +70 -0
  597. package/settings/helpers/resolveImageSettings.d.ts.map +1 -0
  598. package/settings/helpers/resolveImageSettings.js +171 -0
  599. package/settings/helpers/toImageQuality.d.ts +7 -0
  600. package/settings/helpers/toImageQuality.d.ts.map +1 -0
  601. package/settings/helpers/toImageQuality.js +44 -0
  602. package/settings/helpers/toThumborColor.d.ts +15 -0
  603. package/settings/helpers/toThumborColor.d.ts.map +1 -0
  604. package/settings/helpers/toThumborColor.js +51 -0
  605. package/settings/hooks/index.d.ts +2 -0
  606. package/settings/hooks/index.d.ts.map +1 -0
  607. package/settings/hooks/index.js +1 -0
  608. package/settings/hooks/useImageSettings.d.ts +28 -0
  609. package/settings/hooks/useImageSettings.d.ts.map +1 -0
  610. package/settings/hooks/useImageSettings.js +39 -0
  611. package/settings/reducers/appSettings.d.ts +18 -0
  612. package/settings/reducers/appSettings.d.ts.map +1 -0
  613. package/settings/reducers/appSettings.js +134 -0
  614. package/settings/reducers/index.d.ts +15 -0
  615. package/settings/reducers/index.d.ts.map +1 -0
  616. package/{core → settings}/reducers/index.js +4 -3
  617. package/settings/reducers/merchantSettings.d.ts +18 -0
  618. package/settings/reducers/merchantSettings.d.ts.map +1 -0
  619. package/{core → settings}/reducers/merchantSettings.js +9 -3
  620. package/settings/reducers/shopSettings.d.ts +28 -0
  621. package/settings/reducers/shopSettings.d.ts.map +1 -0
  622. package/{core → settings}/reducers/shopSettings.js +10 -4
  623. package/settings/selectors/appSettings.d.ts +157 -0
  624. package/settings/selectors/appSettings.d.ts.map +1 -0
  625. package/settings/selectors/appSettings.js +97 -0
  626. package/settings/selectors/merchantSettings.d.ts +21 -0
  627. package/settings/selectors/merchantSettings.d.ts.map +1 -0
  628. package/settings/selectors/merchantSettings.js +34 -0
  629. package/settings/selectors/shopSettings.d.ts +54 -0
  630. package/settings/selectors/shopSettings.d.ts.map +1 -0
  631. package/settings/selectors/shopSettings.js +81 -0
  632. package/settings/types/appSettings.d.ts +276 -0
  633. package/settings/types/appSettings.d.ts.map +1 -0
  634. package/settings/types/appSettings.js +124 -0
  635. package/styles/helpers/index.d.ts +2 -0
  636. package/styles/helpers/index.js +2 -0
  637. package/styles/helpers/loadFontCss.d.ts +22 -0
  638. package/styles/helpers/loadFontCss.d.ts.map +1 -0
  639. package/styles/helpers/loadFontCss.js +138 -0
  640. package/styles/helpers/loadThemeCss.d.ts +14 -0
  641. package/styles/helpers/loadThemeCss.d.ts.map +1 -0
  642. package/styles/helpers/loadThemeCss.js +123 -0
  643. package/styles/helpers/setPageBackgroundColor.js +2 -2
  644. package/styles/index.d.ts +1 -1
  645. package/styles/index.d.ts.map +1 -1
  646. package/styles/index.js +1 -1
  647. package/styles/reset/root.js +23 -4
  648. package/styles/reset/typographyCustomProps.d.ts +12 -0
  649. package/styles/reset/typographyCustomProps.d.ts.map +1 -0
  650. package/styles/reset/typographyCustomProps.js +11 -0
  651. package/styles/theme/createDefaultThemeOptions/index.d.ts.map +1 -1
  652. package/styles/theme/createDefaultThemeOptions/index.js +179 -7
  653. package/styles/theme/createTheme/createComponents.types.d.ts +266 -0
  654. package/styles/theme/createTheme/createComponents.types.d.ts.map +1 -1
  655. package/styles/theme/createTheme/createComponents.types.js +266 -0
  656. package/styles/theme/createTheme/createCssVarsForColorSchemeThemes.d.ts.map +1 -1
  657. package/styles/theme/createTheme/createCssVarsForColorSchemeThemes.js +41 -5
  658. package/styles/theme/createTheme/createPalette.types.d.ts +20 -7
  659. package/styles/theme/createTheme/createPalette.types.d.ts.map +1 -1
  660. package/styles/theme/createTheme/createPalette.types.js +23 -10
  661. package/styles/theme/createTheme/createShape.d.ts +3 -0
  662. package/styles/theme/createTheme/createShape.d.ts.map +1 -1
  663. package/styles/theme/createTheme/createSpacing.js +4 -1
  664. package/styles/theme/createTheme/createThemeFromColorScheme.d.ts +11 -2
  665. package/styles/theme/createTheme/createThemeFromColorScheme.d.ts.map +1 -1
  666. package/styles/theme/createTheme/createThemeFromColorScheme.js +16 -4
  667. package/styles/theme/createTheme/createTypography.d.ts +2 -1
  668. package/styles/theme/createTheme/createTypography.js +59 -18
  669. package/styles/theme/createTheme/helpers/cssVarsColorAugmentation.d.ts +2 -1
  670. package/styles/theme/createTheme/helpers/cssVarsColorAugmentation.d.ts.map +1 -1
  671. package/styles/theme/createTheme/helpers/cssVarsColorAugmentation.js +84 -6
  672. package/styles/theme/createTheme/helpers/cssVarsParser.d.ts.map +1 -1
  673. package/styles/theme/createTheme/helpers/cssVarsParser.js +10 -3
  674. package/styles/theme/createTheme/index.d.ts +2 -1
  675. package/styles/theme/createTheme/index.d.ts.map +1 -1
  676. package/styles/theme/createTheme/index.js +5 -3
  677. package/styles/theme/createTheme/layout.d.ts +23 -0
  678. package/styles/theme/createTheme/layout.d.ts.map +1 -0
  679. package/styles/theme/createTheme/layout.js +20 -0
  680. package/styles/theme/createTheme/shadows.d.ts +11 -1
  681. package/styles/theme/createTheme/shadows.d.ts.map +1 -1
  682. package/styles/theme/createTheme/shadows.js +41 -7
  683. package/styles/theme/createTheme/transitions.d.ts +4 -0
  684. package/styles/theme/createTheme/transitions.js +3 -1
  685. package/styles/theme/createTheme/types.d.ts +48 -10
  686. package/styles/theme/createTheme/types.d.ts.map +1 -1
  687. package/styles/theme/createTheme/types.js +16 -4
  688. package/styles/theme/hocs/index.d.ts +2 -0
  689. package/styles/theme/hocs/index.d.ts.map +1 -0
  690. package/styles/theme/hocs/index.js +1 -0
  691. package/styles/theme/hocs/withTheme.d.ts +21 -0
  692. package/styles/theme/hocs/withTheme.d.ts.map +1 -0
  693. package/styles/theme/hocs/withTheme.js +33 -0
  694. package/styles/theme/hooks/useColorScheme.d.ts +4 -3
  695. package/styles/theme/hooks/useColorScheme.d.ts.map +1 -1
  696. package/styles/theme/hooks/useColorScheme.js +4 -3
  697. package/styles/theme/hooks/useMediaQuery.d.ts +7 -0
  698. package/styles/theme/hooks/useMediaQuery.d.ts.map +1 -1
  699. package/styles/theme/hooks/useMediaQuery.js +5 -5
  700. package/styles/theme/hooks/useTheme.js +1 -1
  701. package/styles/theme/index.d.ts +5 -1
  702. package/styles/theme/index.d.ts.map +1 -1
  703. package/styles/theme/index.js +2 -1
  704. package/styles/theme/providers/ActiveBreakpointProvider.d.ts +1 -1
  705. package/styles/theme/providers/ColorSchemeContext.d.ts +40 -0
  706. package/styles/theme/providers/ColorSchemeContext.d.ts.map +1 -0
  707. package/styles/theme/providers/ColorSchemeContext.js +14 -0
  708. package/styles/theme/providers/ThemeContext.d.ts +3 -0
  709. package/styles/theme/providers/ThemeContext.d.ts.map +1 -0
  710. package/styles/theme/providers/ThemeContext.js +2 -0
  711. package/styles/theme/providers/ThemeProvider.d.ts +4 -14
  712. package/styles/theme/providers/ThemeProvider.d.ts.map +1 -1
  713. package/styles/theme/providers/ThemeProvider.js +90 -26
  714. package/styles/theme/utils/color.d.ts +12 -12
  715. package/styles/theme/utils/color.d.ts.map +1 -1
  716. package/tracking/components/CookieConsentModal/index.js +14 -15
  717. package/tracking/components/PrivacySettings/index.js +7 -7
  718. package/tracking/selectors/cookieConsent.js +2 -2
  719. package/cart/components/PaymentBar/PaymentBarReserveButton.connector.js +0 -6
  720. package/cart/components/PaymentBar/PaymentBarReserveButton.js +0 -75
  721. package/locations/components/StoreFinder/StoreFinderGetDirectionsButton.connector.js +0 -16
  722. package/locations/components/StoreFinder/StoreFinderGetDirectionsButton.js +0 -52
  723. package/product/collections/index.js +0 -1
  724. package/product/components/EffectivityDates/constants.d.ts +0 -3
  725. package/product/components/EffectivityDates/constants.d.ts.map +0 -1
  726. package/product/components/EffectivityDates/helpers.d.ts +0 -6
  727. package/product/components/EffectivityDates/helpers.d.ts.map +0 -1
  728. package/product/components/Media/helpers.d.ts +0 -2
  729. package/product/components/Media/helpers.d.ts.map +0 -1
  730. package/product/components/ProductImage/connector.js +0 -12
  731. package/product/helpers/index.d.ts +0 -13
  732. package/product/helpers/index.d.ts.map +0 -1
  733. package/product/helpers/redirects.d.ts +0 -2
  734. package/product/helpers/redirects.d.ts.map +0 -1
  735. package/product/selectors/helpers/filterProperties.d.ts +0 -8
  736. package/product/selectors/helpers/filterProperties.d.ts.map +0 -1
  737. package/product/selectors/helpers/index.d.ts +0 -3
  738. package/product/selectors/helpers/index.d.ts.map +0 -1
  739. package/product/selectors/helpers/wrapMemoizedSelector.d.ts +0 -2
  740. package/product/selectors/helpers/wrapMemoizedSelector.d.ts.map +0 -1
  741. package/product/selectors/product.d.ts +0 -112
  742. package/product/selectors/product.d.ts.map +0 -1
@@ -76,6 +76,10 @@ export type PaletteColorsWithMain = PaletteKeysWithMain<PaletteFromSchema<typeof
76
76
  * theme palette.
77
77
  */
78
78
  export declare const paletteSchema: {
79
+ readonly common: {
80
+ readonly black: "#000";
81
+ readonly white: "#fff";
82
+ };
79
83
  /**
80
84
  * Color scheme for primary interface elements
81
85
  */
@@ -110,11 +114,13 @@ export declare const paletteSchema: {
110
114
  * Colors to be used for the background of various elements
111
115
  */
112
116
  readonly background: {
113
- /**
114
- * The color used for the background of the application
115
- */
116
117
  readonly default: "";
118
+ readonly surface: "";
119
+ readonly emphasized: "";
117
120
  };
121
+ /**
122
+ * Colors to be used for text.
123
+ */
118
124
  readonly text: {
119
125
  readonly primary: "";
120
126
  readonly secondary: "";
@@ -134,15 +140,22 @@ export declare const paletteSchema: {
134
140
  readonly 700: "#616161";
135
141
  readonly 800: "#424242";
136
142
  readonly 900: "#212121";
137
- readonly A100: "#f5f5f5";
138
- readonly A200: "#eeeeee";
139
- readonly A400: "#bdbdbd";
140
- readonly A700: "#616161";
143
+ readonly light: "#F2F2F2";
144
+ readonly medium: "#b5b5b5";
145
+ readonly dark: "#747474";
141
146
  };
147
+ /**
148
+ * Colors to be used for actions, such as disabled states.
149
+ */
142
150
  readonly action: {
143
151
  readonly disabled: "#808080";
144
152
  readonly disabledBackground: "#CCCCCC";
153
+ readonly pressed: "#F2F2F2";
145
154
  };
155
+ /**
156
+ * Color for the box-shadow.
157
+ */
158
+ readonly shadow: "#000000";
146
159
  };
147
160
  /**
148
161
  * Additional settings for the palette
@@ -1 +1 @@
1
- {"version":3,"file":"createPalette.types.d.ts","sourceRoot":"","sources":["../../../../styles/theme/createTheme/createPalette.types.ts"],"names":[],"mappings":"AAAA,KAAK,gBAAgB,GACjB,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GACxD,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAEtC,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;AAE5D;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF;;;GAGG;AACH,KAAK,6BAA6B,GAAG,QAAQ,CAAC,qBAAqB,CAAC,CAAA;AAEpE,KAAK,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;AAEzD;;;;;;;;;;;;GAYG;AACH,KAAK,iBAAiB,CAAC,CAAC,IACtB,CAAC,SAAS,IAAI,GAAG,MAAM,GACrB,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,SAAS,iBAAiB,CAAC,CAAC,CAAC,EAAE,GAChE,CAAC,SAAS,MAAM,GACd,CAAC,MAAM,SAAS,MAAM,CAAC,GACnB,6BAA6B,GAC7B;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC,GAChD,MAAM,CAAC;AAEb;;;;;;;;;;GAUG;AACH,KAAK,sBAAsB,CAAC,CAAC,IAC3B,CAAC,SAAS,IAAI,GAAG,MAAM,GACrB,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,SAAS,sBAAsB,CAAC,CAAC,CAAC,EAAE,GACrE,CAAC,SAAS,MAAM,GACd,CAAC,MAAM,SAAS,MAAM,CAAC,GACnB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,GACtE;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC,GACrD,MAAM,CAAC;AAEb,KAAK,mBAAmB,CAAC,CAAC,IAAI;KAC3B,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;QAAE,IAAI,EAAE,OAAO,CAAA;KAAE,GAAG,CAAC,GAAG,KAAK;CAC7D,CAAC,MAAM,CAAC,CAAC,CAAC;AAGX,MAAM,MAAM,qBAAqB,GAAG,mBAAmB,CAAC,iBAAiB,CAAC,OAAO,aAAa,CAAC,CAAC,CAAC;AAmBjG;;;;;GAKG;AACH,eAAO,MAAM,aAAa;IACxB;;OAEG;;;;IAEH;;OAEG;;;;IAEH;;OAEG;;;;IAEH;;OAEG;;;;IAEH;;OAEG;;;;IAEH;;OAEG;;QAED;;WAEG;;;;;;;IAOL;;;OAGG;;;;;;;;;;;;;;;;;;;;;CAMK,CAAC;AAEX;;GAEG;AACH,UAAU,wBAAwB;IAChC;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAGD,MAAM,MAAM,cAAc,GAAG,sBAAsB,CAAC,OAAO,aAAa,CAAC,GACrE,wBAAwB,CAAC;AAG7B,MAAM,MAAM,OAAO,GAAG,iBAAiB,CAAC,OAAO,aAAa,CAAC,CAAA"}
1
+ {"version":3,"file":"createPalette.types.d.ts","sourceRoot":"","sources":["../../../../styles/theme/createTheme/createPalette.types.ts"],"names":[],"mappings":"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"}
@@ -47,10 +47,9 @@ const grey = {
47
47
  700: '#616161',
48
48
  800: '#424242',
49
49
  900: '#212121',
50
- A100: '#f5f5f5',
51
- A200: '#eeeeee',
52
- A400: '#bdbdbd',
53
- A700: '#616161'
50
+ light: '#F2F2F2',
51
+ medium: '#b5b5b5',
52
+ dark: '#747474'
54
53
  };
55
54
 
56
55
  /**
@@ -60,6 +59,10 @@ const grey = {
60
59
  * theme palette.
61
60
  */
62
61
  export const paletteSchema = {
62
+ common: {
63
+ black: '#000',
64
+ white: '#fff'
65
+ },
63
66
  /**
64
67
  * Color scheme for primary interface elements
65
68
  */
@@ -94,11 +97,13 @@ export const paletteSchema = {
94
97
  * Colors to be used for the background of various elements
95
98
  */
96
99
  background: {
97
- /**
98
- * The color used for the background of the application
99
- */
100
- default: ''
100
+ default: '',
101
+ surface: '',
102
+ emphasized: ''
101
103
  },
104
+ /**
105
+ * Colors to be used for text.
106
+ */
102
107
  text: {
103
108
  primary: '',
104
109
  secondary: ''
@@ -108,10 +113,18 @@ export const paletteSchema = {
108
113
  * The numbers represent the lightness of the color,
109
114
  */
110
115
  grey,
116
+ /**
117
+ * Colors to be used for actions, such as disabled states.
118
+ */
111
119
  action: {
112
120
  disabled: '#808080',
113
- disabledBackground: '#CCCCCC'
114
- }
121
+ disabledBackground: '#CCCCCC',
122
+ pressed: '#F2F2F2'
123
+ },
124
+ /**
125
+ * Color for the box-shadow.
126
+ */
127
+ shadow: '#000000'
115
128
  };
116
129
 
117
130
  /**
@@ -1,4 +1,7 @@
1
1
  export interface Shape {
2
+ /**
3
+ * The app wide corner style. Every rounded surface derives from it.
4
+ */
2
5
  borderRadius: number | string;
3
6
  }
4
7
  export type ShapeOptions = Partial<Shape>;
@@ -1 +1 @@
1
- {"version":3,"file":"createShape.d.ts","sourceRoot":"","sources":["../../../../styles/theme/createTheme/createShape.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,KAAK;IACpB,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC;CAC/B;AAED,MAAM,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;AAM1C;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,OAAO,GAAE,YAAiB,GAAG,KAAK,CAKrE"}
1
+ {"version":3,"file":"createShape.d.ts","sourceRoot":"","sources":["../../../../styles/theme/createTheme/createShape.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,KAAK;IACpB;;OAEG;IACH,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC;CAC/B;AAED,MAAM,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;AAM1C;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,OAAO,GAAE,YAAiB,GAAG,KAAK,CAKrE"}
@@ -1,4 +1,7 @@
1
- import { isDev } from '@shopgate/engage/core/helpers';
1
+ // Import `isDev` from the leaf environment module rather than the `@shopgate/engage/core/helpers`
2
+ // barrel: the barrel pulls in providers -> toast -> the theme, creating an import cycle back into
3
+ // createTheme (which uses this module) and breaking theme creation during module init.
4
+ import { isDev } from '@shopgate/pwa-common/helpers/environment';
2
5
  const spacingUnit = 8;
3
6
 
4
7
  /**
@@ -1,4 +1,4 @@
1
- import type { ColorSchemeOptions, BaseTheme } from './types';
1
+ import type { ColorSchemeOptions, ColorSchemeTheme } from './types';
2
2
  /**
3
3
  * Helper function to add an alpha value to a color.
4
4
  * @param color The color to modify.
@@ -20,11 +20,20 @@ export declare const lighten: (color: string, coefficient?: number | string) =>
20
20
  * @returns A string representing the darkened color.
21
21
  */
22
22
  export declare const darken: (color: string, coefficient?: number | string) => string;
23
+ /**
24
+ * Helper function to calculate a contrast color (either black or white) based on the lightness of
25
+ * the input color.
26
+ * @param color The color to evaluate.
27
+ * @returns A string representing the contrast color (either black or white) for the input color.
28
+ */
29
+ export declare const contrastColor: (color: string) => string;
23
30
  /**
24
31
  * Creates a theme object for a given color scheme (light or dark).
25
32
  * @param colorScheme The color scheme options.
33
+ * @param cssVarPrefix The theme's css variable prefix. Typography references some of the properties
34
+ * that are generated from it later, so it has to compose the same names.
26
35
  * @returns A theme object for the given color scheme.
27
36
  */
28
- declare const createThemeFromColorScheme: (colorScheme: ColorSchemeOptions) => BaseTheme;
37
+ declare const createThemeFromColorScheme: (colorScheme: ColorSchemeOptions, cssVarPrefix?: string) => ColorSchemeTheme;
29
38
  export default createThemeFromColorScheme;
30
39
  //# sourceMappingURL=createThemeFromColorScheme.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createThemeFromColorScheme.d.ts","sourceRoot":"","sources":["../../../../styles/theme/createTheme/createThemeFromColorScheme.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAc7D;;;;;GAKG;AACH,eAAO,MAAM,KAAK,GAChB,OAAO,MAAM,EACb,aAAa,MAAM,GAAG,MAAM,KAC3B,MAAkH,CAAC;AAEtH;;;;;GAKG;AACH,eAAO,MAAM,OAAO,GAClB,OAAO,MAAM,EACb,cAAa,MAAM,GAAG,MAAY,KACjC,MAAuF,CAAC;AAE3F;;;;;GAKG;AACH,eAAO,MAAM,MAAM,GACjB,OAAO,MAAM,EACb,cAAa,MAAM,GAAG,MAAY,KACjC,MAAuF,CAAC;AAE3F;;;;GAIG;AACH,QAAA,MAAM,0BAA0B,GAAI,aAAa,kBAAkB,KAAG,SA0BrE,CAAC;AAEF,eAAe,0BAA0B,CAAC"}
1
+ {"version":3,"file":"createThemeFromColorScheme.d.ts","sourceRoot":"","sources":["../../../../styles/theme/createTheme/createThemeFromColorScheme.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAcpE;;;;;GAKG;AACH,eAAO,MAAM,KAAK,GAChB,OAAO,MAAM,EACb,aAAa,MAAM,GAAG,MAAM,KAC3B,MAAkH,CAAC;AAEtH;;;;;GAKG;AACH,eAAO,MAAM,OAAO,GAClB,OAAO,MAAM,EACb,cAAa,MAAM,GAAG,MAAY,KACjC,MAAuF,CAAC;AAE3F;;;;;GAKG;AACH,eAAO,MAAM,MAAM,GACjB,OAAO,MAAM,EACb,cAAa,MAAM,GAAG,MAAY,KACjC,MAAuF,CAAC;AAE3F;;;;;GAKG;AACH,eAAO,MAAM,aAAa,GACxB,OAAO,MAAM,KACZ,MAA4D,CAAC;AAEhE;;;;;;GAMG;AACH,QAAA,MAAM,0BAA0B,GAC9B,aAAa,kBAAkB,EAC/B,eAAe,MAAM,KACpB,gBA4BF,CAAC;AAEF,eAAe,0BAA0B,CAAC"}
@@ -2,7 +2,7 @@ import createPalette from "./createPalette";
2
2
  import createTypography from "./createTypography";
3
3
  import createComponents from "./createComponents";
4
4
  import createShape from "./createShape";
5
- import shadows from "./shadows";
5
+ import shadows, { shadowSizes } from "./shadows";
6
6
  /**
7
7
  * Calculates the percentage value for a given coefficient, which can be a number or a string representing a CSS calculation.
8
8
  * @param coefficient The coefficient to convert, either a number or a string.
@@ -39,12 +39,22 @@ export const lighten = (color, coefficient = 0.2) => `color-mix(in oklch, ${colo
39
39
  */
40
40
  export const darken = (color, coefficient = 0.2) => `color-mix(in oklch, ${color}, #000 ${coefficientToPercentage(coefficient)})`;
41
41
 
42
+ /**
43
+ * Helper function to calculate a contrast color (either black or white) based on the lightness of
44
+ * the input color.
45
+ * @param color The color to evaluate.
46
+ * @returns A string representing the contrast color (either black or white) for the input color.
47
+ */
48
+ export const contrastColor = color => `oklch(from ${color} var(--__l) 0 h / var(--__a))`;
49
+
42
50
  /**
43
51
  * Creates a theme object for a given color scheme (light or dark).
44
52
  * @param colorScheme The color scheme options.
53
+ * @param cssVarPrefix The theme's css variable prefix. Typography references some of the properties
54
+ * that are generated from it later, so it has to compose the same names.
45
55
  * @returns A theme object for the given color scheme.
46
56
  */
47
- const createThemeFromColorScheme = colorScheme => {
57
+ const createThemeFromColorScheme = (colorScheme, cssVarPrefix) => {
48
58
  const {
49
59
  palette: paletteInput = {},
50
60
  typography: typographyInput = {},
@@ -52,7 +62,7 @@ const createThemeFromColorScheme = colorScheme => {
52
62
  shape: shapeInput = {}
53
63
  } = colorScheme;
54
64
  const palette = createPalette(paletteInput);
55
- const typography = createTypography(palette, typographyInput);
65
+ const typography = createTypography(palette, typographyInput, cssVarPrefix);
56
66
  const components = createComponents(componentsInput);
57
67
  const shape = createShape(shapeInput);
58
68
  const theme = {
@@ -61,9 +71,11 @@ const createThemeFromColorScheme = colorScheme => {
61
71
  components,
62
72
  shape,
63
73
  shadows,
74
+ shadowSizes,
64
75
  alpha,
65
76
  lighten,
66
- darken
77
+ darken,
78
+ contrastColor
67
79
  };
68
80
  return theme;
69
81
  };
@@ -51,5 +51,6 @@ export interface TypographyOptions
51
51
 
52
52
  export default function createTypography(
53
53
  palette: Palette,
54
- typography: TypographyOptions | ((palette: Palette) => TypographyOptions)
54
+ typography: TypographyOptions | ((palette: Palette) => TypographyOptions),
55
+ cssVarPrefix?: string
55
56
  ): Typography;
@@ -1,19 +1,41 @@
1
1
  import _merge from "lodash/merge";
2
- import { isDev } from '@shopgate/engage/core/helpers';
2
+ // Imported from the defining modules rather than a barrel: this module runs at import time in
3
+ // every spec that touches the theme, and specs that replace a barrel with a partial mock would
4
+ // leave these undefined.
5
+ import { isDev } from '@shopgate/pwa-common/helpers/environment';
6
+ import { themeConfig } from '@shopgate/pwa-common/helpers/config';
7
+ const {
8
+ fontWeight: buttonFontWeight = 600,
9
+ textTransform: buttonTextTransform
10
+ } = themeConfig?.variables?.buttonBase ?? {};
3
11
  const caseAllCaps = {
4
12
  textTransform: 'uppercase'
5
13
  };
14
+ const caseButton = {
15
+ textTransform: buttonTextTransform === 'uppercase' ? 'uppercase' : 'none'
16
+ };
6
17
  const defaultFontFamily = '"Roboto", "Helvetica", "Arial", sans-serif';
7
18
 
19
+ /**
20
+ * Builds the prefix of the custom properties that cssVarsParser derives from the `typography` keys.
21
+ * Mirrors how the parser composes a name, so a theme configured with a different `cssVarPrefix`
22
+ * references the properties it actually emits.
23
+ * @param {string} cssVarPrefix The theme's css variable prefix.
24
+ * @returns {string} The prefix, e.g. `--sg-typography`.
25
+ */
26
+ const typographyVarPrefix = cssVarPrefix => `--${cssVarPrefix ? `${cssVarPrefix}-` : ''}typography`;
27
+
8
28
  /**
9
29
  * Creates the typography object for the theme.
10
30
  * @param {Object} palette The theme palette.
11
31
  * @param {Object|Function} typography The typography options or a function that returns them.
32
+ * @param {string} [cssVarPrefix] The theme's css variable prefix, matching the one cssVarsParser
33
+ * generates the properties with. Defaults to the `sg` default of createTheme.
12
34
  * @returns {Object} The typography object.
13
35
  * @see @link{https://material.io/design/typography/the-type-system.html}
14
36
  * @see @link{https://material.io/design/typography/understanding-typography.html}
15
37
  */
16
- export default function createTypography(palette, typography) {
38
+ export default function createTypography(palette, typography, cssVarPrefix = 'sg') {
17
39
  const {
18
40
  fontFamily = defaultFontFamily,
19
41
  // The default font size of the Material Specification.
@@ -32,10 +54,28 @@ export default function createTypography(palette, typography) {
32
54
  } = typeof typography === 'function' ? typography(palette) : typography;
33
55
  if (isDev) {
34
56
  if (typeof fontSize !== 'number') {
57
+ // eslint-disable-next-line no-console
35
58
  console.error('Shopgate Theme: `fontSize` is required to be a number.');
36
59
  }
37
60
  }
38
61
  const coef = fontSize / 14;
62
+ const fontWeights = {
63
+ fontWeightLight,
64
+ fontWeightRegular,
65
+ fontWeightMedium,
66
+ fontWeightBold
67
+ };
68
+
69
+ /**
70
+ * Builds a reference to one of the shared font weight custom properties. The property itself is
71
+ * emitted by cssVarsParser from `typography.fontWeight*`, so overriding it on `:root` (admin css,
72
+ * live preview, an extension) cascades into every variant that uses that token. The resolved
73
+ * weight stays as the fallback, so the variant still renders when the property is absent.
74
+ * @param {string} token One of `fontWeightLight`, `fontWeightRegular`, `fontWeightMedium`,
75
+ * `fontWeightBold`.
76
+ * @returns {string} The css var reference.
77
+ */
78
+ const fontWeightVar = token => `var(${typographyVarPrefix(cssVarPrefix)}-${token}, ${fontWeights[token]})`;
39
79
 
40
80
  /**
41
81
  * Calculates a rem value for a passed pixel value.
@@ -46,34 +86,35 @@ export default function createTypography(palette, typography) {
46
86
 
47
87
  /**
48
88
  * Creates a typography variant object.
49
- * @param {number} fontWeight The font weight to use for the variant.
89
+ * @param {string} fontWeightToken The name of the shared font weight token to use, e.g.
90
+ * `fontWeightBold`. The variant references it as a custom property instead of inlining its value.
50
91
  * @param {number} size Font size in pixels.
51
92
  * @param {number} lineHeight Line height as a unitless number.
52
93
  * @param {Object} casing Casing styles to apply, e.g. textTransform.
53
94
  * @returns {Object} The typography variant object.
54
95
  */
55
- const buildVariant = (fontWeight, size, lineHeight, casing) => ({
96
+ const buildVariant = (fontWeightToken, size, lineHeight, casing) => ({
56
97
  fontFamily,
57
- fontWeight,
98
+ fontWeight: fontWeightVar(fontWeightToken),
58
99
  fontSize: pxToRem(size),
59
100
  lineHeight,
60
101
  ...casing,
61
102
  ...allVariants
62
103
  });
63
104
  const variants = {
64
- h1: buildVariant(fontWeightBold, 34, 1.15),
65
- h2: buildVariant(fontWeightBold, 22, 1.3),
66
- h3: buildVariant(fontWeightMedium, 20, 1.35),
67
- h4: buildVariant(fontWeightMedium, 18, 1.4),
68
- h5: buildVariant(fontWeightMedium, 16, 1.5),
69
- h6: buildVariant(fontWeightMedium, 14, 1.5),
70
- subtitle1: buildVariant(fontWeightRegular, 16, 1.75),
71
- subtitle2: buildVariant(fontWeightMedium, 14, 1.57),
72
- body1: buildVariant(fontWeightRegular, 16, 1.5),
73
- body2: buildVariant(fontWeightRegular, 14, 1.43),
74
- button: buildVariant(fontWeightMedium, 14, 1.75, caseAllCaps),
75
- caption: buildVariant(fontWeightRegular, 12, 1.66),
76
- overline: buildVariant(fontWeightRegular, 12, 2.66, caseAllCaps)
105
+ h1: buildVariant('fontWeightBold', 34, 1.15),
106
+ h2: buildVariant('fontWeightBold', 22, 1.3),
107
+ h3: buildVariant('fontWeightMedium', 20, 1.35),
108
+ h4: buildVariant('fontWeightMedium', 18, 1.4),
109
+ h5: buildVariant('fontWeightMedium', 16, 1.5),
110
+ h6: buildVariant('fontWeightMedium', 14, 1.5),
111
+ subtitle1: buildVariant('fontWeightRegular', 16, 1.75),
112
+ subtitle2: buildVariant('fontWeightMedium', 14, 1.57),
113
+ body1: buildVariant('fontWeightRegular', 16, 1.5),
114
+ body2: buildVariant('fontWeightRegular', 14, 1.43),
115
+ button: buildVariant(buttonFontWeight > fontWeightMedium ? 'fontWeightBold' : 'fontWeightMedium', 16, 1.75, caseButton),
116
+ caption: buildVariant('fontWeightRegular', 12, 1.66),
117
+ overline: buildVariant('fontWeightRegular', 12, 2.66, caseAllCaps)
77
118
  };
78
119
  return _merge({
79
120
  pxToRem,
@@ -4,7 +4,8 @@ import type { CssVarsParserReturnValue } from './cssVarsParser';
4
4
  * Augments the CSS variables for the color palette by adding light and dark variants for each color.
5
5
  * @param cssParserReturn The result from the CSS variables parser.
6
6
  * @param theme The base theme object, which includes the palette and the lighten/darken functions.
7
+ * @param cssVarsPrefix Prefix used for CSS variable names.
7
8
  * @returns An object containing the augmented CSS variables.
8
9
  */
9
- export default function cssVarsColorAugmentation(cssParserReturn: CssVarsParserReturnValue<BaseTheme>, theme: BaseTheme): CssVarsParserReturnValue<BaseTheme>;
10
+ export default function cssVarsColorAugmentation(cssParserReturn: CssVarsParserReturnValue<BaseTheme>, theme: BaseTheme, cssVarsPrefix: string): CssVarsParserReturnValue<BaseTheme>;
10
11
  //# sourceMappingURL=cssVarsColorAugmentation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cssVarsColorAugmentation.d.ts","sourceRoot":"","sources":["../../../../../styles/theme/createTheme/helpers/cssVarsColorAugmentation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AA+BhE;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,wBAAwB,CAC9C,eAAe,EAAE,wBAAwB,CAAC,SAAS,CAAC,EACpD,KAAK,EAAE,SAAS,GACf,wBAAwB,CAAC,SAAS,CAAC,CAerC"}
1
+ {"version":3,"file":"cssVarsColorAugmentation.d.ts","sourceRoot":"","sources":["../../../../../styles/theme/createTheme/helpers/cssVarsColorAugmentation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAqHhE;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,wBAAwB,CAC9C,eAAe,EAAE,wBAAwB,CAAC,SAAS,CAAC,EACpD,KAAK,EAAE,SAAS,EAChB,aAAa,EAAE,MAAM,GACpB,wBAAwB,CAAC,SAAS,CAAC,CAkBrC"}
@@ -1,3 +1,74 @@
1
+ import "core-js/modules/es.array.reduce.js";
2
+ import cssVarsParser from "./cssVarsParser";
3
+
4
+ /**
5
+ * Builds lookup keys for CSS variables that are injected by addAugmentationToVars.
6
+ *
7
+ * For each augmentable palette entry this returns keys for `dark`, `light`, and
8
+ * `contrastText`, e.g. `--sg-palette-primary-dark`.
9
+ * @param vars Theme vars object to inspect.
10
+ * @param cssVarsPrefix Optional CSS variable prefix.
11
+ * @returns Flat list of CSS variable lookup keys.
12
+ */
13
+ function getAugmentedPaletteLookupKeys(vars, cssVarsPrefix = 'sg') {
14
+ if (!vars.palette) return [];
15
+ const prefix = cssVarsPrefix ? `${cssVarsPrefix}-` : '';
16
+ const keys = [];
17
+ Object.keys(vars.palette).forEach(key => {
18
+ // @ts-expect-error - We are sure about the type here
19
+ const paletteEntry = vars.palette[key];
20
+ if (paletteEntry && typeof paletteEntry === 'object' && paletteEntry.main) {
21
+ const base = `--${prefix}palette-${key}`;
22
+ keys.push(`${base}-dark`, `${base}-light`, `${base}-contrastText`);
23
+ }
24
+ });
25
+ return keys;
26
+ }
27
+
28
+ /**
29
+ * Merges refreshed augmented palette CSS variables into the original CSS map.
30
+ *
31
+ * The original `cssInput` was generated before palette augmentation, so `dark`,
32
+ * `light`, and `contrastText` entries derived from augmented vars must be
33
+ * regenerated and merged back in.
34
+ * @param cssInput Original CSS variables map from the parser result.
35
+ * @param varsInput Original vars object, used to determine which palette keys are augmentable.
36
+ * @param vars Augmented vars object containing the updated palette values.
37
+ * @param cssVarsPrefix Prefix used to build CSS variable names.
38
+ * @returns CSS map with augmented palette keys overwritten by fresh values.
39
+ */
40
+ function addAugmentationToCss(cssInput, varsInput, vars, cssVarsPrefix) {
41
+ // Re-parse the augmented vars so we can derive up-to-date css variable values.
42
+ const {
43
+ css: augmentedCss
44
+ } = cssVarsParser(vars, {
45
+ prefix: cssVarsPrefix
46
+ });
47
+
48
+ // Only copy keys that are introduced/overwritten by color augmentation.
49
+ // This keeps all non-augmented entries from the original parser result untouched.
50
+ const augmentedPaletteLookupKeys = getAugmentedPaletteLookupKeys(varsInput, cssVarsPrefix);
51
+ const augmentedPaletteCss = augmentedPaletteLookupKeys.reduce((acc, key) => {
52
+ if (key in augmentedCss) {
53
+ acc[key] = augmentedCss[key];
54
+ }
55
+ return acc;
56
+ }, {});
57
+ return {
58
+ ...cssInput,
59
+ ...augmentedPaletteCss
60
+ };
61
+ }
62
+
63
+ /**
64
+ * Extends palette entries that provide a `main` color with derived variants.
65
+ *
66
+ * For each matching palette entry, this injects `light`, `dark`, and
67
+ * `contrastText` so downstream theme consumers can rely on a complete color set.
68
+ * @param vars Theme vars object to augment.
69
+ * @param theme Base theme utilities used to derive color variants.
70
+ * @returns A new vars object with augmented palette entries.
71
+ */
1
72
  function addAugmentationToVars(vars, theme) {
2
73
  if (!vars.palette) return vars;
3
74
  const augmentedPalette = {
@@ -12,7 +83,9 @@ function addAugmentationToVars(vars, theme) {
12
83
  ...paletteEntry,
13
84
  // Inject css color-mix function to create light and dark variants of the main color
14
85
  light: theme.lighten(paletteEntry.main),
15
- dark: theme.darken(paletteEntry.main)
86
+ dark: theme.darken(paletteEntry.main),
87
+ // Inject contrast text color based on the main color
88
+ contrastText: theme.contrastColor(paletteEntry.main)
16
89
  };
17
90
  }
18
91
  });
@@ -26,19 +99,24 @@ function addAugmentationToVars(vars, theme) {
26
99
  * Augments the CSS variables for the color palette by adding light and dark variants for each color.
27
100
  * @param cssParserReturn The result from the CSS variables parser.
28
101
  * @param theme The base theme object, which includes the palette and the lighten/darken functions.
102
+ * @param cssVarsPrefix Prefix used for CSS variable names.
29
103
  * @returns An object containing the augmented CSS variables.
30
104
  */
31
- export default function cssVarsColorAugmentation(cssParserReturn, theme) {
105
+ export default function cssVarsColorAugmentation(cssParserReturn, theme, cssVarsPrefix) {
32
106
  const {
33
107
  vars: varsInput,
34
- varsWithDefaults: varsWithDefaultsInput,
108
+ css: cssInput,
35
109
  ...rest
36
110
  } = cssParserReturn;
111
+
112
+ // vars and varsWithDefaults need augmentation because both are consumed by the theme layer.
37
113
  const vars = addAugmentationToVars(varsInput, theme);
38
- const varsWithDefaults = addAugmentationToVars(varsWithDefaultsInput, theme);
114
+
115
+ // cssInput was produced before augmentation, so merge refreshed augmented keys back in.
116
+ const css = addAugmentationToCss(cssInput, varsInput, vars, cssVarsPrefix);
39
117
  return {
40
118
  ...rest,
41
- vars,
42
- varsWithDefaults
119
+ css,
120
+ vars: varsInput
43
121
  };
44
122
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cssVarsParser.d.ts","sourceRoot":"","sources":["../../../../../styles/theme/createTheme/helpers/cssVarsParser.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA4HH,KAAK,oBAAoB,GAAG;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uBAAuB,CAAC,EAAE,CAAC,cAAc,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,KAAK,OAAO,CAAC;CAC9F,CAAC;AAEF,MAAM,MAAM,wBAAwB,CAAC,CAAC,IAAI;IACxC;;;OAGG;IACH,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IACrC;;;OAGG;IACH,IAAI,EAAE,CAAC,CAAC;IACR;;;OAGG;IACH,gBAAgB,EAAE,CAAC,CAAC;IACpB;;;OAGG;IACH,QAAQ,EAAE,CAAC,CAAC;CACb,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,CAAC,SAAS,MAAM,EACpD,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,oBAAoB,GAC7B,wBAAwB,CAAC,CAAC,CAAC,CA+D7B"}
1
+ {"version":3,"file":"cssVarsParser.d.ts","sourceRoot":"","sources":["../../../../../styles/theme/createTheme/helpers/cssVarsParser.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA6IH,KAAK,oBAAoB,GAAG;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uBAAuB,CAAC,EAAE,CAAC,cAAc,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,KAAK,OAAO,CAAC;CAC9F,CAAC;AAEF,MAAM,MAAM,wBAAwB,CAAC,CAAC,IAAI;IACxC;;;OAGG;IACH,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IACrC;;;OAGG;IACH,IAAI,EAAE,CAAC,CAAC;IACR;;;OAGG;IACH,gBAAgB,EAAE,CAAC,CAAC;IACpB;;;OAGG;IACH,QAAQ,EAAE,CAAC,CAAC;CACb,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,CAAC,SAAS,MAAM,EACpD,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,oBAAoB,GAC7B,wBAAwB,CAAC,CAAC,CAAC,CA+D7B"}
@@ -85,11 +85,18 @@ const walkObjectDeep = (obj, callback, shouldSkipPaths) => {
85
85
  */
86
86
  const getCssValue = (keys, value) => {
87
87
  if (typeof value === 'number') {
88
- if (['lineHeight', 'fontWeight', 'opacity', 'zIndex'].some(prop => keys.includes(prop))) {
89
- // CSS property that are unitless
88
+ const lastKey = keys[keys.length - 1];
89
+ if (['lineHeight', 'fontWeight', 'opacity', 'zIndex', 'fontWeightLight', 'fontWeightRegular', 'fontWeightMedium', 'fontWeightBold'].some(prop => lastKey === prop)) {
90
+ // CSS properties that are unitless
91
+ return value;
92
+ }
93
+
94
+ // `typography.fontSize` is MUI's base font-size coefficient and stays unitless, but variant
95
+ // font sizes (e.g. `typography.body2.fontSize`) are lengths and need a `px` unit - otherwise a
96
+ // numeric override would produce an invalid `font-size: 12` custom property.
97
+ if (lastKey === 'fontSize' && keys[keys.length - 2] === 'typography') {
90
98
  return value;
91
99
  }
92
- const lastKey = keys[keys.length - 1];
93
100
  if (lastKey.toLowerCase().includes('opacity')) {
94
101
  // opacity values are unitless
95
102
  return value;
@@ -1,5 +1,6 @@
1
1
  import { type ThemeOptions, type ThemeInternal } from './types';
2
- export type { Theme, BaseTheme, ThemeInternal, ThemeOptions, Breakpoint, ColorSchemeName, ColorSchemeSelectorType, PaletteColorsWithMain, } from './types';
2
+ export type { Theme, BaseTheme, ThemeInternal, ThemeOptions, Breakpoint, ColorSchemeName, ColorSchemeMode, ColorSchemeSelectorType, PaletteColorsWithMain, } from './types';
3
+ export { COLOR_SCHEME_NAMES, COLOR_SCHEME_SYSTEM } from './types';
3
4
  /**
4
5
  * Creates a theme object for the ThemeProvider.
5
6
  * @param options The theme options.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../styles/theme/createTheme/index.ts"],"names":[],"mappings":"AASA,OAAO,EACL,KAAK,YAAY,EAGjB,KAAK,aAAa,EACnB,MAAM,SAAS,CAAC;AAEjB,YAAY,EACV,KAAK,EACL,SAAS,EACT,aAAa,EACb,YAAY,EACZ,UAAU,EACV,eAAe,EACf,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,SAAS,CAAC;AAEjB;;;;GAIG;AACH,eAAO,MAAM,WAAW,GAAI,UAAS,YAAiB,KAAG,aAkExD,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../styles/theme/createTheme/index.ts"],"names":[],"mappings":"AAUA,OAAO,EACL,KAAK,YAAY,EAGjB,KAAK,aAAa,EACnB,MAAM,SAAS,CAAC;AAEjB,YAAY,EACV,KAAK,EACL,SAAS,EACT,aAAa,EACb,YAAY,EACZ,UAAU,EACV,eAAe,EACf,eAAe,EACf,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAElE;;;;GAIG;AACH,eAAO,MAAM,WAAW,GAAI,UAAS,YAAiB,KAAG,aAkExD,CAAC"}
@@ -4,10 +4,13 @@ import createBreakpoints from "./createBreakpoints";
4
4
  import createSpacing from "./createSpacing";
5
5
  import transitions from "./transitions";
6
6
  import zIndex from "./zIndex";
7
+ import layout from "./layout";
7
8
  import createThemeFromColorScheme from "./createThemeFromColorScheme";
8
9
  import createCssVarsForColorSchemeThemes from "./createCssVarsForColorSchemeThemes";
9
10
  import applyStyles from "./applyStyles";
10
11
  import { createGetColorSchemeSelector, createSetActiveColorScheme } from "./helpers";
12
+ export { COLOR_SCHEME_NAMES, COLOR_SCHEME_SYSTEM } from "./types";
13
+
11
14
  /**
12
15
  * Creates a theme object for the ThemeProvider.
13
16
  * @param options The theme options.
@@ -35,7 +38,7 @@ export const createTheme = (options = {}) => {
35
38
  palette: {
36
39
  mode: type
37
40
  }
38
- }, defaultScheme, scheme));
41
+ }, defaultScheme, scheme), cssVarPrefix);
39
42
  return acc;
40
43
  }, {});
41
44
  const getColorSchemeSelector = createGetColorSchemeSelector(colorSchemeSelector);
@@ -50,8 +53,6 @@ export const createTheme = (options = {}) => {
50
53
  const currentTheme = colorSchemes[defaultColorScheme] ?? colorSchemes.light;
51
54
  const breakpoints = createBreakpoints();
52
55
  const spacing = createSpacing();
53
-
54
- // @ts-expect-error applyStyles is added to the theme object after its creation
55
56
  const theme = {
56
57
  ...currentTheme,
57
58
  ...cssVarsTheme,
@@ -60,6 +61,7 @@ export const createTheme = (options = {}) => {
60
61
  spacing,
61
62
  transitions,
62
63
  zIndex,
64
+ layout,
63
65
  colorSchemes,
64
66
  getColorSchemeSelector,
65
67
  setActiveColorScheme,
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Runtime layout dimensions exposed as global CSS variables.
3
+ *
4
+ * These are NOT design tokens and are not generated by the theme's CSS-variable pipeline.
5
+ * The `--safe-area-inset-*` variables are set at runtime by `updatePageInsets` based on the
6
+ * device page insets.
7
+ *
8
+ * This node only maps theme properties to those existing variables (`var(--...)`), so consumers
9
+ * can read `theme.layout.*` instead of hardcoding the variable names.
10
+ */
11
+ export interface SafeArea {
12
+ top: string;
13
+ bottom: string;
14
+ left: string;
15
+ right: string;
16
+ }
17
+ export interface Layout {
18
+ /** Device safe-area insets (`--safe-area-inset-*`). */
19
+ safeArea: SafeArea;
20
+ }
21
+ declare const layout: Layout;
22
+ export default layout;
23
+ //# sourceMappingURL=layout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../../../styles/theme/createTheme/layout.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,MAAM;IACrB,uDAAuD;IACvD,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED,QAAA,MAAM,MAAM,EAAE,MAOb,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Runtime layout dimensions exposed as global CSS variables.
3
+ *
4
+ * These are NOT design tokens and are not generated by the theme's CSS-variable pipeline.
5
+ * The `--safe-area-inset-*` variables are set at runtime by `updatePageInsets` based on the
6
+ * device page insets.
7
+ *
8
+ * This node only maps theme properties to those existing variables (`var(--...)`), so consumers
9
+ * can read `theme.layout.*` instead of hardcoding the variable names.
10
+ */
11
+
12
+ const layout = {
13
+ safeArea: {
14
+ top: 'var(--safe-area-inset-top)',
15
+ bottom: 'var(--safe-area-inset-bottom)',
16
+ left: 'var(--safe-area-inset-left)',
17
+ right: 'var(--safe-area-inset-right)'
18
+ }
19
+ };
20
+ export default layout;