@microsoft/applicationinsights-properties-js 3.0.0-beta.2302-04 → 3.0.0-beta.2302-06

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.
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Microsoft Application Insights properties plugin, 3.0.0-beta.2302-04
2
+ * Microsoft Application Insights properties plugin, 3.0.0-beta.2302-06
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  *
5
5
  * Microsoft Application Insights Team
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Properties Plugin, 3.0.0-beta.2302-04
2
+ * Application Insights JavaScript SDK - Properties Plugin, 3.0.0-beta.2302-06
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  (function (global, factory) {
@@ -355,6 +355,12 @@
355
355
  }
356
356
  dynamicProto[DynProtoDefaultOptions] = _gblInst.o;
357
357
 
358
+ /*!
359
+ * NevWare21 - ts-utils, 0.8.0
360
+ * https://github.com/nevware21/ts-utils
361
+ * Copyright (c) NevWare21 and contributors. All rights reserved.
362
+ * Licensed under the MIT license.
363
+ */
358
364
  var UNDEF_VALUE = undefined;
359
365
  var EMPTY = "";
360
366
  var FUNCTION = "function";
@@ -374,10 +380,9 @@
374
380
  var ObjClass = Object;
375
381
  var ObjProto = ObjClass[PROTOTYPE];
376
382
  var StrCls = String;
377
- var StrProto = StrCls[PROTOTYPE];
378
383
  var MathCls = Math;
379
384
  var ArrCls = Array;
380
-
385
+ var ArrProto = ArrCls[PROTOTYPE];
381
386
  function _safeGet(cb, defValue) {
382
387
  var result = defValue;
383
388
  try {
@@ -387,7 +392,6 @@
387
392
  }
388
393
  return result;
389
394
  }
390
-
391
395
  function _createIs(theType) {
392
396
  return function (value) {
393
397
  return typeof value === theType;
@@ -425,18 +429,14 @@
425
429
  function isTruthy(value) {
426
430
  return !(!value || _safeGet(function () { return !(value && (0 + value)); }, !value));
427
431
  }
428
-
429
432
  var objGetOwnPropertyDescriptor = ObjClass.getOwnPropertyDescriptor;
430
-
431
433
  function objHasOwnProperty(obj, prop) {
432
434
  return obj && ObjProto[HAS_OWN_PROPERTY].call(obj, prop);
433
435
  }
434
-
435
436
  var objHasOwn = ObjClass["hasOwn"] || polyObjHasOwn;
436
437
  function polyObjHasOwn(obj, prop) {
437
438
  return objHasOwnProperty(obj, prop) || !!objGetOwnPropertyDescriptor(obj, prop);
438
439
  }
439
-
440
440
  function objForEachKey(theObject, callbackfn, thisArg) {
441
441
  if (theObject && isObject(theObject)) {
442
442
  for (var prop in theObject) {
@@ -448,7 +448,6 @@
448
448
  }
449
449
  }
450
450
  }
451
-
452
451
  function _createKeyValueMap(values, keyType, valueType, completeFn) {
453
452
  var theMap = {};
454
453
  objForEachKey(values, function (key, value) {
@@ -457,14 +456,11 @@
457
456
  });
458
457
  return completeFn(theMap);
459
458
  }
460
-
461
459
  function throwTypeError(message) {
462
460
  throw new TypeError(message);
463
461
  }
464
-
465
462
  var _objFreeze = ObjClass["freeze"];
466
463
  var _doNothing = function (value) { return value; };
467
- ObjClass["assign"];
468
464
  function objKeys(value) {
469
465
  if (!isObject(value) || value === null) {
470
466
  throwTypeError("objKeys called on non-object");
@@ -482,15 +478,29 @@
482
478
  return objFreeze(value);
483
479
  }
484
480
  var objFreeze = _objFreeze || _doNothing;
485
- ObjClass["seal"] || _doNothing;
486
481
  var objGetPrototypeOf = ObjClass["getPrototypeOf"] || _doNothing;
487
-
488
482
  function createEnum(values) {
489
- return _createKeyValueMap(values, 1, 0, objDeepFreeze);
490
- }
491
-
483
+ return _createKeyValueMap(values, 1 , 0 , objDeepFreeze);
484
+ }
485
+ function createEnumKeyMap(values) {
486
+ return _createKeyValueMap(values, 0 , 0 , objDeepFreeze);
487
+ }
488
+ createEnumKeyMap({
489
+ asyncIterator: 0 ,
490
+ hasInstance: 1 ,
491
+ isConcatSpreadable: 2 ,
492
+ iterator: 3 ,
493
+ match: 4 ,
494
+ matchAll: 5 ,
495
+ replace: 6 ,
496
+ search: 7 ,
497
+ species: 8 ,
498
+ split: 9 ,
499
+ toPrimitive: 10 ,
500
+ toStringTag: 11 ,
501
+ unscopables: 12
502
+ });
492
503
  var asString = StrCls;
493
-
494
504
  var GLOBAL_CONFIG_KEY = "__tsUtils$gblCfg";
495
505
  var _globalCfg;
496
506
  function _getGlobalValue() {
@@ -516,7 +526,6 @@
516
526
  }
517
527
  return _globalCfg;
518
528
  }
519
-
520
529
  function dumpObj(object, format) {
521
530
  var propertyValueDump = "";
522
531
  if (isError(object)) {
@@ -532,7 +541,6 @@
532
541
  }
533
542
  return objToString(object) + ": " + propertyValueDump;
534
543
  }
535
-
536
544
  function _extractArgs(args, startAt) {
537
545
  var theArgs = [];
538
546
  for (var lp = startAt; lp < args[LENGTH]; lp++) {
@@ -540,24 +548,25 @@
540
548
  }
541
549
  return theArgs;
542
550
  }
543
-
544
- function _unwrapFunction(funcName) {
551
+ function _unwrapFunction(funcName, target, polyFunc) {
545
552
  return function (thisArg) {
546
- var args = _extractArgs(arguments, 1);
547
- if ((thisArg || thisArg === EMPTY) && thisArg[funcName]) {
548
- return thisArg[funcName].apply(thisArg, args);
553
+ if ((thisArg || thisArg === EMPTY)) {
554
+ var theFunc = thisArg[funcName] || (target && target[funcName]);
555
+ if (theFunc) {
556
+ return theFunc.apply(thisArg, _extractArgs(arguments, 1));
557
+ }
558
+ if (polyFunc) {
559
+ return polyFunc.apply(thisArg, arguments);
560
+ }
549
561
  }
550
- throwTypeError("'" + funcName + "' not defined for " + dumpObj(thisArg));
562
+ throwTypeError("'" + asString(funcName) + "' not defined for " + dumpObj(thisArg));
551
563
  };
552
564
  }
553
-
554
565
  var mathMax = MathCls.max;
555
-
556
566
  var strSlice = _unwrapFunction("slice");
557
-
558
567
  var SUB_STR = "substr";
559
568
  var strSubstring = _unwrapFunction("substring");
560
- var strSubstr = StrProto[SUB_STR] ? _unwrapFunction(SUB_STR) : polyStrSubstr;
569
+ var strSubstr = _unwrapFunction(SUB_STR, UNDEF_VALUE, polyStrSubstr);
561
570
  function polyStrSubstr(value, start, length) {
562
571
  if (isNullOrUndefined(value)) {
563
572
  throwTypeError("'polyStrSubstr called with invalid " + dumpObj(value));
@@ -577,7 +586,6 @@
577
586
  function strLeft(value, count) {
578
587
  return strSubstring(value, 0, count);
579
588
  }
580
-
581
589
  var _polySymbols;
582
590
  function _globalSymbolRegistry() {
583
591
  if (!_polySymbols) {
@@ -603,7 +611,6 @@
603
611
  }
604
612
  return registry.k[key];
605
613
  }
606
-
607
614
  var propMap = {
608
615
  e: "enumerable",
609
616
  c: "configurable",
@@ -621,7 +628,7 @@
621
628
  });
622
629
  return prop;
623
630
  }
624
- var objDefineProp = ObjClass.defineProperty;
631
+ var objDefineProp = ObjClass["defineProperty"];
625
632
  function objDefineAccessors(target, prop, getProp, setProp, configurable, enumerable) {
626
633
  var desc = {
627
634
  e: enumerable,
@@ -638,7 +645,6 @@
638
645
  function objDefine(target, key, propDesc) {
639
646
  return objDefineProp(target, key, _createProp(propDesc));
640
647
  }
641
-
642
648
  var _globalLazyTestHooks;
643
649
  var _fetchLazyTestHooks = function () {
644
650
  _globalLazyTestHooks = _getGlobalConfig();
@@ -665,11 +671,9 @@
665
671
  });
666
672
  return lazyValue;
667
673
  }
668
-
669
674
  function _lazySafeGet(cb, defValue) {
670
675
  return getLazy(function () { return _safeGet(cb, defValue); });
671
676
  }
672
-
673
677
  var DOCUMENT = "document";
674
678
  var NAVIGATOR = "navigator";
675
679
  var WINDOW = "window";
@@ -709,7 +713,6 @@
709
713
  (!_cachedNavigator || (_globalLazyTestHooks.lzy && !_cachedNavigator.b)) && (_cachedNavigator = _lazySafeGetInst(NAVIGATOR));
710
714
  return _cachedNavigator.v;
711
715
  }
712
-
713
716
  var _symbol;
714
717
  var _symbolFor;
715
718
  var _symbolKeyFor;
@@ -733,11 +736,9 @@
733
736
  (!_symbolFor || (_globalLazyTestHooks.lzy && !_symbol.b)) && getSymbol();
734
737
  return (_symbolFor.v || polySymbolFor)(key);
735
738
  }
736
-
737
739
  function isIterator(value) {
738
740
  return !!value && isFunction(value.next);
739
741
  }
740
-
741
742
  function arrAppend(target, elms) {
742
743
  if (!isUndefined(elms) && target) {
743
744
  if (isArray(elms)) {
@@ -756,22 +757,19 @@
756
757
  }
757
758
  return target;
758
759
  }
759
-
760
- function arrForEach(arr, callbackfn, thisArg) {
761
- if (arr) {
762
- var len = arr[LENGTH];
760
+ function arrForEach(theArray, callbackfn, thisArg) {
761
+ if (theArray) {
762
+ var len = theArray[LENGTH] >>> 0;
763
763
  for (var idx = 0; idx < len; idx++) {
764
- if (idx in arr) {
765
- if (callbackfn.call(thisArg || arr, arr[idx], idx, arr) === -1) {
764
+ if (idx in theArray) {
765
+ if (callbackfn.call(thisArg || theArray, theArray[idx], idx, theArray) === -1) {
766
766
  break;
767
767
  }
768
768
  }
769
769
  }
770
770
  }
771
771
  }
772
-
773
- var arrIndexOf = _unwrapFunction(INDEX_OF);
774
-
772
+ var arrIndexOf = _unwrapFunction(INDEX_OF, ArrProto);
775
773
  function objSetPrototypeOf(obj, proto) {
776
774
  var fn = ObjClass["setPrototypeOf"] ||
777
775
  ({ __proto__: [] } instanceof Array && function (d, b) {
@@ -782,7 +780,6 @@
782
780
  };
783
781
  return fn(obj, proto);
784
782
  }
785
-
786
783
  function _createCustomError(name, d, b) {
787
784
  objSetPrototypeOf(d, b);
788
785
  function __() {
@@ -803,15 +800,13 @@
803
800
  }, baseClass);
804
801
  return customError;
805
802
  }
806
-
807
803
  function utcNow() {
808
804
  return (Date.now || polyUtcNow)();
809
805
  }
810
806
  function polyUtcNow() {
811
807
  return new Date().getTime();
812
808
  }
813
-
814
- var _fnToString$1;
809
+ var _fnToString;
815
810
  var _objCtrFnString;
816
811
  var _gblWindow;
817
812
  function isPlainObject(value) {
@@ -824,8 +819,8 @@
824
819
  var result = false;
825
820
  if (value !== _gblWindow) {
826
821
  if (!_objCtrFnString) {
827
- _fnToString$1 = Function[PROTOTYPE].toString;
828
- _objCtrFnString = _fnToString$1.call(ObjClass);
822
+ _fnToString = Function[PROTOTYPE].toString;
823
+ _objCtrFnString = _fnToString.call(ObjClass);
829
824
  }
830
825
  try {
831
826
  var proto = objGetPrototypeOf(value);
@@ -834,7 +829,7 @@
834
829
  if (objHasOwnProperty(proto, CONSTRUCTOR)) {
835
830
  proto = proto[CONSTRUCTOR];
836
831
  }
837
- result = proto && typeof proto === FUNCTION && _fnToString$1.call(proto) === _objCtrFnString;
832
+ result = proto && typeof proto === FUNCTION && _fnToString.call(proto) === _objCtrFnString;
838
833
  }
839
834
  }
840
835
  catch (ex) {
@@ -842,9 +837,8 @@
842
837
  }
843
838
  return result;
844
839
  }
845
-
846
840
  var ENDS_WITH = "endsWith";
847
- var strEndsWith = StrProto[ENDS_WITH] ? _unwrapFunction(ENDS_WITH) : polyStrEndsWith;
841
+ var strEndsWith = _unwrapFunction(ENDS_WITH, UNDEF_VALUE, polyStrEndsWith);
848
842
  function polyStrEndsWith(value, searchString, length) {
849
843
  if (!isString(value)) {
850
844
  throwTypeError("'" + dumpObj(value) + "' is not a string");
@@ -855,9 +849,7 @@
855
849
  var end = !isUndefined(length) && length < len ? length : len;
856
850
  return strSubstring(value, end - chkLen, end) === searchValue;
857
851
  }
858
-
859
852
  var strIndexOf = _unwrapFunction(INDEX_OF);
860
-
861
853
  function _createTrimFn(exp) {
862
854
  return function _doTrim(value) {
863
855
  if (isNullOrUndefined(value)) {
@@ -870,10 +862,8 @@
870
862
  };
871
863
  }
872
864
  var polyStrTrim = _createTrimFn(/^\s+|(?=\s)\s+$/g);
873
-
874
865
  var TRIM = "trim";
875
- var strTrim = StrProto[TRIM] ? _unwrapFunction(TRIM) : polyStrTrim;
876
-
866
+ var strTrim = _unwrapFunction(TRIM, UNDEF_VALUE, polyStrTrim);
877
867
  function _createTimerHandler(startTimer, refreshFn, cancelFn) {
878
868
  var ref = true;
879
869
  var timerId = startTimer ? refreshFn(null) : null;
@@ -911,7 +901,6 @@
911
901
  };
912
902
  return timer;
913
903
  }
914
-
915
904
  function _createTimeoutWith(self, startTimer, overrideFn, theArgs) {
916
905
  var isArr = isArray(overrideFn);
917
906
  var len = isArr ? overrideFn.length : 0;
@@ -936,7 +925,9 @@
936
925
 
937
926
  var createEnumStyle = createEnum;
938
927
 
928
+ var _DYN_TO_LOWER_CASE = "toLowerCase";
939
929
  var _DYN_LENGTH$2 = "length";
930
+ var _DYN_RD_ONLY = "rdOnly";
940
931
  var _DYN_NOTIFY = "notify";
941
932
  var _DYN_THROW_INTERNAL = "throwInternal";
942
933
  var _DYN_SET_DF = "setDf";
@@ -973,7 +964,6 @@
973
964
  var _DYN_REPLACE = "replace";
974
965
  var _DYN_ENABLE_DEBUG_EXCEPTI5 = "enableDebugExceptions";
975
966
  var _DYN_LOG_INTERNAL_MESSAGE = "logInternalMessage";
976
- var _DYN_TO_LOWER_CASE = "toLowerCase";
977
967
  var _DYN_IS_CHILD_EVT = "isChildEvt";
978
968
  var _DYN_GET_CTX = "getCtx";
979
969
  var _DYN_SET_CTX = "setCtx";
@@ -1009,9 +999,6 @@
1009
999
  var STR_PATH = "path";
1010
1000
  var STR_NOT_DYNAMIC_ERROR = "Not dynamic - ";
1011
1001
 
1012
- var strToString = "toString";
1013
- var _fnToString = ObjClass$1[strToString];
1014
- _fnToString.call(ObjClass$1);
1015
1002
  var rCamelCase = /-([a-z])/g;
1016
1003
  var rNormalizeInvalid = /([^\w\d_$])/g;
1017
1004
  var rLeadingNumeric = /^(\d+[\w\d_$])/;
@@ -1233,7 +1220,7 @@
1233
1220
  }
1234
1221
 
1235
1222
  var _objDefineProperty = ObjDefineProperty;
1236
- var version = "3.0.0-beta.2302-04";
1223
+ var version = "3.0.0-beta.2302-06";
1237
1224
  var instanceName = "." + newId(6);
1238
1225
  var _dataUid = 0;
1239
1226
  function _createAccessor(target, prop, value) {
@@ -1306,39 +1293,9 @@
1306
1293
  return data;
1307
1294
  }
1308
1295
 
1309
- var CFG_HANDLER_LINK = symbolFor("[[ai_dynCfg_1]]");
1310
- function _cfgDeepCopy(source) {
1311
- if (source) {
1312
- var target_1;
1313
- if (isArray(source)) {
1314
- target_1 = [];
1315
- target_1[_DYN_LENGTH$2 ] = source[_DYN_LENGTH$2 ];
1316
- }
1317
- else if (isPlainObject(source)) {
1318
- target_1 = {};
1319
- }
1320
- if (target_1) {
1321
- objForEachKey(source, function (key, value) {
1322
- target_1[key] = _cfgDeepCopy(value);
1323
- });
1324
- return target_1;
1325
- }
1326
- }
1327
- return source;
1328
- }
1329
- function getDynamicConfigHandler(value) {
1330
- if (value) {
1331
- var handler = value[CFG_HANDLER_LINK] || value;
1332
- if (handler.cfg && (handler.cfg === value || handler.cfg[CFG_HANDLER_LINK] === handler)) {
1333
- return handler;
1334
- }
1335
- }
1336
- return null;
1296
+ function _isConfigDefaults(value) {
1297
+ return (value && isObject(value) && (value.isVal || value.fb || objHasOwn(value, "v") || objHasOwn(value, "mrg") || objHasOwn(value, "ref") || value.set));
1337
1298
  }
1338
- function throwInvalidAccess(message) {
1339
- throwTypeError("InvalidAccess:" + message);
1340
- }
1341
-
1342
1299
  function _getDefault(dynamicHandler, theConfig, cfgDefaults) {
1343
1300
  var defValue;
1344
1301
  var isDefaultValid = cfgDefaults.dfVal || isDefined;
@@ -1353,7 +1310,7 @@
1353
1310
  if (isDefaultValid(fbValue)) {
1354
1311
  defValue = fbValue;
1355
1312
  }
1356
- else {
1313
+ else if (dynamicHandler) {
1357
1314
  fbValue = dynamicHandler.cfg[fallback];
1358
1315
  if (isDefaultValid(fbValue)) {
1359
1316
  defValue = fbValue;
@@ -1370,27 +1327,63 @@
1370
1327
  }
1371
1328
  return defValue;
1372
1329
  }
1330
+ function _resolveDefaultValue(dynamicHandler, theConfig, cfgDefaults) {
1331
+ var theValue = cfgDefaults;
1332
+ if (cfgDefaults && _isConfigDefaults(cfgDefaults)) {
1333
+ theValue = _getDefault(dynamicHandler, theConfig, cfgDefaults);
1334
+ }
1335
+ if (theValue) {
1336
+ if (_isConfigDefaults(theValue)) {
1337
+ theValue = _resolveDefaultValue(dynamicHandler, theConfig, theValue);
1338
+ }
1339
+ var newValue_1;
1340
+ if (isArray(theValue)) {
1341
+ newValue_1 = [];
1342
+ newValue_1[_DYN_LENGTH$2 ] = theValue[_DYN_LENGTH$2 ];
1343
+ }
1344
+ else if (isPlainObject(theValue)) {
1345
+ newValue_1 = {};
1346
+ }
1347
+ if (newValue_1) {
1348
+ objForEachKey(theValue, function (key, value) {
1349
+ if (value && _isConfigDefaults(value)) {
1350
+ value = _resolveDefaultValue(dynamicHandler, theConfig, value);
1351
+ }
1352
+ newValue_1[key] = value;
1353
+ });
1354
+ theValue = newValue_1;
1355
+ }
1356
+ }
1357
+ return theValue;
1358
+ }
1373
1359
  function _applyDefaultValue(dynamicHandler, theConfig, name, defaultValue) {
1374
1360
  var isValid;
1375
1361
  var setFn;
1376
1362
  var defValue;
1377
1363
  var cfgDefaults = defaultValue;
1378
- if (cfgDefaults && isObject(cfgDefaults) && (cfgDefaults.isVal || cfgDefaults.set || cfgDefaults.fb || objHasOwn(cfgDefaults, "v"))) {
1364
+ var mergeDf;
1365
+ var reference;
1366
+ var readOnly;
1367
+ if (_isConfigDefaults(cfgDefaults)) {
1379
1368
  isValid = cfgDefaults.isVal;
1380
1369
  setFn = cfgDefaults.set;
1370
+ readOnly = cfgDefaults[_DYN_RD_ONLY ];
1371
+ mergeDf = cfgDefaults.mrg;
1372
+ reference = cfgDefaults.ref;
1373
+ if (!reference && isUndefined(reference)) {
1374
+ reference = !!mergeDf;
1375
+ }
1381
1376
  defValue = _getDefault(dynamicHandler, theConfig, cfgDefaults);
1382
1377
  }
1383
1378
  else {
1384
1379
  defValue = defaultValue;
1385
1380
  }
1386
- var theValue = defValue;
1381
+ var theValue;
1387
1382
  var usingDefault = true;
1388
1383
  var cfgValue = theConfig[name];
1389
1384
  if (cfgValue || !isNullOrUndefined(cfgValue)) {
1390
1385
  theValue = cfgValue;
1391
1386
  usingDefault = false;
1392
- }
1393
- if (!usingDefault) {
1394
1387
  if (isValid && theValue !== defValue && !isValid(theValue)) {
1395
1388
  theValue = defValue;
1396
1389
  usingDefault = true;
@@ -1400,10 +1393,61 @@
1400
1393
  usingDefault = theValue === defValue;
1401
1394
  }
1402
1395
  }
1403
- if (theValue && usingDefault && (isPlainObject(theValue) || isArray(theValue))) {
1404
- theValue = _cfgDeepCopy(theValue);
1396
+ if (!usingDefault) {
1397
+ if (isPlainObject(theValue) || isArray(defValue)) {
1398
+ if (mergeDf && defValue && (isPlainObject(defValue) || isArray(defValue))) {
1399
+ objForEachKey(defValue, function (dfName, dfValue) {
1400
+ _applyDefaultValue(dynamicHandler, theValue, dfName, dfValue);
1401
+ });
1402
+ }
1403
+ }
1404
+ }
1405
+ else if (defValue) {
1406
+ theValue = _resolveDefaultValue(dynamicHandler, theConfig, defValue);
1407
+ }
1408
+ else {
1409
+ theValue = defValue;
1405
1410
  }
1406
1411
  dynamicHandler.set(theConfig, name, theValue);
1412
+ if (reference) {
1413
+ dynamicHandler.ref(theConfig, name);
1414
+ }
1415
+ if (readOnly) {
1416
+ dynamicHandler[_DYN_RD_ONLY ](theConfig, name);
1417
+ }
1418
+ }
1419
+
1420
+ var CFG_HANDLER_LINK = symbolFor("[[ai_dynCfg_1]]");
1421
+ function _cfgDeepCopy(source) {
1422
+ if (source) {
1423
+ var target_1;
1424
+ if (isArray(source)) {
1425
+ target_1 = [];
1426
+ target_1[_DYN_LENGTH$2 ] = source[_DYN_LENGTH$2 ];
1427
+ }
1428
+ else if (isPlainObject(source)) {
1429
+ target_1 = {};
1430
+ }
1431
+ if (target_1) {
1432
+ objForEachKey(source, function (key, value) {
1433
+ target_1[key] = _cfgDeepCopy(value);
1434
+ });
1435
+ return target_1;
1436
+ }
1437
+ }
1438
+ return source;
1439
+ }
1440
+ function getDynamicConfigHandler(value) {
1441
+ if (value) {
1442
+ var handler = value[CFG_HANDLER_LINK] || value;
1443
+ if (handler.cfg && (handler.cfg === value || handler.cfg[CFG_HANDLER_LINK] === handler)) {
1444
+ return handler;
1445
+ }
1446
+ }
1447
+ return null;
1448
+ }
1449
+ function throwInvalidAccess(message) {
1450
+ throwTypeError("InvalidAccess:" + message);
1407
1451
  }
1408
1452
 
1409
1453
  var arrayMethodsToPatch = [
@@ -1583,7 +1627,7 @@
1583
1627
  set: cfgHandler.set.bind(cfgHandler),
1584
1628
  setDf: cfgHandler[_DYN_SET_DF ].bind(cfgHandler),
1585
1629
  ref: cfgHandler.ref.bind(cfgHandler),
1586
- rdOnly: cfgHandler.rdOnly.bind(cfgHandler)
1630
+ rdOnly: cfgHandler[_DYN_RD_ONLY ].bind(cfgHandler)
1587
1631
  });
1588
1632
  }
1589
1633
  catch (e) {
@@ -1733,7 +1777,7 @@
1733
1777
  _a[_DYN_SET_DF ] = _applyDefaults,
1734
1778
  _a[_DYN_WATCH ] = _watch,
1735
1779
  _a.ref = _ref,
1736
- _a.rdOnly = _rdOnly,
1780
+ _a[_DYN_RD_ONLY ] = _rdOnly,
1737
1781
  _a._block = _block,
1738
1782
  _a);
1739
1783
  objDefineProp(cfgHandler, "uid", (_b = {},
@@ -1771,6 +1815,13 @@
1771
1815
  createDynamicConfig(config, null, logger)[_DYN_WATCH ](configHandler);
1772
1816
  }
1773
1817
 
1818
+ function cfgDfMerge(defaultValue) {
1819
+ return {
1820
+ mrg: true,
1821
+ v: defaultValue
1822
+ };
1823
+ }
1824
+
1774
1825
  var _aiNamespace = null;
1775
1826
  function _getExtensionNamespace() {
1776
1827
  var target = getInst("Microsoft");
@@ -1975,18 +2026,19 @@
1975
2026
  var _doc = getDocument();
1976
2027
  var _cookieCache = {};
1977
2028
  var _globalCookieConfig = {};
1978
- var defaultConfig = objDeepFreeze((_a$2 = {},
1979
- _a$2[STR_DOMAIN] = { fb: "cookieDomain", dfVal: isNotNullOrUndefined },
1980
- _a$2.path = { fb: "cookiePath", dfVal: isNotNullOrUndefined },
1981
- _a$2.enabled = UNDEFINED_VALUE,
1982
- _a$2));
1983
- var rootDefaultConfig = (_b = {
1984
- cookieCfg: {},
2029
+ var rootDefaultConfig = (_a$2 = {
2030
+ cookieCfg: cfgDfMerge((_b = {},
2031
+ _b[STR_DOMAIN] = { fb: "cookieDomain", dfVal: isNotNullOrUndefined },
2032
+ _b.path = { fb: "cookiePath", dfVal: isNotNullOrUndefined },
2033
+ _b.enabled = UNDEFINED_VALUE,
2034
+ _b.ignoreCookies = UNDEFINED_VALUE,
2035
+ _b.blockedCookies = UNDEFINED_VALUE,
2036
+ _b)),
1985
2037
  cookieDomain: UNDEFINED_VALUE,
1986
2038
  cookiePath: UNDEFINED_VALUE
1987
2039
  },
1988
- _b[strDisableCookiesUsage] = UNDEFINED_VALUE,
1989
- _b);
2040
+ _a$2[strDisableCookiesUsage] = UNDEFINED_VALUE,
2041
+ _a$2);
1990
2042
  function _gblCookieMgr(config, logger) {
1991
2043
  var inst = createCookieMgr[strConfigCookieMgr] || _globalCookieConfig[strConfigCookieMgr];
1992
2044
  if (!inst) {
@@ -2045,7 +2097,7 @@
2045
2097
  rootConfig = createDynamicConfig(rootConfig || _globalCookieConfig, null, logger).cfg;
2046
2098
  onConfigChange(rootConfig, function (details) {
2047
2099
  details[_DYN_SET_DF ](details.cfg, rootDefaultConfig);
2048
- cookieMgrConfig = details[_DYN_SET_DF ](details.cfg.cookieCfg, defaultConfig);
2100
+ cookieMgrConfig = details.ref(details.cfg, "cookieCfg");
2049
2101
  var isEnabled = cookieMgrConfig.enabled;
2050
2102
  if (isNullOrUndefined(isEnabled)) {
2051
2103
  var cookieEnabled = void 0;