@rebuy/rebuy-hydrogen 3.0.0-beta.18 → 3.0.0-beta.19
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 -3
- package/dist/components/Timer/Timer.d.ts +1 -1
- package/dist/components/Timer/Timer.d.ts.map +1 -1
- package/dist/components/Timer/types.d.ts +4 -0
- package/dist/components/Timer/types.d.ts.map +1 -1
- package/dist/hooks/useBFCacheReset.d.ts +7 -0
- package/dist/hooks/useBFCacheReset.d.ts.map +1 -0
- package/dist/index.css +27 -27
- package/dist/index.css.map +1 -1
- package/dist/index.js +420 -376
- package/dist/index.js.map +4 -4
- package/dist/index.mjs +193 -149
- package/dist/index.mjs.map +4 -4
- package/dist/providers/RebuyHydrogenContextProvider.d.ts.map +1 -1
- package/dist/providers/RebuyHydrogenReactContextProvider.d.ts.map +1 -1
- package/dist/types/widgets.d.ts +168 -168
- package/dist/widgets/RebuyWidget/RebuyWidget.d.ts.map +1 -1
- package/dist/widgets/RebuyWidget/WidgetContent.d.ts +1 -1
- package/dist/widgets/RebuyWidget/WidgetContent.d.ts.map +1 -1
- package/dist/widgets/RebuyWidget/types.d.ts +2 -0
- package/dist/widgets/RebuyWidget/types.d.ts.map +1 -1
- package/package.json +1 -9
package/dist/index.mjs
CHANGED
@@ -265,9 +265,26 @@ var useRebuyConfig = () => {
|
|
265
265
|
import { createContext as createContext2 } from "react";
|
266
266
|
var RebuyContext = createContext2(null);
|
267
267
|
|
268
|
+
// src/hooks/useBFCacheReset.ts
|
269
|
+
import { useEffect as useEffect2, useState as useState2 } from "react";
|
270
|
+
var useBFCacheReset = () => {
|
271
|
+
const [resetKey, setResetKey] = useState2(() => Date.now());
|
272
|
+
useEffect2(() => {
|
273
|
+
const handlePageShow = (event) => {
|
274
|
+
if (event.persisted) {
|
275
|
+
console.log("[useBFCacheReset] B/F cache detected, triggering reset");
|
276
|
+
setResetKey(Date.now());
|
277
|
+
}
|
278
|
+
};
|
279
|
+
window.addEventListener("pageshow", handlePageShow);
|
280
|
+
return () => window.removeEventListener("pageshow", handlePageShow);
|
281
|
+
}, []);
|
282
|
+
return resetKey;
|
283
|
+
};
|
284
|
+
|
268
285
|
// src/smart-cart/context/SmartCartContext.tsx
|
269
286
|
import { isEqual as isEqual2 } from "lodash-es";
|
270
|
-
import { createContext as createContext3, useCallback, useContext as useContext2, useEffect as
|
287
|
+
import { createContext as createContext3, useCallback, useContext as useContext2, useEffect as useEffect3, useMemo as useMemo2, useRef as useRef2, useState as useState3 } from "react";
|
271
288
|
import { useShallow } from "zustand/react/shallow";
|
272
289
|
|
273
290
|
// src/smart-cart/store/tieredProgressBarStore.ts
|
@@ -2105,7 +2122,7 @@ var SmartCartProvider = ({
|
|
2105
2122
|
storefrontAccessToken
|
2106
2123
|
}) => {
|
2107
2124
|
const rebuyContext = useContext2(RebuyContext);
|
2108
|
-
const [isVisible, setIsVisible] =
|
2125
|
+
const [isVisible, setIsVisible] = useState3(false);
|
2109
2126
|
const showCart = useCallback(() => setIsVisible(true), []);
|
2110
2127
|
const hideCart = useCallback(() => setIsVisible(false), []);
|
2111
2128
|
const toggleCart = useCallback(() => setIsVisible((prev) => !prev), []);
|
@@ -2207,12 +2224,12 @@ var SmartCartProvider = ({
|
|
2207
2224
|
const tpbComponentConfig = config?.components?.find((comp) => comp.type === "tiered_progress_bar");
|
2208
2225
|
return tpbComponentConfig?.settings ?? null;
|
2209
2226
|
}, [config]);
|
2210
|
-
|
2227
|
+
useEffect3(() => {
|
2211
2228
|
if (progressBarSettings && isCartReady && shopifyDomain && storefrontAccessToken) {
|
2212
2229
|
tpbInit(progressBarSettings, shopifyDomain, storefrontAccessToken);
|
2213
2230
|
}
|
2214
2231
|
}, [progressBarSettings, isCartReady, shopifyDomain, storefrontAccessToken, tpbInit]);
|
2215
|
-
|
2232
|
+
useEffect3(() => {
|
2216
2233
|
const currentTpbState = useTieredProgressBarStore.getState();
|
2217
2234
|
const newTpbIsCartReady = isCartReady;
|
2218
2235
|
if (!isEqual2(currentTpbState.cartData, mappedStorefrontCartData) || currentTpbState.isCartReady !== newTpbIsCartReady) {
|
@@ -2351,7 +2368,7 @@ var SmartCartProvider = ({
|
|
2351
2368
|
);
|
2352
2369
|
}
|
2353
2370
|
}, [mappedStorefrontCartData]);
|
2354
|
-
|
2371
|
+
useEffect3(() => {
|
2355
2372
|
const conditions = {
|
2356
2373
|
activeBarConfigPresent: !!activeBarConfig,
|
2357
2374
|
cartDataIsEqual: isEqual2(tpbInternalCartData, mappedStorefrontCartData),
|
@@ -2726,6 +2743,7 @@ var RebuyHydrogenContext = ({
|
|
2726
2743
|
shop,
|
2727
2744
|
sourceHydrogenCart
|
2728
2745
|
}) => {
|
2746
|
+
const resetKey = useBFCacheReset();
|
2729
2747
|
const {
|
2730
2748
|
apiKey,
|
2731
2749
|
fetchError: configFetchError,
|
@@ -2767,7 +2785,8 @@ var RebuyHydrogenContext = ({
|
|
2767
2785
|
shopifyDomain: shopifyDomainForSmartCart,
|
2768
2786
|
storefrontAccessToken,
|
2769
2787
|
children
|
2770
|
-
}
|
2788
|
+
},
|
2789
|
+
`smart-cart-${resetKey}`
|
2771
2790
|
) : /* @__PURE__ */ jsxs2(Fragment, { children: [
|
2772
2791
|
enableSmartCart && !hasAllSmartCartPrerequisites && !warningLogged2.current && (() => {
|
2773
2792
|
console.warn(
|
@@ -2825,7 +2844,7 @@ var RebuyHydrogenContextProvider = ({
|
|
2825
2844
|
// src/providers/RebuyHydrogenReactContextProvider.tsx
|
2826
2845
|
import * as Utilities3 from "@rebuy/rebuy/utilities";
|
2827
2846
|
import { CartProvider, ShopifyProvider, useCart } from "@shopify/hydrogen-react";
|
2828
|
-
import { useEffect as
|
2847
|
+
import { useEffect as useEffect4, useMemo as useMemo4, useRef as useRef4 } from "react";
|
2829
2848
|
import { useLocation as useLocation2 } from "react-router";
|
2830
2849
|
|
2831
2850
|
// src/queries/cart.queries.ts
|
@@ -3369,6 +3388,7 @@ var RebuyHydrogenReactContext = ({
|
|
3369
3388
|
publicPrimaryDomain,
|
3370
3389
|
publicStorefrontToken
|
3371
3390
|
}) => {
|
3391
|
+
const resetKey = useBFCacheReset();
|
3372
3392
|
const {
|
3373
3393
|
apiKey,
|
3374
3394
|
fetchError: configFetchError,
|
@@ -3436,7 +3456,7 @@ var RebuyHydrogenReactContext = ({
|
|
3436
3456
|
const shopifyDomainForSmartCart = configShopDomain || rebuyConfig?.shop?.domain || "";
|
3437
3457
|
const storefrontAccessToken = publicStorefrontToken || rebuyConfig?.shop?.storefront_access_token || "";
|
3438
3458
|
const hasAllSmartCartPrerequisites = enableSmartCart && configLoadingStatus === "success" && !!rebuyConfig && !!(smartCartConfig && apiKey && shopifyDomainForSmartCart && storefrontAccessToken);
|
3439
|
-
|
3459
|
+
useEffect4(() => {
|
3440
3460
|
if (configLoadingStatus === "loading") return;
|
3441
3461
|
const smartCartDetails = enableSmartCart ? {
|
3442
3462
|
hasAllSmartCartPrerequisites,
|
@@ -3473,7 +3493,8 @@ var RebuyHydrogenReactContext = ({
|
|
3473
3493
|
shopifyDomain: shopifyDomainForSmartCart,
|
3474
3494
|
storefrontAccessToken,
|
3475
3495
|
children
|
3476
|
-
}
|
3496
|
+
},
|
3497
|
+
`smart-cart-react-${resetKey}`
|
3477
3498
|
) : /* @__PURE__ */ jsxs3(Fragment2, { children: [
|
3478
3499
|
enableSmartCart && !hasAllSmartCartPrerequisites && !warningLogged2.current && (() => {
|
3479
3500
|
console.warn(
|
@@ -3612,14 +3633,14 @@ var RebuyHydrogenReactContextProvider = ({
|
|
3612
3633
|
|
3613
3634
|
// src/smart-cart/components/SmartCartContainer/SmartCartContainer.tsx
|
3614
3635
|
import clsx13 from "clsx";
|
3615
|
-
import React11, { useCallback as useCallback14, useEffect as
|
3636
|
+
import React11, { useCallback as useCallback14, useEffect as useEffect22, useMemo as useMemo20, useRef as useRef13 } from "react";
|
3616
3637
|
|
3617
3638
|
// src/smart-cart/components/_Layouts/AnchorSlot.tsx
|
3618
3639
|
import { useMemo as useMemo19 } from "react";
|
3619
3640
|
|
3620
3641
|
// src/smart-cart/components/AnnouncementBar/AnnouncementBar.tsx
|
3621
3642
|
import DOMPurify from "dompurify";
|
3622
|
-
import React, { useCallback as useCallback2, useEffect as
|
3643
|
+
import React, { useCallback as useCallback2, useEffect as useEffect5, useMemo as useMemo5, useRef as useRef5, useState as useState4 } from "react";
|
3623
3644
|
|
3624
3645
|
// src/smart-cart/components/ScreenReaderText/ScreenReaderText.tsx
|
3625
3646
|
import { jsx as jsx7 } from "react/jsx-runtime";
|
@@ -3635,14 +3656,14 @@ var AUTOPLAY_INTERVAL = 5e3;
|
|
3635
3656
|
var DRAG_THRESHOLD = 50;
|
3636
3657
|
var AnnouncementBar = React.memo(({ componentConfig }) => {
|
3637
3658
|
const { isVisible } = useSmartCart();
|
3638
|
-
const [currentSlideIndex, setCurrentSlideIndex] =
|
3639
|
-
const [isPaused, setIsPaused] =
|
3640
|
-
const [isFocused, setIsFocused] =
|
3659
|
+
const [currentSlideIndex, setCurrentSlideIndex] = useState4(0);
|
3660
|
+
const [isPaused, setIsPaused] = useState4(false);
|
3661
|
+
const [isFocused, setIsFocused] = useState4(false);
|
3641
3662
|
const intervalRef = useRef5(null);
|
3642
3663
|
const containerRef = useRef5(null);
|
3643
|
-
const [isDragging, setIsDragging] =
|
3644
|
-
const [startX, setStartX] =
|
3645
|
-
const [dragOffset, setDragOffset] =
|
3664
|
+
const [isDragging, setIsDragging] = useState4(false);
|
3665
|
+
const [startX, setStartX] = useState4(0);
|
3666
|
+
const [dragOffset, setDragOffset] = useState4(0);
|
3646
3667
|
const sanitizedMessages = useMemo5(() => {
|
3647
3668
|
const settings = componentConfig?.settings;
|
3648
3669
|
const rawMessages = settings?.messages ?? [];
|
@@ -3674,11 +3695,11 @@ var AnnouncementBar = React.memo(({ componentConfig }) => {
|
|
3674
3695
|
},
|
3675
3696
|
[messageCount]
|
3676
3697
|
);
|
3677
|
-
|
3698
|
+
useEffect5(() => {
|
3678
3699
|
startTimer();
|
3679
3700
|
return clearTimer;
|
3680
3701
|
}, [startTimer, isPaused, isVisible, isFocused]);
|
3681
|
-
|
3702
|
+
useEffect5(() => {
|
3682
3703
|
if (!isVisible) {
|
3683
3704
|
setCurrentSlideIndex(0);
|
3684
3705
|
setIsPaused(false);
|
@@ -3814,7 +3835,7 @@ AnnouncementBar.displayName = "AnnouncementBar";
|
|
3814
3835
|
|
3815
3836
|
// src/smart-cart/components/CartItem/CartItem.tsx
|
3816
3837
|
import clsx from "clsx";
|
3817
|
-
import { useCallback as useCallback4, useEffect as
|
3838
|
+
import { useCallback as useCallback4, useEffect as useEffect6, useMemo as useMemo7, useState as useState6 } from "react";
|
3818
3839
|
import { useFetcher } from "react-router";
|
3819
3840
|
|
3820
3841
|
// src/components/RebuyLink/RebuyLink.tsx
|
@@ -3825,7 +3846,7 @@ var RebuyLink = ({ ariaLabel, children, className, handle, onClick, role = "link
|
|
3825
3846
|
};
|
3826
3847
|
|
3827
3848
|
// src/smart-cart/hooks/useCartItemFeatures.ts
|
3828
|
-
import { useCallback as useCallback3, useMemo as useMemo6, useState as
|
3849
|
+
import { useCallback as useCallback3, useMemo as useMemo6, useState as useState5 } from "react";
|
3829
3850
|
|
3830
3851
|
// src/smart-cart/utils/imageUtils.ts
|
3831
3852
|
var sizeImage = (src, size) => {
|
@@ -3854,7 +3875,7 @@ var mapCartAttributes = (attributes) => {
|
|
3854
3875
|
}));
|
3855
3876
|
};
|
3856
3877
|
var useCartItemFeatures = ({ config, line }) => {
|
3857
|
-
const [isBundleExpanded, setIsBundleExpanded] =
|
3878
|
+
const [isBundleExpanded, setIsBundleExpanded] = useState5(false);
|
3858
3879
|
const productTitle = useMemo6(() => line.merchandise.product.title, [line.merchandise.product.title]);
|
3859
3880
|
const variantTitle = useMemo6(
|
3860
3881
|
() => line.merchandise.title !== "Default Title" ? line.merchandise.title : null,
|
@@ -4247,12 +4268,12 @@ var Spinner = ({ className }) => /* @__PURE__ */ jsx10("span", { className: clsx
|
|
4247
4268
|
var CartItem = ({ line }) => {
|
4248
4269
|
const { config, isCartBusy, isHydrogenReact, removeItem, updateItem } = useSmartCart();
|
4249
4270
|
const itemFetcher = useFetcher();
|
4250
|
-
const [isIncreasing, setIsIncreasing] =
|
4251
|
-
const [isDecreasing, setIsDecreasing] =
|
4252
|
-
const [isRemoving, setIsRemoving] =
|
4253
|
-
const [isAdjustingBMSM, setIsAdjustingBMSM] =
|
4254
|
-
const [isSwitchingSubscription, setIsSwitchingSubscription] =
|
4255
|
-
const [switchingDirection, setSwitchingDirection] =
|
4271
|
+
const [isIncreasing, setIsIncreasing] = useState6(false);
|
4272
|
+
const [isDecreasing, setIsDecreasing] = useState6(false);
|
4273
|
+
const [isRemoving, setIsRemoving] = useState6(false);
|
4274
|
+
const [isAdjustingBMSM, setIsAdjustingBMSM] = useState6(false);
|
4275
|
+
const [isSwitchingSubscription, setIsSwitchingSubscription] = useState6(false);
|
4276
|
+
const [switchingDirection, setSwitchingDirection] = useState6(null);
|
4256
4277
|
const { toggleCart } = useSmartCart();
|
4257
4278
|
const {
|
4258
4279
|
actions: itemActionsLogic,
|
@@ -4450,7 +4471,7 @@ var CartItem = ({ line }) => {
|
|
4450
4471
|
sts.isCurrentlySubscription,
|
4451
4472
|
sts.availableFrequencies
|
4452
4473
|
]);
|
4453
|
-
|
4474
|
+
useEffect6(() => {
|
4454
4475
|
const resetLocalSpinners = () => {
|
4455
4476
|
setIsIncreasing(false);
|
4456
4477
|
setIsDecreasing(false);
|
@@ -4751,7 +4772,7 @@ var CartItemList = ({ componentConfig }) => {
|
|
4751
4772
|
|
4752
4773
|
// src/smart-cart/components/CartNoteInput/CartNoteInput.tsx
|
4753
4774
|
import clsx2 from "clsx";
|
4754
|
-
import React2, { useCallback as useCallback5, useEffect as
|
4775
|
+
import React2, { useCallback as useCallback5, useEffect as useEffect7, useMemo as useMemo8, useRef as useRef6, useState as useState7 } from "react";
|
4755
4776
|
import { useFetcher as useFetcher2 } from "react-router";
|
4756
4777
|
|
4757
4778
|
// src/smart-cart/components/CartNoteInput/CartNoteInput.module.css
|
@@ -4776,10 +4797,10 @@ var CartNoteInput = React2.memo(({ componentConfig }) => {
|
|
4776
4797
|
const placeholder = settings?.language?.notes_placeholder ?? "Your notes...";
|
4777
4798
|
const limitChars = settings?.limit_characters ?? true;
|
4778
4799
|
const maxLength = settings?.max_length ?? 200;
|
4779
|
-
const [currentNoteValue, setCurrentNoteValue] =
|
4780
|
-
const [isTextareaVisible, setIsTextareaVisible] =
|
4781
|
-
const [isSaving, setIsSaving] =
|
4782
|
-
const [saveMessage, setSaveMessage] =
|
4800
|
+
const [currentNoteValue, setCurrentNoteValue] = useState7(cartData?.note || "");
|
4801
|
+
const [isTextareaVisible, setIsTextareaVisible] = useState7(!!cartData?.note);
|
4802
|
+
const [isSaving, setIsSaving] = useState7(false);
|
4803
|
+
const [saveMessage, setSaveMessage] = useState7(null);
|
4783
4804
|
const saveMessageTimerRef = useRef6(null);
|
4784
4805
|
const currentCartNoteFromCtx = cartData?.note || "";
|
4785
4806
|
const isNoteChanged = currentNoteValue.trim() !== currentCartNoteFromCtx.trim();
|
@@ -4789,7 +4810,7 @@ var CartNoteInput = React2.memo(({ componentConfig }) => {
|
|
4789
4810
|
return noteFetcher.state !== "idle" || isSaving;
|
4790
4811
|
}, [isHydrogenReact, isGlobalCartLoading, noteFetcher.state, isSaving]);
|
4791
4812
|
const canSave = isNoteChanged && !isLoadingCombined;
|
4792
|
-
|
4813
|
+
useEffect7(() => {
|
4793
4814
|
const noteFromCart = cartData?.note || "";
|
4794
4815
|
if (!isTextareaFocusedRef.current && !isSaving && noteFromCart !== currentNoteValue) {
|
4795
4816
|
setCurrentNoteValue(noteFromCart);
|
@@ -4798,7 +4819,7 @@ var CartNoteInput = React2.memo(({ componentConfig }) => {
|
|
4798
4819
|
} else if (!noteFromCart && isTextareaVisible && !isSaving && !currentNoteValue.trim()) {
|
4799
4820
|
}
|
4800
4821
|
}, [cartData?.note, isSaving, currentNoteValue, isTextareaVisible]);
|
4801
|
-
|
4822
|
+
useEffect7(() => {
|
4802
4823
|
return () => {
|
4803
4824
|
if (saveMessageTimerRef.current) clearTimeout(saveMessageTimerRef.current);
|
4804
4825
|
};
|
@@ -4871,7 +4892,7 @@ var CartNoteInput = React2.memo(({ componentConfig }) => {
|
|
4871
4892
|
},
|
4872
4893
|
[handleSave]
|
4873
4894
|
);
|
4874
|
-
|
4895
|
+
useEffect7(() => {
|
4875
4896
|
if (isHydrogenReact) {
|
4876
4897
|
if (!isGlobalCartLoading && isSaving) {
|
4877
4898
|
setIsSaving(false);
|
@@ -5008,7 +5029,7 @@ CartNoteInput.displayName = "CartNoteInput";
|
|
5008
5029
|
|
5009
5030
|
// src/smart-cart/components/CartSubtotal/CartSubtotal.tsx
|
5010
5031
|
import clsx3 from "clsx";
|
5011
|
-
import React3, { useCallback as useCallback6, useMemo as useMemo9, useState as
|
5032
|
+
import React3, { useCallback as useCallback6, useMemo as useMemo9, useState as useState8 } from "react";
|
5012
5033
|
|
5013
5034
|
// src/smart-cart/components/CartSubtotal/CartSubtotal.module.css
|
5014
5035
|
var result6 = { "rebuy-cart-subtotal": "CartSubtotal_rebuy-cart-subtotal", "rebuy-cart-subtotal--simple": "CartSubtotal_rebuy-cart-subtotal--simple", "rebuy-cart-subtotal__label": "CartSubtotal_rebuy-cart-subtotal__label", "rebuy-cart-subtotal__amount-wrapper": "CartSubtotal_rebuy-cart-subtotal__amount-wrapper", "rebuy-cart-subtotal__price--compare-at": "CartSubtotal_rebuy-cart-subtotal__price--compare-at", "rebuy-cart-subtotal__price--final": "CartSubtotal_rebuy-cart-subtotal__price--final", "rebuy-cart-subtotal--with-summary": "CartSubtotal_rebuy-cart-subtotal--with-summary", "rebuy-cart-subtotal__row": "CartSubtotal_rebuy-cart-subtotal__row", "rebuy-cart-subtotal__discount-summary": "CartSubtotal_rebuy-cart-subtotal__discount-summary", "rebuy-cart-subtotal__discount-summary-header": "CartSubtotal_rebuy-cart-subtotal__discount-summary-header", "rebuy-cart-subtotal__discount-summary-icon": "CartSubtotal_rebuy-cart-subtotal__discount-summary-icon", "rebuy-cart-subtotal__discount-summary--expanded": "CartSubtotal_rebuy-cart-subtotal__discount-summary--expanded", "rebuy-cart-subtotal__discount-summary-details": "CartSubtotal_rebuy-cart-subtotal__discount-summary-details", "rebuy-cart-subtotal__discount-summary-item": "CartSubtotal_rebuy-cart-subtotal__discount-summary-item" };
|
@@ -5030,7 +5051,7 @@ var getDiscountAllocationTitle = (alloc) => {
|
|
5030
5051
|
};
|
5031
5052
|
var CartSubtotalComponent = ({ componentConfig }) => {
|
5032
5053
|
const { cartData } = useSmartCart();
|
5033
|
-
const [isDiscountSummaryExpanded, setIsDiscountSummaryExpanded] =
|
5054
|
+
const [isDiscountSummaryExpanded, setIsDiscountSummaryExpanded] = useState8(false);
|
5034
5055
|
const settings = useMemo9(
|
5035
5056
|
() => componentConfig?.settings ?? {},
|
5036
5057
|
[componentConfig?.settings]
|
@@ -5238,7 +5259,7 @@ var CartTitleBar = React4.memo(() => {
|
|
5238
5259
|
CartTitleBar.displayName = "CartTitleBar";
|
5239
5260
|
|
5240
5261
|
// src/smart-cart/components/CheckoutArea/CheckoutArea.tsx
|
5241
|
-
import React5, { useCallback as useCallback7, useEffect as
|
5262
|
+
import React5, { useCallback as useCallback7, useEffect as useEffect8, useMemo as useMemo11, useState as useState9 } from "react";
|
5242
5263
|
import { useFetcher as useFetcher3 } from "react-router";
|
5243
5264
|
|
5244
5265
|
// src/smart-cart/components/CheckoutArea/CheckoutArea.module.css
|
@@ -5259,9 +5280,9 @@ var CheckoutArea = React5.memo(({ componentConfig }) => {
|
|
5259
5280
|
} = useSmartCart();
|
5260
5281
|
const termsFetcher = useFetcher3();
|
5261
5282
|
const settings = componentConfig.settings;
|
5262
|
-
const [termsAccepted, setTermsAccepted] =
|
5263
|
-
const [processingSource, setProcessingSource] =
|
5264
|
-
|
5283
|
+
const [termsAccepted, setTermsAccepted] = useState9(false);
|
5284
|
+
const [processingSource, setProcessingSource] = useState9(null);
|
5285
|
+
useEffect8(() => {
|
5265
5286
|
const termsAttr = cartData?.attributes?.find((attr) => attr.key === "Terms and Conditions");
|
5266
5287
|
const acceptedInCart = termsAttr?.value === "Accepted";
|
5267
5288
|
if (processingSource !== "terms" && termsAccepted !== acceptedInCart) {
|
@@ -5367,7 +5388,7 @@ var CheckoutArea = React5.memo(({ componentConfig }) => {
|
|
5367
5388
|
termsFetcher,
|
5368
5389
|
cartData?.attributes
|
5369
5390
|
]);
|
5370
|
-
|
5391
|
+
useEffect8(() => {
|
5371
5392
|
if (processingSource === "terms") {
|
5372
5393
|
if (isHydrogenReact && !isGlobalCartLoading) {
|
5373
5394
|
setProcessingSource(null);
|
@@ -5550,7 +5571,7 @@ CheckoutArea.displayName = "CheckoutArea";
|
|
5550
5571
|
import { RebuyClient as RebuyClient2 } from "@rebuy/rebuy";
|
5551
5572
|
import * as Utilities4 from "@rebuy/rebuy/utilities";
|
5552
5573
|
import { flattenConnection as flattenConnection3 } from "@shopify/hydrogen";
|
5553
|
-
import { useContext as useContext3, useEffect as
|
5574
|
+
import { useContext as useContext3, useEffect as useEffect14, useMemo as useMemo13, useRef as useRef7, useState as useState16 } from "react";
|
5554
5575
|
|
5555
5576
|
// src/assets/Close.tsx
|
5556
5577
|
import { jsx as jsx17 } from "react/jsx-runtime";
|
@@ -5559,10 +5580,10 @@ var Close = () => {
|
|
5559
5580
|
};
|
5560
5581
|
|
5561
5582
|
// src/hooks/useBreakpoint.ts
|
5562
|
-
import { useEffect as
|
5583
|
+
import { useEffect as useEffect9, useState as useState10 } from "react";
|
5563
5584
|
var useBreakpoint = (settings) => {
|
5564
|
-
const [breakpoint, setBreakpoint] =
|
5565
|
-
|
5585
|
+
const [breakpoint, setBreakpoint] = useState10("medium");
|
5586
|
+
useEffect9(() => {
|
5566
5587
|
if (!settings?.breakpoints) return;
|
5567
5588
|
const handleResize = () => {
|
5568
5589
|
const width = window.innerWidth;
|
@@ -5595,7 +5616,7 @@ var useBreakpoint = (settings) => {
|
|
5595
5616
|
};
|
5596
5617
|
|
5597
5618
|
// src/hooks/usePopupTrigger.tsx
|
5598
|
-
import { useCallback as useCallback8, useEffect as
|
5619
|
+
import { useCallback as useCallback8, useEffect as useEffect10 } from "react";
|
5599
5620
|
var usePopupTrigger = (settings, popupTriggerId, widgetId, popupShownOnce, showPopup, setShowPopup, setPopupShownOnce) => {
|
5600
5621
|
const delayInMs = settings?.display_type === "popup" ? (settings?.popup_delay || 0) * 1e3 : 0;
|
5601
5622
|
const popupTrigger = settings?.popup_trigger;
|
@@ -5606,7 +5627,7 @@ var usePopupTrigger = (settings, popupTriggerId, widgetId, popupShownOnce, showP
|
|
5606
5627
|
setPopupShownOnce(true);
|
5607
5628
|
}, delayInMs);
|
5608
5629
|
}, [delayInMs, setShowPopup, setPopupShownOnce, settings]);
|
5609
|
-
|
5630
|
+
useEffect10(() => {
|
5610
5631
|
if (!settings || settings.display_type !== "popup" || popupTrigger !== "load" || popupShownOnce) return;
|
5611
5632
|
const timer = setTimeout(() => {
|
5612
5633
|
setShowPopup(true);
|
@@ -5614,7 +5635,7 @@ var usePopupTrigger = (settings, popupTriggerId, widgetId, popupShownOnce, showP
|
|
5614
5635
|
}, delayInMs);
|
5615
5636
|
return () => clearTimeout(timer);
|
5616
5637
|
}, [popupTrigger, popupShownOnce, delayInMs, setShowPopup, setPopupShownOnce, settings]);
|
5617
|
-
|
5638
|
+
useEffect10(() => {
|
5618
5639
|
if (!settings || settings.display_type !== "popup" || popupTrigger !== "add_to_cart" || !popupTriggerId) return;
|
5619
5640
|
const selector = `#${popupTriggerId}`;
|
5620
5641
|
const handleCartAdd = () => {
|
@@ -5646,7 +5667,7 @@ var usePopupTrigger = (settings, popupTriggerId, widgetId, popupShownOnce, showP
|
|
5646
5667
|
});
|
5647
5668
|
};
|
5648
5669
|
}, [popupTrigger, popupTriggerId, showPopup, showPopupWithDelay, settings]);
|
5649
|
-
|
5670
|
+
useEffect10(() => {
|
5650
5671
|
if (!settings || settings.display_type !== "popup" || popupTrigger !== "submit") return;
|
5651
5672
|
const selector = "form";
|
5652
5673
|
const handleSubmit = () => {
|
@@ -5662,7 +5683,7 @@ var usePopupTrigger = (settings, popupTriggerId, widgetId, popupShownOnce, showP
|
|
5662
5683
|
});
|
5663
5684
|
};
|
5664
5685
|
}, [popupTrigger, showPopupWithDelay, settings]);
|
5665
|
-
|
5686
|
+
useEffect10(() => {
|
5666
5687
|
if (!settings || settings.display_type !== "popup" || popupTrigger !== "exit") return;
|
5667
5688
|
const handleExitIntent = (e) => {
|
5668
5689
|
if (e.clientY <= 0 && !popupShownOnce) {
|
@@ -6063,7 +6084,7 @@ var defaultProductCardSettings = {
|
|
6063
6084
|
|
6064
6085
|
// src/components/ProductCard/ProductCard.tsx
|
6065
6086
|
import { Image } from "@shopify/hydrogen";
|
6066
|
-
import { useCallback as useCallback9, useMemo as useMemo12, useState as
|
6087
|
+
import { useCallback as useCallback9, useMemo as useMemo12, useState as useState13 } from "react";
|
6067
6088
|
|
6068
6089
|
// src/components/AddToCartBtn/HydrogenAddToCartBtn.tsx
|
6069
6090
|
import { CartForm, Money } from "@shopify/hydrogen";
|
@@ -6251,7 +6272,7 @@ var RebuyProductPrice = ({ selectedVariant, settingsDiscount }) => {
|
|
6251
6272
|
};
|
6252
6273
|
|
6253
6274
|
// src/components/QuantityInput/QuantityInput.tsx
|
6254
|
-
import { useState as
|
6275
|
+
import { useState as useState11 } from "react";
|
6255
6276
|
|
6256
6277
|
// src/components/QuantityInput/QuantityInput.module.css
|
6257
6278
|
var result11 = { "rebuy-quantity__container": "QuantityInput_rebuy-quantity__container", "rebuy-quantity__select": "QuantityInput_rebuy-quantity__select" };
|
@@ -6265,7 +6286,7 @@ var QuantityInput = ({
|
|
6265
6286
|
maxValue = 10,
|
6266
6287
|
minValue = 1
|
6267
6288
|
}) => {
|
6268
|
-
const [quantity, setQuantity] =
|
6289
|
+
const [quantity, setQuantity] = useState11(defaultQuantity);
|
6269
6290
|
const handleChange = (event) => {
|
6270
6291
|
const newValue = parseInt(event.target.value, 10);
|
6271
6292
|
setQuantity(newValue);
|
@@ -6289,7 +6310,7 @@ var QuantityInput = ({
|
|
6289
6310
|
|
6290
6311
|
// src/components/VariantSelect/VariantSelect.tsx
|
6291
6312
|
import clsx5 from "clsx";
|
6292
|
-
import { useEffect as
|
6313
|
+
import { useEffect as useEffect11, useState as useState12 } from "react";
|
6293
6314
|
|
6294
6315
|
// src/components/VariantSelect/VariantSelect.module.css
|
6295
6316
|
var result12 = { "rebuy-variant__container": "VariantSelect_rebuy-variant__container", "rebuy-variant__select": "VariantSelect_rebuy-variant__select", "rebuy-variant__select-option": "VariantSelect_rebuy-variant__select-option", "rebuy-variant__buttons": "VariantSelect_rebuy-variant__buttons", "rebuy-variant__button": "VariantSelect_rebuy-variant__button", "rebuy-variant__button--selected": "VariantSelect_rebuy-variant__button--selected" };
|
@@ -6298,8 +6319,8 @@ var VariantSelect_default = result12;
|
|
6298
6319
|
// src/components/VariantSelect/VariantSelect.tsx
|
6299
6320
|
import { jsx as jsx23 } from "react/jsx-runtime";
|
6300
6321
|
var VariantSelect = ({ handleSelectedVariant, product, selectedId, style = "select" }) => {
|
6301
|
-
const [selectedVariantId, setSelectedVariantId] =
|
6302
|
-
|
6322
|
+
const [selectedVariantId, setSelectedVariantId] = useState12(selectedId || product.variants.nodes[0]?.id);
|
6323
|
+
useEffect11(() => {
|
6303
6324
|
if (selectedId && selectedId !== selectedVariantId) {
|
6304
6325
|
setSelectedVariantId(selectedId);
|
6305
6326
|
}
|
@@ -6390,9 +6411,9 @@ var ProductCard = ({
|
|
6390
6411
|
settings = defaultProductCardSettings,
|
6391
6412
|
variantOptionsText
|
6392
6413
|
}) => {
|
6393
|
-
const [selectedVariant, setSelectedVariant] =
|
6394
|
-
const [selectedQuantity, setSelectedQuantity] =
|
6395
|
-
const [interactionStatus, setInteractionStatus] =
|
6414
|
+
const [selectedVariant, setSelectedVariant] = useState13(product.variants.nodes[0]);
|
6415
|
+
const [selectedQuantity, setSelectedQuantity] = useState13(settings?.quantityInput?.default_quantity || 1);
|
6416
|
+
const [interactionStatus, setInteractionStatus] = useState13("ready");
|
6396
6417
|
const { toggleCart } = useSmartCart();
|
6397
6418
|
const displayImage = selectedVariant.image || product.featuredImage;
|
6398
6419
|
const handleSelectedVariant = useCallback9((product2, variant_id) => {
|
@@ -6454,8 +6475,8 @@ var ProductCard = ({
|
|
6454
6475
|
if (isSelectionRequiredBeforeAddToCart) {
|
6455
6476
|
setInteractionStatus("selecting");
|
6456
6477
|
} else {
|
6457
|
-
if (isInPopup
|
6458
|
-
onPopupDismiss();
|
6478
|
+
if (isInPopup) {
|
6479
|
+
onPopupDismiss?.();
|
6459
6480
|
}
|
6460
6481
|
}
|
6461
6482
|
}, [isSelectionRequiredBeforeAddToCart, isInPopup, onPopupDismiss]);
|
@@ -6624,7 +6645,7 @@ var ProductCard = ({
|
|
6624
6645
|
addToCartCallback,
|
6625
6646
|
disableShopifyAddAction: isSelectionRequiredBeforeAddToCart,
|
6626
6647
|
isHydrogenReact,
|
6627
|
-
onClickAction: handlePrimaryAction,
|
6648
|
+
onClickAction: isSelectionRequiredBeforeAddToCart ? handlePrimaryAction : void 0,
|
6628
6649
|
quantity: selectedQuantity,
|
6629
6650
|
selectedVariants: isSelectionRequiredBeforeAddToCart ? [] : [selectedVariant]
|
6630
6651
|
}
|
@@ -6645,7 +6666,7 @@ var ProductCard = ({
|
|
6645
6666
|
};
|
6646
6667
|
|
6647
6668
|
// src/components/ProductCarousel/ProductCarousel.tsx
|
6648
|
-
import { useEffect as
|
6669
|
+
import { useEffect as useEffect12, useState as useState14 } from "react";
|
6649
6670
|
|
6650
6671
|
// src/components/ProductCarousel/ProductCarousel.module.css
|
6651
6672
|
var result15 = { "rebuy-carousel": "ProductCarousel_rebuy-carousel", "rebuy-carousel__container": "ProductCarousel_rebuy-carousel__container", "rebuy-carousel__slide": "ProductCarousel_rebuy-carousel__slide", "rebuy-carousel__controls": "ProductCarousel_rebuy-carousel__controls", "rebuy-carousel__prev": "ProductCarousel_rebuy-carousel__prev", "rebuy-carousel__next": "ProductCarousel_rebuy-carousel__next", "rebuy-carousel__pagination": "ProductCarousel_rebuy-carousel__pagination", "rebuy-carousel__dot": "ProductCarousel_rebuy-carousel__dot", "rebuy-carousel__grid": "ProductCarousel_rebuy-carousel__grid" };
|
@@ -6667,10 +6688,10 @@ var ProductCarousel = ({
|
|
6667
6688
|
showPagination = true,
|
6668
6689
|
variantOptionsText
|
6669
6690
|
}) => {
|
6670
|
-
const [currentSlide, setCurrentSlide] =
|
6671
|
-
const [totalSlides, setTotalSlides] =
|
6672
|
-
const [repeatedProducts, setRepeatedProducts] =
|
6673
|
-
|
6691
|
+
const [currentSlide, setCurrentSlide] = useState14(0);
|
6692
|
+
const [totalSlides, setTotalSlides] = useState14(0);
|
6693
|
+
const [repeatedProducts, setRepeatedProducts] = useState14([]);
|
6694
|
+
useEffect12(() => {
|
6674
6695
|
if (products.length === 0) {
|
6675
6696
|
setRepeatedProducts([]);
|
6676
6697
|
return;
|
@@ -6683,7 +6704,7 @@ var ProductCarousel = ({
|
|
6683
6704
|
}
|
6684
6705
|
setRepeatedProducts(repeated);
|
6685
6706
|
}, [products, columns]);
|
6686
|
-
|
6707
|
+
useEffect12(() => {
|
6687
6708
|
if (repeatedProducts.length && columns) {
|
6688
6709
|
setTotalSlides(Math.ceil(repeatedProducts.length / columns));
|
6689
6710
|
}
|
@@ -6744,7 +6765,7 @@ var ProductCarousel = ({
|
|
6744
6765
|
|
6745
6766
|
// src/components/Timer/Timer.tsx
|
6746
6767
|
import clsx7 from "clsx";
|
6747
|
-
import { useCallback as useCallback10, useEffect as
|
6768
|
+
import { useCallback as useCallback10, useEffect as useEffect13, useState as useState15 } from "react";
|
6748
6769
|
|
6749
6770
|
// src/components/Timer/Timer.module.css
|
6750
6771
|
var result16 = { "rebuy-timer__container": "Timer_rebuy-timer__container", "rebuy-timer__text": "Timer_rebuy-timer__text", "rebuy-timer__title": "Timer_rebuy-timer__title", "rebuy-timer__display": "Timer_rebuy-timer__display", "rebuy-timer__display--urgent": "Timer_rebuy-timer__display--urgent", "rebuy-timer__minutes": "Timer_rebuy-timer__minutes", "rebuy-timer__seconds": "Timer_rebuy-timer__seconds", "rebuy-timer__separator": "Timer_rebuy-timer__separator" };
|
@@ -6752,10 +6773,19 @@ var Timer_default = result16;
|
|
6752
6773
|
|
6753
6774
|
// src/components/Timer/Timer.tsx
|
6754
6775
|
import { jsx as jsx27, jsxs as jsxs14 } from "react/jsx-runtime";
|
6755
|
-
var Timer = ({
|
6776
|
+
var Timer = ({
|
6777
|
+
action,
|
6778
|
+
cartCount,
|
6779
|
+
checkoutUrl,
|
6780
|
+
durationMinutes,
|
6781
|
+
durationSeconds,
|
6782
|
+
isPopup = false,
|
6783
|
+
onDismiss,
|
6784
|
+
title
|
6785
|
+
}) => {
|
6756
6786
|
const initialTotalSeconds = (durationMinutes || 0) * 60 + (durationSeconds || 0);
|
6757
|
-
const [totalSeconds, setTotalSeconds] =
|
6758
|
-
const [timerActive, setTimerActive] =
|
6787
|
+
const [totalSeconds, setTotalSeconds] = useState15(initialTotalSeconds);
|
6788
|
+
const [timerActive, setTimerActive] = useState15(true);
|
6759
6789
|
const minutes = Math.floor(totalSeconds / 60);
|
6760
6790
|
const seconds = totalSeconds % 60;
|
6761
6791
|
const formattedMinutes = String(minutes).padStart(2, "0");
|
@@ -6769,7 +6799,14 @@ var Timer = ({ action, durationMinutes, durationSeconds, isPopup = false, onDism
|
|
6769
6799
|
}
|
6770
6800
|
break;
|
6771
6801
|
case "checkout":
|
6772
|
-
|
6802
|
+
if (checkoutUrl && cartCount && cartCount > 0) {
|
6803
|
+
window.location.href = checkoutUrl;
|
6804
|
+
} else {
|
6805
|
+
console.warn("Timer: No checkout URL available for checkout action");
|
6806
|
+
if (isPopup && onDismiss) {
|
6807
|
+
onDismiss();
|
6808
|
+
}
|
6809
|
+
}
|
6773
6810
|
break;
|
6774
6811
|
case "cart":
|
6775
6812
|
window.location.href = "/cart";
|
@@ -6778,8 +6815,8 @@ var Timer = ({ action, durationMinutes, durationSeconds, isPopup = false, onDism
|
|
6778
6815
|
default:
|
6779
6816
|
break;
|
6780
6817
|
}
|
6781
|
-
}, [action, isPopup, onDismiss]);
|
6782
|
-
|
6818
|
+
}, [action, checkoutUrl, isPopup, onDismiss]);
|
6819
|
+
useEffect13(() => {
|
6783
6820
|
if (!timerActive) return;
|
6784
6821
|
const interval = setInterval(() => {
|
6785
6822
|
setTotalSeconds((prevSeconds) => {
|
@@ -6856,6 +6893,8 @@ var RebuyWidget_default = result17;
|
|
6856
6893
|
import { jsx as jsx28, jsxs as jsxs15 } from "react/jsx-runtime";
|
6857
6894
|
var WidgetContent = ({
|
6858
6895
|
addToCartCallback,
|
6896
|
+
cartCount,
|
6897
|
+
checkoutUrl,
|
6859
6898
|
customTitle,
|
6860
6899
|
customTitleLevel,
|
6861
6900
|
customTitleStyle,
|
@@ -6949,6 +6988,8 @@ var WidgetContent = ({
|
|
6949
6988
|
Timer,
|
6950
6989
|
{
|
6951
6990
|
action: settings?.timer.action,
|
6991
|
+
cartCount,
|
6992
|
+
checkoutUrl,
|
6952
6993
|
durationMinutes: settings?.timer.duration_minutes,
|
6953
6994
|
durationSeconds: settings?.timer.duration_seconds,
|
6954
6995
|
isPopup: settings?.display_type === "popup",
|
@@ -6994,26 +7035,26 @@ var RebuyWidget = (props) => {
|
|
6994
7035
|
widgetId
|
6995
7036
|
} = props;
|
6996
7037
|
const { apiKey: apiKeyFromConfig, loadingStatus: configLoadingStatus, rebuyConfig } = useRebuyConfig();
|
6997
|
-
const [settings, setSettings] =
|
6998
|
-
const [loadingSettings, setLoadingSettings] =
|
6999
|
-
const [error, setError] =
|
7000
|
-
const [showPopup, setShowPopup] =
|
7001
|
-
const [popupShownOnce, setPopupShownOnce] =
|
7038
|
+
const [settings, setSettings] = useState16(null);
|
7039
|
+
const [loadingSettings, setLoadingSettings] = useState16(true);
|
7040
|
+
const [error, setError] = useState16(null);
|
7041
|
+
const [showPopup, setShowPopup] = useState16(false);
|
7042
|
+
const [popupShownOnce, setPopupShownOnce] = useState16(false);
|
7002
7043
|
const popupRef = useRef7(null);
|
7003
|
-
const [clientInstance, setClientInstance] =
|
7044
|
+
const [clientInstance, setClientInstance] = useState16(null);
|
7004
7045
|
const rebuyGeneralContext = useContext3(RebuyContext);
|
7005
7046
|
const generalContextParams = rebuyGeneralContext?.contextParameters;
|
7006
7047
|
const mainCacheKey = rebuyConfig?.shop?.cache_key;
|
7007
7048
|
const generalContextCacheKey = generalContextParams?.cache_key;
|
7008
7049
|
const cacheKeyToUse = mainCacheKey || generalContextCacheKey || "";
|
7009
|
-
const [initialized, setInitialized] =
|
7050
|
+
const [initialized, setInitialized] = useState16(false);
|
7010
7051
|
const shopifyProductId = product?.id ?? productId ?? null;
|
7011
7052
|
const shopifyVariantId = variant?.id ?? variantId ?? null;
|
7012
|
-
const [products, setProducts] =
|
7053
|
+
const [products, setProducts] = useState16([]);
|
7013
7054
|
const currentBreakpoint = useBreakpoint(settings);
|
7014
7055
|
const shouldHideWidget = settings?.layout?.[currentBreakpoint]?.style === "none";
|
7015
7056
|
usePopupTrigger(settings, popupTriggerId, widgetId, popupShownOnce, showPopup, setShowPopup, setPopupShownOnce);
|
7016
|
-
|
7057
|
+
useEffect14(() => {
|
7017
7058
|
if (!clientInstance && apiKeyFromConfig && configLoadingStatus === "success") {
|
7018
7059
|
const client = new RebuyClient2(apiKeyFromConfig);
|
7019
7060
|
if (generalContextParams) {
|
@@ -7024,12 +7065,12 @@ var RebuyWidget = (props) => {
|
|
7024
7065
|
setInitialized(true);
|
7025
7066
|
}
|
7026
7067
|
}, [clientInstance, apiKeyFromConfig, configLoadingStatus, generalContextParams]);
|
7027
|
-
|
7068
|
+
useEffect14(() => {
|
7028
7069
|
if (!clientInstance || !generalContextParams) return;
|
7029
7070
|
const filteredParams = filterContextForWidgetEndpoints(generalContextParams, settings?.endpoint);
|
7030
7071
|
clientInstance.setContextParameters(filteredParams);
|
7031
7072
|
}, [clientInstance, generalContextParams, settings]);
|
7032
|
-
|
7073
|
+
useEffect14(() => {
|
7033
7074
|
if (configLoadingStatus === "loading") {
|
7034
7075
|
return;
|
7035
7076
|
}
|
@@ -7124,7 +7165,7 @@ var RebuyWidget = (props) => {
|
|
7124
7165
|
}
|
7125
7166
|
return req;
|
7126
7167
|
}, [settings, shopifyProductId, shopifyVariantId, cartProductIds, cartVariantIds]);
|
7127
|
-
|
7168
|
+
useEffect14(() => {
|
7128
7169
|
let isMounted = true;
|
7129
7170
|
if (!clientInstance || !initialized || !settings || configLoadingStatus !== "success") return;
|
7130
7171
|
const fetchData = async () => {
|
@@ -7176,7 +7217,7 @@ var RebuyWidget = (props) => {
|
|
7176
7217
|
apiKeyFromConfig,
|
7177
7218
|
cacheKeyToUse
|
7178
7219
|
]);
|
7179
|
-
|
7220
|
+
useEffect14(() => {
|
7180
7221
|
if (!showPopup) return;
|
7181
7222
|
const handleClickOutside = (event) => {
|
7182
7223
|
if (popupRef.current && !popupRef.current.contains(event.target)) {
|
@@ -7226,6 +7267,8 @@ var RebuyWidget = (props) => {
|
|
7226
7267
|
closePopup();
|
7227
7268
|
}, 0);
|
7228
7269
|
},
|
7270
|
+
cartCount: generalContextParams?.cart_count || 0,
|
7271
|
+
checkoutUrl: generalContextParams?.checkoutUrl,
|
7229
7272
|
customTitle,
|
7230
7273
|
customTitleLevel,
|
7231
7274
|
customTitleStyle,
|
@@ -7240,6 +7283,7 @@ var RebuyWidget = (props) => {
|
|
7240
7283
|
WidgetContent,
|
7241
7284
|
{
|
7242
7285
|
addToCartCallback,
|
7286
|
+
checkoutUrl: generalContextParams?.checkoutUrl,
|
7243
7287
|
customTitle,
|
7244
7288
|
customTitleLevel,
|
7245
7289
|
customTitleStyle,
|
@@ -7264,7 +7308,7 @@ var CrossSell = ({ componentConfig }) => {
|
|
7264
7308
|
};
|
7265
7309
|
|
7266
7310
|
// src/smart-cart/components/CustomCode/CustomCodeBlock.tsx
|
7267
|
-
import React6, { useEffect as
|
7311
|
+
import React6, { useEffect as useEffect15, useMemo as useMemo14, useRef as useRef8 } from "react";
|
7268
7312
|
|
7269
7313
|
// src/utils/nonceManager.ts
|
7270
7314
|
var cachedNonce = void 0;
|
@@ -7343,7 +7387,7 @@ var CustomCodeBlock = React6.memo(({ componentConfig }) => {
|
|
7343
7387
|
const executedCodeRef = useRef8(null);
|
7344
7388
|
const componentId = componentConfig.component_id;
|
7345
7389
|
const htmlCode = useMemo14(() => componentConfig.settings?.html_code ?? null, [componentConfig.settings?.html_code]);
|
7346
|
-
|
7390
|
+
useEffect15(() => {
|
7347
7391
|
const container = containerRef.current;
|
7348
7392
|
if (htmlCode && container && executedCodeRef.current !== htmlCode) {
|
7349
7393
|
const timerId = setTimeout(() => {
|
@@ -7379,20 +7423,20 @@ CustomCodeBlock.displayName = "CustomCodeBlock";
|
|
7379
7423
|
|
7380
7424
|
// src/smart-cart/components/DiscountCodeInput/DiscountCodeInput.tsx
|
7381
7425
|
import clsx8 from "clsx";
|
7382
|
-
import React7, { useCallback as useCallback12, useEffect as
|
7426
|
+
import React7, { useCallback as useCallback12, useEffect as useEffect17, useMemo as useMemo16, useRef as useRef9, useState as useState18 } from "react";
|
7383
7427
|
import { useFetcher as useFetcher4 } from "react-router";
|
7384
7428
|
|
7385
7429
|
// src/smart-cart/hooks/useDiscountManager.ts
|
7386
|
-
import { useCallback as useCallback11, useEffect as
|
7430
|
+
import { useCallback as useCallback11, useEffect as useEffect16, useMemo as useMemo15, useState as useState17 } from "react";
|
7387
7431
|
var GENERIC_ERROR_CODE_MESSAGE = "{{code}} is not valid for this cart.";
|
7388
7432
|
var useDiscountManager = () => {
|
7389
7433
|
const { cartData, error: cartErrorFromCtx, getComponentConfigByType } = useSmartCart();
|
7390
|
-
const [isProcessing, setIsProcessing] =
|
7391
|
-
const [currentError, setCurrentError] =
|
7392
|
-
const [appliedCodesState, setAppliedCodesState] =
|
7434
|
+
const [isProcessing, setIsProcessing] = useState17(false);
|
7435
|
+
const [currentError, setCurrentError] = useState17(null);
|
7436
|
+
const [appliedCodesState, setAppliedCodesState] = useState17([]);
|
7393
7437
|
const componentConfig = useMemo15(() => getComponentConfigByType("discount_code"), [getComponentConfigByType]);
|
7394
7438
|
const settings = useMemo15(() => componentConfig?.settings ?? null, [componentConfig]);
|
7395
|
-
|
7439
|
+
useEffect16(() => {
|
7396
7440
|
const codesFromApi = cartData?.discountCodes?.filter((dc) => dc.applicable).map((dc) => dc.code) ?? [];
|
7397
7441
|
if (JSON.stringify(codesFromApi) !== JSON.stringify(appliedCodesState)) {
|
7398
7442
|
setAppliedCodesState(codesFromApi);
|
@@ -7486,9 +7530,9 @@ var DiscountCodeInputComponent = ({ componentConfig }) => {
|
|
7486
7530
|
setIsProcessing: setDiscountManagerIsProcessing,
|
7487
7531
|
settings
|
7488
7532
|
} = useDiscountManager();
|
7489
|
-
const [inputValue, setInputValue] =
|
7490
|
-
const [isInputFocused, setIsInputFocused] =
|
7491
|
-
const [isLocallyProcessing, setIsLocallyProcessing] =
|
7533
|
+
const [inputValue, setInputValue] = useState18("");
|
7534
|
+
const [isInputFocused, setIsInputFocused] = useState18(false);
|
7535
|
+
const [isLocallyProcessing, setIsLocallyProcessing] = useState18(false);
|
7492
7536
|
const inputRef = useRef9(null);
|
7493
7537
|
const hasItems = getItemCount() > 0;
|
7494
7538
|
const lang = useMemo16(
|
@@ -7585,7 +7629,7 @@ var DiscountCodeInputComponent = ({ componentConfig }) => {
|
|
7585
7629
|
setDiscountManagerError
|
7586
7630
|
]
|
7587
7631
|
);
|
7588
|
-
|
7632
|
+
useEffect17(() => {
|
7589
7633
|
if (isHydrogenReact) {
|
7590
7634
|
if (!isGlobalCartLoading && isLocallyProcessing) {
|
7591
7635
|
setIsLocallyProcessing(false);
|
@@ -7752,10 +7796,10 @@ var LoginButton = React8.memo(() => {
|
|
7752
7796
|
LoginButton.displayName = "LoginButton";
|
7753
7797
|
|
7754
7798
|
// src/smart-cart/components/SmartCartApp/SmartCartApp.tsx
|
7755
|
-
import React9, { useEffect as
|
7799
|
+
import React9, { useEffect as useEffect19, useMemo as useMemo17, useRef as useRef10 } from "react";
|
7756
7800
|
|
7757
7801
|
// src/smart-cart/hooks/useSmartCartApps.ts
|
7758
|
-
import { useEffect as
|
7802
|
+
import { useEffect as useEffect18, useState as useState19 } from "react";
|
7759
7803
|
|
7760
7804
|
// src/smart-cart/types/smart-cart-app.ts
|
7761
7805
|
import { z as z2 } from "zod";
|
@@ -7777,11 +7821,11 @@ var smartCartAppMerchantConfigSchema = z2.object({
|
|
7777
7821
|
// src/smart-cart/hooks/useSmartCartApps.ts
|
7778
7822
|
var useSmartCartApps = () => {
|
7779
7823
|
const { apiKey, cacheKey, config, shopifyDomain } = useSmartCart();
|
7780
|
-
const [enrichedApps, setEnrichedApps] =
|
7781
|
-
const [isLoading, setIsLoading] =
|
7782
|
-
const [error, setError] =
|
7824
|
+
const [enrichedApps, setEnrichedApps] = useState19(/* @__PURE__ */ new Map());
|
7825
|
+
const [isLoading, setIsLoading] = useState19(false);
|
7826
|
+
const [error, setError] = useState19(null);
|
7783
7827
|
const initialAppsConfig = config?.apps;
|
7784
|
-
|
7828
|
+
useEffect18(() => {
|
7785
7829
|
let isMounted = true;
|
7786
7830
|
const fetchAndEnrichApps = async () => {
|
7787
7831
|
if (!initialAppsConfig || initialAppsConfig.length === 0) {
|
@@ -7974,7 +8018,7 @@ var SmartCartApp = React9.memo(({ componentConfig }) => {
|
|
7974
8018
|
const appData = appId !== null ? enrichedApps.get(appId) : null;
|
7975
8019
|
const enabledAppData = appData?.enabled ? appData : null;
|
7976
8020
|
const scriptContent = enabledAppData?.script ?? null;
|
7977
|
-
|
8021
|
+
useEffect19(() => {
|
7978
8022
|
const container = containerRef.current;
|
7979
8023
|
if (container && scriptContent && executedScriptRef.current !== scriptContent) {
|
7980
8024
|
const timerId = setTimeout(() => {
|
@@ -8029,7 +8073,7 @@ SmartCartApp.displayName = "SmartCartApp";
|
|
8029
8073
|
|
8030
8074
|
// src/smart-cart/components/TieredProgressBar/TieredProgressBar.tsx
|
8031
8075
|
import clsx10 from "clsx";
|
8032
|
-
import React10, { useCallback as useCallback13, useEffect as
|
8076
|
+
import React10, { useCallback as useCallback13, useEffect as useEffect20, useMemo as useMemo18, useState as useState20 } from "react";
|
8033
8077
|
import { useFetcher as useFetcher5 } from "react-router";
|
8034
8078
|
import { useShallow as useShallow2 } from "zustand/shallow";
|
8035
8079
|
|
@@ -8237,7 +8281,7 @@ import { jsx as jsx36, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
8237
8281
|
var TieredProgressBar = React10.memo(() => {
|
8238
8282
|
const { hydrogenReactCartActions, isCartBusy, isHydrogenReact } = useSmartCart();
|
8239
8283
|
const tpbUserActionFetcher = useFetcher5();
|
8240
|
-
const [showDebugPanel, setShowDebugPanel] =
|
8284
|
+
const [showDebugPanel, setShowDebugPanel] = useState20(false);
|
8241
8285
|
const {
|
8242
8286
|
_lastFetchedBarId,
|
8243
8287
|
activeBarConfig,
|
@@ -8282,7 +8326,7 @@ var TieredProgressBar = React10.memo(() => {
|
|
8282
8326
|
const shouldDisableGiftActions = useMemo18(() => {
|
8283
8327
|
return isCartBusy || productFetchStatus === "loading";
|
8284
8328
|
}, [isCartBusy, productFetchStatus]);
|
8285
|
-
|
8329
|
+
useEffect20(() => {
|
8286
8330
|
if (isHydrogenReact) {
|
8287
8331
|
const hReactLinesAdd = hydrogenReactCartActions?.linesAdd;
|
8288
8332
|
const hReactLinesRemove = hydrogenReactCartActions?.linesRemove;
|
@@ -8323,7 +8367,7 @@ var TieredProgressBar = React10.memo(() => {
|
|
8323
8367
|
rebuyDebugLog.log("smart-cart-tpb" /* SC_TPB */, "Set Remix fetcher submit functions for TPB.");
|
8324
8368
|
}
|
8325
8369
|
}, [isHydrogenReact, hydrogenReactCartActions, tpbUserActionFetcher, setSubmitFunctions]);
|
8326
|
-
|
8370
|
+
useEffect20(() => {
|
8327
8371
|
if (userActionError) {
|
8328
8372
|
const timer = setTimeout(() => clearUserActionError(), 5e3);
|
8329
8373
|
return () => clearTimeout(timer);
|
@@ -8643,10 +8687,10 @@ import clsx11 from "clsx";
|
|
8643
8687
|
import { useRef as useRef11 } from "react";
|
8644
8688
|
|
8645
8689
|
// src/smart-cart/hooks/useIsScrolled.ts
|
8646
|
-
import { useEffect as
|
8690
|
+
import { useEffect as useEffect21, useState as useState21 } from "react";
|
8647
8691
|
var useIsScrolled = (scrollElementRef) => {
|
8648
|
-
const [isScrolled, setIsScrolled] =
|
8649
|
-
|
8692
|
+
const [isScrolled, setIsScrolled] = useState21(false);
|
8693
|
+
useEffect21(() => {
|
8650
8694
|
const scrollElement = scrollElementRef.current;
|
8651
8695
|
if (!scrollElement) return;
|
8652
8696
|
const handleScroll = () => {
|
@@ -8759,7 +8803,7 @@ var SmartCartContainer = ({ containerId }) => {
|
|
8759
8803
|
previousFocusRef.current.focus();
|
8760
8804
|
}
|
8761
8805
|
}, [hideCart]);
|
8762
|
-
|
8806
|
+
useEffect22(() => {
|
8763
8807
|
if (isVisible) {
|
8764
8808
|
previousFocusRef.current = document.activeElement;
|
8765
8809
|
const closeButton = containerRef.current?.querySelector("#rebuy-cart-close");
|
@@ -8768,7 +8812,7 @@ var SmartCartContainer = ({ containerId }) => {
|
|
8768
8812
|
}
|
8769
8813
|
}
|
8770
8814
|
}, [isVisible]);
|
8771
|
-
|
8815
|
+
useEffect22(() => {
|
8772
8816
|
if (isVisible) {
|
8773
8817
|
document.body.classList.add("rebuy-smart-cart-open");
|
8774
8818
|
} else {
|
@@ -8859,7 +8903,7 @@ var RebuySmartCart = () => {
|
|
8859
8903
|
import { RebuyClient as RebuyClient3 } from "@rebuy/rebuy";
|
8860
8904
|
import * as Utilities5 from "@rebuy/rebuy/utilities";
|
8861
8905
|
import { flattenConnection as flattenConnection4 } from "@shopify/hydrogen";
|
8862
|
-
import { useContext as useContext5, useEffect as
|
8906
|
+
import { useContext as useContext5, useEffect as useEffect23, useMemo as useMemo21, useState as useState22 } from "react";
|
8863
8907
|
|
8864
8908
|
// src/context/RebuyWidgetContext.tsx
|
8865
8909
|
import { createContext as createContext4, useContext as useContext4 } from "react";
|
@@ -8886,14 +8930,14 @@ var RebuyWidgetContainerBase = ({ children, ...props }) => {
|
|
8886
8930
|
const { collection, collectionId, dataSource, limit, options, product, productId, variant, variantId } = props;
|
8887
8931
|
const { apiKey, loadingStatus: configLoadingStatus, rebuyConfig } = useRebuyConfig();
|
8888
8932
|
const rebuyContext = useContext5(RebuyContext);
|
8889
|
-
const [rebuyApiClient, setRebuyApiClient] =
|
8890
|
-
const [initialized, setInitialized] =
|
8933
|
+
const [rebuyApiClient, setRebuyApiClient] = useState22(null);
|
8934
|
+
const [initialized, setInitialized] = useState22(false);
|
8891
8935
|
const shopifyProductId = product?.id ?? productId ?? null;
|
8892
8936
|
const shopifyVariantId = variant?.id ?? variantId ?? null;
|
8893
8937
|
const shopifyCollectionId = collection?.id ?? collectionId ?? null;
|
8894
|
-
const [products, setProducts] =
|
8895
|
-
const [metadata, setMetadata] =
|
8896
|
-
|
8938
|
+
const [products, setProducts] = useState22([]);
|
8939
|
+
const [metadata, setMetadata] = useState22();
|
8940
|
+
useEffect23(() => {
|
8897
8941
|
if (!rebuyApiClient && apiKey && configLoadingStatus === "success") {
|
8898
8942
|
const client = new RebuyClient3(apiKey);
|
8899
8943
|
const currentEndpoint = dataSource || "/api/v1/products/recommended";
|
@@ -8908,7 +8952,7 @@ var RebuyWidgetContainerBase = ({ children, ...props }) => {
|
|
8908
8952
|
setInitialized(true);
|
8909
8953
|
}
|
8910
8954
|
}, [apiKey, rebuyApiClient, configLoadingStatus, options, rebuyContext, dataSource]);
|
8911
|
-
|
8955
|
+
useEffect23(() => {
|
8912
8956
|
if (rebuyApiClient && rebuyContext?.contextParameters) {
|
8913
8957
|
const currentEndpoint = dataSource || "/api/v1/products/recommended";
|
8914
8958
|
const filteredParams = filterContextForWidgetEndpoints(rebuyContext.contextParameters, currentEndpoint);
|
@@ -8935,7 +8979,7 @@ var RebuyWidgetContainerBase = ({ children, ...props }) => {
|
|
8935
8979
|
}
|
8936
8980
|
return req;
|
8937
8981
|
}, [dataSource, shopifyProductId, shopifyVariantId, shopifyCollectionId, limit]);
|
8938
|
-
|
8982
|
+
useEffect23(() => {
|
8939
8983
|
let isMounted = true;
|
8940
8984
|
if (!rebuyApiClient || !initialized || configLoadingStatus !== "success") return;
|
8941
8985
|
const fetchData = async () => {
|
@@ -9031,7 +9075,7 @@ var RebuyCompleteTheLook = (props) => {
|
|
9031
9075
|
};
|
9032
9076
|
|
9033
9077
|
// src/widgets/RebuyDynamicBundleProducts/RebuyDynamicBundleProducts.tsx
|
9034
|
-
import { useCallback as useCallback15, useEffect as
|
9078
|
+
import { useCallback as useCallback15, useEffect as useEffect24, useState as useState23 } from "react";
|
9035
9079
|
|
9036
9080
|
// src/utils/convertToRebuyProduct.tsx
|
9037
9081
|
var convertToRebuyProduct = (isHydrogenReact, product) => {
|
@@ -9454,8 +9498,8 @@ var RebuyDynamicBundleProducts = (props) => {
|
|
9454
9498
|
} = props;
|
9455
9499
|
const { isHydrogenReact, product, products } = useRebuyWidget();
|
9456
9500
|
const productTitle = customTitle.replace("{product_title}", product?.title ?? "");
|
9457
|
-
const [bundleProducts, setBundleProducts] =
|
9458
|
-
|
9501
|
+
const [bundleProducts, setBundleProducts] = useState23([]);
|
9502
|
+
useEffect24(() => {
|
9459
9503
|
const mainProduct = convertToRebuyProduct(isHydrogenReact || false, product);
|
9460
9504
|
const formattedProducts = products.map((product2) => {
|
9461
9505
|
return {
|
@@ -9519,7 +9563,7 @@ var RebuyDynamicBundleProducts = (props) => {
|
|
9519
9563
|
|
9520
9564
|
// src/widgets/RebuyProductAddOns/RebuyProductAddOns.tsx
|
9521
9565
|
import { Money as Money5 } from "@shopify/hydrogen-react";
|
9522
|
-
import { useCallback as useCallback16, useEffect as
|
9566
|
+
import { useCallback as useCallback16, useEffect as useEffect25, useState as useState24 } from "react";
|
9523
9567
|
|
9524
9568
|
// src/widgets/RebuyProductAddOns/RebuyProductAddOnCard.tsx
|
9525
9569
|
import { Image as Image3 } from "@shopify/hydrogen";
|
@@ -9596,11 +9640,11 @@ var RebuyProductAddOns = (props) => {
|
|
9596
9640
|
const { isHydrogenReact, product, products } = useRebuyWidget();
|
9597
9641
|
const productTitleClean = customTitle.replace("{product_title}", product?.title ?? "");
|
9598
9642
|
const withProductTextClean = withProductText.replace("{product_title}", product?.title ?? "");
|
9599
|
-
const [addedItems, setAddedItems] =
|
9600
|
-
const [subtotalWithProduct, setSubtotalWithProduct] =
|
9601
|
-
const [subtotalWithOutProduct, setSubtotalWithOutProduct] =
|
9643
|
+
const [addedItems, setAddedItems] = useState24(products);
|
9644
|
+
const [subtotalWithProduct, setSubtotalWithProduct] = useState24();
|
9645
|
+
const [subtotalWithOutProduct, setSubtotalWithOutProduct] = useState24();
|
9602
9646
|
const convertedProduct = convertToRebuyProduct(isHydrogenReact || false, product);
|
9603
|
-
|
9647
|
+
useEffect25(() => {
|
9604
9648
|
let initialTotal = 0;
|
9605
9649
|
let currencyCode = "USD";
|
9606
9650
|
products.map((product2) => {
|
@@ -9649,7 +9693,7 @@ var RebuyProductAddOns = (props) => {
|
|
9649
9693
|
},
|
9650
9694
|
[products]
|
9651
9695
|
);
|
9652
|
-
|
9696
|
+
useEffect25(() => {
|
9653
9697
|
let total = 0;
|
9654
9698
|
let currencyCode = "USD";
|
9655
9699
|
addedItems.forEach((item) => {
|
@@ -9759,7 +9803,7 @@ var RebuyProductRecommendations = (props) => {
|
|
9759
9803
|
// src/widgets/RebuyProductViewed/RebuyProductViewed.tsx
|
9760
9804
|
import { RebuyClient as RebuyClient4 } from "@rebuy/rebuy";
|
9761
9805
|
import * as Utilities6 from "@rebuy/rebuy/utilities";
|
9762
|
-
import { useEffect as
|
9806
|
+
import { useEffect as useEffect26, useMemo as useMemo22, useState as useState25 } from "react";
|
9763
9807
|
|
9764
9808
|
// src/zustandStores/productViewed.ts
|
9765
9809
|
import { create as create2 } from "zustand";
|
@@ -9774,10 +9818,10 @@ var useProductViewedStore = create2((set) => ({
|
|
9774
9818
|
var RebuyProductViewed = ({ ...props }) => {
|
9775
9819
|
const { apiKey: apiKeyFromContext } = useRebuyConfig();
|
9776
9820
|
const { customerId, product, productHandle, productId } = props;
|
9777
|
-
const [event, setEvent] =
|
9778
|
-
const [Rebuy, setRebuy] =
|
9821
|
+
const [event, setEvent] = useState25(null);
|
9822
|
+
const [Rebuy, setRebuy] = useState25(null);
|
9779
9823
|
const shopifyProductId = product?.id ?? productId ?? null;
|
9780
|
-
const [initialized, setInitialized] =
|
9824
|
+
const [initialized, setInitialized] = useState25(false);
|
9781
9825
|
const { setCustomerId, setUuid } = useProductViewedStore();
|
9782
9826
|
const request = useMemo22(() => {
|
9783
9827
|
const request2 = {
|
@@ -9793,7 +9837,7 @@ var RebuyProductViewed = ({ ...props }) => {
|
|
9793
9837
|
}
|
9794
9838
|
return request2;
|
9795
9839
|
}, [productHandle, shopifyProductId]);
|
9796
|
-
|
9840
|
+
useEffect26(() => {
|
9797
9841
|
const recordView = async () => {
|
9798
9842
|
if (!Rebuy) {
|
9799
9843
|
return;
|
@@ -9829,7 +9873,7 @@ var RebuyProductViewed = ({ ...props }) => {
|
|
9829
9873
|
// src/widgets/RebuyRecentlyViewedProducts/RebuyRecentlyViewedProducts.tsx
|
9830
9874
|
import { RebuyClient as RebuyClient5 } from "@rebuy/rebuy";
|
9831
9875
|
import { flattenConnection as flattenConnection5 } from "@shopify/hydrogen";
|
9832
|
-
import { useContext as useContext6, useEffect as
|
9876
|
+
import { useContext as useContext6, useEffect as useEffect27, useMemo as useMemo23, useState as useState26 } from "react";
|
9833
9877
|
|
9834
9878
|
// src/widgets/RebuyRecentlyViewedProducts/RebuyRecentlyViewedProducts.module.css
|
9835
9879
|
var result27 = { "rebuy-recently-viewed-products-container": "RebuyRecentlyViewedProducts_rebuy-recently-viewed-products-container", "product-grid": "RebuyRecentlyViewedProducts_product-grid" };
|
@@ -9851,13 +9895,13 @@ var RebuyRecentlyViewedProducts = (props) => {
|
|
9851
9895
|
const { customerId, uuid } = useProductViewedStore();
|
9852
9896
|
const { apiKey, loadingStatus: configLoadingStatus, rebuyConfig } = useRebuyConfig();
|
9853
9897
|
const rebuyContext = useContext6(RebuyContext);
|
9854
|
-
const [rebuyApiClient, setRebuyApiClient] =
|
9855
|
-
const [initialized, setInitialized] =
|
9856
|
-
const [products, setProducts] =
|
9857
|
-
const [metadata, setMetadata] =
|
9898
|
+
const [rebuyApiClient, setRebuyApiClient] = useState26(null);
|
9899
|
+
const [initialized, setInitialized] = useState26(false);
|
9900
|
+
const [products, setProducts] = useState26([]);
|
9901
|
+
const [metadata, setMetadata] = useState26();
|
9858
9902
|
const rebuyConfigKey = rebuyConfig?.shop?.cache_key;
|
9859
9903
|
const endpoint = customerId && customerId !== "" ? `/api/v1/products/viewed?key=${rebuyConfigKey}&customer_id=${customerId}` : `/api/v1/products/viewed?key=${rebuyConfigKey}&uuid=${uuid}`;
|
9860
|
-
|
9904
|
+
useEffect27(() => {
|
9861
9905
|
if (!rebuyApiClient && apiKey && configLoadingStatus === "success") {
|
9862
9906
|
const client = new RebuyClient5(apiKey);
|
9863
9907
|
if (rebuyContext?.contextParameters) {
|
@@ -9871,7 +9915,7 @@ var RebuyRecentlyViewedProducts = (props) => {
|
|
9871
9915
|
setInitialized(true);
|
9872
9916
|
}
|
9873
9917
|
}, [apiKey, rebuyApiClient, configLoadingStatus, options, rebuyContext, uuid, endpoint]);
|
9874
|
-
|
9918
|
+
useEffect27(() => {
|
9875
9919
|
if (rebuyApiClient && rebuyContext?.contextParameters) {
|
9876
9920
|
const filteredParams = filterContextForWidgetEndpoints(rebuyContext.contextParameters, endpoint);
|
9877
9921
|
rebuyApiClient.setContextParameters(filteredParams);
|
@@ -9888,7 +9932,7 @@ var RebuyRecentlyViewedProducts = (props) => {
|
|
9888
9932
|
}
|
9889
9933
|
return req;
|
9890
9934
|
}, [limit, uuid, endpoint]);
|
9891
|
-
|
9935
|
+
useEffect27(() => {
|
9892
9936
|
let isMounted = true;
|
9893
9937
|
if (!rebuyApiClient || !initialized || configLoadingStatus !== "success") return;
|
9894
9938
|
const fetchData = async () => {
|