@multiplayer-app/session-recorder-browser 0.0.12 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -26457,19 +26457,19 @@ const MULTIPLAYER_BASE_API_URL = 'https://api.multiplayer.app';
26457
26457
  const SESSION_RESPONSE = 'multiplayer-debug-session-response';
26458
26458
  const CONTINUOUS_DEBUGGING_TIMEOUT = 60000; // 1 minutes
26459
26459
  const DEBUG_SESSION_MAX_DURATION_SECONDS = 10 * 60 + 30; // TODO: move to shared config otel core
26460
- const PACKAGE_VERSION_EXPORT = "0.0.12" || 0;
26460
+ const PACKAGE_VERSION_EXPORT = "1.0.0" || 0;
26461
26461
  // Regex patterns for OpenTelemetry ignore URLs
26462
26462
  const OTEL_IGNORE_URLS = [
26463
26463
  // Traces endpoint
26464
26464
  /.*\/v1\/traces/,
26465
26465
  // Debug sessions endpoints
26466
26466
  /.*\/v0\/radar\/debug-sessions\/start$/,
26467
- /.*\/v0\/radar\/debug-sessions\/[^\/]+\/stop$/,
26468
- /.*\/v0\/radar\/debug-sessions\/[^\/]+\/cancel$/,
26467
+ /.*\/v0\/radar\/debug-sessions\/[^/]+\/stop$/,
26468
+ /.*\/v0\/radar\/debug-sessions\/[^/]+\/cancel$/,
26469
26469
  // Continuous debug sessions endpoints
26470
26470
  /.*\/v0\/radar\/continuous-debug-sessions\/start$/,
26471
- /.*\/v0\/radar\/continuous-debug-sessions\/[^\/]+\/save$/,
26472
- /.*\/v0\/radar\/continuous-debug-sessions\/[^\/]+\/cancel$/,
26471
+ /.*\/v0\/radar\/continuous-debug-sessions\/[^/]+\/save$/,
26472
+ /.*\/v0\/radar\/continuous-debug-sessions\/[^/]+\/cancel$/,
26473
26473
  // Remote debug session endpoint
26474
26474
  /.*\/v0\/radar\/remote-debug-session\/check$/,
26475
26475
  // Or use a more general pattern to catch all radar API endpoints
@@ -26491,7 +26491,7 @@ __webpack_require__.r(__webpack_exports__);
26491
26491
  /* harmony export */ BASE_CONFIG: () => (/* binding */ BASE_CONFIG),
26492
26492
  /* harmony export */ DEFAULT_MASKING_CONFIG: () => (/* binding */ DEFAULT_MASKING_CONFIG)
26493
26493
  /* harmony export */ });
26494
- /* harmony import */ var _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @multiplayer-app/session-recorder-common */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/index-browser.js");
26494
+ /* 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");
26495
26495
  /* harmony import */ var _types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../types */ "./src/types/index.ts");
26496
26496
  /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constants */ "./src/config/constants.ts");
26497
26497
 
@@ -26515,6 +26515,7 @@ const BASE_CONFIG = {
26515
26515
  environment: '',
26516
26516
  showWidget: true,
26517
26517
  widgetButtonPlacement: _types__WEBPACK_IMPORTED_MODULE_1__.WidgetButtonPlacement.bottomRight,
26518
+ enableContinuousDebugging: true,
26518
26519
  usePostMessageFallback: false,
26519
26520
  exporterApiBaseUrl: _constants__WEBPACK_IMPORTED_MODULE_2__.MULTIPLAYER_BASE_API_URL,
26520
26521
  recordCanvas: false,
@@ -26526,7 +26527,7 @@ const BASE_CONFIG = {
26526
26527
  maxCapturingHttpPayloadSize: _constants__WEBPACK_IMPORTED_MODULE_2__.DEFAULT_MAX_HTTP_CAPTURING_PAYLOAD_SIZE,
26527
26528
  captureBody: true,
26528
26529
  captureHeaders: true,
26529
- masking: DEFAULT_MASKING_CONFIG
26530
+ masking: DEFAULT_MASKING_CONFIG,
26530
26531
  };
26531
26532
 
26532
26533
 
@@ -26602,7 +26603,7 @@ __webpack_require__.r(__webpack_exports__);
26602
26603
  /* harmony export */ });
26603
26604
  /* harmony import */ var _defaults__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./defaults */ "./src/config/defaults.ts");
26604
26605
  /* harmony import */ var _validators__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./validators */ "./src/config/validators.ts");
26605
- /* harmony import */ var _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @multiplayer-app/session-recorder-common */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/index-browser.js");
26606
+ /* harmony import */ var _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @multiplayer-app/session-recorder-common */ "../session-recorder-common/dist/esm/index-browser.js");
26606
26607
 
26607
26608
 
26608
26609
 
@@ -26667,6 +26668,7 @@ const getSessionRecorderConfig = (c) => {
26667
26668
  exporterApiBaseUrl: (0,_validators__WEBPACK_IMPORTED_MODULE_3__.isValidString)(c.exporterApiBaseUrl, _defaults__WEBPACK_IMPORTED_MODULE_1__.BASE_CONFIG.exporterApiBaseUrl),
26668
26669
  usePostMessageFallback: (0,_validators__WEBPACK_IMPORTED_MODULE_3__.isValidBoolean)(c.usePostMessageFallback, _defaults__WEBPACK_IMPORTED_MODULE_1__.BASE_CONFIG.usePostMessageFallback),
26669
26670
  showWidget: (0,_validators__WEBPACK_IMPORTED_MODULE_3__.isValidBoolean)(c.showWidget, _defaults__WEBPACK_IMPORTED_MODULE_1__.BASE_CONFIG.showWidget),
26671
+ enableContinuousDebugging: (0,_validators__WEBPACK_IMPORTED_MODULE_3__.isValidBoolean)(c.enableContinuousDebugging, _defaults__WEBPACK_IMPORTED_MODULE_1__.BASE_CONFIG.enableContinuousDebugging),
26670
26672
  recordCanvas: (0,_validators__WEBPACK_IMPORTED_MODULE_3__.isValidBoolean)(c.recordCanvas, _defaults__WEBPACK_IMPORTED_MODULE_1__.BASE_CONFIG.recordCanvas),
26671
26673
  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)),
26672
26674
  ignoreUrls: (0,_validators__WEBPACK_IMPORTED_MODULE_3__.isValidArray)(c.ignoreUrls, _defaults__WEBPACK_IMPORTED_MODULE_1__.BASE_CONFIG.ignoreUrls),
@@ -26760,7 +26762,7 @@ __webpack_require__.r(__webpack_exports__);
26760
26762
  /* harmony export */ setupListeners: () => (/* binding */ setupListeners)
26761
26763
  /* harmony export */ });
26762
26764
  /* harmony import */ var _services_messaging_service__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./services/messaging.service */ "./src/services/messaging.service.ts");
26763
- /* harmony import */ var _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @multiplayer-app/session-recorder-common */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/index-browser.js");
26765
+ /* harmony import */ var _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @multiplayer-app/session-recorder-common */ "../session-recorder-common/dist/esm/index-browser.js");
26764
26766
 
26765
26767
 
26766
26768
  function setupListeners(sessionRecorder) {
@@ -26819,7 +26821,7 @@ __webpack_require__.r(__webpack_exports__);
26819
26821
  /* harmony export */ processHttpPayload: () => (/* binding */ processHttpPayload),
26820
26822
  /* harmony export */ shouldProcessTrace: () => (/* binding */ shouldProcessTrace)
26821
26823
  /* harmony export */ });
26822
- /* harmony import */ var _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @multiplayer-app/session-recorder-common */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/index-browser.js");
26824
+ /* 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");
26823
26825
 
26824
26826
 
26825
26827
  const { schemify } = _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_0__.SessionRecorderSdk;
@@ -27024,7 +27026,7 @@ __webpack_require__.r(__webpack_exports__);
27024
27026
  /* harmony import */ var _opentelemetry_semantic_conventions__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @opentelemetry/semantic-conventions */ "../../node_modules/@opentelemetry/semantic-conventions/build/esm/resource/SemanticResourceAttributes.js");
27025
27027
  /* harmony import */ var _opentelemetry_instrumentation__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @opentelemetry/instrumentation */ "../../node_modules/@opentelemetry/instrumentation/build/esm/autoLoader.js");
27026
27028
  /* harmony import */ var _opentelemetry_auto_instrumentations_web__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @opentelemetry/auto-instrumentations-web */ "../../node_modules/@opentelemetry/auto-instrumentations-web/build/esm/index.js");
27027
- /* harmony import */ var _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @multiplayer-app/session-recorder-common */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/index-browser.js");
27029
+ /* harmony import */ var _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @multiplayer-app/session-recorder-common */ "../session-recorder-common/dist/esm/index-browser.js");
27028
27030
  /* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../config */ "./src/config/index.ts");
27029
27031
  /* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./helpers */ "./src/otel/helpers.ts");
27030
27032
 
@@ -27240,7 +27242,7 @@ __webpack_require__.r(__webpack_exports__);
27240
27242
 
27241
27243
  let recordRequestHeaders = true;
27242
27244
  let recordResponseHeaders = true;
27243
- let shouldRecordBody = true;
27245
+ const shouldRecordBody = true;
27244
27246
  let maxCapturingHttpPayloadSize = _config__WEBPACK_IMPORTED_MODULE_2__.DEFAULT_MAX_HTTP_CAPTURING_PAYLOAD_SIZE;
27245
27247
  const setMaxCapturingHttpPayloadSize = (_maxCapturingHttpPayloadSize) => {
27246
27248
  maxCapturingHttpPayloadSize = _maxCapturingHttpPayloadSize;
@@ -27248,6 +27250,7 @@ const setMaxCapturingHttpPayloadSize = (_maxCapturingHttpPayloadSize) => {
27248
27250
  const setShouldRecordHttpData = (shouldRecordBody, shouldRecordHeaders) => {
27249
27251
  recordRequestHeaders = shouldRecordHeaders;
27250
27252
  recordResponseHeaders = shouldRecordHeaders;
27253
+ // eslint-disable-next-line
27251
27254
  shouldRecordBody = shouldRecordBody;
27252
27255
  };
27253
27256
  function _tryReadXHRBody({ body, url, }) {
@@ -27278,7 +27281,6 @@ function _tryReadXHRBody({ body, url, }) {
27278
27281
  xhr.open = function (method, url, async = true, username, password) {
27279
27282
  const xhr = this;
27280
27283
  const networkRequest = {};
27281
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
27282
27284
  // @ts-ignore
27283
27285
  const requestHeaders = {};
27284
27286
  const originalSetRequestHeader = xhr.setRequestHeader.bind(xhr);
@@ -27304,7 +27306,6 @@ function _tryReadXHRBody({ body, url, }) {
27304
27306
  if (xhr.readyState !== xhr.DONE) {
27305
27307
  return;
27306
27308
  }
27307
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
27308
27309
  // @ts-ignore
27309
27310
  const responseHeaders = {};
27310
27311
  const rawHeaders = xhr.getAllResponseHeaders();
@@ -27328,7 +27329,6 @@ function _tryReadXHRBody({ body, url, }) {
27328
27329
  }
27329
27330
  }
27330
27331
  });
27331
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
27332
27332
  // @ts-ignore
27333
27333
  xhr.networkRequest = networkRequest;
27334
27334
  originalOpen.call(xhr, method, url, async, username, password);
@@ -27383,7 +27383,13 @@ class RrwebEventExporter {
27383
27383
  reconnectionAttempts: 2,
27384
27384
  transports: ['websocket'],
27385
27385
  });
27386
- this.socket.on('connect', () => {
27386
+ // this.socket.on('connect', () => {
27387
+ // this.isConnecting = false
27388
+ // this.isConnected = true
27389
+ // this.usePostMessage = false
27390
+ // this.flushQueue()
27391
+ // })
27392
+ this.socket.on('ready', () => {
27387
27393
  this.isConnecting = false;
27388
27394
  this.isConnected = true;
27389
27395
  this.usePostMessage = false;
@@ -27509,7 +27515,7 @@ __webpack_require__.r(__webpack_exports__);
27509
27515
  /* harmony export */ });
27510
27516
  /* harmony import */ var _rrweb_packer__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @rrweb/packer */ "../../node_modules/@rrweb/packer/dist/packer.js");
27511
27517
  /* harmony import */ var rrweb__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! rrweb */ "../../node_modules/rrweb/dist/rrweb.js");
27512
- /* harmony import */ var _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @multiplayer-app/session-recorder-common */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/index-browser.js");
27518
+ /* harmony import */ var _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @multiplayer-app/session-recorder-common */ "../session-recorder-common/dist/esm/index-browser.js");
27513
27519
  /* harmony import */ var _rrweb_rrweb_plugin_console_record__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @rrweb/rrweb-plugin-console-record */ "../../node_modules/@rrweb/rrweb-plugin-console-record/dist/rrweb-plugin-console-record.js");
27514
27520
  /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils */ "./src/utils/index.ts");
27515
27521
  /* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../config */ "./src/config/index.ts");
@@ -27599,7 +27605,7 @@ class RecorderBrowserSDK {
27599
27605
  if (typeof maskingConfig.maskConsoleEvent === 'function' && (0,_utils__WEBPACK_IMPORTED_MODULE_3__.isConsoleEvent)(event)) {
27600
27606
  const { data } = event;
27601
27607
  const maskedPayload = maskingConfig.maskConsoleEvent(data.payload);
27602
- event.data = { ...data, payload: maskedPayload, };
27608
+ event.data = { ...data, payload: maskedPayload };
27603
27609
  }
27604
27610
  const packedEvent = (0,_rrweb_packer__WEBPACK_IMPORTED_MODULE_0__.pack)(event);
27605
27611
  this.stoppedAt = new Date(event.timestamp).toISOString();
@@ -27741,7 +27747,7 @@ class ApiService {
27741
27747
  * Check debug session should be started remotely
27742
27748
  */
27743
27749
  async checkRemoteSession(requestBody, signal) {
27744
- return this.makeRequest(`/remote-debug-session/check`, 'POST', requestBody, signal);
27750
+ return this.makeRequest('/remote-debug-session/check', 'POST', requestBody, signal);
27745
27751
  }
27746
27752
  /**
27747
27753
  * Make a request to the session debugger API
@@ -27930,7 +27936,7 @@ __webpack_require__.r(__webpack_exports__);
27930
27936
  /* harmony import */ var _services_messaging_service__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./services/messaging.service */ "./src/services/messaging.service.ts");
27931
27937
  /* harmony import */ var _services_api_service__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./services/api.service */ "./src/services/api.service.ts");
27932
27938
  /* harmony import */ var _index_scss__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./index.scss */ "./src/index.scss");
27933
- /* harmony import */ var _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @multiplayer-app/session-recorder-common */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/index-browser.js");
27939
+ /* 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");
27934
27940
  /* harmony import */ var _sessionWidget_buttonStateConfigs__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./sessionWidget/buttonStateConfigs */ "./src/sessionWidget/buttonStateConfigs.ts");
27935
27941
 
27936
27942
 
