@plushanalytics/react-native-session-replay 3.0.0 → 3.0.4
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 +59 -2
- package/android/src/main/java/com/posthogreactnativesessionreplay/PosthogReactNativeSessionReplayModule.kt +125 -27
- package/ios/PosthogReactNativeSessionReplay.mm +3 -0
- package/ios/PosthogReactNativeSessionReplay.swift +187 -36
- package/lib/commonjs/adapters/mobileReplayAdapter.js +55 -18
- package/lib/commonjs/adapters/mobileReplayAdapter.js.map +1 -1
- package/lib/commonjs/client.js +2 -1
- package/lib/commonjs/client.js.map +1 -1
- package/lib/commonjs/nativeBridge.js +5 -0
- package/lib/commonjs/nativeBridge.js.map +1 -1
- package/lib/module/adapters/mobileReplayAdapter.js +55 -18
- package/lib/module/adapters/mobileReplayAdapter.js.map +1 -1
- package/lib/module/client.js +2 -1
- package/lib/module/client.js.map +1 -1
- package/lib/module/nativeBridge.js +4 -0
- package/lib/module/nativeBridge.js.map +1 -1
- package/lib/typescript/commonjs/src/adapters/mobileReplayAdapter.d.ts +2 -1
- package/lib/typescript/commonjs/src/adapters/mobileReplayAdapter.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/client.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/index.d.ts +1 -1
- package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/nativeBridge.d.ts +2 -0
- package/lib/typescript/commonjs/src/nativeBridge.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/types.d.ts +16 -5
- package/lib/typescript/commonjs/src/types.d.ts.map +1 -1
- package/lib/typescript/module/src/adapters/mobileReplayAdapter.d.ts +2 -1
- package/lib/typescript/module/src/adapters/mobileReplayAdapter.d.ts.map +1 -1
- package/lib/typescript/module/src/client.d.ts.map +1 -1
- package/lib/typescript/module/src/index.d.ts +1 -1
- package/lib/typescript/module/src/index.d.ts.map +1 -1
- package/lib/typescript/module/src/nativeBridge.d.ts +2 -0
- package/lib/typescript/module/src/nativeBridge.d.ts.map +1 -1
- package/lib/typescript/module/src/types.d.ts +16 -5
- package/lib/typescript/module/src/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/adapters/mobileReplayAdapter.ts +112 -19
- package/src/client.ts +2 -1
- package/src/index.tsx +2 -0
- package/src/nativeBridge.ts +8 -1
- package/src/types.ts +19 -5
|
@@ -7,6 +7,7 @@ exports.createMobileReplayRecorderAdapter = createMobileReplayRecorderAdapter;
|
|
|
7
7
|
var replayModule = _interopRequireWildcard(require("../nativeBridge.js"));
|
|
8
8
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
9
9
|
const DEFAULT_SNAPSHOT_PATH = "/v1/events/batch";
|
|
10
|
+
const DEFAULT_THROTTLE_DELAY_MS = 1000;
|
|
10
11
|
const UUID_PATTERN = /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/;
|
|
11
12
|
function assertNonEmpty(value, field) {
|
|
12
13
|
if (!value || !value.trim()) {
|
|
@@ -29,20 +30,10 @@ function generateUuid() {
|
|
|
29
30
|
if (cryptoApi?.randomUUID) return cryptoApi.randomUUID();
|
|
30
31
|
return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, char => {
|
|
31
32
|
const random = Math.floor(Math.random() * 16);
|
|
32
|
-
const
|
|
33
|
-
return
|
|
33
|
+
const resolved = char === "x" ? random : random & 0x3 | 0x8;
|
|
34
|
+
return resolved.toString(16);
|
|
34
35
|
});
|
|
35
36
|
}
|
|
36
|
-
function normalizeReplayConfig(config) {
|
|
37
|
-
return {
|
|
38
|
-
maskAllTextInputs: config?.maskAllTextInputs ?? true,
|
|
39
|
-
maskAllImages: config?.maskAllImages ?? true,
|
|
40
|
-
maskAllSandboxedViews: config?.maskAllSandboxedViews ?? true,
|
|
41
|
-
captureLog: config?.captureLog ?? true,
|
|
42
|
-
captureNetworkTelemetry: config?.captureNetworkTelemetry ?? true,
|
|
43
|
-
throttleDelayMs: config?.throttleDelayMs ?? 1000
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
37
|
function resolveSessionId(options) {
|
|
47
38
|
const requestedSessionId = options?.sessionId?.trim();
|
|
48
39
|
if (requestedSessionId && isUuid(requestedSessionId)) {
|
|
@@ -63,14 +54,57 @@ function assertNoPosthogDotCom(host) {
|
|
|
63
54
|
throw new Error("replayHost must not point to posthog.com (or a subdomain).");
|
|
64
55
|
}
|
|
65
56
|
}
|
|
57
|
+
function resolveMaskingValue(overrideConfig, defaultConfig, maskingKey, legacyKey) {
|
|
58
|
+
const overrideMaskingValue = overrideConfig?.masking?.[maskingKey];
|
|
59
|
+
if (typeof overrideMaskingValue === "boolean") {
|
|
60
|
+
return overrideMaskingValue;
|
|
61
|
+
}
|
|
62
|
+
const overrideLegacyValue = overrideConfig?.[legacyKey];
|
|
63
|
+
if (typeof overrideLegacyValue === "boolean") {
|
|
64
|
+
return overrideLegacyValue;
|
|
65
|
+
}
|
|
66
|
+
const defaultMaskingValue = defaultConfig?.masking?.[maskingKey];
|
|
67
|
+
if (typeof defaultMaskingValue === "boolean") {
|
|
68
|
+
return defaultMaskingValue;
|
|
69
|
+
}
|
|
70
|
+
return true;
|
|
71
|
+
}
|
|
72
|
+
function resolveReplayConfig(defaultConfig, overrideConfig) {
|
|
73
|
+
const enabled = overrideConfig?.enabled ?? defaultConfig?.enabled ?? true;
|
|
74
|
+
const captureLog = overrideConfig?.captureLog ?? defaultConfig?.captureLog ?? true;
|
|
75
|
+
const captureNetworkTelemetry = overrideConfig?.captureNetworkTelemetry ?? defaultConfig?.captureNetworkTelemetry ?? true;
|
|
76
|
+
const requestedThrottleDelayMs = overrideConfig?.throttleDelayMs ?? defaultConfig?.throttleDelayMs ?? DEFAULT_THROTTLE_DELAY_MS;
|
|
77
|
+
const throttleDelayMs = Number.isFinite(requestedThrottleDelayMs) && requestedThrottleDelayMs >= 0 ? requestedThrottleDelayMs : DEFAULT_THROTTLE_DELAY_MS;
|
|
78
|
+
return {
|
|
79
|
+
enabled,
|
|
80
|
+
maskAllTextInputs: resolveMaskingValue(overrideConfig, defaultConfig, "textInputs", "maskAllTextInputs"),
|
|
81
|
+
maskAllImages: resolveMaskingValue(overrideConfig, defaultConfig, "images", "maskAllImages"),
|
|
82
|
+
maskAllSandboxedViews: resolveMaskingValue(overrideConfig, defaultConfig, "sandboxedViews", "maskAllSandboxedViews"),
|
|
83
|
+
captureLog,
|
|
84
|
+
captureNetworkTelemetry,
|
|
85
|
+
throttleDelayMs
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
function toNativeReplayConfig(config) {
|
|
89
|
+
return {
|
|
90
|
+
maskAllTextInputs: config.maskAllTextInputs,
|
|
91
|
+
maskAllImages: config.maskAllImages,
|
|
92
|
+
maskAllSandboxedViews: config.maskAllSandboxedViews,
|
|
93
|
+
captureLog: config.captureLog,
|
|
94
|
+
captureNetworkTelemetry: config.captureNetworkTelemetry,
|
|
95
|
+
throttleDelayMs: config.throttleDelayMs
|
|
96
|
+
};
|
|
97
|
+
}
|
|
66
98
|
function createMobileReplayRecorderAdapter(defaults) {
|
|
67
99
|
assertNonEmpty(defaults.apiKey, "apiKey");
|
|
68
100
|
assertNonEmpty(defaults.endpoint, "endpoint");
|
|
69
101
|
return {
|
|
70
|
-
start: async
|
|
71
|
-
|
|
72
|
-
options
|
|
73
|
-
|
|
102
|
+
start: async args => {
|
|
103
|
+
const options = args.options;
|
|
104
|
+
const resolvedReplayConfig = resolveReplayConfig(defaults.replayConfigDefaults, options?.replayConfig);
|
|
105
|
+
if (!resolvedReplayConfig.enabled) {
|
|
106
|
+
return () => {};
|
|
107
|
+
}
|
|
74
108
|
const host = normalizeHost(options?.replayHost?.trim() || defaults.endpoint);
|
|
75
109
|
assertNoPosthogDotCom(host);
|
|
76
110
|
const snapshotPath = normalizeSnapshotPath(options?.replaySnapshotPath);
|
|
@@ -84,14 +118,17 @@ function createMobileReplayRecorderAdapter(defaults) {
|
|
|
84
118
|
sdkVersion: "plushanalytics-react-native",
|
|
85
119
|
flushAt: 20
|
|
86
120
|
};
|
|
87
|
-
await replayModule.start(activeSessionId, sdkOptions,
|
|
121
|
+
await replayModule.start(activeSessionId, sdkOptions, toNativeReplayConfig(resolvedReplayConfig), {
|
|
88
122
|
endpoint: snapshotPath
|
|
89
123
|
});
|
|
90
124
|
await replayModule.startSession(activeSessionId);
|
|
91
|
-
onSessionId?.(activeSessionId);
|
|
125
|
+
args.onSessionId?.(activeSessionId);
|
|
92
126
|
return () => {
|
|
93
127
|
void replayModule.endSession();
|
|
94
128
|
};
|
|
129
|
+
},
|
|
130
|
+
flush: async () => {
|
|
131
|
+
await replayModule.flush();
|
|
95
132
|
}
|
|
96
133
|
};
|
|
97
134
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["replayModule","_interopRequireWildcard","require","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","DEFAULT_SNAPSHOT_PATH","UUID_PATTERN","assertNonEmpty","value","field","trim","Error","normalizeHost","replace","normalizeSnapshotPath","trimmed","startsWith","isUuid","test","generateUuid","cryptoApi","globalThis","crypto","randomUUID","char","random","Math","floor","toString","
|
|
1
|
+
{"version":3,"names":["replayModule","_interopRequireWildcard","require","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","DEFAULT_SNAPSHOT_PATH","DEFAULT_THROTTLE_DELAY_MS","UUID_PATTERN","assertNonEmpty","value","field","trim","Error","normalizeHost","replace","normalizeSnapshotPath","trimmed","startsWith","isUuid","test","generateUuid","cryptoApi","globalThis","crypto","randomUUID","char","random","Math","floor","resolved","toString","resolveSessionId","options","requestedSessionId","sessionId","assertNoPosthogDotCom","host","lowered","toLowerCase","hostName","URL","hostname","endsWith","resolveMaskingValue","overrideConfig","defaultConfig","maskingKey","legacyKey","overrideMaskingValue","masking","overrideLegacyValue","defaultMaskingValue","resolveReplayConfig","enabled","captureLog","captureNetworkTelemetry","requestedThrottleDelayMs","throttleDelayMs","Number","isFinite","maskAllTextInputs","maskAllImages","maskAllSandboxedViews","toNativeReplayConfig","config","createMobileReplayRecorderAdapter","defaults","apiKey","endpoint","start","args","resolvedReplayConfig","replayConfigDefaults","replayConfig","replayHost","snapshotPath","replaySnapshotPath","activeSessionId","sdkOptions","debug","distinctId","userId","anonymousId","sdkVersion","flushAt","startSession","onSessionId","endSession","flush"],"sourceRoot":"../../../src","sources":["adapters/mobileReplayAdapter.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/commonjs/client.js
CHANGED
|
@@ -30,7 +30,8 @@ function createPlushAnalyticsClient(config) {
|
|
|
30
30
|
...(config.replay ?? {}),
|
|
31
31
|
defaultRecorder: config.replay?.defaultRecorder ?? (0, _mobileReplayAdapter.createMobileReplayRecorderAdapter)({
|
|
32
32
|
apiKey: config.apiKey,
|
|
33
|
-
endpoint
|
|
33
|
+
endpoint,
|
|
34
|
+
replayConfigDefaults: config.sessionReplayConfig
|
|
34
35
|
})
|
|
35
36
|
}
|
|
36
37
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_javascript","require","_mobileReplayAdapter","DEFAULT_ENDPOINT","normalizeSource","value","undefined","trimmed","trim","length","slice","createPlushAnalyticsClient","config","endpoint","source","wrapped","replay","defaultRecorder","createMobileReplayRecorderAdapter","apiKey","createCoreClient"],"sourceRoot":"../../src","sources":["client.ts"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAIA,IAAAC,oBAAA,GAAAD,OAAA;AAKA,MAAME,gBAAgB,GAAG,kEAAkE;AAE3F,SAASC,eAAeA,CAACC,KAAc,EAAsB;EAC3D,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE,OAAOC,SAAS;EAC/C,MAAMC,OAAO,GAAGF,KAAK,CAACG,IAAI,CAAC,CAAC;EAC5B,IAAI,CAACD,OAAO,EAAE,OAAOD,SAAS;EAC9B,OAAOC,OAAO,CAACE,MAAM,GAAG,EAAE,GAAGF,OAAO,CAACG,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAGH,OAAO;AAC7D;AAEO,SAASI,0BAA0BA,CAACC,MAA4B,EAAwB;EAC7F,MAAMC,QAAQ,GAAGD,MAAM,CAACC,QAAQ,IAAIV,gBAAgB;EACpD,MAAMW,MAAM,GAAGV,eAAe,CAACQ,MAAM,CAACE,MAAM,CAAC,IAAI,QAAQ;EAEzD,MAAMC,OAA6B,GAAG;IACpC,GAAGH,MAAM;IACTC,QAAQ;IACRC,MAAM;IACNE,MAAM,EAAE;MACN,IAAIJ,MAAM,CAACI,MAAM,IAAI,CAAC,CAAC,CAAC;MACxBC,eAAe,EACbL,MAAM,CAACI,MAAM,EAAEC,eAAe,IAC9B,IAAAC,sDAAiC,EAAC;QAChCC,MAAM,EAAEP,MAAM,CAACO,MAAM;QACrBN;
|
|
1
|
+
{"version":3,"names":["_javascript","require","_mobileReplayAdapter","DEFAULT_ENDPOINT","normalizeSource","value","undefined","trimmed","trim","length","slice","createPlushAnalyticsClient","config","endpoint","source","wrapped","replay","defaultRecorder","createMobileReplayRecorderAdapter","apiKey","replayConfigDefaults","sessionReplayConfig","createCoreClient"],"sourceRoot":"../../src","sources":["client.ts"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAIA,IAAAC,oBAAA,GAAAD,OAAA;AAKA,MAAME,gBAAgB,GAAG,kEAAkE;AAE3F,SAASC,eAAeA,CAACC,KAAc,EAAsB;EAC3D,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE,OAAOC,SAAS;EAC/C,MAAMC,OAAO,GAAGF,KAAK,CAACG,IAAI,CAAC,CAAC;EAC5B,IAAI,CAACD,OAAO,EAAE,OAAOD,SAAS;EAC9B,OAAOC,OAAO,CAACE,MAAM,GAAG,EAAE,GAAGF,OAAO,CAACG,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAGH,OAAO;AAC7D;AAEO,SAASI,0BAA0BA,CAACC,MAA4B,EAAwB;EAC7F,MAAMC,QAAQ,GAAGD,MAAM,CAACC,QAAQ,IAAIV,gBAAgB;EACpD,MAAMW,MAAM,GAAGV,eAAe,CAACQ,MAAM,CAACE,MAAM,CAAC,IAAI,QAAQ;EAEzD,MAAMC,OAA6B,GAAG;IACpC,GAAGH,MAAM;IACTC,QAAQ;IACRC,MAAM;IACNE,MAAM,EAAE;MACN,IAAIJ,MAAM,CAACI,MAAM,IAAI,CAAC,CAAC,CAAC;MACxBC,eAAe,EACbL,MAAM,CAACI,MAAM,EAAEC,eAAe,IAC9B,IAAAC,sDAAiC,EAAC;QAChCC,MAAM,EAAEP,MAAM,CAACO,MAAM;QACrBN,QAAQ;QACRO,oBAAoB,EAAER,MAAM,CAACS;MAC/B,CAAC;IACL;EACF,CAAC;EAED,OAAO,IAAAC,sCAAgB,EAACP,OAAO,CAAC;AAClC;;AAEA","ignoreList":[]}
|
|
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
exports.endSession = endSession;
|
|
8
|
+
exports.flush = flush;
|
|
8
9
|
exports.identify = identify;
|
|
9
10
|
exports.isEnabled = isEnabled;
|
|
10
11
|
exports.start = start;
|
|
@@ -28,6 +29,9 @@ function startSession(sessionId) {
|
|
|
28
29
|
function endSession() {
|
|
29
30
|
return PosthogReactNativeSessionReplay.endSession();
|
|
30
31
|
}
|
|
32
|
+
function flush() {
|
|
33
|
+
return PosthogReactNativeSessionReplay.flush();
|
|
34
|
+
}
|
|
31
35
|
function isEnabled() {
|
|
32
36
|
return PosthogReactNativeSessionReplay.isEnabled();
|
|
33
37
|
}
|
|
@@ -38,6 +42,7 @@ const PostHogReactNativeSessionReplay = {
|
|
|
38
42
|
start,
|
|
39
43
|
startSession,
|
|
40
44
|
endSession,
|
|
45
|
+
flush,
|
|
41
46
|
isEnabled,
|
|
42
47
|
identify
|
|
43
48
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","LINKING_ERROR","Platform","select","ios","default","PosthogReactNativeSessionReplay","NativeModules","Proxy","get","Error","start","sessionId","sdkOptions","sdkReplayConfig","decideReplayConfig","startSession","endSession","isEnabled","identify","distinctId","anonymousId","PostHogReactNativeSessionReplay","_default","exports"],"sourceRoot":"../../src","sources":["nativeBridge.ts"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_reactNative","require","LINKING_ERROR","Platform","select","ios","default","PosthogReactNativeSessionReplay","NativeModules","Proxy","get","Error","start","sessionId","sdkOptions","sdkReplayConfig","decideReplayConfig","startSession","endSession","flush","isEnabled","identify","distinctId","anonymousId","PostHogReactNativeSessionReplay","_default","exports"],"sourceRoot":"../../src","sources":["nativeBridge.ts"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEA,MAAMC,aAAa,GACjB,sGAAsG,GACtGC,qBAAQ,CAACC,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;AAEjC,MAAMC,+BAA+B,GACnCC,0BAAa,CAACD,+BAA+B,GACzCC,0BAAa,CAACD,+BAA+B,GAC7C,IAAIE,KAAK,CACP,CAAC,CAAC,EACF;EACEC,GAAGA,CAAA,EAAG;IACJ,MAAM,IAAIC,KAAK,CAACT,aAAa,CAAC;EAChC;AACF,CACF,CAAC;AAEA,SAASU,KAAKA,CACnBC,SAAiB,EACjBC,UAAkC,EAClCC,eAAuC,EACvCC,kBAA0C,EAC3B;EACf,OAAOT,+BAA+B,CAACK,KAAK,CAC1CC,SAAS,EACTC,UAAU,EACVC,eAAe,EACfC,kBACF,CAAC;AACH;AAEO,SAASC,YAAYA,CAACJ,SAAiB,EAAiB;EAC7D,OAAON,+BAA+B,CAACU,YAAY,CAACJ,SAAS,CAAC;AAChE;AAEO,SAASK,UAAUA,CAAA,EAAkB;EAC1C,OAAOX,+BAA+B,CAACW,UAAU,CAAC,CAAC;AACrD;AAEO,SAASC,KAAKA,CAAA,EAAkB;EACrC,OAAOZ,+BAA+B,CAACY,KAAK,CAAC,CAAC;AAChD;AAEO,SAASC,SAASA,CAAA,EAAqB;EAC5C,OAAOb,+BAA+B,CAACa,SAAS,CAAC,CAAC;AACpD;AAEO,SAASC,QAAQA,CACtBC,UAAkB,EAClBC,WAAmB,EACJ;EACf,OAAOhB,+BAA+B,CAACc,QAAQ,CAACC,UAAU,EAAEC,WAAW,CAAC;AAC1E;AAqBA,MAAMC,+BAAsE,GAAG;EAC7EZ,KAAK;EACLK,YAAY;EACZC,UAAU;EACVC,KAAK;EACLC,SAAS;EACTC;AACF,CAAC;AAAC,IAAAI,QAAA,GAAAC,OAAA,CAAApB,OAAA,GAEakB,+BAA+B","ignoreList":[]}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import * as replayModule from "../nativeBridge.js";
|
|
4
4
|
const DEFAULT_SNAPSHOT_PATH = "/v1/events/batch";
|
|
5
|
+
const DEFAULT_THROTTLE_DELAY_MS = 1000;
|
|
5
6
|
const UUID_PATTERN = /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/;
|
|
6
7
|
function assertNonEmpty(value, field) {
|
|
7
8
|
if (!value || !value.trim()) {
|
|
@@ -24,20 +25,10 @@ function generateUuid() {
|
|
|
24
25
|
if (cryptoApi?.randomUUID) return cryptoApi.randomUUID();
|
|
25
26
|
return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, char => {
|
|
26
27
|
const random = Math.floor(Math.random() * 16);
|
|
27
|
-
const
|
|
28
|
-
return
|
|
28
|
+
const resolved = char === "x" ? random : random & 0x3 | 0x8;
|
|
29
|
+
return resolved.toString(16);
|
|
29
30
|
});
|
|
30
31
|
}
|
|
31
|
-
function normalizeReplayConfig(config) {
|
|
32
|
-
return {
|
|
33
|
-
maskAllTextInputs: config?.maskAllTextInputs ?? true,
|
|
34
|
-
maskAllImages: config?.maskAllImages ?? true,
|
|
35
|
-
maskAllSandboxedViews: config?.maskAllSandboxedViews ?? true,
|
|
36
|
-
captureLog: config?.captureLog ?? true,
|
|
37
|
-
captureNetworkTelemetry: config?.captureNetworkTelemetry ?? true,
|
|
38
|
-
throttleDelayMs: config?.throttleDelayMs ?? 1000
|
|
39
|
-
};
|
|
40
|
-
}
|
|
41
32
|
function resolveSessionId(options) {
|
|
42
33
|
const requestedSessionId = options?.sessionId?.trim();
|
|
43
34
|
if (requestedSessionId && isUuid(requestedSessionId)) {
|
|
@@ -58,14 +49,57 @@ function assertNoPosthogDotCom(host) {
|
|
|
58
49
|
throw new Error("replayHost must not point to posthog.com (or a subdomain).");
|
|
59
50
|
}
|
|
60
51
|
}
|
|
52
|
+
function resolveMaskingValue(overrideConfig, defaultConfig, maskingKey, legacyKey) {
|
|
53
|
+
const overrideMaskingValue = overrideConfig?.masking?.[maskingKey];
|
|
54
|
+
if (typeof overrideMaskingValue === "boolean") {
|
|
55
|
+
return overrideMaskingValue;
|
|
56
|
+
}
|
|
57
|
+
const overrideLegacyValue = overrideConfig?.[legacyKey];
|
|
58
|
+
if (typeof overrideLegacyValue === "boolean") {
|
|
59
|
+
return overrideLegacyValue;
|
|
60
|
+
}
|
|
61
|
+
const defaultMaskingValue = defaultConfig?.masking?.[maskingKey];
|
|
62
|
+
if (typeof defaultMaskingValue === "boolean") {
|
|
63
|
+
return defaultMaskingValue;
|
|
64
|
+
}
|
|
65
|
+
return true;
|
|
66
|
+
}
|
|
67
|
+
function resolveReplayConfig(defaultConfig, overrideConfig) {
|
|
68
|
+
const enabled = overrideConfig?.enabled ?? defaultConfig?.enabled ?? true;
|
|
69
|
+
const captureLog = overrideConfig?.captureLog ?? defaultConfig?.captureLog ?? true;
|
|
70
|
+
const captureNetworkTelemetry = overrideConfig?.captureNetworkTelemetry ?? defaultConfig?.captureNetworkTelemetry ?? true;
|
|
71
|
+
const requestedThrottleDelayMs = overrideConfig?.throttleDelayMs ?? defaultConfig?.throttleDelayMs ?? DEFAULT_THROTTLE_DELAY_MS;
|
|
72
|
+
const throttleDelayMs = Number.isFinite(requestedThrottleDelayMs) && requestedThrottleDelayMs >= 0 ? requestedThrottleDelayMs : DEFAULT_THROTTLE_DELAY_MS;
|
|
73
|
+
return {
|
|
74
|
+
enabled,
|
|
75
|
+
maskAllTextInputs: resolveMaskingValue(overrideConfig, defaultConfig, "textInputs", "maskAllTextInputs"),
|
|
76
|
+
maskAllImages: resolveMaskingValue(overrideConfig, defaultConfig, "images", "maskAllImages"),
|
|
77
|
+
maskAllSandboxedViews: resolveMaskingValue(overrideConfig, defaultConfig, "sandboxedViews", "maskAllSandboxedViews"),
|
|
78
|
+
captureLog,
|
|
79
|
+
captureNetworkTelemetry,
|
|
80
|
+
throttleDelayMs
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
function toNativeReplayConfig(config) {
|
|
84
|
+
return {
|
|
85
|
+
maskAllTextInputs: config.maskAllTextInputs,
|
|
86
|
+
maskAllImages: config.maskAllImages,
|
|
87
|
+
maskAllSandboxedViews: config.maskAllSandboxedViews,
|
|
88
|
+
captureLog: config.captureLog,
|
|
89
|
+
captureNetworkTelemetry: config.captureNetworkTelemetry,
|
|
90
|
+
throttleDelayMs: config.throttleDelayMs
|
|
91
|
+
};
|
|
92
|
+
}
|
|
61
93
|
export function createMobileReplayRecorderAdapter(defaults) {
|
|
62
94
|
assertNonEmpty(defaults.apiKey, "apiKey");
|
|
63
95
|
assertNonEmpty(defaults.endpoint, "endpoint");
|
|
64
96
|
return {
|
|
65
|
-
start: async
|
|
66
|
-
|
|
67
|
-
options
|
|
68
|
-
|
|
97
|
+
start: async args => {
|
|
98
|
+
const options = args.options;
|
|
99
|
+
const resolvedReplayConfig = resolveReplayConfig(defaults.replayConfigDefaults, options?.replayConfig);
|
|
100
|
+
if (!resolvedReplayConfig.enabled) {
|
|
101
|
+
return () => {};
|
|
102
|
+
}
|
|
69
103
|
const host = normalizeHost(options?.replayHost?.trim() || defaults.endpoint);
|
|
70
104
|
assertNoPosthogDotCom(host);
|
|
71
105
|
const snapshotPath = normalizeSnapshotPath(options?.replaySnapshotPath);
|
|
@@ -79,14 +113,17 @@ export function createMobileReplayRecorderAdapter(defaults) {
|
|
|
79
113
|
sdkVersion: "plushanalytics-react-native",
|
|
80
114
|
flushAt: 20
|
|
81
115
|
};
|
|
82
|
-
await replayModule.start(activeSessionId, sdkOptions,
|
|
116
|
+
await replayModule.start(activeSessionId, sdkOptions, toNativeReplayConfig(resolvedReplayConfig), {
|
|
83
117
|
endpoint: snapshotPath
|
|
84
118
|
});
|
|
85
119
|
await replayModule.startSession(activeSessionId);
|
|
86
|
-
onSessionId?.(activeSessionId);
|
|
120
|
+
args.onSessionId?.(activeSessionId);
|
|
87
121
|
return () => {
|
|
88
122
|
void replayModule.endSession();
|
|
89
123
|
};
|
|
124
|
+
},
|
|
125
|
+
flush: async () => {
|
|
126
|
+
await replayModule.flush();
|
|
90
127
|
}
|
|
91
128
|
};
|
|
92
129
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["replayModule","DEFAULT_SNAPSHOT_PATH","UUID_PATTERN","assertNonEmpty","value","field","trim","Error","normalizeHost","replace","normalizeSnapshotPath","trimmed","startsWith","isUuid","test","generateUuid","cryptoApi","globalThis","crypto","randomUUID","char","random","Math","floor","toString","
|
|
1
|
+
{"version":3,"names":["replayModule","DEFAULT_SNAPSHOT_PATH","DEFAULT_THROTTLE_DELAY_MS","UUID_PATTERN","assertNonEmpty","value","field","trim","Error","normalizeHost","replace","normalizeSnapshotPath","trimmed","startsWith","isUuid","test","generateUuid","cryptoApi","globalThis","crypto","randomUUID","char","random","Math","floor","resolved","toString","resolveSessionId","options","requestedSessionId","sessionId","assertNoPosthogDotCom","host","lowered","toLowerCase","hostName","URL","hostname","endsWith","resolveMaskingValue","overrideConfig","defaultConfig","maskingKey","legacyKey","overrideMaskingValue","masking","overrideLegacyValue","defaultMaskingValue","resolveReplayConfig","enabled","captureLog","captureNetworkTelemetry","requestedThrottleDelayMs","throttleDelayMs","Number","isFinite","maskAllTextInputs","maskAllImages","maskAllSandboxedViews","toNativeReplayConfig","config","createMobileReplayRecorderAdapter","defaults","apiKey","endpoint","start","args","resolvedReplayConfig","replayConfigDefaults","replayConfig","replayHost","snapshotPath","replaySnapshotPath","activeSessionId","sdkOptions","debug","distinctId","userId","anonymousId","sdkVersion","flushAt","startSession","onSessionId","endSession","flush"],"sourceRoot":"../../../src","sources":["adapters/mobileReplayAdapter.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/module/client.js
CHANGED
|
@@ -21,7 +21,8 @@ export function createPlushAnalyticsClient(config) {
|
|
|
21
21
|
...(config.replay ?? {}),
|
|
22
22
|
defaultRecorder: config.replay?.defaultRecorder ?? createMobileReplayRecorderAdapter({
|
|
23
23
|
apiKey: config.apiKey,
|
|
24
|
-
endpoint
|
|
24
|
+
endpoint,
|
|
25
|
+
replayConfigDefaults: config.sessionReplayConfig
|
|
25
26
|
})
|
|
26
27
|
}
|
|
27
28
|
};
|
package/lib/module/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createPlushAnalyticsClient","createCoreClient","PlushAnalyticsClient","createMobileReplayRecorderAdapter","DEFAULT_ENDPOINT","normalizeSource","value","undefined","trimmed","trim","length","slice","config","endpoint","source","wrapped","replay","defaultRecorder","apiKey"],"sourceRoot":"../../src","sources":["client.ts"],"mappings":";;AAAA,SACEA,0BAA0B,IAAIC,gBAAgB,EAC9CC,oBAAoB,QACf,4BAA4B;AACnC,SAASC,iCAAiC,QAAQ,mCAAgC;AAGlF,SAASD,oBAAoB;AAE7B,MAAME,gBAAgB,GAAG,kEAAkE;AAE3F,SAASC,eAAeA,CAACC,KAAc,EAAsB;EAC3D,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE,OAAOC,SAAS;EAC/C,MAAMC,OAAO,GAAGF,KAAK,CAACG,IAAI,CAAC,CAAC;EAC5B,IAAI,CAACD,OAAO,EAAE,OAAOD,SAAS;EAC9B,OAAOC,OAAO,CAACE,MAAM,GAAG,EAAE,GAAGF,OAAO,CAACG,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAGH,OAAO;AAC7D;AAEA,OAAO,SAASR,0BAA0BA,CAACY,MAA4B,EAAwB;EAC7F,MAAMC,QAAQ,GAAGD,MAAM,CAACC,QAAQ,IAAIT,gBAAgB;EACpD,MAAMU,MAAM,GAAGT,eAAe,CAACO,MAAM,CAACE,MAAM,CAAC,IAAI,QAAQ;EAEzD,MAAMC,OAA6B,GAAG;IACpC,GAAGH,MAAM;IACTC,QAAQ;IACRC,MAAM;IACNE,MAAM,EAAE;MACN,IAAIJ,MAAM,CAACI,MAAM,IAAI,CAAC,CAAC,CAAC;MACxBC,eAAe,EACbL,MAAM,CAACI,MAAM,EAAEC,eAAe,IAC9Bd,iCAAiC,CAAC;QAChCe,MAAM,EAAEN,MAAM,CAACM,MAAM;QACrBL;
|
|
1
|
+
{"version":3,"names":["createPlushAnalyticsClient","createCoreClient","PlushAnalyticsClient","createMobileReplayRecorderAdapter","DEFAULT_ENDPOINT","normalizeSource","value","undefined","trimmed","trim","length","slice","config","endpoint","source","wrapped","replay","defaultRecorder","apiKey","replayConfigDefaults","sessionReplayConfig"],"sourceRoot":"../../src","sources":["client.ts"],"mappings":";;AAAA,SACEA,0BAA0B,IAAIC,gBAAgB,EAC9CC,oBAAoB,QACf,4BAA4B;AACnC,SAASC,iCAAiC,QAAQ,mCAAgC;AAGlF,SAASD,oBAAoB;AAE7B,MAAME,gBAAgB,GAAG,kEAAkE;AAE3F,SAASC,eAAeA,CAACC,KAAc,EAAsB;EAC3D,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE,OAAOC,SAAS;EAC/C,MAAMC,OAAO,GAAGF,KAAK,CAACG,IAAI,CAAC,CAAC;EAC5B,IAAI,CAACD,OAAO,EAAE,OAAOD,SAAS;EAC9B,OAAOC,OAAO,CAACE,MAAM,GAAG,EAAE,GAAGF,OAAO,CAACG,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAGH,OAAO;AAC7D;AAEA,OAAO,SAASR,0BAA0BA,CAACY,MAA4B,EAAwB;EAC7F,MAAMC,QAAQ,GAAGD,MAAM,CAACC,QAAQ,IAAIT,gBAAgB;EACpD,MAAMU,MAAM,GAAGT,eAAe,CAACO,MAAM,CAACE,MAAM,CAAC,IAAI,QAAQ;EAEzD,MAAMC,OAA6B,GAAG;IACpC,GAAGH,MAAM;IACTC,QAAQ;IACRC,MAAM;IACNE,MAAM,EAAE;MACN,IAAIJ,MAAM,CAACI,MAAM,IAAI,CAAC,CAAC,CAAC;MACxBC,eAAe,EACbL,MAAM,CAACI,MAAM,EAAEC,eAAe,IAC9Bd,iCAAiC,CAAC;QAChCe,MAAM,EAAEN,MAAM,CAACM,MAAM;QACrBL,QAAQ;QACRM,oBAAoB,EAAEP,MAAM,CAACQ;MAC/B,CAAC;IACL;EACF,CAAC;EAED,OAAOnB,gBAAgB,CAACc,OAAO,CAAC;AAClC;;AAEA","ignoreList":[]}
|
|
@@ -19,6 +19,9 @@ export function startSession(sessionId) {
|
|
|
19
19
|
export function endSession() {
|
|
20
20
|
return PosthogReactNativeSessionReplay.endSession();
|
|
21
21
|
}
|
|
22
|
+
export function flush() {
|
|
23
|
+
return PosthogReactNativeSessionReplay.flush();
|
|
24
|
+
}
|
|
22
25
|
export function isEnabled() {
|
|
23
26
|
return PosthogReactNativeSessionReplay.isEnabled();
|
|
24
27
|
}
|
|
@@ -29,6 +32,7 @@ const PostHogReactNativeSessionReplay = {
|
|
|
29
32
|
start,
|
|
30
33
|
startSession,
|
|
31
34
|
endSession,
|
|
35
|
+
flush,
|
|
32
36
|
isEnabled,
|
|
33
37
|
identify
|
|
34
38
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NativeModules","Platform","LINKING_ERROR","select","ios","default","PosthogReactNativeSessionReplay","Proxy","get","Error","start","sessionId","sdkOptions","sdkReplayConfig","decideReplayConfig","startSession","endSession","isEnabled","identify","distinctId","anonymousId","PostHogReactNativeSessionReplay"],"sourceRoot":"../../src","sources":["nativeBridge.ts"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,QAAQ,QAAQ,cAAc;AAEtD,MAAMC,aAAa,GACjB,sGAAsG,GACtGD,QAAQ,CAACE,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;AAEjC,MAAMC,+BAA+B,GACnCN,aAAa,CAACM,+BAA+B,GACzCN,aAAa,CAACM,+BAA+B,GAC7C,IAAIC,KAAK,CACP,CAAC,CAAC,EACF;EACEC,GAAGA,CAAA,EAAG;IACJ,MAAM,IAAIC,KAAK,CAACP,aAAa,CAAC;EAChC;AACF,CACF,CAAC;AAEP,OAAO,SAASQ,KAAKA,CACnBC,SAAiB,EACjBC,UAAkC,EAClCC,eAAuC,EACvCC,kBAA0C,EAC3B;EACf,OAAOR,+BAA+B,CAACI,KAAK,CAC1CC,SAAS,EACTC,UAAU,EACVC,eAAe,EACfC,kBACF,CAAC;AACH;AAEA,OAAO,SAASC,YAAYA,CAACJ,SAAiB,EAAiB;EAC7D,OAAOL,+BAA+B,CAACS,YAAY,CAACJ,SAAS,CAAC;AAChE;AAEA,OAAO,SAASK,UAAUA,CAAA,EAAkB;EAC1C,OAAOV,+BAA+B,CAACU,UAAU,CAAC,CAAC;AACrD;AAEA,OAAO,SAASC,SAASA,CAAA,EAAqB;EAC5C,
|
|
1
|
+
{"version":3,"names":["NativeModules","Platform","LINKING_ERROR","select","ios","default","PosthogReactNativeSessionReplay","Proxy","get","Error","start","sessionId","sdkOptions","sdkReplayConfig","decideReplayConfig","startSession","endSession","flush","isEnabled","identify","distinctId","anonymousId","PostHogReactNativeSessionReplay"],"sourceRoot":"../../src","sources":["nativeBridge.ts"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,QAAQ,QAAQ,cAAc;AAEtD,MAAMC,aAAa,GACjB,sGAAsG,GACtGD,QAAQ,CAACE,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;AAEjC,MAAMC,+BAA+B,GACnCN,aAAa,CAACM,+BAA+B,GACzCN,aAAa,CAACM,+BAA+B,GAC7C,IAAIC,KAAK,CACP,CAAC,CAAC,EACF;EACEC,GAAGA,CAAA,EAAG;IACJ,MAAM,IAAIC,KAAK,CAACP,aAAa,CAAC;EAChC;AACF,CACF,CAAC;AAEP,OAAO,SAASQ,KAAKA,CACnBC,SAAiB,EACjBC,UAAkC,EAClCC,eAAuC,EACvCC,kBAA0C,EAC3B;EACf,OAAOR,+BAA+B,CAACI,KAAK,CAC1CC,SAAS,EACTC,UAAU,EACVC,eAAe,EACfC,kBACF,CAAC;AACH;AAEA,OAAO,SAASC,YAAYA,CAACJ,SAAiB,EAAiB;EAC7D,OAAOL,+BAA+B,CAACS,YAAY,CAACJ,SAAS,CAAC;AAChE;AAEA,OAAO,SAASK,UAAUA,CAAA,EAAkB;EAC1C,OAAOV,+BAA+B,CAACU,UAAU,CAAC,CAAC;AACrD;AAEA,OAAO,SAASC,KAAKA,CAAA,EAAkB;EACrC,OAAOX,+BAA+B,CAACW,KAAK,CAAC,CAAC;AAChD;AAEA,OAAO,SAASC,SAASA,CAAA,EAAqB;EAC5C,OAAOZ,+BAA+B,CAACY,SAAS,CAAC,CAAC;AACpD;AAEA,OAAO,SAASC,QAAQA,CACtBC,UAAkB,EAClBC,WAAmB,EACJ;EACf,OAAOf,+BAA+B,CAACa,QAAQ,CAACC,UAAU,EAAEC,WAAW,CAAC;AAC1E;AAqBA,MAAMC,+BAAsE,GAAG;EAC7EZ,KAAK;EACLK,YAAY;EACZC,UAAU;EACVC,KAAK;EACLC,SAAS;EACTC;AACF,CAAC;AAED,eAAeG,+BAA+B","ignoreList":[]}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import type { ReplayRecorderAdapter } from "../types";
|
|
1
|
+
import type { ReplayRecorderAdapter, SessionReplayConfig } from "../types";
|
|
2
2
|
type AdapterDefaults = {
|
|
3
3
|
apiKey: string;
|
|
4
4
|
endpoint: string;
|
|
5
|
+
replayConfigDefaults?: SessionReplayConfig;
|
|
5
6
|
};
|
|
6
7
|
export declare function createMobileReplayRecorderAdapter(defaults: AdapterDefaults): ReplayRecorderAdapter;
|
|
7
8
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mobileReplayAdapter.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/mobileReplayAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"mobileReplayAdapter.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/mobileReplayAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,qBAAqB,EAErB,mBAAmB,EACpB,MAAM,UAAU,CAAC;AAGlB,KAAK,eAAe,GAAG;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,oBAAoB,CAAC,EAAE,mBAAmB,CAAC;CAC5C,CAAC;AAoJF,wBAAgB,iCAAiC,CAAC,QAAQ,EAAE,eAAe,GAAG,qBAAqB,CA6ClG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,oBAAoB,EACrB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,KAAK,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAE7E,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAWhC,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,oBAAoB,GAAG,oBAAoB,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,oBAAoB,EACrB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,KAAK,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAE7E,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAWhC,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,oBAAoB,GAAG,oBAAoB,CAqB7F;AAGD,YAAY,EAAE,uBAAuB,EAAE,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { createPlushAnalyticsClient, PlushAnalyticsClient } from "./client";
|
|
2
2
|
export { createMobileReplayRecorderAdapter } from "./adapters/mobileReplayAdapter";
|
|
3
3
|
export { PlushAnalyticsProvider, usePlushAnalytics } from "./provider";
|
|
4
|
-
export type { EventEnvelope, EventType, FlushResult, GroupOptions, IdentifyOptions, JsonValue, MobileReplayConfig, PlushAnalytics, PlushAnalyticsConfig, ReplayChunkEnvelope, ReplayRecordEmission, ReplayRecorderAdapter, RetryOptions, ScreenOptions, SessionRecordingOptions, StorageAdapter, TrackOptions, UnifiedBatchPayload } from "./types";
|
|
4
|
+
export type { EventEnvelope, EventType, FlushResult, GroupOptions, IdentifyOptions, JsonValue, MobileReplayConfig, PlushAnalytics, PlushAnalyticsConfig, ReplayChunkEnvelope, ReplayRecordEmission, ReplayRecorderAdapter, RetryOptions, ScreenOptions, SessionRecordingOptions, SessionReplayConfig, SessionReplayMaskingConfig, StorageAdapter, TrackOptions, UnifiedBatchPayload } from "./types";
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,EAAE,iCAAiC,EAAE,MAAM,gCAAgC,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACvE,YAAY,EACV,aAAa,EACb,SAAS,EACT,WAAW,EACX,YAAY,EACZ,eAAe,EACf,SAAS,EACT,kBAAkB,EAClB,cAAc,EACd,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,YAAY,EACZ,aAAa,EACb,uBAAuB,EACvB,cAAc,EACd,YAAY,EACZ,mBAAmB,EACpB,MAAM,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,EAAE,iCAAiC,EAAE,MAAM,gCAAgC,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACvE,YAAY,EACV,aAAa,EACb,SAAS,EACT,WAAW,EACX,YAAY,EACZ,eAAe,EACf,SAAS,EACT,kBAAkB,EAClB,cAAc,EACd,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,YAAY,EACZ,aAAa,EACb,uBAAuB,EACvB,mBAAmB,EACnB,0BAA0B,EAC1B,cAAc,EACd,YAAY,EACZ,mBAAmB,EACpB,MAAM,SAAS,CAAC"}
|
|
@@ -7,6 +7,7 @@ export declare function start(sessionId: string, sdkOptions: {
|
|
|
7
7
|
}): Promise<void>;
|
|
8
8
|
export declare function startSession(sessionId: string): Promise<void>;
|
|
9
9
|
export declare function endSession(): Promise<void>;
|
|
10
|
+
export declare function flush(): Promise<void>;
|
|
10
11
|
export declare function isEnabled(): Promise<boolean>;
|
|
11
12
|
export declare function identify(distinctId: string, anonymousId: string): Promise<void>;
|
|
12
13
|
export interface PostHogReactNativeSessionReplayModule {
|
|
@@ -21,6 +22,7 @@ export interface PostHogReactNativeSessionReplayModule {
|
|
|
21
22
|
}) => Promise<void>;
|
|
22
23
|
startSession: (sessionId: string) => Promise<void>;
|
|
23
24
|
endSession: () => Promise<void>;
|
|
25
|
+
flush: () => Promise<void>;
|
|
24
26
|
isEnabled: () => Promise<boolean>;
|
|
25
27
|
identify: (distinctId: string, anonymousId: string) => Promise<void>;
|
|
26
28
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nativeBridge.d.ts","sourceRoot":"","sources":["../../../../src/nativeBridge.ts"],"names":[],"mappings":"AAoBA,wBAAgB,KAAK,CACnB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,EAClC,eAAe,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,EACvC,kBAAkB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,GACzC,OAAO,CAAC,IAAI,CAAC,CAOf;AAED,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7D;AAED,wBAAgB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAE1C;AAED,wBAAgB,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,CAE5C;AAED,wBAAgB,QAAQ,CACtB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC,CAEf;AAED,MAAM,WAAW,qCAAqC;IACpD,KAAK,EAAE,CACL,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,kCAAkC;IACtE,eAAe,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,kBAAkB;IAC3D,kBAAkB,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,KACvC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnB,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnD,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhC,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAElC,QAAQ,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACtE;AAED,QAAA,MAAM,+BAA+B,EAAE,
|
|
1
|
+
{"version":3,"file":"nativeBridge.d.ts","sourceRoot":"","sources":["../../../../src/nativeBridge.ts"],"names":[],"mappings":"AAoBA,wBAAgB,KAAK,CACnB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,EAClC,eAAe,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,EACvC,kBAAkB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,GACzC,OAAO,CAAC,IAAI,CAAC,CAOf;AAED,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7D;AAED,wBAAgB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAE1C;AAED,wBAAgB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAErC;AAED,wBAAgB,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,CAE5C;AAED,wBAAgB,QAAQ,CACtB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC,CAEf;AAED,MAAM,WAAW,qCAAqC;IACpD,KAAK,EAAE,CACL,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,kCAAkC;IACtE,eAAe,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,kBAAkB;IAC3D,kBAAkB,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,KACvC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnB,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnD,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3B,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAElC,QAAQ,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACtE;AAED,QAAA,MAAM,+BAA+B,EAAE,qCAOtC,CAAC;AAEF,eAAe,+BAA+B,CAAC"}
|
|
@@ -1,18 +1,29 @@
|
|
|
1
1
|
import type { EventEnvelope, EventType, FlushResult, GroupOptions, IdentifyOptions, JsonValue, PlushAnalytics as CorePlushAnalytics, PlushAnalyticsConfig as CoreConfig, ReplayChunkEnvelope, ReplayRecordEmission, ReplayRecorderAdapter, RetryOptions, ScreenOptions, SessionRecordingOptions as CoreSessionRecordingOptions, StorageAdapter, TrackOptions, UnifiedBatchPayload } from "@plushanalytics/javascript";
|
|
2
|
-
export type
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
export type SessionReplayMaskingConfig = {
|
|
3
|
+
textInputs?: boolean;
|
|
4
|
+
images?: boolean;
|
|
5
|
+
sandboxedViews?: boolean;
|
|
6
|
+
};
|
|
7
|
+
export type SessionReplayConfig = {
|
|
8
|
+
enabled?: boolean;
|
|
9
|
+
masking?: SessionReplayMaskingConfig;
|
|
6
10
|
captureLog?: boolean;
|
|
7
11
|
captureNetworkTelemetry?: boolean;
|
|
8
12
|
throttleDelayMs?: number;
|
|
9
13
|
};
|
|
14
|
+
export type MobileReplayConfig = SessionReplayConfig & {
|
|
15
|
+
maskAllTextInputs?: boolean;
|
|
16
|
+
maskAllImages?: boolean;
|
|
17
|
+
maskAllSandboxedViews?: boolean;
|
|
18
|
+
};
|
|
10
19
|
export type SessionRecordingOptions = CoreSessionRecordingOptions & {
|
|
11
20
|
replayHost?: string;
|
|
12
21
|
replaySnapshotPath?: string;
|
|
13
22
|
replayConfig?: MobileReplayConfig;
|
|
14
23
|
};
|
|
15
|
-
export type PlushAnalyticsConfig = CoreConfig
|
|
24
|
+
export type PlushAnalyticsConfig = CoreConfig & {
|
|
25
|
+
sessionReplayConfig?: SessionReplayConfig;
|
|
26
|
+
};
|
|
16
27
|
export type { EventEnvelope, EventType, FlushResult, GroupOptions, IdentifyOptions, JsonValue, ReplayChunkEnvelope, ReplayRecordEmission, ReplayRecorderAdapter, RetryOptions, ScreenOptions, StorageAdapter, TrackOptions, UnifiedBatchPayload };
|
|
17
28
|
export type PlushAnalytics = Omit<CorePlushAnalytics, "startSessionRecording" | "startReplay"> & {
|
|
18
29
|
startSessionRecording: (options?: SessionRecordingOptions) => Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,SAAS,EACT,WAAW,EACX,YAAY,EACZ,eAAe,EACf,SAAS,EACT,cAAc,IAAI,kBAAkB,EACpC,oBAAoB,IAAI,UAAU,EAClC,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,YAAY,EACZ,aAAa,EACb,uBAAuB,IAAI,2BAA2B,EACtD,cAAc,EACd,YAAY,EACZ,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AAEpC,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,SAAS,EACT,WAAW,EACX,YAAY,EACZ,eAAe,EACf,SAAS,EACT,cAAc,IAAI,kBAAkB,EACpC,oBAAoB,IAAI,UAAU,EAClC,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,YAAY,EACZ,aAAa,EACb,uBAAuB,IAAI,2BAA2B,EACtD,cAAc,EACd,YAAY,EACZ,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AAEpC,MAAM,MAAM,0BAA0B,GAAG;IACvC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,0BAA0B,CAAC;IACrC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,mBAAmB,GAAG;IAErD,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,2BAA2B,GAAG;IAElE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,YAAY,CAAC,EAAE,kBAAkB,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,UAAU,GAAG;IAC9C,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC3C,CAAC;AAEF,YAAY,EACV,aAAa,EACb,SAAS,EACT,WAAW,EACX,YAAY,EACZ,eAAe,EACf,SAAS,EACT,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,YAAY,EACZ,aAAa,EACb,cAAc,EACd,YAAY,EACZ,mBAAmB,EACpB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,EAAE,uBAAuB,GAAG,aAAa,CAAC,GAAG;IAC/F,qBAAqB,EAAE,CAAC,OAAO,CAAC,EAAE,uBAAuB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5E,WAAW,EAAE,CAAC,OAAO,CAAC,EAAE,uBAAuB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACnE,CAAC"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import type { ReplayRecorderAdapter } from "../types";
|
|
1
|
+
import type { ReplayRecorderAdapter, SessionReplayConfig } from "../types";
|
|
2
2
|
type AdapterDefaults = {
|
|
3
3
|
apiKey: string;
|
|
4
4
|
endpoint: string;
|
|
5
|
+
replayConfigDefaults?: SessionReplayConfig;
|
|
5
6
|
};
|
|
6
7
|
export declare function createMobileReplayRecorderAdapter(defaults: AdapterDefaults): ReplayRecorderAdapter;
|
|
7
8
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mobileReplayAdapter.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/mobileReplayAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"mobileReplayAdapter.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/mobileReplayAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,qBAAqB,EAErB,mBAAmB,EACpB,MAAM,UAAU,CAAC;AAGlB,KAAK,eAAe,GAAG;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,oBAAoB,CAAC,EAAE,mBAAmB,CAAC;CAC5C,CAAC;AAoJF,wBAAgB,iCAAiC,CAAC,QAAQ,EAAE,eAAe,GAAG,qBAAqB,CA6ClG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,oBAAoB,EACrB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,KAAK,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAE7E,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAWhC,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,oBAAoB,GAAG,oBAAoB,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,oBAAoB,EACrB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,KAAK,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAE7E,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAWhC,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,oBAAoB,GAAG,oBAAoB,CAqB7F;AAGD,YAAY,EAAE,uBAAuB,EAAE,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { createPlushAnalyticsClient, PlushAnalyticsClient } from "./client";
|
|
2
2
|
export { createMobileReplayRecorderAdapter } from "./adapters/mobileReplayAdapter";
|
|
3
3
|
export { PlushAnalyticsProvider, usePlushAnalytics } from "./provider";
|
|
4
|
-
export type { EventEnvelope, EventType, FlushResult, GroupOptions, IdentifyOptions, JsonValue, MobileReplayConfig, PlushAnalytics, PlushAnalyticsConfig, ReplayChunkEnvelope, ReplayRecordEmission, ReplayRecorderAdapter, RetryOptions, ScreenOptions, SessionRecordingOptions, StorageAdapter, TrackOptions, UnifiedBatchPayload } from "./types";
|
|
4
|
+
export type { EventEnvelope, EventType, FlushResult, GroupOptions, IdentifyOptions, JsonValue, MobileReplayConfig, PlushAnalytics, PlushAnalyticsConfig, ReplayChunkEnvelope, ReplayRecordEmission, ReplayRecorderAdapter, RetryOptions, ScreenOptions, SessionRecordingOptions, SessionReplayConfig, SessionReplayMaskingConfig, StorageAdapter, TrackOptions, UnifiedBatchPayload } from "./types";
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,EAAE,iCAAiC,EAAE,MAAM,gCAAgC,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACvE,YAAY,EACV,aAAa,EACb,SAAS,EACT,WAAW,EACX,YAAY,EACZ,eAAe,EACf,SAAS,EACT,kBAAkB,EAClB,cAAc,EACd,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,YAAY,EACZ,aAAa,EACb,uBAAuB,EACvB,cAAc,EACd,YAAY,EACZ,mBAAmB,EACpB,MAAM,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAC5E,OAAO,EAAE,iCAAiC,EAAE,MAAM,gCAAgC,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACvE,YAAY,EACV,aAAa,EACb,SAAS,EACT,WAAW,EACX,YAAY,EACZ,eAAe,EACf,SAAS,EACT,kBAAkB,EAClB,cAAc,EACd,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,YAAY,EACZ,aAAa,EACb,uBAAuB,EACvB,mBAAmB,EACnB,0BAA0B,EAC1B,cAAc,EACd,YAAY,EACZ,mBAAmB,EACpB,MAAM,SAAS,CAAC"}
|
|
@@ -7,6 +7,7 @@ export declare function start(sessionId: string, sdkOptions: {
|
|
|
7
7
|
}): Promise<void>;
|
|
8
8
|
export declare function startSession(sessionId: string): Promise<void>;
|
|
9
9
|
export declare function endSession(): Promise<void>;
|
|
10
|
+
export declare function flush(): Promise<void>;
|
|
10
11
|
export declare function isEnabled(): Promise<boolean>;
|
|
11
12
|
export declare function identify(distinctId: string, anonymousId: string): Promise<void>;
|
|
12
13
|
export interface PostHogReactNativeSessionReplayModule {
|
|
@@ -21,6 +22,7 @@ export interface PostHogReactNativeSessionReplayModule {
|
|
|
21
22
|
}) => Promise<void>;
|
|
22
23
|
startSession: (sessionId: string) => Promise<void>;
|
|
23
24
|
endSession: () => Promise<void>;
|
|
25
|
+
flush: () => Promise<void>;
|
|
24
26
|
isEnabled: () => Promise<boolean>;
|
|
25
27
|
identify: (distinctId: string, anonymousId: string) => Promise<void>;
|
|
26
28
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nativeBridge.d.ts","sourceRoot":"","sources":["../../../../src/nativeBridge.ts"],"names":[],"mappings":"AAoBA,wBAAgB,KAAK,CACnB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,EAClC,eAAe,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,EACvC,kBAAkB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,GACzC,OAAO,CAAC,IAAI,CAAC,CAOf;AAED,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7D;AAED,wBAAgB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAE1C;AAED,wBAAgB,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,CAE5C;AAED,wBAAgB,QAAQ,CACtB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC,CAEf;AAED,MAAM,WAAW,qCAAqC;IACpD,KAAK,EAAE,CACL,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,kCAAkC;IACtE,eAAe,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,kBAAkB;IAC3D,kBAAkB,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,KACvC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnB,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnD,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhC,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAElC,QAAQ,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACtE;AAED,QAAA,MAAM,+BAA+B,EAAE,
|
|
1
|
+
{"version":3,"file":"nativeBridge.d.ts","sourceRoot":"","sources":["../../../../src/nativeBridge.ts"],"names":[],"mappings":"AAoBA,wBAAgB,KAAK,CACnB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,EAClC,eAAe,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,EACvC,kBAAkB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,GACzC,OAAO,CAAC,IAAI,CAAC,CAOf;AAED,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7D;AAED,wBAAgB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAE1C;AAED,wBAAgB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAErC;AAED,wBAAgB,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC,CAE5C;AAED,wBAAgB,QAAQ,CACtB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC,CAEf;AAED,MAAM,WAAW,qCAAqC;IACpD,KAAK,EAAE,CACL,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,kCAAkC;IACtE,eAAe,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,kBAAkB;IAC3D,kBAAkB,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,KACvC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnB,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnD,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3B,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAElC,QAAQ,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACtE;AAED,QAAA,MAAM,+BAA+B,EAAE,qCAOtC,CAAC;AAEF,eAAe,+BAA+B,CAAC"}
|
|
@@ -1,18 +1,29 @@
|
|
|
1
1
|
import type { EventEnvelope, EventType, FlushResult, GroupOptions, IdentifyOptions, JsonValue, PlushAnalytics as CorePlushAnalytics, PlushAnalyticsConfig as CoreConfig, ReplayChunkEnvelope, ReplayRecordEmission, ReplayRecorderAdapter, RetryOptions, ScreenOptions, SessionRecordingOptions as CoreSessionRecordingOptions, StorageAdapter, TrackOptions, UnifiedBatchPayload } from "@plushanalytics/javascript";
|
|
2
|
-
export type
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
export type SessionReplayMaskingConfig = {
|
|
3
|
+
textInputs?: boolean;
|
|
4
|
+
images?: boolean;
|
|
5
|
+
sandboxedViews?: boolean;
|
|
6
|
+
};
|
|
7
|
+
export type SessionReplayConfig = {
|
|
8
|
+
enabled?: boolean;
|
|
9
|
+
masking?: SessionReplayMaskingConfig;
|
|
6
10
|
captureLog?: boolean;
|
|
7
11
|
captureNetworkTelemetry?: boolean;
|
|
8
12
|
throttleDelayMs?: number;
|
|
9
13
|
};
|
|
14
|
+
export type MobileReplayConfig = SessionReplayConfig & {
|
|
15
|
+
maskAllTextInputs?: boolean;
|
|
16
|
+
maskAllImages?: boolean;
|
|
17
|
+
maskAllSandboxedViews?: boolean;
|
|
18
|
+
};
|
|
10
19
|
export type SessionRecordingOptions = CoreSessionRecordingOptions & {
|
|
11
20
|
replayHost?: string;
|
|
12
21
|
replaySnapshotPath?: string;
|
|
13
22
|
replayConfig?: MobileReplayConfig;
|
|
14
23
|
};
|
|
15
|
-
export type PlushAnalyticsConfig = CoreConfig
|
|
24
|
+
export type PlushAnalyticsConfig = CoreConfig & {
|
|
25
|
+
sessionReplayConfig?: SessionReplayConfig;
|
|
26
|
+
};
|
|
16
27
|
export type { EventEnvelope, EventType, FlushResult, GroupOptions, IdentifyOptions, JsonValue, ReplayChunkEnvelope, ReplayRecordEmission, ReplayRecorderAdapter, RetryOptions, ScreenOptions, StorageAdapter, TrackOptions, UnifiedBatchPayload };
|
|
17
28
|
export type PlushAnalytics = Omit<CorePlushAnalytics, "startSessionRecording" | "startReplay"> & {
|
|
18
29
|
startSessionRecording: (options?: SessionRecordingOptions) => Promise<void>;
|