@shopgate/engage 7.32.0-beta.1 → 7.32.0-beta.11
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/Profile/Profile.provider.d.ts +1 -1
- package/account/components/Profile/ProfileAddressBook.d.ts.map +1 -1
- package/account/components/Profile/ProfileAddressBook.js +13 -22
- package/account/components/Profile/ProfileAddressCard.d.ts.map +1 -1
- package/account/components/Profile/ProfileAddressCard.js +9 -18
- package/account/components/Profile/ProfileForm.d.ts.map +1 -1
- package/account/components/Profile/ProfileForm.js +15 -42
- package/account/components/ProfileContact/ProfileContact.js +13 -21
- package/admin-preview/components/FrontendSettingsPreviewBridge/FrontendSettingsPreviewBridge.d.ts +2 -1
- package/admin-preview/components/FrontendSettingsPreviewBridge/FrontendSettingsPreviewBridge.d.ts.map +1 -1
- package/admin-preview/components/FrontendSettingsPreviewBridge/FrontendSettingsPreviewBridge.js +61 -5
- package/admin-preview/components/FrontendSettingsPreviewBridge/helpers.d.ts +7 -1
- package/admin-preview/components/FrontendSettingsPreviewBridge/helpers.d.ts.map +1 -1
- package/admin-preview/components/FrontendSettingsPreviewBridge/helpers.js +14 -2
- package/admin-preview/components/FrontendSettingsPreviewBridge/types.d.ts +15 -2
- package/admin-preview/components/FrontendSettingsPreviewBridge/types.d.ts.map +1 -1
- package/admin-preview/constants/index.d.ts +0 -12
- package/admin-preview/constants/index.d.ts.map +1 -1
- package/admin-preview/constants/index.js +0 -16
- 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 +7 -0
- package/admin-preview/helpers/index.d.ts.map +1 -1
- package/admin-preview/helpers/index.js +12 -4
- 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 +5 -5
- package/back-in-stock/components/Subscriptions/components/Subscription/index.js +2 -5
- package/cart/components/CartItem/CartItemProductLayout.js +2 -1
- package/cart/components/CartItem/CartItemProductLayoutWide.js +2 -2
- package/cart/components/CartItem/CartItemProductLayoutWideRemoveItem.js +7 -14
- 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/CartItemQuantityPicker.js +1 -0
- package/cart/components/CartItems/CartItemCardReservationLabelChangeStore.js +6 -24
- package/cart/components/CartItems/CartItems.js +8 -10
- package/cart/components/CartItems/CartItemsSubstitution.js +3 -2
- package/cart/components/CartSummaryWide/CartSummaryWide.js +2 -2
- package/cart/components/CartSummaryWide/CartSummaryWideCheckoutButton.js +9 -23
- package/cart/components/PaymentBar/PaymentBarCheckoutButton.js +8 -30
- package/cart/components/PaymentBar/PaymentBarContent.js +1 -1
- package/cart/components/PaymentBar/testUtils/mockFactories.js +4 -11
- package/category/components/CategoryImage/index.js +24 -17
- package/checkout/components/AddressBook/AddressList.js +14 -23
- package/checkout/components/Checkout/CheckoutActions.js +4 -3
- package/checkout/components/Checkout/CheckoutAddress.js +8 -0
- package/checkout/components/Checkout/CheckoutSection.js +6 -2
- package/checkout/components/CheckoutConfirmation/CheckoutConfirmation.js +6 -7
- package/checkout/components/ResponsiveBackButton/ResponsiveBackButton.js +7 -17
- 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 +2 -4
- package/components/Logo/index.d.ts.map +1 -1
- package/components/Logo/index.js +3 -6
- package/components/NavigationHandler/connector.js +1 -1
- package/components/NavigationHandler/index.d.ts +2 -2
- 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/PickerUtilize/index.d.ts +2 -1
- package/components/PickerUtilize/index.d.ts.map +1 -1
- package/components/RadioCard/RadioCard.d.ts.map +1 -1
- package/components/RadioCard/RadioCard.js +2 -1
- package/components/SheetList/components/Item/index.js +8 -8
- package/components/Tabs/components/Tab.d.ts.map +1 -1
- package/components/Tabs/components/Tab.js +14 -16
- package/components/Typography/Typography.d.ts +1 -1
- 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 +4 -1
- 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/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/i18n.d.ts +4 -0
- package/core/helpers/i18n.d.ts.map +1 -1
- package/core/helpers/i18n.js +3 -0
- package/core/hooks/events/appEvents.d.ts +31 -46
- package/core/hooks/events/appEvents.d.ts.map +1 -0
- package/core/hooks/events/appEvents.js +26 -29
- package/core/hooks/events/index.d.ts +4 -4
- package/core/hooks/events/index.d.ts.map +1 -1
- package/core/hooks/events/useLongPress.d.ts +55 -58
- package/core/hooks/events/useLongPress.d.ts.map +1 -0
- package/core/hooks/events/useLongPress.js +23 -16
- package/core/hooks/events/usePressHandler.d.ts +32 -21
- package/core/hooks/events/usePressHandler.d.ts.map +1 -1
- package/core/hooks/events/usePressHandler.js +12 -10
- package/core/hooks/events/useScrollDirectionChange.d.ts +72 -61
- package/core/hooks/events/useScrollDirectionChange.d.ts.map +1 -0
- package/core/hooks/events/useScrollDirectionChange.js +36 -43
- 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 -103
- 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/development/action-creators/index.d.ts +3 -0
- package/development/action-creators/index.d.ts.map +1 -0
- package/development/action-creators/settings.d.ts +45 -0
- package/development/action-creators/settings.d.ts.map +1 -0
- package/development/action-creators/settings.js +21 -10
- package/development/action-creators/storage.d.ts +17 -0
- package/development/action-creators/storage.d.ts.map +1 -0
- package/development/action-creators/storage.js +7 -4
- package/development/components/ClientInformation/ClientInformation.d.ts +6 -0
- package/development/components/ClientInformation/ClientInformation.d.ts.map +1 -0
- package/development/components/ClientInformation/ClientInformation.js +7 -4
- package/development/components/ClientInformation/actions.d.ts +6 -0
- package/development/components/ClientInformation/actions.d.ts.map +1 -0
- package/development/components/ClientInformation/actions.js +1 -1
- package/development/components/ClientInformation/index.d.ts +2 -0
- package/development/components/ClientInformation/index.d.ts.map +1 -0
- package/development/components/DevelopmentSettings/DevelopmentSettings.d.ts +16 -0
- package/development/components/DevelopmentSettings/DevelopmentSettings.d.ts.map +1 -0
- package/development/components/DevelopmentSettings/DevelopmentSettings.js +43 -30
- package/development/components/DevelopmentSettings/index.d.ts +2 -0
- package/development/components/DevelopmentSettings/index.d.ts.map +1 -0
- package/development/components/DevelopmentTools/DevelopmentTools.d.ts +10 -0
- package/development/components/DevelopmentTools/DevelopmentTools.d.ts.map +1 -0
- package/development/components/DevelopmentTools/DevelopmentTools.js +8 -8
- package/development/components/DevelopmentTools/Shortcuts.d.ts +6 -0
- package/development/components/DevelopmentTools/Shortcuts.d.ts.map +1 -0
- package/development/components/DevelopmentTools/Shortcuts.js +0 -1
- package/development/components/DevelopmentTools/hooks.d.ts +8 -0
- package/development/components/DevelopmentTools/hooks.d.ts.map +1 -0
- package/development/components/DevelopmentTools/hooks.js +2 -3
- package/development/components/DevelopmentTools/index.d.ts +2 -0
- package/development/components/DevelopmentTools/index.d.ts.map +1 -0
- package/development/components/SimulatedInsets/SimulatedInsetBottom.d.ts +7 -0
- package/development/components/SimulatedInsets/SimulatedInsetBottom.d.ts.map +1 -0
- package/development/components/SimulatedInsets/SimulatedInsetBottom.js +4 -9
- package/development/components/SimulatedInsets/SimulatedInsetTop.d.ts +7 -0
- package/development/components/SimulatedInsets/SimulatedInsetTop.d.ts.map +1 -0
- package/development/components/SimulatedInsets/SimulatedInsetTop.js +4 -9
- package/development/components/SimulatedInsets/SimulatedInsets.d.ts +13 -0
- package/development/components/SimulatedInsets/SimulatedInsets.d.ts.map +1 -0
- package/development/components/SimulatedInsets/SimulatedInsets.js +2 -7
- package/development/components/SimulatedInsets/index.d.ts +2 -0
- package/development/components/SimulatedInsets/index.d.ts.map +1 -0
- package/development/components/SimulatedInsets/types.d.ts +15 -0
- package/development/components/SimulatedInsets/types.d.ts.map +1 -0
- package/development/components/SimulatedInsets/types.js +1 -0
- package/development/components/index.d.ts +3 -0
- package/development/components/index.d.ts.map +1 -0
- package/development/constants/actionTypes.d.ts +6 -0
- package/development/constants/actionTypes.d.ts.map +1 -0
- package/development/constants/actionTypes.js +2 -1
- package/development/constants/index.d.ts +2 -0
- package/development/constants/index.d.ts.map +1 -0
- package/development/reducers/index.d.ts +24 -0
- package/development/reducers/index.d.ts.map +1 -0
- package/development/reducers/settings.d.ts +17 -0
- package/development/reducers/settings.d.ts.map +1 -0
- package/development/reducers/settings.js +48 -35
- package/development/reducers/storage.d.ts +17 -0
- package/development/reducers/storage.d.ts.map +1 -0
- package/development/reducers/storage.js +24 -24
- package/development/selectors/index.d.ts +3 -0
- package/development/selectors/index.d.ts.map +1 -0
- package/development/selectors/settings.d.ts +52 -0
- package/development/selectors/settings.d.ts.map +1 -0
- package/development/selectors/settings.js +21 -11
- package/development/selectors/storage.d.ts +10 -0
- package/development/selectors/storage.d.ts.map +1 -0
- package/development/selectors/storage.js +6 -18
- package/development/streams/index.d.ts +2 -0
- package/development/streams/index.d.ts.map +1 -0
- package/development/streams/insets.d.ts +8 -0
- package/development/streams/insets.d.ts.map +1 -0
- package/development/streams/insets.js +1 -3
- package/development/subscriptions/index.d.ts +15 -0
- package/development/subscriptions/index.d.ts.map +1 -0
- package/development/subscriptions/index.js +6 -2
- package/development/types/development.d.ts +68 -0
- package/development/types/development.d.ts.map +1 -0
- package/development/types/development.js +1 -0
- package/development/types/index.d.ts +2 -0
- package/development/types/index.d.ts.map +1 -0
- package/development/types/index.js +1 -0
- package/favorites/components/FavoriteButtonWide/FavoriteButtonWide.js +7 -17
- 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 +7 -7
- 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 -1
- package/favorites/components/List/ListContent.js +4 -5
- package/favorites/components/Lists/Lists.js +17 -6
- package/filter/components/FilterPageContent/components/ApplyButton/index.js +8 -10
- package/filter/components/FilterPageContent/components/ResetButton/index.js +8 -6
- package/filter/components/PriceSlider/index.js +6 -1
- package/locations/components/ChangeLocationButton/ChangeLocationButton.js +10 -14
- package/locations/components/FulfillmentSheet/FulfillmentSheetContent.js +4 -8
- package/locations/components/FulfillmentSlotSwitcher/FulfillmentSlotDialog.js +4 -8
- package/locations/components/FulfillmentSlotSwitcher/FulfillmentSlotSwitcher.js +1 -1
- package/locations/components/FulfillmentSlotSwitcher/FulfillmentSlotSwitcherBar.js +9 -18
- package/locations/components/FulfillmentSlotSwitcher/FulfillmentSlotSwitcherDefault.js +10 -10
- package/locations/components/GlobalLocationSwitcher/GlobalLocationSwitcherBar.js +9 -19
- package/locations/components/GlobalLocationSwitcher/GlobalLocationSwitcherDefault.js +9 -10
- package/locations/components/ReserveForm/ReserveForm.js +6 -7
- package/locations/components/StoreDetails/components/GetDirectionsButton.js +2 -4
- package/locations/components/StoreDetails/components/StoreDetails.js +5 -10
- package/locations/components/StoreDetails/components/StoresNearbyListItem.js +13 -21
- package/locations/components/StoreFinder/StoreFinderSelectLocationButton.js +5 -11
- package/locations/components/StoreFinder/StoreFinderStoreInfoButton.js +5 -11
- package/locations/components/StoreList/StoreListProduct.js +2 -3
- package/locations/components/StoreList/StoreListSearch.js +1 -0
- package/locations/components/StoreList/StoreSelectLocationButton.js +5 -11
- package/login/components/ForgotPassword/ForgotPassword.js +11 -23
- package/mocks/date.js +31 -0
- package/mocks/index.js +3 -0
- package/mocks/pipelineRequest.js +1 -0
- package/mocks/subscriptions.js +1 -0
- package/orders/components/OrderDetails/OrderDetailsAuthenticate.js +5 -7
- package/orders/components/OrderHistory/OrderHistoryList.d.ts.map +1 -1
- package/orders/components/OrderHistory/OrderHistoryList.js +8 -9
- package/orders/components/OrderHistory/OrderHistoryTable.d.ts.map +1 -1
- package/orders/components/OrderHistory/OrderHistoryTable.js +4 -0
- package/package.json +12 -12
- package/page/components/NotFound.d.ts +7 -0
- package/page/components/NotFound.d.ts.map +1 -0
- package/page/components/NotFound.js +8 -8
- 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/WidgetRichText/WidgetRichText.d.ts +25 -0
- package/page/components/WidgetRichText/WidgetRichText.d.ts.map +1 -0
- 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 +6 -10
- 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 +7 -18
- 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 +3 -1
- 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 +13 -11
- 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 +5 -3
- 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/widgets/Button/Button.js +2 -3
- package/page/widgets/NestedCategoryFilter/NestedCategoryFilter.js +8 -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/Description/index.js +0 -2
- package/product/components/FilterBar/components/Content/components/FilterButton/index.js +2 -6
- package/product/components/FilterBar/components/Content/components/Sort/index.js +1 -5
- package/product/components/Media/FeaturedMedia.js +7 -1
- package/product/components/Media/MediaImage.js +24 -23
- package/product/components/Media/MediaPlaceholder.js +4 -7
- package/product/components/MediaSlider/components/MediaImage/index.js +6 -2
- package/product/components/MediaSlider/constants.js +1 -12
- package/product/components/OrderQuantityHint/index.js +16 -1
- package/product/components/ProductCard/index.js +36 -23
- package/product/components/ProductGrid/components/Item/components/ItemDetails/index.js +12 -4
- package/product/components/ProductGrid/components/Item/components/ItemImage/index.js +3 -6
- package/product/components/ProductGrid/components/Item/components/ItemName/index.js +6 -1
- package/product/components/ProductGrid/components/Item/index.js +10 -2
- 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 +0 -1
- 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 +12 -17
- 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 -201
- package/product/components/ProductList/components/Item/index.js +5 -3
- 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/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 +3 -2
- 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/UnitQuantityPicker/UnitQuantityPicker.d.ts.map +1 -1
- package/product/components/UnitQuantityPicker/UnitQuantityPicker.js +16 -34
- 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/product/selectors/mocks/productProperties.mock.js +49 -0
- package/push-opt-in/components/PushOptInModal/index.js +4 -4
- package/registration/components/Registration/RegistrationFormActions.js +4 -4
- package/reviews/components/Reviews/components/AllReviewsLink/index.js +6 -6
- package/reviews/components/Reviews/components/Header/components/WriteReviewLink/index.js +4 -3
- package/settings/action-creators/appSettings.d.ts +3 -3
- package/settings/action-creators/appSettings.d.ts.map +1 -1
- package/settings/constants/appSettings.d.ts +3 -0
- package/settings/constants/appSettings.d.ts.map +1 -1
- package/settings/constants/appSettings.js +6 -1
- 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/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.map +1 -1
- package/settings/reducers/appSettings.js +100 -8
- package/settings/reducers/index.d.ts +3 -3
- package/settings/selectors/appSettings.d.ts +114 -1
- package/settings/selectors/appSettings.d.ts.map +1 -1
- package/settings/selectors/appSettings.js +75 -1
- package/settings/types/appSettings.d.ts +244 -0
- package/settings/types/appSettings.d.ts.map +1 -1
- package/settings/types/appSettings.js +124 -1
- 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/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 +112 -4
- package/styles/theme/createTheme/createComponents.d.ts +2 -2
- package/styles/theme/createTheme/createComponents.d.ts.map +1 -1
- package/styles/theme/createTheme/createComponents.js +0 -1
- package/styles/theme/createTheme/createComponents.types.d.ts +117 -0
- package/styles/theme/createTheme/createComponents.types.d.ts.map +1 -1
- package/styles/theme/createTheme/createComponents.types.js +119 -2
- package/styles/theme/createTheme/createCssVarsForColorSchemeThemes.d.ts.map +1 -1
- package/styles/theme/createTheme/createCssVarsForColorSchemeThemes.js +13 -3
- package/styles/theme/createTheme/createPalette.types.d.ts +5 -0
- package/styles/theme/createTheme/createPalette.types.d.ts.map +1 -1
- package/styles/theme/createTheme/createPalette.types.js +7 -2
- 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 +4 -2
- package/styles/theme/createTheme/createThemeFromColorScheme.d.ts.map +1 -1
- package/styles/theme/createTheme/createThemeFromColorScheme.js +6 -3
- package/styles/theme/createTheme/createTypography.d.ts +2 -1
- package/styles/theme/createTheme/createTypography.js +59 -18
- 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 -2
- 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 +41 -9
- 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 +95 -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 +3 -4
- package/tracking/components/PrivacySettings/index.js +3 -3
- package/cart/components/PaymentBar/PaymentBarReserveButton.connector.js +0 -6
- package/cart/components/PaymentBar/PaymentBarReserveButton.js +0 -71
- package/components/ChipLayout/spec.js +0 -41
- package/components/Logo/spec.js +0 -12
- package/components/NavigationHandler/spec.js +0 -84
- package/components/Picker/spec.js +0 -94
- package/components/PickerUtilize/spec.js +0 -35
- package/components/RangeSlider/spec.js +0 -190
- package/components/SheetList/components/Item/spec.js +0 -101
- package/components/SheetList/spec.js +0 -43
- package/components/TimeBoundary/spec.js +0 -83
- package/filter/components/FilterItem/spec.js +0 -14
- package/filter/components/FilterPageContent/components/ApplyButton/spec.js +0 -46
- package/filter/components/FilterPageContent/components/ResetButton/spec.js +0 -29
- package/filter/components/FilterPageContent/components/Selector/components/Selected/spec.js +0 -26
- package/filter/components/FilterPageContent/components/Selector/components/Toggle/spec.js +0 -34
- package/filter/components/FilterPageContent/components/Selector/components/ValueButton/spec.js +0 -32
- package/filter/components/FilterPageContent/components/Selector/spec.js +0 -33
- package/filter/components/PriceSlider/components/Label/spec.js +0 -26
- package/filter/components/PriceSlider/spec.js +0 -30
- 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/FilterBar/components/Content/spec.js +0 -136
- package/product/components/Header/Shipping/spec.js +0 -36
- package/product/components/Header/Tiers/components/Tier/spec.js +0 -48
- package/product/components/Header/Tiers/spec.js +0 -64
- package/product/components/Media/helpers.d.ts +0 -2
- package/product/components/Media/helpers.d.ts.map +0 -1
- package/product/components/Options/components/Content/spec.js +0 -73
- package/product/components/Options/components/TextOption/components/OptionInfo/spec.js +0 -72
- package/product/components/ProductDiscountBadge/spec.js +0 -58
- package/product/components/ProductGrid/components/Item/components/ItemDetails/spec.js +0 -73
- package/product/components/ProductGrid/components/Item/components/ItemFavoritesButton/spec.js +0 -33
- package/product/components/ProductGrid/components/Item/components/ItemImage/spec.js +0 -16
- package/product/components/ProductGrid/components/Item/components/ItemName/spec.js +0 -21
- package/product/components/ProductGrid/components/Item/components/ItemPrice/spec.js +0 -37
- package/product/components/ProductGrid/spec.js +0 -52
- package/product/components/ProductImage/connector.js +0 -12
- package/product/components/ProductImage/spec.js +0 -87
- package/product/components/ProductSlider/spec.js +0 -37
- package/product/components/Rating/spec.js +0 -58
- 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
- package/reviews/components/Reviews/components/Header/components/WriteReviewLink/spec.js +0 -52
- package/reviews/components/Reviews/components/Header/spec.js +0 -78
- package/reviews/components/Reviews/components/List/spec.js +0 -108
- package/reviews/components/Reviews/components/RatingCount/spec.js +0 -38
- package/reviews/components/Reviews/spec.js +0 -101
- package/tsconfig.build.json +0 -26
- package/tsconfig.json +0 -19
|
@@ -17,6 +17,7 @@ const CircularProgress = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
17
17
|
thickness = 3.6,
|
|
18
18
|
style,
|
|
19
19
|
className,
|
|
20
|
+
classes: classesProp,
|
|
20
21
|
...other
|
|
21
22
|
} = props;
|
|
22
23
|
const {
|
|
@@ -26,7 +27,7 @@ const CircularProgress = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
26
27
|
color
|
|
27
28
|
}, {
|
|
28
29
|
props: {
|
|
29
|
-
classes:
|
|
30
|
+
classes: classesProp
|
|
30
31
|
}
|
|
31
32
|
});
|
|
32
33
|
const circleStyle = {};
|
|
@@ -40,10 +41,10 @@ const CircularProgress = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
40
41
|
rootStyle.transform = 'rotate(-90deg)';
|
|
41
42
|
}
|
|
42
43
|
return /*#__PURE__*/_jsx("div", {
|
|
43
|
-
className: cx(classes.root,
|
|
44
|
+
className: cx(classes.root, {
|
|
44
45
|
[classes.indeterminate]: variant === 'indeterminate',
|
|
45
46
|
[classes.determinate]: variant === 'determinate'
|
|
46
|
-
}),
|
|
47
|
+
}, 'engage__circular-progress', className),
|
|
47
48
|
style: {
|
|
48
49
|
width: size,
|
|
49
50
|
height: size,
|
|
@@ -52,6 +53,9 @@ const CircularProgress = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
52
53
|
},
|
|
53
54
|
ref: ref,
|
|
54
55
|
role: "progressbar",
|
|
56
|
+
"data-variant": variant,
|
|
57
|
+
"data-color": color,
|
|
58
|
+
"data-disable-shrink": disableShrink || undefined,
|
|
55
59
|
...rootProps,
|
|
56
60
|
...other,
|
|
57
61
|
children: /*#__PURE__*/_jsx("svg", {
|
|
@@ -108,8 +112,8 @@ const useStyles = makeStyles({
|
|
|
108
112
|
return {
|
|
109
113
|
root: {
|
|
110
114
|
display: 'inline-block',
|
|
111
|
-
'--
|
|
112
|
-
color: 'var(--
|
|
115
|
+
'--circular-progress-color': cssColor,
|
|
116
|
+
color: 'var(--circular-progress-color)'
|
|
113
117
|
},
|
|
114
118
|
svg: {
|
|
115
119
|
display: 'block'
|
|
@@ -136,4 +140,5 @@ const useStyles = makeStyles({
|
|
|
136
140
|
}
|
|
137
141
|
};
|
|
138
142
|
});
|
|
143
|
+
CircularProgress.displayName = 'CircularProgress';
|
|
139
144
|
export default CircularProgress;
|
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
export function getFullImageSource(src: string, { width, height }?: {
|
|
1
|
+
export function getFullImageSource(src: string | null, { width, height }?: {
|
|
2
2
|
width: number;
|
|
3
3
|
height: number;
|
|
4
|
+
}, settings?: {
|
|
5
|
+
quality?: number | undefined;
|
|
6
|
+
fillColor?: string | undefined;
|
|
7
|
+
fillTransparent?: boolean | undefined;
|
|
4
8
|
}): string;
|
|
5
9
|
//# sourceMappingURL=getFullImageSource.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getFullImageSource.d.ts","sourceRoot":"","sources":["../../../core/helpers/getFullImageSource.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getFullImageSource.d.ts","sourceRoot":"","sources":["../../../core/helpers/getFullImageSource.js"],"names":[],"mappings":"AAiEO,wCAVI,MAAM,GAAC,IAAI,sBAEnB;IAA0B,KAAK,EAAvB,MAAM;IACY,MAAM,EAAxB,MAAM;CACd,aACA;IAA0B,OAAO;IACP,SAAS;IACR,eAAe;CAC1C,GAAU,MAAM,CAyDlB"}
|
|
@@ -5,9 +5,18 @@ import "core-js/modules/web.url.to-json.js";
|
|
|
5
5
|
import "core-js/modules/web.url-search-params.js";
|
|
6
6
|
import { CONFIGURATION_COLLECTION_CREATE_EXTERNAL_IMAGE_URL } from '@shopgate/engage/core/constants';
|
|
7
7
|
import { configuration } from '@shopgate/engage/core/collections';
|
|
8
|
-
import {
|
|
8
|
+
import { DEFAULT_IMAGE_FILL_COLOR, DEFAULT_IMAGE_FILL_TRANSPARENT, DEFAULT_IMAGE_QUALITY } from '@shopgate/engage/settings/constants/imageSettings';
|
|
9
9
|
import { getImageFormat } from "./getImageFormat";
|
|
10
10
|
|
|
11
|
+
/**
|
|
12
|
+
* The settings applied when the caller passes none.
|
|
13
|
+
*/
|
|
14
|
+
const defaultSettings = {
|
|
15
|
+
quality: DEFAULT_IMAGE_QUALITY,
|
|
16
|
+
fillColor: DEFAULT_IMAGE_FILL_COLOR,
|
|
17
|
+
fillTransparent: DEFAULT_IMAGE_FILL_TRANSPARENT
|
|
18
|
+
};
|
|
19
|
+
|
|
11
20
|
/**
|
|
12
21
|
* Regex to detect the "fill" query parameter
|
|
13
22
|
*/
|
|
@@ -43,29 +52,38 @@ const buildUrl = (baseUrl, params = {}) => {
|
|
|
43
52
|
};
|
|
44
53
|
|
|
45
54
|
/**
|
|
46
|
-
*
|
|
47
|
-
*
|
|
55
|
+
* Builds the url that requests an image at a given size. A src that no known image source
|
|
56
|
+
* recognizes is returned untouched.
|
|
57
|
+
* @param {string|null} src Source to the image.
|
|
48
58
|
* @param {Object} dimension Dimension of the requested image.
|
|
49
59
|
* @param {number} dimension.width Width in pixels.
|
|
50
60
|
* @param {number} dimension.height Height in pixels.
|
|
61
|
+
* @param {Object} [settings] Image service settings, as resolved by useImageServiceSettings.
|
|
62
|
+
* @param {number} [settings.quality] Compression quality.
|
|
63
|
+
* @param {string} [settings.fillColor] Fill color as a hash free hex, not a CSS color.
|
|
64
|
+
* @param {boolean} [settings.fillTransparent] Whether transparent areas are filled too.
|
|
51
65
|
* @returns {string}
|
|
52
66
|
*/
|
|
53
67
|
export const getFullImageSource = (src, {
|
|
54
68
|
width,
|
|
55
69
|
height
|
|
56
|
-
} = {}) => {
|
|
70
|
+
} = {}, settings = {}) => {
|
|
71
|
+
const {
|
|
72
|
+
quality,
|
|
73
|
+
fillColor,
|
|
74
|
+
fillTransparent
|
|
75
|
+
} = {
|
|
76
|
+
...defaultSettings,
|
|
77
|
+
...settings
|
|
78
|
+
};
|
|
57
79
|
if (src && src.includes('images.shopgate.services')) {
|
|
58
|
-
const {
|
|
59
|
-
fillColor,
|
|
60
|
-
quality
|
|
61
|
-
} = getProductImageSettings();
|
|
62
80
|
const format = getImageFormat();
|
|
63
81
|
return buildUrl(src, {
|
|
64
82
|
format,
|
|
65
83
|
width,
|
|
66
84
|
height,
|
|
67
85
|
quality,
|
|
68
|
-
fill: fillColor
|
|
86
|
+
fill: fillTransparent ? `${fillColor},1` : fillColor
|
|
69
87
|
});
|
|
70
88
|
}
|
|
71
89
|
if (src && src.startsWith('https://img-cdn.shopgate.com') && !src.includes('?')) {
|
|
@@ -74,17 +92,14 @@ export const getFullImageSource = (src, {
|
|
|
74
92
|
h: height,
|
|
75
93
|
q: 70,
|
|
76
94
|
zd: 'resize',
|
|
77
|
-
|
|
95
|
+
// No transparency flag here - the legacy cdn only understands a plain color.
|
|
96
|
+
fillc: fillColor
|
|
78
97
|
});
|
|
79
98
|
}
|
|
80
99
|
|
|
81
100
|
// Check if an extension registered an external image url handler within the config collection.
|
|
82
101
|
const createUrlFn = configuration.get(CONFIGURATION_COLLECTION_CREATE_EXTERNAL_IMAGE_URL);
|
|
83
102
|
if (typeof createUrlFn === 'function') {
|
|
84
|
-
const {
|
|
85
|
-
fillColor,
|
|
86
|
-
quality
|
|
87
|
-
} = getProductImageSettings();
|
|
88
103
|
const format = getImageFormat();
|
|
89
104
|
|
|
90
105
|
// Invoke the handler with all relevant parameters.
|
|
@@ -92,6 +107,7 @@ export const getFullImageSource = (src, {
|
|
|
92
107
|
width,
|
|
93
108
|
height,
|
|
94
109
|
fillColor,
|
|
110
|
+
fillTransparent,
|
|
95
111
|
quality,
|
|
96
112
|
format
|
|
97
113
|
});
|
package/core/helpers/i18n.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../../core/helpers/i18n.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../../core/helpers/i18n.js"],"names":[],"mappings":"AA4EA;;GAEG;AACH,mBAFU,WAAW,CAEM;AAMpB,oCAFM,MAAM,EAAE,CAQpB"}
|
package/core/helpers/i18n.js
CHANGED
|
@@ -13,6 +13,7 @@ import { logger } from '@shopgate/pwa-core/helpers';
|
|
|
13
13
|
* @property {Function} number - Number translator
|
|
14
14
|
* @property {Function} getSupplementalData - Get Supplemental Data
|
|
15
15
|
* @property {Function} getPath - Get locale data by path
|
|
16
|
+
* @property {Function} has - Check whether a translation key resolves to a value
|
|
16
17
|
* @property {Function} getLang - Get locale lang code, eg de-DE
|
|
17
18
|
*/
|
|
18
19
|
|
|
@@ -50,6 +51,7 @@ const I18n = () => {
|
|
|
50
51
|
this.number = getNumberFormatter(lang);
|
|
51
52
|
this.getSupplementalData = () => locales.supplementalData || {};
|
|
52
53
|
this.getPath = path => get(locales, path);
|
|
54
|
+
this.has = path => this.getPath(path) !== undefined;
|
|
53
55
|
this.getLang = () => lang;
|
|
54
56
|
// If component decides to act accordingly this information should be exposed.
|
|
55
57
|
this.ready = true;
|
|
@@ -62,6 +64,7 @@ const I18n = () => {
|
|
|
62
64
|
number: notReadyCb,
|
|
63
65
|
getSupplementalData: notReadyCb,
|
|
64
66
|
getPath: notReadyCb,
|
|
67
|
+
has: notReadyCb,
|
|
65
68
|
getLang: notReadyCb,
|
|
66
69
|
ready: false
|
|
67
70
|
};
|
|
@@ -2,82 +2,67 @@
|
|
|
2
2
|
* Additional options for app event hooks.
|
|
3
3
|
*/
|
|
4
4
|
export interface AppEventOptions {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
5
|
+
/**
|
|
6
|
+
* When false, no listener is registered.
|
|
7
|
+
* @default true
|
|
8
|
+
*/
|
|
9
|
+
enabled?: boolean;
|
|
10
|
+
/**
|
|
11
|
+
* When true, the callback is removed after first call.
|
|
12
|
+
* @default false
|
|
13
|
+
*/
|
|
14
|
+
once?: boolean;
|
|
15
15
|
}
|
|
16
|
-
|
|
17
16
|
/**
|
|
18
17
|
* Extended options for return-from-background hook.
|
|
19
18
|
*/
|
|
20
19
|
export interface ReturnFromBackgroundOptions extends AppEventOptions {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
20
|
+
/**
|
|
21
|
+
* If true, requires a new background event to re-arm before firing again.
|
|
22
|
+
* If false, remains armed until disabled or unmounted.
|
|
23
|
+
* @default true
|
|
24
|
+
*/
|
|
25
|
+
resetAfterFire?: boolean;
|
|
27
26
|
}
|
|
28
|
-
|
|
29
27
|
/**
|
|
30
28
|
* Registers a callback for a given event from the Shopgate app event bus.
|
|
31
29
|
*
|
|
32
30
|
* Automatically unsubscribes on unmount. Can optionally run only once.
|
|
33
|
-
*
|
|
34
31
|
* @param name The event name to subscribe to.
|
|
35
32
|
* @param callback The function to call when the event fires.
|
|
36
33
|
* @param options Additional options.
|
|
37
34
|
*/
|
|
38
|
-
export declare function useAppEvent(
|
|
39
|
-
name: string,
|
|
40
|
-
callback: () => void,
|
|
41
|
-
options?: AppEventOptions
|
|
42
|
-
): void;
|
|
43
|
-
|
|
35
|
+
export declare function useAppEvent(name: string, callback: () => void, options?: AppEventOptions): void;
|
|
44
36
|
/**
|
|
45
|
-
* Registers a callback that fires when the app will enter foreground
|
|
46
|
-
*
|
|
47
|
-
* Automatically unsubscribes on unmount.
|
|
37
|
+
* Registers a callback that fires when the app will enter foreground
|
|
38
|
+
* (`applicationWillEnterForeground`).
|
|
48
39
|
*
|
|
40
|
+
* Automatically unsubscribes on unmount. Accepts same options as `useAppEvent`.
|
|
49
41
|
* @param callback The callback to run when entering foreground.
|
|
50
42
|
* @param options Additional options.
|
|
51
43
|
*/
|
|
52
|
-
export declare function useAppEventOnEnterForeground(
|
|
53
|
-
callback: () => void,
|
|
54
|
-
options?: AppEventOptions
|
|
55
|
-
): void;
|
|
56
|
-
|
|
44
|
+
export declare function useAppEventOnEnterForeground(callback: () => void, options?: AppEventOptions): void;
|
|
57
45
|
/**
|
|
58
|
-
* Registers a callback that fires when the app did enter background
|
|
59
|
-
*
|
|
60
|
-
* Automatically unsubscribes on unmount.
|
|
46
|
+
* Registers a callback that fires when the app did enter background
|
|
47
|
+
* (`applicationDidEnterBackground`).
|
|
61
48
|
*
|
|
49
|
+
* Automatically unsubscribes on unmount. Accepts same options as `useAppEvent`.
|
|
62
50
|
* @param callback The callback to run when entering background.
|
|
63
51
|
* @param options Additional options.
|
|
64
52
|
*/
|
|
65
|
-
export declare function useAppEventOnDidEnterBackground(
|
|
66
|
-
callback: () => void,
|
|
67
|
-
options?: AppEventOptions
|
|
68
|
-
): void;
|
|
69
|
-
|
|
53
|
+
export declare function useAppEventOnDidEnterBackground(callback: () => void, options?: AppEventOptions): void;
|
|
70
54
|
/**
|
|
71
55
|
* Invokes a callback only after the app was first sent to background and then
|
|
72
|
-
* returns to the foreground
|
|
56
|
+
* returns to the foreground - i.e. a complete background to foreground cycle.
|
|
73
57
|
*
|
|
74
58
|
* Common use case: user leaves the app to open system settings and returns, so you
|
|
75
59
|
* can re-check permissions or refresh data.
|
|
76
60
|
*
|
|
61
|
+
* Internally, this subscribes to both background and foreground events:
|
|
62
|
+
* - Arms itself when entering background
|
|
63
|
+
* - Fires on next foreground if armed
|
|
77
64
|
* @param callback The callback to run after returning from background.
|
|
78
65
|
* @param options Additional options.
|
|
79
66
|
*/
|
|
80
|
-
export declare function useAppEventOnReturnFromBackground(
|
|
81
|
-
|
|
82
|
-
options?: ReturnFromBackgroundOptions
|
|
83
|
-
): void;
|
|
67
|
+
export declare function useAppEventOnReturnFromBackground(callback: () => void, options?: ReturnFromBackgroundOptions): void;
|
|
68
|
+
//# sourceMappingURL=appEvents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"appEvents.d.ts","sourceRoot":"","sources":["../../../../core/hooks/events/appEvents.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,2BAA4B,SAAQ,eAAe;IAClE;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAkBD;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,EAAE,OAAO,GAAE,eAAoB,QAiB5F;AAED;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,OAAO,CAAC,EAAE,eAAe,QAE3F;AAED;;;;;;;GAOG;AACH,wBAAgB,+BAA+B,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,OAAO,CAAC,EAAE,eAAe,QAE9F;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,iCAAiC,CAC/C,QAAQ,EAAE,MAAM,IAAI,EACpB,OAAO,GAAE,2BAAgC,QAsB1C"}
|
|
@@ -2,15 +2,22 @@ import { useEffect, useRef } from 'react';
|
|
|
2
2
|
import { APP_EVENT_APPLICATION_WILL_ENTER_FOREGROUND, APP_EVENT_APPLICATION_DID_ENTER_BACKGROUND } from '@shopgate/engage/core/constants';
|
|
3
3
|
import { event } from '@shopgate/engage/core/classes';
|
|
4
4
|
|
|
5
|
+
/**
|
|
6
|
+
* Additional options for app event hooks.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Extended options for return-from-background hook.
|
|
11
|
+
*/
|
|
12
|
+
|
|
5
13
|
/**
|
|
6
14
|
* Returns a stable reference to the given callback, preserving the same function identity
|
|
7
15
|
* across renders, while still always calling the latest version of the callback.
|
|
8
16
|
*
|
|
9
17
|
* Useful when passing callbacks into event listeners or effects so they don't re-subscribe
|
|
10
18
|
* on every render but still access up-to-date props/state.
|
|
11
|
-
*
|
|
12
|
-
* @
|
|
13
|
-
* @returns {Function} A stable function reference that always invokes the latest callback.
|
|
19
|
+
* @param fn The callback function whose latest version should be retained.
|
|
20
|
+
* @returns A stable function reference that always invokes the latest callback.
|
|
14
21
|
*/
|
|
15
22
|
function useStableCallback(fn) {
|
|
16
23
|
const ref = useRef(fn);
|
|
@@ -18,16 +25,14 @@ function useStableCallback(fn) {
|
|
|
18
25
|
const stable = useRef((...args) => ref.current?.(...args));
|
|
19
26
|
return stable.current;
|
|
20
27
|
}
|
|
28
|
+
|
|
21
29
|
/**
|
|
22
30
|
* Registers a callback for a given event from the Shopgate app event bus.
|
|
23
31
|
*
|
|
24
32
|
* Automatically unsubscribes on unmount. Can optionally run only once.
|
|
25
|
-
*
|
|
26
|
-
* @param
|
|
27
|
-
* @param
|
|
28
|
-
* @param {Object} [options] Additional options.
|
|
29
|
-
* @param {boolean} [options.enabled=true] When false, no listener is registered.
|
|
30
|
-
* @param {boolean} [options.once=false] When true, the callback is removed after first call.
|
|
33
|
+
* @param name The event name to subscribe to.
|
|
34
|
+
* @param callback The function to call when the event fires.
|
|
35
|
+
* @param options Additional options.
|
|
31
36
|
*/
|
|
32
37
|
export function useAppEvent(name, callback, options = {}) {
|
|
33
38
|
const {
|
|
@@ -37,7 +42,10 @@ export function useAppEvent(name, callback, options = {}) {
|
|
|
37
42
|
const latest = useStableCallback(callback);
|
|
38
43
|
useEffect(() => {
|
|
39
44
|
if (!enabled) return undefined;
|
|
40
|
-
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* Invokes the callback, and unsubscribes again when the event was only wanted once.
|
|
48
|
+
*/
|
|
41
49
|
const handler = () => {
|
|
42
50
|
latest();
|
|
43
51
|
if (once) event.removeCallback(name, handler);
|
|
@@ -52,11 +60,8 @@ export function useAppEvent(name, callback, options = {}) {
|
|
|
52
60
|
* (`applicationWillEnterForeground`).
|
|
53
61
|
*
|
|
54
62
|
* Automatically unsubscribes on unmount. Accepts same options as `useAppEvent`.
|
|
55
|
-
*
|
|
56
|
-
* @param
|
|
57
|
-
* @param {Object} [options] Additional options.
|
|
58
|
-
* @param {boolean} [options.enabled=true] When false, the listener is not registered.
|
|
59
|
-
* @param {boolean} [options.once=false] Remove after first call.
|
|
63
|
+
* @param callback The callback to run when entering foreground.
|
|
64
|
+
* @param options Additional options.
|
|
60
65
|
*/
|
|
61
66
|
export function useAppEventOnEnterForeground(callback, options) {
|
|
62
67
|
useAppEvent(APP_EVENT_APPLICATION_WILL_ENTER_FOREGROUND, callback, options);
|
|
@@ -65,12 +70,10 @@ export function useAppEventOnEnterForeground(callback, options) {
|
|
|
65
70
|
/**
|
|
66
71
|
* Registers a callback that fires when the app did enter background
|
|
67
72
|
* (`applicationDidEnterBackground`).
|
|
68
|
-
** Automatically unsubscribes on unmount. Accepts same options as `useAppEvent`.
|
|
69
73
|
*
|
|
70
|
-
*
|
|
71
|
-
* @param
|
|
72
|
-
* @param
|
|
73
|
-
* @param {boolean} [options.once=false] Remove after first call.
|
|
74
|
+
* Automatically unsubscribes on unmount. Accepts same options as `useAppEvent`.
|
|
75
|
+
* @param callback The callback to run when entering background.
|
|
76
|
+
* @param options Additional options.
|
|
74
77
|
*/
|
|
75
78
|
export function useAppEventOnDidEnterBackground(callback, options) {
|
|
76
79
|
useAppEvent(APP_EVENT_APPLICATION_DID_ENTER_BACKGROUND, callback, options);
|
|
@@ -78,7 +81,7 @@ export function useAppEventOnDidEnterBackground(callback, options) {
|
|
|
78
81
|
|
|
79
82
|
/**
|
|
80
83
|
* Invokes a callback only after the app was first sent to background and then
|
|
81
|
-
* returns to the foreground
|
|
84
|
+
* returns to the foreground - i.e. a complete background to foreground cycle.
|
|
82
85
|
*
|
|
83
86
|
* Common use case: user leaves the app to open system settings and returns, so you
|
|
84
87
|
* can re-check permissions or refresh data.
|
|
@@ -86,14 +89,8 @@ export function useAppEventOnDidEnterBackground(callback, options) {
|
|
|
86
89
|
* Internally, this subscribes to both background and foreground events:
|
|
87
90
|
* - Arms itself when entering background
|
|
88
91
|
* - Fires on next foreground if armed
|
|
89
|
-
*
|
|
90
|
-
* @param
|
|
91
|
-
* @param {Object} [options] Additional options.
|
|
92
|
-
* @param {boolean} [options.enabled=true] When false, no listener behavior is active.
|
|
93
|
-
* @param {boolean} [options.once=false] When true, callback fires only for the first cycle.
|
|
94
|
-
* @param {boolean} [options.resetAfterFire=true]
|
|
95
|
-
* If true, requires a new background event to re-arm before firing again.
|
|
96
|
-
* If false, remains armed until disabled or unmounted.
|
|
92
|
+
* @param callback The callback to run after returning from background.
|
|
93
|
+
* @param options Additional options.
|
|
97
94
|
*/
|
|
98
95
|
export function useAppEventOnReturnFromBackground(callback, options = {}) {
|
|
99
96
|
const {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export * from
|
|
2
|
-
export { default as usePressHandler } from
|
|
3
|
-
export { default as useLongPress } from
|
|
4
|
-
export { default as useScrollDirectionChange } from
|
|
1
|
+
export * from './appEvents';
|
|
2
|
+
export { default as usePressHandler } from './usePressHandler';
|
|
3
|
+
export { default as useLongPress } from './useLongPress';
|
|
4
|
+
export { default as useScrollDirectionChange } from './useScrollDirectionChange';
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../core/hooks/events/index.
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../core/hooks/events/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,wBAAwB,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -1,68 +1,65 @@
|
|
|
1
|
-
import { MouseEvent as ReactMouseEvent, TouchEvent as ReactTouchEvent } from 'react';
|
|
2
|
-
|
|
1
|
+
import type { MouseEvent as ReactMouseEvent, TouchEvent as ReactTouchEvent } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* The events a long press interaction can originate from. The handlers below are spread onto an
|
|
4
|
+
* element, so these are React's synthetic events rather than the DOM ones.
|
|
5
|
+
*/
|
|
6
|
+
export type LongPressEvent = ReactMouseEvent | ReactTouchEvent;
|
|
7
|
+
/**
|
|
8
|
+
* Event handlers to spread onto the element that should react to a long press.
|
|
9
|
+
*/
|
|
3
10
|
export interface LongPressHandlers {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* Attach to `onContextMenu` event to prevent the native context menu.
|
|
31
|
-
*/
|
|
32
|
-
onContextMenu: (e: MouseEvent) => void;
|
|
11
|
+
/**
|
|
12
|
+
* Attach to `onMouseDown` event.
|
|
13
|
+
*/
|
|
14
|
+
onMouseDown: (e: LongPressEvent) => void;
|
|
15
|
+
/**
|
|
16
|
+
* Attach to `onTouchStart` event.
|
|
17
|
+
*/
|
|
18
|
+
onTouchStart: (e: LongPressEvent) => void;
|
|
19
|
+
/**
|
|
20
|
+
* Attach to `onMouseUp` event.
|
|
21
|
+
*/
|
|
22
|
+
onMouseUp: (e: LongPressEvent) => void;
|
|
23
|
+
/**
|
|
24
|
+
* Attach to `onMouseLeave` event.
|
|
25
|
+
*/
|
|
26
|
+
onMouseLeave: (e: LongPressEvent) => void;
|
|
27
|
+
/**
|
|
28
|
+
* Attach to `onTouchEnd` event.
|
|
29
|
+
*/
|
|
30
|
+
onTouchEnd: (e: LongPressEvent) => void;
|
|
31
|
+
/**
|
|
32
|
+
* Attach to `onContextMenu` event to prevent the native context menu.
|
|
33
|
+
*/
|
|
34
|
+
onContextMenu: (e: ReactMouseEvent) => void;
|
|
33
35
|
}
|
|
34
|
-
|
|
36
|
+
/**
|
|
37
|
+
* Configuration and lifecycle callbacks for a long press interaction.
|
|
38
|
+
*/
|
|
35
39
|
export interface UseLongPressOptions {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
* Called when the press is cancelled before the threshold.
|
|
54
|
-
*/
|
|
55
|
-
onCancel?: (e: ReactMouseEvent | ReactTouchEvent) => void;
|
|
40
|
+
/**
|
|
41
|
+
* Duration in milliseconds to trigger long press.
|
|
42
|
+
* @default 1000
|
|
43
|
+
*/
|
|
44
|
+
threshold?: number;
|
|
45
|
+
/**
|
|
46
|
+
* Called when the press starts.
|
|
47
|
+
*/
|
|
48
|
+
onStart?: (e: LongPressEvent) => void;
|
|
49
|
+
/**
|
|
50
|
+
* Called when the long press completes.
|
|
51
|
+
*/
|
|
52
|
+
onFinish?: (e: LongPressEvent) => void;
|
|
53
|
+
/**
|
|
54
|
+
* Called when the press is cancelled before the threshold.
|
|
55
|
+
*/
|
|
56
|
+
onCancel?: (e: LongPressEvent) => void;
|
|
56
57
|
}
|
|
57
|
-
|
|
58
58
|
/**
|
|
59
59
|
* Custom hook to handle long press interactions.
|
|
60
|
-
*
|
|
61
60
|
* @param callback Function to call on long press.
|
|
62
61
|
* @param options Configuration and lifecycle callbacks.
|
|
63
62
|
* @returns An object containing event handlers for mouse and touch events.
|
|
64
63
|
*/
|
|
65
|
-
export default function useLongPress(
|
|
66
|
-
|
|
67
|
-
options?: UseLongPressOptions
|
|
68
|
-
): LongPressHandlers;
|
|
64
|
+
export default function useLongPress(callback: (e: LongPressEvent) => void, options?: UseLongPressOptions): LongPressHandlers;
|
|
65
|
+
//# sourceMappingURL=useLongPress.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useLongPress.d.ts","sourceRoot":"","sources":["../../../../core/hooks/events/useLongPress.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,IAAI,eAAe,EAAE,UAAU,IAAI,eAAe,EAAE,MAAM,OAAO,CAAC;AAE1F;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,eAAe,GAAG,eAAe,CAAC;AAE/D;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,WAAW,EAAE,CAAC,CAAC,EAAE,cAAc,KAAK,IAAI,CAAC;IAEzC;;OAEG;IACH,YAAY,EAAE,CAAC,CAAC,EAAE,cAAc,KAAK,IAAI,CAAC;IAE1C;;OAEG;IACH,SAAS,EAAE,CAAC,CAAC,EAAE,cAAc,KAAK,IAAI,CAAC;IAEvC;;OAEG;IACH,YAAY,EAAE,CAAC,CAAC,EAAE,cAAc,KAAK,IAAI,CAAC;IAE1C;;OAEG;IACH,UAAU,EAAE,CAAC,CAAC,EAAE,cAAc,KAAK,IAAI,CAAC;IAExC;;OAEG;IACH,aAAa,EAAE,CAAC,CAAC,EAAE,eAAe,KAAK,IAAI,CAAC;CAC7C;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,cAAc,KAAK,IAAI,CAAC;IAEtC;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,cAAc,KAAK,IAAI,CAAC;IAEvC;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,cAAc,KAAK,IAAI,CAAC;CACxC;AAUD;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,YAAY,CAClC,QAAQ,EAAE,CAAC,CAAC,EAAE,cAAc,KAAK,IAAI,EACrC,OAAO,GAAE,mBAAwB,GAChC,iBAAiB,CA4CnB"}
|
|
@@ -1,32 +1,39 @@
|
|
|
1
|
-
// @ts-check
|
|
2
1
|
import { useRef, useCallback } from 'react';
|
|
3
2
|
|
|
4
|
-
/**
|
|
5
|
-
|
|
3
|
+
/**
|
|
4
|
+
* The events a long press interaction can originate from. The handlers below are spread onto an
|
|
5
|
+
* element, so these are React's synthetic events rather than the DOM ones.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Event handlers to spread onto the element that should react to a long press.
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Configuration and lifecycle callbacks for a long press interaction.
|
|
14
|
+
*/
|
|
6
15
|
|
|
7
16
|
/**
|
|
8
17
|
* Prevents the default context menu from appearing on long press.
|
|
9
|
-
* @param
|
|
18
|
+
* @param e The event object.
|
|
10
19
|
*/
|
|
11
20
|
const preventContextMenu = e => {
|
|
12
21
|
e.preventDefault();
|
|
13
22
|
};
|
|
14
23
|
|
|
15
|
-
// eslint-disable-next-line valid-jsdoc
|
|
16
24
|
/**
|
|
17
25
|
* Custom hook to handle long press interactions.
|
|
18
|
-
*
|
|
19
|
-
* @param
|
|
20
|
-
* @
|
|
21
|
-
* @returns {LongPressHandlers} An object containing event handlers for mouse and touch events.
|
|
26
|
+
* @param callback Function to call on long press.
|
|
27
|
+
* @param options Configuration and lifecycle callbacks.
|
|
28
|
+
* @returns An object containing event handlers for mouse and touch events.
|
|
22
29
|
*/
|
|
23
|
-
export default function useLongPress(callback, {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
+
export default function useLongPress(callback, options = {}) {
|
|
31
|
+
const {
|
|
32
|
+
threshold = 1000,
|
|
33
|
+
onStart,
|
|
34
|
+
onFinish,
|
|
35
|
+
onCancel
|
|
36
|
+
} = options;
|
|
30
37
|
const timerRef = useRef(undefined);
|
|
31
38
|
const triggeredRef = useRef(false);
|
|
32
39
|
const start = useCallback(e => {
|