@jetshop/ui 5.16.1 → 5.17.0-alpha.f7018eb5
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/package.json +1 -1
- package/Accordion/Accordion.d.ts +0 -33
- package/Accordion/Accordion.js +0 -59
- package/Accordion/Accordion.js.map +0 -1
- package/Auth/FormFields/CountriesInput.d.ts +0 -16
- package/Auth/FormFields/CountriesInput.js +0 -28
- package/Auth/FormFields/CountriesInput.js.map +0 -1
- package/Auth/LogInBehavior.d.ts +0 -22
- package/Auth/LogInBehavior.js +0 -24
- package/Auth/LogInBehavior.js.map +0 -1
- package/Auth/LogInFormProvider.d.ts +0 -7
- package/Auth/LogInFormProvider.js +0 -71
- package/Auth/LogInFormProvider.js.map +0 -1
- package/Auth/LogOut.d.ts +0 -10
- package/Auth/LogOut.js +0 -24
- package/Auth/LogOut.js.map +0 -1
- package/Auth/logInValidator.d.ts +0 -8
- package/Auth/logInValidator.js +0 -16
- package/Auth/logInValidator.js.map +0 -1
- package/Breadcrumbs/Breadcrumbs.d.ts +0 -14
- package/Breadcrumbs/Breadcrumbs.js +0 -84
- package/Breadcrumbs/Breadcrumbs.js.map +0 -1
- package/Breadcrumbs/getParentsOrCanonicalRoute.d.ts +0 -3
- package/Breadcrumbs/getParentsOrCanonicalRoute.js +0 -14
- package/Breadcrumbs/getParentsOrCanonicalRoute.js.map +0 -1
- package/Breadcrumbs/index.d.ts +0 -1
- package/Breadcrumbs/index.js +0 -2
- package/Breadcrumbs/index.js.map +0 -1
- package/Breakpoints.d.ts +0 -12
- package/Breakpoints.js +0 -36
- package/Breakpoints.js.map +0 -1
- package/Button/Button.d.ts +0 -14
- package/Button/Button.js +0 -60
- package/Button/Button.js.map +0 -1
- package/Button/SecondaryButton.d.ts +0 -3
- package/Button/SecondaryButton.js +0 -9
- package/Button/SecondaryButton.js.map +0 -1
- package/Button/TrendButton.d.ts +0 -3
- package/Button/TrendButton.js +0 -8
- package/Button/TrendButton.js.map +0 -1
- package/Button/index.d.ts +0 -4
- package/Button/index.js +0 -5
- package/Button/index.js.map +0 -1
- package/CategoryLink.d.ts +0 -9
- package/CategoryLink.js +0 -43
- package/CategoryLink.js.map +0 -1
- package/ChannelSelector/ChannelListItem.d.ts +0 -10
- package/ChannelSelector/ChannelListItem.js +0 -51
- package/ChannelSelector/ChannelListItem.js.map +0 -1
- package/ChannelSelector/ChannelSelector.d.ts +0 -63
- package/ChannelSelector/ChannelSelector.js +0 -80
- package/ChannelSelector/ChannelSelector.js.map +0 -1
- package/ChannelSelector/ChannelSelectorButtons.d.ts +0 -3
- package/ChannelSelector/ChannelSelectorButtons.js +0 -20
- package/ChannelSelector/ChannelSelectorButtons.js.map +0 -1
- package/ChannelSelector/Channels.d.ts +0 -17
- package/ChannelSelector/Channels.js +0 -12
- package/ChannelSelector/Channels.js.map +0 -1
- package/ChannelSelector/LargeSelector.d.ts +0 -3
- package/ChannelSelector/LargeSelector.js +0 -67
- package/ChannelSelector/LargeSelector.js.map +0 -1
- package/ChannelSelector/MiniSelector.d.ts +0 -4
- package/ChannelSelector/MiniSelector.js +0 -58
- package/ChannelSelector/MiniSelector.js.map +0 -1
- package/ChannelSelector/Region.d.ts +0 -28
- package/ChannelSelector/Region.js +0 -21
- package/ChannelSelector/Region.js.map +0 -1
- package/ChannelSelector/groupBy.d.ts +0 -7
- package/ChannelSelector/groupBy.js +0 -16
- package/ChannelSelector/groupBy.js.map +0 -1
- package/Checkbox/Checkbox.d.ts +0 -10
- package/Checkbox/Checkbox.js +0 -69
- package/Checkbox/Checkbox.js.map +0 -1
- package/Checkbox/CheckboxGroup.d.ts +0 -23
- package/Checkbox/CheckboxGroup.js +0 -22
- package/Checkbox/CheckboxGroup.js.map +0 -1
- package/Checkbox/index.d.ts +0 -2
- package/Checkbox/index.js +0 -3
- package/Checkbox/index.js.map +0 -1
- package/ContentPageLink.d.ts +0 -9
- package/ContentPageLink.js +0 -37
- package/ContentPageLink.js.map +0 -1
- package/ContentRenderer.d.ts +0 -9
- package/ContentRenderer.js +0 -36
- package/ContentRenderer.js.map +0 -1
- package/DropdownMenu/Button.d.ts +0 -7
- package/DropdownMenu/Button.js +0 -32
- package/DropdownMenu/Button.js.map +0 -1
- package/DropdownMenu/DropdownMenu.d.ts +0 -21
- package/DropdownMenu/DropdownMenu.js +0 -72
- package/DropdownMenu/DropdownMenu.js.map +0 -1
- package/DropdownMenu/Item.d.ts +0 -13
- package/DropdownMenu/Item.js +0 -48
- package/DropdownMenu/Item.js.map +0 -1
- package/DropdownMenu/Items.d.ts +0 -16
- package/DropdownMenu/Items.js +0 -53
- package/DropdownMenu/Items.js.map +0 -1
- package/DropdownMenu/index.d.ts +0 -4
- package/DropdownMenu/index.js +0 -5
- package/DropdownMenu/index.js.map +0 -1
- package/ErrorBoundary/Generic.d.ts +0 -17
- package/ErrorBoundary/Generic.js +0 -69
- package/ErrorBoundary/Generic.js.map +0 -1
- package/ErrorBoundary/PassThrough.d.ts +0 -3
- package/ErrorBoundary/PassThrough.js +0 -7
- package/ErrorBoundary/PassThrough.js.map +0 -1
- package/Gallery/Gallery.d.ts +0 -39
- package/Gallery/Gallery.js +0 -122
- package/Gallery/Gallery.js.map +0 -1
- package/Gallery/constructGallery.d.ts +0 -15
- package/Gallery/constructGallery.js +0 -41
- package/Gallery/constructGallery.js.map +0 -1
- package/Image/B2BImage.d.ts +0 -50
- package/Image/B2BImage.js +0 -53
- package/Image/B2BImage.js.map +0 -1
- package/Image/BaseImage.d.ts +0 -39
- package/Image/BaseImage.js +0 -192
- package/Image/BaseImage.js.map +0 -1
- package/Image/Fallback.d.ts +0 -5
- package/Image/Fallback.js +0 -4
- package/Image/Fallback.js.map +0 -1
- package/Image/FlightImage.d.ts +0 -52
- package/Image/FlightImage.js +0 -58
- package/Image/FlightImage.js.map +0 -1
- package/Image/Image.d.ts +0 -2
- package/Image/Image.js +0 -3
- package/Image/Image.js.map +0 -1
- package/Image/index.d.ts +0 -1
- package/Image/index.js +0 -2
- package/Image/index.js.map +0 -1
- package/Image/useConstructImage.d.ts +0 -46
- package/Image/useConstructImage.js +0 -99
- package/Image/useConstructImage.js.map +0 -1
- package/Image/utils/aspectRatioToFraction.d.ts +0 -2
- package/Image/utils/aspectRatioToFraction.js +0 -11
- package/Image/utils/aspectRatioToFraction.js.map +0 -1
- package/Image/utils/getFullUrl.d.ts +0 -6
- package/Image/utils/getFullUrl.js +0 -18
- package/Image/utils/getFullUrl.js.map +0 -1
- package/Image/utils/getImageWidth.d.ts +0 -1
- package/Image/utils/getImageWidth.js +0 -12
- package/Image/utils/getImageWidth.js.map +0 -1
- package/Image/utils/getImageWidths.d.ts +0 -2
- package/Image/utils/getImageWidths.js +0 -14
- package/Image/utils/getImageWidths.js.map +0 -1
- package/Image/utils/getLQIP.d.ts +0 -8
- package/Image/utils/getLQIP.js +0 -20
- package/Image/utils/getLQIP.js.map +0 -1
- package/Image/utils/getLargestSize.d.ts +0 -7
- package/Image/utils/getLargestSize.js +0 -17
- package/Image/utils/getLargestSize.js.map +0 -1
- package/Image/utils/getSizeForBreakpoint.d.ts +0 -2
- package/Image/utils/getSizeForBreakpoint.js +0 -16
- package/Image/utils/getSizeForBreakpoint.js.map +0 -1
- package/Image/utils/getSizesMap.d.ts +0 -2
- package/Image/utils/getSizesMap.js +0 -22
- package/Image/utils/getSizesMap.js.map +0 -1
- package/Image/utils/getSmallestSize.d.ts +0 -2
- package/Image/utils/getSmallestSize.js +0 -12
- package/Image/utils/getSmallestSize.js.map +0 -1
- package/Image/utils/getSrcSetFromWidths.d.ts +0 -10
- package/Image/utils/getSrcSetFromWidths.js +0 -9
- package/Image/utils/getSrcSetFromWidths.js.map +0 -1
- package/Image/utils/getSrcWithParams.d.ts +0 -3
- package/Image/utils/getSrcWithParams.js +0 -29
- package/Image/utils/getSrcWithParams.js.map +0 -1
- package/Image/utils/paddingForAspectRatio.d.ts +0 -1
- package/Image/utils/paddingForAspectRatio.js +0 -6
- package/Image/utils/paddingForAspectRatio.js.map +0 -1
- package/Image/utils/remToPx.d.ts +0 -1
- package/Image/utils/remToPx.js +0 -2
- package/Image/utils/remToPx.js.map +0 -1
- package/Image/utils/sizeToNumber.d.ts +0 -2
- package/Image/utils/sizeToNumber.js +0 -27
- package/Image/utils/sizeToNumber.js.map +0 -1
- package/Input/Input.d.ts +0 -6
- package/Input/Input.js +0 -45
- package/Input/Input.js.map +0 -1
- package/Input/index.d.ts +0 -3
- package/Input/index.js +0 -4
- package/Input/index.js.map +0 -1
- package/JetshopText.d.ts +0 -3
- package/JetshopText.js +0 -13
- package/JetshopText.js.map +0 -1
- package/Loading/LoadingBar.d.ts +0 -8
- package/Loading/LoadingBar.js +0 -58
- package/Loading/LoadingBar.js.map +0 -1
- package/Loading/LoadingLine.d.ts +0 -31
- package/Loading/LoadingLine.js +0 -26
- package/Loading/LoadingLine.js.map +0 -1
- package/Loading/NetworkStatusNotifier.d.ts +0 -2
- package/Loading/NetworkStatusNotifier.js +0 -4
- package/Loading/NetworkStatusNotifier.js.map +0 -1
- package/Menu/MenuContainer.d.ts +0 -28
- package/Menu/MenuContainer.js +0 -46
- package/Menu/MenuContainer.js.map +0 -1
- package/Menu/RecursiveTree.d.ts +0 -28
- package/Menu/RecursiveTree.js +0 -91
- package/Menu/RecursiveTree.js.map +0 -1
- package/Modal/Drawer/Drawer.d.ts +0 -11
- package/Modal/Drawer/Drawer.js +0 -31
- package/Modal/Drawer/Drawer.js.map +0 -1
- package/Modal/Drawer/DrawerTarget.d.ts +0 -6
- package/Modal/Drawer/DrawerTarget.js +0 -12
- package/Modal/Drawer/DrawerTarget.js.map +0 -1
- package/Modal/Drawer/DrawerTrigger.d.ts +0 -11
- package/Modal/Drawer/DrawerTrigger.js +0 -16
- package/Modal/Drawer/DrawerTrigger.js.map +0 -1
- package/Modal/Drawer/index.d.ts +0 -3
- package/Modal/Drawer/index.js +0 -4
- package/Modal/Drawer/index.js.map +0 -1
- package/Modal/Flyout/FlyoutTarget.d.ts +0 -10
- package/Modal/Flyout/FlyoutTarget.js +0 -15
- package/Modal/Flyout/FlyoutTarget.js.map +0 -1
- package/Modal/Flyout/FlyoutTrigger.d.ts +0 -15
- package/Modal/Flyout/FlyoutTrigger.js +0 -18
- package/Modal/Flyout/FlyoutTrigger.js.map +0 -1
- package/Modal/Flyout/index.d.ts +0 -2
- package/Modal/Flyout/index.js +0 -3
- package/Modal/Flyout/index.js.map +0 -1
- package/Modal/ModalContext.d.ts +0 -26
- package/Modal/ModalContext.js +0 -9
- package/Modal/ModalContext.js.map +0 -1
- package/Modal/ModalProvider.d.ts +0 -5
- package/Modal/ModalProvider.js +0 -83
- package/Modal/ModalProvider.js.map +0 -1
- package/Modal/ModalRoot.d.ts +0 -3
- package/Modal/ModalRoot.js +0 -44
- package/Modal/ModalRoot.js.map +0 -1
- package/Modal/ModalTrigger.d.ts +0 -9
- package/Modal/ModalTrigger.js +0 -9
- package/Modal/ModalTrigger.js.map +0 -1
- package/Pagination/Pagination.d.ts +0 -7
- package/Pagination/Pagination.js +0 -23
- package/Pagination/Pagination.js.map +0 -1
- package/Pagination/PaginationBehaviour.d.ts +0 -52
- package/Pagination/PaginationBehaviour.js +0 -68
- package/Pagination/PaginationBehaviour.js.map +0 -1
- package/Pagination/index.d.ts +0 -2
- package/Pagination/index.js +0 -3
- package/Pagination/index.js.map +0 -1
- package/Pagination/usePagination.d.ts +0 -15
- package/Pagination/usePagination.js +0 -46
- package/Pagination/usePagination.js.map +0 -1
- package/PreOrderDateSelector/PreOrderDateSelector.d.ts +0 -20
- package/PreOrderDateSelector/PreOrderDateSelector.js +0 -74
- package/PreOrderDateSelector/PreOrderDateSelector.js.map +0 -1
- package/PreOrderDateSelector/index.d.ts +0 -2
- package/PreOrderDateSelector/index.js +0 -3
- package/PreOrderDateSelector/index.js.map +0 -1
- package/Price/Currency.d.ts +0 -9
- package/Price/Currency.js +0 -11
- package/Price/Currency.js.map +0 -1
- package/Price/Price.d.ts +0 -31
- package/Price/Price.js +0 -44
- package/Price/Price.js.map +0 -1
- package/Price/index.d.ts +0 -1
- package/Price/index.js +0 -2
- package/Price/index.js.map +0 -1
- package/ProductLink.d.ts +0 -21
- package/ProductLink.js +0 -82
- package/ProductLink.js.map +0 -1
- package/ProductList/Badges.d.ts +0 -6
- package/ProductList/Badges.js +0 -56
- package/ProductList/Badges.js.map +0 -1
- package/ProductList/GridProduct.d.ts +0 -24
- package/ProductList/GridProduct.js +0 -58
- package/ProductList/GridProduct.js.map +0 -1
- package/ProductList/ProductGrid.d.ts +0 -16
- package/ProductList/ProductGrid.js +0 -30
- package/ProductList/ProductGrid.js.map +0 -1
- package/ProductList/ProductImage.d.ts +0 -12
- package/ProductList/ProductImage.js +0 -21
- package/ProductList/ProductImage.js.map +0 -1
- package/ProductSpecifications/ProductSpecifications.d.ts +0 -8
- package/ProductSpecifications/ProductSpecifications.js +0 -78
- package/ProductSpecifications/ProductSpecifications.js.map +0 -1
- package/ScrollRestorationHandler/ScrollRestorationHandler.d.ts +0 -8
- package/ScrollRestorationHandler/ScrollRestorationHandler.js +0 -17
- package/ScrollRestorationHandler/ScrollRestorationHandler.js.map +0 -1
- package/ScrollRestorationHandler/index.d.ts +0 -1
- package/ScrollRestorationHandler/index.js +0 -2
- package/ScrollRestorationHandler/index.js.map +0 -1
- package/ScrollRestorationHandler/isInIgnoredRouteTypes.d.ts +0 -6
- package/ScrollRestorationHandler/isInIgnoredRouteTypes.js +0 -8
- package/ScrollRestorationHandler/isInIgnoredRouteTypes.js.map +0 -1
- package/ScrollRestorationHandler/useScrollRestore.d.ts +0 -7
- package/ScrollRestorationHandler/useScrollRestore.js +0 -20
- package/ScrollRestorationHandler/useScrollRestore.js.map +0 -1
- package/Search/SearchAutoCompleteContainer.d.ts +0 -45
- package/Search/SearchAutoCompleteContainer.js +0 -172
- package/Search/SearchAutoCompleteContainer.js.map +0 -1
- package/Search/SearchField.d.ts +0 -15
- package/Search/SearchField.js +0 -97
- package/Search/SearchField.js.map +0 -1
- package/Search/SearchPage/PageOf.d.ts +0 -5
- package/Search/SearchPage/PageOf.js +0 -7
- package/Search/SearchPage/PageOf.js.map +0 -1
- package/Search/SearchPage/SearchMeta.d.ts +0 -16
- package/Search/SearchPage/SearchMeta.js +0 -20
- package/Search/SearchPage/SearchMeta.js.map +0 -1
- package/Search/SearchPage/SearchPageBehaviour.d.ts +0 -19
- package/Search/SearchPage/SearchPageBehaviour.js +0 -67
- package/Search/SearchPage/SearchPageBehaviour.js.map +0 -1
- package/Search/SuggestedTerm.d.ts +0 -16
- package/Search/SuggestedTerm.js +0 -35
- package/Search/SuggestedTerm.js.map +0 -1
- package/Search/index.d.ts +0 -1
- package/Search/index.js +0 -2
- package/Search/index.js.map +0 -1
- package/Select/Components.d.ts +0 -28
- package/Select/Components.js +0 -91
- package/Select/Components.js.map +0 -1
- package/Select/SelectComponents/Quantity.d.ts +0 -5
- package/Select/SelectComponents/Quantity.js +0 -8
- package/Select/SelectComponents/Quantity.js.map +0 -1
- package/Select/index.d.ts +0 -5
- package/Select/index.js +0 -2
- package/Select/index.js.map +0 -1
- package/SortOrder/SortOrder.d.ts +0 -16
- package/SortOrder/SortOrder.js +0 -32
- package/SortOrder/SortOrder.js.map +0 -1
- package/SortOrder/SortOrderDropdown.d.ts +0 -9
- package/SortOrder/SortOrderDropdown.js +0 -25
- package/SortOrder/SortOrderDropdown.js.map +0 -1
- package/SortOrder/SortOrderList.d.ts +0 -7
- package/SortOrder/SortOrderList.js +0 -17
- package/SortOrder/SortOrderList.js.map +0 -1
- package/StartPageRenderer/StartPageRenderer.d.ts +0 -17
- package/StartPageRenderer/StartPageRenderer.js +0 -52
- package/StartPageRenderer/StartPageRenderer.js.map +0 -1
- package/StartPageRenderer/index.d.ts +0 -1
- package/StartPageRenderer/index.js +0 -2
- package/StartPageRenderer/index.js.map +0 -1
- package/Stock/StockStatusContainer.d.ts +0 -16
- package/Stock/StockStatusContainer.js +0 -40
- package/Stock/StockStatusContainer.js.map +0 -1
- package/Text/Text.d.ts +0 -11
- package/Text/Text.js +0 -22
- package/Text/Text.js.map +0 -1
- package/Text/index.d.ts +0 -3
- package/Text/index.js +0 -4
- package/Text/index.js.map +0 -1
- package/Theme/createTheme.d.ts +0 -16
- package/Theme/createTheme.js +0 -5
- package/Theme/createTheme.js.map +0 -1
- package/Theme/cssReset.d.ts +0 -1
- package/Theme/cssReset.js +0 -160
- package/Theme/cssReset.js.map +0 -1
- package/Theme/normalizeCss.d.ts +0 -1
- package/Theme/normalizeCss.js +0 -357
- package/Theme/normalizeCss.js.map +0 -1
- package/Theme/sanitizeCss.d.ts +0 -1
- package/Theme/sanitizeCss.js +0 -572
- package/Theme/sanitizeCss.js.map +0 -1
- package/WindowGrid/WindowGrid.d.ts +0 -11
- package/WindowGrid/WindowGrid.js +0 -58
- package/WindowGrid/WindowGrid.js.map +0 -1
- package/WindowGrid/index.d.ts +0 -1
- package/WindowGrid/index.js +0 -2
- package/WindowGrid/index.js.map +0 -1
- package/WindowGrid/useResizeObserver.d.ts +0 -3
- package/WindowGrid/useResizeObserver.js +0 -14
- package/WindowGrid/useResizeObserver.js.map +0 -1
- package/WindowGrid/useScrollWithWindow.d.ts +0 -12
- package/WindowGrid/useScrollWithWindow.js +0 -39
- package/WindowGrid/useScrollWithWindow.js.map +0 -1
- package/fuzzySearch/fuzzySearch.d.ts +0 -8
- package/fuzzySearch/fuzzySearch.js +0 -43
- package/fuzzySearch/fuzzySearch.js.map +0 -1
- package/fuzzySearch/index.d.ts +0 -1
- package/fuzzySearch/index.js +0 -2
- package/fuzzySearch/index.js.map +0 -1
- package/hooks/index.d.ts +0 -2
- package/hooks/index.js +0 -3
- package/hooks/index.js.map +0 -1
- package/hooks/useOnClickOutside.d.ts +0 -6
- package/hooks/useOnClickOutside.js +0 -17
- package/hooks/useOnClickOutside.js.map +0 -1
- package/hooks/useOnEsc.d.ts +0 -4
- package/hooks/useOnEsc.js +0 -17
- package/hooks/useOnEsc.js.map +0 -1
- package/utils/breakpoints.d.ts +0 -23
- package/utils/breakpoints.js +0 -94
- package/utils/breakpoints.js.map +0 -1
- package/utils/callAllEventHandlers.d.ts +0 -5
- package/utils/callAllEventHandlers.js +0 -9
- package/utils/callAllEventHandlers.js.map +0 -1
- package/utils/text.d.ts +0 -1
- package/utils/text.js +0 -23
- package/utils/text.js.map +0 -1
- package/utils/theme.d.ts +0 -3
- package/utils/theme.js +0 -5
- package/utils/theme.js.map +0 -1
- package/utils/useHoverIntent.d.ts +0 -10
- package/utils/useHoverIntent.js +0 -78
- package/utils/useHoverIntent.js.map +0 -1
- package/utils/usePropsOfType.d.ts +0 -11
- package/utils/usePropsOfType.js +0 -18
- package/utils/usePropsOfType.js.map +0 -1
- package/withFlightUI.d.ts +0 -17
- package/withFlightUI.js +0 -20
- package/withFlightUI.js.map +0 -1
package/Image/BaseImage.js
DELETED
|
@@ -1,192 +0,0 @@
|
|
|
1
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
2
|
-
var t = {};
|
|
3
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
4
|
-
t[p] = s[p];
|
|
5
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
6
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
7
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
8
|
-
t[p[i]] = s[p[i]];
|
|
9
|
-
}
|
|
10
|
-
return t;
|
|
11
|
-
};
|
|
12
|
-
import * as React from 'react';
|
|
13
|
-
import { useInView } from 'react-intersection-observer';
|
|
14
|
-
import { paddingForAspectRatio } from './utils/paddingForAspectRatio';
|
|
15
|
-
export const transparentDataImg = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=';
|
|
16
|
-
const defaultImageState = {
|
|
17
|
-
imgLoaded: false,
|
|
18
|
-
error: false
|
|
19
|
-
};
|
|
20
|
-
const loadedImageState = {
|
|
21
|
-
imgLoaded: true,
|
|
22
|
-
error: false
|
|
23
|
-
};
|
|
24
|
-
let hydrated = false;
|
|
25
|
-
const imageCache = Object.create({});
|
|
26
|
-
function isInCache(src) {
|
|
27
|
-
return src in imageCache;
|
|
28
|
-
}
|
|
29
|
-
function cacheImage(src) {
|
|
30
|
-
imageCache[src] = true;
|
|
31
|
-
}
|
|
32
|
-
function imageStateReducer(_, action) {
|
|
33
|
-
switch (action.type) {
|
|
34
|
-
case 'reset':
|
|
35
|
-
return defaultImageState;
|
|
36
|
-
case 'loaded':
|
|
37
|
-
cacheImage(action.cacheKey);
|
|
38
|
-
return loadedImageState;
|
|
39
|
-
case 'error':
|
|
40
|
-
return { imgLoaded: false, error: true };
|
|
41
|
-
default:
|
|
42
|
-
console.error(`Action ${action.type} is invalid for image reducer`);
|
|
43
|
-
return;
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
function useObjectFitPolyfill(imageRefs) {
|
|
47
|
-
const [polyfilled, setPolyfilled] = React.useState(false);
|
|
48
|
-
React.useEffect(() => {
|
|
49
|
-
const testImg = document.createElement(`img`);
|
|
50
|
-
if (typeof testImg.style.objectFit === `undefined` ||
|
|
51
|
-
typeof testImg.style.objectPosition === `undefined`) {
|
|
52
|
-
import(`object-fit-images`).then(({ default: ObjectFitImages }) => {
|
|
53
|
-
imageRefs.forEach((imageRef) => {
|
|
54
|
-
imageRef.current && ObjectFitImages(imageRef.current);
|
|
55
|
-
});
|
|
56
|
-
setPolyfilled(true);
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
}, [imageRefs]);
|
|
60
|
-
return polyfilled;
|
|
61
|
-
}
|
|
62
|
-
function getTypeByExtension(src) {
|
|
63
|
-
// Identifying type by extension, based on common image file types
|
|
64
|
-
// https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Image_types
|
|
65
|
-
const extensionRegex = /\.(jpg|jpeg|jfif|pjpeg|pjp|png|gif|bmp|webp|svg|apng|ico|cur)(?:\?.*)?$/i;
|
|
66
|
-
const formatMatch = extensionRegex.exec(src);
|
|
67
|
-
if (!formatMatch)
|
|
68
|
-
return null;
|
|
69
|
-
let type = null;
|
|
70
|
-
switch (formatMatch[1]) {
|
|
71
|
-
case 'jpg':
|
|
72
|
-
case 'jpeg':
|
|
73
|
-
case 'jfif':
|
|
74
|
-
case 'pjpeg':
|
|
75
|
-
case 'pjp':
|
|
76
|
-
type = 'image/jpeg';
|
|
77
|
-
break;
|
|
78
|
-
case 'png':
|
|
79
|
-
type = 'image/png';
|
|
80
|
-
break;
|
|
81
|
-
case 'gif':
|
|
82
|
-
type = 'image/gif';
|
|
83
|
-
break;
|
|
84
|
-
case 'bmp':
|
|
85
|
-
type = 'image/bmp';
|
|
86
|
-
break;
|
|
87
|
-
case 'webp':
|
|
88
|
-
type = 'image/webp';
|
|
89
|
-
break;
|
|
90
|
-
case 'svg':
|
|
91
|
-
type = 'image/svg+xml';
|
|
92
|
-
break;
|
|
93
|
-
case 'apng':
|
|
94
|
-
type = 'image/apng';
|
|
95
|
-
break;
|
|
96
|
-
case 'ico':
|
|
97
|
-
case 'cur':
|
|
98
|
-
type = 'image/x-icon';
|
|
99
|
-
break;
|
|
100
|
-
default:
|
|
101
|
-
break;
|
|
102
|
-
}
|
|
103
|
-
return type;
|
|
104
|
-
}
|
|
105
|
-
const Img = React.forwardRef((props, ref) => {
|
|
106
|
-
const { sizes, srcSet, src, style, alt, onLoad, onError, objectFit, critical } = props, otherProps = __rest(props, ["sizes", "srcSet", "src", "style", "alt", "onLoad", "onError", "objectFit", "critical"]);
|
|
107
|
-
const imgStyle = Object.assign({ position: 'absolute', top: 0, left: 0, width: `100%`, height: `100%`, paddingTop: 0, objectPosition: `center`, objectFit }, style);
|
|
108
|
-
return (React.createElement("img", Object.assign({ alt: alt, sizes: sizes, srcSet: srcSet, src: src, onLoad: onLoad, onError: onError, loading: critical ? 'eager' : 'lazy' }, otherProps, { ref: ref, style: imgStyle })));
|
|
109
|
-
});
|
|
110
|
-
const Placeholder = React.forwardRef((props, ref) => {
|
|
111
|
-
return (React.createElement("picture", { "data-flight-image-placeholder": "" },
|
|
112
|
-
React.createElement(Img, Object.assign({ loading: "lazy", alt: "" }, props, { ref: ref }))));
|
|
113
|
-
});
|
|
114
|
-
const Image = function Image(_a) {
|
|
115
|
-
var { src, hasFalsySrc, lqip, sizes, srcset, webpSrcset, critical, aspect, cover = false, alt = '', fillAvailableSpace = false, children, error: ErrorComp, className, badges } = _a, rest = __rest(_a, ["src", "hasFalsySrc", "lqip", "sizes", "srcset", "webpSrcset", "critical", "aspect", "cover", "alt", "fillAvailableSpace", "children", "error", "className", "badges"]);
|
|
116
|
-
// Set up the IntersectionObserver
|
|
117
|
-
const [ref, inView] = useInView({ triggerOnce: true });
|
|
118
|
-
// Check if the browser supports loading="lazy". In that case, we don't need
|
|
119
|
-
// the IntersectionObserver
|
|
120
|
-
const nativeLazyLoading = typeof HTMLImageElement !== 'undefined' &&
|
|
121
|
-
'loading' in HTMLImageElement.prototype;
|
|
122
|
-
const imageRef = React.createRef();
|
|
123
|
-
const placeholderRef = React.createRef();
|
|
124
|
-
useObjectFitPolyfill([imageRef, placeholderRef]);
|
|
125
|
-
const [{ imgLoaded, error }, dispatch] = React.useReducer(imageStateReducer, critical ? loadedImageState : defaultImageState);
|
|
126
|
-
const cacheKey = srcset;
|
|
127
|
-
const handleImgLoad = React.useCallback(function handleImgLoad() {
|
|
128
|
-
dispatch({ type: 'loaded', cacheKey });
|
|
129
|
-
}, [cacheKey]);
|
|
130
|
-
function handleImgError() {
|
|
131
|
-
dispatch({ type: 'error' });
|
|
132
|
-
}
|
|
133
|
-
// Treat critical images as always cached
|
|
134
|
-
const isCached = critical || isInCache(cacheKey);
|
|
135
|
-
React.useEffect(() => {
|
|
136
|
-
hydrated = true;
|
|
137
|
-
}, []);
|
|
138
|
-
React.useEffect(() => {
|
|
139
|
-
dispatch({ type: 'reset' });
|
|
140
|
-
}, [src]);
|
|
141
|
-
React.useEffect(() => {
|
|
142
|
-
// Handle case where image onLoad fires during SSR
|
|
143
|
-
if (imageRef.current && imageRef.current.complete && !isCached) {
|
|
144
|
-
handleImgLoad();
|
|
145
|
-
}
|
|
146
|
-
}, [handleImgLoad, imageRef, isCached]);
|
|
147
|
-
// Render nothing if src is boolean
|
|
148
|
-
if (typeof src === 'boolean' && !src) {
|
|
149
|
-
return null;
|
|
150
|
-
}
|
|
151
|
-
const loaded = imgLoaded || hasFalsySrc || isCached;
|
|
152
|
-
const objectFit = cover || fillAvailableSpace ? 'cover' : 'contain';
|
|
153
|
-
const objectFitPolyfillStyles = { fontFamily: `"object-fit: ${objectFit}"` };
|
|
154
|
-
const type = getTypeByExtension(src);
|
|
155
|
-
return (React.createElement(React.Fragment, null,
|
|
156
|
-
React.createElement("div", Object.assign({ key: src, ref:
|
|
157
|
-
// If we have native lazyloading, by not applying the `ref` from
|
|
158
|
-
// useInView we don't use IntersectionObserver at all
|
|
159
|
-
nativeLazyLoading ? undefined : ref, "data-flight-image-container": "", "data-flight-image-loaded": loaded, className: className }, rest, { style: {
|
|
160
|
-
position: `relative`,
|
|
161
|
-
overflow: `hidden`,
|
|
162
|
-
width: `100%`,
|
|
163
|
-
height: fillAvailableSpace ? '100%' : 'auto',
|
|
164
|
-
paddingBottom: fillAvailableSpace
|
|
165
|
-
? 0
|
|
166
|
-
: !aspect
|
|
167
|
-
? '100%'
|
|
168
|
-
: paddingForAspectRatio(aspect)
|
|
169
|
-
} }),
|
|
170
|
-
error ? (React.createElement(ErrorComp, null)) : (React.createElement(React.Fragment, null,
|
|
171
|
-
React.createElement(Placeholder, { src: critical ? transparentDataImg : lqip || transparentDataImg, ref: placeholderRef, style: Object.assign({ objectFit, opacity: loaded ? 0 : 0.6, transitionDelay: `500ms` }, objectFitPolyfillStyles) }),
|
|
172
|
-
(inView || nativeLazyLoading || !hydrated || isCached) && (React.createElement("picture", { "data-flight-image": "" },
|
|
173
|
-
React.createElement("source", { type: "image/webp", srcSet: webpSrcset, sizes: sizes }),
|
|
174
|
-
React.createElement("source", { type: type, srcSet: srcset, sizes: sizes }),
|
|
175
|
-
React.createElement(Img, { srcSet: srcset, src: src || transparentDataImg, sizes: sizes, onLoad: handleImgLoad, onError: handleImgError, alt: alt, ref: imageRef, style: Object.assign({ objectFit, opacity: loaded ? 1 : 0, transition: `opacity 500ms` }, objectFitPolyfillStyles), critical: critical }))),
|
|
176
|
-
React.createElement("noscript", null,
|
|
177
|
-
React.createElement("picture", null,
|
|
178
|
-
React.createElement(Img, { srcSet: srcset, src: src, sizes: sizes, alt: alt, style: {
|
|
179
|
-
objectFit
|
|
180
|
-
}, critical: critical }))))),
|
|
181
|
-
children && (React.createElement("div", { "data-flight-image-children": "", style: {
|
|
182
|
-
position: 'relative',
|
|
183
|
-
zIndex: 2,
|
|
184
|
-
width: '100%',
|
|
185
|
-
height: '100%'
|
|
186
|
-
} }, children)),
|
|
187
|
-
badges && (React.createElement("div", { "data-flight-image-badges": "", style: {
|
|
188
|
-
zIndex: 2
|
|
189
|
-
} }, badges)))));
|
|
190
|
-
};
|
|
191
|
-
export default Image;
|
|
192
|
-
//# sourceMappingURL=BaseImage.js.map
|
package/Image/BaseImage.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BaseImage.js","sourceRoot":"","sources":["BaseImage.tsx"],"names":[],"mappings":"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"}
|
package/Image/Fallback.d.ts
DELETED
package/Image/Fallback.js
DELETED
package/Image/Fallback.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Fallback.js","sourceRoot":"","sources":["Fallback.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,sCAAsC;AAEtC,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,EACvB,QAAQ,EAGT,EAAE,EAAE,CAAC,sCAAW,QAAQ,CAAY,CAAC"}
|
package/Image/FlightImage.d.ts
DELETED
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { ProductImageSize } from '@jetshop/core/types';
|
|
3
|
-
export declare type ImageSrcType = string | ProductImageSize[];
|
|
4
|
-
export declare type BreakpointValues = string[];
|
|
5
|
-
export declare type ImageBreakpointSize = number | string;
|
|
6
|
-
export declare type ImageBreakpointSizes = ImageBreakpointSize | ImageBreakpointSize[];
|
|
7
|
-
export declare type AspectRatio = string | number;
|
|
8
|
-
export declare type Gravity = 'north' | 'south' | 'west' | 'east' | 'centre' | 'smart';
|
|
9
|
-
export declare const transparentDataImg = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=";
|
|
10
|
-
interface ImageParameters {
|
|
11
|
-
/** The image src
|
|
12
|
-
* Also accepts an array of objects with `url` keys (deprecated image field)
|
|
13
|
-
*/
|
|
14
|
-
src: ImageSrcType;
|
|
15
|
-
/**
|
|
16
|
-
* Whether to crop the image instead of resizing it when aspect ratio is provided
|
|
17
|
-
* @default false
|
|
18
|
-
*/
|
|
19
|
-
crop?: boolean;
|
|
20
|
-
gravity?: Gravity;
|
|
21
|
-
quality?: number;
|
|
22
|
-
/** An array of image sizes, will be mapped against breakpoints.
|
|
23
|
-
* @see https://docs.dev.jetshop.se/ui/image#the-sizes-prop
|
|
24
|
-
*/
|
|
25
|
-
sizes: ImageBreakpointSizes;
|
|
26
|
-
/**
|
|
27
|
-
* The aspect ratio of the image
|
|
28
|
-
* If unknown, use null to preserve original aspect ratio
|
|
29
|
-
*/
|
|
30
|
-
aspect?: string;
|
|
31
|
-
critical?: boolean;
|
|
32
|
-
modifiedDate?: string;
|
|
33
|
-
focalPointX?: number;
|
|
34
|
-
focalPointY?: number;
|
|
35
|
-
}
|
|
36
|
-
interface ImageProps extends ImageParameters {
|
|
37
|
-
/** Whether or not to use `background-size: cover` */
|
|
38
|
-
cover?: boolean;
|
|
39
|
-
error?: (args: any) => React.ReactElement<any>;
|
|
40
|
-
alt?: string;
|
|
41
|
-
title?: string;
|
|
42
|
-
/**
|
|
43
|
-
* Useful for banner images. Sets the following CSS automatically:
|
|
44
|
-
* object-fit: cover
|
|
45
|
-
* padding-top: 0;
|
|
46
|
-
*/
|
|
47
|
-
fillAvailableSpace?: boolean;
|
|
48
|
-
className?: string;
|
|
49
|
-
badges?: React.ReactElement<any>;
|
|
50
|
-
}
|
|
51
|
-
declare function FlightImage(props: ImageProps): JSX.Element;
|
|
52
|
-
export default FlightImage;
|
package/Image/FlightImage.js
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
var __rest = (this && this.__rest) || function (s, e) {
|
|
2
|
-
var t = {};
|
|
3
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
4
|
-
t[p] = s[p];
|
|
5
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
6
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
7
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
8
|
-
t[p[i]] = s[p[i]];
|
|
9
|
-
}
|
|
10
|
-
return t;
|
|
11
|
-
};
|
|
12
|
-
import { useShopConfig } from '@jetshop/core/hooks/useShopConfig';
|
|
13
|
-
import Image from './BaseImage';
|
|
14
|
-
import React from 'react';
|
|
15
|
-
import t from '@jetshop/intl';
|
|
16
|
-
import { useConstructImage } from './useConstructImage';
|
|
17
|
-
import ChannelContext from '@jetshop/core/components/ChannelContext';
|
|
18
|
-
export const transparentDataImg = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=';
|
|
19
|
-
function Error() {
|
|
20
|
-
return (React.createElement("div", { style: {
|
|
21
|
-
background: '#e2e2e2',
|
|
22
|
-
display: 'flex',
|
|
23
|
-
justifyContent: 'center',
|
|
24
|
-
alignItems: 'center',
|
|
25
|
-
position: `absolute`,
|
|
26
|
-
top: 0,
|
|
27
|
-
left: 0,
|
|
28
|
-
width: `100%`,
|
|
29
|
-
height: `100%`
|
|
30
|
-
} }, t('Image Not Found')));
|
|
31
|
-
}
|
|
32
|
-
function FlightImage(props) {
|
|
33
|
-
const { gravity, crop, src: originalSrc, sizes: sizesArray = [1], aspect, quality, critical, modifiedDate, error: ErrorComp = Error, focalPointX, focalPointY } = props, rest = __rest(props, ["gravity", "crop", "src", "sizes", "aspect", "quality", "critical", "modifiedDate", "error", "focalPointX", "focalPointY"]);
|
|
34
|
-
const { theme: { breakpoints } } = useShopConfig();
|
|
35
|
-
// The baseUrl will change based on the currently-selected channel.
|
|
36
|
-
// We need it to correctly construct the image url
|
|
37
|
-
const { selectedChannel } = React.useContext(ChannelContext);
|
|
38
|
-
const baseUrl = (selectedChannel === null || selectedChannel === void 0 ? void 0 : selectedChannel.imageUrl)
|
|
39
|
-
? String(selectedChannel.imageUrl)
|
|
40
|
-
: null;
|
|
41
|
-
const { src, hasFalsySrc, lqip, sizes, srcset, webpSrcset } = useConstructImage({
|
|
42
|
-
gravity,
|
|
43
|
-
crop,
|
|
44
|
-
src: originalSrc,
|
|
45
|
-
sizes: sizesArray,
|
|
46
|
-
aspect,
|
|
47
|
-
quality,
|
|
48
|
-
critical,
|
|
49
|
-
modifiedDate,
|
|
50
|
-
breakpoints,
|
|
51
|
-
baseUrl,
|
|
52
|
-
focalPointX,
|
|
53
|
-
focalPointY
|
|
54
|
-
});
|
|
55
|
-
return (React.createElement(Image, Object.assign({}, rest, { critical: critical, aspect: aspect, src: hasFalsySrc && typeof originalSrc === 'boolean' ? false : src, hasFalsySrc: hasFalsySrc, lqip: lqip, sizes: sizes, srcset: srcset, webpSrcset: webpSrcset, error: ErrorComp })));
|
|
56
|
-
}
|
|
57
|
-
export default FlightImage;
|
|
58
|
-
//# sourceMappingURL=FlightImage.js.map
|
package/Image/FlightImage.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FlightImage.js","sourceRoot":"","sources":["FlightImage.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAClE,OAAO,KAAK,MAAM,aAAa,CAAC;AAChC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,CAAC,MAAM,eAAe,CAAC;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,cAAc,MAAM,yCAAyC,CAAC;AASrE,MAAM,CAAC,MAAM,kBAAkB,GAC7B,oHAAoH,CAAC;AA8CvH,SAAS,KAAK;IACZ,OAAO,CACL,6BACE,KAAK,EAAE;YACL,UAAU,EAAE,SAAS;YACrB,OAAO,EAAE,MAAM;YACf,cAAc,EAAE,QAAQ;YACxB,UAAU,EAAE,QAAQ;YACpB,QAAQ,EAAE,UAAU;YACpB,GAAG,EAAE,CAAC;YACN,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,MAAM;SACf,IAEA,CAAC,CAAC,iBAAiB,CAAC,CACjB,CACP,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,KAAiB;IACpC,MAAM,EACJ,OAAO,EACP,IAAI,EACJ,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC,EACvB,MAAM,EACN,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,KAAK,EAAE,SAAS,GAAG,KAAK,EACxB,WAAW,EACX,WAAW,KAET,KAAK,EADJ,IAAI,UACL,KAAK,EAbH,2HAaL,CAAQ,CAAC;IAEV,MAAM,EACJ,KAAK,EAAE,EAAE,WAAW,EAAE,EACvB,GAAG,aAAa,EAAE,CAAC;IAEpB,mEAAmE;IACnE,kDAAkD;IAClD,MAAM,EAAE,eAAe,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,CAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,QAAQ;QACvC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC;QAClC,CAAC,CAAC,IAAI,CAAC;IAET,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,GACzD,iBAAiB,CAAC;QAChB,OAAO;QACP,IAAI;QACJ,GAAG,EAAE,WAAW;QAChB,KAAK,EAAE,UAAU;QACjB,MAAM;QACN,OAAO;QACP,QAAQ;QACR,YAAY;QACZ,WAAW;QACX,OAAO;QACP,WAAW;QACX,WAAW;KACZ,CAAC,CAAC;IAEL,OAAO,CACL,oBAAC,KAAK,oBACA,IAAI,IACR,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,WAAW,IAAI,OAAO,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAClE,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,SAAS,IAChB,CACH,CAAC;AACJ,CAAC;AAED,eAAe,WAAW,CAAC"}
|
package/Image/Image.d.ts
DELETED
package/Image/Image.js
DELETED
package/Image/Image.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Image.js","sourceRoot":"","sources":["Image.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC"}
|
package/Image/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default } from './FlightImage';
|
package/Image/index.js
DELETED
package/Image/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { ImageValue, ProductImageSize } from '@jetshop/core/types';
|
|
2
|
-
declare type ImageSrcType = string | ProductImageSize[] | ImageValue;
|
|
3
|
-
export declare type Gravity = 'north' | 'south' | 'west' | 'east' | 'centre' | 'smart';
|
|
4
|
-
export declare type ImageBreakpointSize = number | string;
|
|
5
|
-
export declare type ImageBreakpointSizes = ImageBreakpointSize | ImageBreakpointSize[];
|
|
6
|
-
interface ImageParameters {
|
|
7
|
-
/** The image src
|
|
8
|
-
* Also accepts an array of objects with `url` keys (deprecated image field)
|
|
9
|
-
*/
|
|
10
|
-
src: ImageSrcType;
|
|
11
|
-
/**
|
|
12
|
-
* Whether to crop the image instead of resizing it when aspect ratio is provided
|
|
13
|
-
* @default false
|
|
14
|
-
*/
|
|
15
|
-
crop?: boolean;
|
|
16
|
-
gravity?: Gravity;
|
|
17
|
-
quality?: number;
|
|
18
|
-
/** An array of image sizes, will be mapped against breakpoints.
|
|
19
|
-
* @see https://docs.dev.jetshop.se/ui/image#the-sizes-prop
|
|
20
|
-
*/
|
|
21
|
-
sizes: ImageBreakpointSizes;
|
|
22
|
-
/**
|
|
23
|
-
* The aspect ratio of the image
|
|
24
|
-
* If unknown, use null to preserve original aspect ratio
|
|
25
|
-
*/
|
|
26
|
-
aspect?: string;
|
|
27
|
-
critical?: boolean;
|
|
28
|
-
modifiedDate?: string;
|
|
29
|
-
breakpoints: Record<string, string>;
|
|
30
|
-
baseUrl: string;
|
|
31
|
-
focalPointX?: number;
|
|
32
|
-
focalPointY?: number;
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Dynamically constructs the query parameters used by ImageMagick to size the image appropriately.
|
|
36
|
-
* Also generates a LQIP using query parameters, to display while the full image loads.
|
|
37
|
-
*/
|
|
38
|
-
export declare function useConstructImage({ gravity, crop, src, sizes, aspect, critical, quality, modifiedDate, breakpoints, baseUrl, focalPointX, focalPointY }: ImageParameters): {
|
|
39
|
-
srcset: string;
|
|
40
|
-
webpSrcset: string;
|
|
41
|
-
sizes: string;
|
|
42
|
-
lqip: string;
|
|
43
|
-
src: string;
|
|
44
|
-
hasFalsySrc: boolean;
|
|
45
|
-
};
|
|
46
|
-
export {};
|
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
import useWarningInDev from '@jetshop/core/hooks/useWarningInDev';
|
|
2
|
-
import { getFullUrl } from './utils/getFullUrl';
|
|
3
|
-
import { getImageWidths } from './utils/getImageWidths';
|
|
4
|
-
import { getLargestSize } from './utils/getLargestSize';
|
|
5
|
-
import { getLQIP } from './utils/getLQIP';
|
|
6
|
-
import { getSizesMap } from './utils/getSizesMap';
|
|
7
|
-
import { getSrcSetFromWidths } from './utils/getSrcSetFromWidths';
|
|
8
|
-
import React from 'react';
|
|
9
|
-
/**
|
|
10
|
-
* Dynamically constructs the query parameters used by ImageMagick to size the image appropriately.
|
|
11
|
-
* Also generates a LQIP using query parameters, to display while the full image loads.
|
|
12
|
-
*/
|
|
13
|
-
export function useConstructImage({ gravity, crop, src, sizes, aspect, critical, quality, modifiedDate, breakpoints, baseUrl, focalPointX, focalPointY }) {
|
|
14
|
-
// Warn if gravity was provided but crop was not
|
|
15
|
-
useWarningInDev(gravity && !crop, 'You have provided a gravity without setting crop to true. Your image will not be cropped, and the `gravity` prop will do nothing. Please remove the `gravity` prop.');
|
|
16
|
-
// Warn if the src is a falsy value
|
|
17
|
-
useWarningInDev(!!!src, 'You have provided a falsy value to the Image component. If you intentionally want to display a blank Image component, you may import `transparentDataImg` and use it for the src. Otherwise, this is probably a bug.');
|
|
18
|
-
/*
|
|
19
|
-
For backwards-compatibility (and dev convenience) reasons, we accept a
|
|
20
|
-
falsy `src` prop on Image. undefined | null will act just like the normal
|
|
21
|
-
Image component does, except that it will show a transparent image where
|
|
22
|
-
the image would normally load. This may be useful in cases where the end
|
|
23
|
-
user is lazy and wants to do this:
|
|
24
|
-
|
|
25
|
-
const { imageSrc } = someDataRequest();
|
|
26
|
-
<Image src={imageSrc} />
|
|
27
|
-
|
|
28
|
-
Where imageSrc may be undefined | null while the request is occurring. The
|
|
29
|
-
preferred method is to be more explicit:
|
|
30
|
-
|
|
31
|
-
const {imageSrc, loading} = someDataRequest();
|
|
32
|
-
<Image src={loading ? transparentDataImg : imageSrc } />
|
|
33
|
-
|
|
34
|
-
Therefore, whilst we will handle a null | undefined src, we will warn
|
|
35
|
-
against its usage in dev.
|
|
36
|
-
*/
|
|
37
|
-
let hasFalsySrc = true;
|
|
38
|
-
let imageSrc = '';
|
|
39
|
-
if (Array.isArray(src)) {
|
|
40
|
-
// maintain support for deprecated image sizes array
|
|
41
|
-
hasFalsySrc = false;
|
|
42
|
-
imageSrc = getFullUrl(getLargestSize(src), baseUrl);
|
|
43
|
-
}
|
|
44
|
-
// When we have a string for the src
|
|
45
|
-
if (!!src && typeof src === 'string') {
|
|
46
|
-
hasFalsySrc = false;
|
|
47
|
-
imageSrc = getFullUrl(src, baseUrl);
|
|
48
|
-
}
|
|
49
|
-
if (!!src && typeof src === 'object' && src.value) {
|
|
50
|
-
hasFalsySrc = false;
|
|
51
|
-
imageSrc = getFullUrl(src.value, baseUrl);
|
|
52
|
-
}
|
|
53
|
-
// useMemo so this runs only if the image props change. It calculates the
|
|
54
|
-
// strings used for `sizes`, `srcset`, and the `lqip`
|
|
55
|
-
const { sizesMap, srcset, lqip, webpSrcset } = React.useMemo(() => {
|
|
56
|
-
if (hasFalsySrc) {
|
|
57
|
-
return {};
|
|
58
|
-
}
|
|
59
|
-
const widths = getImageWidths(Object.values(breakpoints), sizes);
|
|
60
|
-
const srcSetFromWidths = ({ webp }) => getSrcSetFromWidths(imageSrc, widths, aspect, {
|
|
61
|
-
crop,
|
|
62
|
-
gravity,
|
|
63
|
-
quality,
|
|
64
|
-
webp,
|
|
65
|
-
focalPointX,
|
|
66
|
-
focalPointY
|
|
67
|
-
}, modifiedDate);
|
|
68
|
-
const srcset = srcSetFromWidths({ webp: false });
|
|
69
|
-
const webpSrcset = srcSetFromWidths({ webp: true });
|
|
70
|
-
// If this is a critical image, don't calculate LQIP
|
|
71
|
-
const lqip = critical
|
|
72
|
-
? null
|
|
73
|
-
: getLQIP(imageSrc, widths, aspect, crop, modifiedDate);
|
|
74
|
-
const sizesMap = getSizesMap(Object.values(breakpoints), sizes);
|
|
75
|
-
return { sizesMap, srcset, lqip, webpSrcset };
|
|
76
|
-
}, [
|
|
77
|
-
aspect,
|
|
78
|
-
breakpoints,
|
|
79
|
-
crop,
|
|
80
|
-
gravity,
|
|
81
|
-
hasFalsySrc,
|
|
82
|
-
imageSrc,
|
|
83
|
-
quality,
|
|
84
|
-
sizes,
|
|
85
|
-
critical,
|
|
86
|
-
modifiedDate,
|
|
87
|
-
focalPointX,
|
|
88
|
-
focalPointY
|
|
89
|
-
]);
|
|
90
|
-
return {
|
|
91
|
-
srcset,
|
|
92
|
-
webpSrcset,
|
|
93
|
-
sizes: sizesMap,
|
|
94
|
-
lqip,
|
|
95
|
-
src: imageSrc,
|
|
96
|
-
hasFalsySrc
|
|
97
|
-
};
|
|
98
|
-
}
|
|
99
|
-
//# sourceMappingURL=useConstructImage.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useConstructImage.js","sourceRoot":"","sources":["useConstructImage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export const aspectRatioToFraction = (aspect) => {
|
|
2
|
-
if (typeof aspect === 'string' && aspect.indexOf(':') > 0) {
|
|
3
|
-
const [a, b] = aspect.split(':');
|
|
4
|
-
return b / a;
|
|
5
|
-
}
|
|
6
|
-
else if (typeof aspect === 'number') {
|
|
7
|
-
return aspect;
|
|
8
|
-
}
|
|
9
|
-
throw new TypeError('Aspect ratio is not a Number or String with the format n:m');
|
|
10
|
-
};
|
|
11
|
-
//# sourceMappingURL=aspectRatioToFraction.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"aspectRatioToFraction.js","sourceRoot":"","sources":["aspectRatioToFraction.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,MAAmB,EAAE,EAAE;IAC3D,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;QACzD,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAyB,CAAC;QAC1D,OAAO,CAAC,GAAG,CAAC,CAAC;KACd;SAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QACrC,OAAO,MAAM,CAAC;KACf;IACD,MAAM,IAAI,SAAS,CACjB,4DAA4D,CAC7D,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Constructs the image url by combining the passed-in url with the selected channel
|
|
3
|
-
* @param url The image url
|
|
4
|
-
* @param baseUrl The baseUrl from the currently-selected channel
|
|
5
|
-
*/
|
|
6
|
-
export const getFullUrl = (url, baseUrl) => {
|
|
7
|
-
if (!baseUrl || !url) {
|
|
8
|
-
return url;
|
|
9
|
-
}
|
|
10
|
-
url = url.trim();
|
|
11
|
-
if (url.indexOf('/') === 0 &&
|
|
12
|
-
url.indexOf('//:') === -1 &&
|
|
13
|
-
url.indexOf('static/media') === -1) {
|
|
14
|
-
return baseUrl + url;
|
|
15
|
-
}
|
|
16
|
-
return url;
|
|
17
|
-
};
|
|
18
|
-
//# sourceMappingURL=getFullUrl.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getFullUrl.js","sourceRoot":"","sources":["getFullUrl.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,OAAe,EAAE,EAAE;IACzD,IAAI,CAAC,OAAO,IAAI,CAAC,GAAG,EAAE;QACpB,OAAO,GAAG,CAAC;KACZ;IACD,GAAG,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IACjB,IACE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;QACtB,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACzB,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EAClC;QACA,OAAO,OAAO,GAAG,GAAG,CAAC;KACtB;IACD,OAAO,GAAG,CAAC;AACb,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const getImageWidth: (size: number | string, vw: number, pixelRatio: number) => number;
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { sizeToNumber } from './sizeToNumber';
|
|
2
|
-
export const getImageWidth = (size = 1, vw, pixelRatio) => {
|
|
3
|
-
// Convert input size to fraction or px value
|
|
4
|
-
size = sizeToNumber(size);
|
|
5
|
-
// Size is in px
|
|
6
|
-
if (size > 2) {
|
|
7
|
-
return Math.round(size * pixelRatio);
|
|
8
|
-
}
|
|
9
|
-
// Size is a fraction
|
|
10
|
-
return Math.round(vw * size * pixelRatio);
|
|
11
|
-
};
|
|
12
|
-
//# sourceMappingURL=getImageWidth.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getImageWidth.js","sourceRoot":"","sources":["getImageWidth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,OAAwB,CAAC,EACzB,EAAU,EACV,UAAkB,EAClB,EAAE;IACF,6CAA6C;IAC7C,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAC1B,gBAAgB;IAChB,IAAI,IAAI,GAAG,CAAC,EAAE;QACZ,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,UAAU,CAAC,CAAC;KACtC;IACD,qBAAqB;IACrB,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,GAAG,UAAU,CAAC,CAAC;AAC5C,CAAC,CAAC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { getImageWidth } from './getImageWidth';
|
|
2
|
-
import { remToPx } from './remToPx';
|
|
3
|
-
import { getSizeForBreakpoint } from './getSizeForBreakpoint';
|
|
4
|
-
export const getImageWidths = (breakpoints, sizes) => {
|
|
5
|
-
const all = new Set();
|
|
6
|
-
for (let i = 0; i < breakpoints.length; i++) {
|
|
7
|
-
const bpSize = getSizeForBreakpoint(sizes, i);
|
|
8
|
-
const px = remToPx(breakpoints[i]);
|
|
9
|
-
all.add(getImageWidth(bpSize, px, 1));
|
|
10
|
-
all.add(getImageWidth(bpSize, px, 2));
|
|
11
|
-
}
|
|
12
|
-
return Array.from(all).sort();
|
|
13
|
-
};
|
|
14
|
-
//# sourceMappingURL=getImageWidths.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getImageWidths.js","sourceRoot":"","sources":["getImageWidths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,WAA6B,EAC7B,KAA2B,EAC3B,EAAE;IACF,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAE9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC3C,MAAM,MAAM,GAAG,oBAAoB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC9C,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;QAEnC,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QACtC,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;KACvC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AAChC,CAAC,CAAC"}
|
package/Image/utils/getLQIP.d.ts
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generates a LQIP (Low Quality Image Placeholder) using the Flight image
|
|
3
|
-
* handling API (via query params)
|
|
4
|
-
* @param src The image src
|
|
5
|
-
* @param widths An array of image widths
|
|
6
|
-
* @param aspect The desired aspect ratio of the placeholder
|
|
7
|
-
*/
|
|
8
|
-
export declare function getLQIP(src: string, widths: number[], aspect: string, crop: boolean, modifiedDate: string): string;
|