@azure/msal-browser 3.20.0 → 3.21.0

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 (208) hide show
  1. package/dist/app/IPublicClientApplication.d.ts +53 -53
  2. package/dist/app/IPublicClientApplication.mjs +105 -105
  3. package/dist/app/PublicClientApplication.d.ts +293 -293
  4. package/dist/app/PublicClientApplication.mjs +364 -364
  5. package/dist/app/PublicClientNext.d.ts +276 -276
  6. package/dist/app/PublicClientNext.mjs +354 -354
  7. package/dist/broker/nativeBroker/NativeMessageHandler.d.ts +62 -62
  8. package/dist/broker/nativeBroker/NativeMessageHandler.mjs +254 -254
  9. package/dist/broker/nativeBroker/NativeRequest.d.ts +45 -45
  10. package/dist/broker/nativeBroker/NativeResponse.d.ts +48 -48
  11. package/dist/broker/nativeBroker/NativeStatusCodes.d.ts +7 -7
  12. package/dist/broker/nativeBroker/NativeStatusCodes.mjs +11 -11
  13. package/dist/cache/AccountManager.d.ts +48 -48
  14. package/dist/cache/AccountManager.mjs +126 -126
  15. package/dist/cache/AsyncMemoryStorage.d.ts +50 -50
  16. package/dist/cache/AsyncMemoryStorage.mjs +131 -131
  17. package/dist/cache/BrowserCacheManager.d.ts +410 -385
  18. package/dist/cache/BrowserCacheManager.d.ts.map +1 -1
  19. package/dist/cache/BrowserCacheManager.mjs +1364 -1294
  20. package/dist/cache/BrowserCacheManager.mjs.map +1 -1
  21. package/dist/cache/BrowserStorage.d.ts +11 -11
  22. package/dist/cache/BrowserStorage.mjs +32 -32
  23. package/dist/cache/DatabaseStorage.d.ts +56 -56
  24. package/dist/cache/DatabaseStorage.mjs +200 -200
  25. package/dist/cache/IAsyncStorage.d.ts +27 -27
  26. package/dist/cache/ITokenCache.d.ts +11 -11
  27. package/dist/cache/IWindowStorage.d.ts +27 -27
  28. package/dist/cache/MemoryStorage.d.ts +11 -11
  29. package/dist/cache/MemoryStorage.mjs +31 -31
  30. package/dist/cache/TokenCache.d.ts +77 -77
  31. package/dist/cache/TokenCache.mjs +195 -195
  32. package/dist/config/Configuration.d.ts +213 -208
  33. package/dist/config/Configuration.d.ts.map +1 -1
  34. package/dist/config/Configuration.mjs +128 -128
  35. package/dist/config/Configuration.mjs.map +1 -1
  36. package/dist/controllers/ControllerFactory.d.ts +5 -5
  37. package/dist/controllers/ControllerFactory.mjs +25 -25
  38. package/dist/controllers/IController.d.ts +60 -60
  39. package/dist/controllers/NestedAppAuthController.d.ts +202 -202
  40. package/dist/controllers/NestedAppAuthController.mjs +473 -473
  41. package/dist/controllers/StandardController.d.ts +405 -405
  42. package/dist/controllers/StandardController.d.ts.map +1 -1
  43. package/dist/controllers/StandardController.mjs +1334 -1316
  44. package/dist/controllers/StandardController.mjs.map +1 -1
  45. package/dist/controllers/UnknownOperatingContextController.d.ts +86 -86
  46. package/dist/controllers/UnknownOperatingContextController.mjs +256 -256
  47. package/dist/crypto/BrowserCrypto.d.ts +52 -52
  48. package/dist/crypto/BrowserCrypto.mjs +151 -151
  49. package/dist/crypto/CryptoOps.d.ts +74 -74
  50. package/dist/crypto/CryptoOps.mjs +176 -176
  51. package/dist/crypto/PkceGenerator.d.ts +8 -8
  52. package/dist/crypto/PkceGenerator.mjs +54 -54
  53. package/dist/crypto/SignedHttpRequest.d.ts +30 -30
  54. package/dist/crypto/SignedHttpRequest.mjs +39 -39
  55. package/dist/encode/Base64Decode.d.ts +9 -9
  56. package/dist/encode/Base64Decode.mjs +36 -36
  57. package/dist/encode/Base64Encode.d.ts +19 -19
  58. package/dist/encode/Base64Encode.mjs +43 -43
  59. package/dist/error/BrowserAuthError.d.ts +256 -255
  60. package/dist/error/BrowserAuthError.d.ts.map +1 -1
  61. package/dist/error/BrowserAuthError.mjs +265 -264
  62. package/dist/error/BrowserAuthError.mjs.map +1 -1
  63. package/dist/error/BrowserAuthErrorCodes.d.ts +47 -46
  64. package/dist/error/BrowserAuthErrorCodes.d.ts.map +1 -1
  65. package/dist/error/BrowserAuthErrorCodes.mjs +53 -52
  66. package/dist/error/BrowserAuthErrorCodes.mjs.map +1 -1
  67. package/dist/error/BrowserConfigurationAuthError.d.ts +33 -33
  68. package/dist/error/BrowserConfigurationAuthError.mjs +40 -40
  69. package/dist/error/BrowserConfigurationAuthError.mjs.map +1 -1
  70. package/dist/error/BrowserConfigurationAuthErrorCodes.d.ts +3 -3
  71. package/dist/error/BrowserConfigurationAuthErrorCodes.mjs +7 -7
  72. package/dist/error/NativeAuthError.d.ts +29 -29
  73. package/dist/error/NativeAuthError.mjs +60 -60
  74. package/dist/error/NativeAuthErrorCodes.d.ts +2 -2
  75. package/dist/error/NativeAuthErrorCodes.mjs +6 -6
  76. package/dist/error/NestedAppAuthError.d.ts +14 -14
  77. package/dist/error/NestedAppAuthError.mjs +23 -23
  78. package/dist/event/EventHandler.d.ts +41 -41
  79. package/dist/event/EventHandler.mjs +125 -125
  80. package/dist/event/EventMessage.d.ts +25 -25
  81. package/dist/event/EventMessage.mjs +68 -68
  82. package/dist/event/EventType.d.ts +29 -29
  83. package/dist/event/EventType.mjs +32 -32
  84. package/dist/index.d.ts +40 -40
  85. package/dist/index.mjs +1 -1
  86. package/dist/interaction_client/BaseInteractionClient.d.ts +50 -50
  87. package/dist/interaction_client/BaseInteractionClient.mjs +106 -106
  88. package/dist/interaction_client/HybridSpaAuthorizationCodeClient.d.ts +4 -4
  89. package/dist/interaction_client/HybridSpaAuthorizationCodeClient.mjs +10 -10
  90. package/dist/interaction_client/NativeInteractionClient.d.ts +151 -151
  91. package/dist/interaction_client/NativeInteractionClient.mjs +621 -621
  92. package/dist/interaction_client/PopupClient.d.ts +118 -105
  93. package/dist/interaction_client/PopupClient.d.ts.map +1 -1
  94. package/dist/interaction_client/PopupClient.mjs +460 -434
  95. package/dist/interaction_client/PopupClient.mjs.map +1 -1
  96. package/dist/interaction_client/RedirectClient.d.ts +50 -50
  97. package/dist/interaction_client/RedirectClient.d.ts.map +1 -1
  98. package/dist/interaction_client/RedirectClient.mjs +349 -317
  99. package/dist/interaction_client/RedirectClient.mjs.map +1 -1
  100. package/dist/interaction_client/SilentAuthCodeClient.d.ts +23 -23
  101. package/dist/interaction_client/SilentAuthCodeClient.mjs +57 -57
  102. package/dist/interaction_client/SilentCacheClient.d.ts +16 -16
  103. package/dist/interaction_client/SilentCacheClient.mjs +42 -42
  104. package/dist/interaction_client/SilentIframeClient.d.ts +32 -32
  105. package/dist/interaction_client/SilentIframeClient.d.ts.map +1 -1
  106. package/dist/interaction_client/SilentIframeClient.mjs +111 -101
  107. package/dist/interaction_client/SilentIframeClient.mjs.map +1 -1
  108. package/dist/interaction_client/SilentRefreshClient.d.ts +20 -20
  109. package/dist/interaction_client/SilentRefreshClient.mjs +47 -47
  110. package/dist/interaction_client/StandardInteractionClient.d.ts +48 -48
  111. package/dist/interaction_client/StandardInteractionClient.mjs +199 -199
  112. package/dist/interaction_handler/InteractionHandler.d.ts +33 -33
  113. package/dist/interaction_handler/InteractionHandler.mjs +93 -93
  114. package/dist/interaction_handler/RedirectHandler.d.ts +32 -32
  115. package/dist/interaction_handler/RedirectHandler.d.ts.map +1 -1
  116. package/dist/interaction_handler/RedirectHandler.mjs +135 -134
  117. package/dist/interaction_handler/RedirectHandler.mjs.map +1 -1
  118. package/dist/interaction_handler/SilentHandler.d.ts +13 -13
  119. package/dist/interaction_handler/SilentHandler.mjs +134 -134
  120. package/dist/naa/AccountInfo.d.ts +11 -11
  121. package/dist/naa/AuthBridge.d.ts +8 -8
  122. package/dist/naa/AuthResult.d.ts +6 -6
  123. package/dist/naa/BridgeAccountContext.d.ts +12 -12
  124. package/dist/naa/BridgeCapabilities.d.ts +3 -3
  125. package/dist/naa/BridgeError.d.ts +9 -9
  126. package/dist/naa/BridgeError.mjs +7 -7
  127. package/dist/naa/BridgeProxy.d.ts +67 -67
  128. package/dist/naa/BridgeProxy.d.ts.map +1 -1
  129. package/dist/naa/BridgeProxy.mjs +153 -148
  130. package/dist/naa/BridgeProxy.mjs.map +1 -1
  131. package/dist/naa/BridgeRequest.d.ts +7 -7
  132. package/dist/naa/BridgeRequestEnvelope.d.ts +12 -12
  133. package/dist/naa/BridgeResponseEnvelope.d.ts +13 -13
  134. package/dist/naa/BridgeStatusCode.d.ts +11 -11
  135. package/dist/naa/BridgeStatusCode.mjs +14 -14
  136. package/dist/naa/IBridgeProxy.d.ts +10 -10
  137. package/dist/naa/InitContext.d.ts +8 -8
  138. package/dist/naa/TokenRequest.d.ts +18 -18
  139. package/dist/naa/TokenResponse.d.ts +13 -13
  140. package/dist/naa/mapping/NestedAppAuthAdapter.d.ts +35 -35
  141. package/dist/naa/mapping/NestedAppAuthAdapter.mjs +179 -179
  142. package/dist/navigation/INavigationClient.d.ts +16 -16
  143. package/dist/navigation/NavigationClient.d.ts +22 -22
  144. package/dist/navigation/NavigationClient.mjs +40 -40
  145. package/dist/navigation/NavigationOptions.d.ts +12 -12
  146. package/dist/network/FetchClient.d.ts +26 -26
  147. package/dist/network/FetchClient.mjs +99 -99
  148. package/dist/operatingcontext/BaseOperatingContext.d.ts +41 -41
  149. package/dist/operatingcontext/BaseOperatingContext.mjs +94 -94
  150. package/dist/operatingcontext/NestedAppOperatingContext.d.ts +34 -34
  151. package/dist/operatingcontext/NestedAppOperatingContext.mjs +71 -71
  152. package/dist/operatingcontext/StandardOperatingContext.d.ts +25 -25
  153. package/dist/operatingcontext/StandardOperatingContext.mjs +43 -43
  154. package/dist/operatingcontext/UnknownOperatingContext.d.ts +25 -25
  155. package/dist/operatingcontext/UnknownOperatingContext.mjs +42 -42
  156. package/dist/packageMetadata.d.ts +2 -2
  157. package/dist/packageMetadata.mjs +4 -4
  158. package/dist/request/AuthorizationCodeRequest.d.ts +8 -8
  159. package/dist/request/AuthorizationUrlRequest.d.ts +8 -8
  160. package/dist/request/ClearCacheRequest.d.ts +10 -10
  161. package/dist/request/EndSessionPopupRequest.d.ts +18 -18
  162. package/dist/request/EndSessionRequest.d.ts +15 -15
  163. package/dist/request/InitializeApplicationRequest.d.ts +8 -8
  164. package/dist/request/PopupRequest.d.ts +34 -34
  165. package/dist/request/PopupWindowAttributes.d.ts +15 -15
  166. package/dist/request/RedirectRequest.d.ts +40 -35
  167. package/dist/request/RedirectRequest.d.ts.map +1 -1
  168. package/dist/request/RequestHelpers.d.ts +13 -13
  169. package/dist/request/RequestHelpers.mjs +53 -53
  170. package/dist/request/SilentRequest.d.ts +33 -33
  171. package/dist/request/SsoSilentRequest.d.ts +29 -29
  172. package/dist/response/AuthenticationResult.d.ts +4 -4
  173. package/dist/response/ResponseHandler.d.ts +7 -7
  174. package/dist/response/ResponseHandler.mjs +36 -36
  175. package/dist/telemetry/BrowserPerformanceClient.d.ts +38 -34
  176. package/dist/telemetry/BrowserPerformanceClient.d.ts.map +1 -1
  177. package/dist/telemetry/BrowserPerformanceClient.mjs +163 -163
  178. package/dist/telemetry/BrowserPerformanceClient.mjs.map +1 -1
  179. package/dist/telemetry/BrowserPerformanceMeasurement.d.ts +21 -21
  180. package/dist/telemetry/BrowserPerformanceMeasurement.mjs +92 -92
  181. package/dist/utils/BrowserConstants.d.ts +182 -180
  182. package/dist/utils/BrowserConstants.d.ts.map +1 -1
  183. package/dist/utils/BrowserConstants.mjs +214 -212
  184. package/dist/utils/BrowserConstants.mjs.map +1 -1
  185. package/dist/utils/BrowserProtocolUtils.d.ts +11 -11
  186. package/dist/utils/BrowserProtocolUtils.mjs +21 -21
  187. package/dist/utils/BrowserUtils.d.ts +75 -75
  188. package/dist/utils/BrowserUtils.mjs +157 -157
  189. package/lib/msal-browser.cjs +19027 -18857
  190. package/lib/msal-browser.cjs.map +1 -1
  191. package/lib/msal-browser.js +19027 -18857
  192. package/lib/msal-browser.js.map +1 -1
  193. package/lib/msal-browser.min.js +62 -62
  194. package/package.json +2 -2
  195. package/src/cache/BrowserCacheManager.ts +95 -0
  196. package/src/config/Configuration.ts +9 -1
  197. package/src/controllers/StandardController.ts +30 -12
  198. package/src/error/BrowserAuthError.ts +2 -0
  199. package/src/error/BrowserAuthErrorCodes.ts +1 -0
  200. package/src/interaction_client/PopupClient.ts +202 -117
  201. package/src/interaction_client/RedirectClient.ts +62 -2
  202. package/src/interaction_client/SilentIframeClient.ts +41 -3
  203. package/src/interaction_handler/RedirectHandler.ts +1 -0
  204. package/src/naa/BridgeProxy.ts +7 -2
  205. package/src/packageMetadata.ts +1 -1
  206. package/src/request/RedirectRequest.ts +5 -0
  207. package/src/telemetry/BrowserPerformanceClient.ts +1 -1
  208. package/src/utils/BrowserConstants.ts +2 -0
