@aws-amplify/auth 6.13.4-unstable.e5a8569.0 → 6.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (188) hide show
  1. package/dist/cjs/Errors.js.map +1 -1
  2. package/dist/cjs/client/apis/index.js.map +1 -1
  3. package/dist/cjs/client/flows/shared/handlePasswordSRP.js.map +1 -1
  4. package/dist/cjs/client/flows/userAuth/handleSelectChallengeWithPasswordSRP.js.map +1 -1
  5. package/dist/cjs/client/flows/userAuth/handleUserAuthFlow.js.map +1 -1
  6. package/dist/cjs/client/flows/userAuth/handleWebAuthnSignInResult.js.map +1 -1
  7. package/dist/cjs/client/utils/index.js.map +1 -1
  8. package/dist/cjs/client/utils/passkey/errors.js.map +1 -1
  9. package/dist/cjs/client/utils/passkey/getPasskey.js.map +1 -1
  10. package/dist/cjs/client/utils/passkey/index.js.map +1 -1
  11. package/dist/cjs/client/utils/passkey/registerPasskey.js.map +1 -1
  12. package/dist/cjs/client/utils/passkey/serde.js.map +1 -1
  13. package/dist/cjs/client/utils/passkey/types/index.js.map +1 -1
  14. package/dist/cjs/client/utils/store/autoSignInStore.js.map +1 -1
  15. package/dist/cjs/client/utils/store/signInStore.js.map +1 -1
  16. package/dist/cjs/errors/AuthError.js.map +1 -1
  17. package/dist/cjs/errors/utils/assertServiceError.js.map +1 -1
  18. package/dist/cjs/errors/utils/assertValidationError.js.map +1 -1
  19. package/dist/cjs/foundation/apis/index.js.map +1 -1
  20. package/dist/cjs/foundation/convert/base64url/index.js.map +1 -1
  21. package/dist/cjs/foundation/convert/index.js.map +1 -1
  22. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/constants.js.map +1 -1
  23. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/createSignUpClient.js.map +1 -1
  24. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/index.js.map +1 -1
  25. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/shared/handler/index.js.map +1 -1
  26. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/shared/serde/createEmptyResponseDeserializer.js.map +1 -1
  27. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/shared/serde/createUserPoolDeserializer.js.map +1 -1
  28. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/shared/serde/index.js.map +1 -1
  29. package/dist/cjs/foundation/parsers/index.js.map +1 -1
  30. package/dist/cjs/foundation/parsers/regionParsers.js.map +1 -1
  31. package/dist/cjs/index.js.map +1 -1
  32. package/dist/cjs/providers/cognito/apis/autoSignIn.js.map +1 -1
  33. package/dist/cjs/providers/cognito/apis/confirmSignIn.js.map +1 -1
  34. package/dist/cjs/providers/cognito/apis/confirmSignUp.js.map +1 -1
  35. package/dist/cjs/providers/cognito/apis/fetchDevices.js.map +1 -1
  36. package/dist/cjs/providers/cognito/apis/internal/getCurrentUser.js.map +1 -1
  37. package/dist/cjs/providers/cognito/apis/server/index.js.map +1 -1
  38. package/dist/cjs/providers/cognito/apis/setUpTOTP.js.map +1 -1
  39. package/dist/cjs/providers/cognito/apis/signInWithCustomAuth.js.map +1 -1
  40. package/dist/cjs/providers/cognito/apis/signInWithCustomSRPAuth.js.map +1 -1
  41. package/dist/cjs/providers/cognito/apis/signInWithRedirect.js.map +1 -1
  42. package/dist/cjs/providers/cognito/apis/signInWithSRP.js.map +1 -1
  43. package/dist/cjs/providers/cognito/apis/signInWithUserAuth.js.map +1 -1
  44. package/dist/cjs/providers/cognito/apis/signInWithUserPassword.js.map +1 -1
  45. package/dist/cjs/providers/cognito/apis/signOut.js.map +1 -1
  46. package/dist/cjs/providers/cognito/apis/signUp.js.map +1 -1
  47. package/dist/cjs/providers/cognito/apis/updateMFAPreference.js.map +1 -1
  48. package/dist/cjs/providers/cognito/apis/updateUserAttributes.js.map +1 -1
  49. package/dist/cjs/providers/cognito/credentialsProvider/IdentityIdProvider.js.map +1 -1
  50. package/dist/cjs/providers/cognito/credentialsProvider/IdentityIdStore.js.map +1 -1
  51. package/dist/cjs/providers/cognito/credentialsProvider/credentialsProvider.js.map +1 -1
  52. package/dist/cjs/providers/cognito/credentialsProvider/index.js.map +1 -1
  53. package/dist/cjs/providers/cognito/credentialsProvider/utils.js.map +1 -1
  54. package/dist/cjs/providers/cognito/factories/createCognitoIdentityPoolEndpointResolver.js.map +1 -1
  55. package/dist/cjs/providers/cognito/factories/createCognitoUserPoolEndpointResolver.js.map +1 -1
  56. package/dist/cjs/providers/cognito/factories/index.js.map +1 -1
  57. package/dist/cjs/providers/cognito/index.js.map +1 -1
  58. package/dist/cjs/providers/cognito/tokenProvider/CognitoUserPoolsTokenProvider.js.map +1 -1
  59. package/dist/cjs/providers/cognito/tokenProvider/TokenOrchestrator.js.map +1 -1
  60. package/dist/cjs/providers/cognito/tokenProvider/TokenStore.js.map +1 -1
  61. package/dist/cjs/providers/cognito/tokenProvider/cacheTokens.js.map +1 -1
  62. package/dist/cjs/providers/cognito/tokenProvider/index.js.map +1 -1
  63. package/dist/cjs/providers/cognito/utils/apiHelpers.js.map +1 -1
  64. package/dist/cjs/providers/cognito/utils/dispatchSignedInHubEvent.js.map +1 -1
  65. package/dist/cjs/providers/cognito/utils/getNewDeviceMetadata.js.map +1 -1
  66. package/dist/cjs/providers/cognito/utils/handlePasswordVerifierChallenge.js.map +1 -1
  67. package/dist/cjs/providers/cognito/utils/oauth/attemptCompleteOAuthFlow.js.map +1 -1
  68. package/dist/cjs/providers/cognito/utils/oauth/cancelOAuthFlow.js.map +1 -1
  69. package/dist/cjs/providers/cognito/utils/oauth/completeOAuthFlow.js.map +1 -1
  70. package/dist/cjs/providers/cognito/utils/oauth/enableOAuthListener.js.map +1 -1
  71. package/dist/cjs/providers/cognito/utils/oauth/generateCodeVerifier.js.map +1 -1
  72. package/dist/cjs/providers/cognito/utils/oauth/getRedirectUrl.js.map +1 -1
  73. package/dist/cjs/providers/cognito/utils/oauth/getRedirectUrl.native.js.map +1 -1
  74. package/dist/cjs/providers/cognito/utils/oauth/handleOAuthSignOut.js.map +1 -1
  75. package/dist/cjs/providers/cognito/utils/oauth/handleOAuthSignOut.native.js.map +1 -1
  76. package/dist/cjs/providers/cognito/utils/oauth/index.js.map +1 -1
  77. package/dist/cjs/providers/cognito/utils/oauth/inflightPromise.js.map +1 -1
  78. package/dist/cjs/providers/cognito/utils/oauth/validateState.js.map +1 -1
  79. package/dist/cjs/providers/cognito/utils/refreshAuthTokens.js.map +1 -1
  80. package/dist/cjs/providers/cognito/utils/retryOnResourceNotFoundException.js.map +1 -1
  81. package/dist/cjs/providers/cognito/utils/signInHelpers.js.map +1 -1
  82. package/dist/cjs/providers/cognito/utils/signInWithRedirectStore.js.map +1 -1
  83. package/dist/cjs/providers/cognito/utils/signUpHelpers.js.map +1 -1
  84. package/dist/cjs/providers/cognito/utils/srp/AuthenticationHelper/AuthenticationHelper.js.map +1 -1
  85. package/dist/cjs/providers/cognito/utils/srp/BigInteger/BigInteger.js.map +1 -1
  86. package/dist/cjs/providers/cognito/utils/srp/BigInteger/index.native.js.map +1 -1
  87. package/dist/cjs/providers/cognito/utils/srp/calculate/calculateA.js.map +1 -1
  88. package/dist/cjs/providers/cognito/utils/srp/calculate/calculateS.js.map +1 -1
  89. package/dist/cjs/providers/cognito/utils/srp/calculate/calculateU.js.map +1 -1
  90. package/dist/cjs/providers/cognito/utils/srp/calculate/index.js.map +1 -1
  91. package/dist/cjs/providers/cognito/utils/srp/constants.js.map +1 -1
  92. package/dist/cjs/providers/cognito/utils/srp/getBytesFromHex.js.map +1 -1
  93. package/dist/cjs/providers/cognito/utils/srp/getHexFromBytes.js.map +1 -1
  94. package/dist/cjs/providers/cognito/utils/srp/getNowString.js.map +1 -1
  95. package/dist/cjs/providers/cognito/utils/srp/getPaddedHex.js.map +1 -1
  96. package/dist/cjs/providers/cognito/utils/srp/getSignatureString.js.map +1 -1
  97. package/dist/cjs/providers/cognito/utils/srp/index.js.map +1 -1
  98. package/dist/cjs/providers/cognito/utils/textEncoder/index.js.map +1 -1
  99. package/dist/cjs/providers/cognito/utils/textEncoder/index.native.js.map +1 -1
  100. package/dist/cjs/providers/cognito/utils/types.js.map +1 -1
  101. package/dist/cjs/providers/cognito/utils/userContextData.js.map +1 -1
  102. package/dist/cjs/utils/index.js.map +1 -1
  103. package/dist/cjs/utils/openAuthSession.js.map +1 -1
  104. package/dist/cjs/utils/openAuthSession.native.js.map +1 -1
  105. package/dist/esm/Errors.mjs.map +1 -1
  106. package/dist/esm/client/flows/shared/handlePasswordSRP.mjs.map +1 -1
  107. package/dist/esm/client/flows/userAuth/handleSelectChallengeWithPasswordSRP.mjs.map +1 -1
  108. package/dist/esm/client/flows/userAuth/handleUserAuthFlow.mjs.map +1 -1
  109. package/dist/esm/client/flows/userAuth/handleWebAuthnSignInResult.mjs.map +1 -1
  110. package/dist/esm/client/utils/passkey/errors.mjs.map +1 -1
  111. package/dist/esm/client/utils/passkey/getPasskey.mjs.map +1 -1
  112. package/dist/esm/client/utils/passkey/registerPasskey.mjs.map +1 -1
  113. package/dist/esm/client/utils/passkey/serde.mjs.map +1 -1
  114. package/dist/esm/client/utils/store/autoSignInStore.mjs.map +1 -1
  115. package/dist/esm/client/utils/store/signInStore.mjs.map +1 -1
  116. package/dist/esm/errors/AuthError.mjs.map +1 -1
  117. package/dist/esm/errors/utils/assertServiceError.mjs.map +1 -1
  118. package/dist/esm/errors/utils/assertValidationError.mjs.map +1 -1
  119. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/constants.mjs.map +1 -1
  120. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createSignUpClient.mjs.map +1 -1
  121. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/shared/serde/createEmptyResponseDeserializer.mjs.map +1 -1
  122. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/shared/serde/createUserPoolDeserializer.mjs.map +1 -1
  123. package/dist/esm/foundation/parsers/regionParsers.mjs.map +1 -1
  124. package/dist/esm/providers/cognito/apis/autoSignIn.mjs.map +1 -1
  125. package/dist/esm/providers/cognito/apis/confirmSignIn.mjs.map +1 -1
  126. package/dist/esm/providers/cognito/apis/confirmSignUp.mjs.map +1 -1
  127. package/dist/esm/providers/cognito/apis/fetchDevices.mjs.map +1 -1
  128. package/dist/esm/providers/cognito/apis/internal/getCurrentUser.mjs.map +1 -1
  129. package/dist/esm/providers/cognito/apis/setUpTOTP.mjs.map +1 -1
  130. package/dist/esm/providers/cognito/apis/signInWithCustomAuth.mjs.map +1 -1
  131. package/dist/esm/providers/cognito/apis/signInWithCustomSRPAuth.mjs.map +1 -1
  132. package/dist/esm/providers/cognito/apis/signInWithRedirect.mjs.map +1 -1
  133. package/dist/esm/providers/cognito/apis/signInWithSRP.mjs.map +1 -1
  134. package/dist/esm/providers/cognito/apis/signInWithUserAuth.mjs.map +1 -1
  135. package/dist/esm/providers/cognito/apis/signInWithUserPassword.mjs.map +1 -1
  136. package/dist/esm/providers/cognito/apis/signOut.mjs.map +1 -1
  137. package/dist/esm/providers/cognito/apis/signUp.mjs.map +1 -1
  138. package/dist/esm/providers/cognito/apis/updateMFAPreference.mjs.map +1 -1
  139. package/dist/esm/providers/cognito/apis/updateUserAttributes.mjs.map +1 -1
  140. package/dist/esm/providers/cognito/credentialsProvider/IdentityIdProvider.mjs.map +1 -1
  141. package/dist/esm/providers/cognito/credentialsProvider/IdentityIdStore.mjs.map +1 -1
  142. package/dist/esm/providers/cognito/credentialsProvider/credentialsProvider.mjs.map +1 -1
  143. package/dist/esm/providers/cognito/credentialsProvider/utils.mjs.map +1 -1
  144. package/dist/esm/providers/cognito/factories/createCognitoIdentityPoolEndpointResolver.mjs.map +1 -1
  145. package/dist/esm/providers/cognito/factories/createCognitoUserPoolEndpointResolver.mjs.map +1 -1
  146. package/dist/esm/providers/cognito/tokenProvider/CognitoUserPoolsTokenProvider.mjs.map +1 -1
  147. package/dist/esm/providers/cognito/tokenProvider/TokenOrchestrator.mjs.map +1 -1
  148. package/dist/esm/providers/cognito/tokenProvider/TokenStore.mjs.map +1 -1
  149. package/dist/esm/providers/cognito/tokenProvider/cacheTokens.mjs.map +1 -1
  150. package/dist/esm/providers/cognito/utils/apiHelpers.mjs.map +1 -1
  151. package/dist/esm/providers/cognito/utils/dispatchSignedInHubEvent.mjs.map +1 -1
  152. package/dist/esm/providers/cognito/utils/getNewDeviceMetadata.mjs.map +1 -1
  153. package/dist/esm/providers/cognito/utils/handlePasswordVerifierChallenge.mjs.map +1 -1
  154. package/dist/esm/providers/cognito/utils/oauth/attemptCompleteOAuthFlow.mjs.map +1 -1
  155. package/dist/esm/providers/cognito/utils/oauth/cancelOAuthFlow.mjs.map +1 -1
  156. package/dist/esm/providers/cognito/utils/oauth/completeOAuthFlow.mjs.map +1 -1
  157. package/dist/esm/providers/cognito/utils/oauth/enableOAuthListener.mjs.map +1 -1
  158. package/dist/esm/providers/cognito/utils/oauth/generateCodeVerifier.mjs.map +1 -1
  159. package/dist/esm/providers/cognito/utils/oauth/getRedirectUrl.mjs.map +1 -1
  160. package/dist/esm/providers/cognito/utils/oauth/getRedirectUrl.native.mjs.map +1 -1
  161. package/dist/esm/providers/cognito/utils/oauth/handleOAuthSignOut.mjs.map +1 -1
  162. package/dist/esm/providers/cognito/utils/oauth/handleOAuthSignOut.native.mjs.map +1 -1
  163. package/dist/esm/providers/cognito/utils/oauth/inflightPromise.mjs.map +1 -1
  164. package/dist/esm/providers/cognito/utils/oauth/validateState.mjs.map +1 -1
  165. package/dist/esm/providers/cognito/utils/refreshAuthTokens.mjs.map +1 -1
  166. package/dist/esm/providers/cognito/utils/retryOnResourceNotFoundException.mjs.map +1 -1
  167. package/dist/esm/providers/cognito/utils/signInHelpers.mjs.map +1 -1
  168. package/dist/esm/providers/cognito/utils/signInWithRedirectStore.mjs.map +1 -1
  169. package/dist/esm/providers/cognito/utils/signUpHelpers.mjs.map +1 -1
  170. package/dist/esm/providers/cognito/utils/srp/AuthenticationHelper/AuthenticationHelper.mjs.map +1 -1
  171. package/dist/esm/providers/cognito/utils/srp/BigInteger/BigInteger.mjs.map +1 -1
  172. package/dist/esm/providers/cognito/utils/srp/BigInteger/index.native.mjs.map +1 -1
  173. package/dist/esm/providers/cognito/utils/srp/calculate/calculateA.mjs.map +1 -1
  174. package/dist/esm/providers/cognito/utils/srp/calculate/calculateS.mjs.map +1 -1
  175. package/dist/esm/providers/cognito/utils/srp/calculate/calculateU.mjs.map +1 -1
  176. package/dist/esm/providers/cognito/utils/srp/constants.mjs.map +1 -1
  177. package/dist/esm/providers/cognito/utils/srp/getBytesFromHex.mjs.map +1 -1
  178. package/dist/esm/providers/cognito/utils/srp/getHexFromBytes.mjs.map +1 -1
  179. package/dist/esm/providers/cognito/utils/srp/getNowString.mjs.map +1 -1
  180. package/dist/esm/providers/cognito/utils/srp/getPaddedHex.mjs.map +1 -1
  181. package/dist/esm/providers/cognito/utils/srp/getSignatureString.mjs.map +1 -1
  182. package/dist/esm/providers/cognito/utils/textEncoder/index.mjs.map +1 -1
  183. package/dist/esm/providers/cognito/utils/textEncoder/index.native.mjs.map +1 -1
  184. package/dist/esm/providers/cognito/utils/types.mjs.map +1 -1
  185. package/dist/esm/providers/cognito/utils/userContextData.mjs.map +1 -1
  186. package/dist/esm/utils/openAuthSession.mjs.map +1 -1
  187. package/dist/esm/utils/openAuthSession.native.mjs.map +1 -1
  188. package/package.json +105 -105
