@picked/client 0.0.1-dev.1787788898336 → 0.0.1-dev.1789541668638
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-DU4j3Qw0.js → api-C7q_7vxn.js} +1 -1
- package/dist/{api-9gq3GBPF.cjs → api-Ctvh1qkk.cjs} +1 -1
- package/dist/cjs/index.js +2 -2
- package/dist/cjs/plugins/dynamic-experiences/index.js +1 -1
- package/dist/cjs/plugins/responses-browser-storage/index.js +1 -1
- package/dist/cjs/plugins/responses-indexeddb/index.js +1 -1
- package/dist/cjs/plugins/telemetry/index.js +1 -1
- package/dist/cjs/server/index.js +1 -1
- package/dist/docs/how-to/invite-and-remove-members.md +3 -2
- package/dist/docs/reference/dashboard/fields.mdx +17 -11
- package/dist/docs/reference/sdk/features.md +5 -0
- package/dist/docs/reference/sdk/fields.md +38 -6
- package/dist/docs/reference/sdk/type-generation.md +18 -7
- package/dist/docs/reference/tools/mcp.md +3 -1
- package/dist/esm/index.js +258 -239
- package/dist/esm/plugins/dynamic-experiences/index.js +2 -2
- package/dist/esm/plugins/responses-browser-storage/index.js +50 -16
- package/dist/esm/plugins/responses-indexeddb/index.js +1 -1
- package/dist/esm/plugins/telemetry/index.js +6 -3
- package/dist/esm/server/index.js +13 -13
- package/dist/{experience-instance-DGk11d8a.js → experience-instance-B9S6Yf0N.js} +302 -154
- package/dist/experience-instance-D8rOg6We.cjs +1 -0
- package/dist/{plugin-CYXHEafF.js → plugin-ChafFq6S.js} +3 -2
- package/dist/{plugin-rwzR9hVc.cjs → plugin-Dn25Gffy.cjs} +1 -1
- package/dist/{provider-BWDd3oaq.js → provider-B8wvmeC8.js} +15 -11
- package/dist/provider-BBLlQOjV.cjs +1 -0
- package/dist/types/client.d.ts +21 -0
- package/dist/types/client.d.ts.map +1 -1
- package/dist/types/data-source/provider.d.ts +3 -3
- package/dist/types/data-source/provider.d.ts.map +1 -1
- package/dist/types/data-source/request-observer.d.ts +23 -19
- package/dist/types/data-source/request-observer.d.ts.map +1 -1
- package/dist/types/entities/experience/experience.d.ts +8 -0
- package/dist/types/entities/experience/experience.d.ts.map +1 -1
- package/dist/types/entities/experience-instance/experience-instance.d.ts.map +1 -1
- package/dist/types/entities/feature/feature.d.ts.map +1 -1
- package/dist/types/entities/field/field.d.ts +26 -7
- package/dist/types/entities/field/field.d.ts.map +1 -1
- package/dist/types/entities/field/policies.d.ts +35 -0
- package/dist/types/entities/field/policies.d.ts.map +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/lifecycle/lifecycle.d.ts +1 -1
- package/dist/types/lifecycle/lifecycle.d.ts.map +1 -1
- package/dist/types/picked.d.ts +4 -13
- package/dist/types/picked.d.ts.map +1 -1
- package/dist/types/plugins/create-experience/create-experience.d.ts +3 -8
- package/dist/types/plugins/create-experience/create-experience.d.ts.map +1 -1
- package/dist/types/plugins/responses-browser-storage/plugin.d.ts +11 -0
- package/dist/types/plugins/responses-browser-storage/plugin.d.ts.map +1 -1
- package/dist/types/plugins/telemetry/plugin.d.ts +2 -2
- package/dist/types/plugins/telemetry/plugin.d.ts.map +1 -1
- package/dist/types/utils/client-telemetry.d.ts +25 -0
- package/dist/types/utils/client-telemetry.d.ts.map +1 -0
- package/dist/types/utils/node-tree/min-max-steps-to-leaf.d.ts +16 -6
- package/dist/types/utils/node-tree/min-max-steps-to-leaf.d.ts.map +1 -1
- package/dist/types/utils/node-tree/min-max-steps-to-origin.d.ts +18 -7
- package/dist/types/utils/node-tree/min-max-steps-to-origin.d.ts.map +1 -1
- package/dist/types/utils/node-tree/next-reachable-step-nodes.d.ts +30 -6
- package/dist/types/utils/node-tree/next-reachable-step-nodes.d.ts.map +1 -1
- package/dist/types/utils/node-tree/node-adjacency.d.ts +50 -0
- package/dist/types/utils/node-tree/node-adjacency.d.ts.map +1 -0
- package/dist/types/utils/node-tree/node-tree-index.d.ts +57 -0
- package/dist/types/utils/node-tree/node-tree-index.d.ts.map +1 -0
- package/dist/{version-BaI_1eQx.cjs → version-CLjPfmxk.cjs} +1 -1
- package/dist/{version-DXDZM7eT.js → version-CPKulHMH.js} +2 -2
- package/package.json +5 -5
- package/dist/experience-instance-Dej3P1sE.cjs +0 -1
- package/dist/provider-lgLyP_0N.cjs +0 -1
- package/dist/types/ping.d.ts +0 -11
- package/dist/types/ping.d.ts.map +0 -1
|
@@ -5,6 +5,7 @@ import type { Condition } from '../../entities/condition/condition';
|
|
|
5
5
|
import type { AdaptedComponent } from '../../entities/component/component';
|
|
6
6
|
import type { LogicRule, LogicValue } from '../../logic-engine';
|
|
7
7
|
import type { Field, FieldBooleanMultiple, FieldBooleanSingular, FieldNumberMultiple, FieldNumberSingular, FieldObjectMultiple, FieldObjectSingular, FieldTextMultiple, FieldTextSingular, JsonValue } from '../../entities/field/field';
|
|
8
|
+
import type { FieldPolicies } from '../../entities/field/policies';
|
|
8
9
|
import { type Serialized } from './serialization';
|
|
9
10
|
export interface SerializedExperience extends Experience {
|
|
10
11
|
steps: ExperienceStep[];
|
|
@@ -120,10 +121,7 @@ export type CreateFieldOptions = Omit<Field, 'id' | 'key' | 'options' | 'placeho
|
|
|
120
121
|
description?: string;
|
|
121
122
|
helpText?: string;
|
|
122
123
|
validation?: LogicRule;
|
|
123
|
-
policies?:
|
|
124
|
-
doNotTrackValue?: boolean;
|
|
125
|
-
doNotStoreValue?: boolean;
|
|
126
|
-
};
|
|
124
|
+
policies?: FieldPolicies;
|
|
127
125
|
options?: NonNullable<FieldTextSingular['options']>[number][] | NonNullable<FieldTextMultiple['options']>[number][] | NonNullable<FieldNumberSingular['options']>[number][] | NonNullable<FieldNumberMultiple['options']>[number][] | NonNullable<FieldBooleanSingular['options']>[number][] | NonNullable<FieldBooleanMultiple['options']>[number][] | Omit<NonNullable<FieldObjectSingular['options']>[number], 'id'>[] | Omit<NonNullable<FieldObjectMultiple['options']>[number], 'id'>[];
|
|
128
126
|
};
|
|
129
127
|
export type SerializableField<T extends JsonValue = JsonValue> = {
|
|
@@ -140,10 +138,7 @@ export type SerializableField<T extends JsonValue = JsonValue> = {
|
|
|
140
138
|
helpText?: string;
|
|
141
139
|
validation: LogicRule;
|
|
142
140
|
condition?: LogicRule;
|
|
143
|
-
policies?:
|
|
144
|
-
doNotTrackValue?: boolean;
|
|
145
|
-
doNotStoreValue?: boolean;
|
|
146
|
-
};
|
|
141
|
+
policies?: FieldPolicies;
|
|
147
142
|
options: {
|
|
148
143
|
id: string;
|
|
149
144
|
label: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-experience.d.ts","sourceRoot":"","sources":["../../../../src/plugins/create-experience/create-experience.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"create-experience.d.ts","sourceRoot":"","sources":["../../../../src/plugins/create-experience/create-experience.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,17 @@ import type { Plugin } from '../../entities/plugin/plugin';
|
|
|
2
2
|
interface ResponsesBrowserStoragePlugin {
|
|
3
3
|
storage?: 'local' | 'session';
|
|
4
4
|
}
|
|
5
|
+
/**
|
|
6
|
+
* Persists field responses to browser storage and restores them on the next page load.
|
|
7
|
+
*
|
|
8
|
+
* @param {ResponsesBrowserStoragePlugin} [options] - Plugin options.
|
|
9
|
+
* @param {'local' | 'session'} [options.storage] - Which browser store to persist to.
|
|
10
|
+
* @returns {Plugin} The plugin to pass to `createClient({ plugins })`.
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* createClient({ plugins: [responsesBrowserStoragePlugin({ storage: 'local' })] })
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
5
16
|
export declare const responsesBrowserStoragePlugin: ({ storage, }?: ResponsesBrowserStoragePlugin) => Plugin;
|
|
6
17
|
export {};
|
|
7
18
|
//# sourceMappingURL=plugin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../../src/plugins/responses-browser-storage/plugin.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAA;AAM1D,UAAU,6BAA6B;IACrC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC9B;
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../../src/plugins/responses-browser-storage/plugin.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAA;AAM1D,UAAU,6BAA6B;IACrC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC9B;AAsED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,6BAA6B,kBAEvC,6BAA6B,KAAQ,MA4FvC,CAAA"}
|
|
@@ -5,13 +5,13 @@ export declare const TELEMETRY_PLUGIN_NAME = "telemetry";
|
|
|
5
5
|
* Spans held before a flush is forced.
|
|
6
6
|
*
|
|
7
7
|
* A session buffers between flushes, so this is what bounds the buffer on a
|
|
8
|
-
* long-lived page that keeps making delivery requests.
|
|
8
|
+
* long-lived page that keeps making delivery API requests.
|
|
9
9
|
*/
|
|
10
10
|
export declare const MAX_BUFFERED_SPANS = 50;
|
|
11
11
|
/**
|
|
12
12
|
* How long the batch waits after its first span for others to join it.
|
|
13
13
|
*
|
|
14
|
-
* The ready flush goes out before a delivery request settles, and a session
|
|
14
|
+
* The ready flush goes out before a delivery API request settles, and a session
|
|
15
15
|
* makes far fewer requests than {@link MAX_BUFFERED_SPANS} — so this timer is
|
|
16
16
|
* what sends a delivery span while the session is still running, leaving the
|
|
17
17
|
* page-hidden flush as the backstop for whatever the last few seconds hold.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../../src/plugins/telemetry/plugin.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAA;AAK1D,qDAAqD;AACrD,eAAO,MAAM,qBAAqB,cAAc,CAAA;AAEhD;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,KAAK,CAAA;AAEpC;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,OAAO,CAAA;AAElC,2CAA2C;AAC3C,MAAM,WAAW,sBAAsB;IACrC;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAwDD;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,OAAO,CAAC,EAAE,sBAAsB,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../../src/plugins/telemetry/plugin.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAA;AAK1D,qDAAqD;AACrD,eAAO,MAAM,qBAAqB,cAAc,CAAA;AAEhD;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,KAAK,CAAA;AAEpC;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,OAAO,CAAA;AAElC,2CAA2C;AAC3C,MAAM,WAAW,sBAAsB;IACrC;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAwDD;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,OAAO,CAAC,EAAE,sBAAsB,GAAG,MAAM,CAmFxE"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file The telemetry hooks one client exposes.
|
|
3
|
+
*
|
|
4
|
+
* The observer belongs to the client that registered it, so several clients on
|
|
5
|
+
* one page observe only their own traffic.
|
|
6
|
+
*/
|
|
7
|
+
import type { DeliveryAPIRequestObserver } from '../data-source/request-observer';
|
|
8
|
+
/** One client's telemetry hooks. */
|
|
9
|
+
export interface ClientTelemetry {
|
|
10
|
+
/** Registers the observer wrapped around this client's delivery API requests, or clears it. */
|
|
11
|
+
observeDeliveryAPIRequests: (next: DeliveryAPIRequestObserver | null) => void;
|
|
12
|
+
/** The observer in force, or `null` while none is registered. */
|
|
13
|
+
readonly deliveryAPIRequestObserver: DeliveryAPIRequestObserver | null;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Creates the telemetry hooks for one client.
|
|
17
|
+
*
|
|
18
|
+
* The observer is read per request, so registering one after an earlier fetch
|
|
19
|
+
* still applies to the next.
|
|
20
|
+
*
|
|
21
|
+
* @returns {ClientTelemetry} The hooks to register through and read from.
|
|
22
|
+
* @example const telemetry = createClientTelemetry()
|
|
23
|
+
*/
|
|
24
|
+
export declare function createClientTelemetry(): ClientTelemetry;
|
|
25
|
+
//# sourceMappingURL=client-telemetry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client-telemetry.d.ts","sourceRoot":"","sources":["../../../src/utils/client-telemetry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAA;AAEjF,oCAAoC;AACpC,MAAM,WAAW,eAAe;IAC9B,+FAA+F;IAC/F,0BAA0B,EAAE,CAAC,IAAI,EAAE,0BAA0B,GAAG,IAAI,KAAK,IAAI,CAAA;IAC7E,iEAAiE;IACjE,QAAQ,CAAC,0BAA0B,EAAE,0BAA0B,GAAG,IAAI,CAAA;CACvE;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,IAAI,eAAe,CAWvD"}
|
|
@@ -1,11 +1,21 @@
|
|
|
1
|
+
/** @file Min/max steps from one node to a leaf of its experience flow graph. */
|
|
1
2
|
import type { ExperienceEdge, ExperienceNode } from '../../entities/experience/experience';
|
|
3
|
+
import type { MinMaxSteps } from './node-tree-index';
|
|
2
4
|
/**
|
|
3
|
-
* Calculates the minimum and maximum number of steps from
|
|
5
|
+
* Calculates the minimum and maximum number of steps from a node to any leaf node.
|
|
4
6
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* @
|
|
8
|
-
*
|
|
7
|
+
* This tables the whole tree for a single read. A caller reading more than one node of
|
|
8
|
+
* the same tree holds a {@link createNodeTreeIndex} result and calls
|
|
9
|
+
* {@link readStepsToLeaf} instead.
|
|
10
|
+
*
|
|
11
|
+
* @param {ExperienceNode[]} nodes - Array of all nodes in the tree.
|
|
12
|
+
* @param {ExperienceEdge[]} edges - Array of all edges connecting the nodes.
|
|
13
|
+
* @param {ExperienceNode} currentNode - The starting node for traversal.
|
|
14
|
+
* @returns {MinMaxSteps} Tuple of [minSteps, maxSteps]. Returns [-1, -1] if no paths exist.
|
|
15
|
+
* @example
|
|
16
|
+
* ```typescript
|
|
17
|
+
* const [min, max] = findMinMaxStepsToLeaf(nodes, edges, currentNode)
|
|
18
|
+
* ```
|
|
9
19
|
*/
|
|
10
|
-
export declare const findMinMaxStepsToLeaf: (nodes: ExperienceNode[], edges: ExperienceEdge[], currentNode: ExperienceNode) =>
|
|
20
|
+
export declare const findMinMaxStepsToLeaf: (nodes: ExperienceNode[], edges: ExperienceEdge[], currentNode: ExperienceNode) => MinMaxSteps;
|
|
11
21
|
//# sourceMappingURL=min-max-steps-to-leaf.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"min-max-steps-to-leaf.d.ts","sourceRoot":"","sources":["../../../../src/utils/node-tree/min-max-steps-to-leaf.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAA;
|
|
1
|
+
{"version":3,"file":"min-max-steps-to-leaf.d.ts","sourceRoot":"","sources":["../../../../src/utils/node-tree/min-max-steps-to-leaf.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAA;AAC1F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAGpD;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,qBAAqB,UACzB,cAAc,EAAE,SAChB,cAAc,EAAE,eACV,cAAc,KAC1B,WAA8E,CAAA"}
|
|
@@ -1,12 +1,23 @@
|
|
|
1
|
+
/** @file Min/max steps from one node back to an origin of its experience flow graph. */
|
|
1
2
|
import type { ExperienceEdge, ExperienceNode } from '../../entities/experience/experience';
|
|
3
|
+
import type { MinMaxSteps } from './node-tree-index';
|
|
2
4
|
/**
|
|
3
|
-
* Calculates the minimum and maximum number of steps from
|
|
4
|
-
* An origin node is a node with type === 'origin'
|
|
5
|
+
* Calculates the minimum and maximum number of steps from a node back to an origin node.
|
|
6
|
+
* An origin node is a node with type === 'origin', and the first one the walk reaches
|
|
7
|
+
* ends it.
|
|
5
8
|
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* @
|
|
9
|
-
*
|
|
9
|
+
* This tables the whole tree for a single read. A caller reading more than one node of
|
|
10
|
+
* the same tree holds a {@link createNodeTreeIndex} result and calls
|
|
11
|
+
* {@link readStepsToOrigin} instead.
|
|
12
|
+
*
|
|
13
|
+
* @param {ExperienceNode[]} nodes - Array of all nodes in the tree.
|
|
14
|
+
* @param {ExperienceEdge[]} edges - Array of all edges connecting the nodes.
|
|
15
|
+
* @param {ExperienceNode} currentNode - The starting node for traversal.
|
|
16
|
+
* @returns {MinMaxSteps} Tuple of [minSteps, maxSteps]. Returns [-1, -1] if no paths exist.
|
|
17
|
+
* @example
|
|
18
|
+
* ```typescript
|
|
19
|
+
* const [min, max] = findMinMaxStepsToOrigin(nodes, edges, currentNode)
|
|
20
|
+
* ```
|
|
10
21
|
*/
|
|
11
|
-
export declare const findMinMaxStepsToOrigin: (nodes: ExperienceNode[], edges: ExperienceEdge[], currentNode: ExperienceNode) =>
|
|
22
|
+
export declare const findMinMaxStepsToOrigin: (nodes: ExperienceNode[], edges: ExperienceEdge[], currentNode: ExperienceNode) => MinMaxSteps;
|
|
12
23
|
//# sourceMappingURL=min-max-steps-to-origin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"min-max-steps-to-origin.d.ts","sourceRoot":"","sources":["../../../../src/utils/node-tree/min-max-steps-to-origin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAA;
|
|
1
|
+
{"version":3,"file":"min-max-steps-to-origin.d.ts","sourceRoot":"","sources":["../../../../src/utils/node-tree/min-max-steps-to-origin.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAA;AAC1F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAGpD;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,uBAAuB,UAC3B,cAAc,EAAE,SAChB,cAAc,EAAE,eACV,cAAc,KAC1B,WAAgF,CAAA"}
|
|
@@ -1,13 +1,37 @@
|
|
|
1
|
+
/** @file The step nodes reachable from one node without passing through another step. */
|
|
1
2
|
import type { ExperienceEdge, ExperienceNode } from '../../entities/experience/experience';
|
|
3
|
+
import type { NodeAdjacency } from './node-adjacency';
|
|
2
4
|
/**
|
|
3
|
-
* Given the current
|
|
4
|
-
*
|
|
5
|
+
* Given the current node as the starting point, traverses every branch of an indexed
|
|
6
|
+
* tree until encountering nodes with stepId properties.
|
|
5
7
|
* Does not progress past a node with a stepId.
|
|
6
8
|
*
|
|
7
|
-
* @param
|
|
8
|
-
* @param
|
|
9
|
-
* @
|
|
10
|
-
* @
|
|
9
|
+
* @param {NodeAdjacency} adjacency - The indexed tree.
|
|
10
|
+
* @param {ExperienceNode} currentNode - The starting node for traversal.
|
|
11
|
+
* @returns {ExperienceNode[]} Array of step nodes that are descendants of the current node.
|
|
12
|
+
* @example
|
|
13
|
+
* ```typescript
|
|
14
|
+
* const steps = nextReachableStepNodesFrom(adjacency, currentNode)
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
export declare const nextReachableStepNodesFrom: (adjacency: NodeAdjacency, currentNode: ExperienceNode) => ExperienceNode[];
|
|
18
|
+
/**
|
|
19
|
+
* Given the current node as the starting point, traverses every branch of the tree
|
|
20
|
+
* until encountering nodes with stepId properties.
|
|
21
|
+
* Does not progress past a node with a stepId.
|
|
22
|
+
*
|
|
23
|
+
* This indexes the whole tree for a single walk. A caller walking the same tree more
|
|
24
|
+
* than once holds a {@link createNodeAdjacency} result and calls
|
|
25
|
+
* {@link nextReachableStepNodesFrom} instead.
|
|
26
|
+
*
|
|
27
|
+
* @param {ExperienceNode[]} nodes - Array of all nodes in the tree.
|
|
28
|
+
* @param {ExperienceEdge[]} edges - Array of all edges connecting the nodes.
|
|
29
|
+
* @param {ExperienceNode} currentNode - The starting node for traversal.
|
|
30
|
+
* @returns {ExperienceNode[]} Array of nodes with stepId properties that are descendants of the current node.
|
|
31
|
+
* @example
|
|
32
|
+
* ```typescript
|
|
33
|
+
* const steps = nextReachableStepNodes(nodes, edges, currentNode)
|
|
34
|
+
* ```
|
|
11
35
|
*/
|
|
12
36
|
export declare const nextReachableStepNodes: (nodes: ExperienceNode[], edges: ExperienceEdge[], currentNode: ExperienceNode) => ExperienceNode[];
|
|
13
37
|
//# sourceMappingURL=next-reachable-step-nodes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"next-reachable-step-nodes.d.ts","sourceRoot":"","sources":["../../../../src/utils/node-tree/next-reachable-step-nodes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAA;
|
|
1
|
+
{"version":3,"file":"next-reachable-step-nodes.d.ts","sourceRoot":"","sources":["../../../../src/utils/node-tree/next-reachable-step-nodes.ts"],"names":[],"mappings":"AAAA,yFAAyF;AACzF,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAA;AAE1F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAuCrD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,0BAA0B,cAC1B,aAAa,eACX,cAAc,KAC1B,cAAc,EAAwE,CAAA;AAEzF;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,sBAAsB,UAC1B,cAAc,EAAE,SAChB,cAAc,EAAE,eACV,cAAc,KAC1B,cAAc,EAAgF,CAAA"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/** @file Node and edge lookups for one experience flow graph, built once per tree. */
|
|
2
|
+
import type { ExperienceEdge, ExperienceNode } from '../../entities/experience/experience';
|
|
3
|
+
/** Lookups over one flow graph: its nodes by id, and its edges by each endpoint. */
|
|
4
|
+
export interface NodeAdjacency {
|
|
5
|
+
nodeById: ReadonlyMap<string, ExperienceNode>;
|
|
6
|
+
outgoingEdges: ReadonlyMap<string, ExperienceEdge[]>;
|
|
7
|
+
incomingEdges: ReadonlyMap<string, ExperienceEdge[]>;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Indexes a flow graph so a walk can reach a node or its edges in constant time.
|
|
11
|
+
*
|
|
12
|
+
* Every edge is indexed under both endpoints, including edges naming an id the
|
|
13
|
+
* graph has no node for — a walk decides what those mean by looking the endpoint
|
|
14
|
+
* up in `nodeById`.
|
|
15
|
+
*
|
|
16
|
+
* @param {ExperienceNode[]} nodes - Every node in the tree.
|
|
17
|
+
* @param {ExperienceEdge[]} edges - Every edge in the tree.
|
|
18
|
+
* @returns {NodeAdjacency} The lookups over that tree.
|
|
19
|
+
* @example
|
|
20
|
+
* ```typescript
|
|
21
|
+
* const adjacency = createNodeAdjacency(nodes, edges)
|
|
22
|
+
* const node = adjacency.nodeById.get('node-1')
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
export declare const createNodeAdjacency: (nodes: ExperienceNode[], edges: ExperienceEdge[]) => NodeAdjacency;
|
|
26
|
+
/**
|
|
27
|
+
* Reads the edges leaving a node id.
|
|
28
|
+
*
|
|
29
|
+
* @param {NodeAdjacency} adjacency - The indexed tree.
|
|
30
|
+
* @param {string} nodeId - The id to read.
|
|
31
|
+
* @returns {readonly ExperienceEdge[]} The edges whose source is that id.
|
|
32
|
+
* @example
|
|
33
|
+
* ```typescript
|
|
34
|
+
* const edges = outgoingEdgesOf(adjacency, 'node-1')
|
|
35
|
+
* ```
|
|
36
|
+
*/
|
|
37
|
+
export declare const outgoingEdgesOf: (adjacency: NodeAdjacency, nodeId: string) => readonly ExperienceEdge[];
|
|
38
|
+
/**
|
|
39
|
+
* Reads the edges arriving at a node id.
|
|
40
|
+
*
|
|
41
|
+
* @param {NodeAdjacency} adjacency - The indexed tree.
|
|
42
|
+
* @param {string} nodeId - The id to read.
|
|
43
|
+
* @returns {readonly ExperienceEdge[]} The edges whose destination is that id.
|
|
44
|
+
* @example
|
|
45
|
+
* ```typescript
|
|
46
|
+
* const edges = incomingEdgesOf(adjacency, 'node-1')
|
|
47
|
+
* ```
|
|
48
|
+
*/
|
|
49
|
+
export declare const incomingEdgesOf: (adjacency: NodeAdjacency, nodeId: string) => readonly ExperienceEdge[];
|
|
50
|
+
//# sourceMappingURL=node-adjacency.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node-adjacency.d.ts","sourceRoot":"","sources":["../../../../src/utils/node-tree/node-adjacency.ts"],"names":[],"mappings":"AAAA,sFAAsF;AACtF,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAA;AAI1F,oFAAoF;AACpF,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;IAC7C,aAAa,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,CAAA;IACpD,aAAa,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,CAAA;CACrD;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,mBAAmB,UACvB,cAAc,EAAE,SAChB,cAAc,EAAE,KACtB,aAyBF,CAAA;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,eAAe,cACf,aAAa,UAChB,MAAM,KACb,SAAS,cAAc,EAAqD,CAAA;AAE/E;;;;;;;;;;GAUG;AACH,eAAO,MAAM,eAAe,cACf,aAAa,UAChB,MAAM,KACb,SAAS,cAAc,EAAqD,CAAA"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/** @file Per-tree tables of the min and max steps from every node to a leaf and back to an origin. */
|
|
2
|
+
import type { ExperienceEdge, ExperienceNode } from '../../entities/experience/experience';
|
|
3
|
+
import type { NodeAdjacency } from './node-adjacency';
|
|
4
|
+
/** Fewest and most steps between a node and a terminus, `[-1, -1]` when none is reachable. */
|
|
5
|
+
export type MinMaxSteps = [number, number];
|
|
6
|
+
/** Min/max step distances for every node of one tree, keyed by node id. */
|
|
7
|
+
export interface MinMaxStepTables {
|
|
8
|
+
stepsToLeaf: ReadonlyMap<string, MinMaxSteps>;
|
|
9
|
+
stepsToOrigin: ReadonlyMap<string, MinMaxSteps>;
|
|
10
|
+
/** Node visits spent building the tables. Grows linearly with the node count. */
|
|
11
|
+
nodeVisits: number;
|
|
12
|
+
}
|
|
13
|
+
/** One flow graph's adjacency lookups alongside its min/max step tables. */
|
|
14
|
+
export type NodeTreeIndex = NodeAdjacency & MinMaxStepTables;
|
|
15
|
+
/**
|
|
16
|
+
* Indexes a flow graph and tables, for every node in it, the fewest and most steps to
|
|
17
|
+
* a leaf and back to an origin.
|
|
18
|
+
*
|
|
19
|
+
* The whole table costs one pass over the tree, so a caller holding it reads any node's
|
|
20
|
+
* pair with a map lookup. Build it once per tree and read it per node change.
|
|
21
|
+
*
|
|
22
|
+
* @param {ExperienceNode[]} nodes - Every node in the tree.
|
|
23
|
+
* @param {ExperienceEdge[]} edges - Every edge in the tree.
|
|
24
|
+
* @returns {NodeTreeIndex} The adjacency lookups and the step tables.
|
|
25
|
+
* @example
|
|
26
|
+
* ```typescript
|
|
27
|
+
* const tree = createNodeTreeIndex(nodes, edges)
|
|
28
|
+
* const [min, max] = readStepsToLeaf(tree, currentNode)
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
31
|
+
export declare const createNodeTreeIndex: (nodes: ExperienceNode[], edges: ExperienceEdge[]) => NodeTreeIndex;
|
|
32
|
+
/**
|
|
33
|
+
* Reads the fewest and most steps from a node to a leaf.
|
|
34
|
+
*
|
|
35
|
+
* @param {NodeTreeIndex} tree - The indexed tree.
|
|
36
|
+
* @param {ExperienceNode} node - The node to read.
|
|
37
|
+
* @returns {MinMaxSteps} The pair, `[-1, -1]` when no leaf is reachable.
|
|
38
|
+
* @example
|
|
39
|
+
* ```typescript
|
|
40
|
+
* const [min, max] = readStepsToLeaf(tree, currentNode)
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
export declare const readStepsToLeaf: (tree: NodeTreeIndex, node: ExperienceNode) => MinMaxSteps;
|
|
44
|
+
/**
|
|
45
|
+
* Reads the fewest and most steps from a node back to an origin, where the first origin
|
|
46
|
+
* the walk reaches ends it.
|
|
47
|
+
*
|
|
48
|
+
* @param {NodeTreeIndex} tree - The indexed tree.
|
|
49
|
+
* @param {ExperienceNode} node - The node to read.
|
|
50
|
+
* @returns {MinMaxSteps} The pair, `[-1, -1]` when no origin is reachable.
|
|
51
|
+
* @example
|
|
52
|
+
* ```typescript
|
|
53
|
+
* const [min, max] = readStepsToOrigin(tree, currentNode)
|
|
54
|
+
* ```
|
|
55
|
+
*/
|
|
56
|
+
export declare const readStepsToOrigin: (tree: NodeTreeIndex, node: ExperienceNode) => MinMaxSteps;
|
|
57
|
+
//# sourceMappingURL=node-tree-index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node-tree-index.d.ts","sourceRoot":"","sources":["../../../../src/utils/node-tree/node-tree-index.ts"],"names":[],"mappings":"AAAA,sGAAsG;AACtG,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAA;AAC1F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAGrD,8FAA8F;AAC9F,MAAM,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAE1C,2EAA2E;AAC3E,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IAC7C,aAAa,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IAC/C,iFAAiF;IACjF,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,4EAA4E;AAC5E,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,gBAAgB,CAAA;AAsd5D;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,mBAAmB,UACvB,cAAc,EAAE,SAChB,cAAc,EAAE,KACtB,aAuBF,CAAA;AAkCD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,eAAe,SAAU,aAAa,QAAQ,cAAc,KAAG,WAQ3E,CAAA;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,iBAAiB,SAAU,aAAa,QAAQ,cAAc,KAAG,WAO7E,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require("./logger-CSTvAyyB.cjs"),t=require("./storage-DUw9UJ2h.cjs");let n=require("effector"),r=require("@withease/factories");var i=(0,n.createDomain)(`feature`);function a(e){return e?.enabled===!1}function o(e){return e===`true`||e!==`false`&&e}function s(e){let t=e.indexOf(`:`);if(t<=0)return null;let n=e.substring(0,t),r=e.substring(t+1);return r.length===0?null:{id:n,bucket:o(r)}}var c=(0,r.createFactory)(({client:r})=>{let s=i.store({}),c=i.store([]),l=(0,n.createApi)(s,{register(e,t){return{...e,[t.id]:t.feature}}}),u=(0,n.createEvent)();(0,n.sample)({clock:u,source:s,filter:(e,{id:t})=>e[t]!==void 0,fn:(e,{id:t})=>`Feature '${t}' already registered. Registering again will override the previous registration.`}).watch(t=>e.t(`warn`,t)),(0,n.sample)({clock:u,fn:({id:e,feature:t})=>Object.freeze({id:e,feature:{id:e,feature:{...t,id:e}}}),target:l.register});let d=(0,n.createEffect)(async({id:e,key:n,storage:r=`local`,enabled:i})=>{if(i===!1)return null;let a=t.t(`feature:${e}:${n}`,`global`),s=(r===`session`?t.r:t.n).get(a).text();return s?{id:e,key:n,bucket:o(s),storage:r}:null}),f=(0,n.createEffect)(e=>{if(!e)return null;let n=t.t(`feature:${e.id}:${e.key}`,`global`);(e.storage===`session`?t.r:t.n).set(n,e.bucket)}),p=new Map,m=(0,n.attach)({source:{allFeaturesStore:s,resolvedFeaturesStore:c},effect:async({allFeaturesStore:e,resolvedFeaturesStore:t},{id:n,decide:r,key:i})=>{let o=t.find(e=>e.id===n&&e.key===i);if(o)return o;let s=e[n];if(!s)throw Error(`Feature with id '${n}' not found`);if(a(s.feature))return{id:s.id,bucket:!1,key:i,storage:s.feature.storage};let c=p.get(`${n}:${i}`);if(c!==void 0){let e=await c;return{id:s.id,bucket:e,key:i,storage:s.feature.storage}}let l=r();p.set(`${n}:${i}`,l);let u=await l;return{id:s.id,bucket:u,key:i,storage:s.feature.storage}}});(0,n.sample)({clock:l.register,fn:e=>{let{id:t,feature:n}=e;return{id:t,key:n.feature.key,storage:n.feature.storage,enabled:n.feature.enabled}},target:d}),(0,n.sample)({source:s,clock:m.doneData,filter:(e,t)=>!a(e[t.id]?.feature),fn:(e,t)=>{let{id:n,bucket:r,storage:i}=t,a=e[n]?.feature.key;return a?{key:a,id:n,bucket:r,storage:i}:null},target:f});let h=(0,n.combine)({allFeaturesStore:s,resolvedFeaturesStore:c}).map(({allFeaturesStore:e,resolvedFeaturesStore:t})=>Object.values(e).map(e=>{let n=t.find(t=>t.id===e.id&&t.key===e.feature.key);return n?{id:e.id,name:e.feature.name,key:e.feature.key,enabled:e.feature.enabled,weight:e.feature.weight,valueType:e.feature.valueType,variants:e.feature.variants,getBucket:()=>({id:e.id,bucket:n.bucket}),isResolved:!0}:{id:e.id,name:e.feature.name,key:e.feature.key,enabled:e.feature.enabled,weight:e.feature.weight,valueType:e.feature.valueType,variants:e.feature.variants,getBucket:async()=>await m(e.feature),isResolved:!1}}));(0,n.sample)({clock:m.doneData,source:{resolvedFeatures:c,allFeatures:s},filter:({resolvedFeatures:e,allFeatures:t},{id:n,key:r})=>!a(t[n]?.feature)&&!e.some(e=>e.id===n&&e.key===r),fn:(e,t)=>t,target:r.eventBus.prepend(e=>({type:`feature_decide`,feature:e}))}),(0,n.sample)({clock:[d.doneData,m.doneData],source:{resolvedFeatures:c,allFeatures:s},fn:({resolvedFeatures:e,allFeatures:t},n)=>!n||a(t[n.id]?.feature)||e.some(e=>e.id===n.id&&e.key===n.key)?e:[...e,n],target:c});function g(e){return h.map(t=>t.find(t=>t.id===e))}let _=new Map,v=new Map,y=new Map;function b(e){let t=_.get(e);if(t)return t;let n=g(e);return _.set(e,n),n}function x(e){return s.map(t=>t[e],{skipVoid:!1})}function S(e){let t=(0,n.createStore)(async()=>void 0,{skipVoid:!1}),r=b(e),i=(0,n.attach)({source:r,effect:async e=>{if(e)return async()=>(await e.getBucket()).bucket}});return(0,n.sample)({clock:r,target:i}),(0,n.sample)({clock:i.doneData,filter:e=>e!==void 0,target:t}),i(),t}function C(e){let t=v.get(e);if(t)return t;let n=S(e);return v.set(e,n),n}function w(e){let t=C(e),r=(0,n.createStore)(void 0,{skipVoid:!1}),i=(0,n.attach)({source:t,mapParams:(e,t)=>t,effect:(0,n.createEffect)(async e=>await e())});return(0,n.sample)({clock:i.doneData,fn:t=>{if(t!==void 0)return{id:e,bucket:t}},target:r}),(0,n.sample)({clock:t,target:i}),i(),r}function T(e){let t=y.get(e);if(t)return t;let n=w(e);return y.set(e,n),n}return{register:u,getById:b,getByName:x,listStore:h,getEvokableFeature:C,getFeatureResult:T}});function l(e){return(0,r.invoke)(c,e)}var u=(e,t,n)=>{n.register({id:e,feature:t})},d=()=>`0.0.1-dev.
|
|
1
|
+
const e=require("./logger-CSTvAyyB.cjs"),t=require("./storage-DUw9UJ2h.cjs");let n=require("effector"),r=require("@withease/factories");var i=(0,n.createDomain)(`feature`);function a(e){return e?.enabled===!1}function o(e){return e===`true`||e!==`false`&&e}function s(e){let t=e.indexOf(`:`);if(t<=0)return null;let n=e.substring(0,t),r=e.substring(t+1);return r.length===0?null:{id:n,bucket:o(r)}}var c=(0,r.createFactory)(({client:r})=>{let s=i.store({}),c=i.store([]),l=(0,n.createApi)(s,{register(e,t){return{...e,[t.id]:t.feature}}}),u=(0,n.createEvent)();(0,n.sample)({clock:u,source:s,filter:(e,{id:t})=>e[t]!==void 0,fn:(e,{id:t})=>`Feature '${t}' already registered. Registering again will override the previous registration.`}).watch(t=>e.t(`warn`,t)),(0,n.sample)({clock:u,fn:({id:e,feature:t})=>Object.freeze({id:e,feature:{id:e,feature:{...t,id:e}}}),target:l.register});let d=(0,n.createEffect)(async({id:e,key:n,storage:r=`local`,enabled:i})=>{if(i===!1)return null;let a=t.t(`feature:${e}:${n}`,`global`),s=(r===`session`?t.r:t.n).get(a).text();return s?{id:e,key:n,bucket:o(s),storage:r}:null}),f=(0,n.createEffect)(e=>{if(!e)return null;let n=t.t(`feature:${e.id}:${e.key}`,`global`);(e.storage===`session`?t.r:t.n).set(n,e.bucket)}),p=new Map,m=(0,n.attach)({source:{allFeaturesStore:s,resolvedFeaturesStore:c},effect:async({allFeaturesStore:e,resolvedFeaturesStore:t},{id:n,decide:r,key:i})=>{let o=t.find(e=>e.id===n&&e.key===i);if(o)return o;let s=e[n];if(!s)throw Error(`Feature with id '${n}' not found`);if(a(s.feature))return{id:s.id,bucket:!1,key:i,storage:s.feature.storage};let c=p.get(`${n}:${i}`);if(c!==void 0){let e=await c;return{id:s.id,bucket:e,key:i,storage:s.feature.storage}}let l=r();p.set(`${n}:${i}`,l);let u=await l;return{id:s.id,bucket:u,key:i,storage:s.feature.storage}}});(0,n.sample)({clock:l.register,fn:e=>{let{id:t,feature:n}=e;return{id:t,key:n.feature.key,storage:n.feature.storage,enabled:n.feature.enabled}},target:d}),(0,n.sample)({source:s,clock:m.doneData,filter:(e,t)=>!a(e[t.id]?.feature),fn:(e,t)=>{let{id:n,bucket:r,storage:i}=t,a=e[n]?.feature.key;return a?{key:a,id:n,bucket:r,storage:i}:null},target:f});let h=(0,n.combine)({allFeaturesStore:s,resolvedFeaturesStore:c}).map(({allFeaturesStore:e,resolvedFeaturesStore:t})=>Object.values(e).map(e=>{let n=t.find(t=>t.id===e.id&&t.key===e.feature.key);return n?{id:e.id,name:e.feature.name,key:e.feature.key,enabled:e.feature.enabled,weight:e.feature.weight,valueType:e.feature.valueType,variants:e.feature.variants,getBucket:()=>({id:e.id,bucket:n.bucket}),isResolved:!0}:{id:e.id,name:e.feature.name,key:e.feature.key,enabled:e.feature.enabled,weight:e.feature.weight,valueType:e.feature.valueType,variants:e.feature.variants,getBucket:async()=>await m(e.feature),isResolved:!1}}));(0,n.sample)({clock:m.doneData,source:{resolvedFeatures:c,allFeatures:s},filter:({resolvedFeatures:e,allFeatures:t},{id:n,key:r})=>!a(t[n]?.feature)&&!e.some(e=>e.id===n&&e.key===r),fn:(e,t)=>t,target:r.eventBus.prepend(e=>({type:`feature_decide`,feature:e}))}),(0,n.sample)({clock:[d.doneData,m.doneData],source:{resolvedFeatures:c,allFeatures:s},fn:({resolvedFeatures:e,allFeatures:t},n)=>!n||a(t[n.id]?.feature)||e.some(e=>e.id===n.id&&e.key===n.key)?e:[...e,n],target:c});function g(e){return h.map(t=>t.find(t=>t.id===e),{skipVoid:!1})}let _=new Map,v=new Map,y=new Map;function b(e){let t=_.get(e);if(t)return t;let n=g(e);return _.set(e,n),n}function x(e){return s.map(t=>t[e],{skipVoid:!1})}function S(e){let t=(0,n.createStore)(async()=>void 0,{skipVoid:!1}),r=b(e),i=(0,n.attach)({source:r,effect:async e=>{if(e)return async()=>(await e.getBucket()).bucket}});return(0,n.sample)({clock:r,target:i}),(0,n.sample)({clock:i.doneData,filter:e=>e!==void 0,target:t}),i(),t}function C(e){let t=v.get(e);if(t)return t;let n=S(e);return v.set(e,n),n}function w(e){let t=C(e),r=(0,n.createStore)(void 0,{skipVoid:!1}),i=(0,n.attach)({source:t,mapParams:(e,t)=>t,effect:(0,n.createEffect)(async e=>await e())});return(0,n.sample)({clock:i.doneData,fn:t=>{if(t!==void 0)return{id:e,bucket:t}},target:r}),(0,n.sample)({clock:t,target:i}),i(),r}function T(e){let t=y.get(e);if(t)return t;let n=w(e);return y.set(e,n),n}return{register:u,getById:b,getByName:x,listStore:h,getEvokableFeature:C,getFeatureResult:T}});function l(e){return(0,r.invoke)(c,e)}var u=(e,t,n)=>{n.register({id:e,feature:t})},d=()=>`0.0.1-dev.1789541668638`;Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return d}});
|
|
@@ -174,7 +174,7 @@ var v = f(({ client: s }) => {
|
|
|
174
174
|
target: p
|
|
175
175
|
});
|
|
176
176
|
function w(e) {
|
|
177
|
-
return C.map((t) => t.find((t) => t.id === e));
|
|
177
|
+
return C.map((t) => t.find((t) => t.id === e), { skipVoid: !1 });
|
|
178
178
|
}
|
|
179
179
|
let T = /* @__PURE__ */ new Map(), E = /* @__PURE__ */ new Map(), D = /* @__PURE__ */ new Map();
|
|
180
180
|
function O(e) {
|
|
@@ -251,6 +251,6 @@ var b = (e, t, n) => {
|
|
|
251
251
|
id: e,
|
|
252
252
|
feature: t
|
|
253
253
|
});
|
|
254
|
-
}, x = () => "0.0.1-dev.
|
|
254
|
+
}, x = () => "0.0.1-dev.1789541668638";
|
|
255
255
|
//#endregion
|
|
256
256
|
export { b as i, y as n, _ as r, x as t };
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@picked/client",
|
|
3
|
-
"version": "0.0.1-dev.
|
|
3
|
+
"version": "0.0.1-dev.1789541668638",
|
|
4
4
|
"dependencies": {
|
|
5
|
-
"@picked/delivery-api-client": "0.0.1-dev.
|
|
5
|
+
"@picked/delivery-api-client": "0.0.1-dev.1789541668638",
|
|
6
6
|
"@withease/factories": "^1.0.5",
|
|
7
|
-
"@picked/telemetry": "0.0.1-dev.
|
|
7
|
+
"@picked/telemetry": "0.0.1-dev.1789541668638"
|
|
8
8
|
},
|
|
9
9
|
"devDependencies": {
|
|
10
10
|
"@repo/eslint-config": "workspace:*",
|
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
"@rollup/plugin-replace": "^6.0.3",
|
|
13
13
|
"@size-limit/preset-small-lib": "^12.1.0",
|
|
14
14
|
"@testing-library/dom": "^10.4.1",
|
|
15
|
-
"@vitest/browser": "^4.1.
|
|
16
|
-
"@vitest/coverage-v8": "^4.1.
|
|
15
|
+
"@vitest/browser": "^4.1.11",
|
|
16
|
+
"@vitest/coverage-v8": "^4.1.11",
|
|
17
17
|
"effector": "^23.4.4",
|
|
18
18
|
"happy-dom": "^20.11.1",
|
|
19
19
|
"size-limit": "^12.1.0",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
const e=require("./rules-logic-CGZIYgAI.cjs");require("./logger-CSTvAyyB.cjs");const t=require("./dom-DlLH3FxV.cjs");let n=require("effector"),r=require("@withease/factories");function i(e){return e.type===`condition`}function a(e){return e.type===`step`}function o(e){return e.type===`experience`}function s(e){return e.type===`origin`}function c(e){return e.type===`action`}var l=`conditions.`,u=(0,n.createDomain)(`condition-results`);function d(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function f(e){if(e===void 0)return null;if(Array.isArray(e))return e.map(e=>f(e));if(d(e)){let t=Object.keys(e).sort((e,t)=>e.localeCompare(t)),n={};for(let r of t)n[r]=f(e[r]);return n}return e}function p(e){return JSON.stringify(f(e))}var m=(0,r.createFactory)(()=>{let e=u.store({}),t=(0,n.createApi)(e,{set(e,t){return e[t.hash]===t.result?e:{...e,[t.hash]:t.result}},seed(e,t){return Object.keys(t).every(n=>e[n]===t[n])?e:{...e,...t}},clear(){return{}}});function r(e){t.set(e)}function i(e){t.seed(e)}function a(){t.clear()}function o(t){return e.getState()[t]}return{store:e,set:r,seed:i,peek:o,reset:a}});function h(){return(0,r.invoke)(m)}async function g(t,n,r){return n==null?!0:typeof n==`boolean`?n:!e.n(n)||await e.t(t,n,r)===!0}function _(e){if(typeof e==`string`)return e;if(Array.isArray(e)&&typeof e[0]==`string`)return e[0]}function v(e){if(Array.isArray(e))return e.some(v);if(d(e)){let t=_(e.var);return t!==void 0&&(t===`actions`||t.startsWith(`actions.`))?!0:Object.values(e).some(v)}return!1}function y(e){if(Array.isArray(e))return e.flatMap(y);if(d(e)){let t=_(e.var);return[...t!==void 0&&t.startsWith(l)?[t.slice(11)]:[],...Object.values(e).flatMap(y)]}return[]}function b(e,t,n=new Set){if(v(e))return!0;for(let r of y(e)){if(n.has(r))continue;n.add(r);let e=t[r];if(e!==void 0&&b(e.logic,t,n))return!0}return!1}async function x(e,t,n){let r={};for(let t of e.conditions.listStore.getState())r[t.key]=t;let i=b(t,r),a=p(t);if(!i){let t=e.conditionResults.peek(a);if(t!==void 0)return t}let o=await g(e,t,n?.context);return i||e.conditionResults.set({hash:a,result:o}),o}async function S(e,t,n){let r=n?.context,i=[n?.precondition,n?.condition,t.condition];for(let t of i)if(!await x(e,t,{context:r}))return!1;return!0}var C=(e,t,n,r,i=new Set)=>i.has(n.id)?[]:(i.add(n.id),a(n)&&!r?[n]:t.filter(e=>e.sourceNodeId===n.id).flatMap(n=>{let r=e.find(e=>e.id===n.destinationNodeId);return r?C(e,t,r,!1,i):[]})),w=(e,t,n)=>C(e,t,n,!0,new Set),T=(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]=T(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]},E=(e,t,n)=>T(e,t,n,!0,new Set),D=(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]=D(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]},ee=(e,t,n)=>D(e,t,n,new Set),O=e=>e.find(e=>e.type===`origin`)||null,k=(e,t,n)=>{if(!e)return O(t);let r=n.find(t=>t.sourceNodeId===e.id);return r&&t.find(e=>e.id===r.destinationNodeId)||null};async function A(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)}function j(e,t,n,r){let i=r.filter(e=>e.sourceNodeId===t),a=e?`true`:`false`,o=i.find(e=>e.sourceHandle===a)??i.find(e=>e.sourceHandle==null);return n.find(e=>e.id===o?.destinationNodeId)}var M=(0,n.createDomain)(`experience-instance`),N=(0,r.createFactory)(({client:r,experience:l,target:u,options:d})=>{let f=(0,n.createEvent)(),p=(0,n.createEvent)(),m=(0,n.createEvent)(),h=(0,n.createEvent)(),g=(0,n.createEvent)(),_=(0,n.createEvent)(),v=(0,n.createEvent)(),y=l.componentStore,b=M.store(`transitioning`),x=r.history.entriesStore.map(e=>e.filter(e=>e.experienceId===l.id)),S=x.map(e=>e.filter(e=>a(e.node))),C=x.map(e=>e.at(-1)?.node||null),T=M.store(null);(0,n.sample)({clock:[C,r.steps.listStore,_],source:{steps:r.steps.listStore,node:C},filter:({node:e})=>e!==null&&a(e),fn:({steps:e,node:t})=>t&&a(t)?e.find(e=>e.id===t.stepId)??null:null,target:T});let D=(0,n.combine)(r.steps.listStore,S,(e,t)=>{let n=t.at(-2);if(!n||!a(n.node))return null;let r=n.node;return e.find(e=>e.id===r.stepId)||null}),N=(0,n.combine)(l.treeStore,C,({nodes:e,edges:t},n)=>n?w(e,t,n):[]),P=(0,n.combine)(l.treeStore,C,({nodes:e,edges:t},n)=>n?ee(e,t,n):[-1,-1]),F=(0,n.combine)(l.treeStore,C,({nodes:e,edges:t},n)=>n?E(e,t,n):[-1,-1]),I=M.store(!1),L=(0,n.createApi)(I,{open:()=>!0,close:()=>!1,toggle:e=>!e,set:(e,t)=>t}),R=(0,n.createEffect)(async()=>{r.history.back({experienceId:l.id})}),z=(0,n.attach)({source:l.treeStore,effect:async(e,t)=>{let n=e.nodes.find(e=>a(e)&&e.stepId===t);n&&r.history.push({experienceId:l.id,node:n})}}),B=(0,n.attach)({source:l.treeStore,effect:async(e,t)=>{let n=e.steps.find(e=>e.key===t);if(!n)return;let i=e.nodes.find(e=>a(e)&&e.stepId===n.id);i&&r.history.push({experienceId:l.id,node:i})}}),V=(0,n.attach)({source:C,effect:e=>{}}),H=(0,n.attach)({source:l.treeStore,effect:async({nodes:e})=>O(e)}),U=(0,n.attach)({source:l.treeStore,effect:async({nodes:e,edges:t},n)=>{if(s(n))return k(n,e,t)}}),W=(0,n.attach)({source:l.treeStore,effect:async({nodes:t,edges:n,conditions:a},o)=>{if(!i(o))return;let s=a.find(e=>e.id===o.conditionId)?.logic;return s?A(!!await e.t(r,s),o.id,t,n):void 0}}),G=(0,n.attach)({source:{tree:l.treeStore,actions:r.actions.listStore,snapshot:r.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(typeof s!=`function`)return`${o}`,j(!1,r.id,i,a)??null;let l=!0;try{`${o}`,await s({...n,args:[]},{experience:Z})}catch{`${o}`,l=!1}let u=j(l,r.id,i,a);if(!u){let e=a.some(e=>e.sourceNodeId===r.id)?`no edge for its outcome`:`no outgoing edge`;return`${r.id}${e}`,null}return`${o}${u.id}`,u}}),K=(0,n.createEffect)(e=>{o(e)&&r.experiences.launch({key:e.experienceKey})}),q=(0,n.attach)({source:[C,l.treeStore],effect:async([e,{nodes:t,edges:n}])=>k(e,t,n)}),J=(0,n.attach)({source:[C,l.treeStore],effect:async([e,{nodes:t,edges:n}])=>k(e,t,n)}),te=(0,n.createEffect)(e=>{r.history.push({experienceId:l.id,node:e})}),Y=(0,n.attach)({source:l.configStore,effect:async({initializeOpenLogic:t})=>d?.initialiseOpen===void 0?e.n(t)?!!await e.t(r,t):t??!1:d.initialiseOpen}),X=(0,n.combine)(y,r.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}),Z,ne=(0,n.attach)({source:X,effect:e=>{if(!e)return;if(!u){`${l.id}`;return}let n=t.n(u);try{e.framework.render(n,e.component.component,r,Z)}catch{}}});Z=Object.freeze({id:Math.random().toString(36).substring(7),experienceKey:l.key,experienceId:l.id,experienceName:l.name,configStore:l.configStore,target:u,componentStore:y,componentAndFrameworkStore:X,stateStore:b,isOpenStore:I,open:L.open,close:L.close,toggleOpen:L.toggle,setOpen:L.set,treeStore:l.treeStore,currentNodeStore:C,currentStepStore:T,previousStepStore:D,nextReachableStepNodesStore:N,stepsToOriginStore:P,stepsToLeafStore:F,goToNextStep:p,goToPreviousStep:m,goToStepById:h,goToStepByKey:g,stepsHistoryStore:S,mountFx:ne});let Q=(0,n.createEvent)(),$=(0,n.createEvent)();return(0,n.sample)({clock:C,target:Q}),(0,n.sample)({clock:Q,filter:e=>e===null,target:H}),(0,n.sample)({clock:Q,filter:e=>e!==null,target:$}),(0,n.split)({source:$,match:e=>i(e)?`condition`:a(e)?`step`:o(e)?`launchExperience`:s(e)?`origin`:c(e)?`action`:`other`,cases:{origin:U,condition:W,step:V,launchExperience:K,action:G,__:(0,n.createEvent)()}}),(0,n.sample)({clock:[W.doneData,U.doneData,H.doneData,J.doneData,q.doneData,G.doneData],filter:Boolean,target:te}),(0,n.sample)({clock:p,target:J}),(0,n.sample)({clock:p,source:T,filter:Boolean,target:r.eventBus.prepend(e=>({type:`step_submit`,step:e,experience:Z}))}),(0,n.sample)({clock:J.done,source:T,filter:Boolean,target:r.eventBus.prepend(e=>({type:`step_submit_success`,step:e,experience:Z}))}),(0,n.sample)({clock:J.fail,source:T,filter:Boolean,target:r.eventBus.prepend(e=>({type:`step_submit_error`,step:e,experience:Z}))}),(0,n.sample)({clock:m,target:R}),(0,n.sample)({clock:h,target:z}),(0,n.sample)({clock:g,target:B}),(0,n.sample)({source:(0,n.combine)([W.pending,U.pending,H.pending,J.pending,q.pending,G.pending]),fn:e=>e.some(Boolean)?`transitioning`:`ready`,target:b}),(0,n.sample)({clock:V.doneData,source:T,filter:Boolean,target:r.eventBus.prepend(e=>({type:`step_enter`,step:e,experience:Z}))}),(0,n.sample)({clock:v,target:Y}),(0,n.sample)({source:Y.doneData,fn:Boolean,target:I}),(0,n.sample)({source:C,clock:f,filter:e=>!e||s(e),target:q}),(0,n.sample)({source:I,filter:Boolean,target:f}),(0,n.sample)({source:I,filter:Boolean,target:r.eventBus.prepend(()=>({type:`experience_open`,experience:Z}))}),(0,n.sample)({source:I,filter:e=>!e,target:r.eventBus.prepend(()=>({type:`experience_close`,experience:Z}))}),(0,n.sample)({clock:_,target:[v]}),_(),Z});function P(e){return(0,r.invoke)(N,e)}var F=(0,r.createFactory)(({client:e})=>{let r=M.store({}),i=(0,n.createEvent)(),a=(0,n.createEvent)(),o=(0,n.createEvent)(),s=(0,n.createApi)(r,{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??[]}}}),c=(0,n.createEffect)(({experience:t,target:n,options:r})=>P({client:e,experience:t,target:n,options:r})),l=(0,n.createEffect)(e=>{s.register(e)}),u=(0,n.createEffect)(e=>{e.target&&t.o(e.target,()=>{o(e)})}),d=(0,n.createEffect)(e=>{s.unregister(e)}),f=(0,n.createEffect)(async e=>{await e.mountFx()});(0,n.sample)({clock:i,target:c}),(0,n.sample)({clock:o,target:d}),(0,n.sample)({clock:c.doneData,target:[l,u,a]}),(0,n.sample)({clock:c.doneData,target:e.eventBus.prepend(e=>({type:`experience_initialize`,experience:e}))}),(0,n.sample)({clock:a,target:f});function p(e,t,n){i({experience:e,target:t,options:n})}let m=r.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 r.map(t=>t[e]||[],{skipVoid:!1})}return{spawn:p,getByExperienceKey:h,getByExperienceId:g,listStore:m}});function I(e){return(0,r.invoke)(F,e)}Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return b}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return x}}),Object.defineProperty(exports,"l",{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return I}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return S}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return h}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return P}}),Object.defineProperty(exports,"u",{enumerable:!0,get:function(){return a}});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
require("./logger-CSTvAyyB.cjs");const e=require("./api-9gq3GBPF.cjs"),t=require("./registry-C1t8l3t9.cjs");function n(e,t){try{return e?.onRequest(t)??{}}catch{return{}}}function r(e,t){try{e.onSettled?.(t)}catch{}}async function i(e,t,i){let a=n(e?.(),t);try{let e=await i(a.headers);return r(a,e!==null),e}catch(e){throw r(a,!1),e}}var a=`bundle`,o=`api`;async function s(){try{let e=await import(`virtual:picked/data`);return t.r(e)?e:null}catch{return null}}function c(e){if(e===void 0||t.r(e))return e}function l(n){let{apiUrl:r,projectId:l,previewToken:u,signal:d,getRequestObserver:f}=n,p=!!u,m=p?o:n.mode,h=c(p?void 0:n.bundle),g=p?void 0:n.projectConfig,_=n.getContent,v={mode:m??o,manifest:null},y,b,x=new Map;function S(){if(m===o)return Promise.resolve(null);if(h)return Promise.resolve(h);let e=t.t();return e?Promise.resolve(e):(y??=s(),y)}function C(e){v.mode=e?a:o,v.manifest=e?e.manifestMetadata:null}async function w(){if(g)return C(await S()),g;let t=await S();return C(t),t?t.projectConfig:m===a?null:i(f,`project-config`,t=>e.n(r,l,{...u!==void 0&&{previewToken:u},...d!==void 0&&{signal:d},...t!==void 0&&{headers:t}}))}async function T(t,n){let o=u===void 0?void 0:{previewToken:u};if(_)return _(t,o);let s=await S();if(C(s),s)try{return await s.experienceContent(t,o)}catch{return`${t.id}`,null}if(m===a)return null;let c=n??d;return i(f,`experience-content`,n=>e.t(r,l,t.id,{...u!==void 0&&{previewToken:u},...c!==void 0&&{signal:c},...n!==void 0&&{headers:n}}))}return{meta:v,getProjectConfig:()=>(b??=w(),b),getContent:(e,t)=>{let n=x.get(e.id);if(n)return n;let r=T(e,t?.signal).finally(()=>{x.delete(e.id)});return x.set(e.id,r),r}}}exports.createPickedDataProvider=l;
|
package/dist/types/ping.d.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { Picked } from './picked';
|
|
2
|
-
/**
|
|
3
|
-
* Pings the server to track the last time the library was loaded.
|
|
4
|
-
*
|
|
5
|
-
* @param {Picked} client - The active Picked client instance.
|
|
6
|
-
* @returns {Promise<boolean>} Whether the ping succeeded.
|
|
7
|
-
* @example
|
|
8
|
-
* await ping(client)
|
|
9
|
-
*/
|
|
10
|
-
export declare const ping: (client: Picked) => Promise<boolean>;
|
|
11
|
-
//# sourceMappingURL=ping.d.ts.map
|
package/dist/types/ping.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ping.d.ts","sourceRoot":"","sources":["../../src/ping.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAKtC;;;;;;;GAOG;AACH,eAAO,MAAM,IAAI,WAAkB,MAAM,KAAG,OAAO,CAAC,OAAO,CAoC1D,CAAA"}
|