@microsoft/applicationinsights-core-js 3.4.0-nightlybeta3.2505-36 → 3.4.0-nightlybeta3.2507-23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (131) hide show
  1. package/browser/es5/applicationinsights-core-js.cjs.js +939 -248
  2. package/browser/es5/applicationinsights-core-js.cjs.js.map +1 -1
  3. package/browser/es5/applicationinsights-core-js.cjs.min.js +2 -2
  4. package/browser/es5/applicationinsights-core-js.cjs.min.js.map +1 -1
  5. package/browser/es5/applicationinsights-core-js.gbl.js +941 -250
  6. package/browser/es5/applicationinsights-core-js.gbl.js.map +1 -1
  7. package/browser/es5/applicationinsights-core-js.gbl.min.js +2 -2
  8. package/browser/es5/applicationinsights-core-js.gbl.min.js.map +1 -1
  9. package/browser/es5/applicationinsights-core-js.integrity.json +25 -25
  10. package/browser/es5/applicationinsights-core-js.js +941 -250
  11. package/browser/es5/applicationinsights-core-js.js.map +1 -1
  12. package/browser/es5/applicationinsights-core-js.min.js +2 -2
  13. package/browser/es5/applicationinsights-core-js.min.js.map +1 -1
  14. package/dist/es5/applicationinsights-core-js.js +939 -248
  15. package/dist/es5/applicationinsights-core-js.js.map +1 -1
  16. package/dist/es5/applicationinsights-core-js.min.js +2 -2
  17. package/dist/es5/applicationinsights-core-js.min.js.map +1 -1
  18. package/dist-es5/Config/ConfigDefaultHelpers.js +1 -1
  19. package/dist-es5/Config/ConfigDefaults.js +1 -1
  20. package/dist-es5/Config/DynamicConfig.js +1 -1
  21. package/dist-es5/Config/DynamicProperty.js +1 -1
  22. package/dist-es5/Config/DynamicState.js +1 -1
  23. package/dist-es5/Config/DynamicSupport.js +1 -1
  24. package/dist-es5/Config/IConfigDefaults.js +1 -1
  25. package/dist-es5/Config/IDynamicConfigHandler.js +1 -1
  26. package/dist-es5/Config/IDynamicPropertyHandler.js +1 -1
  27. package/dist-es5/Config/IDynamicWatcher.js +1 -1
  28. package/dist-es5/Config/_IDynamicConfigHandlerState.js +1 -1
  29. package/dist-es5/JavaScriptSDK/AggregationError.js +1 -1
  30. package/dist-es5/JavaScriptSDK/AppInsightsCore.js +33 -4
  31. package/dist-es5/JavaScriptSDK/AppInsightsCore.js.map +1 -1
  32. package/dist-es5/JavaScriptSDK/AsyncUtils.js +1 -1
  33. package/dist-es5/JavaScriptSDK/BaseTelemetryPlugin.js +1 -1
  34. package/dist-es5/JavaScriptSDK/Constants.js +1 -1
  35. package/dist-es5/JavaScriptSDK/CookieMgr.js +1 -1
  36. package/dist-es5/JavaScriptSDK/CoreUtils.js +1 -1
  37. package/dist-es5/JavaScriptSDK/DataCacheHelper.js +2 -2
  38. package/dist-es5/JavaScriptSDK/DataCacheHelper.js.map +1 -1
  39. package/dist-es5/JavaScriptSDK/DbgExtensionUtils.js +1 -1
  40. package/dist-es5/JavaScriptSDK/DiagnosticLogger.js +1 -1
  41. package/dist-es5/JavaScriptSDK/EnvUtils.js +174 -15
  42. package/dist-es5/JavaScriptSDK/EnvUtils.js.map +1 -1
  43. package/dist-es5/JavaScriptSDK/EventHelpers.js +1 -1
  44. package/dist-es5/JavaScriptSDK/HelperFuncs.js +3 -3
  45. package/dist-es5/JavaScriptSDK/HelperFuncs.js.map +1 -1
  46. package/dist-es5/JavaScriptSDK/InstrumentHooks.js +1 -1
  47. package/dist-es5/JavaScriptSDK/InternalConstants.js +3 -1
  48. package/dist-es5/JavaScriptSDK/InternalConstants.js.map +1 -1
  49. package/dist-es5/JavaScriptSDK/NotificationManager.js +1 -1
  50. package/dist-es5/JavaScriptSDK/PerfManager.js +1 -1
  51. package/dist-es5/JavaScriptSDK/ProcessTelemetryContext.js +17 -20
  52. package/dist-es5/JavaScriptSDK/ProcessTelemetryContext.js.map +1 -1
  53. package/dist-es5/JavaScriptSDK/RandomHelper.js +1 -1
  54. package/dist-es5/JavaScriptSDK/ResponseHelpers.js +1 -1
  55. package/dist-es5/JavaScriptSDK/SenderPostManager.js +1 -1
  56. package/dist-es5/JavaScriptSDK/StatsBeat.js +1 -1
  57. package/dist-es5/JavaScriptSDK/TelemetryHelpers.js +168 -35
  58. package/dist-es5/JavaScriptSDK/TelemetryHelpers.js.map +1 -1
  59. package/dist-es5/JavaScriptSDK/TelemetryInitializerPlugin.js +1 -1
  60. package/dist-es5/JavaScriptSDK/UnloadHandlerContainer.js +1 -1
  61. package/dist-es5/JavaScriptSDK/UnloadHookContainer.js +1 -1
  62. package/dist-es5/JavaScriptSDK/W3cTraceParent.js +11 -10
  63. package/dist-es5/JavaScriptSDK/W3cTraceParent.js.map +1 -1
  64. package/dist-es5/JavaScriptSDK/W3cTraceState.js +346 -0
  65. package/dist-es5/JavaScriptSDK/W3cTraceState.js.map +1 -0
  66. package/dist-es5/JavaScriptSDK.Enums/EnumHelperFuncs.js +1 -1
  67. package/dist-es5/JavaScriptSDK.Enums/EventsDiscardedReason.js +5 -5
  68. package/dist-es5/JavaScriptSDK.Enums/EventsDiscardedReason.js.map +1 -1
  69. package/dist-es5/JavaScriptSDK.Enums/FeatureOptInEnums.js +1 -1
  70. package/dist-es5/JavaScriptSDK.Enums/InitActiveStatusEnum.js +3 -3
  71. package/dist-es5/JavaScriptSDK.Enums/InitActiveStatusEnum.js.map +1 -1
  72. package/dist-es5/JavaScriptSDK.Enums/LoggingEnums.js +3 -3
  73. package/dist-es5/JavaScriptSDK.Enums/LoggingEnums.js.map +1 -1
  74. package/dist-es5/JavaScriptSDK.Enums/SendRequestReason.js +1 -1
  75. package/dist-es5/JavaScriptSDK.Enums/StatsType.js +1 -1
  76. package/dist-es5/JavaScriptSDK.Enums/TelemetryUnloadReason.js +1 -1
  77. package/dist-es5/JavaScriptSDK.Enums/TelemetryUpdateReason.js +1 -1
  78. package/dist-es5/JavaScriptSDK.Enums/TraceHeadersMode.js +8 -0
  79. package/dist-es5/JavaScriptSDK.Enums/TraceHeadersMode.js.map +1 -0
  80. package/dist-es5/JavaScriptSDK.Enums/W3CTraceFlags.js +8 -0
  81. package/dist-es5/JavaScriptSDK.Enums/W3CTraceFlags.js.map +1 -0
  82. package/dist-es5/JavaScriptSDK.Interfaces/IAppInsightsCore.js +1 -1
  83. package/dist-es5/JavaScriptSDK.Interfaces/IChannelControls.js +1 -1
  84. package/dist-es5/JavaScriptSDK.Interfaces/IChannelControlsHost.js +1 -1
  85. package/dist-es5/JavaScriptSDK.Interfaces/IConfiguration.js +12 -3
  86. package/dist-es5/JavaScriptSDK.Interfaces/IConfiguration.js.map +1 -1
  87. package/dist-es5/JavaScriptSDK.Interfaces/ICookieMgr.js +1 -1
  88. package/dist-es5/JavaScriptSDK.Interfaces/IDbgExtension.js +1 -1
  89. package/dist-es5/JavaScriptSDK.Interfaces/IDiagnosticLogger.js +1 -1
  90. package/dist-es5/JavaScriptSDK.Interfaces/IDistributedTraceContext.js +1 -1
  91. package/dist-es5/JavaScriptSDK.Interfaces/IExceptionConfig.js +1 -1
  92. package/dist-es5/JavaScriptSDK.Interfaces/IFeatureOptIn.js +1 -1
  93. package/dist-es5/JavaScriptSDK.Interfaces/IInstrumentHooks.js +1 -1
  94. package/dist-es5/JavaScriptSDK.Interfaces/INetworkStatsbeat.js +1 -1
  95. package/dist-es5/JavaScriptSDK.Interfaces/INotificationListener.js +1 -1
  96. package/dist-es5/JavaScriptSDK.Interfaces/INotificationManager.js +1 -1
  97. package/dist-es5/JavaScriptSDK.Interfaces/IPerfEvent.js +1 -1
  98. package/dist-es5/JavaScriptSDK.Interfaces/IPerfManager.js +1 -1
  99. package/dist-es5/JavaScriptSDK.Interfaces/IProcessTelemetryContext.js +1 -1
  100. package/dist-es5/JavaScriptSDK.Interfaces/ISenderPostManager.js +1 -1
  101. package/dist-es5/JavaScriptSDK.Interfaces/IStatsBeat.js +1 -1
  102. package/dist-es5/JavaScriptSDK.Interfaces/IStatsEventData.js +1 -1
  103. package/dist-es5/JavaScriptSDK.Interfaces/IStatsMgr.js +1 -1
  104. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryInitializers.js +1 -1
  105. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryItem.js +1 -1
  106. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryPlugin.js +1 -1
  107. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryPluginChain.js +1 -1
  108. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryUnloadState.js +1 -1
  109. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryUpdateState.js +1 -1
  110. package/dist-es5/JavaScriptSDK.Interfaces/ITraceParent.js +1 -1
  111. package/dist-es5/JavaScriptSDK.Interfaces/IUnloadHook.js +1 -1
  112. package/dist-es5/JavaScriptSDK.Interfaces/IUnloadableComponent.js +1 -1
  113. package/dist-es5/JavaScriptSDK.Interfaces/IW3cTraceState.js +8 -0
  114. package/dist-es5/JavaScriptSDK.Interfaces/IW3cTraceState.js.map +1 -0
  115. package/dist-es5/JavaScriptSDK.Interfaces/IXDomainRequest.js +1 -1
  116. package/dist-es5/JavaScriptSDK.Interfaces/IXHROverride.js +1 -1
  117. package/dist-es5/OpenTelemetry/interfaces/trace/IOTelSpanContext.js +6 -0
  118. package/dist-es5/OpenTelemetry/interfaces/trace/IOTelSpanContext.js.map +1 -0
  119. package/dist-es5/OpenTelemetry/interfaces/trace/IOTelTraceState.js +8 -0
  120. package/dist-es5/OpenTelemetry/interfaces/trace/IOTelTraceState.js.map +1 -0
  121. package/dist-es5/OpenTelemetry/trace/spanContext.js +59 -0
  122. package/dist-es5/OpenTelemetry/trace/spanContext.js.map +1 -0
  123. package/dist-es5/OpenTelemetry/trace/traceState.js +97 -0
  124. package/dist-es5/OpenTelemetry/trace/traceState.js.map +1 -0
  125. package/dist-es5/__DynamicConstants.js +15 -9
  126. package/dist-es5/__DynamicConstants.js.map +1 -1
  127. package/dist-es5/applicationinsights-core-js.js +4 -3
  128. package/dist-es5/applicationinsights-core-js.js.map +1 -1
  129. package/package.json +1 -1
  130. package/types/applicationinsights-core-js.d.ts +434 -14
  131. package/types/applicationinsights-core-js.namespaced.d.ts +434 -14
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Core, 3.4.0-nightlybeta3.2505-36
2
+ * Application Insights JavaScript SDK - Core, 3.4.0-nightlybeta3.2507-23
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  (function (global, factory) {
@@ -34,6 +34,7 @@
34
34
  var CALL = "call";
35
35
  var TO_STRING = "toString";
36
36
  var GET_OWN_PROPERTY_DESCRIPTOR = "getOwnPropertyDescriptor";
37
+ var GET_OWN_PROPERTY_SYMBOLS = "getOwnPropertySymbols";
37
38
  var ObjClass$1 = ( /*#__PURE__*/_pureAssign(Object));
38
39
  var ObjProto = ( /*#__PURE__*/_pureRef(ObjClass$1, PROTOTYPE));
39
40
  var StrCls = ( /*#__PURE__*/_pureAssign(String));
@@ -144,6 +145,9 @@
144
145
  function _returnNothing() {
145
146
  return;
146
147
  }
148
+ function _returnEmptyArray() {
149
+ return [];
150
+ }
147
151
  function _returnFalse() {
148
152
  return false;
149
153
  }
@@ -234,7 +238,26 @@
234
238
  return thisArg[propName];
235
239
  };
236
240
  }
