@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
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../lib/idx/flow/AuthenticationFlow.ts"],"names":["AuthenticationFlow","Identify","SelectAuthenticatorAuthenticate","SelectAuthenticatorEnroll","AuthenticatorEnrollmentData","AuthenticatorVerificationData","EnrollAuthenticator","ChallengeAuthenticator","ChallengePoll","ReEnrollAuthenticator","EnrollPoll","RedirectIdp","Skip"],"mappings":";;;;AAcA;;AAdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAmBO,MAAMA,kBAAmC,GAAG;AACjD,cAAYC,qBADqC;AAEjD,uCAAqCC,4CAFY;AAGjD,iCAA+BC,sCAHkB;AAIjD,mCAAiCC,wCAJgB;AAKjD,qCAAmCC,0CALc;AAMjD,0BAAwBC,gCANyB;AAOjD,6BAA2BC,mCAPsB;AAQjD,oBAAkBC,0BAR+B;AASjD,4BAA0BC,kCATuB;AAUjD,iBAAeC,uBAVkC;AAWjD,kBAAgBC,wBAXiC;AAYjD,UAAQC;AAZyC,CAA5C","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 { RemediationFlow } from './RemediationFlow';\nimport { \n Identify,\n SelectAuthenticatorAuthenticate,\n ChallengeAuthenticator,\n ReEnrollAuthenticator,\n RedirectIdp,\n AuthenticatorEnrollmentData,\n SelectAuthenticatorEnroll,\n EnrollAuthenticator,\n AuthenticatorVerificationData,\n EnrollPoll,\n ChallengePoll, \n Skip\n} from '../remediators';\n\nexport const AuthenticationFlow: RemediationFlow = {\n 'identify': Identify,\n 'select-authenticator-authenticate': SelectAuthenticatorAuthenticate,\n 'select-authenticator-enroll': SelectAuthenticatorEnroll,\n 'authenticator-enrollment-data': AuthenticatorEnrollmentData,\n 'authenticator-verification-data': AuthenticatorVerificationData,\n 'enroll-authenticator': EnrollAuthenticator,\n 'challenge-authenticator': ChallengeAuthenticator,\n 'challenge-poll': ChallengePoll,\n 'reenroll-authenticator': ReEnrollAuthenticator,\n 'enroll-poll': EnrollPoll,\n 'redirect-idp': RedirectIdp,\n 'skip': Skip,\n};\n"],"file":"AuthenticationFlow.js"}
1
+ {"version":3,"file":"AuthenticationFlow.js","names":["AuthenticationFlow","Identify","SelectAuthenticatorAuthenticate","SelectAuthenticatorEnroll","AuthenticatorEnrollmentData","AuthenticatorVerificationData","EnrollAuthenticator","ChallengeAuthenticator","ChallengePoll","ReEnrollAuthenticator","EnrollPoll","RedirectIdp","Skip"],"sources":["../../../../lib/idx/flow/AuthenticationFlow.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 { RemediationFlow } from './RemediationFlow';\nimport { \n Identify,\n SelectAuthenticatorAuthenticate,\n ChallengeAuthenticator,\n ReEnrollAuthenticator,\n RedirectIdp,\n AuthenticatorEnrollmentData,\n SelectAuthenticatorEnroll,\n EnrollAuthenticator,\n AuthenticatorVerificationData,\n EnrollPoll,\n ChallengePoll, \n Skip\n} from '../remediators';\n\nexport const AuthenticationFlow: RemediationFlow = {\n 'identify': Identify,\n 'select-authenticator-authenticate': SelectAuthenticatorAuthenticate,\n 'select-authenticator-enroll': SelectAuthenticatorEnroll,\n 'authenticator-enrollment-data': AuthenticatorEnrollmentData,\n 'authenticator-verification-data': AuthenticatorVerificationData,\n 'enroll-authenticator': EnrollAuthenticator,\n 'challenge-authenticator': ChallengeAuthenticator,\n 'challenge-poll': ChallengePoll,\n 'reenroll-authenticator': ReEnrollAuthenticator,\n 'enroll-poll': EnrollPoll,\n 'redirect-idp': RedirectIdp,\n 'skip': Skip,\n};\n"],"mappings":";;;;AAcA;;AAdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAmBO,MAAMA,kBAAmC,GAAG;EACjD,YAAYC,qBADqC;EAEjD,qCAAqCC,4CAFY;EAGjD,+BAA+BC,sCAHkB;EAIjD,iCAAiCC,wCAJgB;EAKjD,mCAAmCC,0CALc;EAMjD,wBAAwBC,gCANyB;EAOjD,2BAA2BC,mCAPsB;EAQjD,kBAAkBC,0BAR+B;EASjD,0BAA0BC,kCATuB;EAUjD,eAAeC,uBAVkC;EAWjD,gBAAgBC,wBAXiC;EAYjD,QAAQC;AAZyC,CAA5C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../lib/idx/flow/FlowSpecification.ts"],"names":["getFlowSpecification","oktaAuth","flow","remediators","actions","withCredentials","RegistrationFlow","PasswordRecoveryFlow","AccountUnlockFlow","AuthenticationFlow"],"mappings":";;;;AACA;;AACA;;AACA;;AACA;;AAUA;AACO,SAASA,oBAAT,CACLC,QADK,EAELC,IAAoB,GAAG,SAFlB,EAGc;AACnB,MAAIC,WAAJ;AAAA,MAAiBC,OAAjB;AAAA,MAA0BC,eAAe,GAAG,IAA5C;;AACA,UAAQH,IAAR;AACE,SAAK,UAAL;AACA,SAAK,QAAL;AACA,SAAK,eAAL;AACEC,MAAAA,WAAW,GAAGG,kCAAd;AACAD,MAAAA,eAAe,GAAG,KAAlB;AACA;;AACF,SAAK,iBAAL;AACA,SAAK,eAAL;AACEF,MAAAA,WAAW,GAAGI,0CAAd;AACAH,MAAAA,OAAO,GAAG,CACR,8BADQ,EAER,wCAFQ,CAAV;AAIAC,MAAAA,eAAe,GAAG,KAAlB;AACA;;AACF,SAAK,eAAL;AACEF,MAAAA,WAAW,GAAGK,oCAAd;AACAH,MAAAA,eAAe,GAAG,KAAlB;AACAD,MAAAA,OAAO,GAAG,CACR,gBADQ,CAAV;AAGA;;AACF,SAAK,cAAL;AACA,SAAK,OAAL;AACA,SAAK,QAAL;AACED,MAAAA,WAAW,GAAGM,sCAAd;AACA;;AACF;AACE;AACAN,MAAAA,WAAW,GAAGM,sCAAd;AACA;AA/BJ;;AAiCA,SAAO;AAAEP,IAAAA,IAAF;AAAQC,IAAAA,WAAR;AAAqBC,IAAAA,OAArB;AAA8BC,IAAAA;AAA9B,GAAP;AACD","sourcesContent":["import { OktaAuthIdxInterface, FlowIdentifier } from '../../types';\nimport { AuthenticationFlow } from './AuthenticationFlow';\nimport { PasswordRecoveryFlow } from './PasswordRecoveryFlow';\nimport { RegistrationFlow } from './RegistrationFlow';\nimport { AccountUnlockFlow } from './AccountUnlockFlow';\nimport { RemediationFlow } from './RemediationFlow';\n\nexport interface FlowSpecification {\n flow: FlowIdentifier;\n remediators: RemediationFlow;\n actions?: string[];\n withCredentials?: boolean;\n}\n\n// eslint-disable-next-line complexity\nexport function getFlowSpecification(\n oktaAuth: OktaAuthIdxInterface,\n flow: FlowIdentifier = 'default'\n): FlowSpecification {\n let remediators, actions, withCredentials = true;\n switch (flow) {\n case 'register':\n case 'signup':\n case 'enrollProfile':\n remediators = RegistrationFlow;\n withCredentials = false;\n break;\n case 'recoverPassword':\n case 'resetPassword':\n remediators = PasswordRecoveryFlow;\n actions = [\n 'currentAuthenticator-recover', \n 'currentAuthenticatorEnrollment-recover'\n ];\n withCredentials = false;\n break;\n case 'unlockAccount':\n remediators = AccountUnlockFlow;\n withCredentials = false;\n actions = [\n 'unlock-account'\n ];\n break;\n case 'authenticate':\n case 'login':\n case 'signin':\n remediators = AuthenticationFlow;\n break;\n default:\n // default case has no flow monitor\n remediators = AuthenticationFlow;\n break;\n }\n return { flow, remediators, actions, withCredentials };\n}\n"],"file":"FlowSpecification.js"}
1
+ {"version":3,"file":"FlowSpecification.js","names":["getFlowSpecification","oktaAuth","flow","remediators","actions","withCredentials","RegistrationFlow","PasswordRecoveryFlow","AccountUnlockFlow","AuthenticationFlow"],"sources":["../../../../lib/idx/flow/FlowSpecification.ts"],"sourcesContent":["import { OktaAuthIdxInterface, FlowIdentifier } from '../../types';\nimport { AuthenticationFlow } from './AuthenticationFlow';\nimport { PasswordRecoveryFlow } from './PasswordRecoveryFlow';\nimport { RegistrationFlow } from './RegistrationFlow';\nimport { AccountUnlockFlow } from './AccountUnlockFlow';\nimport { RemediationFlow } from './RemediationFlow';\n\nexport interface FlowSpecification {\n flow: FlowIdentifier;\n remediators: RemediationFlow;\n actions?: string[];\n withCredentials?: boolean;\n}\n\n// eslint-disable-next-line complexity\nexport function getFlowSpecification(\n oktaAuth: OktaAuthIdxInterface,\n flow: FlowIdentifier = 'default'\n): FlowSpecification {\n let remediators, actions, withCredentials = true;\n switch (flow) {\n case 'register':\n case 'signup':\n case 'enrollProfile':\n remediators = RegistrationFlow;\n withCredentials = false;\n break;\n case 'recoverPassword':\n case 'resetPassword':\n remediators = PasswordRecoveryFlow;\n actions = [\n 'currentAuthenticator-recover', \n 'currentAuthenticatorEnrollment-recover'\n ];\n withCredentials = false;\n break;\n case 'unlockAccount':\n remediators = AccountUnlockFlow;\n withCredentials = false;\n actions = [\n 'unlock-account'\n ];\n break;\n case 'authenticate':\n case 'login':\n case 'signin':\n remediators = AuthenticationFlow;\n break;\n default:\n // default case has no flow monitor\n remediators = AuthenticationFlow;\n break;\n }\n return { flow, remediators, actions, withCredentials };\n}\n"],"mappings":";;;;AACA;;AACA;;AACA;;AACA;;AAUA;AACO,SAASA,oBAAT,CACLC,QADK,EAELC,IAAoB,GAAG,SAFlB,EAGc;EACnB,IAAIC,WAAJ;EAAA,IAAiBC,OAAjB;EAAA,IAA0BC,eAAe,GAAG,IAA5C;;EACA,QAAQH,IAAR;IACE,KAAK,UAAL;IACA,KAAK,QAAL;IACA,KAAK,eAAL;MACEC,WAAW,GAAGG,kCAAd;MACAD,eAAe,GAAG,KAAlB;MACA;;IACF,KAAK,iBAAL;IACA,KAAK,eAAL;MACEF,WAAW,GAAGI,0CAAd;MACAH,OAAO,GAAG,CACR,8BADQ,EAER,wCAFQ,CAAV;MAIAC,eAAe,GAAG,KAAlB;MACA;;IACF,KAAK,eAAL;MACEF,WAAW,GAAGK,oCAAd;MACAH,eAAe,GAAG,KAAlB;MACAD,OAAO,GAAG,CACR,gBADQ,CAAV;MAGA;;IACF,KAAK,cAAL;IACA,KAAK,OAAL;IACA,KAAK,QAAL;MACED,WAAW,GAAGM,sCAAd;MACA;;IACF;MACE;MACAN,WAAW,GAAGM,sCAAd;MACA;EA/BJ;;EAiCA,OAAO;IAAEP,IAAF;IAAQC,WAAR;IAAqBC,OAArB;IAA8BC;EAA9B,CAAP;AACD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../lib/idx/flow/PasswordRecoveryFlow.ts"],"names":["PasswordRecoveryFlow","Identify","SelectAuthenticatorAuthenticate","SelectAuthenticatorEnroll","ChallengeAuthenticator","AuthenticatorVerificationData","AuthenticatorEnrollmentData","ResetAuthenticator","ReEnrollAuthenticator","EnrollPoll"],"mappings":";;;;AAcA;;AAdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAgBO,MAAMA,oBAAqC,GAAG;AACnD,cAAYC,qBADuC;AAEnD,uBAAqBA,qBAF8B;AAGnD,uCAAqCC,4CAHc;AAInD,iCAA+BC,sCAJoB;AAKnD,6BAA2BC,mCALwB;AAMnD,qCAAmCC,0CANgB;AAOnD,mCAAiCC,wCAPkB;AAQnD,yBAAuBC,+BAR4B;AASnD,4BAA0BC,kCATyB;AAUnD,iBAAeC;AAVoC,CAA9C","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 { RemediationFlow } from './RemediationFlow';\nimport {\n Identify,\n SelectAuthenticatorAuthenticate,\n ChallengeAuthenticator,\n AuthenticatorVerificationData,\n ResetAuthenticator,\n ReEnrollAuthenticator,\n SelectAuthenticatorEnroll,\n AuthenticatorEnrollmentData,\n EnrollPoll\n} from '../remediators';\n\nexport const PasswordRecoveryFlow: RemediationFlow = {\n 'identify': Identify,\n 'identify-recovery': Identify,\n 'select-authenticator-authenticate': SelectAuthenticatorAuthenticate,\n 'select-authenticator-enroll': SelectAuthenticatorEnroll,\n 'challenge-authenticator': ChallengeAuthenticator,\n 'authenticator-verification-data': AuthenticatorVerificationData,\n 'authenticator-enrollment-data': AuthenticatorEnrollmentData,\n 'reset-authenticator': ResetAuthenticator,\n 'reenroll-authenticator': ReEnrollAuthenticator,\n 'enroll-poll': EnrollPoll,\n};\n"],"file":"PasswordRecoveryFlow.js"}
1
+ {"version":3,"file":"PasswordRecoveryFlow.js","names":["PasswordRecoveryFlow","Identify","SelectAuthenticatorAuthenticate","SelectAuthenticatorEnroll","ChallengeAuthenticator","AuthenticatorVerificationData","AuthenticatorEnrollmentData","ResetAuthenticator","ReEnrollAuthenticator","EnrollPoll"],"sources":["../../../../lib/idx/flow/PasswordRecoveryFlow.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 { RemediationFlow } from './RemediationFlow';\nimport {\n Identify,\n SelectAuthenticatorAuthenticate,\n ChallengeAuthenticator,\n AuthenticatorVerificationData,\n ResetAuthenticator,\n ReEnrollAuthenticator,\n SelectAuthenticatorEnroll,\n AuthenticatorEnrollmentData,\n EnrollPoll\n} from '../remediators';\n\nexport const PasswordRecoveryFlow: RemediationFlow = {\n 'identify': Identify,\n 'identify-recovery': Identify,\n 'select-authenticator-authenticate': SelectAuthenticatorAuthenticate,\n 'select-authenticator-enroll': SelectAuthenticatorEnroll,\n 'challenge-authenticator': ChallengeAuthenticator,\n 'authenticator-verification-data': AuthenticatorVerificationData,\n 'authenticator-enrollment-data': AuthenticatorEnrollmentData,\n 'reset-authenticator': ResetAuthenticator,\n 'reenroll-authenticator': ReEnrollAuthenticator,\n 'enroll-poll': EnrollPoll,\n};\n"],"mappings":";;;;AAcA;;AAdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAgBO,MAAMA,oBAAqC,GAAG;EACnD,YAAYC,qBADuC;EAEnD,qBAAqBA,qBAF8B;EAGnD,qCAAqCC,4CAHc;EAInD,+BAA+BC,sCAJoB;EAKnD,2BAA2BC,mCALwB;EAMnD,mCAAmCC,0CANgB;EAOnD,iCAAiCC,wCAPkB;EAQnD,uBAAuBC,+BAR4B;EASnD,0BAA0BC,kCATyB;EAUnD,eAAeC;AAVoC,CAA9C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../lib/idx/flow/RegistrationFlow.ts"],"names":["RegistrationFlow","SelectEnrollProfile","EnrollProfile","AuthenticatorEnrollmentData","SelectAuthenticatorEnroll","EnrollPoll","SelectEnrollmentChannel","EnrollmentChannelData","EnrollAuthenticator","Skip"],"mappings":";;;;AAcA;;AAdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAgBO,MAAMA,gBAAiC,GAAG;AAC/C,2BAAyBC,gCADsB;AAE/C,oBAAkBC,0BAF6B;AAG/C,mCAAiCC,wCAHc;AAI/C,iCAA+BC,sCAJgB;AAK/C,iBAAeC,uBALgC;AAM/C,+BAA6BC,oCANkB;AAO/C,6BAA2BC,kCAPoB;AAQ/C,0BAAwBC,gCARuB;AAS/C,UAAQC;AATuC,CAA1C","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 { RemediationFlow } from './RemediationFlow';\nimport { \n SelectEnrollProfile,\n EnrollPoll,\n SelectEnrollmentChannel,\n EnrollmentChannelData,\n EnrollProfile,\n SelectAuthenticatorEnroll,\n EnrollAuthenticator,\n AuthenticatorEnrollmentData,\n Skip,\n} from '../remediators';\n\nexport const RegistrationFlow: RemediationFlow = {\n 'select-enroll-profile': SelectEnrollProfile,\n 'enroll-profile': EnrollProfile,\n 'authenticator-enrollment-data': AuthenticatorEnrollmentData,\n 'select-authenticator-enroll': SelectAuthenticatorEnroll,\n 'enroll-poll': EnrollPoll,\n 'select-enrollment-channel': SelectEnrollmentChannel,\n 'enrollment-channel-data': EnrollmentChannelData,\n 'enroll-authenticator': EnrollAuthenticator,\n 'skip': Skip,\n};\n"],"file":"RegistrationFlow.js"}
1
+ {"version":3,"file":"RegistrationFlow.js","names":["RegistrationFlow","SelectEnrollProfile","EnrollProfile","AuthenticatorEnrollmentData","SelectAuthenticatorEnroll","EnrollPoll","SelectEnrollmentChannel","EnrollmentChannelData","EnrollAuthenticator","Skip"],"sources":["../../../../lib/idx/flow/RegistrationFlow.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 { RemediationFlow } from './RemediationFlow';\nimport { \n SelectEnrollProfile,\n EnrollPoll,\n SelectEnrollmentChannel,\n EnrollmentChannelData,\n EnrollProfile,\n SelectAuthenticatorEnroll,\n EnrollAuthenticator,\n AuthenticatorEnrollmentData,\n Skip,\n} from '../remediators';\n\nexport const RegistrationFlow: RemediationFlow = {\n 'select-enroll-profile': SelectEnrollProfile,\n 'enroll-profile': EnrollProfile,\n 'authenticator-enrollment-data': AuthenticatorEnrollmentData,\n 'select-authenticator-enroll': SelectAuthenticatorEnroll,\n 'enroll-poll': EnrollPoll,\n 'select-enrollment-channel': SelectEnrollmentChannel,\n 'enrollment-channel-data': EnrollmentChannelData,\n 'enroll-authenticator': EnrollAuthenticator,\n 'skip': Skip,\n};\n"],"mappings":";;;;AAcA;;AAdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAgBO,MAAMA,gBAAiC,GAAG;EAC/C,yBAAyBC,gCADsB;EAE/C,kBAAkBC,0BAF6B;EAG/C,iCAAiCC,wCAHc;EAI/C,+BAA+BC,sCAJgB;EAK/C,eAAeC,uBALgC;EAM/C,6BAA6BC,oCANkB;EAO/C,2BAA2BC,kCAPoB;EAQ/C,wBAAwBC,gCARuB;EAS/C,QAAQC;AATuC,CAA1C"}
@@ -1 +1 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","sourcesContent":[],"file":"RemediationFlow.js"}
1
+ {"version":3,"file":"RemediationFlow.js","names":[],"sources":["../../../../lib/idx/flow/RemediationFlow.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 { RemediatorConstructor } from '../remediators';\n\nexport type RemediationFlow = Record<string, RemediatorConstructor>;\n"],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../lib/idx/flow/index.ts"],"names":[],"mappings":";;;;AAYA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA","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\nexport * from './AuthenticationFlow';\nexport * from './FlowSpecification';\nexport * from './PasswordRecoveryFlow';\nexport * from './RegistrationFlow';\nexport * from './AccountUnlockFlow';\nexport * from './RemediationFlow';\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../lib/idx/flow/index.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\nexport * from './AuthenticationFlow';\nexport * from './FlowSpecification';\nexport * from './PasswordRecoveryFlow';\nexport * from './RegistrationFlow';\nexport * from './AccountUnlockFlow';\nexport * from './RemediationFlow';\n"],"mappings":";;;;AAYA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/idx/handleInteractionCodeRedirect.ts"],"names":["handleInteractionCodeRedirect","authClient","url","meta","transactionManager","load","AuthSdkError","codeVerifier","state","savedState","searchParams","get","interactionCode","error","OAuthError","tokens","token","exchangeCodeForTokens","tokenManager","setTokens"],"mappings":";;;;;;;;AAaA;;AAbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAOO,eAAeA,6BAAf,CACLC,UADK,EAELC,GAFK,EAGU;AACf,QAAMC,IAAI,GAAGF,UAAU,CAACG,kBAAX,CAA8BC,IAA9B,EAAb;;AACA,MAAI,CAACF,IAAL,EAAW;AACT,UAAM,IAAIG,oBAAJ,CAAiB,0CAAjB,CAAN;AACD;;AAED,QAAM;AACJC,IAAAA,YADI;AAEJC,IAAAA,KAAK,EAAEC;AAFH,MAGFN,IAHJ;AAIA,QAAM;AACJO,IAAAA,YADI,CAEN;AACA;;AAHM,MAIF,iBAAQR,GAAR,CAJJ;AAKA,QAAMM,KAAK,GAAGE,YAAY,CAACC,GAAb,CAAiB,OAAjB,CAAd;AACA,QAAMC,eAAe,GAAGF,YAAY,CAACC,GAAb,CAAiB,kBAAjB,CAAxB,CAhBe,CAkBf;;AACA,QAAME,KAAK,GAAGH,YAAY,CAACC,GAAb,CAAiB,OAAjB,CAAd;;AACA,MAAIE,KAAJ,EAAW;AACT;AACA,UAAM,IAAIC,kBAAJ,CAAeD,KAAf,EAAsBH,YAAY,CAACC,GAAb,CAAiB,mBAAjB,CAAtB,CAAN;AACD;;AACD,MAAIH,KAAK,KAAKC,UAAd,EAA0B;AACxB,UAAM,IAAIH,oBAAJ,CAAiB,6DAAjB,CAAN;AACD;;AACD,MAAI,CAACM,eAAL,EAAsB;AACpB,UAAM,IAAIN,oBAAJ,CAAiB,+CAAjB,CAAN;AACD,GA7Bc,CA+Bf;;;AACA,QAAM;AAAES,IAAAA;AAAF,MAAa,MAAMd,UAAU,CAACe,KAAX,CAAiBC,qBAAjB,CAAuC;AAAEL,IAAAA,eAAF;AAAmBL,IAAAA;AAAnB,GAAvC,CAAzB;AACAN,EAAAA,UAAU,CAACiB,YAAX,CAAwBC,SAAxB,CAAkCJ,MAAlC;AACD","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 { AuthSdkError, OAuthError } from '../errors';\nimport { OktaAuth } from '..';\nimport {IdxTransactionMeta} from '../types';\n\nexport async function handleInteractionCodeRedirect(\n authClient: OktaAuth, \n url: string\n): Promise<void> {\n const meta = authClient.transactionManager.load() as IdxTransactionMeta;\n if (!meta) {\n throw new AuthSdkError('No transaction data was found in storage');\n }\n\n const { \n codeVerifier,\n state: savedState \n } = meta;\n const { \n searchParams\n // URL API has been added to the polyfill\n // eslint-disable-next-line compat/compat\n } = new URL(url); \n const state = searchParams.get('state');\n const interactionCode = searchParams.get('interaction_code');\n\n // Error handling\n const error = searchParams.get('error');\n if (error) {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n throw new OAuthError(error, searchParams.get('error_description')!);\n }\n if (state !== savedState) {\n throw new AuthSdkError('State in redirect uri does not match with transaction state');\n }\n if (!interactionCode) {\n throw new AuthSdkError('Unable to parse interaction_code from the url');\n }\n \n // Save tokens to storage\n const { tokens } = await authClient.token.exchangeCodeForTokens({ interactionCode, codeVerifier });\n authClient.tokenManager.setTokens(tokens);\n}"],"file":"handleInteractionCodeRedirect.js"}
1
+ {"version":3,"file":"handleInteractionCodeRedirect.js","names":["handleInteractionCodeRedirect","authClient","url","meta","transactionManager","load","AuthSdkError","codeVerifier","state","savedState","searchParams","get","interactionCode","error","OAuthError","tokens","token","exchangeCodeForTokens","tokenManager","setTokens"],"sources":["../../../lib/idx/handleInteractionCodeRedirect.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 { AuthSdkError, OAuthError } from '../errors';\nimport { OktaAuth } from '..';\nimport {IdxTransactionMeta} from '../types';\n\nexport async function handleInteractionCodeRedirect(\n authClient: OktaAuth, \n url: string\n): Promise<void> {\n const meta = authClient.transactionManager.load() as IdxTransactionMeta;\n if (!meta) {\n throw new AuthSdkError('No transaction data was found in storage');\n }\n\n const { \n codeVerifier,\n state: savedState \n } = meta;\n const { \n searchParams\n // URL API has been added to the polyfill\n // eslint-disable-next-line compat/compat\n } = new URL(url); \n const state = searchParams.get('state');\n const interactionCode = searchParams.get('interaction_code');\n\n // Error handling\n const error = searchParams.get('error');\n if (error) {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n throw new OAuthError(error, searchParams.get('error_description')!);\n }\n if (state !== savedState) {\n throw new AuthSdkError('State in redirect uri does not match with transaction state');\n }\n if (!interactionCode) {\n throw new AuthSdkError('Unable to parse interaction_code from the url');\n }\n \n // Save tokens to storage\n const { tokens } = await authClient.token.exchangeCodeForTokens({ interactionCode, codeVerifier });\n authClient.tokenManager.setTokens(tokens);\n}"],"mappings":";;;;;;;;AAaA;;AAbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAOO,eAAeA,6BAAf,CACLC,UADK,EAELC,GAFK,EAGU;EACf,MAAMC,IAAI,GAAGF,UAAU,CAACG,kBAAX,CAA8BC,IAA9B,EAAb;;EACA,IAAI,CAACF,IAAL,EAAW;IACT,MAAM,IAAIG,oBAAJ,CAAiB,0CAAjB,CAAN;EACD;;EAED,MAAM;IACJC,YADI;IAEJC,KAAK,EAAEC;EAFH,IAGFN,IAHJ;EAIA,MAAM;IACJO,YADI,CAEN;IACA;;EAHM,IAIF,iBAAQR,GAAR,CAJJ;EAKA,MAAMM,KAAK,GAAGE,YAAY,CAACC,GAAb,CAAiB,OAAjB,CAAd;EACA,MAAMC,eAAe,GAAGF,YAAY,CAACC,GAAb,CAAiB,kBAAjB,CAAxB,CAhBe,CAkBf;;EACA,MAAME,KAAK,GAAGH,YAAY,CAACC,GAAb,CAAiB,OAAjB,CAAd;;EACA,IAAIE,KAAJ,EAAW;IACT;IACA,MAAM,IAAIC,kBAAJ,CAAeD,KAAf,EAAsBH,YAAY,CAACC,GAAb,CAAiB,mBAAjB,CAAtB,CAAN;EACD;;EACD,IAAIH,KAAK,KAAKC,UAAd,EAA0B;IACxB,MAAM,IAAIH,oBAAJ,CAAiB,6DAAjB,CAAN;EACD;;EACD,IAAI,CAACM,eAAL,EAAsB;IACpB,MAAM,IAAIN,oBAAJ,CAAiB,+CAAjB,CAAN;EACD,CA7Bc,CA+Bf;;;EACA,MAAM;IAAES;EAAF,IAAa,MAAMd,UAAU,CAACe,KAAX,CAAiBC,qBAAjB,CAAuC;IAAEL,eAAF;IAAmBL;EAAnB,CAAvC,CAAzB;EACAN,UAAU,CAACiB,YAAX,CAAwBC,SAAxB,CAAkCJ,MAAlC;AACD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../lib/idx/idxState/index.ts"],"names":["parsersForVersion","version","v1","undefined","Error","validateVersionConfig","cleanVersion","replace","makeIdxState","authClient","rawIdxResponse","toPersist","requestDidSucceed","IDX_API_VERSION"],"mappings":";;;;;;;;AAEA;;AACA;;AAHuD;AAC2B;AAK3E,MAAMA,iBAAiB,GAAG,SAASA,iBAAT,CAA4BC,OAA5B,EAAsC;AACrE,UAAQA,OAAR;AACE,SAAK,OAAL;AACE,aAAOC,gBAAP;;AACF,SAAKC,SAAL;AACA,SAAK,IAAL;AACE,YAAM,IAAIC,KAAJ,CAAU,yBAAV,CAAN;;AACF;AACE,YAAM,IAAIA,KAAJ,CAAW,wBAAuBH,OAAQ,iCAA1C,CAAN;AAPJ;AASD,CAVM;;;;AAYA,SAASI,qBAAT,CAA+BJ,OAA/B,EAAwC;AAC7C,MAAK,CAACA,OAAN,EAAgB;AACd,UAAM,IAAIG,KAAJ,CAAU,qBAAV,CAAN;AACD;;AAED,QAAME,YAAY,GAAG,CAACL,OAAD,aAACA,OAAD,cAACA,OAAD,GAAY,EAAZ,EAAgBM,OAAhB,CAAwB,iBAAxB,EAA2C,EAA3C,CAArB;;AACA,MAAKD,YAAY,KAAKL,OAAjB,IAA4B,CAACA,OAAlC,EAA4C;AAC1C,UAAM,IAAIG,KAAJ,CAAU,uEAAV,CAAN;AACD;;AAEDJ,EAAAA,iBAAiB,CAACC,OAAD,CAAjB,CAV6C,CAUjB;AAC7B;;AAEM,SAASO,YAAT,CACLC,UADK,EAELC,cAFK,EAGLC,SAHK,EAILC,iBAJK,EAKQ;AAAA;;AACb,QAAMX,OAAO,4BAAGS,cAAH,aAAGA,cAAH,uBAAGA,cAAc,CAAET,OAAnB,yEAA8BY,0BAA3C;AACAR,EAAAA,qBAAqB,CAACJ,OAAD,CAArB;AAEA,QAAM;AAAEO,IAAAA;AAAF,MAAmBR,iBAAiB,CAACC,OAAD,CAA1C;AACA,SAAOO,YAAY,CAACC,UAAD,EAAaC,cAAb,EAA6BC,SAA7B,EAAwCC,iBAAxC,CAAnB;AACD","sourcesContent":["import { OktaAuthIdxInterface } from '../../types'; // auth-js/types\nimport { IdxResponse, IdxToPersist, RawIdxResponse } from '../types/idx-js'; // idx/types\nimport { IDX_API_VERSION } from '../../constants';\nimport v1 from './v1/parsers';\n\n\nexport const parsersForVersion = function parsersForVersion( version ) {\n switch (version) {\n case '1.0.0':\n return v1;\n case undefined:\n case null:\n throw new Error('Api version is required');\n default:\n throw new Error(`Unknown api version: ${version}. Use an exact semver version.`);\n }\n};\n\nexport function validateVersionConfig(version) {\n if ( !version ) {\n throw new Error('version is required');\n }\n\n const cleanVersion = (version ?? '').replace(/[^0-9a-zA-Z._-]/, '');\n if ( cleanVersion !== version || !version ) {\n throw new Error('invalid version supplied - version is required and uses semver syntax');\n }\n\n parsersForVersion(version); // will throw for invalid version\n}\n\nexport function makeIdxState ( \n authClient: OktaAuthIdxInterface,\n rawIdxResponse: RawIdxResponse,\n toPersist: IdxToPersist,\n requestDidSucceed: boolean,\n): IdxResponse {\n const version = rawIdxResponse?.version ?? IDX_API_VERSION;\n validateVersionConfig(version);\n \n const { makeIdxState } = parsersForVersion(version);\n return makeIdxState(authClient, rawIdxResponse, toPersist, requestDidSucceed);\n}\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":["parsersForVersion","version","v1","undefined","Error","validateVersionConfig","cleanVersion","replace","makeIdxState","authClient","rawIdxResponse","toPersist","requestDidSucceed","IDX_API_VERSION"],"sources":["../../../../lib/idx/idxState/index.ts"],"sourcesContent":["import { OktaAuthIdxInterface } from '../../types'; // auth-js/types\nimport { IdxResponse, IdxToPersist, RawIdxResponse } from '../types/idx-js'; // idx/types\nimport { IDX_API_VERSION } from '../../constants';\nimport v1 from './v1/parsers';\n\n\nexport const parsersForVersion = function parsersForVersion( version ) {\n switch (version) {\n case '1.0.0':\n return v1;\n case undefined:\n case null:\n throw new Error('Api version is required');\n default:\n throw new Error(`Unknown api version: ${version}. Use an exact semver version.`);\n }\n};\n\nexport function validateVersionConfig(version) {\n if ( !version ) {\n throw new Error('version is required');\n }\n\n const cleanVersion = (version ?? '').replace(/[^0-9a-zA-Z._-]/, '');\n if ( cleanVersion !== version || !version ) {\n throw new Error('invalid version supplied - version is required and uses semver syntax');\n }\n\n parsersForVersion(version); // will throw for invalid version\n}\n\nexport function makeIdxState ( \n authClient: OktaAuthIdxInterface,\n rawIdxResponse: RawIdxResponse,\n toPersist: IdxToPersist,\n requestDidSucceed: boolean,\n): IdxResponse {\n const version = rawIdxResponse?.version ?? IDX_API_VERSION;\n validateVersionConfig(version);\n \n const { makeIdxState } = parsersForVersion(version);\n return makeIdxState(authClient, rawIdxResponse, toPersist, requestDidSucceed);\n}\n"],"mappings":";;;;;;;;AAEA;;AACA;;AAHuD;AAC2B;AAK3E,MAAMA,iBAAiB,GAAG,SAASA,iBAAT,CAA4BC,OAA5B,EAAsC;EACrE,QAAQA,OAAR;IACE,KAAK,OAAL;MACE,OAAOC,gBAAP;;IACF,KAAKC,SAAL;IACA,KAAK,IAAL;MACE,MAAM,IAAIC,KAAJ,CAAU,yBAAV,CAAN;;IACF;MACE,MAAM,IAAIA,KAAJ,CAAW,wBAAuBH,OAAQ,iCAA1C,CAAN;EAPJ;AASD,CAVM;;;;AAYA,SAASI,qBAAT,CAA+BJ,OAA/B,EAAwC;EAC7C,IAAK,CAACA,OAAN,EAAgB;IACd,MAAM,IAAIG,KAAJ,CAAU,qBAAV,CAAN;EACD;;EAED,MAAME,YAAY,GAAG,CAACL,OAAD,aAACA,OAAD,cAACA,OAAD,GAAY,EAAZ,EAAgBM,OAAhB,CAAwB,iBAAxB,EAA2C,EAA3C,CAArB;;EACA,IAAKD,YAAY,KAAKL,OAAjB,IAA4B,CAACA,OAAlC,EAA4C;IAC1C,MAAM,IAAIG,KAAJ,CAAU,uEAAV,CAAN;EACD;;EAEDJ,iBAAiB,CAACC,OAAD,CAAjB,CAV6C,CAUjB;AAC7B;;AAEM,SAASO,YAAT,CACLC,UADK,EAELC,cAFK,EAGLC,SAHK,EAILC,iBAJK,EAKQ;EAAA;;EACb,MAAMX,OAAO,4BAAGS,cAAH,aAAGA,cAAH,uBAAGA,cAAc,CAAET,OAAnB,yEAA8BY,0BAA3C;EACAR,qBAAqB,CAACJ,OAAD,CAArB;EAEA,MAAM;IAAEO;EAAF,IAAmBR,iBAAiB,CAACC,OAAD,CAA1C;EACA,OAAOO,YAAY,CAACC,UAAD,EAAaC,cAAb,EAA6BC,SAA7B,EAAwCC,iBAAxC,CAAnB;AACD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../lib/idx/idxState/v1/actionParser.ts"],"names":["isFieldMutable","field","mutable","divideSingleActionParamsByMutability","action","defaultParamsForAction","neededParamsForAction","immutableParamsForAction","value","push","name","divideActionParamsByMutability","actionList","Array","isArray","neededParams","defaultParams","immutableParams"],"mappings":";;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA,MAAMA,cAAc,GAAG,SAASA,cAAT,CAAwBC,KAAxB,EAA+B;AACpD;AACA,SAASA,KAAK,CAACC,OAAN,KAAkB,KAA3B;AACD,CAHD;;AAKA,MAAMC,oCAAoC,GAAG,SAASA,oCAAT,CAA+CC,MAA/C,EAAwD;AACnG,QAAMC,sBAAsB,GAAG,EAA/B,CADmG,CAChE;;AACnC,QAAMC,qBAAqB,GAAG,EAA9B,CAFmG,CAEjE;;AAClC,QAAMC,wBAAwB,GAAG,EAAjC,CAHmG,CAG9D;AACrC;AACA;AACA;;AACA,MAAI,CAACH,MAAM,CAACI,KAAZ,EAAmB;AACjBF,IAAAA,qBAAqB,CAACG,IAAtB,CAA2BL,MAA3B;AACA,WAAO;AAAEC,MAAAA,sBAAF;AAA0BC,MAAAA,qBAA1B;AAAiDC,MAAAA;AAAjD,KAAP;AACD;;AAED,OAAM,IAAIN,KAAV,IAAmBG,MAAM,CAACI,KAA1B,EAAkC;AAEhC,QAAKR,cAAc,CAAEC,KAAF,CAAnB,EAA+B;AAAA;;AAE7BK,MAAAA,qBAAqB,CAACG,IAAtB,CAA2BR,KAA3B;;AAEA,0BAAKA,KAAK,CAACO,KAAX,uDAAoB,KAApB,EAA4B;AAC1BH,QAAAA,sBAAsB,CAACJ,KAAK,CAACS,IAAP,CAAtB,GAAqCT,KAAK,CAACO,KAA3C;AACD;AAEF,KARD,MAQO;AAAA;;AACLD,MAAAA,wBAAwB,CAACN,KAAK,CAACS,IAAP,CAAxB,oBAAuCT,KAAK,CAACO,KAA7C,yDAAsD,EAAtD;AACD;AACF;;AACD,SAAO;AAAEH,IAAAA,sBAAF;AAA0BC,IAAAA,qBAA1B;AAAiDC,IAAAA;AAAjD,GAAP;AACD,CA3BD;;AA6BO,MAAMI,8BAA8B,GAAG,SAASA,8BAAT,CAAyCC,UAAzC,EAAsD;AAClG;AACAA,EAAAA,UAAU,GAAGC,KAAK,CAACC,OAAN,CAAcF,UAAd,IAA4BA,UAA5B,GAAyC,CAAEA,UAAF,CAAtD;AACA,QAAMG,YAAY,GAAG,EAArB;AACA,QAAMC,aAAa,GAAG,EAAtB;AACA,QAAMC,eAAe,GAAG,EAAxB;;AAEA,OAAM,IAAIb,MAAV,IAAoBQ,UAApB,EAAiC;AAC/B,UAAM;AACJP,MAAAA,sBADI;AAEJC,MAAAA,qBAFI;AAGJC,MAAAA;AAHI,QAIFJ,oCAAoC,CAACC,MAAD,CAJxC;AAKAW,IAAAA,YAAY,CAACN,IAAb,CAAkBH,qBAAlB;AACAU,IAAAA,aAAa,CAACZ,MAAM,CAACM,IAAR,CAAb,GAA6BL,sBAA7B;AACAY,IAAAA,eAAe,CAACb,MAAM,CAACM,IAAR,CAAf,GAA+BH,wBAA/B;AACD;;AAED,SAAO;AAAES,IAAAA,aAAF;AAAiBD,IAAAA,YAAjB;AAA+BE,IAAAA;AAA/B,GAAP;AACD,CAnBM","sourcesContent":["/*!\n * Copyright (c) 2021-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// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nconst isFieldMutable = function isFieldMutable(field) {\n // mutable defaults to true, annoyingly\n return ( field.mutable !== false );\n};\n\nconst divideSingleActionParamsByMutability = function divideSingleActionParamsByMutability( action ) {\n const defaultParamsForAction = {}; // mutable and present\n const neededParamsForAction = []; // mutable values\n const immutableParamsForAction = {}; // immutable\n // TODO: remove assumption that form names are unique, neededParams being an array is a temp fix\n // not all actions have value (e.g. redirect)\n // making sure they are not empty and instead hold the remediation object\n if (!action.value) {\n neededParamsForAction.push(action);\n return { defaultParamsForAction, neededParamsForAction, immutableParamsForAction };\n }\n\n for ( let field of action.value ) {\n\n if ( isFieldMutable( field ) ) {\n\n neededParamsForAction.push(field);\n\n if ( field.value ?? false ) {\n defaultParamsForAction[field.name] = field.value;\n }\n\n } else {\n immutableParamsForAction[field.name] = field.value ?? '';\n }\n }\n return { defaultParamsForAction, neededParamsForAction, immutableParamsForAction };\n};\n\nexport const divideActionParamsByMutability = function divideActionParamsByMutability( actionList ) {\n // TODO: when removing form name is unique assumption, this may all be redundant\n actionList = Array.isArray(actionList) ? actionList : [ actionList ];\n const neededParams = [];\n const defaultParams = {};\n const immutableParams = {};\n\n for ( let action of actionList ) {\n const { \n defaultParamsForAction, \n neededParamsForAction, \n immutableParamsForAction \n } = divideSingleActionParamsByMutability(action);\n neededParams.push(neededParamsForAction);\n defaultParams[action.name] = defaultParamsForAction;\n immutableParams[action.name] = immutableParamsForAction;\n }\n\n return { defaultParams, neededParams, immutableParams };\n};\n\n"],"file":"actionParser.js"}
1
+ {"version":3,"file":"actionParser.js","names":["isFieldMutable","field","mutable","divideSingleActionParamsByMutability","action","defaultParamsForAction","neededParamsForAction","immutableParamsForAction","value","push","name","divideActionParamsByMutability","actionList","Array","isArray","neededParams","defaultParams","immutableParams"],"sources":["../../../../../lib/idx/idxState/v1/actionParser.ts"],"sourcesContent":["/*!\n * Copyright (c) 2021-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// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nconst isFieldMutable = function isFieldMutable(field) {\n // mutable defaults to true, annoyingly\n return ( field.mutable !== false );\n};\n\nconst divideSingleActionParamsByMutability = function divideSingleActionParamsByMutability( action ) {\n const defaultParamsForAction = {}; // mutable and present\n const neededParamsForAction = []; // mutable values\n const immutableParamsForAction = {}; // immutable\n // TODO: remove assumption that form names are unique, neededParams being an array is a temp fix\n // not all actions have value (e.g. redirect)\n // making sure they are not empty and instead hold the remediation object\n if (!action.value) {\n neededParamsForAction.push(action);\n return { defaultParamsForAction, neededParamsForAction, immutableParamsForAction };\n }\n\n for ( let field of action.value ) {\n\n if ( isFieldMutable( field ) ) {\n\n neededParamsForAction.push(field);\n\n if ( field.value ?? false ) {\n defaultParamsForAction[field.name] = field.value;\n }\n\n } else {\n immutableParamsForAction[field.name] = field.value ?? '';\n }\n }\n return { defaultParamsForAction, neededParamsForAction, immutableParamsForAction };\n};\n\nexport const divideActionParamsByMutability = function divideActionParamsByMutability( actionList ) {\n // TODO: when removing form name is unique assumption, this may all be redundant\n actionList = Array.isArray(actionList) ? actionList : [ actionList ];\n const neededParams = [];\n const defaultParams = {};\n const immutableParams = {};\n\n for ( let action of actionList ) {\n const { \n defaultParamsForAction, \n neededParamsForAction, \n immutableParamsForAction \n } = divideSingleActionParamsByMutability(action);\n neededParams.push(neededParamsForAction);\n defaultParams[action.name] = defaultParamsForAction;\n immutableParams[action.name] = immutableParamsForAction;\n }\n\n return { defaultParams, neededParams, immutableParams };\n};\n\n"],"mappings":";;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA,MAAMA,cAAc,GAAG,SAASA,cAAT,CAAwBC,KAAxB,EAA+B;EACpD;EACA,OAASA,KAAK,CAACC,OAAN,KAAkB,KAA3B;AACD,CAHD;;AAKA,MAAMC,oCAAoC,GAAG,SAASA,oCAAT,CAA+CC,MAA/C,EAAwD;EACnG,MAAMC,sBAAsB,GAAG,EAA/B,CADmG,CAChE;;EACnC,MAAMC,qBAAqB,GAAG,EAA9B,CAFmG,CAEjE;;EAClC,MAAMC,wBAAwB,GAAG,EAAjC,CAHmG,CAG9D;EACrC;EACA;EACA;;EACA,IAAI,CAACH,MAAM,CAACI,KAAZ,EAAmB;IACjBF,qBAAqB,CAACG,IAAtB,CAA2BL,MAA3B;IACA,OAAO;MAAEC,sBAAF;MAA0BC,qBAA1B;MAAiDC;IAAjD,CAAP;EACD;;EAED,KAAM,IAAIN,KAAV,IAAmBG,MAAM,CAACI,KAA1B,EAAkC;IAEhC,IAAKR,cAAc,CAAEC,KAAF,CAAnB,EAA+B;MAAA;;MAE7BK,qBAAqB,CAACG,IAAtB,CAA2BR,KAA3B;;MAEA,oBAAKA,KAAK,CAACO,KAAX,uDAAoB,KAApB,EAA4B;QAC1BH,sBAAsB,CAACJ,KAAK,CAACS,IAAP,CAAtB,GAAqCT,KAAK,CAACO,KAA3C;MACD;IAEF,CARD,MAQO;MAAA;;MACLD,wBAAwB,CAACN,KAAK,CAACS,IAAP,CAAxB,oBAAuCT,KAAK,CAACO,KAA7C,yDAAsD,EAAtD;IACD;EACF;;EACD,OAAO;IAAEH,sBAAF;IAA0BC,qBAA1B;IAAiDC;EAAjD,CAAP;AACD,CA3BD;;AA6BO,MAAMI,8BAA8B,GAAG,SAASA,8BAAT,CAAyCC,UAAzC,EAAsD;EAClG;EACAA,UAAU,GAAGC,KAAK,CAACC,OAAN,CAAcF,UAAd,IAA4BA,UAA5B,GAAyC,CAAEA,UAAF,CAAtD;EACA,MAAMG,YAAY,GAAG,EAArB;EACA,MAAMC,aAAa,GAAG,EAAtB;EACA,MAAMC,eAAe,GAAG,EAAxB;;EAEA,KAAM,IAAIb,MAAV,IAAoBQ,UAApB,EAAiC;IAC/B,MAAM;MACJP,sBADI;MAEJC,qBAFI;MAGJC;IAHI,IAIFJ,oCAAoC,CAACC,MAAD,CAJxC;IAKAW,YAAY,CAACN,IAAb,CAAkBH,qBAAlB;IACAU,aAAa,CAACZ,MAAM,CAACM,IAAR,CAAb,GAA6BL,sBAA7B;IACAY,eAAe,CAACb,MAAM,CAACM,IAAR,CAAf,GAA+BH,wBAA/B;EACD;;EAED,OAAO;IAAES,aAAF;IAAiBD,YAAjB;IAA+BE;EAA/B,CAAP;AACD,CAnBM"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../lib/idx/idxState/v1/generateIdxAction.ts"],"names":["generateDirectFetch","authClient","actionDefinition","defaultParamsForAction","immutableParamsForAction","toPersist","target","href","params","headers","accepts","body","response","url","method","args","withCredentials","idx","makeIdxResponse","err","AuthApiError","xhr","payload","responseJSON","JSON","parse","responseText","wwwAuthHeader","idxResponse","status","stepUp","generateIdxAction","generator","defaultParams","neededParams","immutableParams","action","name"],"mappings":"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","sourcesContent":["/*!\n * Copyright (c) 2021-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/* eslint-disable max-len, complexity */\nimport { httpRequest } from '../../../http';\nimport { OktaAuthIdxInterface } from '../../../types'; // auth-js/types\nimport { IdxActionFunction, IdxActionParams, IdxResponse, IdxToPersist } from '../../types/idx-js';\nimport { divideActionParamsByMutability } from './actionParser';\nimport AuthApiError from '../../../errors/AuthApiError';\n\nconst generateDirectFetch = function generateDirectFetch(authClient: OktaAuthIdxInterface, { \n actionDefinition, \n defaultParamsForAction = {}, \n immutableParamsForAction = {}, \n toPersist = {} as IdxToPersist\n}): IdxActionFunction {\n const target = actionDefinition.href;\n return async function(params: IdxActionParams = {}): Promise<IdxResponse> {\n const headers = {\n 'Content-Type': 'application/json',\n 'Accept': actionDefinition.accepts || 'application/ion+json',\n };\n const body = JSON.stringify({\n ...defaultParamsForAction,\n ...params,\n ...immutableParamsForAction\n });\n\n try {\n const response = await httpRequest(authClient, {\n url: target,\n method: actionDefinition.method,\n headers,\n args: body,\n withCredentials: toPersist?.withCredentials ?? true\n });\n\n return authClient.idx.makeIdxResponse({ ...response }, toPersist, true);\n }\n catch (err) {\n if (!(err instanceof AuthApiError) || !err?.xhr) {\n throw err;\n }\n\n const response = err.xhr;\n const payload = response.responseJSON || JSON.parse(response.responseText);\n const wwwAuthHeader = response.headers['WWW-Authenticate'] || response.headers['www-authenticate'];\n\n const idxResponse = authClient.idx.makeIdxResponse({ ...payload }, toPersist, false);\n if (response.status === 401 && wwwAuthHeader === 'Oktadevicejwt realm=\"Okta Device\"') {\n // Okta server responds 401 status code with WWW-Authenticate header and new remediation\n // so that the iOS/MacOS credential SSO extension (Okta Verify) can intercept\n // the response reaches here when Okta Verify is not installed\n // set `stepUp` to true if flow should be continued without showing any errors\n idxResponse.stepUp = true;\n }\n\n // Throw IDX response if request did not succeed. This behavior will be removed in version 7.0: OKTA-481844\n throw idxResponse;\n }\n };\n};\n\n// TODO: Resolve in M2: Either build the final polling solution or remove this code\n// const generatePollingFetch = function generatePollingFetch( { actionDefinition, defaultParamsForAction = {}, immutableParamsForAction = {} } ) {\n// // TODO: Discussions ongoing about when/how to terminate polling: OKTA-246581\n// const target = actionDefinition.href;\n// return async function(params) {\n// return fetch(target, {\n// method: actionDefinition.method,\n// headers: {\n// 'content-type': actionDefinition.accepts,\n// },\n// body: JSON.stringify({ ...defaultParamsForAction, ...params, ...immutableParamsForAction })\n// })\n// .then( response => response.ok ? response.json() : response.json().then( err => Promise.reject(err)) )\n// .then( idxResponse => makeIdxState(authClient, idxResponse) );\n// };\n// };\n\nconst generateIdxAction = function generateIdxAction( authClient: OktaAuthIdxInterface, actionDefinition, toPersist ): IdxActionFunction {\n // TODO: leaving this here to see where the polling is EXPECTED to drop into the code, but removing any accidental trigger of incomplete code\n // const generator = actionDefinition.refresh ? generatePollingFetch : generateDirectFetch;\n const generator = generateDirectFetch;\n const { defaultParams, neededParams, immutableParams } = divideActionParamsByMutability( actionDefinition );\n\n const action = generator(authClient, {\n actionDefinition,\n defaultParamsForAction: defaultParams[actionDefinition.name],\n immutableParamsForAction: immutableParams[actionDefinition.name],\n toPersist\n });\n action.neededParams = neededParams;\n return action;\n};\n\nexport default generateIdxAction;\n"],"file":"generateIdxAction.js"}
1
+ {"version":3,"file":"generateIdxAction.js","names":["generateDirectFetch","authClient","actionDefinition","defaultParamsForAction","immutableParamsForAction","toPersist","target","href","params","headers","accepts","body","response","url","method","args","withCredentials","idx","makeIdxResponse","err","AuthApiError","xhr","payload","responseJSON","JSON","parse","responseText","wwwAuthHeader","idxResponse","status","stepUp","generateIdxAction","generator","defaultParams","neededParams","immutableParams","action","name"],"sources":["../../../../../lib/idx/idxState/v1/generateIdxAction.ts"],"sourcesContent":["/*!\n * Copyright (c) 2021-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/* eslint-disable max-len, complexity */\nimport { httpRequest } from '../../../http';\nimport { OktaAuthIdxInterface } from '../../../types'; // auth-js/types\nimport { IdxActionFunction, IdxActionParams, IdxResponse, IdxToPersist } from '../../types/idx-js';\nimport { divideActionParamsByMutability } from './actionParser';\nimport AuthApiError from '../../../errors/AuthApiError';\n\nconst generateDirectFetch = function generateDirectFetch(authClient: OktaAuthIdxInterface, { \n actionDefinition, \n defaultParamsForAction = {}, \n immutableParamsForAction = {}, \n toPersist = {} as IdxToPersist\n}): IdxActionFunction {\n const target = actionDefinition.href;\n return async function(params: IdxActionParams = {}): Promise<IdxResponse> {\n const headers = {\n 'Content-Type': 'application/json',\n 'Accept': actionDefinition.accepts || 'application/ion+json',\n };\n const body = JSON.stringify({\n ...defaultParamsForAction,\n ...params,\n ...immutableParamsForAction\n });\n\n try {\n const response = await httpRequest(authClient, {\n url: target,\n method: actionDefinition.method,\n headers,\n args: body,\n withCredentials: toPersist?.withCredentials ?? true\n });\n\n return authClient.idx.makeIdxResponse({ ...response }, toPersist, true);\n }\n catch (err) {\n if (!(err instanceof AuthApiError) || !err?.xhr) {\n throw err;\n }\n\n const response = err.xhr;\n const payload = response.responseJSON || JSON.parse(response.responseText);\n const wwwAuthHeader = response.headers['WWW-Authenticate'] || response.headers['www-authenticate'];\n\n const idxResponse = authClient.idx.makeIdxResponse({ ...payload }, toPersist, false);\n if (response.status === 401 && wwwAuthHeader === 'Oktadevicejwt realm=\"Okta Device\"') {\n // Okta server responds 401 status code with WWW-Authenticate header and new remediation\n // so that the iOS/MacOS credential SSO extension (Okta Verify) can intercept\n // the response reaches here when Okta Verify is not installed\n // set `stepUp` to true if flow should be continued without showing any errors\n idxResponse.stepUp = true;\n }\n\n // Throw IDX response if request did not succeed. This behavior will be removed in version 7.0: OKTA-481844\n throw idxResponse;\n }\n };\n};\n\n// TODO: Resolve in M2: Either build the final polling solution or remove this code\n// const generatePollingFetch = function generatePollingFetch( { actionDefinition, defaultParamsForAction = {}, immutableParamsForAction = {} } ) {\n// // TODO: Discussions ongoing about when/how to terminate polling: OKTA-246581\n// const target = actionDefinition.href;\n// return async function(params) {\n// return fetch(target, {\n// method: actionDefinition.method,\n// headers: {\n// 'content-type': actionDefinition.accepts,\n// },\n// body: JSON.stringify({ ...defaultParamsForAction, ...params, ...immutableParamsForAction })\n// })\n// .then( response => response.ok ? response.json() : response.json().then( err => Promise.reject(err)) )\n// .then( idxResponse => makeIdxState(authClient, idxResponse) );\n// };\n// };\n\nconst generateIdxAction = function generateIdxAction( authClient: OktaAuthIdxInterface, actionDefinition, toPersist ): IdxActionFunction {\n // TODO: leaving this here to see where the polling is EXPECTED to drop into the code, but removing any accidental trigger of incomplete code\n // const generator = actionDefinition.refresh ? generatePollingFetch : generateDirectFetch;\n const generator = generateDirectFetch;\n const { defaultParams, neededParams, immutableParams } = divideActionParamsByMutability( actionDefinition );\n\n const action = generator(authClient, {\n actionDefinition,\n defaultParamsForAction: defaultParams[actionDefinition.name],\n immutableParamsForAction: immutableParams[actionDefinition.name],\n toPersist\n });\n action.neededParams = neededParams;\n return action;\n};\n\nexport default generateIdxAction;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../lib/idx/idxState/v1/idxResponseParser.ts"],"names":["SKIP_FIELDS","field","parseNonRemediations","authClient","idxResponse","toPersist","actions","context","forEach","fieldIsObject","rel","name","value","fieldValue","type","info","subField","expandRelatesTo","k","query","Array","isArray","result","path","json","innerValue","convertRemediationAction","remediation","remediationActions","actionFn","action","parseIdxResponse","remediationData","remediations"],"mappings":";;;;;;;;;;;;;;;;AAgBA;;AACA;;AACA;;;;AAEA,MAAMA,WAAW,GAAG,0BAAmB,8BACrC,aADqC,EACtB;AACf,SAFqC,CAE1B;AAF0B,kBAG/BC,KAAD,IAAW,CAAEA,KAAF,EAAS,CAAC,CAAC,iBAAX,CAHqB,CAAnB,CAApB;;AAKO,MAAMC,oBAAoB,GAAG,SAASA,oBAAT,CAA+BC,UAA/B,EAAiEC,WAAjE,EAA8EC,SAAS,GAAG,EAA1F,EAA+F;AAAA;;AACjI,QAAMC,OAAO,GAAG,EAAhB;AACA,QAAMC,OAAO,GAAG,EAAhB;AAEA,sDAAYH,WAAZ,mBACWH,KAAK,IAAI,CAACD,WAAW,CAACC,KAAD,CADhC,EAEGO,OAFH,CAEYP,KAAK,IAAI;AACjB,UAAMQ,aAAa,GAAG,OAAOL,WAAW,CAACH,KAAD,CAAlB,KAA8B,QAA9B,IAA0C,CAAC,CAACG,WAAW,CAACH,KAAD,CAA7E;;AAEA,QAAK,CAACQ,aAAN,EAAsB;AACpB;AACAF,MAAAA,OAAO,CAACN,KAAD,CAAP,GAAiBG,WAAW,CAACH,KAAD,CAA5B;AACA;AACD;;AAED,QAAKG,WAAW,CAACH,KAAD,CAAX,CAAmBS,GAAxB,EAA8B;AAC5B;AACAJ,MAAAA,OAAO,CAACF,WAAW,CAACH,KAAD,CAAX,CAAmBU,IAApB,CAAP,GAAmC,gCAAkBR,UAAlB,EAA8BC,WAAW,CAACH,KAAD,CAAzC,EAAkDI,SAAlD,CAAnC;AACA;AACD;;AAED,UAAM;AAAEO,MAAAA,KAAK,EAAEC,UAAT;AAAqBC,MAAAA,IAArB;AAA2B,SAAGC;AAA9B,QAAsCX,WAAW,CAACH,KAAD,CAAvD;AACAM,IAAAA,OAAO,CAACN,KAAD,CAAP,GAAiB;AAAEa,MAAAA,IAAF;AAAQ,SAAGC;AAAX,KAAjB,CAhBiB,CAgBkB;;AAEnC,QAAKD,IAAI,KAAK,QAAd,EAAyB;AACvB;AACAP,MAAAA,OAAO,CAACN,KAAD,CAAP,CAAeW,KAAf,GAAuBC,UAAvB;AACA;AACD,KAtBgB,CAwBjB;;;AACAN,IAAAA,OAAO,CAACN,KAAD,CAAP,CAAeW,KAAf,GAAuB,EAAvB;AACA,0BAAeC,UAAf,EACGL,OADH,CACY,CAAC,CAACQ,QAAD,EAAWJ,KAAX,CAAD,KAAuB;AAC/B,UAAIA,KAAK,CAACF,GAAV,EAAe;AAAE;AACf;AACAJ,QAAAA,OAAO,CAAE,GAAEL,KAAM,IAAGe,QAAQ,CAACL,IAAT,IAAiBK,QAAS,EAAvC,CAAP,GAAmD,gCAAkBb,UAAlB,EAA8BS,KAA9B,EAAqCP,SAArC,CAAnD;AACD,OAHD,MAGO;AACL;AACAE,QAAAA,OAAO,CAACN,KAAD,CAAP,CAAeW,KAAf,CAAqBI,QAArB,IAAiCJ,KAAjC;AACD;AACF,KATH;AAUD,GAtCH;AAwCA,SAAO;AAAEL,IAAAA,OAAF;AAAWD,IAAAA;AAAX,GAAP;AACD,CA7CM;;;;AA+CP,MAAMW,eAAe,GAAG,CAACb,WAAD,EAAcQ,KAAd,KAAwB;AAC9C,qBAAYA,KAAZ,EAAmBJ,OAAnB,CAA2BU,CAAC,IAAI;AAC9B,QAAIA,CAAC,KAAK,WAAV,EAAuB;AACrB,YAAMC,KAAK,GAAGC,KAAK,CAACC,OAAN,CAAcT,KAAK,CAACM,CAAD,CAAnB,IAA0BN,KAAK,CAACM,CAAD,CAAL,CAAS,CAAT,CAA1B,GAAwCN,KAAK,CAACM,CAAD,CAA3D;;AACA,UAAI,OAAOC,KAAP,KAAiB,QAArB,EAA+B;AAC7B;AACA,cAAMG,MAAM,GAAG,4BAAS;AAAEC,UAAAA,IAAI,EAAEJ,KAAR;AAAeK,UAAAA,IAAI,EAAEpB;AAArB,SAAT,EAA6C,CAA7C,CAAf;;AACA,YAAIkB,MAAJ,EAAY;AACVV,UAAAA,KAAK,CAACM,CAAD,CAAL,GAAWI,MAAX;AACA;AACD;AACF;AACF;;AACD,QAAIF,KAAK,CAACC,OAAN,CAAcT,KAAK,CAACM,CAAD,CAAnB,CAAJ,EAA6B;AAC3BN,MAAAA,KAAK,CAACM,CAAD,CAAL,CAASV,OAAT,CAAiBiB,UAAU,IAAIR,eAAe,CAACb,WAAD,EAAcqB,UAAd,CAA9C;AACD;AACF,GAfD;AAgBD,CAjBD;;AAmBA,MAAMC,wBAAwB,GAAG,CAACvB,UAAD,EAAmCwB,WAAnC,EAAgDtB,SAAhD,KAA8D;AAC7F;AACA,MAAIsB,WAAW,CAACjB,GAAhB,EAAqB;AACnB,UAAMkB,kBAAkB,GAAG,qDAA8BzB,UAA9B,EAA0C,CAACwB,WAAD,CAA1C,EAAyDtB,SAAzD,CAA3B;AACA,UAAMwB,QAAQ,GAAGD,kBAAkB,CAACD,WAAW,CAAChB,IAAb,CAAnC;AACA,WAAO,EACL,GAAGgB,WADE;AAELG,MAAAA,MAAM,EAAED;AAFH,KAAP;AAID;;AAED,SAAOF,WAAP;AACD,CAZD;;AAcO,MAAMI,gBAAgB,GAAG,SAASA,gBAAT,CAA2B5B,UAA3B,EAA6DC,WAA7D,EAA0EC,SAAS,GAAG,EAAtF,EAI9B;AAAA;;AACA,QAAM2B,eAAe,GAAG,0BAAA5B,WAAW,CAACuB,WAAZ,gFAAyBf,KAAzB,KAAkC,EAA1D;AAEAoB,EAAAA,eAAe,CAACxB,OAAhB,CACEmB,WAAW,IAAIV,eAAe,CAACb,WAAD,EAAcuB,WAAd,CADhC;AAIA,QAAMM,YAAY,GAAG,kBAAAD,eAAe,MAAf,CAAAA,eAAe,EAAKL,WAAW,IAAID,wBAAwB,CAAEvB,UAAF,EAAcwB,WAAd,EAA2BtB,SAA3B,CAA5C,CAApC;AAEA,QAAM;AAAEE,IAAAA,OAAF;AAAWD,IAAAA;AAAX,MAAuBJ,oBAAoB,CAAEC,UAAF,EAAcC,WAAd,EAA2BC,SAA3B,CAAjD;AAEA,SAAO;AACL4B,IAAAA,YADK;AAEL1B,IAAAA,OAFK;AAGLD,IAAAA;AAHK,GAAP;AAKD,CApBM","sourcesContent":["/*!\n * Copyright (c) 2021-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/* eslint-disable max-len */\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nimport { OktaAuthIdxInterface } from '../../../types'; // auth-js/types\nimport { generateRemediationFunctions } from './remediationParser';\nimport generateIdxAction from './generateIdxAction';\nimport { JSONPath } from 'jsonpath-plus';\n\nconst SKIP_FIELDS = Object.fromEntries([\n 'remediation', // remediations are put into proceed/neededToProceed\n 'context', // the API response of 'context' isn't externally useful. We ignore it and put all non-action (contextual) info into idxState.context\n].map( (field) => [ field, !!'skip this field' ] ));\n\nexport const parseNonRemediations = function parseNonRemediations( authClient: OktaAuthIdxInterface, idxResponse, toPersist = {} ) {\n const actions = {};\n const context = {};\n\n Object.keys(idxResponse)\n .filter( field => !SKIP_FIELDS[field])\n .forEach( field => {\n const fieldIsObject = typeof idxResponse[field] === 'object' && !!idxResponse[field];\n\n if ( !fieldIsObject ) {\n // simple fields are contextual info\n context[field] = idxResponse[field];\n return;\n }\n\n if ( idxResponse[field].rel ) {\n // top level actions\n actions[idxResponse[field].name] = generateIdxAction(authClient, idxResponse[field], toPersist);\n return;\n }\n\n const { value: fieldValue, type, ...info} = idxResponse[field];\n context[field] = { type, ...info}; // add the non-action parts as context\n\n if ( type !== 'object' ) {\n // only object values hold actions\n context[field].value = fieldValue;\n return;\n }\n\n // We are an object field containing an object value\n context[field].value = {};\n Object.entries(fieldValue)\n .forEach( ([subField, value]) => {\n if (value.rel) { // is [field].value[subField] an action?\n // add any \"action\" value subfields to actions\n actions[`${field}-${subField.name || subField}`] = generateIdxAction(authClient, value, toPersist);\n } else {\n // add non-action value subfields to context\n context[field].value[subField] = value;\n }\n });\n });\n\n return { context, actions };\n};\n\nconst expandRelatesTo = (idxResponse, value) => {\n Object.keys(value).forEach(k => {\n if (k === 'relatesTo') {\n const query = Array.isArray(value[k]) ? value[k][0] : value[k];\n if (typeof query === 'string') {\n // eslint-disable-next-line new-cap\n const result = JSONPath({ path: query, json: idxResponse })[0];\n if (result) {\n value[k] = result;\n return;\n }\n }\n }\n if (Array.isArray(value[k])) {\n value[k].forEach(innerValue => expandRelatesTo(idxResponse, innerValue));\n }\n });\n};\n\nconst convertRemediationAction = (authClient: OktaAuthIdxInterface, remediation, toPersist) => {\n // Only remediation that has `rel` field (indicator for form submission) can have http action\n if (remediation.rel) {\n const remediationActions = generateRemediationFunctions( authClient, [remediation], toPersist );\n const actionFn = remediationActions[remediation.name];\n return {\n ...remediation,\n action: actionFn,\n };\n }\n \n return remediation;\n};\n\nexport const parseIdxResponse = function parseIdxResponse( authClient: OktaAuthIdxInterface, idxResponse, toPersist = {} ): {\n remediations: IdxRemediation[];\n context: IdxContext;\n actions: IdxActions;\n} {\n const remediationData = idxResponse.remediation?.value || [];\n\n remediationData.forEach(\n remediation => expandRelatesTo(idxResponse, remediation)\n );\n\n const remediations = remediationData.map(remediation => convertRemediationAction( authClient, remediation, toPersist ));\n\n const { context, actions } = parseNonRemediations( authClient, idxResponse, toPersist );\n\n return {\n remediations,\n context,\n actions,\n };\n};\n"],"file":"idxResponseParser.js"}
1
+ {"version":3,"file":"idxResponseParser.js","names":["SKIP_FIELDS","field","parseNonRemediations","authClient","idxResponse","toPersist","actions","context","forEach","fieldIsObject","rel","name","value","fieldValue","type","info","subField","expandRelatesTo","k","query","Array","isArray","result","path","json","innerValue","convertRemediationAction","remediation","remediationActions","actionFn","action","parseIdxResponse","remediationData","remediations"],"sources":["../../../../../lib/idx/idxState/v1/idxResponseParser.ts"],"sourcesContent":["/*!\n * Copyright (c) 2021-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/* eslint-disable max-len */\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nimport { OktaAuthIdxInterface } from '../../../types'; // auth-js/types\nimport { generateRemediationFunctions } from './remediationParser';\nimport generateIdxAction from './generateIdxAction';\nimport { JSONPath } from 'jsonpath-plus';\n\nconst SKIP_FIELDS = Object.fromEntries([\n 'remediation', // remediations are put into proceed/neededToProceed\n 'context', // the API response of 'context' isn't externally useful. We ignore it and put all non-action (contextual) info into idxState.context\n].map( (field) => [ field, !!'skip this field' ] ));\n\nexport const parseNonRemediations = function parseNonRemediations( authClient: OktaAuthIdxInterface, idxResponse, toPersist = {} ) {\n const actions = {};\n const context = {};\n\n Object.keys(idxResponse)\n .filter( field => !SKIP_FIELDS[field])\n .forEach( field => {\n const fieldIsObject = typeof idxResponse[field] === 'object' && !!idxResponse[field];\n\n if ( !fieldIsObject ) {\n // simple fields are contextual info\n context[field] = idxResponse[field];\n return;\n }\n\n if ( idxResponse[field].rel ) {\n // top level actions\n actions[idxResponse[field].name] = generateIdxAction(authClient, idxResponse[field], toPersist);\n return;\n }\n\n const { value: fieldValue, type, ...info} = idxResponse[field];\n context[field] = { type, ...info}; // add the non-action parts as context\n\n if ( type !== 'object' ) {\n // only object values hold actions\n context[field].value = fieldValue;\n return;\n }\n\n // We are an object field containing an object value\n context[field].value = {};\n Object.entries(fieldValue)\n .forEach( ([subField, value]) => {\n if (value.rel) { // is [field].value[subField] an action?\n // add any \"action\" value subfields to actions\n actions[`${field}-${subField.name || subField}`] = generateIdxAction(authClient, value, toPersist);\n } else {\n // add non-action value subfields to context\n context[field].value[subField] = value;\n }\n });\n });\n\n return { context, actions };\n};\n\nconst expandRelatesTo = (idxResponse, value) => {\n Object.keys(value).forEach(k => {\n if (k === 'relatesTo') {\n const query = Array.isArray(value[k]) ? value[k][0] : value[k];\n if (typeof query === 'string') {\n // eslint-disable-next-line new-cap\n const result = JSONPath({ path: query, json: idxResponse })[0];\n if (result) {\n value[k] = result;\n return;\n }\n }\n }\n if (Array.isArray(value[k])) {\n value[k].forEach(innerValue => expandRelatesTo(idxResponse, innerValue));\n }\n });\n};\n\nconst convertRemediationAction = (authClient: OktaAuthIdxInterface, remediation, toPersist) => {\n // Only remediation that has `rel` field (indicator for form submission) can have http action\n if (remediation.rel) {\n const remediationActions = generateRemediationFunctions( authClient, [remediation], toPersist );\n const actionFn = remediationActions[remediation.name];\n return {\n ...remediation,\n action: actionFn,\n };\n }\n \n return remediation;\n};\n\nexport const parseIdxResponse = function parseIdxResponse( authClient: OktaAuthIdxInterface, idxResponse, toPersist = {} ): {\n remediations: IdxRemediation[];\n context: IdxContext;\n actions: IdxActions;\n} {\n const remediationData = idxResponse.remediation?.value || [];\n\n remediationData.forEach(\n remediation => expandRelatesTo(idxResponse, remediation)\n );\n\n const remediations = remediationData.map(remediation => convertRemediationAction( authClient, remediation, toPersist ));\n\n const { context, actions } = parseNonRemediations( authClient, idxResponse, toPersist );\n\n return {\n remediations,\n context,\n actions,\n };\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../lib/idx/idxState/v1/makeIdxState.ts"],"names":["makeIdxState","authClient","idxResponse","toPersist","requestDidSucceed","rawIdxResponse","remediations","context","actions","neededToProceed","proceed","remediationChoice","paramsFromUser","remediationChoiceObject","remediation","name","reject","actionFn","action","findCode","item","interactionCode","successWithInteractionCode","value","rawIdxState"],"mappings":";;;;;;;;;;AAcA;;AAdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAG0E;AAGnE,SAASA,YAAT,CACLC,UADK,EAELC,WAFK,EAGLC,SAHK,EAILC,iBAJK,EAKQ;AAAA;;AACb,QAAMC,cAAc,GAAIH,WAAxB;AACA,QAAM;AAAEI,IAAAA,YAAF;AAAgBC,IAAAA,OAAhB;AAAyBC,IAAAA;AAAzB,MAAqC,yCAAkBP,UAAlB,EAA8BC,WAA9B,EAA2CC,SAA3C,CAA3C;AACA,QAAMM,eAAe,GAAG,CAAC,GAAGH,YAAJ,CAAxB;;AAEA,QAAMI,OAA+B,GAAG,gBAAgBC,iBAAhB,EAAmCC,cAAc,GAAG,EAApD,EAAyD;AAC/F;AACJ;AACA;AACA;AACA;AACA;AACI,UAAMC,uBAAuB,GAAG,mBAAAP,YAAY,MAAZ,CAAAA,YAAY,EAAOQ,WAAD,IAAiBA,WAAW,CAACC,IAAZ,KAAqBJ,iBAA5C,CAA5C;;AACA,QAAK,CAACE,uBAAN,EAAgC;AAC9B,aAAO,iBAAQG,MAAR,CAAgB,gCAA+BL,iBAAkB,GAAjE,CAAP;AACD;;AAED,UAAMM,QAAQ,GAAGJ,uBAAuB,CAACK,MAAzC;;AACA,QAAI,OAAOD,QAAP,KAAoB,UAAxB,EAAoC;AAClC,aAAO,iBAAQD,MAAR,CAAgB,wDAAuDL,iBAAkB,GAAzF,CAAP;AACD;;AAED,WAAOE,uBAAuB,CAACK,MAAxB,CAA+BN,cAA/B,CAAP;AACD,GAlBD;;AAoBA,QAAMO,QAAQ,GAAGC,IAAI,IAAIA,IAAI,CAACL,IAAL,KAAc,kBAAvC;;AACA,QAAMM,eAAe,4BAAGhB,cAAc,CAACiB,0BAAlB,oFAAG,sBAA2CC,KAA9C,qFAAG,wEAAwDJ,QAAxD,CAAH,2DAAG,uBAAoEI,KAA5F;AAEA,SAAO;AACLb,IAAAA,OADK;AAELD,IAAAA,eAFK;AAGLD,IAAAA,OAHK;AAILD,IAAAA,OAJK;AAKLiB,IAAAA,WAAW,EAAEnB,cALR;AAMLgB,IAAAA,eANK;AAOLlB,IAAAA,SAPK;AAQLC,IAAAA;AARK,GAAP;AAUD","sourcesContent":["/*!\n * Copyright (c) 2021-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 { IdxResponse, IdxToPersist } from '../../types/idx-js';\nimport { OktaAuthIdxInterface, RawIdxResponse } from '../../../types'; // auth-js/types\nimport { parseIdxResponse } from './idxResponseParser';\n\nexport function makeIdxState( \n authClient: OktaAuthIdxInterface,\n idxResponse: RawIdxResponse,\n toPersist: IdxToPersist,\n requestDidSucceed: boolean\n): IdxResponse {\n const rawIdxResponse = idxResponse;\n const { remediations, context, actions } = parseIdxResponse( authClient, idxResponse, toPersist );\n const neededToProceed = [...remediations];\n\n const proceed: IdxResponse['proceed'] = async function( remediationChoice, paramsFromUser = {} ) {\n /*\n remediationChoice is the name attribute on each form\n name should remain unique for items inside the remediation that are considered forms(identify, select-factor)\n name can be duplicate for items like redirect where its not considered a form(redirect)\n when names are not unique its a redirect to a href, so widget wont POST to idx-js layer.\n */\n const remediationChoiceObject = remediations.find((remediation) => remediation.name === remediationChoice);\n if ( !remediationChoiceObject ) {\n return Promise.reject(`Unknown remediation choice: [${remediationChoice}]`);\n }\n\n const actionFn = remediationChoiceObject.action;\n if (typeof actionFn !== 'function') {\n return Promise.reject(`Current remediation cannot make form submit action: [${remediationChoice}]`);\n }\n\n return remediationChoiceObject.action(paramsFromUser);\n };\n\n const findCode = item => item.name === 'interaction_code';\n const interactionCode = rawIdxResponse.successWithInteractionCode?.value?.find( findCode )?.value as string;\n\n return {\n proceed,\n neededToProceed,\n actions,\n context,\n rawIdxState: rawIdxResponse,\n interactionCode,\n toPersist,\n requestDidSucceed,\n };\n}\n"],"file":"makeIdxState.js"}
1
+ {"version":3,"file":"makeIdxState.js","names":["makeIdxState","authClient","idxResponse","toPersist","requestDidSucceed","rawIdxResponse","remediations","context","actions","neededToProceed","proceed","remediationChoice","paramsFromUser","remediationChoiceObject","remediation","name","reject","actionFn","action","findCode","item","interactionCode","successWithInteractionCode","value","rawIdxState"],"sources":["../../../../../lib/idx/idxState/v1/makeIdxState.ts"],"sourcesContent":["/*!\n * Copyright (c) 2021-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 { IdxResponse, IdxToPersist } from '../../types/idx-js';\nimport { OktaAuthIdxInterface, RawIdxResponse } from '../../../types'; // auth-js/types\nimport { parseIdxResponse } from './idxResponseParser';\n\nexport function makeIdxState( \n authClient: OktaAuthIdxInterface,\n idxResponse: RawIdxResponse,\n toPersist: IdxToPersist,\n requestDidSucceed: boolean\n): IdxResponse {\n const rawIdxResponse = idxResponse;\n const { remediations, context, actions } = parseIdxResponse( authClient, idxResponse, toPersist );\n const neededToProceed = [...remediations];\n\n const proceed: IdxResponse['proceed'] = async function( remediationChoice, paramsFromUser = {} ) {\n /*\n remediationChoice is the name attribute on each form\n name should remain unique for items inside the remediation that are considered forms(identify, select-factor)\n name can be duplicate for items like redirect where its not considered a form(redirect)\n when names are not unique its a redirect to a href, so widget wont POST to idx-js layer.\n */\n const remediationChoiceObject = remediations.find((remediation) => remediation.name === remediationChoice);\n if ( !remediationChoiceObject ) {\n return Promise.reject(`Unknown remediation choice: [${remediationChoice}]`);\n }\n\n const actionFn = remediationChoiceObject.action;\n if (typeof actionFn !== 'function') {\n return Promise.reject(`Current remediation cannot make form submit action: [${remediationChoice}]`);\n }\n\n return remediationChoiceObject.action(paramsFromUser);\n };\n\n const findCode = item => item.name === 'interaction_code';\n const interactionCode = rawIdxResponse.successWithInteractionCode?.value?.find( findCode )?.value as string;\n\n return {\n proceed,\n neededToProceed,\n actions,\n context,\n rawIdxState: rawIdxResponse,\n interactionCode,\n toPersist,\n requestDidSucceed,\n };\n}\n"],"mappings":";;;;;;;;;;AAcA;;AAdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAG0E;AAGnE,SAASA,YAAT,CACLC,UADK,EAELC,WAFK,EAGLC,SAHK,EAILC,iBAJK,EAKQ;EAAA;;EACb,MAAMC,cAAc,GAAIH,WAAxB;EACA,MAAM;IAAEI,YAAF;IAAgBC,OAAhB;IAAyBC;EAAzB,IAAqC,yCAAkBP,UAAlB,EAA8BC,WAA9B,EAA2CC,SAA3C,CAA3C;EACA,MAAMM,eAAe,GAAG,CAAC,GAAGH,YAAJ,CAAxB;;EAEA,MAAMI,OAA+B,GAAG,gBAAgBC,iBAAhB,EAAmCC,cAAc,GAAG,EAApD,EAAyD;IAC/F;AACJ;AACA;AACA;AACA;AACA;IACI,MAAMC,uBAAuB,GAAG,mBAAAP,YAAY,MAAZ,CAAAA,YAAY,EAAOQ,WAAD,IAAiBA,WAAW,CAACC,IAAZ,KAAqBJ,iBAA5C,CAA5C;;IACA,IAAK,CAACE,uBAAN,EAAgC;MAC9B,OAAO,iBAAQG,MAAR,CAAgB,gCAA+BL,iBAAkB,GAAjE,CAAP;IACD;;IAED,MAAMM,QAAQ,GAAGJ,uBAAuB,CAACK,MAAzC;;IACA,IAAI,OAAOD,QAAP,KAAoB,UAAxB,EAAoC;MAClC,OAAO,iBAAQD,MAAR,CAAgB,wDAAuDL,iBAAkB,GAAzF,CAAP;IACD;;IAED,OAAOE,uBAAuB,CAACK,MAAxB,CAA+BN,cAA/B,CAAP;EACD,CAlBD;;EAoBA,MAAMO,QAAQ,GAAGC,IAAI,IAAIA,IAAI,CAACL,IAAL,KAAc,kBAAvC;;EACA,MAAMM,eAAe,4BAAGhB,cAAc,CAACiB,0BAAlB,oFAAG,sBAA2CC,KAA9C,qFAAG,wEAAwDJ,QAAxD,CAAH,2DAAG,uBAAoEI,KAA5F;EAEA,OAAO;IACLb,OADK;IAELD,eAFK;IAGLD,OAHK;IAILD,OAJK;IAKLiB,WAAW,EAAEnB,cALR;IAMLgB,eANK;IAOLlB,SAPK;IAQLC;EARK,CAAP;AAUD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../lib/idx/idxState/v1/parsers.ts"],"names":["makeIdxState"],"mappings":";;;;AAcA;;AAdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;eAGe;AACbA,EAAAA,YAAY,EAAZA;AADa,C","sourcesContent":["/*!\n * Copyright (c) 2021-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// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nimport { makeIdxState } from './makeIdxState';\n\nexport default {\n makeIdxState,\n};\n"],"file":"parsers.js"}
1
+ {"version":3,"file":"parsers.js","names":["makeIdxState"],"sources":["../../../../../lib/idx/idxState/v1/parsers.ts"],"sourcesContent":["/*!\n * Copyright (c) 2021-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// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nimport { makeIdxState } from './makeIdxState';\n\nexport default {\n makeIdxState,\n};\n"],"mappings":";;;;AAcA;;AAdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;eAGe;EACbA,YAAY,EAAZA;AADa,C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../lib/idx/idxState/v1/remediationParser.ts"],"names":["generateRemediationFunctions","authClient","remediationValue","toPersist","remediation","name"],"mappings":";;;;;;;;;;AAeA;;AAfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAC0D;AAGnD,MAAMA,4BAA4B,GAAG,SAASA,4BAAT,CAC1CC,UAD0C,EAE1CC,gBAF0C,EAG1CC,SAAS,GAAG,EAH8B,EAI1C;AACA,SAAO,0BAAoB,kBAAAD,gBAAgB,MAAhB,CAAAA,gBAAgB,EAAME,WAAW,IAAI;AAC9D,WAAO,CACLA,WAAW,CAACC,IADP,EAEL,gCAAkBJ,UAAlB,EAA8BG,WAA9B,EAA2CD,SAA3C,CAFK,CAAP;AAID,GAL0C,CAApC,CAAP;AAMD,CAXM","sourcesContent":["/*!\n * Copyright (c) 2021-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// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nimport { OktaAuthIdxInterface } from '../../../types'; // auth-js/types\nimport generateIdxAction from './generateIdxAction';\n\nexport const generateRemediationFunctions = function generateRemediationFunctions(\n authClient: OktaAuthIdxInterface,\n remediationValue,\n toPersist = {}\n) {\n return Object.fromEntries( remediationValue.map( remediation => {\n return [\n remediation.name,\n generateIdxAction(authClient, remediation, toPersist),\n ];\n }) );\n};\n"],"file":"remediationParser.js"}
1
+ {"version":3,"file":"remediationParser.js","names":["generateRemediationFunctions","authClient","remediationValue","toPersist","remediation","name"],"sources":["../../../../../lib/idx/idxState/v1/remediationParser.ts"],"sourcesContent":["/*!\n * Copyright (c) 2021-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// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nimport { OktaAuthIdxInterface } from '../../../types'; // auth-js/types\nimport generateIdxAction from './generateIdxAction';\n\nexport const generateRemediationFunctions = function generateRemediationFunctions(\n authClient: OktaAuthIdxInterface,\n remediationValue,\n toPersist = {}\n) {\n return Object.fromEntries( remediationValue.map( remediation => {\n return [\n remediation.name,\n generateIdxAction(authClient, remediation, toPersist),\n ];\n }) );\n};\n"],"mappings":";;;;;;;;;;AAeA;;AAfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAC0D;AAGnD,MAAMA,4BAA4B,GAAG,SAASA,4BAAT,CAC1CC,UAD0C,EAE1CC,gBAF0C,EAG1CC,SAAS,GAAG,EAH8B,EAI1C;EACA,OAAO,0BAAoB,kBAAAD,gBAAgB,MAAhB,CAAAA,gBAAgB,EAAME,WAAW,IAAI;IAC9D,OAAO,CACLA,WAAW,CAACC,IADP,EAEL,gCAAkBJ,UAAlB,EAA8BG,WAA9B,EAA2CD,SAA3C,CAFK,CAAP;EAID,CAL0C,CAApC,CAAP;AAMD,CAXM"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/idx/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaA;;AACA;;AACA;;AAMA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA","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\nexport { authenticate } from './authenticate';\nexport { cancel } from './cancel';\nexport { \n handleEmailVerifyCallback, \n isEmailVerifyCallback, \n parseEmailVerifyCallback, \n isEmailVerifyCallbackError, \n} from './emailVerify';\nexport { interact } from './interact';\nexport { introspect } from './introspect';\nexport { poll } from './poll';\nexport { proceed, canProceed } from './proceed';\nexport { register } from './register';\nexport { recoverPassword } from './recoverPassword';\nexport { handleInteractionCodeRedirect } from './handleInteractionCodeRedirect';\nexport { startTransaction } from './startTransaction';\nexport { unlockAccount } from './unlockAccount';\nexport * from './transactionMeta';\n"],"file":"index.js"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../lib/idx/index.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\nexport { authenticate } from './authenticate';\nexport { cancel } from './cancel';\nexport { \n handleEmailVerifyCallback, \n isEmailVerifyCallback, \n parseEmailVerifyCallback, \n isEmailVerifyCallbackError, \n} from './emailVerify';\nexport { interact } from './interact';\nexport { introspect } from './introspect';\nexport { poll } from './poll';\nexport { proceed, canProceed } from './proceed';\nexport { register } from './register';\nexport { recoverPassword } from './recoverPassword';\nexport { handleInteractionCodeRedirect } from './handleInteractionCodeRedirect';\nexport { startTransaction } from './startTransaction';\nexport { unlockAccount } from './unlockAccount';\nexport * from './transactionMeta';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaA;;AACA;;AACA;;AAMA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAAA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/idx/interact.ts"],"names":["getResponse","meta","interactionHandle","state","interact","authClient","options","baseUrl","clientId","redirectUri","scopes","withCredentials","codeChallenge","codeChallengeMethod","activationToken","recoveryToken","maxAge","clientSecret","url","params","client_id","scope","join","redirect_uri","code_challenge","code_challenge_method","activation_token","recovery_token","client_secret","max_age","headers","resp","method","args","interaction_handle","newMeta"],"mappings":"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","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/* eslint complexity:[0,8] */\nimport { OktaAuthIdxInterface, IdxTransactionMeta, InteractOptions, InteractResponse } from '../types';\nimport { getSavedTransactionMeta, saveTransactionMeta, createTransactionMeta } from './transactionMeta';\nimport { getOAuthBaseUrl } from '../oidc';\nimport { removeNils } from '../util';\nimport { httpRequest } from '../http';\n\n\n/* eslint-disable camelcase */\nexport interface InteractParams {\n client_id: string;\n scope: string;\n redirect_uri: string;\n code_challenge: string;\n code_challenge_method: string;\n state: string;\n activation_token?: string;\n recovery_token?: string;\n client_secret?: string;\n max_age?: string | number;\n}\n/* eslint-enable camelcase */\n\nfunction getResponse(meta: IdxTransactionMeta): InteractResponse {\n return {\n meta,\n interactionHandle: meta.interactionHandle!,\n state: meta.state\n };\n}\n\n// Begin or resume a transaction. Returns an interaction handle\nexport async function interact (\n authClient: OktaAuthIdxInterface, \n options: InteractOptions = {}\n): Promise<InteractResponse> {\n options = removeNils(options);\n\n let meta = getSavedTransactionMeta(authClient, options);\n // If meta exists, it has been validated against all options\n\n if (meta?.interactionHandle) {\n return getResponse(meta); // Saved transaction, return meta\n }\n\n // Create new meta, respecting previous meta if it has been set and is not overridden\n meta = await createTransactionMeta(authClient, { ...meta, ...options });\n const baseUrl = getOAuthBaseUrl(authClient);\n let {\n clientId,\n redirectUri,\n state,\n scopes,\n withCredentials,\n codeChallenge,\n codeChallengeMethod,\n activationToken,\n recoveryToken,\n maxAge\n } = meta as IdxTransactionMeta;\n const clientSecret = options.clientSecret || authClient.options.clientSecret;\n withCredentials = withCredentials ?? true;\n\n /* eslint-disable camelcase */\n const url = `${baseUrl}/v1/interact`;\n const params = {\n client_id: clientId,\n scope: scopes!.join(' '),\n redirect_uri: redirectUri,\n code_challenge: codeChallenge,\n code_challenge_method: codeChallengeMethod,\n state,\n ...(activationToken && { activation_token: activationToken }),\n ...(recoveryToken && { recovery_token: recoveryToken }),\n // X-Device-Token header need to pair with `client_secret`\n // eslint-disable-next-line max-len\n // https://oktawiki.atlassian.net/wiki/spaces/eng/pages/2445902453/Support+Device+Binding+in+interact#Scenario-1%3A-Non-User-Agent-with-Confidential-Client-(top-priority)\n ...(clientSecret && { client_secret: clientSecret }),\n ...(maxAge && { max_age: maxAge })\n } as InteractParams;\n /* eslint-enable camelcase */\n\n const headers = {\n 'Content-Type': 'application/x-www-form-urlencoded',\n };\n\n const resp = await httpRequest(authClient, {\n method: 'POST',\n url,\n headers,\n withCredentials,\n args: params\n });\n const interactionHandle = resp.interaction_handle;\n\n const newMeta = {\n ...meta,\n interactionHandle,\n \n // Options which can be passed into interact() should be saved in the meta\n withCredentials,\n state,\n scopes,\n recoveryToken,\n activationToken\n };\n // Save transaction meta so it can be resumed\n saveTransactionMeta(authClient, newMeta);\n\n return getResponse(newMeta);\n}\n"],"file":"interact.js"}
1
+ {"version":3,"file":"interact.js","names":["getResponse","meta","interactionHandle","state","interact","authClient","options","baseUrl","clientId","redirectUri","scopes","withCredentials","codeChallenge","codeChallengeMethod","activationToken","recoveryToken","maxAge","clientSecret","url","params","client_id","scope","join","redirect_uri","code_challenge","code_challenge_method","activation_token","recovery_token","client_secret","max_age","headers","resp","method","args","interaction_handle","newMeta"],"sources":["../../../lib/idx/interact.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/* eslint complexity:[0,8] */\nimport { OktaAuthIdxInterface, IdxTransactionMeta, InteractOptions, InteractResponse } from '../types';\nimport { getSavedTransactionMeta, saveTransactionMeta, createTransactionMeta } from './transactionMeta';\nimport { getOAuthBaseUrl } from '../oidc';\nimport { removeNils } from '../util';\nimport { httpRequest } from '../http';\n\n\n/* eslint-disable camelcase */\nexport interface InteractParams {\n client_id: string;\n scope: string;\n redirect_uri: string;\n code_challenge: string;\n code_challenge_method: string;\n state: string;\n activation_token?: string;\n recovery_token?: string;\n client_secret?: string;\n max_age?: string | number;\n}\n/* eslint-enable camelcase */\n\nfunction getResponse(meta: IdxTransactionMeta): InteractResponse {\n return {\n meta,\n interactionHandle: meta.interactionHandle!,\n state: meta.state\n };\n}\n\n// Begin or resume a transaction. Returns an interaction handle\nexport async function interact (\n authClient: OktaAuthIdxInterface, \n options: InteractOptions = {}\n): Promise<InteractResponse> {\n options = removeNils(options);\n\n let meta = getSavedTransactionMeta(authClient, options);\n // If meta exists, it has been validated against all options\n\n if (meta?.interactionHandle) {\n return getResponse(meta); // Saved transaction, return meta\n }\n\n // Create new meta, respecting previous meta if it has been set and is not overridden\n meta = await createTransactionMeta(authClient, { ...meta, ...options });\n const baseUrl = getOAuthBaseUrl(authClient);\n let {\n clientId,\n redirectUri,\n state,\n scopes,\n withCredentials,\n codeChallenge,\n codeChallengeMethod,\n activationToken,\n recoveryToken,\n maxAge\n } = meta as IdxTransactionMeta;\n const clientSecret = options.clientSecret || authClient.options.clientSecret;\n withCredentials = withCredentials ?? true;\n\n /* eslint-disable camelcase */\n const url = `${baseUrl}/v1/interact`;\n const params = {\n client_id: clientId,\n scope: scopes!.join(' '),\n redirect_uri: redirectUri,\n code_challenge: codeChallenge,\n code_challenge_method: codeChallengeMethod,\n state,\n ...(activationToken && { activation_token: activationToken }),\n ...(recoveryToken && { recovery_token: recoveryToken }),\n // X-Device-Token header need to pair with `client_secret`\n // eslint-disable-next-line max-len\n // https://oktawiki.atlassian.net/wiki/spaces/eng/pages/2445902453/Support+Device+Binding+in+interact#Scenario-1%3A-Non-User-Agent-with-Confidential-Client-(top-priority)\n ...(clientSecret && { client_secret: clientSecret }),\n ...(maxAge && { max_age: maxAge })\n } as InteractParams;\n /* eslint-enable camelcase */\n\n const headers = {\n 'Content-Type': 'application/x-www-form-urlencoded',\n };\n\n const resp = await httpRequest(authClient, {\n method: 'POST',\n url,\n headers,\n withCredentials,\n args: params\n });\n const interactionHandle = resp.interaction_handle;\n\n const newMeta = {\n ...meta,\n interactionHandle,\n \n // Options which can be passed into interact() should be saved in the meta\n withCredentials,\n state,\n scopes,\n recoveryToken,\n activationToken\n };\n // Save transaction meta so it can be resumed\n saveTransactionMeta(authClient, newMeta);\n\n return getResponse(newMeta);\n}\n"],"mappings":";;;;AAcA;;AACA;;AACA;;AACA;;AAjBA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;;AAqBA;AAEA,SAASA,WAAT,CAAqBC,IAArB,EAAiE;EAC/D,OAAO;IACLA,IADK;IAELC,iBAAiB,EAAED,IAAI,CAACC,iBAFnB;IAGLC,KAAK,EAAEF,IAAI,CAACE;EAHP,CAAP;AAKD,C,CAED;;;AACO,eAAeC,QAAf,CACLC,UADK,EAELC,OAAwB,GAAG,EAFtB,EAGsB;EAAA;;EAC3BA,OAAO,GAAG,sBAAWA,OAAX,CAAV;EAEA,IAAIL,IAAI,GAAG,8CAAwBI,UAAxB,EAAoCC,OAApC,CAAX,CAH2B,CAI3B;;EAEA,aAAIL,IAAJ,kCAAI,MAAMC,iBAAV,EAA6B;IAC3B,OAAOF,WAAW,CAACC,IAAD,CAAlB,CAD2B,CACD;EAC3B,CAR0B,CAU3B;;;EACAA,IAAI,GAAG,MAAM,4CAAsBI,UAAtB,EAAkC,EAAE,GAAGJ,IAAL;IAAW,GAAGK;EAAd,CAAlC,CAAb;EACA,MAAMC,OAAO,GAAG,2BAAgBF,UAAhB,CAAhB;EACA,IAAI;IACFG,QADE;IAEFC,WAFE;IAGFN,KAHE;IAIFO,MAJE;IAKFC,eALE;IAMFC,aANE;IAOFC,mBAPE;IAQFC,eARE;IASFC,aATE;IAUFC;EAVE,IAWAf,IAXJ;EAYA,MAAMgB,YAAY,GAAGX,OAAO,CAACW,YAAR,IAAwBZ,UAAU,CAACC,OAAX,CAAmBW,YAAhE;EACAN,eAAe,uBAAGA,eAAH,+DAAsB,IAArC;EAEA;;EACA,MAAMO,GAAG,GAAI,GAAEX,OAAQ,cAAvB;EACA,MAAMY,MAAM,GAAG;IACbC,SAAS,EAAEZ,QADE;IAEba,KAAK,EAAEX,MAAM,CAAEY,IAAR,CAAa,GAAb,CAFM;IAGbC,YAAY,EAAEd,WAHD;IAIbe,cAAc,EAAEZ,aAJH;IAKba,qBAAqB,EAAEZ,mBALV;IAMbV,KANa;IAOb,IAAIW,eAAe,IAAI;MAAEY,gBAAgB,EAAEZ;IAApB,CAAvB,CAPa;IAQb,IAAIC,aAAa,IAAI;MAAEY,cAAc,EAAEZ;IAAlB,CAArB,CARa;IASb;IACA;IACA;IACA,IAAIE,YAAY,IAAI;MAAEW,aAAa,EAAEX;IAAjB,CAApB,CAZa;IAab,IAAID,MAAM,IAAI;MAAEa,OAAO,EAAEb;IAAX,CAAd;EAba,CAAf;EAeA;;EAEA,MAAMc,OAAO,GAAG;IACd,gBAAgB;EADF,CAAhB;EAIA,MAAMC,IAAI,GAAG,MAAM,uBAAY1B,UAAZ,EAAwB;IACzC2B,MAAM,EAAE,MADiC;IAEzCd,GAFyC;IAGzCY,OAHyC;IAIzCnB,eAJyC;IAKzCsB,IAAI,EAAEd;EALmC,CAAxB,CAAnB;EAOA,MAAMjB,iBAAiB,GAAG6B,IAAI,CAACG,kBAA/B;EAEA,MAAMC,OAAO,GAAG,EACd,GAAGlC,IADW;IAEdC,iBAFc;IAId;IACAS,eALc;IAMdR,KANc;IAOdO,MAPc;IAQdK,aARc;IASdD;EATc,CAAhB,CA5D2B,CAuE3B;;EACA,0CAAoBT,UAApB,EAAgC8B,OAAhC;EAEA,OAAOnC,WAAW,CAACmC,OAAD,CAAlB;AACD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/idx/introspect.ts"],"names":["introspect","authClient","options","rawIdxResponse","requestDidSucceed","savedIdxResponse","transactionManager","loadIdxResponse","version","IDX_API_VERSION","domain","interactionHandle","stateHandle","withCredentials","url","body","stateToken","headers","Accept","method","args","err","xhr","responseJSON"],"mappings":";;;;AAaA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AAnBA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAUO,eAAeA,UAAf,CACLC,UADK,EAELC,OAA0B,GAAG,EAFxB,EAGiB;AACtB,MAAIC,cAAJ;AACA,MAAIC,iBAAJ,CAFsB,CAItB;;AACA,QAAMC,gBAAgB,GAAGJ,UAAU,CAACK,kBAAX,CAA8BC,eAA9B,CAA8CL,OAA9C,CAAzB;;AACA,MAAIG,gBAAJ,EAAsB;AACpBF,IAAAA,cAAc,GAAGE,gBAAgB,CAACF,cAAlC;AACAC,IAAAA,iBAAiB,GAAGC,gBAAgB,CAACD,iBAArC;AACD,GATqB,CAWtB;;;AACA,MAAI,CAACD,cAAL,EAAqB;AAAA;;AACnB,UAAMK,OAAO,GAAGN,OAAO,CAACM,OAAR,IAAmBC,0BAAnC;AACA,UAAMC,MAAM,GAAG,0BAAeT,UAAf,CAAf;AACA,UAAM;AAAEU,MAAAA,iBAAF;AAAqBC,MAAAA;AAArB,QAAqCV,OAA3C;AACA,UAAMW,eAAe,4BAAGX,OAAO,CAACW,eAAX,yEAA8B,IAAnD;;AACA,QAAI;AACFT,MAAAA,iBAAiB,GAAG,IAApB;AACA,2CAAsBI,OAAtB;AACA,YAAMM,GAAG,GAAI,GAAEJ,MAAO,qBAAtB;AACA,YAAMK,IAAI,GAAGH,WAAW,GAAG;AAAEI,QAAAA,UAAU,EAAEJ;AAAd,OAAH,GAAiC;AAAED,QAAAA;AAAF,OAAzD;AACA,YAAMM,OAAO,GAAG;AACd,wBAAiB,sCAAqCT,OAAQ,EADhD;AACmD;AACjEU,QAAAA,MAAM,EAAG,sCAAqCV,OAAQ;AAFxC,OAAhB;AAIAL,MAAAA,cAAc,GAAG,MAAM,uBAAYF,UAAZ,EAAwB;AAC7CkB,QAAAA,MAAM,EAAE,MADqC;AAE7CL,QAAAA,GAF6C;AAG7CG,QAAAA,OAH6C;AAI7CJ,QAAAA,eAJ6C;AAK7CO,QAAAA,IAAI,EAAEL;AALuC,OAAxB,CAAvB;AAOD,KAhBD,CAgBE,OAAOM,GAAP,EAAY;AACZ,UAAI,4BAAeA,GAAf,KAAuBA,GAAG,CAACC,GAA3B,IAAkC,6BAAiBD,GAAG,CAACC,GAAJ,CAAQC,YAAzB,CAAtC,EAA8E;AAC5EpB,QAAAA,cAAc,GAAGkB,GAAG,CAACC,GAAJ,CAAQC,YAAzB;AACAnB,QAAAA,iBAAiB,GAAG,KAApB;AACD,OAHD,MAGO;AACL,cAAMiB,GAAN;AACD;AACF;AACF;;AAED,QAAM;AAAER,IAAAA;AAAF,MAAsBX,OAA5B;AACA,SAAO,4BAAaD,UAAb,EAAyBE,cAAzB,EAAyC;AAAEU,IAAAA;AAAF,GAAzC,EAA8DT,iBAA9D,CAAP;AACD","sourcesContent":["/* eslint-disable complexity */\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 { makeIdxState, validateVersionConfig } from './idxState';\nimport { IntrospectOptions, OktaAuthIdxInterface } from '../types';\nimport { IdxResponse, isRawIdxResponse } from './types/idx-js';\nimport { getOAuthDomain } from '../oidc';\nimport { IDX_API_VERSION } from '../constants';\nimport { httpRequest } from '../http';\nimport { isAuthApiError } from '../errors';\n\nexport async function introspect (\n authClient: OktaAuthIdxInterface, \n options: IntrospectOptions = {}\n): Promise<IdxResponse> {\n let rawIdxResponse;\n let requestDidSucceed;\n\n // try load from storage first\n const savedIdxResponse = authClient.transactionManager.loadIdxResponse(options);\n if (savedIdxResponse) {\n rawIdxResponse = savedIdxResponse.rawIdxResponse;\n requestDidSucceed = savedIdxResponse.requestDidSucceed;\n }\n\n // call idx.introspect if no existing idx response available in storage\n if (!rawIdxResponse) {\n const version = options.version || IDX_API_VERSION;\n const domain = getOAuthDomain(authClient);\n const { interactionHandle, stateHandle } = options;\n const withCredentials = options.withCredentials ?? true;\n try {\n requestDidSucceed = true;\n validateVersionConfig(version);\n const url = `${domain}/idp/idx/introspect`;\n const body = stateHandle ? { stateToken: stateHandle } : { interactionHandle };\n const headers = {\n 'Content-Type': `application/ion+json; okta-version=${version}`, // Server wants this version info\n Accept: `application/ion+json; okta-version=${version}`,\n };\n rawIdxResponse = await httpRequest(authClient, {\n method: 'POST',\n url,\n headers,\n withCredentials,\n args: body\n });\n } catch (err) {\n if (isAuthApiError(err) && err.xhr && isRawIdxResponse(err.xhr.responseJSON)) {\n rawIdxResponse = err.xhr.responseJSON;\n requestDidSucceed = false;\n } else {\n throw err;\n }\n }\n }\n\n const { withCredentials } = options;\n return makeIdxState(authClient, rawIdxResponse, { withCredentials }, requestDidSucceed);\n}\n"],"file":"introspect.js"}
1
+ {"version":3,"file":"introspect.js","names":["introspect","authClient","options","rawIdxResponse","requestDidSucceed","savedIdxResponse","transactionManager","loadIdxResponse","version","IDX_API_VERSION","domain","interactionHandle","stateHandle","withCredentials","url","body","stateToken","headers","Accept","method","args","err","xhr","responseJSON"],"sources":["../../../lib/idx/introspect.ts"],"sourcesContent":["/* eslint-disable complexity */\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 { makeIdxState, validateVersionConfig } from './idxState';\nimport { IntrospectOptions, OktaAuthIdxInterface } from '../types';\nimport { IdxResponse, isRawIdxResponse } from './types/idx-js';\nimport { getOAuthDomain } from '../oidc';\nimport { IDX_API_VERSION } from '../constants';\nimport { httpRequest } from '../http';\nimport { isAuthApiError } from '../errors';\n\nexport async function introspect (\n authClient: OktaAuthIdxInterface, \n options: IntrospectOptions = {}\n): Promise<IdxResponse> {\n let rawIdxResponse;\n let requestDidSucceed;\n\n // try load from storage first\n const savedIdxResponse = authClient.transactionManager.loadIdxResponse(options);\n if (savedIdxResponse) {\n rawIdxResponse = savedIdxResponse.rawIdxResponse;\n requestDidSucceed = savedIdxResponse.requestDidSucceed;\n }\n\n // call idx.introspect if no existing idx response available in storage\n if (!rawIdxResponse) {\n const version = options.version || IDX_API_VERSION;\n const domain = getOAuthDomain(authClient);\n const { interactionHandle, stateHandle } = options;\n const withCredentials = options.withCredentials ?? true;\n try {\n requestDidSucceed = true;\n validateVersionConfig(version);\n const url = `${domain}/idp/idx/introspect`;\n const body = stateHandle ? { stateToken: stateHandle } : { interactionHandle };\n const headers = {\n 'Content-Type': `application/ion+json; okta-version=${version}`, // Server wants this version info\n Accept: `application/ion+json; okta-version=${version}`,\n };\n rawIdxResponse = await httpRequest(authClient, {\n method: 'POST',\n url,\n headers,\n withCredentials,\n args: body\n });\n } catch (err) {\n if (isAuthApiError(err) && err.xhr && isRawIdxResponse(err.xhr.responseJSON)) {\n rawIdxResponse = err.xhr.responseJSON;\n requestDidSucceed = false;\n } else {\n throw err;\n }\n }\n }\n\n const { withCredentials } = options;\n return makeIdxState(authClient, rawIdxResponse, { withCredentials }, requestDidSucceed);\n}\n"],"mappings":";;;;AAaA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AAnBA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAUO,eAAeA,UAAf,CACLC,UADK,EAELC,OAA0B,GAAG,EAFxB,EAGiB;EACtB,IAAIC,cAAJ;EACA,IAAIC,iBAAJ,CAFsB,CAItB;;EACA,MAAMC,gBAAgB,GAAGJ,UAAU,CAACK,kBAAX,CAA8BC,eAA9B,CAA8CL,OAA9C,CAAzB;;EACA,IAAIG,gBAAJ,EAAsB;IACpBF,cAAc,GAAGE,gBAAgB,CAACF,cAAlC;IACAC,iBAAiB,GAAGC,gBAAgB,CAACD,iBAArC;EACD,CATqB,CAWtB;;;EACA,IAAI,CAACD,cAAL,EAAqB;IAAA;;IACnB,MAAMK,OAAO,GAAGN,OAAO,CAACM,OAAR,IAAmBC,0BAAnC;IACA,MAAMC,MAAM,GAAG,0BAAeT,UAAf,CAAf;IACA,MAAM;MAAEU,iBAAF;MAAqBC;IAArB,IAAqCV,OAA3C;IACA,MAAMW,eAAe,4BAAGX,OAAO,CAACW,eAAX,yEAA8B,IAAnD;;IACA,IAAI;MACFT,iBAAiB,GAAG,IAApB;MACA,qCAAsBI,OAAtB;MACA,MAAMM,GAAG,GAAI,GAAEJ,MAAO,qBAAtB;MACA,MAAMK,IAAI,GAAGH,WAAW,GAAG;QAAEI,UAAU,EAAEJ;MAAd,CAAH,GAAiC;QAAED;MAAF,CAAzD;MACA,MAAMM,OAAO,GAAG;QACd,gBAAiB,sCAAqCT,OAAQ,EADhD;QACmD;QACjEU,MAAM,EAAG,sCAAqCV,OAAQ;MAFxC,CAAhB;MAIAL,cAAc,GAAG,MAAM,uBAAYF,UAAZ,EAAwB;QAC7CkB,MAAM,EAAE,MADqC;QAE7CL,GAF6C;QAG7CG,OAH6C;QAI7CJ,eAJ6C;QAK7CO,IAAI,EAAEL;MALuC,CAAxB,CAAvB;IAOD,CAhBD,CAgBE,OAAOM,GAAP,EAAY;MACZ,IAAI,4BAAeA,GAAf,KAAuBA,GAAG,CAACC,GAA3B,IAAkC,6BAAiBD,GAAG,CAACC,GAAJ,CAAQC,YAAzB,CAAtC,EAA8E;QAC5EpB,cAAc,GAAGkB,GAAG,CAACC,GAAJ,CAAQC,YAAzB;QACAnB,iBAAiB,GAAG,KAApB;MACD,CAHD,MAGO;QACL,MAAMiB,GAAN;MACD;IACF;EACF;;EAED,MAAM;IAAER;EAAF,IAAsBX,OAA5B;EACA,OAAO,4BAAaD,UAAb,EAAyBE,cAAzB,EAAyC;IAAEU;EAAF,CAAzC,EAA8DT,iBAA9D,CAAP;AACD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/idx/poll.ts"],"names":["poll","authClient","options","transaction","startPolling","meta","availablePollingRemeditaions","remediations","remediation","length","refresh","resolve","reject","setTimeout","nextStep","err"],"mappings":";;;;;;;;;;;;;;AAYA;;AAOA;;AACA;;AApBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAYO,eAAeA,IAAf,CAAoBC,UAApB,EAAsDC,OAAuB,GAAG,EAAhF,EAA6G;AAAA;;AAClH,MAAIC,WAAW,GAAG,MAAM,sBAAQF,UAAR,EAAoB;AAC1CG,IAAAA,YAAY,EAAE;AAD4B,GAApB,CAAxB;AAIA,QAAMC,IAAI,GAAG,8CAAwBJ,UAAxB,CAAb;AACA,MAAIK,4BAA4B,GAAGD,IAAH,aAAGA,IAAH,6CAAGA,IAAI,CAAEE,YAAT,uDAAG,gEAAyBC,WAAW,IAAI,uBAAAA,WAAW,MAAX,CAAAA,WAAW,EAAU,MAAV,CAAnD,CAAnC;;AACA,MAAI,EAACF,4BAAD,aAACA,4BAAD,eAACA,4BAA4B,CAAEG,MAA/B,CAAJ,EAA2C;AACzC,oBAAK,iEAAL;AACD;;AAED,MAAI,wBAAiBP,OAAO,CAACQ,OAAzB,CAAJ,EAAuC;AACrC,WAAO,qBAAY,UAAUC,OAAV,EAAmBC,MAAnB,EAA2B;AAC5CC,MAAAA,UAAU,CAAC,kBAAkB;AAC3B,YAAI;AAAA;;AACF,gBAAMH,OAAO,4BAAGP,WAAW,CAACW,QAAf,oFAAG,sBAAsBd,IAAzB,2DAAG,uBAA4BU,OAA5C;;AACA,cAAIA,OAAJ,EAAa;AACXC,YAAAA,OAAO,CAACX,IAAI,CAACC,UAAD,EAAa;AACvBS,cAAAA;AADuB,aAAb,CAAL,CAAP;AAGD,WAJD,MAIO;AACLC,YAAAA,OAAO,CAACR,WAAD,CAAP;AACD;AACF,SATD,CASE,OAAOY,GAAP,EAAY;AACZH,UAAAA,MAAM,CAACG,GAAD,CAAN;AACD;AACF,OAbS,EAaPb,OAAO,CAACQ,OAbD,CAAV;AAcD,KAfM,CAAP;AAgBD;;AAED,SAAOP,WAAP;AACD","sourcesContent":["/*!\n * Copyright (c) 2021-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 { proceed } from './proceed';\n\nimport { \n IdxPollOptions,\n IdxTransaction,\n OktaAuthIdxInterface,\n} from '../types';\nimport { getSavedTransactionMeta } from './transactionMeta';\nimport { warn } from '../util';\n\nexport async function poll(authClient: OktaAuthIdxInterface, options: IdxPollOptions = {}): Promise<IdxTransaction> {\n let transaction = await proceed(authClient, {\n startPolling: true\n });\n\n const meta = getSavedTransactionMeta(authClient);\n let availablePollingRemeditaions = meta?.remediations?.find(remediation => remediation.includes('poll'));\n if (!availablePollingRemeditaions?.length) {\n warn('No polling remediations available at the current IDX flow stage');\n }\n\n if (Number.isInteger(options.refresh)) {\n return new Promise(function (resolve, reject) {\n setTimeout(async function () {\n try {\n const refresh = transaction.nextStep?.poll?.refresh;\n if (refresh) {\n resolve(poll(authClient, {\n refresh\n }));\n } else {\n resolve(transaction);\n }\n } catch (err) {\n reject(err);\n }\n }, options.refresh);\n });\n }\n\n return transaction;\n}\n"],"file":"poll.js"}
1
+ {"version":3,"file":"poll.js","names":["poll","authClient","options","transaction","startPolling","meta","availablePollingRemeditaions","remediations","remediation","length","refresh","resolve","reject","setTimeout","nextStep","err"],"sources":["../../../lib/idx/poll.ts"],"sourcesContent":["/*!\n * Copyright (c) 2021-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 { proceed } from './proceed';\n\nimport { \n IdxPollOptions,\n IdxTransaction,\n OktaAuthIdxInterface,\n} from '../types';\nimport { getSavedTransactionMeta } from './transactionMeta';\nimport { warn } from '../util';\n\nexport async function poll(authClient: OktaAuthIdxInterface, options: IdxPollOptions = {}): Promise<IdxTransaction> {\n let transaction = await proceed(authClient, {\n startPolling: true\n });\n\n const meta = getSavedTransactionMeta(authClient);\n let availablePollingRemeditaions = meta?.remediations?.find(remediation => remediation.includes('poll'));\n if (!availablePollingRemeditaions?.length) {\n warn('No polling remediations available at the current IDX flow stage');\n }\n\n if (Number.isInteger(options.refresh)) {\n return new Promise(function (resolve, reject) {\n setTimeout(async function () {\n try {\n const refresh = transaction.nextStep?.poll?.refresh;\n if (refresh) {\n resolve(poll(authClient, {\n refresh\n }));\n } else {\n resolve(transaction);\n }\n } catch (err) {\n reject(err);\n }\n }, options.refresh);\n });\n }\n\n return transaction;\n}\n"],"mappings":";;;;;;;;;;;;;;AAYA;;AAOA;;AACA;;AApBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAYO,eAAeA,IAAf,CAAoBC,UAApB,EAAsDC,OAAuB,GAAG,EAAhF,EAA6G;EAAA;;EAClH,IAAIC,WAAW,GAAG,MAAM,sBAAQF,UAAR,EAAoB;IAC1CG,YAAY,EAAE;EAD4B,CAApB,CAAxB;EAIA,MAAMC,IAAI,GAAG,8CAAwBJ,UAAxB,CAAb;EACA,IAAIK,4BAA4B,GAAGD,IAAH,aAAGA,IAAH,6CAAGA,IAAI,CAAEE,YAAT,uDAAG,gEAAyBC,WAAW,IAAI,uBAAAA,WAAW,MAAX,CAAAA,WAAW,EAAU,MAAV,CAAnD,CAAnC;;EACA,IAAI,EAACF,4BAAD,aAACA,4BAAD,eAACA,4BAA4B,CAAEG,MAA/B,CAAJ,EAA2C;IACzC,gBAAK,iEAAL;EACD;;EAED,IAAI,wBAAiBP,OAAO,CAACQ,OAAzB,CAAJ,EAAuC;IACrC,OAAO,qBAAY,UAAUC,OAAV,EAAmBC,MAAnB,EAA2B;MAC5CC,UAAU,CAAC,kBAAkB;QAC3B,IAAI;UAAA;;UACF,MAAMH,OAAO,4BAAGP,WAAW,CAACW,QAAf,oFAAG,sBAAsBd,IAAzB,2DAAG,uBAA4BU,OAA5C;;UACA,IAAIA,OAAJ,EAAa;YACXC,OAAO,CAACX,IAAI,CAACC,UAAD,EAAa;cACvBS;YADuB,CAAb,CAAL,CAAP;UAGD,CAJD,MAIO;YACLC,OAAO,CAACR,WAAD,CAAP;UACD;QACF,CATD,CASE,OAAOY,GAAP,EAAY;UACZH,MAAM,CAACG,GAAD,CAAN;QACD;MACF,CAbS,EAaPb,OAAO,CAACQ,OAbD,CAAV;IAcD,CAfM,CAAP;EAgBD;;EAED,OAAOP,WAAP;AACD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/idx/proceed.ts"],"names":["canProceed","authClient","options","meta","stateHandle","proceed","AuthSdkError","flow","state"],"mappings":";;;;;AAkBA;;AACA;;AACA;;AApBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAYO,SAASA,UAAT,CAAoBC,UAApB,EAAsDC,OAAuB,GAAG,EAAhF,EAA6F;AAClG,QAAMC,IAAI,GAAG,8CAAwBF,UAAxB,EAAoCC,OAApC,CAAb;AACA,SAAO,CAAC,EAAEC,IAAI,IAAID,OAAO,CAACE,WAAlB,CAAR;AACD;;AAEM,eAAeC,OAAf,CACLJ,UADK,EAELC,OAAuB,GAAG,EAFrB,EAGoB;AAEzB,MAAI,CAACF,UAAU,CAACC,UAAD,EAAaC,OAAb,CAAf,EAAsC;AACpC,UAAM,IAAII,oBAAJ,CAAiB,0DAAjB,CAAN;AACD;;AAED,MAAI;AAAEC,IAAAA,IAAF;AAAQC,IAAAA;AAAR,MAAkBN,OAAtB;;AACA,MAAI,CAACK,IAAL,EAAW;AACT,UAAMJ,IAAI,GAAG,8CAAwBF,UAAxB,EAAoC;AAAEO,MAAAA;AAAF,KAApC,CAAb;AACAD,IAAAA,IAAI,GAAGJ,IAAH,aAAGA,IAAH,uBAAGA,IAAI,CAAEI,IAAb;AACD;;AAED,SAAO,cAAIN,UAAJ,EAAgB,EACrB,GAAGC,OADkB;AAErBK,IAAAA;AAFqB,GAAhB,CAAP;AAID","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 { \n OktaAuthIdxInterface,\n IdxTransaction,\n ProceedOptions,\n} from '../types';\nimport { run } from './run';\nimport { getSavedTransactionMeta } from './transactionMeta';\nimport { AuthSdkError } from '../errors';\n\nexport function canProceed(authClient: OktaAuthIdxInterface, options: ProceedOptions = {}): boolean {\n const meta = getSavedTransactionMeta(authClient, options);\n return !!(meta || options.stateHandle);\n}\n\nexport async function proceed(\n authClient: OktaAuthIdxInterface,\n options: ProceedOptions = {}\n): Promise<IdxTransaction> {\n\n if (!canProceed(authClient, options)) {\n throw new AuthSdkError('Unable to proceed: saved transaction could not be loaded');\n }\n\n let { flow, state } = options;\n if (!flow) {\n const meta = getSavedTransactionMeta(authClient, { state });\n flow = meta?.flow;\n }\n\n return run(authClient, { \n ...options, \n flow\n });\n}\n"],"file":"proceed.js"}
1
+ {"version":3,"file":"proceed.js","names":["canProceed","authClient","options","meta","stateHandle","proceed","AuthSdkError","flow","state"],"sources":["../../../lib/idx/proceed.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 { \n OktaAuthIdxInterface,\n IdxTransaction,\n ProceedOptions,\n} from '../types';\nimport { run } from './run';\nimport { getSavedTransactionMeta } from './transactionMeta';\nimport { AuthSdkError } from '../errors';\n\nexport function canProceed(authClient: OktaAuthIdxInterface, options: ProceedOptions = {}): boolean {\n const meta = getSavedTransactionMeta(authClient, options);\n return !!(meta || options.stateHandle);\n}\n\nexport async function proceed(\n authClient: OktaAuthIdxInterface,\n options: ProceedOptions = {}\n): Promise<IdxTransaction> {\n\n if (!canProceed(authClient, options)) {\n throw new AuthSdkError('Unable to proceed: saved transaction could not be loaded');\n }\n\n let { flow, state } = options;\n if (!flow) {\n const meta = getSavedTransactionMeta(authClient, { state });\n flow = meta?.flow;\n }\n\n return run(authClient, { \n ...options, \n flow\n });\n}\n"],"mappings":";;;;;AAkBA;;AACA;;AACA;;AApBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAYO,SAASA,UAAT,CAAoBC,UAApB,EAAsDC,OAAuB,GAAG,EAAhF,EAA6F;EAClG,MAAMC,IAAI,GAAG,8CAAwBF,UAAxB,EAAoCC,OAApC,CAAb;EACA,OAAO,CAAC,EAAEC,IAAI,IAAID,OAAO,CAACE,WAAlB,CAAR;AACD;;AAEM,eAAeC,OAAf,CACLJ,UADK,EAELC,OAAuB,GAAG,EAFrB,EAGoB;EAEzB,IAAI,CAACF,UAAU,CAACC,UAAD,EAAaC,OAAb,CAAf,EAAsC;IACpC,MAAM,IAAII,oBAAJ,CAAiB,0DAAjB,CAAN;EACD;;EAED,IAAI;IAAEC,IAAF;IAAQC;EAAR,IAAkBN,OAAtB;;EACA,IAAI,CAACK,IAAL,EAAW;IACT,MAAMJ,IAAI,GAAG,8CAAwBF,UAAxB,EAAoC;MAAEO;IAAF,CAApC,CAAb;IACAD,IAAI,GAAGJ,IAAH,aAAGA,IAAH,uBAAGA,IAAI,CAAEI,IAAb;EACD;;EAED,OAAO,cAAIN,UAAJ,EAAgB,EACrB,GAAGC,OADkB;IAErBK;EAFqB,CAAhB,CAAP;AAID"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/idx/recoverPassword.ts"],"names":["recoverPassword","authClient","options","flowSpec"],"mappings":";;;;AAaA;;AACA;;AAdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAWO,eAAeA,eAAf,CACLC,UADK,EAC6BC,OAAgC,GAAG,EADhE,EAEoB;AACzB,QAAMC,QAAQ,GAAG,gCAAqBF,UAArB,EAAiC,iBAAjC,CAAjB;AACA,SAAO,cACLA,UADK,EAEL,EACE,GAAGC,OADL;AAEE,OAAGC;AAFL,GAFK,CAAP;AAOD","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 { getFlowSpecification } from './flow';\nimport { \n OktaAuthIdxInterface, \n PasswordRecoveryOptions, \n IdxTransaction,\n} from '../types';\n\nexport async function recoverPassword(\n authClient: OktaAuthIdxInterface, options: PasswordRecoveryOptions = {}\n): Promise<IdxTransaction> {\n const flowSpec = getFlowSpecification(authClient, 'recoverPassword');\n return run(\n authClient, \n { \n ...options,\n ...flowSpec,\n }\n );\n}\n"],"file":"recoverPassword.js"}
1
+ {"version":3,"file":"recoverPassword.js","names":["recoverPassword","authClient","options","flowSpec"],"sources":["../../../lib/idx/recoverPassword.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 { getFlowSpecification } from './flow';\nimport { \n OktaAuthIdxInterface, \n PasswordRecoveryOptions, \n IdxTransaction,\n} from '../types';\n\nexport async function recoverPassword(\n authClient: OktaAuthIdxInterface, options: PasswordRecoveryOptions = {}\n): Promise<IdxTransaction> {\n const flowSpec = getFlowSpecification(authClient, 'recoverPassword');\n return run(\n authClient, \n { \n ...options,\n ...flowSpec,\n }\n );\n}\n"],"mappings":";;;;AAaA;;AACA;;AAdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAWO,eAAeA,eAAf,CACLC,UADK,EAC6BC,OAAgC,GAAG,EADhE,EAEoB;EACzB,MAAMC,QAAQ,GAAG,gCAAqBF,UAArB,EAAiC,iBAAjC,CAAjB;EACA,OAAO,cACLA,UADK,EAEL,EACE,GAAGC,OADL;IAEE,GAAGC;EAFL,CAFK,CAAP;AAOD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/idx/register.ts"],"names":["register","authClient","options","enabledFeatures","availableSteps","flow","autoRemediate","activationToken","IdxFeature","REGISTRATION","error","AuthSdkError","some","name"],"mappings":";;;;;;;;AAaA;;AACA;;AACA;;AACA;;AACA;;AAjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAcO,eAAeA,QAAf,CACLC,UADK,EAC6BC,OAA4B,GAAG,EAD5D,EAEoB;AAEzB;AACA,MAAI,CAAC,gDAA0BD,UAA1B,CAAL,EAA4C;AAC1C,UAAM;AAAEE,MAAAA,eAAF;AAAmBC,MAAAA;AAAnB,QAAsC,MAAM,wCAAiBH,UAAjB,EAA6B,EAC7E,GAAGC,OAD0E;AAE7EG,MAAAA,IAAI,EAAE,UAFuE;AAG7EC,MAAAA,aAAa,EAAE;AAH8D,KAA7B,CAAlD;;AAKA,QAAI,CAACJ,OAAO,CAACK,eAAT,IAA4BJ,eAA5B,IAA+C,CAAC,uBAAAA,eAAe,MAAf,CAAAA,eAAe,EAAUK,kBAAWC,YAArB,CAAnE,EAAuG;AACrG,YAAMC,KAAK,GAAG,IAAIC,oBAAJ,CAAiB,wEAAjB,CAAd;AACA,YAAMD,KAAN,CAFqG,CAGvG;AACC;;AACD,QAAIR,OAAO,CAACK,eAAR,IAA2BH,cAA3B,aAA2BA,cAA3B,eAA2BA,cAAc,CAAEQ,IAAhB,CAAqB,CAAC;AAAEC,MAAAA;AAAF,KAAD,KAAcA,IAAI,KAAK,UAA5C,CAA/B,EAAwF;AACtF,YAAMH,KAAK,GAAG,IAAIC,oBAAJ,CAAiB,2EAAjB,CAAd;AACA,YAAMD,KAAN,CAFsF,CAGxF;AACC;AACF;;AAED,SAAO,cAAIT,UAAJ,EAAgB,EACrB,GAAGC,OADkB;AAErBG,IAAAA,IAAI,EAAE;AAFe,GAAhB,CAAP;AAID","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 { hasSavedInteractionHandle } from './transactionMeta';\nimport { startTransaction } from './startTransaction';\nimport { AuthSdkError } from '../errors';\nimport { \n RegistrationOptions, \n IdxTransaction, \n OktaAuthIdxInterface, \n IdxFeature,\n} from '../types';\n\nexport async function register(\n authClient: OktaAuthIdxInterface, options: RegistrationOptions = {}\n): Promise<IdxTransaction> {\n\n // Only check at the beginning of the transaction\n if (!hasSavedInteractionHandle(authClient)) {\n const { enabledFeatures, availableSteps } = await startTransaction(authClient, {\n ...options,\n flow: 'register',\n autoRemediate: false\n });\n if (!options.activationToken && enabledFeatures && !enabledFeatures.includes(IdxFeature.REGISTRATION)) {\n const error = new AuthSdkError('Registration is not supported based on your current org configuration.');\n throw error;\n // return { status: IdxStatus.FAILURE, error } as unknown as IdxTransaction; // TODO: wny not just throw the error?\n }\n if (options.activationToken && availableSteps?.some(({ name }) => name === 'identify')) {\n const error = new AuthSdkError('activationToken is not supported based on your current org configuration.');\n throw error;\n // return { status: IdxStatus.FAILURE, error } as unknown as IdxTransaction; // TODO: wny not just throw the error?\n }\n }\n\n return run(authClient, {\n ...options,\n flow: 'register'\n });\n}\n"],"file":"register.js"}
1
+ {"version":3,"file":"register.js","names":["register","authClient","options","enabledFeatures","availableSteps","flow","autoRemediate","activationToken","IdxFeature","REGISTRATION","error","AuthSdkError","some","name"],"sources":["../../../lib/idx/register.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 { hasSavedInteractionHandle } from './transactionMeta';\nimport { startTransaction } from './startTransaction';\nimport { AuthSdkError } from '../errors';\nimport { \n RegistrationOptions, \n IdxTransaction, \n OktaAuthIdxInterface, \n IdxFeature,\n} from '../types';\n\nexport async function register(\n authClient: OktaAuthIdxInterface, options: RegistrationOptions = {}\n): Promise<IdxTransaction> {\n\n // Only check at the beginning of the transaction\n if (!hasSavedInteractionHandle(authClient)) {\n const { enabledFeatures, availableSteps } = await startTransaction(authClient, {\n ...options,\n flow: 'register',\n autoRemediate: false\n });\n if (!options.activationToken && enabledFeatures && !enabledFeatures.includes(IdxFeature.REGISTRATION)) {\n const error = new AuthSdkError('Registration is not supported based on your current org configuration.');\n throw error;\n // return { status: IdxStatus.FAILURE, error } as unknown as IdxTransaction; // TODO: wny not just throw the error?\n }\n if (options.activationToken && availableSteps?.some(({ name }) => name === 'identify')) {\n const error = new AuthSdkError('activationToken is not supported based on your current org configuration.');\n throw error;\n // return { status: IdxStatus.FAILURE, error } as unknown as IdxTransaction; // TODO: wny not just throw the error?\n }\n }\n\n return run(authClient, {\n ...options,\n flow: 'register'\n });\n}\n"],"mappings":";;;;;;;;AAaA;;AACA;;AACA;;AACA;;AACA;;AAjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAcO,eAAeA,QAAf,CACLC,UADK,EAC6BC,OAA4B,GAAG,EAD5D,EAEoB;EAEzB;EACA,IAAI,CAAC,gDAA0BD,UAA1B,CAAL,EAA4C;IAC1C,MAAM;MAAEE,eAAF;MAAmBC;IAAnB,IAAsC,MAAM,wCAAiBH,UAAjB,EAA6B,EAC7E,GAAGC,OAD0E;MAE7EG,IAAI,EAAE,UAFuE;MAG7EC,aAAa,EAAE;IAH8D,CAA7B,CAAlD;;IAKA,IAAI,CAACJ,OAAO,CAACK,eAAT,IAA4BJ,eAA5B,IAA+C,CAAC,uBAAAA,eAAe,MAAf,CAAAA,eAAe,EAAUK,kBAAWC,YAArB,CAAnE,EAAuG;MACrG,MAAMC,KAAK,GAAG,IAAIC,oBAAJ,CAAiB,wEAAjB,CAAd;MACA,MAAMD,KAAN,CAFqG,CAGvG;IACC;;IACD,IAAIR,OAAO,CAACK,eAAR,IAA2BH,cAA3B,aAA2BA,cAA3B,eAA2BA,cAAc,CAAEQ,IAAhB,CAAqB,CAAC;MAAEC;IAAF,CAAD,KAAcA,IAAI,KAAK,UAA5C,CAA/B,EAAwF;MACtF,MAAMH,KAAK,GAAG,IAAIC,oBAAJ,CAAiB,2EAAjB,CAAd;MACA,MAAMD,KAAN,CAFsF,CAGxF;IACC;EACF;;EAED,OAAO,cAAIT,UAAJ,EAAgB,EACrB,GAAGC,OADkB;IAErBG,IAAI,EAAE;EAFe,CAAhB,CAAP;AAID"}
@@ -101,7 +101,7 @@ async function remediate(authClient, idxResponse, values, options) {
101
101
  requestDidSucceed: true
102
102
  };
