@microsoft/1ds-core-js 4.0.0 → 4.0.1

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 (43) hide show
  1. package/README.md +1 -1
  2. package/bundle/es5/{ms.core-4.0.0.gbl.js → ms.core-4.0.1.gbl.js} +239 -139
  3. package/bundle/es5/ms.core-4.0.1.gbl.js.map +1 -0
  4. package/bundle/es5/ms.core-4.0.1.gbl.min.js +7 -0
  5. package/bundle/es5/ms.core-4.0.1.gbl.min.js.map +1 -0
  6. package/bundle/es5/ms.core-4.0.1.integrity.json +46 -0
  7. package/bundle/es5/{ms.core-4.0.0.js → ms.core-4.0.1.js} +239 -139
  8. package/bundle/es5/ms.core-4.0.1.js.map +1 -0
  9. package/bundle/es5/ms.core-4.0.1.min.js +7 -0
  10. package/bundle/es5/ms.core-4.0.1.min.js.map +1 -0
  11. package/bundle/es5/ms.core.gbl.js +238 -138
  12. package/bundle/es5/ms.core.gbl.js.map +1 -1
  13. package/bundle/es5/ms.core.gbl.min.js +2 -2
  14. package/bundle/es5/ms.core.gbl.min.js.map +1 -1
  15. package/bundle/es5/ms.core.integrity.json +17 -17
  16. package/bundle/es5/ms.core.js +238 -138
  17. package/bundle/es5/ms.core.js.map +1 -1
  18. package/bundle/es5/ms.core.min.js +2 -2
  19. package/bundle/es5/ms.core.min.js.map +1 -1
  20. package/dist/es5/ms.core.js +236 -136
  21. package/dist/es5/ms.core.js.map +1 -1
  22. package/dist/es5/ms.core.min.js +2 -2
  23. package/dist/es5/ms.core.min.js.map +1 -1
  24. package/dist-es5/AppInsightsCore.js +1 -1
  25. package/dist-es5/BaseCore.js +1 -1
  26. package/dist-es5/DataModels.js +1 -1
  27. package/dist-es5/Enums.js +1 -1
  28. package/dist-es5/Index.js +1 -1
  29. package/dist-es5/InternalConstants.js +1 -1
  30. package/dist-es5/Utils.js +2 -2
  31. package/dist-es5/Utils.js.map +1 -1
  32. package/dist-es5/ValueSanitizer.js +4 -1
  33. package/dist-es5/ValueSanitizer.js.map +1 -1
  34. package/package.json +3 -3
  35. package/types/1ds-core-js.d.ts +8 -4
  36. package/types/1ds-core-js.namespaced.d.ts +8 -4
  37. package/bundle/es5/ms.core-4.0.0.gbl.js.map +0 -1
  38. package/bundle/es5/ms.core-4.0.0.gbl.min.js +0 -7
  39. package/bundle/es5/ms.core-4.0.0.gbl.min.js.map +0 -1
  40. package/bundle/es5/ms.core-4.0.0.integrity.json +0 -46
  41. package/bundle/es5/ms.core-4.0.0.js.map +0 -1
  42. package/bundle/es5/ms.core-4.0.0.min.js +0 -7
  43. package/bundle/es5/ms.core-4.0.0.min.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * 1DS JS SDK Core, 4.0.0
2
+ * 1DS JS SDK Core, 4.0.1
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  * (Microsoft Internal Only)
5
5
  */
@@ -8,8 +8,8 @@
8
8
  typeof exports === "object" && typeof module !== undef ? factory(exports) :
9
9
  typeof define === "function" && define.amd ? define(["exports"], factory) :