@@ -28076,6 +28082,9 @@ class SessionRecorder {
28076
28082
  async save() {
28077
28083
  try {
28078
28084
  this._checkOperation('save');
28085
+ if (!this.continuousDebugging || !this._configs.enableContinuousDebugging) {
28086
+ return;
28087
+ }
28079
28088
  this._sessionWidget.updateSaveContinuousDebugSessionState(_sessionWidget_buttonStateConfigs__WEBPACK_IMPORTED_MODULE_12__.ContinuousDebuggingSaveButtonState.SAVING);
28080
28089
  const res = await this._apiService.saveContinuousDebugSession(this.sessionId, {
28081
28090
  sessionAttributes: this.sessionAttributes,
@@ -28113,6 +28122,10 @@ class SessionRecorder {
28113
28122
  */
28114
28123
  start(type = _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_11__.SessionType.PLAIN, session) {
28115
28124
  this._checkOperation('start');
28125
+ // If continuous debugging is disabled, force plain mode
28126
+ if (type === _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_11__.SessionType.CONTINUOUS && !this._configs.enableContinuousDebugging) {
28127
+ type = _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_11__.SessionType.PLAIN;
28128
+ }
28116
28129
  this.sessionType = type;
28117
28130
  this._startRequestController = new AbortController();
28118
28131
  if (session) {
@@ -28217,6 +28230,9 @@ class SessionRecorder {
28217
28230
  */
28218
28231
  async checkRemoteContinuousSession(sessionPayload) {
28219
28232
  this._checkOperation('autoStartRemoteContinuousSession');
28233
+ if (!this._configs.enableContinuousDebugging) {
28234
+ return;
28235
+ }
28220
28236
  const payload = {
28221
28237
  sessionAttributes: {
28222
28238
  ...this.sessionAttributes,
@@ -28556,7 +28572,7 @@ class UIManager {
28556
28572
  return;
28557
28573
  }
28558
28574
  button.classList.toggle('disabled', isLoading);
28559
- button.textContent = isLoading ? 'Starting to record...' : 'Start bug-hunting!';
28575
+ button.textContent = isLoading ? 'Starting to record...' : 'Start recording';
28560
28576
  }
28561
28577
  setTimerValue(time) {
28562
28578
  const timerElement = this.recordingOverlay.querySelector('.timer');
@@ -28925,8 +28941,8 @@ class SessionWidget extends lib0_observable__WEBPACK_IMPORTED_MODULE_7__.Observa
28925
28941
  type: 'error',
28926
28942
  message: this._error,
28927
28943
  button: {
28928
- text: 'Close', onClick: () => this.hideToast()
28929
- }
28944
+ text: 'Close', onClick: () => this.hideToast(),
28945
+ },
28930
28946
  });
28931
28947
  }
28932
28948
  }
@@ -28976,6 +28992,7 @@ class SessionWidget extends lib0_observable__WEBPACK_IMPORTED_MODULE_7__.Observa
28976
28992
  this._finalPopoverVisible = false;
28977
28993
  this._buttonState = _buttonStateConfigs__WEBPACK_IMPORTED_MODULE_6__.ButtonState.IDLE;
28978
28994
  this._continuousDebugging = false;
28995
+ this._enableContinuousDebugging = true;
28979
28996
  this.commentTextarea = null;
28980
28997
  this.dragManager = null;
28981
28998
  this.buttonClickExternalHandler = null;
@@ -29090,6 +29107,7 @@ class SessionWidget extends lib0_observable__WEBPACK_IMPORTED_MODULE_7__.Observa
29090
29107
  return;
29091
29108
  this._isInitialized = true;
29092
29109
  this.showRecorderButton = options.showWidget;
29110
+ this._enableContinuousDebugging = options.enableContinuousDebugging;
29093
29111
  const elements = [this.toast];
29094
29112
  if (options.showWidget) {
29095
29113
  elements.push(this.recorderButton, this.initialPopover, this.finalPopover, this.submitSessionDialog);
@@ -29098,6 +29116,13 @@ class SessionWidget extends lib0_observable__WEBPACK_IMPORTED_MODULE_7__.Observa
29098
29116
  elements.push(this.overlay, this.submitSessionDialog);
29099
29117
  }
29100
29118
  this.appendElements(elements);
29119
+ // Hide continuous debugging UI when feature is disabled
29120
+ if (!this._enableContinuousDebugging) {
29121
+ const cont = this.initialPopover.querySelector('.mp-session-debugger-continuous-debugging');
29122
+ cont && cont.classList.add('hidden');
29123
+ const overlay = this.initialPopover.querySelector('.mp-session-debugger-continuous-debugging-overlay');
29124
+ overlay && overlay.classList.add('hidden');
29125
+ }
29101
29126
  if (options.showWidget && options.widgetButtonPlacement) {
29102
29127
  this.recorderButton.classList.add(options.widgetButtonPlacement);
29103
29128
  this._recorderPlacement = options.widgetButtonPlacement;
@@ -29163,16 +29188,20 @@ class SessionWidget extends lib0_observable__WEBPACK_IMPORTED_MODULE_7__.Observa
29163
29188
  target: this.initialPopover,
29164
29189
  selector: '.mp-start-recording',
29165
29190
  handler: this.startRecording.bind(this),
29166
- }, {
29167
- event: 'change',
29168
- target: this.initialPopover,
29169
- selector: '#mp-session-debugger-continuous-debugging-checkbox',
29170
- handler: this.handleContinuousDebuggingChange.bind(this),
29171
- }, {
29172
- target: this.initialPopover,
29173
- selector: '#mp-save-continuous-debug-session',
29174
- handler: this.handleSaveContinuousDebugSession.bind(this),
29175
- }, {
29191
+ });
29192
+ if (this._enableContinuousDebugging) {
29193
+ events.push({
29194
+ event: 'change',
29195
+ target: this.initialPopover,
29196
+ selector: '#mp-session-debugger-continuous-debugging-checkbox',
29197
+ handler: this.handleContinuousDebuggingChange.bind(this),
29198
+ }, {
29199
+ target: this.initialPopover,
29200
+ selector: '#mp-save-continuous-debug-session',
29201
+ handler: this.handleSaveContinuousDebugSession.bind(this),
29202
+ });
29203
+ }
29204
+ events.push({
29176
29205
  target: this.initialPopover,
29177
29206
  selector: '.mp-session-debugger-modal-close',
29178
29207
  handler: this.handleCloseInitialPopover.bind(this),
@@ -29307,6 +29336,8 @@ class SessionWidget extends lib0_observable__WEBPACK_IMPORTED_MODULE_7__.Observa
29307
29336
  }
29308
29337
  }
29309
29338
  handleContinuousDebuggingChange(e) {
29339
+ if (!this._enableContinuousDebugging)
29340
+ return;
29310
29341
  const checkbox = e.target;
29311
29342
  this.emit('continuous-debugging', [checkbox.checked]);
29312
29343
  }
@@ -29436,13 +29467,14 @@ const finalPopoverTemplate = `
29436
29467
  <a href="https://www.multiplayer.app" target="_blank" rel="noopener noreferrer" title="Multiplayer">
29437
29468
  <div class="mp-session-debugger-popover-logo">${_icons__WEBPACK_IMPORTED_MODULE_0__.LogoSvg}</div>
29438
29469
  </a>
29439
- <button class="mp-session-debugger-dismiss-button">Dismiss report</button>
29470
+ <button class="mp-session-debugger-dismiss-button">Cancel recording</button>
29440
29471
  <button class="mp-session-debugger-modal-close" aria-label="Close">${_icons__WEBPACK_IMPORTED_MODULE_0__.CloseXIcon}</button>
29441
29472
  </div>
29442
29473
  <div class="mp-session-debugger-popover-body">
29443
- <h2>Done capturing?</h2>
29444
- <p>Click the button below to save your report. Optionally, feel free to send a message to Multiplayer.</p>
29445
- <textarea placeholder="Add a comment..." class="mp-session-debugger-popover-textarea"></textarea>
29474
+ <h2>Done recording?</h2>
29475
+ <p>Save your full-stack session recording in our sandbox.
29476
+ You can also leave a quick message, just like a real user would for a bug report.</p>
29477
+ <textarea placeholder="Add a message..." class="mp-session-debugger-popover-textarea"></textarea>
29446
29478
  <div class="mp-session-debugger-popover-footer">
29447
29479
  <button class="mp-session-debugger-popover-button mp-stop-recording">Save</button>
29448
29480
  </div>
@@ -29560,8 +29592,8 @@ const initialPopoverTemplate = `
29560
29592
  <span></span>
29561
29593
  </label>
29562
29594
  </div>
29563
- <h2>Encountered an issue?</h2>
29564
- <p>Help us improve by sharing what went wrong. We'll record your steps, so we can see exactly what happened.</p>
29595
+ <h2>Want to record a new session?</h2>
29596
+ <p>Start a fresh full-stack session recording, and continue chatting and bug-hunting!</p>
29565
29597
  <div class="mp-session-debugger-popover-footer">
29566
29598
  <button class="mp-session-debugger-popover-button mp-start-recording">Start Recording!</button>
29567
29599
  </div>
@@ -30184,7 +30216,7 @@ const isSessionActive = (session, continuousDebugging) => {
30184
30216
  };
30185
30217
  const isConsoleEvent = (event) => {
30186
30218
  var _a;
30187
- return event.type === rrweb__WEBPACK_IMPORTED_MODULE_1__.EventType.Plugin && ((_a = event.data) === null || _a === void 0 ? void 0 : _a.plugin) === "rrweb/console@1";
30219
+ return event.type === rrweb__WEBPACK_IMPORTED_MODULE_1__.EventType.Plugin && ((_a = event.data) === null || _a === void 0 ? void 0 : _a.plugin) === 'rrweb/console@1';
30188
30220
  };
30189
30221
 
30190
30222
 
@@ -30366,295 +30398,637 @@ const isFile = (x) => {
30366
30398
 
30367
30399
  /***/ }),
30368
30400
 
30369
- /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderHttpTraceExporterBrowser.js":
30370
- /*!*******************************************************************************************************************!*\
30371
- !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderHttpTraceExporterBrowser.js ***!
30372
- \*******************************************************************************************************************/
30401
+ /***/ "./node_modules/@opentelemetry/core/build/esm/internal/validators.js":
30402
+ /*!***************************************************************************!*\
30403
+ !*** ./node_modules/@opentelemetry/core/build/esm/internal/validators.js ***!
30404
+ \***************************************************************************/
30373
30405
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
30374
30406
 
30375
30407
  "use strict";
30376
30408
  __webpack_require__.r(__webpack_exports__);
30377
30409
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
30378
- /* harmony export */ SessionRecorderHttpTraceExporterBrowser: () => (/* binding */ SessionRecorderHttpTraceExporterBrowser)
30410
+ /* harmony export */ validateKey: () => (/* binding */ validateKey),
30411
+ /* harmony export */ validateValue: () => (/* binding */ validateValue)
30379
30412
  /* harmony export */ });
30380
- /* harmony import */ var _opentelemetry_otlp_exporter_base__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @opentelemetry/otlp-exporter-base */ "../../node_modules/@opentelemetry/otlp-exporter-base/build/esm/OTLPExporterBase.js");
30381
- /* harmony import */ var _opentelemetry_otlp_exporter_base_browser_http__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @opentelemetry/otlp-exporter-base/browser-http */ "../../node_modules/@opentelemetry/otlp-exporter-base/build/esm/configuration/create-legacy-browser-delegate.js");
30382
- /* harmony import */ var _SessionRecorderJsonTraceSerializer__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./SessionRecorderJsonTraceSerializer */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderJsonTraceSerializer.js");
30383
- /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./constants.base */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/constants.base.js");
30384
- var __extends = (undefined && undefined.__extends) || (function () {
30385
- var extendStatics = function (d, b) {
30386
- extendStatics = Object.setPrototypeOf ||
30387
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
30388
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
30389
- return extendStatics(d, b);
30390
- };
30391
- return function (d, b) {
30392
- if (typeof b !== "function" && b !== null)
30393
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
30394
- extendStatics(d, b);
30395
- function __() { this.constructor = d; }
30396
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
30397
- };
30398
- })();
30399
- var __assign = (undefined && undefined.__assign) || function () {
30400
- __assign = Object.assign || function(t) {
30401
- for (var s, i = 1, n = arguments.length; i < n; i++) {
30402
- s = arguments[i];
30403
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
30404
- t[p] = s[p];
30405
- }
30406
- return t;
30407
- };
30408
- return __assign.apply(this, arguments);
30409
- };
30410
-
30411
-
30412
-
30413
-
30413
+ /*
30414
+ * Copyright The OpenTelemetry Authors
30415
+ *
30416
+ * Licensed under the Apache License, Version 2.0 (the "License");
30417
+ * you may not use this file except in compliance with the License.
30418
+ * You may obtain a copy of the License at
30419
+ *
30420
+ * https://www.apache.org/licenses/LICENSE-2.0
30421
+ *
30422
+ * Unless required by applicable law or agreed to in writing, software
30423
+ * distributed under the License is distributed on an "AS IS" BASIS,
30424
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
30425
+ * See the License for the specific language governing permissions and
30426
+ * limitations under the License.
30427
+ */
30428
+ var VALID_KEY_CHAR_RANGE = '[_0-9a-z-*/]';
30429
+ var VALID_KEY = "[a-z]" + VALID_KEY_CHAR_RANGE + "{0,255}";
30430
+ var VALID_VENDOR_KEY = "[a-z0-9]" + VALID_KEY_CHAR_RANGE + "{0,240}@[a-z]" + VALID_KEY_CHAR_RANGE + "{0,13}";
30431
+ var VALID_KEY_REGEX = new RegExp("^(?:" + VALID_KEY + "|" + VALID_VENDOR_KEY + ")$");
30432
+ var VALID_VALUE_BASE_REGEX = /^[ -~]{0,255}[!-~]$/;
30433
+ var INVALID_VALUE_COMMA_EQUAL_REGEX = /,|=/;
30414
30434
  /**
30415
- * Trace Exporters for Web with postMessage fallback
30435
+ * Key is opaque string up to 256 characters printable. It MUST begin with a
30436
+ * lowercase letter, and can only contain lowercase letters a-z, digits 0-9,
30437
+ * underscores _, dashes -, asterisks *, and forward slashes /.
30438
+ * For multi-tenant vendor scenarios, an at sign (@) can be used to prefix the
30439
+ * vendor name. Vendors SHOULD set the tenant ID at the beginning of the key.
30440
+ * see https://www.w3.org/TR/trace-context/#key
30416
30441
  */
30417
- var SessionRecorderHttpTraceExporterBrowser = /** @class */ (function (_super) {
30418
- __extends(SessionRecorderHttpTraceExporterBrowser, _super);
30419
- function SessionRecorderHttpTraceExporterBrowser(config) {
30420
- if (config === void 0) { config = {}; }
30421
- var _this = this;
30422
- var _config = __assign(__assign({}, config), { url: config.url || _constants_base__WEBPACK_IMPORTED_MODULE_1__.MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_URL, headers: __assign(__assign({}, (config.headers || {})), config.apiKey
30423
- ? { Authorization: config.apiKey }
30424
- : {}) });
30425
- _this = _super.call(this, (0,_opentelemetry_otlp_exporter_base_browser_http__WEBPACK_IMPORTED_MODULE_2__.createLegacyOtlpBrowserExportDelegate)(_config, _SessionRecorderJsonTraceSerializer__WEBPACK_IMPORTED_MODULE_0__.SessionRecorderJsonTraceSerializer, 'v1/traces', { 'Content-Type': 'application/json' })) || this;
30426
- _this.usePostMessage = false;
30427
- _this.config = config;
30428
- _this.postMessageType = config.postMessageType || 'MULTIPLAYER_SESSION_DEBUGGER_LIB';
30429
- _this.postMessageTargetOrigin = config.postMessageTargetOrigin || '*';
30430
- return _this;
30431
- }
30432
- SessionRecorderHttpTraceExporterBrowser.prototype.export = function (spans, resultCallback) {
30433
- var _this = this;
30434
- if (this.usePostMessage) {
30435
- this.exportViaPostMessage(spans, resultCallback);
30436
- return;
30437
- }
30438
- _super.prototype.export.call(this, spans, function (result) {
30439
- if (result.code === 0) {
30440
- resultCallback(result);
30441
- }
30442
- else if (_this.config.usePostMessageFallback) {
30443
- _this.usePostMessage = true;
30444
- _this.exportViaPostMessage(spans, resultCallback);
30445
- }
30446
- else {
30447
- resultCallback(result);
30448
- }
30449
- });
30450
- };
30451
- SessionRecorderHttpTraceExporterBrowser.prototype.exportViaPostMessage = function (spans, resultCallback) {
30452
- var _this = this;
30453
- if (typeof window === 'undefined') {
30454
- resultCallback({ code: 1 });
30455
- return;
30456
- }
30457
- try {
30458
- window.postMessage({
30459
- action: 'traces',
30460
- type: this.postMessageType,
30461
- payload: spans.map(function (span) { return _this._serializeSpan(span); }),
30462
- }, this.postMessageTargetOrigin);
30463
- resultCallback({ code: 0 });
30464
- }
30465
- catch (e) {
30466
- resultCallback({ code: 1 });
30467
- }
30468
- };
30469
- SessionRecorderHttpTraceExporterBrowser.prototype._serializeSpan = function (span) {
30470
- return {
30471
- _spanContext: span.spanContext(),
30472
- name: span.name,
30473
- kind: span.kind,
30474
- links: span.links,
30475
- ended: span.ended,
30476
- events: span.events,
30477
- status: span.status,
30478
- endTime: span.endTime,
30479
- startTime: span.startTime,
30480
- duration: span.duration,
30481
- attributes: span.attributes,
30482
- parentSpanId: span.parentSpanId,
30483
- instrumentationLibrary: span.instrumentationLibrary,
30484
- droppedAttributesCount: span.droppedAttributesCount,
30485
- droppedEventsCount: span.droppedEventsCount,
30486
- droppedLinksCount: span.droppedLinksCount,
30487
- resource: {
30488
- attributes: span.resource.attributes,
30489
- asyncAttributesPending: span.resource.asyncAttributesPending,
30490
- },
30491
- };
30492
- };
30493
- SessionRecorderHttpTraceExporterBrowser.prototype.getDefaultUrl = function (config) {
30494
- return config.url || _constants_base__WEBPACK_IMPORTED_MODULE_1__.MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_URL;
30495
- };
30496
- return SessionRecorderHttpTraceExporterBrowser;
30497
- }(_opentelemetry_otlp_exporter_base__WEBPACK_IMPORTED_MODULE_3__.OTLPExporterBase));
30498
-
30499
- //# sourceMappingURL=SessionRecorderHttpTraceExporterBrowser.js.map
30442
+ function validateKey(key) {
30443
+ return VALID_KEY_REGEX.test(key);
30444
+ }
30445
+ /**
30446
+ * Value is opaque string up to 256 characters printable ASCII RFC0020
30447
+ * characters (i.e., the range 0x20 to 0x7E) except comma , and =.
30448
+ */
30449
+ function validateValue(value) {
30450
+ return (VALID_VALUE_BASE_REGEX.test(value) &&
30451
+ !INVALID_VALUE_COMMA_EQUAL_REGEX.test(value));
30452
+ }
30453
+ //# sourceMappingURL=validators.js.map
30500
30454
 
30501
30455
  /***/ }),
