@picked/shopify 0.0.1-dev.1764902620487 → 0.0.1-dev.1764911630251
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const k=require("@picked/client"),f=require("../../ajax-api/index.js"),s=require("../../../picked-config-DfcDhMyM.cjs"),y=require("../../../global-obj-OziQiQ8j.cjs");function P(e,t){let o,c;return(...d)=>(c&&c.reject(new Error("Debounced")),new Promise((a,r)=>{c={resolve:a,reject:r};const g=async()=>{o=void 0;try{const l=await e(...d);c==null||c.resolve(l)}catch(l){c==null||c.reject(l)}finally{c=null}};clearTimeout(o),o=setTimeout(g,t)}))}const i={homepage:/^\/$/,page:/(?:^|\/)pages\/(?<pageHandle>[^/]+)\/?$/,blog:/(?:^|\/)blogs\/(?<blogHandle>[^/]+)\/?$/,article:/^\/blogs\/[^/]+\/(?<article>[^/]+)\/?$/,cart:/(?:^|\/)cart\/[^/]+$/,checkout:/^\/checkout\/.+/,appProxy:/^\/(?:a|apps|community|tools)\/(?<proxyTarget>[^/]+)/,accountWildcard:/^\/account\/.+/,accountLogin:/^\/account\/login(?:\/|$)/,accountRegister:/^\/account\/register(?:\/|$)/},n=(e,t)=>t?!!e.exec(t.pathname):!1,u=(e,t)=>{if(t){const o=e.exec(t.pathname);if(o)return o[1]}},p=e=>{var t,o;switch(e){case"product":return((t=s.getPickedConfigProduct())==null?void 0:t.handle)??!1;case"collection":return((o=s.getPickedConfigCollection())==null?void 0:o.handle)??!1;default:return!1}},b={"is-page":({location:e})=>n(i.page,e),"get-page-handle":({location:e})=>u(i.page,e),"is-product-page":()=>!!p("product"),"get-product-handle":()=>p("product"),"is-collection-page":()=>!!p("collection"),"get-collection-handle":()=>p("collection"),"is-blog-page":({location:e})=>n(i.blog,e),"get-blog-handle":({location:e})=>u(i.blog,e),"is-article-page":({location:e})=>n(i.article,e),"get-article-handle":({location:e})=>u(i.article,e),"is-app-proxy-page":({location:e})=>n(i.appProxy,e),"get-app-proxy-handle":({location:e})=>u(i.appProxy,e),"is-account-page":({location:e})=>n(i.accountWildcard,e),"is-login-page":({location:e})=>n(i.accountLogin,e),"is-register-page":({location:e})=>n(i.accountRegister,e),"is-cart-page":({location:e})=>n(i.cart,e),"is-checkout-page":({location:e})=>n(i.checkout,e),"is-homepage":({location:e})=>n(i.homepage,e)},C=()=>({name:"shopify",setup:e=>{let t={},o=0;const c=async()=>{if(o>=3)return;o++,await f.updateCart({attributes:t});const a=await f.getCart();for(const[r,g]of Object.entries(t))if(a.attributes[r]!==g)return c()},d=P(async()=>(o=0,c()),50);Object.entries(b).forEach(([a,r])=>{e.registerPredicate(`shopify-${a}`,r)}),k.supportsWindow()&&e.eventBus.watch(a=>{if(y.supportsShopifyAnalytics()&&(a.type==="session"&&globalThis.window.Shopify.analytics.publish("picked:session",{id:a.id}),a.type==="feature_decide"||a.type==="session")){const r=e.session;if(r){const g={"picked.id":r.id};typeof r.isUser<"u"&&(g["picked.is_user"]=r.isUser?"true":"false"),e.features.listStore.getState().forEach(l=>{if(l.isResolved){const h=l.getBucket();g[`picked.features.${l.id}`]=`${h.bucket}`}}),t={...t,...g},d()}}})}});exports.getPickedConfig=s.getPickedConfig;exports.getPickedConfigCollection=s.getPickedConfigCollection;exports.getPickedConfigCustomer=s.getPickedConfigCustomer;exports.getPickedConfigExperiments=s.getPickedConfigExperiments;exports.getPickedConfigFeatureExperiments=s.getPickedConfigFeatureExperiments;exports.getPickedConfigProduct=s.getPickedConfigProduct;exports.getPickedConfigStorefrontApiToken=s.getPickedConfigStorefrontApiToken;exports.getShopify=y.getShopify;exports.shopifyPlugin=C;
|
|
@@ -1,19 +1,28 @@
|
|
|
1
|
-
import { supportsWindow as
|
|
2
|
-
import { updateCart as
|
|
3
|
-
import { a as
|
|
4
|
-
import { c as
|
|
5
|
-
import { s as
|
|
6
|
-
import { g as
|
|
7
|
-
function
|
|
8
|
-
let
|
|
9
|
-
return (...c) => {
|
|
10
|
-
|
|
11
|
-
|
|
1
|
+
import { supportsWindow as f } from "@picked/client";
|
|
2
|
+
import { updateCart as h, getCart as y } from "../../ajax-api/index.js";
|
|
3
|
+
import { a as m, b } from "../../../picked-config-B69J6txs.js";
|
|
4
|
+
import { c as S, d as T, e as j, f as H, g as R } from "../../../picked-config-B69J6txs.js";
|
|
5
|
+
import { s as k } from "../../../global-obj-DQ6S7d00.js";
|
|
6
|
+
import { g as L } from "../../../global-obj-DQ6S7d00.js";
|
|
7
|
+
function P(e, t) {
|
|
8
|
+
let a, i;
|
|
9
|
+
return (...g) => (i && i.reject(new Error("Debounced")), new Promise((s, c) => {
|
|
10
|
+
i = { resolve: s, reject: c };
|
|
11
|
+
const n = async () => {
|
|
12
|
+
a = void 0;
|
|
13
|
+
try {
|
|
14
|
+
const p = await e(...g);
|
|
15
|
+
i == null || i.resolve(p);
|
|
16
|
+
} catch (p) {
|
|
17
|
+
i == null || i.reject(p);
|
|
18
|
+
} finally {
|
|
19
|
+
i = null;
|
|
20
|
+
}
|
|
12
21
|
};
|
|
13
|
-
clearTimeout(
|
|
14
|
-
};
|
|
22
|
+
clearTimeout(a), a = setTimeout(n, t);
|
|
23
|
+
}));
|
|
15
24
|
}
|
|
16
|
-
const
|
|
25
|
+
const o = {
|
|
17
26
|
homepage: /^\/$/,
|
|
18
27
|
page: /(?:^|\/)pages\/(?<pageHandle>[^/]+)\/?$/,
|
|
19
28
|
blog: /(?:^|\/)blogs\/(?<blogHandle>[^/]+)\/?$/,
|
|
@@ -24,89 +33,98 @@ const a = {
|
|
|
24
33
|
accountWildcard: /^\/account\/.+/,
|
|
25
34
|
accountLogin: /^\/account\/login(?:\/|$)/,
|
|
26
35
|
accountRegister: /^\/account\/register(?:\/|$)/
|
|
27
|
-
},
|
|
28
|
-
if (
|
|
29
|
-
const
|
|
30
|
-
if (
|
|
31
|
-
return
|
|
36
|
+
}, r = (e, t) => t ? !!e.exec(t.pathname) : !1, l = (e, t) => {
|
|
37
|
+
if (t) {
|
|
38
|
+
const a = e.exec(t.pathname);
|
|
39
|
+
if (a)
|
|
40
|
+
return a[1];
|
|
32
41
|
}
|
|
33
|
-
},
|
|
34
|
-
var
|
|
42
|
+
}, u = (e) => {
|
|
43
|
+
var t, a;
|
|
35
44
|
switch (e) {
|
|
36
45
|
case "product":
|
|
37
|
-
return ((
|
|
46
|
+
return ((t = b()) == null ? void 0 : t.handle) ?? !1;
|
|
38
47
|
case "collection":
|
|
39
|
-
return ((
|
|
48
|
+
return ((a = m()) == null ? void 0 : a.handle) ?? !1;
|
|
40
49
|
default:
|
|
41
50
|
return !1;
|
|
42
51
|
}
|
|
43
|
-
},
|
|
52
|
+
}, x = {
|
|
44
53
|
// Pages
|
|
45
|
-
"is-page": ({ location: e }) =>
|
|
46
|
-
"get-page-handle": ({ location: e }) =>
|
|
54
|
+
"is-page": ({ location: e }) => r(o.page, e),
|
|
55
|
+
"get-page-handle": ({ location: e }) => l(o.page, e),
|
|
47
56
|
// Products
|
|
48
|
-
"is-product-page": () => !!
|
|
49
|
-
"get-product-handle": () =>
|
|
57
|
+
"is-product-page": () => !!u("product"),
|
|
58
|
+
"get-product-handle": () => u("product"),
|
|
50
59
|
// Collections
|
|
51
|
-
"is-collection-page": () => !!
|
|
52
|
-
"get-collection-handle": () =>
|
|
60
|
+
"is-collection-page": () => !!u("collection"),
|
|
61
|
+
"get-collection-handle": () => u("collection"),
|
|
53
62
|
// Blogs
|
|
54
|
-
"is-blog-page": ({ location: e }) =>
|
|
55
|
-
"get-blog-handle": ({ location: e }) =>
|
|
63
|
+
"is-blog-page": ({ location: e }) => r(o.blog, e),
|
|
64
|
+
"get-blog-handle": ({ location: e }) => l(o.blog, e),
|
|
56
65
|
// Blog Articles
|
|
57
|
-
"is-article-page": ({ location: e }) =>
|
|
58
|
-
"get-article-handle": ({ location: e }) =>
|
|
66
|
+
"is-article-page": ({ location: e }) => r(o.article, e),
|
|
67
|
+
"get-article-handle": ({ location: e }) => l(o.article, e),
|
|
59
68
|
// Apps
|
|
60
|
-
"is-app-proxy-page": ({ location: e }) =>
|
|
61
|
-
"get-app-proxy-handle": ({ location: e }) =>
|
|
69
|
+
"is-app-proxy-page": ({ location: e }) => r(o.appProxy, e),
|
|
70
|
+
"get-app-proxy-handle": ({ location: e }) => l(o.appProxy, e),
|
|
62
71
|
// Account
|
|
63
|
-
"is-account-page": ({ location: e }) =>
|
|
64
|
-
"is-login-page": ({ location: e }) =>
|
|
65
|
-
"is-register-page": ({ location: e }) =>
|
|
72
|
+
"is-account-page": ({ location: e }) => r(o.accountWildcard, e),
|
|
73
|
+
"is-login-page": ({ location: e }) => r(o.accountLogin, e),
|
|
74
|
+
"is-register-page": ({ location: e }) => r(o.accountRegister, e),
|
|
66
75
|
// Cart
|
|
67
|
-
"is-cart-page": ({ location: e }) =>
|
|
76
|
+
"is-cart-page": ({ location: e }) => r(o.cart, e),
|
|
68
77
|
// Checkout
|
|
69
|
-
"is-checkout-page": ({ location: e }) =>
|
|
78
|
+
"is-checkout-page": ({ location: e }) => r(o.checkout, e),
|
|
70
79
|
// Homepage
|
|
71
|
-
"is-homepage": ({ location: e }) =>
|
|
72
|
-
},
|
|
80
|
+
"is-homepage": ({ location: e }) => r(o.homepage, e)
|
|
81
|
+
}, B = () => ({
|
|
73
82
|
name: "shopify",
|
|
74
83
|
setup: (e) => {
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
if (h() && (t.type === "session" && globalThis.window.Shopify.analytics.publish("picked:session", {
|
|
81
|
-
id: t.id
|
|
82
|
-
}), t.type === "feature_decide" || t.type === "session")) {
|
|
83
|
-
const c = e.session;
|
|
84
|
-
if (c) {
|
|
85
|
-
const s = {
|
|
86
|
-
"picked.id": c.id
|
|
87
|
-
};
|
|
88
|
-
typeof c.isUser < "u" && (s["picked.is_user"] = c.isUser ? "true" : "false"), e.features.listStore.getState().forEach((p) => {
|
|
89
|
-
if (p.isResolved) {
|
|
90
|
-
const g = p.getBucket();
|
|
91
|
-
s[`picked.features.${p.id}`] = `${g.bucket}`;
|
|
92
|
-
}
|
|
93
|
-
}), o({
|
|
94
|
-
attributes: s
|
|
95
|
-
});
|
|
96
|
-
}
|
|
97
|
-
}
|
|
84
|
+
let t = {}, a = 0;
|
|
85
|
+
const i = async () => {
|
|
86
|
+
if (a >= 3) return;
|
|
87
|
+
a++, await h({
|
|
88
|
+
attributes: t
|
|
98
89
|
});
|
|
99
|
-
|
|
90
|
+
const s = await y();
|
|
91
|
+
for (const [c, n] of Object.entries(t))
|
|
92
|
+
if (s.attributes[c] !== n)
|
|
93
|
+
return i();
|
|
94
|
+
}, g = P(async () => (a = 0, i()), 50);
|
|
95
|
+
Object.entries(x).forEach(([s, c]) => {
|
|
96
|
+
e.registerPredicate(`shopify-${s}`, c);
|
|
97
|
+
}), f() && e.eventBus.watch((s) => {
|
|
98
|
+
if (k() && (s.type === "session" && globalThis.window.Shopify.analytics.publish("picked:session", {
|
|
99
|
+
id: s.id
|
|
100
|
+
}), s.type === "feature_decide" || s.type === "session")) {
|
|
101
|
+
const c = e.session;
|
|
102
|
+
if (c) {
|
|
103
|
+
const n = {
|
|
104
|
+
"picked.id": c.id
|
|
105
|
+
};
|
|
106
|
+
typeof c.isUser < "u" && (n["picked.is_user"] = c.isUser ? "true" : "false"), e.features.listStore.getState().forEach((p) => {
|
|
107
|
+
if (p.isResolved) {
|
|
108
|
+
const d = p.getBucket();
|
|
109
|
+
n[`picked.features.${p.id}`] = `${d.bucket}`;
|
|
110
|
+
}
|
|
111
|
+
}), t = {
|
|
112
|
+
...t,
|
|
113
|
+
...n
|
|
114
|
+
}, g();
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
});
|
|
100
118
|
}
|
|
101
119
|
});
|
|
102
120
|
export {
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
121
|
+
S as getPickedConfig,
|
|
122
|
+
m as getPickedConfigCollection,
|
|
123
|
+
T as getPickedConfigCustomer,
|
|
124
|
+
j as getPickedConfigExperiments,
|
|
125
|
+
H as getPickedConfigFeatureExperiments,
|
|
126
|
+
b as getPickedConfigProduct,
|
|
127
|
+
R as getPickedConfigStorefrontApiToken,
|
|
128
|
+
L as getShopify,
|
|
129
|
+
B as shopifyPlugin
|
|
112
130
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../../src/plugins/shopify/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAU,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAOpD,eAAO,MAAM,aAAa,QAAO,
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../../src/plugins/shopify/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAU,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAOpD,eAAO,MAAM,aAAa,QAAO,MA8EhC,CAAA"}
|
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
export
|
|
1
|
+
export declare function debounce<T extends (...args: any[]) => void>(func: T, wait: number): (...args: Parameters<T>) => void;
|
|
2
|
+
export declare function debounceAsync<T extends (...args: any[]) => any>(func: T, wait: number): (...args: Parameters<T>) => Promise<ReturnType<T>>;
|
|
2
3
|
//# sourceMappingURL=debounce.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"debounce.d.ts","sourceRoot":"","sources":["../../../src/utils/debounce.ts"],"names":[],"mappings":"AACA,
|
|
1
|
+
{"version":3,"file":"debounce.d.ts","sourceRoot":"","sources":["../../../src/utils/debounce.ts"],"names":[],"mappings":"AACA,wBAAgB,QAAQ,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,IAGxE,GAAG,MAAM,UAAU,CAAC,CAAC,CAAC,KAAG,IAAI,CAStC;AAGD,wBAAgB,aAAa,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,IAI5E,GAAG,MAAM,UAAU,CAAC,CAAC,CAAC,KAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAsBxD"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@picked/shopify",
|
|
3
3
|
"description": "Shopify plugin for @picked/client",
|
|
4
|
-
"version": "0.0.1-dev.
|
|
4
|
+
"version": "0.0.1-dev.1764911630251",
|
|
5
5
|
"dependencies": {},
|
|
6
6
|
"devDependencies": {
|
|
7
7
|
"@picked/client": "workspace:*",
|
|
@@ -63,7 +63,7 @@
|
|
|
63
63
|
"main": "./dist/cjs/index.js",
|
|
64
64
|
"module": "./dist/esm/index.js",
|
|
65
65
|
"peerDependencies": {
|
|
66
|
-
"@picked/client": "0.0.1-dev.
|
|
66
|
+
"@picked/client": "0.0.1-dev.1764911630251",
|
|
67
67
|
"@shopify/storefront-api-client": "^1.0.9",
|
|
68
68
|
"effector": "^23.3.0"
|
|
69
69
|
},
|