@multiplayer-app/session-recorder-browser 0.0.1 → 0.0.2

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,7 +26457,7 @@ 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.1" || 0;
26460
+ const PACKAGE_VERSION_EXPORT = "0.0.2" || 0;
26461
26461
  // Regex patterns for OpenTelemetry ignore URLs
26462
26462
  const OTEL_IGNORE_URLS = [
26463
26463
  // Traces endpoint
@@ -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 */ "../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 */ "./node_modules/@multiplayer-app/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
 
@@ -26602,7 +26602,7 @@ __webpack_require__.r(__webpack_exports__);
26602
26602
  /* harmony export */ });
26603
26603
  /* harmony import */ var _defaults__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./defaults */ "./src/config/defaults.ts");
26604
26604
  /* 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 */ "../session-recorder-common/dist/esm/index-browser.js");
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
26606
 
26607
26607
 
26608
26608
 
@@ -26760,7 +26760,7 @@ __webpack_require__.r(__webpack_exports__);
26760
26760
  /* harmony export */ setupListeners: () => (/* binding */ setupListeners)
26761
26761
  /* harmony export */ });
26762
26762
  /* 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 */ "../session-recorder-common/dist/esm/index-browser.js");
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");
26764
26764
 
26765
26765
 
26766
26766
  function setupListeners(sessionRecorder) {
@@ -26819,7 +26819,7 @@ __webpack_require__.r(__webpack_exports__);
26819
26819
  /* harmony export */ processHttpPayload: () => (/* binding */ processHttpPayload),
26820
26820
  /* harmony export */ shouldProcessTrace: () => (/* binding */ shouldProcessTrace)
26821
26821
  /* harmony export */ });
26822
- /* 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");
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");
26823
26823
 
26824
26824
 
26825
26825
  const { schemify } = _multiplayer_app_session_recorder_common__WEBPACK_IMPORTED_MODULE_0__.SessionRecorderSdk;
@@ -26882,8 +26882,13 @@ function processHeaders(payload, config, span) {
26882
26882
  // Handle header filtering
26883
26883
  if (!((_a = masking.headersToInclude) === null || _a === void 0 ? void 0 : _a.length) &&
26884
26884
  !((_b = masking.headersToExclude) === null || _b === void 0 ? void 0 : _b.length)) {
26885
- requestHeaders = JSON.parse(JSON.stringify(requestHeaders));
26886
- responseHeaders = JSON.parse(JSON.stringify(responseHeaders));
26885
+ // Add null checks to prevent JSON.parse error when headers is undefined
26886
+ if (requestHeaders !== undefined && requestHeaders !== null) {
26887
+ requestHeaders = JSON.parse(JSON.stringify(requestHeaders));
26888
+ }
26889
+ if (responseHeaders !== undefined && responseHeaders !== null) {
26890
+ responseHeaders = JSON.parse(JSON.stringify(responseHeaders));
26891
+ }
26887
26892
  }
26888
26893
  else {
26889
26894
  if (masking.headersToInclude) {
@@ -27013,7 +27018,7 @@ __webpack_require__.r(__webpack_exports__);
27013
27018
  /* 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");
27014
27019
  /* harmony import */ var _opentelemetry_instrumentation__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @opentelemetry/instrumentation */ "../../node_modules/@opentelemetry/instrumentation/build/esm/autoLoader.js");
27015
27020
  /* 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");
27016
- /* 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");
27021
+ /* 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");
27017
27022
  /* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../config */ "./src/config/index.ts");
27018
27023
  /* harmony import */ var _helpers__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./helpers */ "./src/otel/helpers.ts");
27019
27024
 
@@ -27498,7 +27503,7 @@ __webpack_require__.r(__webpack_exports__);
27498
27503
  /* harmony export */ });
27499
27504
  /* harmony import */ var _rrweb_packer__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @rrweb/packer */ "../../node_modules/@rrweb/packer/dist/packer.js");
27500
27505
  /* harmony import */ var rrweb__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! rrweb */ "../../node_modules/rrweb/dist/rrweb.js");
27501
- /* 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");
27506
+ /* 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");
27502
27507
  /* 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");
27503
27508
  /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils */ "./src/utils/index.ts");
27504
27509
  /* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../config */ "./src/config/index.ts");
@@ -27917,7 +27922,7 @@ __webpack_require__.r(__webpack_exports__);
27917
27922
  /* harmony import */ var _services_messaging_service__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./services/messaging.service */ "./src/services/messaging.service.ts");
27918
27923
  /* harmony import */ var _services_api_service__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./services/api.service */ "./src/services/api.service.ts");
27919
27924
  /* harmony import */ var _index_scss__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./index.scss */ "./src/index.scss");
27920
- /* 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");
27925
+ /* 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");
27921
27926
  /* harmony import */ var _sessionWidget_buttonStateConfigs__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./sessionWidget/buttonStateConfigs */ "./src/sessionWidget/buttonStateConfigs.ts");
27922
27927
 
27923
27928
 
@@ -30356,621 +30361,279 @@ const isFile = (x) => {
30356
30361
 
30357
30362
  /***/ }),
30358
30363
 
30359
- /***/ "./node_modules/@opentelemetry/core/build/esm/internal/validators.js":
30360
- /*!***************************************************************************!*\
30361
- !*** ./node_modules/@opentelemetry/core/build/esm/internal/validators.js ***!
30362
- \***************************************************************************/
30364
+ /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderHttpTraceExporterBrowser.js":
30365
+ /*!*******************************************************************************************************************!*\
30366
+ !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderHttpTraceExporterBrowser.js ***!
30367
+ \*******************************************************************************************************************/
30363
30368
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
30364
30369
 
30365
30370
  "use strict";
30366
30371
  __webpack_require__.r(__webpack_exports__);
30367
30372
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
30368
- /* harmony export */ validateKey: () => (/* binding */ validateKey),
30369
- /* harmony export */ validateValue: () => (/* binding */ validateValue)
30373
+ /* harmony export */ SessionRecorderHttpTraceExporterBrowser: () => (/* binding */ SessionRecorderHttpTraceExporterBrowser)
30370
30374
  /* harmony export */ });
30371
- /*
30372
- * Copyright The OpenTelemetry Authors
30373
- *
30374
- * Licensed under the Apache License, Version 2.0 (the "License");
30375
- * you may not use this file except in compliance with the License.
30376
- * You may obtain a copy of the License at
30377
- *
30378
- * https://www.apache.org/licenses/LICENSE-2.0
30379
- *
30380
- * Unless required by applicable law or agreed to in writing, software
30381
- * distributed under the License is distributed on an "AS IS" BASIS,
30382
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
30383
- * See the License for the specific language governing permissions and
30384
- * limitations under the License.
30385
- */
30386
- var VALID_KEY_CHAR_RANGE = '[_0-9a-z-*/]';
30387
- var VALID_KEY = "[a-z]" + VALID_KEY_CHAR_RANGE + "{0,255}";
30388
- var VALID_VENDOR_KEY = "[a-z0-9]" + VALID_KEY_CHAR_RANGE + "{0,240}@[a-z]" + VALID_KEY_CHAR_RANGE + "{0,13}";
30389
- var VALID_KEY_REGEX = new RegExp("^(?:" + VALID_KEY + "|" + VALID_VENDOR_KEY + ")$");
30390
- var VALID_VALUE_BASE_REGEX = /^[ -~]{0,255}[!-~]$/;
30391
- var INVALID_VALUE_COMMA_EQUAL_REGEX = /,|=/;
30392
- /**
30393
- * Key is opaque string up to 256 characters printable. It MUST begin with a
30394
- * lowercase letter, and can only contain lowercase letters a-z, digits 0-9,
30395
- * underscores _, dashes -, asterisks *, and forward slashes /.
30396
- * For multi-tenant vendor scenarios, an at sign (@) can be used to prefix the
30397
- * vendor name. Vendors SHOULD set the tenant ID at the beginning of the key.
30398
- * see https://www.w3.org/TR/trace-context/#key
30399
- */
30400
- function validateKey(key) {
30401
- return VALID_KEY_REGEX.test(key);
30402
- }
30403
- /**
30404
- * Value is opaque string up to 256 characters printable ASCII RFC0020
30405
- * characters (i.e., the range 0x20 to 0x7E) except comma , and =.
30406
- */
30407
- function validateValue(value) {
30408
- return (VALID_VALUE_BASE_REGEX.test(value) &&
30409
- !INVALID_VALUE_COMMA_EQUAL_REGEX.test(value));
30410
- }
30411
- //# sourceMappingURL=validators.js.map
30375
+ /* 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");
30376
+ /* 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");
30377
+ /* harmony import */ var _SessionRecorderJsonTraceSerializer__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./SessionRecorderJsonTraceSerializer */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderJsonTraceSerializer.js");
30378
+ /* 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");
30379
+ var __extends = (undefined && undefined.__extends) || (function () {
30380
+ var extendStatics = function (d, b) {
30381
+ extendStatics = Object.setPrototypeOf ||
30382
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
30383
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
30384
+ return extendStatics(d, b);
30385
+ };
30386
+ return function (d, b) {
30387
+ if (typeof b !== "function" && b !== null)
30388
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
30389
+ extendStatics(d, b);
30390
+ function __() { this.constructor = d; }
30391
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
30392
+ };
30393
+ })();
30394
+ var __assign = (undefined && undefined.__assign) || function () {
30395
+ __assign = Object.assign || function(t) {
30396
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
30397
+ s = arguments[i];
30398
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
30399
+ t[p] = s[p];
30400
+ }
30401
+ return t;
30402
+ };
30403
+ return __assign.apply(this, arguments);
30404
+ };
30412
30405
 
30413
- /***/ }),
30414
30406
 
30415
- /***/ "./node_modules/@opentelemetry/core/build/esm/trace/TraceState.js":
30416
- /*!************************************************************************!*\
30417
- !*** ./node_modules/@opentelemetry/core/build/esm/trace/TraceState.js ***!
30418
- \************************************************************************/
30419
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
30420
30407
 
30421
- "use strict";
30422
- __webpack_require__.r(__webpack_exports__);
30423
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
30424
- /* harmony export */ TraceState: () => (/* binding */ TraceState)
30425
- /* harmony export */ });
30426
- /* harmony import */ var _internal_validators__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../internal/validators */ "./node_modules/@opentelemetry/core/build/esm/internal/validators.js");
30427
- /*
30428
- * Copyright The OpenTelemetry Authors
30429
- *
30430
- * Licensed under the Apache License, Version 2.0 (the "License");
30431
- * you may not use this file except in compliance with the License.
30432
- * You may obtain a copy of the License at
30433
- *
30434
- * https://www.apache.org/licenses/LICENSE-2.0
30435
- *
30436
- * Unless required by applicable law or agreed to in writing, software
30437
- * distributed under the License is distributed on an "AS IS" BASIS,
30438
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
30439
- * See the License for the specific language governing permissions and
30440
- * limitations under the License.
30441
- */
30442
30408
 
