@picked/client 0.0.1-dev.1777938796953 → 0.0.1-dev.1778120127377

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.
Files changed (93) hide show
  1. package/README.md +0 -8
  2. package/dist/{api-GE6C0lxp.cjs → api-BM3zWj3k.cjs} +1 -1
  3. package/dist/{api-Bn4z854o.js → api-zfqEYPyX.js} +1 -1
  4. package/dist/cjs/form/index.js +1 -1
  5. package/dist/cjs/index.js +4 -4
  6. package/dist/cjs/plugins/dynamic-experiences/index.js +1 -1
  7. package/dist/cjs/plugins/experience-browser-storage/index.js +1 -1
  8. package/dist/cjs/plugins/history-browser-storage/index.js +1 -1
  9. package/dist/cjs/plugins/single-page-app/index.js +1 -1
  10. package/dist/cjs/plugins/web-components/index.js +1 -1
  11. package/dist/cjs/server/index.js +1 -1
  12. package/dist/docs/actions.mdx +0 -1
  13. package/dist/docs/index.md +0 -2
  14. package/dist/docs/pickedql/dimensions.md +2 -0
  15. package/dist/docs/pickedql/virtual-functions.md +27 -0
  16. package/dist/docs/sdk/actions.md +0 -1
  17. package/dist/docs/sdk/features.md +0 -1
  18. package/dist/docs/sdk/index.md +0 -1
  19. package/dist/docs/sdk/plugins/create-experience.md +0 -1
  20. package/dist/docs/sdk/plugins/dynamic-experiences.md +0 -1
  21. package/dist/docs/sdk/plugins/window-object.md +0 -1
  22. package/dist/docs/sdk/predicates.md +0 -1
  23. package/dist/esm/form/index.js +1 -1
  24. package/dist/esm/index.js +971 -539
  25. package/dist/esm/plugins/dynamic-experiences/index.js +51 -49
  26. package/dist/esm/plugins/experience-browser-storage/index.js +8 -5
  27. package/dist/esm/plugins/history-browser-storage/index.js +3 -3
  28. package/dist/esm/plugins/single-page-app/index.js +1 -1
  29. package/dist/esm/plugins/web-components/index.js +1 -1
  30. package/dist/esm/server/index.js +23 -13
  31. package/dist/{experience-instance-CWYRLfFM.js → experience-instance-BrLWgVAN.js} +135 -127
  32. package/dist/experience-instance-Ct3ogC7n.cjs +1 -0
  33. package/dist/rules-logic-D_CVBuv7.js +13 -0
  34. package/dist/rules-logic-H6P8xwHF.cjs +1 -0
  35. package/dist/types/client.d.ts +2 -2
  36. package/dist/types/entities/action/action.d.ts +6 -3
  37. package/dist/types/entities/action/action.d.ts.map +1 -1
  38. package/dist/types/entities/component/component.d.ts +39 -2
  39. package/dist/types/entities/component/component.d.ts.map +1 -1
  40. package/dist/types/entities/experience/experience.d.ts +49 -113
  41. package/dist/types/entities/experience/experience.d.ts.map +1 -1
  42. package/dist/types/entities/experience-instance/experience-instance.d.ts +17 -2
  43. package/dist/types/entities/experience-instance/experience-instance.d.ts.map +1 -1
  44. package/dist/types/entities/feature/feature.d.ts +26 -2
  45. package/dist/types/entities/feature/feature.d.ts.map +1 -1
  46. package/dist/types/entities/field/field.d.ts.map +1 -1
  47. package/dist/types/entities/framework/framework.d.ts +24 -3
  48. package/dist/types/entities/framework/framework.d.ts.map +1 -1
  49. package/dist/types/entities/history/history.d.ts +15 -27
  50. package/dist/types/entities/history/history.d.ts.map +1 -1
  51. package/dist/types/entities/plugin/plugin.d.ts +32 -1
  52. package/dist/types/entities/plugin/plugin.d.ts.map +1 -1
  53. package/dist/types/entities/predicate/predicate.d.ts +24 -3
  54. package/dist/types/entities/predicate/predicate.d.ts.map +1 -1
  55. package/dist/types/entities/session/session.d.ts +45 -0
  56. package/dist/types/entities/session/session.d.ts.map +1 -0
  57. package/dist/types/exports.d.ts +9 -3
  58. package/dist/types/exports.d.ts.map +1 -1
  59. package/dist/types/index.d.ts +1 -1
  60. package/dist/types/index.d.ts.map +1 -1
  61. package/dist/types/lifecycle/lifecycle.d.ts +47 -0
  62. package/dist/types/lifecycle/lifecycle.d.ts.map +1 -0
  63. package/dist/types/lifecycle/rules-logic.d.ts +24 -0
  64. package/dist/types/lifecycle/rules-logic.d.ts.map +1 -0
  65. package/dist/types/lifecycle/state-snapshot.d.ts +37 -0
  66. package/dist/types/lifecycle/state-snapshot.d.ts.map +1 -0
  67. package/dist/types/logic-engine.d.ts +1 -1
  68. package/dist/types/logic-engine.d.ts.map +1 -1
  69. package/dist/types/picked.d.ts +111 -190
  70. package/dist/types/picked.d.ts.map +1 -1
  71. package/dist/types/plugins/dynamic-experiences/plugin.d.ts.map +1 -1
  72. package/dist/types/plugins/experience-browser-storage/plugin.d.ts.map +1 -1
  73. package/dist/types/plugins/history-browser-storage/plugin.d.ts +0 -14
  74. package/dist/types/plugins/history-browser-storage/plugin.d.ts.map +1 -1
  75. package/dist/types/plugins/web-components/plugin.d.ts.map +1 -1
  76. package/dist/types/server/index.d.ts +7 -0
  77. package/dist/types/server/index.d.ts.map +1 -1
  78. package/dist/types/utils/events.d.ts +1 -1
  79. package/dist/types/utils/events.d.ts.map +1 -1
  80. package/dist/types/utils/picked-config.d.ts +12 -4
  81. package/dist/types/utils/picked-config.d.ts.map +1 -1
  82. package/dist/types/utils/rules-logic.d.ts +4 -9
  83. package/dist/types/utils/rules-logic.d.ts.map +1 -1
  84. package/package.json +2 -2
  85. package/dist/experience-instance-BDTNGT8a.cjs +0 -1
  86. package/dist/rules-logic-BTIxfrJJ.js +0 -240
  87. package/dist/rules-logic-DNLOv90w.cjs +0 -1
  88. package/dist/types/utils/state-snaphot.d.ts +0 -26
  89. package/dist/types/utils/state-snaphot.d.ts.map +0 -1
  90. package/dist/types/utils/user-session.d.ts +0 -12
  91. package/dist/types/utils/user-session.d.ts.map +0 -1
  92. /package/dist/{object-C82v79xc.js → object-DvUDOytC.js} +0 -0
  93. /package/dist/{object-CUJOjanb.cjs → object-ThO1DEyl.cjs} +0 -0
@@ -1,4 +1,4 @@
1
- import { n as e, t } from "./rules-logic-BTIxfrJJ.js";
1
+ import { n as e, t } from "./rules-logic-D_CVBuv7.js";
2
2
  import "./logger-6z_gb4rA.js";
