@microsoft/applicationinsights-debugplugin-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.
Files changed (52) hide show
  1. package/browser/{ai.dbg.3.0.0-beta.2302-04.cjs.js → ai.dbg.3.0.0-beta.2302-06.cjs.js} +172 -99
  2. package/browser/ai.dbg.3.0.0-beta.2302-06.cjs.js.map +1 -0
  3. package/browser/ai.dbg.3.0.0-beta.2302-06.cjs.min.js +6 -0
  4. package/browser/ai.dbg.3.0.0-beta.2302-06.cjs.min.js.map +1 -0
  5. package/browser/{ai.dbg.3.0.0-beta.2302-04.gbl.js → ai.dbg.3.0.0-beta.2302-06.gbl.js} +172 -99
  6. package/browser/ai.dbg.3.0.0-beta.2302-06.gbl.js.map +1 -0
  7. package/browser/ai.dbg.3.0.0-beta.2302-06.gbl.min.js +6 -0
  8. package/browser/ai.dbg.3.0.0-beta.2302-06.gbl.min.js.map +1 -0
  9. package/browser/ai.dbg.3.0.0-beta.2302-06.integrity.json +66 -0
  10. package/browser/{ai.dbg.3.0.0-beta.2302-04.js → ai.dbg.3.0.0-beta.2302-06.js} +172 -99
  11. package/browser/ai.dbg.3.0.0-beta.2302-06.js.map +1 -0
  12. package/browser/ai.dbg.3.0.0-beta.2302-06.min.js +6 -0
  13. package/browser/ai.dbg.3.0.0-beta.2302-06.min.js.map +1 -0
  14. package/browser/ai.dbg.3.cjs.js +171 -98
  15. package/browser/ai.dbg.3.cjs.js.map +1 -1
  16. package/browser/ai.dbg.3.cjs.min.js +2 -2
  17. package/browser/ai.dbg.3.cjs.min.js.map +1 -1
  18. package/browser/ai.dbg.3.gbl.js +171 -98
  19. package/browser/ai.dbg.3.gbl.js.map +1 -1
  20. package/browser/ai.dbg.3.gbl.min.js +2 -2
  21. package/browser/ai.dbg.3.gbl.min.js.map +1 -1
  22. package/browser/ai.dbg.3.js +171 -98
  23. package/browser/ai.dbg.3.js.map +1 -1
  24. package/browser/ai.dbg.3.min.js +2 -2
  25. package/browser/ai.dbg.3.min.js.map +1 -1
  26. package/dist/applicationinsights-debugplugin-js.d.ts +1 -1
  27. package/dist/applicationinsights-debugplugin-js.js +171 -98
  28. package/dist/applicationinsights-debugplugin-js.js.map +1 -1
  29. package/dist/applicationinsights-debugplugin-js.min.js +2 -2
  30. package/dist/applicationinsights-debugplugin-js.min.js.map +1 -1
  31. package/dist/applicationinsights-debugplugin-js.rollup.d.ts +1 -1
  32. package/dist-esm/DebugPlugin.js +1 -1
  33. package/dist-esm/__DynamicConstants.js +1 -1
  34. package/dist-esm/applicationinsights-debugplugin-js.js +1 -1
  35. package/dist-esm/components/Dashboard.js +1 -1
  36. package/dist-esm/components/LogEntry.js +1 -1
  37. package/dist-esm/components/debugBins.js +1 -1
  38. package/dist-esm/components/filterList.js +1 -1
  39. package/dist-esm/components/helpers.js +1 -1
  40. package/dist-esm/components/styleNodeSrc.js +1 -1
  41. package/dist-esm/interfaces/IDebugPluginConfig.js +1 -1
  42. package/package.json +3 -3
  43. package/browser/ai.dbg.3.0.0-beta.2302-04.cjs.js.map +0 -1
  44. package/browser/ai.dbg.3.0.0-beta.2302-04.cjs.min.js +0 -6
  45. package/browser/ai.dbg.3.0.0-beta.2302-04.cjs.min.js.map +0 -1
  46. package/browser/ai.dbg.3.0.0-beta.2302-04.gbl.js.map +0 -1
  47. package/browser/ai.dbg.3.0.0-beta.2302-04.gbl.min.js +0 -6
  48. package/browser/ai.dbg.3.0.0-beta.2302-04.gbl.min.js.map +0 -1
  49. package/browser/ai.dbg.3.0.0-beta.2302-04.integrity.json +0 -66
  50. package/browser/ai.dbg.3.0.0-beta.2302-04.js.map +0 -1
  51. package/browser/ai.dbg.3.0.0-beta.2302-04.min.js +0 -6
  52. package/browser/ai.dbg.3.0.0-beta.2302-04.min.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Debug Plugin, 3.0.0-beta.2302-04
