@azure/msal-browser 3.5.0 → 3.5.1-beta.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 (195) hide show
  1. package/dist/app/IPublicClientApplication.d.ts +51 -51
  2. package/dist/app/IPublicClientApplication.mjs +102 -102
  3. package/dist/app/PublicClientApplication.d.ts +268 -268
  4. package/dist/app/PublicClientApplication.mjs +333 -333
  5. package/dist/app/PublicClientNext.d.ts +273 -273
  6. package/dist/app/PublicClientNext.mjs +351 -351
  7. package/dist/broker/nativeBroker/NativeMessageHandler.d.ts +62 -62
  8. package/dist/broker/nativeBroker/NativeMessageHandler.mjs +254 -254
  9. package/dist/broker/nativeBroker/NativeRequest.d.ts +44 -44
  10. package/dist/broker/nativeBroker/NativeResponse.d.ts +48 -48
  11. package/dist/broker/nativeBroker/NativeStatusCodes.d.ts +7 -7
  12. package/dist/broker/nativeBroker/NativeStatusCodes.mjs +11 -11
  13. package/dist/cache/AsyncMemoryStorage.d.ts +51 -51
  14. package/dist/cache/AsyncMemoryStorage.mjs +132 -132
  15. package/dist/cache/BrowserCacheManager.d.ts +383 -383
  16. package/dist/cache/BrowserCacheManager.mjs +1262 -1262
  17. package/dist/cache/BrowserStorage.d.ts +11 -11
  18. package/dist/cache/BrowserStorage.mjs +32 -32
  19. package/dist/cache/CryptoKeyStore.d.ts +18 -18
  20. package/dist/cache/CryptoKeyStore.mjs +40 -40
  21. package/dist/cache/DatabaseStorage.d.ts +56 -56
  22. package/dist/cache/DatabaseStorage.mjs +190 -190
  23. package/dist/cache/IAsyncMemoryStorage.d.ts +27 -27
  24. package/dist/cache/ITokenCache.d.ts +11 -11
  25. package/dist/cache/IWindowStorage.d.ts +27 -27
  26. package/dist/cache/MemoryStorage.d.ts +11 -11
  27. package/dist/cache/MemoryStorage.mjs +31 -31
  28. package/dist/cache/TokenCache.d.ts +77 -77
  29. package/dist/cache/TokenCache.mjs +224 -224
  30. package/dist/config/Configuration.d.ts +206 -206
  31. package/dist/config/Configuration.mjs +128 -128
  32. package/dist/controllers/ControllerFactory.d.ts +4 -4
  33. package/dist/controllers/ControllerFactory.mjs +29 -29
  34. package/dist/controllers/IController.d.ts +61 -61
  35. package/dist/controllers/NestedAppAuthController.d.ts +95 -95
  36. package/dist/controllers/NestedAppAuthController.d.ts.map +1 -1
  37. package/dist/controllers/NestedAppAuthController.mjs +335 -333
  38. package/dist/controllers/NestedAppAuthController.mjs.map +1 -1
  39. package/dist/controllers/StandardController.d.ts +407 -407
  40. package/dist/controllers/StandardController.d.ts.map +1 -1
  41. package/dist/controllers/StandardController.mjs +1293 -1291
  42. package/dist/controllers/StandardController.mjs.map +1 -1
  43. package/dist/controllers/UnknownOperatingContextController.d.ts +87 -87
  44. package/dist/controllers/UnknownOperatingContextController.mjs +264 -264
  45. package/dist/crypto/BrowserCrypto.d.ts +44 -44
  46. package/dist/crypto/BrowserCrypto.mjs +93 -93
  47. package/dist/crypto/CryptoOps.d.ts +63 -63
  48. package/dist/crypto/CryptoOps.mjs +145 -145
  49. package/dist/crypto/PkceGenerator.d.ts +8 -8
  50. package/dist/crypto/PkceGenerator.mjs +54 -54
  51. package/dist/crypto/SignedHttpRequest.d.ts +30 -30
  52. package/dist/crypto/SignedHttpRequest.mjs +39 -39
  53. package/dist/encode/Base64Decode.d.ts +9 -9
  54. package/dist/encode/Base64Decode.mjs +36 -36
  55. package/dist/encode/Base64Encode.d.ts +19 -19
  56. package/dist/encode/Base64Encode.mjs +43 -43
  57. package/dist/error/BrowserAuthError.d.ts +250 -250
  58. package/dist/error/BrowserAuthError.mjs +258 -258
  59. package/dist/error/BrowserAuthErrorCodes.d.ts +45 -45
  60. package/dist/error/BrowserAuthErrorCodes.mjs +49 -49
  61. package/dist/error/BrowserConfigurationAuthError.d.ts +33 -33
  62. package/dist/error/BrowserConfigurationAuthError.mjs +40 -40
  63. package/dist/error/BrowserConfigurationAuthErrorCodes.d.ts +3 -3
  64. package/dist/error/BrowserConfigurationAuthErrorCodes.mjs +7 -7
  65. package/dist/error/NativeAuthError.d.ts +29 -29
  66. package/dist/error/NativeAuthError.mjs +60 -60
  67. package/dist/error/NativeAuthErrorCodes.d.ts +2 -2
  68. package/dist/error/NativeAuthErrorCodes.mjs +6 -6
  69. package/dist/error/NestedAppAuthError.d.ts +14 -14
  70. package/dist/error/NestedAppAuthError.mjs +23 -23
  71. package/dist/event/EventHandler.d.ts +41 -41
  72. package/dist/event/EventHandler.mjs +119 -119
  73. package/dist/event/EventMessage.d.ts +25 -25
  74. package/dist/event/EventMessage.mjs +68 -68
  75. package/dist/event/EventType.d.ts +28 -28
  76. package/dist/event/EventType.mjs +31 -31
  77. package/dist/index.d.ts +39 -39
  78. package/dist/index.mjs +1 -1
  79. package/dist/interaction_client/BaseInteractionClient.d.ts +54 -54
  80. package/dist/interaction_client/BaseInteractionClient.mjs +152 -152
  81. package/dist/interaction_client/HybridSpaAuthorizationCodeClient.d.ts +4 -4
  82. package/dist/interaction_client/HybridSpaAuthorizationCodeClient.mjs +10 -10
  83. package/dist/interaction_client/NativeInteractionClient.d.ts +140 -140
  84. package/dist/interaction_client/NativeInteractionClient.mjs +548 -548
  85. package/dist/interaction_client/PopupClient.d.ts +105 -105
  86. package/dist/interaction_client/PopupClient.mjs +432 -432
  87. package/dist/interaction_client/RedirectClient.d.ts +49 -49
  88. package/dist/interaction_client/RedirectClient.mjs +311 -311
  89. package/dist/interaction_client/SilentAuthCodeClient.d.ts +23 -23
  90. package/dist/interaction_client/SilentAuthCodeClient.mjs +57 -57
  91. package/dist/interaction_client/SilentCacheClient.d.ts +24 -24
  92. package/dist/interaction_client/SilentCacheClient.mjs +61 -61
  93. package/dist/interaction_client/SilentIframeClient.d.ts +32 -32
  94. package/dist/interaction_client/SilentIframeClient.mjs +96 -96
  95. package/dist/interaction_client/SilentRefreshClient.d.ts +20 -20
  96. package/dist/interaction_client/SilentRefreshClient.mjs +43 -43
  97. package/dist/interaction_client/StandardInteractionClient.d.ts +54 -54
  98. package/dist/interaction_client/StandardInteractionClient.mjs +222 -222
  99. package/dist/interaction_handler/InteractionHandler.d.ts +33 -33
  100. package/dist/interaction_handler/InteractionHandler.mjs +93 -93
  101. package/dist/interaction_handler/RedirectHandler.d.ts +32 -32
  102. package/dist/interaction_handler/RedirectHandler.mjs +134 -134
  103. package/dist/interaction_handler/SilentHandler.d.ts +13 -13
  104. package/dist/interaction_handler/SilentHandler.mjs +133 -133
  105. package/dist/naa/AccountInfo.d.ts +11 -12
  106. package/dist/naa/AccountInfo.d.ts.map +1 -1
  107. package/dist/naa/AccountRequests.d.ts +9 -9
  108. package/dist/naa/AuthBridge.d.ts +5 -5
  109. package/dist/naa/BridgeCapabilities.d.ts +3 -3
  110. package/dist/naa/BridgeError.d.ts +9 -9
  111. package/dist/naa/BridgeError.d.ts.map +1 -1
  112. package/dist/naa/BridgeError.mjs +7 -7
  113. package/dist/naa/BridgeError.mjs.map +1 -1
  114. package/dist/naa/BridgeProxy.d.ts +72 -71
  115. package/dist/naa/BridgeProxy.d.ts.map +1 -1
  116. package/dist/naa/BridgeProxy.mjs +152 -149
  117. package/dist/naa/BridgeProxy.mjs.map +1 -1
  118. package/dist/naa/BridgeRequest.d.ts +6 -6
  119. package/dist/naa/BridgeRequestEnvelope.d.ts +13 -13
  120. package/dist/naa/BridgeResponseEnvelope.d.ts +10 -10
  121. package/dist/naa/BridgeStatusCode.d.ts +10 -10
  122. package/dist/naa/BridgeStatusCode.mjs +15 -15
  123. package/dist/naa/IBridgeProxy.d.ts +12 -10
  124. package/dist/naa/IBridgeProxy.d.ts.map +1 -1
  125. package/dist/naa/InitializeBridgeResponse.d.ts +6 -6
  126. package/dist/naa/InitializeBridgeResponse.d.ts.map +1 -1
  127. package/dist/naa/TokenRequest.d.ts +19 -21
  128. package/dist/naa/TokenRequest.d.ts.map +1 -1
  129. package/dist/naa/TokenResponse.d.ts +15 -16
  130. package/dist/naa/TokenResponse.d.ts.map +1 -1
  131. package/dist/naa/mapping/NestedAppAuthAdapter.d.ts +23 -25
  132. package/dist/naa/mapping/NestedAppAuthAdapter.d.ts.map +1 -1
  133. package/dist/naa/mapping/NestedAppAuthAdapter.mjs +142 -170
  134. package/dist/naa/mapping/NestedAppAuthAdapter.mjs.map +1 -1
  135. package/dist/navigation/INavigationClient.d.ts +16 -16
  136. package/dist/navigation/NavigationClient.d.ts +22 -22
  137. package/dist/navigation/NavigationClient.mjs +40 -40
  138. package/dist/navigation/NavigationOptions.d.ts +12 -12
  139. package/dist/network/FetchClient.d.ts +26 -26
  140. package/dist/network/FetchClient.mjs +99 -99
  141. package/dist/operatingcontext/BaseOperatingContext.d.ts +40 -40
  142. package/dist/operatingcontext/BaseOperatingContext.mjs +44 -44
  143. package/dist/operatingcontext/StandardOperatingContext.d.ts +25 -25
  144. package/dist/operatingcontext/StandardOperatingContext.mjs +43 -43
  145. package/dist/operatingcontext/TeamsAppOperatingContext.d.ts +32 -32
  146. package/dist/operatingcontext/TeamsAppOperatingContext.d.ts.map +1 -1
  147. package/dist/operatingcontext/TeamsAppOperatingContext.mjs +85 -82
  148. package/dist/operatingcontext/TeamsAppOperatingContext.mjs.map +1 -1
  149. package/dist/operatingcontext/UnknownOperatingContext.d.ts +25 -25
  150. package/dist/operatingcontext/UnknownOperatingContext.mjs +42 -42
  151. package/dist/packageMetadata.d.ts +2 -2
  152. package/dist/packageMetadata.d.ts.map +1 -1
  153. package/dist/packageMetadata.mjs +4 -4
  154. package/dist/packageMetadata.mjs.map +1 -1
  155. package/dist/request/AuthorizationCodeRequest.d.ts +8 -8
  156. package/dist/request/AuthorizationUrlRequest.d.ts +8 -8
  157. package/dist/request/ClearCacheRequest.d.ts +10 -10
  158. package/dist/request/EndSessionPopupRequest.d.ts +18 -18
  159. package/dist/request/EndSessionRequest.d.ts +15 -15
  160. package/dist/request/PopupRequest.d.ts +34 -34
  161. package/dist/request/PopupWindowAttributes.d.ts +15 -15
  162. package/dist/request/RedirectRequest.d.ts +35 -35
  163. package/dist/request/SilentRequest.d.ts +32 -32
  164. package/dist/request/SsoSilentRequest.d.ts +29 -29
  165. package/dist/response/AuthenticationResult.d.ts +4 -4
  166. package/dist/response/ResponseHandler.d.ts +7 -7
  167. package/dist/response/ResponseHandler.mjs +36 -36
  168. package/dist/telemetry/BrowserPerformanceClient.d.ts +36 -36
  169. package/dist/telemetry/BrowserPerformanceClient.mjs +125 -125
  170. package/dist/telemetry/BrowserPerformanceMeasurement.d.ts +21 -21
  171. package/dist/telemetry/BrowserPerformanceMeasurement.mjs +92 -92
  172. package/dist/utils/BrowserConstants.d.ts +176 -176
  173. package/dist/utils/BrowserConstants.mjs +204 -204
  174. package/dist/utils/BrowserProtocolUtils.d.ts +11 -11
  175. package/dist/utils/BrowserProtocolUtils.mjs +21 -21
  176. package/dist/utils/BrowserUtils.d.ts +56 -56
  177. package/dist/utils/BrowserUtils.mjs +125 -125
  178. package/lib/msal-browser.cjs +17922 -17928
  179. package/lib/msal-browser.cjs.map +1 -1
  180. package/lib/msal-browser.js +17922 -17928
  181. package/lib/msal-browser.js.map +1 -1
  182. package/lib/msal-browser.min.js +59 -59
  183. package/package.json +102 -102
  184. package/src/controllers/NestedAppAuthController.ts +8 -3
  185. package/src/controllers/StandardController.ts +3 -1
  186. package/src/naa/AccountInfo.ts +3 -4
  187. package/src/naa/BridgeError.ts +4 -4
  188. package/src/naa/BridgeProxy.ts +6 -2
  189. package/src/naa/IBridgeProxy.ts +2 -0
  190. package/src/naa/InitializeBridgeResponse.ts +1 -1
  191. package/src/naa/TokenRequest.ts +0 -2
  192. package/src/naa/TokenResponse.ts +1 -2
  193. package/src/naa/mapping/NestedAppAuthAdapter.ts +72 -80
  194. package/src/operatingcontext/TeamsAppOperatingContext.ts +4 -1
  195. package/src/packageMetadata.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"NestedAppAuthAdapter.d.ts","sourceRoot":"","sources":["../../../src/naa/mapping/NestedAppAuthAdapter.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,WAAW,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EACH,WAAW,IAAI,eAAe,EAC9B,SAAS,EACT,eAAe,EACf,wBAAwB,EACxB,4BAA4B,EAC5B,WAAW,EAEX,OAAO,EACP,MAAM,EAIT,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAG3E,qBAAa,oBAAoB;IAC7B,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC;IAC1B,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,kBAAkB,EAAE,MAAM,EAAE,CAAC;gBAGnC,QAAQ,EAAE,MAAM,EAChB,kBAAkB,EAAE,MAAM,EAAE,EAC5B,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,MAAM;IAQX,uBAAuB,CAAC,OAAO,EAAE,aAAa,GAAG,YAAY;IAmC7D,iBAAiB,CACpB,OAAO,EAAE,YAAY,GAAG,eAAe,GACxC,YAAY;IAkCR,oBAAoB,CACvB,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,aAAa,GACxB,oBAAoB;IAwDhB,kBAAkB,CAAC,WAAW,EAAE,cAAc,GAAG,eAAe;IAyBvE;;;;OAIG;IACI,eAAe,CAClB,KAAK,EAAE,OAAO,GAEZ,SAAS,GACT,eAAe,GACf,wBAAwB,GACxB,WAAW,GACX,4BAA4B;CAoCrC"}
