@microsoft/applicationinsights-analytics-js 2.8.0-beta.2203-04 → 2.8.0-beta.2203-05

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 (32) hide show
  1. package/browser/applicationinsights-analytics-js.integrity.json +9 -9
  2. package/browser/applicationinsights-analytics-js.js +754 -251
  3. package/browser/applicationinsights-analytics-js.js.map +1 -1
  4. package/browser/applicationinsights-analytics-js.min.js +2 -2
  5. package/browser/applicationinsights-analytics-js.min.js.map +1 -1
  6. package/dist/applicationinsights-analytics-js.api.json +48 -183
  7. package/dist/applicationinsights-analytics-js.api.md +8 -18
  8. package/dist/applicationinsights-analytics-js.d.ts +9 -104
  9. package/dist/applicationinsights-analytics-js.js +754 -251
  10. package/dist/applicationinsights-analytics-js.js.map +1 -1
  11. package/dist/applicationinsights-analytics-js.min.js +2 -2
  12. package/dist/applicationinsights-analytics-js.min.js.map +1 -1
  13. package/dist/applicationinsights-analytics-js.rollup.d.ts +9 -104
  14. package/dist-esm/JavaScriptSDK/AnalyticsPlugin.js +673 -0
  15. package/dist-esm/JavaScriptSDK/AnalyticsPlugin.js.map +1 -0
  16. package/dist-esm/JavaScriptSDK/Telemetry/PageViewManager.js +1 -1
  17. package/dist-esm/JavaScriptSDK/Telemetry/PageViewPerformanceManager.js +1 -1
  18. package/dist-esm/JavaScriptSDK/Telemetry/PageVisitTimeManager.js +1 -1
  19. package/dist-esm/JavaScriptSDK/Timing.js +39 -0
  20. package/dist-esm/JavaScriptSDK/Timing.js.map +1 -0
  21. package/dist-esm/JavaScriptSDK.Interfaces/ITelemetryConfig.js +1 -1
  22. package/dist-esm/applicationinsights-analytics-js.js +2 -2
  23. package/dist-esm/applicationinsights-analytics-js.js.map +1 -1
  24. package/package.json +5 -5
  25. package/src/JavaScriptSDK/{ApplicationInsights.ts → AnalyticsPlugin.ts} +401 -324
  26. package/src/JavaScriptSDK/Timing.ts +46 -0
  27. package/src/applicationinsights-analytics-js.ts +1 -1
  28. package/types/JavaScriptSDK/{ApplicationInsights.d.ts → AnalyticsPlugin.d.ts} +7 -11
  29. package/types/JavaScriptSDK/Timing.d.ts +18 -0
  30. package/types/applicationinsights-analytics-js.d.ts +1 -1
  31. package/dist-esm/JavaScriptSDK/ApplicationInsights.js +0 -606
  32. package/dist-esm/JavaScriptSDK/ApplicationInsights.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Microsoft Application Insights JavaScript SDK - Web Analytics, 2.8.0-beta.2203-04
2
+ * Microsoft Application Insights JavaScript SDK - Web Analytics, 2.8.0-beta.2203-05
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  *
5
5
  * Microsoft Application Insights Team
