@microsoft/applicationinsights-core-js 3.0.0-beta.2210-16 → 3.0.0-beta.2210-18

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 (117) hide show
  1. package/browser/applicationinsights-core-js.integrity.json +9 -9
  2. package/browser/applicationinsights-core-js.js +131 -117
  3. package/browser/applicationinsights-core-js.js.map +1 -1
  4. package/browser/applicationinsights-core-js.min.js +2 -2
  5. package/browser/applicationinsights-core-js.min.js.map +1 -1
  6. package/dist/applicationinsights-core-js.api.json +0 -89
  7. package/dist/applicationinsights-core-js.api.md +6 -6
  8. package/dist/applicationinsights-core-js.d.ts +7 -17
  9. package/dist/applicationinsights-core-js.js +131 -117
  10. package/dist/applicationinsights-core-js.js.map +1 -1
  11. package/dist/applicationinsights-core-js.min.js +2 -2
  12. package/dist/applicationinsights-core-js.min.js.map +1 -1
  13. package/dist/applicationinsights-core-js.rollup.d.ts +7 -17
  14. package/dist-esm/Config/ConfigDefaults.js +2 -3
  15. package/dist-esm/Config/ConfigDefaults.js.map +1 -1
  16. package/dist-esm/Config/DynamicConfig.js +2 -3
  17. package/dist-esm/Config/DynamicConfig.js.map +1 -1
  18. package/dist-esm/Config/DynamicProperty.js +31 -18
  19. package/dist-esm/Config/DynamicProperty.js.map +1 -1
  20. package/dist-esm/Config/DynamicState.js +58 -47
  21. package/dist-esm/Config/DynamicState.js.map +1 -1
  22. package/dist-esm/Config/DynamicSupport.js +2 -3
  23. package/dist-esm/Config/DynamicSupport.js.map +1 -1
  24. package/dist-esm/Config/IConfigDefaults.js +1 -1
  25. package/dist-esm/Config/IDynamicConfigHandler.js +1 -1
  26. package/dist-esm/Config/IDynamicPropertyHandler.js +1 -1
  27. package/dist-esm/Config/IDynamicWatcher.js +1 -1
  28. package/dist-esm/Config/_IDynamicConfigHandlerState.js +1 -1
  29. package/dist-esm/JavaScriptSDK/AggregationError.js +1 -1
  30. package/dist-esm/JavaScriptSDK/AppInsightsCore.js +3 -3
  31. package/dist-esm/JavaScriptSDK/AppInsightsCore.js.map +1 -1
  32. package/dist-esm/JavaScriptSDK/BaseTelemetryPlugin.js +1 -1
  33. package/dist-esm/JavaScriptSDK/ChannelController.js +5 -7
  34. package/dist-esm/JavaScriptSDK/ChannelController.js.map +1 -1
  35. package/dist-esm/JavaScriptSDK/CookieMgr.js +12 -12
  36. package/dist-esm/JavaScriptSDK/CookieMgr.js.map +1 -1
  37. package/dist-esm/JavaScriptSDK/CoreUtils.js +1 -14
  38. package/dist-esm/JavaScriptSDK/CoreUtils.js.map +1 -1
  39. package/dist-esm/JavaScriptSDK/DataCacheHelper.js +2 -2
  40. package/dist-esm/JavaScriptSDK/DataCacheHelper.js.map +1 -1
  41. package/dist-esm/JavaScriptSDK/DbgExtensionUtils.js +3 -2
  42. package/dist-esm/JavaScriptSDK/DbgExtensionUtils.js.map +1 -1
  43. package/dist-esm/JavaScriptSDK/DiagnosticLogger.js +1 -1
  44. package/dist-esm/JavaScriptSDK/EnvUtils.js +4 -12
  45. package/dist-esm/JavaScriptSDK/EnvUtils.js.map +1 -1
  46. package/dist-esm/JavaScriptSDK/EventHelpers.js +2 -3
  47. package/dist-esm/JavaScriptSDK/EventHelpers.js.map +1 -1
  48. package/dist-esm/JavaScriptSDK/HelperFuncs.js +3 -41
  49. package/dist-esm/JavaScriptSDK/HelperFuncs.js.map +1 -1
  50. package/dist-esm/JavaScriptSDK/InstrumentHooks.js +1 -1
  51. package/dist-esm/JavaScriptSDK/InternalConstants.js +1 -1
  52. package/dist-esm/JavaScriptSDK/NotificationManager.js +4 -4
  53. package/dist-esm/JavaScriptSDK/NotificationManager.js.map +1 -1
  54. package/dist-esm/JavaScriptSDK/PerfManager.js +4 -5
  55. package/dist-esm/JavaScriptSDK/PerfManager.js.map +1 -1
  56. package/dist-esm/JavaScriptSDK/ProcessTelemetryContext.js +4 -4
  57. package/dist-esm/JavaScriptSDK/ProcessTelemetryContext.js.map +1 -1
  58. package/dist-esm/JavaScriptSDK/RandomHelper.js +3 -3
  59. package/dist-esm/JavaScriptSDK/RandomHelper.js.map +1 -1
  60. package/dist-esm/JavaScriptSDK/TelemetryHelpers.js +1 -1
  61. package/dist-esm/JavaScriptSDK/TelemetryInitializerPlugin.js +1 -1
  62. package/dist-esm/JavaScriptSDK/UnloadHandlerContainer.js +1 -1
  63. package/dist-esm/JavaScriptSDK/W3cTraceParent.js +3 -3
  64. package/dist-esm/JavaScriptSDK/W3cTraceParent.js.map +1 -1
  65. package/dist-esm/JavaScriptSDK.Enums/EnumHelperFuncs.js +1 -1
  66. package/dist-esm/JavaScriptSDK.Enums/EventsDiscardedReason.js +1 -1
  67. package/dist-esm/JavaScriptSDK.Enums/LoggingEnums.js +1 -1
  68. package/dist-esm/JavaScriptSDK.Enums/SendRequestReason.js +1 -1
  69. package/dist-esm/JavaScriptSDK.Enums/TelemetryUnloadReason.js +1 -1
  70. package/dist-esm/JavaScriptSDK.Enums/TelemetryUpdateReason.js +1 -1
  71. package/dist-esm/JavaScriptSDK.Interfaces/IAppInsightsCore.js +1 -1
  72. package/dist-esm/JavaScriptSDK.Interfaces/IChannelControls.js +1 -1
  73. package/dist-esm/JavaScriptSDK.Interfaces/IConfiguration.js +1 -1
  74. package/dist-esm/JavaScriptSDK.Interfaces/ICookieMgr.js +1 -1
  75. package/dist-esm/JavaScriptSDK.Interfaces/IDbgExtension.js +1 -1
  76. package/dist-esm/JavaScriptSDK.Interfaces/IDiagnosticLogger.js +1 -1
  77. package/dist-esm/JavaScriptSDK.Interfaces/IDistributedTraceContext.js +1 -1
  78. package/dist-esm/JavaScriptSDK.Interfaces/IInstrumentHooks.js +1 -1
  79. package/dist-esm/JavaScriptSDK.Interfaces/INotificationListener.js +1 -1
  80. package/dist-esm/JavaScriptSDK.Interfaces/INotificationManager.js +1 -1
  81. package/dist-esm/JavaScriptSDK.Interfaces/IPerfEvent.js +1 -1
  82. package/dist-esm/JavaScriptSDK.Interfaces/IPerfManager.js +1 -1
  83. package/dist-esm/JavaScriptSDK.Interfaces/IProcessTelemetryContext.js +1 -1
  84. package/dist-esm/JavaScriptSDK.Interfaces/ITelemetryInitializers.js +1 -1
  85. package/dist-esm/JavaScriptSDK.Interfaces/ITelemetryItem.js +1 -1
  86. package/dist-esm/JavaScriptSDK.Interfaces/ITelemetryPlugin.js +1 -1
  87. package/dist-esm/JavaScriptSDK.Interfaces/ITelemetryPluginChain.js +1 -1
  88. package/dist-esm/JavaScriptSDK.Interfaces/ITelemetryUnloadState.js +1 -1
  89. package/dist-esm/JavaScriptSDK.Interfaces/ITelemetryUpdateState.js +1 -1
  90. package/dist-esm/JavaScriptSDK.Interfaces/ITraceParent.js +1 -1
  91. package/dist-esm/JavaScriptSDK.Interfaces/IUnloadHook.js +1 -1
  92. package/dist-esm/JavaScriptSDK.Interfaces/IUnloadableComponent.js +1 -1
  93. package/dist-esm/__DynamicConstants.js +4 -6
  94. package/dist-esm/__DynamicConstants.js.map +1 -1
  95. package/dist-esm/applicationinsights-core-js.js +5 -5
  96. package/dist-esm/applicationinsights-core-js.js.map +1 -1
  97. package/package.json +1 -1
  98. package/src/JavaScriptSDK/AppInsightsCore.ts +3 -3
  99. package/src/JavaScriptSDK/ChannelController.ts +5 -7
  100. package/src/JavaScriptSDK/CookieMgr.ts +11 -11
  101. package/src/JavaScriptSDK/CoreUtils.ts +0 -15
  102. package/src/JavaScriptSDK/DbgExtensionUtils.ts +2 -1
  103. package/src/JavaScriptSDK/EnvUtils.ts +2 -11
  104. package/src/JavaScriptSDK/EventHelpers.ts +1 -2
  105. package/src/JavaScriptSDK/HelperFuncs.ts +3 -47
  106. package/src/JavaScriptSDK/NotificationManager.ts +3 -3
  107. package/src/JavaScriptSDK/PerfManager.ts +3 -4
  108. package/src/JavaScriptSDK/ProcessTelemetryContext.ts +6 -4
  109. package/src/JavaScriptSDK/RandomHelper.ts +2 -2
  110. package/src/JavaScriptSDK/W3cTraceParent.ts +2 -2
  111. package/types/Config/IDynamicWatcher.d.ts +5 -1
  112. package/types/Config/_IDynamicConfigHandlerState.d.ts +17 -1
  113. package/types/JavaScriptSDK/CoreUtils.d.ts +0 -5
  114. package/types/JavaScriptSDK/EnvUtils.d.ts +0 -6
  115. package/types/JavaScriptSDK/HelperFuncs.d.ts +0 -18
  116. package/types/__DynamicConstants.d.ts +1 -3
  117. package/types/applicationinsights-core-js.d.ts +4 -4
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Core, 3.0.0-beta.2210-16
2
+ * Application Insights JavaScript SDK - Core, 3.0.0-beta.2210-18
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  (function (global, factory) {
@@ -108,7 +108,7 @@
108
108
  return objHasOwnProperty(obj, prop) || !!objGetOwnPropertyDescriptor(obj, prop);
109
109
  }
110
110
 
111
- function objForEachKey$1(theObject, callbackfn, thisArg) {
111
+ function objForEachKey(theObject, callbackfn, thisArg) {
112
112
  if (theObject && isObject(theObject)) {
113
113
  for (var prop in theObject) {
114
114
  if (objHasOwn(theObject, prop)) {
@@ -139,7 +139,7 @@
139
139
  }
140
140
  function objDeepFreeze(value) {
141
141
  if (_objFreeze) {
142
- objForEachKey$1(value, function (key, value) {
142
+ objForEachKey(value, function (key, value) {
143
143
  if (isArray(value) || isObject(value)) {
144
144
  _objFreeze(value);
145
145
  }
@@ -153,7 +153,7 @@
153
153
 
154
154
  function createEnum(values) {
155
155
  var theEnum = {};
156
- objForEachKey$1(values, function (field, value) {
156
+ objForEachKey(values, function (field, value) {
157
157
  theEnum[field] = value;
158
158
  theEnum[value] = field;
159
159
  });
@@ -161,7 +161,7 @@
161
161
  }
162
162
  function createSimpleMap(values) {
163
163
  var mapClass = {};
164
- objForEachKey$1(values, function (field, value) {
164
+ objForEachKey(values, function (field, value) {
165
165
  mapClass[field] = value[1];
166
166
  mapClass[value[0]] = value[1];
167
167
  });
@@ -231,7 +231,7 @@
231
231
  d.__proto__ = b;
232
232
  }) ||
233
233
  function (d, b) {
234
- objForEachKey$1(b, function (key, value) {
234
+ objForEachKey(b, function (key, value) {
235
235
  d[key] = value;
236
236
  });
237
237
  };
@@ -496,10 +496,17 @@
496
496
 
497
497
  var arrReduce = _unwrapFunction("reduce");
498
498
 
499
+ function utcNow() {
500
+ return (Date.now || polyUtcNow)();
501
+ }
502
+ function polyUtcNow() {
503
+ return new Date().getTime();
504
+ }
505
+
499
506
  var _fnToString$1;
500
507
  var _objCtrFnString;
501
508
  var _gblWindow;
502
- function isPlainObject$1(value) {
509
+ function isPlainObject(value) {
503
510
  if (!value || typeof value !== OBJECT) {
504
511
  return false;
505
512
  }
@@ -644,7 +651,7 @@
644
651
  }
645
652
  function plainObjDeepCopyHandler(details) {
646
653
  var value = details.value;
647
- if (isPlainObject$1(value)) {
654
+ if (isPlainObject(value)) {
648
655
  var target = details.result = {};
649
656
  details.copyTo(target, value);
650
657
  return true;
@@ -666,6 +673,19 @@
666
673
  return _doExtend(objDeepCopy(target) || {}, theArgs);
667
674
  }
668
675
 
676
+ var _perf;
677
+ function getPerformance() {
678
+ (!_perf || (_globalLazyTestHooks.lzy && !_perf.b)) && (_perf = _lazySafeGet(function () { return getInst("performance"); }, UNDEF_VALUE));
679
+ return _perf.v;
680
+ }
681
+ function perfNow() {
682
+ var perf = getPerformance();
683
+ if (perf && perf.now) {
684
+ return perf.now();
685
+ }
686
+ return utcNow();
687
+ }
688
+
669
689
  var mathMax = MathCls.max;
670
690
 
671
691
  var strSlice = _unwrapFunction("slice");
@@ -689,6 +709,9 @@
689
709
  }
690
710
  return strSlice(value, start, start + length);
691
711
  }
712
+ function strLeft(value, count) {
713
+ return strSubstring(value, 0, count);
714
+ }
692
715
 
693
716
  var ENDS_WITH = "endsWith";
694
717
  var strEndsWith = StrProto[ENDS_WITH] ? _unwrapFunction(ENDS_WITH) : polyStrEndsWith;
@@ -780,11 +803,10 @@
780
803
  var _DYN_CONFIGURABLE = "configurable";
781
804
  var _DYN_ENUMERABLE = "enumerable";
782
805
  var _DYN_APPLY = "apply";
783
- var _DYN_INDEX_OF = "indexOf";
784
806
  var _DYN_PUSH = "push";
807
+ var _DYN_SPLICE = "splice";
785
808
  var _DYN_INITIALIZE = "initialize";
786
809
  var _DYN_IDENTIFIER = "identifier";
787
- var _DYN_SPLICE = "splice";
788
810
  var _DYN_IS_INITIALIZED = "isInitialized";
789
811
  var _DYN_NAME = "name";
790
812
  var _DYN_TIME = "time";
@@ -811,7 +833,6 @@
811
833
  var _DYN_SET_NEXT_PLUGIN = "setNextPlugin";
812
834
  var _DYN_CREATE_NEW = "createNew";
813
835
  var _DYN_CONFIG = "config";
814
- var _DYN_SUBSTRING = "substring";
815
836
  var _DYN_USER_AGENT = "userAgent";
816
837
  var _DYN_SPLIT = "split";
817
838
  var _DYN_NODE_TYPE = "nodeType";
@@ -1224,9 +1245,8 @@
1224
1245
 
1225
1246
  var strToString = "toString";
1226
1247
  var strGetPrototypeOf = "getPrototypeOf";
1227
- var strConstructor = "constructor";
1228
1248
  var _fnToString = ObjClass[strToString];
1229
- var _objFunctionString = _fnToString[_DYN_CALL ](ObjClass);
1249
+ _fnToString[_DYN_CALL ](ObjClass);
1230
1250
  var rCamelCase = /-([a-z])/g;
1231
1251
  var rNormalizeInvalid = /([^\w\d_$])/g;
1232
1252
  var rLeadingNumeric = /^(\d+[\w\d_$])/;
@@ -1250,36 +1270,15 @@
1250
1270
  }
1251
1271
  return value;
1252
1272
  }
1253
- var objForEachKey = objForEachKey$1;
1254
1273
  function strContains(value, search) {
1255
1274
  if (value && search) {
1256
1275
  return strIndexOf(value, search) !== -1;
1257
1276
  }
1258
1277
  return false;
1259
1278
  }
1260
- function isPlainObject(value) {
1261
- var result = false;
1262
- if (value && typeof value === "object") {
1263
- var proto = _getObjProto(value);
1264
- if (!proto) {
1265
- result = true;
1266
- }
1267
- else {
1268
- if (proto[strConstructor] && objHasOwnProperty(proto, strConstructor)) {
1269
- proto = proto[strConstructor];
1270
- }
1271
- result = typeof proto === strShimFunction && _fnToString[_DYN_CALL ](proto) === _objFunctionString;
1272
- }
1273
- }
1274
- return result;
1275
- }
1276
1279
  function toISOString(date) {
1277
1280
  return date && date.toISOString() || "";
1278
1281
  }
1279
- function dateNow() {
1280
- var dt = Date;
1281
- return dt.now ? dt.now() : new dt().getTime();
1282
- }
1283
1282
  function getExceptionName(object) {
1284
1283
  if (isError(object)) {
1285
1284
  return object[_DYN_NAME ];
@@ -1444,7 +1443,6 @@
1444
1443
  var strDocumentMode = "documentMode";
1445
1444
  var strLocation = "location";
1446
1445
  var strConsole = "console";
1447
- var strPerformance = "performance";
1448
1446
  var strJSON = "JSON";
1449
1447
  var strCrypto = "crypto";
1450
1448
  var strMsCrypto = "msCrypto";
@@ -1503,9 +1501,6 @@
1503
1501
  }
1504
1502
  return getInst(strConsole);
1505
1503
  }
1506
- function getPerformance() {
1507
- return getInst(strPerformance);
1508
- }
1509
1504
  function hasJSON() {
1510
1505
  return Boolean((typeof JSON === strShimObject && JSON) || getInst(strJSON) !== null);
1511
1506
  }
@@ -1562,7 +1557,7 @@
1562
1557
  userAgentStr = navigator_2 ? (navigator_2[_DYN_USER_AGENT ] || STR_EMPTY)[_DYN_TO_LOWER_CASE ]() : STR_EMPTY;
1563
1558
  }
1564
1559
  var ua = (userAgentStr || STR_EMPTY)[_DYN_TO_LOWER_CASE ]();
1565
- return (ua[_DYN_INDEX_OF ]("safari") >= 0);
1560
+ return (strIndexOf(ua, "safari") >= 0);
1566
1561
  }
1567
1562
  function isBeaconsSupported() {
1568
1563
  if (_beaconsSupported === null) {
@@ -1647,7 +1642,7 @@
1647
1642
  }
1648
1643
  function _autoSeedMwc() {
1649
1644
  try {
1650
- var now = dateNow() & 0x7fffffff;
1645
+ var now = utcNow() & 0x7fffffff;
1651
1646
  _mwcSeed(((Math.random() * UInt32Mask) ^ now) + now);
1652
1647
  }
1653
1648
  catch (e) {
@@ -1715,7 +1710,7 @@
1715
1710
  }
1716
1711
 
1717
1712
  var _objDefineProperty = ObjDefineProperty;
1718
- var version = "3.0.0-beta.2210-16";
1713
+ var version = "3.0.0-beta.2210-18";
1719
1714
  var instanceName = "." + newId(6);
1720
1715
  var _dataUid = 0;
1721
1716
  function _createAccessor(target, prop, value) {
@@ -1800,7 +1795,7 @@
1800
1795
  target_1 = {};
1801
1796
  }
1802
1797
  if (target_1) {
1803
- objForEachKey$1(source, function (key, value) {
1798
+ objForEachKey(source, function (key, value) {
1804
1799
  target_1[key] = _cfgDeepCopy(value);
1805
1800
  });
1806
1801
  return target_1;
@@ -1915,9 +1910,18 @@
1915
1910
  var detail = {
1916
1911
  n: name,
1917
1912
  h: [],
1918
- add: function (handler) {
1919
- if (handler && handler.fn && detail.h[_DYN_INDEX_OF ](handler) === -1) {
1920
- detail.h[_DYN_PUSH ](handler);
1913
+ trk: function (handler) {
1914
+ if (handler && handler.fn) {
1915
+ if (arrIndexOf(detail.h, handler) === -1) {
1916
+ detail.h[_DYN_PUSH ](handler);
1917
+ }
1918
+ state.trk(handler, detail);
1919
+ }
1920
+ },
1921
+ clr: function (handler) {
1922
+ var idx = arrIndexOf(detail.h, handler);
1923
+ if (idx !== -1) {
1924
+ detail.h[_DYN_SPLICE ](idx, 1);
1921
1925
  }
1922
1926
  }
1923
1927
  };
@@ -1931,25 +1935,28 @@
1931
1935
  }
1932
1936
  var activeHandler = state.act;
1933
1937
  if (activeHandler) {
1934
- detail.add(activeHandler);
1938
+ detail.trk(activeHandler);
1935
1939
  }
1936
1940
  return value;
1937
1941
  }
1938
- _getProperty[state.prop] = true;
1942
+ _getProperty[state.prop] = {
1943
+ chng: function () {
1944
+ state.add(detail);
1945
+ }
1946
+ };
1939
1947
  function _setProperty(newValue) {
1940
1948
  if (value !== newValue) {
1941
1949
  if (!!_setProperty[state.ro] && state.upd) {
1942
1950
  throwInvalidAccess("[" + name + "] is sealed from " + dumpObj(theConfig));
1943
1951
  }
1944
1952
  if (value && value[CFG_HANDLER_LINK]) {
1945
- if (isPlainObject(value)) {
1946
- objForEachKey$1(value, function (key) {
1947
- value[key] = UNDEFINED_VALUE;
1948
- });
1949
- }
1950
- else if (isArray(value)) {
1951
- arrForEach(value, function (propValue, idx) {
1952
- value[idx] = UNDEFINED_VALUE;
1953
+ if (isPlainObject(value) || isArray(value)) {
1954
+ objForEachKey(value, function (key) {
1955
+ var propDesc = objGetOwnPropertyDescriptor(value, key);
1956
+ if (propDesc && propDesc.get) {
1957
+ var valueState = propDesc.get[state.prop];
1958
+ valueState && valueState.chng();
1959
+ }
1953
1960
  });
1954
1961
  }
1955
1962
  }
@@ -1981,7 +1988,7 @@
1981
1988
  }
1982
1989
  function _makeDynamicObject(state, target ) {
1983
1990
  var _a;
1984
- objForEachKey$1( target, function (key, value) {
1991
+ objForEachKey( target, function (key, value) {
1985
1992
  _setDynamicProperty(state, target, key, value);
1986
1993
  });
1987
1994
  if (!target[CFG_HANDLER_LINK]) {
@@ -1999,19 +2006,10 @@
1999
2006
 
2000
2007
  var symPrefix = "[[ai_";
2001
2008
  var symPostfix = "]]";
2002
- function _insertWatcher(watchers, theDetail) {
2003
- if (theDetail && theDetail.h && theDetail.h[_DYN_LENGTH ] > 0) {
2004
- arrForEach(theDetail.h, function (handler) {
2005
- if (handler && handler.fn && watchers[_DYN_INDEX_OF ](handler) === -1) {
2006
- watchers[_DYN_PUSH ](handler);
2007
- }
2008
- });
2009
- }
2010
- }
2011
2009
  function _createState(cfgHandler) {
2012
- var _a;
2013
2010
  var dynamicPropertySymbol = newSymbol(symPrefix + "get" + cfgHandler.uid + symPostfix);
2014
2011
  var dynamicPropertyReadOnly = newSymbol(symPrefix + "ro" + cfgHandler.uid + symPostfix);
2012
+ var dynamicPropertyDetail = newSymbol(symPrefix + "dtl" + cfgHandler.uid + symPostfix);
2015
2013
  var _waitingHandlers = null;
2016
2014
  var _watcherTimer = null;
2017
2015
  var theState;
@@ -2019,6 +2017,12 @@
2019
2017
  var prevWatcher = theState.act;
2020
2018
  try {
2021
2019
  theState.act = activeHandler;
2020
+ if (activeHandler && activeHandler[dynamicPropertyDetail]) {
2021
+ arrForEach(activeHandler[dynamicPropertyDetail], function (detail) {
2022
+ detail.clr(activeHandler);
2023
+ });
2024
+ activeHandler[dynamicPropertyDetail] = [];
2025
+ }
2022
2026
  callback({
2023
2027
  cfg: cfgHandler.cfg,
2024
2028
  set: cfgHandler.set.bind(cfgHandler),
@@ -2028,7 +2032,7 @@
2028
2032
  catch (e) {
2029
2033
  var logger = cfgHandler[_DYN_LOGGER ];
2030
2034
  if (logger) {
2031
- logger[_DYN_THROW_INTERNAL ](1 , 107 , "Watcher [" + dumpObj(callback) + "] failed [" + dumpObj(e) + "]");
2035
+ logger[_DYN_THROW_INTERNAL ](1 , 107 , dumpObj(e));
2032
2036
  }
2033
2037
  throw e;
2034
2038
  }
@@ -2040,18 +2044,24 @@
2040
2044
  if (_waitingHandlers) {
2041
2045
  var notifyHandlers = _waitingHandlers;
2042
2046
  _waitingHandlers = null;
2043
- if (_watcherTimer) {
2044
- _watcherTimer.cancel();
2045
- _watcherTimer = null;
2046
- }
2047
+ _watcherTimer && _watcherTimer.cancel();
2048
+ _watcherTimer = null;
2047
2049
  var watcherFailures_1 = [];
2048
2050
  arrForEach(notifyHandlers, function (handler) {
2049
- if (handler.fn) {
2050
- try {
2051
- _useHandler(handler, handler.fn);
2051
+ if (handler) {
2052
+ if (handler[dynamicPropertyDetail]) {
2053
+ arrForEach(handler[dynamicPropertyDetail], function (detail) {
2054
+ detail.clr(handler);
2055
+ });
2056
+ handler[dynamicPropertyDetail] = null;
2052
2057
  }
2053
- catch (e) {
2054
- watcherFailures_1[_DYN_PUSH ](e);
2058
+ if (handler.fn) {
2059
+ try {
2060
+ _useHandler(handler, handler.fn);
2061
+ }
2062
+ catch (e) {
2063
+ watcherFailures_1[_DYN_PUSH ](e);
2064
+ }
2055
2065
  }
2056
2066
  }
2057
2067
  });
@@ -2064,7 +2074,7 @@
2064
2074
  }
2065
2075
  }
2066
2076
  if (watcherFailures_1[_DYN_LENGTH ] > 0) {
2067
- throwAggregationError("Unexpected watcher error occurred: ", watcherFailures_1);
2077
+ throwAggregationError("Watcher error(s): ", watcherFailures_1);
2068
2078
  }
2069
2079
  }
2070
2080
  }
@@ -2079,18 +2089,31 @@
2079
2089
  _notifyWatchers();
2080
2090
  }, 0);
2081
2091
  }
2082
- _insertWatcher(_waitingHandlers, detail);
2092
+ for (var idx = 0; idx < detail.h[_DYN_LENGTH ]; idx++) {
2093
+ var handler = detail.h[idx];
2094
+ if (handler && arrIndexOf(_waitingHandlers, handler) === -1) {
2095
+ _waitingHandlers[_DYN_PUSH ](handler);
2096
+ }
2097
+ }
2083
2098
  }
2084
2099
  }
2085
- theState = (_a = {
2086
- prop: dynamicPropertySymbol,
2087
- ro: dynamicPropertyReadOnly,
2088
- hdlr: cfgHandler,
2089
- add: _addWatcher
2090
- },
2091
- _a[_DYN_NOTIFY ] = _notifyWatchers,
2092
- _a.use = _useHandler,
2093
- _a);
2100
+ function _trackHandler(handler, detail) {
2101
+ if (handler) {
2102
+ var details = handler[dynamicPropertyDetail] = handler[dynamicPropertyDetail] || [];
2103
+ if (arrIndexOf(details, detail) === -1) {
2104
+ details[_DYN_PUSH ](detail);
2105
+ }
2106
+ }
2107
+ }
2108
+ theState = {
2109
+ prop: dynamicPropertySymbol,
2110
+ ro: dynamicPropertyReadOnly,
2111
+ hdlr: cfgHandler,
2112
+ add: _addWatcher,
2113
+ notify: _notifyWatchers,
2114
+ use: _useHandler,
2115
+ trk: _trackHandler
2116
+ };
2094
2117
  return theState;
2095
2118
  }
2096
2119
 
@@ -2181,7 +2204,7 @@
2181
2204
  createDynamicConfig(config, null, logger)[_DYN_WATCH ](configHandler);
2182
2205
  }
2183
2206
 
2184
- var listenerFuncs = ["eventsSent", "eventsDiscarded", "eventsSendRequest", "perfEvent"];
2207
+ var listenerFuncs = [STR_EVENTS_SENT, STR_EVENTS_DISCARDED, STR_EVENTS_SEND_REQUEST, STR_PERF_EVENT];
2185
2208
  var _aiNamespace = null;
2186
2209
  var _debugListener;
2187
2210
  function _listenerProxyFunc(name, config) {
@@ -2404,7 +2427,7 @@
2404
2427
  var PerfEvent = /** @class */ (function () {
2405
2428
  function PerfEvent(name, payloadDetails, isAsync) {
2406
2429
  var _self = this;
2407
- _self.start = dateNow();
2430
+ _self.start = utcNow();
2408
2431
  _self[_DYN_NAME ] = name;
2409
2432
  _self[_DYN_IS_ASYNC ] = isAsync;
2410
2433
  _self[_DYN_IS_CHILD_EVT ] = function () { return false; };
@@ -2455,7 +2478,7 @@
2455
2478
  }
2456
2479
  }
2457
2480
  }
2458
- _self[_DYN_TIME ] = dateNow() - _self.start;
2481
+ _self[_DYN_TIME ] = utcNow() - _self.start;
2459
2482
  _self.exTime = _self[_DYN_TIME ] - childTime;
2460
2483
  _self[_DYN_COMPLETE ] = function () { };
2461
2484
  };
@@ -2548,13 +2571,6 @@
2548
2571
  var uuid = generateW3CId();
2549
2572
  return strSubstring(uuid, 0, 8) + "-" + strSubstring(uuid, 8, 12) + "-" + strSubstring(uuid, 12, 16) + "-" + strSubstring(uuid, 16, 20) + "-" + strSubstring(uuid, 20);
2550
2573
  }
2551
- function perfNow() {
2552
- var perf = getPerformance();
2553
- if (perf && perf.now) {
2554
- return perf.now();
2555
- }
2556
- return dateNow();
2557
- }
2558
2574
  function generateW3CId() {
2559
2575
  var hexValues = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"];
2560
2576
  var oct = STR_EMPTY, tmp;
@@ -2607,7 +2623,7 @@
2607
2623
  return _a = {},
2608
2624
  _a[_DYN_VERSION ] = _isValid(version, 2, INVALID_VERSION) ? version : DEFAULT_VERSION,
2609
2625
  _a[_DYN_TRACE_ID ] = isValidTraceId(traceId) ? traceId : generateW3CId(),
2610
- _a[_DYN_SPAN_ID ] = isValidSpanId(spanId) ? spanId : generateW3CId().substr(0, 16),
2626
+ _a[_DYN_SPAN_ID ] = isValidSpanId(spanId) ? spanId : strLeft(generateW3CId(), 16),
2611
2627
  _a.traceFlags = flags >= 0 && flags <= 0xFF ? flags : 1,
2612
2628
  _a;
2613
2629
  }
@@ -2885,7 +2901,7 @@
2885
2901
  if (!extCfg && createIfMissing) {
2886
2902
  extCfg = {};
2887
2903
  }
2888
- dynamicHandler.set(cfg, "extensionConfig", extCfg);
2904
+ dynamicHandler.set(cfg, STR_EXTENSION_CONFIG, extCfg);
2889
2905
  extCfg = cfg[STR_EXTENSION_CONFIG ];
2890
2906
  if (extCfg) {
2891
2907
  idCfg = extCfg[identifier];
@@ -3300,10 +3316,8 @@
3300
3316
  function doCallback() {
3301
3317
  waiting--;
3302
3318
  if (doneIterating && waiting === 0) {
3303
- if (cbTimer) {
3304
- clearTimeout(cbTimer);
3305
- cbTimer = null;
3306
- }
3319
+ cbTimer && cbTimer.cancel();
3320
+ cbTimer = null;
3307
3321
  callBack && callBack(doneIterating);
3308
3322
  callBack = null;
3309
3323
  }
@@ -3319,7 +3333,7 @@
3319
3333
  }, sendReason)) {
3320
3334
  if (!handled_1) {
3321
3335
  if (isAsync && cbTimer == null) {
3322
- cbTimer = setTimeout(function () {
3336
+ cbTimer = scheduleTimeout(function () {
3323
3337
  cbTimer = null;
3324
3338
  doCallback();
3325
3339
  }, cbTimeout);
@@ -3402,13 +3416,13 @@
3402
3416
  }
3403
3417
  function _isIgnoredCookie(cookieMgrCfg, name) {
3404
3418
  if (name && cookieMgrCfg && isArray(cookieMgrCfg.ignoreCookies)) {
3405
- return cookieMgrCfg.ignoreCookies[_DYN_INDEX_OF ](name) !== -1;
3419
+ return arrIndexOf(cookieMgrCfg.ignoreCookies, name) !== -1;
3406
3420
  }
3407
3421
  return false;
3408
3422
  }
3409
3423
  function _isBlockedCookie(cookieMgrCfg, name) {
3410
3424
  if (name && cookieMgrCfg && isArray(cookieMgrCfg.blockedCookies)) {
3411
- if (cookieMgrCfg.blockedCookies[_DYN_INDEX_OF ](name) !== -1) {
3425
+ if (arrIndexOf(cookieMgrCfg.blockedCookies, name) !== -1) {
3412
3426
  return true;
3413
3427
  }
3414
3428
  }
@@ -3480,16 +3494,16 @@
3480
3494
  if (_isMgrEnabled(cookieMgr) && !_isBlockedCookie(cookieMgrConfig, name)) {
3481
3495
  var values = {};
3482
3496
  var theValue = strTrim(value || STR_EMPTY);
3483
- var idx = theValue[_DYN_INDEX_OF ](";");
3497
+ var idx = strIndexOf(theValue, ";");
3484
3498
  if (idx !== -1) {
3485
- theValue = strTrim(value[_DYN_SUBSTRING ](0, idx));
3486
- values = _extractParts(value[_DYN_SUBSTRING ](idx + 1));
3499
+ theValue = strTrim(strLeft(value, idx));
3500
+ values = _extractParts(strSubstring(value, idx + 1));
3487
3501
  }
3488
3502
  setValue(values, STR_DOMAIN, domain || _domain, isTruthy, isUndefined);
3489
3503
  if (!isNullOrUndefined(maxAgeSec)) {
3490
3504
  var _isIE = isIE();
3491
3505
  if (isUndefined(values[strExpires])) {
3492
- var nowMs = dateNow();
3506
+ var nowMs = utcNow();
3493
3507
  var expireMs = nowMs + (maxAgeSec * 1000);
3494
3508
  if (expireMs > 0) {
3495
3509
  var expiry = new Date();
@@ -3571,12 +3585,12 @@
3571
3585
  arrForEach(parts, function (thePart) {
3572
3586
  thePart = strTrim(thePart || STR_EMPTY);
3573
3587
  if (thePart) {
3574
- var idx = thePart[_DYN_INDEX_OF ]("=");
3588
+ var idx = strIndexOf(thePart, "=");
3575
3589
  if (idx === -1) {
3576
3590
  values[thePart] = null;
3577
3591
  }
3578
3592
  else {
3579
- values[strTrim(thePart[_DYN_SUBSTRING ](0, idx))] = strTrim(thePart[_DYN_SUBSTRING ](idx + 1));
3593
+ values[strTrim(strLeft(thePart, idx))] = strTrim(strSubstring(thePart, idx + 1));
3580
3594
  }
3581
3595
  }
3582
3596
  });
@@ -3591,7 +3605,7 @@
3591
3605
  }
3592
3606
  function _formatCookieValue(value, values) {
3593
3607
  var cookieValue = value || STR_EMPTY;
3594
- objForEachKey$1(values, function (name, theValue) {
3608
+ objForEachKey(values, function (name, theValue) {
3595
3609
  cookieValue += "; " + name + (!isNullOrUndefined(theValue) ? "=" + theValue : STR_EMPTY);
3596
3610
  });
3597
3611
  return cookieValue;
@@ -3645,7 +3659,7 @@
3645
3659
  arrForEach(listeners, function (listener) {
3646
3660
  if (listener && listener[name]) {
3647
3661
  if (isAsync) {
3648
- setTimeout(function () { return callback(listener); }, 0);
3662
+ scheduleTimeout(function () { return callback(listener); }, 0);
3649
3663
  }
3650
3664
  else {
3651
3665
  try {
@@ -3696,7 +3710,7 @@
3696
3710
  if (perfEvtsSendAll || !perfEvent[_DYN_IS_CHILD_EVT ]()) {
3697
3711
  _runListeners(_self[_DYN_LISTENERS ], STR_PERF_EVENT, false, function (listener) {
3698
3712
  if (perfEvent[_DYN_IS_ASYNC ]) {
3699
- setTimeout(function () { return listener[STR_PERF_EVENT ](perfEvent); }, 0);
3713
+ scheduleTimeout(function () { return listener[STR_PERF_EVENT ](perfEvent); }, 0);
3700
3714
  }
3701
3715
  else {
3702
3716
  listener[STR_PERF_EVENT ](perfEvent);
@@ -5161,7 +5175,7 @@
5161
5175
  exports.createUniqueNamespace = createUniqueNamespace;
5162
5176
  exports.createUnloadHandlerContainer = createUnloadHandlerContainer;
5163
5177
  exports.createValueMap = createValueMap;
5164
- exports.dateNow = dateNow;
5178
+ exports.dateNow = utcNow;
5165
5179
  exports.deepFreeze = objDeepFreeze;
5166
5180
  exports.detachEvent = detachEvent;
5167
5181
  exports.doPerf = doPerf;
@@ -5234,7 +5248,7 @@
5234
5248
  exports.objCreate = objCreateFn;
5235
5249
  exports.objDefineAccessors = objDefineAccessors;
5236
5250
  exports.objExtend = objExtend;
5237
- exports.objForEachKey = objForEachKey$1;
5251
+ exports.objForEachKey = objForEachKey;
5238
5252
  exports.objFreeze = objFreeze;
5239
5253
  exports.objKeys = objKeys;
5240
5254
  exports.objSeal = objSeal;