241
+ function _objPropertyIsEnum(obj, propKey) {
242
+ var desc;
243
+ var fn = ObjClass$1.getOwnPropertyDescriptor;
244
+ if (!isStrictNullOrUndefined(obj) && fn) {
245
+ desc = safe(fn, [obj, propKey]).v || NULL_VALUE;
246
+ }
247
+ if (!desc) {
248
+ desc = safe(function () {
249
+ for (var key in obj) {
250
+ if (key === propKey) {
251
+ return { enumerable: true };
252
+ }
253
+ }
254
+ }).v;
255
+ }
256
+ return (desc && desc.enumerable) || false;
257
+ }
258
+ var objPropertyIsEnumerable = ( /*#__PURE__*/_unwrapFunctionWithPoly("propertyIsEnumerable", NULL_VALUE, _objPropertyIsEnum));
237
259
  var _objGetOwnPropertyDescriptor$1 = ( /*#__PURE__*/_pureAssign(( /*#__PURE__*/_pureRef(ObjClass$1, GET_OWN_PROPERTY_DESCRIPTOR)), _returnNothing));
260
+ var _objGetOwnPropertySymbols = ( /*#__PURE__*/_pureAssign(( /*#__PURE__*/_pureRef(ObjClass$1, GET_OWN_PROPERTY_SYMBOLS)), _returnEmptyArray));
238
261
  var propMap = {
239
262
  e: "enumerable",
240
263
  c: "configurable",
@@ -280,6 +303,18 @@
280
303
  function objDefine(target, key, propDesc) {
281
304
  return objDefineProp(target, key, _createProp(propDesc));
282
305
  }
306
+ function objDefineProps(target, propDescMap) {
307
+ var props = {};
308
+ objForEachKey(propDescMap, function (key, value) {
309
+ props[key] = _createProp(value);
310
+ });
311
+ arrForEach(_objGetOwnPropertySymbols(propDescMap), function (sym) {
312
+ if (objPropertyIsEnumerable(propDescMap, sym)) {
313
+ props[sym] = _createProp(propDescMap[sym]);
314
+ }
315
+ });
316
+ return objDefineProperties(target, props);
317
+ }
283
318
  /*#__NO_SIDE_EFFECTS__*/
284
319
  function _createKeyValueMap(values, keyType, valueType, completeFn, writable) {
285
320
  var theMap = {};
@@ -562,6 +597,22 @@
562
597
  toJSON: function () { return value; }
563
598
  }, "v", { value: value });
564
599
  }
600
+ var createDeferredCachedValue = getDeferred;
601
+ /*#__NO_SIDE_EFFECTS__*/
602
+ function getDeferred(cb, argArray) {
603
+ var theValue = {
604
+ toJSON: function () { return theValue.v; }
605
+ };
606
+ return objDefineProp(theValue, "v", {
607
+ get: function () {
608
+ var result = fnApply(cb, null, argArray);
609
+ cb = NULL_VALUE;
610
+ objDefineProp(theValue, "v", { value: result });
611
+ return result;
612
+ },
613
+ configurable: true
614
+ });
615
+ }
565
616
  var WINDOW = "window";
566
617
  var _cachedGlobal;
