@microsoft/applicationinsights-clickanalytics-js 3.0.0-beta.2212-15 → 3.0.0-beta.2301-02

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 (60) hide show
  1. package/browser/{ai.clck.3.0.0-beta.2212-15.cjs.js → ai.clck.3.0.0-beta.2301-02.cjs.js} +154 -116
  2. package/browser/{ai.clck.3.0.0-beta.2212-15.cjs.js.map → ai.clck.3.0.0-beta.2301-02.cjs.js.map} +1 -1
  3. package/browser/ai.clck.3.0.0-beta.2301-02.cjs.min.js +6 -0
  4. package/browser/{ai.clck.3.0.0-beta.2212-15.gbl.min.js.map → ai.clck.3.0.0-beta.2301-02.cjs.min.js.map} +1 -1
  5. package/browser/{ai.clck.3.0.0-beta.2212-15.gbl.js → ai.clck.3.0.0-beta.2301-02.gbl.js} +154 -116
  6. package/browser/{ai.clck.3.0.0-beta.2212-15.gbl.js.map → ai.clck.3.0.0-beta.2301-02.gbl.js.map} +1 -1
  7. package/browser/ai.clck.3.0.0-beta.2301-02.gbl.min.js +6 -0
  8. package/browser/{ai.clck.3.0.0-beta.2212-15.cjs.min.js.map → ai.clck.3.0.0-beta.2301-02.gbl.min.js.map} +1 -1
  9. package/browser/ai.clck.3.0.0-beta.2301-02.integrity.json +66 -0
  10. package/browser/{ai.clck.3.0.0-beta.2212-15.js → ai.clck.3.0.0-beta.2301-02.js} +154 -116
  11. package/browser/{ai.clck.3.0.0-beta.2212-15.js.map → ai.clck.3.0.0-beta.2301-02.js.map} +1 -1
  12. package/browser/ai.clck.3.0.0-beta.2301-02.min.js +6 -0
  13. package/browser/{ai.clck.3.0.0-beta.2212-15.min.js.map → ai.clck.3.0.0-beta.2301-02.min.js.map} +1 -1
  14. package/browser/ai.clck.3.cjs.js +153 -115
  15. package/browser/ai.clck.3.cjs.js.map +1 -1
  16. package/browser/ai.clck.3.cjs.min.js +2 -2
  17. package/browser/ai.clck.3.cjs.min.js.map +1 -1
  18. package/browser/ai.clck.3.gbl.js +153 -115
  19. package/browser/ai.clck.3.gbl.js.map +1 -1
  20. package/browser/ai.clck.3.gbl.min.js +2 -2
  21. package/browser/ai.clck.3.gbl.min.js.map +1 -1
  22. package/browser/ai.clck.3.js +153 -115
  23. package/browser/ai.clck.3.js.map +1 -1
  24. package/browser/ai.clck.3.min.js +2 -2
  25. package/browser/ai.clck.3.min.js.map +1 -1
  26. package/dist/applicationinsights-clickanalytics-js.d.ts +1 -1
  27. package/dist/applicationinsights-clickanalytics-js.js +153 -115
  28. package/dist/applicationinsights-clickanalytics-js.js.map +1 -1
  29. package/dist/applicationinsights-clickanalytics-js.min.js +2 -2
  30. package/dist/applicationinsights-clickanalytics-js.min.js.map +1 -1
  31. package/dist/applicationinsights-clickanalytics-js.rollup.d.ts +1 -1
  32. package/dist-esm/Behaviours.js +1 -1
  33. package/dist-esm/ClickAnalyticsPlugin.js +83 -18
  34. package/dist-esm/ClickAnalyticsPlugin.js.map +1 -1
  35. package/dist-esm/DataCollector.js +1 -1
  36. package/dist-esm/Enums.js +1 -1
  37. package/dist-esm/Interfaces/Datamodel.js +1 -1
  38. package/dist-esm/__DynamicConstants.js +12 -13
  39. package/dist-esm/__DynamicConstants.js.map +1 -1
  40. package/dist-esm/applicationinsights-clickanalytics-js.js +1 -1
  41. package/dist-esm/common/Utils.js +15 -66
  42. package/dist-esm/common/Utils.js.map +1 -1
  43. package/dist-esm/events/PageAction.js +6 -6
  44. package/dist-esm/events/PageAction.js.map +1 -1
  45. package/dist-esm/events/WebEvent.js +4 -4
  46. package/dist-esm/events/WebEvent.js.map +1 -1
  47. package/dist-esm/handlers/AutoCaptureHandler.js +3 -3
  48. package/dist-esm/handlers/AutoCaptureHandler.js.map +1 -1
  49. package/dist-esm/handlers/DomContentHandler.js +15 -13
  50. package/dist-esm/handlers/DomContentHandler.js.map +1 -1
  51. package/package.json +4 -4
  52. package/src/ClickAnalyticsPlugin.ts +94 -19
  53. package/src/__DynamicConstants.ts +11 -12
  54. package/src/common/Utils.ts +11 -63
  55. package/types/__DynamicConstants.d.ts +10 -11
  56. package/types/common/Utils.d.ts +4 -6
  57. package/browser/ai.clck.3.0.0-beta.2212-15.cjs.min.js +0 -6
  58. package/browser/ai.clck.3.0.0-beta.2212-15.gbl.min.js +0 -6
  59. package/browser/ai.clck.3.0.0-beta.2212-15.integrity.json +0 -66
  60. package/browser/ai.clck.3.0.0-beta.2212-15.min.js +0 -6
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Application Insights JavaScript SDK - Click Analytics, 3.0.0-beta.2212-15
2
+ * Application Insights JavaScript SDK - Click Analytics, 3.0.0-beta.2301-02
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  this.Microsoft = this.Microsoft || {};
@@ -87,7 +87,7 @@ this.Microsoft = this.Microsoft || {};
87
87
  * Microsoft Dynamic Proto Utility, 1.1.7