30502
30456
 
30503
- /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderIdGenerator.js":
30504
- /*!******************************************************************************************************!*\
30505
- !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderIdGenerator.js ***!
30506
- \******************************************************************************************************/
30457
+ /***/ "./node_modules/@opentelemetry/core/build/esm/trace/TraceState.js":
30458
+ /*!************************************************************************!*\
30459
+ !*** ./node_modules/@opentelemetry/core/build/esm/trace/TraceState.js ***!
30460
+ \************************************************************************/
30507
30461
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
30508
30462
 
30509
30463
  "use strict";
30510
30464
  __webpack_require__.r(__webpack_exports__);
30511
30465
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
30512
- /* harmony export */ SessionRecorderIdGenerator: () => (/* binding */ SessionRecorderIdGenerator)
30466
+ /* harmony export */ TraceState: () => (/* binding */ TraceState)
30513
30467
  /* harmony export */ });
30514
- /* harmony import */ var _opentelemetry_sdk_trace_base__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @opentelemetry/sdk-trace-base */ "../../node_modules/@opentelemetry/sdk-trace-base/build/esm/Sampler.js");
30515
- /* harmony import */ var _opentelemetry_sdk_trace_base__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @opentelemetry/sdk-trace-base */ "../../node_modules/@opentelemetry/sdk-trace-base/build/esm/platform/browser/RandomIdGenerator.js");
30516
- /* harmony import */ var _type__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./type */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/type/index.js");
30517
- /* harmony import */ var _SessionRecorderTraceIdRatioBasedSampler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SessionRecorderTraceIdRatioBasedSampler */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderTraceIdRatioBasedSampler.js");
30518
- /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constants.base */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/constants.base.js");
30519
- /* harmony import */ var _sdk__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./sdk */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/index.js");
30520
- var __extends = (undefined && undefined.__extends) || (function () {
30521
- var extendStatics = function (d, b) {
30522
- extendStatics = Object.setPrototypeOf ||
30523
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
30524
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
30525
- return extendStatics(d, b);
30468
+ /* harmony import */ var _internal_validators__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../internal/validators */ "./node_modules/@opentelemetry/core/build/esm/internal/validators.js");
30469
+ /*
30470
+ * Copyright The OpenTelemetry Authors
30471
+ *
30472
+ * Licensed under the Apache License, Version 2.0 (the "License");
30473
+ * you may not use this file except in compliance with the License.
30474
+ * You may obtain a copy of the License at
30475
+ *
30476
+ * https://www.apache.org/licenses/LICENSE-2.0
30477
+ *
30478
+ * Unless required by applicable law or agreed to in writing, software
30479
+ * distributed under the License is distributed on an "AS IS" BASIS,
30480
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
30481
+ * See the License for the specific language governing permissions and
30482
+ * limitations under the License.
30483
+ */
30484
+
30485
+ var MAX_TRACE_STATE_ITEMS = 32;
30486
+ var MAX_TRACE_STATE_LEN = 512;
30487
+ var LIST_MEMBERS_SEPARATOR = ',';
30488
+ var LIST_MEMBER_KEY_VALUE_SPLITTER = '=';
30489
+ /**
30490
+ * TraceState must be a class and not a simple object type because of the spec
30491
+ * requirement (https://www.w3.org/TR/trace-context/#tracestate-field).
30492
+ *
30493
+ * Here is the list of allowed mutations:
30494
+ * - New key-value pair should be added into the beginning of the list
30495
+ * - The value of any key can be updated. Modified keys MUST be moved to the
30496
+ * beginning of the list.
30497
+ */
30498
+ var TraceState = /** @class */ (function () {
30499
+ function TraceState(rawTraceState) {
30500
+ this._internalState = new Map();
30501
+ if (rawTraceState)
30502
+ this._parse(rawTraceState);
30503
+ }
30504
+ TraceState.prototype.set = function (key, value) {
30505
+ // TODO: Benchmark the different approaches(map vs list) and
30506
+ // use the faster one.
30507
+ var traceState = this._clone();
30508
+ if (traceState._internalState.has(key)) {
30509
+ traceState._internalState.delete(key);
30510
+ }
30511
+ traceState._internalState.set(key, value);
30512
+ return traceState;
30526
30513
  };
30527
- return function (d, b) {
30528
- if (typeof b !== "function" && b !== null)
30529
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
30530
- extendStatics(d, b);
30531
- function __() { this.constructor = d; }
30532
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
30514
+ TraceState.prototype.unset = function (key) {
30515
+ var traceState = this._clone();
30516
+ traceState._internalState.delete(key);
30517
+ return traceState;
30533
30518
  };
30534
- })();
30535
-
30536
-
30537
-
30538
-
30539
-
30540
- var SessionRecorderIdGenerator = /** @class */ (function (_super) {
30541
- __extends(SessionRecorderIdGenerator, _super);
30542
- function SessionRecorderIdGenerator(_a) {
30543
- var _b = _a === void 0 ? {} : _a, _c = _b.autoDocTracesRatio, autoDocTracesRatio = _c === void 0 ? 0 : _c;
30544
- var _this = _super.call(this) || this;
30545
- _this.docSpanSampler = new _SessionRecorderTraceIdRatioBasedSampler__WEBPACK_IMPORTED_MODULE_1__.SessionRecorderTraceIdRatioBasedSampler(autoDocTracesRatio);
30546
- _this.generateLongId = (0,_sdk__WEBPACK_IMPORTED_MODULE_3__.getIdGenerator)(16);
30547
- _this.sessionShortId = '';
30548
- _this.sessionType = _type__WEBPACK_IMPORTED_MODULE_0__.SessionType.PLAIN;
30549
- _this.generateTraceId = function () {
30550
- var traceId = _this.generateLongId();
30551
- if (_this.sessionShortId) {
30552
- var sessionTypePrefix = '';
30553
- switch (_this.sessionType) {
30554
- case _type__WEBPACK_IMPORTED_MODULE_0__.SessionType.CONTINUOUS:
30555
- sessionTypePrefix = _constants_base__WEBPACK_IMPORTED_MODULE_2__.MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX;
30556
- break;
30557
- default:
30558
- sessionTypePrefix = _constants_base__WEBPACK_IMPORTED_MODULE_2__.MULTIPLAYER_TRACE_DEBUG_PREFIX;
30519
+ TraceState.prototype.get = function (key) {
30520
+ return this._internalState.get(key);
30521
+ };
30522
+ TraceState.prototype.serialize = function () {
30523
+ var _this = this;
30524
+ return this._keys()
30525
+ .reduce(function (agg, key) {
30526
+ agg.push(key + LIST_MEMBER_KEY_VALUE_SPLITTER + _this.get(key));
30527
+ return agg;
30528
+ }, [])
30529
+ .join(LIST_MEMBERS_SEPARATOR);
30530
+ };
30531
+ TraceState.prototype._parse = function (rawTraceState) {
30532
+ if (rawTraceState.length > MAX_TRACE_STATE_LEN)
30533
+ return;
30534
+ this._internalState = rawTraceState
30535
+ .split(LIST_MEMBERS_SEPARATOR)
30536
+ .reverse() // Store in reverse so new keys (.set(...)) will be placed at the beginning
30537
+ .reduce(function (agg, part) {
30538
+ var listMember = part.trim(); // Optional Whitespace (OWS) handling
30539
+ var i = listMember.indexOf(LIST_MEMBER_KEY_VALUE_SPLITTER);
30540
+ if (i !== -1) {
30541
+ var key = listMember.slice(0, i);
30542
+ var value = listMember.slice(i + 1, part.length);
30543
+ if ((0,_internal_validators__WEBPACK_IMPORTED_MODULE_0__.validateKey)(key) && (0,_internal_validators__WEBPACK_IMPORTED_MODULE_0__.validateValue)(value)) {
30544
+ agg.set(key, value);
30545
+ }
30546
+ else {
30547
+ // TODO: Consider to add warning log
30559
30548
  }
30560
- var prefix = "".concat(sessionTypePrefix).concat(_this.sessionShortId);
30561
- var sessionTraceId = "".concat(prefix).concat(traceId.substring(prefix.length, traceId.length));
30562
- return sessionTraceId;
30563
- }
30564
- else if (_this._isDocTrace(traceId)) {
30565
- return "".concat(_constants_base__WEBPACK_IMPORTED_MODULE_2__.MULTIPLAYER_TRACE_DOC_PREFIX).concat(traceId.slice(_constants_base__WEBPACK_IMPORTED_MODULE_2__.MULTIPLAYER_TRACE_DOC_PREFIX.length, traceId.length));
30566
30549
  }
30567
- return traceId;
30568
- };
30569
- return _this;
30570
- }
30571
- SessionRecorderIdGenerator.prototype.setSessionId = function (sessionShortId, sessionType) {
30572
- if (sessionType === void 0) { sessionType = _type__WEBPACK_IMPORTED_MODULE_0__.SessionType.PLAIN; }
30573
- this.sessionShortId = sessionShortId;
30574
- this.sessionType = sessionType;
30550
+ return agg;
30551
+ }, new Map());
30552
+ // Because of the reverse() requirement, trunc must be done after map is created
30553
+ if (this._internalState.size > MAX_TRACE_STATE_ITEMS) {
30554
+ this._internalState = new Map(Array.from(this._internalState.entries())
30555
+ .reverse() // Use reverse same as original tracestate parse chain
30556
+ .slice(0, MAX_TRACE_STATE_ITEMS));
30557
+ }
30575
30558
  };
30576
- SessionRecorderIdGenerator.prototype._isDocTrace = function (traceId) {
30577
- return this.docSpanSampler.shouldSample(undefined, traceId).decision === _opentelemetry_sdk_trace_base__WEBPACK_IMPORTED_MODULE_4__.SamplingDecision.RECORD_AND_SAMPLED;
30559
+ TraceState.prototype._keys = function () {
30560
+ return Array.from(this._internalState.keys()).reverse();
30578
30561
  };
30579
- return SessionRecorderIdGenerator;
30580
- }(_opentelemetry_sdk_trace_base__WEBPACK_IMPORTED_MODULE_5__.RandomIdGenerator));
30562
+ TraceState.prototype._clone = function () {
30563
+ var traceState = new TraceState();
30564
+ traceState._internalState = new Map(this._internalState);
30565
+ return traceState;
30566
+ };
30567
+ return TraceState;
30568
+ }());
30581
30569
 
30582
- //# sourceMappingURL=SessionRecorderIdGenerator.js.map
30570
+ //# sourceMappingURL=TraceState.js.map
30583
30571
 
30584
30572
  /***/ }),
30585
30573
 
30586
- /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderJsonTraceSerializer.js":
30587
- /*!**************************************************************************************************************!*\
30588
- !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderJsonTraceSerializer.js ***!
30589
- \**************************************************************************************************************/
30574
+ /***/ "./node_modules/@opentelemetry/core/build/esm/trace/W3CTraceContextPropagator.js":
30575
+ /*!***************************************************************************************!*\
30576
+ !*** ./node_modules/@opentelemetry/core/build/esm/trace/W3CTraceContextPropagator.js ***!
30577
+ \***************************************************************************************/
30590
30578
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
30591
30579
 
30592
30580
  "use strict";
30593
30581
  __webpack_require__.r(__webpack_exports__);
30594
30582
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
30595
- /* harmony export */ SessionRecorderJsonTraceSerializer: () => (/* binding */ SessionRecorderJsonTraceSerializer)
30583
+ /* harmony export */ TRACE_PARENT_HEADER: () => (/* binding */ TRACE_PARENT_HEADER),
30584
+ /* harmony export */ TRACE_STATE_HEADER: () => (/* binding */ TRACE_STATE_HEADER),
30585
+ /* harmony export */ W3CTraceContextPropagator: () => (/* binding */ W3CTraceContextPropagator),
30586
+ /* harmony export */ parseTraceParent: () => (/* binding */ parseTraceParent)
30596
30587
  /* harmony export */ });
30597
- /* harmony import */ var _opentelemetry_otlp_transformer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @opentelemetry/otlp-transformer */ "../../node_modules/@opentelemetry/otlp-transformer/build/esm/trace/index.js");
30598
- /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants.base */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/constants.base.js");
30588
+ /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/trace-api.js");
30589
+ /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/trace/spancontext-utils.js");
30590
+ /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/trace/trace_flags.js");
30591
+ /* harmony import */ var _suppress_tracing__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./suppress-tracing */ "./node_modules/@opentelemetry/core/build/esm/trace/suppress-tracing.js");
30592
+ /* harmony import */ var _TraceState__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./TraceState */ "./node_modules/@opentelemetry/core/build/esm/trace/TraceState.js");
30593
+ /*
30594
+ * Copyright The OpenTelemetry Authors
30595
+ *
30596
+ * Licensed under the Apache License, Version 2.0 (the "License");
30597
+ * you may not use this file except in compliance with the License.
30598
+ * You may obtain a copy of the License at
30599
+ *
30600
+ * https://www.apache.org/licenses/LICENSE-2.0
30601
+ *
30602
+ * Unless required by applicable law or agreed to in writing, software
30603
+ * distributed under the License is distributed on an "AS IS" BASIS,
30604
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
30605
+ * See the License for the specific language governing permissions and
30606
+ * limitations under the License.
30607
+ */
30599
30608
 
