@microsoft/applicationinsights-core-js 3.0.3-nightly3.2305-14 → 3.0.3-nightly3.2307-24

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 (90) hide show
  1. package/browser/es5/applicationinsights-core-js.cjs.js +221 -157
  2. package/browser/es5/applicationinsights-core-js.cjs.js.map +1 -1
  3. package/browser/es5/applicationinsights-core-js.cjs.min.js +2 -2
  4. package/browser/es5/applicationinsights-core-js.cjs.min.js.map +1 -1
  5. package/browser/es5/applicationinsights-core-js.gbl.js +223 -159
  6. package/browser/es5/applicationinsights-core-js.gbl.js.map +1 -1
  7. package/browser/es5/applicationinsights-core-js.gbl.min.js +2 -2
  8. package/browser/es5/applicationinsights-core-js.gbl.min.js.map +1 -1
  9. package/browser/es5/applicationinsights-core-js.integrity.json +25 -25
  10. package/browser/es5/applicationinsights-core-js.js +223 -159
  11. package/browser/es5/applicationinsights-core-js.js.map +1 -1
  12. package/browser/es5/applicationinsights-core-js.min.js +2 -2
  13. package/browser/es5/applicationinsights-core-js.min.js.map +1 -1
  14. package/dist/es5/applicationinsights-core-js.js +221 -157
  15. package/dist/es5/applicationinsights-core-js.js.map +1 -1
  16. package/dist/es5/applicationinsights-core-js.min.js +2 -2
  17. package/dist/es5/applicationinsights-core-js.min.js.map +1 -1
  18. package/dist-es5/Config/ConfigDefaultHelpers.js +1 -1
  19. package/dist-es5/Config/ConfigDefaults.js +1 -1
  20. package/dist-es5/Config/DynamicConfig.js +1 -1
  21. package/dist-es5/Config/DynamicProperty.js +1 -1
  22. package/dist-es5/Config/DynamicState.js +1 -1
  23. package/dist-es5/Config/DynamicSupport.js +1 -1
  24. package/dist-es5/Config/IConfigDefaults.js +1 -1
  25. package/dist-es5/Config/IDynamicConfigHandler.js +1 -1
  26. package/dist-es5/Config/IDynamicPropertyHandler.js +1 -1
  27. package/dist-es5/Config/IDynamicWatcher.js +1 -1
  28. package/dist-es5/Config/_IDynamicConfigHandlerState.js +1 -1
  29. package/dist-es5/JavaScriptSDK/AggregationError.js +1 -1
  30. package/dist-es5/JavaScriptSDK/AppInsightsCore.js +5 -1
  31. package/dist-es5/JavaScriptSDK/AppInsightsCore.js.map +1 -1
  32. package/dist-es5/JavaScriptSDK/AsyncUtils.js +1 -1
  33. package/dist-es5/JavaScriptSDK/BaseTelemetryPlugin.js +1 -1
  34. package/dist-es5/JavaScriptSDK/Constants.js +1 -1
  35. package/dist-es5/JavaScriptSDK/CookieMgr.js +1 -1
  36. package/dist-es5/JavaScriptSDK/CoreUtils.js +1 -1
  37. package/dist-es5/JavaScriptSDK/DataCacheHelper.js +2 -2
  38. package/dist-es5/JavaScriptSDK/DataCacheHelper.js.map +1 -1
  39. package/dist-es5/JavaScriptSDK/DbgExtensionUtils.js +1 -1
  40. package/dist-es5/JavaScriptSDK/DiagnosticLogger.js +1 -1
  41. package/dist-es5/JavaScriptSDK/EnvUtils.js +43 -6
  42. package/dist-es5/JavaScriptSDK/EnvUtils.js.map +1 -1
  43. package/dist-es5/JavaScriptSDK/EventHelpers.js +1 -1
  44. package/dist-es5/JavaScriptSDK/HelperFuncs.js +1 -1
  45. package/dist-es5/JavaScriptSDK/InstrumentHooks.js +1 -1
  46. package/dist-es5/JavaScriptSDK/InternalConstants.js +1 -1
  47. package/dist-es5/JavaScriptSDK/NotificationManager.js +1 -1
  48. package/dist-es5/JavaScriptSDK/PerfManager.js +1 -1
  49. package/dist-es5/JavaScriptSDK/ProcessTelemetryContext.js +1 -1
  50. package/dist-es5/JavaScriptSDK/RandomHelper.js +1 -1
  51. package/dist-es5/JavaScriptSDK/TelemetryHelpers.js +1 -1
  52. package/dist-es5/JavaScriptSDK/TelemetryInitializerPlugin.js +1 -1
  53. package/dist-es5/JavaScriptSDK/UnloadHandlerContainer.js +1 -1
  54. package/dist-es5/JavaScriptSDK/UnloadHookContainer.js +1 -1
  55. package/dist-es5/JavaScriptSDK/W3cTraceParent.js +1 -1
  56. package/dist-es5/JavaScriptSDK.Enums/EnumHelperFuncs.js +1 -1
  57. package/dist-es5/JavaScriptSDK.Enums/EventsDiscardedReason.js +1 -1
  58. package/dist-es5/JavaScriptSDK.Enums/LoggingEnums.js +1 -1
  59. package/dist-es5/JavaScriptSDK.Enums/SendRequestReason.js +1 -1
  60. package/dist-es5/JavaScriptSDK.Enums/TelemetryUnloadReason.js +1 -1
  61. package/dist-es5/JavaScriptSDK.Enums/TelemetryUpdateReason.js +1 -1
  62. package/dist-es5/JavaScriptSDK.Interfaces/IAppInsightsCore.js +1 -1
  63. package/dist-es5/JavaScriptSDK.Interfaces/IChannelControls.js +1 -1
  64. package/dist-es5/JavaScriptSDK.Interfaces/IChannelControlsHost.js +1 -1
  65. package/dist-es5/JavaScriptSDK.Interfaces/IConfiguration.js +1 -1
  66. package/dist-es5/JavaScriptSDK.Interfaces/ICookieMgr.js +1 -1
  67. package/dist-es5/JavaScriptSDK.Interfaces/IDbgExtension.js +1 -1
  68. package/dist-es5/JavaScriptSDK.Interfaces/IDiagnosticLogger.js +1 -1
  69. package/dist-es5/JavaScriptSDK.Interfaces/IDistributedTraceContext.js +1 -1
  70. package/dist-es5/JavaScriptSDK.Interfaces/IInstrumentHooks.js +1 -1
  71. package/dist-es5/JavaScriptSDK.Interfaces/INotificationListener.js +1 -1
  72. package/dist-es5/JavaScriptSDK.Interfaces/INotificationManager.js +1 -1
  73. package/dist-es5/JavaScriptSDK.Interfaces/IPerfEvent.js +1 -1
  74. package/dist-es5/JavaScriptSDK.Interfaces/IPerfManager.js +1 -1
  75. package/dist-es5/JavaScriptSDK.Interfaces/IProcessTelemetryContext.js +1 -1
  76. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryInitializers.js +1 -1
  77. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryItem.js +1 -1
  78. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryPlugin.js +1 -1
  79. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryPluginChain.js +1 -1
  80. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryUnloadState.js +1 -1
  81. package/dist-es5/JavaScriptSDK.Interfaces/ITelemetryUpdateState.js +1 -1
  82. package/dist-es5/JavaScriptSDK.Interfaces/ITraceParent.js +1 -1
  83. package/dist-es5/JavaScriptSDK.Interfaces/IUnloadHook.js +1 -1
  84. package/dist-es5/JavaScriptSDK.Interfaces/IUnloadableComponent.js +1 -1
  85. package/dist-es5/__DynamicConstants.js +1 -1
  86. package/dist-es5/applicationinsights-core-js.js +2 -2
  87. package/dist-es5/applicationinsights-core-js.js.map +1 -1
  88. package/package.json +7 -5
  89. package/types/applicationinsights-core-js.d.ts +21 -52
  90. package/types/applicationinsights-core-js.namespaced.d.ts +70 -101
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Core, 3.0.3-nightly3.2305-14
2
+ * Application Insights JavaScript SDK - Core, 3.0.3-nightly3.2307-24
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  (function (global, factory) {
@@ -11,12 +11,14 @@
11
11
  var MinChannelPriorty = 100;
12
12
 
13
13
  var UNDEF_VALUE = undefined;
14
+ var NULL_VALUE = null;
14
15
  var EMPTY = "";
15
16
  var BOOLEAN = "boolean";
16
17
  var FUNCTION = "function";
17
18
  var NUMBER = "number";
18
19
  var OBJECT = "object";
19
20
  var PROTOTYPE = "prototype";
21
+ var __PROTO__ = "__proto__";
20
22
  var STRING = "string";
21
23
  var UNDEFINED = "undefined";
22
24
  var CONSTRUCTOR = "constructor";
@@ -68,21 +70,17 @@
68
70
  return typeof value === UNDEFINED || value === UNDEFINED;
69
71
  }
70
72
  function isNullOrUndefined(value) {
71
- return value === null || isUndefined(value);
73
+ return value === NULL_VALUE || isUndefined(value);
72
74
  }
73
75
  function isStrictNullOrUndefined(value) {
74
- return value === null || !isDefined(value);
76
+ return value === NULL_VALUE || !isDefined(value);
75
77
  }
76
78
  function isDefined(arg) {
77
79
  return !!arg || arg !== UNDEF_VALUE;
78
80
  }
79
- function isPrimitive(value) {
80
- var theType = typeof value;
81
- if (value && theType === OBJECT) {
82
- return false;
83
- }
84
- return value === null || PRIMITIVE_TYPES.indexOf(theType) !== -1;
85
- }
81
+ var isPrimitiveType = function (theType) {
82
+ return theType !== OBJECT && PRIMITIVE_TYPES.indexOf(theType) !== -1;
83
+ };
86
84
  var isString = _createIs(STRING);
87
85
  var isFunction = _createIs(FUNCTION);
88
86
  function isObject(value) {
@@ -147,9 +145,10 @@
147
145
 
148
146
  var _objFreeze = ObjClass$1["freeze"];
149
147
  var _doNothing = function (value) { return value; };
148
+ var _getProto = function (value) { return value[__PROTO__] || NULL_VALUE; };
150
149
  var objAssign = ObjClass$1["assign"];
151
150
  function objKeys(value) {
152
- if (!isObject(value) || value === null) {
151
+ if (!isObject(value) || value === NULL_VALUE) {
153
152
  throwTypeError("objKeys called on non-object");
154
153
  }
155
154
  return ObjClass$1.keys(value);
@@ -166,7 +165,7 @@
166
165
  }
167
166
  var objFreeze = _objFreeze || _doNothing;
168
167
  var objSeal = ObjClass$1["seal"] || _doNothing;
169
- var objGetPrototypeOf = ObjClass$1["getPrototypeOf"] || _doNothing;
168
+ var objGetPrototypeOf = ObjClass$1["getPrototypeOf"] || _getProto;
170
169
 
171
170
  function createEnum(values) {
172
171
  return _createKeyValueMap(values, 1 , 0 , objDeepFreeze);
@@ -237,7 +236,7 @@
237
236
  }
238
237
  else {
239
238
  try {
240
- propertyValueDump = JSON.stringify(object, null, format ? (isNumber(format) ? format : 4) : UNDEF_VALUE);
239
+ propertyValueDump = JSON.stringify(object, NULL_VALUE, format ? (isNumber(format) ? format : 4) : UNDEF_VALUE);
241
240
  }
242
241
  catch (e) {
243
242
  propertyValueDump = " - " + dumpObj(e, format);
@@ -246,16 +245,36 @@
246
245
  return objToString(object) + ": " + propertyValueDump;
247
246
  }
248
247
 
249
- function _unwrapFunction(funcName, target, polyFunc) {
248
+ var _arrSlice = ArrProto[SLICE];
249
+ var _throwMissingFunction = function (funcName, thisArg) {
250
+ throwTypeError("'" + asString(funcName) + "' not defined for " + dumpObj(thisArg));
251
+ };
252
+ var _unwrapInstFunction = function (funcName) {
253
+ return function (thisArg) {
254
+ return thisArg[funcName].apply(thisArg, _arrSlice.call(arguments, 1));
255
+ };
256
+ };
257
+ var _unwrapFunction = function (funcName, clsProto) {
258
+ var clsFn = clsProto && clsProto[funcName];
259
+ return function (thisArg) {
260
+ var theFunc = (thisArg && thisArg[funcName]) || clsFn;
261
+ if (theFunc) {
262
+ return theFunc.apply(thisArg, _arrSlice.call(arguments, 1));
263
+ }
264
+ _throwMissingFunction(funcName, thisArg);
265
+ };
266
+ };
267
+ var _unwrapFunctionWithPoly = function (funcName, clsProto, polyFunc) {
268
+ var clsFn = clsProto && clsProto[funcName];
250
269
  return function (thisArg) {
251
- var theFunc = (thisArg && thisArg[funcName]) || (target && target[funcName]);
270
+ var theFunc = (thisArg && thisArg[funcName]) || clsFn;
252
271
  if (theFunc || polyFunc) {
253
272
  var theArgs = arguments;
254
- return (theFunc || polyFunc).apply(thisArg, theFunc ? ArrProto[SLICE].call(theArgs, 1) : theArgs);
273
+ return (theFunc || polyFunc).apply(thisArg, theFunc ? _arrSlice.call(theArgs, 1) : theArgs);
255
274
  }
256
- throwTypeError("'" + asString(funcName) + "' not defined for " + dumpObj(thisArg));
275
+ _throwMissingFunction(funcName, thisArg);
257
276
  };
258
- }
277
+ };
259
278
  function _unwrapProp(propName) {
260
279
  return function (thisArg) {
261
280
  return thisArg[propName];
@@ -267,7 +286,7 @@
267
286
  var strSlice = _unwrapFunction(SLICE, StrProto);
268
287
 
269
288
  var strSubstring = _unwrapFunction("substring", StrProto);
270
- var strSubstr = _unwrapFunction("substr", StrProto, polyStrSubstr);
289
+ var strSubstr = _unwrapFunctionWithPoly("substr", StrProto, polyStrSubstr);
271
290
  function polyStrSubstr(value, start, length) {
272
291
  if (isNullOrUndefined(value)) {
273
292
  throwTypeError("'polyStrSubstr called with invalid " + dumpObj(value));
@@ -288,7 +307,7 @@
288
307
  return strSubstring(value, 0, count);
289
308
  }
290
309
 
291
- var strStartsWith = _unwrapFunction("startsWith", StrProto, polyStrStartsWith);
310
+ var strStartsWith = _unwrapFunctionWithPoly("startsWith", StrProto, polyStrStartsWith);
292
311
  function polyStrStartsWith(value, searchString, position) {
293
312
  if (!isString(value)) {
294
313
  throwTypeError("'" + dumpObj(value) + "' is not a string");
@@ -381,7 +400,7 @@
381
400
  var _globalLazyTestHooks;
382
401
  var _fetchLazyTestHooks = function () {
383
402
  _globalLazyTestHooks = _getGlobalConfig();
384
- _fetchLazyTestHooks = null;
403
+ _fetchLazyTestHooks = NULL_VALUE;
385
404
  };
386
405
  function getLazy(cb) {
387
406
  var lazyValue = {};
@@ -419,55 +438,45 @@
419
438
  var _cachedNavigator;
420
439
  var _cachedHistory;
421
440
  var _isNode;
422
- function lazySafeGetInst(name) {
423
- return safeGetLazy(function () { return getInst(name) || UNDEF_VALUE; }, UNDEF_VALUE);
424
- }
425
- function getGlobal(useCached) {
426
- (!_cachedGlobal || useCached === false || (_globalLazyTestHooks.lzy && !_cachedGlobal.b)) && (_cachedGlobal = safeGetLazy(_getGlobalValue, null));
441
+ var lazySafeGetInst = function (name) { return safeGetLazy(function () { return getInst(name) || UNDEF_VALUE; }, UNDEF_VALUE); };
442
+ var getGlobal = function (useCached) {
443
+ (!_cachedGlobal || useCached === false || (_globalLazyTestHooks && _globalLazyTestHooks.lzy && !_cachedGlobal.b)) && (_cachedGlobal = safeGetLazy(_getGlobalValue, NULL_VALUE));
427
444
  return _cachedGlobal.v;
428
- }
429
- function getInst(name, useCached) {
430
- var gbl = getGlobal(useCached);
445
+ };
446
+ var getInst = function (name, useCached) {
447
+ var gbl = (!_cachedGlobal || useCached === false) ? getGlobal(useCached) : _cachedGlobal.v;
431
448
  if (gbl && gbl[name]) {
432
449
  return gbl[name];
433
450
  }
434
451
  if (name === WINDOW && _cachedWindow) {
435
452
  return _cachedWindow.v;
436
453
  }
437
- return null;
438
- }
439
- function hasDocument() {
440
- return !!getDocument();
441
- }
442
- function getDocument() {
443
- (!_cachedDocument || (_globalLazyTestHooks.lzy && !_cachedDocument.b)) && (_cachedDocument = lazySafeGetInst("document"));
454
+ return NULL_VALUE;
455
+ };
456
+ var hasDocument = function () { return !!getDocument(); };
457
+ var getDocument = function () {
458
+ (!_cachedDocument || (_globalLazyTestHooks && _globalLazyTestHooks.lzy && !_cachedDocument.b)) && (_cachedDocument = lazySafeGetInst("document"));
444
459
  return _cachedDocument.v;
445
- }
446
- function hasWindow() {
447
- return !!getWindow();
448
- }
449
- function getWindow() {
450
- (!_cachedWindow || (_globalLazyTestHooks.lzy && !_cachedWindow.b)) && (_cachedWindow = lazySafeGetInst(WINDOW));
460
+ };
461
+ var hasWindow = function () { return !!getWindow(); };
462
+ var getWindow = function () {
463
+ (!_cachedWindow || (_globalLazyTestHooks && _globalLazyTestHooks.lzy && !_cachedWindow.b)) && (_cachedWindow = lazySafeGetInst(WINDOW));
451
464
  return _cachedWindow.v;
452
- }
453
- function hasNavigator() {
454
- return !!getNavigator();
455
- }
456
- function getNavigator() {
457
- (!_cachedNavigator || (_globalLazyTestHooks.lzy && !_cachedNavigator.b)) && (_cachedNavigator = lazySafeGetInst("navigator"));
465
+ };
466
+ var hasNavigator = function () { return !!getNavigator(); };
467
+ var getNavigator = function () {
468
+ (!_cachedNavigator || (_globalLazyTestHooks && _globalLazyTestHooks.lzy && !_cachedNavigator.b)) && (_cachedNavigator = lazySafeGetInst("navigator"));
458
469
  return _cachedNavigator.v;
459
- }
460
- function hasHistory() {
461
- return !!getHistory();
462
- }
463
- function getHistory() {
464
- (!_cachedHistory || (_globalLazyTestHooks.lzy && !_cachedHistory.b)) && (_cachedHistory = lazySafeGetInst("history"));
470
+ };
471
+ var hasHistory = function () { return !!getHistory(); };
472
+ var getHistory = function () {
473
+ (!_cachedHistory || (_globalLazyTestHooks && _globalLazyTestHooks.lzy && !_cachedHistory.b)) && (_cachedHistory = lazySafeGetInst("history"));
465
474
  return _cachedHistory.v;
466
- }
467
- function isNode() {
475
+ };
476
+ var isNode = function () {
468
477
  !_isNode && (_isNode = safeGetLazy(function () { return !!(process && (process.versions || {}).node); }, false));
469
478
  return _isNode.v;
470
- }
479
+ };
471
480
 
472
481
  var _symbol;
473
482
  var _symbolFor;
@@ -495,7 +504,7 @@
495
504
  }
496
505
  function newSymbol(description, noPoly) {
497
506
  (!_symbol || (_globalLazyTestHooks.lzy && !_symbol.b)) && getSymbol();
498
- return _symbol.v ? _symbol.v(description) : (!noPoly ? polyNewSymbol(description) : null);
507
+ return _symbol.v ? _symbol.v(description) : (!noPoly ? polyNewSymbol(description) : NULL_VALUE);
499
508
  }
500
509
  function symbolFor(key) {
501
510
  (!_symbolFor || (_globalLazyTestHooks.lzy && !_symbol.b)) && getSymbol();
@@ -509,36 +518,54 @@
509
518
  return !isStrictNullOrUndefined(value) && isFunction(value[getKnownSymbol(3 )]);
510
519
  }
511
520
 
521
+ var _iterSymbol;
512
522
  function iterForOf(iter, callbackfn, thisArg) {
513
523
  if (iter) {
514
524
  if (!isIterator(iter)) {
515
- var itSymbol = getKnownSymbol(3 );
516
- iter = iter[itSymbol] ? iter[itSymbol]() : null;
525
+ !_iterSymbol && (_iterSymbol = getLazy(function () { return getKnownSymbol(3 ); }));
526
+ iter = iter[_iterSymbol.v] ? iter[_iterSymbol.v]() : null;
517
527
  }
518
528
  if (isIterator(iter)) {
529
+ var err = void 0;
530
+ var iterResult = void 0;
519
531
  try {
520
532
  var count = 0;
521
- var value = iter.next();
522
- while (!value[DONE]) {
523
- if (callbackfn.call(thisArg || iter, value[VALUE], count, iter) === -1) {
533
+ while (!(iterResult = iter.next())[DONE]) {
534
+ if (callbackfn.call(thisArg || iter, iterResult[VALUE], count, iter) === -1) {
524
535
  break;
525
536
  }
526
537
  count++;
527
- value = iter.next();
528
538
  }
529
- iter.return && iter.return(value);
530
539
  }
531
- catch (e) {
532
- iter.throw && iter.throw(e);
540
+ catch (failed) {
541
+ err = { e: failed };
542
+ if (iter.throw) {
543
+ iterResult = null;
544
+ iter.throw(err);
545
+ }
546
+ }
547
+ finally {
548
+ try {
549
+ if (iterResult && !iterResult[DONE]) {
550
+ iter.return && iter.return(iterResult);
551
+ }
552
+ }
553
+ finally {
554
+ if (err) {
555
+ throw err.e;
556
+ }
557
+ }
533
558
  }
534
559
  }
535
560
  }
536
561
  }
537
562
 
563
+ var fnApply = _unwrapInstFunction("apply");
564
+
538
565
  function arrAppend(target, elms) {
539
566
  if (!isUndefined(elms) && target) {
540
567
  if (isArray(elms)) {
541
- target.push.apply(target, elms);
568
+ fnApply(target.push, target, elms);
542
569
  }
543
570
  else if (isIterator(elms) || isIterable(elms)) {
544
571
  iterForOf(elms, function (elm) {
@@ -569,55 +596,87 @@
569
596
 
570
597
  var arrMap = _unwrapFunction("map", ArrProto);
571
598
 
599
+ var arrSlice = _unwrapFunction(SLICE, ArrProto);
600
+
601
+ var fnCall = _unwrapInstFunction("call");
602
+
572
603
  var arrReduce = _unwrapFunction("reduce", ArrProto);
573
604
 
574
- var arrSlice = _unwrapFunction(SLICE, ArrProto);
605
+ var _objCreate = ObjClass$1["create"];
606
+ var objCreate = _objCreate || polyObjCreate;
607
+ function polyObjCreate(obj) {
608
+ if (!obj) {
609
+ return {};
610
+ }
611
+ var type = typeof obj;
612
+ if (type !== OBJECT && type !== FUNCTION) {
613
+ throw new TypeError("Prototype must be an Object or function: " + dumpObj(obj));
614
+ }
615
+ function tempFunc() { }
616
+ tempFunc[PROTOTYPE] = obj;
617
+ return new tempFunc();
618
+ }
575
619
 
620
+ var _isProtoArray;
576
621
  function objSetPrototypeOf(obj, proto) {
577
622
  var fn = ObjClass$1["setPrototypeOf"] ||
578
- ({ __proto__: [] } instanceof Array && function (d, b) {
579
- d.__proto__ = b;
580
- }) ||
581
623
  function (d, b) {
582
- objForEachKey(b, function (key, value) { return d[key] = value; });
624
+ !_isProtoArray && (_isProtoArray = getLazy(function () {
625
+ var _a;
626
+ return ((_a = {}, _a[__PROTO__] = [], _a) instanceof Array);
627
+ }));
628
+ _isProtoArray.v ? d[__PROTO__] = b : objForEachKey(b, function (key, value) { return d[key] = value; });
583
629
  };
584
630
  return fn(obj, proto);
585
631
  }
586
632
 
587
- function _createCustomError(name, d, baseClass) {
588
- objSetPrototypeOf(d, baseClass);
633
+ var _createCustomError = function (name, d, b) {
634
+ _safeDefineName(d, name);
635
+ d = objSetPrototypeOf(d, b);
589
636
  function __() {
590
637
  this.constructor = d;
591
- this[NAME] = name;
638
+ _safeDefineName(this, name);
592
639
  }
593
- __[PROTOTYPE] = baseClass[PROTOTYPE];
594
- d[PROTOTYPE] = new __();
640
+ d[PROTOTYPE] = b === NULL_VALUE ? objCreate(b) : (__[PROTOTYPE] = b[PROTOTYPE], new __());
595
641
  return d;
596
- }
642
+ };
597
643
  var _safeSetName = function (baseClass, name) {
598
644
  try {
599
- baseClass[PROTOTYPE][NAME] = name;
645
+ name && (baseClass[NAME] = name);
600
646
  }
601
647
  catch (e) {
602
648
  }
603
649
  };
604
- function createCustomError(name, constructCb) {
605
- var baseClass = Error;
606
- var orgName = baseClass[PROTOTYPE][NAME];
607
- var customError = _createCustomError(name, function () {
650
+ var _safeDefineName = function (target, name) {
651
+ try {
652
+ objDefine(target, NAME, { v: name, c: true, e: false });
653
+ }
654
+ catch (e) {
655
+ }
656
+ };
657
+ function createCustomError(name, constructCb, errorBase) {
658
+ var theBaseClass = errorBase || Error;
659
+ var orgName = theBaseClass[PROTOTYPE][NAME];
660
+ var captureFn = Error.captureStackTrace;
661
+ return _createCustomError(name, function () {
608
662
  var _this = this;
609
663
  try {
610
- _safeSetName(baseClass, name);
611
- _this = baseClass.apply(_this, arguments) || _this;
612
- _this[NAME] = name;
613
- constructCb && constructCb(_this, arguments);
664
+ _safeSetName(theBaseClass, name);
665
+ var _self = fnApply(theBaseClass, _this, arrSlice(arguments)) || _this;
666
+ if (_self !== _this) {
667
+ var orgProto = objGetPrototypeOf(_this);
668
+ if (orgProto !== objGetPrototypeOf(_self)) {
669
+ objSetPrototypeOf(_self, orgProto);
670
+ }
671
+ }
672
+ captureFn && captureFn(_self, _this[CONSTRUCTOR]);
673
+ constructCb && constructCb(_self, arguments);
674
+ return _self;
614
675
  }
615
676
  finally {
616
- _safeSetName(baseClass, orgName);
677
+ _safeSetName(theBaseClass, orgName);
617
678
  }
618
- return _this;
619
- }, baseClass);
620
- return customError;
679
+ }, theBaseClass);
621
680
  }
622
681
 
623
682
  function utcNow() {
@@ -640,7 +699,7 @@
640
699
  }
641
700
  var polyStrTrim = _createTrimFn(/^\s+|(?=\s)\s+$/g);
642
701
 
643
- var strTrim = _unwrapFunction("trim", StrProto, polyStrTrim);
702
+ var strTrim = _unwrapFunctionWithPoly("trim", StrProto, polyStrTrim);
644
703
 
645
704
  var _fnToString;
646
705
  var _objCtrFnString;
@@ -656,7 +715,7 @@
656
715
  if (value !== _gblWindow) {
657
716
  if (!_objCtrFnString) {
658
717
  _fnToString = Function[PROTOTYPE].toString;
659
- _objCtrFnString = _fnToString.call(ObjClass$1);
718
+ _objCtrFnString = fnCall(_fnToString, ObjClass$1);
660
719
  }
661
720
  try {
662
721
  var proto = objGetPrototypeOf(value);
@@ -674,11 +733,10 @@
674
733
  return result;
675
734
  }
676
735
 
677
- function _defaultDeepCopyHandler(details) {
678
- var target = details.result = {};
679
- details.copyTo(target, details.value);
736
+ var _defaultDeepCopyHandler = function (details) {
737
+ details.value && plainObjDeepCopyHandler(details);
680
738
  return true;
681
- }
739
+ };
682
740
  var defaultDeepCopyHandlers = [
683
741
  arrayDeepCopyHandler,
684
742
  plainObjDeepCopyHandler,
@@ -708,9 +766,19 @@
708
766
  src: ctx.src,
709
767
  path: newPath
710
768
  };
769
+ var theType = typeof value;
770
+ var isPlain = false;
771
+ var isPrim = false;
772
+ if (value && theType === OBJECT) {
773
+ isPlain = isPlainObject(value);
774
+ }
775
+ else {
776
+ isPrim = value === NULL_VALUE || isPrimitiveType(theType);
777
+ }
711
778
  var details = {
712
- type: typeof value,
713
- isPrim: isPrimitive(value),
779
+ type: theType,
780
+ isPrim: isPrim,
781
+ isPlain: isPlain,
714
782
  value: value,
715
783
  result: value,
716
784
  path: newPath,
@@ -734,12 +802,12 @@
734
802
  });
735
803
  var idx = 0;
736
804
  var handler = userHandler;
737
- while (!(handler || (idx < defaultDeepCopyHandlers.length ? defaultDeepCopyHandlers[idx++] : _defaultDeepCopyHandler)).call(ctx, details)) {
738
- handler = null;
805
+ while (!fnCall(handler || (idx < defaultDeepCopyHandlers.length ? defaultDeepCopyHandlers[idx++] : _defaultDeepCopyHandler), ctx, details)) {
806
+ handler = NULL_VALUE;
739
807
  }
740
808
  });
741
809
  }
742
- if (userHandler && userHandler.call(ctx, details)) {
810
+ if (userHandler && fnCall(userHandler, ctx, details)) {
743
811
  return details.result;
744
812
  }
745
813
  return value;
@@ -793,7 +861,7 @@
793
861
  }
794
862
  function plainObjDeepCopyHandler(details) {
795
863
  var value = details.value;
796
- if (isPlainObject(value)) {
864
+ if (value && details.isPlain) {
797
865
  var target = details.result = {};
798
866
  details.copyTo(target, value);
799
867
  return true;
@@ -815,7 +883,7 @@
815
883
 
816
884
  var _perf;
817
885
  function getPerformance() {
818
- (!_perf || (_globalLazyTestHooks.lzy && !_perf.b)) && (_perf = lazySafeGetInst("performance"));
886
+ (!_perf || (!_perf.b && _globalLazyTestHooks && _globalLazyTestHooks.lzy)) && (_perf = lazySafeGetInst("performance"));
819
887
  return _perf.v;
820
888
  }
821
889
  function perfNow() {
@@ -826,22 +894,7 @@
826
894
  return utcNow();
827
895
  }
828
896
 
829
- var _objCreate = ObjClass$1["create"];
830
- var objCreate = _objCreate || polyObjCreate;
831
- function polyObjCreate(obj) {
832
- if (!obj) {
833
- return {};
834
- }
835
- var type = typeof obj;
836
- if (type !== OBJECT && type !== FUNCTION) {
837
- throw new TypeError("Prototype must be an Object or function: " + dumpObj(obj));
838
- }
839
- function tempFunc() { }
840
- tempFunc[PROTOTYPE] = obj;
841
- return new tempFunc();
842
- }
843
-
844
- var strEndsWith = _unwrapFunction("endsWith", StrProto, polyStrEndsWith);
897
+ var strEndsWith = _unwrapFunctionWithPoly("endsWith", StrProto, polyStrEndsWith);
845
898
  function polyStrEndsWith(value, searchString, length) {
846
899
  if (!isString(value)) {
847
900
  throwTypeError("'" + dumpObj(value) + "' is not a string");
@@ -862,7 +915,7 @@
862
915
  function _createTimerHandler(startTimer, refreshFn, cancelFn) {
863
916
  var _a;
864
917
  var ref = true;
865
- var timerId = startTimer ? refreshFn(null) : null;
918
+ var timerId = startTimer ? refreshFn(NULL_VALUE) : NULL_VALUE;
866
919
  var theTimerHandler;
867
920
  var _unref = function () {
868
921
  ref = false;
@@ -889,7 +942,7 @@
889
942
  };
890
943
  var _cancel = function () {
891
944
  timerId && cancelFn(timerId);
892
- timerId = null;
945
+ timerId = NULL_VALUE;
893
946
  };
894
947
  var _setEnabled = function (value) {
895
948
  !value && timerId && _cancel();
@@ -911,7 +964,7 @@
911
964
  return {
912
965
  h: theTimerHandler,
913
966
  dn: function () {
914
- timerId = null;
967
+ timerId = NULL_VALUE;
915
968
  }
916
969
  };
917
970
  }
@@ -924,7 +977,7 @@
924
977
  var timerFn = theArgs[0];
925
978
  theArgs[0] = function () {
926
979
  handler.dn();
927
- timerFn.apply(self, arguments);
980
+ fnApply(timerFn, self, arrSlice(arguments));
928
981
  };
929
982
  var handler = _createTimerHandler(startTimer, function (timerId) {
930
983
  if (timerId) {
@@ -932,11 +985,11 @@
932
985
  timerId.refresh();
933
986
  return timerId;
934
987
  }
935
- clearFn.call(self, timerId);
988
+ fnApply(clearFn, self, [timerId]);
936
989
  }
937
- return setFn.apply(self, theArgs);
990
+ return fnApply(setFn, self, theArgs);
938
991
  }, function (timerId) {
939
- clearFn.call(self, timerId);
992
+ fnApply(clearFn, self, [timerId]);
940
993
  });
941
994
  return handler.h;
942
995
  }
@@ -1371,13 +1424,6 @@
1371
1424
  return result;
1372
1425
  }
1373
1426
 
1374
- var _theLogger = null;
1375
- function _debugLog(id, message) {
1376
- if (_theLogger) {
1377
- _theLogger(id, message);
1378
- }
1379
- }
1380
-
1381
1427
  var STRING_STATES = [
1382
1428
  "pending", "resolving", "resolved", "rejected"
1383
1429
  ];
@@ -1440,14 +1486,11 @@
1440
1486
  _handled = true;
1441
1487
  _unHandledRejectionHandler && _unHandledRejectionHandler.cancel();
1442
1488
  _unHandledRejectionHandler = null;
1443
- _debugLog(_toString(), "then(" + dumpFnObj(onResolved) + ", " + dumpFnObj(onResolved) + ")");
1444
1489
  var thenPromise = newPromise(function (resolve, reject) {
1445
1490
  _queue.push(function () {
1446
1491
  try {
1447
- _debugLog(_toString(), "Handling settled value " + dumpFnObj(_settledValue));
1448
1492
  var handler = _state === 2 ? onResolved : onRejected;
1449
1493
  var value = isUndefined(handler) ? _settledValue : (isFunction(handler) ? handler(_settledValue) : handler);
1450
- _debugLog(_toString(), "Handling Result " + dumpFnObj(value));
1451
1494
  if (isPromiseLike(value)) {
1452
1495
  value.then(resolve, reject);
1453
1496
  }
@@ -1465,12 +1508,10 @@
1465
1508
  reject(e);
1466
1509
  }
1467
1510
  });
1468
- _debugLog(_toString(), "Added to Queue " + _queue.length);
1469
1511
  if (_hasResolved) {
1470
1512
  _processQueue();
1471
1513
  }
1472
1514
  }, additionalArgs);
1473
- _debugLog(_toString(), "Created -> " + thenPromise.toString());
1474
1515
  return thenPromise;
1475
1516
  }
1476
1517
  finally {
@@ -1501,49 +1542,37 @@
1501
1542
  if (_queue.length > 0) {
1502
1543
  var pending = _queue.slice();
1503
1544
  _queue = [];
1504
- _debugLog(_toString(), "Processing queue " + pending.length);
1505
1545
  _handled = true;
1506
1546
  processor(pending);
1507
- _debugLog(_toString(), "Processing done");
1508
1547
  _unHandledRejectionHandler && _unHandledRejectionHandler.cancel();
1509
1548
  _unHandledRejectionHandler = null;
1510
1549
  }
1511
- else {
1512
- _debugLog(_toString(), "Empty Processing queue ");
1513
- }
1514
1550
  };
1515
1551
  var _createSettleIfFn = function (newState, allowState) {
1516
1552
  return function (theValue) {
1517
1553
  if (_state === allowState) {
1518
1554
  if (newState === 2 && isPromiseLike(theValue)) {
1519
1555
  _state = 1 ;
1520
- _debugLog(_toString(), "Resolving");
1521
1556
  theValue.then(_createSettleIfFn(2 , 1 ), _createSettleIfFn(3 , 1 ));
1522
1557
  return;
1523
1558
  }
1524
1559
  _state = newState;
1525
1560
  _hasResolved = true;
1526
1561
  _settledValue = theValue;
1527
- _debugLog(_toString(), _strState());
1528
1562
  _processQueue();
1529
1563
  if (!_handled && newState === 3 && !_unHandledRejectionHandler) {
1530
1564
  _unHandledRejectionHandler = scheduleTimeout(_notifyUnhandledRejection, _unhandledRejectionTimeout);
1531
1565
  }
1532
1566
  }
1533
- else {
1534
- _debugLog(_toString(), "Already " + _strState());
1535
- }
1536
1567
  };
1537
1568
  };
1538
1569
  var _notifyUnhandledRejection = function () {
1539
1570
  if (!_handled) {
1540
1571
  if (isNode()) {
1541
- _debugLog(_toString(), "Emitting " + NODE_UNHANDLED_REJECTION);
1542
1572
  process.emit(NODE_UNHANDLED_REJECTION, _settledValue, _thePromise);
1543
1573
  }
1544
1574
  else {
1545
1575
  var gbl = getWindow() || getGlobal();
1546
- _debugLog(_toString(), "Emitting " + UNHANDLED_REJECTION);
1547
1576
  emitEvent(gbl, UNHANDLED_REJECTION, function (theEvt) {
1548
1577
  objDefine(theEvt, "promise", { g: function () { return _thePromise; } });
1549
1578
  theEvt.reason = _settledValue;
@@ -1573,14 +1602,12 @@
1573
1602
  }
1574
1603
  var _rejectFn = _createSettleIfFn(3 , 0 );
1575
1604
  try {
1576
- _debugLog(_toString(), "Executing");
1577
1605
  executor.call(_thePromise, _createSettleIfFn(2 , 0 ), _rejectFn);
1578
1606
  }
1579
1607
  catch (e) {
1580
1608
  _rejectFn(e);
1581
1609
  }
1582
1610
  })();
1583
- _debugLog(_toString(), "Returning");
1584
1611
  return _thePromise;
1585
1612
  }
1586
1613
  function _createAllPromise(newPromise) {
@@ -2006,8 +2033,8 @@
2006
2033
  var ua = (userAgentStr || STR_EMPTY)[_DYN_TO_LOWER_CASE ]();
2007
2034
  return (strIndexOf(ua, "safari") >= 0);
2008
2035
  }
2009
- function isBeaconsSupported() {
2010
- if (_beaconsSupported === null) {
2036
+ function isBeaconsSupported(useCached) {
2037
+ if (_beaconsSupported === null || useCached === false) {
2011
2038
  _beaconsSupported = hasNavigator() && Boolean(getNavigator().sendBeacon);
2012
2039
  }
2013
2040
  return _beaconsSupported;
@@ -2073,6 +2100,40 @@
2073
2100
  }
2074
2101
  return value;
2075
2102
  }
2103
+ function dispatchEvent(target, evnt) {
2104
+ if (target && target.dispatchEvent && evnt) {
2105
+ target.dispatchEvent(evnt);
2106
+ return true;
2107
+ }
2108
+ return false;
2109
+ }
2110
+ function createCustomDomEvent(eventName, details) {
2111
+ var event = null;
2112
+ var detail = { detail: details || null };
2113
+ if (isFunction(CustomEvent)) {
2114
+ event = new CustomEvent(eventName, detail);
2115
+ }
2116
+ else {
2117
+ var doc = getDocument();
2118
+ if (doc && doc.createEvent) {
2119
+ event = doc.createEvent("CustomEvent");
2120
+ event.initCustomEvent(eventName, true, true, detail);
2121
+ }
2122
+ }
2123
+ return event;
2124
+ }
2125
+ function sendCustomEvent(evtName, cfg, customDetails) {
2126
+ var global = getGlobal();
2127
+ if (global && global.CustomEvent) {
2128
+ try {
2129
+ var details = { cfg: cfg || null, customDetails: customDetails || null };
2130
+ return dispatchEvent(global, createCustomDomEvent(evtName, details));
2131
+ }
2132
+ catch (e) {
2133
+ }
2134
+ }
2135
+ return false;
2136
+ }
2076
2137
 
2077
2138
  var UInt32Mask = 0x100000000;
2078
2139
  var MaxUInt32 = 0xffffffff;
@@ -2158,7 +2219,7 @@
2158
2219
  return result;
2159
2220
  }
2160
2221
 
2161
- var version = "3.0.3-nightly3.2305-14";
2222
+ var version = '3.0.3-nightly3.2307-24';
2162
2223
  var instanceName = "." + newId(6);
2163
2224
  var _dataUid = 0;
2164
2225
  function _canAcceptData(target) {
@@ -5912,6 +5973,7 @@
5912
5973
  exports.cfgDfValidate = cfgDfValidate;
5913
5974
  exports.createClassFromInterface = createClassFromInterface;
5914
5975
  exports.createCookieMgr = createCookieMgr;
5976
+ exports.createCustomDomEvent = createCustomDomEvent;
5915
5977
  exports.createDynamicConfig = createDynamicConfig;
5916
5978
  exports.createEnumStyle = createEnumStyle;
5917
5979
  exports.createProcessTelemetryContext = createProcessTelemetryContext;
@@ -5923,6 +5985,7 @@
5923
5985
  exports.dateNow = utcNow;
5924
5986
  exports.deepFreeze = objDeepFreeze;
5925
5987
  exports.detachEvent = detachEvent;
5988
+ exports.dispatchEvent = dispatchEvent;
5926
5989
  exports.doPerf = doPerf;
5927
5990
  exports.doUnloadAll = doUnloadAll;
5928
5991
  exports.dumpObj = dumpObj;
@@ -6016,6 +6079,7 @@
6016
6079
  exports.runTargetUnload = runTargetUnload;
6017
6080
  exports.safeGetCookieMgr = safeGetCookieMgr;
6018
6081
  exports.safeGetLogger = safeGetLogger;
6082
+ exports.sendCustomEvent = sendCustomEvent;
6019
6083
  exports.setEnableEnvMocks = setEnableEnvMocks;
6020
6084
  exports.setGblPerfMgr = setGblPerfMgr;
6021
6085
  exports.setValue = setValue;