@microsoft/applicationinsights-web 2.8.0-beta.2203-02 → 2.8.0-beta.2203-03

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 (49) hide show
  1. package/browser/{ai.2.8.0-beta.2203-02.cjs.js → ai.2.8.0-beta.2203-03.cjs.js} +200 -14
  2. package/browser/ai.2.8.0-beta.2203-03.cjs.js.map +1 -0
  3. package/browser/ai.2.8.0-beta.2203-03.cjs.min.js +6 -0
  4. package/browser/ai.2.8.0-beta.2203-03.cjs.min.js.map +1 -0
  5. package/browser/{ai.2.8.0-beta.2203-02.gbl.js → ai.2.8.0-beta.2203-03.gbl.js} +200 -14
  6. package/browser/ai.2.8.0-beta.2203-03.gbl.js.map +1 -0
  7. package/browser/ai.2.8.0-beta.2203-03.gbl.min.js +6 -0
  8. package/browser/ai.2.8.0-beta.2203-03.gbl.min.js.map +1 -0
  9. package/browser/ai.2.8.0-beta.2203-03.integrity.json +66 -0
  10. package/browser/{ai.2.8.0-beta.2203-02.js → ai.2.8.0-beta.2203-03.js} +200 -14
  11. package/browser/ai.2.8.0-beta.2203-03.js.map +1 -0
  12. package/browser/ai.2.8.0-beta.2203-03.min.js +6 -0
  13. package/browser/ai.2.8.0-beta.2203-03.min.js.map +1 -0
  14. package/browser/ai.2.cjs.js +199 -13
  15. package/browser/ai.2.cjs.js.map +1 -1
  16. package/browser/ai.2.cjs.min.js +2 -2
  17. package/browser/ai.2.cjs.min.js.map +1 -1
  18. package/browser/ai.2.gbl.js +199 -13
  19. package/browser/ai.2.gbl.js.map +1 -1
  20. package/browser/ai.2.gbl.min.js +2 -2
  21. package/browser/ai.2.gbl.min.js.map +1 -1
  22. package/browser/ai.2.js +199 -13
  23. package/browser/ai.2.js.map +1 -1
  24. package/browser/ai.2.min.js +2 -2
  25. package/browser/ai.2.min.js.map +1 -1
  26. package/dist/applicationinsights-web.api.json +505 -0
  27. package/dist/applicationinsights-web.api.md +9 -0
  28. package/dist/applicationinsights-web.d.ts +62 -2
  29. package/dist/applicationinsights-web.js +199 -13
  30. package/dist/applicationinsights-web.js.map +1 -1
  31. package/dist/applicationinsights-web.min.js +2 -2
  32. package/dist/applicationinsights-web.min.js.map +1 -1
  33. package/dist/applicationinsights-web.rollup.d.ts +62 -2
  34. package/dist-esm/ApplicationInsightsContainer.js +1 -1
  35. package/dist-esm/ApplicationInsightsDeprecated.js +1 -1
  36. package/dist-esm/Init.js +1 -1
  37. package/dist-esm/Initialization.js +1 -1
  38. package/dist-esm/applicationinsights-web.js +1 -1
  39. package/package.json +7 -7
  40. package/browser/ai.2.8.0-beta.2203-02.cjs.js.map +0 -1
  41. package/browser/ai.2.8.0-beta.2203-02.cjs.min.js +0 -6
  42. package/browser/ai.2.8.0-beta.2203-02.cjs.min.js.map +0 -1
  43. package/browser/ai.2.8.0-beta.2203-02.gbl.js.map +0 -1
  44. package/browser/ai.2.8.0-beta.2203-02.gbl.min.js +0 -6
  45. package/browser/ai.2.8.0-beta.2203-02.gbl.min.js.map +0 -1
  46. package/browser/ai.2.8.0-beta.2203-02.integrity.json +0 -66
  47. package/browser/ai.2.8.0-beta.2203-02.js.map +0 -1
  48. package/browser/ai.2.8.0-beta.2203-02.min.js +0 -6
  49. package/browser/ai.2.8.0-beta.2203-02.min.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Microsoft.ApplicationInsights, 2.8.0-beta.2203-02
2
+ * Microsoft.ApplicationInsights, 2.8.0-beta.2203-03
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  *
5
5
  * Microsoft Application Insights Team
