@microsoft/applicationinsights-clickanalytics-js 2.8.5-nightly.2206-04 → 2.8.5-nightly.2206-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 (81) hide show
  1. package/browser/{ai.clck.2.8.5-nightly.2206-04.cjs.js → ai.clck.2.8.5-nightly.2206-06.cjs.js} +658 -566
  2. package/browser/ai.clck.2.8.5-nightly.2206-06.cjs.js.map +1 -0
  3. package/browser/ai.clck.2.8.5-nightly.2206-06.cjs.min.js +6 -0
  4. package/browser/ai.clck.2.8.5-nightly.2206-06.cjs.min.js.map +1 -0
  5. package/browser/{ai.clck.2.8.5-nightly.2206-04.gbl.js → ai.clck.2.8.5-nightly.2206-06.gbl.js} +658 -566
  6. package/browser/ai.clck.2.8.5-nightly.2206-06.gbl.js.map +1 -0
  7. package/browser/ai.clck.2.8.5-nightly.2206-06.gbl.min.js +6 -0
  8. package/browser/ai.clck.2.8.5-nightly.2206-06.gbl.min.js.map +1 -0
  9. package/browser/ai.clck.2.8.5-nightly.2206-06.integrity.json +66 -0
  10. package/browser/{ai.clck.2.8.5-nightly.2206-04.js → ai.clck.2.8.5-nightly.2206-06.js} +658 -566
  11. package/browser/ai.clck.2.8.5-nightly.2206-06.js.map +1 -0
  12. package/browser/ai.clck.2.8.5-nightly.2206-06.min.js +6 -0
  13. package/browser/ai.clck.2.8.5-nightly.2206-06.min.js.map +1 -0
  14. package/browser/ai.clck.2.cjs.js +657 -565
  15. package/browser/ai.clck.2.cjs.js.map +1 -1
  16. package/browser/ai.clck.2.cjs.min.js +2 -2
  17. package/browser/ai.clck.2.cjs.min.js.map +1 -1
  18. package/browser/ai.clck.2.gbl.js +657 -565
  19. package/browser/ai.clck.2.gbl.js.map +1 -1
  20. package/browser/ai.clck.2.gbl.min.js +2 -2
  21. package/browser/ai.clck.2.gbl.min.js.map +1 -1
  22. package/browser/ai.clck.2.js +657 -565
  23. package/browser/ai.clck.2.js.map +1 -1
  24. package/browser/ai.clck.2.min.js +2 -2
  25. package/browser/ai.clck.2.min.js.map +1 -1
  26. package/dist/applicationinsights-clickanalytics-js.api.json +5 -2
  27. package/dist/applicationinsights-clickanalytics-js.d.ts +1 -1
  28. package/dist/applicationinsights-clickanalytics-js.js +657 -565
  29. package/dist/applicationinsights-clickanalytics-js.js.map +1 -1
  30. package/dist/applicationinsights-clickanalytics-js.min.js +2 -2
  31. package/dist/applicationinsights-clickanalytics-js.min.js.map +1 -1
  32. package/dist/applicationinsights-clickanalytics-js.rollup.d.ts +1 -1
  33. package/dist-esm/Behaviours.js +1 -1
  34. package/dist-esm/ClickAnalyticsPlugin.js +13 -12
  35. package/dist-esm/ClickAnalyticsPlugin.js.map +1 -1
  36. package/dist-esm/DataCollector.js +21 -20
  37. package/dist-esm/DataCollector.js.map +1 -1
  38. package/dist-esm/Enums.js +1 -1
  39. package/dist-esm/Interfaces/Datamodel.js +1 -1
  40. package/dist-esm/__DynamicConstants.js +62 -0
  41. package/dist-esm/__DynamicConstants.js.map +1 -0
  42. package/dist-esm/applicationinsights-clickanalytics-js.js +1 -1
  43. package/dist-esm/common/Utils.js +45 -82
  44. package/dist-esm/common/Utils.js.map +1 -1
  45. package/dist-esm/events/PageAction.js +50 -49
  46. package/dist-esm/events/PageAction.js.map +1 -1
  47. package/dist-esm/events/WebEvent.js +40 -39
  48. package/dist-esm/events/WebEvent.js.map +1 -1
  49. package/dist-esm/handlers/AutoCaptureHandler.js +24 -22
  50. package/dist-esm/handlers/AutoCaptureHandler.js.map +1 -1
  51. package/dist-esm/handlers/DomContentHandler.js +61 -60
  52. package/dist-esm/handlers/DomContentHandler.js.map +1 -1
  53. package/package.json +8 -5
  54. package/src/ClickAnalyticsPlugin.ts +20 -27
  55. package/src/DataCollector.ts +9 -12
  56. package/src/Interfaces/Datamodel.ts +1 -1
  57. package/src/__DynamicConstants.ts +60 -0
  58. package/src/common/Utils.ts +28 -69
  59. package/src/events/PageAction.ts +19 -16
  60. package/src/events/WebEvent.ts +20 -18
  61. package/src/handlers/AutoCaptureHandler.ts +16 -16
  62. package/src/handlers/DomContentHandler.ts +15 -17
  63. package/types/ClickAnalyticsPlugin.d.ts +4 -4
  64. package/types/DataCollector.d.ts +2 -2
  65. package/types/__DynamicConstants.d.ts +48 -0
  66. package/types/common/Utils.d.ts +94 -96
  67. package/types/events/PageAction.d.ts +4 -4
  68. package/types/events/WebEvent.d.ts +4 -4
  69. package/types/handlers/AutoCaptureHandler.d.ts +3 -3
  70. package/types/handlers/DomContentHandler.d.ts +2 -2
  71. package/types/tsdoc-metadata.json +1 -1
  72. package/browser/ai.clck.2.8.5-nightly.2206-04.cjs.js.map +0 -1
  73. package/browser/ai.clck.2.8.5-nightly.2206-04.cjs.min.js +0 -6
  74. package/browser/ai.clck.2.8.5-nightly.2206-04.cjs.min.js.map +0 -1
  75. package/browser/ai.clck.2.8.5-nightly.2206-04.gbl.js.map +0 -1
  76. package/browser/ai.clck.2.8.5-nightly.2206-04.gbl.min.js +0 -6
  77. package/browser/ai.clck.2.8.5-nightly.2206-04.gbl.min.js.map +0 -1
  78. package/browser/ai.clck.2.8.5-nightly.2206-04.integrity.json +0 -66
  79. package/browser/ai.clck.2.8.5-nightly.2206-04.js.map +0 -1
  80. package/browser/ai.clck.2.8.5-nightly.2206-04.min.js +0 -6
  81. package/browser/ai.clck.2.8.5-nightly.2206-04.min.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Click Analytics, 2.8.5-nightly.2206-04
2
+ * Application Insights JavaScript SDK - Click Analytics, 2.8.5-nightly.2206-06
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  this.Microsoft = this.Microsoft || {};
@@ -101,7 +101,7 @@ this.Microsoft = this.Microsoft || {};
101
101
  * Copyright (c) Microsoft and contributors. All rights reserved.
102
102
  */
103
103
  var Constructor = 'constructor';
104
- var Prototype$1 = 'prototype';
104
+ var Prototype = 'prototype';
105
105
  var strFunction = 'function';
106
106
  var DynInstFuncTable = '_dynInstFuncs';
107
107
  var DynProxyTag = '_isDynProxy';
@@ -121,13 +121,13 @@ this.Microsoft = this.Microsoft || {};
121
121
  var _objGetOwnProps = Obj["getOwnPropertyNames"];
122
122
  var _dynamicNames = 0;
123
123
  function _hasOwnProperty(obj, prop) {
124
- return obj && Obj[Prototype$1].hasOwnProperty.call(obj, prop);
124
+ return obj && Obj[Prototype].hasOwnProperty.call(obj, prop);
125
125
  }
126
126
  function _isObjectOrArrayPrototype(target) {
127
- return target && (target === Obj[Prototype$1] || target === Array[Prototype$1]);
127
+ return target && (target === Obj[Prototype] || target === Array[Prototype]);
128
128
  }
129
129
  function _isObjectArrayOrFunctionPrototype(target) {
130
- return _isObjectOrArrayPrototype(target) || target === Function[Prototype$1];
130
+ return _isObjectOrArrayPrototype(target) || target === Function[Prototype];
131
131
  }