88
88
  * Copyright (c) Microsoft and contributors. All rights reserved.
89
89
  */
90
- var _a$2;
90
+ var _a$3;
91
91
  var UNDEFINED$1 = "undefined";
92
92
  var Constructor = 'constructor';
93
93
  var Prototype = 'prototype';
@@ -127,10 +127,10 @@ this.Microsoft = this.Microsoft || {};
127
127
  }
128
128
  var _gbl = _getGlobal();
129
129
  var _gblInst = _gbl[DynProtoGlobalSettings] || (_gbl[DynProtoGlobalSettings] = {
130
- o: (_a$2 = {},
131
- _a$2[strSetInstFuncs] = true,
132
- _a$2[strUseBaseInst] = true,
133
- _a$2),
130
+ o: (_a$3 = {},
131
+ _a$3[strSetInstFuncs] = true,
132
+ _a$3[strUseBaseInst] = true,
133
+ _a$3),
134
134
  n: 1000
135
135
  });
136
136
  function _hasOwnProperty(obj, prop) {
@@ -454,13 +454,25 @@ this.Microsoft = this.Microsoft || {};
454
454
  function _doNothing(value) {
455
455
  return value;
456
456
  }
457
+ ObjClass["assign"];
457
458
  function objKeys(value) {
458
459
  if (!isObject(value) || value === null) {
459
460
  throwTypeError("objKeys called on non-object");
460
461
  }
461
462
  return ObjClass.keys(value);
462
463
  }
464
+ function objDeepFreeze(value) {
465
+ if (_objFreeze) {
466
+ objForEachKey(value, function (key, value) {
467
+ if (isArray(value) || isObject(value)) {
468
+ _objFreeze(value);
469
+ }
470
+ });
471
+ }
472
+ return objFreeze(value);
473
+ }
463
474
  var objFreeze = _objFreeze || _doNothing;
475
+ ObjClass["seal"] || _doNothing;
464
476
  var objGetPrototypeOf = ObjClass["getPrototypeOf"] || _doNothing;
465
477
 
466
478
  var asString = StrCls;
@@ -898,6 +910,7 @@ this.Microsoft = this.Microsoft || {};
898
910
  var STR_ERROR_TO_CONSOLE = "errorToConsole";
899
911
  var STR_WARN_TO_CONSOLE = "warnToConsole";
900
912
  var STR_GET_PERF_MGR = "getPerfMgr";
913
+ var STR_NOT_DYNAMIC_ERROR = "Not dynamic - ";
901
914
 
902
915
  var strToString = "toString";
903
916
  var _fnToString = ObjClass$1[strToString];
@@ -1126,7 +1139,7 @@ this.Microsoft = this.Microsoft || {};
1126
1139
  }
1127
1140
 
1128
1141
  var _objDefineProperty = ObjDefineProperty;
1129
- var version = "3.0.0-beta.2212-15";
1142
+ var version = "3.0.0-beta.2301-02";
1130
1143
  var instanceName = "." + newId(6);
1131
1144
  var _dataUid = 0;
1132
1145
  function _createAccessor(target, prop, value) {
@@ -1595,6 +1608,15 @@ this.Microsoft = this.Microsoft || {};
1595
1608
  _makeDynamicObject(theState, newTarget);
1596
1609
  return cfgHandler;
1597
1610
  }
1611
+ function _logInvalidAccess(logger, message) {
1612
+ if (logger) {
1613
+ logger[STR_WARN_TO_CONSOLE ](message);
1614
+ logger[_DYN_THROW_INTERNAL ](2 , 108 , message);
1615
+ }
1616
+ else {
1617
+ throwInvalidAccess(message);
1618
+ }
1619
+ }
1598
1620
  function createDynamicConfig(config, defaultConfig, logger, inPlace) {
1599
1621
  var dynamicHandler = _createDynamicHandler(logger, config || {}, inPlace);
1600
1622
  if (defaultConfig) {
@@ -1602,6 +1624,14 @@ this.Microsoft = this.Microsoft || {};
1602
1624
  }
1603
1625
  return dynamicHandler;
1604
1626
  }
