@okta/okta-auth-js 7.0.1 → 7.1.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 (568) hide show
  1. package/README.md +2 -0
  2. package/cjs/authn/AuthnTransactionImpl.js +6 -8
  3. package/cjs/authn/AuthnTransactionImpl.js.map +1 -1
  4. package/cjs/authn/api.js +3 -18
  5. package/cjs/authn/api.js.map +1 -1
  6. package/cjs/authn/factory.js +1 -7
  7. package/cjs/authn/factory.js.map +1 -1
  8. package/cjs/authn/index.js +0 -5
  9. package/cjs/authn/index.js.map +1 -1
  10. package/cjs/authn/mixin.js +14 -22
  11. package/cjs/authn/mixin.js.map +1 -1
  12. package/cjs/authn/util/flattenEmbedded.js +5 -12
  13. package/cjs/authn/util/flattenEmbedded.js.map +1 -1
  14. package/cjs/authn/util/link2fn.js +0 -22
  15. package/cjs/authn/util/link2fn.js.map +1 -1
  16. package/cjs/authn/util/links2fns.js +0 -12
  17. package/cjs/authn/util/links2fns.js.map +1 -1
  18. package/cjs/authn/util/poll.js +9 -27
  19. package/cjs/authn/util/poll.js.map +1 -1
  20. package/cjs/authn/util/stateToken.js +3 -4
  21. package/cjs/authn/util/stateToken.js.map +1 -1
  22. package/cjs/base/factory.js +6 -14
  23. package/cjs/base/factory.js.map +1 -1
  24. package/cjs/base/index.js +0 -5
  25. package/cjs/base/index.js.map +1 -1
  26. package/cjs/base/options.js +1 -2
  27. package/cjs/base/options.js.map +1 -1
  28. package/cjs/browser/browserStorage.js +15 -43
  29. package/cjs/browser/browserStorage.js.map +1 -1
  30. package/cjs/browser/fingerprint.js +3 -15
  31. package/cjs/browser/fingerprint.js.map +1 -1
  32. package/cjs/clock.js +5 -7
  33. package/cjs/clock.js.map +1 -1
  34. package/cjs/constants.js +4 -3
  35. package/cjs/constants.js.map +1 -1
  36. package/cjs/core/AuthStateManager.js +24 -48
  37. package/cjs/core/AuthStateManager.js.map +1 -1
  38. package/cjs/core/ServiceManager/browser.js +13 -33
  39. package/cjs/core/ServiceManager/browser.js.map +1 -1
  40. package/cjs/core/ServiceManager/index.js +0 -1
  41. package/cjs/core/ServiceManager/index.js.map +1 -1
  42. package/cjs/core/ServiceManager/node.js +3 -9
  43. package/cjs/core/ServiceManager/node.js.map +1 -1
  44. package/cjs/core/factory.js +0 -7
  45. package/cjs/core/factory.js.map +1 -1
  46. package/cjs/core/index.js +0 -13
  47. package/cjs/core/index.js.map +1 -1
  48. package/cjs/core/mixin.js +16 -20
  49. package/cjs/core/mixin.js.map +1 -1
  50. package/cjs/core/options.js +1 -3
  51. package/cjs/core/options.js.map +1 -1
  52. package/cjs/core/storage.js +0 -2
  53. package/cjs/core/storage.js.map +1 -1
  54. package/cjs/core/types/index.js +0 -5
  55. package/cjs/core/types/index.js.map +1 -1
  56. package/cjs/crypto/base64.js +9 -22
  57. package/cjs/crypto/base64.js.map +1 -1
  58. package/cjs/crypto/browser.js +0 -4
  59. package/cjs/crypto/browser.js.map +1 -1
  60. package/cjs/crypto/index.js +0 -9
  61. package/cjs/crypto/index.js.map +1 -1
  62. package/cjs/crypto/node.js +0 -13
  63. package/cjs/crypto/node.js.map +1 -1
  64. package/cjs/crypto/oidcHash.js +1 -4
  65. package/cjs/crypto/oidcHash.js.map +1 -1
  66. package/cjs/crypto/verifyToken.js +6 -7
  67. package/cjs/crypto/verifyToken.js.map +1 -1
  68. package/cjs/crypto/webcrypto.js +0 -1
  69. package/cjs/crypto/webcrypto.js.map +1 -1
  70. package/cjs/errors/AuthApiError.js +1 -7
  71. package/cjs/errors/AuthApiError.js.map +1 -1
  72. package/cjs/errors/AuthPollStopError.js +1 -5
  73. package/cjs/errors/AuthPollStopError.js.map +1 -1
  74. package/cjs/errors/AuthSdkError.js +1 -6
  75. package/cjs/errors/AuthSdkError.js.map +1 -1
  76. package/cjs/errors/CustomError.js +1 -4
  77. package/cjs/errors/CustomError.js.map +1 -1
  78. package/cjs/errors/OAuthError.js +4 -7
  79. package/cjs/errors/OAuthError.js.map +1 -1
  80. package/cjs/errors/index.js +1 -9
  81. package/cjs/errors/index.js.map +1 -1
  82. package/cjs/exports/authn.js +0 -9
  83. package/cjs/exports/authn.js.map +1 -1
  84. package/cjs/exports/cdn/authn.js +0 -2
  85. package/cjs/exports/cdn/authn.js.map +1 -1
  86. package/cjs/exports/cdn/core.js +0 -2
  87. package/cjs/exports/cdn/core.js.map +1 -1
  88. package/cjs/exports/cdn/default.js +0 -2
  89. package/cjs/exports/cdn/default.js.map +1 -1
  90. package/cjs/exports/cdn/idx.js +0 -2
  91. package/cjs/exports/cdn/idx.js.map +1 -1
  92. package/cjs/exports/cdn/myaccount.js +0 -2
  93. package/cjs/exports/cdn/myaccount.js.map +1 -1
  94. package/cjs/exports/common.js +0 -22
  95. package/cjs/exports/common.js.map +1 -1
  96. package/cjs/exports/core.js +0 -9
  97. package/cjs/exports/core.js.map +1 -1
  98. package/cjs/exports/default.js +2 -12
  99. package/cjs/exports/default.js.map +1 -1
  100. package/cjs/exports/idx.js +3 -7
  101. package/cjs/exports/idx.js.map +1 -1
  102. package/cjs/exports/myaccount.js +0 -9
  103. package/cjs/exports/myaccount.js.map +1 -1
  104. package/cjs/features.js +1 -18
  105. package/cjs/features.js.map +1 -1
  106. package/cjs/fetch/fetchRequest.js +6 -20
  107. package/cjs/fetch/fetchRequest.js.map +1 -1
  108. package/cjs/http/OktaUserAgent.js +3 -11
  109. package/cjs/http/OktaUserAgent.js.map +1 -1
  110. package/cjs/http/headers.js +1 -1
  111. package/cjs/http/headers.js.map +1 -1
  112. package/cjs/http/index.js +0 -11
  113. package/cjs/http/index.js.map +1 -1
  114. package/cjs/http/mixin.js +2 -10
  115. package/cjs/http/mixin.js.map +1 -1
  116. package/cjs/http/options.js +1 -5
  117. package/cjs/http/options.js.map +1 -1
  118. package/cjs/http/request.js +75 -57
  119. package/cjs/http/request.js.map +1 -1
  120. package/cjs/idx/IdxTransactionManager.js +2 -22
  121. package/cjs/idx/IdxTransactionManager.js.map +1 -1
  122. package/cjs/idx/authenticate.js +3 -5
  123. package/cjs/idx/authenticate.js.map +1 -1
  124. package/cjs/idx/authenticator/Authenticator.js +2 -4
  125. package/cjs/idx/authenticator/Authenticator.js.map +1 -1
  126. package/cjs/idx/authenticator/OktaPassword.js +2 -10
  127. package/cjs/idx/authenticator/OktaPassword.js.map +1 -1
  128. package/cjs/idx/authenticator/OktaVerifyTotp.js +0 -6
  129. package/cjs/idx/authenticator/OktaVerifyTotp.js.map +1 -1
  130. package/cjs/idx/authenticator/SecurityQuestionEnrollment.js +0 -10
  131. package/cjs/idx/authenticator/SecurityQuestionEnrollment.js.map +1 -1
  132. package/cjs/idx/authenticator/SecurityQuestionVerification.js +1 -10
  133. package/cjs/idx/authenticator/SecurityQuestionVerification.js.map +1 -1
  134. package/cjs/idx/authenticator/VerificationCodeAuthenticator.js +2 -10
  135. package/cjs/idx/authenticator/VerificationCodeAuthenticator.js.map +1 -1
  136. package/cjs/idx/authenticator/WebauthnEnrollment.js +0 -8
  137. package/cjs/idx/authenticator/WebauthnEnrollment.js.map +1 -1
  138. package/cjs/idx/authenticator/WebauthnVerification.js +0 -8
  139. package/cjs/idx/authenticator/WebauthnVerification.js.map +1 -1
  140. package/cjs/idx/authenticator/getAuthenticator.js +0 -15
  141. package/cjs/idx/authenticator/getAuthenticator.js.map +1 -1
  142. package/cjs/idx/authenticator/index.js +0 -15
  143. package/cjs/idx/authenticator/index.js.map +1 -1
  144. package/cjs/idx/authenticator/util.js +8 -18
  145. package/cjs/idx/authenticator/util.js.map +1 -1
  146. package/cjs/idx/cancel.js +3 -4
  147. package/cjs/idx/cancel.js.map +1 -1
  148. package/cjs/idx/emailVerify.js +5 -13
  149. package/cjs/idx/emailVerify.js.map +1 -1
  150. package/cjs/idx/factory/OktaAuthIdx.js +0 -3
  151. package/cjs/idx/factory/OktaAuthIdx.js.map +1 -1
  152. package/cjs/idx/factory/api.js +1 -17
  153. package/cjs/idx/factory/api.js.map +1 -1
  154. package/cjs/idx/factory/index.js +0 -3
  155. package/cjs/idx/factory/index.js.map +1 -1
  156. package/cjs/idx/flow/AccountUnlockFlow.js +1 -2
  157. package/cjs/idx/flow/AccountUnlockFlow.js.map +1 -1
  158. package/cjs/idx/flow/AuthenticationFlow.js +1 -2
  159. package/cjs/idx/flow/AuthenticationFlow.js.map +1 -1
  160. package/cjs/idx/flow/FlowSpecification.js +2 -13
  161. package/cjs/idx/flow/FlowSpecification.js.map +1 -1
  162. package/cjs/idx/flow/PasswordRecoveryFlow.js +1 -2
  163. package/cjs/idx/flow/PasswordRecoveryFlow.js.map +1 -1
  164. package/cjs/idx/flow/RegistrationFlow.js +1 -2
  165. package/cjs/idx/flow/RegistrationFlow.js.map +1 -1
  166. package/cjs/idx/flow/index.js +0 -11
  167. package/cjs/idx/flow/index.js.map +1 -1
  168. package/cjs/idx/handleInteractionCodeRedirect.js +7 -12
  169. package/cjs/idx/handleInteractionCodeRedirect.js.map +1 -1
  170. package/cjs/idx/idxState/index.js +1 -11
  171. package/cjs/idx/idxState/index.js.map +1 -1
  172. package/cjs/idx/idxState/v1/actionParser.js +1 -12
  173. package/cjs/idx/idxState/v1/actionParser.js.map +1 -1
  174. package/cjs/idx/idxState/v1/generateIdxAction.js +10 -15
  175. package/cjs/idx/idxState/v1/generateIdxAction.js.map +1 -1
  176. package/cjs/idx/idxState/v1/idxResponseParser.js +7 -23
  177. package/cjs/idx/idxState/v1/idxResponseParser.js.map +1 -1
  178. package/cjs/idx/idxState/v1/makeIdxState.js +2 -10
  179. package/cjs/idx/idxState/v1/makeIdxState.js.map +1 -1
  180. package/cjs/idx/idxState/v1/parsers.js +0 -2
  181. package/cjs/idx/idxState/v1/parsers.js.map +1 -1
  182. package/cjs/idx/idxState/v1/remediationParser.js +2 -4
  183. package/cjs/idx/idxState/v1/remediationParser.js.map +1 -1
  184. package/cjs/idx/index.js +0 -26
  185. package/cjs/idx/index.js.map +1 -1
  186. package/cjs/idx/interact.js +18 -18
  187. package/cjs/idx/interact.js.map +1 -1
  188. package/cjs/idx/introspect.js +5 -14
  189. package/cjs/idx/introspect.js.map +1 -1
  190. package/cjs/idx/mixin.js +0 -9
  191. package/cjs/idx/mixin.js.map +1 -1
  192. package/cjs/idx/options.js +2 -3
  193. package/cjs/idx/options.js.map +1 -1
  194. package/cjs/idx/poll.js +1 -10
  195. package/cjs/idx/poll.js.map +1 -1
  196. package/cjs/idx/proceed.js +3 -9
  197. package/cjs/idx/proceed.js.map +1 -1
  198. package/cjs/idx/recoverPassword.js +3 -4
  199. package/cjs/idx/recoverPassword.js.map +1 -1
  200. package/cjs/idx/register.js +5 -11
  201. package/cjs/idx/register.js.map +1 -1
  202. package/cjs/idx/remediate.js +24 -45
  203. package/cjs/idx/remediate.js.map +1 -1
  204. package/cjs/idx/remediators/AuthenticatorEnrollmentData.js +7 -16
  205. package/cjs/idx/remediators/AuthenticatorEnrollmentData.js.map +1 -1
  206. package/cjs/idx/remediators/AuthenticatorVerificationData.js +7 -15
  207. package/cjs/idx/remediators/AuthenticatorVerificationData.js.map +1 -1
  208. package/cjs/idx/remediators/Base/AuthenticatorData.js +7 -22
  209. package/cjs/idx/remediators/Base/AuthenticatorData.js.map +1 -1
  210. package/cjs/idx/remediators/Base/Remediator.js +38 -67
  211. package/cjs/idx/remediators/Base/Remediator.js.map +1 -1
  212. package/cjs/idx/remediators/Base/SelectAuthenticator.js +13 -30
  213. package/cjs/idx/remediators/Base/SelectAuthenticator.js.map +1 -1
  214. package/cjs/idx/remediators/Base/VerifyAuthenticator.js +5 -13
  215. package/cjs/idx/remediators/Base/VerifyAuthenticator.js.map +1 -1
  216. package/cjs/idx/remediators/ChallengeAuthenticator.js +1 -5
  217. package/cjs/idx/remediators/ChallengeAuthenticator.js.map +1 -1
  218. package/cjs/idx/remediators/ChallengePoll.js +1 -6
  219. package/cjs/idx/remediators/ChallengePoll.js.map +1 -1
  220. package/cjs/idx/remediators/EnrollAuthenticator.js +1 -5
  221. package/cjs/idx/remediators/EnrollAuthenticator.js.map +1 -1
  222. package/cjs/idx/remediators/EnrollPoll.js +5 -12
  223. package/cjs/idx/remediators/EnrollPoll.js.map +1 -1
  224. package/cjs/idx/remediators/EnrollProfile.js +8 -30
  225. package/cjs/idx/remediators/EnrollProfile.js.map +1 -1
  226. package/cjs/idx/remediators/EnrollmentChannelData.js +5 -13
  227. package/cjs/idx/remediators/EnrollmentChannelData.js.map +1 -1
  228. package/cjs/idx/remediators/GenericRemediator/GenericRemediator.js +13 -19
  229. package/cjs/idx/remediators/GenericRemediator/GenericRemediator.js.map +1 -1
  230. package/cjs/idx/remediators/GenericRemediator/index.js +0 -1
  231. package/cjs/idx/remediators/GenericRemediator/index.js.map +1 -1
  232. package/cjs/idx/remediators/GenericRemediator/util.js +19 -31
  233. package/cjs/idx/remediators/GenericRemediator/util.js.map +1 -1
  234. package/cjs/idx/remediators/Identify.js +3 -12
  235. package/cjs/idx/remediators/Identify.js.map +1 -1
  236. package/cjs/idx/remediators/ReEnrollAuthenticator.js +3 -10
  237. package/cjs/idx/remediators/ReEnrollAuthenticator.js.map +1 -1
  238. package/cjs/idx/remediators/RedirectIdp.js +1 -7
  239. package/cjs/idx/remediators/RedirectIdp.js.map +1 -1
  240. package/cjs/idx/remediators/ResetAuthenticator.js +1 -5
  241. package/cjs/idx/remediators/ResetAuthenticator.js.map +1 -1
  242. package/cjs/idx/remediators/SelectAuthenticatorAuthenticate.js +3 -11
  243. package/cjs/idx/remediators/SelectAuthenticatorAuthenticate.js.map +1 -1
  244. package/cjs/idx/remediators/SelectAuthenticatorEnroll.js +1 -5
  245. package/cjs/idx/remediators/SelectAuthenticatorEnroll.js.map +1 -1
  246. package/cjs/idx/remediators/SelectAuthenticatorUnlockAccount.js +6 -15
  247. package/cjs/idx/remediators/SelectAuthenticatorUnlockAccount.js.map +1 -1
  248. package/cjs/idx/remediators/SelectEnrollProfile.js +1 -6
  249. package/cjs/idx/remediators/SelectEnrollProfile.js.map +1 -1
  250. package/cjs/idx/remediators/SelectEnrollmentChannel.js +5 -16
  251. package/cjs/idx/remediators/SelectEnrollmentChannel.js.map +1 -1
  252. package/cjs/idx/remediators/Skip.js +1 -6
  253. package/cjs/idx/remediators/Skip.js.map +1 -1
  254. package/cjs/idx/remediators/index.js +0 -39
  255. package/cjs/idx/remediators/index.js.map +1 -1
  256. package/cjs/idx/remediators/util.js +1 -7
  257. package/cjs/idx/remediators/util.js.map +1 -1
  258. package/cjs/idx/run.js +37 -52
  259. package/cjs/idx/run.js.map +1 -1
  260. package/cjs/idx/startTransaction.js +1 -2
  261. package/cjs/idx/startTransaction.js.map +1 -1
  262. package/cjs/idx/storage.js +3 -22
  263. package/cjs/idx/storage.js.map +1 -1
  264. package/cjs/idx/transactionMeta.js +24 -42
  265. package/cjs/idx/transactionMeta.js.map +1 -1
  266. package/cjs/idx/types/api.js +1 -9
  267. package/cjs/idx/types/api.js.map +1 -1
  268. package/cjs/idx/types/idx-js.js +3 -3
  269. package/cjs/idx/types/idx-js.js.map +1 -1
  270. package/cjs/idx/types/index.js +0 -7
  271. package/cjs/idx/types/index.js.map +1 -1
  272. package/cjs/idx/types/meta.js.map +1 -1
  273. package/cjs/idx/types/options.js.map +1 -1
  274. package/cjs/idx/unlockAccount.js +7 -11
  275. package/cjs/idx/unlockAccount.js.map +1 -1
  276. package/cjs/idx/util.js +24 -76
  277. package/cjs/idx/util.js.map +1 -1
  278. package/cjs/idx/webauthn.js +13 -18
  279. package/cjs/idx/webauthn.js.map +1 -1
  280. package/cjs/myaccount/api.js +0 -5
  281. package/cjs/myaccount/api.js.map +1 -1
  282. package/cjs/myaccount/emailApi.js +6 -21
  283. package/cjs/myaccount/emailApi.js.map +1 -1
  284. package/cjs/myaccount/factory.js +0 -3
  285. package/cjs/myaccount/factory.js.map +1 -1
  286. package/cjs/myaccount/index.js +0 -7
  287. package/cjs/myaccount/index.js.map +1 -1
  288. package/cjs/myaccount/mixin.js +0 -5
  289. package/cjs/myaccount/mixin.js.map +1 -1
  290. package/cjs/myaccount/phoneApi.js +5 -18
  291. package/cjs/myaccount/phoneApi.js.map +1 -1
  292. package/cjs/myaccount/profileApi.js +2 -9
  293. package/cjs/myaccount/profileApi.js.map +1 -1
  294. package/cjs/myaccount/request.js +12 -78
  295. package/cjs/myaccount/request.js.map +1 -1
  296. package/cjs/myaccount/transactions/Base.js +5 -7
  297. package/cjs/myaccount/transactions/Base.js.map +1 -1
  298. package/cjs/myaccount/transactions/EmailChallengeTransaction.js +5 -10
  299. package/cjs/myaccount/transactions/EmailChallengeTransaction.js.map +1 -1
  300. package/cjs/myaccount/transactions/EmailStatusTransaction.js +2 -7
  301. package/cjs/myaccount/transactions/EmailStatusTransaction.js.map +1 -1
  302. package/cjs/myaccount/transactions/EmailTransaction.js +5 -13
  303. package/cjs/myaccount/transactions/EmailTransaction.js.map +1 -1
  304. package/cjs/myaccount/transactions/PhoneTransaction.js +5 -12
  305. package/cjs/myaccount/transactions/PhoneTransaction.js.map +1 -1
  306. package/cjs/myaccount/transactions/ProfileSchemaTransaction.js +0 -5
  307. package/cjs/myaccount/transactions/ProfileSchemaTransaction.js.map +1 -1
  308. package/cjs/myaccount/transactions/ProfileTransaction.js +0 -5
  309. package/cjs/myaccount/transactions/ProfileTransaction.js.map +1 -1
  310. package/cjs/myaccount/transactions/index.js +0 -8
  311. package/cjs/myaccount/transactions/index.js.map +1 -1
  312. package/cjs/myaccount/types.js +0 -5
  313. package/cjs/myaccount/types.js.map +1 -1
  314. package/cjs/oidc/TokenManager.js +39 -100
  315. package/cjs/oidc/TokenManager.js.map +1 -1
  316. package/cjs/oidc/TransactionManager.js +19 -26
  317. package/cjs/oidc/TransactionManager.js.map +1 -1
  318. package/cjs/oidc/decodeToken.js +1 -5
  319. package/cjs/oidc/decodeToken.js.map +1 -1
  320. package/cjs/oidc/endpoints/authorize.js +9 -13
  321. package/cjs/oidc/endpoints/authorize.js.map +1 -1
  322. package/cjs/oidc/endpoints/index.js +0 -5
  323. package/cjs/oidc/endpoints/index.js.map +1 -1
  324. package/cjs/oidc/endpoints/token.js +5 -17
  325. package/cjs/oidc/endpoints/token.js.map +1 -1
  326. package/cjs/oidc/endpoints/well-known.js +7 -14
  327. package/cjs/oidc/endpoints/well-known.js.map +1 -1
  328. package/cjs/oidc/exchangeCodeForTokens.js +7 -12
  329. package/cjs/oidc/exchangeCodeForTokens.js.map +1 -1
  330. package/cjs/oidc/factory/OktaAuthOAuth.js +0 -6
  331. package/cjs/oidc/factory/OktaAuthOAuth.js.map +1 -1
  332. package/cjs/oidc/factory/api.js +6 -20
  333. package/cjs/oidc/factory/api.js.map +1 -1
  334. package/cjs/oidc/factory/index.js +0 -3
  335. package/cjs/oidc/factory/index.js.map +1 -1
  336. package/cjs/oidc/getToken.js +18 -30
  337. package/cjs/oidc/getToken.js.map +1 -1
  338. package/cjs/oidc/getUserInfo.js +1 -15
  339. package/cjs/oidc/getUserInfo.js.map +1 -1
  340. package/cjs/oidc/getWithPopup.js +4 -8
  341. package/cjs/oidc/getWithPopup.js.map +1 -1
  342. package/cjs/oidc/getWithRedirect.js +1 -8
  343. package/cjs/oidc/getWithRedirect.js.map +1 -1
  344. package/cjs/oidc/getWithoutPrompt.js +1 -5
  345. package/cjs/oidc/getWithoutPrompt.js.map +1 -1
  346. package/cjs/oidc/handleOAuthResponse.js +23 -40
  347. package/cjs/oidc/handleOAuthResponse.js.map +1 -1
  348. package/cjs/oidc/index.js +0 -32
  349. package/cjs/oidc/index.js.map +1 -1
  350. package/cjs/oidc/mixin/browser.js +6 -18
  351. package/cjs/oidc/mixin/browser.js.map +1 -1
  352. package/cjs/oidc/mixin/index.js +37 -89
  353. package/cjs/oidc/mixin/index.js.map +1 -1
  354. package/cjs/oidc/mixin/node.js +2 -9
  355. package/cjs/oidc/mixin/node.js.map +1 -1
  356. package/cjs/oidc/options/OAuthOptionsConstructor.js +17 -24
  357. package/cjs/oidc/options/OAuthOptionsConstructor.js.map +1 -1
  358. package/cjs/oidc/options/browser.js.map +1 -1
  359. package/cjs/oidc/options/index.js +0 -1
  360. package/cjs/oidc/options/index.js.map +1 -1
  361. package/cjs/oidc/options/node.js.map +1 -1
  362. package/cjs/oidc/parseFromUrl.js +1 -32
  363. package/cjs/oidc/parseFromUrl.js.map +1 -1
  364. package/cjs/oidc/renewToken.js +5 -16
  365. package/cjs/oidc/renewToken.js.map +1 -1
  366. package/cjs/oidc/renewTokens.js +3 -15
  367. package/cjs/oidc/renewTokens.js.map +1 -1
  368. package/cjs/oidc/renewTokensWithRefresh.js +3 -13
  369. package/cjs/oidc/renewTokensWithRefresh.js.map +1 -1
  370. package/cjs/oidc/revokeToken.js +3 -14
  371. package/cjs/oidc/revokeToken.js.map +1 -1
  372. package/cjs/oidc/storage.js +0 -8
  373. package/cjs/oidc/storage.js.map +1 -1
  374. package/cjs/oidc/types/Token.js +1 -5
  375. package/cjs/oidc/types/Token.js.map +1 -1
  376. package/cjs/oidc/types/TokenManager.js +1 -1
  377. package/cjs/oidc/types/TokenManager.js.map +1 -1
  378. package/cjs/oidc/types/Transaction.js +1 -12
  379. package/cjs/oidc/types/Transaction.js.map +1 -1
  380. package/cjs/oidc/types/UserClaims.js.map +1 -1
  381. package/cjs/oidc/types/api.js.map +1 -1
  382. package/cjs/oidc/types/index.js +0 -21
  383. package/cjs/oidc/types/index.js.map +1 -1
  384. package/cjs/oidc/types/meta.js.map +1 -1
  385. package/cjs/oidc/types/options.js.map +1 -1
  386. package/cjs/oidc/types/proto.js.map +1 -1
  387. package/cjs/oidc/util/browser.js +4 -13
  388. package/cjs/oidc/util/browser.js.map +1 -1
  389. package/cjs/oidc/util/defaultTokenParams.js +5 -5
  390. package/cjs/oidc/util/defaultTokenParams.js.map +1 -1
  391. package/cjs/oidc/util/errors.js +3 -8
  392. package/cjs/oidc/util/errors.js.map +1 -1
  393. package/cjs/oidc/util/index.js +0 -24
  394. package/cjs/oidc/util/index.js.map +1 -1
  395. package/cjs/oidc/util/loginRedirect.js +11 -25
  396. package/cjs/oidc/util/loginRedirect.js.map +1 -1
  397. package/cjs/oidc/util/oauth.js +3 -12
  398. package/cjs/oidc/util/oauth.js.map +1 -1
  399. package/cjs/oidc/util/oauthMeta.js +5 -6
  400. package/cjs/oidc/util/oauthMeta.js.map +1 -1
  401. package/cjs/oidc/util/pkce.js +1 -12
  402. package/cjs/oidc/util/pkce.js.map +1 -1
  403. package/cjs/oidc/util/prepareTokenParams.js +13 -26
  404. package/cjs/oidc/util/prepareTokenParams.js.map +1 -1
  405. package/cjs/oidc/util/refreshToken.js +0 -7
  406. package/cjs/oidc/util/refreshToken.js.map +1 -1
  407. package/cjs/oidc/util/sharedStorage.js +0 -8
  408. package/cjs/oidc/util/sharedStorage.js.map +1 -1
  409. package/cjs/oidc/util/urlParams.js +9 -12
  410. package/cjs/oidc/util/urlParams.js.map +1 -1
  411. package/cjs/oidc/util/validateClaims.js +9 -17
  412. package/cjs/oidc/util/validateClaims.js.map +1 -1
  413. package/cjs/oidc/util/validateToken.js +1 -6
  414. package/cjs/oidc/util/validateToken.js.map +1 -1
  415. package/cjs/oidc/verifyToken.js +13 -23
  416. package/cjs/oidc/verifyToken.js.map +1 -1
  417. package/cjs/server/serverStorage.js +9 -27
  418. package/cjs/server/serverStorage.js.map +1 -1
  419. package/cjs/services/AutoRenewService.js +1 -17
  420. package/cjs/services/AutoRenewService.js.map +1 -1
  421. package/cjs/services/LeaderElectionService.js +1 -23
  422. package/cjs/services/LeaderElectionService.js.map +1 -1
  423. package/cjs/services/SyncStorageService.js +3 -37
  424. package/cjs/services/SyncStorageService.js.map +1 -1
  425. package/cjs/services/index.js +0 -5
  426. package/cjs/services/index.js.map +1 -1
  427. package/cjs/session/api.js +1 -12
  428. package/cjs/session/api.js.map +1 -1
  429. package/cjs/session/factory.js +0 -2
  430. package/cjs/session/factory.js.map +1 -1
  431. package/cjs/session/index.js +0 -7
  432. package/cjs/session/index.js.map +1 -1
  433. package/cjs/session/mixin.js +2 -6
  434. package/cjs/session/mixin.js.map +1 -1
  435. package/cjs/storage/BaseStorageManager.js +13 -25
  436. package/cjs/storage/BaseStorageManager.js.map +1 -1
  437. package/cjs/storage/SavedObject.js +7 -19
  438. package/cjs/storage/SavedObject.js.map +1 -1
  439. package/cjs/storage/index.js +0 -9
  440. package/cjs/storage/index.js.map +1 -1
  441. package/cjs/storage/mixin.js +2 -4
  442. package/cjs/storage/mixin.js.map +1 -1
  443. package/cjs/storage/options/StorageOptionsConstructor.js +3 -6
  444. package/cjs/storage/options/StorageOptionsConstructor.js.map +1 -1
  445. package/cjs/storage/options/browser.js +7 -15
  446. package/cjs/storage/options/browser.js.map +1 -1
  447. package/cjs/storage/options/node.js +3 -6
  448. package/cjs/storage/options/node.js.map +1 -1
  449. package/cjs/util/PromiseQueue.js +7 -15
  450. package/cjs/util/PromiseQueue.js.map +1 -1
  451. package/cjs/util/console.js +3 -7
  452. package/cjs/util/console.js.map +1 -1
  453. package/cjs/util/index.js +0 -11
  454. package/cjs/util/index.js.map +1 -1
  455. package/cjs/util/misc.js +3 -8
  456. package/cjs/util/misc.js.map +1 -1
  457. package/cjs/util/object.js +9 -23
  458. package/cjs/util/object.js.map +1 -1
  459. package/cjs/util/types.js +1 -5
  460. package/cjs/util/types.js.map +1 -1
  461. package/cjs/util/url.js +5 -14
  462. package/cjs/util/url.js.map +1 -1
  463. package/dist/okta-auth-js.authn.min.analyzer.html +3 -3
  464. package/dist/okta-auth-js.authn.min.js +1 -1
  465. package/dist/okta-auth-js.authn.min.js.LICENSE.txt +2 -0
  466. package/dist/okta-auth-js.authn.min.js.map +1 -1
  467. package/dist/okta-auth-js.core.min.analyzer.html +3 -3
  468. package/dist/okta-auth-js.core.min.js +1 -1
  469. package/dist/okta-auth-js.core.min.js.LICENSE.txt +2 -0
  470. package/dist/okta-auth-js.core.min.js.map +1 -1
  471. package/dist/okta-auth-js.idx.min.analyzer.html +3 -3
  472. package/dist/okta-auth-js.idx.min.js +1 -1
  473. package/dist/okta-auth-js.idx.min.js.LICENSE.txt +2 -0
  474. package/dist/okta-auth-js.idx.min.js.map +1 -1
  475. package/dist/okta-auth-js.min.analyzer.html +3 -3
  476. package/dist/okta-auth-js.min.js +1 -1
  477. package/dist/okta-auth-js.min.js.LICENSE.txt +2 -0
  478. package/dist/okta-auth-js.min.js.map +1 -1
  479. package/dist/okta-auth-js.myaccount.min.analyzer.html +3 -3
  480. package/dist/okta-auth-js.myaccount.min.js +1 -1
  481. package/dist/okta-auth-js.myaccount.min.js.LICENSE.txt +2 -0
  482. package/dist/okta-auth-js.myaccount.min.js.map +1 -1
  483. package/dist/okta-auth-js.polyfill.js +1 -1
  484. package/dist/okta-auth-js.polyfill.js.map +1 -1
  485. package/esm/browser/http/OktaUserAgent.js +2 -2
  486. package/esm/browser/http/request.js +56 -23
  487. package/esm/browser/http/request.js.map +1 -1
  488. package/esm/browser/idx/interact.js +2 -2
  489. package/esm/browser/idx/interact.js.map +1 -1
  490. package/esm/browser/idx/run.js +2 -1
  491. package/esm/browser/idx/run.js.map +1 -1
  492. package/esm/browser/idx/transactionMeta.js +3 -2
  493. package/esm/browser/idx/transactionMeta.js.map +1 -1
  494. package/esm/browser/myaccount/request.js +2 -43
  495. package/esm/browser/myaccount/request.js.map +1 -1
  496. package/esm/browser/oidc/endpoints/authorize.js +1 -0
  497. package/esm/browser/oidc/endpoints/authorize.js.map +1 -1
  498. package/esm/browser/oidc/exchangeCodeForTokens.js +2 -1
  499. package/esm/browser/oidc/exchangeCodeForTokens.js.map +1 -1
  500. package/esm/browser/oidc/handleOAuthResponse.js +17 -16
  501. package/esm/browser/oidc/handleOAuthResponse.js.map +1 -1
  502. package/esm/browser/oidc/options/OAuthOptionsConstructor.js +2 -0
  503. package/esm/browser/oidc/options/OAuthOptionsConstructor.js.map +1 -1
  504. package/esm/browser/oidc/util/defaultTokenParams.js +3 -1
  505. package/esm/browser/oidc/util/defaultTokenParams.js.map +1 -1
  506. package/esm/browser/oidc/util/oauthMeta.js +1 -0
  507. package/esm/browser/oidc/util/oauthMeta.js.map +1 -1
  508. package/esm/browser/oidc/util/validateClaims.js +9 -4
  509. package/esm/browser/oidc/util/validateClaims.js.map +1 -1
  510. package/esm/browser/oidc/verifyToken.js +2 -2
  511. package/esm/browser/oidc/verifyToken.js.map +1 -1
  512. package/esm/browser/package.json +1 -1
  513. package/esm/node/http/OktaUserAgent.js +2 -2
  514. package/esm/node/http/request.js +56 -23
  515. package/esm/node/http/request.js.map +1 -1
  516. package/esm/node/idx/interact.js +2 -2
  517. package/esm/node/idx/interact.js.map +1 -1
  518. package/esm/node/idx/run.js +2 -1
  519. package/esm/node/idx/run.js.map +1 -1
  520. package/esm/node/idx/transactionMeta.js +3 -2
  521. package/esm/node/idx/transactionMeta.js.map +1 -1
  522. package/esm/node/myaccount/request.js +2 -43
  523. package/esm/node/myaccount/request.js.map +1 -1
  524. package/esm/node/oidc/endpoints/authorize.js +1 -0
  525. package/esm/node/oidc/endpoints/authorize.js.map +1 -1
  526. package/esm/node/oidc/exchangeCodeForTokens.js +2 -1
  527. package/esm/node/oidc/exchangeCodeForTokens.js.map +1 -1
  528. package/esm/node/oidc/handleOAuthResponse.js +17 -16
  529. package/esm/node/oidc/handleOAuthResponse.js.map +1 -1
  530. package/esm/node/oidc/options/OAuthOptionsConstructor.js +2 -0
  531. package/esm/node/oidc/options/OAuthOptionsConstructor.js.map +1 -1
  532. package/esm/node/oidc/util/defaultTokenParams.js +3 -1
  533. package/esm/node/oidc/util/defaultTokenParams.js.map +1 -1
  534. package/esm/node/oidc/util/oauthMeta.js +1 -0
  535. package/esm/node/oidc/util/oauthMeta.js.map +1 -1
  536. package/esm/node/oidc/util/validateClaims.js +9 -4
  537. package/esm/node/oidc/util/validateClaims.js.map +1 -1
  538. package/esm/node/oidc/verifyToken.js +2 -2
  539. package/esm/node/oidc/verifyToken.js.map +1 -1
  540. package/esm/node/package.json +1 -1
  541. package/package.json +12 -13
  542. package/polyfill/index.js +8 -5
  543. package/types/lib/core/options.d.ts +2 -0
  544. package/types/lib/idx/interact.d.ts +1 -0
  545. package/types/lib/idx/options.d.ts +2 -0
  546. package/types/lib/idx/types/meta.d.ts +1 -0
  547. package/types/lib/idx/types/options.d.ts +1 -0
  548. package/types/lib/oidc/options/OAuthOptionsConstructor.d.ts +2 -0
  549. package/types/lib/oidc/types/UserClaims.d.ts +1 -0
  550. package/types/lib/oidc/types/api.d.ts +1 -0
  551. package/types/lib/oidc/types/meta.d.ts +1 -1
  552. package/types/lib/oidc/types/options.d.ts +2 -1
  553. package/types/lib/oidc/types/proto.d.ts +1 -0
  554. package/umd/authn.js +1 -1
  555. package/umd/authn.js.LICENSE.txt +2 -0
  556. package/umd/authn.js.map +1 -1
  557. package/umd/core.js +1 -1
  558. package/umd/core.js.LICENSE.txt +2 -0
  559. package/umd/core.js.map +1 -1
  560. package/umd/default.js +1 -1
  561. package/umd/default.js.LICENSE.txt +2 -0
  562. package/umd/default.js.map +1 -1
  563. package/umd/idx.js +1 -1
  564. package/umd/idx.js.LICENSE.txt +2 -0
  565. package/umd/idx.js.map +1 -1
  566. package/umd/myaccount.js +1 -1
  567. package/umd/myaccount.js.LICENSE.txt +2 -0
  568. package/umd/myaccount.js.map +1 -1
