@okta/okta-auth-js 6.6.0 → 6.7.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 (920) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/README.md +20 -5
  3. package/cjs/AuthStateManager.js +6 -6
  4. package/cjs/AuthStateManager.js.map +1 -1
  5. package/cjs/OktaAuth.js +17 -7
  6. package/cjs/OktaAuth.js.map +1 -1
  7. package/cjs/OktaUserAgent.js +2 -2
  8. package/cjs/OktaUserAgent.js.map +1 -1
  9. package/cjs/PromiseQueue.js.map +1 -1
  10. package/cjs/SavedObject.js +6 -0
  11. package/cjs/SavedObject.js.map +1 -1
  12. package/cjs/ServiceManager.js +44 -68
  13. package/cjs/ServiceManager.js.map +1 -1
  14. package/cjs/StorageManager.js.map +1 -1
  15. package/cjs/TokenManager.js +63 -65
  16. package/cjs/TokenManager.js.map +1 -1
  17. package/cjs/TransactionManager.js.map +1 -1
  18. package/cjs/browser/browserStorage.js +13 -3
  19. package/cjs/browser/browserStorage.js.map +1 -1
  20. package/cjs/browser/fingerprint.js.map +1 -1
  21. package/cjs/builderUtil.js.map +1 -1
  22. package/cjs/cdnEntry.js +52 -0
  23. package/cjs/cdnEntry.js.map +1 -0
  24. package/cjs/clock.js.map +1 -1
  25. package/cjs/constants.js.map +1 -1
  26. package/cjs/crypto/base64.js.map +1 -1
  27. package/cjs/crypto/browser.js.map +1 -1
  28. package/cjs/crypto/index.js.map +1 -1
  29. package/cjs/crypto/node.js.map +1 -1
  30. package/cjs/crypto/oidcHash.js.map +1 -1
  31. package/cjs/crypto/verifyToken.js.map +1 -1
  32. package/cjs/crypto/webauthn.js.map +1 -1
  33. package/cjs/crypto/webcrypto.js.map +1 -1
  34. package/cjs/errors/AuthApiError.js +5 -1
  35. package/cjs/errors/AuthApiError.js.map +1 -1
  36. package/cjs/errors/AuthPollStopError.js.map +1 -1
  37. package/cjs/errors/AuthSdkError.js.map +1 -1
  38. package/cjs/errors/CustomError.js.map +1 -1
  39. package/cjs/errors/OAuthError.js.map +1 -1
  40. package/cjs/errors/index.js.map +1 -1
  41. package/cjs/features.js.map +1 -1
  42. package/cjs/fetch/fetchRequest.js.map +1 -1
  43. package/cjs/http/headers.js.map +1 -1
  44. package/cjs/http/index.js.map +1 -1
  45. package/cjs/http/request.js +14 -1
  46. package/cjs/http/request.js.map +1 -1
  47. package/cjs/idx/authenticate.js.map +1 -1
  48. package/cjs/idx/authenticator/Authenticator.js.map +1 -1
  49. package/cjs/idx/authenticator/OktaPassword.js.map +1 -1
  50. package/cjs/idx/authenticator/OktaVerifyTotp.js.map +1 -1
  51. package/cjs/idx/authenticator/SecurityQuestionEnrollment.js.map +1 -1
  52. package/cjs/idx/authenticator/SecurityQuestionVerification.js.map +1 -1
  53. package/cjs/idx/authenticator/VerificationCodeAuthenticator.js.map +1 -1
  54. package/cjs/idx/authenticator/WebauthnEnrollment.js.map +1 -1
  55. package/cjs/idx/authenticator/WebauthnVerification.js.map +1 -1
  56. package/cjs/idx/authenticator/getAuthenticator.js.map +1 -1
  57. package/cjs/idx/authenticator/index.js.map +1 -1
  58. package/cjs/idx/authenticator/util.js.map +1 -1
  59. package/cjs/idx/cancel.js.map +1 -1
  60. package/cjs/idx/emailVerify.js.map +1 -1
  61. package/cjs/idx/flow/AccountUnlockFlow.js.map +1 -1
  62. package/cjs/idx/flow/AuthenticationFlow.js.map +1 -1
  63. package/cjs/idx/flow/FlowSpecification.js.map +1 -1
  64. package/cjs/idx/flow/PasswordRecoveryFlow.js.map +1 -1
  65. package/cjs/idx/flow/RegistrationFlow.js.map +1 -1
  66. package/cjs/idx/flow/RemediationFlow.js.map +1 -1
  67. package/cjs/idx/flow/index.js.map +1 -1
  68. package/cjs/idx/handleInteractionCodeRedirect.js.map +1 -1
  69. package/cjs/idx/idxState/index.js.map +1 -1
  70. package/cjs/idx/idxState/v1/actionParser.js.map +1 -1
  71. package/cjs/idx/idxState/v1/generateIdxAction.js.map +1 -1
  72. package/cjs/idx/idxState/v1/idxResponseParser.js.map +1 -1
  73. package/cjs/idx/idxState/v1/makeIdxState.js.map +1 -1
  74. package/cjs/idx/idxState/v1/parsers.js.map +1 -1
  75. package/cjs/idx/idxState/v1/remediationParser.js.map +1 -1
  76. package/cjs/idx/index.js.map +1 -1
  77. package/cjs/idx/interact.js.map +1 -1
  78. package/cjs/idx/introspect.js.map +1 -1
  79. package/cjs/idx/poll.js.map +1 -1
  80. package/cjs/idx/proceed.js.map +1 -1
  81. package/cjs/idx/recoverPassword.js.map +1 -1
  82. package/cjs/idx/register.js.map +1 -1
  83. package/cjs/idx/remediate.js +7 -11
  84. package/cjs/idx/remediate.js.map +1 -1
  85. package/cjs/idx/remediators/AuthenticatorEnrollmentData.js.map +1 -1
  86. package/cjs/idx/remediators/AuthenticatorVerificationData.js.map +1 -1
  87. package/cjs/idx/remediators/Base/AuthenticatorData.js.map +1 -1
  88. package/cjs/idx/remediators/Base/Remediator.js.map +1 -1
  89. package/cjs/idx/remediators/Base/SelectAuthenticator.js.map +1 -1
  90. package/cjs/idx/remediators/Base/VerifyAuthenticator.js.map +1 -1
  91. package/cjs/idx/remediators/ChallengeAuthenticator.js.map +1 -1
  92. package/cjs/idx/remediators/ChallengePoll.js.map +1 -1
  93. package/cjs/idx/remediators/EnrollAuthenticator.js.map +1 -1
  94. package/cjs/idx/remediators/EnrollPoll.js.map +1 -1
  95. package/cjs/idx/remediators/EnrollProfile.js.map +1 -1
  96. package/cjs/idx/remediators/EnrollmentChannelData.js.map +1 -1
  97. package/cjs/idx/remediators/GenericRemediator/GenericRemediator.js.map +1 -1
  98. package/cjs/idx/remediators/GenericRemediator/index.js.map +1 -1
  99. package/cjs/idx/remediators/GenericRemediator/util.js +7 -1
  100. package/cjs/idx/remediators/GenericRemediator/util.js.map +1 -1
  101. package/cjs/idx/remediators/Identify.js.map +1 -1
  102. package/cjs/idx/remediators/ReEnrollAuthenticator.js.map +1 -1
  103. package/cjs/idx/remediators/RedirectIdp.js.map +1 -1
  104. package/cjs/idx/remediators/ResetAuthenticator.js.map +1 -1
  105. package/cjs/idx/remediators/SelectAuthenticatorAuthenticate.js.map +1 -1
  106. package/cjs/idx/remediators/SelectAuthenticatorEnroll.js.map +1 -1
  107. package/cjs/idx/remediators/SelectAuthenticatorUnlockAccount.js.map +1 -1
  108. package/cjs/idx/remediators/SelectEnrollProfile.js.map +1 -1
  109. package/cjs/idx/remediators/SelectEnrollmentChannel.js.map +1 -1
  110. package/cjs/idx/remediators/Skip.js.map +1 -1
  111. package/cjs/idx/remediators/index.js.map +1 -1
  112. package/cjs/idx/remediators/util.js.map +1 -1
  113. package/cjs/idx/run.js +1 -1
  114. package/cjs/idx/run.js.map +1 -1
  115. package/cjs/idx/startTransaction.js.map +1 -1
  116. package/cjs/idx/transactionMeta.js.map +1 -1
  117. package/cjs/idx/types/FlowIdentifier.js.map +1 -1
  118. package/cjs/idx/types/api.js.map +1 -1
  119. package/cjs/idx/types/idx-js.js.map +1 -1
  120. package/cjs/idx/types/index.js.map +1 -1
  121. package/cjs/idx/types/options.js.map +1 -1
  122. package/cjs/idx/unlockAccount.js.map +1 -1
  123. package/cjs/idx/util.js +21 -24
  124. package/cjs/idx/util.js.map +1 -1
  125. package/cjs/index.js.map +1 -1
  126. package/cjs/myaccount/api.js +43 -0
  127. package/cjs/myaccount/api.js.map +1 -0
  128. package/cjs/myaccount/emailApi.js +144 -0
  129. package/cjs/myaccount/emailApi.js.map +1 -0
  130. package/cjs/myaccount/index.js +30 -0
  131. package/cjs/myaccount/index.js.map +1 -0
  132. package/cjs/myaccount/phoneApi.js +123 -0
  133. package/cjs/myaccount/phoneApi.js.map +1 -0
  134. package/cjs/myaccount/profileApi.js +58 -0
  135. package/cjs/myaccount/profileApi.js.map +1 -0
  136. package/cjs/myaccount/request.js +168 -0
  137. package/cjs/myaccount/request.js.map +1 -0
  138. package/cjs/myaccount/transactions/Base.js +38 -0
  139. package/cjs/myaccount/transactions/Base.js.map +1 -0
  140. package/cjs/myaccount/transactions/EmailChallengeTransaction.js +58 -0
  141. package/cjs/myaccount/transactions/EmailChallengeTransaction.js.map +1 -0
  142. package/cjs/myaccount/transactions/EmailStatusTransaction.js +32 -0
  143. package/cjs/myaccount/transactions/EmailStatusTransaction.js.map +1 -0
  144. package/cjs/myaccount/transactions/EmailTransaction.js +94 -0
  145. package/cjs/myaccount/transactions/EmailTransaction.js.map +1 -0
  146. package/cjs/myaccount/transactions/PhoneTransaction.js +78 -0
  147. package/cjs/myaccount/transactions/PhoneTransaction.js.map +1 -0
  148. package/cjs/myaccount/transactions/ProfileSchemaTransaction.js +19 -0
  149. package/cjs/myaccount/transactions/ProfileSchemaTransaction.js.map +1 -0
  150. package/cjs/myaccount/transactions/ProfileTransaction.js +26 -0
  151. package/cjs/myaccount/transactions/ProfileTransaction.js.map +1 -0
  152. package/cjs/myaccount/transactions/index.js +61 -0
  153. package/cjs/myaccount/transactions/index.js.map +1 -0
  154. package/cjs/myaccount/types.js +64 -0
  155. package/cjs/myaccount/types.js.map +1 -0
  156. package/cjs/oidc/decodeToken.js.map +1 -1
  157. package/cjs/oidc/endpoints/authorize.js.map +1 -1
  158. package/cjs/oidc/endpoints/index.js.map +1 -1
  159. package/cjs/oidc/endpoints/token.js.map +1 -1
  160. package/cjs/oidc/endpoints/well-known.js.map +1 -1
  161. package/cjs/oidc/exchangeCodeForTokens.js.map +1 -1
  162. package/cjs/oidc/getToken.js.map +1 -1
  163. package/cjs/oidc/getUserInfo.js.map +1 -1
  164. package/cjs/oidc/getWithPopup.js.map +1 -1
  165. package/cjs/oidc/getWithRedirect.js.map +1 -1
  166. package/cjs/oidc/getWithoutPrompt.js.map +1 -1
  167. package/cjs/oidc/handleOAuthResponse.js.map +1 -1
  168. package/cjs/oidc/index.js.map +1 -1
  169. package/cjs/oidc/parseFromUrl.js.map +1 -1
  170. package/cjs/oidc/renewToken.js.map +1 -1
  171. package/cjs/oidc/renewTokens.js.map +1 -1
  172. package/cjs/oidc/renewTokensWithRefresh.js.map +1 -1
  173. package/cjs/oidc/revokeToken.js.map +1 -1
  174. package/cjs/oidc/util/browser.js.map +1 -1
  175. package/cjs/oidc/util/defaultTokenParams.js.map +1 -1
  176. package/cjs/oidc/util/errors.js.map +1 -1
  177. package/cjs/oidc/util/index.js.map +1 -1
  178. package/cjs/oidc/util/loginRedirect.js.map +1 -1
  179. package/cjs/oidc/util/oauth.js.map +1 -1
  180. package/cjs/oidc/util/oauthMeta.js.map +1 -1
  181. package/cjs/oidc/util/pkce.js.map +1 -1
  182. package/cjs/oidc/util/prepareTokenParams.js.map +1 -1
  183. package/cjs/oidc/util/refreshToken.js.map +1 -1
  184. package/cjs/oidc/util/urlParams.js.map +1 -1
  185. package/cjs/oidc/util/validateClaims.js.map +1 -1
  186. package/cjs/oidc/util/validateToken.js.map +1 -1
  187. package/cjs/oidc/verifyToken.js.map +1 -1
  188. package/cjs/options/browser.js.map +1 -1
  189. package/cjs/options/index.js +3 -1
  190. package/cjs/options/index.js.map +1 -1
  191. package/cjs/options/node.js.map +1 -1
  192. package/cjs/server/serverStorage.js +2 -1
  193. package/cjs/server/serverStorage.js.map +1 -1
  194. package/cjs/services/AutoRenewService.js +7 -7
  195. package/cjs/services/AutoRenewService.js.map +1 -1
  196. package/cjs/services/LeaderElectionService.js +103 -0
  197. package/cjs/services/LeaderElectionService.js.map +1 -0
  198. package/cjs/services/SyncStorageService.js +121 -39
  199. package/cjs/services/SyncStorageService.js.map +1 -1
  200. package/cjs/services/index.js +13 -0
  201. package/cjs/services/index.js.map +1 -1
  202. package/cjs/session.js.map +1 -1
  203. package/cjs/tx/AuthTransaction.js.map +1 -1
  204. package/cjs/tx/TransactionState.js.map +1 -1
  205. package/cjs/tx/api.js.map +1 -1
  206. package/cjs/tx/index.js.map +1 -1
  207. package/cjs/tx/poll.js.map +1 -1
  208. package/cjs/tx/util.js.map +1 -1
  209. package/cjs/types/AuthState.js.map +1 -1
  210. package/cjs/types/Cookies.js.map +1 -1
  211. package/cjs/types/EventEmitter.js.map +1 -1
  212. package/cjs/types/JWT.js.map +1 -1
  213. package/cjs/types/OAuth.js.map +1 -1
  214. package/cjs/types/OktaAuthOptions.js.map +1 -1
  215. package/cjs/types/Service.js.map +1 -1
  216. package/cjs/types/Storage.js.map +1 -1
  217. package/cjs/types/Token.js.map +1 -1
  218. package/cjs/types/TokenManager.js +16 -0
  219. package/cjs/types/TokenManager.js.map +1 -1
  220. package/cjs/types/Transaction.js.map +1 -1
  221. package/cjs/types/UserClaims.js.map +1 -1
  222. package/cjs/types/api.js.map +1 -1
  223. package/cjs/types/http.js.map +1 -1
  224. package/cjs/types/index.js +13 -0
  225. package/cjs/types/index.js.map +1 -1
  226. package/cjs/util/console.js +2 -1
  227. package/cjs/util/console.js.map +1 -1
  228. package/cjs/util/index.js.map +1 -1
  229. package/cjs/util/misc.js.map +1 -1
  230. package/cjs/util/object.js.map +1 -1
  231. package/cjs/util/sharedStorage.js.map +1 -1
  232. package/cjs/util/types.js.map +1 -1
  233. package/cjs/util/url.js.map +1 -1
  234. package/dist/myaccount.umd.js +3 -0
  235. package/dist/myaccount.umd.js.LICENSE.txt +12 -0
  236. package/dist/myaccount.umd.js.map +1 -0
  237. package/dist/okta-auth-js.min.js +1 -1
  238. package/dist/okta-auth-js.min.js.map +1 -1
  239. package/dist/okta-auth-js.polyfill.js +1 -1
  240. package/dist/okta-auth-js.polyfill.js.map +1 -1
  241. package/dist/okta-auth-js.umd.js +1 -1
  242. package/dist/okta-auth-js.umd.js.map +1 -1
  243. package/esm/browser/AuthStateManager.js +161 -0
  244. package/esm/browser/AuthStateManager.js.map +1 -0
  245. package/esm/browser/OktaAuth.js +560 -0
  246. package/esm/browser/OktaAuth.js.map +1 -0
  247. package/esm/browser/OktaUserAgent.js +39 -0
  248. package/esm/browser/OktaUserAgent.js.map +1 -0
  249. package/esm/browser/PromiseQueue.js +65 -0
  250. package/esm/browser/PromiseQueue.js.map +1 -0
  251. package/esm/browser/SavedObject.js +81 -0
  252. package/esm/browser/SavedObject.js.map +1 -0
  253. package/esm/browser/ServiceManager.js +115 -0
  254. package/esm/browser/ServiceManager.js.map +1 -0
  255. package/esm/browser/StorageManager.js +148 -0
  256. package/esm/browser/StorageManager.js.map +1 -0
  257. package/esm/browser/TokenManager.js +386 -0
  258. package/esm/browser/TokenManager.js.map +1 -0
  259. package/esm/browser/TransactionManager.js +244 -0
  260. package/esm/browser/TransactionManager.js.map +1 -0
  261. package/esm/browser/_virtual/_tslib.js +41 -0
  262. package/esm/browser/_virtual/_tslib.js.map +1 -0
  263. package/esm/browser/browser/browserStorage.js +216 -0
  264. package/esm/browser/browser/browserStorage.js.map +1 -0
  265. package/esm/browser/browser/fingerprint.js +69 -0
  266. package/esm/browser/browser/fingerprint.js.map +1 -0
  267. package/esm/browser/builderUtil.js +39 -0
  268. package/esm/browser/builderUtil.js.map +1 -0
  269. package/esm/browser/clock.js +28 -0
  270. package/esm/browser/clock.js.map +1 -0
  271. package/esm/browser/constants.js +37 -0
  272. package/esm/browser/constants.js.map +1 -0
  273. package/esm/browser/crypto/base64.js +66 -0
  274. package/esm/browser/crypto/base64.js.map +1 -0
  275. package/esm/browser/crypto/browser.js +18 -0
  276. package/esm/browser/crypto/browser.js.map +1 -0
  277. package/esm/browser/crypto/index.js +17 -0
  278. package/esm/browser/crypto/index.js.map +1 -0
  279. package/esm/browser/crypto/oidcHash.js +28 -0
  280. package/esm/browser/crypto/oidcHash.js.map +1 -0
  281. package/esm/browser/crypto/verifyToken.js +38 -0
  282. package/esm/browser/crypto/verifyToken.js.map +1 -0
  283. package/esm/browser/crypto/webauthn.js +79 -0
  284. package/esm/browser/crypto/webauthn.js.map +1 -0
  285. package/esm/browser/errors/AuthApiError.js +35 -0
  286. package/esm/browser/errors/AuthApiError.js.map +1 -0
  287. package/esm/browser/errors/AuthPollStopError.js +23 -0
  288. package/esm/browser/errors/AuthPollStopError.js.map +1 -0
  289. package/esm/browser/errors/AuthSdkError.js +31 -0
  290. package/esm/browser/errors/AuthSdkError.js.map +1 -0
  291. package/esm/browser/errors/CustomError.js +21 -0
  292. package/esm/browser/errors/CustomError.js.map +1 -0
  293. package/esm/browser/errors/OAuthError.js +27 -0
  294. package/esm/browser/errors/OAuthError.js.map +1 -0
  295. package/esm/browser/errors/index.js +26 -0
  296. package/esm/browser/errors/index.js.map +1 -0
  297. package/esm/browser/features.js +67 -0
  298. package/esm/browser/features.js.map +1 -0
  299. package/esm/browser/fetch/fetchRequest.js +90 -0
  300. package/esm/browser/fetch/fetchRequest.js.map +1 -0
  301. package/esm/browser/http/headers.js +19 -0
  302. package/esm/browser/http/headers.js.map +1 -0
  303. package/esm/browser/http/request.js +133 -0
  304. package/esm/browser/http/request.js.map +1 -0
  305. package/esm/browser/idx/authenticate.js +25 -0
  306. package/esm/browser/idx/authenticate.js.map +1 -0
  307. package/esm/browser/idx/authenticator/Authenticator.js +20 -0
  308. package/esm/browser/idx/authenticator/Authenticator.js.map +1 -0
  309. package/esm/browser/idx/authenticator/OktaPassword.js +33 -0
  310. package/esm/browser/idx/authenticator/OktaPassword.js.map +1 -0
  311. package/esm/browser/idx/authenticator/OktaVerifyTotp.js +26 -0
  312. package/esm/browser/idx/authenticator/OktaVerifyTotp.js.map +1 -0
  313. package/esm/browser/idx/authenticator/SecurityQuestionEnrollment.js +45 -0
  314. package/esm/browser/idx/authenticator/SecurityQuestionEnrollment.js.map +1 -0
  315. package/esm/browser/idx/authenticator/SecurityQuestionVerification.js +42 -0
  316. package/esm/browser/idx/authenticator/SecurityQuestionVerification.js.map +1 -0
  317. package/esm/browser/idx/authenticator/VerificationCodeAuthenticator.js +33 -0
  318. package/esm/browser/idx/authenticator/VerificationCodeAuthenticator.js.map +1 -0
  319. package/esm/browser/idx/authenticator/WebauthnEnrollment.js +41 -0
  320. package/esm/browser/idx/authenticator/WebauthnEnrollment.js.map +1 -0
  321. package/esm/browser/idx/authenticator/WebauthnVerification.js +43 -0
  322. package/esm/browser/idx/authenticator/WebauthnVerification.js.map +1 -0
  323. package/esm/browser/idx/authenticator/getAuthenticator.js +51 -0
  324. package/esm/browser/idx/authenticator/getAuthenticator.js.map +1 -0
  325. package/esm/browser/idx/authenticator/util.js +55 -0
  326. package/esm/browser/idx/authenticator/util.js.map +1 -0
  327. package/esm/browser/idx/cancel.js +42 -0
  328. package/esm/browser/idx/cancel.js.map +1 -0
  329. package/esm/browser/idx/emailVerify.js +46 -0
  330. package/esm/browser/idx/emailVerify.js.map +1 -0
  331. package/esm/browser/idx/flow/AccountUnlockFlow.js +43 -0
  332. package/esm/browser/idx/flow/AccountUnlockFlow.js.map +1 -0
  333. package/esm/browser/idx/flow/AuthenticationFlow.js +49 -0
  334. package/esm/browser/idx/flow/AuthenticationFlow.js.map +1 -0
  335. package/esm/browser/idx/flow/FlowSpecification.js +56 -0
  336. package/esm/browser/idx/flow/FlowSpecification.js.map +1 -0
  337. package/esm/browser/idx/flow/PasswordRecoveryFlow.js +47 -0
  338. package/esm/browser/idx/flow/PasswordRecoveryFlow.js.map +1 -0
  339. package/esm/browser/idx/flow/RegistrationFlow.js +46 -0
  340. package/esm/browser/idx/flow/RegistrationFlow.js.map +1 -0
  341. package/esm/browser/idx/handleInteractionCodeRedirect.js +41 -0
  342. package/esm/browser/idx/handleInteractionCodeRedirect.js.map +1 -0
  343. package/esm/browser/idx/idxState/index.js +46 -0
  344. package/esm/browser/idx/idxState/index.js.map +1 -0
  345. package/esm/browser/idx/idxState/v1/actionParser.js +53 -0
  346. package/esm/browser/idx/idxState/v1/actionParser.js.map +1 -0
  347. package/esm/browser/idx/idxState/v1/generateIdxAction.js +65 -0
  348. package/esm/browser/idx/idxState/v1/generateIdxAction.js.map +1 -0
  349. package/esm/browser/idx/idxState/v1/idxResponseParser.js +95 -0
  350. package/esm/browser/idx/idxState/v1/idxResponseParser.js.map +1 -0
  351. package/esm/browser/idx/idxState/v1/makeIdxState.js +46 -0
  352. package/esm/browser/idx/idxState/v1/makeIdxState.js.map +1 -0
  353. package/esm/browser/idx/idxState/v1/parsers.js +20 -0
  354. package/esm/browser/idx/idxState/v1/parsers.js.map +1 -0
  355. package/esm/browser/idx/idxState/v1/remediationParser.js +25 -0
  356. package/esm/browser/idx/idxState/v1/remediationParser.js.map +1 -0
  357. package/esm/browser/idx/interact.js +62 -0
  358. package/esm/browser/idx/interact.js.map +1 -0
  359. package/esm/browser/idx/introspect.js +68 -0
  360. package/esm/browser/idx/introspect.js.map +1 -0
  361. package/esm/browser/idx/poll.js +52 -0
  362. package/esm/browser/idx/poll.js.map +1 -0
  363. package/esm/browser/idx/proceed.js +34 -0
  364. package/esm/browser/idx/proceed.js.map +1 -0
  365. package/esm/browser/idx/recoverPassword.js +41 -0
  366. package/esm/browser/idx/recoverPassword.js.map +1 -0
  367. package/esm/browser/idx/register.js +36 -0
  368. package/esm/browser/idx/register.js.map +1 -0
  369. package/esm/browser/idx/remediate.js +134 -0
  370. package/esm/browser/idx/remediate.js.map +1 -0
  371. package/esm/browser/idx/remediators/AuthenticatorEnrollmentData.js +48 -0
  372. package/esm/browser/idx/remediators/AuthenticatorEnrollmentData.js.map +1 -0
  373. package/esm/browser/idx/remediators/AuthenticatorVerificationData.js +71 -0
  374. package/esm/browser/idx/remediators/AuthenticatorVerificationData.js.map +1 -0
  375. package/esm/browser/idx/remediators/Base/AuthenticatorData.js +82 -0
  376. package/esm/browser/idx/remediators/Base/AuthenticatorData.js.map +1 -0
  377. package/esm/browser/idx/remediators/Base/Remediator.js +177 -0
  378. package/esm/browser/idx/remediators/Base/Remediator.js.map +1 -0
  379. package/esm/browser/idx/remediators/Base/SelectAuthenticator.js +90 -0
  380. package/esm/browser/idx/remediators/Base/SelectAuthenticator.js.map +1 -0
  381. package/esm/browser/idx/remediators/Base/VerifyAuthenticator.js +44 -0
  382. package/esm/browser/idx/remediators/Base/VerifyAuthenticator.js.map +1 -0
  383. package/esm/browser/idx/remediators/ChallengeAuthenticator.js +20 -0
  384. package/esm/browser/idx/remediators/ChallengeAuthenticator.js.map +1 -0
  385. package/esm/browser/idx/remediators/ChallengePoll.js +23 -0
  386. package/esm/browser/idx/remediators/ChallengePoll.js.map +1 -0
  387. package/esm/browser/idx/remediators/EnrollAuthenticator.js +20 -0
  388. package/esm/browser/idx/remediators/EnrollAuthenticator.js.map +1 -0
  389. package/esm/browser/idx/remediators/EnrollPoll.js +38 -0
  390. package/esm/browser/idx/remediators/EnrollPoll.js.map +1 -0
  391. package/esm/browser/idx/remediators/EnrollProfile.js +52 -0
  392. package/esm/browser/idx/remediators/EnrollProfile.js.map +1 -0
  393. package/esm/browser/idx/remediators/EnrollmentChannelData.js +49 -0
  394. package/esm/browser/idx/remediators/EnrollmentChannelData.js.map +1 -0
  395. package/esm/browser/idx/remediators/GenericRemediator/GenericRemediator.js +61 -0
  396. package/esm/browser/idx/remediators/GenericRemediator/GenericRemediator.js.map +1 -0
  397. package/esm/browser/idx/remediators/GenericRemediator/util.js +92 -0
  398. package/esm/browser/idx/remediators/GenericRemediator/util.js.map +1 -0
  399. package/esm/browser/idx/remediators/Identify.js +40 -0
  400. package/esm/browser/idx/remediators/Identify.js.map +1 -0
  401. package/esm/browser/idx/remediators/ReEnrollAuthenticator.js +34 -0
  402. package/esm/browser/idx/remediators/ReEnrollAuthenticator.js.map +1 -0
  403. package/esm/browser/idx/remediators/RedirectIdp.js +32 -0
  404. package/esm/browser/idx/remediators/RedirectIdp.js.map +1 -0
  405. package/esm/browser/idx/remediators/ResetAuthenticator.js +20 -0
  406. package/esm/browser/idx/remediators/ResetAuthenticator.js.map +1 -0
  407. package/esm/browser/idx/remediators/SelectAuthenticatorAuthenticate.js +35 -0
  408. package/esm/browser/idx/remediators/SelectAuthenticatorAuthenticate.js.map +1 -0
  409. package/esm/browser/idx/remediators/SelectAuthenticatorEnroll.js +20 -0
  410. package/esm/browser/idx/remediators/SelectAuthenticatorEnroll.js.map +1 -0
  411. package/esm/browser/idx/remediators/SelectAuthenticatorUnlockAccount.js +44 -0
  412. package/esm/browser/idx/remediators/SelectAuthenticatorUnlockAccount.js.map +1 -0
  413. package/esm/browser/idx/remediators/SelectEnrollProfile.js +23 -0
  414. package/esm/browser/idx/remediators/SelectEnrollProfile.js.map +1 -0
  415. package/esm/browser/idx/remediators/SelectEnrollmentChannel.js +50 -0
  416. package/esm/browser/idx/remediators/SelectEnrollmentChannel.js.map +1 -0
  417. package/esm/browser/idx/remediators/Skip.js +23 -0
  418. package/esm/browser/idx/remediators/Skip.js.map +1 -0
  419. package/esm/browser/idx/remediators/index.js +33 -0
  420. package/esm/browser/idx/remediators/index.js.map +1 -0
  421. package/esm/browser/idx/remediators/util.js +34 -0
  422. package/esm/browser/idx/remediators/util.js.map +1 -0
  423. package/esm/browser/idx/run.js +245 -0
  424. package/esm/browser/idx/run.js.map +1 -0
  425. package/esm/browser/idx/startTransaction.js +21 -0
  426. package/esm/browser/idx/startTransaction.js.map +1 -0
  427. package/esm/browser/idx/transactionMeta.js +110 -0
  428. package/esm/browser/idx/transactionMeta.js.map +1 -0
  429. package/esm/browser/idx/types/api.js +43 -0
  430. package/esm/browser/idx/types/api.js.map +1 -0
  431. package/esm/browser/idx/types/idx-js.js +21 -0
  432. package/esm/browser/idx/types/idx-js.js.map +1 -0
  433. package/esm/browser/idx/unlockAccount.js +32 -0
  434. package/esm/browser/idx/unlockAccount.js.map +1 -0
  435. package/esm/browser/idx/util.js +212 -0
  436. package/esm/browser/idx/util.js.map +1 -0
  437. package/esm/browser/index.js +91 -0
  438. package/esm/browser/index.js.map +1 -0
  439. package/esm/browser/myaccount/emailApi.js +86 -0
  440. package/esm/browser/myaccount/emailApi.js.map +1 -0
  441. package/esm/browser/myaccount/myaccount/index.js +24 -0
  442. package/esm/browser/myaccount/myaccount/index.js.map +1 -0
  443. package/esm/browser/myaccount/phoneApi.js +76 -0
  444. package/esm/browser/myaccount/phoneApi.js.map +1 -0
  445. package/esm/browser/myaccount/profileApi.js +46 -0
  446. package/esm/browser/myaccount/profileApi.js.map +1 -0
  447. package/esm/browser/myaccount/request.js +121 -0
  448. package/esm/browser/myaccount/request.js.map +1 -0
  449. package/esm/browser/myaccount/transactions/Base.js +32 -0
  450. package/esm/browser/myaccount/transactions/Base.js.map +1 -0
  451. package/esm/browser/myaccount/transactions/EmailChallengeTransaction.js +48 -0
  452. package/esm/browser/myaccount/transactions/EmailChallengeTransaction.js.map +1 -0
  453. package/esm/browser/myaccount/transactions/EmailStatusTransaction.js +28 -0
  454. package/esm/browser/myaccount/transactions/EmailStatusTransaction.js.map +1 -0
  455. package/esm/browser/myaccount/transactions/EmailTransaction.js +81 -0
  456. package/esm/browser/myaccount/transactions/EmailTransaction.js.map +1 -0
  457. package/esm/browser/myaccount/transactions/PhoneTransaction.js +67 -0
  458. package/esm/browser/myaccount/transactions/PhoneTransaction.js.map +1 -0
  459. package/esm/browser/myaccount/transactions/ProfileSchemaTransaction.js +23 -0
  460. package/esm/browser/myaccount/transactions/ProfileSchemaTransaction.js.map +1 -0
  461. package/esm/browser/myaccount/transactions/ProfileTransaction.js +26 -0
  462. package/esm/browser/myaccount/transactions/ProfileTransaction.js.map +1 -0
  463. package/esm/browser/myaccount/types.js +25 -0
  464. package/esm/browser/myaccount/types.js.map +1 -0
  465. package/esm/browser/oidc/decodeToken.js +33 -0
  466. package/esm/browser/oidc/decodeToken.js.map +1 -0
  467. package/esm/browser/oidc/endpoints/authorize.js +63 -0
  468. package/esm/browser/oidc/endpoints/authorize.js.map +1 -0
  469. package/esm/browser/oidc/endpoints/token.js +83 -0
  470. package/esm/browser/oidc/endpoints/token.js.map +1 -0
  471. package/esm/browser/oidc/endpoints/well-known.js +55 -0
  472. package/esm/browser/oidc/endpoints/well-known.js.map +1 -0
  473. package/esm/browser/oidc/exchangeCodeForTokens.js +58 -0
  474. package/esm/browser/oidc/exchangeCodeForTokens.js.map +1 -0
  475. package/esm/browser/oidc/getToken.js +117 -0
  476. package/esm/browser/oidc/getToken.js.map +1 -0
  477. package/esm/browser/oidc/getUserInfo.js +69 -0
  478. package/esm/browser/oidc/getUserInfo.js.map +1 -0
  479. package/esm/browser/oidc/getWithPopup.js +35 -0
  480. package/esm/browser/oidc/getWithPopup.js.map +1 -0
  481. package/esm/browser/oidc/getWithRedirect.js +34 -0
  482. package/esm/browser/oidc/getWithRedirect.js.map +1 -0
  483. package/esm/browser/oidc/getWithoutPrompt.js +31 -0
  484. package/esm/browser/oidc/getWithoutPrompt.js.map +1 -0
  485. package/esm/browser/oidc/handleOAuthResponse.js +119 -0
  486. package/esm/browser/oidc/handleOAuthResponse.js.map +1 -0
  487. package/esm/browser/oidc/parseFromUrl.js +116 -0
  488. package/esm/browser/oidc/parseFromUrl.js.map +1 -0
  489. package/esm/browser/oidc/renewToken.js +67 -0
  490. package/esm/browser/oidc/renewToken.js.map +1 -0
  491. package/esm/browser/oidc/renewTokens.js +58 -0
  492. package/esm/browser/oidc/renewTokens.js.map +1 -0
  493. package/esm/browser/oidc/renewTokensWithRefresh.js +47 -0
  494. package/esm/browser/oidc/renewTokensWithRefresh.js.map +1 -0
  495. package/esm/browser/oidc/revokeToken.js +49 -0
  496. package/esm/browser/oidc/revokeToken.js.map +1 -0
  497. package/esm/browser/oidc/util/browser.js +69 -0
  498. package/esm/browser/oidc/util/browser.js.map +1 -0
  499. package/esm/browser/oidc/util/defaultTokenParams.js +34 -0
  500. package/esm/browser/oidc/util/defaultTokenParams.js.map +1 -0
  501. package/esm/browser/oidc/util/errors.js +38 -0
  502. package/esm/browser/oidc/util/errors.js.map +1 -0
  503. package/esm/browser/oidc/util/loginRedirect.js +66 -0
  504. package/esm/browser/oidc/util/loginRedirect.js.map +1 -0
  505. package/esm/browser/oidc/util/oauth.js +65 -0
  506. package/esm/browser/oidc/util/oauth.js.map +1 -0
  507. package/esm/browser/oidc/util/oauthMeta.js +38 -0
  508. package/esm/browser/oidc/util/oauthMeta.js.map +1 -0
  509. package/esm/browser/oidc/util/pkce.js +48 -0
  510. package/esm/browser/oidc/util/pkce.js.map +1 -0
  511. package/esm/browser/oidc/util/prepareTokenParams.js +65 -0
  512. package/esm/browser/oidc/util/prepareTokenParams.js.map +1 -0
  513. package/esm/browser/oidc/util/refreshToken.js +33 -0
  514. package/esm/browser/oidc/util/refreshToken.js.map +1 -0
  515. package/esm/browser/oidc/util/urlParams.js +43 -0
  516. package/esm/browser/oidc/util/urlParams.js.map +1 -0
  517. package/esm/browser/oidc/util/validateClaims.js +48 -0
  518. package/esm/browser/oidc/util/validateClaims.js.map +1 -0
  519. package/esm/browser/oidc/util/validateToken.js +34 -0
  520. package/esm/browser/oidc/util/validateToken.js.map +1 -0
  521. package/esm/browser/oidc/verifyToken.js +54 -0
  522. package/esm/browser/oidc/verifyToken.js.map +1 -0
  523. package/esm/browser/options/browser.js +77 -0
  524. package/esm/browser/options/browser.js.map +1 -0
  525. package/esm/browser/options/index.js +85 -0
  526. package/esm/browser/options/index.js.map +1 -0
  527. package/esm/browser/services/AutoRenewService.js +77 -0
  528. package/esm/browser/services/AutoRenewService.js.map +1 -0
  529. package/esm/browser/services/LeaderElectionService.js +74 -0
  530. package/esm/browser/services/LeaderElectionService.js.map +1 -0
  531. package/esm/browser/services/SyncStorageService.js +130 -0
  532. package/esm/browser/services/SyncStorageService.js.map +1 -0
  533. package/esm/browser/session.js +66 -0
  534. package/esm/browser/session.js.map +1 -0
  535. package/esm/browser/tx/AuthTransaction.js +174 -0
  536. package/esm/browser/tx/AuthTransaction.js.map +1 -0
  537. package/esm/browser/tx/api.js +72 -0
  538. package/esm/browser/tx/api.js.map +1 -0
  539. package/esm/browser/tx/poll.js +117 -0
  540. package/esm/browser/tx/poll.js.map +1 -0
  541. package/esm/browser/tx/util.js +26 -0
  542. package/esm/browser/tx/util.js.map +1 -0
  543. package/esm/browser/types/Token.js +32 -0
  544. package/esm/browser/types/Token.js.map +1 -0
  545. package/esm/browser/types/TokenManager.js +21 -0
  546. package/esm/browser/types/TokenManager.js.map +1 -0
  547. package/esm/browser/types/Transaction.js +52 -0
  548. package/esm/browser/types/Transaction.js.map +1 -0
  549. package/esm/browser/util/console.js +50 -0
  550. package/esm/browser/util/console.js.map +1 -0
  551. package/esm/browser/util/misc.js +32 -0
  552. package/esm/browser/util/misc.js.map +1 -0
  553. package/esm/browser/util/object.js +98 -0
  554. package/esm/browser/util/object.js.map +1 -0
  555. package/esm/browser/util/sharedStorage.js +56 -0
  556. package/esm/browser/util/sharedStorage.js.map +1 -0
  557. package/esm/browser/util/types.js +30 -0
  558. package/esm/browser/util/types.js.map +1 -0
  559. package/esm/browser/util/url.js +57 -0
  560. package/esm/browser/util/url.js.map +1 -0
  561. package/esm/node/AuthStateManager.js +161 -0
  562. package/esm/node/AuthStateManager.js.map +1 -0
  563. package/esm/node/OktaAuth.js +560 -0
  564. package/esm/node/OktaAuth.js.map +1 -0
  565. package/esm/node/OktaUserAgent.js +39 -0
  566. package/esm/node/OktaUserAgent.js.map +1 -0
  567. package/esm/node/PromiseQueue.js +65 -0
  568. package/esm/node/PromiseQueue.js.map +1 -0
  569. package/esm/node/SavedObject.js +81 -0
  570. package/esm/node/SavedObject.js.map +1 -0
  571. package/esm/node/ServiceManager.js +115 -0
  572. package/esm/node/ServiceManager.js.map +1 -0
  573. package/esm/node/StorageManager.js +148 -0
  574. package/esm/node/StorageManager.js.map +1 -0
  575. package/esm/node/TokenManager.js +387 -0
  576. package/esm/node/TokenManager.js.map +1 -0
  577. package/esm/node/TransactionManager.js +244 -0
  578. package/esm/node/TransactionManager.js.map +1 -0
  579. package/esm/node/_virtual/_tslib.js +41 -0
  580. package/esm/node/_virtual/_tslib.js.map +1 -0
  581. package/esm/node/browser/browserStorage.js +216 -0
  582. package/esm/node/browser/browserStorage.js.map +1 -0
  583. package/esm/node/browser/fingerprint.js +70 -0
  584. package/esm/node/browser/fingerprint.js.map +1 -0
  585. package/esm/node/builderUtil.js +39 -0
  586. package/esm/node/builderUtil.js.map +1 -0
  587. package/esm/node/clock.js +28 -0
  588. package/esm/node/clock.js.map +1 -0
  589. package/esm/node/constants.js +37 -0
  590. package/esm/node/constants.js.map +1 -0
  591. package/esm/node/crypto/base64.js +66 -0
  592. package/esm/node/crypto/base64.js.map +1 -0
  593. package/esm/node/crypto/index.js +17 -0
  594. package/esm/node/crypto/index.js.map +1 -0
  595. package/esm/node/crypto/node.js +48 -0
  596. package/esm/node/crypto/node.js.map +1 -0
  597. package/esm/node/crypto/oidcHash.js +28 -0
  598. package/esm/node/crypto/oidcHash.js.map +1 -0
  599. package/esm/node/crypto/verifyToken.js +38 -0
  600. package/esm/node/crypto/verifyToken.js.map +1 -0
  601. package/esm/node/crypto/webauthn.js +79 -0
  602. package/esm/node/crypto/webauthn.js.map +1 -0
  603. package/esm/node/errors/AuthApiError.js +35 -0
  604. package/esm/node/errors/AuthApiError.js.map +1 -0
  605. package/esm/node/errors/AuthPollStopError.js +23 -0
  606. package/esm/node/errors/AuthPollStopError.js.map +1 -0
  607. package/esm/node/errors/AuthSdkError.js +31 -0
  608. package/esm/node/errors/AuthSdkError.js.map +1 -0
  609. package/esm/node/errors/CustomError.js +21 -0
  610. package/esm/node/errors/CustomError.js.map +1 -0
  611. package/esm/node/errors/OAuthError.js +27 -0
  612. package/esm/node/errors/OAuthError.js.map +1 -0
  613. package/esm/node/errors/index.js +26 -0
  614. package/esm/node/errors/index.js.map +1 -0
  615. package/esm/node/features.js +67 -0
  616. package/esm/node/features.js.map +1 -0
  617. package/esm/node/fetch/fetchRequest.js +90 -0
  618. package/esm/node/fetch/fetchRequest.js.map +1 -0
  619. package/esm/node/http/headers.js +19 -0
  620. package/esm/node/http/headers.js.map +1 -0
  621. package/esm/node/http/request.js +133 -0
  622. package/esm/node/http/request.js.map +1 -0
  623. package/esm/node/idx/authenticate.js +25 -0
  624. package/esm/node/idx/authenticate.js.map +1 -0
  625. package/esm/node/idx/authenticator/Authenticator.js +20 -0
  626. package/esm/node/idx/authenticator/Authenticator.js.map +1 -0
  627. package/esm/node/idx/authenticator/OktaPassword.js +33 -0
  628. package/esm/node/idx/authenticator/OktaPassword.js.map +1 -0
  629. package/esm/node/idx/authenticator/OktaVerifyTotp.js +26 -0
  630. package/esm/node/idx/authenticator/OktaVerifyTotp.js.map +1 -0
  631. package/esm/node/idx/authenticator/SecurityQuestionEnrollment.js +45 -0
  632. package/esm/node/idx/authenticator/SecurityQuestionEnrollment.js.map +1 -0
  633. package/esm/node/idx/authenticator/SecurityQuestionVerification.js +42 -0
  634. package/esm/node/idx/authenticator/SecurityQuestionVerification.js.map +1 -0
  635. package/esm/node/idx/authenticator/VerificationCodeAuthenticator.js +33 -0
  636. package/esm/node/idx/authenticator/VerificationCodeAuthenticator.js.map +1 -0
  637. package/esm/node/idx/authenticator/WebauthnEnrollment.js +41 -0
  638. package/esm/node/idx/authenticator/WebauthnEnrollment.js.map +1 -0
  639. package/esm/node/idx/authenticator/WebauthnVerification.js +43 -0
  640. package/esm/node/idx/authenticator/WebauthnVerification.js.map +1 -0
  641. package/esm/node/idx/authenticator/getAuthenticator.js +51 -0
  642. package/esm/node/idx/authenticator/getAuthenticator.js.map +1 -0
  643. package/esm/node/idx/authenticator/util.js +55 -0
  644. package/esm/node/idx/authenticator/util.js.map +1 -0
  645. package/esm/node/idx/cancel.js +42 -0
  646. package/esm/node/idx/cancel.js.map +1 -0
  647. package/esm/node/idx/emailVerify.js +46 -0
  648. package/esm/node/idx/emailVerify.js.map +1 -0
  649. package/esm/node/idx/flow/AccountUnlockFlow.js +43 -0
  650. package/esm/node/idx/flow/AccountUnlockFlow.js.map +1 -0
  651. package/esm/node/idx/flow/AuthenticationFlow.js +49 -0
  652. package/esm/node/idx/flow/AuthenticationFlow.js.map +1 -0
  653. package/esm/node/idx/flow/FlowSpecification.js +56 -0
  654. package/esm/node/idx/flow/FlowSpecification.js.map +1 -0
  655. package/esm/node/idx/flow/PasswordRecoveryFlow.js +47 -0
  656. package/esm/node/idx/flow/PasswordRecoveryFlow.js.map +1 -0
  657. package/esm/node/idx/flow/RegistrationFlow.js +46 -0
  658. package/esm/node/idx/flow/RegistrationFlow.js.map +1 -0
  659. package/esm/node/idx/handleInteractionCodeRedirect.js +41 -0
  660. package/esm/node/idx/handleInteractionCodeRedirect.js.map +1 -0
  661. package/esm/node/idx/idxState/index.js +46 -0
  662. package/esm/node/idx/idxState/index.js.map +1 -0
  663. package/esm/node/idx/idxState/v1/actionParser.js +53 -0
  664. package/esm/node/idx/idxState/v1/actionParser.js.map +1 -0
  665. package/esm/node/idx/idxState/v1/generateIdxAction.js +65 -0
  666. package/esm/node/idx/idxState/v1/generateIdxAction.js.map +1 -0
  667. package/esm/node/idx/idxState/v1/idxResponseParser.js +95 -0
  668. package/esm/node/idx/idxState/v1/idxResponseParser.js.map +1 -0
  669. package/esm/node/idx/idxState/v1/makeIdxState.js +46 -0
  670. package/esm/node/idx/idxState/v1/makeIdxState.js.map +1 -0
  671. package/esm/node/idx/idxState/v1/parsers.js +20 -0
  672. package/esm/node/idx/idxState/v1/parsers.js.map +1 -0
  673. package/esm/node/idx/idxState/v1/remediationParser.js +25 -0
  674. package/esm/node/idx/idxState/v1/remediationParser.js.map +1 -0
  675. package/esm/node/idx/interact.js +63 -0
  676. package/esm/node/idx/interact.js.map +1 -0
  677. package/esm/node/idx/introspect.js +69 -0
  678. package/esm/node/idx/introspect.js.map +1 -0
  679. package/esm/node/idx/poll.js +52 -0
  680. package/esm/node/idx/poll.js.map +1 -0
  681. package/esm/node/idx/proceed.js +34 -0
  682. package/esm/node/idx/proceed.js.map +1 -0
  683. package/esm/node/idx/recoverPassword.js +41 -0
  684. package/esm/node/idx/recoverPassword.js.map +1 -0
  685. package/esm/node/idx/register.js +36 -0
  686. package/esm/node/idx/register.js.map +1 -0
  687. package/esm/node/idx/remediate.js +134 -0
  688. package/esm/node/idx/remediate.js.map +1 -0
  689. package/esm/node/idx/remediators/AuthenticatorEnrollmentData.js +48 -0
  690. package/esm/node/idx/remediators/AuthenticatorEnrollmentData.js.map +1 -0
  691. package/esm/node/idx/remediators/AuthenticatorVerificationData.js +71 -0
  692. package/esm/node/idx/remediators/AuthenticatorVerificationData.js.map +1 -0
  693. package/esm/node/idx/remediators/Base/AuthenticatorData.js +82 -0
  694. package/esm/node/idx/remediators/Base/AuthenticatorData.js.map +1 -0
  695. package/esm/node/idx/remediators/Base/Remediator.js +177 -0
  696. package/esm/node/idx/remediators/Base/Remediator.js.map +1 -0
  697. package/esm/node/idx/remediators/Base/SelectAuthenticator.js +90 -0
  698. package/esm/node/idx/remediators/Base/SelectAuthenticator.js.map +1 -0
  699. package/esm/node/idx/remediators/Base/VerifyAuthenticator.js +44 -0
  700. package/esm/node/idx/remediators/Base/VerifyAuthenticator.js.map +1 -0
  701. package/esm/node/idx/remediators/ChallengeAuthenticator.js +20 -0
  702. package/esm/node/idx/remediators/ChallengeAuthenticator.js.map +1 -0
  703. package/esm/node/idx/remediators/ChallengePoll.js +23 -0
  704. package/esm/node/idx/remediators/ChallengePoll.js.map +1 -0
  705. package/esm/node/idx/remediators/EnrollAuthenticator.js +20 -0
  706. package/esm/node/idx/remediators/EnrollAuthenticator.js.map +1 -0
  707. package/esm/node/idx/remediators/EnrollPoll.js +38 -0
  708. package/esm/node/idx/remediators/EnrollPoll.js.map +1 -0
  709. package/esm/node/idx/remediators/EnrollProfile.js +52 -0
  710. package/esm/node/idx/remediators/EnrollProfile.js.map +1 -0
  711. package/esm/node/idx/remediators/EnrollmentChannelData.js +49 -0
  712. package/esm/node/idx/remediators/EnrollmentChannelData.js.map +1 -0
  713. package/esm/node/idx/remediators/GenericRemediator/GenericRemediator.js +61 -0
  714. package/esm/node/idx/remediators/GenericRemediator/GenericRemediator.js.map +1 -0
  715. package/esm/node/idx/remediators/GenericRemediator/util.js +92 -0
  716. package/esm/node/idx/remediators/GenericRemediator/util.js.map +1 -0
  717. package/esm/node/idx/remediators/Identify.js +40 -0
  718. package/esm/node/idx/remediators/Identify.js.map +1 -0
  719. package/esm/node/idx/remediators/ReEnrollAuthenticator.js +34 -0
  720. package/esm/node/idx/remediators/ReEnrollAuthenticator.js.map +1 -0
  721. package/esm/node/idx/remediators/RedirectIdp.js +32 -0
  722. package/esm/node/idx/remediators/RedirectIdp.js.map +1 -0
  723. package/esm/node/idx/remediators/ResetAuthenticator.js +20 -0
  724. package/esm/node/idx/remediators/ResetAuthenticator.js.map +1 -0
  725. package/esm/node/idx/remediators/SelectAuthenticatorAuthenticate.js +35 -0
  726. package/esm/node/idx/remediators/SelectAuthenticatorAuthenticate.js.map +1 -0
  727. package/esm/node/idx/remediators/SelectAuthenticatorEnroll.js +20 -0
  728. package/esm/node/idx/remediators/SelectAuthenticatorEnroll.js.map +1 -0
  729. package/esm/node/idx/remediators/SelectAuthenticatorUnlockAccount.js +44 -0
  730. package/esm/node/idx/remediators/SelectAuthenticatorUnlockAccount.js.map +1 -0
  731. package/esm/node/idx/remediators/SelectEnrollProfile.js +23 -0
  732. package/esm/node/idx/remediators/SelectEnrollProfile.js.map +1 -0
  733. package/esm/node/idx/remediators/SelectEnrollmentChannel.js +50 -0
  734. package/esm/node/idx/remediators/SelectEnrollmentChannel.js.map +1 -0
  735. package/esm/node/idx/remediators/Skip.js +23 -0
  736. package/esm/node/idx/remediators/Skip.js.map +1 -0
  737. package/esm/node/idx/remediators/index.js +33 -0
  738. package/esm/node/idx/remediators/index.js.map +1 -0
  739. package/esm/node/idx/remediators/util.js +34 -0
  740. package/esm/node/idx/remediators/util.js.map +1 -0
  741. package/esm/node/idx/run.js +245 -0
  742. package/esm/node/idx/run.js.map +1 -0
  743. package/esm/node/idx/startTransaction.js +21 -0
  744. package/esm/node/idx/startTransaction.js.map +1 -0
  745. package/esm/node/idx/transactionMeta.js +111 -0
  746. package/esm/node/idx/transactionMeta.js.map +1 -0
  747. package/esm/node/idx/types/api.js +43 -0
  748. package/esm/node/idx/types/api.js.map +1 -0
  749. package/esm/node/idx/types/idx-js.js +21 -0
  750. package/esm/node/idx/types/idx-js.js.map +1 -0
  751. package/esm/node/idx/unlockAccount.js +32 -0
  752. package/esm/node/idx/unlockAccount.js.map +1 -0
  753. package/esm/node/idx/util.js +212 -0
  754. package/esm/node/idx/util.js.map +1 -0
  755. package/esm/node/index.js +91 -0
  756. package/esm/node/index.js.map +1 -0
  757. package/esm/node/myaccount/emailApi.js +86 -0
  758. package/esm/node/myaccount/emailApi.js.map +1 -0
  759. package/esm/node/myaccount/myaccount/index.js +24 -0
  760. package/esm/node/myaccount/myaccount/index.js.map +1 -0
  761. package/esm/node/myaccount/phoneApi.js +76 -0
  762. package/esm/node/myaccount/phoneApi.js.map +1 -0
  763. package/esm/node/myaccount/profileApi.js +46 -0
  764. package/esm/node/myaccount/profileApi.js.map +1 -0
  765. package/esm/node/myaccount/request.js +121 -0
  766. package/esm/node/myaccount/request.js.map +1 -0
  767. package/esm/node/myaccount/transactions/Base.js +32 -0
  768. package/esm/node/myaccount/transactions/Base.js.map +1 -0
  769. package/esm/node/myaccount/transactions/EmailChallengeTransaction.js +48 -0
  770. package/esm/node/myaccount/transactions/EmailChallengeTransaction.js.map +1 -0
  771. package/esm/node/myaccount/transactions/EmailStatusTransaction.js +28 -0
  772. package/esm/node/myaccount/transactions/EmailStatusTransaction.js.map +1 -0
  773. package/esm/node/myaccount/transactions/EmailTransaction.js +81 -0
  774. package/esm/node/myaccount/transactions/EmailTransaction.js.map +1 -0
  775. package/esm/node/myaccount/transactions/PhoneTransaction.js +67 -0
  776. package/esm/node/myaccount/transactions/PhoneTransaction.js.map +1 -0
  777. package/esm/node/myaccount/transactions/ProfileSchemaTransaction.js +23 -0
  778. package/esm/node/myaccount/transactions/ProfileSchemaTransaction.js.map +1 -0
  779. package/esm/node/myaccount/transactions/ProfileTransaction.js +26 -0
  780. package/esm/node/myaccount/transactions/ProfileTransaction.js.map +1 -0
  781. package/esm/node/myaccount/types.js +25 -0
  782. package/esm/node/myaccount/types.js.map +1 -0
  783. package/esm/node/oidc/decodeToken.js +34 -0
  784. package/esm/node/oidc/decodeToken.js.map +1 -0
  785. package/esm/node/oidc/endpoints/authorize.js +63 -0
  786. package/esm/node/oidc/endpoints/authorize.js.map +1 -0
  787. package/esm/node/oidc/endpoints/token.js +83 -0
  788. package/esm/node/oidc/endpoints/token.js.map +1 -0
  789. package/esm/node/oidc/endpoints/well-known.js +55 -0
  790. package/esm/node/oidc/endpoints/well-known.js.map +1 -0
  791. package/esm/node/oidc/exchangeCodeForTokens.js +59 -0
  792. package/esm/node/oidc/exchangeCodeForTokens.js.map +1 -0
  793. package/esm/node/oidc/getToken.js +118 -0
  794. package/esm/node/oidc/getToken.js.map +1 -0
  795. package/esm/node/oidc/getUserInfo.js +69 -0
  796. package/esm/node/oidc/getUserInfo.js.map +1 -0
  797. package/esm/node/oidc/getWithPopup.js +36 -0
  798. package/esm/node/oidc/getWithPopup.js.map +1 -0
  799. package/esm/node/oidc/getWithRedirect.js +35 -0
  800. package/esm/node/oidc/getWithRedirect.js.map +1 -0
  801. package/esm/node/oidc/getWithoutPrompt.js +31 -0
  802. package/esm/node/oidc/getWithoutPrompt.js.map +1 -0
  803. package/esm/node/oidc/handleOAuthResponse.js +120 -0
  804. package/esm/node/oidc/handleOAuthResponse.js.map +1 -0
  805. package/esm/node/oidc/parseFromUrl.js +117 -0
  806. package/esm/node/oidc/parseFromUrl.js.map +1 -0
  807. package/esm/node/oidc/renewToken.js +67 -0
  808. package/esm/node/oidc/renewToken.js.map +1 -0
  809. package/esm/node/oidc/renewTokens.js +59 -0
  810. package/esm/node/oidc/renewTokens.js.map +1 -0
  811. package/esm/node/oidc/renewTokensWithRefresh.js +47 -0
  812. package/esm/node/oidc/renewTokensWithRefresh.js.map +1 -0
  813. package/esm/node/oidc/revokeToken.js +49 -0
  814. package/esm/node/oidc/revokeToken.js.map +1 -0
  815. package/esm/node/oidc/util/browser.js +69 -0
  816. package/esm/node/oidc/util/browser.js.map +1 -0
  817. package/esm/node/oidc/util/defaultTokenParams.js +34 -0
  818. package/esm/node/oidc/util/defaultTokenParams.js.map +1 -0
  819. package/esm/node/oidc/util/errors.js +38 -0
  820. package/esm/node/oidc/util/errors.js.map +1 -0
  821. package/esm/node/oidc/util/loginRedirect.js +66 -0
  822. package/esm/node/oidc/util/loginRedirect.js.map +1 -0
  823. package/esm/node/oidc/util/oauth.js +65 -0
  824. package/esm/node/oidc/util/oauth.js.map +1 -0
  825. package/esm/node/oidc/util/oauthMeta.js +38 -0
  826. package/esm/node/oidc/util/oauthMeta.js.map +1 -0
  827. package/esm/node/oidc/util/pkce.js +48 -0
  828. package/esm/node/oidc/util/pkce.js.map +1 -0
  829. package/esm/node/oidc/util/prepareTokenParams.js +65 -0
  830. package/esm/node/oidc/util/prepareTokenParams.js.map +1 -0
  831. package/esm/node/oidc/util/refreshToken.js +33 -0
  832. package/esm/node/oidc/util/refreshToken.js.map +1 -0
  833. package/esm/node/oidc/util/urlParams.js +43 -0
  834. package/esm/node/oidc/util/urlParams.js.map +1 -0
  835. package/esm/node/oidc/util/validateClaims.js +48 -0
  836. package/esm/node/oidc/util/validateClaims.js.map +1 -0
  837. package/esm/node/oidc/util/validateToken.js +34 -0
  838. package/esm/node/oidc/util/validateToken.js.map +1 -0
  839. package/esm/node/oidc/verifyToken.js +55 -0
  840. package/esm/node/oidc/verifyToken.js.map +1 -0
  841. package/esm/node/options/index.js +85 -0
  842. package/esm/node/options/index.js.map +1 -0
  843. package/esm/node/options/node.js +41 -0
  844. package/esm/node/options/node.js.map +1 -0
  845. package/esm/node/server/serverStorage.js +82 -0
  846. package/esm/node/server/serverStorage.js.map +1 -0
  847. package/esm/node/services/AutoRenewService.js +77 -0
  848. package/esm/node/services/AutoRenewService.js.map +1 -0
  849. package/esm/node/services/LeaderElectionService.js +74 -0
  850. package/esm/node/services/LeaderElectionService.js.map +1 -0
  851. package/esm/node/services/SyncStorageService.js +130 -0
  852. package/esm/node/services/SyncStorageService.js.map +1 -0
  853. package/esm/node/session.js +66 -0
  854. package/esm/node/session.js.map +1 -0
  855. package/esm/node/tx/AuthTransaction.js +174 -0
  856. package/esm/node/tx/AuthTransaction.js.map +1 -0
  857. package/esm/node/tx/api.js +72 -0
  858. package/esm/node/tx/api.js.map +1 -0
  859. package/esm/node/tx/poll.js +117 -0
  860. package/esm/node/tx/poll.js.map +1 -0
  861. package/esm/node/tx/util.js +26 -0
  862. package/esm/node/tx/util.js.map +1 -0
  863. package/esm/node/types/Token.js +32 -0
  864. package/esm/node/types/Token.js.map +1 -0
  865. package/esm/node/types/TokenManager.js +21 -0
  866. package/esm/node/types/TokenManager.js.map +1 -0
  867. package/esm/node/types/Transaction.js +52 -0
  868. package/esm/node/types/Transaction.js.map +1 -0
  869. package/esm/node/util/console.js +50 -0
  870. package/esm/node/util/console.js.map +1 -0
  871. package/esm/node/util/misc.js +32 -0
  872. package/esm/node/util/misc.js.map +1 -0
  873. package/esm/node/util/object.js +98 -0
  874. package/esm/node/util/object.js.map +1 -0
  875. package/esm/node/util/sharedStorage.js +56 -0
  876. package/esm/node/util/sharedStorage.js.map +1 -0
  877. package/esm/node/util/types.js +30 -0
  878. package/esm/node/util/types.js.map +1 -0
  879. package/esm/node/util/url.js +57 -0
  880. package/esm/node/util/url.js.map +1 -0
  881. package/esm/package.json +3 -0
  882. package/lib/SavedObject.d.ts +1 -0
  883. package/lib/ServiceManager.d.ts +1 -7
  884. package/lib/TokenManager.d.ts +12 -10
  885. package/lib/cdnEntry.d.ts +18 -0
  886. package/lib/errors/AuthApiError.d.ts +2 -1
  887. package/lib/idx/idxState/v1/idxResponseParser.d.ts +2 -2
  888. package/lib/idx/util.d.ts +3 -3
  889. package/lib/myaccount/api.d.ts +14 -0
  890. package/lib/myaccount/emailApi.d.ts +29 -0
  891. package/lib/myaccount/index.d.ts +13 -0
  892. package/lib/myaccount/phoneApi.d.ts +25 -0
  893. package/lib/myaccount/profileApi.d.ts +13 -0
  894. package/lib/myaccount/request.d.ts +29 -0
  895. package/lib/myaccount/transactions/Base.d.ts +15 -0
  896. package/lib/myaccount/transactions/EmailChallengeTransaction.d.ts +12 -0
  897. package/lib/myaccount/transactions/EmailStatusTransaction.d.ts +9 -0
  898. package/lib/myaccount/transactions/EmailTransaction.d.ts +15 -0
  899. package/lib/myaccount/transactions/PhoneTransaction.d.ts +12 -0
  900. package/lib/myaccount/transactions/ProfileSchemaTransaction.d.ts +5 -0
  901. package/lib/myaccount/transactions/ProfileTransaction.d.ts +7 -0
  902. package/lib/myaccount/transactions/index.d.ts +7 -0
  903. package/lib/myaccount/types.d.ts +55 -0
  904. package/lib/services/AutoRenewService.d.ts +2 -2
  905. package/lib/services/LeaderElectionService.d.ts +33 -0
  906. package/lib/services/SyncStorageService.d.ts +17 -5
  907. package/lib/services/index.d.ts +1 -0
  908. package/lib/types/JWT.d.ts +4 -1
  909. package/lib/types/OktaAuthOptions.d.ts +4 -2
  910. package/lib/types/Service.d.ts +7 -4
  911. package/lib/types/Storage.d.ts +2 -0
  912. package/lib/types/TokenManager.d.ts +20 -4
  913. package/lib/types/api.d.ts +2 -1
  914. package/lib/types/index.d.ts +1 -0
  915. package/package.json +44 -20
  916. package/polyfill/index.js +7 -0
  917. package/esm/esm.browser.js +0 -9834
  918. package/esm/esm.browser.js.map +0 -1
  919. package/esm/esm.node.mjs +0 -9932
  920. package/esm/esm.node.mjs.map +0 -1