1
+ {"version":3,"file":"NestedAppAuthAdapter.d.ts","sourceRoot":"","sources":["../../../src/naa/mapping/NestedAppAuthAdapter.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,WAAW,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EACH,WAAW,IAAI,eAAe,EAC9B,SAAS,EACT,eAAe,EACf,wBAAwB,EACxB,4BAA4B,EAC5B,WAAW,EACX,OAAO,EACP,MAAM,EAEN,WAAW,EAMd,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAG3E,qBAAa,oBAAoB;IAC7B,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC;IAC1B,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,kBAAkB,EAAE,MAAM,EAAE,CAAC;gBAGnC,QAAQ,EAAE,MAAM,EAChB,kBAAkB,EAAE,MAAM,EAAE,EAC5B,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,MAAM;IAQX,iBAAiB,CACpB,OAAO,EAAE,YAAY,GAAG,eAAe,GACxC,YAAY;IAmCR,oBAAoB,CACvB,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,aAAa,EACvB,YAAY,EAAE,MAAM,GACrB,oBAAoB;IA4DhB,kBAAkB,CACrB,WAAW,EAAE,cAAc,EAC3B,aAAa,CAAC,EAAE,WAAW,GAC5B,eAAe;IAqClB;;;;OAIG;IACI,eAAe,CAClB,KAAK,EAAE,OAAO,GAEZ,SAAS,GACT,eAAe,GACf,wBAAwB,GACxB,WAAW,GACX,4BAA4B;CAwCrC"}
@@ -1,177 +1,149 @@
1
- /*! @azure/msal-browser v3.5.0 2023-11-07 */
1
+ /*! @azure/msal-browser v3.5.1-beta.1 2023-11-14 */
2
2
  'use strict';
3
- import { TimeUtils, AuthToken, AuthError, InteractionRequiredAuthError, ServerError, ClientAuthError, ClientAuthErrorCodes } from '@azure/msal-common';
3
+ import { RequestParameterBuilder, StringUtils, AuthenticationScheme, createClientAuthError, ClientAuthErrorCodes, AuthToken, AuthError, InteractionRequiredAuthError, ServerError, ClientAuthError } from '@azure/msal-common';
4
4
  import { isBridgeError } from '../BridgeError.mjs';
5
5
  import { BridgeStatusCode } from '../BridgeStatusCode.mjs';
6
6
 
7
- /*
8
- * Copyright (c) Microsoft Corporation. All rights reserved.
9
- * Licensed under the MIT License.
10
- */
11
- class NestedAppAuthAdapter {
12
- constructor(clientId, clientCapabilities, crypto, logger) {
13
- this.clientId = clientId;
14
- this.clientCapabilities = clientCapabilities;
15
- this.crypto = crypto;
16
- this.logger = logger;
17
- }
18
- toNaaSilentTokenRequest(request) {
19
- let extraParams;
20
- if (request.extraQueryParameters === undefined) {
21
- extraParams = new Map();
22
- }
23
- else {
24
- extraParams = new Map(Object.entries(request.extraQueryParameters));
25
- }
26
- /**
27
- * Need to get information about the client to populate request correctly
28
- * For example: client id, client capabilities
29
- */
30
- const tokenRequest = {
31
- userObjectId: request.account?.homeAccountId,
32
- clientId: this.clientId,
33
- authority: request.authority,
34
- scope: request.scopes.join(" "),
35
- correlationId: request.correlationId !== undefined
36
- ? request.correlationId
37
- : this.crypto.createNewGuid(),
38
- prompt: request.prompt !== undefined ? request.prompt : "",
39
- claims: request.claims !== undefined ? request.claims : "",
40
- authenticationScheme: request.authenticationScheme !== undefined
41
- ? request.authenticationScheme
42
- : "",
43
- clientCapabilities: this.clientCapabilities,
44
- extraParameters: extraParams,
45
- };
46
- return tokenRequest;
47
- }
48
- toNaaTokenRequest(request) {
49
- let extraParams;
50
- if (request.extraQueryParameters === undefined) {
51
- extraParams = new Map();
52
- }
53
- else {
54
- extraParams = new Map(Object.entries(request.extraQueryParameters));
55
- }
56
- const tokenRequest = {
57
- userObjectId: request.account?.homeAccountId,
58
- clientId: this.clientId,
59
- authority: request.authority,
60
- scope: request.scopes.join(" "),
61
- correlationId: request.correlationId !== undefined
62
- ? request.correlationId
63
- : "",
64
- prompt: request.prompt !== undefined ? request.prompt : "",
65
- nonce: request.nonce !== undefined ? request.nonce : "",
66
- claims: request.claims !== undefined ? request.claims : "",
67
- state: request.state !== undefined ? request.state : "",
68
- authenticationScheme: request.authenticationScheme !== undefined
69
- ? request.authenticationScheme
70
- : "",
71
- clientCapabilities: undefined,
72
- extraParameters: extraParams,
73
- };
74
- return tokenRequest;
75
- }
76
- fromNaaTokenResponse(request, response) {
77
- const expiresOn = new Date(TimeUtils.nowSeconds() + (response.expires_in || 0) * 1000);
78
- const account = this.fromNaaAccountInfo(response.account);
79
- const authenticationResult = {
80
- authority: response.account.environment,
81
- uniqueId: response.account.homeAccountId,
82
- tenantId: response.account.tenantId,
83
- scopes: response.scope.split(" "),
84
- account: this.fromNaaAccountInfo(response.account),
85
- idToken: response.id_token !== undefined ? response.id_token : "",
86
- idTokenClaims: account.idTokenClaims !== undefined
87
- ? account.idTokenClaims
88
- : {},
89
- accessToken: response.access_token,
90
- fromCache: true,
91
- expiresOn: expiresOn,
92
- tokenType: request.authenticationScheme !== undefined
93
- ? request.authenticationScheme
94
- : "Bearer",
95
- correlationId: request.correlationId,
96
- requestId: "",
97
- extExpiresOn: expiresOn,
98
- state: response.state,
99
- };
100
- return authenticationResult;
101
- }
102
- /*
103
- * export type AccountInfo = {
104
- * homeAccountId: string;
105
- * environment: string;
106
- * tenantId: string;
107
- * username: string;
108
- * localAccountId: string;
109
- * name?: string;
110
- * idToken?: string;
111
- * idTokenClaims?: TokenClaims & {
112
- * [key: string]:
113
- * | string
114
- * | number
115
- * | string[]
116
- * | object
117
- * | undefined
118
- * | unknown;
119
- * };
120
- * nativeAccountId?: string;
121
- * authorityType?: string;
122
- * };
123
- */
124
- fromNaaAccountInfo(fromAccount) {
125
- let tokenClaims;
126
- if (fromAccount.idToken !== undefined) {
127
- tokenClaims = AuthToken.extractTokenClaims(fromAccount.idToken, this.crypto.base64Decode);
128
- }
129
- else {
130
- tokenClaims = undefined;
131
- }
132
- const account = {
133
- homeAccountId: fromAccount.homeAccountId,
134
- environment: fromAccount.environment,
135
- tenantId: fromAccount.tenantId,
136
- username: fromAccount.username,
137
- localAccountId: fromAccount.localAccountId,
138
- name: fromAccount.name,
139
- idToken: fromAccount.idToken,
140
- idTokenClaims: tokenClaims,
141
- };
142
- return account;
143
- }
144
- /**
145
- *
146
- * @param error BridgeError
147
- * @returns AuthError, ClientAuthError, ClientConfigurationError, ServerError, InteractionRequiredError
148
- */
149
- fromBridgeError(error) {
150
- if (isBridgeError(error)) {
151
- switch (error.status) {
152
- case BridgeStatusCode.USER_CANCEL:
153
- return new ClientAuthError(ClientAuthErrorCodes.userCanceled);
154
- case BridgeStatusCode.NO_NETWORK:
155
- return new ClientAuthError(ClientAuthErrorCodes.noNetworkConnectivity);
156
- case BridgeStatusCode.ACCOUNT_UNAVAILABLE:
157
- return new ClientAuthError(ClientAuthErrorCodes.noAccountFound);
158
- case BridgeStatusCode.DISABLED:
159
- return new ClientAuthError(ClientAuthErrorCodes.nestedAppAuthBridgeDisabled);
160
- case BridgeStatusCode.NESTED_APP_AUTH_UNAVAILABLE:
161
- return new ClientAuthError(error.code, error.description);
162
- case BridgeStatusCode.TRANSIENT_ERROR:
163
- case BridgeStatusCode.PERSISTENT_ERROR:
164
- return new ServerError(error.code, error.description);
165
- case BridgeStatusCode.USER_INTERACTION_REQUIRED:
166
- return new InteractionRequiredAuthError(error.code, error.description);
167
- default:
168
- return new AuthError(error.code, error.description);
169
- }
170
- }
171
- else {
172
- return new AuthError("unknown_error", "An unknown error occurred");
173
- }
174
- }
7
+ /*
8
+ * Copyright (c) Microsoft Corporation. All rights reserved.
9
+ * Licensed under the MIT License.
10
+ */
11
+ class NestedAppAuthAdapter {
12
+ constructor(clientId, clientCapabilities, crypto, logger) {
13
+ this.clientId = clientId;
14
+ this.clientCapabilities = clientCapabilities;
15
+ this.crypto = crypto;
16
+ this.logger = logger;
17
+ }
18
+ toNaaTokenRequest(request) {
19
+ let extraParams;
20
+ if (request.extraQueryParameters === undefined) {
21
+ extraParams = new Map();
22
+ }
23
+ else {
24
+ extraParams = new Map(Object.entries(request.extraQueryParameters));
25
+ }
26
+ const requestBuilder = new RequestParameterBuilder();
27
+ const claims = requestBuilder.addClientCapabilitiesToClaims(request.claims, this.clientCapabilities);
28
+ const tokenRequest = {
29
+ userObjectId: request.account?.homeAccountId,
30
+ clientId: this.clientId,
31
+ authority: request.authority,
32
+ scope: request.scopes.join(" "),
33
+ correlationId: request.correlationId !== undefined
34
+ ? request.correlationId
35
+ : this.crypto.createNewGuid(),
36
+ nonce: request.nonce,
37
+ claims: !StringUtils.isEmptyObj(claims) ? claims : undefined,
38
+ state: request.state,
39
+ authenticationScheme: request.authenticationScheme || AuthenticationScheme.BEARER,
40
+ extraParameters: extraParams,
41
+ };
42
+ return tokenRequest;
43
+ }
44
+ fromNaaTokenResponse(request, response, reqTimestamp) {
45
+ if (!response.id_token || !response.access_token) {
46
+ throw createClientAuthError(ClientAuthErrorCodes.nullOrEmptyToken);
47
+ }
48
+ const expiresOn = new Date((reqTimestamp + (response.expires_in || 0)) * 1000);
49
+ const idTokenClaims = AuthToken.extractTokenClaims(response.id_token, this.crypto.base64Decode);
50
+ const account = this.fromNaaAccountInfo(response.account, idTokenClaims);
51
+ const authenticationResult = {
52
+ authority: response.authority || account.environment,
53
+ uniqueId: account.localAccountId,
54
+ tenantId: account.tenantId,
55
+ scopes: response.scope.split(" "),
56
+ account,
57
+ idToken: response.id_token !== undefined ? response.id_token : "",
58
+ idTokenClaims,
59
+ accessToken: response.access_token,
60
+ fromCache: true,
61
+ expiresOn: expiresOn,
62
+ tokenType: request.authenticationScheme || AuthenticationScheme.BEARER,
63
+ correlationId: request.correlationId,
64
+ extExpiresOn: expiresOn,
65
+ state: request.state,
66
+ };
67
+ return authenticationResult;
68
+ }
69
+ /*
70
+ * export type AccountInfo = {
71
+ * homeAccountId: string;
72
+ * environment: string;
73
+ * tenantId: string;
74
+ * username: string;
75
+ * localAccountId: string;
76
+ * name?: string;
77
+ * idToken?: string;
78
+ * idTokenClaims?: TokenClaims & {
79
+ * [key: string]:
80
+ * | string
81
+ * | number
82
+ * | string[]
83
+ * | object
84
+ * | undefined
85
+ * | unknown;
86
+ * };
87
+ * nativeAccountId?: string;
88
+ * authorityType?: string;
89
+ * };
90
+ */
91
+ fromNaaAccountInfo(fromAccount, idTokenClaims) {
92
+ const effectiveIdTokenClaims = idTokenClaims || fromAccount.idTokenClaims;
93
+ const localAccountId = fromAccount.localAccountId ||
94
+ effectiveIdTokenClaims?.oid ||
95
+ effectiveIdTokenClaims?.sub ||
96
+ "";
97
+ const tenantId = fromAccount.tenantId || effectiveIdTokenClaims?.tid || "";
98
+ const homeAccountId = fromAccount.homeAccountId || `${localAccountId}.${tenantId}`;
99
+ const username = fromAccount.username ||
100
+ effectiveIdTokenClaims?.preferred_username ||
101
+ "";
102
+ const name = fromAccount.name || effectiveIdTokenClaims?.name;
103
+ const account = {
104
+ homeAccountId,
105
+ environment: fromAccount.environment,
106
+ tenantId,
107
+ username,
108
+ localAccountId,
109
+ name,
110
+ idToken: fromAccount.idToken,
111
+ idTokenClaims: effectiveIdTokenClaims,
112
+ };
113
+ return account;
114
+ }
115
+ /**
116
+ *
117
+ * @param error BridgeError
118
+ * @returns AuthError, ClientAuthError, ClientConfigurationError, ServerError, InteractionRequiredError
119
+ */
120
+ fromBridgeError(error) {
121
+ if (isBridgeError(error)) {
122
+ switch (error.status) {
123
+ case BridgeStatusCode.USER_CANCEL:
124
+ return new ClientAuthError(ClientAuthErrorCodes.userCanceled);
125
+ case BridgeStatusCode.NO_NETWORK:
126
+ return new ClientAuthError(ClientAuthErrorCodes.noNetworkConnectivity);
127
+ case BridgeStatusCode.ACCOUNT_UNAVAILABLE:
128
+ return new ClientAuthError(ClientAuthErrorCodes.noAccountFound);
129
+ case BridgeStatusCode.DISABLED:
130
+ return new ClientAuthError(ClientAuthErrorCodes.nestedAppAuthBridgeDisabled);
131
+ case BridgeStatusCode.NESTED_APP_AUTH_UNAVAILABLE:
132
+ return new ClientAuthError(error.code ||
133
+ ClientAuthErrorCodes.nestedAppAuthBridgeDisabled, error.description);
134
+ case BridgeStatusCode.TRANSIENT_ERROR:
135
+ case BridgeStatusCode.PERSISTENT_ERROR:
136
+ return new ServerError(error.code, error.description);
137
+ case BridgeStatusCode.USER_INTERACTION_REQUIRED:
138
+ return new InteractionRequiredAuthError(error.code, error.description);
139
+ default:
140
+ return new AuthError(error.code, error.description);
141
+ }
142
+ }
143
+ else {
144
+ return new AuthError("unknown_error", "An unknown error occurred");
145
+ }
146
+ }
175
147
  }
176
148
 
177
149
  export { NestedAppAuthAdapter };
@@ -1 +1 @@
1
- {"version":3,"file":"NestedAppAuthAdapter.mjs","sources":["../../../src/naa/mapping/NestedAppAuthAdapter.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAKA;AACA;AACA;AACA;AAmBO,MAAE,oBAAsB,CAAA;AAG/B,IAAA,WAAA,CAAA,QAAiC,EAAA,kBAAA,EAAA,MAAA,EAAA,MAAA,EAAA;AAC7B,QAAA,IAAA,CAAS,QAAS,GAAA,QAAQ,CAAA;AAC1B,QAAA,IAAA,CAAS,kBAAgB,GAAA,kBAAA,CAAA;AACzB,QAAA,IAAA,CAAS,MAAC,GAAQ,MAAE,CAAA;AACpB,QAAA,IAAA,CAAS,MAAC,GAAA,MAAA,CAAA;AAGN,KAAA;AAWG,IAAA,uBAAuB,CAAC,OAAO,EAAE;AAmCjC,QAAA,IAAA,WACI,CAAA;QAmCgB,IAAA,OAAA,CAAA,oBACd,KAAA,SACD,EAAA;AAyDL,YAAA,WAAmB,GAAA,IAAA,GAAA,EAAa,CAAA;AAyBvC,SAAA;;;;AAIG;AACI;AA2CV;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"NestedAppAuthAdapter.mjs","sources":["../../../src/naa/mapping/NestedAppAuthAdapter.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAKA;AACA;AACA;AACA;AAwBA,MAAA,oBAAiC,CAAA;AAC7B,IAAA,WAAU,CAAA,QAAQ,EAAA,kBAAQ,EAAA,MAAA,EAAA,MAAA,EAAA;AAC1B,QAAA,IAAA,CAAS,QAAS,GAAA,QAAO,CAAA;AACzB,QAAA,IAAA,CAAS,kBAAkB,GAAA,kBAAA,CAAA;AAC3B,QAAA,IAAA,CAAS,MAAC,GAAA,MAAA,CAAA;AAGN,QAAA,IAAA,CAAA,MAAA,GAAA,MAAU,CAAA;AAWP,KAAA;AAqCA,IAAA,iBAAA,CAAA,OACH,EAAA;QA+DqB,IAAA,WACrB,CAAW;AAuCf,QAAA,IAAA,OAAA,CAAA,oBAAA,KAAA,SAAA,EAAA;;;;AAIG,YAAA,WAAA,GAAA,IAAA,GAAA,CAAA,MAAA,CAAA,OAAA,CAAA,OAAA,CAAA,oBAAA,CAAA,CAAA,CAAA;AACI,SAAA;AA+CV,QAAA,MAAA,cAAA,GAAA,IAAA,uBAAA,EAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,17 +1,17 @@
1
- import { NavigationOptions } from "./NavigationOptions";
2
- export interface INavigationClient {
3
- /**
4
- * Navigates to other pages within the same web application
5
- * Return false if this doesn't cause the page to reload i.e. Client-side navigation
6
- * @param url
7
- * @param options
8
- */
9
- navigateInternal(url: string, options: NavigationOptions): Promise<boolean>;
10
- /**
11
- * Navigates to other pages outside the web application i.e. the Identity Provider
12
- * @param url
13
- * @param options
14
- */
15
- navigateExternal(url: string, options: NavigationOptions): Promise<boolean>;
16
- }
1
+ import { NavigationOptions } from "./NavigationOptions";
2
+ export interface INavigationClient {
3
+ /**
4
+ * Navigates to other pages within the same web application
5
+ * Return false if this doesn't cause the page to reload i.e. Client-side navigation
6
+ * @param url
7
+ * @param options
8
+ */
9
+ navigateInternal(url: string, options: NavigationOptions): Promise<boolean>;
10
+ /**
11
+ * Navigates to other pages outside the web application i.e. the Identity Provider
12
+ * @param url
13
+ * @param options
14
+ */
15
+ navigateExternal(url: string, options: NavigationOptions): Promise<boolean>;
16
+ }
17
17
  //# sourceMappingURL=INavigationClient.d.ts.map
@@ -1,23 +1,23 @@
1
- import { INavigationClient } from "./INavigationClient";
2
- import { NavigationOptions } from "./NavigationOptions";
3
- export declare class NavigationClient implements INavigationClient {
4
- /**
5
- * Navigates to other pages within the same web application
6
- * @param url
7
- * @param options
8
- */
9
- navigateInternal(url: string, options: NavigationOptions): Promise<boolean>;
10
- /**
11
- * Navigates to other pages outside the web application i.e. the Identity Provider
12
- * @param url
13
- * @param options
14
- */
15
- navigateExternal(url: string, options: NavigationOptions): Promise<boolean>;
16
- /**
17
- * Default navigation implementation invoked by the internal and external functions
18
- * @param url
19
- * @param options
20
- */
21
- private static defaultNavigateWindow;
22
- }
1
+ import { INavigationClient } from "./INavigationClient";
2
+ import { NavigationOptions } from "./NavigationOptions";
3
+ export declare class NavigationClient implements INavigationClient {
4
+ /**
5
+ * Navigates to other pages within the same web application
6
+ * @param url
7
+ * @param options
8
+ */
9
+ navigateInternal(url: string, options: NavigationOptions): Promise<boolean>;
10
+ /**
11
+ * Navigates to other pages outside the web application i.e. the Identity Provider
12
+ * @param url
13
+ * @param options
14
+ */
15
+ navigateExternal(url: string, options: NavigationOptions): Promise<boolean>;
16
+ /**
17
+ * Default navigation implementation invoked by the internal and external functions
18
+ * @param url
19
+ * @param options
20
+ */
21
+ private static defaultNavigateWindow;
22
+ }
23
23
  //# sourceMappingURL=NavigationClient.d.ts.map
@@ -1,44 +1,44 @@
1
- /*! @azure/msal-browser v3.5.0 2023-11-07 */
1
+ /*! @azure/msal-browser v3.5.1-beta.1 2023-11-14 */
2
2
  'use strict';
3
- /*
4
- * Copyright (c) Microsoft Corporation. All rights reserved.
5
- * Licensed under the MIT License.
6
- */
7
- class NavigationClient {
8
- /**
9
- * Navigates to other pages within the same web application
10
- * @param url
11
- * @param options
12
- */
13
- navigateInternal(url, options) {
14
- return NavigationClient.defaultNavigateWindow(url, options);
15
- }
16
- /**
17
- * Navigates to other pages outside the web application i.e. the Identity Provider
18
- * @param url
19
- * @param options
20
- */
21
- navigateExternal(url, options) {
22
- return NavigationClient.defaultNavigateWindow(url, options);
23
- }
24
- /**
25
- * Default navigation implementation invoked by the internal and external functions
26
- * @param url
27
- * @param options
28
- */
29
- static defaultNavigateWindow(url, options) {
30
- if (options.noHistory) {
31
- window.location.replace(url);
32
- }
33
- else {
34
- window.location.assign(url);
35
- }
36
- return new Promise((resolve) => {
37
- setTimeout(() => {
38
- resolve(true);
39
- }, options.timeout);
40
- });
41
- }
3
+ /*
4
+ * Copyright (c) Microsoft Corporation. All rights reserved.
5
+ * Licensed under the MIT License.
6
+ */
7
+ class NavigationClient {
8
+ /**
9
+ * Navigates to other pages within the same web application
10
+ * @param url
11
+ * @param options
12
+ */
13
+ navigateInternal(url, options) {
14
+ return NavigationClient.defaultNavigateWindow(url, options);
15
+ }
16
+ /**
17
+ * Navigates to other pages outside the web application i.e. the Identity Provider
18
+ * @param url
19
+ * @param options
20
+ */
21
+ navigateExternal(url, options) {
22
+ return NavigationClient.defaultNavigateWindow(url, options);
23
+ }
24
+ /**
25
+ * Default navigation implementation invoked by the internal and external functions
26
+ * @param url
27
+ * @param options
28
+ */
29
+ static defaultNavigateWindow(url, options) {
30
+ if (options.noHistory) {
31
+ window.location.replace(url);
32
+ }
33
+ else {
34
+ window.location.assign(url);
35
+ }
36
+ return new Promise((resolve) => {
37
+ setTimeout(() => {
38
+ resolve(true);
39
+ }, options.timeout);
40
+ });
41
+ }
42
42
  }
43
43
 
44
44
  export { NavigationClient };
@@ -1,13 +1,13 @@
1
- import { ApiId } from "../utils/BrowserConstants";
2
- /**
3
- * Additional information passed to the navigateInternal and navigateExternal functions
4
- */
5
- export type NavigationOptions = {
6
- /** The Id of the API that initiated navigation */
7
- apiId: ApiId;
8
- /** Suggested timeout (ms) based on the configuration provided to PublicClientApplication */
9
- timeout: number;
10
- /** When set to true the url should not be added to the browser history */
11
- noHistory: boolean;
12
- };
1
+ import { ApiId } from "../utils/BrowserConstants";
2
+ /**
3
+ * Additional information passed to the navigateInternal and navigateExternal functions
4
+ */
5
+ export type NavigationOptions = {
6
+ /** The Id of the API that initiated navigation */
7
+ apiId: ApiId;
8
+ /** Suggested timeout (ms) based on the configuration provided to PublicClientApplication */
9
+ timeout: number;
10
+ /** When set to true the url should not be added to the browser history */
11
+ noHistory: boolean;
12
+ };
13
13
  //# sourceMappingURL=NavigationOptions.d.ts.map
@@ -1,27 +1,27 @@
1
- import { INetworkModule, NetworkRequestOptions, NetworkResponse } from "@azure/msal-common";
2
- /**
3
- * This class implements the Fetch API for GET and POST requests. See more here: https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API
4
- */
5
- export declare class FetchClient implements INetworkModule {
6
- /**
7
- * Fetch Client for REST endpoints - Get request
8
- * @param url
9
- * @param headers
10
- * @param body
11
- */
12
- sendGetRequestAsync<T>(url: string, options?: NetworkRequestOptions): Promise<NetworkResponse<T>>;
13
- /**
14
- * Fetch Client for REST endpoints - Post request
15
- * @param url
16
- * @param headers
17
- * @param body
18
- */
19
- sendPostRequestAsync<T>(url: string, options?: NetworkRequestOptions): Promise<NetworkResponse<T>>;
20
- /**
21
- * Get Fetch API Headers object from string map
22
- * @param inputHeaders
23
- */
24
- private getFetchHeaders;
25
- private getHeaderDict;
26
- }
1
+ import { INetworkModule, NetworkRequestOptions, NetworkResponse } from "@azure/msal-common";
2
+ /**
3
+ * This class implements the Fetch API for GET and POST requests. See more here: https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API
4
+ */
5
+ export declare class FetchClient implements INetworkModule {
6
+ /**
7
+ * Fetch Client for REST endpoints - Get request
8
+ * @param url
9
+ * @param headers
10
+ * @param body
11
+ */
12
+ sendGetRequestAsync<T>(url: string, options?: NetworkRequestOptions): Promise<NetworkResponse<T>>;
13
+ /**
14
+ * Fetch Client for REST endpoints - Post request
15
+ * @param url
16
+ * @param headers
17
+ * @param body
18
+ */
19
+ sendPostRequestAsync<T>(url: string, options?: NetworkRequestOptions): Promise<NetworkResponse<T>>;
20
+ /**
21
+ * Get Fetch API Headers object from string map
22
+ * @param inputHeaders
23
+ */
24
+ private getFetchHeaders;
25
+ private getHeaderDict;
26
+ }
27
27
  //# sourceMappingURL=FetchClient.d.ts.map