@growupsell/react-ecommerce-core 1.0.3 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -4
- package/dist/business-config-context.cjs +14 -0
- package/dist/business-config-context.cjs.map +1 -0
- package/dist/business-config-context.d.cts +10 -0
- package/dist/business-config-context.d.ts +10 -0
- package/dist/business-config-context.js +3 -0
- package/dist/business-config-context.js.map +1 -0
- package/dist/chunk-SP77KIKJ.js +12 -0
- package/dist/chunk-SP77KIKJ.js.map +1 -0
- package/dist/{chunk-3O7WAXNM.js → chunk-XL2AT5BD.js} +33 -120
- package/dist/chunk-XL2AT5BD.js.map +1 -0
- package/dist/index.cjs +30 -143
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +513 -12
- package/dist/index.d.ts +513 -12
- package/dist/index.js +2 -2
- package/dist/provider.cjs +30 -142
- package/dist/provider.cjs.map +1 -1
- package/dist/provider.d.cts +4 -503
- package/dist/provider.d.ts +4 -503
- package/dist/provider.js +2 -2
- package/package.json +14 -11
- package/dist/chunk-3O7WAXNM.js.map +0 -1
- package/dist/chunk-AODG56I6.js +0 -59
- package/dist/chunk-AODG56I6.js.map +0 -1
- package/dist/tailwind.cjs +0 -64
- package/dist/tailwind.cjs.map +0 -1
- package/dist/tailwind.d.cts +0 -23
- package/dist/tailwind.d.ts +0 -23
- package/dist/tailwind.js +0 -3
- package/dist/tailwind.js.map +0 -1
- package/dist/types-q1Ks2jul.d.cts +0 -22
- package/dist/types-q1Ks2jul.d.ts +0 -22
package/README.md
CHANGED
|
@@ -16,21 +16,20 @@ npm i @growupsell/react-ecommerce-core @growupsell/api
|
|
|
16
16
|
## Quick start
|
|
17
17
|
|
|
18
18
|
```tsx
|
|
19
|
-
import { AuthProvider
|
|
19
|
+
import { AuthProvider } from '@growupsell/react-ecommerce-core';
|
|
20
20
|
|
|
21
21
|
export function AppRoot({ children }: { children: React.ReactNode }) {
|
|
22
22
|
return <AuthProvider>{children}</AuthProvider>;
|
|
23
23
|
}
|
|
24
|
-
|
|
25
|
-
toast.success('Core package loaded');
|
|
26
24
|
```
|
|
27
25
|
|
|
28
26
|
## Exports
|
|
29
27
|
|
|
30
28
|
- `@growupsell/react-ecommerce-core` - root exports
|
|
31
29
|
- `@growupsell/react-ecommerce-core/provider` - provider-focused entry
|
|
32
|
-
- `@growupsell/react-ecommerce-core/
|
|
30
|
+
- `@growupsell/react-ecommerce-core/business-config-context` - narrow export for `BusinessConfigContext`
|
|
33
31
|
|
|
34
32
|
## Notes
|
|
35
33
|
|
|
36
34
|
- This package depends on `@growupsell/api`.
|
|
35
|
+
- `ToastSupportProvider` / `useToastSupport` let cart and wishlist show messages without importing UI. On web, pass `toast` from `@growupsell/react-ecommerce-ui/toast` into `BaseProvider`; on React Native, pass your own implementation or omit (no-ops).
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var react = require('react');
|
|
4
|
+
|
|
5
|
+
// src/provider/BusinessConfigContext.tsx
|
|
6
|
+
var BusinessConfigContext = react.createContext({
|
|
7
|
+
currency: null,
|
|
8
|
+
reward_point_config: null,
|
|
9
|
+
orderConfig: null
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
exports.BusinessConfigContext = BusinessConfigContext;
|
|
13
|
+
//# sourceMappingURL=business-config-context.cjs.map
|
|
14
|
+
//# sourceMappingURL=business-config-context.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/provider/BusinessConfigContext.tsx"],"names":["createContext"],"mappings":";;;;;AAGO,IAAM,wBAAwBA,mBAAA,CAIlC;AAAA,EACD,QAAA,EAAU,IAAA;AAAA,EACV,mBAAA,EAAqB,IAAA;AAAA,EACrB,WAAA,EAAa;AACf,CAAC","file":"business-config-context.cjs","sourcesContent":["import { createContext } from 'react';\n\n/** Split out so `@growupsell/react-ecommerce-ui` can consume theme without importing the full provider graph. */\nexport const BusinessConfigContext = createContext<{\n currency: any;\n reward_point_config: any;\n orderConfig: any;\n}>({\n currency: null,\n reward_point_config: null,\n orderConfig: null,\n});\n"]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
|
|
3
|
+
/** Split out so `@growupsell/react-ecommerce-ui` can consume theme without importing the full provider graph. */
|
|
4
|
+
declare const BusinessConfigContext: React.Context<{
|
|
5
|
+
currency: any;
|
|
6
|
+
reward_point_config: any;
|
|
7
|
+
orderConfig: any;
|
|
8
|
+
}>;
|
|
9
|
+
|
|
10
|
+
export { BusinessConfigContext };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
|
|
3
|
+
/** Split out so `@growupsell/react-ecommerce-ui` can consume theme without importing the full provider graph. */
|
|
4
|
+
declare const BusinessConfigContext: React.Context<{
|
|
5
|
+
currency: any;
|
|
6
|
+
reward_point_config: any;
|
|
7
|
+
orderConfig: any;
|
|
8
|
+
}>;
|
|
9
|
+
|
|
10
|
+
export { BusinessConfigContext };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"business-config-context.js"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { createContext } from 'react';
|
|
2
|
+
|
|
3
|
+
// src/provider/BusinessConfigContext.tsx
|
|
4
|
+
var BusinessConfigContext = createContext({
|
|
5
|
+
currency: null,
|
|
6
|
+
reward_point_config: null,
|
|
7
|
+
orderConfig: null
|
|
8
|
+
});
|
|
9
|
+
|
|
10
|
+
export { BusinessConfigContext };
|
|
11
|
+
//# sourceMappingURL=chunk-SP77KIKJ.js.map
|
|
12
|
+
//# sourceMappingURL=chunk-SP77KIKJ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/provider/BusinessConfigContext.tsx"],"names":[],"mappings":";;;AAGO,IAAM,wBAAwB,aAAA,CAIlC;AAAA,EACD,QAAA,EAAU,IAAA;AAAA,EACV,mBAAA,EAAqB,IAAA;AAAA,EACrB,WAAA,EAAa;AACf,CAAC","file":"chunk-SP77KIKJ.js","sourcesContent":["import { createContext } from 'react';\n\n/** Split out so `@growupsell/react-ecommerce-ui` can consume theme without importing the full provider graph. */\nexport const BusinessConfigContext = createContext<{\n currency: any;\n reward_point_config: any;\n orderConfig: any;\n}>({\n currency: null,\n reward_point_config: null,\n orderConfig: null,\n});\n"]}
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { BusinessConfigContext } from './chunk-SP77KIKJ.js';
|
|
2
2
|
import { createContext, useState, useContext, useEffect, useMemo, useRef, useCallback } from 'react';
|
|
3
|
-
import { jsx,
|
|
3
|
+
import { jsx, Fragment } from 'react/jsx-runtime';
|
|
4
4
|
import { WAApi, api } from '@growupsell/api';
|
|
5
5
|
import { retrieveThemeContent, updateThemeContent, getCustomPageContent, updateCustomPageContent, createCustomerSession, getBusinessSetting, getRewardPointBusinessConfig, getOrderBusinessConfig } from '@growupsell/api/api';
|
|
6
|
-
import { ToastContainer, toast as toast$1 } from 'react-toastify';
|
|
7
6
|
import 'lodash';
|
|
8
|
-
import { FaWhatsapp } from 'react-icons/fa';
|
|
9
7
|
|
|
10
8
|
var StorageContext = createContext({
|
|
11
9
|
setItem: (key, data, type) => null,
|
|
@@ -154,11 +152,6 @@ var BusinessMediaProvider = (props) => {
|
|
|
154
152
|
return /* @__PURE__ */ jsx(BusinessMediaContext.Provider, { value: { businessMedia, updateBusinessMedia }, children: props.children });
|
|
155
153
|
};
|
|
156
154
|
var useBusinessMedia = () => useContext(BusinessMediaContext);
|
|
157
|
-
var BusinessConfigContext = createContext({
|
|
158
|
-
currency: null,
|
|
159
|
-
reward_point_config: null,
|
|
160
|
-
orderConfig: null
|
|
161
|
-
});
|
|
162
155
|
var BusinessConfigProvider = ({
|
|
163
156
|
children,
|
|
164
157
|
data,
|
|
@@ -208,57 +201,28 @@ var BusinessConfigProvider = ({
|
|
|
208
201
|
};
|
|
209
202
|
var useBusinessContext = () => useContext(BusinessConfigContext);
|
|
210
203
|
var useBusiness = () => useContext(BusinessConfigContext);
|
|
211
|
-
|
|
212
|
-
const
|
|
213
|
-
position: "top-right",
|
|
214
|
-
autoClose: 3e3
|
|
204
|
+
function createNoopToastSupport() {
|
|
205
|
+
const noop = () => {
|
|
215
206
|
};
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
case "warning":
|
|
236
|
-
toast$1.warning(message, {
|
|
237
|
-
...defaultOptions,
|
|
238
|
-
...options
|
|
239
|
-
});
|
|
240
|
-
break;
|
|
241
|
-
case "default":
|
|
242
|
-
toast$1(message, {
|
|
243
|
-
...defaultOptions,
|
|
244
|
-
...options
|
|
245
|
-
});
|
|
246
|
-
break;
|
|
247
|
-
default:
|
|
248
|
-
toast$1(message, {
|
|
249
|
-
...defaultOptions,
|
|
250
|
-
...options
|
|
251
|
-
});
|
|
252
|
-
break;
|
|
253
|
-
}
|
|
254
|
-
};
|
|
255
|
-
var toast = {
|
|
256
|
-
success: (message, options) => show("success", message, options),
|
|
257
|
-
error: (message, options) => show("error", message, options),
|
|
258
|
-
info: (message, options) => show("info", message, options),
|
|
259
|
-
warning: (message, options) => show("warning", message, options),
|
|
260
|
-
default: (message, options) => show("default", message, options)
|
|
261
|
-
};
|
|
207
|
+
return {
|
|
208
|
+
success: noop,
|
|
209
|
+
error: noop,
|
|
210
|
+
info: noop,
|
|
211
|
+
warning: noop,
|
|
212
|
+
default: noop
|
|
213
|
+
};
|
|
214
|
+
}
|
|
215
|
+
var ToastSupportContext = createContext(createNoopToastSupport());
|
|
216
|
+
function ToastSupportProvider({ children, value }) {
|
|
217
|
+
const api13 = useMemo(() => {
|
|
218
|
+
if (!value) return createNoopToastSupport();
|
|
219
|
+
return { ...createNoopToastSupport(), ...value };
|
|
220
|
+
}, [value]);
|
|
221
|
+
return /* @__PURE__ */ jsx(ToastSupportContext.Provider, { value: api13, children });
|
|
222
|
+
}
|
|
223
|
+
function useToastSupport() {
|
|
224
|
+
return useContext(ToastSupportContext);
|
|
225
|
+
}
|
|
262
226
|
var CartWishlistRefreshContext = createContext({
|
|
263
227
|
refreshType: null,
|
|
264
228
|
setRefreshType: () => null
|
|
@@ -279,6 +243,7 @@ var CartContext = createContext({
|
|
|
279
243
|
onChangeOffer: () => null,
|
|
280
244
|
onChangeOrderType: () => null,
|
|
281
245
|
session: {},
|
|
246
|
+
setSession: () => null,
|
|
282
247
|
removeAppliedOffer: () => null,
|
|
283
248
|
moveToWishlist: () => null,
|
|
284
249
|
moveToWishlistLoading: false,
|
|
@@ -288,6 +253,7 @@ var CartContext = createContext({
|
|
|
288
253
|
errorMessage: null
|
|
289
254
|
});
|
|
290
255
|
var CartProvider = (props) => {
|
|
256
|
+
const toast = useToastSupport();
|
|
291
257
|
const [cartItems, setCartItems] = useState([]);
|
|
292
258
|
const [orderFetchLoading, setOrderFetchLoading] = useState(true);
|
|
293
259
|
const [addToCartLoading, setAddToCartLoading] = useState(false);
|
|
@@ -561,6 +527,7 @@ var CartProvider = (props) => {
|
|
|
561
527
|
onChangeOffer,
|
|
562
528
|
onChangeOrderType,
|
|
563
529
|
session,
|
|
530
|
+
setSession,
|
|
564
531
|
removeAppliedOffer,
|
|
565
532
|
moveToWishlist,
|
|
566
533
|
moveToWishlistLoading,
|
|
@@ -864,23 +831,6 @@ var ProductDetailProvider = (props) => {
|
|
|
864
831
|
);
|
|
865
832
|
};
|
|
866
833
|
var useProductDetail = () => useContext(ProductDetailContext);
|
|
867
|
-
var ThemeContext = createContext({
|
|
868
|
-
themeRGB: {}
|
|
869
|
-
});
|
|
870
|
-
function ThemeProvider(props) {
|
|
871
|
-
const config = useContext(BusinessConfigContext);
|
|
872
|
-
const { theme } = config;
|
|
873
|
-
const pcolor = hexToRgb(theme?.primary_color);
|
|
874
|
-
const primaryColor = !!pcolor ? pcolor : "0, 72, 76";
|
|
875
|
-
useEffect(() => {
|
|
876
|
-
applyTheme({ primary: primaryColor });
|
|
877
|
-
}, []);
|
|
878
|
-
const value = useMemo(() => {
|
|
879
|
-
return { themeRGB: { primary: primaryColor } };
|
|
880
|
-
}, [primaryColor]);
|
|
881
|
-
return /* @__PURE__ */ jsx(ThemeContext.Provider, { value, children: props.children });
|
|
882
|
-
}
|
|
883
|
-
var useTheme = () => useContext(ThemeContext);
|
|
884
834
|
var ProductConfigContext = createContext({});
|
|
885
835
|
var ProductConfigProvider = (props) => {
|
|
886
836
|
const [productConfig, setProductConfig] = useState({});
|
|
@@ -1194,6 +1144,7 @@ var WishlistContext = createContext({
|
|
|
1194
1144
|
moveToCartLoading: false
|
|
1195
1145
|
});
|
|
1196
1146
|
var WishlistProvider = (props) => {
|
|
1147
|
+
const toast = useToastSupport();
|
|
1197
1148
|
const [wishlistItems, setWishlistItems] = useState([]);
|
|
1198
1149
|
const { user } = useAuth();
|
|
1199
1150
|
const [fetchWishlistLoading, setFetchWishlistLoading] = useState(true);
|
|
@@ -1826,16 +1777,6 @@ var MenuCartProvider = (props) => {
|
|
|
1826
1777
|
);
|
|
1827
1778
|
};
|
|
1828
1779
|
var useMenuCart = () => useContext(MenuCartContext);
|
|
1829
|
-
var ToastProvider = () => {
|
|
1830
|
-
return /* @__PURE__ */ jsx(
|
|
1831
|
-
ToastContainer,
|
|
1832
|
-
{
|
|
1833
|
-
position: "top-right",
|
|
1834
|
-
autoClose: 3e3,
|
|
1835
|
-
theme: "colored"
|
|
1836
|
-
}
|
|
1837
|
-
);
|
|
1838
|
-
};
|
|
1839
1780
|
var REFERRAL_STORAGE_KEY = "referralCode";
|
|
1840
1781
|
var ReferralCodeContext = createContext(null);
|
|
1841
1782
|
function ReferralCodeProvider({
|
|
@@ -1890,32 +1831,6 @@ var LiveSupportWidgetProvider = ({ children }) => {
|
|
|
1890
1831
|
return /* @__PURE__ */ jsx(LiveSupportWidgetContext.Provider, { value: { config, loading }, children });
|
|
1891
1832
|
};
|
|
1892
1833
|
var useLiveSupportWidget = () => useContext(LiveSupportWidgetContext);
|
|
1893
|
-
function LiveSupportWidget() {
|
|
1894
|
-
const { config, loading } = useLiveSupportWidget();
|
|
1895
|
-
if (loading || !config?.is_active || config?.type !== "whatsapp" || !config?.whatsapp_no?.trim()) {
|
|
1896
|
-
return null;
|
|
1897
|
-
}
|
|
1898
|
-
const phone = config.whatsapp_no.replace(/\D/g, "");
|
|
1899
|
-
const whatsappUrl = `https://wa.me/${phone}`;
|
|
1900
|
-
const handleClick = () => {
|
|
1901
|
-
window.open(whatsappUrl, "_blank", "noopener,noreferrer");
|
|
1902
|
-
};
|
|
1903
|
-
console.log(config);
|
|
1904
|
-
console.log(loading);
|
|
1905
|
-
return /* @__PURE__ */ jsx(
|
|
1906
|
-
"button",
|
|
1907
|
-
{
|
|
1908
|
-
type: "button",
|
|
1909
|
-
onClick: handleClick,
|
|
1910
|
-
style: {
|
|
1911
|
-
bottom: "15px"
|
|
1912
|
-
},
|
|
1913
|
-
className: "fixed bottom-6 fixed right-6 z-[9999] flex h-14 w-14 items-center justify-center rounded-full bg-[#25D366] text-white shadow-lg transition-transform hover:scale-105 focus:outline-none focus:ring-2 focus:ring-[#25D366] focus:ring-offset-2",
|
|
1914
|
-
"aria-label": "Chat on WhatsApp",
|
|
1915
|
-
children: /* @__PURE__ */ jsx(FaWhatsapp, { className: "h-8 w-8" })
|
|
1916
|
-
}
|
|
1917
|
-
);
|
|
1918
|
-
}
|
|
1919
1834
|
var BaseProvider = ({
|
|
1920
1835
|
children,
|
|
1921
1836
|
baseURL,
|
|
@@ -1926,14 +1841,12 @@ var BaseProvider = ({
|
|
|
1926
1841
|
isHeader,
|
|
1927
1842
|
isFooter,
|
|
1928
1843
|
isAnnouncementBar,
|
|
1929
|
-
referralCodeFromUrl = null
|
|
1844
|
+
referralCodeFromUrl = null,
|
|
1845
|
+
toast
|
|
1930
1846
|
}) => {
|
|
1931
|
-
return /* @__PURE__ */ jsx(StorageProvider, { storage, children: /* @__PURE__ */ jsx(BusinessConfigProvider, { data: businessConfig, baseURL, children: /* @__PURE__ */ jsx(ReferralCodeProvider, { referralCodeFromUrl, children: /* @__PURE__ */ jsx(ThemeEditProvider, { isThemeEdit: isEdit, token, isHeader, isFooter, isAnnouncementBar, children: /* @__PURE__ */ jsx(BusinessMediaProvider, { children: /* @__PURE__ */ jsx(CustomerConfigProvider, { children: /* @__PURE__ */ jsx(AuthProvider, { children: /* @__PURE__ */ jsx(ModalProvider, { children: /* @__PURE__ */ jsx(
|
|
1932
|
-
businessConfig.category.type == "retail" ? /* @__PURE__ */ jsx(ProductConfigProvider, { children: /* @__PURE__ */ jsx(CartWishlistRefreshProvider, { children: /* @__PURE__ */ jsx(CartProvider, { children: /* @__PURE__ */ jsx(WishlistProvider, { children: /* @__PURE__ */ jsx(FilterProvider, { children: /* @__PURE__ */ jsx(Fragment, { children }) }) }) }) }) }) : /* @__PURE__ */ jsx(MenuCartProvider, { children: /* @__PURE__ */ jsx(MenuFilterProvider, { children: /* @__PURE__ */ jsx(Fragment, { children }) }) }),
|
|
1933
|
-
/* @__PURE__ */ jsx(LiveSupportWidget, {})
|
|
1934
|
-
] }) }) }) }) }) }) }) }) }) });
|
|
1847
|
+
return /* @__PURE__ */ jsx(StorageProvider, { storage, children: /* @__PURE__ */ jsx(ToastSupportProvider, { value: toast, children: /* @__PURE__ */ jsx(BusinessConfigProvider, { data: businessConfig, baseURL, children: /* @__PURE__ */ jsx(ReferralCodeProvider, { referralCodeFromUrl, children: /* @__PURE__ */ jsx(ThemeEditProvider, { isThemeEdit: isEdit, token, isHeader, isFooter, isAnnouncementBar, children: /* @__PURE__ */ jsx(BusinessMediaProvider, { children: /* @__PURE__ */ jsx(CustomerConfigProvider, { children: /* @__PURE__ */ jsx(AuthProvider, { children: /* @__PURE__ */ jsx(ModalProvider, { children: /* @__PURE__ */ jsx(LiveSupportWidgetProvider, { children: businessConfig.category.type == "retail" ? /* @__PURE__ */ jsx(ProductConfigProvider, { children: /* @__PURE__ */ jsx(CartWishlistRefreshProvider, { children: /* @__PURE__ */ jsx(CartProvider, { children: /* @__PURE__ */ jsx(WishlistProvider, { children: /* @__PURE__ */ jsx(FilterProvider, { children: /* @__PURE__ */ jsx(Fragment, { children }) }) }) }) }) }) : /* @__PURE__ */ jsx(MenuCartProvider, { children: /* @__PURE__ */ jsx(MenuFilterProvider, { children: /* @__PURE__ */ jsx(Fragment, { children }) }) }) }) }) }) }) }) }) }) }) }) });
|
|
1935
1848
|
};
|
|
1936
1849
|
|
|
1937
|
-
export { AuthContext, AuthProvider, BaseProvider,
|
|
1938
|
-
//# sourceMappingURL=chunk-
|
|
1939
|
-
//# sourceMappingURL=chunk-
|
|
1850
|
+
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 };
|
|
1851
|
+
//# sourceMappingURL=chunk-XL2AT5BD.js.map
|
|
1852
|
+
//# sourceMappingURL=chunk-XL2AT5BD.js.map
|