30443
- var MAX_TRACE_STATE_ITEMS = 32;
30444
- var MAX_TRACE_STATE_LEN = 512;
30445
- var LIST_MEMBERS_SEPARATOR = ',';
30446
- var LIST_MEMBER_KEY_VALUE_SPLITTER = '=';
30447
30409
  /**
30448
- * TraceState must be a class and not a simple object type because of the spec
30449
- * requirement (https://www.w3.org/TR/trace-context/#tracestate-field).
30450
- *
30451
- * Here is the list of allowed mutations:
30452
- * - New key-value pair should be added into the beginning of the list
30453
- * - The value of any key can be updated. Modified keys MUST be moved to the
30454
- * beginning of the list.
30410
+ * Trace Exporters for Web with postMessage fallback
30455
30411
  */
30456
- var TraceState = /** @class */ (function () {
30457
- function TraceState(rawTraceState) {
30458
- this._internalState = new Map();
30459
- if (rawTraceState)
30460
- this._parse(rawTraceState);
30412
+ var SessionRecorderHttpTraceExporterBrowser = /** @class */ (function (_super) {
30413
+ __extends(SessionRecorderHttpTraceExporterBrowser, _super);
30414
+ function SessionRecorderHttpTraceExporterBrowser(config) {
30415
+ if (config === void 0) { config = {}; }
30416
+ var _this = this;
30417
+ 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
30418
+ ? { Authorization: config.apiKey }
30419
+ : {}) });
30420
+ _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;
30421
+ _this.usePostMessage = false;
30422
+ _this.config = config;
30423
+ _this.postMessageType = config.postMessageType || 'MULTIPLAYER_SESSION_DEBUGGER_LIB';
30424
+ _this.postMessageTargetOrigin = config.postMessageTargetOrigin || '*';
30425
+ return _this;
30461
30426
  }
30462
- TraceState.prototype.set = function (key, value) {
30463
- // TODO: Benchmark the different approaches(map vs list) and
30464
- // use the faster one.
30465
- var traceState = this._clone();
30466
- if (traceState._internalState.has(key)) {
30467
- traceState._internalState.delete(key);
30427
+ SessionRecorderHttpTraceExporterBrowser.prototype.export = function (spans, resultCallback) {
30428
+ var _this = this;
30429
+ if (this.usePostMessage) {
30430
+ this.exportViaPostMessage(spans, resultCallback);
30431
+ return;
30468
30432
  }
30469
- traceState._internalState.set(key, value);
30470
- return traceState;
30471
- };
30472
- TraceState.prototype.unset = function (key) {
30473
- var traceState = this._clone();
30474
- traceState._internalState.delete(key);
30475
- return traceState;
30476
- };
30477
- TraceState.prototype.get = function (key) {
30478
- return this._internalState.get(key);
30433
+ _super.prototype.export.call(this, spans, function (result) {
30434
+ if (result.code === 0) {
30435
+ resultCallback(result);
30436
+ }
30437
+ else if (_this.config.usePostMessageFallback) {
30438
+ _this.usePostMessage = true;
30439
+ _this.exportViaPostMessage(spans, resultCallback);
30440
+ }
30441
+ else {
30442
+ resultCallback(result);
30443
+ }
30444
+ });
30479
30445
  };
30480
- TraceState.prototype.serialize = function () {
30446
+ SessionRecorderHttpTraceExporterBrowser.prototype.exportViaPostMessage = function (spans, resultCallback) {
30481
30447
  var _this = this;
30482
- return this._keys()
30483
- .reduce(function (agg, key) {
30484
- agg.push(key + LIST_MEMBER_KEY_VALUE_SPLITTER + _this.get(key));
30485
- return agg;
30486
- }, [])
30487
- .join(LIST_MEMBERS_SEPARATOR);
30488
- };
30489
- TraceState.prototype._parse = function (rawTraceState) {
30490
- if (rawTraceState.length > MAX_TRACE_STATE_LEN)
30448
+ if (typeof window === 'undefined') {
30449
+ resultCallback({ code: 1 });
30491
30450
  return;
30492
- this._internalState = rawTraceState
30493
- .split(LIST_MEMBERS_SEPARATOR)
30494
- .reverse() // Store in reverse so new keys (.set(...)) will be placed at the beginning
30495
- .reduce(function (agg, part) {
30496
- var listMember = part.trim(); // Optional Whitespace (OWS) handling
30497
- var i = listMember.indexOf(LIST_MEMBER_KEY_VALUE_SPLITTER);
30498
- if (i !== -1) {
30499
- var key = listMember.slice(0, i);
30500
- var value = listMember.slice(i + 1, part.length);
30501
- if ((0,_internal_validators__WEBPACK_IMPORTED_MODULE_0__.validateKey)(key) && (0,_internal_validators__WEBPACK_IMPORTED_MODULE_0__.validateValue)(value)) {
30502
- agg.set(key, value);
30503
- }
30504
- else {
30505
- // TODO: Consider to add warning log
30506
- }
30507
- }
30508
- return agg;
30509
- }, new Map());
30510
- // Because of the reverse() requirement, trunc must be done after map is created
30511
- if (this._internalState.size > MAX_TRACE_STATE_ITEMS) {
30512
- this._internalState = new Map(Array.from(this._internalState.entries())
30513
- .reverse() // Use reverse same as original tracestate parse chain
30514
- .slice(0, MAX_TRACE_STATE_ITEMS));
30451
+ }
30452
+ try {
30453
+ window.postMessage({
30454
+ action: 'traces',
30455
+ type: this.postMessageType,
30456
+ payload: spans.map(function (span) { return _this._serializeSpan(span); }),
30457
+ }, this.postMessageTargetOrigin);
30458
+ resultCallback({ code: 0 });
30459
+ }
30460
+ catch (e) {
30461
+ resultCallback({ code: 1 });
30515
30462
  }
30516
30463
  };
30517
- TraceState.prototype._keys = function () {
30518
- return Array.from(this._internalState.keys()).reverse();
30464
+ SessionRecorderHttpTraceExporterBrowser.prototype._serializeSpan = function (span) {
30465
+ return {
30466
+ _spanContext: span.spanContext(),
30467
+ name: span.name,
30468
+ kind: span.kind,
30469
+ links: span.links,
30470
+ ended: span.ended,
30471
+ events: span.events,
30472
+ status: span.status,
30473
+ endTime: span.endTime,
30474
+ startTime: span.startTime,
30475
+ duration: span.duration,
30476
+ attributes: span.attributes,
30477
+ parentSpanId: span.parentSpanId,
30478
+ instrumentationLibrary: span.instrumentationLibrary,
30479
+ droppedAttributesCount: span.droppedAttributesCount,
30480
+ droppedEventsCount: span.droppedEventsCount,
30481
+ droppedLinksCount: span.droppedLinksCount,
30482
+ resource: {
30483
+ attributes: span.resource.attributes,
30484
+ asyncAttributesPending: span.resource.asyncAttributesPending,
30485
+ },
30486
+ };
30519
30487
  };
30520
- TraceState.prototype._clone = function () {
30521
- var traceState = new TraceState();
30522
- traceState._internalState = new Map(this._internalState);
30523
- return traceState;
30488
+ SessionRecorderHttpTraceExporterBrowser.prototype.getDefaultUrl = function (config) {
30489
+ return config.url || _constants_base__WEBPACK_IMPORTED_MODULE_1__.MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_URL;
30524
30490
  };
30525
- return TraceState;
30526
- }());
30491
+ return SessionRecorderHttpTraceExporterBrowser;
30492
+ }(_opentelemetry_otlp_exporter_base__WEBPACK_IMPORTED_MODULE_3__.OTLPExporterBase));
30527
30493
 
30528
- //# sourceMappingURL=TraceState.js.map
30494
+ //# sourceMappingURL=SessionRecorderHttpTraceExporterBrowser.js.map
30529
30495
 
30530
30496
  /***/ }),
30531
30497
 
30532
- /***/ "./node_modules/@opentelemetry/core/build/esm/trace/W3CTraceContextPropagator.js":
30533
- /*!***************************************************************************************!*\
30534
- !*** ./node_modules/@opentelemetry/core/build/esm/trace/W3CTraceContextPropagator.js ***!
30535
- \***************************************************************************************/
30498
+ /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderIdGenerator.js":
30499
+ /*!******************************************************************************************************!*\
30500
+ !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderIdGenerator.js ***!
30501
+ \******************************************************************************************************/
30536
30502
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
30537
30503
 
30538
30504
  "use strict";
30539
30505
  __webpack_require__.r(__webpack_exports__);
30540
30506
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
30541
- /* harmony export */ TRACE_PARENT_HEADER: () => (/* binding */ TRACE_PARENT_HEADER),
30542
- /* harmony export */ TRACE_STATE_HEADER: () => (/* binding */ TRACE_STATE_HEADER),
30543
- /* harmony export */ W3CTraceContextPropagator: () => (/* binding */ W3CTraceContextPropagator),
30544
- /* harmony export */ parseTraceParent: () => (/* binding */ parseTraceParent)
30507
+ /* harmony export */ SessionRecorderIdGenerator: () => (/* binding */ SessionRecorderIdGenerator)
30545
30508
  /* harmony export */ });
30546
- /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/trace-api.js");
30547
- /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/trace/spancontext-utils.js");
30548
- /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/trace/trace_flags.js");
30549
- /* harmony import */ var _suppress_tracing__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./suppress-tracing */ "./node_modules/@opentelemetry/core/build/esm/trace/suppress-tracing.js");
30550
- /* harmony import */ var _TraceState__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./TraceState */ "./node_modules/@opentelemetry/core/build/esm/trace/TraceState.js");
30551
- /*
30552
- * Copyright The OpenTelemetry Authors
30553
- *
30554
- * Licensed under the Apache License, Version 2.0 (the "License");
30555
- * you may not use this file except in compliance with the License.
30556
- * You may obtain a copy of the License at
30557
- *
30558
- * https://www.apache.org/licenses/LICENSE-2.0
30559
- *
30560
- * Unless required by applicable law or agreed to in writing, software
30561
- * distributed under the License is distributed on an "AS IS" BASIS,
30562
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
30563
- * See the License for the specific language governing permissions and
30564
- * limitations under the License.
30565
- */
30509
+ /* 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");
30510
+ /* 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");
30511
+ /* harmony import */ var _type__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./type */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/type/index.js");
30512
+ /* harmony import */ var _SessionRecorderTraceIdRatioBasedSampler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SessionRecorderTraceIdRatioBasedSampler */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderTraceIdRatioBasedSampler.js");
30513
+ /* 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");
30514
+ /* harmony import */ var _sdk__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./sdk */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/index.js");
30515
+ var __extends = (undefined && undefined.__extends) || (function () {
30516
+ var extendStatics = function (d, b) {
30517
+ extendStatics = Object.setPrototypeOf ||
30518
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
30519
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
30520
+ return extendStatics(d, b);
30521
+ };
30522
+ return function (d, b) {
30523
+ if (typeof b !== "function" && b !== null)
30524
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
30525
+ extendStatics(d, b);
30526
+ function __() { this.constructor = d; }
30527
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
30528
+ };
30529
+ })();
30566
30530
 