@@ -9,13 +9,9 @@ exports.isTransactionMetaValid = isTransactionMetaValid;
9
9
  exports.isTransactionMetaValidForFlow = isTransactionMetaValidForFlow;
10
10
  exports.isTransactionMetaValidForOptions = isTransactionMetaValidForOptions;
11
11
  exports.saveTransactionMeta = saveTransactionMeta;
12
-
13
12
  var _util = require("../util");
14
-
15
13
  var _oidc = require("../oidc");
16
-
17
14
  /* eslint-disable @typescript-eslint/no-non-null-assertion */
18
-
19
15
  /*!
20
16
  * Copyright (c) 2021, Okta, Inc. and/or its affiliates. All rights reserved.
21
17
  * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
@@ -27,6 +23,7 @@ var _oidc = require("../oidc");
27
23
  *
28
24
  * See the License for the specific language governing permissions and limitations under the License.
29
25
  */
26
+
30
27
  // Calculate new values
31
28
  async function createTransactionMeta(authClient, options = {}) {
32
29
  const tokenParams = await authClient.token.prepareTokenParams(options);
@@ -36,126 +33,111 @@ async function createTransactionMeta(authClient, options = {}) {
36
33
  withCredentials = true,
37
34
  activationToken = undefined,
38
35
  recoveryToken = undefined,
39
- maxAge = undefined
40
- } = { ...authClient.options,
36
+ maxAge = undefined,
37
+ acrValues = undefined
38
+ } = {
39
+ ...authClient.options,
41
40
  ...options
42
41
  }; // local options override SDK options
43
42
 
44
- const meta = { ...pkceMeta,
43
+ const meta = {
44
+ ...pkceMeta,
45
45
  flow,
46
46
  withCredentials,
47
47
  activationToken,
48
48
  recoveryToken,
49
- maxAge
49
+ maxAge,
50
+ acrValues
50
51
  };
51
52
  return meta;
52
53
  }
53
-
54
54
  function hasSavedInteractionHandle(authClient, options) {
55
55
  const savedMeta = getSavedTransactionMeta(authClient, options);
56
-
57
56
  if (savedMeta !== null && savedMeta !== void 0 && savedMeta.interactionHandle) {
58
57
  return true;
59
58
  }
60
-
61
59
  return false;
62
- } // Returns the saved transaction meta, if it exists and is valid
63
-
60
+ }
64
61
 
