@azure/msal-browser 2.37.0 → 3.0.0-alpha.1

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 (231) hide show
  1. package/dist/app/IPublicClientApplication.d.ts.map +1 -1
  2. package/dist/app/IPublicClientApplication.js +33 -33
  3. package/dist/app/IPublicClientApplication.js.map +1 -1
  4. package/dist/app/PublicClientApplication.d.ts +198 -24
  5. package/dist/app/PublicClientApplication.d.ts.map +1 -1
  6. package/dist/app/PublicClientApplication.js +263 -220
  7. package/dist/app/PublicClientApplication.js.map +1 -1
  8. package/dist/broker/nativeBroker/NativeMessageHandler.d.ts +5 -4
  9. package/dist/broker/nativeBroker/NativeMessageHandler.d.ts.map +1 -1
  10. package/dist/broker/nativeBroker/NativeMessageHandler.js +118 -124
  11. package/dist/broker/nativeBroker/NativeMessageHandler.js.map +1 -1
  12. package/dist/broker/nativeBroker/NativeRequest.d.ts +4 -4
  13. package/dist/broker/nativeBroker/NativeRequest.d.ts.map +1 -1
  14. package/dist/broker/nativeBroker/NativeResponse.d.ts +4 -4
  15. package/dist/broker/nativeBroker/NativeResponse.d.ts.map +1 -1
  16. package/dist/cache/AsyncMemoryStorage.d.ts.map +1 -1
  17. package/dist/cache/AsyncMemoryStorage.js +83 -152
  18. package/dist/cache/AsyncMemoryStorage.js.map +1 -1
  19. package/dist/cache/BrowserCacheManager.d.ts.map +1 -1
  20. package/dist/cache/BrowserCacheManager.js +420 -412
  21. package/dist/cache/BrowserCacheManager.js.map +1 -1
  22. package/dist/cache/BrowserStorage.d.ts.map +1 -1
  23. package/dist/cache/BrowserStorage.js +19 -19
  24. package/dist/cache/BrowserStorage.js.map +1 -1
  25. package/dist/cache/CryptoKeyStore.d.ts.map +1 -1
  26. package/dist/cache/CryptoKeyStore.js +26 -36
  27. package/dist/cache/CryptoKeyStore.js.map +1 -1
  28. package/dist/cache/DatabaseStorage.d.ts.map +1 -1
  29. package/dist/cache/DatabaseStorage.js +127 -191
  30. package/dist/cache/DatabaseStorage.js.map +1 -1
  31. package/dist/cache/ITokenCache.d.ts.map +1 -1
  32. package/dist/cache/MemoryStorage.d.ts.map +1 -1
  33. package/dist/cache/MemoryStorage.js +18 -19
  34. package/dist/cache/MemoryStorage.js.map +1 -1
  35. package/dist/cache/TokenCache.d.ts +1 -1
  36. package/dist/cache/TokenCache.d.ts.map +1 -1
  37. package/dist/cache/TokenCache.js +55 -49
  38. package/dist/cache/TokenCache.js.map +1 -1
  39. package/dist/config/Configuration.d.ts +8 -8
  40. package/dist/config/Configuration.d.ts.map +1 -1
  41. package/dist/config/Configuration.js +53 -31
  42. package/dist/config/Configuration.js.map +1 -1
  43. package/dist/controllers/ControllerFactory.d.ts +10 -0
  44. package/dist/controllers/ControllerFactory.d.ts.map +1 -0
  45. package/dist/controllers/ControllerFactory.js +47 -0
  46. package/dist/controllers/ControllerFactory.js.map +1 -0
  47. package/dist/controllers/IController.d.ts +67 -0
  48. package/dist/controllers/IController.d.ts.map +1 -0
  49. package/dist/{app/ClientApplication.d.ts → controllers/StandardController.d.ts} +96 -15
  50. package/dist/controllers/StandardController.d.ts.map +1 -0
  51. package/dist/controllers/StandardController.js +1299 -0
  52. package/dist/controllers/StandardController.js.map +1 -0
  53. package/dist/crypto/BrowserCrypto.d.ts.map +1 -1
  54. package/dist/crypto/BrowserCrypto.js +36 -60
  55. package/dist/crypto/BrowserCrypto.js.map +1 -1
  56. package/dist/crypto/CryptoOps.d.ts +1 -1
  57. package/dist/crypto/CryptoOps.d.ts.map +1 -1
  58. package/dist/crypto/CryptoOps.js +93 -151
  59. package/dist/crypto/CryptoOps.js.map +1 -1
  60. package/dist/crypto/GuidGenerator.d.ts.map +1 -1
  61. package/dist/crypto/GuidGenerator.js +36 -25
  62. package/dist/crypto/GuidGenerator.js.map +1 -1
  63. package/dist/crypto/ISubtleCrypto.d.ts.map +1 -1
  64. package/dist/crypto/ModernBrowserCrypto.d.ts.map +1 -1
  65. package/dist/crypto/ModernBrowserCrypto.js +20 -44
  66. package/dist/crypto/ModernBrowserCrypto.js.map +1 -1
  67. package/dist/crypto/MsBrowserCrypto.d.ts.map +1 -1
  68. package/dist/crypto/MsBrowserCrypto.js +65 -89
  69. package/dist/crypto/MsBrowserCrypto.js.map +1 -1
  70. package/dist/crypto/MsrBrowserCrypto.d.ts.map +1 -1
  71. package/dist/crypto/MsrBrowserCrypto.js +23 -47
  72. package/dist/crypto/MsrBrowserCrypto.js.map +1 -1
  73. package/dist/crypto/PkceGenerator.d.ts.map +1 -1
  74. package/dist/crypto/PkceGenerator.js +28 -49
  75. package/dist/crypto/PkceGenerator.js.map +1 -1
  76. package/dist/crypto/SignedHttpRequest.d.ts +1 -1
  77. package/dist/crypto/SignedHttpRequest.d.ts.map +1 -1
  78. package/dist/crypto/SignedHttpRequest.js +15 -37
  79. package/dist/crypto/SignedHttpRequest.js.map +1 -1
  80. package/dist/encode/Base64Decode.d.ts.map +1 -1
  81. package/dist/encode/Base64Decode.js +32 -33
  82. package/dist/encode/Base64Decode.js.map +1 -1
  83. package/dist/encode/Base64Encode.d.ts.map +1 -1
  84. package/dist/encode/Base64Encode.js +34 -35
  85. package/dist/encode/Base64Encode.js.map +1 -1
  86. package/dist/error/BrowserAuthError.d.ts +1 -1
  87. package/dist/error/BrowserAuthError.d.ts.map +1 -1
  88. package/dist/error/BrowserAuthError.js +161 -163
  89. package/dist/error/BrowserAuthError.js.map +1 -1
  90. package/dist/error/BrowserConfigurationAuthError.d.ts.map +1 -1
  91. package/dist/error/BrowserConfigurationAuthError.js +32 -36
  92. package/dist/error/BrowserConfigurationAuthError.js.map +1 -1
  93. package/dist/error/NativeAuthError.d.ts +1 -1
  94. package/dist/error/NativeAuthError.d.ts.map +1 -1
  95. package/dist/error/NativeAuthError.js +26 -27
  96. package/dist/error/NativeAuthError.js.map +1 -1
  97. package/dist/event/EventHandler.d.ts.map +1 -1
  98. package/dist/event/EventHandler.js +33 -33
  99. package/dist/event/EventHandler.js.map +1 -1
  100. package/dist/event/EventMessage.d.ts +5 -5
  101. package/dist/event/EventMessage.d.ts.map +1 -1
  102. package/dist/event/EventMessage.js +18 -14
  103. package/dist/event/EventMessage.js.map +1 -1
  104. package/dist/event/EventType.js +1 -1
  105. package/dist/event/EventType.js.map +1 -1
  106. package/dist/index.d.ts +8 -8
  107. package/dist/index.d.ts.map +1 -1
  108. package/dist/index.js +1 -1
  109. package/dist/interaction_client/BaseInteractionClient.d.ts.map +1 -1
  110. package/dist/interaction_client/BaseInteractionClient.js +92 -123
  111. package/dist/interaction_client/BaseInteractionClient.js.map +1 -1
  112. package/dist/interaction_client/HybridSpaAuthorizationCodeClient.d.ts.map +1 -1
  113. package/dist/interaction_client/HybridSpaAuthorizationCodeClient.js +6 -10
  114. package/dist/interaction_client/HybridSpaAuthorizationCodeClient.js.map +1 -1
  115. package/dist/interaction_client/NativeInteractionClient.d.ts.map +1 -1
  116. package/dist/interaction_client/NativeInteractionClient.js +336 -393
  117. package/dist/interaction_client/NativeInteractionClient.js.map +1 -1
  118. package/dist/interaction_client/PopupClient.d.ts +1 -1
  119. package/dist/interaction_client/PopupClient.d.ts.map +1 -1
  120. package/dist/interaction_client/PopupClient.js +224 -246
  121. package/dist/interaction_client/PopupClient.js.map +1 -1
  122. package/dist/interaction_client/RedirectClient.d.ts.map +1 -1
  123. package/dist/interaction_client/RedirectClient.js +244 -292
  124. package/dist/interaction_client/RedirectClient.js.map +1 -1
  125. package/dist/interaction_client/SilentAuthCodeClient.d.ts.map +1 -1
  126. package/dist/interaction_client/SilentAuthCodeClient.js +50 -63
  127. package/dist/interaction_client/SilentAuthCodeClient.js.map +1 -1
  128. package/dist/interaction_client/SilentCacheClient.d.ts.map +1 -1
  129. package/dist/interaction_client/SilentCacheClient.js +50 -81
  130. package/dist/interaction_client/SilentCacheClient.js.map +1 -1
  131. package/dist/interaction_client/SilentIframeClient.d.ts.map +1 -1
  132. package/dist/interaction_client/SilentIframeClient.js +107 -125
  133. package/dist/interaction_client/SilentIframeClient.js.map +1 -1
  134. package/dist/interaction_client/SilentRefreshClient.d.ts.map +1 -1
  135. package/dist/interaction_client/SilentRefreshClient.js +44 -72
  136. package/dist/interaction_client/SilentRefreshClient.js.map +1 -1
  137. package/dist/interaction_client/StandardInteractionClient.d.ts.map +1 -1
  138. package/dist/interaction_client/StandardInteractionClient.js +144 -180
  139. package/dist/interaction_client/StandardInteractionClient.js.map +1 -1
  140. package/dist/interaction_handler/InteractionHandler.d.ts +1 -1
  141. package/dist/interaction_handler/InteractionHandler.d.ts.map +1 -1
  142. package/dist/interaction_handler/InteractionHandler.js +84 -110
  143. package/dist/interaction_handler/InteractionHandler.js.map +1 -1
  144. package/dist/interaction_handler/RedirectHandler.d.ts +1 -1
  145. package/dist/interaction_handler/RedirectHandler.d.ts.map +1 -1
  146. package/dist/interaction_handler/RedirectHandler.js +105 -122
  147. package/dist/interaction_handler/RedirectHandler.js.map +1 -1
  148. package/dist/interaction_handler/SilentHandler.d.ts.map +1 -1
  149. package/dist/interaction_handler/SilentHandler.js +76 -65
  150. package/dist/interaction_handler/SilentHandler.js.map +1 -1
  151. package/dist/internals.js +1 -1
  152. package/dist/internals.js.map +1 -1
  153. package/dist/navigation/NavigationClient.d.ts.map +1 -1
  154. package/dist/navigation/NavigationClient.js +11 -14
  155. package/dist/navigation/NavigationClient.js.map +1 -1
  156. package/dist/navigation/NavigationOptions.d.ts +1 -1
  157. package/dist/navigation/NavigationOptions.d.ts.map +1 -1
  158. package/dist/network/FetchClient.d.ts.map +1 -1
  159. package/dist/network/FetchClient.js +66 -96
  160. package/dist/network/FetchClient.js.map +1 -1
  161. package/dist/network/XhrClient.d.ts.map +1 -1
  162. package/dist/network/XhrClient.js +38 -51
  163. package/dist/network/XhrClient.js.map +1 -1
  164. package/dist/operatingcontext/BaseOperatingContext.d.ts +41 -0
  165. package/dist/operatingcontext/BaseOperatingContext.d.ts.map +1 -0
  166. package/dist/operatingcontext/BaseOperatingContext.js +53 -0
  167. package/dist/operatingcontext/BaseOperatingContext.js.map +1 -0
  168. package/dist/operatingcontext/StandardOperatingContext.d.ts +26 -0
  169. package/dist/operatingcontext/StandardOperatingContext.d.ts.map +1 -0
  170. package/dist/operatingcontext/StandardOperatingContext.js +50 -0
  171. package/dist/operatingcontext/StandardOperatingContext.js.map +1 -0
  172. package/dist/operatingcontext/TeamsAppOperatingContext.d.ts +26 -0
  173. package/dist/operatingcontext/TeamsAppOperatingContext.d.ts.map +1 -0
  174. package/dist/operatingcontext/TeamsAppOperatingContext.js +49 -0
  175. package/dist/operatingcontext/TeamsAppOperatingContext.js.map +1 -0
  176. package/dist/packageMetadata.d.ts +1 -1
  177. package/dist/packageMetadata.d.ts.map +1 -1
  178. package/dist/packageMetadata.js +3 -3
  179. package/dist/packageMetadata.js.map +1 -1
  180. package/dist/request/AuthorizationCodeRequest.d.ts +1 -1
  181. package/dist/request/AuthorizationCodeRequest.d.ts.map +1 -1
  182. package/dist/request/AuthorizationUrlRequest.d.ts +1 -1
  183. package/dist/request/AuthorizationUrlRequest.d.ts.map +1 -1
  184. package/dist/request/EndSessionPopupRequest.d.ts +1 -1
  185. package/dist/request/EndSessionPopupRequest.d.ts.map +1 -1
  186. package/dist/request/EndSessionRequest.d.ts +1 -1
  187. package/dist/request/EndSessionRequest.d.ts.map +1 -1
  188. package/dist/request/PopupRequest.d.ts +1 -1
  189. package/dist/request/PopupRequest.d.ts.map +1 -1
  190. package/dist/request/PopupWindowAttributes.d.ts +3 -3
  191. package/dist/request/PopupWindowAttributes.d.ts.map +1 -1
  192. package/dist/request/RedirectRequest.d.ts +1 -1
  193. package/dist/request/RedirectRequest.d.ts.map +1 -1
  194. package/dist/request/SilentRequest.d.ts +1 -1
  195. package/dist/request/SilentRequest.d.ts.map +1 -1
  196. package/dist/request/SsoSilentRequest.d.ts +1 -1
  197. package/dist/request/SsoSilentRequest.d.ts.map +1 -1
  198. package/dist/telemetry/BrowserPerformanceClient.d.ts +1 -1
  199. package/dist/telemetry/BrowserPerformanceClient.d.ts.map +1 -1
  200. package/dist/telemetry/BrowserPerformanceClient.js +62 -57
  201. package/dist/telemetry/BrowserPerformanceClient.js.map +1 -1
  202. package/dist/telemetry/BrowserPerformanceMeasurement.d.ts.map +1 -1
  203. package/dist/telemetry/BrowserPerformanceMeasurement.js +30 -31
  204. package/dist/telemetry/BrowserPerformanceMeasurement.js.map +1 -1
  205. package/dist/utils/BrowserConstants.d.ts.map +1 -1
  206. package/dist/utils/BrowserConstants.js +10 -10
  207. package/dist/utils/BrowserConstants.js.map +1 -1
  208. package/dist/utils/BrowserProtocolUtils.d.ts +1 -1
  209. package/dist/utils/BrowserProtocolUtils.d.ts.map +1 -1
  210. package/dist/utils/BrowserProtocolUtils.js +9 -12
  211. package/dist/utils/BrowserProtocolUtils.js.map +1 -1
  212. package/dist/utils/BrowserStringUtils.d.ts.map +1 -1
  213. package/dist/utils/BrowserStringUtils.js +83 -49
  214. package/dist/utils/BrowserStringUtils.js.map +1 -1
  215. package/dist/utils/BrowserUtils.d.ts.map +1 -1
  216. package/dist/utils/BrowserUtils.js +51 -49
  217. package/dist/utils/BrowserUtils.js.map +1 -1
  218. package/dist/utils/MathUtils.d.ts.map +1 -1
  219. package/dist/utils/MathUtils.js +6 -9
  220. package/dist/utils/MathUtils.js.map +1 -1
  221. package/package.json +17 -16
  222. package/dist/_virtual/_tslib.js +0 -117
  223. package/dist/_virtual/_tslib.js.map +0 -1
  224. package/dist/app/ClientApplication.d.ts.map +0 -1
  225. package/dist/app/ClientApplication.js +0 -1053
  226. package/dist/app/ClientApplication.js.map +0 -1
  227. package/dist/index.cjs.js +0 -18080
  228. package/dist/index.cjs.js.map +0 -1
  229. package/lib/msal-browser.js +0 -18086
  230. package/lib/msal-browser.js.map +0 -1
  231. package/lib/msal-browser.min.js +0 -70