30567
30531
 
30568
30532
 
30569
- var TRACE_PARENT_HEADER = 'traceparent';
30570
- var TRACE_STATE_HEADER = 'tracestate';
30571
- var VERSION = '00';
30572
- var VERSION_PART = '(?!ff)[\\da-f]{2}';
30573
- var TRACE_ID_PART = '(?![0]{32})[\\da-f]{32}';
30574
- var PARENT_ID_PART = '(?![0]{16})[\\da-f]{16}';
30575
- var FLAGS_PART = '[\\da-f]{2}';
30576
- var TRACE_PARENT_REGEX = new RegExp("^\\s?(" + VERSION_PART + ")-(" + TRACE_ID_PART + ")-(" + PARENT_ID_PART + ")-(" + FLAGS_PART + ")(-.*)?\\s?$");
30577
- /**
30578
- * Parses information from the [traceparent] span tag and converts it into {@link SpanContext}
30579
- * @param traceParent - A meta property that comes from server.
30580
- * It should be dynamically generated server side to have the server's request trace Id,
30581
- * a parent span Id that was set on the server's request span,
30582
- * and the trace flags to indicate the server's sampling decision
30583
- * (01 = sampled, 00 = not sampled).
30584
- * for example: '{version}-{traceId}-{spanId}-{sampleDecision}'
30585
- * For more information see {@link https://www.w3.org/TR/trace-context/}
30586
- */
30587
- function parseTraceParent(traceParent) {
30588
- var match = TRACE_PARENT_REGEX.exec(traceParent);
30589
- if (!match)
30590
- return null;
30591
- // According to the specification the implementation should be compatible
30592
- // with future versions. If there are more parts, we only reject it if it's using version 00
30593
- // See https://www.w3.org/TR/trace-context/#versioning-of-traceparent
30594
- if (match[1] === '00' && match[5])
30595
- return null;
30596
- return {
30597
- traceId: match[2],
30598
- spanId: match[3],
30599
- traceFlags: parseInt(match[4], 16),
30600
- };
30601
- }
30602
- /**
30603
- * Propagates {@link SpanContext} through Trace Context format propagation.
30604
- *
30605
- * Based on the Trace Context specification:
30606
- * https://www.w3.org/TR/trace-context/
30607
- */
30608
- var W3CTraceContextPropagator = /** @class */ (function () {
30609
- function W3CTraceContextPropagator() {
30533
+
30534
+
30535
+ var SessionRecorderIdGenerator = /** @class */ (function (_super) {
30536
+ __extends(SessionRecorderIdGenerator, _super);
30537
+ function SessionRecorderIdGenerator(_a) {
30538
+ var _b = _a === void 0 ? {} : _a, _c = _b.autoDocTracesRatio, autoDocTracesRatio = _c === void 0 ? 0 : _c;
30539
+ var _this = _super.call(this) || this;
30540
+ _this.docSpanSampler = new _SessionRecorderTraceIdRatioBasedSampler__WEBPACK_IMPORTED_MODULE_1__.SessionRecorderTraceIdRatioBasedSampler(autoDocTracesRatio);
30541
+ _this.generateLongId = (0,_sdk__WEBPACK_IMPORTED_MODULE_3__.getIdGenerator)(16);
30542
+ _this.sessionShortId = '';
30543
+ _this.sessionType = _type__WEBPACK_IMPORTED_MODULE_0__.SessionType.PLAIN;
30544
+ _this.generateTraceId = function () {
30545
+ var traceId = _this.generateLongId();
30546
+ if (_this.sessionShortId) {
30547
+ var sessionTypePrefix = '';
30548
+ switch (_this.sessionType) {
30549
+ case _type__WEBPACK_IMPORTED_MODULE_0__.SessionType.CONTINUOUS:
30550
+ sessionTypePrefix = _constants_base__WEBPACK_IMPORTED_MODULE_2__.MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX;
30551
+ break;
30552
+ default:
30553
+ sessionTypePrefix = _constants_base__WEBPACK_IMPORTED_MODULE_2__.MULTIPLAYER_TRACE_DEBUG_PREFIX;
30554
+ }
30555
+ var prefix = "".concat(sessionTypePrefix).concat(_this.sessionShortId);
30556
+ var sessionTraceId = "".concat(prefix).concat(traceId.substring(prefix.length, traceId.length));
30557
+ return sessionTraceId;
30558
+ }
30559
+ else if (_this._isDocTrace(traceId)) {
30560
+ 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));
30561
+ }
30562
+ return traceId;
30563
+ };
30564
+ return _this;
30610
30565
  }
30611
- W3CTraceContextPropagator.prototype.inject = function (context, carrier, setter) {
30612
- var spanContext = _opentelemetry_api__WEBPACK_IMPORTED_MODULE_0__.trace.getSpanContext(context);
30613
- if (!spanContext ||
30614
- (0,_suppress_tracing__WEBPACK_IMPORTED_MODULE_1__.isTracingSuppressed)(context) ||
30615
- !(0,_opentelemetry_api__WEBPACK_IMPORTED_MODULE_2__.isSpanContextValid)(spanContext))
30616
- return;
30617
- var traceParent = VERSION + "-" + spanContext.traceId + "-" + spanContext.spanId + "-0" + Number(spanContext.traceFlags || _opentelemetry_api__WEBPACK_IMPORTED_MODULE_3__.TraceFlags.NONE).toString(16);
30618
- setter.set(carrier, TRACE_PARENT_HEADER, traceParent);
30619
- if (spanContext.traceState) {
30620
- setter.set(carrier, TRACE_STATE_HEADER, spanContext.traceState.serialize());
30621
- }
30622
- };
30623
- W3CTraceContextPropagator.prototype.extract = function (context, carrier, getter) {
30624
- var traceParentHeader = getter.get(carrier, TRACE_PARENT_HEADER);
30625
- if (!traceParentHeader)
30626
- return context;
30627
- var traceParent = Array.isArray(traceParentHeader)
30628
- ? traceParentHeader[0]
30629
- : traceParentHeader;
30630
- if (typeof traceParent !== 'string')
30631
- return context;
30632
- var spanContext = parseTraceParent(traceParent);
30633
- if (!spanContext)
30634
- return context;
30635
- spanContext.isRemote = true;
30636
- var traceStateHeader = getter.get(carrier, TRACE_STATE_HEADER);
30637
- if (traceStateHeader) {
30638
- // If more than one `tracestate` header is found, we merge them into a
30639
- // single header.
30640
- var state = Array.isArray(traceStateHeader)
30641
- ? traceStateHeader.join(',')
30642
- : traceStateHeader;
30643
- spanContext.traceState = new _TraceState__WEBPACK_IMPORTED_MODULE_4__.TraceState(typeof state === 'string' ? state : undefined);
30644
- }
30645
- return _opentelemetry_api__WEBPACK_IMPORTED_MODULE_0__.trace.setSpanContext(context, spanContext);
30566
+ SessionRecorderIdGenerator.prototype.setSessionId = function (sessionShortId, sessionType) {
30567
+ if (sessionType === void 0) { sessionType = _type__WEBPACK_IMPORTED_MODULE_0__.SessionType.PLAIN; }
30568
+ this.sessionShortId = sessionShortId;
30569
+ this.sessionType = sessionType;
30646
30570
  };
30647
- W3CTraceContextPropagator.prototype.fields = function () {
30648
- return [TRACE_PARENT_HEADER, TRACE_STATE_HEADER];
30571
+ SessionRecorderIdGenerator.prototype._isDocTrace = function (traceId) {
30572
+ return this.docSpanSampler.shouldSample(undefined, traceId).decision === _opentelemetry_sdk_trace_base__WEBPACK_IMPORTED_MODULE_4__.SamplingDecision.RECORD_AND_SAMPLED;
30649
30573
  };
30650
- return W3CTraceContextPropagator;
30651
- }());
30574
+ return SessionRecorderIdGenerator;
30575
+ }(_opentelemetry_sdk_trace_base__WEBPACK_IMPORTED_MODULE_5__.RandomIdGenerator));
30652
30576
 
30653
- //# sourceMappingURL=W3CTraceContextPropagator.js.map
30577
+ //# sourceMappingURL=SessionRecorderIdGenerator.js.map
30654
30578
 
30655
30579
  /***/ }),
30656
30580
 
30657
- /***/ "./node_modules/@opentelemetry/core/build/esm/trace/suppress-tracing.js":
30658
- /*!******************************************************************************!*\
30659
- !*** ./node_modules/@opentelemetry/core/build/esm/trace/suppress-tracing.js ***!
30660
- \******************************************************************************/
30581
+ /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderJsonTraceSerializer.js":
30582
+ /*!**************************************************************************************************************!*\
30583
+ !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderJsonTraceSerializer.js ***!
30584
+ \**************************************************************************************************************/
30661
30585
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
30662
30586
 
30663
30587
  "use strict";
30664
30588
  __webpack_require__.r(__webpack_exports__);
30665
30589
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
30666
- /* harmony export */ isTracingSuppressed: () => (/* binding */ isTracingSuppressed),
30667
- /* harmony export */ suppressTracing: () => (/* binding */ suppressTracing),
30668
- /* harmony export */ unsuppressTracing: () => (/* binding */ unsuppressTracing)
30590
+ /* harmony export */ SessionRecorderJsonTraceSerializer: () => (/* binding */ SessionRecorderJsonTraceSerializer)
30669
30591
  /* harmony export */ });