62
+ // Returns the saved transaction meta, if it exists and is valid
65
63
  function getSavedTransactionMeta(authClient, options) {
66
64
  options = (0, _util.removeNils)(options);
67
- options = { ...authClient.options,
65
+ options = {
66
+ ...authClient.options,
68
67
  ...options
69
68
  }; // local options override SDK options
70
-
71
69
  let savedMeta;
72
-
73
70
  try {
74
71
  savedMeta = authClient.transactionManager.load(options);
75
- } catch (e) {// ignore errors here
72
+ } catch (e) {
73
+ // ignore errors here
76
74
  }
77
-
78
75
  if (!savedMeta) {
79
76
  return;
80
77
  }
81
-
82
78
  if (isTransactionMetaValid(savedMeta, options)) {
83
79
  return savedMeta;
84
- } // existing meta is not valid for this configuration
80
+ }
81
+
82
+ // existing meta is not valid for this configuration
85
83
  // this is common when changing configuration in local development environment
86
84
  // in a production environment, this may indicate that two apps are sharing a storage key
87
-
88
-
89
85
  (0, _util.warn)('Saved transaction meta does not match the current configuration. ' + 'This may indicate that two apps are sharing a storage key.');
90
86
  }
91
-
92
87
  async function getTransactionMeta(authClient, options) {
93
88
  options = (0, _util.removeNils)(options);
94
- options = { ...authClient.options,
89
+ options = {
90
+ ...authClient.options,
95
91
  ...options
96
92
  }; // local options override SDK options
97
93
  // Load existing transaction meta from storage
98
-
99
94
  const validExistingMeta = getSavedTransactionMeta(authClient, options);
100
-
101
95
  if (validExistingMeta) {
102
96
  return validExistingMeta;
103
- } // No existing? Create new transaction meta.
104
-
105
-
97
+ }
98
+ // No existing? Create new transaction meta.
106
99
  return createTransactionMeta(authClient, options);
107
100
  }
