@microsoft/applicationinsights-analytics-js 3.3.12-nightly3.2602-18 → 3.4.0-beta

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 (34) hide show
  1. package/browser/es5/applicationinsights-analytics-js.cjs.js +1328 -968
  2. package/browser/es5/applicationinsights-analytics-js.cjs.js.map +1 -1
  3. package/browser/es5/applicationinsights-analytics-js.cjs.min.js +2 -2
  4. package/browser/es5/applicationinsights-analytics-js.cjs.min.js.map +1 -1
  5. package/browser/es5/applicationinsights-analytics-js.gbl.js +1330 -970
  6. package/browser/es5/applicationinsights-analytics-js.gbl.js.map +1 -1
  7. package/browser/es5/applicationinsights-analytics-js.gbl.min.js +2 -2
  8. package/browser/es5/applicationinsights-analytics-js.gbl.min.js.map +1 -1
  9. package/browser/es5/applicationinsights-analytics-js.integrity.json +25 -25
  10. package/browser/es5/applicationinsights-analytics-js.js +1330 -970
  11. package/browser/es5/applicationinsights-analytics-js.js.map +1 -1
  12. package/browser/es5/applicationinsights-analytics-js.min.js +2 -2
  13. package/browser/es5/applicationinsights-analytics-js.min.js.map +1 -1
  14. package/dist/es5/applicationinsights-analytics-js.js +1328 -968
  15. package/dist/es5/applicationinsights-analytics-js.js.map +1 -1
  16. package/dist/es5/applicationinsights-analytics-js.min.js +2 -2
  17. package/dist/es5/applicationinsights-analytics-js.min.js.map +1 -1
  18. package/dist-es5/JavaScriptSDK/AnalyticsPlugin.js +45 -48
  19. package/dist-es5/JavaScriptSDK/AnalyticsPlugin.js.map +1 -1
  20. package/dist-es5/JavaScriptSDK/Interfaces/IAnalyticsConfig.js +1 -1
  21. package/dist-es5/JavaScriptSDK/Telemetry/PageViewManager.js +175 -181
  22. package/dist-es5/JavaScriptSDK/Telemetry/PageViewManager.js.map +1 -1
  23. package/dist-es5/JavaScriptSDK/Telemetry/PageViewPerformanceManager.js +87 -98
  24. package/dist-es5/JavaScriptSDK/Telemetry/PageViewPerformanceManager.js.map +1 -1
  25. package/dist-es5/JavaScriptSDK/Telemetry/PageVisitTimeManager.js +86 -94
  26. package/dist-es5/JavaScriptSDK/Telemetry/PageVisitTimeManager.js.map +1 -1
  27. package/dist-es5/JavaScriptSDK/Timing.js +19 -17
  28. package/dist-es5/JavaScriptSDK/Timing.js.map +1 -1
  29. package/dist-es5/__DynamicConstants.js +6 -6
  30. package/dist-es5/__DynamicConstants.js.map +1 -1
  31. package/dist-es5/applicationinsights-analytics-js.js +1 -1
  32. package/package.json +71 -72
  33. package/types/applicationinsights-analytics-js.d.ts +42 -12
  34. package/types/applicationinsights-analytics-js.namespaced.d.ts +2151 -34
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Web Analytics, 3.3.12-nightly3.2602-18
2
+ * Application Insights JavaScript SDK - Web Analytics, 3.4.0-beta
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  (function (global, factory) {
@@ -39,6 +39,7 @@
39
39
  var CALL = "call";
40
40
  var TO_STRING = "toString";
41
41
  var GET_OWN_PROPERTY_DESCRIPTOR = "getOwnPropertyDescriptor";
42
+ var GET_OWN_PROPERTY_SYMBOLS = "getOwnPropertySymbols";
42
43
  var ObjClass = ( /*#__PURE__*/_pureAssign(Object));
43
44
  var ObjProto = ( /*#__PURE__*/_pureRef(ObjClass, PROTOTYPE));
44
45
  var StrCls = ( /*#__PURE__*/_pureAssign(String));
@@ -120,6 +121,9 @@
120
121
  function _returnNothing() {
121
122
  return;
122
123
  }
124
+ function _returnEmptyArray() {
125
+ return [];
126
+ }
123
127
  function _returnFalse() {
124
128
  return false;
125
129
  }
@@ -204,7 +208,26 @@
204
208
  throwTypeError("\"" + asString(funcName) + "\" not defined for " + dumpObj(thisArg));
205
209
  };
206
210
  }
211
+ function _objPropertyIsEnum(obj, propKey) {
212
+ var desc;
213
+ var fn = ObjClass.getOwnPropertyDescriptor;
214
+ if (!isStrictNullOrUndefined(obj) && fn) {
215
+ desc = safe(fn, [obj, propKey]).v || NULL_VALUE;
216
+ }
217
+ if (!desc) {
218
+ desc = safe(function () {
219
+ for (var key in obj) {
220
+ if (key === propKey) {
221
+ return { enumerable: true };
222
+ }
223
+ }
224
+ }).v;
225
+ }
226
+ return (desc && desc.enumerable) || false;
227
+ }
228
+ var objPropertyIsEnumerable = ( /*#__PURE__*/_unwrapFunctionWithPoly("propertyIsEnumerable", NULL_VALUE, _objPropertyIsEnum));
207
229
  var _objGetOwnPropertyDescriptor$1 = ( /*#__PURE__*/_pureAssign(( /*#__PURE__*/_pureRef(ObjClass, GET_OWN_PROPERTY_DESCRIPTOR)), _returnNothing));
230
+ var _objGetOwnPropertySymbols = ( /*#__PURE__*/_pureAssign(( /*#__PURE__*/_pureRef(ObjClass, GET_OWN_PROPERTY_SYMBOLS)), _returnEmptyArray));
208
231
  var propMap = {
209
232
  e: "enumerable",
210
233
  c: "configurable",
@@ -237,6 +260,18 @@
237
260
  function objDefine(target, key, propDesc) {
238
261
  return objDefineProp(target, key, _createProp(propDesc));
239
262
  }
263
+ function objDefineProps(target, propDescMap) {
264
+ var props = {};
265
+ objForEachKey(propDescMap, function (key, value) {
266
+ props[key] = _createProp(value);
267
+ });
268
+ arrForEach(_objGetOwnPropertySymbols(propDescMap), function (sym) {
269
+ if (objPropertyIsEnumerable(propDescMap, sym)) {
270
+ props[sym] = _createProp(propDescMap[sym]);
271
+ }
272
+ });
273
+ return objDefineProperties(target, props);
274
+ }
240
275
  /*#__NO_SIDE_EFFECTS__*/
241
276
  function _createKeyValueMap(values, keyType, valueType, completeFn, writable) {
242
277
  var theMap = {};
@@ -505,6 +540,21 @@
505
540
  toJSON: function () { return value; }
506
541
  }, "v", { value: value });
507
542
  }
543
+ /*#__NO_SIDE_EFFECTS__*/
544
+ function getDeferred(cb, argArray) {
545
+ var theValue = {
546
+ toJSON: function () { return theValue.v; }
547
+ };
548
+ return objDefineProp(theValue, "v", {
549
+ get: function () {
550
+ var result = fnApply(cb, null, argArray);
551
+ cb = NULL_VALUE;
552
+ objDefineProp(theValue, "v", { value: result });
553
+ return result;
554
+ },
555
+ configurable: true
556
+ });
557
+ }
508
558
  var WINDOW = "window";
509
559
  var _cachedGlobal;
510
560
  function _getGlobalInstFn(getFn, theArgs) {
@@ -750,6 +800,7 @@
750
800
  }
751
801
  return result;
752
802
  }
803
+ var strSplit = ( /*#__PURE__*/_unwrapFunction("split", StrProto));
753
804
  var _perf;
754
805
  /*#__NO_SIDE_EFFECTS__*/
755
806
  function getPerformance() {
@@ -759,6 +810,13 @@
759
810
  }
760
811
  return _perf.v;
761
812
  }
813
+ /*#__NO_SIDE_EFFECTS__*/
814
+ function safeGetDeferred(cb, defValue, argArray) {
815
+ return getDeferred(function () {
816
+ var result = safe(cb, argArray);
817
+ return result.e ? defValue : result.v;
818
+ });
819
+ }
762
820
  var mathRound = ( /*#__PURE__*/_pureRef(MathCls, "round"));
763
821
  var objGetOwnPropertyDescriptor = ( /*#__PURE__*/_pureAssign(( /*#__PURE__*/_pureRef(ObjClass, GET_OWN_PROPERTY_DESCRIPTOR)), _returnNothing));
764
822
  var strEndsWith = ( /*#__PURE__*/_unwrapFunctionWithPoly("endsWith", StrProto, polyStrEndsWith));
@@ -1168,8 +1226,8 @@
1168
1226
 
1169
1227
  var createEnumStyle = createEnum;
1170
1228
 
1171
- var _DYN_TO_LOWER_CASE$1 = "toLowerCase";
1172
- var _DYN_LENGTH$2 = "length";
1229
+ var _DYN_TO_LOWER_CASE = "toLowerCase";
1230
+ var _DYN_LENGTH$1 = "length";
1173
1231
  var _DYN_WARN_TO_CONSOLE = "warnToConsole";
1174
1232
  var _DYN_THROW_INTERNAL = "throwInternal";
1175
1233
  var _DYN_WATCH = "watch";
@@ -1180,40 +1238,70 @@
1180
1238
  var _DYN_CANCEL = "cancel";
1181
1239
  var _DYN_INITIALIZE = "initialize";
1182
1240
  var _DYN_IDENTIFIER = "identifier";
1241
+ var _DYN_STRINGIFY = "stringify";
1242
+ var _DYN_TRACE_ID = "traceId";
1243
+ var _DYN_SPAN_ID = "spanId";
1244
+ var _DYN_TRACE_FLAGS = "traceFlags";
1183
1245
  var _DYN_IS_INITIALIZED = "isInitialized";
1184
1246
  var _DYN_GET_PLUGIN = "getPlugin";
1185
- var _DYN_NAME$1 = "name";
1247
+ var _DYN_NAME = "name";
1248
+ var _DYN_TIME = "time";
1186
1249
  var _DYN_PROCESS_NEXT = "processNext";
1187
1250
  var _DYN_GET_PROCESS_TEL_CONT2 = "getProcessTelContext";
1251
+ var _DYN_VALUE = "value";
1188
1252
  var _DYN_ENABLED = "enabled";
1189
1253
  var _DYN_UNLOAD = "unload";
1254
+ var _DYN_REASON = "reason";
1190
1255
  var _DYN_LOGGING_LEVEL_CONSOL4 = "loggingLevelConsole";
1256
+ var _DYN_JOIN = "join";
1191
1257
  var _DYN_CREATE_NEW = "createNew";
1192
1258
  var _DYN_TEARDOWN = "teardown";
1193
1259
  var _DYN_MESSAGE_ID = "messageId";
1194
- var _DYN_MESSAGE$1 = "message";
1260
+ var _DYN_MESSAGE = "message";
1195
1261
  var _DYN_DIAG_LOG$1 = "diagLog";
1196
1262
  var _DYN__DO_TEARDOWN = "_doTeardown";
1197
1263
  var _DYN_UPDATE = "update";
1198
1264
  var _DYN_GET_NEXT = "getNext";
1199
1265
  var _DYN_SET_NEXT_PLUGIN = "setNextPlugin";
1200
- var _DYN_USER_AGENT = "userAgent";
1201
- var _DYN_SPLIT$1 = "split";
1202
- var _DYN_REPLACE = "replace";
1203
- var _DYN_SUBSTRING = "substring";
1204
- var _DYN_INDEX_OF = "indexOf";
1205
- var _DYN_TYPE = "type";
1206
- var _DYN_EVT_NAME = "evtName";
1266
+ var _DYN_SPLIT = "split";
1207
1267
  var _DYN_IS_CHILD_EVT = "isChildEvt";
1268
+ var _DYN_DATA = "data";
1208
1269
  var _DYN_GET_CTX = "getCtx";
1209
1270
  var _DYN_SET_CTX = "setCtx";
1271
+ var _DYN_CONFIG$1 = "config";
1272
+ var _DYN_REPLACE = "replace";
1273
+ var _DYN_EXCEPTION = "exception";
1274
+ var _DYN_TYPE = "type";
1275
+ var _DYN_MATCH = "match";
1276
+ var _DYN_SET_TRACE_FLAGS = "setTraceFlags";
1277
+ var _DYN_PATHNAME = "pathname";
1278
+ var _DYN_TRACE_STATE = "traceState";
1279
+ var _DYN_TO_STRING$1 = "toString";
1280
+ var _DYN_EVT_NAME = "evtName";
1281
+ var _DYN_CONCAT = "concat";
1282
+ var _DYN_CREATE_EVENT = "createEvent";
1283
+ var _DYN_SUBSTRING = "substring";
1284
+ var _DYN_REMOVE_ITEM = "removeItem";
1210
1285
  var _DYN_GET_ATTRIBUTE = "getAttribute";
1286
+ var _DYN_PROPERTIES$1 = "properties";
1287
+ var _DYN_MEASUREMENTS = "measurements";
1288
+ var _DYN_SIZE_IN_BYTES = "sizeInBytes";
1289
+ var _DYN_TYPE_NAME = "typeName";
1290
+ var _DYN_EXCEPTIONS = "exceptions";
1291
+ var _DYN_SEVERITY_LEVEL = "severityLevel";
1292
+ var _DYN_PROBLEM_GROUP = "problemGroup";
1293
+ var _DYN_PARSED_STACK = "parsedStack";
1294
+ var _DYN_HAS_FULL_STACK = "hasFullStack";
1295
+ var _DYN_ASSEMBLY = "assembly";
1296
+ var _DYN_FILE_NAME = "fileName";
1297
+ var _DYN_LINE = "line";
1298
+ var _DYN_AI_DATA_CONTRACT = "aiDataContract";
1211
1299
 
1212
1300
  var aggregationErrorType;
1213
1301
  function throwAggregationError(message, sourceErrors) {
1214
1302
  if (!aggregationErrorType) {
1215
1303
  aggregationErrorType = createCustomError("AggregationError", function (self, args) {
1216
- if (args[_DYN_LENGTH$2 ] > 1) {
1304
+ if (args[_DYN_LENGTH$1 ] > 1) {
1217
1305
  self.errors = args[1];
1218
1306
  }
1219
1307
  });
@@ -1239,14 +1327,59 @@
1239
1327
  var STR_REDACTED = "REDACTED";
1240
1328
  var DEFAULT_SENSITIVE_PARAMS = ["sig", "Signature", "AWSAccessKeyId", "X-Goog-Signature"];
1241
1329
 
1330
+ function _stringToBoolOrDefault(theValue, defaultValue, theConfig) {
1331
+ if (!theValue && isNullOrUndefined(theValue)) {
1332
+ return defaultValue;
1333
+ }
1334
+ if (isBoolean(theValue)) {
1335
+ return theValue;
1336
+ }
1337
+ return asString(theValue)[_DYN_TO_LOWER_CASE ]() === "true";
1338
+ }
1339
+ function cfgDfMerge(defaultValue) {
1340
+ return {
1341
+ mrg: true,
1342
+ v: defaultValue
1343
+ };
1344
+ }
1345
+ function cfgDfSet(setter, defaultValue) {
1346
+ return {
1347
+ set: setter,
1348
+ v: defaultValue
1349
+ };
1350
+ }
1351
+ function cfgDfValidate(validator, defaultValue, fallBackName) {
1352
+ return {
1353
+ fb: fallBackName,
1354
+ isVal: validator,
1355
+ v: defaultValue
1356
+ };
1357
+ }
1358
+ function cfgDfBoolean(defaultValue, fallBackName) {
1359
+ return {
1360
+ fb: fallBackName,
1361
+ set: _stringToBoolOrDefault,
1362
+ v: !!defaultValue
1363
+ };
1364
+ }
1365
+ function cfgDfString(defaultValue) {
1366
+ return {
1367
+ isVal: isString,
1368
+ v: asString(defaultValue || STR_EMPTY)
1369
+ };
1370
+ }
1371
+
1242
1372
  var strGetPrototypeOf = "getPrototypeOf";
1243
1373
  var rCamelCase = /-([a-z])/g;
1244
1374
  var rNormalizeInvalid = /([^\w\d_$])/g;
1245
1375
  var rLeadingNumeric = /^(\d+[\w\d_$])/;
1376
+ var _ProtoNameTag;
1246
1377
  var _getObjProto = Object[strGetPrototypeOf];
1378
+ /*#__NO_SIDE_EFFECTS__*/
1247
1379
  function isNotNullOrUndefined(value) {
1248
1380
  return !isNullOrUndefined(value);
1249
1381
  }
1382
+ /*#__NO_SIDE_EFFECTS__*/
1250
1383
  function normalizeJsName(name) {
1251
1384
  var value = name;
1252
1385
  if (value && isString(value)) {
@@ -1260,18 +1393,21 @@
1260
1393
  }
1261
1394
  return value;
1262
1395
  }
1396
+ /*#__NO_SIDE_EFFECTS__*/
1263
1397
  function strContains(value, search) {
1264
1398
  if (value && search) {
1265
1399
  return strIndexOf(value, search) !== -1;
1266
1400
  }
1267
1401
  return false;
1268
1402
  }
1403
+ /*#__NO_SIDE_EFFECTS__*/
1269
1404
  function toISOString(date) {
1270
- return date && date.toISOString() || "";
1405
+ return date && date.toISOString() || STR_EMPTY;
1271
1406
  }
1407
+ /*#__NO_SIDE_EFFECTS__*/
1272
1408
  function getExceptionName(object) {
1273
1409
  if (isError(object)) {
1274
- return object[_DYN_NAME$1 ];
1410
+ return object[_DYN_NAME ];
1275
1411
  }
1276
1412
  return STR_EMPTY;
1277
1413
  }
@@ -1312,6 +1448,84 @@
1312
1448
  }
1313
1449
  }
1314
1450
  }
1451
+ function setObjStringTag(target, nameOrFunc) {
1452
+ safe(objDefine, [target, getKnownSymbol(11 ), isFunction(nameOrFunc) ? { g: nameOrFunc, e: false } : { v: nameOrFunc, w: false, e: false }]);
1453
+ return target;
1454
+ }
1455
+ function setProtoTypeName(target, name) {
1456
+ if (target) {
1457
+ var proto_1 = _getObjProto(target);
1458
+ var done_1 = false;
1459
+ if (proto_1) {
1460
+ safe(function () {
1461
+ var newProto = setObjStringTag(objCreate(proto_1), name);
1462
+ if (!_ProtoNameTag) {
1463
+ _ProtoNameTag = createCachedValue(newSymbol("ai$ProtoName"));
1464
+ }
1465
+ objDefine(newProto, _ProtoNameTag.v, {
1466
+ v: true,
1467
+ w: false,
1468
+ e: false
1469
+ });
1470
+ objSetPrototypeOf(target, newProto);
1471
+ done_1 = true;
1472
+ });
1473
+ }
1474
+ if (!done_1) {
1475
+ safe(setObjStringTag, [target, name]);
1476
+ }
1477
+ }
1478
+ return target;
1479
+ }
1480
+ /*#__NO_SIDE_EFFECTS__*/
1481
+ function msToTimeSpan(totalms) {
1482
+ if (isTimeSpan(totalms)) {
1483
+ return totalms;
1484
+ }
1485
+ if (isNaN(totalms) || totalms < 0) {
1486
+ totalms = 0;
1487
+ }
1488
+ totalms = mathRound(totalms);
1489
+ var ms = STR_EMPTY + totalms % 1000;
1490
+ var sec = STR_EMPTY + mathFloor(totalms / 1000) % 60;
1491
+ var min = STR_EMPTY + mathFloor(totalms / (1000 * 60)) % 60;
1492
+ var hour = STR_EMPTY + mathFloor(totalms / (1000 * 60 * 60)) % 24;
1493
+ var days = mathFloor(totalms / (1000 * 60 * 60 * 24));
1494
+ ms = ms[_DYN_LENGTH$1 ] === 1 ? "00" + ms : ms[_DYN_LENGTH$1 ] === 2 ? "0" + ms : ms;
1495
+ sec = sec[_DYN_LENGTH$1 ] < 2 ? "0" + sec : sec;
1496
+ min = min[_DYN_LENGTH$1 ] < 2 ? "0" + min : min;
1497
+ hour = hour[_DYN_LENGTH$1 ] < 2 ? "0" + hour : hour;
1498
+ return (days > 0 ? days + "." : STR_EMPTY) + hour + ":" + min + ":" + sec + "." + ms;
1499
+ }
1500
+ /*#__NO_SIDE_EFFECTS__*/
1501
+ function isCrossOriginError(message, url, lineNumber, columnNumber, error) {
1502
+ return !error && isString(message) && (message === "Script error." || message === "Script error");
1503
+ }
1504
+ /*#__NO_SIDE_EFFECTS__*/
1505
+ function isTimeSpan(value) {
1506
+ var result = false;
1507
+ if (isString(value)) {
1508
+ var parts = strSplit(value, ":");
1509
+ if (parts[_DYN_LENGTH$1 ] === 3) {
1510
+ var daysHours = strSplit(parts[0], ".");
1511
+ if (daysHours[_DYN_LENGTH$1 ] === 2) {
1512
+ result = !isNaN(parseInt(daysHours[0] || "0")) && !isNaN(parseInt(daysHours[1] || "0"));
1513
+ }
1514
+ else {
1515
+ result = !isNaN(parseInt(daysHours[0] || "0"));
1516
+ }
1517
+ result = result && !isNaN(parseInt(parts[1] || "0"));
1518
+ var secondsParts = strSplit(parts[2], ".");
1519
+ if (secondsParts[_DYN_LENGTH$1 ] === 2) {
1520
+ result = result && !isNaN(parseInt(secondsParts[0] || "0")) && !isNaN(parseInt(secondsParts[1] || "0"));
1521
+ }
1522
+ else {
1523
+ result = result && !isNaN(parseInt(secondsParts[0] || "0"));
1524
+ }
1525
+ }
1526
+ }
1527
+ return result;
1528
+ }
1315
1529
 