103
103
  } catch (e) {
104
- return (0, _util.handleIdxError)(authClient, e, remediator);
104
+ return (0, _util.handleIdxError)(authClient, e, options);
105
105
  }
106
106
 
107
107
  if (action === 'cancel') {
@@ -126,7 +126,7 @@ async function remediate(authClient, idxResponse, values, options) {
126
126
  requestDidSucceed: true
127
127
  };
128
128
  } catch (e) {
129
- return (0, _util.handleIdxError)(authClient, e, remediator);
129
+ return (0, _util.handleIdxError)(authClient, e, options);
130
130
  }
131
131
 
132
132
  return remediate(authClient, idxResponse, values, optionsWithoutExecutedAction); // recursive call
@@ -136,13 +136,11 @@ async function remediate(authClient, idxResponse, values, options) {
136
136
 
137
137
 
138
138
  const terminal = (0, _util.isTerminalResponse)(idxResponse);
139
- const messages = (0, _util.getMessagesFromResponse)(idxResponse);
140
139
 
141
140
  if (terminal) {
142
141
  return {
143
142
  idxResponse,
144
- terminal,
145
- messages
143
+ terminal
146
144
  };
147
145
  }
148
146
 
@@ -159,7 +157,7 @@ async function remediate(authClient, idxResponse, values, options) {
159
157
  idxResponse
160
158
  };
161
159
  } catch (e) {
162
- return (0, _util.handleIdxError)(authClient, e);
160
+ return (0, _util.handleIdxError)(authClient, e, options);
163
161
  }
