@amplitude/plugin-session-replay-browser 0.6.5 → 0.6.7

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.
Files changed (56) hide show
  1. package/README.md +5 -5
  2. package/lib/cjs/constants.d.ts +0 -15
  3. package/lib/cjs/constants.d.ts.map +1 -1
  4. package/lib/cjs/constants.js +1 -20
  5. package/lib/cjs/constants.js.map +1 -1
  6. package/lib/cjs/session-replay.d.ts +13 -2
  7. package/lib/cjs/session-replay.d.ts.map +1 -1
  8. package/lib/cjs/session-replay.js +28 -483
  9. package/lib/cjs/session-replay.js.map +1 -1
  10. package/lib/cjs/typings/session-replay.d.ts +0 -67
  11. package/lib/cjs/typings/session-replay.d.ts.map +1 -1
  12. package/lib/cjs/typings/session-replay.js +0 -6
  13. package/lib/cjs/typings/session-replay.js.map +1 -1
  14. package/lib/esm/constants.d.ts +0 -15
  15. package/lib/esm/constants.d.ts.map +1 -1
  16. package/lib/esm/constants.js +0 -19
  17. package/lib/esm/constants.js.map +1 -1
  18. package/lib/esm/session-replay.d.ts +13 -2
  19. package/lib/esm/session-replay.d.ts.map +1 -1
  20. package/lib/esm/session-replay.js +29 -484
  21. package/lib/esm/session-replay.js.map +1 -1
  22. package/lib/esm/typings/session-replay.d.ts +0 -67
  23. package/lib/esm/typings/session-replay.d.ts.map +1 -1
  24. package/lib/esm/typings/session-replay.js +1 -5
  25. package/lib/esm/typings/session-replay.js.map +1 -1
  26. package/lib/scripts/amplitude-min.js +1 -1
  27. package/lib/scripts/amplitude-min.js.gz +0 -0
  28. package/lib/scripts/amplitude-min.umd.js +1 -1
  29. package/lib/scripts/amplitude-min.umd.js.gz +0 -0
  30. package/lib/scripts/constants.d.ts +0 -15
  31. package/lib/scripts/constants.d.ts.map +1 -1
  32. package/lib/scripts/session-replay.d.ts +13 -2
  33. package/lib/scripts/session-replay.d.ts.map +1 -1
  34. package/lib/scripts/typings/session-replay.d.ts +0 -67
  35. package/lib/scripts/typings/session-replay.d.ts.map +1 -1
  36. package/package.json +3 -2
  37. package/lib/cjs/helpers.d.ts +0 -4
  38. package/lib/cjs/helpers.d.ts.map +0 -1
  39. package/lib/cjs/helpers.js +0 -32
  40. package/lib/cjs/helpers.js.map +0 -1
  41. package/lib/cjs/messages.d.ts +0 -5
  42. package/lib/cjs/messages.d.ts.map +0 -1
  43. package/lib/cjs/messages.js +0 -10
  44. package/lib/cjs/messages.js.map +0 -1
  45. package/lib/esm/helpers.d.ts +0 -4
  46. package/lib/esm/helpers.d.ts.map +0 -1
  47. package/lib/esm/helpers.js +0 -27
  48. package/lib/esm/helpers.js.map +0 -1
  49. package/lib/esm/messages.d.ts +0 -5
  50. package/lib/esm/messages.d.ts.map +0 -1
  51. package/lib/esm/messages.js +0 -7
  52. package/lib/esm/messages.js.map +0 -1
  53. package/lib/scripts/helpers.d.ts +0 -4
  54. package/lib/scripts/helpers.d.ts.map +0 -1
  55. package/lib/scripts/messages.d.ts +0 -5
  56. package/lib/scripts/messages.d.ts.map +0 -1
@@ -1,71 +1,4 @@
1
- import { BrowserConfig, EnrichmentPlugin } from '@amplitude/analytics-types';
2
- import { record } from 'rrweb';
3
1
  export interface SessionReplayOptions {
4
2
  sampleRate?: number;
5
3
  }
