@microsoft/applicationinsights-clickanalytics-js 2.8.0-nightly.2202-06 → 2.8.0-nightly.2204-04

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 (79) hide show
  1. package/browser/ai.clck.2.8.0-nightly.2204-04.cjs.js +2883 -0
  2. package/browser/ai.clck.2.8.0-nightly.2204-04.cjs.js.map +1 -0
  3. package/browser/ai.clck.2.8.0-nightly.2204-04.cjs.min.js +6 -0
  4. package/browser/ai.clck.2.8.0-nightly.2204-04.cjs.min.js.map +1 -0
  5. package/browser/ai.clck.2.8.0-nightly.2204-04.gbl.js +2887 -0
  6. package/browser/ai.clck.2.8.0-nightly.2204-04.gbl.js.map +1 -0
  7. package/browser/ai.clck.2.8.0-nightly.2204-04.gbl.min.js +6 -0
  8. package/browser/ai.clck.2.8.0-nightly.2204-04.gbl.min.js.map +1 -0
  9. package/browser/ai.clck.2.8.0-nightly.2204-04.integrity.json +66 -0
  10. package/browser/ai.clck.2.8.0-nightly.2204-04.js +2889 -0
  11. package/browser/ai.clck.2.8.0-nightly.2204-04.js.map +1 -0
  12. package/browser/ai.clck.2.8.0-nightly.2204-04.min.js +6 -0
  13. package/browser/ai.clck.2.8.0-nightly.2204-04.min.js.map +1 -0
  14. package/browser/ai.clck.2.cjs.js +1685 -808
  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 +1685 -808
  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 +1685 -808
  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 +38 -13
  27. package/dist/applicationinsights-clickanalytics-js.api.md +1 -0
  28. package/dist/applicationinsights-clickanalytics-js.d.ts +2 -5
  29. package/dist/applicationinsights-clickanalytics-js.js +1685 -808
  30. package/dist/applicationinsights-clickanalytics-js.js.map +1 -1
  31. package/dist/applicationinsights-clickanalytics-js.min.js +2 -2
  32. package/dist/applicationinsights-clickanalytics-js.min.js.map +1 -1
  33. package/dist/applicationinsights-clickanalytics-js.rollup.d.ts +2 -5
  34. package/dist-esm/Behaviours.js +1 -1
  35. package/dist-esm/ClickAnalyticsPlugin.js +74 -50
  36. package/dist-esm/ClickAnalyticsPlugin.js.map +1 -1
  37. package/dist-esm/DataCollector.js +4 -2
  38. package/dist-esm/DataCollector.js.map +1 -1
  39. package/dist-esm/Enums.js +1 -1
  40. package/dist-esm/Interfaces/Datamodel.js +1 -1
  41. package/dist-esm/applicationinsights-clickanalytics-js.js +1 -1
  42. package/dist-esm/common/Utils.js +1 -1
  43. package/dist-esm/events/PageAction.js +128 -126
  44. package/dist-esm/events/PageAction.js.map +1 -1
  45. package/dist-esm/events/WebEvent.js +109 -94
  46. package/dist-esm/events/WebEvent.js.map +1 -1
  47. package/dist-esm/handlers/AutoCaptureHandler.js +85 -83
  48. package/dist-esm/handlers/AutoCaptureHandler.js.map +1 -1
  49. package/dist-esm/handlers/DomContentHandler.js +279 -276
  50. package/dist-esm/handlers/DomContentHandler.js.map +1 -1
  51. package/package.json +5 -5
  52. package/src/ClickAnalyticsPlugin.ts +92 -47
  53. package/src/DataCollector.ts +24 -22
  54. package/src/Interfaces/Datamodel.ts +20 -21
  55. package/src/common/Utils.ts +8 -8
  56. package/src/events/PageAction.ts +165 -131
  57. package/src/events/WebEvent.ts +147 -78
  58. package/src/handlers/AutoCaptureHandler.ts +89 -79
  59. package/src/handlers/DomContentHandler.ts +336 -303
  60. package/types/ClickAnalyticsPlugin.d.ts +1 -4
  61. package/types/Interfaces/Datamodel.d.ts +3 -2
  62. package/types/events/PageAction.d.ts +6 -6
  63. package/types/events/WebEvent.d.ts +17 -17
  64. package/types/handlers/AutoCaptureHandler.d.ts +2 -10
  65. package/types/handlers/DomContentHandler.d.ts +3 -50
  66. package/types/tsdoc-metadata.json +1 -1
  67. package/browser/ai.clck.2.8.0-nightly.2202-06.cjs.js +0 -2006
  68. package/browser/ai.clck.2.8.0-nightly.2202-06.cjs.js.map +0 -1
  69. package/browser/ai.clck.2.8.0-nightly.2202-06.cjs.min.js +0 -6
  70. package/browser/ai.clck.2.8.0-nightly.2202-06.cjs.min.js.map +0 -1
  71. package/browser/ai.clck.2.8.0-nightly.2202-06.gbl.js +0 -2010
  72. package/browser/ai.clck.2.8.0-nightly.2202-06.gbl.js.map +0 -1
  73. package/browser/ai.clck.2.8.0-nightly.2202-06.gbl.min.js +0 -6
  74. package/browser/ai.clck.2.8.0-nightly.2202-06.gbl.min.js.map +0 -1
  75. package/browser/ai.clck.2.8.0-nightly.2202-06.integrity.json +0 -66
  76. package/browser/ai.clck.2.8.0-nightly.2202-06.js +0 -2012
  77. package/browser/ai.clck.2.8.0-nightly.2202-06.js.map +0 -1
  78. package/browser/ai.clck.2.8.0-nightly.2202-06.min.js +0 -6
  79. package/browser/ai.clck.2.8.0-nightly.2202-06.min.js.map +0 -1
