@azure/msal-common 14.14.2 → 14.15.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 (558) hide show
  1. package/browser/README.md +1 -0
  2. package/browser/package.json +5 -0
  3. package/dist/account/AccountInfo.d.ts +1 -1
  4. package/dist/account/AccountInfo.d.ts.map +1 -1
  5. package/dist/account/AccountInfo.mjs +1 -1
  6. package/dist/account/AuthToken.d.ts +1 -1
  7. package/dist/account/AuthToken.d.ts.map +1 -1
  8. package/dist/account/AuthToken.mjs +1 -1
  9. package/dist/account/CcsCredential.mjs +1 -1
  10. package/dist/account/ClientInfo.mjs +1 -1
  11. package/dist/account/TokenClaims.mjs +1 -1
  12. package/dist/authority/Authority.d.ts +12 -12
  13. package/dist/authority/Authority.d.ts.map +1 -1
  14. package/dist/authority/Authority.mjs +1 -1
  15. package/dist/authority/AuthorityFactory.d.ts +6 -6
  16. package/dist/authority/AuthorityFactory.d.ts.map +1 -1
  17. package/dist/authority/AuthorityFactory.mjs +1 -1
  18. package/dist/authority/AuthorityMetadata.d.ts +6 -6
  19. package/dist/authority/AuthorityMetadata.d.ts.map +1 -1
  20. package/dist/authority/AuthorityMetadata.mjs +1 -1
  21. package/dist/authority/AuthorityOptions.d.ts +4 -4
  22. package/dist/authority/AuthorityOptions.d.ts.map +1 -1
  23. package/dist/authority/AuthorityOptions.mjs +1 -1
  24. package/dist/authority/AuthorityType.mjs +1 -1
  25. package/dist/authority/AzureRegionConfiguration.d.ts +1 -1
  26. package/dist/authority/AzureRegionConfiguration.d.ts.map +1 -1
  27. package/dist/authority/CloudInstanceDiscoveryErrorResponse.mjs +1 -1
  28. package/dist/authority/CloudInstanceDiscoveryResponse.d.ts +1 -1
  29. package/dist/authority/CloudInstanceDiscoveryResponse.d.ts.map +1 -1
  30. package/dist/authority/CloudInstanceDiscoveryResponse.mjs +1 -1
  31. package/dist/authority/OIDCOptions.d.ts +1 -1
  32. package/dist/authority/OIDCOptions.d.ts.map +1 -1
  33. package/dist/authority/OpenIdConfigResponse.mjs +1 -1
  34. package/dist/authority/ProtocolMode.mjs +1 -1
  35. package/dist/authority/RegionDiscovery.d.ts +5 -5
  36. package/dist/authority/RegionDiscovery.d.ts.map +1 -1
  37. package/dist/authority/RegionDiscovery.mjs +1 -1
  38. package/dist/authority/RegionDiscoveryMetadata.d.ts +1 -1
  39. package/dist/authority/RegionDiscoveryMetadata.d.ts.map +1 -1
  40. package/dist/broker/nativeBroker/INativeBrokerPlugin.d.ts +6 -6
  41. package/dist/broker/nativeBroker/INativeBrokerPlugin.d.ts.map +1 -1
  42. package/dist/cache/CacheManager.d.ts +18 -18
  43. package/dist/cache/CacheManager.d.ts.map +1 -1
  44. package/dist/cache/CacheManager.mjs +1 -1
  45. package/dist/cache/entities/AccessTokenEntity.d.ts +2 -2
  46. package/dist/cache/entities/AccessTokenEntity.d.ts.map +1 -1
  47. package/dist/cache/entities/AccountEntity.d.ts +6 -6
  48. package/dist/cache/entities/AccountEntity.d.ts.map +1 -1
  49. package/dist/cache/entities/AccountEntity.mjs +1 -1
  50. package/dist/cache/entities/CacheRecord.d.ts +5 -5
  51. package/dist/cache/entities/CacheRecord.d.ts.map +1 -1
  52. package/dist/cache/entities/CredentialEntity.d.ts +1 -1
  53. package/dist/cache/entities/CredentialEntity.d.ts.map +1 -1
  54. package/dist/cache/entities/IdTokenEntity.d.ts +1 -1
  55. package/dist/cache/entities/IdTokenEntity.d.ts.map +1 -1
  56. package/dist/cache/entities/RefreshTokenEntity.d.ts +1 -1
  57. package/dist/cache/entities/RefreshTokenEntity.d.ts.map +1 -1
  58. package/dist/cache/interface/ICacheManager.d.ts +12 -12
  59. package/dist/cache/interface/ICacheManager.d.ts.map +1 -1
  60. package/dist/cache/interface/ICachePlugin.d.ts +1 -1
  61. package/dist/cache/interface/ICachePlugin.d.ts.map +1 -1
  62. package/dist/cache/persistence/TokenCacheContext.d.ts +1 -1
  63. package/dist/cache/persistence/TokenCacheContext.d.ts.map +1 -1
  64. package/dist/cache/persistence/TokenCacheContext.mjs +1 -1
  65. package/dist/cache/utils/CacheHelpers.d.ts +9 -9
  66. package/dist/cache/utils/CacheHelpers.d.ts.map +1 -1
  67. package/dist/cache/utils/CacheHelpers.mjs +1 -1
  68. package/dist/cache/utils/CacheTypes.d.ts +11 -11
  69. package/dist/cache/utils/CacheTypes.d.ts.map +1 -1
  70. package/dist/client/AuthorizationCodeClient.d.ts +10 -9
  71. package/dist/client/AuthorizationCodeClient.d.ts.map +1 -1
  72. package/dist/client/AuthorizationCodeClient.mjs +13 -5
  73. package/dist/client/AuthorizationCodeClient.mjs.map +1 -1
  74. package/dist/client/BaseClient.d.ts +13 -13
  75. package/dist/client/BaseClient.d.ts.map +1 -1
  76. package/dist/client/BaseClient.mjs +1 -1
  77. package/dist/client/RefreshTokenClient.d.ts +6 -6
  78. package/dist/client/RefreshTokenClient.d.ts.map +1 -1
  79. package/dist/client/RefreshTokenClient.mjs +1 -1
  80. package/dist/client/SilentFlowClient.d.ts +6 -6
  81. package/dist/client/SilentFlowClient.d.ts.map +1 -1
  82. package/dist/client/SilentFlowClient.mjs +1 -1
  83. package/dist/config/ClientConfiguration.d.ts +13 -11
  84. package/dist/config/ClientConfiguration.d.ts.map +1 -1
  85. package/dist/config/ClientConfiguration.mjs +2 -1
  86. package/dist/config/ClientConfiguration.mjs.map +1 -1
  87. package/dist/constants/AADServerParamKeys.mjs +1 -1
  88. package/dist/crypto/ICrypto.d.ts +2 -2
  89. package/dist/crypto/ICrypto.d.ts.map +1 -1
  90. package/dist/crypto/ICrypto.mjs +1 -1
  91. package/dist/crypto/JoseHeader.d.ts +1 -1
  92. package/dist/crypto/JoseHeader.d.ts.map +1 -1
  93. package/dist/crypto/JoseHeader.mjs +1 -1
  94. package/dist/crypto/PopTokenGenerator.d.ts +3 -3
  95. package/dist/crypto/PopTokenGenerator.d.ts.map +1 -1
  96. package/dist/crypto/PopTokenGenerator.mjs +1 -1
  97. package/dist/crypto/SignedHttpRequest.d.ts +1 -1
  98. package/dist/crypto/SignedHttpRequest.d.ts.map +1 -1
  99. package/dist/error/AuthError.d.ts +1 -1
  100. package/dist/error/AuthError.d.ts.map +1 -1
  101. package/dist/error/AuthError.mjs +1 -1
  102. package/dist/error/AuthErrorCodes.mjs +1 -1
  103. package/dist/error/CacheError.d.ts +1 -1
  104. package/dist/error/CacheError.d.ts.map +1 -1
  105. package/dist/error/CacheError.mjs +1 -1
  106. package/dist/error/CacheErrorCodes.mjs +1 -1
  107. package/dist/error/ClientAuthError.d.ts +2 -2
  108. package/dist/error/ClientAuthError.d.ts.map +1 -1
  109. package/dist/error/ClientAuthError.mjs +1 -1
  110. package/dist/error/ClientAuthErrorCodes.mjs +1 -1
  111. package/dist/error/ClientConfigurationError.d.ts +2 -2
  112. package/dist/error/ClientConfigurationError.d.ts.map +1 -1
  113. package/dist/error/ClientConfigurationError.mjs +1 -1
  114. package/dist/error/ClientConfigurationErrorCodes.mjs +1 -1
  115. package/dist/error/InteractionRequiredAuthError.d.ts +2 -2
  116. package/dist/error/InteractionRequiredAuthError.d.ts.map +1 -1
  117. package/dist/error/InteractionRequiredAuthError.mjs +1 -1
  118. package/dist/error/InteractionRequiredAuthErrorCodes.mjs +1 -1
  119. package/dist/error/JoseHeaderError.d.ts +2 -2
  120. package/dist/error/JoseHeaderError.d.ts.map +1 -1
  121. package/dist/error/JoseHeaderError.mjs +1 -1
  122. package/dist/error/JoseHeaderErrorCodes.mjs +1 -1
  123. package/dist/error/ServerError.d.ts +1 -1
  124. package/dist/error/ServerError.d.ts.map +1 -1
  125. package/dist/error/ServerError.mjs +1 -1
  126. package/dist/exports-browser-only.d.ts +10 -0
  127. package/dist/exports-browser-only.d.ts.map +1 -0
  128. package/dist/exports-common.d.ts +80 -0
  129. package/dist/exports-common.d.ts.map +1 -0
  130. package/dist/exports-node-only.d.ts +18 -0
  131. package/dist/exports-node-only.d.ts.map +1 -0
  132. package/dist/index-browser.d.ts +7 -0
  133. package/dist/index-browser.d.ts.map +1 -0
  134. package/dist/index-browser.mjs +67 -0
  135. package/dist/index-browser.mjs.map +1 -0
  136. package/dist/index-node.d.ts +7 -0
  137. package/dist/index-node.d.ts.map +1 -0
  138. package/dist/index-node.mjs +66 -0
  139. package/dist/index-node.mjs.map +1 -0
  140. package/dist/index.d.ts +7 -103
  141. package/dist/index.d.ts.map +1 -1
  142. package/dist/index.mjs +30 -30
  143. package/dist/logger/Logger.d.ts +1 -1
  144. package/dist/logger/Logger.d.ts.map +1 -1
  145. package/dist/logger/Logger.mjs +1 -1
  146. package/dist/network/INetworkModule.d.ts +1 -1
  147. package/dist/network/INetworkModule.d.ts.map +1 -1
  148. package/dist/network/INetworkModule.mjs +1 -1
  149. package/dist/network/NetworkManager.d.ts +4 -4
  150. package/dist/network/NetworkManager.d.ts.map +1 -1
  151. package/dist/network/NetworkManager.mjs +1 -1
  152. package/dist/network/RequestThumbprint.d.ts +2 -2
  153. package/dist/network/RequestThumbprint.d.ts.map +1 -1
  154. package/dist/network/ThrottlingUtils.d.ts +5 -5
  155. package/dist/network/ThrottlingUtils.d.ts.map +1 -1
  156. package/dist/network/ThrottlingUtils.mjs +1 -1
  157. package/dist/packageMetadata.d.ts +1 -1
  158. package/dist/packageMetadata.mjs +2 -2
  159. package/dist/request/AuthenticationHeaderParser.mjs +1 -1
  160. package/dist/request/BaseAuthRequest.d.ts +5 -5
  161. package/dist/request/BaseAuthRequest.d.ts.map +1 -1
  162. package/dist/request/CommonAuthorizationCodeRequest.d.ts +3 -3
  163. package/dist/request/CommonAuthorizationCodeRequest.d.ts.map +1 -1
  164. package/dist/request/CommonAuthorizationUrlRequest.d.ts +4 -4
  165. package/dist/request/CommonAuthorizationUrlRequest.d.ts.map +1 -1
  166. package/dist/request/CommonClientCredentialRequest.d.ts +3 -3
  167. package/dist/request/CommonClientCredentialRequest.d.ts.map +1 -1
  168. package/dist/request/CommonDeviceCodeRequest.d.ts +3 -3
  169. package/dist/request/CommonDeviceCodeRequest.d.ts.map +1 -1
  170. package/dist/request/CommonEndSessionRequest.d.ts +2 -2
  171. package/dist/request/CommonEndSessionRequest.d.ts.map +1 -1
  172. package/dist/request/CommonOnBehalfOfRequest.d.ts +1 -1
  173. package/dist/request/CommonOnBehalfOfRequest.d.ts.map +1 -1
  174. package/dist/request/CommonRefreshTokenRequest.d.ts +3 -3
  175. package/dist/request/CommonRefreshTokenRequest.d.ts.map +1 -1
  176. package/dist/request/CommonSilentFlowRequest.d.ts +3 -3
  177. package/dist/request/CommonSilentFlowRequest.d.ts.map +1 -1
  178. package/dist/request/CommonUsernamePasswordRequest.d.ts +1 -1
  179. package/dist/request/CommonUsernamePasswordRequest.d.ts.map +1 -1
  180. package/dist/request/NativeRequest.d.ts +1 -1
  181. package/dist/request/NativeRequest.d.ts.map +1 -1
  182. package/dist/request/RequestParameterBuilder.d.ts +5 -5
  183. package/dist/request/RequestParameterBuilder.d.ts.map +1 -1
  184. package/dist/request/RequestParameterBuilder.mjs +1 -1
  185. package/dist/request/RequestValidator.mjs +1 -1
  186. package/dist/request/ScopeSet.mjs +1 -1
  187. package/dist/response/AuthenticationResult.d.ts +1 -1
  188. package/dist/response/AuthenticationResult.d.ts.map +1 -1
  189. package/dist/response/ExternalTokenResponse.d.ts +1 -1
  190. package/dist/response/ExternalTokenResponse.d.ts.map +1 -1
  191. package/dist/response/ResponseHandler.d.ts +16 -16
  192. package/dist/response/ResponseHandler.d.ts.map +1 -1
  193. package/dist/response/ResponseHandler.mjs +1 -1
  194. package/dist/response/ServerAuthorizationTokenResponse.d.ts +1 -1
  195. package/dist/response/ServerAuthorizationTokenResponse.d.ts.map +1 -1
  196. package/dist/telemetry/performance/IPerformanceClient.d.ts +2 -2
  197. package/dist/telemetry/performance/IPerformanceClient.d.ts.map +1 -1
  198. package/dist/telemetry/performance/PerformanceClient.d.ts +5 -5
  199. package/dist/telemetry/performance/PerformanceClient.d.ts.map +1 -1
  200. package/dist/telemetry/performance/PerformanceClient.mjs +1 -1
  201. package/dist/telemetry/performance/PerformanceEvent.mjs +1 -1
  202. package/dist/telemetry/performance/StubPerformanceClient.d.ts +3 -3
  203. package/dist/telemetry/performance/StubPerformanceClient.d.ts.map +1 -1
  204. package/dist/telemetry/performance/StubPerformanceClient.mjs +1 -1
  205. package/dist/telemetry/performance/StubPerformanceClient.mjs.map +1 -1
  206. package/dist/telemetry/server/ServerTelemetryManager.d.ts +5 -5
  207. package/dist/telemetry/server/ServerTelemetryManager.d.ts.map +1 -1
  208. package/dist/telemetry/server/ServerTelemetryManager.mjs +1 -1
  209. package/dist/url/UrlString.d.ts +1 -1
  210. package/dist/url/UrlString.d.ts.map +1 -1
  211. package/dist/url/UrlString.mjs +1 -1
  212. package/dist/utils/ClientAssertionUtils.d.ts +1 -1
  213. package/dist/utils/ClientAssertionUtils.d.ts.map +1 -1
  214. package/dist/utils/ClientAssertionUtils.mjs +1 -1
  215. package/dist/utils/Constants.mjs +1 -1
  216. package/dist/utils/FunctionWrappers.d.ts +2 -2
  217. package/dist/utils/FunctionWrappers.d.ts.map +1 -1
  218. package/dist/utils/FunctionWrappers.mjs +1 -1
  219. package/dist/utils/ProtocolUtils.d.ts +1 -1
  220. package/dist/utils/ProtocolUtils.d.ts.map +1 -1
  221. package/dist/utils/ProtocolUtils.mjs +1 -1
  222. package/dist/utils/StringUtils.mjs +1 -1
  223. package/dist/utils/TimeUtils.mjs +1 -1
  224. package/dist/utils/UrlUtils.d.ts +1 -1
  225. package/dist/utils/UrlUtils.d.ts.map +1 -1
  226. package/dist/utils/UrlUtils.mjs +1 -1
  227. package/lib/index-browser.cjs +838 -0
  228. package/lib/index-browser.cjs.map +1 -0
  229. package/{dist/index.cjs → lib/index-node-aee3f7b6.js} +39 -765
  230. package/lib/index-node-aee3f7b6.js.map +1 -0
  231. package/lib/index-node.cjs +103 -0
  232. package/lib/index-node.cjs.map +1 -0
  233. package/lib/index.cjs +111 -0
  234. package/lib/index.cjs.map +1 -0
  235. package/lib/package.json +1 -0
  236. package/lib/types/account/AccountInfo.d.ts +67 -0
  237. package/lib/types/account/AccountInfo.d.ts.map +1 -0
  238. package/lib/types/account/AuthToken.d.ts +18 -0
  239. package/lib/types/account/AuthToken.d.ts.map +1 -0
  240. package/lib/types/account/CcsCredential.d.ts +10 -0
  241. package/lib/types/account/CcsCredential.d.ts.map +1 -0
  242. package/lib/types/account/ClientCredentials.d.ts +20 -0
  243. package/lib/types/account/ClientCredentials.d.ts.map +1 -0
  244. package/lib/types/account/ClientInfo.d.ts +19 -0
  245. package/lib/types/account/ClientInfo.d.ts.map +1 -0
  246. package/lib/types/account/TokenClaims.d.ts +84 -0
  247. package/lib/types/account/TokenClaims.d.ts.map +1 -0
  248. package/lib/types/authority/Authority.d.ts +255 -0
  249. package/lib/types/authority/Authority.d.ts.map +1 -0
  250. package/lib/types/authority/AuthorityFactory.d.ts +19 -0
  251. package/lib/types/authority/AuthorityFactory.d.ts.map +1 -0
  252. package/lib/types/authority/AuthorityMetadata.d.ts +44 -0
  253. package/lib/types/authority/AuthorityMetadata.d.ts.map +1 -0
  254. package/lib/types/authority/AuthorityOptions.d.ts +28 -0
  255. package/lib/types/authority/AuthorityOptions.d.ts.map +1 -0
  256. package/lib/types/authority/AuthorityType.d.ts +11 -0
  257. package/lib/types/authority/AuthorityType.d.ts.map +1 -0
  258. package/lib/types/authority/AzureRegion.d.ts +2 -0
  259. package/lib/types/authority/AzureRegion.d.ts.map +1 -0
  260. package/lib/types/authority/AzureRegionConfiguration.d.ts +6 -0
  261. package/lib/types/authority/AzureRegionConfiguration.d.ts.map +1 -0
  262. package/lib/types/authority/CloudDiscoveryMetadata.d.ts +6 -0
  263. package/lib/types/authority/CloudDiscoveryMetadata.d.ts.map +1 -0
  264. package/lib/types/authority/CloudInstanceDiscoveryErrorResponse.d.ts +14 -0
  265. package/lib/types/authority/CloudInstanceDiscoveryErrorResponse.d.ts.map +1 -0
  266. package/lib/types/authority/CloudInstanceDiscoveryResponse.d.ts +10 -0
  267. package/lib/types/authority/CloudInstanceDiscoveryResponse.d.ts.map +1 -0
  268. package/lib/types/authority/ImdsOptions.d.ts +6 -0
  269. package/lib/types/authority/ImdsOptions.d.ts.map +1 -0
  270. package/lib/types/authority/OIDCOptions.d.ts +9 -0
  271. package/lib/types/authority/OIDCOptions.d.ts.map +1 -0
  272. package/lib/types/authority/OpenIdConfigResponse.d.ts +12 -0
  273. package/lib/types/authority/OpenIdConfigResponse.d.ts.map +1 -0
  274. package/lib/types/authority/ProtocolMode.d.ts +9 -0
  275. package/lib/types/authority/ProtocolMode.d.ts.map +1 -0
  276. package/lib/types/authority/RegionDiscovery.d.ts +33 -0
  277. package/lib/types/authority/RegionDiscovery.d.ts.map +1 -0
  278. package/lib/types/authority/RegionDiscoveryMetadata.d.ts +7 -0
  279. package/lib/types/authority/RegionDiscoveryMetadata.d.ts.map +1 -0
  280. package/lib/types/broker/nativeBroker/INativeBrokerPlugin.d.ts +16 -0
  281. package/lib/types/broker/nativeBroker/INativeBrokerPlugin.d.ts.map +1 -0
  282. package/lib/types/cache/CacheManager.d.ts +498 -0
  283. package/lib/types/cache/CacheManager.d.ts.map +1 -0
  284. package/lib/types/cache/entities/AccessTokenEntity.d.ts +26 -0
  285. package/lib/types/cache/entities/AccessTokenEntity.d.ts.map +1 -0
  286. package/lib/types/cache/entities/AccountEntity.d.ts +107 -0
  287. package/lib/types/cache/entities/AccountEntity.d.ts.map +1 -0
  288. package/lib/types/cache/entities/AppMetadataEntity.d.ts +12 -0
  289. package/lib/types/cache/entities/AppMetadataEntity.d.ts.map +1 -0
  290. package/lib/types/cache/entities/AuthorityMetadataEntity.d.ts +16 -0
  291. package/lib/types/cache/entities/AuthorityMetadataEntity.d.ts.map +1 -0
  292. package/lib/types/cache/entities/CacheRecord.d.ts +14 -0
  293. package/lib/types/cache/entities/CacheRecord.d.ts.map +1 -0
  294. package/lib/types/cache/entities/CredentialEntity.d.ts +31 -0
  295. package/lib/types/cache/entities/CredentialEntity.d.ts.map +1 -0
  296. package/lib/types/cache/entities/IdTokenEntity.d.ts +9 -0
  297. package/lib/types/cache/entities/IdTokenEntity.d.ts.map +1 -0
  298. package/lib/types/cache/entities/RefreshTokenEntity.d.ts +8 -0
  299. package/lib/types/cache/entities/RefreshTokenEntity.d.ts.map +1 -0
  300. package/lib/types/cache/entities/ServerTelemetryEntity.d.ts +7 -0
  301. package/lib/types/cache/entities/ServerTelemetryEntity.d.ts.map +1 -0
  302. package/lib/types/cache/entities/ThrottlingEntity.d.ts +8 -0
  303. package/lib/types/cache/entities/ThrottlingEntity.d.ts.map +1 -0
  304. package/lib/types/cache/interface/ICacheManager.d.ts +167 -0
  305. package/lib/types/cache/interface/ICacheManager.d.ts.map +1 -0
  306. package/lib/types/cache/interface/ICachePlugin.d.ts +6 -0
  307. package/lib/types/cache/interface/ICachePlugin.d.ts.map +1 -0
  308. package/lib/types/cache/interface/ISerializableTokenCache.d.ts +5 -0
  309. package/lib/types/cache/interface/ISerializableTokenCache.d.ts.map +1 -0
  310. package/lib/types/cache/persistence/TokenCacheContext.d.ts +24 -0
  311. package/lib/types/cache/persistence/TokenCacheContext.d.ts.map +1 -0
  312. package/lib/types/cache/utils/CacheHelpers.d.ts +95 -0
  313. package/lib/types/cache/utils/CacheHelpers.d.ts.map +1 -0
  314. package/lib/types/cache/utils/CacheTypes.d.ts +70 -0
  315. package/lib/types/cache/utils/CacheTypes.d.ts.map +1 -0
  316. package/lib/types/client/AuthorizationCodeClient.d.ts +76 -0
  317. package/lib/types/client/AuthorizationCodeClient.d.ts.map +1 -0
  318. package/lib/types/client/BaseClient.d.ts +52 -0
  319. package/lib/types/client/BaseClient.d.ts.map +1 -0
  320. package/lib/types/client/RefreshTokenClient.d.ts +36 -0
  321. package/lib/types/client/RefreshTokenClient.d.ts.map +1 -0
  322. package/lib/types/client/SilentFlowClient.d.ts +28 -0
  323. package/lib/types/client/SilentFlowClient.d.ts.map +1 -0
  324. package/lib/types/config/AppTokenProvider.d.ts +39 -0
  325. package/lib/types/config/AppTokenProvider.d.ts.map +1 -0
  326. package/lib/types/config/ClientConfiguration.d.ts +153 -0
  327. package/lib/types/config/ClientConfiguration.d.ts.map +1 -0
  328. package/lib/types/constants/AADServerParamKeys.d.ts +54 -0
  329. package/lib/types/constants/AADServerParamKeys.d.ts.map +1 -0
  330. package/lib/types/crypto/ICrypto.d.ts +69 -0
  331. package/lib/types/crypto/ICrypto.d.ts.map +1 -0
  332. package/lib/types/crypto/IGuidGenerator.d.ts +5 -0
  333. package/lib/types/crypto/IGuidGenerator.d.ts.map +1 -0
  334. package/lib/types/crypto/JoseHeader.d.ts +23 -0
  335. package/lib/types/crypto/JoseHeader.d.ts.map +1 -0
  336. package/lib/types/crypto/PopTokenGenerator.d.ts +60 -0
  337. package/lib/types/crypto/PopTokenGenerator.d.ts.map +1 -0
  338. package/lib/types/crypto/SignedHttpRequest.d.ts +16 -0
  339. package/lib/types/crypto/SignedHttpRequest.d.ts.map +1 -0
  340. package/lib/types/error/AuthError.d.ts +45 -0
  341. package/lib/types/error/AuthError.d.ts.map +1 -0
  342. package/lib/types/error/AuthErrorCodes.d.ts +6 -0
  343. package/lib/types/error/AuthErrorCodes.d.ts.map +1 -0
  344. package/lib/types/error/CacheError.d.ts +21 -0
  345. package/lib/types/error/CacheError.d.ts.map +1 -0
  346. package/lib/types/error/CacheErrorCodes.d.ts +3 -0
  347. package/lib/types/error/CacheErrorCodes.d.ts.map +1 -0
  348. package/lib/types/error/ClientAuthError.d.ts +238 -0
  349. package/lib/types/error/ClientAuthError.d.ts.map +1 -0
  350. package/lib/types/error/ClientAuthErrorCodes.d.ts +45 -0
  351. package/lib/types/error/ClientAuthErrorCodes.d.ts.map +1 -0
  352. package/lib/types/error/ClientConfigurationError.d.ts +129 -0
  353. package/lib/types/error/ClientConfigurationError.d.ts.map +1 -0
  354. package/lib/types/error/ClientConfigurationErrorCodes.d.ts +23 -0
  355. package/lib/types/error/ClientConfigurationErrorCodes.d.ts.map +1 -0
  356. package/lib/types/error/InteractionRequiredAuthError.d.ts +66 -0
  357. package/lib/types/error/InteractionRequiredAuthError.d.ts.map +1 -0
  358. package/lib/types/error/InteractionRequiredAuthErrorCodes.d.ts +8 -0
  359. package/lib/types/error/InteractionRequiredAuthErrorCodes.d.ts.map +1 -0
  360. package/lib/types/error/JoseHeaderError.d.ts +16 -0
  361. package/lib/types/error/JoseHeaderError.d.ts.map +1 -0
  362. package/lib/types/error/JoseHeaderErrorCodes.d.ts +3 -0
  363. package/lib/types/error/JoseHeaderErrorCodes.d.ts.map +1 -0
  364. package/lib/types/error/ServerError.d.ts +16 -0
  365. package/lib/types/error/ServerError.d.ts.map +1 -0
  366. package/lib/types/exports-browser-only.d.ts +10 -0
  367. package/lib/types/exports-browser-only.d.ts.map +1 -0
  368. package/lib/types/exports-common.d.ts +80 -0
  369. package/lib/types/exports-common.d.ts.map +1 -0
  370. package/lib/types/exports-node-only.d.ts +18 -0
  371. package/lib/types/exports-node-only.d.ts.map +1 -0
  372. package/lib/types/index-browser.d.ts +7 -0
  373. package/lib/types/index-browser.d.ts.map +1 -0
  374. package/lib/types/index-node.d.ts +7 -0
  375. package/lib/types/index-node.d.ts.map +1 -0
  376. package/lib/types/index.d.ts +12 -0
  377. package/lib/types/index.d.ts.map +1 -0
  378. package/lib/types/logger/Logger.d.ts +96 -0
  379. package/lib/types/logger/Logger.d.ts.map +1 -0
  380. package/lib/types/network/INetworkModule.d.ts +30 -0
  381. package/lib/types/network/INetworkModule.d.ts.map +1 -0
  382. package/lib/types/network/NetworkManager.d.ts +34 -0
  383. package/lib/types/network/NetworkManager.d.ts.map +1 -0
  384. package/lib/types/network/RequestThumbprint.d.ts +19 -0
  385. package/lib/types/network/RequestThumbprint.d.ts.map +1 -0
  386. package/lib/types/network/ThrottlingUtils.d.ts +43 -0
  387. package/lib/types/network/ThrottlingUtils.d.ts.map +1 -0
  388. package/lib/types/packageMetadata.d.ts +3 -0
  389. package/lib/types/packageMetadata.d.ts.map +1 -0
  390. package/lib/types/request/AuthenticationHeaderParser.d.ts +20 -0
  391. package/lib/types/request/AuthenticationHeaderParser.d.ts.map +1 -0
  392. package/lib/types/request/BaseAuthRequest.d.ts +48 -0
  393. package/lib/types/request/BaseAuthRequest.d.ts.map +1 -0
  394. package/lib/types/request/CommonAuthorizationCodeRequest.d.ts +28 -0
  395. package/lib/types/request/CommonAuthorizationCodeRequest.d.ts.map +1 -0
  396. package/lib/types/request/CommonAuthorizationUrlRequest.d.ts +51 -0
  397. package/lib/types/request/CommonAuthorizationUrlRequest.d.ts.map +1 -0
  398. package/lib/types/request/CommonClientCredentialRequest.d.ts +18 -0
  399. package/lib/types/request/CommonClientCredentialRequest.d.ts.map +1 -0
  400. package/lib/types/request/CommonDeviceCodeRequest.d.ts +22 -0
  401. package/lib/types/request/CommonDeviceCodeRequest.d.ts.map +1 -0
  402. package/lib/types/request/CommonEndSessionRequest.d.ts +22 -0
  403. package/lib/types/request/CommonEndSessionRequest.d.ts.map +1 -0
  404. package/lib/types/request/CommonOnBehalfOfRequest.d.ts +14 -0
  405. package/lib/types/request/CommonOnBehalfOfRequest.d.ts.map +1 -0
  406. package/lib/types/request/CommonRefreshTokenRequest.d.ts +23 -0
  407. package/lib/types/request/CommonRefreshTokenRequest.d.ts.map +1 -0
  408. package/lib/types/request/CommonSilentFlowRequest.d.ts +28 -0
  409. package/lib/types/request/CommonSilentFlowRequest.d.ts.map +1 -0
  410. package/lib/types/request/CommonUsernamePasswordRequest.d.ts +18 -0
  411. package/lib/types/request/CommonUsernamePasswordRequest.d.ts.map +1 -0
  412. package/lib/types/request/NativeRequest.d.ts +20 -0
  413. package/lib/types/request/NativeRequest.d.ts.map +1 -0
  414. package/lib/types/request/NativeSignOutRequest.d.ts +6 -0
  415. package/lib/types/request/NativeSignOutRequest.d.ts.map +1 -0
  416. package/lib/types/request/RequestParameterBuilder.d.ts +218 -0
  417. package/lib/types/request/RequestParameterBuilder.d.ts.map +1 -0
  418. package/lib/types/request/RequestValidator.d.ts +28 -0
  419. package/lib/types/request/RequestValidator.d.ts.map +1 -0
  420. package/lib/types/request/ScopeSet.d.ts +89 -0
  421. package/lib/types/request/ScopeSet.d.ts.map +1 -0
  422. package/lib/types/request/StoreInCache.d.ts +9 -0
  423. package/lib/types/request/StoreInCache.d.ts.map +1 -0
  424. package/lib/types/response/AuthenticationResult.d.ts +42 -0
  425. package/lib/types/response/AuthenticationResult.d.ts.map +1 -0
  426. package/lib/types/response/AuthorizationCodePayload.d.ts +14 -0
  427. package/lib/types/response/AuthorizationCodePayload.d.ts.map +1 -0
  428. package/lib/types/response/DeviceCodeResponse.d.ts +26 -0
  429. package/lib/types/response/DeviceCodeResponse.d.ts.map +1 -0
  430. package/lib/types/response/ExternalTokenResponse.d.ts +16 -0
  431. package/lib/types/response/ExternalTokenResponse.d.ts.map +1 -0
  432. package/lib/types/response/IMDSBadResponse.d.ts +5 -0
  433. package/lib/types/response/IMDSBadResponse.d.ts.map +1 -0
  434. package/lib/types/response/ResponseHandler.d.ts +70 -0
  435. package/lib/types/response/ResponseHandler.d.ts.map +1 -0
  436. package/lib/types/response/ServerAuthorizationCodeResponse.d.ts +27 -0
  437. package/lib/types/response/ServerAuthorizationCodeResponse.d.ts.map +1 -0
  438. package/lib/types/response/ServerAuthorizationTokenResponse.d.ts +48 -0
  439. package/lib/types/response/ServerAuthorizationTokenResponse.d.ts.map +1 -0
  440. package/lib/types/telemetry/performance/IPerformanceClient.d.ts +58 -0
  441. package/lib/types/telemetry/performance/IPerformanceClient.d.ts.map +1 -0
  442. package/lib/types/telemetry/performance/IPerformanceMeasurement.d.ts +6 -0
  443. package/lib/types/telemetry/performance/IPerformanceMeasurement.d.ts.map +1 -0
  444. package/lib/types/telemetry/performance/PerformanceClient.d.ts +243 -0
  445. package/lib/types/telemetry/performance/PerformanceClient.d.ts.map +1 -0
  446. package/lib/types/telemetry/performance/PerformanceEvent.d.ts +512 -0
  447. package/lib/types/telemetry/performance/PerformanceEvent.d.ts.map +1 -0
  448. package/lib/types/telemetry/performance/StubPerformanceClient.d.ts +25 -0
  449. package/lib/types/telemetry/performance/StubPerformanceClient.d.ts.map +1 -0
  450. package/lib/types/telemetry/server/ServerTelemetryManager.d.ts +79 -0
  451. package/lib/types/telemetry/server/ServerTelemetryManager.d.ts.map +1 -0
  452. package/lib/types/telemetry/server/ServerTelemetryRequest.d.ts +9 -0
  453. package/lib/types/telemetry/server/ServerTelemetryRequest.d.ts.map +1 -0
  454. package/lib/types/url/IUri.d.ts +13 -0
  455. package/lib/types/url/IUri.d.ts.map +1 -0
  456. package/lib/types/url/UrlString.d.ts +49 -0
  457. package/lib/types/url/UrlString.d.ts.map +1 -0
  458. package/lib/types/utils/ClientAssertionUtils.d.ts +3 -0
  459. package/lib/types/utils/ClientAssertionUtils.d.ts.map +1 -0
  460. package/lib/types/utils/Constants.d.ts +310 -0
  461. package/lib/types/utils/Constants.d.ts.map +1 -0
  462. package/lib/types/utils/FunctionWrappers.d.ts +28 -0
  463. package/lib/types/utils/FunctionWrappers.d.ts.map +1 -0
  464. package/lib/types/utils/MsalTypes.d.ts +7 -0
  465. package/lib/types/utils/MsalTypes.d.ts.map +1 -0
  466. package/lib/types/utils/ProtocolUtils.d.ts +43 -0
  467. package/lib/types/utils/ProtocolUtils.d.ts.map +1 -0
  468. package/lib/types/utils/StringUtils.d.ts +41 -0
  469. package/lib/types/utils/StringUtils.d.ts.map +1 -0
  470. package/lib/types/utils/TimeUtils.d.ts +26 -0
  471. package/lib/types/utils/TimeUtils.d.ts.map +1 -0
  472. package/lib/types/utils/UrlUtils.d.ts +11 -0
  473. package/lib/types/utils/UrlUtils.d.ts.map +1 -0
  474. package/node/README.md +1 -0
  475. package/node/package.json +5 -0
  476. package/package.json +37 -8
  477. package/src/account/AccountInfo.ts +1 -1
  478. package/src/account/AuthToken.ts +2 -2
  479. package/src/account/ClientInfo.ts +2 -2
  480. package/src/authority/Authority.ts +26 -26
  481. package/src/authority/AuthorityFactory.ts +9 -9
  482. package/src/authority/AuthorityMetadata.ts +7 -7
  483. package/src/authority/AuthorityOptions.ts +4 -4
  484. package/src/authority/AzureRegionConfiguration.ts +1 -1
  485. package/src/authority/CloudInstanceDiscoveryResponse.ts +1 -1
  486. package/src/authority/OIDCOptions.ts +1 -1
  487. package/src/authority/RegionDiscovery.ts +10 -10
  488. package/src/authority/RegionDiscoveryMetadata.ts +1 -1
  489. package/src/broker/nativeBroker/INativeBrokerPlugin.ts +5 -5
  490. package/src/cache/CacheManager.ts +28 -28
  491. package/src/cache/entities/AccessTokenEntity.ts +2 -2
  492. package/src/cache/entities/AccountEntity.ts +10 -10
  493. package/src/cache/entities/CacheRecord.ts +5 -5
  494. package/src/cache/entities/CredentialEntity.ts +1 -1
  495. package/src/cache/entities/IdTokenEntity.ts +1 -1
  496. package/src/cache/entities/RefreshTokenEntity.ts +1 -1
  497. package/src/cache/interface/ICacheManager.ts +12 -12
  498. package/src/cache/interface/ICachePlugin.ts +1 -1
  499. package/src/cache/persistence/TokenCacheContext.ts +1 -1
  500. package/src/cache/utils/CacheHelpers.ts +13 -13
  501. package/src/cache/utils/CacheTypes.ts +11 -11
  502. package/src/client/AuthorizationCodeClient.ts +51 -38
  503. package/src/client/BaseClient.ts +19 -19
  504. package/src/client/RefreshTokenClient.ts +29 -29
  505. package/src/client/SilentFlowClient.ts +17 -17
  506. package/src/config/ClientConfiguration.ts +18 -15
  507. package/src/crypto/ICrypto.ts +3 -3
  508. package/src/crypto/JoseHeader.ts +2 -2
  509. package/src/crypto/PopTokenGenerator.ts +7 -7
  510. package/src/crypto/SignedHttpRequest.ts +1 -1
  511. package/src/error/AuthError.ts +2 -2
  512. package/src/error/CacheError.ts +1 -1
  513. package/src/error/ClientAuthError.ts +2 -2
  514. package/src/error/ClientConfigurationError.ts +2 -2
  515. package/src/error/InteractionRequiredAuthError.ts +3 -3
  516. package/src/error/JoseHeaderError.ts +2 -2
  517. package/src/error/ServerError.ts +1 -1
  518. package/src/exports-browser-only.ts +29 -0
  519. package/src/exports-common.ts +192 -0
  520. package/src/exports-node-only.ts +35 -0
  521. package/src/index-browser.ts +11 -0
  522. package/src/index-node.ts +11 -0
  523. package/src/index.ts +7 -250
  524. package/src/logger/Logger.ts +2 -2
  525. package/src/network/INetworkModule.ts +2 -2
  526. package/src/network/NetworkManager.ts +7 -7
  527. package/src/network/RequestThumbprint.ts +2 -2
  528. package/src/network/ThrottlingUtils.ts +8 -8
  529. package/src/packageMetadata.ts +1 -1
  530. package/src/request/AuthenticationHeaderParser.ts +2 -2
  531. package/src/request/BaseAuthRequest.ts +5 -5
  532. package/src/request/CommonAuthorizationCodeRequest.ts +3 -3
  533. package/src/request/CommonAuthorizationUrlRequest.ts +4 -4
  534. package/src/request/CommonClientCredentialRequest.ts +3 -3
  535. package/src/request/CommonDeviceCodeRequest.ts +3 -3
  536. package/src/request/CommonEndSessionRequest.ts +2 -2
  537. package/src/request/CommonOnBehalfOfRequest.ts +1 -1
  538. package/src/request/CommonRefreshTokenRequest.ts +3 -3
  539. package/src/request/CommonSilentFlowRequest.ts +3 -3
  540. package/src/request/CommonUsernamePasswordRequest.ts +1 -1
  541. package/src/request/NativeRequest.ts +1 -1
  542. package/src/request/RequestParameterBuilder.ts +9 -9
  543. package/src/request/RequestValidator.ts +2 -2
  544. package/src/request/ScopeSet.ts +4 -4
  545. package/src/response/AuthenticationResult.ts +1 -1
  546. package/src/response/ExternalTokenResponse.ts +1 -1
  547. package/src/response/ResponseHandler.ts +31 -31
  548. package/src/response/ServerAuthorizationTokenResponse.ts +1 -1
  549. package/src/telemetry/performance/IPerformanceClient.ts +2 -2
  550. package/src/telemetry/performance/PerformanceClient.ts +10 -10
  551. package/src/telemetry/performance/StubPerformanceClient.ts +6 -3
  552. package/src/telemetry/server/ServerTelemetryManager.ts +6 -6
  553. package/src/url/UrlString.ts +5 -5
  554. package/src/utils/ClientAssertionUtils.ts +1 -1
  555. package/src/utils/FunctionWrappers.ts +2 -2
  556. package/src/utils/ProtocolUtils.ts +3 -3
  557. package/src/utils/UrlUtils.ts +2 -2
  558. package/dist/index.cjs.map +0 -1
