@picked/client 0.0.1-dev.1786072899095 → 0.0.1-dev.1786601464574
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/.tsbuildinfo +1 -1
- package/dist/api-C8B96Kwv.js +22 -0
- package/dist/api-DS7fA9kj.cjs +1 -0
- package/dist/cjs/index.js +2 -2
- package/dist/cjs/plugins/dynamic-experiences/index.js +1 -1
- package/dist/cjs/server/index.js +1 -1
- package/dist/docs/explanation/content-references.md +99 -0
- package/dist/docs/explanation/how-picked-works.md +25 -3
- package/dist/docs/explanation/the-content-model.md +38 -28
- package/dist/docs/how-to/authenticate-the-cli.md +95 -0
- package/dist/docs/how-to/create-a-content-entry.md +48 -0
- package/dist/docs/how-to/define-a-page-layout.md +12 -5
- package/dist/docs/how-to/install-the-sdk.md +7 -0
- package/dist/docs/how-to/point-one-entry-at-another.md +61 -0
- package/dist/docs/how-to/read-a-referenced-entry.md +111 -0
- package/dist/docs/how-to/reuse-a-section.md +26 -10
- package/dist/docs/how-to/switch-workspaces.md +123 -0
- package/dist/docs/index.md +1 -1
- package/dist/docs/reference/dashboard/content/blocks.mdx +57 -0
- package/dist/docs/reference/dashboard/content/content-entries.mdx +61 -10
- package/dist/docs/reference/dashboard/content/models.mdx +108 -0
- package/dist/docs/reference/dashboard/content/pages.mdx +4 -3
- package/dist/docs/reference/dashboard/fields.mdx +1 -1
- package/dist/docs/reference/dashboard/steps.mdx +2 -2
- package/dist/docs/reference/delivery-api/experience-content.md +68 -13
- package/dist/docs/reference/delivery-api/workspace-schema.md +74 -0
- package/dist/docs/reference/glossary.md +13 -5
- package/dist/docs/reference/management-api/error-handling.md +2 -2
- package/dist/docs/reference/sdk/content.md +216 -0
- package/dist/docs/reference/sdk/plugins/dynamic-experiences.md +51 -3
- package/dist/docs/reference/sdk/ssr/serialize.md +6 -3
- package/dist/docs/reference/sdk/type-generation.md +130 -0
- package/dist/docs/reference/tools/cli.md +141 -0
- package/dist/docs/reference/tools/vite-plugin.md +90 -8
- package/dist/docs/tutorials/first-api-call.md +1 -1
- package/dist/docs/tutorials/first-server-rendered-page.mdx +1 -1
- package/dist/esm/index.js +496 -432
- package/dist/esm/plugins/dynamic-experiences/index.js +5 -3
- package/dist/esm/server/index.js +43 -46
- package/dist/plugin-C8hWW3ed.js +157 -0
- package/dist/plugin-Dtg2sOad.cjs +1 -0
- package/dist/provider-BEpRDCyr.js +69 -0
- package/dist/provider-ixdOyYTA.cjs +1 -0
- package/dist/registry-C1t8l3t9.cjs +1 -0
- package/dist/registry-CXZv0uLg.js +18 -0
- package/dist/types/data-source/api.d.ts +60 -0
- package/dist/types/data-source/api.d.ts.map +1 -0
- package/dist/types/data-source/provider.d.ts +90 -0
- package/dist/types/data-source/provider.d.ts.map +1 -0
- package/dist/types/data-source/registry.d.ts +26 -0
- package/dist/types/data-source/registry.d.ts.map +1 -0
- package/dist/types/data-source/virtual-data.d.ts +19 -0
- package/dist/types/data-source/virtual-data.d.ts.map +1 -0
- package/dist/types/entities/content/reference.d.ts +101 -0
- package/dist/types/entities/content/reference.d.ts.map +1 -0
- package/dist/types/entities/response/response.d.ts +22 -6
- package/dist/types/entities/response/response.d.ts.map +1 -1
- package/dist/types/exports.d.ts +2 -0
- package/dist/types/exports.d.ts.map +1 -1
- package/dist/types/form/create-submit-pipeline.d.ts +32 -3
- package/dist/types/form/create-submit-pipeline.d.ts.map +1 -1
- package/dist/types/index.d.ts +3 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/picked.d.ts +68 -4
- package/dist/types/picked.d.ts.map +1 -1
- package/dist/types/ping.d.ts +4 -3
- package/dist/types/ping.d.ts.map +1 -1
- package/dist/types/plugins/dynamic-experiences/index.d.ts +2 -1
- package/dist/types/plugins/dynamic-experiences/index.d.ts.map +1 -1
- package/dist/types/plugins/dynamic-experiences/plugin.d.ts +9 -40
- package/dist/types/plugins/dynamic-experiences/plugin.d.ts.map +1 -1
- package/dist/types/plugins/dynamic-experiences/types.d.ts +22 -129
- package/dist/types/plugins/dynamic-experiences/types.d.ts.map +1 -1
- package/dist/types/schema-registry.d.ts +190 -0
- package/dist/types/schema-registry.d.ts.map +1 -0
- package/dist/types/server/index.d.ts +2 -2
- package/dist/types/server/index.d.ts.map +1 -1
- package/dist/types/server/serialize.d.ts +37 -34
- package/dist/types/server/serialize.d.ts.map +1 -1
- package/dist/types/typed-content.d.ts +17 -0
- package/dist/types/typed-content.d.ts.map +1 -0
- package/dist/types/utils/picked-config.d.ts +19 -1
- package/dist/types/utils/picked-config.d.ts.map +1 -1
- package/dist/version-BLzNWQ-j.cjs +1 -0
- package/dist/version-IAAIvoH9.js +4 -0
- package/package.json +5 -3
- package/dist/api-BzK4kXRt.js +0 -38
- package/dist/api-CgENjKwJ.cjs +0 -1
- package/dist/docs/reference/dashboard/content/layouts.mdx +0 -62
- package/dist/docs/reference/dashboard/content/sections.mdx +0 -28
- package/dist/plugin-DJjtc5df.js +0 -252
- package/dist/plugin-jHxSAqGG.cjs +0 -1
- package/dist/types/utils/api.d.ts +0 -25
- package/dist/types/utils/api.d.ts.map +0 -1
- package/dist/types/utils/client-headers.d.ts +0 -2
- package/dist/types/utils/client-headers.d.ts.map +0 -1
package/dist/esm/index.js
CHANGED
|
@@ -2,17 +2,18 @@ import { t as e } from "../object-BUDGxEqy.js";
|
|
|
2
2
|
import { n as t, t as n } from "../rules-logic-HesIUCu6.js";
|
|
3
3
|
import { t as r } from "../logger-DMN6TxJJ.js";
|
|
4
4
|
import { a as i, c as a, d as o, f as s, i as c, l, m as u, n as d, o as f, r as p, s as m, t as h, u as g } from "../supports-CO9bJGNl.js";
|
|
5
|
-
import { a as _, i as v, r as
|
|
6
|
-
import { l as
|
|
7
|
-
import { i as
|
|
8
|
-
import {
|
|
9
|
-
import { t as ne } from "../
|
|
5
|
+
import { a as _, i as v, r as ee, s as y, t as b } from "../dom-BqcToNL0.js";
|
|
6
|
+
import { l as x, n as S, r as C, u as w } from "../experience-instance-DGk11d8a.js";
|
|
7
|
+
import { i as T, n as E, r as D, t as O } from "../storage-1MW3-_As.js";
|
|
8
|
+
import { t as te } from "../id-Bo4RBeOs.js";
|
|
9
|
+
import { t as ne } from "../version-IAAIvoH9.js";
|
|
10
10
|
import { n as re, r as ie, t as ae } from "../inert-script-report-B_bMPRzp.js";
|
|
11
|
-
import { attach as
|
|
12
|
-
import { createFactory as
|
|
11
|
+
import { attach as k, combine as A, createApi as j, createDomain as M, createEffect as N, createEvent as P, createStore as F, is as oe, sample as I } from "effector";
|
|
12
|
+
import { createFactory as L, invoke as R } from "@withease/factories";
|
|
13
|
+
import { sendPing as se } from "@picked/delivery-api-client";
|
|
13
14
|
//#region src/entities/experience/experience.ts
|
|
14
|
-
var
|
|
15
|
-
let i =
|
|
15
|
+
var z = M("experience"), ce = L(({ client: e, experience: r }) => {
|
|
16
|
+
let i = z.store(r), a = j(i, { merge(e, t) {
|
|
16
17
|
return {
|
|
17
18
|
...e,
|
|
18
19
|
...t.experience
|
|
@@ -22,34 +23,34 @@ var B = N("experience"), oe = R(({ client: e, experience: r }) => {
|
|
|
22
23
|
decisionLogic: e.condition,
|
|
23
24
|
targetSelectors: e.targets,
|
|
24
25
|
initializeOpenLogic: e.initializeOpen
|
|
25
|
-
})), s =
|
|
26
|
-
let r = e.nodes.filter(
|
|
26
|
+
})), s = A(i, e.components.listStore, (e, t) => (e.componentName ? t.find((t) => t.name === e.componentName) : void 0) || t.find((t) => t.name === `experience:${e.id}`) || t.find((e) => e.name === "experience"), { skipVoid: !1 }), c = A(i, e.steps.indexStore, e.conditions.indexStore, (e, t, n) => {
|
|
27
|
+
let r = e.nodes.filter(w).map((e) => t[e.stepId]).filter((e) => e !== void 0), i = e.nodes.filter(x).map((e) => n[e.conditionId]).filter((e) => e !== void 0);
|
|
27
28
|
return {
|
|
28
29
|
steps: r,
|
|
29
30
|
nodes: e.nodes,
|
|
30
31
|
edges: e.edges,
|
|
31
32
|
conditions: i
|
|
32
33
|
};
|
|
33
|
-
}), l = r.actions ?? [], u, d =
|
|
34
|
+
}), l = r.actions ?? [], u, d = k({
|
|
34
35
|
source: o,
|
|
35
36
|
effect: (t, n) => {
|
|
36
37
|
let i = v(t.targetSelectors, r.id);
|
|
37
|
-
i.forEach(({ elements: e }) => e.forEach((e) =>
|
|
38
|
+
i.forEach(({ elements: e }) => e.forEach((e) => y(e, r.id))), b(i, r.id, r.key).forEach((t) => {
|
|
38
39
|
n ? e.experienceInstances.spawn(u, t, n) : e.experienceInstances.spawn(u, t);
|
|
39
40
|
});
|
|
40
41
|
}
|
|
41
|
-
}), f =
|
|
42
|
+
}), f = A({
|
|
42
43
|
preconditionPassed: e.preconditionPassedStore,
|
|
43
44
|
isUser: e.session.store.map((e) => e.isUser, { skipVoid: !1 }),
|
|
44
45
|
config: o
|
|
45
|
-
}), p =
|
|
46
|
+
}), p = k({
|
|
46
47
|
source: f,
|
|
47
48
|
effect: async ({ preconditionPassed: i, isUser: a, config: o }) => {
|
|
48
49
|
if (!i || !a) return !1;
|
|
49
50
|
let { decisionLogic: s, targetSelectors: c } = o;
|
|
50
51
|
return c.length === 0 || v(c, r.id).length < 1 ? !1 : s === void 0 || !t(s) || await n(e, s) === !0;
|
|
51
52
|
}
|
|
52
|
-
}), m =
|
|
53
|
+
}), m = N(async () => {
|
|
53
54
|
if (!e.contentLoader) return !0;
|
|
54
55
|
try {
|
|
55
56
|
await e.contentLoader({
|
|
@@ -60,26 +61,26 @@ var B = N("experience"), oe = R(({ client: e, experience: r }) => {
|
|
|
60
61
|
`${r.id}`;
|
|
61
62
|
}
|
|
62
63
|
return !0;
|
|
63
|
-
}), h =
|
|
64
|
-
return
|
|
64
|
+
}), h = P(), g = P(), _ = z.createStore(void 0, { skipVoid: !1 }).on(h, (e, t) => t).on(g, (e, t) => t);
|
|
65
|
+
return I({
|
|
65
66
|
clock: h,
|
|
66
67
|
target: p
|
|
67
|
-
}),
|
|
68
|
+
}), I({
|
|
68
69
|
clock: p.doneData,
|
|
69
70
|
source: _,
|
|
70
71
|
filter: (e, t) => t,
|
|
71
72
|
fn: (e) => e,
|
|
72
73
|
target: d
|
|
73
|
-
}),
|
|
74
|
+
}), I({
|
|
74
75
|
clock: p.doneData,
|
|
75
76
|
filter: Boolean,
|
|
76
77
|
target: m
|
|
77
|
-
}),
|
|
78
|
+
}), I({
|
|
78
79
|
clock: g,
|
|
79
80
|
source: _,
|
|
80
81
|
fn: (e) => e,
|
|
81
82
|
target: d
|
|
82
|
-
}),
|
|
83
|
+
}), I({
|
|
83
84
|
clock: g,
|
|
84
85
|
target: m
|
|
85
86
|
}), u = {
|
|
@@ -98,22 +99,22 @@ var B = N("experience"), oe = R(({ client: e, experience: r }) => {
|
|
|
98
99
|
prepareExperienceContentFx: m
|
|
99
100
|
}, u;
|
|
100
101
|
});
|
|
101
|
-
function
|
|
102
|
-
return
|
|
102
|
+
function le(e) {
|
|
103
|
+
return R(ce, e);
|
|
103
104
|
}
|
|
104
|
-
var
|
|
105
|
-
let t =
|
|
105
|
+
var ue = L(({ client: e }) => {
|
|
106
|
+
let t = z.store({}), n = j(t, { register(e, t) {
|
|
106
107
|
return {
|
|
107
108
|
...e,
|
|
108
109
|
[t.id]: t
|
|
109
110
|
};
|
|
110
|
-
} }), r =
|
|
111
|
-
n.register(
|
|
111
|
+
} }), r = P(), i = N((t) => {
|
|
112
|
+
n.register(le({
|
|
112
113
|
client: e,
|
|
113
114
|
experience: t
|
|
114
115
|
}));
|
|
115
116
|
});
|
|
116
|
-
|
|
117
|
+
I({
|
|
117
118
|
clock: r,
|
|
118
119
|
source: t,
|
|
119
120
|
filter: (e, t) => e[t.id] !== void 0,
|
|
@@ -126,7 +127,7 @@ var ce = R(({ client: e }) => {
|
|
|
126
127
|
experience: t,
|
|
127
128
|
strategy: "override"
|
|
128
129
|
});
|
|
129
|
-
}),
|
|
130
|
+
}), I({
|
|
130
131
|
clock: r,
|
|
131
132
|
source: t,
|
|
132
133
|
filter: (e, t) => e[t.id] === void 0,
|
|
@@ -140,7 +141,7 @@ var ce = R(({ client: e }) => {
|
|
|
140
141
|
function s(e) {
|
|
141
142
|
return t.map((t) => Object.values(t).find((t) => t.key === e) ?? t[e], { skipVoid: !1 });
|
|
142
143
|
}
|
|
143
|
-
let c =
|
|
144
|
+
let c = k({
|
|
144
145
|
source: t,
|
|
145
146
|
effect: (e, t) => {
|
|
146
147
|
let n = "key" in t ? Object.values(e).find((e) => e.key === t.key) : e[t.id];
|
|
@@ -158,7 +159,7 @@ var ce = R(({ client: e }) => {
|
|
|
158
159
|
getById: o,
|
|
159
160
|
getByKey: s,
|
|
160
161
|
launch: c,
|
|
161
|
-
open:
|
|
162
|
+
open: k({
|
|
162
163
|
source: {
|
|
163
164
|
experiences: t,
|
|
164
165
|
instances: e.experienceInstances.listStore
|
|
@@ -186,7 +187,7 @@ var ce = R(({ client: e }) => {
|
|
|
186
187
|
}
|
|
187
188
|
}),
|
|
188
189
|
listStore: a,
|
|
189
|
-
initialiseExperiencesFx:
|
|
190
|
+
initialiseExperiencesFx: k({
|
|
190
191
|
source: a,
|
|
191
192
|
effect: (e) => {
|
|
192
193
|
for (let t of e) t.initialiseRequested(void 0);
|
|
@@ -194,20 +195,20 @@ var ce = R(({ client: e }) => {
|
|
|
194
195
|
})
|
|
195
196
|
};
|
|
196
197
|
});
|
|
197
|
-
function
|
|
198
|
-
return
|
|
198
|
+
function de(e) {
|
|
199
|
+
return R(ue, e);
|
|
199
200
|
}
|
|
200
|
-
var
|
|
201
|
+
var fe = async (e) => {
|
|
201
202
|
await e.experiences.initialiseExperiencesFx();
|
|
202
203
|
};
|
|
203
204
|
//#endregion
|
|
204
205
|
//#region src/entities/plugin/plugin.ts
|
|
205
|
-
function
|
|
206
|
-
return
|
|
206
|
+
function pe(e) {
|
|
207
|
+
return N(async () => {
|
|
207
208
|
await e();
|
|
208
209
|
});
|
|
209
210
|
}
|
|
210
|
-
var
|
|
211
|
+
var me = (e, t, n) => {
|
|
211
212
|
let r = t.name, i = t.setup(e);
|
|
212
213
|
if (i) {
|
|
213
214
|
let e = n[r] ?? {};
|
|
@@ -216,29 +217,29 @@ var fe = (e, t, n) => {
|
|
|
216
217
|
...i
|
|
217
218
|
});
|
|
218
219
|
}
|
|
219
|
-
},
|
|
220
|
+
}, he = M("component"), ge = L(({ client: e, component: t, name: n }) => ({
|
|
220
221
|
name: n,
|
|
221
222
|
component: t,
|
|
222
223
|
frameworkStore: e.frameworks.getByName(t.frameworkName)
|
|
223
224
|
}));
|
|
224
|
-
function
|
|
225
|
-
return
|
|
225
|
+
function _e(e) {
|
|
226
|
+
return R(ge, e);
|
|
226
227
|
}
|
|
227
|
-
var
|
|
228
|
-
let t =
|
|
228
|
+
var ve = L(({ client: e }) => {
|
|
229
|
+
let t = he.store({}), n = j(t, { register(e, t) {
|
|
229
230
|
return {
|
|
230
231
|
...e,
|
|
231
232
|
[t.name]: t
|
|
232
233
|
};
|
|
233
|
-
} }), i =
|
|
234
|
-
|
|
234
|
+
} }), i = P();
|
|
235
|
+
I({
|
|
235
236
|
clock: i,
|
|
236
237
|
source: t,
|
|
237
238
|
filter: (e, { name: t }) => e[t] !== void 0,
|
|
238
239
|
fn: (e, { name: t }) => `Component '${t}' already registered. Registering again will override the previous registration.`
|
|
239
|
-
}).watch((e) => /* @__PURE__ */ r("warn", e)),
|
|
240
|
+
}).watch((e) => /* @__PURE__ */ r("warn", e)), I({
|
|
240
241
|
clock: i,
|
|
241
|
-
fn: ({ name: t, component: n }) =>
|
|
242
|
+
fn: ({ name: t, component: n }) => _e({
|
|
242
243
|
client: e,
|
|
243
244
|
name: t,
|
|
244
245
|
component: n
|
|
@@ -255,27 +256,27 @@ var ge = R(({ client: e }) => {
|
|
|
255
256
|
listStore: a
|
|
256
257
|
};
|
|
257
258
|
});
|
|
258
|
-
function
|
|
259
|
-
return
|
|
259
|
+
function ye(e) {
|
|
260
|
+
return R(ve, e);
|
|
260
261
|
}
|
|
261
|
-
var
|
|
262
|
+
var be = (e, t, n) => {
|
|
262
263
|
n.register({
|
|
263
264
|
name: e,
|
|
264
265
|
component: t
|
|
265
266
|
});
|
|
266
|
-
},
|
|
267
|
-
let t =
|
|
267
|
+
}, xe = M("framework"), Se = L((e) => {
|
|
268
|
+
let t = xe.store({}), n = j(t, { register(e, t) {
|
|
268
269
|
return {
|
|
269
270
|
...e,
|
|
270
271
|
[t.name]: t.framework
|
|
271
272
|
};
|
|
272
|
-
} }), i =
|
|
273
|
-
|
|
273
|
+
} }), i = P();
|
|
274
|
+
I({
|
|
274
275
|
clock: i,
|
|
275
276
|
source: t,
|
|
276
277
|
filter: (e, { name: t }) => e[t] !== void 0,
|
|
277
278
|
fn: (e, { name: t }) => `Framework '${t}' already registered. Registering again will override the previous registration.`
|
|
278
|
-
}).watch((e) => /* @__PURE__ */ r("warn", e)),
|
|
279
|
+
}).watch((e) => /* @__PURE__ */ r("warn", e)), I({
|
|
279
280
|
clock: i,
|
|
280
281
|
target: n.register
|
|
281
282
|
});
|
|
@@ -289,106 +290,106 @@ var V = (e, t, n) => {
|
|
|
289
290
|
listStore: a
|
|
290
291
|
};
|
|
291
292
|
});
|
|
292
|
-
function
|
|
293
|
-
return
|
|
293
|
+
function Ce(e) {
|
|
294
|
+
return R(Se, e);
|
|
294
295
|
}
|
|
295
|
-
var
|
|
296
|
+
var we = (e, t) => {
|
|
296
297
|
t.register({
|
|
297
298
|
name: e.name,
|
|
298
299
|
framework: e
|
|
299
300
|
});
|
|
300
|
-
},
|
|
301
|
+
}, Te = L(({ client: e }) => {
|
|
301
302
|
let t = "window" in globalThis, n = {
|
|
302
303
|
location: t ? globalThis.location : void 0,
|
|
303
304
|
document: t ? globalThis.document : void 0,
|
|
304
305
|
sessionStorage: t ? globalThis.sessionStorage : void 0,
|
|
305
306
|
localStorage: t ? globalThis.localStorage : void 0
|
|
306
307
|
};
|
|
307
|
-
return
|
|
308
|
+
return A(e.responses.listStore, e.fields.listStore, (t, r) => Object.freeze({
|
|
308
309
|
client: e,
|
|
309
310
|
responses: t,
|
|
310
311
|
fields: r,
|
|
311
312
|
...n
|
|
312
313
|
}));
|
|
313
314
|
});
|
|
314
|
-
function
|
|
315
|
-
return
|
|
315
|
+
function Ee(e) {
|
|
316
|
+
return R(Te, e);
|
|
316
317
|
}
|
|
317
318
|
//#endregion
|
|
318
319
|
//#region src/logic-engine.ts
|
|
319
|
-
function
|
|
320
|
+
function De(e) {
|
|
320
321
|
return typeof e == "number" && !isNaN(e);
|
|
321
322
|
}
|
|
322
|
-
function
|
|
323
|
+
function B(e) {
|
|
323
324
|
return typeof e == "string";
|
|
324
325
|
}
|
|
325
|
-
function
|
|
326
|
+
function V(e) {
|
|
326
327
|
return Array.isArray(e);
|
|
327
328
|
}
|
|
328
|
-
function
|
|
329
|
+
function Oe(e) {
|
|
329
330
|
return e instanceof Promise;
|
|
330
331
|
}
|
|
331
|
-
function
|
|
332
|
+
function ke(e) {
|
|
332
333
|
return typeof e == "object" && !!e && !Array.isArray(e) && Object.keys(e).length === 1;
|
|
333
334
|
}
|
|
334
|
-
function
|
|
335
|
-
if (
|
|
335
|
+
function H(e) {
|
|
336
|
+
if (De(e)) return e;
|
|
336
337
|
let t = parseFloat(`${e}`);
|
|
337
338
|
return isNaN(t) ? 0 : t;
|
|
338
339
|
}
|
|
339
|
-
function
|
|
340
|
+
function U(e) {
|
|
340
341
|
return `${e}`;
|
|
341
342
|
}
|
|
342
|
-
var
|
|
343
|
+
var Ae = {
|
|
343
344
|
"==": (e, t) => e == t,
|
|
344
345
|
"===": (e, t) => e === t,
|
|
345
346
|
"!=": (e, t) => e != t,
|
|
346
347
|
"!==": (e, t) => e !== t,
|
|
347
|
-
">": (e, t) =>
|
|
348
|
-
">=": (e, t) =>
|
|
348
|
+
">": (e, t) => H(e) > H(t),
|
|
349
|
+
">=": (e, t) => H(e) >= H(t),
|
|
349
350
|
"<": (e, t, n) => {
|
|
350
|
-
let r =
|
|
351
|
+
let r = H(e), i = H(t);
|
|
351
352
|
if (n === void 0) return r < i;
|
|
352
|
-
let a =
|
|
353
|
+
let a = H(n);
|
|
353
354
|
return r < i && i < a;
|
|
354
355
|
},
|
|
355
356
|
"<=": (e, t, n) => {
|
|
356
|
-
let r =
|
|
357
|
+
let r = H(e), i = H(t);
|
|
357
358
|
if (n === void 0) return r <= i;
|
|
358
|
-
let a =
|
|
359
|
+
let a = H(n);
|
|
359
360
|
return r <= i && i <= a;
|
|
360
361
|
},
|
|
361
|
-
"!!": async (e) => await
|
|
362
|
-
"!": async (e) => !await
|
|
363
|
-
"%": (e, t) =>
|
|
362
|
+
"!!": async (e) => await G(e),
|
|
363
|
+
"!": async (e) => !await G(e),
|
|
364
|
+
"%": (e, t) => H(e) % H(t),
|
|
364
365
|
log: (e) => (console.log(e), e),
|
|
365
|
-
in: (e, t) => t ?
|
|
366
|
-
cat: (...e) => e.map(
|
|
366
|
+
in: (e, t) => t ? B(t) ? t.indexOf(U(e)) !== -1 : V(t) ? t.includes(e) : !1 : !1,
|
|
367
|
+
cat: (...e) => e.map(U).join(""),
|
|
367
368
|
substr: (e, t, n) => {
|
|
368
|
-
let r =
|
|
369
|
+
let r = U(e), i = H(t);
|
|
369
370
|
if (n === void 0) return r.substr(i);
|
|
370
|
-
let a =
|
|
371
|
+
let a = H(n);
|
|
371
372
|
if (a < 0) {
|
|
372
373
|
let e = r.substr(i);
|
|
373
374
|
return e.substr(0, e.length + a);
|
|
374
375
|
}
|
|
375
376
|
return r.substr(i, a);
|
|
376
377
|
},
|
|
377
|
-
"+": (...e) => e.reduce((e, t) =>
|
|
378
|
-
"*": (...e) => e.reduce((e, t) =>
|
|
378
|
+
"+": (...e) => e.reduce((e, t) => H(e) + H(t), 0),
|
|
379
|
+
"*": (...e) => e.reduce((e, t) => H(e) * H(t), 1),
|
|
379
380
|
"-": (e, t) => {
|
|
380
|
-
let n =
|
|
381
|
-
return t === void 0 ? -n : n -
|
|
381
|
+
let n = H(e);
|
|
382
|
+
return t === void 0 ? -n : n - H(t);
|
|
382
383
|
},
|
|
383
|
-
"/": (e, t) =>
|
|
384
|
-
min: (...e) => Math.min(...e.map(
|
|
385
|
-
max: (...e) => Math.max(...e.map(
|
|
386
|
-
merge: (...e) => e.reduce((e, t) =>
|
|
384
|
+
"/": (e, t) => H(e) / H(t),
|
|
385
|
+
min: (...e) => Math.min(...e.map(H)),
|
|
386
|
+
max: (...e) => Math.max(...e.map(H)),
|
|
387
|
+
merge: (...e) => e.reduce((e, t) => V(t) ? e.concat(t) : e.concat([t]), []),
|
|
387
388
|
var(e, t) {
|
|
388
389
|
let n = arguments.length > 1 ? t : null;
|
|
389
390
|
if (e === "" || e === "." || e == null) return this;
|
|
390
391
|
if (typeof e == "number" && Array.isArray(this)) return e >= 0 && e < this.length ? this[e] : n;
|
|
391
|
-
let r =
|
|
392
|
+
let r = U(e);
|
|
392
393
|
if (r === "" || r === ".") return this;
|
|
393
394
|
let i = r.split("."), a = this;
|
|
394
395
|
for (let e of i) {
|
|
@@ -401,126 +402,126 @@ var De = {
|
|
|
401
402
|
return a === void 0 ? n : a;
|
|
402
403
|
},
|
|
403
404
|
async missing(...e) {
|
|
404
|
-
let t =
|
|
405
|
+
let t = V(e[0]) ? e[0] : e, n = [];
|
|
405
406
|
for (let e of t) {
|
|
406
|
-
let t = await
|
|
407
|
+
let t = await W({ var: e }, this);
|
|
407
408
|
(t === null || t === "") && n.push(`${e}`);
|
|
408
409
|
}
|
|
409
410
|
return n;
|
|
410
411
|
},
|
|
411
412
|
async missing_some(e, t) {
|
|
412
|
-
let n = await
|
|
413
|
-
if (!
|
|
414
|
-
let r = n.filter(
|
|
415
|
-
return t.filter(
|
|
413
|
+
let n = await W({ missing: t }, this);
|
|
414
|
+
if (!V(n) || !V(t)) return [];
|
|
415
|
+
let r = n.filter(B);
|
|
416
|
+
return t.filter(B).length - r.length >= H(e) ? [] : r;
|
|
416
417
|
},
|
|
417
418
|
invoke(...e) {
|
|
418
419
|
let [t, ...n] = e;
|
|
419
420
|
return typeof t == "function" ? Reflect.apply(t, null, n) : null;
|
|
420
421
|
},
|
|
421
|
-
startsWith: (e, t) =>
|
|
422
|
-
endsWith: (e, t) =>
|
|
422
|
+
startsWith: (e, t) => B(e) && B(t) && e.startsWith(t),
|
|
423
|
+
endsWith: (e, t) => B(e) && B(t) && e.endsWith(t),
|
|
423
424
|
regexp_matches(e, t) {
|
|
424
425
|
let n = e, r = "";
|
|
425
|
-
if (
|
|
426
|
+
if (V(e)) {
|
|
426
427
|
let [t, i] = e;
|
|
427
428
|
n = t, r = i;
|
|
428
429
|
}
|
|
429
|
-
return !
|
|
430
|
+
return !B(n) || !B(r) ? !1 : new RegExp(n, r).test(U(t));
|
|
430
431
|
},
|
|
431
432
|
throw(e) {
|
|
432
|
-
throw Error(
|
|
433
|
+
throw Error(U(e));
|
|
433
434
|
}
|
|
434
435
|
};
|
|
435
|
-
async function
|
|
436
|
+
async function W(e, t) {
|
|
436
437
|
if (!e) return e;
|
|
437
|
-
if (
|
|
438
|
-
if (
|
|
439
|
-
if (!
|
|
440
|
-
let n =
|
|
441
|
-
switch (
|
|
438
|
+
if (Oe(e)) return W(await e, t);
|
|
439
|
+
if (V(e)) return Promise.all(e.map((e) => W(e, t)));
|
|
440
|
+
if (!ke(e)) return e;
|
|
441
|
+
let n = je(e), r = n ? e[n] ?? [] : [];
|
|
442
|
+
switch (V(r) || (r = [r]), n) {
|
|
442
443
|
case "if":
|
|
443
444
|
case "?:":
|
|
444
|
-
for (let e = 0; e < r.length - 1; e += 2) if (await
|
|
445
|
-
return r.length % 2 == 1 ?
|
|
445
|
+
for (let e = 0; e < r.length - 1; e += 2) if (await G(await W(r[e], t))) return W(r[e + 1], t);
|
|
446
|
+
return r.length % 2 == 1 ? W(r[r.length - 1], t) : null;
|
|
446
447
|
case "and": {
|
|
447
448
|
let e = null;
|
|
448
|
-
for (let n of r) if (e = await
|
|
449
|
+
for (let n of r) if (e = await W(n, t), !await G(e)) return e;
|
|
449
450
|
return e;
|
|
450
451
|
}
|
|
451
452
|
case "or": {
|
|
452
453
|
let e = null;
|
|
453
|
-
for (let n of r) if (e = await
|
|
454
|
+
for (let n of r) if (e = await W(n, t), await G(e)) return e;
|
|
454
455
|
return e;
|
|
455
456
|
}
|
|
456
457
|
case "map": {
|
|
457
|
-
let e = await
|
|
458
|
-
return
|
|
458
|
+
let e = await W(r[0], t);
|
|
459
|
+
return V(e) ? await Promise.all(e.map((e) => W(r[1], e))) : [];
|
|
459
460
|
}
|
|
460
461
|
case "filter": {
|
|
461
|
-
let e = await
|
|
462
|
-
return
|
|
462
|
+
let e = await W(r[0], t);
|
|
463
|
+
return V(e) ? (await Promise.all(e.map(async (e) => ({
|
|
463
464
|
item: e,
|
|
464
|
-
shouldInclude: await
|
|
465
|
+
shouldInclude: await G(await W(r[1], e))
|
|
465
466
|
})))).filter(({ shouldInclude: e }) => e).map(({ item: e }) => e) : [];
|
|
466
467
|
}
|
|
467
468
|
case "reduce": {
|
|
468
|
-
let e = await
|
|
469
|
-
if (!
|
|
470
|
-
let n = r[1], i = r.length > 2 ? await
|
|
471
|
-
for (let t of e) i = await
|
|
469
|
+
let e = await W(r[0], t);
|
|
470
|
+
if (!V(e)) return r.length > 2 ? await W(r[2], t) : null;
|
|
471
|
+
let n = r[1], i = r.length > 2 ? await W(r[2], t) : null;
|
|
472
|
+
for (let t of e) i = await W(n, {
|
|
472
473
|
current: t,
|
|
473
474
|
accumulator: i
|
|
474
475
|
});
|
|
475
476
|
return i;
|
|
476
477
|
}
|
|
477
478
|
case "all": {
|
|
478
|
-
let e = await
|
|
479
|
-
if (!
|
|
480
|
-
for (let t of e) if (!await
|
|
479
|
+
let e = await W(r[0], t);
|
|
480
|
+
if (!V(e) || e.length === 0) return !1;
|
|
481
|
+
for (let t of e) if (!await G(await W(r[1], t))) return !1;
|
|
481
482
|
return !0;
|
|
482
483
|
}
|
|
483
484
|
case "some": {
|
|
484
|
-
let e = await
|
|
485
|
-
if (!
|
|
486
|
-
for (let t of e) if (await
|
|
485
|
+
let e = await W(r[0], t);
|
|
486
|
+
if (!V(e)) return !1;
|
|
487
|
+
for (let t of e) if (await G(await W(r[1], t))) return !0;
|
|
487
488
|
return !1;
|
|
488
489
|
}
|
|
489
490
|
case "none": {
|
|
490
|
-
let e = await
|
|
491
|
-
if (!
|
|
492
|
-
for (let t of e) if (await
|
|
491
|
+
let e = await W(r[0], t);
|
|
492
|
+
if (!V(e)) return !0;
|
|
493
|
+
for (let t of e) if (await G(await W(r[1], t))) return !1;
|
|
493
494
|
return !0;
|
|
494
495
|
}
|
|
495
496
|
case "catch": try {
|
|
496
|
-
return await
|
|
497
|
+
return await W(r[0], t);
|
|
497
498
|
} catch (e) {
|
|
498
|
-
return
|
|
499
|
+
return ke(e) ? await W(e, t) : r[1] ? await W(r[1], e) : e instanceof Error ? e.message : e;
|
|
499
500
|
}
|
|
500
501
|
}
|
|
501
|
-
let i = await Promise.all(r.map((e) =>
|
|
502
|
+
let i = await Promise.all(r.map((e) => W(e, t))), a = n ? Ae[n] : void 0;
|
|
502
503
|
if (!a) throw Error(`Unrecognized operation ${n}`);
|
|
503
504
|
return a.apply(t, i);
|
|
504
505
|
}
|
|
505
|
-
async function
|
|
506
|
-
return
|
|
506
|
+
async function G(e) {
|
|
507
|
+
return Oe(e) ? G(await e) : !(Array.isArray(e) && e.length === 0) && !!e;
|
|
507
508
|
}
|
|
508
|
-
function
|
|
509
|
+
function je(e) {
|
|
509
510
|
return Object.keys(e)[0];
|
|
510
511
|
}
|
|
511
512
|
//#endregion
|
|
512
513
|
//#region src/lifecycle/rules-logic.ts
|
|
513
|
-
function
|
|
514
|
+
function Me(e, t, n) {
|
|
514
515
|
return new Proxy(Object.create(null), { get(r, i) {
|
|
515
516
|
if (typeof i != "string") return;
|
|
516
517
|
let a = e.find((e) => e.key === i);
|
|
517
|
-
if (a !== void 0) return async () => !n.has(i) && await
|
|
518
|
+
if (a !== void 0) return async () => !n.has(i) && await W(a.logic, {
|
|
518
519
|
...t,
|
|
519
|
-
conditions:
|
|
520
|
+
conditions: Me(e, t, new Set(n).add(i))
|
|
520
521
|
}) === !0;
|
|
521
522
|
} });
|
|
522
523
|
}
|
|
523
|
-
var
|
|
524
|
+
var Ne = L(({ client: e }) => k({
|
|
524
525
|
source: {
|
|
525
526
|
stateSnapshot: e.stateSnapshotStore,
|
|
526
527
|
predicates: e.predicates.listStore,
|
|
@@ -557,149 +558,149 @@ var Ae = R(({ client: e }) => A({
|
|
|
557
558
|
features: u,
|
|
558
559
|
...s
|
|
559
560
|
};
|
|
560
|
-
return await
|
|
561
|
+
return await W(o, {
|
|
561
562
|
...d,
|
|
562
|
-
conditions:
|
|
563
|
+
conditions: Me(a, d, /* @__PURE__ */ new Set())
|
|
563
564
|
});
|
|
564
565
|
}
|
|
565
566
|
}));
|
|
566
|
-
function
|
|
567
|
-
return
|
|
567
|
+
function Pe(e) {
|
|
568
|
+
return R(Ne, e);
|
|
568
569
|
}
|
|
569
570
|
//#endregion
|
|
570
571
|
//#region src/ping.ts
|
|
571
|
-
var
|
|
572
|
+
var Fe = 6e3, Ie = O("last_ping", "global"), Le = async (e) => {
|
|
572
573
|
try {
|
|
573
|
-
let t = Date.now(), n =
|
|
574
|
-
if (n.isSet() && (r = n.json() ?? 0), r && t - r <
|
|
575
|
-
let i = {
|
|
574
|
+
let t = Date.now(), n = E.get(Ie), r = 0;
|
|
575
|
+
if (n.isSet() && (r = n.json() ?? 0), r && t - r < Fe) return !0;
|
|
576
|
+
let i = {}, a = document.getElementById("picked_script")?.dataset.verceltoken;
|
|
577
|
+
a && (i["x-vercel-protection-bypass"] = a);
|
|
578
|
+
let o = await se(e.apiUrl, {
|
|
576
579
|
projectId: e.projectId,
|
|
577
580
|
path: window.location.pathname
|
|
578
|
-
},
|
|
579
|
-
o && (
|
|
580
|
-
let s = (await ee(e.apiUrl, "ping", i, a)).ok;
|
|
581
|
-
return s && n.set(t), s;
|
|
581
|
+
}, { headers: i });
|
|
582
|
+
return o && n.set(t), o;
|
|
582
583
|
} catch {
|
|
583
584
|
return !1;
|
|
584
585
|
}
|
|
585
|
-
},
|
|
586
|
-
let t =
|
|
586
|
+
}, K = M("lifecycle"), Re = L(({ client: e }) => {
|
|
587
|
+
let t = K.store(!1), r = F(void 0, {
|
|
587
588
|
skipVoid: !1,
|
|
588
|
-
domain:
|
|
589
|
-
}), i =
|
|
589
|
+
domain: K
|
|
590
|
+
}), i = F(void 0, {
|
|
590
591
|
skipVoid: !1,
|
|
591
|
-
domain:
|
|
592
|
-
}), a =
|
|
592
|
+
domain: K
|
|
593
|
+
}), a = K.store("idle"), o = K.store([]), s = F(void 0, {
|
|
593
594
|
skipVoid: !1,
|
|
594
|
-
domain:
|
|
595
|
-
}), l =
|
|
595
|
+
domain: K
|
|
596
|
+
}), l = F(void 0, {
|
|
596
597
|
skipVoid: !1,
|
|
597
|
-
domain:
|
|
598
|
-
}), u =
|
|
598
|
+
domain: K
|
|
599
|
+
}), u = P(), d = P(), f = P(), p = P(), m = P(), h = P();
|
|
599
600
|
o.on(p, (e, t) => [...e, t]), s.on(m, (e, t) => t), l.on(h, (e, t) => t), t.on(d, () => !0);
|
|
600
|
-
let g =
|
|
601
|
-
|
|
602
|
-
}), _ =
|
|
603
|
-
await
|
|
604
|
-
}), v =
|
|
605
|
-
await
|
|
606
|
-
}),
|
|
601
|
+
let g = N(() => {
|
|
602
|
+
Le(e);
|
|
603
|
+
}), _ = N(async () => {
|
|
604
|
+
await ee();
|
|
605
|
+
}), v = N(async () => {
|
|
606
|
+
await fe(e);
|
|
607
|
+
}), y = k({ effect: v }), b = k({
|
|
607
608
|
source: o,
|
|
608
609
|
effect: async (e) => {
|
|
609
610
|
for (let t of e) await t();
|
|
610
611
|
}
|
|
611
|
-
}),
|
|
612
|
+
}), x = k({
|
|
612
613
|
source: s,
|
|
613
614
|
effect: async (t) => t === void 0 ? !0 : typeof t == "boolean" ? t : await n(e, t) === !0
|
|
614
|
-
}),
|
|
615
|
+
}), S = k({
|
|
615
616
|
source: l,
|
|
616
617
|
effect: async (t) => t === void 0 ? !0 : typeof t == "boolean" ? t : await n(e, t) === !0
|
|
617
|
-
}),
|
|
618
|
+
}), C = I({
|
|
618
619
|
clock: u,
|
|
619
620
|
source: a,
|
|
620
621
|
filter: (e) => e === "idle" && c(),
|
|
621
622
|
fn: () => void 0
|
|
622
623
|
});
|
|
623
|
-
|
|
624
|
-
clock:
|
|
624
|
+
I({
|
|
625
|
+
clock: C,
|
|
625
626
|
fn: () => "starting",
|
|
626
627
|
target: a
|
|
627
|
-
}),
|
|
628
|
-
clock:
|
|
628
|
+
}), I({
|
|
629
|
+
clock: C,
|
|
629
630
|
target: g
|
|
630
|
-
}),
|
|
631
|
-
clock:
|
|
632
|
-
target:
|
|
633
|
-
}),
|
|
634
|
-
clock:
|
|
631
|
+
}), I({
|
|
632
|
+
clock: C,
|
|
633
|
+
target: b
|
|
634
|
+
}), I({
|
|
635
|
+
clock: C,
|
|
635
636
|
target: _
|
|
636
|
-
}),
|
|
637
|
-
clock:
|
|
638
|
-
target:
|
|
639
|
-
}),
|
|
640
|
-
clock:
|
|
637
|
+
}), I({
|
|
638
|
+
clock: b.done,
|
|
639
|
+
target: x
|
|
640
|
+
}), I({
|
|
641
|
+
clock: x.doneData,
|
|
641
642
|
target: r
|
|
642
|
-
}),
|
|
643
|
-
clock: C.doneData,
|
|
644
|
-
target: i
|
|
645
|
-
}), L({
|
|
643
|
+
}), I({
|
|
646
644
|
clock: S.doneData,
|
|
645
|
+
target: i
|
|
646
|
+
}), I({
|
|
647
|
+
clock: x.doneData,
|
|
647
648
|
filter: (e) => e,
|
|
648
|
-
target:
|
|
649
|
-
}),
|
|
650
|
-
clock:
|
|
649
|
+
target: S
|
|
650
|
+
}), I({
|
|
651
|
+
clock: S.doneData,
|
|
651
652
|
target: e.session.setIsUser
|
|
652
|
-
}),
|
|
653
|
-
clock:
|
|
653
|
+
}), I({
|
|
654
|
+
clock: S.doneData,
|
|
654
655
|
fn: (e) => ({
|
|
655
656
|
type: "user_decide",
|
|
656
657
|
value: e
|
|
657
658
|
}),
|
|
658
659
|
target: e.eventBus
|
|
659
|
-
}),
|
|
660
|
-
clock:
|
|
660
|
+
}), I({
|
|
661
|
+
clock: x.doneData,
|
|
661
662
|
filter: (e) => !e,
|
|
662
663
|
fn: () => void 0,
|
|
663
664
|
target: f
|
|
664
|
-
}),
|
|
665
|
-
clock:
|
|
665
|
+
}), I({
|
|
666
|
+
clock: S.doneData,
|
|
666
667
|
fn: () => void 0,
|
|
667
668
|
target: f
|
|
668
|
-
}),
|
|
669
|
+
}), I({
|
|
669
670
|
clock: f,
|
|
670
671
|
fn: () => ({ type: "initialize" }),
|
|
671
672
|
target: e.eventBus
|
|
672
673
|
});
|
|
673
|
-
let
|
|
674
|
-
|
|
674
|
+
let w = F(!1).on(_.done, () => !0), T = F(!1).on(f, () => !0), E = F(!1).on(y.done, () => !0), D = A(r, i, (e, t) => e === !0 && t === !0);
|
|
675
|
+
I({
|
|
675
676
|
clock: f,
|
|
676
|
-
source:
|
|
677
|
+
source: D,
|
|
677
678
|
filter: (e) => e,
|
|
678
679
|
fn: () => void 0,
|
|
679
680
|
target: v
|
|
680
681
|
});
|
|
681
|
-
let
|
|
682
|
-
|
|
683
|
-
clock:
|
|
682
|
+
let O = A(w, T, D, (e, t, n) => e && t && n);
|
|
683
|
+
I({
|
|
684
|
+
clock: O,
|
|
684
685
|
filter: (e) => e,
|
|
685
686
|
fn: () => void 0,
|
|
686
|
-
target:
|
|
687
|
+
target: y
|
|
687
688
|
});
|
|
688
|
-
let
|
|
689
|
-
return
|
|
690
|
-
clock:
|
|
689
|
+
let te = A(w, T, D, E, (e, t, n, r) => e && t && (!n || r));
|
|
690
|
+
return I({
|
|
691
|
+
clock: te,
|
|
691
692
|
filter: (e) => e,
|
|
692
693
|
fn: () => void 0,
|
|
693
694
|
target: d
|
|
694
|
-
}),
|
|
695
|
+
}), I({
|
|
695
696
|
clock: d,
|
|
696
697
|
fn: () => "ready",
|
|
697
698
|
target: a
|
|
698
|
-
}),
|
|
699
|
+
}), I({
|
|
699
700
|
clock: d,
|
|
700
701
|
fn: () => ({ type: "ready" }),
|
|
701
702
|
target: e.eventBus
|
|
702
|
-
}),
|
|
703
|
+
}), I({
|
|
703
704
|
clock: d,
|
|
704
705
|
source: e.session.store,
|
|
705
706
|
fn: ({ id: e, isUser: t, identifiers: n }) => ({
|
|
@@ -709,13 +710,13 @@ var Me = 6e3, Ne = k("last_ping", "global"), Pe = async (e) => {
|
|
|
709
710
|
identifiers: n
|
|
710
711
|
}),
|
|
711
712
|
target: e.eventBus
|
|
712
|
-
}),
|
|
713
|
+
}), I({
|
|
713
714
|
clock: [
|
|
715
|
+
b.fail,
|
|
714
716
|
x.fail,
|
|
715
717
|
S.fail,
|
|
716
|
-
C.fail,
|
|
717
718
|
v.fail,
|
|
718
|
-
|
|
719
|
+
y.fail,
|
|
719
720
|
_.fail
|
|
720
721
|
],
|
|
721
722
|
fn: () => "failed",
|
|
@@ -731,13 +732,13 @@ var Me = 6e3, Ne = k("last_ping", "global"), Pe = async (e) => {
|
|
|
731
732
|
setCondition: h
|
|
732
733
|
};
|
|
733
734
|
});
|
|
734
|
-
function
|
|
735
|
-
return
|
|
735
|
+
function ze(e) {
|
|
736
|
+
return R(Re, e);
|
|
736
737
|
}
|
|
737
738
|
//#endregion
|
|
738
739
|
//#region src/entities/predicate/predicate.ts
|
|
739
|
-
var
|
|
740
|
-
let t =
|
|
740
|
+
var Be = M("predicate"), Ve = L(({ client: e }) => {
|
|
741
|
+
let t = Be.store({}), n = j(t, { register(e, t) {
|
|
741
742
|
return {
|
|
742
743
|
...e,
|
|
743
744
|
[t.name]: {
|
|
@@ -745,13 +746,13 @@ var Le = N("predicate"), Re = R(({ client: e }) => {
|
|
|
745
746
|
predicate: t.predicate
|
|
746
747
|
}
|
|
747
748
|
};
|
|
748
|
-
} }), i =
|
|
749
|
-
|
|
749
|
+
} }), i = P();
|
|
750
|
+
I({
|
|
750
751
|
clock: i,
|
|
751
752
|
source: t,
|
|
752
753
|
filter: (e, { name: t }) => e[t] !== void 0,
|
|
753
754
|
fn: (e, { name: t }) => `Predicate '${t}' already registered. Registering again will override the previous registration.`
|
|
754
|
-
}).watch((e) => /* @__PURE__ */ r("warn", e)),
|
|
755
|
+
}).watch((e) => /* @__PURE__ */ r("warn", e)), I({
|
|
755
756
|
clock: i,
|
|
756
757
|
fn: ({ name: e, predicate: t }) => Object.freeze({
|
|
757
758
|
name: e,
|
|
@@ -764,7 +765,7 @@ var Le = N("predicate"), Re = R(({ client: e }) => {
|
|
|
764
765
|
return t.map((t) => t[e]?.predicate, { skipVoid: !1 });
|
|
765
766
|
}
|
|
766
767
|
function s(t) {
|
|
767
|
-
let n =
|
|
768
|
+
let n = F(() => void 0, { skipVoid: !1 }), r = k({
|
|
768
769
|
source: {
|
|
769
770
|
predicate: o(t),
|
|
770
771
|
snapshot: e.stateSnapshotStore
|
|
@@ -776,13 +777,13 @@ var Le = N("predicate"), Re = R(({ client: e }) => {
|
|
|
776
777
|
});
|
|
777
778
|
}
|
|
778
779
|
});
|
|
779
|
-
return
|
|
780
|
+
return I({
|
|
780
781
|
source: {
|
|
781
782
|
responses: e.responses.listStore,
|
|
782
783
|
fields: e.fields.listStore
|
|
783
784
|
},
|
|
784
785
|
target: r
|
|
785
|
-
}),
|
|
786
|
+
}), I({
|
|
786
787
|
clock: r.doneData,
|
|
787
788
|
filter: (e) => e !== void 0,
|
|
788
789
|
target: n
|
|
@@ -795,34 +796,34 @@ var Le = N("predicate"), Re = R(({ client: e }) => {
|
|
|
795
796
|
getEvokablePredicate: s
|
|
796
797
|
};
|
|
797
798
|
});
|
|
798
|
-
function
|
|
799
|
-
return
|
|
799
|
+
function He(e) {
|
|
800
|
+
return R(Ve, e);
|
|
800
801
|
}
|
|
801
|
-
var
|
|
802
|
+
var Ue = (e, t, n) => {
|
|
802
803
|
n.register({
|
|
803
804
|
name: e,
|
|
804
805
|
predicate: t
|
|
805
806
|
});
|
|
806
|
-
},
|
|
807
|
-
function
|
|
807
|
+
}, We = M("feature");
|
|
808
|
+
function q(e) {
|
|
808
809
|
return e?.enabled === !1;
|
|
809
810
|
}
|
|
810
|
-
function
|
|
811
|
+
function Ge(e) {
|
|
811
812
|
return e === "true" || e !== "false" && e;
|
|
812
813
|
}
|
|
813
|
-
var
|
|
814
|
-
let t =
|
|
814
|
+
var Ke = L(({ client: e }) => {
|
|
815
|
+
let t = We.store({}), n = We.store([]), i = j(t, { register(e, t) {
|
|
815
816
|
return {
|
|
816
817
|
...e,
|
|
817
818
|
[t.id]: t.feature
|
|
818
819
|
};
|
|
819
|
-
} }), a =
|
|
820
|
-
|
|
820
|
+
} }), a = P();
|
|
821
|
+
I({
|
|
821
822
|
clock: a,
|
|
822
823
|
source: t,
|
|
823
824
|
filter: (e, { id: t }) => e[t] !== void 0,
|
|
824
825
|
fn: (e, { id: t }) => `Feature '${t}' already registered. Registering again will override the previous registration.`
|
|
825
|
-
}).watch((e) => /* @__PURE__ */ r("warn", e)),
|
|
826
|
+
}).watch((e) => /* @__PURE__ */ r("warn", e)), I({
|
|
826
827
|
clock: a,
|
|
827
828
|
fn: ({ id: e, feature: t }) => Object.freeze({
|
|
828
829
|
id: e,
|
|
@@ -836,20 +837,20 @@ var Ue = R(({ client: e }) => {
|
|
|
836
837
|
}),
|
|
837
838
|
target: i.register
|
|
838
839
|
});
|
|
839
|
-
let o =
|
|
840
|
+
let o = N(async ({ id: e, key: t, storage: n = "local", enabled: r }) => {
|
|
840
841
|
if (r === !1) return null;
|
|
841
|
-
let i =
|
|
842
|
+
let i = O(`feature:${e}:${t}`, "global"), a = (n === "session" ? D : E).get(i).text();
|
|
842
843
|
return a ? {
|
|
843
844
|
id: e,
|
|
844
845
|
key: t,
|
|
845
|
-
bucket:
|
|
846
|
+
bucket: Ge(a),
|
|
846
847
|
storage: n
|
|
847
848
|
} : null;
|
|
848
|
-
}), s =
|
|
849
|
+
}), s = N((e) => {
|
|
849
850
|
if (!e) return null;
|
|
850
|
-
let t =
|
|
851
|
-
(e.storage === "session" ?
|
|
852
|
-
}), c = /* @__PURE__ */ new Map(), l =
|
|
851
|
+
let t = O(`feature:${e.id}:${e.key}`, "global");
|
|
852
|
+
(e.storage === "session" ? D : E).set(t, e.bucket);
|
|
853
|
+
}), c = /* @__PURE__ */ new Map(), l = k({
|
|
853
854
|
source: {
|
|
854
855
|
allFeaturesStore: t,
|
|
855
856
|
resolvedFeaturesStore: n
|
|
@@ -859,7 +860,7 @@ var Ue = R(({ client: e }) => {
|
|
|
859
860
|
if (a) return a;
|
|
860
861
|
let o = e[n];
|
|
861
862
|
if (!o) throw Error(`Feature with id '${n}' not found`);
|
|
862
|
-
if (
|
|
863
|
+
if (q(o.feature)) return {
|
|
863
864
|
id: o.id,
|
|
864
865
|
bucket: !1,
|
|
865
866
|
key: i,
|
|
@@ -886,7 +887,7 @@ var Ue = R(({ client: e }) => {
|
|
|
886
887
|
};
|
|
887
888
|
}
|
|
888
889
|
});
|
|
889
|
-
|
|
890
|
+
I({
|
|
890
891
|
clock: i.register,
|
|
891
892
|
fn: (e) => {
|
|
892
893
|
let { id: t, feature: n } = e;
|
|
@@ -898,10 +899,10 @@ var Ue = R(({ client: e }) => {
|
|
|
898
899
|
};
|
|
899
900
|
},
|
|
900
901
|
target: o
|
|
901
|
-
}),
|
|
902
|
+
}), I({
|
|
902
903
|
source: t,
|
|
903
904
|
clock: l.doneData,
|
|
904
|
-
filter: (e, t) => !
|
|
905
|
+
filter: (e, t) => !q(e[t.id]?.feature),
|
|
905
906
|
fn: (e, t) => {
|
|
906
907
|
let { id: n, bucket: r, storage: i } = t, a = e[n]?.feature.key;
|
|
907
908
|
return a ? {
|
|
@@ -913,7 +914,7 @@ var Ue = R(({ client: e }) => {
|
|
|
913
914
|
},
|
|
914
915
|
target: s
|
|
915
916
|
});
|
|
916
|
-
let u =
|
|
917
|
+
let u = A({
|
|
917
918
|
allFeaturesStore: t,
|
|
918
919
|
resolvedFeaturesStore: n
|
|
919
920
|
}).map(({ allFeaturesStore: e, resolvedFeaturesStore: t }) => Object.values(e).map((e) => {
|
|
@@ -939,25 +940,25 @@ var Ue = R(({ client: e }) => {
|
|
|
939
940
|
isResolved: !1
|
|
940
941
|
};
|
|
941
942
|
}));
|
|
942
|
-
|
|
943
|
+
I({
|
|
943
944
|
clock: l.doneData,
|
|
944
945
|
source: {
|
|
945
946
|
resolvedFeatures: n,
|
|
946
947
|
allFeatures: t
|
|
947
948
|
},
|
|
948
|
-
filter: ({ resolvedFeatures: e, allFeatures: t }, { id: n, key: r }) => !
|
|
949
|
+
filter: ({ resolvedFeatures: e, allFeatures: t }, { id: n, key: r }) => !q(t[n]?.feature) && !e.some((e) => e.id === n && e.key === r),
|
|
949
950
|
fn: (e, t) => t,
|
|
950
951
|
target: e.eventBus.prepend((e) => ({
|
|
951
952
|
type: "feature_decide",
|
|
952
953
|
feature: e
|
|
953
954
|
}))
|
|
954
|
-
}),
|
|
955
|
+
}), I({
|
|
955
956
|
clock: [o.doneData, l.doneData],
|
|
956
957
|
source: {
|
|
957
958
|
resolvedFeatures: n,
|
|
958
959
|
allFeatures: t
|
|
959
960
|
},
|
|
960
|
-
fn: ({ resolvedFeatures: e, allFeatures: t }, n) => !n ||
|
|
961
|
+
fn: ({ resolvedFeatures: e, allFeatures: t }, n) => !n || q(t[n.id]?.feature) || e.some((e) => e.id === n.id && e.key === n.key) ? e : [...e, n],
|
|
961
962
|
target: n
|
|
962
963
|
});
|
|
963
964
|
function d(e) {
|
|
@@ -974,16 +975,16 @@ var Ue = R(({ client: e }) => {
|
|
|
974
975
|
return t.map((t) => t[e], { skipVoid: !1 });
|
|
975
976
|
}
|
|
976
977
|
function _(e) {
|
|
977
|
-
let t =
|
|
978
|
+
let t = F(async () => void 0, { skipVoid: !1 }), n = h(e), r = k({
|
|
978
979
|
source: n,
|
|
979
980
|
effect: async (e) => {
|
|
980
981
|
if (e) return async () => (await e.getBucket()).bucket;
|
|
981
982
|
}
|
|
982
983
|
});
|
|
983
|
-
return
|
|
984
|
+
return I({
|
|
984
985
|
clock: n,
|
|
985
986
|
target: r
|
|
986
|
-
}),
|
|
987
|
+
}), I({
|
|
987
988
|
clock: r.doneData,
|
|
988
989
|
filter: (e) => e !== void 0,
|
|
989
990
|
target: t
|
|
@@ -995,13 +996,13 @@ var Ue = R(({ client: e }) => {
|
|
|
995
996
|
let n = _(e);
|
|
996
997
|
return p.set(e, n), n;
|
|
997
998
|
}
|
|
998
|
-
function
|
|
999
|
-
let t = v(e), n =
|
|
999
|
+
function ee(e) {
|
|
1000
|
+
let t = v(e), n = F(void 0, { skipVoid: !1 }), r = k({
|
|
1000
1001
|
source: t,
|
|
1001
1002
|
mapParams: (e, t) => t,
|
|
1002
|
-
effect:
|
|
1003
|
+
effect: N(async (e) => await e())
|
|
1003
1004
|
});
|
|
1004
|
-
return
|
|
1005
|
+
return I({
|
|
1005
1006
|
clock: r.doneData,
|
|
1006
1007
|
fn: (t) => {
|
|
1007
1008
|
if (t !== void 0) return {
|
|
@@ -1010,15 +1011,15 @@ var Ue = R(({ client: e }) => {
|
|
|
1010
1011
|
};
|
|
1011
1012
|
},
|
|
1012
1013
|
target: n
|
|
1013
|
-
}),
|
|
1014
|
+
}), I({
|
|
1014
1015
|
clock: t,
|
|
1015
1016
|
target: r
|
|
1016
1017
|
}), r(), n;
|
|
1017
1018
|
}
|
|
1018
|
-
function
|
|
1019
|
+
function y(e) {
|
|
1019
1020
|
let t = m.get(e);
|
|
1020
1021
|
if (t) return t;
|
|
1021
|
-
let n =
|
|
1022
|
+
let n = ee(e);
|
|
1022
1023
|
return m.set(e, n), n;
|
|
1023
1024
|
}
|
|
1024
1025
|
return {
|
|
@@ -1027,29 +1028,29 @@ var Ue = R(({ client: e }) => {
|
|
|
1027
1028
|
getByName: g,
|
|
1028
1029
|
listStore: u,
|
|
1029
1030
|
getEvokableFeature: v,
|
|
1030
|
-
getFeatureResult:
|
|
1031
|
+
getFeatureResult: y
|
|
1031
1032
|
};
|
|
1032
1033
|
});
|
|
1033
|
-
function
|
|
1034
|
-
return
|
|
1034
|
+
function qe(e) {
|
|
1035
|
+
return R(Ke, e);
|
|
1035
1036
|
}
|
|
1036
|
-
var
|
|
1037
|
+
var Je = (e, t, n) => {
|
|
1037
1038
|
n.register({
|
|
1038
1039
|
id: e,
|
|
1039
1040
|
feature: t
|
|
1040
1041
|
});
|
|
1041
|
-
},
|
|
1042
|
-
function
|
|
1042
|
+
}, J = M("history");
|
|
1043
|
+
function Ye(e, t) {
|
|
1043
1044
|
return {
|
|
1044
|
-
id:
|
|
1045
|
+
id: te(`history-entry-${Date.now()}-${Math.random()}}`),
|
|
1045
1046
|
node: t,
|
|
1046
1047
|
at: Date.now(),
|
|
1047
1048
|
experienceId: e
|
|
1048
1049
|
};
|
|
1049
1050
|
}
|
|
1050
|
-
var
|
|
1051
|
-
let e =
|
|
1052
|
-
e.on(t, (e, t) => ({ entries: [...e.entries,
|
|
1051
|
+
var Xe = L(() => {
|
|
1052
|
+
let e = J.store({ entries: [] }), t = J.event(), n = J.event(), r = J.event(), i = J.event();
|
|
1053
|
+
e.on(t, (e, t) => ({ entries: [...e.entries, Ye(t.experienceId, t.node)] })), e.on(n, (e, t) => ({ entries: [...e.entries.slice(0, -1), Ye(t.experienceId, t.node)] })), e.on(i, (e, t) => t);
|
|
1053
1054
|
function a(e, t) {
|
|
1054
1055
|
let n = {
|
|
1055
1056
|
lastStepIndex: -1,
|
|
@@ -1057,7 +1058,7 @@ var qe = R(() => {
|
|
|
1057
1058
|
};
|
|
1058
1059
|
for (let r = e.length - 1; r >= 0; r--) {
|
|
1059
1060
|
let i = e[r], a = i?.node;
|
|
1060
|
-
if (!(!a || !
|
|
1061
|
+
if (!(!a || !w(a)) && !(t && i.experienceId !== t)) if (n.lastStepIndex === -1) n.lastStepIndex = r;
|
|
1061
1062
|
else {
|
|
1062
1063
|
n.secondLastStepIndex = r;
|
|
1063
1064
|
break;
|
|
@@ -1079,20 +1080,20 @@ var qe = R(() => {
|
|
|
1079
1080
|
entriesStore: e.map((e) => e.entries)
|
|
1080
1081
|
};
|
|
1081
1082
|
});
|
|
1082
|
-
function
|
|
1083
|
-
return
|
|
1083
|
+
function Ze() {
|
|
1084
|
+
return R(Xe);
|
|
1084
1085
|
}
|
|
1085
1086
|
//#endregion
|
|
1086
1087
|
//#region src/utils/events.ts
|
|
1087
|
-
var
|
|
1088
|
-
let t =
|
|
1088
|
+
var Qe = 0, $e = (e) => {
|
|
1089
|
+
let t = F([]);
|
|
1089
1090
|
return t.on(e, (e, t) => [...e, {
|
|
1090
|
-
id:
|
|
1091
|
+
id: Qe++,
|
|
1091
1092
|
at: /* @__PURE__ */ new Date(),
|
|
1092
1093
|
payload: t
|
|
1093
1094
|
}]), t;
|
|
1094
|
-
},
|
|
1095
|
-
let e =
|
|
1095
|
+
}, et = M("field"), tt = L(() => {
|
|
1096
|
+
let e = et.store({}), t = j(e, {
|
|
1096
1097
|
register(e, t) {
|
|
1097
1098
|
return {
|
|
1098
1099
|
...e,
|
|
@@ -1140,13 +1141,13 @@ var Ye = 0, Xe = (e) => {
|
|
|
1140
1141
|
getByName: c
|
|
1141
1142
|
};
|
|
1142
1143
|
});
|
|
1143
|
-
function
|
|
1144
|
-
return
|
|
1144
|
+
function nt() {
|
|
1145
|
+
return R(tt);
|
|
1145
1146
|
}
|
|
1146
1147
|
//#endregion
|
|
1147
1148
|
//#region src/entities/step/step.ts
|
|
1148
|
-
var
|
|
1149
|
-
let e =
|
|
1149
|
+
var rt = M("step"), it = L(() => {
|
|
1150
|
+
let e = rt.store({}), t = j(e, { register(e, t) {
|
|
1150
1151
|
return {
|
|
1151
1152
|
...e,
|
|
1152
1153
|
[t.step.id]: t.step
|
|
@@ -1170,16 +1171,16 @@ var et = N("step"), tt = R(() => {
|
|
|
1170
1171
|
indexStore: e
|
|
1171
1172
|
};
|
|
1172
1173
|
});
|
|
1173
|
-
function
|
|
1174
|
-
return
|
|
1174
|
+
function at() {
|
|
1175
|
+
return R(it);
|
|
1175
1176
|
}
|
|
1176
|
-
function
|
|
1177
|
+
function ot(e, t) {
|
|
1177
1178
|
t.register(e);
|
|
1178
1179
|
}
|
|
1179
1180
|
//#endregion
|
|
1180
1181
|
//#region src/entities/content/content.ts
|
|
1181
|
-
var
|
|
1182
|
-
let e =
|
|
1182
|
+
var st = M("content"), ct = L(() => {
|
|
1183
|
+
let e = st.store({}), t = j(e, {
|
|
1183
1184
|
register(e, t) {
|
|
1184
1185
|
return {
|
|
1185
1186
|
...e,
|
|
@@ -1220,16 +1221,16 @@ var it = N("content"), at = R(() => {
|
|
|
1220
1221
|
indexStore: e
|
|
1221
1222
|
};
|
|
1222
1223
|
});
|
|
1223
|
-
function
|
|
1224
|
-
return
|
|
1224
|
+
function lt() {
|
|
1225
|
+
return R(ct);
|
|
1225
1226
|
}
|
|
1226
|
-
function
|
|
1227
|
+
function ut(e, t) {
|
|
1227
1228
|
t.register(e);
|
|
1228
1229
|
}
|
|
1229
1230
|
//#endregion
|
|
1230
1231
|
//#region src/entities/action/action.ts
|
|
1231
|
-
var
|
|
1232
|
-
let t =
|
|
1232
|
+
var dt = M("action"), ft = L(({ client: e }) => {
|
|
1233
|
+
let t = dt.store({}), n = j(t, { register(e, t) {
|
|
1233
1234
|
return {
|
|
1234
1235
|
...e,
|
|
1235
1236
|
[t.key]: {
|
|
@@ -1237,13 +1238,13 @@ var ct = N("action"), lt = R(({ client: e }) => {
|
|
|
1237
1238
|
action: t.action
|
|
1238
1239
|
}
|
|
1239
1240
|
};
|
|
1240
|
-
} }), i =
|
|
1241
|
-
|
|
1241
|
+
} }), i = P();
|
|
1242
|
+
I({
|
|
1242
1243
|
clock: i,
|
|
1243
1244
|
source: t,
|
|
1244
1245
|
filter: (e, { key: t }) => e[t] !== void 0,
|
|
1245
1246
|
fn: (e, { key: t }) => `Action '${t}' already registered. Registering again will override the previous registration.`
|
|
1246
|
-
}).watch((e) => /* @__PURE__ */ r("warn", e)),
|
|
1247
|
+
}).watch((e) => /* @__PURE__ */ r("warn", e)), I({
|
|
1247
1248
|
clock: i,
|
|
1248
1249
|
fn: ({ key: e, action: t }) => Object.freeze({
|
|
1249
1250
|
key: e,
|
|
@@ -1256,7 +1257,7 @@ var ct = N("action"), lt = R(({ client: e }) => {
|
|
|
1256
1257
|
return t.map((t) => t[e]?.action, { skipVoid: !1 });
|
|
1257
1258
|
}
|
|
1258
1259
|
function s(t, n) {
|
|
1259
|
-
let r =
|
|
1260
|
+
let r = F(() => void 0, { skipVoid: !1 }), i = n ? { experience: n.experience } : null, a = k({
|
|
1260
1261
|
source: {
|
|
1261
1262
|
action: o(t),
|
|
1262
1263
|
snapshot: e.stateSnapshotStore
|
|
@@ -1268,13 +1269,13 @@ var ct = N("action"), lt = R(({ client: e }) => {
|
|
|
1268
1269
|
}, i);
|
|
1269
1270
|
}
|
|
1270
1271
|
});
|
|
1271
|
-
return
|
|
1272
|
+
return I({
|
|
1272
1273
|
source: {
|
|
1273
1274
|
responses: e.responses.listStore,
|
|
1274
1275
|
fields: e.fields.listStore
|
|
1275
1276
|
},
|
|
1276
1277
|
target: a
|
|
1277
|
-
}),
|
|
1278
|
+
}), I({
|
|
1278
1279
|
clock: a.doneData,
|
|
1279
1280
|
filter: (e) => e !== void 0,
|
|
1280
1281
|
target: r
|
|
@@ -1287,10 +1288,10 @@ var ct = N("action"), lt = R(({ client: e }) => {
|
|
|
1287
1288
|
getEvokableAction: s
|
|
1288
1289
|
};
|
|
1289
1290
|
});
|
|
1290
|
-
function
|
|
1291
|
-
return
|
|
1291
|
+
function pt(e) {
|
|
1292
|
+
return R(ft, e);
|
|
1292
1293
|
}
|
|
1293
|
-
var
|
|
1294
|
+
var mt = (e, t, n) => {
|
|
1294
1295
|
n.register({
|
|
1295
1296
|
key: e,
|
|
1296
1297
|
action: t
|
|
@@ -1298,7 +1299,7 @@ var dt = (e, t, n) => {
|
|
|
1298
1299
|
};
|
|
1299
1300
|
//#endregion
|
|
1300
1301
|
//#region src/entities/response/response-validation.ts
|
|
1301
|
-
function
|
|
1302
|
+
function Y(e, t, n, r) {
|
|
1302
1303
|
return {
|
|
1303
1304
|
fieldKey: e.key,
|
|
1304
1305
|
userMessage: n,
|
|
@@ -1306,62 +1307,62 @@ function Z(e, t, n, r) {
|
|
|
1306
1307
|
value: t
|
|
1307
1308
|
};
|
|
1308
1309
|
}
|
|
1309
|
-
function
|
|
1310
|
+
function X(e) {
|
|
1310
1311
|
return e === null || e === "" || Array.isArray(e) && !e.length;
|
|
1311
1312
|
}
|
|
1312
|
-
function
|
|
1313
|
+
function ht(e) {
|
|
1313
1314
|
return typeof e == "string" || typeof e == "number" || typeof e == "boolean" || e === null;
|
|
1314
1315
|
}
|
|
1315
|
-
function
|
|
1316
|
+
function gt(e) {
|
|
1316
1317
|
try {
|
|
1317
1318
|
return JSON.stringify(e), !0;
|
|
1318
1319
|
} catch {
|
|
1319
1320
|
return !1;
|
|
1320
1321
|
}
|
|
1321
1322
|
}
|
|
1322
|
-
function
|
|
1323
|
+
function _t(e, t) {
|
|
1323
1324
|
return t.find((t) => t.key === e) ?? null;
|
|
1324
1325
|
}
|
|
1325
|
-
function
|
|
1326
|
+
function vt(e, t) {
|
|
1326
1327
|
return e.multiple && (typeof t == "string" || typeof t == "number" || typeof t == "boolean") ? [t] : t;
|
|
1327
1328
|
}
|
|
1328
|
-
function
|
|
1329
|
-
if (e.type !== "object" ||
|
|
1329
|
+
function yt(e, t) {
|
|
1330
|
+
if (e.type !== "object" || X(t)) return null;
|
|
1330
1331
|
if (e.multiple) {
|
|
1331
|
-
if (!Array.isArray(t)) return
|
|
1332
|
+
if (!Array.isArray(t)) return Y(e, t, "This field expects multiple values", "Field expects an array of objects.");
|
|
1332
1333
|
for (let n of t) {
|
|
1333
|
-
if (typeof n != "object" || !n) return
|
|
1334
|
-
if (!
|
|
1334
|
+
if (typeof n != "object" || !n) return Y(e, t, "This field expects object values", "Field expects an array of objects, but received non-object value.");
|
|
1335
|
+
if (!gt(n)) return Y(e, t, "This field contains non-serializable data", "Field value contains non-JSON-serializable data (functions, circular references, etc.).");
|
|
1335
1336
|
}
|
|
1336
1337
|
return null;
|
|
1337
1338
|
}
|
|
1338
|
-
return Array.isArray(t) ?
|
|
1339
|
+
return Array.isArray(t) ? Y(e, t, "This field expects a single value", "Field expects a single object, not an array.") : typeof t != "object" || !t ? Y(e, t, "This field expects an object value", "Field expects an object value.") : gt(t) ? null : Y(e, t, "This field contains non-serializable data", "Field value contains non-JSON-serializable data (functions, circular references, etc.).");
|
|
1339
1340
|
}
|
|
1340
|
-
function
|
|
1341
|
-
if (
|
|
1341
|
+
function bt(e, t) {
|
|
1342
|
+
if (X(t) || !Array.isArray(e.options) || e.options.length === 0) return null;
|
|
1342
1343
|
let n = Array.isArray(t) ? t : [t];
|
|
1343
1344
|
if (e.type === "object") {
|
|
1344
1345
|
let r = new Set(e.options.map((e) => JSON.stringify(e.value)));
|
|
1345
|
-
return n.every((e) => r.has(JSON.stringify(e))) ? null :
|
|
1346
|
+
return n.every((e) => r.has(JSON.stringify(e))) ? null : Y(e, t, "This field expects a valid option", "Field expects a valid option from the defined choices.");
|
|
1346
1347
|
}
|
|
1347
1348
|
let r = e.options.map((e) => e.value);
|
|
1348
|
-
return n.every((e) => !
|
|
1349
|
+
return n.every((e) => !ht(e) || e === null ? !1 : r.includes(e)) ? null : Y(e, t, "This field expects a valid option", `Field expects a valid option. Valid options are: ${r.join(", ")}`);
|
|
1349
1350
|
}
|
|
1350
|
-
async function
|
|
1351
|
-
if (n.validation && !e(n.validation) && !
|
|
1351
|
+
async function xt(t, n, r, i) {
|
|
1352
|
+
if (n.validation && !e(n.validation) && !X(r)) {
|
|
1352
1353
|
let e = i ? {
|
|
1353
1354
|
$input: r,
|
|
1354
1355
|
responses: i
|
|
1355
1356
|
} : { $input: r }, a = await t(n.validation, e);
|
|
1356
|
-
if (typeof a == "string") return
|
|
1357
|
-
if (a === !1) return
|
|
1357
|
+
if (typeof a == "string") return Y(n, r, a, `Field validation resulted in an error: ${a}.`);
|
|
1358
|
+
if (a === !1) return Y(n, r, "This field is invalid", "Field validation resulted in an unspecified error.");
|
|
1358
1359
|
}
|
|
1359
|
-
return n.required &&
|
|
1360
|
+
return n.required && X(r) ? Y(n, r, "This field is required", "Field is required.") : !n.multiple && Array.isArray(r) && r.length > 1 ? Y(n, r, "This field expects a single response", "Field expects a single response.") : null;
|
|
1360
1361
|
}
|
|
1361
1362
|
//#endregion
|
|
1362
1363
|
//#region src/entities/response/response.ts
|
|
1363
|
-
var
|
|
1364
|
-
let t =
|
|
1364
|
+
var St = M("response"), Ct = L(({ client: e }) => {
|
|
1365
|
+
let t = St.store({}), r = P(), i = P(), a = j(t, {
|
|
1365
1366
|
register(e, t) {
|
|
1366
1367
|
return {
|
|
1367
1368
|
...e,
|
|
@@ -1390,7 +1391,7 @@ var yt = N("response"), bt = R(({ client: e }) => {
|
|
|
1390
1391
|
});
|
|
1391
1392
|
} else a.registerBatch(e);
|
|
1392
1393
|
}
|
|
1393
|
-
let s = (t, r) => n(e, t, r), c =
|
|
1394
|
+
let s = (t, r) => n(e, t, r), c = k({
|
|
1394
1395
|
source: {
|
|
1395
1396
|
allFields: e.fields.listStore,
|
|
1396
1397
|
existingResponses: t
|
|
@@ -1400,7 +1401,7 @@ var yt = N("response"), bt = R(({ client: e }) => {
|
|
|
1400
1401
|
...t,
|
|
1401
1402
|
...n
|
|
1402
1403
|
}, o = Object.entries(n), c = await Promise.allSettled(o.map(async ([t, n]) => {
|
|
1403
|
-
let o =
|
|
1404
|
+
let o = _t(t, e);
|
|
1404
1405
|
if (!o) {
|
|
1405
1406
|
r.push({
|
|
1406
1407
|
fieldKey: t,
|
|
@@ -1410,17 +1411,17 @@ var yt = N("response"), bt = R(({ client: e }) => {
|
|
|
1410
1411
|
});
|
|
1411
1412
|
return;
|
|
1412
1413
|
}
|
|
1413
|
-
let c =
|
|
1414
|
+
let c = vt(o, n), l = await xt(s, o, c, a);
|
|
1414
1415
|
if (l) {
|
|
1415
1416
|
r.push(l);
|
|
1416
1417
|
return;
|
|
1417
1418
|
}
|
|
1418
|
-
let u =
|
|
1419
|
+
let u = yt(o, c);
|
|
1419
1420
|
if (u) {
|
|
1420
1421
|
r.push(u);
|
|
1421
1422
|
return;
|
|
1422
1423
|
}
|
|
1423
|
-
let d =
|
|
1424
|
+
let d = bt(o, c);
|
|
1424
1425
|
if (d) {
|
|
1425
1426
|
r.push(d);
|
|
1426
1427
|
return;
|
|
@@ -1448,7 +1449,7 @@ var yt = N("response"), bt = R(({ client: e }) => {
|
|
|
1448
1449
|
async function l(e) {
|
|
1449
1450
|
return c(e);
|
|
1450
1451
|
}
|
|
1451
|
-
let u =
|
|
1452
|
+
let u = k({
|
|
1452
1453
|
source: t,
|
|
1453
1454
|
effect: async (e, t) => {
|
|
1454
1455
|
let { responsesToCommit: n, validationErrors: r } = await c(t);
|
|
@@ -1463,7 +1464,7 @@ var yt = N("response"), bt = R(({ client: e }) => {
|
|
|
1463
1464
|
value: t
|
|
1464
1465
|
})));
|
|
1465
1466
|
function m(e) {
|
|
1466
|
-
return
|
|
1467
|
+
return A({
|
|
1467
1468
|
f: e,
|
|
1468
1469
|
s: t
|
|
1469
1470
|
}, ({ f: e, s: t }) => {
|
|
@@ -1480,10 +1481,10 @@ var yt = N("response"), bt = R(({ client: e }) => {
|
|
|
1480
1481
|
function _(t) {
|
|
1481
1482
|
return m(e.fields.getByName(t));
|
|
1482
1483
|
}
|
|
1483
|
-
return
|
|
1484
|
+
return I({
|
|
1484
1485
|
clock: r,
|
|
1485
1486
|
target: a.clearAll
|
|
1486
|
-
}),
|
|
1487
|
+
}), I({
|
|
1487
1488
|
clock: i,
|
|
1488
1489
|
target: a.clear
|
|
1489
1490
|
}), {
|
|
@@ -1499,13 +1500,13 @@ var yt = N("response"), bt = R(({ client: e }) => {
|
|
|
1499
1500
|
getByFieldName: _
|
|
1500
1501
|
};
|
|
1501
1502
|
});
|
|
1502
|
-
function
|
|
1503
|
-
return
|
|
1503
|
+
function wt(e) {
|
|
1504
|
+
return R(Ct, e);
|
|
1504
1505
|
}
|
|
1505
1506
|
//#endregion
|
|
1506
1507
|
//#region src/entities/condition/condition.ts
|
|
1507
|
-
var
|
|
1508
|
-
let e =
|
|
1508
|
+
var Tt = M("condition"), Et = L(() => {
|
|
1509
|
+
let e = Tt.store({}), t = j(e, { register(e, t) {
|
|
1509
1510
|
return {
|
|
1510
1511
|
...e,
|
|
1511
1512
|
[t.condition.id]: t.condition
|
|
@@ -1529,12 +1530,12 @@ var St = N("condition"), Ct = R(() => {
|
|
|
1529
1530
|
indexStore: e
|
|
1530
1531
|
};
|
|
1531
1532
|
});
|
|
1532
|
-
function
|
|
1533
|
-
return
|
|
1533
|
+
function Dt() {
|
|
1534
|
+
return R(Et);
|
|
1534
1535
|
}
|
|
1535
1536
|
//#endregion
|
|
1536
1537
|
//#region src/utils/api-url.ts
|
|
1537
|
-
function
|
|
1538
|
+
function Ot() {
|
|
1538
1539
|
if (c()) {
|
|
1539
1540
|
let e = [
|
|
1540
1541
|
document.currentScript,
|
|
@@ -1549,7 +1550,7 @@ function Tt() {
|
|
|
1549
1550
|
}
|
|
1550
1551
|
//#endregion
|
|
1551
1552
|
//#region src/utils/search-params.ts
|
|
1552
|
-
function
|
|
1553
|
+
function kt() {
|
|
1553
1554
|
if (!s()) return {};
|
|
1554
1555
|
let e = new URLSearchParams(window.location.search), t = {}, n = /* @__PURE__ */ new Set();
|
|
1555
1556
|
for (let [t] of e.entries()) t.startsWith("picked-") && n.add(t);
|
|
@@ -1557,23 +1558,23 @@ function Et() {
|
|
|
1557
1558
|
let n = r.replace("picked-", "");
|
|
1558
1559
|
t[n] = e.getAll(r);
|
|
1559
1560
|
}
|
|
1560
|
-
let r =
|
|
1561
|
-
if (n.size > 0)
|
|
1561
|
+
let r = O("s");
|
|
1562
|
+
if (n.size > 0) D.set(r, t);
|
|
1562
1563
|
else {
|
|
1563
|
-
let e =
|
|
1564
|
+
let e = D.get(r);
|
|
1564
1565
|
if (e) return e.json() || {};
|
|
1565
1566
|
}
|
|
1566
1567
|
return t;
|
|
1567
1568
|
}
|
|
1568
1569
|
//#endregion
|
|
1569
1570
|
//#region src/entities/session/session.ts
|
|
1570
|
-
var
|
|
1571
|
-
function
|
|
1571
|
+
var At = O("session", "global");
|
|
1572
|
+
function jt() {
|
|
1572
1573
|
return p() ? crypto.randomUUID() : `${Date.now().toString(36)}-${Math.random().toString(36).substring(2, 15)}-${Math.random().toString(36).substring(2, 15)}-${Math.random().toString(36).substring(2, 15)}`;
|
|
1573
1574
|
}
|
|
1574
|
-
function
|
|
1575
|
+
function Mt() {
|
|
1575
1576
|
if (!m()) return null;
|
|
1576
|
-
let e =
|
|
1577
|
+
let e = E.get(At);
|
|
1577
1578
|
if (!e.isSet()) return null;
|
|
1578
1579
|
try {
|
|
1579
1580
|
return e.json();
|
|
@@ -1581,10 +1582,10 @@ function kt() {
|
|
|
1581
1582
|
return null;
|
|
1582
1583
|
}
|
|
1583
1584
|
}
|
|
1584
|
-
var
|
|
1585
|
-
let e =
|
|
1585
|
+
var Nt = L(() => {
|
|
1586
|
+
let e = Mt(), t = { id: e?.id ?? jt() };
|
|
1586
1587
|
e?.isUser !== void 0 && (t.isUser = e.isUser), e?.identifiers && Object.keys(e.identifiers).length > 0 && (t.identifiers = e.identifiers);
|
|
1587
|
-
let n =
|
|
1588
|
+
let n = F(t), r = j(n, {
|
|
1588
1589
|
setIsUser: (e, t) => ({
|
|
1589
1590
|
...e,
|
|
1590
1591
|
isUser: t
|
|
@@ -1604,15 +1605,15 @@ var At = R(() => {
|
|
|
1604
1605
|
let i = { id: e.id };
|
|
1605
1606
|
return e.isUser !== void 0 && (i.isUser = e.isUser), Object.keys(r).length > 0 && (i.identifiers = r), i;
|
|
1606
1607
|
}
|
|
1607
|
-
}), i =
|
|
1608
|
+
}), i = k({
|
|
1608
1609
|
source: n,
|
|
1609
1610
|
effect: (e) => {
|
|
1610
1611
|
if (m()) try {
|
|
1611
|
-
|
|
1612
|
+
E.get(At).set(e);
|
|
1612
1613
|
} catch {}
|
|
1613
1614
|
}
|
|
1614
1615
|
});
|
|
1615
|
-
return
|
|
1616
|
+
return I({
|
|
1616
1617
|
source: n,
|
|
1617
1618
|
target: i
|
|
1618
1619
|
}), {
|
|
@@ -1622,39 +1623,39 @@ var At = R(() => {
|
|
|
1622
1623
|
removeIdentifier: r.removeIdentifier
|
|
1623
1624
|
};
|
|
1624
1625
|
});
|
|
1625
|
-
function
|
|
1626
|
-
return
|
|
1626
|
+
function Pt() {
|
|
1627
|
+
return R(Nt, void 0);
|
|
1627
1628
|
}
|
|
1628
1629
|
//#endregion
|
|
1629
1630
|
//#region src/utils/picked-config.ts
|
|
1630
|
-
function
|
|
1631
|
+
function Ft() {
|
|
1631
1632
|
if (s()) return globalThis.window.pickedConfig;
|
|
1632
1633
|
}
|
|
1633
|
-
function
|
|
1634
|
-
if (s()) return
|
|
1634
|
+
function It() {
|
|
1635
|
+
if (s()) return Ft()?.projectId;
|
|
1635
1636
|
}
|
|
1636
|
-
function
|
|
1637
|
+
function Lt() {
|
|
1637
1638
|
if (!c()) return;
|
|
1638
1639
|
let e = document.getElementById("picked_script") || document.querySelector("script#picked") || document.getElementById("cvly");
|
|
1639
1640
|
if (e) return e.dataset.projectid || e.getAttribute("project-id") || void 0;
|
|
1640
1641
|
}
|
|
1641
|
-
function
|
|
1642
|
+
function Rt(e) {
|
|
1642
1643
|
if (e.projectId) return e.projectId;
|
|
1643
|
-
let t =
|
|
1644
|
+
let t = It();
|
|
1644
1645
|
if (t) return t;
|
|
1645
|
-
let n =
|
|
1646
|
+
let n = Lt();
|
|
1646
1647
|
if (n) return n;
|
|
1647
1648
|
throw Error("projectId is required. You can provide it via one of:\n (1) createClient({ projectId }) options;\n (2) window.pickedConfig = { projectId };\n (3) a <script> tag with id 'picked_script', 'picked', or 'cvly' that includes a data-projectid (or project-id) attribute.");
|
|
1648
1649
|
}
|
|
1649
1650
|
//#endregion
|
|
1650
1651
|
//#region src/utils/render-string.ts
|
|
1651
|
-
function
|
|
1652
|
+
function Z(e) {
|
|
1652
1653
|
return e == null || e === "" || Number.isNaN(e);
|
|
1653
1654
|
}
|
|
1654
|
-
var
|
|
1655
|
-
default: (e, t) =>
|
|
1656
|
-
append: (e, t) => t &&
|
|
1657
|
-
prepend: (e, t) => t &&
|
|
1655
|
+
var zt = {
|
|
1656
|
+
default: (e, t) => Z(e) ? String(t ?? "") : String(e),
|
|
1657
|
+
append: (e, t) => t && !Z(e) ? `${e} ${t}` : e,
|
|
1658
|
+
prepend: (e, t) => t && !Z(e) ? `${t} ${e}` : e,
|
|
1658
1659
|
upper: (e) => typeof e == "string" ? e.toUpperCase() : e,
|
|
1659
1660
|
lower: (e) => typeof e == "string" ? e.toLowerCase() : e,
|
|
1660
1661
|
capitalize: (e) => typeof e == "string" ? e.charAt(0).toUpperCase() + e.slice(1) : e,
|
|
@@ -1672,24 +1673,24 @@ var It = {
|
|
|
1672
1673
|
return e instanceof Set ? t.format(Array.from(e).map(String)) : e;
|
|
1673
1674
|
}
|
|
1674
1675
|
};
|
|
1675
|
-
function
|
|
1676
|
+
function Bt(e) {
|
|
1676
1677
|
return typeof e == "object" && !!e;
|
|
1677
1678
|
}
|
|
1678
|
-
function
|
|
1679
|
+
function Vt(e, t) {
|
|
1679
1680
|
let n = t;
|
|
1680
|
-
for (let t of e.split(".")) if (
|
|
1681
|
+
for (let t of e.split(".")) if (Bt(n) && t in n) n = n[t];
|
|
1681
1682
|
else return;
|
|
1682
1683
|
return typeof n == "function" ? n() : n;
|
|
1683
1684
|
}
|
|
1684
|
-
function
|
|
1685
|
-
let n = e.split("|").map((e) => e.trim()), r =
|
|
1685
|
+
function Ht(e, t) {
|
|
1686
|
+
let n = e.split("|").map((e) => e.trim()), r = Vt(n.shift() ?? "", t);
|
|
1686
1687
|
for (let e of n) {
|
|
1687
|
-
let [t, ...n] = e.split(":"), i = t?.trim() ?? "", a = n.join(":").trim().replaceAll(/(?:^['"]|['"]$)/g, ""), o =
|
|
1688
|
+
let [t, ...n] = e.split(":"), i = t?.trim() ?? "", a = n.join(":").trim().replaceAll(/(?:^['"]|['"]$)/g, ""), o = zt[i];
|
|
1688
1689
|
o && (r = o(r, a));
|
|
1689
1690
|
}
|
|
1690
|
-
return
|
|
1691
|
+
return Z(r) ? "" : typeof r == "object" ? JSON.stringify(r) : String(r);
|
|
1691
1692
|
}
|
|
1692
|
-
function
|
|
1693
|
+
function Ut(e, t) {
|
|
1693
1694
|
let n = "", r = 0;
|
|
1694
1695
|
for (; r < e.length;) if (e[r] === "{" && e[r + 1] === "{") {
|
|
1695
1696
|
r += 2;
|
|
@@ -1701,91 +1702,112 @@ function Bt(e, t) {
|
|
|
1701
1702
|
}
|
|
1702
1703
|
i += e[r++];
|
|
1703
1704
|
}
|
|
1704
|
-
n +=
|
|
1705
|
+
n += Ht(i.trim(), t);
|
|
1705
1706
|
} else n += e[r++];
|
|
1706
1707
|
return n;
|
|
1707
1708
|
}
|
|
1708
1709
|
//#endregion
|
|
1709
1710
|
//#region src/utils/preview-session.ts
|
|
1710
|
-
var
|
|
1711
|
-
function
|
|
1712
|
-
return !s() || !h() ? !1 : !!
|
|
1711
|
+
var Wt = "preview-token";
|
|
1712
|
+
function Gt() {
|
|
1713
|
+
return !s() || !h() ? !1 : !!kt()[Wt]?.[0];
|
|
1713
1714
|
}
|
|
1714
1715
|
//#endregion
|
|
1715
1716
|
//#region src/picked.ts
|
|
1716
|
-
var
|
|
1717
|
+
var Kt = class {
|
|
1717
1718
|
static logger = r;
|
|
1718
1719
|
options;
|
|
1719
1720
|
dataSource = null;
|
|
1721
|
+
seededVersionId = null;
|
|
1722
|
+
versionSkew = null;
|
|
1720
1723
|
contentLoader;
|
|
1721
1724
|
previewEmbedderOrigins = null;
|
|
1722
1725
|
plugins = {};
|
|
1723
|
-
|
|
1726
|
+
dataProviders = /* @__PURE__ */ new Map();
|
|
1727
|
+
eventBus = P();
|
|
1724
1728
|
events;
|
|
1725
1729
|
projectId;
|
|
1726
1730
|
apiUrl;
|
|
1727
1731
|
dashboardUrl;
|
|
1728
1732
|
documentationSiteUrl;
|
|
1729
|
-
session =
|
|
1730
|
-
searchParams =
|
|
1731
|
-
history =
|
|
1732
|
-
components =
|
|
1733
|
-
experienceInstances =
|
|
1734
|
-
experiences =
|
|
1735
|
-
frameworks =
|
|
1736
|
-
predicates =
|
|
1737
|
-
features =
|
|
1738
|
-
conditions =
|
|
1739
|
-
fields =
|
|
1740
|
-
responses =
|
|
1741
|
-
steps =
|
|
1742
|
-
contents =
|
|
1743
|
-
actions =
|
|
1744
|
-
conditionResults =
|
|
1745
|
-
stateSnapshotStore =
|
|
1746
|
-
evaluateRuleLogicFx =
|
|
1733
|
+
session = Pt();
|
|
1734
|
+
searchParams = kt();
|
|
1735
|
+
history = Ze();
|
|
1736
|
+
components = ye({ client: this });
|
|
1737
|
+
experienceInstances = S({ client: this });
|
|
1738
|
+
experiences = de({ client: this });
|
|
1739
|
+
frameworks = Ce({ client: this });
|
|
1740
|
+
predicates = He({ client: this });
|
|
1741
|
+
features = qe({ client: this });
|
|
1742
|
+
conditions = Dt();
|
|
1743
|
+
fields = nt();
|
|
1744
|
+
responses = wt({ client: this });
|
|
1745
|
+
steps = at();
|
|
1746
|
+
contents = lt();
|
|
1747
|
+
actions = pt({ client: this });
|
|
1748
|
+
conditionResults = C();
|
|
1749
|
+
stateSnapshotStore = Ee({ client: this });
|
|
1750
|
+
evaluateRuleLogicFx = Pe({ client: this });
|
|
1747
1751
|
start;
|
|
1748
1752
|
readyStore;
|
|
1749
1753
|
preconditionPassedStore;
|
|
1750
1754
|
conditionPassedStore;
|
|
1751
1755
|
lifecycleStageStore;
|
|
1752
|
-
lifecycle =
|
|
1753
|
-
renderStringFx =
|
|
1756
|
+
lifecycle = ze({ client: this });
|
|
1757
|
+
renderStringFx = k({
|
|
1754
1758
|
source: this.responses.listStore,
|
|
1755
1759
|
effect: (e, { template: t, context: n }) => {
|
|
1756
1760
|
let r = {};
|
|
1757
1761
|
for (let t of e) r[t.fieldKey] = t.value;
|
|
1758
|
-
return
|
|
1762
|
+
return Ut(t, {
|
|
1759
1763
|
...n,
|
|
1760
1764
|
responses: r
|
|
1761
1765
|
});
|
|
1762
1766
|
}
|
|
1763
1767
|
});
|
|
1764
1768
|
constructor(e) {
|
|
1765
|
-
this.events =
|
|
1769
|
+
this.events = $e(this.eventBus), this.projectId = Rt(e), this.options = Object.freeze(e), this.apiUrl = e.apiUrl || Ot(), this.dashboardUrl = e.dashboardUrl ?? "https://dashboard.picked.app", this.documentationSiteUrl = e.documentationSiteUrl ?? "https://docs.picked.app", this.start = this.lifecycle.start, this.readyStore = this.lifecycle.readyStore, this.preconditionPassedStore = this.lifecycle.preconditionPassedStore, this.conditionPassedStore = this.lifecycle.conditionPassedStore, this.lifecycleStageStore = this.lifecycle.lifecycleStageStore, this.setupPlugins(), this.setupFeatures(), this.setupPredicates(), this.setupActions(), this.setupComponents(), this.lifecycle.setPrecondition(e.precondition), this.lifecycle.setCondition(e.condition), this.eventBus({
|
|
1766
1770
|
type: "load",
|
|
1767
|
-
version:
|
|
1771
|
+
version: ne()
|
|
1768
1772
|
}), this.maybeStartPreviewChannel();
|
|
1769
1773
|
}
|
|
1774
|
+
dataProviderFor(e) {
|
|
1775
|
+
let t = e ?? "", n = this.dataProviders.get(t);
|
|
1776
|
+
if (n) return n;
|
|
1777
|
+
let r = import("../provider-BEpRDCyr.js").then((t) => t.createPickedDataProvider({
|
|
1778
|
+
apiUrl: this.apiUrl,
|
|
1779
|
+
projectId: this.projectId,
|
|
1780
|
+
...e !== void 0 && { previewToken: e }
|
|
1781
|
+
}));
|
|
1782
|
+
return this.dataProviders.set(t, r), r;
|
|
1783
|
+
}
|
|
1784
|
+
async getProjectConfig(e) {
|
|
1785
|
+
let t = await this.dataProviderFor(e?.previewToken), n = await t.getProjectConfig();
|
|
1786
|
+
if (this.dataSource = t.meta.manifest, n === null) throw Error(`Picked could not resolve the configuration for project "${this.projectId}" from ${this.apiUrl}.`);
|
|
1787
|
+
return n;
|
|
1788
|
+
}
|
|
1789
|
+
async getExperienceContent(e, t) {
|
|
1790
|
+
return (await this.dataProviderFor(t?.previewToken)).getContent(e, t?.signal === void 0 ? void 0 : { signal: t.signal });
|
|
1791
|
+
}
|
|
1770
1792
|
maybeStartPreviewChannel() {
|
|
1771
|
-
|
|
1793
|
+
Gt() && import("../preview-channel-CSr96XAo.js").then((e) => e.initPreviewChannel(this)).catch(() => void 0);
|
|
1772
1794
|
}
|
|
1773
1795
|
registerFramework = (e) => {
|
|
1774
|
-
|
|
1796
|
+
we(e, this.frameworks);
|
|
1775
1797
|
};
|
|
1776
1798
|
registerComponent = (e, t) => {
|
|
1777
|
-
|
|
1799
|
+
be(e, t, this.components);
|
|
1778
1800
|
};
|
|
1779
1801
|
registerPlugin = (e) => {
|
|
1780
|
-
|
|
1802
|
+
me(this, e, this.plugins);
|
|
1781
1803
|
let t = this.plugins[e.name];
|
|
1782
1804
|
t?.onStart && this.lifecycle.registerPluginStartHook(t.onStart);
|
|
1783
1805
|
};
|
|
1784
1806
|
registerFeature = (e, t) => {
|
|
1785
|
-
|
|
1807
|
+
Je(e, t, this.features);
|
|
1786
1808
|
};
|
|
1787
1809
|
registerPredicate = (e, t) => {
|
|
1788
|
-
|
|
1810
|
+
Ue(e, t, this.predicates);
|
|
1789
1811
|
};
|
|
1790
1812
|
registerCondition = (e) => {
|
|
1791
1813
|
this.conditions.register(e);
|
|
@@ -1794,19 +1816,19 @@ var Ut = class {
|
|
|
1794
1816
|
this.fields.register(e);
|
|
1795
1817
|
};
|
|
1796
1818
|
registerStep = (e) => {
|
|
1797
|
-
|
|
1819
|
+
ot(e, this.steps);
|
|
1798
1820
|
};
|
|
1799
1821
|
registerContent = (e) => {
|
|
1800
|
-
|
|
1822
|
+
ut(e, this.contents);
|
|
1801
1823
|
};
|
|
1802
1824
|
patchContent = (e, t) => {
|
|
1803
1825
|
this.contents.patch(e, t);
|
|
1804
1826
|
};
|
|
1805
1827
|
registerAction = (e, t) => {
|
|
1806
|
-
|
|
1828
|
+
mt(e, t, this.actions);
|
|
1807
1829
|
};
|
|
1808
1830
|
registerExperience = (e) => {
|
|
1809
|
-
e.component &&
|
|
1831
|
+
e.component && be(`experience:${e.id}`, e.component, this.components), this.experiences.register(e);
|
|
1810
1832
|
};
|
|
1811
1833
|
launchExperienceById = async (e, t) => {
|
|
1812
1834
|
this.experiences.launch({
|
|
@@ -1851,7 +1873,7 @@ var Ut = class {
|
|
|
1851
1873
|
try {
|
|
1852
1874
|
let [t, n] = e.split(":");
|
|
1853
1875
|
if (!t || !n) return;
|
|
1854
|
-
let r =
|
|
1876
|
+
let r = Ge(n);
|
|
1855
1877
|
this.registerFeature(t, {
|
|
1856
1878
|
key: `${r}`,
|
|
1857
1879
|
name: t,
|
|
@@ -1888,8 +1910,8 @@ var Ut = class {
|
|
|
1888
1910
|
});
|
|
1889
1911
|
}
|
|
1890
1912
|
getPluginConfig = (e) => this.plugins[e] ?? {};
|
|
1891
|
-
},
|
|
1892
|
-
async function
|
|
1913
|
+
}, qt = "application/picked-javascript", Jt = "application/picked-module", Yt = "data-picked-hydrated";
|
|
1914
|
+
async function Xt(e) {
|
|
1893
1915
|
if (!("document" in globalThis)) return;
|
|
1894
1916
|
let t = "application/picked-module", n = "data-picked-hydrated";
|
|
1895
1917
|
function r(e) {
|
|
@@ -1918,30 +1940,72 @@ async function qt(e) {
|
|
|
1918
1940
|
a && await a;
|
|
1919
1941
|
}
|
|
1920
1942
|
}
|
|
1921
|
-
function
|
|
1922
|
-
return `<script>(${
|
|
1943
|
+
function Zt() {
|
|
1944
|
+
return `<script>(${Xt.toString()})(document)<\/script>`;
|
|
1923
1945
|
}
|
|
1924
1946
|
//#endregion
|
|
1925
1947
|
//#region src/utils/html-asset-value.ts
|
|
1926
|
-
function
|
|
1948
|
+
function Qt(e) {
|
|
1927
1949
|
return typeof e == "object" && !!e && "id" in e && typeof e.id == "string" && "content" in e && (typeof e.content == "string" || e.content === null);
|
|
1928
1950
|
}
|
|
1929
1951
|
//#endregion
|
|
1930
1952
|
//#region src/entities/component/lazyComponent.ts
|
|
1931
|
-
function
|
|
1953
|
+
function $t(e) {
|
|
1932
1954
|
return {
|
|
1933
1955
|
$$type: "lazy-component",
|
|
1934
1956
|
load: e
|
|
1935
1957
|
};
|
|
1936
1958
|
}
|
|
1937
|
-
function
|
|
1959
|
+
function en(e) {
|
|
1938
1960
|
return typeof e == "object" && !!e && "$$type" in e && e.$$type === "lazy-component";
|
|
1939
1961
|
}
|
|
1940
1962
|
//#endregion
|
|
1963
|
+
//#region src/entities/content/reference.ts
|
|
1964
|
+
function Q(e) {
|
|
1965
|
+
return typeof e == "object" && !!e && !Array.isArray(e) && "contentEntryId" in e && typeof e.contentEntryId == "string";
|
|
1966
|
+
}
|
|
1967
|
+
function $(e) {
|
|
1968
|
+
return Q(e) ? e.contentEntryId : null;
|
|
1969
|
+
}
|
|
1970
|
+
function tn(e) {
|
|
1971
|
+
let t = Array.isArray(e) ? e : [e], n = [];
|
|
1972
|
+
for (let e of t) Q(e) && n.push(e.contentEntryId);
|
|
1973
|
+
return n;
|
|
1974
|
+
}
|
|
1975
|
+
function nn(e, t) {
|
|
1976
|
+
return t === null ? null : e[t] ?? null;
|
|
1977
|
+
}
|
|
1978
|
+
function rn(e, t) {
|
|
1979
|
+
let n = [];
|
|
1980
|
+
for (let r of t) {
|
|
1981
|
+
let t = e[r];
|
|
1982
|
+
t !== void 0 && n.push(t);
|
|
1983
|
+
}
|
|
1984
|
+
return n;
|
|
1985
|
+
}
|
|
1986
|
+
function an(e, t) {
|
|
1987
|
+
if (oe.store(t)) return A(t, e.indexStore, (e, t) => nn(t, $(e)));
|
|
1988
|
+
let n = $(t);
|
|
1989
|
+
return e.indexStore.map((e) => nn(e, n), { skipVoid: !1 });
|
|
1990
|
+
}
|
|
1991
|
+
function on(e, t) {
|
|
1992
|
+
if (oe.store(t)) return A(t, e.indexStore, (e, t) => rn(t, tn(e)));
|
|
1993
|
+
let n = tn(t);
|
|
1994
|
+
return e.indexStore.map((e) => rn(e, n), { skipVoid: !1 });
|
|
1995
|
+
}
|
|
1996
|
+
//#endregion
|
|
1941
1997
|
//#region src/exports.ts
|
|
1942
|
-
var
|
|
1943
|
-
let t = new
|
|
1998
|
+
var sn = (e) => {
|
|
1999
|
+
let t = new Kt(e);
|
|
1944
2000
|
return u(t), t;
|
|
1945
2001
|
};
|
|
1946
2002
|
//#endregion
|
|
1947
|
-
|
|
2003
|
+
//#region src/typed-content.ts
|
|
2004
|
+
function cn(e) {
|
|
2005
|
+
return typeof e.data == "object";
|
|
2006
|
+
}
|
|
2007
|
+
function ln(e) {
|
|
2008
|
+
return e.map((e) => !e || !cn(e) ? null : e, { skipVoid: !1 });
|
|
2009
|
+
}
|
|
2010
|
+
//#endregion
|
|
2011
|
+
export { Yt as PICKED_HYDRATED_ATTR, Jt as PICKED_MODULE_SCRIPT_TYPE, qt as PICKED_SCRIPT_TYPE, Wt as PREVIEW_TOKEN_PARAM, Kt as Picked, Zt as buildRehydrateBootstrap, sn as createClient, pe as createPluginEffect, O as createStorageKey, an as deriveReference, on as deriveReferences, n as evaluateRuleLogic, Ft as getPickedConfig, Q as isContentReference, Qt as isHtmlAssetValue, h as isInsideIframe, en as isLazyLoader, _ as isPickedRoot, Gt as isPreviewSession, $t as lazyComponent, E as localStore, ae as onInertScriptSubtrees, $ as readReferenceId, tn as readReferenceIds, Xt as rehydrateScripts, re as reportInertScriptSubtrees, ie as resetInertScriptReport, D as sessionStore, T as subscribe, d as supportsCookies, p as supportsCryptoRandomUUID, c as supportsDocument, i as supportsHistory, f as supportsIntersectionObserver, m as supportsLocalStorage, a as supportsLocation, l as supportsSessionStorage, g as supportsShadowRoot, o as supportsWebComponents, s as supportsWindow, ln as toTypedContentStore };
|