@gem-sdk/core 1.58.0-dev.13 → 1.58.0-dev.15
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/ComponentToolbarPreview.js +2 -2
- package/dist/cjs/components/InteractionSuffix.js +1 -1
- package/dist/cjs/components/ai-generator/AIContentGenerator.js +1 -1
- package/dist/cjs/components/theme-section/CreateThemeSection.js +1 -1
- package/dist/cjs/contexts/ProductContext.js +16 -1
- package/dist/cjs/graphql/fragments/preview-theme-page.generated.js +32 -0
- package/dist/cjs/graphql/fragments/published-theme-page.generated.js +0 -28
- package/dist/cjs/graphql/queries/preview-page.generated.js +6 -12
- package/dist/cjs/helpers/interaction/index.js +1 -1
- package/dist/cjs/helpers/third-party/getAppBlockConfig.js +8 -0
- package/dist/cjs/hooks/useProduct.js +10 -1
- package/dist/cjs/index.js +11 -10
- package/dist/esm/components/ComponentToolbarPreview.js +2 -2
- package/dist/esm/components/InteractionSuffix.js +1 -1
- package/dist/esm/components/ai-generator/AIContentGenerator.js +1 -1
- package/dist/esm/components/theme-section/CreateThemeSection.js +1 -1
- package/dist/esm/contexts/ProductContext.js +16 -1
- package/dist/esm/graphql/fragments/preview-theme-page.generated.js +30 -0
- package/dist/esm/graphql/fragments/published-theme-page.generated.js +1 -28
- package/dist/esm/graphql/queries/preview-page.generated.js +5 -11
- package/dist/esm/helpers/interaction/index.js +1 -1
- package/dist/esm/helpers/third-party/getAppBlockConfig.js +8 -0
- package/dist/esm/hooks/useProduct.js +10 -2
- package/dist/esm/index.js +5 -5
- package/dist/types/index.d.ts +413 -88
- package/package.json +1 -1
|
@@ -6,10 +6,10 @@ var jsxRuntime = require('react/jsx-runtime');
|
|
|
6
6
|
var react = require('react');
|
|
7
7
|
require('zustand');
|
|
8
8
|
var BuilderPreviewContext = require('../contexts/BuilderPreviewContext.js');
|
|
9
|
-
var ShopContext = require('../contexts/ShopContext.js');
|
|
10
9
|
var PageContext = require('../contexts/PageContext.js');
|
|
11
|
-
require('
|
|
10
|
+
var ShopContext = require('../contexts/ShopContext.js');
|
|
12
11
|
require('swr');
|
|
12
|
+
require('@gem-sdk/adapter-shopify');
|
|
13
13
|
require('swr/mutation');
|
|
14
14
|
require('swr/infinite');
|
|
15
15
|
require('vanilla-lazyload');
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
var jsxRuntime = require('react/jsx-runtime');
|
|
4
4
|
require('zustand');
|
|
5
5
|
require('react');
|
|
6
|
-
require('swr');
|
|
7
6
|
var PageContext = require('../contexts/PageContext.js');
|
|
7
|
+
require('swr');
|
|
8
8
|
require('@gem-sdk/adapter-shopify');
|
|
9
9
|
require('swr/mutation');
|
|
10
10
|
require('swr/infinite');
|
|
@@ -16,8 +16,8 @@ var useFlipPopup = require('./hooks/useFlipPopup.js');
|
|
|
16
16
|
var useCheckingProductInside = require('./hooks/useCheckingProductInside.js');
|
|
17
17
|
require('zustand');
|
|
18
18
|
var ShopContext = require('../../contexts/ShopContext.js');
|
|
19
|
-
require('@gem-sdk/adapter-shopify');
|
|
20
19
|
require('swr');
|
|
20
|
+
require('@gem-sdk/adapter-shopify');
|
|
21
21
|
require('swr/mutation');
|
|
22
22
|
require('swr/infinite');
|
|
23
23
|
require('vanilla-lazyload');
|
|
@@ -5,8 +5,8 @@ var react = require('react');
|
|
|
5
5
|
var ThemeSectionTooltip = require('./ThemeSectionTooltip.js');
|
|
6
6
|
require('zustand');
|
|
7
7
|
var ShopContext = require('../../contexts/ShopContext.js');
|
|
8
|
-
require('@gem-sdk/adapter-shopify');
|
|
9
8
|
require('swr');
|
|
9
|
+
require('@gem-sdk/adapter-shopify');
|
|
10
10
|
require('swr/mutation');
|
|
11
11
|
require('swr/infinite');
|
|
12
12
|
require('vanilla-lazyload');
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var jsxRuntime = require('react/jsx-runtime');
|
|
4
|
-
var zustand = require('zustand');
|
|
5
4
|
var react = require('react');
|
|
5
|
+
var zustand = require('zustand');
|
|
6
6
|
var flattenConnection = require('../helpers/flatten-connection.js');
|
|
7
7
|
var variant = require('../helpers/variant.js');
|
|
8
8
|
|
|
@@ -25,6 +25,21 @@ const createProductStoreProvider = (data)=>zustand.createStore((set, get)=>({
|
|
|
25
25
|
};
|
|
26
26
|
});
|
|
27
27
|
},
|
|
28
|
+
setUseProductCompareAtPrice: (value)=>{
|
|
29
|
+
set({
|
|
30
|
+
useProductCompareAtPrice: value
|
|
31
|
+
});
|
|
32
|
+
},
|
|
33
|
+
setShouldRequireUploadMessage: (value)=>{
|
|
34
|
+
set({
|
|
35
|
+
shouldRequireUploadMessage: value
|
|
36
|
+
});
|
|
37
|
+
},
|
|
38
|
+
setRequireUpload: (value)=>{
|
|
39
|
+
set({
|
|
40
|
+
requireUpload: value
|
|
41
|
+
});
|
|
42
|
+
},
|
|
28
43
|
addProperty: (data)=>{
|
|
29
44
|
const properties = get().properties;
|
|
30
45
|
if (!properties?.some((v)=>v.key === data.key)) {
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
/* eslint-disable */ const PreviewThemePageSelect = `
|
|
4
|
+
fragment PreviewThemePageSelect on PreviewThemePage {
|
|
5
|
+
id
|
|
6
|
+
name
|
|
7
|
+
handle
|
|
8
|
+
isMobile
|
|
9
|
+
sectionPosition
|
|
10
|
+
pageSections {
|
|
11
|
+
cid
|
|
12
|
+
component
|
|
13
|
+
id
|
|
14
|
+
}
|
|
15
|
+
dataSEO {
|
|
16
|
+
...DataSEOSelect
|
|
17
|
+
}
|
|
18
|
+
themeStyle {
|
|
19
|
+
id
|
|
20
|
+
data
|
|
21
|
+
name
|
|
22
|
+
}
|
|
23
|
+
analytic {
|
|
24
|
+
...AnalyticSelect
|
|
25
|
+
}
|
|
26
|
+
customCode {
|
|
27
|
+
...CustomCodeSelect
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
`;
|
|
31
|
+
|
|
32
|
+
exports.PreviewThemePageSelect = PreviewThemePageSelect;
|
|
@@ -34,33 +34,5 @@
|
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
`;
|
|
37
|
-
const PreviewThemePageSelect = `
|
|
38
|
-
fragment PreviewThemePageSelect on PublishedThemePage {
|
|
39
|
-
id
|
|
40
|
-
name
|
|
41
|
-
handle
|
|
42
|
-
isMobile
|
|
43
|
-
sectionPosition
|
|
44
|
-
pageSections {
|
|
45
|
-
...PublishedPageSectionSelect
|
|
46
|
-
}
|
|
47
|
-
themePageCustomSections {
|
|
48
|
-
...PublishedCustomSectionSelect
|
|
49
|
-
}
|
|
50
|
-
themePageDataSEO {
|
|
51
|
-
...DataSEOSelect
|
|
52
|
-
}
|
|
53
|
-
pageStyle {
|
|
54
|
-
...PublishedThemeStyleSelect
|
|
55
|
-
}
|
|
56
|
-
themePageAnalytic {
|
|
57
|
-
...AnalyticSelect
|
|
58
|
-
}
|
|
59
|
-
themePageCustomCode {
|
|
60
|
-
...CustomCodeSelect
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
`;
|
|
64
37
|
|
|
65
|
-
exports.PreviewThemePageSelect = PreviewThemePageSelect;
|
|
66
38
|
exports.PublishedThemePageSelect = PublishedThemePageSelect;
|
|
@@ -1,25 +1,19 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var publishedPageSection_generated = require('../fragments/published-page-section.generated.js');
|
|
5
|
-
var publishedCustomSection_generated = require('../fragments/published-custom-section.generated.js');
|
|
3
|
+
var previewThemePage_generated = require('../fragments/preview-theme-page.generated.js');
|
|
6
4
|
var dataSeo_generated = require('../fragments/data-seo.generated.js');
|
|
7
|
-
var publishedThemeStyle_generated = require('../fragments/published-theme-style.generated.js');
|
|
8
5
|
var analytic_generated = require('../fragments/analytic.generated.js');
|
|
9
6
|
var customCode_generated = require('../fragments/custom-code.generated.js');
|
|
10
7
|
|
|
11
|
-
const
|
|
12
|
-
query
|
|
13
|
-
|
|
8
|
+
const PreviewThemePageDocument = `
|
|
9
|
+
query PreviewThemePage($pageType: PreviewThemePageType!, $handleURL: String) {
|
|
10
|
+
previewThemePage(pageType: $pageType, handleURL: $handleURL) {
|
|
14
11
|
...PreviewThemePageSelect
|
|
15
12
|
}
|
|
16
13
|
}
|
|
17
|
-
${
|
|
18
|
-
${publishedPageSection_generated.PublishedPageSectionSelect}
|
|
19
|
-
${publishedCustomSection_generated.PublishedCustomSectionSelect}
|
|
14
|
+
${previewThemePage_generated.PreviewThemePageSelect}
|
|
20
15
|
${dataSeo_generated.DataSeoSelect}
|
|
21
|
-
${publishedThemeStyle_generated.PublishedThemeStyleSelect}
|
|
22
16
|
${analytic_generated.AnalyticSelect}
|
|
23
17
|
${customCode_generated.CustomCodeSelect}`;
|
|
24
18
|
|
|
25
|
-
exports.
|
|
19
|
+
exports.PreviewThemePageDocument = PreviewThemePageDocument;
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
var react = require('react');
|
|
4
4
|
require('react/jsx-runtime');
|
|
5
5
|
require('zustand');
|
|
6
|
-
require('swr');
|
|
7
6
|
var PageContext = require('../../contexts/PageContext.js');
|
|
7
|
+
require('swr');
|
|
8
8
|
require('@gem-sdk/adapter-shopify');
|
|
9
9
|
require('swr/mutation');
|
|
10
10
|
require('swr/infinite');
|
|
@@ -6,7 +6,15 @@ var getAppBlockType = require('./getAppBlockType.js');
|
|
|
6
6
|
const listAppUpdateNewVersion = [
|
|
7
7
|
'Growave'
|
|
8
8
|
];
|
|
9
|
+
const listThirdPartyRejectAppBlock = {
|
|
10
|
+
YotpoReviews: {
|
|
11
|
+
conditionToReject: 'settings?.version === "v1"'
|
|
12
|
+
}
|
|
13
|
+
};
|
|
9
14
|
const getAppBlockConfig = (tag, appBlockId, settings)=>{
|
|
15
|
+
if (listThirdPartyRejectAppBlock[tag] && eval(listThirdPartyRejectAppBlock[tag].conditionToReject)) {
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
10
18
|
let widgetType = settings?.widgetType;
|
|
11
19
|
if (listAppUpdateNewVersion.includes(tag)) {
|
|
12
20
|
widgetType = settings?.widgetTypeV2;
|
|
@@ -4,8 +4,8 @@ var react = require('react');
|
|
|
4
4
|
var ProductContext = require('../contexts/ProductContext.js');
|
|
5
5
|
require('react/jsx-runtime');
|
|
6
6
|
require('zustand');
|
|
7
|
-
require('swr');
|
|
8
7
|
var PageContext = require('../contexts/PageContext.js');
|
|
8
|
+
require('swr');
|
|
9
9
|
require('@gem-sdk/adapter-shopify');
|
|
10
10
|
require('swr/mutation');
|
|
11
11
|
require('swr/infinite');
|
|
@@ -35,6 +35,14 @@ const useProductProperties = ()=>{
|
|
|
35
35
|
const useIsSyncProduct = ()=>{
|
|
36
36
|
return ProductContext.useProductStore((s)=>s.isSyncProduct);
|
|
37
37
|
};
|
|
38
|
+
const useProductBundleDiscount = ()=>{
|
|
39
|
+
const useProductCompareAtPrice = ProductContext.useProductStore((s)=>s.useProductCompareAtPrice);
|
|
40
|
+
const seUseProductCompareAtPrice = ProductContext.useProductStore((s)=>s.setUseProductCompareAtPrice);
|
|
41
|
+
return {
|
|
42
|
+
useProductCompareAtPrice,
|
|
43
|
+
seUseProductCompareAtPrice
|
|
44
|
+
};
|
|
45
|
+
};
|
|
38
46
|
const useQuantity = ()=>{
|
|
39
47
|
const quantity = ProductContext.useProductStore((s)=>s.quantity);
|
|
40
48
|
const hasUpdatePrice = ProductContext.useProductStore((s)=>s.updatePrice);
|
|
@@ -226,6 +234,7 @@ exports.useFeaturedImageGlobal = useFeaturedImageGlobal;
|
|
|
226
234
|
exports.useHasPreSelected = useHasPreSelected;
|
|
227
235
|
exports.useIsSyncProduct = useIsSyncProduct;
|
|
228
236
|
exports.useProduct = useProduct;
|
|
237
|
+
exports.useProductBundleDiscount = useProductBundleDiscount;
|
|
229
238
|
exports.useProductOfferDiscount = useProductOfferDiscount;
|
|
230
239
|
exports.useProductProperties = useProductProperties;
|
|
231
240
|
exports.useQuantity = useQuantity;
|
package/dist/cjs/index.js
CHANGED
|
@@ -71,6 +71,7 @@ var render = require('./helpers/render.js');
|
|
|
71
71
|
var shadow = require('./helpers/shadow.js');
|
|
72
72
|
var size = require('./helpers/size.js');
|
|
73
73
|
var typography = require('./helpers/typography.js');
|
|
74
|
+
var useArticlesQuery = require('./hooks/articles/useArticlesQuery.js');
|
|
74
75
|
var useAddToCart = require('./hooks/cart/use-add-to-cart.js');
|
|
75
76
|
var useCartData = require('./hooks/cart/use-cart-data.js');
|
|
76
77
|
var useCartDiscountCodesUpdate = require('./hooks/cart/use-cart-discount-codes-update.js');
|
|
@@ -84,23 +85,22 @@ var useCollectionsQuery = require('./hooks/shop/use-collections-query.js');
|
|
|
84
85
|
var useProductQuery = require('./hooks/shop/use-product-query.js');
|
|
85
86
|
var useProductsQuery = require('./hooks/shop/use-products-query.js');
|
|
86
87
|
var useCurrentDevice = require('./hooks/use-current-device.js');
|
|
87
|
-
var useFormatMoney = require('./hooks/useFormatMoney.js');
|
|
88
88
|
var useLazyVideo = require('./hooks/use-lazy-video.js');
|
|
89
89
|
var useCartId = require('./hooks/useCartId.js');
|
|
90
90
|
var useCartLine = require('./hooks/useCartLine.js');
|
|
91
91
|
var useCartUI = require('./hooks/useCartUI.js');
|
|
92
92
|
var useCollection = require('./hooks/useCollection.js');
|
|
93
|
+
var useFormatMoney = require('./hooks/useFormatMoney.js');
|
|
93
94
|
var react = require('react');
|
|
95
|
+
var useInitialSwatchesOptions = require('./hooks/useInitialSwatchesOptions.js');
|
|
94
96
|
var useIsomorphicLayoutEffect = require('./hooks/useIsomorphicLayoutEffect.js');
|
|
95
97
|
var useLoadScript = require('./hooks/useLoadScript.js');
|
|
96
98
|
var useMoney = require('./hooks/useMoney.js');
|
|
97
99
|
var usePrevious = require('./hooks/usePrevious.js');
|
|
98
|
-
var useArticlesQuery = require('./hooks/articles/useArticlesQuery.js');
|
|
99
100
|
var useProduct = require('./hooks/useProduct.js');
|
|
100
101
|
var useProductList = require('./hooks/useProductList.js');
|
|
101
102
|
var useSuspenseFetch = require('./hooks/useSuspenseFetch.js');
|
|
102
103
|
var useSwatchesOptions = require('./hooks/useSwatchesOptions.js');
|
|
103
|
-
var useInitialSwatchesOptions = require('./hooks/useInitialSwatchesOptions.js');
|
|
104
104
|
var custom = require('./types/custom.js');
|
|
105
105
|
var shop$1 = require('./types/shop.js');
|
|
106
106
|
var appAPI = require('./types/appAPI.js');
|
|
@@ -159,7 +159,7 @@ exports.CollectionsDocument = collections_generated.CollectionsDocument;
|
|
|
159
159
|
exports.PublishedThemePagesDocument = publishedThemePages_generated.PublishedThemePagesDocument;
|
|
160
160
|
exports.ProductsDocument = products_generated.ProductsDocument;
|
|
161
161
|
exports.StorePropertyDocument = storeProperty_generated.StorePropertyDocument;
|
|
162
|
-
exports.
|
|
162
|
+
exports.PreviewThemePageDocument = previewPage_generated.PreviewThemePageDocument;
|
|
163
163
|
exports.LibraryTemplateDocument = LibraryTemplate_generated.LibraryTemplateDocument;
|
|
164
164
|
exports.ThemePageDocument = ThemePage_generated.ThemePageDocument;
|
|
165
165
|
exports.SaleFunnelDiscountsDocument = SaleFunnelDiscounts_generated.SaleFunnelDiscountsDocument;
|
|
@@ -302,6 +302,8 @@ exports.composeTypographyStyle = typography.composeTypographyStyle;
|
|
|
302
302
|
exports.composeTypographyV2 = typography.composeTypographyV2;
|
|
303
303
|
exports.composeTypographyV2Css = typography.composeTypographyV2Css;
|
|
304
304
|
exports.genTypoClass = typography.genTypoClass;
|
|
305
|
+
exports.useArticlesQuery = useArticlesQuery.useArticlesQuery;
|
|
306
|
+
exports.useBlogsQuery = useArticlesQuery.useBlogsQuery;
|
|
305
307
|
exports.useAddToCart = useAddToCart.useAddToCart;
|
|
306
308
|
exports.useCartData = useCartData.useCartData;
|
|
307
309
|
exports.useCartDiscountCodesUpdate = useCartDiscountCodesUpdate.useCartDiscountCodesUpdate;
|
|
@@ -329,24 +331,23 @@ exports.useProductQuery = useProductQuery.useProductQuery;
|
|
|
329
331
|
exports.useProductsQuery = useProductsQuery.useProductsQuery;
|
|
330
332
|
exports.useProductsQueryAll = useProductsQuery.useProductsQueryAll;
|
|
331
333
|
exports.useCurrentDevice = useCurrentDevice.useCurrentDevice;
|
|
332
|
-
exports.formatMoney = useFormatMoney.formatMoney;
|
|
333
|
-
exports.shopifyPriceRounding = useFormatMoney.shopifyPriceRounding;
|
|
334
|
-
exports.useFormatMoney = useFormatMoney.useFormatMoney;
|
|
335
334
|
exports.useLazyVideo = useLazyVideo.useLazyVideo;
|
|
336
335
|
exports.useCartId = useCartId.default;
|
|
337
336
|
exports.useCartLine = useCartLine.default;
|
|
338
337
|
exports.useCartUI = useCartUI.default;
|
|
339
338
|
exports.useCollection = useCollection.useCollection;
|
|
339
|
+
exports.formatMoney = useFormatMoney.formatMoney;
|
|
340
|
+
exports.shopifyPriceRounding = useFormatMoney.shopifyPriceRounding;
|
|
341
|
+
exports.useFormatMoney = useFormatMoney.useFormatMoney;
|
|
340
342
|
Object.defineProperty(exports, 'useId', {
|
|
341
343
|
enumerable: true,
|
|
342
344
|
get: function () { return react.useId; }
|
|
343
345
|
});
|
|
346
|
+
exports.useInitialSwatchesOptions = useInitialSwatchesOptions.default;
|
|
344
347
|
exports.useIsomorphicLayoutEffect = useIsomorphicLayoutEffect.default;
|
|
345
348
|
exports.useLoadScript = useLoadScript.default;
|
|
346
349
|
exports.useMoney = useMoney.default;
|
|
347
350
|
exports.usePrevious = usePrevious.usePrevious;
|
|
348
|
-
exports.useArticlesQuery = useArticlesQuery.useArticlesQuery;
|
|
349
|
-
exports.useBlogsQuery = useArticlesQuery.useBlogsQuery;
|
|
350
351
|
exports.useCheckAvailableVariantInStock = useProduct.useCheckAvailableVariantInStock;
|
|
351
352
|
exports.useCurrentVariant = useProduct.useCurrentVariant;
|
|
352
353
|
exports.useCurrentVariantInStock = useProduct.useCurrentVariantInStock;
|
|
@@ -354,6 +355,7 @@ exports.useFeaturedImageGlobal = useProduct.useFeaturedImageGlobal;
|
|
|
354
355
|
exports.useHasPreSelected = useProduct.useHasPreSelected;
|
|
355
356
|
exports.useIsSyncProduct = useProduct.useIsSyncProduct;
|
|
356
357
|
exports.useProduct = useProduct.useProduct;
|
|
358
|
+
exports.useProductBundleDiscount = useProduct.useProductBundleDiscount;
|
|
357
359
|
exports.useProductOfferDiscount = useProduct.useProductOfferDiscount;
|
|
358
360
|
exports.useProductProperties = useProduct.useProductProperties;
|
|
359
361
|
exports.useQuantity = useProduct.useQuantity;
|
|
@@ -368,7 +370,6 @@ exports.useProductListSettings = useProductList.useProductListSettings;
|
|
|
368
370
|
exports.useProductListStyles = useProductList.useProductListStyles;
|
|
369
371
|
exports.useSuspenseFetch = useSuspenseFetch.default;
|
|
370
372
|
exports.useSwatchesOptions = useSwatchesOptions.default;
|
|
371
|
-
exports.useInitialSwatchesOptions = useInitialSwatchesOptions.default;
|
|
372
373
|
Object.defineProperty(exports, 'InteractionTargetEvent', {
|
|
373
374
|
enumerable: true,
|
|
374
375
|
get: function () { return custom.InteractionTargetEvent; }
|
|
@@ -2,10 +2,10 @@ import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
|
2
2
|
import { memo, useState, useMemo, useCallback, useEffect } from 'react';
|
|
3
3
|
import 'zustand';
|
|
4
4
|
import { useBuilderPreviewStore } from '../contexts/BuilderPreviewContext.js';
|
|
5
|
-
import { useShopStore } from '../contexts/ShopContext.js';
|
|
6
5
|
import { usePageStore } from '../contexts/PageContext.js';
|
|
7
|
-
import '
|
|
6
|
+
import { useShopStore } from '../contexts/ShopContext.js';
|
|
8
7
|
import 'swr';
|
|
8
|
+
import '@gem-sdk/adapter-shopify';
|
|
9
9
|
import 'swr/mutation';
|
|
10
10
|
import 'swr/infinite';
|
|
11
11
|
import 'vanilla-lazyload';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsx, Fragment } from 'react/jsx-runtime';
|
|
2
2
|
import 'zustand';
|
|
3
3
|
import 'react';
|
|
4
|
-
import 'swr';
|
|
5
4
|
import { usePageStore } from '../contexts/PageContext.js';
|
|
5
|
+
import 'swr';
|
|
6
6
|
import '@gem-sdk/adapter-shopify';
|
|
7
7
|
import 'swr/mutation';
|
|
8
8
|
import 'swr/infinite';
|
|
@@ -14,8 +14,8 @@ import { useFlipPopup } from './hooks/useFlipPopup.js';
|
|
|
14
14
|
import { useCheckingProductInside } from './hooks/useCheckingProductInside.js';
|
|
15
15
|
import 'zustand';
|
|
16
16
|
import { useShopStore } from '../../contexts/ShopContext.js';
|
|
17
|
-
import '@gem-sdk/adapter-shopify';
|
|
18
17
|
import 'swr';
|
|
18
|
+
import '@gem-sdk/adapter-shopify';
|
|
19
19
|
import 'swr/mutation';
|
|
20
20
|
import 'swr/infinite';
|
|
21
21
|
import 'vanilla-lazyload';
|
|
@@ -3,8 +3,8 @@ import { useRef, useState } from 'react';
|
|
|
3
3
|
import { ThemeSectionTooltip } from './ThemeSectionTooltip.js';
|
|
4
4
|
import 'zustand';
|
|
5
5
|
import { useShopStore } from '../../contexts/ShopContext.js';
|
|
6
|
-
import '@gem-sdk/adapter-shopify';
|
|
7
6
|
import 'swr';
|
|
7
|
+
import '@gem-sdk/adapter-shopify';
|
|
8
8
|
import 'swr/mutation';
|
|
9
9
|
import 'swr/infinite';
|
|
10
10
|
import 'vanilla-lazyload';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx, Fragment } from 'react/jsx-runtime';
|
|
2
|
-
import { useStore, createStore } from 'zustand';
|
|
3
2
|
import { useId, useMemo, useContext, createContext } from 'react';
|
|
3
|
+
import { useStore, createStore } from 'zustand';
|
|
4
4
|
import { flattenConnection } from '../helpers/flatten-connection.js';
|
|
5
5
|
import { checkInStock } from '../helpers/variant.js';
|
|
6
6
|
|
|
@@ -23,6 +23,21 @@ const createProductStoreProvider = (data)=>createStore((set, get)=>({
|
|
|
23
23
|
};
|
|
24
24
|
});
|
|
25
25
|
},
|
|
26
|
+
setUseProductCompareAtPrice: (value)=>{
|
|
27
|
+
set({
|
|
28
|
+
useProductCompareAtPrice: value
|
|
29
|
+
});
|
|
30
|
+
},
|
|
31
|
+
setShouldRequireUploadMessage: (value)=>{
|
|
32
|
+
set({
|
|
33
|
+
shouldRequireUploadMessage: value
|
|
34
|
+
});
|
|
35
|
+
},
|
|
36
|
+
setRequireUpload: (value)=>{
|
|
37
|
+
set({
|
|
38
|
+
requireUpload: value
|
|
39
|
+
});
|
|
40
|
+
},
|
|
26
41
|
addProperty: (data)=>{
|
|
27
42
|
const properties = get().properties;
|
|
28
43
|
if (!properties?.some((v)=>v.key === data.key)) {
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/* eslint-disable */ const PreviewThemePageSelect = `
|
|
2
|
+
fragment PreviewThemePageSelect on PreviewThemePage {
|
|
3
|
+
id
|
|
4
|
+
name
|
|
5
|
+
handle
|
|
6
|
+
isMobile
|
|
7
|
+
sectionPosition
|
|
8
|
+
pageSections {
|
|
9
|
+
cid
|
|
10
|
+
component
|
|
11
|
+
id
|
|
12
|
+
}
|
|
13
|
+
dataSEO {
|
|
14
|
+
...DataSEOSelect
|
|
15
|
+
}
|
|
16
|
+
themeStyle {
|
|
17
|
+
id
|
|
18
|
+
data
|
|
19
|
+
name
|
|
20
|
+
}
|
|
21
|
+
analytic {
|
|
22
|
+
...AnalyticSelect
|
|
23
|
+
}
|
|
24
|
+
customCode {
|
|
25
|
+
...CustomCodeSelect
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
`;
|
|
29
|
+
|
|
30
|
+
export { PreviewThemePageSelect };
|
|
@@ -32,32 +32,5 @@
|
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
34
|
`;
|
|
35
|
-
const PreviewThemePageSelect = `
|
|
36
|
-
fragment PreviewThemePageSelect on PublishedThemePage {
|
|
37
|
-
id
|
|
38
|
-
name
|
|
39
|
-
handle
|
|
40
|
-
isMobile
|
|
41
|
-
sectionPosition
|
|
42
|
-
pageSections {
|
|
43
|
-
...PublishedPageSectionSelect
|
|
44
|
-
}
|
|
45
|
-
themePageCustomSections {
|
|
46
|
-
...PublishedCustomSectionSelect
|
|
47
|
-
}
|
|
48
|
-
themePageDataSEO {
|
|
49
|
-
...DataSEOSelect
|
|
50
|
-
}
|
|
51
|
-
pageStyle {
|
|
52
|
-
...PublishedThemeStyleSelect
|
|
53
|
-
}
|
|
54
|
-
themePageAnalytic {
|
|
55
|
-
...AnalyticSelect
|
|
56
|
-
}
|
|
57
|
-
themePageCustomCode {
|
|
58
|
-
...CustomCodeSelect
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
`;
|
|
62
35
|
|
|
63
|
-
export {
|
|
36
|
+
export { PublishedThemePageSelect };
|
|
@@ -1,23 +1,17 @@
|
|
|
1
|
-
import { PreviewThemePageSelect } from '../fragments/
|
|
2
|
-
import { PublishedPageSectionSelect } from '../fragments/published-page-section.generated.js';
|
|
3
|
-
import { PublishedCustomSectionSelect } from '../fragments/published-custom-section.generated.js';
|
|
1
|
+
import { PreviewThemePageSelect } from '../fragments/preview-theme-page.generated.js';
|
|
4
2
|
import { DataSeoSelect } from '../fragments/data-seo.generated.js';
|
|
5
|
-
import { PublishedThemeStyleSelect } from '../fragments/published-theme-style.generated.js';
|
|
6
3
|
import { AnalyticSelect } from '../fragments/analytic.generated.js';
|
|
7
4
|
import { CustomCodeSelect } from '../fragments/custom-code.generated.js';
|
|
8
5
|
|
|
9
|
-
const
|
|
10
|
-
query
|
|
11
|
-
|
|
6
|
+
const PreviewThemePageDocument = `
|
|
7
|
+
query PreviewThemePage($pageType: PreviewThemePageType!, $handleURL: String) {
|
|
8
|
+
previewThemePage(pageType: $pageType, handleURL: $handleURL) {
|
|
12
9
|
...PreviewThemePageSelect
|
|
13
10
|
}
|
|
14
11
|
}
|
|
15
12
|
${PreviewThemePageSelect}
|
|
16
|
-
${PublishedPageSectionSelect}
|
|
17
|
-
${PublishedCustomSectionSelect}
|
|
18
13
|
${DataSeoSelect}
|
|
19
|
-
${PublishedThemeStyleSelect}
|
|
20
14
|
${AnalyticSelect}
|
|
21
15
|
${CustomCodeSelect}`;
|
|
22
16
|
|
|
23
|
-
export {
|
|
17
|
+
export { PreviewThemePageDocument };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { useRef, useMemo, useCallback } from 'react';
|
|
2
2
|
import 'react/jsx-runtime';
|
|
3
3
|
import 'zustand';
|
|
4
|
-
import 'swr';
|
|
5
4
|
import { usePageStore } from '../../contexts/PageContext.js';
|
|
5
|
+
import 'swr';
|
|
6
6
|
import '@gem-sdk/adapter-shopify';
|
|
7
7
|
import 'swr/mutation';
|
|
8
8
|
import 'swr/infinite';
|
|
@@ -4,7 +4,15 @@ import { getAppBlockType } from './getAppBlockType.js';
|
|
|
4
4
|
const listAppUpdateNewVersion = [
|
|
5
5
|
'Growave'
|
|
6
6
|
];
|
|
7
|
+
const listThirdPartyRejectAppBlock = {
|
|
8
|
+
YotpoReviews: {
|
|
9
|
+
conditionToReject: 'settings?.version === "v1"'
|
|
10
|
+
}
|
|
11
|
+
};
|
|
7
12
|
const getAppBlockConfig = (tag, appBlockId, settings)=>{
|
|
13
|
+
if (listThirdPartyRejectAppBlock[tag] && eval(listThirdPartyRejectAppBlock[tag].conditionToReject)) {
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
8
16
|
let widgetType = settings?.widgetType;
|
|
9
17
|
if (listAppUpdateNewVersion.includes(tag)) {
|
|
10
18
|
widgetType = settings?.widgetTypeV2;
|
|
@@ -2,8 +2,8 @@ import { useCallback, useEffect, useMemo } from 'react';
|
|
|
2
2
|
import { useProductStore } from '../contexts/ProductContext.js';
|
|
3
3
|
import 'react/jsx-runtime';
|
|
4
4
|
import 'zustand';
|
|
5
|
-
import 'swr';
|
|
6
5
|
import { usePageStore } from '../contexts/PageContext.js';
|
|
6
|
+
import 'swr';
|
|
7
7
|
import '@gem-sdk/adapter-shopify';
|
|
8
8
|
import 'swr/mutation';
|
|
9
9
|
import 'swr/infinite';
|
|
@@ -33,6 +33,14 @@ const useProductProperties = ()=>{
|
|
|
33
33
|
const useIsSyncProduct = ()=>{
|
|
34
34
|
return useProductStore((s)=>s.isSyncProduct);
|
|
35
35
|
};
|
|
36
|
+
const useProductBundleDiscount = ()=>{
|
|
37
|
+
const useProductCompareAtPrice = useProductStore((s)=>s.useProductCompareAtPrice);
|
|
38
|
+
const seUseProductCompareAtPrice = useProductStore((s)=>s.setUseProductCompareAtPrice);
|
|
39
|
+
return {
|
|
40
|
+
useProductCompareAtPrice,
|
|
41
|
+
seUseProductCompareAtPrice
|
|
42
|
+
};
|
|
43
|
+
};
|
|
36
44
|
const useQuantity = ()=>{
|
|
37
45
|
const quantity = useProductStore((s)=>s.quantity);
|
|
38
46
|
const hasUpdatePrice = useProductStore((s)=>s.updatePrice);
|
|
@@ -217,4 +225,4 @@ const useProductOfferDiscount = ()=>{
|
|
|
217
225
|
return currentDiscount || 0;
|
|
218
226
|
};
|
|
219
227
|
|
|
220
|
-
export { useCheckAvailableVariantInStock, useCurrentVariant, useCurrentVariantInStock, useFeaturedImageGlobal, useHasPreSelected, useIsSyncProduct, useProduct, useProductOfferDiscount, useProductProperties, useQuantity, useSelectedOption, useUniqProductID, useVariant, useVariantOutStock, useVariants };
|
|
228
|
+
export { useCheckAvailableVariantInStock, useCurrentVariant, useCurrentVariantInStock, useFeaturedImageGlobal, useHasPreSelected, useIsSyncProduct, useProduct, useProductBundleDiscount, useProductOfferDiscount, useProductProperties, useQuantity, useSelectedOption, useUniqProductID, useVariant, useVariantOutStock, useVariants };
|
package/dist/esm/index.js
CHANGED
|
@@ -24,7 +24,7 @@ export { CollectionsDocument } from './graphql/queries/collections.generated.js'
|
|
|
24
24
|
export { PublishedThemePagesDocument } from './graphql/queries/published-theme-pages.generated.js';
|
|
25
25
|
export { ProductsDocument } from './graphql/queries/products.generated.js';
|
|
26
26
|
export { StorePropertyDocument } from './graphql/queries/store-property.generated.js';
|
|
27
|
-
export {
|
|
27
|
+
export { PreviewThemePageDocument } from './graphql/queries/preview-page.generated.js';
|
|
28
28
|
export { LibraryTemplateDocument } from './graphql-app-api/queries/LibraryTemplate.generated.js';
|
|
29
29
|
export { ThemePageDocument } from './graphql-app-api/queries/ThemePage.generated.js';
|
|
30
30
|
export { SaleFunnelDiscountsDocument } from './graphql-app-api/queries/SaleFunnelDiscounts.generated.js';
|
|
@@ -72,6 +72,7 @@ export { RenderIf, composeMemo, dataStringify, props, removeUndefinedValuesFromO
|
|
|
72
72
|
export { composeShadowCss, getResponsiveStyleShadow, getStyleShadow, getStyleShadowState, parseValueWithUnit } from './helpers/shadow.js';
|
|
73
73
|
export { composeSize, composeSizeCss, genSizeClass, getAspectRatioGlobalSize, getGlobalSizeGap, getHeightByShapeGlobalSize, getPaddingGlobalSize, getValueByDevice, getWidthByShapeGlobalSize, getWidthHeightGlobalSize, makeGlobalSize, makeGlobalSizeIcon, makeStyleWithDefault } from './helpers/size.js';
|
|
74
74
|
export { composeFallbackTypographyStyle, composeFontFamilyTypographyV2, composeTypography, composeTypographyAttr, composeTypographyClassName, composeTypographyCss, composeTypographyStyle, composeTypographyV2, composeTypographyV2Css, genTypoClass } from './helpers/typography.js';
|
|
75
|
+
export { useArticlesQuery, useBlogsQuery } from './hooks/articles/useArticlesQuery.js';
|
|
75
76
|
export { useAddToCart } from './hooks/cart/use-add-to-cart.js';
|
|
76
77
|
export { useCartData } from './hooks/cart/use-cart-data.js';
|
|
77
78
|
export { useCartDiscountCodesUpdate } from './hooks/cart/use-cart-discount-codes-update.js';
|
|
@@ -85,23 +86,22 @@ export { useCollectionsQuery } from './hooks/shop/use-collections-query.js';
|
|
|
85
86
|
export { useProductQuery } from './hooks/shop/use-product-query.js';
|
|
86
87
|
export { useProductsQuery, useProductsQueryAll } from './hooks/shop/use-products-query.js';
|
|
87
88
|
export { useCurrentDevice } from './hooks/use-current-device.js';
|
|
88
|
-
export { formatMoney, shopifyPriceRounding, useFormatMoney } from './hooks/useFormatMoney.js';
|
|
89
89
|
export { useLazyVideo } from './hooks/use-lazy-video.js';
|
|
90
90
|
export { default as useCartId } from './hooks/useCartId.js';
|
|
91
91
|
export { default as useCartLine } from './hooks/useCartLine.js';
|
|
92
92
|
export { default as useCartUI } from './hooks/useCartUI.js';
|
|
93
93
|
export { useCollection } from './hooks/useCollection.js';
|
|
94
|
+
export { formatMoney, shopifyPriceRounding, useFormatMoney } from './hooks/useFormatMoney.js';
|
|
94
95
|
export { useId } from 'react';
|
|
96
|
+
export { default as useInitialSwatchesOptions } from './hooks/useInitialSwatchesOptions.js';
|
|
95
97
|
export { default as useIsomorphicLayoutEffect } from './hooks/useIsomorphicLayoutEffect.js';
|
|
96
98
|
export { default as useLoadScript } from './hooks/useLoadScript.js';
|
|
97
99
|
export { default as useMoney } from './hooks/useMoney.js';
|
|
98
100
|
export { usePrevious } from './hooks/usePrevious.js';
|
|
99
|
-
export {
|
|
100
|
-
export { useCheckAvailableVariantInStock, useCurrentVariant, useCurrentVariantInStock, useFeaturedImageGlobal, useHasPreSelected, useIsSyncProduct, useProduct, useProductOfferDiscount, useProductProperties, useQuantity, useSelectedOption, useUniqProductID, useVariant, useVariantOutStock, useVariants } from './hooks/useProduct.js';
|
|
101
|
+
export { useCheckAvailableVariantInStock, useCurrentVariant, useCurrentVariantInStock, useFeaturedImageGlobal, useHasPreSelected, useIsSyncProduct, useProduct, useProductBundleDiscount, useProductOfferDiscount, useProductProperties, useQuantity, useSelectedOption, useUniqProductID, useVariant, useVariantOutStock, useVariants } from './hooks/useProduct.js';
|
|
101
102
|
export { useProductList, useProductListProducts, useProductListSettings, useProductListStyles } from './hooks/useProductList.js';
|
|
102
103
|
export { default as useSuspenseFetch } from './hooks/useSuspenseFetch.js';
|
|
103
104
|
export { default as useSwatchesOptions } from './hooks/useSwatchesOptions.js';
|
|
104
|
-
export { default as useInitialSwatchesOptions } from './hooks/useInitialSwatchesOptions.js';
|
|
105
105
|
export { InteractionTargetEvent, InteractionTriggerEvent } from './types/custom.js';
|
|
106
106
|
import * as shop from './types/shop.js';
|
|
107
107
|
export { shop as ShopType };
|