@@ -1,4 +1,4 @@
1
- /*! @azure/msal-common v14.14.2 2024-08-28 */
1
+ /*! @azure/msal-common v14.15.0 2024-09-20 */
2
2
  'use strict';
3
3
  'use strict';
4
4
 
@@ -3463,28 +3463,6 @@ var AuthorityFactory = /*#__PURE__*/Object.freeze({
3463
3463
  createDiscoveredInstance: createDiscoveredInstance
3464
3464
  });
3465
3465
 
3466
- /*
3467
- * Copyright (c) Microsoft Corporation. All rights reserved.
3468
- * Licensed under the MIT License.
3469
- */
3470
- async function getClientAssertion(clientAssertion, clientId, tokenEndpoint) {
3471
- if (typeof clientAssertion === "string") {
3472
- return clientAssertion;
3473
- }
3474
- else {
3475
- const config = {
3476
- clientId: clientId,
3477
- tokenEndpoint: tokenEndpoint,
3478
- };
3479
- return clientAssertion(config);
3480
- }
3481
- }
3482
-
3483
- var ClientAssertionUtils = /*#__PURE__*/Object.freeze({
3484
- __proto__: null,
3485
- getClientAssertion: getClientAssertion
3486
- });
3487
-
3488
3466
  /*
3489
3467
  * Copyright (c) Microsoft Corporation. All rights reserved.
3490
3468
  * Licensed under the MIT License.
@@ -3828,7 +3806,7 @@ class Logger {
3828
3806
 
3829
3807
  /* eslint-disable header/header */