1316
1530
  var strLocation = "location";
1317
1531
  var strConsole = "console";
@@ -1320,9 +1534,21 @@
1320
1534
  var strMsCrypto = "msCrypto";
1321
1535
  var strMsie = "msie";
1322
1536
  var strTrident = "trident/";
1323
- var _isTrident = null;
1324
- var _navUserAgentCheck = null;
1537
+ var _isTrident;
1538
+ var _navUserAgentCheck;
1325
1539
  var _enableMocks = false;
1540
+ var _userAgent;
1541
+ /*#__NO_SIDE_EFFECTS__*/
1542
+ function getUserAgentString() {
1543
+ if (!_userAgent) {
1544
+ _userAgent = getLazy(function () {
1545
+ var nav = getNavigator() || {};
1546
+ return nav.userAgent || STR_EMPTY;
1547
+ });
1548
+ }
1549
+ return _userAgent.v;
1550
+ }
1551
+ /*#__NO_SIDE_EFFECTS__*/
1326
1552
  function getLocation(checkForMock) {
1327
1553
  if (checkForMock && _enableMocks) {
1328
1554
  var mockLocation = getInst("__mockLocation");
@@ -1335,39 +1561,47 @@
1335
1561
  }
1336
1562
  return getInst(strLocation);
1337
1563
  }
1564
+ /*#__NO_SIDE_EFFECTS__*/
1338
1565
  function getConsole() {
1339
1566
  if (typeof console !== strShimUndefined) {
1340
1567
  return console;
1341
1568
  }
1342
1569
  return getInst(strConsole);
1343
1570
  }
1571
+ /*#__NO_SIDE_EFFECTS__*/
1344
1572
  function hasJSON() {
1345
1573
  return Boolean((typeof JSON === strShimObject && JSON) || getInst(strJSON) !== null);
1346
1574
  }
1575
+ /*#__NO_SIDE_EFFECTS__*/
1347
1576
  function getJSON() {
1348
1577
  if (hasJSON()) {
1349
1578
  return JSON || getInst(strJSON);
1350
1579
  }
1351
1580
  return null;
1352
1581
  }
1582
+ /*#__NO_SIDE_EFFECTS__*/
1353
1583
  function getCrypto() {
1354
1584
  return getInst(strCrypto);
1355
1585
  }
1586
+ /*#__NO_SIDE_EFFECTS__*/
1356
1587
  function getMsCrypto() {
1357
1588
  return getInst(strMsCrypto);
1358
1589
  }
