@aws-amplify/auth 6.7.1-unstable.ab33a03.0 → 6.8.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 (398) hide show
  1. package/dist/cjs/client/apis/associateWebAuthnCredential.js +62 -0
  2. package/dist/cjs/client/apis/associateWebAuthnCredential.js.map +1 -0
  3. package/dist/cjs/client/apis/deleteWebAuthnCredential.js +22 -0
  4. package/dist/cjs/client/apis/deleteWebAuthnCredential.js.map +1 -0
  5. package/dist/cjs/client/apis/index.js +13 -0
  6. package/dist/cjs/client/apis/index.js.map +1 -0
  7. package/dist/cjs/client/apis/listWebAuthnCredentials.js +23 -0
  8. package/dist/cjs/client/apis/listWebAuthnCredentials.js.map +1 -0
  9. package/dist/cjs/client/flows/shared/handlePasswordSRP.js +79 -0
  10. package/dist/cjs/client/flows/shared/handlePasswordSRP.js.map +1 -0
  11. package/dist/cjs/client/flows/userAuth/handleSelectChallenge.js +46 -0
  12. package/dist/cjs/client/flows/userAuth/handleSelectChallenge.js.map +1 -0
  13. package/dist/cjs/client/flows/userAuth/handleSelectChallengeWithPassword.js +59 -0
  14. package/dist/cjs/client/flows/userAuth/handleSelectChallengeWithPassword.js.map +1 -0
  15. package/dist/cjs/client/flows/userAuth/handleSelectChallengeWithPasswordSRP.js +74 -0
  16. package/dist/cjs/client/flows/userAuth/handleSelectChallengeWithPasswordSRP.js.map +1 -0
  17. package/dist/cjs/client/flows/userAuth/handleUserAuthFlow.js +84 -0
  18. package/dist/cjs/client/flows/userAuth/handleUserAuthFlow.js.map +1 -0
  19. package/dist/cjs/client/flows/userAuth/handleWebAuthnSignInResult.js +88 -0
  20. package/dist/cjs/client/flows/userAuth/handleWebAuthnSignInResult.js.map +1 -0
  21. package/dist/cjs/client/utils/index.js +9 -0
  22. package/dist/cjs/client/utils/index.js.map +1 -0
  23. package/dist/cjs/client/utils/passkey/errors.js +180 -0
  24. package/dist/cjs/client/utils/passkey/errors.js.map +1 -0
  25. package/dist/cjs/client/utils/passkey/getIsPasskeySupported.js +20 -0
  26. package/dist/cjs/client/utils/passkey/getIsPasskeySupported.js.map +1 -0
  27. package/dist/cjs/client/utils/passkey/getIsPasskeySupported.native.js +12 -0
  28. package/dist/cjs/client/utils/passkey/getIsPasskeySupported.native.js.map +1 -0
  29. package/dist/cjs/client/utils/passkey/getPasskey.js +27 -0
  30. package/dist/cjs/client/utils/passkey/getPasskey.js.map +1 -0
  31. package/dist/cjs/client/utils/passkey/getPasskey.native.js +12 -0
  32. package/dist/cjs/client/utils/passkey/getPasskey.native.js.map +1 -0
  33. package/dist/cjs/client/utils/passkey/index.js +11 -0
  34. package/dist/cjs/client/utils/passkey/index.js.map +1 -0
  35. package/dist/cjs/client/utils/passkey/registerPasskey.js +32 -0
  36. package/dist/cjs/client/utils/passkey/registerPasskey.js.map +1 -0
  37. package/dist/cjs/client/utils/passkey/registerPasskey.native.js +12 -0
  38. package/dist/cjs/client/utils/passkey/registerPasskey.native.js.map +1 -0
  39. package/dist/cjs/client/utils/passkey/serde.js +106 -0
  40. package/dist/cjs/client/utils/passkey/serde.js.map +1 -0
  41. package/dist/cjs/client/utils/passkey/types/index.js +25 -0
  42. package/dist/cjs/client/utils/passkey/types/index.js.map +1 -0
  43. package/dist/cjs/client/utils/passkey/types/shared.js +18 -0
  44. package/dist/cjs/client/utils/passkey/types/shared.js.map +1 -0
  45. package/dist/cjs/client/utils/store/autoSignInStore.js +45 -0
  46. package/dist/cjs/client/utils/store/autoSignInStore.js.map +1 -0
  47. package/dist/cjs/client/utils/store/index.js +9 -0
  48. package/dist/cjs/client/utils/store/index.js.map +1 -0
  49. package/dist/cjs/client/utils/store/signInStore.js.map +1 -0
  50. package/dist/cjs/client/utils/store/types.js +6 -0
  51. package/dist/cjs/client/utils/store/types.js.map +1 -0
  52. package/dist/cjs/foundation/apis/deleteWebAuthnCredential.js +33 -0
  53. package/dist/cjs/foundation/apis/deleteWebAuthnCredential.js.map +1 -0
  54. package/dist/cjs/foundation/apis/index.js +11 -0
  55. package/dist/cjs/foundation/apis/index.js.map +1 -0
  56. package/dist/cjs/foundation/apis/listWebAuthnCredentials.js +46 -0
  57. package/dist/cjs/foundation/apis/listWebAuthnCredentials.js.map +1 -0
  58. package/dist/cjs/foundation/convert/base64url/convertArrayBufferToBase64Url.js +21 -0
  59. package/dist/cjs/foundation/convert/base64url/convertArrayBufferToBase64Url.js.map +1 -0
  60. package/dist/cjs/foundation/convert/base64url/convertBase64UrlToArrayBuffer.js +17 -0
  61. package/dist/cjs/foundation/convert/base64url/convertBase64UrlToArrayBuffer.js.map +1 -0
  62. package/dist/cjs/foundation/convert/base64url/index.js +11 -0
  63. package/dist/cjs/foundation/convert/base64url/index.js.map +1 -0
  64. package/dist/cjs/foundation/convert/index.js +10 -0
  65. package/dist/cjs/foundation/convert/index.js.map +1 -0
  66. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/createCompleteWebAuthnRegistrationClient.js +16 -0
  67. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/createCompleteWebAuthnRegistrationClient.js.map +1 -0
  68. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/createDeleteWebAuthnCredentialClient.js +16 -0
  69. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/createDeleteWebAuthnCredentialClient.js.map +1 -0
  70. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/createListWebAuthnCredentialsClient.js +16 -0
  71. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/createListWebAuthnCredentialsClient.js.map +1 -0
  72. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/createSignUpClient.js +33 -4
  73. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/createSignUpClient.js.map +1 -1
  74. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/createStartWebAuthnRegistrationClient.js +16 -0
  75. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/createStartWebAuthnRegistrationClient.js.map +1 -0
  76. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/index.js +9 -1
  77. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/index.js.map +1 -1
  78. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/types/errors.js +44 -0
  79. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/types/errors.js.map +1 -0
  80. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/types/index.js +3 -2
  81. package/dist/cjs/foundation/factories/serviceClients/cognitoIdentityProvider/types/index.js.map +1 -1
  82. package/dist/cjs/foundation/types/index.js +6 -0
  83. package/dist/cjs/foundation/types/index.js.map +1 -0
  84. package/dist/cjs/foundation/types/inputs.js +6 -0
  85. package/dist/cjs/foundation/types/inputs.js.map +1 -0
  86. package/dist/cjs/foundation/types/models.js +6 -0
  87. package/dist/cjs/foundation/types/models.js.map +1 -0
  88. package/dist/cjs/foundation/types/outputs.js +6 -0
  89. package/dist/cjs/foundation/types/outputs.js.map +1 -0
  90. package/dist/cjs/index.js +6 -1
  91. package/dist/cjs/index.js.map +1 -1
  92. package/dist/cjs/providers/cognito/apis/autoSignIn.js +6 -2
  93. package/dist/cjs/providers/cognito/apis/autoSignIn.js.map +1 -1
  94. package/dist/cjs/providers/cognito/apis/confirmSignIn.js +4 -4
  95. package/dist/cjs/providers/cognito/apis/confirmSignIn.js.map +1 -1
  96. package/dist/cjs/providers/cognito/apis/confirmSignUp.js +8 -5
  97. package/dist/cjs/providers/cognito/apis/confirmSignUp.js.map +1 -1
  98. package/dist/cjs/providers/cognito/apis/signIn.js +9 -0
  99. package/dist/cjs/providers/cognito/apis/signIn.js.map +1 -1
  100. package/dist/cjs/providers/cognito/apis/signInWithCustomAuth.js +4 -4
  101. package/dist/cjs/providers/cognito/apis/signInWithCustomAuth.js.map +1 -1
  102. package/dist/cjs/providers/cognito/apis/signInWithCustomSRPAuth.js +4 -4
  103. package/dist/cjs/providers/cognito/apis/signInWithCustomSRPAuth.js.map +1 -1
  104. package/dist/cjs/providers/cognito/apis/signInWithSRP.js +7 -4
  105. package/dist/cjs/providers/cognito/apis/signInWithSRP.js.map +1 -1
  106. package/dist/cjs/providers/cognito/apis/signInWithUserAuth.js +102 -0
  107. package/dist/cjs/providers/cognito/apis/signInWithUserAuth.js.map +1 -0
  108. package/dist/cjs/providers/cognito/apis/signInWithUserPassword.js +7 -4
  109. package/dist/cjs/providers/cognito/apis/signInWithUserPassword.js.map +1 -1
  110. package/dist/cjs/providers/cognito/apis/signUp.js +56 -49
  111. package/dist/cjs/providers/cognito/apis/signUp.js.map +1 -1
  112. package/dist/cjs/providers/cognito/utils/signInHelpers.js +60 -42
  113. package/dist/cjs/providers/cognito/utils/signInHelpers.js.map +1 -1
  114. package/dist/cjs/providers/cognito/utils/signUpHelpers.js +5 -31
  115. package/dist/cjs/providers/cognito/utils/signUpHelpers.js.map +1 -1
  116. package/dist/esm/client/apis/associateWebAuthnCredential.d.ts +14 -0
  117. package/dist/esm/client/apis/associateWebAuthnCredential.mjs +69 -0
  118. package/dist/esm/client/apis/associateWebAuthnCredential.mjs.map +1 -0
  119. package/dist/esm/client/apis/deleteWebAuthnCredential.d.ts +11 -0
  120. package/dist/esm/client/apis/deleteWebAuthnCredential.mjs +29 -0
  121. package/dist/esm/client/apis/deleteWebAuthnCredential.mjs.map +1 -0
  122. package/dist/esm/client/apis/index.d.ts +3 -0
  123. package/dist/esm/client/apis/index.mjs +4 -0
  124. package/dist/esm/client/apis/index.mjs.map +1 -0
  125. package/dist/esm/client/apis/listWebAuthnCredentials.d.ts +12 -0
  126. package/dist/esm/client/apis/listWebAuthnCredentials.mjs +30 -0
  127. package/dist/esm/client/apis/listWebAuthnCredentials.mjs.map +1 -0
  128. package/dist/esm/client/flows/shared/handlePasswordSRP.d.ts +31 -0
  129. package/dist/esm/client/flows/shared/handlePasswordSRP.mjs +86 -0
  130. package/dist/esm/client/flows/shared/handlePasswordSRP.mjs.map +1 -0
  131. package/dist/esm/client/flows/userAuth/handleSelectChallenge.d.ts +23 -0
  132. package/dist/esm/client/flows/userAuth/handleSelectChallenge.mjs +51 -0
  133. package/dist/esm/client/flows/userAuth/handleSelectChallenge.mjs.map +1 -0
  134. package/dist/esm/client/flows/userAuth/handleSelectChallengeWithPassword.d.ts +16 -0
  135. package/dist/esm/client/flows/userAuth/handleSelectChallengeWithPassword.mjs +64 -0
  136. package/dist/esm/client/flows/userAuth/handleSelectChallengeWithPassword.mjs.map +1 -0
  137. package/dist/esm/client/flows/userAuth/handleSelectChallengeWithPasswordSRP.d.ts +18 -0
  138. package/dist/esm/client/flows/userAuth/handleSelectChallengeWithPasswordSRP.mjs +81 -0
  139. package/dist/esm/client/flows/userAuth/handleSelectChallengeWithPasswordSRP.mjs.map +1 -0
  140. package/dist/esm/client/flows/userAuth/handleUserAuthFlow.d.ts +27 -0
  141. package/dist/esm/client/flows/userAuth/handleUserAuthFlow.mjs +88 -0
  142. package/dist/esm/client/flows/userAuth/handleUserAuthFlow.mjs.map +1 -0
  143. package/dist/esm/client/flows/userAuth/handleWebAuthnSignInResult.d.ts +3 -0
  144. package/dist/esm/client/flows/userAuth/handleWebAuthnSignInResult.mjs +93 -0
  145. package/dist/esm/client/flows/userAuth/handleWebAuthnSignInResult.mjs.map +1 -0
  146. package/dist/esm/client/utils/index.d.ts +1 -0
  147. package/dist/esm/client/utils/index.mjs +4 -0
  148. package/dist/esm/client/utils/index.mjs.map +1 -0
  149. package/dist/esm/client/utils/passkey/errors.d.ts +33 -0
  150. package/dist/esm/client/utils/passkey/errors.mjs +176 -0
  151. package/dist/esm/client/utils/passkey/errors.mjs.map +1 -0
  152. package/dist/esm/client/utils/passkey/getIsPasskeySupported.d.ts +6 -0
  153. package/dist/esm/client/utils/passkey/getIsPasskeySupported.mjs +18 -0
  154. package/dist/esm/client/utils/passkey/getIsPasskeySupported.mjs.map +1 -0
  155. package/dist/esm/client/utils/passkey/getIsPasskeySupported.native.d.ts +1 -0
  156. package/dist/esm/client/utils/passkey/getIsPasskeySupported.native.mjs +10 -0
  157. package/dist/esm/client/utils/passkey/getIsPasskeySupported.native.mjs.map +1 -0
  158. package/dist/esm/client/utils/passkey/getPasskey.d.ts +2 -0
  159. package/dist/esm/client/utils/passkey/getPasskey.mjs +25 -0
  160. package/dist/esm/client/utils/passkey/getPasskey.mjs.map +1 -0
  161. package/dist/esm/client/utils/passkey/getPasskey.native.d.ts +1 -0
  162. package/dist/esm/client/utils/passkey/getPasskey.native.mjs +10 -0
  163. package/dist/esm/client/utils/passkey/getPasskey.native.mjs.map +1 -0
  164. package/dist/esm/client/utils/passkey/index.d.ts +2 -0
  165. package/dist/esm/client/utils/passkey/index.mjs +3 -0
  166. package/dist/esm/client/utils/passkey/index.mjs.map +1 -0
  167. package/dist/esm/client/utils/passkey/registerPasskey.d.ts +7 -0
  168. package/dist/esm/client/utils/passkey/registerPasskey.mjs +30 -0
  169. package/dist/esm/client/utils/passkey/registerPasskey.mjs.map +1 -0
  170. package/dist/esm/client/utils/passkey/registerPasskey.native.d.ts +1 -0
  171. package/dist/esm/client/utils/passkey/registerPasskey.native.mjs +10 -0
  172. package/dist/esm/client/utils/passkey/registerPasskey.native.mjs.map +1 -0
  173. package/dist/esm/client/utils/passkey/serde.d.ts +25 -0
  174. package/dist/esm/client/utils/passkey/serde.mjs +102 -0
  175. package/dist/esm/client/utils/passkey/serde.mjs.map +1 -0
  176. package/dist/esm/client/utils/passkey/types/index.d.ts +16 -0
  177. package/dist/esm/client/utils/passkey/types/index.mjs +18 -0
  178. package/dist/esm/client/utils/passkey/types/index.mjs.map +1 -0
  179. package/dist/esm/client/utils/passkey/types/shared.d.ts +106 -0
  180. package/dist/esm/client/utils/passkey/types/shared.mjs +16 -0
  181. package/dist/esm/client/utils/passkey/types/shared.mjs.map +1 -0
  182. package/dist/esm/client/utils/store/autoSignInStore.d.ts +21 -0
  183. package/dist/esm/client/utils/store/autoSignInStore.mjs +43 -0
  184. package/dist/esm/client/utils/store/autoSignInStore.mjs.map +1 -0
  185. package/dist/esm/client/utils/store/index.d.ts +2 -0
  186. package/dist/esm/client/utils/store/index.mjs +3 -0
  187. package/dist/esm/client/utils/store/index.mjs.map +1 -0
  188. package/dist/esm/{providers/cognito/utils → client/utils/store}/signInStore.d.ts +1 -1
  189. package/dist/esm/client/utils/store/signInStore.mjs.map +1 -0
  190. package/dist/esm/client/utils/store/types.d.ts +5 -0
  191. package/dist/esm/client/utils/store/types.mjs +2 -0
  192. package/dist/esm/client/utils/store/types.mjs.map +1 -0
  193. package/dist/esm/foundation/apis/deleteWebAuthnCredential.d.ts +3 -0
  194. package/dist/esm/foundation/apis/deleteWebAuthnCredential.mjs +38 -0
  195. package/dist/esm/foundation/apis/deleteWebAuthnCredential.mjs.map +1 -0
  196. package/dist/esm/foundation/apis/index.d.ts +2 -0
  197. package/dist/esm/foundation/apis/index.mjs +3 -0
  198. package/dist/esm/foundation/apis/index.mjs.map +1 -0
  199. package/dist/esm/foundation/apis/listWebAuthnCredentials.d.ts +3 -0
  200. package/dist/esm/foundation/apis/listWebAuthnCredentials.mjs +51 -0
  201. package/dist/esm/foundation/apis/listWebAuthnCredentials.mjs.map +1 -0
  202. package/dist/esm/foundation/convert/base64url/convertArrayBufferToBase64Url.d.ts +6 -0
  203. package/dist/esm/foundation/convert/base64url/convertArrayBufferToBase64Url.mjs +19 -0
  204. package/dist/esm/foundation/convert/base64url/convertArrayBufferToBase64Url.mjs.map +1 -0
  205. package/dist/esm/foundation/convert/base64url/convertBase64UrlToArrayBuffer.d.ts +6 -0
  206. package/dist/esm/foundation/convert/base64url/convertBase64UrlToArrayBuffer.mjs +15 -0
  207. package/dist/esm/foundation/convert/base64url/convertBase64UrlToArrayBuffer.mjs.map +1 -0
  208. package/dist/esm/foundation/convert/base64url/index.d.ts +2 -0
  209. package/dist/esm/foundation/convert/base64url/index.mjs +3 -0
  210. package/dist/esm/foundation/convert/base64url/index.mjs.map +1 -0
  211. package/dist/esm/foundation/convert/index.d.ts +1 -0
  212. package/dist/esm/foundation/convert/index.mjs +3 -0
  213. package/dist/esm/foundation/convert/index.mjs.map +1 -0
  214. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createCompleteWebAuthnRegistrationClient.d.ts +13 -0
  215. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createCompleteWebAuthnRegistrationClient.mjs +17 -0
  216. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createCompleteWebAuthnRegistrationClient.mjs.map +1 -0
  217. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createDeleteWebAuthnCredentialClient.d.ts +13 -0
  218. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createDeleteWebAuthnCredentialClient.mjs +17 -0
  219. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createDeleteWebAuthnCredentialClient.mjs.map +1 -0
  220. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createListWebAuthnCredentialsClient.d.ts +13 -0
  221. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createListWebAuthnCredentialsClient.mjs +17 -0
  222. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createListWebAuthnCredentialsClient.mjs.map +1 -0
  223. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createSignUpClient.d.ts +3 -1
  224. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createSignUpClient.mjs +32 -7
  225. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createSignUpClient.mjs.map +1 -1
  226. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createStartWebAuthnRegistrationClient.d.ts +13 -0
  227. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createStartWebAuthnRegistrationClient.mjs +17 -0
  228. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createStartWebAuthnRegistrationClient.mjs.map +1 -0
  229. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/index.d.ts +4 -0
  230. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/index.mjs +4 -0
  231. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/index.mjs.map +1 -1
  232. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/shared/serde/createUserPoolSerializer.d.ts +1 -1
  233. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/types/errors.d.ts +37 -0
  234. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/types/errors.mjs +46 -0
  235. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/types/errors.mjs.map +1 -0
  236. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/types/index.d.ts +1 -0
  237. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/types/index.mjs +1 -1
  238. package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/types/sdk.d.ts +109 -5
  239. package/dist/esm/foundation/types/index.d.ts +3 -0
  240. package/dist/esm/foundation/types/index.mjs +2 -0
  241. package/dist/esm/foundation/types/index.mjs.map +1 -0
  242. package/dist/esm/foundation/types/inputs.d.ts +10 -0
  243. package/dist/esm/foundation/types/inputs.mjs +2 -0
  244. package/dist/esm/foundation/types/inputs.mjs.map +1 -0
  245. package/dist/esm/foundation/types/models.d.ts +11 -0
  246. package/dist/esm/foundation/types/models.mjs +2 -0
  247. package/dist/esm/foundation/types/models.mjs.map +1 -0
  248. package/dist/esm/foundation/types/outputs.d.ts +8 -0
  249. package/dist/esm/foundation/types/outputs.mjs +2 -0
  250. package/dist/esm/foundation/types/outputs.mjs.map +1 -0
  251. package/dist/esm/index.d.ts +3 -0
  252. package/dist/esm/index.mjs +3 -0
  253. package/dist/esm/index.mjs.map +1 -1
  254. package/dist/esm/providers/cognito/apis/autoSignIn.d.ts +1 -1
  255. package/dist/esm/providers/cognito/apis/autoSignIn.mjs +7 -2
  256. package/dist/esm/providers/cognito/apis/autoSignIn.mjs.map +1 -1
  257. package/dist/esm/providers/cognito/apis/confirmResetPassword.mjs +2 -0
  258. package/dist/esm/providers/cognito/apis/confirmResetPassword.mjs.map +1 -1
  259. package/dist/esm/providers/cognito/apis/confirmSignIn.mjs +2 -1
  260. package/dist/esm/providers/cognito/apis/confirmSignIn.mjs.map +1 -1
  261. package/dist/esm/providers/cognito/apis/confirmSignUp.mjs +11 -5
  262. package/dist/esm/providers/cognito/apis/confirmSignUp.mjs.map +1 -1
  263. package/dist/esm/providers/cognito/apis/confirmUserAttribute.mjs +2 -0
  264. package/dist/esm/providers/cognito/apis/confirmUserAttribute.mjs.map +1 -1
  265. package/dist/esm/providers/cognito/apis/deleteUser.mjs +3 -0
  266. package/dist/esm/providers/cognito/apis/deleteUser.mjs.map +1 -1
  267. package/dist/esm/providers/cognito/apis/deleteUserAttributes.mjs +3 -0
  268. package/dist/esm/providers/cognito/apis/deleteUserAttributes.mjs.map +1 -1
  269. package/dist/esm/providers/cognito/apis/fetchDevices.mjs +3 -0
  270. package/dist/esm/providers/cognito/apis/fetchDevices.mjs.map +1 -1
  271. package/dist/esm/providers/cognito/apis/fetchMFAPreference.mjs +3 -0
  272. package/dist/esm/providers/cognito/apis/fetchMFAPreference.mjs.map +1 -1
  273. package/dist/esm/providers/cognito/apis/forgetDevice.mjs +3 -0
  274. package/dist/esm/providers/cognito/apis/forgetDevice.mjs.map +1 -1
  275. package/dist/esm/providers/cognito/apis/internal/fetchUserAttributes.mjs +3 -0
  276. package/dist/esm/providers/cognito/apis/internal/fetchUserAttributes.mjs.map +1 -1
  277. package/dist/esm/providers/cognito/apis/rememberDevice.mjs +3 -0
  278. package/dist/esm/providers/cognito/apis/rememberDevice.mjs.map +1 -1
  279. package/dist/esm/providers/cognito/apis/resendSignUpCode.mjs +2 -0
  280. package/dist/esm/providers/cognito/apis/resendSignUpCode.mjs.map +1 -1
  281. package/dist/esm/providers/cognito/apis/resetPassword.mjs +2 -0
  282. package/dist/esm/providers/cognito/apis/resetPassword.mjs.map +1 -1
  283. package/dist/esm/providers/cognito/apis/sendUserAttributeVerificationCode.mjs +3 -0
  284. package/dist/esm/providers/cognito/apis/sendUserAttributeVerificationCode.mjs.map +1 -1
  285. package/dist/esm/providers/cognito/apis/setUpTOTP.mjs +2 -0
  286. package/dist/esm/providers/cognito/apis/setUpTOTP.mjs.map +1 -1
  287. package/dist/esm/providers/cognito/apis/signIn.mjs +9 -0
  288. package/dist/esm/providers/cognito/apis/signIn.mjs.map +1 -1
  289. package/dist/esm/providers/cognito/apis/signInWithCustomAuth.mjs +2 -1
  290. package/dist/esm/providers/cognito/apis/signInWithCustomAuth.mjs.map +1 -1
  291. package/dist/esm/providers/cognito/apis/signInWithCustomSRPAuth.mjs +2 -1
  292. package/dist/esm/providers/cognito/apis/signInWithCustomSRPAuth.mjs.map +1 -1
  293. package/dist/esm/providers/cognito/apis/signInWithSRP.mjs +5 -1
  294. package/dist/esm/providers/cognito/apis/signInWithSRP.mjs.map +1 -1
  295. package/dist/esm/providers/cognito/apis/signInWithUserAuth.d.ts +13 -0
  296. package/dist/esm/providers/cognito/apis/signInWithUserAuth.mjs +104 -0
  297. package/dist/esm/providers/cognito/apis/signInWithUserAuth.mjs.map +1 -0
  298. package/dist/esm/providers/cognito/apis/signInWithUserPassword.mjs +6 -2
  299. package/dist/esm/providers/cognito/apis/signInWithUserPassword.mjs.map +1 -1
  300. package/dist/esm/providers/cognito/apis/signOut.mjs +2 -0
  301. package/dist/esm/providers/cognito/apis/signOut.mjs.map +1 -1
  302. package/dist/esm/providers/cognito/apis/signUp.mjs +58 -50
  303. package/dist/esm/providers/cognito/apis/signUp.mjs.map +1 -1
  304. package/dist/esm/providers/cognito/apis/updateMFAPreference.mjs +3 -0
  305. package/dist/esm/providers/cognito/apis/updateMFAPreference.mjs.map +1 -1
  306. package/dist/esm/providers/cognito/apis/updatePassword.mjs +2 -0
  307. package/dist/esm/providers/cognito/apis/updatePassword.mjs.map +1 -1
  308. package/dist/esm/providers/cognito/apis/updateUserAttributes.mjs +3 -0
  309. package/dist/esm/providers/cognito/apis/updateUserAttributes.mjs.map +1 -1
  310. package/dist/esm/providers/cognito/apis/verifyTOTPSetup.mjs +2 -0
  311. package/dist/esm/providers/cognito/apis/verifyTOTPSetup.mjs.map +1 -1
  312. package/dist/esm/providers/cognito/types/index.d.ts +2 -2
  313. package/dist/esm/providers/cognito/types/inputs.d.ts +4 -0
  314. package/dist/esm/providers/cognito/types/models.d.ts +7 -1
  315. package/dist/esm/providers/cognito/types/options.d.ts +2 -1
  316. package/dist/esm/providers/cognito/types/outputs.d.ts +4 -0
  317. package/dist/esm/providers/cognito/utils/refreshAuthTokens.mjs +3 -0
  318. package/dist/esm/providers/cognito/utils/refreshAuthTokens.mjs.map +1 -1
  319. package/dist/esm/providers/cognito/utils/signInHelpers.d.ts +2 -1
  320. package/dist/esm/providers/cognito/utils/signInHelpers.mjs +56 -37
  321. package/dist/esm/providers/cognito/utils/signInHelpers.mjs.map +1 -1
  322. package/dist/esm/providers/cognito/utils/signUpHelpers.d.ts +0 -6
  323. package/dist/esm/providers/cognito/utils/signUpHelpers.mjs +5 -26
  324. package/dist/esm/providers/cognito/utils/signUpHelpers.mjs.map +1 -1
  325. package/dist/esm/types/inputs.d.ts +2 -2
  326. package/dist/esm/types/models.d.ts +9 -1
  327. package/package.json +104 -104
  328. package/src/client/apis/associateWebAuthnCredential.ts +94 -0
  329. package/src/client/apis/deleteWebAuthnCredential.ts +24 -0
  330. package/src/client/apis/index.ts +6 -0
  331. package/src/client/apis/listWebAuthnCredentials.ts +28 -0
  332. package/src/client/flows/shared/handlePasswordSRP.ts +123 -0
  333. package/src/client/flows/userAuth/handleSelectChallenge.ts +62 -0
  334. package/src/client/flows/userAuth/handleSelectChallengeWithPassword.ts +74 -0
  335. package/src/client/flows/userAuth/handleSelectChallengeWithPasswordSRP.ts +105 -0
  336. package/src/client/flows/userAuth/handleUserAuthFlow.ts +125 -0
  337. package/src/client/flows/userAuth/handleWebAuthnSignInResult.ts +130 -0
  338. package/src/client/utils/index.ts +4 -0
  339. package/src/client/utils/passkey/errors.ts +214 -0
  340. package/src/client/utils/passkey/getIsPasskeySupported.native.ts +8 -0
  341. package/src/client/utils/passkey/getIsPasskeySupported.ts +18 -0
  342. package/src/client/utils/passkey/getPasskey.native.ts +8 -0
  343. package/src/client/utils/passkey/getPasskey.ts +40 -0
  344. package/src/client/utils/passkey/index.ts +5 -0
  345. package/src/client/utils/passkey/registerPasskey.native.ts +8 -0
  346. package/src/client/utils/passkey/registerPasskey.ts +48 -0
  347. package/src/client/utils/passkey/serde.ts +151 -0
  348. package/src/client/utils/passkey/types/index.ts +61 -0
  349. package/src/client/utils/passkey/types/shared.ts +131 -0
  350. package/src/client/utils/store/autoSignInStore.ts +64 -0
  351. package/src/client/utils/store/index.ts +5 -0
  352. package/src/{providers/cognito/utils → client/utils/store}/signInStore.ts +3 -8
  353. package/src/client/utils/store/types.ts +9 -0
  354. package/src/foundation/apis/deleteWebAuthnCredential.ts +45 -0
  355. package/src/foundation/apis/index.ts +5 -0
  356. package/src/foundation/apis/listWebAuthnCredentials.ts +68 -0
  357. package/src/foundation/convert/base64url/convertArrayBufferToBase64Url.ts +18 -0
  358. package/src/foundation/convert/base64url/convertBase64UrlToArrayBuffer.ts +18 -0
  359. package/src/foundation/convert/base64url/index.ts +5 -0
  360. package/src/foundation/convert/index.ts +7 -0
  361. package/src/foundation/factories/serviceClients/cognitoIdentityProvider/createCompleteWebAuthnRegistrationClient.ts +31 -0
  362. package/src/foundation/factories/serviceClients/cognitoIdentityProvider/createDeleteWebAuthnCredentialClient.ts +31 -0
  363. package/src/foundation/factories/serviceClients/cognitoIdentityProvider/createListWebAuthnCredentialsClient.ts +31 -0
  364. package/src/foundation/factories/serviceClients/cognitoIdentityProvider/createSignUpClient.ts +44 -7
  365. package/src/foundation/factories/serviceClients/cognitoIdentityProvider/createStartWebAuthnRegistrationClient.ts +31 -0
  366. package/src/foundation/factories/serviceClients/cognitoIdentityProvider/index.ts +4 -0
  367. package/src/foundation/factories/serviceClients/cognitoIdentityProvider/shared/serde/createUserPoolSerializer.ts +5 -1
  368. package/src/foundation/factories/serviceClients/cognitoIdentityProvider/types/errors.ts +43 -0
  369. package/src/foundation/factories/serviceClients/cognitoIdentityProvider/types/index.ts +2 -0
  370. package/src/foundation/factories/serviceClients/cognitoIdentityProvider/types/sdk.ts +141 -5
  371. package/src/foundation/types/index.ts +9 -0
  372. package/src/foundation/types/inputs.ts +14 -0
  373. package/src/foundation/types/models.ts +14 -0
  374. package/src/foundation/types/outputs.ts +12 -0
  375. package/src/index.ts +14 -0
  376. package/src/providers/cognito/apis/autoSignIn.ts +6 -2
  377. package/src/providers/cognito/apis/confirmSignIn.ts +1 -1
  378. package/src/providers/cognito/apis/confirmSignUp.ts +10 -9
  379. package/src/providers/cognito/apis/signIn.ts +10 -0
  380. package/src/providers/cognito/apis/signInWithCustomAuth.ts +1 -1
  381. package/src/providers/cognito/apis/signInWithCustomSRPAuth.ts +1 -1
  382. package/src/providers/cognito/apis/signInWithSRP.ts +6 -1
  383. package/src/providers/cognito/apis/signInWithUserAuth.ts +141 -0
  384. package/src/providers/cognito/apis/signInWithUserPassword.ts +7 -2
  385. package/src/providers/cognito/apis/signUp.ts +81 -72
  386. package/src/providers/cognito/types/index.ts +2 -0
  387. package/src/providers/cognito/types/inputs.ts +5 -0
  388. package/src/providers/cognito/types/models.ts +13 -0
  389. package/src/providers/cognito/types/options.ts +7 -1
  390. package/src/providers/cognito/types/outputs.ts +5 -0
  391. package/src/providers/cognito/utils/signInHelpers.ts +77 -55
  392. package/src/providers/cognito/utils/signUpHelpers.ts +6 -31
  393. package/src/types/inputs.ts +2 -2
  394. package/src/types/models.ts +13 -0
  395. package/dist/cjs/providers/cognito/utils/signInStore.js.map +0 -1
  396. package/dist/esm/providers/cognito/utils/signInStore.mjs.map +0 -1
  397. /package/dist/cjs/{providers/cognito/utils → client/utils/store}/signInStore.js +0 -0
  398. /package/dist/esm/{providers/cognito/utils → client/utils/store}/signInStore.mjs +0 -0