1627
+ function onConfigChange(config, configHandler, logger) {
1628
+ var handler = config[CFG_HANDLER_LINK] || config;
1629
+ if (handler.cfg && (handler.cfg === config || handler.cfg[CFG_HANDLER_LINK] === handler)) {
1630
+ return handler[_DYN_WATCH ](configHandler);
1631
+ }
1632
+ _logInvalidAccess(logger, STR_NOT_DYNAMIC_ERROR + dumpObj(config));
1633
+ createDynamicConfig(config, null, logger)[_DYN_WATCH ](configHandler);
1634
+ }
1605
1635
 
1606
1636
  var _aiNamespace = null;
1607
1637
  function _getExtensionNamespace() {
@@ -1619,17 +1649,17 @@ this.Microsoft = this.Microsoft || {};
1619
1649
  return ns ? ns["ChromeDbgExt"] : null;
1620
1650
  }
1621
1651
 
1622
- var _a$1;
1652
+ var _a$2;
1623
1653
  var AiNonUserActionablePrefix = "AI (Internal): ";
1624
1654
  var AiUserActionablePrefix = "AI: ";
1625
1655
  var AIInternalMessagePrefix = "AITR_";
1626
- var defaultValues$1 = (_a$1 = {
1656
+ var defaultValues$2 = (_a$2 = {
1627
1657
  loggingLevelConsole: 0,
1628
1658
  loggingLevelTelemetry: 1,
1629
1659
  maxMessageLimit: 25
1630
1660
  },
1631
- _a$1[_DYN_ENABLE_DEBUG_EXCEPTI5 ] = false,
1632
- _a$1);
1661
+ _a$2[_DYN_ENABLE_DEBUG_EXCEPTI5 ] = false,
1662
+ _a$2);
1633
1663
  function _sanitizeDiagnosticText(text) {
1634
1664
  if (text) {
1635
1665
  return "\"" + text[_DYN_REPLACE ](/\"/g, STR_EMPTY) + "\"";
@@ -1759,7 +1789,7 @@ this.Microsoft = this.Microsoft || {};
1759
1789
  }
1760
1790
  }
1761
1791
  function _setDefaultsFromConfig(config) {
1762
- var handler = createDynamicConfig(config, defaultValues$1, _self);
1792
+ var handler = createDynamicConfig(config, defaultValues$2, _self);
1763
1793
  handler[_DYN_WATCH ](function (details) {
1764
1794
  var config = details.cfg;
1765
1795
  _loggingLevelConsole = config[_DYN_LOGGING_LEVEL_CONSOL4 ];
@@ -2306,11 +2336,11 @@ this.Microsoft = this.Microsoft || {};
2306
2336
  };
2307
2337
  }
2308
2338
 
2309
- var _a;
2339
+ var _a$1;
2310
2340
  var strGetPlugin = "getPlugin";
2311
- var defaultValues = (_a = {},
2312
- _a[STR_EXTENSION_CONFIG] = { isVal: isNotNullOrUndefined, v: [] },
2313
- _a);
2341
+ var defaultValues$1 = (_a$1 = {},
2342
+ _a$1[STR_EXTENSION_CONFIG] = { isVal: isNotNullOrUndefined, v: [] },
2343
+ _a$1);
2314
2344
  var BaseTelemetryPlugin = /** @class */ (function () {
2315
2345
  function BaseTelemetryPlugin() {
2316
2346
  var _self = this;
@@ -2435,7 +2465,7 @@ this.Microsoft = this.Microsoft || {};
2435
2465
  return itemCtx;
2436
2466
  }
2437
2467
  function _setDefaults(config, core, pluginChain) {
2438
- createDynamicConfig(config, defaultValues, core[_DYN_LOGGER ]);
2468
+ createDynamicConfig(config, defaultValues$1, core[_DYN_LOGGER ]);
2439
2469
  if (!pluginChain && core) {
2440
2470
  pluginChain = core[_DYN_GET_PROCESS_TEL_CONT0 ]()[_DYN_GET_NEXT ]();
2441
2471
  }
@@ -2637,25 +2667,24 @@ this.Microsoft = this.Microsoft || {};
2637
2667
 
2638
2668
  var PropertiesPluginIdentifier = "AppInsightsPropertiesPlugin";
2639
2669
 
2640
- var _DYN_EXTENSION_CONFIG = "extensionConfig";
2641
- var _DYN_PAGE_ACTION_PAGE_TAG0 = "pageActionPageTags";
2670
+ var _DYN_INDEX_OF = "indexOf";
2642
2671
  var _DYN_TRACK_PAGE_ACTION = "trackPageAction";
2672
+ var _DYN_PAGE_ACTION_PAGE_TAG0 = "pageActionPageTags";
2673
+ var _DYN__DO_UNLOAD = "_doUnload";
2674
+ var _DYN_USE_DEFAULT_CONTENT_1 = "useDefaultContentNameOrId";
2675
+ var _DYN_CAPTURE_ALL_META_DAT2 = "captureAllMetaDataContent";
2676
+ var _DYN_PAGE_NAME = "pageName";
2677
+ var _DYN_CONTENT_NAME = "contentName";
2678
+ var _DYN_BEHAVIOR_VALIDATOR = "behaviorValidator";
2643
2679
  var _DYN_LENGTH = "length";
2644
2680
  var _DYN_TAG_NAME = "tagName";
2645
2681
  var _DYN_TO_UPPER_CASE = "toUpperCase";
2646
2682
  var _DYN_PATHNAME = "pathname";
2647
- var _DYN_PAGE_NAME = "pageName";
2648
2683
  var _DYN_CORE_DATA = "coreData";
2649
2684
  var _DYN_REQUEST_URI = "requestUri";
2650
2685
  var _DYN_GET_ATTRIBUTE = "getAttribute";
2651
2686
  var _DYN_PARENT_NODE = "parentNode";
2652
2687
  var _DYN_CUSTOM_DATA_PREFIX = "customDataPrefix";
2653
- var _DYN_INDEX_OF = "indexOf";
2654
- var _DYN_DATA_TAGS = "dataTags";
2655
- var _DYN_USE_DEFAULT_CONTENT_1 = "useDefaultContentNameOrId";
2656
- var _DYN_AI_BLOB_ATTRIBUTE_TA2 = "aiBlobAttributeTag";
2657
- var _DYN_CAPTURE_ALL_META_DAT3 = "captureAllMetaDataContent";
2658
- var _DYN_BEHAVIOR_VALIDATOR = "behaviorValidator";
2659
2688
  var _DYN_NAME = "name";
2660
2689
  var _DYN_DATA = "data";
2661
2690
  var _DYN_PAGE_TYPE = "pageType";
@@ -2667,14 +2696,14 @@ this.Microsoft = this.Microsoft || {};
2667
2696
  var _DYN_REF_URI = "refUri";
2668
2697
  var _DYN_PARENT_ID = "parentId";
2669
2698
  var _DYN_CAPTURE_PAGE_ACTION = "capturePageAction";
2670
- var _DYN_SET_COMMON_PROPERTIE4 = "setCommonProperties";
2699
+ var _DYN_SET_COMMON_PROPERTIE3 = "setCommonProperties";
2671
2700
  var _DYN_GET_ELEMENT_CONTENT = "getElementContent";
2672
2701
  var _DYN__GET_VALID_BEHAVIOR = "_getValidBehavior";
2673
- var _DYN_CONTENT_NAME = "contentName";
2674
2702
  var _DYN__TRACE_LOGGER = "_traceLogger";
2675
2703
  var _DYN_CLICK_COORDINATE_X = "clickCoordinateX";
2676
2704
  var _DYN_CLICK_COORDINATE_Y = "clickCoordinateY";
2677
2705
  var _DYN__CONFIG = "_config";
2706
+ var _DYN_DATA_TAGS = "dataTags";
2678
2707
  var _DYN_PARENT_DATA_TAG = "parentDataTag";
2679
2708
  var _DYN__PAGE_TAGS = "_pageTags";
2680
2709
  var _DYN__PAGE_TAGS_CALLBACK = "_pageTagsCallback";
@@ -2688,20 +2717,6 @@ this.Microsoft = this.Microsoft || {};
2688
2717
  var DEFAULT_DONOT_TRACK_TAG = "ai-dnt";
2689
2718
  var DEFAULT_AI_BLOB_ATTRIBUTE_TAG = "ai-blob";
2690
2719
  var DEFAULT_DATA_PREFIX = "data-";
2691
- function removeNonObjectsAndInvalidElements(overrideConfig, attributeNamesExpectedObjects) {
2692
- removeInvalidElements(overrideConfig);
2693
- for (var i in attributeNamesExpectedObjects) {
2694
- if (objHasOwn(attributeNamesExpectedObjects, i)) {
2695
- var objectName = attributeNamesExpectedObjects[i];
2696
- if (typeof overrideConfig[objectName] === "object") {
2697
- removeInvalidElements(overrideConfig[objectName]);
2698
- }
2699
- else {
2700
- delete overrideConfig[objectName];
2701
- }
2702
- }
2703
- }
2704
- }
2705
2720
  function removeInvalidElements(object) {
2706
2721
  for (var property in object) {
2707
2722
  if (!isValueAssigned(object[property]) ||
@@ -2810,49 +2825,6 @@ this.Microsoft = this.Microsoft || {};
2810
2825
  function bracketIt(str) {
2811
2826
  return "[" + str + "]";
2812
2827
  }
2813
- function validateContentNamePrefix(config, defaultDataPrefix) {
2814
- return isValueAssigned(config.dataTags[_DYN_CUSTOM_DATA_PREFIX ]) && (config[_DYN_DATA_TAGS ][_DYN_CUSTOM_DATA_PREFIX ][_DYN_INDEX_OF ](defaultDataPrefix) === 0);
2815
- }
2816
- function mergeConfig(overrideConfig) {
2817
- var _a, _b, _c;
2818
- var defaultConfig = (_a = {
2819
- autoCapture: true,
2820
- callback: (_b = {},
2821
- _b[_DYN_PAGE_ACTION_PAGE_TAG0 ] = null,
2822
- _b),
2823
- pageTags: {},
2824
- coreData: {
2825
- referrerUri: hasDocument ? document.referrer : "",
2826
- requestUri: "",
2827
- pageName: "",
2828
- pageType: ""
2829
- },
2830
- dataTags: (_c = {},
2831
- _c[_DYN_USE_DEFAULT_CONTENT_1 ] = false,
2832
- _c[_DYN_AI_BLOB_ATTRIBUTE_TA2 ] = DEFAULT_AI_BLOB_ATTRIBUTE_TAG,
2833
- _c[_DYN_CUSTOM_DATA_PREFIX ] = DEFAULT_DATA_PREFIX,
2834
- _c[_DYN_CAPTURE_ALL_META_DAT3 ] = false,
2835
- _c.dntDataTag = DEFAULT_DONOT_TRACK_TAG,
2836
- _c)
2837
- },
2838
- _a[_DYN_BEHAVIOR_VALIDATOR ] = function (key) { return key || ""; },
2839
- _a.defaultRightClickBhvr = "",
2840
- _a.dropInvalidEvents = false,
2841
- _a);
2842
- var attributesThatAreObjectsInConfig = [];
2843
- for (var attribute in defaultConfig) {
2844
- if (typeof defaultConfig[attribute] === "object") {
2845
- attributesThatAreObjectsInConfig.push(attribute);
2846
- }
2847
- }
2848
- if (overrideConfig) {
2849
- removeNonObjectsAndInvalidElements(overrideConfig, attributesThatAreObjectsInConfig);
2850
- if (isValueAssigned(overrideConfig[_DYN_DATA_TAGS ])) {
2851
- overrideConfig.dataTags[_DYN_CUSTOM_DATA_PREFIX ] = validateContentNamePrefix(overrideConfig, DEFAULT_DATA_PREFIX) ? overrideConfig[_DYN_DATA_TAGS ][_DYN_CUSTOM_DATA_PREFIX ] : DEFAULT_DATA_PREFIX;
2852
- }
2853
- return objExtend(true, defaultConfig, overrideConfig);
2854
- }
2855
- }
2856
2828
  function BehaviorMapValidator(map) {
2857
2829
  return function (key) { return map[key] || ""; };
2858
2830
  }
@@ -2972,7 +2944,7 @@ this.Microsoft = this.Microsoft || {};
2972
2944
  event.uri = getUri(_self[_DYN__CONFIG ], getLocation());
2973
2945
  }
2974
2946
  };
2975
- _self[_DYN_SET_COMMON_PROPERTIE4 ] = function (event, overrideValues) {
2947
+ _self[_DYN_SET_COMMON_PROPERTIE3 ] = function (event, overrideValues) {
2976
2948
  _self[_DYN_SET_BASIC_PROPERTIES ](event, overrideValues);
2977
2949
  _self._setPageTags(event, overrideValues);
2978
2950
  _self._pageTypeMetaTag = _getMetaData(_self._metaTags, _self._config[_DYN_CORE_DATA ], "pageType");
@@ -3015,7 +2987,7 @@ this.Microsoft = this.Microsoft || {};
3015
2987
  _self[_DYN__GET_VALID_BEHAVIOR ] = function (behavior) {
3016
2988
  return _self._config[_DYN_BEHAVIOR_VALIDATOR ](behavior);
3017
2989
  };
3018
- _self._doUnload = function (unloadCtx, unloadState, asyncCallback) {
2990
+ _self[_DYN__DO_UNLOAD ] = function (unloadCtx, unloadState, asyncCallback) {
3019
2991
  _initDefaults();
3020
2992
  };
3021
2993
  function _getMetaData(metaTags, coreData, metaTagName) {
@@ -3075,7 +3047,7 @@ this.Microsoft = this.Microsoft || {};
3075
3047
  overrideValues = !isValueAssigned(overrideValues) ? {} : overrideValues;
3076
3048
  var pageActionEvent = { name: "" };
3077
3049
  var pageActionProperties = isValueAssigned(customProperties) ? customProperties : {};
3078
- _self[_DYN_SET_COMMON_PROPERTIE4 ](pageActionEvent, overrideValues);
3050
+ _self[_DYN_SET_COMMON_PROPERTIE3 ](pageActionEvent, overrideValues);
3079
3051
  pageActionEvent[_DYN_BEHAVIOR ] = _self._getBehavior(overrideValues);
3080
3052
  var elementContent = {};
3081
3053
  if (isRightClick) {
@@ -3092,7 +3064,7 @@ this.Microsoft = this.Microsoft || {};
3092
3064
  _throwInternal(_self[_DYN__TRACE_LOGGER ], 2 , 102 , "Missing attributes id or contentName in click event. Click event information will still be collected!");
3093
3065
  }
3094
3066
  }
3095
- pageActionEvent[_DYN_NAME ] = elementContent.id || elementContent[_DYN_CONTENT_NAME ] || strNotSpecified;
3067
+ pageActionEvent.name = elementContent.id || elementContent[_DYN_CONTENT_NAME ] || strNotSpecified;
3096
3068
  pageActionEvent[_DYN_PARENT_ID ] = elementContent.parentid || elementContent.parentName || strNotSpecified;
3097
3069
  if (isValueAssigned(overrideValues[_DYN_ACTION_TYPE ])) {
3098
3070
  pageActionEvent[_DYN_ACTION_TYPE ] = overrideValues[_DYN_ACTION_TYPE ];
@@ -3129,8 +3101,8 @@ this.Microsoft = this.Microsoft || {};
3129
3101
  delete pageActionContent.id;
3130
3102
  delete pageActionContent.parentid;
3131
3103
  delete pageActionContent.parentname;
3132
- if (_self._config && _self._config[_DYN_DATA_TAGS ] && isValueAssigned(_self[_DYN__CONFIG ][_DYN_DATA_TAGS ][_DYN_PARENT_DATA_TAG ])) {
3133
- delete pageActionContent[_self._config[_DYN_DATA_TAGS ].parentDataTag];
3104
+ if (_self[_DYN__CONFIG ] && _self[_DYN__CONFIG ][_DYN_DATA_TAGS ] && isValueAssigned(_self[_DYN__CONFIG ][_DYN_DATA_TAGS ][_DYN_PARENT_DATA_TAG ])) {
3105
+ delete pageActionContent[_self[_DYN__CONFIG ][_DYN_DATA_TAGS ].parentDataTag];
3134
3106
  }
3135
3107
  }
3136
3108
  }
@@ -3185,7 +3157,7 @@ this.Microsoft = this.Microsoft || {};
3185
3157
  eventOn(doc, "keyup", _processClick, _evtNamespace);
3186
3158
  }
3187
3159
  };
3188
- _self._doUnload = function (unloadCtx, unloadState, asyncCallback) {
3160
+ _self[_DYN__DO_UNLOAD ] = function (unloadCtx, unloadState, asyncCallback) {
3189
3161
  eventOff(getWindow(), null, null, _evtNamespace);
3190
3162
  eventOff(getDocument(), null, null, _evtNamespace);
3191
3163
  };
@@ -3259,11 +3231,11 @@ this.Microsoft = this.Microsoft || {};
3259
3231
  this._traceLogger = _traceLogger;
3260
3232
  dynamicProto(DomContentHandler, this, function (_self) {
3261
3233
  _self.getMetadata = function () {
3262
- var dataTags = (_self._config || {})[_DYN_DATA_TAGS ];
3234
+ var dataTags = (_self[_DYN__CONFIG ] || {})[_DYN_DATA_TAGS ];
3263
3235
  var metaTags = {};
3264
3236
  if (hasDocument) {
3265
- metaTags = isValueAssigned(dataTags.metaDataPrefix) ? _getMetaDataFromDOM(dataTags[_DYN_CAPTURE_ALL_META_DAT3 ], dataTags.metaDataPrefix, false) :
3266
- _getMetaDataFromDOM(dataTags[_DYN_CAPTURE_ALL_META_DAT3 ], "", false);
3237
+ metaTags = isValueAssigned(dataTags.metaDataPrefix) ? _getMetaDataFromDOM(dataTags[_DYN_CAPTURE_ALL_META_DAT2 ], dataTags.metaDataPrefix, false) :
3238
+ _getMetaDataFromDOM(dataTags[_DYN_CAPTURE_ALL_META_DAT2 ], "", false);
3267
3239
  }
3268
3240
  return metaTags;
3269
3241
  };
@@ -3271,12 +3243,12 @@ this.Microsoft = this.Microsoft || {};
3271
3243
  if (!element) {
3272
3244
  return {};
3273
3245
  }
3274
- var dataTags = (_self._config || {})[_DYN_DATA_TAGS ];
3246
+ var dataTags = (_self[_DYN__CONFIG ] || {})[_DYN_DATA_TAGS ];
3275
3247
  var elementContent = {};
3276
3248
  var biBlobValue;
3277
3249
  var parentDataTagPrefix;
3278
3250
  var dataTagPrefix = dataTags[_DYN_CUSTOM_DATA_PREFIX ];
3279
- var aiBlobAttributeTag = dataTagPrefix + dataTags[_DYN_AI_BLOB_ATTRIBUTE_TA2 ];
3251
+ var aiBlobAttributeTag = dataTagPrefix + dataTags.aiBlobAttributeTag;
3280
3252
  if (isValueAssigned(dataTags[_DYN_PARENT_DATA_TAG ])) {
3281
3253
  parentDataTagPrefix = dataTagPrefix + dataTags[_DYN_PARENT_DATA_TAG ];
3282
3254
  }
@@ -3365,7 +3337,7 @@ this.Microsoft = this.Microsoft || {};
3365
3337
  return elementContent;
3366
3338
  }
3367
3339
  function _populateElementContentwithDataTag(element, dataTagPrefix, parentDataTagPrefix, aiBlobAttributeTag) {
3368
- var dataTags = (_self._config || {})[_DYN_DATA_TAGS ];
3340
+ var dataTags = (_self[_DYN__CONFIG ] || {})[_DYN_DATA_TAGS ];
3369
3341
  var elementContent = {};
3370
3342
  if (!element) {
3371
3343
  return elementContent;
@@ -3440,7 +3412,8 @@ this.Microsoft = this.Microsoft || {};
3440
3412
  return dataTagFound;
3441
3413
  }
3442
3414
  function _getHtmlIdAndContentName(element) {
3443
- var dataTags = (_self._config || {})[_DYN_DATA_TAGS ];
3415
+ var _a;
3416
+ var dataTags = (_self[_DYN__CONFIG ] || {})[_DYN_DATA_TAGS ];
3444
3417
  var callback = (_self[_DYN__CONFIG ] || {}).callback;
3445
3418
  var htmlContent = {};
3446
3419
  if (!element) {
@@ -3449,10 +3422,11 @@ this.Microsoft = this.Microsoft || {};
3449
3422
  if (dataTags[_DYN_USE_DEFAULT_CONTENT_1 ]) {
3450
3423
  var customizedContentName = callback.contentName ? callback.contentName(element, dataTags[_DYN_USE_DEFAULT_CONTENT_1 ]) : "";
3451
3424
  var defaultContentName = _getDefaultContentName(element, dataTags[_DYN_USE_DEFAULT_CONTENT_1 ]);
3452
- htmlContent = {
3453
- id: element.id,
3454
- contentName: customizedContentName || defaultContentName || element[_DYN_GET_ATTRIBUTE ]("alt")
3455
- };
3425
+ htmlContent = (_a = {
3426
+ id: element.id
3427
+ },
3428
+ _a[_DYN_CONTENT_NAME ] = customizedContentName || defaultContentName || element[_DYN_GET_ATTRIBUTE ]("alt"),
3429
+ _a);
3456
3430
  }
3457
3431
  return htmlContent;
3458
3432
  }
@@ -3502,6 +3476,51 @@ this.Microsoft = this.Microsoft || {};
3502
3476
  return DomContentHandler;
3503
3477
  }());
3504
3478
 
3479
+ var _a, _b, _c;
3480
+ var dataTagsDefault = (_a = {},
3481
+ _a[_DYN_USE_DEFAULT_CONTENT_1 ] = false,
3482
+ _a.aiBlobAttributeTag = DEFAULT_AI_BLOB_ATTRIBUTE_TAG,
3483
+ _a.customDataPrefix = DEFAULT_DATA_PREFIX,
3484
+ _a[_DYN_CAPTURE_ALL_META_DAT2 ] = false,
3485
+ _a.dntDataTag = DEFAULT_DONOT_TRACK_TAG,
3486
+ _a.metaDataPrefix = "",
3487
+ _a.parentDataTag = "",
3488
+ _a);
3489
+ var coreDataDefault = {
3490
+ eferrerUri: hasDocument ? document.referrer : "",
3491
+ requestUri: "",
3492
+ pageName: "",
3493
+ pageType: ""
3494
+ };
3495
+ var defaultValues = objDeepFreeze((_b = {
3496
+ autoCapture: true,
3497
+ callback: (_c = {},
3498
+ _c[_DYN_PAGE_ACTION_PAGE_TAG0 ] = null,
3499
+ _c[_DYN_PAGE_NAME ] = null,
3500
+ _c[_DYN_CONTENT_NAME ] = null,
3501
+ _c),
3502
+ pageTags: {},
3503
+ coreData: { set: _setProp, v: coreDataDefault },
3504
+ dataTags: { set: _setProp, v: dataTagsDefault }
3505
+ },
3506
+ _b[_DYN_BEHAVIOR_VALIDATOR ] = function (key) { return key || ""; },
3507
+ _b.defaultRightClickBhvr = "",
3508
+ _b.dropInvalidEvents = false,
3509
+ _b.urlCollectHash = false,
3510
+ _b.urlCollectQuery = false,
3511
+ _b));
3512
+ function _setProp(val, def) {
3513
+ if (def && isObject(def)) {
3514
+ objForEachKey(def, function (key, obj) {
3515
+ val[key] = val[key] || obj;
3516
+ if (key === "customDataPrefix") {
3517
+ var prefix = val[key];
3518
+ val[key] = prefix && prefix[_DYN_INDEX_OF ](DEFAULT_DATA_PREFIX) === 0 ? prefix : DEFAULT_DATA_PREFIX;
3519
+ }
3520
+ });
3521
+ }
3522
+ return val;
3523
+ }
3505
3524
  var ClickAnalyticsPlugin = /** @class */ (function (_super) {
3506
3525
  __extendsFn(ClickAnalyticsPlugin, _super);
3507
3526
  function ClickAnalyticsPlugin() {
@@ -3512,6 +3531,7 @@ this.Microsoft = this.Microsoft || {};
3512
3531
  var _pageAction;
3513
3532
  var _autoCaptureHandler;
3514
3533
  var _contentHandler;
3534
+ var _autoCapture;
3515
3535
  dynamicProto(ClickAnalyticsPlugin, _this, function (_self, _base) {
3516
3536
  var _identifier = _self.identifier;
3517
3537
  _initDefaults();
@@ -3519,18 +3539,8 @@ this.Microsoft = this.Microsoft || {};
3519
3539
  if (isNullOrUndefined(core)) {
3520
3540
  throwError("Error initializing");
3521
3541
  }
3522
- config[_DYN_EXTENSION_CONFIG ] = config[_DYN_EXTENSION_CONFIG ] || [];
3523
- config[_DYN_EXTENSION_CONFIG ][_identifier] = config[_DYN_EXTENSION_CONFIG ][_identifier] || {};
3524
- _config = mergeConfig(config[_DYN_EXTENSION_CONFIG ][_identifier]);
3525
3542
  _super.prototype.initialize.call(_this, config, core, extensions, pluginChain);
3526
- var logger = _self.diagLog();
3527
- _contentHandler = _contentHandler ? _contentHandler : new DomContentHandler(_config, logger);
3528
- var metaTags = _contentHandler.getMetadata();
3529
- _pageAction = new PageAction(_this, _config, _contentHandler, _config.callback[_DYN_PAGE_ACTION_PAGE_TAG0 ], metaTags, logger);
3530
- _autoCaptureHandler = _autoCaptureHandler ? _autoCaptureHandler : new AutoCaptureHandler(_self, _config, _pageAction, logger);
3531
- if (_config.autoCapture) {
3532
- _autoCaptureHandler.click();
3533
- }
3543
+ _populateDefaults(config);
3534
3544
  var _propertiesExtension;
3535
3545
  arrForEach(extensions, function (extension) {
3536
3546
  if (extension.identifier === PropertiesPluginIdentifier) {
@@ -3560,16 +3570,44 @@ this.Microsoft = this.Microsoft || {};
3560
3570
  _pageAction
3561
3571
  ], unloadCtx, unloadState);
3562
3572
  };
3573
+ function _populateDefaults(config) {
3574
+ var _this = this;
3575
+ var core = _self.core;
3576
+ _self._addHook(onConfigChange(config, function (details) {
3577
+ var config = details.cfg;
3578
+ var ctx = createProcessTelemetryContext(null, config, core);
3579
+ var _config = ctx.getExtCfg(_identifier, defaultValues);
3580
+ var logger = _self.diagLog();
3581
+ _contentHandler = new DomContentHandler(_config, logger);
3582
+ var metaTags = _contentHandler.getMetadata();
3583
+ _pageAction = new PageAction(_this, _config, _contentHandler, _config.callback[_DYN_PAGE_ACTION_PAGE_TAG0 ], metaTags, logger);
3584
+ if (_autoCaptureHandler) {
3585
+ _autoCaptureHandler[_DYN__DO_UNLOAD ]();
3586
+ }
3587
+ _autoCaptureHandler = new AutoCaptureHandler(_self, _config, _pageAction, logger);
3588
+ var autoCapture = !!_config.autoCapture;
3589
+ if (!_autoCapture && autoCapture) {
3590
+ _autoCaptureHandler.click();
3591
+ }
3592
+ _autoCapture = autoCapture;
3593
+ }));
3594
+ }
3563
3595
  });
3564
3596
  function _initDefaults() {
3565
3597
  _config = null;
3566
3598
  _pageAction = null;
3567
3599
  _autoCaptureHandler = null;
3568
3600
  _contentHandler = null;
3601
+ _autoCapture = false;
3602
+ objDefineProp(self, "config", {
3603
+ configurable: true,
3604
+ enumerable: true,
3605
+ get: function () { return _config; }
3606
+ });
3569
3607
  }
3570
3608
  return _this;
3571
3609
  }
3572
- ClickAnalyticsPlugin.Version = "3.0.0-beta.2212-15";
3610
+ ClickAnalyticsPlugin.Version = "3.0.0-beta.2301-02";
3573
3611
  return ClickAnalyticsPlugin;
3574
3612
  }(BaseTelemetryPlugin));
3575
3613