@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
- * Microsoft.ApplicationInsights, 2.8.5-nightly.2206-04
2
+ * Microsoft.ApplicationInsights, 2.8.5-nightly.2206-06
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  *
5
5
  * Microsoft Application Insights Team
@@ -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
  /**
@@ -1,15 +1,16 @@
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
  /**
6
- * @copyright Microsoft 2020
7
- */
6
+ * @copyright Microsoft 2020
7
+ */
8
8
  import { __extendsFn as __extends } from "@microsoft/applicationinsights-shims";
9
9
  import dynamicProto from "@microsoft/dynamicproto-js";
10
- import { BaseTelemetryPlugin, isNullOrUndefined, arrForEach, dumpObj, getExceptionName, throwError, _throwInternal, unloadComponents } from "@microsoft/applicationinsights-core-js";
11
10
  import { PropertiesPluginIdentifier } from "@microsoft/applicationinsights-common";
12
- import { mergeConfig, BehaviorMapValidator, BehaviorValueValidator, BehaviorEnumValidator } from "./common/Utils";
11
+ import { BaseTelemetryPlugin, _throwInternal, arrForEach, dumpObj, getExceptionName, isNullOrUndefined, throwError, unloadComponents } from "@microsoft/applicationinsights-core-js";
12
+ import { _DYN_EXTENSION_CONFIG, _DYN_PAGE_ACTION_PAGE_TAG0, _DYN_TRACK_PAGE_ACTION } from "./__DynamicConstants";
13
+ import { BehaviorEnumValidator, BehaviorMapValidator, BehaviorValueValidator, mergeConfig } from "./common/Utils";
13
14
  import { PageAction } from "./events/PageAction";
14
15
  import { AutoCaptureHandler } from "./handlers/AutoCaptureHandler";
15
16
  import { DomContentHandler } from "./handlers/DomContentHandler";