30600
30609
 
30601
- var SessionRecorderJsonTraceSerializer = {
30602
- serializeRequest: function (arg) {
30603
- var filteredArg = arg.filter(function (span) {
30604
- var traceId = span.spanContext().traceId;
30605
- if (traceId.startsWith(_constants_base__WEBPACK_IMPORTED_MODULE_0__.MULTIPLAYER_TRACE_DEBUG_PREFIX)
30606
- || traceId.startsWith(_constants_base__WEBPACK_IMPORTED_MODULE_0__.MULTIPLAYER_TRACE_DOC_PREFIX)
30607
- || traceId.startsWith(_constants_base__WEBPACK_IMPORTED_MODULE_0__.MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX)) {
30608
- return true;
30609
- }
30610
- return false;
30611
- });
30612
- var request = (0,_opentelemetry_otlp_transformer__WEBPACK_IMPORTED_MODULE_1__.createExportTraceServiceRequest)(filteredArg, {
30613
- useHex: true,
30614
- useLongBits: false,
30615
- });
30616
- var encoder = new TextEncoder();
30617
- return encoder.encode(JSON.stringify(request));
30618
- },
30619
- deserializeResponse: function (arg) {
30620
- var decoder = new TextDecoder();
30621
- return JSON.parse(decoder.decode(arg));
30622
- },
30623
- };
30624
- //# sourceMappingURL=SessionRecorderJsonTraceSerializer.js.map
30610
+
30611
+ var TRACE_PARENT_HEADER = 'traceparent';
30612
+ var TRACE_STATE_HEADER = 'tracestate';
30613
+ var VERSION = '00';
30614
+ var VERSION_PART = '(?!ff)[\\da-f]{2}';
30615
+ var TRACE_ID_PART = '(?![0]{32})[\\da-f]{32}';
30616
+ var PARENT_ID_PART = '(?![0]{16})[\\da-f]{16}';
30617
+ var FLAGS_PART = '[\\da-f]{2}';
30618
+ var TRACE_PARENT_REGEX = new RegExp("^\\s?(" + VERSION_PART + ")-(" + TRACE_ID_PART + ")-(" + PARENT_ID_PART + ")-(" + FLAGS_PART + ")(-.*)?\\s?$");
30619
+ /**
30620
+ * Parses information from the [traceparent] span tag and converts it into {@link SpanContext}
30621
+ * @param traceParent - A meta property that comes from server.
30622
+ * It should be dynamically generated server side to have the server's request trace Id,
30623
+ * a parent span Id that was set on the server's request span,
30624
+ * and the trace flags to indicate the server's sampling decision
30625
+ * (01 = sampled, 00 = not sampled).
30626
+ * for example: '{version}-{traceId}-{spanId}-{sampleDecision}'
30627
+ * For more information see {@link https://www.w3.org/TR/trace-context/}
30628
+ */
30629
+ function parseTraceParent(traceParent) {
30630
+ var match = TRACE_PARENT_REGEX.exec(traceParent);
30631
+ if (!match)
30632
+ return null;
30633
+ // According to the specification the implementation should be compatible
30634
+ // with future versions. If there are more parts, we only reject it if it's using version 00
30635
+ // See https://www.w3.org/TR/trace-context/#versioning-of-traceparent
30636
+ if (match[1] === '00' && match[5])
30637
+ return null;
30638
+ return {
30639
+ traceId: match[2],
30640
+ spanId: match[3],
30641
+ traceFlags: parseInt(match[4], 16),
30642
+ };
30643
+ }
30644
+ /**
30645
+ * Propagates {@link SpanContext} through Trace Context format propagation.
30646
+ *
30647
+ * Based on the Trace Context specification:
30648
+ * https://www.w3.org/TR/trace-context/
30649
+ */
30650
+ var W3CTraceContextPropagator = /** @class */ (function () {
30651
+ function W3CTraceContextPropagator() {
30652
+ }
30653
+ W3CTraceContextPropagator.prototype.inject = function (context, carrier, setter) {
30654
+ var spanContext = _opentelemetry_api__WEBPACK_IMPORTED_MODULE_0__.trace.getSpanContext(context);
30655
+ if (!spanContext ||
30656
+ (0,_suppress_tracing__WEBPACK_IMPORTED_MODULE_1__.isTracingSuppressed)(context) ||
30657
+ !(0,_opentelemetry_api__WEBPACK_IMPORTED_MODULE_2__.isSpanContextValid)(spanContext))
30658
+ return;
30659
+ var traceParent = VERSION + "-" + spanContext.traceId + "-" + spanContext.spanId + "-0" + Number(spanContext.traceFlags || _opentelemetry_api__WEBPACK_IMPORTED_MODULE_3__.TraceFlags.NONE).toString(16);
30660
+ setter.set(carrier, TRACE_PARENT_HEADER, traceParent);
30661
+ if (spanContext.traceState) {
30662
+ setter.set(carrier, TRACE_STATE_HEADER, spanContext.traceState.serialize());
30663
+ }
30664
+ };
30665
+ W3CTraceContextPropagator.prototype.extract = function (context, carrier, getter) {
30666
+ var traceParentHeader = getter.get(carrier, TRACE_PARENT_HEADER);
30667
+ if (!traceParentHeader)
30668
+ return context;
30669
+ var traceParent = Array.isArray(traceParentHeader)
30670
+ ? traceParentHeader[0]
30671
+ : traceParentHeader;
30672
+ if (typeof traceParent !== 'string')
30673
+ return context;
30674
+ var spanContext = parseTraceParent(traceParent);
30675
+ if (!spanContext)
30676
+ return context;
30677
+ spanContext.isRemote = true;
30678
+ var traceStateHeader = getter.get(carrier, TRACE_STATE_HEADER);
30679
+ if (traceStateHeader) {
30680
+ // If more than one `tracestate` header is found, we merge them into a
30681
+ // single header.
30682
+ var state = Array.isArray(traceStateHeader)
30683
+ ? traceStateHeader.join(',')
30684
+ : traceStateHeader;
30685
+ spanContext.traceState = new _TraceState__WEBPACK_IMPORTED_MODULE_4__.TraceState(typeof state === 'string' ? state : undefined);
30686
+ }
30687
+ return _opentelemetry_api__WEBPACK_IMPORTED_MODULE_0__.trace.setSpanContext(context, spanContext);
30688
+ };
30689
+ W3CTraceContextPropagator.prototype.fields = function () {
30690
+ return [TRACE_PARENT_HEADER, TRACE_STATE_HEADER];
30691
+ };
30692
+ return W3CTraceContextPropagator;
30693
+ }());
30694
+
30695
+ //# sourceMappingURL=W3CTraceContextPropagator.js.map
30625
30696
 
30626
30697
  /***/ }),
30627
30698
 
30628
- /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderTraceIdRatioBasedSampler.js":
30629
- /*!*******************************************************************************************************************!*\
30630
- !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderTraceIdRatioBasedSampler.js ***!
30631
- \*******************************************************************************************************************/
30699
+ /***/ "./node_modules/@opentelemetry/core/build/esm/trace/suppress-tracing.js":
30700
+ /*!******************************************************************************!*\
30701
+ !*** ./node_modules/@opentelemetry/core/build/esm/trace/suppress-tracing.js ***!
30702
+ \******************************************************************************/
30632
30703
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
30633
30704
 
30634
30705
  "use strict";
30635
30706
  __webpack_require__.r(__webpack_exports__);
30636
30707
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
30637
- /* harmony export */ SessionRecorderTraceIdRatioBasedSampler: () => (/* binding */ SessionRecorderTraceIdRatioBasedSampler)
30708
+ /* harmony export */ isTracingSuppressed: () => (/* binding */ isTracingSuppressed),
30709
+ /* harmony export */ suppressTracing: () => (/* binding */ suppressTracing),
30710
+ /* harmony export */ unsuppressTracing: () => (/* binding */ unsuppressTracing)
30638
30711
  /* harmony export */ });
