@crimson-education/browser-logger 5.0.0-beta.8.1 → 5.0.1-beta.1
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/README.md +3 -0
- package/lib/index.js.map +1 -1
- package/lib/logger/consoleTransport.js.map +1 -1
- package/lib/logger/index.js.map +1 -1
- package/lib/logger/utils.js.map +1 -1
- package/lib/reporters/amplifyReporter.d.ts +1 -1
- package/lib/reporters/amplifyReporter.d.ts.map +1 -1
- package/lib/reporters/amplifyReporter.js +55 -27
- package/lib/reporters/amplifyReporter.js.map +1 -1
- package/lib/reporters/datadogReporter.d.ts +12 -0
- package/lib/reporters/datadogReporter.d.ts.map +1 -1
- package/lib/reporters/datadogReporter.js +16 -14
- package/lib/reporters/datadogReporter.js.map +1 -1
- package/lib/reporters/gtmReporter.js.map +1 -1
- package/lib/reporters/index.js.map +1 -1
- package/lib/utils.js.map +1 -1
- package/package.json +5 -4
- package/src/reporters/amplifyReporter.ts +65 -28
- package/src/reporters/datadogReporter.ts +37 -15
- package/lib/reporters/amplifyUtils.d.ts +0 -15
- package/lib/reporters/amplifyUtils.d.ts.map +0 -1
- package/lib/reporters/amplifyUtils.js +0 -27
- package/lib/reporters/amplifyUtils.js.map +0 -1
- package/src/reporters/amplifyUtils.ts +0 -41
package/README.md
CHANGED
|
@@ -8,6 +8,9 @@ These must be enabled by calling `Logger.init()`, as seen below.
|
|
|
8
8
|
|
|
9
9
|
> **Note**: This library has been upgraded to support Node.js 22. Some features have been removed or modified during the upgrade process. See the [Upgrade Notes](#upgrade-notes) section for details.
|
|
10
10
|
|
|
11
|
+
**!!IMPORTANT NOTICE: for the legacy lib of Datadog V4.X and others, please see the main branch, this is the one upgraded.**
|
|
12
|
+
|
|
13
|
+
|
|
11
14
|
## Install
|
|
12
15
|
|
|
13
16
|
```bash
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AAIzB,IAAI,WAAW,GAAG,KAAK,CAAC;AAExB;;;GAGG;AACH,MAAM,UAAU,IAAI,CAAC,MAAoB;IACvC,8DAA8D;IAC9D,IAAI,WAAW,EAAE
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AAIzB,IAAI,WAAW,GAAG,KAAK,CAAC;AAExB;;;GAGG;AACH,MAAM,UAAU,IAAI,CAAC,MAAoB;IACvC,8DAA8D;IAC9D,IAAI,WAAW,EAAE;QACf,OAAO;KACR;IACD,WAAW,GAAG,IAAI,CAAC;IAEnB,mCAAmC;IACnC,MAAM,iBAAiB,GAAG,MAAM,CAAC,SAAS,EAAE,GAAG,IAAI,IAAI,CAAC;IACxD,IAAI,iBAAiB,KAAK,KAAK,EAAE;QAC/B,SAAS,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,OAAO,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC;KACzG;IAED,IAAI,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE;QAC7B,SAAS,CAAC,SAAS,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;KAC1E;IAED,IAAI,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE;QAC7B,SAAS,CAAC,SAAS,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;KAC1E;IAED,IAAI,MAAM,CAAC,SAAS,EAAE,GAAG,EAAE;QACzB,SAAS,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,OAAO,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;KAC/G;IAED,MAAM,eAAe,GAAG;QACtB,GAAG,CAAC,MAAM,CAAC,eAAe,IAAI,EAAE,CAAC;QACjC,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,OAAO,EAAE,MAAM,CAAC,OAAO;KACxB,CAAC;IAEF,2CAA2C;IAC3C,IAAI,MAAM,CAAC,QAAQ,EAAE;QACnB,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;KAC9B;IAED,6CAA6C;IAC7C,IAAI,MAAM,CAAC,UAAU,EAAE;QACrB,aAAa,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;KAClC;IAED,WAAW,CAAC,eAAe,CAAC,CAAC;AAC/B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consoleTransport.js","sourceRoot":"","sources":["../../src/logger/consoleTransport.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"consoleTransport.js","sourceRoot":"","sources":["../../src/logger/consoleTransport.ts"],"names":[],"mappings":"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"}
|
package/lib/logger/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/logger/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,OAAO,EAAyC,QAAQ,EAAqC,MAAM,UAAU,CAAC;AAC9G,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEtD,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AAEnC,MAAM,CAAC,MAAM,cAAc,GAAa,EAAE,CAAC;AAE3C,MAAM,CAAC,MAAM,aAAa,GAAoB,CAAC,gBAAgB,EAAE,CAAC,CAAC;AAEnE,MAAM,CAAC,IAAI,cAAoC,CAAC;AAChD;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,KAAsB;IAChD,cAAc,GAAG,KAAK,IAAI,SAAS,CAAC;AACtC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,UAAyB,EAAE;IACtD,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;IAE5C,MAAM,MAAM,GAAY;QACtB,8DAA8D;QAC9D,yEAAyE;QACzE,GAAG;YACD,IAAI,OAAsB,CAAC;YAE3B,oDAAoD;YACpD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/logger/index.ts"],"names":[],"mappings":"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"}
|
package/lib/logger/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/logger/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,KAAe,EAAE,UAAoB;IAChE,MAAM,MAAM,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9E,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAC7D,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,OAAY;IACxC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/logger/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,KAAe,EAAE,UAAoB;IAChE,MAAM,MAAM,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9E,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAC7D,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,OAAY;IACxC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAC/B,OAAO,OAAO,CAAC;KAChB;IACD,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE;QACnD,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;KAC7B;IACD,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;AACzB,CAAC"}
|
|
@@ -10,7 +10,7 @@ export interface AmplifyReporterConfig extends ReporterConfigBase {
|
|
|
10
10
|
* The Identity Pool Id to use for reporting, if set to false, Auth.configure is not called.
|
|
11
11
|
* This must be called manually for the reporter to work.
|
|
12
12
|
*/
|
|
13
|
-
identityPoolId: string
|
|
13
|
+
identityPoolId: string;
|
|
14
14
|
/**
|
|
15
15
|
* The Pinpoint App Id to report to.
|
|
16
16
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"amplifyReporter.d.ts","sourceRoot":"","sources":["../../src/reporters/amplifyReporter.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,SAAS,EACT,QAAQ,EAER,kBAAkB,EAGlB,WAAW,EACZ,MAAM,UAAU,CAAC;AAMlB,KAAK,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC,CAAC;AAE7D,KAAK,sBAAsB,GAAG,UAAU,GAAG,OAAO,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"amplifyReporter.d.ts","sourceRoot":"","sources":["../../src/reporters/amplifyReporter.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,SAAS,EACT,QAAQ,EAER,kBAAkB,EAGlB,WAAW,EACZ,MAAM,UAAU,CAAC;AAMlB,KAAK,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC,CAAC;AAE7D,KAAK,sBAAsB,GAAG,UAAU,GAAG,OAAO,GAAG,SAAS,CAAC;AAwJ/D,MAAM,WAAW,qBAAsB,SAAQ,kBAAkB;IAC/D;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB,yBAAyB;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;OAGG;IACH,eAAe,CAAC,CAAC,MAAM,EAAE,sBAAsB,GAAG,QAAQ,GAAG,SAAS,CAAC;IAEvE;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,SAAS,CAAC,EAAE,8BAA8B,CAAC;CAC5C;AAED;;;;GAIG;AACH,KAAK,8BAA8B,GAAG;IACpC,6CAA6C;IAC7C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wDAAwD;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4EAA4E;IAC5E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wEAAwE;IACxE,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,wBAAgB,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,qBAAqB,GAAG,SAAS,CA8F3F;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,UAAO,GAAG,YAAY,CAqBhG;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,SAAS,GAAE,MAAM,GAAG,SAAqB,EACzC,WAAW,UAAO,GACjB,YAAY,CA2Bd"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { identifyUser, record } from '@aws-amplify/analytics';
|
|
2
2
|
import { logger } from '../logger';
|
|
3
|
-
|
|
4
|
-
import {
|
|
3
|
+
// Note: fetchAuthSession was previously imported but unused; removing to satisfy linter
|
|
4
|
+
import { Amplify } from '@aws-amplify/core';
|
|
5
5
|
// Auto-tracking implementation for Gen2
|
|
6
6
|
class AmplifyAutoTracker {
|
|
7
7
|
config;
|
|
@@ -26,7 +26,11 @@ class AmplifyAutoTracker {
|
|
|
26
26
|
});
|
|
27
27
|
// Page view tracking
|
|
28
28
|
if (this.config.autoTrackPageViews) {
|
|
29
|
-
|
|
29
|
+
// Delay initial page view to ensure Amplify is fully configured
|
|
30
|
+
// Using setTimeout(0) to defer to the next event loop tick
|
|
31
|
+
setTimeout(() => {
|
|
32
|
+
this.trackPageView();
|
|
33
|
+
}, 0);
|
|
30
34
|
// Track route changes for SPAs
|
|
31
35
|
let currentUrl = window.location.href;
|
|
32
36
|
const observer = new MutationObserver(() => {
|
|
@@ -56,7 +60,10 @@ class AmplifyAutoTracker {
|
|
|
56
60
|
};
|
|
57
61
|
record({
|
|
58
62
|
name: pageViewEvent.message,
|
|
59
|
-
attributes: asAttributeMap(
|
|
63
|
+
attributes: asAttributeMap({
|
|
64
|
+
...this.allMetadata,
|
|
65
|
+
...pageViewEvent.metadata,
|
|
66
|
+
}, false),
|
|
60
67
|
});
|
|
61
68
|
}
|
|
62
69
|
trackSessionState() {
|
|
@@ -71,7 +78,10 @@ class AmplifyAutoTracker {
|
|
|
71
78
|
};
|
|
72
79
|
record({
|
|
73
80
|
name: sessionEvent.message,
|
|
74
|
-
attributes: asAttributeMap(
|
|
81
|
+
attributes: asAttributeMap({
|
|
82
|
+
...this.allMetadata,
|
|
83
|
+
...sessionEvent.metadata,
|
|
84
|
+
}, false),
|
|
75
85
|
});
|
|
76
86
|
}
|
|
77
87
|
setupInteractionTracking() {
|
|
@@ -99,7 +109,10 @@ class AmplifyAutoTracker {
|
|
|
99
109
|
};
|
|
100
110
|
record({
|
|
101
111
|
name: interactionEvent.message,
|
|
102
|
-
attributes: asAttributeMap(
|
|
112
|
+
attributes: asAttributeMap({
|
|
113
|
+
...this.allMetadata,
|
|
114
|
+
...interactionEvent.metadata,
|
|
115
|
+
}, false),
|
|
103
116
|
});
|
|
104
117
|
});
|
|
105
118
|
}
|
|
@@ -115,13 +128,20 @@ class AmplifyAutoTracker {
|
|
|
115
128
|
}
|
|
116
129
|
}
|
|
117
130
|
export function amplifyReporter(info, config) {
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
131
|
+
Amplify.configure({
|
|
132
|
+
Auth: {
|
|
133
|
+
Cognito: {
|
|
134
|
+
identityPoolId: config.identityPoolId,
|
|
135
|
+
allowGuestAccess: true,
|
|
136
|
+
},
|
|
137
|
+
},
|
|
138
|
+
Analytics: {
|
|
139
|
+
Pinpoint: {
|
|
140
|
+
appId: config.analyticsAppId,
|
|
141
|
+
region: config.region,
|
|
142
|
+
...config.buffering,
|
|
143
|
+
},
|
|
144
|
+
},
|
|
125
145
|
});
|
|
126
146
|
const allMetadata = asAttributeMap({
|
|
127
147
|
appName: info.service,
|
|
@@ -130,10 +150,6 @@ export function amplifyReporter(info, config) {
|
|
|
130
150
|
environment: info.environment,
|
|
131
151
|
version: info.version,
|
|
132
152
|
});
|
|
133
|
-
fetchAuthSession({ forceRefresh: true }).then((session) => {
|
|
134
|
-
console.log('Auth session fetched successfully');
|
|
135
|
-
console.log('Session:', session);
|
|
136
|
-
});
|
|
137
153
|
// Initialize auto-tracker for Gen2
|
|
138
154
|
const autoTracker = new AmplifyAutoTracker(config, allMetadata);
|
|
139
155
|
if (config.proxyUrl) {
|
|
@@ -144,6 +160,7 @@ export function amplifyReporter(info, config) {
|
|
|
144
160
|
record({
|
|
145
161
|
name: event.message,
|
|
146
162
|
attributes: asAttributeMap({
|
|
163
|
+
...allMetadata,
|
|
147
164
|
...event.metadata,
|
|
148
165
|
...event.tags,
|
|
149
166
|
}, false),
|
|
@@ -173,14 +190,20 @@ export function amplifyReporter(info, config) {
|
|
|
173
190
|
: {};
|
|
174
191
|
Object.assign(allMetadata, asAttributeMap(userMetadata, true));
|
|
175
192
|
autoTracker.setUser(user);
|
|
176
|
-
//
|
|
177
|
-
//
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
193
|
+
// Only call identifyUser when we have a valid user ID
|
|
194
|
+
// Calling with empty string can cause issues with Pinpoint USER_ID
|
|
195
|
+
if (user?.id) {
|
|
196
|
+
identifyUser({
|
|
197
|
+
userId: user.id,
|
|
198
|
+
userProfile: {
|
|
199
|
+
email: user.email,
|
|
200
|
+
},
|
|
201
|
+
}).catch((error) => {
|
|
202
|
+
// Credentials may not be ready yet, log warning and continue
|
|
203
|
+
// The userId is still stored in allMetadata for event tracking
|
|
204
|
+
logger.warn('Failed to identify user in Pinpoint', { error });
|
|
205
|
+
});
|
|
206
|
+
}
|
|
184
207
|
},
|
|
185
208
|
setRouteName: function (routeName) {
|
|
186
209
|
reporter.addMetadata({ routeName });
|
|
@@ -221,8 +244,13 @@ export function buildAttributeMap(values, parentKey = undefined, groupValues = t
|
|
|
221
244
|
const valuesWithStringArrays = {};
|
|
222
245
|
Object.entries(values).forEach(([key, value]) => {
|
|
223
246
|
const combinedKey = parentKey ? [parentKey, key].join('.') : key;
|
|
224
|
-
|
|
225
|
-
|
|
247
|
+
// Only treat undefined or null as empty; avoid converting falsy values like ''/0/false to null
|
|
248
|
+
if (value === undefined || value === null) {
|
|
249
|
+
// For event attributes (groupValues === false), Pinpoint rejects null values.
|
|
250
|
+
// In that case we omit the key entirely to avoid "Event attribute value can not be null".
|
|
251
|
+
if (groupValues) {
|
|
252
|
+
valuesWithStringArrays[combinedKey] = null;
|
|
253
|
+
}
|
|
226
254
|
}
|
|
227
255
|
else if (groupValues && Array.isArray(value)) {
|
|
228
256
|
valuesWithStringArrays[combinedKey] = value.map((element) => typeof element === 'string' ? element : JSON.stringify(element));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"amplifyReporter.js","sourceRoot":"","sources":["../../src/reporters/amplifyReporter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAc9D,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,
|
|
1
|
+
{"version":3,"file":"amplifyReporter.js","sourceRoot":"","sources":["../../src/reporters/amplifyReporter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAc9D,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,wFAAwF;AACxF,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAO5C,wCAAwC;AACxC,MAAM,kBAAkB;IACd,MAAM,CAAwB;IAC9B,WAAW,CAAe;IAC1B,WAAW,GAAsB,IAAI,CAAC;IACtC,gBAAgB,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;IACtC,aAAa,GAAW,CAAC,CAAC;IAC1B,WAAW,GAAW,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;IAC3C,aAAa,GAAY,CAAC,QAAQ,CAAC,MAAM,CAAC;IAElD,YAAY,MAA6B,EAAE,WAAyB;QAClE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;IAEO,mBAAmB;QACzB,2BAA2B;QAC3B,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,GAAG,EAAE;YACjD,IAAI,CAAC,aAAa,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;YACtC,IAAI,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE;gBACjC,IAAI,CAAC,iBAAiB,EAAE,CAAC;aAC1B;QACH,CAAC,CAAC,CAAC;QAEH,qBAAqB;QACrB,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE;YAClC,gEAAgE;YAChE,2DAA2D;YAC3D,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,CAAC,EAAE,CAAC,CAAC,CAAC;YAEN,+BAA+B;YAC/B,IAAI,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;YACtC,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,GAAG,EAAE;gBACzC,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,UAAU,EAAE;oBACvC,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAClC,IAAI,CAAC,aAAa,EAAE,CAAC;iBACtB;YACH,CAAC,CAAC,CAAC;YACH,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;SACrE;QAED,4BAA4B;QAC5B,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE;YAC/B,IAAI,CAAC,wBAAwB,EAAE,CAAC;SACjC;IACH,CAAC;IAEO,aAAa;QACnB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,MAAM,aAAa,GAAG;YACpB,OAAO,EAAE,WAAW;YACpB,QAAQ,EAAE;gBACR,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI;gBACzB,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,GAAG,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC;aACzC;SACF,CAAC;QAEF,MAAM,CAAC;YACL,IAAI,EAAE,aAAa,CAAC,OAAO;YAC3B,UAAU,EAAE,cAAc,CACxB;gBACE,GAAG,IAAI,CAAC,WAAW;gBACnB,GAAG,aAAa,CAAC,QAAQ;aAC1B,EACD,KAAK,CACoB;SAC5B,CAAC,CAAC;IACL,CAAC;IAEO,iBAAiB;QACvB,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC3D,MAAM,YAAY,GAAG;YACnB,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,kBAAkB;YACnE,QAAQ,EAAE;gBACR,eAAe;gBACf,SAAS,EAAE,IAAI,CAAC,aAAa;gBAC7B,GAAG,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC;aACxC;SACF,CAAC;QAEF,MAAM,CAAC;YACL,IAAI,EAAE,YAAY,CAAC,OAAO;YAC1B,UAAU,EAAE,cAAc,CACxB;gBACE,GAAG,IAAI,CAAC,WAAW;gBACnB,GAAG,YAAY,CAAC,QAAQ;aACzB,EACD,KAAK,CACoB;SAC5B,CAAC,CAAC;IACL,CAAC;IAEO,wBAAwB;QAC9B,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,iBAAiB,CAAC;QAEvE,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YAC3C,MAAM,MAAM,GAAG,KAAK,CAAC,MAAqB,CAAC;YAC3C,IAAI,CAAC,MAAM;gBAAE,OAAO;YAEpB,qDAAqD;YACrD,MAAM,gBAAgB,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,cAAc,OAAO,CAAC,CAAC;YACnE,IAAI,CAAC,gBAAgB;gBAAE,OAAO;YAE9B,MAAM,aAAa,GAAG,gBAAgB,CAAC,YAAY,CAAC,GAAG,cAAc,MAAM,CAAC,CAAC;YAC7E,IAAI,CAAC,aAAa;gBAAE,OAAO;YAE3B,MAAM,gBAAgB,GAAG;gBACvB,OAAO,EAAE,kBAAkB;gBAC3B,QAAQ,EAAE;oBACR,WAAW,EAAE,aAAa;oBAC1B,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE;oBACzC,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;oBAC9C,eAAe,EAAE,OAAO;oBACxB,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC;iBACtC;aACF,CAAC;YAEF,MAAM,CAAC;gBACL,IAAI,EAAE,gBAAgB,CAAC,OAAO;gBAC9B,UAAU,EAAE,cAAc,CACxB;oBACE,GAAG,IAAI,CAAC,WAAW;oBACnB,GAAG,gBAAgB,CAAC,QAAQ;iBAC7B,EACD,KAAK,CACoB;aAC5B,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,oBAAoB,CAAC,MAA8B;QACzD,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;QACxC,OAAO,OAAO,eAAe,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACtF,CAAC;IAEM,OAAO,CAAC,IAAuB;QACpC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAEM,cAAc,CAAC,QAAsB;QAC1C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAC5C,CAAC;CACF;AA6ED,MAAM,UAAU,eAAe,CAAC,IAAiB,EAAE,MAA6B;IAC9E,OAAO,CAAC,SAAS,CAAC;QAChB,IAAI,EAAE;YACJ,OAAO,EAAE;gBACP,cAAc,EAAE,MAAM,CAAC,cAAc;gBACrC,gBAAgB,EAAE,IAAI;aACvB;SACF;QACD,SAAS,EAAE;YACT,QAAQ,EAAE;gBACR,KAAK,EAAE,MAAM,CAAC,cAAc;gBAC5B,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,GAAG,MAAM,CAAC,SAAS;aACpB;SACF;KACF,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,cAAc,CAAC;QACjC,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI;QAC5B,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;KACtB,CAAC,CAAC;IAEH,mCAAmC;IACnC,MAAM,WAAW,GAAG,IAAI,kBAAkB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAEhE,IAAI,MAAM,CAAC,QAAQ,EAAE;QACnB,kDAAkD;KACnD;IAED,MAAM,QAAQ,GAAc;QAC1B,UAAU,EAAE,UAAU,KAAoB;YACxC,MAAM,CAAC;gBACL,IAAI,EAAE,KAAK,CAAC,OAAO;gBACnB,UAAU,EAAE,cAAc,CACxB;oBACE,GAAG,WAAW;oBACd,GAAG,KAAK,CAAC,QAAQ;oBACjB,GAAG,KAAK,CAAC,IAAI;iBACd,EACD,KAAK,CACoB;gBAC3B,OAAO,EAAE,KAAK,CAAC,OAAO;aACvB,CAAC,CAAC;QACL,CAAC;QACD,aAAa,EAAE,UAAU,UAA8B;YACrD,QAAQ,CAAC,UAAU,CAAC;gBAClB,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,QAAQ,EAAE;oBACR,QAAQ,EAAE,UAAU,CAAC,QAAQ;oBAC7B,GAAG,UAAU,CAAC,QAAQ;iBACvB;aACF,CAAC,CAAC;QACL,CAAC;QACD,WAAW,EAAE,UAAU,QAAkB;YACvC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;YAC3D,WAAW,CAAC,cAAc,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;YAC3D,sDAAsD;YACtD,wDAAwD;QAC1D,CAAC;QACD,OAAO,EAAE,UAAU,IAAuB;YACxC,MAAM,YAAY,GAAG,IAAI;gBACvB,CAAC,CAAC,cAAc,CAAC;oBACb,MAAM,EAAE,IAAI,CAAC,EAAE;iBAChB,CAAC;gBACJ,CAAC,CAAC,EAAE,CAAC;YACP,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC;YAC/D,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC1B,sDAAsD;YACtD,mEAAmE;YACnE,IAAI,IAAI,EAAE,EAAE,EAAE;gBACZ,YAAY,CAAC;oBACX,MAAM,EAAE,IAAI,CAAC,EAAE;oBACf,WAAW,EAAE;wBACX,KAAK,EAAE,IAAI,CAAC,KAAK;qBAClB;iBACF,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;oBACjB,6DAA6D;oBAC7D,+DAA+D;oBAC/D,MAAM,CAAC,IAAI,CAAC,qCAAqC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;gBAChE,CAAC,CAAC,CAAC;aACJ;QACH,CAAC;QACD,YAAY,EAAE,UAAU,SAAiB;YACvC,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;QACtC,CAAC;QACD,WAAW,EAAE,UAAU,QAAgB;YACrC,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;QACrC,CAAC;KACF,CAAC;IAEF,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,MAA+B,EAAE,WAAW,GAAG,IAAI;IAChF,MAAM,YAAY,GAAG,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAEvE,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QACvE,MAAM,YAAY,GAAG,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QACpE,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YACzC,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC;YAClD,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC;QAEnC,OAAO,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,sCAAsC;IACtC,IAAI,cAAc,CAAC,MAAM,GAAG,EAAE,EAAE;QAC9B,MAAM,CAAC,KAAK,CAAC,0EAA0E,EAAE;YACvF,UAAU,EAAE,cAAc;SAC3B,CAAC,CAAC;QACH,cAAc,CAAC,MAAM,GAAG,EAAE,CAAC;KAC5B;IAED,OAAO,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;AAC5C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAC/B,MAA2B,EAC3B,YAAgC,SAAS,EACzC,WAAW,GAAG,IAAI;IAElB,MAAM,sBAAsB,GAAiB,EAAE,CAAC;IAEhD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QAC9C,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAEjE,+FAA+F;QAC/F,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE;YACzC,8EAA8E;YAC9E,0FAA0F;YAC1F,IAAI,WAAW,EAAE;gBACf,sBAAsB,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;aAC5C;SACF;aAAM,IAAI,WAAW,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAC9C,sBAAsB,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAC1D,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAChE,CAAC;SACH;aAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YACpC,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;YAC9E,MAAM,CAAC,MAAM,CAAC,sBAAsB,EAAE,kBAAkB,CAAC,CAAC;SAC3D;aAAM;YACL,MAAM,WAAW,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAC9E,sBAAsB,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;SACjF;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,sBAAsB,CAAC;AAChC,CAAC;AAED,iDAAiD;AACjD,oFAAoF;AACpF,uGAAuG;AACvG,sGAAsG;AACtG,kDAAkD;AAClD,OAAO;AACP,uGAAuG;AACvG,+GAA+G;AAC/G,iGAAiG;AACjG,0FAA0F;AAC1F,oEAAoE;AACpE,oBAAoB;AACpB,0IAA0I;AAC1I,SAAS;AACT,cAAc;AACd,MAAM;AAEN,uDAAuD;AACvD,gGAAgG;AAChG,kCAAkC;AAClC,sFAAsF;AAEtF,mGAAmG;AACnG,2EAA2E;AAC3E,oEAAoE;AACpE,0GAA0G;AAE1G,6DAA6D;AAC7D,uDAAuD;AACvD,2EAA2E;AAC3E,iDAAiD;AACjD,2BAA2B;AAC3B,mDAAmD;AACnD,gBAAgB;AAChB,YAAY;AACZ,UAAU;AAEV,2BAA2B;AAC3B,SAAS;AAET,8DAA8D;AAC9D,4EAA4E;AAC5E,oFAAoF;AAEpF,4BAA4B;AAC5B,kEAAkE;AAClE,4BAA4B;AAC5B,yCAAyC;AACzC,+EAA+E;AAC/E,uBAAuB;AACvB,6BAA6B;AAC7B,yCAAyC;AACzC,cAAc;AAEd,kEAAkE;AAClE,4FAA4F;AAC5F,QAAQ;AACR,qBAAqB;AACrB,OAAO;AACP,IAAI"}
|
|
@@ -23,11 +23,14 @@ export interface DatadogReporterConfig extends ReporterConfigBase {
|
|
|
23
23
|
* @deprecated Prefer using the dedicated `logSampleRate`, `rumSampleRate`, and `replaySampleRate` options.
|
|
24
24
|
*/
|
|
25
25
|
sampleRate?: number;
|
|
26
|
+
sessionSampleRate?: number;
|
|
27
|
+
sessionReplaySampleRate?: number;
|
|
26
28
|
/**
|
|
27
29
|
* Sampling rate for browser log collection. Defaults to 100, meaning every log message is sent to Datadog.
|
|
28
30
|
*/
|
|
29
31
|
logSampleRate?: number;
|
|
30
32
|
/**
|
|
33
|
+
* @deprecated Prefer using `sessionSampleRate`.
|
|
31
34
|
* Sampling rate for RUM session collection. Defaults to 100, meaning every browser session is tracked.
|
|
32
35
|
*
|
|
33
36
|
* RUM can be used to track things like core web vitals.
|
|
@@ -36,6 +39,7 @@ export interface DatadogReporterConfig extends ReporterConfigBase {
|
|
|
36
39
|
*/
|
|
37
40
|
rumSampleRate?: number;
|
|
38
41
|
/**
|
|
42
|
+
* @deprecated Prefer using `sessionReplaySampleRate`.
|
|
39
43
|
* Applied after the RUM sample rate, and controls the percentage of sessions tracked as Browser RUM & Session Replay.
|
|
40
44
|
* It defaults to 100, so every session is tracked as Browser RUM & Session Replay by default.
|
|
41
45
|
*
|
|
@@ -47,10 +51,17 @@ export interface DatadogReporterConfig extends ReporterConfigBase {
|
|
|
47
51
|
*/
|
|
48
52
|
useSecureSessionCookie?: boolean;
|
|
49
53
|
/**
|
|
54
|
+
* @deprecated Prefer using `usePartitionedCrossSiteSessionCookie`.
|
|
50
55
|
* Use a secure cross-site session cookie.
|
|
51
56
|
* This allows the RUM Browser SDK to run when the site is loaded from another one (iframe). Implies `useSecureSessionCookie`
|
|
52
57
|
*/
|
|
53
58
|
useCrossSiteSessionCookie?: boolean;
|
|
59
|
+
/**
|
|
60
|
+
* Use a partitioned secure cross-site session cookie. This allows the RUM Browser SDK to run when the site is loaded from another one (iframe). Implies `useSecureSessionCookie`.
|
|
61
|
+
* Important: If you are using the RUM and Logs Browser SDKs, this option must be configured with identical values
|
|
62
|
+
* @default false
|
|
63
|
+
*/
|
|
64
|
+
usePartitionedCrossSiteSessionCookie?: boolean;
|
|
54
65
|
/**
|
|
55
66
|
* Preserve the session across subdomains for the same site.
|
|
56
67
|
*/
|
|
@@ -101,6 +112,7 @@ export interface DatadogReporterConfig extends ReporterConfigBase {
|
|
|
101
112
|
* A list of request origins used to inject tracing headers, to be able to connect RUM and backend tracing.
|
|
102
113
|
*/
|
|
103
114
|
allowedTrackingOrigins?: (string | RegExp)[];
|
|
115
|
+
allowedTracingUrls?: (string | RegExp)[];
|
|
104
116
|
/**
|
|
105
117
|
* Enables action tracking for user interactions. This enables the Heatmap tab within Datadog
|
|
106
118
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datadogReporter.d.ts","sourceRoot":"","sources":["../../src/reporters/datadogReporter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAMT,WAAW,EACX,kBAAkB,EAEnB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAA4B,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AACxF,OAAO,EAAc,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE7F,OAAO,EAAE,yBAAyB,EAAoB,MAAM,4BAA4B,CAAC;AA2FzF,MAAM,WAAW,qBAAsB,SAAQ,kBAAkB;IAC/D,8BAA8B;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,yDAAyD;IACzD,WAAW,EAAE,MAAM,CAAC;IACpB,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,uEAAuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yBAAyB;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"datadogReporter.d.ts","sourceRoot":"","sources":["../../src/reporters/datadogReporter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAMT,WAAW,EACX,kBAAkB,EAEnB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAA4B,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AACxF,OAAO,EAAc,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE7F,OAAO,EAAE,yBAAyB,EAAoB,MAAM,4BAA4B,CAAC;AA2FzF,MAAM,WAAW,qBAAsB,SAAQ,kBAAkB;IAC/D,8BAA8B;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,yDAAyD;IACzD,WAAW,EAAE,MAAM,CAAC;IACpB,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,uEAAuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yBAAyB;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAEjC;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAEjC;;;;OAIG;IACH,yBAAyB,CAAC,EAAE,OAAO,CAAC;IAEpC;;;;OAIG;IACH,oCAAoC,CAAC,EAAE,OAAO,CAAC;IAE/C;;OAEG;IACH,4BAA4B,CAAC,EAAE,OAAO,CAAC;IAEvC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;OAEG;IACH,UAAU,CAAC,EAAE,oBAAoB,CAAC,YAAY,CAAC,CAAC;IAEhD;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,GAAG,yBAAyB,CAAC;IACnD;;OAEG;IACH,cAAc,CAAC,EAAE,qBAAqB,CAAC,YAAY,CAAC,CAAC;IAErD;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C;;OAEG;IACH,sBAAsB,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IAC7C,kBAAkB,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IACzC;;OAEG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAEhC;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,WAAW,EAAE,CAAC;CACtC;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,qBAAqB,GAAG,SAAS,CAsI3F"}
|
|
@@ -18,13 +18,13 @@ class DatadogFrustrationDetector {
|
|
|
18
18
|
// Track rapid clicks (potential frustration)
|
|
19
19
|
let clickCount = 0;
|
|
20
20
|
let lastClickTime = 0;
|
|
21
|
-
document.addEventListener('click', (
|
|
21
|
+
document.addEventListener('click', () => {
|
|
22
22
|
const now = Date.now();
|
|
23
23
|
if (now - lastClickTime < 1000) {
|
|
24
24
|
// Rapid clicks within 1 second
|
|
25
25
|
clickCount++;
|
|
26
26
|
if (clickCount >= 3) {
|
|
27
|
-
this.recordFrustrationEvent('rapid_clicks'
|
|
27
|
+
this.recordFrustrationEvent('rapid_clicks');
|
|
28
28
|
clickCount = 0;
|
|
29
29
|
}
|
|
30
30
|
}
|
|
@@ -34,13 +34,13 @@ class DatadogFrustrationDetector {
|
|
|
34
34
|
lastClickTime = now;
|
|
35
35
|
});
|
|
36
36
|
// Track form errors (potential frustration)
|
|
37
|
-
document.addEventListener('invalid', (
|
|
38
|
-
this.recordFrustrationEvent('form_validation_error'
|
|
37
|
+
document.addEventListener('invalid', () => {
|
|
38
|
+
this.recordFrustrationEvent('form_validation_error');
|
|
39
39
|
});
|
|
40
40
|
// Track 404 errors (potential frustration)
|
|
41
41
|
window.addEventListener('error', (event) => {
|
|
42
42
|
if (event.message.includes('404') || event.message.includes('Not Found')) {
|
|
43
|
-
this.recordFrustrationEvent('page_not_found'
|
|
43
|
+
this.recordFrustrationEvent('page_not_found');
|
|
44
44
|
}
|
|
45
45
|
});
|
|
46
46
|
// Track network errors (potential frustration)
|
|
@@ -48,12 +48,12 @@ class DatadogFrustrationDetector {
|
|
|
48
48
|
if (event.reason && typeof event.reason === 'object' && 'status' in event.reason) {
|
|
49
49
|
const status = event.reason.status;
|
|
50
50
|
if (status >= 400) {
|
|
51
|
-
this.recordFrustrationEvent('network_error'
|
|
51
|
+
this.recordFrustrationEvent('network_error');
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
54
|
});
|
|
55
55
|
}
|
|
56
|
-
recordFrustrationEvent(type
|
|
56
|
+
recordFrustrationEvent(type) {
|
|
57
57
|
const now = Date.now();
|
|
58
58
|
this.frustrationEvents.push({ type, timestamp: now });
|
|
59
59
|
// Clean old events outside the window
|
|
@@ -86,15 +86,15 @@ export function datadogReporter(info, config) {
|
|
|
86
86
|
const forwardErrorsToLogs = config.forwardConsoleLogs ?? false;
|
|
87
87
|
const enableLogTransport = config.logTransport !== false;
|
|
88
88
|
// Only init datadog logs if something is using it.
|
|
89
|
-
if (forwardErrorsToLogs
|
|
89
|
+
if (forwardErrorsToLogs === true || enableLogTransport === true) {
|
|
90
90
|
datadogLogs.init({
|
|
91
91
|
site: config.site,
|
|
92
92
|
clientToken: config.clientToken,
|
|
93
93
|
service: info.service,
|
|
94
94
|
env: info.environment,
|
|
95
95
|
version: config.version ?? info.version,
|
|
96
|
-
// Note: sampleRate is not available in newer Datadog versions
|
|
97
96
|
beforeSend: config.beforeLogsSend,
|
|
97
|
+
usePartitionedCrossSiteSessionCookie: config.usePartitionedCrossSiteSessionCookie,
|
|
98
98
|
useSecureSessionCookie: config.useSecureSessionCookie ?? !isLocalhost,
|
|
99
99
|
// Note: useCrossSiteSessionCookie is not available in newer Datadog versions
|
|
100
100
|
trackSessionAcrossSubdomains: config.trackSessionAcrossSubdomains,
|
|
@@ -115,8 +115,11 @@ export function datadogReporter(info, config) {
|
|
|
115
115
|
service: info.service,
|
|
116
116
|
env: info.environment,
|
|
117
117
|
version: config.version ?? info.version,
|
|
118
|
-
//
|
|
119
|
-
|
|
118
|
+
// Use correct Datadog v6 SDK options
|
|
119
|
+
sessionSampleRate: config.sessionSampleRate ?? config.rumSampleRate ?? config.sampleRate ?? 100,
|
|
120
|
+
sessionReplaySampleRate: config.sessionReplaySampleRate ?? config.replaySampleRate ?? 100,
|
|
121
|
+
// Track interactions (Note: trackFrustrations is not available in Datadog v6)
|
|
122
|
+
trackUserInteractions: config.trackUserInteractions ?? config.trackInteractions ?? false,
|
|
120
123
|
useSecureSessionCookie: config.useSecureSessionCookie ?? !isLocalhost,
|
|
121
124
|
// Note: useCrossSiteSessionCookie is not available in newer Datadog versions
|
|
122
125
|
trackSessionAcrossSubdomains: config.trackSessionAcrossSubdomains,
|
|
@@ -124,12 +127,11 @@ export function datadogReporter(info, config) {
|
|
|
124
127
|
actionNameAttribute: config.actionNameAttribute ?? 'data-analytics-name',
|
|
125
128
|
beforeSend: config.beforeSend,
|
|
126
129
|
defaultPrivacyLevel: config.defaultPrivacyLevel ?? 'mask-user-input',
|
|
127
|
-
|
|
128
|
-
trackUserInteractions: config.trackUserInteractions ?? false,
|
|
130
|
+
allowedTracingUrls: config.allowedTracingUrls ?? config.allowedTrackingOrigins,
|
|
129
131
|
excludedActivityUrls: config.excludedActivityUrls,
|
|
130
132
|
});
|
|
131
133
|
// Initialize frustration detector
|
|
132
|
-
|
|
134
|
+
new DatadogFrustrationDetector(config);
|
|
133
135
|
const reporter = {
|
|
134
136
|
trackEvent: function (event) {
|
|
135
137
|
datadogRum.addAction(event.message, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datadogReporter.js","sourceRoot":"","sources":["../../src/reporters/datadogReporter.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,WAAW,EAAE,WAAW,EAAyB,MAAM,uBAAuB,CAAC;AACxF,OAAO,EAAE,UAAU,EAA6C,MAAM,sBAAsB,CAAC;AAC7F,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAA6B,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAEzF,8CAA8C;AAC9C,MAAM,0BAA0B;IACtB,MAAM,CAAwB;IAC9B,iBAAiB,GAA+C,EAAE,CAAC;IAC1D,qBAAqB,GAAG,CAAC,CAAC,CAAC,0CAA0C;IACrE,kBAAkB,GAAG,IAAI,CAAC,CAAC,oBAAoB;IAEhE,YAAY,MAA6B;QACvC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,MAAM,CAAC,iBAAiB,EAAE
|
|
1
|
+
{"version":3,"file":"datadogReporter.js","sourceRoot":"","sources":["../../src/reporters/datadogReporter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gtmReporter.js","sourceRoot":"","sources":["../../src/reporters/gtmReporter.ts"],"names":[],"mappings":"AAkBA,MAAM,UAAU,WAAW,CAAC,IAAiB,EAAE,MAAyB;IACtE,IAAI,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC;IACzC,MAAM,YAAY,GAAG;QACnB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI;QAC5B,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;KACtB,CAAC;IAEF,MAAM,QAAQ,GAAc;QAC1B,GAAG,MAAM;QACT,WAAW,EAAE,UAAU,QAAkB;YACvC,IAAI,MAAM,CAAC,SAAS,EAAE
|
|
1
|
+
{"version":3,"file":"gtmReporter.js","sourceRoot":"","sources":["../../src/reporters/gtmReporter.ts"],"names":[],"mappings":"AAkBA,MAAM,UAAU,WAAW,CAAC,IAAiB,EAAE,MAAyB;IACtE,IAAI,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC;IACzC,MAAM,YAAY,GAAG;QACnB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI;QAC5B,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;KACtB,CAAC;IAEF,MAAM,QAAQ,GAAc;QAC1B,GAAG,MAAM;QACT,WAAW,EAAE,UAAU,QAAkB;YACvC,IAAI,MAAM,CAAC,SAAS,EAAE;gBACpB,wDAAwD;gBACxD,IAAI,CAAC,eAAe,EAAE;oBACpB,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBACpC,eAAe,GAAG,IAAI,CAAC;iBACxB;gBAED,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aACjC;QACH,CAAC;QACD,UAAU,EAAE,UAAU,KAAoB;YACxC,QAAQ,CAAC,WAAW,CAAC;gBACnB,GAAG,KAAK,CAAC,QAAQ;gBACjB,GAAG,KAAK,CAAC,IAAI;gBACb,GAAG,KAAK,CAAC,OAAO;gBAChB,KAAK,EAAE,KAAK,CAAC,OAAO;gBACpB,KAAK,EAAE,KAAK,CAAC,KAAK;aACnB,CAAC,CAAC;QACL,CAAC;QACD,aAAa,EAAE,UAAU,UAA8B;YACrD,QAAQ,CAAC,WAAW,CAAC;gBACnB,GAAG,UAAU,CAAC,QAAQ;gBACtB,KAAK,EAAE,UAAU,CAAC,OAAO;aAC1B,CAAC,CAAC;QACL,CAAC;QACD,OAAO,EAAE,UAAU,IAAuB;YACxC,IAAI,IAAI,EAAE;gBACR,QAAQ,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;aAChC;QACH,CAAC;QACD,YAAY,EAAE,UAAU,SAAiB;YACvC,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;QACtC,CAAC;QACD,WAAW,EAAE,UAAU,QAAgB;YACrC,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;QACrC,CAAC;KACF,CAAC;IAEF,IAAI,eAAe,EAAE;QACnB,QAAQ,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;KACpC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/reporters/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAc/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElD,MAAM,CAAC,MAAM,SAAS,GAA6C,EAAE,CAAC;AAEtE,MAAM,CAAC,IAAI,gBAAsC,CAAC;AAClD;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,KAAsB;IAClD,gBAAgB,GAAG,KAAK,IAAI,SAAS,CAAC;AACxC,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,OAAyB;IAC7C,IAAI,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACvC,IAAI,OAAO,EAAE,gBAAgB,EAAE
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/reporters/index.ts"],"names":[],"mappings":"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"}
|
package/lib/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CACpC,QAAmB,EACnB,QAAmD,EACnD,MAAe,EACf,KAAK,GAAG,CAAC,EACT,QAAQ,GAAG,EAAE;IAEb,MAAM,cAAc,GAAG,QAAQ,CAAC,sBAAsB,CAAC;IAEvD,+BAA+B;IAC/B,IAAI,QAAQ,KAAK,SAAS,IAAI,CAAC,cAAc,IAAI,KAAK,GAAG,QAAQ,EAAE
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CACpC,QAAmB,EACnB,QAAmD,EACnD,MAAe,EACf,KAAK,GAAG,CAAC,EACT,QAAQ,GAAG,EAAE;IAEb,MAAM,cAAc,GAAG,QAAQ,CAAC,sBAAsB,CAAC;IAEvD,+BAA+B;IAC/B,IAAI,QAAQ,KAAK,SAAS,IAAI,CAAC,cAAc,IAAI,KAAK,GAAG,QAAQ,EAAE;QACjE,OAAO,QAAQ,CAAC;KACjB;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEzC,OAAO,MAAM,CAAC,WAAW,CACvB,OAAO;SACJ,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE;QAChB,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAC5C,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CACtC,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAC1E,CAAC;IACJ,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QACpB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE;YAC/C,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;YAC5C,OAAO,CAAC,GAAG,EAAE,sBAAsB,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,OAAO,GAAG,EAAE,KAAK,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;SAC3F;QACD,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACtB,CAAC,CAAC,CACQ,CAAC;AACjB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@crimson-education/browser-logger",
|
|
3
|
-
"version": "5.0.
|
|
3
|
+
"version": "5.0.1-beta.1",
|
|
4
4
|
"description": "An abstract logger and reporting utility for browser environments",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"prepack": "npm run build",
|
|
@@ -28,11 +28,12 @@
|
|
|
28
28
|
},
|
|
29
29
|
"homepage": "https://github.com/crimson-education/browser-logger#readme",
|
|
30
30
|
"dependencies": {
|
|
31
|
+
"@aws-amplify/analytics": "7.0.90",
|
|
32
|
+
"@aws-amplify/core": "6.15.0",
|
|
31
33
|
"@aws-sdk/client-cognito-identity": "^3.844.0",
|
|
32
34
|
"@aws-sdk/protocol-http": "^3.370.0",
|
|
33
35
|
"@datadog/browser-logs": "^6.13.0",
|
|
34
|
-
"@datadog/browser-rum": "^6.13.0"
|
|
35
|
-
"aws-amplify": "^6.15.3"
|
|
36
|
+
"@datadog/browser-rum": "^6.13.0"
|
|
36
37
|
},
|
|
37
38
|
"devDependencies": {
|
|
38
39
|
"@crimson-education/eslint-config": "^2.1.0",
|
|
@@ -43,7 +44,7 @@
|
|
|
43
44
|
"jest": "^29.7.0",
|
|
44
45
|
"rimraf": "^5.0.5",
|
|
45
46
|
"ts-jest": "^29.1.2",
|
|
46
|
-
"typescript": "
|
|
47
|
+
"typescript": "5.1.6"
|
|
47
48
|
},
|
|
48
49
|
"files": [
|
|
49
50
|
"lib",
|
|
@@ -13,8 +13,8 @@ import {
|
|
|
13
13
|
ServiceInfo,
|
|
14
14
|
} from '../types';
|
|
15
15
|
import { logger } from '../logger';
|
|
16
|
-
|
|
17
|
-
import {
|
|
16
|
+
// Note: fetchAuthSession was previously imported but unused; removing to satisfy linter
|
|
17
|
+
import { Amplify } from '@aws-amplify/core';
|
|
18
18
|
|
|
19
19
|
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
20
20
|
type AttributeMap = Record<string, string[] | string | null>;
|
|
@@ -48,7 +48,11 @@ class AmplifyAutoTracker {
|
|
|
48
48
|
|
|
49
49
|
// Page view tracking
|
|
50
50
|
if (this.config.autoTrackPageViews) {
|
|
51
|
-
|
|
51
|
+
// Delay initial page view to ensure Amplify is fully configured
|
|
52
|
+
// Using setTimeout(0) to defer to the next event loop tick
|
|
53
|
+
setTimeout(() => {
|
|
54
|
+
this.trackPageView();
|
|
55
|
+
}, 0);
|
|
52
56
|
|
|
53
57
|
// Track route changes for SPAs
|
|
54
58
|
let currentUrl = window.location.href;
|
|
@@ -82,7 +86,13 @@ class AmplifyAutoTracker {
|
|
|
82
86
|
|
|
83
87
|
record({
|
|
84
88
|
name: pageViewEvent.message,
|
|
85
|
-
attributes: asAttributeMap(
|
|
89
|
+
attributes: asAttributeMap(
|
|
90
|
+
{
|
|
91
|
+
...this.allMetadata,
|
|
92
|
+
...pageViewEvent.metadata,
|
|
93
|
+
},
|
|
94
|
+
false,
|
|
95
|
+
) as Record<string, string>,
|
|
86
96
|
});
|
|
87
97
|
}
|
|
88
98
|
|
|
@@ -99,7 +109,13 @@ class AmplifyAutoTracker {
|
|
|
99
109
|
|
|
100
110
|
record({
|
|
101
111
|
name: sessionEvent.message,
|
|
102
|
-
attributes: asAttributeMap(
|
|
112
|
+
attributes: asAttributeMap(
|
|
113
|
+
{
|
|
114
|
+
...this.allMetadata,
|
|
115
|
+
...sessionEvent.metadata,
|
|
116
|
+
},
|
|
117
|
+
false,
|
|
118
|
+
) as Record<string, string>,
|
|
103
119
|
});
|
|
104
120
|
}
|
|
105
121
|
|
|
@@ -130,7 +146,13 @@ class AmplifyAutoTracker {
|
|
|
130
146
|
|
|
131
147
|
record({
|
|
132
148
|
name: interactionEvent.message,
|
|
133
|
-
attributes: asAttributeMap(
|
|
149
|
+
attributes: asAttributeMap(
|
|
150
|
+
{
|
|
151
|
+
...this.allMetadata,
|
|
152
|
+
...interactionEvent.metadata,
|
|
153
|
+
},
|
|
154
|
+
false,
|
|
155
|
+
) as Record<string, string>,
|
|
134
156
|
});
|
|
135
157
|
});
|
|
136
158
|
}
|
|
@@ -158,7 +180,7 @@ export interface AmplifyReporterConfig extends ReporterConfigBase {
|
|
|
158
180
|
* The Identity Pool Id to use for reporting, if set to false, Auth.configure is not called.
|
|
159
181
|
* This must be called manually for the reporter to work.
|
|
160
182
|
*/
|
|
161
|
-
identityPoolId: string
|
|
183
|
+
identityPoolId: string;
|
|
162
184
|
/**
|
|
163
185
|
* The Pinpoint App Id to report to.
|
|
164
186
|
*/
|
|
@@ -225,13 +247,20 @@ type AmplifyReporterBufferingConfig = {
|
|
|
225
247
|
};
|
|
226
248
|
|
|
227
249
|
export function amplifyReporter(info: ServiceInfo, config: AmplifyReporterConfig): IReporter {
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
250
|
+
Amplify.configure({
|
|
251
|
+
Auth: {
|
|
252
|
+
Cognito: {
|
|
253
|
+
identityPoolId: config.identityPoolId,
|
|
254
|
+
allowGuestAccess: true,
|
|
255
|
+
},
|
|
256
|
+
},
|
|
257
|
+
Analytics: {
|
|
258
|
+
Pinpoint: {
|
|
259
|
+
appId: config.analyticsAppId,
|
|
260
|
+
region: config.region,
|
|
261
|
+
...config.buffering,
|
|
262
|
+
},
|
|
263
|
+
},
|
|
235
264
|
});
|
|
236
265
|
|
|
237
266
|
const allMetadata = asAttributeMap({
|
|
@@ -241,10 +270,6 @@ export function amplifyReporter(info: ServiceInfo, config: AmplifyReporterConfig
|
|
|
241
270
|
environment: info.environment,
|
|
242
271
|
version: info.version,
|
|
243
272
|
});
|
|
244
|
-
fetchAuthSession({ forceRefresh: true }).then((session) => {
|
|
245
|
-
console.log('Auth session fetched successfully');
|
|
246
|
-
console.log('Session:', session);
|
|
247
|
-
});
|
|
248
273
|
|
|
249
274
|
// Initialize auto-tracker for Gen2
|
|
250
275
|
const autoTracker = new AmplifyAutoTracker(config, allMetadata);
|
|
@@ -259,6 +284,7 @@ export function amplifyReporter(info: ServiceInfo, config: AmplifyReporterConfig
|
|
|
259
284
|
name: event.message,
|
|
260
285
|
attributes: asAttributeMap(
|
|
261
286
|
{
|
|
287
|
+
...allMetadata,
|
|
262
288
|
...event.metadata,
|
|
263
289
|
...event.tags,
|
|
264
290
|
},
|
|
@@ -290,14 +316,20 @@ export function amplifyReporter(info: ServiceInfo, config: AmplifyReporterConfig
|
|
|
290
316
|
: {};
|
|
291
317
|
Object.assign(allMetadata, asAttributeMap(userMetadata, true));
|
|
292
318
|
autoTracker.setUser(user);
|
|
293
|
-
//
|
|
294
|
-
//
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
319
|
+
// Only call identifyUser when we have a valid user ID
|
|
320
|
+
// Calling with empty string can cause issues with Pinpoint USER_ID
|
|
321
|
+
if (user?.id) {
|
|
322
|
+
identifyUser({
|
|
323
|
+
userId: user.id,
|
|
324
|
+
userProfile: {
|
|
325
|
+
email: user.email,
|
|
326
|
+
},
|
|
327
|
+
}).catch((error) => {
|
|
328
|
+
// Credentials may not be ready yet, log warning and continue
|
|
329
|
+
// The userId is still stored in allMetadata for event tracking
|
|
330
|
+
logger.warn('Failed to identify user in Pinpoint', { error });
|
|
331
|
+
});
|
|
332
|
+
}
|
|
301
333
|
},
|
|
302
334
|
setRouteName: function (routeName: string): void {
|
|
303
335
|
reporter.addMetadata({ routeName });
|
|
@@ -351,8 +383,13 @@ export function buildAttributeMap(
|
|
|
351
383
|
Object.entries(values).forEach(([key, value]) => {
|
|
352
384
|
const combinedKey = parentKey ? [parentKey, key].join('.') : key;
|
|
353
385
|
|
|
354
|
-
|
|
355
|
-
|
|
386
|
+
// Only treat undefined or null as empty; avoid converting falsy values like ''/0/false to null
|
|
387
|
+
if (value === undefined || value === null) {
|
|
388
|
+
// For event attributes (groupValues === false), Pinpoint rejects null values.
|
|
389
|
+
// In that case we omit the key entirely to avoid "Event attribute value can not be null".
|
|
390
|
+
if (groupValues) {
|
|
391
|
+
valuesWithStringArrays[combinedKey] = null;
|
|
392
|
+
}
|
|
356
393
|
} else if (groupValues && Array.isArray(value)) {
|
|
357
394
|
valuesWithStringArrays[combinedKey] = value.map((element) =>
|
|
358
395
|
typeof element === 'string' ? element : JSON.stringify(element),
|
|
@@ -34,13 +34,13 @@ class DatadogFrustrationDetector {
|
|
|
34
34
|
let clickCount = 0;
|
|
35
35
|
let lastClickTime = 0;
|
|
36
36
|
|
|
37
|
-
document.addEventListener('click', (
|
|
37
|
+
document.addEventListener('click', () => {
|
|
38
38
|
const now = Date.now();
|
|
39
39
|
if (now - lastClickTime < 1000) {
|
|
40
40
|
// Rapid clicks within 1 second
|
|
41
41
|
clickCount++;
|
|
42
42
|
if (clickCount >= 3) {
|
|
43
|
-
this.recordFrustrationEvent('rapid_clicks'
|
|
43
|
+
this.recordFrustrationEvent('rapid_clicks');
|
|
44
44
|
clickCount = 0;
|
|
45
45
|
}
|
|
46
46
|
} else {
|
|
@@ -50,14 +50,14 @@ class DatadogFrustrationDetector {
|
|
|
50
50
|
});
|
|
51
51
|
|
|
52
52
|
// Track form errors (potential frustration)
|
|
53
|
-
document.addEventListener('invalid', (
|
|
54
|
-
this.recordFrustrationEvent('form_validation_error'
|
|
53
|
+
document.addEventListener('invalid', () => {
|
|
54
|
+
this.recordFrustrationEvent('form_validation_error');
|
|
55
55
|
});
|
|
56
56
|
|
|
57
57
|
// Track 404 errors (potential frustration)
|
|
58
58
|
window.addEventListener('error', (event) => {
|
|
59
59
|
if (event.message.includes('404') || event.message.includes('Not Found')) {
|
|
60
|
-
this.recordFrustrationEvent('page_not_found'
|
|
60
|
+
this.recordFrustrationEvent('page_not_found');
|
|
61
61
|
}
|
|
62
62
|
});
|
|
63
63
|
|
|
@@ -66,13 +66,13 @@ class DatadogFrustrationDetector {
|
|
|
66
66
|
if (event.reason && typeof event.reason === 'object' && 'status' in event.reason) {
|
|
67
67
|
const status = (event.reason as any).status;
|
|
68
68
|
if (status >= 400) {
|
|
69
|
-
this.recordFrustrationEvent('network_error'
|
|
69
|
+
this.recordFrustrationEvent('network_error');
|
|
70
70
|
}
|
|
71
71
|
}
|
|
72
72
|
});
|
|
73
73
|
}
|
|
74
74
|
|
|
75
|
-
private recordFrustrationEvent(type: string
|
|
75
|
+
private recordFrustrationEvent(type: string) {
|
|
76
76
|
const now = Date.now();
|
|
77
77
|
this.frustrationEvents.push({ type, timestamp: now });
|
|
78
78
|
|
|
@@ -125,11 +125,17 @@ export interface DatadogReporterConfig extends ReporterConfigBase {
|
|
|
125
125
|
* @deprecated Prefer using the dedicated `logSampleRate`, `rumSampleRate`, and `replaySampleRate` options.
|
|
126
126
|
*/
|
|
127
127
|
sampleRate?: number;
|
|
128
|
+
|
|
129
|
+
sessionSampleRate?: number;
|
|
130
|
+
sessionReplaySampleRate?: number;
|
|
131
|
+
|
|
128
132
|
/**
|
|
129
133
|
* Sampling rate for browser log collection. Defaults to 100, meaning every log message is sent to Datadog.
|
|
130
134
|
*/
|
|
131
135
|
logSampleRate?: number;
|
|
136
|
+
|
|
132
137
|
/**
|
|
138
|
+
* @deprecated Prefer using `sessionSampleRate`.
|
|
133
139
|
* Sampling rate for RUM session collection. Defaults to 100, meaning every browser session is tracked.
|
|
134
140
|
*
|
|
135
141
|
* RUM can be used to track things like core web vitals.
|
|
@@ -137,7 +143,9 @@ export interface DatadogReporterConfig extends ReporterConfigBase {
|
|
|
137
143
|
* @see https://www.datadoghq.com/product/real-user-monitoring/
|
|
138
144
|
*/
|
|
139
145
|
rumSampleRate?: number;
|
|
146
|
+
|
|
140
147
|
/**
|
|
148
|
+
* @deprecated Prefer using `sessionReplaySampleRate`.
|
|
141
149
|
* Applied after the RUM sample rate, and controls the percentage of sessions tracked as Browser RUM & Session Replay.
|
|
142
150
|
* It defaults to 100, so every session is tracked as Browser RUM & Session Replay by default.
|
|
143
151
|
*
|
|
@@ -149,11 +157,21 @@ export interface DatadogReporterConfig extends ReporterConfigBase {
|
|
|
149
157
|
* Use a secure session cookie. This disables RUM events sent on insecure (non-HTTPS) connections.
|
|
150
158
|
*/
|
|
151
159
|
useSecureSessionCookie?: boolean;
|
|
160
|
+
|
|
152
161
|
/**
|
|
162
|
+
* @deprecated Prefer using `usePartitionedCrossSiteSessionCookie`.
|
|
153
163
|
* Use a secure cross-site session cookie.
|
|
154
164
|
* This allows the RUM Browser SDK to run when the site is loaded from another one (iframe). Implies `useSecureSessionCookie`
|
|
155
165
|
*/
|
|
156
166
|
useCrossSiteSessionCookie?: boolean;
|
|
167
|
+
|
|
168
|
+
/**
|
|
169
|
+
* Use a partitioned secure cross-site session cookie. This allows the RUM Browser SDK to run when the site is loaded from another one (iframe). Implies `useSecureSessionCookie`.
|
|
170
|
+
* Important: If you are using the RUM and Logs Browser SDKs, this option must be configured with identical values
|
|
171
|
+
* @default false
|
|
172
|
+
*/
|
|
173
|
+
usePartitionedCrossSiteSessionCookie?: boolean;
|
|
174
|
+
|
|
157
175
|
/**
|
|
158
176
|
* Preserve the session across subdomains for the same site.
|
|
159
177
|
*/
|
|
@@ -207,6 +225,7 @@ export interface DatadogReporterConfig extends ReporterConfigBase {
|
|
|
207
225
|
* A list of request origins used to inject tracing headers, to be able to connect RUM and backend tracing.
|
|
208
226
|
*/
|
|
209
227
|
allowedTrackingOrigins?: (string | RegExp)[];
|
|
228
|
+
allowedTracingUrls?: (string | RegExp)[];
|
|
210
229
|
/**
|
|
211
230
|
* Enables action tracking for user interactions. This enables the Heatmap tab within Datadog
|
|
212
231
|
*/
|
|
@@ -229,7 +248,7 @@ export function datadogReporter(info: ServiceInfo, config: DatadogReporterConfig
|
|
|
229
248
|
const enableLogTransport = config.logTransport !== false;
|
|
230
249
|
|
|
231
250
|
// Only init datadog logs if something is using it.
|
|
232
|
-
if (forwardErrorsToLogs
|
|
251
|
+
if (forwardErrorsToLogs === true || enableLogTransport === true) {
|
|
233
252
|
datadogLogs.init({
|
|
234
253
|
site: config.site as any,
|
|
235
254
|
clientToken: config.clientToken,
|
|
@@ -237,9 +256,9 @@ export function datadogReporter(info: ServiceInfo, config: DatadogReporterConfig
|
|
|
237
256
|
env: info.environment,
|
|
238
257
|
version: config.version ?? info.version,
|
|
239
258
|
|
|
240
|
-
// Note: sampleRate is not available in newer Datadog versions
|
|
241
259
|
beforeSend: config.beforeLogsSend,
|
|
242
260
|
|
|
261
|
+
usePartitionedCrossSiteSessionCookie: config.usePartitionedCrossSiteSessionCookie,
|
|
243
262
|
useSecureSessionCookie: config.useSecureSessionCookie ?? !isLocalhost,
|
|
244
263
|
// Note: useCrossSiteSessionCookie is not available in newer Datadog versions
|
|
245
264
|
trackSessionAcrossSubdomains: config.trackSessionAcrossSubdomains,
|
|
@@ -264,8 +283,12 @@ export function datadogReporter(info: ServiceInfo, config: DatadogReporterConfig
|
|
|
264
283
|
env: info.environment,
|
|
265
284
|
version: config.version ?? info.version,
|
|
266
285
|
|
|
267
|
-
//
|
|
268
|
-
|
|
286
|
+
// Use correct Datadog v6 SDK options
|
|
287
|
+
sessionSampleRate: config.sessionSampleRate ?? config.rumSampleRate ?? config.sampleRate ?? 100,
|
|
288
|
+
sessionReplaySampleRate: config.sessionReplaySampleRate?? config.replaySampleRate ?? 100,
|
|
289
|
+
|
|
290
|
+
// Track interactions (Note: trackFrustrations is not available in Datadog v6)
|
|
291
|
+
trackUserInteractions: config.trackUserInteractions ?? config.trackInteractions ?? false,
|
|
269
292
|
|
|
270
293
|
useSecureSessionCookie: config.useSecureSessionCookie ?? !isLocalhost,
|
|
271
294
|
// Note: useCrossSiteSessionCookie is not available in newer Datadog versions
|
|
@@ -275,14 +298,13 @@ export function datadogReporter(info: ServiceInfo, config: DatadogReporterConfig
|
|
|
275
298
|
beforeSend: config.beforeSend,
|
|
276
299
|
|
|
277
300
|
defaultPrivacyLevel: config.defaultPrivacyLevel ?? 'mask-user-input',
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
301
|
+
allowedTracingUrls: config.allowedTracingUrls ?? config.allowedTrackingOrigins,
|
|
302
|
+
|
|
281
303
|
excludedActivityUrls: config.excludedActivityUrls,
|
|
282
304
|
});
|
|
283
305
|
|
|
284
306
|
// Initialize frustration detector
|
|
285
|
-
|
|
307
|
+
new DatadogFrustrationDetector(config);
|
|
286
308
|
|
|
287
309
|
const reporter: IReporter = {
|
|
288
310
|
trackEvent: function (event: ReporterEvent): void {
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
export interface AmplifyAnalyticsConfig {
|
|
2
|
-
region: string;
|
|
3
|
-
analyticsAppId: string;
|
|
4
|
-
identityPoolId?: string | false;
|
|
5
|
-
userPoolId?: string;
|
|
6
|
-
userPoolWebClientId?: string;
|
|
7
|
-
buffering?: {
|
|
8
|
-
bufferSize?: number;
|
|
9
|
-
flushSize?: number;
|
|
10
|
-
flushInterval?: number;
|
|
11
|
-
resendLimit?: number;
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
export declare function initAmplifyAnalytics(config: AmplifyAnalyticsConfig): Promise<void>;
|
|
15
|
-
//# sourceMappingURL=amplifyUtils.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"amplifyUtils.d.ts","sourceRoot":"","sources":["../../src/reporters/amplifyUtils.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,EAAE;QACV,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACH;AAED,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,sBAAsB,iBAwBxE"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { Amplify } from '@aws-amplify/core';
|
|
2
|
-
export async function initAmplifyAnalytics(config) {
|
|
3
|
-
if (config.identityPoolId !== false && config.identityPoolId) {
|
|
4
|
-
// if (config.userPoolId && config.userPoolWebClientId) {
|
|
5
|
-
// authConfig.Cognito.userPoolId = config.userPoolId;
|
|
6
|
-
// authConfig.Cognito.userPoolClientId = config.userPoolWebClientId;
|
|
7
|
-
// }
|
|
8
|
-
Amplify.configure({
|
|
9
|
-
Auth: {
|
|
10
|
-
Cognito: {
|
|
11
|
-
identityPoolId: config.identityPoolId,
|
|
12
|
-
allowGuestAccess: true,
|
|
13
|
-
},
|
|
14
|
-
},
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
Amplify.configure({
|
|
18
|
-
Analytics: {
|
|
19
|
-
Pinpoint: {
|
|
20
|
-
appId: config.analyticsAppId,
|
|
21
|
-
region: config.region,
|
|
22
|
-
...config.buffering,
|
|
23
|
-
},
|
|
24
|
-
},
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=amplifyUtils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"amplifyUtils.js","sourceRoot":"","sources":["../../src/reporters/amplifyUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAgB5C,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,MAA8B;IACvE,IAAI,MAAM,CAAC,cAAc,KAAK,KAAK,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;QAC7D,yDAAyD;QACzD,uDAAuD;QACvD,sEAAsE;QACtE,IAAI;QACJ,OAAO,CAAC,SAAS,CAAC;YAChB,IAAI,EAAE;gBACJ,OAAO,EAAE;oBACP,cAAc,EAAE,MAAM,CAAC,cAAc;oBACrC,gBAAgB,EAAE,IAAI;iBACvB;aACF;SACF,CAAC,CAAC;IACL,CAAC;IACD,OAAO,CAAC,SAAS,CAAC;QAChB,SAAS,EAAE;YACT,QAAQ,EAAE;gBACR,KAAK,EAAE,MAAM,CAAC,cAAc;gBAC5B,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,GAAG,MAAM,CAAC,SAAS;aACpB;SACF;KACF,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { Amplify } from '@aws-amplify/core';
|
|
2
|
-
|
|
3
|
-
export interface AmplifyAnalyticsConfig {
|
|
4
|
-
region: string;
|
|
5
|
-
analyticsAppId: string;
|
|
6
|
-
identityPoolId?: string | false;
|
|
7
|
-
userPoolId?: string;
|
|
8
|
-
userPoolWebClientId?: string;
|
|
9
|
-
buffering?: {
|
|
10
|
-
bufferSize?: number;
|
|
11
|
-
flushSize?: number;
|
|
12
|
-
flushInterval?: number;
|
|
13
|
-
resendLimit?: number;
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
export async function initAmplifyAnalytics(config: AmplifyAnalyticsConfig) {
|
|
18
|
-
if (config.identityPoolId !== false && config.identityPoolId) {
|
|
19
|
-
// if (config.userPoolId && config.userPoolWebClientId) {
|
|
20
|
-
// authConfig.Cognito.userPoolId = config.userPoolId;
|
|
21
|
-
// authConfig.Cognito.userPoolClientId = config.userPoolWebClientId;
|
|
22
|
-
// }
|
|
23
|
-
Amplify.configure({
|
|
24
|
-
Auth: {
|
|
25
|
-
Cognito: {
|
|
26
|
-
identityPoolId: config.identityPoolId,
|
|
27
|
-
allowGuestAccess: true,
|
|
28
|
-
},
|
|
29
|
-
},
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
Amplify.configure({
|
|
33
|
-
Analytics: {
|
|
34
|
-
Pinpoint: {
|
|
35
|
-
appId: config.analyticsAppId,
|
|
36
|
-
region: config.region,
|
|
37
|
-
...config.buffering,
|
|
38
|
-
},
|
|
39
|
-
},
|
|
40
|
-
});
|
|
41
|
-
}
|