@@ -1,35 +1,39 @@
1
- import { InProgressPerformanceEvent, IPerformanceClient, PerformanceClient, PerformanceEvents } from "@azure/msal-common";
2
- import { Configuration } from "../config/Configuration";
3
- export declare class BrowserPerformanceClient extends PerformanceClient implements IPerformanceClient {
4
- constructor(configuration: Configuration, intFields?: Set<string>, abbreviations?: Map<string, string>);
5
- generateId(): string;
6
- private getPageVisibility;
7
- private deleteIncompleteSubMeasurements;
8
- /**
9
- * Starts measuring performance for a given operation. Returns a function that should be used to end the measurement.
10
- * Also captures browser page visibilityState.
11
- *
12
- * @param {PerformanceEvents} measureName
13
- * @param {?string} [correlationId]
14
- * @returns {((event?: Partial<PerformanceEvent>) => PerformanceEvent| null)}
15
- */
16
- startMeasurement(measureName: string, correlationId?: string): InProgressPerformanceEvent;
17
- /**
18
- * Adds pre-queue time to preQueueTimeByCorrelationId map.
19
- * @param {PerformanceEvents} eventName
20
- * @param {?string} correlationId
21
- * @returns
22
- */
23
- setPreQueueTime(eventName: PerformanceEvents, correlationId?: string): void;
24
- /**
25
- * Calculates and adds queue time measurement for given performance event.
26
- *
27
- * @param {PerformanceEvents} eventName
28
- * @param {?string} correlationId
29
- * @param {?number} queueTime
30
- * @param {?boolean} manuallyCompleted - indicator for manually completed queue measurements
31
- * @returns
32
- */
33
- addQueueMeasurement(eventName: string, correlationId?: string, queueTime?: number, manuallyCompleted?: boolean): void;
34
- }
1
+ import { InProgressPerformanceEvent, IPerformanceClient, PerformanceClient, PerformanceEvents } from "@azure/msal-common";
2
+ import { Configuration } from "../config/Configuration";
3
+ /**
4
+ * Returns boolean, indicating whether browser supports window.performance.now() function.
5
+ */
6
+ export declare function supportsBrowserPerformanceNow(): boolean;
7
+ export declare class BrowserPerformanceClient extends PerformanceClient implements IPerformanceClient {
8
+ constructor(configuration: Configuration, intFields?: Set<string>, abbreviations?: Map<string, string>);
9
+ generateId(): string;
10
+ private getPageVisibility;
11
+ private deleteIncompleteSubMeasurements;
12
+ /**
13
+ * Starts measuring performance for a given operation. Returns a function that should be used to end the measurement.
14
+ * Also captures browser page visibilityState.
15
+ *
16
+ * @param {PerformanceEvents} measureName
17
+ * @param {?string} [correlationId]
18
+ * @returns {((event?: Partial<PerformanceEvent>) => PerformanceEvent| null)}
19
+ */
20
+ startMeasurement(measureName: string, correlationId?: string): InProgressPerformanceEvent;
21
+ /**
22
+ * Adds pre-queue time to preQueueTimeByCorrelationId map.
23
+ * @param {PerformanceEvents} eventName
24
+ * @param {?string} correlationId
25
+ * @returns
26
+ */
27
+ setPreQueueTime(eventName: PerformanceEvents, correlationId?: string): void;
28
+ /**
29
+ * Calculates and adds queue time measurement for given performance event.
30
+ *
31
+ * @param {PerformanceEvents} eventName
32
+ * @param {?string} correlationId
33
+ * @param {?number} queueTime
34
+ * @param {?boolean} manuallyCompleted - indicator for manually completed queue measurements
35
+ * @returns
36
+ */
37
+ addQueueMeasurement(eventName: string, correlationId?: string, queueTime?: number, manuallyCompleted?: boolean): void;
38
+ }
35
39
  //# sourceMappingURL=BrowserPerformanceClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BrowserPerformanceClient.d.ts","sourceRoot":"","sources":["../../src/telemetry/BrowserPerformanceClient.ts"],"names":[],"mappings":"AAKA,OAAO,EAEH,0BAA0B,EAC1B,kBAAkB,EAElB,iBAAiB,EAEjB,iBAAiB,EAGpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAmDxD,qBAAa,wBACT,SAAQ,iBACR,YAAW,kBAAkB;gBAGzB,aAAa,EAAE,aAAa,EAC5B,SAAS,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EACvB,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAqBvC,UAAU,IAAI,MAAM;IAIpB,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,+BAA+B;IA0BvC;;;;;;;OAOG;IACH,gBAAgB,CACZ,WAAW,EAAE,MAAM,EACnB,aAAa,CAAC,EAAE,MAAM,GACvB,0BAA0B;IAuD7B;;;;;OAKG;IACH,eAAe,CACX,SAAS,EAAE,iBAAiB,EAC5B,aAAa,CAAC,EAAE,MAAM,GACvB,IAAI;IAuCP;;;;;;;;OAQG;IACH,mBAAmB,CACf,SAAS,EAAE,MAAM,EACjB,aAAa,CAAC,EAAE,MAAM,EACtB,SAAS,CAAC,EAAE,MAAM,EAClB,iBAAiB,CAAC,EAAE,OAAO,GAC5B,IAAI;CA+BV"}