30670
- /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/context/context.js");
30671
- /*
30672
- * Copyright The OpenTelemetry Authors
30673
- *
30674
- * Licensed under the Apache License, Version 2.0 (the "License");
30675
- * you may not use this file except in compliance with the License.
30676
- * You may obtain a copy of the License at
30677
- *
30678
- * https://www.apache.org/licenses/LICENSE-2.0
30679
- *
30680
- * Unless required by applicable law or agreed to in writing, software
30681
- * distributed under the License is distributed on an "AS IS" BASIS,
30682
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
30683
- * See the License for the specific language governing permissions and
30684
- * limitations under the License.
30685
- */
30592
+ /* 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");
30593
+ /* 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");
30686
30594
 
30687
- var SUPPRESS_TRACING_KEY = (0,_opentelemetry_api__WEBPACK_IMPORTED_MODULE_0__.createContextKey)('OpenTelemetry SDK Context Key SUPPRESS_TRACING');
30688
- function suppressTracing(context) {
30689
- return context.setValue(SUPPRESS_TRACING_KEY, true);
30690
- }
30691
- function unsuppressTracing(context) {
30692
- return context.deleteValue(SUPPRESS_TRACING_KEY);
30693
- }
30694
- function isTracingSuppressed(context) {
30695
- return context.getValue(SUPPRESS_TRACING_KEY) === true;
30696
- }
30697
- //# sourceMappingURL=suppress-tracing.js.map
30595
+
30596
+ var SessionRecorderJsonTraceSerializer = {
30597
+ serializeRequest: function (arg) {
30598
+ var filteredArg = arg.filter(function (span) {
30599
+ var traceId = span.spanContext().traceId;
30600
+ if (traceId.startsWith(_constants_base__WEBPACK_IMPORTED_MODULE_0__.MULTIPLAYER_TRACE_DEBUG_PREFIX)
30601
+ || traceId.startsWith(_constants_base__WEBPACK_IMPORTED_MODULE_0__.MULTIPLAYER_TRACE_DOC_PREFIX)
30602
+ || traceId.startsWith(_constants_base__WEBPACK_IMPORTED_MODULE_0__.MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX)) {
30603
+ return true;
30604
+ }
30605
+ return false;
30606
+ });
30607
+ var request = (0,_opentelemetry_otlp_transformer__WEBPACK_IMPORTED_MODULE_1__.createExportTraceServiceRequest)(filteredArg, {
30608
+ useHex: true,
30609
+ useLongBits: false,
30610
+ });
30611
+ var encoder = new TextEncoder();
30612
+ return encoder.encode(JSON.stringify(request));
30613
+ },
30614
+ deserializeResponse: function (arg) {
30615
+ var decoder = new TextDecoder();
30616
+ return JSON.parse(decoder.decode(arg));
30617
+ },
30618
+ };
30619
+ //# sourceMappingURL=SessionRecorderJsonTraceSerializer.js.map
30698
30620
 
30699
30621
  /***/ }),
30700
30622
 
30701
- /***/ "../session-recorder-common/dist/esm/SessionRecorderHttpTraceExporterBrowser.js":
30702
- /*!**************************************************************************************!*\
30703
- !*** ../session-recorder-common/dist/esm/SessionRecorderHttpTraceExporterBrowser.js ***!
30704
- \**************************************************************************************/
30623
+ /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderTraceIdRatioBasedSampler.js":
30624
+ /*!*******************************************************************************************************************!*\
30625
+ !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderTraceIdRatioBasedSampler.js ***!
30626
+ \*******************************************************************************************************************/
30705
30627
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
30706
30628
 
30707
30629
  "use strict";
30708
30630
  __webpack_require__.r(__webpack_exports__);
30709
30631
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
30710
- /* harmony export */ SessionRecorderHttpTraceExporterBrowser: () => (/* binding */ SessionRecorderHttpTraceExporterBrowser)
30711
- /* harmony export */ });
30712
- /* 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");
30713
- /* 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");
30714
- /* harmony import */ var _SessionRecorderJsonTraceSerializer__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./SessionRecorderJsonTraceSerializer */ "../session-recorder-common/dist/esm/SessionRecorderJsonTraceSerializer.js");
30715
- /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./constants.base */ "../session-recorder-common/dist/esm/constants.base.js");
30716
- var __extends = (undefined && undefined.__extends) || (function () {
30717
- var extendStatics = function (d, b) {
30718
- extendStatics = Object.setPrototypeOf ||
30719
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
30720
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
30721
- return extendStatics(d, b);
30722
- };
30723
- return function (d, b) {
30724
- if (typeof b !== "function" && b !== null)
30725
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
30726
- extendStatics(d, b);
30727
- function __() { this.constructor = d; }
30728
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
30729
- };
30730
- })();
30731
- var __assign = (undefined && undefined.__assign) || function () {
30732
- __assign = Object.assign || function(t) {
30733
- for (var s, i = 1, n = arguments.length; i < n; i++) {
30734
- s = arguments[i];
30735
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
30736
- t[p] = s[p];
30737
- }
30738
- return t;
30739
- };
30740
- return __assign.apply(this, arguments);
30741
- };
30742
-
30743
-
30744
-
30745
-
30746
- /**
30747
- * Trace Exporters for Web with postMessage fallback
30748
- */
30749
- var SessionRecorderHttpTraceExporterBrowser = /** @class */ (function (_super) {
30750
- __extends(SessionRecorderHttpTraceExporterBrowser, _super);
30751
- function SessionRecorderHttpTraceExporterBrowser(config) {
30752
- if (config === void 0) { config = {}; }
30753
- var _this = this;
30754
- 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
30755
- ? { Authorization: config.apiKey }
30756
- : {}) });
30757
- _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;
30758
- _this.usePostMessage = false;
30759
- _this.config = config;
30760
- _this.postMessageType = config.postMessageType || 'MULTIPLAYER_SESSION_DEBUGGER_LIB';
30761
- _this.postMessageTargetOrigin = config.postMessageTargetOrigin || '*';
30762
- return _this;
30763
- }
30764
- SessionRecorderHttpTraceExporterBrowser.prototype.export = function (spans, resultCallback) {
30765
- var _this = this;
30766
- if (this.usePostMessage) {
30767
- this.exportViaPostMessage(spans, resultCallback);
30768
- return;
30769
- }
30770
- _super.prototype.export.call(this, spans, function (result) {
30771
- if (result.code === 0) {
30772
- resultCallback(result);
30773
- }
30774
- else if (_this.config.usePostMessageFallback) {
30775
- _this.usePostMessage = true;
30776
- _this.exportViaPostMessage(spans, resultCallback);
30777
- }
30778
- else {
30779
- resultCallback(result);
30780
- }
30781
- });
30782
- };
30783
- SessionRecorderHttpTraceExporterBrowser.prototype.exportViaPostMessage = function (spans, resultCallback) {
30784
- var _this = this;
30785
- if (typeof window === 'undefined') {
30786
- resultCallback({ code: 1 });
30787
- return;
30788
- }
30789
- try {
30790
- window.postMessage({
30791
- action: 'traces',
30792
- type: this.postMessageType,
30793
- payload: spans.map(function (span) { return _this._serializeSpan(span); }),
30794
- }, this.postMessageTargetOrigin);
30795
- resultCallback({ code: 0 });
30796
- }
30797
- catch (e) {
30798
- resultCallback({ code: 1 });
30799
- }
30800
- };
30801
- SessionRecorderHttpTraceExporterBrowser.prototype._serializeSpan = function (span) {
30802
- return {
30803
- _spanContext: span.spanContext(),
30804
- name: span.name,
30805
- kind: span.kind,
30806
- links: span.links,
30807
- ended: span.ended,
30808
- events: span.events,
30809
- status: span.status,
30810
- endTime: span.endTime,
30811
- startTime: span.startTime,
30812
- duration: span.duration,
30813
- attributes: span.attributes,
30814
- parentSpanId: span.parentSpanId,
30815
- instrumentationLibrary: span.instrumentationLibrary,
30816
- droppedAttributesCount: span.droppedAttributesCount,
30817
- droppedEventsCount: span.droppedEventsCount,
30818
- droppedLinksCount: span.droppedLinksCount,
30819
- resource: {
30820
- attributes: span.resource.attributes,
30821
- asyncAttributesPending: span.resource.asyncAttributesPending,
30822
- },
30823
- };
30824
- };
30825
- SessionRecorderHttpTraceExporterBrowser.prototype.getDefaultUrl = function (config) {
30826
- return config.url || _constants_base__WEBPACK_IMPORTED_MODULE_1__.MULTIPLAYER_OTEL_DEFAULT_TRACES_EXPORTER_URL;
30827
- };
30828
- return SessionRecorderHttpTraceExporterBrowser;
30829
- }(_opentelemetry_otlp_exporter_base__WEBPACK_IMPORTED_MODULE_3__.OTLPExporterBase));
30830
-
30831
- //# sourceMappingURL=SessionRecorderHttpTraceExporterBrowser.js.map
30832
-
30833
- /***/ }),
30834
-
30835
- /***/ "../session-recorder-common/dist/esm/SessionRecorderIdGenerator.js":
30836
- /*!*************************************************************************!*\
30837
- !*** ../session-recorder-common/dist/esm/SessionRecorderIdGenerator.js ***!
30838
- \*************************************************************************/
30839
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
30840
-
30841
- "use strict";
30842
- __webpack_require__.r(__webpack_exports__);
30843
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
30844
- /* harmony export */ SessionRecorderIdGenerator: () => (/* binding */ SessionRecorderIdGenerator)
30845
- /* harmony export */ });
30846
- /* 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");
30847
- /* 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");
30848
- /* harmony import */ var _type__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./type */ "../session-recorder-common/dist/esm/type/index.js");
30849
- /* harmony import */ var _SessionRecorderTraceIdRatioBasedSampler__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SessionRecorderTraceIdRatioBasedSampler */ "../session-recorder-common/dist/esm/SessionRecorderTraceIdRatioBasedSampler.js");
30850
- /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constants.base */ "../session-recorder-common/dist/esm/constants.base.js");
30851
- /* harmony import */ var _sdk__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./sdk */ "../session-recorder-common/dist/esm/sdk/index.js");
30852
- var __extends = (undefined && undefined.__extends) || (function () {
30853
- var extendStatics = function (d, b) {
30854
- extendStatics = Object.setPrototypeOf ||
30855
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
30856
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
30857
- return extendStatics(d, b);
30858
- };
30859
- return function (d, b) {
30860
- if (typeof b !== "function" && b !== null)
30861
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
30862
- extendStatics(d, b);
30863
- function __() { this.constructor = d; }
30864
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
30865
- };
30866
- })();
30867
-
30868
-
30869
-
30870
-
30871
-
30872
- var SessionRecorderIdGenerator = /** @class */ (function (_super) {
30873
- __extends(SessionRecorderIdGenerator, _super);
30874
- function SessionRecorderIdGenerator(_a) {
30875
- var _b = _a === void 0 ? {} : _a, _c = _b.autoDocTracesRatio, autoDocTracesRatio = _c === void 0 ? 0 : _c;
30876
- var _this = _super.call(this) || this;
30877
- _this.docSpanSampler = new _SessionRecorderTraceIdRatioBasedSampler__WEBPACK_IMPORTED_MODULE_1__.SessionRecorderTraceIdRatioBasedSampler(autoDocTracesRatio);
30878
- _this.generateLongId = (0,_sdk__WEBPACK_IMPORTED_MODULE_3__.getIdGenerator)(16);
30879
- _this.sessionShortId = '';
30880
- _this.sessionType = _type__WEBPACK_IMPORTED_MODULE_0__.SessionType.PLAIN;
30881
- _this.generateTraceId = function () {
30882
- var traceId = _this.generateLongId();
30883
- if (_this.sessionShortId) {
30884
- var sessionTypePrefix = '';
30885
- switch (_this.sessionType) {
30886
- case _type__WEBPACK_IMPORTED_MODULE_0__.SessionType.CONTINUOUS:
30887
- sessionTypePrefix = _constants_base__WEBPACK_IMPORTED_MODULE_2__.MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX;
30888
- break;
30889
- default:
30890
- sessionTypePrefix = _constants_base__WEBPACK_IMPORTED_MODULE_2__.MULTIPLAYER_TRACE_DEBUG_PREFIX;
30891
- }
30892
- var prefix = "".concat(sessionTypePrefix).concat(_this.sessionShortId);
30893
- var sessionTraceId = "".concat(prefix).concat(traceId.substring(prefix.length, traceId.length));
30894
- return sessionTraceId;
30895
- }
30896
- else if (_this._isDocTrace(traceId)) {
30897
- 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));
30898
- }
30899
- return traceId;
30900
- };
30901
- return _this;
30902
- }
30903
- SessionRecorderIdGenerator.prototype.setSessionId = function (sessionShortId, sessionType) {
30904
- if (sessionType === void 0) { sessionType = _type__WEBPACK_IMPORTED_MODULE_0__.SessionType.PLAIN; }
30905
- this.sessionShortId = sessionShortId;
30906
- this.sessionType = sessionType;
30907
- };
30908
- SessionRecorderIdGenerator.prototype._isDocTrace = function (traceId) {
30909
- return this.docSpanSampler.shouldSample(undefined, traceId).decision === _opentelemetry_sdk_trace_base__WEBPACK_IMPORTED_MODULE_4__.SamplingDecision.RECORD_AND_SAMPLED;
30910
- };
30911
- return SessionRecorderIdGenerator;
30912
- }(_opentelemetry_sdk_trace_base__WEBPACK_IMPORTED_MODULE_5__.RandomIdGenerator));
30913
-
30914
- //# sourceMappingURL=SessionRecorderIdGenerator.js.map
30915
-
30916
- /***/ }),
30917
-
30918
- /***/ "../session-recorder-common/dist/esm/SessionRecorderJsonTraceSerializer.js":
30919
- /*!*********************************************************************************!*\
30920
- !*** ../session-recorder-common/dist/esm/SessionRecorderJsonTraceSerializer.js ***!
30921
- \*********************************************************************************/
30922
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
30923
-
30924
- "use strict";
30925
- __webpack_require__.r(__webpack_exports__);
30926
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
30927
- /* harmony export */ SessionRecorderJsonTraceSerializer: () => (/* binding */ SessionRecorderJsonTraceSerializer)
30928
- /* harmony export */ });
30929
- /* 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");
30930
- /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants.base */ "../session-recorder-common/dist/esm/constants.base.js");
30931
-
30932
-
30933
- var SessionRecorderJsonTraceSerializer = {
30934
- serializeRequest: function (arg) {
30935
- var filteredArg = arg.filter(function (span) {
30936
- var traceId = span.spanContext().traceId;
30937
- if (traceId.startsWith(_constants_base__WEBPACK_IMPORTED_MODULE_0__.MULTIPLAYER_TRACE_DEBUG_PREFIX)
30938
- || traceId.startsWith(_constants_base__WEBPACK_IMPORTED_MODULE_0__.MULTIPLAYER_TRACE_DOC_PREFIX)
30939
- || traceId.startsWith(_constants_base__WEBPACK_IMPORTED_MODULE_0__.MULTIPLAYER_TRACE_CONTINUOUS_DEBUG_PREFIX)) {
30940
- return true;
30941
- }
30942
- return false;
30943
- });
30944
- var request = (0,_opentelemetry_otlp_transformer__WEBPACK_IMPORTED_MODULE_1__.createExportTraceServiceRequest)(filteredArg, {
30945
- useHex: true,
30946
- useLongBits: false,
30947
- });
30948
- var encoder = new TextEncoder();
30949
- return encoder.encode(JSON.stringify(request));
30950
- },
30951
- deserializeResponse: function (arg) {
30952
- var decoder = new TextDecoder();
30953
- return JSON.parse(decoder.decode(arg));
30954
- },
30955
- };
30956
- //# sourceMappingURL=SessionRecorderJsonTraceSerializer.js.map
30957
-
30958
- /***/ }),
30959
-
30960
- /***/ "../session-recorder-common/dist/esm/SessionRecorderTraceIdRatioBasedSampler.js":
30961
- /*!**************************************************************************************!*\
30962
- !*** ../session-recorder-common/dist/esm/SessionRecorderTraceIdRatioBasedSampler.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 */ SessionRecorderTraceIdRatioBasedSampler: () => (/* binding */ SessionRecorderTraceIdRatioBasedSampler)
30632
+ /* harmony export */ SessionRecorderTraceIdRatioBasedSampler: () => (/* binding */ SessionRecorderTraceIdRatioBasedSampler)
30970
30633
  /* harmony export */ });
