@microsoft/applicationinsights-channel-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 (30) hide show
  1. package/browser/applicationinsights-channel-js.integrity.json +9 -9
  2. package/browser/applicationinsights-channel-js.js +191 -118
  3. package/browser/applicationinsights-channel-js.js.map +1 -1
  4. package/browser/applicationinsights-channel-js.min.js +2 -2
  5. package/browser/applicationinsights-channel-js.min.js.map +1 -1
  6. package/dist/applicationinsights-channel-js.d.ts +1 -1
  7. package/dist/applicationinsights-channel-js.js +191 -118
  8. package/dist/applicationinsights-channel-js.js.map +1 -1
  9. package/dist/applicationinsights-channel-js.min.js +2 -2
  10. package/dist/applicationinsights-channel-js.min.js.map +1 -1
  11. package/dist/applicationinsights-channel-js.rollup.d.ts +1 -1
  12. package/dist-esm/EnvelopeCreator.js +2 -2
  13. package/dist-esm/EnvelopeCreator.js.map +1 -1
  14. package/dist-esm/Interfaces.js +1 -1
  15. package/dist-esm/InternalConstants.js +1 -1
  16. package/dist-esm/Offline.js +1 -1
  17. package/dist-esm/SendBuffer.js +1 -1
  18. package/dist-esm/Sender.js +17 -14
  19. package/dist-esm/Sender.js.map +1 -1
  20. package/dist-esm/Serializer.js +1 -1
  21. package/dist-esm/TelemetryProcessors/Sample.js +1 -1
  22. package/dist-esm/TelemetryProcessors/SamplingScoreGenerators/HashCodeScoreGenerator.js +1 -1
  23. package/dist-esm/TelemetryProcessors/SamplingScoreGenerators/SamplingScoreGenerator.js +1 -1
  24. package/dist-esm/__DynamicConstants.js +2 -3
  25. package/dist-esm/__DynamicConstants.js.map +1 -1
  26. package/dist-esm/applicationinsights-channel-js.js +1 -1
  27. package/package.json +3 -3
  28. package/src/Sender.ts +18 -14
  29. package/src/__DynamicConstants.ts +1 -2
  30. package/types/__DynamicConstants.d.ts +0 -1
