swetrix 4.2.0 → 4.3.0
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 +49 -8
- package/dist/esnext/Lib.d.ts +73 -11
- package/dist/esnext/Lib.js +414 -11
- package/dist/esnext/Lib.js.map +1 -1
- package/dist/esnext/index.d.ts +18 -15
- package/dist/esnext/index.js +23 -15
- package/dist/esnext/index.js.map +1 -1
- package/dist/replaylibrary.min.js +173 -0
- package/dist/swetrix.cjs.js +441 -25
- package/dist/swetrix.cjs.js.map +1 -1
- package/dist/swetrix.es5.js +441 -26
- package/dist/swetrix.es5.js.map +1 -1
- package/dist/swetrix.js +1 -1
- package/dist/swetrix.js.map +1 -1
- package/jest.config.js +2 -0
- package/package.json +10 -7
- package/rollup.config.mjs +20 -0
- package/src/Lib.ts +579 -12
- package/src/index.ts +29 -14
- package/src/types/rrweb-shim.d.ts +11 -0
- package/tests/sessionReplay.test.ts +389 -0
- package/tsconfig.esnext.json +5 -1
- package/tsconfig.json +6 -1
- package/tsconfig.test.json +7 -0
package/dist/esnext/Lib.js
CHANGED
|
@@ -1,9 +1,27 @@
|
|
|
1
1
|
import { isInBrowser, isLocalhost, isAutomated, getLocale, getTimezone, getReferrer, getQueryString, getUTMCampaign, getUTMMedium, getUTMSource, getUTMTerm, getUTMContent, getPath, } from './utils.js';
|
|
2
|
+
const SESSION_REPLAY_PRIVACY_VALUES = ['total', 'normal', 'none'];
|
|
2
3
|
export const defaultActions = {
|
|
3
4
|
stop() { },
|
|
4
5
|
};
|
|
6
|
+
export const defaultSessionReplayActions = {
|
|
7
|
+
async stop() { },
|
|
8
|
+
async flush() { },
|
|
9
|
+
};
|
|
5
10
|
const DEFAULT_API_HOST = 'https://api.swetrix.com/log';
|
|
6
11
|
const DEFAULT_API_BASE = 'https://api.swetrix.com';
|
|
12
|
+
const DEFAULT_RRWEB_FILE = 'replaylibrary.min.js';
|
|
13
|
+
const DEFAULT_RRWEB_URL = `https://cdn.jsdelivr.net/npm/swetrix@latest/dist/${DEFAULT_RRWEB_FILE}`;
|
|
14
|
+
const DEFAULT_SESSION_REPLAY_FLUSH_INTERVAL = 5000;
|
|
15
|
+
const DEFAULT_SESSION_REPLAY_MAX_EVENTS = 100;
|
|
16
|
+
const DEFAULT_SESSION_REPLAY_PRIVACY = 'total';
|
|
17
|
+
const SESSION_REPLAY_ACTIVITY_EVENTS = [
|
|
18
|
+
'click',
|
|
19
|
+
'keydown',
|
|
20
|
+
'mousedown',
|
|
21
|
+
'mousemove',
|
|
22
|
+
'scroll',
|
|
23
|
+
'touchstart',
|
|
24
|
+
];
|
|
7
25
|
// Default cache duration: 5 minutes
|
|
8
26
|
const DEFAULT_CACHE_DURATION = 5 * 60 * 1000;
|
|
9
27
|
export class Lib {
|
|
@@ -17,9 +35,15 @@ export class Lib {
|
|
|
17
35
|
this.activePage = null;
|
|
18
36
|
this.errorListenerExists = false;
|
|
19
37
|
this.cachedData = null;
|
|
38
|
+
this.rrwebLoader = null;
|
|
39
|
+
this.sessionReplayActions = null;
|
|
40
|
+
this.sessionReplayInitPromise = null;
|
|
20
41
|
this.trackPathChange = this.trackPathChange.bind(this);
|
|
21
42
|
this.heartbeat = this.heartbeat.bind(this);
|
|
22
43
|
this.captureError = this.captureError.bind(this);
|
|
44
|
+
if (this.getSessionReplayPreloadOption()) {
|
|
45
|
+
void this.preloadSessionReplay().catch(() => undefined);
|
|
46
|
+
}
|
|
23
47
|
}
|
|
24
48
|
captureError(event) {
|
|
25
49
|
if (typeof this.errorsOptions?.sampleRate === 'number' && this.errorsOptions.sampleRate >= Math.random()) {
|
|
@@ -163,10 +187,10 @@ export class Lib {
|
|
|
163
187
|
};
|
|
164
188
|
}
|
|
165
189
|
/**
|
|
166
|
-
* Fetches all feature flags
|
|
167
|
-
* Results are cached for 5 minutes by default.
|
|
190
|
+
* Fetches all feature flags for the project.
|
|
191
|
+
* Results are cached for 5 minutes by default and share a cache with experiments.
|
|
168
192
|
*
|
|
169
|
-
* @param options - Options for evaluating feature flags.
|
|
193
|
+
* @param options - Options for evaluating feature flags (`profileId` only).
|
|
170
194
|
* @param forceRefresh - If true, bypasses the cache and fetches fresh data.
|
|
171
195
|
* @returns A promise that resolves to a record of flag keys to boolean values.
|
|
172
196
|
*/
|
|
@@ -231,8 +255,8 @@ export class Lib {
|
|
|
231
255
|
* Gets the value of a single feature flag.
|
|
232
256
|
*
|
|
233
257
|
* @param key - The feature flag key.
|
|
234
|
-
* @param options - Options for evaluating the feature flag.
|
|
235
|
-
* @param defaultValue -
|
|
258
|
+
* @param options - Options for evaluating the feature flag (`profileId` only).
|
|
259
|
+
* @param defaultValue - Optional default value to return if the flag is not found. Defaults to false.
|
|
236
260
|
* @returns A promise that resolves to the boolean value of the flag.
|
|
237
261
|
*/
|
|
238
262
|
async getFeatureFlag(key, options, defaultValue = false) {
|
|
@@ -246,16 +270,16 @@ export class Lib {
|
|
|
246
270
|
this.cachedData = null;
|
|
247
271
|
}
|
|
248
272
|
/**
|
|
249
|
-
* Fetches
|
|
273
|
+
* Fetches variant assignments for running A/B test experiments returned by feature flag evaluation.
|
|
250
274
|
* Results are cached for 5 minutes by default (shared cache with feature flags).
|
|
251
275
|
*
|
|
252
|
-
* @param options - Options for evaluating experiments.
|
|
276
|
+
* @param options - Options for evaluating experiments (`profileId` only).
|
|
253
277
|
* @param forceRefresh - If true, bypasses the cache and fetches fresh data.
|
|
254
278
|
* @returns A promise that resolves to a record of experiment IDs to variant keys.
|
|
255
279
|
*
|
|
256
280
|
* @example
|
|
257
281
|
* ```typescript
|
|
258
|
-
* const experiments = await getExperiments()
|
|
282
|
+
* const experiments = await getExperiments({ profileId: 'user-123' })
|
|
259
283
|
* // experiments = { 'exp-123': 'variant-a', 'exp-456': 'control' }
|
|
260
284
|
* ```
|
|
261
285
|
*/
|
|
@@ -285,13 +309,16 @@ export class Lib {
|
|
|
285
309
|
* Gets the variant key for a specific A/B test experiment.
|
|
286
310
|
*
|
|
287
311
|
* @param experimentId - The experiment ID.
|
|
288
|
-
* @param options - Options for evaluating the experiment.
|
|
289
|
-
* @param defaultVariant -
|
|
312
|
+
* @param options - Options for evaluating the experiment (`profileId` only).
|
|
313
|
+
* @param defaultVariant - Optional default variant key to return if the experiment is not found. Defaults to null.
|
|
290
314
|
* @returns A promise that resolves to the variant key assigned to this user, or defaultVariant if not found.
|
|
291
315
|
*
|
|
292
316
|
* @example
|
|
293
317
|
* ```typescript
|
|
294
|
-
* const variant = await getExperiment('checkout-redesign')
|
|
318
|
+
* const variant = await getExperiment('checkout-redesign', { profileId: 'user-123' })
|
|
319
|
+
*
|
|
320
|
+
* // Optional fallback variant:
|
|
321
|
+
* const variantWithFallback = await getExperiment('checkout-redesign', undefined, 'control')
|
|
295
322
|
*
|
|
296
323
|
* if (variant === 'new-checkout') {
|
|
297
324
|
* // Show new checkout flow
|
|
@@ -405,6 +432,166 @@ export class Lib {
|
|
|
405
432
|
return null;
|
|
406
433
|
}
|
|
407
434
|
}
|
|
435
|
+
async startSessionReplay(options = {}) {
|
|
436
|
+
if (this.sessionReplayActions) {
|
|
437
|
+
return this.sessionReplayActions;
|
|
438
|
+
}
|
|
439
|
+
if (this.sessionReplayInitPromise) {
|
|
440
|
+
return this.sessionReplayInitPromise;
|
|
441
|
+
}
|
|
442
|
+
const initPromise = this.initialiseSessionReplay(options);
|
|
443
|
+
this.sessionReplayInitPromise = initPromise;
|
|
444
|
+
try {
|
|
445
|
+
return await initPromise;
|
|
446
|
+
}
|
|
447
|
+
finally {
|
|
448
|
+
if (this.sessionReplayInitPromise === initPromise) {
|
|
449
|
+
this.sessionReplayInitPromise = null;
|
|
450
|
+
}
|
|
451
|
+
}
|
|
452
|
+
}
|
|
453
|
+
async initialiseSessionReplay(options) {
|
|
454
|
+
if (this.sessionReplayActions) {
|
|
455
|
+
return this.sessionReplayActions;
|
|
456
|
+
}
|
|
457
|
+
if (!this.canTrack()) {
|
|
458
|
+
return defaultSessionReplayActions;
|
|
459
|
+
}
|
|
460
|
+
if (!this.shouldSampleSessionReplay(options.sampleRate)) {
|
|
461
|
+
return defaultSessionReplayActions;
|
|
462
|
+
}
|
|
463
|
+
try {
|
|
464
|
+
await this.preloadSessionReplay();
|
|
465
|
+
}
|
|
466
|
+
catch {
|
|
467
|
+
return defaultSessionReplayActions;
|
|
468
|
+
}
|
|
469
|
+
const rrweb = window.rrweb;
|
|
470
|
+
if (!rrweb?.record) {
|
|
471
|
+
return defaultSessionReplayActions;
|
|
472
|
+
}
|
|
473
|
+
const privacy = this.getSessionReplayPrivacy(options.privacy);
|
|
474
|
+
const replayId = this.createReplayId();
|
|
475
|
+
const started = await this.sendSessionReplayStart(replayId, privacy);
|
|
476
|
+
if (!started) {
|
|
477
|
+
return defaultSessionReplayActions;
|
|
478
|
+
}
|
|
479
|
+
const flushIntervalMs = typeof options.flushIntervalMs === 'number' && options.flushIntervalMs > 0
|
|
480
|
+
? options.flushIntervalMs
|
|
481
|
+
: DEFAULT_SESSION_REPLAY_FLUSH_INTERVAL;
|
|
482
|
+
const maxEventsPerChunk = typeof options.maxEventsPerChunk === 'number' &&
|
|
483
|
+
options.maxEventsPerChunk > 0
|
|
484
|
+
? Math.floor(options.maxEventsPerChunk)
|
|
485
|
+
: DEFAULT_SESSION_REPLAY_MAX_EVENTS;
|
|
486
|
+
const maxDurationMs = typeof options.maxDurationMs === 'number' && options.maxDurationMs > 0
|
|
487
|
+
? options.maxDurationMs
|
|
488
|
+
: null;
|
|
489
|
+
const idleTimeoutMs = typeof options.idleTimeoutMs === 'number' && options.idleTimeoutMs > 0
|
|
490
|
+
? options.idleTimeoutMs
|
|
491
|
+
: null;
|
|
492
|
+
let chunkIndex = 0;
|
|
493
|
+
let stopped = false;
|
|
494
|
+
let events = [];
|
|
495
|
+
let flushing = Promise.resolve();
|
|
496
|
+
let maxDurationTimer;
|
|
497
|
+
let idleTimer;
|
|
498
|
+
const flush = async (useBeacon = false) => {
|
|
499
|
+
if (!events.length)
|
|
500
|
+
return;
|
|
501
|
+
const chunk = events;
|
|
502
|
+
events = [];
|
|
503
|
+
const currentChunkIndex = chunkIndex++;
|
|
504
|
+
flushing = flushing
|
|
505
|
+
.catch(() => undefined)
|
|
506
|
+
.then(() => this.sendSessionReplayChunk(replayId, privacy, currentChunkIndex, chunk, useBeacon));
|
|
507
|
+
await flushing;
|
|
508
|
+
};
|
|
509
|
+
const userEmit = options.rrweb?.emit;
|
|
510
|
+
const recordOptions = this.getSessionReplayRecordOptions(privacy, options.rrweb, (event) => {
|
|
511
|
+
try {
|
|
512
|
+
userEmit?.(event);
|
|
513
|
+
}
|
|
514
|
+
catch { }
|
|
515
|
+
events.push(event);
|
|
516
|
+
if (events.length >= maxEventsPerChunk) {
|
|
517
|
+
void flush();
|
|
518
|
+
}
|
|
519
|
+
});
|
|
520
|
+
const stopRecording = rrweb.record(recordOptions);
|
|
521
|
+
const timer = setInterval(() => void flush(), flushIntervalMs);
|
|
522
|
+
const flushOnPageExit = () => void flush(true);
|
|
523
|
+
const flushOnHidden = () => {
|
|
524
|
+
if (document.visibilityState === 'hidden') {
|
|
525
|
+
void flush(true);
|
|
526
|
+
}
|
|
527
|
+
};
|
|
528
|
+
const clearIdleTimer = () => {
|
|
529
|
+
if (idleTimer) {
|
|
530
|
+
clearTimeout(idleTimer);
|
|
531
|
+
idleTimer = undefined;
|
|
532
|
+
}
|
|
533
|
+
};
|
|
534
|
+
const stopSessionReplay = async () => {
|
|
535
|
+
if (stopped)
|
|
536
|
+
return;
|
|
537
|
+
stopped = true;
|
|
538
|
+
clearInterval(timer);
|
|
539
|
+
if (maxDurationTimer) {
|
|
540
|
+
clearTimeout(maxDurationTimer);
|
|
541
|
+
}
|
|
542
|
+
clearIdleTimer();
|
|
543
|
+
window.removeEventListener('pagehide', flushOnPageExit);
|
|
544
|
+
document.removeEventListener('visibilitychange', flushOnHidden);
|
|
545
|
+
SESSION_REPLAY_ACTIVITY_EVENTS.forEach((eventName) => {
|
|
546
|
+
window.removeEventListener(eventName, resetIdleTimer);
|
|
547
|
+
});
|
|
548
|
+
stopRecording?.();
|
|
549
|
+
await flush();
|
|
550
|
+
this.sessionReplayActions = null;
|
|
551
|
+
this.sessionReplayInitPromise = null;
|
|
552
|
+
};
|
|
553
|
+
const resetIdleTimer = () => {
|
|
554
|
+
if (!idleTimeoutMs || stopped)
|
|
555
|
+
return;
|
|
556
|
+
clearIdleTimer();
|
|
557
|
+
idleTimer = setTimeout(() => void stopSessionReplay(), idleTimeoutMs);
|
|
558
|
+
};
|
|
559
|
+
window.addEventListener('pagehide', flushOnPageExit);
|
|
560
|
+
document.addEventListener('visibilitychange', flushOnHidden);
|
|
561
|
+
if (maxDurationMs) {
|
|
562
|
+
maxDurationTimer = setTimeout(() => void stopSessionReplay(), maxDurationMs);
|
|
563
|
+
}
|
|
564
|
+
if (idleTimeoutMs) {
|
|
565
|
+
SESSION_REPLAY_ACTIVITY_EVENTS.forEach((eventName) => {
|
|
566
|
+
window.addEventListener(eventName, resetIdleTimer, { passive: true });
|
|
567
|
+
});
|
|
568
|
+
resetIdleTimer();
|
|
569
|
+
}
|
|
570
|
+
this.sessionReplayActions = {
|
|
571
|
+
stop: stopSessionReplay,
|
|
572
|
+
flush: async () => {
|
|
573
|
+
await flush();
|
|
574
|
+
},
|
|
575
|
+
};
|
|
576
|
+
return this.sessionReplayActions;
|
|
577
|
+
}
|
|
578
|
+
shouldSampleSessionReplay(sampleRate) {
|
|
579
|
+
if (typeof sampleRate !== 'number') {
|
|
580
|
+
return true;
|
|
581
|
+
}
|
|
582
|
+
if (sampleRate <= 0) {
|
|
583
|
+
return false;
|
|
584
|
+
}
|
|
585
|
+
if (sampleRate >= 1) {
|
|
586
|
+
return true;
|
|
587
|
+
}
|
|
588
|
+
return Math.random() < sampleRate;
|
|
589
|
+
}
|
|
590
|
+
getSessionReplayPrivacy(privacy) {
|
|
591
|
+
return SESSION_REPLAY_PRIVACY_VALUES.includes(privacy)
|
|
592
|
+
? privacy
|
|
593
|
+
: DEFAULT_SESSION_REPLAY_PRIVACY;
|
|
594
|
+
}
|
|
408
595
|
/**
|
|
409
596
|
* Gets the API base URL (without /log suffix).
|
|
410
597
|
*/
|
|
@@ -489,6 +676,222 @@ export class Lib {
|
|
|
489
676
|
}
|
|
490
677
|
return true;
|
|
491
678
|
}
|
|
679
|
+
getSessionReplayUrl() {
|
|
680
|
+
const replayOption = this.getSessionReplayPreloadOption();
|
|
681
|
+
if (replayOption &&
|
|
682
|
+
typeof replayOption === 'object' &&
|
|
683
|
+
replayOption.rrwebUrl) {
|
|
684
|
+
return replayOption.rrwebUrl;
|
|
685
|
+
}
|
|
686
|
+
return this.getDefaultSessionReplayUrl();
|
|
687
|
+
}
|
|
688
|
+
getSessionReplayPreloadOption() {
|
|
689
|
+
return this.options?.preloadSessionReplay;
|
|
690
|
+
}
|
|
691
|
+
getDefaultSessionReplayUrl() {
|
|
692
|
+
if (!isInBrowser()) {
|
|
693
|
+
return DEFAULT_RRWEB_URL;
|
|
694
|
+
}
|
|
695
|
+
const trackerScript = this.getTrackerScript();
|
|
696
|
+
if (trackerScript?.src) {
|
|
697
|
+
const { hostname, pathname } = new URL(trackerScript.src);
|
|
698
|
+
if (hostname === 'swetrix.org' &&
|
|
699
|
+
/^\/swetrix(\.min)?\.js$/i.test(pathname)) {
|
|
700
|
+
return DEFAULT_RRWEB_URL;
|
|
701
|
+
}
|
|
702
|
+
return new URL(DEFAULT_RRWEB_FILE, trackerScript.src).toString();
|
|
703
|
+
}
|
|
704
|
+
return DEFAULT_RRWEB_URL;
|
|
705
|
+
}
|
|
706
|
+
getTrackerScript() {
|
|
707
|
+
const trackerScript = Array.from(document.scripts).find((script) => {
|
|
708
|
+
if (!script.src) {
|
|
709
|
+
return false;
|
|
710
|
+
}
|
|
711
|
+
try {
|
|
712
|
+
const { pathname } = new URL(script.src);
|
|
713
|
+
return /(^|\/)swetrix(\.min)?\.js$/i.test(pathname);
|
|
714
|
+
}
|
|
715
|
+
catch {
|
|
716
|
+
return false;
|
|
717
|
+
}
|
|
718
|
+
});
|
|
719
|
+
return trackerScript;
|
|
720
|
+
}
|
|
721
|
+
preloadSessionReplay() {
|
|
722
|
+
if (!isInBrowser()) {
|
|
723
|
+
return Promise.resolve();
|
|
724
|
+
}
|
|
725
|
+
if (window.rrweb?.record) {
|
|
726
|
+
return Promise.resolve();
|
|
727
|
+
}
|
|
728
|
+
if (this.rrwebLoader) {
|
|
729
|
+
return this.rrwebLoader;
|
|
730
|
+
}
|
|
731
|
+
if (window.__SWETRIX_RRWEB_LOADING__) {
|
|
732
|
+
this.rrwebLoader = window.__SWETRIX_RRWEB_LOADING__;
|
|
733
|
+
void this.rrwebLoader.catch(() => {
|
|
734
|
+
if (window.__SWETRIX_RRWEB_LOADING__ === this.rrwebLoader) {
|
|
735
|
+
delete window.__SWETRIX_RRWEB_LOADING__;
|
|
736
|
+
}
|
|
737
|
+
this.rrwebLoader = null;
|
|
738
|
+
});
|
|
739
|
+
return this.rrwebLoader;
|
|
740
|
+
}
|
|
741
|
+
this.rrwebLoader = this.loadSessionReplayRecorder();
|
|
742
|
+
window.__SWETRIX_RRWEB_LOADING__ = this.rrwebLoader;
|
|
743
|
+
const loader = this.rrwebLoader;
|
|
744
|
+
void loader.catch(() => {
|
|
745
|
+
if (window.__SWETRIX_RRWEB_LOADING__ === loader) {
|
|
746
|
+
delete window.__SWETRIX_RRWEB_LOADING__;
|
|
747
|
+
}
|
|
748
|
+
if (this.rrwebLoader === loader) {
|
|
749
|
+
this.rrwebLoader = null;
|
|
750
|
+
}
|
|
751
|
+
});
|
|
752
|
+
return this.rrwebLoader;
|
|
753
|
+
}
|
|
754
|
+
async loadSessionReplayRecorder() {
|
|
755
|
+
const replayOption = this.getSessionReplayPreloadOption();
|
|
756
|
+
const hasCustomReplayUrl = replayOption && typeof replayOption === 'object' && replayOption.rrwebUrl;
|
|
757
|
+
if (hasCustomReplayUrl || this.getTrackerScript()) {
|
|
758
|
+
await this.loadSessionReplayScript(this.getSessionReplayUrl());
|
|
759
|
+
return;
|
|
760
|
+
}
|
|
761
|
+
if (await this.loadSessionReplayPackage()) {
|
|
762
|
+
return;
|
|
763
|
+
}
|
|
764
|
+
await this.loadSessionReplayScript(this.getDefaultSessionReplayUrl());
|
|
765
|
+
}
|
|
766
|
+
async loadSessionReplayPackage() {
|
|
767
|
+
try {
|
|
768
|
+
const rrwebModule = (await import('rrweb'));
|
|
769
|
+
const rrweb = rrwebModule.record ? rrwebModule : rrwebModule.default;
|
|
770
|
+
if (!rrweb?.record) {
|
|
771
|
+
return false;
|
|
772
|
+
}
|
|
773
|
+
window.rrweb = rrweb;
|
|
774
|
+
return true;
|
|
775
|
+
}
|
|
776
|
+
catch {
|
|
777
|
+
return false;
|
|
778
|
+
}
|
|
779
|
+
}
|
|
780
|
+
loadSessionReplayScript(url) {
|
|
781
|
+
return new Promise((resolve, reject) => {
|
|
782
|
+
const script = document.createElement('script');
|
|
783
|
+
script.async = true;
|
|
784
|
+
script.src = url;
|
|
785
|
+
script.crossOrigin = 'anonymous';
|
|
786
|
+
script.onload = () => resolve();
|
|
787
|
+
script.onerror = () => reject(new Error('Failed to load rrweb'));
|
|
788
|
+
document.head.appendChild(script);
|
|
789
|
+
});
|
|
790
|
+
}
|
|
791
|
+
getSessionReplayRecordOptions(privacy, userOptions, emit) {
|
|
792
|
+
const options = {
|
|
793
|
+
...userOptions,
|
|
794
|
+
emit,
|
|
795
|
+
};
|
|
796
|
+
const maskInputOptions = typeof options.maskInputOptions === 'object' &&
|
|
797
|
+
options.maskInputOptions !== null
|
|
798
|
+
? options.maskInputOptions
|
|
799
|
+
: {};
|
|
800
|
+
const resolvedPrivacy = this.getSessionReplayPrivacy(privacy);
|
|
801
|
+
if (resolvedPrivacy === 'total') {
|
|
802
|
+
return {
|
|
803
|
+
...options,
|
|
804
|
+
maskAllInputs: true,
|
|
805
|
+
maskTextSelector: '*',
|
|
806
|
+
blockSelector: this.mergeSelectors(options.blockSelector, 'img, picture, video, audio, canvas, svg'),
|
|
807
|
+
recordCanvas: false,
|
|
808
|
+
inlineImages: false,
|
|
809
|
+
emit,
|
|
810
|
+
};
|
|
811
|
+
}
|
|
812
|
+
if (resolvedPrivacy === 'normal') {
|
|
813
|
+
return {
|
|
814
|
+
...options,
|
|
815
|
+
maskAllInputs: true,
|
|
816
|
+
emit,
|
|
817
|
+
};
|
|
818
|
+
}
|
|
819
|
+
return {
|
|
820
|
+
...options,
|
|
821
|
+
maskInputOptions: {
|
|
822
|
+
...maskInputOptions,
|
|
823
|
+
password: true,
|
|
824
|
+
},
|
|
825
|
+
emit,
|
|
826
|
+
};
|
|
827
|
+
}
|
|
828
|
+
mergeSelectors(existing, required) {
|
|
829
|
+
if (typeof existing === 'string' && existing.trim()) {
|
|
830
|
+
return `${existing}, ${required}`;
|
|
831
|
+
}
|
|
832
|
+
return required;
|
|
833
|
+
}
|
|
834
|
+
createReplayId() {
|
|
835
|
+
if (typeof crypto !== 'undefined' && 'randomUUID' in crypto) {
|
|
836
|
+
return crypto.randomUUID();
|
|
837
|
+
}
|
|
838
|
+
return `${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`;
|
|
839
|
+
}
|
|
840
|
+
async sendSessionReplayStart(replayId, privacy) {
|
|
841
|
+
try {
|
|
842
|
+
const apiBase = this.getApiBase();
|
|
843
|
+
const response = await fetch(`${apiBase}/log/session-replay/start`, {
|
|
844
|
+
method: 'POST',
|
|
845
|
+
headers: {
|
|
846
|
+
'Content-Type': 'application/json',
|
|
847
|
+
},
|
|
848
|
+
body: JSON.stringify({
|
|
849
|
+
pid: this.projectID,
|
|
850
|
+
replayId,
|
|
851
|
+
privacy,
|
|
852
|
+
pg: this.activePage ||
|
|
853
|
+
getPath({
|
|
854
|
+
hash: this.pageViewsOptions?.hash,
|
|
855
|
+
search: this.pageViewsOptions?.search,
|
|
856
|
+
}),
|
|
857
|
+
lc: getLocale(),
|
|
858
|
+
tz: getTimezone(),
|
|
859
|
+
profileId: this.options?.profileId,
|
|
860
|
+
}),
|
|
861
|
+
});
|
|
862
|
+
return response.ok;
|
|
863
|
+
}
|
|
864
|
+
catch {
|
|
865
|
+
return false;
|
|
866
|
+
}
|
|
867
|
+
}
|
|
868
|
+
async sendSessionReplayChunk(replayId, privacy, chunkIndex, events, useBeacon) {
|
|
869
|
+
const apiBase = this.getApiBase();
|
|
870
|
+
const url = `${apiBase}/log/session-replay/chunk`;
|
|
871
|
+
const payload = JSON.stringify({
|
|
872
|
+
pid: this.projectID,
|
|
873
|
+
replayId,
|
|
874
|
+
privacy,
|
|
875
|
+
chunkIndex,
|
|
876
|
+
events,
|
|
877
|
+
});
|
|
878
|
+
if (useBeacon && typeof navigator.sendBeacon === 'function') {
|
|
879
|
+
const sent = navigator.sendBeacon(url, new Blob([payload], { type: 'application/json' }));
|
|
880
|
+
if (sent)
|
|
881
|
+
return;
|
|
882
|
+
}
|
|
883
|
+
try {
|
|
884
|
+
await fetch(url, {
|
|
885
|
+
method: 'POST',
|
|
886
|
+
headers: {
|
|
887
|
+
'Content-Type': 'application/json',
|
|
888
|
+
},
|
|
889
|
+
keepalive: useBeacon,
|
|
890
|
+
body: payload,
|
|
891
|
+
});
|
|
892
|
+
}
|
|
893
|
+
catch { }
|
|
894
|
+
}
|
|
492
895
|
async sendRequest(path, body) {
|
|
493
896
|
const host = this.options?.apiURL || DEFAULT_API_HOST;
|
|
494
897
|
await fetch(`${host}/${path}`, {
|
package/dist/esnext/Lib.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Lib.js","sourceRoot":"","sources":["../../src/Lib.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,WAAW,EACX,WAAW,EACX,SAAS,EACT,WAAW,EACX,WAAW,EACX,cAAc,EACd,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,aAAa,EACb,OAAO,GACR,MAAM,YAAY,CAAA;AAoNnB,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,IAAI,KAAI,CAAC;CACV,CAAA;AAED,MAAM,gBAAgB,GAAG,6BAA6B,CAAA;AACtD,MAAM,gBAAgB,GAAG,yBAAyB,CAAA;AAElD,oCAAoC;AACpC,MAAM,sBAAsB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAA;AAE5C,MAAM,OAAO,GAAG;IASd,YAAoB,SAAiB,EAAU,OAAoB;QAA/C,cAAS,GAAT,SAAS,CAAQ;QAAU,YAAO,GAAP,OAAO,CAAa;QAR3D,aAAQ,GAAoB,IAAI,CAAA;QAChC,qBAAgB,GAA6B,IAAI,CAAA;QACjD,kBAAa,GAAyB,IAAI,CAAA;QAC1C,uBAAkB,GAAY,KAAK,CAAA;QACnC,eAAU,GAAkB,IAAI,CAAA;QAChC,wBAAmB,GAAG,KAAK,CAAA;QAC3B,eAAU,GAAsB,IAAI,CAAA;QAG1C,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACtD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC1C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAClD,CAAC;IAED,YAAY,CAAC,KAAiB;QAC5B,IAAI,OAAO,IAAI,CAAC,aAAa,EAAE,UAAU,KAAK,QAAQ,IAAI,IAAI,CAAC,aAAa,CAAC,UAAU,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;YACzG,OAAM;QACR,CAAC;QAED,IAAI,CAAC,WAAW,CACd;YACE,mCAAmC;YACnC,QAAQ,EAAE,KAAK,CAAC,QAAQ;YAExB,qCAAqC;YACrC,MAAM,EAAE,KAAK,CAAC,MAAM;YAEpB,uCAAuC;YACvC,KAAK,EAAE,KAAK,CAAC,KAAK;YAElB,8JAA8J;YAC9J,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,IAAI,OAAO;YAElC,gHAAgH;YAChH,gGAAgG;YAChG,8FAA8F;YAC9F,OAAO,EAAE,KAAK,CAAC,KAAK,EAAE,OAAO,IAAI,KAAK,CAAC,OAAO;YAE9C,0CAA0C;YAC1C,UAAU,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK;SAC/B,EACD,IAAI,CACL,CAAA;IACH,CAAC;IAED,WAAW,CAAC,OAAsB;QAChC,IAAI,IAAI,CAAC,mBAAmB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;YACjD,OAAO,cAAc,CAAA;QACvB,CAAC;QAED,IAAI,CAAC,aAAa,GAAG,OAAO,CAAA;QAE5B,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;QACnD,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAA;QAE/B,OAAO;YACL,IAAI,EAAE,GAAG,EAAE;gBACT,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;gBACtD,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAA;YAClC,CAAC;SACF,CAAA;IACH,CAAC;IAED,WAAW,CAAC,OAA2B,EAAE,aAAuB;QAC9D,MAAM,WAAW,GAAG;YAClB,GAAG,EAAE,IAAI,CAAC,SAAS;SACpB,CAAA;QAED,MAAM,YAAY,GAAG;YACnB,EAAE,EACA,IAAI,CAAC,UAAU;gBACf,OAAO,CAAC;oBACN,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI;oBACjC,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE,MAAM;iBACtC,CAAC;YACJ,EAAE,EAAE,SAAS,EAAE;YACf,EAAE,EAAE,WAAW,EAAE;YACjB,GAAG,OAAO;SACX,CAAA;QAED,IAAI,aAAa,IAAI,IAAI,CAAC,aAAa,EAAE,QAAQ,EAAE,CAAC;YAClD,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;YAEhE,IAAI,cAAc,KAAK,KAAK,EAAE,CAAC;gBAC7B,OAAM;YACR,CAAC;YAED,IAAI,cAAc,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE,CAAC;gBACzD,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,cAAc,CAAC,CAAA;YAC7C,CAAC;QACH,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC,CAAA;QAExC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;IACzC,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,KAAwB;QAClC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;YACrB,OAAM;QACR,CAAC;QAED,MAAM,IAAI,GAAG;YACX,GAAG,KAAK;YACR,GAAG,EAAE,IAAI,CAAC,SAAS;YACnB,EAAE,EACA,IAAI,CAAC,UAAU;gBACf,OAAO,CAAC;oBACN,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI;oBACjC,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE,MAAM;iBACtC,CAAC;YACJ,EAAE,EAAE,SAAS,EAAE;YACf,EAAE,EAAE,WAAW,EAAE;YACjB,GAAG,EAAE,WAAW,EAAE;YAClB,EAAE,EAAE,YAAY,EAAE;YAClB,EAAE,EAAE,YAAY,EAAE;YAClB,EAAE,EAAE,cAAc,EAAE;YACpB,EAAE,EAAE,UAAU,EAAE;YAChB,EAAE,EAAE,aAAa,EAAE;YACnB,EAAE,EAAE,cAAc,EAAE;YACpB,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,EAAE,SAAS;SACtD,CAAA;QACD,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IACxC,CAAC;IAED,cAAc,CAAC,OAA0B;QACvC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;YACrB,OAAO,cAAc,CAAA;QACvB,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAA;QAC9B,CAAC;QAED,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAA;QAC/B,IAAI,QAAwB,CAAA;QAE5B,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;YACrB,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,CAAA;QACpD,CAAC;QAED,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;QAChC,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;QAErD,MAAM,IAAI,GAAG,OAAO,CAAC;YACnB,IAAI,EAAE,OAAO,EAAE,IAAI;YACnB,MAAM,EAAE,OAAO,EAAE,MAAM;SACxB,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,GAAG;YACd,IAAI;YACJ,OAAO,EAAE;gBACP,IAAI,EAAE,GAAG,EAAE;oBACT,aAAa,CAAC,QAAQ,CAAC,CAAA;oBACvB,aAAa,CAAC,UAAU,CAAC,CAAA;gBAC3B,CAAC;aACF;SACF,CAAA;QAED,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QACrC,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAA;IAC9B,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,kBAAkB,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,gBAAgB,EAAE,CAAC;YACzF,OAAO,EAAE,CAAA;QACX,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAgC,CAAA;QAEhG,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,EAAE,CAAA;QACX,CAAC;QAED,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAA;QAE9B,OAAO;YACL,UAAU;YACV,GAAG,EAAE,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,iBAAiB,EAAE,iBAAiB;YACrE,GAAG,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,EAAE,wFAAwF;YAC9K,IAAI,EAAE,IAAI,CAAC,qBAAqB;gBAC9B,CAAC,CAAC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,YAAY;gBAChD,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,YAAY,EAAE,kBAAkB;YAC3D,QAAQ,EAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,aAAa,EAAE,2BAA2B;YAE5E,WAAW;YACX,MAAM,EAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,wBAAwB,EAAE,kCAAkC;YAC5F,QAAQ,EAAE,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC,WAAW,EAAE,qBAAqB;YACjF,SAAS,EAAE,IAAI,CAAC,cAAc,EAAE,iBAAiB;YAEjD,UAAU;YACV,IAAI,EAAE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY;SAC7C,CAAA;IACH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,eAAe,CAAC,OAA6B,EAAE,YAAsB;QACzE,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACnB,OAAO,EAAE,CAAA;QACX,CAAC;QAED,MAAM,kBAAkB,GAAG,OAAO,EAAE,SAAS,IAAI,IAAI,CAAC,OAAO,EAAE,SAAS,CAAA;QAExE,8DAA8D;QAC9D,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACrC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;YACtB,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,KAAK,kBAAkB,CAAA;YACtE,IAAI,aAAa,IAAI,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,sBAAsB,EAAE,CAAC;gBAC9E,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAA;YAC9B,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAA;YAC5C,OAAO,IAAI,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE,CAAA;QACrC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,yCAAyC,EAAE,KAAK,CAAC,CAAA;YAC9D,OAAO,IAAI,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE,CAAA;QACrC,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,wBAAwB,CAAC,OAAiD;QACtF,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAA;QACjC,MAAM,IAAI,GAAwC;YAChD,GAAG,EAAE,IAAI,CAAC,SAAS;SACpB,CAAA;QAED,+DAA+D;QAC/D,MAAM,SAAS,GAAG,OAAO,EAAE,SAAS,IAAI,IAAI,CAAC,OAAO,EAAE,SAAS,CAAA;QAC/D,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC5B,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,wBAAwB,EAAE;YAC/D,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;aACnC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,OAAO,CAAC,IAAI,CAAC,0DAA0D,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;YACzF,OAAM;QACR,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAGlC,CAAA;QAED,+DAA+D;QAC/D,MAAM,eAAe,GAAG,OAAO,EAAE,SAAS,IAAI,IAAI,CAAC,OAAO,EAAE,SAAS,CAAA;QAErE,+CAA+C;QAC/C,IAAI,CAAC,UAAU,GAAG;YAChB,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;YACvB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;YACnC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;YACrB,SAAS,EAAE,eAAe;SAC3B,CAAA;IACH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,cAAc,CAAC,GAAW,EAAE,OAA6B,EAAE,eAAwB,KAAK;QAC5F,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QACjD,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,YAAY,CAAA;IACnC,CAAC;IAED;;OAEG;IACH,sBAAsB;QACpB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAA;IACxB,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,cAAc,CAAC,OAA2B,EAAE,YAAsB;QACtE,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACnB,OAAO,EAAE,CAAA;QACX,CAAC;QAED,MAAM,kBAAkB,GAAG,OAAO,EAAE,SAAS,IAAI,IAAI,CAAC,OAAO,EAAE,SAAS,CAAA;QAExE,8DAA8D;QAC9D,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACrC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;YACtB,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,KAAK,kBAAkB,CAAA;YACtE,IAAI,aAAa,IAAI,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,GAAG,sBAAsB,EAAE,CAAC;gBAC9E,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAA;YACpC,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAA;YAC5C,OAAO,IAAI,CAAC,UAAU,EAAE,WAAW,IAAI,EAAE,CAAA;QAC3C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAA;YAC5D,OAAO,IAAI,CAAC,UAAU,EAAE,WAAW,IAAI,EAAE,CAAA;QAC3C,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,KAAK,CAAC,aAAa,CACjB,YAAoB,EACpB,OAA2B,EAC3B,iBAAgC,IAAI;QAEpC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;QACtD,OAAO,WAAW,CAAC,YAAY,CAAC,IAAI,cAAc,CAAA;IACpD,CAAC;IAED;;OAEG;IACH,qBAAqB;QACnB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAA;IACxB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,KAAK,CAAC,YAAY;QAChB,oDAAoD;QACpD,IAAI,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAA;QAC/B,CAAC;QAED,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACnB,OAAO,IAAI,CAAA;QACb,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAA;YACjC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,iBAAiB,EAAE;gBACxD,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;aAC9C,CAAC,CAAA;YAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,OAAO,IAAI,CAAA;YACb,CAAC;YAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAiC,CAAA;YACpE,OAAO,IAAI,CAAC,SAAS,CAAA;QACvB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,KAAK,CAAC,YAAY;QAChB,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACnB,OAAO,IAAI,CAAA;QACb,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAA;YACjC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,iBAAiB,EAAE;gBACxD,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;aAC9C,CAAC,CAAA;YAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,OAAO,IAAI,CAAA;YACb,CAAC;YAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAiC,CAAA;YACpE,OAAO,IAAI,CAAC,SAAS,CAAA;QACvB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC;IAED;;OAEG;IACK,UAAU;QAChB,IAAI,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;YACzB,kCAAkC;YAClC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;QACrD,CAAC;QACD,OAAO,gBAAgB,CAAA;IACzB,CAAC;IAEO,SAAS;QACf,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,qBAAqB,IAAI,QAAQ,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;YAC3F,OAAM;QACR,CAAC;QAED,MAAM,IAAI,GAAwC;YAChD,GAAG,EAAE,IAAI,CAAC,SAAS;SACpB,CAAA;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC;YAC5B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAA;QACzC,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IAC9B,CAAC;IAED,0EAA0E;IAClE,eAAe;QACrB,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAM;QAC1B,MAAM,OAAO,GAAG,OAAO,CAAC;YACtB,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI;YACjC,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE,MAAM;SACtC,CAAC,CAAA;QACF,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAA;QAE9B,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACrB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;QAChC,CAAC;IACH,CAAC;IAEO,SAAS,CAAC,EAAU,EAAE,SAAkB,KAAK;QACnD,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,OAAM;QAC1B,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,EAAE,CAAA;QAEvB,MAAM,IAAI,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAA;QAEvC,IAAI,CAAC,UAAU,GAAG,EAAE,CAAA;QACpB,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;IACjD,CAAC;IAED,cAAc,CACZ,OAAkC,EAClC,MAAe,EACf,IAAuB,EACvB,aAAuB;QAEvB,MAAM,WAAW,GAAG;YAClB,GAAG,EAAE,IAAI,CAAC,SAAS;YACnB,IAAI;YACJ,MAAM;SACP,CAAA;QAED,MAAM,SAAS,GAAG;YAChB,EAAE,EAAE,SAAS,EAAE;YACf,EAAE,EAAE,WAAW,EAAE;YACjB,GAAG,EAAE,WAAW,EAAE;YAClB,EAAE,EAAE,YAAY,EAAE;YAClB,EAAE,EAAE,YAAY,EAAE;YAClB,EAAE,EAAE,cAAc,EAAE;YACpB,EAAE,EAAE,UAAU,EAAE;YAChB,EAAE,EAAE,aAAa,EAAE;YACnB,EAAE,EAAE,cAAc,EAAE;YACpB,SAAS,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS;YAClC,GAAG,OAAO;SACX,CAAA;QAED,IAAI,aAAa,IAAI,IAAI,CAAC,gBAAgB,EAAE,QAAQ,EAAE,CAAC;YACrD,MAAM,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,SAA6B,CAAC,CAAA;YAEpF,IAAI,cAAc,KAAK,KAAK,EAAE,CAAC;gBAC7B,OAAM;YACR,CAAC;YAED,IAAI,cAAc,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE,CAAC;gBACzD,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,cAAc,CAAC,CAAA;YAC1C,CAAC;QACH,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;QAErC,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,SAAS,CAAC,CAAA;IACjC,CAAC;IAEO,QAAQ;QACd,IACE,IAAI,CAAC,OAAO,EAAE,QAAQ;YACtB,CAAC,WAAW,EAAE;YACd,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,IAAI,MAAM,CAAC,SAAS,EAAE,UAAU,KAAK,GAAG,CAAC;YAClE,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,CAAC;YACzC,WAAW,EAAE,EACb,CAAC;YACD,OAAO,KAAK,CAAA;QACd,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,IAAY,EAAE,IAAY;QAClD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,gBAAgB,CAAA;QACrD,MAAM,KAAK,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,EAAE;YAC7B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;aACnC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,CAAC,CAAA;IACJ,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"Lib.js","sourceRoot":"","sources":["../../src/Lib.ts"],"names":[],"mappings":"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"}
|
package/dist/esnext/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Lib, LibOptions, TrackEventOptions, PageViewsOptions, ErrorOptions, PageActions, ErrorActions, IErrorEventPayload, IPageViewPayload, FeatureFlagsOptions, ExperimentOptions } from './Lib.js';
|
|
1
|
+
import { Lib, LibOptions, TrackEventOptions, PageViewsOptions, ErrorOptions, PageActions, ErrorActions, IErrorEventPayload, IPageViewPayload, FeatureFlagsOptions, ExperimentOptions, SessionReplayOptions, SessionReplayActions } from './Lib.js';
|
|
2
2
|
export declare let LIB_INSTANCE: Lib | null;
|
|
3
3
|
/**
|
|
4
4
|
* Initialise the tracking library instance (other methods won't work if the library is not initialised).
|
|
@@ -30,6 +30,7 @@ export declare function trackViews(options?: PageViewsOptions): Promise<PageActi
|
|
|
30
30
|
* @returns {ErrorActions} The actions related to the tracking. Used to stop tracking errors.
|
|
31
31
|
*/
|
|
32
32
|
export declare function trackErrors(options?: ErrorOptions): ErrorActions;
|
|
33
|
+
export declare function startSessionReplay(options?: SessionReplayOptions): Promise<SessionReplayActions>;
|
|
33
34
|
/**
|
|
34
35
|
* This function is used to manually track an error event.
|
|
35
36
|
* It's useful if you want to track specific errors in your application.
|
|
@@ -56,17 +57,16 @@ export interface IPageviewOptions {
|
|
|
56
57
|
export declare function pageview(options: IPageviewOptions): void;
|
|
57
58
|
/**
|
|
58
59
|
* Fetches all feature flags for the project.
|
|
59
|
-
* Results are cached for 5 minutes by default.
|
|
60
|
+
* Results are cached for 5 minutes by default and share a cache with experiments.
|
|
60
61
|
*
|
|
61
|
-
* @param options - Options for evaluating feature flags (
|
|
62
|
+
* @param options - Options for evaluating feature flags (`profileId` only).
|
|
62
63
|
* @param forceRefresh - If true, bypasses the cache and fetches fresh flags.
|
|
63
64
|
* @returns A promise that resolves to a record of flag keys to boolean values.
|
|
64
65
|
*
|
|
65
66
|
* @example
|
|
66
67
|
* ```typescript
|
|
67
68
|
* const flags = await getFeatureFlags({
|
|
68
|
-
*
|
|
69
|
-
* attributes: { cc: 'US', dv: 'desktop' }
|
|
69
|
+
* profileId: 'user-123'
|
|
70
70
|
* })
|
|
71
71
|
*
|
|
72
72
|
* if (flags['new-checkout']) {
|
|
@@ -79,13 +79,13 @@ export declare function getFeatureFlags(options?: FeatureFlagsOptions, forceRefr
|
|
|
79
79
|
* Gets the value of a single feature flag.
|
|
80
80
|
*
|
|
81
81
|
* @param key - The feature flag key.
|
|
82
|
-
* @param options - Options for evaluating the feature flag (
|
|
83
|
-
* @param defaultValue -
|
|
82
|
+
* @param options - Options for evaluating the feature flag (`profileId` only).
|
|
83
|
+
* @param defaultValue - Optional default value to return if the flag is not found. Defaults to false.
|
|
84
84
|
* @returns A promise that resolves to the boolean value of the flag.
|
|
85
85
|
*
|
|
86
86
|
* @example
|
|
87
87
|
* ```typescript
|
|
88
|
-
* const isEnabled = await getFeatureFlag('dark-mode', {
|
|
88
|
+
* const isEnabled = await getFeatureFlag('dark-mode', { profileId: 'user-123' })
|
|
89
89
|
*
|
|
90
90
|
* if (isEnabled) {
|
|
91
91
|
* // Enable dark mode
|
|
@@ -94,15 +94,15 @@ export declare function getFeatureFlags(options?: FeatureFlagsOptions, forceRefr
|
|
|
94
94
|
*/
|
|
95
95
|
export declare function getFeatureFlag(key: string, options?: FeatureFlagsOptions, defaultValue?: boolean): Promise<boolean>;
|
|
96
96
|
/**
|
|
97
|
-
* Clears the cached feature flags, forcing a fresh fetch on the next call.
|
|
98
|
-
* Useful when you know the user's
|
|
97
|
+
* Clears the cached feature flags and experiments, forcing a fresh fetch on the next call.
|
|
98
|
+
* Useful when you know the user's profile has changed.
|
|
99
99
|
*/
|
|
100
100
|
export declare function clearFeatureFlagsCache(): void;
|
|
101
101
|
/**
|
|
102
|
-
* Fetches
|
|
102
|
+
* Fetches variant assignments for running A/B test experiments returned by feature flag evaluation.
|
|
103
103
|
* Results are cached for 5 minutes by default (shared cache with feature flags).
|
|
104
104
|
*
|
|
105
|
-
* @param options - Options for evaluating experiments.
|
|
105
|
+
* @param options - Options for evaluating experiments (`profileId` only).
|
|
106
106
|
* @param forceRefresh - If true, bypasses the cache and fetches fresh data.
|
|
107
107
|
* @returns A promise that resolves to a record of experiment IDs to variant keys.
|
|
108
108
|
*
|
|
@@ -125,13 +125,16 @@ export declare function getExperiments(options?: ExperimentOptions, forceRefresh
|
|
|
125
125
|
* Gets the variant key for a specific A/B test experiment.
|
|
126
126
|
*
|
|
127
127
|
* @param experimentId - The experiment ID.
|
|
128
|
-
* @param options - Options for evaluating the experiment.
|
|
129
|
-
* @param defaultVariant -
|
|
128
|
+
* @param options - Options for evaluating the experiment (`profileId` only).
|
|
129
|
+
* @param defaultVariant - Optional default variant key to return if the experiment is not found. Defaults to null.
|
|
130
130
|
* @returns A promise that resolves to the variant key assigned to this user, or defaultVariant if not found.
|
|
131
131
|
*
|
|
132
132
|
* @example
|
|
133
133
|
* ```typescript
|
|
134
|
-
* const variant = await getExperiment('checkout-redesign-experiment-id')
|
|
134
|
+
* const variant = await getExperiment('checkout-redesign-experiment-id', { profileId: 'user-123' })
|
|
135
|
+
*
|
|
136
|
+
* // Optional fallback variant:
|
|
137
|
+
* const variantWithFallback = await getExperiment('checkout-redesign-experiment-id', undefined, 'control')
|
|
135
138
|
*
|
|
136
139
|
* if (variant === 'new-checkout') {
|
|
137
140
|
* // Show new checkout flow
|