@@ -1 +1 @@
1
- {"version":3,"file":"TokenOrchestrator.js","sources":["../../../../../src/providers/cognito/tokenProvider/TokenOrchestrator.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TokenOrchestrator = void 0;\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst core_1 = require(\"@aws-amplify/core\");\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst assertServiceError_1 = require(\"../../../errors/utils/assertServiceError\");\nconst AuthError_1 = require(\"../../../errors/AuthError\");\nconst oAuthStore_1 = require(\"../utils/oauth/oAuthStore\");\nconst inflightPromise_1 = require(\"../utils/oauth/inflightPromise\");\nclass TokenOrchestrator {\n constructor() {\n this.waitForInflightOAuth = (0, utils_1.isBrowser)()\n ? async () => {\n if (!(await oAuthStore_1.oAuthStore.loadOAuthInFlight())) {\n return;\n }\n if (this.inflightPromise) {\n return this.inflightPromise;\n }\n // when there is valid oauth config and there is an inflight oauth flow, try\n // to block async calls that require fetching tokens before the oauth flow completes\n // e.g. getCurrentUser, fetchAuthSession etc.\n this.inflightPromise = new Promise((resolve, _reject) => {\n (0, inflightPromise_1.addInflightPromise)(resolve);\n });\n return this.inflightPromise;\n }\n : async () => {\n // no-op for non-browser environments\n };\n }\n setAuthConfig(authConfig) {\n oAuthStore_1.oAuthStore.setAuthConfig(authConfig.Cognito);\n this.authConfig = authConfig;\n }\n setTokenRefresher(tokenRefresher) {\n this.tokenRefresher = tokenRefresher;\n }\n setAuthTokenStore(tokenStore) {\n this.tokenStore = tokenStore;\n }\n getTokenStore() {\n if (!this.tokenStore) {\n throw new AuthError_1.AuthError({\n name: 'EmptyTokenStoreException',\n message: 'TokenStore not set',\n });\n }\n return this.tokenStore;\n }\n getTokenRefresher() {\n if (!this.tokenRefresher) {\n throw new AuthError_1.AuthError({\n name: 'EmptyTokenRefresherException',\n message: 'TokenRefresher not set',\n });\n }\n return this.tokenRefresher;\n }\n async getTokens(options) {\n let tokens;\n try {\n (0, utils_1.assertTokenProviderConfig)(this.authConfig?.Cognito);\n }\n catch (_err) {\n // Token provider not configured\n return null;\n }\n await this.waitForInflightOAuth();\n this.inflightPromise = undefined;\n tokens = await this.getTokenStore().loadTokens();\n const username = await this.getTokenStore().getLastAuthUser();\n if (tokens === null) {\n return null;\n }\n const idTokenExpired = !!tokens?.idToken &&\n (0, utils_1.isTokenExpired)({\n expiresAt: (tokens.idToken?.payload?.exp ?? 0) * 1000,\n clockDrift: tokens.clockDrift ?? 0,\n });\n const accessTokenExpired = (0, utils_1.isTokenExpired)({\n expiresAt: (tokens.accessToken?.payload?.exp ?? 0) * 1000,\n clockDrift: tokens.clockDrift ?? 0,\n });\n if (options?.forceRefresh || idTokenExpired || accessTokenExpired) {\n tokens = await this.refreshTokens({\n tokens,\n username,\n });\n if (tokens === null) {\n return null;\n }\n }\n return {\n accessToken: tokens?.accessToken,\n idToken: tokens?.idToken,\n signInDetails: tokens?.signInDetails,\n };\n }\n async refreshTokens({ tokens, username, }) {\n try {\n const { signInDetails } = tokens;\n const newTokens = await this.getTokenRefresher()({\n tokens,\n authConfig: this.authConfig,\n username,\n });\n newTokens.signInDetails = signInDetails;\n await this.setTokens({ tokens: newTokens });\n core_1.Hub.dispatch('auth', { event: 'tokenRefresh' }, 'Auth', utils_1.AMPLIFY_SYMBOL);\n return newTokens;\n }\n catch (err) {\n return this.handleErrors(err);\n }\n }\n handleErrors(err) {\n (0, assertServiceError_1.assertServiceError)(err);\n if (err.name !== utils_1.AmplifyErrorCode.NetworkError) {\n // TODO(v6): Check errors on client\n this.clearTokens();\n }\n core_1.Hub.dispatch('auth', {\n event: 'tokenRefresh_failure',\n data: { error: err },\n }, 'Auth', utils_1.AMPLIFY_SYMBOL);\n if (err.name.startsWith('NotAuthorizedException')) {\n return null;\n }\n throw err;\n }\n async setTokens({ tokens }) {\n return this.getTokenStore().storeTokens(tokens);\n }\n async clearTokens() {\n return this.getTokenStore().clearTokens();\n }\n getDeviceMetadata(username) {\n return this.getTokenStore().getDeviceMetadata(username);\n }\n clearDeviceMetadata(username) {\n return this.getTokenStore().clearDeviceMetadata(username);\n }\n setOAuthMetadata(metadata) {\n return this.getTokenStore().setOAuthMetadata(metadata);\n }\n getOAuthMetadata() {\n return this.getTokenStore().getOAuthMetadata();\n }\n}\nexports.TokenOrchestrator = TokenOrchestrator;\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TokenOrchestrator.js","sources":["../../../../../src/providers/cognito/tokenProvider/TokenOrchestrator.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TokenOrchestrator = void 0;\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst core_1 = require(\"@aws-amplify/core\");\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst assertServiceError_1 = require(\"../../../errors/utils/assertServiceError\");\nconst AuthError_1 = require(\"../../../errors/AuthError\");\nconst oAuthStore_1 = require(\"../utils/oauth/oAuthStore\");\nconst inflightPromise_1 = require(\"../utils/oauth/inflightPromise\");\nclass TokenOrchestrator {\n constructor() {\n this.waitForInflightOAuth = (0, utils_1.isBrowser)()\n ? async () => {\n if (!(await oAuthStore_1.oAuthStore.loadOAuthInFlight())) {\n return;\n }\n if (this.inflightPromise) {\n return this.inflightPromise;\n }\n // when there is valid oauth config and there is an inflight oauth flow, try\n // to block async calls that require fetching tokens before the oauth flow completes\n // e.g. getCurrentUser, fetchAuthSession etc.\n this.inflightPromise = new Promise((resolve, _reject) => {\n (0, inflightPromise_1.addInflightPromise)(resolve);\n });\n return this.inflightPromise;\n }\n : async () => {\n // no-op for non-browser environments\n };\n }\n setAuthConfig(authConfig) {\n oAuthStore_1.oAuthStore.setAuthConfig(authConfig.Cognito);\n this.authConfig = authConfig;\n }\n setTokenRefresher(tokenRefresher) {\n this.tokenRefresher = tokenRefresher;\n }\n setAuthTokenStore(tokenStore) {\n this.tokenStore = tokenStore;\n }\n getTokenStore() {\n if (!this.tokenStore) {\n throw new AuthError_1.AuthError({\n name: 'EmptyTokenStoreException',\n message: 'TokenStore not set',\n });\n }\n return this.tokenStore;\n }\n getTokenRefresher() {\n if (!this.tokenRefresher) {\n throw new AuthError_1.AuthError({\n name: 'EmptyTokenRefresherException',\n message: 'TokenRefresher not set',\n });\n }\n return this.tokenRefresher;\n }\n async getTokens(options) {\n let tokens;\n try {\n (0, utils_1.assertTokenProviderConfig)(this.authConfig?.Cognito);\n }\n catch (_err) {\n // Token provider not configured\n return null;\n }\n await this.waitForInflightOAuth();\n this.inflightPromise = undefined;\n tokens = await this.getTokenStore().loadTokens();\n const username = await this.getTokenStore().getLastAuthUser();\n if (tokens === null) {\n return null;\n }\n const idTokenExpired = !!tokens?.idToken &&\n (0, utils_1.isTokenExpired)({\n expiresAt: (tokens.idToken?.payload?.exp ?? 0) * 1000,\n clockDrift: tokens.clockDrift ?? 0,\n });\n const accessTokenExpired = (0, utils_1.isTokenExpired)({\n expiresAt: (tokens.accessToken?.payload?.exp ?? 0) * 1000,\n clockDrift: tokens.clockDrift ?? 0,\n });\n if (options?.forceRefresh || idTokenExpired || accessTokenExpired) {\n tokens = await this.refreshTokens({\n tokens,\n username,\n });\n if (tokens === null) {\n return null;\n }\n }\n return {\n accessToken: tokens?.accessToken,\n idToken: tokens?.idToken,\n signInDetails: tokens?.signInDetails,\n };\n }\n async refreshTokens({ tokens, username, }) {\n try {\n const { signInDetails } = tokens;\n const newTokens = await this.getTokenRefresher()({\n tokens,\n authConfig: this.authConfig,\n username,\n });\n newTokens.signInDetails = signInDetails;\n await this.setTokens({ tokens: newTokens });\n core_1.Hub.dispatch('auth', { event: 'tokenRefresh' }, 'Auth', utils_1.AMPLIFY_SYMBOL);\n return newTokens;\n }\n catch (err) {\n return this.handleErrors(err);\n }\n }\n handleErrors(err) {\n (0, assertServiceError_1.assertServiceError)(err);\n if (err.name !== utils_1.AmplifyErrorCode.NetworkError) {\n // TODO(v6): Check errors on client\n this.clearTokens();\n }\n core_1.Hub.dispatch('auth', {\n event: 'tokenRefresh_failure',\n data: { error: err },\n }, 'Auth', utils_1.AMPLIFY_SYMBOL);\n if (err.name.startsWith('NotAuthorizedException')) {\n return null;\n }\n throw err;\n }\n async setTokens({ tokens }) {\n return this.getTokenStore().storeTokens(tokens);\n }\n async clearTokens() {\n return this.getTokenStore().clearTokens();\n }\n getDeviceMetadata(username) {\n return this.getTokenStore().getDeviceMetadata(username);\n }\n clearDeviceMetadata(username) {\n return this.getTokenStore().clearDeviceMetadata(username);\n }\n setOAuthMetadata(metadata) {\n return this.getTokenStore().setOAuthMetadata(metadata);\n }\n getOAuthMetadata() {\n return this.getTokenStore().getOAuthMetadata();\n }\n}\nexports.TokenOrchestrator = TokenOrchestrator;\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"TokenStore.js","sources":["../../../../../src/providers/cognito/tokenProvider/TokenStore.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createKeysForAuthStorage = exports.DefaultTokenStore = void 0;\nexports.getAuthStorageKeys = getAuthStorageKeys;\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst AuthError_1 = require(\"../../../errors/AuthError\");\nconst types_1 = require(\"./types\");\nconst errorHelpers_1 = require(\"./errorHelpers\");\nconst constants_1 = require(\"./constants\");\nclass DefaultTokenStore {\n getKeyValueStorage() {\n if (!this.keyValueStorage) {\n throw new AuthError_1.AuthError({\n name: 'KeyValueStorageNotFoundException',\n message: 'KeyValueStorage was not found in TokenStore',\n });\n }\n return this.keyValueStorage;\n }\n setKeyValueStorage(keyValueStorage) {\n this.keyValueStorage = keyValueStorage;\n }\n setAuthConfig(authConfig) {\n this.authConfig = authConfig;\n }\n async loadTokens() {\n // TODO(v6): migration logic should be here\n // Reading V5 tokens old format\n try {\n const authKeys = await this.getAuthKeys();\n const accessTokenString = await this.getKeyValueStorage().getItem(authKeys.accessToken);\n if (!accessTokenString) {\n throw new AuthError_1.AuthError({\n name: 'NoSessionFoundException',\n message: 'Auth session was not found. Make sure to call signIn.',\n });\n }\n const accessToken = (0, utils_1.decodeJWT)(accessTokenString);\n const itString = await this.getKeyValueStorage().getItem(authKeys.idToken);\n const idToken = itString ? (0, utils_1.decodeJWT)(itString) : undefined;\n const refreshToken = (await this.getKeyValueStorage().getItem(authKeys.refreshToken)) ??\n undefined;\n const clockDriftString = (await this.getKeyValueStorage().getItem(authKeys.clockDrift)) ?? '0';\n const clockDrift = Number.parseInt(clockDriftString);\n const signInDetails = await this.getKeyValueStorage().getItem(authKeys.signInDetails);\n const tokens = {\n accessToken,\n idToken,\n refreshToken,\n deviceMetadata: (await this.getDeviceMetadata()) ?? undefined,\n clockDrift,\n username: await this.getLastAuthUser(),\n };\n if (signInDetails) {\n tokens.signInDetails = JSON.parse(signInDetails);\n }\n return tokens;\n }\n catch (err) {\n return null;\n }\n }\n async storeTokens(tokens) {\n (0, errorHelpers_1.assert)(tokens !== undefined, errorHelpers_1.TokenProviderErrorCode.InvalidAuthTokens);\n const lastAuthUser = tokens.username;\n await this.getKeyValueStorage().setItem(this.getLastAuthUserKey(), lastAuthUser);\n const authKeys = await this.getAuthKeys();\n await this.getKeyValueStorage().setItem(authKeys.accessToken, tokens.accessToken.toString());\n if (tokens.idToken) {\n await this.getKeyValueStorage().setItem(authKeys.idToken, tokens.idToken.toString());\n }\n else {\n await this.getKeyValueStorage().removeItem(authKeys.idToken);\n }\n if (tokens.refreshToken) {\n await this.getKeyValueStorage().setItem(authKeys.refreshToken, tokens.refreshToken);\n }\n else {\n await this.getKeyValueStorage().removeItem(authKeys.refreshToken);\n }\n if (tokens.deviceMetadata) {\n if (tokens.deviceMetadata.deviceKey) {\n await this.getKeyValueStorage().setItem(authKeys.deviceKey, tokens.deviceMetadata.deviceKey);\n }\n if (tokens.deviceMetadata.deviceGroupKey) {\n await this.getKeyValueStorage().setItem(authKeys.deviceGroupKey, tokens.deviceMetadata.deviceGroupKey);\n }\n await this.getKeyValueStorage().setItem(authKeys.randomPasswordKey, tokens.deviceMetadata.randomPassword);\n }\n if (tokens.signInDetails) {\n await this.getKeyValueStorage().setItem(authKeys.signInDetails, JSON.stringify(tokens.signInDetails));\n }\n else {\n await this.getKeyValueStorage().removeItem(authKeys.signInDetails);\n }\n await this.getKeyValueStorage().setItem(authKeys.clockDrift, `${tokens.clockDrift}`);\n }\n async clearTokens() {\n const authKeys = await this.getAuthKeys();\n // Not calling clear because it can remove data that is not managed by AuthTokenStore\n await Promise.all([\n this.getKeyValueStorage().removeItem(authKeys.accessToken),\n this.getKeyValueStorage().removeItem(authKeys.idToken),\n this.getKeyValueStorage().removeItem(authKeys.clockDrift),\n this.getKeyValueStorage().removeItem(authKeys.refreshToken),\n this.getKeyValueStorage().removeItem(authKeys.signInDetails),\n this.getKeyValueStorage().removeItem(this.getLastAuthUserKey()),\n this.getKeyValueStorage().removeItem(authKeys.oauthMetadata),\n ]);\n }\n async getDeviceMetadata(username) {\n const authKeys = await this.getAuthKeys(username);\n const deviceKey = await this.getKeyValueStorage().getItem(authKeys.deviceKey);\n const deviceGroupKey = await this.getKeyValueStorage().getItem(authKeys.deviceGroupKey);\n const randomPassword = await this.getKeyValueStorage().getItem(authKeys.randomPasswordKey);\n return randomPassword && deviceGroupKey && deviceKey\n ? {\n deviceKey,\n deviceGroupKey,\n randomPassword,\n }\n : null;\n }\n async clearDeviceMetadata(username) {\n const authKeys = await this.getAuthKeys(username);\n await Promise.all([\n this.getKeyValueStorage().removeItem(authKeys.deviceKey),\n this.getKeyValueStorage().removeItem(authKeys.deviceGroupKey),\n this.getKeyValueStorage().removeItem(authKeys.randomPasswordKey),\n ]);\n }\n async getAuthKeys(username) {\n (0, utils_1.assertTokenProviderConfig)(this.authConfig?.Cognito);\n const lastAuthUser = username ?? (await this.getLastAuthUser());\n return (0, exports.createKeysForAuthStorage)(constants_1.AUTH_KEY_PREFIX, `${this.authConfig.Cognito.userPoolClientId}.${lastAuthUser}`);\n }\n getLastAuthUserKey() {\n (0, utils_1.assertTokenProviderConfig)(this.authConfig?.Cognito);\n const identifier = this.authConfig.Cognito.userPoolClientId;\n return `${constants_1.AUTH_KEY_PREFIX}.${identifier}.LastAuthUser`;\n }\n async getLastAuthUser() {\n const lastAuthUser = (await this.getKeyValueStorage().getItem(this.getLastAuthUserKey())) ??\n 'username';\n return lastAuthUser;\n }\n async setOAuthMetadata(metadata) {\n const { oauthMetadata: oauthMetadataKey } = await this.getAuthKeys();\n await this.getKeyValueStorage().setItem(oauthMetadataKey, JSON.stringify(metadata));\n }\n async getOAuthMetadata() {\n const { oauthMetadata: oauthMetadataKey } = await this.getAuthKeys();\n const oauthMetadata = await this.getKeyValueStorage().getItem(oauthMetadataKey);\n return oauthMetadata && JSON.parse(oauthMetadata);\n }\n}\nexports.DefaultTokenStore = DefaultTokenStore;\nconst createKeysForAuthStorage = (provider, identifier) => {\n return getAuthStorageKeys(types_1.AuthTokenStorageKeys)(`${provider}`, identifier);\n};\nexports.createKeysForAuthStorage = createKeysForAuthStorage;\nfunction getAuthStorageKeys(authKeys) {\n const keys = Object.values({ ...authKeys });\n return (prefix, identifier) => keys.reduce((acc, authKey) => ({\n ...acc,\n [authKey]: `${prefix}.${identifier}.${authKey}`,\n }), {});\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TokenStore.js","sources":["../../../../../src/providers/cognito/tokenProvider/TokenStore.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createKeysForAuthStorage = exports.DefaultTokenStore = void 0;\nexports.getAuthStorageKeys = getAuthStorageKeys;\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst AuthError_1 = require(\"../../../errors/AuthError\");\nconst types_1 = require(\"./types\");\nconst errorHelpers_1 = require(\"./errorHelpers\");\nconst constants_1 = require(\"./constants\");\nclass DefaultTokenStore {\n getKeyValueStorage() {\n if (!this.keyValueStorage) {\n throw new AuthError_1.AuthError({\n name: 'KeyValueStorageNotFoundException',\n message: 'KeyValueStorage was not found in TokenStore',\n });\n }\n return this.keyValueStorage;\n }\n setKeyValueStorage(keyValueStorage) {\n this.keyValueStorage = keyValueStorage;\n }\n setAuthConfig(authConfig) {\n this.authConfig = authConfig;\n }\n async loadTokens() {\n // TODO(v6): migration logic should be here\n // Reading V5 tokens old format\n try {\n const authKeys = await this.getAuthKeys();\n const accessTokenString = await this.getKeyValueStorage().getItem(authKeys.accessToken);\n if (!accessTokenString) {\n throw new AuthError_1.AuthError({\n name: 'NoSessionFoundException',\n message: 'Auth session was not found. Make sure to call signIn.',\n });\n }\n const accessToken = (0, utils_1.decodeJWT)(accessTokenString);\n const itString = await this.getKeyValueStorage().getItem(authKeys.idToken);\n const idToken = itString ? (0, utils_1.decodeJWT)(itString) : undefined;\n const refreshToken = (await this.getKeyValueStorage().getItem(authKeys.refreshToken)) ??\n undefined;\n const clockDriftString = (await this.getKeyValueStorage().getItem(authKeys.clockDrift)) ?? '0';\n const clockDrift = Number.parseInt(clockDriftString);\n const signInDetails = await this.getKeyValueStorage().getItem(authKeys.signInDetails);\n const tokens = {\n accessToken,\n idToken,\n refreshToken,\n deviceMetadata: (await this.getDeviceMetadata()) ?? undefined,\n clockDrift,\n username: await this.getLastAuthUser(),\n };\n if (signInDetails) {\n tokens.signInDetails = JSON.parse(signInDetails);\n }\n return tokens;\n }\n catch (err) {\n return null;\n }\n }\n async storeTokens(tokens) {\n (0, errorHelpers_1.assert)(tokens !== undefined, errorHelpers_1.TokenProviderErrorCode.InvalidAuthTokens);\n const lastAuthUser = tokens.username;\n await this.getKeyValueStorage().setItem(this.getLastAuthUserKey(), lastAuthUser);\n const authKeys = await this.getAuthKeys();\n await this.getKeyValueStorage().setItem(authKeys.accessToken, tokens.accessToken.toString());\n if (tokens.idToken) {\n await this.getKeyValueStorage().setItem(authKeys.idToken, tokens.idToken.toString());\n }\n else {\n await this.getKeyValueStorage().removeItem(authKeys.idToken);\n }\n if (tokens.refreshToken) {\n await this.getKeyValueStorage().setItem(authKeys.refreshToken, tokens.refreshToken);\n }\n else {\n await this.getKeyValueStorage().removeItem(authKeys.refreshToken);\n }\n if (tokens.deviceMetadata) {\n if (tokens.deviceMetadata.deviceKey) {\n await this.getKeyValueStorage().setItem(authKeys.deviceKey, tokens.deviceMetadata.deviceKey);\n }\n if (tokens.deviceMetadata.deviceGroupKey) {\n await this.getKeyValueStorage().setItem(authKeys.deviceGroupKey, tokens.deviceMetadata.deviceGroupKey);\n }\n await this.getKeyValueStorage().setItem(authKeys.randomPasswordKey, tokens.deviceMetadata.randomPassword);\n }\n if (tokens.signInDetails) {\n await this.getKeyValueStorage().setItem(authKeys.signInDetails, JSON.stringify(tokens.signInDetails));\n }\n else {\n await this.getKeyValueStorage().removeItem(authKeys.signInDetails);\n }\n await this.getKeyValueStorage().setItem(authKeys.clockDrift, `${tokens.clockDrift}`);\n }\n async clearTokens() {\n const authKeys = await this.getAuthKeys();\n // Not calling clear because it can remove data that is not managed by AuthTokenStore\n await Promise.all([\n this.getKeyValueStorage().removeItem(authKeys.accessToken),\n this.getKeyValueStorage().removeItem(authKeys.idToken),\n this.getKeyValueStorage().removeItem(authKeys.clockDrift),\n this.getKeyValueStorage().removeItem(authKeys.refreshToken),\n this.getKeyValueStorage().removeItem(authKeys.signInDetails),\n this.getKeyValueStorage().removeItem(this.getLastAuthUserKey()),\n this.getKeyValueStorage().removeItem(authKeys.oauthMetadata),\n ]);\n }\n async getDeviceMetadata(username) {\n const authKeys = await this.getAuthKeys(username);\n const deviceKey = await this.getKeyValueStorage().getItem(authKeys.deviceKey);\n const deviceGroupKey = await this.getKeyValueStorage().getItem(authKeys.deviceGroupKey);\n const randomPassword = await this.getKeyValueStorage().getItem(authKeys.randomPasswordKey);\n return randomPassword && deviceGroupKey && deviceKey\n ? {\n deviceKey,\n deviceGroupKey,\n randomPassword,\n }\n : null;\n }\n async clearDeviceMetadata(username) {\n const authKeys = await this.getAuthKeys(username);\n await Promise.all([\n this.getKeyValueStorage().removeItem(authKeys.deviceKey),\n this.getKeyValueStorage().removeItem(authKeys.deviceGroupKey),\n this.getKeyValueStorage().removeItem(authKeys.randomPasswordKey),\n ]);\n }\n async getAuthKeys(username) {\n (0, utils_1.assertTokenProviderConfig)(this.authConfig?.Cognito);\n const lastAuthUser = username ?? (await this.getLastAuthUser());\n return (0, exports.createKeysForAuthStorage)(constants_1.AUTH_KEY_PREFIX, `${this.authConfig.Cognito.userPoolClientId}.${lastAuthUser}`);\n }\n getLastAuthUserKey() {\n (0, utils_1.assertTokenProviderConfig)(this.authConfig?.Cognito);\n const identifier = this.authConfig.Cognito.userPoolClientId;\n return `${constants_1.AUTH_KEY_PREFIX}.${identifier}.LastAuthUser`;\n }\n async getLastAuthUser() {\n const lastAuthUser = (await this.getKeyValueStorage().getItem(this.getLastAuthUserKey())) ??\n 'username';\n return lastAuthUser;\n }\n async setOAuthMetadata(metadata) {\n const { oauthMetadata: oauthMetadataKey } = await this.getAuthKeys();\n await this.getKeyValueStorage().setItem(oauthMetadataKey, JSON.stringify(metadata));\n }\n async getOAuthMetadata() {\n const { oauthMetadata: oauthMetadataKey } = await this.getAuthKeys();\n const oauthMetadata = await this.getKeyValueStorage().getItem(oauthMetadataKey);\n return oauthMetadata && JSON.parse(oauthMetadata);\n }\n}\nexports.DefaultTokenStore = DefaultTokenStore;\nconst createKeysForAuthStorage = (provider, identifier) => {\n return getAuthStorageKeys(types_1.AuthTokenStorageKeys)(`${provider}`, identifier);\n};\nexports.createKeysForAuthStorage = createKeysForAuthStorage;\nfunction getAuthStorageKeys(authKeys) {\n const keys = Object.values({ ...authKeys });\n return (prefix, identifier) => keys.reduce((acc, authKey) => ({\n ...acc,\n [authKey]: `${prefix}.${identifier}.${authKey}`,\n }), {});\n}\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cacheTokens.js","sources":["../../../../../src/providers/cognito/tokenProvider/cacheTokens.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.cacheCognitoTokens = cacheCognitoTokens;\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst tokenProvider_1 = require(\"./tokenProvider\");\nasync function cacheCognitoTokens(AuthenticationResult) {\n if (AuthenticationResult.AccessToken) {\n const accessToken = (0, utils_1.decodeJWT)(AuthenticationResult.AccessToken);\n const accessTokenIssuedAtInMillis = (accessToken.payload.iat || 0) * 1000;\n const currentTime = new Date().getTime();\n const clockDrift = accessTokenIssuedAtInMillis > 0\n ? accessTokenIssuedAtInMillis - currentTime\n : 0;\n let idToken;\n let refreshToken;\n let deviceMetadata;\n if (AuthenticationResult.RefreshToken) {\n refreshToken = AuthenticationResult.RefreshToken;\n }\n if (AuthenticationResult.IdToken) {\n idToken = (0, utils_1.decodeJWT)(AuthenticationResult.IdToken);\n }\n if (AuthenticationResult?.NewDeviceMetadata) {\n deviceMetadata = AuthenticationResult.NewDeviceMetadata;\n }\n const tokens = {\n accessToken,\n idToken,\n refreshToken,\n clockDrift,\n deviceMetadata,\n username: AuthenticationResult.username,\n };\n if (AuthenticationResult?.signInDetails) {\n tokens.signInDetails = AuthenticationResult.signInDetails;\n }\n await tokenProvider_1.tokenOrchestrator.setTokens({\n tokens,\n });\n }\n else {\n // This would be a service error\n throw new utils_1.AmplifyError({\n message: 'Invalid tokens',\n name: 'InvalidTokens',\n recoverySuggestion: 'Check Cognito UserPool settings',\n });\n }\n}\n"],"names":[],"mappings":";;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,kBAAkB,GAAG,kBAAkB;AAC/C;AACA;AACA,MAAM,OAAO,GAAG,OAAO,CAAC,mCAAmC,CAAC;AAC5D,MAAM,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC;AAClD,eAAe,kBAAkB,CAAC,oBAAoB,EAAE;AACxD,IAAI,IAAI,oBAAoB,CAAC,WAAW,EAAE;AAC1C,QAAQ,MAAM,WAAW,GAAG,IAAI,OAAO,CAAC,SAAS,EAAE,oBAAoB,CAAC,WAAW,CAAC;AACpF,QAAQ,MAAM,2BAA2B,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI;AACjF,QAAQ,MAAM,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE;AAChD,QAAQ,MAAM,UAAU,GAAG,2BAA2B,GAAG;AACzD,cAAc,2BAA2B,GAAG;AAC5C,cAAc,CAAC;AACf,QAAQ,IAAI,OAAO;AACnB,QAAQ,IAAI,YAAY;AACxB,QAAQ,IAAI,cAAc;AAC1B,QAAQ,IAAI,oBAAoB,CAAC,YAAY,EAAE;AAC/C,YAAY,YAAY,GAAG,oBAAoB,CAAC,YAAY;AAC5D;AACA,QAAQ,IAAI,oBAAoB,CAAC,OAAO,EAAE;AAC1C,YAAY,OAAO,GAAG,IAAI,OAAO,CAAC,SAAS,EAAE,oBAAoB,CAAC,OAAO,CAAC;AAC1E;AACA,QAAQ,IAAI,oBAAoB,EAAE,iBAAiB,EAAE;AACrD,YAAY,cAAc,GAAG,oBAAoB,CAAC,iBAAiB;AACnE;AACA,QAAQ,MAAM,MAAM,GAAG;AACvB,YAAY,WAAW;AACvB,YAAY,OAAO;AACnB,YAAY,YAAY;AACxB,YAAY,UAAU;AACtB,YAAY,cAAc;AAC1B,YAAY,QAAQ,EAAE,oBAAoB,CAAC,QAAQ;AACnD,SAAS;AACT,QAAQ,IAAI,oBAAoB,EAAE,aAAa,EAAE;AACjD,YAAY,MAAM,CAAC,aAAa,GAAG,oBAAoB,CAAC,aAAa;AACrE;AACA,QAAQ,MAAM,eAAe,CAAC,iBAAiB,CAAC,SAAS,CAAC;AAC1D,YAAY,MAAM;AAClB,SAAS,CAAC;AACV;AACA,SAAS;AACT;AACA,QAAQ,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC;AACvC,YAAY,OAAO,EAAE,gBAAgB;AACrC,YAAY,IAAI,EAAE,eAAe;AACjC,YAAY,kBAAkB,EAAE,iCAAiC;AACjE,SAAS,CAAC;AACV;AACA;;"}
1
+ {"version":3,"file":"cacheTokens.js","sources":["../../../../../src/providers/cognito/tokenProvider/cacheTokens.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.cacheCognitoTokens = cacheCognitoTokens;\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst tokenProvider_1 = require(\"./tokenProvider\");\nasync function cacheCognitoTokens(AuthenticationResult) {\n if (AuthenticationResult.AccessToken) {\n const accessToken = (0, utils_1.decodeJWT)(AuthenticationResult.AccessToken);\n const accessTokenIssuedAtInMillis = (accessToken.payload.iat || 0) * 1000;\n const currentTime = new Date().getTime();\n const clockDrift = accessTokenIssuedAtInMillis > 0\n ? accessTokenIssuedAtInMillis - currentTime\n : 0;\n let idToken;\n let refreshToken;\n let deviceMetadata;\n if (AuthenticationResult.RefreshToken) {\n refreshToken = AuthenticationResult.RefreshToken;\n }\n if (AuthenticationResult.IdToken) {\n idToken = (0, utils_1.decodeJWT)(AuthenticationResult.IdToken);\n }\n if (AuthenticationResult?.NewDeviceMetadata) {\n deviceMetadata = AuthenticationResult.NewDeviceMetadata;\n }\n const tokens = {\n accessToken,\n idToken,\n refreshToken,\n clockDrift,\n deviceMetadata,\n username: AuthenticationResult.username,\n };\n if (AuthenticationResult?.signInDetails) {\n tokens.signInDetails = AuthenticationResult.signInDetails;\n }\n await tokenProvider_1.tokenOrchestrator.setTokens({\n tokens,\n });\n }\n else {\n // This would be a service error\n throw new utils_1.AmplifyError({\n message: 'Invalid tokens',\n name: 'InvalidTokens',\n recoverySuggestion: 'Check Cognito UserPool settings',\n });\n }\n}\n"],"names":[],"mappings":";;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,kBAAkB,GAAG,kBAAkB;AAC/C;AACA;AACA,MAAM,OAAO,GAAG,OAAO,CAAC,mCAAmC,CAAC;AAC5D,MAAM,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC;AAClD,eAAe,kBAAkB,CAAC,oBAAoB,EAAE;AACxD,IAAI,IAAI,oBAAoB,CAAC,WAAW,EAAE;AAC1C,QAAQ,MAAM,WAAW,GAAG,IAAI,OAAO,CAAC,SAAS,EAAE,oBAAoB,CAAC,WAAW,CAAC;AACpF,QAAQ,MAAM,2BAA2B,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI;AACjF,QAAQ,MAAM,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE;AAChD,QAAQ,MAAM,UAAU,GAAG,2BAA2B,GAAG;AACzD,cAAc,2BAA2B,GAAG;AAC5C,cAAc,CAAC;AACf,QAAQ,IAAI,OAAO;AACnB,QAAQ,IAAI,YAAY;AACxB,QAAQ,IAAI,cAAc;AAC1B,QAAQ,IAAI,oBAAoB,CAAC,YAAY,EAAE;AAC/C,YAAY,YAAY,GAAG,oBAAoB,CAAC,YAAY;AAC5D,QAAQ;AACR,QAAQ,IAAI,oBAAoB,CAAC,OAAO,EAAE;AAC1C,YAAY,OAAO,GAAG,IAAI,OAAO,CAAC,SAAS,EAAE,oBAAoB,CAAC,OAAO,CAAC;AAC1E,QAAQ;AACR,QAAQ,IAAI,oBAAoB,EAAE,iBAAiB,EAAE;AACrD,YAAY,cAAc,GAAG,oBAAoB,CAAC,iBAAiB;AACnE,QAAQ;AACR,QAAQ,MAAM,MAAM,GAAG;AACvB,YAAY,WAAW;AACvB,YAAY,OAAO;AACnB,YAAY,YAAY;AACxB,YAAY,UAAU;AACtB,YAAY,cAAc;AAC1B,YAAY,QAAQ,EAAE,oBAAoB,CAAC,QAAQ;AACnD,SAAS;AACT,QAAQ,IAAI,oBAAoB,EAAE,aAAa,EAAE;AACjD,YAAY,MAAM,CAAC,aAAa,GAAG,oBAAoB,CAAC,aAAa;AACrE,QAAQ;AACR,QAAQ,MAAM,eAAe,CAAC,iBAAiB,CAAC,SAAS,CAAC;AAC1D,YAAY,MAAM;AAClB,SAAS,CAAC;AACV,IAAI;AACJ,SAAS;AACT;AACA,QAAQ,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC;AACvC,YAAY,OAAO,EAAE,gBAAgB;AACrC,YAAY,IAAI,EAAE,eAAe;AACjC,YAAY,kBAAkB,EAAE,iCAAiC;AACjE,SAAS,CAAC;AACV,IAAI;AACJ;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/providers/cognito/tokenProvider/index.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AUTH_KEY_PREFIX = exports.tokenOrchestrator = exports.cognitoUserPoolsTokenProvider = exports.TokenOrchestrator = exports.createKeysForAuthStorage = exports.DefaultTokenStore = exports.refreshAuthTokensWithoutDedupe = exports.refreshAuthTokens = void 0;\nvar refreshAuthTokens_1 = require(\"../utils/refreshAuthTokens\");\nObject.defineProperty(exports, \"refreshAuthTokens\", { enumerable: true, get: function () { return refreshAuthTokens_1.refreshAuthTokens; } });\nObject.defineProperty(exports, \"refreshAuthTokensWithoutDedupe\", { enumerable: true, get: function () { return refreshAuthTokens_1.refreshAuthTokensWithoutDedupe; } });\nvar TokenStore_1 = require(\"./TokenStore\");\nObject.defineProperty(exports, \"DefaultTokenStore\", { enumerable: true, get: function () { return TokenStore_1.DefaultTokenStore; } });\nObject.defineProperty(exports, \"createKeysForAuthStorage\", { enumerable: true, get: function () { return TokenStore_1.createKeysForAuthStorage; } });\nvar TokenOrchestrator_1 = require(\"./TokenOrchestrator\");\nObject.defineProperty(exports, \"TokenOrchestrator\", { enumerable: true, get: function () { return TokenOrchestrator_1.TokenOrchestrator; } });\nvar tokenProvider_1 = require(\"./tokenProvider\");\nObject.defineProperty(exports, \"cognitoUserPoolsTokenProvider\", { enumerable: true, get: function () { return tokenProvider_1.cognitoUserPoolsTokenProvider; } });\nObject.defineProperty(exports, \"tokenOrchestrator\", { enumerable: true, get: function () { return tokenProvider_1.tokenOrchestrator; } });\nvar constants_1 = require(\"./constants\");\nObject.defineProperty(exports, \"AUTH_KEY_PREFIX\", { enumerable: true, get: function () { return constants_1.AUTH_KEY_PREFIX; } });\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,eAAe,GAAG,OAAO,CAAC,iBAAiB,GAAG,OAAO,CAAC,6BAA6B,GAAG,OAAO,CAAC,iBAAiB,GAAG,OAAO,CAAC,wBAAwB,GAAG,OAAO,CAAC,iBAAiB,GAAG,OAAO,CAAC,8BAA8B,GAAG,OAAO,CAAC,iBAAiB,GAAG,MAAM;AACpQ,IAAI,mBAAmB,GAAG,OAAO,CAAC,4BAA4B,CAAC;AAC/D,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,mBAAmB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,mBAAmB,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC;AAC7I,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,gCAAgC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,mBAAmB,CAAC,8BAA8B,CAAC,EAAE,EAAE,CAAC;AACvK,IAAI,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;AAC1C,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,mBAAmB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,YAAY,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC;AACtI,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,0BAA0B,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,YAAY,CAAC,wBAAwB,CAAC,EAAE,EAAE,CAAC;AACpJ,IAAI,mBAAmB,GAAG,OAAO,CAAC,qBAAqB,CAAC;AACxD,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,mBAAmB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,mBAAmB,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC;AAC7I,IAAI,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC;AAChD,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,+BAA+B,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,eAAe,CAAC,6BAA6B,CAAC,EAAE,EAAE,CAAC;AACjK,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,mBAAmB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,eAAe,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC;AACzI,IAAI,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;AACxC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,iBAAiB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,WAAW,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/providers/cognito/tokenProvider/index.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AUTH_KEY_PREFIX = exports.tokenOrchestrator = exports.cognitoUserPoolsTokenProvider = exports.TokenOrchestrator = exports.createKeysForAuthStorage = exports.DefaultTokenStore = exports.refreshAuthTokensWithoutDedupe = exports.refreshAuthTokens = void 0;\nvar refreshAuthTokens_1 = require(\"../utils/refreshAuthTokens\");\nObject.defineProperty(exports, \"refreshAuthTokens\", { enumerable: true, get: function () { return refreshAuthTokens_1.refreshAuthTokens; } });\nObject.defineProperty(exports, \"refreshAuthTokensWithoutDedupe\", { enumerable: true, get: function () { return refreshAuthTokens_1.refreshAuthTokensWithoutDedupe; } });\nvar TokenStore_1 = require(\"./TokenStore\");\nObject.defineProperty(exports, \"DefaultTokenStore\", { enumerable: true, get: function () { return TokenStore_1.DefaultTokenStore; } });\nObject.defineProperty(exports, \"createKeysForAuthStorage\", { enumerable: true, get: function () { return TokenStore_1.createKeysForAuthStorage; } });\nvar TokenOrchestrator_1 = require(\"./TokenOrchestrator\");\nObject.defineProperty(exports, \"TokenOrchestrator\", { enumerable: true, get: function () { return TokenOrchestrator_1.TokenOrchestrator; } });\nvar tokenProvider_1 = require(\"./tokenProvider\");\nObject.defineProperty(exports, \"cognitoUserPoolsTokenProvider\", { enumerable: true, get: function () { return tokenProvider_1.cognitoUserPoolsTokenProvider; } });\nObject.defineProperty(exports, \"tokenOrchestrator\", { enumerable: true, get: function () { return tokenProvider_1.tokenOrchestrator; } });\nvar constants_1 = require(\"./constants\");\nObject.defineProperty(exports, \"AUTH_KEY_PREFIX\", { enumerable: true, get: function () { return constants_1.AUTH_KEY_PREFIX; } });\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,eAAe,GAAG,OAAO,CAAC,iBAAiB,GAAG,OAAO,CAAC,6BAA6B,GAAG,OAAO,CAAC,iBAAiB,GAAG,OAAO,CAAC,wBAAwB,GAAG,OAAO,CAAC,iBAAiB,GAAG,OAAO,CAAC,8BAA8B,GAAG,OAAO,CAAC,iBAAiB,GAAG,MAAM;AACpQ,IAAI,mBAAmB,GAAG,OAAO,CAAC,4BAA4B,CAAC;AAC/D,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,mBAAmB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,mBAAmB,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;AAC7I,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,gCAAgC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,mBAAmB,CAAC,8BAA8B,CAAC,CAAC,CAAC,EAAE,CAAC;AACvK,IAAI,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;AAC1C,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,mBAAmB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,YAAY,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;AACtI,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,0BAA0B,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,YAAY,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,CAAC;AACpJ,IAAI,mBAAmB,GAAG,OAAO,CAAC,qBAAqB,CAAC;AACxD,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,mBAAmB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,mBAAmB,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;AAC7I,IAAI,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC;AAChD,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,+BAA+B,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,eAAe,CAAC,6BAA6B,CAAC,CAAC,CAAC,EAAE,CAAC;AACjK,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,mBAAmB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,eAAe,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;AACzI,IAAI,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;AACxC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,iBAAiB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"apiHelpers.js","sources":["../../../../../src/providers/cognito/utils/apiHelpers.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.toAttributeType = toAttributeType;\nexports.toAuthUserAttribute = toAuthUserAttribute;\n/**\n * Transforms a user attributes object into an array of AttributeType objects.\n * @param attributes user attributes to be mapped to AttributeType objects.\n * @returns an array of AttributeType objects.\n */\nfunction toAttributeType(attributes) {\n return Object.entries(attributes).map(([key, value]) => ({\n Name: key,\n Value: value,\n }));\n}\n/**\n * Transforms an array of AttributeType objects into a user attributes object.\n *\n * @param attributes - an array of AttributeType objects.\n * @returns AuthUserAttributes object.\n */\nfunction toAuthUserAttribute(attributes) {\n const userAttributes = {};\n attributes?.forEach(attribute => {\n if (attribute.Name)\n userAttributes[attribute.Name] = attribute.Value;\n });\n return userAttributes;\n}\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,eAAe,GAAG,eAAe;AACzC,OAAO,CAAC,mBAAmB,GAAG,mBAAmB;AACjD;AACA;AACA;AACA;AACA;AACA,SAAS,eAAe,CAAC,UAAU,EAAE;AACrC,IAAI,OAAO,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM;AAC7D,QAAQ,IAAI,EAAE,GAAG;AACjB,QAAQ,KAAK,EAAE,KAAK;AACpB,KAAK,CAAC,CAAC;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,mBAAmB,CAAC,UAAU,EAAE;AACzC,IAAI,MAAM,cAAc,GAAG,EAAE;AAC7B,IAAI,UAAU,EAAE,OAAO,CAAC,SAAS,IAAI;AACrC,QAAQ,IAAI,SAAS,CAAC,IAAI;AAC1B,YAAY,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,KAAK;AAC5D,KAAK,CAAC;AACN,IAAI,OAAO,cAAc;AACzB;;"}
1
+ {"version":3,"file":"apiHelpers.js","sources":["../../../../../src/providers/cognito/utils/apiHelpers.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.toAttributeType = toAttributeType;\nexports.toAuthUserAttribute = toAuthUserAttribute;\n/**\n * Transforms a user attributes object into an array of AttributeType objects.\n * @param attributes user attributes to be mapped to AttributeType objects.\n * @returns an array of AttributeType objects.\n */\nfunction toAttributeType(attributes) {\n return Object.entries(attributes).map(([key, value]) => ({\n Name: key,\n Value: value,\n }));\n}\n/**\n * Transforms an array of AttributeType objects into a user attributes object.\n *\n * @param attributes - an array of AttributeType objects.\n * @returns AuthUserAttributes object.\n */\nfunction toAuthUserAttribute(attributes) {\n const userAttributes = {};\n attributes?.forEach(attribute => {\n if (attribute.Name)\n userAttributes[attribute.Name] = attribute.Value;\n });\n return userAttributes;\n}\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,eAAe,GAAG,eAAe;AACzC,OAAO,CAAC,mBAAmB,GAAG,mBAAmB;AACjD;AACA;AACA;AACA;AACA;AACA,SAAS,eAAe,CAAC,UAAU,EAAE;AACrC,IAAI,OAAO,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM;AAC7D,QAAQ,IAAI,EAAE,GAAG;AACjB,QAAQ,KAAK,EAAE,KAAK;AACpB,KAAK,CAAC,CAAC;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,mBAAmB,CAAC,UAAU,EAAE;AACzC,IAAI,MAAM,cAAc,GAAG,EAAE;AAC7B,IAAI,UAAU,EAAE,OAAO,CAAC,SAAS,IAAI;AACrC,QAAQ,IAAI,SAAS,CAAC,IAAI;AAC1B,YAAY,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,KAAK;AAC5D,IAAI,CAAC,CAAC;AACN,IAAI,OAAO,cAAc;AACzB;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"dispatchSignedInHubEvent.js","sources":["../../../../../src/providers/cognito/utils/dispatchSignedInHubEvent.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.dispatchSignedInHubEvent = exports.ERROR_MESSAGE = void 0;\nconst core_1 = require(\"@aws-amplify/core\");\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst getCurrentUser_1 = require(\"../apis/getCurrentUser\");\nconst constants_1 = require(\"../../../errors/constants\");\nconst AuthError_1 = require(\"../../../errors/AuthError\");\nexports.ERROR_MESSAGE = 'Unable to get user session following successful sign-in.';\nconst dispatchSignedInHubEvent = async () => {\n try {\n core_1.Hub.dispatch('auth', {\n event: 'signedIn',\n data: await (0, getCurrentUser_1.getCurrentUser)(),\n }, 'Auth', utils_1.AMPLIFY_SYMBOL);\n }\n catch (error) {\n if (error.name === constants_1.USER_UNAUTHENTICATED_EXCEPTION) {\n throw new AuthError_1.AuthError({\n name: constants_1.UNEXPECTED_SIGN_IN_INTERRUPTION_EXCEPTION,\n message: exports.ERROR_MESSAGE,\n recoverySuggestion: 'This most likely is due to auth tokens not being persisted. If you are using cookie store, please ensure cookies can be correctly set from your server.',\n });\n }\n throw error;\n }\n};\nexports.dispatchSignedInHubEvent = dispatchSignedInHubEvent;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,wBAAwB,GAAG,OAAO,CAAC,aAAa,GAAG,MAAM;AACjE,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;AAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,mCAAmC,CAAC;AAC5D,MAAM,gBAAgB,GAAG,OAAO,CAAC,wBAAwB,CAAC;AAC1D,MAAM,WAAW,GAAG,OAAO,CAAC,2BAA2B,CAAC;AACxD,MAAM,WAAW,GAAG,OAAO,CAAC,2BAA2B,CAAC;AACxD,OAAO,CAAC,aAAa,GAAG,0DAA0D;AAClF,MAAM,wBAAwB,GAAG,YAAY;AAC7C,IAAI,IAAI;AACR,QAAQ,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE;AACpC,YAAY,KAAK,EAAE,UAAU;AAC7B,YAAY,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,gBAAgB,CAAC,cAAc,GAAG;AAC9D,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC;AAC1C;AACA,IAAI,OAAO,KAAK,EAAE;AAClB,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC,8BAA8B,EAAE;AACvE,YAAY,MAAM,IAAI,WAAW,CAAC,SAAS,CAAC;AAC5C,gBAAgB,IAAI,EAAE,WAAW,CAAC,yCAAyC;AAC3E,gBAAgB,OAAO,EAAE,OAAO,CAAC,aAAa;AAC9C,gBAAgB,kBAAkB,EAAE,yJAAyJ;AAC7L,aAAa,CAAC;AACd;AACA,QAAQ,MAAM,KAAK;AACnB;AACA,CAAC;AACD,OAAO,CAAC,wBAAwB,GAAG,wBAAwB;;"}
1
+ {"version":3,"file":"dispatchSignedInHubEvent.js","sources":["../../../../../src/providers/cognito/utils/dispatchSignedInHubEvent.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.dispatchSignedInHubEvent = exports.ERROR_MESSAGE = void 0;\nconst core_1 = require(\"@aws-amplify/core\");\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst getCurrentUser_1 = require(\"../apis/getCurrentUser\");\nconst constants_1 = require(\"../../../errors/constants\");\nconst AuthError_1 = require(\"../../../errors/AuthError\");\nexports.ERROR_MESSAGE = 'Unable to get user session following successful sign-in.';\nconst dispatchSignedInHubEvent = async () => {\n try {\n core_1.Hub.dispatch('auth', {\n event: 'signedIn',\n data: await (0, getCurrentUser_1.getCurrentUser)(),\n }, 'Auth', utils_1.AMPLIFY_SYMBOL);\n }\n catch (error) {\n if (error.name === constants_1.USER_UNAUTHENTICATED_EXCEPTION) {\n throw new AuthError_1.AuthError({\n name: constants_1.UNEXPECTED_SIGN_IN_INTERRUPTION_EXCEPTION,\n message: exports.ERROR_MESSAGE,\n recoverySuggestion: 'This most likely is due to auth tokens not being persisted. If you are using cookie store, please ensure cookies can be correctly set from your server.',\n });\n }\n throw error;\n }\n};\nexports.dispatchSignedInHubEvent = dispatchSignedInHubEvent;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,wBAAwB,GAAG,OAAO,CAAC,aAAa,GAAG,MAAM;AACjE,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;AAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,mCAAmC,CAAC;AAC5D,MAAM,gBAAgB,GAAG,OAAO,CAAC,wBAAwB,CAAC;AAC1D,MAAM,WAAW,GAAG,OAAO,CAAC,2BAA2B,CAAC;AACxD,MAAM,WAAW,GAAG,OAAO,CAAC,2BAA2B,CAAC;AACxD,OAAO,CAAC,aAAa,GAAG,0DAA0D;AAClF,MAAM,wBAAwB,GAAG,YAAY;AAC7C,IAAI,IAAI;AACR,QAAQ,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE;AACpC,YAAY,KAAK,EAAE,UAAU;AAC7B,YAAY,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,gBAAgB,CAAC,cAAc,GAAG;AAC9D,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC;AAC1C,IAAI;AACJ,IAAI,OAAO,KAAK,EAAE;AAClB,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC,8BAA8B,EAAE;AACvE,YAAY,MAAM,IAAI,WAAW,CAAC,SAAS,CAAC;AAC5C,gBAAgB,IAAI,EAAE,WAAW,CAAC,yCAAyC;AAC3E,gBAAgB,OAAO,EAAE,OAAO,CAAC,aAAa;AAC9C,gBAAgB,kBAAkB,EAAE,yJAAyJ;AAC7L,aAAa,CAAC;AACd,QAAQ;AACR,QAAQ,MAAM,KAAK;AACnB,IAAI;AACJ,CAAC;AACD,OAAO,CAAC,wBAAwB,GAAG,wBAAwB;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"getNewDeviceMetadata.js","sources":["../../../../../src/providers/cognito/utils/getNewDeviceMetadata.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getNewDeviceMetadata = getNewDeviceMetadata;\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst cognitoIdentityProvider_1 = require(\"../../../foundation/factories/serviceClients/cognitoIdentityProvider\");\nconst factories_1 = require(\"../factories\");\nconst parsers_1 = require(\"../../../foundation/parsers\");\nconst srp_1 = require(\"./srp\");\n/**\n * This function is used to kick off the device management flow.\n *\n * If an error is thrown while generating a hash device or calling the `ConfirmDevice`\n * client, then this API will ignore the error and return undefined. Otherwise the authentication\n * flow will not complete and the user won't be able to be signed in.\n *\n * @returns DeviceMetadata | undefined\n */\nasync function getNewDeviceMetadata({ userPoolId, userPoolEndpoint, newDeviceMetadata, accessToken, }) {\n if (!newDeviceMetadata)\n return undefined;\n const userPoolName = userPoolId.split('_')[1] || '';\n const authenticationHelper = await (0, srp_1.getAuthenticationHelper)(userPoolName);\n const deviceKey = newDeviceMetadata?.DeviceKey;\n const deviceGroupKey = newDeviceMetadata?.DeviceGroupKey;\n try {\n await authenticationHelper.generateHashDevice(deviceGroupKey ?? '', deviceKey ?? '');\n }\n catch (errGenHash) {\n // TODO: log error here\n return undefined;\n }\n const deviceSecretVerifierConfig = {\n Salt: utils_1.base64Encoder.convert((0, srp_1.getBytesFromHex)(authenticationHelper.getSaltToHashDevices())),\n PasswordVerifier: utils_1.base64Encoder.convert((0, srp_1.getBytesFromHex)(authenticationHelper.getVerifierDevices())),\n };\n const randomPassword = authenticationHelper.getRandomPassword();\n try {\n const confirmDevice = (0, cognitoIdentityProvider_1.createConfirmDeviceClient)({\n endpointResolver: (0, factories_1.createCognitoUserPoolEndpointResolver)({\n endpointOverride: userPoolEndpoint,\n }),\n });\n await confirmDevice({ region: (0, parsers_1.getRegionFromUserPoolId)(userPoolId) }, {\n AccessToken: accessToken,\n DeviceName: await (0, utils_1.getDeviceName)(),\n DeviceKey: newDeviceMetadata?.DeviceKey,\n DeviceSecretVerifierConfig: deviceSecretVerifierConfig,\n });\n return {\n deviceKey,\n deviceGroupKey,\n randomPassword,\n };\n }\n catch (error) {\n // TODO: log error here\n return undefined;\n }\n}\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,oBAAoB,GAAG,oBAAoB;AACnD,MAAM,OAAO,GAAG,OAAO,CAAC,mCAAmC,CAAC;AAC5D,MAAM,yBAAyB,GAAG,OAAO,CAAC,sEAAsE,CAAC;AACjH,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC;AAC3C,MAAM,SAAS,GAAG,OAAO,CAAC,6BAA6B,CAAC;AACxD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,oBAAoB,CAAC,EAAE,UAAU,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,WAAW,GAAG,EAAE;AACvG,IAAI,IAAI,CAAC,iBAAiB;AAC1B,QAAQ,OAAO,SAAS;AACxB,IAAI,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;AACvD,IAAI,MAAM,oBAAoB,GAAG,MAAM,IAAI,KAAK,CAAC,uBAAuB,EAAE,YAAY,CAAC;AACvF,IAAI,MAAM,SAAS,GAAG,iBAAiB,EAAE,SAAS;AAClD,IAAI,MAAM,cAAc,GAAG,iBAAiB,EAAE,cAAc;AAC5D,IAAI,IAAI;AACR,QAAQ,MAAM,oBAAoB,CAAC,kBAAkB,CAAC,cAAc,IAAI,EAAE,EAAE,SAAS,IAAI,EAAE,CAAC;AAC5F;AACA,IAAI,OAAO,UAAU,EAAE;AACvB;AACA,QAAQ,OAAO,SAAS;AACxB;AACA,IAAI,MAAM,0BAA0B,GAAG;AACvC,QAAQ,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,eAAe,EAAE,oBAAoB,CAAC,oBAAoB,EAAE,CAAC,CAAC;AACpH,QAAQ,gBAAgB,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,eAAe,EAAE,oBAAoB,CAAC,kBAAkB,EAAE,CAAC,CAAC;AAC9H,KAAK;AACL,IAAI,MAAM,cAAc,GAAG,oBAAoB,CAAC,iBAAiB,EAAE;AACnE,IAAI,IAAI;AACR,QAAQ,MAAM,aAAa,GAAG,CAAC,CAAC,EAAE,yBAAyB,CAAC,yBAAyB,EAAE;AACvF,YAAY,gBAAgB,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,qCAAqC,EAAE;AACrF,gBAAgB,gBAAgB,EAAE,gBAAgB;AAClD,aAAa,CAAC;AACd,SAAS,CAAC;AACV,QAAQ,MAAM,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,SAAS,CAAC,uBAAuB,EAAE,UAAU,CAAC,EAAE,EAAE;AAC5F,YAAY,WAAW,EAAE,WAAW;AACpC,YAAY,UAAU,EAAE,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,aAAa,GAAG;AAC1D,YAAY,SAAS,EAAE,iBAAiB,EAAE,SAAS;AACnD,YAAY,0BAA0B,EAAE,0BAA0B;AAClE,SAAS,CAAC;AACV,QAAQ,OAAO;AACf,YAAY,SAAS;AACrB,YAAY,cAAc;AAC1B,YAAY,cAAc;AAC1B,SAAS;AACT;AACA,IAAI,OAAO,KAAK,EAAE;AAClB;AACA,QAAQ,OAAO,SAAS;AACxB;AACA;;"}
1
+ {"version":3,"file":"getNewDeviceMetadata.js","sources":["../../../../../src/providers/cognito/utils/getNewDeviceMetadata.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getNewDeviceMetadata = getNewDeviceMetadata;\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst cognitoIdentityProvider_1 = require(\"../../../foundation/factories/serviceClients/cognitoIdentityProvider\");\nconst factories_1 = require(\"../factories\");\nconst parsers_1 = require(\"../../../foundation/parsers\");\nconst srp_1 = require(\"./srp\");\n/**\n * This function is used to kick off the device management flow.\n *\n * If an error is thrown while generating a hash device or calling the `ConfirmDevice`\n * client, then this API will ignore the error and return undefined. Otherwise the authentication\n * flow will not complete and the user won't be able to be signed in.\n *\n * @returns DeviceMetadata | undefined\n */\nasync function getNewDeviceMetadata({ userPoolId, userPoolEndpoint, newDeviceMetadata, accessToken, }) {\n if (!newDeviceMetadata)\n return undefined;\n const userPoolName = userPoolId.split('_')[1] || '';\n const authenticationHelper = await (0, srp_1.getAuthenticationHelper)(userPoolName);\n const deviceKey = newDeviceMetadata?.DeviceKey;\n const deviceGroupKey = newDeviceMetadata?.DeviceGroupKey;\n try {\n await authenticationHelper.generateHashDevice(deviceGroupKey ?? '', deviceKey ?? '');\n }\n catch (errGenHash) {\n // TODO: log error here\n return undefined;\n }\n const deviceSecretVerifierConfig = {\n Salt: utils_1.base64Encoder.convert((0, srp_1.getBytesFromHex)(authenticationHelper.getSaltToHashDevices())),\n PasswordVerifier: utils_1.base64Encoder.convert((0, srp_1.getBytesFromHex)(authenticationHelper.getVerifierDevices())),\n };\n const randomPassword = authenticationHelper.getRandomPassword();\n try {\n const confirmDevice = (0, cognitoIdentityProvider_1.createConfirmDeviceClient)({\n endpointResolver: (0, factories_1.createCognitoUserPoolEndpointResolver)({\n endpointOverride: userPoolEndpoint,\n }),\n });\n await confirmDevice({ region: (0, parsers_1.getRegionFromUserPoolId)(userPoolId) }, {\n AccessToken: accessToken,\n DeviceName: await (0, utils_1.getDeviceName)(),\n DeviceKey: newDeviceMetadata?.DeviceKey,\n DeviceSecretVerifierConfig: deviceSecretVerifierConfig,\n });\n return {\n deviceKey,\n deviceGroupKey,\n randomPassword,\n };\n }\n catch (error) {\n // TODO: log error here\n return undefined;\n }\n}\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,oBAAoB,GAAG,oBAAoB;AACnD,MAAM,OAAO,GAAG,OAAO,CAAC,mCAAmC,CAAC;AAC5D,MAAM,yBAAyB,GAAG,OAAO,CAAC,sEAAsE,CAAC;AACjH,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC;AAC3C,MAAM,SAAS,GAAG,OAAO,CAAC,6BAA6B,CAAC;AACxD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,oBAAoB,CAAC,EAAE,UAAU,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,WAAW,GAAG,EAAE;AACvG,IAAI,IAAI,CAAC,iBAAiB;AAC1B,QAAQ,OAAO,SAAS;AACxB,IAAI,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;AACvD,IAAI,MAAM,oBAAoB,GAAG,MAAM,IAAI,KAAK,CAAC,uBAAuB,EAAE,YAAY,CAAC;AACvF,IAAI,MAAM,SAAS,GAAG,iBAAiB,EAAE,SAAS;AAClD,IAAI,MAAM,cAAc,GAAG,iBAAiB,EAAE,cAAc;AAC5D,IAAI,IAAI;AACR,QAAQ,MAAM,oBAAoB,CAAC,kBAAkB,CAAC,cAAc,IAAI,EAAE,EAAE,SAAS,IAAI,EAAE,CAAC;AAC5F,IAAI;AACJ,IAAI,OAAO,UAAU,EAAE;AACvB;AACA,QAAQ,OAAO,SAAS;AACxB,IAAI;AACJ,IAAI,MAAM,0BAA0B,GAAG;AACvC,QAAQ,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,eAAe,EAAE,oBAAoB,CAAC,oBAAoB,EAAE,CAAC,CAAC;AACpH,QAAQ,gBAAgB,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,eAAe,EAAE,oBAAoB,CAAC,kBAAkB,EAAE,CAAC,CAAC;AAC9H,KAAK;AACL,IAAI,MAAM,cAAc,GAAG,oBAAoB,CAAC,iBAAiB,EAAE;AACnE,IAAI,IAAI;AACR,QAAQ,MAAM,aAAa,GAAG,CAAC,CAAC,EAAE,yBAAyB,CAAC,yBAAyB,EAAE;AACvF,YAAY,gBAAgB,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,qCAAqC,EAAE;AACrF,gBAAgB,gBAAgB,EAAE,gBAAgB;AAClD,aAAa,CAAC;AACd,SAAS,CAAC;AACV,QAAQ,MAAM,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,SAAS,CAAC,uBAAuB,EAAE,UAAU,CAAC,EAAE,EAAE;AAC5F,YAAY,WAAW,EAAE,WAAW;AACpC,YAAY,UAAU,EAAE,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,aAAa,GAAG;AAC1D,YAAY,SAAS,EAAE,iBAAiB,EAAE,SAAS;AACnD,YAAY,0BAA0B,EAAE,0BAA0B;AAClE,SAAS,CAAC;AACV,QAAQ,OAAO;AACf,YAAY,SAAS;AACrB,YAAY,cAAc;AAC1B,YAAY,cAAc;AAC1B,SAAS;AACT,IAAI;AACJ,IAAI,OAAO,KAAK,EAAE;AAClB;AACA,QAAQ,OAAO,SAAS;AACxB,IAAI;AACJ;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"handlePasswordVerifierChallenge.js","sources":["../../../../../src/providers/cognito/utils/handlePasswordVerifierChallenge.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.handlePasswordVerifierChallenge = handlePasswordVerifierChallenge;\nconst AuthError_1 = require(\"../../../errors/AuthError\");\nconst cognitoIdentityProvider_1 = require(\"../../../foundation/factories/serviceClients/cognitoIdentityProvider\");\nconst factories_1 = require(\"../factories\");\nconst parsers_1 = require(\"../../../foundation/parsers\");\nconst srp_1 = require(\"./srp\");\nconst BigInteger_1 = require(\"./srp/BigInteger\");\nconst userContextData_1 = require(\"./userContextData\");\nconst handleDeviceSRPAuth_1 = require(\"./handleDeviceSRPAuth\");\nasync function handlePasswordVerifierChallenge(password, challengeParameters, clientMetadata, session, authenticationHelper, config, tokenOrchestrator) {\n const { userPoolId, userPoolClientId, userPoolEndpoint } = config;\n const userPoolName = userPoolId?.split('_')[1] || '';\n const serverBValue = new BigInteger_1.BigInteger(challengeParameters?.SRP_B, 16);\n const salt = new BigInteger_1.BigInteger(challengeParameters?.SALT, 16);\n const username = challengeParameters?.USER_ID_FOR_SRP;\n if (!username)\n throw new AuthError_1.AuthError({\n name: 'EmptyUserIdForSRPException',\n message: 'USER_ID_FOR_SRP was not found in challengeParameters',\n });\n const hkdf = await authenticationHelper.getPasswordAuthenticationKey({\n username,\n password,\n serverBValue,\n salt,\n });\n const dateNow = (0, srp_1.getNowString)();\n const challengeResponses = {\n USERNAME: username,\n PASSWORD_CLAIM_SECRET_BLOCK: challengeParameters?.SECRET_BLOCK,\n TIMESTAMP: dateNow,\n PASSWORD_CLAIM_SIGNATURE: (0, srp_1.getSignatureString)({\n username,\n userPoolName,\n challengeParameters,\n dateNow,\n hkdf,\n }),\n };\n const deviceMetadata = await tokenOrchestrator.getDeviceMetadata(username);\n if (deviceMetadata && deviceMetadata.deviceKey) {\n challengeResponses.DEVICE_KEY = deviceMetadata.deviceKey;\n }\n const UserContextData = (0, userContextData_1.getUserContextData)({\n username,\n userPoolId,\n userPoolClientId,\n });\n const jsonReqResponseChallenge = {\n ChallengeName: 'PASSWORD_VERIFIER',\n ChallengeResponses: challengeResponses,\n ClientMetadata: clientMetadata,\n Session: session,\n ClientId: userPoolClientId,\n UserContextData,\n };\n const respondToAuthChallenge = (0, cognitoIdentityProvider_1.createRespondToAuthChallengeClient)({\n endpointResolver: (0, factories_1.createCognitoUserPoolEndpointResolver)({\n endpointOverride: userPoolEndpoint,\n }),\n });\n const response = await respondToAuthChallenge({ region: (0, parsers_1.getRegionFromUserPoolId)(userPoolId) }, jsonReqResponseChallenge);\n if (response.ChallengeName === 'DEVICE_SRP_AUTH')\n return (0, handleDeviceSRPAuth_1.handleDeviceSRPAuth)({\n username,\n config,\n clientMetadata,\n session: response.Session,\n tokenOrchestrator,\n });\n return response;\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handlePasswordVerifierChallenge.js","sources":["../../../../../src/providers/cognito/utils/handlePasswordVerifierChallenge.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.handlePasswordVerifierChallenge = handlePasswordVerifierChallenge;\nconst AuthError_1 = require(\"../../../errors/AuthError\");\nconst cognitoIdentityProvider_1 = require(\"../../../foundation/factories/serviceClients/cognitoIdentityProvider\");\nconst factories_1 = require(\"../factories\");\nconst parsers_1 = require(\"../../../foundation/parsers\");\nconst srp_1 = require(\"./srp\");\nconst BigInteger_1 = require(\"./srp/BigInteger\");\nconst userContextData_1 = require(\"./userContextData\");\nconst handleDeviceSRPAuth_1 = require(\"./handleDeviceSRPAuth\");\nasync function handlePasswordVerifierChallenge(password, challengeParameters, clientMetadata, session, authenticationHelper, config, tokenOrchestrator) {\n const { userPoolId, userPoolClientId, userPoolEndpoint } = config;\n const userPoolName = userPoolId?.split('_')[1] || '';\n const serverBValue = new BigInteger_1.BigInteger(challengeParameters?.SRP_B, 16);\n const salt = new BigInteger_1.BigInteger(challengeParameters?.SALT, 16);\n const username = challengeParameters?.USER_ID_FOR_SRP;\n if (!username)\n throw new AuthError_1.AuthError({\n name: 'EmptyUserIdForSRPException',\n message: 'USER_ID_FOR_SRP was not found in challengeParameters',\n });\n const hkdf = await authenticationHelper.getPasswordAuthenticationKey({\n username,\n password,\n serverBValue,\n salt,\n });\n const dateNow = (0, srp_1.getNowString)();\n const challengeResponses = {\n USERNAME: username,\n PASSWORD_CLAIM_SECRET_BLOCK: challengeParameters?.SECRET_BLOCK,\n TIMESTAMP: dateNow,\n PASSWORD_CLAIM_SIGNATURE: (0, srp_1.getSignatureString)({\n username,\n userPoolName,\n challengeParameters,\n dateNow,\n hkdf,\n }),\n };\n const deviceMetadata = await tokenOrchestrator.getDeviceMetadata(username);\n if (deviceMetadata && deviceMetadata.deviceKey) {\n challengeResponses.DEVICE_KEY = deviceMetadata.deviceKey;\n }\n const UserContextData = (0, userContextData_1.getUserContextData)({\n username,\n userPoolId,\n userPoolClientId,\n });\n const jsonReqResponseChallenge = {\n ChallengeName: 'PASSWORD_VERIFIER',\n ChallengeResponses: challengeResponses,\n ClientMetadata: clientMetadata,\n Session: session,\n ClientId: userPoolClientId,\n UserContextData,\n };\n const respondToAuthChallenge = (0, cognitoIdentityProvider_1.createRespondToAuthChallengeClient)({\n endpointResolver: (0, factories_1.createCognitoUserPoolEndpointResolver)({\n endpointOverride: userPoolEndpoint,\n }),\n });\n const response = await respondToAuthChallenge({ region: (0, parsers_1.getRegionFromUserPoolId)(userPoolId) }, jsonReqResponseChallenge);\n if (response.ChallengeName === 'DEVICE_SRP_AUTH')\n return (0, handleDeviceSRPAuth_1.handleDeviceSRPAuth)({\n username,\n config,\n clientMetadata,\n session: response.Session,\n tokenOrchestrator,\n });\n return response;\n}\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"attemptCompleteOAuthFlow.js","sources":["../../../../../../src/providers/cognito/utils/oauth/attemptCompleteOAuthFlow.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.attemptCompleteOAuthFlow = void 0;\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst utils_2 = require(\"../../../../utils\");\nconst oAuthStore_1 = require(\"./oAuthStore\");\nconst completeOAuthFlow_1 = require(\"./completeOAuthFlow\");\nconst getRedirectUrl_1 = require(\"./getRedirectUrl\");\nconst handleFailure_1 = require(\"./handleFailure\");\nconst attemptCompleteOAuthFlow = async (authConfig) => {\n try {\n (0, utils_1.assertTokenProviderConfig)(authConfig);\n (0, utils_1.assertOAuthConfig)(authConfig);\n oAuthStore_1.oAuthStore.setAuthConfig(authConfig);\n }\n catch (_) {\n // no-op\n // This should not happen as Amplify singleton checks the oauth config key\n // unless the oauth config object doesn't contain required properties\n return;\n }\n // No inflight OAuth\n if (!(await oAuthStore_1.oAuthStore.loadOAuthInFlight())) {\n return;\n }\n try {\n const currentUrl = window.location.href;\n const { loginWith, userPoolClientId } = authConfig;\n const { domain, redirectSignIn, responseType } = loginWith.oauth;\n const redirectUri = (0, getRedirectUrl_1.getRedirectUrl)(redirectSignIn);\n await (0, completeOAuthFlow_1.completeOAuthFlow)({\n currentUrl,\n clientId: userPoolClientId,\n domain,\n redirectUri,\n responseType,\n userAgentValue: (0, utils_2.getAuthUserAgentValue)(utils_1.AuthAction.SignInWithRedirect),\n });\n }\n catch (err) {\n await (0, handleFailure_1.handleFailure)(err);\n }\n};\nexports.attemptCompleteOAuthFlow = attemptCompleteOAuthFlow;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,wBAAwB,GAAG,MAAM;AACzC,MAAM,OAAO,GAAG,OAAO,CAAC,mCAAmC,CAAC;AAC5D,MAAM,OAAO,GAAG,OAAO,CAAC,mBAAmB,CAAC;AAC5C,MAAM,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;AAC5C,MAAM,mBAAmB,GAAG,OAAO,CAAC,qBAAqB,CAAC;AAC1D,MAAM,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,CAAC;AACpD,MAAM,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC;AAClD,MAAM,wBAAwB,GAAG,OAAO,UAAU,KAAK;AACvD,IAAI,IAAI;AACR,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,yBAAyB,EAAE,UAAU,CAAC;AAC1D,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,iBAAiB,EAAE,UAAU,CAAC;AAClD,QAAQ,YAAY,CAAC,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC;AACzD;AACA,IAAI,OAAO,CAAC,EAAE;AACd;AACA;AACA;AACA,QAAQ;AACR;AACA;AACA,IAAI,IAAI,EAAE,MAAM,YAAY,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,EAAE;AAC9D,QAAQ;AACR;AACA,IAAI,IAAI;AACR,QAAQ,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI;AAC/C,QAAQ,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAG,UAAU;AAC1D,QAAQ,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,SAAS,CAAC,KAAK;AACxE,QAAQ,MAAM,WAAW,GAAG,CAAC,CAAC,EAAE,gBAAgB,CAAC,cAAc,EAAE,cAAc,CAAC;AAChF,QAAQ,MAAM,CAAC,CAAC,EAAE,mBAAmB,CAAC,iBAAiB,EAAE;AACzD,YAAY,UAAU;AACtB,YAAY,QAAQ,EAAE,gBAAgB;AACtC,YAAY,MAAM;AAClB,YAAY,WAAW;AACvB,YAAY,YAAY;AACxB,YAAY,cAAc,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,qBAAqB,EAAE,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC;AACrG,SAAS,CAAC;AACV;AACA,IAAI,OAAO,GAAG,EAAE;AAChB,QAAQ,MAAM,IAAI,eAAe,CAAC,aAAa,EAAE,GAAG,CAAC;AACrD;AACA,CAAC;AACD,OAAO,CAAC,wBAAwB,GAAG,wBAAwB;;"}
1
+ {"version":3,"file":"attemptCompleteOAuthFlow.js","sources":["../../../../../../src/providers/cognito/utils/oauth/attemptCompleteOAuthFlow.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.attemptCompleteOAuthFlow = void 0;\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst utils_2 = require(\"../../../../utils\");\nconst oAuthStore_1 = require(\"./oAuthStore\");\nconst completeOAuthFlow_1 = require(\"./completeOAuthFlow\");\nconst getRedirectUrl_1 = require(\"./getRedirectUrl\");\nconst handleFailure_1 = require(\"./handleFailure\");\nconst attemptCompleteOAuthFlow = async (authConfig) => {\n try {\n (0, utils_1.assertTokenProviderConfig)(authConfig);\n (0, utils_1.assertOAuthConfig)(authConfig);\n oAuthStore_1.oAuthStore.setAuthConfig(authConfig);\n }\n catch (_) {\n // no-op\n // This should not happen as Amplify singleton checks the oauth config key\n // unless the oauth config object doesn't contain required properties\n return;\n }\n // No inflight OAuth\n if (!(await oAuthStore_1.oAuthStore.loadOAuthInFlight())) {\n return;\n }\n try {\n const currentUrl = window.location.href;\n const { loginWith, userPoolClientId } = authConfig;\n const { domain, redirectSignIn, responseType } = loginWith.oauth;\n const redirectUri = (0, getRedirectUrl_1.getRedirectUrl)(redirectSignIn);\n await (0, completeOAuthFlow_1.completeOAuthFlow)({\n currentUrl,\n clientId: userPoolClientId,\n domain,\n redirectUri,\n responseType,\n userAgentValue: (0, utils_2.getAuthUserAgentValue)(utils_1.AuthAction.SignInWithRedirect),\n });\n }\n catch (err) {\n await (0, handleFailure_1.handleFailure)(err);\n }\n};\nexports.attemptCompleteOAuthFlow = attemptCompleteOAuthFlow;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,wBAAwB,GAAG,MAAM;AACzC,MAAM,OAAO,GAAG,OAAO,CAAC,mCAAmC,CAAC;AAC5D,MAAM,OAAO,GAAG,OAAO,CAAC,mBAAmB,CAAC;AAC5C,MAAM,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;AAC5C,MAAM,mBAAmB,GAAG,OAAO,CAAC,qBAAqB,CAAC;AAC1D,MAAM,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,CAAC;AACpD,MAAM,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC;AAClD,MAAM,wBAAwB,GAAG,OAAO,UAAU,KAAK;AACvD,IAAI,IAAI;AACR,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,yBAAyB,EAAE,UAAU,CAAC;AAC1D,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,iBAAiB,EAAE,UAAU,CAAC;AAClD,QAAQ,YAAY,CAAC,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC;AACzD,IAAI;AACJ,IAAI,OAAO,CAAC,EAAE;AACd;AACA;AACA;AACA,QAAQ;AACR,IAAI;AACJ;AACA,IAAI,IAAI,EAAE,MAAM,YAAY,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,EAAE;AAC9D,QAAQ;AACR,IAAI;AACJ,IAAI,IAAI;AACR,QAAQ,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI;AAC/C,QAAQ,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAG,UAAU;AAC1D,QAAQ,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,SAAS,CAAC,KAAK;AACxE,QAAQ,MAAM,WAAW,GAAG,CAAC,CAAC,EAAE,gBAAgB,CAAC,cAAc,EAAE,cAAc,CAAC;AAChF,QAAQ,MAAM,CAAC,CAAC,EAAE,mBAAmB,CAAC,iBAAiB,EAAE;AACzD,YAAY,UAAU;AACtB,YAAY,QAAQ,EAAE,gBAAgB;AACtC,YAAY,MAAM;AAClB,YAAY,WAAW;AACvB,YAAY,YAAY;AACxB,YAAY,cAAc,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,qBAAqB,EAAE,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC;AACrG,SAAS,CAAC;AACV,IAAI;AACJ,IAAI,OAAO,GAAG,EAAE;AAChB,QAAQ,MAAM,IAAI,eAAe,CAAC,aAAa,EAAE,GAAG,CAAC;AACrD,IAAI;AACJ,CAAC;AACD,OAAO,CAAC,wBAAwB,GAAG,wBAAwB;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"cancelOAuthFlow.js","sources":["../../../../../../src/providers/cognito/utils/oauth/cancelOAuthFlow.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.listenForOAuthFlowCancellation = void 0;\nconst createOAuthError_1 = require(\"./createOAuthError\");\nconst handleFailure_1 = require(\"./handleFailure\");\nconst listenForOAuthFlowCancellation = (store) => {\n async function handleCancelOAuthFlow(event) {\n const isBfcache = event.persisted;\n if (isBfcache && (await store.loadOAuthInFlight())) {\n const error = (0, createOAuthError_1.createOAuthError)('User cancelled OAuth flow.');\n await (0, handleFailure_1.handleFailure)(error);\n }\n window.removeEventListener('pageshow', handleCancelOAuthFlow);\n }\n window.addEventListener('pageshow', handleCancelOAuthFlow);\n};\nexports.listenForOAuthFlowCancellation = listenForOAuthFlowCancellation;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,8BAA8B,GAAG,MAAM;AAC/C,MAAM,kBAAkB,GAAG,OAAO,CAAC,oBAAoB,CAAC;AACxD,MAAM,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC;AAClD,MAAM,8BAA8B,GAAG,CAAC,KAAK,KAAK;AAClD,IAAI,eAAe,qBAAqB,CAAC,KAAK,EAAE;AAChD,QAAQ,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS;AACzC,QAAQ,IAAI,SAAS,KAAK,MAAM,KAAK,CAAC,iBAAiB,EAAE,CAAC,EAAE;AAC5D,YAAY,MAAM,KAAK,GAAG,IAAI,kBAAkB,CAAC,gBAAgB,EAAE,4BAA4B,CAAC;AAChG,YAAY,MAAM,IAAI,eAAe,CAAC,aAAa,EAAE,KAAK,CAAC;AAC3D;AACA,QAAQ,MAAM,CAAC,mBAAmB,CAAC,UAAU,EAAE,qBAAqB,CAAC;AACrE;AACA,IAAI,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,qBAAqB,CAAC;AAC9D,CAAC;AACD,OAAO,CAAC,8BAA8B,GAAG,8BAA8B;;"}
1
+ {"version":3,"file":"cancelOAuthFlow.js","sources":["../../../../../../src/providers/cognito/utils/oauth/cancelOAuthFlow.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.listenForOAuthFlowCancellation = void 0;\nconst createOAuthError_1 = require(\"./createOAuthError\");\nconst handleFailure_1 = require(\"./handleFailure\");\nconst listenForOAuthFlowCancellation = (store) => {\n async function handleCancelOAuthFlow(event) {\n const isBfcache = event.persisted;\n if (isBfcache && (await store.loadOAuthInFlight())) {\n const error = (0, createOAuthError_1.createOAuthError)('User cancelled OAuth flow.');\n await (0, handleFailure_1.handleFailure)(error);\n }\n window.removeEventListener('pageshow', handleCancelOAuthFlow);\n }\n window.addEventListener('pageshow', handleCancelOAuthFlow);\n};\nexports.listenForOAuthFlowCancellation = listenForOAuthFlowCancellation;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,8BAA8B,GAAG,MAAM;AAC/C,MAAM,kBAAkB,GAAG,OAAO,CAAC,oBAAoB,CAAC;AACxD,MAAM,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC;AAClD,MAAM,8BAA8B,GAAG,CAAC,KAAK,KAAK;AAClD,IAAI,eAAe,qBAAqB,CAAC,KAAK,EAAE;AAChD,QAAQ,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS;AACzC,QAAQ,IAAI,SAAS,KAAK,MAAM,KAAK,CAAC,iBAAiB,EAAE,CAAC,EAAE;AAC5D,YAAY,MAAM,KAAK,GAAG,IAAI,kBAAkB,CAAC,gBAAgB,EAAE,4BAA4B,CAAC;AAChG,YAAY,MAAM,IAAI,eAAe,CAAC,aAAa,EAAE,KAAK,CAAC;AAC3D,QAAQ;AACR,QAAQ,MAAM,CAAC,mBAAmB,CAAC,UAAU,EAAE,qBAAqB,CAAC;AACrE,IAAI;AACJ,IAAI,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,qBAAqB,CAAC;AAC9D,CAAC;AACD,OAAO,CAAC,8BAA8B,GAAG,8BAA8B;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"completeOAuthFlow.js","sources":["../../../../../../src/providers/cognito/utils/oauth/completeOAuthFlow.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.completeOAuthFlow = void 0;\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst core_1 = require(\"@aws-amplify/core\");\nconst cacheTokens_1 = require(\"../../tokenProvider/cacheTokens\");\nconst dispatchSignedInHubEvent_1 = require(\"../dispatchSignedInHubEvent\");\nconst tokenProvider_1 = require(\"../../tokenProvider\");\nconst createOAuthError_1 = require(\"./createOAuthError\");\nconst inflightPromise_1 = require(\"./inflightPromise\");\nconst validateState_1 = require(\"./validateState\");\nconst oAuthStore_1 = require(\"./oAuthStore\");\nconst completeOAuthFlow = async ({ currentUrl, userAgentValue, clientId, redirectUri, responseType, domain, preferPrivateSession, }) => {\n const urlParams = new utils_1.AmplifyUrl(currentUrl);\n const error = urlParams.searchParams.get('error');\n const errorMessage = urlParams.searchParams.get('error_description');\n if (error) {\n throw (0, createOAuthError_1.createOAuthError)(errorMessage ?? error);\n }\n if (responseType === 'code') {\n return handleCodeFlow({\n currentUrl,\n userAgentValue,\n clientId,\n redirectUri,\n domain,\n preferPrivateSession,\n });\n }\n return handleImplicitFlow({\n currentUrl,\n redirectUri,\n preferPrivateSession,\n });\n};\nexports.completeOAuthFlow = completeOAuthFlow;\nconst handleCodeFlow = async ({ currentUrl, userAgentValue, clientId, redirectUri, domain, preferPrivateSession, }) => {\n /* Convert URL into an object with parameters as keys\n{ redirect_uri: 'http://localhost:3000/', response_type: 'code', ...} */\n const url = new utils_1.AmplifyUrl(currentUrl);\n const code = url.searchParams.get('code');\n const state = url.searchParams.get('state');\n // if `code` or `state` is not presented in the redirect url, most likely\n // that the end user cancelled the inflight oauth flow by:\n // 1. clicking the back button of browser\n // 2. closing the provider hosted UI page and coming back to the app\n if (!code || !state) {\n throw (0, createOAuthError_1.createOAuthError)('User cancelled OAuth flow.');\n }\n // may throw error is being caught in attemptCompleteOAuthFlow.ts\n const validatedState = await (0, validateState_1.validateState)(state);\n const oAuthTokenEndpoint = 'https://' + domain + '/oauth2/token';\n // TODO(v6): check hub events\n // dispatchAuthEvent(\n // \t'codeFlow',\n // \t{},\n // \t`Retrieving tokens from ${oAuthTokenEndpoint}`\n // );\n const codeVerifier = await oAuthStore_1.oAuthStore.loadPKCE();\n const oAuthTokenBody = {\n grant_type: 'authorization_code',\n code,\n client_id: clientId,\n redirect_uri: redirectUri,\n ...(codeVerifier ? { code_verifier: codeVerifier } : {}),\n };\n const body = Object.entries(oAuthTokenBody)\n .map(([k, v]) => `${encodeURIComponent(k)}=${encodeURIComponent(v)}`)\n .join('&');\n const { access_token, refresh_token: refreshToken, id_token, error, error_message: errorMessage, token_type, expires_in, } = await (await fetch(oAuthTokenEndpoint, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded',\n [utils_1.USER_AGENT_HEADER]: userAgentValue,\n },\n body,\n })).json();\n if (error) {\n // error is being caught in attemptCompleteOAuthFlow.ts\n throw (0, createOAuthError_1.createOAuthError)(errorMessage ?? error);\n }\n const username = (access_token && (0, core_1.decodeJWT)(access_token).payload.username) ?? 'username';\n await (0, cacheTokens_1.cacheCognitoTokens)({\n username,\n AccessToken: access_token,\n IdToken: id_token,\n RefreshToken: refreshToken,\n TokenType: token_type,\n ExpiresIn: expires_in,\n });\n return completeFlow({\n redirectUri,\n state: validatedState,\n preferPrivateSession,\n });\n};\nconst handleImplicitFlow = async ({ currentUrl, redirectUri, preferPrivateSession, }) => {\n // hash is `null` if `#` doesn't exist on URL\n const url = new utils_1.AmplifyUrl(currentUrl);\n const { id_token, access_token, state, token_type, expires_in, error_description, error, } = (url.hash ?? '#')\n .substring(1) // Remove # from returned code\n .split('&')\n .map(pairings => pairings.split('='))\n .reduce((accum, [k, v]) => ({ ...accum, [k]: v }), {\n id_token: undefined,\n access_token: undefined,\n state: undefined,\n token_type: undefined,\n expires_in: undefined,\n error_description: undefined,\n error: undefined,\n });\n if (error) {\n throw (0, createOAuthError_1.createOAuthError)(error_description ?? error);\n }\n if (!access_token) {\n // error is being caught in attemptCompleteOAuthFlow.ts\n throw (0, createOAuthError_1.createOAuthError)('No access token returned from OAuth flow.');\n }\n const validatedState = await (0, validateState_1.validateState)(state);\n const username = (access_token && (0, core_1.decodeJWT)(access_token).payload.username) ?? 'username';\n await (0, cacheTokens_1.cacheCognitoTokens)({\n username,\n AccessToken: access_token,\n IdToken: id_token,\n TokenType: token_type,\n ExpiresIn: expires_in,\n });\n return completeFlow({\n redirectUri,\n state: validatedState,\n preferPrivateSession,\n });\n};\nconst completeFlow = async ({ redirectUri, state, preferPrivateSession, }) => {\n await tokenProvider_1.tokenOrchestrator.setOAuthMetadata({\n oauthSignIn: true,\n });\n await oAuthStore_1.oAuthStore.clearOAuthData();\n await oAuthStore_1.oAuthStore.storeOAuthSignIn(true, preferPrivateSession);\n // this should be called before any call that involves `fetchAuthSession`\n // e.g. `getCurrentUser()` below, so it allows every inflight async calls to\n // `fetchAuthSession` can be resolved\n (0, inflightPromise_1.resolveAndClearInflightPromises)();\n // clear history before sending out final Hub events\n clearHistory(redirectUri);\n if (isCustomState(state)) {\n core_1.Hub.dispatch('auth', {\n event: 'customOAuthState',\n data: (0, utils_1.urlSafeDecode)(getCustomState(state)),\n }, 'Auth', utils_1.AMPLIFY_SYMBOL);\n }\n core_1.Hub.dispatch('auth', { event: 'signInWithRedirect' }, 'Auth', utils_1.AMPLIFY_SYMBOL);\n await (0, dispatchSignedInHubEvent_1.dispatchSignedInHubEvent)();\n};\nconst isCustomState = (state) => {\n return /-/.test(state);\n};\nconst getCustomState = (state) => {\n return state.split('-').splice(1).join('-');\n};\nconst clearHistory = (redirectUri) => {\n if (typeof window !== 'undefined' && typeof window.history !== 'undefined') {\n window.history.replaceState(window.history.state, '', redirectUri);\n }\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"completeOAuthFlow.js","sources":["../../../../../../src/providers/cognito/utils/oauth/completeOAuthFlow.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.completeOAuthFlow = void 0;\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst core_1 = require(\"@aws-amplify/core\");\nconst cacheTokens_1 = require(\"../../tokenProvider/cacheTokens\");\nconst dispatchSignedInHubEvent_1 = require(\"../dispatchSignedInHubEvent\");\nconst tokenProvider_1 = require(\"../../tokenProvider\");\nconst createOAuthError_1 = require(\"./createOAuthError\");\nconst inflightPromise_1 = require(\"./inflightPromise\");\nconst validateState_1 = require(\"./validateState\");\nconst oAuthStore_1 = require(\"./oAuthStore\");\nconst completeOAuthFlow = async ({ currentUrl, userAgentValue, clientId, redirectUri, responseType, domain, preferPrivateSession, }) => {\n const urlParams = new utils_1.AmplifyUrl(currentUrl);\n const error = urlParams.searchParams.get('error');\n const errorMessage = urlParams.searchParams.get('error_description');\n if (error) {\n throw (0, createOAuthError_1.createOAuthError)(errorMessage ?? error);\n }\n if (responseType === 'code') {\n return handleCodeFlow({\n currentUrl,\n userAgentValue,\n clientId,\n redirectUri,\n domain,\n preferPrivateSession,\n });\n }\n return handleImplicitFlow({\n currentUrl,\n redirectUri,\n preferPrivateSession,\n });\n};\nexports.completeOAuthFlow = completeOAuthFlow;\nconst handleCodeFlow = async ({ currentUrl, userAgentValue, clientId, redirectUri, domain, preferPrivateSession, }) => {\n /* Convert URL into an object with parameters as keys\n{ redirect_uri: 'http://localhost:3000/', response_type: 'code', ...} */\n const url = new utils_1.AmplifyUrl(currentUrl);\n const code = url.searchParams.get('code');\n const state = url.searchParams.get('state');\n // if `code` or `state` is not presented in the redirect url, most likely\n // that the end user cancelled the inflight oauth flow by:\n // 1. clicking the back button of browser\n // 2. closing the provider hosted UI page and coming back to the app\n if (!code || !state) {\n throw (0, createOAuthError_1.createOAuthError)('User cancelled OAuth flow.');\n }\n // may throw error is being caught in attemptCompleteOAuthFlow.ts\n const validatedState = await (0, validateState_1.validateState)(state);\n const oAuthTokenEndpoint = 'https://' + domain + '/oauth2/token';\n // TODO(v6): check hub events\n // dispatchAuthEvent(\n // \t'codeFlow',\n // \t{},\n // \t`Retrieving tokens from ${oAuthTokenEndpoint}`\n // );\n const codeVerifier = await oAuthStore_1.oAuthStore.loadPKCE();\n const oAuthTokenBody = {\n grant_type: 'authorization_code',\n code,\n client_id: clientId,\n redirect_uri: redirectUri,\n ...(codeVerifier ? { code_verifier: codeVerifier } : {}),\n };\n const body = Object.entries(oAuthTokenBody)\n .map(([k, v]) => `${encodeURIComponent(k)}=${encodeURIComponent(v)}`)\n .join('&');\n const { access_token, refresh_token: refreshToken, id_token, error, error_message: errorMessage, token_type, expires_in, } = await (await fetch(oAuthTokenEndpoint, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded',\n [utils_1.USER_AGENT_HEADER]: userAgentValue,\n },\n body,\n })).json();\n if (error) {\n // error is being caught in attemptCompleteOAuthFlow.ts\n throw (0, createOAuthError_1.createOAuthError)(errorMessage ?? error);\n }\n const username = (access_token && (0, core_1.decodeJWT)(access_token).payload.username) ?? 'username';\n await (0, cacheTokens_1.cacheCognitoTokens)({\n username,\n AccessToken: access_token,\n IdToken: id_token,\n RefreshToken: refreshToken,\n TokenType: token_type,\n ExpiresIn: expires_in,\n });\n return completeFlow({\n redirectUri,\n state: validatedState,\n preferPrivateSession,\n });\n};\nconst handleImplicitFlow = async ({ currentUrl, redirectUri, preferPrivateSession, }) => {\n // hash is `null` if `#` doesn't exist on URL\n const url = new utils_1.AmplifyUrl(currentUrl);\n const { id_token, access_token, state, token_type, expires_in, error_description, error, } = (url.hash ?? '#')\n .substring(1) // Remove # from returned code\n .split('&')\n .map(pairings => pairings.split('='))\n .reduce((accum, [k, v]) => ({ ...accum, [k]: v }), {\n id_token: undefined,\n access_token: undefined,\n state: undefined,\n token_type: undefined,\n expires_in: undefined,\n error_description: undefined,\n error: undefined,\n });\n if (error) {\n throw (0, createOAuthError_1.createOAuthError)(error_description ?? error);\n }\n if (!access_token) {\n // error is being caught in attemptCompleteOAuthFlow.ts\n throw (0, createOAuthError_1.createOAuthError)('No access token returned from OAuth flow.');\n }\n const validatedState = await (0, validateState_1.validateState)(state);\n const username = (access_token && (0, core_1.decodeJWT)(access_token).payload.username) ?? 'username';\n await (0, cacheTokens_1.cacheCognitoTokens)({\n username,\n AccessToken: access_token,\n IdToken: id_token,\n TokenType: token_type,\n ExpiresIn: expires_in,\n });\n return completeFlow({\n redirectUri,\n state: validatedState,\n preferPrivateSession,\n });\n};\nconst completeFlow = async ({ redirectUri, state, preferPrivateSession, }) => {\n await tokenProvider_1.tokenOrchestrator.setOAuthMetadata({\n oauthSignIn: true,\n });\n await oAuthStore_1.oAuthStore.clearOAuthData();\n await oAuthStore_1.oAuthStore.storeOAuthSignIn(true, preferPrivateSession);\n // this should be called before any call that involves `fetchAuthSession`\n // e.g. `getCurrentUser()` below, so it allows every inflight async calls to\n // `fetchAuthSession` can be resolved\n (0, inflightPromise_1.resolveAndClearInflightPromises)();\n // clear history before sending out final Hub events\n clearHistory(redirectUri);\n if (isCustomState(state)) {\n core_1.Hub.dispatch('auth', {\n event: 'customOAuthState',\n data: (0, utils_1.urlSafeDecode)(getCustomState(state)),\n }, 'Auth', utils_1.AMPLIFY_SYMBOL);\n }\n core_1.Hub.dispatch('auth', { event: 'signInWithRedirect' }, 'Auth', utils_1.AMPLIFY_SYMBOL);\n await (0, dispatchSignedInHubEvent_1.dispatchSignedInHubEvent)();\n};\nconst isCustomState = (state) => {\n return /-/.test(state);\n};\nconst getCustomState = (state) => {\n return state.split('-').splice(1).join('-');\n};\nconst clearHistory = (redirectUri) => {\n if (typeof window !== 'undefined' && typeof window.history !== 'undefined') {\n window.history.replaceState(window.history.state, '', redirectUri);\n }\n};\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,iBAAiB,GAAG,MAAM;AAClC,MAAM,OAAO,GAAG,OAAO,CAAC,mCAAmC,CAAC;AAC5D,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;AAC3C,MAAM,aAAa,GAAG,OAAO,CAAC,iCAAiC,CAAC;AAChE,MAAM,0BAA0B,GAAG,OAAO,CAAC,6BAA6B,CAAC;AACzE,MAAM,eAAe,GAAG,OAAO,CAAC,qBAAqB,CAAC;AACtD,MAAM,kBAAkB,GAAG,OAAO,CAAC,oBAAoB,CAAC;AACxD,MAAM,iBAAiB,GAAG,OAAO,CAAC,mBAAmB,CAAC;AACtD,MAAM,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC;AAClD,MAAM,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;AAC5C,MAAM,iBAAiB,GAAG,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,oBAAoB,GAAG,KAAK;AACxI,IAAI,MAAM,SAAS,GAAG,IAAI,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC;AACxD,IAAI,MAAM,KAAK,GAAG,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC;AACrD,IAAI,MAAM,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,mBAAmB,CAAC;AACxE,IAAI,IAAI,KAAK,EAAE;AACf,QAAQ,MAAM,IAAI,kBAAkB,CAAC,gBAAgB,EAAE,YAAY,IAAI,KAAK,CAAC;AAC7E,IAAI;AACJ,IAAI,IAAI,YAAY,KAAK,MAAM,EAAE;AACjC,QAAQ,OAAO,cAAc,CAAC;AAC9B,YAAY,UAAU;AACtB,YAAY,cAAc;AAC1B,YAAY,QAAQ;AACpB,YAAY,WAAW;AACvB,YAAY,MAAM;AAClB,YAAY,oBAAoB;AAChC,SAAS,CAAC;AACV,IAAI;AACJ,IAAI,OAAO,kBAAkB,CAAC;AAC9B,QAAQ,UAAU;AAClB,QAAQ,WAAW;AACnB,QAAQ,oBAAoB;AAC5B,KAAK,CAAC;AACN,CAAC;AACD,OAAO,CAAC,iBAAiB,GAAG,iBAAiB;AAC7C,MAAM,cAAc,GAAG,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,oBAAoB,GAAG,KAAK;AACvH;AACA;AACA,IAAI,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC;AAClD,IAAI,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC;AAC7C,IAAI,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC;AAC/C;AACA;AACA;AACA;AACA,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE;AACzB,QAAQ,MAAM,IAAI,kBAAkB,CAAC,gBAAgB,EAAE,4BAA4B,CAAC;AACpF,IAAI;AACJ;AACA,IAAI,MAAM,cAAc,GAAG,MAAM,IAAI,eAAe,CAAC,aAAa,EAAE,KAAK,CAAC;AAC1E,IAAI,MAAM,kBAAkB,GAAG,UAAU,GAAG,MAAM,GAAG,eAAe;AACpE;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,QAAQ,EAAE;AACjE,IAAI,MAAM,cAAc,GAAG;AAC3B,QAAQ,UAAU,EAAE,oBAAoB;AACxC,QAAQ,IAAI;AACZ,QAAQ,SAAS,EAAE,QAAQ;AAC3B,QAAQ,YAAY,EAAE,WAAW;AACjC,QAAQ,IAAI,YAAY,GAAG,EAAE,aAAa,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC;AAChE,KAAK;AACL,IAAI,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,cAAc;AAC9C,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5E,SAAS,IAAI,CAAC,GAAG,CAAC;AAClB,IAAI,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,GAAG,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC,kBAAkB,EAAE;AACxK,QAAQ,MAAM,EAAE,MAAM;AACtB,QAAQ,OAAO,EAAE;AACjB,YAAY,cAAc,EAAE,mCAAmC;AAC/D,YAAY,CAAC,OAAO,CAAC,iBAAiB,GAAG,cAAc;AACvD,SAAS;AACT,QAAQ,IAAI;AACZ,KAAK,CAAC,EAAE,IAAI,EAAE;AACd,IAAI,IAAI,KAAK,EAAE;AACf;AACA,QAAQ,MAAM,IAAI,kBAAkB,CAAC,gBAAgB,EAAE,YAAY,IAAI,KAAK,CAAC;AAC7E,IAAI;AACJ,IAAI,MAAM,QAAQ,GAAG,CAAC,YAAY,IAAI,IAAI,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,OAAO,CAAC,QAAQ,KAAK,UAAU;AACzG,IAAI,MAAM,IAAI,aAAa,CAAC,kBAAkB,EAAE;AAChD,QAAQ,QAAQ;AAChB,QAAQ,WAAW,EAAE,YAAY;AACjC,QAAQ,OAAO,EAAE,QAAQ;AACzB,QAAQ,YAAY,EAAE,YAAY;AAClC,QAAQ,SAAS,EAAE,UAAU;AAC7B,QAAQ,SAAS,EAAE,UAAU;AAC7B,KAAK,CAAC;AACN,IAAI,OAAO,YAAY,CAAC;AACxB,QAAQ,WAAW;AACnB,QAAQ,KAAK,EAAE,cAAc;AAC7B,QAAQ,oBAAoB;AAC5B,KAAK,CAAC;AACN,CAAC;AACD,MAAM,kBAAkB,GAAG,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,oBAAoB,GAAG,KAAK;AACzF;AACA,IAAI,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC;AAClD,IAAI,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,iBAAiB,EAAE,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG;AACjH,SAAS,SAAS,CAAC,CAAC,CAAC;AACrB,SAAS,KAAK,CAAC,GAAG;AAClB,SAAS,GAAG,CAAC,QAAQ,IAAI,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC;AAC5C,SAAS,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;AAC3D,QAAQ,QAAQ,EAAE,SAAS;AAC3B,QAAQ,YAAY,EAAE,SAAS;AAC/B,QAAQ,KAAK,EAAE,SAAS;AACxB,QAAQ,UAAU,EAAE,SAAS;AAC7B,QAAQ,UAAU,EAAE,SAAS;AAC7B,QAAQ,iBAAiB,EAAE,SAAS;AACpC,QAAQ,KAAK,EAAE,SAAS;AACxB,KAAK,CAAC;AACN,IAAI,IAAI,KAAK,EAAE;AACf,QAAQ,MAAM,IAAI,kBAAkB,CAAC,gBAAgB,EAAE,iBAAiB,IAAI,KAAK,CAAC;AAClF,IAAI;AACJ,IAAI,IAAI,CAAC,YAAY,EAAE;AACvB;AACA,QAAQ,MAAM,IAAI,kBAAkB,CAAC,gBAAgB,EAAE,2CAA2C,CAAC;AACnG,IAAI;AACJ,IAAI,MAAM,cAAc,GAAG,MAAM,IAAI,eAAe,CAAC,aAAa,EAAE,KAAK,CAAC;AAC1E,IAAI,MAAM,QAAQ,GAAG,CAAC,YAAY,IAAI,IAAI,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,OAAO,CAAC,QAAQ,KAAK,UAAU;AACzG,IAAI,MAAM,IAAI,aAAa,CAAC,kBAAkB,EAAE;AAChD,QAAQ,QAAQ;AAChB,QAAQ,WAAW,EAAE,YAAY;AACjC,QAAQ,OAAO,EAAE,QAAQ;AACzB,QAAQ,SAAS,EAAE,UAAU;AAC7B,QAAQ,SAAS,EAAE,UAAU;AAC7B,KAAK,CAAC;AACN,IAAI,OAAO,YAAY,CAAC;AACxB,QAAQ,WAAW;AACnB,QAAQ,KAAK,EAAE,cAAc;AAC7B,QAAQ,oBAAoB;AAC5B,KAAK,CAAC;AACN,CAAC;AACD,MAAM,YAAY,GAAG,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,oBAAoB,GAAG,KAAK;AAC9E,IAAI,MAAM,eAAe,CAAC,iBAAiB,CAAC,gBAAgB,CAAC;AAC7D,QAAQ,WAAW,EAAE,IAAI;AACzB,KAAK,CAAC;AACN,IAAI,MAAM,YAAY,CAAC,UAAU,CAAC,cAAc,EAAE;AAClD,IAAI,MAAM,YAAY,CAAC,UAAU,CAAC,gBAAgB,CAAC,IAAI,EAAE,oBAAoB,CAAC;AAC9E;AACA;AACA;AACA,IAAI,IAAI,iBAAiB,CAAC,+BAA+B,GAAG;AAC5D;AACA,IAAI,YAAY,CAAC,WAAW,CAAC;AAC7B,IAAI,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE;AAC9B,QAAQ,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE;AACpC,YAAY,KAAK,EAAE,kBAAkB;AACrC,YAAY,IAAI,EAAE,IAAI,OAAO,CAAC,aAAa,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;AACnE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC;AAC1C,IAAI;AACJ,IAAI,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,oBAAoB,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC;AAChG,IAAI,MAAM,IAAI,0BAA0B,CAAC,wBAAwB,GAAG;AACpE,CAAC;AACD,MAAM,aAAa,GAAG,CAAC,KAAK,KAAK;AACjC,IAAI,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;AAC1B,CAAC;AACD,MAAM,cAAc,GAAG,CAAC,KAAK,KAAK;AAClC,IAAI,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;AAC/C,CAAC;AACD,MAAM,YAAY,GAAG,CAAC,WAAW,KAAK;AACtC,IAAI,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,WAAW,EAAE;AAChF,QAAQ,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,EAAE,WAAW,CAAC;AAC1E,IAAI;AACJ,CAAC;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"enableOAuthListener.js","sources":["../../../../../../src/providers/cognito/utils/oauth/enableOAuthListener.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst core_1 = require(\"@aws-amplify/core\");\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst attemptCompleteOAuthFlow_1 = require(\"./attemptCompleteOAuthFlow\");\n// attach the side effect for handling the completion of an inflight oauth flow\n// this side effect works only on Web\n(0, utils_1.isBrowser)() &&\n (() => {\n // add the listener to the singleton for triggering\n core_1.Amplify[utils_1.ADD_OAUTH_LISTENER](attemptCompleteOAuthFlow_1.attemptCompleteOAuthFlow);\n })();\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;AAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,mCAAmC,CAAC;AAC5D,MAAM,0BAA0B,GAAG,OAAO,CAAC,4BAA4B,CAAC;AACxE;AACA;AACA,IAAI,OAAO,CAAC,SAAS,GAAG;AACxB,IAAI,CAAC,MAAM;AACX;AACA,QAAQ,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,0BAA0B,CAAC,wBAAwB,CAAC;AACvG,KAAK,GAAG;;"}
1
+ {"version":3,"file":"enableOAuthListener.js","sources":["../../../../../../src/providers/cognito/utils/oauth/enableOAuthListener.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst core_1 = require(\"@aws-amplify/core\");\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst attemptCompleteOAuthFlow_1 = require(\"./attemptCompleteOAuthFlow\");\n// attach the side effect for handling the completion of an inflight oauth flow\n// this side effect works only on Web\n(0, utils_1.isBrowser)() &&\n (() => {\n // add the listener to the singleton for triggering\n core_1.Amplify[utils_1.ADD_OAUTH_LISTENER](attemptCompleteOAuthFlow_1.attemptCompleteOAuthFlow);\n })();\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;AAC3C,MAAM,OAAO,GAAG,OAAO,CAAC,mCAAmC,CAAC;AAC5D,MAAM,0BAA0B,GAAG,OAAO,CAAC,4BAA4B,CAAC;AACxE;AACA;AACA,IAAI,OAAO,CAAC,SAAS,GAAG;AACxB,IAAI,CAAC,MAAM;AACX;AACA,QAAQ,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,0BAA0B,CAAC,wBAAwB,CAAC;AACvG,IAAI,CAAC,GAAG;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"generateCodeVerifier.js","sources":["../../../../../../src/providers/cognito/utils/oauth/generateCodeVerifier.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.generateCodeVerifier = void 0;\nconst sha256_js_1 = require(\"@aws-crypto/sha256-js\");\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst CODE_VERIFIER_CHARSET = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\n/**\n *\n * @param length Desired length of the code verifier.\n *\n * **NOTE:** According to the [RFC 7636](https://datatracker.ietf.org/doc/html/rfc7636#section-4.1)\n * A code verifier must be with a length >= 43 and <= 128.\n *\n * @returns An object that contains the generated `codeVerifier` and a method\n * `toCodeChallenge` to generate the code challenge from the `codeVerifier`\n * following the spec of [RFC 7636](https://datatracker.ietf.org/doc/html/rfc7636#section-4.2).\n */\nconst generateCodeVerifier = (length) => {\n const randomBytes = new Uint8Array(length);\n (0, utils_1.getCrypto)().getRandomValues(randomBytes);\n let value = '';\n let codeChallenge;\n for (const byte of randomBytes) {\n value += CODE_VERIFIER_CHARSET.charAt(byte % CODE_VERIFIER_CHARSET.length);\n }\n return {\n value,\n method: 'S256',\n toCodeChallenge() {\n if (codeChallenge) {\n return codeChallenge;\n }\n codeChallenge = generateCodeChallenge(value);\n return codeChallenge;\n },\n };\n};\nexports.generateCodeVerifier = generateCodeVerifier;\nfunction generateCodeChallenge(codeVerifier) {\n const awsCryptoHash = new sha256_js_1.Sha256();\n awsCryptoHash.update(codeVerifier);\n const codeChallenge = removePaddingChar(utils_1.base64Encoder.convert(awsCryptoHash.digestSync(), { urlSafe: true }));\n return codeChallenge;\n}\nfunction removePaddingChar(base64Encoded) {\n return base64Encoded.replace(/=/g, '');\n}\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,oBAAoB,GAAG,MAAM;AACrC,MAAM,WAAW,GAAG,OAAO,CAAC,uBAAuB,CAAC;AACpD,MAAM,OAAO,GAAG,OAAO,CAAC,mCAAmC,CAAC;AAC5D,MAAM,qBAAqB,GAAG,gEAAgE;AAC9F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,oBAAoB,GAAG,CAAC,MAAM,KAAK;AACzC,IAAI,MAAM,WAAW,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC;AAC9C,IAAI,IAAI,OAAO,CAAC,SAAS,GAAG,CAAC,eAAe,CAAC,WAAW,CAAC;AACzD,IAAI,IAAI,KAAK,GAAG,EAAE;AAClB,IAAI,IAAI,aAAa;AACrB,IAAI,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE;AACpC,QAAQ,KAAK,IAAI,qBAAqB,CAAC,MAAM,CAAC,IAAI,GAAG,qBAAqB,CAAC,MAAM,CAAC;AAClF;AACA,IAAI,OAAO;AACX,QAAQ,KAAK;AACb,QAAQ,MAAM,EAAE,MAAM;AACtB,QAAQ,eAAe,GAAG;AAC1B,YAAY,IAAI,aAAa,EAAE;AAC/B,gBAAgB,OAAO,aAAa;AACpC;AACA,YAAY,aAAa,GAAG,qBAAqB,CAAC,KAAK,CAAC;AACxD,YAAY,OAAO,aAAa;AAChC,SAAS;AACT,KAAK;AACL,CAAC;AACD,OAAO,CAAC,oBAAoB,GAAG,oBAAoB;AACnD,SAAS,qBAAqB,CAAC,YAAY,EAAE;AAC7C,IAAI,MAAM,aAAa,GAAG,IAAI,WAAW,CAAC,MAAM,EAAE;AAClD,IAAI,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC;AACtC,IAAI,MAAM,aAAa,GAAG,iBAAiB,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;AACzH,IAAI,OAAO,aAAa;AACxB;AACA,SAAS,iBAAiB,CAAC,aAAa,EAAE;AAC1C,IAAI,OAAO,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;AAC1C;;"}
1
+ {"version":3,"file":"generateCodeVerifier.js","sources":["../../../../../../src/providers/cognito/utils/oauth/generateCodeVerifier.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.generateCodeVerifier = void 0;\nconst sha256_js_1 = require(\"@aws-crypto/sha256-js\");\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst CODE_VERIFIER_CHARSET = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\n/**\n *\n * @param length Desired length of the code verifier.\n *\n * **NOTE:** According to the [RFC 7636](https://datatracker.ietf.org/doc/html/rfc7636#section-4.1)\n * A code verifier must be with a length >= 43 and <= 128.\n *\n * @returns An object that contains the generated `codeVerifier` and a method\n * `toCodeChallenge` to generate the code challenge from the `codeVerifier`\n * following the spec of [RFC 7636](https://datatracker.ietf.org/doc/html/rfc7636#section-4.2).\n */\nconst generateCodeVerifier = (length) => {\n const randomBytes = new Uint8Array(length);\n (0, utils_1.getCrypto)().getRandomValues(randomBytes);\n let value = '';\n let codeChallenge;\n for (const byte of randomBytes) {\n value += CODE_VERIFIER_CHARSET.charAt(byte % CODE_VERIFIER_CHARSET.length);\n }\n return {\n value,\n method: 'S256',\n toCodeChallenge() {\n if (codeChallenge) {\n return codeChallenge;\n }\n codeChallenge = generateCodeChallenge(value);\n return codeChallenge;\n },\n };\n};\nexports.generateCodeVerifier = generateCodeVerifier;\nfunction generateCodeChallenge(codeVerifier) {\n const awsCryptoHash = new sha256_js_1.Sha256();\n awsCryptoHash.update(codeVerifier);\n const codeChallenge = removePaddingChar(utils_1.base64Encoder.convert(awsCryptoHash.digestSync(), { urlSafe: true }));\n return codeChallenge;\n}\nfunction removePaddingChar(base64Encoded) {\n return base64Encoded.replace(/=/g, '');\n}\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,oBAAoB,GAAG,MAAM;AACrC,MAAM,WAAW,GAAG,OAAO,CAAC,uBAAuB,CAAC;AACpD,MAAM,OAAO,GAAG,OAAO,CAAC,mCAAmC,CAAC;AAC5D,MAAM,qBAAqB,GAAG,gEAAgE;AAC9F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,oBAAoB,GAAG,CAAC,MAAM,KAAK;AACzC,IAAI,MAAM,WAAW,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC;AAC9C,IAAI,IAAI,OAAO,CAAC,SAAS,GAAG,CAAC,eAAe,CAAC,WAAW,CAAC;AACzD,IAAI,IAAI,KAAK,GAAG,EAAE;AAClB,IAAI,IAAI,aAAa;AACrB,IAAI,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE;AACpC,QAAQ,KAAK,IAAI,qBAAqB,CAAC,MAAM,CAAC,IAAI,GAAG,qBAAqB,CAAC,MAAM,CAAC;AAClF,IAAI;AACJ,IAAI,OAAO;AACX,QAAQ,KAAK;AACb,QAAQ,MAAM,EAAE,MAAM;AACtB,QAAQ,eAAe,GAAG;AAC1B,YAAY,IAAI,aAAa,EAAE;AAC/B,gBAAgB,OAAO,aAAa;AACpC,YAAY;AACZ,YAAY,aAAa,GAAG,qBAAqB,CAAC,KAAK,CAAC;AACxD,YAAY,OAAO,aAAa;AAChC,QAAQ,CAAC;AACT,KAAK;AACL,CAAC;AACD,OAAO,CAAC,oBAAoB,GAAG,oBAAoB;AACnD,SAAS,qBAAqB,CAAC,YAAY,EAAE;AAC7C,IAAI,MAAM,aAAa,GAAG,IAAI,WAAW,CAAC,MAAM,EAAE;AAClD,IAAI,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC;AACtC,IAAI,MAAM,aAAa,GAAG,iBAAiB,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;AACzH,IAAI,OAAO,aAAa;AACxB;AACA,SAAS,iBAAiB,CAAC,aAAa,EAAE;AAC1C,IAAI,OAAO,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;AAC1C;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"getRedirectUrl.js","sources":["../../../../../../src/providers/cognito/utils/oauth/getRedirectUrl.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getRedirectUrl = getRedirectUrl;\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst constants_1 = require(\"../../../../errors/constants\");\n/** @internal */\nfunction getRedirectUrl(redirects, preferredRedirectUrl) {\n if (preferredRedirectUrl) {\n const redirectUrl = redirects?.find(redirect => redirect === preferredRedirectUrl);\n if (!redirectUrl) {\n throw constants_1.invalidPreferredRedirectUrlException;\n }\n return redirectUrl;\n }\n else {\n const redirectUrlFromTheSameOrigin = redirects?.find(isSameOriginAndPathName) ??\n redirects?.find(isTheSameDomain);\n const redirectUrlFromDifferentOrigin = redirects?.find(isHttps) ?? redirects?.find(isHttp);\n if (redirectUrlFromTheSameOrigin) {\n return redirectUrlFromTheSameOrigin;\n }\n else if (redirectUrlFromDifferentOrigin) {\n throw constants_1.invalidOriginException;\n }\n throw constants_1.invalidRedirectException;\n }\n}\n// origin + pathname => https://example.com/app\nconst isSameOriginAndPathName = (redirect) => redirect.startsWith(String(window.location.origin + (window.location.pathname || '/')));\n// domain => outlook.live.com, github.com\nconst isTheSameDomain = (redirect) => redirect.includes(String(window.location.hostname));\nconst isHttp = (redirect) => redirect.startsWith('http://');\nconst isHttps = (redirect) => redirect.startsWith('https://');\n"],"names":[],"mappings":";;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,cAAc,GAAG,cAAc;AACvC;AACA;AACA,MAAM,WAAW,GAAG,OAAO,CAAC,8BAA8B,CAAC;AAC3D;AACA,SAAS,cAAc,CAAC,SAAS,EAAE,oBAAoB,EAAE;AACzD,IAAI,IAAI,oBAAoB,EAAE;AAC9B,QAAQ,MAAM,WAAW,GAAG,SAAS,EAAE,IAAI,CAAC,QAAQ,IAAI,QAAQ,KAAK,oBAAoB,CAAC;AAC1F,QAAQ,IAAI,CAAC,WAAW,EAAE;AAC1B,YAAY,MAAM,WAAW,CAAC,oCAAoC;AAClE;AACA,QAAQ,OAAO,WAAW;AAC1B;AACA,SAAS;AACT,QAAQ,MAAM,4BAA4B,GAAG,SAAS,EAAE,IAAI,CAAC,uBAAuB,CAAC;AACrF,YAAY,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC;AAC5C,QAAQ,MAAM,8BAA8B,GAAG,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC;AAClG,QAAQ,IAAI,4BAA4B,EAAE;AAC1C,YAAY,OAAO,4BAA4B;AAC/C;AACA,aAAa,IAAI,8BAA8B,EAAE;AACjD,YAAY,MAAM,WAAW,CAAC,sBAAsB;AACpD;AACA,QAAQ,MAAM,WAAW,CAAC,wBAAwB;AAClD;AACA;AACA;AACA,MAAM,uBAAuB,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,IAAI,GAAG,CAAC,CAAC,CAAC;AACrI;AACA,MAAM,eAAe,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACzF,MAAM,MAAM,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC;AAC3D,MAAM,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC;;"}
1
+ {"version":3,"file":"getRedirectUrl.js","sources":["../../../../../../src/providers/cognito/utils/oauth/getRedirectUrl.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getRedirectUrl = getRedirectUrl;\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst constants_1 = require(\"../../../../errors/constants\");\n/** @internal */\nfunction getRedirectUrl(redirects, preferredRedirectUrl) {\n if (preferredRedirectUrl) {\n const redirectUrl = redirects?.find(redirect => redirect === preferredRedirectUrl);\n if (!redirectUrl) {\n throw constants_1.invalidPreferredRedirectUrlException;\n }\n return redirectUrl;\n }\n else {\n const redirectUrlFromTheSameOrigin = redirects?.find(isSameOriginAndPathName) ??\n redirects?.find(isTheSameDomain);\n const redirectUrlFromDifferentOrigin = redirects?.find(isHttps) ?? redirects?.find(isHttp);\n if (redirectUrlFromTheSameOrigin) {\n return redirectUrlFromTheSameOrigin;\n }\n else if (redirectUrlFromDifferentOrigin) {\n throw constants_1.invalidOriginException;\n }\n throw constants_1.invalidRedirectException;\n }\n}\n// origin + pathname => https://example.com/app\nconst isSameOriginAndPathName = (redirect) => redirect.startsWith(String(window.location.origin + (window.location.pathname || '/')));\n// domain => outlook.live.com, github.com\nconst isTheSameDomain = (redirect) => redirect.includes(String(window.location.hostname));\nconst isHttp = (redirect) => redirect.startsWith('http://');\nconst isHttps = (redirect) => redirect.startsWith('https://');\n"],"names":[],"mappings":";;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,cAAc,GAAG,cAAc;AACvC;AACA;AACA,MAAM,WAAW,GAAG,OAAO,CAAC,8BAA8B,CAAC;AAC3D;AACA,SAAS,cAAc,CAAC,SAAS,EAAE,oBAAoB,EAAE;AACzD,IAAI,IAAI,oBAAoB,EAAE;AAC9B,QAAQ,MAAM,WAAW,GAAG,SAAS,EAAE,IAAI,CAAC,QAAQ,IAAI,QAAQ,KAAK,oBAAoB,CAAC;AAC1F,QAAQ,IAAI,CAAC,WAAW,EAAE;AAC1B,YAAY,MAAM,WAAW,CAAC,oCAAoC;AAClE,QAAQ;AACR,QAAQ,OAAO,WAAW;AAC1B,IAAI;AACJ,SAAS;AACT,QAAQ,MAAM,4BAA4B,GAAG,SAAS,EAAE,IAAI,CAAC,uBAAuB,CAAC;AACrF,YAAY,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC;AAC5C,QAAQ,MAAM,8BAA8B,GAAG,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC;AAClG,QAAQ,IAAI,4BAA4B,EAAE;AAC1C,YAAY,OAAO,4BAA4B;AAC/C,QAAQ;AACR,aAAa,IAAI,8BAA8B,EAAE;AACjD,YAAY,MAAM,WAAW,CAAC,sBAAsB;AACpD,QAAQ;AACR,QAAQ,MAAM,WAAW,CAAC,wBAAwB;AAClD,IAAI;AACJ;AACA;AACA,MAAM,uBAAuB,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,IAAI,GAAG,CAAC,CAAC,CAAC;AACrI;AACA,MAAM,eAAe,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACzF,MAAM,MAAM,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC;AAC3D,MAAM,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"getRedirectUrl.native.js","sources":["../../../../../../src/providers/cognito/utils/oauth/getRedirectUrl.native.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getRedirectUrl = getRedirectUrl;\nconst constants_1 = require(\"../../../../errors/constants\");\n/**\n* - Validate there is always an appScheme (required), if not throw invalidAppSchemeException.\n* - If a preferredRedirectUrl is given, validate it's in the configured list, if not throw invalidPreferredRedirectUrlException.\n* - If preferredRedirectUrl is not given, use the appScheme which is present in the configured list.\n@internal */\nfunction getRedirectUrl(redirects, preferredRedirectUrl) {\n // iOS always requires a non http/s url (appScheme) to be registered so we validate it's existence here.\n const appSchemeRedirectUrl = redirects?.find(redirect => !redirect.startsWith('http://') && !redirect.startsWith('https://'));\n if (!appSchemeRedirectUrl) {\n throw constants_1.invalidAppSchemeException;\n }\n if (preferredRedirectUrl) {\n if (redirects?.includes(preferredRedirectUrl)) {\n return preferredRedirectUrl;\n }\n throw constants_1.invalidPreferredRedirectUrlException;\n }\n return appSchemeRedirectUrl;\n}\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,cAAc,GAAG,cAAc;AACvC,MAAM,WAAW,GAAG,OAAO,CAAC,8BAA8B,CAAC;AAC3D;AACA;AACA;AACA;AACA;AACA,SAAS,cAAc,CAAC,SAAS,EAAE,oBAAoB,EAAE;AACzD;AACA,IAAI,MAAM,oBAAoB,GAAG,SAAS,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AACjI,IAAI,IAAI,CAAC,oBAAoB,EAAE;AAC/B,QAAQ,MAAM,WAAW,CAAC,yBAAyB;AACnD;AACA,IAAI,IAAI,oBAAoB,EAAE;AAC9B,QAAQ,IAAI,SAAS,EAAE,QAAQ,CAAC,oBAAoB,CAAC,EAAE;AACvD,YAAY,OAAO,oBAAoB;AACvC;AACA,QAAQ,MAAM,WAAW,CAAC,oCAAoC;AAC9D;AACA,IAAI,OAAO,oBAAoB;AAC/B;;"}
1
+ {"version":3,"file":"getRedirectUrl.native.js","sources":["../../../../../../src/providers/cognito/utils/oauth/getRedirectUrl.native.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getRedirectUrl = getRedirectUrl;\nconst constants_1 = require(\"../../../../errors/constants\");\n/**\n* - Validate there is always an appScheme (required), if not throw invalidAppSchemeException.\n* - If a preferredRedirectUrl is given, validate it's in the configured list, if not throw invalidPreferredRedirectUrlException.\n* - If preferredRedirectUrl is not given, use the appScheme which is present in the configured list.\n@internal */\nfunction getRedirectUrl(redirects, preferredRedirectUrl) {\n // iOS always requires a non http/s url (appScheme) to be registered so we validate it's existence here.\n const appSchemeRedirectUrl = redirects?.find(redirect => !redirect.startsWith('http://') && !redirect.startsWith('https://'));\n if (!appSchemeRedirectUrl) {\n throw constants_1.invalidAppSchemeException;\n }\n if (preferredRedirectUrl) {\n if (redirects?.includes(preferredRedirectUrl)) {\n return preferredRedirectUrl;\n }\n throw constants_1.invalidPreferredRedirectUrlException;\n }\n return appSchemeRedirectUrl;\n}\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,cAAc,GAAG,cAAc;AACvC,MAAM,WAAW,GAAG,OAAO,CAAC,8BAA8B,CAAC;AAC3D;AACA;AACA;AACA;AACA;AACA,SAAS,cAAc,CAAC,SAAS,EAAE,oBAAoB,EAAE;AACzD;AACA,IAAI,MAAM,oBAAoB,GAAG,SAAS,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AACjI,IAAI,IAAI,CAAC,oBAAoB,EAAE;AAC/B,QAAQ,MAAM,WAAW,CAAC,yBAAyB;AACnD,IAAI;AACJ,IAAI,IAAI,oBAAoB,EAAE;AAC9B,QAAQ,IAAI,SAAS,EAAE,QAAQ,CAAC,oBAAoB,CAAC,EAAE;AACvD,YAAY,OAAO,oBAAoB;AACvC,QAAQ;AACR,QAAQ,MAAM,WAAW,CAAC,oCAAoC;AAC9D,IAAI;AACJ,IAAI,OAAO,oBAAoB;AAC/B;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"handleOAuthSignOut.js","sources":["../../../../../../src/providers/cognito/utils/oauth/handleOAuthSignOut.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.handleOAuthSignOut = void 0;\nconst completeOAuthSignOut_1 = require(\"./completeOAuthSignOut\");\nconst oAuthSignOutRedirect_1 = require(\"./oAuthSignOutRedirect\");\nconst handleOAuthSignOut = async (cognitoConfig, store, tokenOrchestrator, redirectUrl) => {\n const { isOAuthSignIn } = await store.loadOAuthSignIn();\n const oauthMetadata = await tokenOrchestrator.getOAuthMetadata();\n // Clear everything before attempting to visted logout endpoint since the current application\n // state could be wiped away on redirect\n await (0, completeOAuthSignOut_1.completeOAuthSignOut)(store);\n // The isOAuthSignIn flag is propagated by the oAuthToken store which manages oauth keys in local storage only.\n // These keys are used to determine if a user is in an inflight or signedIn oauth states.\n // However, this behavior represents an issue when 2 apps share the same set of tokens in Cookie storage because the app that didn't\n // start the OAuth will not have access to the oauth keys.\n // A heuristic solution is to add oauth metadata to the tokenOrchestrator which will have access to the underlying\n // storage mechanism that is used by Amplify.\n if (isOAuthSignIn || oauthMetadata?.oauthSignIn) {\n // On web, this will always end up being a void action\n return (0, oAuthSignOutRedirect_1.oAuthSignOutRedirect)(cognitoConfig, false, redirectUrl);\n }\n};\nexports.handleOAuthSignOut = handleOAuthSignOut;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,kBAAkB,GAAG,MAAM;AACnC,MAAM,sBAAsB,GAAG,OAAO,CAAC,wBAAwB,CAAC;AAChE,MAAM,sBAAsB,GAAG,OAAO,CAAC,wBAAwB,CAAC;AAChE,MAAM,kBAAkB,GAAG,OAAO,aAAa,EAAE,KAAK,EAAE,iBAAiB,EAAE,WAAW,KAAK;AAC3F,IAAI,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,KAAK,CAAC,eAAe,EAAE;AAC3D,IAAI,MAAM,aAAa,GAAG,MAAM,iBAAiB,CAAC,gBAAgB,EAAE;AACpE;AACA;AACA,IAAI,MAAM,IAAI,sBAAsB,CAAC,oBAAoB,EAAE,KAAK,CAAC;AACjE;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,IAAI,aAAa,IAAI,aAAa,EAAE,WAAW,EAAE;AACrD;AACA,QAAQ,OAAO,IAAI,sBAAsB,CAAC,oBAAoB,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,CAAC;AAClG;AACA,CAAC;AACD,OAAO,CAAC,kBAAkB,GAAG,kBAAkB;;"}
1
+ {"version":3,"file":"handleOAuthSignOut.js","sources":["../../../../../../src/providers/cognito/utils/oauth/handleOAuthSignOut.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.handleOAuthSignOut = void 0;\nconst completeOAuthSignOut_1 = require(\"./completeOAuthSignOut\");\nconst oAuthSignOutRedirect_1 = require(\"./oAuthSignOutRedirect\");\nconst handleOAuthSignOut = async (cognitoConfig, store, tokenOrchestrator, redirectUrl) => {\n const { isOAuthSignIn } = await store.loadOAuthSignIn();\n const oauthMetadata = await tokenOrchestrator.getOAuthMetadata();\n // Clear everything before attempting to visted logout endpoint since the current application\n // state could be wiped away on redirect\n await (0, completeOAuthSignOut_1.completeOAuthSignOut)(store);\n // The isOAuthSignIn flag is propagated by the oAuthToken store which manages oauth keys in local storage only.\n // These keys are used to determine if a user is in an inflight or signedIn oauth states.\n // However, this behavior represents an issue when 2 apps share the same set of tokens in Cookie storage because the app that didn't\n // start the OAuth will not have access to the oauth keys.\n // A heuristic solution is to add oauth metadata to the tokenOrchestrator which will have access to the underlying\n // storage mechanism that is used by Amplify.\n if (isOAuthSignIn || oauthMetadata?.oauthSignIn) {\n // On web, this will always end up being a void action\n return (0, oAuthSignOutRedirect_1.oAuthSignOutRedirect)(cognitoConfig, false, redirectUrl);\n }\n};\nexports.handleOAuthSignOut = handleOAuthSignOut;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,kBAAkB,GAAG,MAAM;AACnC,MAAM,sBAAsB,GAAG,OAAO,CAAC,wBAAwB,CAAC;AAChE,MAAM,sBAAsB,GAAG,OAAO,CAAC,wBAAwB,CAAC;AAChE,MAAM,kBAAkB,GAAG,OAAO,aAAa,EAAE,KAAK,EAAE,iBAAiB,EAAE,WAAW,KAAK;AAC3F,IAAI,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,KAAK,CAAC,eAAe,EAAE;AAC3D,IAAI,MAAM,aAAa,GAAG,MAAM,iBAAiB,CAAC,gBAAgB,EAAE;AACpE;AACA;AACA,IAAI,MAAM,IAAI,sBAAsB,CAAC,oBAAoB,EAAE,KAAK,CAAC;AACjE;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,IAAI,aAAa,IAAI,aAAa,EAAE,WAAW,EAAE;AACrD;AACA,QAAQ,OAAO,IAAI,sBAAsB,CAAC,oBAAoB,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,CAAC;AAClG,IAAI;AACJ,CAAC;AACD,OAAO,CAAC,kBAAkB,GAAG,kBAAkB;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"handleOAuthSignOut.native.js","sources":["../../../../../../src/providers/cognito/utils/oauth/handleOAuthSignOut.native.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.handleOAuthSignOut = void 0;\nconst completeOAuthSignOut_1 = require(\"./completeOAuthSignOut\");\nconst oAuthSignOutRedirect_1 = require(\"./oAuthSignOutRedirect\");\nconst handleOAuthSignOut = async (cognitoConfig, store, \n// No-op here as it's only used in the non-native implementation\ntokenOrchestrator, redirectUrl) => {\n const { isOAuthSignIn, preferPrivateSession } = await store.loadOAuthSignIn();\n if (isOAuthSignIn) {\n const result = await (0, oAuthSignOutRedirect_1.oAuthSignOutRedirect)(cognitoConfig, preferPrivateSession, redirectUrl);\n // If this was a private session, clear data and tokens regardless of what happened with logout\n // endpoint. Otherwise, only do so if the logout endpoint was succesfully visited.\n const shouldCompleteSignOut = preferPrivateSession || result?.type === 'success';\n if (shouldCompleteSignOut) {\n await (0, completeOAuthSignOut_1.completeOAuthSignOut)(store);\n }\n return result;\n }\n return (0, completeOAuthSignOut_1.completeOAuthSignOut)(store);\n};\nexports.handleOAuthSignOut = handleOAuthSignOut;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,kBAAkB,GAAG,MAAM;AACnC,MAAM,sBAAsB,GAAG,OAAO,CAAC,wBAAwB,CAAC;AAChE,MAAM,sBAAsB,GAAG,OAAO,CAAC,wBAAwB,CAAC;AAChE,MAAM,kBAAkB,GAAG,OAAO,aAAa,EAAE,KAAK;AACtD;AACA,iBAAiB,EAAE,WAAW,KAAK;AACnC,IAAI,MAAM,EAAE,aAAa,EAAE,oBAAoB,EAAE,GAAG,MAAM,KAAK,CAAC,eAAe,EAAE;AACjF,IAAI,IAAI,aAAa,EAAE;AACvB,QAAQ,MAAM,MAAM,GAAG,MAAM,IAAI,sBAAsB,CAAC,oBAAoB,EAAE,aAAa,EAAE,oBAAoB,EAAE,WAAW,CAAC;AAC/H;AACA;AACA,QAAQ,MAAM,qBAAqB,GAAG,oBAAoB,IAAI,MAAM,EAAE,IAAI,KAAK,SAAS;AACxF,QAAQ,IAAI,qBAAqB,EAAE;AACnC,YAAY,MAAM,IAAI,sBAAsB,CAAC,oBAAoB,EAAE,KAAK,CAAC;AACzE;AACA,QAAQ,OAAO,MAAM;AACrB;AACA,IAAI,OAAO,IAAI,sBAAsB,CAAC,oBAAoB,EAAE,KAAK,CAAC;AAClE,CAAC;AACD,OAAO,CAAC,kBAAkB,GAAG,kBAAkB;;"}
1
+ {"version":3,"file":"handleOAuthSignOut.native.js","sources":["../../../../../../src/providers/cognito/utils/oauth/handleOAuthSignOut.native.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.handleOAuthSignOut = void 0;\nconst completeOAuthSignOut_1 = require(\"./completeOAuthSignOut\");\nconst oAuthSignOutRedirect_1 = require(\"./oAuthSignOutRedirect\");\nconst handleOAuthSignOut = async (cognitoConfig, store, \n// No-op here as it's only used in the non-native implementation\ntokenOrchestrator, redirectUrl) => {\n const { isOAuthSignIn, preferPrivateSession } = await store.loadOAuthSignIn();\n if (isOAuthSignIn) {\n const result = await (0, oAuthSignOutRedirect_1.oAuthSignOutRedirect)(cognitoConfig, preferPrivateSession, redirectUrl);\n // If this was a private session, clear data and tokens regardless of what happened with logout\n // endpoint. Otherwise, only do so if the logout endpoint was succesfully visited.\n const shouldCompleteSignOut = preferPrivateSession || result?.type === 'success';\n if (shouldCompleteSignOut) {\n await (0, completeOAuthSignOut_1.completeOAuthSignOut)(store);\n }\n return result;\n }\n return (0, completeOAuthSignOut_1.completeOAuthSignOut)(store);\n};\nexports.handleOAuthSignOut = handleOAuthSignOut;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,kBAAkB,GAAG,MAAM;AACnC,MAAM,sBAAsB,GAAG,OAAO,CAAC,wBAAwB,CAAC;AAChE,MAAM,sBAAsB,GAAG,OAAO,CAAC,wBAAwB,CAAC;AAChE,MAAM,kBAAkB,GAAG,OAAO,aAAa,EAAE,KAAK;AACtD;AACA,iBAAiB,EAAE,WAAW,KAAK;AACnC,IAAI,MAAM,EAAE,aAAa,EAAE,oBAAoB,EAAE,GAAG,MAAM,KAAK,CAAC,eAAe,EAAE;AACjF,IAAI,IAAI,aAAa,EAAE;AACvB,QAAQ,MAAM,MAAM,GAAG,MAAM,IAAI,sBAAsB,CAAC,oBAAoB,EAAE,aAAa,EAAE,oBAAoB,EAAE,WAAW,CAAC;AAC/H;AACA;AACA,QAAQ,MAAM,qBAAqB,GAAG,oBAAoB,IAAI,MAAM,EAAE,IAAI,KAAK,SAAS;AACxF,QAAQ,IAAI,qBAAqB,EAAE;AACnC,YAAY,MAAM,IAAI,sBAAsB,CAAC,oBAAoB,EAAE,KAAK,CAAC;AACzE,QAAQ;AACR,QAAQ,OAAO,MAAM;AACrB,IAAI;AACJ,IAAI,OAAO,IAAI,sBAAsB,CAAC,oBAAoB,EAAE,KAAK,CAAC;AAClE,CAAC;AACD,OAAO,CAAC,kBAAkB,GAAG,kBAAkB;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../../src/providers/cognito/utils/oauth/index.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.validateState = exports.oAuthStore = exports.completeOAuthFlow = exports.handleFailure = exports.getRedirectUrl = exports.handleOAuthSignOut = exports.generateState = exports.generateCodeVerifier = void 0;\nvar generateCodeVerifier_1 = require(\"./generateCodeVerifier\");\nObject.defineProperty(exports, \"generateCodeVerifier\", { enumerable: true, get: function () { return generateCodeVerifier_1.generateCodeVerifier; } });\nvar generateState_1 = require(\"./generateState\");\nObject.defineProperty(exports, \"generateState\", { enumerable: true, get: function () { return generateState_1.generateState; } });\nvar handleOAuthSignOut_1 = require(\"./handleOAuthSignOut\");\nObject.defineProperty(exports, \"handleOAuthSignOut\", { enumerable: true, get: function () { return handleOAuthSignOut_1.handleOAuthSignOut; } });\nvar getRedirectUrl_1 = require(\"./getRedirectUrl\");\nObject.defineProperty(exports, \"getRedirectUrl\", { enumerable: true, get: function () { return getRedirectUrl_1.getRedirectUrl; } });\nvar handleFailure_1 = require(\"./handleFailure\");\nObject.defineProperty(exports, \"handleFailure\", { enumerable: true, get: function () { return handleFailure_1.handleFailure; } });\nvar completeOAuthFlow_1 = require(\"./completeOAuthFlow\");\nObject.defineProperty(exports, \"completeOAuthFlow\", { enumerable: true, get: function () { return completeOAuthFlow_1.completeOAuthFlow; } });\nvar oAuthStore_1 = require(\"./oAuthStore\");\nObject.defineProperty(exports, \"oAuthStore\", { enumerable: true, get: function () { return oAuthStore_1.oAuthStore; } });\nvar validateState_1 = require(\"./validateState\");\nObject.defineProperty(exports, \"validateState\", { enumerable: true, get: function () { return validateState_1.validateState; } });\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC,iBAAiB,GAAG,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC,cAAc,GAAG,OAAO,CAAC,kBAAkB,GAAG,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC,oBAAoB,GAAG,MAAM;AACpN,IAAI,sBAAsB,GAAG,OAAO,CAAC,wBAAwB,CAAC;AAC9D,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,sBAAsB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,sBAAsB,CAAC,oBAAoB,CAAC,EAAE,EAAE,CAAC;AACtJ,IAAI,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC;AAChD,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,eAAe,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC;AACjI,IAAI,oBAAoB,GAAG,OAAO,CAAC,sBAAsB,CAAC;AAC1D,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,oBAAoB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,oBAAoB,CAAC,kBAAkB,CAAC,EAAE,EAAE,CAAC;AAChJ,IAAI,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,CAAC;AAClD,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,gBAAgB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,gBAAgB,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC;AACpI,IAAI,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC;AAChD,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,eAAe,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC;AACjI,IAAI,mBAAmB,GAAG,OAAO,CAAC,qBAAqB,CAAC;AACxD,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,mBAAmB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,mBAAmB,CAAC,iBAAiB,CAAC,EAAE,EAAE,CAAC;AAC7I,IAAI,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;AAC1C,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,YAAY,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;AACxH,IAAI,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC;AAChD,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,eAAe,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../../src/providers/cognito/utils/oauth/index.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.validateState = exports.oAuthStore = exports.completeOAuthFlow = exports.handleFailure = exports.getRedirectUrl = exports.handleOAuthSignOut = exports.generateState = exports.generateCodeVerifier = void 0;\nvar generateCodeVerifier_1 = require(\"./generateCodeVerifier\");\nObject.defineProperty(exports, \"generateCodeVerifier\", { enumerable: true, get: function () { return generateCodeVerifier_1.generateCodeVerifier; } });\nvar generateState_1 = require(\"./generateState\");\nObject.defineProperty(exports, \"generateState\", { enumerable: true, get: function () { return generateState_1.generateState; } });\nvar handleOAuthSignOut_1 = require(\"./handleOAuthSignOut\");\nObject.defineProperty(exports, \"handleOAuthSignOut\", { enumerable: true, get: function () { return handleOAuthSignOut_1.handleOAuthSignOut; } });\nvar getRedirectUrl_1 = require(\"./getRedirectUrl\");\nObject.defineProperty(exports, \"getRedirectUrl\", { enumerable: true, get: function () { return getRedirectUrl_1.getRedirectUrl; } });\nvar handleFailure_1 = require(\"./handleFailure\");\nObject.defineProperty(exports, \"handleFailure\", { enumerable: true, get: function () { return handleFailure_1.handleFailure; } });\nvar completeOAuthFlow_1 = require(\"./completeOAuthFlow\");\nObject.defineProperty(exports, \"completeOAuthFlow\", { enumerable: true, get: function () { return completeOAuthFlow_1.completeOAuthFlow; } });\nvar oAuthStore_1 = require(\"./oAuthStore\");\nObject.defineProperty(exports, \"oAuthStore\", { enumerable: true, get: function () { return oAuthStore_1.oAuthStore; } });\nvar validateState_1 = require(\"./validateState\");\nObject.defineProperty(exports, \"validateState\", { enumerable: true, get: function () { return validateState_1.validateState; } });\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC,iBAAiB,GAAG,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC,cAAc,GAAG,OAAO,CAAC,kBAAkB,GAAG,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC,oBAAoB,GAAG,MAAM;AACpN,IAAI,sBAAsB,GAAG,OAAO,CAAC,wBAAwB,CAAC;AAC9D,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,sBAAsB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,sBAAsB,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;AACtJ,IAAI,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC;AAChD,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,eAAe,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;AACjI,IAAI,oBAAoB,GAAG,OAAO,CAAC,sBAAsB,CAAC;AAC1D,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,oBAAoB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,oBAAoB,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC;AAChJ,IAAI,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,CAAC;AAClD,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,gBAAgB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,gBAAgB,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;AACpI,IAAI,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC;AAChD,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,eAAe,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;AACjI,IAAI,mBAAmB,GAAG,OAAO,CAAC,qBAAqB,CAAC;AACxD,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,mBAAmB,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,mBAAmB,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;AAC7I,IAAI,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;AAC1C,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;AACxH,IAAI,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC;AAChD,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,eAAe,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"inflightPromise.js","sources":["../../../../../../src/providers/cognito/utils/oauth/inflightPromise.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.resolveAndClearInflightPromises = exports.addInflightPromise = void 0;\nconst inflightPromises = [];\nconst addInflightPromise = (resolver) => {\n inflightPromises.push(resolver);\n};\nexports.addInflightPromise = addInflightPromise;\nconst resolveAndClearInflightPromises = () => {\n while (inflightPromises.length) {\n inflightPromises.pop()?.();\n }\n};\nexports.resolveAndClearInflightPromises = resolveAndClearInflightPromises;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,+BAA+B,GAAG,OAAO,CAAC,kBAAkB,GAAG,MAAM;AAC7E,MAAM,gBAAgB,GAAG,EAAE;AAC3B,MAAM,kBAAkB,GAAG,CAAC,QAAQ,KAAK;AACzC,IAAI,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC;AACnC,CAAC;AACD,OAAO,CAAC,kBAAkB,GAAG,kBAAkB;AAC/C,MAAM,+BAA+B,GAAG,MAAM;AAC9C,IAAI,OAAO,gBAAgB,CAAC,MAAM,EAAE;AACpC,QAAQ,gBAAgB,CAAC,GAAG,EAAE,IAAI;AAClC;AACA,CAAC;AACD,OAAO,CAAC,+BAA+B,GAAG,+BAA+B;;"}
1
+ {"version":3,"file":"inflightPromise.js","sources":["../../../../../../src/providers/cognito/utils/oauth/inflightPromise.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.resolveAndClearInflightPromises = exports.addInflightPromise = void 0;\nconst inflightPromises = [];\nconst addInflightPromise = (resolver) => {\n inflightPromises.push(resolver);\n};\nexports.addInflightPromise = addInflightPromise;\nconst resolveAndClearInflightPromises = () => {\n while (inflightPromises.length) {\n inflightPromises.pop()?.();\n }\n};\nexports.resolveAndClearInflightPromises = resolveAndClearInflightPromises;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,+BAA+B,GAAG,OAAO,CAAC,kBAAkB,GAAG,MAAM;AAC7E,MAAM,gBAAgB,GAAG,EAAE;AAC3B,MAAM,kBAAkB,GAAG,CAAC,QAAQ,KAAK;AACzC,IAAI,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC;AACnC,CAAC;AACD,OAAO,CAAC,kBAAkB,GAAG,kBAAkB;AAC/C,MAAM,+BAA+B,GAAG,MAAM;AAC9C,IAAI,OAAO,gBAAgB,CAAC,MAAM,EAAE;AACpC,QAAQ,gBAAgB,CAAC,GAAG,EAAE,IAAI;AAClC,IAAI;AACJ,CAAC;AACD,OAAO,CAAC,+BAA+B,GAAG,+BAA+B;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"validateState.js","sources":["../../../../../../src/providers/cognito/utils/oauth/validateState.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.validateState = exports.validationRecoverySuggestion = exports.validationFailedMessage = exports.flowCancelledMessage = void 0;\nconst AuthError_1 = require(\"../../../../errors/AuthError\");\nconst Auth_1 = require(\"../../../../types/Auth\");\nconst oAuthStore_1 = require(\"./oAuthStore\");\nexports.flowCancelledMessage = '`signInWithRedirect` has been canceled.';\nexports.validationFailedMessage = 'An error occurred while validating the state.';\nexports.validationRecoverySuggestion = 'Try to initiate an OAuth flow from Amplify';\nconst validateState = async (state) => {\n const savedState = await oAuthStore_1.oAuthStore.loadOAuthState();\n // This is because savedState only exists if the flow was initiated by Amplify\n const validatedState = state === savedState ? savedState : undefined;\n if (!validatedState) {\n throw new AuthError_1.AuthError({\n name: Auth_1.AuthErrorTypes.OAuthSignInError,\n message: state === null ? exports.flowCancelledMessage : exports.validationFailedMessage,\n recoverySuggestion: state === null ? undefined : exports.validationRecoverySuggestion,\n });\n }\n return validatedState;\n};\nexports.validateState = validateState;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC,4BAA4B,GAAG,OAAO,CAAC,uBAAuB,GAAG,OAAO,CAAC,oBAAoB,GAAG,MAAM;AACtI,MAAM,WAAW,GAAG,OAAO,CAAC,8BAA8B,CAAC;AAC3D,MAAM,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC;AAChD,MAAM,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;AAC5C,OAAO,CAAC,oBAAoB,GAAG,yCAAyC;AACxE,OAAO,CAAC,uBAAuB,GAAG,+CAA+C;AACjF,OAAO,CAAC,4BAA4B,GAAG,4CAA4C;AACnF,MAAM,aAAa,GAAG,OAAO,KAAK,KAAK;AACvC,IAAI,MAAM,UAAU,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,cAAc,EAAE;AACrE;AACA,IAAI,MAAM,cAAc,GAAG,KAAK,KAAK,UAAU,GAAG,UAAU,GAAG,SAAS;AACxE,IAAI,IAAI,CAAC,cAAc,EAAE;AACzB,QAAQ,MAAM,IAAI,WAAW,CAAC,SAAS,CAAC;AACxC,YAAY,IAAI,EAAE,MAAM,CAAC,cAAc,CAAC,gBAAgB;AACxD,YAAY,OAAO,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,oBAAoB,GAAG,OAAO,CAAC,uBAAuB;AACpG,YAAY,kBAAkB,EAAE,KAAK,KAAK,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC,4BAA4B;AACjG,SAAS,CAAC;AACV;AACA,IAAI,OAAO,cAAc;AACzB,CAAC;AACD,OAAO,CAAC,aAAa,GAAG,aAAa;;"}
1
+ {"version":3,"file":"validateState.js","sources":["../../../../../../src/providers/cognito/utils/oauth/validateState.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.validateState = exports.validationRecoverySuggestion = exports.validationFailedMessage = exports.flowCancelledMessage = void 0;\nconst AuthError_1 = require(\"../../../../errors/AuthError\");\nconst Auth_1 = require(\"../../../../types/Auth\");\nconst oAuthStore_1 = require(\"./oAuthStore\");\nexports.flowCancelledMessage = '`signInWithRedirect` has been canceled.';\nexports.validationFailedMessage = 'An error occurred while validating the state.';\nexports.validationRecoverySuggestion = 'Try to initiate an OAuth flow from Amplify';\nconst validateState = async (state) => {\n const savedState = await oAuthStore_1.oAuthStore.loadOAuthState();\n // This is because savedState only exists if the flow was initiated by Amplify\n const validatedState = state === savedState ? savedState : undefined;\n if (!validatedState) {\n throw new AuthError_1.AuthError({\n name: Auth_1.AuthErrorTypes.OAuthSignInError,\n message: state === null ? exports.flowCancelledMessage : exports.validationFailedMessage,\n recoverySuggestion: state === null ? undefined : exports.validationRecoverySuggestion,\n });\n }\n return validatedState;\n};\nexports.validateState = validateState;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC,4BAA4B,GAAG,OAAO,CAAC,uBAAuB,GAAG,OAAO,CAAC,oBAAoB,GAAG,MAAM;AACtI,MAAM,WAAW,GAAG,OAAO,CAAC,8BAA8B,CAAC;AAC3D,MAAM,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC;AAChD,MAAM,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;AAC5C,OAAO,CAAC,oBAAoB,GAAG,yCAAyC;AACxE,OAAO,CAAC,uBAAuB,GAAG,+CAA+C;AACjF,OAAO,CAAC,4BAA4B,GAAG,4CAA4C;AACnF,MAAM,aAAa,GAAG,OAAO,KAAK,KAAK;AACvC,IAAI,MAAM,UAAU,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,cAAc,EAAE;AACrE;AACA,IAAI,MAAM,cAAc,GAAG,KAAK,KAAK,UAAU,GAAG,UAAU,GAAG,SAAS;AACxE,IAAI,IAAI,CAAC,cAAc,EAAE;AACzB,QAAQ,MAAM,IAAI,WAAW,CAAC,SAAS,CAAC;AACxC,YAAY,IAAI,EAAE,MAAM,CAAC,cAAc,CAAC,gBAAgB;AACxD,YAAY,OAAO,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC,oBAAoB,GAAG,OAAO,CAAC,uBAAuB;AACpG,YAAY,kBAAkB,EAAE,KAAK,KAAK,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC,4BAA4B;AACjG,SAAS,CAAC;AACV,IAAI;AACJ,IAAI,OAAO,cAAc;AACzB,CAAC;AACD,OAAO,CAAC,aAAa,GAAG,aAAa;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"refreshAuthTokens.js","sources":["../../../../../src/providers/cognito/utils/refreshAuthTokens.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.refreshAuthTokensWithoutDedupe = exports.refreshAuthTokens = void 0;\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst parsers_1 = require(\"../../../foundation/parsers\");\nconst types_1 = require(\"../utils/types\");\nconst AuthError_1 = require(\"../../../errors/AuthError\");\nconst factories_1 = require(\"../factories\");\nconst cognitoIdentityProvider_1 = require(\"../../../foundation/factories/serviceClients/cognitoIdentityProvider\");\nconst refreshAuthTokensFunction = async ({ tokens, authConfig, username, }) => {\n (0, utils_1.assertTokenProviderConfig)(authConfig?.Cognito);\n const { userPoolId, userPoolClientId, userPoolEndpoint } = authConfig.Cognito;\n const region = (0, parsers_1.getRegionFromUserPoolId)(userPoolId);\n (0, types_1.assertAuthTokensWithRefreshToken)(tokens);\n const getTokensFromRefreshToken = (0, cognitoIdentityProvider_1.createGetTokensFromRefreshTokenClient)({\n endpointResolver: (0, factories_1.createCognitoUserPoolEndpointResolver)({\n endpointOverride: userPoolEndpoint,\n }),\n });\n const { AuthenticationResult } = await getTokensFromRefreshToken({ region }, {\n ClientId: userPoolClientId,\n RefreshToken: tokens.refreshToken,\n DeviceKey: tokens.deviceMetadata?.deviceKey,\n });\n const accessToken = (0, utils_1.decodeJWT)(AuthenticationResult?.AccessToken ?? '');\n const idToken = AuthenticationResult?.IdToken\n ? (0, utils_1.decodeJWT)(AuthenticationResult.IdToken)\n : undefined;\n const { iat } = accessToken.payload;\n // This should never happen. If it does, it's a bug from the service.\n if (!iat) {\n throw new AuthError_1.AuthError({\n name: 'iatNotFoundException',\n message: 'iat not found in access token',\n });\n }\n const clockDrift = iat * 1000 - new Date().getTime();\n return {\n accessToken,\n idToken,\n clockDrift,\n refreshToken: AuthenticationResult?.RefreshToken ?? tokens.refreshToken,\n username,\n };\n};\nexports.refreshAuthTokens = (0, utils_1.deDupeAsyncFunction)(refreshAuthTokensFunction);\nexports.refreshAuthTokensWithoutDedupe = refreshAuthTokensFunction;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,8BAA8B,GAAG,OAAO,CAAC,iBAAiB,GAAG,MAAM;AAC3E,MAAM,OAAO,GAAG,OAAO,CAAC,mCAAmC,CAAC;AAC5D,MAAM,SAAS,GAAG,OAAO,CAAC,6BAA6B,CAAC;AACxD,MAAM,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC;AACzC,MAAM,WAAW,GAAG,OAAO,CAAC,2BAA2B,CAAC;AACxD,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC;AAC3C,MAAM,yBAAyB,GAAG,OAAO,CAAC,sEAAsE,CAAC;AACjH,MAAM,yBAAyB,GAAG,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,GAAG,KAAK;AAC/E,IAAI,IAAI,OAAO,CAAC,yBAAyB,EAAE,UAAU,EAAE,OAAO,CAAC;AAC/D,IAAI,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,GAAG,UAAU,CAAC,OAAO;AACjF,IAAI,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,uBAAuB,EAAE,UAAU,CAAC;AACrE,IAAI,IAAI,OAAO,CAAC,gCAAgC,EAAE,MAAM,CAAC;AACzD,IAAI,MAAM,yBAAyB,GAAG,IAAI,yBAAyB,CAAC,qCAAqC,EAAE;AAC3G,QAAQ,gBAAgB,EAAE,IAAI,WAAW,CAAC,qCAAqC,EAAE;AACjF,YAAY,gBAAgB,EAAE,gBAAgB;AAC9C,SAAS,CAAC;AACV,KAAK,CAAC;AACN,IAAI,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,yBAAyB,CAAC,EAAE,MAAM,EAAE,EAAE;AACjF,QAAQ,QAAQ,EAAE,gBAAgB;AAClC,QAAQ,YAAY,EAAE,MAAM,CAAC,YAAY;AACzC,QAAQ,SAAS,EAAE,MAAM,CAAC,cAAc,EAAE,SAAS;AACnD,KAAK,CAAC;AACN,IAAI,MAAM,WAAW,GAAG,IAAI,OAAO,CAAC,SAAS,EAAE,oBAAoB,EAAE,WAAW,IAAI,EAAE,CAAC;AACvF,IAAI,MAAM,OAAO,GAAG,oBAAoB,EAAE;AAC1C,UAAU,IAAI,OAAO,CAAC,SAAS,EAAE,oBAAoB,CAAC,OAAO;AAC7D,UAAU,SAAS;AACnB,IAAI,MAAM,EAAE,GAAG,EAAE,GAAG,WAAW,CAAC,OAAO;AACvC;AACA,IAAI,IAAI,CAAC,GAAG,EAAE;AACd,QAAQ,MAAM,IAAI,WAAW,CAAC,SAAS,CAAC;AACxC,YAAY,IAAI,EAAE,sBAAsB;AACxC,YAAY,OAAO,EAAE,+BAA+B;AACpD,SAAS,CAAC;AACV;AACA,IAAI,MAAM,UAAU,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE;AACxD,IAAI,OAAO;AACX,QAAQ,WAAW;AACnB,QAAQ,OAAO;AACf,QAAQ,UAAU;AAClB,QAAQ,YAAY,EAAE,oBAAoB,EAAE,YAAY,IAAI,MAAM,CAAC,YAAY;AAC/E,QAAQ,QAAQ;AAChB,KAAK;AACL,CAAC;AACD,OAAO,CAAC,iBAAiB,GAAG,IAAI,OAAO,CAAC,mBAAmB,EAAE,yBAAyB,CAAC;AACvF,OAAO,CAAC,8BAA8B,GAAG,yBAAyB;;"}
1
+ {"version":3,"file":"refreshAuthTokens.js","sources":["../../../../../src/providers/cognito/utils/refreshAuthTokens.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.refreshAuthTokensWithoutDedupe = exports.refreshAuthTokens = void 0;\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst parsers_1 = require(\"../../../foundation/parsers\");\nconst types_1 = require(\"../utils/types\");\nconst AuthError_1 = require(\"../../../errors/AuthError\");\nconst factories_1 = require(\"../factories\");\nconst cognitoIdentityProvider_1 = require(\"../../../foundation/factories/serviceClients/cognitoIdentityProvider\");\nconst refreshAuthTokensFunction = async ({ tokens, authConfig, username, }) => {\n (0, utils_1.assertTokenProviderConfig)(authConfig?.Cognito);\n const { userPoolId, userPoolClientId, userPoolEndpoint } = authConfig.Cognito;\n const region = (0, parsers_1.getRegionFromUserPoolId)(userPoolId);\n (0, types_1.assertAuthTokensWithRefreshToken)(tokens);\n const getTokensFromRefreshToken = (0, cognitoIdentityProvider_1.createGetTokensFromRefreshTokenClient)({\n endpointResolver: (0, factories_1.createCognitoUserPoolEndpointResolver)({\n endpointOverride: userPoolEndpoint,\n }),\n });\n const { AuthenticationResult } = await getTokensFromRefreshToken({ region }, {\n ClientId: userPoolClientId,\n RefreshToken: tokens.refreshToken,\n DeviceKey: tokens.deviceMetadata?.deviceKey,\n });\n const accessToken = (0, utils_1.decodeJWT)(AuthenticationResult?.AccessToken ?? '');\n const idToken = AuthenticationResult?.IdToken\n ? (0, utils_1.decodeJWT)(AuthenticationResult.IdToken)\n : undefined;\n const { iat } = accessToken.payload;\n // This should never happen. If it does, it's a bug from the service.\n if (!iat) {\n throw new AuthError_1.AuthError({\n name: 'iatNotFoundException',\n message: 'iat not found in access token',\n });\n }\n const clockDrift = iat * 1000 - new Date().getTime();\n return {\n accessToken,\n idToken,\n clockDrift,\n refreshToken: AuthenticationResult?.RefreshToken ?? tokens.refreshToken,\n username,\n };\n};\nexports.refreshAuthTokens = (0, utils_1.deDupeAsyncFunction)(refreshAuthTokensFunction);\nexports.refreshAuthTokensWithoutDedupe = refreshAuthTokensFunction;\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,8BAA8B,GAAG,OAAO,CAAC,iBAAiB,GAAG,MAAM;AAC3E,MAAM,OAAO,GAAG,OAAO,CAAC,mCAAmC,CAAC;AAC5D,MAAM,SAAS,GAAG,OAAO,CAAC,6BAA6B,CAAC;AACxD,MAAM,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC;AACzC,MAAM,WAAW,GAAG,OAAO,CAAC,2BAA2B,CAAC;AACxD,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC;AAC3C,MAAM,yBAAyB,GAAG,OAAO,CAAC,sEAAsE,CAAC;AACjH,MAAM,yBAAyB,GAAG,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,GAAG,KAAK;AAC/E,IAAI,IAAI,OAAO,CAAC,yBAAyB,EAAE,UAAU,EAAE,OAAO,CAAC;AAC/D,IAAI,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,GAAG,UAAU,CAAC,OAAO;AACjF,IAAI,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,uBAAuB,EAAE,UAAU,CAAC;AACrE,IAAI,IAAI,OAAO,CAAC,gCAAgC,EAAE,MAAM,CAAC;AACzD,IAAI,MAAM,yBAAyB,GAAG,IAAI,yBAAyB,CAAC,qCAAqC,EAAE;AAC3G,QAAQ,gBAAgB,EAAE,IAAI,WAAW,CAAC,qCAAqC,EAAE;AACjF,YAAY,gBAAgB,EAAE,gBAAgB;AAC9C,SAAS,CAAC;AACV,KAAK,CAAC;AACN,IAAI,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,yBAAyB,CAAC,EAAE,MAAM,EAAE,EAAE;AACjF,QAAQ,QAAQ,EAAE,gBAAgB;AAClC,QAAQ,YAAY,EAAE,MAAM,CAAC,YAAY;AACzC,QAAQ,SAAS,EAAE,MAAM,CAAC,cAAc,EAAE,SAAS;AACnD,KAAK,CAAC;AACN,IAAI,MAAM,WAAW,GAAG,IAAI,OAAO,CAAC,SAAS,EAAE,oBAAoB,EAAE,WAAW,IAAI,EAAE,CAAC;AACvF,IAAI,MAAM,OAAO,GAAG,oBAAoB,EAAE;AAC1C,UAAU,IAAI,OAAO,CAAC,SAAS,EAAE,oBAAoB,CAAC,OAAO;AAC7D,UAAU,SAAS;AACnB,IAAI,MAAM,EAAE,GAAG,EAAE,GAAG,WAAW,CAAC,OAAO;AACvC;AACA,IAAI,IAAI,CAAC,GAAG,EAAE;AACd,QAAQ,MAAM,IAAI,WAAW,CAAC,SAAS,CAAC;AACxC,YAAY,IAAI,EAAE,sBAAsB;AACxC,YAAY,OAAO,EAAE,+BAA+B;AACpD,SAAS,CAAC;AACV,IAAI;AACJ,IAAI,MAAM,UAAU,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE;AACxD,IAAI,OAAO;AACX,QAAQ,WAAW;AACnB,QAAQ,OAAO;AACf,QAAQ,UAAU;AAClB,QAAQ,YAAY,EAAE,oBAAoB,EAAE,YAAY,IAAI,MAAM,CAAC,YAAY;AAC/E,QAAQ,QAAQ;AAChB,KAAK;AACL,CAAC;AACD,OAAO,CAAC,iBAAiB,GAAG,IAAI,OAAO,CAAC,mBAAmB,EAAE,yBAAyB,CAAC;AACvF,OAAO,CAAC,8BAA8B,GAAG,yBAAyB;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"retryOnResourceNotFoundException.js","sources":["../../../../../src/providers/cognito/utils/retryOnResourceNotFoundException.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.retryOnResourceNotFoundException = retryOnResourceNotFoundException;\nconst AuthError_1 = require(\"../../../errors/AuthError\");\n/**\n * It will retry the function if the error is a `ResourceNotFoundException` and\n * will clean the device keys stored in the storage mechanism.\n *\n */\nasync function retryOnResourceNotFoundException(func, args, username, tokenOrchestrator) {\n try {\n return await func(...args);\n }\n catch (error) {\n if (error instanceof AuthError_1.AuthError &&\n error.name === 'ResourceNotFoundException' &&\n error.message.includes('Device does not exist.')) {\n await tokenOrchestrator.clearDeviceMetadata(username);\n return func(...args);\n }\n throw error;\n }\n}\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,gCAAgC,GAAG,gCAAgC;AAC3E,MAAM,WAAW,GAAG,OAAO,CAAC,2BAA2B,CAAC;AACxD;AACA;AACA;AACA;AACA;AACA,eAAe,gCAAgC,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,iBAAiB,EAAE;AACzF,IAAI,IAAI;AACR,QAAQ,OAAO,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;AAClC;AACA,IAAI,OAAO,KAAK,EAAE;AAClB,QAAQ,IAAI,KAAK,YAAY,WAAW,CAAC,SAAS;AAClD,YAAY,KAAK,CAAC,IAAI,KAAK,2BAA2B;AACtD,YAAY,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE;AAC9D,YAAY,MAAM,iBAAiB,CAAC,mBAAmB,CAAC,QAAQ,CAAC;AACjE,YAAY,OAAO,IAAI,CAAC,GAAG,IAAI,CAAC;AAChC;AACA,QAAQ,MAAM,KAAK;AACnB;AACA;;"}
1
+ {"version":3,"file":"retryOnResourceNotFoundException.js","sources":["../../../../../src/providers/cognito/utils/retryOnResourceNotFoundException.ts"],"sourcesContent":["\"use strict\";\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.retryOnResourceNotFoundException = retryOnResourceNotFoundException;\nconst AuthError_1 = require(\"../../../errors/AuthError\");\n/**\n * It will retry the function if the error is a `ResourceNotFoundException` and\n * will clean the device keys stored in the storage mechanism.\n *\n */\nasync function retryOnResourceNotFoundException(func, args, username, tokenOrchestrator) {\n try {\n return await func(...args);\n }\n catch (error) {\n if (error instanceof AuthError_1.AuthError &&\n error.name === 'ResourceNotFoundException' &&\n error.message.includes('Device does not exist.')) {\n await tokenOrchestrator.clearDeviceMetadata(username);\n return func(...args);\n }\n throw error;\n }\n}\n"],"names":[],"mappings":";;AACA;AACA;AACA,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAC7D,OAAO,CAAC,gCAAgC,GAAG,gCAAgC;AAC3E,MAAM,WAAW,GAAG,OAAO,CAAC,2BAA2B,CAAC;AACxD;AACA;AACA;AACA;AACA;AACA,eAAe,gCAAgC,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,iBAAiB,EAAE;AACzF,IAAI,IAAI;AACR,QAAQ,OAAO,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;AAClC,IAAI;AACJ,IAAI,OAAO,KAAK,EAAE;AAClB,QAAQ,IAAI,KAAK,YAAY,WAAW,CAAC,SAAS;AAClD,YAAY,KAAK,CAAC,IAAI,KAAK,2BAA2B;AACtD,YAAY,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE;AAC9D,YAAY,MAAM,iBAAiB,CAAC,mBAAmB,CAAC,QAAQ,CAAC;AACjE,YAAY,OAAO,IAAI,CAAC,GAAG,IAAI,CAAC;AAChC,QAAQ;AACR,QAAQ,MAAM,KAAK;AACnB,IAAI;AACJ;;"}