10
10
  (function(global){
11
- var nsKey, key, nm, theExports = {}, modName = "es5_ms_core_4_0_0", msMod="__ms$mod__";
12
- var mods={}, modDetail=mods[modName]={}, ver="4.0.0";
11
+ var nsKey, key, nm, theExports = {}, modName = "es5_ms_core_4_0_1", msMod="__ms$mod__";
12
+ var mods={}, modDetail=mods[modName]={}, ver="4.0.1";
13
13
  // Versioned namespace "oneDS4"
14
14
  var exportNs=global, nsKey="oneDS4", exportNs=exportNs[nsKey]=(exportNs[nsKey]||{});
15
15
  // Global namespace "oneDS"
@@ -33,12 +33,14 @@
33
33
  var MinChannelPriorty = 100;
34
34
 
35
35
  var UNDEF_VALUE = undefined;
36
+ var NULL_VALUE = null;
36
37
  var EMPTY = "";
37
38
  var BOOLEAN = "boolean";
38
39
  var FUNCTION = "function";
39
40
  var NUMBER = "number";
40
41
  var OBJECT = "object";
41
42
  var PROTOTYPE = "prototype";
43
+ var __PROTO__ = "__proto__";
42
44
  var STRING = "string";
43
45
  var UNDEFINED = "undefined";
44
46
  var CONSTRUCTOR = "constructor";
@@ -90,21 +92,17 @@ function isUndefined(value) {
90
92
  return typeof value === UNDEFINED || value === UNDEFINED;
91
93
  }
92
94
  function isNullOrUndefined(value) {
93
- return value === null || isUndefined(value);
95
+ return value === NULL_VALUE || isUndefined(value);
94
96
  }
95
97
  function isStrictNullOrUndefined(value) {
96
- return value === null || !isDefined(value);
98
+ return value === NULL_VALUE || !isDefined(value);
97
99
  }
98
100
  function isDefined(arg) {
99
101
  return !!arg || arg !== UNDEF_VALUE;
100
102
  }
101
- function isPrimitive(value) {
102
- var theType = typeof value;
103
- if (value && theType === OBJECT) {
104
- return false;
105
- }
106
- return value === null || PRIMITIVE_TYPES.indexOf(theType) !== -1;
107
- }
103
+ var isPrimitiveType = function (theType) {
104
+ return theType !== OBJECT && PRIMITIVE_TYPES.indexOf(theType) !== -1;
105
+ };
108
106
  var isString = _createIs(STRING);
109
107
  var isFunction = _createIs(FUNCTION);
110
108
  function isObject(value) {
@@ -169,9 +167,10 @@ function throwTypeError(message) {
169
167
 
170
168
  var _objFreeze = ObjClass$1["freeze"];
171
169
  var _doNothing = function (value) { return value; };
170
+ var _getProto = function (value) { return value[__PROTO__] || NULL_VALUE; };
172
171
  var objAssign = ObjClass$1["assign"];
173
172
  function objKeys(value) {
174
- if (!isObject(value) || value === null) {
173
+ if (!isObject(value) || value === NULL_VALUE) {
175
174
  throwTypeError("objKeys called on non-object");
176
175
  }
177
176
  return ObjClass$1.keys(value);
@@ -188,7 +187,7 @@ function objDeepFreeze(value) {
188
187
  }
189
188
  var objFreeze = _objFreeze || _doNothing;
190
189
  var objSeal = ObjClass$1["seal"] || _doNothing;
191
- var objGetPrototypeOf = ObjClass$1["getPrototypeOf"] || _doNothing;
190
+ var objGetPrototypeOf = ObjClass$1["getPrototypeOf"] || _getProto;
192
191
 
193
192
  function createEnum(values) {
194
193
  return _createKeyValueMap(values, 1 , 0 , objDeepFreeze);
@@ -248,7 +247,7 @@ function dumpObj(object, format) {
248
247
  }
249
248
  else {
250
249
  try {
251
- propertyValueDump = JSON.stringify(object, null, format ? (isNumber(format) ? format : 4) : UNDEF_VALUE);
250
+ propertyValueDump = JSON.stringify(object, NULL_VALUE, format ? (isNumber(format) ? format : 4) : UNDEF_VALUE);
252
251
  }
253
252
  catch (e) {
254
253
  propertyValueDump = " - " + dumpObj(e, format);
@@ -392,7 +391,7 @@ function objDefine(target, key, propDesc) {
392
391
  var _globalLazyTestHooks;
393
392
  var _fetchLazyTestHooks = function () {
394
393
  _globalLazyTestHooks = _getGlobalConfig();
395
- _fetchLazyTestHooks = null;
394
+ _fetchLazyTestHooks = NULL_VALUE;
396
395
  };
397
396
  function getLazy(cb) {
398
397
  var lazyValue = {};
@@ -434,7 +433,7 @@ function lazySafeGetInst(name) {
434
433
  return safeGetLazy(function () { return getInst(name) || UNDEF_VALUE; }, UNDEF_VALUE);
435
434
  }
436
435
  function getGlobal(useCached) {
437
- (!_cachedGlobal || useCached === false || (_globalLazyTestHooks.lzy && !_cachedGlobal.b)) && (_cachedGlobal = safeGetLazy(_getGlobalValue, null));
436
+ (!_cachedGlobal || useCached === false || (_globalLazyTestHooks.lzy && !_cachedGlobal.b)) && (_cachedGlobal = safeGetLazy(_getGlobalValue, NULL_VALUE));
438
437
  return _cachedGlobal.v;
439
438
  }
440
439
  function getInst(name, useCached) {
@@ -445,7 +444,7 @@ function getInst(name, useCached) {
445
444
  if (name === WINDOW && _cachedWindow) {
446
445
  return _cachedWindow.v;
447
446
  }
448
- return null;
447
+ return NULL_VALUE;
449
448
  }
450
449
  function hasDocument() {
451
450
  return !!getDocument();
@@ -505,7 +504,7 @@ function getKnownSymbol(name, noPoly) {
505
504
  }
506
505
  function newSymbol(description, noPoly) {
507
506
  (!_symbol || (_globalLazyTestHooks.lzy && !_symbol.b)) && getSymbol();
508
- return _symbol.v ? _symbol.v(description) : (!noPoly ? polyNewSymbol(description) : null);
507
+ return _symbol.v ? _symbol.v(description) : (!noPoly ? polyNewSymbol(description) : NULL_VALUE);
509
508
  }
510
509
  function symbolFor(key) {
511
510
  (!_symbolFor || (_globalLazyTestHooks.lzy && !_symbol.b)) && getSymbol();
@@ -589,51 +588,81 @@ var arrReduce = _unwrapFunction("reduce", ArrProto);
589
588
 
590
589
  var arrSlice = _unwrapFunction(SLICE, ArrProto);
591
590
 
591
+ var _objCreate = ObjClass$1["create"];
592
+ var objCreate = _objCreate || polyObjCreate;
593
+ function polyObjCreate(obj) {
594
+ if (!obj) {
595
+ return {};
596
+ }
597
+ var type = typeof obj;
598
+ if (type !== OBJECT && type !== FUNCTION) {
599
+ throw new TypeError("Prototype must be an Object or function: " + dumpObj(obj));
600
+ }
601
+ function tempFunc() { }
602
+ tempFunc[PROTOTYPE] = obj;
603
+ return new tempFunc();
604
+ }
605
+
606
+ var _isProtoArray;
592
607
  function objSetPrototypeOf(obj, proto) {
593
608
  var fn = ObjClass$1["setPrototypeOf"] ||
594
- ({ __proto__: [] } instanceof Array && function (d, b) {
595
- d.__proto__ = b;
596
- }) ||
597
609
  function (d, b) {
598
- objForEachKey(b, function (key, value) { return d[key] = value; });
610
+ !_isProtoArray && (_isProtoArray = getLazy(function () {
611
+ var _a;
612
+ return ((_a = {}, _a[__PROTO__] = [], _a) instanceof Array);
613
+ }));
614
+ _isProtoArray.v ? d[__PROTO__] = b : objForEachKey(b, function (key, value) { return d[key] = value; });
599
615
  };
600
616
  return fn(obj, proto);
601
617
  }
602
618
 
603
- function _createCustomError(name, d, baseClass) {
604
- objSetPrototypeOf(d, baseClass);
619
+ var _createCustomError = function (name, d, b) {
620
+ _safeDefineName(d, name);
621
+ d = objSetPrototypeOf(d, b);
605
622
  function __() {
606
623
  this.constructor = d;
607
- this[NAME] = name;
624
+ _safeDefineName(this, name);
608
625
  }
609
- __[PROTOTYPE] = baseClass[PROTOTYPE];
610
- d[PROTOTYPE] = new __();
626
+ d[PROTOTYPE] = b === NULL_VALUE ? objCreate(b) : (__[PROTOTYPE] = b[PROTOTYPE], new __());
611
627
  return d;
612
- }
628
+ };
613
629
  var _safeSetName = function (baseClass, name) {
614
630
  try {
615
- baseClass[PROTOTYPE][NAME] = name;
631
+ name && (baseClass[NAME] = name);
632
+ }
633
+ catch (e) {
634
+ }
635
+ };
636
+ var _safeDefineName = function (target, name) {
637
+ try {
638
+ objDefine(target, NAME, { v: name, c: true, e: false });
616
639
  }
617
640
  catch (e) {
618
641
  }
619
642
  };
620
- function createCustomError(name, constructCb) {
621
- var baseClass = Error;
622
- var orgName = baseClass[PROTOTYPE][NAME];
623
- var customError = _createCustomError(name, function () {
643
+ function createCustomError(name, constructCb, errorBase) {
644
+ var theBaseClass = errorBase || Error;
645
+ var orgName = theBaseClass[PROTOTYPE][NAME];
646
+ var captureFn = Error.captureStackTrace;
647
+ return _createCustomError(name, function () {
624
648
  var _this = this;
625
649
  try {
626
- _safeSetName(baseClass, name);
627
- _this = baseClass.apply(_this, arguments) || _this;
628
- _this[NAME] = name;
629
- constructCb && constructCb(_this, arguments);
650
+ _safeSetName(theBaseClass, name);
651
+ var _self = theBaseClass.apply(_this, arguments) || _this;
652
+ if (_self !== _this) {
653
+ var orgProto = objGetPrototypeOf(_this);
654
+ if (orgProto !== objGetPrototypeOf(_self)) {
655
+ objSetPrototypeOf(_self, orgProto);
656
+ }
657
+ }
658
+ captureFn && captureFn(_self, _this[CONSTRUCTOR]);
659
+ constructCb && constructCb(_self, arguments);
660
+ return _self;
630
661
  }
631
662
  finally {
632
- _safeSetName(baseClass, orgName);
663
+ _safeSetName(theBaseClass, orgName);
633
664
  }
634
- return _this;
635
- }, baseClass);
636
- return customError;
665
+ }, theBaseClass);
637
666
  }
638
667
 
639
668
  function utcNow() {
@@ -690,11 +719,10 @@ function isPlainObject(value) {
690
719
  return result;
691
720
  }
692
721
 
693
- function _defaultDeepCopyHandler(details) {
694
- var target = details.result = {};
695
- details.copyTo(target, details.value);
722
+ var _defaultDeepCopyHandler = function (details) {
723
+ details.value && plainObjDeepCopyHandler(details);
696
724
  return true;
697
- }
725
+ };
698
726
  var defaultDeepCopyHandlers = [
699
727
  arrayDeepCopyHandler,
700
728
  plainObjDeepCopyHandler,
@@ -724,9 +752,19 @@ function _deepCopy(visitMap, value, ctx, key) {
724
752
  src: ctx.src,
725
753
  path: newPath
726
754
  };
755
+ var theType = typeof value;
756
+ var isPlain = false;
757
+ var isPrim = false;
758
+ if (value && theType === OBJECT) {
759
+ isPlain = isPlainObject(value);
760
+ }
761
+ else {
762
+ isPrim = value === NULL_VALUE || isPrimitiveType(theType);
763
+ }
727
764
  var details = {
728
- type: typeof value,
729
- isPrim: isPrimitive(value),
765
+ type: theType,
766
+ isPrim: isPrim,
767
+ isPlain: isPlain,
730
768
  value: value,
731
769
  result: value,
732
770
  path: newPath,
@@ -751,7 +789,7 @@ function _deepCopy(visitMap, value, ctx, key) {
751
789
  var idx = 0;
752
790
  var handler = userHandler;
753
791
  while (!(handler || (idx < defaultDeepCopyHandlers.length ? defaultDeepCopyHandlers[idx++] : _defaultDeepCopyHandler)).call(ctx, details)) {
754
- handler = null;
792
+ handler = NULL_VALUE;
755
793
  }
756
794
  });
757
795
  }
@@ -809,7 +847,7 @@ function functionDeepCopyHandler(details) {
809
847
  }
810
848
  function plainObjDeepCopyHandler(details) {
811
849
  var value = details.value;
812
- if (isPlainObject(value)) {
850
+ if (value && details.isPlain) {
813
851
  var target = details.result = {};
814
852
  details.copyTo(target, value);
815
853
  return true;
@@ -842,21 +880,6 @@ function perfNow() {
842
880
  return utcNow();
843
881
  }
844
882
 
845
- var _objCreate = ObjClass$1["create"];
846
- var objCreate = _objCreate || polyObjCreate;
847
- function polyObjCreate(obj) {
848
- if (!obj) {
849
- return {};
850
- }
851
- var type = typeof obj;
852
- if (type !== OBJECT && type !== FUNCTION) {
853
- throw new TypeError("Prototype must be an Object or function: " + dumpObj(obj));
854
- }
855
- function tempFunc() { }
856
- tempFunc[PROTOTYPE] = obj;
857
- return new tempFunc();
858
- }
859
-
860
883
  var strEndsWith = _unwrapFunction("endsWith", StrProto, polyStrEndsWith);
861
884
  function polyStrEndsWith(value, searchString, length) {
862
885
  if (!isString(value)) {
@@ -878,7 +901,7 @@ var ENABLED = "enabled";
878
901
  function _createTimerHandler(startTimer, refreshFn, cancelFn) {
879
902
  var _a;
880
903
  var ref = true;
881
- var timerId = startTimer ? refreshFn(null) : null;
904
+ var timerId = startTimer ? refreshFn(NULL_VALUE) : NULL_VALUE;
882
905
  var theTimerHandler;
883
906
  var _unref = function () {
884
907
  ref = false;
@@ -905,7 +928,7 @@ function _createTimerHandler(startTimer, refreshFn, cancelFn) {
905
928
  };
906
929
  var _cancel = function () {
907
930
  timerId && cancelFn(timerId);
908
- timerId = null;
931
+ timerId = NULL_VALUE;
909
932
  };
910
933
  var _setEnabled = function (value) {
911
934
  !value && timerId && _cancel();
@@ -927,7 +950,7 @@ function _createTimerHandler(startTimer, refreshFn, cancelFn) {
927
950
  return {
928
951
  h: theTimerHandler,
929
952
  dn: function () {
930
- timerId = null;
953
+ timerId = NULL_VALUE;
931
954
  }
932
955
  };
933
956
  }
@@ -975,9 +998,11 @@ var EventsDiscardedReason = createEnumStyle({
975
998
  });
976
999
 
977
1000
  var _DYN_TO_LOWER_CASE = "toLowerCase";
1001
+ var _DYN_BLK_VAL = "blkVal";
978
1002
  var _DYN_LENGTH = "length";
979
1003
  var _DYN_RD_ONLY = "rdOnly";
980
1004
  var _DYN_NOTIFY = "notify";
1005
+ var _DYN_WARN_TO_CONSOLE = "warnToConsole";
981
1006
  var _DYN_THROW_INTERNAL = "throwInternal";
982
1007
  var _DYN_SET_DF = "setDf";
983
1008
  var _DYN_WATCH = "watch";
@@ -985,6 +1010,7 @@ var _DYN_LOGGER = "logger";
985
1010
  var _DYN_APPLY = "apply";
986
1011
  var _DYN_PUSH = "push";
987
1012
  var _DYN_SPLICE = "splice";
1013
+ var _DYN_HDLR = "hdlr";
988
1014
  var _DYN_CANCEL = "cancel";
989
1015
  var _DYN_INITIALIZE = "initialize";
990
1016
  var _DYN_IDENTIFIER = "identifier";
@@ -1086,7 +1112,7 @@ function __spreadArrayFn(to, from) {
1086
1112
  return to;
1087
1113
  }
1088
1114
 
1089
- var _a$4;
1115
+ var _a$5;
1090
1116
  var Constructor = 'constructor';
1091
1117
  var Prototype = 'prototype';
1092
1118
  var strFunction = 'function';
@@ -1109,10 +1135,10 @@ var _objGetPrototypeOf = Obj["getPrototypeOf"];
1109
1135
  var _objGetOwnProps = Obj["getOwnPropertyNames"];
1110
1136
  var _gbl = getGlobal();
1111
1137
  var _gblInst = _gbl[DynProtoGlobalSettings] || (_gbl[DynProtoGlobalSettings] = {
1112
- o: (_a$4 = {},
1113
- _a$4[strSetInstFuncs] = true,
1114
- _a$4[strUseBaseInst] = true,
1115
- _a$4),
1138
+ o: (_a$5 = {},
1139
+ _a$5[strSetInstFuncs] = true,
1140
+ _a$5[strUseBaseInst] = true,
1141
+ _a$5),
1116
1142
  n: 1000
1117
1143
  });
1118
1144
  function _isObjectOrArrayPrototype(target) {
@@ -1700,8 +1726,6 @@ var STR_EVENTS_SENT = "eventsSent";
1700
1726
  var STR_EVENTS_DISCARDED = "eventsDiscarded";
1701
1727
  var STR_EVENTS_SEND_REQUEST = "eventsSendRequest";
1702
1728
  var STR_PERF_EVENT = "perfEvent";
1703
- var STR_ERROR_TO_CONSOLE = "errorToConsole";
1704
- var STR_WARN_TO_CONSOLE = "warnToConsole";
1705
1729
  var STR_GET_PERF_MGR = "getPerfMgr";
1706
1730
  var STR_DOMAIN = "domain";
1707
1731
  var STR_PATH = "path";
@@ -2095,7 +2119,7 @@ function newId(maxLength) {
2095
2119
  return result;
2096
2120
  }
2097
2121
 
2098
- var version = '3.0.1';
2122
+ var version = '3.0.2';
2099
2123
  var instanceName = "." + newId(6);
2100
2124
  var _dataUid = 0;
2101
2125
  function _canAcceptData(target) {
@@ -2223,10 +2247,12 @@ function _applyDefaultValue(dynamicHandler, theConfig, name, defaultValue) {
2223
2247
  var mergeDf;
2224
2248
  var reference;
2225
2249
  var readOnly;
2250
+ var blkDynamicValue;
2226
2251
  if (_isConfigDefaults(cfgDefaults)) {
2227
2252
  isValid = cfgDefaults.isVal;
2228
2253
  setFn = cfgDefaults.set;
2229
2254
  readOnly = cfgDefaults[_DYN_RD_ONLY ];
2255
+ blkDynamicValue = cfgDefaults[_DYN_BLK_VAL ];
2230
2256
  mergeDf = cfgDefaults.mrg;
2231
2257
  reference = cfgDefaults.ref;
2232
2258
  if (!reference && isUndefined(reference)) {
@@ -2237,6 +2263,9 @@ function _applyDefaultValue(dynamicHandler, theConfig, name, defaultValue) {
2237
2263
  else {
2238
2264
  defValue = defaultValue;
2239
2265
  }
2266
+ if (blkDynamicValue) {
2267
+ dynamicHandler[_DYN_BLK_VAL ](theConfig, name);
2268
+ }
2240
2269
  var theValue;
2241
2270
  var usingDefault = true;
2242
2271
  var cfgValue = theConfig[name];
@@ -2327,9 +2356,9 @@ function forceDynamicConversion(value) {
2327
2356
  }
2328
2357
  return value;
2329
2358
  }
2330
- function _canMakeDynamic(value) {
2359
+ function _canMakeDynamic(getFunc, state, value) {
2331
2360
  var result = false;
2332
- if (value) {
2361
+ if (value && !getFunc[state.blkVal]) {
2333
2362
  result = value[FORCE_DYNAMIC];
2334
2363
  if (!result && !value[BLOCK_DYNAMIC]) {
2335
2364
  result = isPlainObject(value) || isArray(value);
@@ -2348,7 +2377,10 @@ var arrayMethodsToPatch = [
2348
2377
  "unshift",
2349
2378
  "splice"
2350
2379
  ];
2351
- function _patchArray(state, target) {
2380
+ var _throwDynamicError = function (logger, name, desc, e) {
2381
+ logger && logger[_DYN_THROW_INTERNAL ](3 , 108 , "".concat(desc, " [").concat(name, "] failed - ") + dumpObj(e));
2382
+ };
2383
+ function _patchArray(state, target, name) {
2352
2384
  if (isArray(target)) {
2353
2385
  arrForEach(arrayMethodsToPatch, function (method) {
2354
2386
  var orgMethod = target[method];
@@ -2358,7 +2390,7 @@ function _patchArray(state, target) {
2358
2390
  args[_i] = arguments[_i];
2359
2391
  }
2360
2392
  var result = orgMethod[_DYN_APPLY ](this, args);
2361
- _makeDynamicObject(state, target);
2393
+ _makeDynamicObject(state, target, name, "Patching");
2362
2394
  return result;
2363
2395
  };
2364
2396
  });
@@ -2368,7 +2400,7 @@ function _getOwnPropGetter(target, name) {
2368
2400
  var propDesc = objGetOwnPropertyDescriptor(target, name);
2369
2401
  return propDesc && propDesc.get;
2370
2402
  }
2371
- function _makeDynamicProperty(state, theConfig, name, value) {
2403
+ function _createDynamicProperty(state, theConfig, name, value) {
2372
2404
  var detail = {
2373
2405
  n: name,
2374
2406
  h: [],
@@ -2391,9 +2423,9 @@ function _makeDynamicProperty(state, theConfig, name, value) {
2391
2423
  var isObjectOrArray = false;
2392
2424
  function _getProperty() {
2393
2425
  if (checkDynamic) {
2394
- isObjectOrArray = isObjectOrArray || _canMakeDynamic(value);
2426
+ isObjectOrArray = isObjectOrArray || _canMakeDynamic(_getProperty, state, value);
2395
2427
  if (value && !value[CFG_HANDLER_LINK] && isObjectOrArray) {
2396
- value = _makeDynamicObject(state, value);
2428
+ value = _makeDynamicObject(state, value, name, "Converting");
2397
2429
  }
2398
2430
  checkDynamic = false;
2399
2431
  }
@@ -2414,7 +2446,7 @@ function _makeDynamicProperty(state, theConfig, name, value) {
2414
2446
  throwInvalidAccess("[" + name + "] is read-only:" + dumpObj(theConfig));
2415
2447
  }
2416
2448
  if (checkDynamic) {
2417
- isObjectOrArray = isObjectOrArray || _canMakeDynamic(value);
2449
+ isObjectOrArray = isObjectOrArray || _canMakeDynamic(_getProperty, state, value);
2418
2450
  checkDynamic = false;
2419
2451
  }
2420
2452
  var isReferenced = isObjectOrArray && _getProperty[state.rf];
@@ -2423,10 +2455,16 @@ function _makeDynamicProperty(state, theConfig, name, value) {
2423
2455
  objForEachKey(value, function (key) {
2424
2456
  value[key] = newValue ? newValue[key] : UNDEFINED_VALUE;
2425
2457
  });
2426
- objForEachKey(newValue, function (key, theValue) {
2427
- _setDynamicProperty(state, value, key, theValue);
2428
- });
2429
- newValue = value;
2458
+ try {
2459
+ objForEachKey(newValue, function (key, theValue) {
2460
+ _setDynamicProperty(state, value, key, theValue);
2461
+ });
2462
+ newValue = value;
2463
+ }
2464
+ catch (e) {
2465
+ _throwDynamicError((state.hdlr || {})[_DYN_LOGGER ], name, "Assigning", e);
2466
+ isObjectOrArray = false;
2467
+ }
2430
2468
  }
2431
2469
  else if (value && value[CFG_HANDLER_LINK]) {
2432
2470
  objForEachKey(value, function (key) {
@@ -2439,9 +2477,9 @@ function _makeDynamicProperty(state, theConfig, name, value) {
2439
2477
  }
2440
2478
  }
2441
2479
  if (newValue !== value) {
2442
- var newIsObjectOrArray = newValue && _canMakeDynamic(newValue);
2480
+ var newIsObjectOrArray = newValue && _canMakeDynamic(_getProperty, state, newValue);
2443
2481
  if (!isReferenced && newIsObjectOrArray) {
2444
- _makeDynamicObject(state, newValue);
2482
+ newValue = _makeDynamicObject(state, newValue, name, "Converting");
2445
2483
  }
2446
2484
  value = newValue;
2447
2485
  isObjectOrArray = newIsObjectOrArray;
@@ -2451,39 +2489,71 @@ function _makeDynamicProperty(state, theConfig, name, value) {
2451
2489
  }
2452
2490
  objDefine(theConfig, detail.n, { g: _getProperty, s: _setProperty });
2453
2491
  }
2454
- function _setDynamicProperty(state, target, name, value, inPlace, rdOnly) {
2492
+ function _setDynamicProperty(state, target, name, value) {
2455
2493
  if (target) {
2456
2494
  var getter = _getOwnPropGetter(target, name);
2457
2495
  var isDynamic = getter && !!getter[state.prop];
2458
2496
  if (!isDynamic) {
2459
- _makeDynamicProperty(state, target, name, value);
2460
- if (inPlace || rdOnly) {
2461
- getter = _getOwnPropGetter(target, name);
2462
- }
2497
+ _createDynamicProperty(state, target, name, value);
2463
2498
  }
2464
2499
  else {
2465
2500
  target[name] = value;
2466
2501
  }
2502
+ }
2503
+ return target;
2504
+ }
2505
+ function _setDynamicPropertyState(state, target, name, flags) {
2506
+ if (target) {
2507
+ var getter = _getOwnPropGetter(target, name);
2508
+ var isDynamic = getter && !!getter[state.prop];
2509
+ var inPlace = flags && flags[0 ];
2510
+ var rdOnly = flags && flags[1 ];
2511
+ var blkProp = flags && flags[2 ];
2512
+ if (!isDynamic) {
2513
+ if (blkProp) {
2514
+ try {
2515
+ blockDynamicConversion(target);
2516
+ }
2517
+ catch (e) {
2518
+ _throwDynamicError((state.hdlr || {})[_DYN_LOGGER ], name, "Blocking", e);
2519
+ }
2520
+ }
2521
+ try {
2522
+ _setDynamicProperty(state, target, name, target[name]);
2523
+ getter = _getOwnPropGetter(target, name);
2524
+ }
2525
+ catch (e) {
2526
+ _throwDynamicError((state.hdlr || {})[_DYN_LOGGER ], name, "State", e);
2527
+ }
2528
+ }
2467
2529
  if (inPlace) {
2468
2530
  getter[state.rf] = inPlace;
2469
2531
  }
2470
2532
  if (rdOnly) {
2471
2533
  getter[state.ro] = rdOnly;
2472
2534
  }
2535
+ if (blkProp) {
2536
+ getter[state.blkVal] = true;
2537
+ }
2473
2538
  }
2474
2539
  return target;
2475
2540
  }
2476
- function _makeDynamicObject(state, target) {
2477
- objForEachKey(target, function (key, value) {
2478
- _setDynamicProperty(state, target, key, value);
2479
- });
2480
- if (!target[CFG_HANDLER_LINK]) {
2481
- objDefineProp(target, CFG_HANDLER_LINK, {
2482
- get: function () {
2483
- return state.hdlr;
2484
- }
2541
+ function _makeDynamicObject(state, target, name, desc) {
2542
+ try {
2543
+ objForEachKey(target, function (key, value) {
2544
+ _setDynamicProperty(state, target, key, value);
2485
2545
  });
2486
- _patchArray(state, target);
2546
+ if (!target[CFG_HANDLER_LINK]) {
2547
+ objDefineProp(target, CFG_HANDLER_LINK, {
2548
+ get: function () {
2549
+ return state[_DYN_HDLR ];
2550
+ }
2551
+ });
2552
+ _patchArray(state, target, name);
2553
+ }
2554
+ }
2555
+ catch (e) {
2556
+ _throwDynamicError((state.hdlr || {})[_DYN_LOGGER ], name, desc, e);
2487
2557
  }
2488
2558
  return target;
2489
2559
  }
@@ -2495,6 +2565,7 @@ function _createState(cfgHandler) {
2495
2565
  var dynamicPropertySymbol = newSymbol(symPrefix + "get" + cfgHandler.uid + symPostfix);
2496
2566
  var dynamicPropertyReadOnly = newSymbol(symPrefix + "ro" + cfgHandler.uid + symPostfix);
2497
2567
  var dynamicPropertyReferenced = newSymbol(symPrefix + "rf" + cfgHandler.uid + symPostfix);
2568
+ var dynamicPropertyBlockValue = newSymbol(symPrefix + "blkVal" + cfgHandler.uid + symPostfix);
2498
2569
  var dynamicPropertyDetail = newSymbol(symPrefix + "dtl" + cfgHandler.uid + symPostfix);
2499
2570
  var _waitingHandlers = null;
2500
2571
  var _watcherTimer = null;
@@ -2596,10 +2667,11 @@ function _createState(cfgHandler) {
2596
2667
  theState = (_a = {
2597
2668
  prop: dynamicPropertySymbol,
2598
2669
  ro: dynamicPropertyReadOnly,
2599
- rf: dynamicPropertyReferenced,
2600
- hdlr: cfgHandler,
2601
- add: _addWatcher
2670
+ rf: dynamicPropertyReferenced
2602
2671
  },
2672
+ _a[_DYN_BLK_VAL ] = dynamicPropertyBlockValue,
2673
+ _a[_DYN_HDLR ] = cfgHandler,
2674
+ _a.add = _addWatcher,
2603
2675
  _a[_DYN_NOTIFY ] = _notifyWatchers,
2604
2676
  _a.use = _useHandler,
2605
2677
  _a.trk = _trackHandler,
@@ -2632,7 +2704,13 @@ function _createDynamicHandler(logger, target, inPlace) {
2632
2704
  theState[_DYN_NOTIFY ]();
2633
2705
  }
2634
2706
  function _setValue(target, name, value) {
2635
- return _setDynamicProperty(theState, target, name, value)[name];
2707
+ try {
2708
+ target = _setDynamicProperty(theState, target, name, value);
2709
+ }
2710
+ catch (e) {
2711
+ _throwDynamicError(logger, name, "Setting value", e);
2712
+ }
2713
+ return target[name];
2636
2714
  }
2637
2715
  function _watch(configHandler) {
2638
2716
  return _createAndUseHandler(theState, configHandler);
@@ -2652,10 +2730,16 @@ function _createDynamicHandler(logger, target, inPlace) {
2652
2730
  });
2653
2731
  }
2654
2732
  function _ref(target, name) {
2655
- return _setDynamicProperty(theState, target, name, target[name], true)[name];
2733
+ var _a;
2734
+ return _setDynamicPropertyState(theState, target, name, (_a = {}, _a[0 ] = true, _a))[name];
2656
2735
  }
2657
2736
  function _rdOnly(target, name) {
2658
- return _setDynamicProperty(theState, target, name, target[name], false, true)[name];
2737
+ var _a;
2738
+ return _setDynamicPropertyState(theState, target, name, (_a = {}, _a[1 ] = true, _a))[name];
2739
+ }
2740
+ function _blkPropValue(target, name) {
2741
+ var _a;
2742
+ return _setDynamicPropertyState(theState, target, name, (_a = {}, _a[2 ] = true, _a))[name];
2659
2743
  }
2660
2744
  function _applyDefaults(theConfig, defaultValues) {
2661
2745
  if (defaultValues) {
@@ -2676,6 +2760,7 @@ function _createDynamicHandler(logger, target, inPlace) {
2676
2760
  _a[_DYN_WATCH ] = _watch,
2677
2761
  _a.ref = _ref,
2678
2762
  _a[_DYN_RD_ONLY ] = _rdOnly,
2763
+ _a[_DYN_BLK_VAL ] = _blkPropValue,
2679
2764
  _a._block = _block,
2680
2765
  _a);
2681
2766
  objDefine(cfgHandler, "uid", {
@@ -2685,12 +2770,12 @@ function _createDynamicHandler(logger, target, inPlace) {
2685
2770
  v: uid
2686
2771
  });
2687
2772
  theState = _createState(cfgHandler);
2688
- _makeDynamicObject(theState, newTarget);
2773
+ _makeDynamicObject(theState, newTarget, "config", "Creating");
2689
2774
  return cfgHandler;
2690
2775
  }
2691
2776
  function _logInvalidAccess(logger, message) {
2692
2777
  if (logger) {
2693
- logger[STR_WARN_TO_CONSOLE ](message);
2778
+ logger[_DYN_WARN_TO_CONSOLE ](message);
2694
2779
  logger[_DYN_THROW_INTERNAL ](2 , 108 , message);
2695
2780
  }
2696
2781
  else {
@@ -2784,6 +2869,8 @@ function getDebugListener(config) {
2784
2869
  return _debugListener;
2785
2870
  }
2786
2871
 
2872
+ var _a$4;
2873
+ var STR_WARN_TO_CONSOLE = "warnToConsole";
2787
2874
  var AiNonUserActionablePrefix = "AI (Internal): ";
2788
2875
  var AiUserActionablePrefix = "AI: ";
2789
2876
  var AIInternalMessagePrefix = "AITR_";
@@ -2793,6 +2880,12 @@ var defaultValues$2 = {
2793
2880
  maxMessageLimit: 25,
2794
2881
  enableDebug: false
2795
2882
  };
2883
+ var _logFuncs = (_a$4 = {},
2884
+ _a$4[0 ] = null,
2885
+ _a$4[1 ] = "errorToConsole",
2886
+ _a$4[2 ] = STR_WARN_TO_CONSOLE,
2887
+ _a$4[3 ] = "debugToConsole",
2888
+ _a$4);
2796
2889
  function _sanitizeDiagnosticText(text) {
2797
2890
  if (text) {
2798
2891
  return "\"" + text[_DYN_REPLACE ](/\"/g, STR_EMPTY$1) + "\"";
@@ -2854,7 +2947,7 @@ var DiagnosticLogger = /** @class */ (function () {
2854
2947
  throw dumpObj(message);
2855
2948
  }
2856
2949
  else {
2857
- var logFunc = severity === 1 ? STR_ERROR_TO_CONSOLE : STR_WARN_TO_CONSOLE;
2950
+ var logFunc = _logFuncs[severity] || STR_WARN_TO_CONSOLE;
2858
2951
  if (!isUndefined(message[_DYN_MESSAGE ])) {
2859
2952
  if (isUserAct) {
2860
2953
  var messageKey = +message[_DYN_MESSAGE_ID ];
@@ -2875,11 +2968,15 @@ var DiagnosticLogger = /** @class */ (function () {
2875
2968
  }
2876
2969
  }
2877
2970
  };
2878
- _self[STR_WARN_TO_CONSOLE ] = function (message) {
2971
+ _self.debugToConsole = function (message) {
2972
+ _logToConsole("debug", message);
2973
+ _debugExtMsg("warning", message);
2974
+ };
2975
+ _self[_DYN_WARN_TO_CONSOLE ] = function (message) {
2879
2976
  _logToConsole("warn", message);
2880
2977
  _debugExtMsg("warning", message);
2881
2978
  };
2882
- _self[STR_ERROR_TO_CONSOLE ] = function (message) {
2979
+ _self.errorToConsole = function (message) {
2883
2980
  _logToConsole("error", message);
2884
2981
  _debugExtMsg("error", message);
2885
2982
  };
@@ -2915,10 +3012,10 @@ var DiagnosticLogger = /** @class */ (function () {
2915
3012
  var throttleMessage = new _InternalLogMessage(23 , throttleLimitMessage, false);
2916
3013
  _self.queue[_DYN_PUSH ](throttleMessage);
2917
3014
  if (severity === 1 ) {
2918
- _self[STR_ERROR_TO_CONSOLE ](throttleLimitMessage);
3015
+ _self.errorToConsole(throttleLimitMessage);
2919
3016
  }
2920
3017
  else {
2921
- _self[STR_WARN_TO_CONSOLE ](throttleLimitMessage);
3018
+ _self[_DYN_WARN_TO_CONSOLE ](throttleLimitMessage);
2922
3019
  }
2923
3020
  }
2924
3021
  }
@@ -2954,7 +3051,7 @@ function _throwInternal(logger, severity, msgId, msg, properties, isUserAct) {
2954
3051
  _getLogger(logger)[_DYN_THROW_INTERNAL ](severity, msgId, msg, properties, isUserAct);
2955
3052
  }
2956
3053
  function _warnToConsole(logger, message) {
2957
- _getLogger(logger)[STR_WARN_TO_CONSOLE ](message);
3054
+ _getLogger(logger)[_DYN_WARN_TO_CONSOLE ](message);
2958
3055
  }
2959
3056
  function _logInternalMessage(logger, severity, message) {
2960
3057
  _getLogger(logger)[_DYN_LOG_INTERNAL_MESSAGE ](severity, message);
@@ -4539,7 +4636,7 @@ var AppInsightsCore$1 = /** @class */ (function () {
4539
4636
  if (!_channels || _channels[_DYN_LENGTH ] === 0) {
4540
4637
  throwError("No " + STR_CHANNELS + " available");
4541
4638
  }
4542
- if (_channels[_DYN_LENGTH ] > 1) {
4639
+ if (_channelConfig && _channelConfig[_DYN_LENGTH ] > 1) {
4543
4640
  var teeController = _self[_DYN_GET_PLUGIN ]("TeeChannelController");
4544
4641
  if (!teeController || !teeController.plugin) {
4545
4642
  _throwInternal(_logger, 1 , 28 , "TeeChannel required");
@@ -4824,27 +4921,26 @@ var AppInsightsCore$1 = /** @class */ (function () {
4824
4921
  return (hasDocument() || !!_configHandler.cfg.enableWParam) ? 0 : -1;
4825
4922
  };
4826
4923
  function _setPluginVersions() {
4924
+ var thePlugins = {};
4827
4925
  _pluginVersionStringArr = [];
4926
+ var _addPluginVersions = function (plugins) {
4927
+ if (plugins) {
4928
+ arrForEach(plugins, function (plugin) {
4929
+ if (plugin[_DYN_IDENTIFIER ] && plugin[_DYN_VERSION ] && !thePlugins[plugin.identifier]) {
4930
+ var ver = plugin[_DYN_IDENTIFIER ] + "=" + plugin[_DYN_VERSION ];
4931
+ _pluginVersionStringArr[_DYN_PUSH ](ver);
4932
+ thePlugins[plugin.identifier] = plugin;
4933
+ }
4934
+ });
4935
+ }
4936
+ };
4937
+ _addPluginVersions(_channels);
4828
4938
  if (_channelConfig) {
4829
4939
  arrForEach(_channelConfig, function (channels) {
4830
- if (channels) {
4831
- arrForEach(channels, function (channel) {
4832
- if (channel[_DYN_IDENTIFIER ] && channel[_DYN_VERSION ]) {
4833
- var ver = channel[_DYN_IDENTIFIER ] + "=" + channel[_DYN_VERSION ];
4834
- _pluginVersionStringArr[_DYN_PUSH ](ver);
4835
- }
4836
- });
4837
- }
4838
- });
4839
- }
4840
- if (_configExtensions) {
4841
- arrForEach(_configExtensions, function (ext) {
4842
- if (ext && ext[_DYN_IDENTIFIER ] && ext[_DYN_VERSION ]) {
4843
- var ver = ext[_DYN_IDENTIFIER ] + "=" + ext[_DYN_VERSION ];
4844
- _pluginVersionStringArr[_DYN_PUSH ](ver);
4845
- }
4940
+ _addPluginVersions(channels);
4846
4941
  });
4847
4942
  }
4943
+ _addPluginVersions(_configExtensions);
4848
4944
  }
4849
4945
  function _initDefaults() {
4850
4946
  _isInitialized = false;
@@ -5483,7 +5579,8 @@ function removePageShowEventListener(listener, evtNamespace) {
5483
5579
  var LoggingSeverity = createEnumStyle({
5484
5580
  DISABLED: 0 ,
5485
5581
  CRITICAL: 1 ,
5486
- WARNING: 2
5582
+ WARNING: 2 ,
5583
+ DEBUG: 3
5487
5584
  });
5488
5585
 
5489
5586
  var ValueKind = createEnumStyle({
@@ -5537,7 +5634,7 @@ var STR_DEFAULT_ENDPOINT_URL = "https://browser.events.data.microsoft.com/OneCol
5537
5634
  var STR_VERSION = "version";
5538
5635
 
5539
5636
  var _a;
5540
- var Version = '4.0.0';
5637
+ var Version = '4.0.1';
5541
5638
  var FullVersionString = "1DS-Web-JS-" + Version;
5542
5639
  var ObjHasOwnProperty = ObjProto.hasOwnProperty;
5543
5640
  var strDisabledPropertyName = "Microsoft_ApplicationInsights_BypassAjaxInstrumentation";
@@ -5905,6 +6002,9 @@ var ValueSanitizer = /** @class */ (function () {
5905
6002
  }
5906
6003
  return result;
5907
6004
  }
6005
+ _self.clearCache = function () {
6006
+ _sanitizerMap = {};
6007
+ };
5908
6008
  _self.addSanitizer = function (newSanitizer) {
5909
6009
  if (newSanitizer) {
5910
6010
  if (!arrIncludes(_sanitizers, newSanitizer)) {
@@ -6222,4 +6322,4 @@ exports.toISOString = toISOString;
6222
6322
  exports.useXDomainRequest = useXDomainRequest;
6223
6323
 
6224
6324
  }));
6225
- //# sourceMappingURL=ms.core-4.0.0.js.map
6325
+ //# sourceMappingURL=ms.core-4.0.1.js.map