164
162
  }
165
163
 
@@ -180,8 +178,7 @@ async function remediate(authClient, idxResponse, values, options) {
180
178
  const nextStep = (0, _util.getNextStep)(authClient, remediator, idxResponse);
181
179
  return {
182
180
  idxResponse,
183
- nextStep,
184
- messages: messages.length ? messages : undefined
181
+ nextStep
185
182
  };
186
183
  }
187
184
 
@@ -208,14 +205,13 @@ async function remediate(authClient, idxResponse, values, options) {
208
205
  const nextStep = (0, _util.getNextStep)(authClient, gr, idxResponse);
209
206
  return {
210
207
  idxResponse,
211
- nextStep,
212
- messages: messages.length ? messages : undefined
208
+ nextStep
213
209
  };
214
210
  }
215
211
 
216
212
  return remediate(authClient, idxResponse, values, options); // recursive call
217
213
  } catch (e) {
218
- return (0, _util.handleIdxError)(authClient, e, remediator);
214
+ return (0, _util.handleIdxError)(authClient, e, options);
219
215
  }
220
216
  }
221
217
  //# sourceMappingURL=remediate.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../lib/idx/remediate.ts"],"names":["getActionFromValues","values","idxResponse","actions","action","resend","removeActionFromValues","undefined","removeActionFromOptions","options","actionName","entry","name","remediate","authClient","neededToProceed","interactionCode","flow","remediator","actionFromValues","actionFromOptions","params","valuesWithoutExecutedAction","optionsWithoutExecutedAction","requestDidSucceed","e","canceled","remediationAction","proceed","terminal","messages","step","AuthSdkError","acc","curr","canRemediate","nextStep","length","getName","data","getData","getValuesAfterProceed","useGenericRemediator","gr"],"mappings":"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","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\n/* eslint-disable max-statements, max-depth, complexity */\nimport { OktaAuthIdxInterface } from '../types';\nimport { AuthSdkError } from '../errors';\nimport { RemediationValues } from './remediators';\nimport { RemediateOptions, RemediationResponse } from './types';\nimport { \n IdxResponse,\n IdxActionParams, \n} from './types/idx-js';\nimport {\n getMessagesFromResponse,\n isTerminalResponse,\n filterValuesForRemediation,\n getRemediator,\n getNextStep,\n handleIdxError\n} from './util';\n\nexport interface RemediateActionWithOptionalParams {\n name: string;\n params?: IdxActionParams;\n}\n\nexport type RemediateAction = string | RemediateActionWithOptionalParams;\n\n\nfunction getActionFromValues(values: RemediationValues, idxResponse: IdxResponse): string | undefined {\n // Currently support resend actions only\n return Object.keys(idxResponse.actions).find(action => !!values.resend && action.includes('-resend'));\n}\n\nfunction removeActionFromValues(values: RemediationValues): RemediationValues {\n // Currently support resend actions only\n return {\n ...values,\n resend: undefined\n };\n}\n\nfunction removeActionFromOptions(options: RemediateOptions, actionName: string): RemediateOptions {\n let actions = options.actions || [];\n actions = actions.filter(entry => {\n if (typeof entry === 'string') {\n return entry !== actionName;\n }\n return entry.name !== actionName;\n });\n\n return { ...options, actions };\n}\n\n// This function is called recursively until it reaches success or cannot be remediated\nexport async function remediate(\n authClient: OktaAuthIdxInterface,\n idxResponse: IdxResponse,\n values: RemediationValues,\n options: RemediateOptions\n): Promise<RemediationResponse> {\n let { neededToProceed, interactionCode } = idxResponse;\n const { flow } = options;\n\n // If the response contains an interaction code, there is no need to remediate\n if (interactionCode) {\n return { idxResponse };\n }\n\n const remediator = getRemediator(neededToProceed, values, options);\n\n // Try actions in idxResponse first\n const actionFromValues = getActionFromValues(values, idxResponse);\n const actionFromOptions = options.actions || [];\n const actions = [\n ...actionFromOptions,\n ...(actionFromValues && [actionFromValues] || []),\n ];\n if (actions) {\n for (let action of actions) {\n // Action can either be specified as a string, or as an object with name and optional params\n let params: IdxActionParams = {};\n if (typeof action !== 'string') {\n params = action.params || {};\n action = action.name;\n }\n let valuesWithoutExecutedAction = removeActionFromValues(values);\n let optionsWithoutExecutedAction = removeActionFromOptions(options, action);\n\n if (typeof idxResponse.actions[action] === 'function') {\n try {\n idxResponse = await idxResponse.actions[action](params);\n idxResponse = { ...idxResponse, requestDidSucceed: true };\n } catch (e) {\n return handleIdxError(authClient, e, remediator);\n }\n if (action === 'cancel') {\n return { idxResponse, canceled: true };\n }\n return remediate(\n authClient, \n idxResponse, \n valuesWithoutExecutedAction, \n optionsWithoutExecutedAction\n ); // recursive call\n }\n\n // search for action in remediation list\n const remediationAction = neededToProceed.find(({ name }) => name === action);\n if (remediationAction) {\n try {\n idxResponse = await idxResponse.proceed(action, params);\n idxResponse = { ...idxResponse, requestDidSucceed: true };\n }\n catch (e) {\n return handleIdxError(authClient, e, remediator);\n }\n\n return remediate(authClient, idxResponse, values, optionsWithoutExecutedAction); // recursive call\n }\n }\n }\n\n // Do not attempt to remediate if response is in terminal state\n const terminal = isTerminalResponse(idxResponse);\n const messages = getMessagesFromResponse(idxResponse);\n if (terminal) {\n return { idxResponse, terminal, messages };\n }\n\n if (!remediator) {\n if (options.step) {\n values = filterValuesForRemediation(idxResponse, options.step, values); // include only requested values\n try {\n idxResponse = await idxResponse.proceed(options.step, values);\n idxResponse = { ...idxResponse, requestDidSucceed: true };\n return { idxResponse };\n } catch(e) {\n return handleIdxError(authClient, e);\n }\n }\n if (flow === 'default') {\n return { idxResponse };\n }\n throw new AuthSdkError(`\n No remediation can match current flow, check policy settings in your org.\n Remediations: [${neededToProceed.reduce((acc, curr) => acc ? acc + ' ,' + curr.name : curr.name, '')}]\n `);\n }\n\n // Return next step to the caller\n if (!remediator.canRemediate()) {\n const nextStep = getNextStep(authClient, remediator, idxResponse);\n return {\n idxResponse,\n nextStep,\n messages: messages.length ? messages: undefined\n };\n }\n\n const name = remediator.getName();\n const data = remediator.getData();\n try {\n idxResponse = await idxResponse.proceed(name, data);\n idxResponse = { ...idxResponse, requestDidSucceed: true };\n // We may want to trim the values bag for the next remediation\n // Let the remediator decide what the values should be (default to current values)\n values = remediator.getValuesAfterProceed();\n options = { ...options, step: undefined }; // do not re-use the step\n\n // generic remediator should not auto proceed in pending status\n // return nextStep directly\n if (options.useGenericRemediator && !idxResponse.interactionCode && !isTerminalResponse(idxResponse)) {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const gr = getRemediator(idxResponse.neededToProceed, values, options)!;\n const nextStep = getNextStep(authClient, gr, idxResponse);\n return {\n idxResponse,\n nextStep,\n messages: messages.length ? messages: undefined\n };\n }\n \n return remediate(authClient, idxResponse, values, options); // recursive call\n } catch (e) {\n return handleIdxError(authClient, e, remediator);\n }\n}\n"],"file":"remediate.js"}