@@ -0,0 +1,64 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ import { Reducer, Store } from './types';
5
+
6
+ type AutoSignInAction =
7
+ | { type: 'START' }
8
+ | { type: 'SET_USERNAME'; value: string }
9
+ | { type: 'SET_SESSION'; value?: string }
10
+ | { type: 'RESET' };
11
+
12
+ interface AutoSignInState {
13
+ active: boolean;
14
+ username?: string;
15
+ session?: string;
16
+ }
17
+
18
+ function defaultState(): AutoSignInState {
19
+ return {
20
+ active: false,
21
+ };
22
+ }
23
+
24
+ const autoSignInReducer: Reducer<AutoSignInState, AutoSignInAction> = (
25
+ state: AutoSignInState,
26
+ action: AutoSignInAction,
27
+ ): AutoSignInState => {
28
+ switch (action.type) {
29
+ case 'SET_USERNAME':
30
+ return {
31
+ ...state,
32
+ username: action.value,
33
+ };
34
+ case 'SET_SESSION':
35
+ return {
36
+ ...state,
37
+ session: action.value,
38
+ };
39
+ case 'START':
40
+ return {
41
+ ...state,
42
+ active: true,
43
+ };
44
+ case 'RESET':
45
+ return defaultState();
46
+ default:
47
+ return state;
48
+ }
49
+ };
50
+
51
+ const createAutoSignInStore: Store<AutoSignInState, AutoSignInAction> = (
52
+ reducer: Reducer<AutoSignInState, AutoSignInAction>,
53
+ ) => {
54
+ let currentState = reducer(defaultState(), { type: 'RESET' });
55
+
56
+ return {
57
+ getState: () => currentState,
58
+ dispatch: action => {
59
+ currentState = reducer(currentState, action);
60
+ },
61
+ };
62
+ };
63
+
64
+ export const autoSignInStore = createAutoSignInStore(autoSignInReducer);
@@ -0,0 +1,5 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ export * from './autoSignInStore';
5
+ export * from './signInStore';
@@ -1,9 +1,11 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
- import { CognitoAuthSignInDetails } from '../types';
4
+ import { CognitoAuthSignInDetails } from '../../../providers/cognito/types';
5
5
  import { ChallengeName } from '../../../foundation/factories/serviceClients/cognitoIdentityProvider/types';
