@gem-sdk/core 1.38.0 → 2.0.0-dev.834
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/dist/cjs/components/AddOn.js +1 -18
- package/dist/cjs/components/ComponentToolbarPreview.js +1 -465
- package/dist/cjs/components/ComponentWrapper.js +1 -46
- package/dist/cjs/components/ComponentWrapperPreview.js +1 -136
- package/dist/cjs/components/Empty.js +1 -7
- package/dist/cjs/components/Render.js +1 -65
- package/dist/cjs/components/Render.liquid.js +14 -288
- package/dist/cjs/components/RenderBlock.js +1 -54
- package/dist/cjs/components/RenderCustomCode.js +3 -56
- package/dist/cjs/components/RenderPreview.js +1 -66
- package/dist/cjs/components/RenderSection.js +1 -23
- package/dist/cjs/components/ai-generator/AIContentGenerator.js +1 -0
- package/dist/cjs/components/ai-generator/AIGenContentLoading.js +1 -0
- package/dist/cjs/components/ai-generator/components/PickProduct.js +1 -0
- package/dist/cjs/components/ai-generator/components/ToneAndVoice.js +1 -0
- package/dist/cjs/components/ai-generator/hooks/useGettingGenerateRequest.js +1 -0
- package/dist/cjs/components/ai-generator/hooks/useListenEventGenerate.js +1 -0
- package/dist/cjs/components/ai-generator/icons/AIIcon.js +1 -0
- package/dist/cjs/components/ai-generator/icons/CloseIcon.js +1 -0
- package/dist/cjs/components/ai-generator/icons/DropdownIcon.js +1 -0
- package/dist/cjs/components/ai-generator/icons/ShowMoreIcon.js +1 -0
- package/dist/cjs/components/animation/AnimationWrapper.js +1 -0
- package/dist/cjs/components/constant.js +1 -54
- package/dist/cjs/components/resize/Resize.js +1 -16
- package/dist/cjs/components/resize/Spacing.js +1 -248
- package/dist/cjs/components/src/product/helpers/variant-presets.js +1 -56
- package/dist/cjs/components/theme-section/CreateThemeSection.js +1 -117
- package/dist/cjs/components/theme-section/ThemeSectionStatus.js +1 -36
- package/dist/cjs/components/theme-section/ThemeSectionTooltip.js +1 -102
- package/dist/cjs/components/toolbar/Tooltip.js +1 -22
- package/dist/cjs/contexts/AddonContext.js +1 -36
- package/dist/cjs/contexts/BuilderComponent.js +1 -34
- package/dist/cjs/contexts/BuilderContext.js +1 -35
- package/dist/cjs/contexts/BuilderPreviewContext.js +1 -479
- package/dist/cjs/contexts/CartLineContext.js +1 -29
- package/dist/cjs/contexts/CollectionContext.js +1 -38
- package/dist/cjs/contexts/ModalContext.js +1 -47
- package/dist/cjs/contexts/PageContext.js +1 -44
- package/dist/cjs/contexts/ProductContext.js +1 -156
- package/dist/cjs/contexts/ProductListContext.js +1 -32
- package/dist/cjs/contexts/SectionContext.js +1 -53
- package/dist/cjs/contexts/ShopContext.js +1 -80
- package/dist/cjs/graphql/fragments/analytic.generated.js +2 -6
- package/dist/cjs/graphql/fragments/collection-detail.generated.js +2 -6
- package/dist/cjs/graphql/fragments/collection-product.generated.js +2 -6
- package/dist/cjs/graphql/fragments/collection.generated.js +2 -6
- package/dist/cjs/graphql/fragments/custom-code.generated.js +2 -6
- package/dist/cjs/graphql/fragments/custom-font.generated.js +2 -6
- package/dist/cjs/graphql/fragments/data-seo.generated.js +2 -6
- package/dist/cjs/graphql/fragments/media.generated.js +2 -6
- package/dist/cjs/graphql/fragments/product-little.generated.js +11 -6
- package/dist/cjs/graphql/fragments/product-option-value.generated.js +2 -6
- package/dist/cjs/graphql/fragments/product-option.generated.js +2 -6
- package/dist/cjs/graphql/fragments/product.generated.js +11 -6
- package/dist/cjs/graphql/fragments/published-custom-section.generated.js +2 -6
- package/dist/cjs/graphql/fragments/published-page-section.generated.js +2 -6
- package/dist/cjs/graphql/fragments/published-theme-page.generated.js +3 -9
- package/dist/cjs/graphql/fragments/published-theme-style.generated.js +2 -6
- package/dist/cjs/graphql/fragments/selected-option.generated.js +2 -6
- package/dist/cjs/graphql/fragments/variant.generated.js +2 -6
- package/dist/cjs/graphql/mutations/page-view-up.generated.js +3 -7
- package/dist/cjs/graphql/queries/collection-detail-filter.generated.js +2 -16
- package/dist/cjs/graphql/queries/collection.generated.js +2 -14
- package/dist/cjs/graphql/queries/collections.generated.js +2 -9
- package/dist/cjs/graphql/queries/preview-page.generated.js +2 -14
- package/dist/cjs/graphql/queries/product-little-detail.generated.js +2 -11
- package/dist/cjs/graphql/queries/product-medias.generated.js +2 -8
- package/dist/cjs/graphql/queries/product-value-label.generated.js +2 -6
- package/dist/cjs/graphql/queries/product-variants.generated.js +2 -10
- package/dist/cjs/graphql/queries/products.generated.js +12 -17
- package/dist/cjs/graphql/queries/published-theme-pages.generated.js +2 -15
- package/dist/cjs/graphql/queries/store-property.generated.js +2 -6
- package/dist/cjs/graphql-app-api/queries/LibrarySaleFunnelDiscount.generated.js +21 -0
- package/dist/cjs/graphql-app-api/queries/LibraryTemplate.generated.js +13 -0
- package/dist/cjs/graphql-app-api/queries/SaleFunnelDiscounts.generated.js +34 -0
- package/dist/cjs/graphql-app-api/queries/ThemePage.generated.js +22 -0
- package/dist/cjs/helpers/GlobalEvent.js +1 -19
- package/dist/cjs/helpers/animations.js +1 -213
- package/dist/cjs/helpers/background.js +1 -230
- package/dist/cjs/helpers/borders.js +4 -183
- package/dist/cjs/helpers/carousel.js +1 -58
- package/dist/cjs/helpers/clone-deep.js +1 -5
- package/dist/cjs/helpers/cls.js +1 -16
- package/dist/cjs/helpers/colors.js +1 -184
- package/dist/cjs/helpers/compose-advance-style.js +1 -268
- package/dist/cjs/helpers/constant.js +1 -23
- package/dist/cjs/helpers/convert.js +1 -7
- package/dist/cjs/helpers/covert-entities-html.js +1 -19
- package/dist/cjs/helpers/css-variable.js +1 -7
- package/dist/cjs/helpers/email.js +1 -11
- package/dist/cjs/helpers/filter-toolbar-preview.js +1 -14
- package/dist/cjs/helpers/flatten-connection.js +1 -9
- package/dist/cjs/helpers/get-resonsive-value.js +1 -36
- package/dist/cjs/helpers/get-shortname.js +1 -92
- package/dist/cjs/helpers/icon-list.js +1 -61
- package/dist/cjs/helpers/is-browser.js +1 -9
- package/dist/cjs/helpers/is-defined.js +1 -7
- package/dist/cjs/helpers/is-empty-children.js +1 -15
- package/dist/cjs/helpers/is-safari.js +1 -9
- package/dist/cjs/helpers/layout.js +1 -59
- package/dist/cjs/helpers/load-script.js +1 -31
- package/dist/cjs/helpers/make-style.js +1 -163
- package/dist/cjs/helpers/normalize-builder-data.js +1 -23
- package/dist/cjs/helpers/prefetch-queries.js +1 -78
- package/dist/cjs/helpers/product.js +1 -48
- package/dist/cjs/helpers/queries/get-collection.js +1 -226
- package/dist/cjs/helpers/queries/get-collections.js +1 -21
- package/dist/cjs/helpers/queries/get-product-by-slug.js +1 -125
- package/dist/cjs/helpers/queries/get-product.js +1 -154
- package/dist/cjs/helpers/queries/get-products.js +1 -163
- package/dist/cjs/helpers/query.js +1 -29
- package/dist/cjs/helpers/radius.js +6 -140
- package/dist/cjs/helpers/render.js +1 -76
- package/dist/cjs/helpers/shadow.js +1 -57
- package/dist/cjs/helpers/size.js +4 -183
- package/dist/cjs/helpers/spacing.js +1 -43
- package/dist/cjs/helpers/tracking/fpixel.js +1 -28
- package/dist/cjs/helpers/tracking/gtag.js +1 -93
- package/dist/cjs/helpers/tracking/tiktokpixel.js +1 -17
- package/dist/cjs/helpers/typography.js +17 -126
- package/dist/cjs/helpers/variant.js +1 -11
- package/dist/cjs/hooks/animation/animations.js +1 -0
- package/dist/cjs/hooks/animation/useAnimationActions.js +1 -39
- package/dist/cjs/hooks/animation/useAnimationConfig.js +1 -29
- package/dist/cjs/hooks/animation/useAnimationPreview.js +1 -31
- package/dist/cjs/hooks/animation/useAnimationTarget.js +1 -120
- package/dist/cjs/hooks/animation/useApplyAnimation.js +1 -87
- package/dist/cjs/hooks/animation/useLivePageAnimation.js +1 -0
- package/dist/cjs/hooks/cart/use-add-to-cart.js +1 -20
- package/dist/cjs/hooks/cart/use-cart-data.js +1 -28
- package/dist/cjs/hooks/cart/use-cart-discount-codes-update.js +1 -20
- package/dist/cjs/hooks/cart/use-cart-note-update.js +1 -20
- package/dist/cjs/hooks/cart/use-create-cart.js +1 -22
- package/dist/cjs/hooks/cart/use-remove-cart-item.js +1 -20
- package/dist/cjs/hooks/cart/use-update-cart-item.js +1 -20
- package/dist/cjs/hooks/shop/use-collection-query.js +1 -22
- package/dist/cjs/hooks/shop/use-collections-query.js +1 -17
- package/dist/cjs/hooks/shop/use-product-query.js +1 -22
- package/dist/cjs/hooks/shop/use-products-query.js +1 -23
- package/dist/cjs/hooks/shop.js +1 -126
- package/dist/cjs/hooks/use-current-device.js +1 -21
- package/dist/cjs/hooks/use-lazy-video.js +1 -15
- package/dist/cjs/hooks/useAnimations.js +1 -26
- package/dist/cjs/hooks/useCartId.js +1 -44
- package/dist/cjs/hooks/useCartLine.js +1 -11
- package/dist/cjs/hooks/useCartUI.js +1 -48
- package/dist/cjs/hooks/useCollection.js +1 -9
- package/dist/cjs/hooks/useFetchHandle.js +1 -13
- package/dist/cjs/hooks/useFormatMoney.js +1 -58
- package/dist/cjs/hooks/useInitialSwatchesOptions.js +1 -113
- package/dist/cjs/hooks/useIsomorphicLayoutEffect.js +1 -10
- package/dist/cjs/hooks/useLoadScript.js +1 -32
- package/dist/cjs/hooks/useMoney.js +1 -84
- package/dist/cjs/hooks/usePrevious.js +1 -19
- package/dist/cjs/hooks/useProduct.js +1 -206
- package/dist/cjs/hooks/useProductList.js +1 -21
- package/dist/cjs/hooks/useSuspenseFetch.js +1 -27
- package/dist/cjs/hooks/useSwatchesOptions.js +1 -41
- package/dist/cjs/hooks/useToolbarPostPurchase.js +1 -0
- package/dist/cjs/index.js +1 -361
- package/dist/cjs/types/animations.js +1 -47
- package/dist/cjs/types/appAPI.js +1 -0
- package/dist/cjs/types/global-style.js +1 -15
- package/dist/cjs/types/shop.js +1 -2
- package/dist/cjs/web-components/src/helpers/styles/constant.js +1 -9
- package/dist/esm/components/AddOn.js +1 -14
- package/dist/esm/components/ComponentToolbarPreview.js +1 -463
- package/dist/esm/components/ComponentWrapper.js +1 -42
- package/dist/esm/components/ComponentWrapperPreview.js +1 -132
- package/dist/esm/components/Empty.js +1 -3
- package/dist/esm/components/Render.js +1 -61
- package/dist/esm/components/Render.liquid.js +14 -282
- package/dist/esm/components/RenderBlock.js +1 -50
- package/dist/esm/components/RenderCustomCode.js +3 -52
- package/dist/esm/components/RenderPreview.js +1 -62
- package/dist/esm/components/RenderSection.js +1 -19
- package/dist/esm/components/ai-generator/AIContentGenerator.js +1 -0
- package/dist/esm/components/ai-generator/AIGenContentLoading.js +1 -0
- package/dist/esm/components/ai-generator/components/PickProduct.js +1 -0
- package/dist/esm/components/ai-generator/components/ToneAndVoice.js +1 -0
- package/dist/esm/components/ai-generator/hooks/useGettingGenerateRequest.js +1 -0
- package/dist/esm/components/ai-generator/hooks/useListenEventGenerate.js +1 -0
- package/dist/esm/components/ai-generator/icons/AIIcon.js +1 -0
- package/dist/esm/components/ai-generator/icons/CloseIcon.js +1 -0
- package/dist/esm/components/ai-generator/icons/DropdownIcon.js +1 -0
- package/dist/esm/components/ai-generator/icons/ShowMoreIcon.js +1 -0
- package/dist/esm/components/animation/AnimationWrapper.js +1 -0
- package/dist/esm/components/constant.js +1 -50
- package/dist/esm/components/resize/Resize.js +1 -12
- package/dist/esm/components/resize/Spacing.js +1 -244
- package/dist/esm/components/src/product/helpers/variant-presets.js +1 -54
- package/dist/esm/components/theme-section/CreateThemeSection.js +1 -115
- package/dist/esm/components/theme-section/ThemeSectionStatus.js +1 -34
- package/dist/esm/components/theme-section/ThemeSectionTooltip.js +1 -100
- package/dist/esm/components/toolbar/Tooltip.js +1 -18
- package/dist/esm/contexts/AddonContext.js +1 -32
- package/dist/esm/contexts/BuilderComponent.js +1 -31
- package/dist/esm/contexts/BuilderContext.js +1 -32
- package/dist/esm/contexts/BuilderPreviewContext.js +1 -476
- package/dist/esm/contexts/CartLineContext.js +1 -26
- package/dist/esm/contexts/CollectionContext.js +1 -35
- package/dist/esm/contexts/ModalContext.js +1 -44
- package/dist/esm/contexts/PageContext.js +1 -41
- package/dist/esm/contexts/ProductContext.js +1 -153
- package/dist/esm/contexts/ProductListContext.js +1 -28
- package/dist/esm/contexts/SectionContext.js +1 -49
- package/dist/esm/contexts/ShopContext.js +1 -77
- package/dist/esm/graphql/fragments/analytic.generated.js +2 -4
- package/dist/esm/graphql/fragments/collection-detail.generated.js +2 -4
- package/dist/esm/graphql/fragments/collection-product.generated.js +2 -4
- package/dist/esm/graphql/fragments/collection.generated.js +2 -4
- package/dist/esm/graphql/fragments/custom-code.generated.js +2 -4
- package/dist/esm/graphql/fragments/custom-font.generated.js +2 -4
- package/dist/esm/graphql/fragments/data-seo.generated.js +2 -4
- package/dist/esm/graphql/fragments/media.generated.js +2 -4
- package/dist/esm/graphql/fragments/product-little.generated.js +11 -4
- package/dist/esm/graphql/fragments/product-option-value.generated.js +2 -4
- package/dist/esm/graphql/fragments/product-option.generated.js +2 -4
- package/dist/esm/graphql/fragments/product.generated.js +11 -4
- package/dist/esm/graphql/fragments/published-custom-section.generated.js +2 -4
- package/dist/esm/graphql/fragments/published-page-section.generated.js +2 -4
- package/dist/esm/graphql/fragments/published-theme-page.generated.js +3 -6
- package/dist/esm/graphql/fragments/published-theme-style.generated.js +2 -4
- package/dist/esm/graphql/fragments/selected-option.generated.js +2 -4
- package/dist/esm/graphql/fragments/variant.generated.js +2 -4
- package/dist/esm/graphql/mutations/page-view-up.generated.js +3 -5
- package/dist/esm/graphql/queries/collection-detail-filter.generated.js +10 -22
- package/dist/esm/graphql/queries/collection.generated.js +8 -18
- package/dist/esm/graphql/queries/collections.generated.js +3 -8
- package/dist/esm/graphql/queries/preview-page.generated.js +8 -18
- package/dist/esm/graphql/queries/product-little-detail.generated.js +5 -12
- package/dist/esm/graphql/queries/product-medias.generated.js +2 -6
- package/dist/esm/graphql/queries/product-value-label.generated.js +2 -4
- package/dist/esm/graphql/queries/product-variants.generated.js +4 -10
- package/dist/esm/graphql/queries/products.generated.js +18 -20
- package/dist/esm/graphql/queries/published-theme-pages.generated.js +9 -20
- package/dist/esm/graphql/queries/store-property.generated.js +2 -4
- package/dist/esm/graphql-app-api/queries/LibrarySaleFunnelDiscount.generated.js +21 -0
- package/dist/esm/graphql-app-api/queries/LibraryTemplate.generated.js +13 -0
- package/dist/esm/graphql-app-api/queries/SaleFunnelDiscounts.generated.js +34 -0
- package/dist/esm/graphql-app-api/queries/ThemePage.generated.js +22 -0
- package/dist/esm/helpers/GlobalEvent.js +1 -15
- package/dist/esm/helpers/animations.js +1 -211
- package/dist/esm/helpers/background.js +1 -222
- package/dist/esm/helpers/borders.js +4 -175
- package/dist/esm/helpers/carousel.js +1 -54
- package/dist/esm/helpers/clone-deep.js +1 -3
- package/dist/esm/helpers/cls.js +1 -14
- package/dist/esm/helpers/colors.js +1 -169
- package/dist/esm/helpers/compose-advance-style.js +1 -261
- package/dist/esm/helpers/constant.js +1 -19
- package/dist/esm/helpers/convert.js +1 -4
- package/dist/esm/helpers/covert-entities-html.js +1 -17
- package/dist/esm/helpers/css-variable.js +1 -5
- package/dist/esm/helpers/email.js +1 -6
- package/dist/esm/helpers/filter-toolbar-preview.js +1 -9
- package/dist/esm/helpers/flatten-connection.js +1 -7
- package/dist/esm/helpers/get-resonsive-value.js +1 -31
- package/dist/esm/helpers/get-shortname.js +1 -90
- package/dist/esm/helpers/icon-list.js +1 -58
- package/dist/esm/helpers/is-browser.js +1 -5
- package/dist/esm/helpers/is-defined.js +1 -5
- package/dist/esm/helpers/is-empty-children.js +1 -10
- package/dist/esm/helpers/is-safari.js +1 -5
- package/dist/esm/helpers/layout.js +1 -54
- package/dist/esm/helpers/load-script.js +1 -29
- package/dist/esm/helpers/make-style.js +1 -149
- package/dist/esm/helpers/normalize-builder-data.js +1 -21
- package/dist/esm/helpers/prefetch-queries.js +1 -76
- package/dist/esm/helpers/product.js +1 -44
- package/dist/esm/helpers/queries/get-collection.js +1 -223
- package/dist/esm/helpers/queries/get-collections.js +1 -19
- package/dist/esm/helpers/queries/get-product-by-slug.js +1 -123
- package/dist/esm/helpers/queries/get-product.js +1 -150
- package/dist/esm/helpers/queries/get-products.js +1 -161
- package/dist/esm/helpers/query.js +1 -25
- package/dist/esm/helpers/radius.js +6 -132
- package/dist/esm/helpers/render.js +1 -68
- package/dist/esm/helpers/shadow.js +1 -52
- package/dist/esm/helpers/size.js +4 -171
- package/dist/esm/helpers/spacing.js +1 -40
- package/dist/esm/helpers/tracking/fpixel.js +1 -24
- package/dist/esm/helpers/tracking/gtag.js +1 -87
- package/dist/esm/helpers/tracking/tiktokpixel.js +1 -15
- package/dist/esm/helpers/typography.js +17 -116
- package/dist/esm/helpers/variant.js +1 -9
- package/dist/esm/hooks/animation/animations.js +1 -0
- package/dist/esm/hooks/animation/useAnimationActions.js +1 -37
- package/dist/esm/hooks/animation/useAnimationConfig.js +1 -27
- package/dist/esm/hooks/animation/useAnimationPreview.js +1 -29
- package/dist/esm/hooks/animation/useAnimationTarget.js +1 -118
- package/dist/esm/hooks/animation/useApplyAnimation.js +1 -83
- package/dist/esm/hooks/animation/useLivePageAnimation.js +1 -0
- package/dist/esm/hooks/cart/use-add-to-cart.js +1 -18
- package/dist/esm/hooks/cart/use-cart-data.js +1 -26
- package/dist/esm/hooks/cart/use-cart-discount-codes-update.js +1 -18
- package/dist/esm/hooks/cart/use-cart-note-update.js +1 -18
- package/dist/esm/hooks/cart/use-create-cart.js +1 -20
- package/dist/esm/hooks/cart/use-remove-cart-item.js +1 -18
- package/dist/esm/hooks/cart/use-update-cart-item.js +1 -18
- package/dist/esm/hooks/shop/use-collection-query.js +1 -20
- package/dist/esm/hooks/shop/use-collections-query.js +1 -15
- package/dist/esm/hooks/shop/use-product-query.js +1 -20
- package/dist/esm/hooks/shop/use-products-query.js +1 -21
- package/dist/esm/hooks/shop.js +1 -111
- package/dist/esm/hooks/use-current-device.js +1 -19
- package/dist/esm/hooks/use-lazy-video.js +1 -13
- package/dist/esm/hooks/useAnimations.js +1 -24
- package/dist/esm/hooks/useCartId.js +1 -40
- package/dist/esm/hooks/useCartLine.js +1 -7
- package/dist/esm/hooks/useCartUI.js +1 -44
- package/dist/esm/hooks/useCollection.js +1 -7
- package/dist/esm/hooks/useFetchHandle.js +1 -11
- package/dist/esm/hooks/useFormatMoney.js +1 -56
- package/dist/esm/hooks/useInitialSwatchesOptions.js +1 -109
- package/dist/esm/hooks/useIsomorphicLayoutEffect.js +1 -6
- package/dist/esm/hooks/useLoadScript.js +1 -28
- package/dist/esm/hooks/useMoney.js +1 -80
- package/dist/esm/hooks/usePrevious.js +1 -17
- package/dist/esm/hooks/useProduct.js +1 -192
- package/dist/esm/hooks/useProductList.js +1 -16
- package/dist/esm/hooks/useSuspenseFetch.js +1 -23
- package/dist/esm/hooks/useSwatchesOptions.js +1 -37
- package/dist/esm/hooks/useToolbarPostPurchase.js +1 -0
- package/dist/esm/index.js +1 -100
- package/dist/esm/types/animations.js +1 -47
- package/dist/esm/types/appAPI.js +1 -0
- package/dist/esm/types/global-style.js +1 -12
- package/dist/esm/web-components/src/helpers/styles/constant.js +1 -7
- package/dist/types/index.d.ts +25970 -6309
- package/package.json +8 -3
|
@@ -1,120 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var react = require('react');
|
|
4
|
-
var useAnimationConfig = require('./useAnimationConfig.js');
|
|
5
|
-
|
|
6
|
-
const SPACING_ACTIVE_ATTRIBUTE = 'data-spacing';
|
|
7
|
-
const TOOLBAR_ACTIVE_ATTRIBUTE = 'data-toolbar-active';
|
|
8
|
-
const OUTLINE_ACTIVE_ATTRIBUTE = 'data-outline-active';
|
|
9
|
-
const TOOLBAR_ADD_SECTION_ACTIVE_ATTRIBUTE = 'data-toolbar-add-active';
|
|
10
|
-
const useAnimationTarget = (props)=>{
|
|
11
|
-
const { isEnabledAnimation } = useAnimationConfig.useAnimationConfig(props);
|
|
12
|
-
const componentTag = props.tag;
|
|
13
|
-
const componentUid = props.uid;
|
|
14
|
-
const targets = react.useRef(null);
|
|
15
|
-
const targetObjects = react.useRef([]);
|
|
16
|
-
const setToolbarActive = (isActive)=>{
|
|
17
|
-
if (!targetObjects.current) return;
|
|
18
|
-
for (const item of targetObjects.current){
|
|
19
|
-
if (isActive) {
|
|
20
|
-
item.toolbar?.setAttribute(TOOLBAR_ACTIVE_ATTRIBUTE, 'true');
|
|
21
|
-
item.outline?.setAttribute(OUTLINE_ACTIVE_ATTRIBUTE, 'true');
|
|
22
|
-
item.spacing?.setAttribute(SPACING_ACTIVE_ATTRIBUTE, 'true');
|
|
23
|
-
item.addSectionTop?.setAttribute(TOOLBAR_ADD_SECTION_ACTIVE_ATTRIBUTE, 'true');
|
|
24
|
-
item.addSectionBottom?.setAttribute(TOOLBAR_ADD_SECTION_ACTIVE_ATTRIBUTE, 'true');
|
|
25
|
-
} else {
|
|
26
|
-
item.toolbar?.removeAttribute(TOOLBAR_ACTIVE_ATTRIBUTE);
|
|
27
|
-
item.outline?.removeAttribute(OUTLINE_ACTIVE_ATTRIBUTE);
|
|
28
|
-
item.spacing?.removeAttribute(SPACING_ACTIVE_ATTRIBUTE);
|
|
29
|
-
item.addSectionTop?.removeAttribute(TOOLBAR_ADD_SECTION_ACTIVE_ATTRIBUTE);
|
|
30
|
-
item.addSectionBottom?.removeAttribute(TOOLBAR_ADD_SECTION_ACTIVE_ATTRIBUTE);
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
const getSectionProperties = (target)=>{
|
|
35
|
-
const sectionAddTop = target.querySelector('[data-toolbar-add-top]');
|
|
36
|
-
const sectionAddBottom = target.querySelector('[data-toolbar-add-bottom]');
|
|
37
|
-
const sectionChild = Array.from(target.children);
|
|
38
|
-
const sectionToolbar = sectionChild.find((child)=>child.getAttribute('data-toolbar') !== null);
|
|
39
|
-
const sectionOutline = sectionChild.find((child)=>child.getAttribute('data-outline') !== null);
|
|
40
|
-
return {
|
|
41
|
-
sectionToolbar,
|
|
42
|
-
sectionOutline,
|
|
43
|
-
sectionAddTop,
|
|
44
|
-
sectionAddBottom
|
|
45
|
-
};
|
|
46
|
-
};
|
|
47
|
-
const getUpdatedTargetObjects = react.useCallback((targets)=>{
|
|
48
|
-
return targets.reduce((accumulator, $rootTarget)=>{
|
|
49
|
-
let addSectionTop = null;
|
|
50
|
-
let addSectionBottom = null;
|
|
51
|
-
let target = $rootTarget;
|
|
52
|
-
let toolbar = $rootTarget.querySelector('[data-toolbar][data-toolbar-active]');
|
|
53
|
-
let outline = $rootTarget.querySelector('[data-outline][data-outline-active]');
|
|
54
|
-
const targetChild = Array.from(target.children);
|
|
55
|
-
const spacing = targetChild.find((child)=>child.getAttribute('data-spacing') !== null);
|
|
56
|
-
switch(componentTag){
|
|
57
|
-
case 'Button':
|
|
58
|
-
case 'SubmitButton':
|
|
59
|
-
case 'ProductButton':
|
|
60
|
-
case 'DynamicCheckout':
|
|
61
|
-
target = $rootTarget.querySelector('.gp-button-base');
|
|
62
|
-
break;
|
|
63
|
-
case 'ProductProperties':
|
|
64
|
-
target = $rootTarget.querySelector('input');
|
|
65
|
-
break;
|
|
66
|
-
case 'Icon':
|
|
67
|
-
target = $rootTarget.firstElementChild;
|
|
68
|
-
break;
|
|
69
|
-
case 'ProductTag':
|
|
70
|
-
target = $rootTarget?.children[0]?.children[0];
|
|
71
|
-
break;
|
|
72
|
-
case 'Section':
|
|
73
|
-
{
|
|
74
|
-
target = $rootTarget;
|
|
75
|
-
const { sectionOutline, sectionToolbar, sectionAddTop, sectionAddBottom } = getSectionProperties(target);
|
|
76
|
-
outline = sectionOutline;
|
|
77
|
-
toolbar = sectionToolbar;
|
|
78
|
-
addSectionTop = sectionAddTop;
|
|
79
|
-
addSectionBottom = sectionAddBottom;
|
|
80
|
-
break;
|
|
81
|
-
}
|
|
82
|
-
default:
|
|
83
|
-
target = $rootTarget;
|
|
84
|
-
}
|
|
85
|
-
const newTargetObject = {
|
|
86
|
-
target,
|
|
87
|
-
toolbar,
|
|
88
|
-
outline,
|
|
89
|
-
spacing,
|
|
90
|
-
addSectionTop,
|
|
91
|
-
addSectionBottom
|
|
92
|
-
};
|
|
93
|
-
accumulator.push(newTargetObject);
|
|
94
|
-
return accumulator;
|
|
95
|
-
}, []);
|
|
96
|
-
}, [
|
|
97
|
-
componentTag
|
|
98
|
-
]);
|
|
99
|
-
const initListOfTargets = react.useCallback(()=>{
|
|
100
|
-
if (!isEnabledAnimation) return;
|
|
101
|
-
if (!targets.current) {
|
|
102
|
-
targets.current = document.querySelectorAll(`[data-uid="${componentUid}"]`);
|
|
103
|
-
}
|
|
104
|
-
const targetsArray = Array.from(targets.current);
|
|
105
|
-
if (!targetsArray.length) return;
|
|
106
|
-
const updatedTargetObjects = getUpdatedTargetObjects(targetsArray);
|
|
107
|
-
targetObjects.current = updatedTargetObjects;
|
|
108
|
-
}, [
|
|
109
|
-
componentUid,
|
|
110
|
-
getUpdatedTargetObjects,
|
|
111
|
-
isEnabledAnimation
|
|
112
|
-
]);
|
|
113
|
-
return {
|
|
114
|
-
targetObjects,
|
|
115
|
-
setToolbarActive,
|
|
116
|
-
initListOfTargets
|
|
117
|
-
};
|
|
118
|
-
};
|
|
119
|
-
|
|
120
|
-
exports.useAnimationTarget = useAnimationTarget;
|
|
1
|
+
"use strict";var react=require("react"),useAnimationConfig=require("./useAnimationConfig.js");const SPACING_ACTIVE_ATTRIBUTE="data-spacing-margin-bottom-active",TOOLBAR_ACTIVE_ATTRIBUTE="data-toolbar-active",OUTLINE_ACTIVE_ATTRIBUTE="data-outline-active",TOOLBAR_ADD_SECTION_ACTIVE_ATTRIBUTE="data-toolbar-add-active",useAnimationTarget=t=>{let{isEnabledAnimation:e}=useAnimationConfig.useAnimationConfig(t),r=t.tag,a=t.uid,o=react.useRef(null),u=react.useRef([]),T=t=>{if(u.current)for(let e of u.current)t?(e.toolbar?.setAttribute(TOOLBAR_ACTIVE_ATTRIBUTE,"true"),e.outline?.setAttribute(OUTLINE_ACTIVE_ATTRIBUTE,"true"),e.spacing?.setAttribute(SPACING_ACTIVE_ATTRIBUTE,"true"),e.addSectionTop?.setAttribute(TOOLBAR_ADD_SECTION_ACTIVE_ATTRIBUTE,"true"),e.addSectionBottom?.setAttribute(TOOLBAR_ADD_SECTION_ACTIVE_ATTRIBUTE,"true")):(e.toolbar?.removeAttribute(TOOLBAR_ACTIVE_ATTRIBUTE),e.outline?.removeAttribute(OUTLINE_ACTIVE_ATTRIBUTE),e.spacing?.removeAttribute(SPACING_ACTIVE_ATTRIBUTE),e.addSectionTop?.removeAttribute(TOOLBAR_ADD_SECTION_ACTIVE_ATTRIBUTE),e.addSectionBottom?.removeAttribute(TOOLBAR_ADD_SECTION_ACTIVE_ATTRIBUTE))},i=t=>{let e=t.querySelector("[data-toolbar-add-top]"),r=t.querySelector("[data-toolbar-add-bottom]"),a=Array.from(t.children),o=a.find(t=>null!==t.getAttribute("data-toolbar")),u=a.find(t=>null!==t.getAttribute("data-outline"));return{sectionToolbar:o,sectionOutline:u,sectionAddTop:e,sectionAddBottom:r}},n=react.useCallback(t=>t.reduce((t,e)=>{let a=null,o=null,u=e,T=e.querySelector("[data-toolbar][data-toolbar-active]"),n=e.querySelector("[data-outline][data-outline-active]"),A=Array.from(u.children),c=A.find(t=>{let e=t.getAttribute("data-spacing");return null!==e&&t.querySelector("[data-spacing-margin-bottom")});switch(r){case"Button":case"SubmitButton":case"ProductButton":case"DynamicCheckout":u=e.querySelector(".gp-button-base");break;case"ProductProperties":u=e.querySelector("input");break;case"Icon":u=e.firstElementChild;break;case"ProductTag":u=e?.children[0]?.children[0];break;case"Section":{u=e;let{sectionOutline:t,sectionToolbar:r,sectionAddTop:A,sectionAddBottom:c}=i(u);n=t,T=r,a=A,o=c;break}default:u=e}let l={target:u,toolbar:T,outline:n,spacing:c,addSectionTop:a,addSectionBottom:o};return t.push(l),t},[]),[r]),A=react.useCallback(()=>{if(!e)return;o.current||(o.current=document.querySelectorAll(`[data-uid="${a}"]`));let t=Array.from(o.current);if(!t.length)return;let r=n(t);u.current=r},[a,n,e]);return{targetObjects:u,setToolbarActive:T,initListOfTargets:A}};exports.useAnimationTarget=useAnimationTarget;
|
|
@@ -1,87 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
-
|
|
5
|
-
var react = require('react');
|
|
6
|
-
var useAnimations = require('../useAnimations.js');
|
|
7
|
-
var useAnimationTarget = require('./useAnimationTarget.js');
|
|
8
|
-
var useAnimationConfig = require('./useAnimationConfig.js');
|
|
9
|
-
var useAnimationActions = require('./useAnimationActions.js');
|
|
10
|
-
var useAnimationPreview = require('./useAnimationPreview.js');
|
|
11
|
-
var animations = require('../../types/animations.js');
|
|
12
|
-
|
|
13
|
-
const useApplyAnimation = ({ props })=>{
|
|
14
|
-
const currentProps = props;
|
|
15
|
-
const { uid: componentUid } = currentProps;
|
|
16
|
-
const animation = useAnimations.useAnimations();
|
|
17
|
-
const { initListOfTargets, targetObjects, setToolbarActive } = useAnimationTarget.useAnimationTarget(currentProps);
|
|
18
|
-
const { isEnabledAnimation, getAnimationConfig } = useAnimationConfig.useAnimationConfig(currentProps);
|
|
19
|
-
const { setAnimation, cancelAnimation, playAnimation, setAnimationOnFinish } = useAnimationActions.useAnimationActions();
|
|
20
|
-
const { previewAnimation } = useAnimationPreview.useAnimationPreview({
|
|
21
|
-
props: currentProps,
|
|
22
|
-
playAnimation,
|
|
23
|
-
cancelAnimation,
|
|
24
|
-
setAnimationOnFinish,
|
|
25
|
-
setToolbarActive
|
|
26
|
-
});
|
|
27
|
-
const generateAnimation = react.useCallback(({ target, setting, type })=>{
|
|
28
|
-
return animation[type](target, setting);
|
|
29
|
-
}, [
|
|
30
|
-
animation
|
|
31
|
-
]);
|
|
32
|
-
const initListAnimations = react.useCallback(()=>{
|
|
33
|
-
const { type, setting } = getAnimationConfig();
|
|
34
|
-
if (!type || type === animations.AnimationType.None || !targetObjects.current.length) {
|
|
35
|
-
cancelAnimation();
|
|
36
|
-
return;
|
|
37
|
-
}
|
|
38
|
-
const listAnimations = targetObjects.current.map((item)=>generateAnimation({
|
|
39
|
-
type,
|
|
40
|
-
setting,
|
|
41
|
-
target: item.target
|
|
42
|
-
}));
|
|
43
|
-
cancelAnimation();
|
|
44
|
-
setAnimation(listAnimations);
|
|
45
|
-
}, [
|
|
46
|
-
getAnimationConfig,
|
|
47
|
-
targetObjects,
|
|
48
|
-
cancelAnimation,
|
|
49
|
-
setAnimation,
|
|
50
|
-
generateAnimation
|
|
51
|
-
]);
|
|
52
|
-
react.useEffect(()=>{
|
|
53
|
-
if (isEnabledAnimation) {
|
|
54
|
-
initListOfTargets();
|
|
55
|
-
initListAnimations();
|
|
56
|
-
} else {
|
|
57
|
-
cancelAnimation();
|
|
58
|
-
}
|
|
59
|
-
return ()=>{
|
|
60
|
-
cancelAnimation();
|
|
61
|
-
};
|
|
62
|
-
}, [
|
|
63
|
-
componentUid,
|
|
64
|
-
initListAnimations,
|
|
65
|
-
cancelAnimation,
|
|
66
|
-
isEnabledAnimation,
|
|
67
|
-
initListOfTargets
|
|
68
|
-
]);
|
|
69
|
-
react.useEffect(()=>{
|
|
70
|
-
window.addEventListener('preview-animation', previewAnimation);
|
|
71
|
-
return ()=>{
|
|
72
|
-
window.removeEventListener('preview-animation', previewAnimation);
|
|
73
|
-
};
|
|
74
|
-
}, [
|
|
75
|
-
previewAnimation
|
|
76
|
-
]);
|
|
77
|
-
react.useEffect(()=>{
|
|
78
|
-
window.addEventListener('init-animation-target', initListOfTargets);
|
|
79
|
-
return ()=>{
|
|
80
|
-
window.removeEventListener('init-animation-target', initListOfTargets);
|
|
81
|
-
};
|
|
82
|
-
}, [
|
|
83
|
-
initListOfTargets
|
|
84
|
-
]);
|
|
85
|
-
};
|
|
86
|
-
|
|
87
|
-
exports.default = useApplyAnimation;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var react=require("react"),useAnimations=require("../useAnimations.js"),useAnimationTarget=require("./useAnimationTarget.js"),useAnimationConfig=require("./useAnimationConfig.js"),useAnimationActions=require("./useAnimationActions.js"),useAnimationPreview=require("./useAnimationPreview.js"),animations=require("../../types/animations.js");const useApplyAnimation=({props:e})=>{let{uid:i}=e,n=useAnimations.useAnimations(),{initListOfTargets:t,targetObjects:a,setToolbarActive:s}=useAnimationTarget.useAnimationTarget(e),{isEnabledAnimation:r,getAnimationConfig:o}=useAnimationConfig.useAnimationConfig(e),{setAnimation:u,cancelAnimation:m,playAnimation:A,setAnimationOnFinish:c}=useAnimationActions.useAnimationActions(),{previewAnimation:p}=useAnimationPreview.useAnimationPreview({props:e,playAnimation:A,cancelAnimation:m,setAnimationOnFinish:c,setToolbarActive:s}),v=react.useCallback(({target:e,setting:i,type:t})=>n[t](e,i),[n]),w=react.useCallback(()=>{let{type:e,setting:i}=o();if(!e||e===animations.AnimationType.None||!a.current.length){m();return}let n=a.current.map(n=>v({type:e,setting:i,target:n.target}));m(),u(n)},[o,a,m,u,v]);react.useEffect(()=>(r?(t(),w()):m(),()=>{m()}),[i,w,m,r,t]),react.useEffect(()=>(window.addEventListener("preview-animation",p),()=>{window.removeEventListener("preview-animation",p)}),[p]),react.useEffect(()=>(window.addEventListener("init-animation-target",t),()=>{window.removeEventListener("init-animation-target",t)}),[t])};exports.default=useApplyAnimation;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var react=require("react"),animations=require("./animations.js");const TAGS_SELECTOR={Button:".gp-button-base",ProductButton:".gp-button-base",Sticky:"gp-sticky",Dialog:"div[role=dialog]",Icon:"div div",ProductTag:"div div div",Product:"product-form form div"},useLivePageAnimation=(e,r,t)=>{let n=animations.animations(),[c,u]=react.useState(!1),a=react.useRef(void 0),i=react.useRef(void 0),o=react.useRef(null),l=react.useRef("none"),s=react.useRef("none"),d=react.useRef(null),b=react.useRef(null),p=react.useRef(null),m=react.useRef("animation-wrapper-"),f=react.useCallback(e=>{d.current&&(d.current.playbackRate=e??1,d.current.play())},[d]),v=react.useCallback(e=>{b.current&&(b.current.playbackRate=e??1,b.current.play())},[b]),g=react.useCallback(()=>{e.current&&(e.current.style.opacity="1"),o.current&&(o.current.style.opacity="1")},[e]),k=react.useCallback(()=>{e.current&&(e.current.style.opacity="1"),o.current&&(o.current.style.opacity="0")},[e]),C=react.useCallback(e=>{e&&e.stopPropagation(),"shake"!==l.current&&k(),d.current&&(b.current?.cancel(),f(),d.current.finished.then(()=>{o.current&&g()}),o.current&&a?.current?.unobserve(o.current))},[k,f,g]),y=react.useCallback(()=>{g(),d.current&&d.current.cancel()},[g,d]),R=react.useCallback(e=>{e&&e.stopPropagation(),b.current&&(y(),v())},[b,y,v]),h=react.useCallback(()=>{if(b.current){if("zoom"===s.current){if(v(-1),!c)return;b.current.finished.then(()=>{clearTimeout(i.current),i.current=setTimeout(()=>{C()},100)});return}b.current.cancel(),c&&C()}},[v,c,C]),E=react.useCallback(()=>{if("desktop"===p.current);else if("tablet"===p.current)return r?.tablet??r?.desktop;else if("mobile"===p.current)return r?.mobile??r?.tablet??r?.desktop;return r?.desktop},[r?.desktop,r?.mobile,r?.tablet]),L=(e,r)=>e?.triggerConfig?.[r]?.animation??"none",S=react.useCallback(e=>{if("none"===l.current)return;let r=e?.triggerConfig?.appear?.setting?.[l.current];u(r.loop),d.current=n?.[l.current]?.(o.current,r)},[n]),P=react.useCallback(e=>{if("none"===s.current)return;let r=e?.triggerConfig?.hover?.setting?.[s.current];b.current=n?.[s.current]?.(o.current,r)},[n]),T=react.useCallback(()=>{d.current&&(d.current=null,o.current&&a.current?.unobserve(o.current)),b&&(b.current=null,o.current&&(o.current.removeEventListener("mouseenter",R),o.current.removeEventListener("mouseleave",h)))},[h,R]),A=react.useCallback(e=>{if(T(),o.current){if(!e?.enabled){g();return}l.current=L(e,"appear"),s.current=L(e,"hover"),"none"===l.current&&g(),"none"!==s.current&&"desktop"===p.current&&(P(e),o.current.addEventListener("mouseenter",R),o.current.addEventListener("mouseleave",h)),"none"!==l.current?(S(e),a.current=new IntersectionObserver(e=>{e.forEach(e=>{e.intersectionRatio>.1&&C()})},{root:null,rootMargin:"0px",threshold:[.1]}),a.current.observe(o.current)):g()}},[h,S,P,C,R,g,T]),w=react.useCallback(()=>{let e=document.querySelector("html");if(!o.current||!e)return;let r=new ResizeObserver(([e])=>{let r;let t=e?.target.getBoundingClientRect().width??0;r=t>=1024?"desktop":t>=768?"tablet":"mobile",p.current!==r&&(p.current=r,A(E()))});return r.observe(e),()=>r.disconnect()},[E,A]);return react.useEffect(()=>{setTimeout(()=>{if(r&&e.current)return m.current=`animation-wrapper-${Math.random().toString(36).substr(2,5)}`,e.current.setAttribute("data-animationid",m.current),o.current=document.querySelector(`[data-animationid='${m.current}'] ${TAGS_SELECTOR?.[t]??""}`),w()},100)},[w,r,t,e]),{initAnimation:A}};exports.useLivePageAnimation=useLivePageAnimation;
|
|
@@ -1,20 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var adapterShopify = require('@gem-sdk/adapter-shopify');
|
|
4
|
-
var useSWR = require('swr');
|
|
5
|
-
var useSWRMutation = require('swr/mutation');
|
|
6
|
-
var shop = require('../shop.js');
|
|
7
|
-
|
|
8
|
-
const useAddToCart = (options)=>{
|
|
9
|
-
const shop$1 = shop.useStoreFront();
|
|
10
|
-
const { mutate } = useSWR.useSWRConfig();
|
|
11
|
-
return useSWRMutation('add-to-cart', (_, { arg })=>adapterShopify.addToCartOperation(shop$1)(arg), {
|
|
12
|
-
...options,
|
|
13
|
-
onSuccess: (result, key, config)=>{
|
|
14
|
-
mutate('cart', result, false);
|
|
15
|
-
options?.onSuccess?.(result, key, config);
|
|
16
|
-
}
|
|
17
|
-
});
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
exports.useAddToCart = useAddToCart;
|
|
1
|
+
"use strict";var adapterShopify=require("@gem-sdk/adapter-shopify"),useSWR=require("swr"),useSWRMutation=require("swr/mutation"),shop=require("../shop.js");const useAddToCart=e=>{let r=shop.useStoreFront(),{mutate:s}=useSWR.useSWRConfig();return useSWRMutation("add-to-cart",(e,{arg:s})=>adapterShopify.addToCartOperation(r)(s),{...e,onSuccess:(r,t,o)=>{s("cart",r,!1),e?.onSuccess?.(r,t,o)}})};exports.useAddToCart=useAddToCart;
|
|
@@ -1,28 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var adapterShopify = require('@gem-sdk/adapter-shopify');
|
|
4
|
-
var useSWR = require('swr');
|
|
5
|
-
var shop = require('../shop.js');
|
|
6
|
-
var useCartId = require('../useCartId.js');
|
|
7
|
-
|
|
8
|
-
const useCartData = (options)=>{
|
|
9
|
-
const { cartId, clearCartId } = useCartId.default();
|
|
10
|
-
const shop$1 = shop.useStoreFront();
|
|
11
|
-
return useSWR(cartId ? 'cart' : null, ()=>adapterShopify.getCartOperation(shop$1)({
|
|
12
|
-
cartId: cartId
|
|
13
|
-
}), {
|
|
14
|
-
revalidateOnMount: true,
|
|
15
|
-
revalidateOnFocus: true,
|
|
16
|
-
keepPreviousData: false,
|
|
17
|
-
dedupingInterval: 2000,
|
|
18
|
-
...options,
|
|
19
|
-
onSuccess (data, key, config) {
|
|
20
|
-
if (!data) {
|
|
21
|
-
clearCartId();
|
|
22
|
-
}
|
|
23
|
-
options?.onSuccess?.(data, key, config);
|
|
24
|
-
}
|
|
25
|
-
});
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
exports.useCartData = useCartData;
|
|
1
|
+
"use strict";var adapterShopify=require("@gem-sdk/adapter-shopify"),useSWR=require("swr"),shop=require("../shop.js"),useCartId=require("../useCartId.js");const useCartData=e=>{let{cartId:r,clearCartId:a}=useCartId.default(),t=shop.useStoreFront();return useSWR(r?"cart":null,()=>adapterShopify.getCartOperation(t)({cartId:r}),{revalidateOnMount:!0,revalidateOnFocus:!0,keepPreviousData:!1,dedupingInterval:2e3,...e,onSuccess(r,t,s){r||a(),e?.onSuccess?.(r,t,s)}})};exports.useCartData=useCartData;
|
|
@@ -1,20 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var adapterShopify = require('@gem-sdk/adapter-shopify');
|
|
4
|
-
var useSWR = require('swr');
|
|
5
|
-
var useSWRMutation = require('swr/mutation');
|
|
6
|
-
var shop = require('../shop.js');
|
|
7
|
-
|
|
8
|
-
const useCartDiscountCodesUpdate = (options)=>{
|
|
9
|
-
const shop$1 = shop.useStoreFront();
|
|
10
|
-
const { mutate } = useSWR.useSWRConfig();
|
|
11
|
-
return useSWRMutation('cart-discount-codes-update', (_, { arg })=>adapterShopify.cartDiscountCodesUpdateOperation(shop$1)(arg), {
|
|
12
|
-
...options,
|
|
13
|
-
onSuccess: (result, key, config)=>{
|
|
14
|
-
mutate('cart', result, false);
|
|
15
|
-
options?.onSuccess?.(result, key, config);
|
|
16
|
-
}
|
|
17
|
-
});
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
exports.useCartDiscountCodesUpdate = useCartDiscountCodesUpdate;
|
|
1
|
+
"use strict";var adapterShopify=require("@gem-sdk/adapter-shopify"),useSWR=require("swr"),useSWRMutation=require("swr/mutation"),shop=require("../shop.js");const useCartDiscountCodesUpdate=e=>{let s=shop.useStoreFront(),{mutate:t}=useSWR.useSWRConfig();return useSWRMutation("cart-discount-codes-update",(e,{arg:t})=>adapterShopify.cartDiscountCodesUpdateOperation(s)(t),{...e,onSuccess:(s,o,r)=>{t("cart",s,!1),e?.onSuccess?.(s,o,r)}})};exports.useCartDiscountCodesUpdate=useCartDiscountCodesUpdate;
|
|
@@ -1,20 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var adapterShopify = require('@gem-sdk/adapter-shopify');
|
|
4
|
-
var useSWR = require('swr');
|
|
5
|
-
var useSWRMutation = require('swr/mutation');
|
|
6
|
-
var shop = require('../shop.js');
|
|
7
|
-
|
|
8
|
-
const useCartNoteUpdate = (options)=>{
|
|
9
|
-
const shop$1 = shop.useStoreFront();
|
|
10
|
-
const { mutate } = useSWR.useSWRConfig();
|
|
11
|
-
return useSWRMutation('cart-note-update', (_, { arg })=>adapterShopify.cartNoteUpdateOperation(shop$1)(arg), {
|
|
12
|
-
...options,
|
|
13
|
-
onSuccess: (result, key, config)=>{
|
|
14
|
-
mutate('cart', result, false);
|
|
15
|
-
options?.onSuccess?.(result, key, config);
|
|
16
|
-
}
|
|
17
|
-
});
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
exports.useCartNoteUpdate = useCartNoteUpdate;
|
|
1
|
+
"use strict";var adapterShopify=require("@gem-sdk/adapter-shopify"),useSWR=require("swr"),useSWRMutation=require("swr/mutation"),shop=require("../shop.js");const useCartNoteUpdate=e=>{let t=shop.useStoreFront(),{mutate:r}=useSWR.useSWRConfig();return useSWRMutation("cart-note-update",(e,{arg:r})=>adapterShopify.cartNoteUpdateOperation(t)(r),{...e,onSuccess:(t,s,a)=>{r("cart",t,!1),e?.onSuccess?.(t,s,a)}})};exports.useCartNoteUpdate=useCartNoteUpdate;
|
|
@@ -1,22 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var adapterShopify = require('@gem-sdk/adapter-shopify');
|
|
4
|
-
var useSWR = require('swr');
|
|
5
|
-
var useSWRMutation = require('swr/mutation');
|
|
6
|
-
var shop = require('../shop.js');
|
|
7
|
-
|
|
8
|
-
const useCreateCart = (options)=>{
|
|
9
|
-
const shop$1 = shop.useStoreFront();
|
|
10
|
-
const { mutate } = useSWR.useSWRConfig();
|
|
11
|
-
return useSWRMutation('create-cart', (_, { arg })=>{
|
|
12
|
-
return adapterShopify.createCartOperation(shop$1)(arg);
|
|
13
|
-
}, {
|
|
14
|
-
...options,
|
|
15
|
-
onSuccess: (result, key, config)=>{
|
|
16
|
-
mutate('cart', result, false);
|
|
17
|
-
options?.onSuccess?.(result, key, config);
|
|
18
|
-
}
|
|
19
|
-
});
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
exports.useCreateCart = useCreateCart;
|
|
1
|
+
"use strict";var adapterShopify=require("@gem-sdk/adapter-shopify"),useSWR=require("swr"),useSWRMutation=require("swr/mutation"),shop=require("../shop.js");const useCreateCart=e=>{let r=shop.useStoreFront(),{mutate:t}=useSWR.useSWRConfig();return useSWRMutation("create-cart",(e,{arg:t})=>adapterShopify.createCartOperation(r)(t),{...e,onSuccess:(r,s,a)=>{t("cart",r,!1),e?.onSuccess?.(r,s,a)}})};exports.useCreateCart=useCreateCart;
|
|
@@ -1,20 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var adapterShopify = require('@gem-sdk/adapter-shopify');
|
|
4
|
-
var useSWR = require('swr');
|
|
5
|
-
var useSWRMutation = require('swr/mutation');
|
|
6
|
-
var shop = require('../shop.js');
|
|
7
|
-
|
|
8
|
-
const useRemoveCartItem = (options)=>{
|
|
9
|
-
const shop$1 = shop.useStoreFront();
|
|
10
|
-
const { mutate } = useSWR.useSWRConfig();
|
|
11
|
-
return useSWRMutation('remove-cart-item', (_, { arg })=>adapterShopify.removeCartItemOperation(shop$1)(arg), {
|
|
12
|
-
...options,
|
|
13
|
-
onSuccess: (result, key, config)=>{
|
|
14
|
-
mutate('cart', result, false);
|
|
15
|
-
options?.onSuccess?.(result, key, config);
|
|
16
|
-
}
|
|
17
|
-
});
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
exports.useRemoveCartItem = useRemoveCartItem;
|
|
1
|
+
"use strict";var adapterShopify=require("@gem-sdk/adapter-shopify"),useSWR=require("swr"),useSWRMutation=require("swr/mutation"),shop=require("../shop.js");const useRemoveCartItem=e=>{let r=shop.useStoreFront(),{mutate:t}=useSWR.useSWRConfig();return useSWRMutation("remove-cart-item",(e,{arg:t})=>adapterShopify.removeCartItemOperation(r)(t),{...e,onSuccess:(r,s,o)=>{t("cart",r,!1),e?.onSuccess?.(r,s,o)}})};exports.useRemoveCartItem=useRemoveCartItem;
|
|
@@ -1,20 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var adapterShopify = require('@gem-sdk/adapter-shopify');
|
|
4
|
-
var useSWR = require('swr');
|
|
5
|
-
var useSWRMutation = require('swr/mutation');
|
|
6
|
-
var shop = require('../shop.js');
|
|
7
|
-
|
|
8
|
-
const useUpdateCartItem = (options)=>{
|
|
9
|
-
const shop$1 = shop.useStoreFront();
|
|
10
|
-
const { mutate } = useSWR.useSWRConfig();
|
|
11
|
-
return useSWRMutation('update-cart-item', (_, { arg })=>adapterShopify.updateCartLineOperation(shop$1)(arg), {
|
|
12
|
-
...options,
|
|
13
|
-
onSuccess: (result, key, config)=>{
|
|
14
|
-
mutate('cart', result, false);
|
|
15
|
-
options?.onSuccess?.(result, key, config);
|
|
16
|
-
}
|
|
17
|
-
});
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
exports.useUpdateCartItem = useUpdateCartItem;
|
|
1
|
+
"use strict";var adapterShopify=require("@gem-sdk/adapter-shopify"),useSWR=require("swr"),useSWRMutation=require("swr/mutation"),shop=require("../shop.js");const useUpdateCartItem=e=>{let t=shop.useStoreFront(),{mutate:r}=useSWR.useSWRConfig();return useSWRMutation("update-cart-item",(e,{arg:r})=>adapterShopify.updateCartLineOperation(t)(r),{...e,onSuccess:(t,s,a)=>{r("cart",t,!1),e?.onSuccess?.(t,s,a)}})};exports.useUpdateCartItem=useUpdateCartItem;
|
|
@@ -1,22 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var useSWR = require('swr');
|
|
4
|
-
var getCollection = require('../../helpers/queries/get-collection.js');
|
|
5
|
-
var shop = require('../shop.js');
|
|
6
|
-
var useFetchHandle = require('../useFetchHandle.js');
|
|
7
|
-
var query = require('../../helpers/query.js');
|
|
8
|
-
|
|
9
|
-
const useCollectionQuery = (args, options)=>{
|
|
10
|
-
const fetcher = useFetchHandle.useFetchHandle();
|
|
11
|
-
const isSample = shop.useIsSampleProduct();
|
|
12
|
-
const isStorefront = shop.useIsStorefrontProduct();
|
|
13
|
-
return useSWR(args ? query.generateCollectionQueryKey({
|
|
14
|
-
...args,
|
|
15
|
-
isSample,
|
|
16
|
-
isStorefront
|
|
17
|
-
}) : null, ([, arg])=>{
|
|
18
|
-
return getCollection.getCollection(fetcher, arg);
|
|
19
|
-
}, options);
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
exports.useCollectionQuery = useCollectionQuery;
|
|
1
|
+
"use strict";var useSWR=require("swr"),getCollection=require("../../helpers/queries/get-collection.js"),shop=require("../shop.js"),useFetchHandle=require("../useFetchHandle.js"),query=require("../../helpers/query.js");const useCollectionQuery=(e,r)=>{let s=useFetchHandle.useFetchHandle(),u=shop.useIsSampleProduct(),t=shop.useIsStorefrontProduct();return useSWR(e?query.generateCollectionQueryKey({...e,isSample:u,isStorefront:t}):null,([,e])=>getCollection.getCollection(s,e),r)};exports.useCollectionQuery=useCollectionQuery;
|
|
@@ -1,17 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var useSWR = require('swr');
|
|
4
|
-
var getCollections = require('../../helpers/queries/get-collections.js');
|
|
5
|
-
var useFetchHandle = require('../useFetchHandle.js');
|
|
6
|
-
|
|
7
|
-
const useCollectionsQuery = (variable, options)=>{
|
|
8
|
-
const fetcher = useFetchHandle.useFetchHandle();
|
|
9
|
-
return useSWR(variable ? [
|
|
10
|
-
'query/collections',
|
|
11
|
-
variable
|
|
12
|
-
] : null, async ([, arg])=>{
|
|
13
|
-
return getCollections.getCollections(fetcher, arg);
|
|
14
|
-
}, options);
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
exports.useCollectionsQuery = useCollectionsQuery;
|
|
1
|
+
"use strict";var useSWR=require("swr"),getCollections=require("../../helpers/queries/get-collections.js"),useFetchHandle=require("../useFetchHandle.js");const useCollectionsQuery=(e,s)=>{let l=useFetchHandle.useFetchHandle();return useSWR(e?["query/collections",e]:null,async([,e])=>getCollections.getCollections(l,e),s)};exports.useCollectionsQuery=useCollectionsQuery;
|
|
@@ -1,22 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var useSWR = require('swr');
|
|
4
|
-
var getProduct = require('../../helpers/queries/get-product.js');
|
|
5
|
-
var shop = require('../shop.js');
|
|
6
|
-
var useFetchHandle = require('../useFetchHandle.js');
|
|
7
|
-
var query = require('../../helpers/query.js');
|
|
8
|
-
|
|
9
|
-
const useProductQuery = (productId, options)=>{
|
|
10
|
-
const fetcher = useFetchHandle.useFetchHandle();
|
|
11
|
-
const isSample = shop.useIsSampleProduct();
|
|
12
|
-
const isStorefront = shop.useIsStorefrontProduct();
|
|
13
|
-
return useSWR(productId ? query.generateProductQueryKey({
|
|
14
|
-
id: productId,
|
|
15
|
-
isSample,
|
|
16
|
-
isStorefront
|
|
17
|
-
}) : null, async ([, arg])=>{
|
|
18
|
-
return getProduct.getProduct(fetcher, arg);
|
|
19
|
-
}, options);
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
exports.useProductQuery = useProductQuery;
|
|
1
|
+
"use strict";var useSWR=require("swr"),getProduct=require("../../helpers/queries/get-product.js"),shop=require("../shop.js"),useFetchHandle=require("../useFetchHandle.js"),query=require("../../helpers/query.js");const useProductQuery=(e,r)=>{let u=useFetchHandle.useFetchHandle(),s=shop.useIsSampleProduct(),t=shop.useIsStorefrontProduct();return useSWR(e?query.generateProductQueryKey({id:e,isSample:s,isStorefront:t}):null,async([,e])=>getProduct.getProduct(u,e),r)};exports.useProductQuery=useProductQuery;
|
|
@@ -1,23 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var useSWR = require('swr');
|
|
4
|
-
var getProducts = require('../../helpers/queries/get-products.js');
|
|
5
|
-
var query = require('../../helpers/query.js');
|
|
6
|
-
var shop = require('../shop.js');
|
|
7
|
-
var useFetchHandle = require('../useFetchHandle.js');
|
|
8
|
-
|
|
9
|
-
const useProductsQuery = (ids, options, defaultSelectedProductCount)=>{
|
|
10
|
-
const fetcher = useFetchHandle.useFetchHandle();
|
|
11
|
-
const isSample = shop.useIsSampleProduct();
|
|
12
|
-
const isStorefront = shop.useIsStorefrontProduct();
|
|
13
|
-
return useSWR(ids ? query.generateProductsQueryKey({
|
|
14
|
-
ids,
|
|
15
|
-
isSample,
|
|
16
|
-
isStorefront,
|
|
17
|
-
defaultSelectedProductCount
|
|
18
|
-
}) : null, async ([, arg])=>{
|
|
19
|
-
return getProducts.getProducts(fetcher, arg);
|
|
20
|
-
}, options);
|
|
21
|
-
};
|
|
22
|
-
|
|
23
|
-
exports.useProductsQuery = useProductsQuery;
|
|
1
|
+
"use strict";var useSWR=require("swr"),getProducts=require("../../helpers/queries/get-products.js"),query=require("../../helpers/query.js"),shop=require("../shop.js"),useFetchHandle=require("../useFetchHandle.js");const useProductsQuery=(e,u,r)=>{let t=useFetchHandle.useFetchHandle(),s=shop.useIsSampleProduct(),c=shop.useIsStorefrontProduct();return useSWR(e?query.generateProductsQueryKey({ids:e,isSample:s,isStorefront:!r?.fetcher&&c,defaultSelectedProductCount:r?.defaultSelectedProductCount,allStatus:r?.allStatus}):null,async([,e])=>getProducts.getProducts(r?.fetcher||t,e),u)},useProductsQueryAll=(e,u)=>{let r=useFetchHandle.useFetchHandle();return useSWR(e?["query/products",e]:null,async([,e])=>getProducts.getProductQueryAll(r,e),u)};exports.useProductsQuery=useProductsQuery,exports.useProductsQueryAll=useProductsQueryAll;
|
package/dist/cjs/hooks/shop.js
CHANGED
|
@@ -1,126 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var react = require('react');
|
|
4
|
-
var useSWR = require('swr');
|
|
5
|
-
var ShopContext = require('../contexts/ShopContext.js');
|
|
6
|
-
|
|
7
|
-
const useLocale = ()=>{
|
|
8
|
-
const locale = ShopContext.useShopStore((state)=>state.locale);
|
|
9
|
-
const changeLocale = ShopContext.useShopStore((state)=>state.changeLocale);
|
|
10
|
-
return react.useMemo(()=>({
|
|
11
|
-
locale,
|
|
12
|
-
changeLocale
|
|
13
|
-
}), [
|
|
14
|
-
locale,
|
|
15
|
-
changeLocale
|
|
16
|
-
]);
|
|
17
|
-
};
|
|
18
|
-
const useCurrency = ()=>{
|
|
19
|
-
const currency = ShopContext.useShopStore((state)=>state.currency);
|
|
20
|
-
const changeCurrency = ShopContext.useShopStore((state)=>state.changeCurrency);
|
|
21
|
-
return react.useMemo(()=>({
|
|
22
|
-
currency,
|
|
23
|
-
changeCurrency
|
|
24
|
-
}), [
|
|
25
|
-
currency,
|
|
26
|
-
changeCurrency
|
|
27
|
-
]);
|
|
28
|
-
};
|
|
29
|
-
const useMoneyFormat = ()=>{
|
|
30
|
-
const moneyFormat = ShopContext.useShopStore((state)=>state.moneyFormat);
|
|
31
|
-
const moneyWithCurrencyFormat = ShopContext.useShopStore((state)=>state.moneyWithCurrencyFormat);
|
|
32
|
-
return react.useMemo(()=>({
|
|
33
|
-
moneyFormat,
|
|
34
|
-
moneyWithCurrencyFormat
|
|
35
|
-
}), [
|
|
36
|
-
moneyFormat,
|
|
37
|
-
moneyWithCurrencyFormat
|
|
38
|
-
]);
|
|
39
|
-
};
|
|
40
|
-
const useSwatches = ()=>{
|
|
41
|
-
const swatches = ShopContext.useShopStore((state)=>state.swatches);
|
|
42
|
-
const changeSwatches = ShopContext.useShopStore((state)=>state.changeSwatches);
|
|
43
|
-
return react.useMemo(()=>({
|
|
44
|
-
swatches,
|
|
45
|
-
changeSwatches
|
|
46
|
-
}), [
|
|
47
|
-
swatches,
|
|
48
|
-
changeSwatches
|
|
49
|
-
]);
|
|
50
|
-
};
|
|
51
|
-
const usePageType = ()=>{
|
|
52
|
-
const pageType = ShopContext.useShopStore((state)=>state.pageType);
|
|
53
|
-
return react.useMemo(()=>pageType || 'STATIC', [
|
|
54
|
-
pageType
|
|
55
|
-
]);
|
|
56
|
-
};
|
|
57
|
-
const useStoreFront = ()=>{
|
|
58
|
-
const provider = ShopContext.useShopStore((state)=>state.provider);
|
|
59
|
-
const storefrontToken = ShopContext.useShopStore((state)=>state.storefrontToken);
|
|
60
|
-
const storefrontUrl = ShopContext.useShopStore((state)=>state.storefrontUrl);
|
|
61
|
-
return {
|
|
62
|
-
provider,
|
|
63
|
-
storefrontToken,
|
|
64
|
-
storefrontUrl
|
|
65
|
-
};
|
|
66
|
-
};
|
|
67
|
-
const usePluginEnable = ()=>{
|
|
68
|
-
return ShopContext.useShopStore((state)=>state.plugins);
|
|
69
|
-
};
|
|
70
|
-
const useEditorMode = ()=>{
|
|
71
|
-
return ShopContext.useShopStore((state)=>state.mode);
|
|
72
|
-
};
|
|
73
|
-
const useMobileOnly = ()=>{
|
|
74
|
-
return ShopContext.useShopStore((state)=>state.mobileOnly);
|
|
75
|
-
};
|
|
76
|
-
const useMatchMutate = ()=>{
|
|
77
|
-
const { cache, mutate } = useSWR.useSWRConfig();
|
|
78
|
-
return (matcher, opts)=>{
|
|
79
|
-
if (!(cache instanceof Map)) {
|
|
80
|
-
throw new Error('matchMutate requires the cache provider to be a Map instance');
|
|
81
|
-
}
|
|
82
|
-
const keys = [];
|
|
83
|
-
cache.forEach((_, key)=>{
|
|
84
|
-
if (matcher.test(key)) {
|
|
85
|
-
keys.push(key);
|
|
86
|
-
}
|
|
87
|
-
});
|
|
88
|
-
const mutations = keys.map((key)=>{
|
|
89
|
-
const cacheData = cache.get(key);
|
|
90
|
-
return mutate(key, cacheData?.data, opts);
|
|
91
|
-
});
|
|
92
|
-
return Promise.all(mutations);
|
|
93
|
-
};
|
|
94
|
-
};
|
|
95
|
-
function useConnectedShopify() {
|
|
96
|
-
const { storefrontToken } = useStoreFront();
|
|
97
|
-
return !!storefrontToken;
|
|
98
|
-
}
|
|
99
|
-
function useIsSampleProduct() {
|
|
100
|
-
const { storefrontToken } = useStoreFront();
|
|
101
|
-
const isStorefront = ShopContext.useShopStore((state)=>state.isStorefront);
|
|
102
|
-
return isStorefront && !storefrontToken;
|
|
103
|
-
}
|
|
104
|
-
function useIsStorefrontProduct() {
|
|
105
|
-
return ShopContext.useShopStore((state)=>state.isStorefront);
|
|
106
|
-
}
|
|
107
|
-
function useCheckoutUrl(url) {
|
|
108
|
-
const { storefrontToken } = useStoreFront();
|
|
109
|
-
if (!url) return undefined;
|
|
110
|
-
return storefrontToken ? `${url}?access_token=${storefrontToken}` : url;
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
exports.useCheckoutUrl = useCheckoutUrl;
|
|
114
|
-
exports.useConnectedShopify = useConnectedShopify;
|
|
115
|
-
exports.useCurrency = useCurrency;
|
|
116
|
-
exports.useEditorMode = useEditorMode;
|
|
117
|
-
exports.useIsSampleProduct = useIsSampleProduct;
|
|
118
|
-
exports.useIsStorefrontProduct = useIsStorefrontProduct;
|
|
119
|
-
exports.useLocale = useLocale;
|
|
120
|
-
exports.useMatchMutate = useMatchMutate;
|
|
121
|
-
exports.useMobileOnly = useMobileOnly;
|
|
122
|
-
exports.useMoneyFormat = useMoneyFormat;
|
|
123
|
-
exports.usePageType = usePageType;
|
|
124
|
-
exports.usePluginEnable = usePluginEnable;
|
|
125
|
-
exports.useStoreFront = useStoreFront;
|
|
126
|
-
exports.useSwatches = useSwatches;
|
|
1
|
+
"use strict";var react=require("react"),useSWR=require("swr"),ShopContext=require("../contexts/ShopContext.js");const useLocale=()=>{let e=ShopContext.useShopStore(e=>e.locale),t=ShopContext.useShopStore(e=>e.changeLocale);return react.useMemo(()=>({locale:e,changeLocale:t}),[e,t])},useCurrency=()=>{let e=ShopContext.useShopStore(e=>e.currency),t=ShopContext.useShopStore(e=>e.changeCurrency);return react.useMemo(()=>({currency:e,changeCurrency:t}),[e,t])},useMoneyFormat=()=>{let e=ShopContext.useShopStore(e=>e.moneyFormat),t=ShopContext.useShopStore(e=>e.moneyWithCurrencyFormat);return react.useMemo(()=>({moneyFormat:e,moneyWithCurrencyFormat:t}),[e,t])},useSwatches=()=>{let e=ShopContext.useShopStore(e=>e.swatches),t=ShopContext.useShopStore(e=>e.changeSwatches);return react.useMemo(()=>({swatches:e,changeSwatches:t}),[e,t])},usePageType=()=>{let e=ShopContext.useShopStore(e=>e.pageType);return react.useMemo(()=>e||"STATIC",[e])},useStoreFront=()=>{let e=ShopContext.useShopStore(e=>e.provider),t=ShopContext.useShopStore(e=>e.storefrontToken),o=ShopContext.useShopStore(e=>e.storefrontUrl);return{provider:e,storefrontToken:t,storefrontUrl:o}},usePluginEnable=()=>ShopContext.useShopStore(e=>e.plugins),useEditorMode=()=>ShopContext.useShopStore(e=>e.mode),useMobileOnly=()=>ShopContext.useShopStore(e=>e.mobileOnly),useMatchMutate=()=>{let{cache:e,mutate:t}=useSWR.useSWRConfig();return(o,r)=>{if(!(e instanceof Map))throw Error("matchMutate requires the cache provider to be a Map instance");let u=[];e.forEach((e,t)=>{o.test(t)&&u.push(t)});let s=u.map(o=>{let u=e.get(o);return t(o,u?.data,r)});return Promise.all(s)}};function useConnectedShopify(){let{storefrontToken:e}=useStoreFront();return!!e}function useIsSampleProduct(){let{storefrontToken:e}=useStoreFront(),t=ShopContext.useShopStore(e=>e.isStorefront);return t&&!e}function useIsStorefrontProduct(){return ShopContext.useShopStore(e=>e.isStorefront)}function useCheckoutUrl(e){let{storefrontToken:t}=useStoreFront();if(e)return t?`${e}?access_token=${t}`:e}exports.useCheckoutUrl=useCheckoutUrl,exports.useConnectedShopify=useConnectedShopify,exports.useCurrency=useCurrency,exports.useEditorMode=useEditorMode,exports.useIsSampleProduct=useIsSampleProduct,exports.useIsStorefrontProduct=useIsStorefrontProduct,exports.useLocale=useLocale,exports.useMatchMutate=useMatchMutate,exports.useMobileOnly=useMobileOnly,exports.useMoneyFormat=useMoneyFormat,exports.usePageType=usePageType,exports.usePluginEnable=usePluginEnable,exports.useStoreFront=useStoreFront,exports.useSwatches=useSwatches;
|
|
@@ -1,21 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var react = require('react');
|
|
4
|
-
|
|
5
|
-
function subscribe(callback) {
|
|
6
|
-
window.addEventListener('resize', callback);
|
|
7
|
-
return ()=>window.removeEventListener('resize', callback);
|
|
8
|
-
}
|
|
9
|
-
const useCurrentDevice = ()=>{
|
|
10
|
-
return react.useSyncExternalStore(subscribe, ()=>{
|
|
11
|
-
if (window.innerWidth < 768) {
|
|
12
|
-
return 'mobile';
|
|
13
|
-
} else if (window.innerWidth >= 768 && window.innerWidth < 1024) {
|
|
14
|
-
return 'tablet';
|
|
15
|
-
} else {
|
|
16
|
-
return 'desktop';
|
|
17
|
-
}
|
|
18
|
-
}, ()=>'desktop');
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
exports.useCurrentDevice = useCurrentDevice;
|
|
1
|
+
"use strict";var react=require("react");function subscribe(e){return window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)}const useCurrentDevice=()=>react.useSyncExternalStore(subscribe,()=>window.innerWidth<768?"mobile":window.innerWidth>=768&&window.innerWidth<1024?"tablet":"desktop",()=>"desktop");exports.useCurrentDevice=useCurrentDevice;
|