@@ -1 +1 @@
1
- {"version":3,"file":"CryptoOps.js","sources":["../../src/crypto/CryptoOps.ts"],"sourcesContent":["/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n\r\nimport { ICrypto, IPerformanceClient, JoseHeader, Logger, PerformanceEvents, PkceCodes, SignedHttpRequest, SignedHttpRequestParameters } from \"@azure/msal-common\";\r\nimport { GuidGenerator } from \"./GuidGenerator\";\r\nimport { Base64Encode } from \"../encode/Base64Encode\";\r\nimport { Base64Decode } from \"../encode/Base64Decode\";\r\nimport { PkceGenerator } from \"./PkceGenerator\";\r\nimport { BrowserCrypto } from \"./BrowserCrypto\";\r\nimport { BrowserStringUtils } from \"../utils/BrowserStringUtils\";\r\nimport { BrowserAuthError } from \"../error/BrowserAuthError\";\r\nimport { CryptoKeyStore } from \"../cache/CryptoKeyStore\";\r\nimport { CryptoOptions } from \"../config/Configuration\";\r\n\r\nexport type CachedKeyPair = {\r\n publicKey: CryptoKey,\r\n privateKey: CryptoKey,\r\n requestMethod?: string,\r\n requestUri?: string\r\n};\r\n\r\n/**\r\n * This class implements MSAL's crypto interface, which allows it to perform base64 encoding and decoding, generating cryptographically random GUIDs and \r\n * implementing Proof Key for Code Exchange specs for the OAuth Authorization Code Flow using PKCE (rfc here: https://tools.ietf.org/html/rfc7636).\r\n */\r\nexport class CryptoOps implements ICrypto {\r\n\r\n private browserCrypto: BrowserCrypto;\r\n private guidGenerator: GuidGenerator;\r\n private b64Encode: Base64Encode;\r\n private b64Decode: Base64Decode;\r\n private pkceGenerator: PkceGenerator;\r\n private logger: Logger;\r\n\r\n /**\r\n * CryptoOps can be used in contexts outside a PCA instance,\r\n * meaning there won't be a performance manager available.\r\n */\r\n private performanceClient: IPerformanceClient | undefined;\r\n\r\n private static POP_KEY_USAGES: Array<KeyUsage> = [\"sign\", \"verify\"];\r\n private static EXTRACTABLE: boolean = true;\r\n private cache: CryptoKeyStore;\r\n\r\n constructor(logger: Logger, performanceClient?: IPerformanceClient, cryptoConfig?: CryptoOptions) {\r\n this.logger = logger;\r\n // Browser crypto needs to be validated first before any other classes can be set.\r\n this.browserCrypto = new BrowserCrypto(this.logger, cryptoConfig);\r\n this.b64Encode = new Base64Encode();\r\n this.b64Decode = new Base64Decode();\r\n this.guidGenerator = new GuidGenerator(this.browserCrypto);\r\n this.pkceGenerator = new PkceGenerator(this.browserCrypto);\r\n this.cache = new CryptoKeyStore(this.logger);\r\n this.performanceClient = performanceClient;\r\n }\r\n\r\n /**\r\n * Creates a new random GUID - used to populate state and nonce.\r\n * @returns string (GUID)\r\n */\r\n createNewGuid(): string {\r\n return this.guidGenerator.generateGuid();\r\n }\r\n\r\n /**\r\n * Encodes input string to base64.\r\n * @param input \r\n */\r\n base64Encode(input: string): string {\r\n return this.b64Encode.encode(input);\r\n } \r\n \r\n /**\r\n * Decodes input string from base64.\r\n * @param input \r\n */\r\n base64Decode(input: string): string {\r\n return this.b64Decode.decode(input);\r\n }\r\n\r\n /**\r\n * Generates PKCE codes used in Authorization Code Flow.\r\n */\r\n async generatePkceCodes(): Promise<PkceCodes> {\r\n return this.pkceGenerator.generateCodes();\r\n }\r\n\r\n /**\r\n * Generates a keypair, stores it and returns a thumbprint\r\n * @param request\r\n */\r\n async getPublicKeyThumbprint(request: SignedHttpRequestParameters): Promise<string> {\r\n const publicKeyThumbMeasurement = this.performanceClient?.startMeasurement(PerformanceEvents.CryptoOptsGetPublicKeyThumbprint, request.correlationId);\r\n\r\n // Generate Keypair\r\n const keyPair: CryptoKeyPair = await this.browserCrypto.generateKeyPair(CryptoOps.EXTRACTABLE, CryptoOps.POP_KEY_USAGES);\r\n\r\n // Generate Thumbprint for Public Key\r\n const publicKeyJwk: JsonWebKey = await this.browserCrypto.exportJwk(keyPair.publicKey);\r\n \r\n const pubKeyThumprintObj: JsonWebKey = {\r\n e: publicKeyJwk.e,\r\n kty: publicKeyJwk.kty,\r\n n: publicKeyJwk.n\r\n };\r\n \r\n const publicJwkString: string = BrowserStringUtils.getSortedObjectString(pubKeyThumprintObj);\r\n const publicJwkHash = await this.hashString(publicJwkString);\r\n\r\n // Generate Thumbprint for Private Key\r\n const privateKeyJwk: JsonWebKey = await this.browserCrypto.exportJwk(keyPair.privateKey);\r\n // Re-import private key to make it unextractable\r\n const unextractablePrivateKey: CryptoKey = await this.browserCrypto.importJwk(privateKeyJwk, false, [\"sign\"]);\r\n\r\n // Store Keypair data in keystore\r\n await this.cache.asymmetricKeys.setItem(\r\n publicJwkHash, \r\n {\r\n privateKey: unextractablePrivateKey,\r\n publicKey: keyPair.publicKey,\r\n requestMethod: request.resourceRequestMethod,\r\n requestUri: request.resourceRequestUri\r\n }\r\n );\r\n\r\n if (publicKeyThumbMeasurement) {\r\n publicKeyThumbMeasurement.endMeasurement({\r\n success: true\r\n });\r\n }\r\n\r\n return publicJwkHash;\r\n }\r\n\r\n /**\r\n * Removes cryptographic keypair from key store matching the keyId passed in\r\n * @param kid \r\n */\r\n async removeTokenBindingKey(kid: string): Promise<boolean> {\r\n await this.cache.asymmetricKeys.removeItem(kid);\r\n const keyFound = await this.cache.asymmetricKeys.containsKey(kid);\r\n return !keyFound;\r\n }\r\n\r\n /**\r\n * Removes all cryptographic keys from IndexedDB storage\r\n */\r\n async clearKeystore(): Promise<boolean> {\r\n return await this.cache.clear();\r\n }\r\n\r\n /**\r\n * Signs the given object as a jwt payload with private key retrieved by given kid.\r\n * @param payload \r\n * @param kid \r\n */\r\n async signJwt(payload: SignedHttpRequest, kid: string, correlationId?: string): Promise<string> {\r\n const signJwtMeasurement = this.performanceClient?.startMeasurement(PerformanceEvents.CryptoOptsSignJwt, correlationId);\r\n const cachedKeyPair = await this.cache.asymmetricKeys.getItem(kid);\r\n \r\n if (!cachedKeyPair) {\r\n throw BrowserAuthError.createSigningKeyNotFoundInStorageError(kid);\r\n }\r\n\r\n // Get public key as JWK\r\n const publicKeyJwk = await this.browserCrypto.exportJwk(cachedKeyPair.publicKey);\r\n const publicKeyJwkString = BrowserStringUtils.getSortedObjectString(publicKeyJwk);\r\n\r\n // Base64URL encode public key thumbprint with keyId only: BASE64URL({ kid: \"FULL_PUBLIC_KEY_HASH\" })\r\n const encodedKeyIdThumbprint = this.b64Encode.urlEncode(JSON.stringify({ kid: kid }));\r\n \r\n // Generate header\r\n const shrHeader = JoseHeader.getShrHeaderString({ kid: encodedKeyIdThumbprint, alg: publicKeyJwk.alg });\r\n const encodedShrHeader = this.b64Encode.urlEncode(shrHeader);\r\n\r\n // Generate payload\r\n payload.cnf = {\r\n jwk: JSON.parse(publicKeyJwkString)\r\n };\r\n const encodedPayload = this.b64Encode.urlEncode(JSON.stringify(payload));\r\n\r\n // Form token string\r\n const tokenString = `${encodedShrHeader}.${encodedPayload}`;\r\n\r\n // Sign token\r\n const tokenBuffer = BrowserStringUtils.stringToArrayBuffer(tokenString);\r\n const signatureBuffer = await this.browserCrypto.sign(cachedKeyPair.privateKey, tokenBuffer);\r\n const encodedSignature = this.b64Encode.urlEncodeArr(new Uint8Array(signatureBuffer));\r\n\r\n const signedJwt = `${tokenString}.${encodedSignature}`;\r\n\r\n if (signJwtMeasurement) {\r\n signJwtMeasurement.endMeasurement({\r\n success: true\r\n });\r\n }\r\n\r\n return signedJwt;\r\n }\r\n\r\n /**\r\n * Returns the SHA-256 hash of an input string\r\n * @param plainText\r\n */\r\n async hashString(plainText: string): Promise<string> {\r\n const hashBuffer: ArrayBuffer = await this.browserCrypto.sha256Digest(plainText);\r\n const hashBytes = new Uint8Array(hashBuffer);\r\n return this.b64Encode.urlEncodeArr(hashBytes);\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CryptoOps.js","sources":["../../src/crypto/CryptoOps.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;AAGG;AA6BH;;;AAGG;MACU,SAAS,CAAA;AAkBlB,IAAA,WAAA,CACI,MAAc,EACd,iBAAsC,EACtC,YAA4B,EAAA;AAE5B,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;;AAErB,QAAA,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAClE,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI,YAAY,EAAE,CAAC;AACpC,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI,YAAY,EAAE,CAAC;QACpC,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC3D,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC3D,IAAI,CAAC,KAAK,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC7C,QAAA,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;KAC9C;AAED;;;AAGG;IACH,aAAa,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;KAC5C;AAED;;;AAGG;AACH,IAAA,YAAY,CAAC,KAAa,EAAA;QACtB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;KACvC;AAED;;;AAGG;AACH,IAAA,YAAY,CAAC,KAAa,EAAA;QACtB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;KACvC;AAED;;AAEG;AACH,IAAA,MAAM,iBAAiB,GAAA;AACnB,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC;KAC7C;AAED;;;AAGG;IACH,MAAM,sBAAsB,CACxB,OAAoC,EAAA;AAEpC,QAAA,MAAM,yBAAyB,GAC3B,IAAI,CAAC,iBAAiB,EAAE,gBAAgB,CACpC,iBAAiB,CAAC,gCAAgC,EAClD,OAAO,CAAC,aAAa,CACxB,CAAC;;AAGN,QAAA,MAAM,OAAO,GAAkB,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,CACnE,SAAS,CAAC,WAAW,EACrB,SAAS,CAAC,cAAc,CAC3B,CAAC;;AAGF,QAAA,MAAM,YAAY,GAAe,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAC/D,OAAO,CAAC,SAAS,CACpB,CAAC;AAEF,QAAA,MAAM,kBAAkB,GAAe;YACnC,CAAC,EAAE,YAAY,CAAC,CAAC;YACjB,GAAG,EAAE,YAAY,CAAC,GAAG;YACrB,CAAC,EAAE,YAAY,CAAC,CAAC;SACpB,CAAC;QAEF,MAAM,eAAe,GACjB,kBAAkB,CAAC,qBAAqB,CAAC,kBAAkB,CAAC,CAAC;QACjE,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;;AAG7D,QAAA,MAAM,aAAa,GAAe,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAChE,OAAO,CAAC,UAAU,CACrB,CAAC;;AAEF,QAAA,MAAM,uBAAuB,GACzB,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,aAAa,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;;QAGvE,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,aAAa,EAAE;AACnD,YAAA,UAAU,EAAE,uBAAuB;YACnC,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,aAAa,EAAE,OAAO,CAAC,qBAAqB;YAC5C,UAAU,EAAE,OAAO,CAAC,kBAAkB;AACzC,SAAA,CAAC,CAAC;AAEH,QAAA,IAAI,yBAAyB,EAAE;YAC3B,yBAAyB,CAAC,cAAc,CAAC;AACrC,gBAAA,OAAO,EAAE,IAAI;AAChB,aAAA,CAAC,CAAC;AACN,SAAA;AAED,QAAA,OAAO,aAAa,CAAC;KACxB;AAED;;;AAGG;IACH,MAAM,qBAAqB,CAAC,GAAW,EAAA;QACnC,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AAChD,QAAA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAClE,OAAO,CAAC,QAAQ,CAAC;KACpB;AAED;;AAEG;AACH,IAAA,MAAM,aAAa,GAAA;AACf,QAAA,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;KACnC;AAED;;;;AAIG;AACH,IAAA,MAAM,OAAO,CACT,OAA0B,EAC1B,GAAW,EACX,aAAsB,EAAA;AAEtB,QAAA,MAAM,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,EAAE,gBAAgB,CAC/D,iBAAiB,CAAC,iBAAiB,EACnC,aAAa,CAChB,CAAC;AACF,QAAA,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAEnE,IAAI,CAAC,aAAa,EAAE;AAChB,YAAA,MAAM,gBAAgB,CAAC,sCAAsC,CAAC,GAAG,CAAC,CAAC;AACtE,SAAA;;AAGD,QAAA,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CACnD,aAAa,CAAC,SAAS,CAC1B,CAAC;QACF,MAAM,kBAAkB,GACpB,kBAAkB,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;;AAG3D,QAAA,MAAM,sBAAsB,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CACnD,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAC/B,CAAC;;AAGF,QAAA,MAAM,SAAS,GAAG,UAAU,CAAC,kBAAkB,CAAC;AAC5C,YAAA,GAAG,EAAE,sBAAsB;YAC3B,GAAG,EAAE,YAAY,CAAC,GAAG;AACxB,SAAA,CAAC,CAAC;QACH,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;;QAG7D,OAAO,CAAC,GAAG,GAAG;AACV,YAAA,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC;SACtC,CAAC;AACF,QAAA,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAC3C,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAC1B,CAAC;;AAGF,QAAA,MAAM,WAAW,GAAG,CAAA,EAAG,gBAAgB,CAAI,CAAA,EAAA,cAAc,EAAE,CAAC;;QAG5D,MAAM,WAAW,GAAG,kBAAkB,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;AACxE,QAAA,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CACjD,aAAa,CAAC,UAAU,EACxB,WAAW,CACd,CAAC;AACF,QAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAChD,IAAI,UAAU,CAAC,eAAe,CAAC,CAClC,CAAC;AAEF,QAAA,MAAM,SAAS,GAAG,CAAA,EAAG,WAAW,CAAI,CAAA,EAAA,gBAAgB,EAAE,CAAC;AAEvD,QAAA,IAAI,kBAAkB,EAAE;YACpB,kBAAkB,CAAC,cAAc,CAAC;AAC9B,gBAAA,OAAO,EAAE,IAAI;AAChB,aAAA,CAAC,CAAC;AACN,SAAA;AAED,QAAA,OAAO,SAAS,CAAC;KACpB;AAED;;;AAGG;IACH,MAAM,UAAU,CAAC,SAAiB,EAAA;QAC9B,MAAM,UAAU,GAAgB,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CACjE,SAAS,CACZ,CAAC;AACF,QAAA,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,UAAU,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;KACjD;;AAhNc,SAAA,CAAA,cAAc,GAAoB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AACrD,SAAW,CAAA,WAAA,GAAY,IAAI;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"GuidGenerator.d.ts","sourceRoot":"","sources":["../../src/crypto/GuidGenerator.ts"],"names":[],"mappings":"AAKA,OAAO,EAAc,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEhE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,qBAAa,aAAc,YAAW,cAAc;IAGhD,OAAO,CAAC,SAAS,CAAgB;gBAErB,SAAS,EAAE,aAAa;IA0BpC,YAAY,IAAI,MAAM;IA+CtB;;;OAGG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;CAIhC"}
1
+ {"version":3,"file":"GuidGenerator.d.ts","sourceRoot":"","sources":["../../src/crypto/GuidGenerator.ts"],"names":[],"mappings":"AAKA,OAAO,EAAa,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAE/D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,qBAAa,aAAc,YAAW,cAAc;IAEhD,OAAO,CAAC,SAAS,CAAgB;gBAErB,SAAS,EAAE,aAAa;IA0BpC,YAAY,IAAI,MAAM;IA4DtB;;;OAGG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;CAKhC"}
@@ -1,4 +1,4 @@
1
- /*! @azure/msal-browser v2.37.0 2023-05-01 */
1
+ /*! @azure/msal-browser v3.0.0-alpha.1 2023-05-08 */
2
2
  'use strict';
3
3
  import { Constants } from '@azure/msal-common';
4
4
  import { MathUtils } from '../utils/MathUtils.js';
@@ -7,8 +7,8 @@ import { MathUtils } from '../utils/MathUtils.js';
7
7
  * Copyright (c) Microsoft Corporation. All rights reserved.
8
8
  * Licensed under the MIT License.
9
9
  */
10
- var GuidGenerator = /** @class */ (function () {
11
- function GuidGenerator(cryptoObj) {
10
+ class GuidGenerator {
11
+ constructor(cryptoObj) {
12
12
  this.cryptoObj = cryptoObj;
13
13
  }
14
14
  /*
@@ -33,9 +33,9 @@ var GuidGenerator = /** @class */ (function () {
33
33
  * y could be 1000, 1001, 1010, 1011 since most significant two bits needs to be 10
34
34
  * y values are 8, 9, A, B
35
35
  */
36
- GuidGenerator.prototype.generateGuid = function () {
36
+ generateGuid() {
37
37
  try {
38
- var buffer = new Uint8Array(16);
38
+ const buffer = new Uint8Array(16);
39
39
  this.cryptoObj.getRandomValues(buffer);
40
40
  // buffer[6] and buffer[7] represents the time_hi_and_version field. We will set the four most significant bits (4 through 7) of buffer[6] to represent decimal number 4 (UUID version number).
41
41
  buffer[6] |= 0x40; // buffer[6] | 01000000 will set the 6 bit to 1.
@@ -43,24 +43,36 @@ var GuidGenerator = /** @class */ (function () {
43
43
  // buffer[8] represents the clock_seq_hi_and_reserved field. We will set the two most significant bits (6 and 7) of the clock_seq_hi_and_reserved to zero and one, respectively.
44
44
  buffer[8] |= 0x80; // buffer[8] | 10000000 will set the 7 bit to 1.
45
45
  buffer[8] &= 0xbf; // buffer[8] & 10111111 will set the 6 bit to 0.
46
- return MathUtils.decimalToHex(buffer[0]) + MathUtils.decimalToHex(buffer[1])
47
- + MathUtils.decimalToHex(buffer[2]) + MathUtils.decimalToHex(buffer[3])
48
- + "-" + MathUtils.decimalToHex(buffer[4]) + MathUtils.decimalToHex(buffer[5])
49
- + "-" + MathUtils.decimalToHex(buffer[6]) + MathUtils.decimalToHex(buffer[7])
50
- + "-" + MathUtils.decimalToHex(buffer[8]) + MathUtils.decimalToHex(buffer[9])
51
- + "-" + MathUtils.decimalToHex(buffer[10]) + MathUtils.decimalToHex(buffer[11])
52
- + MathUtils.decimalToHex(buffer[12]) + MathUtils.decimalToHex(buffer[13])
53
- + MathUtils.decimalToHex(buffer[14]) + MathUtils.decimalToHex(buffer[15]);
46
+ return (MathUtils.decimalToHex(buffer[0]) +
47
+ MathUtils.decimalToHex(buffer[1]) +
48
+ MathUtils.decimalToHex(buffer[2]) +
49
+ MathUtils.decimalToHex(buffer[3]) +
50
+ "-" +
51
+ MathUtils.decimalToHex(buffer[4]) +
52
+ MathUtils.decimalToHex(buffer[5]) +
53
+ "-" +
54
+ MathUtils.decimalToHex(buffer[6]) +
55
+ MathUtils.decimalToHex(buffer[7]) +
56
+ "-" +
57
+ MathUtils.decimalToHex(buffer[8]) +
58
+ MathUtils.decimalToHex(buffer[9]) +
59
+ "-" +
60
+ MathUtils.decimalToHex(buffer[10]) +
61
+ MathUtils.decimalToHex(buffer[11]) +
62
+ MathUtils.decimalToHex(buffer[12]) +
63
+ MathUtils.decimalToHex(buffer[13]) +
64
+ MathUtils.decimalToHex(buffer[14]) +
65
+ MathUtils.decimalToHex(buffer[15]));
54
66
  }
55
67
  catch (err) {
56
- var guidHolder = "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";
57
- var hex = "0123456789abcdef";
58
- var r = 0;
59
- var guidResponse = Constants.EMPTY_STRING;
60
- for (var i = 0; i < 36; i++) {
68
+ const guidHolder = "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";
69
+ const hex = "0123456789abcdef";
70
+ let r = 0;
71
+ let guidResponse = Constants.EMPTY_STRING;
72
+ for (let i = 0; i < 36; i++) {
61
73
  if (guidHolder[i] !== "-" && guidHolder[i] !== "4") {
62
74
  // each x and y needs to be random
63
- r = Math.random() * 16 | 0;
75
+ r = (Math.random() * 16) | 0;
64
76
  }
65
77
  if (guidHolder[i] === "x") {
66
78
  guidResponse += hex[r];
@@ -77,17 +89,16 @@ var GuidGenerator = /** @class */ (function () {
77
89
  }
78
90
  return guidResponse;
79
91
  }
80
- };
92
+ }
81
93
  /**
82
94
  * verifies if a string is GUID
83
95
  * @param guid
84
96
  */
85
- GuidGenerator.prototype.isGuid = function (guid) {
86
- var regexGuid = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
97
+ isGuid(guid) {
98
+ const regexGuid = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
87
99
  return regexGuid.test(guid);
88
- };
89
- return GuidGenerator;
90
- }());
100
+ }
101
+ }
91
102
 
92
103
  export { GuidGenerator };
93
104
  //# sourceMappingURL=GuidGenerator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GuidGenerator.js","sources":["../../src/crypto/GuidGenerator.ts"],"sourcesContent":["/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n\r\nimport { Constants , IGuidGenerator } from \"@azure/msal-common\";\r\nimport { MathUtils } from \"../utils/MathUtils\";\r\nimport { BrowserCrypto } from \"./BrowserCrypto\";\r\nexport class GuidGenerator implements IGuidGenerator {\r\n\r\n // browser crypto object used to generate random values\r\n private cryptoObj: BrowserCrypto;\r\n\r\n constructor(cryptoObj: BrowserCrypto) {\r\n this.cryptoObj = cryptoObj;\r\n }\r\n\r\n /*\r\n * RFC4122: The version 4 UUID is meant for generating UUIDs from truly-random or\r\n * pseudo-random numbers.\r\n * The algorithm is as follows:\r\n * Set the two most significant bits (bits 6 and 7) of the\r\n * clock_seq_hi_and_reserved to zero and one, respectively.\r\n * Set the four most significant bits (bits 12 through 15) of the\r\n * time_hi_and_version field to the 4-bit version number from\r\n * Section 4.1.3. Version4\r\n * Set all the other bits to randomly (or pseudo-randomly) chosen\r\n * values.\r\n * UUID = time-low \"-\" time-mid \"-\"time-high-and-version \"-\"clock-seq-reserved and low(2hexOctet)\"-\" node\r\n * time-low = 4hexOctet\r\n * time-mid = 2hexOctet\r\n * time-high-and-version = 2hexOctet\r\n * clock-seq-and-reserved = hexOctet:\r\n * clock-seq-low = hexOctet\r\n * node = 6hexOctet\r\n * Format: xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\r\n * y could be 1000, 1001, 1010, 1011 since most significant two bits needs to be 10\r\n * y values are 8, 9, A, B\r\n */\r\n generateGuid(): string {\r\n try {\r\n const buffer: Uint8Array = new Uint8Array(16);\r\n this.cryptoObj.getRandomValues(buffer);\r\n\r\n // buffer[6] and buffer[7] represents the time_hi_and_version field. We will set the four most significant bits (4 through 7) of buffer[6] to represent decimal number 4 (UUID version number).\r\n buffer[6] |= 0x40; // buffer[6] | 01000000 will set the 6 bit to 1.\r\n buffer[6] &= 0x4f; // buffer[6] & 01001111 will set the 4, 5, and 7 bit to 0 such that bits 4-7 == 0100 = \"4\".\r\n\r\n // buffer[8] represents the clock_seq_hi_and_reserved field. We will set the two most significant bits (6 and 7) of the clock_seq_hi_and_reserved to zero and one, respectively.\r\n buffer[8] |= 0x80; // buffer[8] | 10000000 will set the 7 bit to 1.\r\n buffer[8] &= 0xbf; // buffer[8] & 10111111 will set the 6 bit to 0.\r\n\r\n return MathUtils.decimalToHex(buffer[0]) + MathUtils.decimalToHex(buffer[1])\r\n + MathUtils.decimalToHex(buffer[2]) + MathUtils.decimalToHex(buffer[3])\r\n + \"-\" + MathUtils.decimalToHex(buffer[4]) + MathUtils.decimalToHex(buffer[5])\r\n + \"-\" + MathUtils.decimalToHex(buffer[6]) + MathUtils.decimalToHex(buffer[7])\r\n + \"-\" + MathUtils.decimalToHex(buffer[8]) + MathUtils.decimalToHex(buffer[9])\r\n + \"-\" + MathUtils.decimalToHex(buffer[10]) + MathUtils.decimalToHex(buffer[11])\r\n + MathUtils.decimalToHex(buffer[12]) + MathUtils.decimalToHex(buffer[13])\r\n + MathUtils.decimalToHex(buffer[14]) + MathUtils.decimalToHex(buffer[15]);\r\n }\r\n catch (err) {\r\n const guidHolder: string = \"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\";\r\n const hex: string = \"0123456789abcdef\";\r\n let r: number = 0;\r\n let guidResponse: string = Constants.EMPTY_STRING;\r\n for (let i: number = 0; i < 36; i++) {\r\n if (guidHolder[i] !== \"-\" && guidHolder[i] !== \"4\") {\r\n // each x and y needs to be random\r\n r = Math.random() * 16 | 0;\r\n }\r\n if (guidHolder[i] === \"x\") {\r\n guidResponse += hex[r];\r\n } else if (guidHolder[i] === \"y\") {\r\n // clock-seq-and-reserved first hex is filtered and remaining hex values are random\r\n r &= 0x3; // bit and with 0011 to set pos 2 to zero ?0??\r\n r |= 0x8; // set pos 3 to 1 as 1???\r\n guidResponse += hex[r];\r\n } else {\r\n guidResponse += guidHolder[i];\r\n }\r\n }\r\n return guidResponse;\r\n }\r\n }\r\n\r\n /**\r\n * verifies if a string is GUID\r\n * @param guid\r\n */\r\n isGuid(guid: string): boolean {\r\n const regexGuid = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;\r\n return regexGuid.test(guid);\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GuidGenerator.js","sources":["../../src/crypto/GuidGenerator.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAAA;;;AAGG;MAKU,aAAa,CAAA;AAItB,IAAA,WAAA,CAAY,SAAwB,EAAA;AAChC,QAAA,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;KAC9B;AAED;;;;;;;;;;;;;;;;;;;;;AAqBG;IACH,YAAY,GAAA;QACR,IAAI;AACA,YAAA,MAAM,MAAM,GAAe,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;AAC9C,YAAA,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;;AAGvC,YAAA,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;AAClB,YAAA,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;;AAGlB,YAAA,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;AAClB,YAAA,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;YAElB,QACI,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACjC,gBAAA,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACjC,gBAAA,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACjC,gBAAA,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACjC,GAAG;AACH,gBAAA,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACjC,gBAAA,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACjC,GAAG;AACH,gBAAA,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACjC,gBAAA,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACjC,GAAG;AACH,gBAAA,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACjC,gBAAA,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACjC,GAAG;AACH,gBAAA,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAClC,gBAAA,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAClC,gBAAA,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAClC,gBAAA,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAClC,gBAAA,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAClC,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EACpC;AACL,SAAA;AAAC,QAAA,OAAO,GAAG,EAAE;YACV,MAAM,UAAU,GAAW,sCAAsC,CAAC;YAClE,MAAM,GAAG,GAAW,kBAAkB,CAAC;YACvC,IAAI,CAAC,GAAW,CAAC,CAAC;AAClB,YAAA,IAAI,YAAY,GAAW,SAAS,CAAC,YAAY,CAAC;YAClD,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;AACjC,gBAAA,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;;oBAEhD,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;AAChC,iBAAA;AACD,gBAAA,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;AACvB,oBAAA,YAAY,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;AAC1B,iBAAA;AAAM,qBAAA,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;;AAE9B,oBAAA,CAAC,IAAI,GAAG,CAAC;AACT,oBAAA,CAAC,IAAI,GAAG,CAAC;AACT,oBAAA,YAAY,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;AAC1B,iBAAA;AAAM,qBAAA;AACH,oBAAA,YAAY,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;AACjC,iBAAA;AACJ,aAAA;AACD,YAAA,OAAO,YAAY,CAAC;AACvB,SAAA;KACJ;AAED;;;AAGG;AACH,IAAA,MAAM,CAAC,IAAY,EAAA;QACf,MAAM,SAAS,GACX,4EAA4E,CAAC;AACjF,QAAA,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC/B;AACJ;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"ISubtleCrypto.d.ts","sourceRoot":"","sources":["../../src/crypto/ISubtleCrypto.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,aAAa;IAC1B,QAAQ,CAAC,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;IACrC,eAAe,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU,CAAC;IACpD,WAAW,CAAC,SAAS,EAAE,qBAAqB,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IACnH,SAAS,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC/C,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,qBAAqB,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAClI,IAAI,CAAC,SAAS,EAAE,mBAAmB,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAC9F,MAAM,CAAC,SAAS,EAAE,mBAAmB,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;CAClF"}
1
+ {"version":3,"file":"ISubtleCrypto.d.ts","sourceRoot":"","sources":["../../src/crypto/ISubtleCrypto.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,aAAa;IAC1B,QAAQ,CAAC,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;IACrC,eAAe,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU,CAAC;IACpD,WAAW,CACP,SAAS,EAAE,qBAAqB,EAChC,WAAW,EAAE,OAAO,EACpB,SAAS,EAAE,QAAQ,EAAE,GACtB,OAAO,CAAC,aAAa,CAAC,CAAC;IAC1B,SAAS,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC/C,SAAS,CACL,OAAO,EAAE,UAAU,EACnB,SAAS,EAAE,qBAAqB,EAChC,WAAW,EAAE,OAAO,EACpB,SAAS,EAAE,QAAQ,EAAE,GACtB,OAAO,CAAC,SAAS,CAAC,CAAC;IACtB,IAAI,CACA,SAAS,EAAE,mBAAmB,EAC9B,GAAG,EAAE,SAAS,EACd,IAAI,EAAE,WAAW,GAClB,OAAO,CAAC,WAAW,CAAC,CAAC;IACxB,MAAM,CACF,SAAS,EAAE,mBAAmB,EAC9B,IAAI,EAAE,UAAU,GACjB,OAAO,CAAC,WAAW,CAAC,CAAC;CAC3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"ModernBrowserCrypto.d.ts","sourceRoot":"","sources":["../../src/crypto/ModernBrowserCrypto.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,qBAAa,mBAAoB,YAAW,aAAa;IACrD,eAAe,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU;IAI7C,WAAW,CAAC,SAAS,EAAE,qBAAqB,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC;IAIlH,SAAS,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC;IAI9C,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,qBAAqB,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC;IAIjI,IAAI,CAAC,SAAS,EAAE,mBAAmB,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAI7F,MAAM,CAAC,SAAS,EAAE,mBAAmB,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC;CAGvF"}
1
+ {"version":3,"file":"ModernBrowserCrypto.d.ts","sourceRoot":"","sources":["../../src/crypto/ModernBrowserCrypto.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,qBAAa,mBAAoB,YAAW,aAAa;IACrD,eAAe,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU;IAI7C,WAAW,CACb,SAAS,EAAE,qBAAqB,EAChC,WAAW,EAAE,OAAO,EACpB,SAAS,EAAE,QAAQ,EAAE,GACtB,OAAO,CAAC,aAAa,CAAC;IAQnB,SAAS,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC;IAO9C,SAAS,CACX,OAAO,EAAE,UAAU,EACnB,SAAS,EAAE,qBAAqB,EAChC,WAAW,EAAE,OAAO,EACpB,SAAS,EAAE,QAAQ,EAAE,GACtB,OAAO,CAAC,SAAS,CAAC;IAUf,IAAI,CACN,SAAS,EAAE,mBAAmB,EAC9B,GAAG,EAAE,SAAS,EACd,IAAI,EAAE,WAAW,GAClB,OAAO,CAAC,WAAW,CAAC;IAQjB,MAAM,CACR,SAAS,EAAE,mBAAmB,EAC9B,IAAI,EAAE,UAAU,GACjB,OAAO,CAAC,WAAW,CAAC;CAM1B"}
@@ -1,55 +1,31 @@
1
- /*! @azure/msal-browser v2.37.0 2023-05-01 */
1
+ /*! @azure/msal-browser v3.0.0-alpha.1 2023-05-08 */
2
2
  'use strict';
3
- import { __awaiter, __generator } from '../_virtual/_tslib.js';
4
3
  import { KEY_FORMAT_JWK } from '../utils/BrowserConstants.js';
5
4
 
6
5
  /*
7
6
  * Copyright (c) Microsoft Corporation. All rights reserved.
8
7
  * Licensed under the MIT License.
9
8
  */
10
- var ModernBrowserCrypto = /** @class */ (function () {
11
- function ModernBrowserCrypto() {
12
- }
13
- ModernBrowserCrypto.prototype.getRandomValues = function (dataBuffer) {
9
+ class ModernBrowserCrypto {
10
+ getRandomValues(dataBuffer) {
14
11
  return window.crypto.getRandomValues(dataBuffer);
15
- };
16
- ModernBrowserCrypto.prototype.generateKey = function (algorithm, extractable, keyUsages) {
17
- return __awaiter(this, void 0, void 0, function () {
18
- return __generator(this, function (_a) {
19
- return [2 /*return*/, window.crypto.subtle.generateKey(algorithm, extractable, keyUsages)];
20
- });
21
- });
22
- };
23
- ModernBrowserCrypto.prototype.exportKey = function (key) {
24
- return __awaiter(this, void 0, void 0, function () {
25
- return __generator(this, function (_a) {
26
- return [2 /*return*/, window.crypto.subtle.exportKey(KEY_FORMAT_JWK, key)];
27
- });
28
- });
29
- };
30
- ModernBrowserCrypto.prototype.importKey = function (keyData, algorithm, extractable, keyUsages) {
31
- return __awaiter(this, void 0, void 0, function () {
32
- return __generator(this, function (_a) {
33
- return [2 /*return*/, window.crypto.subtle.importKey(KEY_FORMAT_JWK, keyData, algorithm, extractable, keyUsages)];
34
- });
35
- });
36
- };
37
- ModernBrowserCrypto.prototype.sign = function (algorithm, key, data) {
38
- return __awaiter(this, void 0, void 0, function () {
39
- return __generator(this, function (_a) {
40
- return [2 /*return*/, window.crypto.subtle.sign(algorithm, key, data)];
41
- });
42
- });
43
- };
44
- ModernBrowserCrypto.prototype.digest = function (algorithm, data) {
45
- return __awaiter(this, void 0, void 0, function () {
46
- return __generator(this, function (_a) {
47
- return [2 /*return*/, window.crypto.subtle.digest(algorithm, data)];
48
- });
49
- });
50
- };
51
- return ModernBrowserCrypto;
52
- }());
12
+ }
13
+ async generateKey(algorithm, extractable, keyUsages) {
14
+ return window.crypto.subtle.generateKey(algorithm, extractable, keyUsages);
15
+ }
16
+ async exportKey(key) {
17
+ return window.crypto.subtle.exportKey(KEY_FORMAT_JWK, key);
18
+ }
19
+ async importKey(keyData, algorithm, extractable, keyUsages) {
20
+ return window.crypto.subtle.importKey(KEY_FORMAT_JWK, keyData, algorithm, extractable, keyUsages);
21
+ }
22
+ async sign(algorithm, key, data) {
23
+ return window.crypto.subtle.sign(algorithm, key, data);
24
+ }
25
+ async digest(algorithm, data) {
26
+ return window.crypto.subtle.digest(algorithm, data);
27
+ }
28
+ }
53
29
 
54
30
  export { ModernBrowserCrypto };
55
31
  //# sourceMappingURL=ModernBrowserCrypto.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ModernBrowserCrypto.js","sources":["../../src/crypto/ModernBrowserCrypto.ts"],"sourcesContent":["/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n\r\nimport { KEY_FORMAT_JWK } from \"../utils/BrowserConstants\";\r\nimport { ISubtleCrypto } from \"./ISubtleCrypto\";\r\n\r\nexport class ModernBrowserCrypto implements ISubtleCrypto {\r\n getRandomValues(dataBuffer: Uint8Array): Uint8Array {\r\n return window.crypto.getRandomValues(dataBuffer);\r\n }\r\n\r\n async generateKey(algorithm: RsaHashedKeyGenParams, extractable: boolean, keyUsages: KeyUsage[]): Promise<CryptoKeyPair> {\r\n return window.crypto.subtle.generateKey(algorithm, extractable, keyUsages) as Promise<CryptoKeyPair>;\r\n }\r\n\r\n async exportKey(key: CryptoKey): Promise<JsonWebKey> {\r\n return window.crypto.subtle.exportKey(KEY_FORMAT_JWK, key) as Promise<JsonWebKey>;\r\n }\r\n\r\n async importKey(keyData: JsonWebKey, algorithm: RsaHashedImportParams, extractable: boolean, keyUsages: KeyUsage[]): Promise<CryptoKey> {\r\n return window.crypto.subtle.importKey(KEY_FORMAT_JWK, keyData, algorithm, extractable, keyUsages) as Promise<CryptoKey>;\r\n }\r\n\r\n async sign(algorithm: AlgorithmIdentifier, key: CryptoKey, data: ArrayBuffer): Promise<ArrayBuffer> {\r\n return window.crypto.subtle.sign(algorithm, key, data) as Promise<ArrayBuffer>;\r\n }\r\n\r\n async digest(algorithm: AlgorithmIdentifier, data: Uint8Array): Promise<ArrayBuffer> {\r\n return window.crypto.subtle.digest(algorithm, data) as Promise<ArrayBuffer>;\r\n }\r\n}\r\n"],"names":[],"mappings":";;;;;AAAA;;;;;IAQA;KAwBC;IAvBG,6CAAe,GAAf,UAAgB,UAAsB;QAClC,OAAO,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;KACpD;IAEK,yCAAW,GAAjB,UAAkB,SAAgC,EAAE,WAAoB,EAAE,SAAqB;;;gBAC3F,sBAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,CAA2B,EAAC;;;KACxG;IAEK,uCAAS,GAAf,UAAgB,GAAc;;;gBAC1B,sBAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,EAAE,GAAG,CAAwB,EAAC;;;KACrF;IAEK,uCAAS,GAAf,UAAgB,OAAmB,EAAE,SAAgC,EAAE,WAAoB,EAAE,SAAqB;;;gBAC9G,sBAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,CAAuB,EAAC;;;KAC3H;IAEK,kCAAI,GAAV,UAAW,SAA8B,EAAE,GAAc,EAAE,IAAiB;;;gBACxE,sBAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE,IAAI,CAAyB,EAAC;;;KAClF;IAEK,oCAAM,GAAZ,UAAa,SAA8B,EAAE,IAAgB;;;gBACzD,sBAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAyB,EAAC;;;KAC/E;IACL,0BAAC;AAAD,CAAC;;;;"}
1
+ {"version":3,"file":"ModernBrowserCrypto.js","sources":["../../src/crypto/ModernBrowserCrypto.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAAA;;;AAGG;MAKU,mBAAmB,CAAA;AAC5B,IAAA,eAAe,CAAC,UAAsB,EAAA;QAClC,OAAO,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;KACpD;AAED,IAAA,MAAM,WAAW,CACb,SAAgC,EAChC,WAAoB,EACpB,SAAqB,EAAA;AAErB,QAAA,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CACnC,SAAS,EACT,WAAW,EACX,SAAS,CACc,CAAC;KAC/B;IAED,MAAM,SAAS,CAAC,GAAc,EAAA;AAC1B,QAAA,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CACjC,cAAc,EACd,GAAG,CACiB,CAAC;KAC5B;IAED,MAAM,SAAS,CACX,OAAmB,EACnB,SAAgC,EAChC,WAAoB,EACpB,SAAqB,EAAA;AAErB,QAAA,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CACjC,cAAc,EACd,OAAO,EACP,SAAS,EACT,WAAW,EACX,SAAS,CACU,CAAC;KAC3B;AAED,IAAA,MAAM,IAAI,CACN,SAA8B,EAC9B,GAAc,EACd,IAAiB,EAAA;AAEjB,QAAA,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAC5B,SAAS,EACT,GAAG,EACH,IAAI,CACiB,CAAC;KAC7B;AAED,IAAA,MAAM,MAAM,CACR,SAA8B,EAC9B,IAAgB,EAAA;AAEhB,QAAA,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAC9B,SAAS,EACT,IAAI,CACiB,CAAC;KAC7B;AACJ;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"MsBrowserCrypto.d.ts","sourceRoot":"","sources":["../../src/crypto/MsBrowserCrypto.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,qBAAa,eAAgB,YAAW,aAAa;IACjD,eAAe,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU;IAI7C,WAAW,CAAC,SAAS,EAAE,qBAAqB,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC;IAalH,SAAS,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC;IA0B9C,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,qBAAqB,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC;IAgBjI,IAAI,CAAC,SAAS,EAAE,mBAAmB,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAa7F,MAAM,CAAC,SAAS,EAAE,mBAAmB,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC;CAWvF"}
1
+ {"version":3,"file":"MsBrowserCrypto.d.ts","sourceRoot":"","sources":["../../src/crypto/MsBrowserCrypto.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,qBAAa,eAAgB,YAAW,aAAa;IACjD,eAAe,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU;IAI7C,WAAW,CACb,SAAS,EAAE,qBAAqB,EAChC,WAAW,EAAE,OAAO,EACpB,SAAS,EAAE,QAAQ,EAAE,GACtB,OAAO,CAAC,aAAa,CAAC;IAwBnB,SAAS,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC;IAmC9C,SAAS,CACX,OAAO,EAAE,UAAU,EACnB,SAAS,EAAE,qBAAqB,EAChC,WAAW,EAAE,OAAO,EACpB,SAAS,EAAE,QAAQ,EAAE,GACtB,OAAO,CAAC,SAAS,CAAC;IA2Bf,IAAI,CACN,SAAS,EAAE,mBAAmB,EAC9B,GAAG,EAAE,SAAS,EACd,IAAI,EAAE,WAAW,GAClB,OAAO,CAAC,WAAW,CAAC;IAkBjB,MAAM,CACR,SAAS,EAAE,mBAAmB,EAC9B,IAAI,EAAE,UAAU,GACjB,OAAO,CAAC,WAAW,CAAC;CAmB1B"}
@@ -1,6 +1,5 @@
1
- /*! @azure/msal-browser v2.37.0 2023-05-01 */
1
+ /*! @azure/msal-browser v3.0.0-alpha.1 2023-05-08 */
2
2
  'use strict';
3
- import { __awaiter, __generator } from '../_virtual/_tslib.js';
4
3
  import { Constants } from '@azure/msal-common';
5
4
  import { KEY_FORMAT_JWK } from '../utils/BrowserConstants.js';
6
5
  import { BrowserStringUtils } from '../utils/BrowserStringUtils.js';
@@ -9,104 +8,81 @@ import { BrowserStringUtils } from '../utils/BrowserStringUtils.js';
9
8
  * Copyright (c) Microsoft Corporation. All rights reserved.
10
9
  * Licensed under the MIT License.
11
10
  */
12
- var MsBrowserCrypto = /** @class */ (function () {
13
- function MsBrowserCrypto() {
14
- }
15
- MsBrowserCrypto.prototype.getRandomValues = function (dataBuffer) {
11
+ class MsBrowserCrypto {
12
+ getRandomValues(dataBuffer) {
16
13
  return window["msCrypto"].getRandomValues(dataBuffer);
17
- };
18
- MsBrowserCrypto.prototype.generateKey = function (algorithm, extractable, keyUsages) {
19
- return __awaiter(this, void 0, void 0, function () {
20
- return __generator(this, function (_a) {
21
- return [2 /*return*/, new Promise(function (resolve, reject) {
22
- var msGenerateKey = window["msCrypto"].subtle.generateKey(algorithm, extractable, keyUsages);
23
- msGenerateKey.addEventListener("complete", function (e) {
24
- resolve(e.target.result);
25
- });
26
- msGenerateKey.addEventListener("error", function (error) {
27
- reject(error);
28
- });
29
- })];
14
+ }
15
+ async generateKey(algorithm, extractable, keyUsages) {
16
+ return new Promise((resolve, reject) => {
17
+ const msGenerateKey = window["msCrypto"].subtle.generateKey(algorithm, extractable, keyUsages);
18
+ msGenerateKey.addEventListener("complete", (e) => {
19
+ resolve(e.target.result);
20
+ });
21
+ msGenerateKey.addEventListener("error", (error) => {
22
+ reject(error);
30
23
  });
31
24
  });
32
- };
33
- MsBrowserCrypto.prototype.exportKey = function (key) {
34
- return __awaiter(this, void 0, void 0, function () {
35
- return __generator(this, function (_a) {
36
- return [2 /*return*/, new Promise(function (resolve, reject) {
37
- var msExportKey = window["msCrypto"].subtle.exportKey(KEY_FORMAT_JWK, key);
38
- msExportKey.addEventListener("complete", function (e) {
39
- var resultBuffer = e.target.result;
40
- var resultString = BrowserStringUtils.utf8ArrToString(new Uint8Array(resultBuffer))
41
- .replace(/\r/g, Constants.EMPTY_STRING)
42
- .replace(/\n/g, Constants.EMPTY_STRING)
43
- .replace(/\t/g, Constants.EMPTY_STRING)
44
- .split(" ").join(Constants.EMPTY_STRING)
45
- .replace("\u0000", Constants.EMPTY_STRING);
46
- try {
47
- resolve(JSON.parse(resultString));
48
- }
49
- catch (e) {
50
- reject(e);
51
- }
52
- });
53
- msExportKey.addEventListener("error", function (error) {
54
- reject(error);
55
- });
56
- })];
25
+ }
26
+ async exportKey(key) {
27
+ return new Promise((resolve, reject) => {
28
+ const msExportKey = window["msCrypto"].subtle.exportKey(KEY_FORMAT_JWK, key);
29
+ msExportKey.addEventListener("complete", (e) => {
30
+ const resultBuffer = e.target.result;
31
+ const resultString = BrowserStringUtils.utf8ArrToString(new Uint8Array(resultBuffer))
32
+ .replace(/\r/g, Constants.EMPTY_STRING)
33
+ .replace(/\n/g, Constants.EMPTY_STRING)
34
+ .replace(/\t/g, Constants.EMPTY_STRING)
35
+ .split(" ")
36
+ .join(Constants.EMPTY_STRING)
37
+ .replace("\u0000", Constants.EMPTY_STRING);
38
+ try {
39
+ resolve(JSON.parse(resultString));
40
+ }
41
+ catch (e) {
42
+ reject(e);
43
+ }
44
+ });
45
+ msExportKey.addEventListener("error", (error) => {
46
+ reject(error);
57
47
  });
58
48
  });
59
- };
60
- MsBrowserCrypto.prototype.importKey = function (keyData, algorithm, extractable, keyUsages) {
61
- return __awaiter(this, void 0, void 0, function () {
62
- var keyString, keyBuffer;
63
- return __generator(this, function (_a) {
64
- keyString = BrowserStringUtils.getSortedObjectString(keyData);
65
- keyBuffer = BrowserStringUtils.stringToArrayBuffer(keyString);
66
- return [2 /*return*/, new Promise(function (resolve, reject) {
67
- var msImportKey = window["msCrypto"].subtle.importKey(KEY_FORMAT_JWK, keyBuffer, algorithm, extractable, keyUsages);
68
- msImportKey.addEventListener("complete", function (e) {
69
- resolve(e.target.result);
70
- });
71
- msImportKey.addEventListener("error", function (error) {
72
- reject(error);
73
- });
74
- })];
49
+ }
50
+ async importKey(keyData, algorithm, extractable, keyUsages) {
51
+ const keyString = BrowserStringUtils.getSortedObjectString(keyData);
52
+ const keyBuffer = BrowserStringUtils.stringToArrayBuffer(keyString);
53
+ return new Promise((resolve, reject) => {
54
+ const msImportKey = window["msCrypto"].subtle.importKey(KEY_FORMAT_JWK, keyBuffer, algorithm, extractable, keyUsages);
55
+ msImportKey.addEventListener("complete", (e) => {
56
+ resolve(e.target.result);
57
+ });
58
+ msImportKey.addEventListener("error", (error) => {
59
+ reject(error);
75
60
  });
76
61
  });
77
- };
78
- MsBrowserCrypto.prototype.sign = function (algorithm, key, data) {
79
- return __awaiter(this, void 0, void 0, function () {
80
- return __generator(this, function (_a) {
81
- return [2 /*return*/, new Promise(function (resolve, reject) {
82
- var msSign = window["msCrypto"].subtle.sign(algorithm, key, data);
83
- msSign.addEventListener("complete", function (e) {
84
- resolve(e.target.result);
85
- });
86
- msSign.addEventListener("error", function (error) {
87
- reject(error);
88
- });
89
- })];
62
+ }
63
+ async sign(algorithm, key, data) {
64
+ return new Promise((resolve, reject) => {
65
+ const msSign = window["msCrypto"].subtle.sign(algorithm, key, data);
66
+ msSign.addEventListener("complete", (e) => {
67
+ resolve(e.target.result);
68
+ });
69
+ msSign.addEventListener("error", (error) => {
70
+ reject(error);
90
71
  });
91
72
  });
92
- };
93
- MsBrowserCrypto.prototype.digest = function (algorithm, data) {
94
- return __awaiter(this, void 0, void 0, function () {
95
- return __generator(this, function (_a) {
96
- return [2 /*return*/, new Promise(function (resolve, reject) {
97
- var digestOperation = window["msCrypto"].subtle.digest(algorithm, data.buffer);
98
- digestOperation.addEventListener("complete", function (e) {
99
- resolve(e.target.result);
100
- });
101
- digestOperation.addEventListener("error", function (error) {
102
- reject(error);
103
- });
104
- })];
73
+ }
74
+ async digest(algorithm, data) {
75
+ return new Promise((resolve, reject) => {
76
+ const digestOperation = window["msCrypto"].subtle.digest(algorithm, data.buffer);
77
+ digestOperation.addEventListener("complete", (e) => {
78
+ resolve(e.target.result);
79
+ });
80
+ digestOperation.addEventListener("error", (error) => {
81
+ reject(error);
105
82
  });
106
83
  });
107
- };
108
- return MsBrowserCrypto;
109
- }());
84
+ }
85
+ }
110
86
 
111
87
  export { MsBrowserCrypto };
112
88
  //# sourceMappingURL=MsBrowserCrypto.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MsBrowserCrypto.js","sources":["../../src/crypto/MsBrowserCrypto.ts"],"sourcesContent":["/*\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License.\r\n */\r\n\r\nimport { Constants } from \"@azure/msal-common\";\r\nimport { KEY_FORMAT_JWK } from \"../utils/BrowserConstants\";\r\nimport { BrowserStringUtils } from \"../utils/BrowserStringUtils\";\r\nimport { ISubtleCrypto } from \"./ISubtleCrypto\";\r\n\r\nexport class MsBrowserCrypto implements ISubtleCrypto {\r\n getRandomValues(dataBuffer: Uint8Array): Uint8Array {\r\n return window[\"msCrypto\"].getRandomValues(dataBuffer);\r\n }\r\n\r\n async generateKey(algorithm: RsaHashedKeyGenParams, extractable: boolean, keyUsages: KeyUsage[]): Promise<CryptoKeyPair> {\r\n return new Promise((resolve: Function, reject: Function) => {\r\n const msGenerateKey = window[\"msCrypto\"].subtle.generateKey(algorithm, extractable, keyUsages);\r\n msGenerateKey.addEventListener(\"complete\", (e: { target: { result: CryptoKeyPair | PromiseLike<CryptoKeyPair>; }; }) => {\r\n resolve(e.target.result);\r\n });\r\n\r\n msGenerateKey.addEventListener(\"error\", (error: string) => {\r\n reject(error);\r\n });\r\n });\r\n }\r\n\r\n async exportKey(key: CryptoKey): Promise<JsonWebKey> {\r\n return new Promise((resolve: Function, reject: Function) => {\r\n const msExportKey = window[\"msCrypto\"].subtle.exportKey(KEY_FORMAT_JWK, key);\r\n msExportKey.addEventListener(\"complete\", (e: { target: { result: ArrayBuffer; }; }) => {\r\n const resultBuffer: ArrayBuffer = e.target.result;\r\n\r\n const resultString = BrowserStringUtils.utf8ArrToString(new Uint8Array(resultBuffer))\r\n .replace(/\\r/g, Constants.EMPTY_STRING)\r\n .replace(/\\n/g, Constants.EMPTY_STRING)\r\n .replace(/\\t/g, Constants.EMPTY_STRING)\r\n .split(\" \").join(Constants.EMPTY_STRING)\r\n .replace(\"\\u0000\", Constants.EMPTY_STRING);\r\n\r\n try {\r\n resolve(JSON.parse(resultString));\r\n } catch (e) {\r\n reject(e);\r\n }\r\n });\r\n\r\n msExportKey.addEventListener(\"error\", (error: string) => {\r\n reject(error);\r\n });\r\n });\r\n }\r\n\r\n async importKey(keyData: JsonWebKey, algorithm: RsaHashedImportParams, extractable: boolean, keyUsages: KeyUsage[]): Promise<CryptoKey> {\r\n const keyString = BrowserStringUtils.getSortedObjectString(keyData);\r\n const keyBuffer = BrowserStringUtils.stringToArrayBuffer(keyString);\r\n\r\n return new Promise((resolve: Function, reject: Function) => {\r\n const msImportKey = window[\"msCrypto\"].subtle.importKey(KEY_FORMAT_JWK, keyBuffer, algorithm, extractable, keyUsages);\r\n msImportKey.addEventListener(\"complete\", (e: { target: { result: CryptoKey | PromiseLike<CryptoKey>; }; }) => {\r\n resolve(e.target.result);\r\n });\r\n\r\n msImportKey.addEventListener(\"error\", (error: string) => {\r\n reject(error);\r\n });\r\n });\r\n }\r\n\r\n async sign(algorithm: AlgorithmIdentifier, key: CryptoKey, data: ArrayBuffer): Promise<ArrayBuffer> {\r\n return new Promise((resolve: Function, reject: Function) => {\r\n const msSign = window[\"msCrypto\"].subtle.sign(algorithm, key, data);\r\n msSign.addEventListener(\"complete\", (e: { target: { result: ArrayBuffer | PromiseLike<ArrayBuffer>; }; }) => {\r\n resolve(e.target.result);\r\n });\r\n\r\n msSign.addEventListener(\"error\", (error: string) => {\r\n reject(error);\r\n });\r\n });\r\n }\r\n \r\n async digest(algorithm: AlgorithmIdentifier, data: Uint8Array): Promise<ArrayBuffer> {\r\n return new Promise((resolve, reject) => {\r\n const digestOperation = window[\"msCrypto\"].subtle.digest(algorithm, data.buffer);\r\n digestOperation.addEventListener(\"complete\", (e: { target: { result: ArrayBuffer | PromiseLike<ArrayBuffer>; }; }) => {\r\n resolve(e.target.result);\r\n });\r\n digestOperation.addEventListener(\"error\", (error: string) => {\r\n reject(error);\r\n });\r\n });\r\n }\r\n}\r\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MsBrowserCrypto.js","sources":["../../src/crypto/MsBrowserCrypto.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAAA;;;AAGG;MAOU,eAAe,CAAA;AACxB,IAAA,eAAe,CAAC,UAAsB,EAAA;QAClC,OAAO,MAAM,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;KACzD;AAED,IAAA,MAAM,WAAW,CACb,SAAgC,EAChC,WAAoB,EACpB,SAAqB,EAAA;QAErB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAiB,EAAE,MAAgB,KAAI;AACvD,YAAA,MAAM,aAAa,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,WAAW,CACvD,SAAS,EACT,WAAW,EACX,SAAS,CACZ,CAAC;YACF,aAAa,CAAC,gBAAgB,CAC1B,UAAU,EACV,CAAC,CAIA,KAAI;AACD,gBAAA,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC7B,aAAC,CACJ,CAAC;YAEF,aAAa,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAa,KAAI;gBACtD,MAAM,CAAC,KAAK,CAAC,CAAC;AAClB,aAAC,CAAC,CAAC;AACP,SAAC,CAAC,CAAC;KACN;IAED,MAAM,SAAS,CAAC,GAAc,EAAA;QAC1B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAiB,EAAE,MAAgB,KAAI;AACvD,YAAA,MAAM,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,SAAS,CACnD,cAAc,EACd,GAAG,CACN,CAAC;YACF,WAAW,CAAC,gBAAgB,CACxB,UAAU,EACV,CAAC,CAAsC,KAAI;AACvC,gBAAA,MAAM,YAAY,GAAgB,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;gBAElD,MAAM,YAAY,GAAG,kBAAkB,CAAC,eAAe,CACnD,IAAI,UAAU,CAAC,YAAY,CAAC,CAC/B;AACI,qBAAA,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,YAAY,CAAC;AACtC,qBAAA,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,YAAY,CAAC;AACtC,qBAAA,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,YAAY,CAAC;qBACtC,KAAK,CAAC,GAAG,CAAC;AACV,qBAAA,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;AAC5B,qBAAA,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;gBAE/C,IAAI;oBACA,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;AACrC,iBAAA;AAAC,gBAAA,OAAO,CAAC,EAAE;oBACR,MAAM,CAAC,CAAC,CAAC,CAAC;AACb,iBAAA;AACL,aAAC,CACJ,CAAC;YAEF,WAAW,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAa,KAAI;gBACpD,MAAM,CAAC,KAAK,CAAC,CAAC;AAClB,aAAC,CAAC,CAAC;AACP,SAAC,CAAC,CAAC;KACN;IAED,MAAM,SAAS,CACX,OAAmB,EACnB,SAAgC,EAChC,WAAoB,EACpB,SAAqB,EAAA;QAErB,MAAM,SAAS,GAAG,kBAAkB,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QACpE,MAAM,SAAS,GAAG,kBAAkB,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;QAEpE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAiB,EAAE,MAAgB,KAAI;YACvD,MAAM,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,SAAS,CACnD,cAAc,EACd,SAAS,EACT,SAAS,EACT,WAAW,EACX,SAAS,CACZ,CAAC;YACF,WAAW,CAAC,gBAAgB,CACxB,UAAU,EACV,CAAC,CAEA,KAAI;AACD,gBAAA,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC7B,aAAC,CACJ,CAAC;YAEF,WAAW,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAa,KAAI;gBACpD,MAAM,CAAC,KAAK,CAAC,CAAC;AAClB,aAAC,CAAC,CAAC;AACP,SAAC,CAAC,CAAC;KACN;AAED,IAAA,MAAM,IAAI,CACN,SAA8B,EAC9B,GAAc,EACd,IAAiB,EAAA;QAEjB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAiB,EAAE,MAAgB,KAAI;AACvD,YAAA,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;YACpE,MAAM,CAAC,gBAAgB,CACnB,UAAU,EACV,CAAC,CAEA,KAAI;AACD,gBAAA,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC7B,aAAC,CACJ,CAAC;YAEF,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAa,KAAI;gBAC/C,MAAM,CAAC,KAAK,CAAC,CAAC;AAClB,aAAC,CAAC,CAAC;AACP,SAAC,CAAC,CAAC;KACN;AAED,IAAA,MAAM,MAAM,CACR,SAA8B,EAC9B,IAAgB,EAAA;QAEhB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;AACnC,YAAA,MAAM,eAAe,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,MAAM,CACpD,SAAS,EACT,IAAI,CAAC,MAAM,CACd,CAAC;YACF,eAAe,CAAC,gBAAgB,CAC5B,UAAU,EACV,CAAC,CAEA,KAAI;AACD,gBAAA,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC7B,aAAC,CACJ,CAAC;YACF,eAAe,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAa,KAAI;gBACxD,MAAM,CAAC,KAAK,CAAC,CAAC;AAClB,aAAC,CAAC,CAAC;AACP,SAAC,CAAC,CAAC;KACN;AACJ;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"MsrBrowserCrypto.d.ts","sourceRoot":"","sources":["../../src/crypto/MsrBrowserCrypto.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,MAAM;QACZ,SAAS,EAAE,MAAM,GAAG;YAChB,QAAQ,EAAE,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,EAAE,KAAK,IAAI,CAAA;SACrD,CAAA;KACJ;CACJ;AAED,qBAAa,gBAAiB,YAAW,aAAa;IAClD,QAAQ,CAAC,OAAO,EAAG,UAAU,GAAG,IAAI;IAKpC,eAAe,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU;IAI7C,WAAW,CAAC,SAAS,EAAE,qBAAqB,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC;IAIlH,SAAS,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC;IAI9C,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,qBAAqB,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC;IAIjI,IAAI,CAAC,SAAS,EAAE,mBAAmB,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAI7F,MAAM,CAAC,SAAS,EAAE,mBAAmB,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC;CAGvF"}
1
+ {"version":3,"file":"MsrBrowserCrypto.d.ts","sourceRoot":"","sources":["../../src/crypto/MsrBrowserCrypto.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,MAAM;QACZ,SAAS,EAAE,MAAM,GAAG;YAChB,QAAQ,EAAE,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,EAAE,KAAK,IAAI,CAAC;SACtD,CAAC;KACL;CACJ;AAED,qBAAa,gBAAiB,YAAW,aAAa;IAClD,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI;IAKnC,eAAe,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU;IAI7C,WAAW,CACb,SAAS,EAAE,qBAAqB,EAChC,WAAW,EAAE,OAAO,EACpB,SAAS,EAAE,QAAQ,EAAE,GACtB,OAAO,CAAC,aAAa,CAAC;IAQnB,SAAS,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC;IAO9C,SAAS,CACX,OAAO,EAAE,UAAU,EACnB,SAAS,EAAE,qBAAqB,EAChC,WAAW,EAAE,OAAO,EACpB,SAAS,EAAE,QAAQ,EAAE,GACtB,OAAO,CAAC,SAAS,CAAC;IAUf,IAAI,CACN,SAAS,EAAE,mBAAmB,EAC9B,GAAG,EAAE,SAAS,EACd,IAAI,EAAE,WAAW,GAClB,OAAO,CAAC,WAAW,CAAC;IAQjB,MAAM,CACR,SAAS,EAAE,mBAAmB,EAC9B,IAAI,EAAE,UAAU,GACjB,OAAO,CAAC,WAAW,CAAC;CAM1B"}
@@ -1,59 +1,35 @@
1
- /*! @azure/msal-browser v2.37.0 2023-05-01 */
1
+ /*! @azure/msal-browser v3.0.0-alpha.1 2023-05-08 */
2
2
  'use strict';
3
- import { __spread, __awaiter, __generator } from '../_virtual/_tslib.js';
4
3
  import { KEY_FORMAT_JWK } from '../utils/BrowserConstants.js';
5
4
 
6
5
  /*
7
6
  * Copyright (c) Microsoft Corporation. All rights reserved.
8
7
  * Licensed under the MIT License.
9
8
  */
10
- var MsrBrowserCrypto = /** @class */ (function () {
11
- function MsrBrowserCrypto() {
12
- }
13
- MsrBrowserCrypto.prototype.initPrng = function (entropy) {
9
+ class MsrBrowserCrypto {
10
+ initPrng(entropy) {
14
11
  // Turn into array, as initPrng seems to not always like Uint8Array (even though it should support both)
15
- return window.msrCrypto.initPrng(__spread(entropy));
16
- };
17
- MsrBrowserCrypto.prototype.getRandomValues = function (dataBuffer) {
12
+ return window.msrCrypto.initPrng([...entropy]);
13
+ }
14
+ getRandomValues(dataBuffer) {
18
15
  return window.msrCrypto.getRandomValues(dataBuffer);
19
- };
20
- MsrBrowserCrypto.prototype.generateKey = function (algorithm, extractable, keyUsages) {
21
- return __awaiter(this, void 0, void 0, function () {
22
- return __generator(this, function (_a) {
23
- return [2 /*return*/, window.msrCrypto.subtle.generateKey(algorithm, extractable, keyUsages)];
24
- });
25
- });
26
- };
27
- MsrBrowserCrypto.prototype.exportKey = function (key) {
28
- return __awaiter(this, void 0, void 0, function () {
29
- return __generator(this, function (_a) {
30
- return [2 /*return*/, window.msrCrypto.subtle.exportKey(KEY_FORMAT_JWK, key)];
31
- });
32
- });
33
- };
34
- MsrBrowserCrypto.prototype.importKey = function (keyData, algorithm, extractable, keyUsages) {
35
- return __awaiter(this, void 0, void 0, function () {
36
- return __generator(this, function (_a) {
37
- return [2 /*return*/, window.msrCrypto.subtle.importKey(KEY_FORMAT_JWK, keyData, algorithm, extractable, keyUsages)];
38
- });
39
- });
40
- };
41
- MsrBrowserCrypto.prototype.sign = function (algorithm, key, data) {
42
- return __awaiter(this, void 0, void 0, function () {
43
- return __generator(this, function (_a) {
44
- return [2 /*return*/, window.msrCrypto.subtle.sign(algorithm, key, data)];
45
- });
46
- });
47
- };
48
- MsrBrowserCrypto.prototype.digest = function (algorithm, data) {
49
- return __awaiter(this, void 0, void 0, function () {
50
- return __generator(this, function (_a) {
51
- return [2 /*return*/, window.msrCrypto.subtle.digest(algorithm, data)];
52
- });
53
- });
54
- };
55
- return MsrBrowserCrypto;
56
- }());
16
+ }
17
+ async generateKey(algorithm, extractable, keyUsages) {
18
+ return window.msrCrypto.subtle.generateKey(algorithm, extractable, keyUsages);
19
+ }
20
+ async exportKey(key) {
21
+ return window.msrCrypto.subtle.exportKey(KEY_FORMAT_JWK, key);
22
+ }
23
+ async importKey(keyData, algorithm, extractable, keyUsages) {
24
+ return window.msrCrypto.subtle.importKey(KEY_FORMAT_JWK, keyData, algorithm, extractable, keyUsages);
25
+ }
26
+ async sign(algorithm, key, data) {
27
+ return window.msrCrypto.subtle.sign(algorithm, key, data);
28
+ }
29
+ async digest(algorithm, data) {
30
+ return window.msrCrypto.subtle.digest(algorithm, data);
31
+ }
32
+ }
57
33
 
58
34
  export { MsrBrowserCrypto };
59
35
  //# sourceMappingURL=MsrBrowserCrypto.js.map