6
- export type Events = string[];
7
- export interface SessionReplayContext {
8
- events: Events;
9
- sequenceId: number;
10
- attempts: number;
11
- timeout: number;
12
- sessionId: number;
13
- }
14
- export declare enum RecordingStatus {
15
- RECORDING = "recording",
16
- SENT = "sent"
17
- }
18
- export interface IDBStoreSequence {
19
- events: Events;
20
- status: RecordingStatus;
21
- }
22
- export interface IDBStoreSession {
23
- currentSequenceId: number;
24
- sessionSequences: {
25
- [sequenceId: number]: IDBStoreSequence;
26
- };
27
- }
28
- export interface IDBStore {
29
- [sessionId: number]: IDBStoreSession;
30
- }
31
- export interface SessionReplayEnrichmentPlugin extends EnrichmentPlugin {
32
- setup: (config: BrowserConfig) => Promise<void>;
33
- config: BrowserConfig;
34
- storageKey: string;
35
- retryTimeout: number;
36
- events: Events;
37
- currentSequenceId: number;
38
- interval: number;
39
- queue: SessionReplayContext[];
40
- timeAtLastSend: number | null;
41
- stopRecordingEvents: ReturnType<typeof record> | null;
42
- stopRecordingAndSendEvents: (sessionId?: number) => void;
43
- maxPersistedEventsSize: number;
44
- initialize: (shouldSendStoredEvents?: boolean) => Promise<void>;
45
- sendStoredEvents: (storedReplaySessions: IDBStore) => void;
46
- getShouldRecord: () => boolean;
47
- recordEvents: () => void;
48
- shouldSplitEventsList: (nextEventString: string) => boolean;
49
- sendEventsList: ({ events, sequenceId, sessionId, }: {
50
- events: string[];
51
- sequenceId: number;
52
- sessionId: number;
53
- }) => void;
54
- addToQueue: (...list: SessionReplayContext[]) => void;
55
- schedule: (timeout: number) => void;
56
- flush: (useRetry?: boolean) => Promise<void>;
57
- send: (context: SessionReplayContext, useRetry?: boolean) => Promise<void>;
58
- completeRequest({ context, err, success, removeEvents, }: {
59
- context: SessionReplayContext;
60
- err?: string | undefined;
61
- success?: string | undefined;
62
- removeEvents?: boolean | undefined;
63
- }): void;
64
- getAllSessionEventsFromStore: () => Promise<IDBStore | undefined>;
65
- storeEventsForSession: (events: Events, sequenceId: number, sessionId: number) => Promise<void>;
66
- cleanUpSessionEventsStore: (sessionId: number, sequenceId: number) => Promise<void>;
67
- }
68
- export interface SessionReplayPlugin {
69
- (options?: SessionReplayOptions): SessionReplayEnrichmentPlugin;
70
- }
71
4
  //# sourceMappingURL=session-replay.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"session-replay.d.ts","sourceRoot":"","sources":["../../../src/typings/session-replay.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-replay.d.ts","sourceRoot":"","sources":["../../../src/typings/session-replay.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,oBAAoB;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
@@ -1,8 +1,2 @@
1
1
  Object.defineProperty(exports, "__esModule", { value: true });