567
618
  function _getGlobalInstFn(getFn, theArgs) {
@@ -978,6 +1029,7 @@
978
1029
  function deepExtend(target, obj1, obj2, obj3, obj4, obj5, obj6) {
979
1030
  return _doExtend(objDeepCopy(target) || {}, ArrSlice[CALL](arguments));
980
1031
  }
1032
+ var strSplit = ( /*#__PURE__*/_unwrapFunction("split", StrProto));
981
1033
  var getLength = ( /*#__PURE__*/_unwrapProp(LENGTH));
982
1034
  var _perf;
983
1035
  /*#__NO_SIDE_EFFECTS__*/
@@ -1126,27 +1178,27 @@
1126
1178
  var createEnumStyle = createEnum;
1127
1179
  var createValueMap = createTypeMap;
1128
1180
 
1129
- var EventsDiscardedReason = createEnumStyle({
1181
+ var EventsDiscardedReason = ( /* @__PURE__ */createEnumStyle({
1130
1182
  Unknown: 0 ,
1131
1183
  NonRetryableStatus: 1 ,
1132
1184
  InvalidEvent: 2 ,
1133
1185
  SizeLimitExceeded: 3 ,
1134
1186
  KillSwitch: 4 ,
1135
1187
  QueueFull: 5
1136
- });
1137
- var BatchDiscardedReason = createEnumStyle({
1188
+ }));
1189
+ var BatchDiscardedReason = ( /* @__PURE__ */createEnumStyle({
1138
1190
  Unknown: 0 ,
1139
1191
  NonRetryableStatus: 1 ,
1140
1192
  CleanStorage: 2 ,
1141
1193
  MaxInStorageTimeExceeded: 3
1142
- });
1194
+ }));
1143
1195
 
1144
- var ActiveStatus = createEnumStyle({
1196
+ var ActiveStatus = ( /* @__PURE__ */createEnumStyle({
1145
1197
  NONE: 0 ,
1146
1198
  PENDING: 3 ,
1147
1199
  INACTIVE: 1 ,
1148
1200
  ACTIVE: 2
1149
- });
1201
+ }));
1150
1202
 
1151
1203
  var _DYN_TO_LOWER_CASE = "toLowerCase";
1152
1204
  var _DYN_LENGTH = "length";
@@ -1162,7 +1214,11 @@
1162
1214
  var _DYN_IDENTIFIER = "identifier";
1163
1215
  var _DYN_REMOVE_NOTIFICATION_0 = "removeNotificationListener";
1164
1216
  var _DYN_ADD_NOTIFICATION_LIS1 = "addNotificationListener";
1217
+ var _DYN_TRACE_ID = "traceId";
1218
+ var _DYN_SPAN_ID = "spanId";
1219
+ var _DYN_TRACE_FLAGS = "traceFlags";
1165
1220
  var _DYN_IS_INITIALIZED = "isInitialized";
1221
+ var _DYN_TRACE_HDR_MODE = "traceHdrMode";
1166
1222
  var _DYN_GET_NOTIFY_MGR = "getNotifyMgr";
1167
1223
  var _DYN_GET_PLUGIN = "getPlugin";
1168
1224
  var _DYN_NAME = "name";
@@ -1187,10 +1243,11 @@
1187
1243
  var _DYN_USER_AGENT = "userAgent";
1188
1244
  var _DYN_SPLIT = "split";
1189
1245
  var _DYN_REPLACE = "replace";
1246
+ var _DYN_SUBSTRING = "substring";
1247
+ var _DYN_INDEX_OF = "indexOf";
1190
1248
  var _DYN_TYPE = "type";
1191
1249
  var _DYN_EVT_NAME = "evtName";
1192
1250
  var _DYN_STATUS = "status";
1193
- var _DYN_INDEX_OF = "indexOf";
1194
1251
  var _DYN_GET_ALL_RESPONSE_HEA5 = "getAllResponseHeaders";
1195
1252
  var _DYN_IS_CHILD_EVT = "isChildEvt";
1196
1253
  var _DYN_DATA = "data";
@@ -1200,7 +1257,8 @@
1200
1257
  var _DYN_HEADERS = "headers";
1201
1258
  var _DYN_URL_STRING = "urlString";
1202
1259
  var _DYN_TIMEOUT = "timeout";
1203
- var _DYN_TRACE_FLAGS = "traceFlags";
1260
+ var _DYN_SET_TRACE_FLAGS = "setTraceFlags";
1261
+ var _DYN_TRACE_STATE = "traceState";
1204
1262
  var _DYN_GET_ATTRIBUTE = "getAttribute";
1205
1263
 
1206
1264
  var aggregationErrorType;
@@ -1934,6 +1992,8 @@
1934
1992
  var STR_DOMAIN = "domain";
1935
1993
  var STR_PATH = "path";
1936
1994
  var STR_NOT_DYNAMIC_ERROR = "Not dynamic - ";
1995
+ var STR_REDACTED = "REDACTED";
1996
+ var DEFAULT_SENSITIVE_PARAMS = ["sig", "Signature", "AWSAccessKeyId", "X-Goog-Signature"];
1937
1997
 
1938
1998
  var strGetPrototypeOf = "getPrototypeOf";
1939
1999
  var rCamelCase = /-([a-z])/g;
@@ -2211,7 +2271,7 @@
2211
2271
  var idx = headerEntry[_DYN_INDEX_OF ](": ");
2212
2272
  if (idx !== -1) {
2213
2273
  var header = strTrim(headerEntry.substring(0, idx))[_DYN_TO_LOWER_CASE ]();
2214
- var value = strTrim(headerEntry.substring(idx + 1));
2274
+ var value = strTrim(headerEntry[_DYN_SUBSTRING ](idx + 1));
2215
2275
  headers[header] = value;
2216
2276
  }
2217
2277
  else {
@@ -2407,34 +2467,58 @@
2407
2467
  return isSupported;
2408
2468
  }
2409
2469
  function _getNamedValue(values, name) {
2470
+ var items = [];
2410
2471
  if (values) {
2411
- for (var i = 0; i < values[_DYN_LENGTH ]; i++) {
2412
- var value = values[i];
2472
+ arrForEach(values, function (value) {
2413
2473
  if (value[_DYN_NAME ]) {
2414
2474
  if (value[_DYN_NAME ] === name) {
2415
- return value;
2475
+ items[_DYN_PUSH ](value);
2416
2476
  }
2417
2477
  }
2418
- }
2478
+ });
2419
2479
  }
2420
- return {};
2480
+ return items;
2421
2481
  }
2422
2482
  function findMetaTag(name) {
2483
+ var tags = findMetaTags(name);
2484
+ if (tags[_DYN_LENGTH ] > 0) {
2485
+ return tags[0];
2486
+ }
2487
+ return null;
2488
+ }
2489
+ function findMetaTags(name) {
2490
+ var tags = [];
2423
2491
  var doc = getDocument();
2424
2492
  if (doc && name) {
2425
- return _getNamedValue(doc.querySelectorAll("meta"), name).content;
2493
+ arrForEach(_getNamedValue(doc.querySelectorAll("meta"), name), function (item) {
2494
+ tags[_DYN_PUSH ](item.content);
2495
+ });
2426
2496
  }
2427
- return null;
2497
+ return tags;
2428
2498
  }
2429
2499
  function findNamedServerTiming(name) {
2430
2500
  var value;
2431
- var perf = getPerformance();
2432
- if (perf) {
2433
- var navPerf = perf.getEntriesByType("navigation") || [];
2434
- value = _getNamedValue((navPerf[_DYN_LENGTH ] > 0 ? navPerf[0] : {}).serverTiming, name).description;
2501
+ var serverTimings = findNamedServerTimings(name);
2502
+ if (serverTimings[_DYN_LENGTH ] > 0) {
2503
+ value = serverTimings[0];
2435
2504
  }
2436
2505
  return value;
2437
2506
  }
2507
+ function findNamedServerTimings(name) {
2508
+ var values = [];
2509
+ var perf = getPerformance();
2510
+ if (perf && perf.getEntriesByType) {
2511
+ arrForEach(perf.getEntriesByType("navigation") || [], function (navPerf) {
2512
+ arrForEach(_getNamedValue(navPerf.serverTiming, name), function (value) {
2513
+ var desc = value.description;
2514
+ if (!isNullOrUndefined(desc)) {
2515
+ values[_DYN_PUSH ](desc);
2516
+ }
2517
+ });
2518
+ });
2519
+ }
2520
+ return values;
2521
+ }
2438
2522
  function dispatchEvent(target, evnt) {
2439
2523
  if (target && target.dispatchEvent && evnt) {
2440
2524
  target.dispatchEvent(evnt);
@@ -2469,6 +2553,110 @@
2469
2553
  }
2470
2554
  return false;
2471
2555
  }
2556
+ function redactUserInfo(url) {
2557
+ return url.replace(/^([a-zA-Z][a-zA-Z0-9+.-]*:\/\/)([^:@]{1,200}):([^@]{1,200})@(.*)$/, "$1REDACTED:REDACTED@$4");
2558
+ }
2559
+ function redactQueryParameters(url, config) {
2560
+ var sensitiveParams;
2561
+ var questionMarkIndex = strIndexOf(url, "?");
2562
+ if (questionMarkIndex === -1) {
2563
+ return url;
2564
+ }
2565
+ if (config && config.redactQueryParams) {
2566
+ sensitiveParams = DEFAULT_SENSITIVE_PARAMS.concat(config.redactQueryParams);
2567
+ }
2568
+ else {
2569
+ sensitiveParams = DEFAULT_SENSITIVE_PARAMS;
2570
+ }
2571
+ var baseUrl = strSubstring(url, 0, questionMarkIndex + 1);
2572
+ var queryString = strSubstring(url, questionMarkIndex + 1);
2573
+ var fragment = STR_EMPTY$1;
2574
+ var hashIndex = strIndexOf(queryString, "#");
2575
+ if (hashIndex !== -1) {
2576
+ fragment = strSubstring(queryString, hashIndex);
2577
+ queryString = strSubstring(queryString, 0, hashIndex);
2578
+ }
2579
+ var hasPotentialSensitiveParam = false;
2580
+ for (var i = 0; i < sensitiveParams[_DYN_LENGTH ]; i++) {
2581
+ var paramCheck = sensitiveParams[i] + "=";
2582
+ if (strIndexOf(queryString, paramCheck) !== -1) {
2583
+ hasPotentialSensitiveParam = true;
2584
+ break;
2585
+ }
2586
+ }
2587
+ if (!hasPotentialSensitiveParam) {
2588
+ return url;
2589
+ }
2590
+ var resultParts = [];
2591
+ var anyParamRedacted = false;
2592
+ if (queryString && queryString[_DYN_LENGTH ]) {
2593
+ var pairs = queryString[_DYN_SPLIT ]("&");
2594
+ for (var i = 0; i < pairs[_DYN_LENGTH ]; i++) {
2595
+ var pair = pairs[i];
2596
+ if (!pair) {
2597
+ continue;
2598
+ }
2599
+ var equalsIndex = strIndexOf(pair, "=");
2600
+ if (equalsIndex === -1) {
2601
+ resultParts[_DYN_PUSH ](pair);
2602
+ }
2603
+ else {
2604
+ var paramName = pair[_DYN_SUBSTRING ](0, equalsIndex);
2605
+ var paramValue = pair[_DYN_SUBSTRING ](equalsIndex + 1);
2606
+ if (paramValue === STR_EMPTY$1) {
2607
+ resultParts[_DYN_PUSH ](pair);
2608
+ }
2609
+ else {
2610
+ var shouldRedact = false;
2611
+ for (var j = 0; j < sensitiveParams[_DYN_LENGTH ]; j++) {
2612
+ if (paramName === sensitiveParams[j]) {
2613
+ shouldRedact = true;
2614
+ anyParamRedacted = true;
2615
+ break;
2616
+ }
2617
+ }
2618
+ if (shouldRedact) {
2619
+ resultParts[_DYN_PUSH ](paramName + "=" + STR_REDACTED);
2620
+ }
2621
+ else {
2622
+ resultParts[_DYN_PUSH ](pair);
2623
+ }
2624
+ }
2625
+ }
2626
+ }
2627
+ }
2628
+ if (!anyParamRedacted) {
2629
+ return url;
2630
+ }
2631
+ return baseUrl + resultParts.join("&") + fragment;
2632
+ }
2633
+ function fieldRedaction(input, config) {
2634
+ if (!input || input[_DYN_INDEX_OF ](" ") !== -1) {
2635
+ return input;
2636
+ }
2637
+ var isRedactionDisabled = config && config.redactUrls === false;
2638
+ if (isRedactionDisabled) {
2639
+ return input;
2640
+ }
2641
+ var hasCredentials = strIndexOf(input, "@") !== -1;
2642
+ var hasQueryParams = strIndexOf(input, "?") !== -1;
2643
+ if (!hasCredentials && !hasQueryParams) {
2644
+ return input;
2645
+ }
2646
+ try {
2647
+ var result = input;
2648
+ if (hasCredentials) {
2649
+ result = redactUserInfo(input);
2650
+ }
2651
+ if (hasQueryParams) {
2652
+ result = redactQueryParameters(result, config);
2653
+ }
2654
+ return result;
2655
+ }
2656
+ catch (e) {
2657
+ return input;
2658
+ }
2659
+ }
2472
2660
 
2473
2661
  var UInt32Mask = 0x100000000;
2474
2662
  var MaxUInt32 = 0xffffffff;
@@ -2554,7 +2742,7 @@
2554
2742
  return result;
2555
2743
  }
2556
2744
 
2557
- var version = '3.4.0-nightlybeta3.2505-36';
2745
+ var version = '3.4.0-nightlybeta3.2507-23';
2558
2746
  var instanceName = "." + newId(6);
2559
2747
  var _dataUid = 0;
2560
2748
  function _canAcceptData(target) {
@@ -3205,29 +3393,559 @@
3205
3393
  _makeDynamicObject(theState, newTarget, "config", "Creating");
3206
3394
  return cfgHandler;
3207
3395
  }
3208
- function _logInvalidAccess(logger, message) {
3209
- if (logger) {
3210
- logger[_DYN_WARN_TO_CONSOLE ](message);
3211
- logger[_DYN_THROW_INTERNAL ](2 , 108 , message);
3396
+ function _logInvalidAccess(logger, message) {
3397
+ if (logger) {
3398
+ logger[_DYN_WARN_TO_CONSOLE ](message);
3399
+ logger[_DYN_THROW_INTERNAL ](2 , 108 , message);
3400
+ }
3401
+ else {
3402
+ throwInvalidAccess(message);
3403
+ }
3404
+ }
3405
+ function createDynamicConfig(config, defaultConfig, logger, inPlace) {
3406
+ var dynamicHandler = _createDynamicHandler(logger, config || {}, inPlace);
3407
+ if (defaultConfig) {
3408
+ dynamicHandler.setDf(dynamicHandler.cfg, defaultConfig);
3409
+ }
3410
+ return dynamicHandler;
3411
+ }
3412
+ function onConfigChange(config, configHandler, logger) {
3413
+ var handler = config[CFG_HANDLER_LINK] || config;
3414
+ if (handler.cfg && (handler.cfg === config || handler.cfg[CFG_HANDLER_LINK] === handler)) {
3415
+ return handler[_DYN_WATCH ](configHandler);
3416
+ }
3417
+ _logInvalidAccess(logger, STR_NOT_DYNAMIC_ERROR + dumpObj(config));
3418
+ return createDynamicConfig(config, null, logger)[_DYN_WATCH ](configHandler);
3419
+ }
3420
+
3421
+ var Undefined = strShimUndefined;
3422
+ function newGuid() {
3423
+ var uuid = generateW3CId();
3424
+ return strSubstring(uuid, 0, 8) + "-" + strSubstring(uuid, 8, 12) + "-" + strSubstring(uuid, 12, 16) + "-" + strSubstring(uuid, 16, 20) + "-" + strSubstring(uuid, 20);
3425
+ }
3426
+ function generateW3CId() {
3427
+ var hexValues = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"];
3428
+ var oct = STR_EMPTY$1, tmp;
3429
+ for (var a = 0; a < 4; a++) {
3430
+ tmp = random32();
3431
+ oct +=
3432
+ hexValues[tmp & 0xF] +
3433
+ hexValues[tmp >> 4 & 0xF] +
3434
+ hexValues[tmp >> 8 & 0xF] +
3435
+ hexValues[tmp >> 12 & 0xF] +
3436
+ hexValues[tmp >> 16 & 0xF] +
3437
+ hexValues[tmp >> 20 & 0xF] +
3438
+ hexValues[tmp >> 24 & 0xF] +
3439
+ hexValues[tmp >> 28 & 0xF];
3440
+ }
3441
+ var clockSequenceHi = hexValues[8 + (random32() & 0x03) | 0];
3442
+ return strSubstr(oct, 0, 8) + strSubstr(oct, 9, 4) + "4" + strSubstr(oct, 13, 3) + clockSequenceHi + strSubstr(oct, 16, 3) + strSubstr(oct, 19, 12);
3443
+ }
3444
+
3445
+ var TRACE_PARENT_REGEX = /^([\da-f]{2})-([\da-f]{32})-([\da-f]{16})-([\da-f]{2})(-[^\s]{1,64})?$/i;
3446
+ var DEFAULT_VERSION = "00";
3447
+ var INVALID_VERSION = "ff";
3448
+ var INVALID_TRACE_ID = "00000000000000000000000000000000";
3449
+ var INVALID_SPAN_ID = "0000000000000000";
3450
+ var SAMPLED_FLAG = 0x01;
3451
+ function _isValid(value, len, invalidValue) {
3452
+ if (value && value[_DYN_LENGTH ] === len && value !== invalidValue) {
3453
+ return !!value.match(/^[\da-f]*$/i);
3454
+ }
3455
+ return false;
3456
+ }
3457
+ function _formatValue(value, len, defValue) {
3458
+ if (_isValid(value, len)) {
3459
+ return value;
3460
+ }
3461
+ return defValue;
3462
+ }
3463
+ function _formatFlags(value) {
3464
+ if (isNaN(value) || value < 0 || value > 255) {
3465
+ value = 0x01;
3466
+ }
3467
+ var result = value.toString(16);
3468
+ while (result[_DYN_LENGTH ] < 2) {
3469
+ result = "0" + result;
3470
+ }
3471
+ return result;
3472
+ }
3473
+ function createTraceParent(traceId, spanId, flags, version) {
3474
+ return {
3475
+ version: _isValid(version, 2, INVALID_VERSION) ? version : DEFAULT_VERSION,
3476
+ traceId: isValidTraceId(traceId) ? traceId : generateW3CId(),
3477
+ spanId: isValidSpanId(spanId) ? spanId : strLeft(generateW3CId(), 16),
3478
+ traceFlags: (!isNullOrUndefined(flags) && flags >= 0 && flags <= 0xFF ? flags : 1 )
3479
+ };
3480
+ }
3481
+ function parseTraceParent(value, selectIdx) {
3482
+ if (!value) {
3483
+ return null;
3484
+ }
3485
+ if (isArray(value)) {
3486
+ value = value[0] || STR_EMPTY$1;
3487
+ }
3488
+ if (!value || !isString(value) || value[_DYN_LENGTH ] > 8192) {
3489
+ return null;
3490
+ }
3491
+ if (value[_DYN_INDEX_OF ](",") !== -1) {
3492
+ var values = value[_DYN_SPLIT ](",");
3493
+ value = values[selectIdx > 0 && values[_DYN_LENGTH ] > selectIdx ? selectIdx : 0];
3494
+ }
3495
+ TRACE_PARENT_REGEX.lastIndex = 0;
3496
+ var match = TRACE_PARENT_REGEX.exec(strTrim(value));
3497
+ if (!match ||
3498
+ match[1] === INVALID_VERSION ||
3499
+ match[2] === INVALID_TRACE_ID ||
3500
+ match[3] === INVALID_SPAN_ID) {
3501
+ return null;
3502
+ }
3503
+ return {
3504
+ version: (match[1] || STR_EMPTY$1)[_DYN_TO_LOWER_CASE ](),
3505
+ traceId: (match[2] || STR_EMPTY$1)[_DYN_TO_LOWER_CASE ](),
3506
+ spanId: (match[3] || STR_EMPTY$1)[_DYN_TO_LOWER_CASE ](),
3507
+ traceFlags: parseInt(match[4], 16)
3508
+ };
3509
+ }
3510
+ function isValidTraceId(value) {
3511
+ return _isValid(value, 32, INVALID_TRACE_ID);
3512
+ }
3513
+ function isValidSpanId(value) {
3514
+ return _isValid(value, 16, INVALID_SPAN_ID);
3515
+ }
3516
+ function isValidTraceParent(value) {
3517
+ if (!value ||
3518
+ !_isValid(value[_DYN_VERSION ], 2, INVALID_VERSION) ||
3519
+ !_isValid(value[_DYN_TRACE_ID ], 32, INVALID_TRACE_ID) ||
3520
+ !_isValid(value[_DYN_SPAN_ID ], 16, INVALID_SPAN_ID) ||
3521
+ !_isValid(_formatFlags(value[_DYN_TRACE_FLAGS ]), 2)) {
3522
+ return false;
3523
+ }
3524
+ return true;
3525
+ }
3526
+ function isSampledFlag(value) {
3527
+ if (isValidTraceParent(value)) {
3528
+ return (value[_DYN_TRACE_FLAGS ] & SAMPLED_FLAG) === SAMPLED_FLAG;
3529
+ }
3530
+ return false;
3531
+ }
3532
+ function formatTraceParent(value) {
3533
+ if (value) {
3534
+ var flags = _formatFlags(value[_DYN_TRACE_FLAGS ]);
3535
+ if (!_isValid(flags, 2)) {
3536
+ flags = "01";
3537
+ }
3538
+ var version = value[_DYN_VERSION ] || DEFAULT_VERSION;
3539
+ if (version !== "00" && version !== "ff") {
3540
+ version = DEFAULT_VERSION;
3541
+ }
3542
+ return "".concat(version.toLowerCase(), "-").concat(_formatValue(value.traceId, 32, INVALID_TRACE_ID).toLowerCase(), "-").concat(_formatValue(value.spanId, 16, INVALID_SPAN_ID).toLowerCase(), "-").concat(flags.toLowerCase());
3543
+ }
3544
+ return STR_EMPTY$1;
3545
+ }
3546
+ function findW3cTraceParent(selectIdx) {
3547
+ var name = "traceparent";
3548
+ var traceParent = parseTraceParent(findMetaTag(name), selectIdx);
3549
+ if (!traceParent) {
3550
+ traceParent = parseTraceParent(findNamedServerTiming(name), selectIdx);
3551
+ }
3552
+ return traceParent;
3553
+ }
3554
+ function findAllScripts(doc) {
3555
+ var scripts = doc.getElementsByTagName("script");
3556
+ var result = [];
3557
+ arrForEach(scripts, function (script) {
3558
+ var src = script[_DYN_GET_ATTRIBUTE ]("src");
3559
+ if (src) {
3560
+ var crossOrigin = script[_DYN_GET_ATTRIBUTE ]("crossorigin");
3561
+ var async = script.hasAttribute("async") === true;
3562
+ var defer = script.hasAttribute("defer") === true;
3563
+ var referrerPolicy = script[_DYN_GET_ATTRIBUTE ]("referrerpolicy");
3564
+ var info = { url: src };
3565
+ if (crossOrigin) {
3566
+ info.crossOrigin = crossOrigin;
3567
+ }
3568
+ if (async) {
3569
+ info.async = async;
3570
+ }
3571
+ if (defer) {
3572
+ info.defer = defer;
3573
+ }
3574
+ if (referrerPolicy) {
3575
+ info.referrerPolicy = referrerPolicy;
3576
+ }
3577
+ result[_DYN_PUSH ](info);
3578
+ }
3579
+ });
3580
+ return result;
3581
+ }
3582
+
3583
+ var MAX_TRACE_STATE_MEMBERS = 32;
3584
+ var MAX_TRACE_STATE_LEN = 512;
3585
+ var LCALPHA = "[a-z]";
3586
+ var LCALPHA_DIGIT = "[a-z\\d]";
3587
+ var LCALPHA_DIGIT_UNDERSCORE_DASH_STAR_SLASH = "[a-z\\d_\\-*\\/]";
3588
+ var SIMPLE_KEY = "(" + LCALPHA + LCALPHA_DIGIT_UNDERSCORE_DASH_STAR_SLASH + "{0,255})";
3589
+ var TENANT_ID = "(" + LCALPHA_DIGIT + LCALPHA_DIGIT_UNDERSCORE_DASH_STAR_SLASH + "{0,240})";
3590
+ var SYSTEM_ID = "(" + LCALPHA + LCALPHA_DIGIT_UNDERSCORE_DASH_STAR_SLASH + "{0,13})";
3591
+ var MULTI_TENANT_KEY = "(" + TENANT_ID + "@" + SYSTEM_ID + ")";
3592
+ var NBLK_CHAR = "\x21-\x2B\\--\x3C\x3E-\x7E";
3593
+ var TRACESTATE_VALUE = "[\x20" + NBLK_CHAR + "]{0,255}[" + NBLK_CHAR + "]";
3594
+ var TRACESTATE_KVP_REGEX = new RegExp("^\\s*((?:" + SIMPLE_KEY + "|" + MULTI_TENANT_KEY + ")=(" + TRACESTATE_VALUE + "))\\s*$");
3595
+ function _parseListMember(value) {
3596
+ if (value) {
3597
+ TRACESTATE_KVP_REGEX.lastIndex = 0;
3598
+ var match = TRACESTATE_KVP_REGEX.exec(value);
3599
+ if (match && match[_DYN_LENGTH ] >= 7 && match[1] && match[6]) {
3600
+ var type = match[3] ? 1 : 0 ;
3601
+ var multiTenant = null;
3602
+ if (type === 1 ) {
3603
+ multiTenant = {
3604
+ tenantId: match[4],
3605
+ systemId: match[5]
3606
+ };
3607
+ }
3608
+ var parts = {
3609
+ type: type,
3610
+ key: match[2],
3611
+ multiTenant: multiTenant,
3612
+ value: match[6]
3613
+ };
3614
+ return parts;
3615
+ }
3616
+ }
3617
+ return null;
3618
+ }
3619
+ function _parseTraceStateList(value) {
3620
+ var items = [];
3621
+ if (value) {
3622
+ var addedKeys_1 = [];
3623
+ arrForEach(strSplit(value, ","), function (member) {
3624
+ var parts = _parseListMember(member);
3625
+ if (parts) {
3626
+ if (arrIndexOf(addedKeys_1, parts.key) === -1) {
3627
+ items[_DYN_PUSH ](parts);
3628
+ addedKeys_1[_DYN_PUSH ](parts.key);
3629
+ if (items[_DYN_LENGTH ] >= MAX_TRACE_STATE_MEMBERS) {
3630
+ return -1;
3631
+ }
3632
+ }
3633
+ }
3634
+ });
3635
+ }
3636
+ return items;
3637
+ }
3638
+ function _indexOf(items, key) {
3639
+ for (var lp = 0; lp < items[_DYN_LENGTH ]; lp++) {
3640
+ if (items[lp].key === key) {
3641
+ return lp;
3642
+ }
3643
+ }
3644
+ return -1;
3645
+ }
3646
+ function _keys(items, parent) {
3647
+ var keys = [];
3648
+ var delKeys = [];
3649
+ arrForEach(items, function (member) {
3650
+ if (member[_DYN_VALUE ] != null) {
3651
+ keys[_DYN_PUSH ](member.key);
3652
+ }
3653
+ else {
3654
+ delKeys[_DYN_PUSH ](member.key);
3655
+ }
3656
+ });
3657
+ if (parent) {
3658
+ arrForEach(parent.keys, function (key) {
3659
+ if (arrIndexOf(keys, key) === -1 && arrIndexOf(delKeys, key) === -1) {
3660
+ keys[_DYN_PUSH ](key);
3661
+ }
3662
+ });
3663
+ }
3664
+ return keys;
3665
+ }
3666
+ function _isEmpty(items, parent) {
3667
+ var delKeys;
3668
+ var isEmpty = true;
3669
+ if (items && items[_DYN_LENGTH ] > 0) {
3670
+ arrForEach(items, function (member) {
3671
+ if (member[_DYN_VALUE ] != null) {
3672
+ isEmpty = false;
3673
+ }
3674
+ else {
3675
+ if (!delKeys) {
3676
+ delKeys = [];
3677
+ }
3678
+ delKeys[_DYN_PUSH ](member.key);
3679
+ }
3680
+ });
3681
+ }
3682
+ if (isEmpty && parent) {
3683
+ isEmpty = parent.isEmpty;
3684
+ if (!isEmpty && delKeys && delKeys[_DYN_LENGTH ] > 0) {
3685
+ isEmpty = true;
3686
+ arrForEach(parent.keys, function (key) {
3687
+ if (arrIndexOf(delKeys, key) === -1) {
3688
+ isEmpty = false;
3689
+ return -1;
3690
+ }
3691
+ });
3692
+ }
3693
+ }
3694
+ return isEmpty;
3695
+ }
3696
+ function isW3cTraceState(value) {
3697
+ return !!(value && isArray(value.keys) && isFunction(value.get) && isFunction(value.set) && isFunction(value.del) && isFunction(value.hdrs));
3698
+ }
3699
+ function createW3cTraceState(value, parent) {
3700
+ var cachedItems = createDeferredCachedValue(function () { return safe(_parseTraceStateList, [value || STR_EMPTY$1]).v || []; });
3701
+ function _get(key) {
3702
+ var value;
3703
+ var theItems = cachedItems.v;
3704
+ var idx = _indexOf(theItems, key);
3705
+ if (idx !== -1) {
3706
+ var itmValue = theItems[idx][_DYN_VALUE ];
3707
+ if (itmValue != null) {
3708
+ value = itmValue;
3709
+ }
3710
+ }
3711
+ else if (parent) {
3712
+ value = parent.get(key);
3713
+ }
3714
+ return value;
3715
+ }
3716
+ function _setMember(member) {
3717
+ if (member) {
3718
+ var theItems = cachedItems.v;
3719
+ var idx = _indexOf(theItems, member.key);
3720
+ if (idx !== -1) {
3721
+ theItems[_DYN_SPLICE ](idx, 1);
3722
+ }
3723
+ theItems.unshift(member);
3724
+ cachedItems = createCachedValue(theItems);
3725
+ return 0;
3726
+ }
3727
+ return -1;
3728
+ }
3729
+ function _set(key, value) {
3730
+ var member;
3731
+ if (key && isString(key) && !isNullOrUndefined(value) && isString(value)) {
3732
+ member = _parseListMember(key + "=" + value);
3733
+ }
3734
+ return _setMember(member);
3735
+ }
3736
+ function _del(key) {
3737
+ _setMember({
3738
+ type: 2 ,
3739
+ key: key
3740
+ });
3741
+ }
3742
+ function _headers(maxHeaders, maxKeys, maxLen) {
3743
+ var results = [];
3744
+ var result = STR_EMPTY$1;
3745
+ var numKeys = 0;
3746
+ var len = 0;
3747
+ maxKeys = maxKeys || MAX_TRACE_STATE_MEMBERS;
3748
+ maxLen = maxLen || MAX_TRACE_STATE_LEN;
3749
+ var theItems = cachedItems.v;
3750
+ arrForEach(_keys(theItems, parent), function (key) {
3751
+ var value = _get(key);
3752
+ if (!isNullOrUndefined(value) && isString(value)) {
3753
+ numKeys++;
3754
+ var val = key + "=" + value;
3755
+ var valLen = val[_DYN_LENGTH ];
3756
+ if (len + 1 + valLen >= maxLen) {
3757
+ results[_DYN_PUSH ](result);
3758
+ if (maxHeaders && results[_DYN_LENGTH ] <= maxHeaders) {
3759
+ return -1;
3760
+ }
3761
+ result = STR_EMPTY$1;
3762
+ len = 0;
3763
+ }
3764
+ if (result[_DYN_LENGTH ] > 0) {
3765
+ result += ",";
3766
+ len++;
3767
+ }
3768
+ result += val;
3769
+ len += valLen;
3770
+ if (numKeys >= maxKeys) {
3771
+ return -1;
3772
+ }
3773
+ }
3774
+ });
3775
+ if (result) {
3776
+ results[_DYN_PUSH ](result);
3777
+ }
3778
+ return results;
3779
+ }
3780
+ var traceStateList = {
3781
+ keys: [],
3782
+ isEmpty: false,
3783
+ get: _get,
3784
+ set: _set,
3785
+ del: _del,
3786
+ hdrs: _headers,
3787
+ child: function () { return createW3cTraceState(null, traceStateList); }
3788
+ };
3789
+ function _toString() {
3790
+ var headers = traceStateList.hdrs(1);
3791
+ return headers[_DYN_LENGTH ] > 0 ? headers[0] : STR_EMPTY$1;
3792
+ }
3793
+ objDefineProps(traceStateList, {
3794
+ "keys": {
3795
+ g: function () { return _keys(cachedItems.v, parent); }
3796
+ },
3797
+ "isEmpty": {
3798
+ g: function () { return _isEmpty(cachedItems.v, parent); }
3799
+ },
3800
+ "toString": {
3801
+ v: _toString,
3802
+ e: false
3803
+ },
3804
+ "_p": {
3805
+ v: parent,
3806
+ e: false
3807
+ }
3808
+ });
3809
+ objDefine(traceStateList, getKnownSymbol(11 ), { g: _toString });
3810
+ return traceStateList;
3811
+ }
3812
+ function snapshotW3cTraceState(traceState) {
3813
+ var snapshot = createW3cTraceState(null, null);
3814
+ if (traceState) {
3815
+ var theKeys = traceState.keys;
3816
+ for (var i = theKeys[_DYN_LENGTH ] - 1; i >= 0; i--) {
3817
+ var key = theKeys[i];
3818
+ var value = traceState.get(key);
3819
+ if (!isNullOrUndefined(value) && isString(value)) {
3820
+ snapshot.set(key, value);
3821
+ }
3822
+ }
3823
+ }
3824
+ return snapshot;
3825
+ }
3826
+ function findW3cTraceState() {
3827
+ var name = "tracestate";
3828
+ var traceState = null;
3829
+ var metaTags = findMetaTags(name);
3830
+ if (metaTags[_DYN_LENGTH ] > 0) {
3831
+ traceState = createW3cTraceState(metaTags.join(","));
3212
3832
  }
3213
- else {
3214
- throwInvalidAccess(message);
3833
+ if (!traceState) {
3834
+ var serverTimings = findNamedServerTimings(name);
3835
+ if (serverTimings[_DYN_LENGTH ] > 0) {
3836
+ traceState = createW3cTraceState(serverTimings.join(","));
3837
+ }
3215
3838
  }
3839
+ return traceState;
3216
3840
  }
3217
- function createDynamicConfig(config, defaultConfig, logger, inPlace) {
3218
- var dynamicHandler = _createDynamicHandler(logger, config || {}, inPlace);
3219
- if (defaultConfig) {
3220
- dynamicHandler.setDf(dynamicHandler.cfg, defaultConfig);
3841
+
3842
+ var _otelTraceState;
3843
+ function _initOTelTraceStateSymbol() {
3844
+ if (!_otelTraceState) {
3845
+ _otelTraceState = createCachedValue(symbolFor("otTraceState"));
3846
+ }
3847
+ return _otelTraceState;
3848
+ }
3849
+ function _createOTelTraceState(traceState) {
3850
+ if (!_otelTraceState) {
3851
+ _otelTraceState = _initOTelTraceStateSymbol();
3852
+ }
3853
+ var otTraceState = {
3854
+ set: function (key, value) {
3855
+ var newState = createW3cTraceState(STR_EMPTY$1, traceState);
3856
+ newState.set(key, value);
3857
+ return _createOTelTraceState(newState);
3858
+ },
3859
+ unset: function (key) {
3860
+ var newState = createW3cTraceState(STR_EMPTY$1, traceState);
3861
+ newState.del(key);
3862
+ return _createOTelTraceState(newState);
3863
+ },
3864
+ get: function (key) {
3865
+ return traceState.get(key);
3866
+ },
3867
+ serialize: function () {
3868
+ var headers = traceState.hdrs(1);
3869
+ if (headers[_DYN_LENGTH ] > 0) {
3870
+ return headers[0];
3871
+ }
3872
+ return STR_EMPTY$1;
3873
+ }
3874
+ };
3875
+ objDefine(otTraceState, _otelTraceState.v, { g: function () { return traceState; } });
3876
+ return otTraceState;
3877
+ }
3878
+ function isOTelTraceState(value) {
3879
+ if (!_otelTraceState) {
3880
+ _otelTraceState = _initOTelTraceStateSymbol();
3221
3881
  }
3222
- return dynamicHandler;
3882
+ if (value && value[_otelTraceState.v]) {
3883
+ return true;
3884
+ }
3885
+ return value && isFunction(value.serialize) && isFunction(value.unset) && isFunction(value.get) && isFunction(value.set);
3223
3886
  }
3224
- function onConfigChange(config, configHandler, logger) {
3225
- var handler = config[CFG_HANDLER_LINK] || config;
3226
- if (handler.cfg && (handler.cfg === config || handler.cfg[CFG_HANDLER_LINK] === handler)) {
3227
- return handler[_DYN_WATCH ](configHandler);
3887
+ function createOTelTraceState(value) {
3888
+ var traceState = null;
3889
+ if (isOTelTraceState(value)) {
3890
+ var parentTraceState = void 0;
3891
+ if (_otelTraceState) {
3892
+ parentTraceState = value[_otelTraceState.v];
3893
+ }
3894
+ if (parentTraceState) {
3895
+ traceState = createW3cTraceState(STR_EMPTY$1, parentTraceState);
3896
+ }
3897
+ else {
3898
+ traceState = createW3cTraceState(value.serialize());
3899
+ }
3228
3900
  }
3229
- _logInvalidAccess(logger, STR_NOT_DYNAMIC_ERROR + dumpObj(config));
3230
- return createDynamicConfig(config, null, logger)[_DYN_WATCH ](configHandler);
3901
+ else if (isW3cTraceState(value)) {
3902
+ traceState = value;
3903
+ }
3904
+ else {
3905
+ traceState = createW3cTraceState(isString(value) ? value : STR_EMPTY$1);
3906
+ }
3907
+ return _createOTelTraceState(traceState);
3908
+ }
3909
+
3910
+ function createOTelSpanContext(traceContext) {
3911
+ var traceId = isValidTraceId(traceContext[_DYN_TRACE_ID ]) ? traceContext[_DYN_TRACE_ID ] : INVALID_TRACE_ID;
3912
+ var spanId = isValidSpanId(traceContext[_DYN_SPAN_ID ]) ? traceContext[_DYN_SPAN_ID ] : INVALID_SPAN_ID;
3913
+ var isRemote = traceContext.isRemote;
3914
+ var traceFlags = (!isNullOrUndefined(traceContext[_DYN_TRACE_FLAGS ]) ? traceContext[_DYN_TRACE_FLAGS ] : 1 );
3915
+ var otTraceState = null;
3916
+ var traceContextObj = {
3917
+ traceId: traceId,
3918
+ spanId: spanId,
3919
+ traceFlags: traceFlags
3920
+ };
3921
+ return objDefineProps(traceContextObj, {
3922
+ traceId: {
3923
+ g: function () { return traceId; },
3924
+ s: function (value) { return traceId = isValidTraceId(value) ? value : INVALID_TRACE_ID; }
3925
+ },
3926
+ spanId: {
3927
+ g: function () { return spanId; },
3928
+ s: function (value) { return spanId = isValidSpanId(value) ? value : INVALID_SPAN_ID; }
3929
+ },
3930
+ isRemote: {
3931
+ g: function () { return isRemote; }
3932
+ },
3933
+ traceFlags: {
3934
+ g: function () { return traceFlags; },
3935
+ s: function (value) { return traceFlags = value; }
3936
+ },
3937
+ traceState: {
3938
+ g: function () {
3939
+ if (!otTraceState) {
3940
+ otTraceState = createOTelTraceState(traceContext[_DYN_TRACE_STATE ]);
3941
+ }
3942
+ return otTraceState;
3943
+ },
3944
+ s: function (value) {
3945
+ otTraceState = value;
3946
+ }
3947
+ }
3948
+ });
3231
3949
  }
3232
3950
 
3233
3951
  function runTargetUnload(target, isAsync) {
@@ -4122,167 +4840,6 @@
4122
4840
  return _defaultPerfManager;
4123
4841
  }
4124
4842
 
4125
- var Undefined = strShimUndefined;
4126
- function newGuid() {
4127
- var uuid = generateW3CId();
4128
- return strSubstring(uuid, 0, 8) + "-" + strSubstring(uuid, 8, 12) + "-" + strSubstring(uuid, 12, 16) + "-" + strSubstring(uuid, 16, 20) + "-" + strSubstring(uuid, 20);
4129
- }
4130
- function generateW3CId() {
4131
- var hexValues = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"];
4132
- var oct = STR_EMPTY$1, tmp;
4133
- for (var a = 0; a < 4; a++) {
4134
- tmp = random32();
4135
- oct +=
4136
- hexValues[tmp & 0xF] +
4137
- hexValues[tmp >> 4 & 0xF] +
4138
- hexValues[tmp >> 8 & 0xF] +
4139
- hexValues[tmp >> 12 & 0xF] +
4140
- hexValues[tmp >> 16 & 0xF] +
4141
- hexValues[tmp >> 20 & 0xF] +
4142
- hexValues[tmp >> 24 & 0xF] +
4143
- hexValues[tmp >> 28 & 0xF];
4144
- }
4145
- var clockSequenceHi = hexValues[8 + (random32() & 0x03) | 0];
4146
- return strSubstr(oct, 0, 8) + strSubstr(oct, 9, 4) + "4" + strSubstr(oct, 13, 3) + clockSequenceHi + strSubstr(oct, 16, 3) + strSubstr(oct, 19, 12);
4147
- }
4148
-
4149
- var TRACE_PARENT_REGEX = /^([\da-f]{2})-([\da-f]{32})-([\da-f]{16})-([\da-f]{2})(-[^\s]{1,64})?$/i;
4150
- var DEFAULT_VERSION = "00";
4151
- var INVALID_VERSION = "ff";
4152
- var INVALID_TRACE_ID = "00000000000000000000000000000000";
4153
- var INVALID_SPAN_ID = "0000000000000000";
4154
- var SAMPLED_FLAG = 0x01;
4155
- function _isValid(value, len, invalidValue) {
4156
- if (value && value[_DYN_LENGTH ] === len && value !== invalidValue) {
4157
- return !!value.match(/^[\da-f]*$/i);
4158
- }
4159
- return false;
4160
- }
4161
- function _formatValue(value, len, defValue) {
4162
- if (_isValid(value, len)) {
4163
- return value;
4164
- }
4165
- return defValue;
4166
- }
4167
- function _formatFlags(value) {
4168
- if (isNaN(value) || value < 0 || value > 255) {
4169
- value = 0x01;
4170
- }
4171
- var result = value.toString(16);
4172
- while (result[_DYN_LENGTH ] < 2) {
4173
- result = "0" + result;
4174
- }
4175
- return result;
4176
- }
4177
- function createTraceParent(traceId, spanId, flags, version) {
4178
- return {
4179
- version: _isValid(version, 2, INVALID_VERSION) ? version : DEFAULT_VERSION,
4180
- traceId: isValidTraceId(traceId) ? traceId : generateW3CId(),
4181
- spanId: isValidSpanId(spanId) ? spanId : strLeft(generateW3CId(), 16),
4182
- traceFlags: flags >= 0 && flags <= 0xFF ? flags : 1
4183
- };
4184
- }
4185
- function parseTraceParent(value, selectIdx) {
4186
- if (!value) {
4187
- return null;
4188
- }
4189
- if (isArray(value)) {
4190
- value = value[0] || "";
4191
- }
4192
- if (!value || !isString(value) || value[_DYN_LENGTH ] > 8192) {
4193
- return null;
4194
- }
4195
- if (value[_DYN_INDEX_OF ](",") !== -1) {
4196
- var values = value[_DYN_SPLIT ](",");
4197
- value = values[selectIdx > 0 && values[_DYN_LENGTH ] > selectIdx ? selectIdx : 0];
4198
- }
4199
- var match = TRACE_PARENT_REGEX.exec(strTrim(value));
4200
- if (!match ||
4201
- match[1] === INVALID_VERSION ||
4202
- match[2] === INVALID_TRACE_ID ||
4203
- match[3] === INVALID_SPAN_ID) {
4204
- return null;
4205
- }
4206
- return {
4207
- version: (match[1] || STR_EMPTY$1)[_DYN_TO_LOWER_CASE ](),
4208
- traceId: (match[2] || STR_EMPTY$1)[_DYN_TO_LOWER_CASE ](),
4209
- spanId: (match[3] || STR_EMPTY$1)[_DYN_TO_LOWER_CASE ](),
4210
- traceFlags: parseInt(match[4], 16)
4211
- };
4212
- }
4213
- function isValidTraceId(value) {
4214
- return _isValid(value, 32, INVALID_TRACE_ID);
4215
- }
4216
- function isValidSpanId(value) {
4217
- return _isValid(value, 16, INVALID_SPAN_ID);
4218
- }
4219
- function isValidTraceParent(value) {
4220
- if (!value ||
4221
- !_isValid(value[_DYN_VERSION ], 2, INVALID_VERSION) ||
4222
- !_isValid(value.traceId, 32, INVALID_TRACE_ID) ||
4223
- !_isValid(value.spanId, 16, INVALID_SPAN_ID) ||
4224
- !_isValid(_formatFlags(value[_DYN_TRACE_FLAGS ]), 2)) {
4225
- return false;
4226
- }
4227
- return true;
4228
- }
4229
- function isSampledFlag(value) {
4230
- if (isValidTraceParent(value)) {
4231
- return (value[_DYN_TRACE_FLAGS ] & SAMPLED_FLAG) === SAMPLED_FLAG;
4232
- }
4233
- return false;
4234
- }
4235
- function formatTraceParent(value) {
4236
- if (value) {
4237
- var flags = _formatFlags(value[_DYN_TRACE_FLAGS ]);
4238
- if (!_isValid(flags, 2)) {
4239
- flags = "01";
4240
- }
4241
- var version = value[_DYN_VERSION ] || DEFAULT_VERSION;
4242
- if (version !== "00" && version !== "ff") {
4243
- version = DEFAULT_VERSION;
4244
- }
4245
- return "".concat(version.toLowerCase(), "-").concat(_formatValue(value.traceId, 32, INVALID_TRACE_ID).toLowerCase(), "-").concat(_formatValue(value.spanId, 16, INVALID_SPAN_ID).toLowerCase(), "-").concat(flags.toLowerCase());
4246
- }
4247
- return "";
4248
- }
4249
- function findW3cTraceParent(selectIdx) {
4250
- var name = "traceparent";
4251
- var traceParent = parseTraceParent(findMetaTag(name), selectIdx);
4252
- if (!traceParent) {
4253
- traceParent = parseTraceParent(findNamedServerTiming(name), selectIdx);
4254
- }
4255
- return traceParent;
4256
- }
4257
- function findAllScripts(doc) {
4258
- var scripts = doc.getElementsByTagName("script");
4259
- var result = [];
4260
- arrForEach(scripts, function (script) {
4261
- var src = script[_DYN_GET_ATTRIBUTE ]("src");
4262
- if (src) {
4263
- var crossOrigin = script[_DYN_GET_ATTRIBUTE ]("crossorigin");
4264
- var async = script.hasAttribute("async") === true;
4265
- var defer = script.hasAttribute("defer") === true;
4266
- var referrerPolicy = script[_DYN_GET_ATTRIBUTE ]("referrerpolicy");
4267
- var info = { url: src };
4268
- if (crossOrigin) {
4269
- info.crossOrigin = crossOrigin;
4270
- }
4271
- if (async) {
4272
- info.async = async;
4273
- }
4274
- if (defer) {
4275
- info.defer = defer;
4276
- }
4277
- if (referrerPolicy) {
4278
- info.referrerPolicy = referrerPolicy;
4279
- }
4280
- result[_DYN_PUSH ](info);
4281
- }
4282
- });
4283
- return result;
4284
- }
4285
-
4286
4843
  var pluginStateData = createElmNodeData("plugin");
4287
4844
  function _getPluginState(plugin) {
4288
4845
  return pluginStateData.get(plugin, "state", {}, true);
@@ -4356,42 +4913,147 @@
4356
4913
  }
4357
4914
  return _doUnload();
4358
4915
  }
4359
- function createDistributedTraceContext(parentCtx) {
4360
- var trace = {};
4361
- return {
4362
- getName: function () {
4363
- return trace[_DYN_NAME ];
4916
+ function isDistributedTraceContext(obj) {
4917
+ return obj &&
4918
+ isFunction(obj.getName) &&
4919
+ isFunction(obj.getTraceId) &&
4920
+ isFunction(obj.getSpanId) &&
4921
+ isFunction(obj.getTraceFlags) &&
4922
+ isFunction(obj.setName) &&
4923
+ isFunction(obj.setTraceId) &&
4924
+ isFunction(obj.setSpanId) &&
4925
+ isFunction(obj[_DYN_SET_TRACE_FLAGS ]);
4926
+ }
4927
+ function createDistributedTraceContext(parent) {
4928
+ var _a;
4929
+ var parentCtx = null;
4930
+ var spanContext = null;
4931
+ var traceId = (parent && isValidTraceId(parent[_DYN_TRACE_ID ])) ? parent[_DYN_TRACE_ID ] : generateW3CId();
4932
+ var spanId = (parent && isValidSpanId(parent[_DYN_SPAN_ID ])) ? parent[_DYN_SPAN_ID ] : STR_EMPTY$1;
4933
+ var traceFlags = parent ? parent[_DYN_TRACE_FLAGS ] : UNDEFINED_VALUE;
4934
+ var isRemote = parent ? parent.isRemote : false;
4935
+ var pageName = STR_EMPTY$1;
4936
+ var traceState = null;
4937
+ if (parent) {
4938
+ if (isDistributedTraceContext(parent)) {
4939
+ parentCtx = parent;
4940
+ pageName = parentCtx.getName();
4941
+ }
4942
+ else {
4943
+ spanContext = parent;
4944
+ }
4945
+ }
4946
+ if (!pageName) {
4947
+ pageName = "_unknown_";
4948
+ var location_1 = getLocation();
4949
+ if (location_1 && location_1.pathname) {
4950
+ pageName = location_1.pathname + (location_1.hash || "");
4951
+ }
4952
+ }
4953
+ function _getName() {
4954
+ return pageName;
4955
+ }
4956
+ function _setPageNameFn(updateParent) {
4957
+ return function (newValue) {
4958
+ if (updateParent) {
4959
+ parentCtx && parentCtx.setName(newValue);
4960
+ }
4961
+ pageName = newValue;
4962
+ };
4963
+ }
4964
+ function _getTraceId() {
4965
+ return traceId;
4966
+ }
4967
+ function _setTraceIdFn(updateParent) {
4968
+ return function (newValue) {
4969
+ if (updateParent) {
4970
+ parentCtx && parentCtx.setTraceId(newValue);
4971
+ }
4972
+ if (isValidTraceId(newValue)) {
4973
+ traceId = newValue;
4974
+ }
4975
+ };
4976
+ }
4977
+ function _getSpanId() {
4978
+ return spanId;
4979
+ }
4980
+ function _setSpanIdFn(updateParent) {
4981
+ return function (newValue) {
4982
+ if (updateParent) {
4983
+ parentCtx && parentCtx.setSpanId(newValue);
4984
+ }
4985
+ if (isValidSpanId(newValue)) {
4986
+ spanId = newValue;
4987
+ }
4988
+ };
4989
+ }
4990
+ function _getTraceFlags() {
4991
+ return traceFlags;
4992
+ }
4993
+ function _setTraceFlagsFn(updateParent) {
4994
+ return function (newTraceFlags) {
4995
+ if (updateParent) {
4996
+ parentCtx && parentCtx[_DYN_SET_TRACE_FLAGS ](newTraceFlags);
4997
+ }
4998
+ traceFlags = newTraceFlags;
4999
+ };
5000
+ }
5001
+ function _getTraceState() {
5002
+ if (!traceState) {
5003
+ if (spanContext && spanContext[_DYN_TRACE_STATE ]) {
5004
+ traceState = createW3cTraceState(spanContext[_DYN_TRACE_STATE ].serialize() || STR_EMPTY$1, parentCtx ? parentCtx[_DYN_TRACE_STATE ] : undefined);
5005
+ }
5006
+ else {
5007
+ traceState = createW3cTraceState(STR_EMPTY$1, parentCtx ? parentCtx[_DYN_TRACE_STATE ] : undefined);
5008
+ }
5009
+ }
5010
+ return traceState;
5011
+ }
5012
+ var traceCtx = (_a = {
5013
+ getName: _getName,
5014
+ setName: _setPageNameFn(true),
5015
+ getTraceId: _getTraceId,
5016
+ setTraceId: _setTraceIdFn(true),
5017
+ getSpanId: _getSpanId,
5018
+ setSpanId: _setSpanIdFn(true),
5019
+ getTraceFlags: _getTraceFlags
4364
5020
  },
4365
- setName: function (newValue) {
4366
- parentCtx && parentCtx.setName(newValue);
4367
- trace[_DYN_NAME ] = newValue;
5021
+ _a[_DYN_SET_TRACE_FLAGS ] = _setTraceFlagsFn(true),
5022
+ _a.traceId = traceId,
5023
+ _a.spanId = spanId,
5024
+ _a.traceFlags = traceFlags,
5025
+ _a.traceState = traceState,
5026
+ _a.isRemote = isRemote,
5027
+ _a.pageName = pageName,
5028
+ _a);
5029
+ return objDefineProps(traceCtx, {
5030
+ pageName: {
5031
+ g: _getName,
5032
+ s: _setPageNameFn(false)
4368
5033
  },
4369
- getTraceId: function () {
4370
- return trace.traceId;
5034
+ traceId: {
5035
+ g: _getTraceId,
5036
+ s: _setTraceIdFn(false)
4371
5037
  },
4372
- setTraceId: function (newValue) {
4373
- parentCtx && parentCtx.setTraceId(newValue);
4374
- if (isValidTraceId(newValue)) {
4375
- trace.traceId = newValue;
4376
- }
5038
+ spanId: {
5039
+ g: _getSpanId,
5040
+ s: _setSpanIdFn(false)
4377
5041
  },
4378
- getSpanId: function () {
4379
- return trace.spanId;
5042
+ traceFlags: {
5043
+ g: _getTraceFlags,
5044
+ s: _setTraceFlagsFn(false)
4380
5045
  },
4381
- setSpanId: function (newValue) {
4382
- parentCtx && parentCtx.setSpanId(newValue);
4383
- if (isValidSpanId(newValue)) {
4384
- trace.spanId = newValue;
4385
- }
5046
+ isRemote: {
5047
+ v: isRemote,
5048
+ w: false
4386
5049
  },
4387
- getTraceFlags: function () {
4388
- return trace[_DYN_TRACE_FLAGS ];
5050
+ traceState: {
5051
+ g: _getTraceState
4389
5052
  },
4390
- setTraceFlags: function (newTraceFlags) {
4391
- parentCtx && parentCtx.setTraceFlags(newTraceFlags);
4392
- trace[_DYN_TRACE_FLAGS ] = newTraceFlags;
5053
+ parentCtx: {
5054
+ g: function () { return parentCtx; }
4393
5055
  }
4394
- };
5056
+ });
4395
5057
  }
4396
5058
 
4397
5059
  var strTelemetryPluginChain = "TelemetryPluginChain";
@@ -4477,27 +5139,26 @@
4477
5139
  }
4478
5140
  function _getExtCfg(identifier, createIfMissing) {
4479
5141
  var idCfg = null;
4480
- var cfg = dynamicHandler.cfg;
5142
+ var extCfg = _getCfg(dynamicHandler.cfg, "extensionConfig", createIfMissing);
5143
+ if (extCfg) {
5144
+ idCfg = _getCfg(extCfg, identifier, createIfMissing);
5145
+ }
5146
+ return idCfg;
5147
+ }
5148
+ function _getCfg(cfg, identifier, createIfMissing) {
5149
+ var idCfg = null;
4481
5150
  if (cfg && identifier) {
4482
- var extCfg = cfg[STR_EXTENSION_CONFIG ];
4483
- if (!extCfg && createIfMissing) {
4484
- extCfg = {};
4485
- }
4486
- cfg[STR_EXTENSION_CONFIG] = extCfg;
4487
- extCfg = dynamicHandler.ref(cfg, STR_EXTENSION_CONFIG);
4488
- if (extCfg) {
4489
- idCfg = extCfg[identifier];
4490
- if (!idCfg && createIfMissing) {
4491
- idCfg = {};
4492
- }
4493
- extCfg[identifier] = idCfg;
4494
- idCfg = dynamicHandler.ref(extCfg, identifier);
5151
+ idCfg = cfg[identifier];
5152
+ if (!idCfg && createIfMissing) {
5153
+ idCfg = {};
4495
5154
  }
5155
+ cfg[identifier] = idCfg;
5156
+ idCfg = dynamicHandler.ref(cfg, identifier);
4496
5157
  }
4497
5158
  return idCfg;
4498
5159
  }
4499
- function _resolveExtCfg(identifier, defaultValues) {
4500
- var newConfig = _getExtCfg(identifier, true);
5160
+ function _resolveExtCfg(identifier, defaultValues, rootOnly) {
5161
+ var newConfig = rootOnly ? _getCfg(dynamicHandler.cfg, identifier, true) : _getExtCfg(identifier, true);
4501
5162
  if (defaultValues) {
4502
5163
  objForEachKey(defaultValues, function (field, defaultValue) {
4503
5164
  if (isNullOrUndefined(newConfig[field])) {
@@ -5047,6 +5708,7 @@
5047
5708
  _a[STR_CREATE_PERF_MGR] = UNDEFINED_VALUE,
5048
5709
  _a.loggingLevelConsole = 0 ,
5049
5710
  _a.diagnosticLogInterval = UNDEFINED_VALUE,
5711
+ _a.traceHdrMode = 3 ,
5050
5712
  _a));
5051
5713
  function _createPerfManager(core, notificationMgr) {
5052
5714
  return new PerfManager(notificationMgr);
@@ -5166,6 +5828,21 @@
5166
5828
  }
5167
5829
  }, "toJSON", { v: function () { return "aicore::onCfgChange<" + JSON.stringify(unloadHook) + ">"; } });
5168
5830
  }
5831
+ function _getParentTraceCtx(mode) {
5832
+ var spanContext = null;
5833
+ var parentTrace = (mode & 1 ) ? findW3cTraceParent() : null;
5834
+ var parentTraceState = (mode & 2 ) ? findW3cTraceState() : null;
5835
+ if (parentTrace || parentTraceState) {
5836
+ spanContext = createOTelSpanContext({
5837
+ traceId: parentTrace ? parentTrace[_DYN_TRACE_ID ] : null,
5838
+ spanId: parentTrace ? parentTrace[_DYN_SPAN_ID ] : null,
5839
+ traceFlags: parentTrace ? parentTrace[_DYN_TRACE_FLAGS ] : UNDEFINED_VALUE,
5840
+ isRemote: true,
5841
+ traceState: parentTraceState ? createOTelTraceState(parentTraceState) : null
5842
+ });
5843
+ }
5844
+ return spanContext;
5845
+ }
5169
5846
  var AppInsightsCore = /** @class */ (function () {
5170
5847
  function AppInsightsCore() {
5171
5848
  var _configHandler;
@@ -5182,6 +5859,8 @@
5182
5859
  var _channels;
5183
5860
  var _isUnloading;
5184
5861
  var _telemetryInitializerPlugin;
5862
+ var _serverOTelCtx;
5863
+ var _serverTraceHdrMode;
5185
5864
  var _internalLogsEventName;
5186
5865
  var _evtNamespace;
5187
5866
  var _unloadHandlers;
@@ -5228,6 +5907,10 @@
5228
5907
  objForEachKey(extCfg, function (key) {
5229
5908
  details.ref(extCfg, key);
5230
5909
  });
5910
+ if (rootCfg[_DYN_TRACE_HDR_MODE ] !== _serverTraceHdrMode) {
5911
+ _serverOTelCtx = _getParentTraceCtx(rootCfg[_DYN_TRACE_HDR_MODE ]);
5912
+ _serverTraceHdrMode = rootCfg[_DYN_TRACE_HDR_MODE ];
5913
+ }
5231
5914
  }));
5232
5915
  _notificationManager = notificationManager;
5233
5916
  _debugListener = _initDebugListener(_configHandler, _hookContainer, _notificationManager && _self[_DYN_GET_NOTIFY_MGR ](), _debugListener);
@@ -5595,8 +6278,8 @@
5595
6278
  };
5596
6279
  _self.flush = _flushChannels;
5597
6280
  _self.getTraceCtx = function (createNew) {
5598
- if (!_traceCtx) {
5599
- _traceCtx = createDistributedTraceContext();
6281
+ if ((!_traceCtx && createNew !== false) || createNew === true) {
6282
+ _traceCtx = createDistributedTraceContext(_serverOTelCtx);
5600
6283
  }
5601
6284
  return _traceCtx;
5602
6285
  };
@@ -5691,6 +6374,8 @@
5691
6374
  cfgExtensions.splice(0, cfgExtensions[_DYN_LENGTH ]);
5692
6375
  arrAppend(cfgExtensions, _extensions);
5693
6376
  _telemetryInitializerPlugin = new TelemetryInitializerPlugin();
6377
+ _serverOTelCtx = null;
6378
+ _serverTraceHdrMode = 0 ;
5694
6379
  _eventQueue = [];
5695
6380
  runTargetUnload(_notificationManager, false);
5696
6381
  _notificationManager = null;
@@ -6796,12 +7481,12 @@
6796
7481
  removeEventListeners([strVisibilityChangeEvt], null, newNamespaces);
6797
7482
  }
6798
7483
 
6799
- var LoggingSeverity = createEnumStyle({
7484
+ var LoggingSeverity = ( /* @__PURE__ */createEnumStyle({
6800
7485
  DISABLED: 0 ,
6801
7486
  CRITICAL: 1 ,
6802
7487
  WARNING: 2 ,
6803
7488
  DEBUG: 3
6804
- });
7489
+ }));
6805
7490
 
6806
7491
  var aiInstrumentHooks = "_aiHooks";
6807
7492
  var cbNames = [
@@ -7031,6 +7716,7 @@
7031
7716
  exports.createClassFromInterface = createClassFromInterface;
7032
7717
  exports.createCookieMgr = createCookieMgr;
7033
7718
  exports.createCustomDomEvent = createCustomDomEvent;
7719
+ exports.createDistributedTraceContext = createDistributedTraceContext;
7034
7720
  exports.createDynamicConfig = createDynamicConfig;
7035
7721
  exports.createEnumStyle = createEnumStyle;
7036
7722
  exports.createProcessTelemetryContext = createProcessTelemetryContext;
@@ -7039,6 +7725,7 @@
7039
7725
  exports.createUnloadHandlerContainer = createUnloadHandlerContainer;
7040
7726
  exports.createUnloadHookContainer = createUnloadHookContainer;
7041
7727
  exports.createValueMap = createValueMap;
7728
+ exports.createW3cTraceState = createW3cTraceState;
7042
7729
  exports.dateNow = utcNow;
7043
7730
  exports.deepFreeze = objDeepFreeze;
7044
7731
  exports.detachEvent = detachEvent;
@@ -7048,10 +7735,12 @@
7048
7735
  exports.dumpObj = dumpObj;
7049
7736
  exports.eventOff = eventOff;
7050
7737
  exports.eventOn = eventOn;
7738
+ exports.fieldRedaction = fieldRedaction;
7051
7739
  exports.findAllScripts = findAllScripts;
7052
7740
  exports.findMetaTag = findMetaTag;
7053
7741
  exports.findNamedServerTiming = findNamedServerTiming;
7054
7742
  exports.findW3cTraceParent = findW3cTraceParent;
7743
+ exports.findW3cTraceState = findW3cTraceState;
7055
7744
  exports.forceDynamicConversion = forceDynamicConversion;
7056
7745
  exports.formatErrorMessageXdr = formatErrorMessageXdr;
7057
7746
  exports.formatErrorMessageXhr = formatErrorMessageXhr;
@@ -7110,6 +7799,7 @@
7110
7799
  exports.isValidSpanId = isValidSpanId;
7111
7800
  exports.isValidTraceId = isValidTraceId;
7112
7801
  exports.isValidTraceParent = isValidTraceParent;
7802
+ exports.isW3cTraceState = isW3cTraceState;
7113
7803
  exports.isXhrSupported = isXhrSupported;
7114
7804
  exports.mergeEvtNamespace = mergeEvtNamespace;
7115
7805
  exports.mwcRandom32 = mwcRandom32;
@@ -7148,6 +7838,7 @@
7148
7838
  exports.setEnableEnvMocks = setEnableEnvMocks;
7149
7839
  exports.setGblPerfMgr = setGblPerfMgr;
7150
7840
  exports.setValue = setValue;
7841
+ exports.snapshotW3cTraceState = snapshotW3cTraceState;
7151
7842
  exports.sortPlugins = sortPlugins;
7152
7843
  exports.strContains = strContains;
7153
7844
  exports.strEndsWith = strEndsWith;