@instockng/storefront-ui 1.0.21 → 1.0.23
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/components/Checkout.d.ts.map +1 -1
- package/dist/components/ShoppingCart.d.ts.map +1 -1
- package/dist/contexts/CartContext.d.ts +2 -0
- package/dist/contexts/CartContext.d.ts.map +1 -1
- package/dist/index10.mjs +53 -59
- package/dist/index100.mjs +3 -3
- package/dist/index101.mjs +1 -1
- package/dist/index102.mjs +1 -1
- package/dist/index103.mjs +1 -1
- package/dist/index104.mjs +2 -2
- package/dist/index105.mjs +2 -2
- package/dist/index106.mjs +3 -3
- package/dist/index107.mjs +1 -1
- package/dist/index108.mjs +3 -3
- package/dist/index109.mjs +2 -2
- package/dist/index110.mjs +2 -2
- package/dist/index111.mjs +1 -1
- package/dist/index112.mjs +3 -3
- package/dist/index113.mjs +1 -1
- package/dist/index114.mjs +1 -1
- package/dist/index115.mjs +3 -3
- package/dist/index116.mjs +2 -2
- package/dist/index117.mjs +4 -4
- package/dist/index118.mjs +1 -1
- package/dist/index119.mjs +3 -3
- package/dist/index12.mjs +456 -438
- package/dist/index120.mjs +4 -4
- package/dist/index121.mjs +1 -1
- package/dist/index122.mjs +1 -1
- package/dist/index123.mjs +1 -1
- package/dist/index124.mjs +1 -1
- package/dist/index125.mjs +1 -1
- package/dist/index126.mjs +1 -1
- package/dist/index127.mjs +1 -1
- package/dist/index128.mjs +2 -2
- package/dist/index129.mjs +3 -3
- package/dist/index132.mjs +1 -1
- package/dist/index134.mjs +2 -21
- package/dist/index135.mjs +2 -56
- package/dist/index136.mjs +2 -29
- package/dist/index137.mjs +2 -7
- package/dist/index138.mjs +16 -50
- package/dist/index139.mjs +32 -6
- package/dist/index140.mjs +37 -11
- package/dist/index141.mjs +18 -7
- package/dist/index142.mjs +18 -28
- package/dist/index143.mjs +2 -2
- package/dist/index144.mjs +20 -70
- package/dist/index145.mjs +42 -163
- package/dist/index147.mjs +30 -2
- package/dist/index148.mjs +18 -2
- package/dist/index149.mjs +2 -2
- package/dist/index150.mjs +2 -18
- package/dist/index151.mjs +2 -32
- package/dist/index152.mjs +2 -38
- package/dist/index153.mjs +67 -13
- package/dist/index154.mjs +2 -18
- package/dist/index155.mjs +53 -2
- package/dist/index156.mjs +2 -20
- package/dist/index157.mjs +29 -39
- package/dist/index158.mjs +152 -2
- package/dist/index159.mjs +2 -30
- package/dist/index160.mjs +2 -18
- package/dist/index161.mjs +19 -2
- package/dist/index162.mjs +2 -2
- package/dist/index163.mjs +2 -2
- package/dist/index164.mjs +26 -2
- package/dist/index165.mjs +2 -72
- package/dist/index166.mjs +2 -2
- package/dist/index167.mjs +20 -49
- package/dist/index168.mjs +23 -2
- package/dist/index169.mjs +2 -36
- package/dist/index170.mjs +2 -152
- package/dist/index171.mjs +2 -2
- package/dist/index172.mjs +23 -2
- package/dist/index173.mjs +2 -19
- package/dist/index174.mjs +23 -2
- package/dist/index176.mjs +2 -26
- package/dist/index177.mjs +2 -2
- package/dist/index178.mjs +23 -2
- package/dist/index179.mjs +2 -24
- package/dist/index180.mjs +15 -15
- package/dist/index181.mjs +2 -2
- package/dist/index182.mjs +2 -2
- package/dist/index183.mjs +2 -2
- package/dist/index184.mjs +2 -23
- package/dist/index185.mjs +2 -2
- package/dist/index186.mjs +2 -23
- package/dist/index187.mjs +2 -2
- package/dist/index188.mjs +2 -2
- package/dist/index189.mjs +127 -2
- package/dist/index190.mjs +2 -23
- package/dist/index191.mjs +74 -2
- package/dist/index192.mjs +71 -20
- package/dist/index193.mjs +21 -2
- package/dist/index194.mjs +56 -2
- package/dist/index195.mjs +29 -2
- package/dist/index196.mjs +7 -2
- package/dist/index197.mjs +52 -2
- package/dist/index198.mjs +6 -2
- package/dist/index199.mjs +12 -2
- package/dist/index2.mjs +10 -10
- package/dist/index20.mjs +2 -2
- package/dist/index200.mjs +7 -2
- package/dist/index201.mjs +28 -127
- package/dist/index202.mjs +2 -2
- package/dist/index203.mjs +69 -73
- package/dist/index204.mjs +164 -71
- package/dist/index205.mjs +2 -31
- package/dist/index206.mjs +2 -11
- package/dist/index207.mjs +2 -4
- package/dist/index208.mjs +2 -4
- package/dist/index209.mjs +2 -13
- package/dist/index21.mjs +2 -2
- package/dist/index210.mjs +2 -7
- package/dist/index211.mjs +107 -11
- package/dist/index212.mjs +2 -5
- package/dist/index213.mjs +2 -33
- package/dist/index214.mjs +2 -31
- package/dist/index215.mjs +2 -28
- package/dist/index216.mjs +241 -58
- package/dist/index218.mjs +33 -2
- package/dist/index219.mjs +65 -2
- package/dist/index220.mjs +25 -2
- package/dist/index221.mjs +2 -2
- package/dist/index222.mjs +37 -2
- package/dist/index225.mjs +2 -108
- package/dist/index226.mjs +2 -2
- package/dist/index227.mjs +2 -2
- package/dist/index228.mjs +2 -2
- package/dist/index229.mjs +2 -37
- package/dist/index231.mjs +2 -244
- package/dist/index232.mjs +2 -2
- package/dist/index233.mjs +4 -33
- package/dist/index234.mjs +2 -65
- package/dist/index235.mjs +2 -25
- package/dist/index236.mjs +31 -2
- package/dist/index237.mjs +11 -2
- package/dist/index238.mjs +4 -2
- package/dist/index239.mjs +4 -2
- package/dist/index240.mjs +13 -2
- package/dist/index241.mjs +7 -2
- package/dist/index242.mjs +12 -2
- package/dist/index243.mjs +5 -2
- package/dist/index244.mjs +33 -2
- package/dist/index245.mjs +31 -4
- package/dist/index246.mjs +28 -2
- package/dist/index247.mjs +61 -2
- package/dist/index248.mjs +2 -2
- package/dist/index249.mjs +2 -18
- package/dist/index25.mjs +53 -48
- package/dist/index250.mjs +13 -42
- package/dist/index251.mjs +47 -2
- package/dist/index252.mjs +2 -2
- package/dist/index257.mjs +1 -2
- package/dist/index258.mjs +3 -2
- package/dist/index259.mjs +2 -2
- package/dist/index260.mjs +2 -17
- package/dist/index261.mjs +15 -11
- package/dist/index262.mjs +13 -6
- package/dist/index263.mjs +6 -30
- package/dist/index264.mjs +30 -2
- package/dist/index3.mjs +133 -102
- package/dist/index32.mjs +26 -26
- package/dist/index37.mjs +2 -2
- package/dist/index38.mjs +1 -1
- package/dist/index4.mjs +50 -49
- package/dist/index42.mjs +1 -1
- package/dist/index47.mjs +17 -17
- package/dist/index48.mjs +2 -2
- package/dist/index49.mjs +59 -59
- package/dist/index50.mjs +50 -50
- package/dist/index51.mjs +48 -48
- package/dist/index52.mjs +56 -56
- package/dist/index53.mjs +39 -39
- package/dist/index54.mjs +55 -55
- package/dist/index55.mjs +15 -15
- package/dist/index56.mjs +10 -10
- package/dist/index57.mjs +23 -23
- package/dist/index58.mjs +64 -64
- package/dist/index59.mjs +73 -73
- package/dist/index60.mjs +21 -20
- package/dist/index61.mjs +2 -24
- package/dist/index63.mjs +23 -2
- package/dist/index66.mjs +2 -2
- package/dist/index75.mjs +2 -235
- package/dist/index76.mjs +233 -4
- package/dist/index77.mjs +5 -133
- package/dist/index78.mjs +129 -63
- package/dist/index79.mjs +67 -86
- package/dist/index80.mjs +85 -27
- package/dist/index81.mjs +28 -8
- package/dist/index82.mjs +8 -74
- package/dist/index83.mjs +74 -3
- package/dist/index84.mjs +4 -2
- package/dist/index85.mjs +2 -83
- package/dist/index86.mjs +81 -52
- package/dist/index87.mjs +53 -5
- package/dist/index88.mjs +5 -4
- package/dist/index89.mjs +4 -178
- package/dist/index90.mjs +174 -48
- package/dist/index91.mjs +51 -67
- package/dist/index92.mjs +69 -34
- package/dist/index93.mjs +31 -40
- package/dist/index94.mjs +43 -2
- package/dist/index96.mjs +1 -1
- package/dist/index97.mjs +1 -1
- package/dist/index98.mjs +6 -6
- package/dist/index99.mjs +4 -4
- package/dist/providers/MetaPixelProvider.d.ts +10 -5
- package/dist/providers/MetaPixelProvider.d.ts.map +1 -1
- package/dist/providers/StorefrontProvider.d.ts.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +12 -11
- package/src/components/CartItem.stories.tsx +5 -5
- package/src/components/Checkout.stories.tsx +16 -15
- package/src/components/Checkout.tsx +42 -0
- package/src/components/ShoppingCart.stories.tsx +17 -16
- package/src/components/ShoppingCart.tsx +3 -11
- package/src/contexts/CartContext.tsx +70 -6
- package/src/providers/MetaPixelProvider.tsx +24 -16
- package/src/providers/StorefrontProvider.tsx +4 -1
- package/src/test-utils/MockCartProvider.tsx +31 -25
package/dist/index263.mjs
CHANGED
|
@@ -1,33 +1,9 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
write(e, t, n, i, s, u) {
|
|
8
|
-
const o = [e + "=" + encodeURIComponent(t)];
|
|
9
|
-
r.isNumber(n) && o.push("expires=" + new Date(n).toGMTString()), r.isString(i) && o.push("path=" + i), r.isString(s) && o.push("domain=" + s), u === !0 && o.push("secure"), document.cookie = o.join("; ");
|
|
10
|
-
},
|
|
11
|
-
read(e) {
|
|
12
|
-
const t = document.cookie.match(new RegExp("(^|;\\s*)(" + e + ")=([^;]*)"));
|
|
13
|
-
return t ? decodeURIComponent(t[3]) : null;
|
|
14
|
-
},
|
|
15
|
-
remove(e) {
|
|
16
|
-
this.write(e, "", Date.now() - 864e5);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
) : (
|
|
20
|
-
// Non-standard browser env (web workers, react-native) lack needed support.
|
|
21
|
-
{
|
|
22
|
-
write() {
|
|
23
|
-
},
|
|
24
|
-
read() {
|
|
25
|
-
return null;
|
|
26
|
-
},
|
|
27
|
-
remove() {
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
);
|
|
2
|
+
import o from "./index200.mjs";
|
|
3
|
+
const n = o.hasStandardBrowserEnv ? /* @__PURE__ */ ((r, e) => (t) => (t = new URL(t, o.origin), r.protocol === t.protocol && r.host === t.host && (e || r.port === t.port)))(
|
|
4
|
+
new URL(o.origin),
|
|
5
|
+
o.navigator && /(msie|trident)/i.test(o.navigator.userAgent)
|
|
6
|
+
) : () => !0;
|
|
31
7
|
export {
|
|
32
|
-
|
|
8
|
+
n as default
|
|
33
9
|
};
|
package/dist/index264.mjs
CHANGED
|
@@ -1,5 +1,33 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
|
|
2
|
+
import r from "./index76.mjs";
|
|
3
|
+
import c from "./index200.mjs";
|
|
4
|
+
const p = c.hasStandardBrowserEnv ? (
|
|
5
|
+
// Standard browser envs support document.cookie
|
|
6
|
+
{
|
|
7
|
+
write(e, t, n, i, s, u) {
|
|
8
|
+
const o = [e + "=" + encodeURIComponent(t)];
|
|
9
|
+
r.isNumber(n) && o.push("expires=" + new Date(n).toGMTString()), r.isString(i) && o.push("path=" + i), r.isString(s) && o.push("domain=" + s), u === !0 && o.push("secure"), document.cookie = o.join("; ");
|
|
10
|
+
},
|
|
11
|
+
read(e) {
|
|
12
|
+
const t = document.cookie.match(new RegExp("(^|;\\s*)(" + e + ")=([^;]*)"));
|
|
13
|
+
return t ? decodeURIComponent(t[3]) : null;
|
|
14
|
+
},
|
|
15
|
+
remove(e) {
|
|
16
|
+
this.write(e, "", Date.now() - 864e5);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
) : (
|
|
20
|
+
// Non-standard browser env (web workers, react-native) lack needed support.
|
|
21
|
+
{
|
|
22
|
+
write() {
|
|
23
|
+
},
|
|
24
|
+
read() {
|
|
25
|
+
return null;
|
|
26
|
+
},
|
|
27
|
+
remove() {
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
);
|
|
3
31
|
export {
|
|
4
|
-
|
|
32
|
+
p as default
|
|
5
33
|
};
|
package/dist/index3.mjs
CHANGED
|
@@ -1,170 +1,201 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { jsxs as
|
|
3
|
-
import { createContext as
|
|
2
|
+
import { jsxs as ct, jsx as st } from "react/jsx-runtime";
|
|
3
|
+
import { createContext as at, useState as _, useRef as g, useCallback as c, useEffect as d, useContext as ut } from "react";
|
|
4
4
|
import "./index20.mjs";
|
|
5
|
-
import { useGetCart as
|
|
5
|
+
import { useGetCart as it, useCreateCart as ft, useAddCartItem as mt, useUpdateCartItem as dt, useRemoveCartItem as lt, useApplyDiscount as pt, useRemoveDiscount as Ct, useUpdateCart as wt, useCheckoutCart as It } from "./index32.mjs";
|
|
6
6
|
import "@tanstack/react-query";
|
|
7
|
-
import { ShoppingCart as
|
|
8
|
-
import { useMetaPixel as
|
|
9
|
-
const
|
|
10
|
-
function
|
|
11
|
-
const [t,
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
7
|
+
import { ShoppingCart as ht } from "./index10.mjs";
|
|
8
|
+
import { useMetaPixel as vt } from "./index4.mjs";
|
|
9
|
+
const l = "oms_cart_id", U = at(null);
|
|
10
|
+
function bt({ children: p, brandSlug: i, initialCartId: C, shoppingCartProps: L }) {
|
|
11
|
+
const [t, f] = _(C || null), [A, S] = _(!1), [j, G] = _(!1), b = g(!1), M = g(!1), h = g(!1), { trackAddToCart: v, trackInitiateCheckout: E, trackPurchase: O } = vt(), N = c(() => {
|
|
12
|
+
if (typeof document > "u") return { fbc: void 0, fbp: void 0 };
|
|
13
|
+
const e = (r) => {
|
|
14
|
+
var o;
|
|
15
|
+
const n = `; ${document.cookie}`.split(`; ${r}=`);
|
|
16
|
+
if (n.length === 2) return (o = n.pop()) == null ? void 0 : o.split(";").shift();
|
|
17
|
+
};
|
|
18
|
+
return {
|
|
19
|
+
fbc: e("_fbc"),
|
|
20
|
+
fbp: e("_fbp")
|
|
21
|
+
};
|
|
22
|
+
}, []);
|
|
23
|
+
d(() => {
|
|
24
|
+
G(!0);
|
|
25
|
+
}, []), d(() => {
|
|
26
|
+
if (C || b.current) return;
|
|
27
|
+
b.current = !0;
|
|
17
28
|
const r = new URLSearchParams(window.location.search).get("cartId");
|
|
18
29
|
if (r) {
|
|
19
|
-
|
|
30
|
+
f(r);
|
|
20
31
|
return;
|
|
21
32
|
}
|
|
22
|
-
const s = localStorage.getItem(
|
|
23
|
-
s &&
|
|
24
|
-
}, [
|
|
25
|
-
const { data:
|
|
33
|
+
const s = localStorage.getItem(l);
|
|
34
|
+
s && f(s);
|
|
35
|
+
}, [C]);
|
|
36
|
+
const { data: m, isLoading: q, error: w, refetch: a } = it(t || "", {
|
|
26
37
|
enabled: !!t,
|
|
27
38
|
retry: !1
|
|
28
39
|
// Don't retry on failure - cart might be invalid/expired
|
|
29
|
-
}),
|
|
40
|
+
}), y = ft({
|
|
30
41
|
onSuccess: (e) => {
|
|
31
42
|
if ("error" in e) {
|
|
32
43
|
console.error("Failed to create cart:", e.error);
|
|
33
44
|
return;
|
|
34
45
|
}
|
|
35
|
-
|
|
46
|
+
f(e.id);
|
|
36
47
|
},
|
|
37
48
|
onError: (e) => {
|
|
38
49
|
console.error("Failed to create cart:", e);
|
|
39
50
|
},
|
|
40
51
|
retry: 10
|
|
41
52
|
});
|
|
42
|
-
|
|
43
|
-
if (
|
|
44
|
-
|
|
53
|
+
d(() => {
|
|
54
|
+
if (M.current) return;
|
|
55
|
+
M.current = !0;
|
|
45
56
|
const e = setTimeout(() => {
|
|
46
|
-
!(typeof window < "u" ? localStorage.getItem(
|
|
57
|
+
!(typeof window < "u" ? localStorage.getItem(l) : null) && !C && y.mutate(i);
|
|
47
58
|
}, 150);
|
|
48
59
|
return () => clearTimeout(e);
|
|
49
|
-
}, []),
|
|
50
|
-
w && t && !
|
|
51
|
-
|
|
60
|
+
}, []), d(() => {
|
|
61
|
+
w && t && !h.current && (h.current = !0, console.warn("Cart fetch failed, creating new cart:", w), f(null), typeof window < "u" && localStorage.removeItem(l), setTimeout(() => {
|
|
62
|
+
y.mutate(i), h.current = !1;
|
|
52
63
|
}, 100));
|
|
53
|
-
}, [w, t,
|
|
54
|
-
const
|
|
55
|
-
onSuccess: () =>
|
|
56
|
-
}),
|
|
57
|
-
onSuccess: () =>
|
|
58
|
-
}),
|
|
59
|
-
onSuccess: () =>
|
|
60
|
-
}),
|
|
61
|
-
onSuccess: () =>
|
|
62
|
-
}),
|
|
63
|
-
onSuccess: () =>
|
|
64
|
-
}),
|
|
65
|
-
onSuccess: () =>
|
|
64
|
+
}, [w, t, i]);
|
|
65
|
+
const H = mt(t || "", {
|
|
66
|
+
onSuccess: () => a()
|
|
67
|
+
}), K = dt(t || "", {
|
|
68
|
+
onSuccess: () => a()
|
|
69
|
+
}), Y = lt(t || "", {
|
|
70
|
+
onSuccess: () => a()
|
|
71
|
+
}), z = pt(t || "", {
|
|
72
|
+
onSuccess: () => a()
|
|
73
|
+
}), B = Ct(t || "", {
|
|
74
|
+
onSuccess: () => a()
|
|
75
|
+
}), J = wt(t || "", {
|
|
76
|
+
onSuccess: () => a(),
|
|
66
77
|
retry: 3
|
|
67
|
-
}),
|
|
78
|
+
}), Q = It(t || "", {
|
|
68
79
|
onSuccess: (e) => {
|
|
69
|
-
var
|
|
80
|
+
var n;
|
|
70
81
|
if ("error" in e) return;
|
|
71
|
-
const r = ((
|
|
72
|
-
var
|
|
82
|
+
const r = ((n = e.items) == null ? void 0 : n.map((o) => {
|
|
83
|
+
var u;
|
|
73
84
|
return {
|
|
74
|
-
id: ((
|
|
75
|
-
quantity:
|
|
76
|
-
item_price: Number(
|
|
85
|
+
id: ((u = o.variant) == null ? void 0 : u.sku) || "",
|
|
86
|
+
quantity: o.quantity,
|
|
87
|
+
item_price: Number(o.priceAtPurchase)
|
|
77
88
|
};
|
|
78
|
-
})) || []
|
|
79
|
-
|
|
89
|
+
})) || [], s = `order_${e.id}`;
|
|
90
|
+
O(
|
|
80
91
|
Number(e.totalPrice),
|
|
81
92
|
"NGN",
|
|
82
93
|
e.id,
|
|
83
|
-
r
|
|
94
|
+
r,
|
|
95
|
+
s
|
|
84
96
|
);
|
|
85
97
|
}
|
|
86
98
|
});
|
|
87
|
-
|
|
88
|
-
t && typeof window < "u" && localStorage.setItem(
|
|
99
|
+
d(() => {
|
|
100
|
+
t && typeof window < "u" && localStorage.setItem(l, t);
|
|
89
101
|
}, [t]);
|
|
90
|
-
const
|
|
91
|
-
async (e, r, s,
|
|
102
|
+
const V = c(
|
|
103
|
+
async (e, r, s, n, o) => {
|
|
104
|
+
var $;
|
|
92
105
|
if (!t) throw new Error("No cart ID");
|
|
93
|
-
|
|
106
|
+
const { fbc: u, fbp: D } = N(), R = await H.mutateAsync({ sku: n, quantity: o, fbc: u, fbp: D });
|
|
107
|
+
if ("error" in R) return;
|
|
108
|
+
const I = ($ = R.items) == null ? void 0 : $.filter(
|
|
109
|
+
(k) => {
|
|
110
|
+
var F;
|
|
111
|
+
return ((F = k.variant) == null ? void 0 : F.sku) === n;
|
|
112
|
+
}
|
|
113
|
+
), T = I == null ? void 0 : I[I.length - 1];
|
|
114
|
+
if (T) {
|
|
115
|
+
const k = `cart_${t}_item_${T.id}`;
|
|
116
|
+
v(e, r, s, o, k);
|
|
117
|
+
} else
|
|
118
|
+
v(e, r, s, o);
|
|
94
119
|
},
|
|
95
120
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
96
|
-
[t,
|
|
97
|
-
),
|
|
121
|
+
[t, v, N]
|
|
122
|
+
), W = c(
|
|
98
123
|
async (e, r) => {
|
|
99
124
|
if (!t) throw new Error("No cart ID");
|
|
100
|
-
await
|
|
125
|
+
await K.mutateAsync({ itemId: e, quantity: r });
|
|
101
126
|
},
|
|
102
127
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
103
128
|
[t]
|
|
104
|
-
),
|
|
129
|
+
), X = c(
|
|
105
130
|
async (e) => {
|
|
106
131
|
if (!t) throw new Error("No cart ID");
|
|
107
|
-
await
|
|
132
|
+
await Y.mutateAsync(e);
|
|
108
133
|
},
|
|
109
134
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
110
135
|
[t]
|
|
111
|
-
),
|
|
136
|
+
), Z = c(
|
|
112
137
|
async (e) => {
|
|
113
138
|
if (!t) throw new Error("No cart ID");
|
|
114
|
-
await
|
|
139
|
+
await z.mutateAsync({ code: e });
|
|
115
140
|
},
|
|
116
141
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
117
142
|
[t]
|
|
118
|
-
),
|
|
143
|
+
), tt = c(async () => {
|
|
119
144
|
if (!t) throw new Error("No cart ID");
|
|
120
|
-
await
|
|
121
|
-
}, [t]),
|
|
122
|
-
|
|
123
|
-
}, []),
|
|
124
|
-
|
|
125
|
-
}, [
|
|
126
|
-
|
|
127
|
-
}, []),
|
|
128
|
-
|
|
129
|
-
}, []),
|
|
130
|
-
|
|
145
|
+
await B.mutateAsync();
|
|
146
|
+
}, [t]), P = c(() => {
|
|
147
|
+
f(null), typeof window < "u" && localStorage.removeItem(l);
|
|
148
|
+
}, []), et = c(() => {
|
|
149
|
+
P(), y.mutate(i);
|
|
150
|
+
}, [i]), rt = c(() => {
|
|
151
|
+
S(!0);
|
|
152
|
+
}, []), x = c(() => {
|
|
153
|
+
S(!1);
|
|
154
|
+
}, []), ot = c(() => {
|
|
155
|
+
var n, o;
|
|
156
|
+
if (!m || !t) return;
|
|
157
|
+
const e = Number(((n = m.pricing) == null ? void 0 : n.total) || 0), r = ((o = m.items) == null ? void 0 : o.reduce((u, D) => u + D.quantity, 0)) || 0, s = `cart_${t}_checkout`;
|
|
158
|
+
E(e, r, s);
|
|
159
|
+
}, [m, t, E]), nt = {
|
|
160
|
+
cart: m || null,
|
|
131
161
|
cartId: t,
|
|
132
|
-
isLoading:
|
|
162
|
+
isLoading: q,
|
|
133
163
|
error: w,
|
|
134
|
-
updateCartMutation:
|
|
135
|
-
checkoutMutation:
|
|
136
|
-
addItem:
|
|
137
|
-
updateItem:
|
|
138
|
-
removeItem:
|
|
139
|
-
applyDiscount:
|
|
140
|
-
removeDiscount:
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
164
|
+
updateCartMutation: J,
|
|
165
|
+
checkoutMutation: Q,
|
|
166
|
+
addItem: V,
|
|
167
|
+
updateItem: W,
|
|
168
|
+
removeItem: X,
|
|
169
|
+
applyDiscount: Z,
|
|
170
|
+
removeDiscount: tt,
|
|
171
|
+
trackCheckoutInitiated: ot,
|
|
172
|
+
clearCart: P,
|
|
173
|
+
clearAndCreateNewCart: et,
|
|
174
|
+
refetch: a,
|
|
175
|
+
isOpen: A,
|
|
176
|
+
open: rt,
|
|
177
|
+
close: x
|
|
147
178
|
};
|
|
148
|
-
return /* @__PURE__ */
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
179
|
+
return /* @__PURE__ */ ct(U.Provider, { value: nt, children: [
|
|
180
|
+
p,
|
|
181
|
+
j && /* @__PURE__ */ st(
|
|
182
|
+
ht,
|
|
152
183
|
{
|
|
153
|
-
isOpen:
|
|
154
|
-
onClose:
|
|
155
|
-
...
|
|
184
|
+
isOpen: A,
|
|
185
|
+
onClose: x,
|
|
186
|
+
...L
|
|
156
187
|
}
|
|
157
188
|
)
|
|
158
189
|
] });
|
|
159
190
|
}
|
|
160
|
-
function
|
|
161
|
-
const
|
|
162
|
-
if (!
|
|
191
|
+
function Mt() {
|
|
192
|
+
const p = ut(U);
|
|
193
|
+
if (!p)
|
|
163
194
|
throw new Error("useCart must be used within CartProvider");
|
|
164
|
-
return
|
|
195
|
+
return p;
|
|
165
196
|
}
|
|
166
197
|
export {
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
198
|
+
U as CartContext,
|
|
199
|
+
bt as CartProvider,
|
|
200
|
+
Mt as useCart
|
|
170
201
|
};
|
package/dist/index32.mjs
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { useQueryClient as s, useMutation as i } from "@tanstack/react-query";
|
|
3
|
-
import { useQueryUnwrapped as
|
|
3
|
+
import { useQueryUnwrapped as a } from "./index67.mjs";
|
|
4
4
|
import { queryKeys as r } from "./index29.mjs";
|
|
5
|
-
import { updateCart as c, createCart as l, applyDiscount as y, removeDiscount as m, addCartItem as
|
|
6
|
-
function
|
|
7
|
-
return
|
|
5
|
+
import { updateCart as c, createCart as l, applyDiscount as y, removeDiscount as m, addCartItem as p, updateCartItem as C, removeCartItem as q, checkoutCart as f, fetchCart as d } from "./index25.mjs";
|
|
6
|
+
function Q(e, t) {
|
|
7
|
+
return a({
|
|
8
8
|
queryKey: r.public.carts.detail(e),
|
|
9
|
-
queryFn: () =>
|
|
9
|
+
queryFn: () => d(e),
|
|
10
10
|
...t
|
|
11
11
|
});
|
|
12
12
|
}
|
|
13
13
|
function S(e, t) {
|
|
14
|
-
const
|
|
14
|
+
const n = s();
|
|
15
15
|
return i({
|
|
16
|
-
mutationFn: (
|
|
16
|
+
mutationFn: (u) => c(e, u),
|
|
17
17
|
onSuccess: () => {
|
|
18
|
-
|
|
18
|
+
n.invalidateQueries({ queryKey: r.public.carts.detail(e) });
|
|
19
19
|
},
|
|
20
20
|
...t
|
|
21
21
|
});
|
|
@@ -27,61 +27,61 @@ function D(e) {
|
|
|
27
27
|
});
|
|
28
28
|
}
|
|
29
29
|
function h(e, t) {
|
|
30
|
-
const
|
|
30
|
+
const n = s();
|
|
31
31
|
return i({
|
|
32
|
-
mutationFn: (
|
|
32
|
+
mutationFn: (u) => y(e, u.code),
|
|
33
33
|
onSuccess: () => {
|
|
34
|
-
|
|
34
|
+
n.invalidateQueries({ queryKey: r.public.carts.detail(e) });
|
|
35
35
|
},
|
|
36
36
|
...t
|
|
37
37
|
});
|
|
38
38
|
}
|
|
39
39
|
function k(e, t) {
|
|
40
|
-
const
|
|
40
|
+
const n = s();
|
|
41
41
|
return i({
|
|
42
42
|
mutationFn: () => m(e),
|
|
43
43
|
onSuccess: () => {
|
|
44
|
-
|
|
44
|
+
n.invalidateQueries({ queryKey: r.public.carts.detail(e) });
|
|
45
45
|
},
|
|
46
46
|
...t
|
|
47
47
|
});
|
|
48
48
|
}
|
|
49
49
|
function U(e, t) {
|
|
50
|
-
const
|
|
50
|
+
const n = s();
|
|
51
51
|
return i({
|
|
52
|
-
mutationFn: (
|
|
52
|
+
mutationFn: (u) => p(e, u.sku, u.quantity, u.fbc, u.fbp),
|
|
53
53
|
onSuccess: () => {
|
|
54
|
-
|
|
54
|
+
n.invalidateQueries({ queryKey: r.public.carts.detail(e) });
|
|
55
55
|
},
|
|
56
56
|
...t
|
|
57
57
|
});
|
|
58
58
|
}
|
|
59
59
|
function A(e, t) {
|
|
60
|
-
const
|
|
60
|
+
const n = s();
|
|
61
61
|
return i({
|
|
62
|
-
mutationFn: ({ itemId:
|
|
62
|
+
mutationFn: ({ itemId: u, quantity: o }) => C(e, u, o),
|
|
63
63
|
onSuccess: () => {
|
|
64
|
-
|
|
64
|
+
n.invalidateQueries({ queryKey: r.public.carts.detail(e) });
|
|
65
65
|
},
|
|
66
66
|
...t
|
|
67
67
|
});
|
|
68
68
|
}
|
|
69
69
|
function R(e, t) {
|
|
70
|
-
const
|
|
70
|
+
const n = s();
|
|
71
71
|
return i({
|
|
72
|
-
mutationFn: (
|
|
72
|
+
mutationFn: (u) => q(e, u),
|
|
73
73
|
onSuccess: () => {
|
|
74
|
-
|
|
74
|
+
n.invalidateQueries({ queryKey: r.public.carts.detail(e) });
|
|
75
75
|
},
|
|
76
76
|
...t
|
|
77
77
|
});
|
|
78
78
|
}
|
|
79
79
|
function w(e, t) {
|
|
80
|
-
const
|
|
80
|
+
const n = s();
|
|
81
81
|
return i({
|
|
82
|
-
mutationFn: (
|
|
82
|
+
mutationFn: (u) => f(e, u),
|
|
83
83
|
onSuccess: () => {
|
|
84
|
-
|
|
84
|
+
n.invalidateQueries({ queryKey: r.public.carts.detail(e) });
|
|
85
85
|
},
|
|
86
86
|
...t
|
|
87
87
|
});
|
|
@@ -91,7 +91,7 @@ export {
|
|
|
91
91
|
h as useApplyDiscount,
|
|
92
92
|
w as useCheckoutCart,
|
|
93
93
|
D as useCreateCart,
|
|
94
|
-
|
|
94
|
+
Q as useGetCart,
|
|
95
95
|
R as useRemoveCartItem,
|
|
96
96
|
k as useRemoveDiscount,
|
|
97
97
|
S as useUpdateCart,
|
package/dist/index37.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { getDefaultExportFromCjs as x } from "./
|
|
3
|
-
import { __module as q } from "./
|
|
2
|
+
import { getDefaultExportFromCjs as x } from "./index60.mjs";
|
|
3
|
+
import { __module as q } from "./index61.mjs";
|
|
4
4
|
function S(b, p) {
|
|
5
5
|
for (var s = 0; s < p.length; s++) {
|
|
6
6
|
const c = p[s];
|
package/dist/index38.mjs
CHANGED
package/dist/index4.mjs
CHANGED
|
@@ -1,92 +1,93 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { jsx as
|
|
3
|
-
import { createContext as
|
|
4
|
-
const
|
|
5
|
-
function
|
|
6
|
-
const [
|
|
7
|
-
|
|
2
|
+
import { jsx as w } from "react/jsx-runtime";
|
|
3
|
+
import { createContext as h, useContext as _, useState as P, useEffect as M } from "react";
|
|
4
|
+
const f = h(null);
|
|
5
|
+
function T({ children: r, pixelId: a, debug: p }) {
|
|
6
|
+
const [l, x] = P(!1), [s, k] = P(null), g = typeof process < "u" && process.env.NODE_ENV === "development", i = p ?? g;
|
|
7
|
+
M(() => {
|
|
8
8
|
if (!(typeof window > "u")) {
|
|
9
|
-
if (!
|
|
10
|
-
|
|
9
|
+
if (!a) {
|
|
10
|
+
i && console.log("[Meta Pixel] No pixel ID provided, tracking disabled");
|
|
11
11
|
return;
|
|
12
12
|
}
|
|
13
13
|
import("./index37.mjs").then((e) => e.f).then((e) => {
|
|
14
|
-
const t = e.default,
|
|
14
|
+
const t = e.default, o = {
|
|
15
15
|
autoConfig: !0,
|
|
16
|
-
debug:
|
|
16
|
+
debug: i
|
|
17
17
|
};
|
|
18
|
-
t.init(
|
|
18
|
+
t.init(a, void 0, o), k(t), x(!0), i && console.log("[Meta Pixel] Initialized with ID:", a);
|
|
19
19
|
}).catch((e) => {
|
|
20
20
|
console.error("[Meta Pixel] Failed to load react-facebook-pixel:", e);
|
|
21
21
|
});
|
|
22
22
|
}
|
|
23
|
-
}, [
|
|
24
|
-
const
|
|
25
|
-
if (!
|
|
26
|
-
|
|
23
|
+
}, [a, i]);
|
|
24
|
+
const c = (e, t, o) => {
|
|
25
|
+
if (!l || !s) {
|
|
26
|
+
i && console.log("[Meta Pixel] Track (not initialized):", e, t);
|
|
27
27
|
return;
|
|
28
28
|
}
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
29
|
+
const n = o ? { ...t, eventID: o } : t;
|
|
30
|
+
s.track(e, n), i && console.log("[Meta Pixel] Track:", e, n, o ? `(ID: ${o})` : "");
|
|
31
|
+
}, m = {
|
|
32
|
+
track: c,
|
|
32
33
|
trackPageView: () => {
|
|
33
|
-
if (!
|
|
34
|
-
|
|
34
|
+
if (!l || !s) {
|
|
35
|
+
i && console.log("[Meta Pixel] PageView (not initialized)");
|
|
35
36
|
return;
|
|
36
37
|
}
|
|
37
|
-
|
|
38
|
+
s.pageView(), i && console.log("[Meta Pixel] PageView");
|
|
38
39
|
},
|
|
39
|
-
trackProductView: (e, t,
|
|
40
|
-
|
|
40
|
+
trackProductView: (e, t, o, n) => {
|
|
41
|
+
c("ViewContent", {
|
|
41
42
|
content_ids: [e],
|
|
42
43
|
content_name: t,
|
|
43
44
|
content_type: "product",
|
|
44
|
-
value:
|
|
45
|
+
value: o,
|
|
45
46
|
currency: "NGN"
|
|
46
|
-
});
|
|
47
|
+
}, n);
|
|
47
48
|
},
|
|
48
|
-
trackAddToCart: (e, t,
|
|
49
|
-
|
|
49
|
+
trackAddToCart: (e, t, o, n, u) => {
|
|
50
|
+
c("AddToCart", {
|
|
50
51
|
content_ids: [e],
|
|
51
52
|
content_name: t,
|
|
52
53
|
content_type: "product",
|
|
53
|
-
value:
|
|
54
|
+
value: o,
|
|
54
55
|
currency: "NGN",
|
|
55
|
-
num_items:
|
|
56
|
-
});
|
|
56
|
+
num_items: n
|
|
57
|
+
}, u);
|
|
57
58
|
},
|
|
58
|
-
trackInitiateCheckout: (e, t) => {
|
|
59
|
-
|
|
59
|
+
trackInitiateCheckout: (e, t, o) => {
|
|
60
|
+
c("InitiateCheckout", {
|
|
60
61
|
value: e,
|
|
61
62
|
currency: "NGN",
|
|
62
63
|
num_items: t
|
|
63
|
-
});
|
|
64
|
+
}, o);
|
|
64
65
|
},
|
|
65
|
-
trackPurchase: (e, t,
|
|
66
|
-
|
|
66
|
+
trackPurchase: (e, t, o, n, u) => {
|
|
67
|
+
c("Purchase", {
|
|
67
68
|
value: e,
|
|
68
69
|
currency: t,
|
|
69
70
|
content_type: "product",
|
|
70
|
-
contents:
|
|
71
|
-
id:
|
|
71
|
+
contents: n.map((d) => ({
|
|
72
|
+
id: d.id,
|
|
72
73
|
// SKU
|
|
73
|
-
quantity:
|
|
74
|
-
item_price:
|
|
74
|
+
quantity: d.quantity,
|
|
75
|
+
item_price: d.item_price
|
|
75
76
|
})),
|
|
76
|
-
order_id:
|
|
77
|
-
});
|
|
77
|
+
order_id: o
|
|
78
|
+
}, u);
|
|
78
79
|
},
|
|
79
|
-
isInitialized:
|
|
80
|
+
isInitialized: l
|
|
80
81
|
};
|
|
81
|
-
return /* @__PURE__ */
|
|
82
|
+
return /* @__PURE__ */ w(f.Provider, { value: m, children: r });
|
|
82
83
|
}
|
|
83
|
-
function
|
|
84
|
-
const
|
|
85
|
-
if (!
|
|
84
|
+
function D() {
|
|
85
|
+
const r = _(f);
|
|
86
|
+
if (!r)
|
|
86
87
|
throw new Error("useMetaPixel must be used within MetaPixelProvider");
|
|
87
|
-
return
|
|
88
|
+
return r;
|
|
88
89
|
}
|
|
89
90
|
export {
|
|
90
|
-
|
|
91
|
-
|
|
91
|
+
T as MetaPixelProvider,
|
|
92
|
+
D as useMetaPixel
|
|
92
93
|
};
|