@multiplayer-app/session-recorder-browser 1.2.13 → 1.2.15
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 +7 -13
- package/dist/browser/index.js +328 -55
- package/dist/browser/index.js.map +1 -1
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/session-recorder.d.ts.map +1 -1
- package/dist/exporters/index.js +1 -1
- package/dist/exporters/index.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.LICENSE.txt +16 -0
- package/dist/index.js.map +1 -1
- package/dist/navigation/index.d.ts.map +1 -0
- package/dist/navigation/navigationRecorder.d.ts.map +1 -0
- package/dist/navigation/types.d.ts.map +1 -0
- package/dist/sessionRecorder.d.ts.map +1 -1
- package/dist/types/sessionRecorder.d.ts.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -67,7 +67,7 @@ SessionRecorder.init({
|
|
|
67
67
|
// e.g. if you serve your website from www.example.com
|
|
68
68
|
// and your backend domain is at api.example.com set value as shown below:
|
|
69
69
|
// format: string|RegExp|Array
|
|
70
|
-
|
|
70
|
+
propagateTraceHeaderCorsUrls: [new RegExp('https://api.example.com', 'i')],
|
|
71
71
|
})
|
|
72
72
|
|
|
73
73
|
// add any key value pairs which should be associated with a session
|
|
@@ -229,7 +229,7 @@ SessionRecorder.stop('Finished session') // optional: pass reason for stopping t
|
|
|
229
229
|
|
|
230
230
|
### Continuous session recording
|
|
231
231
|
|
|
232
|
-
Below is an example showing how to create a session in `CONTINUOUS` mode. Continuous session recordings **stream** all the data received between calling `start` and `stop` -
|
|
232
|
+
Below is an example showing how to create a session in `CONTINUOUS` mode. Continuous session recordings **stream** all the data received between calling `start` and `stop` -
|
|
233
233
|
but only **save** a rolling window data (90 seconds by default) when:
|
|
234
234
|
|
|
235
235
|
- an exception or error occurs;
|
|
@@ -262,22 +262,15 @@ SessionRecorder.stop('Finished session') // optional: pass reason for stopping t
|
|
|
262
262
|
Continuous session recordings may also be saved from within any service or component involved in a trace by adding the attributes below to a span:
|
|
263
263
|
|
|
264
264
|
```javascript
|
|
265
|
-
import { trace, context } from
|
|
266
|
-
import SessionRecorder from
|
|
265
|
+
import { trace, context } from '@opentelemetry/api'
|
|
266
|
+
import SessionRecorder from '@multiplayer-app/session-recorder-browser'
|
|
267
267
|
|
|
268
268
|
const activeContext = context.active()
|
|
269
269
|
|
|
270
270
|
const activeSpan = trace.getSpan(activeContext)
|
|
271
271
|
|
|
272
|
-
activeSpan.setAttribute(
|
|
273
|
-
|
|
274
|
-
true
|
|
275
|
-
)
|
|
276
|
-
activeSpan.setAttribute(
|
|
277
|
-
SessionRecorder.ATTR_MULTIPLAYER_CONTINUOUS_SESSION_AUTO_SAVE_REASON,
|
|
278
|
-
"Some reason"
|
|
279
|
-
)
|
|
280
|
-
|
|
272
|
+
activeSpan.setAttribute(SessionRecorder.ATTR_MULTIPLAYER_CONTINUOUS_SESSION_AUTO_SAVE, true)
|
|
273
|
+
activeSpan.setAttribute(SessionRecorder.ATTR_MULTIPLAYER_CONTINUOUS_SESSION_AUTO_SAVE_REASON, 'Some reason')
|
|
281
274
|
```
|
|
282
275
|
|
|
283
276
|
## Session Recorder for Next.js
|
|
@@ -379,6 +372,7 @@ SessionRecorder.init({
|
|
|
379
372
|
|
|
380
373
|
- Next.js: initialize the browser SDK in a Client Component (see example in the browser README). Ensure it runs only in the browser.
|
|
381
374
|
- CORS: when your frontend calls multiple API domains, set `propagateTraceHeaderCorsUrls` to match them so parent/child spans correlate across services.
|
|
375
|
+
|
|
382
376
|
## Documentation
|
|
383
377
|
|
|
384
378
|
For more details on how the Multiplayer Session Recorder integrates with your backend architecture and system auto-documentation, check out our [official documentation](https://www.multiplayer.app/docs/features/system-auto-documentation/).
|
package/dist/browser/index.js
CHANGED
|
@@ -25243,7 +25243,7 @@ const DEFAULT_MAX_HTTP_CAPTURING_PAYLOAD_SIZE = 100000;
|
|
|
25243
25243
|
const SESSION_RESPONSE = 'multiplayer-debug-session-response';
|
|
25244
25244
|
const CONTINUOUS_DEBUGGING_TIMEOUT = 60000; // 1 minutes
|
|
25245
25245
|
const DEBUG_SESSION_MAX_DURATION_SECONDS = 10 * 60 + 30; // TODO: move to shared config otel core
|
|
25246
|
-
const PACKAGE_VERSION_EXPORT = "1.2.
|
|
25246
|
+
const PACKAGE_VERSION_EXPORT = "1.2.15" || 0;
|
|
25247
25247
|
// Regex patterns for OpenTelemetry ignore URLs
|
|
25248
25248
|
const OTEL_IGNORE_URLS = [
|
|
25249
25249
|
// Traces endpoint
|
|
@@ -25329,6 +25329,7 @@ const BASE_CONFIG = {
|
|
|
25329
25329
|
apiBaseUrl: _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_0__.MULTIPLAYER_BASE_API_URL,
|
|
25330
25330
|
exporterEndpoint: _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_0__.MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_HTTP_URL,
|
|
25331
25331
|
recordCanvas: false,
|
|
25332
|
+
recordNavigation: true,
|
|
25332
25333
|
schemifyDocSpanPayload: true,
|
|
25333
25334
|
ignoreUrls: [],
|
|
25334
25335
|
propagateTraceHeaderCorsUrls: [],
|
|
@@ -25506,6 +25507,7 @@ const getSessionRecorderConfig = (c) => {
|
|
|
25506
25507
|
showWidget: (0,_validators__WEBPACK_IMPORTED_MODULE_3__.isValidBoolean)(c.showWidget, _defaults__WEBPACK_IMPORTED_MODULE_1__.BASE_CONFIG.showWidget),
|
|
25507
25508
|
showContinuousRecording: (0,_validators__WEBPACK_IMPORTED_MODULE_3__.isValidBoolean)(c.showContinuousRecording, _defaults__WEBPACK_IMPORTED_MODULE_1__.BASE_CONFIG.showContinuousRecording),
|
|
25508
25509
|
recordCanvas: (0,_validators__WEBPACK_IMPORTED_MODULE_3__.isValidBoolean)(c.recordCanvas, _defaults__WEBPACK_IMPORTED_MODULE_1__.BASE_CONFIG.recordCanvas),
|
|
25510
|
+
recordNavigation: (0,_validators__WEBPACK_IMPORTED_MODULE_3__.isValidBoolean)(c.recordNavigation, _defaults__WEBPACK_IMPORTED_MODULE_1__.BASE_CONFIG.recordNavigation),
|
|
25509
25511
|
widgetButtonPlacement: (0,_validators__WEBPACK_IMPORTED_MODULE_3__.isValidEnum)(c.widgetButtonPlacement, _defaults__WEBPACK_IMPORTED_MODULE_1__.BASE_CONFIG.widgetButtonPlacement, Object.values(_types__WEBPACK_IMPORTED_MODULE_0__.WidgetButtonPlacement)),
|
|
25510
25512
|
ignoreUrls: (0,_validators__WEBPACK_IMPORTED_MODULE_3__.isValidArray)(c.ignoreUrls, _defaults__WEBPACK_IMPORTED_MODULE_1__.BASE_CONFIG.ignoreUrls),
|
|
25511
25513
|
sampleTraceRatio: (0,_validators__WEBPACK_IMPORTED_MODULE_3__.isValidNumber)(c.sampleTraceRatio, _defaults__WEBPACK_IMPORTED_MODULE_1__.BASE_CONFIG.sampleTraceRatio),
|
|
@@ -25639,6 +25641,250 @@ function setupListeners(sessionRecorder) {
|
|
|
25639
25641
|
}
|
|
25640
25642
|
|
|
25641
25643
|
|
|
25644
|
+
/***/ }),
|
|
25645
|
+
|
|
25646
|
+
/***/ "./src/navigation/index.ts":
|
|
25647
|
+
/*!*********************************!*\
|
|
25648
|
+
!*** ./src/navigation/index.ts ***!
|
|
25649
|
+
\*********************************/
|
|
25650
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
25651
|
+
|
|
25652
|
+
"use strict";
|
|
25653
|
+
__webpack_require__.r(__webpack_exports__);
|
|
25654
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
25655
|
+
/* harmony export */ NavigationRecorder: () => (/* reexport safe */ _navigationRecorder__WEBPACK_IMPORTED_MODULE_0__.NavigationRecorder)
|
|
25656
|
+
/* harmony export */ });
|
|
25657
|
+
/* harmony import */ var _navigationRecorder__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./navigationRecorder */ "./src/navigation/navigationRecorder.ts");
|
|
25658
|
+
/* harmony import */ var _types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./types */ "./src/navigation/types.ts");
|
|
25659
|
+
|
|
25660
|
+
|
|
25661
|
+
|
|
25662
|
+
|
|
25663
|
+
/***/ }),
|
|
25664
|
+
|
|
25665
|
+
/***/ "./src/navigation/navigationRecorder.ts":
|
|
25666
|
+
/*!**********************************************!*\
|
|
25667
|
+
!*** ./src/navigation/navigationRecorder.ts ***!
|
|
25668
|
+
\**********************************************/
|
|
25669
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
25670
|
+
|
|
25671
|
+
"use strict";
|
|
25672
|
+
__webpack_require__.r(__webpack_exports__);
|
|
25673
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
25674
|
+
/* harmony export */ NavigationRecorder: () => (/* binding */ NavigationRecorder)
|
|
25675
|
+
/* harmony export */ });
|
|
25676
|
+
/* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/trace-api.js");
|
|
25677
|
+
/* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/trace/status.js");
|
|
25678
|
+
/* harmony import */ var _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @multiplayer-app/session-recorder-common */ "../session-recorder-common/dist/esm/index-browser.js");
|
|
25679
|
+
|
|
25680
|
+
|
|
25681
|
+
const DEFAULT_CONFIG = {
|
|
25682
|
+
enabled: true,
|
|
25683
|
+
};
|
|
25684
|
+
const DEFAULT_FRAMEWORK = 'web';
|
|
25685
|
+
const DEFAULT_SOURCE = 'router';
|
|
25686
|
+
class NavigationRecorder {
|
|
25687
|
+
constructor() {
|
|
25688
|
+
this.config = { ...DEFAULT_CONFIG };
|
|
25689
|
+
this.isRecording = false;
|
|
25690
|
+
this.currentRoute = null;
|
|
25691
|
+
this.stack = [];
|
|
25692
|
+
this.navigationStartTime = 0;
|
|
25693
|
+
this.sessionContext = {
|
|
25694
|
+
sessionId: null,
|
|
25695
|
+
sessionType: _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_0__.SessionType.MANUAL,
|
|
25696
|
+
};
|
|
25697
|
+
this.api = {
|
|
25698
|
+
record: (signal) => this.record(signal),
|
|
25699
|
+
reset: () => this.reset(),
|
|
25700
|
+
getCurrentRoute: () => this.currentRoute,
|
|
25701
|
+
getStack: () => [...this.stack],
|
|
25702
|
+
};
|
|
25703
|
+
}
|
|
25704
|
+
init(config) {
|
|
25705
|
+
this.config = { ...DEFAULT_CONFIG, ...config };
|
|
25706
|
+
}
|
|
25707
|
+
start(context) {
|
|
25708
|
+
var _a, _b;
|
|
25709
|
+
if (!this.config.enabled) {
|
|
25710
|
+
return;
|
|
25711
|
+
}
|
|
25712
|
+
this.sessionContext = {
|
|
25713
|
+
sessionId: (_a = context === null || context === void 0 ? void 0 : context.sessionId) !== null && _a !== void 0 ? _a : null,
|
|
25714
|
+
sessionType: (_b = context === null || context === void 0 ? void 0 : context.sessionType) !== null && _b !== void 0 ? _b : _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_0__.SessionType.MANUAL,
|
|
25715
|
+
};
|
|
25716
|
+
this.isRecording = true;
|
|
25717
|
+
this.navigationStartTime = Date.now();
|
|
25718
|
+
}
|
|
25719
|
+
pause() {
|
|
25720
|
+
this.isRecording = false;
|
|
25721
|
+
}
|
|
25722
|
+
resume() {
|
|
25723
|
+
if (!this.config.enabled) {
|
|
25724
|
+
return;
|
|
25725
|
+
}
|
|
25726
|
+
this.isRecording = true;
|
|
25727
|
+
this.navigationStartTime = Date.now();
|
|
25728
|
+
}
|
|
25729
|
+
stop() {
|
|
25730
|
+
this.isRecording = false;
|
|
25731
|
+
this.reset();
|
|
25732
|
+
}
|
|
25733
|
+
record(signal) {
|
|
25734
|
+
var _a;
|
|
25735
|
+
if (!this.config.enabled || !this.isRecording) {
|
|
25736
|
+
return;
|
|
25737
|
+
}
|
|
25738
|
+
const timestamp = (_a = signal.timestamp) !== null && _a !== void 0 ? _a : Date.now();
|
|
25739
|
+
const routeKey = this.resolveRouteKey(signal);
|
|
25740
|
+
const previousRoute = this.currentRoute;
|
|
25741
|
+
if (routeKey) {
|
|
25742
|
+
this.updateNavigationStack(routeKey, signal.navigationType);
|
|
25743
|
+
this.currentRoute = routeKey;
|
|
25744
|
+
}
|
|
25745
|
+
const metadata = {
|
|
25746
|
+
...(signal.metadata || {}),
|
|
25747
|
+
framework: signal.framework || DEFAULT_FRAMEWORK,
|
|
25748
|
+
source: signal.source || DEFAULT_SOURCE,
|
|
25749
|
+
navigationType: signal.navigationType || (previousRoute ? 'push' : 'initial'),
|
|
25750
|
+
navigationDuration: timestamp - this.navigationStartTime,
|
|
25751
|
+
stackDepth: this.stack.length,
|
|
25752
|
+
};
|
|
25753
|
+
if (previousRoute) {
|
|
25754
|
+
metadata.previousRoute = previousRoute;
|
|
25755
|
+
}
|
|
25756
|
+
if (signal.path) {
|
|
25757
|
+
metadata.path = signal.path;
|
|
25758
|
+
}
|
|
25759
|
+
if (signal.title) {
|
|
25760
|
+
metadata.documentTitle = signal.title;
|
|
25761
|
+
}
|
|
25762
|
+
if (signal.url) {
|
|
25763
|
+
metadata.url = signal.url;
|
|
25764
|
+
}
|
|
25765
|
+
if (signal.state !== undefined) {
|
|
25766
|
+
metadata.state = this.stringifySafe(signal.state);
|
|
25767
|
+
}
|
|
25768
|
+
const paramsString = signal.params ? this.stringifySafe(signal.params) : undefined;
|
|
25769
|
+
this.recordSpan({
|
|
25770
|
+
timestamp,
|
|
25771
|
+
routeName: signal.routeName || routeKey,
|
|
25772
|
+
paramsString,
|
|
25773
|
+
metadata,
|
|
25774
|
+
});
|
|
25775
|
+
this.navigationStartTime = timestamp;
|
|
25776
|
+
}
|
|
25777
|
+
recordSpan(payload) {
|
|
25778
|
+
var _a;
|
|
25779
|
+
try {
|
|
25780
|
+
const span = _opentelemetry_api__WEBPACK_IMPORTED_MODULE_1__.trace.getTracer('navigation').startSpan('Navigation.navigate', {
|
|
25781
|
+
startTime: payload.timestamp,
|
|
25782
|
+
attributes: {
|
|
25783
|
+
'navigation.system': 'router',
|
|
25784
|
+
'navigation.operation': 'navigate',
|
|
25785
|
+
'navigation.type': 'navigate',
|
|
25786
|
+
'navigation.platform': 'web',
|
|
25787
|
+
'navigation.session_id': (_a = this.sessionContext.sessionId) !== null && _a !== void 0 ? _a : undefined,
|
|
25788
|
+
'navigation.session_type': this.sessionContext.sessionType,
|
|
25789
|
+
'navigation.application': this.config.application,
|
|
25790
|
+
'navigation.environment': this.config.environment,
|
|
25791
|
+
'navigation.version': this.config.version,
|
|
25792
|
+
},
|
|
25793
|
+
});
|
|
25794
|
+
if (payload.routeName) {
|
|
25795
|
+
span.setAttribute('navigation.route_name', payload.routeName);
|
|
25796
|
+
}
|
|
25797
|
+
if (payload.paramsString) {
|
|
25798
|
+
span.setAttribute('navigation.params', payload.paramsString);
|
|
25799
|
+
}
|
|
25800
|
+
Object.entries(payload.metadata).forEach(([key, value]) => {
|
|
25801
|
+
const normalizedValue = typeof value === 'string' ? value : this.stringifySafe(value);
|
|
25802
|
+
span.setAttribute(`navigation.metadata.${key}`, normalizedValue);
|
|
25803
|
+
});
|
|
25804
|
+
span.setStatus({ code: _opentelemetry_api__WEBPACK_IMPORTED_MODULE_2__.SpanStatusCode.OK });
|
|
25805
|
+
span.end(payload.timestamp);
|
|
25806
|
+
}
|
|
25807
|
+
catch (error) {
|
|
25808
|
+
if (true) {
|
|
25809
|
+
// eslint-disable-next-line no-console
|
|
25810
|
+
console.warn('[SessionRecorder][NavigationRecorder] Failed to record navigation span', error);
|
|
25811
|
+
}
|
|
25812
|
+
}
|
|
25813
|
+
}
|
|
25814
|
+
updateNavigationStack(routeName, navigationType) {
|
|
25815
|
+
const normalized = (navigationType || '').toLowerCase();
|
|
25816
|
+
if (normalized === 'replace') {
|
|
25817
|
+
if (this.stack.length) {
|
|
25818
|
+
this.stack[this.stack.length - 1] = routeName;
|
|
25819
|
+
}
|
|
25820
|
+
else {
|
|
25821
|
+
this.stack.push(routeName);
|
|
25822
|
+
}
|
|
25823
|
+
return;
|
|
25824
|
+
}
|
|
25825
|
+
if (normalized === 'pop' || normalized === 'back' || normalized === 'goback') {
|
|
25826
|
+
const index = this.stack.lastIndexOf(routeName);
|
|
25827
|
+
if (index >= 0) {
|
|
25828
|
+
this.stack = this.stack.slice(0, index + 1);
|
|
25829
|
+
}
|
|
25830
|
+
else if (this.stack.length) {
|
|
25831
|
+
this.stack.pop();
|
|
25832
|
+
}
|
|
25833
|
+
return;
|
|
25834
|
+
}
|
|
25835
|
+
if (!this.stack.length || this.stack[this.stack.length - 1] !== routeName) {
|
|
25836
|
+
this.stack.push(routeName);
|
|
25837
|
+
}
|
|
25838
|
+
}
|
|
25839
|
+
resolveRouteKey(signal) {
|
|
25840
|
+
if (signal.routeName && typeof signal.routeName === 'string') {
|
|
25841
|
+
return signal.routeName;
|
|
25842
|
+
}
|
|
25843
|
+
if (signal.path && typeof signal.path === 'string') {
|
|
25844
|
+
return signal.path;
|
|
25845
|
+
}
|
|
25846
|
+
if (signal.url && typeof signal.url === 'string') {
|
|
25847
|
+
try {
|
|
25848
|
+
return new URL(signal.url).pathname || signal.url;
|
|
25849
|
+
}
|
|
25850
|
+
catch (_error) {
|
|
25851
|
+
return signal.url;
|
|
25852
|
+
}
|
|
25853
|
+
}
|
|
25854
|
+
if (signal.title && typeof signal.title === 'string') {
|
|
25855
|
+
return signal.title;
|
|
25856
|
+
}
|
|
25857
|
+
return 'unknown';
|
|
25858
|
+
}
|
|
25859
|
+
stringifySafe(value) {
|
|
25860
|
+
try {
|
|
25861
|
+
return JSON.stringify(value);
|
|
25862
|
+
}
|
|
25863
|
+
catch (_error) {
|
|
25864
|
+
return String(value);
|
|
25865
|
+
}
|
|
25866
|
+
}
|
|
25867
|
+
reset() {
|
|
25868
|
+
this.stack = [];
|
|
25869
|
+
this.currentRoute = null;
|
|
25870
|
+
this.navigationStartTime = Date.now();
|
|
25871
|
+
}
|
|
25872
|
+
}
|
|
25873
|
+
|
|
25874
|
+
|
|
25875
|
+
/***/ }),
|
|
25876
|
+
|
|
25877
|
+
/***/ "./src/navigation/types.ts":
|
|
25878
|
+
/*!*********************************!*\
|
|
25879
|
+
!*** ./src/navigation/types.ts ***!
|
|
25880
|
+
\*********************************/
|
|
25881
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
25882
|
+
|
|
25883
|
+
"use strict";
|
|
25884
|
+
__webpack_require__.r(__webpack_exports__);
|
|
25885
|
+
|
|
25886
|
+
|
|
25887
|
+
|
|
25642
25888
|
/***/ }),
|
|
25643
25889
|
|
|
25644
25890
|
/***/ "./src/otel/helpers.ts":
|
|
@@ -26969,7 +27215,9 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
26969
27215
|
/* harmony import */ var _index_scss__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./index.scss */ "./src/index.scss");
|
|
26970
27216
|
/* harmony import */ var _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @multiplayer-app/session-recorder-common */ "../session-recorder-common/dist/esm/index-browser.js");
|
|
26971
27217
|
/* harmony import */ var _sessionWidget_buttonStateConfigs__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./sessionWidget/buttonStateConfigs */ "./src/sessionWidget/buttonStateConfigs.ts");
|
|
26972
|
-
/* harmony import */ var
|
|
27218
|
+
/* harmony import */ var lib0_observable__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! lib0/observable */ "../../node_modules/lib0/observable.js");
|
|
27219
|
+
/* harmony import */ var _navigation__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./navigation */ "./src/navigation/index.ts");
|
|
27220
|
+
|
|
26973
27221
|
|
|
26974
27222
|
|
|
26975
27223
|
|
|
@@ -26984,7 +27232,10 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
26984
27232
|
|
|
26985
27233
|
|
|
26986
27234
|
|
|
26987
|
-
class SessionRecorder extends
|
|
27235
|
+
class SessionRecorder extends lib0_observable__WEBPACK_IMPORTED_MODULE_14__.Observable {
|
|
27236
|
+
get navigation() {
|
|
27237
|
+
return this._navigationRecorder.api;
|
|
27238
|
+
}
|
|
26988
27239
|
get isInitialized() {
|
|
26989
27240
|
return this._isInitialized;
|
|
26990
27241
|
}
|
|
@@ -27032,14 +27283,13 @@ class SessionRecorder extends lib0_observable__WEBPACK_IMPORTED_MODULE_13__.Obse
|
|
|
27032
27283
|
set sessionAttributes(attributes) {
|
|
27033
27284
|
this._sessionAttributes = attributes;
|
|
27034
27285
|
}
|
|
27035
|
-
/**
|
|
27036
|
-
* Error message getter and setter to reflect on the session widget
|
|
27037
|
-
*/
|
|
27038
27286
|
get error() {
|
|
27039
|
-
return this.
|
|
27287
|
+
return this._error;
|
|
27040
27288
|
}
|
|
27041
27289
|
set error(v) {
|
|
27290
|
+
this._error = v;
|
|
27042
27291
|
this._sessionWidget.error = v;
|
|
27292
|
+
this.emit('error', [v]);
|
|
27043
27293
|
}
|
|
27044
27294
|
/**
|
|
27045
27295
|
* Returns the HTML button element for the session widget's recorder button.
|
|
@@ -27061,6 +27311,7 @@ class SessionRecorder extends lib0_observable__WEBPACK_IMPORTED_MODULE_13__.Obse
|
|
|
27061
27311
|
this._tracer = new _otel__WEBPACK_IMPORTED_MODULE_0__.TracerBrowserSDK();
|
|
27062
27312
|
this._recorder = new _rrweb__WEBPACK_IMPORTED_MODULE_1__.RecorderBrowserSDK();
|
|
27063
27313
|
this._sessionWidget = new _sessionWidget__WEBPACK_IMPORTED_MODULE_7__.SessionWidget();
|
|
27314
|
+
this._navigationRecorder = new _navigation__WEBPACK_IMPORTED_MODULE_13__.NavigationRecorder();
|
|
27064
27315
|
this._startRequestController = null;
|
|
27065
27316
|
this._isInitialized = false;
|
|
27066
27317
|
// Session ID and state are stored in localStorage
|
|
@@ -27069,6 +27320,10 @@ class SessionRecorder extends lib0_observable__WEBPACK_IMPORTED_MODULE_13__.Obse
|
|
|
27069
27320
|
this._sessionState = null;
|
|
27070
27321
|
this._session = null;
|
|
27071
27322
|
this._sessionAttributes = null;
|
|
27323
|
+
/**
|
|
27324
|
+
* Error message getter and setter
|
|
27325
|
+
*/
|
|
27326
|
+
this._error = '';
|
|
27072
27327
|
const sessionLocal = (0,_utils__WEBPACK_IMPORTED_MODULE_2__.getStoredItem)(_config__WEBPACK_IMPORTED_MODULE_4__.SESSION_PROP_NAME, true);
|
|
27073
27328
|
const sessionIdLocal = (0,_utils__WEBPACK_IMPORTED_MODULE_2__.getStoredItem)(_config__WEBPACK_IMPORTED_MODULE_4__.SESSION_ID_PROP_NAME);
|
|
27074
27329
|
const sessionStateLocal = (0,_utils__WEBPACK_IMPORTED_MODULE_2__.getStoredItem)(_config__WEBPACK_IMPORTED_MODULE_4__.SESSION_STATE_PROP_NAME);
|
|
@@ -27099,10 +27354,16 @@ class SessionRecorder extends lib0_observable__WEBPACK_IMPORTED_MODULE_13__.Obse
|
|
|
27099
27354
|
this._isInitialized = true;
|
|
27100
27355
|
this._checkOperation('init');
|
|
27101
27356
|
(0,_patch__WEBPACK_IMPORTED_MODULE_5__.setMaxCapturingHttpPayloadSize)(this._configs.maxCapturingHttpPayloadSize || _config__WEBPACK_IMPORTED_MODULE_4__.DEFAULT_MAX_HTTP_CAPTURING_PAYLOAD_SIZE);
|
|
27102
|
-
(0,_patch__WEBPACK_IMPORTED_MODULE_5__.setShouldRecordHttpData)(
|
|
27357
|
+
(0,_patch__WEBPACK_IMPORTED_MODULE_5__.setShouldRecordHttpData)(this._configs.captureBody, this._configs.captureHeaders);
|
|
27103
27358
|
this._tracer.init(this._configs);
|
|
27104
27359
|
this._apiService.init(this._configs);
|
|
27105
27360
|
this._sessionWidget.init(this._configs);
|
|
27361
|
+
this._navigationRecorder.init({
|
|
27362
|
+
enabled: this._configs.recordNavigation,
|
|
27363
|
+
application: this._configs.application,
|
|
27364
|
+
environment: this._configs.environment,
|
|
27365
|
+
version: this._configs.version,
|
|
27366
|
+
});
|
|
27106
27367
|
if (this._configs.apiKey) {
|
|
27107
27368
|
this._recorder.init(this._configs);
|
|
27108
27369
|
}
|
|
@@ -27114,7 +27375,7 @@ class SessionRecorder extends lib0_observable__WEBPACK_IMPORTED_MODULE_13__.Obse
|
|
|
27114
27375
|
this._registerSessionAutoCreation();
|
|
27115
27376
|
_services_messaging_service__WEBPACK_IMPORTED_MODULE_8__["default"].sendMessage('state-change', this.sessionState);
|
|
27116
27377
|
// Emit init observable event
|
|
27117
|
-
this.emit('init', []);
|
|
27378
|
+
this.emit('init', [this]);
|
|
27118
27379
|
}
|
|
27119
27380
|
/**
|
|
27120
27381
|
* Save the continuous recording session
|
|
@@ -27403,6 +27664,7 @@ class SessionRecorder extends lib0_observable__WEBPACK_IMPORTED_MODULE_13__.Obse
|
|
|
27403
27664
|
this.sessionType = this.sessionType;
|
|
27404
27665
|
this._tracer.start(this.sessionId, this.sessionType);
|
|
27405
27666
|
this._recorder.start(this.sessionId, this.sessionType);
|
|
27667
|
+
this._navigationRecorder.start({ sessionId: this.sessionId, sessionType: this.sessionType, });
|
|
27406
27668
|
if (this.session) {
|
|
27407
27669
|
_eventBus__WEBPACK_IMPORTED_MODULE_6__.recorderEventBus.emit(_config__WEBPACK_IMPORTED_MODULE_4__.SESSION_STARTED_EVENT, this.session);
|
|
27408
27670
|
this._recorder.subscribeToSession(this.session);
|
|
@@ -27416,6 +27678,7 @@ class SessionRecorder extends lib0_observable__WEBPACK_IMPORTED_MODULE_13__.Obse
|
|
|
27416
27678
|
this.sessionState = _types__WEBPACK_IMPORTED_MODULE_3__.SessionState.stopped;
|
|
27417
27679
|
this._tracer.stop();
|
|
27418
27680
|
this._recorder.stop();
|
|
27681
|
+
this._navigationRecorder.stop();
|
|
27419
27682
|
}
|
|
27420
27683
|
/**
|
|
27421
27684
|
* Pause the session tracing and recording
|
|
@@ -27423,6 +27686,7 @@ class SessionRecorder extends lib0_observable__WEBPACK_IMPORTED_MODULE_13__.Obse
|
|
|
27423
27686
|
_pause() {
|
|
27424
27687
|
this._tracer.stop();
|
|
27425
27688
|
this._recorder.stop();
|
|
27689
|
+
this._navigationRecorder.pause();
|
|
27426
27690
|
this.sessionState = _types__WEBPACK_IMPORTED_MODULE_3__.SessionState.paused;
|
|
27427
27691
|
}
|
|
27428
27692
|
/**
|
|
@@ -27431,6 +27695,7 @@ class SessionRecorder extends lib0_observable__WEBPACK_IMPORTED_MODULE_13__.Obse
|
|
|
27431
27695
|
_resume() {
|
|
27432
27696
|
this._tracer.start(this.sessionId, this.sessionType);
|
|
27433
27697
|
this._recorder.start(this.sessionId, this.sessionType);
|
|
27698
|
+
this._navigationRecorder.resume();
|
|
27434
27699
|
this.sessionState = _types__WEBPACK_IMPORTED_MODULE_3__.SessionState.started;
|
|
27435
27700
|
}
|
|
27436
27701
|
_setupSessionAndStart(session, configureExporters = true) {
|
|
@@ -48942,50 +49207,54 @@ var __webpack_exports__ = {};
|
|
|
48942
49207
|
\**********************/
|
|
48943
49208
|
__webpack_require__.r(__webpack_exports__);
|
|
48944
49209
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
48945
|
-
/* harmony export */ ATTR_MULTIPLAYER_CLIENT_ID: () => (/* reexport safe */
|
|
48946
|
-
/* harmony export */ ATTR_MULTIPLAYER_CONTINUOUS_SESSION_AUTO_SAVE: () => (/* reexport safe */
|
|
48947
|
-
/* harmony export */ ATTR_MULTIPLAYER_CONTINUOUS_SESSION_AUTO_SAVE_REASON: () => (/* reexport safe */
|
|
48948
|
-
/* harmony export */ ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE: () => (/* reexport safe */
|
|
48949
|
-
/* harmony export */ ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE_ENCODING: () => (/* reexport safe */
|
|
48950
|
-
/* harmony export */ ATTR_MULTIPLAYER_GRPC_RESPONSE_MESSAGE: () => (/* reexport safe */
|
|
48951
|
-
/* harmony export */ ATTR_MULTIPLAYER_HTTP_PROXY: () => (/* reexport safe */
|
|
48952
|
-
/* harmony export */ ATTR_MULTIPLAYER_HTTP_PROXY_TYPE: () => (/* reexport safe */
|
|
48953
|
-
/* harmony export */ ATTR_MULTIPLAYER_HTTP_REQUEST_BODY: () => (/* reexport safe */
|
|
48954
|
-
/* harmony export */ ATTR_MULTIPLAYER_HTTP_REQUEST_HEADERS: () => (/* reexport safe */
|
|
48955
|
-
/* harmony export */ ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY: () => (/* reexport safe */
|
|
48956
|
-
/* harmony export */ ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY_ENCODING: () => (/* reexport safe */
|
|
48957
|
-
/* harmony export */ ATTR_MULTIPLAYER_HTTP_RESPONSE_HEADERS: () => (/* reexport safe */
|
|
48958
|
-
/* harmony export */ ATTR_MULTIPLAYER_INTEGRATION_ID: () => (/* reexport safe */
|
|
48959
|
-
/* harmony export */ ATTR_MULTIPLAYER_ISSUE_CUSTOM_HASH: () => (/* reexport safe */
|
|
48960
|
-
/* harmony export */ ATTR_MULTIPLAYER_MESSAGING_MESSAGE_BODY: () => (/* reexport safe */
|
|
48961
|
-
/* harmony export */ ATTR_MULTIPLAYER_MESSAGING_MESSAGE_BODY_ENCODING: () => (/* reexport safe */
|
|
48962
|
-
/* harmony export */ ATTR_MULTIPLAYER_PLATFORM_ID: () => (/* reexport safe */
|
|
48963
|
-
/* harmony export */ ATTR_MULTIPLAYER_PLATFORM_NAME: () => (/* reexport safe */
|
|
48964
|
-
/* harmony export */ ATTR_MULTIPLAYER_PROJECT_ID: () => (/* reexport safe */
|
|
48965
|
-
/* harmony export */ ATTR_MULTIPLAYER_RPC_REQUEST_MESSAGE: () => (/* reexport safe */
|
|
48966
|
-
/* harmony export */ ATTR_MULTIPLAYER_RPC_REQUEST_MESSAGE_ENCODING: () => (/* reexport safe */
|
|
48967
|
-
/* harmony export */ ATTR_MULTIPLAYER_RPC_RESPONSE_MESSAGE: () => (/* reexport safe */
|
|
48968
|
-
/* harmony export */ ATTR_MULTIPLAYER_SESSION_ID: () => (/* reexport safe */
|
|
48969
|
-
/* harmony export */ ATTR_MULTIPLAYER_SESSION_RECORDER_VERSION: () => (/* reexport safe */
|
|
48970
|
-
/* harmony export */ ATTR_MULTIPLAYER_WORKSPACE_ID: () => (/* reexport safe */
|
|
48971
|
-
/* harmony export */
|
|
48972
|
-
/* harmony export */
|
|
48973
|
-
/* harmony export */
|
|
48974
|
-
/* harmony export */
|
|
48975
|
-
/* harmony export */
|
|
48976
|
-
/* harmony export */
|
|
48977
|
-
/* harmony export */
|
|
48978
|
-
/* harmony export */
|
|
48979
|
-
/* harmony export */
|
|
48980
|
-
/* harmony export */
|
|
48981
|
-
/* harmony export */
|
|
48982
|
-
/* harmony export */
|
|
48983
|
-
/* harmony export */
|
|
48984
|
-
/* harmony export */
|
|
48985
|
-
/* harmony export */
|
|
48986
|
-
/* harmony export */
|
|
48987
|
-
/* harmony export */
|
|
48988
|
-
/* harmony export */
|
|
49210
|
+
/* harmony export */ ATTR_MULTIPLAYER_CLIENT_ID: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_CLIENT_ID),
|
|
49211
|
+
/* harmony export */ ATTR_MULTIPLAYER_CONTINUOUS_SESSION_AUTO_SAVE: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_CONTINUOUS_SESSION_AUTO_SAVE),
|
|
49212
|
+
/* harmony export */ ATTR_MULTIPLAYER_CONTINUOUS_SESSION_AUTO_SAVE_REASON: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_CONTINUOUS_SESSION_AUTO_SAVE_REASON),
|
|
49213
|
+
/* harmony export */ ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE),
|
|
49214
|
+
/* harmony export */ ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE_ENCODING: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE_ENCODING),
|
|
49215
|
+
/* harmony export */ ATTR_MULTIPLAYER_GRPC_RESPONSE_MESSAGE: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_GRPC_RESPONSE_MESSAGE),
|
|
49216
|
+
/* harmony export */ ATTR_MULTIPLAYER_HTTP_PROXY: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_HTTP_PROXY),
|
|
49217
|
+
/* harmony export */ ATTR_MULTIPLAYER_HTTP_PROXY_TYPE: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_HTTP_PROXY_TYPE),
|
|
49218
|
+
/* harmony export */ ATTR_MULTIPLAYER_HTTP_REQUEST_BODY: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_HTTP_REQUEST_BODY),
|
|
49219
|
+
/* harmony export */ ATTR_MULTIPLAYER_HTTP_REQUEST_HEADERS: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_HTTP_REQUEST_HEADERS),
|
|
49220
|
+
/* harmony export */ ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY),
|
|
49221
|
+
/* harmony export */ ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY_ENCODING: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY_ENCODING),
|
|
49222
|
+
/* harmony export */ ATTR_MULTIPLAYER_HTTP_RESPONSE_HEADERS: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_HTTP_RESPONSE_HEADERS),
|
|
49223
|
+
/* harmony export */ ATTR_MULTIPLAYER_INTEGRATION_ID: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_INTEGRATION_ID),
|
|
49224
|
+
/* harmony export */ ATTR_MULTIPLAYER_ISSUE_CUSTOM_HASH: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_ISSUE_CUSTOM_HASH),
|
|
49225
|
+
/* harmony export */ ATTR_MULTIPLAYER_MESSAGING_MESSAGE_BODY: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_MESSAGING_MESSAGE_BODY),
|
|
49226
|
+
/* harmony export */ ATTR_MULTIPLAYER_MESSAGING_MESSAGE_BODY_ENCODING: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_MESSAGING_MESSAGE_BODY_ENCODING),
|
|
49227
|
+
/* harmony export */ ATTR_MULTIPLAYER_PLATFORM_ID: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_PLATFORM_ID),
|
|
49228
|
+
/* harmony export */ ATTR_MULTIPLAYER_PLATFORM_NAME: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_PLATFORM_NAME),
|
|
49229
|
+
/* harmony export */ ATTR_MULTIPLAYER_PROJECT_ID: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_PROJECT_ID),
|
|
49230
|
+
/* harmony export */ ATTR_MULTIPLAYER_RPC_REQUEST_MESSAGE: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_RPC_REQUEST_MESSAGE),
|
|
49231
|
+
/* harmony export */ ATTR_MULTIPLAYER_RPC_REQUEST_MESSAGE_ENCODING: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_RPC_REQUEST_MESSAGE_ENCODING),
|
|
49232
|
+
/* harmony export */ ATTR_MULTIPLAYER_RPC_RESPONSE_MESSAGE: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_RPC_RESPONSE_MESSAGE),
|
|
49233
|
+
/* harmony export */ ATTR_MULTIPLAYER_SESSION_ID: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_SESSION_ID),
|
|
49234
|
+
/* harmony export */ ATTR_MULTIPLAYER_SESSION_RECORDER_VERSION: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_SESSION_RECORDER_VERSION),
|
|
49235
|
+
/* harmony export */ ATTR_MULTIPLAYER_WORKSPACE_ID: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.ATTR_MULTIPLAYER_WORKSPACE_ID),
|
|
49236
|
+
/* harmony export */ DebugSessionDataType: () => (/* reexport safe */ _types__WEBPACK_IMPORTED_MODULE_4__.DebugSessionDataType),
|
|
49237
|
+
/* harmony export */ MASK_PLACEHOLDER: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.MASK_PLACEHOLDER),
|
|
49238
|
+
/* harmony export */ MULTIPLAYER_ATTRIBUTE_PREFIX: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.MULTIPLAYER_ATTRIBUTE_PREFIX),
|
|
49239
|
+
/* harmony export */ MULTIPLAYER_BASE_API_URL: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.MULTIPLAYER_BASE_API_URL),
|
|
49240
|
+
/* harmony export */ MULTIPLAYER_OTEL_DEFAULT_LOGS_EXPORTER_GRPC_URL: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.MULTIPLAYER_OTEL_DEFAULT_LOGS_EXPORTER_GRPC_URL),
|
|
49241
|
+
/* harmony export */ MULTIPLAYER_OTEL_DEFAULT_LOGS_EXPORTER_HTTP_URL: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.MULTIPLAYER_OTEL_DEFAULT_LOGS_EXPORTER_HTTP_URL),
|
|
49242
|
+
/* harmony export */ MULTIPLAYER_OTEL_DEFAULT_LOGS_EXPORTER_URL: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.MULTIPLAYER_OTEL_DEFAULT_LOGS_EXPORTER_URL),
|
|
49243
|
+
/* harmony export */ MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_GRPC_URL: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_GRPC_URL),
|
|
49244
|
+
/* harmony export */ MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_HTTP_URL: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_HTTP_URL),
|
|
49245
|
+
/* harmony export */ MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_URL: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_URL),
|
|
49246
|
+
/* harmony export */ MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX),
|
|
49247
|
+
/* harmony export */ MULTIPLAYER_TRACE_DEBUG_PREFIX: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.MULTIPLAYER_TRACE_DEBUG_PREFIX),
|
|
49248
|
+
/* harmony export */ MULTIPLAYER_TRACE_DEBUG_SESSION_SHORT_ID_LENGTH: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.MULTIPLAYER_TRACE_DEBUG_SESSION_SHORT_ID_LENGTH),
|
|
49249
|
+
/* harmony export */ MULTIPLAYER_TRACE_DOC_PREFIX: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.MULTIPLAYER_TRACE_DOC_PREFIX),
|
|
49250
|
+
/* harmony export */ NavigationRecorder: () => (/* reexport safe */ _navigation__WEBPACK_IMPORTED_MODULE_5__.NavigationRecorder),
|
|
49251
|
+
/* harmony export */ SessionRecorderBrowserTraceExporter: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.SessionRecorderBrowserTraceExporter),
|
|
49252
|
+
/* harmony export */ SessionRecorderIdGenerator: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.SessionRecorderIdGenerator),
|
|
49253
|
+
/* harmony export */ SessionRecorderSdk: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.SessionRecorderSdk),
|
|
49254
|
+
/* harmony export */ SessionRecorderTraceIdRatioBasedSampler: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.SessionRecorderTraceIdRatioBasedSampler),
|
|
49255
|
+
/* harmony export */ SessionState: () => (/* reexport safe */ _types__WEBPACK_IMPORTED_MODULE_4__.SessionState),
|
|
49256
|
+
/* harmony export */ SessionType: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__.SessionType),
|
|
49257
|
+
/* harmony export */ WidgetButtonPlacement: () => (/* reexport safe */ _types__WEBPACK_IMPORTED_MODULE_4__.WidgetButtonPlacement),
|
|
48989
49258
|
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__),
|
|
48990
49259
|
/* harmony export */ recorderEventBus: () => (/* reexport safe */ _eventBus__WEBPACK_IMPORTED_MODULE_2__.recorderEventBus)
|
|
48991
49260
|
/* harmony export */ });
|
|
@@ -48993,7 +49262,11 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
48993
49262
|
/* harmony import */ var _listeners__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./listeners */ "./src/listeners.ts");
|
|
48994
49263
|
/* harmony import */ var _eventBus__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./eventBus */ "./src/eventBus.ts");
|
|
48995
49264
|
/* harmony import */ var _sessionRecorder__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./sessionRecorder */ "./src/sessionRecorder.ts");
|
|
48996
|
-
/* harmony import */ var
|
|
49265
|
+
/* harmony import */ var _types__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./types */ "./src/types/index.ts");
|
|
49266
|
+
/* harmony import */ var _navigation__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./navigation */ "./src/navigation/index.ts");
|
|
49267
|
+
/* harmony import */ var _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @multiplayer-app/session-recorder-common */ "../session-recorder-common/dist/esm/index-browser.js");
|
|
49268
|
+
|
|
49269
|
+
|
|
48997
49270
|
|
|
48998
49271
|
|
|
48999
49272
|
|
|
@@ -49006,8 +49279,8 @@ if (typeof window !== 'undefined') {
|
|
|
49006
49279
|
window['SessionRecorder'] = SessionRecorderInstance;
|
|
49007
49280
|
(0,_listeners__WEBPACK_IMPORTED_MODULE_1__.setupListeners)(SessionRecorderInstance);
|
|
49008
49281
|
}
|
|
49009
|
-
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SessionRecorderInstance);
|
|
49010
49282
|
|
|
49283
|
+
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SessionRecorderInstance);
|
|
49011
49284
|
|
|
49012
49285
|
})();
|
|
49013
49286
|
|