3830
3808
  const name = "@azure/msal-common";
3831
- const version = "14.14.2";
3809
+ const version = "14.15.0";
3832
3810
 
3833
3811
  /*
3834
3812
  * Copyright (c) Microsoft Corporation. All rights reserved.
@@ -5779,6 +5757,7 @@ function buildAuthOptions(authOptions) {
5779
5757
  clientCapabilities: [],
5780
5758
  azureCloudOptions: DEFAULT_AZURE_CLOUD_OPTIONS,
5781
5759
  skipAuthorityMetadataCache: false,
5760
+ instanceAware: false,
5782
5761
  ...authOptions,
5783
5762
  };
5784
5763
  }
@@ -7160,6 +7139,28 @@ function buildAccountToCache(cacheStorage, authority, homeAccountId, base64Decod
7160
7139
  return baseAccount;
7161
7140
  }
7162
7141
 
7142
+ /*
7143
+ * Copyright (c) Microsoft Corporation. All rights reserved.
7144
+ * Licensed under the MIT License.
7145
+ */
7146
+ async function getClientAssertion(clientAssertion, clientId, tokenEndpoint) {
7147
+ if (typeof clientAssertion === "string") {
7148
+ return clientAssertion;
7149
+ }
7150
+ else {
7151
+ const config = {
7152
+ clientId: clientId,
7153
+ tokenEndpoint: tokenEndpoint,
7154
+ };
7155
+ return clientAssertion(config);
7156
+ }
7157
+ }
7158
+
7159
+ var ClientAssertionUtils = /*#__PURE__*/Object.freeze({
7160
+ __proto__: null,
7161
+ getClientAssertion: getClientAssertion
7162
+ });
7163
+
7163
7164
  /*
7164
7165
  * Copyright (c) Microsoft Corporation. All rights reserved.
7165
7166
  * Licensed under the MIT License.
@@ -7520,9 +7521,7 @@ class AuthorizationCodeClient extends BaseClient {
7520
7521
  this.config.authOptions.clientCapabilities.length > 0)) {
7521
7522
  parameterBuilder.addClaims(request.claims, this.config.authOptions.clientCapabilities);
7522
7523
  }
7523
- if (request.extraQueryParameters) {
7524
- parameterBuilder.addExtraQueryParameters(request.extraQueryParameters);
7525
- }
7524
+ this.addExtraQueryParams(request, parameterBuilder);
7526
7525
  if (request.nativeBroker) {
7527
7526
  // signal ests that this is a WAM call
7528
7527
  parameterBuilder.addNativeBroker();
@@ -7564,10 +7563,20 @@ class AuthorizationCodeClient extends BaseClient {
7564
7563
  if (request.logoutHint) {
7565
7564
  parameterBuilder.addLogoutHint(request.logoutHint);
7566
7565
  }
7566
+ this.addExtraQueryParams(request, parameterBuilder);
7567
+ return parameterBuilder.createQueryString();
7568
+ }
7569
+ addExtraQueryParams(request, parameterBuilder) {
7570
+ const hasRequestInstanceAware = request.extraQueryParameters &&
7571
+ request.extraQueryParameters.hasOwnProperty("instance_aware");
7572
+ // Set instance_aware flag if config auth param is set
7573
+ if (!hasRequestInstanceAware && this.config.authOptions.instanceAware) {
7574
+ request.extraQueryParameters = request.extraQueryParameters || {};
7575
+ request.extraQueryParameters["instance_aware"] = "true";
7576
+ }
7567
7577
  if (request.extraQueryParameters) {
7568
7578
  parameterBuilder.addExtraQueryParameters(request.extraQueryParameters);
7569
7579
  }
7570
- return parameterBuilder.createQueryString();
7571
7580
  }
7572
7581
  /**
7573
7582
  * Helper to get sid from account. Returns null if idTokenClaims are not present or sid is not present.
@@ -7940,74 +7949,6 @@ const StubbedNetworkModule = {
7940
7949
  },
7941
7950
  };
7942
7951
 
7943
- /*
7944
- * Copyright (c) Microsoft Corporation. All rights reserved.
7945
- * Licensed under the MIT License.
7946
- */
7947
- const missingKidError = "missing_kid_error";
7948
- const missingAlgError = "missing_alg_error";
7949
-
7950
- /*
7951
- * Copyright (c) Microsoft Corporation. All rights reserved.
7952
- * Licensed under the MIT License.
7953
- */
7954
- const JoseHeaderErrorMessages = {
7955
- [missingKidError]: "The JOSE Header for the requested JWT, JWS or JWK object requires a keyId to be configured as the 'kid' header claim. No 'kid' value was provided.",
7956
- [missingAlgError]: "The JOSE Header for the requested JWT, JWS or JWK object requires an algorithm to be specified as the 'alg' header claim. No 'alg' value was provided.",
7957
- };
7958
- /**
7959
- * Error thrown when there is an error in the client code running on the browser.
7960
- */
7961
- class JoseHeaderError extends AuthError {
7962
- constructor(errorCode, errorMessage) {
7963
- super(errorCode, errorMessage);
7964
- this.name = "JoseHeaderError";
7965
- Object.setPrototypeOf(this, JoseHeaderError.prototype);
7966
- }
7967
- }
7968
- /** Returns JoseHeaderError object */
7969
- function createJoseHeaderError(code) {
7970
- return new JoseHeaderError(code, JoseHeaderErrorMessages[code]);
7971
- }
7972
-
7973
- /*
7974
- * Copyright (c) Microsoft Corporation. All rights reserved.
7975
- * Licensed under the MIT License.
7976
- */
7977
- /** @internal */
7978
- class JoseHeader {
7979
- constructor(options) {
7980
- this.typ = options.typ;
7981
- this.alg = options.alg;
7982
- this.kid = options.kid;
7983
- }
7984
- /**
7985
- * Builds SignedHttpRequest formatted JOSE Header from the
7986
- * JOSE Header options provided or previously set on the object and returns
7987
- * the stringified header object.
7988
- * Throws if keyId or algorithm aren't provided since they are required for Access Token Binding.
7989
- * @param shrHeaderOptions
7990
- * @returns
7991
- */
7992
- static getShrHeaderString(shrHeaderOptions) {
7993
- // KeyID is required on the SHR header
7994
- if (!shrHeaderOptions.kid) {
7995
- throw createJoseHeaderError(missingKidError);
7996
- }
7997
- // Alg is required on the SHR header
7998
- if (!shrHeaderOptions.alg) {
7999
- throw createJoseHeaderError(missingAlgError);
8000
- }
8001
- const shrHeader = new JoseHeader({
8002
- // Access Token PoP headers must have type pop, but the type header can be overriden for special cases
8003
- typ: shrHeaderOptions.typ || JsonWebTokenTypes.Pop,
8004
- kid: shrHeaderOptions.kid,
8005
- alg: shrHeaderOptions.alg,
8006
- });
8007
- return JSON.stringify(shrHeader);
8008
- }
8009
- }
8010
-
8011
7952
  /*
8012
7953
  * Copyright (c) Microsoft Corporation. All rights reserved.
8013
7954
  * Licensed under the MIT License.
@@ -8325,671 +8266,6 @@ class ServerTelemetryManager {
8325
8266
  }
8326
8267
  }
8327
8268
 
8328
- /*
8329
- * Copyright (c) Microsoft Corporation. All rights reserved.
8330
- * Licensed under the MIT License.
8331
- */
8332
- class StubPerformanceMeasurement {
8333
- startMeasurement() {
8334
- return;
8335
- }
8336
- endMeasurement() {
8337
- return;
8338
- }
8339
- flushMeasurement() {
8340
- return null;
8341
- }
8342
- }
8343
- class StubPerformanceClient {
8344
- generateId() {
8345
- return "callback-id";
8346
- }
8347
- startMeasurement(measureName, correlationId) {
8348
- return {
8349
- end: () => null,
8350
- discard: () => { },
8351
- add: () => { },
8352
- increment: () => { },
8353
- event: {
8354
- eventId: this.generateId(),
8355
- status: PerformanceEventStatus.InProgress,
8356
- authority: "",
8357
- libraryName: "",
8358
- libraryVersion: "",
8359
- clientId: "",
8360
- name: measureName,
8361
- startTimeMs: Date.now(),
8362
- correlationId: correlationId || "",
8363
- },
8364
- measurement: new StubPerformanceMeasurement(),
8365
- };
8366
- }
8367
- startPerformanceMeasurement() {
8368
- return new StubPerformanceMeasurement();
8369
- }
8370
- calculateQueuedTime() {
8371
- return 0;
8372
- }
8373
- addQueueMeasurement() {
8374
- return;
8375
- }
8376
- setPreQueueTime() {
8377
- return;
8378
- }
8379
- endMeasurement() {
8380
- return null;
8381
- }
8382
- discardMeasurements() {
8383
- return;
8384
- }
8385
- removePerformanceCallback() {
8386
- return true;
8387
- }
8388
- addPerformanceCallback() {
8389
- return "";
8390
- }
8391
- emitEvents() {
8392
- return;
8393
- }
8394
- addFields() {
8395
- return;
8396
- }
8397
- incrementFields() {
8398
- return;
8399
- }
8400
- cacheEventByCorrelationId() {
8401
- return;
8402
- }
8403
- }
8404
-
8405
- /*
8406
- * Copyright (c) Microsoft Corporation. All rights reserved.
8407
- * Licensed under the MIT License.
8408
- */
8409
- /**
8410
- * Starts context by adding payload to the stack
8411
- * @param event {PerformanceEvent}
8412
- * @param abbreviations {Map<string, string>} event name abbreviations
8413
- * @param stack {?PerformanceEventStackedContext[]} stack
8414
- */
8415
- function startContext(event, abbreviations, stack) {
8416
- if (!stack) {
8417
- return;
8418
- }
8419
- stack.push({
8420
- name: abbreviations.get(event.name) || event.name,
8421
- });
8422
- }
8423
- /**
8424
- * Ends context by removing payload from the stack and returning parent or self, if stack is empty, payload
8425
- *
8426
- * @param event {PerformanceEvent}
8427
- * @param abbreviations {Map<string, string>} event name abbreviations
8428
- * @param stack {?PerformanceEventStackedContext[]} stack
8429
- * @param error {?unknown} error
8430
- */
8431
- function endContext(event, abbreviations, stack, error) {
8432
- if (!stack?.length) {
8433
- return;
8434
- }
8435
- const peek = (stack) => {
8436
- return stack.length ? stack[stack.length - 1] : undefined;
8437
- };
8438
- const abbrEventName = abbreviations.get(event.name) || event.name;
8439
- const top = peek(stack);
8440
- if (top?.name !== abbrEventName) {
8441
- return;
8442
- }
8443
- const current = stack?.pop();
8444
- if (!current) {
8445
- return;
8446
- }
8447
- const errorCode = error instanceof AuthError
8448
- ? error.errorCode
8449
- : error instanceof Error
8450
- ? error.name
8451
- : undefined;
8452
- const subErr = error instanceof AuthError ? error.subError : undefined;
8453
- if (errorCode && current.childErr !== errorCode) {
8454
- current.err = errorCode;
8455
- if (subErr) {
8456
- current.subErr = subErr;
8457
- }
8458
- }
8459
- delete current.name;
8460
- delete current.childErr;
8461
- const context = {
8462
- ...current,
8463
- dur: event.durationMs,
8464
- };
8465
- if (!event.success) {
8466
- context.fail = 1;
8467
- }
8468
- const parent = peek(stack);
8469
- if (!parent) {
8470
- return { [abbrEventName]: context };
8471
- }
8472
- if (errorCode) {
8473
- parent.childErr = errorCode;
8474
- }
8475
- let childName;
8476
- if (!parent[abbrEventName]) {
8477
- childName = abbrEventName;
8478
- }
8479
- else {
8480
- const siblings = Object.keys(parent).filter((key) => key.startsWith(abbrEventName)).length;
8481
- childName = `${abbrEventName}_${siblings + 1}`;
8482
- }
8483
- parent[childName] = context;
8484
- return parent;
8485
- }
8486
- /**
8487
- * Adds error name and stack trace to the telemetry event
8488
- * @param error {Error}
8489
- * @param logger {Logger}
8490
- * @param event {PerformanceEvent}
8491
- * @param stackMaxSize {number} max error stack size to capture
8492
- */
8493
- function addError(error, logger, event, stackMaxSize = 5) {
8494
- if (!(error instanceof Error)) {
8495
- logger.trace("PerformanceClient.addErrorStack: Input error is not instance of Error", event.correlationId);
8496
- return;
8497
- }
8498
- else if (error instanceof AuthError) {
8499
- event.errorCode = error.errorCode;
8500
- event.subErrorCode = error.subError;
8501
- if (error instanceof ServerError ||
8502
- error instanceof InteractionRequiredAuthError) {
8503
- event.serverErrorNo = error.errorNo;
8504
- }
8505
- return;
8506
- }
8507
- else if (error instanceof CacheError) {
8508
- event.errorCode = error.errorCode;
8509
- return;
8510
- }
8511
- else if (event.errorStack?.length) {
8512
- logger.trace("PerformanceClient.addErrorStack: Stack already exist", event.correlationId);
8513
- return;
8514
- }
8515
- else if (!error.stack?.length) {
8516
- logger.trace("PerformanceClient.addErrorStack: Input stack is empty", event.correlationId);
8517
- return;
8518
- }
8519
- if (error.stack) {
8520
- event.errorStack = compactStack(error.stack, stackMaxSize);
8521
- }
8522
- event.errorName = error.name;
8523
- }
8524
- /**
8525
- * Compacts error stack into array by fetching N first entries
8526
- * @param stack {string} error stack
8527
- * @param stackMaxSize {number} max error stack size to capture
8528
- * @returns {string[]}
8529
- */
8530
- function compactStack(stack, stackMaxSize) {
8531
- if (stackMaxSize < 0) {
8532
- return [];
8533
- }
8534
- const stackArr = stack.split("\n") || [];
8535
- if (stackArr.length < 2) {
8536
- return [];
8537
- }
8538
- const res = [];
8539
- // Get top N stack lines
8540
- for (
8541
- // Skip first line as it may contain PII data
8542
- let ix = Math.max(stackArr.length - stackMaxSize - 1, 1); ix < stackArr.length; ix++) {
8543
- const line = stackArr[ix];
8544
- if (res.length >= stackMaxSize) {
8545
- break;
8546
- }
8547
- res.push(compactStackLine(line));
8548
- }
8549
- return res;
8550
- }
8551
- /**
8552
- * Compacts error stack line by shortening file path
8553
- * Example: https://localhost/msal-common/src/authority/Authority.js:100:1 -> Authority.js:100:1
8554
- * @param line {string} stack line
8555
- * @returns {string}
8556
- */
8557
- function compactStackLine(line) {
8558
- const filePathIx = line.lastIndexOf(" ") + 1;
8559
- if (filePathIx < 1) {
8560
- return line;
8561
- }
8562
- const filePath = line.substring(filePathIx);
8563
- let fileNameIx = filePath.lastIndexOf("/");
8564
- fileNameIx = fileNameIx < 0 ? filePath.lastIndexOf("\\") : fileNameIx;
8565
- if (fileNameIx >= 0) {
8566
- return (line.substring(0, filePathIx) +
8567
- "(" +
8568
- filePath.substring(fileNameIx + 1) +
8569
- (filePath.charAt(filePath.length - 1) === ")" ? "" : ")")).trimStart();
8570
- }
8571
- return line.trimStart();
8572
- }
8573
- class PerformanceClient {
8574
- /**
8575
- * Creates an instance of PerformanceClient,
8576
- * an abstract class containing core performance telemetry logic.
8577
- *
8578
- * @constructor
8579
- * @param {string} clientId Client ID of the application
8580
- * @param {string} authority Authority used by the application
8581
- * @param {Logger} logger Logger used by the application
8582
- * @param {string} libraryName Name of the library
8583
- * @param {string} libraryVersion Version of the library
8584
- * @param {ApplicationTelemetry} applicationTelemetry application name and version
8585
- * @param {Set<String>} intFields integer fields to be truncated
8586
- * @param {Map<string, string>} abbreviations event name abbreviations
8587
- */
8588
- constructor(clientId, authority, logger, libraryName, libraryVersion, applicationTelemetry, intFields, abbreviations) {
8589
- this.authority = authority;
8590
- this.libraryName = libraryName;
8591
- this.libraryVersion = libraryVersion;
8592
- this.applicationTelemetry = applicationTelemetry;
8593
- this.clientId = clientId;
8594
- this.logger = logger;
8595
- this.callbacks = new Map();
8596
- this.eventsByCorrelationId = new Map();
8597
- this.eventStack = new Map();
8598
- this.queueMeasurements = new Map();
8599
- this.preQueueTimeByCorrelationId = new Map();
8600
- this.intFields = intFields || new Set();
8601
- for (const item of IntFields) {
8602
- this.intFields.add(item);
8603
- }
8604
- this.abbreviations = abbreviations || new Map();
8605
- for (const [key, value] of PerformanceEventAbbreviations) {
8606
- this.abbreviations.set(key, value);
8607
- }
8608
- }
8609
- /**
8610
- * Starts and returns an platform-specific implementation of IPerformanceMeasurement.
8611
- * Note: this function can be changed to abstract at the next major version bump.
8612
- *
8613
- * @param {string} measureName
8614
- * @param {string} correlationId
8615
- * @returns {IPerformanceMeasurement}
8616
- * @deprecated This method will be removed in the next major version
8617
- */
8618
- startPerformanceMeasurement(measureName, // eslint-disable-line @typescript-eslint/no-unused-vars
8619
- correlationId // eslint-disable-line @typescript-eslint/no-unused-vars
8620
- ) {
8621
- return {};
8622
- }
8623
- /**
8624
- * Gets map of pre-queue times by correlation Id
8625
- *
8626
- * @param {PerformanceEvents} eventName
8627
- * @param {string} correlationId
8628
- * @returns {number}
8629
- */
8630
- getPreQueueTime(eventName, correlationId) {
8631
- const preQueueEvent = this.preQueueTimeByCorrelationId.get(correlationId);
8632
- if (!preQueueEvent) {
8633
- this.logger.trace(`PerformanceClient.getPreQueueTime: no pre-queue times found for correlationId: ${correlationId}, unable to add queue measurement`);
8634
- return;
8635
- }
8636
- else if (preQueueEvent.name !== eventName) {
8637
- this.logger.trace(`PerformanceClient.getPreQueueTime: no pre-queue time found for ${eventName}, unable to add queue measurement`);
8638
- return;
8639
- }
8640
- return preQueueEvent.time;
8641
- }
8642
- /**
8643
- * Calculates the difference between current time and time when function was queued.
8644
- * Note: It is possible to have 0 as the queue time if the current time and the queued time was the same.
8645
- *
8646
- * @param {number} preQueueTime
8647
- * @param {number} currentTime
8648
- * @returns {number}
8649
- */
8650
- calculateQueuedTime(preQueueTime, currentTime) {
8651
- if (preQueueTime < 1) {
8652
- this.logger.trace(`PerformanceClient: preQueueTime should be a positive integer and not ${preQueueTime}`);
8653
- return 0;
8654
- }
8655
- if (currentTime < 1) {
8656
- this.logger.trace(`PerformanceClient: currentTime should be a positive integer and not ${currentTime}`);
8657
- return 0;
8658
- }
8659
- if (currentTime < preQueueTime) {
8660
- this.logger.trace("PerformanceClient: currentTime is less than preQueueTime, check how time is being retrieved");
8661
- return 0;
8662
- }
8663
- return currentTime - preQueueTime;
8664
- }
8665
- /**
8666
- * Adds queue measurement time to QueueMeasurements array for given correlation ID.
8667
- *
8668
- * @param {PerformanceEvents} eventName
8669
- * @param {?string} correlationId
8670
- * @param {?number} queueTime
8671
- * @param {?boolean} manuallyCompleted - indicator for manually completed queue measurements
8672
- * @returns
8673
- */
8674
- addQueueMeasurement(eventName, correlationId, queueTime, manuallyCompleted) {
8675
- if (!correlationId) {
8676
- this.logger.trace(`PerformanceClient.addQueueMeasurement: correlationId not provided for ${eventName}, cannot add queue measurement`);
8677
- return;
8678
- }
8679
- if (queueTime === 0) {
8680
- // Possible for there to be no queue time after calculation
8681
- this.logger.trace(`PerformanceClient.addQueueMeasurement: queue time provided for ${eventName} is ${queueTime}`);
8682
- }
8683
- else if (!queueTime) {
8684
- this.logger.trace(`PerformanceClient.addQueueMeasurement: no queue time provided for ${eventName}`);
8685
- return;
8686
- }
8687
- const queueMeasurement = {
8688
- eventName,
8689
- // Always default queue time to 0 for manually completed (improperly instrumented)
8690
- queueTime: manuallyCompleted ? 0 : queueTime,
8691
- manuallyCompleted,
8692
- };
8693
- // Adds to existing correlation Id if present in queueMeasurements
8694
- const existingMeasurements = this.queueMeasurements.get(correlationId);
8695
- if (existingMeasurements) {
8696
- existingMeasurements.push(queueMeasurement);
8697
- this.queueMeasurements.set(correlationId, existingMeasurements);
8698
- }
8699
- else {
8700
- // Sets new correlation Id if not present in queueMeasurements
8701
- this.logger.trace(`PerformanceClient.addQueueMeasurement: adding correlationId ${correlationId} to queue measurements`);
8702
- const measurementArray = [queueMeasurement];
8703
- this.queueMeasurements.set(correlationId, measurementArray);
8704
- }
8705
- // Delete processed pre-queue event.
8706
- this.preQueueTimeByCorrelationId.delete(correlationId);
8707
- }
8708
- /**
8709
- * Starts measuring performance for a given operation. Returns a function that should be used to end the measurement.
8710
- *
8711
- * @param {PerformanceEvents} measureName
8712
- * @param {?string} [correlationId]
8713
- * @returns {InProgressPerformanceEvent}
8714
- */
8715
- startMeasurement(measureName, correlationId) {
8716
- // Generate a placeholder correlation if the request does not provide one
8717
- const eventCorrelationId = correlationId || this.generateId();
8718
- if (!correlationId) {
8719
- this.logger.info(`PerformanceClient: No correlation id provided for ${measureName}, generating`, eventCorrelationId);
8720
- }
8721
- this.logger.trace(`PerformanceClient: Performance measurement started for ${measureName}`, eventCorrelationId);
8722
- const inProgressEvent = {
8723
- eventId: this.generateId(),
8724
- status: PerformanceEventStatus.InProgress,
8725
- authority: this.authority,
8726
- libraryName: this.libraryName,
8727
- libraryVersion: this.libraryVersion,
8728
- clientId: this.clientId,
8729
- name: measureName,
8730
- startTimeMs: Date.now(),
8731
- correlationId: eventCorrelationId,
8732
- appName: this.applicationTelemetry?.appName,
8733
- appVersion: this.applicationTelemetry?.appVersion,
8734
- };
8735
- // Store in progress events so they can be discarded if not ended properly
8736
- this.cacheEventByCorrelationId(inProgressEvent);
8737
- startContext(inProgressEvent, this.abbreviations, this.eventStack.get(eventCorrelationId));
8738
- // Return the event and functions the caller can use to properly end/flush the measurement
8739
- return {
8740
- end: (event, error) => {
8741
- return this.endMeasurement({
8742
- // Initial set of event properties
8743
- ...inProgressEvent,
8744
- // Properties set when event ends
8745
- ...event,
8746
- }, error);
8747
- },
8748
- discard: () => {
8749
- return this.discardMeasurements(inProgressEvent.correlationId);
8750
- },
8751
- add: (fields) => {
8752
- return this.addFields(fields, inProgressEvent.correlationId);
8753
- },
8754
- increment: (fields) => {
8755
- return this.incrementFields(fields, inProgressEvent.correlationId);
8756
- },
8757
- event: inProgressEvent,
8758
- measurement: new StubPerformanceMeasurement(),
8759
- };
8760
- }
8761
- /**
8762
- * Stops measuring the performance for an operation. Should only be called directly by PerformanceClient classes,
8763
- * as consumers should instead use the function returned by startMeasurement.
8764
- * Adds a new field named as "[event name]DurationMs" for sub-measurements, completes and emits an event
8765
- * otherwise.
8766
- *
8767
- * @param {PerformanceEvent} event
8768
- * @param {unknown} error
8769
- * @returns {(PerformanceEvent | null)}
8770
- */
8771
- endMeasurement(event, error) {
8772
- const rootEvent = this.eventsByCorrelationId.get(event.correlationId);
8773
- if (!rootEvent) {
8774
- this.logger.trace(`PerformanceClient: Measurement not found for ${event.eventId}`, event.correlationId);
8775
- return null;
8776
- }
8777
- const isRoot = event.eventId === rootEvent.eventId;
8778
- let queueInfo = {
8779
- totalQueueTime: 0,
8780
- totalQueueCount: 0,
8781
- manuallyCompletedCount: 0,
8782
- };
8783
- event.durationMs = Math.round(event.durationMs || this.getDurationMs(event.startTimeMs));
8784
- const context = JSON.stringify(endContext(event, this.abbreviations, this.eventStack.get(rootEvent.correlationId), error));
8785
- if (isRoot) {
8786
- queueInfo = this.getQueueInfo(event.correlationId);
8787
- this.discardMeasurements(rootEvent.correlationId);
8788
- }
8789
- else {
8790
- rootEvent.incompleteSubMeasurements?.delete(event.eventId);
8791
- }
8792
- this.logger.trace(`PerformanceClient: Performance measurement ended for ${event.name}: ${event.durationMs} ms`, event.correlationId);
8793
- // Add sub-measurement attribute to root event.
8794
- if (!isRoot) {
8795
- rootEvent[event.name + "DurationMs"] = Math.floor(event.durationMs);
8796
- return { ...rootEvent };
8797
- }
8798
- if (error) {
8799
- addError(error, this.logger, rootEvent);
8800
- }
8801
- let finalEvent = { ...rootEvent, ...event };
8802
- let incompleteSubsCount = 0;
8803
- // Incomplete sub-measurements are discarded. They are likely an instrumentation bug that should be fixed.
8804
- finalEvent.incompleteSubMeasurements?.forEach((subMeasurement) => {
8805
- this.logger.trace(`PerformanceClient: Incomplete submeasurement ${subMeasurement.name} found for ${event.name}`, finalEvent.correlationId);
8806
- incompleteSubsCount++;
8807
- });
8808
- finalEvent.incompleteSubMeasurements = undefined;
8809
- finalEvent = {
8810
- ...finalEvent,
8811
- queuedTimeMs: queueInfo.totalQueueTime,
8812
- queuedCount: queueInfo.totalQueueCount,
8813
- queuedManuallyCompletedCount: queueInfo.manuallyCompletedCount,
8814
- status: PerformanceEventStatus.Completed,
8815
- incompleteSubsCount,
8816
- context,
8817
- };
8818
- this.truncateIntegralFields(finalEvent);
8819
- this.emitEvents([finalEvent], event.correlationId);
8820
- return finalEvent;
8821
- }
8822
- /**
8823
- * Saves extra information to be emitted when the measurements are flushed
8824
- * @param fields
8825
- * @param correlationId
8826
- */
8827
- addFields(fields, correlationId) {
8828
- this.logger.trace("PerformanceClient: Updating static fields");
8829
- const event = this.eventsByCorrelationId.get(correlationId);
8830
- if (event) {
8831
- this.eventsByCorrelationId.set(correlationId, {
8832
- ...event,
8833
- ...fields,
8834
- });
8835
- }
8836
- else {
8837
- this.logger.trace("PerformanceClient: Event not found for", correlationId);
8838
- }
8839
- }
8840
- /**
8841
- * Increment counters to be emitted when the measurements are flushed
8842
- * @param fields {string[]}
8843
- * @param correlationId {string} correlation identifier
8844
- */
8845
- incrementFields(fields, correlationId) {
8846
- this.logger.trace("PerformanceClient: Updating counters");
8847
- const event = this.eventsByCorrelationId.get(correlationId);
8848
- if (event) {
8849
- for (const counter in fields) {
8850
- if (!event.hasOwnProperty(counter)) {
8851
- event[counter] = 0;
8852
- }
8853
- else if (isNaN(Number(event[counter]))) {
8854
- return;
8855
- }
8856
- event[counter] += fields[counter];
8857
- }
8858
- }
8859
- else {
8860
- this.logger.trace("PerformanceClient: Event not found for", correlationId);
8861
- }
8862
- }
8863
- /**
8864
- * Upserts event into event cache.
8865
- * First key is the correlation id, second key is the event id.
8866
- * Allows for events to be grouped by correlation id,
8867
- * and to easily allow for properties on them to be updated.
8868
- *
8869
- * @private
8870
- * @param {PerformanceEvent} event
8871
- */
8872
- cacheEventByCorrelationId(event) {
8873
- const rootEvent = this.eventsByCorrelationId.get(event.correlationId);
8874
- if (rootEvent) {
8875
- this.logger.trace(`PerformanceClient: Performance measurement for ${event.name} added/updated`, event.correlationId);
8876
- rootEvent.incompleteSubMeasurements =
8877
- rootEvent.incompleteSubMeasurements || new Map();
8878
- rootEvent.incompleteSubMeasurements.set(event.eventId, {
8879
- name: event.name,
8880
- startTimeMs: event.startTimeMs,
8881
- });
8882
- }
8883
- else {
8884
- this.logger.trace(`PerformanceClient: Performance measurement for ${event.name} started`, event.correlationId);
8885
- this.eventsByCorrelationId.set(event.correlationId, { ...event });
8886
- this.eventStack.set(event.correlationId, []);
8887
- }
8888
- }
8889
- getQueueInfo(correlationId) {
8890
- const queueMeasurementForCorrelationId = this.queueMeasurements.get(correlationId);
8891
- if (!queueMeasurementForCorrelationId) {
8892
- this.logger.trace(`PerformanceClient: no queue measurements found for for correlationId: ${correlationId}`);
8893
- }
8894
- let totalQueueTime = 0;
8895
- let totalQueueCount = 0;
8896
- let manuallyCompletedCount = 0;
8897
- queueMeasurementForCorrelationId?.forEach((measurement) => {
8898
- totalQueueTime += measurement.queueTime;
8899
- totalQueueCount++;
8900
- manuallyCompletedCount += measurement.manuallyCompleted ? 1 : 0;
8901
- });
8902
- return {
8903
- totalQueueTime,
8904
- totalQueueCount,
8905
- manuallyCompletedCount,
8906
- };
8907
- }
8908
- /**
8909
- * Removes measurements and aux data for a given correlation id.
8910
- *
8911
- * @param {string} correlationId
8912
- */
8913
- discardMeasurements(correlationId) {
8914
- this.logger.trace("PerformanceClient: Performance measurements discarded", correlationId);
8915
- this.eventsByCorrelationId.delete(correlationId);
8916
- this.logger.trace("PerformanceClient: QueueMeasurements discarded", correlationId);
8917
- this.queueMeasurements.delete(correlationId);
8918
- this.logger.trace("PerformanceClient: Pre-queue times discarded", correlationId);
8919
- this.preQueueTimeByCorrelationId.delete(correlationId);
8920
- this.logger.trace("PerformanceClient: Event stack discarded", correlationId);
8921
- this.eventStack.delete(correlationId);
8922
- }
8923
- /**
8924
- * Registers a callback function to receive performance events.
8925
- *
8926
- * @param {PerformanceCallbackFunction} callback
8927
- * @returns {string}
8928
- */
8929
- addPerformanceCallback(callback) {
8930
- for (const [id, cb] of this.callbacks) {
8931
- if (cb.toString() === callback.toString()) {
8932
- this.logger.warning(`PerformanceClient: Performance callback is already registered with id: ${id}`);
8933
- return id;
8934
- }
8935
- }
8936
- const callbackId = this.generateId();
8937
- this.callbacks.set(callbackId, callback);
8938
- this.logger.verbose(`PerformanceClient: Performance callback registered with id: ${callbackId}`);
8939
- return callbackId;
8940
- }
8941
- /**
8942
- * Removes a callback registered with addPerformanceCallback.
8943
- *
8944
- * @param {string} callbackId
8945
- * @returns {boolean}
8946
- */
8947
- removePerformanceCallback(callbackId) {
8948
- const result = this.callbacks.delete(callbackId);
8949
- if (result) {
8950
- this.logger.verbose(`PerformanceClient: Performance callback ${callbackId} removed.`);
8951
- }
8952
- else {
8953
- this.logger.verbose(`PerformanceClient: Performance callback ${callbackId} not removed.`);
8954
- }
8955
- return result;
8956
- }
8957
- /**
8958
- * Emits events to all registered callbacks.
8959
- *
8960
- * @param {PerformanceEvent[]} events
8961
- * @param {?string} [correlationId]
8962
- */
8963
- emitEvents(events, correlationId) {
8964
- this.logger.verbose("PerformanceClient: Emitting performance events", correlationId);
8965
- this.callbacks.forEach((callback, callbackId) => {
8966
- this.logger.trace(`PerformanceClient: Emitting event to callback ${callbackId}`, correlationId);
8967
- callback.apply(null, [events]);
8968
- });
8969
- }
8970
- /**
8971
- * Enforce truncation of integral fields in performance event.
8972
- * @param {PerformanceEvent} event performance event to update.
8973
- */
8974
- truncateIntegralFields(event) {
8975
- this.intFields.forEach((key) => {
8976
- if (key in event && typeof event[key] === "number") {
8977
- event[key] = Math.floor(event[key]);
8978
- }
8979
- });
8980
- }
8981
- /**
8982
- * Returns event duration in milliseconds
8983
- * @param startTimeMs {number}
8984
- * @returns {number}
8985
- */
8986
- getDurationMs(startTimeMs) {
8987
- const durationMs = Date.now() - startTimeMs;
8988
- // Handle clock skew
8989
- return durationMs < 0 ? durationMs : 0;
8990
- }
8991
- }
8992
-
8993
8269
  exports.AADAuthorityConstants = AADAuthorityConstants;