@@ -423,11 +423,26 @@ export declare class BaseCore implements IAppInsightsCore {
423
423
  * @returns - A ITelemetryInitializerHandler to enable the initializer to be removed
424
424
  */
425
425
  addTelemetryInitializer(telemetryInitializer: TelemetryInitializerFunction): ITelemetryInitializerHandler | void;
426
+ /**
427
+ * Unload and Tear down the SDK and any initialized plugins, after calling this the SDK will be considered
428
+ * to be un-initialized and non-operational, re-initializing the SDK should only be attempted if the previous
429
+ * unload call return `true` stating that all plugins reported that they also unloaded, the recommended
430
+ * approach is to create a new instance and initialize that instance.
431
+ * This is due to possible unexpected side effects caused by plugins not supporting unload / teardown, unable
432
+ * to successfully remove any global references or they may just be completing the unload process asynchronously.
433
+ */
434
+ unload(isAsync?: boolean, unloadComplete?: () => void): void;
426
435
  getPlugin<T extends IPlugin = IPlugin>(pluginIdentifier: string): ILoadedPlugin<T>;
436
+ addPlugin<T extends IPlugin = ITelemetryPlugin>(plugin: T, replaceExisting: boolean, doAsync: boolean, addCb?: (added?: boolean) => void): void;
427
437
  /**
428
438
  * Returns the unique event namespace that should be used
429
439
  */
430
440
  evtNamespace(): string;
441
+ /**
442
+ * Add an unload handler that will be called when the SDK is being unloaded
443
+ * @param handler - the handler
444
+ */
445
+ addUnloadCb(handler: UnloadHandler): void;
431
446
  protected releaseQueue(): void;
432
447
  }
433
448
 
@@ -497,6 +512,11 @@ export declare abstract class BaseTelemetryPlugin implements ITelemetryPlugin {
497
512
  */
498
513
  teardown(unloadCtx?: IProcessTelemetryUnloadContext, unloadState?: ITelemetryUnloadState): void | boolean;
499
514
  abstract processTelemetry(env: ITelemetryItem, itemCtx?: IProcessTelemetryContext): void;
515
+ /**
516
+ * Add an unload handler that will be called when the SDK is being unloaded
517
+ * @param handler - the handler
518
+ */
519
+ protected _addUnloadCb(handler: UnloadHandler): void;
500
520
  /**
501
521
  * Add this hook so that it is automatically removed during unloading
502
522
  * @param hooks - The single hook or an array of IInstrumentHook objects
@@ -1056,15 +1076,36 @@ export declare interface IAppInsightsCore extends IPerfManagerProvider {
1056
1076
  * Return a new instance of the IProcessTelemetryContext for processing events
1057
1077
  */
1058
1078
  getProcessTelContext(): IProcessTelemetryContext;
1079
+ /**
1080
+ * Unload and Tear down the SDK and any initialized plugins, after calling this the SDK will be considered
1081
+ * to be un-initialized and non-operational, re-initializing the SDK should only be attempted if the previous
1082
+ * unload call return `true` stating that all plugins reported that they also unloaded, the recommended
1083
+ * approach is to create a new instance and initialize that instance.
1084
+ * This is due to possible unexpected side effects caused by plugins not supporting unload / teardown, unable
1085
+ * to successfully remove any global references or they may just be completing the unload process asynchronously.
1086
+ */
1087
+ unload(isAsync?: boolean, unloadComplete?: () => void): void;
1059
1088
  /**
1060
1089
  * Find and return the (first) plugin with the specified identifier if present
1061
1090
  * @param pluginIdentifier
1062
1091
  */
1063
1092
  getPlugin<T extends IPlugin = IPlugin>(pluginIdentifier: string): ILoadedPlugin<T>;
1093
+ /**
1094
+ * Add a new plugin to the installation
1095
+ * @param plugin - The new plugin to add
1096
+ * @param replaceExisting - should any existing plugin be replaced
1097
+ * @param doAsync - Should the add be performed asynchronously
1098
+ */
1099
+ addPlugin<T extends IPlugin = ITelemetryPlugin>(plugin: T, replaceExisting: boolean, doAsync: boolean, addCb?: (added?: boolean) => void): void;
1064
1100
  /**
1065
1101
  * Returns the unique event namespace that should be used when registering events
1066
1102
  */
1067
1103
  evtNamespace(): string;
1104
+ /**
1105
+ * Add a handler that will be called when the SDK is being unloaded
1106
+ * @param handler - the handler
1107
+ */
1108
+ addUnloadCb(handler: UnloadHandler): void;
1068
1109
  }
1069
1110
 