6
6
 
7
+ import { Reducer, Store } from './types';
8
+
7
9
  // TODO: replace all of this implementation with state machines
8
10
  interface SignInState {
9
11
  username?: string;
@@ -19,13 +21,6 @@ type SignInAction =
19
21
  | { type: 'SET_CHALLENGE_NAME'; value?: ChallengeName }
20
22
  | { type: 'SET_SIGN_IN_SESSION'; value?: string };
21
23
 
22
- type Store<State, Action> = (reducer: Reducer<State, Action>) => {
23
- getState(): ReturnType<Reducer<State, Action>>;
24
- dispatch(action: Action): void;
25
- };
26
-
27
- type Reducer<State, Action> = (state: State, action: Action) => State;
28
-
29
24
  const signInReducer: Reducer<SignInState, SignInAction> = (state, action) => {
30
25
  switch (action.type) {
31
26
  case 'SET_SIGN_IN_SESSION':
@@ -0,0 +1,9 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ export type Store<State, Action> = (reducer: Reducer<State, Action>) => {
5
+ getState(): ReturnType<Reducer<State, Action>>;
6
+ dispatch(action: Action): void;
7
+ };
8
+
9
+ export type Reducer<State, Action> = (state: State, action: Action) => State;
@@ -0,0 +1,45 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ import { AmplifyClassV6 } from '@aws-amplify/core';
5
+ import {
6
+ AuthAction,
7
+ assertTokenProviderConfig,
8
+ } from '@aws-amplify/core/internals/utils';
9
+
10
+ import { assertAuthTokens } from '../../providers/cognito/utils/types';
11
+ import { createCognitoUserPoolEndpointResolver } from '../../providers/cognito/factories';
12
+ import { getRegionFromUserPoolId } from '../parsers';
13
+ import { getAuthUserAgentValue } from '../../utils';
14
+ import { createDeleteWebAuthnCredentialClient } from '../factories/serviceClients/cognitoIdentityProvider';
15
+ import { DeleteWebAuthnCredentialInput } from '../types';
16
+
17
+ export async function deleteWebAuthnCredential(
18
+ amplify: AmplifyClassV6,
19
+ input: DeleteWebAuthnCredentialInput,
20
+ ): Promise<void> {
21
+ const authConfig = amplify.getConfig().Auth?.Cognito;
22
+ assertTokenProviderConfig(authConfig);
23
+ const { userPoolEndpoint, userPoolId } = authConfig;
24
+ const { tokens } = await amplify.Auth.fetchAuthSession();
25
+ assertAuthTokens(tokens);
26
+
27
+ const deleteWebAuthnCredentialResult = createDeleteWebAuthnCredentialClient({
28
+ endpointResolver: createCognitoUserPoolEndpointResolver({
29
+ endpointOverride: userPoolEndpoint,
30
+ }),
31
+ });
32
+
33
+ await deleteWebAuthnCredentialResult(
34
+ {
35
+ region: getRegionFromUserPoolId(userPoolId),
36
+ userAgentValue: getAuthUserAgentValue(
37
+ AuthAction.DeleteWebAuthnCredential,
38
+ ),
39
+ },
40
+ {
41
+ AccessToken: tokens.accessToken.toString(),
42
+ CredentialId: input.credentialId,
43
+ },
44
+ );
45
+ }
@@ -0,0 +1,5 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ export { listWebAuthnCredentials } from './listWebAuthnCredentials';
5
+ export { deleteWebAuthnCredential } from './deleteWebAuthnCredential';
@@ -0,0 +1,68 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ import { AmplifyClassV6 } from '@aws-amplify/core';
5
+ import {
6
+ AuthAction,
7
+ assertTokenProviderConfig,
8
+ } from '@aws-amplify/core/internals/utils';
9
+
10
+ import { assertAuthTokens } from '../../providers/cognito/utils/types';
11
+ import { createCognitoUserPoolEndpointResolver } from '../../providers/cognito/factories';
12
+ import { getRegionFromUserPoolId } from '../parsers';
13
+ import { getAuthUserAgentValue } from '../../utils';
14
+ import { createListWebAuthnCredentialsClient } from '../factories/serviceClients/cognitoIdentityProvider';
15
+ import {
16
+ AuthWebAuthnCredential,
17
+ ListWebAuthnCredentialsInput,
18
+ ListWebAuthnCredentialsOutput,
19
+ } from '../types';
20
+
21
+ export async function listWebAuthnCredentials(
22
+ amplify: AmplifyClassV6,
23
+ input?: ListWebAuthnCredentialsInput,
24
+ ): Promise<ListWebAuthnCredentialsOutput> {
25
+ const authConfig = amplify.getConfig().Auth?.Cognito;
26
+ assertTokenProviderConfig(authConfig);
27
+ const { userPoolEndpoint, userPoolId } = authConfig;
28
+
29
+ const { tokens } = await amplify.Auth.fetchAuthSession();
30
+ assertAuthTokens(tokens);
31
+
32
+ const listWebAuthnCredentialsResult = createListWebAuthnCredentialsClient({
33
+ endpointResolver: createCognitoUserPoolEndpointResolver({
34
+ endpointOverride: userPoolEndpoint,
35
+ }),
36
+ });
37
+
38
+ const { Credentials: commandCredentials = [], NextToken: nextToken } =
39
+ await listWebAuthnCredentialsResult(
40
+ {
41
+ region: getRegionFromUserPoolId(userPoolId),
42
+ userAgentValue: getAuthUserAgentValue(
43
+ AuthAction.ListWebAuthnCredentials,
44
+ ),
45
+ },
46
+ {
47
+ AccessToken: tokens.accessToken.toString(),
48
+ MaxResults: input?.pageSize,
49
+ NextToken: input?.nextToken,
50
+ },
51
+ );
52
+
53
+ const credentials: AuthWebAuthnCredential[] = commandCredentials.map(
54
+ item => ({
55
+ credentialId: item.CredentialId,
56
+ friendlyCredentialName: item.FriendlyCredentialName,
57
+ relyingPartyId: item.RelyingPartyId,
58
+ authenticatorAttachment: item.AuthenticatorAttachment,
59
+ authenticatorTransports: item.AuthenticatorTransports,
60
+ createdAt: item.CreatedAt ? new Date(item.CreatedAt * 1000) : undefined,
61
+ }),
62
+ );
63
+
64
+ return {
65
+ credentials,
66
+ nextToken,
67
+ };
68
+ }
@@ -0,0 +1,18 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ import { base64Encoder } from '@aws-amplify/core/internals/utils';
5
+
6
+ // https://datatracker.ietf.org/doc/html/rfc4648#page-7
7
+
8
+ /**
9
+ * Converts an ArrayBuffer to a base64url encoded string
10
+ * @param buffer - the ArrayBuffer instance of a Uint8Array
11
+ * @returns string - a base64url encoded string
12
+ */
13
+ export const convertArrayBufferToBase64Url = (buffer: ArrayBuffer): string => {
14
+ return base64Encoder.convert(new Uint8Array(buffer), {
15
+ urlSafe: true,
16
+ skipPadding: true,
17
+ });
18
+ };
@@ -0,0 +1,18 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ import { base64Decoder } from '@aws-amplify/core/internals/utils';
5
+
6
+ /**
7
+ * Converts a base64url encoded string to an ArrayBuffer
8
+ * @param base64url - a base64url encoded string
9
+ * @returns ArrayBuffer
10
+ */
11
+ export const convertBase64UrlToArrayBuffer = (
12
+ base64url: string,
13
+ ): ArrayBuffer => {
14
+ return Uint8Array.from(
15
+ base64Decoder.convert(base64url, { urlSafe: true }),
16
+ x => x.charCodeAt(0),
17
+ ).buffer;
18
+ };
@@ -0,0 +1,5 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ export { convertArrayBufferToBase64Url } from './convertArrayBufferToBase64Url';
5
+ export { convertBase64UrlToArrayBuffer } from './convertBase64UrlToArrayBuffer';
@@ -0,0 +1,7 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ export {
5
+ convertArrayBufferToBase64Url,
6
+ convertBase64UrlToArrayBuffer,
7
+ } from './base64url';
@@ -0,0 +1,31 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ import { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';
5
+
6
+ import {
7
+ CompleteWebAuthnRegistrationCommandInput,
8
+ CompleteWebAuthnRegistrationCommandOutput,
9
+ ServiceClientFactoryInput,
10
+ } from './types';
11
+ import { cognitoUserPoolTransferHandler } from './shared/handler';
12
+ import {
13
+ createUserPoolDeserializer,
14
+ createUserPoolSerializer,
15
+ } from './shared/serde';
16
+ import { DEFAULT_SERVICE_CLIENT_API_CONFIG } from './constants';
17
+
18
+ export const createCompleteWebAuthnRegistrationClient = (
19
+ config: ServiceClientFactoryInput,
20
+ ) =>
21
+ composeServiceApi(
22
+ cognitoUserPoolTransferHandler,
23
+ createUserPoolSerializer<CompleteWebAuthnRegistrationCommandInput>(
24
+ 'CompleteWebAuthnRegistration',
25
+ ),
26
+ createUserPoolDeserializer<CompleteWebAuthnRegistrationCommandOutput>(),
27
+ {
28
+ ...DEFAULT_SERVICE_CLIENT_API_CONFIG,
29
+ ...config,
30
+ },
31
+ );
@@ -0,0 +1,31 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ import { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';
5
+
6
+ import {
7
+ DeleteWebAuthnCredentialCommandInput,
8
+ DeleteWebAuthnCredentialCommandOutput,
9
+ ServiceClientFactoryInput,
10
+ } from './types';
11
+ import { cognitoUserPoolTransferHandler } from './shared/handler';
12
+ import {
13
+ createUserPoolDeserializer,
14
+ createUserPoolSerializer,
15
+ } from './shared/serde';
16
+ import { DEFAULT_SERVICE_CLIENT_API_CONFIG } from './constants';
17
+
18
+ export const createDeleteWebAuthnCredentialClient = (
19
+ config: ServiceClientFactoryInput,
20
+ ) =>
21
+ composeServiceApi(
22
+ cognitoUserPoolTransferHandler,
23
+ createUserPoolSerializer<DeleteWebAuthnCredentialCommandInput>(
24
+ 'DeleteWebAuthnCredential',
25
+ ),
26
+ createUserPoolDeserializer<DeleteWebAuthnCredentialCommandOutput>(),
27
+ {
28
+ ...DEFAULT_SERVICE_CLIENT_API_CONFIG,
29
+ ...config,
30
+ },
31
+ );
@@ -0,0 +1,31 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ import { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';
5
+
6
+ import {
7
+ ListWebAuthnCredentialsCommandInput,
8
+ ListWebAuthnCredentialsCommandOutput,
9
+ ServiceClientFactoryInput,
10
+ } from './types';
11
+ import { cognitoUserPoolTransferHandler } from './shared/handler';
12
+ import {
13
+ createUserPoolDeserializer,
14
+ createUserPoolSerializer,
15
+ } from './shared/serde';
16
+ import { DEFAULT_SERVICE_CLIENT_API_CONFIG } from './constants';
17
+
18
+ export const createListWebAuthnCredentialsClient = (
19
+ config: ServiceClientFactoryInput,
20
+ ) =>
21
+ composeServiceApi(
22
+ cognitoUserPoolTransferHandler,
23
+ createUserPoolSerializer<ListWebAuthnCredentialsCommandInput>(
24
+ 'ListWebAuthnCredentials',
25
+ ),
26
+ createUserPoolDeserializer<ListWebAuthnCredentialsCommandOutput>(),
27
+ {
28
+ ...DEFAULT_SERVICE_CLIENT_API_CONFIG,
29
+ ...config,
30
+ },
31
+ );
@@ -1,24 +1,61 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
  import { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';
4
+ import {
5
+ HttpResponse,
6
+ parseJsonBody,
7
+ parseJsonError,
8
+ } from '@aws-amplify/core/internals/aws-client-utils';
9
+
10
+ import { validationErrorMap } from '../../../../common/AuthErrorStrings';
11
+ import { AuthError } from '../../../../errors/AuthError';
12
+ import { AuthValidationErrorCode } from '../../../../errors/types/validation';
13
+ import { assertServiceError } from '../../../../errors/utils/assertServiceError';
14
+ import { SignUpException } from '../../../../providers/cognito/types/errors';
4
15
 
16
+ import { createUserPoolSerializer } from './shared/serde';
17
+ import { cognitoUserPoolTransferHandler } from './shared/handler';
18
+ import { DEFAULT_SERVICE_CLIENT_API_CONFIG } from './constants';
5
19
  import {
6
20
  ServiceClientFactoryInput,
7
21
  SignUpCommandInput,
8
22
  SignUpCommandOutput,
9
23
  } from './types';
10
- import { DEFAULT_SERVICE_CLIENT_API_CONFIG } from './constants';
11
- import { cognitoUserPoolTransferHandler } from './shared/handler';
12
- import {
13
- createUserPoolDeserializer,
14
- createUserPoolSerializer,
15
- } from './shared/serde';
24
+
25
+ export const createSignUpClientDeserializer =
26
+ (): ((response: HttpResponse) => Promise<SignUpCommandOutput>) =>
27
+ async (response: HttpResponse): Promise<SignUpCommandOutput> => {
28
+ if (response.statusCode >= 300) {
29
+ const error = await parseJsonError(response);
30
+ assertServiceError(error);
31
+
32
+ if (
33
+ // Missing Password Error
34
+ // 1 validation error detected: Value at 'password'failed to satisfy constraint: Member must not be null
35
+ error.name === SignUpException.InvalidParameterException &&
36
+ /'password'/.test(error.message) &&
37
+ /Member must not be null/.test(error.message)
38
+ ) {
39
+ const name = AuthValidationErrorCode.EmptySignUpPassword;
40
+ const { message, recoverySuggestion } = validationErrorMap[name];
41
+ throw new AuthError({
42
+ name,
43
+ message,
44
+ recoverySuggestion,
45
+ });
46
+ }
47
+
48
+ throw new AuthError({ name: error.name, message: error.message });
49
+ }
50
+
51
+ return parseJsonBody(response);
52
+ };
16
53
 
17
54
  export const createSignUpClient = (config: ServiceClientFactoryInput) =>
18
55
  composeServiceApi(
19
56
  cognitoUserPoolTransferHandler,
20
57
  createUserPoolSerializer<SignUpCommandInput>('SignUp'),
21
- createUserPoolDeserializer<SignUpCommandOutput>(),
58
+ createSignUpClientDeserializer(),
22
59
  {
23
60
  ...DEFAULT_SERVICE_CLIENT_API_CONFIG,
24
61
  ...config,
@@ -0,0 +1,31 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ import { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';
5
+
6
+ import {
7
+ ServiceClientFactoryInput,
8
+ StartWebAuthnRegistrationCommandInput,
9
+ StartWebAuthnRegistrationCommandOutput,
10
+ } from './types';
11
+ import { cognitoUserPoolTransferHandler } from './shared/handler';
12
+ import {
13
+ createUserPoolDeserializer,
14
+ createUserPoolSerializer,
15
+ } from './shared/serde';
16
+ import { DEFAULT_SERVICE_CLIENT_API_CONFIG } from './constants';
17
+
18
+ export const createStartWebAuthnRegistrationClient = (
19
+ config: ServiceClientFactoryInput,
20
+ ) =>
21
+ composeServiceApi(
22
+ cognitoUserPoolTransferHandler,
23
+ createUserPoolSerializer<StartWebAuthnRegistrationCommandInput>(
24
+ 'StartWebAuthnRegistration',
25
+ ),
26
+ createUserPoolDeserializer<StartWebAuthnRegistrationCommandOutput>(),
27
+ {
28
+ ...DEFAULT_SERVICE_CLIENT_API_CONFIG,
29
+ ...config,
30
+ },
31
+ );
@@ -24,3 +24,7 @@ export { createVerifyUserAttributeClient } from './createVerifyUserAttributeClie
24
24
  export { createUpdateDeviceStatusClient } from './createUpdateDeviceStatusClient';
25
25
  export { createListDevicesClient } from './createListDevicesClient';
26
26
  export { createDeleteUserAttributesClient } from './createDeleteUserAttributesClient';
27
+ export { createStartWebAuthnRegistrationClient } from './createStartWebAuthnRegistrationClient';
28
+ export { createCompleteWebAuthnRegistrationClient } from './createCompleteWebAuthnRegistrationClient';
29
+ export { createListWebAuthnCredentialsClient } from './createListWebAuthnCredentialsClient';
30
+ export { createDeleteWebAuthnCredentialClient } from './createDeleteWebAuthnCredentialClient';
@@ -30,7 +30,11 @@ type ClientOperation =
30
30
  | 'DeleteUserAttributes'
31
31
  | 'UpdateDeviceStatus'
32
32
  | 'ListDevices'
33
- | 'RevokeToken';
33
+ | 'RevokeToken'
34
+ | 'StartWebAuthnRegistration'
35
+ | 'CompleteWebAuthnRegistration'
36
+ | 'ListWebAuthnCredentials'
37
+ | 'DeleteWebAuthnCredential';
34
38
 
35
39
  export const createUserPoolSerializer =
36
40
  <Input>(operation: ClientOperation) =>
@@ -0,0 +1,43 @@
1
+ // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ export enum StartWebAuthnRegistrationException {
5
+ ForbiddenException = 'ForbiddenException',
6
+ InternalErrorException = 'InternalErrorException',
7
+ InvalidParameterException = 'InvalidParameterException',
8
+ LimitExceededException = 'LimitExceededException',
9
+ NotAuthorizedException = 'NotAuthorizedException',
10
+ TooManyRequestsException = 'TooManyRequestsException',
11
+ WebAuthnNotEnabledException = 'WebAuthnNotEnabledException',
12
+ WebAuthnConfigurationMissingException = 'WebAuthnConfigurationMissingException',
13
+ }
14
+
15
+ export enum CompleteWebAuthnRegistrationException {
16
+ ForbiddenException = 'ForbiddenException',
17
+ InternalErrorException = 'InternalErrorException',
18
+ InvalidParameterException = 'InvalidParameterException',
19
+ LimitExceededException = 'LimitExceededException',
20
+ NotAuthorizedException = 'NotAuthorizedException',
21
+ TooManyRequestsException = 'TooManyRequestsException',
22
+ WebAuthnNotEnabledException = 'WebAuthnNotEnabledException',
23
+ WebAuthnChallengeNotFoundException = 'WebAuthnChallengeNotFoundException',
24
+ WebAuthnRelyingPartyMismatchException = 'WebAuthnRelyingPartyMismatchException',
25
+ WebAuthnClientMismatchException = 'WebAuthnClientMismatchException',
26
+ WebAuthnOriginNotAllowedException = 'WebAuthnOriginNotAllowedException',
27
+ WebAuthnCredentialNotSupportedException = 'WebAuthnCredentialNotSupportedException',
28
+ }
29
+
30
+ export enum ListWebAuthnCredentialsException {
31
+ ForbiddenException = 'ForbiddenException',
32
+ InternalErrorException = 'InternalErrorException',
33
+ InvalidParameterException = 'InvalidParameterException',
34
+ NotAuthorizedException = 'NotAuthorizedException',
35
+ }
36
+
37
+ export enum DeleteWebAuthnCredentialException {
38
+ ForbiddenException = 'ForbiddenException',
39
+ InternalErrorException = 'InternalErrorException',
40
+ InvalidParameterException = 'InvalidParameterException',
41
+ NotAuthorizedException = 'NotAuthorizedException',
42
+ ResourceNotFoundException = 'ResourceNotFoundException',
43
+ }
@@ -1,4 +1,6 @@
1
1
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2
2
  // SPDX-License-Identifier: Apache-2.0
3
+
3
4
  export * from './sdk';
4
5
  export * from './serviceClient';
6
+ export * from './errors';