@picked/analytics 0.0.1-dev.1763438100668 → 0.0.1-dev.1763519870626
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const h=require("@picked/client"),i=require("effector"),g=require("../../../utils-CEuhEfLT.cjs"),x="development";function m(t){if(!h.supportsWindow())return;const e=[];globalThis.dataLayer=globalThis.dataLayer??e,globalThis.dataLayer.push(t)}const
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const h=require("@picked/client"),i=require("effector"),g=require("../../../utils-CEuhEfLT.cjs"),x="development";function m(t){if(!h.supportsWindow())return;const e=[];globalThis.dataLayer=globalThis.dataLayer??e,globalThis.dataLayer.push(t)}const E=()=>sessionStorage.getItem("cvly_env"),b=(t,e)=>t.filter(r=>!!(e==null?void 0:e.fieldIds.includes(r.fieldId))),D=t=>({id:t.experienceId,title:t.configStore.getState().name}),S=t=>{if("experience"in t&&t.experience){const{experience:e}=t;return{id:e.id,title:e.configStore.getState().name}}if("experienceInstance"in t&&t.experienceInstance){const{experienceInstance:e}=t;return D(e)}},L=i.createEvent(),F=({controlFeatureName:t})=>({name:"google-analytics-plugin",setup:e=>{if(!h.supportsWindow())return;const{organizationId:r,projectId:o}=e,y=i.attach({source:{responses:e.responses.listStore,features:e.features.listStore},effect:async({responses:c,features:p},n)=>{var k;const{type:s,value:u}=n,a=S(n),d=E(),_="step"in n?b(c,n.step):void 0,v={event:"picked_event",picked_action:s,picked_app:{organizationId:r,projectId:o},picked_feature_list:g.getFeatureList(p),picked_environment:x,picked_step:"step"in n?n.step:void 0,picked_form:"form"in n?n.form:void 0,picked_exception:"exception"in n?(k=n.exception.reason)==null?void 0:k[0]:void 0,picked_experience:a,picked_responses:_,picked_cvly_env:d,picked_value:u,picked_item:void 0};return m(v)}}),I=new Set(["experience_open","experience_close","experience_initialized","initialized","step_enter","step_submit","experience_interaction"]),l=i.createStore(!1),f=i.createEvent(),P=i.attach({source:{features:e.features.listStore,decision:l},effect:async({features:c,decision:p},n)=>{if(p)return null;const s=c.find(v=>v.id===t);if(!s||!g.isFeatureResolved(s))return null;f();const{bucket:u}=s.getBucket(),a=S(n),d=E();return m({event:"picked_event",picked_action:"picked_decision",picked_app:{organizationId:r,projectId:o},picked_feature_list:void 0,picked_environment:x,picked_value:u,picked_step:void 0,picked_form:void 0,picked_experience:a,picked_responses:void 0,picked_cvly_env:d})}});i.sample({clock:L,target:e.eventBus}),i.split({source:e.eventBus,match:{isPickedDecisionEvent:c=>c.type==="feature_decide",isInEventList:c=>I.has(c.type)},cases:{isPickedDecisionEvent:P,isInEventList:y}}),i.sample({clock:f,fn:()=>!0,target:l})}});exports.googleAnalyticsPlugin=F;exports.pushToDataLayerEvent=L;
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { supportsWindow as h } from "@picked/client";
|
|
2
|
-
import { createEvent as I, attach as
|
|
3
|
-
import { s as
|
|
2
|
+
import { createEvent as I, attach as l, createStore as F, sample as g, split as P } from "effector";
|
|
3
|
+
import { s as b, t as T } from "../../../utils-Dn5X4DCB.js";
|
|
4
4
|
const m = "development";
|
|
5
5
|
function x(t) {
|
|
6
6
|
if (!h()) return;
|
|
7
7
|
const e = [];
|
|
8
8
|
globalThis.dataLayer = globalThis.dataLayer ?? e, globalThis.dataLayer.push(t);
|
|
9
9
|
}
|
|
10
|
-
const
|
|
10
|
+
const E = () => sessionStorage.getItem("cvly_env"), z = (t, e) => t.filter((s) => !!(e == null ? void 0 : e.fieldIds.includes(s.fieldId))), B = (t) => ({
|
|
11
11
|
id: t.experienceId,
|
|
12
12
|
title: t.configStore.getState().name
|
|
13
|
-
}),
|
|
13
|
+
}), S = (t) => {
|
|
14
14
|
if ("experience" in t && t.experience) {
|
|
15
15
|
const { experience: e } = t;
|
|
16
16
|
return {
|
|
@@ -20,34 +20,34 @@ const S = () => sessionStorage.getItem("cvly_env"), T = (t, e) => t.filter((r) =
|
|
|
20
20
|
}
|
|
21
21
|
if ("experienceInstance" in t && t.experienceInstance) {
|
|
22
22
|
const { experienceInstance: e } = t;
|
|
23
|
-
return
|
|
23
|
+
return B(e);
|
|
24
24
|
}
|
|
25
|
-
},
|
|
25
|
+
}, R = I(), C = ({
|
|
26
26
|
controlFeatureName: t
|
|
27
27
|
}) => ({
|
|
28
28
|
name: "google-analytics-plugin",
|
|
29
29
|
setup: (e) => {
|
|
30
30
|
if (!h())
|
|
31
31
|
return;
|
|
32
|
-
const { organizationId:
|
|
32
|
+
const { organizationId: s, projectId: r } = e, L = l({
|
|
33
33
|
source: {
|
|
34
34
|
responses: e.responses.listStore,
|
|
35
35
|
features: e.features.listStore
|
|
36
36
|
},
|
|
37
37
|
effect: async ({ responses: i, features: o }, n) => {
|
|
38
38
|
var k;
|
|
39
|
-
const { type: c, value: p } = n, d =
|
|
39
|
+
const { type: c, value: p } = n, d = S(n), u = E(), _ = "step" in n ? z(i, n.step) : void 0, a = {
|
|
40
40
|
event: "picked_event",
|
|
41
41
|
picked_action: c,
|
|
42
|
-
picked_app: { organizationId:
|
|
43
|
-
picked_feature_list:
|
|
42
|
+
picked_app: { organizationId: s, projectId: r },
|
|
43
|
+
picked_feature_list: b(o),
|
|
44
44
|
picked_environment: m,
|
|
45
45
|
picked_step: "step" in n ? n.step : void 0,
|
|
46
46
|
picked_form: "form" in n ? n.form : void 0,
|
|
47
47
|
picked_exception: "exception" in n ? (k = n.exception.reason) == null ? void 0 : k[0] : void 0,
|
|
48
48
|
// todo: support multiple exceptions
|
|
49
49
|
picked_experience: d,
|
|
50
|
-
picked_responses:
|
|
50
|
+
picked_responses: _,
|
|
51
51
|
picked_cvly_env: u,
|
|
52
52
|
picked_value: p,
|
|
53
53
|
picked_item: void 0
|
|
@@ -63,23 +63,23 @@ const S = () => sessionStorage.getItem("cvly_env"), T = (t, e) => t.filter((r) =
|
|
|
63
63
|
"step_enter",
|
|
64
64
|
"step_submit",
|
|
65
65
|
"experience_interaction"
|
|
66
|
-
]),
|
|
66
|
+
]), v = F(!1), f = I(), D = l({
|
|
67
67
|
source: {
|
|
68
68
|
features: e.features.listStore,
|
|
69
|
-
decision:
|
|
69
|
+
decision: v
|
|
70
70
|
},
|
|
71
71
|
effect: async ({ features: i, decision: o }, n) => {
|
|
72
72
|
if (o)
|
|
73
73
|
return null;
|
|
74
74
|
const c = i.find((a) => a.id === t);
|
|
75
|
-
if (!c || !
|
|
75
|
+
if (!c || !T(c))
|
|
76
76
|
return null;
|
|
77
|
-
|
|
78
|
-
const { bucket: p } = c.getBucket(), d =
|
|
77
|
+
f();
|
|
78
|
+
const { bucket: p } = c.getBucket(), d = S(n), u = E();
|
|
79
79
|
return x({
|
|
80
80
|
event: "picked_event",
|
|
81
81
|
picked_action: "picked_decision",
|
|
82
|
-
picked_app: { organizationId:
|
|
82
|
+
picked_app: { organizationId: s, projectId: r },
|
|
83
83
|
picked_feature_list: void 0,
|
|
84
84
|
picked_environment: m,
|
|
85
85
|
picked_value: p,
|
|
@@ -91,22 +91,27 @@ const S = () => sessionStorage.getItem("cvly_env"), T = (t, e) => t.filter((r) =
|
|
|
91
91
|
});
|
|
92
92
|
}
|
|
93
93
|
});
|
|
94
|
-
|
|
95
|
-
clock:
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
}), v({
|
|
94
|
+
g({
|
|
95
|
+
clock: R,
|
|
96
|
+
target: e.eventBus
|
|
97
|
+
}), P({
|
|
99
98
|
source: e.eventBus,
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
99
|
+
match: {
|
|
100
|
+
isPickedDecisionEvent: (i) => i.type === "feature_decide",
|
|
101
|
+
isInEventList: (i) => y.has(i.type)
|
|
102
|
+
},
|
|
103
|
+
cases: {
|
|
104
|
+
isPickedDecisionEvent: D,
|
|
105
|
+
isInEventList: L
|
|
106
|
+
}
|
|
107
|
+
}), g({
|
|
108
|
+
clock: f,
|
|
104
109
|
fn: () => !0,
|
|
105
|
-
target:
|
|
110
|
+
target: v
|
|
106
111
|
});
|
|
107
112
|
}
|
|
108
113
|
});
|
|
109
114
|
export {
|
|
110
|
-
|
|
111
|
-
|
|
115
|
+
C as googleAnalyticsPlugin,
|
|
116
|
+
R as pushToDataLayerEvent
|
|
112
117
|
};
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@picked/analytics",
|
|
3
3
|
"description": "Picked Analytics",
|
|
4
|
-
"version": "0.0.1-dev.
|
|
4
|
+
"version": "0.0.1-dev.1763519870626",
|
|
5
5
|
"dependencies": {
|
|
6
6
|
"@snowplow/browser-plugin-button-click-tracking": "^4.6.5",
|
|
7
7
|
"@snowplow/browser-plugin-error-tracking": "^4.6.5",
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"main": "./dist/cjs/index.js",
|
|
54
54
|
"module": "./dist/esm/index.js",
|
|
55
55
|
"peerDependencies": {
|
|
56
|
-
"@picked/client": "0.0.1-dev.
|
|
56
|
+
"@picked/client": "0.0.1-dev.1763519870626",
|
|
57
57
|
"effector": "^23.3.0"
|
|
58
58
|
},
|
|
59
59
|
"private": false,
|