30971
30634
  /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/trace/spancontext-utils.js");
30972
30635
  /* 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");
30973
- /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants.base */ "../session-recorder-common/dist/esm/constants.base.js");
30636
+ /* 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");
30974
30637
 
30975
30638
 
30976
30639
 
@@ -31019,10 +30682,10 @@ var SessionRecorderTraceIdRatioBasedSampler = /** @class */ (function () {
31019
30682
 
31020
30683
  /***/ }),
31021
30684
 
31022
- /***/ "../session-recorder-common/dist/esm/constants.base.js":
31023
- /*!*************************************************************!*\
31024
- !*** ../session-recorder-common/dist/esm/constants.base.js ***!
31025
- \*************************************************************/
30685
+ /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/constants.base.js":
30686
+ /*!******************************************************************************************!*\
30687
+ !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/constants.base.js ***!
30688
+ \******************************************************************************************/
31026
30689
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31027
30690
 
31028
30691
  "use strict";
@@ -31095,10 +30758,10 @@ var MASK_PLACEHOLDER = '***MASKED***';
31095
30758
 
31096
30759
  /***/ }),
31097
30760
 
31098
- /***/ "../session-recorder-common/dist/esm/constants.browser.js":
31099
- /*!****************************************************************!*\
31100
- !*** ../session-recorder-common/dist/esm/constants.browser.js ***!
31101
- \****************************************************************/
30761
+ /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/constants.browser.js":
30762
+ /*!*********************************************************************************************!*\
30763
+ !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/constants.browser.js ***!
30764
+ \*********************************************************************************************/
31102
30765
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31103
30766
 
31104
30767
  "use strict";
@@ -31136,16 +30799,16 @@ __webpack_require__.r(__webpack_exports__);
31136
30799
  /* harmony export */ MULTIPLAYER_TRACE_DEBUG_SESSION_SHORT_ID_LENGTH: () => (/* reexport safe */ _constants_base__WEBPACK_IMPORTED_MODULE_0__.MULTIPLAYER_TRACE_DEBUG_SESSION_SHORT_ID_LENGTH),
31137
30800
  /* harmony export */ MULTIPLAYER_TRACE_DOC_PREFIX: () => (/* reexport safe */ _constants_base__WEBPACK_IMPORTED_MODULE_0__.MULTIPLAYER_TRACE_DOC_PREFIX)
31138
30801
  /* harmony export */ });
31139
- /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants.base */ "../session-recorder-common/dist/esm/constants.base.js");
30802
+ /* 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");
31140
30803
 
31141
30804
  //# sourceMappingURL=constants.browser.js.map
31142
30805
 
31143
30806
  /***/ }),
31144
30807
 
31145
- /***/ "../session-recorder-common/dist/esm/index-browser.js":
31146
- /*!************************************************************!*\
31147
- !*** ../session-recorder-common/dist/esm/index-browser.js ***!
31148
- \************************************************************/
30808
+ /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/index-browser.js":
30809
+ /*!*****************************************************************************************!*\
30810
+ !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/index-browser.js ***!
30811
+ \*****************************************************************************************/
31149
30812
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31150
30813
 
31151
30814
  "use strict";
@@ -31189,13 +30852,13 @@ __webpack_require__.r(__webpack_exports__);
31189
30852
  /* harmony export */ SessionRecorderTraceIdRatioBasedSampler: () => (/* reexport safe */ _SessionRecorderTraceIdRatioBasedSampler__WEBPACK_IMPORTED_MODULE_4__.SessionRecorderTraceIdRatioBasedSampler),
31190
30853
  /* harmony export */ SessionType: () => (/* reexport safe */ _type__WEBPACK_IMPORTED_MODULE_6__.SessionType)
31191
30854
  /* harmony export */ });
31192
- /* harmony import */ var _constants_browser__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants.browser */ "../session-recorder-common/dist/esm/constants.browser.js");
31193
- /* harmony import */ var _SessionRecorderHttpTraceExporterBrowser__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SessionRecorderHttpTraceExporterBrowser */ "../session-recorder-common/dist/esm/SessionRecorderHttpTraceExporterBrowser.js");
31194
- /* harmony import */ var _SessionRecorderIdGenerator__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./SessionRecorderIdGenerator */ "../session-recorder-common/dist/esm/SessionRecorderIdGenerator.js");
31195
- /* harmony import */ var _SessionRecorderJsonTraceSerializer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./SessionRecorderJsonTraceSerializer */ "../session-recorder-common/dist/esm/SessionRecorderJsonTraceSerializer.js");
31196
- /* harmony import */ var _SessionRecorderTraceIdRatioBasedSampler__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./SessionRecorderTraceIdRatioBasedSampler */ "../session-recorder-common/dist/esm/SessionRecorderTraceIdRatioBasedSampler.js");
31197
- /* harmony import */ var _sdk__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./sdk */ "../session-recorder-common/dist/esm/sdk/index.js");
31198
- /* harmony import */ var _type__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./type */ "../session-recorder-common/dist/esm/type/index.js");
30855
+ /* 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");
30856
+ /* harmony import */ var _SessionRecorderHttpTraceExporterBrowser__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SessionRecorderHttpTraceExporterBrowser */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderHttpTraceExporterBrowser.js");
30857
+ /* harmony import */ var _SessionRecorderIdGenerator__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./SessionRecorderIdGenerator */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderIdGenerator.js");
30858
+ /* harmony import */ var _SessionRecorderJsonTraceSerializer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./SessionRecorderJsonTraceSerializer */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderJsonTraceSerializer.js");
30859
+ /* harmony import */ var _SessionRecorderTraceIdRatioBasedSampler__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./SessionRecorderTraceIdRatioBasedSampler */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/SessionRecorderTraceIdRatioBasedSampler.js");
30860
+ /* harmony import */ var _sdk__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./sdk */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/index.js");
30861
+ /* harmony import */ var _type__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./type */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/type/index.js");
31199
30862
 
31200
30863
 
31201
30864
 