3
3
  import { d as n, l as r, r as i } from "./supports-0XIfd4-R.js";
4
4
  import { attach as a, combine as o, createApi as s, createDomain as c, createEffect as l, createEvent as u, sample as d, split as f } from "effector";
@@ -106,7 +106,7 @@ function P(e) {
106
106
  var F = (e, t, n, r, i = /* @__PURE__ */ new Set()) => i.has(n.id) ? [] : (i.add(n.id), j(n) && !r ? [n] : t.filter((e) => e.sourceNodeId === n.id).flatMap((n) => {
107
107
  let r = e.find((e) => e.id === n.destinationNodeId);
108
108
  return r ? F(e, t, r, !1, i) : [];
109
- })), I = (e, t, n) => F(e, t, n, !0, /* @__PURE__ */ new Set()), L = (e, t, n, r, i = /* @__PURE__ */ new Set()) => {
109
+ })), ee = (e, t, n) => F(e, t, n, !0, /* @__PURE__ */ new Set()), I = (e, t, n, r, i = /* @__PURE__ */ new Set()) => {
110
110
  if (i.has(n.id)) return [-1, -1];
111
111
  i.add(n.id);
112
112
  let a = t.filter((e) => e.sourceNodeId === n.id);
@@ -115,11 +115,11 @@ var F = (e, t, n, r, i = /* @__PURE__ */ new Set()) => i.has(n.id) ? [] : (i.add
115
115
  for (let n of a) {
116
116
  let r = e.find((e) => e.id === n.destinationNodeId);
117
117
  if (!r) continue;
118
- let [a, c] = L(e, t, r, !1, new Set(i));
118
+ let [a, c] = I(e, t, r, !1, new Set(i));
119
119
  a !== -1 && (o = Math.min(o, a + 1), s = Math.max(s, c + 1));
120
120
  }
121
121
  return o === Infinity ? [-1, -1] : [o, s];
122
- }, ee = (e, t, n) => L(e, t, n, !0, /* @__PURE__ */ new Set()), R = (e, t, n, r = /* @__PURE__ */ new Set()) => {
122
+ }, te = (e, t, n) => I(e, t, n, !0, /* @__PURE__ */ new Set()), L = (e, t, n, r = /* @__PURE__ */ new Set()) => {
123
123
  if (r.has(n.id)) return [-1, -1];
124
124
  if (r.add(n.id), n.type === "origin") return [0, 0];
125
125
  let i = t.filter((e) => e.destinationNodeId === n.id);
@@ -128,136 +128,157 @@ var F = (e, t, n, r, i = /* @__PURE__ */ new Set()) => i.has(n.id) ? [] : (i.add
128
128
  for (let n of i) {
129
129
  let i = e.find((e) => e.id === n.sourceNodeId);
130
130
  if (!i) continue;
131
- let [s, c] = R(e, t, i, new Set(r));
131
+ let [s, c] = L(e, t, i, new Set(r));
132
132
  s !== -1 && (a = Math.min(a, s + 1), o = Math.max(o, c + 1));
133
133
  }
134
134
  return a === Infinity ? [-1, -1] : [a, o];
135
- }, te = (e, t, n) => R(e, t, n, /* @__PURE__ */ new Set()), z = (e) => e.find((e) => e.type === "origin") || null, B = (e, t, n) => {
136
- if (!e) return z(t);
135
+ }, ne = (e, t, n) => L(e, t, n, /* @__PURE__ */ new Set()), R = (e) => e.find((e) => e.type === "origin") || null, z = (e, t, n) => {
136
+ if (!e) return R(t);
137
137
  let r = n.find((t) => t.sourceNodeId === e.id);
138
138
  return r && t.find((e) => e.id === r.destinationNodeId) || null;
139
139
  };
140
140
  //#endregion
141
141
  //#region src/utils/node-tree/get-next-node-from-condition.ts
142
- async function ne(e, t, n, r) {
142
+ async function re(e, t, n, r) {
143
143
  let i = e ? "true" : "false", a = r.find((e) => e.sourceHandle === i && e.sourceNodeId === t);
144
144
  return n.find((e) => e.id === a?.destinationNodeId);
145
145
  }
146
146
  //#endregion
147
147
  //#region src/entities/experience-instance/experience-instance.ts
148
- var V = c("experience-instance"), H = p(({ client: n, experience: r, target: i, options: c }) => {
149
- let p = Math.random().toString(36).substring(7);
150
- n.history.seedInstanceFromSnapshot({
151
- instanceId: p,
152
- experienceId: r.id
153
- });
154
- let m = u(), h = u(), g = u(), _ = u(), v = u(), y = u(), b = r.componentStore, x = V.store("transitioning"), S = n.history.entriesStore.map((e) => e.filter((e) => e.instanceId === p)), C = S.map((e) => e.filter((e) => j(e.node))), w = S.map((e) => e.at(-1)?.node || null), T = o(n.steps.listStore, w, (e, t) => e.find((e) => t && j(t) && e.id === t.stepId) || null), E = o(n.steps.listStore, C, (e, t) => {
148
+ var B = c("experience-instance"), V = p(({ client: n, experience: r, target: i, options: c }) => {
149
+ let p = u(), m = u(), h = u(), g = u(), v = u(), y = u(), b = r.componentStore, x = B.store("transitioning"), S = n.history.entriesStore.map((e) => e.filter((e) => e.experienceId === r.id)), C = S.map((e) => e.filter((e) => j(e.node))), w = S.map((e) => e.at(-1)?.node || null), T = o(n.steps.listStore, w, (e, t) => e.find((e) => t && j(t) && e.id === t.stepId) || null), E = o(n.steps.listStore, C, (e, t) => {
155
150
  let n = t.at(-2);
156
151
  if (!n || !j(n.node)) return null;
157
152
  let r = n.node;
158
153
  return e.find((e) => e.id === r.stepId) || null;
159
- }), D = o(r.treeStore, w, ({ nodes: e, edges: t }, n) => n ? I(e, t, n) : []), O = o(r.treeStore, w, ({ nodes: e, edges: t }, n) => n ? te(e, t, n) : [-1, -1]), k = o(r.treeStore, w, ({ nodes: e, edges: t }, n) => n ? ee(e, t, n) : [-1, -1]), F = V.store(!1), L = s(F, {
154
+ }), D = o(r.treeStore, w, ({ nodes: e, edges: t }, n) => n ? ee(e, t, n) : []), O = o(r.treeStore, w, ({ nodes: e, edges: t }, n) => n ? ne(e, t, n) : [-1, -1]), k = o(r.treeStore, w, ({ nodes: e, edges: t }, n) => n ? te(e, t, n) : [-1, -1]), F = B.store(!1), I = s(F, {
160
155
  open: () => !0,
161
156
  close: () => !1,
162
157
  toggle: (e) => !e,
163
158
  set: (e, t) => t
164
- }), R = l(async () => {
165
- n.history.back({ instanceId: p });
166
- }), H = a({
159
+ }), L = l(async () => {
160
+ n.history.back({ experienceId: r.id });
161
+ }), V = a({
167
162
  source: r.treeStore,
168
163
  effect: async (e, t) => {
169
164
  let i = e.nodes.find((e) => j(e) && e.stepId === t);
170
165
  i && n.history.push({
171
- instanceId: p,
172
166
  experienceId: r.id,
173
167
  node: i
174
168
  });
175
169
  }
176
- }), U = a({
170
+ }), H = a({
177
171
  source: w,
178
172
  effect: (e) => {}
179
- }), W = a({
173
+ }), U = a({
180
174
  source: r.treeStore,
181
- effect: async ({ nodes: e }) => z(e)
182
- }), G = a({
175
+ effect: async ({ nodes: e }) => R(e)
176
+ }), W = a({
183
177
  source: r.treeStore,
184
178
  effect: async ({ nodes: e, edges: t }, n) => {
185
- if (N(n)) return B(n, e, t);
179
+ if (N(n)) return z(n, e, t);
186
180
  }
187
- }), K = a({
181
+ }), G = a({
188
182
  source: r.treeStore,
189
183
  effect: async ({ nodes: e, edges: r, conditions: i }, a) => {
190
184
  if (!A(a)) return;
191
185
  let o = i.find((e) => e.id === a.conditionId)?.logic;
192
- return o ? ne(!!await t(n, o), a.id, e, r) : void 0;
186
+ return o ? re(!!await t(n, o), a.id, e, r) : void 0;
193
187
  }
194
- }), q = a({
195
- source: r.treeStore,
196
- effect: async ({ nodes: e, edges: t }, r) => {
188
+ }), K = a({
189
+ source: {
190
+ tree: r.treeStore,
191
+ actions: n.actions.listStore,
192
+ snapshot: n.stateSnapshotStore
193
+ },
194
+ effect: async ({ tree: e, actions: t, snapshot: n }, r) => {
195
+ let { nodes: i, edges: a } = e;
197
196
  if (!P(r)) return;
198
- let i = r.actionKey;
199
- if (!i) {
197
+ let o = r.actionKey;
198
+ if (!o) {
200
199
  `${r.id}`;
201
200
  return;
202
201
  }
203
- let a = n.actions.getByKey(i).getState();
204
- if (!a) {
205
- `${i}`;
206
- let n = t.find((e) => e.sourceNodeId === r.id && e.sourceHandle === "false");
207
- return n ? e.find((e) => e.id === n.destinationNodeId) : null;
202
+ let s = t.find((e) => e.key === o)?.action;
203
+ if (!s) {
204
+ `${o}`;
205
+ let e = a.find((e) => e.sourceNodeId === r.id && e.sourceHandle === "false");
206
+ return e ? i.find((t) => t.id === e.destinationNodeId) : null;
208
207
  }
209
- if (typeof a != "function") {
210
- `${i}`;
211
- let n = t.find((e) => e.sourceNodeId === r.id && e.sourceHandle === "false");
212
- return n ? e.find((e) => e.id === n.destinationNodeId) : null;
208
+ if (typeof s != "function") {
209
+ `${o}`;
210
+ let e = a.find((e) => e.sourceNodeId === r.id && e.sourceHandle === "false");
211
+ return e ? i.find((t) => t.id === e.destinationNodeId) : null;
213
212
  }
214
213
  try {
215
- `${i}`, await a({
216
- ...n.getStateSnapshot(),
214
+ `${o}`, await s({
215
+ ...n,
217
216
  args: []
218
217
  }, { experience: Z });
219
- let o = t.find((e) => e.sourceNodeId === r.id && e.sourceHandle === "true");
220
- if (!o) return `${r.id}`, null;
221
- let s = e.find((e) => e.id === o.destinationNodeId);
222
- return `${i}${s?.id}`, s || null;
218
+ let e = a.find((e) => e.sourceNodeId === r.id && e.sourceHandle === "true");
219
+ if (!e) return `${r.id}`, null;
220
+ let t = i.find((t) => t.id === e.destinationNodeId);
221
+ return `${o}${t?.id}`, t || null;
223
222
  } catch {
224
- `${i}`;
225
- let n = t.find((e) => e.sourceNodeId === r.id && e.sourceHandle === "false");
226
- if (!n) return `${r.id}`, null;
227
- let a = e.find((e) => e.id === n.destinationNodeId);
228
- return `${i}${a?.id}`, a || null;
223
+ `${o}`;
224
+ let e = a.find((e) => e.sourceNodeId === r.id && e.sourceHandle === "false");
225
+ if (!e) return `${r.id}`, null;
226
+ let t = i.find((t) => t.id === e.destinationNodeId);
227
+ return `${o}${t?.id}`, t || null;
229
228
  }
230
229
  }
231
- }), re = l((e) => {
230
+ }), ie = l((e) => {
232
231
  M(e) && n.experiences.launch({ key: e.experienceKey });
233
- }), J = a({
232
+ }), q = a({
234
233
  source: [w, r.treeStore],
235
- effect: async ([e, { nodes: t, edges: n }]) => B(e, t, n)
236
- }), Y = a({
234
+ effect: async ([e, { nodes: t, edges: n }]) => z(e, t, n)
235
+ }), J = a({
237
236
  source: [w, r.treeStore],
238
- effect: async ([e, { nodes: t, edges: n }]) => B(e, t, n)
239
- }), ie = l((e) => {
237
+ effect: async ([e, { nodes: t, edges: n }]) => z(e, t, n)
238
+ }), ae = l((e) => {
240
239
  n.history.push({
241
- instanceId: p,
242
240
  experienceId: r.id,
243
241
  node: e
244
242
  });
245
- }), X = a({
243
+ }), Y = a({
246
244
  source: r.configStore,
247
245
  effect: async ({ initializeOpenLogic: r }) => c?.initialiseOpen === void 0 ? e(r) ? !!await t(n, r) : r ?? !1 : c.initialiseOpen
248
- }), Z = Object.freeze({
249
- id: p,
246
+ }), X = o(b, n.frameworks.listStore, (e, t) => {
247
+ if (!e) return null;
248
+ let n = t.find((t) => t.name === e.component.frameworkName);
249
+ return n ? {
250
+ component: e,
251
+ framework: n
252
+ } : null;
253
+ }, { skipVoid: !1 }), Z, oe = a({
254
+ source: X,
255
+ effect: (e) => {
256
+ if (!e) return;
257
+ if (!i) {
258
+ `${r.id}`;
259
+ return;
260
+ }
261
+ let t = _(i);
262
+ try {
263
+ e.framework.render(t, e.component.component, n, Z);
264
+ } catch {}
265
+ }
266
+ });
267
+ Z = Object.freeze({
268
+ id: Math.random().toString(36).substring(7),
250
269
  experienceKey: r.key,
251
270
  experienceId: r.id,
271
+ experienceName: r.name,
252
272
  configStore: r.configStore,
253
273
  target: i,
254
274
  componentStore: b,
275
+ componentAndFrameworkStore: X,
255
276
  stateStore: x,
256
277
  isOpenStore: F,
257
- open: L.open,
258
- close: L.close,
259
- toggleOpen: L.toggle,
260
- setOpen: L.set,
278
+ open: I.open,
279
+ close: I.close,
280
+ toggleOpen: I.toggle,
281
+ setOpen: I.set,
261
282
  treeStore: r.treeStore,
262
283
  currentNodeStore: w,
263
284
  currentStepStore: T,
@@ -265,18 +286,20 @@ var V = c("experience-instance"), H = p(({ client: n, experience: r, target: i,
265
286
  nextReachableStepNodesStore: D,
266
287
  stepsToOriginStore: O,
267
288
  stepsToLeafStore: k,
268
- goToNextStep: h,
269
- goToPreviousStep: g,
270
- goToStepById: _,
271
- stepsHistoryStore: C
272
- }), Q = u(), $ = u();
289
+ goToNextStep: m,
290
+ goToPreviousStep: h,
291
+ goToStepById: g,
292
+ stepsHistoryStore: C,
293
+ mountFx: oe
294
+ });
295
+ let Q = u(), $ = u();
273
296
  return d({
274
297
  clock: w,
275
298
  target: Q
276
299
  }), d({
277
300
  clock: Q,
278
301
  filter: (e) => e === null,
279
- target: W
302
+ target: U
280
303
  }), d({
281
304
  clock: Q,
282
305
  filter: (e) => e !== null,
@@ -285,29 +308,29 @@ var V = c("experience-instance"), H = p(({ client: n, experience: r, target: i,
285
308
  source: $,
286
309
  match: (e) => A(e) ? "condition" : j(e) ? "step" : M(e) ? "launchExperience" : N(e) ? "origin" : P(e) ? "action" : "other",
287
310
  cases: {
288
- origin: G,
289
- condition: K,
290
- step: U,
291
- launchExperience: re,
292
- action: q,
311
+ origin: W,
312
+ condition: G,
313
+ step: H,
314
+ launchExperience: ie,
315
+ action: K,
293
316
  __: u()
294
317
  }
295
318
  }), d({
296
319
  clock: [
297
- K.doneData,
298
320
  G.doneData,
299
321
  W.doneData,
300
- Y.doneData,
322
+ U.doneData,
301
323
  J.doneData,
302
- q.doneData
324
+ q.doneData,
325
+ K.doneData
303
326
  ],
304
327
  filter: Boolean,
305
- target: ie
328
+ target: ae
306
329
  }), d({
307
- clock: h,
308
- target: Y
330
+ clock: m,
331
+ target: J
309
332
  }), d({
310
- clock: h,
333
+ clock: m,
311
334
  source: T,
312
335
  filter: Boolean,
313
336
  target: n.eventBus.prepend((e) => ({
@@ -316,7 +339,7 @@ var V = c("experience-instance"), H = p(({ client: n, experience: r, target: i,
316
339
  experience: Z
317
340
  }))
318
341
  }), d({
319
- clock: Y.done,
342
+ clock: J.done,
320
343
  source: T,
321
344
  filter: Boolean,
322
345
  target: n.eventBus.prepend((e) => ({
@@ -325,7 +348,7 @@ var V = c("experience-instance"), H = p(({ client: n, experience: r, target: i,
325
348
  experience: Z
326
349
  }))
327
350
  }), d({
328
- clock: Y.fail,
351
+ clock: J.fail,
329
352
  source: T,
330
353
  filter: Boolean,
331
354
  target: n.eventBus.prepend((e) => ({
@@ -334,22 +357,22 @@ var V = c("experience-instance"), H = p(({ client: n, experience: r, target: i,
334
357
  experience: Z
335
358
  }))
336
359
  }), d({
337
- clock: g,
338
- target: R
360
+ clock: h,
361
+ target: L
339
362
  }), d({
340
- clock: _,
341
- target: H
363
+ clock: g,
364
+ target: V
342
365
  }), d({
343
366
  source: o([
344
- K.pending,
345
367
  G.pending,
346
368
  W.pending,
347
- Y.pending
369
+ U.pending,
370
+ J.pending
348
371
  ]),
349
372
  fn: (e) => e.some(Boolean) ? "transitioning" : "ready",
350
373
  target: x
351
374
  }), d({
352
- clock: U.doneData,
375
+ clock: H.doneData,
353
376
  source: T,
354
377
  filter: Boolean,
355
378
  target: n.eventBus.prepend((e) => ({
@@ -359,20 +382,20 @@ var V = c("experience-instance"), H = p(({ client: n, experience: r, target: i,
359
382
  }))
360
383
  }), d({
361
384
  clock: y,
362
- target: X
385
+ target: Y
363
386
  }), d({
364
- source: X.doneData,
387
+ source: Y.doneData,
365
388
  fn: Boolean,
366
389
  target: F
367
390
  }), d({
368
391
  source: w,
369
- clock: m,
392
+ clock: p,
370
393
  filter: (e) => e ? N(e) : !0,
371
- target: J
394
+ target: q
372
395
  }), d({
373
396
  source: F,
374
397
  filter: Boolean,
375
- target: m
398
+ target: p
376
399
  }), d({
377
400
  source: F,
378
401
  filter: Boolean,
@@ -392,11 +415,11 @@ var V = c("experience-instance"), H = p(({ client: n, experience: r, target: i,
392
415
  target: [y]
393
416
  }), v(), Z;
394
417
  });
395
- function U(e) {
396
- return m(H, e);
418
+ function H(e) {
419
+ return m(V, e);
397
420
  }
398
- var W = p(({ client: e }) => {
399
- let t = V.store({}), n = u(), r = u(), i = u(), a = s(t, {
421
+ var U = p(({ client: e }) => {
422
+ let t = B.store({}), n = u(), r = u(), i = u(), a = s(t, {
400
423
  register(e, t) {
401
424
  let n = [...e[t.experienceId] ?? []];
402
425
  return n.push(t), {
@@ -411,7 +434,7 @@ var W = p(({ client: e }) => {
411
434
  [n]: r ?? []
412
435
  };
413
436
  }
414
- }), o = l(({ experience: t, target: n, options: r }) => U({
437
+ }), o = l(({ experience: t, target: n, options: r }) => H({
415
438
  client: e,
416
439
  experience: t,
417
440
  target: n,
@@ -424,23 +447,8 @@ var W = p(({ client: e }) => {
424
447
  });
425
448
  }), p = l((e) => {
426
449
  a.unregister(e);
427
- }), m = l((t) => {
428
- let n = t.componentStore.getState();
429
- if (!n) return;
430
- let r = n.frameworkStore.getState();
431
- if (!r) {
432
- `${n.name}`;
433
- return;
434
- }
435
- let i = t.target;
436
- if (!i) {
437
- `${t.experienceId}`;
438
- return;
439
- }
440
- let a = _(i);
441
- try {
442
- r.render(a, n.component, e, t);
443
- } catch {}
450
+ }), m = l(async (e) => {
451
+ await e.mountFx();
444
452
  });
445
453
  d({
446
454
  clock: n,
@@ -473,21 +481,21 @@ var W = p(({ client: e }) => {
473
481
  });
474
482
  }
475
483
  let g = t.map((e) => Object.values(e).flat());
476
- function v(e) {
484
+ function _(e) {
477
485
  return g.map((t) => t.filter((t) => t.experienceKey === e), { skipVoid: !1 });
478
486
  }
479
- function b(e) {
487
+ function v(e) {
480
488
  return t.map((t) => t[e] || [], { skipVoid: !1 });
481
489
  }
482
490
  return {
483
491
  spawn: h,
484
- getByExperienceKey: v,
485
- getByExperienceId: b,
492
+ getByExperienceKey: _,
493
+ getByExperienceId: v,
486
494
  listStore: g
487
495
  };
488
496
  });
489
- function G(e) {
490
- return m(W, e);
497
+ function W(e) {
498
+ return m(U, e);
491
499
  }
492
500
  //#endregion
493
- export { w as a, D as c, j as i, T as l, G as n, v as o, A as r, C as s, U as t };
501
+ export { w as a, D as c, j as i, T as l, W as n, v as o, A as r, C as s, H as t };
@@ -0,0 +1 @@
1
+ const e=require(`./rules-logic-H6P8xwHF.cjs`);require(`./logger-fbvQC40v.cjs`);const t=require(`./supports-Dsjg-82e.cjs`);let n=require(`effector`),r=require(`@withease/factories`);function i(e){return!t.d()||!t.r()?[]:Array.from(window.document.querySelectorAll(e)).filter(e=>e instanceof HTMLElement)}var a=`open`;function o(e){if(!t.l())throw Error(`Shadow DOM is not supported in this environment`);return e.attachShadow({mode:a})}function s(){return new Promise((e,n)=>{if(!t.r()){n();return}document.readyState===`loading`?document.addEventListener(`readystatechange`,()=>e(),{once:!0}):e()})}function c(e,t){let n=new MutationObserver(r=>{document.contains(e)||(n.disconnect(),t())});n.observe(document.body,{childList:!0,subtree:!0})}var l=`picked-root`,u=`picked-target`,d=`picked-root`;function f(e,t){return[...e,{selector:`${d}[experience-id="${t}"]`,placement:`replace`}].flatMap(e=>{let n=i(e.selector).filter(e=>!h(e,t)&&!g(e,t));return{...e,elements:n}})}function p(e,t,n){return e.flatMap(e=>e.elements.map(r=>v(r,e.placement,t,n)))}function m(e,t){e.classList.add(u),e.classList.add(`${u}-${t}`)}function h(e,t){return t?e.classList.contains(`${u}-${t}`):e.classList.contains(`${u}`)}function g(e,t){return t?e.classList.contains(`${l}-${t}`):e.classList.contains(l)}function _(e,t){let n=document.createElement(`div`);return n.style.display=`block`,n.classList.add(l),n.classList.add(`${l}-${e}`),n.classList.add(`${l}-${t}`),n}function v(e,t,n,r){let i,a=_(n,r);if(e instanceof Document)i=e.body.appendChild(a);else{switch(t){case`replace`:e.replaceWith(a);break;case`before`:e.before(a);break;case`after`:e.after(a);break;case`prepend`:e.prepend(a);break;case`append`:e.append(a);break}i=a}return i}function y(e){return e.type===`condition`}function b(e){return e.type===`step`}function x(e){return e.type===`experience`}function S(e){return e.type===`origin`}function C(e){return e.type===`action`}var w=(e,t,n,r,i=new Set)=>i.has(n.id)?[]:(i.add(n.id),b(n)&&!r?[n]:t.filter(e=>e.sourceNodeId===n.id).flatMap(n=>{let r=e.find(e=>e.id===n.destinationNodeId);return r?w(e,t,r,!1,i):[]})),T=(e,t,n)=>w(e,t,n,!0,new Set),E=(e,t,n,r,i=new Set)=>{if(i.has(n.id))return[-1,-1];i.add(n.id);let a=t.filter(e=>e.sourceNodeId===n.id);if(a.length===0)return[0,0];let o=1/0,s=-1/0;for(let n of a){let r=e.find(e=>e.id===n.destinationNodeId);if(!r)continue;let[a,c]=E(e,t,r,!1,new Set(i));a!==-1&&(o=Math.min(o,a+1),s=Math.max(s,c+1))}return o===1/0?[-1,-1]:[o,s]},D=(e,t,n)=>E(e,t,n,!0,new Set),O=(e,t,n,r=new Set)=>{if(r.has(n.id))return[-1,-1];if(r.add(n.id),n.type===`origin`)return[0,0];let i=t.filter(e=>e.destinationNodeId===n.id);if(i.length===0)return[-1,-1];let a=1/0,o=-1/0;for(let n of i){let i=e.find(e=>e.id===n.sourceNodeId);if(!i)continue;let[s,c]=O(e,t,i,new Set(r));s!==-1&&(a=Math.min(a,s+1),o=Math.max(o,c+1))}return a===1/0?[-1,-1]:[a,o]},k=(e,t,n)=>O(e,t,n,new Set),A=e=>e.find(e=>e.type===`origin`)||null,j=(e,t,n)=>{if(!e)return A(t);let r=n.find(t=>t.sourceNodeId===e.id);return r&&t.find(e=>e.id===r.destinationNodeId)||null};async function M(e,t,n,r){let i=e?`true`:`false`,a=r.find(e=>e.sourceHandle===i&&e.sourceNodeId===t);return n.find(e=>e.id===a?.destinationNodeId)}var N=(0,n.createDomain)(`experience-instance`),P=(0,r.createFactory)(({client:t,experience:r,target:i,options:a})=>{let s=(0,n.createEvent)(),c=(0,n.createEvent)(),l=(0,n.createEvent)(),u=(0,n.createEvent)(),d=(0,n.createEvent)(),f=(0,n.createEvent)(),p=r.componentStore,m=N.store(`transitioning`),h=t.history.entriesStore.map(e=>e.filter(e=>e.experienceId===r.id)),g=h.map(e=>e.filter(e=>b(e.node))),_=h.map(e=>e.at(-1)?.node||null),v=(0,n.combine)(t.steps.listStore,_,(e,t)=>e.find(e=>t&&b(t)&&e.id===t.stepId)||null),w=(0,n.combine)(t.steps.listStore,g,(e,t)=>{let n=t.at(-2);if(!n||!b(n.node))return null;let r=n.node;return e.find(e=>e.id===r.stepId)||null}),E=(0,n.combine)(r.treeStore,_,({nodes:e,edges:t},n)=>n?T(e,t,n):[]),O=(0,n.combine)(r.treeStore,_,({nodes:e,edges:t},n)=>n?k(e,t,n):[-1,-1]),P=(0,n.combine)(r.treeStore,_,({nodes:e,edges:t},n)=>n?D(e,t,n):[-1,-1]),F=N.store(!1),I=(0,n.createApi)(F,{open:()=>!0,close:()=>!1,toggle:e=>!e,set:(e,t)=>t}),L=(0,n.createEffect)(async()=>{t.history.back({experienceId:r.id})}),R=(0,n.attach)({source:r.treeStore,effect:async(e,n)=>{let i=e.nodes.find(e=>b(e)&&e.stepId===n);i&&t.history.push({experienceId:r.id,node:i})}}),z=(0,n.attach)({source:_,effect:e=>{}}),B=(0,n.attach)({source:r.treeStore,effect:async({nodes:e})=>A(e)}),V=(0,n.attach)({source:r.treeStore,effect:async({nodes:e,edges:t},n)=>{if(S(n))return j(n,e,t)}}),H=(0,n.attach)({source:r.treeStore,effect:async({nodes:n,edges:r,conditions:i},a)=>{if(!y(a))return;let o=i.find(e=>e.id===a.conditionId)?.logic;return o?M(!!await e.t(t,o),a.id,n,r):void 0}}),U=(0,n.attach)({source:{tree:r.treeStore,actions:t.actions.listStore,snapshot:t.stateSnapshotStore},effect:async({tree:e,actions:t,snapshot:n},r)=>{let{nodes:i,edges:a}=e;if(!C(r))return;let o=r.actionKey;if(!o){`${r.id}`;return}let s=t.find(e=>e.key===o)?.action;if(!s){`${o}`;let e=a.find(e=>e.sourceNodeId===r.id&&e.sourceHandle===`false`);return e?i.find(t=>t.id===e.destinationNodeId):null}if(typeof s!=`function`){`${o}`;let e=a.find(e=>e.sourceNodeId===r.id&&e.sourceHandle===`false`);return e?i.find(t=>t.id===e.destinationNodeId):null}try{`${o}`,await s({...n,args:[]},{experience:X});let e=a.find(e=>e.sourceNodeId===r.id&&e.sourceHandle===`true`);if(!e)return`${r.id}`,null;let t=i.find(t=>t.id===e.destinationNodeId);return`${o}${t?.id}`,t||null}catch{`${o}`;let e=a.find(e=>e.sourceNodeId===r.id&&e.sourceHandle===`false`);if(!e)return`${r.id}`,null;let t=i.find(t=>t.id===e.destinationNodeId);return`${o}${t?.id}`,t||null}}}),W=(0,n.createEffect)(e=>{x(e)&&t.experiences.launch({key:e.experienceKey})}),G=(0,n.attach)({source:[_,r.treeStore],effect:async([e,{nodes:t,edges:n}])=>j(e,t,n)}),K=(0,n.attach)({source:[_,r.treeStore],effect:async([e,{nodes:t,edges:n}])=>j(e,t,n)}),q=(0,n.createEffect)(e=>{t.history.push({experienceId:r.id,node:e})}),J=(0,n.attach)({source:r.configStore,effect:async({initializeOpenLogic:n})=>a?.initialiseOpen===void 0?e.n(n)?!!await e.t(t,n):n??!1:a.initialiseOpen}),Y=(0,n.combine)(p,t.frameworks.listStore,(e,t)=>{if(!e)return null;let n=t.find(t=>t.name===e.component.frameworkName);return n?{component:e,framework:n}:null},{skipVoid:!1}),X,Z=(0,n.attach)({source:Y,effect:e=>{if(!e)return;if(!i){`${r.id}`;return}let n=o(i);try{e.framework.render(n,e.component.component,t,X)}catch{}}});X=Object.freeze({id:Math.random().toString(36).substring(7),experienceKey:r.key,experienceId:r.id,experienceName:r.name,configStore:r.configStore,target:i,componentStore:p,componentAndFrameworkStore:Y,stateStore:m,isOpenStore:F,open:I.open,close:I.close,toggleOpen:I.toggle,setOpen:I.set,treeStore:r.treeStore,currentNodeStore:_,currentStepStore:v,previousStepStore:w,nextReachableStepNodesStore:E,stepsToOriginStore:O,stepsToLeafStore:P,goToNextStep:c,goToPreviousStep:l,goToStepById:u,stepsHistoryStore:g,mountFx:Z});let Q=(0,n.createEvent)(),$=(0,n.createEvent)();return(0,n.sample)({clock:_,target:Q}),(0,n.sample)({clock:Q,filter:e=>e===null,target:B}),(0,n.sample)({clock:Q,filter:e=>e!==null,target:$}),(0,n.split)({source:$,match:e=>y(e)?`condition`:b(e)?`step`:x(e)?`launchExperience`:S(e)?`origin`:C(e)?`action`:`other`,cases:{origin:V,condition:H,step:z,launchExperience:W,action:U,__:(0,n.createEvent)()}}),(0,n.sample)({clock:[H.doneData,V.doneData,B.doneData,K.doneData,G.doneData,U.doneData],filter:Boolean,target:q}),(0,n.sample)({clock:c,target:K}),(0,n.sample)({clock:c,source:v,filter:Boolean,target:t.eventBus.prepend(e=>({type:`step_submit`,step:e,experience:X}))}),(0,n.sample)({clock:K.done,source:v,filter:Boolean,target:t.eventBus.prepend(e=>({type:`step_submit_success`,step:e,experience:X}))}),(0,n.sample)({clock:K.fail,source:v,filter:Boolean,target:t.eventBus.prepend(e=>({type:`step_submit_error`,step:e,experience:X}))}),(0,n.sample)({clock:l,target:L}),(0,n.sample)({clock:u,target:R}),(0,n.sample)({source:(0,n.combine)([H.pending,V.pending,B.pending,K.pending]),fn:e=>e.some(Boolean)?`transitioning`:`ready`,target:m}),(0,n.sample)({clock:z.doneData,source:v,filter:Boolean,target:t.eventBus.prepend(e=>({type:`step_enter`,step:e,experience:X}))}),(0,n.sample)({clock:f,target:J}),(0,n.sample)({source:J.doneData,fn:Boolean,target:F}),(0,n.sample)({source:_,clock:s,filter:e=>e?S(e):!0,target:G}),(0,n.sample)({source:F,filter:Boolean,target:s}),(0,n.sample)({source:F,filter:Boolean,target:t.eventBus.prepend(()=>({type:`experience_open`,experience:X}))}),(0,n.sample)({source:F,filter:e=>!e,target:t.eventBus.prepend(()=>({type:`experience_close`,experience:X}))}),(0,n.sample)({clock:d,target:[f]}),d(),X});function F(e){return(0,r.invoke)(P,e)}var I=(0,r.createFactory)(({client:e})=>{let t=N.store({}),r=(0,n.createEvent)(),i=(0,n.createEvent)(),a=(0,n.createEvent)(),o=(0,n.createApi)(t,{register(e,t){let n=[...e[t.experienceId]??[]];return n.push(t),{...e,[t.experienceId]:n}},unregister(e,t){let n=t.experienceId,r=e[n]?.filter(e=>e!==t);return{...e,[n]:r??[]}}}),s=(0,n.createEffect)(({experience:t,target:n,options:r})=>F({client:e,experience:t,target:n,options:r})),l=(0,n.createEffect)(e=>{o.register(e)}),u=(0,n.createEffect)(e=>{e.target&&c(e.target,()=>{a(e)})}),d=(0,n.createEffect)(e=>{o.unregister(e)}),f=(0,n.createEffect)(async e=>{await e.mountFx()});(0,n.sample)({clock:r,target:s}),(0,n.sample)({clock:a,target:d}),(0,n.sample)({clock:s.doneData,target:[l,u,i]}),(0,n.sample)({clock:s.doneData,target:e.eventBus.prepend(e=>({type:`experience_initialize`,experience:e}))}),(0,n.sample)({clock:i,target:f});function p(e,t,n){r({experience:e,target:t,options:n})}let m=t.map(e=>Object.values(e).flat());function h(e){return m.map(t=>t.filter(t=>t.experienceKey===e),{skipVoid:!1})}function g(e){return t.map(t=>t[e]||[],{skipVoid:!1})}return{spawn:p,getByExperienceKey:h,getByExperienceId:g,listStore:m}});function L(e){return(0,r.invoke)(I,e)}Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return b}}),Object.defineProperty(exports,`l`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return L}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return F}});
@@ -0,0 +1,13 @@
1
+ import { t as e } from "./object-DvUDOytC.js";
2
+ //#region src/utils/rules-logic.ts
3
+ function t(t) {
4
+ return !e(t);
5
+ }
6
+ async function n(e, t, n) {
7
+ return await e.evaluateRuleLogicFx({
8
+ rule: t,
9
+ context: n
10
+ });
11
+ }
12
+ //#endregion
13
+ export { t as n, n as t };
@@ -0,0 +1 @@
1
+ const e=require(`./object-ThO1DEyl.cjs`);function t(t){return!e.t(t)}async function n(e,t,n){return await e.evaluateRuleLogicFx({rule:t,context:n})}Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return t}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return n}});
@@ -6,8 +6,8 @@ import { AdaptedComponent } from './entities/component/component';
6
6
  import { LogicRule } from './logic-engine';
7
7
  export interface CreateClientOptions {
8
8
  /**
9
- * Your organizations unique identifier.
10
- * If not provided the organizationId will be read from window.pickedConfig.organizationId or data-organizationid on the script tag.
9
+ * @deprecated The organization id is no longer used by the Picked client. The
10
+ * field is accepted for backwards compatibility but the value is ignored.
11
11
  */
12
12
  organizationId?: string;
13
13
  /**
@@ -1,5 +1,5 @@
1
- import { Store } from 'effector';
2
- import { StateSnapshot } from '../../utils/state-snaphot';
1
+ import { EventCallable, Store } from 'effector';
2
+ import { StateSnapshot } from '../../lifecycle/state-snapshot';
3
3
  import { Picked } from '../../picked';
4
4
  import { ExperienceInstance } from '../experience-instance/experience-instance';
5
5
  /**
@@ -40,7 +40,10 @@ export interface ActionIndexItem {
40
40
  declare const createActionIndexFactory: ({ client }: {
41
41
  client: Picked;
42
42
  }) => {
43
- register: (key: string, action: Action) => void;
43
+ register: EventCallable<{
44
+ key: string;
45
+ action: Action;
46
+ }>;
44
47
  getByKey: (key: string) => Store<Action | undefined>;
45
48
  listStore: Store<ActionIndexItem[]>;
46
49
  getEvokableAction: (actionKey: string, options?: {
@@ -1 +1 @@
1
- {"version":3,"file":"action.d.ts","sourceRoot":"","sources":["../../../../src/entities/action/action.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,OAAO,EAA8D,KAAK,KAAK,EAAE,MAAM,UAAU,CAAA;AAGjG,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,2BAA2B,CAAA;AACnF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAA;AAEpF;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,sEAAsE;IACtE,UAAU,EAAE,kBAAkB,CAAA;CAC/B;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,MAAM,MAAM,GAAG,CACnB,QAAQ,EAAE,aAAa,GAAG;IAAE,IAAI,EAAE,OAAO,EAAE,CAAA;CAAE,EAC7C,OAAO,EAAE,aAAa,GAAG,IAAI,KAE3B,OAAO,GACP,OAAO,CAAC,OAAO,CAAC,GAChB,MAAM,GACN,OAAO,CAAC,MAAM,CAAC,GACf,MAAM,EAAE,GACR,OAAO,CAAC,MAAM,EAAE,CAAC,GACjB,IAAI,GACJ,OAAO,CAAC,IAAI,CAAC,GACb,SAAS,CAAA;AAEb,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAEtE,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;CACf;AAKD,QAAA,MAAM,wBAAwB,eAA8B;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE;oBA+BrD,MAAM,UAAU,MAAM,KAAG,IAAI;oBA2B7B,MAAM;;mCA2BhB,MAAM,YACP;QAAE,UAAU,EAAE,kBAAkB,CAAA;KAAE,KAC3C,KAAK,CAAC,MAAM,UAAU,CAAC,MAAM,CAAC,CAAC;CAyClC,CAAA;AAEF;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC,CAAC,CAAC,EACxF,MAAM,EAAE,CAAC,GACR,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAE7C;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,WAAW,GAAI,KAAK,MAAM,EAAE,QAAQ,MAAM,EAAE,SAAS,YAAY,KAAG,IAEhF,CAAA"}
1
+ {"version":3,"file":"action.d.ts","sourceRoot":"","sources":["../../../../src/entities/action/action.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,OAAO,EAML,KAAK,aAAa,EAElB,KAAK,KAAK,EACX,MAAM,UAAU,CAAA;AAGjB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AACnE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAA;AAEpF;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,sEAAsE;IACtE,UAAU,EAAE,kBAAkB,CAAA;CAC/B;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,MAAM,MAAM,GAAG,CACnB,QAAQ,EAAE,aAAa,GAAG;IAAE,IAAI,EAAE,OAAO,EAAE,CAAA;CAAE,EAC7C,OAAO,EAAE,aAAa,GAAG,IAAI,KAE3B,OAAO,GACP,OAAO,CAAC,OAAO,CAAC,GAChB,MAAM,GACN,OAAO,CAAC,MAAM,CAAC,GACf,MAAM,EAAE,GACR,OAAO,CAAC,MAAM,EAAE,CAAC,GACjB,IAAI,GACJ,OAAO,CAAC,IAAI,CAAC,GACb,SAAS,CAAA;AAEb,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAEtE,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;CACf;AAID,QAAA,MAAM,wBAAwB,eAA8B;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE;;aAqBvC,MAAM;gBAAU,MAAM;;oBA8BpC,MAAM;;mCA6BhB,MAAM,YACP;QAAE,UAAU,EAAE,kBAAkB,CAAA;KAAE,KAC3C,KAAK,CAAC,MAAM,UAAU,CAAC,MAAM,CAAC,CAAC;CA4ClC,CAAA;AAEF;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC,CAAC,CAAC,EACxF,MAAM,EAAE,CAAC,GACR,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAE7C;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,WAAW,GAAI,KAAK,MAAM,EAAE,QAAQ,MAAM,EAAE,SAAS,YAAY,KAAG,IAEhF,CAAA"}
@@ -1,4 +1,4 @@
1
- import { Store } from 'effector';
1
+ import { EventCallable, Store } from 'effector';
2
2
  import { Picked } from '../../picked';
3
3
  import { LazyComponentLoader } from './lazyComponent';
4
4
  export interface AdaptedComponentStyle {
@@ -32,11 +32,25 @@ declare const createComponentFactory: ({ client, component, name }: {
32
32
  component: AdaptedComponent<string, unknown>;
33
33
  frameworkStore: Store<import('../..').Framework | undefined>;
34
34
  };
35
+ /**
36
+ * Creates a component with framework-specific metadata and loader.
37
+ *
38
+ * @template T - Factory parameter type.
39
+ * @param params - The client, component name, and adapted component.
40
+ * @returns A component with name, component, and frameworkStore.
41
+ * @example
42
+ * ```ts
43
+ * const component = createComponent({ client, name: 'experience', component: adaptedComp })
44
+ * ```
45
+ */
35
46
  export declare function createComponent<T extends Parameters<typeof createComponentFactory>[0]>(params: T): ReturnType<typeof createComponentFactory>;
36
47
  declare const createComponentIndexFactory: ({ client }: {
37
48
  client: Picked;
38
49
  }) => {
39
- register: (name: string, component: AdaptedComponent) => void;
50
+ register: EventCallable<{
51
+ name: string;
52
+ component: AdaptedComponent;
53
+ }>;
40
54
  getByName: (name: string) => Store<{
41
55
  name: string;
42
56
  component: AdaptedComponent;
@@ -47,7 +61,30 @@ declare const createComponentIndexFactory: ({ client }: {
47
61
  frameworkStore: Store<import('../..').Framework | undefined>;
48
62
  }[]>;
49
63
  };
64
+ /**
65
+ * Creates a component index with lifecycle stores and registration logic.
66
+ *
67
+ * @template T - Factory parameter type.
68
+ * @param {T} params - Factory parameters including the client.
69
+ * @returns {ReturnType<typeof createComponentIndexFactory>} The component index with register, getByName, and listStore methods.
70
+ * @example
71
+ * ```ts
72
+ * const components = createComponentIndex({ client })
73
+ * components.register('experience', adaptedComponent)
74
+ * ```
75
+ */
50
76
  export declare function createComponentIndex<T extends Parameters<typeof createComponentIndexFactory>[0]>(params: T): ReturnType<typeof createComponentIndexFactory>;
77
+ /**
78
+ * Convenience helper that registers a single component on the given index.
79
+ *
80
+ * @param {string} name - Unique name for the component.
81
+ * @param {AdaptedComponent} component - The adapted component to register.
82
+ * @param {ComponentIndex} components - The component index to register into.
83
+ * @example
84
+ * ```ts
85
+ * setupComponent('experience', adaptedComponent, componentsIndex)
86
+ * ```
87
+ */
51
88
  export declare const setupComponent: (name: string, component: AdaptedComponent, components: ComponentIndex) => void;
52
89
  export {};
53
90
  //# sourceMappingURL=component.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../../../src/entities/component/component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA;AAIrC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAE1D,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;IACjB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAA;CACf;AAED,MAAM,WAAW,oBAAoB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,CAAC,GAAG,OAAO;IAC1E,aAAa,EAAE,CAAC,CAAA;IAChB,SAAS,EAAE,OAAO,CAAC;QAAE,OAAO,EAAE,CAAC,CAAA;KAAE,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAA;IAC3D,KAAK,CAAC,EAAE,qBAAqB,CAAA;CAC9B;AAED,MAAM,WAAW,qBAAqB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,CAAC,GAAG,OAAO;IAC3E,aAAa,EAAE,CAAC,CAAA;IAChB,SAAS,EAAE,CAAC,CAAA;IACZ,KAAK,CAAC,EAAE,qBAAqB,CAAA;CAC9B;AAED,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,CAAC,GAAG,OAAO,IAC/D,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC,GAC1B,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAE/B,MAAM,WAAW,mBAAmB,CAAC,CAAC,GAAG,gBAAgB,CAAC,MAAM,CAAC;IAC/D,UAAU,EAAE,CAAC,CAAA;CACd;AAED,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAA;AACpE,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAA;AAI1D,QAAA,MAAM,sBAAsB,gCACI;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,gBAAgB,CAAA;CAAE;;;;CAS5F,CAAA;AAED,wBAAgB,eAAe,CAAC,CAAC,SAAS,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC,CAAC,CAAC,EACpF,MAAM,EAAE,CAAC,GACR,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAE3C;AAED,QAAA,MAAM,2BAA2B,eAA8B;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE;qBAcvD,MAAM,aAAa,gBAAgB,KAAG,IAAI;sBAkBzC,MAAM,KAAG,KAAK,CACnC;QACE,IAAI,EAAE,MAAM,CAAA;QACZ,SAAS,EAAE,gBAAgB,CAAA;KAC5B,GACD,SAAS,CACZ;;;;;;CASD,CAAA;AAEF,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,UAAU,CAAC,OAAO,2BAA2B,CAAC,CAAC,CAAC,CAAC,EAC9F,MAAM,EAAE,CAAC,GACR,UAAU,CAAC,OAAO,2BAA2B,CAAC,CAEhD;AAED,eAAO,MAAM,cAAc,GACzB,MAAM,MAAM,EACZ,WAAW,gBAAgB,EAC3B,YAAY,cAAc,KACzB,IAEF,CAAA"}
1
+ {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../../../src/entities/component/component.ts"],"names":[],"mappings":"AAAA,8GAA8G;AAC9G,OAAO,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA;AAIpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAE1D,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;IACjB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAA;CACf;AAED,MAAM,WAAW,oBAAoB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,CAAC,GAAG,OAAO;IAC1E,aAAa,EAAE,CAAC,CAAA;IAChB,SAAS,EAAE,OAAO,CAAC;QAAE,OAAO,EAAE,CAAC,CAAA;KAAE,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAA;IAC3D,KAAK,CAAC,EAAE,qBAAqB,CAAA;CAC9B;AAED,MAAM,WAAW,qBAAqB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,CAAC,GAAG,OAAO;IAC3E,aAAa,EAAE,CAAC,CAAA;IAChB,SAAS,EAAE,CAAC,CAAA;IACZ,KAAK,CAAC,EAAE,qBAAqB,CAAA;CAC9B;AAED,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,CAAC,GAAG,OAAO,IAC/D,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC,GAC1B,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAE/B,MAAM,WAAW,mBAAmB,CAAC,CAAC,GAAG,gBAAgB,CAAC,MAAM,CAAC;IAC/D,UAAU,EAAE,CAAC,CAAA;CACd;AAED,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAA;AACpE,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAA;AAI1D,QAAA,MAAM,sBAAsB,gCACI;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,gBAAgB,CAAA;CAAE;;;;CAS5F,CAAA;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC,CAAC,CAAC,EACpF,MAAM,EAAE,CAAC,GACR,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAE3C;AAED,QAAA,MAAM,2BAA2B,eAA8B;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE;;cAkBzC,MAAM;mBAAa,gBAAgB;;sBAmChD,MAAM,KAAG,KAAK,CACnC;QACE,IAAI,EAAE,MAAM,CAAA;QACZ,SAAS,EAAE,gBAAgB,CAAA;KAC5B,GACD,SAAS,CACZ;;;;;;CASD,CAAA;AAEF;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,UAAU,CAAC,OAAO,2BAA2B,CAAC,CAAC,CAAC,CAAC,EAC9F,MAAM,EAAE,CAAC,GACR,UAAU,CAAC,OAAO,2BAA2B,CAAC,CAEhD;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,cAAc,GACzB,MAAM,MAAM,EACZ,WAAW,gBAAgB,EAC3B,YAAY,cAAc,KACzB,IAEF,CAAA"}