1070
1111
  export declare interface IAppInsightsDeprecated {
@@ -2742,6 +2783,7 @@ declare interface ILoadedPlugin<T extends IPlugin> {
2742
2783
  * (unless it's also been re-initialized)
2743
2784
  */
2744
2785
  setEnabled: (isEnabled: boolean) => void;
2786
+ remove: (isAsync?: boolean, removeCb?: (removed?: boolean) => void) => void;
2745
2787
  }
2746
2788
 
2747
2789
  declare interface ILocation {
@@ -4610,6 +4652,10 @@ declare const enum SendRequestReason {
4610
4652
  * The event(s) being sent as a retry
4611
4653
  */
4612
4654
  Retry = 5,
4655
+ /**
4656
+ * The SDK is unloading
4657
+ */
4658
+ SdkUnload = 6,
4613
4659
  /**
4614
4660
  * Maximum batch size would be exceeded
4615
4661
  */
@@ -4795,7 +4841,19 @@ declare const enum TelemetryUnloadReason {
4795
4841
  /**
4796
4842
  * Teardown has been called without any context.
4797
4843
  */
4798
- ManualTeardown = 0
4844
+ ManualTeardown = 0,
4845
+ /**
4846
+ * Just this plugin is being removed
4847
+ */
4848
+ PluginUnload = 1,
4849
+ /**
4850
+ * This instance of the plugin is being removed and replaced
4851
+ */
4852
+ PluginReplace = 2,
4853
+ /**
4854
+ * The entire SDK is being unloaded
4855
+ */
4856
+ SdkUnload = 50
4799
4857
  }
4800
4858
 
4801
4859
  export declare class Trace extends MessageData implements ISerializable {
@@ -4815,6 +4873,8 @@ export declare class Trace extends MessageData implements ISerializable {
4815
4873
  });
4816
4874
  }
4817
4875
 
4876
+ declare type UnloadHandler = (itemCtx: IProcessTelemetryUnloadContext, unloadState: ITelemetryUnloadState) => void;
4877
+
4818
4878
  export declare const Util: IUtil;
4819
4879
 
4820
4880
  declare interface XDomainRequest extends XMLHttpRequestEventTarget {
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Application Insights JavaScript SDK - Web, 2.8.0-beta.2203-02
2
+ * Application Insights JavaScript SDK - Web, 2.8.0-beta.2203-03
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  import { AppInsightsDeprecated } from "./ApplicationInsightsDeprecated";
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Application Insights JavaScript SDK - Web, 2.8.0-beta.2203-02
2
+ * Application Insights JavaScript SDK - Web, 2.8.0-beta.2203-03
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  import { stringToBoolOrDefault, ProcessLegacy } from "@microsoft/applicationinsights-common";
package/dist-esm/Init.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Application Insights JavaScript SDK - Web, 2.8.0-beta.2203-02
2
+ * Application Insights JavaScript SDK - Web, 2.8.0-beta.2203-03
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 - Web, 2.8.0-beta.2203-02
2
+ * Application Insights JavaScript SDK - Web, 2.8.0-beta.2203-03
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 - Web, 2.8.0-beta.2203-02
2
+ * Application Insights JavaScript SDK - Web, 2.8.0-beta.2203-03
3
3
  * Copyright (c) Microsoft and contributors. All rights reserved.
4
4
  */
5
5
  export { Initialization as ApplicationInsights, Telemetry } from "./Initialization";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@microsoft/applicationinsights-web",
3
- "version": "2.8.0-beta.2203-02",
3
+ "version": "2.8.0-beta.2203-03",
4
4
  "description": "Microsoft Application Insights JavaScript SDK - Web",
5
5
  "homepage": "https://github.com/microsoft/ApplicationInsights-JS#readme",
6
6
  "author": "Microsoft Application Insights Team",
@@ -66,12 +66,12 @@
66
66
  "dependencies": {
67
67
  "@microsoft/dynamicproto-js": "^1.1.4",
68
68
  "@microsoft/applicationinsights-shims": "2.0.1",
69
- "@microsoft/applicationinsights-analytics-js": "2.8.0-beta.2203-02",
70
- "@microsoft/applicationinsights-channel-js": "2.8.0-beta.2203-02",
71
- "@microsoft/applicationinsights-common": "2.8.0-beta.2203-02",
72
- "@microsoft/applicationinsights-core-js": "2.8.0-beta.2203-02",
73
- "@microsoft/applicationinsights-dependencies-js": "2.8.0-beta.2203-02",
74
- "@microsoft/applicationinsights-properties-js": "2.8.0-beta.2203-02"
69
+ "@microsoft/applicationinsights-analytics-js": "2.8.0-beta.2203-03",
70
+ "@microsoft/applicationinsights-channel-js": "2.8.0-beta.2203-03",
71
+ "@microsoft/applicationinsights-common": "2.8.0-beta.2203-03",
72
+ "@microsoft/applicationinsights-core-js": "2.8.0-beta.2203-03",
73
+ "@microsoft/applicationinsights-dependencies-js": "2.8.0-beta.2203-03",
74
+ "@microsoft/applicationinsights-properties-js": "2.8.0-beta.2203-03"
75
75
  },
76
76
  "license": "MIT",
77
77
  "publishConfig": {