1
+ {"version":3,"file":"BrowserPerformanceClient.d.ts","sourceRoot":"","sources":["../../src/telemetry/BrowserPerformanceClient.ts"],"names":[],"mappings":"AAKA,OAAO,EAEH,0BAA0B,EAC1B,kBAAkB,EAElB,iBAAiB,EAEjB,iBAAiB,EAGpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAyBxD;;GAEG;AACH,wBAAgB,6BAA6B,IAAI,OAAO,CAMvD;AAiBD,qBAAa,wBACT,SAAQ,iBACR,YAAW,kBAAkB;gBAGzB,aAAa,EAAE,aAAa,EAC5B,SAAS,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,EACvB,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAqBvC,UAAU,IAAI,MAAM;IAIpB,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,+BAA+B;IA0BvC;;;;;;;OAOG;IACH,gBAAgB,CACZ,WAAW,EAAE,MAAM,EACnB,aAAa,CAAC,EAAE,MAAM,GACvB,0BAA0B;IAuD7B;;;;;OAKG;IACH,eAAe,CACX,SAAS,EAAE,iBAAiB,EAC5B,aAAa,CAAC,EAAE,MAAM,GACvB,IAAI;IAuCP;;;;;;;;OAQG;IACH,mBAAmB,CACf,SAAS,EAAE,MAAM,EACjB,aAAa,CAAC,EAAE,MAAM,EACtB,SAAS,CAAC,EAAE,MAAM,EAClB,iBAAiB,CAAC,EAAE,OAAO,GAC5B,IAAI;CA+BV"}
@@ -1,172 +1,172 @@
1
- /*! @azure/msal-browser v3.20.0 2024-07-23 */
1
+ /*! @azure/msal-browser v3.21.0 2024-08-13 */
2
2
  'use strict';
