@azure/msal-common 13.0.0 → 14.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 (289) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +62 -62
  3. package/dist/account/AccountInfo.d.ts +2 -2
  4. package/dist/account/AccountInfo.d.ts.map +1 -1
  5. package/dist/account/AuthToken.d.ts.map +1 -1
  6. package/dist/account/AuthToken.js +13 -14
  7. package/dist/account/AuthToken.js.map +1 -1
  8. package/dist/account/CcsCredential.d.ts +1 -1
  9. package/dist/account/CcsCredential.d.ts.map +1 -1
  10. package/dist/account/CcsCredential.js +1 -1
  11. package/dist/account/CcsCredential.js.map +1 -1
  12. package/dist/account/ClientCredentials.d.ts +2 -2
  13. package/dist/account/ClientCredentials.d.ts.map +1 -1
  14. package/dist/account/ClientInfo.d.ts +1 -1
  15. package/dist/account/ClientInfo.d.ts.map +1 -1
  16. package/dist/account/ClientInfo.js +6 -4
  17. package/dist/account/ClientInfo.js.map +1 -1
  18. package/dist/account/DecodedAuthToken.d.ts.map +1 -1
  19. package/dist/account/TokenClaims.d.ts +1 -1
  20. package/dist/account/TokenClaims.d.ts.map +1 -1
  21. package/dist/authority/Authority.d.ts.map +1 -1
  22. package/dist/authority/Authority.js +464 -546
  23. package/dist/authority/Authority.js.map +1 -1
  24. package/dist/authority/AuthorityFactory.d.ts.map +1 -1
  25. package/dist/authority/AuthorityFactory.js +19 -34
  26. package/dist/authority/AuthorityFactory.js.map +1 -1
  27. package/dist/authority/AuthorityMetadata.d.ts.map +1 -1
  28. package/dist/authority/AuthorityMetadata.js +873 -4
  29. package/dist/authority/AuthorityMetadata.js.map +1 -1
  30. package/dist/authority/AuthorityOptions.d.ts +1 -1
  31. package/dist/authority/AuthorityOptions.d.ts.map +1 -1
  32. package/dist/authority/AuthorityOptions.js +1 -1
  33. package/dist/authority/AuthorityOptions.js.map +1 -1
  34. package/dist/authority/AuthorityType.js +1 -1
  35. package/dist/authority/AuthorityType.js.map +1 -1
  36. package/dist/authority/AzureRegion.d.ts +1 -1
  37. package/dist/authority/AzureRegion.d.ts.map +1 -1
  38. package/dist/authority/AzureRegionConfiguration.d.ts +1 -1
  39. package/dist/authority/AzureRegionConfiguration.d.ts.map +1 -1
  40. package/dist/authority/CloudDiscoveryMetadata.d.ts +1 -1
  41. package/dist/authority/CloudDiscoveryMetadata.d.ts.map +1 -1
  42. package/dist/authority/CloudInstanceDiscoveryErrorResponse.d.ts +1 -1
  43. package/dist/authority/CloudInstanceDiscoveryErrorResponse.d.ts.map +1 -1
  44. package/dist/authority/CloudInstanceDiscoveryErrorResponse.js +1 -1
  45. package/dist/authority/CloudInstanceDiscoveryErrorResponse.js.map +1 -1
  46. package/dist/authority/CloudInstanceDiscoveryResponse.d.ts +1 -1
  47. package/dist/authority/CloudInstanceDiscoveryResponse.d.ts.map +1 -1
  48. package/dist/authority/CloudInstanceDiscoveryResponse.js +1 -1
  49. package/dist/authority/CloudInstanceDiscoveryResponse.js.map +1 -1
  50. package/dist/authority/ImdsOptions.d.ts +1 -1
  51. package/dist/authority/ImdsOptions.d.ts.map +1 -1
  52. package/dist/authority/OpenIdConfigResponse.d.ts +1 -1
  53. package/dist/authority/OpenIdConfigResponse.d.ts.map +1 -1
  54. package/dist/authority/OpenIdConfigResponse.js +1 -1
  55. package/dist/authority/OpenIdConfigResponse.js.map +1 -1
  56. package/dist/authority/ProtocolMode.js +1 -1
  57. package/dist/authority/ProtocolMode.js.map +1 -1
  58. package/dist/authority/RegionDiscovery.d.ts.map +1 -1
  59. package/dist/authority/RegionDiscovery.js +85 -107
  60. package/dist/authority/RegionDiscovery.js.map +1 -1
  61. package/dist/authority/RegionDiscoveryMetadata.d.ts +1 -1
  62. package/dist/authority/RegionDiscoveryMetadata.d.ts.map +1 -1
  63. package/dist/broker/nativeBroker/INativeBrokerPlugin.d.ts.map +1 -1
  64. package/dist/cache/CacheManager.d.ts.map +1 -1
  65. package/dist/cache/CacheManager.js +440 -475
  66. package/dist/cache/CacheManager.js.map +1 -1
  67. package/dist/cache/entities/AccessTokenEntity.d.ts.map +1 -1
  68. package/dist/cache/entities/AccessTokenEntity.js +21 -22
  69. package/dist/cache/entities/AccessTokenEntity.js.map +1 -1
  70. package/dist/cache/entities/AccountEntity.d.ts.map +1 -1
  71. package/dist/cache/entities/AccountEntity.js +78 -66
  72. package/dist/cache/entities/AccountEntity.js.map +1 -1
  73. package/dist/cache/entities/AppMetadataEntity.d.ts.map +1 -1
  74. package/dist/cache/entities/AppMetadataEntity.js +16 -17
  75. package/dist/cache/entities/AppMetadataEntity.js.map +1 -1
  76. package/dist/cache/entities/AuthorityMetadataEntity.d.ts.map +1 -1
  77. package/dist/cache/entities/AuthorityMetadataEntity.js +22 -19
  78. package/dist/cache/entities/AuthorityMetadataEntity.js.map +1 -1
  79. package/dist/cache/entities/CacheRecord.d.ts.map +1 -1
  80. package/dist/cache/entities/CacheRecord.js +4 -5
  81. package/dist/cache/entities/CacheRecord.js.map +1 -1
  82. package/dist/cache/entities/CredentialEntity.d.ts.map +1 -1
  83. package/dist/cache/entities/CredentialEntity.js +35 -34
  84. package/dist/cache/entities/CredentialEntity.js.map +1 -1
  85. package/dist/cache/entities/IdTokenEntity.d.ts.map +1 -1
  86. package/dist/cache/entities/IdTokenEntity.js +8 -14
  87. package/dist/cache/entities/IdTokenEntity.js.map +1 -1
  88. package/dist/cache/entities/RefreshTokenEntity.d.ts.map +1 -1
  89. package/dist/cache/entities/RefreshTokenEntity.js +8 -14
  90. package/dist/cache/entities/RefreshTokenEntity.js.map +1 -1
  91. package/dist/cache/entities/ServerTelemetryEntity.d.ts.map +1 -1
  92. package/dist/cache/entities/ServerTelemetryEntity.js +8 -9
  93. package/dist/cache/entities/ServerTelemetryEntity.js.map +1 -1
  94. package/dist/cache/entities/ThrottlingEntity.js +9 -11
  95. package/dist/cache/entities/ThrottlingEntity.js.map +1 -1
  96. package/dist/cache/interface/ICacheManager.d.ts.map +1 -1
  97. package/dist/cache/persistence/TokenCacheContext.d.ts.map +1 -1
  98. package/dist/cache/persistence/TokenCacheContext.js +16 -25
  99. package/dist/cache/persistence/TokenCacheContext.js.map +1 -1
  100. package/dist/cache/utils/CacheTypes.d.ts +11 -11
  101. package/dist/cache/utils/CacheTypes.d.ts.map +1 -1
  102. package/dist/client/AuthorizationCodeClient.d.ts.map +1 -1
  103. package/dist/client/AuthorizationCodeClient.js +341 -384
  104. package/dist/client/AuthorizationCodeClient.js.map +1 -1
  105. package/dist/client/BaseClient.d.ts.map +1 -1
  106. package/dist/client/BaseClient.js +27 -35
  107. package/dist/client/BaseClient.js.map +1 -1
  108. package/dist/client/RefreshTokenClient.d.ts.map +1 -1
  109. package/dist/client/RefreshTokenClient.js +208 -241
  110. package/dist/client/RefreshTokenClient.js.map +1 -1
  111. package/dist/client/SilentFlowClient.d.ts.map +1 -1
  112. package/dist/client/SilentFlowClient.js +77 -105
  113. package/dist/client/SilentFlowClient.js.map +1 -1
  114. package/dist/config/AppTokenProvider.d.ts +2 -2
  115. package/dist/config/AppTokenProvider.d.ts.map +1 -1
  116. package/dist/config/ClientConfiguration.d.ts +9 -9
  117. package/dist/config/ClientConfiguration.d.ts.map +1 -1
  118. package/dist/config/ClientConfiguration.js +40 -43
  119. package/dist/config/ClientConfiguration.js.map +1 -1
  120. package/dist/crypto/ICrypto.d.ts +2 -2
  121. package/dist/crypto/ICrypto.d.ts.map +1 -1
  122. package/dist/crypto/ICrypto.js +27 -58
  123. package/dist/crypto/ICrypto.js.map +1 -1
  124. package/dist/crypto/JoseHeader.d.ts +1 -1
  125. package/dist/crypto/JoseHeader.d.ts.map +1 -1
  126. package/dist/crypto/JoseHeader.js +8 -9
  127. package/dist/crypto/JoseHeader.js.map +1 -1
  128. package/dist/crypto/PopTokenGenerator.d.ts +2 -2
  129. package/dist/crypto/PopTokenGenerator.d.ts.map +1 -1
  130. package/dist/crypto/PopTokenGenerator.js +47 -71
  131. package/dist/crypto/PopTokenGenerator.js.map +1 -1
  132. package/dist/crypto/SignedHttpRequest.d.ts +1 -1
  133. package/dist/crypto/SignedHttpRequest.d.ts.map +1 -1
  134. package/dist/error/AuthError.d.ts.map +1 -1
  135. package/dist/error/AuthError.js +25 -28
  136. package/dist/error/AuthError.js.map +1 -1
  137. package/dist/error/ClientAuthError.d.ts +8 -0
  138. package/dist/error/ClientAuthError.d.ts.map +1 -1
  139. package/dist/error/ClientAuthError.js +187 -181
  140. package/dist/error/ClientAuthError.js.map +1 -1
  141. package/dist/error/ClientConfigurationError.d.ts.map +1 -1
  142. package/dist/error/ClientConfigurationError.js +82 -86
  143. package/dist/error/ClientConfigurationError.js.map +1 -1
  144. package/dist/error/InteractionRequiredAuthError.d.ts.map +1 -1
  145. package/dist/error/InteractionRequiredAuthError.js +36 -35
  146. package/dist/error/InteractionRequiredAuthError.js.map +1 -1
  147. package/dist/error/JoseHeaderError.d.ts.map +1 -1
  148. package/dist/error/JoseHeaderError.js +14 -18
  149. package/dist/error/JoseHeaderError.js.map +1 -1
  150. package/dist/error/ServerError.d.ts.map +1 -1
  151. package/dist/error/ServerError.js +7 -11
  152. package/dist/error/ServerError.js.map +1 -1
  153. package/dist/index.cjs.js +4221 -4476
  154. package/dist/index.cjs.js.map +1 -1
  155. package/dist/index.d.ts +20 -21
  156. package/dist/index.d.ts.map +1 -1
  157. package/dist/index.js +5 -6
  158. package/dist/index.js.map +1 -1
  159. package/dist/logger/Logger.d.ts +1 -1
  160. package/dist/logger/Logger.d.ts.map +1 -1
  161. package/dist/logger/Logger.js +70 -60
  162. package/dist/logger/Logger.js.map +1 -1
  163. package/dist/network/INetworkModule.d.ts +1 -1
  164. package/dist/network/INetworkModule.d.ts.map +1 -1
  165. package/dist/network/INetworkModule.js +7 -7
  166. package/dist/network/INetworkModule.js.map +1 -1
  167. package/dist/network/NetworkManager.d.ts +4 -3
  168. package/dist/network/NetworkManager.d.ts.map +1 -1
  169. package/dist/network/NetworkManager.js +21 -35
  170. package/dist/network/NetworkManager.js.map +1 -1
  171. package/dist/network/RequestThumbprint.d.ts +1 -1
  172. package/dist/network/RequestThumbprint.d.ts.map +1 -1
  173. package/dist/network/ThrottlingUtils.d.ts.map +1 -1
  174. package/dist/network/ThrottlingUtils.js +37 -36
  175. package/dist/network/ThrottlingUtils.js.map +1 -1
  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/AuthenticationHeaderParser.d.ts.map +1 -1
  181. package/dist/request/AuthenticationHeaderParser.js +17 -18
  182. package/dist/request/AuthenticationHeaderParser.js.map +1 -1
  183. package/dist/request/BaseAuthRequest.d.ts +1 -1
  184. package/dist/request/BaseAuthRequest.d.ts.map +1 -1
  185. package/dist/request/CommonAuthorizationCodeRequest.d.ts +1 -1
  186. package/dist/request/CommonAuthorizationCodeRequest.d.ts.map +1 -1
  187. package/dist/request/CommonAuthorizationUrlRequest.d.ts +1 -1
  188. package/dist/request/CommonAuthorizationUrlRequest.d.ts.map +1 -1
  189. package/dist/request/CommonClientCredentialRequest.d.ts +1 -1
  190. package/dist/request/CommonClientCredentialRequest.d.ts.map +1 -1
  191. package/dist/request/CommonDeviceCodeRequest.d.ts +1 -1
  192. package/dist/request/CommonDeviceCodeRequest.d.ts.map +1 -1
  193. package/dist/request/CommonEndSessionRequest.d.ts +1 -1
  194. package/dist/request/CommonEndSessionRequest.d.ts.map +1 -1
  195. package/dist/request/CommonOnBehalfOfRequest.d.ts +1 -1
  196. package/dist/request/CommonOnBehalfOfRequest.d.ts.map +1 -1
  197. package/dist/request/CommonRefreshTokenRequest.d.ts +1 -1
  198. package/dist/request/CommonRefreshTokenRequest.d.ts.map +1 -1
  199. package/dist/request/CommonSilentFlowRequest.d.ts +1 -1
  200. package/dist/request/CommonSilentFlowRequest.d.ts.map +1 -1
  201. package/dist/request/CommonUsernamePasswordRequest.d.ts +1 -1
  202. package/dist/request/CommonUsernamePasswordRequest.d.ts.map +1 -1
  203. package/dist/request/NativeRequest.d.ts +1 -1
  204. package/dist/request/NativeRequest.d.ts.map +1 -1
  205. package/dist/request/NativeSignOutRequest.d.ts +1 -1
  206. package/dist/request/NativeSignOutRequest.d.ts.map +1 -1
  207. package/dist/request/RequestParameterBuilder.d.ts.map +1 -1
  208. package/dist/request/RequestParameterBuilder.js +111 -113
  209. package/dist/request/RequestParameterBuilder.js.map +1 -1
  210. package/dist/request/RequestValidator.d.ts.map +1 -1
  211. package/dist/request/RequestValidator.js +23 -28
  212. package/dist/request/RequestValidator.js.map +1 -1
  213. package/dist/request/ScopeSet.d.ts.map +1 -1
  214. package/dist/request/ScopeSet.js +70 -70
  215. package/dist/request/ScopeSet.js.map +1 -1
  216. package/dist/response/AuthenticationResult.d.ts +1 -1
  217. package/dist/response/AuthenticationResult.d.ts.map +1 -1
  218. package/dist/response/AuthorizationCodePayload.d.ts +1 -1
  219. package/dist/response/AuthorizationCodePayload.d.ts.map +1 -1
  220. package/dist/response/DeviceCodeResponse.d.ts +2 -2
  221. package/dist/response/DeviceCodeResponse.d.ts.map +1 -1
  222. package/dist/response/ExternalTokenResponse.d.ts +1 -1
  223. package/dist/response/ExternalTokenResponse.d.ts.map +1 -1
  224. package/dist/response/IMDSBadResponse.d.ts +1 -1
  225. package/dist/response/IMDSBadResponse.d.ts.map +1 -1
  226. package/dist/response/ResponseHandler.d.ts.map +1 -1
  227. package/dist/response/ResponseHandler.js +195 -180
  228. package/dist/response/ResponseHandler.js.map +1 -1
  229. package/dist/response/ServerAuthorizationCodeResponse.d.ts +1 -1
  230. package/dist/response/ServerAuthorizationCodeResponse.d.ts.map +1 -1
  231. package/dist/response/ServerAuthorizationTokenResponse.d.ts +1 -1
  232. package/dist/response/ServerAuthorizationTokenResponse.d.ts.map +1 -1
  233. package/dist/telemetry/performance/IPerformanceClient.d.ts +3 -4
  234. package/dist/telemetry/performance/IPerformanceClient.d.ts.map +1 -1
  235. package/dist/telemetry/performance/PerformanceClient.d.ts +2 -10
  236. package/dist/telemetry/performance/PerformanceClient.d.ts.map +1 -1
  237. package/dist/telemetry/performance/PerformanceClient.js +134 -129
  238. package/dist/telemetry/performance/PerformanceClient.js.map +1 -1
  239. package/dist/telemetry/performance/PerformanceEvent.d.ts +4 -4
  240. package/dist/telemetry/performance/PerformanceEvent.d.ts.map +1 -1
  241. package/dist/telemetry/performance/PerformanceEvent.js +2 -2
  242. package/dist/telemetry/performance/PerformanceEvent.js.map +1 -1
  243. package/dist/telemetry/performance/StubPerformanceClient.d.ts +5 -3
  244. package/dist/telemetry/performance/StubPerformanceClient.d.ts.map +1 -1
  245. package/dist/telemetry/performance/StubPerformanceClient.js +23 -32
  246. package/dist/telemetry/performance/StubPerformanceClient.js.map +1 -1
  247. package/dist/telemetry/server/ServerTelemetryManager.d.ts +1 -2
  248. package/dist/telemetry/server/ServerTelemetryManager.d.ts.map +1 -1
  249. package/dist/telemetry/server/ServerTelemetryManager.js +106 -68
  250. package/dist/telemetry/server/ServerTelemetryManager.js.map +1 -1
  251. package/dist/telemetry/server/ServerTelemetryRequest.d.ts +1 -1
  252. package/dist/telemetry/server/ServerTelemetryRequest.d.ts.map +1 -1
  253. package/dist/url/UrlString.d.ts.map +1 -1
  254. package/dist/url/UrlString.js +85 -74
  255. package/dist/url/UrlString.js.map +1 -1
  256. package/dist/utils/Constants.d.ts.map +1 -1
  257. package/dist/utils/Constants.js +28 -27
  258. package/dist/utils/Constants.js.map +1 -1
  259. package/dist/utils/MsalTypes.d.ts +1 -1
  260. package/dist/utils/MsalTypes.d.ts.map +1 -1
  261. package/dist/utils/ProtocolUtils.d.ts +2 -2
  262. package/dist/utils/ProtocolUtils.d.ts.map +1 -1
  263. package/dist/utils/ProtocolUtils.js +27 -24
  264. package/dist/utils/ProtocolUtils.js.map +1 -1
  265. package/dist/utils/StringUtils.d.ts.map +1 -1
  266. package/dist/utils/StringUtils.js +44 -42
  267. package/dist/utils/StringUtils.js.map +1 -1
  268. package/dist/utils/TimeUtils.d.ts.map +1 -1
  269. package/dist/utils/TimeUtils.js +16 -19
  270. package/dist/utils/TimeUtils.js.map +1 -1
  271. package/package.json +79 -76
  272. package/dist/_virtual/_tslib.js +0 -90
  273. package/dist/_virtual/_tslib.js.map +0 -1
  274. package/dist/client/ClientCredentialClient.d.ts +0 -38
  275. package/dist/client/ClientCredentialClient.d.ts.map +0 -1
  276. package/dist/client/ClientCredentialClient.js +0 -203
  277. package/dist/client/ClientCredentialClient.js.map +0 -1
  278. package/dist/client/DeviceCodeClient.d.ts +0 -57
  279. package/dist/client/DeviceCodeClient.d.ts.map +0 -1
  280. package/dist/client/DeviceCodeClient.js +0 -250
  281. package/dist/client/DeviceCodeClient.js.map +0 -1
  282. package/dist/client/OnBehalfOfClient.d.ts +0 -51
  283. package/dist/client/OnBehalfOfClient.d.ts.map +0 -1
  284. package/dist/client/OnBehalfOfClient.js +0 -248
  285. package/dist/client/OnBehalfOfClient.js.map +0 -1
  286. package/dist/client/UsernamePasswordClient.d.ts +0 -29
  287. package/dist/client/UsernamePasswordClient.d.ts.map +0 -1
  288. package/dist/client/UsernamePasswordClient.js +0 -129
  289. package/dist/client/UsernamePasswordClient.js.map +0 -1
