@microsoft/applicationinsights-core-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 (101) hide show
  1. package/README.md +2 -1
  2. package/browser/applicationinsights-core-js.integrity.json +9 -9
  3. package/browser/applicationinsights-core-js.js +236 -141
  4. package/browser/applicationinsights-core-js.js.map +1 -1
  5. package/browser/applicationinsights-core-js.min.js +2 -2
  6. package/browser/applicationinsights-core-js.min.js.map +1 -1
  7. package/dist/applicationinsights-core-js.api.json +813 -41
  8. package/dist/applicationinsights-core-js.api.md +27 -6
  9. package/dist/applicationinsights-core-js.d.ts +82 -7
  10. package/dist/applicationinsights-core-js.js +236 -141
  11. package/dist/applicationinsights-core-js.js.map +1 -1
  12. package/dist/applicationinsights-core-js.min.js +2 -2
  13. package/dist/applicationinsights-core-js.min.js.map +1 -1
  14. package/dist/applicationinsights-core-js.rollup.d.ts +82 -7
  15. package/dist-esm/Config/ConfigDefaultHelpers.js +103 -0
  16. package/dist-esm/Config/ConfigDefaultHelpers.js.map +1 -0
  17. package/dist-esm/Config/ConfigDefaults.js +81 -11
  18. package/dist-esm/Config/ConfigDefaults.js.map +1 -1
  19. package/dist-esm/Config/DynamicConfig.js +3 -3
  20. package/dist-esm/Config/DynamicConfig.js.map +1 -1
  21. package/dist-esm/Config/DynamicProperty.js +1 -1
  22. package/dist-esm/Config/DynamicState.js +3 -3
  23. package/dist-esm/Config/DynamicState.js.map +1 -1
  24. package/dist-esm/Config/DynamicSupport.js +1 -1
  25. package/dist-esm/Config/IConfigDefaults.js +1 -1
  26. package/dist-esm/Config/IDynamicConfigHandler.js +1 -1
  27. package/dist-esm/Config/IDynamicPropertyHandler.js +1 -1
  28. package/dist-esm/Config/IDynamicWatcher.js +1 -1
  29. package/dist-esm/Config/_IDynamicConfigHandlerState.js +1 -1
  30. package/dist-esm/JavaScriptSDK/AggregationError.js +1 -1
  31. package/dist-esm/JavaScriptSDK/AppInsightsCore.js +2 -2
  32. package/dist-esm/JavaScriptSDK/AppInsightsCore.js.map +1 -1
  33. package/dist-esm/JavaScriptSDK/BaseTelemetryPlugin.js +1 -1
  34. package/dist-esm/JavaScriptSDK/Constants.js +1 -1
  35. package/dist-esm/JavaScriptSDK/CookieMgr.js +17 -15
  36. package/dist-esm/JavaScriptSDK/CookieMgr.js.map +1 -1
  37. package/dist-esm/JavaScriptSDK/CoreUtils.js +1 -1
  38. package/dist-esm/JavaScriptSDK/DataCacheHelper.js +2 -2
  39. package/dist-esm/JavaScriptSDK/DataCacheHelper.js.map +1 -1
  40. package/dist-esm/JavaScriptSDK/DbgExtensionUtils.js +1 -1
  41. package/dist-esm/JavaScriptSDK/DiagnosticLogger.js +1 -1
  42. package/dist-esm/JavaScriptSDK/EnvUtils.js +3 -3
  43. package/dist-esm/JavaScriptSDK/EnvUtils.js.map +1 -1
  44. package/dist-esm/JavaScriptSDK/EventHelpers.js +1 -1
  45. package/dist-esm/JavaScriptSDK/HelperFuncs.js +1 -10
  46. package/dist-esm/JavaScriptSDK/HelperFuncs.js.map +1 -1
  47. package/dist-esm/JavaScriptSDK/InstrumentHooks.js +12 -9
  48. package/dist-esm/JavaScriptSDK/InstrumentHooks.js.map +1 -1
  49. package/dist-esm/JavaScriptSDK/InternalConstants.js +1 -1
  50. package/dist-esm/JavaScriptSDK/NotificationManager.js +1 -1
  51. package/dist-esm/JavaScriptSDK/PerfManager.js +1 -1
  52. package/dist-esm/JavaScriptSDK/ProcessTelemetryContext.js +1 -1
  53. package/dist-esm/JavaScriptSDK/RandomHelper.js +1 -1
  54. package/dist-esm/JavaScriptSDK/TelemetryHelpers.js +1 -1
  55. package/dist-esm/JavaScriptSDK/TelemetryInitializerPlugin.js +1 -1
  56. package/dist-esm/JavaScriptSDK/UnloadHandlerContainer.js +1 -1
  57. package/dist-esm/JavaScriptSDK/UnloadHookContainer.js +1 -1
  58. package/dist-esm/JavaScriptSDK/W3cTraceParent.js +6 -5
  59. package/dist-esm/JavaScriptSDK/W3cTraceParent.js.map +1 -1
  60. package/dist-esm/JavaScriptSDK.Enums/EnumHelperFuncs.js +1 -1
  61. package/dist-esm/JavaScriptSDK.Enums/EventsDiscardedReason.js +1 -1
  62. package/dist-esm/JavaScriptSDK.Enums/LoggingEnums.js +1 -1
  63. package/dist-esm/JavaScriptSDK.Enums/SendRequestReason.js +1 -1
  64. package/dist-esm/JavaScriptSDK.Enums/TelemetryUnloadReason.js +1 -1
  65. package/dist-esm/JavaScriptSDK.Enums/TelemetryUpdateReason.js +1 -1
  66. package/dist-esm/JavaScriptSDK.Interfaces/IAppInsightsCore.js +1 -1
  67. package/dist-esm/JavaScriptSDK.Interfaces/IChannelControls.js +1 -1
  68. package/dist-esm/JavaScriptSDK.Interfaces/IConfiguration.js +1 -1
  69. package/dist-esm/JavaScriptSDK.Interfaces/ICookieMgr.js +1 -1
  70. package/dist-esm/JavaScriptSDK.Interfaces/IDbgExtension.js +1 -1
  71. package/dist-esm/JavaScriptSDK.Interfaces/IDiagnosticLogger.js +1 -1
  72. package/dist-esm/JavaScriptSDK.Interfaces/IDistributedTraceContext.js +1 -1
  73. package/dist-esm/JavaScriptSDK.Interfaces/IInstrumentHooks.js +1 -1
  74. package/dist-esm/JavaScriptSDK.Interfaces/INotificationListener.js +1 -1
  75. package/dist-esm/JavaScriptSDK.Interfaces/INotificationManager.js +1 -1
  76. package/dist-esm/JavaScriptSDK.Interfaces/IPerfEvent.js +1 -1
  77. package/dist-esm/JavaScriptSDK.Interfaces/IPerfManager.js +1 -1
  78. package/dist-esm/JavaScriptSDK.Interfaces/IProcessTelemetryContext.js +1 -1
  79. package/dist-esm/JavaScriptSDK.Interfaces/ITelemetryInitializers.js +1 -1
  80. package/dist-esm/JavaScriptSDK.Interfaces/ITelemetryItem.js +1 -1
  81. package/dist-esm/JavaScriptSDK.Interfaces/ITelemetryPlugin.js +1 -1
  82. package/dist-esm/JavaScriptSDK.Interfaces/ITelemetryPluginChain.js +1 -1
  83. package/dist-esm/JavaScriptSDK.Interfaces/ITelemetryUnloadState.js +1 -1
  84. package/dist-esm/JavaScriptSDK.Interfaces/ITelemetryUpdateState.js +1 -1
  85. package/dist-esm/JavaScriptSDK.Interfaces/ITraceParent.js +1 -1
  86. package/dist-esm/JavaScriptSDK.Interfaces/IUnloadHook.js +1 -1
  87. package/dist-esm/JavaScriptSDK.Interfaces/IUnloadableComponent.js +1 -1
  88. package/dist-esm/__DynamicConstants.js +6 -5
  89. package/dist-esm/__DynamicConstants.js.map +1 -1
  90. package/dist-esm/applicationinsights-core-js.js +2 -1
  91. package/dist-esm/applicationinsights-core-js.js.map +1 -1
  92. package/package.json +1 -1
  93. package/src/JavaScriptSDK/CookieMgr.ts +14 -13
  94. package/src/JavaScriptSDK/HelperFuncs.ts +0 -11
  95. package/src/JavaScriptSDK/InstrumentHooks.ts +11 -8
  96. package/types/Config/ConfigDefaultHelpers.d.ts +47 -0
  97. package/types/Config/ConfigDefaults.d.ts +1 -2
  98. package/types/Config/IConfigDefaults.d.ts +24 -3
  99. package/types/JavaScriptSDK/InstrumentHooks.d.ts +6 -3
  100. package/types/__DynamicConstants.d.ts +2 -1
  101. package/types/applicationinsights-core-js.d.ts +1 -0
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Core, 3.0.0-beta.2302-04
2
+ * Application Insights JavaScript SDK - Core, 3.0.0-beta.2302-06
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  (function (global, factory) {
@@ -10,6 +10,12 @@
10
10
 
11
11
  var MinChannelPriorty = 100;
12
12
 
13
+ /*!
14
+ * NevWare21 - ts-utils, 0.8.0
15
+ * https://github.com/nevware21/ts-utils
16
+ * Copyright (c) NevWare21 and contributors. All rights reserved.
17
+ * Licensed under the MIT license.
18
+ */
13
19
  var UNDEF_VALUE = undefined;
14
20
  var EMPTY = "";
15
21
  var BOOLEAN = "boolean";
@@ -30,10 +36,9 @@
30
36
  var ObjClass$1 = Object;
31
37
  var ObjProto = ObjClass$1[PROTOTYPE];
32
38
  var StrCls = String;
33
- var StrProto = StrCls[PROTOTYPE];
34
39
  var MathCls = Math;
35
40
  var ArrCls = Array;
36
-
41
+ var ArrProto = ArrCls[PROTOTYPE];
37
42
  function _safeGet(cb, defValue) {
38
43
  var result = defValue;
39
44
  try {
@@ -43,7 +48,6 @@
43
48
  }
44
49
  return result;
45
50
  }
46
-
47
51
  var PRIMITIVE_TYPES = [STRING, NUMBER, BOOLEAN, UNDEFINED$1, "symbol", "bigint"];
48
52
  function _createIs(theType) {
49
53
  return function (value) {
@@ -97,18 +101,14 @@
97
101
  function isTruthy(value) {
98
102
  return !(!value || _safeGet(function () { return !(value && (0 + value)); }, !value));
99
103
  }
100
-
101
104
  var objGetOwnPropertyDescriptor = ObjClass$1.getOwnPropertyDescriptor;
102
-
103
105
  function objHasOwnProperty(obj, prop) {
104
106
  return obj && ObjProto[HAS_OWN_PROPERTY].call(obj, prop);
105
107
  }
106
-
107
108
  var objHasOwn = ObjClass$1["hasOwn"] || polyObjHasOwn;
108
109
  function polyObjHasOwn(obj, prop) {
109
110
  return objHasOwnProperty(obj, prop) || !!objGetOwnPropertyDescriptor(obj, prop);
110
111
  }
111
-
112
112
  function objForEachKey(theObject, callbackfn, thisArg) {
113
113
  if (theObject && isObject(theObject)) {
114
114
  for (var prop in theObject) {
@@ -120,7 +120,6 @@
120
120
  }
121
121
  }
122
122
  }
123
-
124
123
  function _createKeyValueMap(values, keyType, valueType, completeFn) {
125
124
  var theMap = {};
126
125
  objForEachKey(values, function (key, value) {
@@ -129,14 +128,12 @@
129
128
  });
130
129
  return completeFn(theMap);
131
130
  }
132
-
133
131
  function throwError(message) {
134
132
  throw new Error(message);
135
133
  }
136
134
  function throwTypeError$1(message) {
137
135
  throw new TypeError(message);
138
136
  }
139
-
140
137
  var _objFreeze = ObjClass$1["freeze"];
141
138
  var _doNothing = function (value) { return value; };
142
139
  function objKeys(value) {
@@ -158,9 +155,11 @@
158
155
  var objFreeze = _objFreeze || _doNothing;
159
156
  var objSeal = ObjClass$1["seal"] || _doNothing;
160
157
  var objGetPrototypeOf = ObjClass$1["getPrototypeOf"] || _doNothing;
161
-
162
158
  function createEnum(values) {
163
- return _createKeyValueMap(values, 1, 0, objDeepFreeze);
159
+ return _createKeyValueMap(values, 1 , 0 , objDeepFreeze);
160
+ }
161
+ function createEnumKeyMap(values) {
162
+ return _createKeyValueMap(values, 0 , 0 , objDeepFreeze);
164
163
  }
165
164
  function createSimpleMap(values) {
166
165
  var mapClass = {};
@@ -173,9 +172,22 @@
173
172
  function createTypeMap(values) {
174
173
  return createSimpleMap(values);
175
174
  }
176
-
175
+ createEnumKeyMap({
176
+ asyncIterator: 0 ,
177
+ hasInstance: 1 ,
178
+ isConcatSpreadable: 2 ,
179
+ iterator: 3 ,
180
+ match: 4 ,
181
+ matchAll: 5 ,
182
+ replace: 6 ,
183
+ search: 7 ,
184
+ species: 8 ,
185
+ split: 9 ,
186
+ toPrimitive: 10 ,
187
+ toStringTag: 11 ,
188
+ unscopables: 12
189
+ });
177
190
  var asString = StrCls;
178
-
179
191
  var GLOBAL_CONFIG_KEY = "__tsUtils$gblCfg";
180
192
  var _globalCfg;
181
193
  function _getGlobalValue() {
@@ -201,7 +213,6 @@
201
213
  }
202
214
  return _globalCfg;
203
215
  }
204
-
205
216
  function dumpObj(object, format) {
206
217
  var propertyValueDump = "";
207
218
  if (isError(object)) {
@@ -217,7 +228,6 @@
217
228
  }
218
229
  return objToString(object) + ": " + propertyValueDump;
219
230
  }
220
-
221
231
  function _extractArgs(args, startAt) {
222
232
  var theArgs = [];
223
233
  for (var lp = startAt; lp < args[LENGTH]; lp++) {
@@ -225,24 +235,25 @@
225
235
  }
226
236
  return theArgs;
227
237
  }
228
-
229
- function _unwrapFunction(funcName) {
238
+ function _unwrapFunction(funcName, target, polyFunc) {
230
239
  return function (thisArg) {
231
- var args = _extractArgs(arguments, 1);
232
- if ((thisArg || thisArg === EMPTY) && thisArg[funcName]) {
233
- return thisArg[funcName].apply(thisArg, args);
240
+ if ((thisArg || thisArg === EMPTY)) {
241
+ var theFunc = thisArg[funcName] || (target && target[funcName]);
242
+ if (theFunc) {
243
+ return theFunc.apply(thisArg, _extractArgs(arguments, 1));
244
+ }
245
+ if (polyFunc) {
246
+ return polyFunc.apply(thisArg, arguments);
247
+ }
234
248
  }
235
- throwTypeError$1("'" + funcName + "' not defined for " + dumpObj(thisArg));
249
+ throwTypeError$1("'" + asString(funcName) + "' not defined for " + dumpObj(thisArg));
236
250
  };
237
251
  }
238
-
239
252
  var mathMax = MathCls.max;
240
-
241
253
  var strSlice = _unwrapFunction("slice");
242
-
243
254
  var SUB_STR = "substr";
244
255
  var strSubstring = _unwrapFunction("substring");
245
- var strSubstr = StrProto[SUB_STR] ? _unwrapFunction(SUB_STR) : polyStrSubstr;
256
+ var strSubstr = _unwrapFunction(SUB_STR, UNDEF_VALUE, polyStrSubstr);
246
257
  function polyStrSubstr(value, start, length) {
247
258
  if (isNullOrUndefined(value)) {
248
259
  throwTypeError$1("'polyStrSubstr called with invalid " + dumpObj(value));
@@ -262,9 +273,8 @@
262
273
  function strLeft(value, count) {
263
274
  return strSubstring(value, 0, count);
264
275
  }
265
-
266
276
  var STARTS_WITH = "startsWith";
267
- var strStartsWith = StrProto[STARTS_WITH] ? _unwrapFunction(STARTS_WITH) : polyStrStartsWith;
277
+ var strStartsWith = _unwrapFunction(STARTS_WITH, UNDEF_VALUE, polyStrStartsWith);
268
278
  function polyStrStartsWith(value, searchString, position) {
269
279
  if (!isString(value)) {
270
280
  throwTypeError$1("'" + dumpObj(value) + "' is not a string");
@@ -274,7 +284,6 @@
274
284
  var pos = position > 0 ? position : 0;
275
285
  return strSubstring(value, pos, pos + chkLen) === searchValue;
276
286
  }
277
-
278
287
  var _polySymbols;
279
288
  function _globalSymbolRegistry() {
280
289
  if (!_polySymbols) {
@@ -300,7 +309,6 @@
300
309
  }
301
310
  return registry.k[key];
302
311
  }
303
-
304
312
  var propMap = {
305
313
  e: "enumerable",
306
314
  c: "configurable",
@@ -318,7 +326,7 @@
318
326
  });
319
327
  return prop;
320
328
  }
321
- var objDefineProp = ObjClass$1.defineProperty;
329
+ var objDefineProp = ObjClass$1["defineProperty"];
322
330
  function objDefineAccessors(target, prop, getProp, setProp, configurable, enumerable) {
323
331
  var desc = {
324
332
  e: enumerable,
@@ -335,7 +343,6 @@
335
343
  function objDefine(target, key, propDesc) {
336
344
  return objDefineProp(target, key, _createProp(propDesc));
337
345
  }
338
-
339
346
  var _globalLazyTestHooks;
340
347
  var _fetchLazyTestHooks = function () {
341
348
  _globalLazyTestHooks = _getGlobalConfig();
@@ -362,11 +369,9 @@
362
369
  });
363
370
  return lazyValue;
364
371
  }
365
-
366
372
  function _lazySafeGet(cb, defValue) {
367
373
  return getLazy(function () { return _safeGet(cb, defValue); });
368
374
  }
369
-
370
375
  var DOCUMENT = "document";
371
376
  var HISTORY = "history";
372
377
  var NAVIGATOR = "navigator";
@@ -421,7 +426,6 @@
421
426
  (!_cachedHistory || (_globalLazyTestHooks.lzy && !_cachedHistory.b)) && (_cachedHistory = _lazySafeGetInst(HISTORY));
422
427
  return _cachedHistory.v;
423
428
  }
424
-
425
429
  var _symbol;
426
430
  var _symbolFor;
427
431
  var _symbolKeyFor;
@@ -446,11 +450,9 @@
446
450
  (!_symbolFor || (_globalLazyTestHooks.lzy && !_symbol.b)) && getSymbol();
447
451
  return (_symbolFor.v || polySymbolFor)(key);
448
452
  }
449
-
450
453
  function isIterator(value) {
451
454
  return !!value && isFunction(value.next);
452
455
  }
453
-
454
456
  function arrAppend(target, elms) {
455
457
  if (!isUndefined(elms) && target) {
456
458
  if (isArray(elms)) {
@@ -469,26 +471,21 @@
469
471
  }
470
472
  return target;
471
473
  }
472
-
473
- function arrForEach(arr, callbackfn, thisArg) {
474
- if (arr) {
475
- var len = arr[LENGTH];
474
+ function arrForEach(theArray, callbackfn, thisArg) {
475
+ if (theArray) {
476
+ var len = theArray[LENGTH] >>> 0;
476
477
  for (var idx = 0; idx < len; idx++) {
477
- if (idx in arr) {
478
- if (callbackfn.call(thisArg || arr, arr[idx], idx, arr) === -1) {
478
+ if (idx in theArray) {
479
+ if (callbackfn.call(thisArg || theArray, theArray[idx], idx, theArray) === -1) {
479
480
  break;
480
481
  }
481
482
  }
482
483
  }
483
484
  }
484
485
  }
485
-
486
- var arrIndexOf = _unwrapFunction(INDEX_OF);
487
-
488
- var arrMap = _unwrapFunction("map");
489
-
490
- var arrReduce = _unwrapFunction("reduce");
491
-
486
+ var arrIndexOf = _unwrapFunction(INDEX_OF, ArrProto);
487
+ var arrMap = _unwrapFunction("map", ArrProto);
488
+ var arrReduce = _unwrapFunction("reduce", ArrProto);
492
489
  function objSetPrototypeOf(obj, proto) {
493
490
  var fn = ObjClass$1["setPrototypeOf"] ||
494
491
  ({ __proto__: [] } instanceof Array && function (d, b) {
@@ -499,7 +496,6 @@
499
496
  };
500
497
  return fn(obj, proto);
501
498
  }
502
-
503
499
  function _createCustomError(name, d, b) {
504
500
  objSetPrototypeOf(d, b);
505
501
  function __() {
@@ -520,15 +516,13 @@
520
516
  }, baseClass);
521
517
  return customError;
522
518
  }
523
-
524
519
  function utcNow() {
525
520
  return (Date.now || polyUtcNow)();
526
521
  }
527
522
  function polyUtcNow() {
528
523
  return new Date().getTime();
529
524
  }
530
-
531
- var _fnToString$1;
525
+ var _fnToString;
532
526
  var _objCtrFnString;
533
527
  var _gblWindow;
534
528
  function isPlainObject(value) {
@@ -541,8 +535,8 @@
541
535
  var result = false;
542
536
  if (value !== _gblWindow) {
543
537
  if (!_objCtrFnString) {
544
- _fnToString$1 = Function[PROTOTYPE].toString;
545
- _objCtrFnString = _fnToString$1.call(ObjClass$1);
538
+ _fnToString = Function[PROTOTYPE].toString;
539
+ _objCtrFnString = _fnToString.call(ObjClass$1);
546
540
  }
547
541
  try {
548
542
  var proto = objGetPrototypeOf(value);
@@ -551,7 +545,7 @@
551
545
  if (objHasOwnProperty(proto, CONSTRUCTOR)) {
552
546
  proto = proto[CONSTRUCTOR];
553
547
  }
554
- result = proto && typeof proto === FUNCTION && _fnToString$1.call(proto) === _objCtrFnString;
548
+ result = proto && typeof proto === FUNCTION && _fnToString.call(proto) === _objCtrFnString;
555
549
  }
556
550
  }
557
551
  catch (ex) {
@@ -559,7 +553,6 @@
559
553
  }
560
554
  return result;
561
555
  }
562
-
563
556
  function _defaultDeepCopyHandler(details) {
564
557
  var target = details.result = {};
565
558
  details.copyTo(target, details.value);
@@ -686,7 +679,6 @@
686
679
  }
687
680
  return false;
688
681
  }
689
-
690
682
  function _doExtend(target, theArgs) {
691
683
  arrForEach(theArgs, function (theArg) {
692
684
  objCopyProps(target, theArg);
@@ -700,7 +692,6 @@
700
692
  }
701
693
  return _doExtend(objDeepCopy(target) || {}, theArgs);
702
694
  }
703
-
704
695
  var _perf;
705
696
  function getPerformance() {
706
697
  (!_perf || (_globalLazyTestHooks.lzy && !_perf.b)) && (_perf = _lazySafeGetInst("performance"));
@@ -713,9 +704,8 @@
713
704
  }
714
705
  return utcNow();
715
706
  }
716
-
717
707
  var ENDS_WITH = "endsWith";
718
- var strEndsWith = StrProto[ENDS_WITH] ? _unwrapFunction(ENDS_WITH) : polyStrEndsWith;
708
+ var strEndsWith = _unwrapFunction(ENDS_WITH, UNDEF_VALUE, polyStrEndsWith);
719
709
  function polyStrEndsWith(value, searchString, length) {
720
710
  if (!isString(value)) {
721
711
  throwTypeError$1("'" + dumpObj(value) + "' is not a string");
@@ -726,9 +716,7 @@
726
716
  var end = !isUndefined(length) && length < len ? length : len;
727
717
  return strSubstring(value, end - chkLen, end) === searchValue;
728
718
  }
729
-
730
719
  var strIndexOf = _unwrapFunction(INDEX_OF);
731
-
732
720
  function _createTrimFn(exp) {
733
721
  return function _doTrim(value) {
734
722
  if (isNullOrUndefined(value)) {
@@ -741,10 +729,8 @@
741
729
  };
742
730
  }
743
731
  var polyStrTrim = _createTrimFn(/^\s+|(?=\s)\s+$/g);
744
-
745
732
  var TRIM = "trim";
746
- var strTrim = StrProto[TRIM] ? _unwrapFunction(TRIM) : polyStrTrim;
747
-
733
+ var strTrim = _unwrapFunction(TRIM, UNDEF_VALUE, polyStrTrim);
748
734
  function _createTimerHandler(startTimer, refreshFn, cancelFn) {
749
735
  var ref = true;
750
736
  var timerId = startTimer ? refreshFn(null) : null;
@@ -782,7 +768,6 @@
782
768
  };
783
769
  return timer;
784
770
  }
785
-
786
771
  function _createTimeoutWith(self, startTimer, overrideFn, theArgs) {
787
772
  var isArr = isArray(overrideFn);
788
773
  var len = isArr ? overrideFn.length : 0;
@@ -804,7 +789,6 @@
804
789
  function scheduleTimeout(callback, timeout) {
805
790
  return _createTimeoutWith(this, true, UNDEF_VALUE, _extractArgs(arguments, 0));
806
791
  }
807
-
808
792
  function scheduleInterval(callback, timeout) {
809
793
  var self = this;
810
794
  var theArguments = _extractArgs(arguments, 0);
@@ -828,7 +812,9 @@
828
812
  QueueFull: 5
829
813
  });
830
814
 
815
+ var _DYN_TO_LOWER_CASE = "toLowerCase";
831
816
  var _DYN_LENGTH = "length";
817
+ var _DYN_RD_ONLY = "rdOnly";
832
818
  var _DYN_NOTIFY = "notify";
833
819
  var _DYN_THROW_INTERNAL = "throwInternal";
834
820
  var _DYN_SET_DF = "setDf";
@@ -872,7 +858,6 @@
872
858
  var _DYN_REPLACE = "replace";
873
859
  var _DYN_ENABLE_DEBUG_EXCEPTI5 = "enableDebugExceptions";
874
860
  var _DYN_LOG_INTERNAL_MESSAGE = "logInternalMessage";
875
- var _DYN_TO_LOWER_CASE = "toLowerCase";
876
861
  var _DYN_TYPE = "type";
877
862
  var _DYN_HANDLER = "handler";
878
863
  var _DYN_LISTENERS = "listeners";
@@ -1275,10 +1260,7 @@
1275
1260
  var STR_PATH = "path";
1276
1261
  var STR_NOT_DYNAMIC_ERROR = "Not dynamic - ";
1277
1262
 
1278
- var strToString = "toString";
1279
1263
  var strGetPrototypeOf = "getPrototypeOf";
1280
- var _fnToString = ObjClass[strToString];
1281
- _fnToString.call(ObjClass);
1282
1264
  var rCamelCase = /-([a-z])/g;
1283
1265
  var rNormalizeInvalid = /([^\w\d_$])/g;
1284
1266
  var rLeadingNumeric = /^(\d+[\w\d_$])/;
@@ -1568,7 +1550,7 @@
1568
1550
  if (userAgentStr === void 0) { userAgentStr = null; }
1569
1551
  if (!userAgentStr) {
1570
1552
  var navigator_1 = getNavigator() || {};
1571
- userAgentStr = navigator_1 ? (navigator_1[_DYN_USER_AGENT ] || STR_EMPTY)[_DYN_TO_LOWER_CASE ]() : STR_EMPTY;
1553
+ userAgentStr = navigator_1 ? (navigator_1.userAgent || STR_EMPTY)[_DYN_TO_LOWER_CASE ]() : STR_EMPTY;
1572
1554
  }
1573
1555
  var ua = (userAgentStr || STR_EMPTY)[_DYN_TO_LOWER_CASE ]();
1574
1556
  if (strContains(ua, strMsie)) {
@@ -1586,7 +1568,7 @@
1586
1568
  function isSafari(userAgentStr) {
1587
1569
  if (!userAgentStr || !isString(userAgentStr)) {
1588
1570
  var navigator_2 = getNavigator() || {};
1589
- userAgentStr = navigator_2 ? (navigator_2[_DYN_USER_AGENT ] || STR_EMPTY)[_DYN_TO_LOWER_CASE ]() : STR_EMPTY;
1571
+ userAgentStr = navigator_2 ? (navigator_2.userAgent || STR_EMPTY)[_DYN_TO_LOWER_CASE ]() : STR_EMPTY;
1590
1572
  }
1591
1573
  var ua = (userAgentStr || STR_EMPTY)[_DYN_TO_LOWER_CASE ]();
1592
1574
  return (strIndexOf(ua, "safari") >= 0);
@@ -1742,7 +1724,7 @@
1742
1724
  }
1743
1725
 
1744
1726
  var _objDefineProperty = ObjDefineProperty;
1745
- var version = "3.0.0-beta.2302-04";
1727
+ var version = "3.0.0-beta.2302-06";
1746
1728
  var instanceName = "." + newId(6);
1747
1729
  var _dataUid = 0;
1748
1730
  function _createAccessor(target, prop, value) {
@@ -1815,39 +1797,9 @@
1815
1797
  return data;
1816
1798
  }
1817
1799
 
1818
- var CFG_HANDLER_LINK = symbolFor("[[ai_dynCfg_1]]");
1819
- function _cfgDeepCopy(source) {
1820
- if (source) {
1821
- var target_1;
1822
- if (isArray(source)) {
1823
- target_1 = [];
1824
- target_1[_DYN_LENGTH ] = source[_DYN_LENGTH ];
1825
- }
1826
- else if (isPlainObject(source)) {
1827
- target_1 = {};
1828
- }
1829
- if (target_1) {
1830
- objForEachKey(source, function (key, value) {
1831
- target_1[key] = _cfgDeepCopy(value);
1832
- });
1833
- return target_1;
1834
- }
1835
- }
1836
- return source;
1800
+ function _isConfigDefaults(value) {
1801
+ return (value && isObject(value) && (value.isVal || value.fb || objHasOwn(value, "v") || objHasOwn(value, "mrg") || objHasOwn(value, "ref") || value.set));
1837
1802
  }
1838
- function getDynamicConfigHandler(value) {
1839
- if (value) {
1840
- var handler = value[CFG_HANDLER_LINK] || value;
1841
- if (handler.cfg && (handler.cfg === value || handler.cfg[CFG_HANDLER_LINK] === handler)) {
1842
- return handler;
1843
- }
1844
- }
1845
- return null;
1846
- }
1847
- function throwInvalidAccess(message) {
1848
- throwTypeError$1("InvalidAccess:" + message);
1849
- }
1850
-
1851
1803
  function _getDefault(dynamicHandler, theConfig, cfgDefaults) {
1852
1804
  var defValue;
1853
1805
  var isDefaultValid = cfgDefaults.dfVal || isDefined;
@@ -1862,7 +1814,7 @@
1862
1814
  if (isDefaultValid(fbValue)) {
1863
1815
  defValue = fbValue;
1864
1816
  }
1865
- else {
1817
+ else if (dynamicHandler) {
1866
1818
  fbValue = dynamicHandler.cfg[fallback];
1867
1819
  if (isDefaultValid(fbValue)) {
1868
1820
  defValue = fbValue;
@@ -1879,27 +1831,63 @@
1879
1831
  }
1880
1832
  return defValue;
1881
1833
  }
1834
+ function _resolveDefaultValue(dynamicHandler, theConfig, cfgDefaults) {
1835
+ var theValue = cfgDefaults;
1836
+ if (cfgDefaults && _isConfigDefaults(cfgDefaults)) {
1837
+ theValue = _getDefault(dynamicHandler, theConfig, cfgDefaults);
1838
+ }
1839
+ if (theValue) {
1840
+ if (_isConfigDefaults(theValue)) {
1841
+ theValue = _resolveDefaultValue(dynamicHandler, theConfig, theValue);
1842
+ }
1843
+ var newValue_1;
1844
+ if (isArray(theValue)) {
1845
+ newValue_1 = [];
1846
+ newValue_1[_DYN_LENGTH ] = theValue[_DYN_LENGTH ];
1847
+ }
1848
+ else if (isPlainObject(theValue)) {
1849
+ newValue_1 = {};
1850
+ }
1851
+ if (newValue_1) {
1852
+ objForEachKey(theValue, function (key, value) {
1853
+ if (value && _isConfigDefaults(value)) {
1854
+ value = _resolveDefaultValue(dynamicHandler, theConfig, value);
1855
+ }
1856
+ newValue_1[key] = value;
1857
+ });
1858
+ theValue = newValue_1;
1859
+ }
1860
+ }
1861
+ return theValue;
1862
+ }
1882
1863
  function _applyDefaultValue(dynamicHandler, theConfig, name, defaultValue) {
1883
1864
  var isValid;
1884
1865
  var setFn;
1885
1866
  var defValue;
1886
1867
  var cfgDefaults = defaultValue;
1887
- if (cfgDefaults && isObject(cfgDefaults) && (cfgDefaults.isVal || cfgDefaults.set || cfgDefaults.fb || objHasOwn(cfgDefaults, "v"))) {
1868
+ var mergeDf;
1869
+ var reference;
1870
+ var readOnly;
1871
+ if (_isConfigDefaults(cfgDefaults)) {
1888
1872
  isValid = cfgDefaults.isVal;
1889
1873
  setFn = cfgDefaults.set;
1874
+ readOnly = cfgDefaults[_DYN_RD_ONLY ];
1875
+ mergeDf = cfgDefaults.mrg;
1876
+ reference = cfgDefaults.ref;
1877
+ if (!reference && isUndefined(reference)) {
1878
+ reference = !!mergeDf;
1879
+ }
1890
1880
  defValue = _getDefault(dynamicHandler, theConfig, cfgDefaults);
1891
1881
  }
1892
1882
  else {
1893
1883
  defValue = defaultValue;
1894
1884
  }
1895
- var theValue = defValue;
1885
+ var theValue;
1896
1886
  var usingDefault = true;
1897
1887
  var cfgValue = theConfig[name];
1898
1888
  if (cfgValue || !isNullOrUndefined(cfgValue)) {
1899
1889
  theValue = cfgValue;
1900
1890
  usingDefault = false;
1901
- }
1902
- if (!usingDefault) {
1903
1891
  if (isValid && theValue !== defValue && !isValid(theValue)) {
1904
1892
  theValue = defValue;
1905
1893
  usingDefault = true;
@@ -1909,10 +1897,61 @@
1909
1897
  usingDefault = theValue === defValue;
1910
1898
  }
1911
1899
  }
1912
- if (theValue && usingDefault && (isPlainObject(theValue) || isArray(theValue))) {
1913
- theValue = _cfgDeepCopy(theValue);
1900
+ if (!usingDefault) {
1901
+ if (isPlainObject(theValue) || isArray(defValue)) {
1902
+ if (mergeDf && defValue && (isPlainObject(defValue) || isArray(defValue))) {
1903
+ objForEachKey(defValue, function (dfName, dfValue) {
1904
+ _applyDefaultValue(dynamicHandler, theValue, dfName, dfValue);
1905
+ });
1906
+ }
1907
+ }
1908
+ }
1909
+ else if (defValue) {
1910
+ theValue = _resolveDefaultValue(dynamicHandler, theConfig, defValue);
1911
+ }
1912
+ else {
1913
+ theValue = defValue;
1914
1914
  }
1915
1915
  dynamicHandler.set(theConfig, name, theValue);
1916
+ if (reference) {
1917
+ dynamicHandler.ref(theConfig, name);
1918
+ }
1919
+ if (readOnly) {
1920
+ dynamicHandler[_DYN_RD_ONLY ](theConfig, name);
1921
+ }
1922
+ }
1923
+
1924
+ var CFG_HANDLER_LINK = symbolFor("[[ai_dynCfg_1]]");
1925
+ function _cfgDeepCopy(source) {
1926
+ if (source) {
1927
+ var target_1;
1928
+ if (isArray(source)) {
1929
+ target_1 = [];
1930
+ target_1[_DYN_LENGTH ] = source[_DYN_LENGTH ];
1931
+ }
1932
+ else if (isPlainObject(source)) {
1933
+ target_1 = {};
1934
+ }
1935
+ if (target_1) {
1936
+ objForEachKey(source, function (key, value) {
1937
+ target_1[key] = _cfgDeepCopy(value);
1938
+ });
1939
+ return target_1;
1940
+ }
1941
+ }
1942
+ return source;
1943
+ }
1944
+ function getDynamicConfigHandler(value) {
1945
+ if (value) {
1946
+ var handler = value[CFG_HANDLER_LINK] || value;
1947
+ if (handler.cfg && (handler.cfg === value || handler.cfg[CFG_HANDLER_LINK] === handler)) {
1948
+ return handler;
1949
+ }
1950
+ }
1951
+ return null;
1952
+ }
1953
+ function throwInvalidAccess(message) {
1954
+ throwTypeError$1("InvalidAccess:" + message);
1916
1955
  }
1917
1956
 
1918
1957
  var arrayMethodsToPatch = [
@@ -2092,7 +2131,7 @@
2092
2131
  set: cfgHandler.set.bind(cfgHandler),
2093
2132
  setDf: cfgHandler[_DYN_SET_DF ].bind(cfgHandler),
2094
2133
  ref: cfgHandler.ref.bind(cfgHandler),
2095
- rdOnly: cfgHandler.rdOnly.bind(cfgHandler)
2134
+ rdOnly: cfgHandler[_DYN_RD_ONLY ].bind(cfgHandler)
2096
2135
  });
2097
2136
  }
2098
2137
  catch (e) {
@@ -2242,7 +2281,7 @@
2242
2281
  _a[_DYN_SET_DF ] = _applyDefaults,
2243
2282
  _a[_DYN_WATCH ] = _watch,
2244
2283
  _a.ref = _ref,
2245
- _a.rdOnly = _rdOnly,
2284
+ _a[_DYN_RD_ONLY ] = _rdOnly,
2246
2285
  _a._block = _block,
2247
2286
  _a);
2248
2287
  objDefineProp(cfgHandler, "uid", (_b = {},
@@ -2282,6 +2321,54 @@
2282
2321
 
2283
2322
  var ChannelControllerPriority = 500;
2284
2323
 
2324
+ function _stringToBoolOrDefault(theValue, defaultValue, theConfig) {
2325
+ if (!theValue && isNullOrUndefined(theValue)) {
2326
+ return defaultValue;
2327
+ }
2328
+ if (isBoolean(theValue)) {
2329
+ return theValue;
2330
+ }
2331
+ return asString(theValue)[_DYN_TO_LOWER_CASE ]() === "true";
2332
+ }
2333
+ function cfgDfMerge(defaultValue) {
2334
+ return {
2335
+ mrg: true,
2336
+ v: defaultValue
2337
+ };
2338
+ }
2339
+ function cfgDfSet(setter, defaultValue) {
2340
+ return {
2341
+ set: setter,
2342
+ v: defaultValue
2343
+ };
2344
+ }
2345
+ function cfgDfValidate(validator, defaultValue, fallBackName) {
2346
+ return {
2347
+ fb: fallBackName,
2348
+ isVal: validator,
2349
+ v: defaultValue
2350
+ };
2351
+ }
2352
+ function cfgDfBoolean(defaultValue, fallBackName) {
2353
+ return {
2354
+ fb: fallBackName,
2355
+ set: _stringToBoolOrDefault,
2356
+ v: !!defaultValue
2357
+ };
2358
+ }
2359
+ function cfgDfFunc(defaultValue) {
2360
+ return {
2361
+ isVal: isFunction,
2362
+ v: defaultValue || null
2363
+ };
2364
+ }
2365
+ function cfgDfString(defaultValue) {
2366
+ return {
2367
+ isVal: isString,
2368
+ v: asString(defaultValue || STR_EMPTY)
2369
+ };
2370
+ }
2371
+
2285
2372
  var listenerFuncs = [STR_EVENTS_SENT, STR_EVENTS_DISCARDED, STR_EVENTS_SEND_REQUEST, STR_PERF_EVENT];
2286
2373
  var _aiNamespace = null;
2287
2374
  var _debugListener;
@@ -2512,18 +2599,19 @@
2512
2599
  var _doc = getDocument();
2513
2600
  var _cookieCache = {};
2514
2601
  var _globalCookieConfig = {};
2515
- var defaultConfig$1 = objDeepFreeze((_a$2 = {},
2516
- _a$2[STR_DOMAIN] = { fb: "cookieDomain", dfVal: isNotNullOrUndefined },
2517
- _a$2.path = { fb: "cookiePath", dfVal: isNotNullOrUndefined },
2518
- _a$2.enabled = UNDEFINED_VALUE,
2519
- _a$2));
2520
- var rootDefaultConfig = (_b = {
2521
- cookieCfg: {},
2602
+ var rootDefaultConfig = (_a$2 = {
2603
+ cookieCfg: cfgDfMerge((_b = {},
2604
+ _b[STR_DOMAIN] = { fb: "cookieDomain", dfVal: isNotNullOrUndefined },
2605
+ _b.path = { fb: "cookiePath", dfVal: isNotNullOrUndefined },
2606
+ _b.enabled = UNDEFINED_VALUE,
2607
+ _b.ignoreCookies = UNDEFINED_VALUE,
2608
+ _b.blockedCookies = UNDEFINED_VALUE,
2609
+ _b)),
2522
2610
  cookieDomain: UNDEFINED_VALUE,
2523
2611
  cookiePath: UNDEFINED_VALUE
2524
2612
  },
2525
- _b[strDisableCookiesUsage] = UNDEFINED_VALUE,
2526
- _b);
2613
+ _a$2[strDisableCookiesUsage] = UNDEFINED_VALUE,
2614
+ _a$2);
2527
2615
  function _gblCookieMgr(config, logger) {
2528
2616
  var inst = createCookieMgr[strConfigCookieMgr] || _globalCookieConfig[strConfigCookieMgr];
2529
2617
  if (!inst) {
@@ -2582,7 +2670,7 @@
2582
2670
  rootConfig = createDynamicConfig(rootConfig || _globalCookieConfig, null, logger).cfg;
2583
2671
  onConfigChange(rootConfig, function (details) {
2584
2672
  details[_DYN_SET_DF ](details.cfg, rootDefaultConfig);
2585
- cookieMgrConfig = details[_DYN_SET_DF ](details.cfg.cookieCfg, defaultConfig$1);
2673
+ cookieMgrConfig = details.ref(details.cfg, "cookieCfg");
2586
2674
  var isEnabled = cookieMgrConfig.enabled;
2587
2675
  if (isNullOrUndefined(isEnabled)) {
2588
2676
  var cookieEnabled = void 0;
@@ -3074,10 +3162,11 @@
3074
3162
  match[3] === INVALID_SPAN_ID) {
3075
3163
  return null;
3076
3164
  }
3077
- return _a = {},
3078
- _a[_DYN_VERSION ] = (match[1] || STR_EMPTY)[_DYN_TO_LOWER_CASE ](),
3079
- _a.traceId = (match[2] || STR_EMPTY)[_DYN_TO_LOWER_CASE ](),
3080
- _a.spanId = (match[3] || STR_EMPTY)[_DYN_TO_LOWER_CASE ](),
3165
+ return _a = {
3166
+ version: (match[1] || STR_EMPTY)[_DYN_TO_LOWER_CASE ](),
3167
+ traceId: (match[2] || STR_EMPTY)[_DYN_TO_LOWER_CASE ](),
3168
+ spanId: (match[3] || STR_EMPTY)[_DYN_TO_LOWER_CASE ]()
3169
+ },
3081
3170
  _a[_DYN_TRACE_FLAGS ] = parseInt(match[4], 16),
3082
3171
  _a;
3083
3172
  }
@@ -4510,7 +4599,7 @@
4510
4599
  var item = (_a = {},
4511
4600
  _a[_DYN_NAME ] = _internalLogsEventName ? _internalLogsEventName : "InternalMessageId: " + logMessage[_DYN_MESSAGE_ID ],
4512
4601
  _a.iKey = _instrumentationKey,
4513
- _a.time = toISOString(new Date()),
4602
+ _a[_DYN_TIME ] = toISOString(new Date()),
4514
4603
  _a.baseType = _InternalLogMessage.dataType,
4515
4604
  _a.baseData = { message: logMessage[_DYN_MESSAGE ] },
4516
4605
  _a);
@@ -5020,14 +5109,14 @@
5020
5109
  return funcArgs.rslt;
5021
5110
  };
5022
5111
  }
5023
- function _getOwner(target, name, checkPrototype) {
5112
+ function _getOwner(target, name, checkPrototype, checkParentProto) {
5024
5113
  var owner = null;
5025
5114
  if (target) {
5026
5115
  if (objHasOwnProperty(target, name)) {
5027
5116
  owner = target;
5028
5117
  }
5029
5118
  else if (checkPrototype) {
5030
- owner = _getOwner(_getObjProto(target), name, false);
5119
+ owner = _getOwner(_getObjProto(target), name, checkParentProto, false);
5031
5120
  }
5032
5121
  }
5033
5122
  return owner;
@@ -5074,10 +5163,10 @@
5074
5163
  aiHook.h[_DYN_PUSH ](theHook);
5075
5164
  return theHook;
5076
5165
  }
5077
- function InstrumentFunc(target, funcName, callbacks, checkPrototype) {
5166
+ function InstrumentFunc(target, funcName, callbacks, checkPrototype, checkParentProto) {
5078
5167
  if (checkPrototype === void 0) { checkPrototype = true; }
5079
5168
  if (target && funcName && callbacks) {
5080
- var owner = _getOwner(target, funcName, checkPrototype);
5169
+ var owner = _getOwner(target, funcName, checkPrototype, checkParentProto);
5081
5170
  if (owner) {
5082
5171
  var fn = owner[funcName];
5083
5172
  if (typeof fn === strShimFunction) {
@@ -5087,11 +5176,11 @@
5087
5176
  }
5088
5177
  return null;
5089
5178
  }
5090
- function InstrumentFuncs(target, funcNames, callbacks, checkPrototype) {
5179
+ function InstrumentFuncs(target, funcNames, callbacks, checkPrototype, checkParentProto) {
5091
5180
  if (checkPrototype === void 0) { checkPrototype = true; }
5092
5181
  var hooks = null;
5093
5182
  _arrLoop(funcNames, function (funcName) {
5094
- var hook = InstrumentFunc(target, funcName, callbacks, checkPrototype);
5183
+ var hook = InstrumentFunc(target, funcName, callbacks, checkPrototype, checkParentProto);
5095
5184
  if (hook) {
5096
5185
  if (!hooks) {
5097
5186
  hooks = [];
@@ -5101,9 +5190,9 @@
5101
5190
  });
5102
5191
  return hooks;
5103
5192
  }
5104
- function InstrumentEvent(target, evtName, callbacks, checkPrototype) {
5193
+ function InstrumentEvent(target, evtName, callbacks, checkPrototype, checkParentProto) {
5105
5194
  if (target && evtName && callbacks) {
5106
- var owner = _getOwner(target, evtName, checkPrototype) || target;
5195
+ var owner = _getOwner(target, evtName, checkPrototype, checkParentProto) || target;
5107
5196
  if (owner) {
5108
5197
  return _createInstrumentHook(owner, evtName, owner[evtName], callbacks);
5109
5198
  }
@@ -5144,6 +5233,12 @@
5144
5233
  exports.arrReduce = arrReduce;
5145
5234
  exports.asString = asString;
5146
5235
  exports.attachEvent = attachEvent;
5236
+ exports.cfgDfBoolean = cfgDfBoolean;
5237
+ exports.cfgDfFunc = cfgDfFunc;
5238
+ exports.cfgDfMerge = cfgDfMerge;
5239
+ exports.cfgDfSet = cfgDfSet;
5240
+ exports.cfgDfString = cfgDfString;
5241
+ exports.cfgDfValidate = cfgDfValidate;
5147
5242
  exports.createClassFromInterface = createClassFromInterface;
5148
5243
  exports.createCookieMgr = createCookieMgr;
5149
5244
  exports.createDynamicConfig = createDynamicConfig;