@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.
- package/README.md +0 -1
- package/account/components/Account/Account.d.ts.map +1 -1
- package/account/components/Account/Account.js +4 -3
- package/account/components/Profile/Profile.provider.js +1 -1
- package/account/components/Profile/ProfileAddressBook.d.ts.map +1 -1
- package/account/components/Profile/ProfileAddressBook.js +19 -30
- package/account/components/Profile/ProfileAddressCard.d.ts.map +1 -1
- package/account/components/Profile/ProfileAddressCard.js +43 -49
- package/account/components/Profile/ProfileForm.d.ts.map +1 -1
- package/account/components/Profile/ProfileForm.js +15 -42
- package/account/components/Profile/ProfileHeader.d.ts.map +1 -1
- package/account/components/Profile/ProfileHeader.js +8 -9
- package/account/components/ProfileContact/ProfileContact.js +15 -22
- package/admin-preview/components/FrontendSettingsPreviewBridge/FrontendSettingsPreviewBridge.d.ts +8 -0
- package/admin-preview/components/FrontendSettingsPreviewBridge/FrontendSettingsPreviewBridge.d.ts.map +1 -0
- package/admin-preview/components/FrontendSettingsPreviewBridge/FrontendSettingsPreviewBridge.js +98 -0
- package/admin-preview/components/FrontendSettingsPreviewBridge/helpers.d.ts +26 -0
- package/admin-preview/components/FrontendSettingsPreviewBridge/helpers.d.ts.map +1 -0
- package/admin-preview/components/FrontendSettingsPreviewBridge/helpers.js +61 -0
- package/admin-preview/components/FrontendSettingsPreviewBridge/index.d.ts +2 -0
- package/admin-preview/components/FrontendSettingsPreviewBridge/index.d.ts.map +1 -0
- package/admin-preview/components/FrontendSettingsPreviewBridge/index.js +1 -0
- package/admin-preview/components/FrontendSettingsPreviewBridge/types.d.ts +27 -0
- package/admin-preview/components/FrontendSettingsPreviewBridge/types.d.ts.map +1 -0
- package/admin-preview/components/FrontendSettingsPreviewBridge/types.js +1 -0
- package/admin-preview/components/index.d.ts +2 -0
- package/admin-preview/components/index.d.ts.map +1 -0
- package/admin-preview/components/index.js +1 -0
- package/admin-preview/constants/index.d.ts +6 -0
- package/admin-preview/constants/index.d.ts.map +1 -0
- package/admin-preview/constants/index.js +6 -0
- package/admin-preview/helpers/_internal/detection.d.ts +53 -0
- package/admin-preview/helpers/_internal/detection.d.ts.map +1 -0
- package/admin-preview/helpers/_internal/detection.js +93 -0
- package/admin-preview/helpers/index.d.ts +23 -0
- package/admin-preview/helpers/index.d.ts.map +1 -0
- package/admin-preview/helpers/index.js +27 -0
- package/admin-preview/hooks/index.d.ts +36 -0
- package/admin-preview/hooks/index.d.ts.map +1 -0
- package/admin-preview/hooks/index.js +74 -0
- package/admin-preview/initialization/_internal/initialFrontendSettings.d.ts +32 -0
- package/admin-preview/initialization/_internal/initialFrontendSettings.d.ts.map +1 -0
- package/admin-preview/initialization/_internal/initialFrontendSettings.js +43 -0
- package/admin-preview/initialization/awaitInitialFrontendSettings.d.ts +22 -0
- package/admin-preview/initialization/awaitInitialFrontendSettings.d.ts.map +1 -0
- package/admin-preview/initialization/awaitInitialFrontendSettings.js +84 -0
- package/back-in-stock/components/BackInStockButton/index.js +19 -22
- package/back-in-stock/components/Subscriptions/components/Subscription/index.js +22 -26
- package/cart/components/CartHeaderWide/CartHeaderWide.js +4 -3
- package/cart/components/CartItem/CartItemCoupon.js +2 -6
- package/cart/components/CartItem/CartItemCouponDelete.js +3 -3
- package/cart/components/CartItem/CartItemCouponLayout.js +1 -1
- package/cart/components/CartItem/CartItemCouponPrice.js +16 -19
- package/cart/components/CartItem/CartItemCouponTitle.js +4 -4
- package/cart/components/CartItem/CartItemProduct.js +2 -6
- package/cart/components/CartItem/CartItemProductLayout.js +6 -9
- package/cart/components/CartItem/CartItemProductLayoutWide.js +21 -16
- package/cart/components/CartItem/CartItemProductLayoutWideFulfillmentLabel.js +5 -3
- package/cart/components/CartItem/CartItemProductLayoutWideOrderDetails.js +18 -12
- package/cart/components/CartItem/CartItemProductLayoutWideRemoveItem.js +7 -14
- package/cart/components/CartItem/CartItemProductOrderDetails.js +2 -2
- package/cart/components/CartItem/CartItemProductPriceCaption.js +5 -4
- package/cart/components/CartItem/CartItemProductPriceList.js +18 -12
- package/cart/components/CartItem/CartItemProductPriceListPromotion.js +7 -7
- package/cart/components/CartItem/CartItemProductProvider.connector.js +0 -2
- package/cart/components/CartItem/CartItemProductProvider.js +3 -30
- package/cart/components/CartItem/CartItemProductProvider.types.js +0 -1
- package/cart/components/CartItem/CartItemProductTitle.js +2 -3
- package/cart/components/CartItem/CartItemQuantityPicker.js +3 -7
- package/cart/components/CartItem/CartItemSubstitution.js +1 -2
- package/cart/components/CartItems/CartItemCard.js +3 -4
- package/cart/components/CartItems/CartItemCardReservationAccordion.js +9 -10
- package/cart/components/CartItems/CartItemCardReservationLabel.js +11 -11
- package/cart/components/CartItems/CartItemCardReservationLabelChangeStore.js +6 -24
- package/cart/components/CartItems/CartItemGroupReservation.js +4 -3
- package/cart/components/CartItems/CartItemGroupReservationLabel.js +12 -10
- package/cart/components/CartItems/CartItemGroupShipping.js +7 -5
- package/cart/components/CartItems/CartItems.js +8 -12
- package/cart/components/CartItems/CartItemsHeaderWide.js +43 -18
- package/cart/components/CartItems/CartItemsSubstitution.js +3 -2
- package/cart/components/CartSummaryWide/CartSummaryWide.js +9 -16
- package/cart/components/CartSummaryWide/CartSummaryWideCheckoutButton.js +9 -27
- package/cart/components/PaymentBar/PaymentBarCheckoutButton.js +8 -34
- package/cart/components/PaymentBar/PaymentBarContent.js +4 -10
- package/cart/components/PaymentBar/PaymentBarPromotionCouponMessages.js +6 -2
- package/cart/components/PaymentBar/PaymentBarPromotionCoupons.js +5 -5
- package/cart/components/PaymentBar/PaymentBarPromotionalText.js +9 -10
- package/cart/components/PaymentBar/testUtils/mockFactories.js +57 -0
- package/cart/components/Substitution/connector.js +1 -1
- package/cart/components/SupplementalContent/SupplementalContent.connector.js +2 -1
- package/cart/components/SupplementalContent/SupplementalContent.js +6 -7
- package/category/components/CategoryImage/connector.js +1 -1
- package/category/components/CategoryImage/index.js +24 -17
- package/category/components/CategoryList/index.js +4 -8
- package/checkout/components/AddressBook/AddressList.js +19 -29
- package/checkout/components/AddressBookContact/AddressBookContact.js +6 -6
- package/checkout/components/Checkout/CheckoutActions.js +4 -3
- package/checkout/components/Checkout/CheckoutAddress.js +33 -15
- package/checkout/components/Checkout/CheckoutHeader.js +9 -11
- package/checkout/components/Checkout/CheckoutPickupContactForm.js +2 -2
- package/checkout/components/Checkout/CheckoutSection.js +26 -15
- package/checkout/components/Checkout/CheckoutSectionInfo.js +14 -17
- package/checkout/components/Checkout/CheckoutSectionMessages.js +5 -4
- package/checkout/components/CheckoutConfirmation/CheckoutConfirmation.js +20 -20
- package/checkout/components/CheckoutConfirmation/CheckoutConfirmationSection.js +44 -62
- package/checkout/components/GuestCheckout/GuestCheckoutPickup.js +7 -4
- package/checkout/components/PaymentMethodButton/PaymentMethodButton.js +3 -3
- package/checkout/components/ResponsiveBackButton/ResponsiveBackButton.js +7 -17
- package/checkout/components/ShippingMethods/ShippingMethod.js +6 -5
- package/checkout/components/ShippingMethods/ShippingMethods.js +11 -8
- package/checkout/components/SupplementalContent/SupplementalContent.connector.js +2 -1
- package/checkout/components/SupplementalContent/SupplementalContent.js +6 -7
- package/checkout/paymentMethods/index.js +5 -4
- package/checkout/paymentMethods/paypal/PaypalPayButton.js +7 -6
- package/checkout/paymentMethods/stripe/StripeCreditCard.js +6 -9
- package/components/Badge/Badge.d.ts +30 -0
- package/components/Badge/Badge.d.ts.map +1 -0
- package/components/Badge/Badge.js +48 -0
- package/components/Badge/index.d.ts +3 -0
- package/components/Badge/index.d.ts.map +1 -0
- package/components/Badge/index.js +1 -0
- package/components/Card/Card.d.ts +27 -0
- package/components/Card/Card.d.ts.map +1 -0
- package/components/Card/Card.js +57 -0
- package/components/Card/index.d.ts +4 -0
- package/components/Card/index.d.ts.map +1 -0
- package/components/Card/index.js +2 -0
- package/components/Card/useCardAppearance.d.ts +11 -0
- package/components/Card/useCardAppearance.d.ts.map +1 -0
- package/components/Card/useCardAppearance.js +22 -0
- package/components/ChipLayout/index.js +6 -8
- package/components/Form/Builder/ElementPhoneNumber.d.ts.map +1 -1
- package/components/Form/Builder/ElementPhoneNumber.js +2 -6
- package/components/Form/Builder/stylePresets.d.ts.map +1 -1
- package/components/Form/Builder/stylePresets.js +12 -17
- package/components/Logo/connector.js +3 -1
- package/components/Logo/index.d.ts.map +1 -1
- package/components/Logo/index.js +3 -6
- package/components/Menu/components/Item/index.d.ts.map +1 -1
- package/components/Menu/components/Item/index.js +5 -17
- package/components/Menu/index.d.ts.map +1 -1
- package/components/Menu/index.js +2 -3
- package/components/MessageBar/MessageBar.d.ts.map +1 -1
- package/components/MessageBar/MessageBar.js +35 -42
- package/components/NavigationHandler/connector.js +1 -1
- package/components/Paper/Paper.d.ts +48 -0
- package/components/Paper/Paper.d.ts.map +1 -0
- package/components/Paper/Paper.js +64 -0
- package/components/Paper/index.d.ts +3 -0
- package/components/Paper/index.d.ts.map +1 -0
- package/components/Paper/index.js +1 -0
- package/components/Picker/components/Button/index.js +3 -3
- package/components/Picker/components/List/index.js +3 -3
- package/components/Picker/components/Modal/index.d.ts.map +1 -1
- package/components/Picker/components/Modal/index.js +2 -3
- package/components/PickerUtilize/components/Button/index.d.ts.map +1 -1
- package/components/PickerUtilize/components/Button/index.js +6 -10
- package/components/PickerUtilize/index.d.ts +2 -1
- package/components/PickerUtilize/index.d.ts.map +1 -1
- package/components/Radio/Radio.js +6 -5
- package/components/RadioCard/RadioCard.d.ts.map +1 -1
- package/components/RadioCard/RadioCard.js +2 -1
- package/components/ResponsiveContainer/breakpoints.js +2 -2
- package/components/ScrollHeader/index.js +3 -3
- package/components/SheetList/components/Item/index.js +18 -23
- package/components/SheetList/index.d.ts.map +1 -1
- package/components/SheetList/index.js +3 -7
- package/components/SideNavigation/SideNavigationCategories.js +2 -7
- package/components/SideNavigation/SideNavigationCategoriesItem.js +2 -2
- package/components/SideNavigation/SideNavigationContent.js +3 -3
- package/components/SideNavigation/SideNavigationItem.d.ts.map +1 -1
- package/components/SideNavigation/SideNavigationItem.js +3 -4
- package/components/SideNavigation/SideNavigationNestedItem.js +2 -2
- package/components/Switch/index.d.ts.map +1 -1
- package/components/Switch/index.js +6 -7
- package/components/Tabs/components/Tab.d.ts.map +1 -1
- package/components/Tabs/components/Tab.js +14 -16
- package/components/Tabs/components/TabIndicator.js +3 -3
- package/components/TextLink/TextLink.d.ts.map +1 -1
- package/components/TextLink/TextLink.js +8 -26
- package/components/Toggle/index.js +5 -5
- package/components/Typography/Typography.d.ts +87 -124
- package/components/Typography/Typography.d.ts.map +1 -0
- package/components/Typography/Typography.js +72 -57
- package/components/Typography/index.d.ts +2 -1
- package/components/Typography/index.d.ts.map +1 -0
- package/components/View/components/Above/index.d.ts.map +1 -1
- package/components/View/components/Above/index.js +3 -1
- package/components/View/components/Below/index.d.ts.map +1 -1
- package/components/View/components/Below/index.js +3 -1
- package/components/View/components/Content/index.d.ts +2 -1
- package/components/View/components/Content/index.d.ts.map +1 -1
- package/components/View/components/Content/index.js +6 -3
- package/components/View/index.d.ts.map +1 -1
- package/components/View/index.js +1 -5
- package/components/constants.d.ts +6 -0
- package/components/constants.d.ts.map +1 -0
- package/components/index.d.ts +5 -1
- package/components/index.d.ts.map +1 -1
- package/components/index.js +4 -2
- package/components/v2/Button/Button.d.ts +24 -13
- package/components/v2/Button/Button.d.ts.map +1 -1
- package/components/v2/Button/Button.js +139 -41
- package/components/v2/ButtonBase/ButtonBase.d.ts +50 -10
- package/components/v2/ButtonBase/ButtonBase.d.ts.map +1 -1
- package/components/v2/ButtonBase/ButtonBase.js +192 -17
- package/components/v2/ButtonBase/Ripple.d.ts +2 -1
- package/components/v2/ButtonBase/Ripple.d.ts.map +1 -1
- package/components/v2/ButtonBase/hooks.d.ts +0 -1
- package/components/v2/ButtonBase/hooks.d.ts.map +1 -1
- package/components/v2/ButtonBase/hooks.js +36 -12
- package/components/v2/ButtonGroup/ButtonGroup.d.ts +11 -5
- package/components/v2/ButtonGroup/ButtonGroup.d.ts.map +1 -1
- package/components/v2/ButtonGroup/ButtonGroup.js +49 -26
- package/components/v2/CircularProgress/CircularProgress.d.ts.map +1 -1
- package/components/v2/CircularProgress/CircularProgress.js +10 -5
- package/core/action-creators/merchantSettings.d.ts +1 -1
- package/core/action-creators/merchantSettings.d.ts.map +1 -1
- package/core/action-creators/merchantSettings.js +3 -11
- package/core/action-creators/shopSettings.d.ts +1 -2
- package/core/action-creators/shopSettings.d.ts.map +1 -1
- package/core/action-creators/shopSettings.js +3 -21
- package/core/constants/merchantSettings.d.ts +1 -11
- package/core/constants/merchantSettings.d.ts.map +1 -1
- package/core/constants/merchantSettings.js +3 -11
- package/core/constants/shopSettings.d.ts +1 -27
- package/core/constants/shopSettings.d.ts.map +1 -1
- package/core/constants/shopSettings.js +3 -27
- package/core/helpers/getFullImageSource.d.ts +5 -1
- package/core/helpers/getFullImageSource.d.ts.map +1 -1
- package/core/helpers/getFullImageSource.js +30 -14
- package/core/helpers/scrollContainer.js +2 -2
- package/core/hooks/html/useLoadImage.d.ts +3 -3
- package/core/hooks/html/useLoadImage.d.ts.map +1 -1
- package/core/hooks/html/useLoadImage.js +2 -2
- package/core/hooks/useLocalStorage.d.ts +8 -0
- package/core/hooks/useLocalStorage.d.ts.map +1 -1
- package/core/hooks/useLocalStorage.js +22 -15
- package/core/hooks/useNavigation.d.ts +10 -2
- package/core/hooks/useNavigation.d.ts.map +1 -1
- package/core/hooks/useNavigation.js +1 -2
- package/core/initialization/fetchSettings.d.ts +12 -0
- package/core/initialization/fetchSettings.d.ts.map +1 -0
- package/core/initialization/fetchSettings.js +134 -0
- package/core/initialization/index.d.ts +33 -2
- package/core/initialization/index.d.ts.map +1 -1
- package/core/initialization/index.js +44 -102
- package/core/router/conductor.d.ts +9 -0
- package/core/router/helpers.d.ts +28 -15
- package/core/router/helpers.d.ts.map +1 -1
- package/core/router/helpers.js +8 -8
- package/core/selectors/merchantSettings.d.ts +1 -20
- package/core/selectors/merchantSettings.d.ts.map +1 -1
- package/core/selectors/merchantSettings.js +3 -33
- package/core/selectors/shopSettings.d.ts +1 -53
- package/core/selectors/shopSettings.d.ts.map +1 -1
- package/core/selectors/shopSettings.js +3 -80
- package/development/components/ClientInformation/ClientInformation.js +5 -3
- package/development/components/DevelopmentSettings/DevelopmentSettings.js +6 -5
- package/development/components/SimulatedInsets/SimulatedInsetBottom.js +3 -3
- package/development/components/SimulatedInsets/SimulatedInsetTop.js +6 -6
- package/favorites/components/CommentDialog/CommentDialog.js +17 -15
- package/favorites/components/FavoriteButtonWide/FavoriteButtonWide.js +9 -20
- package/favorites/components/Item/Item.d.ts +1 -1
- package/favorites/components/Item/Item.d.ts.map +1 -1
- package/favorites/components/Item/Item.js +21 -22
- package/favorites/components/Item/ItemCharacteristics.d.ts.map +1 -1
- package/favorites/components/Item/ItemCharacteristics.js +6 -14
- package/favorites/components/Item/ItemNotes.js +23 -20
- package/favorites/components/Item/ItemQuantity.js +1 -1
- package/favorites/components/List/List.d.ts +1 -1
- package/favorites/components/List/List.d.ts.map +1 -1
- package/favorites/components/List/List.js +0 -5
- package/favorites/components/List/ListContent.js +4 -5
- package/favorites/components/ListChooser/ListChooserItem.js +1 -1
- package/favorites/components/Lists/Lists.js +19 -8
- package/favorites/components/Lists/ListsModal.d.ts.map +1 -1
- package/favorites/components/Lists/ListsModal.js +4 -11
- package/favorites/components/RemoveButton/RemoveButton.d.ts.map +1 -1
- package/favorites/components/RemoveButton/RemoveButton.js +1 -2
- package/filter/components/FilterItem/index.js +5 -8
- package/filter/components/FilterPageContent/components/ApplyButton/index.js +8 -10
- package/filter/components/FilterPageContent/components/ResetButton/index.js +8 -6
- package/filter/components/FilterPageContent/components/Selector/components/Toggle/index.js +3 -3
- package/filter/components/FilterPageContent/components/Selector/components/ValueButton/index.js +4 -5
- package/filter/components/PriceSlider/components/Label/index.js +9 -13
- package/filter/components/PriceSlider/index.js +9 -9
- package/filter/selectors/index.js +2 -2
- package/locations/components/Cart/CartContextMenuChangeFulfillmentContent.js +1 -1
- package/locations/components/ChangeLocationButton/ChangeLocationButton.js +10 -14
- package/locations/components/FulfillmentPath/FulfillmentPathItem.js +1 -7
- package/locations/components/FulfillmentSelector/FulfillmentSelector.connector.js +2 -2
- package/locations/components/FulfillmentSelector/FulfillmentSelectorAlternativeLocation.js +12 -10
- package/locations/components/FulfillmentSelector/FulfillmentSelectorHeader.js +1 -1
- package/locations/components/FulfillmentSelector/FulfillmentSelectorImpossibleError.js +3 -3
- package/locations/components/FulfillmentSelector/FulfillmentSelectorItem.js +4 -4
- package/locations/components/FulfillmentSelector/FulfillmentSelectorLocation.js +18 -15
- package/locations/components/FulfillmentSelector/FulfillmentSelectorLocationMethodNotAvailable.js +3 -3
- package/locations/components/FulfillmentSheet/FulfillmentSheetContent.js +4 -8
- package/locations/components/FulfillmentSlotSwitcher/FulfillmentSlotDialog.js +25 -28
- package/locations/components/FulfillmentSlotSwitcher/FulfillmentSlotProvider.connector.js +1 -1
- package/locations/components/FulfillmentSlotSwitcher/FulfillmentSlotSwitcher.connector.js +1 -1
- package/locations/components/FulfillmentSlotSwitcher/FulfillmentSlotSwitcher.js +5 -5
- package/locations/components/FulfillmentSlotSwitcher/FulfillmentSlotSwitcherBar.js +19 -28
- package/locations/components/FulfillmentSlotSwitcher/FulfillmentSlotSwitcherDefault.js +20 -23
- package/locations/components/GlobalLocationSelector/GlobalLocationSelector.js +1 -1
- package/locations/components/GlobalLocationSwitcher/GlobalLocationSwitcher.connector.js +1 -1
- package/locations/components/GlobalLocationSwitcher/GlobalLocationSwitcherBar.js +18 -28
- package/locations/components/GlobalLocationSwitcher/GlobalLocationSwitcherDefault.js +19 -20
- package/locations/components/ReservationResponses/ReservationError.js +9 -6
- package/locations/components/ReservationResponses/ReservationSuccess.js +14 -9
- package/locations/components/ReserveForm/ReserveForm.js +11 -11
- package/locations/components/ReserveForm/ReserveFormPhone.js +7 -9
- package/locations/components/StockInfo/StockInfo.js +4 -2
- package/locations/components/StockInfoLists/index.js +5 -7
- package/locations/components/StoreDetails/components/FindMoreStores.js +11 -12
- package/locations/components/StoreDetails/components/GetDirectionsButton.js +5 -9
- package/locations/components/StoreDetails/components/StoreDetails.js +27 -34
- package/locations/components/StoreDetails/components/StoreFinderMap.js +4 -4
- package/locations/components/StoreDetails/components/StoresNearby.js +5 -3
- package/locations/components/StoreDetails/components/StoresNearbyListItem.js +36 -30
- package/locations/components/StoreFinder/StoreFinder.js +1 -1
- package/locations/components/StoreFinder/StoreFinderLocationDetails.js +7 -6
- package/locations/components/StoreFinder/StoreFinderLocationHeader.js +17 -21
- package/locations/components/StoreFinder/StoreFinderLocations.js +2 -6
- package/locations/components/StoreFinder/StoreFinderSelectLocationButton.js +5 -11
- package/locations/components/StoreFinder/StoreFinderStoreInfoButton.js +5 -11
- package/locations/components/StoreList/StoreAddress.js +3 -3
- package/locations/components/StoreList/StoreAddressShort.js +10 -12
- package/locations/components/StoreList/StoreDetails.js +1 -2
- package/locations/components/StoreList/StoreDetailsLine.js +3 -3
- package/locations/components/StoreList/StoreDistance.js +6 -17
- package/locations/components/StoreList/StoreHeader.js +7 -7
- package/locations/components/StoreList/StoreHoursToday.js +3 -3
- package/locations/components/StoreList/StoreListLocations.js +20 -18
- package/locations/components/StoreList/StoreListProduct.js +4 -6
- package/locations/components/StoreList/StoreListProductInfo.js +9 -6
- package/locations/components/StoreList/StoreListProductName.js +4 -3
- package/locations/components/StoreList/StoreListSearch.js +11 -11
- package/locations/components/StoreList/StoreListSearchRadius.js +4 -5
- package/locations/components/StoreList/StoreOpeningHours.js +10 -12
- package/locations/components/StoreList/StorePhoneNumber.js +10 -12
- package/locations/components/StoreList/StoreSelectLocationButton.js +5 -11
- package/locations/helpers/showInventoryInLists.js +1 -1
- package/locations/providers/FulfillmentProvider.connector.js +1 -1
- package/locations/reducers/index.js +1 -1
- package/locations/selectors/index.js +2 -1
- package/locations/subscriptions.js +2 -2
- package/login/components/ForgotPassword/ForgotPassword.js +24 -36
- package/orders/components/OrderDetails/OrderDetailsAuthenticate.js +6 -8
- package/orders/components/OrderDetails/OrderDetailsContent.js +5 -4
- package/orders/components/OrderDetails/OrderDetailsOrderHeader.js +7 -8
- package/orders/components/OrderDetails/OrderDetailsOrderPickupLocation.js +2 -2
- package/orders/components/OrderHistory/OrderHistoryList.d.ts.map +1 -1
- package/orders/components/OrderHistory/OrderHistoryList.js +9 -14
- package/orders/components/OrderHistory/OrderHistoryTable.d.ts.map +1 -1
- package/orders/components/OrderHistory/OrderHistoryTable.js +5 -1
- package/package.json +11 -10
- package/page/components/NotFound.d.ts +7 -0
- package/page/components/NotFound.d.ts.map +1 -0
- package/page/components/NotFound.js +16 -15
- package/page/components/ResponsiveWidgetImage/ResponsiveWidgetImage.d.ts +52 -0
- package/page/components/ResponsiveWidgetImage/ResponsiveWidgetImage.d.ts.map +1 -0
- package/page/components/ResponsiveWidgetImage/ResponsiveWidgetImage.js +4 -4
- package/page/components/ResponsiveWidgetImage/index.d.ts +2 -0
- package/page/components/ResponsiveWidgetImage/index.d.ts.map +1 -0
- package/page/components/WidgetHeadline/WidgetHeadline.js +4 -3
- package/page/components/WidgetRichText/WidgetRichText.d.ts +25 -0
- package/page/components/WidgetRichText/WidgetRichText.d.ts.map +1 -0
- package/page/components/WidgetRichText/WidgetRichText.js +1 -1
- package/page/components/WidgetRichText/index.d.ts +2 -0
- package/page/components/WidgetRichText/index.d.ts.map +1 -0
- package/page/components/WidgetVideo/WidgetVideo.d.ts +43 -0
- package/page/components/WidgetVideo/WidgetVideo.d.ts.map +1 -0
- package/page/components/WidgetVideo/WidgetVideo.js +33 -39
- package/page/components/WidgetVideo/index.d.ts +2 -0
- package/page/components/WidgetVideo/index.d.ts.map +1 -0
- package/page/components/Widgets/Overlay.d.ts +17 -0
- package/page/components/Widgets/Overlay.d.ts.map +1 -0
- package/page/components/Widgets/Overlay.js +24 -38
- package/page/components/Widgets/Tooltip.d.ts +20 -0
- package/page/components/Widgets/Tooltip.d.ts.map +1 -0
- package/page/components/Widgets/Tooltip.js +13 -18
- package/page/components/Widgets/Widget.d.ts +32 -0
- package/page/components/Widgets/Widget.d.ts.map +1 -0
- package/page/components/Widgets/Widget.js +11 -22
- package/page/components/Widgets/WidgetContext.d.ts +32 -38
- package/page/components/Widgets/WidgetContext.d.ts.map +1 -0
- package/page/components/Widgets/WidgetContext.js +2 -8
- package/page/components/Widgets/WidgetProvider.d.ts +25 -0
- package/page/components/Widgets/WidgetProvider.d.ts.map +1 -0
- package/page/components/Widgets/WidgetProvider.js +5 -12
- package/page/components/Widgets/Widgets.d.ts +16 -0
- package/page/components/Widgets/Widgets.d.ts.map +1 -0
- package/page/components/Widgets/Widgets.js +5 -12
- package/page/components/Widgets/WidgetsPreviewContext.d.ts +21 -0
- package/page/components/Widgets/WidgetsPreviewContext.d.ts.map +1 -0
- package/page/components/Widgets/WidgetsPreviewContext.js +5 -7
- package/page/components/Widgets/WidgetsPreviewProvider.d.ts +18 -0
- package/page/components/Widgets/WidgetsPreviewProvider.d.ts.map +1 -0
- package/page/components/Widgets/WidgetsPreviewProvider.js +5 -6
- package/page/components/Widgets/constants.d.ts +5 -0
- package/page/components/Widgets/constants.d.ts.map +1 -0
- package/page/components/Widgets/constants.js +1 -4
- package/page/components/Widgets/events.d.ts +38 -0
- package/page/components/Widgets/events.d.ts.map +1 -0
- package/page/components/Widgets/events.js +8 -12
- package/page/components/Widgets/helpers.d.ts +50 -0
- package/page/components/Widgets/helpers.d.ts.map +1 -0
- package/page/components/Widgets/helpers.js +8 -13
- package/page/components/Widgets/hooks.d.ts +13 -0
- package/page/components/Widgets/hooks.d.ts.map +1 -0
- package/page/components/Widgets/hooks.js +15 -104
- package/page/components/Widgets/index.d.ts +3 -0
- package/page/components/Widgets/index.d.ts.map +1 -0
- package/page/components/Widgets/types.d.ts +111 -113
- package/page/components/Widgets/types.d.ts.map +1 -0
- package/page/components/Widgets/types.js +1 -0
- package/page/components/index.d.ts +5 -0
- package/page/components/index.d.ts.map +1 -0
- package/page/constants/actionTypes.d.ts +4 -0
- package/page/constants/actionTypes.d.ts.map +1 -0
- package/page/constants/index.d.ts +25 -0
- package/page/constants/index.d.ts.map +1 -0
- package/page/constants/index.js +7 -2
- package/page/helpers/index.d.ts +70 -62
- package/page/helpers/index.d.ts.map +1 -0
- package/page/helpers/index.js +31 -29
- package/page/hooks/index.d.ts +54 -53
- package/page/hooks/index.d.ts.map +1 -0
- package/page/hooks/index.js +20 -15
- package/page/selectors/index.d.ts +32 -0
- package/page/selectors/index.d.ts.map +1 -0
- package/page/selectors/index.js +2 -1
- package/page/widgets/Button/Button.js +2 -3
- package/page/widgets/HTML/HTML.js +5 -9
- package/page/widgets/NestedCategoryFilter/NestedCategoryFilter.js +8 -13
- package/page/widgets/NestedCategoryFilter/components/Picker/components/SheetItem/index.js +2 -2
- package/page/widgets/NestedCategoryFilter/components/Picker/index.js +7 -9
- package/page/widgets/Placeholder/Placeholder.js +7 -8
- package/page/widgets/ProductList/ProductList.js +18 -14
- package/page/widgets/ProductSlider/ProductSlider.js +1 -15
- package/page/widgets/Video/Video.d.ts +6 -0
- package/page/widgets/Video/Video.d.ts.map +1 -0
- package/page/widgets/Video/Video.js +0 -2
- package/page/widgets/Video/hooks.d.ts +53 -0
- package/page/widgets/Video/hooks.d.ts.map +1 -0
- package/page/widgets/Video/hooks.js +4 -12
- package/page/widgets/Video/index.d.ts +2 -0
- package/page/widgets/Video/index.d.ts.map +1 -0
- package/product/components/Availability/Availability.js +0 -4
- package/product/components/Characteristics/Characteristic/components/SheetItem/index.js +4 -8
- package/product/components/Characteristics/Characteristic/index.js +9 -12
- package/product/components/Characteristics/Swatch/index.js +3 -7
- package/product/components/Characteristics/transition.js +4 -4
- package/product/components/Description/index.js +5 -8
- package/product/components/EffectivityDates/index.js +23 -17
- package/product/components/FilterBar/components/Content/components/FilterButton/index.js +7 -13
- package/product/components/FilterBar/components/Content/components/Sort/index.js +7 -13
- package/product/components/FilterBar/components/FilterModal/FilterModalContent.js +3 -7
- package/product/components/FilterBar/components/FilterModal/FilterModalTitle.js +13 -12
- package/product/components/FilterBar/index.js +4 -8
- package/product/components/Header/PriceStriked/index.js +4 -8
- package/product/components/Header/Shipping/index.js +3 -3
- package/product/components/Header/Tiers/components/Tier/index.js +3 -3
- package/product/components/Header/Tiers/index.js +5 -3
- package/product/components/MapPriceHint/index.js +8 -7
- package/product/components/Media/FeaturedMedia.js +7 -1
- package/product/components/Media/MediaImage.js +25 -24
- package/product/components/Media/MediaPlaceholder.js +7 -11
- package/product/components/MediaSlider/components/MediaImage/index.js +6 -2
- package/product/components/MediaSlider/constants.js +1 -12
- package/product/components/Options/components/TextOption/components/OptionInfo/index.js +18 -18
- package/product/components/Options/components/TextOption/index.js +8 -11
- package/product/components/OrderQuantityHint/index.js +17 -8
- package/product/components/PriceDifference/index.js +4 -8
- package/product/components/PriceInfo/PriceInfo.connector.js +2 -2
- package/product/components/PriceInfo/PriceInfo.js +3 -4
- package/product/components/ProductCard/index.js +39 -27
- package/product/components/ProductDiscountBadge/index.js +3 -3
- package/product/components/ProductGrid/components/Item/components/ItemDetails/index.js +12 -4
- package/product/components/ProductGrid/components/Item/components/ItemFavoritesButton/index.js +1 -1
- package/product/components/ProductGrid/components/Item/components/ItemImage/index.js +3 -6
- package/product/components/ProductGrid/components/Item/components/ItemName/index.js +9 -5
- package/product/components/ProductGrid/components/Item/index.js +10 -6
- package/product/components/ProductGrid/components/Layout/index.js +19 -4
- package/product/components/ProductGrid/constants.d.ts +2 -0
- package/product/components/ProductGrid/constants.d.ts.map +1 -0
- package/product/components/ProductGrid/constants.js +1 -0
- package/product/components/ProductGrid/hooks.d.ts +11 -0
- package/product/components/ProductGrid/hooks.d.ts.map +1 -0
- package/product/components/ProductGrid/hooks.js +48 -0
- package/product/components/ProductGrid/index.js +3 -6
- package/product/components/ProductGridPrice/index.js +8 -15
- package/product/components/ProductImage/ProductImage.d.ts +42 -0
- package/product/components/ProductImage/ProductImage.d.ts.map +1 -0
- package/product/components/ProductImage/ProductImage.js +158 -0
- package/product/components/ProductImage/ProductImagePlaceholder.d.ts +23 -0
- package/product/components/ProductImage/ProductImagePlaceholder.d.ts.map +1 -0
- package/product/components/ProductImage/ProductImagePlaceholder.js +18 -26
- package/product/components/ProductImage/constants.d.ts +7 -0
- package/product/components/ProductImage/constants.d.ts.map +1 -0
- package/product/components/ProductImage/constants.js +6 -0
- package/product/components/ProductImage/hooks.d.ts +8 -0
- package/product/components/ProductImage/hooks.d.ts.map +1 -0
- package/product/components/ProductImage/hooks.js +32 -0
- package/product/components/ProductImage/index.d.ts +3 -0
- package/product/components/ProductImage/index.d.ts.map +1 -0
- package/product/components/ProductImage/index.js +1 -203
- package/product/components/ProductList/components/Item/index.js +10 -12
- package/product/components/ProductList/components/Layout/index.js +8 -20
- package/product/components/ProductName/ProductName.d.ts +1 -1
- package/product/components/ProductName/ProductName.d.ts.map +1 -1
- package/product/components/ProductName/ProductNameContent.d.ts +2 -1
- package/product/components/ProductName/ProductNameContent.d.ts.map +1 -1
- package/product/components/ProductProperties/Content.js +1 -1
- package/product/components/ProductProperties/Group.js +6 -4
- package/product/components/ProductProperties/GroupedProperties.js +1 -1
- package/product/components/ProductProperties/Wrapper.js +4 -2
- package/product/components/ProductRatingStars/ProductRatingStars.d.ts +1 -1
- package/product/components/ProductRatingStars/ProductRatingStars.js +2 -4
- package/product/components/ProductSlider/constants.d.ts +3 -0
- package/product/components/ProductSlider/constants.d.ts.map +1 -0
- package/product/components/ProductSlider/constants.js +2 -0
- package/product/components/ProductSlider/hooks.d.ts +7 -0
- package/product/components/ProductSlider/hooks.d.ts.map +1 -0
- package/product/components/ProductSlider/hooks.js +40 -0
- package/product/components/ProductSlider/index.js +8 -8
- package/product/components/Rating/index.js +2 -4
- package/product/components/RelationsSlider/RelationsSheet.js +1 -5
- package/product/components/RelationsSlider/RelationsSliderContent.js +7 -6
- package/product/components/RelationsSlider/constants.d.ts +3 -0
- package/product/components/RelationsSlider/constants.d.ts.map +1 -0
- package/product/components/RelationsSlider/constants.js +2 -1
- package/product/components/RelationsSlider/hooks.d.ts +6 -0
- package/product/components/RelationsSlider/hooks.d.ts.map +1 -0
- package/product/components/RelationsSlider/hooks.js +34 -0
- package/product/components/Swatch/SwatchContent.js +3 -7
- package/product/components/Swatches/Swatches.js +3 -7
- package/product/components/UnitQuantityPicker/ProductUnitQuantityPicker.js +4 -4
- package/product/components/UnitQuantityPicker/UnitQuantityPicker.d.ts.map +1 -1
- package/product/components/UnitQuantityPicker/UnitQuantityPicker.js +24 -45
- package/product/helpers/index.js +29 -11
- package/product/hooks/index.js +3 -1
- package/product/hooks/useLoadProductImage.js +4 -2
- package/product/hooks/useShowEmptyRatingStars.d.ts +7 -0
- package/product/hooks/useShowEmptyRatingStars.d.ts.map +1 -0
- package/product/hooks/useShowEmptyRatingStars.js +21 -0
- package/product/index.js +0 -1
- package/push-opt-in/components/PushOptInModal/index.js +17 -17
- package/registration/components/GuestRegistration/GuestRegistrationFormPickup.js +2 -2
- package/registration/components/Registration/RegistrationContent.js +2 -1
- package/registration/components/Registration/RegistrationFormActions.js +4 -4
- package/registration/components/Registration/RegistrationFormBase.config.js +2 -1
- package/registration/providers/GuestRegistrationProvider.actions.js +1 -1
- package/registration/providers/GuestRegistrationProvider.connector.js +3 -2
- package/registration/providers/GuestRegistrationProvider.js +2 -1
- package/registration/providers/RegistrationProvider.actions.js +4 -2
- package/registration/providers/RegistrationProvider.connector.js +2 -2
- package/registration/providers/RegistrationProvider.constraints.js +1 -1
- package/registration/providers/RegistrationProvider.js +2 -1
- package/reviews/components/Reviews/components/AllReviewsLink/index.js +6 -6
- package/reviews/components/Reviews/components/Header/components/NoReviews/index.js +1 -1
- package/reviews/components/Reviews/components/Header/components/ReviewsExcerpt/index.js +3 -3
- package/reviews/components/Reviews/components/Header/components/WriteReviewLink/index.js +4 -3
- package/reviews/components/Reviews/components/List/components/Info/index.js +16 -26
- package/reviews/components/Reviews/components/List/components/Text/index.js +4 -2
- package/reviews/components/Reviews/components/List/components/Title/index.js +3 -3
- package/reviews/components/Reviews/components/List/index.js +1 -5
- package/reviews/components/Reviews/components/RatingCount/index.js +13 -15
- package/reviews/components/Reviews/components/ReviewsInfo/index.js +9 -9
- package/settings/action-creators/appSettings.d.ts +12 -0
- package/settings/action-creators/appSettings.d.ts.map +1 -0
- package/settings/action-creators/appSettings.js +10 -0
- package/settings/action-creators/merchantSettings.d.ts +2 -0
- package/settings/action-creators/merchantSettings.d.ts.map +1 -0
- package/settings/action-creators/merchantSettings.js +11 -0
- package/settings/action-creators/shopSettings.d.ts +3 -0
- package/settings/action-creators/shopSettings.d.ts.map +1 -0
- package/settings/action-creators/shopSettings.js +21 -0
- package/settings/constants/appSettings.d.ts +5 -0
- package/settings/constants/appSettings.d.ts.map +1 -0
- package/settings/constants/appSettings.js +6 -0
- package/settings/constants/imageSettings.d.ts +52 -0
- package/settings/constants/imageSettings.d.ts.map +1 -0
- package/settings/constants/imageSettings.js +69 -0
- package/settings/constants/merchantSettings.d.ts +12 -0
- package/settings/constants/merchantSettings.d.ts.map +1 -0
- package/settings/constants/merchantSettings.js +11 -0
- package/settings/constants/shopSettings.d.ts +28 -0
- package/settings/constants/shopSettings.d.ts.map +1 -0
- package/settings/constants/shopSettings.js +27 -0
- package/settings/helpers/index.d.ts +3 -0
- package/settings/helpers/index.d.ts.map +1 -0
- package/settings/helpers/index.js +1 -0
- package/settings/helpers/resolveImageSettings.d.ts +70 -0
- package/settings/helpers/resolveImageSettings.d.ts.map +1 -0
- package/settings/helpers/resolveImageSettings.js +171 -0
- package/settings/helpers/toImageQuality.d.ts +7 -0
- package/settings/helpers/toImageQuality.d.ts.map +1 -0
- package/settings/helpers/toImageQuality.js +44 -0
- package/settings/helpers/toThumborColor.d.ts +15 -0
- package/settings/helpers/toThumborColor.d.ts.map +1 -0
- package/settings/helpers/toThumborColor.js +51 -0
- package/settings/hooks/index.d.ts +2 -0
- package/settings/hooks/index.d.ts.map +1 -0
- package/settings/hooks/index.js +1 -0
- package/settings/hooks/useImageSettings.d.ts +28 -0
- package/settings/hooks/useImageSettings.d.ts.map +1 -0
- package/settings/hooks/useImageSettings.js +39 -0
- package/settings/reducers/appSettings.d.ts +18 -0
- package/settings/reducers/appSettings.d.ts.map +1 -0
- package/settings/reducers/appSettings.js +134 -0
- package/settings/reducers/index.d.ts +15 -0
- package/settings/reducers/index.d.ts.map +1 -0
- package/{core → settings}/reducers/index.js +4 -3
- package/settings/reducers/merchantSettings.d.ts +18 -0
- package/settings/reducers/merchantSettings.d.ts.map +1 -0
- package/{core → settings}/reducers/merchantSettings.js +9 -3
- package/settings/reducers/shopSettings.d.ts +28 -0
- package/settings/reducers/shopSettings.d.ts.map +1 -0
- package/{core → settings}/reducers/shopSettings.js +10 -4
- package/settings/selectors/appSettings.d.ts +157 -0
- package/settings/selectors/appSettings.d.ts.map +1 -0
- package/settings/selectors/appSettings.js +97 -0
- package/settings/selectors/merchantSettings.d.ts +21 -0
- package/settings/selectors/merchantSettings.d.ts.map +1 -0
- package/settings/selectors/merchantSettings.js +34 -0
- package/settings/selectors/shopSettings.d.ts +54 -0
- package/settings/selectors/shopSettings.d.ts.map +1 -0
- package/settings/selectors/shopSettings.js +81 -0
- package/settings/types/appSettings.d.ts +276 -0
- package/settings/types/appSettings.d.ts.map +1 -0
- package/settings/types/appSettings.js +124 -0
- package/styles/helpers/index.d.ts +2 -0
- package/styles/helpers/index.js +2 -0
- package/styles/helpers/loadFontCss.d.ts +22 -0
- package/styles/helpers/loadFontCss.d.ts.map +1 -0
- package/styles/helpers/loadFontCss.js +138 -0
- package/styles/helpers/loadThemeCss.d.ts +14 -0
- package/styles/helpers/loadThemeCss.d.ts.map +1 -0
- package/styles/helpers/loadThemeCss.js +123 -0
- package/styles/helpers/setPageBackgroundColor.js +2 -2
- package/styles/index.d.ts +1 -1
- package/styles/index.d.ts.map +1 -1
- package/styles/index.js +1 -1
- package/styles/reset/root.js +23 -4
- package/styles/reset/typographyCustomProps.d.ts +12 -0
- package/styles/reset/typographyCustomProps.d.ts.map +1 -0
- package/styles/reset/typographyCustomProps.js +11 -0
- package/styles/theme/createDefaultThemeOptions/index.d.ts.map +1 -1
- package/styles/theme/createDefaultThemeOptions/index.js +179 -7
- package/styles/theme/createTheme/createComponents.types.d.ts +266 -0
- package/styles/theme/createTheme/createComponents.types.d.ts.map +1 -1
- package/styles/theme/createTheme/createComponents.types.js +266 -0
- package/styles/theme/createTheme/createCssVarsForColorSchemeThemes.d.ts.map +1 -1
- package/styles/theme/createTheme/createCssVarsForColorSchemeThemes.js +41 -5
- package/styles/theme/createTheme/createPalette.types.d.ts +20 -7
- package/styles/theme/createTheme/createPalette.types.d.ts.map +1 -1
- package/styles/theme/createTheme/createPalette.types.js +23 -10
- package/styles/theme/createTheme/createShape.d.ts +3 -0
- package/styles/theme/createTheme/createShape.d.ts.map +1 -1
- package/styles/theme/createTheme/createSpacing.js +4 -1
- package/styles/theme/createTheme/createThemeFromColorScheme.d.ts +11 -2
- package/styles/theme/createTheme/createThemeFromColorScheme.d.ts.map +1 -1
- package/styles/theme/createTheme/createThemeFromColorScheme.js +16 -4
- package/styles/theme/createTheme/createTypography.d.ts +2 -1
- package/styles/theme/createTheme/createTypography.js +59 -18
- package/styles/theme/createTheme/helpers/cssVarsColorAugmentation.d.ts +2 -1
- package/styles/theme/createTheme/helpers/cssVarsColorAugmentation.d.ts.map +1 -1
- package/styles/theme/createTheme/helpers/cssVarsColorAugmentation.js +84 -6
- package/styles/theme/createTheme/helpers/cssVarsParser.d.ts.map +1 -1
- package/styles/theme/createTheme/helpers/cssVarsParser.js +10 -3
- package/styles/theme/createTheme/index.d.ts +2 -1
- package/styles/theme/createTheme/index.d.ts.map +1 -1
- package/styles/theme/createTheme/index.js +5 -3
- package/styles/theme/createTheme/layout.d.ts +23 -0
- package/styles/theme/createTheme/layout.d.ts.map +1 -0
- package/styles/theme/createTheme/layout.js +20 -0
- package/styles/theme/createTheme/shadows.d.ts +11 -1
- package/styles/theme/createTheme/shadows.d.ts.map +1 -1
- package/styles/theme/createTheme/shadows.js +41 -7
- package/styles/theme/createTheme/transitions.d.ts +4 -0
- package/styles/theme/createTheme/transitions.js +3 -1
- package/styles/theme/createTheme/types.d.ts +48 -10
- package/styles/theme/createTheme/types.d.ts.map +1 -1
- package/styles/theme/createTheme/types.js +16 -4
- package/styles/theme/hocs/index.d.ts +2 -0
- package/styles/theme/hocs/index.d.ts.map +1 -0
- package/styles/theme/hocs/index.js +1 -0
- package/styles/theme/hocs/withTheme.d.ts +21 -0
- package/styles/theme/hocs/withTheme.d.ts.map +1 -0
- package/styles/theme/hocs/withTheme.js +33 -0
- package/styles/theme/hooks/useColorScheme.d.ts +4 -3
- package/styles/theme/hooks/useColorScheme.d.ts.map +1 -1
- package/styles/theme/hooks/useColorScheme.js +4 -3
- package/styles/theme/hooks/useMediaQuery.d.ts +7 -0
- package/styles/theme/hooks/useMediaQuery.d.ts.map +1 -1
- package/styles/theme/hooks/useMediaQuery.js +5 -5
- package/styles/theme/hooks/useTheme.js +1 -1
- package/styles/theme/index.d.ts +5 -1
- package/styles/theme/index.d.ts.map +1 -1
- package/styles/theme/index.js +2 -1
- package/styles/theme/providers/ActiveBreakpointProvider.d.ts +1 -1
- package/styles/theme/providers/ColorSchemeContext.d.ts +40 -0
- package/styles/theme/providers/ColorSchemeContext.d.ts.map +1 -0
- package/styles/theme/providers/ColorSchemeContext.js +14 -0
- package/styles/theme/providers/ThemeContext.d.ts +3 -0
- package/styles/theme/providers/ThemeContext.d.ts.map +1 -0
- package/styles/theme/providers/ThemeContext.js +2 -0
- package/styles/theme/providers/ThemeProvider.d.ts +4 -14
- package/styles/theme/providers/ThemeProvider.d.ts.map +1 -1
- package/styles/theme/providers/ThemeProvider.js +90 -26
- package/styles/theme/utils/color.d.ts +12 -12
- package/styles/theme/utils/color.d.ts.map +1 -1
- package/tracking/components/CookieConsentModal/index.js +14 -15
- package/tracking/components/PrivacySettings/index.js +7 -7
- package/tracking/selectors/cookieConsent.js +2 -2
- package/cart/components/PaymentBar/PaymentBarReserveButton.connector.js +0 -6
- package/cart/components/PaymentBar/PaymentBarReserveButton.js +0 -75
- package/locations/components/StoreFinder/StoreFinderGetDirectionsButton.connector.js +0 -16
- package/locations/components/StoreFinder/StoreFinderGetDirectionsButton.js +0 -52
- package/product/collections/index.js +0 -1
- package/product/components/EffectivityDates/constants.d.ts +0 -3
- package/product/components/EffectivityDates/constants.d.ts.map +0 -1
- package/product/components/EffectivityDates/helpers.d.ts +0 -6
- package/product/components/EffectivityDates/helpers.d.ts.map +0 -1
- package/product/components/Media/helpers.d.ts +0 -2
- package/product/components/Media/helpers.d.ts.map +0 -1
- package/product/components/ProductImage/connector.js +0 -12
- package/product/helpers/index.d.ts +0 -13
- package/product/helpers/index.d.ts.map +0 -1
- package/product/helpers/redirects.d.ts +0 -2
- package/product/helpers/redirects.d.ts.map +0 -1
- package/product/selectors/helpers/filterProperties.d.ts +0 -8
- package/product/selectors/helpers/filterProperties.d.ts.map +0 -1
- package/product/selectors/helpers/index.d.ts +0 -3
- package/product/selectors/helpers/index.d.ts.map +0 -1
- package/product/selectors/helpers/wrapMemoizedSelector.d.ts +0 -2
- package/product/selectors/helpers/wrapMemoizedSelector.d.ts.map +0 -1
- package/product/selectors/product.d.ts +0 -112
- package/product/selectors/product.d.ts.map +0 -1
|
@@ -1,87 +1,254 @@
|
|
|
1
1
|
import "core-js/modules/es.array.includes.js";
|
|
2
|
-
import
|
|
2
|
+
import "core-js/modules/es.string.replace.js";
|
|
3
|
+
import React, { forwardRef, useEffect } from 'react';
|
|
3
4
|
import { makeStyles } from '@shopgate/engage/styles';
|
|
4
5
|
import { useReduceMotion } from '@shopgate/engage/a11y/hooks';
|
|
6
|
+
// Imported from the defining modules instead of the `core` barrels on purpose: `core/hooks` imports
|
|
7
|
+
// from `engage/components`, so going through a barrel would create a circular import.
|
|
8
|
+
import { useNavigation } from '@shopgate/engage/core/hooks/useNavigation';
|
|
9
|
+
import { hasWebBridge } from '@shopgate/engage/core/helpers/bridge';
|
|
5
10
|
import Ripple from "./Ripple";
|
|
6
11
|
import { usePressRipple } from "./hooks";
|
|
7
12
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
8
13
|
const supportedButtonTypes = ['button', 'submit', 'reset'];
|
|
9
14
|
|
|
15
|
+
/**
|
|
16
|
+
* Whether a pointer position sits within the bounds of an element.
|
|
17
|
+
* @param element The element to measure.
|
|
18
|
+
* @param clientX Horizontal position of the pointer.
|
|
19
|
+
* @param clientY Vertical position of the pointer.
|
|
20
|
+
* @returns Whether the position is inside the element.
|
|
21
|
+
*/
|
|
22
|
+
const containsPoint = (element, clientX, clientY) => {
|
|
23
|
+
const {
|
|
24
|
+
top,
|
|
25
|
+
right,
|
|
26
|
+
bottom,
|
|
27
|
+
left
|
|
28
|
+
} = element.getBoundingClientRect();
|
|
29
|
+
return clientX >= left && clientX <= right && clientY >= top && clientY <= bottom;
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Props read off the resolved element rather than declared on `ButtonBaseOwnProps`. Typed loosely
|
|
34
|
+
* because the element type is generic - `React.ComponentPropsWithRef<C>` keeps consumers exact.
|
|
35
|
+
*/
|
|
36
|
+
|
|
10
37
|
/**
|
|
11
38
|
* The ButtonBase component serves as a foundational button element that can be extended with
|
|
12
39
|
* additional styles and functionality. It handles basic button behavior, including disabled
|
|
13
40
|
* state and type validation.
|
|
14
41
|
*/
|
|
15
|
-
|
|
42
|
+
function ButtonBase(props, ref) {
|
|
16
43
|
const {
|
|
44
|
+
component,
|
|
45
|
+
href,
|
|
46
|
+
linkOptions,
|
|
17
47
|
disabled = false,
|
|
18
48
|
disableRipple: disableRippleProp = false,
|
|
49
|
+
disableBaseClassName = false,
|
|
50
|
+
className,
|
|
51
|
+
classes: classesProp,
|
|
52
|
+
testId,
|
|
53
|
+
children,
|
|
54
|
+
...rest
|
|
55
|
+
} = props;
|
|
56
|
+
const {
|
|
19
57
|
type = 'button',
|
|
58
|
+
onClick,
|
|
59
|
+
onKeyDown,
|
|
20
60
|
onPointerDown,
|
|
21
61
|
onPointerUp,
|
|
22
62
|
onPointerLeave,
|
|
23
63
|
onPointerCancel,
|
|
24
|
-
className,
|
|
25
|
-
children,
|
|
26
64
|
...other
|
|
27
|
-
} =
|
|
65
|
+
} = rest;
|
|
28
66
|
const {
|
|
29
67
|
classes,
|
|
30
68
|
cx
|
|
31
69
|
} = useStyles(undefined, {
|
|
32
70
|
props: {
|
|
33
|
-
classes:
|
|
71
|
+
classes: classesProp
|
|
34
72
|
}
|
|
35
73
|
});
|
|
36
74
|
const {
|
|
37
75
|
ripples,
|
|
38
76
|
start,
|
|
39
|
-
end
|
|
77
|
+
end,
|
|
78
|
+
clearAll
|
|
40
79
|
} = usePressRipple();
|
|
41
80
|
const reduceMotion = useReduceMotion();
|
|
81
|
+
const {
|
|
82
|
+
push,
|
|
83
|
+
replace
|
|
84
|
+
} = useNavigation();
|
|
42
85
|
const disableRipple = disableRippleProp || reduceMotion;
|
|
86
|
+
|
|
87
|
+
// A button that disables itself on click gets `pointer-events: none`, which makes the browser
|
|
88
|
+
// drop the pointer capture. The pointer up then lands somewhere else and the ripple would never
|
|
89
|
+
// be told to finish, so it's cleared here instead.
|
|
90
|
+
useEffect(() => {
|
|
91
|
+
if (disabled) {
|
|
92
|
+
clearAll();
|
|
93
|
+
}
|
|
94
|
+
}, [disabled, clearAll]);
|
|
95
|
+
|
|
96
|
+
// A real anchor is only safe on web builds. Inside the app webview `preventDefault()` sometimes
|
|
97
|
+
// fails and the page navigates for real, so link buttons stay `<button>` there.
|
|
98
|
+
const Component = component || (href && hasWebBridge() ? 'a' : 'button');
|
|
99
|
+
const isButtonElement = Component === 'button';
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* Hands the target over to the app router. Deferred like the `Link` component does, so the
|
|
103
|
+
* current event finishes dispatching before the route changes.
|
|
104
|
+
*/
|
|
105
|
+
const navigate = () => {
|
|
106
|
+
if (!href) {
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
const state = {
|
|
110
|
+
...linkOptions?.state,
|
|
111
|
+
...(linkOptions?.target ? {
|
|
112
|
+
target: linkOptions.target
|
|
113
|
+
} : {})
|
|
114
|
+
};
|
|
115
|
+
const params = {
|
|
116
|
+
pathname: href,
|
|
117
|
+
...(Object.keys(state).length ? {
|
|
118
|
+
state
|
|
119
|
+
} : {})
|
|
120
|
+
};
|
|
121
|
+
setTimeout(() => {
|
|
122
|
+
if (linkOptions?.replace) {
|
|
123
|
+
replace(params);
|
|
124
|
+
} else {
|
|
125
|
+
push(params);
|
|
126
|
+
}
|
|
127
|
+
}, 0);
|
|
128
|
+
};
|
|
129
|
+
const handleClick = event => {
|
|
130
|
+
if (disabled) {
|
|
131
|
+
event.preventDefault();
|
|
132
|
+
return;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
// The pointer capture taken on pointer down redirects the release to this element, so a pointer
|
|
136
|
+
// that went up somewhere else still arrives here as a click. Without the capture the browser
|
|
137
|
+
// would have dropped it. Keyboard activation reports no button presses and carries no position,
|
|
138
|
+
// so it never takes this path.
|
|
139
|
+
if (event.detail > 0 && !containsPoint(event.currentTarget, event.clientX, event.clientY)) {
|
|
140
|
+
event.preventDefault();
|
|
141
|
+
return;
|
|
142
|
+
}
|
|
143
|
+
onClick?.(event);
|
|
144
|
+
if (!href || event.defaultPrevented) {
|
|
145
|
+
return;
|
|
146
|
+
}
|
|
147
|
+
event.preventDefault();
|
|
148
|
+
navigate();
|
|
149
|
+
};
|
|
150
|
+
const handleKeyDown = event => {
|
|
151
|
+
onKeyDown?.(event);
|
|
152
|
+
if (isButtonElement || disabled || event.defaultPrevented) {
|
|
153
|
+
return;
|
|
154
|
+
}
|
|
155
|
+
if (event.key !== 'Enter' && event.key !== ' ') {
|
|
156
|
+
return;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
// Only buttons activate on Enter and Space. Preventing the default also stops an anchor from
|
|
160
|
+
// firing its own click on Enter, so the element is activated exactly once.
|
|
161
|
+
event.preventDefault();
|
|
162
|
+
event.currentTarget.click();
|
|
163
|
+
};
|
|
43
164
|
const handlePointerDown = event => {
|
|
44
|
-
if (
|
|
165
|
+
if (disabled) {
|
|
166
|
+
return;
|
|
167
|
+
}
|
|
168
|
+
if (!disableRipple) {
|
|
45
169
|
event.currentTarget.setPointerCapture?.(event.pointerId);
|
|
46
170
|
start(event);
|
|
47
171
|
}
|
|
48
172
|
onPointerDown?.(event);
|
|
49
173
|
};
|
|
174
|
+
|
|
175
|
+
/**
|
|
176
|
+
* Gives up pointer capture that was taken on pointer down. While an element captures the pointer,
|
|
177
|
+
* hit testing is redirected to it, so it keeps matching `:hover` and never receives a leave event.
|
|
178
|
+
* @param event The pointer event.
|
|
179
|
+
*/
|
|
180
|
+
const releaseCapture = event => {
|
|
181
|
+
const target = event.currentTarget;
|
|
182
|
+
if (target.hasPointerCapture?.(event.pointerId)) {
|
|
183
|
+
target.releasePointerCapture(event.pointerId);
|
|
184
|
+
}
|
|
185
|
+
};
|
|
50
186
|
const handlePointerUp = event => {
|
|
187
|
+
releaseCapture(event);
|
|
51
188
|
if (!disableRipple) {
|
|
52
189
|
end(event.pointerId);
|
|
53
190
|
}
|
|
191
|
+
if (disabled) {
|
|
192
|
+
return;
|
|
193
|
+
}
|
|
54
194
|
onPointerUp?.(event);
|
|
55
195
|
};
|
|
56
196
|
const handlePointerCancel = event => {
|
|
197
|
+
releaseCapture(event);
|
|
57
198
|
if (!disableRipple) {
|
|
58
199
|
end(event.pointerId);
|
|
59
200
|
}
|
|
201
|
+
if (disabled) {
|
|
202
|
+
return;
|
|
203
|
+
}
|
|
60
204
|
onPointerCancel?.(event);
|
|
61
205
|
};
|
|
206
|
+
|
|
207
|
+
/**
|
|
208
|
+
* Fires whenever the capture taken on pointer down ends - including when the browser drops it
|
|
209
|
+
* because the element stopped being hit testable. Without this the ripple would stay behind.
|
|
210
|
+
* @param event The pointer event.
|
|
211
|
+
*/
|
|
212
|
+
const handleLostPointerCapture = event => {
|
|
213
|
+
if (!disableRipple) {
|
|
214
|
+
end(event.pointerId);
|
|
215
|
+
}
|
|
216
|
+
};
|
|
62
217
|
const handlePointerLeave = event => {
|
|
63
218
|
if (!disableRipple && event.buttons === 1) {
|
|
64
219
|
end(event.pointerId);
|
|
65
220
|
}
|
|
221
|
+
if (disabled) {
|
|
222
|
+
return;
|
|
223
|
+
}
|
|
66
224
|
onPointerLeave?.(event);
|
|
67
225
|
};
|
|
68
|
-
return /*#__PURE__*/_jsxs(
|
|
226
|
+
return /*#__PURE__*/_jsxs(Component, {
|
|
69
227
|
ref: ref,
|
|
70
|
-
|
|
71
|
-
|
|
228
|
+
"data-test-id": testId,
|
|
229
|
+
className: cx(classes.root, !disableBaseClassName && 'engage__button-base', className),
|
|
230
|
+
onClick: handleClick,
|
|
231
|
+
onKeyDown: handleKeyDown,
|
|
72
232
|
onPointerDown: handlePointerDown,
|
|
73
233
|
onPointerUp: handlePointerUp,
|
|
74
234
|
onPointerCancel: handlePointerCancel,
|
|
75
|
-
onPointerLeave: handlePointerLeave
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
235
|
+
onPointerLeave: handlePointerLeave,
|
|
236
|
+
onLostPointerCapture: handleLostPointerCapture,
|
|
237
|
+
...(isButtonElement ? {
|
|
238
|
+
disabled,
|
|
239
|
+
type: supportedButtonTypes.includes(type) ? type : 'button'
|
|
240
|
+
} : {
|
|
241
|
+
'aria-disabled': disabled || undefined,
|
|
242
|
+
...(href ? {
|
|
243
|
+
href
|
|
244
|
+
} : {})
|
|
245
|
+
}),
|
|
79
246
|
...other,
|
|
80
247
|
children: [children, !disableRipple && /*#__PURE__*/_jsx(Ripple, {
|
|
81
248
|
ripples: ripples
|
|
82
249
|
})]
|
|
83
250
|
});
|
|
84
|
-
}
|
|
251
|
+
}
|
|
85
252
|
const useStyles = makeStyles({
|
|
86
253
|
name: 'ButtonBase'
|
|
87
254
|
})({
|
|
@@ -109,9 +276,17 @@ const useStyles = makeStyles({
|
|
|
109
276
|
borderStyle: 'none'
|
|
110
277
|
},
|
|
111
278
|
'&:disabled': {
|
|
279
|
+
cursor: 'not-allowed'
|
|
280
|
+
},
|
|
281
|
+
'&[aria-disabled="true"]': {
|
|
112
282
|
pointerEvents: 'none',
|
|
113
283
|
cursor: 'default'
|
|
114
284
|
}
|
|
115
285
|
}
|
|
116
286
|
});
|
|
117
|
-
|
|
287
|
+
const ButtonBaseWithRef = /*#__PURE__*/forwardRef(ButtonBase);
|
|
288
|
+
ButtonBaseWithRef.displayName = 'ButtonBase';
|
|
289
|
+
|
|
290
|
+
// `forwardRef` erases the generic, so the call signature is restored with a cast. Same approach as
|
|
291
|
+
// the Typography component.
|
|
292
|
+
export default ButtonBaseWithRef;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import React from 'react';
|
|
1
2
|
import type { RippleItem as RippleModel } from './hooks';
|
|
2
3
|
interface RippleProps {
|
|
3
4
|
ripples: RippleModel[];
|
|
@@ -5,6 +6,6 @@ interface RippleProps {
|
|
|
5
6
|
/**
|
|
6
7
|
* The Ripple component renders the ripple effect for button interactions.
|
|
7
8
|
*/
|
|
8
|
-
declare function Ripple({ ripples }: RippleProps):
|
|
9
|
+
declare function Ripple({ ripples }: RippleProps): React.JSX.Element;
|
|
9
10
|
export default Ripple;
|
|
10
11
|
//# sourceMappingURL=Ripple.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Ripple.d.ts","sourceRoot":"","sources":["../../../../components/v2/ButtonBase/Ripple.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Ripple.d.ts","sourceRoot":"","sources":["../../../../components/v2/ButtonBase/Ripple.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+C,MAAM,OAAO,CAAC;AAIpE,OAAO,KAAK,EAAE,UAAU,IAAI,WAAW,EAAE,MAAM,SAAS,CAAC;AAqDzD,UAAU,WAAW;IACnB,OAAO,EAAE,WAAW,EAAE,CAAC;CACxB;AAED;;GAEG;AACH,iBAAS,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,WAAW,qBAiBvC;AAwDD,eAAe,MAAM,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../../components/v2/ButtonBase/hooks.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../../components/v2/ButtonBase/hooks.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc;;mBAYM,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC;qBAqC7B,MAAM;;EA2C3C"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { useCallback, useRef, useState } from 'react';
|
|
1
|
+
import { useCallback, useEffect, useRef, useState } from 'react';
|
|
2
2
|
import { RIPPLE_MIN_VISIBLE_MS } from "./constants";
|
|
3
3
|
/**
|
|
4
4
|
* Manages the active ripple queue.
|
|
@@ -12,39 +12,63 @@ import { RIPPLE_MIN_VISIBLE_MS } from "./constants";
|
|
|
12
12
|
export function usePressRipple() {
|
|
13
13
|
const [ripples, setRipples] = useState([]);
|
|
14
14
|
const nextKey = useRef(0);
|
|
15
|
-
const
|
|
15
|
+
const startedAtByKey = useRef(new Map());
|
|
16
|
+
const activeKeyByPointer = useRef(new Map());
|
|
17
|
+
const pendingTimeouts = useRef(new Set());
|
|
18
|
+
useEffect(() => () => {
|
|
19
|
+
pendingTimeouts.current.forEach(timeoutId => window.clearTimeout(timeoutId));
|
|
20
|
+
pendingTimeouts.current.clear();
|
|
21
|
+
}, []);
|
|
16
22
|
const start = useCallback(event => {
|
|
17
23
|
const element = event.currentTarget;
|
|
18
24
|
const rect = element.getBoundingClientRect();
|
|
19
|
-
const
|
|
20
|
-
const
|
|
25
|
+
const hasPointerPosition = Number.isFinite(event.clientX) && Number.isFinite(event.clientY);
|
|
26
|
+
const rippleX = hasPointerPosition ? Math.round(event.clientX - rect.left) : Math.round(element.clientWidth / 2);
|
|
27
|
+
const rippleY = hasPointerPosition ? Math.round(event.clientY - rect.top) : Math.round(element.clientHeight / 2);
|
|
21
28
|
const sizeX = Math.max(element.clientWidth - rippleX, rippleX) * 2 + 2;
|
|
22
29
|
const sizeY = Math.max(element.clientHeight - rippleY, rippleY) * 2 + 2;
|
|
23
30
|
const rippleSize = Math.sqrt(sizeX ** 2 + sizeY ** 2);
|
|
24
|
-
startedAtByPointer.current.set(event.pointerId, performance.now());
|
|
25
31
|
nextKey.current += 1;
|
|
32
|
+
const key = nextKey.current;
|
|
33
|
+
startedAtByKey.current.set(key, performance.now());
|
|
34
|
+
|
|
35
|
+
// A mouse reuses one pointerId for every press, so the pointer only ever points at the newest
|
|
36
|
+
// one. Keying the rest by ripple instead means an earlier press can no longer end this one.
|
|
37
|
+
activeKeyByPointer.current.set(event.pointerId, key);
|
|
26
38
|
setRipples(prev => [].concat(prev, [{
|
|
27
|
-
key
|
|
28
|
-
pointerId: event.pointerId,
|
|
39
|
+
key,
|
|
29
40
|
x: rippleX,
|
|
30
41
|
y: rippleY,
|
|
31
42
|
size: rippleSize
|
|
32
43
|
}]));
|
|
33
44
|
}, []);
|
|
34
45
|
const end = useCallback(pointerId => {
|
|
35
|
-
const
|
|
46
|
+
const key = activeKeyByPointer.current.get(pointerId);
|
|
47
|
+
if (key == null) {
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
// Pointer up, cancel, leave and lost capture can all fire for a single press, and the press is
|
|
52
|
+
// over after whichever comes first.
|
|
53
|
+
activeKeyByPointer.current.delete(pointerId);
|
|
54
|
+
const startedAt = startedAtByKey.current.get(key);
|
|
36
55
|
if (startedAt == null) {
|
|
37
56
|
return;
|
|
38
57
|
}
|
|
39
58
|
const elapsed = performance.now() - startedAt;
|
|
40
59
|
const delay = Math.max(0, RIPPLE_MIN_VISIBLE_MS - elapsed);
|
|
41
|
-
window.setTimeout(() => {
|
|
42
|
-
|
|
43
|
-
|
|
60
|
+
const timeoutId = window.setTimeout(() => {
|
|
61
|
+
pendingTimeouts.current.delete(timeoutId);
|
|
62
|
+
setRipples(prev => prev.filter(ripple => ripple.key !== key));
|
|
63
|
+
startedAtByKey.current.delete(key);
|
|
44
64
|
}, delay);
|
|
65
|
+
pendingTimeouts.current.add(timeoutId);
|
|
45
66
|
}, []);
|
|
46
67
|
const clearAll = useCallback(() => {
|
|
47
|
-
|
|
68
|
+
pendingTimeouts.current.forEach(timeoutId => window.clearTimeout(timeoutId));
|
|
69
|
+
pendingTimeouts.current.clear();
|
|
70
|
+
startedAtByKey.current.clear();
|
|
71
|
+
activeKeyByPointer.current.clear();
|
|
48
72
|
setRipples([]);
|
|
49
73
|
}, []);
|
|
50
74
|
return {
|
|
@@ -8,7 +8,7 @@ declare const useStyles: (params: Omit<ButtonGroupOwnProps, "children">, muiStyl
|
|
|
8
8
|
props: Record<string, unknown>;
|
|
9
9
|
ownerState?: Record<string, unknown> | undefined;
|
|
10
10
|
} | undefined) => {
|
|
11
|
-
classes: Record<"root" | "disabled" | "
|
|
11
|
+
classes: Record<"root" | "disabled" | "vertical" | "enableElevation" | "fullWidth" | "grouped" | "groupedHorizontal" | "groupedVertical" | "groupedContained" | "groupedContainedHorizontal" | "groupedContainedVertical" | "groupedOutlined" | "groupedOutlinedHorizontal" | "groupedOutlinedVertical" | "groupedText" | "groupedTextHorizontal" | "groupedTextVertical", string>;
|
|
12
12
|
theme: import("@shopgate/engage/styles").Theme;
|
|
13
13
|
css: import("tss-react").Css;
|
|
14
14
|
cx: import("tss-react").Cx;
|
|
@@ -24,21 +24,27 @@ export interface ButtonGroupOwnProps {
|
|
|
24
24
|
* @default 'medium'
|
|
25
25
|
*/
|
|
26
26
|
size?: 'small' | 'medium' | 'large';
|
|
27
|
+
/**
|
|
28
|
+
* If true, the buttons use reduced padding.
|
|
29
|
+
* @default false
|
|
30
|
+
*/
|
|
31
|
+
dense?: boolean;
|
|
27
32
|
/**
|
|
28
33
|
* The orientation of the buttons in the group.
|
|
29
34
|
* @default 'horizontal'
|
|
30
35
|
*/
|
|
31
36
|
orientation?: 'horizontal' | 'vertical';
|
|
32
37
|
/**
|
|
33
|
-
* If true,
|
|
38
|
+
* If true, a drop shadow is added to the group. Button groups are flat by default.
|
|
34
39
|
* @default false
|
|
35
40
|
*/
|
|
36
|
-
|
|
41
|
+
enableElevation?: boolean;
|
|
37
42
|
/**
|
|
38
|
-
* The color of the component.
|
|
43
|
+
* The color of the component. Besides the palette colors, `cta` is supported. It resolves to the
|
|
44
|
+
* merchant configurable call to action color from `components.ctaButton`.
|
|
39
45
|
* @default 'inherit'
|
|
40
46
|
*/
|
|
41
|
-
color?: PaletteColorsWithMain | 'inherit';
|
|
47
|
+
color?: PaletteColorsWithMain | 'inherit' | 'cta';
|
|
42
48
|
/**
|
|
43
49
|
* If true, the buttons will take up the full width of their container.
|
|
44
50
|
* @default false
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonGroup.d.ts","sourceRoot":"","sources":["../../../../components/v2/ButtonGroup/ButtonGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAG1C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAErE;;GAEG;AACH,QAAA,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"ButtonGroup.d.ts","sourceRoot":"","sources":["../../../../components/v2/ButtonGroup/ButtonGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAG1C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAErE;;GAEG;AACH,QAAA,MAAM,WAAW,mIAsEf,CAAC;AAQH,QAAA,MAAM,SAAS;;cAyB8B,CAAC;;;;;;CAqH5C,CAAC;AAEH,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,OAAO,CAAC,EAAE,WAAW,GAAG,UAAU,GAAG,MAAM,CAAC;IAC5C;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpC;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IACxC;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;OAIG;IACH,KAAK,CAAC,EAAE,qBAAqB,GAAG,SAAS,GAAG,KAAK,CAAC;IAClD;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IAC3D,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,MAAM,MAAM,gBAAgB,GAAG,mBAAmB,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,CAAA;AAIzF,eAAe,WAAW,CAAC"}
|
|
@@ -9,13 +9,15 @@ const ButtonGroup = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
9
9
|
const {
|
|
10
10
|
variant = 'contained',
|
|
11
11
|
size = 'medium',
|
|
12
|
+
dense = false,
|
|
12
13
|
orientation = 'horizontal',
|
|
13
|
-
|
|
14
|
+
enableElevation = false,
|
|
14
15
|
fullWidth = false,
|
|
15
16
|
disableRipple = false,
|
|
16
17
|
disabled = false,
|
|
17
18
|
color = 'inherit',
|
|
18
19
|
className,
|
|
20
|
+
classes: classesProp,
|
|
19
21
|
children,
|
|
20
22
|
...other
|
|
21
23
|
} = props;
|
|
@@ -27,7 +29,7 @@ const ButtonGroup = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
27
29
|
variant
|
|
28
30
|
}, {
|
|
29
31
|
props: {
|
|
30
|
-
classes:
|
|
32
|
+
classes: classesProp
|
|
31
33
|
}
|
|
32
34
|
});
|
|
33
35
|
const buttonClassName = cx(classes.grouped, classes[`grouped${capitalize(orientation)}`], classes[`grouped${capitalize(variant)}`], classes[`grouped${capitalize(variant)}${capitalize(orientation)}`], {
|
|
@@ -36,11 +38,18 @@ const ButtonGroup = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
36
38
|
return /*#__PURE__*/_jsx("div", {
|
|
37
39
|
role: "group",
|
|
38
40
|
className: cx(classes.root, {
|
|
39
|
-
[classes.contained]: variant === 'contained',
|
|
40
41
|
[classes.vertical]: orientation === 'vertical',
|
|
41
42
|
[classes.fullWidth]: fullWidth,
|
|
42
|
-
[classes.
|
|
43
|
-
}, className),
|
|
43
|
+
[classes.enableElevation]: enableElevation && variant === 'contained'
|
|
44
|
+
}, 'engage__button-group', className),
|
|
45
|
+
"data-variant": variant,
|
|
46
|
+
"data-color": color,
|
|
47
|
+
"data-size": size,
|
|
48
|
+
"data-orientation": orientation,
|
|
49
|
+
"data-dense": dense || undefined,
|
|
50
|
+
"data-full-width": fullWidth || undefined,
|
|
51
|
+
"data-enable-elevation": enableElevation || undefined,
|
|
52
|
+
"data-disabled": disabled || undefined,
|
|
44
53
|
ref: ref,
|
|
45
54
|
...other,
|
|
46
55
|
children: React.Children.map(children, child => {
|
|
@@ -51,15 +60,22 @@ const ButtonGroup = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
51
60
|
className: cx(buttonClassName, child.props.className),
|
|
52
61
|
color: child.props.color || color,
|
|
53
62
|
disabled: child.props.disabled || disabled,
|
|
54
|
-
|
|
63
|
+
enableElevation: child.props.enableElevation || enableElevation,
|
|
55
64
|
disableRipple,
|
|
56
65
|
fullWidth,
|
|
57
66
|
size: child.props.size || size,
|
|
67
|
+
dense: child.props.dense || dense,
|
|
58
68
|
variant: child.props.variant || variant
|
|
59
69
|
});
|
|
60
70
|
})
|
|
61
71
|
});
|
|
62
72
|
});
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Opacity the separator between grouped text buttons defaults to. Published as a custom property
|
|
76
|
+
* below, so the value is not baked into the border declarations.
|
|
77
|
+
*/
|
|
78
|
+
const SEPARATOR_OPACITY = '0.5';
|
|
63
79
|
const useStyles = makeStyles({
|
|
64
80
|
name: 'ButtonGroup'
|
|
65
81
|
})((theme, props) => {
|
|
@@ -68,27 +84,35 @@ const useStyles = makeStyles({
|
|
|
68
84
|
variant
|
|
69
85
|
} = props;
|
|
70
86
|
let cssColor = '';
|
|
71
|
-
|
|
87
|
+
let darkCssColor = '';
|
|
88
|
+
if (color === 'cta') {
|
|
89
|
+
cssColor = theme.components.ctaButton.background;
|
|
90
|
+
} else if (color !== 'inherit') {
|
|
72
91
|
cssColor = color && theme.palette?.[color]?.main ? theme.palette[color].main : theme.palette.primary.main;
|
|
73
92
|
} else if (variant === 'contained') {
|
|
74
93
|
// eslint-disable-next-line prefer-destructuring
|
|
75
94
|
cssColor = theme.palette.grey[200];
|
|
95
|
+
darkCssColor = theme.palette.background.emphasized;
|
|
76
96
|
} else {
|
|
77
97
|
cssColor = 'currentColor';
|
|
78
98
|
}
|
|
79
99
|
return {
|
|
80
100
|
root: {
|
|
81
101
|
'--button-group-color': `var(${theme.vars.components.button.color}, ${cssColor})`,
|
|
102
|
+
'--button-group-divider': theme.darken('var(--button-group-color)'),
|
|
103
|
+
...(darkCssColor ? theme.applyStyles('dark', {
|
|
104
|
+
'--button-group-color': `var(${theme.vars.components.button.color}, ${darkCssColor})`,
|
|
105
|
+
'--button-group-divider': theme.lighten('var(--button-group-color)')
|
|
106
|
+
}) : {}),
|
|
82
107
|
'--disabledColor': theme.palette.action.disabled,
|
|
108
|
+
'--button-group-separator-opacity': SEPARATOR_OPACITY,
|
|
109
|
+
'--button-group-separator': theme.alpha('var(--button-group-color)', 'var(--button-group-separator-opacity)'),
|
|
83
110
|
display: 'inline-flex',
|
|
84
|
-
borderRadius:
|
|
85
|
-
},
|
|
86
|
-
contained: {
|
|
87
|
-
boxShadow: theme.shadows[2]
|
|
111
|
+
borderRadius: theme.components.button.borderRadius
|
|
88
112
|
},
|
|
89
113
|
disabled: {},
|
|
90
|
-
|
|
91
|
-
boxShadow:
|
|
114
|
+
enableElevation: {
|
|
115
|
+
boxShadow: theme.shadows[2]
|
|
92
116
|
},
|
|
93
117
|
fullWidth: {
|
|
94
118
|
width: '100%'
|
|
@@ -127,8 +151,8 @@ const useStyles = makeStyles({
|
|
|
127
151
|
'&:not(:last-of-type)': {
|
|
128
152
|
borderRightWidth: 1,
|
|
129
153
|
borderRightStyle: 'solid',
|
|
130
|
-
borderRightColor:
|
|
131
|
-
'&:disabled': {
|
|
154
|
+
borderRightColor: 'var(--button-group-divider)',
|
|
155
|
+
'&:disabled, &[aria-disabled="true"]': {
|
|
132
156
|
borderRightColor: 'var(--disabledColor)'
|
|
133
157
|
}
|
|
134
158
|
}
|
|
@@ -137,18 +161,14 @@ const useStyles = makeStyles({
|
|
|
137
161
|
'&:not(:last-of-type)': {
|
|
138
162
|
borderBottomWidth: 1,
|
|
139
163
|
borderBottomStyle: 'solid',
|
|
140
|
-
borderBottomColor:
|
|
141
|
-
'&:disabled': {
|
|
164
|
+
borderBottomColor: 'var(--button-group-divider)',
|
|
165
|
+
'&:disabled, &[aria-disabled="true"]': {
|
|
142
166
|
borderBottomColor: 'var(--disabledColor)'
|
|
143
167
|
}
|
|
144
168
|
}
|
|
145
169
|
},
|
|
146
170
|
groupedOutlined: {
|
|
147
|
-
|
|
148
|
-
'&:hover': {
|
|
149
|
-
borderColor: 'var(--button-group-color)'
|
|
150
|
-
},
|
|
151
|
-
'&:disabled': {
|
|
171
|
+
'&:disabled, &[aria-disabled="true"]': {
|
|
152
172
|
borderColor: 'var(--disabledColor) !important'
|
|
153
173
|
}
|
|
154
174
|
},
|
|
@@ -168,13 +188,15 @@ const useStyles = makeStyles({
|
|
|
168
188
|
borderBottomColor: 'transparent !important'
|
|
169
189
|
}
|
|
170
190
|
},
|
|
191
|
+
// Text buttons need no shared styles, but the key has to exist because the class is looked up
|
|
192
|
+
// dynamically as `grouped${capitalize(variant)}`.
|
|
171
193
|
groupedText: {},
|
|
172
194
|
groupedTextHorizontal: {
|
|
173
195
|
'&&:not(:last-of-type)': {
|
|
174
196
|
borderRightWidth: 1,
|
|
175
197
|
borderRightStyle: 'solid',
|
|
176
|
-
borderRightColor:
|
|
177
|
-
'&:disabled': {
|
|
198
|
+
borderRightColor: 'var(--button-group-separator)',
|
|
199
|
+
'&:disabled, &[aria-disabled="true"]': {
|
|
178
200
|
borderRightColor: 'var(--disabledColor)'
|
|
179
201
|
}
|
|
180
202
|
}
|
|
@@ -183,8 +205,8 @@ const useStyles = makeStyles({
|
|
|
183
205
|
'&&:not(:last-of-type)': {
|
|
184
206
|
borderBottomWidth: 1,
|
|
185
207
|
borderBottomStyle: 'solid',
|
|
186
|
-
borderBottomColor:
|
|
187
|
-
'&:disabled': {
|
|
208
|
+
borderBottomColor: 'var(--button-group-separator)',
|
|
209
|
+
'&:disabled, &[aria-disabled="true"]': {
|
|
188
210
|
borderBottomColor: 'var(--disabledColor)'
|
|
189
211
|
}
|
|
190
212
|
}
|
|
@@ -192,4 +214,5 @@ const useStyles = makeStyles({
|
|
|
192
214
|
/* eslint-enable tss-unused-classes/unused-classes */
|
|
193
215
|
};
|
|
194
216
|
});
|
|
217
|
+
ButtonGroup.displayName = 'ButtonGroup';
|
|
195
218
|
export default ButtonGroup;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CircularProgress.d.ts","sourceRoot":"","sources":["../../../../components/v2/CircularProgress/CircularProgress.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAE1C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAIrE;;;GAGG;AACH,QAAA,MAAM,gBAAgB,
|
|
1
|
+
{"version":3,"file":"CircularProgress.d.ts","sourceRoot":"","sources":["../../../../components/v2/CircularProgress/CircularProgress.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAE1C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAIrE;;;GAGG;AACH,QAAA,MAAM,gBAAgB,8FAiEpB,CAAC;AA0BH,QAAA,MAAM,SAAS;;cAuBN,CAAC;;;;;;CAoBR,CAAC;AAEH,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,KAAK,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;IAC1C;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,OAAO,CAAC,EAAE,eAAe,GAAG,aAAa,CAAC;IAC1C;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;CAC5D;AAID,eAAe,gBAAgB,CAAC"}
|