@growupsell/react-ecommerce-core 2.0.14 → 2.0.16
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/{chunk-E66B7ABK.js → chunk-ID4JKOXT.js} +42 -15
- package/dist/chunk-ID4JKOXT.js.map +1 -0
- package/dist/index.cjs +40 -13
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +4 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.js +1 -1
- package/dist/provider.cjs +40 -13
- package/dist/provider.cjs.map +1 -1
- package/dist/provider.js +1 -1
- package/package.json +2 -2
- package/dist/chunk-E66B7ABK.js.map +0 -1
package/dist/index.d.cts
CHANGED
|
@@ -386,6 +386,8 @@ declare const HomeConfigHeroSliderContext: React__default.Context<{
|
|
|
386
386
|
}>;
|
|
387
387
|
declare const HomeConfigHeroSliderProvider: (props: {
|
|
388
388
|
children: React__default.ReactNode;
|
|
389
|
+
/** Server-fetched theme content for SSR / first paint (crawlers). */
|
|
390
|
+
initialThemeContent?: any;
|
|
389
391
|
}) => react_jsx_runtime.JSX.Element;
|
|
390
392
|
declare const useHomeConfigHeroSlider: () => {
|
|
391
393
|
loading: boolean;
|
|
@@ -403,6 +405,8 @@ declare const HeaderFooterContext: React__default.Context<{
|
|
|
403
405
|
declare const HeaderFooterProvider: (props: {
|
|
404
406
|
page: string;
|
|
405
407
|
children: React__default.ReactNode;
|
|
408
|
+
/** Server-fetched theme content for SSR / first paint (crawlers). */
|
|
409
|
+
initialThemeContent?: any;
|
|
406
410
|
}) => react_jsx_runtime.JSX.Element;
|
|
407
411
|
declare const useHeaderFooter: () => {
|
|
408
412
|
headerConfig: any;
|
package/dist/index.d.ts
CHANGED
|
@@ -386,6 +386,8 @@ declare const HomeConfigHeroSliderContext: React__default.Context<{
|
|
|
386
386
|
}>;
|
|
387
387
|
declare const HomeConfigHeroSliderProvider: (props: {
|
|
388
388
|
children: React__default.ReactNode;
|
|
389
|
+
/** Server-fetched theme content for SSR / first paint (crawlers). */
|
|
390
|
+
initialThemeContent?: any;
|
|
389
391
|
}) => react_jsx_runtime.JSX.Element;
|
|
390
392
|
declare const useHomeConfigHeroSlider: () => {
|
|
391
393
|
loading: boolean;
|
|
@@ -403,6 +405,8 @@ declare const HeaderFooterContext: React__default.Context<{
|
|
|
403
405
|
declare const HeaderFooterProvider: (props: {
|
|
404
406
|
page: string;
|
|
405
407
|
children: React__default.ReactNode;
|
|
408
|
+
/** Server-fetched theme content for SSR / first paint (crawlers). */
|
|
409
|
+
initialThemeContent?: any;
|
|
406
410
|
}) => react_jsx_runtime.JSX.Element;
|
|
407
411
|
declare const useHeaderFooter: () => {
|
|
408
412
|
headerConfig: any;
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { AuthContext, AuthProvider, BaseProvider, BusinessConfigProvider, BusinessMediaContext, BusinessMediaProvider, CartContext, CartProvider, CartWishlistRefreshContext, CartWishlistRefreshProvider, CustomPageConfigContext, CustomPageConfigProvider, CustomerConfigContext, CustomerConfigProvider, FilterContext, FilterProvider, HeaderFooterContext, HeaderFooterProvider, HomeConfigContext, HomeConfigHeroSliderContext, HomeConfigHeroSliderProvider, HomeConfigProvider, LiveSupportWidgetProvider, MenuCartContext, MenuCartProvider, MenuFilterContext, MenuFilterProvider, ModalProvider, ProductConfigContext, ProductConfigProvider, ProductDetailContext, ProductDetailProvider, ReferralCodeProvider, StorageContext, StorageProvider, ThemeEditContext, ThemeEditProvider, ToastSupportProvider, WishlistContext, WishlistProvider, useAuth, useBusiness, useBusinessContext, useBusinessMedia, useCart, useCartWishlistRefresh, useCustomPageConfig, useCustomer, useFilter, useHeaderFooter, useHomeConfig, useHomeConfigHeroSlider, useLiveSupportWidget, useMenuCart, useMenuFilter, useModal, useProductConfig, useProductDetail, useReferralCode, useStorage, useThemeEdit, useToastSupport, useWishlist } from './chunk-
|
|
1
|
+
export { AuthContext, AuthProvider, BaseProvider, BusinessConfigProvider, BusinessMediaContext, BusinessMediaProvider, CartContext, CartProvider, CartWishlistRefreshContext, CartWishlistRefreshProvider, CustomPageConfigContext, CustomPageConfigProvider, CustomerConfigContext, CustomerConfigProvider, FilterContext, FilterProvider, HeaderFooterContext, HeaderFooterProvider, HomeConfigContext, HomeConfigHeroSliderContext, HomeConfigHeroSliderProvider, HomeConfigProvider, LiveSupportWidgetProvider, MenuCartContext, MenuCartProvider, MenuFilterContext, MenuFilterProvider, ModalProvider, ProductConfigContext, ProductConfigProvider, ProductDetailContext, ProductDetailProvider, ReferralCodeProvider, StorageContext, StorageProvider, ThemeEditContext, ThemeEditProvider, ToastSupportProvider, WishlistContext, WishlistProvider, useAuth, useBusiness, useBusinessContext, useBusinessMedia, useCart, useCartWishlistRefresh, useCustomPageConfig, useCustomer, useFilter, useHeaderFooter, useHomeConfig, useHomeConfigHeroSlider, useLiveSupportWidget, useMenuCart, useMenuFilter, useModal, useProductConfig, useProductDetail, useReferralCode, useStorage, useThemeEdit, useToastSupport, useWishlist } from './chunk-ID4JKOXT.js';
|
|
2
2
|
export { BusinessConfigContext } from './chunk-SP77KIKJ.js';
|
|
3
3
|
//# sourceMappingURL=index.js.map
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
package/dist/provider.cjs
CHANGED
|
@@ -953,6 +953,8 @@ var HomeConfigProvider = (props) => {
|
|
|
953
953
|
const getThemeConfig = react.useCallback(async () => {
|
|
954
954
|
if (!hasInitial) {
|
|
955
955
|
setLoading(true);
|
|
956
|
+
} else {
|
|
957
|
+
return;
|
|
956
958
|
}
|
|
957
959
|
try {
|
|
958
960
|
const response = await api$1.retrieveThemeContent(
|
|
@@ -969,7 +971,7 @@ var HomeConfigProvider = (props) => {
|
|
|
969
971
|
}
|
|
970
972
|
setIsInitialized(true);
|
|
971
973
|
} catch (error) {
|
|
972
|
-
console.
|
|
974
|
+
console.log("Error fetching theme content:", error);
|
|
973
975
|
} finally {
|
|
974
976
|
setLoading(false);
|
|
975
977
|
}
|
|
@@ -1073,11 +1075,17 @@ var HomeConfigHeroSliderContext = react.createContext({
|
|
|
1073
1075
|
onUpdateHeroSlider: () => null
|
|
1074
1076
|
});
|
|
1075
1077
|
var HomeConfigHeroSliderProvider = (props) => {
|
|
1076
|
-
const
|
|
1077
|
-
const [
|
|
1078
|
+
const hasInitial = Array.isArray(props.initialThemeContent?.data);
|
|
1079
|
+
const [loading, setLoading] = react.useState(!hasInitial);
|
|
1080
|
+
const [heroSliderConfigData, setHeroSliderConfigData] = react.useState(
|
|
1081
|
+
() => hasInitial ? props.initialThemeContent.data : []
|
|
1082
|
+
);
|
|
1078
1083
|
const { token } = useThemeEdit();
|
|
1079
1084
|
const themeConfig = react.useContext(BusinessConfigContext);
|
|
1080
|
-
const getHeroSliderConfig = async () => {
|
|
1085
|
+
const getHeroSliderConfig = react.useCallback(async () => {
|
|
1086
|
+
if (hasInitial) {
|
|
1087
|
+
return;
|
|
1088
|
+
}
|
|
1081
1089
|
setLoading(true);
|
|
1082
1090
|
try {
|
|
1083
1091
|
const response = await api$1.retrieveThemeContent(
|
|
@@ -1085,13 +1093,15 @@ var HomeConfigHeroSliderProvider = (props) => {
|
|
|
1085
1093
|
"hero_slider"
|
|
1086
1094
|
);
|
|
1087
1095
|
setHeroSliderConfigData(response.data);
|
|
1096
|
+
} catch (error) {
|
|
1097
|
+
console.error("Error fetching hero slider content:", error);
|
|
1088
1098
|
} finally {
|
|
1089
1099
|
setLoading(false);
|
|
1090
1100
|
}
|
|
1091
|
-
};
|
|
1101
|
+
}, [themeConfig.theme.id, hasInitial]);
|
|
1092
1102
|
react.useEffect(() => {
|
|
1093
1103
|
getHeroSliderConfig();
|
|
1094
|
-
}, []);
|
|
1104
|
+
}, [getHeroSliderConfig]);
|
|
1095
1105
|
const onUpdateHeroSlider = async (configToUpdate) => {
|
|
1096
1106
|
setLoading(true);
|
|
1097
1107
|
try {
|
|
@@ -1422,13 +1432,24 @@ var HeaderFooterContext = react.createContext({
|
|
|
1422
1432
|
announcementConfig: {}
|
|
1423
1433
|
});
|
|
1424
1434
|
var HeaderFooterProvider = (props) => {
|
|
1425
|
-
const
|
|
1426
|
-
const
|
|
1427
|
-
const [
|
|
1435
|
+
const hasInitial = props.initialThemeContent != null && "data" in props.initialThemeContent;
|
|
1436
|
+
const initialData = hasInitial ? props.initialThemeContent.data ?? {} : {};
|
|
1437
|
+
const [headerConfig, setHeaderConfig] = react.useState(
|
|
1438
|
+
() => props.page === "header" ? initialData : {}
|
|
1439
|
+
);
|
|
1440
|
+
const [footerConfig, setFooterConfig] = react.useState(
|
|
1441
|
+
() => props.page === "footer" ? initialData : {}
|
|
1442
|
+
);
|
|
1443
|
+
const [announcementConfig, setAnnouncementConfig] = react.useState(
|
|
1444
|
+
() => props.page === "announcement" ? initialData : {}
|
|
1445
|
+
);
|
|
1428
1446
|
const { token } = useThemeEdit();
|
|
1429
1447
|
const themeConfig = useBusiness();
|
|
1430
|
-
const [loading, setLoading] = react.useState(
|
|
1448
|
+
const [loading, setLoading] = react.useState(!hasInitial);
|
|
1431
1449
|
const getThemeConfig = react.useCallback(async () => {
|
|
1450
|
+
if (hasInitial) {
|
|
1451
|
+
return;
|
|
1452
|
+
}
|
|
1432
1453
|
setLoading(true);
|
|
1433
1454
|
try {
|
|
1434
1455
|
const response = await api.api.retrieveThemeContent(
|
|
@@ -1443,7 +1464,7 @@ var HeaderFooterProvider = (props) => {
|
|
|
1443
1464
|
} finally {
|
|
1444
1465
|
setLoading(false);
|
|
1445
1466
|
}
|
|
1446
|
-
}, [themeConfig.theme.id]);
|
|
1467
|
+
}, [themeConfig.theme.id, hasInitial, props.page]);
|
|
1447
1468
|
const onUpdateThemeContent = react.useCallback(
|
|
1448
1469
|
async (configToUpdate) => {
|
|
1449
1470
|
try {
|
|
@@ -1471,7 +1492,7 @@ var HeaderFooterProvider = (props) => {
|
|
|
1471
1492
|
setLoading(false);
|
|
1472
1493
|
}
|
|
1473
1494
|
},
|
|
1474
|
-
[props.page]
|
|
1495
|
+
[props.page, themeConfig.theme.id, token]
|
|
1475
1496
|
);
|
|
1476
1497
|
react.useEffect(() => {
|
|
1477
1498
|
getThemeConfig();
|
|
@@ -1479,7 +1500,13 @@ var HeaderFooterProvider = (props) => {
|
|
|
1479
1500
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1480
1501
|
HeaderFooterContext.Provider,
|
|
1481
1502
|
{
|
|
1482
|
-
value: {
|
|
1503
|
+
value: {
|
|
1504
|
+
headerConfig,
|
|
1505
|
+
footerConfig,
|
|
1506
|
+
onUpdateThemeContent,
|
|
1507
|
+
loading,
|
|
1508
|
+
announcementConfig
|
|
1509
|
+
},
|
|
1483
1510
|
children: loading ? null : props.children
|
|
1484
1511
|
}
|
|
1485
1512
|
);
|