@@ -0,0 +1,245 @@
1
+ /*!
2
+ * Copyright (c) 2015-present, Okta, Inc. and/or its affiliates. All rights reserved.
3
+ * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
4
+ *
5
+ * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
6
+ * Unless required by applicable law or agreed to in writing, software
7
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
8
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9
+ *
10
+ * See the License for the specific language governing permissions and limitations under the License.
11
+ */
12
+
13
+ import { interact } from './interact.js';
14
+ import { introspect } from './introspect.js';
15
+ import { remediate } from './remediate.js';
16
+ import { IdxStatus } from './types/api.js';
17
+ import './remediators/EnrollAuthenticator.js';
18
+ import './remediators/EnrollPoll.js';
19
+ import './remediators/SelectEnrollmentChannel.js';
20
+ import './remediators/EnrollmentChannelData.js';
21
+ import './remediators/ChallengeAuthenticator.js';
22
+ import './remediators/ChallengePoll.js';
23
+ import './remediators/ResetAuthenticator.js';
24
+ import './remediators/EnrollProfile.js';
25
+ import './remediators/Identify.js';
26
+ import './remediators/ReEnrollAuthenticator.js';
27
+ import './remediators/RedirectIdp.js';
28
+ import './remediators/SelectAuthenticatorAuthenticate.js';
29
+ import './remediators/SelectAuthenticatorEnroll.js';
30
+ import './remediators/SelectAuthenticatorUnlockAccount.js';
31
+ import './remediators/SelectEnrollProfile.js';
32
+ import './remediators/AuthenticatorVerificationData.js';
33
+ import './remediators/AuthenticatorEnrollmentData.js';
34
+ import './remediators/Skip.js';
35
+ import { getFlowSpecification } from './flow/FlowSpecification.js';
36
+ import '../myaccount/types.js';
37
+ import { isIdxResponse } from './types/idx-js.js';
38
+ import { saveTransactionMeta, getSavedTransactionMeta } from './transactionMeta.js';
39
+ import { getEnabledFeatures, getAvailableSteps, getMessagesFromResponse, isTerminalResponse } from './util.js';
40
+
41
+ function initializeValues(options) {
42
+ const knownOptions = [
43
+ 'flow',
44
+ 'remediators',
45
+ 'actions',
46
+ 'withCredentials',
47
+ 'step',
48
+ 'useGenericRemediator',
49
+ 'exchangeCodeForTokens',
50
+ 'shouldProceedWithEmailAuthenticator'
51
+ ];
52
+ const values = Object.assign({}, options);
53
+ knownOptions.forEach(option => {
54
+ delete values[option];
55
+ });
56
+ return values;
57
+ }
58
+ function initializeData(authClient, data) {
59
+ let { options } = data;
60
+ options = Object.assign(Object.assign({}, authClient.options.idx), options);
61
+ let { flow, withCredentials, remediators, actions, } = options;
62
+ const status = IdxStatus.PENDING;
63
+ flow = flow || authClient.idx.getFlow() || 'default';
64
+ if (flow) {
65
+ authClient.idx.setFlow(flow);
66
+ const flowSpec = getFlowSpecification(authClient, flow);
67
+ withCredentials = (typeof withCredentials !== 'undefined') ? withCredentials : flowSpec.withCredentials;
68
+ remediators = remediators || flowSpec.remediators;
69
+ actions = actions || flowSpec.actions;
70
+ }
71
+ return Object.assign(Object.assign({}, data), { options: Object.assign(Object.assign({}, options), { flow,
72
+ withCredentials,
73
+ remediators,
74
+ actions }), status });
75
+ }
76
+ async function getDataFromIntrospect(authClient, data) {
77
+ const { options } = data;
78
+ const { stateHandle, withCredentials, version, state, scopes, recoveryToken, activationToken, maxAge, } = options;
79
+ let idxResponse;
80
+ let meta = getSavedTransactionMeta(authClient, { state, recoveryToken, activationToken });
81
+ if (stateHandle) {
82
+ idxResponse = await introspect(authClient, { withCredentials, version, stateHandle });
83
+ }
84
+ else {
85
+ let interactionHandle = meta === null || meta === void 0 ? void 0 : meta.interactionHandle;
86
+ if (!interactionHandle) {
87
+ authClient.transactionManager.clear();
88
+ const interactResponse = await interact(authClient, {
89
+ withCredentials,
90
+ state,
91
+ scopes,
92
+ activationToken,
93
+ recoveryToken,
94
+ maxAge,
95
+ });
96
+ interactionHandle = interactResponse.interactionHandle;
97
+ meta = interactResponse.meta;
98
+ }
99
+ idxResponse = await introspect(authClient, { withCredentials, version, interactionHandle });
100
+ }
101
+ return Object.assign(Object.assign({}, data), { idxResponse, meta });
102
+ }
103
+ async function getDataFromRemediate(authClient, data) {
104
+ let { idxResponse, options, values } = data;
105
+ const { autoRemediate, remediators, actions, flow, step, shouldProceedWithEmailAuthenticator,
106
+ useGenericRemediator, } = options;
107
+ const shouldRemediate = (autoRemediate !== false && (remediators || actions || step));
108
+ if (!shouldRemediate) {
109
+ return data;
110
+ }
111
+ values = Object.assign(Object.assign({}, values), { stateHandle: idxResponse.rawIdxState.stateHandle });
112
+ const { idxResponse: idxResponseFromRemediation, nextStep, canceled, } = await remediate(authClient, idxResponse, values, {
113
+ remediators,
114
+ actions,
115
+ flow,
116
+ step,
117
+ shouldProceedWithEmailAuthenticator,
118
+ useGenericRemediator,
119
+ });
120
+ idxResponse = idxResponseFromRemediation;
121
+ return Object.assign(Object.assign({}, data), { idxResponse, nextStep, canceled });
122
+ }
123
+ async function getTokens(authClient, data) {
124
+ let { meta, idxResponse } = data;
125
+ const { interactionCode } = idxResponse;
126
+ const { clientId, codeVerifier, ignoreSignature, redirectUri, urls, scopes, } = meta;
127
+ const tokenResponse = await authClient.token.exchangeCodeForTokens({
128
+ interactionCode,
129
+ clientId,
130
+ codeVerifier,
131
+ ignoreSignature,
132
+ redirectUri,
133
+ scopes
134
+ }, urls);
135
+ return tokenResponse.tokens;
136
+ }
137
+ async function finalizeData(authClient, data) {
138
+ let { options, idxResponse, canceled, status, } = data;
139
+ const { exchangeCodeForTokens } = options;
140
+ let shouldSaveResponse = false;
141
+ let shouldClearTransaction = false;
142
+ let clearSharedStorage = true;
143
+ let interactionCode;
144
+ let tokens;
145
+ let enabledFeatures;
146
+ let availableSteps;
147
+ let messages;
148
+ let terminal;
149
+ if (idxResponse) {
150
+ shouldSaveResponse = !!(idxResponse.requestDidSucceed || idxResponse.stepUp);
151
+ enabledFeatures = getEnabledFeatures(idxResponse);
152
+ availableSteps = getAvailableSteps(authClient, idxResponse, options.useGenericRemediator);
153
+ messages = getMessagesFromResponse(idxResponse, options);
154
+ terminal = isTerminalResponse(idxResponse);
155
+ }
156
+ if (terminal) {
157
+ status = IdxStatus.TERMINAL;
158
+ const hasActions = Object.keys(idxResponse.actions).length > 0;
159
+ const hasErrors = !!messages.find(msg => msg.class === 'ERROR');
160
+ const isTerminalSuccess = !hasActions && !hasErrors && idxResponse.requestDidSucceed === true;
161
+ if (isTerminalSuccess) {
162
+ shouldClearTransaction = true;
163
+ }
164
+ else {
165
+ shouldSaveResponse = shouldSaveResponse && hasActions;
166
+ }
167
+ clearSharedStorage = false;
168
+ }
169
+ else if (canceled) {
170
+ status = IdxStatus.CANCELED;
171
+ shouldClearTransaction = true;
172
+ }
173
+ else if (idxResponse === null || idxResponse === void 0 ? void 0 : idxResponse.interactionCode) {
174
+ interactionCode = idxResponse.interactionCode;
175
+ if (exchangeCodeForTokens === false) {
176
+ status = IdxStatus.SUCCESS;
177
+ shouldClearTransaction = false;
178
+ }
179
+ else {
180
+ tokens = await getTokens(authClient, data);
181
+ status = IdxStatus.SUCCESS;
182
+ shouldClearTransaction = true;
183
+ }
184
+ }
185
+ return Object.assign(Object.assign({}, data), { status,
186
+ interactionCode,
187
+ tokens,
188
+ shouldSaveResponse,
189
+ shouldClearTransaction,
190
+ clearSharedStorage,
191
+ enabledFeatures,
192
+ availableSteps,
193
+ messages,
194
+ terminal });
195
+ }
196
+ function handleError(err, data) {
197
+ let { error, status, shouldClearTransaction } = data;
198
+ if (isIdxResponse(err)) {
199
+ error = err;
200
+ status = IdxStatus.FAILURE;
201
+ shouldClearTransaction = true;
202
+ }
203
+ else {
204
+ throw err;
205
+ }
206
+ return Object.assign(Object.assign({}, data), { error, status, shouldClearTransaction });
207
+ }
208
+ async function run(authClient, options = {}) {
209
+ var _a;
210
+ let data = {
211
+ options,
212
+ values: initializeValues(options)
213
+ };
214
+ data = initializeData(authClient, data);
215
+ try {
216
+ data = await getDataFromIntrospect(authClient, data);
217
+ data = await getDataFromRemediate(authClient, data);
218
+ }
219
+ catch (err) {
220
+ data = handleError(err, data);
221
+ }
222
+ data = await finalizeData(authClient, data);
223
+ const { idxResponse, meta, shouldSaveResponse, shouldClearTransaction, clearSharedStorage, status, enabledFeatures, availableSteps, tokens, nextStep, messages, error, interactionCode } = data;
224
+ if (shouldClearTransaction) {
225
+ authClient.transactionManager.clear({ clearSharedStorage });
226
+ }
227
+ else {
228
+ saveTransactionMeta(authClient, Object.assign({}, meta));
229
+ if (shouldSaveResponse) {
230
+ const { rawIdxState: rawIdxResponse, requestDidSucceed } = idxResponse;
231
+ authClient.transactionManager.saveIdxResponse({
232
+ rawIdxResponse,
233
+ requestDidSucceed,
234
+ stateHandle: (_a = idxResponse.context) === null || _a === void 0 ? void 0 : _a.stateHandle,
235
+ interactionHandle: meta === null || meta === void 0 ? void 0 : meta.interactionHandle
236
+ });
237
+ }
238
+ }
239
+ const { actions, context, neededToProceed, proceed, rawIdxState, requestDidSucceed, stepUp } = idxResponse || {};
240
+ return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ status: status }, (meta && { meta })), (enabledFeatures && { enabledFeatures })), (availableSteps && { availableSteps })), (tokens && { tokens })), (nextStep && { nextStep })), (messages && messages.length && { messages })), (error && { error })), (stepUp && { stepUp })), { interactionCode,
241
+ actions: actions, context: context, neededToProceed: neededToProceed, proceed: proceed, rawIdxState: rawIdxState, requestDidSucceed });
242
+ }
243
+
244
+ export { run };
245
+ //# sourceMappingURL=run.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run.js","sources":["../../../../lib/idx/run.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-non-null-assertion */\n/*!\n * Copyright (c) 2015-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * \n * See the License for the specific language governing permissions and limitations under the License.\n */\n\n\n/* eslint-disable max-statements, complexity, max-depth */\nimport { interact } from './interact';\nimport { introspect } from './introspect';\nimport { remediate } from './remediate';\nimport { getFlowSpecification } from './flow';\nimport * as remediators from './remediators';\nimport { \n OktaAuthIdxInterface,\n IdxStatus,\n IdxTransaction,\n IdxFeature,\n NextStep,\n RunOptions,\n IdxTransactionMeta,\n Tokens,\n APIError,\n} from '../types';\nimport { IdxMessage, IdxResponse, isIdxResponse } from './types/idx-js';\nimport { getSavedTransactionMeta, saveTransactionMeta } from './transactionMeta';\nimport { getAvailableSteps, getEnabledFeatures, getMessagesFromResponse, isTerminalResponse } from './util';\ndeclare interface RunData {\n options: RunOptions;\n values: remediators.RemediationValues;\n status?: IdxStatus;\n tokens?: Tokens;\n nextStep?: NextStep;\n messages?: IdxMessage[];\n error?: APIError | IdxResponse;\n meta?: IdxTransactionMeta;\n enabledFeatures?: IdxFeature[];\n availableSteps?: NextStep[];\n idxResponse?: IdxResponse;\n canceled?: boolean;\n interactionCode?: string;\n shouldSaveResponse?: boolean;\n shouldClearTransaction?: boolean;\n clearSharedStorage?: boolean;\n terminal?: boolean;\n}\n\nfunction initializeValues(options: RunOptions) {\n // remove known options, everything else is assumed to be a value\n const knownOptions = [\n 'flow', \n 'remediators', \n 'actions', \n 'withCredentials', \n 'step',\n 'useGenericRemediator',\n 'exchangeCodeForTokens',\n 'shouldProceedWithEmailAuthenticator'\n ];\n const values = { ...options };\n knownOptions.forEach(option => {\n delete values[option];\n });\n return values;\n}\n\nfunction initializeData(authClient, data: RunData): RunData {\n let { options } = data;\n options = {\n ...authClient.options.idx,\n ...options\n };\n let {\n flow,\n withCredentials,\n remediators,\n actions,\n } = options;\n\n const status = IdxStatus.PENDING;\n\n // certain options can be set by the flow specification\n flow = flow || authClient.idx.getFlow() || 'default';\n if (flow) {\n authClient.idx.setFlow(flow);\n const flowSpec = getFlowSpecification(authClient, flow);\n // Favor option values over flow spec\n withCredentials = (typeof withCredentials !== 'undefined') ? withCredentials : flowSpec.withCredentials;\n remediators = remediators || flowSpec.remediators;\n actions = actions || flowSpec.actions;\n }\n\n return { \n ...data,\n options: { \n ...options, \n flow, \n withCredentials, \n remediators, \n actions,\n },\n status\n };\n}\n\nasync function getDataFromIntrospect(authClient, data: RunData): Promise<RunData> {\n const { options } = data;\n const {\n stateHandle,\n withCredentials,\n version,\n state,\n scopes,\n recoveryToken,\n activationToken,\n maxAge,\n } = options;\n\n let idxResponse;\n let meta = getSavedTransactionMeta(authClient, { state, recoveryToken, activationToken }); // may be undefined\n\n if (stateHandle) {\n idxResponse = await introspect(authClient, { withCredentials, version, stateHandle });\n } else {\n let interactionHandle = meta?.interactionHandle; // may be undefined\n if (!interactionHandle) {\n // start a new transaction\n authClient.transactionManager.clear();\n const interactResponse = await interact(authClient, {\n withCredentials,\n state,\n scopes,\n activationToken,\n recoveryToken,\n maxAge,\n }); \n interactionHandle = interactResponse.interactionHandle;\n meta = interactResponse.meta;\n }\n \n // Introspect to get idx response\n idxResponse = await introspect(authClient, { withCredentials, version, interactionHandle });\n }\n return { ...data, idxResponse, meta };\n}\n\nasync function getDataFromRemediate(authClient, data: RunData): Promise<RunData> {\n let {\n idxResponse,\n options,\n values\n } = data;\n\n const {\n autoRemediate,\n remediators,\n actions,\n flow,\n step,\n shouldProceedWithEmailAuthenticator, // will be removed in next major version\n useGenericRemediator,\n } = options;\n \n const shouldRemediate = (autoRemediate !== false && (remediators || actions || step));\n if (!shouldRemediate) {\n return data;\n }\n\n values = { \n ...values, \n stateHandle: idxResponse!.rawIdxState.stateHandle \n };\n\n // Can we handle the remediations?\n const { \n idxResponse: idxResponseFromRemediation, \n nextStep,\n canceled,\n } = await remediate(\n authClient,\n idxResponse!, \n values, \n {\n remediators,\n actions,\n flow,\n step,\n shouldProceedWithEmailAuthenticator, // will be removed in next major version\n useGenericRemediator,\n }\n );\n idxResponse = idxResponseFromRemediation;\n\n return { ...data, idxResponse, nextStep, canceled };\n}\n\nasync function getTokens(authClient, data: RunData): Promise<Tokens> {\n let { meta, idxResponse } = data;\n const { interactionCode } = idxResponse as IdxResponse;\n const {\n clientId,\n codeVerifier,\n ignoreSignature,\n redirectUri,\n urls,\n scopes,\n } = meta as IdxTransactionMeta;\n const tokenResponse = await authClient.token.exchangeCodeForTokens({\n interactionCode,\n clientId,\n codeVerifier,\n ignoreSignature,\n redirectUri,\n scopes\n }, urls);\n return tokenResponse.tokens;\n}\n\nasync function finalizeData(authClient, data: RunData): Promise<RunData> {\n let {\n options,\n idxResponse,\n canceled,\n status,\n } = data;\n const { exchangeCodeForTokens } = options;\n let shouldSaveResponse = false;\n let shouldClearTransaction = false;\n let clearSharedStorage = true;\n let interactionCode;\n let tokens;\n let enabledFeatures;\n let availableSteps;\n let messages;\n let terminal;\n\n if (idxResponse) {\n shouldSaveResponse = !!(idxResponse.requestDidSucceed || idxResponse.stepUp);\n enabledFeatures = getEnabledFeatures(idxResponse);\n availableSteps = getAvailableSteps(authClient, idxResponse, options.useGenericRemediator);\n messages = getMessagesFromResponse(idxResponse, options);\n terminal = isTerminalResponse(idxResponse);\n }\n\n if (terminal) {\n status = IdxStatus.TERMINAL;\n\n // In most cases a terminal response should not clear transaction data. The user should cancel or skip to continue.\n // A terminal \"success\" is a non-error response with no further actions available.\n // In these narrow cases, saved transaction data should be cleared.\n // One example of a terminal success is when the email verify flow is continued in another tab\n const hasActions = Object.keys(idxResponse!.actions).length > 0;\n const hasErrors = !!messages.find(msg => msg.class === 'ERROR');\n const isTerminalSuccess = !hasActions && !hasErrors && idxResponse!.requestDidSucceed === true;\n if (isTerminalSuccess) {\n shouldClearTransaction = true;\n } else {\n // only save response if there are actions available (ignore messages)\n shouldSaveResponse = shouldSaveResponse && hasActions;\n }\n // leave shared storage intact so the transaction can be continued in another tab\n clearSharedStorage = false;\n } else if (canceled) {\n status = IdxStatus.CANCELED;\n shouldClearTransaction = true;\n } else if (idxResponse?.interactionCode) { \n interactionCode = idxResponse.interactionCode;\n if (exchangeCodeForTokens === false) {\n status = IdxStatus.SUCCESS;\n shouldClearTransaction = false;\n } else {\n tokens = await getTokens(authClient, data);\n status = IdxStatus.SUCCESS;\n shouldClearTransaction = true;\n }\n }\n return {\n ...data,\n status,\n interactionCode,\n tokens,\n shouldSaveResponse,\n shouldClearTransaction,\n clearSharedStorage,\n enabledFeatures,\n availableSteps,\n messages,\n terminal\n };\n}\n\nfunction handleError(err, data: RunData): RunData {\n let { error, status, shouldClearTransaction } = data;\n\n // current version of idx-js will throw/reject IDX responses. Handle these differently than regular errors\n if (isIdxResponse(err)) {\n error = err;\n status = IdxStatus.FAILURE;\n shouldClearTransaction = true;\n } else {\n // error is not an IDX response, throw it like a regular error\n throw err;\n }\n\n return { ...data, error, status, shouldClearTransaction };\n}\n\nexport async function run(\n authClient: OktaAuthIdxInterface, \n options: RunOptions = {},\n): Promise<IdxTransaction> {\n let data: RunData = {\n options,\n values: initializeValues(options)\n };\n\n data = initializeData(authClient, data);\n try {\n data = await getDataFromIntrospect(authClient, data);\n data = await getDataFromRemediate(authClient, data);\n } catch (err) {\n data = handleError(err, data);\n }\n data = await finalizeData(authClient, data);\n\n const {\n idxResponse,\n meta,\n shouldSaveResponse,\n shouldClearTransaction,\n clearSharedStorage,\n status,\n enabledFeatures,\n availableSteps,\n tokens,\n nextStep,\n messages,\n error,\n interactionCode\n } = data;\n\n if (shouldClearTransaction) {\n authClient.transactionManager.clear({ clearSharedStorage });\n }\n else {\n // ensures state is saved to sessionStorage\n saveTransactionMeta(authClient, { ...meta });\n\n if (shouldSaveResponse) {\n // Save intermediate idx response in storage to reduce introspect call\n const { rawIdxState: rawIdxResponse, requestDidSucceed } = idxResponse!;\n authClient.transactionManager.saveIdxResponse({\n rawIdxResponse,\n requestDidSucceed,\n stateHandle: idxResponse!.context?.stateHandle,\n interactionHandle: meta?.interactionHandle\n });\n }\n }\n \n // copy all fields from idxResponse which are needed by the widget\n const { actions, context, neededToProceed, proceed, rawIdxState, requestDidSucceed, stepUp } = idxResponse || {};\n return {\n status: status!,\n ...(meta && { meta }),\n ...(enabledFeatures && { enabledFeatures }),\n ...(availableSteps && { availableSteps }),\n ...(tokens && { tokens }),\n ...(nextStep && { nextStep }),\n ...(messages && messages.length && { messages }),\n ...(error && { error }),\n ...(stepUp && { stepUp }),\n interactionCode, // if options.exchangeCodeForTokens is false\n\n // from idx-js\n actions: actions!,\n context: context!,\n neededToProceed: neededToProceed!,\n proceed: proceed!,\n rawIdxState: rawIdxState!,\n requestDidSucceed\n };\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ /*!
2
+ * Copyright (c) 2015-present, Okta, Inc. and/or its affiliates. All rights reserved.
3
+ * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
4
+ *
5
+ * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
6
+ * Unless required by applicable law or agreed to in writing, software
7
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
8
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9
+ *
10
+ * See the License for the specific language governing permissions and limitations under the License.
11
+ */
12
+
13
+ import { run } from './run.js';
14
+
15
+ async function startTransaction(authClient, options = {}) {
16
+ authClient.transactionManager.clear();
17
+ return run(authClient, Object.assign({ exchangeCodeForTokens: false }, options));
18
+ }
19
+
20
+ export { startTransaction };
21
+ //# sourceMappingURL=startTransaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"startTransaction.js","sources":["../../../../lib/idx/startTransaction.ts"],"sourcesContent":["/*!\n * Copyright (c) 2015-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * \n * See the License for the specific language governing permissions and limitations under the License.\n */\n\n\nimport { run } from './run';\nimport { OktaAuthIdxInterface, IdxTransaction, StartOptions } from '../types';\n\nexport async function startTransaction(\n authClient: OktaAuthIdxInterface, \n options: StartOptions = {}\n): Promise<IdxTransaction> {\n // Clear IDX response cache and saved transaction meta (if any)\n authClient.transactionManager.clear();\n\n return run(authClient, {\n exchangeCodeForTokens: false,\n ...options\n });\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAgBO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,gBAAgB,CACpC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgC,EAChC,UAAwB,EAAE,CAAA,CAAA,CAAA;AAG1B,CAAA,CAAA,CAAA,CAAA,UAAU,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAkB,CAAC,CAAA,CAAA,CAAA,CAAA,CAAK,EAAE,CAAC;IAEtC,OAAO,CAAG,CAAA,CAAA,CAAC,UAAU,CACnB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAqB,EAAE,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EACzB,CAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACV,CAAC;AACL,CAAA;;"}
@@ -0,0 +1,110 @@
1
+ /*!
2
+ * Copyright (c) 2015-present, Okta, Inc. and/or its affiliates. All rights reserved.
3
+ * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
4
+ *
5
+ * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
6
+ * Unless required by applicable law or agreed to in writing, software
7
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
8
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9
+ *
10
+ * See the License for the specific language governing permissions and limitations under the License.
11
+ */
12
+
13
+ import { warn } from '../util/console.js';
14
+ import { removeNils } from '../util/object.js';
15
+ import { createOAuthMeta } from '../oidc/util/oauthMeta.js';
16
+ import './types/api.js';
17
+ import '../myaccount/types.js';
18
+
19
+ async function createTransactionMeta(authClient, options = {}) {
20
+ const tokenParams = await authClient.token.prepareTokenParams(options);
21
+ const pkceMeta = createOAuthMeta(authClient, tokenParams);
22
+ let { flow = 'default', withCredentials = true, activationToken = undefined, recoveryToken = undefined, maxAge = undefined, } = Object.assign(Object.assign({}, authClient.options), options);
23
+ const meta = Object.assign(Object.assign({}, pkceMeta), { flow,
24
+ withCredentials,
25
+ activationToken,
26
+ recoveryToken,
27
+ maxAge });
28
+ return meta;
29
+ }
30
+ function hasSavedInteractionHandle(authClient, options) {
31
+ const savedMeta = getSavedTransactionMeta(authClient, options);
32
+ if (savedMeta === null || savedMeta === void 0 ? void 0 : savedMeta.interactionHandle) {
33
+ return true;
34
+ }
35
+ return false;
36
+ }
37
+ function getSavedTransactionMeta(authClient, options) {
38
+ options = removeNils(options);
39
+ options = Object.assign(Object.assign({}, authClient.options), options);
40
+ let savedMeta;
41
+ try {
42
+ savedMeta = authClient.transactionManager.load(options);
43
+ }
44
+ catch (e) {
45
+ }
46
+ if (!savedMeta) {
47
+ return;
48
+ }
49
+ if (isTransactionMetaValid(savedMeta, options)) {
50
+ return savedMeta;
51
+ }
52
+ warn('Saved transaction meta does not match the current configuration. ' +
53
+ 'This may indicate that two apps are sharing a storage key.');
54
+ }
55
+ async function getTransactionMeta(authClient, options) {
56
+ options = removeNils(options);
57
+ options = Object.assign(Object.assign({}, authClient.options), options);
58
+ const validExistingMeta = getSavedTransactionMeta(authClient, options);
59
+ if (validExistingMeta) {
60
+ return validExistingMeta;
61
+ }
62
+ return createTransactionMeta(authClient, options);
63
+ }
64
+ function saveTransactionMeta(authClient, meta) {
65
+ authClient.transactionManager.save(meta, { muteWarning: true });
66
+ }
67
+ function clearTransactionMeta(authClient) {
68
+ authClient.transactionManager.clear();
69
+ }
70
+ function isTransactionMetaValid(meta, options = {}) {
71
+ const keys = [
72
+ 'issuer',
73
+ 'clientId',
74
+ 'redirectUri',
75
+ 'state',
76
+ 'codeChallenge',
77
+ 'codeChallengeMethod',
78
+ 'activationToken',
79
+ 'recoveryToken'
80
+ ];
81
+ if (isTransactionMetaValidForOptions(meta, options, keys) === false) {
82
+ return false;
83
+ }
84
+ const { flow } = options;
85
+ if (isTransactionMetaValidForFlow(meta, flow) === false) {
86
+ return false;
87
+ }
88
+ return true;
89
+ }
90
+ function isTransactionMetaValidForFlow(meta, flow) {
91
+ const shouldValidateFlow = flow && flow !== 'default' && flow !== 'proceed';
92
+ if (shouldValidateFlow) {
93
+ if (flow !== meta.flow) {
94
+ return false;
95
+ }
96
+ }
97
+ return true;
98
+ }
99
+ function isTransactionMetaValidForOptions(meta, options, keys) {
100
+ const mismatch = keys.some(key => {
101
+ const value = options[key];
102
+ if (value && value !== meta[key]) {
103
+ return true;
104
+ }
105
+ });
106
+ return !mismatch;
107
+ }
108
+
109
+ export { clearTransactionMeta, createTransactionMeta, getSavedTransactionMeta, getTransactionMeta, hasSavedInteractionHandle, isTransactionMetaValid, isTransactionMetaValidForFlow, isTransactionMetaValidForOptions, saveTransactionMeta };
110
+ //# sourceMappingURL=transactionMeta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transactionMeta.js","sources":["../../../../lib/idx/transactionMeta.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-non-null-assertion */\n/*!\n * Copyright (c) 2021, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { OktaAuthIdxInterface, IdxTransactionMeta, TransactionMetaOptions, PKCETransactionMeta } from '../types';\nimport { removeNils, warn } from '../util';\nimport { createOAuthMeta } from '../oidc';\n\n// Calculate new values\nexport async function createTransactionMeta(\n authClient: OktaAuthIdxInterface,\n options: TransactionMetaOptions = {}\n): Promise<IdxTransactionMeta> {\n const tokenParams = await authClient.token.prepareTokenParams(options);\n const pkceMeta = createOAuthMeta(authClient, tokenParams) as PKCETransactionMeta;\n let {\n flow = 'default',\n withCredentials = true,\n activationToken = undefined,\n recoveryToken = undefined,\n maxAge = undefined,\n } = { ...authClient.options, ...options }; // local options override SDK options\n\n const meta: IdxTransactionMeta = {\n ...pkceMeta,\n flow,\n withCredentials,\n activationToken,\n recoveryToken,\n maxAge\n };\n return meta;\n}\n\nexport function hasSavedInteractionHandle(authClient: OktaAuthIdxInterface, options?: TransactionMetaOptions): boolean {\n const savedMeta = getSavedTransactionMeta(authClient, options);\n if (savedMeta?.interactionHandle) {\n return true;\n }\n return false;\n}\n\n// Returns the saved transaction meta, if it exists and is valid\nexport function getSavedTransactionMeta(\n authClient: OktaAuthIdxInterface,\n options?: TransactionMetaOptions\n): IdxTransactionMeta | undefined {\n options = removeNils(options);\n options = { ...authClient.options, ...options }; // local options override SDK options\n let savedMeta;\n try {\n savedMeta = authClient.transactionManager.load(options) as IdxTransactionMeta;\n } catch (e) {\n // ignore errors here\n }\n\n if (!savedMeta) {\n return;\n }\n\n if (isTransactionMetaValid(savedMeta, options)) {\n return savedMeta;\n }\n\n // existing meta is not valid for this configuration\n // this is common when changing configuration in local development environment\n // in a production environment, this may indicate that two apps are sharing a storage key\n warn('Saved transaction meta does not match the current configuration. ' + \n 'This may indicate that two apps are sharing a storage key.');\n\n}\n\nexport async function getTransactionMeta(\n authClient: OktaAuthIdxInterface,\n options?: TransactionMetaOptions\n): Promise<IdxTransactionMeta> {\n options = removeNils(options);\n options = { ...authClient.options, ...options }; // local options override SDK options\n // Load existing transaction meta from storage\n const validExistingMeta = getSavedTransactionMeta(authClient, options);\n if (validExistingMeta) {\n return validExistingMeta;\n }\n // No existing? Create new transaction meta.\n return createTransactionMeta(authClient, options);\n}\n\nexport function saveTransactionMeta (authClient: OktaAuthIdxInterface, meta): void {\n authClient.transactionManager.save(meta, { muteWarning: true });\n}\n\nexport function clearTransactionMeta (authClient: OktaAuthIdxInterface): void {\n authClient.transactionManager.clear();\n}\n\nexport function isTransactionMetaValid (meta, options: TransactionMetaOptions = {}): boolean {\n // Validate against certain options. If these exist in options, they must match in meta\n const keys = [\n 'issuer',\n 'clientId',\n 'redirectUri',\n 'state',\n 'codeChallenge',\n 'codeChallengeMethod',\n 'activationToken',\n 'recoveryToken'\n ];\n if (isTransactionMetaValidForOptions(meta, options, keys) === false) {\n return false;\n }\n\n // Validate configured flow\n const { flow } = options;\n if (isTransactionMetaValidForFlow(meta, flow) === false) {\n return false;\n }\n\n return true;\n}\n\nexport function isTransactionMetaValidForFlow(meta, flow) {\n // Specific flows should not share transaction data\n const shouldValidateFlow = flow && flow !== 'default' && flow !== 'proceed';\n if (shouldValidateFlow) {\n if (flow !== meta.flow) {\n // The flow has changed; abandon the old transaction\n return false;\n }\n }\n return true;\n}\n\nexport function isTransactionMetaValidForOptions(meta, options, keys) {\n // returns false if values in meta do not match options\n // if the option does not have a value for a specific key, it is ignored\n const mismatch = keys.some(key => {\n const value = options[key];\n if (value && value !== meta[key]) {\n return true;\n }\n });\n return !mismatch;\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ /*!
2
+ * Copyright (c) 2015-present, Okta, Inc. and/or its affiliates. All rights reserved.
3
+ * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
4
+ *
5
+ * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
6
+ * Unless required by applicable law or agreed to in writing, software
7
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
8
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9
+ *
10
+ * See the License for the specific language governing permissions and limitations under the License.
11
+ */
12
+
13
+ var IdxStatus;
14
+ (function (IdxStatus) {
15
+ IdxStatus["SUCCESS"] = "SUCCESS";
16
+ IdxStatus["PENDING"] = "PENDING";
17
+ IdxStatus["FAILURE"] = "FAILURE";
18
+ IdxStatus["TERMINAL"] = "TERMINAL";
19
+ IdxStatus["CANCELED"] = "CANCELED";
20
+ })(IdxStatus || (IdxStatus = {}));
21
+ var AuthenticatorKey;
22
+ (function (AuthenticatorKey) {
23
+ AuthenticatorKey["OKTA_PASSWORD"] = "okta_password";
24
+ AuthenticatorKey["OKTA_EMAIL"] = "okta_email";
25
+ AuthenticatorKey["PHONE_NUMBER"] = "phone_number";
26
+ AuthenticatorKey["GOOGLE_AUTHENTICATOR"] = "google_otp";
27
+ AuthenticatorKey["SECURITY_QUESTION"] = "security_question";
28
+ AuthenticatorKey["OKTA_VERIFY"] = "okta_verify";
29
+ AuthenticatorKey["WEBAUTHN"] = "webauthn";
30
+ })(AuthenticatorKey || (AuthenticatorKey = {}));
31
+ var IdxFeature;
32
+ (function (IdxFeature) {
33
+ IdxFeature["PASSWORD_RECOVERY"] = "recover-password";
34
+ IdxFeature["REGISTRATION"] = "enroll-profile";
35
+ IdxFeature["SOCIAL_IDP"] = "redirect-idp";
36
+ IdxFeature["ACCOUNT_UNLOCK"] = "unlock-account";
37
+ })(IdxFeature || (IdxFeature = {}));
38
+ function isAuthenticator(obj) {
39
+ return obj && (obj.key || obj.id);
40
+ }
41
+
42
+ export { AuthenticatorKey, IdxFeature, IdxStatus, isAuthenticator };
43
+ //# sourceMappingURL=api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.js","sources":["../../../../../lib/idx/types/api.ts"],"sourcesContent":["import { APIError } from '../../types/api';\nimport { Tokens } from '../../types/Token';\nimport { PKCETransactionMeta } from '../../types/Transaction';\nimport { FlowIdentifier } from './FlowIdentifier';\nimport {\n IdxActions,\n IdxAuthenticator,\n IdxContext,\n IdxForm,\n IdxMessage,\n IdxOption,\n IdxRemediation,\n IdxResponse,\n RawIdxResponse,\n IdxActionParams,\n IdpConfig,\n} from './idx-js';\n\nexport enum IdxStatus {\n SUCCESS = 'SUCCESS',\n PENDING = 'PENDING',\n FAILURE = 'FAILURE',\n TERMINAL = 'TERMINAL',\n CANCELED = 'CANCELED',\n}\n\nexport enum AuthenticatorKey {\n OKTA_PASSWORD = 'okta_password',\n OKTA_EMAIL = 'okta_email',\n PHONE_NUMBER = 'phone_number',\n GOOGLE_AUTHENTICATOR = 'google_otp',\n SECURITY_QUESTION = 'security_question',\n OKTA_VERIFY = 'okta_verify',\n WEBAUTHN = 'webauthn',\n}\n\nexport type Input = {\n name: string;\n key?: string;\n type?: string;\n label?: string;\n value?: string | {form: IdxForm} | Input[];\n minLength?: number;\n maxLength?: number;\n secret?: boolean;\n required?: boolean;\n options?: IdxOption[];\n mutable?: boolean;\n visible?: boolean;\n}\n\n\nexport interface IdxPollOptions {\n required?: boolean;\n refresh?: number;\n}\n\nexport type NextStep = {\n name: string;\n authenticator?: IdxAuthenticator;\n canSkip?: boolean;\n canResend?: boolean;\n inputs?: Input[];\n options?: IdxOption[];\n poll?: IdxPollOptions;\n authenticatorEnrollments?: IdxAuthenticator[];\n // eslint-disable-next-line no-use-before-define\n action?: (params?: IdxActionParams) => Promise<IdxTransaction>;\n idp?: IdpConfig;\n href?: string;\n relatesTo?: {\n type?: string;\n value: IdxAuthenticator;\n };\n refresh?: number;\n}\n\nexport enum IdxFeature {\n PASSWORD_RECOVERY = 'recover-password',\n REGISTRATION = 'enroll-profile',\n SOCIAL_IDP = 'redirect-idp',\n ACCOUNT_UNLOCK = 'unlock-account',\n}\n\nexport interface IdxTransactionMeta extends PKCETransactionMeta {\n interactionHandle?: string;\n remediations?: string[];\n flow?: FlowIdentifier;\n withCredentials?: boolean;\n activationToken?: string;\n recoveryToken?: string;\n maxAge?: string | number;\n}\n\nexport interface IdxTransaction {\n status: IdxStatus;\n tokens?: Tokens;\n nextStep?: NextStep;\n messages?: IdxMessage[];\n error?: APIError | IdxResponse;\n meta?: IdxTransactionMeta;\n enabledFeatures?: IdxFeature[];\n availableSteps?: NextStep[];\n requestDidSucceed?: boolean;\n stepUp?: boolean;\n \n // from idx-js, used by signin widget\n proceed: (remediationName: string, params: unknown) => Promise<IdxResponse>;\n neededToProceed: IdxRemediation[];\n rawIdxState: RawIdxResponse;\n interactionCode?: string;\n actions: IdxActions;\n context: IdxContext;\n}\n\n\nexport type Authenticator = {\n id?: string;\n key?: string;\n methodType?: string;\n phoneNumber?: string;\n};\n\nexport function isAuthenticator(obj: any): obj is Authenticator {\n return obj && (obj.key || obj.id);\n}\n\nexport interface RemediationResponse {\n idxResponse: IdxResponse;\n nextStep?: NextStep;\n messages?: IdxMessage[];\n terminal?: boolean;\n canceled?: boolean;\n}\n\nexport interface InteractResponse {\n state?: string;\n interactionHandle: string;\n meta: IdxTransactionMeta;\n}\n"],"names":[],"mappings":";;;;;;;;;;;;IAkBY,CAMX,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAND,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,SAAS,CAAA,CAAA,CAAA;AACnB,CAAA,CAAA,CAAA,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,SAAmB,CAAA;AACnB,CAAA,CAAA,CAAA,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,SAAmB,CAAA;AACnB,CAAA,CAAA,CAAA,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,SAAmB,CAAA;AACnB,CAAA,CAAA,CAAA,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,UAAqB,CAAA;AACrB,CAAA,CAAA,CAAA,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,UAAqB,CAAA;AACvB,CAAC,CAAA,CANW,SAAS,CAAT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,GAMpB,CAAA,CAAA,CAAA,CAAA,CAAA;IAEW,CAQX,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AARD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,gBAAgB,CAAA,CAAA,CAAA;AAC1B,CAAA,CAAA,CAAA,CAAA,gBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,eAA+B,CAAA;AAC/B,CAAA,CAAA,CAAA,CAAA,gBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,YAAyB,CAAA;AACzB,CAAA,CAAA,CAAA,CAAA,gBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,cAA6B,CAAA;AAC7B,CAAA,CAAA,CAAA,CAAA,gBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,YAAmC,CAAA;AACnC,CAAA,CAAA,CAAA,CAAA,gBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,mBAAuC,CAAA;AACvC,CAAA,CAAA,CAAA,CAAA,gBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,aAA2B,CAAA;AAC3B,CAAA,CAAA,CAAA,CAAA,gBAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,UAAqB,CAAA;AACvB,CAAC,CAAA,CARW,gBAAgB,CAAhB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,GAQ3B,CAAA,CAAA,CAAA,CAAA,CAAA;IA2CW,CAKX,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AALD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAY,UAAU,CAAA,CAAA,CAAA;AACpB,CAAA,CAAA,CAAA,CAAA,UAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,kBAAsC,CAAA;AACtC,CAAA,CAAA,CAAA,CAAA,UAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,gBAA+B,CAAA;AAC/B,CAAA,CAAA,CAAA,CAAA,UAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,cAA2B,CAAA;AAC3B,CAAA,CAAA,CAAA,CAAA,UAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,gBAAiC,CAAA;AACnC,CAAC,CAAA,CALW,UAAU,CAAV,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAU,GAKrB,CAAA,CAAA,CAAA,CAAA,CAAA;AAyCK,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAe,CAAC,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA;CACtC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAK,CAAG,CAAA,CAAA,CAAC,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAG,CAAA,CAAA,CAAC,CAAE,CAAA,CAAC,CAAC;AACpC,CAAA;;"}
@@ -0,0 +1,21 @@
1
+ /*!
2
+ * Copyright (c) 2015-present, Okta, Inc. and/or its affiliates. All rights reserved.
3
+ * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
4
+ *
5
+ * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
6
+ * Unless required by applicable law or agreed to in writing, software
7
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
8
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9
+ *
10
+ * See the License for the specific language governing permissions and limitations under the License.
11
+ */
12
+
13
+ function isRawIdxResponse(obj) {
14
+ return obj && obj.version;
15
+ }
16
+ function isIdxResponse(obj) {
17
+ return obj && isRawIdxResponse(obj.rawIdxState);
18
+ }
19
+
20
+ export { isIdxResponse, isRawIdxResponse };
21
+ //# sourceMappingURL=idx-js.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"idx-js.js","sources":["../../../../../lib/idx/types/idx-js.ts"],"sourcesContent":["/* eslint-disable no-use-before-define */\n/*!\n * Copyright (c) 2015-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * \n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { Input } from './api';\n\n\n// TODO: remove when idx-js provides type information\n\nexport interface ChallengeData {\n challenge: string; \n userVerification: string; \n extensions?: {\n appid: string;\n };\n}\nexport interface ActivationData {\n challenge: string;\n rp: {\n name: string;\n };\n user: {\n id: string;\n name: string;\n displayName: string;\n };\n pubKeyCredParams: {\n type: string;\n alg: number;\n }[];\n attestation?: string;\n authenticatorSelection?: {\n userVerification?: string;\n authenticatorAttachment?: string;\n requireResidentKey?: boolean;\n residentKey?: string;\n };\n excludeCredentials?: {\n id: string;\n type: string;\n }[];\n}\nexport interface IdxAuthenticatorMethod {\n type: string;\n}\nexport interface IdxAuthenticator {\n displayName: string;\n id: string;\n key: string;\n methods: IdxAuthenticatorMethod[];\n type: string;\n settings?: {\n complexity?: unknown;\n age?: unknown;\n };\n contextualData?: {\n enrolledQuestion?: {\n question: string;\n questionKey: string;\n };\n qrcode?: { \n href: string; \n method: string; \n type: string; \n };\n sharedSecret?: string;\n questions?: {\n questionKey: string;\n question: string;\n }[];\n questionKeys?: string[];\n selectedChannel?: string;\n activationData?: ActivationData;\n challengeData?: ChallengeData;\n };\n credentialId?: string;\n enrollmentId?: string;\n}\n\nexport interface IdxForm {\n value: IdxRemediationValue[];\n}\n\nexport interface IdxOption {\n value: string | {form: IdxForm} | Input[];\n label: string;\n relatesTo?: IdxAuthenticator;\n}\n\nexport interface IdpConfig {\n id: string;\n name: string;\n}\n\nexport interface IdxRemediationValueForm {\n form: IdxForm;\n}\n\nexport interface IdxRemediationValue {\n name: string;\n type?: string;\n required?: boolean;\n secret?: boolean;\n visible?: boolean;\n mutable?: boolean;\n value?: string | IdxRemediationValueForm;\n label?: string;\n form?: IdxForm;\n options?: IdxOption[];\n messages?: IdxMessages;\n minLength?: number;\n maxLength?: number;\n}\n\nexport interface IdxRemediation {\n name: string;\n label?: string;\n value?: IdxRemediationValue[];\n relatesTo?: {\n type?: string;\n value: IdxAuthenticator;\n };\n idp?: IdpConfig;\n href?: string;\n method?: string;\n type?: string;\n accepts?: string;\n produces?: string;\n refresh?: number;\n rel?: string[];\n action?: (payload?: IdxActionParams) => Promise<IdxResponse>;\n}\n\nexport interface IdxContext {\n version: string;\n stateHandle: string;\n expiresAt: string;\n intent: string;\n currentAuthenticator: {\n type: string;\n value: IdxAuthenticator;\n };\n authenticators: {\n type: string;\n value: IdxAuthenticator[];\n };\n authenticatorEnrollments: {\n type: string;\n value: IdxAuthenticator[];\n };\n enrollmentAuthenticator: {\n type: string;\n value: IdxAuthenticator;\n };\n user?: {\n type: string;\n value: Record<string, unknown>;\n };\n app: {\n type: string;\n value: Record<string, unknown>;\n };\n messages?: IdxMessages;\n success?: IdxRemediation;\n failure?: IdxRemediation;\n}\n\nexport interface IdxMessage {\n message: string;\n class: string;\n i18n: {\n key: string;\n params?: unknown[];\n };\n}\n\nexport interface IdxMessages {\n type: 'array';\n value: IdxMessage[];\n}\n\n// JSON response from the server\nexport interface RawIdxResponse {\n version: string;\n stateHandle: string;\n intent?: string;\n expiresAt?: string;\n remediation?: {\n type: 'array';\n value: IdxRemediation[];\n };\n messages?: IdxMessages;\n success?: boolean;\n successWithInteractionCode?: IdxRemediation;\n}\n\nexport function isRawIdxResponse(obj: any): obj is RawIdxResponse {\n return obj && obj.version;\n}\n\nexport interface IdxActionParams {\n [key: string]: string | boolean | number | object;\n}\n\nexport interface IdxActions {\n [key: string]: (params?: IdxActionParams) => Promise<IdxResponse>;\n}\n\nexport interface IdxToPersist {\n interactionHandle?: string;\n withCredentials?: boolean;\n}\n\nexport interface IdxActionFunction {\n (params: IdxActionParams): Promise<IdxResponse>;\n neededParams?: Array<Array<IdxRemediationValue>>;\n}\n\nexport interface IdxResponse {\n proceed: (remediationName: string, params: unknown) => Promise<IdxResponse>;\n neededToProceed: IdxRemediation[];\n rawIdxState: RawIdxResponse;\n interactionCode?: string;\n actions: IdxActions;\n toPersist: IdxToPersist;\n context?: IdxContext;\n requestDidSucceed?: boolean;\n stepUp?: boolean;\n}\n\nexport function isIdxResponse(obj: any): obj is IdxResponse {\n return obj && isRawIdxResponse(obj.rawIdxState);\n}\n"],"names":[],"mappings":";;;;;;;;;;;;AA6MM,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAC,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA;AACvC,CAAA,CAAA,CAAA,CAAA,OAAO,CAAG,CAAA,CAAA,CAAA,CAAA,CAAA,CAAI,CAAG,CAAA,CAAA,CAAC,OAAO,CAAC;AAC5B,CAAC;AAgCK,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAa,CAAC,CAAA,CAAA,CAAQ,CAAA,CAAA,CAAA;CACpC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAO,GAAG,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAC,CAAG,CAAA,CAAA,CAAC,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC;AAClD,CAAA;;"}