1
+ {"version":3,"file":"remediate.js","names":["getActionFromValues","values","idxResponse","actions","action","resend","removeActionFromValues","undefined","removeActionFromOptions","options","actionName","entry","name","remediate","authClient","neededToProceed","interactionCode","flow","remediator","actionFromValues","actionFromOptions","params","valuesWithoutExecutedAction","optionsWithoutExecutedAction","requestDidSucceed","e","canceled","remediationAction","proceed","terminal","step","AuthSdkError","acc","curr","canRemediate","nextStep","getName","data","getData","getValuesAfterProceed","useGenericRemediator","gr"],"sources":["../../../lib/idx/remediate.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\n/* eslint-disable max-statements, max-depth, complexity */\nimport { OktaAuthIdxInterface } from '../types';\nimport { AuthSdkError } from '../errors';\nimport { RemediationValues } from './remediators';\nimport { RemediateOptions, RemediationResponse } from './types';\nimport { \n IdxResponse,\n IdxActionParams, \n} from './types/idx-js';\nimport {\n isTerminalResponse,\n filterValuesForRemediation,\n getRemediator,\n getNextStep,\n handleIdxError\n} from './util';\n\nexport interface RemediateActionWithOptionalParams {\n name: string;\n params?: IdxActionParams;\n}\n\nexport type RemediateAction = string | RemediateActionWithOptionalParams;\n\n\nfunction getActionFromValues(values: RemediationValues, idxResponse: IdxResponse): string | undefined {\n // Currently support resend actions only\n return Object.keys(idxResponse.actions).find(action => !!values.resend && action.includes('-resend'));\n}\n\nfunction removeActionFromValues(values: RemediationValues): RemediationValues {\n // Currently support resend actions only\n return {\n ...values,\n resend: undefined\n };\n}\n\nfunction removeActionFromOptions(options: RemediateOptions, actionName: string): RemediateOptions {\n let actions = options.actions || [];\n actions = actions.filter(entry => {\n if (typeof entry === 'string') {\n return entry !== actionName;\n }\n return entry.name !== actionName;\n });\n\n return { ...options, actions };\n}\n\n// This function is called recursively until it reaches success or cannot be remediated\nexport async function remediate(\n authClient: OktaAuthIdxInterface,\n idxResponse: IdxResponse,\n values: RemediationValues,\n options: RemediateOptions\n): Promise<RemediationResponse> {\n let { neededToProceed, interactionCode } = idxResponse;\n const { flow } = options;\n\n // If the response contains an interaction code, there is no need to remediate\n if (interactionCode) {\n return { idxResponse };\n }\n\n const remediator = getRemediator(neededToProceed, values, options);\n\n // Try actions in idxResponse first\n const actionFromValues = getActionFromValues(values, idxResponse);\n const actionFromOptions = options.actions || [];\n const actions = [\n ...actionFromOptions,\n ...(actionFromValues && [actionFromValues] || []),\n ];\n if (actions) {\n for (let action of actions) {\n // Action can either be specified as a string, or as an object with name and optional params\n let params: IdxActionParams = {};\n if (typeof action !== 'string') {\n params = action.params || {};\n action = action.name;\n }\n let valuesWithoutExecutedAction = removeActionFromValues(values);\n let optionsWithoutExecutedAction = removeActionFromOptions(options, action);\n\n if (typeof idxResponse.actions[action] === 'function') {\n try {\n idxResponse = await idxResponse.actions[action](params);\n idxResponse = { ...idxResponse, requestDidSucceed: true };\n } catch (e) {\n return handleIdxError(authClient, e, options);\n }\n if (action === 'cancel') {\n return { idxResponse, canceled: true };\n }\n return remediate(\n authClient, \n idxResponse, \n valuesWithoutExecutedAction, \n optionsWithoutExecutedAction\n ); // recursive call\n }\n\n // search for action in remediation list\n const remediationAction = neededToProceed.find(({ name }) => name === action);\n if (remediationAction) {\n try {\n idxResponse = await idxResponse.proceed(action, params);\n idxResponse = { ...idxResponse, requestDidSucceed: true };\n }\n catch (e) {\n return handleIdxError(authClient, e, options);\n }\n\n return remediate(authClient, idxResponse, values, optionsWithoutExecutedAction); // recursive call\n }\n }\n }\n\n // Do not attempt to remediate if response is in terminal state\n const terminal = isTerminalResponse(idxResponse);\n if (terminal) {\n return { idxResponse, terminal };\n }\n\n if (!remediator) {\n if (options.step) {\n values = filterValuesForRemediation(idxResponse, options.step, values); // include only requested values\n try {\n idxResponse = await idxResponse.proceed(options.step, values);\n idxResponse = { ...idxResponse, requestDidSucceed: true };\n return { idxResponse };\n } catch(e) {\n return handleIdxError(authClient, e, options);\n }\n }\n if (flow === 'default') {\n return { idxResponse };\n }\n throw new AuthSdkError(`\n No remediation can match current flow, check policy settings in your org.\n Remediations: [${neededToProceed.reduce((acc, curr) => acc ? acc + ' ,' + curr.name : curr.name, '')}]\n `);\n }\n\n // Return next step to the caller\n if (!remediator.canRemediate()) {\n const nextStep = getNextStep(authClient, remediator, idxResponse);\n return {\n idxResponse,\n nextStep,\n };\n }\n\n const name = remediator.getName();\n const data = remediator.getData();\n try {\n idxResponse = await idxResponse.proceed(name, data);\n idxResponse = { ...idxResponse, requestDidSucceed: true };\n // We may want to trim the values bag for the next remediation\n // Let the remediator decide what the values should be (default to current values)\n values = remediator.getValuesAfterProceed();\n options = { ...options, step: undefined }; // do not re-use the step\n\n // generic remediator should not auto proceed in pending status\n // return nextStep directly\n if (options.useGenericRemediator && !idxResponse.interactionCode && !isTerminalResponse(idxResponse)) {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const gr = getRemediator(idxResponse.neededToProceed, values, options)!;\n const nextStep = getNextStep(authClient, gr, idxResponse);\n return {\n idxResponse,\n nextStep,\n };\n }\n \n return remediate(authClient, idxResponse, values, options); // recursive call\n } catch (e) {\n return handleIdxError(authClient, e, options);\n }\n}\n"],"mappings":"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"}