3
3
  import { PerformanceClient, Constants, Logger } from '@azure/msal-common';
4
4
  import { name, version } from '../packageMetadata.mjs';
5
5
  import { BrowserCacheLocation, BROWSER_PERF_ENABLED_KEY } from '../utils/BrowserConstants.mjs';
6
6
  import { createNewGuid } from '../crypto/BrowserCrypto.mjs';
7
7
 
8
- /*
9
- * Copyright (c) Microsoft Corporation. All rights reserved.
10
- * Licensed under the MIT License.
11
- */
12
- /**
13
- * Returns browser performance measurement module if session flag is enabled. Returns undefined otherwise.
14
- */
15
- function getPerfMeasurementModule() {
16
- let sessionStorage;
17
- try {
18
- sessionStorage = window[BrowserCacheLocation.SessionStorage];
19
- const perfEnabled = sessionStorage?.getItem(BROWSER_PERF_ENABLED_KEY);
20
- if (Number(perfEnabled) === 1) {
21
- return import('./BrowserPerformanceMeasurement.mjs');
22
- }
23
- // Mute errors if it's a non-browser environment or cookies are blocked.
24
- }
25
- catch (e) { }
26
- return undefined;
27
- }
28
- /**
29
- * Returns boolean, indicating whether browser supports window.performance.now() function.
30
- */
31
- function supportsBrowserPerformanceNow() {
32
- return (typeof window !== "undefined" &&
33
- typeof window.performance !== "undefined" &&
34
- typeof window.performance.now === "function");
35
- }
36
- /**
37
- * Returns event duration in milliseconds using window performance API if available. Returns undefined otherwise.
38
- * @param startTime {DOMHighResTimeStamp | undefined}
39
- * @returns {number | undefined}
40
- */
41
- function getPerfDurationMs(startTime) {
42
- if (!startTime || !supportsBrowserPerformanceNow()) {
43
- return undefined;
44
- }
45
- return Math.round(window.performance.now() - startTime);
46
- }
47
- class BrowserPerformanceClient extends PerformanceClient {
48
- constructor(configuration, intFields, abbreviations) {
49
- super(configuration.auth.clientId, configuration.auth.authority || `${Constants.DEFAULT_AUTHORITY}`, new Logger(configuration.system?.loggerOptions || {}, name, version), name, version, configuration.telemetry?.application || {
50
- appName: "",
51
- appVersion: "",
52
- }, intFields, abbreviations);
53
- }
54
- generateId() {
55
- return createNewGuid();
56
- }
57
- getPageVisibility() {
58
- return document.visibilityState?.toString() || null;
59
- }
60
- deleteIncompleteSubMeasurements(inProgressEvent) {
61
- void getPerfMeasurementModule()?.then((module) => {
62
- const rootEvent = this.eventsByCorrelationId.get(inProgressEvent.event.correlationId);
63
- const isRootEvent = rootEvent &&
64
- rootEvent.eventId === inProgressEvent.event.eventId;
65
- const incompleteMeasurements = [];
66
- if (isRootEvent && rootEvent?.incompleteSubMeasurements) {
67
- rootEvent.incompleteSubMeasurements.forEach((subMeasurement) => {
68
- incompleteMeasurements.push({ ...subMeasurement });
69
- });
70
- }
71
- // Clean up remaining marks for incomplete sub-measurements
72
- module.BrowserPerformanceMeasurement.flushMeasurements(inProgressEvent.event.correlationId, incompleteMeasurements);
73
- });
74
- }
75
- /**
76
- * Starts measuring performance for a given operation. Returns a function that should be used to end the measurement.
77
- * Also captures browser page visibilityState.
78
- *
79
- * @param {PerformanceEvents} measureName
80
- * @param {?string} [correlationId]
81
- * @returns {((event?: Partial<PerformanceEvent>) => PerformanceEvent| null)}
82
- */
83
- startMeasurement(measureName, correlationId) {
84
- // Capture page visibilityState and then invoke start/end measurement
85
- const startPageVisibility = this.getPageVisibility();
86
- const inProgressEvent = super.startMeasurement(measureName, correlationId);
87
- const startTime = supportsBrowserPerformanceNow()
88
- ? window.performance.now()
89
- : undefined;
90
- const browserMeasurement = getPerfMeasurementModule()?.then((module) => {
91
- return new module.BrowserPerformanceMeasurement(measureName, inProgressEvent.event.correlationId);
92
- });
93
- void browserMeasurement?.then((measurement) => measurement.startMeasurement());
94
- return {
95
- ...inProgressEvent,
96
- end: (event, error) => {
97
- const res = inProgressEvent.end({
98
- ...event,
99
- startPageVisibility,
100
- endPageVisibility: this.getPageVisibility(),
101
- durationMs: getPerfDurationMs(startTime),
102
- }, error);
103
- void browserMeasurement?.then((measurement) => measurement.endMeasurement());
104
- this.deleteIncompleteSubMeasurements(inProgressEvent);
105
- return res;
106
- },
107
- discard: () => {
108
- inProgressEvent.discard();
109
- void browserMeasurement?.then((measurement) => measurement.flushMeasurement());
110
- this.deleteIncompleteSubMeasurements(inProgressEvent);
111
- },
112
- };
113
- }
114
- /**
115
- * Adds pre-queue time to preQueueTimeByCorrelationId map.
116
- * @param {PerformanceEvents} eventName
117
- * @param {?string} correlationId
118
- * @returns
119
- */
120
- setPreQueueTime(eventName, correlationId) {
121
- if (!supportsBrowserPerformanceNow()) {
122
- this.logger.trace(`BrowserPerformanceClient: window performance API not available, unable to set telemetry queue time for ${eventName}`);
123
- return;
124
- }
125
- if (!correlationId) {
126
- this.logger.trace(`BrowserPerformanceClient: correlationId for ${eventName} not provided, unable to set telemetry queue time`);
127
- return;
128
- }
129
- const preQueueEvent = this.preQueueTimeByCorrelationId.get(correlationId);
130
- /**
131
- * Manually complete queue measurement if there is an incomplete pre-queue event.
132
- * Incomplete pre-queue events are instrumentation bugs that should be fixed.
133
- */
134
- if (preQueueEvent) {
135
- this.logger.trace(`BrowserPerformanceClient: Incomplete pre-queue ${preQueueEvent.name} found`, correlationId);
136
- this.addQueueMeasurement(preQueueEvent.name, correlationId, undefined, true);
137
- }
138
- this.preQueueTimeByCorrelationId.set(correlationId, {
139
- name: eventName,
140
- time: window.performance.now(),
141
- });
142
- }
143
- /**
144
- * Calculates and adds queue time measurement for given performance event.
145
- *
146
- * @param {PerformanceEvents} eventName
147
- * @param {?string} correlationId
148
- * @param {?number} queueTime
149
- * @param {?boolean} manuallyCompleted - indicator for manually completed queue measurements
150
- * @returns
151
- */
152
- addQueueMeasurement(eventName, correlationId, queueTime, manuallyCompleted) {
153
- if (!supportsBrowserPerformanceNow()) {
154
- this.logger.trace(`BrowserPerformanceClient: window performance API not available, unable to add queue measurement for ${eventName}`);
155
- return;
156
- }
157
- if (!correlationId) {
158
- this.logger.trace(`BrowserPerformanceClient: correlationId for ${eventName} not provided, unable to add queue measurement`);
159
- return;
160
- }
161
- const preQueueTime = super.getPreQueueTime(eventName, correlationId);
162
- if (!preQueueTime) {
163
- return;
164
- }
165
- const currentTime = window.performance.now();
166
- const resQueueTime = queueTime || super.calculateQueuedTime(preQueueTime, currentTime);
167
- return super.addQueueMeasurement(eventName, correlationId, resQueueTime, manuallyCompleted);
168
- }
8
+ /*
9
+ * Copyright (c) Microsoft Corporation. All rights reserved.
10
+ * Licensed under the MIT License.
11
+ */
12
+ /**
13
+ * Returns browser performance measurement module if session flag is enabled. Returns undefined otherwise.
14
+ */
15
+ function getPerfMeasurementModule() {
16
+ let sessionStorage;
17
+ try {
18
+ sessionStorage = window[BrowserCacheLocation.SessionStorage];
19
+ const perfEnabled = sessionStorage?.getItem(BROWSER_PERF_ENABLED_KEY);
20
+ if (Number(perfEnabled) === 1) {
21
+ return import('./BrowserPerformanceMeasurement.mjs');
22
+ }
23
+ // Mute errors if it's a non-browser environment or cookies are blocked.
24
+ }
25
+ catch (e) { }
26
+ return undefined;
27
+ }
28
+ /**
29
+ * Returns boolean, indicating whether browser supports window.performance.now() function.
30
+ */
31
+ function supportsBrowserPerformanceNow() {
32
+ return (typeof window !== "undefined" &&
33
+ typeof window.performance !== "undefined" &&
34
+ typeof window.performance.now === "function");
35
+ }
36
+ /**
37
+ * Returns event duration in milliseconds using window performance API if available. Returns undefined otherwise.
38
+ * @param startTime {DOMHighResTimeStamp | undefined}
39
+ * @returns {number | undefined}
40
+ */
41
+ function getPerfDurationMs(startTime) {
42
+ if (!startTime || !supportsBrowserPerformanceNow()) {
43
+ return undefined;
44
+ }
45
+ return Math.round(window.performance.now() - startTime);
46
+ }
47
+ class BrowserPerformanceClient extends PerformanceClient {
48
+ constructor(configuration, intFields, abbreviations) {
49
+ super(configuration.auth.clientId, configuration.auth.authority || `${Constants.DEFAULT_AUTHORITY}`, new Logger(configuration.system?.loggerOptions || {}, name, version), name, version, configuration.telemetry?.application || {
50
+ appName: "",
51
+ appVersion: "",
52
+ }, intFields, abbreviations);
53
+ }
54
+ generateId() {
55
+ return createNewGuid();
56
+ }
57
+ getPageVisibility() {
58
+ return document.visibilityState?.toString() || null;
59
+ }
60
+ deleteIncompleteSubMeasurements(inProgressEvent) {
61
+ void getPerfMeasurementModule()?.then((module) => {
62
+ const rootEvent = this.eventsByCorrelationId.get(inProgressEvent.event.correlationId);
63
+ const isRootEvent = rootEvent &&
64
+ rootEvent.eventId === inProgressEvent.event.eventId;
65
+ const incompleteMeasurements = [];
66
+ if (isRootEvent && rootEvent?.incompleteSubMeasurements) {
67
+ rootEvent.incompleteSubMeasurements.forEach((subMeasurement) => {
68
+ incompleteMeasurements.push({ ...subMeasurement });
69
+ });
70
+ }
71
+ // Clean up remaining marks for incomplete sub-measurements
72
+ module.BrowserPerformanceMeasurement.flushMeasurements(inProgressEvent.event.correlationId, incompleteMeasurements);
73
+ });
74
+ }
75
+ /**
76
+ * Starts measuring performance for a given operation. Returns a function that should be used to end the measurement.
77
+ * Also captures browser page visibilityState.
78
+ *
79
+ * @param {PerformanceEvents} measureName
80
+ * @param {?string} [correlationId]
81
+ * @returns {((event?: Partial<PerformanceEvent>) => PerformanceEvent| null)}
82
+ */
83
+ startMeasurement(measureName, correlationId) {
84
+ // Capture page visibilityState and then invoke start/end measurement
85
+ const startPageVisibility = this.getPageVisibility();
86
+ const inProgressEvent = super.startMeasurement(measureName, correlationId);
87
+ const startTime = supportsBrowserPerformanceNow()
88
+ ? window.performance.now()
89
+ : undefined;
90
+ const browserMeasurement = getPerfMeasurementModule()?.then((module) => {
91
+ return new module.BrowserPerformanceMeasurement(measureName, inProgressEvent.event.correlationId);
92
+ });
93
+ void browserMeasurement?.then((measurement) => measurement.startMeasurement());
94
+ return {
95
+ ...inProgressEvent,
96
+ end: (event, error) => {
97
+ const res = inProgressEvent.end({
98
+ ...event,
99
+ startPageVisibility,
100
+ endPageVisibility: this.getPageVisibility(),
101
+ durationMs: getPerfDurationMs(startTime),
102
+ }, error);
103
+ void browserMeasurement?.then((measurement) => measurement.endMeasurement());
104
+ this.deleteIncompleteSubMeasurements(inProgressEvent);
105
+ return res;
106
+ },
107
+ discard: () => {
108
+ inProgressEvent.discard();
109
+ void browserMeasurement?.then((measurement) => measurement.flushMeasurement());
110
+ this.deleteIncompleteSubMeasurements(inProgressEvent);
111
+ },
112
+ };
113
+ }
114
+ /**
115
+ * Adds pre-queue time to preQueueTimeByCorrelationId map.
116
+ * @param {PerformanceEvents} eventName
117
+ * @param {?string} correlationId
118
+ * @returns
119
+ */
120
+ setPreQueueTime(eventName, correlationId) {
121
+ if (!supportsBrowserPerformanceNow()) {
122
+ this.logger.trace(`BrowserPerformanceClient: window performance API not available, unable to set telemetry queue time for ${eventName}`);
123
+ return;
124
+ }
125
+ if (!correlationId) {
126
+ this.logger.trace(`BrowserPerformanceClient: correlationId for ${eventName} not provided, unable to set telemetry queue time`);
127
+ return;
128
+ }
129
+ const preQueueEvent = this.preQueueTimeByCorrelationId.get(correlationId);
130
+ /**
131
+ * Manually complete queue measurement if there is an incomplete pre-queue event.
132
+ * Incomplete pre-queue events are instrumentation bugs that should be fixed.
133
+ */
134
+ if (preQueueEvent) {
135
+ this.logger.trace(`BrowserPerformanceClient: Incomplete pre-queue ${preQueueEvent.name} found`, correlationId);
136
+ this.addQueueMeasurement(preQueueEvent.name, correlationId, undefined, true);
137
+ }
138
+ this.preQueueTimeByCorrelationId.set(correlationId, {
139
+ name: eventName,
140
+ time: window.performance.now(),
141
+ });
142
+ }
143
+ /**
144
+ * Calculates and adds queue time measurement for given performance event.
145
+ *
146
+ * @param {PerformanceEvents} eventName
147
+ * @param {?string} correlationId
148
+ * @param {?number} queueTime
149
+ * @param {?boolean} manuallyCompleted - indicator for manually completed queue measurements
150
+ * @returns
151
+ */
152
+ addQueueMeasurement(eventName, correlationId, queueTime, manuallyCompleted) {
153
+ if (!supportsBrowserPerformanceNow()) {
154
+ this.logger.trace(`BrowserPerformanceClient: window performance API not available, unable to add queue measurement for ${eventName}`);
155
+ return;
156
+ }
157
+ if (!correlationId) {
158
+ this.logger.trace(`BrowserPerformanceClient: correlationId for ${eventName} not provided, unable to add queue measurement`);
159
+ return;
160
+ }
161
+ const preQueueTime = super.getPreQueueTime(eventName, correlationId);
162
+ if (!preQueueTime) {
163
+ return;
164
+ }
165
+ const currentTime = window.performance.now();
166
+ const resQueueTime = queueTime || super.calculateQueuedTime(preQueueTime, currentTime);
167
+ return super.addQueueMeasurement(eventName, correlationId, resQueueTime, manuallyCompleted);
168
+ }
169
169
  }
170
170
 
171
- export { BrowserPerformanceClient };
171
+ export { BrowserPerformanceClient, supportsBrowserPerformanceNow };
172
172
  //# sourceMappingURL=BrowserPerformanceClient.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"BrowserPerformanceClient.mjs","sources":["../../src/telemetry/BrowserPerformanceClient.ts"],"sourcesContent":[null],"names":["BrowserCrypto.createNewGuid"],"mappings":"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"}
1
+ {"version":3,"file":"BrowserPerformanceClient.mjs","sources":["../../src/telemetry/BrowserPerformanceClient.ts"],"sourcesContent":[null],"names":["BrowserCrypto.createNewGuid"],"mappings":"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"}
@@ -1,22 +1,22 @@
1
- import { IPerformanceMeasurement, SubMeasurement } from "@azure/msal-common";
2
- export declare class BrowserPerformanceMeasurement implements IPerformanceMeasurement {
3
- private readonly measureName;
4
- private readonly correlationId;
5
- private readonly startMark;
6
- private readonly endMark;
7
- constructor(name: string, correlationId: string);
8
- private static makeMeasureName;
9
- private static makeStartMark;
10
- private static makeEndMark;
11
- static supportsBrowserPerformance(): boolean;
12
- /**
13
- * Flush browser marks and measurements.
14
- * @param {string} correlationId
15
- * @param {SubMeasurement} measurements
16
- */
17
- static flushMeasurements(correlationId: string, measurements: SubMeasurement[]): void;
18
- startMeasurement(): void;
19
- endMeasurement(): void;
20
- flushMeasurement(): number | null;
21
- }
1
+ import { IPerformanceMeasurement, SubMeasurement } from "@azure/msal-common";
2
+ export declare class BrowserPerformanceMeasurement implements IPerformanceMeasurement {
3
+ private readonly measureName;
4
+ private readonly correlationId;
5
+ private readonly startMark;
6
+ private readonly endMark;
7
+ constructor(name: string, correlationId: string);
8
+ private static makeMeasureName;
9
+ private static makeStartMark;
10
+ private static makeEndMark;
11
+ static supportsBrowserPerformance(): boolean;
12
+ /**
13
+ * Flush browser marks and measurements.
14
+ * @param {string} correlationId
15
+ * @param {SubMeasurement} measurements
16
+ */
17
+ static flushMeasurements(correlationId: string, measurements: SubMeasurement[]): void;
18
+ startMeasurement(): void;
19
+ endMeasurement(): void;
20
+ flushMeasurement(): number | null;
21
+ }
22
22
  //# sourceMappingURL=BrowserPerformanceMeasurement.d.ts.map