@@ -10,10 +10,7 @@ export declare class ClickAnalyticsPlugin extends BaseTelemetryPlugin {
10
10
  identifier: string;
11
11
  priority: number;
12
12
  static Version: string;
13
- private _config;
14
- private pageAction;
15
- private _autoCaptureHandler;
16
- private _contentHandler;
13
+ constructor();
17
14
  initialize(config: IConfiguration & IConfig, core: IAppInsightsCore, extensions: IPlugin[], pluginChain?: ITelemetryPluginChain): void;
18
15
  processTelemetry(env: ITelemetryItem, itemCtx?: IProcessTelemetryContext): void;
19
16
  /**
@@ -2,6 +2,7 @@
2
2
  * @copyright Microsoft 2020
3
3
  */
4
4
  import { IEventTelemetry } from "@microsoft/applicationinsights-common";
5
+ import { IUnloadableComponent } from "@microsoft/applicationinsights-core-js";
5
6
  /**
6
7
  * ClickAnalytics Configuration
7
8
  */
@@ -132,7 +133,7 @@ export interface IPageTags {
132
133
  /**
133
134
  * Auto capture handler interface
134
135
  */
135
- export interface IAutoCaptureHandler {
136
+ export interface IAutoCaptureHandler extends IUnloadableComponent {
136
137
  /**
137
138
  * Auto capture click
138
139
  */
@@ -215,7 +216,7 @@ export interface IContent {
215
216
  /**
216
217
  * Content handler interface
217
218
  */
218
- export interface IContentHandler {
219
+ export interface IContentHandler extends IUnloadableComponent {
219
220
  /**
220
221
  * Get meta data
221
222
  */
@@ -2,9 +2,13 @@
2
2
  * @copyright Microsoft 2020
3
3
  */
4
4
  import { WebEvent } from "./WebEvent";
5
- import { ICustomProperties } from "@microsoft/applicationinsights-core-js";
6
- import { IPageActionOverrideValues, IPageActionTelemetry } from "../Interfaces/Datamodel";
5
+ import { ICustomProperties, IDiagnosticLogger } from "@microsoft/applicationinsights-core-js";
6
+ import { IClickAnalyticsConfiguration, IContentHandler, IPageActionOverrideValues, IPageActionTelemetry } from "../Interfaces/Datamodel";
7
+ import { ClickAnalyticsPlugin } from "../ClickAnalyticsPlugin";
7
8
  export declare class PageAction extends WebEvent {
9
+ constructor(clickAnalyticsPlugin: ClickAnalyticsPlugin, config: IClickAnalyticsConfiguration, contentHandler: IContentHandler, pageTagsCallback: any, metaTags: {
10
+ [name: string]: string;
11
+ }, traceLogger: IDiagnosticLogger);
8
12
  /**
9
13
  * API to send pageAction event
10
14
  * @param pageActionEvent - PageAction event
@@ -21,8 +25,4 @@ export declare class PageAction extends WebEvent {
21
25
  capturePageAction(element: Element, overrideValues?: IPageActionOverrideValues, customProperties?: {
22
26
  [name: string]: string | number | boolean | string[] | number[] | boolean[] | object;
23
27
  }, isRightClick?: boolean): void;
24
- private _getTimeToClick;
25
- private _populateEventDataIfPresent;
26
- private _sanitizePageActionEventContent;
27
- private _isUndefinedEvent;
28
28
  }
@@ -1,10 +1,14 @@
1
1
  /**
2
2
  * @copyright Microsoft 2020
3
3
  */
4
- import { IDiagnosticLogger } from "@microsoft/applicationinsights-core-js";
4
+ import { IDiagnosticLogger, IUnloadableComponent, IProcessTelemetryUnloadContext, ITelemetryUnloadState } from "@microsoft/applicationinsights-core-js";
5
5
  import { IClickAnalyticsConfiguration, IPageTags, IOverrideValues, IContentHandler, IPageActionTelemetry } from "../Interfaces/Datamodel";
6
6
  import { ClickAnalyticsPlugin } from "../ClickAnalyticsPlugin";
7
- export declare class WebEvent {
7
+ export declare class WebEvent implements IUnloadableComponent {
8
+ protected _pageTags: IPageTags;
9
+ protected _pageTypeMetaTag: string;
10
+ protected _marketMetaTag: string;
11
+ protected _behaviorMetaTag: string;
8
12
  protected _clickAnalyticsPlugin: ClickAnalyticsPlugin;
9
13
  protected _config: IClickAnalyticsConfiguration;
10
14
  protected _contentHandler: IContentHandler;
@@ -13,10 +17,6 @@ export declare class WebEvent {
13
17
  [name: string]: string;
14
18
  };
15
19
  protected _traceLogger: IDiagnosticLogger;
16
- protected _pageTags: IPageTags;
17
- protected _pageTypeMetaTag: string;
18
- protected _marketMetaTag: string;
19
- protected _behaviorMetaTag: string;
20
20
  /**
21
21
  * @param clickAnalyticsPlugin - Click Analytics plugin instance
22
22
  * @param config - ClickAnalytics configuration object
@@ -26,15 +26,24 @@ export declare class WebEvent {
26
26
  * @param metaTags - Meta tags
27
27
  * @param traceLogger - Trace logger to log to console.
28
28
  */
29
- constructor(_clickAnalyticsPlugin: ClickAnalyticsPlugin, _config: IClickAnalyticsConfiguration, _contentHandler: IContentHandler, _pageTagsCallback: any, _metaTags: {
29
+ constructor(clickAnalyticsPlugin: ClickAnalyticsPlugin, config: IClickAnalyticsConfiguration, contentHandler: IContentHandler, pageTagsCallback: any, metaTags: {
30
30
  [name: string]: string;
31
- }, _traceLogger: IDiagnosticLogger);
31
+ }, traceLogger: IDiagnosticLogger);
32
32
  setBasicProperties(event: IPageActionTelemetry, overrideValues: IOverrideValues): void;
33
33
  /**
34
34
  * Sets common properties for events that are based on the WebEvent schema.
35
35
  * @param event - The event
36
36
  */
37
37
  setCommonProperties(event: IPageActionTelemetry, overrideValues: IOverrideValues): void;
38
+ /**
39
+ * Teardown / Unload hook to allow implementations to perform some additional unload operations before the BaseTelemetryPlugin
40
+ * finishes it's removal.
41
+ * @param unloadCtx - This is the context that should be used during unloading.
42
+ * @param unloadState - The details / state of the unload process, it holds details like whether it should be unloaded synchronously or asynchronously and the reason for the unload.
43
+ * @param asyncCallback - An optional callback that the plugin must call if it returns true to inform the caller that it has completed any async unload/teardown operations.
44
+ * @returns boolean - true if the plugin has or will call asyncCallback, this allows the plugin to perform any asynchronous operations.
45
+ */
46
+ _doUnload(unloadCtx?: IProcessTelemetryUnloadContext, unloadState?: ITelemetryUnloadState, asyncCallback?: () => void): void | boolean;
38
47
  /**
39
48
  * Sets pageTags.
40
49
  * @param event - The event
@@ -42,13 +51,4 @@ export declare class WebEvent {
42
51
  protected _setPageTags(event: IPageActionTelemetry, overrideValues: IOverrideValues): void;
43
52
  protected _getBehavior(overrideValues?: IOverrideValues): string | number;
44
53
  protected _getValidBehavior(behavior: string | number): string | number;
45
- /**
46
- * Get the specified metadata value from the collection
47
- * If overrideValue is specified in the config that takes precedence.
48
- * @param metaTags - Meta data.
49
- * @param coreData - Coredata values from configuration.
50
- * @param metaTagName - Name of the metaTag to get.
51
- * @returns Meta data value
52
- */
53
- private _getMetaData;
54
54
  }
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @copyright Microsoft 2020
3
3
  */
4
- import { IDiagnosticLogger } from "@microsoft/applicationinsights-core-js";
4
+ import { IDiagnosticLogger, IProcessTelemetryUnloadContext, ITelemetryUnloadState } from "@microsoft/applicationinsights-core-js";
5
5
  import { IAutoCaptureHandler, IClickAnalyticsConfiguration } from "../Interfaces/Datamodel";
6
6
  import { ClickAnalyticsPlugin } from "../ClickAnalyticsPlugin";
7
7
  import { PageAction } from "../events/PageAction";
@@ -16,13 +16,5 @@ export declare class AutoCaptureHandler implements IAutoCaptureHandler {
16
16
  */
17
17
  constructor(_analyticsPlugin: ClickAnalyticsPlugin, _config: IClickAnalyticsConfiguration, _pageAction: PageAction, _traceLogger: IDiagnosticLogger);
18
18
  click(): void;
19
- /**
20
- * API to create and send a populated PageAction event
21
- * @param element - DOM element
22
- * @param overrideValues - PageAction overrides
23
- * @param customProperties - Custom properties(Part C)
24
- * @param isRightClick - Flag for mouse right clicks
25
- */
26
- private capturePageAction;
27
- private _processClick;
19
+ _doUnload(unloadCtx?: IProcessTelemetryUnloadContext, unloadState?: ITelemetryUnloadState, asyncCallback?: () => void): void | boolean;
28
20
  }
@@ -1,3 +1,6 @@
1
+ /**
2
+ * @copyright Microsoft 2020
3
+ */
1
4
  import { IDiagnosticLogger } from "@microsoft/applicationinsights-core-js";
2
5
  import { IClickAnalyticsConfiguration, IContent, IContentHandler } from "../Interfaces/Datamodel";
3
6
  export declare class DomContentHandler implements IContentHandler {
@@ -23,54 +26,4 @@ export declare class DomContentHandler implements IContentHandler {
23
26
  * @returns String representation of the Json array of element attributes
24
27
  */
25
28
  getElementContent(element: Element): IContent;
26
- /**
27
- * Capture current level Element content
28
- */
29
- private _captureElementContentWithDataTag;
30
- /**
31
- * Walk Up the DOM to capture Element content
32
- */
33
- private _walkUpDomChainCaptureData;
34
- /**
35
- * Capture Element content along with Data Tag attributes and values
36
- */
37
- private _populateElementContent;
38
- /**
39
- * Capture Element content along with Data Tag attributes and values
40
- */
41
- private _populateElementContentwithDataTag;
42
- /**
43
- * Retrieve a specified metadata tag value from the DOM.
44
- * @param captureAllMetaDataContent - Flag to capture all metadata content
45
- * @param prefix - Prefix to search the metatags with.
46
- * @param removePrefix - Specifies if the prefix must be excluded from key names in the returned collection.
47
- * @returns Metadata collection/property bag
48
- */
49
- private _getMetaDataFromDOM;
50
- /**
51
- * Gets the default content name.
52
- * @param element - An html element
53
- * @param useDefaultContentNameOrId -Flag indicating if an element is market PII.
54
- * @returns Content name
55
- */
56
- private _getDefaultContentName;
57
- /**
58
- * Check if the user wants to track the element, which means if the element has any tags with data-* or customDataPrefix
59
- * @param element - An html element
60
- * @returns true if any data-* exist, otherwise return false
61
- */
62
- private _isTracked;
63
- private _getHtmlIdAndContentName;
64
- /**
65
- * Computes the parentId of a given element.
66
- * @param element - An html element
67
- * @returns An object containing the closest parentId , can be empty if nothing was found
68
- */
69
- private _getParentDetails;
70
- /**
71
- * Check if parent info already set up, if so take and put into content, if not walk up the DOM to find correct info
72
- * @param element - An html element that the user wants to track
73
- * @returns An object containing the parent info, can be empty if nothing was found
74
- */
75
- private _populateParentInfo;
76
29
  }
@@ -5,7 +5,7 @@
5
5
  "toolPackages": [
6
6
  {
7
7
  "packageName": "@microsoft/api-extractor",
8
- "packageVersion": "7.19.4"
8
+ "packageVersion": "7.20.0"
9
9
  }
10
10
  ]
11
11
  }