@@ -1,25 +1,25 @@
1
1
  {
2
2
  "name": "applicationinsights-channel-js",
3
- "version": "3.0.0-beta.2302-04",
3
+ "version": "3.0.0-beta.2302-06",
4
4
  "ext": {
5
5
  "@js": {
6
6
  "file": "applicationinsights-channel-js.js",
7
7
  "type": "text/javascript; charset=utf-8",
8
- "integrity": "sha256-lu3AhKfUwmwW2EtuV7vhnehvd3BFWUX0cERC3Cx5WoU= sha384-zoBd2RDLfB6+RH07fL5NcO5Khs0jYgHNncDMxRMNxtETp+PeR+/ggvKnPTuPgDDA sha512-PxVFOSK0tIS9oMRrTP7m7sJqpIn/+IwGLpvpnAp3lJKC68gaDfRCoU+oYzs/i35VxvMqQQ0HEeIC0uuL0T4IMQ==",
8
+ "integrity": "sha256-kCS2dnmFRyO20k4cMsBI317jqaB3qvSGaX5ZmjD8xHk= sha384-E+dHW1FSTunBSVDIDkvKqPaWcusaqwr2aC7Xw3T1/2+AgkuBBKwBrmDDt2cEPmwL sha512-aEc88RKk8/qHBCrW4mS/qhlWbU7bicDLrnhOJOVH1zFuvLAb7hzazrZe0ghZLcYWBwpxtJWFUTxnOp0/pNZmew==",
9
9
  "hashes": {
10
- "sha256": "lu3AhKfUwmwW2EtuV7vhnehvd3BFWUX0cERC3Cx5WoU=",
11
- "sha384": "zoBd2RDLfB6+RH07fL5NcO5Khs0jYgHNncDMxRMNxtETp+PeR+/ggvKnPTuPgDDA",
12
- "sha512": "PxVFOSK0tIS9oMRrTP7m7sJqpIn/+IwGLpvpnAp3lJKC68gaDfRCoU+oYzs/i35VxvMqQQ0HEeIC0uuL0T4IMQ=="
10
+ "sha256": "kCS2dnmFRyO20k4cMsBI317jqaB3qvSGaX5ZmjD8xHk=",
11
+ "sha384": "E+dHW1FSTunBSVDIDkvKqPaWcusaqwr2aC7Xw3T1/2+AgkuBBKwBrmDDt2cEPmwL",
12
+ "sha512": "aEc88RKk8/qHBCrW4mS/qhlWbU7bicDLrnhOJOVH1zFuvLAb7hzazrZe0ghZLcYWBwpxtJWFUTxnOp0/pNZmew=="
13
13
  }
14
14
  },
15
15
  "@min.js": {
16
16
  "file": "applicationinsights-channel-js.min.js",
17
17
  "type": "text/javascript; charset=utf-8",
18
- "integrity": "sha256-W7NSFRvwEkTRQ4i6lsB9nDb02kfW/gs7AYnoT9Bf1eE= sha384-iKbDfbORrsJC/HUkl/kfBLWZ7VPRb76FLMtgu+nXsWVeW0quGXkrvZy0N748fRn5 sha512-iC4HwCu65oqY2Ea+6DxKkABhcXnuXBBYqbB7SuvSL63/F11oqpdfu+rODwD7MHiQ7EeZCrMOSUDceO/JU3rccQ==",
18
+ "integrity": "sha256-am4ivkipyjF7za8lVDro/jzayZMtRJVLFgnIW9JeNRE= sha384-NQXkcUc5+UQElUo9RbhSxwJPRQI0W90pqktgI8tfz+EQ+Kf1Bjvg1866MUsRSK25 sha512-aIlNGTAX2ifAWixm03QCLsE2dANTYunICAZBfmXOIHCB+01AIaVzw7A2PTGQpSYYCTzbDkIpu/wJhu8l1S/5Ug==",
19
19
  "hashes": {
20
- "sha256": "W7NSFRvwEkTRQ4i6lsB9nDb02kfW/gs7AYnoT9Bf1eE=",
21
- "sha384": "iKbDfbORrsJC/HUkl/kfBLWZ7VPRb76FLMtgu+nXsWVeW0quGXkrvZy0N748fRn5",
22
- "sha512": "iC4HwCu65oqY2Ea+6DxKkABhcXnuXBBYqbB7SuvSL63/F11oqpdfu+rODwD7MHiQ7EeZCrMOSUDceO/JU3rccQ=="
20
+ "sha256": "am4ivkipyjF7za8lVDro/jzayZMtRJVLFgnIW9JeNRE=",
21
+ "sha384": "NQXkcUc5+UQElUo9RbhSxwJPRQI0W90pqktgI8tfz+EQ+Kf1Bjvg1866MUsRSK25",
22
+ "sha512": "aIlNGTAX2ifAWixm03QCLsE2dANTYunICAZBfmXOIHCB+01AIaVzw7A2PTGQpSYYCTzbDkIpu/wJhu8l1S/5Ug=="
23
23
  }
24
24
  }
25
25
  }
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Channel, 3.0.0-beta.2302-04
2
+ * Application Insights JavaScript SDK - Channel, 3.0.0-beta.2302-06
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  (function (global, factory) {
@@ -369,6 +369,12 @@
369
369
  }
370
370
  dynamicProto[DynProtoDefaultOptions] = _gblInst.o;
371
371
 
372
+ /*!
373
+ * NevWare21 - ts-utils, 0.8.0
374
+ * https://github.com/nevware21/ts-utils
375
+ * Copyright (c) NevWare21 and contributors. All rights reserved.
376
+ * Licensed under the MIT license.
377
+ */
372
378
  var UNDEF_VALUE = undefined;
373
379
  var EMPTY = "";
374
380
  var BOOLEAN = "boolean";
@@ -389,9 +395,8 @@
389
395
  var ObjClass = Object;
390
396
  var ObjProto = ObjClass[PROTOTYPE];
391
397
  var StrCls = String;
392
- var StrProto = StrCls[PROTOTYPE];
393
398
  var ArrCls = Array;
394
-
399
+ var ArrProto = ArrCls[PROTOTYPE];
395
400
  function _safeGet(cb, defValue) {
396
401
  var result = defValue;
397
402
  try {
@@ -401,7 +406,6 @@
401
406
  }
402
407
  return result;
403
408
  }
404
-
405
409
  function _createIs(theType) {
406
410
  return function (value) {
407
411
  return typeof value === theType;
@@ -440,18 +444,14 @@
440
444
  function isTruthy(value) {
441
445
  return !(!value || _safeGet(function () { return !(value && (0 + value)); }, !value));
442
446
  }
443
-
444
447
  var objGetOwnPropertyDescriptor = ObjClass.getOwnPropertyDescriptor;
445
-
446
448
  function objHasOwnProperty(obj, prop) {
447
449
  return obj && ObjProto[HAS_OWN_PROPERTY].call(obj, prop);
448
450
  }
449
-
450
451
  var objHasOwn = ObjClass["hasOwn"] || polyObjHasOwn;
451
452
  function polyObjHasOwn(obj, prop) {
452
453
  return objHasOwnProperty(obj, prop) || !!objGetOwnPropertyDescriptor(obj, prop);
453
454
  }
454
-
455
455
  function objForEachKey(theObject, callbackfn, thisArg) {
456
456
  if (theObject && isObject(theObject)) {
457
457
  for (var prop in theObject) {
@@ -463,7 +463,6 @@
463
463
  }
464
464
  }
465
465
  }
466
-
467
466
  function _createKeyValueMap(values, keyType, valueType, completeFn) {
468
467
  var theMap = {};
469
468
  objForEachKey(values, function (key, value) {
@@ -472,14 +471,11 @@
472
471
  });
473
472
  return completeFn(theMap);
474
473
  }
475
-
476
474
  function throwTypeError(message) {
477
475
  throw new TypeError(message);
478
476
  }
479
-
480
477
  var _objFreeze = ObjClass["freeze"];
481
478
  var _doNothing = function (value) { return value; };
482
- ObjClass["assign"];
483
479
  function objKeys(value) {
484
480
  if (!isObject(value) || value === null) {
485
481
  throwTypeError("objKeys called on non-object");
@@ -497,11 +493,12 @@
497
493
  return objFreeze(value);
498
494
  }
499
495
  var objFreeze = _objFreeze || _doNothing;
500
- ObjClass["seal"] || _doNothing;
501
496
  var objGetPrototypeOf = ObjClass["getPrototypeOf"] || _doNothing;
502
-
503
497
  function createEnum(values) {
504
- return _createKeyValueMap(values, 1, 0, objDeepFreeze);
498
+ return _createKeyValueMap(values, 1 , 0 , objDeepFreeze);
499
+ }
500
+ function createEnumKeyMap(values) {
501
+ return _createKeyValueMap(values, 0 , 0 , objDeepFreeze);
505
502
  }
506
503
  function createSimpleMap(values) {
507
504
  var mapClass = {};
@@ -514,9 +511,22 @@
514
511
  function createTypeMap(values) {
515
512
  return createSimpleMap(values);
516
513
  }
517
-
514
+ createEnumKeyMap({
515
+ asyncIterator: 0 ,
516
+ hasInstance: 1 ,
517
+ isConcatSpreadable: 2 ,
518
+ iterator: 3 ,
519
+ match: 4 ,
520
+ matchAll: 5 ,
521
+ replace: 6 ,
522
+ search: 7 ,
523
+ species: 8 ,
524
+ split: 9 ,
525
+ toPrimitive: 10 ,
526
+ toStringTag: 11 ,
527
+ unscopables: 12
528
+ });
518
529
  var asString = StrCls;
519
-
520
530
  var GLOBAL_CONFIG_KEY = "__tsUtils$gblCfg";
521
531
  var _globalCfg;
522
532
  function _getGlobalValue() {
@@ -542,7 +552,6 @@
542
552
  }
543
553
  return _globalCfg;
544
554
  }
545
-
546
555
  function dumpObj(object, format) {
547
556
  var propertyValueDump = "";
548
557
  if (isError(object)) {
@@ -558,7 +567,6 @@
558
567
  }
559
568
  return objToString(object) + ": " + propertyValueDump;
560
569
  }
561
-
562
570
  function _extractArgs(args, startAt) {
563
571
  var theArgs = [];
564
572
  for (var lp = startAt; lp < args[LENGTH]; lp++) {
@@ -566,17 +574,20 @@
566
574
  }
567
575
  return theArgs;
568
576
  }
569
-
570
- function _unwrapFunction(funcName) {
577
+ function _unwrapFunction(funcName, target, polyFunc) {
571
578
  return function (thisArg) {
572
- var args = _extractArgs(arguments, 1);
573
- if ((thisArg || thisArg === EMPTY) && thisArg[funcName]) {
574
- return thisArg[funcName].apply(thisArg, args);
579
+ if ((thisArg || thisArg === EMPTY)) {
580
+ var theFunc = thisArg[funcName] || (target && target[funcName]);
581
+ if (theFunc) {
582
+ return theFunc.apply(thisArg, _extractArgs(arguments, 1));
583
+ }
584
+ if (polyFunc) {
585
+ return polyFunc.apply(thisArg, arguments);
586
+ }
575
587
  }
576
- throwTypeError("'" + funcName + "' not defined for " + dumpObj(thisArg));
588
+ throwTypeError("'" + asString(funcName) + "' not defined for " + dumpObj(thisArg));
577
589
  };
578
590
  }
579
-
580
591
  var _polySymbols;
581
592
  function _globalSymbolRegistry() {
582
593
  if (!_polySymbols) {
@@ -602,7 +613,6 @@
602
613
  }
603
614
  return registry.k[key];
604
615
  }
605
-
606
616
  var propMap = {
607
617
  e: "enumerable",
608
618
  c: "configurable",
@@ -620,7 +630,7 @@
620
630
  });
621
631
  return prop;
622
632
  }
623
- var objDefineProp = ObjClass.defineProperty;
633
+ var objDefineProp = ObjClass["defineProperty"];
624
634
  function objDefineAccessors(target, prop, getProp, setProp, configurable, enumerable) {
625
635
  var desc = {
626
636
  e: enumerable,
@@ -637,7 +647,6 @@
637
647
  function objDefine(target, key, propDesc) {
638
648
  return objDefineProp(target, key, _createProp(propDesc));
639
649
  }
640
-
641
650
  var _globalLazyTestHooks;
642
651
  var _fetchLazyTestHooks = function () {
643
652
  _globalLazyTestHooks = _getGlobalConfig();
@@ -664,11 +673,9 @@
664
673
  });
665
674
  return lazyValue;
666
675
  }
667
-
668
676
  function _lazySafeGet(cb, defValue) {
669
677
  return getLazy(function () { return _safeGet(cb, defValue); });
670
678
  }
671
-
672
679
  var DOCUMENT = "document";
673
680
  var NAVIGATOR = "navigator";
674
681
  var WINDOW = "window";
@@ -711,7 +718,6 @@
711
718
  (!_cachedNavigator || (_globalLazyTestHooks.lzy && !_cachedNavigator.b)) && (_cachedNavigator = _lazySafeGetInst(NAVIGATOR));
712
719
  return _cachedNavigator.v;
713
720
  }
714
-
715
721
  var _symbol;
716
722
  var _symbolFor;
717
723
  var _symbolKeyFor;
@@ -735,11 +741,9 @@
735
741
  (!_symbolFor || (_globalLazyTestHooks.lzy && !_symbol.b)) && getSymbol();
736
742
  return (_symbolFor.v || polySymbolFor)(key);
737
743
  }
738
-
739
744
  function isIterator(value) {
740
745
  return !!value && isFunction(value.next);
741
746
  }
742
-
743
747
  function arrAppend(target, elms) {
744
748
  if (!isUndefined(elms) && target) {
745
749
  if (isArray(elms)) {
@@ -758,24 +762,20 @@
758
762
  }
759
763
  return target;
760
764
  }
761
-
762
- function arrForEach(arr, callbackfn, thisArg) {
763
- if (arr) {
764
- var len = arr[LENGTH];
765
+ function arrForEach(theArray, callbackfn, thisArg) {
766
+ if (theArray) {
767
+ var len = theArray[LENGTH] >>> 0;
765
768
  for (var idx = 0; idx < len; idx++) {
766
- if (idx in arr) {
767
- if (callbackfn.call(thisArg || arr, arr[idx], idx, arr) === -1) {
769
+ if (idx in theArray) {
770
+ if (callbackfn.call(thisArg || theArray, theArray[idx], idx, theArray) === -1) {
768
771
  break;
769
772
  }
770
773
  }
771
774
  }
772
775
  }
773
776
  }
774
-
775
- var arrIndexOf = _unwrapFunction(INDEX_OF);
776
-
777
- var arrMap = _unwrapFunction("map");
778
-
777
+ var arrIndexOf = _unwrapFunction(INDEX_OF, ArrProto);
778
+ var arrMap = _unwrapFunction("map", ArrProto);
779
779
  function objSetPrototypeOf(obj, proto) {
780
780
  var fn = ObjClass["setPrototypeOf"] ||
781
781
  ({ __proto__: [] } instanceof Array && function (d, b) {
@@ -786,7 +786,6 @@
786
786
  };
787
787
  return fn(obj, proto);
788
788
  }
789
-
790
789
  function _createCustomError(name, d, b) {
791
790
  objSetPrototypeOf(d, b);
792
791
  function __() {
@@ -807,15 +806,13 @@
807
806
  }, baseClass);
808
807
  return customError;
809
808
  }
810
-
811
809
  function utcNow() {
812
810
  return (Date.now || polyUtcNow)();
813
811
  }
814
812
  function polyUtcNow() {
815
813
  return new Date().getTime();
816
814
  }
817
-
818
- var _fnToString$1;
815
+ var _fnToString;
819
816
  var _objCtrFnString;
820
817
  var _gblWindow;
821
818
  function isPlainObject(value) {
@@ -828,8 +825,8 @@
828
825
  var result = false;
829
826
  if (value !== _gblWindow) {
830
827
  if (!_objCtrFnString) {
831
- _fnToString$1 = Function[PROTOTYPE].toString;
832
- _objCtrFnString = _fnToString$1.call(ObjClass);
828
+ _fnToString = Function[PROTOTYPE].toString;
829
+ _objCtrFnString = _fnToString.call(ObjClass);
833
830
  }
834
831
  try {
835
832
  var proto = objGetPrototypeOf(value);
@@ -838,7 +835,7 @@
838
835
  if (objHasOwnProperty(proto, CONSTRUCTOR)) {
839
836
  proto = proto[CONSTRUCTOR];
840
837
  }
841
- result = proto && typeof proto === FUNCTION && _fnToString$1.call(proto) === _objCtrFnString;
838
+ result = proto && typeof proto === FUNCTION && _fnToString.call(proto) === _objCtrFnString;
842
839
  }
843
840
  }
844
841
  catch (ex) {
@@ -846,9 +843,7 @@
846
843
  }
847
844
  return result;
848
845
  }
849
-
850
846
  var strIndexOf = _unwrapFunction(INDEX_OF);
851
-
852
847
  function _createTrimFn(exp) {
853
848
  return function _doTrim(value) {
854
849
  if (isNullOrUndefined(value)) {
@@ -861,10 +856,8 @@
861
856
  };
862
857
  }
863
858
  var polyStrTrim = _createTrimFn(/^\s+|(?=\s)\s+$/g);
864
-
865
859
  var TRIM = "trim";
866
- var strTrim = StrProto[TRIM] ? _unwrapFunction(TRIM) : polyStrTrim;
867
-
860
+ var strTrim = _unwrapFunction(TRIM, UNDEF_VALUE, polyStrTrim);
868
861
  function _createTimerHandler(startTimer, refreshFn, cancelFn) {
869
862
  var ref = true;
870
863
  var timerId = startTimer ? refreshFn(null) : null;
@@ -902,7 +895,6 @@
902
895
  };
903
896
  return timer;
904
897
  }
905
-
906
898
  function _createTimeoutWith(self, startTimer, overrideFn, theArgs) {
907
899
  var isArr = isArray(overrideFn);
908
900
  var len = isArr ? overrideFn.length : 0;
@@ -928,7 +920,9 @@
928
920
  var createEnumStyle = createEnum;
929
921
  var createValueMap = createTypeMap;
930
922
 
923
+ var _DYN_TO_LOWER_CASE$1 = "toLowerCase";
931
924
  var _DYN_LENGTH$2 = "length";
925
+ var _DYN_RD_ONLY = "rdOnly";
932
926
  var _DYN_NOTIFY = "notify";
933
927
  var _DYN_THROW_INTERNAL = "throwInternal";
934
928
  var _DYN_SET_DF = "setDf";
@@ -965,7 +959,6 @@
965
959
  var _DYN_REPLACE = "replace";
966
960
  var _DYN_ENABLE_DEBUG_EXCEPTI5 = "enableDebugExceptions";
967
961
  var _DYN_LOG_INTERNAL_MESSAGE = "logInternalMessage";
968
- var _DYN_TO_LOWER_CASE$1 = "toLowerCase";
969
962
  var _DYN_TYPE = "type";
970
963
  var _DYN_HANDLER = "handler";
971
964
  var _DYN_IS_CHILD_EVT = "isChildEvt";
@@ -1001,9 +994,6 @@
1001
994
  var STR_GET_PERF_MGR = "getPerfMgr";
1002
995
  var STR_NOT_DYNAMIC_ERROR = "Not dynamic - ";
1003
996
 
1004
- var strToString = "toString";
1005
- var _fnToString = ObjClass$1[strToString];
1006
- _fnToString.call(ObjClass$1);
1007
997
  var rCamelCase = /-([a-z])/g;
1008
998
  var rNormalizeInvalid = /([^\w\d_$])/g;
1009
999
  var rLeadingNumeric = /^(\d+[\w\d_$])/;
@@ -1210,7 +1200,7 @@
1210
1200
  if (userAgentStr === void 0) { userAgentStr = null; }
1211
1201
  if (!userAgentStr) {
1212
1202
  var navigator_1 = getNavigator() || {};
1213
- userAgentStr = navigator_1 ? (navigator_1[_DYN_USER_AGENT ] || STR_EMPTY)[_DYN_TO_LOWER_CASE$1 ]() : STR_EMPTY;
1203
+ userAgentStr = navigator_1 ? (navigator_1.userAgent || STR_EMPTY)[_DYN_TO_LOWER_CASE$1 ]() : STR_EMPTY;
1214
1204
  }
1215
1205
  var ua = (userAgentStr || STR_EMPTY)[_DYN_TO_LOWER_CASE$1 ]();
1216
1206
  if (strContains(ua, strMsie)) {
@@ -1333,7 +1323,7 @@
1333
1323
  }
1334
1324
 
1335
1325
  var _objDefineProperty = ObjDefineProperty;
1336
- var version = "3.0.0-beta.2302-04";
1326
+ var version = "3.0.0-beta.2302-06";
1337
1327
  var instanceName = "." + newId(6);
1338
1328
  var _dataUid = 0;
1339
1329
  function _createAccessor(target, prop, value) {
@@ -1406,39 +1396,9 @@
1406
1396
  return data;
1407
1397
  }
1408
1398
 
1409
- var CFG_HANDLER_LINK = symbolFor("[[ai_dynCfg_1]]");
1410
- function _cfgDeepCopy(source) {
1411
- if (source) {
1412
- var target_1;
1413
- if (isArray(source)) {
1414
- target_1 = [];
1415
- target_1[_DYN_LENGTH$2 ] = source[_DYN_LENGTH$2 ];
1416
- }
1417
- else if (isPlainObject(source)) {
1418
- target_1 = {};
1419
- }
1420
- if (target_1) {
1421
- objForEachKey(source, function (key, value) {
1422
- target_1[key] = _cfgDeepCopy(value);
1423
- });
1424
- return target_1;
1425
- }
1426
- }
1427
- return source;
1428
- }
1429
- function getDynamicConfigHandler(value) {
1430
- if (value) {
1431
- var handler = value[CFG_HANDLER_LINK] || value;
1432
- if (handler.cfg && (handler.cfg === value || handler.cfg[CFG_HANDLER_LINK] === handler)) {
1433
- return handler;
1434
- }
1435
- }
1436
- return null;
1399
+ function _isConfigDefaults(value) {
1400
+ return (value && isObject(value) && (value.isVal || value.fb || objHasOwn(value, "v") || objHasOwn(value, "mrg") || objHasOwn(value, "ref") || value.set));
1437
1401
  }
1438
- function throwInvalidAccess(message) {
1439
- throwTypeError("InvalidAccess:" + message);
1440
- }
1441
-
1442
1402
  function _getDefault(dynamicHandler, theConfig, cfgDefaults) {
1443
1403
  var defValue;
1444
1404
  var isDefaultValid = cfgDefaults.dfVal || isDefined;
@@ -1453,7 +1413,7 @@
1453
1413
  if (isDefaultValid(fbValue)) {
1454
1414
  defValue = fbValue;
1455
1415
  }
1456
- else {
1416
+ else if (dynamicHandler) {
1457
1417
  fbValue = dynamicHandler.cfg[fallback];
1458
1418
  if (isDefaultValid(fbValue)) {
1459
1419
  defValue = fbValue;
@@ -1470,27 +1430,63 @@
1470
1430
  }
1471
1431
  return defValue;
1472
1432
  }
1433
+ function _resolveDefaultValue(dynamicHandler, theConfig, cfgDefaults) {
1434
+ var theValue = cfgDefaults;
1435
+ if (cfgDefaults && _isConfigDefaults(cfgDefaults)) {
1436
+ theValue = _getDefault(dynamicHandler, theConfig, cfgDefaults);
1437
+ }
1438
+ if (theValue) {
1439
+ if (_isConfigDefaults(theValue)) {
1440
+ theValue = _resolveDefaultValue(dynamicHandler, theConfig, theValue);
1441
+ }
1442
+ var newValue_1;
1443
+ if (isArray(theValue)) {
1444
+ newValue_1 = [];
1445
+ newValue_1[_DYN_LENGTH$2 ] = theValue[_DYN_LENGTH$2 ];
1446
+ }
1447
+ else if (isPlainObject(theValue)) {
1448
+ newValue_1 = {};
1449
+ }
1450
+ if (newValue_1) {
1451
+ objForEachKey(theValue, function (key, value) {
1452
+ if (value && _isConfigDefaults(value)) {
1453
+ value = _resolveDefaultValue(dynamicHandler, theConfig, value);
1454
+ }
1455
+ newValue_1[key] = value;
1456
+ });
1457
+ theValue = newValue_1;
1458
+ }
1459
+ }
1460
+ return theValue;
1461
+ }
1473
1462
  function _applyDefaultValue(dynamicHandler, theConfig, name, defaultValue) {
1474
1463
  var isValid;
1475
1464
  var setFn;
1476
1465
  var defValue;
1477
1466
  var cfgDefaults = defaultValue;
1478
- if (cfgDefaults && isObject(cfgDefaults) && (cfgDefaults.isVal || cfgDefaults.set || cfgDefaults.fb || objHasOwn(cfgDefaults, "v"))) {
1467
+ var mergeDf;
1468
+ var reference;
1469
+ var readOnly;
1470
+ if (_isConfigDefaults(cfgDefaults)) {
1479
1471
  isValid = cfgDefaults.isVal;
1480
1472
  setFn = cfgDefaults.set;
1473
+ readOnly = cfgDefaults[_DYN_RD_ONLY ];
1474
+ mergeDf = cfgDefaults.mrg;
1475
+ reference = cfgDefaults.ref;
1476
+ if (!reference && isUndefined(reference)) {
1477
+ reference = !!mergeDf;
1478
+ }
1481
1479
  defValue = _getDefault(dynamicHandler, theConfig, cfgDefaults);
1482
1480
  }
1483
1481
  else {
1484
1482
  defValue = defaultValue;
1485
1483
  }
1486
- var theValue = defValue;
1484
+ var theValue;
1487
1485
  var usingDefault = true;
1488
1486
  var cfgValue = theConfig[name];
1489
1487
  if (cfgValue || !isNullOrUndefined(cfgValue)) {
1490
1488
  theValue = cfgValue;
1491
1489
  usingDefault = false;
1492
- }
1493
- if (!usingDefault) {
1494
1490
  if (isValid && theValue !== defValue && !isValid(theValue)) {
1495
1491
  theValue = defValue;
1496
1492
  usingDefault = true;
@@ -1500,10 +1496,61 @@
1500
1496
  usingDefault = theValue === defValue;
1501
1497
  }
1502
1498
  }
1503
- if (theValue && usingDefault && (isPlainObject(theValue) || isArray(theValue))) {
1504
- theValue = _cfgDeepCopy(theValue);
1499
+ if (!usingDefault) {
1500
+ if (isPlainObject(theValue) || isArray(defValue)) {
1501
+ if (mergeDf && defValue && (isPlainObject(defValue) || isArray(defValue))) {
1502
+ objForEachKey(defValue, function (dfName, dfValue) {
1503
+ _applyDefaultValue(dynamicHandler, theValue, dfName, dfValue);
1504
+ });
1505
+ }
1506
+ }
1507
+ }
1508
+ else if (defValue) {
1509
+ theValue = _resolveDefaultValue(dynamicHandler, theConfig, defValue);
1510
+ }
1511
+ else {
1512
+ theValue = defValue;
1505
1513
  }
1506
1514
  dynamicHandler.set(theConfig, name, theValue);
1515
+ if (reference) {
1516
+ dynamicHandler.ref(theConfig, name);
1517
+ }
1518
+ if (readOnly) {
1519
+ dynamicHandler[_DYN_RD_ONLY ](theConfig, name);
1520
+ }
1521
+ }
1522
+
1523
+ var CFG_HANDLER_LINK = symbolFor("[[ai_dynCfg_1]]");
1524
+ function _cfgDeepCopy(source) {
1525
+ if (source) {
1526
+ var target_1;
1527
+ if (isArray(source)) {
1528
+ target_1 = [];
1529
+ target_1[_DYN_LENGTH$2 ] = source[_DYN_LENGTH$2 ];
1530
+ }
1531
+ else if (isPlainObject(source)) {
1532
+ target_1 = {};
1533
+ }
1534
+ if (target_1) {
1535
+ objForEachKey(source, function (key, value) {
1536
+ target_1[key] = _cfgDeepCopy(value);
1537
+ });
1538
+ return target_1;
1539
+ }
1540
+ }
1541
+ return source;
1542
+ }
1543
+ function getDynamicConfigHandler(value) {
1544
+ if (value) {
1545
+ var handler = value[CFG_HANDLER_LINK] || value;
1546
+ if (handler.cfg && (handler.cfg === value || handler.cfg[CFG_HANDLER_LINK] === handler)) {
1547
+ return handler;
1548
+ }
1549
+ }
1550
+ return null;
1551
+ }
1552
+ function throwInvalidAccess(message) {
1553
+ throwTypeError("InvalidAccess:" + message);
1507
1554
  }
1508
1555
 
1509
1556
  var arrayMethodsToPatch = [
@@ -1683,7 +1730,7 @@
1683
1730
  set: cfgHandler.set.bind(cfgHandler),
1684
1731
  setDf: cfgHandler[_DYN_SET_DF ].bind(cfgHandler),
1685
1732
  ref: cfgHandler.ref.bind(cfgHandler),
1686
- rdOnly: cfgHandler.rdOnly.bind(cfgHandler)
1733
+ rdOnly: cfgHandler[_DYN_RD_ONLY ].bind(cfgHandler)
1687
1734
  });
1688
1735
  }
1689
1736
  catch (e) {
@@ -1833,7 +1880,7 @@
1833
1880
  _a[_DYN_SET_DF ] = _applyDefaults,
1834
1881
  _a[_DYN_WATCH ] = _watch,
1835
1882
  _a.ref = _ref,
1836
- _a.rdOnly = _rdOnly,
1883
+ _a[_DYN_RD_ONLY ] = _rdOnly,
1837
1884
  _a._block = _block,
1838
1885
  _a);
1839
1886
  objDefineProp(cfgHandler, "uid", (_b = {},
@@ -1871,6 +1918,30 @@
1871
1918
  createDynamicConfig(config, null, logger)[_DYN_WATCH ](configHandler);
1872
1919
  }
1873
1920
 
1921
+ function _stringToBoolOrDefault(theValue, defaultValue, theConfig) {
1922
+ if (!theValue && isNullOrUndefined(theValue)) {
1923
+ return defaultValue;
1924
+ }
1925
+ if (isBoolean(theValue)) {
1926
+ return theValue;
1927
+ }
1928
+ return asString(theValue)[_DYN_TO_LOWER_CASE$1 ]() === "true";
1929
+ }
1930
+ function cfgDfValidate(validator, defaultValue, fallBackName) {
1931
+ return {
1932
+ fb: fallBackName,
1933
+ isVal: validator,
1934
+ v: defaultValue
1935
+ };
1936
+ }
1937
+ function cfgDfBoolean(defaultValue, fallBackName) {
1938
+ return {
1939
+ fb: fallBackName,
1940
+ set: _stringToBoolOrDefault,
1941
+ v: !!defaultValue
1942
+ };
1943
+ }
1944
+
1874
1945
  var _aiNamespace = null;
1875
1946
  function _getExtensionNamespace() {
1876
1947
  var target = getInst("Microsoft");
@@ -4054,7 +4125,6 @@
4054
4125
  var _DYN_IS_BEACON_API_DISABL3 = "isBeaconApiDisabled";
4055
4126
  var _DYN_ENABLE_SESSION_STORA4 = "enableSessionStorageBuffer";
4056
4127
  var _DYN__BUFFER = "_buffer";
4057
- var _DYN_SAMPLING_PERCENTAGE = "samplingPercentage";
4058
4128
  var _DYN_INSTRUMENTATION_KEY = "instrumentationKey";
4059
4129
  var _DYN_DISABLE_XHR = "disableXhr";
4060
4130
  var _DYN_ONUNLOAD_DISABLE_FET5 = "onunloadDisableFetch";
@@ -4182,7 +4252,7 @@
4182
4252
  }
4183
4253
  }
4184
4254
  var EnvelopeCreator = {
4185
- Version: "3.0.0-beta.2302-04"
4255
+ Version: "3.0.0-beta.2302-06"
4186
4256
  };
4187
4257
  function DependencyEnvelopeCreator(logger, telemetryItem, customUndefinedValue) {
4188
4258
  EnvelopeCreatorInit(logger, telemetryItem);
@@ -4842,25 +4912,28 @@
4842
4912
  return null;
4843
4913
  }
4844
4914
  var defaultAppInsightsChannelConfig = objDeepFreeze((_a = {
4845
- endpointUrl: { isVal: isTruthy, v: DEFAULT_BREEZE_ENDPOINT + DEFAULT_BREEZE_PATH }
4915
+ endpointUrl: cfgDfValidate(isTruthy, DEFAULT_BREEZE_ENDPOINT + DEFAULT_BREEZE_PATH)
4846
4916
  },
4847
- _a[_DYN_EMIT_LINE_DELIMITED_0 ] = false,
4917
+ _a[_DYN_EMIT_LINE_DELIMITED_0 ] = cfgDfBoolean(),
4848
4918
  _a[_DYN_MAX_BATCH_INTERVAL ] = 15000,
4849
4919
  _a[_DYN_MAX_BATCH_SIZE_IN_BY1 ] = 102400,
4850
- _a.disableTelemetry = false,
4851
- _a[_DYN_ENABLE_SESSION_STORA4 ] = true,
4852
- _a.isRetryDisabled = false,
4853
- _a.isBeaconApiDisabled = true,
4854
- _a[_DYN_DISABLE_XHR ] = false,
4855
- _a[_DYN_ONUNLOAD_DISABLE_FET5 ] = false,
4856
- _a[_DYN_ONUNLOAD_DISABLE_BEA2 ] = false,
4920
+ _a.disableTelemetry = cfgDfBoolean(),
4921
+ _a[_DYN_ENABLE_SESSION_STORA4 ] = cfgDfBoolean(true),
4922
+ _a.isRetryDisabled = cfgDfBoolean(),
4923
+ _a[_DYN_IS_BEACON_API_DISABL3 ] = cfgDfBoolean(true),
4924
+ _a[_DYN_DISABLE_XHR ] = cfgDfBoolean(),
4925
+ _a[_DYN_ONUNLOAD_DISABLE_FET5 ] = cfgDfBoolean(),
4926
+ _a[_DYN_ONUNLOAD_DISABLE_BEA2 ] = cfgDfBoolean(),
4857
4927
  _a[_DYN_INSTRUMENTATION_KEY ] = UNDEFINED_VALUE,
4858
4928
  _a.namePrefix = UNDEFINED_VALUE,
4859
- _a[_DYN_SAMPLING_PERCENTAGE ] = 100,
4929
+ _a.samplingPercentage = cfgDfValidate(_chkSampling, 100),
4860
4930
  _a[_DYN_CUSTOM_HEADERS ] = UNDEFINED_VALUE,
4861
4931
  _a[_DYN_CONVERT_UNDEFINED ] = UNDEFINED_VALUE,
4862
4932
  _a[_DYN_EVENTS_LIMIT_IN_MEM ] = 10000,
4863
4933
  _a));
4934
+ function _chkSampling(value) {
4935
+ return !isNaN(value) && value > 0 && value <= 100;
4936
+ }
4864
4937
  var EnvelopeTypeCreator = (_b = {},
4865
4938
  _b[Event.dataType] = EventEnvelopeCreator,
4866
4939
  _b[Trace.dataType] = TraceEnvelopeCreator,
@@ -5002,7 +5075,7 @@
5002
5075
  }
5003
5076
  _namePrefix = namePrefix;
5004
5077
  _sessionStorageUsed = canUseSessionStorage;
5005
- _self._sample = new Sample(senderConfig[_DYN_SAMPLING_PERCENTAGE ], diagLog);
5078
+ _self._sample = new Sample(senderConfig.samplingPercentage, diagLog);
5006
5079
  _instrumentationKey = senderConfig[_DYN_INSTRUMENTATION_KEY ];
5007
5080
  if (!_validateInstrumentationKey(_instrumentationKey, config)) {
5008
5081
  _throwInternal(diagLog, 1 , 100 , "Invalid Instrumentation key " + _instrumentationKey);