108
-
109
101
  function saveTransactionMeta(authClient, meta) {
110
102
  authClient.transactionManager.save(meta, {
111
103
  muteWarning: true
112
104
  });
113
105
  }
114
-
115
106
  function clearTransactionMeta(authClient) {
116
107
  authClient.transactionManager.clear();
117
108
  }
118
-
119
109
  function isTransactionMetaValid(meta, options = {}) {
120
110
  // Validate against certain options. If these exist in options, they must match in meta
121
111
  const keys = ['issuer', 'clientId', 'redirectUri', 'state', 'codeChallenge', 'codeChallengeMethod', 'activationToken', 'recoveryToken'];
122
-
123
112
  if (isTransactionMetaValidForOptions(meta, options, keys) === false) {
124
113
  return false;
125
- } // Validate configured flow
126
-
114
+ }
127
115
 
116
+ // Validate configured flow
128
117
  const {
129
118
  flow
130
119
  } = options;
131
-
132
120
  if (isTransactionMetaValidForFlow(meta, flow) === false) {
133
121
  return false;
134
122
  }
135
-
136
123
  return true;
137
124
  }
138
-
139
125
  function isTransactionMetaValidForFlow(meta, flow) {
140
126
  // Specific flows should not share transaction data
141
127
  const shouldValidateFlow = flow && flow !== 'default' && flow !== 'proceed';
142
-
143
128
  if (shouldValidateFlow) {
144
129
  if (flow !== meta.flow) {
145
130
  // The flow has changed; abandon the old transaction
146
131
  return false;
147
132
  }
148
133
  }
149
-
150
134
  return true;
151
135
  }