1590
+ /*#__NO_SIDE_EFFECTS__*/
1359
1591
  function isIE() {
1360
- var nav = getNavigator();
1361
- if (nav && (nav[_DYN_USER_AGENT ] !== _navUserAgentCheck || _isTrident === null)) {
1362
- _navUserAgentCheck = nav[_DYN_USER_AGENT ];
1363
- var userAgent = (_navUserAgentCheck || STR_EMPTY)[_DYN_TO_LOWER_CASE$1 ]();
1364
- _isTrident = (strContains(userAgent, strMsie) || strContains(userAgent, strTrident));
1592
+ var userAgent = getUserAgentString();
1593
+ if (!_isTrident || userAgent !== _navUserAgentCheck) {
1594
+ _navUserAgentCheck = userAgent;
1595
+ var lwrUserAgent = _navUserAgentCheck[_DYN_TO_LOWER_CASE ]();
1596
+ _isTrident = createCachedValue(strContains(lwrUserAgent, strMsie) || strContains(lwrUserAgent, strTrident));
1365
1597
  }
1366
- return _isTrident;
1598
+ return _isTrident.v;
1367
1599
  }
1600
+ /*#__NO_SIDE_EFFECTS__*/
1368
1601
  function redactUserInfo(url) {
1369
1602
  return url.replace(/^([a-zA-Z][a-zA-Z0-9+.-]*:\/\/)([^:@]{1,200}):([^@]{1,200})@(.*)$/, "$1REDACTED:REDACTED@$4");
1370
1603
  }
1604
+ /*#__NO_SIDE_EFFECTS__*/
1371
1605
  function redactQueryParameters(url, config) {
1372
1606
  var sensitiveParams;
1373
1607
  var questionMarkIndex = strIndexOf(url, "?");
@@ -1375,7 +1609,7 @@
1375
1609
  return url;
1376
1610
  }
1377
1611
  if (config && config.redactQueryParams) {
1378
- sensitiveParams = DEFAULT_SENSITIVE_PARAMS.concat(config.redactQueryParams);
1612
+ sensitiveParams = DEFAULT_SENSITIVE_PARAMS[_DYN_CONCAT ](config.redactQueryParams);
1379
1613
  }
1380
1614
  else {
1381
1615
  sensitiveParams = DEFAULT_SENSITIVE_PARAMS;
@@ -1389,7 +1623,7 @@
1389
1623
  queryString = strSubstring(queryString, 0, hashIndex);
1390
1624
  }
1391
1625
  var hasPotentialSensitiveParam = false;
1392
- for (var i = 0; i < sensitiveParams[_DYN_LENGTH$2 ]; i++) {
1626
+ for (var i = 0; i < sensitiveParams[_DYN_LENGTH$1 ]; i++) {
1393
1627
  var paramCheck = sensitiveParams[i] + "=";
1394
1628
  if (strIndexOf(queryString, paramCheck) !== -1) {
1395
1629
  hasPotentialSensitiveParam = true;
@@ -1401,9 +1635,9 @@
1401
1635
  }
1402
1636
  var resultParts = [];
1403
1637
  var anyParamRedacted = false;
1404
- if (queryString && queryString[_DYN_LENGTH$2 ]) {
1405
- var pairs = queryString[_DYN_SPLIT$1 ]("&");
1406
- for (var i = 0; i < pairs[_DYN_LENGTH$2 ]; i++) {
1638
+ if (queryString && queryString[_DYN_LENGTH$1 ]) {
1639
+ var pairs = queryString[_DYN_SPLIT ]("&");
1640
+ for (var i = 0; i < pairs[_DYN_LENGTH$1 ]; i++) {
1407
1641
  var pair = pairs[i];
1408
1642
  if (!pair) {
1409
1643
  continue;
@@ -1420,7 +1654,7 @@
1420
1654
  }
1421
1655
  else {
1422
1656
  var shouldRedact = false;
1423
- for (var j = 0; j < sensitiveParams[_DYN_LENGTH$2 ]; j++) {
1657
+ for (var j = 0; j < sensitiveParams[_DYN_LENGTH$1 ]; j++) {
1424
1658
  if (paramName === sensitiveParams[j]) {
1425
1659
  shouldRedact = true;
1426
1660
  anyParamRedacted = true;
@@ -1440,10 +1674,11 @@
1440
1674
  if (!anyParamRedacted) {
1441
1675
  return url;
1442
1676
  }
1443
- return baseUrl + resultParts.join("&") + fragment;
1677
+ return baseUrl + resultParts[_DYN_JOIN ]("&") + fragment;
1444
1678
  }
1679
+ /*#__NO_SIDE_EFFECTS__*/
1445
1680
  function fieldRedaction(input, config) {
1446
- if (!input || !isString(input) || input[_DYN_INDEX_OF ](" ") !== -1) {
1681
+ if (!input || !isString(input) || strIndexOf(input, " ") !== -1) {
1447
1682
  return input;
1448
1683
  }
1449
1684
  var isRedactionDisabled = config && config.redactUrls === false;
@@ -1488,7 +1723,7 @@
1488
1723
  function _autoSeedMwc() {
1489
1724
  try {
1490
1725
  var now = utcNow() & 0x7fffffff;
1491
- _mwcSeed(((Math.random() * UInt32Mask) ^ now) + now);
1726
+ _mwcSeed(((mathRandom() * UInt32Mask) ^ now) + now);
1492
1727
  }
1493
1728
  catch (e) {
1494
1729
  }
@@ -1506,7 +1741,7 @@
1506
1741
  value = mwcRandom32() & MaxUInt32;
1507
1742
  }
1508
1743
  if (value === 0) {
1509
- value = mathFloor((UInt32Mask * Math.random()) | 0);
1744
+ value = mathFloor((UInt32Mask * mathRandom()) | 0);
1510
1745
  }
1511
1746
  if (!signed) {
1512
1747
  value >>>= 0;
@@ -1528,7 +1763,7 @@
1528
1763
  var number = random32() >>> 0;
1529
1764
  var chars = 0;
1530
1765
  var result = STR_EMPTY;
1531
- while (result[_DYN_LENGTH$2 ] < maxLength) {
1766
+ while (result[_DYN_LENGTH$1 ] < maxLength) {
1532
1767
  chars++;
1533
1768
  result += base64chars.charAt(number & 0x3F);
1534
1769
  number >>>= 6;
@@ -1540,7 +1775,7 @@
1540
1775
  return result;
1541
1776
  }
1542
1777
 
1543
- var version = '3.3.12-nightly3.2602-18';
1778
+ var version = '3.4.0-beta';
1544
1779
  var instanceName = "." + newId(6);
1545
1780
  var _dataUid = 0;
1546
1781
  function _canAcceptData(target) {
@@ -1608,7 +1843,7 @@
1608
1843
  if (!isArray(fallbacks)) {
1609
1844
  fallbacks = [fallbacks];
1610
1845
  }
1611
- for (var lp = 0; lp < fallbacks[_DYN_LENGTH$2 ]; lp++) {
1846
+ for (var lp = 0; lp < fallbacks[_DYN_LENGTH$1 ]; lp++) {
1612
1847
  var fallback = fallbacks[lp];
1613
1848
  var fbValue = theConfig[fallback];
1614
1849
  if (isDefaultValid(fbValue)) {
@@ -1643,7 +1878,7 @@
1643
1878
  var newValue_1;
1644
1879
  if (isArray(theValue)) {
1645
1880
  newValue_1 = [];
1646
- newValue_1[_DYN_LENGTH$2 ] = theValue[_DYN_LENGTH$2 ];
1881
+ newValue_1[_DYN_LENGTH$1 ] = theValue[_DYN_LENGTH$1 ];
1647
1882
  }
1648
1883
  else if (isPlainObject(theValue)) {
1649
1884
  newValue_1 = {};
@@ -1734,7 +1969,7 @@
1734
1969
  var target_1;
1735
1970
  if (isArray(source)) {
1736
1971
  target_1 = [];
1737
- target_1[_DYN_LENGTH$2 ] = source[_DYN_LENGTH$2 ];
1972
+ target_1[_DYN_LENGTH$1 ] = source[_DYN_LENGTH$1 ];
1738
1973
  }
1739
1974
  else if (isPlainObject(source)) {
1740
1975
  target_1 = {};
@@ -2042,13 +2277,13 @@
2042
2277
  watcherFailures_1[_DYN_PUSH ](e);
2043
2278
  }
2044
2279
  }
2045
- if (watcherFailures_1[_DYN_LENGTH$2 ] > 0) {
2280
+ if (watcherFailures_1[_DYN_LENGTH$1 ] > 0) {
2046
2281
  throwAggregationError("Watcher error(s): ", watcherFailures_1);
2047
2282
  }
2048
2283
  }
2049
2284
  }
2050
2285
  function _addWatcher(detail) {
2051
- if (detail && detail.h[_DYN_LENGTH$2 ] > 0) {
2286
+ if (detail && detail.h[_DYN_LENGTH$1 ] > 0) {
2052
2287
  if (!_waitingHandlers) {
2053
2288
  _waitingHandlers = [];
2054
2289
  }
@@ -2058,7 +2293,7 @@
2058
2293
  _notifyWatchers();
2059
2294
  }, 0);
2060
2295
  }
2061
- for (var idx = 0; idx < detail.h[_DYN_LENGTH$2 ]; idx++) {
2296
+ for (var idx = 0; idx < detail.h[_DYN_LENGTH$1 ]; idx++) {
2062
2297
  var handler = detail.h[idx];
2063
2298
  if (handler && arrIndexOf(_waitingHandlers, handler) === -1) {
2064
2299
  _waitingHandlers[_DYN_PUSH ](handler);
@@ -2097,7 +2332,7 @@
2097
2332
  configHandler = null;
2098
2333
  }
2099
2334
  };
2100
- objDefine(handler, "toJSON", { v: function () { return "WatcherHandler" + (handler.fn ? "" : "[X]"); } });
2335
+ objDefine(handler, "toJSON", { v: function () { return "WatcherHandler" + (handler.fn ? STR_EMPTY : "[X]"); } });
2101
2336
  state.use(handler, configHandler);
2102
2337
  return handler;
2103
2338
  }
@@ -2206,47 +2441,8 @@
2206
2441
  return createDynamicConfig(config, null, logger)[_DYN_WATCH ](configHandler);
2207
2442
  }
2208
2443
 
2209
- function _stringToBoolOrDefault(theValue, defaultValue, theConfig) {
2210
- if (!theValue && isNullOrUndefined(theValue)) {
2211
- return defaultValue;
2212
- }
2213
- if (isBoolean(theValue)) {
2214
- return theValue;
2215
- }
2216
- return asString(theValue)[_DYN_TO_LOWER_CASE$1 ]() === "true";
2217
- }
2218
- function cfgDfMerge(defaultValue) {
2219
- return {
2220
- mrg: true,
2221
- v: defaultValue
2222
- };
2223
- }
2224
- function cfgDfSet(setter, defaultValue) {
2225
- return {
2226
- set: setter,
2227
- v: defaultValue
2228
- };
2229
- }
2230
- function cfgDfValidate(validator, defaultValue, fallBackName) {
2231
- return {
2232
- fb: fallBackName,
2233
- isVal: validator,
2234
- v: defaultValue
2235
- };
2236
- }
2237
- function cfgDfBoolean(defaultValue, fallBackName) {
2238
- return {
2239
- fb: fallBackName,
2240
- set: _stringToBoolOrDefault,
2241
- v: !!defaultValue
2242
- };
2243
- }
2244
- function cfgDfString(defaultValue) {
2245
- return {
2246
- isVal: isString,
2247
- v: asString(defaultValue || STR_EMPTY)
2248
- };
2249
- }
2444
+ var strNotSpecified = "not_specified";
2445
+ var strIkey = "iKey";
2250
2446
 
2251
2447
  var _aiNamespace = null;
2252
2448
  function _getExtensionNamespace() {
@@ -2304,20 +2500,21 @@
2304
2500
  if (isUserAct === void 0) { isUserAct = false; }
2305
2501
  var _self = this;
2306
2502
  _self[_DYN_MESSAGE_ID ] = msgId;
2307
- _self[_DYN_MESSAGE$1 ] =
2503
+ _self[_DYN_MESSAGE ] =
2308
2504
  (isUserAct ? AiUserActionablePrefix : AiNonUserActionablePrefix) +
2309
2505
  msgId;
2310
2506
  var strProps = STR_EMPTY;
2311
2507
  if (hasJSON()) {
2312
- strProps = getJSON().stringify(properties);
2508
+ strProps = getJSON()[_DYN_STRINGIFY ](properties);
2313
2509
  }
2314
2510
  var diagnosticText = (msg ? " message:" + _sanitizeDiagnosticText(msg) : STR_EMPTY) +
2315
2511
  (properties ? " props:" + _sanitizeDiagnosticText(strProps) : STR_EMPTY);
2316
- _self[_DYN_MESSAGE$1 ] += diagnosticText;
2512
+ _self[_DYN_MESSAGE ] += diagnosticText;
2317
2513
  }
2318
2514
  _InternalLogMessage.dataType = "MessageData";
2319
2515
  return _InternalLogMessage;
2320
2516
  }());
2517
+ /*#__NO_SIDE_EFFECTS__*/
2321
2518
  function safeGetLogger(core, config) {
2322
2519
  return (core || {})[_DYN_LOGGER ] || new DiagnosticLogger(config);
2323
2520
  }
@@ -2343,17 +2540,17 @@
2343
2540
  }
2344
2541
  else {
2345
2542
  var logFunc = _logFuncs[severity] || STR_WARN_TO_CONSOLE;
2346
- if (!isUndefined(message[_DYN_MESSAGE$1 ])) {
2543
+ if (!isUndefined(message[_DYN_MESSAGE ])) {
2347
2544
  if (isUserAct) {
2348
2545
  var messageKey = +message[_DYN_MESSAGE_ID ];
2349
2546
  if (!_messageLogged[messageKey] && _loggingLevelConsole >= severity) {
2350
- _self[logFunc](message[_DYN_MESSAGE$1 ]);
2547
+ _self[logFunc](message[_DYN_MESSAGE ]);
2351
2548
  _messageLogged[messageKey] = true;
2352
2549
  }
2353
2550
  }
2354
2551
  else {
2355
2552
  if (_loggingLevelConsole >= severity) {
2356
- _self[logFunc](message[_DYN_MESSAGE$1 ]);
2553
+ _self[logFunc](message[_DYN_MESSAGE ]);
2357
2554
  }
2358
2555
  }
2359
2556
  _logInternalMessage(severity, message);
@@ -2384,6 +2581,9 @@
2384
2581
  _unloadHandler && _unloadHandler.rm();
2385
2582
  _unloadHandler = null;
2386
2583
  };
2584
+ objDefine(_self, "dbgMode", {
2585
+ g: function () { return _enableDebug; }
2586
+ });
2387
2587
  function _logInternalMessage(severity, message) {
2388
2588
  if (_areInternalMessagesThrottled()) {
2389
2589
  return;
@@ -2449,61 +2649,361 @@
2449
2649
  _getLogger(logger)[_DYN_WARN_TO_CONSOLE ](message);
2450
2650
  }
2451
2651
 
2452
- var _a$2, _b;
2453
- var strToGMTString = "toGMTString";
2454
- var strToUTCString = "toUTCString";
2455
- var strCookie = "cookie";
2456
- var strExpires = "expires";
2457
- var strIsCookieUseDisabled = "isCookieUseDisabled";
2458
- var strDisableCookiesUsage = "disableCookiesUsage";
2459
- var strConfigCookieMgr = "_ckMgr";
2460
- var _supportsCookies = null;
2461
- var _allowUaSameSite = null;
2462
- var _parsedCookieValue = null;
2463
- var _doc;
2464
- var _cookieCache = {};
2465
- var _globalCookieConfig = {};
2466
- var rootDefaultConfig = (_a$2 = {
2467
- cookieCfg: cfgDfMerge((_b = {},
2468
- _b[STR_DOMAIN] = { fb: "cookieDomain", dfVal: isNotNullOrUndefined },
2469
- _b.path = { fb: "cookiePath", dfVal: isNotNullOrUndefined },
2470
- _b.enabled = UNDEFINED_VALUE,
2471
- _b.ignoreCookies = UNDEFINED_VALUE,
2472
- _b.blockedCookies = UNDEFINED_VALUE,
2473
- _b.disableCookieDefer = false,
2474
- _b)),
2475
- cookieDomain: UNDEFINED_VALUE,
2476
- cookiePath: UNDEFINED_VALUE
2477
- },
2478
- _a$2[strDisableCookiesUsage] = UNDEFINED_VALUE,
2479
- _a$2);
2480
- function _getDoc() {
2481
- !_doc && (_doc = getLazy(function () { return getDocument(); }));
2652
+ function _noopVoid() {
2482
2653
  }
2483
- function _gblCookieMgr(config, logger) {
2484
- var inst = createCookieMgr[strConfigCookieMgr] || _globalCookieConfig[strConfigCookieMgr];
2485
- if (!inst) {
2486
- inst = createCookieMgr[strConfigCookieMgr] = createCookieMgr(config, logger);
2487
- _globalCookieConfig[strConfigCookieMgr] = inst;
2654
+
2655
+ var MAX_TRACE_STATE_MEMBERS = 32;
2656
+ var MAX_TRACE_STATE_LEN = 512;
2657
+ var LCALPHA = "[a-z]";
2658
+ var LCALPHA_DIGIT = "[a-z\\d]";
2659
+ var LCALPHA_DIGIT_UNDERSCORE_DASH_STAR_SLASH = "[a-z\\d_\\-*\\/]";
2660
+ var SIMPLE_KEY = "(" + LCALPHA + LCALPHA_DIGIT_UNDERSCORE_DASH_STAR_SLASH + "{0,255})";
2661
+ var TENANT_ID = "(" + LCALPHA_DIGIT + LCALPHA_DIGIT_UNDERSCORE_DASH_STAR_SLASH + "{0,240})";
2662
+ var SYSTEM_ID = "(" + LCALPHA + LCALPHA_DIGIT_UNDERSCORE_DASH_STAR_SLASH + "{0,13})";
2663
+ var MULTI_TENANT_KEY = "(" + TENANT_ID + "@" + SYSTEM_ID + ")";
2664
+ var NBLK_CHAR = "\x21-\x2B\\--\x3C\x3E-\x7E";
2665
+ var TRACESTATE_VALUE = "[\x20" + NBLK_CHAR + "]{0,255}[" + NBLK_CHAR + "]";
2666
+ var TRACESTATE_KVP_REGEX = ( /*#__PURE__*/new RegExp("^\\s*((?:" + SIMPLE_KEY + "|" + MULTI_TENANT_KEY + ")=(" + TRACESTATE_VALUE + "))\\s*$"));
2667
+ function _parseListMember(value) {
2668
+ if (value) {
2669
+ TRACESTATE_KVP_REGEX.lastIndex = 0;
2670
+ var match = TRACESTATE_KVP_REGEX.exec(value);
2671
+ if (match && match[_DYN_LENGTH$1 ] >= 7 && match[1] && match[6]) {
2672
+ var type = match[3] ? 1 : 0 ;
2673
+ var multiTenant = null;
2674
+ if (type === 1 ) {
2675
+ multiTenant = {
2676
+ tenantId: match[4],
2677
+ systemId: match[5]
2678
+ };
2679
+ }
2680
+ var parts = {
2681
+ type: type,
2682
+ key: match[2],
2683
+ multiTenant: multiTenant,
2684
+ value: match[6]
2685
+ };
2686
+ return parts;
2687
+ }
2488
2688
  }
2489
- return inst;
2689
+ return null;
2490
2690
  }
2491
- function _isMgrEnabled(cookieMgr) {
2492
- if (cookieMgr) {
2493
- return cookieMgr.isEnabled();
2691
+ function _parseTraceStateList(value) {
2692
+ var items = [];
2693
+ if (value) {
2694
+ var addedKeys_1 = [];
2695
+ arrForEach(strSplit(value, ","), function (member) {
2696
+ var parts = _parseListMember(member);
2697
+ if (parts) {
2698
+ if (arrIndexOf(addedKeys_1, parts.key) === -1) {
2699
+ items[_DYN_PUSH ](parts);
2700
+ addedKeys_1[_DYN_PUSH ](parts.key);
2701
+ if (items[_DYN_LENGTH$1 ] >= MAX_TRACE_STATE_MEMBERS) {
2702
+ return -1;
2703
+ }
2704
+ }
2705
+ }
2706
+ });
2494
2707
  }
2495
- return true;
2708
+ return items;
2496
2709
  }
2497
- function _isIgnoredCookie(cookieMgrCfg, name) {
2498
- if (name && cookieMgrCfg && isArray(cookieMgrCfg.ignoreCookies)) {
2499
- return arrIndexOf(cookieMgrCfg.ignoreCookies, name) !== -1;
2710
+ function _indexOf(items, key) {
2711
+ for (var lp = 0; lp < items[_DYN_LENGTH$1 ]; lp++) {
2712
+ if (items[lp].key === key) {
2713
+ return lp;
2714
+ }
2500
2715
  }
2501
- return false;
2716
+ return -1;
2502
2717
  }
2503
- function _isBlockedCookie(cookieMgrCfg, name) {
2504
- if (name && cookieMgrCfg && isArray(cookieMgrCfg.blockedCookies)) {
2505
- if (arrIndexOf(cookieMgrCfg.blockedCookies, name) !== -1) {
2506
- return true;
2718
+ function _keys(items, parent) {
2719
+ var keys = [];
2720
+ var delKeys = [];
2721
+ arrForEach(items, function (member) {
2722
+ if (member[_DYN_VALUE ] != null) {
2723
+ keys[_DYN_PUSH ](member.key);
2724
+ }
2725
+ else {
2726
+ delKeys[_DYN_PUSH ](member.key);
2727
+ }
2728
+ });
2729
+ if (parent) {
2730
+ arrForEach(parent.keys, function (key) {
2731
+ if (arrIndexOf(keys, key) === -1 && arrIndexOf(delKeys, key) === -1) {
2732
+ keys[_DYN_PUSH ](key);
2733
+ }
2734
+ });
2735
+ }
2736
+ return keys;
2737
+ }
2738
+ /*#__NO_SIDE_EFFECTS__*/
2739
+ function _isEmpty(items, parent) {
2740
+ var delKeys;
2741
+ var isEmpty = true;
2742
+ if (items && items[_DYN_LENGTH$1 ] > 0) {
2743
+ arrForEach(items, function (member) {
2744
+ if (member[_DYN_VALUE ] != null) {
2745
+ isEmpty = false;
2746
+ }
2747
+ else {
2748
+ if (!delKeys) {
2749
+ delKeys = [];
2750
+ }
2751
+ delKeys[_DYN_PUSH ](member.key);
2752
+ }
2753
+ });
2754
+ }
2755
+ if (isEmpty && parent) {
2756
+ isEmpty = parent.isEmpty;
2757
+ if (!isEmpty && delKeys && delKeys[_DYN_LENGTH$1 ] > 0) {
2758
+ isEmpty = true;
2759
+ arrForEach(parent.keys, function (key) {
2760
+ if (arrIndexOf(delKeys, key) === -1) {
2761
+ isEmpty = false;
2762
+ return -1;
2763
+ }
2764
+ });
2765
+ }
2766
+ }
2767
+ return isEmpty;
2768
+ }
2769
+ /*#__NO_SIDE_EFFECTS__*/
2770
+ function isW3cTraceState(value) {
2771
+ return !!(value && isArray(value.keys) && isFunction(value.get) && isFunction(value.set) && isFunction(value.del) && isFunction(value.hdrs));
2772
+ }
2773
+ /*#__NO_SIDE_EFFECTS__*/
2774
+ function createW3cTraceState(value, parent) {
2775
+ var cachedItems = safeGetDeferred(_parseTraceStateList, [], [value || STR_EMPTY]);
2776
+ function _get(key) {
2777
+ var value;
2778
+ var theItems = cachedItems.v;
2779
+ var idx = _indexOf(theItems, key);
2780
+ if (idx !== -1) {
2781
+ var itmValue = theItems[idx][_DYN_VALUE ];
2782
+ if (itmValue != null) {
2783
+ value = itmValue;
2784
+ }
2785
+ }
2786
+ else if (parent) {
2787
+ value = parent.get(key);
2788
+ }
2789
+ return value;
2790
+ }
2791
+ function _setMember(member) {
2792
+ if (member) {
2793
+ var theItems = cachedItems.v;
2794
+ var idx = _indexOf(theItems, member.key);
2795
+ if (idx !== -1) {
2796
+ theItems[_DYN_SPLICE ](idx, 1);
2797
+ }
2798
+ theItems.unshift(member);
2799
+ cachedItems = createCachedValue(theItems);
2800
+ return 0;
2801
+ }
2802
+ return -1;
2803
+ }
2804
+ function _set(key, value) {
2805
+ var member;
2806
+ if (key && isString(key) && !isNullOrUndefined(value) && isString(value)) {
2807
+ member = _parseListMember(key + "=" + value);
2808
+ }
2809
+ return _setMember(member);
2810
+ }
2811
+ function _del(key) {
2812
+ _setMember({
2813
+ type: 2 ,
2814
+ key: key
2815
+ });
2816
+ }
2817
+ function _headers(maxHeaders, maxKeys, maxLen) {
2818
+ var results = [];
2819
+ var result = STR_EMPTY;
2820
+ var numKeys = 0;
2821
+ var len = 0;
2822
+ maxKeys = maxKeys || MAX_TRACE_STATE_MEMBERS;
2823
+ maxLen = maxLen || MAX_TRACE_STATE_LEN;
2824
+ var theItems = cachedItems.v;
2825
+ arrForEach(_keys(theItems, parent), function (key) {
2826
+ var value = _get(key);
2827
+ if (!isNullOrUndefined(value) && isString(value)) {
2828
+ numKeys++;
2829
+ var val = key + "=" + value;
2830
+ var valLen = val[_DYN_LENGTH$1 ];
2831
+ if (len + 1 + valLen >= maxLen) {
2832
+ results[_DYN_PUSH ](result);
2833
+ if (maxHeaders && results[_DYN_LENGTH$1 ] <= maxHeaders) {
2834
+ return -1;
2835
+ }
2836
+ result = STR_EMPTY;
2837
+ len = 0;
2838
+ }
2839
+ if (result[_DYN_LENGTH$1 ] > 0) {
2840
+ result += ",";
2841
+ len++;
2842
+ }
2843
+ result += val;
2844
+ len += valLen;
2845
+ if (numKeys >= maxKeys) {
2846
+ return -1;
2847
+ }
2848
+ }
2849
+ });
2850
+ if (result) {
2851
+ results[_DYN_PUSH ](result);
2852
+ }
2853
+ return results;
2854
+ }
2855
+ var traceStateList = {
2856
+ keys: [],
2857
+ isEmpty: false,
2858
+ get: _get,
2859
+ set: _set,
2860
+ del: _del,
2861
+ hdrs: _headers,
2862
+ child: function () { return createW3cTraceState(null, traceStateList); }
2863
+ };
2864
+ function _toString() {
2865
+ var headers = traceStateList.hdrs(1);
2866
+ return headers[_DYN_LENGTH$1 ] > 0 ? headers[0] : STR_EMPTY;
2867
+ }
2868
+ objDefineProps(traceStateList, {
2869
+ "keys": {
2870
+ g: function () { return _keys(cachedItems.v, parent); }
2871
+ },
2872
+ "isEmpty": {
2873
+ g: function () { return _isEmpty(cachedItems.v, parent); }
2874
+ },
2875
+ "toString": {
2876
+ v: _toString,
2877
+ e: false
2878
+ },
2879
+ "_p": {
2880
+ v: parent,
2881
+ e: false
2882
+ }
2883
+ });
2884
+ setObjStringTag(traceStateList, _toString);
2885
+ return traceStateList;
2886
+ }
2887
+
2888
+ function generateW3CId() {
2889
+ var hexValues = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"];
2890
+ var oct = STR_EMPTY, tmp;
2891
+ for (var a = 0; a < 4; a++) {
2892
+ tmp = random32();
2893
+ oct +=
2894
+ hexValues[tmp & 0xF] +
2895
+ hexValues[tmp >> 4 & 0xF] +
2896
+ hexValues[tmp >> 8 & 0xF] +
2897
+ hexValues[tmp >> 12 & 0xF] +
2898
+ hexValues[tmp >> 16 & 0xF] +
2899
+ hexValues[tmp >> 20 & 0xF] +
2900
+ hexValues[tmp >> 24 & 0xF] +
2901
+ hexValues[tmp >> 28 & 0xF];
2902
+ }
2903
+ var clockSequenceHi = hexValues[8 + (random32() & 0x03) | 0];
2904
+ return strSubstr(oct, 0, 8) + strSubstr(oct, 9, 4) + "4" + strSubstr(oct, 13, 3) + clockSequenceHi + strSubstr(oct, 16, 3) + strSubstr(oct, 19, 12);
2905
+ }
2906
+
2907
+ var INVALID_TRACE_ID = "00000000000000000000000000000000";
2908
+ var INVALID_SPAN_ID = "0000000000000000";
2909
+ function _isValid(value, len, invalidValue) {
2910
+ if (value && value[_DYN_LENGTH$1 ] === len && value !== invalidValue) {
2911
+ return !!value.match(/^[\da-f]*$/i);
2912
+ }
2913
+ return false;
2914
+ }
2915
+ /*#__NO_SIDE_EFFECTS__*/
2916
+ function isValidTraceId(value) {
2917
+ return _isValid(value, 32, INVALID_TRACE_ID);
2918
+ }
2919
+ /*#__NO_SIDE_EFFECTS__*/
2920
+ function isValidSpanId(value) {
2921
+ return _isValid(value, 16, INVALID_SPAN_ID);
2922
+ }
2923
+ function findAllScripts(doc) {
2924
+ var scripts = doc.getElementsByTagName("script");
2925
+ var result = [];
2926
+ arrForEach(scripts, function (script) {
2927
+ var src = script[_DYN_GET_ATTRIBUTE ]("src");
2928
+ if (src) {
2929
+ var crossOrigin = script[_DYN_GET_ATTRIBUTE ]("crossorigin");
2930
+ var async = script.hasAttribute("async") === true;
2931
+ var defer = script.hasAttribute("defer") === true;
2932
+ var referrerPolicy = script[_DYN_GET_ATTRIBUTE ]("referrerpolicy");
2933
+ var info = { url: src };
2934
+ if (crossOrigin) {
2935
+ info.crossOrigin = crossOrigin;
2936
+ }
2937
+ if (async) {
2938
+ info.async = async;
2939
+ }
2940
+ if (defer) {
2941
+ info.defer = defer;
2942
+ }
2943
+ if (referrerPolicy) {
2944
+ info.referrerPolicy = referrerPolicy;
2945
+ }
2946
+ result[_DYN_PUSH ](info);
2947
+ }
2948
+ });
2949
+ return result;
2950
+ }
2951
+
2952
+ var _a$2, _b;
2953
+ var strToGMTString = "toGMTString";
2954
+ var strToUTCString = "toUTCString";
2955
+ var strCookie = "cookie";
2956
+ var strExpires = "expires";
2957
+ var strIsCookieUseDisabled = "isCookieUseDisabled";
2958
+ var strDisableCookiesUsage = "disableCookiesUsage";
2959
+ var strConfigCookieMgr = "_ckMgr";
2960
+ var _supportsCookies = null;
2961
+ var _allowUaSameSite = null;
2962
+ var _parsedCookieValue = null;
2963
+ var _doc;
2964
+ var _cookieCache = {};
2965
+ var _globalCookieConfig = {};
2966
+ var rootDefaultConfig = (_a$2 = {
2967
+ cookieCfg: cfgDfMerge((_b = {},
2968
+ _b[STR_DOMAIN] = { fb: "cookieDomain", dfVal: isNotNullOrUndefined },
2969
+ _b.path = { fb: "cookiePath", dfVal: isNotNullOrUndefined },
2970
+ _b.enabled = UNDEFINED_VALUE,
2971
+ _b.ignoreCookies = UNDEFINED_VALUE,
2972
+ _b.blockedCookies = UNDEFINED_VALUE,
2973
+ _b.disableCookieDefer = false,
2974
+ _b)),
2975
+ cookieDomain: UNDEFINED_VALUE,
2976
+ cookiePath: UNDEFINED_VALUE
2977
+ },
2978
+ _a$2[strDisableCookiesUsage] = UNDEFINED_VALUE,
2979
+ _a$2);
2980
+ function _getDoc() {
2981
+ !_doc && (_doc = getLazy(function () { return getDocument(); }));
2982
+ }
2983
+ function _gblCookieMgr(config, logger) {
2984
+ var inst = createCookieMgr[strConfigCookieMgr] || _globalCookieConfig[strConfigCookieMgr];
2985
+ if (!inst) {
2986
+ inst = createCookieMgr[strConfigCookieMgr] = createCookieMgr(config, logger);
2987
+ _globalCookieConfig[strConfigCookieMgr] = inst;
2988
+ }
2989
+ return inst;
2990
+ }
2991
+ function _isMgrEnabled(cookieMgr) {
2992
+ if (cookieMgr) {
2993
+ return cookieMgr.isEnabled();
2994
+ }
2995
+ return true;
2996
+ }
2997
+ function _isIgnoredCookie(cookieMgrCfg, name) {
2998
+ if (name && cookieMgrCfg && isArray(cookieMgrCfg.ignoreCookies)) {
2999
+ return arrIndexOf(cookieMgrCfg.ignoreCookies, name) !== -1;
3000
+ }
3001
+ return false;
3002
+ }
3003
+ function _isBlockedCookie(cookieMgrCfg, name) {
3004
+ if (name && cookieMgrCfg && isArray(cookieMgrCfg.blockedCookies)) {
3005
+ if (arrIndexOf(cookieMgrCfg.blockedCookies, name) !== -1) {
3006
+ return true;
2507
3007
  }
2508
3008
  }
2509
3009
  return _isIgnoredCookie(cookieMgrCfg, name);
@@ -2590,7 +3090,7 @@
2590
3090
  if (location && location.protocol === "https:") {
2591
3091
  setValue(values, "secure", null, null, isUndefined);
2592
3092
  if (_allowUaSameSite === null) {
2593
- _allowUaSameSite = !uaDisallowsSameSiteNone((getNavigator() || {})[_DYN_USER_AGENT ]);
3093
+ _allowUaSameSite = !uaDisallowsSameSiteNone(getUserAgentString());
2594
3094
  }
2595
3095
  if (_allowUaSameSite) {
2596
3096
  setValue(values, "SameSite", "None", null, isUndefined);
@@ -2601,7 +3101,7 @@
2601
3101
  }
2602
3102
  function _removePendingCookie(name) {
2603
3103
  if (_pendingCookies) {
2604
- for (var i = _pendingCookies[_DYN_LENGTH$2 ] - 1; i >= 0; i--) {
3104
+ for (var i = _pendingCookies[_DYN_LENGTH$1 ] - 1; i >= 0; i--) {
2605
3105
  if (_pendingCookies[i].n === name) {
2606
3106
  _pendingCookies[_DYN_SPLICE ](i, 1);
2607
3107
  }
@@ -2688,7 +3188,7 @@
2688
3188
  value = _getCookieFn(name);
2689
3189
  }
2690
3190
  else if (_pendingCookies) {
2691
- for (var i = _pendingCookies[_DYN_LENGTH$2 ] - 1; i >= 0; i--) {
3191
+ for (var i = _pendingCookies[_DYN_LENGTH$1 ] - 1; i >= 0; i--) {
2692
3192
  var pendingData = _pendingCookies[i];
2693
3193
  if (pendingData.n === name) {
2694
3194
  if (pendingData.o === 0 ) {
@@ -2752,8 +3252,8 @@
2752
3252
  }
2753
3253
  function _extractParts(theValue) {
2754
3254
  var values = {};
2755
- if (theValue && theValue[_DYN_LENGTH$2 ]) {
2756
- var parts = strTrim(theValue)[_DYN_SPLIT$1 ](";");
3255
+ if (theValue && theValue[_DYN_LENGTH$1 ]) {
3256
+ var parts = strTrim(theValue)[_DYN_SPLIT ](";");
2757
3257
  arrForEach(parts, function (thePart) {
2758
3258
  thePart = strTrim(thePart || STR_EMPTY);
2759
3259
  if (thePart) {
@@ -2833,7 +3333,7 @@
2833
3333
  function PerfEvent(name, payloadDetails, isAsync) {
2834
3334
  var _self = this;
2835
3335
  _self.start = utcNow();
2836
- _self[_DYN_NAME$1 ] = name;
3336
+ _self[_DYN_NAME ] = name;
2837
3337
  _self.isAsync = isAsync;
2838
3338
  _self[_DYN_IS_CHILD_EVT ] = function () { return false; };
2839
3339
  if (isFunction(payloadDetails)) {
@@ -2878,16 +3378,16 @@
2878
3378
  var childTime = 0;
2879
3379
  var childEvts = _self[_DYN_GET_CTX ](PerfEvent[strChildrenContextKey]);
2880
3380
  if (isArray(childEvts)) {
2881
- for (var lp = 0; lp < childEvts[_DYN_LENGTH$2 ]; lp++) {
3381
+ for (var lp = 0; lp < childEvts[_DYN_LENGTH$1 ]; lp++) {
2882
3382
  var childEvt = childEvts[lp];
2883
3383
  if (childEvt) {
2884
- childTime += childEvt.time;
3384
+ childTime += childEvt[_DYN_TIME ];
2885
3385
  }
2886
3386
  }
2887
3387
  }
2888
- _self.time = utcNow() - _self.start;
2889
- _self.exTime = _self.time - childTime;
2890
- _self.complete = function () { };
3388
+ _self[_DYN_TIME ] = utcNow() - _self.start;
3389
+ _self.exTime = _self[_DYN_TIME ] - childTime;
3390
+ _self.complete = _noopVoid;
2891
3391
  };
2892
3392
  }
2893
3393
  PerfEvent.ParentContextKey = "parent";
@@ -2938,72 +3438,298 @@
2938
3438
  return func();
2939
3439
  }
2940
3440
 
2941
- function generateW3CId() {
2942
- var hexValues = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"];
2943
- var oct = STR_EMPTY, tmp;
2944
- for (var a = 0; a < 4; a++) {
2945
- tmp = random32();
2946
- oct +=
2947
- hexValues[tmp & 0xF] +
2948
- hexValues[tmp >> 4 & 0xF] +
2949
- hexValues[tmp >> 8 & 0xF] +
2950
- hexValues[tmp >> 12 & 0xF] +
2951
- hexValues[tmp >> 16 & 0xF] +
2952
- hexValues[tmp >> 20 & 0xF] +
2953
- hexValues[tmp >> 24 & 0xF] +
2954
- hexValues[tmp >> 28 & 0xF];
3441
+ var _otelTraceState;
3442
+ function _initOTelTraceStateSymbol() {
3443
+ if (!_otelTraceState) {
3444
+ _otelTraceState = createCachedValue(symbolFor("otTraceState"));
2955
3445
  }
2956
- var clockSequenceHi = hexValues[8 + (random32() & 0x03) | 0];
2957
- return strSubstr(oct, 0, 8) + strSubstr(oct, 9, 4) + "4" + strSubstr(oct, 13, 3) + clockSequenceHi + strSubstr(oct, 16, 3) + strSubstr(oct, 19, 12);
3446
+ return _otelTraceState;
2958
3447
  }
2959
-
2960
- var INVALID_TRACE_ID = "00000000000000000000000000000000";
2961
- var INVALID_SPAN_ID = "0000000000000000";
2962
- function _isValid(value, len, invalidValue) {
2963
- if (value && value[_DYN_LENGTH$2 ] === len && value !== invalidValue) {
2964
- return !!value.match(/^[\da-f]*$/i);
2965
- }
2966
- return false;
3448
+ /*#__NO_SIDE_EFFECTS__*/
3449
+ function _createOTelTraceState(traceState) {
3450
+ if (!_otelTraceState) {
3451
+ _otelTraceState = _initOTelTraceStateSymbol();
3452
+ }
3453
+ var otTraceState = {
3454
+ set: function (key, value) {
3455
+ var newState = createW3cTraceState(STR_EMPTY, traceState);
3456
+ newState.set(key, value);
3457
+ return _createOTelTraceState(newState);
3458
+ },
3459
+ unset: function (key) {
3460
+ var newState = createW3cTraceState(STR_EMPTY, traceState);
3461
+ newState.del(key);
3462
+ return _createOTelTraceState(newState);
3463
+ },
3464
+ get: function (key) {
3465
+ return traceState.get(key);
3466
+ },
3467
+ serialize: function () {
3468
+ var headers = traceState.hdrs(1);
3469
+ if (headers[_DYN_LENGTH$1 ] > 0) {
3470
+ return headers[0];
3471
+ }
3472
+ return STR_EMPTY;
3473
+ }
3474
+ };
3475
+ objDefine(otTraceState, _otelTraceState.v, { g: function () { return traceState; } });
3476
+ return otTraceState;
2967
3477
  }
2968
- function isValidTraceId(value) {
2969
- return _isValid(value, 32, INVALID_TRACE_ID);
3478
+ /*#__NO_SIDE_EFFECTS__*/
3479
+ function isOTelTraceState(value) {
3480
+ if (!_otelTraceState) {
3481
+ _otelTraceState = _initOTelTraceStateSymbol();
3482
+ }
3483
+ if (value && value[_otelTraceState.v]) {
3484
+ return true;
3485
+ }
3486
+ return value && isFunction(value.serialize) && isFunction(value.unset) && isFunction(value.get) && isFunction(value.set);
2970
3487
  }
2971
- function isValidSpanId(value) {
2972
- return _isValid(value, 16, INVALID_SPAN_ID);
3488
+ /*#__NO_SIDE_EFFECTS__*/
3489
+ function createOTelTraceState(value) {
3490
+ var traceState = null;
3491
+ if (isOTelTraceState(value)) {
3492
+ var parentTraceState = void 0;
3493
+ if (_otelTraceState) {
3494
+ parentTraceState = value[_otelTraceState.v];
3495
+ }
3496
+ if (parentTraceState) {
3497
+ traceState = createW3cTraceState(STR_EMPTY, parentTraceState);
3498
+ }
3499
+ else {
3500
+ traceState = createW3cTraceState(value.serialize());
3501
+ }
3502
+ }
3503
+ else if (isW3cTraceState(value)) {
3504
+ traceState = value;
3505
+ }
3506
+ else {
3507
+ traceState = createW3cTraceState(isString(value) ? value : STR_EMPTY);
3508
+ }
3509
+ return _createOTelTraceState(traceState);
2973
3510
  }
2974
- function findAllScripts(doc) {
2975
- var scripts = doc.getElementsByTagName("script");
2976
- var result = [];
2977
- arrForEach(scripts, function (script) {
2978
- var src = script[_DYN_GET_ATTRIBUTE ]("src");
2979
- if (src) {
2980
- var crossOrigin = script[_DYN_GET_ATTRIBUTE ]("crossorigin");
2981
- var async = script.hasAttribute("async") === true;
2982
- var defer = script.hasAttribute("defer") === true;
2983
- var referrerPolicy = script[_DYN_GET_ATTRIBUTE ]("referrerpolicy");
2984
- var info = { url: src };
2985
- if (crossOrigin) {
2986
- info.crossOrigin = crossOrigin;
2987
- }
2988
- if (async) {
2989
- info.async = async;
2990
- }
2991
- if (defer) {
2992
- info.defer = defer;
2993
- }
2994
- if (referrerPolicy) {
2995
- info.referrerPolicy = referrerPolicy;
3511
+
3512
+ function createOTelSpanContext(traceContext) {
3513
+ var traceId = isValidTraceId(traceContext[_DYN_TRACE_ID ]) ? traceContext[_DYN_TRACE_ID ] : INVALID_TRACE_ID;
3514
+ var spanId = isValidSpanId(traceContext[_DYN_SPAN_ID ]) ? traceContext[_DYN_SPAN_ID ] : INVALID_SPAN_ID;
3515
+ var isRemote = traceContext.isRemote;
3516
+ var traceFlags = (!isNullOrUndefined(traceContext[_DYN_TRACE_FLAGS ]) ? traceContext[_DYN_TRACE_FLAGS ] : 1 );
3517
+ var otTraceState = null;
3518
+ var traceContextObj = {
3519
+ traceId: traceId,
3520
+ spanId: spanId,
3521
+ traceFlags: traceFlags
3522
+ };
3523
+ return objDefineProps(traceContextObj, {
3524
+ traceId: {
3525
+ g: function () { return traceId; },
3526
+ s: function (value) { return traceId = isValidTraceId(value) ? value : INVALID_TRACE_ID; }
3527
+ },
3528
+ spanId: {
3529
+ g: function () { return spanId; },
3530
+ s: function (value) { return spanId = isValidSpanId(value) ? value : INVALID_SPAN_ID; }
3531
+ },
3532
+ isRemote: {
3533
+ g: function () { return isRemote; }
3534
+ },
3535
+ traceFlags: {
3536
+ g: function () { return traceFlags; },
3537
+ s: function (value) { return traceFlags = value; }
3538
+ },
3539
+ traceState: {
3540
+ g: function () {
3541
+ if (!otTraceState) {
3542
+ otTraceState = createOTelTraceState(traceContext[_DYN_TRACE_STATE ]);
3543
+ }
3544
+ return otTraceState;
3545
+ },
3546
+ s: function (value) {
3547
+ otTraceState = value;
2996
3548
  }
2997
- result[_DYN_PUSH ](info);
2998
3549
  }
2999
3550
  });
3000
- return result;
3001
3551
  }
3002
3552
 
3003
3553
  var pluginStateData = createElmNodeData("plugin");
3004
3554
  function _getPluginState(plugin) {
3005
3555
  return pluginStateData.get(plugin, "state", {}, true);
3006
3556
  }
3557
+ /*#__NO_SIDE_EFFECTS__*/
3558
+ function isDistributedTraceContext(obj) {
3559
+ return obj &&
3560
+ isFunction(obj.getName) &&
3561
+ isFunction(obj.getTraceId) &&
3562
+ isFunction(obj.getSpanId) &&
3563
+ isFunction(obj.getTraceFlags) &&
3564
+ isFunction(obj.setName) &&
3565
+ isFunction(obj.setTraceId) &&
3566
+ isFunction(obj.setSpanId) &&
3567
+ isFunction(obj[_DYN_SET_TRACE_FLAGS ]);
3568
+ }
3569
+ /*#__NO_SIDE_EFFECTS__*/
3570
+ function createDistributedTraceContext(parent) {
3571
+ var _a;
3572
+ var parentCtx = null;
3573
+ var initCtx = null;
3574
+ var traceId = (parent && isValidTraceId(parent[_DYN_TRACE_ID ])) ? parent[_DYN_TRACE_ID ] : generateW3CId();
3575
+ var spanId = (parent && isValidSpanId(parent[_DYN_SPAN_ID ])) ? parent[_DYN_SPAN_ID ] : STR_EMPTY;
3576
+ var traceFlags = parent ? parent[_DYN_TRACE_FLAGS ] : UNDEFINED_VALUE;
3577
+ var isRemote = parent ? parent.isRemote : false;
3578
+ var pageName = STR_EMPTY;
3579
+ var traceState = null;
3580
+ if (parent) {
3581
+ if (isDistributedTraceContext(parent)) {
3582
+ parentCtx = parent;
3583
+ pageName = parentCtx.getName();
3584
+ }
3585
+ else {
3586
+ initCtx = parent;
3587
+ }
3588
+ }
3589
+ if (!pageName) {
3590
+ pageName = "_unknown_";
3591
+ var location_1 = getLocation();
3592
+ if (location_1 && location_1[_DYN_PATHNAME ]) {
3593
+ pageName = location_1[_DYN_PATHNAME ] + (location_1.hash || "");
3594
+ }
3595
+ }
3596
+ function _getName() {
3597
+ return pageName;
3598
+ }
3599
+ function _setPageNameFn(updateParent) {
3600
+ return function (newValue) {
3601
+ if (updateParent) {
3602
+ parentCtx && parentCtx.setName(newValue);
3603
+ }
3604
+ pageName = newValue;
3605
+ };
3606
+ }
3607
+ function _getTraceId() {
3608
+ return traceId;
3609
+ }
3610
+ function _setTraceIdFn(updateParent) {
3611
+ return function (newValue) {
3612
+ if (updateParent) {
3613
+ parentCtx && parentCtx.setTraceId(newValue);
3614
+ }
3615
+ if (isValidTraceId(newValue)) {
3616
+ traceId = newValue;
3617
+ }
3618
+ };
3619
+ }
3620
+ function _getSpanId() {
3621
+ return spanId;
3622
+ }
3623
+ function _setSpanIdFn(updateParent) {
3624
+ return function (newValue) {
3625
+ if (updateParent) {
3626
+ parentCtx && parentCtx.setSpanId(newValue);
3627
+ }
3628
+ if (isValidSpanId(newValue)) {
3629
+ spanId = newValue;
3630
+ }
3631
+ };
3632
+ }
3633
+ function _getTraceFlags() {
3634
+ return traceFlags;
3635
+ }
3636
+ function _setTraceFlagsFn(updateParent) {
3637
+ return function (newTraceFlags) {
3638
+ if (updateParent) {
3639
+ parentCtx && parentCtx[_DYN_SET_TRACE_FLAGS ](newTraceFlags);
3640
+ }
3641
+ traceFlags = newTraceFlags;
3642
+ };
3643
+ }
3644
+ function _getTraceState() {
3645
+ if (!traceState) {
3646
+ if (!parentCtx) {
3647
+ if (initCtx) {
3648
+ if (isOTelTraceState(initCtx[_DYN_TRACE_STATE ])) {
3649
+ traceState = createW3cTraceState(initCtx[_DYN_TRACE_STATE ].serialize() || STR_EMPTY, parentCtx ? parentCtx[_DYN_TRACE_STATE ] : undefined);
3650
+ }
3651
+ else {
3652
+ traceState = createW3cTraceState(STR_EMPTY, initCtx[_DYN_TRACE_STATE ] || (parentCtx ? parentCtx[_DYN_TRACE_STATE ] : undefined));
3653
+ }
3654
+ }
3655
+ }
3656
+ if (!traceState) {
3657
+ traceState = createW3cTraceState(STR_EMPTY, parentCtx ? parentCtx[_DYN_TRACE_STATE ] : undefined);
3658
+ }
3659
+ }
3660
+ return traceState;
3661
+ }
3662
+ var otelSpanCtx = null;
3663
+ var traceCtx = setProtoTypeName((_a = {
3664
+ getName: _getName,
3665
+ setName: _setPageNameFn(true),
3666
+ getTraceId: _getTraceId,
3667
+ setTraceId: _setTraceIdFn(true),
3668
+ getSpanId: _getSpanId,
3669
+ setSpanId: _setSpanIdFn(true),
3670
+ getTraceFlags: _getTraceFlags
3671
+ },
3672
+ _a[_DYN_SET_TRACE_FLAGS ] = _setTraceFlagsFn(true),
3673
+ _a.traceId = traceId,
3674
+ _a.spanId = spanId,
3675
+ _a.traceFlags = traceFlags,
3676
+ _a.traceState = traceState,
3677
+ _a.isRemote = isRemote,
3678
+ _a.pageName = pageName,
3679
+ _a.getOTelSpanContext = function () {
3680
+ if (!otelSpanCtx) {
3681
+ otelSpanCtx = createOTelSpanContext(traceCtx);
3682
+ }
3683
+ return otelSpanCtx;
3684
+ },
3685
+ _a), "DistributedTraceContext");
3686
+ return objDefineProps(traceCtx, {
3687
+ pageName: {
3688
+ g: _getName,
3689
+ s: _setPageNameFn(false)
3690
+ },
3691
+ traceId: {
3692
+ g: _getTraceId,
3693
+ s: _setTraceIdFn(false)
3694
+ },
3695
+ spanId: {
3696
+ g: _getSpanId,
3697
+ s: _setSpanIdFn(false)
3698
+ },
3699
+ traceFlags: {
3700
+ g: _getTraceFlags,
3701
+ s: _setTraceFlagsFn(false)
3702
+ },
3703
+ isRemote: {
3704
+ v: isRemote,
3705
+ w: false
3706
+ },
3707
+ traceState: {
3708
+ g: _getTraceState
3709
+ },
3710
+ parentCtx: {
3711
+ g: function () { return parentCtx; }
3712
+ },
3713
+ _parent: {
3714
+ g: function () {
3715
+ var result;
3716
+ if (parentCtx) {
3717
+ result = {
3718
+ t: "traceCtx",
3719
+ v: parentCtx
3720
+ };
3721
+ }
3722
+ else if (initCtx) {
3723
+ result = {
3724
+ t: "initCtx",
3725
+ v: initCtx
3726
+ };
3727
+ }
3728
+ return result;
3729
+ }
3730
+ }
3731
+ });
3732
+ }
3007
3733
 
3008
3734
  var strTelemetryPluginChain = "TelemetryPluginChain";
3009
3735
  var strHasRunFlags = "_hasRun";
@@ -3016,7 +3742,7 @@
3016
3742
  }
3017
3743
  proxy = proxy[_DYN_GET_NEXT ]();
3018
3744
  }
3019
- return createTelemetryProxyChain([startAt], core.config || {}, core);
3745
+ return createTelemetryProxyChain([startAt], core[_DYN_CONFIG$1 ] || {}, core);
3020
3746
  }
3021
3747
  function _createInternalContext(telemetryChain, dynamicHandler, core, startAt) {
3022
3748
  var _nextProxy = null;
@@ -3072,7 +3798,7 @@
3072
3798
  _nextProxy = nextProxy ? nextProxy[_DYN_GET_NEXT ]() : null;
3073
3799
  if (!nextProxy) {
3074
3800
  var onComplete = _onComplete;
3075
- if (onComplete && onComplete[_DYN_LENGTH$2 ] > 0) {
3801
+ if (onComplete && onComplete[_DYN_LENGTH$1 ] > 0) {
3076
3802
  arrForEach(onComplete, function (completeDetails) {
3077
3803
  try {
3078
3804
  completeDetails.func.call(completeDetails.self, completeDetails.args);
@@ -3088,27 +3814,26 @@
3088
3814
  }
3089
3815
  function _getExtCfg(identifier, createIfMissing) {
3090
3816
  var idCfg = null;
3091
- var cfg = dynamicHandler.cfg;
3817
+ var extCfg = _getCfg(dynamicHandler.cfg, "extensionConfig", createIfMissing);
3818
+ if (extCfg) {
3819
+ idCfg = _getCfg(extCfg, identifier, createIfMissing);
3820
+ }
3821
+ return idCfg;
3822
+ }
3823
+ function _getCfg(cfg, identifier, createIfMissing) {
3824
+ var idCfg = null;
3092
3825
  if (cfg && identifier) {
3093
- var extCfg = cfg[STR_EXTENSION_CONFIG ];
3094
- if (!extCfg && createIfMissing) {
3095
- extCfg = {};
3096
- }
3097
- cfg[STR_EXTENSION_CONFIG] = extCfg;
3098
- extCfg = dynamicHandler.ref(cfg, STR_EXTENSION_CONFIG);
3099
- if (extCfg) {
3100
- idCfg = extCfg[identifier];
3101
- if (!idCfg && createIfMissing) {
3102
- idCfg = {};
3103
- }
3104
- extCfg[identifier] = idCfg;
3105
- idCfg = dynamicHandler.ref(extCfg, identifier);
3826
+ idCfg = cfg[identifier];
3827
+ if (!idCfg && createIfMissing) {
3828
+ idCfg = {};
3106
3829
  }
3830
+ cfg[identifier] = idCfg;
3831
+ idCfg = dynamicHandler.ref(cfg, identifier);
3107
3832
  }
3108
3833
  return idCfg;
3109
3834
  }
3110
- function _resolveExtCfg(identifier, defaultValues) {
3111
- var newConfig = _getExtCfg(identifier, true);
3835
+ function _resolveExtCfg(identifier, defaultValues, rootOnly) {
3836
+ var newConfig = rootOnly ? _getCfg(dynamicHandler.cfg, identifier, true) : _getExtCfg(identifier, true);
3112
3837
  if (defaultValues) {
3113
3838
  objForEachKey(defaultValues, function (field, defaultValue) {
3114
3839
  if (isNullOrUndefined(newConfig[field])) {
@@ -3169,7 +3894,7 @@
3169
3894
  return context;
3170
3895
  }
3171
3896
  function createProcessTelemetryUnloadContext(telemetryChain, core, startAt) {
3172
- var config = createDynamicConfig(core.config);
3897
+ var config = createDynamicConfig(core[_DYN_CONFIG$1 ]);
3173
3898
  var internalContext = _createInternalContext(telemetryChain, config, core, startAt);
3174
3899
  var context = internalContext.ctx;
3175
3900
  function _processNext(unloadState) {
@@ -3189,7 +3914,7 @@
3189
3914
  return context;
3190
3915
  }
3191
3916
  function createProcessTelemetryUpdateContext(telemetryChain, core, startAt) {
3192
- var config = createDynamicConfig(core.config);
3917
+ var config = createDynamicConfig(core[_DYN_CONFIG$1 ]);
3193
3918
  var internalContext = _createInternalContext(telemetryChain, config, core, startAt);
3194
3919
  var context = internalContext.ctx;
3195
3920
  function _processNext(updateState) {
@@ -3213,7 +3938,7 @@
3213
3938
  function createTelemetryProxyChain(plugins, config, core, startAt) {
3214
3939
  var firstProxy = null;
3215
3940
  var add = startAt ? false : true;
3216
- if (isArray(plugins) && plugins[_DYN_LENGTH$2 ] > 0) {
3941
+ if (isArray(plugins) && plugins[_DYN_LENGTH$1 ] > 0) {
3217
3942
  var lastProxy_1 = null;
3218
3943
  arrForEach(plugins, function (thePlugin) {
3219
3944
  if (!add && startAt === thePlugin) {
@@ -3237,6 +3962,7 @@
3237
3962
  return firstProxy;
3238
3963
  }
3239
3964
  function createTelemetryPluginProxy(plugin, config, core) {
3965
+ var _a;
3240
3966
  var nextProxy = null;
3241
3967
  var hasProcessTelemetry = isFunction(plugin[STR_PROCESS_TELEMETRY ]);
3242
3968
  var hasSetNext = isFunction(plugin[_DYN_SET_NEXT_PLUGIN ]);
@@ -3247,21 +3973,22 @@
3247
3973
  else {
3248
3974
  chainId = "Unknown-0-" + _chainId++;
3249
3975
  }
3250
- var proxyChain = {
3251
- getPlugin: function () {
3252
- return plugin;
3253
- },
3254
- getNext: function () {
3255
- return nextProxy;
3976
+ var proxyChain = (_a = {
3977
+ getPlugin: function () {
3978
+ return plugin;
3979
+ },
3980
+ getNext: function () {
3981
+ return nextProxy;
3982
+ }
3256
3983
  },
3257
- processTelemetry: _processTelemetry,
3258
- unload: _unloadPlugin,
3259
- update: _updatePlugin,
3260
- _id: chainId,
3261
- _setNext: function (nextPlugin) {
3984
+ _a[STR_PROCESS_TELEMETRY ] = _processTelemetry,
3985
+ _a.unload = _unloadPlugin,
3986
+ _a.update = _updatePlugin,
3987
+ _a._id = chainId,
3988
+ _a._setNext = function (nextPlugin) {
3262
3989
  nextProxy = nextPlugin;
3263
- }
3264
- };
3990
+ },
3991
+ _a);
3265
3992
  function _getTelCtx() {
3266
3993
  var itemCtx;
3267
3994
  if (plugin && isFunction(plugin[strGetTelCtx])) {
@@ -3340,7 +4067,7 @@
3340
4067
  }
3341
4068
  return hasRun;
3342
4069
  }
3343
- if (!_processChain(unloadCtx, _callTeardown, "unload", function () { }, unloadState.isAsync)) {
4070
+ if (!_processChain(unloadCtx, _callTeardown, "unload", _noopVoid, unloadState.isAsync)) {
3344
4071
  unloadCtx[_DYN_PROCESS_NEXT ](unloadState);
3345
4072
  }
3346
4073
  }
@@ -3358,13 +4085,14 @@
3358
4085
  }
3359
4086
  return hasRun;
3360
4087
  }
3361
- if (!_processChain(updateCtx, _callUpdate, "update", function () { }, false)) {
4088
+ if (!_processChain(updateCtx, _callUpdate, "update", _noopVoid, false)) {
3362
4089
  updateCtx[_DYN_PROCESS_NEXT ](updateState);
3363
4090
  }
3364
4091
  }
3365
4092
  return objFreeze(proxyChain);
3366
4093
  }
3367
4094
 
4095
+ /*#__NO_SIDE_EFFECTS__*/
3368
4096
  function createUnloadHandlerContainer() {
3369
4097
  var handlers = [];
3370
4098
  function _addHandler(handler) {
@@ -3559,19 +4287,24 @@
3559
4287
  var strDetachEvent = "detachEvent";
3560
4288
  var strRemoveEventListener = "removeEventListener";
3561
4289
  var strEvents = "events";
3562
- createUniqueNamespace("aiEvtPageHide");
3563
- createUniqueNamespace("aiEvtPageShow");
3564
4290
  var rRemoveEmptyNs = /\.[\.]+/g;
3565
4291
  var rRemoveTrailingEmptyNs = /[\.]+$/;
3566
4292
  var _guid = 1;
3567
- var elmNodeData = createElmNodeData("events");
4293
+ var _elmNodeData;
4294
+ /*#__NO_SIDE_EFFECTS__*/
4295
+ function _getElmNodeData() {
4296
+ !_elmNodeData && (_elmNodeData = createCachedValue(createElmNodeData("events")));
4297
+ return _elmNodeData.v;
4298
+ }
3568
4299
  var eventNamespace = /^([^.]*)(?:\.(.+)|)/;
4300
+ /*#__NO_SIDE_EFFECTS__*/
3569
4301
  function _normalizeNamespace(name) {
3570
4302
  if (name && name[_DYN_REPLACE ]) {
3571
4303
  return name[_DYN_REPLACE ](/^[\s\.]+|(?=[\s\.])[\.\s]+$/g, STR_EMPTY);
3572
4304
  }
3573
4305
  return name;
3574
4306
  }
4307
+ /*#__NO_SIDE_EFFECTS__*/
3575
4308
  function _getEvtNamespace(eventName, evtNamespace) {
3576
4309
  if (evtNamespace) {
3577
4310
  var theNamespace_1 = STR_EMPTY;
@@ -3600,12 +4333,13 @@
3600
4333
  var parsedEvent = (eventNamespace.exec(eventName || STR_EMPTY) || []);
3601
4334
  return {
3602
4335
  type: parsedEvent[1],
3603
- ns: ((parsedEvent[2] || STR_EMPTY).replace(rRemoveEmptyNs, ".").replace(rRemoveTrailingEmptyNs, STR_EMPTY)[_DYN_SPLIT$1 ](".").sort()).join(".")
4336
+ ns: ((parsedEvent[2] || STR_EMPTY).replace(rRemoveEmptyNs, ".").replace(rRemoveTrailingEmptyNs, STR_EMPTY).split(".").sort())[_DYN_JOIN ](".")
3604
4337
  };
3605
4338
  }
4339
+ /*#__NO_SIDE_EFFECTS__*/
3606
4340
  function _getRegisteredEvents(target, evtName, addDefault) {
3607
4341
  if (addDefault === void 0) { addDefault = true; }
3608
- var aiEvts = elmNodeData.get(target, strEvents, {}, addDefault);
4342
+ var aiEvts = _getElmNodeData().get(target, strEvents, {}, addDefault);
3609
4343
  var registeredEvents = aiEvts[evtName];
3610
4344
  if (!registeredEvents) {
3611
4345
  registeredEvents = aiEvts[evtName] = [];
@@ -3637,7 +4371,7 @@
3637
4371
  return result;
3638
4372
  }
3639
4373
  function _doUnregister(target, events, evtName, unRegFn) {
3640
- var idx = events[_DYN_LENGTH$2 ];
4374
+ var idx = events[_DYN_LENGTH$1 ];
3641
4375
  while (idx--) {
3642
4376
  var theEvent = events[idx];
3643
4377
  if (theEvent) {
@@ -3655,25 +4389,26 @@
3655
4389
  _doUnregister(target, _getRegisteredEvents(target, evtName[_DYN_TYPE ]), evtName, unRegFn);
3656
4390
  }
3657
4391
  else {
3658
- var eventCache = elmNodeData.get(target, strEvents, {});
4392
+ var eventCache = _getElmNodeData().get(target, strEvents, {});
3659
4393
  objForEachKey(eventCache, function (evtType, events) {
3660
4394
  _doUnregister(target, events, evtName, unRegFn);
3661
4395
  });
3662
- if (objKeys(eventCache)[_DYN_LENGTH$2 ] === 0) {
3663
- elmNodeData.kill(target, strEvents);
4396
+ if (objKeys(eventCache)[_DYN_LENGTH$1 ] === 0) {
4397
+ _getElmNodeData().kill(target, strEvents);
3664
4398
  }
3665
4399
  }
3666
4400
  }
4401
+ /*#__NO_SIDE_EFFECTS__*/
3667
4402
  function mergeEvtNamespace(theNamespace, namespaces) {
3668
4403
  var newNamespaces;
3669
4404
  if (namespaces) {
3670
4405
  if (isArray(namespaces)) {
3671
- newNamespaces = [theNamespace].concat(namespaces);
4406
+ newNamespaces = [theNamespace][_DYN_CONCAT ](namespaces);
3672
4407
  }
3673
4408
  else {
3674
4409
  newNamespaces = [theNamespace, namespaces];
3675
4410
  }
3676
- newNamespaces = (_getEvtNamespace("xx", newNamespaces).ns)[_DYN_SPLIT$1 ](".");
4411
+ newNamespaces = (_getEvtNamespace("xx", newNamespaces).ns)[_DYN_SPLIT ](".");
3677
4412
  }
3678
4413
  else {
3679
4414
  newNamespaces = theNamespace;
@@ -3687,7 +4422,7 @@
3687
4422
  try {
3688
4423
  var evtName = _getEvtNamespace(eventName, evtNamespace);
3689
4424
  result = _doAttach(target, evtName, handlerRef, useCapture);
3690
- if (result && elmNodeData.accept(target)) {
4425
+ if (result && _getElmNodeData().accept(target)) {
3691
4426
  var registeredEvent = {
3692
4427
  guid: _guid++,
3693
4428
  evtName: evtName,
@@ -3730,7 +4465,7 @@
3730
4465
  ];
3731
4466
  function _arrLoop(arr, fn) {
3732
4467
  if (arr) {
3733
- for (var lp = 0; lp < arr[_DYN_LENGTH$2 ]; lp++) {
4468
+ for (var lp = 0; lp < arr[_DYN_LENGTH$1 ]; lp++) {
3734
4469
  if (fn(arr[lp], lp)) {
3735
4470
  break;
3736
4471
  }
@@ -3862,35 +4597,7 @@
3862
4597
  return null;
3863
4598
  }
3864
4599
 
3865
- var strNotSpecified = "not_specified";
3866
- var strIkey = "iKey";
3867
-
3868
- var _DYN_SPLIT = "split";
3869
- var _DYN_LENGTH$1 = "length";
3870
- var _DYN_TO_LOWER_CASE = "toLowerCase";
3871
- var _DYN_TO_STRING$1 = "toString";
3872
- var _DYN_REMOVE_ITEM = "removeItem";
3873
- var _DYN_MESSAGE = "message";
3874
- var _DYN_COUNT = "count";
3875
- var _DYN_STRINGIFY = "stringify";
3876
- var _DYN_PATHNAME = "pathname";
3877
- var _DYN_MATCH = "match";
3878
- var _DYN_NAME = "name";
3879
- var _DYN_PROPERTIES$1 = "properties";
3880
- var _DYN_MEASUREMENTS = "measurements";
3881
- var _DYN_SIZE_IN_BYTES = "sizeInBytes";
3882
- var _DYN_TYPE_NAME = "typeName";
3883
- var _DYN_EXCEPTIONS = "exceptions";
3884
- var _DYN_SEVERITY_LEVEL = "severityLevel";
3885
- var _DYN_PROBLEM_GROUP = "problemGroup";
3886
- var _DYN_PARSED_STACK = "parsedStack";
3887
- var _DYN_HAS_FULL_STACK = "hasFullStack";
3888
- var _DYN_ASSEMBLY = "assembly";
3889
- var _DYN_FILE_NAME = "fileName";
3890
- var _DYN_LINE = "line";
3891
- var _DYN_AI_DATA_CONTRACT = "aiDataContract";
3892
- var _DYN_DURATION$1 = "duration";
3893
-
4600
+ /*#__NO_SIDE_EFFECTS__*/
3894
4601
  function dataSanitizeKeyAndAddUniqueness(logger, key, map) {
3895
4602
  var origLength = key[_DYN_LENGTH$1 ];
3896
4603
  var field = dataSanitizeKey(logger, key);
@@ -3905,6 +4612,7 @@
3905
4612
  }
3906
4613
  return field;
3907
4614
  }
4615
+ /*#__NO_SIDE_EFFECTS__*/
3908
4616
  function dataSanitizeKey(logger, name) {
3909
4617
  var nameTrunc;
3910
4618
  if (name) {
@@ -3916,6 +4624,7 @@
3916
4624
  }
3917
4625
  return nameTrunc || name;
3918
4626
  }
4627
+ /*#__NO_SIDE_EFFECTS__*/
3919
4628
  function dataSanitizeString(logger, value, maxLength) {
3920
4629
  if (maxLength === void 0) { maxLength = 1024 ; }
3921
4630
  var valueTrunc;
@@ -3929,12 +4638,7 @@
3929
4638
  }
3930
4639
  return valueTrunc || value;
3931
4640
  }
3932
- function dataSanitizeUrl(logger, url, config) {
3933
- if (isString(url)) {
3934
- url = fieldRedaction(url, config);
3935
- }
3936
- return dataSanitizeInput(logger, url, 2048 , 66 );
3937
- }
4641
+ /*#__NO_SIDE_EFFECTS__*/
3938
4642
  function dataSanitizeMessage(logger, message) {
3939
4643
  var messageTrunc;
3940
4644
  if (message) {
@@ -3945,6 +4649,7 @@
3945
4649
  }
3946
4650
  return messageTrunc || message;
3947
4651
  }
4652
+ /*#__NO_SIDE_EFFECTS__*/
3948
4653
  function dataSanitizeException(logger, exception) {
3949
4654
  var exceptionTrunc;
3950
4655
  if (exception) {
@@ -3956,6 +4661,7 @@
3956
4661
  }
3957
4662
  return exceptionTrunc || exception;
3958
4663
  }
4664
+ /*#__NO_SIDE_EFFECTS__*/
3959
4665
  function dataSanitizeProperties(logger, properties) {
3960
4666
  if (properties) {
3961
4667
  var tempProps_1 = {};
@@ -3976,6 +4682,7 @@
3976
4682
  }
3977
4683
  return properties;
3978
4684
  }
4685
+ /*#__NO_SIDE_EFFECTS__*/
3979
4686
  function dataSanitizeMeasurements(logger, measurements) {
3980
4687
  if (measurements) {
3981
4688
  var tempMeasurements_1 = {};
@@ -3985,109 +4692,14 @@
3985
4692
  });
3986
4693
  measurements = tempMeasurements_1;
3987
4694
  }
3988
- return measurements;
3989
- }
3990
- function dataSanitizeId(logger, id) {
3991
- return id ? dataSanitizeInput(logger, id, 128 , 69 )[_DYN_TO_STRING$1 ]() : id;
3992
- }
3993
- function dataSanitizeInput(logger, input, maxLength, _msgId) {
3994
- var inputTrunc;
3995
- if (input) {
3996
- input = strTrim(asString(input));
3997
- if (input[_DYN_LENGTH$1 ] > maxLength) {
3998
- inputTrunc = strSubstring(input, 0, maxLength);
3999
- _throwInternal(logger, 2 , _msgId, "input is too long, it has been truncated to " + maxLength + " characters.", { data: input }, true);
4000
- }
4001
- }
4002
- return inputTrunc || input;
4003
- }
4004
- function dsPadNumber(num) {
4005
- var s = "00" + num;
4006
- return strSubstr(s, s[_DYN_LENGTH$1 ] - 3);
4007
- }
4008
-
4009
- var _document = getDocument() || {};
4010
- var _htmlAnchorIdx = 0;
4011
- var _htmlAnchorElement = [null, null, null, null, null];
4012
- function urlParseUrl(url) {
4013
- var anchorIdx = _htmlAnchorIdx;
4014
- var anchorCache = _htmlAnchorElement;
4015
- var tempAnchor = anchorCache[anchorIdx];
4016
- if (!_document.createElement) {
4017
- tempAnchor = { host: urlParseHost(url, true) };
4018
- }
4019
- else if (!anchorCache[anchorIdx]) {
4020
- tempAnchor = anchorCache[anchorIdx] = _document.createElement("a");
4021
- }
4022
- tempAnchor.href = url;
4023
- anchorIdx++;
4024
- if (anchorIdx >= anchorCache[_DYN_LENGTH$1 ]) {
4025
- anchorIdx = 0;
4026
- }
4027
- _htmlAnchorIdx = anchorIdx;
4028
- return tempAnchor;
4029
- }
4030
- function urlParseHost(url, inclPort) {
4031
- var fullHost = urlParseFullHost(url, inclPort) || "";
4032
- if (fullHost) {
4033
- var match = fullHost[_DYN_MATCH ](/(www\d{0,5}\.)?([^\/:]{1,256})(:\d{1,20})?/i);
4034
- if (match != null && match[_DYN_LENGTH$1 ] > 3 && isString(match[2]) && match[2][_DYN_LENGTH$1 ] > 0) {
4035
- return match[2] + (match[3] || "");
4036
- }
4037
- }
4038
- return fullHost;
4039
- }
4040
- function urlParseFullHost(url, inclPort) {
4041
- var result = null;
4042
- if (url) {
4043
- var match = url[_DYN_MATCH ](/(\w{1,150}):\/\/([^\/:]{1,256})(:\d{1,20})?/i);
4044
- if (match != null && match[_DYN_LENGTH$1 ] > 2 && isString(match[2]) && match[2][_DYN_LENGTH$1 ] > 0) {
4045
- result = match[2] || "";
4046
- if (inclPort && match[_DYN_LENGTH$1 ] > 2) {
4047
- var protocol = (match[1] || "")[_DYN_TO_LOWER_CASE ]();
4048
- var port = match[3] || "";
4049
- if (protocol === "http" && port === ":80") {
4050
- port = "";
4051
- }
4052
- else if (protocol === "https" && port === ":443") {
4053
- port = "";
4054
- }
4055
- result += port;
4056
- }
4057
- }
4058
- }
4059
- return result;
4695
+ return measurements;
4060
4696
  }
4061
-
4062
- function AjaxHelperParseDependencyPath(logger, absoluteUrl, method, commandName) {
4063
- var target, name = commandName, data = commandName;
4064
- if (absoluteUrl && absoluteUrl[_DYN_LENGTH$1 ] > 0) {
4065
- var parsedUrl = urlParseUrl(absoluteUrl);
4066
- target = parsedUrl.host;
4067
- if (!name) {
4068
- if (parsedUrl[_DYN_PATHNAME ] != null) {
4069
- var pathName = (parsedUrl.pathname[_DYN_LENGTH$1 ] === 0) ? "/" : parsedUrl[_DYN_PATHNAME ];
4070
- if (pathName.charAt(0) !== "/") {
4071
- pathName = "/" + pathName;
4072
- }
4073
- data = parsedUrl[_DYN_PATHNAME ];
4074
- name = dataSanitizeString(logger, method ? method + " " + pathName : pathName);
4075
- }
4076
- else {
4077
- name = dataSanitizeString(logger, absoluteUrl);
4078
- }
4079
- }
4080
- }
4081
- else {
4082
- target = commandName;
4083
- name = commandName;
4084
- }
4085
- return {
4086
- target: target,
4087
- name: name,
4088
- data: data
4089
- };
4697
+ /*#__NO_SIDE_EFFECTS__*/
4698
+ function dsPadNumber(num) {
4699
+ var s = "00" + num;
4700
+ return strSubstr(s, s[_DYN_LENGTH$1 ] - 3);
4090
4701
  }
4702
+
4091
4703
  function dateTimeUtilsDuration(start, end) {
4092
4704
  var result = null;
4093
4705
  if (start !== 0 && end !== 0 && !isNullOrUndefined(start) && !isNullOrUndefined(end)) {
@@ -4095,43 +4707,6 @@
4095
4707
  }
4096
4708
  return result;
4097
4709
  }
4098
- function createDistributedTraceContextFromTrace(telemetryTrace, parentCtx) {
4099
- var trace = telemetryTrace || {};
4100
- return {
4101
- getName: function () {
4102
- return trace[_DYN_NAME ];
4103
- },
4104
- setName: function (newValue) {
4105
- parentCtx && parentCtx.setName(newValue);
4106
- trace[_DYN_NAME ] = newValue;
4107
- },
4108
- getTraceId: function () {
4109
- return trace.traceID;
4110
- },
4111
- setTraceId: function (newValue) {
4112
- parentCtx && parentCtx.setTraceId(newValue);
4113
- if (isValidTraceId(newValue)) {
4114
- trace.traceID = newValue;
4115
- }
4116
- },
4117
- getSpanId: function () {
4118
- return trace.parentID;
4119
- },
4120
- setSpanId: function (newValue) {
4121
- parentCtx && parentCtx.setSpanId(newValue);
4122
- if (isValidSpanId(newValue)) {
4123
- trace.parentID = newValue;
4124
- }
4125
- },
4126
- getTraceFlags: function () {
4127
- return trace.traceFlags;
4128
- },
4129
- setTraceFlags: function (newTraceFlags) {
4130
- parentCtx && parentCtx.setTraceFlags(newTraceFlags);
4131
- trace.traceFlags = newTraceFlags;
4132
- }
4133
- };
4134
- }
4135
4710
 
4136
4711
  var StorageType = ( /* @__PURE__ */createEnumStyle({
4137
4712
  LocalStorage: 0 ,
@@ -4140,7 +4715,7 @@
4140
4715
 
4141
4716
  var _canUseLocalStorage = undefined;
4142
4717
  var _canUseSessionStorage = undefined;
4143
- var _storagePrefix = "";
4718
+ var _storagePrefix = STR_EMPTY;
4144
4719
  function _getVerifiedStorageObject(storageType) {
4145
4720
  try {
4146
4721
  if (isNullOrUndefined(getGlobal())) {
@@ -4171,7 +4746,7 @@
4171
4746
  _canUseSessionStorage = false;
4172
4747
  }
4173
4748
  function utlSetStoragePrefix(storagePrefix) {
4174
- _storagePrefix = storagePrefix || "";
4749
+ _storagePrefix = storagePrefix || STR_EMPTY;
4175
4750
  }
4176
4751
  function utlEnableStorage() {
4177
4752
  _canUseLocalStorage = utlCanUseLocalStorage(true);
@@ -4231,24 +4806,24 @@
4231
4806
  return false;
4232
4807
  }
4233
4808
 
4234
- var Event$1 = /** @class */ (function () {
4235
- function Event(logger, name, properties, measurements) {
4236
- this.aiDataContract = {
4237
- ver: 1 ,
4238
- name: 1 ,
4239
- properties: 0 ,
4240
- measurements: 0
4241
- };
4242
- var _self = this;
4243
- _self.ver = 2;
4244
- _self[_DYN_NAME ] = dataSanitizeString(logger, name) || strNotSpecified;
4245
- _self[_DYN_PROPERTIES$1 ] = dataSanitizeProperties(logger, properties);
4246
- _self[_DYN_MEASUREMENTS ] = dataSanitizeMeasurements(logger, measurements);
4247
- }
4248
- Event.envelopeType = "Microsoft.ApplicationInsights.{0}.Event";
4249
- Event.dataType = "EventData";
4250
- return Event;
4251
- }());
4809
+ var EventDataType = "EventData";
4810
+ var ExceptionDataType = "ExceptionData";
4811
+ var MetricDataType = "MetricData";
4812
+ var PageViewDataType = "PageviewData";
4813
+ var PageViewPerformanceDataType = "PageviewPerformanceData";
4814
+ var RemoteDependencyDataType = "RemoteDependencyData";
4815
+ var TraceDataType = "MessageData";
4816
+
4817
+ /* #__NO_SIDE_EFFECTS__# */
4818
+ function _AddPrefix(name) {
4819
+ return "Microsoft.ApplicationInsights.{0}." + name;
4820
+ }
4821
+ var EventEnvelopeType = ( /*#__PURE__*/_AddPrefix("Event"));
4822
+ var ExceptionEnvelopeType = ( /*#__PURE__*/_AddPrefix("Exception"));
4823
+ var MetricEnvelopeType = ( /*#__PURE__*/_AddPrefix("Metric"));
4824
+ var PageViewEnvelopeType = ( /*#__PURE__*/_AddPrefix("Pageview"));
4825
+ var PageViewPerformanceEnvelopeType = ( /*#__PURE__*/_AddPrefix("PageviewPerformance"));
4826
+ var TraceEnvelopeType = ( /*#__PURE__*/_AddPrefix("Message"));
4252
4827
 
4253
4828
  var STACKFRAME_BASE_SIZE = 58;
4254
4829
  var IS_FRAME = /^\s{0,50}(from\s|at\s|Line\s{1,5}\d{1,10}\s{1,5}of|\w{1,50}@\w{1,80}|[^\(\s\n]+:[0-9\?]+(?::[0-9\?]+)?)/;
@@ -4272,7 +4847,7 @@
4272
4847
  { re: EXTRACT_FILENAME, len: 2, fn: 1, hdl: _handleFilename }
4273
4848
  ];
4274
4849
  function _scrubAnonymous(frame) {
4275
- return frame.replace(/(\(anonymous\))/, "<anonymous>");
4850
+ return frame[_DYN_REPLACE ](/(\(anonymous\))/, "<anonymous>");
4276
4851
  }
4277
4852
  function _ignoreNative(frame) {
4278
4853
  return strIndexOf(frame, "[native") < 0;
@@ -4363,7 +4938,7 @@
4363
4938
  entry += "@" + lines[lp + 1];
4364
4939
  lp++;
4365
4940
  }
4366
- stack.push(entry);
4941
+ stack[_DYN_PUSH ](entry);
4367
4942
  }
4368
4943
  return {
4369
4944
  src: errorMessage,
@@ -4380,8 +4955,8 @@
4380
4955
  else if (errorObj[strError] && errorObj[strError][strStack]) {
4381
4956
  details = _convertStackObj(errorObj[strError][strStack]);
4382
4957
  }
4383
- else if (errorObj["exception"] && errorObj.exception[strStack]) {
4384
- details = _convertStackObj(errorObj.exception[strStack]);
4958
+ else if (errorObj["exception"] && errorObj[_DYN_EXCEPTION ][strStack]) {
4959
+ details = _convertStackObj(errorObj[_DYN_EXCEPTION ][strStack]);
4385
4960
  }
4386
4961
  else if (_isStackDetails(errorObj)) {
4387
4962
  details = errorObj;
@@ -4392,8 +4967,8 @@
4392
4967
  else if (getWindow() && getWindow()["opera"] && errorObj[strMessage]) {
4393
4968
  details = _getOperaStack(errorObj[_DYN_MESSAGE ]);
4394
4969
  }
4395
- else if (errorObj["reason"] && errorObj.reason[strStack]) {
4396
- details = _convertStackObj(errorObj.reason[strStack]);
4970
+ else if (errorObj["reason"] && errorObj[_DYN_REASON ][strStack]) {
4971
+ details = _convertStackObj(errorObj[_DYN_REASON ][strStack]);
4397
4972
  }
4398
4973
  else if (isString(errorObj)) {
4399
4974
  details = _convertStackObj(errorObj);
@@ -4424,7 +4999,7 @@
4424
4999
  var stack = "";
4425
5000
  if (stackDetails) {
4426
5001
  if (stackDetails.obj) {
4427
- stack = stackDetails.obj.join("\n");
5002
+ stack = stackDetails.obj[_DYN_JOIN ]("\n");
4428
5003
  }
4429
5004
  else {
4430
5005
  stack = stackDetails.src || "";
@@ -4447,7 +5022,7 @@
4447
5022
  var parsedFrame = _extractStackFrame(theFrame, level_1);
4448
5023
  if (parsedFrame) {
4449
5024
  totalSizeInBytes_1 += parsedFrame[_DYN_SIZE_IN_BYTES ];
4450
- parsedStack.push(parsedFrame);
5025
+ parsedStack[_DYN_PUSH ](parsedFrame);
4451
5026
  level_1++;
4452
5027
  }
4453
5028
  }
@@ -4465,7 +5040,7 @@
4465
5040
  size += lSize + rSize;
4466
5041
  if (size > exceptionParsedStackThreshold) {
4467
5042
  var howMany = acceptedRight - acceptedLeft + 1;
4468
- parsedStack.splice(acceptedLeft, howMany);
5043
+ parsedStack[_DYN_SPLICE ](acceptedLeft, howMany);
4469
5044
  break;
4470
5045
  }
4471
5046
  acceptedLeft = left;
@@ -4613,12 +5188,12 @@
4613
5188
  ]
4614
5189
  };
4615
5190
  };
4616
- Exception.envelopeType = "Microsoft.ApplicationInsights.{0}.Exception";
4617
- Exception.dataType = "ExceptionData";
5191
+ Exception.envelopeType = ExceptionEnvelopeType;
5192
+ Exception.dataType = ExceptionDataType;
4618
5193
  Exception.formatError = _formatErrorCode;
4619
5194
  return Exception;
4620
5195
  }());
4621
- var exDetailsAiDataContract = objFreeze({
5196
+ var exDetailsAiDataContract = ( /*#__PURE__*/objFreeze({
4622
5197
  id: 0 ,
4623
5198
  outerId: 0 ,
4624
5199
  typeName: 1 ,
@@ -4626,7 +5201,7 @@
4626
5201
  hasFullStack: 0 ,
4627
5202
  stack: 0 ,
4628
5203
  parsedStack: 2
4629
- });
5204
+ }));
4630
5205
  function _toInterface() {
4631
5206
  var _self = this;
4632
5207
  var parsedStack = isArray(_self[_DYN_PARSED_STACK ])
@@ -4741,13 +5316,13 @@
4741
5316
  }
4742
5317
  return result;
4743
5318
  }
4744
- var stackFrameAiDataContract = objFreeze({
5319
+ var stackFrameAiDataContract = ( /*#__PURE__*/objFreeze({
4745
5320
  level: 1 ,
4746
5321
  method: 1 ,
4747
5322
  assembly: 0 ,
4748
5323
  fileName: 0 ,
4749
5324
  line: 0
4750
- });
5325
+ }));
4751
5326
  function _extractStackFrame(frame, level) {
4752
5327
  var _a;
4753
5328
  var theFrame;
@@ -4829,201 +5404,6 @@
4829
5404
  };
4830
5405
  }
4831
5406
 
4832
- var DataPoint = /** @class */ (function () {
4833
- function DataPoint() {
4834
- this.aiDataContract = {
4835
- name: 1 ,
4836
- kind: 0 ,
4837
- value: 1 ,
4838
- count: 0 ,
4839
- min: 0 ,
4840
- max: 0 ,
4841
- stdDev: 0
4842
- };
4843
- this.kind = 0 ;
4844
- }
4845
- return DataPoint;
4846
- }());
4847
-
4848
- var Metric = /** @class */ (function () {
4849
- function Metric(logger, name, value, count, min, max, stdDev, properties, measurements) {
4850
- this.aiDataContract = {
4851
- ver: 1 ,
4852
- metrics: 1 ,
4853
- properties: 0
4854
- };
4855
- var _self = this;
4856
- _self.ver = 2;
4857
- var dataPoint = new DataPoint();
4858
- dataPoint[_DYN_COUNT ] = count > 0 ? count : undefined;
4859
- dataPoint.max = isNaN(max) || max === null ? undefined : max;
4860
- dataPoint.min = isNaN(min) || min === null ? undefined : min;
4861
- dataPoint[_DYN_NAME ] = dataSanitizeString(logger, name) || strNotSpecified;
4862
- dataPoint.value = value;
4863
- dataPoint.stdDev = isNaN(stdDev) || stdDev === null ? undefined : stdDev;
4864
- _self.metrics = [dataPoint];
4865
- _self[_DYN_PROPERTIES$1 ] = dataSanitizeProperties(logger, properties);
4866
- _self[_DYN_MEASUREMENTS ] = dataSanitizeMeasurements(logger, measurements);
4867
- }
4868
- Metric.envelopeType = "Microsoft.ApplicationInsights.{0}.Metric";
4869
- Metric.dataType = "MetricData";
4870
- return Metric;
4871
- }());
4872
-
4873
- var strEmpty = "";
4874
- function msToTimeSpan(totalms) {
4875
- if (isNaN(totalms) || totalms < 0) {
4876
- totalms = 0;
4877
- }
4878
- totalms = mathRound(totalms);
4879
- var ms = strEmpty + totalms % 1000;
4880
- var sec = strEmpty + mathFloor(totalms / 1000) % 60;
4881
- var min = strEmpty + mathFloor(totalms / (1000 * 60)) % 60;
4882
- var hour = strEmpty + mathFloor(totalms / (1000 * 60 * 60)) % 24;
4883
- var days = mathFloor(totalms / (1000 * 60 * 60 * 24));
4884
- ms = ms[_DYN_LENGTH$1 ] === 1 ? "00" + ms : ms[_DYN_LENGTH$1 ] === 2 ? "0" + ms : ms;
4885
- sec = sec[_DYN_LENGTH$1 ] < 2 ? "0" + sec : sec;
4886
- min = min[_DYN_LENGTH$1 ] < 2 ? "0" + min : min;
4887
- hour = hour[_DYN_LENGTH$1 ] < 2 ? "0" + hour : hour;
4888
- return (days > 0 ? days + "." : strEmpty) + hour + ":" + min + ":" + sec + "." + ms;
4889
- }
4890
- function isCrossOriginError(message, url, lineNumber, columnNumber, error) {
4891
- return !error && isString(message) && (message === "Script error." || message === "Script error");
4892
- }
4893
-
4894
- var PageView = /** @class */ (function () {
4895
- function PageView(logger, name, url, durationMs, properties, measurements, id) {
4896
- this.aiDataContract = {
4897
- ver: 1 ,
4898
- name: 0 ,
4899
- url: 0 ,
4900
- duration: 0 ,
4901
- properties: 0 ,
4902
- measurements: 0 ,
4903
- id: 0
4904
- };
4905
- var _self = this;
4906
- _self.ver = 2;
4907
- _self.id = dataSanitizeId(logger, id);
4908
- _self.url = dataSanitizeUrl(logger, url);
4909
- _self[_DYN_NAME ] = dataSanitizeString(logger, name) || strNotSpecified;
4910
- if (!isNaN(durationMs)) {
4911
- _self[_DYN_DURATION$1 ] = msToTimeSpan(durationMs);
4912
- }
4913
- _self[_DYN_PROPERTIES$1 ] = dataSanitizeProperties(logger, properties);
4914
- _self[_DYN_MEASUREMENTS ] = dataSanitizeMeasurements(logger, measurements);
4915
- }
4916
- PageView.envelopeType = "Microsoft.ApplicationInsights.{0}.Pageview";
4917
- PageView.dataType = "PageviewData";
4918
- return PageView;
4919
- }());
4920
-
4921
- var RemoteDependencyData = /** @class */ (function () {
4922
- function RemoteDependencyData(logger, id, absoluteUrl, commandName, value, success, resultCode, method, requestAPI, correlationContext, properties, measurements) {
4923
- if (requestAPI === void 0) { requestAPI = "Ajax"; }
4924
- this.aiDataContract = {
4925
- id: 1 ,
4926
- ver: 1 ,
4927
- name: 0 ,
4928
- resultCode: 0 ,
4929
- duration: 0 ,
4930
- success: 0 ,
4931
- data: 0 ,
4932
- target: 0 ,
4933
- type: 0 ,
4934
- properties: 0 ,
4935
- measurements: 0 ,
4936
- kind: 0 ,
4937
- value: 0 ,
4938
- count: 0 ,
4939
- min: 0 ,
4940
- max: 0 ,
4941
- stdDev: 0 ,
4942
- dependencyKind: 0 ,
4943
- dependencySource: 0 ,
4944
- commandName: 0 ,
4945
- dependencyTypeName: 0
4946
- };
4947
- var _self = this;
4948
- _self.ver = 2;
4949
- _self.id = id;
4950
- _self[_DYN_DURATION$1 ] = msToTimeSpan(value);
4951
- _self.success = success;
4952
- _self.resultCode = resultCode + "";
4953
- _self.type = dataSanitizeString(logger, requestAPI);
4954
- var dependencyFields = AjaxHelperParseDependencyPath(logger, absoluteUrl, method, commandName);
4955
- _self.data = dataSanitizeUrl(logger, commandName) || dependencyFields.data;
4956
- _self.target = dataSanitizeString(logger, dependencyFields.target);
4957
- if (correlationContext) {
4958
- _self.target = "".concat(_self.target, " | ").concat(correlationContext);
4959
- }
4960
- _self[_DYN_NAME ] = dataSanitizeString(logger, dependencyFields[_DYN_NAME ]);
4961
- _self[_DYN_PROPERTIES$1 ] = dataSanitizeProperties(logger, properties);
4962
- _self[_DYN_MEASUREMENTS ] = dataSanitizeMeasurements(logger, measurements);
4963
- }
4964
- RemoteDependencyData.envelopeType = "Microsoft.ApplicationInsights.{0}.RemoteDependency";
4965
- RemoteDependencyData.dataType = "RemoteDependencyData";
4966
- return RemoteDependencyData;
4967
- }());
4968
-
4969
- var Trace = /** @class */ (function () {
4970
- function Trace(logger, message, severityLevel, properties, measurements) {
4971
- this.aiDataContract = {
4972
- ver: 1 ,
4973
- message: 1 ,
4974
- severityLevel: 0 ,
4975
- properties: 0
4976
- };
4977
- var _self = this;
4978
- _self.ver = 2;
4979
- message = message || strNotSpecified;
4980
- _self[_DYN_MESSAGE ] = dataSanitizeMessage(logger, message);
4981
- _self[_DYN_PROPERTIES$1 ] = dataSanitizeProperties(logger, properties);
4982
- _self[_DYN_MEASUREMENTS ] = dataSanitizeMeasurements(logger, measurements);
4983
- if (severityLevel) {
4984
- _self[_DYN_SEVERITY_LEVEL ] = severityLevel;
4985
- }
4986
- }
4987
- Trace.envelopeType = "Microsoft.ApplicationInsights.{0}.Message";
4988
- Trace.dataType = "MessageData";
4989
- return Trace;
4990
- }());
4991
-
4992
- var PageViewPerformance = /** @class */ (function () {
4993
- function PageViewPerformance(logger, name, url, unused, properties, measurements, cs4BaseData) {
4994
- this.aiDataContract = {
4995
- ver: 1 ,
4996
- name: 0 ,
4997
- url: 0 ,
4998
- duration: 0 ,
4999
- perfTotal: 0 ,
5000
- networkConnect: 0 ,
5001
- sentRequest: 0 ,
5002
- receivedResponse: 0 ,
5003
- domProcessing: 0 ,
5004
- properties: 0 ,
5005
- measurements: 0
5006
- };
5007
- var _self = this;
5008
- _self.ver = 2;
5009
- _self.url = dataSanitizeUrl(logger, url);
5010
- _self[_DYN_NAME ] = dataSanitizeString(logger, name) || strNotSpecified;
5011
- _self[_DYN_PROPERTIES$1 ] = dataSanitizeProperties(logger, properties);
5012
- _self[_DYN_MEASUREMENTS ] = dataSanitizeMeasurements(logger, measurements);
5013
- if (cs4BaseData) {
5014
- _self.domProcessing = cs4BaseData.domProcessing;
5015
- _self[_DYN_DURATION$1 ] = cs4BaseData[_DYN_DURATION$1 ];
5016
- _self.networkConnect = cs4BaseData.networkConnect;
5017
- _self.perfTotal = cs4BaseData.perfTotal;
5018
- _self.receivedResponse = cs4BaseData.receivedResponse;
5019
- _self.sentRequest = cs4BaseData.sentRequest;
5020
- }
5021
- }
5022
- PageViewPerformance.envelopeType = "Microsoft.ApplicationInsights.{0}.PageviewPerformance";
5023
- PageViewPerformance.dataType = "PageviewPerformanceData";
5024
- return PageViewPerformance;
5025
- }());
5026
-
5027
5407
  function createTelemetryItem(item, baseType, envelopeName, logger, customProperties, systemProperties) {
5028
5408
  envelopeName = dataSanitizeString(logger, envelopeName) || strNotSpecified;
5029
5409
  if (isNullOrUndefined(item) ||
@@ -5048,7 +5428,7 @@
5048
5428
  };
5049
5429
  if (!isNullOrUndefined(customProperties)) {
5050
5430
  objForEachKey(customProperties, function (prop, value) {
5051
- telemetryItem.data[prop] = value;
5431
+ telemetryItem[_DYN_DATA ][prop] = value;
5052
5432
  });
5053
5433
  }
5054
5434
  return telemetryItem;
@@ -5061,23 +5441,20 @@
5061
5441
  }
5062
5442
  else {
5063
5443
  var doc = getDocument();
5064
- if (doc && doc.createEvent) {
5065
- event = doc.createEvent("Event");
5444
+ if (doc && doc[_DYN_CREATE_EVENT ]) {
5445
+ event = doc[_DYN_CREATE_EVENT ]("Event");
5066
5446
  event.initEvent(eventName, true, true);
5067
5447
  }
5068
5448
  }
5069
5449
  return event;
5070
5450
  }
5071
5451
 
5072
- var PropertiesPluginIdentifier = "AppInsightsPropertiesPlugin";
5073
5452
  var AnalyticsPluginIdentifier = "ApplicationInsightsAnalytics";
5074
5453
 
5075
5454
  var _DYN_TO_STRING = "toString";
5076
5455
  var _DYN_IS_STORAGE_USE_DISAB0 = "isStorageUseDisabled";
5077
5456
  var _DYN__ADD_HOOK = "_addHook";
5078
5457
  var _DYN_CORE = "core";
5079
- var _DYN_DATA_TYPE = "dataType";
5080
- var _DYN_ENVELOPE_TYPE = "envelopeType";
5081
5458
  var _DYN_DIAG_LOG = "diagLog";
5082
5459
  var _DYN_TRACK = "track";
5083
5460
  var _DYN_TRACK_PAGE_VIEW = "trackPageView";
@@ -5103,6 +5480,7 @@
5103
5480
  var _DYN_IS_BROWSER_LINK_TRAC11 = "isBrowserLinkTrackingEnabled";
5104
5481
  var _DYN_LENGTH = "length";
5105
5482
  var _DYN_ENABLE_AUTO_ROUTE_TR12 = "enableAutoRouteTracking";
5483
+ var _DYN_GET_TRACE_CTX = "getTraceCtx";
5106
5484
  var _DYN_ENABLE_UNHANDLED_PRO13 = "enableUnhandledPromiseRejectionTracking";
5107
5485
  var _DYN_AUTO_UNHANDLED_PROMI14 = "autoUnhandledPromiseInstrumented";
5108
5486
  var _DYN_GET_ENTRIES_BY_TYPE = "getEntriesByType";
@@ -5116,171 +5494,169 @@
5116
5494
  var _DYN_LOAD_EVENT_END = "loadEventEnd";
5117
5495
  var _DYN_RESPONSE_END = "responseEnd";
5118
5496
  var _DYN_CONNECT_END = "connectEnd";
5497
+ var _DYN_PAGE_VISIT_TIME = "pageVisitTime";
5119
5498
 
5120
- var PageViewManager = /** @class */ (function () {
5121
- function PageViewManager(appInsights, overridePageViewDuration, core, pageViewPerformanceManager) {
5122
- dynamicProto(PageViewManager, this, function (_self) {
5123
- var queueTimer = null;
5124
- var itemQueue = [];
5125
- var pageViewPerformanceSent = false;
5126
- var firstPageViewSent = false;
5127
- var _logger;
5128
- if (core) {
5129
- _logger = core.logger;
5130
- }
5131
- function _flushChannels(isAsync) {
5132
- if (core) {
5133
- core.flush(isAsync, function () {
5134
- });
5135
- }
5136
- }
5137
- function _startTimer() {
5138
- if (!queueTimer) {
5139
- queueTimer = scheduleTimeout((function () {
5140
- queueTimer = null;
5141
- var allItems = itemQueue.slice(0);
5142
- var doFlush = false;
5143
- itemQueue = [];
5144
- arrForEach(allItems, function (item) {
5145
- if (!item()) {
5146
- itemQueue.push(item);
5147
- }
5148
- else {
5149
- doFlush = true;
5150
- }
5151
- });
5152
- if (itemQueue[_DYN_LENGTH ] > 0) {
5153
- _startTimer();
5154
- }
5155
- if (doFlush) {
5156
- _flushChannels(true);
5157
- }
5158
- }), 100);
5159
- }
5160
- }
5161
- function _addQueue(cb) {
5162
- itemQueue.push(cb);
5163
- _startTimer();
5164
- }
5165
- _self[_DYN_TRACK_PAGE_VIEW ] = function (pageView, customProperties) {
5166
- var name = pageView.name;
5167
- if (isNullOrUndefined(name) || typeof name !== "string") {
5168
- var doc = getDocument();
5169
- name = pageView.name = doc && doc.title || "";
5170
- }
5171
- var uri = pageView.uri;
5172
- if (isNullOrUndefined(uri) || typeof uri !== "string") {
5173
- var location_1 = getLocation();
5174
- uri = pageView.uri = location_1 && location_1[_DYN_HREF ] || "";
5175
- }
5176
- if (core && core[_DYN_CONFIG ]) {
5177
- uri = pageView.uri = fieldRedaction(pageView.uri, core[_DYN_CONFIG ]);
5178
- }
5179
- if (!firstPageViewSent) {
5180
- var perf = getPerformance();
5181
- var navigationEntries = (perf && perf[_DYN_GET_ENTRIES_BY_TYPE ] && perf[_DYN_GET_ENTRIES_BY_TYPE ]("navigation"));
5182
- if (navigationEntries && navigationEntries[0] && !isUndefined(perf.timeOrigin)) {
5183
- var loadEventStart = navigationEntries[0].loadEventStart;
5184
- pageView[_DYN_START_TIME ] = new Date(perf.timeOrigin + loadEventStart);
5499
+ function createPageViewManager(appInsights, overridePageViewDuration, core, pageViewPerformanceManager) {
5500
+ var _a;
5501
+ var queueTimer = null;
5502
+ var itemQueue = [];
5503
+ var pageViewPerformanceSent = false;
5504
+ var firstPageViewSent = false;
5505
+ var _logger;
5506
+ if (core) {
5507
+ _logger = core.logger;
5508
+ }
5509
+ function _flushChannels(isAsync) {
5510
+ if (core) {
5511
+ core.flush(isAsync, function () {
5512
+ });
5513
+ }
5514
+ }
5515
+ function _startTimer() {
5516
+ if (!queueTimer) {
5517
+ queueTimer = scheduleTimeout((function () {
5518
+ queueTimer = null;
5519
+ var allItems = itemQueue.slice(0);
5520
+ var doFlush = false;
5521
+ itemQueue = [];
5522
+ arrForEach(allItems, function (item) {
5523
+ if (!item()) {
5524
+ itemQueue.push(item);
5185
5525
  }
5186
5526
  else {
5187
- var duration_1 = ((customProperties || pageView[_DYN_PROPERTIES ] || {})[_DYN_DURATION ] || 0);
5188
- pageView[_DYN_START_TIME ] = new Date(new Date().getTime() - duration_1);
5527
+ doFlush = true;
5189
5528
  }
5190
- firstPageViewSent = true;
5529
+ });
5530
+ if (itemQueue[_DYN_LENGTH ] > 0) {
5531
+ _startTimer();
5191
5532
  }
5192
- if (!pageViewPerformanceManager[_DYN_IS_PERFORMANCE_TIMIN15 ]()) {
5193
- appInsights[_DYN_SEND_PAGE_VIEW_INTER2 ](pageView, customProperties);
5533
+ if (doFlush) {
5194
5534
  _flushChannels(true);
5195
- if (!isWebWorker()) {
5196
- _throwInternal(_logger, 2 , 25 , "trackPageView: navigation timing API used for calculation of page duration is not supported in this browser. This page view will be collected without duration and timing info.");
5197
- }
5198
- return;
5199
5535
  }
5200
- var pageViewSent = false;
5201
- var customDuration;
5202
- var start = pageViewPerformanceManager[_DYN_GET_PERFORMANCE_TIMI16 ]()[_DYN_NAVIGATION_START ];
5203
- if (start > 0) {
5204
- customDuration = dateTimeUtilsDuration(start, +new Date);
5205
- if (!pageViewPerformanceManager[_DYN_SHOULD_COLLECT_DURAT17 ](customDuration)) {
5206
- customDuration = undefined;
5207
- }
5536
+ }), 100);
5537
+ }
5538
+ }
5539
+ function _addQueue(cb) {
5540
+ itemQueue.push(cb);
5541
+ _startTimer();
5542
+ }
5543
+ return _a = {},
5544
+ _a[_DYN_TRACK_PAGE_VIEW ] = function (pageView, customProperties) {
5545
+ var name = pageView.name;
5546
+ if (isNullOrUndefined(name) || typeof name !== "string") {
5547
+ var doc = getDocument();
5548
+ name = pageView.name = doc && doc.title || "";
5549
+ }
5550
+ var uri = pageView.uri;
5551
+ if (isNullOrUndefined(uri) || typeof uri !== "string") {
5552
+ var location_1 = getLocation();
5553
+ uri = pageView.uri = location_1 && location_1[_DYN_HREF ] || "";
5554
+ }
5555
+ if (core && core[_DYN_CONFIG ]) {
5556
+ uri = pageView.uri = fieldRedaction(pageView.uri, core[_DYN_CONFIG ]);
5557
+ }
5558
+ if (!firstPageViewSent) {
5559
+ var perf = getPerformance();
5560
+ var navigationEntries = (perf && perf[_DYN_GET_ENTRIES_BY_TYPE ] && perf[_DYN_GET_ENTRIES_BY_TYPE ]("navigation"));
5561
+ if (navigationEntries && navigationEntries[0] && !isUndefined(perf.timeOrigin)) {
5562
+ var loadEventStart = navigationEntries[0].loadEventStart;
5563
+ pageView[_DYN_START_TIME ] = new Date(perf.timeOrigin + loadEventStart);
5208
5564
  }
5209
- var duration;
5210
- if (!isNullOrUndefined(customProperties) &&
5211
- !isNullOrUndefined(customProperties[_DYN_DURATION ])) {
5212
- duration = customProperties[_DYN_DURATION ];
5565
+ else {
5566
+ var duration_1 = ((customProperties || pageView[_DYN_PROPERTIES ] || {})[_DYN_DURATION ] || 0);
5567
+ pageView[_DYN_START_TIME ] = new Date(new Date().getTime() - duration_1);
5213
5568
  }
5214
- if (overridePageViewDuration || !isNaN(duration)) {
5215
- if (isNaN(duration)) {
5216
- if (!customProperties) {
5217
- customProperties = {};
5218
- }
5219
- customProperties[_DYN_DURATION ] = customDuration;
5220
- }
5221
- appInsights[_DYN_SEND_PAGE_VIEW_INTER2 ](pageView, customProperties);
5222
- _flushChannels(true);
5223
- pageViewSent = true;
5569
+ firstPageViewSent = true;
5570
+ }
5571
+ if (!pageViewPerformanceManager[_DYN_IS_PERFORMANCE_TIMIN15 ]()) {
5572
+ appInsights[_DYN_SEND_PAGE_VIEW_INTER2 ](pageView, customProperties);
5573
+ _flushChannels(true);
5574
+ if (!isWebWorker()) {
5575
+ _throwInternal(_logger, 2 , 25 , "trackPageView: navigation timing API used for calculation of page duration is not supported in this browser. This page view will be collected without duration and timing info.");
5224
5576
  }
5225
- var maxDurationLimit = 60000;
5226
- if (!customProperties) {
5227
- customProperties = {};
5577
+ return;
5578
+ }
5579
+ var pageViewSent = false;
5580
+ var customDuration;
5581
+ var start = pageViewPerformanceManager[_DYN_GET_PERFORMANCE_TIMI16 ]()[_DYN_NAVIGATION_START ];
5582
+ if (start > 0) {
5583
+ customDuration = dateTimeUtilsDuration(start, +new Date);
5584
+ if (!pageViewPerformanceManager[_DYN_SHOULD_COLLECT_DURAT17 ](customDuration)) {
5585
+ customDuration = undefined;
5228
5586
  }
5229
- _addQueue(function () {
5230
- var processed = false;
5231
- try {
5232
- if (pageViewPerformanceManager[_DYN_IS_PERFORMANCE_TIMIN18 ]()) {
5233
- processed = true;
5234
- var pageViewPerformance = {
5235
- name: name,
5236
- uri: uri
5237
- };
5238
- pageViewPerformanceManager[_DYN_POPULATE_PAGE_VIEW_P4 ](pageViewPerformance);
5239
- if (!pageViewPerformance.isValid && !pageViewSent) {
5240
- customProperties[_DYN_DURATION ] = customDuration;
5241
- appInsights[_DYN_SEND_PAGE_VIEW_INTER2 ](pageView, customProperties);
5242
- }
5243
- else {
5244
- if (!pageViewSent) {
5245
- customProperties[_DYN_DURATION ] = pageViewPerformance.durationMs;
5246
- appInsights[_DYN_SEND_PAGE_VIEW_INTER2 ](pageView, customProperties);
5247
- }
5248
- if (!pageViewPerformanceSent) {
5249
- appInsights[_DYN_SEND_PAGE_VIEW_PERFO3 ](pageViewPerformance, customProperties);
5250
- pageViewPerformanceSent = true;
5251
- }
5252
- }
5587
+ }
5588
+ var duration;
5589
+ if (!isNullOrUndefined(customProperties) &&
5590
+ !isNullOrUndefined(customProperties[_DYN_DURATION ])) {
5591
+ duration = customProperties[_DYN_DURATION ];
5592
+ }
5593
+ if (overridePageViewDuration || !isNaN(duration)) {
5594
+ if (isNaN(duration)) {
5595
+ if (!customProperties) {
5596
+ customProperties = {};
5597
+ }
5598
+ customProperties[_DYN_DURATION ] = customDuration;
5599
+ }
5600
+ appInsights[_DYN_SEND_PAGE_VIEW_INTER2 ](pageView, customProperties);
5601
+ _flushChannels(true);
5602
+ pageViewSent = true;
5603
+ }
5604
+ var maxDurationLimit = 60000;
5605
+ if (!customProperties) {
5606
+ customProperties = {};
5607
+ }
5608
+ _addQueue(function () {
5609
+ var processed = false;
5610
+ try {
5611
+ if (pageViewPerformanceManager[_DYN_IS_PERFORMANCE_TIMIN18 ]()) {
5612
+ processed = true;
5613
+ var pageViewPerformance = {
5614
+ name: name,
5615
+ uri: uri
5616
+ };
5617
+ pageViewPerformanceManager[_DYN_POPULATE_PAGE_VIEW_P4 ](pageViewPerformance);
5618
+ if (!pageViewPerformance.isValid && !pageViewSent) {
5619
+ customProperties[_DYN_DURATION ] = customDuration;
5620
+ appInsights[_DYN_SEND_PAGE_VIEW_INTER2 ](pageView, customProperties);
5253
5621
  }
5254
- else if (start > 0 && dateTimeUtilsDuration(start, +new Date) > maxDurationLimit) {
5255
- processed = true;
5622
+ else {
5256
5623
  if (!pageViewSent) {
5257
- customProperties[_DYN_DURATION ] = maxDurationLimit;
5624
+ customProperties[_DYN_DURATION ] = pageViewPerformance.durationMs;
5258
5625
  appInsights[_DYN_SEND_PAGE_VIEW_INTER2 ](pageView, customProperties);
5259
5626
  }
5627
+ if (!pageViewPerformanceSent) {
5628
+ appInsights[_DYN_SEND_PAGE_VIEW_PERFO3 ](pageViewPerformance, customProperties);
5629
+ pageViewPerformanceSent = true;
5630
+ }
5260
5631
  }
5261
5632
  }
5262
- catch (e) {
5263
- _throwInternal(_logger, 1 , 38 , "trackPageView failed on page load calculation: " + getExceptionName(e), { exception: dumpObj(e) });
5633
+ else if (start > 0 && dateTimeUtilsDuration(start, +new Date) > maxDurationLimit) {
5634
+ processed = true;
5635
+ if (!pageViewSent) {
5636
+ customProperties[_DYN_DURATION ] = maxDurationLimit;
5637
+ appInsights[_DYN_SEND_PAGE_VIEW_INTER2 ](pageView, customProperties);
5638
+ }
5264
5639
  }
5265
- return processed;
5266
- });
5267
- };
5268
- _self.teardown = function (unloadCtx, unloadState) {
5269
- if (queueTimer) {
5270
- queueTimer.cancel();
5271
- queueTimer = null;
5272
- var allItems = itemQueue.slice(0);
5273
- itemQueue = [];
5274
- arrForEach(allItems, function (item) {
5275
- if (item()) ;
5276
- });
5277
5640
  }
5278
- };
5279
- });
5280
- }
5281
- PageViewManager.__ieDyn=1;
5282
- return PageViewManager;
5283
- }());
5641
+ catch (e) {
5642
+ _throwInternal(_logger, 1 , 38 , "trackPageView failed on page load calculation: " + getExceptionName(e), { exception: dumpObj(e) });
5643
+ }
5644
+ return processed;
5645
+ });
5646
+ },
5647
+ _a.teardown = function (unloadCtx, unloadState) {
5648
+ if (queueTimer) {
5649
+ queueTimer.cancel();
5650
+ queueTimer = null;
5651
+ var allItems = itemQueue.slice(0);
5652
+ itemQueue = [];
5653
+ arrForEach(allItems, function (item) {
5654
+ if (item()) ;
5655
+ });
5656
+ }
5657
+ },
5658
+ _a;
5659
+ }
5284
5660
 
5285
5661
  var MAX_DURATION_ALLOWED = 3600000;
5286
5662
  var botAgentNames = ["googlebot", "adsbot-google", "apis-google", "mediapartners-google"];
@@ -5342,143 +5718,136 @@
5342
5718
  }
5343
5719
  return true;
5344
5720
  }
5345
- var PageViewPerformanceManager = /** @class */ (function () {
5346
- function PageViewPerformanceManager(core) {
5347
- var _logger = safeGetLogger(core);
5348
- dynamicProto(PageViewPerformanceManager, this, function (_self) {
5349
- _self[_DYN_POPULATE_PAGE_VIEW_P4 ] = function (pageViewPerformance) {
5350
- pageViewPerformance.isValid = false;
5351
- var navigationTiming = _getPerformanceNavigationTiming();
5352
- var timing = _getPerformanceTiming();
5353
- var total = 0;
5354
- var network = 0;
5355
- var request = 0;
5356
- var response = 0;
5357
- var dom = 0;
5358
- if (navigationTiming || timing) {
5359
- if (navigationTiming) {
5360
- total = navigationTiming[_DYN_DURATION ];
5361
- network = navigationTiming[_DYN_START_TIME ] === 0 ? navigationTiming[_DYN_CONNECT_END ] : dateTimeUtilsDuration(navigationTiming[_DYN_START_TIME ], navigationTiming[_DYN_CONNECT_END ]);
5362
- request = dateTimeUtilsDuration(navigationTiming.requestStart, navigationTiming[_DYN_RESPONSE_START ]);
5363
- response = dateTimeUtilsDuration(navigationTiming[_DYN_RESPONSE_START ], navigationTiming[_DYN_RESPONSE_END ]);
5364
- dom = dateTimeUtilsDuration(navigationTiming.responseEnd, navigationTiming[_DYN_LOAD_EVENT_END ]);
5365
- }
5366
- else {
5367
- total = dateTimeUtilsDuration(timing[_DYN_NAVIGATION_START ], timing[_DYN_LOAD_EVENT_END ]);
5368
- network = dateTimeUtilsDuration(timing[_DYN_NAVIGATION_START ], timing[_DYN_CONNECT_END ]);
5369
- request = dateTimeUtilsDuration(timing.requestStart, timing[_DYN_RESPONSE_START ]);
5370
- response = dateTimeUtilsDuration(timing[_DYN_RESPONSE_START ], timing[_DYN_RESPONSE_END ]);
5371
- dom = dateTimeUtilsDuration(timing.responseEnd, timing[_DYN_LOAD_EVENT_END ]);
5372
- }
5373
- if (total === 0) {
5374
- _throwInternal(_logger, 2 , 10 , "error calculating page view performance.", { total: total, network: network, request: request, response: response, dom: dom });
5375
- }
5376
- else if (!_self[_DYN_SHOULD_COLLECT_DURAT17 ](total, network, request, response, dom)) {
5377
- _throwInternal(_logger, 2 , 45 , "Invalid page load duration value. Browser perf data won't be sent.", { total: total, network: network, request: request, response: response, dom: dom });
5378
- }
5379
- else if (total < mathFloor(network) + mathFloor(request) + mathFloor(response) + mathFloor(dom)) {
5380
- _throwInternal(_logger, 2 , 8 , "client performance math error.", { total: total, network: network, request: request, response: response, dom: dom });
5381
- }
5382
- else {
5383
- pageViewPerformance.durationMs = total;
5384
- pageViewPerformance.perfTotal = pageViewPerformance[_DYN_DURATION ] = msToTimeSpan(total);
5385
- pageViewPerformance.networkConnect = msToTimeSpan(network);
5386
- pageViewPerformance.sentRequest = msToTimeSpan(request);
5387
- pageViewPerformance.receivedResponse = msToTimeSpan(response);
5388
- pageViewPerformance.domProcessing = msToTimeSpan(dom);
5389
- pageViewPerformance.isValid = true;
5390
- }
5721
+ function createPageViewPerformanceManager(core) {
5722
+ var _a;
5723
+ var _logger = safeGetLogger(core);
5724
+ return _a = {},
5725
+ _a[_DYN_POPULATE_PAGE_VIEW_P4 ] = function (pageViewPerformance) {
5726
+ pageViewPerformance.isValid = false;
5727
+ var navigationTiming = _getPerformanceNavigationTiming();
5728
+ var timing = _getPerformanceTiming();
5729
+ var total = 0;
5730
+ var network = 0;
5731
+ var request = 0;
5732
+ var response = 0;
5733
+ var dom = 0;
5734
+ if (navigationTiming || timing) {
5735
+ if (navigationTiming) {
5736
+ total = navigationTiming[_DYN_DURATION ];
5737
+ network = navigationTiming[_DYN_START_TIME ] === 0 ? navigationTiming[_DYN_CONNECT_END ] : dateTimeUtilsDuration(navigationTiming[_DYN_START_TIME ], navigationTiming[_DYN_CONNECT_END ]);
5738
+ request = dateTimeUtilsDuration(navigationTiming.requestStart, navigationTiming[_DYN_RESPONSE_START ]);
5739
+ response = dateTimeUtilsDuration(navigationTiming[_DYN_RESPONSE_START ], navigationTiming[_DYN_RESPONSE_END ]);
5740
+ dom = dateTimeUtilsDuration(navigationTiming.responseEnd, navigationTiming[_DYN_LOAD_EVENT_END ]);
5391
5741
  }
5392
- };
5393
- _self[_DYN_GET_PERFORMANCE_TIMI16 ] = _getPerformanceTiming;
5394
- _self[_DYN_IS_PERFORMANCE_TIMIN15 ] = _isPerformanceTimingSupported;
5395
- _self[_DYN_IS_PERFORMANCE_TIMIN18 ] = _isPerformanceTimingDataReady;
5396
- _self[_DYN_SHOULD_COLLECT_DURAT17 ] = _shouldCollectDuration;
5397
- });
5398
- }
5399
- PageViewPerformanceManager.__ieDyn=1;
5400
- return PageViewPerformanceManager;
5401
- }());
5402
-
5403
- var PageVisitTimeManager = /** @class */ (function () {
5404
- function PageVisitTimeManager(logger, pageVisitTimeTrackingHandler) {
5405
- var prevPageVisitDataKeyName = "prevPageVisitData";
5406
- dynamicProto(PageVisitTimeManager, this, function (_self) {
5407
- _self[_DYN_TRACK_PREVIOUS_PAGE_1 ] = function (currentPageName, currentPageUrl) {
5408
- try {
5409
- var prevPageVisitTimeData = restartPageVisitTimer(currentPageName, currentPageUrl);
5410
- if (prevPageVisitTimeData) {
5411
- pageVisitTimeTrackingHandler(prevPageVisitTimeData.pageName, prevPageVisitTimeData.pageUrl, prevPageVisitTimeData.pageVisitTime);
5412
- }
5742
+ else {
5743
+ total = dateTimeUtilsDuration(timing[_DYN_NAVIGATION_START ], timing[_DYN_LOAD_EVENT_END ]);
5744
+ network = dateTimeUtilsDuration(timing[_DYN_NAVIGATION_START ], timing[_DYN_CONNECT_END ]);
5745
+ request = dateTimeUtilsDuration(timing.requestStart, timing[_DYN_RESPONSE_START ]);
5746
+ response = dateTimeUtilsDuration(timing[_DYN_RESPONSE_START ], timing[_DYN_RESPONSE_END ]);
5747
+ dom = dateTimeUtilsDuration(timing.responseEnd, timing[_DYN_LOAD_EVENT_END ]);
5413
5748
  }
5414
- catch (e) {
5415
- _warnToConsole(logger, "Auto track page visit time failed, metric will not be collected: " + dumpObj(e));
5749
+ if (total === 0) {
5750
+ _throwInternal(_logger, 2 , 10 , "error calculating page view performance.", { total: total, network: network, request: request, response: response, dom: dom });
5416
5751
  }
5417
- };
5418
- function restartPageVisitTimer(pageName, pageUrl) {
5419
- var prevPageVisitData = null;
5420
- try {
5421
- prevPageVisitData = stopPageVisitTimer();
5422
- if (utlCanUseSessionStorage()) {
5423
- if (utlGetSessionStorage(logger, prevPageVisitDataKeyName) != null) {
5424
- throwError("Cannot call startPageVisit consecutively without first calling stopPageVisit");
5425
- }
5426
- var currPageVisitDataStr = getJSON().stringify(new PageVisitData(pageName, pageUrl));
5427
- utlSetSessionStorage(logger, prevPageVisitDataKeyName, currPageVisitDataStr);
5428
- }
5752
+ else if (!_shouldCollectDuration(total, network, request, response, dom)) {
5753
+ _throwInternal(_logger, 2 , 45 , "Invalid page load duration value. Browser perf data won't be sent.", { total: total, network: network, request: request, response: response, dom: dom });
5429
5754
  }
5430
- catch (e) {
5431
- _warnToConsole(logger, "Call to restart failed: " + dumpObj(e));
5432
- prevPageVisitData = null;
5755
+ else if (total < mathFloor(network) + mathFloor(request) + mathFloor(response) + mathFloor(dom)) {
5756
+ _throwInternal(_logger, 2 , 8 , "client performance math error.", { total: total, network: network, request: request, response: response, dom: dom });
5433
5757
  }
5434
- return prevPageVisitData;
5435
- }
5436
- function stopPageVisitTimer() {
5437
- var prevPageVisitData = null;
5438
- try {
5439
- if (utlCanUseSessionStorage()) {
5440
- var pageVisitEndTime = utcNow();
5441
- var pageVisitDataJsonStr = utlGetSessionStorage(logger, prevPageVisitDataKeyName);
5442
- if (pageVisitDataJsonStr && hasJSON()) {
5443
- prevPageVisitData = getJSON().parse(pageVisitDataJsonStr);
5444
- prevPageVisitData.pageVisitTime = pageVisitEndTime - prevPageVisitData.pageVisitStartTime;
5445
- utlRemoveSessionStorage(logger, prevPageVisitDataKeyName);
5446
- }
5447
- }
5758
+ else {
5759
+ pageViewPerformance.durationMs = total;
5760
+ pageViewPerformance.perfTotal = pageViewPerformance[_DYN_DURATION ] = msToTimeSpan(total);
5761
+ pageViewPerformance.networkConnect = msToTimeSpan(network);
5762
+ pageViewPerformance.sentRequest = msToTimeSpan(request);
5763
+ pageViewPerformance.receivedResponse = msToTimeSpan(response);
5764
+ pageViewPerformance.domProcessing = msToTimeSpan(dom);
5765
+ pageViewPerformance.isValid = true;
5448
5766
  }
5449
- catch (e) {
5450
- _warnToConsole(logger, "Stop page visit timer failed: " + dumpObj(e));
5451
- prevPageVisitData = null;
5767
+ }
5768
+ },
5769
+ _a[_DYN_GET_PERFORMANCE_TIMI16 ] = _getPerformanceTiming,
5770
+ _a[_DYN_IS_PERFORMANCE_TIMIN15 ] = _isPerformanceTimingSupported,
5771
+ _a[_DYN_IS_PERFORMANCE_TIMIN18 ] = _isPerformanceTimingDataReady,
5772
+ _a[_DYN_SHOULD_COLLECT_DURAT17 ] = _shouldCollectDuration,
5773
+ _a;
5774
+ }
5775
+
5776
+ function createPageVisitData(pageName, pageUrl) {
5777
+ return {
5778
+ pageVisitStartTime: utcNow(),
5779
+ pageName: pageName,
5780
+ pageUrl: pageUrl,
5781
+ pageVisitTime: 0
5782
+ };
5783
+ }
5784
+ function createPageVisitTimeManager(logger, pageVisitTimeTrackingHandler) {
5785
+ var prevPageVisitDataKeyName = "prevPageVisitData";
5786
+ function restartPageVisitTimer(pageName, pageUrl) {
5787
+ var prevPageVisitData = null;
5788
+ try {
5789
+ prevPageVisitData = stopPageVisitTimer();
5790
+ if (utlCanUseSessionStorage()) {
5791
+ if (utlGetSessionStorage(logger, prevPageVisitDataKeyName) != null) {
5792
+ throwError("Cannot call startPageVisit consecutively without first calling stopPageVisit");
5452
5793
  }
5453
- return prevPageVisitData;
5794
+ var currPageVisitDataStr = getJSON().stringify(createPageVisitData(pageName, pageUrl));
5795
+ utlSetSessionStorage(logger, prevPageVisitDataKeyName, currPageVisitDataStr);
5454
5796
  }
5455
- objDefine(_self, "_logger", { g: function () { return logger; } });
5456
- objDefine(_self, "pageVisitTimeTrackingHandler", { g: function () { return pageVisitTimeTrackingHandler; } });
5457
- });
5797
+ }
5798
+ catch (e) {
5799
+ _warnToConsole(logger, "Call to restart failed: " + dumpObj(e));
5800
+ prevPageVisitData = null;
5801
+ }
5802
+ return prevPageVisitData;
5458
5803
  }
5459
- PageVisitTimeManager.__ieDyn=1;
5460
- return PageVisitTimeManager;
5461
- }());
5462
- var PageVisitData = /** @class */ (function () {
5463
- function PageVisitData(pageName, pageUrl) {
5464
- this.pageVisitStartTime = utcNow();
5465
- this.pageName = pageName;
5466
- this.pageUrl = pageUrl;
5804
+ function stopPageVisitTimer() {
5805
+ var prevPageVisitData = null;
5806
+ try {
5807
+ if (utlCanUseSessionStorage()) {
5808
+ var pageVisitEndTime = utcNow();
5809
+ var pageVisitDataJsonStr = utlGetSessionStorage(logger, prevPageVisitDataKeyName);
5810
+ if (pageVisitDataJsonStr && hasJSON()) {
5811
+ prevPageVisitData = getJSON().parse(pageVisitDataJsonStr);
5812
+ prevPageVisitData[_DYN_PAGE_VISIT_TIME ] = pageVisitEndTime - prevPageVisitData.pageVisitStartTime;
5813
+ utlRemoveSessionStorage(logger, prevPageVisitDataKeyName);
5814
+ }
5815
+ }
5816
+ }
5817
+ catch (e) {
5818
+ _warnToConsole(logger, "Stop page visit timer failed: " + dumpObj(e));
5819
+ prevPageVisitData = null;
5820
+ }
5821
+ return prevPageVisitData;
5467
5822
  }
5468
- return PageVisitData;
5469
- }());
5823
+ return {
5824
+ trackPreviousPageVisit: function (currentPageName, currentPageUrl) {
5825
+ try {
5826
+ var prevPageVisitTimeData = restartPageVisitTimer(currentPageName, currentPageUrl);
5827
+ if (prevPageVisitTimeData) {
5828
+ pageVisitTimeTrackingHandler(prevPageVisitTimeData.pageName, prevPageVisitTimeData.pageUrl, prevPageVisitTimeData[_DYN_PAGE_VISIT_TIME ]);
5829
+ }
5830
+ }
5831
+ catch (e) {
5832
+ _warnToConsole(logger, "Auto track page visit time failed, metric will not be collected: " + dumpObj(e));
5833
+ }
5834
+ },
5835
+ _logger: logger,
5836
+ pageVisitTimeTrackingHandler: pageVisitTimeTrackingHandler
5837
+ };
5838
+ }
5470
5839
 
5471
- var Timing = /** @class */ (function () {
5472
- function Timing(logger, name) {
5473
- var _self = this;
5474
- var _events = {};
5475
- _self.start = function (name) {
5840
+ function createTiming(logger, name) {
5841
+ var _events = {};
5842
+ var timing = {
5843
+ action: null,
5844
+ start: function (name) {
5476
5845
  if (typeof _events[name] !== "undefined") {
5477
5846
  _throwInternal(logger, 2 , 62 , "start was called more than once for this event without calling stop.", { name: name, key: name }, true);
5478
5847
  }
5479
5848
  _events[name] = +new Date;
5480
- };
5481
- _self.stop = function (name, url, properties, measurements) {
5849
+ },
5850
+ stop: function (name, url, properties, measurements) {
5482
5851
  var start = _events[name];
5483
5852
  if (isNaN(start)) {
5484
5853
  _throwInternal(logger, 2 , 63 , "stop was called without a corresponding start.", { name: name, key: name }, true);
@@ -5486,14 +5855,14 @@
5486
5855
  else {
5487
5856
  var end = +new Date;
5488
5857
  var duration = dateTimeUtilsDuration(start, end);
5489
- _self.action(name, url, duration, properties, measurements);
5858
+ timing.action(name, url, duration, properties, measurements);
5490
5859
  }
5491
5860
  delete _events[name];
5492
5861
  _events[name] = undefined;
5493
- };
5494
- }
5495
- return Timing;
5496
- }());
5862
+ }
5863
+ };
5864
+ return timing;
5865
+ }
5497
5866
 
5498
5867
  var _a;
5499
5868
  var strEvent = "event";
@@ -5531,6 +5900,7 @@
5531
5900
  _a.disableFlushOnBeforeUnload = cfgDfBoolean(),
5532
5901
  _a.disableFlushOnUnload = cfgDfBoolean(false, "disableFlushOnBeforeUnload"),
5533
5902
  _a.expCfg = cfgDfMerge({ inclScripts: false, expLog: undefined, maxLogs: 50 }),
5903
+ _a.routeTraceStrategy = 0 ,
5534
5904
  _a));
5535
5905
  function _chkConfigMilliseconds(value, defValue) {
5536
5906
  value = value || defValue;
@@ -5576,6 +5946,7 @@
5576
5946
  var _extConfig;
5577
5947
  var _autoTrackPageVisitTime;
5578
5948
  var _expCfg;
5949
+ var _routeTraceStrategy;
5579
5950
  var _prevUri;
5580
5951
  var _currUri;
5581
5952
  var _evtNamespace;
@@ -5591,7 +5962,7 @@
5591
5962
  };
5592
5963
  _self.trackEvent = function (event, customProperties) {
5593
5964
  try {
5594
- var telemetryItem = createTelemetryItem(event, Event$1[_DYN_DATA_TYPE ], Event$1[_DYN_ENVELOPE_TYPE ], _self[_DYN_DIAG_LOG ](), customProperties);
5965
+ var telemetryItem = createTelemetryItem(event, EventDataType, EventEnvelopeType, _self[_DYN_DIAG_LOG ](), customProperties);
5595
5966
  _self[_DYN_CORE ][_DYN_TRACK ](telemetryItem);
5596
5967
  }
5597
5968
  catch (e) {
@@ -5616,7 +5987,7 @@
5616
5987
  };
5617
5988
  _self.trackTrace = function (trace, customProperties) {
5618
5989
  try {
5619
- var telemetryItem = createTelemetryItem(trace, Trace[_DYN_DATA_TYPE ], Trace[_DYN_ENVELOPE_TYPE ], _self[_DYN_DIAG_LOG ](), customProperties);
5990
+ var telemetryItem = createTelemetryItem(trace, TraceDataType, TraceEnvelopeType, _self[_DYN_DIAG_LOG ](), customProperties);
5620
5991
  _self[_DYN_CORE ][_DYN_TRACK ](telemetryItem);
5621
5992
  }
5622
5993
  catch (e) {
@@ -5625,7 +5996,7 @@
5625
5996
  };
5626
5997
  _self.trackMetric = function (metric, customProperties) {
5627
5998
  try {
5628
- var telemetryItem = createTelemetryItem(metric, Metric[_DYN_DATA_TYPE ], Metric[_DYN_ENVELOPE_TYPE ], _self[_DYN_DIAG_LOG ](), customProperties);
5999
+ var telemetryItem = createTelemetryItem(metric, MetricDataType, MetricEnvelopeType, _self[_DYN_DIAG_LOG ](), customProperties);
5629
6000
  _self[_DYN_CORE ][_DYN_TRACK ](telemetryItem);
5630
6001
  }
5631
6002
  catch (e) {
@@ -5659,12 +6030,12 @@
5659
6030
  var duration = ((properties || pageView[_DYN_PROPERTIES ] || {})[_DYN_DURATION ] || 0);
5660
6031
  pageView[_DYN_START_TIME ] = new Date(new Date().getTime() - duration);
5661
6032
  }
5662
- var telemetryItem = createTelemetryItem(pageView, PageView[_DYN_DATA_TYPE ], PageView[_DYN_ENVELOPE_TYPE ], _self[_DYN_DIAG_LOG ](), properties, systemProperties);
6033
+ var telemetryItem = createTelemetryItem(pageView, PageViewDataType, PageViewEnvelopeType, _self[_DYN_DIAG_LOG ](), properties, systemProperties);
5663
6034
  _self[_DYN_CORE ][_DYN_TRACK ](telemetryItem);
5664
6035
  _resetAjaxAttempts();
5665
6036
  };
5666
6037
  _self[_DYN_SEND_PAGE_VIEW_PERFO3 ] = function (pageViewPerformance, properties, systemProperties) {
5667
- var telemetryItem = createTelemetryItem(pageViewPerformance, PageViewPerformance[_DYN_DATA_TYPE ], PageViewPerformance[_DYN_ENVELOPE_TYPE ], _self[_DYN_DIAG_LOG ](), properties, systemProperties);
6038
+ var telemetryItem = createTelemetryItem(pageViewPerformance, PageViewPerformanceDataType, PageViewPerformanceEnvelopeType, _self[_DYN_DIAG_LOG ](), properties, systemProperties);
5668
6039
  _self[_DYN_CORE ][_DYN_TRACK ](telemetryItem);
5669
6040
  };
5670
6041
  _self.trackPageViewPerformance = function (pageViewPerformance, customProperties) {
@@ -5728,7 +6099,7 @@
5728
6099
  exceptionPartB[_DYN_PROPERTIES ]["exceptionLog"] = logs.logs.slice(0, _expCfg.maxLogs).join("\n");
5729
6100
  }
5730
6101
  }
5731
- var telemetryItem = createTelemetryItem(exceptionPartB, Exception[_DYN_DATA_TYPE ], Exception[_DYN_ENVELOPE_TYPE ], _self[_DYN_DIAG_LOG ](), customProperties, systemProperties);
6102
+ var telemetryItem = createTelemetryItem(exceptionPartB, ExceptionDataType, ExceptionEnvelopeType, _self[_DYN_DIAG_LOG ](), customProperties, systemProperties);
5732
6103
  _self[_DYN_CORE ][_DYN_TRACK ](telemetryItem);
5733
6104
  };
5734
6105
  _self.trackException = function (exception, customProperties) {
@@ -5803,10 +6174,10 @@
5803
6174
  _preInitTelemetryInitializers = null;
5804
6175
  }
5805
6176
  _populateDefaults(config);
5806
- _pageViewPerformanceManager = new PageViewPerformanceManager(_self[_DYN_CORE ]);
5807
- _pageViewManager = new PageViewManager(_self, _extConfig.overridePageViewDuration, _self[_DYN_CORE ], _pageViewPerformanceManager);
5808
- _pageVisitTimeManager = new PageVisitTimeManager(_self[_DYN_DIAG_LOG ](), function (pageName, pageUrl, pageVisitTime) { return trackPageVisitTime(pageName, pageUrl, pageVisitTime); });
5809
- _eventTracking = new Timing(_self[_DYN_DIAG_LOG ](), "trackEvent");
6177
+ _pageViewPerformanceManager = createPageViewPerformanceManager(_self[_DYN_CORE ]);
6178
+ _pageViewManager = createPageViewManager(_self, _extConfig.overridePageViewDuration, _self[_DYN_CORE ], _pageViewPerformanceManager);
6179
+ _pageVisitTimeManager = createPageVisitTimeManager(_self[_DYN_DIAG_LOG ](), function (pageName, pageUrl, pageVisitTime) { return trackPageVisitTime(pageName, pageUrl, pageVisitTime); });
6180
+ _eventTracking = createTiming(_self[_DYN_DIAG_LOG ]());
5810
6181
  _eventTracking.action =
5811
6182
  function (name, url, duration, properties, measurements) {
5812
6183
  if (!properties) {
@@ -5818,7 +6189,7 @@
5818
6189
  properties.duration = duration[_DYN_TO_STRING ]();
5819
6190
  _self.trackEvent({ name: name, properties: properties, measurements: measurements });
5820
6191
  };
5821
- _pageTracking = new Timing(_self[_DYN_DIAG_LOG ](), "trackPageView");
6192
+ _pageTracking = createTiming(_self[_DYN_DIAG_LOG ]());
5822
6193
  _pageTracking.action = function (name, url, duration, properties, measurements) {
5823
6194
  if (isNullOrUndefined(properties)) {
5824
6195
  properties = {};
@@ -5867,6 +6238,7 @@
5867
6238
  _autoExceptionInstrumented = _autoExceptionInstrumented || config[_DYN_AUTO_EXCEPTION_INSTR9 ] || _extConfig[_DYN_AUTO_EXCEPTION_INSTR9 ];
5868
6239
  _expCfg = _extConfig.expCfg;
5869
6240
  _autoTrackPageVisitTime = _extConfig[_DYN_AUTO_TRACK_PAGE_VISI10 ];
6241
+ _routeTraceStrategy = _extConfig.routeTraceStrategy || 0 ;
5870
6242
  if (config.storagePrefix) {
5871
6243
  utlSetStoragePrefix(config.storagePrefix);
5872
6244
  }
@@ -5889,7 +6261,7 @@
5889
6261
  if (!_browserLinkInitializerAdded && _isBrowserLinkTrackingEnabled) {
5890
6262
  var browserLinkPaths_1 = ["/browserLinkSignalR/", "/__browserLink/"];
5891
6263
  var dropBrowserLinkRequests = function (envelope) {
5892
- if (_isBrowserLinkTrackingEnabled && envelope.baseType === RemoteDependencyData[_DYN_DATA_TYPE ]) {
6264
+ if (_isBrowserLinkTrackingEnabled && envelope.baseType === RemoteDependencyDataType) {
5893
6265
  var remoteData = envelope.baseData;
5894
6266
  if (remoteData) {
5895
6267
  for (var i = 0; i < browserLinkPaths_1[_DYN_LENGTH ]; i++) {
@@ -5906,7 +6278,7 @@
5906
6278
  }
5907
6279
  }
5908
6280
  function _sendCORSException(exception, properties) {
5909
- var telemetryItem = createTelemetryItem(exception, Exception[_DYN_DATA_TYPE ], Exception[_DYN_ENVELOPE_TYPE ], _self[_DYN_DIAG_LOG ](), properties);
6281
+ var telemetryItem = createTelemetryItem(exception, ExceptionDataType, ExceptionEnvelopeType, _self[_DYN_DIAG_LOG ](), properties);
5910
6282
  _self[_DYN_CORE ][_DYN_TRACK ](telemetryItem);
5911
6283
  }
5912
6284
  function _updateExceptionTracking() {
@@ -5942,22 +6314,6 @@
5942
6314
  }
5943
6315
  }));
5944
6316
  }
5945
- function _getDistributedTraceCtx() {
5946
- var distributedTraceCtx = null;
5947
- if (_self[_DYN_CORE ] && _self[_DYN_CORE ].getTraceCtx) {
5948
- distributedTraceCtx = _self[_DYN_CORE ].getTraceCtx(false);
5949
- }
5950
- if (!distributedTraceCtx) {
5951
- var properties = _self[_DYN_CORE ].getPlugin(PropertiesPluginIdentifier);
5952
- if (properties) {
5953
- var context = properties.plugin.context;
5954
- if (context) {
5955
- distributedTraceCtx = createDistributedTraceContextFromTrace(context.telemetryTrace);
5956
- }
5957
- }
5958
- }
5959
- return distributedTraceCtx;
5960
- }
5961
6317
  function _addHistoryListener(win, history, locn) {
5962
6318
  if (_historyListenerAdded) {
5963
6319
  return;
@@ -5980,14 +6336,18 @@
5980
6336
  _currUri = fieldRedaction(_currUri, _self[_DYN_CORE ][_DYN_CONFIG ]);
5981
6337
  }
5982
6338
  if (_enableAutoRouteTracking) {
5983
- var distributedTraceCtx = _getDistributedTraceCtx();
5984
- if (distributedTraceCtx) {
5985
- distributedTraceCtx.setTraceId(generateW3CId());
5986
- var traceLocationName = "_unknown_";
5987
- if (locn && locn.pathname) {
5988
- traceLocationName = locn.pathname + (locn.hash || "");
6339
+ var newContext = void 0;
6340
+ if (_self[_DYN_CORE ] && _self[_DYN_CORE ][_DYN_GET_TRACE_CTX ]) {
6341
+ var currentContext = _self[_DYN_CORE ][_DYN_GET_TRACE_CTX ](false);
6342
+ if (currentContext && _routeTraceStrategy === 1 ) {
6343
+ newContext = createDistributedTraceContext(currentContext);
6344
+ }
6345
+ else {
6346
+ newContext = _self[_DYN_CORE ][_DYN_GET_TRACE_CTX ](true);
5989
6347
  }
5990
- distributedTraceCtx.setName(dataSanitizeString(_self[_DYN_DIAG_LOG ](), traceLocationName));
6348
+ newContext.traceId = generateW3CId();
6349
+ newContext.pageName = dataSanitizeString(_self[_DYN_DIAG_LOG ](), newContext.pageName || "_unknown_");
6350
+ _self[_DYN_CORE ].setTraceCtx(newContext);
5991
6351
  }
5992
6352
  scheduleTimeout((function (uri) {
5993
6353
  _self[_DYN_TRACK_PAGE_VIEW ]({ refUri: uri, properties: { duration: 0 } });
@@ -6074,7 +6434,7 @@
6074
6434
  });
6075
6435
  return _this;
6076
6436
  }
6077
- AnalyticsPlugin.Version = '3.3.12-nightly3.2602-18';
6437
+ AnalyticsPlugin.Version = '3.4.0-beta';
6078
6438
  return AnalyticsPlugin;
6079
6439
  }(BaseTelemetryPlugin));
6080
6440