8994
8270
  exports.AADServerParamKeys = AADServerParamKeys;
8995
8271
  exports.AccountEntity = AccountEntity;
@@ -9036,14 +8312,13 @@ exports.IntFields = IntFields;
9036
8312
  exports.InteractionRequiredAuthError = InteractionRequiredAuthError;
9037
8313
  exports.InteractionRequiredAuthErrorCodes = InteractionRequiredAuthErrorCodes;
9038
8314
  exports.InteractionRequiredAuthErrorMessage = InteractionRequiredAuthErrorMessage;
9039
- exports.JoseHeader = JoseHeader;
9040
8315
  exports.JsonWebTokenTypes = JsonWebTokenTypes;
9041
8316
  exports.Logger = Logger;
9042
8317
  exports.NetworkManager = NetworkManager;
9043
8318
  exports.OIDC_DEFAULT_SCOPES = OIDC_DEFAULT_SCOPES;
9044
8319
  exports.ONE_DAY_IN_MS = ONE_DAY_IN_MS;
9045
8320
  exports.PasswordGrantConstants = PasswordGrantConstants;
9046
- exports.PerformanceClient = PerformanceClient;
8321
+ exports.PerformanceEventAbbreviations = PerformanceEventAbbreviations;
9047
8322
  exports.PerformanceEventStatus = PerformanceEventStatus;
9048
8323
  exports.PerformanceEvents = PerformanceEvents;
9049
8324
  exports.PersistentCacheKeys = PersistentCacheKeys;
@@ -9061,7 +8336,6 @@ exports.ServerResponseType = ServerResponseType;
9061
8336
  exports.ServerTelemetryManager = ServerTelemetryManager;
9062
8337
  exports.SilentFlowClient = SilentFlowClient;
9063
8338
  exports.StringUtils = StringUtils;
9064
- exports.StubPerformanceClient = StubPerformanceClient;
9065
8339
  exports.StubbedNetworkModule = StubbedNetworkModule;
9066
8340
  exports.THE_FAMILY_ID = THE_FAMILY_ID;
9067
8341
  exports.ThrottlingConstants = ThrottlingConstants;
@@ -9087,4 +8361,4 @@ exports.invokeAsync = invokeAsync;
9087
8361
  exports.tenantIdMatchesHomeTenant = tenantIdMatchesHomeTenant;
9088
8362
  exports.updateAccountTenantProfileData = updateAccountTenantProfileData;
9089
8363
  exports.version = version;
9090
- //# sourceMappingURL=index.cjs.map
8364
+ //# sourceMappingURL=index-node-aee3f7b6.js.map