30639
- /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/trace/spancontext-utils.js");
30640
- /* harmony import */ var _opentelemetry_sdk_trace_base__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @opentelemetry/sdk-trace-base */ "../../node_modules/@opentelemetry/sdk-trace-base/build/esm/Sampler.js");
30641
- /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants.base */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/constants.base.js");
30642
-
30643
-
30644
-
30645
- var SessionRecorderTraceIdRatioBasedSampler = /** @class */ (function () {
30646
- function SessionRecorderTraceIdRatioBasedSampler(_ratio) {
30647
- if (_ratio === void 0) { _ratio = 0; }
30648
- this._ratio = _ratio;
30649
- this._ratio = this._normalize(_ratio);
30650
- this._upperBound = Math.floor(this._ratio * 0xffffffff);
30651
- }
30652
- SessionRecorderTraceIdRatioBasedSampler.prototype.shouldSample = function (context, traceId) {
30653
- if (this._ratio > 0
30654
- && traceId.startsWith(_constants_base__WEBPACK_IMPORTED_MODULE_0__.MULTIPLAYER_TRACE_DEBUG_PREFIX)) {
30655
- return {
30656
- decision: _opentelemetry_sdk_trace_base__WEBPACK_IMPORTED_MODULE_1__.SamplingDecision.RECORD_AND_SAMPLED,
30657
- };
30712
+ /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/context/context.js");
30713
+ /*
30714
+ * Copyright The OpenTelemetry Authors
30715
+ *
30716
+ * Licensed under the Apache License, Version 2.0 (the "License");
30717
+ * you may not use this file except in compliance with the License.
30718
+ * You may obtain a copy of the License at
30719
+ *
30720
+ * https://www.apache.org/licenses/LICENSE-2.0
30721
+ *
30722
+ * Unless required by applicable law or agreed to in writing, software
30723
+ * distributed under the License is distributed on an "AS IS" BASIS,
30724
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
30725
+ * See the License for the specific language governing permissions and
30726
+ * limitations under the License.
30727
+ */
30728
+
30729
+ var SUPPRESS_TRACING_KEY = (0,_opentelemetry_api__WEBPACK_IMPORTED_MODULE_0__.createContextKey)('OpenTelemetry SDK Context Key SUPPRESS_TRACING');
30730
+ function suppressTracing(context) {
30731
+ return context.setValue(SUPPRESS_TRACING_KEY, true);
30732
+ }
30733
+ function unsuppressTracing(context) {
30734
+ return context.deleteValue(SUPPRESS_TRACING_KEY);
30735
+ }
30736
+ function isTracingSuppressed(context) {
30737
+ return context.getValue(SUPPRESS_TRACING_KEY) === true;
30738
+ }
30739
+ //# sourceMappingURL=suppress-tracing.js.map
30740
+
30741
+ /***/ }),
30742
+
30743
+ /***/ "../session-recorder-common/dist/esm/SessionRecorderHttpTraceExporterBrowser.js":
30744
+ /*!**************************************************************************************!*\
30745
+ !*** ../session-recorder-common/dist/esm/SessionRecorderHttpTraceExporterBrowser.js ***!
30746
+ \**************************************************************************************/
30747
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
30748
+
30749
+ "use strict";
30750
+ __webpack_require__.r(__webpack_exports__);
30751
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
30752
+ /* harmony export */ SessionRecorderHttpTraceExporterBrowser: () => (/* binding */ SessionRecorderHttpTraceExporterBrowser)
30753
+ /* harmony export */ });
30754
+ /* harmony import */ var _opentelemetry_otlp_exporter_base__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @opentelemetry/otlp-exporter-base */ "../../node_modules/@opentelemetry/otlp-exporter-base/build/esm/OTLPExporterBase.js");
30755
+ /* harmony import */ var _opentelemetry_otlp_exporter_base_browser_http__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @opentelemetry/otlp-exporter-base/browser-http */ "../../node_modules/@opentelemetry/otlp-exporter-base/build/esm/configuration/create-legacy-browser-delegate.js");
30756
+ /* harmony import */ var _SessionRecorderJsonTraceSerializer__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./SessionRecorderJsonTraceSerializer */ "../session-recorder-common/dist/esm/SessionRecorderJsonTraceSerializer.js");
30757
+ /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./constants.base */ "../session-recorder-common/dist/esm/constants.base.js");
30758
+ var __extends = (undefined && undefined.__extends) || (function () {
30759
+ var extendStatics = function (d, b) {
30760
+ extendStatics = Object.setPrototypeOf ||
30761
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
30762
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
30763
+ return extendStatics(d, b);
30764
+ };
30765
+ return function (d, b) {
30766
+ if (typeof b !== "function" && b !== null)
30767
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
30768
+ extendStatics(d, b);
30769
+ function __() { this.constructor = d; }
30770
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
30771
+ };
30772
+ })();
30773
+ var __assign = (undefined && undefined.__assign) || function () {
30774
+ __assign = Object.assign || function(t) {
30775
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
30776
+ s = arguments[i];
30777
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
30778
+ t[p] = s[p];
30779
+ }
30780
+ return t;
30781
+ };
30782
+ return __assign.apply(this, arguments);
30783
+ };
30784
+
30785
+
30786
+
30787
+
30788
+ /**
30789
+ * Trace Exporters for Web with postMessage fallback
30790
+ */
30791
+ var SessionRecorderHttpTraceExporterBrowser = /** @class */ (function (_super) {
30792
+ __extends(SessionRecorderHttpTraceExporterBrowser, _super);
30793
+ function SessionRecorderHttpTraceExporterBrowser(config) {
30794
+ if (config === void 0) { config = {}; }
30795
+ var _this = this;
30796
+ var _config = __assign(__assign({}, config), { url: config.url || _constants_base__WEBPACK_IMPORTED_MODULE_1__.MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_URL, headers: __assign(__assign({}, (config.headers || {})), config.apiKey
30797
+ ? { Authorization: config.apiKey }
30798
+ : {}) });
30799
+ _this = _super.call(this, (0,_opentelemetry_otlp_exporter_base_browser_http__WEBPACK_IMPORTED_MODULE_2__.createLegacyOtlpBrowserExportDelegate)(_config, _SessionRecorderJsonTraceSerializer__WEBPACK_IMPORTED_MODULE_0__.SessionRecorderJsonTraceSerializer, 'v1/traces', { 'Content-Type': 'application/json' })) || this;
30800
+ _this.usePostMessage = false;
30801
+ _this.config = config;
30802
+ _this.postMessageType = config.postMessageType || 'MULTIPLAYER_SESSION_DEBUGGER_LIB';
30803
+ _this.postMessageTargetOrigin = config.postMessageTargetOrigin || '*';
30804
+ return _this;
30805
+ }
30806
+ SessionRecorderHttpTraceExporterBrowser.prototype.export = function (spans, resultCallback) {
30807
+ var _this = this;
30808
+ if (this.usePostMessage) {
30809
+ this.exportViaPostMessage(spans, resultCallback);
30810
+ return;
30811
+ }
30812
+ _super.prototype.export.call(this, spans, function (result) {
30813
+ if (result.code === 0) {
30814
+ resultCallback(result);
30815
+ }
30816
+ else if (_this.config.usePostMessageFallback) {
30817
+ _this.usePostMessage = true;
30818
+ _this.exportViaPostMessage(spans, resultCallback);
30819
+ }
30820
+ else {
30821
+ resultCallback(result);
30822
+ }
30823
+ });
30824
+ };
30825
+ SessionRecorderHttpTraceExporterBrowser.prototype.exportViaPostMessage = function (spans, resultCallback) {
30826
+ var _this = this;
30827
+ if (typeof window === 'undefined') {
30828
+ resultCallback({ code: 1 });
30829
+ return;
30830
+ }
30831
+ try {
30832
+ window.postMessage({
30833
+ action: 'traces',
30834
+ type: this.postMessageType,
30835
+ payload: spans.map(function (span) { return _this._serializeSpan(span); }),
30836
+ }, this.postMessageTargetOrigin);
30837
+ resultCallback({ code: 0 });
30838
+ }
30839
+ catch (e) {
30840
+ resultCallback({ code: 1 });
30841
+ }
30842
+ };
30843
+ SessionRecorderHttpTraceExporterBrowser.prototype._serializeSpan = function (span) {
30844
+ return {
30845
+ _spanContext: span.spanContext(),
30846
+ name: span.name,
30847
+ kind: span.kind,
30848
+ links: span.links,
30849
+ ended: span.ended,
30850
+ events: span.events,
30851
+ status: span.status,
30852
+ endTime: span.endTime,
30853
+ startTime: span.startTime,
30854
+ duration: span.duration,
30855
+ attributes: span.attributes,
30856
+ parentSpanId: span.parentSpanId,
30857
+ instrumentationLibrary: span.instrumentationLibrary,
30858
+ droppedAttributesCount: span.droppedAttributesCount,
30859
+ droppedEventsCount: span.droppedEventsCount,
30860
+ droppedLinksCount: span.droppedLinksCount,
30861
+ resource: {
30862
+ attributes: span.resource.attributes,
30863
+ asyncAttributesPending: span.resource.asyncAttributesPending,
30864
+ },
30865
+ };
30866
+ };
30867
+ SessionRecorderHttpTraceExporterBrowser.prototype.getDefaultUrl = function (config) {
30868
+ return config.url || _constants_base__WEBPACK_IMPORTED_MODULE_1__.MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_URL;
30869
+ };
30870
+ return SessionRecorderHttpTraceExporterBrowser;
30871
+ }(_opentelemetry_otlp_exporter_base__WEBPACK_IMPORTED_MODULE_3__.OTLPExporterBase));
30872
+
30873
+ //# sourceMappingURL=SessionRecorderHttpTraceExporterBrowser.js.map
30874
+
30875
+ /***/ }),
30876
+
30877
+ /***/ "../session-recorder-common/dist/esm/SessionRecorderIdGenerator.js":
30878
+ /*!*************************************************************************!*\
30879
+ !*** ../session-recorder-common/dist/esm/SessionRecorderIdGenerator.js ***!
30880
+ \*************************************************************************/
30881
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
30882
+
30883
+ "use strict";
30884
+ __webpack_require__.r(__webpack_exports__);
30885
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
30886
+ /* harmony export */ SessionRecorderIdGenerator: () => (/* binding */ SessionRecorderIdGenerator)
30887
+ /* harmony export */ });
30888
+ /* harmony import */ var _opentelemetry_sdk_trace_base__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @opentelemetry/sdk-trace-base */ "../../node_modules/@opentelemetry/sdk-trace-base/build/esm/Sampler.js");
30889
+ /* harmony import */ var _opentelemetry_sdk_trace_base__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @opentelemetry/sdk-trace-base */ "../../node_modules/@opentelemetry/sdk-trace-base/build/esm/platform/browser/RandomIdGenerator.js");
30890
+ /* harmony import */ var _type__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./type */ "../session-recorder-common/dist/esm/type/index.js");
30891
+ /* harmony import */ var _SessionRecorderTraceIdRatioBasedSampler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SessionRecorderTraceIdRatioBasedSampler */ "../session-recorder-common/dist/esm/SessionRecorderTraceIdRatioBasedSampler.js");
30892
+ /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constants.base */ "../session-recorder-common/dist/esm/constants.base.js");
30893
+ /* harmony import */ var _sdk__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./sdk */ "../session-recorder-common/dist/esm/sdk/index.js");
30894
+ var __extends = (undefined && undefined.__extends) || (function () {
30895
+ var extendStatics = function (d, b) {
30896
+ extendStatics = Object.setPrototypeOf ||
30897
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
30898
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
30899
+ return extendStatics(d, b);
30900
+ };
30901
+ return function (d, b) {
30902
+ if (typeof b !== "function" && b !== null)
30903
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
30904
+ extendStatics(d, b);
30905
+ function __() { this.constructor = d; }
30906
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
30907
+ };
30908
+ })();
30909
+
30910
+
30911
+
30912
+
30913
+
30914
+ var SessionRecorderIdGenerator = /** @class */ (function (_super) {
30915
+ __extends(SessionRecorderIdGenerator, _super);
30916
+ function SessionRecorderIdGenerator(_a) {
30917
+ var _b = _a === void 0 ? {} : _a, _c = _b.autoDocTracesRatio, autoDocTracesRatio = _c === void 0 ? 0 : _c;
30918
+ var _this = _super.call(this) || this;
30919
+ _this.docSpanSampler = new _SessionRecorderTraceIdRatioBasedSampler__WEBPACK_IMPORTED_MODULE_1__.SessionRecorderTraceIdRatioBasedSampler(autoDocTracesRatio);
30920
+ _this.generateLongId = (0,_sdk__WEBPACK_IMPORTED_MODULE_3__.getIdGenerator)(16);
30921
+ _this.sessionShortId = '';
30922
+ _this.sessionType = _type__WEBPACK_IMPORTED_MODULE_0__.SessionType.PLAIN;
30923
+ _this.generateTraceId = function () {
30924
+ var traceId = _this.generateLongId();
30925
+ if (_this.sessionShortId) {
30926
+ var sessionTypePrefix = '';
30927
+ switch (_this.sessionType) {
30928
+ case _type__WEBPACK_IMPORTED_MODULE_0__.SessionType.CONTINUOUS:
30929
+ sessionTypePrefix = _constants_base__WEBPACK_IMPORTED_MODULE_2__.MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX;
30930
+ break;
30931
+ default:
30932
+ sessionTypePrefix = _constants_base__WEBPACK_IMPORTED_MODULE_2__.MULTIPLAYER_TRACE_DEBUG_PREFIX;
30933
+ }
30934
+ var prefix = "".concat(sessionTypePrefix).concat(_this.sessionShortId);
30935
+ var sessionTraceId = "".concat(prefix).concat(traceId.substring(prefix.length, traceId.length));
30936
+ return sessionTraceId;
30937
+ }
30938
+ else if (_this._isDocTrace(traceId)) {
30939
+ return "".concat(_constants_base__WEBPACK_IMPORTED_MODULE_2__.MULTIPLAYER_TRACE_DOC_PREFIX).concat(traceId.slice(_constants_base__WEBPACK_IMPORTED_MODULE_2__.MULTIPLAYER_TRACE_DOC_PREFIX.length, traceId.length));
30940
+ }
30941
+ return traceId;
30942
+ };
30943
+ return _this;
30944
+ }
30945
+ SessionRecorderIdGenerator.prototype.setSessionId = function (sessionShortId, sessionType) {
30946
+ if (sessionType === void 0) { sessionType = _type__WEBPACK_IMPORTED_MODULE_0__.SessionType.PLAIN; }
30947
+ this.sessionShortId = sessionShortId;
30948
+ this.sessionType = sessionType;
30949
+ };
30950
+ SessionRecorderIdGenerator.prototype._isDocTrace = function (traceId) {
30951
+ return this.docSpanSampler.shouldSample(undefined, traceId).decision === _opentelemetry_sdk_trace_base__WEBPACK_IMPORTED_MODULE_4__.SamplingDecision.RECORD_AND_SAMPLED;
30952
+ };
30953
+ return SessionRecorderIdGenerator;
30954
+ }(_opentelemetry_sdk_trace_base__WEBPACK_IMPORTED_MODULE_5__.RandomIdGenerator));
30955
+
30956
+ //# sourceMappingURL=SessionRecorderIdGenerator.js.map
30957
+
30958
+ /***/ }),
30959
+
30960
+ /***/ "../session-recorder-common/dist/esm/SessionRecorderJsonTraceSerializer.js":
30961
+ /*!*********************************************************************************!*\
30962
+ !*** ../session-recorder-common/dist/esm/SessionRecorderJsonTraceSerializer.js ***!
30963
+ \*********************************************************************************/
30964
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
30965
+
30966
+ "use strict";
30967
+ __webpack_require__.r(__webpack_exports__);
30968
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
30969
+ /* harmony export */ SessionRecorderJsonTraceSerializer: () => (/* binding */ SessionRecorderJsonTraceSerializer)
30970
+ /* harmony export */ });
30971
+ /* harmony import */ var _opentelemetry_otlp_transformer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @opentelemetry/otlp-transformer */ "../../node_modules/@opentelemetry/otlp-transformer/build/esm/trace/index.js");
30972
+ /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants.base */ "../session-recorder-common/dist/esm/constants.base.js");
30973
+
30974
+
30975
+ var SessionRecorderJsonTraceSerializer = {
30976
+ serializeRequest: function (arg) {
30977
+ var filteredArg = arg.filter(function (span) {
30978
+ var traceId = span.spanContext().traceId;
30979
+ if (traceId.startsWith(_constants_base__WEBPACK_IMPORTED_MODULE_0__.MULTIPLAYER_TRACE_DEBUG_PREFIX)
30980
+ || traceId.startsWith(_constants_base__WEBPACK_IMPORTED_MODULE_0__.MULTIPLAYER_TRACE_DOC_PREFIX)
30981
+ || traceId.startsWith(_constants_base__WEBPACK_IMPORTED_MODULE_0__.MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX)) {
30982
+ return true;
30983
+ }
30984
+ return false;
30985
+ });
30986
+ var request = (0,_opentelemetry_otlp_transformer__WEBPACK_IMPORTED_MODULE_1__.createExportTraceServiceRequest)(filteredArg, {
30987
+ useHex: true,
30988
+ useLongBits: false,
30989
+ });
30990
+ var encoder = new TextEncoder();
30991
+ return encoder.encode(JSON.stringify(request));
30992
+ },
30993
+ deserializeResponse: function (arg) {
30994
+ var decoder = new TextDecoder();
30995
+ return JSON.parse(decoder.decode(arg));
30996
+ },
30997
+ };
30998
+ //# sourceMappingURL=SessionRecorderJsonTraceSerializer.js.map
30999
+
31000
+ /***/ }),
31001
+
31002
+ /***/ "../session-recorder-common/dist/esm/SessionRecorderTraceIdRatioBasedSampler.js":
31003
+ /*!**************************************************************************************!*\
31004
+ !*** ../session-recorder-common/dist/esm/SessionRecorderTraceIdRatioBasedSampler.js ***!
31005
+ \**************************************************************************************/
31006
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31007
+
31008
+ "use strict";
31009
+ __webpack_require__.r(__webpack_exports__);
31010
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
31011
+ /* harmony export */ SessionRecorderTraceIdRatioBasedSampler: () => (/* binding */ SessionRecorderTraceIdRatioBasedSampler)
31012
+ /* harmony export */ });
31013
+ /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/trace/spancontext-utils.js");
31014
+ /* harmony import */ var _opentelemetry_sdk_trace_base__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @opentelemetry/sdk-trace-base */ "../../node_modules/@opentelemetry/sdk-trace-base/build/esm/Sampler.js");
31015
+ /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants.base */ "../session-recorder-common/dist/esm/constants.base.js");
31016
+
31017
+
31018
+
31019
+ var SessionRecorderTraceIdRatioBasedSampler = /** @class */ (function () {
31020
+ function SessionRecorderTraceIdRatioBasedSampler(_ratio) {
31021
+ if (_ratio === void 0) { _ratio = 0; }
31022
+ this._ratio = _ratio;
31023
+ this._ratio = this._normalize(_ratio);
31024
+ this._upperBound = Math.floor(this._ratio * 0xffffffff);
31025
+ }
31026
+ SessionRecorderTraceIdRatioBasedSampler.prototype.shouldSample = function (context, traceId) {
31027
+ if (traceId.startsWith(_constants_base__WEBPACK_IMPORTED_MODULE_0__.MULTIPLAYER_TRACE_DEBUG_PREFIX)
31028
+ || traceId.startsWith(_constants_base__WEBPACK_IMPORTED_MODULE_0__.MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX)) {
31029
+ return {
31030
+ decision: _opentelemetry_sdk_trace_base__WEBPACK_IMPORTED_MODULE_1__.SamplingDecision.RECORD_AND_SAMPLED,
31031
+ };
30658
31032
  }
30659
31033
  var decision = _opentelemetry_sdk_trace_base__WEBPACK_IMPORTED_MODULE_1__.SamplingDecision.NOT_RECORD;
30660
31034
  if ((0,_opentelemetry_api__WEBPACK_IMPORTED_MODULE_2__.isValidTraceId)(traceId)
@@ -30664,7 +31038,7 @@ var SessionRecorderTraceIdRatioBasedSampler = /** @class */ (function () {
30664
31038
  return { decision: decision };
30665
31039
  };
30666
31040
  SessionRecorderTraceIdRatioBasedSampler.prototype.toString = function () {
30667
- return "MultiplayerTraceIdRatioBasedSampler{".concat(this._ratio, "}");
31041
+ return "SessionRecorderTraceIdRatioBasedSampler{".concat(this._ratio, "}");
30668
31042
  };
30669
31043
  SessionRecorderTraceIdRatioBasedSampler.prototype._normalize = function (ratio) {
30670
31044
  if (typeof ratio !== 'number' || isNaN(ratio))
@@ -30687,10 +31061,10 @@ var SessionRecorderTraceIdRatioBasedSampler = /** @class */ (function () {
30687
31061
 
30688
31062
  /***/ }),
30689
31063
 
30690
- /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/constants.base.js":
30691
- /*!******************************************************************************************!*\
30692
- !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/constants.base.js ***!
30693
- \******************************************************************************************/
31064
+ /***/ "../session-recorder-common/dist/esm/constants.base.js":
31065
+ /*!*************************************************************!*\
31066
+ !*** ../session-recorder-common/dist/esm/constants.base.js ***!
31067
+ \*************************************************************/
30694
31068
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
30695
31069
 
30696
31070
  "use strict";
@@ -30702,6 +31076,8 @@ __webpack_require__.r(__webpack_exports__);
30702
31076
  /* harmony export */ ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE: () => (/* binding */ ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE),
30703
31077
  /* harmony export */ ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE_ENCODING: () => (/* binding */ ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE_ENCODING),
30704
31078
  /* harmony export */ ATTR_MULTIPLAYER_GRPC_RESPONSE_MESSAGE: () => (/* binding */ ATTR_MULTIPLAYER_GRPC_RESPONSE_MESSAGE),
31079
+ /* harmony export */ ATTR_MULTIPLAYER_HTTP_PROXY: () => (/* binding */ ATTR_MULTIPLAYER_HTTP_PROXY),
31080
+ /* harmony export */ ATTR_MULTIPLAYER_HTTP_PROXY_TYPE: () => (/* binding */ ATTR_MULTIPLAYER_HTTP_PROXY_TYPE),
30705
31081
  /* harmony export */ ATTR_MULTIPLAYER_HTTP_REQUEST_BODY: () => (/* binding */ ATTR_MULTIPLAYER_HTTP_REQUEST_BODY),
30706
31082
  /* harmony export */ ATTR_MULTIPLAYER_HTTP_REQUEST_HEADERS: () => (/* binding */ ATTR_MULTIPLAYER_HTTP_REQUEST_HEADERS),
30707
31083
  /* harmony export */ ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY: () => (/* binding */ ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY),
@@ -30744,6 +31120,8 @@ var ATTR_MULTIPLAYER_PLATFORM_NAME = 'multiplayer.platform.name';
30744
31120
  var ATTR_MULTIPLAYER_CLIENT_ID = 'multiplayer.client.id';
30745
31121
  var ATTR_MULTIPLAYER_INTEGRATION_ID = 'multiplayer.integration.id';
30746
31122
  var ATTR_MULTIPLAYER_SESSION_ID = 'multiplayer.session.id';
31123
+ var ATTR_MULTIPLAYER_HTTP_PROXY = 'multiplayer.http.proxy';
31124
+ var ATTR_MULTIPLAYER_HTTP_PROXY_TYPE = 'multiplayer.http.proxy.type';
30747
31125
  var ATTR_MULTIPLAYER_HTTP_REQUEST_BODY = 'multiplayer.http.request.body';
30748
31126
  var ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY = 'multiplayer.http.response.body';
30749
31127
  var ATTR_MULTIPLAYER_HTTP_REQUEST_HEADERS = 'multiplayer.http.request.headers';
@@ -30763,10 +31141,10 @@ var MASK_PLACEHOLDER = '***MASKED***';
30763
31141
 
30764
31142
  /***/ }),
30765
31143
 
30766
- /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/constants.browser.js":
30767
- /*!*********************************************************************************************!*\
30768
- !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/constants.browser.js ***!
30769
- \*********************************************************************************************/
31144
+ /***/ "../session-recorder-common/dist/esm/constants.browser.js":
31145
+ /*!****************************************************************!*\
31146
+ !*** ../session-recorder-common/dist/esm/constants.browser.js ***!
31147
+ \****************************************************************/
30770
31148
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
30771
31149
 
30772
31150
  "use strict";
@@ -30778,6 +31156,8 @@ __webpack_require__.r(__webpack_exports__);
30778
31156
  /* harmony export */ ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE: () => (/* reexport safe */ _constants_base__WEBPACK_IMPORTED_MODULE_0__.ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE),
30779
31157
  /* harmony export */ ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE_ENCODING: () => (/* reexport safe */ _constants_base__WEBPACK_IMPORTED_MODULE_0__.ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE_ENCODING),
30780
31158
  /* harmony export */ ATTR_MULTIPLAYER_GRPC_RESPONSE_MESSAGE: () => (/* reexport safe */ _constants_base__WEBPACK_IMPORTED_MODULE_0__.ATTR_MULTIPLAYER_GRPC_RESPONSE_MESSAGE),
31159
+ /* harmony export */ ATTR_MULTIPLAYER_HTTP_PROXY: () => (/* reexport safe */ _constants_base__WEBPACK_IMPORTED_MODULE_0__.ATTR_MULTIPLAYER_HTTP_PROXY),
31160
+ /* harmony export */ ATTR_MULTIPLAYER_HTTP_PROXY_TYPE: () => (/* reexport safe */ _constants_base__WEBPACK_IMPORTED_MODULE_0__.ATTR_MULTIPLAYER_HTTP_PROXY_TYPE),
30781
31161
  /* harmony export */ ATTR_MULTIPLAYER_HTTP_REQUEST_BODY: () => (/* reexport safe */ _constants_base__WEBPACK_IMPORTED_MODULE_0__.ATTR_MULTIPLAYER_HTTP_REQUEST_BODY),
30782
31162
  /* harmony export */ ATTR_MULTIPLAYER_HTTP_REQUEST_HEADERS: () => (/* reexport safe */ _constants_base__WEBPACK_IMPORTED_MODULE_0__.ATTR_MULTIPLAYER_HTTP_REQUEST_HEADERS),
30783
31163
  /* harmony export */ ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY: () => (/* reexport safe */ _constants_base__WEBPACK_IMPORTED_MODULE_0__.ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY),
@@ -30804,16 +31184,16 @@ __webpack_require__.r(__webpack_exports__);
30804
31184
  /* harmony export */ MULTIPLAYER_TRACE_DEBUG_SESSION_SHORT_ID_LENGTH: () => (/* reexport safe */ _constants_base__WEBPACK_IMPORTED_MODULE_0__.MULTIPLAYER_TRACE_DEBUG_SESSION_SHORT_ID_LENGTH),
30805
31185
  /* harmony export */ MULTIPLAYER_TRACE_DOC_PREFIX: () => (/* reexport safe */ _constants_base__WEBPACK_IMPORTED_MODULE_0__.MULTIPLAYER_TRACE_DOC_PREFIX)
30806
31186
  /* harmony export */ });
30807
- /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants.base */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/constants.base.js");
31187
+ /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants.base */ "../session-recorder-common/dist/esm/constants.base.js");
30808
31188
 
30809
31189
  //# sourceMappingURL=constants.browser.js.map
30810
31190
 
30811
31191
  /***/ }),
