@nommos/core 0.0.34 → 0.0.36
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/package.json +1 -1
- package/src/index.d.ts +3 -7
- package/src/index.js +6 -7
- package/src/index.js.map +1 -1
- package/src/lib/constants.d.ts +1 -0
- package/src/lib/constants.js +1 -0
- package/src/lib/constants.js.map +1 -1
- package/src/lib/data-attribution.js +52 -3
- package/src/lib/data-attribution.js.map +1 -1
- package/src/lib/enums.d.ts +7 -1
- package/src/lib/enums.js +6 -0
- package/src/lib/enums.js.map +1 -1
- package/src/lib/event-tracker.d.ts +17 -0
- package/src/lib/event-tracker.js +95 -27
- package/src/lib/event-tracker.js.map +1 -1
- package/src/lib/session-tracker.d.ts +2 -2
- package/src/lib/session-tracker.js +3 -6
- package/src/lib/session-tracker.js.map +1 -1
- package/src/lib/webSocket-client.d.ts +17 -4
- package/src/lib/webSocket-client.js +44 -16
- package/src/lib/webSocket-client.js.map +1 -1
package/package.json
CHANGED
package/src/index.d.ts
CHANGED
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
export
|
|
2
|
-
export
|
|
3
|
-
export
|
|
4
|
-
export * from './lib/constants';
|
|
5
|
-
export * from './lib/data-attribution';
|
|
6
|
-
export * from './lib/webSocket-client';
|
|
7
|
-
export * from './lib/event-tracker';
|
|
1
|
+
export { EventTracker } from './lib/event-tracker';
|
|
2
|
+
export { ANALYTICS_ACTION, ANALYTICS_ACTION_STATE, SITE_SOURCE, } from './lib/enums';
|
|
3
|
+
export type { ConnectionConfig, UrlTrackingKey, AnalyticsEvent, TrackingControls, AdsEventsConfig, AdEventConfig, GoogleAdsConfig, GoogleConversionAction, } from './lib/types';
|
package/src/index.js
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
export
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
export
|
|
6
|
-
export
|
|
7
|
-
export * from './lib/event-tracker';
|
|
1
|
+
// Public API — only export what SDK consumers should interact with.
|
|
2
|
+
// Internal classes (WebSocketClient, DataAttribution), raw constants, and
|
|
3
|
+
// utility functions are intentionally NOT exported to keep the public surface
|
|
4
|
+
// stable and prevent unintended coupling to implementation details.
|
|
5
|
+
export { EventTracker } from './lib/event-tracker';
|
|
6
|
+
export { ANALYTICS_ACTION, ANALYTICS_ACTION_STATE, SITE_SOURCE, } from './lib/enums';
|
|
8
7
|
//# sourceMappingURL=index.js.map
|
package/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../nommos/core/src/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../nommos/core/src/index.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,0EAA0E;AAC1E,8EAA8E;AAC9E,oEAAoE;AAEpE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,WAAW,GACZ,MAAM,aAAa,CAAC"}
|
package/src/lib/constants.d.ts
CHANGED
|
@@ -19,5 +19,6 @@ export declare const SESSION_CHUNK_DURATION_MS: number;
|
|
|
19
19
|
export declare const SESSION_INACTIVITY_TIMEOUT_MS: number;
|
|
20
20
|
export declare const MAX_SESSION_CHUNK_BYTES: number;
|
|
21
21
|
export declare const MAX_BUFFERED_CHUNKS = 10;
|
|
22
|
+
export declare const MAX_BUFFERED_EVENTS = 200;
|
|
22
23
|
export declare const BROWSER_DEFS: UaDef[];
|
|
23
24
|
export declare const OS_DEFS: UaDef[];
|
package/src/lib/constants.js
CHANGED
|
@@ -21,6 +21,7 @@ export const SESSION_CHUNK_DURATION_MS = 5 * 60000; // 5 minutes
|
|
|
21
21
|
export const SESSION_INACTIVITY_TIMEOUT_MS = 5 * 60000; // 5 minutes
|
|
22
22
|
export const MAX_SESSION_CHUNK_BYTES = 20 * 1024 * 1024; // 20MB soft limit
|
|
23
23
|
export const MAX_BUFFERED_CHUNKS = 10; // Max session chunks to buffer offline
|
|
24
|
+
export const MAX_BUFFERED_EVENTS = 200; // Max analytics events to buffer offline
|
|
24
25
|
export const BROWSER_DEFS = [
|
|
25
26
|
[/Edg\/([\d.]+)/, 'Edge'],
|
|
26
27
|
[/OPR\/([\d.]+)/, 'Opera'],
|
package/src/lib/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../nommos/core/src/lib/constants.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,QAAQ,GAAG,uBAAuB,CAAC;AAChD,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,QAAQ,6BAA6B,CAAC;AACxE,sEAAsE;AAEtE,MAAM,CAAC,MAAM,UAAU,GAAG,aAAa,CAAC;AACxC,MAAM,CAAC,MAAM,aAAa,GAAG,gBAAgB,CAAC;AAC9C,MAAM,CAAC,MAAM,cAAc,GAAG,iBAAiB,CAAC;AAChD,MAAM,CAAC,MAAM,qBAAqB,GAAG,wBAAwB,CAAC,CAAC,6BAA6B;AAC5F,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AACrD,MAAM,CAAC,MAAM,WAAW,GAAG,gBAAgB,CAAC;AAC5C,MAAM,CAAC,MAAM,eAAe,GAAG,sBAAsB,CAAC;AACtD,MAAM,CAAC,MAAM,uBAAuB,GAAG,+BAA+B,CAAC;AAEvE,wBAAwB;AACxB,MAAM,CAAC,MAAM,gBAAgB,GAAG,cAAc,CAAC;AAC/C,MAAM,CAAC,MAAM,mBAAmB,GAAG,iBAAiB,CAAC;AACrD,MAAM,CAAC,MAAM,qBAAqB,GAAG,mBAAmB,CAAC;AACzD,MAAM,CAAC,MAAM,mBAAmB,GAAG,iBAAiB,CAAC;AAErD,MAAM,CAAC,MAAM,mBAAmB,GAAG,gDAAgD,CAAC;AACpF,MAAM,CAAC,MAAM,eAAe,GAAG,0CAA0C,CAAC;AAE1E,6BAA6B;AAC7B,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,GAAG,KAAM,CAAC,CAAC,YAAY;AACjE,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,GAAG,KAAM,CAAC,CAAC,YAAY;AACrE,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,kBAAkB;AAC3E,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,CAAC,CAAC,uCAAuC;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../nommos/core/src/lib/constants.ts"],"names":[],"mappings":"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"}
|
|
@@ -106,12 +106,61 @@ export class DataAttribution {
|
|
|
106
106
|
const affiliate = this.urlTrackingKey.affiliateKey
|
|
107
107
|
? queryParams?.[this.urlTrackingKey.affiliateKey]
|
|
108
108
|
: undefined; // affiliate code
|
|
109
|
-
shouldStrip = affiliate !== undefined;
|
|
109
|
+
shouldStrip || (shouldStrip = affiliate !== undefined);
|
|
110
110
|
this.capturePartnerParams(parrainage, affiliate);
|
|
111
111
|
}
|
|
112
|
-
// Ensure default source
|
|
112
|
+
// Ensure default source – try referrer before falling back to DIRECT
|
|
113
113
|
if (!sessionStorage.getItem(SOURCE_KEY)) {
|
|
114
|
-
|
|
114
|
+
const referrer = typeof document !== 'undefined' ? document.referrer : '';
|
|
115
|
+
let inferredSource = SITE_SOURCE.DIRECT;
|
|
116
|
+
if (referrer) {
|
|
117
|
+
try {
|
|
118
|
+
const refUrl = new URL(referrer);
|
|
119
|
+
const currentHostname = typeof window !== 'undefined' ? window.location.hostname : '';
|
|
120
|
+
// Only attribute if it's an EXTERNAL referrer
|
|
121
|
+
if (refUrl.hostname && refUrl.hostname !== currentHostname) {
|
|
122
|
+
const host = refUrl.hostname.toLowerCase();
|
|
123
|
+
// 1. High-value "Pretty" Mappings
|
|
124
|
+
if (host.includes('facebook.com') || host.includes('fb.com') || host.includes('messenger.com')) {
|
|
125
|
+
inferredSource = SITE_SOURCE.FACEBOOK;
|
|
126
|
+
}
|
|
127
|
+
else if (host.includes('instagram.com')) {
|
|
128
|
+
inferredSource = SITE_SOURCE.INSTAGRAM;
|
|
129
|
+
}
|
|
130
|
+
else if (host.includes('t.me') || host.includes('telegram.org')) {
|
|
131
|
+
inferredSource = SITE_SOURCE.TELEGRAM;
|
|
132
|
+
}
|
|
133
|
+
else if (host.includes('twitter.com') || host.includes('x.com')) {
|
|
134
|
+
inferredSource = SITE_SOURCE.TWITTER;
|
|
135
|
+
}
|
|
136
|
+
else if (host.includes('google.')) {
|
|
137
|
+
inferredSource = SITE_SOURCE.GOOGLE;
|
|
138
|
+
}
|
|
139
|
+
else if (host.includes('tiktok.com')) {
|
|
140
|
+
inferredSource = SITE_SOURCE.TIKTOK;
|
|
141
|
+
}
|
|
142
|
+
else if (host.includes('youtube.com') || host.includes('youtu.be')) {
|
|
143
|
+
inferredSource = SITE_SOURCE.YOUTUBE;
|
|
144
|
+
}
|
|
145
|
+
else if (host.includes('whatsapp.com') || host.includes('wa.me')) {
|
|
146
|
+
inferredSource = SITE_SOURCE.WHATSAPP;
|
|
147
|
+
}
|
|
148
|
+
else {
|
|
149
|
+
// 2. Universal "Clean Domain" Mapping (cool-poker-blog.net -> COOL-POKER-BLOG)
|
|
150
|
+
inferredSource = host
|
|
151
|
+
.replace(/^www\./, '') // Remove www.
|
|
152
|
+
.split('.') // Split by dots
|
|
153
|
+
.slice(0, -1) // Remove the TLD (com, net, org, etc.)
|
|
154
|
+
.join('-') // Rejoin with hyphens if it was a multi-level subdomain
|
|
155
|
+
.toUpperCase();
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
catch (e) {
|
|
160
|
+
// If URL parsing fails, silent fallback to DIRECT
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
sessionStorage.setItem(SOURCE_KEY, inferredSource);
|
|
115
164
|
}
|
|
116
165
|
// Ensure affiliate key exists in session
|
|
117
166
|
if (!sessionStorage.getItem(AFFILIATE_KEY)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-attribution.js","sourceRoot":"","sources":["../../../../../nommos/core/src/lib/data-attribution.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"data-attribution.js","sourceRoot":"","sources":["../../../../../nommos/core/src/lib/data-attribution.ts"],"names":[],"mappings":"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"}
|
package/src/lib/enums.d.ts
CHANGED
|
@@ -26,5 +26,11 @@ export declare enum SITE_SOURCE {
|
|
|
26
26
|
TWITTER = "TWITTER",
|
|
27
27
|
TELEGRAM = "TELEGRAM",
|
|
28
28
|
DIRECT = "DIRECT",
|
|
29
|
-
SMS = "SMS"
|
|
29
|
+
SMS = "SMS",
|
|
30
|
+
GOOGLE = "GOOGLE",
|
|
31
|
+
TIKTOK = "TIKTOK",
|
|
32
|
+
YOUTUBE = "YOUTUBE",
|
|
33
|
+
EMAIL = "EMAIL",
|
|
34
|
+
WHATSAPP = "WHATSAPP",
|
|
35
|
+
AFFILIATE = "AFFILIATE"
|
|
30
36
|
}
|
package/src/lib/enums.js
CHANGED
|
@@ -30,5 +30,11 @@ export var SITE_SOURCE;
|
|
|
30
30
|
SITE_SOURCE["TELEGRAM"] = "TELEGRAM";
|
|
31
31
|
SITE_SOURCE["DIRECT"] = "DIRECT";
|
|
32
32
|
SITE_SOURCE["SMS"] = "SMS";
|
|
33
|
+
SITE_SOURCE["GOOGLE"] = "GOOGLE";
|
|
34
|
+
SITE_SOURCE["TIKTOK"] = "TIKTOK";
|
|
35
|
+
SITE_SOURCE["YOUTUBE"] = "YOUTUBE";
|
|
36
|
+
SITE_SOURCE["EMAIL"] = "EMAIL";
|
|
37
|
+
SITE_SOURCE["WHATSAPP"] = "WHATSAPP";
|
|
38
|
+
SITE_SOURCE["AFFILIATE"] = "AFFILIATE";
|
|
33
39
|
})(SITE_SOURCE || (SITE_SOURCE = {}));
|
|
34
40
|
//# sourceMappingURL=enums.js.map
|
package/src/lib/enums.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../../nommos/core/src/lib/enums.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,MAAM,CAAN,IAAY,gBAUX;AAVD,WAAY,gBAAgB;IAC1B,qCAAiB,CAAA;IACjB,iDAA6B,CAAA;IAC7B,+BAAW,CAAA;IACX,iCAAa,CAAA;IACb,6CAAyB,CAAA;IACzB,mCAAe,CAAA;IACf,uCAAmB,CAAA;IACnB,mCAAe,CAAA;IACf,qCAAiB,CAAA;AACnB,CAAC,EAVW,gBAAgB,KAAhB,gBAAgB,QAU3B;AAED,uDAAuD;AACvD,MAAM,CAAN,IAAY,sBAOX;AAPD,WAAY,sBAAsB;IAChC,2CAAiB,CAAA;IACjB,gDAAsB,CAAA;IACtB,2CAAiB,CAAA;IACjB,6CAAmB,CAAA;IACnB,6CAAmB,CAAA;IACnB,uCAAa,CAAA;AACf,CAAC,EAPW,sBAAsB,KAAtB,sBAAsB,QAOjC;AAED,wEAAwE;AACxE,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../../nommos/core/src/lib/enums.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,MAAM,CAAN,IAAY,gBAUX;AAVD,WAAY,gBAAgB;IAC1B,qCAAiB,CAAA;IACjB,iDAA6B,CAAA;IAC7B,+BAAW,CAAA;IACX,iCAAa,CAAA;IACb,6CAAyB,CAAA;IACzB,mCAAe,CAAA;IACf,uCAAmB,CAAA;IACnB,mCAAe,CAAA;IACf,qCAAiB,CAAA;AACnB,CAAC,EAVW,gBAAgB,KAAhB,gBAAgB,QAU3B;AAED,uDAAuD;AACvD,MAAM,CAAN,IAAY,sBAOX;AAPD,WAAY,sBAAsB;IAChC,2CAAiB,CAAA;IACjB,gDAAsB,CAAA;IACtB,2CAAiB,CAAA;IACjB,6CAAmB,CAAA;IACnB,6CAAmB,CAAA;IACnB,uCAAa,CAAA;AACf,CAAC,EAPW,sBAAsB,KAAtB,sBAAsB,QAOjC;AAED,wEAAwE;AACxE,MAAM,CAAN,IAAY,WAaX;AAbD,WAAY,WAAW;IACrB,oCAAqB,CAAA;IACrB,sCAAuB,CAAA;IACvB,kCAAmB,CAAA;IACnB,oCAAqB,CAAA;IACrB,gCAAiB,CAAA;IACjB,0BAAW,CAAA;IACX,gCAAiB,CAAA;IACjB,gCAAiB,CAAA;IACjB,kCAAmB,CAAA;IACnB,8BAAe,CAAA;IACf,oCAAqB,CAAA;IACrB,sCAAuB,CAAA;AACzB,CAAC,EAbW,WAAW,KAAX,WAAW,QAatB"}
|
|
@@ -2,6 +2,12 @@ import { AnalyticsEvent, ConnectionConfig, UrlTrackingKey } from './types';
|
|
|
2
2
|
import { ANALYTICS_ACTION, ANALYTICS_ACTION_STATE } from './enums';
|
|
3
3
|
export declare class EventTracker {
|
|
4
4
|
private readonly urlTrackingKey;
|
|
5
|
+
/**
|
|
6
|
+
* Tracks tokens that already have an active EventTracker instance.
|
|
7
|
+
* Used to warn developers when the same token is instantiated more than once,
|
|
8
|
+
* which would cause every event to be sent to the queue multiple times.
|
|
9
|
+
*/
|
|
10
|
+
private static readonly _activeTokens;
|
|
5
11
|
private readonly ws;
|
|
6
12
|
private readonly da;
|
|
7
13
|
private ipSubscription;
|
|
@@ -11,6 +17,17 @@ export declare class EventTracker {
|
|
|
11
17
|
analyticsEvents$: import("rxjs").Observable<AnalyticsEvent>;
|
|
12
18
|
private sessionTracker;
|
|
13
19
|
private readonly sessionId;
|
|
20
|
+
/** Tracks the last URL that da.init() was called with to avoid redundant re-captures. */
|
|
21
|
+
private lastCapturedUrl;
|
|
22
|
+
/** Instance-level flags to prevent duplicate ad pixel script injection. */
|
|
23
|
+
private fbPixelLoaded;
|
|
24
|
+
private gtagLoaded;
|
|
25
|
+
/**
|
|
26
|
+
* Emits `true` once bootstrap has completed successfully and the tracker
|
|
27
|
+
* is fully ready. Emits `false` if bootstrap failed.
|
|
28
|
+
*/
|
|
29
|
+
private readonly readySubject;
|
|
30
|
+
readonly isReady$: import("rxjs").Observable<boolean>;
|
|
14
31
|
/**
|
|
15
32
|
* Internal state map used to track SELECT/UNSELECT status of toggleable actions.
|
|
16
33
|
*/
|
package/src/lib/event-tracker.js
CHANGED
|
@@ -21,6 +21,17 @@ export class EventTracker {
|
|
|
21
21
|
this.analyticsEvents$ = this.analyticsEvents.asObservable();
|
|
22
22
|
this.sessionTracker = null;
|
|
23
23
|
this.sessionId = uuidv4();
|
|
24
|
+
/** Tracks the last URL that da.init() was called with to avoid redundant re-captures. */
|
|
25
|
+
this.lastCapturedUrl = null;
|
|
26
|
+
/** Instance-level flags to prevent duplicate ad pixel script injection. */
|
|
27
|
+
this.fbPixelLoaded = false;
|
|
28
|
+
this.gtagLoaded = false;
|
|
29
|
+
/**
|
|
30
|
+
* Emits `true` once bootstrap has completed successfully and the tracker
|
|
31
|
+
* is fully ready. Emits `false` if bootstrap failed.
|
|
32
|
+
*/
|
|
33
|
+
this.readySubject = new Subject();
|
|
34
|
+
this.isReady$ = this.readySubject.asObservable();
|
|
24
35
|
/**
|
|
25
36
|
* Internal state map used to track SELECT/UNSELECT status of toggleable actions.
|
|
26
37
|
*/
|
|
@@ -38,8 +49,23 @@ export class EventTracker {
|
|
|
38
49
|
this.cfg = {
|
|
39
50
|
...config,
|
|
40
51
|
};
|
|
52
|
+
// Warn in dev mode if another instance with the same token is already active.
|
|
53
|
+
// This prevents duplicate events being sent to the queue.
|
|
54
|
+
if (this.cfg.token) {
|
|
55
|
+
if (EventTracker._activeTokens.has(this.cfg.token) && this.cfg.mode === 'dev') {
|
|
56
|
+
console.warn('[Nommos Tracker] Warning: Multiple EventTracker instances detected for the same token.' +
|
|
57
|
+
' This will cause duplicate events. Ensure EventTracker is used as a singleton.');
|
|
58
|
+
}
|
|
59
|
+
EventTracker._activeTokens.add(this.cfg.token);
|
|
60
|
+
}
|
|
41
61
|
this.ws = new WebSocketClient();
|
|
42
62
|
this.da = new DataAttribution(urlTrackingKey);
|
|
63
|
+
// Capture tracking params immediately from the raw URL before the SPA router
|
|
64
|
+
// can strip or replace the query string.
|
|
65
|
+
if (typeof window !== 'undefined') {
|
|
66
|
+
this.da.init(window.location.href, { stripFromUrl: false });
|
|
67
|
+
this.lastCapturedUrl = window.location.href;
|
|
68
|
+
}
|
|
43
69
|
// Subscribe immediately so events fired before config loads are correctly buffered by WebSocketClient
|
|
44
70
|
this.eventSubscription = this.analyticsEvents$.subscribe((track) => {
|
|
45
71
|
this.ws.publishAnalyticsMessage(track);
|
|
@@ -110,11 +136,17 @@ export class EventTracker {
|
|
|
110
136
|
if (adId) {
|
|
111
137
|
data = { ...data, ad_id: adId };
|
|
112
138
|
}
|
|
113
|
-
|
|
139
|
+
// Only re-run attribution if the URL has actually changed
|
|
140
|
+
if (urlToParse !== this.lastCapturedUrl) {
|
|
141
|
+
this.da.init(urlToParse, { stripFromUrl: false });
|
|
142
|
+
this.lastCapturedUrl = urlToParse;
|
|
143
|
+
}
|
|
114
144
|
}
|
|
115
145
|
}
|
|
116
146
|
catch (e) {
|
|
117
|
-
|
|
147
|
+
if (this.cfg.mode === 'dev') {
|
|
148
|
+
console.warn('[Nommos Tracker] VISIT URL parsing failed:', e);
|
|
149
|
+
}
|
|
118
150
|
}
|
|
119
151
|
}
|
|
120
152
|
const { channel, os, browser } = userAgentInfo(navigator.userAgent || '');
|
|
@@ -157,37 +189,38 @@ export class EventTracker {
|
|
|
157
189
|
const ttclid = params['ttclid'];
|
|
158
190
|
const utmContent = params['utm_content'];
|
|
159
191
|
const hasNewClickId = !!(fbclid || gclid || ttclid);
|
|
192
|
+
// Initialize scripts ALWAYS if they exist in config, regardless of click ID
|
|
193
|
+
if (this.cfg.ads_events?.facebook) {
|
|
194
|
+
this.initFacebookPixel(fbclid, utmContent, !fbclid);
|
|
195
|
+
}
|
|
196
|
+
if (this.cfg.ads_events?.google) {
|
|
197
|
+
this.initGoogleAds(gclid, !gclid);
|
|
198
|
+
}
|
|
160
199
|
if (hasNewClickId) {
|
|
161
200
|
if (this.cfg.mode === 'dev') {
|
|
162
201
|
const ids = { fbclid, gclid, ttclid };
|
|
163
202
|
const found = Object.entries(ids).filter(([_, v]) => !!v).map(([k, v]) => `${k}=${v}`).join(', ');
|
|
164
203
|
console.log(`[Nommos Tracker] Ad Click ID detected: ${found}`);
|
|
165
204
|
}
|
|
166
|
-
// Clear previous attribution if a
|
|
205
|
+
// Clear previous attribution only if a NEW click ID is detected
|
|
206
|
+
// Note: initFacebookPixel/initGoogleAds handle setting new values if fbclid/gclid are passed
|
|
167
207
|
sessionStorage.removeItem(ACTIVE_AD_ID_KEY);
|
|
168
208
|
sessionStorage.removeItem(ACTIVE_PIXEL_ID_KEY);
|
|
169
209
|
sessionStorage.removeItem(ACTIVE_EVENT_TYPE_KEY);
|
|
170
210
|
sessionStorage.removeItem(ACTIVE_PLATFORM_KEY);
|
|
211
|
+
// Re-trigger with the new IDs to ensure session storage is updated
|
|
171
212
|
if (fbclid && this.cfg.ads_events?.facebook) {
|
|
172
213
|
this.initFacebookPixel(fbclid, utmContent);
|
|
173
214
|
}
|
|
174
215
|
else if (gclid && this.cfg.ads_events?.google) {
|
|
175
216
|
this.initGoogleAds(gclid);
|
|
176
217
|
}
|
|
177
|
-
// TikTok initialization would go here in the future
|
|
178
218
|
}
|
|
179
219
|
else {
|
|
180
|
-
// Restore from sessionStorage if no new click ID
|
|
181
220
|
const platform = sessionStorage.getItem(ACTIVE_PLATFORM_KEY);
|
|
182
221
|
if (platform && this.cfg.mode === 'dev') {
|
|
183
222
|
console.log(`[Nommos Tracker] Restored ad attribution from previous session: ${platform}`);
|
|
184
223
|
}
|
|
185
|
-
if (platform === 'facebook' && this.cfg.ads_events?.facebook) {
|
|
186
|
-
this.initFacebookPixel(null, null, true);
|
|
187
|
-
}
|
|
188
|
-
else if (platform === 'google' && this.cfg.ads_events?.google) {
|
|
189
|
-
this.initGoogleAds(null, true);
|
|
190
|
-
}
|
|
191
224
|
}
|
|
192
225
|
}
|
|
193
226
|
initGoogleAds(gclid, restore = false) {
|
|
@@ -197,8 +230,9 @@ export class EventTracker {
|
|
|
197
230
|
if (!googleConfig || !googleConfig.gtag)
|
|
198
231
|
return;
|
|
199
232
|
const gtagId = googleConfig.gtag;
|
|
200
|
-
//
|
|
201
|
-
if (!
|
|
233
|
+
// Use instance-level flag to guard against duplicate script injection
|
|
234
|
+
if (!this.gtagLoaded) {
|
|
235
|
+
this.gtagLoaded = true;
|
|
202
236
|
if (this.cfg.mode === 'dev') {
|
|
203
237
|
console.log(`[Nommos Tracker] Loading Google Ads gtag.js (${gtagId})...`);
|
|
204
238
|
}
|
|
@@ -239,8 +273,9 @@ export class EventTracker {
|
|
|
239
273
|
const fbConfig = this.cfg.ads_events?.facebook;
|
|
240
274
|
if (!fbConfig)
|
|
241
275
|
return;
|
|
242
|
-
//
|
|
243
|
-
if (!
|
|
276
|
+
// Use instance-level flag to guard against duplicate script injection
|
|
277
|
+
if (!this.fbPixelLoaded) {
|
|
278
|
+
this.fbPixelLoaded = true;
|
|
244
279
|
if (this.cfg.mode === 'dev') {
|
|
245
280
|
console.log('[Nommos Tracker] Loading Facebook Pixel script...');
|
|
246
281
|
}
|
|
@@ -291,18 +326,37 @@ export class EventTracker {
|
|
|
291
326
|
fireAdPixelEvent(action, state, data) {
|
|
292
327
|
if (typeof window === 'undefined')
|
|
293
328
|
return;
|
|
329
|
+
const fbConfig = this.cfg.ads_events?.facebook;
|
|
330
|
+
const googleConfig = this.cfg.ads_events?.google;
|
|
331
|
+
// 1. GLOBAL VISIT TRACKING (Facebook PageView & Google page_view)
|
|
332
|
+
if (action === ANALYTICS_ACTION.VISIT) {
|
|
333
|
+
// Facebook
|
|
334
|
+
if (fbConfig && window.fbq) {
|
|
335
|
+
const pixelIds = new Set(Object.values(fbConfig).map((ad) => ad.pixel_id));
|
|
336
|
+
pixelIds.forEach((id) => {
|
|
337
|
+
if (this.cfg.mode === 'dev') {
|
|
338
|
+
console.log('[Nommos Tracker] Firing PageView for Facebook Pixel ID (Global):', id);
|
|
339
|
+
}
|
|
340
|
+
window.fbq('trackSingle', id, 'PageView');
|
|
341
|
+
});
|
|
342
|
+
}
|
|
343
|
+
// Google
|
|
344
|
+
if (googleConfig && googleConfig.gtag && window.gtag) {
|
|
345
|
+
if (this.cfg.mode === 'dev') {
|
|
346
|
+
console.log('[Nommos Tracker] Firing page_view for Google Global ID:', googleConfig.gtag);
|
|
347
|
+
}
|
|
348
|
+
window.gtag('event', 'page_view', { send_to: googleConfig.gtag });
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
// 2. ATTRIBUTED EVENT TRACKING (Only if user has an active ad session)
|
|
294
352
|
const platform = sessionStorage.getItem(ACTIVE_PLATFORM_KEY);
|
|
295
353
|
const activePixelId = sessionStorage.getItem(ACTIVE_PIXEL_ID_KEY);
|
|
296
354
|
if (!platform || !activePixelId)
|
|
297
355
|
return;
|
|
298
356
|
const activeEventType = sessionStorage.getItem(ACTIVE_EVENT_TYPE_KEY);
|
|
299
|
-
//
|
|
300
|
-
if (action === ANALYTICS_ACTION.VISIT
|
|
301
|
-
|
|
302
|
-
console.log('[Nommos Tracker] Firing PageView for Facebook Pixel ID:', activePixelId);
|
|
303
|
-
}
|
|
304
|
-
window.fbq('trackSingle', activePixelId, 'PageView');
|
|
305
|
-
}
|
|
357
|
+
// Skip PageView here as it was handled above in the global section
|
|
358
|
+
if (action === ANALYTICS_ACTION.VISIT)
|
|
359
|
+
return;
|
|
306
360
|
if (platform === 'facebook' && activeEventType && window.fbq) {
|
|
307
361
|
let fbEvent = activeEventType;
|
|
308
362
|
let internalAction = activeEventType;
|
|
@@ -382,6 +436,7 @@ export class EventTracker {
|
|
|
382
436
|
if (this.cfg.mode === 'dev') {
|
|
383
437
|
console.error('[Nommos Tracker] Configuration is missing or failed to load. Tracking aborted.');
|
|
384
438
|
}
|
|
439
|
+
this.readySubject.next(false);
|
|
385
440
|
return;
|
|
386
441
|
}
|
|
387
442
|
this.da.setLoadedIP();
|
|
@@ -392,6 +447,7 @@ export class EventTracker {
|
|
|
392
447
|
if (this.cfg.mode === 'dev') {
|
|
393
448
|
console.warn('[Nommos Tracker] Tracking is globally disabled for this token.');
|
|
394
449
|
}
|
|
450
|
+
this.readySubject.next(false);
|
|
395
451
|
return;
|
|
396
452
|
}
|
|
397
453
|
// Initialize ad platform tracking (Facebook and future others)
|
|
@@ -400,13 +456,13 @@ export class EventTracker {
|
|
|
400
456
|
const sessionEnabled = this.cfg.controls?.session_tracking_enabled !== false;
|
|
401
457
|
if (!this.sessionTracker && sessionEnabled) {
|
|
402
458
|
const { channel } = userAgentInfo(navigator.userAgent || '');
|
|
403
|
-
this.sessionTracker = new SessionTracker(this.ws, this.cfg, this.da.browserId, this.da.userIp
|
|
459
|
+
this.sessionTracker = new SessionTracker(this.ws, this.cfg, this.da.browserId, () => this.da.userIp, // getter ensures each flush uses the most current IP
|
|
460
|
+
channel, this.sessionId);
|
|
404
461
|
this.sessionTracker.start();
|
|
405
462
|
}
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
}
|
|
463
|
+
// Enrich buffered events with IP and brand_id now that they are available
|
|
464
|
+
this.ws.enrichPendingEventsMeta(this.da.userIp, this.cfg.brand_id);
|
|
465
|
+
this.readySubject.next(true);
|
|
410
466
|
if (cfg.rabbitUrl && cfg.username && cfg.password) {
|
|
411
467
|
this.ws.connectAnalyticsStomp(cfg);
|
|
412
468
|
}
|
|
@@ -485,7 +541,19 @@ export class EventTracker {
|
|
|
485
541
|
this.ipSubscription?.unsubscribe();
|
|
486
542
|
this.eventSubscription?.unsubscribe();
|
|
487
543
|
this.webSocketConnectedSubscription?.unsubscribe();
|
|
544
|
+
this.readySubject.complete();
|
|
545
|
+
// Remove token from the active registry so a future re-instantiation
|
|
546
|
+
// does not incorrectly trigger the duplicate-instance warning.
|
|
547
|
+
if (this.cfg.token) {
|
|
548
|
+
EventTracker._activeTokens.delete(this.cfg.token);
|
|
549
|
+
}
|
|
488
550
|
this.sessionTracker?.stop();
|
|
489
551
|
}
|
|
490
552
|
}
|
|
553
|
+
/**
|
|
554
|
+
* Tracks tokens that already have an active EventTracker instance.
|
|
555
|
+
* Used to warn developers when the same token is instantiated more than once,
|
|
556
|
+
* which would cause every event to be sent to the queue multiple times.
|
|
557
|
+
*/
|
|
558
|
+
EventTracker._activeTokens = new Set();
|
|
491
559
|
//# sourceMappingURL=event-tracker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-tracker.js","sourceRoot":"","sources":["../../../../../nommos/core/src/lib/event-tracker.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"event-tracker.js","sourceRoot":"","sources":["../../../../../nommos/core/src/lib/event-tracker.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,7 +16,7 @@ export declare class SessionTracker {
|
|
|
16
16
|
private readonly ws;
|
|
17
17
|
private readonly cfg;
|
|
18
18
|
private readonly bid;
|
|
19
|
-
private readonly
|
|
19
|
+
private readonly getIp;
|
|
20
20
|
private readonly channel;
|
|
21
21
|
private readonly sessionId;
|
|
22
22
|
private events;
|
|
@@ -28,7 +28,7 @@ export declare class SessionTracker {
|
|
|
28
28
|
private boundBeforeUnload;
|
|
29
29
|
private boundActivityHandler;
|
|
30
30
|
private boundVisibilityHandler;
|
|
31
|
-
constructor(ws: WebSocketClient, cfg: FullConfig, bid: string,
|
|
31
|
+
constructor(ws: WebSocketClient, cfg: FullConfig, bid: string, getIp: () => string, channel: number, sessionId: string);
|
|
32
32
|
/**
|
|
33
33
|
* Initializes rrweb recording.
|
|
34
34
|
*/
|
|
@@ -13,11 +13,11 @@ import pako from 'pako';
|
|
|
13
13
|
* - Environment-safe (no-op on server-side)
|
|
14
14
|
*/
|
|
15
15
|
export class SessionTracker {
|
|
16
|
-
constructor(ws, cfg, bid,
|
|
16
|
+
constructor(ws, cfg, bid, getIp, channel, sessionId) {
|
|
17
17
|
this.ws = ws;
|
|
18
18
|
this.cfg = cfg;
|
|
19
19
|
this.bid = bid;
|
|
20
|
-
this.
|
|
20
|
+
this.getIp = getIp;
|
|
21
21
|
this.channel = channel;
|
|
22
22
|
this.sessionId = sessionId;
|
|
23
23
|
this.events = [];
|
|
@@ -51,9 +51,6 @@ export class SessionTracker {
|
|
|
51
51
|
if (this.isRecording || typeof window === 'undefined')
|
|
52
52
|
return;
|
|
53
53
|
try {
|
|
54
|
-
if (this.seq === 0) {
|
|
55
|
-
// Initial setup for a new recording
|
|
56
|
-
}
|
|
57
54
|
const rrweb = await import('rrweb');
|
|
58
55
|
this.stopFn = rrweb.record({
|
|
59
56
|
emit: (event, isCheckout) => {
|
|
@@ -165,7 +162,7 @@ export class SessionTracker {
|
|
|
165
162
|
apiKey: this.cfg.token || '',
|
|
166
163
|
bid: this.bid,
|
|
167
164
|
sessionId: this.sessionId,
|
|
168
|
-
ip: this.
|
|
165
|
+
ip: this.getIp(),
|
|
169
166
|
seq: this.seq++,
|
|
170
167
|
timestamp: Date.now(),
|
|
171
168
|
page: window.location.href,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-tracker.js","sourceRoot":"","sources":["../../../../../nommos/core/src/lib/session-tracker.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,6BAA6B,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAChH,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,cAAc;IAazB,YACmB,EAAmB,EACnB,GAAe,EACf,GAAW,EACX,
|
|
1
|
+
{"version":3,"file":"session-tracker.js","sourceRoot":"","sources":["../../../../../nommos/core/src/lib/session-tracker.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ import { AnalyticsEvent, FullConfig, SessionRecordingPayload } from './types';
|
|
|
6
6
|
* analytics events to a RabbitMQ broker. Includes:
|
|
7
7
|
* - connection lifecycle management
|
|
8
8
|
* - auto-reconnect support
|
|
9
|
-
* - offline event buffering
|
|
9
|
+
* - offline event buffering (capped to prevent memory leaks)
|
|
10
10
|
* - reactive connection status via RxJS
|
|
11
11
|
*
|
|
12
12
|
* Intended to be used inside applications where analytics events must
|
|
@@ -22,9 +22,12 @@ export declare class WebSocketClient {
|
|
|
22
22
|
/**
|
|
23
23
|
* Buffer containing analytics events produced before the socket
|
|
24
24
|
* becomes connected. They are automatically flushed on connection.
|
|
25
|
+
* Capped at MAX_BUFFERED_EVENTS to prevent memory leaks on long disconnections.
|
|
25
26
|
*/
|
|
26
|
-
|
|
27
|
-
|
|
27
|
+
private _pendingEvents;
|
|
28
|
+
private _pendingSessions;
|
|
29
|
+
/** Readonly view of buffered analytics events — do not mutate directly. */
|
|
30
|
+
get pendingEvents(): ReadonlyArray<AnalyticsEvent>;
|
|
28
31
|
private readonly stompAnalyticsConnected;
|
|
29
32
|
/**
|
|
30
33
|
* Reactive connection state for consumers who want to listen for
|
|
@@ -57,7 +60,8 @@ export declare class WebSocketClient {
|
|
|
57
60
|
* Publishes an analytics event to a RabbitMQ queue.
|
|
58
61
|
*
|
|
59
62
|
* If the connection is not ready, the event is automatically queued
|
|
60
|
-
* and delivered once the socket reconnects.
|
|
63
|
+
* and delivered once the socket reconnects. The buffer is capped at
|
|
64
|
+
* MAX_BUFFERED_EVENTS to prevent memory leaks on long disconnections.
|
|
61
65
|
*
|
|
62
66
|
* @param payload The analytics event to send.
|
|
63
67
|
*/
|
|
@@ -68,6 +72,15 @@ export declare class WebSocketClient {
|
|
|
68
72
|
* @param payload The session recording data to send.
|
|
69
73
|
*/
|
|
70
74
|
publishSessionRecordingMessage(payload: SessionRecordingPayload | string | Uint8Array): void;
|
|
75
|
+
/**
|
|
76
|
+
* Enriches all buffered (pending) analytics events with IP and brand_id
|
|
77
|
+
* once they become available after bootstrap. This is called after the
|
|
78
|
+
* async config and IP fetch complete.
|
|
79
|
+
*
|
|
80
|
+
* @param ip - The resolved public IP address of the user.
|
|
81
|
+
* @param brand_id - The brand identifier from backend config.
|
|
82
|
+
*/
|
|
83
|
+
enrichPendingEventsMeta(ip: string, brand_id: number | string | undefined): void;
|
|
71
84
|
/**
|
|
72
85
|
* Gracefully shuts down the STOMP client and updates connection status.
|
|
73
86
|
*
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Client } from '@stomp/stompjs';
|
|
2
2
|
import { BehaviorSubject } from 'rxjs';
|
|
3
|
-
import { ANALYTICS_QUEUE, MAX_BUFFERED_CHUNKS, SESSION_RECORDING_QUEUE } from './constants';
|
|
3
|
+
import { ANALYTICS_QUEUE, MAX_BUFFERED_CHUNKS, MAX_BUFFERED_EVENTS, SESSION_RECORDING_QUEUE } from './constants';
|
|
4
4
|
/**
|
|
5
5
|
* WebSocketClient
|
|
6
6
|
* ----------------
|
|
@@ -8,7 +8,7 @@ import { ANALYTICS_QUEUE, MAX_BUFFERED_CHUNKS, SESSION_RECORDING_QUEUE } from '.
|
|
|
8
8
|
* analytics events to a RabbitMQ broker. Includes:
|
|
9
9
|
* - connection lifecycle management
|
|
10
10
|
* - auto-reconnect support
|
|
11
|
-
* - offline event buffering
|
|
11
|
+
* - offline event buffering (capped to prevent memory leaks)
|
|
12
12
|
* - reactive connection status via RxJS
|
|
13
13
|
*
|
|
14
14
|
* Intended to be used inside applications where analytics events must
|
|
@@ -25,9 +25,10 @@ export class WebSocketClient {
|
|
|
25
25
|
/**
|
|
26
26
|
* Buffer containing analytics events produced before the socket
|
|
27
27
|
* becomes connected. They are automatically flushed on connection.
|
|
28
|
+
* Capped at MAX_BUFFERED_EVENTS to prevent memory leaks on long disconnections.
|
|
28
29
|
*/
|
|
29
|
-
this.
|
|
30
|
-
this.
|
|
30
|
+
this._pendingEvents = [];
|
|
31
|
+
this._pendingSessions = [];
|
|
31
32
|
this.stompAnalyticsConnected = new BehaviorSubject(false);
|
|
32
33
|
/**
|
|
33
34
|
* Reactive connection state for consumers who want to listen for
|
|
@@ -38,6 +39,10 @@ export class WebSocketClient {
|
|
|
38
39
|
*/
|
|
39
40
|
this.stompAnalyticsConnected$ = this.stompAnalyticsConnected.asObservable();
|
|
40
41
|
}
|
|
42
|
+
/** Readonly view of buffered analytics events — do not mutate directly. */
|
|
43
|
+
get pendingEvents() {
|
|
44
|
+
return this._pendingEvents;
|
|
45
|
+
}
|
|
41
46
|
/**
|
|
42
47
|
* Creates and configures a STOMP client instance.
|
|
43
48
|
*
|
|
@@ -86,15 +91,16 @@ export class WebSocketClient {
|
|
|
86
91
|
console.log('[Nommos Tracker] Connected');
|
|
87
92
|
}
|
|
88
93
|
this.stompAnalyticsConnected.next(true);
|
|
89
|
-
// flush pending events
|
|
90
|
-
for (const m of this.
|
|
94
|
+
// flush pending analytics events
|
|
95
|
+
for (const m of this._pendingEvents) {
|
|
91
96
|
this.publishAnalyticsMessage(m);
|
|
92
97
|
}
|
|
93
|
-
this.
|
|
94
|
-
|
|
98
|
+
this._pendingEvents = [];
|
|
99
|
+
// flush pending session recordings
|
|
100
|
+
for (const s of this._pendingSessions) {
|
|
95
101
|
this.publishSessionRecordingMessage(s);
|
|
96
102
|
}
|
|
97
|
-
this.
|
|
103
|
+
this._pendingSessions = [];
|
|
98
104
|
};
|
|
99
105
|
this.analyticsClient.onStompError = (frame) => {
|
|
100
106
|
if (this.cfg?.mode === 'dev') {
|
|
@@ -110,13 +116,21 @@ export class WebSocketClient {
|
|
|
110
116
|
* Publishes an analytics event to a RabbitMQ queue.
|
|
111
117
|
*
|
|
112
118
|
* If the connection is not ready, the event is automatically queued
|
|
113
|
-
* and delivered once the socket reconnects.
|
|
119
|
+
* and delivered once the socket reconnects. The buffer is capped at
|
|
120
|
+
* MAX_BUFFERED_EVENTS to prevent memory leaks on long disconnections.
|
|
114
121
|
*
|
|
115
122
|
* @param payload The analytics event to send.
|
|
116
123
|
*/
|
|
117
124
|
publishAnalyticsMessage(payload) {
|
|
118
|
-
if (!this.analyticsClient
|
|
119
|
-
this.
|
|
125
|
+
if (!this.analyticsClient || !this.analyticsClient.connected) {
|
|
126
|
+
this._pendingEvents.push(payload);
|
|
127
|
+
// Memory Guard: Drop oldest events if buffer exceeds limit
|
|
128
|
+
if (this._pendingEvents.length > MAX_BUFFERED_EVENTS) {
|
|
129
|
+
this._pendingEvents.shift();
|
|
130
|
+
if (this.cfg?.mode === 'dev') {
|
|
131
|
+
console.warn('[Nommos Tracker] Analytics event buffer full. Dropping oldest event.');
|
|
132
|
+
}
|
|
133
|
+
}
|
|
120
134
|
return;
|
|
121
135
|
}
|
|
122
136
|
this.analyticsClient.publish({
|
|
@@ -131,11 +145,11 @@ export class WebSocketClient {
|
|
|
131
145
|
* @param payload The session recording data to send.
|
|
132
146
|
*/
|
|
133
147
|
publishSessionRecordingMessage(payload) {
|
|
134
|
-
if (!this.analyticsClient
|
|
135
|
-
this.
|
|
148
|
+
if (!this.analyticsClient || !this.analyticsClient.connected) {
|
|
149
|
+
this._pendingSessions.push(payload);
|
|
136
150
|
// Memory Guard: Drop oldest chunks if buffer exceeds limit
|
|
137
|
-
if (this.
|
|
138
|
-
this.
|
|
151
|
+
if (this._pendingSessions.length > MAX_BUFFERED_CHUNKS) {
|
|
152
|
+
this._pendingSessions.shift();
|
|
139
153
|
if (this.cfg?.mode === 'dev') {
|
|
140
154
|
console.warn('[Nommos Tracker] Session recording buffer full. Dropping oldest chunk.');
|
|
141
155
|
}
|
|
@@ -153,6 +167,20 @@ export class WebSocketClient {
|
|
|
153
167
|
...(isBinary ? { binaryBody: payload } : { body: isCompressed ? payload : JSON.stringify(payload) }),
|
|
154
168
|
});
|
|
155
169
|
}
|
|
170
|
+
/**
|
|
171
|
+
* Enriches all buffered (pending) analytics events with IP and brand_id
|
|
172
|
+
* once they become available after bootstrap. This is called after the
|
|
173
|
+
* async config and IP fetch complete.
|
|
174
|
+
*
|
|
175
|
+
* @param ip - The resolved public IP address of the user.
|
|
176
|
+
* @param brand_id - The brand identifier from backend config.
|
|
177
|
+
*/
|
|
178
|
+
enrichPendingEventsMeta(ip, brand_id) {
|
|
179
|
+
for (const e of this._pendingEvents) {
|
|
180
|
+
e.ip = ip;
|
|
181
|
+
e.brand_id = brand_id;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
156
184
|
/**
|
|
157
185
|
* Gracefully shuts down the STOMP client and updates connection status.
|
|
158
186
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webSocket-client.js","sourceRoot":"","sources":["../../../../../nommos/core/src/lib/webSocket-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAExC,OAAO,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"webSocket-client.js","sourceRoot":"","sources":["../../../../../nommos/core/src/lib/webSocket-client.ts"],"names":[],"mappings":"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"}
|