2
- exports.RecordingStatus = void 0;
3
- var RecordingStatus;
4
- (function (RecordingStatus) {
5
- RecordingStatus["RECORDING"] = "recording";
6
- RecordingStatus["SENT"] = "sent";
7
- })(RecordingStatus = exports.RecordingStatus || (exports.RecordingStatus = {}));
8
2
  //# sourceMappingURL=session-replay.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"session-replay.js","sourceRoot":"","sources":["../../../src/typings/session-replay.ts"],"names":[],"mappings":";;AAiBA,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,0CAAuB,CAAA;IACvB,gCAAa,CAAA;AACf,CAAC,EAHW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAG1B","sourcesContent":["import { BrowserConfig, EnrichmentPlugin } from '@amplitude/analytics-types';\nimport { record } from 'rrweb';\n\nexport interface SessionReplayOptions {\n sampleRate?: number;\n}\n\nexport type Events = string[];\n\nexport interface SessionReplayContext {\n events: Events;\n sequenceId: number;\n attempts: number;\n timeout: number;\n sessionId: number;\n}\n\nexport enum RecordingStatus {\n RECORDING = 'recording',\n SENT = 'sent',\n}\n\nexport interface IDBStoreSequence {\n events: Events;\n status: RecordingStatus;\n}\n\nexport interface IDBStoreSession {\n currentSequenceId: number;\n sessionSequences: {\n [sequenceId: number]: IDBStoreSequence;\n };\n}\n\nexport interface IDBStore {\n [sessionId: number]: IDBStoreSession;\n}\nexport interface SessionReplayEnrichmentPlugin extends EnrichmentPlugin {\n setup: (config: BrowserConfig) => Promise<void>;\n config: BrowserConfig;\n storageKey: string;\n retryTimeout: number;\n events: Events;\n currentSequenceId: number;\n interval: number;\n queue: SessionReplayContext[];\n timeAtLastSend: number | null;\n stopRecordingEvents: ReturnType<typeof record> | null;\n stopRecordingAndSendEvents: (sessionId?: number) => void;\n maxPersistedEventsSize: number;\n initialize: (shouldSendStoredEvents?: boolean) => Promise<void>;\n sendStoredEvents: (storedReplaySessions: IDBStore) => void;\n getShouldRecord: () => boolean;\n recordEvents: () => void;\n shouldSplitEventsList: (nextEventString: string) => boolean;\n sendEventsList: ({\n events,\n sequenceId,\n sessionId,\n }: {\n events: string[];\n sequenceId: number;\n sessionId: number;\n }) => void;\n addToQueue: (...list: SessionReplayContext[]) => void;\n schedule: (timeout: number) => void;\n flush: (useRetry?: boolean) => Promise<void>;\n send: (context: SessionReplayContext, useRetry?: boolean) => Promise<void>;\n completeRequest({\n context,\n err,\n success,\n removeEvents,\n }: {\n context: SessionReplayContext;\n err?: string | undefined;\n success?: string | undefined;\n removeEvents?: boolean | undefined;\n }): void;\n getAllSessionEventsFromStore: () => Promise<IDBStore | undefined>;\n storeEventsForSession: (events: Events, sequenceId: number, sessionId: number) => Promise<void>;\n cleanUpSessionEventsStore: (sessionId: number, sequenceId: number) => Promise<void>;\n}\n\nexport interface SessionReplayPlugin {\n (options?: SessionReplayOptions): SessionReplayEnrichmentPlugin;\n}\n"]}
1
+ {"version":3,"file":"session-replay.js","sourceRoot":"","sources":["../../../src/typings/session-replay.ts"],"names":[],"mappings":"","sourcesContent":["export interface SessionReplayOptions {\n sampleRate?: number;\n}\n"]}
@@ -1,17 +1,2 @@
1
- import { IDBStoreSession } from './typings/session-replay';
2
- export declare const DEFAULT_EVENT_PROPERTY_PREFIX = "[Amplitude]";
3
- export declare const DEFAULT_SESSION_REPLAY_PROPERTY: string;
4
1
  export declare const DEFAULT_SESSION_START_EVENT = "session_start";
5
- export declare const DEFAULT_SESSION_END_EVENT = "session_end";
6
- export declare const BLOCK_CLASS = "amp-block";
7
- export declare const MASK_TEXT_CLASS = "amp-mask";
8
- export declare const UNMASK_TEXT_CLASS = "amp-unmask";
9
- export declare const SESSION_REPLAY_SERVER_URL = "https://api-secure.amplitude.com/sessions/track";
10
- export declare const SESSION_REPLAY_EU_URL = "https://api.eu.amplitude.com/sessions/track";
11
- export declare const STORAGE_PREFIX: string;
12
- export declare const MAX_EVENT_LIST_SIZE_IN_BYTES: number;
13
- export declare const MIN_INTERVAL = 500;
14
- export declare const MAX_INTERVAL: number;
15
- export declare const defaultSessionStore: IDBStoreSession;
16
- export declare const MAX_IDB_STORAGE_LENGTH: number;
17
2
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,eAAO,MAAM,6BAA6B,gBAAgB,CAAC;AAE3D,eAAO,MAAM,+BAA+B,QAAsD,CAAC;AACnG,eAAO,MAAM,2BAA2B,kBAAkB,CAAC;AAC3D,eAAO,MAAM,yBAAyB,gBAAgB,CAAC;AAEvD,eAAO,MAAM,WAAW,cAAc,CAAC;AACvC,eAAO,MAAM,eAAe,aAAa,CAAC;AAC1C,eAAO,MAAM,iBAAiB,eAAe,CAAC;AAC9C,eAAO,MAAM,yBAAyB,oDAAoD,CAAC;AAC3F,eAAO,MAAM,qBAAqB,gDAAgD,CAAC;AACnF,eAAO,MAAM,cAAc,QAAsC,CAAC;AAElE,eAAO,MAAM,4BAA4B,QAAgE,CAAC;AAC1G,eAAO,MAAM,YAAY,MAAM,CAAC;AAChC,eAAO,MAAM,YAAY,QAAY,CAAC;AACtC,eAAO,MAAM,mBAAmB,EAAE,eAGjC,CAAC;AACF,eAAO,MAAM,sBAAsB,QAA0B,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,2BAA2B,kBAAkB,CAAC"}
@@ -1,21 +1,2 @@
1
- import { AMPLITUDE_PREFIX } from '@amplitude/analytics-core';
2
- export var DEFAULT_EVENT_PROPERTY_PREFIX = '[Amplitude]';
3
- export var DEFAULT_SESSION_REPLAY_PROPERTY = "".concat(DEFAULT_EVENT_PROPERTY_PREFIX, " Session Recorded");
4
1
  export var DEFAULT_SESSION_START_EVENT = 'session_start';