@@ -31208,10 +30871,10 @@ __webpack_require__.r(__webpack_exports__);
31208
30871
 
31209
30872
  /***/ }),
31210
30873
 
31211
- /***/ "../session-recorder-common/dist/esm/sdk/capture-exception.js":
31212
- /*!********************************************************************!*\
31213
- !*** ../session-recorder-common/dist/esm/sdk/capture-exception.js ***!
31214
- \********************************************************************/
30874
+ /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/capture-exception.js":
30875
+ /*!*************************************************************************************************!*\
30876
+ !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/capture-exception.js ***!
30877
+ \*************************************************************************************************/
31215
30878
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31216
30879
 
31217
30880
  "use strict";
@@ -31244,10 +30907,10 @@ var captureException = function (error) {
31244
30907
 
31245
30908
  /***/ }),
31246
30909
 
31247
- /***/ "../session-recorder-common/dist/esm/sdk/id-generator.js":
31248
- /*!***************************************************************!*\
31249
- !*** ../session-recorder-common/dist/esm/sdk/id-generator.js ***!
31250
- \***************************************************************/
30910
+ /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/id-generator.js":
30911
+ /*!********************************************************************************************!*\
30912
+ !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/id-generator.js ***!
30913
+ \********************************************************************************************/
31251
30914
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31252
30915
 
31253
30916
  "use strict";
@@ -31272,10 +30935,10 @@ var getIdGenerator = function (bytes) {
31272
30935
 
31273
30936
  /***/ }),
31274
30937
 
31275
- /***/ "../session-recorder-common/dist/esm/sdk/index.js":
31276
- /*!********************************************************!*\
31277
- !*** ../session-recorder-common/dist/esm/sdk/index.js ***!
31278
- \********************************************************/
30938
+ /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/index.js":
30939
+ /*!*************************************************************************************!*\
30940
+ !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/index.js ***!
30941
+ \*************************************************************************************/
31279
30942
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31280
30943
 
31281
30944
  "use strict";
@@ -31300,13 +30963,13 @@ __webpack_require__.r(__webpack_exports__);
31300
30963
  /* harmony export */ setRpcRequestMessage: () => (/* reexport safe */ _set_attribute__WEBPACK_IMPORTED_MODULE_5__.setRpcRequestMessage),
31301
30964
  /* harmony export */ setRpcResponseMessage: () => (/* reexport safe */ _set_attribute__WEBPACK_IMPORTED_MODULE_5__.setRpcResponseMessage)
31302
30965
  /* harmony export */ });
31303
- /* harmony import */ var _mask__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./mask */ "../session-recorder-common/dist/esm/sdk/mask.js");
31304
- /* harmony import */ var _schemify__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./schemify */ "../session-recorder-common/dist/esm/sdk/schemify.js");
31305
- /* harmony import */ var _is_gzip__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./is-gzip */ "../session-recorder-common/dist/esm/sdk/is-gzip.js");
31306
- /* harmony import */ var _id_generator__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./id-generator */ "../session-recorder-common/dist/esm/sdk/id-generator.js");
31307
- /* harmony import */ var _capture_exception__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./capture-exception */ "../session-recorder-common/dist/esm/sdk/capture-exception.js");
31308
- /* harmony import */ var _set_attribute__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./set-attribute */ "../session-recorder-common/dist/esm/sdk/set-attribute.js");
31309
- /* 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");
30966
+ /* harmony import */ var _mask__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./mask */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/mask.js");
30967
+ /* harmony import */ var _schemify__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./schemify */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/schemify.js");
30968
+ /* 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");
30969
+ /* 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");
30970
+ /* 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");
30971
+ /* 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");
30972
+ /* 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");
31310
30973
 
31311
30974
 
31312
30975
 
@@ -31318,10 +30981,10 @@ __webpack_require__.r(__webpack_exports__);
31318
30981
 
31319
30982
  /***/ }),
31320
30983
 
31321
- /***/ "../session-recorder-common/dist/esm/sdk/is-gzip.js":
31322
- /*!**********************************************************!*\
31323
- !*** ../session-recorder-common/dist/esm/sdk/is-gzip.js ***!
31324
- \**********************************************************/
30984
+ /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/is-gzip.js":
30985
+ /*!***************************************************************************************!*\
30986
+ !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/is-gzip.js ***!
30987
+ \***************************************************************************************/
31325
30988
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31326
30989
 
31327
30990
  "use strict";
@@ -31339,10 +31002,10 @@ var isGzip = function (buf) {
31339
31002
 
31340
31003
  /***/ }),
31341
31004
 
31342
- /***/ "../session-recorder-common/dist/esm/sdk/mask.js":
31343
- /*!*******************************************************!*\
31344
- !*** ../session-recorder-common/dist/esm/sdk/mask.js ***!
31345
- \*******************************************************/
31005
+ /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/mask.js":
31006
+ /*!************************************************************************************!*\
31007
+ !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/mask.js ***!
31008
+ \************************************************************************************/
31346
31009
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31347
31010
 
31348
31011
  "use strict";
@@ -31352,7 +31015,7 @@ __webpack_require__.r(__webpack_exports__);
31352
31015
  /* harmony export */ sensitiveFields: () => (/* binding */ sensitiveFields),
31353
31016
  /* harmony export */ sensitiveHeaders: () => (/* binding */ sensitiveHeaders)
31354
31017
  /* harmony export */ });
31355
- /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../constants.base */ "../session-recorder-common/dist/esm/constants.base.js");
31018
+ /* 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");
31356
31019
 
31357
31020
  var MAX_DEPTH = 8;
31358
31021
  var sensitiveFields = [
@@ -31504,10 +31167,10 @@ var maskSelected = function (value, keysToMask) {
31504
31167
 
31505
31168
  /***/ }),
31506
31169
 
31507
- /***/ "../session-recorder-common/dist/esm/sdk/save-continuous-deb-session.js":
31508
- /*!******************************************************************************!*\
31509
- !*** ../session-recorder-common/dist/esm/sdk/save-continuous-deb-session.js ***!
31510
- \******************************************************************************/
31170
+ /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/save-continuous-deb-session.js":
31171
+ /*!***********************************************************************************************************!*\
31172
+ !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/save-continuous-deb-session.js ***!
31173
+ \***********************************************************************************************************/
31511
31174
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31512
31175
 
31513
31176
  "use strict";
@@ -31517,7 +31180,7 @@ __webpack_require__.r(__webpack_exports__);
31517
31180
  /* harmony export */ });
31518
31181
  /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/trace-api.js");
31519
31182
  /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/context-api.js");
31520
- /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../constants.base */ "../session-recorder-common/dist/esm/constants.base.js");
31183
+ /* 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");
31521
31184
 
31522
31185
 
31523
31186
  /**
@@ -31542,10 +31205,10 @@ var saveContinuousSession = function (reason) {
31542
31205
 
31543
31206
  /***/ }),
31544
31207
 
31545
- /***/ "../session-recorder-common/dist/esm/sdk/schemify.js":
31546
- /*!***********************************************************!*\
31547
- !*** ../session-recorder-common/dist/esm/sdk/schemify.js ***!
31548
- \***********************************************************/
31208
+ /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/schemify.js":
31209
+ /*!****************************************************************************************!*\
31210
+ !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/schemify.js ***!
31211
+ \****************************************************************************************/
31549
31212
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31550
31213
 
31551
31214
  "use strict";
@@ -31609,10 +31272,10 @@ var defaultSchemifyOptions = {
31609
31272
 
31610
31273
  /***/ }),
31611
31274
 
31612
- /***/ "../session-recorder-common/dist/esm/sdk/set-attribute.js":
31613
- /*!****************************************************************!*\
31614
- !*** ../session-recorder-common/dist/esm/sdk/set-attribute.js ***!
31615
- \****************************************************************/
31275
+ /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/set-attribute.js":
31276
+ /*!*********************************************************************************************!*\
31277
+ !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/set-attribute.js ***!
31278
+ \*********************************************************************************************/
31616
31279
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31617
31280
 
31618
31281
  "use strict";
@@ -31631,8 +31294,8 @@ __webpack_require__.r(__webpack_exports__);
31631
31294
  /* harmony export */ });
31632
31295
  /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/trace-api.js");
31633
31296
  /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/context-api.js");
31634
- /* harmony import */ var _constants_base__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../constants.base */ "../session-recorder-common/dist/esm/constants.base.js");
31635
- /* harmony import */ var _mask__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mask */ "../session-recorder-common/dist/esm/sdk/mask.js");
31297
+ /* 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");
31298
+ /* harmony import */ var _mask__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mask */ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/sdk/mask.js");
31636
31299
 
31637
31300
 
31638
31301
 
@@ -31796,10 +31459,10 @@ var setGrpcResponseMessage = function (body, options) {
31796
31459
 
31797
31460
  /***/ }),
31798
31461
 
31799
- /***/ "../session-recorder-common/dist/esm/type/index.js":
31800
- /*!*********************************************************!*\
31801
- !*** ../session-recorder-common/dist/esm/type/index.js ***!
31802
- \*********************************************************/
31462
+ /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/type/index.js":
31463
+ /*!**************************************************************************************!*\
31464
+ !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/type/index.js ***!
31465
+ \**************************************************************************************/
31803
31466
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31804
31467
 
31805
31468
  "use strict";
@@ -31807,16 +31470,16 @@ __webpack_require__.r(__webpack_exports__);
31807
31470
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
31808
31471
  /* harmony export */ SessionType: () => (/* reexport safe */ _session_type_enum__WEBPACK_IMPORTED_MODULE_0__.SessionType)
31809
31472
  /* harmony export */ });
31810
- /* 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");
31473
+ /* 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");
31811
31474
 
31812
31475
  //# sourceMappingURL=index.js.map
31813
31476
 
31814
31477
  /***/ }),
31815
31478
 
31816
- /***/ "../session-recorder-common/dist/esm/type/session-type.enum.js":
31817
- /*!*********************************************************************!*\
31818
- !*** ../session-recorder-common/dist/esm/type/session-type.enum.js ***!
31819
- \*********************************************************************/
31479
+ /***/ "./node_modules/@multiplayer-app/session-recorder-common/dist/esm/type/session-type.enum.js":
31480
+ /*!**************************************************************************************************!*\
31481
+ !*** ./node_modules/@multiplayer-app/session-recorder-common/dist/esm/type/session-type.enum.js ***!
31482
+ \**************************************************************************************************/
31820
31483
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31821
31484
 
31822
31485
  "use strict";
@@ -31833,6 +31496,348 @@ var SessionType;
31833
31496
 
31834
31497
  /***/ }),
31835
31498
 