30812
31192
 
30813
- /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/index-browser.js":
30814
- /*!*****************************************************************************************!*\
30815
- !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/index-browser.js ***!
30816
- \*****************************************************************************************/
31193
+ /***/ "../session-recorder-common/dist/esm/index-browser.js":
31194
+ /*!************************************************************!*\
31195
+ !*** ../session-recorder-common/dist/esm/index-browser.js ***!
31196
+ \************************************************************/
30817
31197
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
30818
31198
 
30819
31199
  "use strict";
@@ -30825,6 +31205,8 @@ __webpack_require__.r(__webpack_exports__);
30825
31205
  /* harmony export */ ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE: () => (/* reexport safe */ _constants_browser__WEBPACK_IMPORTED_MODULE_0__.ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE),
30826
31206
  /* harmony export */ ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE_ENCODING: () => (/* reexport safe */ _constants_browser__WEBPACK_IMPORTED_MODULE_0__.ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE_ENCODING),
30827
31207
  /* harmony export */ ATTR_MULTIPLAYER_GRPC_RESPONSE_MESSAGE: () => (/* reexport safe */ _constants_browser__WEBPACK_IMPORTED_MODULE_0__.ATTR_MULTIPLAYER_GRPC_RESPONSE_MESSAGE),
31208
+ /* harmony export */ ATTR_MULTIPLAYER_HTTP_PROXY: () => (/* reexport safe */ _constants_browser__WEBPACK_IMPORTED_MODULE_0__.ATTR_MULTIPLAYER_HTTP_PROXY),
31209
+ /* harmony export */ ATTR_MULTIPLAYER_HTTP_PROXY_TYPE: () => (/* reexport safe */ _constants_browser__WEBPACK_IMPORTED_MODULE_0__.ATTR_MULTIPLAYER_HTTP_PROXY_TYPE),
30828
31210
  /* harmony export */ ATTR_MULTIPLAYER_HTTP_REQUEST_BODY: () => (/* reexport safe */ _constants_browser__WEBPACK_IMPORTED_MODULE_0__.ATTR_MULTIPLAYER_HTTP_REQUEST_BODY),
30829
31211
  /* harmony export */ ATTR_MULTIPLAYER_HTTP_REQUEST_HEADERS: () => (/* reexport safe */ _constants_browser__WEBPACK_IMPORTED_MODULE_0__.ATTR_MULTIPLAYER_HTTP_REQUEST_HEADERS),
30830
31212
  /* harmony export */ ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY: () => (/* reexport safe */ _constants_browser__WEBPACK_IMPORTED_MODULE_0__.ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY),
@@ -30857,13 +31239,13 @@ __webpack_require__.r(__webpack_exports__);
30857
31239
  /* harmony export */ SessionRecorderTraceIdRatioBasedSampler: () => (/* reexport safe */ _SessionRecorderTraceIdRatioBasedSampler__WEBPACK_IMPORTED_MODULE_4__.SessionRecorderTraceIdRatioBasedSampler),
30858
31240
  /* harmony export */ SessionType: () => (/* reexport safe */ _type__WEBPACK_IMPORTED_MODULE_6__.SessionType)
30859
31241
  /* harmony export */ });
30860
- /* harmony import */ var _constants_browser__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants.browser */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/constants.browser.js");
30861
- /* harmony import */ var _SessionRecorderHttpTraceExporterBrowser__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SessionRecorderHttpTraceExporterBrowser */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderHttpTraceExporterBrowser.js");
30862
- /* harmony import */ var _SessionRecorderIdGenerator__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./SessionRecorderIdGenerator */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderIdGenerator.js");
30863
- /* harmony import */ var _SessionRecorderJsonTraceSerializer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./SessionRecorderJsonTraceSerializer */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderJsonTraceSerializer.js");
30864
- /* harmony import */ var _SessionRecorderTraceIdRatioBasedSampler__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./SessionRecorderTraceIdRatioBasedSampler */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderTraceIdRatioBasedSampler.js");
30865
- /* harmony import */ var _sdk__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./sdk */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/index.js");
30866
- /* harmony import */ var _type__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./type */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/type/index.js");
31242
+ /* harmony import */ var _constants_browser__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants.browser */ "../session-recorder-common/dist/esm/constants.browser.js");
31243
+ /* harmony import */ var _SessionRecorderHttpTraceExporterBrowser__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SessionRecorderHttpTraceExporterBrowser */ "../session-recorder-common/dist/esm/SessionRecorderHttpTraceExporterBrowser.js");
31244
+ /* harmony import */ var _SessionRecorderIdGenerator__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./SessionRecorderIdGenerator */ "../session-recorder-common/dist/esm/SessionRecorderIdGenerator.js");
31245
+ /* harmony import */ var _SessionRecorderJsonTraceSerializer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./SessionRecorderJsonTraceSerializer */ "../session-recorder-common/dist/esm/SessionRecorderJsonTraceSerializer.js");
31246
+ /* harmony import */ var _SessionRecorderTraceIdRatioBasedSampler__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./SessionRecorderTraceIdRatioBasedSampler */ "../session-recorder-common/dist/esm/SessionRecorderTraceIdRatioBasedSampler.js");
31247
+ /* harmony import */ var _sdk__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./sdk */ "../session-recorder-common/dist/esm/sdk/index.js");
31248
+ /* harmony import */ var _type__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./type */ "../session-recorder-common/dist/esm/type/index.js");
30867
31249
 
30868
31250
 
30869
31251
 
@@ -30876,10 +31258,10 @@ __webpack_require__.r(__webpack_exports__);
30876
31258
 
30877
31259
  /***/ }),
30878
31260
 
30879
- /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/capture-exception.js":
30880
- /*!*************************************************************************************************!*\
30881
- !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/capture-exception.js ***!
30882
- \*************************************************************************************************/
31261
+ /***/ "../session-recorder-common/dist/esm/sdk/capture-exception.js":
31262
+ /*!********************************************************************!*\
31263
+ !*** ../session-recorder-common/dist/esm/sdk/capture-exception.js ***!
31264
+ \********************************************************************/
30883
31265
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
30884
31266
 
30885
31267
  "use strict";
@@ -30912,10 +31294,10 @@ var captureException = function (error) {
30912
31294
 
30913
31295
  /***/ }),
30914
31296
 
30915
- /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/id-generator.js":
30916
- /*!********************************************************************************************!*\
30917
- !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/id-generator.js ***!
30918
- \********************************************************************************************/
31297
+ /***/ "../session-recorder-common/dist/esm/sdk/id-generator.js":
31298
+ /*!***************************************************************!*\
31299
+ !*** ../session-recorder-common/dist/esm/sdk/id-generator.js ***!
31300
+ \***************************************************************/
30919
31301
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
30920
31302
 
30921
31303
  "use strict";
@@ -30940,10 +31322,10 @@ var getIdGenerator = function (bytes) {
30940
31322
 
30941
31323
  /***/ }),
30942
31324
 
30943
- /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/index.js":
30944
- /*!*************************************************************************************!*\
30945
- !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/index.js ***!
30946
- \*************************************************************************************/
31325
+ /***/ "../session-recorder-common/dist/esm/sdk/index.js":
31326
+ /*!********************************************************!*\
31327
+ !*** ../session-recorder-common/dist/esm/sdk/index.js ***!
31328
+ \********************************************************/
30947
31329
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
30948
31330
 
30949
31331
  "use strict";
@@ -30968,13 +31350,13 @@ __webpack_require__.r(__webpack_exports__);
30968
31350
  /* harmony export */ setRpcRequestMessage: () => (/* reexport safe */ _set_attribute__WEBPACK_IMPORTED_MODULE_5__.setRpcRequestMessage),
30969
31351
  /* harmony export */ setRpcResponseMessage: () => (/* reexport safe */ _set_attribute__WEBPACK_IMPORTED_MODULE_5__.setRpcResponseMessage)
30970
31352
  /* harmony export */ });
30971
- /* harmony import */ var _mask__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./mask */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/mask.js");
30972
- /* harmony import */ var _schemify__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./schemify */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/schemify.js");
30973
- /* harmony import */ var _is_gzip__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./is-gzip */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/is-gzip.js");
30974
- /* harmony import */ var _id_generator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./id-generator */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/id-generator.js");
30975
- /* harmony import */ var _capture_exception__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./capture-exception */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/capture-exception.js");
30976
- /* harmony import */ var _set_attribute__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./set-attribute */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/set-attribute.js");
30977
- /* harmony import */ var _save_continuous_deb_session__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./save-continuous-deb-session */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/save-continuous-deb-session.js");
31353
+ /* harmony import */ var _mask__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./mask */ "../session-recorder-common/dist/esm/sdk/mask.js");
31354
+ /* harmony import */ var _schemify__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./schemify */ "../session-recorder-common/dist/esm/sdk/schemify.js");
31355
+ /* harmony import */ var _is_gzip__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./is-gzip */ "../session-recorder-common/dist/esm/sdk/is-gzip.js");
31356
+ /* harmony import */ var _id_generator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./id-generator */ "../session-recorder-common/dist/esm/sdk/id-generator.js");
31357
+ /* harmony import */ var _capture_exception__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./capture-exception */ "../session-recorder-common/dist/esm/sdk/capture-exception.js");
31358
+ /* harmony import */ var _set_attribute__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./set-attribute */ "../session-recorder-common/dist/esm/sdk/set-attribute.js");
31359
+ /* harmony import */ var _save_continuous_deb_session__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./save-continuous-deb-session */ "../session-recorder-common/dist/esm/sdk/save-continuous-deb-session.js");
30978
31360
 
30979
31361
 
30980
31362
 
@@ -30986,10 +31368,10 @@ __webpack_require__.r(__webpack_exports__);
30986
31368
 
30987
31369
  /***/ }),
30988
31370
 
30989
- /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/is-gzip.js":
30990
- /*!***************************************************************************************!*\
30991
- !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/is-gzip.js ***!
30992
- \***************************************************************************************/
31371
+ /***/ "../session-recorder-common/dist/esm/sdk/is-gzip.js":
31372
+ /*!**********************************************************!*\
31373
+ !*** ../session-recorder-common/dist/esm/sdk/is-gzip.js ***!
31374
+ \**********************************************************/
30993
31375
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
30994
31376
 