@@ -31,15 +32,15 @@ var ClickAnalyticsPlugin = /** @class */ (function (_super) {
31
32
  if (isNullOrUndefined(core)) {
32
33
  throwError("Error initializing");
33
34
  }
34
- config.extensionConfig = config.extensionConfig || [];
35
- config.extensionConfig[_identifier] = config.extensionConfig[_identifier] || {};
36
- _config = mergeConfig(config.extensionConfig[_identifier]);
35
+ config[_DYN_EXTENSION_CONFIG /* @min:%2eextensionConfig */] = config[_DYN_EXTENSION_CONFIG /* @min:%2eextensionConfig */] || [];
36
+ config[_DYN_EXTENSION_CONFIG /* @min:%2eextensionConfig */][_identifier] = config[_DYN_EXTENSION_CONFIG /* @min:%2eextensionConfig */][_identifier] || {};
37
+ _config = mergeConfig(config[_DYN_EXTENSION_CONFIG /* @min:%2eextensionConfig */][_identifier]);
37
38
  _super.prototype.initialize.call(_this, config, core, extensions, pluginChain);
38
39
  var logger = _self.diagLog();
39
40
  // Default to DOM content handler
40
41
  _contentHandler = _contentHandler ? _contentHandler : new DomContentHandler(_config, logger);
41
42
  var metaTags = _contentHandler.getMetadata();
42
- _pageAction = new PageAction(_this, _config, _contentHandler, _config.callback.pageActionPageTags, metaTags, logger);
43
+ _pageAction = new PageAction(_this, _config, _contentHandler, _config.callback[_DYN_PAGE_ACTION_PAGE_TAG0 /* @min:%2epageActionPageTags */], metaTags, logger);
43
44
  // Default to DOM autoCapture handler
44
45
  _autoCaptureHandler = _autoCaptureHandler ? _autoCaptureHandler : new AutoCaptureHandler(_self, _config, _pageAction, logger);
45
46
  if (_config.autoCapture) {
@@ -61,9 +62,9 @@ var ClickAnalyticsPlugin = /** @class */ (function (_super) {
61
62
  _self.processTelemetry = function (env, itemCtx) {
62
63
  _self.processNext(env, itemCtx);
63
64
  };
64
- _self.trackPageAction = function (pageAction, customProperties) {
65
+ _self[_DYN_TRACK_PAGE_ACTION /* @min:%2etrackPageAction */] = function (pageAction, customProperties) {
65
66
  try {
66
- _pageAction.trackPageAction(pageAction, customProperties);
67
+ _pageAction[_DYN_TRACK_PAGE_ACTION /* @min:%2etrackPageAction */](pageAction, customProperties);
67
68
  }
68
69
  catch (e) {
69
70
  _throwInternal(_self.diagLog(), 1 /* eLoggingSeverity.CRITICAL */, 103 /* _eInternalMessageId.TrackPageActionEventFailed */, "trackPageAction failed, page action event will not be collected: " + getExceptionName(e), { exception: dumpObj(e) });
@@ -91,7 +92,7 @@ var ClickAnalyticsPlugin = /** @class */ (function (_super) {
91
92
  // Removed Stub for ClickAnalyticsPlugin.prototype.initialize.
92
93
  // Removed Stub for ClickAnalyticsPlugin.prototype.processTelemetry.
93
94
  // Removed Stub for ClickAnalyticsPlugin.prototype.trackPageAction.
94
- ClickAnalyticsPlugin.Version = "2.8.5-nightly.2206-04";
95
+ ClickAnalyticsPlugin.Version = "2.8.5-nightly.2206-06";
95
96
  return ClickAnalyticsPlugin;
96
97
  }(BaseTelemetryPlugin));
97
98
  export { ClickAnalyticsPlugin };
@@ -1 +1 @@
1
- {"version":3,"file":"ClickAnalyticsPlugin.js.map","sources":["ClickAnalyticsPlugin.js"],"sourcesContent":["/**\r\n * @copyright Microsoft 2020\r\n */\r\nimport { __extends } from \"tslib\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { BaseTelemetryPlugin, isNullOrUndefined, arrForEach, dumpObj, getExceptionName, throwError, _throwInternal, unloadComponents } from \"@microsoft/applicationinsights-core-js\";\r\nimport { PropertiesPluginIdentifier } from \"@microsoft/applicationinsights-common\";\r\nimport { mergeConfig, BehaviorMapValidator, BehaviorValueValidator, BehaviorEnumValidator } from \"./common/Utils\";\r\nimport { PageAction } from \"./events/PageAction\";\r\nimport { AutoCaptureHandler } from \"./handlers/AutoCaptureHandler\";\r\nimport { DomContentHandler } from \"./handlers/DomContentHandler\";\r\nexport { BehaviorMapValidator, BehaviorValueValidator, BehaviorEnumValidator };\r\nvar ClickAnalyticsPlugin = /** @class */ (function (_super) {\r\n __extends(ClickAnalyticsPlugin, _super);\r\n function ClickAnalyticsPlugin() {\r\n var _this = _super.call(this) || this;\r\n _this.identifier = \"ClickAnalyticsPlugin\";\r\n _this.priority = 181;\r\n var _config;\r\n var _pageAction;\r\n var _autoCaptureHandler;\r\n var _contentHandler;\r\n dynamicProto(ClickAnalyticsPlugin, _this, function (_self, _base) {\r\n var _identifier = _self.identifier;\r\n _initDefaults();\r\n _self.initialize = function (config, core, extensions, pluginChain) {\r\n if (isNullOrUndefined(core)) {\r\n throwError(\"Error initializing\");\r\n }\r\n config.extensionConfig = config.extensionConfig || [];\r\n config.extensionConfig[_identifier] = config.extensionConfig[_identifier] || {};\r\n _config = mergeConfig(config.extensionConfig[_identifier]);\r\n _super.prototype.initialize.call(_this, config, core, extensions, pluginChain);\r\n var logger = _self.diagLog();\r\n // Default to DOM content handler\r\n _contentHandler = _contentHandler ? _contentHandler : new DomContentHandler(_config, logger);\r\n var metaTags = _contentHandler.getMetadata();\r\n _pageAction = new PageAction(_this, _config, _contentHandler, _config.callback.pageActionPageTags, metaTags, logger);\r\n // Default to DOM autoCapture handler\r\n _autoCaptureHandler = _autoCaptureHandler ? _autoCaptureHandler : new AutoCaptureHandler(_self, _config, _pageAction, logger);\r\n if (_config.autoCapture) {\r\n _autoCaptureHandler.click();\r\n }\r\n // Find the properties plugin.\r\n var _propertiesExtension;\r\n arrForEach(extensions, function (extension) {\r\n if (extension.identifier === PropertiesPluginIdentifier) {\r\n _propertiesExtension = extension;\r\n }\r\n });\r\n // Append Click Analytics Plugin Version to SDK version.\r\n if (_propertiesExtension && _propertiesExtension.context &&\r\n _propertiesExtension.context.internal && _propertiesExtension.context.internal.sdkVersion) {\r\n _propertiesExtension.context.internal.sdkVersion += \"_ClickPlugin\" + ClickAnalyticsPlugin.Version;\r\n }\r\n };\r\n _self.processTelemetry = function (env, itemCtx) {\r\n _self.processNext(env, itemCtx);\r\n };\r\n _self.trackPageAction = function (pageAction, customProperties) {\r\n try {\r\n _pageAction.trackPageAction(pageAction, customProperties);\r\n }\r\n catch (e) {\r\n _throwInternal(_self.diagLog(), 1 /* eLoggingSeverity.CRITICAL */, 103 /* _eInternalMessageId.TrackPageActionEventFailed */, \"trackPageAction failed, page action event will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n _self._doTeardown = function (unloadCtx, unloadState, asyncCallback) {\r\n return unloadComponents([\r\n _autoCaptureHandler,\r\n _contentHandler,\r\n _pageAction\r\n ], unloadCtx, unloadState, function () {\r\n _initDefaults();\r\n asyncCallback && asyncCallback();\r\n });\r\n };\r\n });\r\n function _initDefaults() {\r\n _config = null;\r\n _pageAction = null;\r\n _autoCaptureHandler = null;\r\n _contentHandler = null;\r\n }\r\n return _this;\r\n }\r\n ClickAnalyticsPlugin.prototype.initialize = function (config, core, extensions, pluginChain) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n ClickAnalyticsPlugin.prototype.processTelemetry = function (env, itemCtx) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Logs a page action event.\r\n * @param IPageActionTelemetry\r\n * @param customProperties Additional data used to filter events and metrics. Defaults to empty.\r\n */\r\n ClickAnalyticsPlugin.prototype.trackPageAction = function (pageAction, customProperties) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n ClickAnalyticsPlugin.Version = \"2.8.5-nightly.2206-04\";\r\n return ClickAnalyticsPlugin;\r\n}(BaseTelemetryPlugin));\r\nexport { ClickAnalyticsPlugin };\r\n//# sourceMappingURL=ClickAnalyticsPlugin.js.map"],"names":[],"mappings":";;;;AAAA;AACA;AACA;AACA,gFAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;mEAaM;AACN;AACA;AACA;AACA;AACA"}
1
+ {"version":3,"file":"ClickAnalyticsPlugin.js.map","sources":["ClickAnalyticsPlugin.js"],"sourcesContent":["/**\r\n* @copyright Microsoft 2020\r\n*/\r\nimport { __extends } from \"tslib\";\r\nimport dynamicProto from \"@microsoft/dynamicproto-js\";\r\nimport { PropertiesPluginIdentifier } from \"@microsoft/applicationinsights-common\";\r\nimport { BaseTelemetryPlugin, _throwInternal, arrForEach, dumpObj, getExceptionName, isNullOrUndefined, throwError, unloadComponents } from \"@microsoft/applicationinsights-core-js\";\r\nimport { _DYN_EXTENSION_CONFIG, _DYN_PAGE_ACTION_PAGE_TAG0, _DYN_TRACK_PAGE_ACTION } from \"./__DynamicConstants\";\r\nimport { BehaviorEnumValidator, BehaviorMapValidator, BehaviorValueValidator, mergeConfig } from \"./common/Utils\";\r\nimport { PageAction } from \"./events/PageAction\";\r\nimport { AutoCaptureHandler } from \"./handlers/AutoCaptureHandler\";\r\nimport { DomContentHandler } from \"./handlers/DomContentHandler\";\r\nexport { BehaviorMapValidator, BehaviorValueValidator, BehaviorEnumValidator };\r\nvar ClickAnalyticsPlugin = /** @class */ (function (_super) {\r\n __extends(ClickAnalyticsPlugin, _super);\r\n function ClickAnalyticsPlugin() {\r\n var _this = _super.call(this) || this;\r\n _this.identifier = \"ClickAnalyticsPlugin\";\r\n _this.priority = 181;\r\n var _config;\r\n var _pageAction;\r\n var _autoCaptureHandler;\r\n var _contentHandler;\r\n dynamicProto(ClickAnalyticsPlugin, _this, function (_self, _base) {\r\n var _identifier = _self.identifier;\r\n _initDefaults();\r\n _self.initialize = function (config, core, extensions, pluginChain) {\r\n if (isNullOrUndefined(core)) {\r\n throwError(\"Error initializing\");\r\n }\r\n config[_DYN_EXTENSION_CONFIG /* @min:%2eextensionConfig */] = config[_DYN_EXTENSION_CONFIG /* @min:%2eextensionConfig */] || [];\r\n config[_DYN_EXTENSION_CONFIG /* @min:%2eextensionConfig */][_identifier] = config[_DYN_EXTENSION_CONFIG /* @min:%2eextensionConfig */][_identifier] || {};\r\n _config = mergeConfig(config[_DYN_EXTENSION_CONFIG /* @min:%2eextensionConfig */][_identifier]);\r\n _super.prototype.initialize.call(_this, config, core, extensions, pluginChain);\r\n var logger = _self.diagLog();\r\n // Default to DOM content handler\r\n _contentHandler = _contentHandler ? _contentHandler : new DomContentHandler(_config, logger);\r\n var metaTags = _contentHandler.getMetadata();\r\n _pageAction = new PageAction(_this, _config, _contentHandler, _config.callback[_DYN_PAGE_ACTION_PAGE_TAG0 /* @min:%2epageActionPageTags */], metaTags, logger);\r\n // Default to DOM autoCapture handler\r\n _autoCaptureHandler = _autoCaptureHandler ? _autoCaptureHandler : new AutoCaptureHandler(_self, _config, _pageAction, logger);\r\n if (_config.autoCapture) {\r\n _autoCaptureHandler.click();\r\n }\r\n // Find the properties plugin.\r\n var _propertiesExtension;\r\n arrForEach(extensions, function (extension) {\r\n if (extension.identifier === PropertiesPluginIdentifier) {\r\n _propertiesExtension = extension;\r\n }\r\n });\r\n // Append Click Analytics Plugin Version to SDK version.\r\n if (_propertiesExtension && _propertiesExtension.context &&\r\n _propertiesExtension.context.internal && _propertiesExtension.context.internal.sdkVersion) {\r\n _propertiesExtension.context.internal.sdkVersion += \"_ClickPlugin\" + ClickAnalyticsPlugin.Version;\r\n }\r\n };\r\n _self.processTelemetry = function (env, itemCtx) {\r\n _self.processNext(env, itemCtx);\r\n };\r\n _self[_DYN_TRACK_PAGE_ACTION /* @min:%2etrackPageAction */] = function (pageAction, customProperties) {\r\n try {\r\n _pageAction[_DYN_TRACK_PAGE_ACTION /* @min:%2etrackPageAction */](pageAction, customProperties);\r\n }\r\n catch (e) {\r\n _throwInternal(_self.diagLog(), 1 /* eLoggingSeverity.CRITICAL */, 103 /* _eInternalMessageId.TrackPageActionEventFailed */, \"trackPageAction failed, page action event will not be collected: \" + getExceptionName(e), { exception: dumpObj(e) });\r\n }\r\n };\r\n _self._doTeardown = function (unloadCtx, unloadState, asyncCallback) {\r\n return unloadComponents([\r\n _autoCaptureHandler,\r\n _contentHandler,\r\n _pageAction\r\n ], unloadCtx, unloadState, function () {\r\n _initDefaults();\r\n asyncCallback && asyncCallback();\r\n });\r\n };\r\n });\r\n function _initDefaults() {\r\n _config = null;\r\n _pageAction = null;\r\n _autoCaptureHandler = null;\r\n _contentHandler = null;\r\n }\r\n return _this;\r\n }\r\n ClickAnalyticsPlugin.prototype.initialize = function (config, core, extensions, pluginChain) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n ClickAnalyticsPlugin.prototype.processTelemetry = function (env, itemCtx) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n /**\r\n * Logs a page action event.\r\n * @param IPageActionTelemetry\r\n * @param customProperties Additional data used to filter events and metrics. Defaults to empty.\r\n */\r\n ClickAnalyticsPlugin.prototype.trackPageAction = function (pageAction, customProperties) {\r\n // @DynamicProtoStub -- DO NOT add any code as this will be removed during packaging\r\n };\r\n ClickAnalyticsPlugin.Version = \"2.8.5-nightly.2206-06\";\r\n return ClickAnalyticsPlugin;\r\n}(BaseTelemetryPlugin));\r\nexport { ClickAnalyticsPlugin };\r\n//# sourceMappingURL=ClickAnalyticsPlugin.js.map"],"names":[],"mappings":";;;;AAAA;AACA;AACA;AACA,gFAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;mEAaM;AACN;AACA;AACA;AACA;AACA"}
@@ -1,11 +1,12 @@
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
  /**
6
- * @copyright Microsoft 2020
7
- */
8
- import { getLocation, getDocument, getWindow, hasDocument, isFunction } from "@microsoft/applicationinsights-core-js";
6
+ * @copyright Microsoft 2020
7
+ */
8
+ import { getDocument, getLocation, getWindow, hasDocument, isFunction } from "@microsoft/applicationinsights-core-js";
9
+ import { _DYN_ADD_EVENT_LISTENER, _DYN_CORE_DATA, _DYN_LENGTH, _DYN_PAGE_NAME, _DYN_PATHNAME, _DYN_REQUEST_URI, _DYN_TAG_NAME, _DYN_TO_UPPER_CASE } from "./__DynamicConstants";
9
10
  import { findClosestAnchor, isValueAssigned } from "./common/Utils";
10
11
  var clickCaptureInputTypes = { BUTTON: true, CHECKBOX: true, RADIO: true, RESET: true, SUBMIT: true };
11
12
  /**
@@ -17,7 +18,7 @@ export function getImageHref(element) {
17
18
  var temp = element;
18
19
  if (temp) {
19
20
  var parent = findClosestAnchor(temp);
20
- if (parent.length === 1) {
21
+ if (parent[_DYN_LENGTH /* @min:%2elength */] === 1) {
21
22
  var firstParent = parent[0];
22
23
  if (firstParent.href) {
23
24
  return firstParent.href;
@@ -35,7 +36,7 @@ export function getImageHref(element) {
35
36
  */
36
37
  export function getClickTarget(element) {
37
38
  var clickTarget = "";
38
- switch (element.tagName) {
39
+ switch (element[_DYN_TAG_NAME /* @min:%2etagName */]) {
39
40
  case "A":
40
41
  case "AREA":
41
42
  clickTarget = element.href || "";
@@ -45,13 +46,13 @@ export function getClickTarget(element) {
45
46
  break;
46
47
  case "INPUT":
47
48
  var type = element.type;
48
- if (type && (clickCaptureInputTypes[type.toUpperCase()])) {
49
+ if (type && (clickCaptureInputTypes[type[_DYN_TO_UPPER_CASE /* @min:%2etoUpperCase */]()])) {
49
50
  var loc = getLocation() || {};
50
51
  if (element.form) {
51
- clickTarget = element.form.action || (loc.pathname || "");
52
+ clickTarget = element.form.action || (loc[_DYN_PATHNAME /* @min:%2epathname */] || "");
52
53
  }
53
54
  else {
54
- clickTarget = loc.pathname || "";
55
+ clickTarget = loc[_DYN_PATHNAME /* @min:%2epathname */] || "";
55
56
  }
56
57
  }
57
58
  break;
@@ -71,8 +72,8 @@ export function onDomLoaded(callback) {
71
72
  else {
72
73
  var win = getWindow();
73
74
  if (win) {
74
- if (win.addEventListener) {
75
- win.addEventListener("load", function () {
75
+ if (win[_DYN_ADD_EVENT_LISTENER /* @min:%2eaddEventListener */]) {
76
+ win[_DYN_ADD_EVENT_LISTENER /* @min:%2eaddEventListener */]("load", function () {
76
77
  callback();
77
78
  }); // NB **not** 'onload'
78
79
  }
@@ -103,14 +104,14 @@ export function getPageName(config, overrideValues) {
103
104
  /// <summary>
104
105
  /// Gets the pageName from the DOM or by calling a override if set.
105
106
  /// </summary>
106
- if (overrideValues && overrideValues.pageName) {
107
- return overrideValues.pageName;
107
+ if (overrideValues && overrideValues[_DYN_PAGE_NAME /* @min:%2epageName */]) {
108
+ return overrideValues[_DYN_PAGE_NAME /* @min:%2epageName */];
108
109
  }
109
- else if (config.callback && isFunction(config.callback.pageName)) {
110
- return config.callback.pageName();
110
+ else if (config.callback && isFunction(config.callback[_DYN_PAGE_NAME /* @min:%2epageName */])) {
111
+ return config.callback[_DYN_PAGE_NAME /* @min:%2epageName */]();
111
112
  }
112
- else if (config.coreData && config.coreData.pageName) {
113
- return config.coreData.pageName;
113
+ else if (config.coreData && config.coreData[_DYN_PAGE_NAME /* @min:%2epageName */]) {
114
+ return config.coreData[_DYN_PAGE_NAME /* @min:%2epageName */];
114
115
  }
115
116
  else {
116
117
  var doc = getDocument();
@@ -129,7 +130,7 @@ export function sanitizeUrl(config, location) {
129
130
  }
130
131
  var url = location.protocol + "//" + (location.hostname || location.host) + // location.hostname is not supported on Opera and Opera for Android
131
132
  (isValueAssigned(location.port) ? ":" + location.port : "") +
132
- location.pathname;
133
+ location[_DYN_PATHNAME /* @min:%2epathname */];
133
134
  return url;
134
135
  }
135
136
  /**
@@ -139,8 +140,8 @@ export function sanitizeUrl(config, location) {
139
140
  * @returns Flag indicating if an element is market PII.
140
141
  */
141
142
  export function getUri(config, location) {
142
- if (config.coreData && config.coreData.requestUri && config.coreData.requestUri !== "") {
143
- return config.coreData.requestUri;
143
+ if (config[_DYN_CORE_DATA /* @min:%2ecoreData */] && config[_DYN_CORE_DATA /* @min:%2ecoreData */][_DYN_REQUEST_URI /* @min:%2erequestUri */] && config[_DYN_CORE_DATA /* @min:%2ecoreData */][_DYN_REQUEST_URI /* @min:%2erequestUri */] !== "") {
144
+ return config[_DYN_CORE_DATA /* @min:%2ecoreData */][_DYN_REQUEST_URI /* @min:%2erequestUri */];
144
145
  }
145
146
  return sanitizeUrl(config, location);
146
147
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DataCollector.js.map","sources":["DataCollector.js"],"sourcesContent":["/**\r\n * @copyright Microsoft 2020\r\n */\r\nimport { getLocation, getDocument, getWindow, hasDocument, isFunction } from \"@microsoft/applicationinsights-core-js\";\r\nimport { findClosestAnchor, isValueAssigned } from \"./common/Utils\";\r\nvar clickCaptureInputTypes = { BUTTON: true, CHECKBOX: true, RADIO: true, RESET: true, SUBMIT: true };\r\n/**\r\n * Get Image href of a given HTMLImageElement\r\n * @param element - An html image element\r\n * @returns Href value.\r\n */\r\nexport function getImageHref(element) {\r\n var temp = element;\r\n if (temp) {\r\n var parent = findClosestAnchor(temp);\r\n if (parent.length === 1) {\r\n var firstParent = parent[0];\r\n if (firstParent.href) {\r\n return firstParent.href;\r\n }\r\n else if (firstParent.src) {\r\n return (firstParent.src);\r\n }\r\n }\r\n }\r\n return \"\";\r\n}\r\n/**\r\n * Get click target\r\n * @returns Click target URI\r\n */\r\nexport function getClickTarget(element) {\r\n var clickTarget = \"\";\r\n switch (element.tagName) {\r\n case \"A\":\r\n case \"AREA\":\r\n clickTarget = element.href || \"\";\r\n break;\r\n case \"IMG\":\r\n clickTarget = getImageHref(element);\r\n break;\r\n case \"INPUT\":\r\n var type = element.type;\r\n if (type && (clickCaptureInputTypes[type.toUpperCase()])) {\r\n var loc = getLocation() || {};\r\n if (element.form) {\r\n clickTarget = element.form.action || (loc.pathname || \"\");\r\n }\r\n else {\r\n clickTarget = loc.pathname || \"\";\r\n }\r\n }\r\n break;\r\n default:\r\n break;\r\n }\r\n return clickTarget;\r\n}\r\n/**\r\n * Execute callback when DOM finish loading\r\n */\r\nexport function onDomLoaded(callback) {\r\n onDomReadyDo(function () {\r\n if (hasDocument && document.readyState === \"complete\") {\r\n callback();\r\n }\r\n else {\r\n var win = getWindow();\r\n if (win) {\r\n if (win.addEventListener) {\r\n win.addEventListener(\"load\", function () {\r\n callback();\r\n }); // NB **not** 'onload'\r\n }\r\n else if (win.attachEvent) {\r\n win.attachEvent(\"onload\", function () {\r\n callback();\r\n }); // IE8\r\n }\r\n }\r\n }\r\n });\r\n}\r\n// use smallest domready ever for IE8. When IE8 is deprecated, use addEventListener('DomContentLoaded')\r\nfunction onDomReadyDo(f) {\r\n /// <summary> fires function f on domRead </summary>\r\n /// <param type='function'>function to call on domRead</param>\r\n var doc = getDocument() || {};\r\n /in/.test(doc.readyState) ? setTimeout(function () {\r\n onDomReadyDo(f);\r\n }, 100) : f.call();\r\n}\r\n/**\r\n * Gets the pageName from the DOM or by calling a override if set.\r\n * @param config - configuration object\r\n * @returns Page name.\r\n */\r\nexport function getPageName(config, overrideValues) {\r\n /// <summary>\r\n /// Gets the pageName from the DOM or by calling a override if set.\r\n /// </summary>\r\n if (overrideValues && overrideValues.pageName) {\r\n return overrideValues.pageName;\r\n }\r\n else if (config.callback && isFunction(config.callback.pageName)) {\r\n return config.callback.pageName();\r\n }\r\n else if (config.coreData && config.coreData.pageName) {\r\n return config.coreData.pageName;\r\n }\r\n else {\r\n var doc = getDocument();\r\n return doc && doc.title || \"\";\r\n }\r\n}\r\n/**\r\n * Sanitize URL values\r\n * @param config - Configuration\r\n * @param location - window.location or document.location\r\n * @returns Flag indicating if an element is market PII.\r\n */\r\nexport function sanitizeUrl(config, location) {\r\n if (!location) {\r\n return null;\r\n }\r\n var url = location.protocol + \"//\" + (location.hostname || location.host) + // location.hostname is not supported on Opera and Opera for Android\r\n (isValueAssigned(location.port) ? \":\" + location.port : \"\") +\r\n location.pathname;\r\n return url;\r\n}\r\n/**\r\n * Get URI, sanitize the value if configured on\r\n * @param config - Configuration\r\n * @param location - window.location or document.location\r\n * @returns Flag indicating if an element is market PII.\r\n */\r\nexport function getUri(config, location) {\r\n if (config.coreData && config.coreData.requestUri && config.coreData.requestUri !== \"\") {\r\n return config.coreData.requestUri;\r\n }\r\n return sanitizeUrl(config, location);\r\n}\r\n//# sourceMappingURL=DataCollector.js.map"],"names":[],"mappings":";;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA"}
1
+ {"version":3,"file":"DataCollector.js.map","sources":["DataCollector.js"],"sourcesContent":["/**\r\n* @copyright Microsoft 2020\r\n*/\r\nimport { getDocument, getLocation, getWindow, hasDocument, isFunction } from \"@microsoft/applicationinsights-core-js\";\r\nimport { _DYN_ADD_EVENT_LISTENER, _DYN_CORE_DATA, _DYN_LENGTH, _DYN_PAGE_NAME, _DYN_PATHNAME, _DYN_REQUEST_URI, _DYN_TAG_NAME, _DYN_TO_UPPER_CASE } from \"./__DynamicConstants\";\r\nimport { findClosestAnchor, isValueAssigned } from \"./common/Utils\";\r\nvar clickCaptureInputTypes = { BUTTON: true, CHECKBOX: true, RADIO: true, RESET: true, SUBMIT: true };\r\n/**\r\n * Get Image href of a given HTMLImageElement\r\n * @param element - An html image element\r\n * @returns Href value.\r\n */\r\nexport function getImageHref(element) {\r\n var temp = element;\r\n if (temp) {\r\n var parent = findClosestAnchor(temp);\r\n if (parent[_DYN_LENGTH /* @min:%2elength */] === 1) {\r\n var firstParent = parent[0];\r\n if (firstParent.href) {\r\n return firstParent.href;\r\n }\r\n else if (firstParent.src) {\r\n return (firstParent.src);\r\n }\r\n }\r\n }\r\n return \"\";\r\n}\r\n/**\r\n * Get click target\r\n * @returns Click target URI\r\n */\r\nexport function getClickTarget(element) {\r\n var clickTarget = \"\";\r\n switch (element[_DYN_TAG_NAME /* @min:%2etagName */]) {\r\n case \"A\":\r\n case \"AREA\":\r\n clickTarget = element.href || \"\";\r\n break;\r\n case \"IMG\":\r\n clickTarget = getImageHref(element);\r\n break;\r\n case \"INPUT\":\r\n var type = element.type;\r\n if (type && (clickCaptureInputTypes[type[_DYN_TO_UPPER_CASE /* @min:%2etoUpperCase */]()])) {\r\n var loc = getLocation() || {};\r\n if (element.form) {\r\n clickTarget = element.form.action || (loc[_DYN_PATHNAME /* @min:%2epathname */] || \"\");\r\n }\r\n else {\r\n clickTarget = loc[_DYN_PATHNAME /* @min:%2epathname */] || \"\";\r\n }\r\n }\r\n break;\r\n default:\r\n break;\r\n }\r\n return clickTarget;\r\n}\r\n/**\r\n * Execute callback when DOM finish loading\r\n */\r\nexport function onDomLoaded(callback) {\r\n onDomReadyDo(function () {\r\n if (hasDocument && document.readyState === \"complete\") {\r\n callback();\r\n }\r\n else {\r\n var win = getWindow();\r\n if (win) {\r\n if (win[_DYN_ADD_EVENT_LISTENER /* @min:%2eaddEventListener */]) {\r\n win[_DYN_ADD_EVENT_LISTENER /* @min:%2eaddEventListener */](\"load\", function () {\r\n callback();\r\n }); // NB **not** 'onload'\r\n }\r\n else if (win.attachEvent) {\r\n win.attachEvent(\"onload\", function () {\r\n callback();\r\n }); // IE8\r\n }\r\n }\r\n }\r\n });\r\n}\r\n// use smallest domready ever for IE8. When IE8 is deprecated, use addEventListener('DomContentLoaded')\r\nfunction onDomReadyDo(f) {\r\n /// <summary> fires function f on domRead </summary>\r\n /// <param type='function'>function to call on domRead</param>\r\n var doc = getDocument() || {};\r\n /in/.test(doc.readyState) ? setTimeout(function () {\r\n onDomReadyDo(f);\r\n }, 100) : f.call();\r\n}\r\n/**\r\n * Gets the pageName from the DOM or by calling a override if set.\r\n * @param config - configuration object\r\n * @returns Page name.\r\n */\r\nexport function getPageName(config, overrideValues) {\r\n /// <summary>\r\n /// Gets the pageName from the DOM or by calling a override if set.\r\n /// </summary>\r\n if (overrideValues && overrideValues[_DYN_PAGE_NAME /* @min:%2epageName */]) {\r\n return overrideValues[_DYN_PAGE_NAME /* @min:%2epageName */];\r\n }\r\n else if (config.callback && isFunction(config.callback[_DYN_PAGE_NAME /* @min:%2epageName */])) {\r\n return config.callback[_DYN_PAGE_NAME /* @min:%2epageName */]();\r\n }\r\n else if (config.coreData && config.coreData[_DYN_PAGE_NAME /* @min:%2epageName */]) {\r\n return config.coreData[_DYN_PAGE_NAME /* @min:%2epageName */];\r\n }\r\n else {\r\n var doc = getDocument();\r\n return doc && doc.title || \"\";\r\n }\r\n}\r\n/**\r\n * Sanitize URL values\r\n * @param config - Configuration\r\n * @param location - window.location or document.location\r\n * @returns Flag indicating if an element is market PII.\r\n */\r\nexport function sanitizeUrl(config, location) {\r\n if (!location) {\r\n return null;\r\n }\r\n var url = location.protocol + \"//\" + (location.hostname || location.host) + // location.hostname is not supported on Opera and Opera for Android\r\n (isValueAssigned(location.port) ? \":\" + location.port : \"\") +\r\n location[_DYN_PATHNAME /* @min:%2epathname */];\r\n return url;\r\n}\r\n/**\r\n * Get URI, sanitize the value if configured on\r\n * @param config - Configuration\r\n * @param location - window.location or document.location\r\n * @returns Flag indicating if an element is market PII.\r\n */\r\nexport function getUri(config, location) {\r\n if (config[_DYN_CORE_DATA /* @min:%2ecoreData */] && config[_DYN_CORE_DATA /* @min:%2ecoreData */][_DYN_REQUEST_URI /* @min:%2erequestUri */] && config[_DYN_CORE_DATA /* @min:%2ecoreData */][_DYN_REQUEST_URI /* @min:%2erequestUri */] !== \"\") {\r\n return config[_DYN_CORE_DATA /* @min:%2ecoreData */][_DYN_REQUEST_URI /* @min:%2erequestUri */];\r\n }\r\n return sanitizeUrl(config, location);\r\n}\r\n//# sourceMappingURL=DataCollector.js.map"],"names":[],"mappings":";;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA"}
package/dist-esm/Enums.js CHANGED
@@ -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
  /**
@@ -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
  /**
@@ -0,0 +1,62 @@
1
+ /*
2
+ * Application Insights JavaScript SDK - Click Analytics, 2.8.5-nightly.2206-06
3
+ * Copyright (c) Microsoft and contributors. All rights reserved.
4
+ */
5
+
6
+
7
+ // @skip-file-minify
8
+ // ##############################################################
9
+ // AUTO GENERATED FILE: This file is Auto Generated during build.
10
+ // ##############################################################
11
+ // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
12
+ // Note: DON'T Export these const from the package as we are still targeting ES3 this will export a mutable variables that someone could change!!!
13
+ // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
14
+ export var _DYN_EXTENSION_CONFIG = "extensionConfig"; // Count: 5
15
+ export var _DYN_PAGE_ACTION_PAGE_TAG0 = "pageActionPageTags"; // Count: 2
16
+ export var _DYN_TRACK_PAGE_ACTION = "trackPageAction"; // Count: 4
17
+ export var _DYN_LENGTH = "length"; // Count: 5
18
+ export var _DYN_TAG_NAME = "tagName"; // Count: 4
19
+ export var _DYN_TO_UPPER_CASE = "toUpperCase"; // Count: 4
20
+ export var _DYN_PATHNAME = "pathname"; // Count: 3
21
+ export var _DYN_ADD_EVENT_LISTENER = "addEventListener"; // Count: 2
22
+ export var _DYN_PAGE_NAME = "pageName"; // Count: 8
23
+ export var _DYN_CORE_DATA = "coreData"; // Count: 4
24
+ export var _DYN_REQUEST_URI = "requestUri"; // Count: 3
25
+ export var _DYN_GET_ATTRIBUTE = "getAttribute"; // Count: 6
26
+ export var _DYN_PARENT_NODE = "parentNode"; // Count: 3
27
+ export var _DYN_CUSTOM_DATA_PREFIX = "customDataPrefix"; // Count: 6
28
+ export var _DYN_INDEX_OF = "indexOf"; // Count: 8
29
+ export var _DYN_DATA_TAGS = "dataTags"; // Count: 7
30
+ export var _DYN_USE_DEFAULT_CONTENT_1 = "useDefaultContentNameOrId"; // Count: 5
31
+ export var _DYN_AI_BLOB_ATTRIBUTE_TA2 = "aiBlobAttributeTag"; // Count: 2
32
+ export var _DYN_CAPTURE_ALL_META_DAT3 = "captureAllMetaDataContent"; // Count: 3
33
+ export var _DYN_BEHAVIOR_VALIDATOR = "behaviorValidator"; // Count: 2
34
+ export var _DYN_NAME = "name"; // Count: 8
35
+ export var _DYN_DATA = "data"; // Count: 15
36
+ export var _DYN_PAGE_TYPE = "pageType"; // Count: 6
37
+ export var _DYN_PROPERTIES = "properties"; // Count: 4
38
+ export var _DYN_ACTION_TYPE = "actionType"; // Count: 9
39
+ export var _DYN_BEHAVIOR = "behavior"; // Count: 7
40
+ export var _DYN_CLICK_COORDINATES = "clickCoordinates"; // Count: 2
41
+ export var _DYN_CONTENT = "content"; // Count: 4
42
+ export var _DYN_REF_URI = "refUri"; // Count: 4
43
+ export var _DYN_PARENT_ID = "parentId"; // Count: 3
44
+ export var _DYN_CAPTURE_PAGE_ACTION = "capturePageAction"; // Count: 2
45
+ export var _DYN_SET_COMMON_PROPERTIE4 = "setCommonProperties"; // Count: 2
46
+ export var _DYN_GET_ELEMENT_CONTENT = "getElementContent"; // Count: 2
47
+ export var _DYN__GET_VALID_BEHAVIOR = "_getValidBehavior"; // Count: 3
48
+ export var _DYN_CONTENT_NAME = "contentName"; // Count: 12
49
+ export var _DYN__TRACE_LOGGER = "_traceLogger"; // Count: 3
50
+ export var _DYN_CLICK_COORDINATE_X = "clickCoordinateX"; // Count: 3
51
+ export var _DYN_CLICK_COORDINATE_Y = "clickCoordinateY"; // Count: 3
52
+ export var _DYN__CONFIG = "_config"; // Count: 9
53
+ export var _DYN_PARENT_DATA_TAG = "parentDataTag"; // Count: 3
54
+ export var _DYN__PAGE_TAGS = "_pageTags"; // Count: 6
55
+ export var _DYN__PAGE_TAGS_CALLBACK = "_pageTagsCallback"; // Count: 3
56
+ export var _DYN__META_TAGS = "_metaTags"; // Count: 6
57
+ export var _DYN_SET_BASIC_PROPERTIES = "setBasicProperties"; // Count: 2
58
+ export var _DYN__PAGE_TYPE_META_TAG = "_pageTypeMetaTag"; // Count: 3
59
+ export var _DYN__BEHAVIOR_META_TAG = "_behaviorMetaTag"; // Count: 3
60
+ export var _DYN_PARENT_ELEMENT = "parentElement"; // Count: 3
61
+ export var _DYN_ATTRIBUTES = "attributes"; // Count: 4
62
+ //# sourceMappingURL=__DynamicConstants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"__DynamicConstants.js.map","sources":["__DynamicConstants.js"],"sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved.\r\n// Licensed under the MIT License.\r\n// @skip-file-minify\r\n// ##############################################################\r\n// AUTO GENERATED FILE: This file is Auto Generated during build.\r\n// ##############################################################\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\n// Note: DON'T Export these const from the package as we are still targeting ES3 this will export a mutable variables that someone could change!!!\r\n// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r\nexport var _DYN_EXTENSION_CONFIG = \"extensionConfig\"; // Count: 5\r\nexport var _DYN_PAGE_ACTION_PAGE_TAG0 = \"pageActionPageTags\"; // Count: 2\r\nexport var _DYN_TRACK_PAGE_ACTION = \"trackPageAction\"; // Count: 4\r\nexport var _DYN_LENGTH = \"length\"; // Count: 5\r\nexport var _DYN_TAG_NAME = \"tagName\"; // Count: 4\r\nexport var _DYN_TO_UPPER_CASE = \"toUpperCase\"; // Count: 4\r\nexport var _DYN_PATHNAME = \"pathname\"; // Count: 3\r\nexport var _DYN_ADD_EVENT_LISTENER = \"addEventListener\"; // Count: 2\r\nexport var _DYN_PAGE_NAME = \"pageName\"; // Count: 8\r\nexport var _DYN_CORE_DATA = \"coreData\"; // Count: 4\r\nexport var _DYN_REQUEST_URI = \"requestUri\"; // Count: 3\r\nexport var _DYN_GET_ATTRIBUTE = \"getAttribute\"; // Count: 6\r\nexport var _DYN_PARENT_NODE = \"parentNode\"; // Count: 3\r\nexport var _DYN_CUSTOM_DATA_PREFIX = \"customDataPrefix\"; // Count: 6\r\nexport var _DYN_INDEX_OF = \"indexOf\"; // Count: 8\r\nexport var _DYN_DATA_TAGS = \"dataTags\"; // Count: 7\r\nexport var _DYN_USE_DEFAULT_CONTENT_1 = \"useDefaultContentNameOrId\"; // Count: 5\r\nexport var _DYN_AI_BLOB_ATTRIBUTE_TA2 = \"aiBlobAttributeTag\"; // Count: 2\r\nexport var _DYN_CAPTURE_ALL_META_DAT3 = \"captureAllMetaDataContent\"; // Count: 3\r\nexport var _DYN_BEHAVIOR_VALIDATOR = \"behaviorValidator\"; // Count: 2\r\nexport var _DYN_NAME = \"name\"; // Count: 8\r\nexport var _DYN_DATA = \"data\"; // Count: 15\r\nexport var _DYN_PAGE_TYPE = \"pageType\"; // Count: 6\r\nexport var _DYN_PROPERTIES = \"properties\"; // Count: 4\r\nexport var _DYN_ACTION_TYPE = \"actionType\"; // Count: 9\r\nexport var _DYN_BEHAVIOR = \"behavior\"; // Count: 7\r\nexport var _DYN_CLICK_COORDINATES = \"clickCoordinates\"; // Count: 2\r\nexport var _DYN_CONTENT = \"content\"; // Count: 4\r\nexport var _DYN_REF_URI = \"refUri\"; // Count: 4\r\nexport var _DYN_PARENT_ID = \"parentId\"; // Count: 3\r\nexport var _DYN_CAPTURE_PAGE_ACTION = \"capturePageAction\"; // Count: 2\r\nexport var _DYN_SET_COMMON_PROPERTIE4 = \"setCommonProperties\"; // Count: 2\r\nexport var _DYN_GET_ELEMENT_CONTENT = \"getElementContent\"; // Count: 2\r\nexport var _DYN__GET_VALID_BEHAVIOR = \"_getValidBehavior\"; // Count: 3\r\nexport var _DYN_CONTENT_NAME = \"contentName\"; // Count: 12\r\nexport var _DYN__TRACE_LOGGER = \"_traceLogger\"; // Count: 3\r\nexport var _DYN_CLICK_COORDINATE_X = \"clickCoordinateX\"; // Count: 3\r\nexport var _DYN_CLICK_COORDINATE_Y = \"clickCoordinateY\"; // Count: 3\r\nexport var _DYN__CONFIG = \"_config\"; // Count: 9\r\nexport var _DYN_PARENT_DATA_TAG = \"parentDataTag\"; // Count: 3\r\nexport var _DYN__PAGE_TAGS = \"_pageTags\"; // Count: 6\r\nexport var _DYN__PAGE_TAGS_CALLBACK = \"_pageTagsCallback\"; // Count: 3\r\nexport var _DYN__META_TAGS = \"_metaTags\"; // Count: 6\r\nexport var _DYN_SET_BASIC_PROPERTIES = \"setBasicProperties\"; // Count: 2\r\nexport var _DYN__PAGE_TYPE_META_TAG = \"_pageTypeMetaTag\"; // Count: 3\r\nexport var _DYN__BEHAVIOR_META_TAG = \"_behaviorMetaTag\"; // Count: 3\r\nexport var _DYN_PARENT_ELEMENT = \"parentElement\"; // Count: 3\r\nexport var _DYN_ATTRIBUTES = \"attributes\"; // Count: 4\r\n//# sourceMappingURL=__DynamicConstants.js.map"],"names":[],"mappings":";;;;AAA4D;AAC1B;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA"}
@@ -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
 
@@ -1,18 +1,22 @@
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
  /**
6
- * @copyright Microsoft 2020
7
- * File containing utility functions.
8
- */
6
+ * @copyright Microsoft 2020
7
+ * File containing utility functions.
8
+ */
9
9
  import { __assignFn as __assign } from "@microsoft/applicationinsights-shims";
10
- import { isNullOrUndefined, _InternalMessageId, hasDocument, hasOwnProperty, arrForEach } from "@microsoft/applicationinsights-core-js";
11
- var Prototype = "prototype";
10
+ import { _InternalMessageId, arrForEach, createEnumStyle, hasDocument, hasOwnProperty, isNullOrUndefined, objExtend } from "@microsoft/applicationinsights-core-js";
11
+ import { _DYN_AI_BLOB_ATTRIBUTE_TA2, _DYN_BEHAVIOR_VALIDATOR, _DYN_CAPTURE_ALL_META_DAT3, _DYN_CUSTOM_DATA_PREFIX, _DYN_DATA_TAGS, _DYN_GET_ATTRIBUTE, _DYN_INDEX_OF, _DYN_PAGE_ACTION_PAGE_TAG0, _DYN_PARENT_NODE, _DYN_USE_DEFAULT_CONTENT_1 } from "../__DynamicConstants";
12
12
  var DEFAULT_DONOT_TRACK_TAG = "ai-dnt";
13
13
  var DEFAULT_AI_BLOB_ATTRIBUTE_TAG = "ai-blob";
14
14
  var DEFAULT_DATA_PREFIX = "data-";
15
- export var _ExtendedInternalMessageId = __assign(__assign({}, _InternalMessageId), { CannotParseAiBlobValue: 101, InvalidContentBlob: 102, TrackPageActionEventFailed: 103 });
15
+ export var _ExtendedInternalMessageId = __assign(__assign({}, _InternalMessageId), createEnumStyle({
16
+ CannotParseAiBlobValue: 101 /* _eExtendedInternalMessageId.CannotParseAiBlobValue */,
17
+ InvalidContentBlob: 102 /* _eExtendedInternalMessageId.InvalidContentBlob */,
18
+ TrackPageActionEventFailed: 103 /* _eExtendedInternalMessageId.TrackPageActionEventFailed */
19
+ }));
16
20
  /**
17
21
  * Finds attributes in overrideConfig which are invalid or should be objects
18
22
  * and deletes them. useful in override config
@@ -22,7 +26,7 @@ export var _ExtendedInternalMessageId = __assign(__assign({}, _InternalMessageId
22
26
  export function removeNonObjectsAndInvalidElements(overrideConfig, attributeNamesExpectedObjects) {
23
27
  removeInvalidElements(overrideConfig);
24
28
  for (var i in attributeNamesExpectedObjects) {
25
- if (attributeNamesExpectedObjects.hasOwnProperty(i)) {
29
+ if (hasOwnProperty(attributeNamesExpectedObjects, i)) {
26
30
  var objectName = attributeNamesExpectedObjects[i];
27
31
  if (typeof overrideConfig[objectName] === "object") {
28
32
  removeInvalidElements(overrideConfig[objectName]);
@@ -174,7 +178,7 @@ export function findClosestByAttribute(el, attribute) {
174
178
  * @returns true if attribute is in element, even if empty string
175
179
  */
176
180
  export function isAttributeInElement(element, attributeToLookFor) {
177
- var value = element.getAttribute(attributeToLookFor);
181
+ var value = element[_DYN_GET_ATTRIBUTE /* @min:%2egetAttribute */](attributeToLookFor);
178
182
  return isValueAssigned(value);
179
183
  }
180
184
  /**
@@ -188,8 +192,8 @@ export function walkUpDomChainWithElementValidation(el, validationMethod, valida
188
192
  var element = el;
189
193
  if (element) {
190
194
  while (!validationMethod(element, validationMethodParam)) {
191
- element = element.parentNode;
192
- if (!element || !(element.getAttribute)) {
195
+ element = element[_DYN_PARENT_NODE /* @min:%2eparentNode */];
196
+ if (!element || !(element[_DYN_GET_ATTRIBUTE /* @min:%2egetAttribute */])) {
193
197
  return null;
194
198
  }
195
199
  }
@@ -240,82 +244,41 @@ export function bracketIt(str) {
240
244
  /// </summary>
241
245
  return "[" + str + "]";
242
246
  }
243
- /**
244
- * Pass in the objects to merge as arguments.
245
- * @param obj1 - object to merge. Set this argument to 'true' for a deep extend.
246
- * @param obj2 - object to merge.
247
- * @param obj3 - object to merge.
248
- * @param obj4 - object to merge.
249
- * @param obj5 - object to merge.
250
- * @returns The extended object.
251
- */
252
- export function extend(obj, obj2, obj3, obj4, obj5) {
253
- // Variables
254
- var extended = {};
255
- var deep = false;
256
- var i = 0;
257
- var length = arguments.length;
258
- var objProto = Object[Prototype];
259
- var theArgs = arguments;
260
- // Check if a deep merge
261
- if (objProto.toString.call(theArgs[0]) === "[object Boolean]") {
262
- deep = theArgs[0];
263
- i++;
264
- }
265
- // Merge the object into the extended object
266
- var merge = function (obj) {
267
- for (var prop in obj) {
268
- if (hasOwnProperty(obj, prop)) {
269
- // If deep merge and property is an object, merge properties
270
- if (deep && objProto.toString.call(obj[prop]) === "[object Object]") {
271
- extended[prop] = extend(true, extended[prop], obj[prop]);
272
- }
273
- else {
274
- extended[prop] = obj[prop];
275
- }
276
- }
277
- }
278
- };
279
- // Loop through each object and conduct a merge
280
- for (; i < length; i++) {
281
- var obj = theArgs[i];
282
- merge(obj);
283
- }
284
- return extended;
285
- }
286
247
  export function validateContentNamePrefix(config, defaultDataPrefix) {
287
- return isValueAssigned(config.dataTags.customDataPrefix) && (config.dataTags.customDataPrefix.indexOf(defaultDataPrefix) === 0);
248
+ return isValueAssigned(config.dataTags[_DYN_CUSTOM_DATA_PREFIX /* @min:%2ecustomDataPrefix */]) && (config[_DYN_DATA_TAGS /* @min:%2edataTags */][_DYN_CUSTOM_DATA_PREFIX /* @min:%2ecustomDataPrefix */][_DYN_INDEX_OF /* @min:%2eindexOf */](defaultDataPrefix) === 0);
288
249
  }
289
250
  /**
290
251
  * Merge passed in configuration with default configuration
291
252
  * @param overrideConfig
292
253
  */
293
254
  export function mergeConfig(overrideConfig) {
294
- var defaultConfig = {
295
- // General library settings
296
- autoCapture: true,
297
- callback: {
298
- pageActionPageTags: null
255
+ var _a, _b, _c;
256
+ var defaultConfig = (_a = {
257
+ // General library settings
258
+ autoCapture: true,
259
+ callback: (_b = {},
260
+ _b[_DYN_PAGE_ACTION_PAGE_TAG0 /* @min:pageActionPageTags */] = null,
261
+ _b),
262
+ pageTags: {},
263
+ // overrideValues to use instead of collecting automatically
264
+ coreData: {
265
+ referrerUri: hasDocument ? document.referrer : "",
266
+ requestUri: "",
267
+ pageName: "",
268
+ pageType: ""
269
+ },
270
+ dataTags: (_c = {},
271
+ _c[_DYN_USE_DEFAULT_CONTENT_1 /* @min:useDefaultContentNameOrId */] = false,
272
+ _c[_DYN_AI_BLOB_ATTRIBUTE_TA2 /* @min:aiBlobAttributeTag */] = DEFAULT_AI_BLOB_ATTRIBUTE_TAG,
273
+ _c[_DYN_CUSTOM_DATA_PREFIX /* @min:customDataPrefix */] = DEFAULT_DATA_PREFIX,
274
+ _c[_DYN_CAPTURE_ALL_META_DAT3 /* @min:captureAllMetaDataContent */] = false,
275
+ _c.dntDataTag = DEFAULT_DONOT_TRACK_TAG,
276
+ _c)
299
277
  },
300
- pageTags: {},
301
- // overrideValues to use instead of collecting automatically
302
- coreData: {
303
- referrerUri: hasDocument ? document.referrer : "",
304
- requestUri: "",
305
- pageName: "",
306
- pageType: ""
307
- },
308
- dataTags: {
309
- useDefaultContentNameOrId: false,
310
- aiBlobAttributeTag: DEFAULT_AI_BLOB_ATTRIBUTE_TAG,
311
- customDataPrefix: DEFAULT_DATA_PREFIX,
312
- captureAllMetaDataContent: false,
313
- dntDataTag: DEFAULT_DONOT_TRACK_TAG
314
- },
315
- behaviorValidator: function (key) { return key || ""; },
316
- defaultRightClickBhvr: "",
317
- dropInvalidEvents: false
318
- };
278
+ _a[_DYN_BEHAVIOR_VALIDATOR /* @min:behaviorValidator */] = function (key) { return key || ""; },
279
+ _a.defaultRightClickBhvr = "",
280
+ _a.dropInvalidEvents = false,
281
+ _a);
319
282
  var attributesThatAreObjectsInConfig = [];
320
283
  for (var attribute in defaultConfig) {
321
284
  if (typeof defaultConfig[attribute] === "object") {
@@ -326,10 +289,10 @@ export function mergeConfig(overrideConfig) {
326
289
  // delete attributes that should be object and
327
290
  // delete properties that are null, undefined, ''
328
291
  removeNonObjectsAndInvalidElements(overrideConfig, attributesThatAreObjectsInConfig);
329
- if (isValueAssigned(overrideConfig.dataTags)) {
330
- overrideConfig.dataTags.customDataPrefix = validateContentNamePrefix(overrideConfig, DEFAULT_DATA_PREFIX) ? overrideConfig.dataTags.customDataPrefix : DEFAULT_DATA_PREFIX;
292
+ if (isValueAssigned(overrideConfig[_DYN_DATA_TAGS /* @min:%2edataTags */])) {
293
+ overrideConfig.dataTags[_DYN_CUSTOM_DATA_PREFIX /* @min:%2ecustomDataPrefix */] = validateContentNamePrefix(overrideConfig, DEFAULT_DATA_PREFIX) ? overrideConfig[_DYN_DATA_TAGS /* @min:%2edataTags */][_DYN_CUSTOM_DATA_PREFIX /* @min:%2ecustomDataPrefix */] : DEFAULT_DATA_PREFIX;
331
294
  }
332
- return extend(true, defaultConfig, overrideConfig);
295
+ return objExtend(true, defaultConfig, overrideConfig);
333
296
  }
334
297
  }
335
298
  export function BehaviorMapValidator(map) {
@@ -1 +1 @@
1
- {"version":3,"file":"Utils.js.map","sources":["Utils.js"],"sourcesContent":["/**\r\n * @copyright Microsoft 2020\r\n * File containing utility functions.\r\n */\r\nimport { __assign } from \"tslib\";\r\nimport { isNullOrUndefined, _InternalMessageId, hasDocument, hasOwnProperty, arrForEach } from \"@microsoft/applicationinsights-core-js\";\r\nvar Prototype = \"prototype\";\r\nvar DEFAULT_DONOT_TRACK_TAG = \"ai-dnt\";\r\nvar DEFAULT_AI_BLOB_ATTRIBUTE_TAG = \"ai-blob\";\r\nvar DEFAULT_DATA_PREFIX = \"data-\";\r\nexport var _ExtendedInternalMessageId = __assign(__assign({}, _InternalMessageId), { CannotParseAiBlobValue: 101, InvalidContentBlob: 102, TrackPageActionEventFailed: 103 });\r\n/**\r\n * Finds attributes in overrideConfig which are invalid or should be objects\r\n * and deletes them. useful in override config\r\n * @param overrideConfig - override config object\r\n * @param attributeNamesExpectedObjects - attributes that should be objects in override config object\r\n */\r\nexport function removeNonObjectsAndInvalidElements(overrideConfig, attributeNamesExpectedObjects) {\r\n removeInvalidElements(overrideConfig);\r\n for (var i in attributeNamesExpectedObjects) {\r\n if (attributeNamesExpectedObjects.hasOwnProperty(i)) {\r\n var objectName = attributeNamesExpectedObjects[i];\r\n if (typeof overrideConfig[objectName] === \"object\") {\r\n removeInvalidElements(overrideConfig[objectName]);\r\n }\r\n else {\r\n delete overrideConfig[objectName];\r\n }\r\n }\r\n }\r\n}\r\n/**\r\n * Finds attributes in object which are invalid\r\n * and deletes them. useful in override config\r\n * @param object Input object\r\n */\r\nexport function removeInvalidElements(object) {\r\n /// Because the config object 'callback' contains only functions,\r\n /// when it is stringified it returns the empty object. This explains\r\n /// the workaround regarding 'callback'\r\n for (var property in object) {\r\n if (!isValueAssigned(object[property]) ||\r\n (JSON.stringify(object[property]) === \"{}\" && (property !== \"callback\"))) {\r\n delete object[property];\r\n }\r\n }\r\n}\r\n/**\r\n * Checks if value is assigned to the given param.\r\n * @param value - The token from which the tenant id is to be extracted.\r\n * @returns True/false denoting if value is assigned to the param.\r\n */\r\nexport function isValueAssigned(value) {\r\n /// <summary> takes a value and checks for undefined, null and empty string </summary>\r\n /// <param type=\"any\"> value to be tested </param>\r\n /// <returns> true if value is null undefined or emptyString </returns>\r\n return !(isNullOrUndefined(value) || value === \"\");\r\n}\r\n/**\r\n * Determines whether an event is a right click or not\r\n * @param evt - Mouse event\r\n * @returns true if the event is a right click\r\n */\r\nexport function isRightClick(evt) {\r\n try {\r\n if (\"which\" in evt) { // Chrome, FF, ...\r\n return (evt.which === 3);\r\n }\r\n else if (\"button\" in evt) { // IE, ...\r\n return (evt.button === 2);\r\n }\r\n }\r\n catch (e) {\r\n // This can happen with some native browser objects, but should not happen for the type we are checking for\r\n }\r\n}\r\n/**\r\n * Determines whether an event is a left click or not\r\n * @param evt - Mouse event\r\n * @returns true if the event is a left click\r\n */\r\nexport function isLeftClick(evt) {\r\n try {\r\n if (\"which\" in evt) { // Chrome, FF, ...\r\n return (evt.which === 1);\r\n }\r\n else if (\"button\" in evt) { // IE, ...\r\n return (evt.button === 1);\r\n }\r\n }\r\n catch (e) {\r\n // This can happen with some native browser objects, but should not happen for the type we are checking for\r\n }\r\n}\r\n/**\r\n * Determines whether an event is a middle click or not\r\n * @param evt - Mouse event\r\n * @returns true if the event is a middle click\r\n */\r\nexport function isMiddleClick(evt) {\r\n try {\r\n if (\"which\" in evt) { // Chrome, FF, ...\r\n return (evt.which === 2);\r\n }\r\n else if (\"button\" in evt) { // IE, ...\r\n return (evt.button === 4);\r\n }\r\n }\r\n catch (e) {\r\n // This can happen with some native browser objects, but should not happen for the type we are checking for\r\n }\r\n}\r\n/**\r\n * Determines whether an event is a keyboard enter or not\r\n * @param evt - Keyboard event\r\n * @returns true if the event is a keyboard enter\r\n */\r\nexport function isKeyboardEnter(evt) {\r\n try {\r\n if (\"keyCode\" in evt) { // Chrome, FF, ...\r\n return (evt.keyCode === 13);\r\n }\r\n }\r\n catch (e) {\r\n // This can happen with some native browser objects, but should not happen for the type we are checking for\r\n }\r\n}\r\n/**\r\n * Determines whether an event is a keyboard space or not\r\n * @param evt - Keyboard event\r\n * @returns true if the event is a space enter\r\n */\r\nexport function isKeyboardSpace(evt) {\r\n try {\r\n if (\"keyCode\" in evt) { // Chrome, FF, ...\r\n return (evt.keyCode === 32);\r\n }\r\n }\r\n catch (e) {\r\n // This can happen with some native browser objects, but should not happen for the type we are checking for\r\n }\r\n}\r\n/**\r\n * Determines whether the elemt have a DNT(Do Not Track) tag\r\n * @param element - DOM element\r\n * @param doNotTrackFieldName - DOM element\r\n * @returns true if the element must not be tarcked\r\n */\r\nexport function isElementDnt(element, doNotTrackFieldName) {\r\n var dntElement = findClosestByAttribute(element, doNotTrackFieldName);\r\n if (!isValueAssigned(dntElement)) {\r\n return false;\r\n }\r\n return true;\r\n}\r\n/**\r\n * Walks up DOM tree to find element with attribute\r\n * @param el - DOM element\r\n * @param attribute - Attribute name\r\n * @returns Dom element which contains attribute\r\n */\r\nexport function findClosestByAttribute(el, attribute) {\r\n return walkUpDomChainWithElementValidation(el, isAttributeInElement, attribute);\r\n}\r\n/**\r\n * checks if attribute is in element.\r\n * method checks for empty string, in case the attribute is set but no value is assigned to it\r\n * @param element - DOM element\r\n * @param attributeToLookFor - Attribute name\r\n * @returns true if attribute is in element, even if empty string\r\n */\r\nexport function isAttributeInElement(element, attributeToLookFor) {\r\n var value = element.getAttribute(attributeToLookFor);\r\n return isValueAssigned(value);\r\n}\r\n/**\r\n * Walks up DOM tree to find element which matches validationMethod\r\n * @param el - DOM element\r\n * @param validationMethod - DOM element validation method\r\n * @param validationMethodParam - DOM element validation method parameters\r\n * @returns Dom element which is an anchor\r\n */\r\nexport function walkUpDomChainWithElementValidation(el, validationMethod, validationMethodParam) {\r\n var element = el;\r\n if (element) {\r\n while (!validationMethod(element, validationMethodParam)) {\r\n element = element.parentNode;\r\n if (!element || !(element.getAttribute)) {\r\n return null;\r\n }\r\n }\r\n return element;\r\n }\r\n}\r\n/**\r\n * Determine if DOM element is an anchor\r\n * @param element - DOM element\r\n * @returns Is element an anchor\r\n */\r\nexport function isElementAnAnchor(element) {\r\n return element.nodeName === \"A\";\r\n}\r\n/**\r\n * Walks up DOM tree to find anchor element\r\n * @param element - DOM element\r\n * @returns Dom element which is an anchor\r\n */\r\nexport function findClosestAnchor(element) {\r\n /// <summary> Walks up DOM tree to find anchor element </summary>\r\n /// <param type='object'> DOM element </param>\r\n /// <returns> Dom element which is an anchor</returns>\r\n return walkUpDomChainWithElementValidation(element, isElementAnAnchor);\r\n}\r\n/**\r\n * Returns the specified field and also removes the property from the object if exists.\r\n * @param obj - Input object\r\n * @param fieldName - >Name of the field/property to be extracted\r\n * @returns Value of the specified tag\r\n */\r\nexport function extractFieldFromObject(obj, fieldName) {\r\n var fieldValue;\r\n if (obj && obj[fieldName]) {\r\n fieldValue = obj[fieldName];\r\n delete obj[fieldName];\r\n }\r\n return fieldValue;\r\n}\r\n/**\r\n * Adds surrounding square brackets to the passed in text\r\n * @param str - Input string\r\n * @returns String with surrounding brackets\r\n */\r\nexport function bracketIt(str) {\r\n /// <summary>\r\n /// Adds surrounding square brackets to the passed in text\r\n /// </summary>\r\n return \"[\" + str + \"]\";\r\n}\r\n/**\r\n * Pass in the objects to merge as arguments.\r\n * @param obj1 - object to merge. Set this argument to 'true' for a deep extend.\r\n * @param obj2 - object to merge.\r\n * @param obj3 - object to merge.\r\n * @param obj4 - object to merge.\r\n * @param obj5 - object to merge.\r\n * @returns The extended object.\r\n */\r\nexport function extend(obj, obj2, obj3, obj4, obj5) {\r\n // Variables\r\n var extended = {};\r\n var deep = false;\r\n var i = 0;\r\n var length = arguments.length;\r\n var objProto = Object[Prototype];\r\n var theArgs = arguments;\r\n // Check if a deep merge\r\n if (objProto.toString.call(theArgs[0]) === \"[object Boolean]\") {\r\n deep = theArgs[0];\r\n i++;\r\n }\r\n // Merge the object into the extended object\r\n var merge = function (obj) {\r\n for (var prop in obj) {\r\n if (hasOwnProperty(obj, prop)) {\r\n // If deep merge and property is an object, merge properties\r\n if (deep && objProto.toString.call(obj[prop]) === \"[object Object]\") {\r\n extended[prop] = extend(true, extended[prop], obj[prop]);\r\n }\r\n else {\r\n extended[prop] = obj[prop];\r\n }\r\n }\r\n }\r\n };\r\n // Loop through each object and conduct a merge\r\n for (; i < length; i++) {\r\n var obj = theArgs[i];\r\n merge(obj);\r\n }\r\n return extended;\r\n}\r\nexport function validateContentNamePrefix(config, defaultDataPrefix) {\r\n return isValueAssigned(config.dataTags.customDataPrefix) && (config.dataTags.customDataPrefix.indexOf(defaultDataPrefix) === 0);\r\n}\r\n/**\r\n * Merge passed in configuration with default configuration\r\n * @param overrideConfig\r\n */\r\nexport function mergeConfig(overrideConfig) {\r\n var defaultConfig = {\r\n // General library settings\r\n autoCapture: true,\r\n callback: {\r\n pageActionPageTags: null\r\n },\r\n pageTags: {},\r\n // overrideValues to use instead of collecting automatically\r\n coreData: {\r\n referrerUri: hasDocument ? document.referrer : \"\",\r\n requestUri: \"\",\r\n pageName: \"\",\r\n pageType: \"\"\r\n },\r\n dataTags: {\r\n useDefaultContentNameOrId: false,\r\n aiBlobAttributeTag: DEFAULT_AI_BLOB_ATTRIBUTE_TAG,\r\n customDataPrefix: DEFAULT_DATA_PREFIX,\r\n captureAllMetaDataContent: false,\r\n dntDataTag: DEFAULT_DONOT_TRACK_TAG\r\n },\r\n behaviorValidator: function (key) { return key || \"\"; },\r\n defaultRightClickBhvr: \"\",\r\n dropInvalidEvents: false\r\n };\r\n var attributesThatAreObjectsInConfig = [];\r\n for (var attribute in defaultConfig) {\r\n if (typeof defaultConfig[attribute] === \"object\") {\r\n attributesThatAreObjectsInConfig.push(attribute);\r\n }\r\n }\r\n if (overrideConfig) {\r\n // delete attributes that should be object and\r\n // delete properties that are null, undefined, ''\r\n removeNonObjectsAndInvalidElements(overrideConfig, attributesThatAreObjectsInConfig);\r\n if (isValueAssigned(overrideConfig.dataTags)) {\r\n overrideConfig.dataTags.customDataPrefix = validateContentNamePrefix(overrideConfig, DEFAULT_DATA_PREFIX) ? overrideConfig.dataTags.customDataPrefix : DEFAULT_DATA_PREFIX;\r\n }\r\n return extend(true, defaultConfig, overrideConfig);\r\n }\r\n}\r\nexport function BehaviorMapValidator(map) {\r\n return function (key) { return map[key] || \"\"; };\r\n}\r\nexport function BehaviorValueValidator(behaviorArray) {\r\n return function (key) {\r\n var result;\r\n arrForEach(behaviorArray, function (value) {\r\n if (value === key) {\r\n result = value;\r\n return -1;\r\n }\r\n });\r\n return result || \"\";\r\n };\r\n}\r\nexport function BehaviorEnumValidator(enumObj) {\r\n return function (key) { return enumObj[key] || \"\"; };\r\n}\r\n//# sourceMappingURL=Utils.js.map"],"names":[],"mappings":";;;;AAAA;AACA;AACA;AACA;AACA,8EAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA"}
1
+ {"version":3,"file":"Utils.js.map","sources":["Utils.js"],"sourcesContent":["/**\r\n* @copyright Microsoft 2020\r\n* File containing utility functions.\r\n*/\r\nimport { __assign } from \"tslib\";\r\nimport { _InternalMessageId, arrForEach, createEnumStyle, hasDocument, hasOwnProperty, isNullOrUndefined, objExtend } from \"@microsoft/applicationinsights-core-js\";\r\nimport { _DYN_AI_BLOB_ATTRIBUTE_TA2, _DYN_BEHAVIOR_VALIDATOR, _DYN_CAPTURE_ALL_META_DAT3, _DYN_CUSTOM_DATA_PREFIX, _DYN_DATA_TAGS, _DYN_GET_ATTRIBUTE, _DYN_INDEX_OF, _DYN_PAGE_ACTION_PAGE_TAG0, _DYN_PARENT_NODE, _DYN_USE_DEFAULT_CONTENT_1 } from \"../__DynamicConstants\";\r\nvar DEFAULT_DONOT_TRACK_TAG = \"ai-dnt\";\r\nvar DEFAULT_AI_BLOB_ATTRIBUTE_TAG = \"ai-blob\";\r\nvar DEFAULT_DATA_PREFIX = \"data-\";\r\nexport var _ExtendedInternalMessageId = __assign(__assign({}, _InternalMessageId), createEnumStyle({\r\n CannotParseAiBlobValue: 101 /* _eExtendedInternalMessageId.CannotParseAiBlobValue */,\r\n InvalidContentBlob: 102 /* _eExtendedInternalMessageId.InvalidContentBlob */,\r\n TrackPageActionEventFailed: 103 /* _eExtendedInternalMessageId.TrackPageActionEventFailed */\r\n}));\r\n/**\r\n * Finds attributes in overrideConfig which are invalid or should be objects\r\n * and deletes them. useful in override config\r\n * @param overrideConfig - override config object\r\n * @param attributeNamesExpectedObjects - attributes that should be objects in override config object\r\n */\r\nexport function removeNonObjectsAndInvalidElements(overrideConfig, attributeNamesExpectedObjects) {\r\n removeInvalidElements(overrideConfig);\r\n for (var i in attributeNamesExpectedObjects) {\r\n if (hasOwnProperty(attributeNamesExpectedObjects, i)) {\r\n var objectName = attributeNamesExpectedObjects[i];\r\n if (typeof overrideConfig[objectName] === \"object\") {\r\n removeInvalidElements(overrideConfig[objectName]);\r\n }\r\n else {\r\n delete overrideConfig[objectName];\r\n }\r\n }\r\n }\r\n}\r\n/**\r\n * Finds attributes in object which are invalid\r\n * and deletes them. useful in override config\r\n * @param object Input object\r\n */\r\nexport function removeInvalidElements(object) {\r\n /// Because the config object 'callback' contains only functions,\r\n /// when it is stringified it returns the empty object. This explains\r\n /// the workaround regarding 'callback'\r\n for (var property in object) {\r\n if (!isValueAssigned(object[property]) ||\r\n (JSON.stringify(object[property]) === \"{}\" && (property !== \"callback\"))) {\r\n delete object[property];\r\n }\r\n }\r\n}\r\n/**\r\n * Checks if value is assigned to the given param.\r\n * @param value - The token from which the tenant id is to be extracted.\r\n * @returns True/false denoting if value is assigned to the param.\r\n */\r\nexport function isValueAssigned(value) {\r\n /// <summary> takes a value and checks for undefined, null and empty string </summary>\r\n /// <param type=\"any\"> value to be tested </param>\r\n /// <returns> true if value is null undefined or emptyString </returns>\r\n return !(isNullOrUndefined(value) || value === \"\");\r\n}\r\n/**\r\n * Determines whether an event is a right click or not\r\n * @param evt - Mouse event\r\n * @returns true if the event is a right click\r\n */\r\nexport function isRightClick(evt) {\r\n try {\r\n if (\"which\" in evt) { // Chrome, FF, ...\r\n return (evt.which === 3);\r\n }\r\n else if (\"button\" in evt) { // IE, ...\r\n return (evt.button === 2);\r\n }\r\n }\r\n catch (e) {\r\n // This can happen with some native browser objects, but should not happen for the type we are checking for\r\n }\r\n}\r\n/**\r\n * Determines whether an event is a left click or not\r\n * @param evt - Mouse event\r\n * @returns true if the event is a left click\r\n */\r\nexport function isLeftClick(evt) {\r\n try {\r\n if (\"which\" in evt) { // Chrome, FF, ...\r\n return (evt.which === 1);\r\n }\r\n else if (\"button\" in evt) { // IE, ...\r\n return (evt.button === 1);\r\n }\r\n }\r\n catch (e) {\r\n // This can happen with some native browser objects, but should not happen for the type we are checking for\r\n }\r\n}\r\n/**\r\n * Determines whether an event is a middle click or not\r\n * @param evt - Mouse event\r\n * @returns true if the event is a middle click\r\n */\r\nexport function isMiddleClick(evt) {\r\n try {\r\n if (\"which\" in evt) { // Chrome, FF, ...\r\n return (evt.which === 2);\r\n }\r\n else if (\"button\" in evt) { // IE, ...\r\n return (evt.button === 4);\r\n }\r\n }\r\n catch (e) {\r\n // This can happen with some native browser objects, but should not happen for the type we are checking for\r\n }\r\n}\r\n/**\r\n * Determines whether an event is a keyboard enter or not\r\n * @param evt - Keyboard event\r\n * @returns true if the event is a keyboard enter\r\n */\r\nexport function isKeyboardEnter(evt) {\r\n try {\r\n if (\"keyCode\" in evt) { // Chrome, FF, ...\r\n return (evt.keyCode === 13);\r\n }\r\n }\r\n catch (e) {\r\n // This can happen with some native browser objects, but should not happen for the type we are checking for\r\n }\r\n}\r\n/**\r\n * Determines whether an event is a keyboard space or not\r\n * @param evt - Keyboard event\r\n * @returns true if the event is a space enter\r\n */\r\nexport function isKeyboardSpace(evt) {\r\n try {\r\n if (\"keyCode\" in evt) { // Chrome, FF, ...\r\n return (evt.keyCode === 32);\r\n }\r\n }\r\n catch (e) {\r\n // This can happen with some native browser objects, but should not happen for the type we are checking for\r\n }\r\n}\r\n/**\r\n * Determines whether the elemt have a DNT(Do Not Track) tag\r\n * @param element - DOM element\r\n * @param doNotTrackFieldName - DOM element\r\n * @returns true if the element must not be tarcked\r\n */\r\nexport function isElementDnt(element, doNotTrackFieldName) {\r\n var dntElement = findClosestByAttribute(element, doNotTrackFieldName);\r\n if (!isValueAssigned(dntElement)) {\r\n return false;\r\n }\r\n return true;\r\n}\r\n/**\r\n * Walks up DOM tree to find element with attribute\r\n * @param el - DOM element\r\n * @param attribute - Attribute name\r\n * @returns Dom element which contains attribute\r\n */\r\nexport function findClosestByAttribute(el, attribute) {\r\n return walkUpDomChainWithElementValidation(el, isAttributeInElement, attribute);\r\n}\r\n/**\r\n * checks if attribute is in element.\r\n * method checks for empty string, in case the attribute is set but no value is assigned to it\r\n * @param element - DOM element\r\n * @param attributeToLookFor - Attribute name\r\n * @returns true if attribute is in element, even if empty string\r\n */\r\nexport function isAttributeInElement(element, attributeToLookFor) {\r\n var value = element[_DYN_GET_ATTRIBUTE /* @min:%2egetAttribute */](attributeToLookFor);\r\n return isValueAssigned(value);\r\n}\r\n/**\r\n * Walks up DOM tree to find element which matches validationMethod\r\n * @param el - DOM element\r\n * @param validationMethod - DOM element validation method\r\n * @param validationMethodParam - DOM element validation method parameters\r\n * @returns Dom element which is an anchor\r\n */\r\nexport function walkUpDomChainWithElementValidation(el, validationMethod, validationMethodParam) {\r\n var element = el;\r\n if (element) {\r\n while (!validationMethod(element, validationMethodParam)) {\r\n element = element[_DYN_PARENT_NODE /* @min:%2eparentNode */];\r\n if (!element || !(element[_DYN_GET_ATTRIBUTE /* @min:%2egetAttribute */])) {\r\n return null;\r\n }\r\n }\r\n return element;\r\n }\r\n}\r\n/**\r\n * Determine if DOM element is an anchor\r\n * @param element - DOM element\r\n * @returns Is element an anchor\r\n */\r\nexport function isElementAnAnchor(element) {\r\n return element.nodeName === \"A\";\r\n}\r\n/**\r\n * Walks up DOM tree to find anchor element\r\n * @param element - DOM element\r\n * @returns Dom element which is an anchor\r\n */\r\nexport function findClosestAnchor(element) {\r\n /// <summary> Walks up DOM tree to find anchor element </summary>\r\n /// <param type='object'> DOM element </param>\r\n /// <returns> Dom element which is an anchor</returns>\r\n return walkUpDomChainWithElementValidation(element, isElementAnAnchor);\r\n}\r\n/**\r\n * Returns the specified field and also removes the property from the object if exists.\r\n * @param obj - Input object\r\n * @param fieldName - >Name of the field/property to be extracted\r\n * @returns Value of the specified tag\r\n */\r\nexport function extractFieldFromObject(obj, fieldName) {\r\n var fieldValue;\r\n if (obj && obj[fieldName]) {\r\n fieldValue = obj[fieldName];\r\n delete obj[fieldName];\r\n }\r\n return fieldValue;\r\n}\r\n/**\r\n * Adds surrounding square brackets to the passed in text\r\n * @param str - Input string\r\n * @returns String with surrounding brackets\r\n */\r\nexport function bracketIt(str) {\r\n /// <summary>\r\n /// Adds surrounding square brackets to the passed in text\r\n /// </summary>\r\n return \"[\" + str + \"]\";\r\n}\r\nexport function validateContentNamePrefix(config, defaultDataPrefix) {\r\n return isValueAssigned(config.dataTags[_DYN_CUSTOM_DATA_PREFIX /* @min:%2ecustomDataPrefix */]) && (config[_DYN_DATA_TAGS /* @min:%2edataTags */][_DYN_CUSTOM_DATA_PREFIX /* @min:%2ecustomDataPrefix */][_DYN_INDEX_OF /* @min:%2eindexOf */](defaultDataPrefix) === 0);\r\n}\r\n/**\r\n * Merge passed in configuration with default configuration\r\n * @param overrideConfig\r\n */\r\nexport function mergeConfig(overrideConfig) {\r\n var _a, _b, _c;\r\n var defaultConfig = (_a = {\r\n // General library settings\r\n autoCapture: true,\r\n callback: (_b = {},\r\n _b[_DYN_PAGE_ACTION_PAGE_TAG0 /* @min:pageActionPageTags */] = null,\r\n _b),\r\n pageTags: {},\r\n // overrideValues to use instead of collecting automatically\r\n coreData: {\r\n referrerUri: hasDocument ? document.referrer : \"\",\r\n requestUri: \"\",\r\n pageName: \"\",\r\n pageType: \"\"\r\n },\r\n dataTags: (_c = {},\r\n _c[_DYN_USE_DEFAULT_CONTENT_1 /* @min:useDefaultContentNameOrId */] = false,\r\n _c[_DYN_AI_BLOB_ATTRIBUTE_TA2 /* @min:aiBlobAttributeTag */] = DEFAULT_AI_BLOB_ATTRIBUTE_TAG,\r\n _c[_DYN_CUSTOM_DATA_PREFIX /* @min:customDataPrefix */] = DEFAULT_DATA_PREFIX,\r\n _c[_DYN_CAPTURE_ALL_META_DAT3 /* @min:captureAllMetaDataContent */] = false,\r\n _c.dntDataTag = DEFAULT_DONOT_TRACK_TAG,\r\n _c)\r\n },\r\n _a[_DYN_BEHAVIOR_VALIDATOR /* @min:behaviorValidator */] = function (key) { return key || \"\"; },\r\n _a.defaultRightClickBhvr = \"\",\r\n _a.dropInvalidEvents = false,\r\n _a);\r\n var attributesThatAreObjectsInConfig = [];\r\n for (var attribute in defaultConfig) {\r\n if (typeof defaultConfig[attribute] === \"object\") {\r\n attributesThatAreObjectsInConfig.push(attribute);\r\n }\r\n }\r\n if (overrideConfig) {\r\n // delete attributes that should be object and\r\n // delete properties that are null, undefined, ''\r\n removeNonObjectsAndInvalidElements(overrideConfig, attributesThatAreObjectsInConfig);\r\n if (isValueAssigned(overrideConfig[_DYN_DATA_TAGS /* @min:%2edataTags */])) {\r\n overrideConfig.dataTags[_DYN_CUSTOM_DATA_PREFIX /* @min:%2ecustomDataPrefix */] = validateContentNamePrefix(overrideConfig, DEFAULT_DATA_PREFIX) ? overrideConfig[_DYN_DATA_TAGS /* @min:%2edataTags */][_DYN_CUSTOM_DATA_PREFIX /* @min:%2ecustomDataPrefix */] : DEFAULT_DATA_PREFIX;\r\n }\r\n return objExtend(true, defaultConfig, overrideConfig);\r\n }\r\n}\r\nexport function BehaviorMapValidator(map) {\r\n return function (key) { return map[key] || \"\"; };\r\n}\r\nexport function BehaviorValueValidator(behaviorArray) {\r\n return function (key) {\r\n var result;\r\n arrForEach(behaviorArray, function (value) {\r\n if (value === key) {\r\n result = value;\r\n return -1;\r\n }\r\n });\r\n return result || \"\";\r\n };\r\n}\r\nexport function BehaviorEnumValidator(enumObj) {\r\n return function (key) { return enumObj[key] || \"\"; };\r\n}\r\n//# sourceMappingURL=Utils.js.map"],"names":[],"mappings":";;;;AAAA;AACA;AACA;AACA;AACA,8EAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA"}