31499
+ /***/ "./node_modules/@opentelemetry/core/build/esm/internal/validators.js":
31500
+ /*!***************************************************************************!*\
31501
+ !*** ./node_modules/@opentelemetry/core/build/esm/internal/validators.js ***!
31502
+ \***************************************************************************/
31503
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31504
+
31505
+ "use strict";
31506
+ __webpack_require__.r(__webpack_exports__);
31507
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
31508
+ /* harmony export */ validateKey: () => (/* binding */ validateKey),
31509
+ /* harmony export */ validateValue: () => (/* binding */ validateValue)
31510
+ /* harmony export */ });
31511
+ /*
31512
+ * Copyright The OpenTelemetry Authors
31513
+ *
31514
+ * Licensed under the Apache License, Version 2.0 (the "License");
31515
+ * you may not use this file except in compliance with the License.
31516
+ * You may obtain a copy of the License at
31517
+ *
31518
+ * https://www.apache.org/licenses/LICENSE-2.0
31519
+ *
31520
+ * Unless required by applicable law or agreed to in writing, software
31521
+ * distributed under the License is distributed on an "AS IS" BASIS,
31522
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
31523
+ * See the License for the specific language governing permissions and
31524
+ * limitations under the License.
31525
+ */
31526
+ var VALID_KEY_CHAR_RANGE = '[_0-9a-z-*/]';
31527
+ var VALID_KEY = "[a-z]" + VALID_KEY_CHAR_RANGE + "{0,255}";
31528
+ var VALID_VENDOR_KEY = "[a-z0-9]" + VALID_KEY_CHAR_RANGE + "{0,240}@[a-z]" + VALID_KEY_CHAR_RANGE + "{0,13}";
31529
+ var VALID_KEY_REGEX = new RegExp("^(?:" + VALID_KEY + "|" + VALID_VENDOR_KEY + ")$");
31530
+ var VALID_VALUE_BASE_REGEX = /^[ -~]{0,255}[!-~]$/;
31531
+ var INVALID_VALUE_COMMA_EQUAL_REGEX = /,|=/;
31532
+ /**
31533
+ * Key is opaque string up to 256 characters printable. It MUST begin with a
31534
+ * lowercase letter, and can only contain lowercase letters a-z, digits 0-9,
31535
+ * underscores _, dashes -, asterisks *, and forward slashes /.
31536
+ * For multi-tenant vendor scenarios, an at sign (@) can be used to prefix the
31537
+ * vendor name. Vendors SHOULD set the tenant ID at the beginning of the key.
31538
+ * see https://www.w3.org/TR/trace-context/#key
31539
+ */
31540
+ function validateKey(key) {
31541
+ return VALID_KEY_REGEX.test(key);
31542
+ }
31543
+ /**
31544
+ * Value is opaque string up to 256 characters printable ASCII RFC0020
31545
+ * characters (i.e., the range 0x20 to 0x7E) except comma , and =.
31546
+ */
31547
+ function validateValue(value) {
31548
+ return (VALID_VALUE_BASE_REGEX.test(value) &&
31549
+ !INVALID_VALUE_COMMA_EQUAL_REGEX.test(value));
31550
+ }
31551
+ //# sourceMappingURL=validators.js.map
31552
+
31553
+ /***/ }),
31554
+
31555
+ /***/ "./node_modules/@opentelemetry/core/build/esm/trace/TraceState.js":
31556
+ /*!************************************************************************!*\
31557
+ !*** ./node_modules/@opentelemetry/core/build/esm/trace/TraceState.js ***!
31558
+ \************************************************************************/
31559
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31560
+
31561
+ "use strict";
31562
+ __webpack_require__.r(__webpack_exports__);
31563
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
31564
+ /* harmony export */ TraceState: () => (/* binding */ TraceState)
31565
+ /* harmony export */ });
31566
+ /* harmony import */ var _internal_validators__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../internal/validators */ "./node_modules/@opentelemetry/core/build/esm/internal/validators.js");
31567
+ /*
31568
+ * Copyright The OpenTelemetry Authors
31569
+ *
31570
+ * Licensed under the Apache License, Version 2.0 (the "License");
31571
+ * you may not use this file except in compliance with the License.
31572
+ * You may obtain a copy of the License at
31573
+ *
31574
+ * https://www.apache.org/licenses/LICENSE-2.0
31575
+ *
31576
+ * Unless required by applicable law or agreed to in writing, software
31577
+ * distributed under the License is distributed on an "AS IS" BASIS,
31578
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
31579
+ * See the License for the specific language governing permissions and
31580
+ * limitations under the License.
31581
+ */
31582
+
31583
+ var MAX_TRACE_STATE_ITEMS = 32;
31584
+ var MAX_TRACE_STATE_LEN = 512;
31585
+ var LIST_MEMBERS_SEPARATOR = ',';
31586
+ var LIST_MEMBER_KEY_VALUE_SPLITTER = '=';
31587
+ /**
31588
+ * TraceState must be a class and not a simple object type because of the spec
31589
+ * requirement (https://www.w3.org/TR/trace-context/#tracestate-field).
31590
+ *
31591
+ * Here is the list of allowed mutations:
31592
+ * - New key-value pair should be added into the beginning of the list
31593
+ * - The value of any key can be updated. Modified keys MUST be moved to the
31594
+ * beginning of the list.
31595
+ */
31596
+ var TraceState = /** @class */ (function () {
31597
+ function TraceState(rawTraceState) {
31598
+ this._internalState = new Map();
31599
+ if (rawTraceState)
31600
+ this._parse(rawTraceState);
31601
+ }
31602
+ TraceState.prototype.set = function (key, value) {
31603
+ // TODO: Benchmark the different approaches(map vs list) and
31604
+ // use the faster one.
31605
+ var traceState = this._clone();
31606
+ if (traceState._internalState.has(key)) {
31607
+ traceState._internalState.delete(key);
31608
+ }
31609
+ traceState._internalState.set(key, value);
31610
+ return traceState;
31611
+ };
31612
+ TraceState.prototype.unset = function (key) {
31613
+ var traceState = this._clone();
31614
+ traceState._internalState.delete(key);
31615
+ return traceState;
31616
+ };
31617
+ TraceState.prototype.get = function (key) {
31618
+ return this._internalState.get(key);
31619
+ };
31620
+ TraceState.prototype.serialize = function () {
31621
+ var _this = this;
31622
+ return this._keys()
31623
+ .reduce(function (agg, key) {
31624
+ agg.push(key + LIST_MEMBER_KEY_VALUE_SPLITTER + _this.get(key));
31625
+ return agg;
31626
+ }, [])
31627
+ .join(LIST_MEMBERS_SEPARATOR);
31628
+ };
31629
+ TraceState.prototype._parse = function (rawTraceState) {
31630
+ if (rawTraceState.length > MAX_TRACE_STATE_LEN)
31631
+ return;
31632
+ this._internalState = rawTraceState
31633
+ .split(LIST_MEMBERS_SEPARATOR)
31634
+ .reverse() // Store in reverse so new keys (.set(...)) will be placed at the beginning
31635
+ .reduce(function (agg, part) {
31636
+ var listMember = part.trim(); // Optional Whitespace (OWS) handling
31637
+ var i = listMember.indexOf(LIST_MEMBER_KEY_VALUE_SPLITTER);
31638
+ if (i !== -1) {
31639
+ var key = listMember.slice(0, i);
31640
+ var value = listMember.slice(i + 1, part.length);
31641
+ if ((0,_internal_validators__WEBPACK_IMPORTED_MODULE_0__.validateKey)(key) && (0,_internal_validators__WEBPACK_IMPORTED_MODULE_0__.validateValue)(value)) {
31642
+ agg.set(key, value);
31643
+ }
31644
+ else {
31645
+ // TODO: Consider to add warning log
31646
+ }
31647
+ }
31648
+ return agg;
31649
+ }, new Map());
31650
+ // Because of the reverse() requirement, trunc must be done after map is created
31651
+ if (this._internalState.size > MAX_TRACE_STATE_ITEMS) {
31652
+ this._internalState = new Map(Array.from(this._internalState.entries())
31653
+ .reverse() // Use reverse same as original tracestate parse chain
31654
+ .slice(0, MAX_TRACE_STATE_ITEMS));
31655
+ }
31656
+ };
31657
+ TraceState.prototype._keys = function () {
31658
+ return Array.from(this._internalState.keys()).reverse();
31659
+ };
31660
+ TraceState.prototype._clone = function () {
31661
+ var traceState = new TraceState();
31662
+ traceState._internalState = new Map(this._internalState);
31663
+ return traceState;
31664
+ };
31665
+ return TraceState;
31666
+ }());
31667
+
31668
+ //# sourceMappingURL=TraceState.js.map
31669
+
31670
+ /***/ }),
31671
+
31672
+ /***/ "./node_modules/@opentelemetry/core/build/esm/trace/W3CTraceContextPropagator.js":
31673
+ /*!***************************************************************************************!*\
31674
+ !*** ./node_modules/@opentelemetry/core/build/esm/trace/W3CTraceContextPropagator.js ***!
31675
+ \***************************************************************************************/
31676
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31677
+
31678
+ "use strict";
31679
+ __webpack_require__.r(__webpack_exports__);
31680
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
31681
+ /* harmony export */ TRACE_PARENT_HEADER: () => (/* binding */ TRACE_PARENT_HEADER),
31682
+ /* harmony export */ TRACE_STATE_HEADER: () => (/* binding */ TRACE_STATE_HEADER),
31683
+ /* harmony export */ W3CTraceContextPropagator: () => (/* binding */ W3CTraceContextPropagator),
31684
+ /* harmony export */ parseTraceParent: () => (/* binding */ parseTraceParent)
31685
+ /* harmony export */ });
31686
+ /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/trace-api.js");
31687
+ /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/trace/spancontext-utils.js");
31688
+ /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/trace/trace_flags.js");
31689
+ /* harmony import */ var _suppress_tracing__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./suppress-tracing */ "./node_modules/@opentelemetry/core/build/esm/trace/suppress-tracing.js");
31690
+ /* harmony import */ var _TraceState__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./TraceState */ "./node_modules/@opentelemetry/core/build/esm/trace/TraceState.js");
31691
+ /*
31692
+ * Copyright The OpenTelemetry Authors
31693
+ *
31694
+ * Licensed under the Apache License, Version 2.0 (the "License");
31695
+ * you may not use this file except in compliance with the License.
31696
+ * You may obtain a copy of the License at
31697
+ *
31698
+ * https://www.apache.org/licenses/LICENSE-2.0
31699
+ *
31700
+ * Unless required by applicable law or agreed to in writing, software
31701
+ * distributed under the License is distributed on an "AS IS" BASIS,
31702
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
31703
+ * See the License for the specific language governing permissions and
31704
+ * limitations under the License.
31705
+ */
31706
+
31707
+
31708
+
31709
+ var TRACE_PARENT_HEADER = 'traceparent';
31710
+ var TRACE_STATE_HEADER = 'tracestate';
31711
+ var VERSION = '00';
31712
+ var VERSION_PART = '(?!ff)[\\da-f]{2}';
31713
+ var TRACE_ID_PART = '(?![0]{32})[\\da-f]{32}';
31714
+ var PARENT_ID_PART = '(?![0]{16})[\\da-f]{16}';
31715
+ var FLAGS_PART = '[\\da-f]{2}';
31716
+ var TRACE_PARENT_REGEX = new RegExp("^\\s?(" + VERSION_PART + ")-(" + TRACE_ID_PART + ")-(" + PARENT_ID_PART + ")-(" + FLAGS_PART + ")(-.*)?\\s?$");
31717
+ /**
31718
+ * Parses information from the [traceparent] span tag and converts it into {@link SpanContext}
31719
+ * @param traceParent - A meta property that comes from server.
31720
+ * It should be dynamically generated server side to have the server's request trace Id,
31721
+ * a parent span Id that was set on the server's request span,
31722
+ * and the trace flags to indicate the server's sampling decision
31723
+ * (01 = sampled, 00 = not sampled).
31724
+ * for example: '{version}-{traceId}-{spanId}-{sampleDecision}'
31725
+ * For more information see {@link https://www.w3.org/TR/trace-context/}
31726
+ */
31727
+ function parseTraceParent(traceParent) {
31728
+ var match = TRACE_PARENT_REGEX.exec(traceParent);
31729
+ if (!match)
31730
+ return null;
31731
+ // According to the specification the implementation should be compatible
31732
+ // with future versions. If there are more parts, we only reject it if it's using version 00
31733
+ // See https://www.w3.org/TR/trace-context/#versioning-of-traceparent
31734
+ if (match[1] === '00' && match[5])
31735
+ return null;
31736
+ return {
31737
+ traceId: match[2],
31738
+ spanId: match[3],
31739
+ traceFlags: parseInt(match[4], 16),
31740
+ };
31741
+ }
31742
+ /**
31743
+ * Propagates {@link SpanContext} through Trace Context format propagation.
31744
+ *
31745
+ * Based on the Trace Context specification:
31746
+ * https://www.w3.org/TR/trace-context/
31747
+ */
31748
+ var W3CTraceContextPropagator = /** @class */ (function () {
31749
+ function W3CTraceContextPropagator() {
31750
+ }
31751
+ W3CTraceContextPropagator.prototype.inject = function (context, carrier, setter) {
31752
+ var spanContext = _opentelemetry_api__WEBPACK_IMPORTED_MODULE_0__.trace.getSpanContext(context);
31753
+ if (!spanContext ||
31754
+ (0,_suppress_tracing__WEBPACK_IMPORTED_MODULE_1__.isTracingSuppressed)(context) ||
31755
+ !(0,_opentelemetry_api__WEBPACK_IMPORTED_MODULE_2__.isSpanContextValid)(spanContext))
31756
+ return;
31757
+ var traceParent = VERSION + "-" + spanContext.traceId + "-" + spanContext.spanId + "-0" + Number(spanContext.traceFlags || _opentelemetry_api__WEBPACK_IMPORTED_MODULE_3__.TraceFlags.NONE).toString(16);
31758
+ setter.set(carrier, TRACE_PARENT_HEADER, traceParent);
31759
+ if (spanContext.traceState) {
31760
+ setter.set(carrier, TRACE_STATE_HEADER, spanContext.traceState.serialize());
31761
+ }
31762
+ };
31763
+ W3CTraceContextPropagator.prototype.extract = function (context, carrier, getter) {
31764
+ var traceParentHeader = getter.get(carrier, TRACE_PARENT_HEADER);
31765
+ if (!traceParentHeader)
31766
+ return context;
31767
+ var traceParent = Array.isArray(traceParentHeader)
31768
+ ? traceParentHeader[0]
31769
+ : traceParentHeader;
31770
+ if (typeof traceParent !== 'string')
31771
+ return context;
31772
+ var spanContext = parseTraceParent(traceParent);
31773
+ if (!spanContext)
31774
+ return context;
31775
+ spanContext.isRemote = true;
31776
+ var traceStateHeader = getter.get(carrier, TRACE_STATE_HEADER);
31777
+ if (traceStateHeader) {
31778
+ // If more than one `tracestate` header is found, we merge them into a
31779
+ // single header.
31780
+ var state = Array.isArray(traceStateHeader)
31781
+ ? traceStateHeader.join(',')
31782
+ : traceStateHeader;
31783
+ spanContext.traceState = new _TraceState__WEBPACK_IMPORTED_MODULE_4__.TraceState(typeof state === 'string' ? state : undefined);
31784
+ }
31785
+ return _opentelemetry_api__WEBPACK_IMPORTED_MODULE_0__.trace.setSpanContext(context, spanContext);
31786
+ };
31787
+ W3CTraceContextPropagator.prototype.fields = function () {
31788
+ return [TRACE_PARENT_HEADER, TRACE_STATE_HEADER];
31789
+ };
31790
+ return W3CTraceContextPropagator;
31791
+ }());
31792
+
31793
+ //# sourceMappingURL=W3CTraceContextPropagator.js.map
31794
+
31795
+ /***/ }),
31796
+
31797
+ /***/ "./node_modules/@opentelemetry/core/build/esm/trace/suppress-tracing.js":
31798
+ /*!******************************************************************************!*\
31799
+ !*** ./node_modules/@opentelemetry/core/build/esm/trace/suppress-tracing.js ***!
31800
+ \******************************************************************************/
31801
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
31802
+
31803
+ "use strict";
31804
+ __webpack_require__.r(__webpack_exports__);
31805
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
31806
+ /* harmony export */ isTracingSuppressed: () => (/* binding */ isTracingSuppressed),
31807
+ /* harmony export */ suppressTracing: () => (/* binding */ suppressTracing),
31808
+ /* harmony export */ unsuppressTracing: () => (/* binding */ unsuppressTracing)
31809
+ /* harmony export */ });
31810
+ /* harmony import */ var _opentelemetry_api__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @opentelemetry/api */ "../../node_modules/@opentelemetry/api/build/esm/context/context.js");
31811
+ /*
31812
+ * Copyright The OpenTelemetry Authors
31813
+ *
31814
+ * Licensed under the Apache License, Version 2.0 (the "License");
31815
+ * you may not use this file except in compliance with the License.
31816
+ * You may obtain a copy of the License at
31817
+ *
31818
+ * https://www.apache.org/licenses/LICENSE-2.0
31819
+ *
31820
+ * Unless required by applicable law or agreed to in writing, software
31821
+ * distributed under the License is distributed on an "AS IS" BASIS,
31822
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
31823
+ * See the License for the specific language governing permissions and
31824
+ * limitations under the License.
31825
+ */
31826
+
31827
+ var SUPPRESS_TRACING_KEY = (0,_opentelemetry_api__WEBPACK_IMPORTED_MODULE_0__.createContextKey)('OpenTelemetry SDK Context Key SUPPRESS_TRACING');
31828
+ function suppressTracing(context) {
31829
+ return context.setValue(SUPPRESS_TRACING_KEY, true);
31830
+ }
31831
+ function unsuppressTracing(context) {
31832
+ return context.deleteValue(SUPPRESS_TRACING_KEY);
31833
+ }
31834
+ function isTracingSuppressed(context) {
31835
+ return context.getValue(SUPPRESS_TRACING_KEY) === true;
31836
+ }
31837
+ //# sourceMappingURL=suppress-tracing.js.map
31838
+
31839
+ /***/ }),
31840
+
31836
31841
  /***/ "data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9JzMwMHB4JyB3aWR0aD0nMzAwcHgnICBmaWxsPSIjMDAwMDAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGRhdGEtbmFtZT0iTGF5ZXIgMSIgdmlld0JveD0iMCAwIDUwIDUwIiB4PSIwcHgiIHk9IjBweCI+PHRpdGxlPkRlc2lnbl90bnA8L3RpdGxlPjxwYXRoIGQ9Ik00OC43MSw0Mi45MUwzNC4wOCwyOC4yOSw0NC4zMywxOEExLDEsMCwwLDAsNDQsMTYuMzlMMi4zNSwxLjA2QTEsMSwwLDAsMCwxLjA2LDIuMzVMMTYuMzksNDRhMSwxLDAsMCwwLDEuNjUuMzZMMjguMjksMzQuMDgsNDIuOTEsNDguNzFhMSwxLDAsMCwwLDEuNDEsMGw0LjM4LTQuMzhBMSwxLDAsMCwwLDQ4LjcxLDQyLjkxWm0tNS4wOSwzLjY3TDI5LDMyYTEsMSwwLDAsMC0xLjQxLDBsLTkuODUsOS44NUwzLjY5LDMuNjlsMzguMTIsMTRMMzIsMjcuNThBMSwxLDAsMCwwLDMyLDI5TDQ2LjU5LDQzLjYyWiI+PC9wYXRoPjwvc3ZnPg==":