5
- export var DEFAULT_SESSION_END_EVENT = 'session_end';
6
- export var BLOCK_CLASS = 'amp-block';
7
- export var MASK_TEXT_CLASS = 'amp-mask';
8
- export var UNMASK_TEXT_CLASS = 'amp-unmask';
9
- export var SESSION_REPLAY_SERVER_URL = 'https://api-secure.amplitude.com/sessions/track';
10
- export var SESSION_REPLAY_EU_URL = 'https://api.eu.amplitude.com/sessions/track';
11
- export var STORAGE_PREFIX = "".concat(AMPLITUDE_PREFIX, "_replay_unsent");
12
- var PAYLOAD_ESTIMATED_SIZE_IN_BYTES_WITHOUT_EVENTS = 500; // derived by JSON stringifying an example payload without events
13
- export var MAX_EVENT_LIST_SIZE_IN_BYTES = 10 * 1000000 - PAYLOAD_ESTIMATED_SIZE_IN_BYTES_WITHOUT_EVENTS;
14
- export var MIN_INTERVAL = 500; // 500 ms
15
- export var MAX_INTERVAL = 10 * 1000; // 10 seconds
16
- export var defaultSessionStore = {
17
- currentSequenceId: 0,
18
- sessionSequences: {},
19
- };
20
- export var MAX_IDB_STORAGE_LENGTH = 1000 * 60 * 60 * 24 * 3; // 3 days
21
2
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAG7D,MAAM,CAAC,IAAM,6BAA6B,GAAG,aAAa,CAAC;AAE3D,MAAM,CAAC,IAAM,+BAA+B,GAAG,UAAG,6BAA6B,sBAAmB,CAAC;AACnG,MAAM,CAAC,IAAM,2BAA2B,GAAG,eAAe,CAAC;AAC3D,MAAM,CAAC,IAAM,yBAAyB,GAAG,aAAa,CAAC;AAEvD,MAAM,CAAC,IAAM,WAAW,GAAG,WAAW,CAAC;AACvC,MAAM,CAAC,IAAM,eAAe,GAAG,UAAU,CAAC;AAC1C,MAAM,CAAC,IAAM,iBAAiB,GAAG,YAAY,CAAC;AAC9C,MAAM,CAAC,IAAM,yBAAyB,GAAG,iDAAiD,CAAC;AAC3F,MAAM,CAAC,IAAM,qBAAqB,GAAG,6CAA6C,CAAC;AACnF,MAAM,CAAC,IAAM,cAAc,GAAG,UAAG,gBAAgB,mBAAgB,CAAC;AAClE,IAAM,8CAA8C,GAAG,GAAG,CAAC,CAAC,iEAAiE;AAC7H,MAAM,CAAC,IAAM,4BAA4B,GAAG,EAAE,GAAG,OAAO,GAAG,8CAA8C,CAAC;AAC1G,MAAM,CAAC,IAAM,YAAY,GAAG,GAAG,CAAC,CAAC,SAAS;AAC1C,MAAM,CAAC,IAAM,YAAY,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;AACpD,MAAM,CAAC,IAAM,mBAAmB,GAAoB;IAClD,iBAAiB,EAAE,CAAC;IACpB,gBAAgB,EAAE,EAAE;CACrB,CAAC;AACF,MAAM,CAAC,IAAM,sBAAsB,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS","sourcesContent":["import { AMPLITUDE_PREFIX } from '@amplitude/analytics-core';\nimport { IDBStoreSession } from './typings/session-replay';\n\nexport const DEFAULT_EVENT_PROPERTY_PREFIX = '[Amplitude]';\n\nexport const DEFAULT_SESSION_REPLAY_PROPERTY = `${DEFAULT_EVENT_PROPERTY_PREFIX} Session Recorded`;\nexport const DEFAULT_SESSION_START_EVENT = 'session_start';\nexport const DEFAULT_SESSION_END_EVENT = 'session_end';\n\nexport const BLOCK_CLASS = 'amp-block';\nexport const MASK_TEXT_CLASS = 'amp-mask';\nexport const UNMASK_TEXT_CLASS = 'amp-unmask';\nexport const SESSION_REPLAY_SERVER_URL = 'https://api-secure.amplitude.com/sessions/track';\nexport const SESSION_REPLAY_EU_URL = 'https://api.eu.amplitude.com/sessions/track';\nexport const STORAGE_PREFIX = `${AMPLITUDE_PREFIX}_replay_unsent`;\nconst PAYLOAD_ESTIMATED_SIZE_IN_BYTES_WITHOUT_EVENTS = 500; // derived by JSON stringifying an example payload without events\nexport const MAX_EVENT_LIST_SIZE_IN_BYTES = 10 * 1000000 - PAYLOAD_ESTIMATED_SIZE_IN_BYTES_WITHOUT_EVENTS;\nexport const MIN_INTERVAL = 500; // 500 ms\nexport const MAX_INTERVAL = 10 * 1000; // 10 seconds\nexport const defaultSessionStore: IDBStoreSession = {\n currentSequenceId: 0,\n sessionSequences: {},\n};\nexport const MAX_IDB_STORAGE_LENGTH = 1000 * 60 * 60 * 24 * 3; // 3 days\n"]}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,IAAM,2BAA2B,GAAG,eAAe,CAAC","sourcesContent":["export const DEFAULT_SESSION_START_EVENT = 'session_start';\n"]}
@@ -1,3 +1,14 @@
1
- import { SessionReplayPlugin } from './typings/session-replay';
2
- export declare const sessionReplayPlugin: SessionReplayPlugin;
1
+ import { BrowserConfig, EnrichmentPlugin, Event } from '@amplitude/analytics-types';
2
+ import { SessionReplayOptions } from './typings/session-replay';
3
+ export declare class SessionReplayPlugin implements EnrichmentPlugin {
4
+ name: string;
5
+ type: "enrichment";
6
+ config: BrowserConfig;
7
+ options: SessionReplayOptions;
8
+ constructor(options?: SessionReplayOptions);
9
+ setup(config: BrowserConfig): Promise<void>;
10
+ execute(event: Event): Promise<Event>;
11
+ teardown(): Promise<void>;
12
+ }
13
+ export declare const sessionReplayPlugin: (options?: SessionReplayOptions) => EnrichmentPlugin;
3
14
  //# sourceMappingURL=session-replay.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"session-replay.d.ts","sourceRoot":"","sources":["../../src/session-replay.ts"],"names":[],"mappings":"AAsBA,OAAO,EAQL,mBAAmB,EACpB,MAAM,0BAA0B,CAAC;AA4clC,eAAO,MAAM,mBAAmB,EAAE,mBAEjC,CAAC"}
1
+ {"version":3,"file":"session-replay.d.ts","sourceRoot":"","sources":["../../src/session-replay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAGpF,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,qBAAa,mBAAoB,YAAW,gBAAgB;IAC1D,IAAI,SAA8C;IAClD,IAAI,eAAyB;IAI7B,MAAM,EAAE,aAAa,CAAC;IACtB,OAAO,EAAE,oBAAoB,CAAC;gBAElB,OAAO,CAAC,EAAE,oBAAoB;IAIpC,KAAK,CAAC,MAAM,EAAE,aAAa;IAkC3B,OAAO,CAAC,KAAK,EAAE,KAAK;IAcpB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAGhC;AAED,eAAO,MAAM,mBAAmB,EAAE,CAAC,OAAO,CAAC,EAAE,oBAAoB,KAAK,gBAIrE,CAAC"}