@picked/client 0.0.71-next.1 → 0.0.71-next.3
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-CH2FNa6S.cjs → api-CnjBi6JG.cjs} +1 -1
- package/dist/{api-CgqRvuKL.js → api-vBVGLtvU.js} +1 -1
- 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/conditions-and-the-logic-engine.md +94 -0
- package/dist/docs/explanation/feature-flag-allocation.md +176 -0
- package/dist/docs/explanation/how-picked-works.md +102 -0
- package/dist/docs/explanation/how-pickedql-works.md +76 -0
- package/dist/docs/explanation/pages-and-flows.md +64 -0
- package/dist/docs/explanation/the-content-model.md +77 -0
- package/dist/docs/explanation/the-two-apis.md +68 -0
- package/dist/docs/explanation/why-server-side-rendering.md +76 -0
- package/dist/docs/explanation/workspaces-and-versions.md +71 -0
- package/dist/docs/how-to/add-a-step-field-or-action.md +43 -0
- package/dist/docs/{pickedql/examples.md → how-to/analytics/index.md} +19 -6
- package/dist/docs/how-to/archive-or-delete-a-workspace.md +46 -0
- package/dist/docs/how-to/authenticate-with-a-magic-link.md +40 -0
- package/dist/docs/how-to/authenticate-with-a-password.md +51 -0
- package/dist/docs/how-to/authenticate-with-an-api-key.md +51 -0
- package/dist/docs/how-to/authenticate-with-oauth.md +40 -0
- package/dist/docs/{flow-builder/building-flows.md → how-to/build-a-flow.md} +13 -9
- package/dist/docs/how-to/connect-the-mcp-server.md +38 -0
- package/dist/docs/how-to/create-a-project.md +29 -0
- package/dist/docs/how-to/create-an-experience.md +42 -0
- package/dist/docs/how-to/create-and-revoke-an-api-key.md +37 -0
- package/dist/docs/how-to/debug-with-the-chrome-extension.md +57 -0
- package/dist/docs/how-to/define-a-page-layout.md +39 -0
- package/dist/docs/how-to/fill-and-publish-a-page.md +50 -0
- package/dist/docs/{gtm-template.md → how-to/install-the-gtm-template.md} +9 -3
- package/dist/docs/how-to/install-the-sdk.md +68 -0
- package/dist/docs/how-to/install-the-vite-plugin.md +56 -0
- package/dist/docs/how-to/invite-and-remove-members.md +34 -0
- package/dist/docs/how-to/preview-a-workspace.md +28 -0
- package/dist/docs/how-to/publish-a-workspace.md +30 -0
- package/dist/docs/how-to/read-a-feature-flag.md +101 -0
- package/dist/docs/how-to/register-a-component.md +55 -0
- package/dist/docs/how-to/register-an-action-handler.md +67 -0
- package/dist/docs/how-to/render-a-step-form.md +132 -0
- package/dist/docs/how-to/render-an-unpublished-preview.md +41 -0
- package/dist/docs/how-to/reuse-a-section.md +37 -0
- package/dist/docs/how-to/reuse-a-step-field-or-action.md +28 -0
- package/dist/docs/how-to/roll-back-a-published-version.md +26 -0
- package/dist/docs/how-to/run-an-ab-test.md +49 -0
- package/dist/docs/how-to/run-code-on-a-form-submission.md +125 -0
- package/dist/docs/how-to/server-render-a-page.md +81 -0
- package/dist/docs/how-to/set-a-content-security-policy.md +32 -0
- package/dist/docs/how-to/set-up-mfa.md +69 -0
- package/dist/docs/how-to/upload-and-use-an-asset.mdx +73 -0
- package/dist/docs/how-to/validate-a-field.md +52 -0
- package/dist/docs/how-to/write-a-condition.md +45 -0
- package/dist/docs/how-to/write-a-predicate.md +60 -0
- package/dist/docs/index.md +41 -70
- package/dist/docs/reference/dashboard/actions.mdx +53 -0
- package/dist/docs/{api-keys.mdx → reference/dashboard/api-keys.mdx} +7 -15
- package/dist/docs/reference/dashboard/conditions.mdx +42 -0
- package/dist/docs/reference/dashboard/content/asset-library.mdx +63 -0
- package/dist/docs/{content → reference/dashboard/content}/content-entries.mdx +11 -3
- package/dist/docs/{content → reference/dashboard/content}/layouts.mdx +11 -35
- package/dist/docs/reference/dashboard/content/pages.mdx +35 -0
- package/dist/docs/reference/dashboard/content/sections.mdx +28 -0
- package/dist/docs/{experiences.mdx → reference/dashboard/experiences.mdx} +9 -16
- package/dist/docs/{features.mdx → reference/dashboard/features.mdx} +26 -41
- package/dist/docs/{fields.mdx → reference/dashboard/fields.mdx} +26 -20
- package/dist/docs/{flow-builder/overview.mdx → reference/dashboard/flow-builder/canvas.mdx} +8 -13
- package/dist/docs/{flow-builder → reference/dashboard/flow-builder}/condition-builder.md +5 -13
- package/dist/docs/{flow-builder → reference/dashboard/flow-builder}/keyboard-shortcuts.md +7 -1
- package/dist/docs/{flow-builder → reference/dashboard/flow-builder}/nodes.md +10 -3
- package/dist/docs/reference/dashboard/projects.mdx +44 -0
- package/dist/docs/reference/dashboard/reports.mdx +43 -0
- package/dist/docs/reference/dashboard/steps.mdx +37 -0
- package/dist/docs/{team-management.md → reference/dashboard/team-management.md} +5 -22
- package/dist/docs/{workspace-versioning.mdx → reference/dashboard/workspace-versioning.mdx} +6 -10
- package/dist/docs/reference/dashboard/workspaces.mdx +76 -0
- package/dist/docs/{delivery-api → reference/delivery-api}/experience-content.md +11 -4
- package/dist/docs/reference/delivery-api/index.md +45 -0
- package/dist/docs/{delivery-api → reference/delivery-api}/preview-caching-crawling.md +12 -5
- package/dist/docs/{delivery-api → reference/delivery-api}/project-config.md +11 -4
- package/dist/docs/reference/glossary.md +173 -0
- package/dist/docs/reference/management-api/authentication.md +74 -0
- package/dist/docs/{api → reference/management-api}/authorization-and-scopes.md +10 -3
- package/dist/docs/{api → reference/management-api}/error-handling.md +9 -3
- package/dist/docs/{api → reference/management-api}/pagination.md +6 -0
- package/dist/docs/{pickedql → reference/pickedql}/data-sources.md +16 -9
- package/dist/docs/{pickedql → reference/pickedql}/dimensions.md +7 -0
- package/dist/docs/{pickedql → reference/pickedql}/filtering.md +7 -0
- package/dist/docs/reference/pickedql/index.md +18 -0
- package/dist/docs/{pickedql → reference/pickedql}/schema.md +13 -6
- package/dist/docs/{pickedql → reference/pickedql}/virtual-functions.md +7 -0
- package/dist/docs/reference/sdk/actions.md +30 -0
- package/dist/docs/{sdk → reference/sdk}/conditions.md +8 -1
- package/dist/docs/reference/sdk/content-security-policy.md +21 -0
- package/dist/docs/reference/sdk/experiences.md +51 -0
- package/dist/docs/{sdk → reference/sdk}/features.md +30 -117
- package/dist/docs/{sdk → reference/sdk}/fields.md +10 -88
- package/dist/docs/reference/sdk/index.md +68 -0
- package/dist/docs/{sdk → reference/sdk}/plugins/create-experience.md +10 -22
- package/dist/docs/reference/sdk/plugins/dynamic-experiences.md +26 -0
- package/dist/docs/reference/sdk/plugins/index.md +29 -0
- package/dist/docs/{sdk → reference/sdk}/plugins/window-object.md +6 -0
- package/dist/docs/reference/sdk/predicates.md +43 -0
- package/dist/docs/reference/sdk/ssr/index.md +33 -0
- package/dist/docs/{sdk → reference/sdk}/ssr/rendering-and-hydration.md +4 -63
- package/dist/docs/{sdk → reference/sdk}/ssr/serialize.md +6 -33
- package/dist/docs/{sdk → reference/sdk}/ssr/slots-and-placements.md +7 -1
- package/dist/docs/reference/sdk/steps.md +87 -0
- package/dist/docs/reference/tools/chrome-extension.md +16 -0
- package/dist/docs/{image-optimisation-service.md → reference/tools/image-optimisation-service.md} +8 -0
- package/dist/docs/{mcp.md → reference/tools/mcp.md} +5 -45
- package/dist/docs/{vite-plugin.md → reference/tools/vite-plugin.md} +8 -38
- package/dist/docs/{api/index.md → tutorials/first-api-call.md} +27 -15
- package/dist/docs/tutorials/first-experience-in-the-dashboard.mdx +143 -0
- package/dist/docs/tutorials/first-experience.mdx +255 -0
- package/dist/docs/tutorials/first-server-rendered-page.mdx +186 -0
- package/dist/esm/index.js +468 -426
- package/dist/esm/plugins/dynamic-experiences/index.js +2 -2
- package/dist/esm/server/index.js +1 -1
- package/dist/{plugin-DCW-tnjO.cjs → plugin-CSmD1gPl.cjs} +1 -1
- package/dist/{plugin-D2UqFikQ.js → plugin-GOTtoDlC.js} +1 -1
- package/dist/types/entities/feature/feature.d.ts +25 -2
- package/dist/types/entities/feature/feature.d.ts.map +1 -1
- package/dist/types/picked.d.ts +2 -1
- package/dist/types/picked.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/docs/actions.mdx +0 -98
- package/dist/docs/api/authentication.md +0 -403
- package/dist/docs/chrome-extension.md +0 -68
- package/dist/docs/conditions.mdx +0 -72
- package/dist/docs/content/asset-library.mdx +0 -124
- package/dist/docs/content/pages.mdx +0 -82
- package/dist/docs/content/sections.mdx +0 -44
- package/dist/docs/delivery-api/index.md +0 -53
- package/dist/docs/guides/build-a-personalized-page.mdx +0 -161
- package/dist/docs/pickedql/index.md +0 -54
- package/dist/docs/projects.mdx +0 -44
- package/dist/docs/reports.mdx +0 -20
- package/dist/docs/sdk/actions.md +0 -82
- package/dist/docs/sdk/content-security-policy.md +0 -33
- package/dist/docs/sdk/experiences.md +0 -64
- package/dist/docs/sdk/feature-allocation.md +0 -161
- package/dist/docs/sdk/index.md +0 -98
- package/dist/docs/sdk/plugins/dynamic-experiences.md +0 -84
- package/dist/docs/sdk/plugins/index.md +0 -9
- package/dist/docs/sdk/predicates.md +0 -128
- package/dist/docs/sdk/ssr/index.md +0 -79
- package/dist/docs/sdk/steps.md +0 -479
- package/dist/docs/steps.mdx +0 -53
- package/dist/docs/workspaces.mdx +0 -133
package/dist/esm/index.js
CHANGED
|
@@ -2,17 +2,17 @@ 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 { n as
|
|
9
|
-
import { t as
|
|
10
|
-
import { n as
|
|
11
|
-
import { attach as
|
|
12
|
-
import { createFactory as
|
|
5
|
+
import { a as _, i as v, r as y, s as b, t as x } from "../dom-BqcToNL0.js";
|
|
6
|
+
import { l as S, n as C, r as w, u as T } from "../experience-instance-DGk11d8a.js";
|
|
7
|
+
import { i as E, n as D, r as O, t as k } from "../storage-1MW3-_As.js";
|
|
8
|
+
import { n as ee, r as te } from "../api-vBVGLtvU.js";
|
|
9
|
+
import { t as ne } from "../id-Bo4RBeOs.js";
|
|
10
|
+
import { n as re, r as ie, t as ae } from "../inert-script-report-B_bMPRzp.js";
|
|
11
|
+
import { attach as A, combine as j, createApi as M, createDomain as N, createEffect as P, createEvent as F, createStore as I, sample as L } from "effector";
|
|
12
|
+
import { createFactory as R, invoke as z } from "@withease/factories";
|
|
13
13
|
//#region src/entities/experience/experience.ts
|
|
14
|
-
var
|
|
15
|
-
let i =
|
|
14
|
+
var B = N("experience"), oe = R(({ client: e, experience: r }) => {
|
|
15
|
+
let i = B.store(r), a = M(i, { merge(e, t) {
|
|
16
16
|
return {
|
|
17
17
|
...e,
|
|
18
18
|
...t.experience
|
|
@@ -22,34 +22,34 @@ var z = M("experience"), se = L(({ client: e, experience: r }) => {
|
|
|
22
22
|
decisionLogic: e.condition,
|
|
23
23
|
targetSelectors: e.targets,
|
|
24
24
|
initializeOpenLogic: e.initializeOpen
|
|
25
|
-
})), s =
|
|
26
|
-
let r = e.nodes.filter(
|
|
25
|
+
})), s = j(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 = j(i, e.steps.indexStore, e.conditions.indexStore, (e, t, n) => {
|
|
26
|
+
let r = e.nodes.filter(T).map((e) => t[e.stepId]).filter((e) => e !== void 0), i = e.nodes.filter(S).map((e) => n[e.conditionId]).filter((e) => e !== void 0);
|
|
27
27
|
return {
|
|
28
28
|
steps: r,
|
|
29
29
|
nodes: e.nodes,
|
|
30
30
|
edges: e.edges,
|
|
31
31
|
conditions: i
|
|
32
32
|
};
|
|
33
|
-
}), l = r.actions ?? [], u, d =
|
|
33
|
+
}), l = r.actions ?? [], u, d = A({
|
|
34
34
|
source: o,
|
|
35
35
|
effect: (t, n) => {
|
|
36
36
|
let i = v(t.targetSelectors, r.id);
|
|
37
|
-
i.forEach(({ elements: e }) => e.forEach((e) =>
|
|
37
|
+
i.forEach(({ elements: e }) => e.forEach((e) => b(e, r.id))), x(i, r.id, r.key).forEach((t) => {
|
|
38
38
|
n ? e.experienceInstances.spawn(u, t, n) : e.experienceInstances.spawn(u, t);
|
|
39
39
|
});
|
|
40
40
|
}
|
|
41
|
-
}), f =
|
|
41
|
+
}), f = j({
|
|
42
42
|
preconditionPassed: e.preconditionPassedStore,
|
|
43
43
|
isUser: e.session.store.map((e) => e.isUser, { skipVoid: !1 }),
|
|
44
44
|
config: o
|
|
45
|
-
}), p =
|
|
45
|
+
}), p = A({
|
|
46
46
|
source: f,
|
|
47
47
|
effect: async ({ preconditionPassed: i, isUser: a, config: o }) => {
|
|
48
48
|
if (!i || !a) return !1;
|
|
49
49
|
let { decisionLogic: s, targetSelectors: c } = o;
|
|
50
50
|
return c.length === 0 || v(c, r.id).length < 1 ? !1 : s === void 0 || !t(s) || await n(e, s) === !0;
|
|
51
51
|
}
|
|
52
|
-
}), m =
|
|
52
|
+
}), m = P(async () => {
|
|
53
53
|
if (!e.contentLoader) return !0;
|
|
54
54
|
try {
|
|
55
55
|
await e.contentLoader({
|
|
@@ -60,26 +60,26 @@ var z = M("experience"), se = L(({ client: e, experience: r }) => {
|
|
|
60
60
|
`${r.id}`;
|
|
61
61
|
}
|
|
62
62
|
return !0;
|
|
63
|
-
}), h =
|
|
64
|
-
return
|
|
63
|
+
}), h = F(), g = F(), _ = B.createStore(void 0, { skipVoid: !1 }).on(h, (e, t) => t).on(g, (e, t) => t);
|
|
64
|
+
return L({
|
|
65
65
|
clock: h,
|
|
66
66
|
target: p
|
|
67
|
-
}),
|
|
67
|
+
}), L({
|
|
68
68
|
clock: p.doneData,
|
|
69
69
|
source: _,
|
|
70
70
|
filter: (e, t) => t,
|
|
71
71
|
fn: (e) => e,
|
|
72
72
|
target: d
|
|
73
|
-
}),
|
|
73
|
+
}), L({
|
|
74
74
|
clock: p.doneData,
|
|
75
75
|
filter: Boolean,
|
|
76
76
|
target: m
|
|
77
|
-
}),
|
|
77
|
+
}), L({
|
|
78
78
|
clock: g,
|
|
79
79
|
source: _,
|
|
80
80
|
fn: (e) => e,
|
|
81
81
|
target: d
|
|
82
|
-
}),
|
|
82
|
+
}), L({
|
|
83
83
|
clock: g,
|
|
84
84
|
target: m
|
|
85
85
|
}), u = {
|
|
@@ -98,22 +98,22 @@ var z = M("experience"), se = L(({ client: e, experience: r }) => {
|
|
|
98
98
|
prepareExperienceContentFx: m
|
|
99
99
|
}, u;
|
|
100
100
|
});
|
|
101
|
-
function
|
|
102
|
-
return
|
|
101
|
+
function se(e) {
|
|
102
|
+
return z(oe, e);
|
|
103
103
|
}
|
|
104
|
-
var
|
|
105
|
-
let t =
|
|
104
|
+
var ce = R(({ client: e }) => {
|
|
105
|
+
let t = B.store({}), n = M(t, { register(e, t) {
|
|
106
106
|
return {
|
|
107
107
|
...e,
|
|
108
108
|
[t.id]: t
|
|
109
109
|
};
|
|
110
|
-
} }), r =
|
|
111
|
-
n.register(
|
|
110
|
+
} }), r = F(), i = P((t) => {
|
|
111
|
+
n.register(se({
|
|
112
112
|
client: e,
|
|
113
113
|
experience: t
|
|
114
114
|
}));
|
|
115
115
|
});
|
|
116
|
-
|
|
116
|
+
L({
|
|
117
117
|
clock: r,
|
|
118
118
|
source: t,
|
|
119
119
|
filter: (e, t) => e[t.id] !== void 0,
|
|
@@ -126,7 +126,7 @@ var le = L(({ client: e }) => {
|
|
|
126
126
|
experience: t,
|
|
127
127
|
strategy: "override"
|
|
128
128
|
});
|
|
129
|
-
}),
|
|
129
|
+
}), L({
|
|
130
130
|
clock: r,
|
|
131
131
|
source: t,
|
|
132
132
|
filter: (e, t) => e[t.id] === void 0,
|
|
@@ -140,7 +140,7 @@ var le = L(({ client: e }) => {
|
|
|
140
140
|
function s(e) {
|
|
141
141
|
return t.map((t) => Object.values(t).find((t) => t.key === e) ?? t[e], { skipVoid: !1 });
|
|
142
142
|
}
|
|
143
|
-
let c =
|
|
143
|
+
let c = A({
|
|
144
144
|
source: t,
|
|
145
145
|
effect: (e, t) => {
|
|
146
146
|
let n = "key" in t ? Object.values(e).find((e) => e.key === t.key) : e[t.id];
|
|
@@ -158,7 +158,7 @@ var le = L(({ client: e }) => {
|
|
|
158
158
|
getById: o,
|
|
159
159
|
getByKey: s,
|
|
160
160
|
launch: c,
|
|
161
|
-
open:
|
|
161
|
+
open: A({
|
|
162
162
|
source: {
|
|
163
163
|
experiences: t,
|
|
164
164
|
instances: e.experienceInstances.listStore
|
|
@@ -186,7 +186,7 @@ var le = L(({ client: e }) => {
|
|
|
186
186
|
}
|
|
187
187
|
}),
|
|
188
188
|
listStore: a,
|
|
189
|
-
initialiseExperiencesFx:
|
|
189
|
+
initialiseExperiencesFx: A({
|
|
190
190
|
source: a,
|
|
191
191
|
effect: (e) => {
|
|
192
192
|
for (let t of e) t.initialiseRequested(void 0);
|
|
@@ -194,20 +194,20 @@ var le = L(({ client: e }) => {
|
|
|
194
194
|
})
|
|
195
195
|
};
|
|
196
196
|
});
|
|
197
|
-
function
|
|
198
|
-
return
|
|
197
|
+
function le(e) {
|
|
198
|
+
return z(ce, e);
|
|
199
199
|
}
|
|
200
|
-
var
|
|
200
|
+
var ue = async (e) => {
|
|
201
201
|
await e.experiences.initialiseExperiencesFx();
|
|
202
202
|
};
|
|
203
203
|
//#endregion
|
|
204
204
|
//#region src/entities/plugin/plugin.ts
|
|
205
|
-
function
|
|
206
|
-
return
|
|
205
|
+
function de(e) {
|
|
206
|
+
return P(async () => {
|
|
207
207
|
await e();
|
|
208
208
|
});
|
|
209
209
|
}
|
|
210
|
-
var
|
|
210
|
+
var fe = (e, t, n) => {
|
|
211
211
|
let r = t.name, i = t.setup(e);
|
|
212
212
|
if (i) {
|
|
213
213
|
let e = n[r] ?? {};
|
|
@@ -216,29 +216,29 @@ var pe = (e, t, n) => {
|
|
|
216
216
|
...i
|
|
217
217
|
});
|
|
218
218
|
}
|
|
219
|
-
},
|
|
219
|
+
}, pe = N("component"), me = R(({ client: e, component: t, name: n }) => ({
|
|
220
220
|
name: n,
|
|
221
221
|
component: t,
|
|
222
222
|
frameworkStore: e.frameworks.getByName(t.frameworkName)
|
|
223
223
|
}));
|
|
224
|
-
function
|
|
225
|
-
return
|
|
224
|
+
function he(e) {
|
|
225
|
+
return z(me, e);
|
|
226
226
|
}
|
|
227
|
-
var
|
|
228
|
-
let t =
|
|
227
|
+
var ge = R(({ client: e }) => {
|
|
228
|
+
let t = pe.store({}), n = M(t, { register(e, t) {
|
|
229
229
|
return {
|
|
230
230
|
...e,
|
|
231
231
|
[t.name]: t
|
|
232
232
|
};
|
|
233
|
-
} }), i =
|
|
234
|
-
|
|
233
|
+
} }), i = F();
|
|
234
|
+
L({
|
|
235
235
|
clock: i,
|
|
236
236
|
source: t,
|
|
237
237
|
filter: (e, { name: t }) => e[t] !== void 0,
|
|
238
238
|
fn: (e, { name: t }) => `Component '${t}' already registered. Registering again will override the previous registration.`
|
|
239
|
-
}).watch((e) => /* @__PURE__ */ r("warn", e)),
|
|
239
|
+
}).watch((e) => /* @__PURE__ */ r("warn", e)), L({
|
|
240
240
|
clock: i,
|
|
241
|
-
fn: ({ name: t, component: n }) =>
|
|
241
|
+
fn: ({ name: t, component: n }) => he({
|
|
242
242
|
client: e,
|
|
243
243
|
name: t,
|
|
244
244
|
component: n
|
|
@@ -255,27 +255,27 @@ var _e = L(({ client: e }) => {
|
|
|
255
255
|
listStore: a
|
|
256
256
|
};
|
|
257
257
|
});
|
|
258
|
-
function
|
|
259
|
-
return
|
|
258
|
+
function _e(e) {
|
|
259
|
+
return z(ge, e);
|
|
260
260
|
}
|
|
261
|
-
var
|
|
261
|
+
var V = (e, t, n) => {
|
|
262
262
|
n.register({
|
|
263
263
|
name: e,
|
|
264
264
|
component: t
|
|
265
265
|
});
|
|
266
|
-
},
|
|
267
|
-
let t =
|
|
266
|
+
}, ve = N("framework"), ye = R((e) => {
|
|
267
|
+
let t = ve.store({}), n = M(t, { register(e, t) {
|
|
268
268
|
return {
|
|
269
269
|
...e,
|
|
270
270
|
[t.name]: t.framework
|
|
271
271
|
};
|
|
272
|
-
} }), i =
|
|
273
|
-
|
|
272
|
+
} }), i = F();
|
|
273
|
+
L({
|
|
274
274
|
clock: i,
|
|
275
275
|
source: t,
|
|
276
276
|
filter: (e, { name: t }) => e[t] !== void 0,
|
|
277
277
|
fn: (e, { name: t }) => `Framework '${t}' already registered. Registering again will override the previous registration.`
|
|
278
|
-
}).watch((e) => /* @__PURE__ */ r("warn", e)),
|
|
278
|
+
}).watch((e) => /* @__PURE__ */ r("warn", e)), L({
|
|
279
279
|
clock: i,
|
|
280
280
|
target: n.register
|
|
281
281
|
});
|
|
@@ -289,106 +289,106 @@ var ye = (e, t, n) => {
|
|
|
289
289
|
listStore: a
|
|
290
290
|
};
|
|
291
291
|
});
|
|
292
|
-
function
|
|
293
|
-
return
|
|
292
|
+
function be(e) {
|
|
293
|
+
return z(ye, e);
|
|
294
294
|
}
|
|
295
|
-
var
|
|
295
|
+
var xe = (e, t) => {
|
|
296
296
|
t.register({
|
|
297
297
|
name: e.name,
|
|
298
298
|
framework: e
|
|
299
299
|
});
|
|
300
|
-
},
|
|
300
|
+
}, Se = R(({ client: e }) => {
|
|
301
301
|
let t = "window" in globalThis, n = {
|
|
302
302
|
location: t ? globalThis.location : void 0,
|
|
303
303
|
document: t ? globalThis.document : void 0,
|
|
304
304
|
sessionStorage: t ? globalThis.sessionStorage : void 0,
|
|
305
305
|
localStorage: t ? globalThis.localStorage : void 0
|
|
306
306
|
};
|
|
307
|
-
return
|
|
307
|
+
return j(e.responses.listStore, e.fields.listStore, (t, r) => Object.freeze({
|
|
308
308
|
client: e,
|
|
309
309
|
responses: t,
|
|
310
310
|
fields: r,
|
|
311
311
|
...n
|
|
312
312
|
}));
|
|
313
313
|
});
|
|
314
|
-
function
|
|
315
|
-
return
|
|
314
|
+
function Ce(e) {
|
|
315
|
+
return z(Se, e);
|
|
316
316
|
}
|
|
317
317
|
//#endregion
|
|
318
318
|
//#region src/logic-engine.ts
|
|
319
|
-
function
|
|
319
|
+
function we(e) {
|
|
320
320
|
return typeof e == "number" && !isNaN(e);
|
|
321
321
|
}
|
|
322
|
-
function
|
|
322
|
+
function H(e) {
|
|
323
323
|
return typeof e == "string";
|
|
324
324
|
}
|
|
325
|
-
function
|
|
325
|
+
function U(e) {
|
|
326
326
|
return Array.isArray(e);
|
|
327
327
|
}
|
|
328
|
-
function
|
|
328
|
+
function Te(e) {
|
|
329
329
|
return e instanceof Promise;
|
|
330
330
|
}
|
|
331
|
-
function
|
|
331
|
+
function Ee(e) {
|
|
332
332
|
return typeof e == "object" && !!e && !Array.isArray(e) && Object.keys(e).length === 1;
|
|
333
333
|
}
|
|
334
|
-
function
|
|
335
|
-
if (
|
|
334
|
+
function W(e) {
|
|
335
|
+
if (we(e)) return e;
|
|
336
336
|
let t = parseFloat(`${e}`);
|
|
337
337
|
return isNaN(t) ? 0 : t;
|
|
338
338
|
}
|
|
339
|
-
function
|
|
339
|
+
function G(e) {
|
|
340
340
|
return `${e}`;
|
|
341
341
|
}
|
|
342
|
-
var
|
|
342
|
+
var De = {
|
|
343
343
|
"==": (e, t) => e == t,
|
|
344
344
|
"===": (e, t) => e === t,
|
|
345
345
|
"!=": (e, t) => e != t,
|
|
346
346
|
"!==": (e, t) => e !== t,
|
|
347
|
-
">": (e, t) =>
|
|
348
|
-
">=": (e, t) =>
|
|
347
|
+
">": (e, t) => W(e) > W(t),
|
|
348
|
+
">=": (e, t) => W(e) >= W(t),
|
|
349
349
|
"<": (e, t, n) => {
|
|
350
|
-
let r =
|
|
350
|
+
let r = W(e), i = W(t);
|
|
351
351
|
if (n === void 0) return r < i;
|
|
352
|
-
let a =
|
|
352
|
+
let a = W(n);
|
|
353
353
|
return r < i && i < a;
|
|
354
354
|
},
|
|
355
355
|
"<=": (e, t, n) => {
|
|
356
|
-
let r =
|
|
356
|
+
let r = W(e), i = W(t);
|
|
357
357
|
if (n === void 0) return r <= i;
|
|
358
|
-
let a =
|
|
358
|
+
let a = W(n);
|
|
359
359
|
return r <= i && i <= a;
|
|
360
360
|
},
|
|
361
|
-
"!!": async (e) => await
|
|
362
|
-
"!": async (e) => !await
|
|
363
|
-
"%": (e, t) =>
|
|
361
|
+
"!!": async (e) => await q(e),
|
|
362
|
+
"!": async (e) => !await q(e),
|
|
363
|
+
"%": (e, t) => W(e) % W(t),
|
|
364
364
|
log: (e) => (console.log(e), e),
|
|
365
|
-
in: (e, t) => t ?
|
|
366
|
-
cat: (...e) => e.map(
|
|
365
|
+
in: (e, t) => t ? H(t) ? t.indexOf(G(e)) !== -1 : U(t) ? t.includes(e) : !1 : !1,
|
|
366
|
+
cat: (...e) => e.map(G).join(""),
|
|
367
367
|
substr: (e, t, n) => {
|
|
368
|
-
let r =
|
|
368
|
+
let r = G(e), i = W(t);
|
|
369
369
|
if (n === void 0) return r.substr(i);
|
|
370
|
-
let a =
|
|
370
|
+
let a = W(n);
|
|
371
371
|
if (a < 0) {
|
|
372
372
|
let e = r.substr(i);
|
|
373
373
|
return e.substr(0, e.length + a);
|
|
374
374
|
}
|
|
375
375
|
return r.substr(i, a);
|
|
376
376
|
},
|
|
377
|
-
"+": (...e) => e.reduce((e, t) =>
|
|
378
|
-
"*": (...e) => e.reduce((e, t) =>
|
|
377
|
+
"+": (...e) => e.reduce((e, t) => W(e) + W(t), 0),
|
|
378
|
+
"*": (...e) => e.reduce((e, t) => W(e) * W(t), 1),
|
|
379
379
|
"-": (e, t) => {
|
|
380
|
-
let n =
|
|
381
|
-
return t === void 0 ? -n : n -
|
|
380
|
+
let n = W(e);
|
|
381
|
+
return t === void 0 ? -n : n - W(t);
|
|
382
382
|
},
|
|
383
|
-
"/": (e, t) =>
|
|
384
|
-
min: (...e) => Math.min(...e.map(
|
|
385
|
-
max: (...e) => Math.max(...e.map(
|
|
386
|
-
merge: (...e) => e.reduce((e, t) =>
|
|
383
|
+
"/": (e, t) => W(e) / W(t),
|
|
384
|
+
min: (...e) => Math.min(...e.map(W)),
|
|
385
|
+
max: (...e) => Math.max(...e.map(W)),
|
|
386
|
+
merge: (...e) => e.reduce((e, t) => U(t) ? e.concat(t) : e.concat([t]), []),
|
|
387
387
|
var(e, t) {
|
|
388
388
|
let n = arguments.length > 1 ? t : null;
|
|
389
389
|
if (e === "" || e === "." || e == null) return this;
|
|
390
390
|
if (typeof e == "number" && Array.isArray(this)) return e >= 0 && e < this.length ? this[e] : n;
|
|
391
|
-
let r =
|
|
391
|
+
let r = G(e);
|
|
392
392
|
if (r === "" || r === ".") return this;
|
|
393
393
|
let i = r.split("."), a = this;
|
|
394
394
|
for (let e of i) {
|
|
@@ -401,126 +401,126 @@ var ke = {
|
|
|
401
401
|
return a === void 0 ? n : a;
|
|
402
402
|
},
|
|
403
403
|
async missing(...e) {
|
|
404
|
-
let t =
|
|
404
|
+
let t = U(e[0]) ? e[0] : e, n = [];
|
|
405
405
|
for (let e of t) {
|
|
406
|
-
let t = await
|
|
406
|
+
let t = await K({ var: e }, this);
|
|
407
407
|
(t === null || t === "") && n.push(`${e}`);
|
|
408
408
|
}
|
|
409
409
|
return n;
|
|
410
410
|
},
|
|
411
411
|
async missing_some(e, t) {
|
|
412
|
-
let n = await
|
|
413
|
-
if (!
|
|
414
|
-
let r = n.filter(
|
|
415
|
-
return t.filter(
|
|
412
|
+
let n = await K({ missing: t }, this);
|
|
413
|
+
if (!U(n) || !U(t)) return [];
|
|
414
|
+
let r = n.filter(H);
|
|
415
|
+
return t.filter(H).length - r.length >= W(e) ? [] : r;
|
|
416
416
|
},
|
|
417
417
|
invoke(...e) {
|
|
418
418
|
let [t, ...n] = e;
|
|
419
419
|
return typeof t == "function" ? Reflect.apply(t, null, n) : null;
|
|
420
420
|
},
|
|
421
|
-
startsWith: (e, t) =>
|
|
422
|
-
endsWith: (e, t) =>
|
|
421
|
+
startsWith: (e, t) => H(e) && H(t) && e.startsWith(t),
|
|
422
|
+
endsWith: (e, t) => H(e) && H(t) && e.endsWith(t),
|
|
423
423
|
regexp_matches(e, t) {
|
|
424
424
|
let n = e, r = "";
|
|
425
|
-
if (
|
|
425
|
+
if (U(e)) {
|
|
426
426
|
let [t, i] = e;
|
|
427
427
|
n = t, r = i;
|
|
428
428
|
}
|
|
429
|
-
return !
|
|
429
|
+
return !H(n) || !H(r) ? !1 : new RegExp(n, r).test(G(t));
|
|
430
430
|
},
|
|
431
431
|
throw(e) {
|
|
432
|
-
throw Error(
|
|
432
|
+
throw Error(G(e));
|
|
433
433
|
}
|
|
434
434
|
};
|
|
435
|
-
async function
|
|
435
|
+
async function K(e, t) {
|
|
436
436
|
if (!e) return e;
|
|
437
|
-
if (
|
|
438
|
-
if (
|
|
439
|
-
if (!
|
|
440
|
-
let n =
|
|
441
|
-
switch (
|
|
437
|
+
if (Te(e)) return K(await e, t);
|
|
438
|
+
if (U(e)) return Promise.all(e.map((e) => K(e, t)));
|
|
439
|
+
if (!Ee(e)) return e;
|
|
440
|
+
let n = Oe(e), r = n ? e[n] ?? [] : [];
|
|
441
|
+
switch (U(r) || (r = [r]), n) {
|
|
442
442
|
case "if":
|
|
443
443
|
case "?:":
|
|
444
|
-
for (let e = 0; e < r.length - 1; e += 2) if (await
|
|
445
|
-
return r.length % 2 == 1 ?
|
|
444
|
+
for (let e = 0; e < r.length - 1; e += 2) if (await q(await K(r[e], t))) return K(r[e + 1], t);
|
|
445
|
+
return r.length % 2 == 1 ? K(r[r.length - 1], t) : null;
|
|
446
446
|
case "and": {
|
|
447
447
|
let e = null;
|
|
448
|
-
for (let n of r) if (e = await
|
|
448
|
+
for (let n of r) if (e = await K(n, t), !await q(e)) return e;
|
|
449
449
|
return e;
|
|
450
450
|
}
|
|
451
451
|
case "or": {
|
|
452
452
|
let e = null;
|
|
453
|
-
for (let n of r) if (e = await
|
|
453
|
+
for (let n of r) if (e = await K(n, t), await q(e)) return e;
|
|
454
454
|
return e;
|
|
455
455
|
}
|
|
456
456
|
case "map": {
|
|
457
|
-
let e = await
|
|
458
|
-
return
|
|
457
|
+
let e = await K(r[0], t);
|
|
458
|
+
return U(e) ? await Promise.all(e.map((e) => K(r[1], e))) : [];
|
|
459
459
|
}
|
|
460
460
|
case "filter": {
|
|
461
|
-
let e = await
|
|
462
|
-
return
|
|
461
|
+
let e = await K(r[0], t);
|
|
462
|
+
return U(e) ? (await Promise.all(e.map(async (e) => ({
|
|
463
463
|
item: e,
|
|
464
|
-
shouldInclude: await
|
|
464
|
+
shouldInclude: await q(await K(r[1], e))
|
|
465
465
|
})))).filter(({ shouldInclude: e }) => e).map(({ item: e }) => e) : [];
|
|
466
466
|
}
|
|
467
467
|
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
|
|
468
|
+
let e = await K(r[0], t);
|
|
469
|
+
if (!U(e)) return r.length > 2 ? await K(r[2], t) : null;
|
|
470
|
+
let n = r[1], i = r.length > 2 ? await K(r[2], t) : null;
|
|
471
|
+
for (let t of e) i = await K(n, {
|
|
472
472
|
current: t,
|
|
473
473
|
accumulator: i
|
|
474
474
|
});
|
|
475
475
|
return i;
|
|
476
476
|
}
|
|
477
477
|
case "all": {
|
|
478
|
-
let e = await
|
|
479
|
-
if (!
|
|
480
|
-
for (let t of e) if (!await
|
|
478
|
+
let e = await K(r[0], t);
|
|
479
|
+
if (!U(e) || e.length === 0) return !1;
|
|
480
|
+
for (let t of e) if (!await q(await K(r[1], t))) return !1;
|
|
481
481
|
return !0;
|
|
482
482
|
}
|
|
483
483
|
case "some": {
|
|
484
|
-
let e = await
|
|
485
|
-
if (!
|
|
486
|
-
for (let t of e) if (await
|
|
484
|
+
let e = await K(r[0], t);
|
|
485
|
+
if (!U(e)) return !1;
|
|
486
|
+
for (let t of e) if (await q(await K(r[1], t))) return !0;
|
|
487
487
|
return !1;
|
|
488
488
|
}
|
|
489
489
|
case "none": {
|
|
490
|
-
let e = await
|
|
491
|
-
if (!
|
|
492
|
-
for (let t of e) if (await
|
|
490
|
+
let e = await K(r[0], t);
|
|
491
|
+
if (!U(e)) return !0;
|
|
492
|
+
for (let t of e) if (await q(await K(r[1], t))) return !1;
|
|
493
493
|
return !0;
|
|
494
494
|
}
|
|
495
495
|
case "catch": try {
|
|
496
|
-
return await
|
|
496
|
+
return await K(r[0], t);
|
|
497
497
|
} catch (e) {
|
|
498
|
-
return
|
|
498
|
+
return Ee(e) ? await K(e, t) : r[1] ? await K(r[1], e) : e instanceof Error ? e.message : e;
|
|
499
499
|
}
|
|
500
500
|
}
|
|
501
|
-
let i = await Promise.all(r.map((e) =>
|
|
501
|
+
let i = await Promise.all(r.map((e) => K(e, t))), a = n ? De[n] : void 0;
|
|
502
502
|
if (!a) throw Error(`Unrecognized operation ${n}`);
|
|
503
503
|
return a.apply(t, i);
|
|
504
504
|
}
|
|
505
|
-
async function
|
|
506
|
-
return
|
|
505
|
+
async function q(e) {
|
|
506
|
+
return Te(e) ? q(await e) : !(Array.isArray(e) && e.length === 0) && !!e;
|
|
507
507
|
}
|
|
508
|
-
function
|
|
508
|
+
function Oe(e) {
|
|
509
509
|
return Object.keys(e)[0];
|
|
510
510
|
}
|
|
511
511
|
//#endregion
|
|
512
512
|
//#region src/lifecycle/rules-logic.ts
|
|
513
|
-
function
|
|
513
|
+
function ke(e, t, n) {
|
|
514
514
|
return new Proxy(Object.create(null), { get(r, i) {
|
|
515
515
|
if (typeof i != "string") return;
|
|
516
516
|
let a = e.find((e) => e.key === i);
|
|
517
|
-
if (a !== void 0) return async () => !n.has(i) && await
|
|
517
|
+
if (a !== void 0) return async () => !n.has(i) && await K(a.logic, {
|
|
518
518
|
...t,
|
|
519
|
-
conditions:
|
|
519
|
+
conditions: ke(e, t, new Set(n).add(i))
|
|
520
520
|
}) === !0;
|
|
521
521
|
} });
|
|
522
522
|
}
|
|
523
|
-
var
|
|
523
|
+
var Ae = R(({ client: e }) => A({
|
|
524
524
|
source: {
|
|
525
525
|
stateSnapshot: e.stateSnapshotStore,
|
|
526
526
|
predicates: e.predicates.listStore,
|
|
@@ -557,149 +557,149 @@ var Me = L(({ client: e }) => k({
|
|
|
557
557
|
features: u,
|
|
558
558
|
...s
|
|
559
559
|
};
|
|
560
|
-
return await
|
|
560
|
+
return await K(o, {
|
|
561
561
|
...d,
|
|
562
|
-
conditions:
|
|
562
|
+
conditions: ke(a, d, /* @__PURE__ */ new Set())
|
|
563
563
|
});
|
|
564
564
|
}
|
|
565
565
|
}));
|
|
566
|
-
function
|
|
567
|
-
return
|
|
566
|
+
function je(e) {
|
|
567
|
+
return z(Ae, e);
|
|
568
568
|
}
|
|
569
569
|
//#endregion
|
|
570
570
|
//#region src/ping.ts
|
|
571
|
-
var
|
|
571
|
+
var Me = 6e3, Ne = k("last_ping", "global"), Pe = async (e) => {
|
|
572
572
|
try {
|
|
573
|
-
let t = Date.now(), n =
|
|
574
|
-
if (n.isSet() && (r = n.json() ?? 0), r && t - r <
|
|
573
|
+
let t = Date.now(), n = D.get(Ne), r = 0;
|
|
574
|
+
if (n.isSet() && (r = n.json() ?? 0), r && t - r < Me) return !0;
|
|
575
575
|
let i = {
|
|
576
576
|
projectId: e.projectId,
|
|
577
577
|
path: window.location.pathname
|
|
578
578
|
}, a = {}, o = document.getElementById("picked_script")?.dataset.verceltoken;
|
|
579
579
|
o && (a["x-vercel-protection-bypass"] = o);
|
|
580
|
-
let s = (await
|
|
580
|
+
let s = (await ee(e.apiUrl, "ping", i, a)).ok;
|
|
581
581
|
return s && n.set(t), s;
|
|
582
582
|
} catch {
|
|
583
583
|
return !1;
|
|
584
584
|
}
|
|
585
|
-
},
|
|
586
|
-
let t =
|
|
585
|
+
}, J = N("lifecycle"), Fe = R(({ client: e }) => {
|
|
586
|
+
let t = J.store(!1), r = I(void 0, {
|
|
587
587
|
skipVoid: !1,
|
|
588
|
-
domain:
|
|
589
|
-
}), i =
|
|
588
|
+
domain: J
|
|
589
|
+
}), i = I(void 0, {
|
|
590
590
|
skipVoid: !1,
|
|
591
|
-
domain:
|
|
592
|
-
}), a =
|
|
591
|
+
domain: J
|
|
592
|
+
}), a = J.store("idle"), o = J.store([]), s = I(void 0, {
|
|
593
593
|
skipVoid: !1,
|
|
594
|
-
domain:
|
|
595
|
-
}), l =
|
|
594
|
+
domain: J
|
|
595
|
+
}), l = I(void 0, {
|
|
596
596
|
skipVoid: !1,
|
|
597
|
-
domain:
|
|
598
|
-
}), u =
|
|
597
|
+
domain: J
|
|
598
|
+
}), u = F(), d = F(), f = F(), p = F(), m = F(), h = F();
|
|
599
599
|
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
|
-
}),
|
|
600
|
+
let g = P(() => {
|
|
601
|
+
Pe(e);
|
|
602
|
+
}), _ = P(async () => {
|
|
603
|
+
await y();
|
|
604
|
+
}), v = P(async () => {
|
|
605
|
+
await ue(e);
|
|
606
|
+
}), b = A({ effect: v }), x = A({
|
|
607
607
|
source: o,
|
|
608
608
|
effect: async (e) => {
|
|
609
609
|
for (let t of e) await t();
|
|
610
610
|
}
|
|
611
|
-
}),
|
|
611
|
+
}), S = A({
|
|
612
612
|
source: s,
|
|
613
613
|
effect: async (t) => t === void 0 ? !0 : typeof t == "boolean" ? t : await n(e, t) === !0
|
|
614
|
-
}),
|
|
614
|
+
}), C = A({
|
|
615
615
|
source: l,
|
|
616
616
|
effect: async (t) => t === void 0 ? !0 : typeof t == "boolean" ? t : await n(e, t) === !0
|
|
617
|
-
}),
|
|
617
|
+
}), w = L({
|
|
618
618
|
clock: u,
|
|
619
619
|
source: a,
|
|
620
620
|
filter: (e) => e === "idle" && c(),
|
|
621
621
|
fn: () => void 0
|
|
622
622
|
});
|
|
623
|
-
|
|
624
|
-
clock:
|
|
623
|
+
L({
|
|
624
|
+
clock: w,
|
|
625
625
|
fn: () => "starting",
|
|
626
626
|
target: a
|
|
627
|
-
}),
|
|
628
|
-
clock:
|
|
627
|
+
}), L({
|
|
628
|
+
clock: w,
|
|
629
629
|
target: g
|
|
630
|
-
}),
|
|
631
|
-
clock:
|
|
632
|
-
target: b
|
|
633
|
-
}), I({
|
|
634
|
-
clock: C,
|
|
635
|
-
target: _
|
|
636
|
-
}), I({
|
|
637
|
-
clock: b.done,
|
|
630
|
+
}), L({
|
|
631
|
+
clock: w,
|
|
638
632
|
target: x
|
|
639
|
-
}),
|
|
640
|
-
clock:
|
|
641
|
-
target:
|
|
642
|
-
}),
|
|
633
|
+
}), L({
|
|
634
|
+
clock: w,
|
|
635
|
+
target: _
|
|
636
|
+
}), L({
|
|
637
|
+
clock: x.done,
|
|
638
|
+
target: S
|
|
639
|
+
}), L({
|
|
643
640
|
clock: S.doneData,
|
|
641
|
+
target: r
|
|
642
|
+
}), L({
|
|
643
|
+
clock: C.doneData,
|
|
644
644
|
target: i
|
|
645
|
-
}),
|
|
646
|
-
clock: x.doneData,
|
|
647
|
-
filter: (e) => e,
|
|
648
|
-
target: S
|
|
649
|
-
}), I({
|
|
645
|
+
}), L({
|
|
650
646
|
clock: S.doneData,
|
|
647
|
+
filter: (e) => e,
|
|
648
|
+
target: C
|
|
649
|
+
}), L({
|
|
650
|
+
clock: C.doneData,
|
|
651
651
|
target: e.session.setIsUser
|
|
652
|
-
}),
|
|
653
|
-
clock:
|
|
652
|
+
}), L({
|
|
653
|
+
clock: C.doneData,
|
|
654
654
|
fn: (e) => ({
|
|
655
655
|
type: "user_decide",
|
|
656
656
|
value: e
|
|
657
657
|
}),
|
|
658
658
|
target: e.eventBus
|
|
659
|
-
}),
|
|
660
|
-
clock:
|
|
659
|
+
}), L({
|
|
660
|
+
clock: S.doneData,
|
|
661
661
|
filter: (e) => !e,
|
|
662
662
|
fn: () => void 0,
|
|
663
663
|
target: f
|
|
664
|
-
}),
|
|
665
|
-
clock:
|
|
664
|
+
}), L({
|
|
665
|
+
clock: C.doneData,
|
|
666
666
|
fn: () => void 0,
|
|
667
667
|
target: f
|
|
668
|
-
}),
|
|
668
|
+
}), L({
|
|
669
669
|
clock: f,
|
|
670
670
|
fn: () => ({ type: "initialize" }),
|
|
671
671
|
target: e.eventBus
|
|
672
672
|
});
|
|
673
|
-
let
|
|
674
|
-
|
|
673
|
+
let T = I(!1).on(_.done, () => !0), E = I(!1).on(f, () => !0), D = I(!1).on(b.done, () => !0), O = j(r, i, (e, t) => e === !0 && t === !0);
|
|
674
|
+
L({
|
|
675
675
|
clock: f,
|
|
676
|
-
source:
|
|
676
|
+
source: O,
|
|
677
677
|
filter: (e) => e,
|
|
678
678
|
fn: () => void 0,
|
|
679
679
|
target: v
|
|
680
680
|
});
|
|
681
|
-
let
|
|
682
|
-
|
|
683
|
-
clock:
|
|
681
|
+
let k = j(T, E, O, (e, t, n) => e && t && n);
|
|
682
|
+
L({
|
|
683
|
+
clock: k,
|
|
684
684
|
filter: (e) => e,
|
|
685
685
|
fn: () => void 0,
|
|
686
|
-
target:
|
|
686
|
+
target: b
|
|
687
687
|
});
|
|
688
|
-
let
|
|
689
|
-
return
|
|
690
|
-
clock:
|
|
688
|
+
let ee = j(T, E, O, D, (e, t, n, r) => e && t && (!n || r));
|
|
689
|
+
return L({
|
|
690
|
+
clock: ee,
|
|
691
691
|
filter: (e) => e,
|
|
692
692
|
fn: () => void 0,
|
|
693
693
|
target: d
|
|
694
|
-
}),
|
|
694
|
+
}), L({
|
|
695
695
|
clock: d,
|
|
696
696
|
fn: () => "ready",
|
|
697
697
|
target: a
|
|
698
|
-
}),
|
|
698
|
+
}), L({
|
|
699
699
|
clock: d,
|
|
700
700
|
fn: () => ({ type: "ready" }),
|
|
701
701
|
target: e.eventBus
|
|
702
|
-
}),
|
|
702
|
+
}), L({
|
|
703
703
|
clock: d,
|
|
704
704
|
source: e.session.store,
|
|
705
705
|
fn: ({ id: e, isUser: t, identifiers: n }) => ({
|
|
@@ -709,13 +709,13 @@ var Pe = 6e3, Fe = O("last_ping", "global"), Ie = async (e) => {
|
|
|
709
709
|
identifiers: n
|
|
710
710
|
}),
|
|
711
711
|
target: e.eventBus
|
|
712
|
-
}),
|
|
712
|
+
}), L({
|
|
713
713
|
clock: [
|
|
714
|
-
b.fail,
|
|
715
714
|
x.fail,
|
|
716
715
|
S.fail,
|
|
716
|
+
C.fail,
|
|
717
717
|
v.fail,
|
|
718
|
-
|
|
718
|
+
b.fail,
|
|
719
719
|
_.fail
|
|
720
720
|
],
|
|
721
721
|
fn: () => "failed",
|
|
@@ -731,13 +731,13 @@ var Pe = 6e3, Fe = O("last_ping", "global"), Ie = async (e) => {
|
|
|
731
731
|
setCondition: h
|
|
732
732
|
};
|
|
733
733
|
});
|
|
734
|
-
function
|
|
735
|
-
return
|
|
734
|
+
function Ie(e) {
|
|
735
|
+
return z(Fe, e);
|
|
736
736
|
}
|
|
737
737
|
//#endregion
|
|
738
738
|
//#region src/entities/predicate/predicate.ts
|
|
739
|
-
var
|
|
740
|
-
let t =
|
|
739
|
+
var Le = N("predicate"), Re = R(({ client: e }) => {
|
|
740
|
+
let t = Le.store({}), n = M(t, { register(e, t) {
|
|
741
741
|
return {
|
|
742
742
|
...e,
|
|
743
743
|
[t.name]: {
|
|
@@ -745,13 +745,13 @@ var ze = M("predicate"), Be = L(({ client: e }) => {
|
|
|
745
745
|
predicate: t.predicate
|
|
746
746
|
}
|
|
747
747
|
};
|
|
748
|
-
} }), i =
|
|
749
|
-
|
|
748
|
+
} }), i = F();
|
|
749
|
+
L({
|
|
750
750
|
clock: i,
|
|
751
751
|
source: t,
|
|
752
752
|
filter: (e, { name: t }) => e[t] !== void 0,
|
|
753
753
|
fn: (e, { name: t }) => `Predicate '${t}' already registered. Registering again will override the previous registration.`
|
|
754
|
-
}).watch((e) => /* @__PURE__ */ r("warn", e)),
|
|
754
|
+
}).watch((e) => /* @__PURE__ */ r("warn", e)), L({
|
|
755
755
|
clock: i,
|
|
756
756
|
fn: ({ name: e, predicate: t }) => Object.freeze({
|
|
757
757
|
name: e,
|
|
@@ -764,7 +764,7 @@ var ze = M("predicate"), Be = L(({ client: e }) => {
|
|
|
764
764
|
return t.map((t) => t[e]?.predicate, { skipVoid: !1 });
|
|
765
765
|
}
|
|
766
766
|
function s(t) {
|
|
767
|
-
let n =
|
|
767
|
+
let n = I(() => void 0, { skipVoid: !1 }), r = A({
|
|
768
768
|
source: {
|
|
769
769
|
predicate: o(t),
|
|
770
770
|
snapshot: e.stateSnapshotStore
|
|
@@ -776,13 +776,13 @@ var ze = M("predicate"), Be = L(({ client: e }) => {
|
|
|
776
776
|
});
|
|
777
777
|
}
|
|
778
778
|
});
|
|
779
|
-
return
|
|
779
|
+
return L({
|
|
780
780
|
source: {
|
|
781
781
|
responses: e.responses.listStore,
|
|
782
782
|
fields: e.fields.listStore
|
|
783
783
|
},
|
|
784
784
|
target: r
|
|
785
|
-
}),
|
|
785
|
+
}), L({
|
|
786
786
|
clock: r.doneData,
|
|
787
787
|
filter: (e) => e !== void 0,
|
|
788
788
|
target: n
|
|
@@ -795,31 +795,34 @@ var ze = M("predicate"), Be = L(({ client: e }) => {
|
|
|
795
795
|
getEvokablePredicate: s
|
|
796
796
|
};
|
|
797
797
|
});
|
|
798
|
-
function
|
|
799
|
-
return
|
|
798
|
+
function ze(e) {
|
|
799
|
+
return z(Re, e);
|
|
800
800
|
}
|
|
801
|
-
var
|
|
801
|
+
var Be = (e, t, n) => {
|
|
802
802
|
n.register({
|
|
803
803
|
name: e,
|
|
804
804
|
predicate: t
|
|
805
805
|
});
|
|
806
|
-
},
|
|
807
|
-
function
|
|
806
|
+
}, Ve = N("feature");
|
|
807
|
+
function Y(e) {
|
|
808
808
|
return e?.enabled === !1;
|
|
809
809
|
}
|
|
810
|
-
|
|
811
|
-
|
|
810
|
+
function He(e) {
|
|
811
|
+
return e === "true" || e !== "false" && e;
|
|
812
|
+
}
|
|
813
|
+
var Ue = R(({ client: e }) => {
|
|
814
|
+
let t = Ve.store({}), n = Ve.store([]), i = M(t, { register(e, t) {
|
|
812
815
|
return {
|
|
813
816
|
...e,
|
|
814
817
|
[t.id]: t.feature
|
|
815
818
|
};
|
|
816
|
-
} }), a =
|
|
817
|
-
|
|
819
|
+
} }), a = F();
|
|
820
|
+
L({
|
|
818
821
|
clock: a,
|
|
819
822
|
source: t,
|
|
820
823
|
filter: (e, { id: t }) => e[t] !== void 0,
|
|
821
824
|
fn: (e, { id: t }) => `Feature '${t}' already registered. Registering again will override the previous registration.`
|
|
822
|
-
}).watch((e) => /* @__PURE__ */ r("warn", e)),
|
|
825
|
+
}).watch((e) => /* @__PURE__ */ r("warn", e)), L({
|
|
823
826
|
clock: a,
|
|
824
827
|
fn: ({ id: e, feature: t }) => Object.freeze({
|
|
825
828
|
id: e,
|
|
@@ -833,20 +836,20 @@ var We = L(({ client: e }) => {
|
|
|
833
836
|
}),
|
|
834
837
|
target: i.register
|
|
835
838
|
});
|
|
836
|
-
let o =
|
|
839
|
+
let o = P(async ({ id: e, key: t, storage: n = "local", enabled: r }) => {
|
|
837
840
|
if (r === !1) return null;
|
|
838
|
-
let i =
|
|
839
|
-
return a
|
|
841
|
+
let i = k(`feature:${e}:${t}`, "global"), a = (n === "session" ? O : D).get(i).text();
|
|
842
|
+
return a ? {
|
|
840
843
|
id: e,
|
|
841
844
|
key: t,
|
|
842
|
-
bucket: a,
|
|
845
|
+
bucket: He(a),
|
|
843
846
|
storage: n
|
|
844
|
-
};
|
|
845
|
-
}), s =
|
|
847
|
+
} : null;
|
|
848
|
+
}), s = P((e) => {
|
|
846
849
|
if (!e) return null;
|
|
847
|
-
let t =
|
|
848
|
-
(e.storage === "session" ?
|
|
849
|
-
}), c = /* @__PURE__ */ new Map(), l =
|
|
850
|
+
let t = k(`feature:${e.id}:${e.key}`, "global");
|
|
851
|
+
(e.storage === "session" ? O : D).set(t, e.bucket);
|
|
852
|
+
}), c = /* @__PURE__ */ new Map(), l = A({
|
|
850
853
|
source: {
|
|
851
854
|
allFeaturesStore: t,
|
|
852
855
|
resolvedFeaturesStore: n
|
|
@@ -856,7 +859,7 @@ var We = L(({ client: e }) => {
|
|
|
856
859
|
if (a) return a;
|
|
857
860
|
let o = e[n];
|
|
858
861
|
if (!o) throw Error(`Feature with id '${n}' not found`);
|
|
859
|
-
if (
|
|
862
|
+
if (Y(o.feature)) return {
|
|
860
863
|
id: o.id,
|
|
861
864
|
bucket: !1,
|
|
862
865
|
key: i,
|
|
@@ -883,7 +886,7 @@ var We = L(({ client: e }) => {
|
|
|
883
886
|
};
|
|
884
887
|
}
|
|
885
888
|
});
|
|
886
|
-
|
|
889
|
+
L({
|
|
887
890
|
clock: i.register,
|
|
888
891
|
fn: (e) => {
|
|
889
892
|
let { id: t, feature: n } = e;
|
|
@@ -895,10 +898,10 @@ var We = L(({ client: e }) => {
|
|
|
895
898
|
};
|
|
896
899
|
},
|
|
897
900
|
target: o
|
|
898
|
-
}),
|
|
901
|
+
}), L({
|
|
899
902
|
source: t,
|
|
900
903
|
clock: l.doneData,
|
|
901
|
-
filter: (e, t) => !
|
|
904
|
+
filter: (e, t) => !Y(e[t.id]?.feature),
|
|
902
905
|
fn: (e, t) => {
|
|
903
906
|
let { id: n, bucket: r, storage: i } = t, a = e[n]?.feature.key;
|
|
904
907
|
return a ? {
|
|
@@ -910,7 +913,7 @@ var We = L(({ client: e }) => {
|
|
|
910
913
|
},
|
|
911
914
|
target: s
|
|
912
915
|
});
|
|
913
|
-
let u =
|
|
916
|
+
let u = j({
|
|
914
917
|
allFeaturesStore: t,
|
|
915
918
|
resolvedFeaturesStore: n
|
|
916
919
|
}).map(({ allFeaturesStore: e, resolvedFeaturesStore: t }) => Object.values(e).map((e) => {
|
|
@@ -936,78 +939,117 @@ var We = L(({ client: e }) => {
|
|
|
936
939
|
isResolved: !1
|
|
937
940
|
};
|
|
938
941
|
}));
|
|
939
|
-
|
|
942
|
+
L({
|
|
940
943
|
clock: l.doneData,
|
|
941
944
|
source: {
|
|
942
945
|
resolvedFeatures: n,
|
|
943
946
|
allFeatures: t
|
|
944
947
|
},
|
|
945
|
-
filter: ({ resolvedFeatures: e, allFeatures: t }, { id: n, key: r }) => !
|
|
948
|
+
filter: ({ resolvedFeatures: e, allFeatures: t }, { id: n, key: r }) => !Y(t[n]?.feature) && !e.some((e) => e.id === n && e.key === r),
|
|
946
949
|
fn: (e, t) => t,
|
|
947
950
|
target: e.eventBus.prepend((e) => ({
|
|
948
951
|
type: "feature_decide",
|
|
949
952
|
feature: e
|
|
950
953
|
}))
|
|
951
|
-
}),
|
|
954
|
+
}), L({
|
|
952
955
|
clock: [o.doneData, l.doneData],
|
|
953
956
|
source: {
|
|
954
957
|
resolvedFeatures: n,
|
|
955
958
|
allFeatures: t
|
|
956
959
|
},
|
|
957
|
-
fn: ({ resolvedFeatures: e, allFeatures: t }, n) => !n ||
|
|
960
|
+
fn: ({ resolvedFeatures: e, allFeatures: t }, n) => !n || Y(t[n.id]?.feature) || e.some((e) => e.id === n.id && e.key === n.key) ? e : [...e, n],
|
|
958
961
|
target: n
|
|
959
962
|
});
|
|
960
963
|
function d(e) {
|
|
961
964
|
return u.map((t) => t.find((t) => t.id === e));
|
|
962
965
|
}
|
|
963
|
-
|
|
966
|
+
let f = /* @__PURE__ */ new Map(), p = /* @__PURE__ */ new Map(), m = /* @__PURE__ */ new Map();
|
|
967
|
+
function h(e) {
|
|
968
|
+
let t = f.get(e);
|
|
969
|
+
if (t) return t;
|
|
970
|
+
let n = d(e);
|
|
971
|
+
return f.set(e, n), n;
|
|
972
|
+
}
|
|
973
|
+
function g(e) {
|
|
964
974
|
return t.map((t) => t[e], { skipVoid: !1 });
|
|
965
975
|
}
|
|
966
|
-
function
|
|
967
|
-
let t =
|
|
968
|
-
source:
|
|
976
|
+
function _(e) {
|
|
977
|
+
let t = I(async () => void 0, { skipVoid: !1 }), n = h(e), r = A({
|
|
978
|
+
source: n,
|
|
969
979
|
effect: async (e) => {
|
|
970
980
|
if (e) return async () => (await e.getBucket()).bucket;
|
|
971
981
|
}
|
|
972
982
|
});
|
|
973
|
-
return
|
|
974
|
-
|
|
975
|
-
filter: (t) => t.some((t) => t.id === e),
|
|
983
|
+
return L({
|
|
984
|
+
clock: n,
|
|
976
985
|
target: r
|
|
977
|
-
}),
|
|
986
|
+
}), L({
|
|
978
987
|
clock: r.doneData,
|
|
979
988
|
filter: (e) => e !== void 0,
|
|
980
989
|
target: t
|
|
981
990
|
}), r(), t;
|
|
982
991
|
}
|
|
992
|
+
function v(e) {
|
|
993
|
+
let t = p.get(e);
|
|
994
|
+
if (t) return t;
|
|
995
|
+
let n = _(e);
|
|
996
|
+
return p.set(e, n), n;
|
|
997
|
+
}
|
|
998
|
+
function y(e) {
|
|
999
|
+
let t = v(e), n = I(void 0, { skipVoid: !1 }), r = A({
|
|
1000
|
+
source: t,
|
|
1001
|
+
mapParams: (e, t) => t,
|
|
1002
|
+
effect: P(async (e) => await e())
|
|
1003
|
+
});
|
|
1004
|
+
return L({
|
|
1005
|
+
clock: r.doneData,
|
|
1006
|
+
fn: (t) => {
|
|
1007
|
+
if (t !== void 0) return {
|
|
1008
|
+
id: e,
|
|
1009
|
+
bucket: t
|
|
1010
|
+
};
|
|
1011
|
+
},
|
|
1012
|
+
target: n
|
|
1013
|
+
}), L({
|
|
1014
|
+
clock: t,
|
|
1015
|
+
target: r
|
|
1016
|
+
}), r(), n;
|
|
1017
|
+
}
|
|
1018
|
+
function b(e) {
|
|
1019
|
+
let t = m.get(e);
|
|
1020
|
+
if (t) return t;
|
|
1021
|
+
let n = y(e);
|
|
1022
|
+
return m.set(e, n), n;
|
|
1023
|
+
}
|
|
983
1024
|
return {
|
|
984
1025
|
register: a,
|
|
985
|
-
getById:
|
|
986
|
-
getByName:
|
|
1026
|
+
getById: h,
|
|
1027
|
+
getByName: g,
|
|
987
1028
|
listStore: u,
|
|
988
|
-
getEvokableFeature:
|
|
1029
|
+
getEvokableFeature: v,
|
|
1030
|
+
getFeatureResult: b
|
|
989
1031
|
};
|
|
990
1032
|
});
|
|
991
|
-
function
|
|
992
|
-
return
|
|
1033
|
+
function We(e) {
|
|
1034
|
+
return z(Ue, e);
|
|
993
1035
|
}
|
|
994
|
-
var
|
|
1036
|
+
var Ge = (e, t, n) => {
|
|
995
1037
|
n.register({
|
|
996
1038
|
id: e,
|
|
997
1039
|
feature: t
|
|
998
1040
|
});
|
|
999
|
-
},
|
|
1000
|
-
function
|
|
1041
|
+
}, X = N("history");
|
|
1042
|
+
function Ke(e, t) {
|
|
1001
1043
|
return {
|
|
1002
|
-
id:
|
|
1044
|
+
id: ne(`history-entry-${Date.now()}-${Math.random()}}`),
|
|
1003
1045
|
node: t,
|
|
1004
1046
|
at: Date.now(),
|
|
1005
1047
|
experienceId: e
|
|
1006
1048
|
};
|
|
1007
1049
|
}
|
|
1008
|
-
var
|
|
1009
|
-
let e =
|
|
1010
|
-
e.on(t, (e, t) => ({ entries: [...e.entries,
|
|
1050
|
+
var qe = R(() => {
|
|
1051
|
+
let e = X.store({ entries: [] }), t = X.event(), n = X.event(), r = X.event(), i = X.event();
|
|
1052
|
+
e.on(t, (e, t) => ({ entries: [...e.entries, Ke(t.experienceId, t.node)] })), e.on(n, (e, t) => ({ entries: [...e.entries.slice(0, -1), Ke(t.experienceId, t.node)] })), e.on(i, (e, t) => t);
|
|
1011
1053
|
function a(e, t) {
|
|
1012
1054
|
let n = {
|
|
1013
1055
|
lastStepIndex: -1,
|
|
@@ -1015,7 +1057,7 @@ var Je = L(() => {
|
|
|
1015
1057
|
};
|
|
1016
1058
|
for (let r = e.length - 1; r >= 0; r--) {
|
|
1017
1059
|
let i = e[r], a = i?.node;
|
|
1018
|
-
if (!(!a || !
|
|
1060
|
+
if (!(!a || !T(a)) && !(t && i.experienceId !== t)) if (n.lastStepIndex === -1) n.lastStepIndex = r;
|
|
1019
1061
|
else {
|
|
1020
1062
|
n.secondLastStepIndex = r;
|
|
1021
1063
|
break;
|
|
@@ -1037,20 +1079,20 @@ var Je = L(() => {
|
|
|
1037
1079
|
entriesStore: e.map((e) => e.entries)
|
|
1038
1080
|
};
|
|
1039
1081
|
});
|
|
1040
|
-
function
|
|
1041
|
-
return
|
|
1082
|
+
function Je() {
|
|
1083
|
+
return z(qe);
|
|
1042
1084
|
}
|
|
1043
1085
|
//#endregion
|
|
1044
1086
|
//#region src/utils/events.ts
|
|
1045
|
-
var
|
|
1046
|
-
let t =
|
|
1087
|
+
var Ye = 0, Xe = (e) => {
|
|
1088
|
+
let t = I([]);
|
|
1047
1089
|
return t.on(e, (e, t) => [...e, {
|
|
1048
|
-
id:
|
|
1090
|
+
id: Ye++,
|
|
1049
1091
|
at: /* @__PURE__ */ new Date(),
|
|
1050
1092
|
payload: t
|
|
1051
1093
|
}]), t;
|
|
1052
|
-
},
|
|
1053
|
-
let e =
|
|
1094
|
+
}, Ze = N("field"), Qe = R(() => {
|
|
1095
|
+
let e = Ze.store({}), t = M(e, {
|
|
1054
1096
|
register(e, t) {
|
|
1055
1097
|
return {
|
|
1056
1098
|
...e,
|
|
@@ -1098,13 +1140,13 @@ var Xe = 0, Ze = (e) => {
|
|
|
1098
1140
|
getByName: c
|
|
1099
1141
|
};
|
|
1100
1142
|
});
|
|
1101
|
-
function
|
|
1102
|
-
return
|
|
1143
|
+
function $e() {
|
|
1144
|
+
return z(Qe);
|
|
1103
1145
|
}
|
|
1104
1146
|
//#endregion
|
|
1105
1147
|
//#region src/entities/step/step.ts
|
|
1106
|
-
var
|
|
1107
|
-
let e =
|
|
1148
|
+
var et = N("step"), tt = R(() => {
|
|
1149
|
+
let e = et.store({}), t = M(e, { register(e, t) {
|
|
1108
1150
|
return {
|
|
1109
1151
|
...e,
|
|
1110
1152
|
[t.step.id]: t.step
|
|
@@ -1128,16 +1170,16 @@ var tt = M("step"), nt = L(() => {
|
|
|
1128
1170
|
indexStore: e
|
|
1129
1171
|
};
|
|
1130
1172
|
});
|
|
1131
|
-
function
|
|
1132
|
-
return
|
|
1173
|
+
function nt() {
|
|
1174
|
+
return z(tt);
|
|
1133
1175
|
}
|
|
1134
|
-
function
|
|
1176
|
+
function rt(e, t) {
|
|
1135
1177
|
t.register(e);
|
|
1136
1178
|
}
|
|
1137
1179
|
//#endregion
|
|
1138
1180
|
//#region src/entities/content/content.ts
|
|
1139
|
-
var
|
|
1140
|
-
let e =
|
|
1181
|
+
var it = N("content"), at = R(() => {
|
|
1182
|
+
let e = it.store({}), t = M(e, {
|
|
1141
1183
|
register(e, t) {
|
|
1142
1184
|
return {
|
|
1143
1185
|
...e,
|
|
@@ -1178,16 +1220,16 @@ var at = M("content"), ot = L(() => {
|
|
|
1178
1220
|
indexStore: e
|
|
1179
1221
|
};
|
|
1180
1222
|
});
|
|
1181
|
-
function
|
|
1182
|
-
return
|
|
1223
|
+
function ot() {
|
|
1224
|
+
return z(at);
|
|
1183
1225
|
}
|
|
1184
|
-
function
|
|
1226
|
+
function st(e, t) {
|
|
1185
1227
|
t.register(e);
|
|
1186
1228
|
}
|
|
1187
1229
|
//#endregion
|
|
1188
1230
|
//#region src/entities/action/action.ts
|
|
1189
|
-
var
|
|
1190
|
-
let t =
|
|
1231
|
+
var ct = N("action"), lt = R(({ client: e }) => {
|
|
1232
|
+
let t = ct.store({}), n = M(t, { register(e, t) {
|
|
1191
1233
|
return {
|
|
1192
1234
|
...e,
|
|
1193
1235
|
[t.key]: {
|
|
@@ -1195,13 +1237,13 @@ var lt = M("action"), ut = L(({ client: e }) => {
|
|
|
1195
1237
|
action: t.action
|
|
1196
1238
|
}
|
|
1197
1239
|
};
|
|
1198
|
-
} }), i =
|
|
1199
|
-
|
|
1240
|
+
} }), i = F();
|
|
1241
|
+
L({
|
|
1200
1242
|
clock: i,
|
|
1201
1243
|
source: t,
|
|
1202
1244
|
filter: (e, { key: t }) => e[t] !== void 0,
|
|
1203
1245
|
fn: (e, { key: t }) => `Action '${t}' already registered. Registering again will override the previous registration.`
|
|
1204
|
-
}).watch((e) => /* @__PURE__ */ r("warn", e)),
|
|
1246
|
+
}).watch((e) => /* @__PURE__ */ r("warn", e)), L({
|
|
1205
1247
|
clock: i,
|
|
1206
1248
|
fn: ({ key: e, action: t }) => Object.freeze({
|
|
1207
1249
|
key: e,
|
|
@@ -1214,7 +1256,7 @@ var lt = M("action"), ut = L(({ client: e }) => {
|
|
|
1214
1256
|
return t.map((t) => t[e]?.action, { skipVoid: !1 });
|
|
1215
1257
|
}
|
|
1216
1258
|
function s(t, n) {
|
|
1217
|
-
let r =
|
|
1259
|
+
let r = I(() => void 0, { skipVoid: !1 }), i = n ? { experience: n.experience } : null, a = A({
|
|
1218
1260
|
source: {
|
|
1219
1261
|
action: o(t),
|
|
1220
1262
|
snapshot: e.stateSnapshotStore
|
|
@@ -1226,13 +1268,13 @@ var lt = M("action"), ut = L(({ client: e }) => {
|
|
|
1226
1268
|
}, i);
|
|
1227
1269
|
}
|
|
1228
1270
|
});
|
|
1229
|
-
return
|
|
1271
|
+
return L({
|
|
1230
1272
|
source: {
|
|
1231
1273
|
responses: e.responses.listStore,
|
|
1232
1274
|
fields: e.fields.listStore
|
|
1233
1275
|
},
|
|
1234
1276
|
target: a
|
|
1235
|
-
}),
|
|
1277
|
+
}), L({
|
|
1236
1278
|
clock: a.doneData,
|
|
1237
1279
|
filter: (e) => e !== void 0,
|
|
1238
1280
|
target: r
|
|
@@ -1245,10 +1287,10 @@ var lt = M("action"), ut = L(({ client: e }) => {
|
|
|
1245
1287
|
getEvokableAction: s
|
|
1246
1288
|
};
|
|
1247
1289
|
});
|
|
1248
|
-
function
|
|
1249
|
-
return
|
|
1290
|
+
function ut(e) {
|
|
1291
|
+
return z(lt, e);
|
|
1250
1292
|
}
|
|
1251
|
-
var
|
|
1293
|
+
var dt = (e, t, n) => {
|
|
1252
1294
|
n.register({
|
|
1253
1295
|
key: e,
|
|
1254
1296
|
action: t
|
|
@@ -1256,7 +1298,7 @@ var ft = (e, t, n) => {
|
|
|
1256
1298
|
};
|
|
1257
1299
|
//#endregion
|
|
1258
1300
|
//#region src/entities/response/response-validation.ts
|
|
1259
|
-
function
|
|
1301
|
+
function Z(e, t, n, r) {
|
|
1260
1302
|
return {
|
|
1261
1303
|
fieldKey: e.key,
|
|
1262
1304
|
userMessage: n,
|
|
@@ -1264,62 +1306,62 @@ function Y(e, t, n, r) {
|
|
|
1264
1306
|
value: t
|
|
1265
1307
|
};
|
|
1266
1308
|
}
|
|
1267
|
-
function
|
|
1309
|
+
function Q(e) {
|
|
1268
1310
|
return e === null || e === "" || Array.isArray(e) && !e.length;
|
|
1269
1311
|
}
|
|
1270
|
-
function
|
|
1312
|
+
function ft(e) {
|
|
1271
1313
|
return typeof e == "string" || typeof e == "number" || typeof e == "boolean" || e === null;
|
|
1272
1314
|
}
|
|
1273
|
-
function
|
|
1315
|
+
function pt(e) {
|
|
1274
1316
|
try {
|
|
1275
1317
|
return JSON.stringify(e), !0;
|
|
1276
1318
|
} catch {
|
|
1277
1319
|
return !1;
|
|
1278
1320
|
}
|
|
1279
1321
|
}
|
|
1280
|
-
function
|
|
1322
|
+
function mt(e, t) {
|
|
1281
1323
|
return t.find((t) => t.key === e) ?? null;
|
|
1282
1324
|
}
|
|
1283
|
-
function
|
|
1325
|
+
function ht(e, t) {
|
|
1284
1326
|
return e.multiple && (typeof t == "string" || typeof t == "number" || typeof t == "boolean") ? [t] : t;
|
|
1285
1327
|
}
|
|
1286
|
-
function
|
|
1287
|
-
if (e.type !== "object" ||
|
|
1328
|
+
function gt(e, t) {
|
|
1329
|
+
if (e.type !== "object" || Q(t)) return null;
|
|
1288
1330
|
if (e.multiple) {
|
|
1289
|
-
if (!Array.isArray(t)) return
|
|
1331
|
+
if (!Array.isArray(t)) return Z(e, t, "This field expects multiple values", "Field expects an array of objects.");
|
|
1290
1332
|
for (let n of t) {
|
|
1291
|
-
if (typeof n != "object" || !n) return
|
|
1292
|
-
if (!
|
|
1333
|
+
if (typeof n != "object" || !n) return Z(e, t, "This field expects object values", "Field expects an array of objects, but received non-object value.");
|
|
1334
|
+
if (!pt(n)) return Z(e, t, "This field contains non-serializable data", "Field value contains non-JSON-serializable data (functions, circular references, etc.).");
|
|
1293
1335
|
}
|
|
1294
1336
|
return null;
|
|
1295
1337
|
}
|
|
1296
|
-
return Array.isArray(t) ?
|
|
1338
|
+
return Array.isArray(t) ? Z(e, t, "This field expects a single value", "Field expects a single object, not an array.") : typeof t != "object" || !t ? Z(e, t, "This field expects an object value", "Field expects an object value.") : pt(t) ? null : Z(e, t, "This field contains non-serializable data", "Field value contains non-JSON-serializable data (functions, circular references, etc.).");
|
|
1297
1339
|
}
|
|
1298
|
-
function
|
|
1299
|
-
if (
|
|
1340
|
+
function _t(e, t) {
|
|
1341
|
+
if (Q(t) || !Array.isArray(e.options) || e.options.length === 0) return null;
|
|
1300
1342
|
let n = Array.isArray(t) ? t : [t];
|
|
1301
1343
|
if (e.type === "object") {
|
|
1302
1344
|
let r = new Set(e.options.map((e) => JSON.stringify(e.value)));
|
|
1303
|
-
return n.every((e) => r.has(JSON.stringify(e))) ? null :
|
|
1345
|
+
return n.every((e) => r.has(JSON.stringify(e))) ? null : Z(e, t, "This field expects a valid option", "Field expects a valid option from the defined choices.");
|
|
1304
1346
|
}
|
|
1305
1347
|
let r = e.options.map((e) => e.value);
|
|
1306
|
-
return n.every((e) => !
|
|
1348
|
+
return n.every((e) => !ft(e) || e === null ? !1 : r.includes(e)) ? null : Z(e, t, "This field expects a valid option", `Field expects a valid option. Valid options are: ${r.join(", ")}`);
|
|
1307
1349
|
}
|
|
1308
|
-
async function
|
|
1309
|
-
if (n.validation && !e(n.validation) && !
|
|
1350
|
+
async function vt(t, n, r, i) {
|
|
1351
|
+
if (n.validation && !e(n.validation) && !Q(r)) {
|
|
1310
1352
|
let e = i ? {
|
|
1311
1353
|
$input: r,
|
|
1312
1354
|
responses: i
|
|
1313
1355
|
} : { $input: r }, a = await t(n.validation, e);
|
|
1314
|
-
if (typeof a == "string") return
|
|
1315
|
-
if (a === !1) return
|
|
1356
|
+
if (typeof a == "string") return Z(n, r, a, `Field validation resulted in an error: ${a}.`);
|
|
1357
|
+
if (a === !1) return Z(n, r, "This field is invalid", "Field validation resulted in an unspecified error.");
|
|
1316
1358
|
}
|
|
1317
|
-
return n.required &&
|
|
1359
|
+
return n.required && Q(r) ? Z(n, r, "This field is required", "Field is required.") : !n.multiple && Array.isArray(r) && r.length > 1 ? Z(n, r, "This field expects a single response", "Field expects a single response.") : null;
|
|
1318
1360
|
}
|
|
1319
1361
|
//#endregion
|
|
1320
1362
|
//#region src/entities/response/response.ts
|
|
1321
|
-
var
|
|
1322
|
-
let t =
|
|
1363
|
+
var yt = N("response"), bt = R(({ client: e }) => {
|
|
1364
|
+
let t = yt.store({}), r = F(), i = F(), a = M(t, {
|
|
1323
1365
|
register(e, t) {
|
|
1324
1366
|
return {
|
|
1325
1367
|
...e,
|
|
@@ -1348,7 +1390,7 @@ var bt = M("response"), xt = L(({ client: e }) => {
|
|
|
1348
1390
|
});
|
|
1349
1391
|
} else a.registerBatch(e);
|
|
1350
1392
|
}
|
|
1351
|
-
let s = (t, r) => n(e, t, r), c =
|
|
1393
|
+
let s = (t, r) => n(e, t, r), c = A({
|
|
1352
1394
|
source: {
|
|
1353
1395
|
allFields: e.fields.listStore,
|
|
1354
1396
|
existingResponses: t
|
|
@@ -1358,7 +1400,7 @@ var bt = M("response"), xt = L(({ client: e }) => {
|
|
|
1358
1400
|
...t,
|
|
1359
1401
|
...n
|
|
1360
1402
|
}, o = Object.entries(n), c = await Promise.allSettled(o.map(async ([t, n]) => {
|
|
1361
|
-
let o =
|
|
1403
|
+
let o = mt(t, e);
|
|
1362
1404
|
if (!o) {
|
|
1363
1405
|
r.push({
|
|
1364
1406
|
fieldKey: t,
|
|
@@ -1368,17 +1410,17 @@ var bt = M("response"), xt = L(({ client: e }) => {
|
|
|
1368
1410
|
});
|
|
1369
1411
|
return;
|
|
1370
1412
|
}
|
|
1371
|
-
let c =
|
|
1413
|
+
let c = ht(o, n), l = await vt(s, o, c, a);
|
|
1372
1414
|
if (l) {
|
|
1373
1415
|
r.push(l);
|
|
1374
1416
|
return;
|
|
1375
1417
|
}
|
|
1376
|
-
let u =
|
|
1418
|
+
let u = gt(o, c);
|
|
1377
1419
|
if (u) {
|
|
1378
1420
|
r.push(u);
|
|
1379
1421
|
return;
|
|
1380
1422
|
}
|
|
1381
|
-
let d =
|
|
1423
|
+
let d = _t(o, c);
|
|
1382
1424
|
if (d) {
|
|
1383
1425
|
r.push(d);
|
|
1384
1426
|
return;
|
|
@@ -1406,7 +1448,7 @@ var bt = M("response"), xt = L(({ client: e }) => {
|
|
|
1406
1448
|
async function l(e) {
|
|
1407
1449
|
return c(e);
|
|
1408
1450
|
}
|
|
1409
|
-
let u =
|
|
1451
|
+
let u = A({
|
|
1410
1452
|
source: t,
|
|
1411
1453
|
effect: async (e, t) => {
|
|
1412
1454
|
let { responsesToCommit: n, validationErrors: r } = await c(t);
|
|
@@ -1421,7 +1463,7 @@ var bt = M("response"), xt = L(({ client: e }) => {
|
|
|
1421
1463
|
value: t
|
|
1422
1464
|
})));
|
|
1423
1465
|
function m(e) {
|
|
1424
|
-
return
|
|
1466
|
+
return j({
|
|
1425
1467
|
f: e,
|
|
1426
1468
|
s: t
|
|
1427
1469
|
}, ({ f: e, s: t }) => {
|
|
@@ -1438,10 +1480,10 @@ var bt = M("response"), xt = L(({ client: e }) => {
|
|
|
1438
1480
|
function _(t) {
|
|
1439
1481
|
return m(e.fields.getByName(t));
|
|
1440
1482
|
}
|
|
1441
|
-
return
|
|
1483
|
+
return L({
|
|
1442
1484
|
clock: r,
|
|
1443
1485
|
target: a.clearAll
|
|
1444
|
-
}),
|
|
1486
|
+
}), L({
|
|
1445
1487
|
clock: i,
|
|
1446
1488
|
target: a.clear
|
|
1447
1489
|
}), {
|
|
@@ -1457,13 +1499,13 @@ var bt = M("response"), xt = L(({ client: e }) => {
|
|
|
1457
1499
|
getByFieldName: _
|
|
1458
1500
|
};
|
|
1459
1501
|
});
|
|
1460
|
-
function
|
|
1461
|
-
return
|
|
1502
|
+
function xt(e) {
|
|
1503
|
+
return z(bt, e);
|
|
1462
1504
|
}
|
|
1463
1505
|
//#endregion
|
|
1464
1506
|
//#region src/entities/condition/condition.ts
|
|
1465
|
-
var
|
|
1466
|
-
let e =
|
|
1507
|
+
var St = N("condition"), Ct = R(() => {
|
|
1508
|
+
let e = St.store({}), t = M(e, { register(e, t) {
|
|
1467
1509
|
return {
|
|
1468
1510
|
...e,
|
|
1469
1511
|
[t.condition.id]: t.condition
|
|
@@ -1487,12 +1529,12 @@ var Ct = M("condition"), wt = L(() => {
|
|
|
1487
1529
|
indexStore: e
|
|
1488
1530
|
};
|
|
1489
1531
|
});
|
|
1490
|
-
function
|
|
1491
|
-
return
|
|
1532
|
+
function wt() {
|
|
1533
|
+
return z(Ct);
|
|
1492
1534
|
}
|
|
1493
1535
|
//#endregion
|
|
1494
1536
|
//#region src/utils/api-url.ts
|
|
1495
|
-
function
|
|
1537
|
+
function Tt() {
|
|
1496
1538
|
if (c()) {
|
|
1497
1539
|
let e = [
|
|
1498
1540
|
document.currentScript,
|
|
@@ -1507,7 +1549,7 @@ function Et() {
|
|
|
1507
1549
|
}
|
|
1508
1550
|
//#endregion
|
|
1509
1551
|
//#region src/utils/search-params.ts
|
|
1510
|
-
function
|
|
1552
|
+
function Et() {
|
|
1511
1553
|
if (!s()) return {};
|
|
1512
1554
|
let e = new URLSearchParams(window.location.search), t = {}, n = /* @__PURE__ */ new Set();
|
|
1513
1555
|
for (let [t] of e.entries()) t.startsWith("picked-") && n.add(t);
|
|
@@ -1515,23 +1557,23 @@ function Dt() {
|
|
|
1515
1557
|
let n = r.replace("picked-", "");
|
|
1516
1558
|
t[n] = e.getAll(r);
|
|
1517
1559
|
}
|
|
1518
|
-
let r =
|
|
1519
|
-
if (n.size > 0)
|
|
1560
|
+
let r = k("s");
|
|
1561
|
+
if (n.size > 0) O.set(r, t);
|
|
1520
1562
|
else {
|
|
1521
|
-
let e =
|
|
1563
|
+
let e = O.get(r);
|
|
1522
1564
|
if (e) return e.json() || {};
|
|
1523
1565
|
}
|
|
1524
1566
|
return t;
|
|
1525
1567
|
}
|
|
1526
1568
|
//#endregion
|
|
1527
1569
|
//#region src/entities/session/session.ts
|
|
1528
|
-
var
|
|
1529
|
-
function
|
|
1570
|
+
var Dt = k("session", "global");
|
|
1571
|
+
function Ot() {
|
|
1530
1572
|
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)}`;
|
|
1531
1573
|
}
|
|
1532
|
-
function
|
|
1574
|
+
function kt() {
|
|
1533
1575
|
if (!m()) return null;
|
|
1534
|
-
let e =
|
|
1576
|
+
let e = D.get(Dt);
|
|
1535
1577
|
if (!e.isSet()) return null;
|
|
1536
1578
|
try {
|
|
1537
1579
|
return e.json();
|
|
@@ -1539,10 +1581,10 @@ function At() {
|
|
|
1539
1581
|
return null;
|
|
1540
1582
|
}
|
|
1541
1583
|
}
|
|
1542
|
-
var
|
|
1543
|
-
let e =
|
|
1584
|
+
var At = R(() => {
|
|
1585
|
+
let e = kt(), t = { id: e?.id ?? Ot() };
|
|
1544
1586
|
e?.isUser !== void 0 && (t.isUser = e.isUser), e?.identifiers && Object.keys(e.identifiers).length > 0 && (t.identifiers = e.identifiers);
|
|
1545
|
-
let n =
|
|
1587
|
+
let n = I(t), r = M(n, {
|
|
1546
1588
|
setIsUser: (e, t) => ({
|
|
1547
1589
|
...e,
|
|
1548
1590
|
isUser: t
|
|
@@ -1562,15 +1604,15 @@ var jt = L(() => {
|
|
|
1562
1604
|
let i = { id: e.id };
|
|
1563
1605
|
return e.isUser !== void 0 && (i.isUser = e.isUser), Object.keys(r).length > 0 && (i.identifiers = r), i;
|
|
1564
1606
|
}
|
|
1565
|
-
}), i =
|
|
1607
|
+
}), i = A({
|
|
1566
1608
|
source: n,
|
|
1567
1609
|
effect: (e) => {
|
|
1568
1610
|
if (m()) try {
|
|
1569
|
-
|
|
1611
|
+
D.get(Dt).set(e);
|
|
1570
1612
|
} catch {}
|
|
1571
1613
|
}
|
|
1572
1614
|
});
|
|
1573
|
-
return
|
|
1615
|
+
return L({
|
|
1574
1616
|
source: n,
|
|
1575
1617
|
target: i
|
|
1576
1618
|
}), {
|
|
@@ -1580,39 +1622,39 @@ var jt = L(() => {
|
|
|
1580
1622
|
removeIdentifier: r.removeIdentifier
|
|
1581
1623
|
};
|
|
1582
1624
|
});
|
|
1583
|
-
function
|
|
1584
|
-
return
|
|
1625
|
+
function jt() {
|
|
1626
|
+
return z(At, void 0);
|
|
1585
1627
|
}
|
|
1586
1628
|
//#endregion
|
|
1587
1629
|
//#region src/utils/picked-config.ts
|
|
1588
|
-
function
|
|
1630
|
+
function Mt() {
|
|
1589
1631
|
if (s()) return globalThis.window.pickedConfig;
|
|
1590
1632
|
}
|
|
1591
|
-
function
|
|
1592
|
-
if (s()) return
|
|
1633
|
+
function Nt() {
|
|
1634
|
+
if (s()) return Mt()?.projectId;
|
|
1593
1635
|
}
|
|
1594
|
-
function
|
|
1636
|
+
function Pt() {
|
|
1595
1637
|
if (!c()) return;
|
|
1596
1638
|
let e = document.getElementById("picked_script") || document.querySelector("script#picked") || document.getElementById("cvly");
|
|
1597
1639
|
if (e) return e.dataset.projectid || e.getAttribute("project-id") || void 0;
|
|
1598
1640
|
}
|
|
1599
|
-
function
|
|
1641
|
+
function Ft(e) {
|
|
1600
1642
|
if (e.projectId) return e.projectId;
|
|
1601
|
-
let t =
|
|
1643
|
+
let t = Nt();
|
|
1602
1644
|
if (t) return t;
|
|
1603
|
-
let n =
|
|
1645
|
+
let n = Pt();
|
|
1604
1646
|
if (n) return n;
|
|
1605
1647
|
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.");
|
|
1606
1648
|
}
|
|
1607
1649
|
//#endregion
|
|
1608
1650
|
//#region src/utils/render-string.ts
|
|
1609
|
-
function
|
|
1651
|
+
function $(e) {
|
|
1610
1652
|
return e == null || e === "" || Number.isNaN(e);
|
|
1611
1653
|
}
|
|
1612
|
-
var
|
|
1613
|
-
default: (e, t) =>
|
|
1614
|
-
append: (e, t) => t &&
|
|
1615
|
-
prepend: (e, t) => t &&
|
|
1654
|
+
var It = {
|
|
1655
|
+
default: (e, t) => $(e) ? String(t ?? "") : String(e),
|
|
1656
|
+
append: (e, t) => t && !$(e) ? `${e} ${t}` : e,
|
|
1657
|
+
prepend: (e, t) => t && !$(e) ? `${t} ${e}` : e,
|
|
1616
1658
|
upper: (e) => typeof e == "string" ? e.toUpperCase() : e,
|
|
1617
1659
|
lower: (e) => typeof e == "string" ? e.toLowerCase() : e,
|
|
1618
1660
|
capitalize: (e) => typeof e == "string" ? e.charAt(0).toUpperCase() + e.slice(1) : e,
|
|
@@ -1630,24 +1672,24 @@ var Lt = {
|
|
|
1630
1672
|
return e instanceof Set ? t.format(Array.from(e).map(String)) : e;
|
|
1631
1673
|
}
|
|
1632
1674
|
};
|
|
1633
|
-
function
|
|
1675
|
+
function Lt(e) {
|
|
1634
1676
|
return typeof e == "object" && !!e;
|
|
1635
1677
|
}
|
|
1636
|
-
function
|
|
1678
|
+
function Rt(e, t) {
|
|
1637
1679
|
let n = t;
|
|
1638
|
-
for (let t of e.split(".")) if (
|
|
1680
|
+
for (let t of e.split(".")) if (Lt(n) && t in n) n = n[t];
|
|
1639
1681
|
else return;
|
|
1640
1682
|
return typeof n == "function" ? n() : n;
|
|
1641
1683
|
}
|
|
1642
|
-
function
|
|
1643
|
-
let n = e.split("|").map((e) => e.trim()), r =
|
|
1684
|
+
function zt(e, t) {
|
|
1685
|
+
let n = e.split("|").map((e) => e.trim()), r = Rt(n.shift() ?? "", t);
|
|
1644
1686
|
for (let e of n) {
|
|
1645
|
-
let [t, ...n] = e.split(":"), i = t?.trim() ?? "", a = n.join(":").trim().replaceAll(/(?:^['"]|['"]$)/g, ""), o =
|
|
1687
|
+
let [t, ...n] = e.split(":"), i = t?.trim() ?? "", a = n.join(":").trim().replaceAll(/(?:^['"]|['"]$)/g, ""), o = It[i];
|
|
1646
1688
|
o && (r = o(r, a));
|
|
1647
1689
|
}
|
|
1648
|
-
return
|
|
1690
|
+
return $(r) ? "" : typeof r == "object" ? JSON.stringify(r) : String(r);
|
|
1649
1691
|
}
|
|
1650
|
-
function
|
|
1692
|
+
function Bt(e, t) {
|
|
1651
1693
|
let n = "", r = 0;
|
|
1652
1694
|
for (; r < e.length;) if (e[r] === "{" && e[r + 1] === "{") {
|
|
1653
1695
|
r += 2;
|
|
@@ -1659,15 +1701,15 @@ function Vt(e, t) {
|
|
|
1659
1701
|
}
|
|
1660
1702
|
i += e[r++];
|
|
1661
1703
|
}
|
|
1662
|
-
n +=
|
|
1704
|
+
n += zt(i.trim(), t);
|
|
1663
1705
|
} else n += e[r++];
|
|
1664
1706
|
return n;
|
|
1665
1707
|
}
|
|
1666
1708
|
//#endregion
|
|
1667
1709
|
//#region src/utils/preview-session.ts
|
|
1668
|
-
var
|
|
1710
|
+
var Vt = "preview-token";
|
|
1669
1711
|
function Ht() {
|
|
1670
|
-
return !s() || !h() ? !1 : !!
|
|
1712
|
+
return !s() || !h() ? !1 : !!Et()[Vt]?.[0];
|
|
1671
1713
|
}
|
|
1672
1714
|
//#endregion
|
|
1673
1715
|
//#region src/picked.ts
|
|
@@ -1678,72 +1720,72 @@ var Ut = class {
|
|
|
1678
1720
|
contentLoader;
|
|
1679
1721
|
previewEmbedderOrigins = null;
|
|
1680
1722
|
plugins = {};
|
|
1681
|
-
eventBus =
|
|
1723
|
+
eventBus = F();
|
|
1682
1724
|
events;
|
|
1683
1725
|
projectId;
|
|
1684
1726
|
apiUrl;
|
|
1685
1727
|
dashboardUrl;
|
|
1686
1728
|
documentationSiteUrl;
|
|
1687
|
-
session =
|
|
1688
|
-
searchParams =
|
|
1689
|
-
history =
|
|
1690
|
-
components =
|
|
1691
|
-
experienceInstances =
|
|
1692
|
-
experiences =
|
|
1693
|
-
frameworks =
|
|
1694
|
-
predicates =
|
|
1695
|
-
features =
|
|
1696
|
-
conditions =
|
|
1697
|
-
fields =
|
|
1698
|
-
responses =
|
|
1699
|
-
steps =
|
|
1700
|
-
contents =
|
|
1701
|
-
actions =
|
|
1702
|
-
conditionResults =
|
|
1703
|
-
stateSnapshotStore =
|
|
1704
|
-
evaluateRuleLogicFx =
|
|
1729
|
+
session = jt();
|
|
1730
|
+
searchParams = Et();
|
|
1731
|
+
history = Je();
|
|
1732
|
+
components = _e({ client: this });
|
|
1733
|
+
experienceInstances = C({ client: this });
|
|
1734
|
+
experiences = le({ client: this });
|
|
1735
|
+
frameworks = be({ client: this });
|
|
1736
|
+
predicates = ze({ client: this });
|
|
1737
|
+
features = We({ client: this });
|
|
1738
|
+
conditions = wt();
|
|
1739
|
+
fields = $e();
|
|
1740
|
+
responses = xt({ client: this });
|
|
1741
|
+
steps = nt();
|
|
1742
|
+
contents = ot();
|
|
1743
|
+
actions = ut({ client: this });
|
|
1744
|
+
conditionResults = w();
|
|
1745
|
+
stateSnapshotStore = Ce({ client: this });
|
|
1746
|
+
evaluateRuleLogicFx = je({ client: this });
|
|
1705
1747
|
start;
|
|
1706
1748
|
readyStore;
|
|
1707
1749
|
preconditionPassedStore;
|
|
1708
1750
|
conditionPassedStore;
|
|
1709
1751
|
lifecycleStageStore;
|
|
1710
|
-
lifecycle =
|
|
1711
|
-
renderStringFx =
|
|
1752
|
+
lifecycle = Ie({ client: this });
|
|
1753
|
+
renderStringFx = A({
|
|
1712
1754
|
source: this.responses.listStore,
|
|
1713
1755
|
effect: (e, { template: t, context: n }) => {
|
|
1714
1756
|
let r = {};
|
|
1715
1757
|
for (let t of e) r[t.fieldKey] = t.value;
|
|
1716
|
-
return
|
|
1758
|
+
return Bt(t, {
|
|
1717
1759
|
...n,
|
|
1718
1760
|
responses: r
|
|
1719
1761
|
});
|
|
1720
1762
|
}
|
|
1721
1763
|
});
|
|
1722
1764
|
constructor(e) {
|
|
1723
|
-
this.events =
|
|
1765
|
+
this.events = Xe(this.eventBus), this.projectId = Ft(e), this.options = Object.freeze(e), this.apiUrl = e.apiUrl || Tt(), 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({
|
|
1724
1766
|
type: "load",
|
|
1725
|
-
version:
|
|
1767
|
+
version: te()
|
|
1726
1768
|
}), this.maybeStartPreviewChannel();
|
|
1727
1769
|
}
|
|
1728
1770
|
maybeStartPreviewChannel() {
|
|
1729
1771
|
Ht() && import("../preview-channel-CSr96XAo.js").then((e) => e.initPreviewChannel(this)).catch(() => void 0);
|
|
1730
1772
|
}
|
|
1731
1773
|
registerFramework = (e) => {
|
|
1732
|
-
|
|
1774
|
+
xe(e, this.frameworks);
|
|
1733
1775
|
};
|
|
1734
1776
|
registerComponent = (e, t) => {
|
|
1735
|
-
|
|
1777
|
+
V(e, t, this.components);
|
|
1736
1778
|
};
|
|
1737
1779
|
registerPlugin = (e) => {
|
|
1738
|
-
|
|
1780
|
+
fe(this, e, this.plugins);
|
|
1739
1781
|
let t = this.plugins[e.name];
|
|
1740
1782
|
t?.onStart && this.lifecycle.registerPluginStartHook(t.onStart);
|
|
1741
1783
|
};
|
|
1742
1784
|
registerFeature = (e, t) => {
|
|
1743
|
-
|
|
1785
|
+
Ge(e, t, this.features);
|
|
1744
1786
|
};
|
|
1745
1787
|
registerPredicate = (e, t) => {
|
|
1746
|
-
|
|
1788
|
+
Be(e, t, this.predicates);
|
|
1747
1789
|
};
|
|
1748
1790
|
registerCondition = (e) => {
|
|
1749
1791
|
this.conditions.register(e);
|
|
@@ -1752,19 +1794,19 @@ var Ut = class {
|
|
|
1752
1794
|
this.fields.register(e);
|
|
1753
1795
|
};
|
|
1754
1796
|
registerStep = (e) => {
|
|
1755
|
-
|
|
1797
|
+
rt(e, this.steps);
|
|
1756
1798
|
};
|
|
1757
1799
|
registerContent = (e) => {
|
|
1758
|
-
|
|
1800
|
+
st(e, this.contents);
|
|
1759
1801
|
};
|
|
1760
1802
|
patchContent = (e, t) => {
|
|
1761
1803
|
this.contents.patch(e, t);
|
|
1762
1804
|
};
|
|
1763
1805
|
registerAction = (e, t) => {
|
|
1764
|
-
|
|
1806
|
+
dt(e, t, this.actions);
|
|
1765
1807
|
};
|
|
1766
1808
|
registerExperience = (e) => {
|
|
1767
|
-
e.component &&
|
|
1809
|
+
e.component && V(`experience:${e.id}`, e.component, this.components), this.experiences.register(e);
|
|
1768
1810
|
};
|
|
1769
1811
|
launchExperienceById = async (e, t) => {
|
|
1770
1812
|
this.experiences.launch({
|
|
@@ -1809,8 +1851,8 @@ var Ut = class {
|
|
|
1809
1851
|
try {
|
|
1810
1852
|
let [t, n] = e.split(":");
|
|
1811
1853
|
if (!t || !n) return;
|
|
1812
|
-
let r = n;
|
|
1813
|
-
|
|
1854
|
+
let r = He(n);
|
|
1855
|
+
this.registerFeature(t, {
|
|
1814
1856
|
key: `${r}`,
|
|
1815
1857
|
name: t,
|
|
1816
1858
|
decide: () => r,
|
|
@@ -1847,7 +1889,7 @@ var Ut = class {
|
|
|
1847
1889
|
}
|
|
1848
1890
|
getPluginConfig = (e) => this.plugins[e] ?? {};
|
|
1849
1891
|
}, Wt = "application/picked-javascript", Gt = "application/picked-module", Kt = "data-picked-hydrated";
|
|
1850
|
-
async function
|
|
1892
|
+
async function qt(e) {
|
|
1851
1893
|
if (!("document" in globalThis)) return;
|
|
1852
1894
|
let t = "application/picked-module", n = "data-picked-hydrated";
|
|
1853
1895
|
function r(e) {
|
|
@@ -1876,30 +1918,30 @@ async function $(e) {
|
|
|
1876
1918
|
a && await a;
|
|
1877
1919
|
}
|
|
1878
1920
|
}
|
|
1879
|
-
function
|
|
1880
|
-
return `<script>(${
|
|
1921
|
+
function Jt() {
|
|
1922
|
+
return `<script>(${qt.toString()})(document)<\/script>`;
|
|
1881
1923
|
}
|
|
1882
1924
|
//#endregion
|
|
1883
1925
|
//#region src/utils/html-asset-value.ts
|
|
1884
|
-
function
|
|
1926
|
+
function Yt(e) {
|
|
1885
1927
|
return typeof e == "object" && !!e && "id" in e && typeof e.id == "string" && "content" in e && (typeof e.content == "string" || e.content === null);
|
|
1886
1928
|
}
|
|
1887
1929
|
//#endregion
|
|
1888
1930
|
//#region src/entities/component/lazyComponent.ts
|
|
1889
|
-
function
|
|
1931
|
+
function Xt(e) {
|
|
1890
1932
|
return {
|
|
1891
1933
|
$$type: "lazy-component",
|
|
1892
1934
|
load: e
|
|
1893
1935
|
};
|
|
1894
1936
|
}
|
|
1895
|
-
function
|
|
1937
|
+
function Zt(e) {
|
|
1896
1938
|
return typeof e == "object" && !!e && "$$type" in e && e.$$type === "lazy-component";
|
|
1897
1939
|
}
|
|
1898
1940
|
//#endregion
|
|
1899
1941
|
//#region src/exports.ts
|
|
1900
|
-
var
|
|
1942
|
+
var Qt = (e) => {
|
|
1901
1943
|
let t = new Ut(e);
|
|
1902
1944
|
return u(t), t;
|
|
1903
1945
|
};
|
|
1904
1946
|
//#endregion
|
|
1905
|
-
export { Kt as PICKED_HYDRATED_ATTR, Gt as PICKED_MODULE_SCRIPT_TYPE, Wt as PICKED_SCRIPT_TYPE,
|
|
1947
|
+
export { Kt as PICKED_HYDRATED_ATTR, Gt as PICKED_MODULE_SCRIPT_TYPE, Wt as PICKED_SCRIPT_TYPE, Vt as PREVIEW_TOKEN_PARAM, Ut as Picked, Jt as buildRehydrateBootstrap, Qt as createClient, de as createPluginEffect, k as createStorageKey, n as evaluateRuleLogic, Mt as getPickedConfig, Yt as isHtmlAssetValue, h as isInsideIframe, Zt as isLazyLoader, _ as isPickedRoot, Ht as isPreviewSession, Xt as lazyComponent, D as localStore, ae as onInertScriptSubtrees, qt as rehydrateScripts, re as reportInertScriptSubtrees, ie as resetInertScriptReport, O as sessionStore, E 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 };
|