31837
31842
  /*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
31838
31843
  !*** data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9JzMwMHB4JyB3aWR0aD0nMzAwcHgnICBmaWxsPSIjMDAwMDAwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGRhdGEtbmFtZT0iTGF5ZXIgMSIgdmlld0JveD0iMCAwIDUwIDUwIiB4PSIwcHgiIHk9IjBweCI+PHRpdGxlPkRlc2lnbl90bnA8L3RpdGxlPjxwYXRoIGQ9Ik00OC43MSw0Mi45MUwzNC4wOCwyOC4yOSw0NC4zMywxOEExLDEsMCwwLDAsNDQsMTYuMzlMMi4zNSwxLjA2QTEsMSwwLDAsMCwxLjA2LDIuMzVMMTYuMzksNDRhMSwxLDAsMCwwLDEuNjUuMzZMMjguMjksMzQuMDgsNDIuOTEsNDguNzFhMSwxLDAsMCwwLDEuNDEsMGw0LjM4LTQuMzhBMSwxLDAsMCwwLDQ4LjcxLDQyLjkxWm0tNS4wOSwzLjY3TDI5LDMyYTEsMSwwLDAsMC0xLjQxLDBsLTkuODUsOS44NUwzLjY5LDMuNjlsMzguMTIsMTRMMzIsMjcuNThBMSwxLDAsMCwwLDMyLDI5TDQ2LjU5LDQzLjYyWiI+PC9wYXRoPjwvc3ZnPg== ***!
@@ -50224,7 +50229,7 @@ __webpack_require__.r(__webpack_exports__);
50224
50229
  /* harmony import */ var _listeners__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./listeners */ "./src/listeners.ts");
50225
50230
  /* harmony import */ var _eventBus__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./eventBus */ "./src/eventBus.ts");
50226
50231
  /* harmony import */ var _sessionRecorder__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./sessionRecorder */ "./src/sessionRecorder.ts");
50227
- /* 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");
50232
+ /* 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");
50228
50233
 
50229
50234
 
50230
50235