30995
31377
  "use strict";
@@ -31007,10 +31389,10 @@ var isGzip = function (buf) {
31007
31389
 
31008
31390
  /***/ }),
31009
31391
 
31010
- /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/mask.js":
31011
- /*!************************************************************************************!*\
31012
- !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/mask.js ***!
31013
- \************************************************************************************/
31392
+ /***/ "../session-recorder-common/dist/esm/sdk/mask.js":
31393
+ /*!*******************************************************!*\
31394
+ !*** ../session-recorder-common/dist/esm/sdk/mask.js ***!
31395
+ \*******************************************************/
31014
31396
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31015
31397
 
31016
31398
  "use strict";
@@ -31020,7 +31402,7 @@ __webpack_require__.r(__webpack_exports__);
31020
31402
  /* harmony export */ sensitiveFields: () => (/* binding */ sensitiveFields),
31021
31403
  /* harmony export */ sensitiveHeaders: () => (/* binding */ sensitiveHeaders)
31022
31404
  /* harmony export */ });
31023
- /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../constants.base */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/constants.base.js");
31405
+ /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../constants.base */ "../session-recorder-common/dist/esm/constants.base.js");
31024
31406
 
31025
31407
  var MAX_DEPTH = 8;
31026
31408
  var sensitiveFields = [
@@ -31172,10 +31554,10 @@ var maskSelected = function (value, keysToMask) {
31172
31554
 
31173
31555
  /***/ }),
31174
31556
 
31175
- /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/save-continuous-deb-session.js":
31176
- /*!***********************************************************************************************************!*\
31177
- !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/save-continuous-deb-session.js ***!
31178
- \***********************************************************************************************************/
31557
+ /***/ "../session-recorder-common/dist/esm/sdk/save-continuous-deb-session.js":
31558
+ /*!******************************************************************************!*\
31559
+ !*** ../session-recorder-common/dist/esm/sdk/save-continuous-deb-session.js ***!
31560
+ \******************************************************************************/
31179
31561
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31180
31562
 
31181
31563
  "use strict";
@@ -31185,7 +31567,7 @@ __webpack_require__.r(__webpack_exports__);
31185
31567
  /* harmony export */ });
31186
31568
  /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/trace-api.js");
31187
31569
  /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/context-api.js");
31188
- /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../constants.base */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/constants.base.js");
31570
+ /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../constants.base */ "../session-recorder-common/dist/esm/constants.base.js");
31189
31571
 
31190
31572
 
31191
31573
  /**
@@ -31202,7 +31584,7 @@ var saveContinuousSession = function (reason) {
31202
31584
  span === null || span === void 0 ? void 0 : span.setAttribute(_constants_base__WEBPACK_IMPORTED_MODULE_0__.ATTR_MULTIPLAYER_CONTINUOUS_SESSION_AUTO_SAVE, true);
31203
31585
  if (reason === null || reason === void 0 ? void 0 : reason.length) {
31204
31586
  span === null || span === void 0 ? void 0 : span.addEvent(_constants_base__WEBPACK_IMPORTED_MODULE_0__.ATTR_MULTIPLAYER_CONTINUOUS_SESSION_AUTO_SAVE_REASON, {
31205
- reason: reason
31587
+ reason: reason,
31206
31588
  });
31207
31589
  }
31208
31590
  };
@@ -31210,10 +31592,10 @@ var saveContinuousSession = function (reason) {
31210
31592
 
31211
31593
  /***/ }),
31212
31594
 
31213
- /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/schemify.js":
31214
- /*!****************************************************************************************!*\
31215
- !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/schemify.js ***!
31216
- \****************************************************************************************/
31595
+ /***/ "../session-recorder-common/dist/esm/sdk/schemify.js":
31596
+ /*!***********************************************************!*\
31597
+ !*** ../session-recorder-common/dist/esm/sdk/schemify.js ***!
31598
+ \***********************************************************/
31217
31599
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31218
31600
 
31219
31601
  "use strict";
@@ -31224,7 +31606,6 @@ __webpack_require__.r(__webpack_exports__);
31224
31606
  /* harmony import */ var to_json_schema__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! to-json-schema */ "../../node_modules/to-json-schema/lib/index.js");
31225
31607
  /* harmony import */ var to_json_schema__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(to_json_schema__WEBPACK_IMPORTED_MODULE_0__);
31226
31608
 
31227
- // eslint-disable-next-line
31228
31609
  // @ts-ignore
31229
31610
  var toJsonSchema = (to_json_schema__WEBPACK_IMPORTED_MODULE_0__ === null || to_json_schema__WEBPACK_IMPORTED_MODULE_0__ === void 0 ? void 0 : (to_json_schema__WEBPACK_IMPORTED_MODULE_0___default())) || to_json_schema__WEBPACK_IMPORTED_MODULE_0__;
31230
31611
  var defaultSchemifyOptions = {
@@ -31277,10 +31658,10 @@ var defaultSchemifyOptions = {
31277
31658
 
31278
31659
  /***/ }),
31279
31660
 
31280
- /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/set-attribute.js":
31281
- /*!*********************************************************************************************!*\
31282
- !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/set-attribute.js ***!
31283
- \*********************************************************************************************/
31661
+ /***/ "../session-recorder-common/dist/esm/sdk/set-attribute.js":
31662
+ /*!****************************************************************!*\
31663
+ !*** ../session-recorder-common/dist/esm/sdk/set-attribute.js ***!
31664
+ \****************************************************************/
31284
31665
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31285
31666
 
31286
31667
  "use strict";
@@ -31299,8 +31680,8 @@ __webpack_require__.r(__webpack_exports__);
31299
31680
  /* harmony export */ });
31300
31681
  /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/trace-api.js");
31301
31682
  /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/context-api.js");
31302
- /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../constants.base */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/constants.base.js");
31303
- /* harmony import */ var _mask__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mask */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/mask.js");
31683
+ /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../constants.base */ "../session-recorder-common/dist/esm/constants.base.js");
31684
+ /* harmony import */ var _mask__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mask */ "../session-recorder-common/dist/esm/sdk/mask.js");
31304
31685
 
31305
31686
 
31306
31687
 
@@ -31445,401 +31826,59 @@ var setGrpcRequestMessage = function (body, options) {
31445
31826
  span.setAttribute(_constants_base__WEBPACK_IMPORTED_MODULE_0__.ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE, body);
31446
31827
  };
31447
31828
  /**
31448
- * @description Set grpc response message to current span attributes
31449
- * @param body
31450
- * @param {{ mask: boolean }} options
31451
- * @returns {void}
31452
- */
31453
- var setGrpcResponseMessage = function (body, options) {
31454
- if (options === void 0) { options = { mask: true }; }
31455
- var span = _opentelemetry_api__WEBPACK_IMPORTED_MODULE_2__.trace.getSpan(_opentelemetry_api__WEBPACK_IMPORTED_MODULE_3__.context.active());
31456
- if (!span)
31457
- return;
31458
- if (options === null || options === void 0 ? void 0 : options.mask) {
31459
- body = (0,_mask__WEBPACK_IMPORTED_MODULE_1__["default"])(_mask__WEBPACK_IMPORTED_MODULE_1__.sensitiveFields)(body, span);
31460
- }
31461
- span.setAttribute(_constants_base__WEBPACK_IMPORTED_MODULE_0__.ATTR_MULTIPLAYER_GRPC_RESPONSE_MESSAGE, body);
31462
- };
31463
- //# sourceMappingURL=set-attribute.js.map
31464
-
31465
- /***/ }),
31466
-
31467
- /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/type/index.js":
31468
- /*!**************************************************************************************!*\
31469
- !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/type/index.js ***!
31470
- \**************************************************************************************/
31471
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31472
-
31473
- "use strict";
31474
- __webpack_require__.r(__webpack_exports__);
31475
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
31476
- /* harmony export */ SessionType: () => (/* reexport safe */ _session_type_enum__WEBPACK_IMPORTED_MODULE_0__.SessionType)
31477
- /* harmony export */ });
31478
- /* harmony import */ var _session_type_enum__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./session-type.enum */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/type/session-type.enum.js");
31479
-
31480
- //# sourceMappingURL=index.js.map
31481
-
31482
- /***/ }),
31483
-
31484
- /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/type/session-type.enum.js":
31485
- /*!**************************************************************************************************!*\
31486
- !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/type/session-type.enum.js ***!
31487
- \**************************************************************************************************/
31488
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31489
-
31490
- "use strict";
31491
- __webpack_require__.r(__webpack_exports__);
31492
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
31493
- /* harmony export */ SessionType: () => (/* binding */ SessionType)
31494
- /* harmony export */ });
31495
- var SessionType;
31496
- (function (SessionType) {
31497
- SessionType["CONTINUOUS"] = "CONTINUOUS";
31498
- SessionType["PLAIN"] = "MANUAL";
31499
- })(SessionType || (SessionType = {}));
31500
- //# sourceMappingURL=session-type.enum.js.map
31501
-
31502
- /***/ }),
31503
-
31504
- /***/ "./node_modules/@opentelemetry/core/build/esm/internal/validators.js":
31505
- /*!***************************************************************************!*\
31506
- !*** ./node_modules/@opentelemetry/core/build/esm/internal/validators.js ***!
31507
- \***************************************************************************/
31508
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31509
-
31510
- "use strict";
31511
- __webpack_require__.r(__webpack_exports__);
31512
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
31513
- /* harmony export */ validateKey: () => (/* binding */ validateKey),
31514
- /* harmony export */ validateValue: () => (/* binding */ validateValue)
31515
- /* harmony export */ });
31516
- /*
31517
- * Copyright The OpenTelemetry Authors
31518
- *
31519
- * Licensed under the Apache License, Version 2.0 (the "License");
31520
- * you may not use this file except in compliance with the License.
31521
- * You may obtain a copy of the License at
31522
- *
31523
- * https://www.apache.org/licenses/LICENSE-2.0
31524
- *
31525
- * Unless required by applicable law or agreed to in writing, software
31526
- * distributed under the License is distributed on an "AS IS" BASIS,
31527
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
31528
- * See the License for the specific language governing permissions and
31529
- * limitations under the License.
31530
- */
31531
- var VALID_KEY_CHAR_RANGE = '[_0-9a-z-*/]';
31532
- var VALID_KEY = "[a-z]" + VALID_KEY_CHAR_RANGE + "{0,255}";
31533
- var VALID_VENDOR_KEY = "[a-z0-9]" + VALID_KEY_CHAR_RANGE + "{0,240}@[a-z]" + VALID_KEY_CHAR_RANGE + "{0,13}";
31534
- var VALID_KEY_REGEX = new RegExp("^(?:" + VALID_KEY + "|" + VALID_VENDOR_KEY + ")$");
31535
- var VALID_VALUE_BASE_REGEX = /^[ -~]{0,255}[!-~]$/;
31536
- var INVALID_VALUE_COMMA_EQUAL_REGEX = /,|=/;
31537
- /**
31538
- * Key is opaque string up to 256 characters printable. It MUST begin with a
31539
- * lowercase letter, and can only contain lowercase letters a-z, digits 0-9,
31540
- * underscores _, dashes -, asterisks *, and forward slashes /.
31541
- * For multi-tenant vendor scenarios, an at sign (@) can be used to prefix the
31542
- * vendor name. Vendors SHOULD set the tenant ID at the beginning of the key.
31543
- * see https://www.w3.org/TR/trace-context/#key
31544
- */
31545
- function validateKey(key) {
31546
- return VALID_KEY_REGEX.test(key);
31547
- }
31548
- /**
31549
- * Value is opaque string up to 256 characters printable ASCII RFC0020
31550
- * characters (i.e., the range 0x20 to 0x7E) except comma , and =.
31551
- */
31552
- function validateValue(value) {
31553
- return (VALID_VALUE_BASE_REGEX.test(value) &&
31554
- !INVALID_VALUE_COMMA_EQUAL_REGEX.test(value));
31555
- }
31556
- //# sourceMappingURL=validators.js.map
31557
-
31558
- /***/ }),
31559
-
31560
- /***/ "./node_modules/@opentelemetry/core/build/esm/trace/TraceState.js":
31561
- /*!************************************************************************!*\
31562
- !*** ./node_modules/@opentelemetry/core/build/esm/trace/TraceState.js ***!
31563
- \************************************************************************/
31564
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31565
-
31566
- "use strict";
31567
- __webpack_require__.r(__webpack_exports__);
31568
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
31569
- /* harmony export */ TraceState: () => (/* binding */ TraceState)
31570
- /* harmony export */ });
31571
- /* harmony import */ var _internal_validators__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../internal/validators */ "./node_modules/@opentelemetry/core/build/esm/internal/validators.js");
31572
- /*
31573
- * Copyright The OpenTelemetry Authors
31574
- *
31575
- * Licensed under the Apache License, Version 2.0 (the "License");
31576
- * you may not use this file except in compliance with the License.
31577
- * You may obtain a copy of the License at
31578
- *
31579
- * https://www.apache.org/licenses/LICENSE-2.0
31580
- *
31581
- * Unless required by applicable law or agreed to in writing, software
31582
- * distributed under the License is distributed on an "AS IS" BASIS,
31583
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
31584
- * See the License for the specific language governing permissions and
31585
- * limitations under the License.
31586
- */
31587
-
31588
- var MAX_TRACE_STATE_ITEMS = 32;
31589
- var MAX_TRACE_STATE_LEN = 512;
31590
- var LIST_MEMBERS_SEPARATOR = ',';
31591
- var LIST_MEMBER_KEY_VALUE_SPLITTER = '=';
31592
- /**
31593
- * TraceState must be a class and not a simple object type because of the spec
31594
- * requirement (https://www.w3.org/TR/trace-context/#tracestate-field).
31595
- *
31596
- * Here is the list of allowed mutations:
31597
- * - New key-value pair should be added into the beginning of the list
31598
- * - The value of any key can be updated. Modified keys MUST be moved to the
31599
- * beginning of the list.
31829
+ * @description Set grpc response message to current span attributes
31830
+ * @param body
31831
+ * @param {{ mask: boolean }} options
31832
+ * @returns {void}
31600
31833
  */