2
+ * Application Insights JavaScript SDK - Debug Plugin, 3.0.0-beta.2302-06
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  'use strict';
@@ -353,6 +353,12 @@ function dynamicProto(theClass, target, delegateFunc, options) {
353
353
  }
354
354
  dynamicProto[DynProtoDefaultOptions] = _gblInst.o;
355
355
 
356
+ /*!
357
+ * NevWare21 - ts-utils, 0.8.0
358
+ * https://github.com/nevware21/ts-utils
359
+ * Copyright (c) NevWare21 and contributors. All rights reserved.
360
+ * Licensed under the MIT license.
361
+ */
356
362
  var UNDEF_VALUE = undefined;
357
363
  var EMPTY = "";
358
364
  var BOOLEAN = "boolean";
@@ -374,7 +380,7 @@ var ObjClass = Object;
374
380
  var ObjProto = ObjClass[PROTOTYPE];
375
381
  var StrCls = String;
376
382
  var ArrCls = Array;
377
-
383
+ var ArrProto = ArrCls[PROTOTYPE];
378
384
  function _safeGet(cb, defValue) {
379
385
  var result = defValue;
380
386
  try {
@@ -384,7 +390,6 @@ function _safeGet(cb, defValue) {
384
390
  }
385
391
  return result;
386
392
  }
387
-
388
393
  function _createIs(theType) {
389
394
  return function (value) {
390
395
  return typeof value === theType;
@@ -420,18 +425,14 @@ var isArray = ArrCls.isArray;
420
425
  var isNumber = _createIs(NUMBER);
421
426
  var isBoolean = _createIs(BOOLEAN);
422
427
  var isError = _createObjIs("Error");
423
-
424
428
  var objGetOwnPropertyDescriptor = ObjClass.getOwnPropertyDescriptor;
425
-
426
429
  function objHasOwnProperty(obj, prop) {
427
430
  return obj && ObjProto[HAS_OWN_PROPERTY].call(obj, prop);
428
431
  }
429
-
430
432
  var objHasOwn = ObjClass["hasOwn"] || polyObjHasOwn;
431
433
  function polyObjHasOwn(obj, prop) {
432
434
  return objHasOwnProperty(obj, prop) || !!objGetOwnPropertyDescriptor(obj, prop);
433
435
  }
434
-
435
436
  function objForEachKey(theObject, callbackfn, thisArg) {
436
437
  if (theObject && isObject(theObject)) {
437
438
  for (var prop in theObject) {
@@ -443,11 +444,17 @@ function objForEachKey(theObject, callbackfn, thisArg) {
443
444
  }
444
445
  }
445
446
  }
446
-
447
+ function _createKeyValueMap(values, keyType, valueType, completeFn) {
448
+ var theMap = {};
449
+ objForEachKey(values, function (key, value) {
450
+ theMap[key] = keyType ? value : key;
451
+ theMap[value] = valueType ? value : key;
452
+ });
453
+ return completeFn(theMap);
454
+ }
447
455
  function throwTypeError(message) {
448
456
  throw new TypeError(message);
449
457
  }
450
-
451
458
  var _objFreeze = ObjClass["freeze"];
452
459
  var _doNothing = function (value) { return value; };
453
460
  function objKeys(value) {
@@ -456,11 +463,37 @@ function objKeys(value) {
456
463
  }
457
464
  return ObjClass.keys(value);
458
465
  }
466
+ function objDeepFreeze(value) {
467
+ if (_objFreeze) {
468
+ objForEachKey(value, function (key, value) {
469
+ if (isArray(value) || isObject(value)) {
470
+ _objFreeze(value);
471
+ }
472
+ });
473
+ }
474
+ return objFreeze(value);
475
+ }
459
476
  var objFreeze = _objFreeze || _doNothing;
460
477
  var objGetPrototypeOf = ObjClass["getPrototypeOf"] || _doNothing;
461
-
478
+ function createEnumKeyMap(values) {
479
+ return _createKeyValueMap(values, 0 , 0 , objDeepFreeze);
480
+ }
481
+ createEnumKeyMap({
482
+ asyncIterator: 0 ,
483
+ hasInstance: 1 ,
484
+ isConcatSpreadable: 2 ,
485
+ iterator: 3 ,
486
+ match: 4 ,
487
+ matchAll: 5 ,
488
+ replace: 6 ,
489
+ search: 7 ,
490
+ species: 8 ,
491
+ split: 9 ,
492
+ toPrimitive: 10 ,
493
+ toStringTag: 11 ,
494
+ unscopables: 12
495
+ });
462
496
  var asString = StrCls;
463
-
464
497
  var GLOBAL_CONFIG_KEY = "__tsUtils$gblCfg";
465
498
  var _globalCfg;
466
499
  function _getGlobalValue() {
@@ -486,7 +519,6 @@ function _getGlobalConfig() {
486
519
  }
487
520
  return _globalCfg;
488
521
  }
489
-
490
522
  function dumpObj(object, format) {
491
523
  var propertyValueDump = "";
492
524
  if (isError(object)) {
@@ -502,7 +534,6 @@ function dumpObj(object, format) {
502
534
  }
503
535
  return objToString(object) + ": " + propertyValueDump;
504
536
  }
505
-
506
537
  function _extractArgs(args, startAt) {
507
538
  var theArgs = [];
508
539
  for (var lp = startAt; lp < args[LENGTH]; lp++) {
@@ -510,17 +541,20 @@ function _extractArgs(args, startAt) {
510
541
  }
511
542
  return theArgs;
512
543
  }
513
-
514
- function _unwrapFunction(funcName) {
544
+ function _unwrapFunction(funcName, target, polyFunc) {
515
545
  return function (thisArg) {
516
- var args = _extractArgs(arguments, 1);
517
- if ((thisArg || thisArg === EMPTY) && thisArg[funcName]) {
518
- return thisArg[funcName].apply(thisArg, args);
546
+ if ((thisArg || thisArg === EMPTY)) {
547
+ var theFunc = thisArg[funcName] || (target && target[funcName]);
548
+ if (theFunc) {
549
+ return theFunc.apply(thisArg, _extractArgs(arguments, 1));
550
+ }
551
+ if (polyFunc) {
552
+ return polyFunc.apply(thisArg, arguments);
553
+ }
519
554
  }
520
- throwTypeError("'" + funcName + "' not defined for " + dumpObj(thisArg));
555
+ throwTypeError("'" + asString(funcName) + "' not defined for " + dumpObj(thisArg));
521
556
  };
522
557
  }
523
-
524
558
  var _polySymbols;
525
559
  function _globalSymbolRegistry() {
526
560
  if (!_polySymbols) {
@@ -546,7 +580,6 @@ function polySymbolFor(key) {
546
580
  }
547
581
  return registry.k[key];
548
582
  }
549
-
550
583
  var propMap = {
551
584
  e: "enumerable",
552
585
  c: "configurable",
@@ -564,7 +597,7 @@ function _createProp(value) {
564
597
  });
565
598
  return prop;
566
599
  }
567
- var objDefineProp = ObjClass.defineProperty;
600
+ var objDefineProp = ObjClass["defineProperty"];
568
601
  function objDefineAccessors(target, prop, getProp, setProp, configurable, enumerable) {
569
602
  var desc = {
570
603
  e: enumerable,
@@ -581,7 +614,6 @@ function objDefineAccessors(target, prop, getProp, setProp, configurable, enumer
581
614
  function objDefine(target, key, propDesc) {
582
615
  return objDefineProp(target, key, _createProp(propDesc));
583
616
  }
584
-
585
617
  var _globalLazyTestHooks;
586
618
  var _fetchLazyTestHooks = function () {
587
619
  _globalLazyTestHooks = _getGlobalConfig();
@@ -608,11 +640,9 @@ function getLazy(cb) {
608
640
  });
609
641
  return lazyValue;
610
642
  }
611
-
612
643
  function _lazySafeGet(cb, defValue) {
613
644
  return getLazy(function () { return _safeGet(cb, defValue); });
614
645
  }
615
-
616
646
  var DOCUMENT = "document";
617
647
  var NAVIGATOR = "navigator";
618
648
  var WINDOW = "window";
@@ -652,7 +682,6 @@ function getNavigator() {
652
682
  (!_cachedNavigator || (_globalLazyTestHooks.lzy && !_cachedNavigator.b)) && (_cachedNavigator = _lazySafeGetInst(NAVIGATOR));
653
683
  return _cachedNavigator.v;
654
684
  }
655
-
656
685
  var _symbol;
657
686
  var _symbolFor;
658
687
  var _symbolKeyFor;
@@ -677,11 +706,9 @@ function symbolFor(key) {
677
706
  (!_symbolFor || (_globalLazyTestHooks.lzy && !_symbol.b)) && getSymbol();
678
707
  return (_symbolFor.v || polySymbolFor)(key);
679
708
  }
680
-
681
709
  function isIterator(value) {
682
710
  return !!value && isFunction(value.next);
683
711
  }
684
-
685
712
  function arrAppend(target, elms) {
686
713
  if (!isUndefined(elms) && target) {
687
714
  if (isArray(elms)) {
@@ -700,22 +727,19 @@ function arrAppend(target, elms) {
700
727
  }
701
728
  return target;
702
729
  }
703
-
704
- function arrForEach(arr, callbackfn, thisArg) {
705
- if (arr) {
706
- var len = arr[LENGTH];
730
+ function arrForEach(theArray, callbackfn, thisArg) {
731
+ if (theArray) {
732
+ var len = theArray[LENGTH] >>> 0;
707
733
  for (var idx = 0; idx < len; idx++) {
708
- if (idx in arr) {
709
- if (callbackfn.call(thisArg || arr, arr[idx], idx, arr) === -1) {
734
+ if (idx in theArray) {
735
+ if (callbackfn.call(thisArg || theArray, theArray[idx], idx, theArray) === -1) {
710
736
  break;
711
737
  }
712
738
  }
713
739
  }
714
740
  }
715
741
  }
716
-
717
- var arrIndexOf = _unwrapFunction(INDEX_OF);
718
-
742
+ var arrIndexOf = _unwrapFunction(INDEX_OF, ArrProto);
719
743
  function objSetPrototypeOf(obj, proto) {
720
744
  var fn = ObjClass["setPrototypeOf"] ||
721
745
  ({ __proto__: [] } instanceof Array && function (d, b) {
@@ -726,7 +750,6 @@ function objSetPrototypeOf(obj, proto) {
726
750
  };
727
751
  return fn(obj, proto);
728
752
  }
729
-
730
753
  function _createCustomError(name, d, b) {
731
754
  objSetPrototypeOf(d, b);
732
755
  function __() {
@@ -747,15 +770,13 @@ function createCustomError(name, constructCb) {
747
770
  }, baseClass);
748
771
  return customError;
749
772
  }
750
-
751
773
  function utcNow() {
752
774
  return (Date.now || polyUtcNow)();
753
775
  }
754
776
  function polyUtcNow() {
755
777
  return new Date().getTime();
756
778
  }
757
-
758
- var _fnToString$1;
779
+ var _fnToString;
759
780
  var _objCtrFnString;
760
781
  var _gblWindow;
761
782
  function isPlainObject(value) {
@@ -768,8 +789,8 @@ function isPlainObject(value) {
768
789
  var result = false;
769
790
  if (value !== _gblWindow) {
770
791
  if (!_objCtrFnString) {
771
- _fnToString$1 = Function[PROTOTYPE].toString;
772
- _objCtrFnString = _fnToString$1.call(ObjClass);
792
+ _fnToString = Function[PROTOTYPE].toString;
793
+ _objCtrFnString = _fnToString.call(ObjClass);
773
794
  }
774
795
  try {
775
796
  var proto = objGetPrototypeOf(value);
@@ -778,7 +799,7 @@ function isPlainObject(value) {
778
799
  if (objHasOwnProperty(proto, CONSTRUCTOR)) {
779
800
  proto = proto[CONSTRUCTOR];
780
801
  }
781
- result = proto && typeof proto === FUNCTION && _fnToString$1.call(proto) === _objCtrFnString;
802
+ result = proto && typeof proto === FUNCTION && _fnToString.call(proto) === _objCtrFnString;
782
803
  }
783
804
  }
784
805
  catch (ex) {
@@ -786,9 +807,7 @@ function isPlainObject(value) {
786
807
  }
787
808
  return result;
788
809
  }
789
-
790
810
  var strIndexOf = _unwrapFunction(INDEX_OF);
791
-
792
811
  function _createTimerHandler(startTimer, refreshFn, cancelFn) {
793
812
  var ref = true;
794
813
  var timerId = startTimer ? refreshFn(null) : null;
@@ -826,7 +845,6 @@ function _createTimerHandler(startTimer, refreshFn, cancelFn) {
826
845
  };
827
846
  return timer;
828
847
  }
829
-
830
848
  function _createTimeoutWith(self, startTimer, overrideFn, theArgs) {
831
849
  var isArr = isArray(overrideFn);
832
850
  var len = isArr ? overrideFn.length : 0;
@@ -849,7 +867,9 @@ function scheduleTimeout(callback, timeout) {
849
867
  return _createTimeoutWith(this, true, UNDEF_VALUE, _extractArgs(arguments, 0));
850
868
  }
851
869
 
870
+ var _DYN_TO_LOWER_CASE = "toLowerCase";
852
871
  var _DYN_LENGTH$1 = "length";
872
+ var _DYN_RD_ONLY = "rdOnly";
853
873
  var _DYN_NOTIFY = "notify";
854
874
  var _DYN_THROW_INTERNAL = "throwInternal";
855
875
  var _DYN_SET_DF = "setDf";
@@ -886,7 +906,6 @@ var _DYN_NODE_TYPE = "nodeType";
886
906
  var _DYN_REPLACE$1 = "replace";
887
907
  var _DYN_ENABLE_DEBUG_EXCEPTI5 = "enableDebugExceptions";
888
908
  var _DYN_LOG_INTERNAL_MESSAGE = "logInternalMessage";
889
- var _DYN_TO_LOWER_CASE = "toLowerCase";
890
909
  var _DYN_IS_CHILD_EVT = "isChildEvt";
891
910
  var _DYN_GET_CTX = "getCtx";
892
911
  var _DYN_SET_CTX = "setCtx";
@@ -919,10 +938,7 @@ var STR_ERROR_TO_CONSOLE = "errorToConsole";
919
938
  var STR_WARN_TO_CONSOLE = "warnToConsole";
920
939
  var STR_GET_PERF_MGR = "getPerfMgr";
921
940
 
922
- var strToString = "toString";
923
941
  var strGetPrototypeOf = "getPrototypeOf";
924
- var _fnToString = ObjClass$1[strToString];
925
- _fnToString.call(ObjClass$1);
926
942
  var rCamelCase = /-([a-z])/g;
927
943
  var rNormalizeInvalid = /([^\w\d_$])/g;
928
944
  var rLeadingNumeric = /^(\d+[\w\d_$])/;
@@ -1019,7 +1035,7 @@ function getIEVersion(userAgentStr) {
1019
1035
  if (userAgentStr === void 0) { userAgentStr = null; }
1020
1036
  if (!userAgentStr) {
1021
1037
  var navigator_1 = getNavigator() || {};
1022
- userAgentStr = navigator_1 ? (navigator_1[_DYN_USER_AGENT ] || STR_EMPTY)[_DYN_TO_LOWER_CASE ]() : STR_EMPTY;
1038
+ userAgentStr = navigator_1 ? (navigator_1.userAgent || STR_EMPTY)[_DYN_TO_LOWER_CASE ]() : STR_EMPTY;
1023
1039
  }
1024
1040
  var ua = (userAgentStr || STR_EMPTY)[_DYN_TO_LOWER_CASE ]();
1025
1041
  if (strContains(ua, strMsie)) {
@@ -1104,7 +1120,7 @@ function newId(maxLength) {
1104
1120
  }
1105
1121
 
1106
1122
  var _objDefineProperty = ObjDefineProperty;
1107
- var version = "3.0.0-beta.2302-04";
1123
+ var version = "3.0.0-beta.2302-06";
1108
1124
  var instanceName = "." + newId(6);
1109
1125
  var _dataUid = 0;
1110
1126
  function _createAccessor(target, prop, value) {
@@ -1177,39 +1193,9 @@ function createElmNodeData(name) {
1177
1193
  return data;
1178
1194
  }
1179
1195
 
1180
- var CFG_HANDLER_LINK = symbolFor("[[ai_dynCfg_1]]");
1181
- function _cfgDeepCopy(source) {
1182
- if (source) {
1183
- var target_1;
1184
- if (isArray(source)) {
1185
- target_1 = [];
1186
- target_1[_DYN_LENGTH$1 ] = source[_DYN_LENGTH$1 ];
1187
- }
1188
- else if (isPlainObject(source)) {
1189
- target_1 = {};
1190
- }
1191
- if (target_1) {
1192
- objForEachKey(source, function (key, value) {
1193
- target_1[key] = _cfgDeepCopy(value);
1194
- });
1195
- return target_1;
1196
- }
1197
- }
1198
- return source;
1196
+ function _isConfigDefaults(value) {
1197
+ return (value && isObject(value) && (value.isVal || value.fb || objHasOwn(value, "v") || objHasOwn(value, "mrg") || objHasOwn(value, "ref") || value.set));
1199
1198
  }
1200
- function getDynamicConfigHandler(value) {
1201
- if (value) {
1202
- var handler = value[CFG_HANDLER_LINK] || value;
1203
- if (handler.cfg && (handler.cfg === value || handler.cfg[CFG_HANDLER_LINK] === handler)) {
1204
- return handler;
1205
- }
1206
- }
1207
- return null;
1208
- }
1209
- function throwInvalidAccess(message) {
1210
- throwTypeError("InvalidAccess:" + message);
1211
- }
1212
-
1213
1199
  function _getDefault(dynamicHandler, theConfig, cfgDefaults) {
1214
1200
  var defValue;
1215
1201
  var isDefaultValid = cfgDefaults.dfVal || isDefined;
@@ -1224,7 +1210,7 @@ function _getDefault(dynamicHandler, theConfig, cfgDefaults) {
1224
1210
  if (isDefaultValid(fbValue)) {
1225
1211
  defValue = fbValue;
1226
1212
  }
1227
- else {
1213
+ else if (dynamicHandler) {
1228
1214
  fbValue = dynamicHandler.cfg[fallback];
1229
1215
  if (isDefaultValid(fbValue)) {
1230
1216
  defValue = fbValue;
@@ -1241,27 +1227,63 @@ function _getDefault(dynamicHandler, theConfig, cfgDefaults) {
1241
1227
  }
1242
1228
  return defValue;
1243
1229
  }
1230
+ function _resolveDefaultValue(dynamicHandler, theConfig, cfgDefaults) {
1231
+ var theValue = cfgDefaults;
1232
+ if (cfgDefaults && _isConfigDefaults(cfgDefaults)) {
1233
+ theValue = _getDefault(dynamicHandler, theConfig, cfgDefaults);
1234
+ }
1235
+ if (theValue) {
1236
+ if (_isConfigDefaults(theValue)) {
1237
+ theValue = _resolveDefaultValue(dynamicHandler, theConfig, theValue);
1238
+ }
1239
+ var newValue_1;
1240
+ if (isArray(theValue)) {
1241
+ newValue_1 = [];
1242
+ newValue_1[_DYN_LENGTH$1 ] = theValue[_DYN_LENGTH$1 ];
1243
+ }
1244
+ else if (isPlainObject(theValue)) {
1245
+ newValue_1 = {};
1246
+ }
1247
+ if (newValue_1) {
1248
+ objForEachKey(theValue, function (key, value) {
1249
+ if (value && _isConfigDefaults(value)) {
1250
+ value = _resolveDefaultValue(dynamicHandler, theConfig, value);
1251
+ }
1252
+ newValue_1[key] = value;
1253
+ });
1254
+ theValue = newValue_1;
1255
+ }
1256
+ }
1257
+ return theValue;
1258
+ }
1244
1259
  function _applyDefaultValue(dynamicHandler, theConfig, name, defaultValue) {
1245
1260
  var isValid;
1246
1261
  var setFn;
1247
1262
  var defValue;
1248
1263
  var cfgDefaults = defaultValue;
1249
- if (cfgDefaults && isObject(cfgDefaults) && (cfgDefaults.isVal || cfgDefaults.set || cfgDefaults.fb || objHasOwn(cfgDefaults, "v"))) {
1264
+ var mergeDf;
1265
+ var reference;
1266
+ var readOnly;
1267
+ if (_isConfigDefaults(cfgDefaults)) {
1250
1268
  isValid = cfgDefaults.isVal;
1251
1269
  setFn = cfgDefaults.set;
1270
+ readOnly = cfgDefaults[_DYN_RD_ONLY ];
1271
+ mergeDf = cfgDefaults.mrg;
1272
+ reference = cfgDefaults.ref;
1273
+ if (!reference && isUndefined(reference)) {
1274
+ reference = !!mergeDf;
1275
+ }
1252
1276
  defValue = _getDefault(dynamicHandler, theConfig, cfgDefaults);
1253
1277
  }
1254
1278
  else {
1255
1279
  defValue = defaultValue;
1256
1280
  }
1257
- var theValue = defValue;
1281
+ var theValue;
1258
1282
  var usingDefault = true;
1259
1283
  var cfgValue = theConfig[name];
1260
1284
  if (cfgValue || !isNullOrUndefined(cfgValue)) {
1261
1285
  theValue = cfgValue;
1262
1286
  usingDefault = false;
1263
- }
1264
- if (!usingDefault) {
1265
1287
  if (isValid && theValue !== defValue && !isValid(theValue)) {
1266
1288
  theValue = defValue;
1267
1289
  usingDefault = true;
@@ -1271,10 +1293,61 @@ function _applyDefaultValue(dynamicHandler, theConfig, name, defaultValue) {
1271
1293
  usingDefault = theValue === defValue;
1272
1294
  }
1273
1295
  }
1274
- if (theValue && usingDefault && (isPlainObject(theValue) || isArray(theValue))) {
1275
- theValue = _cfgDeepCopy(theValue);
1296
+ if (!usingDefault) {
1297
+ if (isPlainObject(theValue) || isArray(defValue)) {
1298
+ if (mergeDf && defValue && (isPlainObject(defValue) || isArray(defValue))) {
1299
+ objForEachKey(defValue, function (dfName, dfValue) {
1300
+ _applyDefaultValue(dynamicHandler, theValue, dfName, dfValue);
1301
+ });
1302
+ }
1303
+ }
1304
+ }
1305
+ else if (defValue) {
1306
+ theValue = _resolveDefaultValue(dynamicHandler, theConfig, defValue);
1307
+ }
1308
+ else {
1309
+ theValue = defValue;
1276
1310
  }
1277
1311
  dynamicHandler.set(theConfig, name, theValue);
1312
+ if (reference) {
1313
+ dynamicHandler.ref(theConfig, name);
1314
+ }
1315
+ if (readOnly) {
1316
+ dynamicHandler[_DYN_RD_ONLY ](theConfig, name);
1317
+ }
1318
+ }
1319
+
1320
+ var CFG_HANDLER_LINK = symbolFor("[[ai_dynCfg_1]]");
1321
+ function _cfgDeepCopy(source) {
1322
+ if (source) {
1323
+ var target_1;
1324
+ if (isArray(source)) {
1325
+ target_1 = [];
1326
+ target_1[_DYN_LENGTH$1 ] = source[_DYN_LENGTH$1 ];
1327
+ }
1328
+ else if (isPlainObject(source)) {
1329
+ target_1 = {};
1330
+ }
1331
+ if (target_1) {
1332
+ objForEachKey(source, function (key, value) {
1333
+ target_1[key] = _cfgDeepCopy(value);
1334
+ });
1335
+ return target_1;
1336
+ }
1337
+ }
1338
+ return source;
1339
+ }
1340
+ function getDynamicConfigHandler(value) {
1341
+ if (value) {
1342
+ var handler = value[CFG_HANDLER_LINK] || value;
1343
+ if (handler.cfg && (handler.cfg === value || handler.cfg[CFG_HANDLER_LINK] === handler)) {
1344
+ return handler;
1345
+ }
1346
+ }
1347
+ return null;
1348
+ }
1349
+ function throwInvalidAccess(message) {
1350
+ throwTypeError("InvalidAccess:" + message);
1278
1351
  }
1279
1352
 
1280
1353
  var arrayMethodsToPatch = [
@@ -1454,7 +1527,7 @@ function _createState(cfgHandler) {
1454
1527
  set: cfgHandler.set.bind(cfgHandler),
1455
1528
  setDf: cfgHandler[_DYN_SET_DF ].bind(cfgHandler),
1456
1529
  ref: cfgHandler.ref.bind(cfgHandler),
1457
- rdOnly: cfgHandler.rdOnly.bind(cfgHandler)
1530
+ rdOnly: cfgHandler[_DYN_RD_ONLY ].bind(cfgHandler)
1458
1531
  });
1459
1532
  }
1460
1533
  catch (e) {
@@ -1604,7 +1677,7 @@ function _createDynamicHandler(logger, target, inPlace) {
1604
1677
  _a[_DYN_SET_DF ] = _applyDefaults,
1605
1678
  _a[_DYN_WATCH ] = _watch,
1606
1679
  _a.ref = _ref,
1607
- _a.rdOnly = _rdOnly,
1680
+ _a[_DYN_RD_ONLY ] = _rdOnly,
1608
1681
  _a._block = _block,
1609
1682
  _a);
1610
1683
  objDefineProp(cfgHandler, "uid", (_b = {},
@@ -2564,14 +2637,14 @@ function _createFunctionHook(aiHook) {
2564
2637
  return funcArgs.rslt;
2565
2638
  };
2566
2639
  }
2567
- function _getOwner(target, name, checkPrototype) {
2640
+ function _getOwner(target, name, checkPrototype, checkParentProto) {
2568
2641
  var owner = null;
2569
2642
  if (target) {
2570
2643
  if (objHasOwnProperty(target, name)) {
2571
2644
  owner = target;
2572
2645
  }
2573
2646
  else if (checkPrototype) {
2574
- owner = _getOwner(_getObjProto(target), name, false);
2647
+ owner = _getOwner(_getObjProto(target), name, checkParentProto, false);
2575
2648
  }
2576
2649
  }
2577
2650
  return owner;
@@ -2606,10 +2679,10 @@ function _createInstrumentHook(owner, funcName, fn, callbacks) {
2606
2679
  aiHook.h[_DYN_PUSH$1 ](theHook);
2607
2680
  return theHook;
2608
2681
  }
2609
- function InstrumentFunc(target, funcName, callbacks, checkPrototype) {
2682
+ function InstrumentFunc(target, funcName, callbacks, checkPrototype, checkParentProto) {
2610
2683
  if (checkPrototype === void 0) { checkPrototype = true; }
2611
2684
  if (target && funcName && callbacks) {
2612
- var owner = _getOwner(target, funcName, checkPrototype);
2685
+ var owner = _getOwner(target, funcName, checkPrototype, checkParentProto);
2613
2686
  if (owner) {
2614
2687
  var fn = owner[funcName];
2615
2688
  if (typeof fn === strShimFunction) {