152
-
153
136
  function isTransactionMetaValidForOptions(meta, options, keys) {
154
137
  // returns false if values in meta do not match options
155
138
  // if the option does not have a value for a specific key, it is ignored
156
139
  const mismatch = keys.some(key => {
157
140
  const value = options[key];
158
-
159
141
  if (value && value !== meta[key]) {
160
142
  return true;
161
143
  }
@@ -1 +1 @@
1
- {"version":3,"file":"transactionMeta.js","names":["createTransactionMeta","authClient","options","tokenParams","token","prepareTokenParams","pkceMeta","createOAuthMeta","flow","withCredentials","activationToken","undefined","recoveryToken","maxAge","meta","hasSavedInteractionHandle","savedMeta","getSavedTransactionMeta","interactionHandle","removeNils","transactionManager","load","e","isTransactionMetaValid","warn","getTransactionMeta","validExistingMeta","saveTransactionMeta","save","muteWarning","clearTransactionMeta","clear","keys","isTransactionMetaValidForOptions","isTransactionMetaValidForFlow","shouldValidateFlow","mismatch","some","key","value"],"sources":["../../../lib/idx/transactionMeta.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-non-null-assertion */\n/*!\n * Copyright (c) 2021, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { OktaAuthIdxInterface, IdxTransactionMeta, IdxTransactionMetaOptions } from './types';\nimport { removeNils, warn } from '../util';\nimport { createOAuthMeta, PKCETransactionMeta } from '../oidc';\n\n// Calculate new values\nexport async function createTransactionMeta(\n authClient: OktaAuthIdxInterface,\n options: IdxTransactionMetaOptions = {}\n): Promise<IdxTransactionMeta> {\n const tokenParams = await authClient.token.prepareTokenParams(options);\n const pkceMeta = createOAuthMeta(authClient, tokenParams) as PKCETransactionMeta;\n let {\n flow = 'default',\n withCredentials = true,\n activationToken = undefined,\n recoveryToken = undefined,\n maxAge = undefined,\n } = { ...authClient.options, ...options }; // local options override SDK options\n\n const meta: IdxTransactionMeta = {\n ...pkceMeta,\n flow,\n withCredentials,\n activationToken,\n recoveryToken,\n maxAge\n };\n return meta;\n}\n\nexport function hasSavedInteractionHandle(\n authClient: OktaAuthIdxInterface,\n options?: IdxTransactionMetaOptions\n): boolean {\n const savedMeta = getSavedTransactionMeta(authClient, options);\n if (savedMeta?.interactionHandle) {\n return true;\n }\n return false;\n}\n\n// Returns the saved transaction meta, if it exists and is valid\nexport function getSavedTransactionMeta(\n authClient: OktaAuthIdxInterface,\n options?: IdxTransactionMetaOptions\n): IdxTransactionMeta | undefined {\n options = removeNils(options);\n options = { ...authClient.options, ...options }; // local options override SDK options\n let savedMeta;\n try {\n savedMeta = authClient.transactionManager.load(options) as IdxTransactionMeta;\n } catch (e) {\n // ignore errors here\n }\n\n if (!savedMeta) {\n return;\n }\n\n if (isTransactionMetaValid(savedMeta, options)) {\n return savedMeta;\n }\n\n // existing meta is not valid for this configuration\n // this is common when changing configuration in local development environment\n // in a production environment, this may indicate that two apps are sharing a storage key\n warn('Saved transaction meta does not match the current configuration. ' + \n 'This may indicate that two apps are sharing a storage key.');\n\n}\n\nexport async function getTransactionMeta(\n authClient: OktaAuthIdxInterface,\n options?: IdxTransactionMetaOptions\n): Promise<IdxTransactionMeta> {\n options = removeNils(options);\n options = { ...authClient.options, ...options }; // local options override SDK options\n // Load existing transaction meta from storage\n const validExistingMeta = getSavedTransactionMeta(authClient, options);\n if (validExistingMeta) {\n return validExistingMeta;\n }\n // No existing? Create new transaction meta.\n return createTransactionMeta(authClient, options);\n}\n\nexport function saveTransactionMeta (authClient: OktaAuthIdxInterface, meta): void {\n authClient.transactionManager.save(meta, { muteWarning: true });\n}\n\nexport function clearTransactionMeta (authClient: OktaAuthIdxInterface): void {\n authClient.transactionManager.clear();\n}\n\nexport function isTransactionMetaValid (meta, options: IdxTransactionMetaOptions = {}): boolean {\n // Validate against certain options. If these exist in options, they must match in meta\n const keys = [\n 'issuer',\n 'clientId',\n 'redirectUri',\n 'state',\n 'codeChallenge',\n 'codeChallengeMethod',\n 'activationToken',\n 'recoveryToken'\n ];\n if (isTransactionMetaValidForOptions(meta, options, keys) === false) {\n return false;\n }\n\n // Validate configured flow\n const { flow } = options;\n if (isTransactionMetaValidForFlow(meta, flow) === false) {\n return false;\n }\n\n return true;\n}\n\nexport function isTransactionMetaValidForFlow(meta, flow) {\n // Specific flows should not share transaction data\n const shouldValidateFlow = flow && flow !== 'default' && flow !== 'proceed';\n if (shouldValidateFlow) {\n if (flow !== meta.flow) {\n // The flow has changed; abandon the old transaction\n return false;\n }\n }\n return true;\n}\n\nexport function isTransactionMetaValidForOptions(meta, options, keys) {\n // returns false if values in meta do not match options\n // if the option does not have a value for a specific key, it is ignored\n const mismatch = keys.some(key => {\n const value = options[key];\n if (value && value !== meta[key]) {\n return true;\n }\n });\n return !mismatch;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"transactionMeta.js","names":["createTransactionMeta","authClient","options","tokenParams","token","prepareTokenParams","pkceMeta","createOAuthMeta","flow","withCredentials","activationToken","undefined","recoveryToken","maxAge","acrValues","meta","hasSavedInteractionHandle","savedMeta","getSavedTransactionMeta","interactionHandle","removeNils","transactionManager","load","e","isTransactionMetaValid","warn","getTransactionMeta","validExistingMeta","saveTransactionMeta","save","muteWarning","clearTransactionMeta","clear","keys","isTransactionMetaValidForOptions","isTransactionMetaValidForFlow","shouldValidateFlow","mismatch","some","key","value"],"sources":["../../../lib/idx/transactionMeta.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-non-null-assertion */\n/*!\n * Copyright (c) 2021, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { OktaAuthIdxInterface, IdxTransactionMeta, IdxTransactionMetaOptions } from './types';\nimport { removeNils, warn } from '../util';\nimport { createOAuthMeta, PKCETransactionMeta } from '../oidc';\n\n// Calculate new values\nexport async function createTransactionMeta(\n authClient: OktaAuthIdxInterface,\n options: IdxTransactionMetaOptions = {}\n): Promise<IdxTransactionMeta> {\n const tokenParams = await authClient.token.prepareTokenParams(options);\n const pkceMeta = createOAuthMeta(authClient, tokenParams) as PKCETransactionMeta;\n let {\n flow = 'default',\n withCredentials = true,\n activationToken = undefined,\n recoveryToken = undefined,\n maxAge = undefined,\n acrValues = undefined,\n } = { ...authClient.options, ...options }; // local options override SDK options\n\n const meta: IdxTransactionMeta = {\n ...pkceMeta,\n flow,\n withCredentials,\n activationToken,\n recoveryToken,\n maxAge,\n acrValues\n };\n return meta;\n}\n\nexport function hasSavedInteractionHandle(\n authClient: OktaAuthIdxInterface,\n options?: IdxTransactionMetaOptions\n): boolean {\n const savedMeta = getSavedTransactionMeta(authClient, options);\n if (savedMeta?.interactionHandle) {\n return true;\n }\n return false;\n}\n\n// Returns the saved transaction meta, if it exists and is valid\nexport function getSavedTransactionMeta(\n authClient: OktaAuthIdxInterface,\n options?: IdxTransactionMetaOptions\n): IdxTransactionMeta | undefined {\n options = removeNils(options);\n options = { ...authClient.options, ...options }; // local options override SDK options\n let savedMeta;\n try {\n savedMeta = authClient.transactionManager.load(options) as IdxTransactionMeta;\n } catch (e) {\n // ignore errors here\n }\n\n if (!savedMeta) {\n return;\n }\n\n if (isTransactionMetaValid(savedMeta, options)) {\n return savedMeta;\n }\n\n // existing meta is not valid for this configuration\n // this is common when changing configuration in local development environment\n // in a production environment, this may indicate that two apps are sharing a storage key\n warn('Saved transaction meta does not match the current configuration. ' + \n 'This may indicate that two apps are sharing a storage key.');\n\n}\n\nexport async function getTransactionMeta(\n authClient: OktaAuthIdxInterface,\n options?: IdxTransactionMetaOptions\n): Promise<IdxTransactionMeta> {\n options = removeNils(options);\n options = { ...authClient.options, ...options }; // local options override SDK options\n // Load existing transaction meta from storage\n const validExistingMeta = getSavedTransactionMeta(authClient, options);\n if (validExistingMeta) {\n return validExistingMeta;\n }\n // No existing? Create new transaction meta.\n return createTransactionMeta(authClient, options);\n}\n\nexport function saveTransactionMeta (authClient: OktaAuthIdxInterface, meta): void {\n authClient.transactionManager.save(meta, { muteWarning: true });\n}\n\nexport function clearTransactionMeta (authClient: OktaAuthIdxInterface): void {\n authClient.transactionManager.clear();\n}\n\nexport function isTransactionMetaValid (meta, options: IdxTransactionMetaOptions = {}): boolean {\n // Validate against certain options. If these exist in options, they must match in meta\n const keys = [\n 'issuer',\n 'clientId',\n 'redirectUri',\n 'state',\n 'codeChallenge',\n 'codeChallengeMethod',\n 'activationToken',\n 'recoveryToken'\n ];\n if (isTransactionMetaValidForOptions(meta, options, keys) === false) {\n return false;\n }\n\n // Validate configured flow\n const { flow } = options;\n if (isTransactionMetaValidForFlow(meta, flow) === false) {\n return false;\n }\n\n return true;\n}\n\nexport function isTransactionMetaValidForFlow(meta, flow) {\n // Specific flows should not share transaction data\n const shouldValidateFlow = flow && flow !== 'default' && flow !== 'proceed';\n if (shouldValidateFlow) {\n if (flow !== meta.flow) {\n // The flow has changed; abandon the old transaction\n return false;\n }\n }\n return true;\n}\n\nexport function isTransactionMetaValidForOptions(meta, options, keys) {\n // returns false if values in meta do not match options\n // if the option does not have a value for a specific key, it is ignored\n const mismatch = keys.some(key => {\n const value = options[key];\n if (value && value !== meta[key]) {\n return true;\n }\n });\n return !mismatch;\n}\n"],"mappings":"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"}
@@ -2,7 +2,6 @@
2
2
 
3
3
  exports.IdxStatus = exports.IdxFeature = exports.AuthenticatorKey = void 0;
4
4
  exports.isAuthenticator = isAuthenticator;
5
-
6
5
  /*!
7
6
  * Copyright (c) 2021-present, Okta, Inc. and/or its affiliates. All rights reserved.
8
7
  * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
@@ -13,10 +12,8 @@ exports.isAuthenticator = isAuthenticator;
13
12
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
13
  *
15
14
  * See the License for the specific language governing permissions and limitations under the License.
16
- */
17
- let IdxStatus;
15
+ */let IdxStatus;
18
16
  exports.IdxStatus = IdxStatus;
19
-
20
17
  (function (IdxStatus) {
21
18
  IdxStatus["SUCCESS"] = "SUCCESS";
22
19
  IdxStatus["PENDING"] = "PENDING";
@@ -24,10 +21,8 @@ exports.IdxStatus = IdxStatus;
24
21
  IdxStatus["TERMINAL"] = "TERMINAL";
25
22
  IdxStatus["CANCELED"] = "CANCELED";
26
23
  })(IdxStatus || (exports.IdxStatus = IdxStatus = {}));
27
-
28
24
  let AuthenticatorKey;
29
25
  exports.AuthenticatorKey = AuthenticatorKey;
30
-
31
26
  (function (AuthenticatorKey) {
32
27
  AuthenticatorKey["OKTA_PASSWORD"] = "okta_password";
33
28
  AuthenticatorKey["OKTA_EMAIL"] = "okta_email";
@@ -37,17 +32,14 @@ exports.AuthenticatorKey = AuthenticatorKey;
37
32
  AuthenticatorKey["OKTA_VERIFY"] = "okta_verify";
38
33
  AuthenticatorKey["WEBAUTHN"] = "webauthn";
39
34
  })(AuthenticatorKey || (exports.AuthenticatorKey = AuthenticatorKey = {}));
40
-
41
35
  let IdxFeature;
42
36
  exports.IdxFeature = IdxFeature;
43
-
44
37
  (function (IdxFeature) {
45
38
  IdxFeature["PASSWORD_RECOVERY"] = "recover-password";
46
39
  IdxFeature["REGISTRATION"] = "enroll-profile";
47
40
  IdxFeature["SOCIAL_IDP"] = "redirect-idp";
48
41
  IdxFeature["ACCOUNT_UNLOCK"] = "unlock-account";
49
42
  })(IdxFeature || (exports.IdxFeature = IdxFeature = {}));
50
-
51
43
  function isAuthenticator(obj) {
52
44
  return obj && (obj.key || obj.id);
53
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","names":["IdxStatus","AuthenticatorKey","IdxFeature","isAuthenticator","obj","key","id"],"sources":["../../../../lib/idx/types/api.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 { APIError } from '../../errors/types';\nimport {\n OktaAuthOAuthInterface,\n Tokens,\n TransactionManagerConstructor,\n TransactionManagerInterface\n} from '../../oidc/types';\nimport { FlowIdentifier } from './FlowIdentifier';\nimport {\n IdxActions,\n IdxAuthenticator,\n IdxContext,\n IdxForm,\n IdxMessage,\n IdxOption,\n IdxRemediation,\n IdxResponse,\n RawIdxResponse,\n IdxActionParams,\n IdpConfig,\n IdxToPersist,\n} from './idx-js';\nimport {\n AccountUnlockOptions,\n AuthenticationOptions,\n CancelOptions,\n InteractOptions,\n IntrospectOptions,\n OktaAuthIdxOptions,\n PasswordRecoveryOptions,\n ProceedOptions,\n RegistrationOptions,\n StartOptions,\n IdxTransactionMetaOptions\n} from './options';\nimport { IdxTransactionMeta } from './meta';\nimport { IdxStorageManagerInterface, SavedIdxResponse } from './storage';\n\nexport enum IdxStatus {\n SUCCESS = 'SUCCESS',\n PENDING = 'PENDING',\n FAILURE = 'FAILURE',\n TERMINAL = 'TERMINAL',\n CANCELED = 'CANCELED',\n}\n\nexport enum AuthenticatorKey {\n OKTA_PASSWORD = 'okta_password',\n OKTA_EMAIL = 'okta_email',\n PHONE_NUMBER = 'phone_number',\n GOOGLE_AUTHENTICATOR = 'google_otp',\n SECURITY_QUESTION = 'security_question',\n OKTA_VERIFY = 'okta_verify',\n WEBAUTHN = 'webauthn',\n}\n\nexport type Input = {\n name: string;\n key?: string;\n type?: string;\n label?: string;\n value?: string | {form: IdxForm} | Input[];\n minLength?: number;\n maxLength?: number;\n secret?: boolean;\n required?: boolean;\n options?: IdxOption[];\n mutable?: boolean;\n visible?: boolean;\n}\n\n\nexport interface IdxPollOptions {\n required?: boolean;\n refresh?: number;\n}\n\nexport type NextStep = {\n name: string;\n authenticator?: IdxAuthenticator;\n canSkip?: boolean;\n canResend?: boolean;\n inputs?: Input[];\n poll?: IdxPollOptions;\n authenticatorEnrollments?: IdxAuthenticator[];\n // eslint-disable-next-line no-use-before-define\n action?: (params?: IdxActionParams) => Promise<IdxTransaction>;\n idp?: IdpConfig;\n href?: string;\n relatesTo?: {\n type?: string;\n value: IdxAuthenticator;\n };\n refresh?: number;\n}\n\nexport enum IdxFeature {\n PASSWORD_RECOVERY = 'recover-password',\n REGISTRATION = 'enroll-profile',\n SOCIAL_IDP = 'redirect-idp',\n ACCOUNT_UNLOCK = 'unlock-account',\n}\n\n\nexport interface IdxTransaction {\n status: IdxStatus;\n tokens?: Tokens;\n nextStep?: NextStep;\n messages?: IdxMessage[];\n error?: APIError | IdxResponse;\n meta?: IdxTransactionMeta;\n enabledFeatures?: IdxFeature[];\n availableSteps?: NextStep[];\n requestDidSucceed?: boolean;\n stepUp?: boolean;\n \n // from idx-js, used by signin widget\n proceed: (remediationName: string, params: unknown) => Promise<IdxResponse>;\n neededToProceed: IdxRemediation[];\n rawIdxState: RawIdxResponse;\n interactionCode?: string;\n actions: IdxActions;\n context: IdxContext;\n}\n\n\nexport type Authenticator = {\n id?: string;\n key?: string;\n methodType?: string;\n phoneNumber?: string;\n channel?: string;\n};\n\nexport function isAuthenticator(obj: any): obj is Authenticator {\n return obj && (obj.key || obj.id);\n}\n\nexport interface RemediationResponse {\n idxResponse: IdxResponse;\n nextStep?: NextStep;\n messages?: IdxMessage[];\n terminal?: boolean;\n canceled?: boolean;\n}\n\nexport interface InteractResponse {\n state?: string;\n interactionHandle: string;\n meta: IdxTransactionMeta;\n}\n\nexport interface EmailVerifyCallbackResponse {\n state: string;\n otp: string;\n}\n\nexport interface IdxAPI {\n // lowest level api\n interact: (options?: InteractOptions) => Promise<InteractResponse>;\n introspect: (options?: IntrospectOptions) => Promise<IdxResponse>;\n makeIdxResponse: (rawIdxResponse: RawIdxResponse, toPersist: IdxToPersist, requestDidSucceed: boolean) => IdxResponse;\n\n // flow entrypoints\n authenticate: (options?: AuthenticationOptions) => Promise<IdxTransaction>;\n register: (options?: RegistrationOptions) => Promise<IdxTransaction>;\n recoverPassword: (options?: PasswordRecoveryOptions) => Promise<IdxTransaction>;\n unlockAccount: (options?: AccountUnlockOptions) => Promise<IdxTransaction>;\n poll: (options?: IdxPollOptions) => Promise<IdxTransaction>;\n\n // flow control\n start: (options?: StartOptions) => Promise<IdxTransaction>;\n canProceed(options?: ProceedOptions): boolean;\n proceed: (options?: ProceedOptions) => Promise<IdxTransaction>;\n cancel: (options?: CancelOptions) => Promise<IdxTransaction>;\n getFlow(): FlowIdentifier | undefined;\n setFlow(flow: FlowIdentifier): void;\n\n // call `start` instead of `startTransaction`. `startTransaction` will be removed in next major version (7.0)\n startTransaction: (options?: StartOptions) => Promise<IdxTransaction>;\n\n // redirect callbacks\n isInteractionRequired: (hashOrSearch?: string) => boolean;\n isInteractionRequiredError: (error: Error) => boolean; \n handleInteractionCodeRedirect: (url: string) => Promise<void>;\n isEmailVerifyCallback: (search: string) => boolean;\n parseEmailVerifyCallback: (search: string) => EmailVerifyCallbackResponse;\n handleEmailVerifyCallback: (search: string) => Promise<IdxTransaction | undefined>;\n isEmailVerifyCallbackError: (error: Error) => boolean;\n\n // transaction meta\n getSavedTransactionMeta: (options?: IdxTransactionMetaOptions) => IdxTransactionMeta | undefined;\n createTransactionMeta: (options?: IdxTransactionMetaOptions) => Promise<IdxTransactionMeta>;\n getTransactionMeta: (options?: IdxTransactionMetaOptions) => Promise<IdxTransactionMeta>;\n saveTransactionMeta: (meta: unknown) => void;\n clearTransactionMeta: () => void;\n isTransactionMetaValid: (meta: unknown) => boolean;\n}\n\nexport interface IdxTransactionManagerInterface extends TransactionManagerInterface {\n saveIdxResponse(data: SavedIdxResponse): void;\n loadIdxResponse(options?: IntrospectOptions): SavedIdxResponse | null;\n clearIdxResponse(): void;\n}\n\nexport type IdxTransactionManagerConstructor = TransactionManagerConstructor<IdxTransactionManagerInterface>;\n\nexport interface OktaAuthIdxInterface\n<\n M extends IdxTransactionMeta = IdxTransactionMeta,\n S extends IdxStorageManagerInterface<M> = IdxStorageManagerInterface<M>,\n O extends OktaAuthIdxOptions = OktaAuthIdxOptions,\n TM extends IdxTransactionManagerInterface = IdxTransactionManagerInterface\n>\n extends OktaAuthOAuthInterface<M, S, O, TM>\n{\n idx: IdxAPI;\n}\n"],"mappings":";;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IAwCYA,S;;;WAAAA,S;EAAAA,S;EAAAA,S;EAAAA,S;EAAAA,S;EAAAA,S;GAAAA,S,yBAAAA,S;;IAQAC,gB;;;WAAAA,gB;EAAAA,gB;EAAAA,gB;EAAAA,gB;EAAAA,gB;EAAAA,gB;EAAAA,gB;EAAAA,gB;GAAAA,gB,gCAAAA,gB;;IAkDAC,U;;;WAAAA,U;EAAAA,U;EAAAA,U;EAAAA,U;EAAAA,U;GAAAA,U,0BAAAA,U;;AAsCL,SAASC,eAAT,CAAyBC,GAAzB,EAAyD;EAC9D,OAAOA,GAAG,KAAKA,GAAG,CAACC,GAAJ,IAAWD,GAAG,CAACE,EAApB,CAAV;AACD"}
1
+ {"version":3,"file":"api.js","names":["IdxStatus","AuthenticatorKey","IdxFeature","isAuthenticator","obj","key","id"],"sources":["../../../../lib/idx/types/api.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 { APIError } from '../../errors/types';\nimport {\n OktaAuthOAuthInterface,\n Tokens,\n TransactionManagerConstructor,\n TransactionManagerInterface\n} from '../../oidc/types';\nimport { FlowIdentifier } from './FlowIdentifier';\nimport {\n IdxActions,\n IdxAuthenticator,\n IdxContext,\n IdxForm,\n IdxMessage,\n IdxOption,\n IdxRemediation,\n IdxResponse,\n RawIdxResponse,\n IdxActionParams,\n IdpConfig,\n IdxToPersist,\n} from './idx-js';\nimport {\n AccountUnlockOptions,\n AuthenticationOptions,\n CancelOptions,\n InteractOptions,\n IntrospectOptions,\n OktaAuthIdxOptions,\n PasswordRecoveryOptions,\n ProceedOptions,\n RegistrationOptions,\n StartOptions,\n IdxTransactionMetaOptions\n} from './options';\nimport { IdxTransactionMeta } from './meta';\nimport { IdxStorageManagerInterface, SavedIdxResponse } from './storage';\n\nexport enum IdxStatus {\n SUCCESS = 'SUCCESS',\n PENDING = 'PENDING',\n FAILURE = 'FAILURE',\n TERMINAL = 'TERMINAL',\n CANCELED = 'CANCELED',\n}\n\nexport enum AuthenticatorKey {\n OKTA_PASSWORD = 'okta_password',\n OKTA_EMAIL = 'okta_email',\n PHONE_NUMBER = 'phone_number',\n GOOGLE_AUTHENTICATOR = 'google_otp',\n SECURITY_QUESTION = 'security_question',\n OKTA_VERIFY = 'okta_verify',\n WEBAUTHN = 'webauthn',\n}\n\nexport type Input = {\n name: string;\n key?: string;\n type?: string;\n label?: string;\n value?: string | {form: IdxForm} | Input[];\n minLength?: number;\n maxLength?: number;\n secret?: boolean;\n required?: boolean;\n options?: IdxOption[];\n mutable?: boolean;\n visible?: boolean;\n}\n\n\nexport interface IdxPollOptions {\n required?: boolean;\n refresh?: number;\n}\n\nexport type NextStep = {\n name: string;\n authenticator?: IdxAuthenticator;\n canSkip?: boolean;\n canResend?: boolean;\n inputs?: Input[];\n poll?: IdxPollOptions;\n authenticatorEnrollments?: IdxAuthenticator[];\n // eslint-disable-next-line no-use-before-define\n action?: (params?: IdxActionParams) => Promise<IdxTransaction>;\n idp?: IdpConfig;\n href?: string;\n relatesTo?: {\n type?: string;\n value: IdxAuthenticator;\n };\n refresh?: number;\n}\n\nexport enum IdxFeature {\n PASSWORD_RECOVERY = 'recover-password',\n REGISTRATION = 'enroll-profile',\n SOCIAL_IDP = 'redirect-idp',\n ACCOUNT_UNLOCK = 'unlock-account',\n}\n\n\nexport interface IdxTransaction {\n status: IdxStatus;\n tokens?: Tokens;\n nextStep?: NextStep;\n messages?: IdxMessage[];\n error?: APIError | IdxResponse;\n meta?: IdxTransactionMeta;\n enabledFeatures?: IdxFeature[];\n availableSteps?: NextStep[];\n requestDidSucceed?: boolean;\n stepUp?: boolean;\n \n // from idx-js, used by signin widget\n proceed: (remediationName: string, params: unknown) => Promise<IdxResponse>;\n neededToProceed: IdxRemediation[];\n rawIdxState: RawIdxResponse;\n interactionCode?: string;\n actions: IdxActions;\n context: IdxContext;\n}\n\n\nexport type Authenticator = {\n id?: string;\n key?: string;\n methodType?: string;\n phoneNumber?: string;\n channel?: string;\n};\n\nexport function isAuthenticator(obj: any): obj is Authenticator {\n return obj && (obj.key || obj.id);\n}\n\nexport interface RemediationResponse {\n idxResponse: IdxResponse;\n nextStep?: NextStep;\n messages?: IdxMessage[];\n terminal?: boolean;\n canceled?: boolean;\n}\n\nexport interface InteractResponse {\n state?: string;\n interactionHandle: string;\n meta: IdxTransactionMeta;\n}\n\nexport interface EmailVerifyCallbackResponse {\n state: string;\n otp: string;\n}\n\nexport interface IdxAPI {\n // lowest level api\n interact: (options?: InteractOptions) => Promise<InteractResponse>;\n introspect: (options?: IntrospectOptions) => Promise<IdxResponse>;\n makeIdxResponse: (rawIdxResponse: RawIdxResponse, toPersist: IdxToPersist, requestDidSucceed: boolean) => IdxResponse;\n\n // flow entrypoints\n authenticate: (options?: AuthenticationOptions) => Promise<IdxTransaction>;\n register: (options?: RegistrationOptions) => Promise<IdxTransaction>;\n recoverPassword: (options?: PasswordRecoveryOptions) => Promise<IdxTransaction>;\n unlockAccount: (options?: AccountUnlockOptions) => Promise<IdxTransaction>;\n poll: (options?: IdxPollOptions) => Promise<IdxTransaction>;\n\n // flow control\n start: (options?: StartOptions) => Promise<IdxTransaction>;\n canProceed(options?: ProceedOptions): boolean;\n proceed: (options?: ProceedOptions) => Promise<IdxTransaction>;\n cancel: (options?: CancelOptions) => Promise<IdxTransaction>;\n getFlow(): FlowIdentifier | undefined;\n setFlow(flow: FlowIdentifier): void;\n\n // call `start` instead of `startTransaction`. `startTransaction` will be removed in next major version (7.0)\n startTransaction: (options?: StartOptions) => Promise<IdxTransaction>;\n\n // redirect callbacks\n isInteractionRequired: (hashOrSearch?: string) => boolean;\n isInteractionRequiredError: (error: Error) => boolean; \n handleInteractionCodeRedirect: (url: string) => Promise<void>;\n isEmailVerifyCallback: (search: string) => boolean;\n parseEmailVerifyCallback: (search: string) => EmailVerifyCallbackResponse;\n handleEmailVerifyCallback: (search: string) => Promise<IdxTransaction | undefined>;\n isEmailVerifyCallbackError: (error: Error) => boolean;\n\n // transaction meta\n getSavedTransactionMeta: (options?: IdxTransactionMetaOptions) => IdxTransactionMeta | undefined;\n createTransactionMeta: (options?: IdxTransactionMetaOptions) => Promise<IdxTransactionMeta>;\n getTransactionMeta: (options?: IdxTransactionMetaOptions) => Promise<IdxTransactionMeta>;\n saveTransactionMeta: (meta: unknown) => void;\n clearTransactionMeta: () => void;\n isTransactionMetaValid: (meta: unknown) => boolean;\n}\n\nexport interface IdxTransactionManagerInterface extends TransactionManagerInterface {\n saveIdxResponse(data: SavedIdxResponse): void;\n loadIdxResponse(options?: IntrospectOptions): SavedIdxResponse | null;\n clearIdxResponse(): void;\n}\n\nexport type IdxTransactionManagerConstructor = TransactionManagerConstructor<IdxTransactionManagerInterface>;\n\nexport interface OktaAuthIdxInterface\n<\n M extends IdxTransactionMeta = IdxTransactionMeta,\n S extends IdxStorageManagerInterface<M> = IdxStorageManagerInterface<M>,\n O extends OktaAuthIdxOptions = OktaAuthIdxOptions,\n TM extends IdxTransactionManagerInterface = IdxTransactionManagerInterface\n>\n extends OktaAuthOAuthInterface<M, S, O, TM>\n{\n idx: IdxAPI;\n}\n"],"mappings":";;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAVA,IAkDYA,SAAS;AAAA;AAAA,WAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;AAAA,GAATA,SAAS,yBAATA,SAAS;AAAA,IAQTC,gBAAgB;AAAA;AAAA,WAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;AAAA,GAAhBA,gBAAgB,gCAAhBA,gBAAgB;AAAA,IAkDhBC,UAAU;AAAA;AAAA,WAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;AAAA,GAAVA,UAAU,0BAAVA,UAAU;AAsCf,SAASC,eAAe,CAACC,GAAQ,EAAwB;EAC9D,OAAOA,GAAG,KAAKA,GAAG,CAACC,GAAG,IAAID,GAAG,CAACE,EAAE,CAAC;AACnC"}
@@ -2,9 +2,7 @@
2
2
 
3
3
  exports.isIdxResponse = isIdxResponse;
4
4
  exports.isRawIdxResponse = isRawIdxResponse;
5
-
6
5
  /* eslint-disable no-use-before-define */
7
-
8
6
  /*!
9
7
  * Copyright (c) 2015-present, Okta, Inc. and/or its affiliates. All rights reserved.
10
8
  * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
@@ -16,12 +14,14 @@ exports.isRawIdxResponse = isRawIdxResponse;
16
14
  *
17
15
  * See the License for the specific language governing permissions and limitations under the License.
18
16
  */
17
+
19
18
  // TODO: remove when idx-js provides type information
19
+
20
20
  // JSON response from the server
21
+
21
22
  function isRawIdxResponse(obj) {
22
23
  return obj && obj.version;
23
24
  }
24
-
25
25
  function isIdxResponse(obj) {
26
26
  return obj && isRawIdxResponse(obj.rawIdxState);
27
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"idx-js.js","names":["isRawIdxResponse","obj","version","isIdxResponse","rawIdxState"],"sources":["../../../../lib/idx/types/idx-js.ts"],"sourcesContent":["/* eslint-disable no-use-before-define */\n/*!\n * Copyright (c) 2015-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * \n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { Input } from './api';\n\n\n// TODO: remove when idx-js provides type information\n\nexport interface ChallengeData {\n challenge: string; \n userVerification: string; \n extensions?: {\n appid: string;\n };\n}\nexport interface ActivationData {\n challenge: string;\n rp: {\n name: string;\n };\n user: {\n id: string;\n name: string;\n displayName: string;\n };\n pubKeyCredParams: {\n type: string;\n alg: number;\n }[];\n attestation?: string;\n authenticatorSelection?: {\n userVerification?: string;\n authenticatorAttachment?: string;\n requireResidentKey?: boolean;\n residentKey?: string;\n };\n excludeCredentials?: {\n id: string;\n type: string;\n }[];\n}\nexport interface IdxAuthenticatorMethod {\n type: string;\n}\nexport interface IdxAuthenticator {\n displayName: string;\n id: string;\n key: string;\n methods: IdxAuthenticatorMethod[];\n type: string;\n settings?: {\n complexity?: unknown;\n age?: unknown;\n };\n contextualData?: {\n enrolledQuestion?: {\n question: string;\n questionKey: string;\n };\n qrcode?: { \n href: string; \n method: string; \n type: string; \n };\n sharedSecret?: string;\n questions?: {\n questionKey: string;\n question: string;\n }[];\n questionKeys?: string[];\n selectedChannel?: string;\n activationData?: ActivationData;\n challengeData?: ChallengeData;\n };\n credentialId?: string;\n enrollmentId?: string;\n profile?: Record<string, unknown>;\n resend?: Record<string, unknown>;\n poll?: Record<string, unknown>;\n recover?: Record<string, unknown>;\n}\n\nexport interface IdxForm {\n value: IdxRemediationValue[];\n}\n\nexport interface IdxOption {\n value: string | {form: IdxForm} | Input[];\n label: string;\n relatesTo?: IdxAuthenticator;\n}\n\nexport interface IdpConfig {\n id: string;\n name: string;\n}\n\nexport interface IdxRemediationValueForm {\n form: IdxForm;\n}\n\nexport interface IdxRemediationValue {\n name: string;\n type?: string;\n required?: boolean;\n secret?: boolean;\n visible?: boolean;\n mutable?: boolean;\n value?: string | IdxRemediationValueForm;\n label?: string;\n form?: IdxForm;\n options?: IdxOption[];\n messages?: IdxMessages;\n minLength?: number;\n maxLength?: number;\n relatesTo?: {\n type?: string;\n value: IdxAuthenticator;\n };\n}\n\nexport interface IdxRemediation {\n name: string;\n label?: string;\n value?: IdxRemediationValue[];\n relatesTo?: {\n type?: string;\n value: IdxAuthenticator;\n };\n idp?: IdpConfig;\n href?: string;\n method?: string;\n type?: string;\n accepts?: string;\n produces?: string;\n refresh?: number;\n rel?: string[];\n action?: (payload?: IdxActionParams) => Promise<IdxResponse>;\n}\n\nexport interface IdxContext {\n version: string;\n stateHandle: string;\n expiresAt: string;\n intent: string;\n currentAuthenticator: {\n type: string;\n value: IdxAuthenticator;\n };\n authenticators: {\n type: string;\n value: IdxAuthenticator[];\n };\n authenticatorEnrollments: {\n type: string;\n value: IdxAuthenticator[];\n };\n enrollmentAuthenticator: {\n type: string;\n value: IdxAuthenticator;\n };\n user?: {\n type: string;\n value: Record<string, unknown>;\n };\n app: {\n type: string;\n value: Record<string, unknown>;\n };\n messages?: IdxMessages;\n success?: IdxRemediation;\n failure?: IdxRemediation;\n}\n\nexport interface IdxMessage {\n message: string;\n class: string;\n i18n: {\n key: string;\n params?: unknown[];\n };\n}\n\nexport interface IdxMessages {\n type: 'array';\n value: IdxMessage[];\n}\n\n// JSON response from the server\nexport interface RawIdxResponse {\n version: string;\n stateHandle: string;\n intent?: string;\n expiresAt?: string;\n remediation?: {\n type: 'array';\n value: IdxRemediation[];\n };\n messages?: IdxMessages;\n success?: boolean;\n successWithInteractionCode?: IdxRemediation;\n currentAuthenticator?: {\n type: string;\n value: IdxAuthenticator;\n };\n currentAuthenticatorEnrollment?: {\n type: string;\n value: IdxAuthenticator;\n };\n}\n\nexport function isRawIdxResponse(obj: any): obj is RawIdxResponse {\n return obj && obj.version;\n}\n\nexport interface IdxActionParams {\n [key: string]: string | boolean | number | object;\n}\n\nexport interface IdxActions {\n [key: string]: (params?: IdxActionParams) => Promise<IdxResponse>;\n}\n\nexport interface IdxToPersist {\n interactionHandle?: string;\n withCredentials?: boolean;\n}\n\nexport interface IdxActionFunction {\n (params: IdxActionParams): Promise<IdxResponse>;\n neededParams?: Array<Array<IdxRemediationValue>>;\n}\n\nexport interface IdxResponse {\n proceed: (remediationName: string, params: unknown) => Promise<IdxResponse>;\n neededToProceed: IdxRemediation[];\n rawIdxState: RawIdxResponse;\n interactionCode?: string;\n actions: IdxActions;\n toPersist: IdxToPersist;\n context?: IdxContext;\n requestDidSucceed?: boolean;\n stepUp?: boolean;\n}\n\nexport function isIdxResponse(obj: any): obj is IdxResponse {\n return obj && isRawIdxResponse(obj.rawIdxState);\n}\n"],"mappings":";;;;;AAAA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAKA;AAsLA;AAuBO,SAASA,gBAAT,CAA0BC,GAA1B,EAA2D;EAChE,OAAOA,GAAG,IAAIA,GAAG,CAACC,OAAlB;AACD;;AAgCM,SAASC,aAAT,CAAuBF,GAAvB,EAAqD;EAC1D,OAAOA,GAAG,IAAID,gBAAgB,CAACC,GAAG,CAACG,WAAL,CAA9B;AACD"}
1
+ {"version":3,"file":"idx-js.js","names":["isRawIdxResponse","obj","version","isIdxResponse","rawIdxState"],"sources":["../../../../lib/idx/types/idx-js.ts"],"sourcesContent":["/* eslint-disable no-use-before-define */\n/*!\n * Copyright (c) 2015-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * \n * See the License for the specific language governing permissions and limitations under the License.\n */\n\nimport { Input } from './api';\n\n\n// TODO: remove when idx-js provides type information\n\nexport interface ChallengeData {\n challenge: string; \n userVerification: string; \n extensions?: {\n appid: string;\n };\n}\nexport interface ActivationData {\n challenge: string;\n rp: {\n name: string;\n };\n user: {\n id: string;\n name: string;\n displayName: string;\n };\n pubKeyCredParams: {\n type: string;\n alg: number;\n }[];\n attestation?: string;\n authenticatorSelection?: {\n userVerification?: string;\n authenticatorAttachment?: string;\n requireResidentKey?: boolean;\n residentKey?: string;\n };\n excludeCredentials?: {\n id: string;\n type: string;\n }[];\n}\nexport interface IdxAuthenticatorMethod {\n type: string;\n}\nexport interface IdxAuthenticator {\n displayName: string;\n id: string;\n key: string;\n methods: IdxAuthenticatorMethod[];\n type: string;\n settings?: {\n complexity?: unknown;\n age?: unknown;\n };\n contextualData?: {\n enrolledQuestion?: {\n question: string;\n questionKey: string;\n };\n qrcode?: { \n href: string; \n method: string; \n type: string; \n };\n sharedSecret?: string;\n questions?: {\n questionKey: string;\n question: string;\n }[];\n questionKeys?: string[];\n selectedChannel?: string;\n activationData?: ActivationData;\n challengeData?: ChallengeData;\n };\n credentialId?: string;\n enrollmentId?: string;\n profile?: Record<string, unknown>;\n resend?: Record<string, unknown>;\n poll?: Record<string, unknown>;\n recover?: Record<string, unknown>;\n}\n\nexport interface IdxForm {\n value: IdxRemediationValue[];\n}\n\nexport interface IdxOption {\n value: string | {form: IdxForm} | Input[];\n label: string;\n relatesTo?: IdxAuthenticator;\n}\n\nexport interface IdpConfig {\n id: string;\n name: string;\n}\n\nexport interface IdxRemediationValueForm {\n form: IdxForm;\n}\n\nexport interface IdxRemediationValue {\n name: string;\n type?: string;\n required?: boolean;\n secret?: boolean;\n visible?: boolean;\n mutable?: boolean;\n value?: string | IdxRemediationValueForm;\n label?: string;\n form?: IdxForm;\n options?: IdxOption[];\n messages?: IdxMessages;\n minLength?: number;\n maxLength?: number;\n relatesTo?: {\n type?: string;\n value: IdxAuthenticator;\n };\n}\n\nexport interface IdxRemediation {\n name: string;\n label?: string;\n value?: IdxRemediationValue[];\n relatesTo?: {\n type?: string;\n value: IdxAuthenticator;\n };\n idp?: IdpConfig;\n href?: string;\n method?: string;\n type?: string;\n accepts?: string;\n produces?: string;\n refresh?: number;\n rel?: string[];\n action?: (payload?: IdxActionParams) => Promise<IdxResponse>;\n}\n\nexport interface IdxContext {\n version: string;\n stateHandle: string;\n expiresAt: string;\n intent: string;\n currentAuthenticator: {\n type: string;\n value: IdxAuthenticator;\n };\n authenticators: {\n type: string;\n value: IdxAuthenticator[];\n };\n authenticatorEnrollments: {\n type: string;\n value: IdxAuthenticator[];\n };\n enrollmentAuthenticator: {\n type: string;\n value: IdxAuthenticator;\n };\n user?: {\n type: string;\n value: Record<string, unknown>;\n };\n app: {\n type: string;\n value: Record<string, unknown>;\n };\n messages?: IdxMessages;\n success?: IdxRemediation;\n failure?: IdxRemediation;\n}\n\nexport interface IdxMessage {\n message: string;\n class: string;\n i18n: {\n key: string;\n params?: unknown[];\n };\n}\n\nexport interface IdxMessages {\n type: 'array';\n value: IdxMessage[];\n}\n\n// JSON response from the server\nexport interface RawIdxResponse {\n version: string;\n stateHandle: string;\n intent?: string;\n expiresAt?: string;\n remediation?: {\n type: 'array';\n value: IdxRemediation[];\n };\n messages?: IdxMessages;\n success?: boolean;\n successWithInteractionCode?: IdxRemediation;\n currentAuthenticator?: {\n type: string;\n value: IdxAuthenticator;\n };\n currentAuthenticatorEnrollment?: {\n type: string;\n value: IdxAuthenticator;\n };\n}\n\nexport function isRawIdxResponse(obj: any): obj is RawIdxResponse {\n return obj && obj.version;\n}\n\nexport interface IdxActionParams {\n [key: string]: string | boolean | number | object;\n}\n\nexport interface IdxActions {\n [key: string]: (params?: IdxActionParams) => Promise<IdxResponse>;\n}\n\nexport interface IdxToPersist {\n interactionHandle?: string;\n withCredentials?: boolean;\n}\n\nexport interface IdxActionFunction {\n (params: IdxActionParams): Promise<IdxResponse>;\n neededParams?: Array<Array<IdxRemediationValue>>;\n}\n\nexport interface IdxResponse {\n proceed: (remediationName: string, params: unknown) => Promise<IdxResponse>;\n neededToProceed: IdxRemediation[];\n rawIdxState: RawIdxResponse;\n interactionCode?: string;\n actions: IdxActions;\n toPersist: IdxToPersist;\n context?: IdxContext;\n requestDidSucceed?: boolean;\n stepUp?: boolean;\n}\n\nexport function isIdxResponse(obj: any): obj is IdxResponse {\n return obj && isRawIdxResponse(obj.rawIdxState);\n}\n"],"mappings":";;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAKA;;AAsLA;;AAuBO,SAASA,gBAAgB,CAACC,GAAQ,EAAyB;EAChE,OAAOA,GAAG,IAAIA,GAAG,CAACC,OAAO;AAC3B;AAgCO,SAASC,aAAa,CAACF,GAAQ,EAAsB;EAC1D,OAAOA,GAAG,IAAID,gBAAgB,CAACC,GAAG,CAACG,WAAW,CAAC;AACjD"}
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
 
3
3
  var _api = require("./api");
4
-
5
4
  Object.keys(_api).forEach(function (key) {
6
5
  if (key === "default" || key === "__esModule") return;
7
6
  if (key in exports && exports[key] === _api[key]) return;
@@ -12,9 +11,7 @@ Object.keys(_api).forEach(function (key) {
12
11
  }
13
12
  });
14
13
  });
15
-
16
14
  var _options = require("./options");
17
-
18
15
  Object.keys(_options).forEach(function (key) {
19
16
  if (key === "default" || key === "__esModule") return;
20
17
  if (key in exports && exports[key] === _options[key]) return;
@@ -25,9 +22,7 @@ Object.keys(_options).forEach(function (key) {
25
22
  }
26
23
  });
27
24
  });
28
-
29
25
  var _meta = require("./meta");
30
-
31
26
  Object.keys(_meta).forEach(function (key) {
32
27
  if (key === "default" || key === "__esModule") return;
33
28
  if (key in exports && exports[key] === _meta[key]) return;
@@ -38,9 +33,7 @@ Object.keys(_meta).forEach(function (key) {
38
33
  }
39
34
  });
40
35
  });
41
-
42
36
  var _storage = require("./storage");
43
-
44
37
  Object.keys(_storage).forEach(function (key) {
45
38
  if (key === "default" || key === "__esModule") return;
46
39
  if (key in exports && exports[key] === _storage[key]) return;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../../lib/idx/types/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 * from './api';\nexport * from './options';\nexport type {\n IdxMessage,\n IdxMessages,\n ChallengeData,\n ActivationData,\n IdxResponse,\n IdxContext,\n RawIdxResponse,\n IdxRemediation,\n IdxAuthenticator,\n IdxActionParams,\n} from './idx-js';\nexport * from './meta';\nexport type { FlowIdentifier } from './FlowIdentifier';\nexport type { WebauthnEnrollValues } from '../authenticator/WebauthnEnrollment';\nexport type { WebauthnVerificationValues } from '../authenticator/WebauthnVerification';\nexport * from './storage';\n"],"mappings":";;AAaA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AAaA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AAIA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../lib/idx/types/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 * from './api';\nexport * from './options';\nexport type {\n IdxMessage,\n IdxMessages,\n ChallengeData,\n ActivationData,\n IdxResponse,\n IdxContext,\n RawIdxResponse,\n IdxRemediation,\n IdxAuthenticator,\n IdxActionParams,\n} from './idx-js';\nexport * from './meta';\nexport type { FlowIdentifier } from './FlowIdentifier';\nexport type { WebauthnEnrollValues } from '../authenticator/WebauthnEnrollment';\nexport type { WebauthnVerificationValues } from '../authenticator/WebauthnVerification';\nexport * from './storage';\n"],"mappings":";;AAaA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AAaA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AAIA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"meta.js","names":[],"sources":["../../../../lib/idx/types/meta.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 { PKCETransactionMeta } from '../../oidc/types/meta';\nimport { FlowIdentifier } from './FlowIdentifier';\n\nexport interface IdxTransactionMeta extends PKCETransactionMeta {\n interactionHandle?: string;\n remediations?: string[];\n flow?: FlowIdentifier;\n withCredentials?: boolean;\n activationToken?: string;\n recoveryToken?: string;\n maxAge?: string | number;\n}\n\n"],"mappings":""}
1
+ {"version":3,"file":"meta.js","names":[],"sources":["../../../../lib/idx/types/meta.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 { PKCETransactionMeta } from '../../oidc/types/meta';\nimport { FlowIdentifier } from './FlowIdentifier';\n\nexport interface IdxTransactionMeta extends PKCETransactionMeta {\n interactionHandle?: string;\n remediations?: string[];\n flow?: FlowIdentifier;\n withCredentials?: boolean;\n activationToken?: string;\n recoveryToken?: string;\n maxAge?: string | number;\n acrValues?: string;\n}\n\n"],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"options.js","names":[],"sources":["../../../../lib/idx/types/options.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 { RemediationFlow } from '../flow';\nimport { RemediateAction } from '../remediate';\nimport { FlowIdentifier } from './FlowIdentifier';\nimport {\n AuthenticatorVerificationDataValues,\n EnrollProfileValues,\n ResetAuthenticatorValues,\n SelectAuthenticatorUnlockAccountValues,\n SkipValues,\n EnrollPollValues as EnrollPollOptions,\n SelectEnrollmentChannelValues as SelectEnrollmentChannelOptions,\n IdentifyValues,\n SelectAuthenticatorAuthenticateValues,\n ChallengeAuthenticatorValues,\n ReEnrollAuthenticatorValues,\n AuthenticatorEnrollmentDataValues,\n SelectAuthenticatorEnrollValues,\n EnrollAuthenticatorValues,\n} from '../remediators';\nimport { IdxTransactionMeta } from './meta';\nimport { OktaAuthCoreOptions } from '../../core/types';\nimport { TransactionMetaOptions } from '../../oidc/types';\nimport { OktaAuthOptionsConstructor } from '../../base/types';\n\nexport interface IdxOptions {\n flow?: FlowIdentifier;\n exchangeCodeForTokens?: boolean;\n autoRemediate?: boolean;\n step?: string;\n withCredentials?: boolean;\n}\n\nexport interface InteractOptions extends IdxOptions {\n state?: string;\n scopes?: string[];\n codeChallenge?: string;\n codeChallengeMethod?: string;\n activationToken?: string;\n recoveryToken?: string;\n clientSecret?: string;\n maxAge?: string | number;\n nonce?: string;\n}\n\nexport interface IntrospectOptions extends IdxOptions {\n interactionHandle?: string;\n stateHandle?: string;\n version?: string;\n}\n\nexport interface RemediateOptions extends IdxOptions {\n remediators?: RemediationFlow;\n actions?: RemediateAction[];\n useGenericRemediator?: boolean; // beta\n}\n\nexport interface RunOptions extends RemediateOptions, InteractOptions, IntrospectOptions {}\n\nexport interface AuthenticationOptions extends\n RunOptions, \n IdentifyValues,\n SelectAuthenticatorAuthenticateValues,\n SelectAuthenticatorEnrollValues,\n ChallengeAuthenticatorValues,\n ReEnrollAuthenticatorValues,\n AuthenticatorEnrollmentDataValues,\n EnrollAuthenticatorValues\n{}\n\nexport interface RegistrationOptions extends\n RunOptions,\n IdentifyValues,\n EnrollProfileValues,\n SelectAuthenticatorEnrollValues,\n EnrollAuthenticatorValues,\n AuthenticatorEnrollmentDataValues,\n SkipValues\n{}\n\nexport interface PasswordRecoveryOptions extends \n RunOptions,\n IdentifyValues,\n SelectAuthenticatorAuthenticateValues,\n ChallengeAuthenticatorValues,\n ResetAuthenticatorValues,\n AuthenticatorVerificationDataValues,\n ReEnrollAuthenticatorValues\n{}\n\nexport interface AccountUnlockOptions extends\n RunOptions,\n IdentifyValues,\n SelectAuthenticatorUnlockAccountValues,\n SelectAuthenticatorAuthenticateValues,\n ChallengeAuthenticatorValues,\n AuthenticatorVerificationDataValues\n{}\n\nexport interface ProceedOptions extends\n AuthenticationOptions,\n RegistrationOptions,\n PasswordRecoveryOptions,\n AccountUnlockOptions,\n EnrollPollOptions,\n SelectEnrollmentChannelOptions\n{}\n\nexport type CancelOptions = IdxOptions\n\nexport type StartOptions = RunOptions\n\nexport interface IdxTransactionMetaOptions\n extends TransactionMetaOptions,\n Pick<IdxTransactionMeta,\n 'state' |\n 'codeChallenge' |\n 'codeChallengeMethod' |\n 'codeVerifier' |\n 'flow' |\n 'activationToken' |\n 'recoveryToken'\n >\n{}\n\nexport interface OktaAuthIdxOptions \n extends OktaAuthCoreOptions,\n Pick<IdxTransactionMeta,\n 'flow' |\n 'activationToken' |\n 'recoveryToken'\n >\n{\n // BETA WARNING: configs in this section are subject to change without a breaking change notice\n idx?: Pick<RunOptions,\n 'useGenericRemediator' |\n 'exchangeCodeForTokens'\n >;\n}\n\nexport type OktaAuthIdxOptionsConstructor = OktaAuthOptionsConstructor<OktaAuthIdxOptions>;\n"],"mappings":""}
1
+ {"version":3,"file":"options.js","names":[],"sources":["../../../../lib/idx/types/options.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 { RemediationFlow } from '../flow';\nimport { RemediateAction } from '../remediate';\nimport { FlowIdentifier } from './FlowIdentifier';\nimport {\n AuthenticatorVerificationDataValues,\n EnrollProfileValues,\n ResetAuthenticatorValues,\n SelectAuthenticatorUnlockAccountValues,\n SkipValues,\n EnrollPollValues as EnrollPollOptions,\n SelectEnrollmentChannelValues as SelectEnrollmentChannelOptions,\n IdentifyValues,\n SelectAuthenticatorAuthenticateValues,\n ChallengeAuthenticatorValues,\n ReEnrollAuthenticatorValues,\n AuthenticatorEnrollmentDataValues,\n SelectAuthenticatorEnrollValues,\n EnrollAuthenticatorValues,\n} from '../remediators';\nimport { IdxTransactionMeta } from './meta';\nimport { OktaAuthCoreOptions } from '../../core/types';\nimport { TransactionMetaOptions } from '../../oidc/types';\nimport { OktaAuthOptionsConstructor } from '../../base/types';\n\nexport interface IdxOptions {\n flow?: FlowIdentifier;\n exchangeCodeForTokens?: boolean;\n autoRemediate?: boolean;\n step?: string;\n withCredentials?: boolean;\n}\n\nexport interface InteractOptions extends IdxOptions {\n state?: string;\n scopes?: string[];\n codeChallenge?: string;\n codeChallengeMethod?: string;\n activationToken?: string;\n recoveryToken?: string;\n clientSecret?: string;\n maxAge?: string | number;\n acrValues?: string;\n nonce?: string;\n}\n\nexport interface IntrospectOptions extends IdxOptions {\n interactionHandle?: string;\n stateHandle?: string;\n version?: string;\n}\n\nexport interface RemediateOptions extends IdxOptions {\n remediators?: RemediationFlow;\n actions?: RemediateAction[];\n useGenericRemediator?: boolean; // beta\n}\n\nexport interface RunOptions extends RemediateOptions, InteractOptions, IntrospectOptions {}\n\nexport interface AuthenticationOptions extends\n RunOptions, \n IdentifyValues,\n SelectAuthenticatorAuthenticateValues,\n SelectAuthenticatorEnrollValues,\n ChallengeAuthenticatorValues,\n ReEnrollAuthenticatorValues,\n AuthenticatorEnrollmentDataValues,\n EnrollAuthenticatorValues\n{}\n\nexport interface RegistrationOptions extends\n RunOptions,\n IdentifyValues,\n EnrollProfileValues,\n SelectAuthenticatorEnrollValues,\n EnrollAuthenticatorValues,\n AuthenticatorEnrollmentDataValues,\n SkipValues\n{}\n\nexport interface PasswordRecoveryOptions extends \n RunOptions,\n IdentifyValues,\n SelectAuthenticatorAuthenticateValues,\n ChallengeAuthenticatorValues,\n ResetAuthenticatorValues,\n AuthenticatorVerificationDataValues,\n ReEnrollAuthenticatorValues\n{}\n\nexport interface AccountUnlockOptions extends\n RunOptions,\n IdentifyValues,\n SelectAuthenticatorUnlockAccountValues,\n SelectAuthenticatorAuthenticateValues,\n ChallengeAuthenticatorValues,\n AuthenticatorVerificationDataValues\n{}\n\nexport interface ProceedOptions extends\n AuthenticationOptions,\n RegistrationOptions,\n PasswordRecoveryOptions,\n AccountUnlockOptions,\n EnrollPollOptions,\n SelectEnrollmentChannelOptions\n{}\n\nexport type CancelOptions = IdxOptions\n\nexport type StartOptions = RunOptions\n\nexport interface IdxTransactionMetaOptions\n extends TransactionMetaOptions,\n Pick<IdxTransactionMeta,\n 'state' |\n 'codeChallenge' |\n 'codeChallengeMethod' |\n 'codeVerifier' |\n 'flow' |\n 'activationToken' |\n 'recoveryToken'\n >\n{}\n\nexport interface OktaAuthIdxOptions \n extends OktaAuthCoreOptions,\n Pick<IdxTransactionMeta,\n 'flow' |\n 'activationToken' |\n 'recoveryToken'\n >\n{\n // BETA WARNING: configs in this section are subject to change without a breaking change notice\n idx?: Pick<RunOptions,\n 'useGenericRemediator' |\n 'exchangeCodeForTokens'\n >;\n}\n\nexport type OktaAuthIdxOptionsConstructor = OktaAuthOptionsConstructor<OktaAuthIdxOptions>;\n"],"mappings":""}
@@ -1,17 +1,11 @@
1
1
  "use strict";
2
2
 
3
3
  exports.unlockAccount = unlockAccount;
4
-
5
4
  var _run = require("./run");
6
-
7
5
  var _transactionMeta = require("./transactionMeta");
8
-
9
6
  var _startTransaction = require("./startTransaction");
10
-
11
7
  var _errors = require("../errors");
12
-
13
8
  var _types = require("./types");
14
-
15
9
  /*!
16
10
  * Copyright (c) 2015-present, Okta, Inc. and/or its affiliates. All rights reserved.
17
11
  * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the "License.")
@@ -23,22 +17,24 @@ var _types = require("./types");
23
17
  *
24
18
  * See the License for the specific language governing permissions and limitations under the License.
25
19
  */
20
+
26
21
  async function unlockAccount(authClient, options = {}) {
27
- options.flow = 'unlockAccount'; // Only check at the beginning of the transaction
22
+ options.flow = 'unlockAccount';
28
23
 
24
+ // Only check at the beginning of the transaction
29
25
  if (!(0, _transactionMeta.hasSavedInteractionHandle)(authClient)) {
30
26
  const {
31
27
  enabledFeatures
32
- } = await (0, _startTransaction.startTransaction)(authClient, { ...options,
28
+ } = await (0, _startTransaction.startTransaction)(authClient, {
29
+ ...options,
33
30
  autoRemediate: false
34
31
  });
35
-
36
32
  if (enabledFeatures && !enabledFeatures.includes(_types.IdxFeature.ACCOUNT_UNLOCK)) {
37
33
  throw new _errors.AuthSdkError('Self Service Account Unlock is not supported based on your current org configuration.');
38
34
  }
39
35
  }
40
-
41
- return (0, _run.run)(authClient, { ...options
36
+ return (0, _run.run)(authClient, {
37
+ ...options
42
38
  });
43
39
  }
44
40
  //# sourceMappingURL=unlockAccount.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"unlockAccount.js","names":["unlockAccount","authClient","options","flow","hasSavedInteractionHandle","enabledFeatures","startTransaction","autoRemediate","includes","IdxFeature","ACCOUNT_UNLOCK","AuthSdkError","run"],"sources":["../../../lib/idx/unlockAccount.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 OktaAuthIdxInterface, \n AccountUnlockOptions, \n IdxTransaction,\n IdxFeature,\n} from './types';\n\nexport async function unlockAccount(\n authClient: OktaAuthIdxInterface, options: AccountUnlockOptions = {}\n): Promise<IdxTransaction> {\n options.flow = 'unlockAccount';\n\n // Only check at the beginning of the transaction\n if (!hasSavedInteractionHandle(authClient)) {\n const { enabledFeatures } = await startTransaction(authClient, { ...options, autoRemediate: false });\n if (enabledFeatures && !enabledFeatures.includes(IdxFeature.ACCOUNT_UNLOCK)) {\n throw new AuthSdkError(\n 'Self Service Account Unlock is not supported based on your current org configuration.'\n );\n }\n }\n\n return run(authClient, { ...options });\n}\n"],"mappings":";;;;AAaA;;AACA;;AACA;;AACA;;AACA;;AAjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAcO,eAAeA,aAAf,CACLC,UADK,EAC6BC,OAA6B,GAAG,EAD7D,EAEoB;EACzBA,OAAO,CAACC,IAAR,GAAe,eAAf,CADyB,CAGzB;;EACA,IAAI,CAAC,IAAAC,0CAAA,EAA0BH,UAA1B,CAAL,EAA4C;IAC1C,MAAM;MAAEI;IAAF,IAAsB,MAAM,IAAAC,kCAAA,EAAiBL,UAAjB,EAA6B,EAAE,GAAGC,OAAL;MAAcK,aAAa,EAAE;IAA7B,CAA7B,CAAlC;;IACA,IAAIF,eAAe,IAAI,CAACA,eAAe,CAACG,QAAhB,CAAyBC,iBAAA,CAAWC,cAApC,CAAxB,EAA6E;MAC3E,MAAM,IAAIC,oBAAJ,CACJ,uFADI,CAAN;IAGD;EACF;;EAED,OAAO,IAAAC,QAAA,EAAIX,UAAJ,EAAgB,EAAE,GAAGC;EAAL,CAAhB,CAAP;AACD"}
1
+ {"version":3,"file":"unlockAccount.js","names":["unlockAccount","authClient","options","flow","hasSavedInteractionHandle","enabledFeatures","startTransaction","autoRemediate","includes","IdxFeature","ACCOUNT_UNLOCK","AuthSdkError","run"],"sources":["../../../lib/idx/unlockAccount.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 OktaAuthIdxInterface, \n AccountUnlockOptions, \n IdxTransaction,\n IdxFeature,\n} from './types';\n\nexport async function unlockAccount(\n authClient: OktaAuthIdxInterface, options: AccountUnlockOptions = {}\n): Promise<IdxTransaction> {\n options.flow = 'unlockAccount';\n\n // Only check at the beginning of the transaction\n if (!hasSavedInteractionHandle(authClient)) {\n const { enabledFeatures } = await startTransaction(authClient, { ...options, autoRemediate: false });\n if (enabledFeatures && !enabledFeatures.includes(IdxFeature.ACCOUNT_UNLOCK)) {\n throw new AuthSdkError(\n 'Self Service Account Unlock is not supported based on your current org configuration.'\n );\n }\n }\n\n return run(authClient, { ...options });\n}\n"],"mappings":";;;AAaA;AACA;AACA;AACA;AACA;AAjBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAcO,eAAeA,aAAa,CACjCC,UAAgC,EAAEC,OAA6B,GAAG,CAAC,CAAC,EAC3C;EACzBA,OAAO,CAACC,IAAI,GAAG,eAAe;;EAE9B;EACA,IAAI,CAAC,IAAAC,0CAAyB,EAACH,UAAU,CAAC,EAAE;IAC1C,MAAM;MAAEI;IAAgB,CAAC,GAAG,MAAM,IAAAC,kCAAgB,EAACL,UAAU,EAAE;MAAE,GAAGC,OAAO;MAAEK,aAAa,EAAE;IAAM,CAAC,CAAC;IACpG,IAAIF,eAAe,IAAI,CAACA,eAAe,CAACG,QAAQ,CAACC,iBAAU,CAACC,cAAc,CAAC,EAAE;MAC3E,MAAM,IAAIC,oBAAY,CACpB,uFAAuF,CACxF;IACH;EACF;EAEA,OAAO,IAAAC,QAAG,EAACX,UAAU,EAAE;IAAE,GAAGC;EAAQ,CAAC,CAAC;AACxC"}