@@ -1,6 +1,5 @@
1
- /*! @azure/msal-common v13.0.0 2023-05-01 */
1
+ /*! @azure/msal-common v14.0.0-alpha.1 2023-05-08 */
2
2
  'use strict';
3
- import { __awaiter, __generator } from '../_virtual/_tslib.js';
4
3
  import { buildClientInfo } from '../account/ClientInfo.js';
5
4
  import { ClientAuthError } from '../error/ClientAuthError.js';
6
5
  import { StringUtils } from '../utils/StringUtils.js';
@@ -28,8 +27,8 @@ import { PerformanceEvents } from '../telemetry/performance/PerformanceEvent.js'
28
27
  /**
29
28
  * Class that handles response parsing.
30
29
  */
31
- var ResponseHandler = /** @class */ (function () {
32
- function ResponseHandler(clientId, cacheStorage, cryptoObj, logger, serializableCache, persistencePlugin, performanceClient) {
30
+ class ResponseHandler {
31
+ constructor(clientId, cacheStorage, cryptoObj, logger, serializableCache, persistencePlugin, performanceClient) {
33
32
  this.clientId = clientId;
34
33
  this.cacheStorage = cacheStorage;
35
34
  this.cryptoObj = cryptoObj;
@@ -44,15 +43,20 @@ var ResponseHandler = /** @class */ (function () {
44
43
  * @param cachedState
45
44
  * @param cryptoObj
46
45
  */
47
- ResponseHandler.prototype.validateServerAuthorizationCodeResponse = function (serverResponseHash, cachedState, cryptoObj) {
46
+ validateServerAuthorizationCodeResponse(serverResponseHash, cachedState, cryptoObj) {
48
47
  if (!serverResponseHash.state || !cachedState) {
49
- throw !serverResponseHash.state ? ClientAuthError.createStateNotFoundError("Server State") : ClientAuthError.createStateNotFoundError("Cached State");
48
+ throw !serverResponseHash.state
49
+ ? ClientAuthError.createStateNotFoundError("Server State")
50
+ : ClientAuthError.createStateNotFoundError("Cached State");
50
51
  }
51
- if (decodeURIComponent(serverResponseHash.state) !== decodeURIComponent(cachedState)) {
52
+ if (decodeURIComponent(serverResponseHash.state) !==
53
+ decodeURIComponent(cachedState)) {
52
54
  throw ClientAuthError.createStateMismatchError();
53
55
  }
54
56
  // Check for error
55
- if (serverResponseHash.error || serverResponseHash.error_description || serverResponseHash.suberror) {
57
+ if (serverResponseHash.error ||
58
+ serverResponseHash.error_description ||
59
+ serverResponseHash.suberror) {
56
60
  if (InteractionRequiredAuthError.isInteractionRequiredError(serverResponseHash.error, serverResponseHash.error_description, serverResponseHash.suberror)) {
57
61
  throw new InteractionRequiredAuthError(serverResponseHash.error || Constants.EMPTY_STRING, serverResponseHash.error_description, serverResponseHash.suberror, serverResponseHash.timestamp || Constants.EMPTY_STRING, serverResponseHash.trace_id || Constants.EMPTY_STRING, serverResponseHash.correlation_id || Constants.EMPTY_STRING, serverResponseHash.claims || Constants.EMPTY_STRING);
58
62
  }
@@ -61,172 +65,185 @@ var ResponseHandler = /** @class */ (function () {
61
65
  if (serverResponseHash.client_info) {
62
66
  buildClientInfo(serverResponseHash.client_info, cryptoObj);
63
67
  }
64
- };
68
+ }
65
69
  /**
66
70
  * Function which validates server authorization token response.
67
71
  * @param serverResponse
68
72
  */
69
- ResponseHandler.prototype.validateTokenResponse = function (serverResponse) {
73
+ validateTokenResponse(serverResponse) {
70
74
  // Check for error
71
- if (serverResponse.error || serverResponse.error_description || serverResponse.suberror) {
75
+ if (serverResponse.error ||
76
+ serverResponse.error_description ||
77
+ serverResponse.suberror) {
72
78
  if (InteractionRequiredAuthError.isInteractionRequiredError(serverResponse.error, serverResponse.error_description, serverResponse.suberror)) {
73
79
  throw new InteractionRequiredAuthError(serverResponse.error, serverResponse.error_description, serverResponse.suberror, serverResponse.timestamp || Constants.EMPTY_STRING, serverResponse.trace_id || Constants.EMPTY_STRING, serverResponse.correlation_id || Constants.EMPTY_STRING, serverResponse.claims || Constants.EMPTY_STRING);
74
80
  }
75
- var errString = serverResponse.error_codes + " - [" + serverResponse.timestamp + "]: " + serverResponse.error_description + " - Correlation ID: " + serverResponse.correlation_id + " - Trace ID: " + serverResponse.trace_id;
81
+ const errString = `${serverResponse.error_codes} - [${serverResponse.timestamp}]: ${serverResponse.error_description} - Correlation ID: ${serverResponse.correlation_id} - Trace ID: ${serverResponse.trace_id}`;
76
82
  throw new ServerError(serverResponse.error, errString, serverResponse.suberror);
77
83
  }
78
- };
84
+ }
79
85
  /**
80
86
  * Returns a constructed token response based on given string. Also manages the cache updates and cleanups.
81
87
  * @param serverTokenResponse
82
88
  * @param authority
83
89
  */
84
- ResponseHandler.prototype.handleServerTokenResponse = function (serverTokenResponse, authority, reqTimestamp, request, authCodePayload, userAssertionHash, handlingRefreshTokenResponse, forceCacheRefreshTokenResponse, serverRequestId) {
85
- var _a;
86
- return __awaiter(this, void 0, void 0, function () {
87
- var idTokenObj, authTime, requestStateObj, cacheRecord, cacheContext, key, account;
88
- return __generator(this, function (_b) {
89
- switch (_b.label) {
90
- case 0:
91
- (_a = this.performanceClient) === null || _a === void 0 ? void 0 : _a.addQueueMeasurement(PerformanceEvents.HandleServerTokenResponse, serverTokenResponse.correlation_id);
92
- if (serverTokenResponse.id_token) {
93
- idTokenObj = new AuthToken(serverTokenResponse.id_token || Constants.EMPTY_STRING, this.cryptoObj);
94
- // token nonce check (TODO: Add a warning if no nonce is given?)
95
- if (authCodePayload && !StringUtils.isEmpty(authCodePayload.nonce)) {
96
- if (idTokenObj.claims.nonce !== authCodePayload.nonce) {
97
- throw ClientAuthError.createNonceMismatchError();
98
- }
99
- }
100
- // token max_age check
101
- if (request.maxAge || (request.maxAge === 0)) {
102
- authTime = idTokenObj.claims.auth_time;
103
- if (!authTime) {
104
- throw ClientAuthError.createAuthTimeNotFoundError();
105
- }
106
- AuthToken.checkMaxAge(authTime, request.maxAge);
107
- }
108
- }
109
- // generate homeAccountId
110
- this.homeAccountIdentifier = AccountEntity.generateHomeAccountId(serverTokenResponse.client_info || Constants.EMPTY_STRING, authority.authorityType, this.logger, this.cryptoObj, idTokenObj);
111
- if (!!authCodePayload && !!authCodePayload.state) {
112
- requestStateObj = ProtocolUtils.parseRequestState(this.cryptoObj, authCodePayload.state);
113
- }
114
- // Add keyId from request to serverTokenResponse if defined
115
- serverTokenResponse.key_id = serverTokenResponse.key_id || request.sshKid || undefined;
116
- cacheRecord = this.generateCacheRecord(serverTokenResponse, authority, reqTimestamp, request, idTokenObj, userAssertionHash, authCodePayload);
117
- _b.label = 1;
118
- case 1:
119
- _b.trys.push([1, , 5, 8]);
120
- if (!(this.persistencePlugin && this.serializableCache)) return [3 /*break*/, 3];
121
- this.logger.verbose("Persistence enabled, calling beforeCacheAccess");
122
- cacheContext = new TokenCacheContext(this.serializableCache, true);
123
- return [4 /*yield*/, this.persistencePlugin.beforeCacheAccess(cacheContext)];
124
- case 2:
125
- _b.sent();
126
- _b.label = 3;
127
- case 3:
128
- /*
129
- * When saving a refreshed tokens to the cache, it is expected that the account that was used is present in the cache.
130
- * If not present, we should return null, as it's the case that another application called removeAccount in between
131
- * the calls to getAllAccounts and acquireTokenSilent. We should not overwrite that removal, unless explicitly flagged by
132
- * the developer, as in the case of refresh token flow used in ADAL Node to MSAL Node migration.
133
- */
134
- if (handlingRefreshTokenResponse && !forceCacheRefreshTokenResponse && cacheRecord.account) {
135
- key = cacheRecord.account.generateAccountKey();
136
- account = this.cacheStorage.getAccount(key);
137
- if (!account) {
138
- this.logger.warning("Account used to refresh tokens not in persistence, refreshed tokens will not be stored in the cache");
139
- return [2 /*return*/, ResponseHandler.generateAuthenticationResult(this.cryptoObj, authority, cacheRecord, false, request, idTokenObj, requestStateObj, undefined, serverRequestId)];
140
- }
141
- }
142
- return [4 /*yield*/, this.cacheStorage.saveCacheRecord(cacheRecord)];
143
- case 4:
144
- _b.sent();
145
- return [3 /*break*/, 8];
146
- case 5:
147
- if (!(this.persistencePlugin && this.serializableCache && cacheContext)) return [3 /*break*/, 7];
148
- this.logger.verbose("Persistence enabled, calling afterCacheAccess");
149
- return [4 /*yield*/, this.persistencePlugin.afterCacheAccess(cacheContext)];
150
- case 6:
151
- _b.sent();
152
- _b.label = 7;
153
- case 7: return [7 /*endfinally*/];
154
- case 8: return [2 /*return*/, ResponseHandler.generateAuthenticationResult(this.cryptoObj, authority, cacheRecord, false, request, idTokenObj, requestStateObj, serverTokenResponse, serverRequestId)];
90
+ async handleServerTokenResponse(serverTokenResponse, authority, reqTimestamp, request, authCodePayload, userAssertionHash, handlingRefreshTokenResponse, forceCacheRefreshTokenResponse, serverRequestId) {
91
+ this.performanceClient?.addQueueMeasurement(PerformanceEvents.HandleServerTokenResponse, serverTokenResponse.correlation_id);
92
+ // create an idToken object (not entity)
93
+ let idTokenObj;
94
+ if (serverTokenResponse.id_token) {
95
+ idTokenObj = new AuthToken(serverTokenResponse.id_token || Constants.EMPTY_STRING, this.cryptoObj);
96
+ // token nonce check (TODO: Add a warning if no nonce is given?)
97
+ if (authCodePayload &&
98
+ !StringUtils.isEmpty(authCodePayload.nonce)) {
99
+ if (idTokenObj.claims.nonce !== authCodePayload.nonce) {
100
+ throw ClientAuthError.createNonceMismatchError();
101
+ }
102
+ }
103
+ // token max_age check
104
+ if (request.maxAge || request.maxAge === 0) {
105
+ const authTime = idTokenObj.claims.auth_time;
106
+ if (!authTime) {
107
+ throw ClientAuthError.createAuthTimeNotFoundError();
108
+ }
109
+ AuthToken.checkMaxAge(authTime, request.maxAge);
110
+ }
111
+ }
112
+ // generate homeAccountId
113
+ this.homeAccountIdentifier = AccountEntity.generateHomeAccountId(serverTokenResponse.client_info || Constants.EMPTY_STRING, authority.authorityType, this.logger, this.cryptoObj, idTokenObj);
114
+ // save the response tokens
115
+ let requestStateObj;
116
+ if (!!authCodePayload && !!authCodePayload.state) {
117
+ requestStateObj = ProtocolUtils.parseRequestState(this.cryptoObj, authCodePayload.state);
118
+ }
119
+ // Add keyId from request to serverTokenResponse if defined
120
+ serverTokenResponse.key_id =
121
+ serverTokenResponse.key_id || request.sshKid || undefined;
122
+ const cacheRecord = this.generateCacheRecord(serverTokenResponse, authority, reqTimestamp, request, idTokenObj, userAssertionHash, authCodePayload);
123
+ let cacheContext;
124
+ try {
125
+ if (this.persistencePlugin && this.serializableCache) {
126
+ this.logger.verbose("Persistence enabled, calling beforeCacheAccess");
127
+ cacheContext = new TokenCacheContext(this.serializableCache, true);
128
+ await this.persistencePlugin.beforeCacheAccess(cacheContext);
129
+ }
130
+ /*
131
+ * When saving a refreshed tokens to the cache, it is expected that the account that was used is present in the cache.
132
+ * If not present, we should return null, as it's the case that another application called removeAccount in between
133
+ * the calls to getAllAccounts and acquireTokenSilent. We should not overwrite that removal, unless explicitly flagged by
134
+ * the developer, as in the case of refresh token flow used in ADAL Node to MSAL Node migration.
135
+ */
136
+ if (handlingRefreshTokenResponse &&
137
+ !forceCacheRefreshTokenResponse &&
138
+ cacheRecord.account) {
139
+ const key = cacheRecord.account.generateAccountKey();
140
+ const account = this.cacheStorage.getAccount(key);
141
+ if (!account) {
142
+ this.logger.warning("Account used to refresh tokens not in persistence, refreshed tokens will not be stored in the cache");
143
+ return ResponseHandler.generateAuthenticationResult(this.cryptoObj, authority, cacheRecord, false, request, idTokenObj, requestStateObj, undefined, serverRequestId);
155
144
  }
156
- });
157
- });
158
- };
145
+ }
146
+ await this.cacheStorage.saveCacheRecord(cacheRecord);
147
+ }
148
+ finally {
149
+ if (this.persistencePlugin &&
150
+ this.serializableCache &&
151
+ cacheContext) {
152
+ this.logger.verbose("Persistence enabled, calling afterCacheAccess");
153
+ await this.persistencePlugin.afterCacheAccess(cacheContext);
154
+ }
155
+ }
156
+ return ResponseHandler.generateAuthenticationResult(this.cryptoObj, authority, cacheRecord, false, request, idTokenObj, requestStateObj, serverTokenResponse, serverRequestId);
157
+ }
159
158
  /**
160
159
  * Generates CacheRecord
161
160
  * @param serverTokenResponse
162
161
  * @param idTokenObj
163
162
  * @param authority
164
163
  */
165
- ResponseHandler.prototype.generateCacheRecord = function (serverTokenResponse, authority, reqTimestamp, request, idTokenObj, userAssertionHash, authCodePayload) {
166
- var env = authority.getPreferredCache();
164
+ generateCacheRecord(serverTokenResponse, authority, reqTimestamp, request, idTokenObj, userAssertionHash, authCodePayload) {
165
+ const env = authority.getPreferredCache();
167
166
  if (StringUtils.isEmpty(env)) {
168
167
  throw ClientAuthError.createInvalidCacheEnvironmentError();
169
168
  }
170
169
  // IdToken: non AAD scenarios can have empty realm
171
- var cachedIdToken;
172
- var cachedAccount;
173
- if (!StringUtils.isEmpty(serverTokenResponse.id_token) && !!idTokenObj) {
170
+ let cachedIdToken;
171
+ let cachedAccount;
172
+ if (!StringUtils.isEmpty(serverTokenResponse.id_token) &&
173
+ !!idTokenObj) {
174
174
  cachedIdToken = IdTokenEntity.createIdTokenEntity(this.homeAccountIdentifier, env, serverTokenResponse.id_token || Constants.EMPTY_STRING, this.clientId, idTokenObj.claims.tid || Constants.EMPTY_STRING);
175
175
  cachedAccount = this.generateAccountEntity(serverTokenResponse, idTokenObj, authority, authCodePayload);
176
176
  }
177
177
  // AccessToken
178
- var cachedAccessToken = null;
178
+ let cachedAccessToken = null;
179
179
  if (!StringUtils.isEmpty(serverTokenResponse.access_token)) {
180
180
  // If scopes not returned in server response, use request scopes
181
- var responseScopes = serverTokenResponse.scope ? ScopeSet.fromString(serverTokenResponse.scope) : new ScopeSet(request.scopes || []);
181
+ const responseScopes = serverTokenResponse.scope
182
+ ? ScopeSet.fromString(serverTokenResponse.scope)
183
+ : new ScopeSet(request.scopes || []);
182
184
  /*
183
185
  * Use timestamp calculated before request
184
186
  * Server may return timestamps as strings, parse to numbers if so.
185
187
  */
186
- var expiresIn = (typeof serverTokenResponse.expires_in === "string" ? parseInt(serverTokenResponse.expires_in, 10) : serverTokenResponse.expires_in) || 0;
187
- var extExpiresIn = (typeof serverTokenResponse.ext_expires_in === "string" ? parseInt(serverTokenResponse.ext_expires_in, 10) : serverTokenResponse.ext_expires_in) || 0;
188
- var refreshIn = (typeof serverTokenResponse.refresh_in === "string" ? parseInt(serverTokenResponse.refresh_in, 10) : serverTokenResponse.refresh_in) || undefined;
189
- var tokenExpirationSeconds = reqTimestamp + expiresIn;
190
- var extendedTokenExpirationSeconds = tokenExpirationSeconds + extExpiresIn;
191
- var refreshOnSeconds = refreshIn && refreshIn > 0 ? reqTimestamp + refreshIn : undefined;
188
+ const expiresIn = (typeof serverTokenResponse.expires_in === "string"
189
+ ? parseInt(serverTokenResponse.expires_in, 10)
190
+ : serverTokenResponse.expires_in) || 0;
191
+ const extExpiresIn = (typeof serverTokenResponse.ext_expires_in === "string"
192
+ ? parseInt(serverTokenResponse.ext_expires_in, 10)
193
+ : serverTokenResponse.ext_expires_in) || 0;
194
+ const refreshIn = (typeof serverTokenResponse.refresh_in === "string"
195
+ ? parseInt(serverTokenResponse.refresh_in, 10)
196
+ : serverTokenResponse.refresh_in) || undefined;
197
+ const tokenExpirationSeconds = reqTimestamp + expiresIn;
198
+ const extendedTokenExpirationSeconds = tokenExpirationSeconds + extExpiresIn;
199
+ const refreshOnSeconds = refreshIn && refreshIn > 0
200
+ ? reqTimestamp + refreshIn
201
+ : undefined;
192
202
  // non AAD scenarios can have empty realm
193
- cachedAccessToken = AccessTokenEntity.createAccessTokenEntity(this.homeAccountIdentifier, env, serverTokenResponse.access_token || Constants.EMPTY_STRING, this.clientId, idTokenObj ? idTokenObj.claims.tid || Constants.EMPTY_STRING : authority.tenant, responseScopes.printScopes(), tokenExpirationSeconds, extendedTokenExpirationSeconds, this.cryptoObj, refreshOnSeconds, serverTokenResponse.token_type, userAssertionHash, serverTokenResponse.key_id, request.claims, request.requestedClaimsHash);
203
+ cachedAccessToken = AccessTokenEntity.createAccessTokenEntity(this.homeAccountIdentifier, env, serverTokenResponse.access_token || Constants.EMPTY_STRING, this.clientId, idTokenObj
204
+ ? idTokenObj.claims.tid || Constants.EMPTY_STRING
205
+ : authority.tenant, responseScopes.printScopes(), tokenExpirationSeconds, extendedTokenExpirationSeconds, this.cryptoObj, refreshOnSeconds, serverTokenResponse.token_type, userAssertionHash, serverTokenResponse.key_id, request.claims, request.requestedClaimsHash);
194
206
  }
195
207
  // refreshToken
196
- var cachedRefreshToken = null;
208
+ let cachedRefreshToken = null;
197
209
  if (!StringUtils.isEmpty(serverTokenResponse.refresh_token)) {
198
210
  cachedRefreshToken = RefreshTokenEntity.createRefreshTokenEntity(this.homeAccountIdentifier, env, serverTokenResponse.refresh_token || Constants.EMPTY_STRING, this.clientId, serverTokenResponse.foci, userAssertionHash);
199
211
  }
200
212
  // appMetadata
201
- var cachedAppMetadata = null;
213
+ let cachedAppMetadata = null;
202
214
  if (!StringUtils.isEmpty(serverTokenResponse.foci)) {
203
215
  cachedAppMetadata = AppMetadataEntity.createAppMetadataEntity(this.clientId, env, serverTokenResponse.foci);
204
216
  }
205
217
  return new CacheRecord(cachedAccount, cachedIdToken, cachedAccessToken, cachedRefreshToken, cachedAppMetadata);
206
- };
218
+ }
207
219
  /**
208
220
  * Generate Account
209
221
  * @param serverTokenResponse
210
222
  * @param idToken
211
223
  * @param authority
212
224
  */
213
- ResponseHandler.prototype.generateAccountEntity = function (serverTokenResponse, idToken, authority, authCodePayload) {
214
- var authorityType = authority.authorityType;
215
- var cloudGraphHostName = authCodePayload ? authCodePayload.cloud_graph_host_name : Constants.EMPTY_STRING;
216
- var msGraphhost = authCodePayload ? authCodePayload.msgraph_host : Constants.EMPTY_STRING;
225
+ generateAccountEntity(serverTokenResponse, idToken, authority, authCodePayload) {
226
+ const authorityType = authority.authorityType;
227
+ const cloudGraphHostName = authCodePayload
228
+ ? authCodePayload.cloud_graph_host_name
229
+ : Constants.EMPTY_STRING;
230
+ const msGraphhost = authCodePayload
231
+ ? authCodePayload.msgraph_host
232
+ : Constants.EMPTY_STRING;
217
233
  // ADFS does not require client_info in the response
218
234
  if (authorityType === AuthorityType.Adfs) {
219
235
  this.logger.verbose("Authority type is ADFS, creating ADFS account");
220
236
  return AccountEntity.createGenericAccount(this.homeAccountIdentifier, idToken, authority, cloudGraphHostName, msGraphhost);
221
237
  }
222
238
  // This fallback applies to B2C as well as they fall under an AAD account type.
223
- if (StringUtils.isEmpty(serverTokenResponse.client_info) && authority.protocolMode === "AAD") {
239
+ if (StringUtils.isEmpty(serverTokenResponse.client_info) &&
240
+ authority.protocolMode === "AAD") {
224
241
  throw ClientAuthError.createClientInfoEmptyError();
225
242
  }
226
- return serverTokenResponse.client_info ?
227
- AccountEntity.createAccount(serverTokenResponse.client_info, this.homeAccountIdentifier, idToken, authority, cloudGraphHostName, msGraphhost) :
228
- AccountEntity.createGenericAccount(this.homeAccountIdentifier, idToken, authority, cloudGraphHostName, msGraphhost);
229
- };
243
+ return serverTokenResponse.client_info
244
+ ? AccountEntity.createAccount(serverTokenResponse.client_info, this.homeAccountIdentifier, idToken, authority, cloudGraphHostName, msGraphhost)
245
+ : AccountEntity.createGenericAccount(this.homeAccountIdentifier, idToken, authority, cloudGraphHostName, msGraphhost);
246
+ }
230
247
  /**
231
248
  * Creates an @AuthenticationResult from @CacheRecord , @IdToken , and a boolean that states whether or not the result is from cache.
232
249
  *
@@ -237,74 +254,72 @@ var ResponseHandler = /** @class */ (function () {
237
254
  * @param fromTokenCache
238
255
  * @param stateString
239
256
  */
240
- ResponseHandler.generateAuthenticationResult = function (cryptoObj, authority, cacheRecord, fromTokenCache, request, idTokenObj, requestState, serverTokenResponse, requestId) {
241
- var _a, _b, _c;
242
- return __awaiter(this, void 0, void 0, function () {
243
- var accessToken, responseScopes, expiresOn, extExpiresOn, familyId, popTokenGenerator, _d, secret, keyId, uid, tid;
244
- return __generator(this, function (_e) {
245
- switch (_e.label) {
246
- case 0:
247
- accessToken = Constants.EMPTY_STRING;
248
- responseScopes = [];
249
- expiresOn = null;
250
- familyId = Constants.EMPTY_STRING;
251
- if (!cacheRecord.accessToken) return [3 /*break*/, 4];
252
- if (!(cacheRecord.accessToken.tokenType === AuthenticationScheme.POP)) return [3 /*break*/, 2];
253
- popTokenGenerator = new PopTokenGenerator(cryptoObj);
254
- _d = cacheRecord.accessToken, secret = _d.secret, keyId = _d.keyId;
255
- if (!keyId) {
256
- throw ClientAuthError.createKeyIdMissingError();
257
- }
258
- return [4 /*yield*/, popTokenGenerator.signPopToken(secret, keyId, request)];
259
- case 1:
260
- accessToken = _e.sent();
261
- return [3 /*break*/, 3];
262
- case 2:
263
- accessToken = cacheRecord.accessToken.secret;
264
- _e.label = 3;
265
- case 3:
266
- responseScopes = ScopeSet.fromString(cacheRecord.accessToken.target).asArray();
267
- expiresOn = new Date(Number(cacheRecord.accessToken.expiresOn) * 1000);
268
- extExpiresOn = new Date(Number(cacheRecord.accessToken.extendedExpiresOn) * 1000);
269
- _e.label = 4;
270
- case 4:
271
- if (cacheRecord.appMetadata) {
272
- familyId = cacheRecord.appMetadata.familyId === THE_FAMILY_ID ? THE_FAMILY_ID : Constants.EMPTY_STRING;
273
- }
274
- uid = (idTokenObj === null || idTokenObj === void 0 ? void 0 : idTokenObj.claims.oid) || (idTokenObj === null || idTokenObj === void 0 ? void 0 : idTokenObj.claims.sub) || Constants.EMPTY_STRING;
275
- tid = (idTokenObj === null || idTokenObj === void 0 ? void 0 : idTokenObj.claims.tid) || Constants.EMPTY_STRING;
276
- // for hybrid + native bridge enablement, send back the native account Id
277
- if ((serverTokenResponse === null || serverTokenResponse === void 0 ? void 0 : serverTokenResponse.spa_accountid) && !!cacheRecord.account) {
278
- cacheRecord.account.nativeAccountId = serverTokenResponse === null || serverTokenResponse === void 0 ? void 0 : serverTokenResponse.spa_accountid;
279
- }
280
- return [2 /*return*/, {
281
- authority: authority.canonicalAuthority,
282
- uniqueId: uid,
283
- tenantId: tid,
284
- scopes: responseScopes,
285
- account: cacheRecord.account ? cacheRecord.account.getAccountInfo() : null,
286
- idToken: idTokenObj ? idTokenObj.rawToken : Constants.EMPTY_STRING,
287
- idTokenClaims: idTokenObj ? idTokenObj.claims : {},
288
- accessToken: accessToken,
289
- fromCache: fromTokenCache,
290
- expiresOn: expiresOn,
291
- correlationId: request.correlationId,
292
- requestId: requestId || Constants.EMPTY_STRING,
293
- extExpiresOn: extExpiresOn,
294
- familyId: familyId,
295
- tokenType: ((_a = cacheRecord.accessToken) === null || _a === void 0 ? void 0 : _a.tokenType) || Constants.EMPTY_STRING,
296
- state: requestState ? requestState.userRequestState : Constants.EMPTY_STRING,
297
- cloudGraphHostName: ((_b = cacheRecord.account) === null || _b === void 0 ? void 0 : _b.cloudGraphHostName) || Constants.EMPTY_STRING,
298
- msGraphHost: ((_c = cacheRecord.account) === null || _c === void 0 ? void 0 : _c.msGraphHost) || Constants.EMPTY_STRING,
299
- code: serverTokenResponse === null || serverTokenResponse === void 0 ? void 0 : serverTokenResponse.spa_code,
300
- fromNativeBroker: false,
301
- }];
257
+ static async generateAuthenticationResult(cryptoObj, authority, cacheRecord, fromTokenCache, request, idTokenObj, requestState, serverTokenResponse, requestId) {
258
+ let accessToken = Constants.EMPTY_STRING;
259
+ let responseScopes = [];
260
+ let expiresOn = null;
261
+ let extExpiresOn;
262
+ let familyId = Constants.EMPTY_STRING;
263
+ if (cacheRecord.accessToken) {
264
+ if (cacheRecord.accessToken.tokenType === AuthenticationScheme.POP) {
265
+ const popTokenGenerator = new PopTokenGenerator(cryptoObj);
266
+ const { secret, keyId } = cacheRecord.accessToken;
267
+ if (!keyId) {
268
+ throw ClientAuthError.createKeyIdMissingError();
302
269
  }
303
- });
304
- });
305
- };
306
- return ResponseHandler;
307
- }());
270
+ accessToken = await popTokenGenerator.signPopToken(secret, keyId, request);
271
+ }
272
+ else {
273
+ accessToken = cacheRecord.accessToken.secret;
274
+ }
275
+ responseScopes = ScopeSet.fromString(cacheRecord.accessToken.target).asArray();
276
+ expiresOn = new Date(Number(cacheRecord.accessToken.expiresOn) * 1000);
277
+ extExpiresOn = new Date(Number(cacheRecord.accessToken.extendedExpiresOn) * 1000);
278
+ }
279
+ if (cacheRecord.appMetadata) {
280
+ familyId =
281
+ cacheRecord.appMetadata.familyId === THE_FAMILY_ID
282
+ ? THE_FAMILY_ID
283
+ : Constants.EMPTY_STRING;
284
+ }
285
+ const uid = idTokenObj?.claims.oid ||
286
+ idTokenObj?.claims.sub ||
287
+ Constants.EMPTY_STRING;
288
+ const tid = idTokenObj?.claims.tid || Constants.EMPTY_STRING;
289
+ // for hybrid + native bridge enablement, send back the native account Id
290
+ if (serverTokenResponse?.spa_accountid && !!cacheRecord.account) {
291
+ cacheRecord.account.nativeAccountId =
292
+ serverTokenResponse?.spa_accountid;
293
+ }
294
+ return {
295
+ authority: authority.canonicalAuthority,
296
+ uniqueId: uid,
297
+ tenantId: tid,
298
+ scopes: responseScopes,
299
+ account: cacheRecord.account
300
+ ? cacheRecord.account.getAccountInfo()
301
+ : null,
302
+ idToken: idTokenObj ? idTokenObj.rawToken : Constants.EMPTY_STRING,
303
+ idTokenClaims: idTokenObj ? idTokenObj.claims : {},
304
+ accessToken: accessToken,
305
+ fromCache: fromTokenCache,
306
+ expiresOn: expiresOn,
307
+ correlationId: request.correlationId,
308
+ requestId: requestId || Constants.EMPTY_STRING,
309
+ extExpiresOn: extExpiresOn,
310
+ familyId: familyId,
311
+ tokenType: cacheRecord.accessToken?.tokenType || Constants.EMPTY_STRING,
312
+ state: requestState
313
+ ? requestState.userRequestState
314
+ : Constants.EMPTY_STRING,
315
+ cloudGraphHostName: cacheRecord.account?.cloudGraphHostName ||
316
+ Constants.EMPTY_STRING,
317
+ msGraphHost: cacheRecord.account?.msGraphHost || Constants.EMPTY_STRING,
318
+ code: serverTokenResponse?.spa_code,
319
+ fromNativeBroker: false,
320
+ };
321
+ }
322
+ }
308
323
 
309
324
  export { ResponseHandler };
310
325
  //# sourceMappingURL=ResponseHandler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ResponseHandler.js","sources":["../../src/response/ResponseHandler.ts"],"sourcesContent":["/*\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { ServerAuthorizationTokenResponse } from \"./ServerAuthorizationTokenResponse\";\nimport { buildClientInfo} from \"../account/ClientInfo\";\nimport { ICrypto } from \"../crypto/ICrypto\";\nimport { ClientAuthError } from \"../error/ClientAuthError\";\nimport { StringUtils } from \"../utils/StringUtils\";\nimport { ServerAuthorizationCodeResponse } from \"./ServerAuthorizationCodeResponse\";\nimport { Logger } from \"../logger/Logger\";\nimport { ServerError } from \"../error/ServerError\";\nimport { AuthToken } from \"../account/AuthToken\";\nimport { ScopeSet } from \"../request/ScopeSet\";\nimport { AuthenticationResult } from \"./AuthenticationResult\";\nimport { AccountEntity } from \"../cache/entities/AccountEntity\";\nimport { Authority } from \"../authority/Authority\";\nimport { AuthorityType } from \"../authority/AuthorityType\";\nimport { IdTokenEntity } from \"../cache/entities/IdTokenEntity\";\nimport { AccessTokenEntity } from \"../cache/entities/AccessTokenEntity\";\nimport { RefreshTokenEntity } from \"../cache/entities/RefreshTokenEntity\";\nimport { InteractionRequiredAuthError } from \"../error/InteractionRequiredAuthError\";\nimport { CacheRecord } from \"../cache/entities/CacheRecord\";\nimport { CacheManager } from \"../cache/CacheManager\";\nimport { ProtocolUtils, RequestStateObject } from \"../utils/ProtocolUtils\";\nimport { AuthenticationScheme, Constants, THE_FAMILY_ID } from \"../utils/Constants\";\nimport { PopTokenGenerator } from \"../crypto/PopTokenGenerator\";\nimport { AppMetadataEntity } from \"../cache/entities/AppMetadataEntity\";\nimport { ICachePlugin } from \"../cache/interface/ICachePlugin\";\nimport { TokenCacheContext } from \"../cache/persistence/TokenCacheContext\";\nimport { ISerializableTokenCache } from \"../cache/interface/ISerializableTokenCache\";\nimport { AuthorizationCodePayload } from \"./AuthorizationCodePayload\";\nimport { BaseAuthRequest } from \"../request/BaseAuthRequest\";\nimport { IPerformanceClient } from \"../telemetry/performance/IPerformanceClient\";\nimport { PerformanceEvents } from \"../telemetry/performance/PerformanceEvent\";\n\n/**\n * Class that handles response parsing.\n */\nexport class ResponseHandler {\n private clientId: string;\n private cacheStorage: CacheManager;\n private cryptoObj: ICrypto;\n private logger: Logger;\n private homeAccountIdentifier: string;\n private serializableCache: ISerializableTokenCache | null;\n private persistencePlugin: ICachePlugin | null;\n private performanceClient?: IPerformanceClient;\n\n constructor(clientId: string, cacheStorage: CacheManager, cryptoObj: ICrypto, logger: Logger, serializableCache: ISerializableTokenCache | null, persistencePlugin: ICachePlugin | null, performanceClient?: IPerformanceClient) {\n this.clientId = clientId;\n this.cacheStorage = cacheStorage;\n this.cryptoObj = cryptoObj;\n this.logger = logger;\n this.serializableCache = serializableCache;\n this.persistencePlugin = persistencePlugin;\n this.performanceClient = performanceClient;\n }\n\n /**\n * Function which validates server authorization code response.\n * @param serverResponseHash\n * @param cachedState\n * @param cryptoObj\n */\n validateServerAuthorizationCodeResponse(serverResponseHash: ServerAuthorizationCodeResponse, cachedState: string, cryptoObj: ICrypto): void {\n\n if (!serverResponseHash.state || !cachedState) {\n throw !serverResponseHash.state ? ClientAuthError.createStateNotFoundError(\"Server State\") : ClientAuthError.createStateNotFoundError(\"Cached State\");\n }\n\n if (decodeURIComponent(serverResponseHash.state) !== decodeURIComponent(cachedState)) {\n throw ClientAuthError.createStateMismatchError();\n }\n\n // Check for error\n if (serverResponseHash.error || serverResponseHash.error_description || serverResponseHash.suberror) {\n if (InteractionRequiredAuthError.isInteractionRequiredError(serverResponseHash.error, serverResponseHash.error_description, serverResponseHash.suberror)) {\n throw new InteractionRequiredAuthError(\n serverResponseHash.error || Constants.EMPTY_STRING,\n serverResponseHash.error_description,\n serverResponseHash.suberror,\n serverResponseHash.timestamp || Constants.EMPTY_STRING,\n serverResponseHash.trace_id || Constants.EMPTY_STRING,\n serverResponseHash.correlation_id || Constants.EMPTY_STRING,\n serverResponseHash.claims || Constants.EMPTY_STRING,\n );\n }\n\n throw new ServerError(serverResponseHash.error || Constants.EMPTY_STRING, serverResponseHash.error_description, serverResponseHash.suberror);\n }\n\n if (serverResponseHash.client_info) {\n buildClientInfo(serverResponseHash.client_info, cryptoObj);\n }\n }\n\n /**\n * Function which validates server authorization token response.\n * @param serverResponse\n */\n validateTokenResponse(serverResponse: ServerAuthorizationTokenResponse): void {\n // Check for error\n if (serverResponse.error || serverResponse.error_description || serverResponse.suberror) {\n if (InteractionRequiredAuthError.isInteractionRequiredError(serverResponse.error, serverResponse.error_description, serverResponse.suberror)) {\n throw new InteractionRequiredAuthError(\n serverResponse.error,\n serverResponse.error_description,\n serverResponse.suberror,\n serverResponse.timestamp || Constants.EMPTY_STRING,\n serverResponse.trace_id || Constants.EMPTY_STRING,\n serverResponse.correlation_id || Constants.EMPTY_STRING,\n serverResponse.claims || Constants.EMPTY_STRING,\n );\n }\n\n const errString = `${serverResponse.error_codes} - [${serverResponse.timestamp}]: ${serverResponse.error_description} - Correlation ID: ${serverResponse.correlation_id} - Trace ID: ${serverResponse.trace_id}`;\n throw new ServerError(serverResponse.error, errString, serverResponse.suberror);\n }\n }\n\n /**\n * Returns a constructed token response based on given string. Also manages the cache updates and cleanups.\n * @param serverTokenResponse\n * @param authority\n */\n async handleServerTokenResponse(\n serverTokenResponse: ServerAuthorizationTokenResponse,\n authority: Authority,\n reqTimestamp: number,\n request: BaseAuthRequest,\n authCodePayload?: AuthorizationCodePayload,\n userAssertionHash?: string,\n handlingRefreshTokenResponse?: boolean,\n forceCacheRefreshTokenResponse?: boolean,\n serverRequestId?: string): Promise<AuthenticationResult> {\n this.performanceClient?.addQueueMeasurement(PerformanceEvents.HandleServerTokenResponse, serverTokenResponse.correlation_id);\n\n // create an idToken object (not entity)\n let idTokenObj: AuthToken | undefined;\n if (serverTokenResponse.id_token) {\n idTokenObj = new AuthToken(serverTokenResponse.id_token || Constants.EMPTY_STRING, this.cryptoObj);\n\n // token nonce check (TODO: Add a warning if no nonce is given?)\n if (authCodePayload && !StringUtils.isEmpty(authCodePayload.nonce)) {\n if (idTokenObj.claims.nonce !== authCodePayload.nonce) {\n throw ClientAuthError.createNonceMismatchError();\n }\n }\n\n // token max_age check\n if (request.maxAge || (request.maxAge === 0)) {\n const authTime = idTokenObj.claims.auth_time;\n if (!authTime) {\n throw ClientAuthError.createAuthTimeNotFoundError();\n }\n\n AuthToken.checkMaxAge(authTime, request.maxAge);\n }\n }\n\n // generate homeAccountId\n this.homeAccountIdentifier = AccountEntity.generateHomeAccountId(serverTokenResponse.client_info || Constants.EMPTY_STRING, authority.authorityType, this.logger, this.cryptoObj, idTokenObj);\n\n // save the response tokens\n let requestStateObj: RequestStateObject | undefined;\n if (!!authCodePayload && !!authCodePayload.state) {\n requestStateObj = ProtocolUtils.parseRequestState(this.cryptoObj, authCodePayload.state);\n }\n\n // Add keyId from request to serverTokenResponse if defined\n serverTokenResponse.key_id = serverTokenResponse.key_id || request.sshKid || undefined;\n\n const cacheRecord = this.generateCacheRecord(serverTokenResponse, authority, reqTimestamp, request, idTokenObj, userAssertionHash, authCodePayload);\n let cacheContext;\n try {\n if (this.persistencePlugin && this.serializableCache) {\n this.logger.verbose(\"Persistence enabled, calling beforeCacheAccess\");\n cacheContext = new TokenCacheContext(this.serializableCache, true);\n await this.persistencePlugin.beforeCacheAccess(cacheContext);\n }\n /*\n * When saving a refreshed tokens to the cache, it is expected that the account that was used is present in the cache.\n * If not present, we should return null, as it's the case that another application called removeAccount in between\n * the calls to getAllAccounts and acquireTokenSilent. We should not overwrite that removal, unless explicitly flagged by\n * the developer, as in the case of refresh token flow used in ADAL Node to MSAL Node migration.\n */\n if (handlingRefreshTokenResponse && !forceCacheRefreshTokenResponse && cacheRecord.account) {\n const key = cacheRecord.account.generateAccountKey();\n const account = this.cacheStorage.getAccount(key);\n if (!account) {\n this.logger.warning(\"Account used to refresh tokens not in persistence, refreshed tokens will not be stored in the cache\");\n return ResponseHandler.generateAuthenticationResult(this.cryptoObj, authority, cacheRecord, false, request, idTokenObj, requestStateObj, undefined, serverRequestId);\n }\n }\n await this.cacheStorage.saveCacheRecord(cacheRecord);\n } finally {\n if (this.persistencePlugin && this.serializableCache && cacheContext) {\n this.logger.verbose(\"Persistence enabled, calling afterCacheAccess\");\n await this.persistencePlugin.afterCacheAccess(cacheContext);\n }\n }\n return ResponseHandler.generateAuthenticationResult(this.cryptoObj, authority, cacheRecord, false, request, idTokenObj, requestStateObj, serverTokenResponse, serverRequestId);\n }\n\n /**\n * Generates CacheRecord\n * @param serverTokenResponse\n * @param idTokenObj\n * @param authority\n */\n private generateCacheRecord(serverTokenResponse: ServerAuthorizationTokenResponse, authority: Authority, reqTimestamp: number, request: BaseAuthRequest, idTokenObj?: AuthToken, userAssertionHash?: string, authCodePayload?: AuthorizationCodePayload): CacheRecord {\n const env = authority.getPreferredCache();\n if (StringUtils.isEmpty(env)) {\n throw ClientAuthError.createInvalidCacheEnvironmentError();\n }\n\n // IdToken: non AAD scenarios can have empty realm\n let cachedIdToken: IdTokenEntity | undefined;\n let cachedAccount: AccountEntity | undefined;\n if (!StringUtils.isEmpty(serverTokenResponse.id_token) && !!idTokenObj) {\n cachedIdToken = IdTokenEntity.createIdTokenEntity(\n this.homeAccountIdentifier,\n env,\n serverTokenResponse.id_token || Constants.EMPTY_STRING,\n this.clientId,\n idTokenObj.claims.tid || Constants.EMPTY_STRING,\n );\n\n cachedAccount = this.generateAccountEntity(\n serverTokenResponse,\n idTokenObj,\n authority,\n authCodePayload\n );\n }\n\n // AccessToken\n let cachedAccessToken: AccessTokenEntity | null = null;\n if (!StringUtils.isEmpty(serverTokenResponse.access_token)) {\n\n // If scopes not returned in server response, use request scopes\n const responseScopes = serverTokenResponse.scope ? ScopeSet.fromString(serverTokenResponse.scope) : new ScopeSet(request.scopes || []);\n\n /*\n * Use timestamp calculated before request\n * Server may return timestamps as strings, parse to numbers if so.\n */\n const expiresIn: number = (typeof serverTokenResponse.expires_in === \"string\" ? parseInt(serverTokenResponse.expires_in, 10) : serverTokenResponse.expires_in) || 0;\n const extExpiresIn: number = (typeof serverTokenResponse.ext_expires_in === \"string\" ? parseInt(serverTokenResponse.ext_expires_in, 10) : serverTokenResponse.ext_expires_in) || 0;\n const refreshIn: number | undefined = (typeof serverTokenResponse.refresh_in === \"string\" ? parseInt(serverTokenResponse.refresh_in, 10) : serverTokenResponse.refresh_in) || undefined;\n const tokenExpirationSeconds = reqTimestamp + expiresIn;\n const extendedTokenExpirationSeconds = tokenExpirationSeconds + extExpiresIn;\n const refreshOnSeconds = refreshIn && refreshIn > 0 ? reqTimestamp + refreshIn : undefined;\n\n // non AAD scenarios can have empty realm\n cachedAccessToken = AccessTokenEntity.createAccessTokenEntity(\n this.homeAccountIdentifier,\n env,\n serverTokenResponse.access_token || Constants.EMPTY_STRING,\n this.clientId,\n idTokenObj ? idTokenObj.claims.tid || Constants.EMPTY_STRING : authority.tenant,\n responseScopes.printScopes(),\n tokenExpirationSeconds,\n extendedTokenExpirationSeconds,\n this.cryptoObj,\n refreshOnSeconds,\n serverTokenResponse.token_type,\n userAssertionHash,\n serverTokenResponse.key_id,\n request.claims,\n request.requestedClaimsHash\n );\n }\n\n // refreshToken\n let cachedRefreshToken: RefreshTokenEntity | null = null;\n if (!StringUtils.isEmpty(serverTokenResponse.refresh_token)) {\n cachedRefreshToken = RefreshTokenEntity.createRefreshTokenEntity(\n this.homeAccountIdentifier,\n env,\n serverTokenResponse.refresh_token || Constants.EMPTY_STRING,\n this.clientId,\n serverTokenResponse.foci,\n userAssertionHash\n );\n }\n\n // appMetadata\n let cachedAppMetadata: AppMetadataEntity | null = null;\n if (!StringUtils.isEmpty(serverTokenResponse.foci)) {\n cachedAppMetadata = AppMetadataEntity.createAppMetadataEntity(this.clientId, env, serverTokenResponse.foci);\n }\n\n return new CacheRecord(cachedAccount, cachedIdToken, cachedAccessToken, cachedRefreshToken, cachedAppMetadata);\n }\n\n /**\n * Generate Account\n * @param serverTokenResponse\n * @param idToken\n * @param authority\n */\n private generateAccountEntity(serverTokenResponse: ServerAuthorizationTokenResponse, idToken: AuthToken, authority: Authority, authCodePayload?: AuthorizationCodePayload): AccountEntity {\n const authorityType = authority.authorityType;\n const cloudGraphHostName = authCodePayload ? authCodePayload.cloud_graph_host_name : Constants.EMPTY_STRING;\n const msGraphhost = authCodePayload ? authCodePayload.msgraph_host : Constants.EMPTY_STRING;\n\n // ADFS does not require client_info in the response\n if (authorityType === AuthorityType.Adfs) {\n this.logger.verbose(\"Authority type is ADFS, creating ADFS account\");\n return AccountEntity.createGenericAccount(this.homeAccountIdentifier, idToken, authority, cloudGraphHostName, msGraphhost);\n }\n\n // This fallback applies to B2C as well as they fall under an AAD account type.\n if (StringUtils.isEmpty(serverTokenResponse.client_info) && authority.protocolMode === \"AAD\") {\n throw ClientAuthError.createClientInfoEmptyError();\n }\n\n return serverTokenResponse.client_info ?\n AccountEntity.createAccount(serverTokenResponse.client_info, this.homeAccountIdentifier, idToken, authority, cloudGraphHostName, msGraphhost) :\n AccountEntity.createGenericAccount(this.homeAccountIdentifier, idToken, authority, cloudGraphHostName, msGraphhost);\n }\n\n /**\n * Creates an @AuthenticationResult from @CacheRecord , @IdToken , and a boolean that states whether or not the result is from cache.\n *\n * Optionally takes a state string that is set as-is in the response.\n *\n * @param cacheRecord\n * @param idTokenObj\n * @param fromTokenCache\n * @param stateString\n */\n static async generateAuthenticationResult(\n cryptoObj: ICrypto,\n authority: Authority,\n cacheRecord: CacheRecord,\n fromTokenCache: boolean,\n request: BaseAuthRequest,\n idTokenObj?: AuthToken,\n requestState?: RequestStateObject,\n serverTokenResponse?: ServerAuthorizationTokenResponse,\n requestId?: string,\n ): Promise<AuthenticationResult> {\n let accessToken: string = Constants.EMPTY_STRING;\n let responseScopes: Array<string> = [];\n let expiresOn: Date | null = null;\n let extExpiresOn: Date | undefined;\n let familyId: string = Constants.EMPTY_STRING;\n\n if (cacheRecord.accessToken) {\n if (cacheRecord.accessToken.tokenType === AuthenticationScheme.POP) {\n const popTokenGenerator: PopTokenGenerator = new PopTokenGenerator(cryptoObj);\n const { secret, keyId } = cacheRecord.accessToken;\n\n if (!keyId) {\n throw ClientAuthError.createKeyIdMissingError();\n }\n\n accessToken = await popTokenGenerator.signPopToken(secret, keyId, request);\n } else {\n accessToken = cacheRecord.accessToken.secret;\n }\n responseScopes = ScopeSet.fromString(cacheRecord.accessToken.target).asArray();\n expiresOn = new Date(Number(cacheRecord.accessToken.expiresOn) * 1000);\n extExpiresOn = new Date(Number(cacheRecord.accessToken.extendedExpiresOn) * 1000);\n }\n\n if (cacheRecord.appMetadata) {\n familyId = cacheRecord.appMetadata.familyId === THE_FAMILY_ID ? THE_FAMILY_ID : Constants.EMPTY_STRING;\n }\n const uid = idTokenObj?.claims.oid || idTokenObj?.claims.sub || Constants.EMPTY_STRING;\n const tid = idTokenObj?.claims.tid || Constants.EMPTY_STRING;\n\n // for hybrid + native bridge enablement, send back the native account Id\n if(serverTokenResponse?.spa_accountid && !!cacheRecord.account){\n cacheRecord.account.nativeAccountId = serverTokenResponse?.spa_accountid;\n }\n\n return {\n authority: authority.canonicalAuthority,\n uniqueId: uid,\n tenantId: tid,\n scopes: responseScopes,\n account: cacheRecord.account ? cacheRecord.account.getAccountInfo() : null,\n idToken: idTokenObj ? idTokenObj.rawToken : Constants.EMPTY_STRING,\n idTokenClaims: idTokenObj ? idTokenObj.claims : {},\n accessToken: accessToken,\n fromCache: fromTokenCache,\n expiresOn: expiresOn,\n correlationId: request.correlationId,\n requestId: requestId || Constants.EMPTY_STRING,\n extExpiresOn: extExpiresOn,\n familyId: familyId,\n tokenType: cacheRecord.accessToken?.tokenType || Constants.EMPTY_STRING,\n state: requestState ? requestState.userRequestState : Constants.EMPTY_STRING,\n cloudGraphHostName: cacheRecord.account?.cloudGraphHostName || Constants.EMPTY_STRING,\n msGraphHost: cacheRecord.account?.msGraphHost || Constants.EMPTY_STRING,\n code: serverTokenResponse?.spa_code,\n fromNativeBroker: false,\n };\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ResponseHandler.js","sources":["../../src/response/ResponseHandler.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@
6
6
  * - error: error sent back in hash
7
7
  * - error: description
8
8
  */
9
- export declare type ServerAuthorizationCodeResponse = {
9
+ export type ServerAuthorizationCodeResponse = {
10
10
  code?: string;
11
11
  client_info?: string;
12
12
  state?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ServerAuthorizationCodeResponse.d.ts","sourceRoot":"","sources":["../../src/response/ServerAuthorizationCodeResponse.ts"],"names":[],"mappings":"AAKA;;;;;;;GAOG;AACH,oBAAY,+BAA+B,GAAG;IAE1C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC"}
1
+ {"version":3,"file":"ServerAuthorizationCodeResponse.d.ts","sourceRoot":"","sources":["../../src/response/ServerAuthorizationCodeResponse.ts"],"names":[],"mappings":"AAKA;;;;;;;GAOG;AACH,MAAM,MAAM,+BAA+B,GAAG;IAE1C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC"}
@@ -19,7 +19,7 @@ import { AuthenticationScheme } from "../utils/Constants";
19
19
  * - trace_id: A unique identifier for the request that can help in diagnostics.
20
20
  * - correlation_id: A unique identifier for the request that can help in diagnostics across components.
21
21
  */
22
- export declare type ServerAuthorizationTokenResponse = {
22
+ export type ServerAuthorizationTokenResponse = {
23
23
  token_type?: AuthenticationScheme;
24
24
  scope?: string;
25
25
  expires_in?: number;