@@ -15,7 +15,6 @@ declare namespace ApplicationInsights {
15
15
  import { IConfiguration } from '@microsoft/applicationinsights-core-js';
16
16
  import { ICookieMgr } from '@microsoft/applicationinsights-core-js';
17
17
  import { ICustomProperties } from '@microsoft/applicationinsights-core-js';
18
- import { IDiagnosticLogger } from '@microsoft/applicationinsights-core-js';
19
18
  import { IEventTelemetry } from '@microsoft/applicationinsights-common';
20
19
  import { IExceptionTelemetry } from '@microsoft/applicationinsights-common';
21
20
  import { IMetricTelemetry } from '@microsoft/applicationinsights-common';
@@ -25,22 +24,19 @@ declare namespace ApplicationInsights {
25
24
  import { IPageViewTelemetryInternal } from '@microsoft/applicationinsights-common';
26
25
  import { IPlugin } from '@microsoft/applicationinsights-core-js';
27
26
  import { IProcessTelemetryContext } from '@microsoft/applicationinsights-core-js';
27
+ import { ITelemetryInitializerHandler } from '@microsoft/applicationinsights-core-js';
28
28
  import { ITelemetryItem } from '@microsoft/applicationinsights-core-js';
29
29
  import { ITelemetryPluginChain } from '@microsoft/applicationinsights-core-js';
30
30
  import { ITraceTelemetry } from '@microsoft/applicationinsights-common';
31
31
 
32
- class ApplicationInsights extends BaseTelemetryPlugin implements IAppInsights, IAppInsightsInternal {
32
+ class AnalyticsPlugin extends BaseTelemetryPlugin implements IAppInsights, IAppInsightsInternal {
33
33
  static Version: string;
34
- static getDefaultConfig(config?: IConfig): IConfig;
34
+ static getDefaultConfig: typeof _getDefaultConfig;
35
35
  identifier: string;
36
36
  priority: number;
37
37
  config: IConfig;
38
38
  queue: Array<() => void>;
39
39
  autoRoutePVDelay: number;
40
- protected _telemetryInitializers: Array<(envelope: ITelemetryItem) => boolean | void>;
41
- protected _pageViewManager: PageViewManager;
42
- protected _pageViewPerformanceManager: PageViewPerformanceManager;
43
- protected _pageVisitTimeManager: PageVisitTimeManager;
44
40
  constructor();
45
41
  /**
46
42
  * Get the current cookie manager for this instance
@@ -164,9 +160,13 @@ declare namespace ApplicationInsights {
164
160
  * @memberof ApplicationInsights
165
161
  */
166
162
  _onerror(exception: IAutoExceptionTelemetry): void;
167
- addTelemetryInitializer(telemetryInitializer: (item: ITelemetryItem) => boolean | void): void;
163
+ addTelemetryInitializer(telemetryInitializer: (item: ITelemetryItem) => boolean | void): ITelemetryInitializerHandler | void;
168
164
  initialize(config: IConfiguration & IConfig, core: IAppInsightsCore, extensions: IPlugin[], pluginChain?: ITelemetryPluginChain): void;
169
165
  }
166
+ export { AnalyticsPlugin }
167
+ export { AnalyticsPlugin as ApplicationInsights }
168
+
169
+ function _getDefaultConfig(config?: IConfig): IConfig;
170
170
 
171
171
  /**
172
172
  * Internal interface to pass appInsights object to subcomponents without coupling
@@ -176,100 +176,5 @@ declare namespace ApplicationInsights {
176
176
  sendPageViewPerformanceInternal(pageViewPerformance: IPageViewPerformanceTelemetryInternal, properties?: Object, systemProperties?: Object): void;
177
177
  }
178
178
 
179
- /**
180
- * Class encapsulates sending page views and page view performance telemetry.
181
- */
182
- class PageViewManager {
183
- constructor(appInsights: IAppInsightsInternal, overridePageViewDuration: boolean, core: IAppInsightsCore, pageViewPerformanceManager: PageViewPerformanceManager);
184
- /**
185
- * Currently supported cases:
186
- * 1) (default case) track page view called with default parameters, overridePageViewDuration = false. Page view is sent with page view performance when navigation timing data is available.
187
- * a. If navigation timing is not supported then page view is sent right away with undefined duration. Page view performance is not sent.
188
- * 2) overridePageViewDuration = true, custom duration provided. Custom duration is used, page view sends right away.
189
- * 3) overridePageViewDuration = true, custom duration NOT provided. Page view is sent right away, duration is time spent from page load till now (or undefined if navigation timing is not supported).
190
- * 4) overridePageViewDuration = false, custom duration is provided. Page view is sent right away with custom duration.
191
- *
192
- * In all cases page view performance is sent once (only for the 1st call of trackPageView), or not sent if navigation timing is not supported.
193
- */
194
- trackPageView(pageView: IPageViewTelemetry, customProperties?: {
195
- [key: string]: any;
196
- }): void;
197
- }
198
-
199
- /**
200
- * Class encapsulates sending page view performance telemetry.
201
- */
202
- class PageViewPerformanceManager {
203
- private _logger;
204
- private MAX_DURATION_ALLOWED;
205
- constructor(core: IAppInsightsCore);
206
- populatePageViewPerformanceEvent(pageViewPerformance: IPageViewPerformanceTelemetryInternal): void;
207
- getPerformanceTiming(): PerformanceTiming | null;
208
- getPerformanceNavigationTiming(): PerformanceNavigationTiming | null;
209
- /**
210
- * Returns true is window PerformanceNavigationTiming API is supported, false otherwise.
211
- */
212
- isPerformanceNavigationTimingSupported(): boolean;
213
- /**
214
- * Returns true is window performance timing API is supported, false otherwise.
215
- */
216
- isPerformanceTimingSupported(): PerformanceTiming;
217
- /**
218
- * As page loads different parts of performance timing numbers get set. When all of them are set we can report it.
219
- * Returns true if ready, false otherwise.
220
- */
221
- isPerformanceTimingDataReady(): boolean;
222
- /**
223
- * This method tells if given durations should be excluded from collection.
224
- */
225
- shouldCollectDuration(...durations: number[]): boolean;
226
- }
227
-
228
- class PageVisitData {
229
- pageName: string;
230
- pageUrl: string;
231
- pageVisitStartTime: number;
232
- pageVisitTime: number;
233
- constructor(pageName: string, pageUrl: string);
234
- }
235
-
236
- /**
237
- * Used to track page visit durations
238
- */
239
- class PageVisitTimeManager {
240
- private prevPageVisitDataKeyName;
241
- private pageVisitTimeTrackingHandler;
242
- private _logger;
243
- /**
244
- * Creates a new instance of PageVisitTimeManager
245
- * @param pageVisitTimeTrackingHandler Delegate that will be called to send telemetry data to AI (when trackPreviousPageVisit is called)
246
- * @returns {}
247
- */
248
- constructor(logger: IDiagnosticLogger, pageVisitTimeTrackingHandler: (pageName: string, pageUrl: string, pageVisitTime: number) => void);
249
- /**
250
- * Tracks the previous page visit time telemetry (if exists) and starts timing of new page visit time
251
- * @param currentPageName Name of page to begin timing for visit duration
252
- * @param currentPageUrl Url of page to begin timing for visit duration
253
- */
254
- trackPreviousPageVisit(currentPageName: string, currentPageUrl: string): void;
255
- /**
256
- * Stops timing of current page (if exists) and starts timing for duration of visit to pageName
257
- * @param pageName Name of page to begin timing visit duration
258
- * @returns {PageVisitData} Page visit data (including duration) of pageName from last call to start or restart, if exists. Null if not.
259
- */
260
- restartPageVisitTimer(pageName: string, pageUrl: string): PageVisitData;
261
- /**
262
- * Starts timing visit duration of pageName
263
- * @param pageName
264
- * @returns {}
265
- */
266
- startPageVisitTimer(pageName: string, pageUrl: string): void;
267
- /**
268
- * Stops timing of current page, if exists.
269
- * @returns {PageVisitData} Page visit data (including duration) of pageName from call to start, if exists. Null if not.
270
- */
271
- stopPageVisitTimer(): PageVisitData;
272
- }
273
-
274
179
 
275
180
  }