31601
- var TraceState = /** @class */ (function () {
31602
- function TraceState(rawTraceState) {
31603
- this._internalState = new Map();
31604
- if (rawTraceState)
31605
- this._parse(rawTraceState);
31834
+ var setGrpcResponseMessage = function (body, options) {
31835
+ if (options === void 0) { options = { mask: true }; }
31836
+ var span = _opentelemetry_api__WEBPACK_IMPORTED_MODULE_2__.trace.getSpan(_opentelemetry_api__WEBPACK_IMPORTED_MODULE_3__.context.active());
31837
+ if (!span)
31838
+ return;
31839
+ if (options === null || options === void 0 ? void 0 : options.mask) {
31840
+ body = (0,_mask__WEBPACK_IMPORTED_MODULE_1__["default"])(_mask__WEBPACK_IMPORTED_MODULE_1__.sensitiveFields)(body, span);
31606
31841
  }
31607
- TraceState.prototype.set = function (key, value) {
31608
- // TODO: Benchmark the different approaches(map vs list) and
31609
- // use the faster one.
31610
- var traceState = this._clone();
31611
- if (traceState._internalState.has(key)) {
31612
- traceState._internalState.delete(key);
31613
- }
31614
- traceState._internalState.set(key, value);
31615
- return traceState;
31616
- };
31617
- TraceState.prototype.unset = function (key) {
31618
- var traceState = this._clone();
31619
- traceState._internalState.delete(key);
31620
- return traceState;
31621
- };
31622
- TraceState.prototype.get = function (key) {
31623
- return this._internalState.get(key);
31624
- };
31625
- TraceState.prototype.serialize = function () {
31626
- var _this = this;
31627
- return this._keys()
31628
- .reduce(function (agg, key) {
31629
- agg.push(key + LIST_MEMBER_KEY_VALUE_SPLITTER + _this.get(key));
31630
- return agg;
31631
- }, [])
31632
- .join(LIST_MEMBERS_SEPARATOR);
31633
- };
31634
- TraceState.prototype._parse = function (rawTraceState) {
31635
- if (rawTraceState.length > MAX_TRACE_STATE_LEN)
31636
- return;
31637
- this._internalState = rawTraceState
31638
- .split(LIST_MEMBERS_SEPARATOR)
31639
- .reverse() // Store in reverse so new keys (.set(...)) will be placed at the beginning
31640
- .reduce(function (agg, part) {
31641
- var listMember = part.trim(); // Optional Whitespace (OWS) handling
31642
- var i = listMember.indexOf(LIST_MEMBER_KEY_VALUE_SPLITTER);
31643
- if (i !== -1) {
31644
- var key = listMember.slice(0, i);
31645
- var value = listMember.slice(i + 1, part.length);
31646
- if ((0,_internal_validators__WEBPACK_IMPORTED_MODULE_0__.validateKey)(key) && (0,_internal_validators__WEBPACK_IMPORTED_MODULE_0__.validateValue)(value)) {
31647
- agg.set(key, value);
31648
- }
31649
- else {
31650
- // TODO: Consider to add warning log
31651
- }
31652
- }
31653
- return agg;
31654
- }, new Map());
31655
- // Because of the reverse() requirement, trunc must be done after map is created
31656
- if (this._internalState.size > MAX_TRACE_STATE_ITEMS) {
31657
- this._internalState = new Map(Array.from(this._internalState.entries())
31658
- .reverse() // Use reverse same as original tracestate parse chain
31659
- .slice(0, MAX_TRACE_STATE_ITEMS));
31660
- }
31661
- };
31662
- TraceState.prototype._keys = function () {
31663
- return Array.from(this._internalState.keys()).reverse();
31664
- };
31665
- TraceState.prototype._clone = function () {
31666
- var traceState = new TraceState();
31667
- traceState._internalState = new Map(this._internalState);
31668
- return traceState;
31669
- };
31670
- return TraceState;
31671
- }());
31672
-
31673
- //# sourceMappingURL=TraceState.js.map
31842
+ span.setAttribute(_constants_base__WEBPACK_IMPORTED_MODULE_0__.ATTR_MULTIPLAYER_GRPC_RESPONSE_MESSAGE, body);
31843
+ };
31844
+ //# sourceMappingURL=set-attribute.js.map
31674
31845
 
31675
31846
  /***/ }),
31676
31847
 
31677
- /***/ "./node_modules/@opentelemetry/core/build/esm/trace/W3CTraceContextPropagator.js":
31678
- /*!***************************************************************************************!*\
31679
- !*** ./node_modules/@opentelemetry/core/build/esm/trace/W3CTraceContextPropagator.js ***!
31680
- \***************************************************************************************/
31848
+ /***/ "../session-recorder-common/dist/esm/type/index.js":
31849
+ /*!*********************************************************!*\
31850
+ !*** ../session-recorder-common/dist/esm/type/index.js ***!
31851
+ \*********************************************************/
31681
31852
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31682
31853
 
31683
31854
  "use strict";
31684
31855
  __webpack_require__.r(__webpack_exports__);
31685
31856
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
31686
- /* harmony export */ TRACE_PARENT_HEADER: () => (/* binding */ TRACE_PARENT_HEADER),
31687
- /* harmony export */ TRACE_STATE_HEADER: () => (/* binding */ TRACE_STATE_HEADER),
31688
- /* harmony export */ W3CTraceContextPropagator: () => (/* binding */ W3CTraceContextPropagator),
31689
- /* harmony export */ parseTraceParent: () => (/* binding */ parseTraceParent)
31857
+ /* harmony export */ SessionType: () => (/* reexport safe */ _session_type_enum__WEBPACK_IMPORTED_MODULE_0__.SessionType)
31690
31858
  /* harmony export */ });
31691
- /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/trace-api.js");
31692
- /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/trace/spancontext-utils.js");
31693
- /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/trace/trace_flags.js");
31694
- /* harmony import */ var _suppress_tracing__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./suppress-tracing */ "./node_modules/@opentelemetry/core/build/esm/trace/suppress-tracing.js");
31695
- /* harmony import */ var _TraceState__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./TraceState */ "./node_modules/@opentelemetry/core/build/esm/trace/TraceState.js");
31696
- /*
31697
- * Copyright The OpenTelemetry Authors
31698
- *
31699
- * Licensed under the Apache License, Version 2.0 (the "License");
31700
- * you may not use this file except in compliance with the License.
31701
- * You may obtain a copy of the License at
31702
- *
31703
- * https://www.apache.org/licenses/LICENSE-2.0
31704
- *
31705
- * Unless required by applicable law or agreed to in writing, software
31706
- * distributed under the License is distributed on an "AS IS" BASIS,
31707
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
31708
- * See the License for the specific language governing permissions and
31709
- * limitations under the License.
31710
- */
31711
-
31712
-
31713
-
31714
- var TRACE_PARENT_HEADER = 'traceparent';
31715
- var TRACE_STATE_HEADER = 'tracestate';
31716
- var VERSION = '00';
31717
- var VERSION_PART = '(?!ff)[\\da-f]{2}';
31718
- var TRACE_ID_PART = '(?![0]{32})[\\da-f]{32}';
31719
- var PARENT_ID_PART = '(?![0]{16})[\\da-f]{16}';
31720
- var FLAGS_PART = '[\\da-f]{2}';
31721
- var TRACE_PARENT_REGEX = new RegExp("^\\s?(" + VERSION_PART + ")-(" + TRACE_ID_PART + ")-(" + PARENT_ID_PART + ")-(" + FLAGS_PART + ")(-.*)?\\s?$");
31722
- /**
31723
- * Parses information from the [traceparent] span tag and converts it into {@link SpanContext}
31724
- * @param traceParent - A meta property that comes from server.
31725
- * It should be dynamically generated server side to have the server's request trace Id,
31726
- * a parent span Id that was set on the server's request span,
31727
- * and the trace flags to indicate the server's sampling decision
31728
- * (01 = sampled, 00 = not sampled).
31729
- * for example: '{version}-{traceId}-{spanId}-{sampleDecision}'
31730
- * For more information see {@link https://www.w3.org/TR/trace-context/}
31731
- */
31732
- function parseTraceParent(traceParent) {
31733
- var match = TRACE_PARENT_REGEX.exec(traceParent);
31734
- if (!match)
31735
- return null;
31736
- // According to the specification the implementation should be compatible
31737
- // with future versions. If there are more parts, we only reject it if it's using version 00
31738
- // See https://www.w3.org/TR/trace-context/#versioning-of-traceparent
31739
- if (match[1] === '00' && match[5])
31740
- return null;
31741
- return {
31742
- traceId: match[2],
31743
- spanId: match[3],
31744
- traceFlags: parseInt(match[4], 16),
31745
- };
31746
- }
31747
- /**
31748
- * Propagates {@link SpanContext} through Trace Context format propagation.
31749
- *
31750
- * Based on the Trace Context specification:
31751
- * https://www.w3.org/TR/trace-context/
31752
- */
31753
- var W3CTraceContextPropagator = /** @class */ (function () {
31754
- function W3CTraceContextPropagator() {
31755
- }
31756
- W3CTraceContextPropagator.prototype.inject = function (context, carrier, setter) {
31757
- var spanContext = _opentelemetry_api__WEBPACK_IMPORTED_MODULE_0__.trace.getSpanContext(context);
31758
- if (!spanContext ||
31759
- (0,_suppress_tracing__WEBPACK_IMPORTED_MODULE_1__.isTracingSuppressed)(context) ||
31760
- !(0,_opentelemetry_api__WEBPACK_IMPORTED_MODULE_2__.isSpanContextValid)(spanContext))
31761
- return;
31762
- var traceParent = VERSION + "-" + spanContext.traceId + "-" + spanContext.spanId + "-0" + Number(spanContext.traceFlags || _opentelemetry_api__WEBPACK_IMPORTED_MODULE_3__.TraceFlags.NONE).toString(16);
31763
- setter.set(carrier, TRACE_PARENT_HEADER, traceParent);
31764
- if (spanContext.traceState) {
31765
- setter.set(carrier, TRACE_STATE_HEADER, spanContext.traceState.serialize());
31766
- }
31767
- };
31768
- W3CTraceContextPropagator.prototype.extract = function (context, carrier, getter) {
31769
- var traceParentHeader = getter.get(carrier, TRACE_PARENT_HEADER);
31770
- if (!traceParentHeader)
31771
- return context;
31772
- var traceParent = Array.isArray(traceParentHeader)
31773
- ? traceParentHeader[0]
31774
- : traceParentHeader;
31775
- if (typeof traceParent !== 'string')
31776
- return context;
31777
- var spanContext = parseTraceParent(traceParent);
31778
- if (!spanContext)
31779
- return context;
31780
- spanContext.isRemote = true;
31781
- var traceStateHeader = getter.get(carrier, TRACE_STATE_HEADER);
31782
- if (traceStateHeader) {
31783
- // If more than one `tracestate` header is found, we merge them into a
31784
- // single header.
31785
- var state = Array.isArray(traceStateHeader)
31786
- ? traceStateHeader.join(',')
31787
- : traceStateHeader;
31788
- spanContext.traceState = new _TraceState__WEBPACK_IMPORTED_MODULE_4__.TraceState(typeof state === 'string' ? state : undefined);
31789
- }
31790
- return _opentelemetry_api__WEBPACK_IMPORTED_MODULE_0__.trace.setSpanContext(context, spanContext);
31791
- };
31792
- W3CTraceContextPropagator.prototype.fields = function () {
31793
- return [TRACE_PARENT_HEADER, TRACE_STATE_HEADER];
31794
- };
31795
- return W3CTraceContextPropagator;
31796
- }());
31859
+ /* harmony import */ var _session_type_enum__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./session-type.enum */ "../session-recorder-common/dist/esm/type/session-type.enum.js");
31797
31860
 
31798
- //# sourceMappingURL=W3CTraceContextPropagator.js.map
31861
+ //# sourceMappingURL=index.js.map
31799
31862
 
31800
31863
  /***/ }),
31801
31864
 
31802
- /***/ "./node_modules/@opentelemetry/core/build/esm/trace/suppress-tracing.js":
31803
- /*!******************************************************************************!*\
31804
- !*** ./node_modules/@opentelemetry/core/build/esm/trace/suppress-tracing.js ***!
31805
- \******************************************************************************/
31865
+ /***/ "../session-recorder-common/dist/esm/type/session-type.enum.js":
31866
+ /*!*********************************************************************!*\
31867
+ !*** ../session-recorder-common/dist/esm/type/session-type.enum.js ***!
31868
+ \*********************************************************************/
31806
31869
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31807
31870
 
31808
31871
  "use strict";
31809
31872
  __webpack_require__.r(__webpack_exports__);
31810
31873
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
31811
- /* harmony export */ isTracingSuppressed: () => (/* binding */ isTracingSuppressed),
31812
- /* harmony export */ suppressTracing: () => (/* binding */ suppressTracing),
31813
- /* harmony export */ unsuppressTracing: () => (/* binding */ unsuppressTracing)
31874
+ /* harmony export */ SessionType: () => (/* binding */ SessionType)
31814
31875
  /* harmony export */ });
31815
- /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/context/context.js");
31816
- /*
31817
- * Copyright The OpenTelemetry Authors
31818
- *
31819
- * Licensed under the Apache License, Version 2.0 (the "License");
31820
- * you may not use this file except in compliance with the License.
31821
- * You may obtain a copy of the License at
31822
- *
31823
- * https://www.apache.org/licenses/LICENSE-2.0
31824
- *
31825
- * Unless required by applicable law or agreed to in writing, software
31826
- * distributed under the License is distributed on an "AS IS" BASIS,
31827
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
31828
- * See the License for the specific language governing permissions and
31829
- * limitations under the License.
31830
- */
31831
-
31832
- var SUPPRESS_TRACING_KEY = (0,_opentelemetry_api__WEBPACK_IMPORTED_MODULE_0__.createContextKey)('OpenTelemetry SDK Context Key SUPPRESS_TRACING');
31833
- function suppressTracing(context) {
31834
- return context.setValue(SUPPRESS_TRACING_KEY, true);
31835
- }
31836
- function unsuppressTracing(context) {
31837
- return context.deleteValue(SUPPRESS_TRACING_KEY);
31838
- }
31839
- function isTracingSuppressed(context) {
31840
- return context.getValue(SUPPRESS_TRACING_KEY) === true;
31841
- }
31842
- //# sourceMappingURL=suppress-tracing.js.map
31876
+ var SessionType;
31877
+ (function (SessionType) {
31878
+ SessionType["CONTINUOUS"] = "CONTINUOUS";
31879
+ SessionType["PLAIN"] = "MANUAL";
31880
+ })(SessionType || (SessionType = {}));
31881
+ //# sourceMappingURL=session-type.enum.js.map
31843
31882
 
31844
31883
  /***/ }),
31845
31884
 
@@ -50196,6 +50235,8 @@ __webpack_require__.r(__webpack_exports__);
50196
50235
  /* harmony export */ ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_4__.ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE),
50197
50236
  /* harmony export */ ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE_ENCODING: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_4__.ATTR_MULTIPLAYER_GRPC_REQUEST_MESSAGE_ENCODING),
50198
50237
  /* harmony export */ ATTR_MULTIPLAYER_GRPC_RESPONSE_MESSAGE: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_4__.ATTR_MULTIPLAYER_GRPC_RESPONSE_MESSAGE),
50238
+ /* harmony export */ ATTR_MULTIPLAYER_HTTP_PROXY: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_4__.ATTR_MULTIPLAYER_HTTP_PROXY),
50239
+ /* harmony export */ ATTR_MULTIPLAYER_HTTP_PROXY_TYPE: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_4__.ATTR_MULTIPLAYER_HTTP_PROXY_TYPE),
50199
50240
  /* harmony export */ ATTR_MULTIPLAYER_HTTP_REQUEST_BODY: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_4__.ATTR_MULTIPLAYER_HTTP_REQUEST_BODY),
50200
50241
  /* harmony export */ ATTR_MULTIPLAYER_HTTP_REQUEST_HEADERS: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_4__.ATTR_MULTIPLAYER_HTTP_REQUEST_HEADERS),
50201
50242
  /* harmony export */ ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY: () => (/* reexport safe */ _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_4__.ATTR_MULTIPLAYER_HTTP_RESPONSE_BODY),
@@ -50234,7 +50275,7 @@ __webpack_require__.r(__webpack_exports__);
50234
50275
  /* harmony import */ var _listeners__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./listeners */ "./src/listeners.ts");
50235
50276
  /* harmony import */ var _eventBus__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./eventBus */ "./src/eventBus.ts");
50236
50277
  /* harmony import */ var _sessionRecorder__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./sessionRecorder */ "./src/sessionRecorder.ts");
50237
- /* harmony import */ var _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @multiplayer-app/session-recorder-common */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/index-browser.js");
50278
+ /* harmony import */ var _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @multiplayer-app/session-recorder-common */ "../session-recorder-common/dist/esm/index-browser.js");
50238
50279
 
50239
50280
 
50240
50281