132
132
  function _getObjProto$1(target) {
133
133
  var newProto;
@@ -135,7 +135,7 @@ this.Microsoft = this.Microsoft || {};
135
135
  if (_objGetPrototypeOf$1) {
136
136
  return _objGetPrototypeOf$1(target);
137
137
  }
138
- var curProto = target[str__Proto$1] || target[Prototype$1] || (target[Constructor] ? target[Constructor][Prototype$1] : null);
138
+ var curProto = target[str__Proto$1] || target[Prototype] || (target[Constructor] ? target[Constructor][Prototype] : null);
139
139
  newProto = target[DynProtoBaseProto] || curProto;
140
140
  if (!_hasOwnProperty(target, DynProtoBaseProto)) {
141
141
  delete target[DynProtoCurrent];
@@ -302,16 +302,16 @@ this.Microsoft = this.Microsoft || {};
302
302
  return true;
303
303
  }
304
304
  function _getObjName(target, unknownValue) {
305
- if (_hasOwnProperty(target, Prototype$1)) {
305
+ if (_hasOwnProperty(target, Prototype)) {
306
306
  return target.name || unknownValue || UnknownValue;
307
307
  }
308
308
  return (((target || {})[Constructor]) || {}).name || unknownValue || UnknownValue;
309
309
  }
310
310
  function dynamicProto(theClass, target, delegateFunc, options) {
311
- if (!_hasOwnProperty(theClass, Prototype$1)) {
311
+ if (!_hasOwnProperty(theClass, Prototype)) {
312
312
  _throwTypeError("theClass is an invalid class definition.");
313
313
  }
314
- var classProto = theClass[Prototype$1];
314
+ var classProto = theClass[Prototype];
315
315
  if (!_checkPrototype(classProto, target)) {
316
316
  _throwTypeError("[" + _getObjName(theClass) + "] is not in class hierarchy of [" + _getObjName(target) + "]");
317
317
  }
@@ -344,14 +344,55 @@ this.Microsoft = this.Microsoft || {};
344
344
  };
345
345
  dynamicProto[DynProtoDefaultOptions] = perfDefaults;
346
346
 
347
- var strEmpty = "";
348
- var strSetNextPlugin = "setNextPlugin";
349
- var strIsInitialized = "isInitialized";
350
- var strTeardown = "teardown";
351
- var strCore = "core";
352
- var strUpdate = "update";
353
- var strDisabled = "disabled";
354
- var strDoTeardown = "_doTeardown";
347
+ var _DYN_INITIALIZE = "initialize";
348
+ var _DYN_NAME$1 = "name";
349
+ var _DYN_IDENTIFIER = "identifier";
350
+ var _DYN_PUSH = "push";
351
+ var _DYN_IS_INITIALIZED = "isInitialized";
352
+ var _DYN_CONFIG = "config";
353
+ var _DYN_LOGGER = "logger";
354
+ var _DYN_LENGTH$1 = "length";
355
+ var _DYN_TIME = "time";
356
+ var _DYN_PROCESS_NEXT = "processNext";
357
+ var _DYN_GET_PROCESS_TEL_CONT0 = "getProcessTelContext";
358
+ var _DYN_GET_PLUGIN = "getPlugin";
359
+ var _DYN_SPLICE = "splice";
360
+ var _DYN_TEARDOWN = "teardown";
361
+ var _DYN_MESSAGE_ID = "messageId";
362
+ var _DYN_MESSAGE = "message";
363
+ var _DYN_IS_ASYNC = "isAsync";
364
+ var _DYN__DO_TEARDOWN = "_doTeardown";
365
+ var _DYN_UPDATE = "update";
366
+ var _DYN_GET_NEXT = "getNext";
367
+ var _DYN_DIAG_LOG = "diagLog";
368
+ var _DYN_SET_NEXT_PLUGIN = "setNextPlugin";
369
+ var _DYN_CREATE_NEW = "createNew";
370
+ var _DYN_INDEX_OF$1 = "indexOf";
371
+ var _DYN_USER_AGENT = "userAgent";
372
+ var _DYN_SPLIT = "split";
373
+ var _DYN_REPLACE = "replace";
374
+ var _DYN_NODE_TYPE = "nodeType";
375
+ var _DYN_APPLY = "apply";
376
+ var _DYN_ENABLE_DEBUG_EXCEPTI4 = "enableDebugExceptions";
377
+ var _DYN_LOG_INTERNAL_MESSAGE = "logInternalMessage";
378
+ var _DYN_TO_LOWER_CASE = "toLowerCase";
379
+ var _DYN_CALL = "call";
380
+ var _DYN_TYPE = "type";
381
+ var _DYN_HANDLER = "handler";
382
+ var _DYN_IS_CHILD_EVT = "isChildEvt";
383
+ var _DYN_GET_CTX = "getCtx";
384
+ var _DYN_SET_CTX = "setCtx";
385
+ var _DYN_COMPLETE = "complete";
386
+
387
+ var STR_EMPTY = "";
388
+ var STR_CORE = "core";
389
+ var STR_DISABLED = "disabled";
390
+ var STR_EXTENSION_CONFIG = "extensionConfig";
391
+ var STR_PROCESS_TELEMETRY = "processTelemetry";
392
+ var STR_PRIORITY = "priority";
393
+ var STR_ERROR_TO_CONSOLE = "errorToConsole";
394
+ var STR_WARN_TO_CONSOLE = "warnToConsole";
395
+ var STR_GET_PERF_MGR = "getPerfMgr";
355
396
 
356
397
  var strToISOString = "toISOString";
357
398
  var cStrEndsWith = "endsWith";
@@ -373,7 +414,7 @@ this.Microsoft = this.Microsoft || {};
373
414
  var _isArray = Array.isArray;
374
415
  var _objToString = ObjProto[strToString];
375
416
  var _fnToString = ObjHasOwnProperty[strToString];
376
- var _objFunctionString = _fnToString.call(ObjClass);
417
+ var _objFunctionString = _fnToString[_DYN_CALL ](ObjClass);
377
418
  var rCamelCase = /-([a-z])/g;
378
419
  var rNormalizeInvalid = /([^\w\d_$])/g;
379
420
  var rLeadingNumeric = /^(\d+[\w\d_$])/;
@@ -397,7 +438,7 @@ this.Microsoft = this.Microsoft || {};
397
438
  return (value === null || isUndefined(value));
398
439
  }
399
440
  function hasOwnProperty(obj, prop) {
400
- return !!(obj && ObjHasOwnProperty.call(obj, prop));
441
+ return !!(obj && ObjHasOwnProperty[_DYN_CALL ](obj, prop));
401
442
  }
402
443
  function isObject(value) {
403
444
  return !!(value && typeof value === strShimObject);
@@ -408,11 +449,11 @@ this.Microsoft = this.Microsoft || {};
408
449
  function normalizeJsName(name) {
409
450
  var value = name;
410
451
  if (value && isString(value)) {
411
- value = value.replace(rCamelCase, function (_all, letter) {
452
+ value = value[_DYN_REPLACE ](rCamelCase, function (_all, letter) {
412
453
  return letter.toUpperCase();
413
454
  });
414
- value = value.replace(rNormalizeInvalid, "_");
415
- value = value.replace(rLeadingNumeric, function (_all, match) {
455
+ value = value[_DYN_REPLACE ](rNormalizeInvalid, "_");
456
+ value = value[_DYN_REPLACE ](rLeadingNumeric, function (_all, match) {
416
457
  return "_" + match;
417
458
  });
418
459
  }
@@ -421,24 +462,24 @@ this.Microsoft = this.Microsoft || {};
421
462
  function objForEachKey(target, callbackfn) {
422
463
  if (target) {
423
464
  for (var prop in target) {
424
- if (ObjHasOwnProperty.call(target, prop)) {
425
- callbackfn.call(target, prop, target[prop]);
465
+ if (ObjHasOwnProperty[_DYN_CALL ](target, prop)) {
466
+ callbackfn[_DYN_CALL ](target, prop, target[prop]);
426
467
  }
427
468
  }
428
469
  }
429
470
  }
430
471
  function strContains(value, search) {
431
472
  if (value && search) {
432
- return value.indexOf(search) !== -1;
473
+ return value[_DYN_INDEX_OF$1 ](search) !== -1;
433
474
  }
434
475
  return false;
435
476
  }
436
477
  var isArray = _isArray || _isArrayPoly;
437
478
  function _isArrayPoly(obj) {
438
- return !!(obj && _objToString.call(obj) === "[object Array]");
479
+ return !!(obj && _objToString[_DYN_CALL ](obj) === "[object Array]");
439
480
  }
440
481
  function isError(obj) {
441
- return !!(obj && _objToString.call(obj) === "[object Error]");
482
+ return !!(obj && _objToString[_DYN_CALL ](obj) === "[object Error]");
442
483
  }
443
484
  function isString(value) {
444
485
  return typeof value === "string";
@@ -454,20 +495,20 @@ this.Microsoft = this.Microsoft || {};
454
495
  result = true;
455
496
  }
456
497
  else {
457
- if (proto[strConstructor] && ObjHasOwnProperty.call(proto, strConstructor)) {
498
+ if (proto[strConstructor] && ObjHasOwnProperty[_DYN_CALL ](proto, strConstructor)) {
458
499
  proto = proto[strConstructor];
459
500
  }
460
- result = typeof proto === strShimFunction && _fnToString.call(proto) === _objFunctionString;
501
+ result = typeof proto === strShimFunction && _fnToString[_DYN_CALL ](proto) === _objFunctionString;
461
502
  }
462
503
  }
463
504
  return result;
464
505
  }
465
506
  function arrForEach(arr, callbackfn, thisArg) {
466
- var len = arr.length;
507
+ var len = arr[_DYN_LENGTH$1 ];
467
508
  try {
468
509
  for (var idx = 0; idx < len; idx++) {
469
510
  if (idx in arr) {
470
- if (callbackfn.call(thisArg || arr, arr[idx], idx, arr) === -1) {
511
+ if (callbackfn[_DYN_CALL ](thisArg || arr, arr[idx], idx, arr) === -1) {
471
512
  break;
472
513
  }
473
514
  }
@@ -496,15 +537,15 @@ this.Microsoft = this.Microsoft || {};
496
537
  }
497
538
  var result = [];
498
539
  for (var prop in obj) {
499
- if (obj && ObjHasOwnProperty.call(obj, prop)) {
500
- result.push(prop);
540
+ if (obj && ObjHasOwnProperty[_DYN_CALL ](obj, prop)) {
541
+ result[_DYN_PUSH ](prop);
501
542
  }
502
543
  }
503
544
  if (_objKeysHasDontEnumBug) {
504
- var dontEnumsLength = _objKeysDontEnums.length;
545
+ var dontEnumsLength = _objKeysDontEnums[_DYN_LENGTH$1 ];
505
546
  for (var lp = 0; lp < dontEnumsLength; lp++) {
506
- if (obj && ObjHasOwnProperty.call(obj, _objKeysDontEnums[lp])) {
507
- result.push(_objKeysDontEnums[lp]);
547
+ if (obj && ObjHasOwnProperty[_DYN_CALL ](obj, _objKeysDontEnums[lp])) {
548
+ result[_DYN_PUSH ](_objKeysDontEnums[lp]);
508
549
  }
509
550
  }
510
551
  }
@@ -551,9 +592,9 @@ this.Microsoft = this.Microsoft || {};
551
592
  }
552
593
  function getExceptionName(object) {
553
594
  if (isError(object)) {
554
- return object.name;
595
+ return object[_DYN_NAME$1 ];
555
596
  }
556
- return strEmpty;
597
+ return STR_EMPTY;
557
598
  }
558
599
  function setValue(target, field, value, valChk, srcChk) {
559
600
  var theValue = value;
@@ -566,6 +607,9 @@ this.Microsoft = this.Microsoft || {};
566
607
  }
567
608
  return theValue;
568
609
  }
610
+ function getCfgValue(theValue, defaultValue) {
611
+ return !isNullOrUndefined(theValue) ? theValue : defaultValue;
612
+ }
569
613
  function throwError(message) {
570
614
  throw new Error(message);
571
615
  }
@@ -584,7 +628,7 @@ this.Microsoft = this.Microsoft || {};
584
628
  src = srcFunc();
585
629
  }
586
630
  if (src) {
587
- return src[funcName].apply(src, originalArguments);
631
+ return src[funcName][_DYN_APPLY ](src, originalArguments);
588
632
  }
589
633
  };
590
634
  }
@@ -598,7 +642,7 @@ this.Microsoft = this.Microsoft || {};
598
642
  function objExtend(obj1, obj2, obj3, obj4, obj5, obj6) {
599
643
  var theArgs = arguments;
600
644
  var extended = theArgs[0] || {};
601
- var argLen = theArgs.length;
645
+ var argLen = theArgs[_DYN_LENGTH$1 ];
602
646
  var deep = false;
603
647
  var idx = 1;
604
648
  if (argLen > 0 && isBoolean(extended)) {
@@ -614,7 +658,7 @@ this.Microsoft = this.Microsoft || {};
614
658
  var isArgArray = isArray(arg);
615
659
  var isArgObj = isObject(arg);
616
660
  for (var prop in arg) {
617
- var propOk = (isArgArray && (prop in arg)) || (isArgObj && (ObjHasOwnProperty.call(arg, prop)));
661
+ var propOk = (isArgArray && (prop in arg)) || (isArgObj && (ObjHasOwnProperty[_DYN_CALL ](arg, prop)));
618
662
  if (!propOk) {
619
663
  continue;
620
664
  }
@@ -738,18 +782,18 @@ this.Microsoft = this.Microsoft || {};
738
782
  }
739
783
  function isIE() {
740
784
  var nav = getNavigator();
741
- if (nav && (nav.userAgent !== _navUserAgentCheck || _isTrident === null)) {
742
- _navUserAgentCheck = nav.userAgent;
743
- var userAgent = (_navUserAgentCheck || strEmpty).toLowerCase();
785
+ if (nav && (nav[_DYN_USER_AGENT ] !== _navUserAgentCheck || _isTrident === null)) {
786
+ _navUserAgentCheck = nav[_DYN_USER_AGENT ];
787
+ var userAgent = (_navUserAgentCheck || STR_EMPTY)[_DYN_TO_LOWER_CASE ]();
744
788
  _isTrident = (strContains(userAgent, strMsie) || strContains(userAgent, strTrident));
745
789
  }
746
790
  return _isTrident;
747
791
  }
748
792
  function dumpObj(object) {
749
- var objectTypeDump = Object[strShimPrototype].toString.call(object);
750
- var propertyValueDump = strEmpty;
793
+ var objectTypeDump = Object[strShimPrototype].toString[_DYN_CALL ](object);
794
+ var propertyValueDump = STR_EMPTY;
751
795
  if (objectTypeDump === "[object Error]") {
752
- propertyValueDump = "{ stack: '" + object.stack + "', message: '" + object.message + "', name: '" + object.name + "'";
796
+ propertyValueDump = "{ stack: '" + object.stack + "', message: '" + object.message + "', name: '" + object[_DYN_NAME$1 ] + "'";
753
797
  }
754
798
  else if (hasJSON()) {
755
799
  propertyValueDump = getJSON().stringify(object);
@@ -776,13 +820,11 @@ this.Microsoft = this.Microsoft || {};
776
820
  var AiNonUserActionablePrefix = "AI (Internal): ";
777
821
  var AiUserActionablePrefix = "AI: ";
778
822
  var AIInternalMessagePrefix = "AITR_";
779
- var strErrorToConsole = "errorToConsole";
780
- var strWarnToConsole = "warnToConsole";
781
823
  function _sanitizeDiagnosticText(text) {
782
824
  if (text) {
783
- return "\"" + text.replace(/\"/g, strEmpty) + "\"";
825
+ return "\"" + text[_DYN_REPLACE ](/\"/g, STR_EMPTY) + "\"";
784
826
  }
785
- return strEmpty;
827
+ return STR_EMPTY;
786
828
  }
787
829
  function _logToConsole(func, message) {
788
830
  var theConsole = getConsole();
@@ -800,23 +842,23 @@ this.Microsoft = this.Microsoft || {};
800
842
  function _InternalLogMessage(msgId, msg, isUserAct, properties) {
801
843
  if (isUserAct === void 0) { isUserAct = false; }
802
844
  var _self = this;
803
- _self.messageId = msgId;
804
- _self.message =
845
+ _self[_DYN_MESSAGE_ID ] = msgId;
846
+ _self[_DYN_MESSAGE ] =
805
847
  (isUserAct ? AiUserActionablePrefix : AiNonUserActionablePrefix) +
806
848
  msgId;
807
- var strProps = strEmpty;
849
+ var strProps = STR_EMPTY;
808
850
  if (hasJSON()) {
809
851
  strProps = getJSON().stringify(properties);
810
852
  }
811
- var diagnosticText = (msg ? " message:" + _sanitizeDiagnosticText(msg) : strEmpty) +
812
- (properties ? " props:" + _sanitizeDiagnosticText(strProps) : strEmpty);
813
- _self.message += diagnosticText;
853
+ var diagnosticText = (msg ? " message:" + _sanitizeDiagnosticText(msg) : STR_EMPTY) +
854
+ (properties ? " props:" + _sanitizeDiagnosticText(strProps) : STR_EMPTY);
855
+ _self[_DYN_MESSAGE ] += diagnosticText;
814
856
  }
815
857
  _InternalLogMessage.dataType = "MessageData";
816
858
  return _InternalLogMessage;
817
859
  }());
818
860
  function safeGetLogger(core, config) {
819
- return (core || {}).logger || new DiagnosticLogger(config);
861
+ return (core || {})[_DYN_LOGGER ] || new DiagnosticLogger(config);
820
862
  }
821
863
  var DiagnosticLogger = /** @class */ (function () {
822
864
  function DiagnosticLogger(config) {
@@ -824,48 +866,49 @@ this.Microsoft = this.Microsoft || {};
824
866
  this.queue = [];
825
867
  var _messageCount = 0;
826
868
  var _messageLogged = {};
869
+ var _loggingLevelConsole;
870
+ var _loggingLevelTelemetry;
871
+ var _maxInternalMessageLimit;
872
+ var _enableDebugExceptions;
827
873
  dynamicProto(DiagnosticLogger, this, function (_self) {
828
- if (isNullOrUndefined(config)) {
829
- config = {};
830
- }
831
- _self.consoleLoggingLevel = function () { return _getConfigValue("loggingLevelConsole", 0); };
832
- _self.telemetryLoggingLevel = function () { return _getConfigValue("loggingLevelTelemetry", 1); };
833
- _self.maxInternalMessageLimit = function () { return _getConfigValue("maxMessageLimit", 25); };
834
- _self.enableDebugExceptions = function () { return _getConfigValue("enableDebugExceptions", false); };
874
+ _setDefaultsFromConfig(config || {});
875
+ _self.consoleLoggingLevel = function () { return _loggingLevelConsole; };
876
+ _self.telemetryLoggingLevel = function () { return _loggingLevelTelemetry; };
877
+ _self.maxInternalMessageLimit = function () { return _maxInternalMessageLimit; };
878
+ _self[_DYN_ENABLE_DEBUG_EXCEPTI4 ] = function () { return _enableDebugExceptions; };
835
879
  _self.throwInternal = function (severity, msgId, msg, properties, isUserAct) {
836
880
  if (isUserAct === void 0) { isUserAct = false; }
837
881
  var message = new _InternalLogMessage(msgId, msg, isUserAct, properties);
838
- if (_self.enableDebugExceptions()) {
882
+ if (_enableDebugExceptions) {
839
883
  throw dumpObj(message);
840
884
  }
841
885
  else {
842
- var logFunc = severity === 1 ? strErrorToConsole : strWarnToConsole;
843
- if (!isUndefined(message.message)) {
844
- var logLevel = _self.consoleLoggingLevel();
886
+ var logFunc = severity === 1 ? STR_ERROR_TO_CONSOLE : STR_WARN_TO_CONSOLE;
887
+ if (!isUndefined(message[_DYN_MESSAGE ])) {
845
888
  if (isUserAct) {
846
- var messageKey = +message.messageId;
847
- if (!_messageLogged[messageKey] && logLevel >= severity) {
848
- _self[logFunc](message.message);
889
+ var messageKey = +message[_DYN_MESSAGE_ID ];
890
+ if (!_messageLogged[messageKey] && _loggingLevelConsole >= severity) {
891
+ _self[logFunc](message[_DYN_MESSAGE ]);
849
892
  _messageLogged[messageKey] = true;
850
893
  }
851
894
  }
852
895
  else {
853
- if (logLevel >= severity) {
854
- _self[logFunc](message.message);
896
+ if (_loggingLevelConsole >= severity) {
897
+ _self[logFunc](message[_DYN_MESSAGE ]);
855
898
  }
856
899
  }
857
- _self.logInternalMessage(severity, message);
900
+ _logInternalMessage(severity, message);
858
901
  }
859
902
  else {
860
903
  _debugExtMsg("throw" + (severity === 1 ? "Critical" : "Warning"), message);
861
904
  }
862
905
  }
863
906
  };
864
- _self.warnToConsole = function (message) {
907
+ _self[STR_WARN_TO_CONSOLE ] = function (message) {
865
908
  _logToConsole("warn", message);
866
909
  _debugExtMsg("warning", message);
867
910
  };
868
- _self.errorToConsole = function (message) {
911
+ _self[STR_ERROR_TO_CONSOLE ] = function (message) {
869
912
  _logToConsole("error", message);
870
913
  _debugExtMsg("error", message);
871
914
  };
@@ -873,12 +916,13 @@ this.Microsoft = this.Microsoft || {};
873
916
  _messageCount = 0;
874
917
  _messageLogged = {};
875
918
  };
876
- _self.logInternalMessage = function (severity, message) {
919
+ _self[_DYN_LOG_INTERNAL_MESSAGE ] = _logInternalMessage;
920
+ function _logInternalMessage(severity, message) {
877
921
  if (_areInternalMessagesThrottled()) {
878
922
  return;
879
923
  }
880
924
  var logMessage = true;
881
- var messageKey = AIInternalMessagePrefix + message.messageId;
925
+ var messageKey = AIInternalMessagePrefix + message[_DYN_MESSAGE_ID ];
882
926
  if (_messageLogged[messageKey]) {
883
927
  logMessage = false;
884
928
  }
@@ -886,38 +930,37 @@ this.Microsoft = this.Microsoft || {};
886
930
  _messageLogged[messageKey] = true;
887
931
  }
888
932
  if (logMessage) {
889
- if (severity <= _self.telemetryLoggingLevel()) {
890
- _self.queue.push(message);
933
+ if (severity <= _loggingLevelTelemetry) {
934
+ _self.queue[_DYN_PUSH ](message);
891
935
  _messageCount++;
892
936
  _debugExtMsg((severity === 1 ? "error" : "warn"), message);
893
937
  }
894
- if (_messageCount === _self.maxInternalMessageLimit()) {
938
+ if (_messageCount === _maxInternalMessageLimit) {
895
939
  var throttleLimitMessage = "Internal events throttle limit per PageView reached for this app.";
896
940
  var throttleMessage = new _InternalLogMessage(23 , throttleLimitMessage, false);
897
- _self.queue.push(throttleMessage);
941
+ _self.queue[_DYN_PUSH ](throttleMessage);
898
942
  if (severity === 1 ) {
899
- _self.errorToConsole(throttleLimitMessage);
943
+ _self[STR_ERROR_TO_CONSOLE ](throttleLimitMessage);
900
944
  }
901
945
  else {
902
- _self.warnToConsole(throttleLimitMessage);
946
+ _self[STR_WARN_TO_CONSOLE ](throttleLimitMessage);
903
947
  }
904
948
  }
905
949
  }
906
- };
907
- function _getConfigValue(name, defValue) {
908
- var value = config[name];
909
- if (!isNullOrUndefined(value)) {
910
- return value;
911
- }
912
- return defValue;
950
+ }
951
+ function _setDefaultsFromConfig(config) {
952
+ _loggingLevelConsole = getCfgValue(config.loggingLevelConsole, 0);
953
+ _loggingLevelTelemetry = getCfgValue(config.loggingLevelTelemetry, 1);
954
+ _maxInternalMessageLimit = getCfgValue(config.maxMessageLimit, 25);
955
+ _enableDebugExceptions = getCfgValue(config[_DYN_ENABLE_DEBUG_EXCEPTI4 ], false);
913
956
  }
914
957
  function _areInternalMessagesThrottled() {
915
- return _messageCount >= _self.maxInternalMessageLimit();
958
+ return _messageCount >= _maxInternalMessageLimit;
916
959
  }
917
960
  function _debugExtMsg(name, data) {
918
- var dbgExt = getDebugExt(config);
919
- if (dbgExt && dbgExt.diagLog) {
920
- dbgExt.diagLog(name, data);
961
+ var dbgExt = getDebugExt(config || {});
962
+ if (dbgExt && dbgExt[_DYN_DIAG_LOG ]) {
963
+ dbgExt[_DYN_DIAG_LOG ](name, data);
921
964
  }
922
965
  }
923
966
  });
@@ -925,20 +968,25 @@ this.Microsoft = this.Microsoft || {};
925
968
  DiagnosticLogger.__ieDyn=1;
926
969
  return DiagnosticLogger;
927
970
  }());
971
+ function _getLogger(logger) {
972
+ return (logger || new DiagnosticLogger());
973
+ }
928
974
  function _throwInternal(logger, severity, msgId, msg, properties, isUserAct) {
929
975
  if (isUserAct === void 0) { isUserAct = false; }
930
- (logger || new DiagnosticLogger()).throwInternal(severity, msgId, msg, properties, isUserAct);
976
+ _getLogger(logger).throwInternal(severity, msgId, msg, properties, isUserAct);
931
977
  }
932
978
 
933
979
  var strExecutionContextKey = "ctx";
980
+ var strParentContextKey = "ParentContextKey";
981
+ var strChildrenContextKey = "ChildrenContextKey";
934
982
  var PerfEvent = /** @class */ (function () {
935
983
  function PerfEvent(name, payloadDetails, isAsync) {
936
984
  var _self = this;
937
985
  var accessorDefined = false;
938
986
  _self.start = dateNow();
939
- _self.name = name;
940
- _self.isAsync = isAsync;
941
- _self.isChildEvt = function () { return false; };
987
+ _self[_DYN_NAME$1 ] = name;
988
+ _self[_DYN_IS_ASYNC ] = isAsync;
989
+ _self[_DYN_IS_CHILD_EVT ] = function () { return false; };
942
990
  if (isFunction(payloadDetails)) {
943
991
  var theDetails_1;
944
992
  accessorDefined = objDefineAccessors(_self, "payload", function () {
@@ -949,24 +997,24 @@ this.Microsoft = this.Microsoft || {};
949
997
  return theDetails_1;
950
998
  });
951
999
  }
952
- _self.getCtx = function (key) {
1000
+ _self[_DYN_GET_CTX ] = function (key) {
953
1001
  if (key) {
954
- if (key === PerfEvent.ParentContextKey || key === PerfEvent.ChildrenContextKey) {
1002
+ if (key === PerfEvent[strParentContextKey] || key === PerfEvent[strChildrenContextKey]) {
955
1003
  return _self[key];
956
1004
  }
957
1005
  return (_self[strExecutionContextKey] || {})[key];
958
1006
  }
959
1007
  return null;
960
1008
  };
961
- _self.setCtx = function (key, value) {
1009
+ _self[_DYN_SET_CTX ] = function (key, value) {
962
1010
  if (key) {
963
- if (key === PerfEvent.ParentContextKey) {
1011
+ if (key === PerfEvent[strParentContextKey]) {
964
1012
  if (!_self[key]) {
965
- _self.isChildEvt = function () { return true; };
1013
+ _self[_DYN_IS_CHILD_EVT ] = function () { return true; };
966
1014
  }
967
1015
  _self[key] = value;
968
1016
  }
969
- else if (key === PerfEvent.ChildrenContextKey) {
1017
+ else if (key === PerfEvent[strChildrenContextKey]) {
970
1018
  _self[key] = value;
971
1019
  }
972
1020
  else {
@@ -975,20 +1023,20 @@ this.Microsoft = this.Microsoft || {};
975
1023
  }
976
1024
  }
977
1025
  };
978
- _self.complete = function () {
1026
+ _self[_DYN_COMPLETE ] = function () {
979
1027
  var childTime = 0;
980
- var childEvts = _self.getCtx(PerfEvent.ChildrenContextKey);
1028
+ var childEvts = _self[_DYN_GET_CTX ](PerfEvent[strChildrenContextKey]);
981
1029
  if (isArray(childEvts)) {
982
- for (var lp = 0; lp < childEvts.length; lp++) {
1030
+ for (var lp = 0; lp < childEvts[_DYN_LENGTH$1 ]; lp++) {
983
1031
  var childEvt = childEvts[lp];
984
1032
  if (childEvt) {
985
- childTime += childEvt.time;
1033
+ childTime += childEvt[_DYN_TIME ];
986
1034
  }
987
1035
  }
988
1036
  }
989
- _self.time = dateNow() - _self.start;
990
- _self.exTime = _self.time - childTime;
991
- _self.complete = function () { };
1037
+ _self[_DYN_TIME ] = dateNow() - _self.start;
1038
+ _self.exTime = _self[_DYN_TIME ] - childTime;
1039
+ _self[_DYN_COMPLETE ] = function () { };
992
1040
  if (!accessorDefined && isFunction(payloadDetails)) {
993
1041
  _self.payload = payloadDetails();
994
1042
  }
@@ -1002,40 +1050,40 @@ this.Microsoft = this.Microsoft || {};
1002
1050
  function doPerf(mgrSource, getSource, func, details, isAsync) {
1003
1051
  if (mgrSource) {
1004
1052
  var perfMgr = mgrSource;
1005
- if (isFunction(perfMgr["getPerfMgr"])) {
1006
- perfMgr = perfMgr["getPerfMgr"]();
1053
+ if (perfMgr[STR_GET_PERF_MGR]) {
1054
+ perfMgr = perfMgr[STR_GET_PERF_MGR]();
1007
1055
  }
1008
1056
  if (perfMgr) {
1009
1057
  var perfEvt = void 0;
1010
- var currentActive = perfMgr.getCtx(doPerfActiveKey);
1058
+ var currentActive = perfMgr[_DYN_GET_CTX ](doPerfActiveKey);
1011
1059
  try {
1012
1060
  perfEvt = perfMgr.create(getSource(), details, isAsync);
1013
1061
  if (perfEvt) {
1014
- if (currentActive && perfEvt.setCtx) {
1015
- perfEvt.setCtx(PerfEvent.ParentContextKey, currentActive);
1016
- if (currentActive.getCtx && currentActive.setCtx) {
1017
- var children = currentActive.getCtx(PerfEvent.ChildrenContextKey);
1062
+ if (currentActive && perfEvt[_DYN_SET_CTX ]) {
1063
+ perfEvt[_DYN_SET_CTX ](PerfEvent[strParentContextKey], currentActive);
1064
+ if (currentActive[_DYN_GET_CTX ] && currentActive[_DYN_SET_CTX ]) {
1065
+ var children = currentActive[_DYN_GET_CTX ](PerfEvent[strChildrenContextKey]);
1018
1066
  if (!children) {
1019
1067
  children = [];
1020
- currentActive.setCtx(PerfEvent.ChildrenContextKey, children);
1068
+ currentActive[_DYN_SET_CTX ](PerfEvent[strChildrenContextKey], children);
1021
1069
  }
1022
- children.push(perfEvt);
1070
+ children[_DYN_PUSH ](perfEvt);
1023
1071
  }
1024
1072
  }
1025
- perfMgr.setCtx(doPerfActiveKey, perfEvt);
1073
+ perfMgr[_DYN_SET_CTX ](doPerfActiveKey, perfEvt);
1026
1074
  return func(perfEvt);
1027
1075
  }
1028
1076
  }
1029
1077
  catch (ex) {
1030
- if (perfEvt && perfEvt.setCtx) {
1031
- perfEvt.setCtx("exception", ex);
1078
+ if (perfEvt && perfEvt[_DYN_SET_CTX ]) {
1079
+ perfEvt[_DYN_SET_CTX ]("exception", ex);
1032
1080
  }
1033
1081
  }
1034
1082
  finally {
1035
1083
  if (perfEvt) {
1036
1084
  perfMgr.fire(perfEvt);
1037
1085
  }
1038
- perfMgr.setCtx(doPerfActiveKey, currentActive);
1086
+ perfMgr[_DYN_SET_CTX ](doPerfActiveKey, currentActive);
1039
1087
  }
1040
1088
  }
1041
1089
  }
@@ -1097,8 +1145,8 @@ this.Microsoft = this.Microsoft || {};
1097
1145
  var base64chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
1098
1146
  var number = random32() >>> 0;
1099
1147
  var chars = 0;
1100
- var result = strEmpty;
1101
- while (result.length < maxLength) {
1148
+ var result = STR_EMPTY;
1149
+ while (result[_DYN_LENGTH$1 ] < maxLength) {
1102
1150
  chars++;
1103
1151
  result += base64chars.charAt(number & 0x3F);
1104
1152
  number >>>= 6;
@@ -1111,7 +1159,7 @@ this.Microsoft = this.Microsoft || {};
1111
1159
  }
1112
1160
 
1113
1161
  var _objDefineProperty = ObjDefineProperty;
1114
- var version = "2.8.5-nightly.2206-04";
1162
+ var version = "2.8.5-nightly.2206-06";
1115
1163
  var instanceName = "." + newId(6);
1116
1164
  var _dataUid = 0;
1117
1165
  function _createAccessor(target, prop, value) {
@@ -1130,7 +1178,7 @@ this.Microsoft = this.Microsoft || {};
1130
1178
  return false;
1131
1179
  }
1132
1180
  function _canAcceptData(target) {
1133
- return target.nodeType === 1 || target.nodeType === 9 || !(+target.nodeType);
1181
+ return target[_DYN_NODE_TYPE ] === 1 || target[_DYN_NODE_TYPE ] === 9 || !(+target[_DYN_NODE_TYPE ]);
1134
1182
  }
1135
1183
  function _getCache(data, target) {
1136
1184
  var theCache = target[data.id];
@@ -1150,11 +1198,11 @@ this.Microsoft = this.Microsoft || {};
1150
1198
  }
1151
1199
  function createUniqueNamespace(name, includeVersion) {
1152
1200
  if (includeVersion === void 0) { includeVersion = false; }
1153
- return normalizeJsName(name + (_dataUid++) + (includeVersion ? "." + version : "") + instanceName);
1201
+ return normalizeJsName(name + (_dataUid++) + (includeVersion ? "." + version : STR_EMPTY) + instanceName);
1154
1202
  }
1155
1203
  function createElmNodeData(name) {
1156
1204
  var data = {
1157
- id: createUniqueNamespace("_aiData-" + (name || "") + "." + version),
1205
+ id: createUniqueNamespace("_aiData-" + (name || STR_EMPTY) + "." + version),
1158
1206
  accept: function (target) {
1159
1207
  return _canAcceptData(target);
1160
1208
  },
@@ -1196,16 +1244,17 @@ this.Microsoft = this.Microsoft || {};
1196
1244
  var elmNodeData = createElmNodeData("events");
1197
1245
  var eventNamespace = /^([^.]*)(?:\.(.+)|)/;
1198
1246
  function _normalizeNamespace(name) {
1199
- if (name && name.replace) {
1200
- return name.replace(/^\s*\.*|\.*\s*$/g, "");
1247
+ if (name && name[_DYN_REPLACE ]) {
1248
+ return name.replace(/^\s*\.*|\.*\s*$/g, STR_EMPTY);
1201
1249
  }
1202
1250
  return name;
1203
1251
  }
1204
1252
  function _getEvtNamespace(eventName, evtNamespace) {
1253
+ var _a;
1205
1254
  if (evtNamespace) {
1206
- var theNamespace_1 = "";
1255
+ var theNamespace_1 = STR_EMPTY;
1207
1256
  if (isArray(evtNamespace)) {
1208
- theNamespace_1 = "";
1257
+ theNamespace_1 = STR_EMPTY;
1209
1258
  arrForEach(evtNamespace, function (name) {
1210
1259
  name = _normalizeNamespace(name);
1211
1260
  if (name) {
@@ -1223,14 +1272,14 @@ this.Microsoft = this.Microsoft || {};
1223
1272
  if (theNamespace_1[0] !== ".") {
1224
1273
  theNamespace_1 = "." + theNamespace_1;
1225
1274
  }
1226
- eventName = (eventName || "") + theNamespace_1;
1275
+ eventName = (eventName || STR_EMPTY) + theNamespace_1;
1227
1276
  }
1228
1277
  }
1229
- var parsedEvent = (eventNamespace.exec(eventName || "") || []);
1230
- return {
1231
- type: parsedEvent[1],
1232
- ns: ((parsedEvent[2] || "").replace(rRemoveEmptyNs, ".").replace(rRemoveTrailingEmptyNs, "").split(".").sort()).join(".")
1233
- };
1278
+ var parsedEvent = (eventNamespace.exec(eventName || STR_EMPTY) || []);
1279
+ return _a = {},
1280
+ _a[_DYN_TYPE ] = parsedEvent[1],
1281
+ _a.ns = ((parsedEvent[2] || STR_EMPTY).replace(rRemoveEmptyNs, ".").replace(rRemoveTrailingEmptyNs, STR_EMPTY)[_DYN_SPLIT ](".").sort()).join("."),
1282
+ _a;
1234
1283
  }
1235
1284
  function _getRegisteredEvents(target, evtName, addDefault) {
1236
1285
  if (addDefault === void 0) { addDefault = true; }
@@ -1242,53 +1291,53 @@ this.Microsoft = this.Microsoft || {};
1242
1291
  return registeredEvents;
1243
1292
  }
1244
1293
  function _doDetach(obj, evtName, handlerRef, useCapture) {
1245
- if (obj && evtName && evtName.type) {
1294
+ if (obj && evtName && evtName[_DYN_TYPE ]) {
1246
1295
  if (obj[strRemoveEventListener]) {
1247
- obj[strRemoveEventListener](evtName.type, handlerRef, useCapture);
1296
+ obj[strRemoveEventListener](evtName[_DYN_TYPE ], handlerRef, useCapture);
1248
1297
  }
1249
1298
  else if (obj[strDetachEvent]) {
1250
- obj[strDetachEvent](strOnPrefix + evtName.type, handlerRef);
1299
+ obj[strDetachEvent](strOnPrefix + evtName[_DYN_TYPE ], handlerRef);
1251
1300
  }
1252
1301
  }
1253
1302
  }
1254
1303
  function _doAttach(obj, evtName, handlerRef, useCapture) {
1255
1304
  var result = false;
1256
- if (obj && evtName && evtName.type && handlerRef) {
1305
+ if (obj && evtName && evtName[_DYN_TYPE ] && handlerRef) {
1257
1306
  if (obj[strAddEventHelper]) {
1258
- obj[strAddEventHelper](evtName.type, handlerRef, useCapture);
1307
+ obj[strAddEventHelper](evtName[_DYN_TYPE ], handlerRef, useCapture);
1259
1308
  result = true;
1260
1309
  }
1261
1310
  else if (obj[strAttachEvent]) {
1262
- obj[strAttachEvent](strOnPrefix + evtName.type, handlerRef);
1311
+ obj[strAttachEvent](strOnPrefix + evtName[_DYN_TYPE ], handlerRef);
1263
1312
  result = true;
1264
1313
  }
1265
1314
  }
1266
1315
  return result;
1267
1316
  }
1268
1317
  function _doUnregister(target, events, evtName, unRegFn) {
1269
- var idx = events.length;
1318
+ var idx = events[_DYN_LENGTH$1 ];
1270
1319
  while (idx--) {
1271
1320
  var theEvent = events[idx];
1272
1321
  if (theEvent) {
1273
1322
  if (!evtName.ns || evtName.ns === theEvent.evtName.ns) {
1274
1323
  if (!unRegFn || unRegFn(theEvent)) {
1275
- _doDetach(target, theEvent.evtName, theEvent.handler, theEvent.capture);
1276
- events.splice(idx, 1);
1324
+ _doDetach(target, theEvent.evtName, theEvent[_DYN_HANDLER ], theEvent.capture);
1325
+ events[_DYN_SPLICE ](idx, 1);
1277
1326
  }
1278
1327
  }
1279
1328
  }
1280
1329
  }
1281
1330
  }
1282
1331
  function _unregisterEvents(target, evtName, unRegFn) {
1283
- if (evtName.type) {
1284
- _doUnregister(target, _getRegisteredEvents(target, evtName.type), evtName, unRegFn);
1332
+ if (evtName[_DYN_TYPE ]) {
1333
+ _doUnregister(target, _getRegisteredEvents(target, evtName[_DYN_TYPE ]), evtName, unRegFn);
1285
1334
  }
1286
1335
  else {
1287
1336
  var eventCache = elmNodeData.get(target, strEvents, {});
1288
1337
  objForEachKey(eventCache, function (evtType, events) {
1289
1338
  _doUnregister(target, events, evtName, unRegFn);
1290
1339
  });
1291
- if (objKeys(eventCache).length === 0) {
1340
+ if (objKeys(eventCache)[_DYN_LENGTH$1 ] === 0) {
1292
1341
  elmNodeData.kill(target, strEvents);
1293
1342
  }
1294
1343
  }
@@ -1302,7 +1351,7 @@ this.Microsoft = this.Microsoft || {};
1302
1351
  else {
1303
1352
  newNamespaces = [theNamespace, namespaces];
1304
1353
  }
1305
- newNamespaces = (_getEvtNamespace("xx", newNamespaces).ns).split(".");
1354
+ newNamespaces = (_getEvtNamespace("xx", newNamespaces).ns)[_DYN_SPLIT ](".");
1306
1355
  }
1307
1356
  else {
1308
1357
  newNamespaces = theNamespace;
@@ -1310,6 +1359,7 @@ this.Microsoft = this.Microsoft || {};
1310
1359
  return newNamespaces;
1311
1360
  }
1312
1361
  function eventOn(target, eventName, handlerRef, evtNamespace, useCapture) {
1362
+ var _a;
1313
1363
  if (useCapture === void 0) { useCapture = false; }
1314
1364
  var result = false;
1315
1365
  if (target) {
@@ -1317,13 +1367,14 @@ this.Microsoft = this.Microsoft || {};
1317
1367
  var evtName = _getEvtNamespace(eventName, evtNamespace);
1318
1368
  result = _doAttach(target, evtName, handlerRef, useCapture);
1319
1369
  if (result && elmNodeData.accept(target)) {
1320
- var registeredEvent = {
1321
- guid: _guid++,
1322
- evtName: evtName,
1323
- handler: handlerRef,
1324
- capture: useCapture
1325
- };
1326
- _getRegisteredEvents(target, evtName.type).push(registeredEvent);
1370
+ var registeredEvent = (_a = {
1371
+ guid: _guid++,
1372
+ evtName: evtName
1373
+ },
1374
+ _a[_DYN_HANDLER ] = handlerRef,
1375
+ _a.capture = useCapture,
1376
+ _a);
1377
+ _getRegisteredEvents(target, evtName.type)[_DYN_PUSH ](registeredEvent);
1327
1378
  }
1328
1379
  }
1329
1380
  catch (e) {
@@ -1338,7 +1389,7 @@ this.Microsoft = this.Microsoft || {};
1338
1389
  var evtName_1 = _getEvtNamespace(eventName, evtNamespace);
1339
1390
  var found_1 = false;
1340
1391
  _unregisterEvents(target, evtName_1, function (regEvent) {
1341
- if ((evtName_1.ns && !handlerRef) || regEvent.handler === handlerRef) {
1392
+ if ((evtName_1.ns && !handlerRef) || regEvent[_DYN_HANDLER ] === handlerRef) {
1342
1393
  found_1 = true;
1343
1394
  return true;
1344
1395
  }
@@ -1353,7 +1404,6 @@ this.Microsoft = this.Microsoft || {};
1353
1404
  }
1354
1405
  }
1355
1406
 
1356
- var strDoUnload = "_doUnload";
1357
1407
  var pluginStateData = createElmNodeData("plugin");
1358
1408
  function _getPluginState(plugin) {
1359
1409
  return pluginStateData.get(plugin, "state", {}, true);
@@ -1361,12 +1411,12 @@ this.Microsoft = this.Microsoft || {};
1361
1411
  function unloadComponents(components, unloadCtx, unloadState, asyncCallback) {
1362
1412
  var idx = 0;
1363
1413
  function _doUnload() {
1364
- while (idx < components.length) {
1414
+ while (idx < components[_DYN_LENGTH$1 ]) {
1365
1415
  var component = components[idx++];
1366
1416
  if (component) {
1367
- var func = component[strDoUnload] || component[strDoTeardown];
1417
+ var func = component._doUnload || component[_DYN__DO_TEARDOWN ];
1368
1418
  if (isFunction(func)) {
1369
- if (func.call(component, unloadCtx, unloadState, _doUnload) === true) {
1419
+ if (func[_DYN_CALL ](component, unloadCtx, unloadState, _doUnload) === true) {
1370
1420
  return true;
1371
1421
  }
1372
1422
  }
@@ -1382,12 +1432,12 @@ this.Microsoft = this.Microsoft || {};
1382
1432
  var _chainId = 0;
1383
1433
  function _getNextProxyStart(proxy, core, startAt) {
1384
1434
  while (proxy) {
1385
- if (proxy.getPlugin() === startAt) {
1435
+ if (proxy[_DYN_GET_PLUGIN ]() === startAt) {
1386
1436
  return proxy;
1387
1437
  }
1388
- proxy = proxy.getNext();
1438
+ proxy = proxy[_DYN_GET_NEXT ]();
1389
1439
  }
1390
- return createTelemetryProxyChain([startAt], core.config || {}, core);
1440
+ return createTelemetryProxyChain([startAt], core[_DYN_CONFIG ] || {}, core);
1391
1441
  }
1392
1442
  function _createInternalContext(telemetryChain, config, core, startAt) {
1393
1443
  var _nextProxy = null;
@@ -1428,7 +1478,7 @@ this.Microsoft = this.Microsoft || {};
1428
1478
  args[_i - 2] = arguments[_i];
1429
1479
  }
1430
1480
  if (onComplete) {
1431
- _onComplete.push({
1481
+ _onComplete[_DYN_PUSH ]({
1432
1482
  func: onComplete,
1433
1483
  self: !isUndefined(that) ? that : context.ctx,
1434
1484
  args: args
@@ -1437,16 +1487,16 @@ this.Microsoft = this.Microsoft || {};
1437
1487
  }
1438
1488
  function _moveNext() {
1439
1489
  var nextProxy = _nextProxy;
1440
- _nextProxy = nextProxy ? nextProxy.getNext() : null;
1490
+ _nextProxy = nextProxy ? nextProxy[_DYN_GET_NEXT ]() : null;
1441
1491
  if (!nextProxy) {
1442
1492
  var onComplete = _onComplete;
1443
- if (onComplete && onComplete.length > 0) {
1493
+ if (onComplete && onComplete[_DYN_LENGTH$1 ] > 0) {
1444
1494
  arrForEach(onComplete, function (completeDetails) {
1445
1495
  try {
1446
- completeDetails.func.call(completeDetails.self, completeDetails.args);
1496
+ completeDetails.func[_DYN_CALL ](completeDetails.self, completeDetails.args);
1447
1497
  }
1448
1498
  catch (e) {
1449
- _throwInternal(core.logger, 2 , 73 , "Unexpected Exception during onComplete - " + dumpObj(e));
1499
+ _throwInternal(core[_DYN_LOGGER ], 2 , 73 , "Unexpected Exception during onComplete - " + dumpObj(e));
1450
1500
  }
1451
1501
  });
1452
1502
  _onComplete = [];
@@ -1459,7 +1509,7 @@ this.Microsoft = this.Microsoft || {};
1459
1509
  if (mergeDefault === void 0) { mergeDefault = 0 ; }
1460
1510
  var theConfig;
1461
1511
  if (config) {
1462
- var extConfig = config.extensionConfig;
1512
+ var extConfig = config[STR_EXTENSION_CONFIG ];
1463
1513
  if (extConfig && identifier) {
1464
1514
  theConfig = extConfig[identifier];
1465
1515
  }
@@ -1500,7 +1550,7 @@ this.Microsoft = this.Microsoft || {};
1500
1550
  function _iterateChain(cb) {
1501
1551
  var nextPlugin;
1502
1552
  while (!!(nextPlugin = context._next())) {
1503
- var plugin = nextPlugin.getPlugin();
1553
+ var plugin = nextPlugin[_DYN_GET_PLUGIN ]();
1504
1554
  if (plugin) {
1505
1555
  cb(plugin);
1506
1556
  }
@@ -1513,7 +1563,7 @@ this.Microsoft = this.Microsoft || {};
1513
1563
  var context = internalContext.ctx;
1514
1564
  function _processNext(env) {
1515
1565
  var nextPlugin = internalContext._next();
1516
- nextPlugin && nextPlugin.processTelemetry(env, context);
1566
+ nextPlugin && nextPlugin[STR_PROCESS_TELEMETRY ](env, context);
1517
1567
  return !nextPlugin;
1518
1568
  }
1519
1569
  function _createNew(plugins, startAt) {
@@ -1521,14 +1571,14 @@ this.Microsoft = this.Microsoft || {};
1521
1571
  if (isArray(plugins)) {
1522
1572
  plugins = createTelemetryProxyChain(plugins, config, core, startAt);
1523
1573
  }
1524
- return createProcessTelemetryContext(plugins || context.getNext(), config, core, startAt);
1574
+ return createProcessTelemetryContext(plugins || context[_DYN_GET_NEXT ](), config, core, startAt);
1525
1575
  }
1526
- context.processNext = _processNext;
1527
- context.createNew = _createNew;
1576
+ context[_DYN_PROCESS_NEXT ] = _processNext;
1577
+ context[_DYN_CREATE_NEW ] = _createNew;
1528
1578
  return context;
1529
1579
  }
1530
1580
  function createProcessTelemetryUnloadContext(telemetryChain, core, startAt) {
1531
- var config = core.config || {};
1581
+ var config = core[_DYN_CONFIG ] || {};
1532
1582
  var internalContext = _createInternalContext(telemetryChain, config, core, startAt);
1533
1583
  var context = internalContext.ctx;
1534
1584
  function _processNext(unloadState) {
@@ -1541,20 +1591,20 @@ this.Microsoft = this.Microsoft || {};
1541
1591
  if (isArray(plugins)) {
1542
1592
  plugins = createTelemetryProxyChain(plugins, config, core, startAt);
1543
1593
  }
1544
- return createProcessTelemetryUnloadContext(plugins || context.getNext(), core, startAt);
1594
+ return createProcessTelemetryUnloadContext(plugins || context[_DYN_GET_NEXT ](), core, startAt);
1545
1595
  }
1546
- context.processNext = _processNext;
1547
- context.createNew = _createNew;
1596
+ context[_DYN_PROCESS_NEXT ] = _processNext;
1597
+ context[_DYN_CREATE_NEW ] = _createNew;
1548
1598
  return context;
1549
1599
  }
1550
1600
  function createProcessTelemetryUpdateContext(telemetryChain, core, startAt) {
1551
- var config = core.config || {};
1601
+ var config = core[_DYN_CONFIG ] || {};
1552
1602
  var internalContext = _createInternalContext(telemetryChain, config, core, startAt);
1553
1603
  var context = internalContext.ctx;
1554
1604
  function _processNext(updateState) {
1555
1605
  return context.iterate(function (plugin) {
1556
- if (isFunction(plugin.update)) {
1557
- plugin.update(context, updateState);
1606
+ if (isFunction(plugin[_DYN_UPDATE ])) {
1607
+ plugin[_DYN_UPDATE ](context, updateState);
1558
1608
  }
1559
1609
  });
1560
1610
  }
@@ -1563,22 +1613,22 @@ this.Microsoft = this.Microsoft || {};
1563
1613
  if (isArray(plugins)) {
1564
1614
  plugins = createTelemetryProxyChain(plugins, config, core, startAt);
1565
1615
  }
1566
- return createProcessTelemetryUpdateContext(plugins || context.getNext(), core, startAt);
1616
+ return createProcessTelemetryUpdateContext(plugins || context[_DYN_GET_NEXT ](), core, startAt);
1567
1617
  }
1568
- context.processNext = _processNext;
1569
- context.createNew = _createNew;
1618
+ context[_DYN_PROCESS_NEXT ] = _processNext;
1619
+ context[_DYN_CREATE_NEW ] = _createNew;
1570
1620
  return context;
1571
1621
  }
1572
1622
  function createTelemetryProxyChain(plugins, config, core, startAt) {
1573
1623
  var firstProxy = null;
1574
1624
  var add = startAt ? false : true;
1575
- if (isArray(plugins) && plugins.length > 0) {
1625
+ if (isArray(plugins) && plugins[_DYN_LENGTH$1 ] > 0) {
1576
1626
  var lastProxy_1 = null;
1577
1627
  arrForEach(plugins, function (thePlugin) {
1578
1628
  if (!add && startAt === thePlugin) {
1579
1629
  add = true;
1580
1630
  }
1581
- if (add && thePlugin && isFunction(thePlugin.processTelemetry)) {
1631
+ if (add && thePlugin && isFunction(thePlugin[STR_PROCESS_TELEMETRY ])) {
1582
1632
  var newProxy = createTelemetryPluginProxy(thePlugin, config, core);
1583
1633
  if (!firstProxy) {
1584
1634
  firstProxy = newProxy;
@@ -1597,11 +1647,11 @@ this.Microsoft = this.Microsoft || {};
1597
1647
  }
1598
1648
  function createTelemetryPluginProxy(plugin, config, core) {
1599
1649
  var nextProxy = null;
1600
- var hasProcessTelemetry = isFunction(plugin.processTelemetry);
1601
- var hasSetNext = isFunction(plugin.setNextPlugin);
1650
+ var hasProcessTelemetry = isFunction(plugin[STR_PROCESS_TELEMETRY ]);
1651
+ var hasSetNext = isFunction(plugin[_DYN_SET_NEXT_PLUGIN ]);
1602
1652
  var chainId;
1603
1653
  if (plugin) {
1604
- chainId = plugin.identifier + "-" + plugin.priority + "-" + _chainId++;
1654
+ chainId = plugin[_DYN_IDENTIFIER ] + "-" + plugin[STR_PRIORITY ] + "-" + _chainId++;
1605
1655
  }
1606
1656
  else {
1607
1657
  chainId = "Unknown-0-" + _chainId++;
@@ -1633,17 +1683,17 @@ this.Microsoft = this.Microsoft || {};
1633
1683
  }
1634
1684
  function _processChain(itemCtx, processPluginFn, name, details, isAsync) {
1635
1685
  var hasRun = false;
1636
- var identifier = plugin ? plugin.identifier : strTelemetryPluginChain;
1686
+ var identifier = plugin ? plugin[_DYN_IDENTIFIER ] : strTelemetryPluginChain;
1637
1687
  var hasRunContext = itemCtx[strHasRunFlags];
1638
1688
  if (!hasRunContext) {
1639
1689
  hasRunContext = itemCtx[strHasRunFlags] = {};
1640
1690
  }
1641
1691
  itemCtx.setNext(nextProxy);
1642
1692
  if (plugin) {
1643
- doPerf(itemCtx[strCore](), function () { return identifier + ":" + name; }, function () {
1693
+ doPerf(itemCtx[STR_CORE ](), function () { return identifier + ":" + name; }, function () {
1644
1694
  hasRunContext[chainId] = true;
1645
1695
  try {
1646
- var nextId = nextProxy ? nextProxy._id : strEmpty;
1696
+ var nextId = nextProxy ? nextProxy._id : STR_EMPTY;
1647
1697
  if (nextId) {
1648
1698
  hasRunContext[nextId] = false;
1649
1699
  }
@@ -1655,7 +1705,7 @@ this.Microsoft = this.Microsoft || {};
1655
1705
  hasRun = true;
1656
1706
  }
1657
1707
  if (!nextProxy || !hasNextRun) {
1658
- _throwInternal(itemCtx.diagLog(), 1 , 73 , "Plugin [" + identifier + "] failed during " + name + " - " + dumpObj(error) + ", run flags: " + dumpObj(hasRunContext));
1708
+ _throwInternal(itemCtx[_DYN_DIAG_LOG ](), 1 , 73 , "Plugin [" + identifier + "] failed during " + name + " - " + dumpObj(error) + ", run flags: " + dumpObj(hasRunContext));
1659
1709
  }
1660
1710
  }
1661
1711
  }, details, isAsync);
@@ -1669,17 +1719,17 @@ this.Microsoft = this.Microsoft || {};
1669
1719
  return false;
1670
1720
  }
1671
1721
  var pluginState = _getPluginState(plugin);
1672
- if (pluginState.teardown || pluginState[strDisabled]) {
1722
+ if (pluginState[_DYN_TEARDOWN ] || pluginState[STR_DISABLED]) {
1673
1723
  return false;
1674
1724
  }
1675
1725
  if (hasSetNext) {
1676
- plugin.setNextPlugin(nextProxy);
1726
+ plugin[_DYN_SET_NEXT_PLUGIN ](nextProxy);
1677
1727
  }
1678
- plugin.processTelemetry(env, itemCtx);
1728
+ plugin[STR_PROCESS_TELEMETRY ](env, itemCtx);
1679
1729
  return true;
1680
1730
  }
1681
1731
  if (!_processChain(itemCtx, _callProcessTelemetry, "processTelemetry", function () { return ({ item: env }); }, !(env.sync))) {
1682
- itemCtx.processNext(env);
1732
+ itemCtx[_DYN_PROCESS_NEXT ](env);
1683
1733
  }
1684
1734
  }
1685
1735
  function _unloadPlugin(unloadCtx, unloadState) {
@@ -1687,20 +1737,20 @@ this.Microsoft = this.Microsoft || {};
1687
1737
  var hasRun = false;
1688
1738
  if (plugin) {
1689
1739
  var pluginState = _getPluginState(plugin);
1690
- var pluginCore = plugin[strCore] || pluginState.core;
1691
- if (plugin && (!pluginCore || pluginCore === unloadCtx[strCore]()) && !pluginState[strTeardown]) {
1692
- pluginState[strCore] = null;
1693
- pluginState[strTeardown] = true;
1694
- pluginState[strIsInitialized] = false;
1695
- if (plugin[strTeardown] && plugin[strTeardown](unloadCtx, unloadState) === true) {
1740
+ var pluginCore = plugin[STR_CORE] || pluginState[STR_CORE ];
1741
+ if (plugin && (!pluginCore || pluginCore === unloadCtx.core()) && !pluginState[_DYN_TEARDOWN ]) {
1742
+ pluginState[STR_CORE ] = null;
1743
+ pluginState[_DYN_TEARDOWN ] = true;
1744
+ pluginState[_DYN_IS_INITIALIZED ] = false;
1745
+ if (plugin[_DYN_TEARDOWN ] && plugin[_DYN_TEARDOWN ](unloadCtx, unloadState) === true) {
1696
1746
  hasRun = true;
1697
1747
  }
1698
1748
  }
1699
1749
  }
1700
1750
  return hasRun;
1701
1751
  }
1702
- if (!_processChain(unloadCtx, _callTeardown, "unload", function () { }, unloadState.isAsync)) {
1703
- unloadCtx.processNext(unloadState);
1752
+ if (!_processChain(unloadCtx, _callTeardown, "unload", function () { }, unloadState[_DYN_IS_ASYNC ])) {
1753
+ unloadCtx[_DYN_PROCESS_NEXT ](unloadState);
1704
1754
  }
1705
1755
  }
1706
1756
  function _updatePlugin(updateCtx, updateState) {
@@ -1708,9 +1758,9 @@ this.Microsoft = this.Microsoft || {};
1708
1758
  var hasRun = false;
1709
1759
  if (plugin) {
1710
1760
  var pluginState = _getPluginState(plugin);
1711
- var pluginCore = plugin[strCore] || pluginState.core;
1712
- if (plugin && (!pluginCore || pluginCore === updateCtx[strCore]()) && !pluginState[strTeardown]) {
1713
- if (plugin[strUpdate] && plugin[strUpdate](updateCtx, updateState) === true) {
1761
+ var pluginCore = plugin[STR_CORE] || pluginState[STR_CORE ];
1762
+ if (plugin && (!pluginCore || pluginCore === updateCtx.core()) && !pluginState[_DYN_TEARDOWN ]) {
1763
+ if (plugin[_DYN_UPDATE ] && plugin[_DYN_UPDATE ](updateCtx, updateState) === true) {
1714
1764
  hasRun = true;
1715
1765
  }
1716
1766
  }
@@ -1718,19 +1768,17 @@ this.Microsoft = this.Microsoft || {};
1718
1768
  return hasRun;
1719
1769
  }
1720
1770
  if (!_processChain(updateCtx, _callUpdate, "update", function () { }, false)) {
1721
- updateCtx.processNext(updateState);
1771
+ updateCtx[_DYN_PROCESS_NEXT ](updateState);
1722
1772
  }
1723
1773
  }
1724
1774
  return objFreeze(proxyChain);
1725
1775
  }
1726
1776
 
1727
- var strExtensionConfig = "extensionConfig";
1728
-
1729
1777
  function createUnloadHandlerContainer() {
1730
1778
  var handlers = [];
1731
1779
  function _addHandler(handler) {
1732
1780
  if (handler) {
1733
- handlers.push(handler);
1781
+ handlers[_DYN_PUSH ](handler);
1734
1782
  }
1735
1783
  }
1736
1784
  function _runHandlers(unloadCtx, unloadState) {
@@ -1739,7 +1787,7 @@ this.Microsoft = this.Microsoft || {};
1739
1787
  handler(unloadCtx, unloadState);
1740
1788
  }
1741
1789
  catch (e) {
1742
- _throwInternal(unloadCtx.diagLog(), 2 , 73 , "Unexpected error calling unload handler - " + dumpObj(e));
1790
+ _throwInternal(unloadCtx[_DYN_DIAG_LOG ](), 2 , 73 , "Unexpected error calling unload handler - " + dumpObj(e));
1743
1791
  }
1744
1792
  });
1745
1793
  handlers = [];
@@ -1761,37 +1809,40 @@ this.Microsoft = this.Microsoft || {};
1761
1809
  var _hooks;
1762
1810
  _initDefaults();
1763
1811
  dynamicProto(BaseTelemetryPlugin, _self, function (_self) {
1764
- _self.initialize = function (config, core, extensions, pluginChain) {
1812
+ _self[_DYN_INITIALIZE ] = function (config, core, extensions, pluginChain) {
1765
1813
  _setDefaults(config, core, pluginChain);
1766
1814
  _isinitialized = true;
1767
1815
  };
1768
- _self.teardown = function (unloadCtx, unloadState) {
1769
- var core = _self.core;
1770
- if (!core || (unloadCtx && core !== unloadCtx.core())) {
1816
+ _self[_DYN_TEARDOWN ] = function (unloadCtx, unloadState) {
1817
+ var _a;
1818
+ var core = _self[STR_CORE ];
1819
+ if (!core || (unloadCtx && core !== unloadCtx[STR_CORE ]())) {
1771
1820
  return;
1772
1821
  }
1773
1822
  var result;
1774
1823
  var unloadDone = false;
1775
1824
  var theUnloadCtx = unloadCtx || createProcessTelemetryUnloadContext(null, core, _nextPlugin && _nextPlugin[strGetPlugin] ? _nextPlugin[strGetPlugin]() : _nextPlugin);
1776
- var theUnloadState = unloadState || {
1777
- reason: 0 ,
1778
- isAsync: false
1779
- };
1825
+ var theUnloadState = unloadState || (_a = {
1826
+ reason: 0
1827
+ },
1828
+ _a[_DYN_IS_ASYNC ] = false,
1829
+ _a);
1780
1830
  function _unloadCallback() {
1781
1831
  if (!unloadDone) {
1782
1832
  unloadDone = true;
1783
1833
  _unloadHandlerContainer.run(theUnloadCtx, unloadState);
1784
- arrForEach(_hooks, function (fn) {
1834
+ var oldHooks = _hooks;
1835
+ _hooks = [];
1836
+ arrForEach(oldHooks, function (fn) {
1785
1837
  fn.rm();
1786
1838
  });
1787
- _hooks = [];
1788
1839
  if (result === true) {
1789
- theUnloadCtx.processNext(theUnloadState);
1840
+ theUnloadCtx[_DYN_PROCESS_NEXT ](theUnloadState);
1790
1841
  }
1791
1842
  _initDefaults();
1792
1843
  }
1793
1844
  }
1794
- if (!_self[strDoTeardown] || _self[strDoTeardown](theUnloadCtx, theUnloadState, _unloadCallback) !== true) {
1845
+ if (!_self[_DYN__DO_TEARDOWN ] || _self[_DYN__DO_TEARDOWN ](theUnloadCtx, theUnloadState, _unloadCallback) !== true) {
1795
1846
  _unloadCallback();
1796
1847
  }
1797
1848
  else {
@@ -1799,9 +1850,9 @@ this.Microsoft = this.Microsoft || {};
1799
1850
  }
1800
1851
  return result;
1801
1852
  };
1802
- _self.update = function (updateCtx, updateState) {
1803
- var core = _self.core;
1804
- if (!core || (updateCtx && core !== updateCtx.core())) {
1853
+ _self[_DYN_UPDATE ] = function (updateCtx, updateState) {
1854
+ var core = _self[STR_CORE ];
1855
+ if (!core || (updateCtx && core !== updateCtx[STR_CORE ]())) {
1805
1856
  return;
1806
1857
  }
1807
1858
  var result;
@@ -1813,7 +1864,7 @@ this.Microsoft = this.Microsoft || {};
1813
1864
  function _updateCallback() {
1814
1865
  if (!updateDone) {
1815
1866
  updateDone = true;
1816
- _setDefaults(theUpdateCtx.getCfg(), theUpdateCtx.core(), theUpdateCtx.getNext());
1867
+ _setDefaults(theUpdateCtx.getCfg(), theUpdateCtx.core(), theUpdateCtx[_DYN_GET_NEXT ]());
1817
1868
  }
1818
1869
  }
1819
1870
  if (!_self._doUpdate || _self._doUpdate(theUpdateCtx, theUpdateState, _updateCallback) !== true) {
@@ -1830,30 +1881,30 @@ this.Microsoft = this.Microsoft || {};
1830
1881
  _hooks = _hooks.concat(hooks);
1831
1882
  }
1832
1883
  else {
1833
- _hooks.push(hooks);
1884
+ _hooks[_DYN_PUSH ](hooks);
1834
1885
  }
1835
1886
  }
1836
1887
  };
1837
1888
  proxyFunctionAs(_self, "_addUnloadCb", function () { return _unloadHandlerContainer; }, "add");
1838
1889
  });
1839
- _self.diagLog = function (itemCtx) {
1840
- return _getTelCtx(itemCtx).diagLog();
1890
+ _self[_DYN_DIAG_LOG ] = function (itemCtx) {
1891
+ return _getTelCtx(itemCtx)[_DYN_DIAG_LOG ]();
1841
1892
  };
1842
- _self[strIsInitialized] = function () {
1893
+ _self[_DYN_IS_INITIALIZED ] = function () {
1843
1894
  return _isinitialized;
1844
1895
  };
1845
1896
  _self.setInitialized = function (isInitialized) {
1846
1897
  _isinitialized = isInitialized;
1847
1898
  };
1848
- _self[strSetNextPlugin] = function (next) {
1899
+ _self[_DYN_SET_NEXT_PLUGIN ] = function (next) {
1849
1900
  _nextPlugin = next;
1850
1901
  };
1851
- _self.processNext = function (env, itemCtx) {
1902
+ _self[_DYN_PROCESS_NEXT ] = function (env, itemCtx) {
1852
1903
  if (itemCtx) {
1853
- itemCtx.processNext(env);
1904
+ itemCtx[_DYN_PROCESS_NEXT ](env);
1854
1905
  }
1855
- else if (_nextPlugin && isFunction(_nextPlugin.processTelemetry)) {
1856
- _nextPlugin.processTelemetry(env, null);
1906
+ else if (_nextPlugin && isFunction(_nextPlugin[STR_PROCESS_TELEMETRY ])) {
1907
+ _nextPlugin[STR_PROCESS_TELEMETRY ](env, null);
1857
1908
  }
1858
1909
  };
1859
1910
  _self._getTelCtx = _getTelCtx;
@@ -1861,33 +1912,33 @@ this.Microsoft = this.Microsoft || {};
1861
1912
  if (currentCtx === void 0) { currentCtx = null; }
1862
1913
  var itemCtx = currentCtx;
1863
1914
  if (!itemCtx) {
1864
- var rootCtx = _rootCtx || createProcessTelemetryContext(null, {}, _self.core);
1915
+ var rootCtx = _rootCtx || createProcessTelemetryContext(null, {}, _self[STR_CORE ]);
1865
1916
  if (_nextPlugin && _nextPlugin[strGetPlugin]) {
1866
- itemCtx = rootCtx.createNew(null, _nextPlugin[strGetPlugin]);
1917
+ itemCtx = rootCtx[_DYN_CREATE_NEW ](null, _nextPlugin[strGetPlugin]);
1867
1918
  }
1868
1919
  else {
1869
- itemCtx = rootCtx.createNew(null, _nextPlugin);
1920
+ itemCtx = rootCtx[_DYN_CREATE_NEW ](null, _nextPlugin);
1870
1921
  }
1871
1922
  }
1872
1923
  return itemCtx;
1873
1924
  }
1874
1925
  function _setDefaults(config, core, pluginChain) {
1875
1926
  if (config) {
1876
- setValue(config, strExtensionConfig, [], null, isNullOrUndefined);
1927
+ setValue(config, STR_EXTENSION_CONFIG, [], null, isNullOrUndefined);
1877
1928
  }
1878
1929
  if (!pluginChain && core) {
1879
- pluginChain = core.getProcessTelContext().getNext();
1930
+ pluginChain = core[_DYN_GET_PROCESS_TEL_CONT0 ]()[_DYN_GET_NEXT ]();
1880
1931
  }
1881
1932
  var nextPlugin = _nextPlugin;
1882
1933
  if (_nextPlugin && _nextPlugin[strGetPlugin]) {
1883
1934
  nextPlugin = _nextPlugin[strGetPlugin]();
1884
1935
  }
1885
- _self.core = core;
1936
+ _self[STR_CORE ] = core;
1886
1937
  _rootCtx = createProcessTelemetryContext(pluginChain, config, core, nextPlugin);
1887
1938
  }
1888
1939
  function _initDefaults() {
1889
1940
  _isinitialized = false;
1890
- _self.core = null;
1941
+ _self[STR_CORE ] = null;
1891
1942
  _rootCtx = null;
1892
1943
  _nextPlugin = null;
1893
1944
  _hooks = [];
@@ -1898,109 +1949,176 @@ this.Microsoft = this.Microsoft || {};
1898
1949
  return BaseTelemetryPlugin;
1899
1950
  }());
1900
1951
 
1952
+ var _a;
1953
+ var FAILED = "Failed";
1954
+ var FAILED_MONITOR_AJAX = FAILED + "MonitorAjax";
1955
+ var TRACK = "Track";
1956
+ var START = "Start";
1957
+ var STOP = "Stop";
1958
+ var EVENT = "Event";
1959
+ var AUTH_CONTEXT = "AuthContext";
1960
+ var EXCEPTION = "Exception";
1961
+ var LOCAL = "Local";
1962
+ var SESSION = "Session";
1963
+ var STORAGE = "Storage";
1964
+ var BROWSER = "Browser";
1965
+ var CANNOT = "Cannot";
1966
+ var BUFFER = "Buffer";
1967
+ var INSTRUMENTATION_KEY = "InstrumentationKey";
1901
1968
  createEnumStyle({
1902
1969
  CRITICAL: 1 ,
1903
1970
  WARNING: 2
1904
1971
  });
1905
- var _InternalMessageId = createEnumStyle({
1906
- BrowserDoesNotSupportLocalStorage: 0 ,
1907
- BrowserCannotReadLocalStorage: 1 ,
1908
- BrowserCannotReadSessionStorage: 2 ,
1909
- BrowserCannotWriteLocalStorage: 3 ,
1910
- BrowserCannotWriteSessionStorage: 4 ,
1911
- BrowserFailedRemovalFromLocalStorage: 5 ,
1912
- BrowserFailedRemovalFromSessionStorage: 6 ,
1913
- CannotSendEmptyTelemetry: 7 ,
1914
- ClientPerformanceMathError: 8 ,
1915
- ErrorParsingAISessionCookie: 9 ,
1916
- ErrorPVCalc: 10 ,
1917
- ExceptionWhileLoggingError: 11 ,
1918
- FailedAddingTelemetryToBuffer: 12 ,
1919
- FailedMonitorAjaxAbort: 13 ,
1920
- FailedMonitorAjaxDur: 14 ,
1921
- FailedMonitorAjaxOpen: 15 ,
1922
- FailedMonitorAjaxRSC: 16 ,
1923
- FailedMonitorAjaxSend: 17 ,
1924
- FailedMonitorAjaxGetCorrelationHeader: 18 ,
1925
- FailedToAddHandlerForOnBeforeUnload: 19 ,
1926
- FailedToSendQueuedTelemetry: 20 ,
1927
- FailedToReportDataLoss: 21 ,
1928
- FlushFailed: 22 ,
1929
- MessageLimitPerPVExceeded: 23 ,
1930
- MissingRequiredFieldSpecification: 24 ,
1931
- NavigationTimingNotSupported: 25 ,
1932
- OnError: 26 ,
1933
- SessionRenewalDateIsZero: 27 ,
1934
- SenderNotInitialized: 28 ,
1935
- StartTrackEventFailed: 29 ,
1936
- StopTrackEventFailed: 30 ,
1937
- StartTrackFailed: 31 ,
1938
- StopTrackFailed: 32 ,
1939
- TelemetrySampledAndNotSent: 33 ,
1940
- TrackEventFailed: 34 ,
1941
- TrackExceptionFailed: 35 ,
1942
- TrackMetricFailed: 36 ,
1943
- TrackPVFailed: 37 ,
1944
- TrackPVFailedCalc: 38 ,
1945
- TrackTraceFailed: 39 ,
1946
- TransmissionFailed: 40 ,
1947
- FailedToSetStorageBuffer: 41 ,
1948
- FailedToRestoreStorageBuffer: 42 ,
1949
- InvalidBackendResponse: 43 ,
1950
- FailedToFixDepricatedValues: 44 ,
1951
- InvalidDurationValue: 45 ,
1952
- TelemetryEnvelopeInvalid: 46 ,
1953
- CreateEnvelopeError: 47 ,
1954
- CannotSerializeObject: 48 ,
1955
- CannotSerializeObjectNonSerializable: 49 ,
1956
- CircularReferenceDetected: 50 ,
1957
- ClearAuthContextFailed: 51 ,
1958
- ExceptionTruncated: 52 ,
1959
- IllegalCharsInName: 53 ,
1960
- ItemNotInArray: 54 ,
1961
- MaxAjaxPerPVExceeded: 55 ,
1962
- MessageTruncated: 56 ,
1963
- NameTooLong: 57 ,
1964
- SampleRateOutOfRange: 58 ,
1965
- SetAuthContextFailed: 59 ,
1966
- SetAuthContextFailedAccountName: 60 ,
1967
- StringValueTooLong: 61 ,
1968
- StartCalledMoreThanOnce: 62 ,
1969
- StopCalledWithoutStart: 63 ,
1970
- TelemetryInitializerFailed: 64 ,
1971
- TrackArgumentsNotSpecified: 65 ,
1972
- UrlTooLong: 66 ,
1973
- SessionStorageBufferFull: 67 ,
1974
- CannotAccessCookie: 68 ,
1975
- IdTooLong: 69 ,
1976
- InvalidEvent: 70 ,
1977
- FailedMonitorAjaxSetRequestHeader: 71 ,
1978
- SendBrowserInfoOnUserInit: 72 ,
1979
- PluginException: 73 ,
1980
- NotificationException: 74 ,
1981
- SnippetScriptLoadFailure: 99 ,
1982
- InvalidInstrumentationKey: 100 ,
1983
- CannotParseAiBlobValue: 101 ,
1984
- InvalidContentBlob: 102 ,
1985
- TrackPageActionEventFailed: 103 ,
1986
- FailedAddingCustomDefinedRequestContext: 104 ,
1987
- InMemoryStorageBufferFull: 105 ,
1988
- InstrumentationKeyDeprecation: 106
1989
- });
1972
+ var _InternalMessageId = createEnumStyle((_a = {},
1973
+ _a[BROWSER + "DoesNotSupport" + LOCAL + STORAGE] = 0 ,
1974
+ _a[BROWSER + CANNOT + "Read" + LOCAL + STORAGE] = 1 ,
1975
+ _a[BROWSER + CANNOT + "Read" + SESSION + STORAGE] = 2 ,
1976
+ _a[BROWSER + CANNOT + "Write" + LOCAL + STORAGE] = 3 ,
1977
+ _a[BROWSER + CANNOT + "Write" + SESSION + STORAGE] = 4 ,
1978
+ _a[BROWSER + FAILED + "RemovalFrom" + LOCAL + STORAGE] = 5 ,
1979
+ _a[BROWSER + FAILED + "RemovalFrom" + SESSION + STORAGE] = 6 ,
1980
+ _a[CANNOT + "SendEmptyTelemetry"] = 7 ,
1981
+ _a.ClientPerformanceMathError = 8 ,
1982
+ _a["ErrorParsingAI" + SESSION + "Cookie"] = 9 ,
1983
+ _a.ErrorPVCalc = 10 ,
1984
+ _a[EXCEPTION + "WhileLoggingError"] = 11 ,
1985
+ _a[FAILED + "AddingTelemetryTo" + BUFFER] = 12 ,
1986
+ _a[FAILED_MONITOR_AJAX + "Abort"] = 13 ,
1987
+ _a[FAILED_MONITOR_AJAX + "Dur"] = 14 ,
1988
+ _a[FAILED_MONITOR_AJAX + "Open"] = 15 ,
1989
+ _a[FAILED_MONITOR_AJAX + "RSC"] = 16 ,
1990
+ _a[FAILED_MONITOR_AJAX + "Send"] = 17 ,
1991
+ _a[FAILED_MONITOR_AJAX + "GetCorrelationHeader"] = 18 ,
1992
+ _a[FAILED + "ToAddHandlerForOnBeforeUnload"] = 19 ,
1993
+ _a[FAILED + "ToSendQueuedTelemetry"] = 20 ,
1994
+ _a[FAILED + "ToReportDataLoss"] = 21 ,
1995
+ _a["Flush" + FAILED] = 22 ,
1996
+ _a.MessageLimitPerPVExceeded = 23 ,
1997
+ _a.MissingRequiredFieldSpecification = 24 ,
1998
+ _a.NavigationTimingNotSupported = 25 ,
1999
+ _a.OnError = 26 ,
2000
+ _a[SESSION + "RenewalDateIsZero"] = 27 ,
2001
+ _a.SenderNotInitialized = 28 ,
2002
+ _a[START + TRACK + EVENT + FAILED] = 29 ,
2003
+ _a[STOP + TRACK + EVENT + FAILED] = 30 ,
2004
+ _a[START + TRACK + FAILED] = 31 ,
2005
+ _a[STOP + TRACK + FAILED] = 32 ,
2006
+ _a.TelemetrySampledAndNotSent = 33 ,
2007
+ _a[TRACK + EVENT + FAILED] = 34 ,
2008
+ _a[TRACK + EXCEPTION + FAILED] = 35 ,
2009
+ _a[TRACK + "Metric" + FAILED] = 36 ,
2010
+ _a[TRACK + "PV" + FAILED] = 37 ,
2011
+ _a[TRACK + "PV" + FAILED + "Calc"] = 38 ,
2012
+ _a[TRACK + "Trace" + FAILED] = 39 ,
2013
+ _a["Transmission" + FAILED] = 40 ,
2014
+ _a[FAILED + "ToSet" + STORAGE + BUFFER] = 41 ,
2015
+ _a[FAILED + "ToRestore" + STORAGE + BUFFER] = 42 ,
2016
+ _a.InvalidBackendResponse = 43 ,
2017
+ _a[FAILED + "ToFixDepricatedValues"] = 44 ,
2018
+ _a.InvalidDurationValue = 45 ,
2019
+ _a.TelemetryEnvelopeInvalid = 46 ,
2020
+ _a.CreateEnvelopeError = 47 ,
2021
+ _a[CANNOT + "SerializeObject"] = 48 ,
2022
+ _a[CANNOT + "SerializeObjectNonSerializable"] = 49 ,
2023
+ _a.CircularReferenceDetected = 50 ,
2024
+ _a["Clear" + AUTH_CONTEXT + FAILED] = 51 ,
2025
+ _a[EXCEPTION + "Truncated"] = 52 ,
2026
+ _a.IllegalCharsInName = 53 ,
2027
+ _a.ItemNotInArray = 54 ,
2028
+ _a.MaxAjaxPerPVExceeded = 55 ,
2029
+ _a.MessageTruncated = 56 ,
2030
+ _a.NameTooLong = 57 ,
2031
+ _a.SampleRateOutOfRange = 58 ,
2032
+ _a["Set" + AUTH_CONTEXT + FAILED] = 59 ,
2033
+ _a["Set" + AUTH_CONTEXT + FAILED + "AccountName"] = 60 ,
2034
+ _a.StringValueTooLong = 61 ,
2035
+ _a.StartCalledMoreThanOnce = 62 ,
2036
+ _a.StopCalledWithoutStart = 63 ,
2037
+ _a["TelemetryInitializer" + FAILED] = 64 ,
2038
+ _a.TrackArgumentsNotSpecified = 65 ,
2039
+ _a.UrlTooLong = 66 ,
2040
+ _a[SESSION + STORAGE + BUFFER + "Full"] = 67 ,
2041
+ _a[CANNOT + "AccessCookie"] = 68 ,
2042
+ _a.IdTooLong = 69 ,
2043
+ _a.InvalidEvent = 70 ,
2044
+ _a[FAILED_MONITOR_AJAX + "SetRequestHeader"] = 71 ,
2045
+ _a["Send" + BROWSER + "InfoOnUserInit"] = 72 ,
2046
+ _a["Plugin" + EXCEPTION] = 73 ,
2047
+ _a["Notification" + EXCEPTION] = 74 ,
2048
+ _a.SnippetScriptLoadFailure = 99 ,
2049
+ _a["Invalid" + INSTRUMENTATION_KEY] = 100 ,
2050
+ _a[CANNOT + "ParseAiBlobValue"] = 101 ,
2051
+ _a.InvalidContentBlob = 102 ,
2052
+ _a[TRACK + "PageAction" + EVENT + FAILED] = 103 ,
2053
+ _a[FAILED + "AddingCustomDefinedRequestContext"] = 104 ,
2054
+ _a["InMemory" + STORAGE + BUFFER + "Full"] = 105 ,
2055
+ _a[INSTRUMENTATION_KEY + "Deprecation"] = 106 ,
2056
+ _a));
1990
2057
 
1991
2058
  var strNotSpecified = "not_specified";
1992
2059
 
1993
2060
  var PropertiesPluginIdentifier = "AppInsightsPropertiesPlugin";
1994
2061
 
1995
- var Prototype = "prototype";
2062
+ var _DYN_EXTENSION_CONFIG = "extensionConfig";
2063
+ var _DYN_PAGE_ACTION_PAGE_TAG0 = "pageActionPageTags";
2064
+ var _DYN_TRACK_PAGE_ACTION = "trackPageAction";
2065
+ var _DYN_LENGTH = "length";
2066
+ var _DYN_TAG_NAME = "tagName";
2067
+ var _DYN_TO_UPPER_CASE = "toUpperCase";
2068
+ var _DYN_PATHNAME = "pathname";
2069
+ var _DYN_PAGE_NAME = "pageName";
2070
+ var _DYN_CORE_DATA = "coreData";
2071
+ var _DYN_REQUEST_URI = "requestUri";
2072
+ var _DYN_GET_ATTRIBUTE = "getAttribute";
2073
+ var _DYN_PARENT_NODE = "parentNode";
2074
+ var _DYN_CUSTOM_DATA_PREFIX = "customDataPrefix";
2075
+ var _DYN_INDEX_OF = "indexOf";
2076
+ var _DYN_DATA_TAGS = "dataTags";
2077
+ var _DYN_USE_DEFAULT_CONTENT_1 = "useDefaultContentNameOrId";
2078
+ var _DYN_AI_BLOB_ATTRIBUTE_TA2 = "aiBlobAttributeTag";
2079
+ var _DYN_CAPTURE_ALL_META_DAT3 = "captureAllMetaDataContent";
2080
+ var _DYN_BEHAVIOR_VALIDATOR = "behaviorValidator";
2081
+ var _DYN_NAME = "name";
2082
+ var _DYN_DATA = "data";
2083
+ var _DYN_PAGE_TYPE = "pageType";
2084
+ var _DYN_PROPERTIES = "properties";
2085
+ var _DYN_ACTION_TYPE = "actionType";
2086
+ var _DYN_BEHAVIOR = "behavior";
2087
+ var _DYN_CLICK_COORDINATES = "clickCoordinates";
2088
+ var _DYN_CONTENT = "content";
2089
+ var _DYN_REF_URI = "refUri";
2090
+ var _DYN_PARENT_ID = "parentId";
2091
+ var _DYN_CAPTURE_PAGE_ACTION = "capturePageAction";
2092
+ var _DYN_SET_COMMON_PROPERTIE4 = "setCommonProperties";
2093
+ var _DYN_GET_ELEMENT_CONTENT = "getElementContent";
2094
+ var _DYN__GET_VALID_BEHAVIOR = "_getValidBehavior";
2095
+ var _DYN_CONTENT_NAME = "contentName";
2096
+ var _DYN__TRACE_LOGGER = "_traceLogger";
2097
+ var _DYN_CLICK_COORDINATE_X = "clickCoordinateX";
2098
+ var _DYN_CLICK_COORDINATE_Y = "clickCoordinateY";
2099
+ var _DYN__CONFIG = "_config";
2100
+ var _DYN_PARENT_DATA_TAG = "parentDataTag";
2101
+ var _DYN__PAGE_TAGS = "_pageTags";
2102
+ var _DYN__PAGE_TAGS_CALLBACK = "_pageTagsCallback";
2103
+ var _DYN__META_TAGS = "_metaTags";
2104
+ var _DYN_SET_BASIC_PROPERTIES = "setBasicProperties";
2105
+ var _DYN__PAGE_TYPE_META_TAG = "_pageTypeMetaTag";
2106
+ var _DYN__BEHAVIOR_META_TAG = "_behaviorMetaTag";
2107
+ var _DYN_PARENT_ELEMENT = "parentElement";
2108
+ var _DYN_ATTRIBUTES = "attributes";
2109
+
1996
2110
  var DEFAULT_DONOT_TRACK_TAG = "ai-dnt";
1997
2111
  var DEFAULT_AI_BLOB_ATTRIBUTE_TAG = "ai-blob";
1998
2112
  var DEFAULT_DATA_PREFIX = "data-";
1999
- __assignFn(__assignFn({}, _InternalMessageId), { CannotParseAiBlobValue: 101, InvalidContentBlob: 102, TrackPageActionEventFailed: 103 });
2113
+ __assignFn(__assignFn({}, _InternalMessageId), createEnumStyle({
2114
+ CannotParseAiBlobValue: 101 ,
2115
+ InvalidContentBlob: 102 ,
2116
+ TrackPageActionEventFailed: 103
2117
+ }));
2000
2118
  function removeNonObjectsAndInvalidElements(overrideConfig, attributeNamesExpectedObjects) {
2001
2119
  removeInvalidElements(overrideConfig);
2002
2120
  for (var i in attributeNamesExpectedObjects) {
2003
- if (attributeNamesExpectedObjects.hasOwnProperty(i)) {
2121
+ if (hasOwnProperty(attributeNamesExpectedObjects, i)) {
2004
2122
  var objectName = attributeNamesExpectedObjects[i];
2005
2123
  if (typeof overrideConfig[objectName] === "object") {
2006
2124
  removeInvalidElements(overrideConfig[objectName]);
@@ -2087,15 +2205,15 @@ this.Microsoft = this.Microsoft || {};
2087
2205
  return walkUpDomChainWithElementValidation(el, isAttributeInElement, attribute);
2088
2206
  }
2089
2207
  function isAttributeInElement(element, attributeToLookFor) {
2090
- var value = element.getAttribute(attributeToLookFor);
2208
+ var value = element[_DYN_GET_ATTRIBUTE ](attributeToLookFor);
2091
2209
  return isValueAssigned(value);
2092
2210
  }
2093
2211
  function walkUpDomChainWithElementValidation(el, validationMethod, validationMethodParam) {
2094
2212
  var element = el;
2095
2213
  if (element) {
2096
2214
  while (!validationMethod(element, validationMethodParam)) {
2097
- element = element.parentNode;
2098
- if (!element || !(element.getAttribute)) {
2215
+ element = element[_DYN_PARENT_NODE ];
2216
+ if (!element || !(element[_DYN_GET_ATTRIBUTE ])) {
2099
2217
  return null;
2100
2218
  }
2101
2219
  }
@@ -2119,62 +2237,35 @@ this.Microsoft = this.Microsoft || {};
2119
2237
  function bracketIt(str) {
2120
2238
  return "[" + str + "]";
2121
2239
  }
2122
- function extend(obj, obj2, obj3, obj4, obj5) {
2123
- var extended = {};
2124
- var deep = false;
2125
- var i = 0;
2126
- var length = arguments.length;
2127
- var objProto = Object[Prototype];
2128
- var theArgs = arguments;
2129
- if (objProto.toString.call(theArgs[0]) === "[object Boolean]") {
2130
- deep = theArgs[0];
2131
- i++;
2132
- }
2133
- var merge = function (obj) {
2134
- for (var prop in obj) {
2135
- if (hasOwnProperty(obj, prop)) {
2136
- if (deep && objProto.toString.call(obj[prop]) === "[object Object]") {
2137
- extended[prop] = extend(true, extended[prop], obj[prop]);
2138
- }
2139
- else {
2140
- extended[prop] = obj[prop];
2141
- }
2142
- }
2143
- }
2144
- };
2145
- for (; i < length; i++) {
2146
- var obj = theArgs[i];
2147
- merge(obj);
2148
- }
2149
- return extended;
2150
- }
2151
2240
  function validateContentNamePrefix(config, defaultDataPrefix) {
2152
- return isValueAssigned(config.dataTags.customDataPrefix) && (config.dataTags.customDataPrefix.indexOf(defaultDataPrefix) === 0);
2241
+ return isValueAssigned(config.dataTags[_DYN_CUSTOM_DATA_PREFIX ]) && (config[_DYN_DATA_TAGS ][_DYN_CUSTOM_DATA_PREFIX ][_DYN_INDEX_OF ](defaultDataPrefix) === 0);
2153
2242
  }
2154
2243
  function mergeConfig(overrideConfig) {
2155
- var defaultConfig = {
2156
- autoCapture: true,
2157
- callback: {
2158
- pageActionPageTags: null
2159
- },
2160
- pageTags: {},
2161
- coreData: {
2162
- referrerUri: hasDocument ? document.referrer : "",
2163
- requestUri: "",
2164
- pageName: "",
2165
- pageType: ""
2166
- },
2167
- dataTags: {
2168
- useDefaultContentNameOrId: false,
2169
- aiBlobAttributeTag: DEFAULT_AI_BLOB_ATTRIBUTE_TAG,
2170
- customDataPrefix: DEFAULT_DATA_PREFIX,
2171
- captureAllMetaDataContent: false,
2172
- dntDataTag: DEFAULT_DONOT_TRACK_TAG
2244
+ var _a, _b, _c;
2245
+ var defaultConfig = (_a = {
2246
+ autoCapture: true,
2247
+ callback: (_b = {},
2248
+ _b[_DYN_PAGE_ACTION_PAGE_TAG0 ] = null,
2249
+ _b),
2250
+ pageTags: {},
2251
+ coreData: {
2252
+ referrerUri: hasDocument ? document.referrer : "",
2253
+ requestUri: "",
2254
+ pageName: "",
2255
+ pageType: ""
2256
+ },
2257
+ dataTags: (_c = {},
2258
+ _c[_DYN_USE_DEFAULT_CONTENT_1 ] = false,
2259
+ _c[_DYN_AI_BLOB_ATTRIBUTE_TA2 ] = DEFAULT_AI_BLOB_ATTRIBUTE_TAG,
2260
+ _c[_DYN_CUSTOM_DATA_PREFIX ] = DEFAULT_DATA_PREFIX,
2261
+ _c[_DYN_CAPTURE_ALL_META_DAT3 ] = false,
2262
+ _c.dntDataTag = DEFAULT_DONOT_TRACK_TAG,
2263
+ _c)
2173
2264
  },
2174
- behaviorValidator: function (key) { return key || ""; },
2175
- defaultRightClickBhvr: "",
2176
- dropInvalidEvents: false
2177
- };
2265
+ _a[_DYN_BEHAVIOR_VALIDATOR ] = function (key) { return key || ""; },
2266
+ _a.defaultRightClickBhvr = "",
2267
+ _a.dropInvalidEvents = false,
2268
+ _a);
2178
2269
  var attributesThatAreObjectsInConfig = [];
2179
2270
  for (var attribute in defaultConfig) {
2180
2271
  if (typeof defaultConfig[attribute] === "object") {
@@ -2183,10 +2274,10 @@ this.Microsoft = this.Microsoft || {};
2183
2274
  }
2184
2275
  if (overrideConfig) {
2185
2276
  removeNonObjectsAndInvalidElements(overrideConfig, attributesThatAreObjectsInConfig);
2186
- if (isValueAssigned(overrideConfig.dataTags)) {
2187
- overrideConfig.dataTags.customDataPrefix = validateContentNamePrefix(overrideConfig, DEFAULT_DATA_PREFIX) ? overrideConfig.dataTags.customDataPrefix : DEFAULT_DATA_PREFIX;
2277
+ if (isValueAssigned(overrideConfig[_DYN_DATA_TAGS ])) {
2278
+ overrideConfig.dataTags[_DYN_CUSTOM_DATA_PREFIX ] = validateContentNamePrefix(overrideConfig, DEFAULT_DATA_PREFIX) ? overrideConfig[_DYN_DATA_TAGS ][_DYN_CUSTOM_DATA_PREFIX ] : DEFAULT_DATA_PREFIX;
2188
2279
  }
2189
- return extend(true, defaultConfig, overrideConfig);
2280
+ return objExtend(true, defaultConfig, overrideConfig);
2190
2281
  }
2191
2282
  }
2192
2283
  function BehaviorMapValidator(map) {
@@ -2213,7 +2304,7 @@ this.Microsoft = this.Microsoft || {};
2213
2304
  var temp = element;
2214
2305
  if (temp) {
2215
2306
  var parent = findClosestAnchor(temp);
2216
- if (parent.length === 1) {
2307
+ if (parent[_DYN_LENGTH ] === 1) {
2217
2308
  var firstParent = parent[0];
2218
2309
  if (firstParent.href) {
2219
2310
  return firstParent.href;
@@ -2227,7 +2318,7 @@ this.Microsoft = this.Microsoft || {};
2227
2318
  }
2228
2319
  function getClickTarget(element) {
2229
2320
  var clickTarget = "";
2230
- switch (element.tagName) {
2321
+ switch (element[_DYN_TAG_NAME ]) {
2231
2322
  case "A":
2232
2323
  case "AREA":
2233
2324
  clickTarget = element.href || "";
@@ -2237,13 +2328,13 @@ this.Microsoft = this.Microsoft || {};
2237
2328
  break;
2238
2329
  case "INPUT":
2239
2330
  var type = element.type;
2240
- if (type && (clickCaptureInputTypes$1[type.toUpperCase()])) {
2331
+ if (type && (clickCaptureInputTypes$1[type[_DYN_TO_UPPER_CASE ]()])) {
2241
2332
  var loc = getLocation() || {};
2242
2333
  if (element.form) {
2243
- clickTarget = element.form.action || (loc.pathname || "");
2334
+ clickTarget = element.form.action || (loc[_DYN_PATHNAME ] || "");
2244
2335
  }
2245
2336
  else {
2246
- clickTarget = loc.pathname || "";
2337
+ clickTarget = loc[_DYN_PATHNAME ] || "";
2247
2338
  }
2248
2339
  }
2249
2340
  break;
@@ -2251,14 +2342,14 @@ this.Microsoft = this.Microsoft || {};
2251
2342
  return clickTarget;
2252
2343
  }
2253
2344
  function getPageName(config, overrideValues) {
2254
- if (overrideValues && overrideValues.pageName) {
2255
- return overrideValues.pageName;
2345
+ if (overrideValues && overrideValues[_DYN_PAGE_NAME ]) {
2346
+ return overrideValues[_DYN_PAGE_NAME ];
2256
2347
  }
2257
- else if (config.callback && isFunction(config.callback.pageName)) {
2258
- return config.callback.pageName();
2348
+ else if (config.callback && isFunction(config.callback[_DYN_PAGE_NAME ])) {
2349
+ return config.callback[_DYN_PAGE_NAME ]();
2259
2350
  }
2260
- else if (config.coreData && config.coreData.pageName) {
2261
- return config.coreData.pageName;
2351
+ else if (config.coreData && config.coreData[_DYN_PAGE_NAME ]) {
2352
+ return config.coreData[_DYN_PAGE_NAME ];
2262
2353
  }
2263
2354
  else {
2264
2355
  var doc = getDocument();
@@ -2271,12 +2362,12 @@ this.Microsoft = this.Microsoft || {};
2271
2362
  }
2272
2363
  var url = location.protocol + "//" + (location.hostname || location.host) +
2273
2364
  (isValueAssigned(location.port) ? ":" + location.port : "") +
2274
- location.pathname;
2365
+ location[_DYN_PATHNAME ];
2275
2366
  return url;
2276
2367
  }
2277
2368
  function getUri(config, location) {
2278
- if (config.coreData && config.coreData.requestUri && config.coreData.requestUri !== "") {
2279
- return config.coreData.requestUri;
2369
+ if (config[_DYN_CORE_DATA ] && config[_DYN_CORE_DATA ][_DYN_REQUEST_URI ] && config[_DYN_CORE_DATA ][_DYN_REQUEST_URI ] !== "") {
2370
+ return config[_DYN_CORE_DATA ][_DYN_REQUEST_URI ];
2280
2371
  }
2281
2372
  return sanitizeUrl(config, location);
2282
2373
  }
@@ -2286,64 +2377,64 @@ this.Microsoft = this.Microsoft || {};
2286
2377
  dynamicProto(WebEvent, this, function (_self) {
2287
2378
  _initDefaults();
2288
2379
  function _initDefaults() {
2289
- _self._pageTags = {};
2380
+ _self[_DYN__PAGE_TAGS ] = {};
2290
2381
  _self._clickAnalyticsPlugin = clickAnalyticsPlugin;
2291
- _self._config = config;
2382
+ _self[_DYN__CONFIG ] = config;
2292
2383
  _self._contentHandler = contentHandler;
2293
- _self._pageTagsCallback = pageTagsCallback;
2294
- _self._metaTags = metaTags;
2295
- _self._traceLogger = traceLogger;
2384
+ _self[_DYN__PAGE_TAGS_CALLBACK ] = pageTagsCallback;
2385
+ _self[_DYN__META_TAGS ] = metaTags;
2386
+ _self[_DYN__TRACE_LOGGER ] = traceLogger;
2296
2387
  }
2297
- _self.setBasicProperties = function (event, overrideValues) {
2298
- if (!isValueAssigned(event.name)) {
2299
- event.pageName = getPageName(_self._config, overrideValues);
2388
+ _self[_DYN_SET_BASIC_PROPERTIES ] = function (event, overrideValues) {
2389
+ if (!isValueAssigned(event[_DYN_NAME ])) {
2390
+ event[_DYN_PAGE_NAME ] = getPageName(_self[_DYN__CONFIG ], overrideValues);
2300
2391
  }
2301
2392
  if (!isValueAssigned(event.uri) && hasWindow) {
2302
- event.uri = getUri(_self._config, getLocation());
2393
+ event.uri = getUri(_self[_DYN__CONFIG ], getLocation());
2303
2394
  }
2304
2395
  };
2305
- _self.setCommonProperties = function (event, overrideValues) {
2306
- _self.setBasicProperties(event, overrideValues);
2396
+ _self[_DYN_SET_COMMON_PROPERTIE4 ] = function (event, overrideValues) {
2397
+ _self[_DYN_SET_BASIC_PROPERTIES ](event, overrideValues);
2307
2398
  _self._setPageTags(event, overrideValues);
2308
- _self._pageTypeMetaTag = _getMetaData(_self._metaTags, _self._config.coreData, "pageType");
2309
- _self._behaviorMetaTag = _getMetaData(_self._metaTags, _self._config.coreData, "behavior");
2310
- if (isValueAssigned(overrideValues.pageType)) {
2311
- event.pageType = overrideValues.pageType;
2399
+ _self._pageTypeMetaTag = _getMetaData(_self._metaTags, _self._config[_DYN_CORE_DATA ], "pageType");
2400
+ _self._behaviorMetaTag = _getMetaData(_self._metaTags, _self._config[_DYN_CORE_DATA ], "behavior");
2401
+ if (isValueAssigned(overrideValues[_DYN_PAGE_TYPE ])) {
2402
+ event[_DYN_PAGE_TYPE ] = overrideValues[_DYN_PAGE_TYPE ];
2312
2403
  }
2313
- if (isValueAssigned(_self._pageTypeMetaTag) && !isValueAssigned(event.pageType)) {
2314
- event.pageType = _self._pageTypeMetaTag;
2404
+ if (isValueAssigned(_self._pageTypeMetaTag) && !isValueAssigned(event[_DYN_PAGE_TYPE ])) {
2405
+ event[_DYN_PAGE_TYPE ] = _self[_DYN__PAGE_TYPE_META_TAG ];
2315
2406
  }
2316
2407
  };
2317
2408
  _self._setPageTags = function (event, overrideValues) {
2318
- if (_self._pageTagsCallback) {
2319
- _self._pageTags = extend(true, _self._pageTags, _self._pageTagsCallback());
2409
+ if (_self[_DYN__PAGE_TAGS_CALLBACK ]) {
2410
+ _self[_DYN__PAGE_TAGS ] = objExtend(true, _self[_DYN__PAGE_TAGS ], _self[_DYN__PAGE_TAGS_CALLBACK ]());
2320
2411
  }
2321
2412
  if (isValueAssigned(overrideValues.pageTags)) {
2322
- _self._pageTags = extend(true, _self._pageTags, overrideValues.pageTags);
2413
+ _self[_DYN__PAGE_TAGS ] = objExtend(true, _self[_DYN__PAGE_TAGS ], overrideValues.pageTags);
2323
2414
  }
2324
- if (_self._metaTags) {
2325
- _self._pageTags.metaTags = {};
2326
- for (var metaTag in _self._metaTags) {
2415
+ if (_self[_DYN__META_TAGS ]) {
2416
+ _self[_DYN__PAGE_TAGS ].metaTags = {};
2417
+ for (var metaTag in _self[_DYN__META_TAGS ]) {
2327
2418
  if (metaTag != "behavior" && metaTag != "market" && metaTag != "pageType") {
2328
- _self._pageTags.metaTags[metaTag] = _self._metaTags[metaTag];
2419
+ _self[_DYN__PAGE_TAGS ].metaTags[metaTag] = _self[_DYN__META_TAGS ][metaTag];
2329
2420
  }
2330
2421
  }
2331
2422
  }
2332
- event.properties = event.properties || {};
2333
- event.properties["pageTags"] = _self._pageTags;
2423
+ event[_DYN_PROPERTIES ] = event[_DYN_PROPERTIES ] || {};
2424
+ event[_DYN_PROPERTIES ]["pageTags"] = _self[_DYN__PAGE_TAGS ];
2334
2425
  };
2335
2426
  _self._getBehavior = function (overrideValues) {
2336
2427
  var behavior;
2337
- if (overrideValues && isValueAssigned(overrideValues.behavior)) {
2338
- behavior = overrideValues.behavior;
2428
+ if (overrideValues && isValueAssigned(overrideValues[_DYN_BEHAVIOR ])) {
2429
+ behavior = overrideValues[_DYN_BEHAVIOR ];
2339
2430
  }
2340
- else if (isValueAssigned(_self._behaviorMetaTag)) {
2341
- behavior = _self._behaviorMetaTag;
2431
+ else if (isValueAssigned(_self[_DYN__BEHAVIOR_META_TAG ])) {
2432
+ behavior = _self[_DYN__BEHAVIOR_META_TAG ];
2342
2433
  }
2343
- return _self._getValidBehavior(behavior);
2434
+ return _self[_DYN__GET_VALID_BEHAVIOR ](behavior);
2344
2435
  };
2345
- _self._getValidBehavior = function (behavior) {
2346
- return _self._config.behaviorValidator(behavior);
2436
+ _self[_DYN__GET_VALID_BEHAVIOR ] = function (behavior) {
2437
+ return _self._config[_DYN_BEHAVIOR_VALIDATOR ](behavior);
2347
2438
  };
2348
2439
  _self._doUnload = function (unloadCtx, unloadState, asyncCallback) {
2349
2440
  _initDefaults();
@@ -2368,7 +2459,7 @@ this.Microsoft = this.Microsoft || {};
2368
2459
  function PageAction(clickAnalyticsPlugin, config, contentHandler, pageTagsCallback, metaTags, traceLogger) {
2369
2460
  var _this = _super.call(this, clickAnalyticsPlugin, config, contentHandler, pageTagsCallback, metaTags, traceLogger) || this;
2370
2461
  dynamicProto(PageAction, _this, function (_self, _base) {
2371
- _self.trackPageAction = function (pageActionEvent, properties) {
2462
+ _self[_DYN_TRACK_PAGE_ACTION ] = function (pageActionEvent, properties) {
2372
2463
  var ext = {};
2373
2464
  ext["web"] = {};
2374
2465
  var event = {
@@ -2378,66 +2469,66 @@ this.Microsoft = this.Microsoft || {};
2378
2469
  data: {},
2379
2470
  baseData: {}
2380
2471
  };
2381
- _populateEventDataIfPresent(event.baseData, "name", pageActionEvent.name);
2382
- _populateEventDataIfPresent(event.data, "baseTypeSource", "ClickEvent");
2383
- _populateEventDataIfPresent(event.data, "uri", pageActionEvent.uri);
2384
- _populateEventDataIfPresent(event.data, "pageType", pageActionEvent.pageType);
2385
- _populateEventDataIfPresent(event.data, "properties", pageActionEvent.properties);
2386
- _populateEventDataIfPresent(event.data, "actionType", pageActionEvent.actionType);
2387
- _populateEventDataIfPresent(event.data, "behavior", pageActionEvent.behavior);
2388
- _populateEventDataIfPresent(event.data, "clickCoordinates", pageActionEvent.clickCoordinates);
2389
- _populateEventDataIfPresent(event.data, "content", pageActionEvent.content);
2390
- _populateEventDataIfPresent(event.data, "targetUri", pageActionEvent.targetUri);
2391
- _populateEventDataIfPresent(event.data, "timeToAction", pageActionEvent.timeToAction);
2392
- _populateEventDataIfPresent(event.data, "refUri", pageActionEvent.refUri);
2393
- _populateEventDataIfPresent(event.data, "pageName", pageActionEvent.pageName);
2394
- _populateEventDataIfPresent(event.data, "parentId", pageActionEvent.parentId);
2472
+ _populateEventDataIfPresent(event.baseData, "name", pageActionEvent[_DYN_NAME ]);
2473
+ _populateEventDataIfPresent(event[_DYN_DATA ], "baseTypeSource", "ClickEvent");
2474
+ _populateEventDataIfPresent(event[_DYN_DATA ], "uri", pageActionEvent.uri);
2475
+ _populateEventDataIfPresent(event[_DYN_DATA ], "pageType", pageActionEvent[_DYN_PAGE_TYPE ]);
2476
+ _populateEventDataIfPresent(event[_DYN_DATA ], "properties", pageActionEvent[_DYN_PROPERTIES ]);
2477
+ _populateEventDataIfPresent(event[_DYN_DATA ], "actionType", pageActionEvent[_DYN_ACTION_TYPE ]);
2478
+ _populateEventDataIfPresent(event[_DYN_DATA ], "behavior", pageActionEvent[_DYN_BEHAVIOR ]);
2479
+ _populateEventDataIfPresent(event[_DYN_DATA ], "clickCoordinates", pageActionEvent[_DYN_CLICK_COORDINATES ]);
2480
+ _populateEventDataIfPresent(event[_DYN_DATA ], "content", pageActionEvent[_DYN_CONTENT ]);
2481
+ _populateEventDataIfPresent(event[_DYN_DATA ], "targetUri", pageActionEvent.targetUri);
2482
+ _populateEventDataIfPresent(event[_DYN_DATA ], "timeToAction", pageActionEvent.timeToAction);
2483
+ _populateEventDataIfPresent(event[_DYN_DATA ], "refUri", pageActionEvent[_DYN_REF_URI ]);
2484
+ _populateEventDataIfPresent(event.data, "pageName", pageActionEvent[_DYN_PAGE_NAME ]);
2485
+ _populateEventDataIfPresent(event[_DYN_DATA ], "parentId", pageActionEvent[_DYN_PARENT_ID ]);
2395
2486
  if (properties) {
2396
2487
  objForEachKey(properties, function (property, value) {
2397
- if (!event.data[property]) {
2398
- _populateEventDataIfPresent(event.data, property, value);
2488
+ if (!event[_DYN_DATA ][property]) {
2489
+ _populateEventDataIfPresent(event[_DYN_DATA ], property, value);
2399
2490
  }
2400
2491
  });
2401
2492
  }
2402
2493
  _self._clickAnalyticsPlugin.core.track(event);
2403
2494
  };
2404
- _self.capturePageAction = function (element, overrideValues, customProperties, isRightClick) {
2495
+ _self[_DYN_CAPTURE_PAGE_ACTION ] = function (element, overrideValues, customProperties, isRightClick) {
2405
2496
  overrideValues = !isValueAssigned(overrideValues) ? {} : overrideValues;
2406
2497
  var pageActionEvent = { name: "" };
2407
2498
  var pageActionProperties = isValueAssigned(customProperties) ? customProperties : {};
2408
- _self.setCommonProperties(pageActionEvent, overrideValues);
2409
- pageActionEvent.behavior = _self._getBehavior(overrideValues);
2499
+ _self[_DYN_SET_COMMON_PROPERTIE4 ](pageActionEvent, overrideValues);
2500
+ pageActionEvent[_DYN_BEHAVIOR ] = _self._getBehavior(overrideValues);
2410
2501
  var elementContent = {};
2411
2502
  if (isRightClick) {
2412
- pageActionEvent.behavior = _self._config.defaultRightClickBhvr;
2503
+ pageActionEvent[_DYN_BEHAVIOR ] = _self[_DYN__CONFIG ].defaultRightClickBhvr;
2413
2504
  }
2414
2505
  if (element) {
2415
2506
  pageActionEvent.targetUri = getClickTarget(element);
2416
- elementContent = _self._contentHandler.getElementContent(element);
2417
- if (elementContent.bhvr && !isValueAssigned(overrideValues.behavior)) {
2507
+ elementContent = _self._contentHandler[_DYN_GET_ELEMENT_CONTENT ](element);
2508
+ if (elementContent.bhvr && !isValueAssigned(overrideValues[_DYN_BEHAVIOR ])) {
2418
2509
  var currentBehavior = extractFieldFromObject(elementContent, "bhvr");
2419
- pageActionEvent.behavior = _self._getValidBehavior(currentBehavior);
2510
+ pageActionEvent[_DYN_BEHAVIOR ] = _self[_DYN__GET_VALID_BEHAVIOR ](currentBehavior);
2420
2511
  }
2421
- if (!isValueAssigned(elementContent.id) && !isValueAssigned(elementContent.contentName)) {
2422
- _throwInternal(_self._traceLogger, 2 , 102 , "Missing attributes id or contentName in click event. Click event information will still be collected!");
2512
+ if (!isValueAssigned(elementContent.id) && !isValueAssigned(elementContent[_DYN_CONTENT_NAME ])) {
2513
+ _throwInternal(_self[_DYN__TRACE_LOGGER ], 2 , 102 , "Missing attributes id or contentName in click event. Click event information will still be collected!");
2423
2514
  }
2424
2515
  }
2425
- pageActionEvent.name = elementContent.id || elementContent.contentName || strNotSpecified;
2426
- pageActionEvent.parentId = elementContent.parentid || elementContent.parentName || strNotSpecified;
2427
- if (isValueAssigned(overrideValues.actionType)) {
2428
- pageActionEvent.actionType = overrideValues.actionType;
2516
+ pageActionEvent[_DYN_NAME ] = elementContent.id || elementContent[_DYN_CONTENT_NAME ] || strNotSpecified;
2517
+ pageActionEvent[_DYN_PARENT_ID ] = elementContent.parentid || elementContent.parentName || strNotSpecified;
2518
+ if (isValueAssigned(overrideValues[_DYN_ACTION_TYPE ])) {
2519
+ pageActionEvent[_DYN_ACTION_TYPE ] = overrideValues[_DYN_ACTION_TYPE ];
2429
2520
  }
2430
- if (isValueAssigned(overrideValues.clickCoordinateX) && isValueAssigned(overrideValues.clickCoordinateY)) {
2431
- pageActionEvent.clickCoordinates = overrideValues.clickCoordinateX + "X" + overrideValues.clickCoordinateY;
2521
+ if (isValueAssigned(overrideValues[_DYN_CLICK_COORDINATE_X ]) && isValueAssigned(overrideValues[_DYN_CLICK_COORDINATE_Y ])) {
2522
+ pageActionEvent[_DYN_CLICK_COORDINATES ] = overrideValues[_DYN_CLICK_COORDINATE_X ] + "X" + overrideValues[_DYN_CLICK_COORDINATE_Y ];
2432
2523
  }
2433
2524
  _sanitizePageActionEventContent(elementContent);
2434
- pageActionEvent.content = bracketIt(JSON.stringify(extend(elementContent, overrideValues && overrideValues.contentTags ? overrideValues.contentTags : {})));
2525
+ pageActionEvent[_DYN_CONTENT ] = bracketIt(JSON.stringify(objExtend(elementContent, overrideValues && overrideValues.contentTags ? overrideValues.contentTags : {})));
2435
2526
  pageActionEvent.timeToAction = _getTimeToClick();
2436
- pageActionEvent.refUri = isValueAssigned(overrideValues.refUri) ? overrideValues.refUri : _self._config.coreData.referrerUri;
2527
+ pageActionEvent.refUri = isValueAssigned(overrideValues.refUri) ? overrideValues.refUri : _self._config[_DYN_CORE_DATA ].referrerUri;
2437
2528
  if (_isUndefinedEvent(pageActionEvent)) {
2438
2529
  return;
2439
2530
  }
2440
- _self.trackPageAction(pageActionEvent, pageActionProperties);
2531
+ _self[_DYN_TRACK_PAGE_ACTION ](pageActionEvent, pageActionProperties);
2441
2532
  };
2442
2533
  function _getTimeToClick() {
2443
2534
  var perf = getPerformance();
@@ -2459,16 +2550,16 @@ this.Microsoft = this.Microsoft || {};
2459
2550
  delete pageActionContent.id;
2460
2551
  delete pageActionContent.parentid;
2461
2552
  delete pageActionContent.parentname;
2462
- if (_self._config && _self._config.dataTags && isValueAssigned(_self._config.dataTags.parentDataTag)) {
2463
- delete pageActionContent[_self._config.dataTags.parentDataTag];
2553
+ if (_self._config && _self._config[_DYN_DATA_TAGS ] && isValueAssigned(_self[_DYN__CONFIG ][_DYN_DATA_TAGS ][_DYN_PARENT_DATA_TAG ])) {
2554
+ delete pageActionContent[_self._config[_DYN_DATA_TAGS ].parentDataTag];
2464
2555
  }
2465
2556
  }
2466
2557
  }
2467
2558
  function _isUndefinedEvent(pageActionEvent) {
2468
- if (_self._config.dropInvalidEvents) {
2469
- if (pageActionEvent.name === strNotSpecified
2470
- && pageActionEvent.parentId === strNotSpecified
2471
- && pageActionEvent.content === "[{}]") {
2559
+ if (_self[_DYN__CONFIG ].dropInvalidEvents) {
2560
+ if (pageActionEvent[_DYN_NAME ] === strNotSpecified
2561
+ && pageActionEvent[_DYN_PARENT_ID ] === strNotSpecified
2562
+ && pageActionEvent[_DYN_CONTENT ] === "[{}]") {
2472
2563
  return true;
2473
2564
  }
2474
2565
  }
@@ -2506,7 +2597,7 @@ this.Microsoft = this.Microsoft || {};
2506
2597
  var win = getWindow();
2507
2598
  var doc = getDocument();
2508
2599
  if (win) {
2509
- var event_1 = (navigator.appVersion.indexOf("MSIE") !== -1) ? "click" : "mousedown";
2600
+ var event_1 = (navigator.appVersion[_DYN_INDEX_OF ]("MSIE") !== -1) ? "click" : "mousedown";
2510
2601
  eventOn(win, event_1, _processClick, _evtNamespace);
2511
2602
  eventOn(win, "keyup", _processClick, _evtNamespace);
2512
2603
  }
@@ -2520,12 +2611,13 @@ this.Microsoft = this.Microsoft || {};
2520
2611
  eventOff(getDocument(), null, null, _evtNamespace);
2521
2612
  };
2522
2613
  function _capturePageAction(element, overrideValues, customProperties, isRightClick) {
2523
- var donotTrackTag = _self._config.dataTags.customDataPrefix + _self._config.dataTags.dntDataTag;
2614
+ var donotTrackTag = _self._config.dataTags[_DYN_CUSTOM_DATA_PREFIX ] + _self[_DYN__CONFIG ][_DYN_DATA_TAGS ].dntDataTag;
2524
2615
  if (!isElementDnt(element, donotTrackTag)) {
2525
- _self._pageAction.capturePageAction(element, overrideValues, customProperties, isRightClick);
2616
+ _self._pageAction[_DYN_CAPTURE_PAGE_ACTION ](element, overrideValues, customProperties, isRightClick);
2526
2617
  }
2527
2618
  }
2528
2619
  function _processClick(clickEvent) {
2620
+ var _a;
2529
2621
  var clickCaptureElements = { A: true, BUTTON: true, AREA: true, INPUT: true };
2530
2622
  var win = getWindow();
2531
2623
  if (isNullOrUndefined(clickEvent) && win) {
@@ -2533,40 +2625,40 @@ this.Microsoft = this.Microsoft || {};
2533
2625
  }
2534
2626
  if (clickEvent) {
2535
2627
  var element = clickEvent.srcElement || clickEvent.target;
2536
- var overrideValues = {
2537
- clickCoordinateX: clickEvent.pageX,
2538
- clickCoordinateY: clickEvent.pageY
2539
- };
2628
+ var overrideValues = (_a = {},
2629
+ _a[_DYN_CLICK_COORDINATE_X ] = clickEvent.pageX,
2630
+ _a[_DYN_CLICK_COORDINATE_Y ] = clickEvent.pageY,
2631
+ _a);
2540
2632
  var isRightClickObj = isRightClick(clickEvent);
2541
2633
  if (isRightClickObj) {
2542
- overrideValues.actionType = ActionType.CLICKRIGHT;
2634
+ overrideValues[_DYN_ACTION_TYPE ] = ActionType.CLICKRIGHT;
2543
2635
  }
2544
2636
  else if (isLeftClick(clickEvent)) {
2545
- overrideValues.actionType = ActionType.CLICKLEFT;
2637
+ overrideValues[_DYN_ACTION_TYPE ] = ActionType.CLICKLEFT;
2546
2638
  }
2547
2639
  else if (isKeyboardEnter(clickEvent)) {
2548
- overrideValues.actionType = ActionType.KEYBOARDENTER;
2640
+ overrideValues[_DYN_ACTION_TYPE ] = ActionType.KEYBOARDENTER;
2549
2641
  }
2550
2642
  else if (isKeyboardSpace(clickEvent)) {
2551
- overrideValues.actionType = ActionType.KEYBOARDSPACE;
2643
+ overrideValues[_DYN_ACTION_TYPE ] = ActionType.KEYBOARDSPACE;
2552
2644
  }
2553
2645
  else if (isMiddleClick(clickEvent)) {
2554
- overrideValues.actionType = ActionType.CLICKMIDDLE;
2646
+ overrideValues[_DYN_ACTION_TYPE ] = ActionType.CLICKMIDDLE;
2555
2647
  }
2556
2648
  else {
2557
2649
  return;
2558
2650
  }
2559
- while (element && element.tagName) {
2560
- if (element.control && clickCaptureElements[element.control.tagName.toUpperCase()]) {
2651
+ while (element && element[_DYN_TAG_NAME ]) {
2652
+ if (element.control && clickCaptureElements[element.control[_DYN_TAG_NAME ][_DYN_TO_UPPER_CASE ]()]) {
2561
2653
  element = element.control;
2562
2654
  }
2563
- var tagNameUpperCased = element.tagName.toUpperCase();
2655
+ var tagNameUpperCased = element[_DYN_TAG_NAME ][_DYN_TO_UPPER_CASE ]();
2564
2656
  if (!clickCaptureElements[tagNameUpperCased]) {
2565
- element = element.parentElement || element.parentNode;
2657
+ element = element.parentElement || element[_DYN_PARENT_NODE ];
2566
2658
  continue;
2567
2659
  }
2568
2660
  else {
2569
- var sendEvent = tagNameUpperCased === "INPUT" ? clickCaptureInputTypes[element.type.toUpperCase()] : true;
2661
+ var sendEvent = tagNameUpperCased === "INPUT" ? clickCaptureInputTypes[element.type[_DYN_TO_UPPER_CASE ]()] : true;
2570
2662
  if (sendEvent) {
2571
2663
  _capturePageAction(element, overrideValues, {}, isRightClickObj);
2572
2664
  }
@@ -2588,57 +2680,57 @@ this.Microsoft = this.Microsoft || {};
2588
2680
  this._traceLogger = _traceLogger;
2589
2681
  dynamicProto(DomContentHandler, this, function (_self) {
2590
2682
  _self.getMetadata = function () {
2591
- var dataTags = (_self._config || {}).dataTags;
2683
+ var dataTags = (_self._config || {})[_DYN_DATA_TAGS ];
2592
2684
  var metaTags = {};
2593
2685
  if (hasDocument) {
2594
- metaTags = isValueAssigned(dataTags.metaDataPrefix) ? _getMetaDataFromDOM(dataTags.captureAllMetaDataContent, dataTags.metaDataPrefix, false) :
2595
- _getMetaDataFromDOM(dataTags.captureAllMetaDataContent, "", false);
2686
+ metaTags = isValueAssigned(dataTags.metaDataPrefix) ? _getMetaDataFromDOM(dataTags[_DYN_CAPTURE_ALL_META_DAT3 ], dataTags.metaDataPrefix, false) :
2687
+ _getMetaDataFromDOM(dataTags[_DYN_CAPTURE_ALL_META_DAT3 ], "", false);
2596
2688
  }
2597
2689
  return metaTags;
2598
2690
  };
2599
- _self.getElementContent = function (element) {
2691
+ _self[_DYN_GET_ELEMENT_CONTENT ] = function (element) {
2600
2692
  if (!element) {
2601
2693
  return {};
2602
2694
  }
2603
- var dataTags = (_self._config || {}).dataTags;
2695
+ var dataTags = (_self._config || {})[_DYN_DATA_TAGS ];
2604
2696
  var elementContent = {};
2605
2697
  var biBlobValue;
2606
2698
  var parentDataTagPrefix;
2607
- var dataTagPrefix = dataTags.customDataPrefix;
2608
- var aiBlobAttributeTag = dataTagPrefix + dataTags.aiBlobAttributeTag;
2609
- if (isValueAssigned(dataTags.parentDataTag)) {
2610
- parentDataTagPrefix = dataTagPrefix + dataTags.parentDataTag;
2699
+ var dataTagPrefix = dataTags[_DYN_CUSTOM_DATA_PREFIX ];
2700
+ var aiBlobAttributeTag = dataTagPrefix + dataTags[_DYN_AI_BLOB_ATTRIBUTE_TA2 ];
2701
+ if (isValueAssigned(dataTags[_DYN_PARENT_DATA_TAG ])) {
2702
+ parentDataTagPrefix = dataTagPrefix + dataTags[_DYN_PARENT_DATA_TAG ];
2611
2703
  }
2612
2704
  if (!_isTracked(element, dataTagPrefix, aiBlobAttributeTag)) {
2613
- biBlobValue = element.getAttribute(aiBlobAttributeTag);
2705
+ biBlobValue = element[_DYN_GET_ATTRIBUTE ](aiBlobAttributeTag);
2614
2706
  if (biBlobValue) {
2615
2707
  try {
2616
2708
  elementContent = JSON.parse(biBlobValue);
2617
2709
  }
2618
2710
  catch (e) {
2619
- _throwInternal(_self._traceLogger, 1 , 101 , "Can not parse " + biBlobValue);
2711
+ _throwInternal(_self[_DYN__TRACE_LOGGER ], 1 , 101 , "Can not parse " + biBlobValue);
2620
2712
  }
2621
2713
  }
2622
2714
  else {
2623
- elementContent = extend(elementContent, _populateElementContent(element, dataTagPrefix, parentDataTagPrefix, aiBlobAttributeTag));
2715
+ elementContent = objExtend(elementContent, _populateElementContent(element, dataTagPrefix, parentDataTagPrefix, aiBlobAttributeTag));
2624
2716
  }
2625
2717
  }
2626
2718
  else {
2627
- elementContent = extend(elementContent, _populateElementContentwithDataTag(element, dataTagPrefix, parentDataTagPrefix, aiBlobAttributeTag));
2719
+ elementContent = objExtend(elementContent, _populateElementContentwithDataTag(element, dataTagPrefix, parentDataTagPrefix, aiBlobAttributeTag));
2628
2720
  }
2629
2721
  removeInvalidElements(elementContent);
2630
2722
  if (parentDataTagPrefix) {
2631
- elementContent = extend(elementContent, _getParentDetails(element, elementContent, dataTagPrefix, aiBlobAttributeTag));
2723
+ elementContent = objExtend(elementContent, _getParentDetails(element, elementContent, dataTagPrefix, aiBlobAttributeTag));
2632
2724
  }
2633
2725
  return elementContent;
2634
2726
  };
2635
2727
  function _captureElementContentWithDataTag(contentElement, elementContent, dataTagPrefix) {
2636
- for (var i = 0, attrib; i < contentElement.attributes.length; i++) {
2637
- attrib = contentElement.attributes[i];
2638
- if (attrib.name.indexOf(dataTagPrefix) !== 0) {
2728
+ for (var i = 0, attrib; i < contentElement.attributes[_DYN_LENGTH ]; i++) {
2729
+ attrib = contentElement[_DYN_ATTRIBUTES ][i];
2730
+ if (attrib.name[_DYN_INDEX_OF ](dataTagPrefix) !== 0) {
2639
2731
  continue;
2640
2732
  }
2641
- var attribName = attrib.name.replace(dataTagPrefix, "");
2733
+ var attribName = attrib[_DYN_NAME ].replace(dataTagPrefix, "");
2642
2734
  elementContent[attribName] = attrib.value;
2643
2735
  }
2644
2736
  }
@@ -2646,20 +2738,20 @@ this.Microsoft = this.Microsoft || {};
2646
2738
  var element = el;
2647
2739
  var parentDataTagFound = false;
2648
2740
  var elementLevelFlag = false;
2649
- while (!isNullOrUndefined(element) && !isNullOrUndefined(element.attributes)) {
2650
- var attributes = element.attributes;
2651
- for (var i = 0; i < attributes.length; i++) {
2741
+ while (!isNullOrUndefined(element) && !isNullOrUndefined(element[_DYN_ATTRIBUTES ])) {
2742
+ var attributes = element[_DYN_ATTRIBUTES ];
2743
+ for (var i = 0; i < attributes[_DYN_LENGTH ]; i++) {
2652
2744
  var attrib = attributes[i];
2653
- if (attrib.name.indexOf(dataTagPrefix) !== 0) {
2745
+ if (attrib.name[_DYN_INDEX_OF ](dataTagPrefix) !== 0) {
2654
2746
  continue;
2655
2747
  }
2656
- if (attrib.name.indexOf(parentDataTagPrefix) === 0) {
2748
+ if (attrib.name[_DYN_INDEX_OF ](parentDataTagPrefix) === 0) {
2657
2749
  parentDataTagFound = true;
2658
2750
  }
2659
- if (attrib.name.indexOf(aiBlobAttributeTag) === 0) {
2751
+ if (attrib.name[_DYN_INDEX_OF ](aiBlobAttributeTag) === 0) {
2660
2752
  continue;
2661
2753
  }
2662
- var attribName = attrib.name.replace(dataTagPrefix, "");
2754
+ var attribName = attrib[_DYN_NAME ].replace(dataTagPrefix, "");
2663
2755
  if (elementLevelFlag && attribName === "id") {
2664
2756
  continue;
2665
2757
  }
@@ -2671,7 +2763,7 @@ this.Microsoft = this.Microsoft || {};
2671
2763
  break;
2672
2764
  }
2673
2765
  elementLevelFlag = true;
2674
- element = element.parentNode;
2766
+ element = element[_DYN_PARENT_NODE ];
2675
2767
  }
2676
2768
  }
2677
2769
  function _populateElementContent(element, dataTagPrefix, parentDataTagPrefix, aiBlobAttributeTag) {
@@ -2682,19 +2774,19 @@ this.Microsoft = this.Microsoft || {};
2682
2774
  var htmlContent = _getHtmlIdAndContentName(element);
2683
2775
  elementContent = {
2684
2776
  id: htmlContent.id || "",
2685
- contentName: htmlContent.contentName || ""
2777
+ contentName: htmlContent[_DYN_CONTENT_NAME ] || ""
2686
2778
  };
2687
2779
  if (isValueAssigned(parentDataTagPrefix)) {
2688
2780
  _walkUpDomChainCaptureData(element, elementContent, dataTagPrefix, parentDataTagPrefix, aiBlobAttributeTag);
2689
2781
  }
2690
- if (!elementContent.id && !elementContent.contentName) {
2782
+ if (!elementContent.id && !elementContent[_DYN_CONTENT_NAME ]) {
2691
2783
  _throwInternal(_traceLogger, 2 , 102 , "Invalid content blob. Missing required attributes (id, contentName. " +
2692
2784
  " Content information will still be collected!");
2693
2785
  }
2694
2786
  return elementContent;
2695
2787
  }
2696
2788
  function _populateElementContentwithDataTag(element, dataTagPrefix, parentDataTagPrefix, aiBlobAttributeTag) {
2697
- var dataTags = (_self._config || {}).dataTags;
2789
+ var dataTags = (_self._config || {})[_DYN_DATA_TAGS ];
2698
2790
  var elementContent = {};
2699
2791
  if (!element) {
2700
2792
  return elementContent;
@@ -2706,13 +2798,13 @@ this.Microsoft = this.Microsoft || {};
2706
2798
  else {
2707
2799
  _captureElementContentWithDataTag(element, elementContent, dataTagPrefix);
2708
2800
  }
2709
- if (dataTags.useDefaultContentNameOrId) {
2801
+ if (dataTags[_DYN_USE_DEFAULT_CONTENT_1 ]) {
2710
2802
  if (!isValueAssigned(elementContent.id)) {
2711
2803
  elementContent.id = htmlContent.id || "";
2712
2804
  }
2713
- elementContent.contentName = htmlContent.contentName || "";
2805
+ elementContent[_DYN_CONTENT_NAME ] = htmlContent[_DYN_CONTENT_NAME ] || "";
2714
2806
  }
2715
- if (!elementContent.id && !elementContent.contentName) {
2807
+ if (!elementContent.id && !elementContent[_DYN_CONTENT_NAME ]) {
2716
2808
  _throwInternal(_traceLogger, 2 , 102 , "Invalid content blob. Missing required attributes (id, contentName. " +
2717
2809
  " Content information will still be collected!");
2718
2810
  }
@@ -2723,12 +2815,12 @@ this.Microsoft = this.Microsoft || {};
2723
2815
  var metaData = {};
2724
2816
  if (hasDocument) {
2725
2817
  metaElements = document.querySelectorAll("meta");
2726
- for (var i = 0; i < metaElements.length; i++) {
2818
+ for (var i = 0; i < metaElements[_DYN_LENGTH ]; i++) {
2727
2819
  var meta = metaElements[i];
2728
- if (meta.name) {
2729
- if (captureAllMetaDataContent || meta.name.indexOf(prefix) === 0) {
2730
- var name_1 = removePrefix ? meta.name.replace(prefix, "") : meta.name;
2731
- metaData[name_1] = meta.content;
2820
+ if (meta[_DYN_NAME ]) {
2821
+ if (captureAllMetaDataContent || meta.name[_DYN_INDEX_OF ](prefix) === 0) {
2822
+ var name_1 = removePrefix ? meta[_DYN_NAME ].replace(prefix, "") : meta[_DYN_NAME ];
2823
+ metaData[name_1] = meta[_DYN_CONTENT ];
2732
2824
  }
2733
2825
  }
2734
2826
  }
@@ -2736,12 +2828,12 @@ this.Microsoft = this.Microsoft || {};
2736
2828
  return metaData;
2737
2829
  }
2738
2830
  function _getDefaultContentName(element, useDefaultContentName) {
2739
- if (useDefaultContentName === false || !element.tagName) {
2831
+ if (useDefaultContentName === false || !element[_DYN_TAG_NAME ]) {
2740
2832
  return "";
2741
2833
  }
2742
2834
  var doc = getDocument() || {};
2743
2835
  var contentName;
2744
- switch (element.tagName) {
2836
+ switch (element[_DYN_TAG_NAME ]) {
2745
2837
  case "A":
2746
2838
  contentName = doc.all ? element.innerText || element.innerHTML : element.text || element.innerHTML;
2747
2839
  break;
@@ -2750,37 +2842,37 @@ this.Microsoft = this.Microsoft || {};
2750
2842
  contentName = element.alt;
2751
2843
  break;
2752
2844
  default:
2753
- contentName = element.value || element.name || element.alt || element.innerText || element.id;
2845
+ contentName = element.value || element[_DYN_NAME ] || element.alt || element.innerText || element.id;
2754
2846
  }
2755
2847
  return contentName.substring(0, MAX_CONTENTNAME_LENGTH);
2756
2848
  }
2757
2849
  function _isTracked(element, dataTag, aiBlobAttributeTag) {
2758
- var attrs = element.attributes;
2850
+ var attrs = element[_DYN_ATTRIBUTES ];
2759
2851
  var dataTagFound = false;
2760
- for (var i = 0; i < attrs.length; i++) {
2761
- var attributeName = attrs[i].name;
2852
+ for (var i = 0; i < attrs[_DYN_LENGTH ]; i++) {
2853
+ var attributeName = attrs[i][_DYN_NAME ];
2762
2854
  if (attributeName === aiBlobAttributeTag) {
2763
2855
  return false;
2764
2856
  }
2765
- else if (attributeName.indexOf(dataTag) === 0) {
2857
+ else if (attributeName[_DYN_INDEX_OF ](dataTag) === 0) {
2766
2858
  dataTagFound = true;
2767
2859
  }
2768
2860
  }
2769
2861
  return dataTagFound;
2770
2862
  }
2771
2863
  function _getHtmlIdAndContentName(element) {
2772
- var dataTags = (_self._config || {}).dataTags;
2773
- var callback = (_self._config || {}).callback;
2864
+ var dataTags = (_self._config || {})[_DYN_DATA_TAGS ];
2865
+ var callback = (_self[_DYN__CONFIG ] || {}).callback;
2774
2866
  var htmlContent = {};
2775
2867
  if (!element) {
2776
2868
  return htmlContent;
2777
2869
  }
2778
- if (dataTags.useDefaultContentNameOrId) {
2779
- var customizedContentName = callback.contentName ? callback.contentName(element, dataTags.useDefaultContentNameOrId) : "";
2780
- var defaultContentName = _getDefaultContentName(element, dataTags.useDefaultContentNameOrId);
2870
+ if (dataTags[_DYN_USE_DEFAULT_CONTENT_1 ]) {
2871
+ var customizedContentName = callback.contentName ? callback.contentName(element, dataTags[_DYN_USE_DEFAULT_CONTENT_1 ]) : "";
2872
+ var defaultContentName = _getDefaultContentName(element, dataTags[_DYN_USE_DEFAULT_CONTENT_1 ]);
2781
2873
  htmlContent = {
2782
2874
  id: element.id,
2783
- contentName: customizedContentName || defaultContentName || element.getAttribute("alt")
2875
+ contentName: customizedContentName || defaultContentName || element[_DYN_GET_ATTRIBUTE ]("alt")
2784
2876
  };
2785
2877
  }
2786
2878
  return htmlContent;
@@ -2797,9 +2889,9 @@ this.Microsoft = this.Microsoft || {};
2797
2889
  function _populateParentInfo(element, dataTagPrefix, aiBlobAttributeTag) {
2798
2890
  var parentInfo = {};
2799
2891
  var parentId;
2800
- var closestParentElement = walkUpDomChainWithElementValidation(element.parentElement, _isTracked, dataTagPrefix);
2892
+ var closestParentElement = walkUpDomChainWithElementValidation(element[_DYN_PARENT_ELEMENT ], _isTracked, dataTagPrefix);
2801
2893
  if (closestParentElement) {
2802
- var dataAttr = closestParentElement.getAttribute(aiBlobAttributeTag) || element[aiBlobAttributeTag];
2894
+ var dataAttr = closestParentElement[_DYN_GET_ATTRIBUTE ](aiBlobAttributeTag) || element[aiBlobAttributeTag];
2803
2895
  if (dataAttr) {
2804
2896
  try {
2805
2897
  var telemetryObject = JSON.parse(dataAttr);
@@ -2812,16 +2904,16 @@ this.Microsoft = this.Microsoft || {};
2812
2904
  }
2813
2905
  }
2814
2906
  else {
2815
- parentId = closestParentElement.getAttribute(dataTagPrefix + "id");
2907
+ parentId = closestParentElement[_DYN_GET_ATTRIBUTE ](dataTagPrefix + "id");
2816
2908
  }
2817
2909
  }
2818
2910
  if (parentId) {
2819
2911
  parentInfo["parentid"] = parentId;
2820
2912
  }
2821
2913
  else {
2822
- var htmlContent = _getHtmlIdAndContentName(element.parentElement);
2914
+ var htmlContent = _getHtmlIdAndContentName(element[_DYN_PARENT_ELEMENT ]);
2823
2915
  parentInfo["parentid"] = htmlContent.id;
2824
- parentInfo["parentname"] = htmlContent.contentName;
2916
+ parentInfo["parentname"] = htmlContent[_DYN_CONTENT_NAME ];
2825
2917
  }
2826
2918
  return parentInfo;
2827
2919
  }
@@ -2848,14 +2940,14 @@ this.Microsoft = this.Microsoft || {};
2848
2940
  if (isNullOrUndefined(core)) {
2849
2941
  throwError("Error initializing");
2850
2942
  }
2851
- config.extensionConfig = config.extensionConfig || [];
2852
- config.extensionConfig[_identifier] = config.extensionConfig[_identifier] || {};
2853
- _config = mergeConfig(config.extensionConfig[_identifier]);
2943
+ config[_DYN_EXTENSION_CONFIG ] = config[_DYN_EXTENSION_CONFIG ] || [];
2944
+ config[_DYN_EXTENSION_CONFIG ][_identifier] = config[_DYN_EXTENSION_CONFIG ][_identifier] || {};
2945
+ _config = mergeConfig(config[_DYN_EXTENSION_CONFIG ][_identifier]);
2854
2946
  _super.prototype.initialize.call(_this, config, core, extensions, pluginChain);
2855
2947
  var logger = _self.diagLog();
2856
2948
  _contentHandler = _contentHandler ? _contentHandler : new DomContentHandler(_config, logger);
2857
2949
  var metaTags = _contentHandler.getMetadata();
2858
- _pageAction = new PageAction(_this, _config, _contentHandler, _config.callback.pageActionPageTags, metaTags, logger);
2950
+ _pageAction = new PageAction(_this, _config, _contentHandler, _config.callback[_DYN_PAGE_ACTION_PAGE_TAG0 ], metaTags, logger);
2859
2951
  _autoCaptureHandler = _autoCaptureHandler ? _autoCaptureHandler : new AutoCaptureHandler(_self, _config, _pageAction, logger);
2860
2952
  if (_config.autoCapture) {
2861
2953
  _autoCaptureHandler.click();
@@ -2874,9 +2966,9 @@ this.Microsoft = this.Microsoft || {};
2874
2966
  _self.processTelemetry = function (env, itemCtx) {
2875
2967
  _self.processNext(env, itemCtx);
2876
2968
  };
2877
- _self.trackPageAction = function (pageAction, customProperties) {
2969
+ _self[_DYN_TRACK_PAGE_ACTION ] = function (pageAction, customProperties) {
2878
2970
  try {
2879
- _pageAction.trackPageAction(pageAction, customProperties);
2971
+ _pageAction[_DYN_TRACK_PAGE_ACTION ](pageAction, customProperties);
2880
2972
  }
2881
2973
  catch (e) {
2882
2974
  _throwInternal(_self.diagLog(), 1 , 103 , "trackPageAction failed, page action event will not be collected: " + getExceptionName(e), { exception: dumpObj(e) });
@@ -2898,7 +2990,7 @@ this.Microsoft = this.Microsoft || {};
2898
2990
  }
2899
2991
  return _this;
2900
2992
  }
2901
- ClickAnalyticsPlugin.Version = "2.8.5-nightly.2206-04";
2993
+ ClickAnalyticsPlugin.Version = "2.8.5-nightly.2206-06";
2902
2994
  return ClickAnalyticsPlugin;
2903
2995
  }(BaseTelemetryPlugin));
2904
2996