@okta/okta-auth-js 6.9.0 → 7.0.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 (1460) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/README.md +76 -41
  3. package/cjs/authn/AuthnTransactionImpl.js +44 -0
  4. package/cjs/authn/AuthnTransactionImpl.js.map +1 -0
  5. package/cjs/authn/api.js +105 -0
  6. package/cjs/authn/api.js.map +1 -0
  7. package/cjs/authn/factory.js +45 -0
  8. package/cjs/authn/factory.js.map +1 -0
  9. package/cjs/authn/index.js +41 -0
  10. package/cjs/authn/index.js.map +1 -0
  11. package/cjs/authn/mixin.js +82 -0
  12. package/cjs/authn/mixin.js.map +1 -0
  13. package/cjs/authn/types.js +2 -0
  14. package/cjs/authn/types.js.map +1 -0
  15. package/cjs/authn/util/flattenEmbedded.js +44 -0
  16. package/cjs/authn/util/flattenEmbedded.js.map +1 -0
  17. package/cjs/authn/util/link2fn.js +108 -0
  18. package/cjs/authn/util/link2fn.js.map +1 -0
  19. package/cjs/authn/util/links2fns.js +47 -0
  20. package/cjs/authn/util/links2fns.js.map +1 -0
  21. package/cjs/authn/util/poll.js +136 -0
  22. package/cjs/authn/util/poll.js.map +1 -0
  23. package/cjs/authn/util/stateToken.js +32 -0
  24. package/cjs/authn/util/stateToken.js.map +1 -0
  25. package/cjs/base/factory.js +47 -0
  26. package/cjs/base/factory.js.map +1 -0
  27. package/cjs/base/index.js +41 -0
  28. package/cjs/base/index.js.map +1 -0
  29. package/cjs/base/options.js +24 -0
  30. package/cjs/base/options.js.map +1 -0
  31. package/cjs/base/types.js +2 -0
  32. package/cjs/base/types.js.map +1 -0
  33. package/cjs/browser/browserStorage.js +12 -35
  34. package/cjs/browser/browserStorage.js.map +1 -1
  35. package/cjs/browser/fingerprint.js +3 -9
  36. package/cjs/browser/fingerprint.js.map +1 -1
  37. package/cjs/clock.js +1 -5
  38. package/cjs/clock.js.map +1 -1
  39. package/cjs/constants.js +1 -7
  40. package/cjs/constants.js.map +1 -1
  41. package/cjs/core/AuthStateManager.js +225 -0
  42. package/cjs/core/AuthStateManager.js.map +1 -0
  43. package/cjs/core/ServiceManager/browser.js +157 -0
  44. package/cjs/core/ServiceManager/browser.js.map +1 -0
  45. package/cjs/core/ServiceManager/index.js +15 -0
  46. package/cjs/core/ServiceManager/index.js.map +1 -0
  47. package/cjs/core/ServiceManager/node.js +42 -0
  48. package/cjs/core/ServiceManager/node.js.map +1 -0
  49. package/cjs/core/factory.js +26 -0
  50. package/cjs/core/factory.js.map +1 -0
  51. package/cjs/core/index.js +93 -0
  52. package/cjs/core/index.js.map +1 -0
  53. package/cjs/core/mixin.js +78 -0
  54. package/cjs/core/mixin.js.map +1 -0
  55. package/cjs/core/options.js +29 -0
  56. package/cjs/core/options.js.map +1 -0
  57. package/cjs/core/storage.js +10 -0
  58. package/cjs/core/storage.js.map +1 -0
  59. package/cjs/{types → core/types}/AuthState.js +0 -0
  60. package/cjs/core/types/AuthState.js.map +1 -0
  61. package/cjs/{types → core/types}/Service.js +0 -0
  62. package/cjs/core/types/Service.js.map +1 -0
  63. package/cjs/{types → core/types}/api.js +0 -0
  64. package/cjs/core/types/api.js.map +1 -0
  65. package/cjs/core/types/index.js +41 -0
  66. package/cjs/core/types/index.js.map +1 -0
  67. package/cjs/crypto/base64.js +1 -7
  68. package/cjs/crypto/base64.js.map +1 -1
  69. package/cjs/crypto/index.js +17 -6
  70. package/cjs/crypto/index.js.map +1 -1
  71. package/cjs/crypto/node.js +4 -10
  72. package/cjs/crypto/node.js.map +1 -1
  73. package/cjs/crypto/oidcHash.js +1 -5
  74. package/cjs/crypto/oidcHash.js.map +1 -1
  75. package/cjs/crypto/types.js +2 -0
  76. package/cjs/crypto/types.js.map +1 -0
  77. package/cjs/crypto/webcrypto.js +1 -3
  78. package/cjs/crypto/webcrypto.js.map +1 -1
  79. package/cjs/errors/AuthApiError.js +1 -1
  80. package/cjs/errors/AuthApiError.js.map +1 -1
  81. package/cjs/errors/AuthPollStopError.js +1 -1
  82. package/cjs/errors/AuthSdkError.js +1 -1
  83. package/cjs/errors/AuthSdkError.js.map +1 -1
  84. package/cjs/errors/CustomError.js +1 -5
  85. package/cjs/errors/CustomError.js.map +1 -1
  86. package/cjs/errors/OAuthError.js +1 -1
  87. package/cjs/errors/index.js +23 -1
  88. package/cjs/errors/index.js.map +1 -1
  89. package/cjs/errors/types.js +2 -0
  90. package/cjs/errors/types.js.map +1 -0
  91. package/cjs/exports/authn.js +55 -0
  92. package/cjs/exports/authn.js.map +1 -0
  93. package/cjs/exports/cdn/authn.js +11 -0
  94. package/cjs/exports/cdn/authn.js.map +1 -0
  95. package/cjs/exports/cdn/core.js +11 -0
  96. package/cjs/exports/cdn/core.js.map +1 -0
  97. package/cjs/exports/cdn/default.js +11 -0
  98. package/cjs/exports/cdn/default.js.map +1 -0
  99. package/cjs/exports/cdn/idx.js +11 -0
  100. package/cjs/exports/cdn/idx.js.map +1 -0
  101. package/cjs/exports/cdn/myaccount.js +11 -0
  102. package/cjs/exports/cdn/myaccount.js.map +1 -0
  103. package/cjs/exports/common.js +141 -0
  104. package/cjs/exports/common.js.map +1 -0
  105. package/cjs/exports/core.js +42 -0
  106. package/cjs/exports/core.js.map +1 -0
  107. package/cjs/exports/default.js +81 -0
  108. package/cjs/exports/default.js.map +1 -0
  109. package/cjs/exports/idx.js +50 -0
  110. package/cjs/exports/idx.js.map +1 -0
  111. package/cjs/exports/myaccount.js +54 -0
  112. package/cjs/exports/myaccount.js.map +1 -0
  113. package/cjs/fetch/fetchRequest.js +7 -25
  114. package/cjs/fetch/fetchRequest.js.map +1 -1
  115. package/cjs/http/OktaUserAgent.js +56 -0
  116. package/cjs/http/OktaUserAgent.js.map +1 -0
  117. package/cjs/http/headers.js.map +1 -1
  118. package/cjs/http/index.js +54 -4
  119. package/cjs/http/index.js.map +1 -1
  120. package/cjs/http/mixin.js +46 -0
  121. package/cjs/http/mixin.js.map +1 -0
  122. package/cjs/http/options.js +36 -0
  123. package/cjs/http/options.js.map +1 -0
  124. package/cjs/http/request.js +4 -10
  125. package/cjs/http/request.js.map +1 -1
  126. package/cjs/http/types.js +2 -0
  127. package/cjs/http/types.js.map +1 -0
  128. package/cjs/idx/IdxTransactionManager.js +85 -0
  129. package/cjs/idx/IdxTransactionManager.js.map +1 -0
  130. package/cjs/idx/authenticate.js +1 -1
  131. package/cjs/idx/authenticate.js.map +1 -1
  132. package/cjs/idx/authenticator/index.js +8 -10
  133. package/cjs/idx/authenticator/index.js.map +1 -1
  134. package/cjs/idx/authenticator/util.js +1 -5
  135. package/cjs/idx/authenticator/util.js.map +1 -1
  136. package/cjs/idx/cancel.js.map +1 -1
  137. package/cjs/idx/emailVerify.js +1 -1
  138. package/cjs/idx/emailVerify.js.map +1 -1
  139. package/cjs/idx/factory/OktaAuthIdx.js +14 -0
  140. package/cjs/idx/factory/OktaAuthIdx.js.map +1 -0
  141. package/cjs/idx/factory/api.js +91 -0
  142. package/cjs/idx/factory/api.js.map +1 -0
  143. package/cjs/idx/factory/index.js +28 -0
  144. package/cjs/idx/factory/index.js.map +1 -0
  145. package/cjs/idx/flow/FlowSpecification.js.map +1 -1
  146. package/cjs/idx/flow/index.js +6 -8
  147. package/cjs/idx/flow/index.js.map +1 -1
  148. package/cjs/idx/handleInteractionCodeRedirect.js +1 -5
  149. package/cjs/idx/handleInteractionCodeRedirect.js.map +1 -1
  150. package/cjs/idx/idxState/index.js +3 -5
  151. package/cjs/idx/idxState/index.js.map +1 -1
  152. package/cjs/idx/idxState/v1/actionParser.js +2 -6
  153. package/cjs/idx/idxState/v1/actionParser.js.map +1 -1
  154. package/cjs/idx/idxState/v1/generateIdxAction.js +5 -10
  155. package/cjs/idx/idxState/v1/generateIdxAction.js.map +1 -1
  156. package/cjs/idx/idxState/v1/idxResponseParser.js +23 -21
  157. package/cjs/idx/idxState/v1/idxResponseParser.js.map +1 -1
  158. package/cjs/idx/idxState/v1/makeIdxState.js +4 -10
  159. package/cjs/idx/idxState/v1/makeIdxState.js.map +1 -1
  160. package/cjs/idx/idxState/v1/remediationParser.js +2 -6
  161. package/cjs/idx/idxState/v1/remediationParser.js.map +1 -1
  162. package/cjs/idx/index.js +85 -3
  163. package/cjs/idx/index.js.map +1 -1
  164. package/cjs/idx/interact.js +2 -2
  165. package/cjs/idx/interact.js.map +1 -1
  166. package/cjs/idx/introspect.js +1 -3
  167. package/cjs/idx/introspect.js.map +1 -1
  168. package/cjs/idx/mixin.js +28 -0
  169. package/cjs/idx/mixin.js.map +1 -0
  170. package/cjs/idx/options.js +32 -0
  171. package/cjs/idx/options.js.map +1 -0
  172. package/cjs/idx/poll.js +3 -13
  173. package/cjs/idx/poll.js.map +1 -1
  174. package/cjs/idx/proceed.js.map +1 -1
  175. package/cjs/idx/recoverPassword.js.map +1 -1
  176. package/cjs/idx/register.js +4 -10
  177. package/cjs/idx/register.js.map +1 -1
  178. package/cjs/idx/remediate.js +46 -69
  179. package/cjs/idx/remediate.js.map +1 -1
  180. package/cjs/idx/remediators/AuthenticatorEnrollmentData.js +7 -19
  181. package/cjs/idx/remediators/AuthenticatorEnrollmentData.js.map +1 -1
  182. package/cjs/idx/remediators/AuthenticatorVerificationData.js +6 -56
  183. package/cjs/idx/remediators/AuthenticatorVerificationData.js.map +1 -1
  184. package/cjs/idx/remediators/Base/AuthenticatorData.js +10 -48
  185. package/cjs/idx/remediators/Base/AuthenticatorData.js.map +1 -1
  186. package/cjs/idx/remediators/Base/Remediator.js +25 -51
  187. package/cjs/idx/remediators/Base/Remediator.js.map +1 -1
  188. package/cjs/idx/remediators/Base/SelectAuthenticator.js +10 -48
  189. package/cjs/idx/remediators/Base/SelectAuthenticator.js.map +1 -1
  190. package/cjs/idx/remediators/Base/VerifyAuthenticator.js +5 -17
  191. package/cjs/idx/remediators/Base/VerifyAuthenticator.js.map +1 -1
  192. package/cjs/idx/remediators/ChallengeAuthenticator.js +2 -2
  193. package/cjs/idx/remediators/ChallengePoll.js +3 -5
  194. package/cjs/idx/remediators/ChallengePoll.js.map +1 -1
  195. package/cjs/idx/remediators/EnrollAuthenticator.js +2 -2
  196. package/cjs/idx/remediators/EnrollPoll.js +6 -16
  197. package/cjs/idx/remediators/EnrollPoll.js.map +1 -1
  198. package/cjs/idx/remediators/EnrollProfile.js +12 -28
  199. package/cjs/idx/remediators/EnrollProfile.js.map +1 -1
  200. package/cjs/idx/remediators/EnrollmentChannelData.js +9 -25
  201. package/cjs/idx/remediators/EnrollmentChannelData.js.map +1 -1
  202. package/cjs/idx/remediators/GenericRemediator/GenericRemediator.js +5 -23
  203. package/cjs/idx/remediators/GenericRemediator/GenericRemediator.js.map +1 -1
  204. package/cjs/idx/remediators/GenericRemediator/index.js +1 -3
  205. package/cjs/idx/remediators/GenericRemediator/index.js.map +1 -1
  206. package/cjs/idx/remediators/GenericRemediator/util.js +11 -35
  207. package/cjs/idx/remediators/GenericRemediator/util.js.map +1 -1
  208. package/cjs/idx/remediators/Identify.js +3 -5
  209. package/cjs/idx/remediators/Identify.js.map +1 -1
  210. package/cjs/idx/remediators/ReEnrollAuthenticator.js +3 -5
  211. package/cjs/idx/remediators/ReEnrollAuthenticator.js.map +1 -1
  212. package/cjs/idx/remediators/RedirectIdp.js +2 -2
  213. package/cjs/idx/remediators/ResetAuthenticator.js +2 -2
  214. package/cjs/idx/remediators/SelectAuthenticatorAuthenticate.js +4 -6
  215. package/cjs/idx/remediators/SelectAuthenticatorAuthenticate.js.map +1 -1
  216. package/cjs/idx/remediators/SelectAuthenticatorEnroll.js +2 -2
  217. package/cjs/idx/remediators/SelectAuthenticatorUnlockAccount.js +5 -9
  218. package/cjs/idx/remediators/SelectAuthenticatorUnlockAccount.js.map +1 -1
  219. package/cjs/idx/remediators/SelectEnrollProfile.js +2 -2
  220. package/cjs/idx/remediators/SelectEnrollmentChannel.js +12 -41
  221. package/cjs/idx/remediators/SelectEnrollmentChannel.js.map +1 -1
  222. package/cjs/idx/remediators/Skip.js +3 -5
  223. package/cjs/idx/remediators/Skip.js.map +1 -1
  224. package/cjs/idx/remediators/index.js +20 -22
  225. package/cjs/idx/remediators/index.js.map +1 -1
  226. package/cjs/idx/remediators/util.js +3 -13
  227. package/cjs/idx/remediators/util.js.map +1 -1
  228. package/cjs/idx/run.js +6 -47
  229. package/cjs/idx/run.js.map +1 -1
  230. package/cjs/idx/startTransaction.js.map +1 -1
  231. package/cjs/idx/storage.js +89 -0
  232. package/cjs/idx/storage.js.map +1 -0
  233. package/cjs/idx/transactionMeta.js.map +1 -1
  234. package/cjs/idx/types/api.js +12 -0
  235. package/cjs/idx/types/api.js.map +1 -1
  236. package/cjs/idx/types/index.js +28 -4
  237. package/cjs/idx/types/index.js.map +1 -1
  238. package/cjs/idx/types/meta.js +2 -0
  239. package/cjs/idx/types/meta.js.map +1 -0
  240. package/cjs/idx/types/options.js.map +1 -1
  241. package/cjs/idx/types/storage.js +2 -0
  242. package/cjs/idx/types/storage.js.map +1 -0
  243. package/cjs/idx/unlockAccount.js +2 -6
  244. package/cjs/idx/unlockAccount.js.map +1 -1
  245. package/cjs/idx/util.js +17 -60
  246. package/cjs/idx/util.js.map +1 -1
  247. package/cjs/idx/webauthn.js +101 -0
  248. package/cjs/idx/webauthn.js.map +1 -0
  249. package/cjs/myaccount/api.js +3 -5
  250. package/cjs/myaccount/api.js.map +1 -1
  251. package/cjs/myaccount/factory.js +14 -0
  252. package/cjs/myaccount/factory.js.map +1 -0
  253. package/cjs/myaccount/index.js +28 -4
  254. package/cjs/myaccount/index.js.map +1 -1
  255. package/cjs/myaccount/mixin.js +23 -0
  256. package/cjs/myaccount/mixin.js.map +1 -0
  257. package/cjs/myaccount/request.js +3 -15
  258. package/cjs/myaccount/request.js.map +1 -1
  259. package/cjs/myaccount/transactions/Base.js +1 -5
  260. package/cjs/myaccount/transactions/Base.js.map +1 -1
  261. package/cjs/myaccount/transactions/EmailChallengeTransaction.js +1 -1
  262. package/cjs/myaccount/transactions/EmailStatusTransaction.js +1 -1
  263. package/cjs/myaccount/transactions/EmailTransaction.js +1 -1
  264. package/cjs/myaccount/transactions/PhoneTransaction.js +1 -1
  265. package/cjs/myaccount/transactions/ProfileSchemaTransaction.js +1 -1
  266. package/cjs/myaccount/transactions/ProfileTransaction.js +1 -1
  267. package/cjs/myaccount/transactions/index.js +1 -1
  268. package/cjs/myaccount/types.js.map +1 -1
  269. package/cjs/oidc/TokenManager.js +479 -0
  270. package/cjs/oidc/TokenManager.js.map +1 -0
  271. package/cjs/oidc/TransactionManager.js +107 -0
  272. package/cjs/oidc/TransactionManager.js.map +1 -0
  273. package/cjs/oidc/decodeToken.js.map +1 -1
  274. package/cjs/oidc/endpoints/authorize.js +2 -8
  275. package/cjs/oidc/endpoints/authorize.js.map +1 -1
  276. package/cjs/oidc/endpoints/index.js +3 -5
  277. package/cjs/oidc/endpoints/index.js.map +1 -1
  278. package/cjs/oidc/endpoints/token.js +3 -15
  279. package/cjs/oidc/endpoints/token.js.map +1 -1
  280. package/cjs/oidc/endpoints/well-known.js +3 -7
  281. package/cjs/oidc/endpoints/well-known.js.map +1 -1
  282. package/cjs/oidc/exchangeCodeForTokens.js +2 -10
  283. package/cjs/oidc/exchangeCodeForTokens.js.map +1 -1
  284. package/cjs/oidc/factory/OktaAuthOAuth.js +23 -0
  285. package/cjs/oidc/factory/OktaAuthOAuth.js.map +1 -0
  286. package/cjs/oidc/factory/api.js +104 -0
  287. package/cjs/oidc/factory/api.js.map +1 -0
  288. package/cjs/oidc/factory/index.js +28 -0
  289. package/cjs/oidc/factory/index.js.map +1 -0
  290. package/cjs/oidc/getToken.js +5 -9
  291. package/cjs/oidc/getToken.js.map +1 -1
  292. package/cjs/oidc/getUserInfo.js +4 -8
  293. package/cjs/oidc/getUserInfo.js.map +1 -1
  294. package/cjs/oidc/getWithPopup.js +2 -8
  295. package/cjs/oidc/getWithPopup.js.map +1 -1
  296. package/cjs/oidc/getWithRedirect.js +2 -8
  297. package/cjs/oidc/getWithRedirect.js.map +1 -1
  298. package/cjs/oidc/getWithoutPrompt.js +2 -8
  299. package/cjs/oidc/getWithoutPrompt.js.map +1 -1
  300. package/cjs/oidc/handleOAuthResponse.js +3 -9
  301. package/cjs/oidc/handleOAuthResponse.js.map +1 -1
  302. package/cjs/oidc/index.js +100 -4
  303. package/cjs/oidc/index.js.map +1 -1
  304. package/cjs/oidc/mixin/browser.js +62 -0
  305. package/cjs/oidc/mixin/browser.js.map +1 -0
  306. package/cjs/oidc/mixin/index.js +342 -0
  307. package/cjs/oidc/mixin/index.js.map +1 -0
  308. package/cjs/oidc/mixin/node.js +44 -0
  309. package/cjs/oidc/mixin/node.js.map +1 -0
  310. package/cjs/oidc/options/OAuthOptionsConstructor.js +120 -0
  311. package/cjs/oidc/options/OAuthOptionsConstructor.js.map +1 -0
  312. package/cjs/oidc/options/browser.js +6 -0
  313. package/cjs/oidc/options/browser.js.map +1 -0
  314. package/cjs/oidc/options/index.js +15 -0
  315. package/cjs/oidc/options/index.js.map +1 -0
  316. package/cjs/oidc/options/node.js +6 -0
  317. package/cjs/oidc/options/node.js.map +1 -0
  318. package/cjs/oidc/parseFromUrl.js +8 -11
  319. package/cjs/oidc/parseFromUrl.js.map +1 -1
  320. package/cjs/oidc/renewToken.js +1 -1
  321. package/cjs/oidc/renewToken.js.map +1 -1
  322. package/cjs/oidc/renewTokens.js +1 -5
  323. package/cjs/oidc/renewTokens.js.map +1 -1
  324. package/cjs/oidc/renewTokensWithRefresh.js +1 -5
  325. package/cjs/oidc/renewTokensWithRefresh.js.map +1 -1
  326. package/cjs/oidc/revokeToken.js +3 -7
  327. package/cjs/oidc/revokeToken.js.map +1 -1
  328. package/cjs/oidc/storage.js +43 -0
  329. package/cjs/oidc/storage.js.map +1 -0
  330. package/cjs/{types → oidc/types}/JWT.js +0 -0
  331. package/cjs/oidc/types/JWT.js.map +1 -0
  332. package/cjs/{types → oidc/types}/Token.js +0 -0
  333. package/cjs/oidc/types/Token.js.map +1 -0
  334. package/cjs/{types → oidc/types}/TokenManager.js +0 -0
  335. package/cjs/oidc/types/TokenManager.js.map +1 -0
  336. package/cjs/oidc/types/Transaction.js +68 -0
  337. package/cjs/oidc/types/Transaction.js.map +1 -0
  338. package/cjs/oidc/types/TransactionManager.js +2 -0
  339. package/cjs/oidc/types/TransactionManager.js.map +1 -0
  340. package/cjs/{types → oidc/types}/UserClaims.js +0 -0
  341. package/cjs/oidc/types/UserClaims.js.map +1 -0
  342. package/cjs/oidc/types/api.js +2 -0
  343. package/cjs/oidc/types/api.js.map +1 -0
  344. package/cjs/oidc/types/index.js +145 -0
  345. package/cjs/oidc/types/index.js.map +1 -0
  346. package/cjs/oidc/types/meta.js +2 -0
  347. package/cjs/oidc/types/meta.js.map +1 -0
  348. package/cjs/oidc/types/options.js +2 -0
  349. package/cjs/oidc/types/options.js.map +1 -0
  350. package/cjs/oidc/types/proto.js +2 -0
  351. package/cjs/oidc/types/proto.js.map +1 -0
  352. package/cjs/oidc/types/storage.js +2 -0
  353. package/cjs/oidc/types/storage.js.map +1 -0
  354. package/cjs/oidc/util/browser.js +1 -5
  355. package/cjs/oidc/util/browser.js.map +1 -1
  356. package/cjs/oidc/util/defaultTokenParams.js.map +1 -1
  357. package/cjs/oidc/util/errors.js.map +1 -1
  358. package/cjs/oidc/util/index.js +12 -14
  359. package/cjs/oidc/util/index.js.map +1 -1
  360. package/cjs/oidc/util/loginRedirect.js +1 -5
  361. package/cjs/oidc/util/loginRedirect.js.map +1 -1
  362. package/cjs/oidc/util/oauth.js +2 -4
  363. package/cjs/oidc/util/oauth.js.map +1 -1
  364. package/cjs/oidc/util/oauthMeta.js.map +1 -1
  365. package/cjs/oidc/util/pkce.js +3 -11
  366. package/cjs/oidc/util/pkce.js.map +1 -1
  367. package/cjs/oidc/util/prepareTokenParams.js +2 -4
  368. package/cjs/oidc/util/prepareTokenParams.js.map +1 -1
  369. package/cjs/oidc/util/refreshToken.js.map +1 -1
  370. package/cjs/oidc/util/sharedStorage.js +54 -0
  371. package/cjs/oidc/util/sharedStorage.js.map +1 -0
  372. package/cjs/oidc/util/validateClaims.js +1 -1
  373. package/cjs/oidc/util/validateClaims.js.map +1 -1
  374. package/cjs/oidc/util/validateToken.js +1 -1
  375. package/cjs/oidc/util/validateToken.js.map +1 -1
  376. package/cjs/oidc/verifyToken.js +3 -11
  377. package/cjs/oidc/verifyToken.js.map +1 -1
  378. package/cjs/server/serverStorage.js +2 -9
  379. package/cjs/server/serverStorage.js.map +1 -1
  380. package/cjs/services/AutoRenewService.js +3 -3
  381. package/cjs/services/AutoRenewService.js.map +1 -1
  382. package/cjs/services/LeaderElectionService.js +3 -5
  383. package/cjs/services/LeaderElectionService.js.map +1 -1
  384. package/cjs/services/SyncStorageService.js +26 -18
  385. package/cjs/services/SyncStorageService.js.map +1 -1
  386. package/cjs/services/index.js +3 -5
  387. package/cjs/services/index.js.map +1 -1
  388. package/cjs/session/api.js +88 -0
  389. package/cjs/session/api.js.map +1 -0
  390. package/cjs/session/factory.js +17 -0
  391. package/cjs/session/factory.js.map +1 -0
  392. package/cjs/session/index.js +54 -0
  393. package/cjs/session/index.js.map +1 -0
  394. package/cjs/session/mixin.js +32 -0
  395. package/cjs/session/mixin.js.map +1 -0
  396. package/cjs/session/types.js +2 -0
  397. package/cjs/session/types.js.map +1 -0
  398. package/cjs/storage/BaseStorageManager.js +102 -0
  399. package/cjs/storage/BaseStorageManager.js.map +1 -0
  400. package/cjs/storage/SavedObject.js +100 -0
  401. package/cjs/storage/SavedObject.js.map +1 -0
  402. package/cjs/storage/index.js +67 -0
  403. package/cjs/storage/index.js.map +1 -0
  404. package/cjs/storage/mixin.js +22 -0
  405. package/cjs/storage/mixin.js.map +1 -0
  406. package/cjs/storage/options/StorageOptionsConstructor.js +36 -0
  407. package/cjs/storage/options/StorageOptionsConstructor.js.map +1 -0
  408. package/cjs/storage/options/browser.js +82 -0
  409. package/cjs/storage/options/browser.js.map +1 -0
  410. package/cjs/storage/options/node.js +43 -0
  411. package/cjs/storage/options/node.js.map +1 -0
  412. package/cjs/storage/types.js +2 -0
  413. package/cjs/storage/types.js.map +1 -0
  414. package/cjs/types/global.d.js +2 -0
  415. package/cjs/types/global.d.js.map +1 -0
  416. package/cjs/util/PromiseQueue.js +85 -0
  417. package/cjs/util/PromiseQueue.js.map +1 -0
  418. package/cjs/util/index.js +15 -17
  419. package/cjs/util/index.js.map +1 -1
  420. package/cjs/util/misc.js +2 -8
  421. package/cjs/util/misc.js.map +1 -1
  422. package/cjs/util/object.js +6 -16
  423. package/cjs/util/object.js.map +1 -1
  424. package/dist/okta-auth-js.authn.min.analyzer.html +38 -0
  425. package/dist/okta-auth-js.authn.min.js +3 -0
  426. package/dist/{myaccount.umd.js.LICENSE.txt → okta-auth-js.authn.min.js.LICENSE.txt} +0 -0
  427. package/dist/okta-auth-js.authn.min.js.map +1 -0
  428. package/dist/okta-auth-js.core.min.analyzer.html +38 -0
  429. package/dist/okta-auth-js.core.min.js +3 -0
  430. package/dist/okta-auth-js.core.min.js.LICENSE.txt +12 -0
  431. package/dist/okta-auth-js.core.min.js.map +1 -0
  432. package/dist/okta-auth-js.idx.min.analyzer.html +38 -0
  433. package/dist/okta-auth-js.idx.min.js +3 -0
  434. package/dist/okta-auth-js.idx.min.js.LICENSE.txt +12 -0
  435. package/dist/okta-auth-js.idx.min.js.map +1 -0
  436. package/dist/okta-auth-js.min.analyzer.html +38 -0
  437. package/dist/okta-auth-js.min.js +1 -1
  438. package/dist/okta-auth-js.min.js.map +1 -1
  439. package/dist/okta-auth-js.myaccount.min.analyzer.html +38 -0
  440. package/dist/okta-auth-js.myaccount.min.js +3 -0
  441. package/dist/okta-auth-js.myaccount.min.js.LICENSE.txt +12 -0
  442. package/dist/okta-auth-js.myaccount.min.js.map +1 -0
  443. package/esm/browser/authn/AuthnTransactionImpl.js +33 -0
  444. package/esm/browser/authn/AuthnTransactionImpl.js.map +1 -0
  445. package/esm/browser/authn/api.js +79 -0
  446. package/esm/browser/authn/api.js.map +1 -0
  447. package/esm/browser/authn/factory.js +37 -0
  448. package/esm/browser/authn/factory.js.map +1 -0
  449. package/esm/browser/authn/mixin.js +58 -0
  450. package/esm/browser/authn/mixin.js.map +1 -0
  451. package/esm/browser/authn/util/flattenEmbedded.js +44 -0
  452. package/esm/browser/authn/util/flattenEmbedded.js.map +1 -0
  453. package/esm/browser/authn/util/link2fn.js +103 -0
  454. package/esm/browser/authn/util/link2fn.js.map +1 -0
  455. package/esm/browser/authn/util/links2fns.js +45 -0
  456. package/esm/browser/authn/util/links2fns.js.map +1 -0
  457. package/esm/browser/authn/util/poll.js +120 -0
  458. package/esm/browser/authn/util/poll.js.map +1 -0
  459. package/esm/browser/authn/util/stateToken.js +26 -0
  460. package/esm/browser/authn/util/stateToken.js.map +1 -0
  461. package/esm/browser/base/factory.js +37 -0
  462. package/esm/browser/base/factory.js.map +1 -0
  463. package/esm/browser/base/options.js +22 -0
  464. package/esm/browser/base/options.js.map +1 -0
  465. package/esm/browser/browser/browserStorage.js +0 -9
  466. package/esm/browser/browser/browserStorage.js.map +1 -1
  467. package/esm/browser/browser/fingerprint.js +3 -2
  468. package/esm/browser/browser/fingerprint.js.map +1 -1
  469. package/esm/browser/constants.js +1 -4
  470. package/esm/browser/constants.js.map +1 -1
  471. package/esm/browser/core/AuthStateManager.js +162 -0
  472. package/esm/browser/core/AuthStateManager.js.map +1 -0
  473. package/esm/browser/core/ServiceManager/browser.js +115 -0
  474. package/esm/browser/core/ServiceManager/browser.js.map +1 -0
  475. package/esm/browser/core/factory.js +31 -0
  476. package/esm/browser/core/factory.js.map +1 -0
  477. package/esm/browser/core/mixin.js +70 -0
  478. package/esm/browser/core/mixin.js.map +1 -0
  479. package/esm/browser/core/options.js +30 -0
  480. package/esm/browser/core/options.js.map +1 -0
  481. package/esm/browser/core/storage.js +20 -0
  482. package/esm/browser/core/storage.js.map +1 -0
  483. package/esm/browser/errors/AuthApiError.js.map +1 -1
  484. package/esm/browser/errors/AuthSdkError.js.map +1 -1
  485. package/esm/browser/errors/index.js.map +1 -1
  486. package/esm/browser/exports/exports/authn.js +106 -0
  487. package/esm/browser/exports/exports/authn.js.map +1 -0
  488. package/esm/browser/exports/exports/core.js +102 -0
  489. package/esm/browser/exports/exports/core.js.map +1 -0
  490. package/esm/browser/exports/exports/default.js +141 -0
  491. package/esm/browser/exports/exports/default.js.map +1 -0
  492. package/esm/browser/exports/exports/idx.js +122 -0
  493. package/esm/browser/exports/exports/idx.js.map +1 -0
  494. package/esm/browser/exports/exports/myaccount.js +115 -0
  495. package/esm/browser/exports/exports/myaccount.js.map +1 -0
  496. package/esm/browser/fetch/fetchRequest.js.map +1 -1
  497. package/esm/browser/http/OktaUserAgent.js +39 -0
  498. package/esm/browser/http/OktaUserAgent.js.map +1 -0
  499. package/esm/browser/http/headers.js.map +1 -1
  500. package/esm/browser/http/mixin.js +46 -0
  501. package/esm/browser/http/mixin.js.map +1 -0
  502. package/esm/browser/http/options.js +31 -0
  503. package/esm/browser/http/options.js.map +1 -0
  504. package/esm/browser/http/request.js.map +1 -1
  505. package/esm/browser/idx/IdxTransactionManager.js +72 -0
  506. package/esm/browser/idx/IdxTransactionManager.js.map +1 -0
  507. package/esm/browser/idx/authenticate.js +0 -1
  508. package/esm/browser/idx/authenticate.js.map +1 -1
  509. package/esm/browser/idx/cancel.js.map +1 -1
  510. package/esm/browser/idx/emailVerify.js.map +1 -1
  511. package/esm/browser/idx/factory/OktaAuthIdx.js +23 -0
  512. package/esm/browser/idx/factory/OktaAuthIdx.js.map +1 -0
  513. package/esm/browser/idx/factory/api.js +73 -0
  514. package/esm/browser/idx/factory/api.js.map +1 -0
  515. package/esm/browser/idx/flow/FlowSpecification.js.map +1 -1
  516. package/esm/browser/idx/handleInteractionCodeRedirect.js.map +1 -1
  517. package/esm/browser/idx/idxState/index.js.map +1 -1
  518. package/esm/browser/idx/idxState/v1/generateIdxAction.js +5 -2
  519. package/esm/browser/idx/idxState/v1/generateIdxAction.js.map +1 -1
  520. package/esm/browser/idx/idxState/v1/idxResponseParser.js.map +1 -1
  521. package/esm/browser/idx/idxState/v1/makeIdxState.js.map +1 -1
  522. package/esm/browser/idx/idxState/v1/remediationParser.js.map +1 -1
  523. package/esm/browser/idx/interact.js +4 -3
  524. package/esm/browser/idx/interact.js.map +1 -1
  525. package/esm/browser/idx/introspect.js +4 -3
  526. package/esm/browser/idx/introspect.js.map +1 -1
  527. package/esm/browser/idx/mixin.js +29 -0
  528. package/esm/browser/idx/mixin.js.map +1 -0
  529. package/esm/browser/idx/options.js +29 -0
  530. package/esm/browser/idx/options.js.map +1 -0
  531. package/esm/browser/idx/poll.js.map +1 -1
  532. package/esm/browser/idx/proceed.js.map +1 -1
  533. package/esm/browser/idx/recoverPassword.js.map +1 -1
  534. package/esm/browser/idx/register.js +2 -5
  535. package/esm/browser/idx/register.js.map +1 -1
  536. package/esm/browser/idx/remediate.js +24 -36
  537. package/esm/browser/idx/remediate.js.map +1 -1
  538. package/esm/browser/idx/remediators/AuthenticatorVerificationData.js +0 -29
  539. package/esm/browser/idx/remediators/AuthenticatorVerificationData.js.map +1 -1
  540. package/esm/browser/idx/remediators/Base/AuthenticatorData.js +0 -10
  541. package/esm/browser/idx/remediators/Base/AuthenticatorData.js.map +1 -1
  542. package/esm/browser/idx/remediators/Base/Remediator.js.map +1 -1
  543. package/esm/browser/idx/remediators/Base/SelectAuthenticator.js +0 -10
  544. package/esm/browser/idx/remediators/Base/SelectAuthenticator.js.map +1 -1
  545. package/esm/browser/idx/remediators/Base/VerifyAuthenticator.js.map +1 -1
  546. package/esm/browser/idx/remediators/EnrollPoll.js.map +1 -1
  547. package/esm/browser/idx/remediators/EnrollProfile.js.map +1 -1
  548. package/esm/browser/idx/remediators/EnrollmentChannelData.js.map +1 -1
  549. package/esm/browser/idx/remediators/GenericRemediator/GenericRemediator.js.map +1 -1
  550. package/esm/browser/idx/remediators/SelectAuthenticatorUnlockAccount.js.map +1 -1
  551. package/esm/browser/idx/remediators/SelectEnrollmentChannel.js +1 -9
  552. package/esm/browser/idx/remediators/SelectEnrollmentChannel.js.map +1 -1
  553. package/esm/browser/idx/run.js +3 -25
  554. package/esm/browser/idx/run.js.map +1 -1
  555. package/esm/browser/idx/startTransaction.js.map +1 -1
  556. package/esm/browser/idx/storage.js +77 -0
  557. package/esm/browser/idx/storage.js.map +1 -0
  558. package/esm/browser/idx/transactionMeta.js +3 -2
  559. package/esm/browser/idx/transactionMeta.js.map +1 -1
  560. package/esm/browser/idx/types/api.js.map +1 -1
  561. package/esm/browser/idx/types/idx-js.js +1 -4
  562. package/esm/browser/idx/types/idx-js.js.map +1 -1
  563. package/esm/browser/idx/unlockAccount.js +0 -1
  564. package/esm/browser/idx/unlockAccount.js.map +1 -1
  565. package/esm/browser/idx/util.js +2 -8
  566. package/esm/browser/idx/util.js.map +1 -1
  567. package/esm/browser/idx/webauthn.js +79 -0
  568. package/esm/browser/idx/webauthn.js.map +1 -0
  569. package/esm/browser/myaccount/api.js +16 -0
  570. package/esm/browser/myaccount/api.js.map +1 -0
  571. package/esm/browser/myaccount/factory.js +23 -0
  572. package/esm/browser/myaccount/factory.js.map +1 -0
  573. package/esm/browser/myaccount/mixin.js +30 -0
  574. package/esm/browser/myaccount/mixin.js.map +1 -0
  575. package/esm/browser/myaccount/request.js +4 -1
  576. package/esm/browser/myaccount/request.js.map +1 -1
  577. package/esm/browser/myaccount/transactions/Base.js.map +1 -1
  578. package/esm/browser/myaccount/types.js +4 -0
  579. package/esm/browser/myaccount/types.js.map +1 -1
  580. package/esm/browser/oidc/TokenManager.js +384 -0
  581. package/esm/browser/oidc/TokenManager.js.map +1 -0
  582. package/esm/browser/oidc/TransactionManager.js +76 -0
  583. package/esm/browser/oidc/TransactionManager.js.map +1 -0
  584. package/esm/browser/oidc/decodeToken.js.map +1 -1
  585. package/esm/browser/oidc/endpoints/authorize.js.map +1 -1
  586. package/esm/browser/oidc/endpoints/token.js +3 -0
  587. package/esm/browser/oidc/endpoints/token.js.map +1 -1
  588. package/esm/browser/oidc/endpoints/well-known.js +5 -2
  589. package/esm/browser/oidc/endpoints/well-known.js.map +1 -1
  590. package/esm/browser/oidc/exchangeCodeForTokens.js +3 -2
  591. package/esm/browser/oidc/exchangeCodeForTokens.js.map +1 -1
  592. package/esm/browser/oidc/factory/OktaAuthOAuth.js +29 -0
  593. package/esm/browser/oidc/factory/OktaAuthOAuth.js.map +1 -0
  594. package/esm/browser/oidc/factory/api.js +89 -0
  595. package/esm/browser/oidc/factory/api.js.map +1 -0
  596. package/esm/browser/oidc/getToken.js +0 -2
  597. package/esm/browser/oidc/getToken.js.map +1 -1
  598. package/esm/browser/oidc/getUserInfo.js +4 -3
  599. package/esm/browser/oidc/getUserInfo.js.map +1 -1
  600. package/esm/browser/oidc/getWithPopup.js +3 -2
  601. package/esm/browser/oidc/getWithPopup.js.map +1 -1
  602. package/esm/browser/oidc/getWithRedirect.js +1 -3
  603. package/esm/browser/oidc/getWithRedirect.js.map +1 -1
  604. package/esm/browser/oidc/getWithoutPrompt.js.map +1 -1
  605. package/esm/browser/oidc/handleOAuthResponse.js +3 -2
  606. package/esm/browser/oidc/handleOAuthResponse.js.map +1 -1
  607. package/esm/browser/oidc/mixin/browser.js +52 -0
  608. package/esm/browser/oidc/mixin/browser.js.map +1 -0
  609. package/esm/browser/oidc/mixin/index.js +247 -0
  610. package/esm/browser/oidc/mixin/index.js.map +1 -0
  611. package/esm/browser/oidc/options/OAuthOptionsConstructor.js +85 -0
  612. package/esm/browser/oidc/options/OAuthOptionsConstructor.js.map +1 -0
  613. package/esm/browser/oidc/options/browser.js +16 -0
  614. package/esm/browser/oidc/options/browser.js.map +1 -0
  615. package/esm/browser/oidc/parseFromUrl.js +7 -5
  616. package/esm/browser/oidc/parseFromUrl.js.map +1 -1
  617. package/esm/browser/oidc/renewToken.js +1 -3
  618. package/esm/browser/oidc/renewToken.js.map +1 -1
  619. package/esm/browser/oidc/renewTokens.js +3 -2
  620. package/esm/browser/oidc/renewTokens.js.map +1 -1
  621. package/esm/browser/oidc/renewTokensWithRefresh.js.map +1 -1
  622. package/esm/browser/oidc/revokeToken.js +6 -3
  623. package/esm/browser/oidc/revokeToken.js.map +1 -1
  624. package/esm/browser/oidc/storage.js +49 -0
  625. package/esm/browser/oidc/storage.js.map +1 -0
  626. package/esm/browser/{types → oidc/types}/Token.js +0 -0
  627. package/esm/browser/oidc/types/Token.js.map +1 -0
  628. package/esm/browser/{types → oidc/types}/TokenManager.js +0 -0
  629. package/esm/browser/oidc/types/TokenManager.js.map +1 -0
  630. package/esm/browser/{types → oidc/types}/Transaction.js +0 -0
  631. package/esm/browser/oidc/types/Transaction.js.map +1 -0
  632. package/esm/browser/oidc/util/browser.js.map +1 -1
  633. package/esm/browser/oidc/util/defaultTokenParams.js.map +1 -1
  634. package/esm/browser/oidc/util/errors.js.map +1 -1
  635. package/esm/browser/oidc/util/loginRedirect.js.map +1 -1
  636. package/esm/browser/oidc/util/oauth.js.map +1 -1
  637. package/esm/browser/oidc/util/oauthMeta.js.map +1 -1
  638. package/esm/browser/oidc/util/prepareTokenParams.js.map +1 -1
  639. package/esm/browser/oidc/util/refreshToken.js.map +1 -1
  640. package/esm/browser/oidc/util/sharedStorage.js +54 -0
  641. package/esm/browser/oidc/util/sharedStorage.js.map +1 -0
  642. package/esm/browser/oidc/util/validateClaims.js.map +1 -1
  643. package/esm/browser/oidc/util/validateToken.js +1 -3
  644. package/esm/browser/oidc/util/validateToken.js.map +1 -1
  645. package/esm/browser/oidc/verifyToken.js +0 -2
  646. package/esm/browser/oidc/verifyToken.js.map +1 -1
  647. package/esm/browser/package.json +5 -0
  648. package/esm/browser/services/AutoRenewService.js +1 -3
  649. package/esm/browser/services/AutoRenewService.js.map +1 -1
  650. package/esm/browser/services/LeaderElectionService.js.map +1 -1
  651. package/esm/browser/services/SyncStorageService.js +18 -13
  652. package/esm/browser/services/SyncStorageService.js.map +1 -1
  653. package/esm/browser/session/api.js +69 -0
  654. package/esm/browser/session/api.js.map +1 -0
  655. package/esm/browser/session/factory.js +27 -0
  656. package/esm/browser/session/factory.js.map +1 -0
  657. package/esm/browser/session/mixin.js +37 -0
  658. package/esm/browser/session/mixin.js.map +1 -0
  659. package/esm/browser/storage/BaseStorageManager.js +69 -0
  660. package/esm/browser/storage/BaseStorageManager.js.map +1 -0
  661. package/esm/browser/storage/SavedObject.js +76 -0
  662. package/esm/browser/storage/SavedObject.js.map +1 -0
  663. package/esm/browser/storage/mixin.js +26 -0
  664. package/esm/browser/storage/mixin.js.map +1 -0
  665. package/esm/browser/storage/options/StorageOptionsConstructor.js +31 -0
  666. package/esm/browser/storage/options/StorageOptionsConstructor.js.map +1 -0
  667. package/esm/browser/storage/options/browser.js +76 -0
  668. package/esm/browser/storage/options/browser.js.map +1 -0
  669. package/esm/browser/util/PromiseQueue.js +65 -0
  670. package/esm/browser/util/PromiseQueue.js.map +1 -0
  671. package/esm/node/authn/AuthnTransactionImpl.js +33 -0
  672. package/esm/node/authn/AuthnTransactionImpl.js.map +1 -0
  673. package/esm/node/authn/api.js +80 -0
  674. package/esm/node/authn/api.js.map +1 -0
  675. package/esm/node/authn/factory.js +37 -0
  676. package/esm/node/authn/factory.js.map +1 -0
  677. package/esm/node/authn/mixin.js +58 -0
  678. package/esm/node/authn/mixin.js.map +1 -0
  679. package/esm/node/authn/util/flattenEmbedded.js +44 -0
  680. package/esm/node/authn/util/flattenEmbedded.js.map +1 -0
  681. package/esm/node/authn/util/link2fn.js +104 -0
  682. package/esm/node/authn/util/link2fn.js.map +1 -0
  683. package/esm/node/authn/util/links2fns.js +45 -0
  684. package/esm/node/authn/util/links2fns.js.map +1 -0
  685. package/esm/node/authn/util/poll.js +121 -0
  686. package/esm/node/authn/util/poll.js.map +1 -0
  687. package/esm/node/authn/util/stateToken.js +26 -0
  688. package/esm/node/authn/util/stateToken.js.map +1 -0
  689. package/esm/node/base/factory.js +37 -0
  690. package/esm/node/base/factory.js.map +1 -0
  691. package/esm/node/base/options.js +22 -0
  692. package/esm/node/base/options.js.map +1 -0
  693. package/esm/node/browser/fingerprint.js +4 -3
  694. package/esm/node/browser/fingerprint.js.map +1 -1
  695. package/esm/node/constants.js +1 -4
  696. package/esm/node/constants.js.map +1 -1
  697. package/esm/node/core/AuthStateManager.js +163 -0
  698. package/esm/node/core/AuthStateManager.js.map +1 -0
  699. package/esm/node/core/ServiceManager/node.js +34 -0
  700. package/esm/node/core/ServiceManager/node.js.map +1 -0
  701. package/esm/node/core/factory.js +31 -0
  702. package/esm/node/core/factory.js.map +1 -0
  703. package/esm/node/core/mixin.js +70 -0
  704. package/esm/node/core/mixin.js.map +1 -0
  705. package/esm/node/core/options.js +31 -0
  706. package/esm/node/core/options.js.map +1 -0
  707. package/esm/node/core/storage.js +20 -0
  708. package/esm/node/core/storage.js.map +1 -0
  709. package/esm/node/errors/AuthApiError.js.map +1 -1
  710. package/esm/node/errors/AuthSdkError.js.map +1 -1
  711. package/esm/node/errors/index.js.map +1 -1
  712. package/esm/node/exports/exports/authn.js +106 -0
  713. package/esm/node/exports/exports/authn.js.map +1 -0
  714. package/esm/node/exports/exports/core.js +102 -0
  715. package/esm/node/exports/exports/core.js.map +1 -0
  716. package/esm/node/exports/exports/default.js +141 -0
  717. package/esm/node/exports/exports/default.js.map +1 -0
  718. package/esm/node/exports/exports/idx.js +122 -0
  719. package/esm/node/exports/exports/idx.js.map +1 -0
  720. package/esm/node/exports/exports/myaccount.js +115 -0
  721. package/esm/node/exports/exports/myaccount.js.map +1 -0
  722. package/esm/node/fetch/fetchRequest.js.map +1 -1
  723. package/esm/node/http/OktaUserAgent.js +39 -0
  724. package/esm/node/http/OktaUserAgent.js.map +1 -0
  725. package/esm/node/http/headers.js.map +1 -1
  726. package/esm/node/http/mixin.js +46 -0
  727. package/esm/node/http/mixin.js.map +1 -0
  728. package/esm/node/http/options.js +32 -0
  729. package/esm/node/http/options.js.map +1 -0
  730. package/esm/node/http/request.js.map +1 -1
  731. package/esm/node/idx/IdxTransactionManager.js +72 -0
  732. package/esm/node/idx/IdxTransactionManager.js.map +1 -0
  733. package/esm/node/idx/authenticate.js +0 -1
  734. package/esm/node/idx/authenticate.js.map +1 -1
  735. package/esm/node/idx/cancel.js.map +1 -1
  736. package/esm/node/idx/emailVerify.js.map +1 -1
  737. package/esm/node/idx/factory/OktaAuthIdx.js +23 -0
  738. package/esm/node/idx/factory/OktaAuthIdx.js.map +1 -0
  739. package/esm/node/idx/factory/api.js +74 -0
  740. package/esm/node/idx/factory/api.js.map +1 -0
  741. package/esm/node/idx/flow/FlowSpecification.js.map +1 -1
  742. package/esm/node/idx/handleInteractionCodeRedirect.js.map +1 -1
  743. package/esm/node/idx/idxState/index.js.map +1 -1
  744. package/esm/node/idx/idxState/v1/generateIdxAction.js +6 -2
  745. package/esm/node/idx/idxState/v1/generateIdxAction.js.map +1 -1
  746. package/esm/node/idx/idxState/v1/idxResponseParser.js.map +1 -1
  747. package/esm/node/idx/idxState/v1/makeIdxState.js.map +1 -1
  748. package/esm/node/idx/idxState/v1/remediationParser.js.map +1 -1
  749. package/esm/node/idx/interact.js +5 -4
  750. package/esm/node/idx/interact.js.map +1 -1
  751. package/esm/node/idx/introspect.js +5 -4
  752. package/esm/node/idx/introspect.js.map +1 -1
  753. package/esm/node/idx/mixin.js +29 -0
  754. package/esm/node/idx/mixin.js.map +1 -0
  755. package/esm/node/idx/options.js +29 -0
  756. package/esm/node/idx/options.js.map +1 -0
  757. package/esm/node/idx/poll.js.map +1 -1
  758. package/esm/node/idx/proceed.js.map +1 -1
  759. package/esm/node/idx/recoverPassword.js.map +1 -1
  760. package/esm/node/idx/register.js +2 -5
  761. package/esm/node/idx/register.js.map +1 -1
  762. package/esm/node/idx/remediate.js +24 -36
  763. package/esm/node/idx/remediate.js.map +1 -1
  764. package/esm/node/idx/remediators/AuthenticatorVerificationData.js +0 -29
  765. package/esm/node/idx/remediators/AuthenticatorVerificationData.js.map +1 -1
  766. package/esm/node/idx/remediators/Base/AuthenticatorData.js +0 -10
  767. package/esm/node/idx/remediators/Base/AuthenticatorData.js.map +1 -1
  768. package/esm/node/idx/remediators/Base/Remediator.js.map +1 -1
  769. package/esm/node/idx/remediators/Base/SelectAuthenticator.js +0 -10
  770. package/esm/node/idx/remediators/Base/SelectAuthenticator.js.map +1 -1
  771. package/esm/node/idx/remediators/Base/VerifyAuthenticator.js.map +1 -1
  772. package/esm/node/idx/remediators/EnrollPoll.js.map +1 -1
  773. package/esm/node/idx/remediators/EnrollProfile.js.map +1 -1
  774. package/esm/node/idx/remediators/EnrollmentChannelData.js.map +1 -1
  775. package/esm/node/idx/remediators/GenericRemediator/GenericRemediator.js.map +1 -1
  776. package/esm/node/idx/remediators/SelectAuthenticatorUnlockAccount.js.map +1 -1
  777. package/esm/node/idx/remediators/SelectEnrollmentChannel.js +1 -9
  778. package/esm/node/idx/remediators/SelectEnrollmentChannel.js.map +1 -1
  779. package/esm/node/idx/run.js +3 -25
  780. package/esm/node/idx/run.js.map +1 -1
  781. package/esm/node/idx/startTransaction.js.map +1 -1
  782. package/esm/node/idx/storage.js +77 -0
  783. package/esm/node/idx/storage.js.map +1 -0
  784. package/esm/node/idx/transactionMeta.js +3 -2
  785. package/esm/node/idx/transactionMeta.js.map +1 -1
  786. package/esm/node/idx/types/api.js.map +1 -1
  787. package/esm/node/idx/types/idx-js.js +1 -4
  788. package/esm/node/idx/types/idx-js.js.map +1 -1
  789. package/esm/node/idx/unlockAccount.js +0 -1
  790. package/esm/node/idx/unlockAccount.js.map +1 -1
  791. package/esm/node/idx/util.js +2 -8
  792. package/esm/node/idx/util.js.map +1 -1
  793. package/esm/node/idx/webauthn.js +79 -0
  794. package/esm/node/idx/webauthn.js.map +1 -0
  795. package/esm/node/myaccount/api.js +16 -0
  796. package/esm/node/myaccount/api.js.map +1 -0
  797. package/esm/node/myaccount/factory.js +23 -0
  798. package/esm/node/myaccount/factory.js.map +1 -0
  799. package/esm/node/myaccount/mixin.js +30 -0
  800. package/esm/node/myaccount/mixin.js.map +1 -0
  801. package/esm/node/myaccount/request.js +5 -1
  802. package/esm/node/myaccount/request.js.map +1 -1
  803. package/esm/node/myaccount/transactions/Base.js.map +1 -1
  804. package/esm/node/myaccount/types.js +5 -0
  805. package/esm/node/myaccount/types.js.map +1 -1
  806. package/esm/node/oidc/TokenManager.js +385 -0
  807. package/esm/node/oidc/TokenManager.js.map +1 -0
  808. package/esm/node/oidc/TransactionManager.js +76 -0
  809. package/esm/node/oidc/TransactionManager.js.map +1 -0
  810. package/esm/node/oidc/decodeToken.js.map +1 -1
  811. package/esm/node/oidc/endpoints/authorize.js.map +1 -1
  812. package/esm/node/oidc/endpoints/token.js +4 -0
  813. package/esm/node/oidc/endpoints/token.js.map +1 -1
  814. package/esm/node/oidc/endpoints/well-known.js +6 -2
  815. package/esm/node/oidc/endpoints/well-known.js.map +1 -1
  816. package/esm/node/oidc/exchangeCodeForTokens.js +3 -2
  817. package/esm/node/oidc/exchangeCodeForTokens.js.map +1 -1
  818. package/esm/node/oidc/factory/OktaAuthOAuth.js +29 -0
  819. package/esm/node/oidc/factory/OktaAuthOAuth.js.map +1 -0
  820. package/esm/node/oidc/factory/api.js +90 -0
  821. package/esm/node/oidc/factory/api.js.map +1 -0
  822. package/esm/node/oidc/getToken.js +0 -2
  823. package/esm/node/oidc/getToken.js.map +1 -1
  824. package/esm/node/oidc/getUserInfo.js +5 -3
  825. package/esm/node/oidc/getUserInfo.js.map +1 -1
  826. package/esm/node/oidc/getWithPopup.js +3 -2
  827. package/esm/node/oidc/getWithPopup.js.map +1 -1
  828. package/esm/node/oidc/getWithRedirect.js +1 -3
  829. package/esm/node/oidc/getWithRedirect.js.map +1 -1
  830. package/esm/node/oidc/getWithoutPrompt.js.map +1 -1
  831. package/esm/node/oidc/handleOAuthResponse.js +3 -2
  832. package/esm/node/oidc/handleOAuthResponse.js.map +1 -1
  833. package/esm/node/oidc/mixin/index.js +247 -0
  834. package/esm/node/oidc/mixin/index.js.map +1 -0
  835. package/esm/node/oidc/mixin/node.js +43 -0
  836. package/esm/node/oidc/mixin/node.js.map +1 -0
  837. package/esm/node/oidc/options/OAuthOptionsConstructor.js +85 -0
  838. package/esm/node/oidc/options/OAuthOptionsConstructor.js.map +1 -0
  839. package/esm/node/oidc/options/node.js +16 -0
  840. package/esm/node/oidc/options/node.js.map +1 -0
  841. package/esm/node/oidc/parseFromUrl.js +7 -5
  842. package/esm/node/oidc/parseFromUrl.js.map +1 -1
  843. package/esm/node/oidc/renewToken.js +1 -3
  844. package/esm/node/oidc/renewToken.js.map +1 -1
  845. package/esm/node/oidc/renewTokens.js +3 -2
  846. package/esm/node/oidc/renewTokens.js.map +1 -1
  847. package/esm/node/oidc/renewTokensWithRefresh.js.map +1 -1
  848. package/esm/node/oidc/revokeToken.js +6 -3
  849. package/esm/node/oidc/revokeToken.js.map +1 -1
  850. package/esm/node/oidc/storage.js +50 -0
  851. package/esm/node/oidc/storage.js.map +1 -0
  852. package/esm/node/{types → oidc/types}/Token.js +0 -0
  853. package/esm/node/oidc/types/Token.js.map +1 -0
  854. package/esm/node/{types → oidc/types}/TokenManager.js +0 -0
  855. package/esm/node/oidc/types/TokenManager.js.map +1 -0
  856. package/esm/node/{types → oidc/types}/Transaction.js +0 -0
  857. package/esm/node/oidc/types/Transaction.js.map +1 -0
  858. package/esm/node/oidc/util/browser.js.map +1 -1
  859. package/esm/node/oidc/util/defaultTokenParams.js.map +1 -1
  860. package/esm/node/oidc/util/errors.js.map +1 -1
  861. package/esm/node/oidc/util/loginRedirect.js.map +1 -1
  862. package/esm/node/oidc/util/oauth.js.map +1 -1
  863. package/esm/node/oidc/util/oauthMeta.js.map +1 -1
  864. package/esm/node/oidc/util/prepareTokenParams.js.map +1 -1
  865. package/esm/node/oidc/util/refreshToken.js.map +1 -1
  866. package/esm/node/oidc/util/sharedStorage.js +54 -0
  867. package/esm/node/oidc/util/sharedStorage.js.map +1 -0
  868. package/esm/node/oidc/util/validateClaims.js.map +1 -1
  869. package/esm/node/oidc/util/validateToken.js +1 -3
  870. package/esm/node/oidc/util/validateToken.js.map +1 -1
  871. package/esm/node/oidc/verifyToken.js +0 -2
  872. package/esm/node/oidc/verifyToken.js.map +1 -1
  873. package/esm/node/package.json +5 -0
  874. package/esm/node/server/serverStorage.js +0 -4
  875. package/esm/node/server/serverStorage.js.map +1 -1
  876. package/esm/node/session/api.js +70 -0
  877. package/esm/node/session/api.js.map +1 -0
  878. package/esm/node/session/factory.js +27 -0
  879. package/esm/node/session/factory.js.map +1 -0
  880. package/esm/node/session/mixin.js +37 -0
  881. package/esm/node/session/mixin.js.map +1 -0
  882. package/esm/node/storage/BaseStorageManager.js +69 -0
  883. package/esm/node/storage/BaseStorageManager.js.map +1 -0
  884. package/esm/node/storage/SavedObject.js +76 -0
  885. package/esm/node/storage/SavedObject.js.map +1 -0
  886. package/esm/node/storage/mixin.js +26 -0
  887. package/esm/node/storage/mixin.js.map +1 -0
  888. package/esm/node/storage/options/StorageOptionsConstructor.js +31 -0
  889. package/esm/node/storage/options/StorageOptionsConstructor.js.map +1 -0
  890. package/esm/node/storage/options/node.js +40 -0
  891. package/esm/node/storage/options/node.js.map +1 -0
  892. package/esm/node/util/PromiseQueue.js +65 -0
  893. package/esm/node/util/PromiseQueue.js.map +1 -0
  894. package/package.json +71 -28
  895. package/types/lib/authn/AuthnTransactionImpl.d.ts +41 -0
  896. package/types/lib/authn/api.d.ts +23 -0
  897. package/types/lib/authn/factory.d.ts +15 -0
  898. package/types/lib/authn/index.d.ts +3 -0
  899. package/types/lib/authn/mixin.d.ts +16 -0
  900. package/types/lib/authn/types.d.ts +101 -0
  901. package/types/lib/authn/util/flattenEmbedded.d.ts +3 -0
  902. package/types/lib/authn/util/link2fn.d.ts +3 -0
  903. package/types/lib/authn/util/links2fns.d.ts +3 -0
  904. package/types/lib/authn/util/poll.d.ts +21 -0
  905. package/types/lib/authn/util/stateToken.d.ts +15 -0
  906. package/types/lib/base/factory.d.ts +2 -0
  907. package/types/lib/base/index.d.ts +3 -0
  908. package/types/lib/base/options.d.ts +16 -0
  909. package/types/lib/base/types.d.ts +43 -0
  910. package/types/lib/browser/browserStorage.d.ts +33 -0
  911. package/types/lib/browser/fingerprint.d.ts +14 -0
  912. package/{lib → types/lib}/clock.d.ts +0 -0
  913. package/types/lib/constants.d.ts +30 -0
  914. package/types/lib/core/AuthStateManager.d.ts +33 -0
  915. package/types/lib/core/ServiceManager/browser.d.ts +32 -0
  916. package/{lib/crypto/webcrypto.d.ts → types/lib/core/ServiceManager/index.d.ts} +0 -0
  917. package/types/lib/core/ServiceManager/node.d.ts +23 -0
  918. package/types/lib/core/factory.d.ts +5 -0
  919. package/types/lib/core/index.d.ts +7 -0
  920. package/types/lib/core/mixin.d.ts +4 -0
  921. package/types/lib/core/options.d.ts +50 -0
  922. package/types/lib/core/storage.d.ts +15 -0
  923. package/types/lib/core/types/AuthState.d.ts +33 -0
  924. package/types/lib/core/types/Service.d.ts +27 -0
  925. package/types/lib/core/types/api.d.ts +15 -0
  926. package/types/lib/core/types/index.d.ts +3 -0
  927. package/{lib → types/lib}/crypto/base64.d.ts +0 -0
  928. package/{lib → types/lib}/crypto/browser.d.ts +0 -0
  929. package/types/lib/crypto/index.d.ts +16 -0
  930. package/{lib → types/lib}/crypto/node.d.ts +0 -0
  931. package/{lib → types/lib}/crypto/oidcHash.d.ts +0 -0
  932. package/types/lib/crypto/types.d.ts +4 -0
  933. package/{lib → types/lib}/crypto/verifyToken.d.ts +0 -0
  934. package/types/lib/crypto/webcrypto.d.ts +12 -0
  935. package/types/lib/errors/AuthApiError.d.ts +24 -0
  936. package/{lib → types/lib}/errors/AuthPollStopError.d.ts +0 -0
  937. package/types/lib/errors/AuthSdkError.d.ts +22 -0
  938. package/{lib → types/lib}/errors/CustomError.d.ts +0 -0
  939. package/{lib → types/lib}/errors/OAuthError.d.ts +0 -0
  940. package/types/lib/errors/index.d.ts +19 -0
  941. package/types/lib/errors/types.d.ts +14 -0
  942. package/types/lib/exports/authn.d.ts +11 -0
  943. package/types/lib/exports/cdn/authn.d.ts +2 -0
  944. package/types/lib/exports/cdn/core.d.ts +2 -0
  945. package/types/lib/exports/cdn/default.d.ts +2 -0
  946. package/types/lib/exports/cdn/idx.d.ts +2 -0
  947. package/types/lib/exports/cdn/myaccount.d.ts +2 -0
  948. package/types/lib/exports/common.d.ts +11 -0
  949. package/types/lib/exports/core.d.ts +10 -0
  950. package/types/lib/exports/default.d.ts +13 -0
  951. package/types/lib/exports/idx.d.ts +11 -0
  952. package/types/lib/exports/myaccount.d.ts +11 -0
  953. package/{lib → types/lib}/features.d.ts +0 -0
  954. package/types/lib/fetch/fetchRequest.d.ts +14 -0
  955. package/types/lib/http/OktaUserAgent.d.ts +22 -0
  956. package/types/lib/http/headers.d.ts +14 -0
  957. package/types/lib/http/index.d.ts +6 -0
  958. package/types/lib/http/mixin.d.ts +4 -0
  959. package/types/lib/http/options.d.ts +25 -0
  960. package/types/lib/http/request.d.ts +16 -0
  961. package/types/lib/http/types.d.ts +65 -0
  962. package/types/lib/idx/IdxTransactionManager.d.ts +18 -0
  963. package/types/lib/idx/authenticate.d.ts +13 -0
  964. package/{lib → types/lib}/idx/authenticator/Authenticator.d.ts +0 -0
  965. package/{lib → types/lib}/idx/authenticator/OktaPassword.d.ts +0 -0
  966. package/{lib → types/lib}/idx/authenticator/OktaVerifyTotp.d.ts +0 -0
  967. package/{lib → types/lib}/idx/authenticator/SecurityQuestionEnrollment.d.ts +0 -0
  968. package/{lib → types/lib}/idx/authenticator/SecurityQuestionVerification.d.ts +0 -0
  969. package/{lib → types/lib}/idx/authenticator/VerificationCodeAuthenticator.d.ts +0 -0
  970. package/{lib → types/lib}/idx/authenticator/WebauthnEnrollment.d.ts +0 -0
  971. package/{lib → types/lib}/idx/authenticator/WebauthnVerification.d.ts +0 -0
  972. package/{lib → types/lib}/idx/authenticator/getAuthenticator.d.ts +0 -0
  973. package/{lib → types/lib}/idx/authenticator/index.d.ts +0 -0
  974. package/{lib → types/lib}/idx/authenticator/util.d.ts +0 -0
  975. package/types/lib/idx/cancel.d.ts +13 -0
  976. package/types/lib/idx/emailVerify.d.ts +23 -0
  977. package/types/lib/idx/factory/OktaAuthIdx.d.ts +9 -0
  978. package/types/lib/idx/factory/api.d.ts +14 -0
  979. package/types/lib/idx/factory/index.d.ts +2 -0
  980. package/{lib → types/lib}/idx/flow/AccountUnlockFlow.d.ts +0 -0
  981. package/{lib → types/lib}/idx/flow/AuthenticationFlow.d.ts +0 -0
  982. package/types/lib/idx/flow/FlowSpecification.d.ts +9 -0
  983. package/{lib → types/lib}/idx/flow/PasswordRecoveryFlow.d.ts +0 -0
  984. package/{lib → types/lib}/idx/flow/RegistrationFlow.d.ts +0 -0
  985. package/{lib → types/lib}/idx/flow/RemediationFlow.d.ts +0 -0
  986. package/{lib → types/lib}/idx/flow/index.d.ts +0 -0
  987. package/types/lib/idx/handleInteractionCodeRedirect.d.ts +13 -0
  988. package/types/lib/idx/idxState/index.d.ts +7 -0
  989. package/{lib → types/lib}/idx/idxState/v1/actionParser.d.ts +0 -0
  990. package/types/lib/idx/idxState/v1/generateIdxAction.d.ts +15 -0
  991. package/types/lib/idx/idxState/v1/idxResponseParser.d.ts +21 -0
  992. package/types/lib/idx/idxState/v1/makeIdxState.d.ts +14 -0
  993. package/{lib → types/lib}/idx/idxState/v1/parsers.d.ts +0 -0
  994. package/types/lib/idx/idxState/v1/remediationParser.d.ts +13 -0
  995. package/types/lib/idx/index.d.ts +30 -0
  996. package/types/lib/idx/interact.d.ts +26 -0
  997. package/types/lib/idx/introspect.d.ts +14 -0
  998. package/types/lib/idx/mixin.d.ts +6 -0
  999. package/types/lib/idx/options.d.ts +57 -0
  1000. package/types/lib/idx/poll.d.ts +13 -0
  1001. package/types/lib/idx/proceed.d.ts +14 -0
  1002. package/types/lib/idx/recoverPassword.d.ts +13 -0
  1003. package/types/lib/idx/register.d.ts +13 -0
  1004. package/types/lib/idx/remediate.d.ts +20 -0
  1005. package/{lib → types/lib}/idx/remediators/AuthenticatorEnrollmentData.d.ts +0 -0
  1006. package/types/lib/idx/remediators/AuthenticatorVerificationData.d.ts +24 -0
  1007. package/types/lib/idx/remediators/Base/AuthenticatorData.d.ts +26 -0
  1008. package/types/lib/idx/remediators/Base/Remediator.d.ts +42 -0
  1009. package/types/lib/idx/remediators/Base/SelectAuthenticator.d.ts +32 -0
  1010. package/types/lib/idx/remediators/Base/VerifyAuthenticator.d.ts +25 -0
  1011. package/{lib → types/lib}/idx/remediators/ChallengeAuthenticator.d.ts +0 -0
  1012. package/{lib → types/lib}/idx/remediators/ChallengePoll.d.ts +0 -0
  1013. package/{lib → types/lib}/idx/remediators/EnrollAuthenticator.d.ts +0 -0
  1014. package/types/lib/idx/remediators/EnrollPoll.d.ts +23 -0
  1015. package/types/lib/idx/remediators/EnrollProfile.d.ts +39 -0
  1016. package/types/lib/idx/remediators/EnrollmentChannelData.d.ts +57 -0
  1017. package/types/lib/idx/remediators/GenericRemediator/GenericRemediator.d.ts +8 -0
  1018. package/{lib → types/lib}/idx/remediators/GenericRemediator/index.d.ts +0 -0
  1019. package/{lib → types/lib}/idx/remediators/GenericRemediator/util.d.ts +0 -0
  1020. package/{lib → types/lib}/idx/remediators/Identify.d.ts +0 -0
  1021. package/{lib → types/lib}/idx/remediators/ReEnrollAuthenticator.d.ts +0 -0
  1022. package/{lib → types/lib}/idx/remediators/RedirectIdp.d.ts +0 -0
  1023. package/{lib → types/lib}/idx/remediators/ResetAuthenticator.d.ts +0 -0
  1024. package/{lib → types/lib}/idx/remediators/SelectAuthenticatorAuthenticate.d.ts +0 -0
  1025. package/{lib → types/lib}/idx/remediators/SelectAuthenticatorEnroll.d.ts +0 -0
  1026. package/types/lib/idx/remediators/SelectAuthenticatorUnlockAccount.d.ts +36 -0
  1027. package/{lib → types/lib}/idx/remediators/SelectEnrollProfile.d.ts +0 -0
  1028. package/types/lib/idx/remediators/SelectEnrollmentChannel.d.ts +46 -0
  1029. package/{lib → types/lib}/idx/remediators/Skip.d.ts +0 -0
  1030. package/{lib → types/lib}/idx/remediators/index.d.ts +0 -0
  1031. package/{lib → types/lib}/idx/remediators/util.d.ts +0 -0
  1032. package/types/lib/idx/run.d.ts +13 -0
  1033. package/types/lib/idx/startTransaction.d.ts +13 -0
  1034. package/types/lib/idx/storage.d.ts +18 -0
  1035. package/types/lib/idx/transactionMeta.d.ts +21 -0
  1036. package/{lib → types/lib}/idx/types/FlowIdentifier.d.ts +0 -0
  1037. package/types/lib/idx/types/api.d.ts +158 -0
  1038. package/{lib → types/lib}/idx/types/idx-js.d.ts +0 -0
  1039. package/types/lib/idx/types/index.d.ts +19 -0
  1040. package/types/lib/idx/types/meta.d.ts +22 -0
  1041. package/types/lib/idx/types/options.d.ts +67 -0
  1042. package/types/lib/idx/types/storage.d.ts +28 -0
  1043. package/types/lib/idx/unlockAccount.d.ts +13 -0
  1044. package/types/lib/idx/util.d.ts +14 -0
  1045. package/types/lib/idx/webauthn.d.ts +31 -0
  1046. package/{lib → types/lib}/myaccount/api.d.ts +0 -0
  1047. package/{lib → types/lib}/myaccount/emailApi.d.ts +0 -0
  1048. package/types/lib/myaccount/factory.d.ts +6 -0
  1049. package/types/lib/myaccount/index.d.ts +15 -0
  1050. package/types/lib/myaccount/mixin.d.ts +4 -0
  1051. package/{lib → types/lib}/myaccount/phoneApi.d.ts +0 -0
  1052. package/{lib → types/lib}/myaccount/profileApi.d.ts +0 -0
  1053. package/types/lib/myaccount/request.d.ts +29 -0
  1054. package/types/lib/myaccount/transactions/Base.d.ts +15 -0
  1055. package/{lib → types/lib}/myaccount/transactions/EmailChallengeTransaction.d.ts +0 -0
  1056. package/{lib → types/lib}/myaccount/transactions/EmailStatusTransaction.d.ts +0 -0
  1057. package/{lib → types/lib}/myaccount/transactions/EmailTransaction.d.ts +0 -0
  1058. package/{lib → types/lib}/myaccount/transactions/PhoneTransaction.d.ts +0 -0
  1059. package/{lib → types/lib}/myaccount/transactions/ProfileSchemaTransaction.d.ts +0 -0
  1060. package/{lib → types/lib}/myaccount/transactions/ProfileTransaction.d.ts +0 -0
  1061. package/{lib → types/lib}/myaccount/transactions/index.d.ts +0 -0
  1062. package/types/lib/myaccount/types.d.ts +58 -0
  1063. package/types/lib/oidc/TokenManager.d.ts +53 -0
  1064. package/types/lib/oidc/TransactionManager.d.ts +24 -0
  1065. package/types/lib/oidc/decodeToken.d.ts +2 -0
  1066. package/types/lib/oidc/endpoints/authorize.d.ts +14 -0
  1067. package/{lib → types/lib}/oidc/endpoints/index.d.ts +0 -0
  1068. package/types/lib/oidc/endpoints/token.d.ts +15 -0
  1069. package/types/lib/oidc/endpoints/well-known.d.ts +3 -0
  1070. package/types/lib/oidc/exchangeCodeForTokens.d.ts +14 -0
  1071. package/types/lib/oidc/factory/OktaAuthOAuth.d.ts +4 -0
  1072. package/types/lib/oidc/factory/api.d.ts +15 -0
  1073. package/types/lib/oidc/factory/index.d.ts +2 -0
  1074. package/types/lib/oidc/getToken.d.ts +2 -0
  1075. package/types/lib/oidc/getUserInfo.d.ts +2 -0
  1076. package/types/lib/oidc/getWithPopup.d.ts +2 -0
  1077. package/types/lib/oidc/getWithRedirect.d.ts +2 -0
  1078. package/types/lib/oidc/getWithoutPrompt.d.ts +2 -0
  1079. package/types/lib/oidc/handleOAuthResponse.d.ts +2 -0
  1080. package/types/lib/oidc/index.d.ts +35 -0
  1081. package/types/lib/oidc/mixin/browser.d.ts +17 -0
  1082. package/types/lib/oidc/mixin/index.d.ts +4 -0
  1083. package/types/lib/oidc/mixin/node.d.ts +17 -0
  1084. package/types/lib/oidc/options/OAuthOptionsConstructor.d.ts +48 -0
  1085. package/types/lib/oidc/options/browser.d.ts +1 -0
  1086. package/types/lib/oidc/options/index.d.ts +1 -0
  1087. package/types/lib/oidc/options/node.d.ts +1 -0
  1088. package/types/lib/oidc/parseFromUrl.d.ts +5 -0
  1089. package/types/lib/oidc/renewToken.d.ts +2 -0
  1090. package/types/lib/oidc/renewTokens.d.ts +2 -0
  1091. package/types/lib/oidc/renewTokensWithRefresh.d.ts +2 -0
  1092. package/types/lib/oidc/revokeToken.d.ts +14 -0
  1093. package/types/lib/oidc/storage.d.ts +16 -0
  1094. package/{lib → types/lib/oidc}/types/JWT.d.ts +0 -0
  1095. package/{lib → types/lib/oidc}/types/Token.d.ts +0 -0
  1096. package/types/lib/oidc/types/TokenManager.d.ts +61 -0
  1097. package/types/lib/oidc/types/Transaction.d.ts +29 -0
  1098. package/types/lib/oidc/types/TransactionManager.d.ts +15 -0
  1099. package/{lib → types/lib/oidc}/types/UserClaims.d.ts +0 -0
  1100. package/types/lib/oidc/types/api.d.ts +117 -0
  1101. package/types/lib/oidc/types/index.d.ts +22 -0
  1102. package/types/lib/oidc/types/meta.d.ts +21 -0
  1103. package/types/lib/oidc/types/options.d.ts +77 -0
  1104. package/{lib/types/OAuth.d.ts → types/lib/oidc/types/proto.d.ts} +0 -0
  1105. package/types/lib/oidc/types/storage.d.ts +13 -0
  1106. package/types/lib/oidc/util/browser.d.ts +6 -0
  1107. package/types/lib/oidc/util/defaultTokenParams.d.ts +2 -0
  1108. package/types/lib/oidc/util/errors.d.ts +15 -0
  1109. package/{lib → types/lib}/oidc/util/index.d.ts +0 -0
  1110. package/types/lib/oidc/util/loginRedirect.d.ts +30 -0
  1111. package/types/lib/oidc/util/oauth.d.ts +6 -0
  1112. package/types/lib/oidc/util/oauthMeta.d.ts +2 -0
  1113. package/{lib → types/lib}/oidc/util/pkce.d.ts +0 -0
  1114. package/types/lib/oidc/util/prepareTokenParams.d.ts +6 -0
  1115. package/types/lib/oidc/util/refreshToken.d.ts +3 -0
  1116. package/types/lib/oidc/util/sharedStorage.d.ts +5 -0
  1117. package/{lib → types/lib}/oidc/util/urlParams.d.ts +0 -0
  1118. package/types/lib/oidc/util/validateClaims.d.ts +14 -0
  1119. package/types/lib/oidc/util/validateToken.d.ts +2 -0
  1120. package/types/lib/oidc/verifyToken.d.ts +2 -0
  1121. package/types/lib/server/serverStorage.d.ts +24 -0
  1122. package/types/lib/services/AutoRenewService.d.ts +27 -0
  1123. package/types/lib/services/LeaderElectionService.d.ts +33 -0
  1124. package/types/lib/services/SyncStorageService.d.ts +38 -0
  1125. package/{lib → types/lib}/services/index.d.ts +0 -0
  1126. package/{lib/session.d.ts → types/lib/session/api.d.ts} +0 -0
  1127. package/types/lib/session/factory.d.ts +3 -0
  1128. package/types/lib/session/index.d.ts +4 -0
  1129. package/types/lib/session/mixin.d.ts +5 -0
  1130. package/types/lib/session/types.d.ts +18 -0
  1131. package/types/lib/storage/BaseStorageManager.d.ts +23 -0
  1132. package/types/lib/storage/SavedObject.d.ts +25 -0
  1133. package/types/lib/storage/index.d.ts +5 -0
  1134. package/types/lib/storage/mixin.d.ts +3 -0
  1135. package/types/lib/storage/options/StorageOptionsConstructor.d.ts +20 -0
  1136. package/types/lib/storage/options/browser.d.ts +15 -0
  1137. package/types/lib/storage/options/node.d.ts +15 -0
  1138. package/types/lib/storage/types.d.ts +78 -0
  1139. package/types/lib/util/PromiseQueue.d.ts +30 -0
  1140. package/{lib → types/lib}/util/console.d.ts +0 -0
  1141. package/types/lib/util/index.d.ts +17 -0
  1142. package/{lib → types/lib}/util/misc.d.ts +0 -0
  1143. package/{lib → types/lib}/util/object.d.ts +0 -0
  1144. package/{lib → types/lib}/util/types.d.ts +0 -0
  1145. package/{lib → types/lib}/util/url.d.ts +0 -0
  1146. package/umd/authn.js +3 -0
  1147. package/{dist/okta-auth-js.umd.js.LICENSE.txt → umd/authn.js.LICENSE.txt} +0 -0
  1148. package/umd/authn.js.map +1 -0
  1149. package/umd/core.js +3 -0
  1150. package/umd/core.js.LICENSE.txt +14 -0
  1151. package/umd/core.js.map +1 -0
  1152. package/umd/default.js +3 -0
  1153. package/umd/default.js.LICENSE.txt +14 -0
  1154. package/umd/default.js.map +1 -0
  1155. package/umd/idx.js +3 -0
  1156. package/umd/idx.js.LICENSE.txt +14 -0
  1157. package/umd/idx.js.map +1 -0
  1158. package/umd/myaccount.js +3 -0
  1159. package/umd/myaccount.js.LICENSE.txt +14 -0
  1160. package/umd/myaccount.js.map +1 -0
  1161. package/cjs/AuthStateManager.js +0 -231
  1162. package/cjs/AuthStateManager.js.map +0 -1
  1163. package/cjs/OktaAuth.js +0 -760
  1164. package/cjs/OktaAuth.js.map +0 -1
  1165. package/cjs/OktaUserAgent.js +0 -56
  1166. package/cjs/OktaUserAgent.js.map +0 -1
  1167. package/cjs/PromiseQueue.js +0 -89
  1168. package/cjs/PromiseQueue.js.map +0 -1
  1169. package/cjs/SavedObject.js +0 -112
  1170. package/cjs/SavedObject.js.map +0 -1
  1171. package/cjs/ServiceManager.js +0 -171
  1172. package/cjs/ServiceManager.js.map +0 -1
  1173. package/cjs/StorageManager.js +0 -210
  1174. package/cjs/StorageManager.js.map +0 -1
  1175. package/cjs/TokenManager.js +0 -496
  1176. package/cjs/TokenManager.js.map +0 -1
  1177. package/cjs/TransactionManager.js +0 -373
  1178. package/cjs/TransactionManager.js.map +0 -1
  1179. package/cjs/builderUtil.js +0 -49
  1180. package/cjs/builderUtil.js.map +0 -1
  1181. package/cjs/cdnEntry.js +0 -52
  1182. package/cjs/cdnEntry.js.map +0 -1
  1183. package/cjs/crypto/webauthn.js +0 -101
  1184. package/cjs/crypto/webauthn.js.map +0 -1
  1185. package/cjs/index.js +0 -186
  1186. package/cjs/index.js.map +0 -1
  1187. package/cjs/options/browser.js +0 -86
  1188. package/cjs/options/browser.js.map +0 -1
  1189. package/cjs/options/index.js +0 -105
  1190. package/cjs/options/index.js.map +0 -1
  1191. package/cjs/options/node.js +0 -45
  1192. package/cjs/options/node.js.map +0 -1
  1193. package/cjs/session.js +0 -88
  1194. package/cjs/session.js.map +0 -1
  1195. package/cjs/tx/AuthTransaction.js +0 -234
  1196. package/cjs/tx/AuthTransaction.js.map +0 -1
  1197. package/cjs/tx/TransactionState.js +0 -2
  1198. package/cjs/tx/TransactionState.js.map +0 -1
  1199. package/cjs/tx/api.js +0 -102
  1200. package/cjs/tx/api.js.map +0 -1
  1201. package/cjs/tx/index.js +0 -69
  1202. package/cjs/tx/index.js.map +0 -1
  1203. package/cjs/tx/poll.js +0 -138
  1204. package/cjs/tx/poll.js.map +0 -1
  1205. package/cjs/tx/util.js +0 -36
  1206. package/cjs/tx/util.js.map +0 -1
  1207. package/cjs/types/AuthState.js.map +0 -1
  1208. package/cjs/types/Cookies.js +0 -2
  1209. package/cjs/types/Cookies.js.map +0 -1
  1210. package/cjs/types/EventEmitter.js +0 -2
  1211. package/cjs/types/EventEmitter.js.map +0 -1
  1212. package/cjs/types/JWT.js.map +0 -1
  1213. package/cjs/types/OAuth.js +0 -2
  1214. package/cjs/types/OAuth.js.map +0 -1
  1215. package/cjs/types/OktaAuthOptions.js +0 -2
  1216. package/cjs/types/OktaAuthOptions.js.map +0 -1
  1217. package/cjs/types/Service.js.map +0 -1
  1218. package/cjs/types/Storage.js +0 -2
  1219. package/cjs/types/Storage.js.map +0 -1
  1220. package/cjs/types/Token.js.map +0 -1
  1221. package/cjs/types/TokenManager.js.map +0 -1
  1222. package/cjs/types/Transaction.js +0 -77
  1223. package/cjs/types/Transaction.js.map +0 -1
  1224. package/cjs/types/UserClaims.js.map +0 -1
  1225. package/cjs/types/api.js.map +0 -1
  1226. package/cjs/types/http.js +0 -2
  1227. package/cjs/types/http.js.map +0 -1
  1228. package/cjs/types/index.js +0 -212
  1229. package/cjs/types/index.js.map +0 -1
  1230. package/cjs/util/sharedStorage.js +0 -58
  1231. package/cjs/util/sharedStorage.js.map +0 -1
  1232. package/cjs/util/storage.js +0 -29
  1233. package/cjs/util/storage.js.map +0 -1
  1234. package/dist/myaccount.umd.js +0 -3
  1235. package/dist/myaccount.umd.js.map +0 -1
  1236. package/dist/okta-auth-js.umd.js +0 -3
  1237. package/dist/okta-auth-js.umd.js.map +0 -1
  1238. package/esm/browser/AuthStateManager.js +0 -161
  1239. package/esm/browser/AuthStateManager.js.map +0 -1
  1240. package/esm/browser/OktaAuth.js +0 -557
  1241. package/esm/browser/OktaAuth.js.map +0 -1
  1242. package/esm/browser/OktaUserAgent.js +0 -39
  1243. package/esm/browser/OktaUserAgent.js.map +0 -1
  1244. package/esm/browser/PromiseQueue.js +0 -65
  1245. package/esm/browser/PromiseQueue.js.map +0 -1
  1246. package/esm/browser/SavedObject.js +0 -82
  1247. package/esm/browser/SavedObject.js.map +0 -1
  1248. package/esm/browser/ServiceManager.js +0 -115
  1249. package/esm/browser/ServiceManager.js.map +0 -1
  1250. package/esm/browser/StorageManager.js +0 -148
  1251. package/esm/browser/StorageManager.js.map +0 -1
  1252. package/esm/browser/TokenManager.js +0 -386
  1253. package/esm/browser/TokenManager.js.map +0 -1
  1254. package/esm/browser/TransactionManager.js +0 -244
  1255. package/esm/browser/TransactionManager.js.map +0 -1
  1256. package/esm/browser/builderUtil.js +0 -39
  1257. package/esm/browser/builderUtil.js.map +0 -1
  1258. package/esm/browser/crypto/webauthn.js +0 -79
  1259. package/esm/browser/crypto/webauthn.js.map +0 -1
  1260. package/esm/browser/index.js +0 -92
  1261. package/esm/browser/index.js.map +0 -1
  1262. package/esm/browser/myaccount/myaccount/index.js +0 -24
  1263. package/esm/browser/myaccount/myaccount/index.js.map +0 -1
  1264. package/esm/browser/options/browser.js +0 -77
  1265. package/esm/browser/options/browser.js.map +0 -1
  1266. package/esm/browser/options/index.js +0 -85
  1267. package/esm/browser/options/index.js.map +0 -1
  1268. package/esm/browser/session.js +0 -66
  1269. package/esm/browser/session.js.map +0 -1
  1270. package/esm/browser/tx/AuthTransaction.js +0 -174
  1271. package/esm/browser/tx/AuthTransaction.js.map +0 -1
  1272. package/esm/browser/tx/api.js +0 -72
  1273. package/esm/browser/tx/api.js.map +0 -1
  1274. package/esm/browser/tx/poll.js +0 -117
  1275. package/esm/browser/tx/poll.js.map +0 -1
  1276. package/esm/browser/tx/util.js +0 -26
  1277. package/esm/browser/tx/util.js.map +0 -1
  1278. package/esm/browser/types/Token.js.map +0 -1
  1279. package/esm/browser/types/TokenManager.js.map +0 -1
  1280. package/esm/browser/types/Transaction.js.map +0 -1
  1281. package/esm/browser/util/sharedStorage.js +0 -56
  1282. package/esm/browser/util/sharedStorage.js.map +0 -1
  1283. package/esm/browser/util/storage.js +0 -26
  1284. package/esm/browser/util/storage.js.map +0 -1
  1285. package/esm/node/AuthStateManager.js +0 -161
  1286. package/esm/node/AuthStateManager.js.map +0 -1
  1287. package/esm/node/OktaAuth.js +0 -557
  1288. package/esm/node/OktaAuth.js.map +0 -1
  1289. package/esm/node/OktaUserAgent.js +0 -39
  1290. package/esm/node/OktaUserAgent.js.map +0 -1
  1291. package/esm/node/PromiseQueue.js +0 -65
  1292. package/esm/node/PromiseQueue.js.map +0 -1
  1293. package/esm/node/SavedObject.js +0 -82
  1294. package/esm/node/SavedObject.js.map +0 -1
  1295. package/esm/node/ServiceManager.js +0 -115
  1296. package/esm/node/ServiceManager.js.map +0 -1
  1297. package/esm/node/StorageManager.js +0 -148
  1298. package/esm/node/StorageManager.js.map +0 -1
  1299. package/esm/node/TokenManager.js +0 -387
  1300. package/esm/node/TokenManager.js.map +0 -1
  1301. package/esm/node/TransactionManager.js +0 -244
  1302. package/esm/node/TransactionManager.js.map +0 -1
  1303. package/esm/node/browser/browserStorage.js +0 -216
  1304. package/esm/node/browser/browserStorage.js.map +0 -1
  1305. package/esm/node/builderUtil.js +0 -39
  1306. package/esm/node/builderUtil.js.map +0 -1
  1307. package/esm/node/crypto/webauthn.js +0 -79
  1308. package/esm/node/crypto/webauthn.js.map +0 -1
  1309. package/esm/node/index.js +0 -92
  1310. package/esm/node/index.js.map +0 -1
  1311. package/esm/node/myaccount/myaccount/index.js +0 -24
  1312. package/esm/node/myaccount/myaccount/index.js.map +0 -1
  1313. package/esm/node/options/index.js +0 -85
  1314. package/esm/node/options/index.js.map +0 -1
  1315. package/esm/node/options/node.js +0 -41
  1316. package/esm/node/options/node.js.map +0 -1
  1317. package/esm/node/services/AutoRenewService.js +0 -77
  1318. package/esm/node/services/AutoRenewService.js.map +0 -1
  1319. package/esm/node/services/LeaderElectionService.js +0 -74
  1320. package/esm/node/services/LeaderElectionService.js.map +0 -1
  1321. package/esm/node/services/SyncStorageService.js +0 -130
  1322. package/esm/node/services/SyncStorageService.js.map +0 -1
  1323. package/esm/node/session.js +0 -66
  1324. package/esm/node/session.js.map +0 -1
  1325. package/esm/node/tx/AuthTransaction.js +0 -174
  1326. package/esm/node/tx/AuthTransaction.js.map +0 -1
  1327. package/esm/node/tx/api.js +0 -72
  1328. package/esm/node/tx/api.js.map +0 -1
  1329. package/esm/node/tx/poll.js +0 -117
  1330. package/esm/node/tx/poll.js.map +0 -1
  1331. package/esm/node/tx/util.js +0 -26
  1332. package/esm/node/tx/util.js.map +0 -1
  1333. package/esm/node/types/Token.js.map +0 -1
  1334. package/esm/node/types/TokenManager.js.map +0 -1
  1335. package/esm/node/types/Transaction.js.map +0 -1
  1336. package/esm/node/util/sharedStorage.js +0 -56
  1337. package/esm/node/util/sharedStorage.js.map +0 -1
  1338. package/esm/node/util/storage.js +0 -26
  1339. package/esm/node/util/storage.js.map +0 -1
  1340. package/esm/package.json +0 -5
  1341. package/lib/AuthStateManager.d.ts +0 -33
  1342. package/lib/OktaAuth.d.ts +0 -81
  1343. package/lib/OktaUserAgent.d.ts +0 -22
  1344. package/lib/PromiseQueue.d.ts +0 -30
  1345. package/lib/SavedObject.d.ts +0 -26
  1346. package/lib/ServiceManager.d.ts +0 -32
  1347. package/lib/StorageManager.d.ts +0 -28
  1348. package/lib/TokenManager.d.ts +0 -53
  1349. package/lib/TransactionManager.d.ts +0 -39
  1350. package/lib/browser/browserStorage.d.ts +0 -15
  1351. package/lib/browser/fingerprint.d.ts +0 -13
  1352. package/lib/builderUtil.d.ts +0 -14
  1353. package/lib/cdnEntry.d.ts +0 -18
  1354. package/lib/constants.d.ts +0 -33
  1355. package/lib/crypto/index.d.ts +0 -15
  1356. package/lib/crypto/webauthn.d.ts +0 -25
  1357. package/lib/errors/AuthApiError.d.ts +0 -23
  1358. package/lib/errors/AuthSdkError.d.ts +0 -22
  1359. package/lib/errors/index.d.ts +0 -18
  1360. package/lib/fetch/fetchRequest.d.ts +0 -14
  1361. package/lib/http/headers.d.ts +0 -14
  1362. package/lib/http/index.d.ts +0 -2
  1363. package/lib/http/request.d.ts +0 -16
  1364. package/lib/idx/authenticate.d.ts +0 -13
  1365. package/lib/idx/cancel.d.ts +0 -13
  1366. package/lib/idx/emailVerify.d.ts +0 -26
  1367. package/lib/idx/flow/FlowSpecification.d.ts +0 -9
  1368. package/lib/idx/handleInteractionCodeRedirect.d.ts +0 -13
  1369. package/lib/idx/idxState/index.d.ts +0 -7
  1370. package/lib/idx/idxState/v1/generateIdxAction.d.ts +0 -15
  1371. package/lib/idx/idxState/v1/idxResponseParser.d.ts +0 -21
  1372. package/lib/idx/idxState/v1/makeIdxState.d.ts +0 -14
  1373. package/lib/idx/idxState/v1/remediationParser.d.ts +0 -13
  1374. package/lib/idx/index.d.ts +0 -24
  1375. package/lib/idx/interact.d.ts +0 -26
  1376. package/lib/idx/introspect.d.ts +0 -14
  1377. package/lib/idx/poll.d.ts +0 -13
  1378. package/lib/idx/proceed.d.ts +0 -14
  1379. package/lib/idx/recoverPassword.d.ts +0 -13
  1380. package/lib/idx/register.d.ts +0 -13
  1381. package/lib/idx/remediate.d.ts +0 -21
  1382. package/lib/idx/remediators/AuthenticatorVerificationData.d.ts +0 -28
  1383. package/lib/idx/remediators/Base/AuthenticatorData.d.ts +0 -46
  1384. package/lib/idx/remediators/Base/Remediator.d.ts +0 -43
  1385. package/lib/idx/remediators/Base/SelectAuthenticator.d.ts +0 -54
  1386. package/lib/idx/remediators/Base/VerifyAuthenticator.d.ts +0 -26
  1387. package/lib/idx/remediators/EnrollPoll.d.ts +0 -23
  1388. package/lib/idx/remediators/EnrollProfile.d.ts +0 -39
  1389. package/lib/idx/remediators/EnrollmentChannelData.d.ts +0 -58
  1390. package/lib/idx/remediators/GenericRemediator/GenericRemediator.d.ts +0 -9
  1391. package/lib/idx/remediators/SelectAuthenticatorUnlockAccount.d.ts +0 -36
  1392. package/lib/idx/remediators/SelectEnrollmentChannel.d.ts +0 -48
  1393. package/lib/idx/run.d.ts +0 -13
  1394. package/lib/idx/startTransaction.d.ts +0 -13
  1395. package/lib/idx/transactionMeta.d.ts +0 -21
  1396. package/lib/idx/types/api.d.ts +0 -112
  1397. package/lib/idx/types/index.d.ts +0 -18
  1398. package/lib/idx/types/options.d.ts +0 -47
  1399. package/lib/idx/unlockAccount.d.ts +0 -13
  1400. package/lib/idx/util.d.ts +0 -15
  1401. package/lib/index.d.ts +0 -26
  1402. package/lib/myaccount/index.d.ts +0 -13
  1403. package/lib/myaccount/request.d.ts +0 -29
  1404. package/lib/myaccount/transactions/Base.d.ts +0 -15
  1405. package/lib/myaccount/types.d.ts +0 -55
  1406. package/lib/oidc/decodeToken.d.ts +0 -2
  1407. package/lib/oidc/endpoints/authorize.d.ts +0 -14
  1408. package/lib/oidc/endpoints/token.d.ts +0 -14
  1409. package/lib/oidc/endpoints/well-known.d.ts +0 -3
  1410. package/lib/oidc/exchangeCodeForTokens.d.ts +0 -14
  1411. package/lib/oidc/getToken.d.ts +0 -2
  1412. package/lib/oidc/getUserInfo.d.ts +0 -2
  1413. package/lib/oidc/getWithPopup.d.ts +0 -2
  1414. package/lib/oidc/getWithRedirect.d.ts +0 -2
  1415. package/lib/oidc/getWithoutPrompt.d.ts +0 -2
  1416. package/lib/oidc/handleOAuthResponse.d.ts +0 -2
  1417. package/lib/oidc/index.d.ts +0 -28
  1418. package/lib/oidc/parseFromUrl.d.ts +0 -5
  1419. package/lib/oidc/renewToken.d.ts +0 -2
  1420. package/lib/oidc/renewTokens.d.ts +0 -2
  1421. package/lib/oidc/renewTokensWithRefresh.d.ts +0 -2
  1422. package/lib/oidc/revokeToken.d.ts +0 -14
  1423. package/lib/oidc/util/browser.d.ts +0 -6
  1424. package/lib/oidc/util/defaultTokenParams.d.ts +0 -2
  1425. package/lib/oidc/util/errors.d.ts +0 -15
  1426. package/lib/oidc/util/loginRedirect.d.ts +0 -30
  1427. package/lib/oidc/util/oauth.d.ts +0 -6
  1428. package/lib/oidc/util/oauthMeta.d.ts +0 -2
  1429. package/lib/oidc/util/prepareTokenParams.d.ts +0 -5
  1430. package/lib/oidc/util/refreshToken.d.ts +0 -3
  1431. package/lib/oidc/util/validateClaims.d.ts +0 -14
  1432. package/lib/oidc/util/validateToken.d.ts +0 -2
  1433. package/lib/oidc/verifyToken.d.ts +0 -2
  1434. package/lib/options/browser.d.ts +0 -16
  1435. package/lib/options/index.d.ts +0 -14
  1436. package/lib/options/node.d.ts +0 -16
  1437. package/lib/server/serverStorage.d.ts +0 -25
  1438. package/lib/services/AutoRenewService.d.ts +0 -27
  1439. package/lib/services/LeaderElectionService.d.ts +0 -33
  1440. package/lib/services/SyncStorageService.d.ts +0 -38
  1441. package/lib/tx/AuthTransaction.d.ts +0 -58
  1442. package/lib/tx/TransactionState.d.ts +0 -37
  1443. package/lib/tx/api.d.ts +0 -18
  1444. package/lib/tx/index.d.ts +0 -17
  1445. package/lib/tx/poll.d.ts +0 -20
  1446. package/lib/tx/util.d.ts +0 -15
  1447. package/lib/types/AuthState.d.ts +0 -25
  1448. package/lib/types/Cookies.d.ts +0 -26
  1449. package/lib/types/EventEmitter.d.ts +0 -17
  1450. package/lib/types/OktaAuthOptions.d.ts +0 -93
  1451. package/lib/types/Service.d.ts +0 -26
  1452. package/lib/types/Storage.d.ts +0 -95
  1453. package/lib/types/TokenManager.d.ts +0 -39
  1454. package/lib/types/Transaction.d.ts +0 -40
  1455. package/lib/types/api.d.ts +0 -251
  1456. package/lib/types/http.d.ts +0 -47
  1457. package/lib/types/index.d.ts +0 -27
  1458. package/lib/util/index.d.ts +0 -17
  1459. package/lib/util/sharedStorage.d.ts +0 -6
  1460. package/lib/util/storage.d.ts +0 -12
@@ -1 +1 @@
1
- {"version":3,"file":"oauth.js","names":["generateState","genRandomString","generateNonce","getIssuer","sdk","options","issuer","removeTrailingSlash","getOAuthBaseUrl","baseUrl","getOAuthDomain","domain","split","getOAuthUrls","arguments","length","AuthSdkError","authorizeUrl","userinfoUrl","tokenUrl","logoutUrl","revokeUrl"],"sources":["../../../../lib/oidc/util/oauth.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/* eslint-disable complexity, max-statements */\nimport { genRandomString, removeTrailingSlash } from '../../util';\nimport AuthSdkError from '../../errors/AuthSdkError';\nimport { OktaAuthOptionsInterface, CustomUrls } from '../../types';\n\nexport function generateState() {\n return genRandomString(64);\n}\n\nexport function generateNonce() {\n return genRandomString(64);\n}\n\nfunction getIssuer(sdk: OktaAuthOptionsInterface, options: CustomUrls = {}) {\n const issuer = removeTrailingSlash(options.issuer) || sdk.options.issuer;\n return issuer;\n}\n\nexport function getOAuthBaseUrl(sdk: OktaAuthOptionsInterface, options: CustomUrls = {}) {\n const issuer = getIssuer(sdk, options);\n const baseUrl = issuer.indexOf('/oauth2') > 0 ? issuer : issuer + '/oauth2';\n return baseUrl;\n}\n\nexport function getOAuthDomain(sdk: OktaAuthOptionsInterface, options: CustomUrls = {}) {\n const issuer = getIssuer(sdk, options);\n const domain = issuer.split('/oauth2')[0];\n return domain;\n}\n\nexport function getOAuthUrls(sdk: OktaAuthOptionsInterface, options?: CustomUrls): CustomUrls {\n if (arguments.length > 2) {\n throw new AuthSdkError('As of version 3.0, \"getOAuthUrls\" takes only a single set of options');\n }\n options = options || {};\n\n // Get user-supplied arguments\n var authorizeUrl = removeTrailingSlash(options.authorizeUrl) || sdk.options.authorizeUrl;\n var issuer = getIssuer(sdk, options);\n var userinfoUrl = removeTrailingSlash(options.userinfoUrl) || sdk.options.userinfoUrl;\n var tokenUrl = removeTrailingSlash(options.tokenUrl) || sdk.options.tokenUrl;\n var logoutUrl = removeTrailingSlash(options.logoutUrl) || sdk.options.logoutUrl;\n var revokeUrl = removeTrailingSlash(options.revokeUrl) || sdk.options.revokeUrl;\n\n var baseUrl = getOAuthBaseUrl(sdk, options);\n\n authorizeUrl = authorizeUrl || baseUrl + '/v1/authorize';\n userinfoUrl = userinfoUrl || baseUrl + '/v1/userinfo';\n tokenUrl = tokenUrl || baseUrl + '/v1/token';\n revokeUrl = revokeUrl || baseUrl + '/v1/revoke';\n logoutUrl = logoutUrl || baseUrl + '/v1/logout';\n\n return {\n issuer: issuer,\n authorizeUrl: authorizeUrl,\n userinfoUrl: userinfoUrl,\n tokenUrl: tokenUrl,\n revokeUrl: revokeUrl,\n logoutUrl: logoutUrl\n };\n}\n"],"mappings":";;;;;;;;;;;;AAaA;;AACA;;AAdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AAKO,SAASA,aAAT,GAAyB;EAC9B,OAAO,IAAAC,qBAAA,EAAgB,EAAhB,CAAP;AACD;;AAEM,SAASC,aAAT,GAAyB;EAC9B,OAAO,IAAAD,qBAAA,EAAgB,EAAhB,CAAP;AACD;;AAED,SAASE,SAAT,CAAmBC,GAAnB,EAAkDC,OAAmB,GAAG,EAAxE,EAA4E;EAC1E,MAAMC,MAAM,GAAG,IAAAC,yBAAA,EAAoBF,OAAO,CAACC,MAA5B,KAAuCF,GAAG,CAACC,OAAJ,CAAYC,MAAlE;EACA,OAAOA,MAAP;AACD;;AAEM,SAASE,eAAT,CAAyBJ,GAAzB,EAAwDC,OAAmB,GAAG,EAA9E,EAAkF;EACvF,MAAMC,MAAM,GAAGH,SAAS,CAACC,GAAD,EAAMC,OAAN,CAAxB;EACA,MAAMI,OAAO,GAAG,sBAAAH,MAAM,MAAN,CAAAA,MAAM,EAAS,SAAT,CAAN,GAA4B,CAA5B,GAAgCA,MAAhC,GAAyCA,MAAM,GAAG,SAAlE;EACA,OAAOG,OAAP;AACD;;AAEM,SAASC,cAAT,CAAwBN,GAAxB,EAAuDC,OAAmB,GAAG,EAA7E,EAAiF;EACtF,MAAMC,MAAM,GAAGH,SAAS,CAACC,GAAD,EAAMC,OAAN,CAAxB;EACA,MAAMM,MAAM,GAAGL,MAAM,CAACM,KAAP,CAAa,SAAb,EAAwB,CAAxB,CAAf;EACA,OAAOD,MAAP;AACD;;AAEM,SAASE,YAAT,CAAsBT,GAAtB,EAAqDC,OAArD,EAAuF;EAC5F,IAAIS,SAAS,CAACC,MAAV,GAAmB,CAAvB,EAA0B;IACxB,MAAM,IAAIC,qBAAJ,CAAiB,sEAAjB,CAAN;EACD;;EACDX,OAAO,GAAGA,OAAO,IAAI,EAArB,CAJ4F,CAM5F;;EACA,IAAIY,YAAY,GAAG,IAAAV,yBAAA,EAAoBF,OAAO,CAACY,YAA5B,KAA6Cb,GAAG,CAACC,OAAJ,CAAYY,YAA5E;EACA,IAAIX,MAAM,GAAGH,SAAS,CAACC,GAAD,EAAMC,OAAN,CAAtB;EACA,IAAIa,WAAW,GAAG,IAAAX,yBAAA,EAAoBF,OAAO,CAACa,WAA5B,KAA4Cd,GAAG,CAACC,OAAJ,CAAYa,WAA1E;EACA,IAAIC,QAAQ,GAAG,IAAAZ,yBAAA,EAAoBF,OAAO,CAACc,QAA5B,KAAyCf,GAAG,CAACC,OAAJ,CAAYc,QAApE;EACA,IAAIC,SAAS,GAAG,IAAAb,yBAAA,EAAoBF,OAAO,CAACe,SAA5B,KAA0ChB,GAAG,CAACC,OAAJ,CAAYe,SAAtE;EACA,IAAIC,SAAS,GAAG,IAAAd,yBAAA,EAAoBF,OAAO,CAACgB,SAA5B,KAA0CjB,GAAG,CAACC,OAAJ,CAAYgB,SAAtE;EAEA,IAAIZ,OAAO,GAAGD,eAAe,CAACJ,GAAD,EAAMC,OAAN,CAA7B;EAEAY,YAAY,GAAGA,YAAY,IAAIR,OAAO,GAAG,eAAzC;EACAS,WAAW,GAAGA,WAAW,IAAIT,OAAO,GAAG,cAAvC;EACAU,QAAQ,GAAGA,QAAQ,IAAIV,OAAO,GAAG,WAAjC;EACAY,SAAS,GAAGA,SAAS,IAAIZ,OAAO,GAAG,YAAnC;EACAW,SAAS,GAAGA,SAAS,IAAIX,OAAO,GAAG,YAAnC;EAEA,OAAO;IACLH,MAAM,EAAEA,MADH;IAELW,YAAY,EAAEA,YAFT;IAGLC,WAAW,EAAEA,WAHR;IAILC,QAAQ,EAAEA,QAJL;IAKLE,SAAS,EAAEA,SALN;IAMLD,SAAS,EAAEA;EANN,CAAP;AAQD"}
1
+ {"version":3,"file":"oauth.js","names":["generateState","genRandomString","generateNonce","getIssuer","sdk","options","issuer","removeTrailingSlash","getOAuthBaseUrl","baseUrl","indexOf","getOAuthDomain","domain","split","getOAuthUrls","arguments","length","AuthSdkError","authorizeUrl","userinfoUrl","tokenUrl","logoutUrl","revokeUrl"],"sources":["../../../../lib/oidc/util/oauth.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/* eslint-disable complexity, max-statements */\nimport { genRandomString, removeTrailingSlash } from '../../util';\nimport AuthSdkError from '../../errors/AuthSdkError';\nimport { OktaAuthOAuthInterface, CustomUrls } from '../types';\n\nexport function generateState() {\n return genRandomString(64);\n}\n\nexport function generateNonce() {\n return genRandomString(64);\n}\n\nfunction getIssuer(sdk: OktaAuthOAuthInterface, options: CustomUrls = {}) {\n const issuer = removeTrailingSlash(options.issuer) || sdk.options.issuer;\n return issuer;\n}\n\nexport function getOAuthBaseUrl(sdk: OktaAuthOAuthInterface, options: CustomUrls = {}) {\n const issuer = getIssuer(sdk, options);\n const baseUrl = issuer.indexOf('/oauth2') > 0 ? issuer : issuer + '/oauth2';\n return baseUrl;\n}\n\nexport function getOAuthDomain(sdk: OktaAuthOAuthInterface, options: CustomUrls = {}) {\n const issuer = getIssuer(sdk, options);\n const domain = issuer.split('/oauth2')[0];\n return domain;\n}\n\nexport function getOAuthUrls(sdk: OktaAuthOAuthInterface, options?: CustomUrls): CustomUrls {\n if (arguments.length > 2) {\n throw new AuthSdkError('As of version 3.0, \"getOAuthUrls\" takes only a single set of options');\n }\n options = options || {};\n\n // Get user-supplied arguments\n var authorizeUrl = removeTrailingSlash(options.authorizeUrl) || sdk.options.authorizeUrl;\n var issuer = getIssuer(sdk, options);\n var userinfoUrl = removeTrailingSlash(options.userinfoUrl) || sdk.options.userinfoUrl;\n var tokenUrl = removeTrailingSlash(options.tokenUrl) || sdk.options.tokenUrl;\n var logoutUrl = removeTrailingSlash(options.logoutUrl) || sdk.options.logoutUrl;\n var revokeUrl = removeTrailingSlash(options.revokeUrl) || sdk.options.revokeUrl;\n\n var baseUrl = getOAuthBaseUrl(sdk, options);\n\n authorizeUrl = authorizeUrl || baseUrl + '/v1/authorize';\n userinfoUrl = userinfoUrl || baseUrl + '/v1/userinfo';\n tokenUrl = tokenUrl || baseUrl + '/v1/token';\n revokeUrl = revokeUrl || baseUrl + '/v1/revoke';\n logoutUrl = logoutUrl || baseUrl + '/v1/logout';\n\n return {\n issuer: issuer,\n authorizeUrl: authorizeUrl,\n userinfoUrl: userinfoUrl,\n tokenUrl: tokenUrl,\n revokeUrl: revokeUrl,\n logoutUrl: logoutUrl\n };\n}\n"],"mappings":";;;;;;;;;;AAaA;;AACA;;AAdA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AAKO,SAASA,aAAT,GAAyB;EAC9B,OAAO,IAAAC,qBAAA,EAAgB,EAAhB,CAAP;AACD;;AAEM,SAASC,aAAT,GAAyB;EAC9B,OAAO,IAAAD,qBAAA,EAAgB,EAAhB,CAAP;AACD;;AAED,SAASE,SAAT,CAAmBC,GAAnB,EAAgDC,OAAmB,GAAG,EAAtE,EAA0E;EACxE,MAAMC,MAAM,GAAG,IAAAC,yBAAA,EAAoBF,OAAO,CAACC,MAA5B,KAAuCF,GAAG,CAACC,OAAJ,CAAYC,MAAlE;EACA,OAAOA,MAAP;AACD;;AAEM,SAASE,eAAT,CAAyBJ,GAAzB,EAAsDC,OAAmB,GAAG,EAA5E,EAAgF;EACrF,MAAMC,MAAM,GAAGH,SAAS,CAACC,GAAD,EAAMC,OAAN,CAAxB;EACA,MAAMI,OAAO,GAAGH,MAAM,CAACI,OAAP,CAAe,SAAf,IAA4B,CAA5B,GAAgCJ,MAAhC,GAAyCA,MAAM,GAAG,SAAlE;EACA,OAAOG,OAAP;AACD;;AAEM,SAASE,cAAT,CAAwBP,GAAxB,EAAqDC,OAAmB,GAAG,EAA3E,EAA+E;EACpF,MAAMC,MAAM,GAAGH,SAAS,CAACC,GAAD,EAAMC,OAAN,CAAxB;EACA,MAAMO,MAAM,GAAGN,MAAM,CAACO,KAAP,CAAa,SAAb,EAAwB,CAAxB,CAAf;EACA,OAAOD,MAAP;AACD;;AAEM,SAASE,YAAT,CAAsBV,GAAtB,EAAmDC,OAAnD,EAAqF;EAC1F,IAAIU,SAAS,CAACC,MAAV,GAAmB,CAAvB,EAA0B;IACxB,MAAM,IAAIC,qBAAJ,CAAiB,sEAAjB,CAAN;EACD;;EACDZ,OAAO,GAAGA,OAAO,IAAI,EAArB,CAJ0F,CAM1F;;EACA,IAAIa,YAAY,GAAG,IAAAX,yBAAA,EAAoBF,OAAO,CAACa,YAA5B,KAA6Cd,GAAG,CAACC,OAAJ,CAAYa,YAA5E;EACA,IAAIZ,MAAM,GAAGH,SAAS,CAACC,GAAD,EAAMC,OAAN,CAAtB;EACA,IAAIc,WAAW,GAAG,IAAAZ,yBAAA,EAAoBF,OAAO,CAACc,WAA5B,KAA4Cf,GAAG,CAACC,OAAJ,CAAYc,WAA1E;EACA,IAAIC,QAAQ,GAAG,IAAAb,yBAAA,EAAoBF,OAAO,CAACe,QAA5B,KAAyChB,GAAG,CAACC,OAAJ,CAAYe,QAApE;EACA,IAAIC,SAAS,GAAG,IAAAd,yBAAA,EAAoBF,OAAO,CAACgB,SAA5B,KAA0CjB,GAAG,CAACC,OAAJ,CAAYgB,SAAtE;EACA,IAAIC,SAAS,GAAG,IAAAf,yBAAA,EAAoBF,OAAO,CAACiB,SAA5B,KAA0ClB,GAAG,CAACC,OAAJ,CAAYiB,SAAtE;EAEA,IAAIb,OAAO,GAAGD,eAAe,CAACJ,GAAD,EAAMC,OAAN,CAA7B;EAEAa,YAAY,GAAGA,YAAY,IAAIT,OAAO,GAAG,eAAzC;EACAU,WAAW,GAAGA,WAAW,IAAIV,OAAO,GAAG,cAAvC;EACAW,QAAQ,GAAGA,QAAQ,IAAIX,OAAO,GAAG,WAAjC;EACAa,SAAS,GAAGA,SAAS,IAAIb,OAAO,GAAG,YAAnC;EACAY,SAAS,GAAGA,SAAS,IAAIZ,OAAO,GAAG,YAAnC;EAEA,OAAO;IACLH,MAAM,EAAEA,MADH;IAELY,YAAY,EAAEA,YAFT;IAGLC,WAAW,EAAEA,WAHR;IAILC,QAAQ,EAAEA,QAJL;IAKLE,SAAS,EAAEA,SALN;IAMLD,SAAS,EAAEA;EANN,CAAP;AAQD"}
@@ -1 +1 @@
1
- {"version":3,"file":"oauthMeta.js","names":["createOAuthMeta","sdk","tokenParams","issuer","options","urls","getOAuthUrls","oauthMeta","clientId","redirectUri","responseType","responseMode","scopes","state","nonce","ignoreSignature","pkce","pkceMeta","codeVerifier","codeChallengeMethod","codeChallenge"],"sources":["../../../../lib/oidc/util/oauthMeta.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-non-null-assertion */\nimport { OAuthTransactionMeta, OktaAuthOptionsInterface, PKCETransactionMeta, TokenParams } from '../../types';\nimport { getOAuthUrls } from './oauth';\n\nexport function createOAuthMeta(\n sdk: OktaAuthOptionsInterface, \n tokenParams: TokenParams\n): OAuthTransactionMeta | PKCETransactionMeta {\n const issuer = sdk.options.issuer!;\n const urls = getOAuthUrls(sdk, tokenParams);\n const oauthMeta: OAuthTransactionMeta = {\n issuer,\n urls,\n clientId: tokenParams.clientId!,\n redirectUri: tokenParams.redirectUri!,\n responseType: tokenParams.responseType!,\n responseMode: tokenParams.responseMode!,\n scopes: tokenParams.scopes!,\n state: tokenParams.state!,\n nonce: tokenParams.nonce!,\n ignoreSignature: tokenParams.ignoreSignature!,\n };\n\n if (tokenParams.pkce === false) {\n // Implicit flow or authorization_code without PKCE\n return oauthMeta;\n }\n\n const pkceMeta: PKCETransactionMeta = {\n ...oauthMeta,\n codeVerifier: tokenParams.codeVerifier!,\n codeChallengeMethod: tokenParams.codeChallengeMethod!,\n codeChallenge: tokenParams.codeChallenge!,\n };\n\n return pkceMeta;\n}\n"],"mappings":";;;;AAEA;;AAFA;AAIO,SAASA,eAAT,CACLC,GADK,EAELC,WAFK,EAGuC;EAC5C,MAAMC,MAAM,GAAGF,GAAG,CAACG,OAAJ,CAAYD,MAA3B;EACA,MAAME,IAAI,GAAG,IAAAC,mBAAA,EAAaL,GAAb,EAAkBC,WAAlB,CAAb;EACA,MAAMK,SAA+B,GAAG;IACtCJ,MADsC;IAEtCE,IAFsC;IAGtCG,QAAQ,EAAEN,WAAW,CAACM,QAHgB;IAItCC,WAAW,EAAEP,WAAW,CAACO,WAJa;IAKtCC,YAAY,EAAER,WAAW,CAACQ,YALY;IAMtCC,YAAY,EAAET,WAAW,CAACS,YANY;IAOtCC,MAAM,EAAEV,WAAW,CAACU,MAPkB;IAQtCC,KAAK,EAAEX,WAAW,CAACW,KARmB;IAStCC,KAAK,EAAEZ,WAAW,CAACY,KATmB;IAUtCC,eAAe,EAAEb,WAAW,CAACa;EAVS,CAAxC;;EAaA,IAAIb,WAAW,CAACc,IAAZ,KAAqB,KAAzB,EAAgC;IAC9B;IACA,OAAOT,SAAP;EACD;;EAED,MAAMU,QAA6B,GAAG,EACpC,GAAGV,SADiC;IAEpCW,YAAY,EAAEhB,WAAW,CAACgB,YAFU;IAGpCC,mBAAmB,EAAEjB,WAAW,CAACiB,mBAHG;IAIpCC,aAAa,EAAElB,WAAW,CAACkB;EAJS,CAAtC;EAOA,OAAOH,QAAP;AACD"}
1
+ {"version":3,"file":"oauthMeta.js","names":["createOAuthMeta","sdk","tokenParams","issuer","options","urls","getOAuthUrls","oauthMeta","clientId","redirectUri","responseType","responseMode","scopes","state","nonce","ignoreSignature","pkce","pkceMeta","codeVerifier","codeChallengeMethod","codeChallenge"],"sources":["../../../../lib/oidc/util/oauthMeta.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-non-null-assertion */\nimport { OAuthTransactionMeta, OktaAuthOAuthInterface, PKCETransactionMeta, TokenParams } from '../types';\nimport { getOAuthUrls } from './oauth';\n\nexport function createOAuthMeta(\n sdk: OktaAuthOAuthInterface, \n tokenParams: TokenParams\n): OAuthTransactionMeta | PKCETransactionMeta {\n const issuer = sdk.options.issuer!;\n const urls = getOAuthUrls(sdk, tokenParams);\n const oauthMeta: OAuthTransactionMeta = {\n issuer,\n urls,\n clientId: tokenParams.clientId!,\n redirectUri: tokenParams.redirectUri!,\n responseType: tokenParams.responseType!,\n responseMode: tokenParams.responseMode!,\n scopes: tokenParams.scopes!,\n state: tokenParams.state!,\n nonce: tokenParams.nonce!,\n ignoreSignature: tokenParams.ignoreSignature!,\n };\n\n if (tokenParams.pkce === false) {\n // Implicit flow or authorization_code without PKCE\n return oauthMeta;\n }\n\n const pkceMeta: PKCETransactionMeta = {\n ...oauthMeta,\n codeVerifier: tokenParams.codeVerifier!,\n codeChallengeMethod: tokenParams.codeChallengeMethod!,\n codeChallenge: tokenParams.codeChallenge!,\n };\n\n return pkceMeta;\n}\n"],"mappings":";;;;AAEA;;AAFA;AAIO,SAASA,eAAT,CACLC,GADK,EAELC,WAFK,EAGuC;EAC5C,MAAMC,MAAM,GAAGF,GAAG,CAACG,OAAJ,CAAYD,MAA3B;EACA,MAAME,IAAI,GAAG,IAAAC,mBAAA,EAAaL,GAAb,EAAkBC,WAAlB,CAAb;EACA,MAAMK,SAA+B,GAAG;IACtCJ,MADsC;IAEtCE,IAFsC;IAGtCG,QAAQ,EAAEN,WAAW,CAACM,QAHgB;IAItCC,WAAW,EAAEP,WAAW,CAACO,WAJa;IAKtCC,YAAY,EAAER,WAAW,CAACQ,YALY;IAMtCC,YAAY,EAAET,WAAW,CAACS,YANY;IAOtCC,MAAM,EAAEV,WAAW,CAACU,MAPkB;IAQtCC,KAAK,EAAEX,WAAW,CAACW,KARmB;IAStCC,KAAK,EAAEZ,WAAW,CAACY,KATmB;IAUtCC,eAAe,EAAEb,WAAW,CAACa;EAVS,CAAxC;;EAaA,IAAIb,WAAW,CAACc,IAAZ,KAAqB,KAAzB,EAAgC;IAC9B;IACA,OAAOT,SAAP;EACD;;EAED,MAAMU,QAA6B,GAAG,EACpC,GAAGV,SADiC;IAEpCW,YAAY,EAAEhB,WAAW,CAACgB,YAFU;IAGpCC,mBAAmB,EAAEjB,WAAW,CAACiB,mBAHG;IAIpCC,aAAa,EAAElB,WAAW,CAACkB;EAJS,CAAtC;EAOA,OAAOH,QAAP;AACD"}
@@ -1,13 +1,7 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
4
-
5
3
  exports.default = void 0;
6
4
 
7
- var _from = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/array/from"));
8
-
9
- var _slice = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/slice"));
10
-
11
5
  var _crypto = require("../../crypto");
12
6
 
13
7
  var _constants = require("../../constants");
@@ -35,20 +29,18 @@ function getRandomString(length) {
35
29
 
36
30
  _crypto.webcrypto.getRandomValues(a);
37
31
 
38
- var str = (0, _from.default)(a, dec2hex).join('');
39
- return (0, _slice.default)(str).call(str, 0, length);
32
+ var str = Array.from(a, dec2hex).join('');
33
+ return str.slice(0, length);
40
34
  }
41
35
 
42
36
  function generateVerifier(prefix) {
43
- var _context;
44
-
45
37
  var verifier = prefix || '';
46
38
 
47
39
  if (verifier.length < _constants.MIN_VERIFIER_LENGTH) {
48
40
  verifier = verifier + getRandomString(_constants.MIN_VERIFIER_LENGTH - verifier.length);
49
41
  }
50
42
 
51
- return (0, _slice.default)(_context = encodeURIComponent(verifier)).call(_context, 0, _constants.MAX_VERIFIER_LENGTH);
43
+ return encodeURIComponent(verifier).slice(0, _constants.MAX_VERIFIER_LENGTH);
52
44
  }
53
45
 
54
46
  function computeChallenge(str) {
@@ -1 +1 @@
1
- {"version":3,"file":"pkce.js","names":["dec2hex","dec","toString","substr","getRandomString","length","a","Uint8Array","Math","ceil","webcrypto","getRandomValues","str","join","generateVerifier","prefix","verifier","MIN_VERIFIER_LENGTH","encodeURIComponent","MAX_VERIFIER_LENGTH","computeChallenge","buffer","TextEncoder","encode","subtle","digest","then","arrayBuffer","hash","String","fromCharCode","apply","b64u","stringToBase64Url","DEFAULT_CODE_CHALLENGE_METHOD"],"sources":["../../../../lib/oidc/util/pkce.ts"],"sourcesContent":["/*!\n * Copyright (c) 2019-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n *\n */\n\n /* eslint-disable complexity, max-statements */\nimport { stringToBase64Url, webcrypto } from '../../crypto';\nimport { MIN_VERIFIER_LENGTH, MAX_VERIFIER_LENGTH, DEFAULT_CODE_CHALLENGE_METHOD } from '../../constants';\n\nfunction dec2hex (dec) {\n return ('0' + dec.toString(16)).substr(-2);\n}\n\nfunction getRandomString(length) {\n var a = new Uint8Array(Math.ceil(length / 2));\n webcrypto.getRandomValues(a);\n var str = Array.from(a, dec2hex).join('');\n return str.slice(0, length);\n}\n\nfunction generateVerifier(prefix?: string): string {\n var verifier = prefix || '';\n if (verifier.length < MIN_VERIFIER_LENGTH) {\n verifier = verifier + getRandomString(MIN_VERIFIER_LENGTH - verifier.length);\n }\n return encodeURIComponent(verifier).slice(0, MAX_VERIFIER_LENGTH);\n}\n\nfunction computeChallenge(str: string): PromiseLike<any> { \n var buffer = new TextEncoder().encode(str);\n return webcrypto.subtle.digest('SHA-256', buffer).then(function(arrayBuffer) {\n var hash = String.fromCharCode.apply(null, new Uint8Array(arrayBuffer) as unknown as number[]);\n var b64u = stringToBase64Url(hash); // url-safe base64 variant\n return b64u;\n });\n}\n\nexport default {\n DEFAULT_CODE_CHALLENGE_METHOD,\n generateVerifier,\n computeChallenge\n};\n"],"mappings":";;;;;;;;;;AAcA;;AACA;;AAfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEC;AAID,SAASA,OAAT,CAAkBC,GAAlB,EAAuB;EACrB,OAAO,CAAC,MAAMA,GAAG,CAACC,QAAJ,CAAa,EAAb,CAAP,EAAyBC,MAAzB,CAAgC,CAAC,CAAjC,CAAP;AACD;;AAED,SAASC,eAAT,CAAyBC,MAAzB,EAAiC;EAC/B,IAAIC,CAAC,GAAG,IAAIC,UAAJ,CAAeC,IAAI,CAACC,IAAL,CAAUJ,MAAM,GAAG,CAAnB,CAAf,CAAR;;EACAK,iBAAA,CAAUC,eAAV,CAA0BL,CAA1B;;EACA,IAAIM,GAAG,GAAG,mBAAWN,CAAX,EAAcN,OAAd,EAAuBa,IAAvB,CAA4B,EAA5B,CAAV;EACA,OAAO,oBAAAD,GAAG,MAAH,CAAAA,GAAG,EAAO,CAAP,EAAUP,MAAV,CAAV;AACD;;AAED,SAASS,gBAAT,CAA0BC,MAA1B,EAAmD;EAAA;;EACjD,IAAIC,QAAQ,GAAGD,MAAM,IAAI,EAAzB;;EACA,IAAIC,QAAQ,CAACX,MAAT,GAAkBY,8BAAtB,EAA2C;IACzCD,QAAQ,GAAGA,QAAQ,GAAGZ,eAAe,CAACa,8BAAA,GAAsBD,QAAQ,CAACX,MAAhC,CAArC;EACD;;EACD,OAAO,+BAAAa,kBAAkB,CAACF,QAAD,CAAlB,iBAAmC,CAAnC,EAAsCG,8BAAtC,CAAP;AACD;;AAED,SAASC,gBAAT,CAA0BR,GAA1B,EAAyD;EACvD,IAAIS,MAAM,GAAG,IAAIC,WAAJ,GAAkBC,MAAlB,CAAyBX,GAAzB,CAAb;EACA,OAAOF,iBAAA,CAAUc,MAAV,CAAiBC,MAAjB,CAAwB,SAAxB,EAAmCJ,MAAnC,EAA2CK,IAA3C,CAAgD,UAASC,WAAT,EAAsB;IAC3E,IAAIC,IAAI,GAAGC,MAAM,CAACC,YAAP,CAAoBC,KAApB,CAA0B,IAA1B,EAAgC,IAAIxB,UAAJ,CAAeoB,WAAf,CAAhC,CAAX;IACA,IAAIK,IAAI,GAAG,IAAAC,yBAAA,EAAkBL,IAAlB,CAAX,CAF2E,CAEvC;;IACpC,OAAOI,IAAP;EACD,CAJM,CAAP;AAKD;;eAEc;EACbE,6BAA6B,EAA7BA,wCADa;EAEbpB,gBAFa;EAGbM;AAHa,C"}
1
+ {"version":3,"file":"pkce.js","names":["dec2hex","dec","toString","substr","getRandomString","length","a","Uint8Array","Math","ceil","webcrypto","getRandomValues","str","Array","from","join","slice","generateVerifier","prefix","verifier","MIN_VERIFIER_LENGTH","encodeURIComponent","MAX_VERIFIER_LENGTH","computeChallenge","buffer","TextEncoder","encode","subtle","digest","then","arrayBuffer","hash","String","fromCharCode","apply","b64u","stringToBase64Url","DEFAULT_CODE_CHALLENGE_METHOD"],"sources":["../../../../lib/oidc/util/pkce.ts"],"sourcesContent":["/*!\n * Copyright (c) 2019-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n *\n */\n\n /* eslint-disable complexity, max-statements */\nimport { stringToBase64Url, webcrypto } from '../../crypto';\nimport { MIN_VERIFIER_LENGTH, MAX_VERIFIER_LENGTH, DEFAULT_CODE_CHALLENGE_METHOD } from '../../constants';\n\nfunction dec2hex (dec) {\n return ('0' + dec.toString(16)).substr(-2);\n}\n\nfunction getRandomString(length) {\n var a = new Uint8Array(Math.ceil(length / 2));\n webcrypto.getRandomValues(a);\n var str = Array.from(a, dec2hex).join('');\n return str.slice(0, length);\n}\n\nfunction generateVerifier(prefix?: string): string {\n var verifier = prefix || '';\n if (verifier.length < MIN_VERIFIER_LENGTH) {\n verifier = verifier + getRandomString(MIN_VERIFIER_LENGTH - verifier.length);\n }\n return encodeURIComponent(verifier).slice(0, MAX_VERIFIER_LENGTH);\n}\n\nfunction computeChallenge(str: string): PromiseLike<any> { \n var buffer = new TextEncoder().encode(str);\n return webcrypto.subtle.digest('SHA-256', buffer).then(function(arrayBuffer) {\n var hash = String.fromCharCode.apply(null, new Uint8Array(arrayBuffer) as unknown as number[]);\n var b64u = stringToBase64Url(hash); // url-safe base64 variant\n return b64u;\n });\n}\n\nexport default {\n DEFAULT_CODE_CHALLENGE_METHOD,\n generateVerifier,\n computeChallenge\n};\n"],"mappings":";;;;AAcA;;AACA;;AAfA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEC;AAID,SAASA,OAAT,CAAkBC,GAAlB,EAAuB;EACrB,OAAO,CAAC,MAAMA,GAAG,CAACC,QAAJ,CAAa,EAAb,CAAP,EAAyBC,MAAzB,CAAgC,CAAC,CAAjC,CAAP;AACD;;AAED,SAASC,eAAT,CAAyBC,MAAzB,EAAiC;EAC/B,IAAIC,CAAC,GAAG,IAAIC,UAAJ,CAAeC,IAAI,CAACC,IAAL,CAAUJ,MAAM,GAAG,CAAnB,CAAf,CAAR;;EACAK,iBAAA,CAAUC,eAAV,CAA0BL,CAA1B;;EACA,IAAIM,GAAG,GAAGC,KAAK,CAACC,IAAN,CAAWR,CAAX,EAAcN,OAAd,EAAuBe,IAAvB,CAA4B,EAA5B,CAAV;EACA,OAAOH,GAAG,CAACI,KAAJ,CAAU,CAAV,EAAaX,MAAb,CAAP;AACD;;AAED,SAASY,gBAAT,CAA0BC,MAA1B,EAAmD;EACjD,IAAIC,QAAQ,GAAGD,MAAM,IAAI,EAAzB;;EACA,IAAIC,QAAQ,CAACd,MAAT,GAAkBe,8BAAtB,EAA2C;IACzCD,QAAQ,GAAGA,QAAQ,GAAGf,eAAe,CAACgB,8BAAA,GAAsBD,QAAQ,CAACd,MAAhC,CAArC;EACD;;EACD,OAAOgB,kBAAkB,CAACF,QAAD,CAAlB,CAA6BH,KAA7B,CAAmC,CAAnC,EAAsCM,8BAAtC,CAAP;AACD;;AAED,SAASC,gBAAT,CAA0BX,GAA1B,EAAyD;EACvD,IAAIY,MAAM,GAAG,IAAIC,WAAJ,GAAkBC,MAAlB,CAAyBd,GAAzB,CAAb;EACA,OAAOF,iBAAA,CAAUiB,MAAV,CAAiBC,MAAjB,CAAwB,SAAxB,EAAmCJ,MAAnC,EAA2CK,IAA3C,CAAgD,UAASC,WAAT,EAAsB;IAC3E,IAAIC,IAAI,GAAGC,MAAM,CAACC,YAAP,CAAoBC,KAApB,CAA0B,IAA1B,EAAgC,IAAI3B,UAAJ,CAAeuB,WAAf,CAAhC,CAAX;IACA,IAAIK,IAAI,GAAG,IAAAC,yBAAA,EAAkBL,IAAlB,CAAX,CAF2E,CAEvC;;IACpC,OAAOI,IAAP;EACD,CAJM,CAAP;AAKD;;eAEc;EACbE,6BAA6B,EAA7BA,wCADa;EAEbpB,gBAFa;EAGbM;AAHa,C"}
@@ -1,14 +1,12 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
5
  exports.assertPKCESupport = assertPKCESupport;
6
6
  exports.preparePKCE = preparePKCE;
7
7
  exports.prepareTokenParams = prepareTokenParams;
8
8
  exports.validateCodeChallengeMethod = validateCodeChallengeMethod;
9
9
 
10
- var _indexOf = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/index-of"));
11
-
12
10
  var _wellKnown = require("../endpoints/well-known");
13
11
 
14
12
  var _errors = require("../../errors");
@@ -58,7 +56,7 @@ async function validateCodeChallengeMethod(sdk, codeChallengeMethod) {
58
56
  const wellKnownResponse = await (0, _wellKnown.getWellKnown)(sdk);
59
57
  var methods = wellKnownResponse['code_challenge_methods_supported'] || [];
60
58
 
61
- if ((0, _indexOf.default)(methods).call(methods, codeChallengeMethod) === -1) {
59
+ if (methods.indexOf(codeChallengeMethod) === -1) {
62
60
  throw new _errors.AuthSdkError('Invalid code_challenge_method');
63
61
  }
64
62
 
@@ -1 +1 @@
1
- {"version":3,"file":"prepareTokenParams.js","names":["assertPKCESupport","sdk","features","isPKCESupported","errorMessage","isHTTPS","hasTextEncoder","AuthSdkError","validateCodeChallengeMethod","codeChallengeMethod","options","DEFAULT_CODE_CHALLENGE_METHOD","wellKnownResponse","getWellKnown","methods","preparePKCE","tokenParams","codeVerifier","codeChallenge","PKCE","generateVerifier","computeChallenge","responseType","prepareTokenParams","defaults","getDefaultTokenParams","pkce"],"sources":["../../../../lib/oidc/util/prepareTokenParams.ts"],"sourcesContent":["/* eslint-disable complexity */\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 { getWellKnown } from '../endpoints/well-known';\nimport { AuthSdkError } from '../../errors';\nimport { OktaAuthFeaturesInterface, OktaAuthOIDCInterface, TokenParams } from '../../types';\nimport { getDefaultTokenParams } from './defaultTokenParams';\nimport { DEFAULT_CODE_CHALLENGE_METHOD } from '../../constants';\nimport PKCE from './pkce';\n\nexport function assertPKCESupport(sdk: OktaAuthFeaturesInterface) {\n if (!sdk.features.isPKCESupported()) {\n var errorMessage = 'PKCE requires a modern browser with encryption support running in a secure context.';\n if (!sdk.features.isHTTPS()) {\n // eslint-disable-next-line max-len\n errorMessage += '\\nThe current page is not being served with HTTPS protocol. PKCE requires secure HTTPS protocol.';\n }\n if (!sdk.features.hasTextEncoder()) {\n // eslint-disable-next-line max-len\n errorMessage += '\\n\"TextEncoder\" is not defined. To use PKCE, you may need to include a polyfill/shim for this browser.';\n }\n throw new AuthSdkError(errorMessage);\n }\n}\n\nexport async function validateCodeChallengeMethod(sdk: OktaAuthOIDCInterface, codeChallengeMethod?: string) {\n // set default code challenge method, if none provided\n codeChallengeMethod = codeChallengeMethod || sdk.options.codeChallengeMethod || DEFAULT_CODE_CHALLENGE_METHOD;\n\n // validate against .well-known/openid-configuration\n const wellKnownResponse = await getWellKnown(sdk);\n var methods = wellKnownResponse['code_challenge_methods_supported'] || [];\n if (methods.indexOf(codeChallengeMethod) === -1) {\n throw new AuthSdkError('Invalid code_challenge_method');\n }\n return codeChallengeMethod;\n}\n\nexport async function preparePKCE(\n sdk: OktaAuthOIDCInterface, \n tokenParams: TokenParams\n): Promise<TokenParams> {\n let {\n codeVerifier,\n codeChallenge,\n codeChallengeMethod\n } = tokenParams;\n\n // PKCE calculations can be avoided by passing a codeChallenge\n codeChallenge = codeChallenge || sdk.options.codeChallenge;\n if (!codeChallenge) {\n assertPKCESupport(sdk);\n codeVerifier = codeVerifier || PKCE.generateVerifier();\n codeChallenge = await PKCE.computeChallenge(codeVerifier);\n }\n codeChallengeMethod = await validateCodeChallengeMethod(sdk, codeChallengeMethod);\n\n // Clone/copy the params. Set PKCE values\n tokenParams = {\n ...tokenParams,\n responseType: 'code', // responseType is forced\n codeVerifier,\n codeChallenge,\n codeChallengeMethod\n };\n\n return tokenParams;\n}\n\n// Prepares params for a call to /authorize or /token\nexport async function prepareTokenParams(\n sdk: OktaAuthOIDCInterface,\n tokenParams: TokenParams = {}\n): Promise<TokenParams> {\n // build params using defaults + options\n const defaults = getDefaultTokenParams(sdk);\n tokenParams = { ...defaults, ...tokenParams };\n\n if (tokenParams.pkce === false) {\n // Implicit flow or authorization_code without PKCE\n return tokenParams;\n }\n\n return preparePKCE(sdk, tokenParams);\n}"],"mappings":";;;;;;;;;;;AAaA;;AACA;;AAEA;;AACA;;AACA;;AAlBA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAQO,SAASA,iBAAT,CAA2BC,GAA3B,EAA2D;EAChE,IAAI,CAACA,GAAG,CAACC,QAAJ,CAAaC,eAAb,EAAL,EAAqC;IACnC,IAAIC,YAAY,GAAG,qFAAnB;;IACA,IAAI,CAACH,GAAG,CAACC,QAAJ,CAAaG,OAAb,EAAL,EAA6B;MAC3B;MACAD,YAAY,IAAI,kGAAhB;IACD;;IACD,IAAI,CAACH,GAAG,CAACC,QAAJ,CAAaI,cAAb,EAAL,EAAoC;MAClC;MACAF,YAAY,IAAI,wGAAhB;IACD;;IACD,MAAM,IAAIG,oBAAJ,CAAiBH,YAAjB,CAAN;EACD;AACF;;AAEM,eAAeI,2BAAf,CAA2CP,GAA3C,EAAuEQ,mBAAvE,EAAqG;EAC1G;EACAA,mBAAmB,GAAGA,mBAAmB,IAAIR,GAAG,CAACS,OAAJ,CAAYD,mBAAnC,IAA0DE,wCAAhF,CAF0G,CAI1G;;EACA,MAAMC,iBAAiB,GAAG,MAAM,IAAAC,uBAAA,EAAaZ,GAAb,CAAhC;EACA,IAAIa,OAAO,GAAGF,iBAAiB,CAAC,kCAAD,CAAjB,IAAyD,EAAvE;;EACA,IAAI,sBAAAE,OAAO,MAAP,CAAAA,OAAO,EAASL,mBAAT,CAAP,KAAyC,CAAC,CAA9C,EAAiD;IAC/C,MAAM,IAAIF,oBAAJ,CAAiB,+BAAjB,CAAN;EACD;;EACD,OAAOE,mBAAP;AACD;;AAEM,eAAeM,WAAf,CACLd,GADK,EAELe,WAFK,EAGiB;EACtB,IAAI;IACFC,YADE;IAEFC,aAFE;IAGFT;EAHE,IAIAO,WAJJ,CADsB,CAOtB;;EACAE,aAAa,GAAGA,aAAa,IAAIjB,GAAG,CAACS,OAAJ,CAAYQ,aAA7C;;EACA,IAAI,CAACA,aAAL,EAAoB;IAClBlB,iBAAiB,CAACC,GAAD,CAAjB;IACAgB,YAAY,GAAGA,YAAY,IAAIE,aAAA,CAAKC,gBAAL,EAA/B;IACAF,aAAa,GAAG,MAAMC,aAAA,CAAKE,gBAAL,CAAsBJ,YAAtB,CAAtB;EACD;;EACDR,mBAAmB,GAAG,MAAMD,2BAA2B,CAACP,GAAD,EAAMQ,mBAAN,CAAvD,CAdsB,CAgBtB;;EACAO,WAAW,GAAG,EACZ,GAAGA,WADS;IAEZM,YAAY,EAAE,MAFF;IAEU;IACtBL,YAHY;IAIZC,aAJY;IAKZT;EALY,CAAd;EAQA,OAAOO,WAAP;AACD,C,CAED;;;AACO,eAAeO,kBAAf,CACLtB,GADK,EAELe,WAAwB,GAAG,EAFtB,EAGiB;EACtB;EACA,MAAMQ,QAAQ,GAAG,IAAAC,yCAAA,EAAsBxB,GAAtB,CAAjB;EACAe,WAAW,GAAG,EAAE,GAAGQ,QAAL;IAAe,GAAGR;EAAlB,CAAd;;EAEA,IAAIA,WAAW,CAACU,IAAZ,KAAqB,KAAzB,EAAgC;IAC9B;IACA,OAAOV,WAAP;EACD;;EAED,OAAOD,WAAW,CAACd,GAAD,EAAMe,WAAN,CAAlB;AACD"}
1
+ {"version":3,"file":"prepareTokenParams.js","names":["assertPKCESupport","sdk","features","isPKCESupported","errorMessage","isHTTPS","hasTextEncoder","AuthSdkError","validateCodeChallengeMethod","codeChallengeMethod","options","DEFAULT_CODE_CHALLENGE_METHOD","wellKnownResponse","getWellKnown","methods","indexOf","preparePKCE","tokenParams","codeVerifier","codeChallenge","PKCE","generateVerifier","computeChallenge","responseType","prepareTokenParams","defaults","getDefaultTokenParams","pkce"],"sources":["../../../../lib/oidc/util/prepareTokenParams.ts"],"sourcesContent":["/* eslint-disable complexity */\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 { getWellKnown } from '../endpoints/well-known';\nimport { AuthSdkError } from '../../errors';\nimport { OktaAuthOAuthInterface, TokenParams } from '../types';\nimport { getDefaultTokenParams } from './defaultTokenParams';\nimport { DEFAULT_CODE_CHALLENGE_METHOD } from '../../constants';\nimport PKCE from './pkce';\nimport { OktaAuthBaseInterface } from '../../base/types';\n\nexport function assertPKCESupport(sdk: OktaAuthBaseInterface) {\n if (!sdk.features.isPKCESupported()) {\n var errorMessage = 'PKCE requires a modern browser with encryption support running in a secure context.';\n if (!sdk.features.isHTTPS()) {\n // eslint-disable-next-line max-len\n errorMessage += '\\nThe current page is not being served with HTTPS protocol. PKCE requires secure HTTPS protocol.';\n }\n if (!sdk.features.hasTextEncoder()) {\n // eslint-disable-next-line max-len\n errorMessage += '\\n\"TextEncoder\" is not defined. To use PKCE, you may need to include a polyfill/shim for this browser.';\n }\n throw new AuthSdkError(errorMessage);\n }\n}\n\nexport async function validateCodeChallengeMethod(sdk: OktaAuthOAuthInterface, codeChallengeMethod?: string) {\n // set default code challenge method, if none provided\n codeChallengeMethod = codeChallengeMethod || sdk.options.codeChallengeMethod || DEFAULT_CODE_CHALLENGE_METHOD;\n\n // validate against .well-known/openid-configuration\n const wellKnownResponse = await getWellKnown(sdk);\n var methods = wellKnownResponse['code_challenge_methods_supported'] || [];\n if (methods.indexOf(codeChallengeMethod) === -1) {\n throw new AuthSdkError('Invalid code_challenge_method');\n }\n return codeChallengeMethod;\n}\n\nexport async function preparePKCE(\n sdk: OktaAuthOAuthInterface, \n tokenParams: TokenParams\n): Promise<TokenParams> {\n let {\n codeVerifier,\n codeChallenge,\n codeChallengeMethod\n } = tokenParams;\n\n // PKCE calculations can be avoided by passing a codeChallenge\n codeChallenge = codeChallenge || sdk.options.codeChallenge;\n if (!codeChallenge) {\n assertPKCESupport(sdk);\n codeVerifier = codeVerifier || PKCE.generateVerifier();\n codeChallenge = await PKCE.computeChallenge(codeVerifier);\n }\n codeChallengeMethod = await validateCodeChallengeMethod(sdk, codeChallengeMethod);\n\n // Clone/copy the params. Set PKCE values\n tokenParams = {\n ...tokenParams,\n responseType: 'code', // responseType is forced\n codeVerifier,\n codeChallenge,\n codeChallengeMethod\n };\n\n return tokenParams;\n}\n\n// Prepares params for a call to /authorize or /token\nexport async function prepareTokenParams(\n sdk: OktaAuthOAuthInterface,\n tokenParams: TokenParams = {}\n): Promise<TokenParams> {\n // build params using defaults + options\n const defaults = getDefaultTokenParams(sdk);\n tokenParams = { ...defaults, ...tokenParams };\n\n if (tokenParams.pkce === false) {\n // Implicit flow or authorization_code without PKCE\n return tokenParams;\n }\n\n return preparePKCE(sdk, tokenParams);\n}"],"mappings":";;;;;;;;;AAaA;;AACA;;AAEA;;AACA;;AACA;;AAlBA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AASO,SAASA,iBAAT,CAA2BC,GAA3B,EAAuD;EAC5D,IAAI,CAACA,GAAG,CAACC,QAAJ,CAAaC,eAAb,EAAL,EAAqC;IACnC,IAAIC,YAAY,GAAG,qFAAnB;;IACA,IAAI,CAACH,GAAG,CAACC,QAAJ,CAAaG,OAAb,EAAL,EAA6B;MAC3B;MACAD,YAAY,IAAI,kGAAhB;IACD;;IACD,IAAI,CAACH,GAAG,CAACC,QAAJ,CAAaI,cAAb,EAAL,EAAoC;MAClC;MACAF,YAAY,IAAI,wGAAhB;IACD;;IACD,MAAM,IAAIG,oBAAJ,CAAiBH,YAAjB,CAAN;EACD;AACF;;AAEM,eAAeI,2BAAf,CAA2CP,GAA3C,EAAwEQ,mBAAxE,EAAsG;EAC3G;EACAA,mBAAmB,GAAGA,mBAAmB,IAAIR,GAAG,CAACS,OAAJ,CAAYD,mBAAnC,IAA0DE,wCAAhF,CAF2G,CAI3G;;EACA,MAAMC,iBAAiB,GAAG,MAAM,IAAAC,uBAAA,EAAaZ,GAAb,CAAhC;EACA,IAAIa,OAAO,GAAGF,iBAAiB,CAAC,kCAAD,CAAjB,IAAyD,EAAvE;;EACA,IAAIE,OAAO,CAACC,OAAR,CAAgBN,mBAAhB,MAAyC,CAAC,CAA9C,EAAiD;IAC/C,MAAM,IAAIF,oBAAJ,CAAiB,+BAAjB,CAAN;EACD;;EACD,OAAOE,mBAAP;AACD;;AAEM,eAAeO,WAAf,CACLf,GADK,EAELgB,WAFK,EAGiB;EACtB,IAAI;IACFC,YADE;IAEFC,aAFE;IAGFV;EAHE,IAIAQ,WAJJ,CADsB,CAOtB;;EACAE,aAAa,GAAGA,aAAa,IAAIlB,GAAG,CAACS,OAAJ,CAAYS,aAA7C;;EACA,IAAI,CAACA,aAAL,EAAoB;IAClBnB,iBAAiB,CAACC,GAAD,CAAjB;IACAiB,YAAY,GAAGA,YAAY,IAAIE,aAAA,CAAKC,gBAAL,EAA/B;IACAF,aAAa,GAAG,MAAMC,aAAA,CAAKE,gBAAL,CAAsBJ,YAAtB,CAAtB;EACD;;EACDT,mBAAmB,GAAG,MAAMD,2BAA2B,CAACP,GAAD,EAAMQ,mBAAN,CAAvD,CAdsB,CAgBtB;;EACAQ,WAAW,GAAG,EACZ,GAAGA,WADS;IAEZM,YAAY,EAAE,MAFF;IAEU;IACtBL,YAHY;IAIZC,aAJY;IAKZV;EALY,CAAd;EAQA,OAAOQ,WAAP;AACD,C,CAED;;;AACO,eAAeO,kBAAf,CACLvB,GADK,EAELgB,WAAwB,GAAG,EAFtB,EAGiB;EACtB;EACA,MAAMQ,QAAQ,GAAG,IAAAC,yCAAA,EAAsBzB,GAAtB,CAAjB;EACAgB,WAAW,GAAG,EAAE,GAAGQ,QAAL;IAAe,GAAGR;EAAlB,CAAd;;EAEA,IAAIA,WAAW,CAACU,IAAZ,KAAqB,KAAzB,EAAgC;IAC9B;IACA,OAAOV,WAAP;EACD;;EAED,OAAOD,WAAW,CAACf,GAAD,EAAMgB,WAAN,CAAlB;AACD"}
@@ -1 +1 @@
1
- {"version":3,"file":"refreshToken.js","names":["isSameRefreshToken","a","b","refreshToken","isRefreshTokenError","err","isAuthApiError","xhr","responseJSON","error"],"sources":["../../../../lib/oidc/util/refreshToken.ts"],"sourcesContent":["import { RefreshToken } from '../../types';\nimport { isAuthApiError } from '../../errors';\n\nexport function isSameRefreshToken(a: RefreshToken, b: RefreshToken) {\n return (a.refreshToken === b.refreshToken);\n}\n\nexport function isRefreshTokenError(err: Error) {\n if (!isAuthApiError(err)) {\n return false;\n }\n\n if (!err.xhr || !err.xhr.responseJSON) {\n return false;\n }\n\n const { responseJSON } = err.xhr;\n if (responseJSON.error === 'invalid_grant') {\n return true;\n }\n\n return false;\n}"],"mappings":";;;;;AACA;;AAEO,SAASA,kBAAT,CAA4BC,CAA5B,EAA6CC,CAA7C,EAA8D;EACnE,OAAQD,CAAC,CAACE,YAAF,KAAmBD,CAAC,CAACC,YAA7B;AACD;;AAEM,SAASC,mBAAT,CAA6BC,GAA7B,EAAyC;EAC9C,IAAI,CAAC,IAAAC,sBAAA,EAAeD,GAAf,CAAL,EAA0B;IACxB,OAAO,KAAP;EACD;;EAED,IAAI,CAACA,GAAG,CAACE,GAAL,IAAY,CAACF,GAAG,CAACE,GAAJ,CAAQC,YAAzB,EAAuC;IACrC,OAAO,KAAP;EACD;;EAED,MAAM;IAAEA;EAAF,IAAmBH,GAAG,CAACE,GAA7B;;EACA,IAAIC,YAAY,CAACC,KAAb,KAAuB,eAA3B,EAA4C;IAC1C,OAAO,IAAP;EACD;;EAED,OAAO,KAAP;AACD"}
1
+ {"version":3,"file":"refreshToken.js","names":["isSameRefreshToken","a","b","refreshToken","isRefreshTokenError","err","isAuthApiError","xhr","responseJSON","error"],"sources":["../../../../lib/oidc/util/refreshToken.ts"],"sourcesContent":["import { RefreshToken } from '../types';\nimport { isAuthApiError } from '../../errors';\n\nexport function isSameRefreshToken(a: RefreshToken, b: RefreshToken) {\n return (a.refreshToken === b.refreshToken);\n}\n\nexport function isRefreshTokenError(err: Error) {\n if (!isAuthApiError(err)) {\n return false;\n }\n\n if (!err.xhr || !err.xhr.responseJSON) {\n return false;\n }\n\n const { responseJSON } = err.xhr;\n if (responseJSON.error === 'invalid_grant') {\n return true;\n }\n\n return false;\n}"],"mappings":";;;;;AACA;;AAEO,SAASA,kBAAT,CAA4BC,CAA5B,EAA6CC,CAA7C,EAA8D;EACnE,OAAQD,CAAC,CAACE,YAAF,KAAmBD,CAAC,CAACC,YAA7B;AACD;;AAEM,SAASC,mBAAT,CAA6BC,GAA7B,EAAyC;EAC9C,IAAI,CAAC,IAAAC,sBAAA,EAAeD,GAAf,CAAL,EAA0B;IACxB,OAAO,KAAP;EACD;;EAED,IAAI,CAACA,GAAG,CAACE,GAAL,IAAY,CAACF,GAAG,CAACE,GAAJ,CAAQC,YAAzB,EAAuC;IACrC,OAAO,KAAP;EACD;;EAED,MAAM;IAAEA;EAAF,IAAmBH,GAAG,CAACE,GAA7B;;EACA,IAAIC,YAAY,CAACC,KAAb,KAAuB,eAA3B,EAA4C;IAC1C,OAAO,IAAP;EACD;;EAED,OAAO,KAAP;AACD"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+
3
+ exports.clearTransactionFromSharedStorage = clearTransactionFromSharedStorage;
4
+ exports.loadTransactionFromSharedStorage = loadTransactionFromSharedStorage;
5
+ exports.pruneSharedStorage = pruneSharedStorage;
6
+ exports.saveTransactionToSharedStorage = saveTransactionToSharedStorage;
7
+
8
+ var _types = require("../types");
9
+
10
+ const MAX_ENTRY_LIFETIME = 30 * 60 * 1000; // 30 minutes
11
+
12
+ function pruneSharedStorage(storageManager) {
13
+ const sharedStorage = storageManager.getSharedTansactionStorage();
14
+ const entries = sharedStorage.getStorage();
15
+ Object.keys(entries).forEach(state => {
16
+ const entry = entries[state];
17
+ const age = Date.now() - entry.dateCreated;
18
+
19
+ if (age > MAX_ENTRY_LIFETIME) {
20
+ delete entries[state];
21
+ }
22
+ });
23
+ sharedStorage.setStorage(entries);
24
+ }
25
+
26
+ function saveTransactionToSharedStorage(storageManager, state, meta) {
27
+ const sharedStorage = storageManager.getSharedTansactionStorage();
28
+ const entries = sharedStorage.getStorage();
29
+ entries[state] = {
30
+ dateCreated: Date.now(),
31
+ transaction: meta
32
+ };
33
+ sharedStorage.setStorage(entries);
34
+ }
35
+
36
+ function loadTransactionFromSharedStorage(storageManager, state) {
37
+ const sharedStorage = storageManager.getSharedTansactionStorage();
38
+ const entries = sharedStorage.getStorage();
39
+ const entry = entries[state];
40
+
41
+ if (entry && entry.transaction && (0, _types.isTransactionMeta)(entry.transaction)) {
42
+ return entry.transaction;
43
+ }
44
+
45
+ return null;
46
+ }
47
+
48
+ function clearTransactionFromSharedStorage(storageManager, state) {
49
+ const sharedStorage = storageManager.getSharedTansactionStorage();
50
+ const entries = sharedStorage.getStorage();
51
+ delete entries[state];
52
+ sharedStorage.setStorage(entries);
53
+ }
54
+ //# sourceMappingURL=sharedStorage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sharedStorage.js","names":["MAX_ENTRY_LIFETIME","pruneSharedStorage","storageManager","sharedStorage","getSharedTansactionStorage","entries","getStorage","Object","keys","forEach","state","entry","age","Date","now","dateCreated","setStorage","saveTransactionToSharedStorage","meta","transaction","loadTransactionFromSharedStorage","isTransactionMeta","clearTransactionFromSharedStorage"],"sources":["../../../../lib/oidc/util/sharedStorage.ts"],"sourcesContent":["import { OAuthStorageManagerInterface, OAuthTransactionMeta, isTransactionMeta } from '../types';\n\nconst MAX_ENTRY_LIFETIME = 30 * 60 * 1000; // 30 minutes\n\nexport function pruneSharedStorage<M extends OAuthTransactionMeta>(storageManager: OAuthStorageManagerInterface<M>) {\n const sharedStorage = storageManager.getSharedTansactionStorage();\n const entries = sharedStorage.getStorage();\n Object.keys(entries).forEach(state => {\n const entry = entries[state];\n const age = Date.now() - entry.dateCreated;\n if (age > MAX_ENTRY_LIFETIME) {\n delete entries[state];\n }\n });\n sharedStorage.setStorage(entries);\n}\n\nexport function saveTransactionToSharedStorage<M extends OAuthTransactionMeta>(\n storageManager: OAuthStorageManagerInterface<M>, state: string, meta: M\n) {\n const sharedStorage = storageManager.getSharedTansactionStorage();\n const entries = sharedStorage.getStorage();\n entries[state] = {\n dateCreated: Date.now(),\n transaction: meta\n };\n sharedStorage.setStorage(entries);\n}\n\n\nexport function loadTransactionFromSharedStorage<M extends OAuthTransactionMeta>(\n storageManager: OAuthStorageManagerInterface<M>, state: string\n) {\n const sharedStorage = storageManager.getSharedTansactionStorage();\n const entries = sharedStorage.getStorage();\n const entry = entries[state];\n if (entry && entry.transaction && isTransactionMeta(entry.transaction)) {\n return entry.transaction;\n }\n return null;\n}\n\nexport function clearTransactionFromSharedStorage<M extends OAuthTransactionMeta>(\n storageManager: OAuthStorageManagerInterface<M>, state: string\n) {\n const sharedStorage = storageManager.getSharedTansactionStorage();\n const entries = sharedStorage.getStorage();\n delete entries[state];\n sharedStorage.setStorage(entries);\n}\n"],"mappings":";;;;;;;AAAA;;AAEA,MAAMA,kBAAkB,GAAG,KAAK,EAAL,GAAU,IAArC,C,CAA2C;;AAEpC,SAASC,kBAAT,CAA4DC,cAA5D,EAA6G;EAClH,MAAMC,aAAa,GAAGD,cAAc,CAACE,0BAAf,EAAtB;EACA,MAAMC,OAAO,GAAGF,aAAa,CAACG,UAAd,EAAhB;EACAC,MAAM,CAACC,IAAP,CAAYH,OAAZ,EAAqBI,OAArB,CAA6BC,KAAK,IAAI;IACpC,MAAMC,KAAK,GAAGN,OAAO,CAACK,KAAD,CAArB;IACA,MAAME,GAAG,GAAGC,IAAI,CAACC,GAAL,KAAaH,KAAK,CAACI,WAA/B;;IACA,IAAIH,GAAG,GAAGZ,kBAAV,EAA8B;MAC5B,OAAOK,OAAO,CAACK,KAAD,CAAd;IACD;EACF,CAND;EAOAP,aAAa,CAACa,UAAd,CAAyBX,OAAzB;AACD;;AAEM,SAASY,8BAAT,CACLf,cADK,EAC4CQ,KAD5C,EAC2DQ,IAD3D,EAEL;EACA,MAAMf,aAAa,GAAGD,cAAc,CAACE,0BAAf,EAAtB;EACA,MAAMC,OAAO,GAAGF,aAAa,CAACG,UAAd,EAAhB;EACAD,OAAO,CAACK,KAAD,CAAP,GAAiB;IACfK,WAAW,EAAEF,IAAI,CAACC,GAAL,EADE;IAEfK,WAAW,EAAED;EAFE,CAAjB;EAIAf,aAAa,CAACa,UAAd,CAAyBX,OAAzB;AACD;;AAGM,SAASe,gCAAT,CACLlB,cADK,EAC4CQ,KAD5C,EAEL;EACA,MAAMP,aAAa,GAAGD,cAAc,CAACE,0BAAf,EAAtB;EACA,MAAMC,OAAO,GAAGF,aAAa,CAACG,UAAd,EAAhB;EACA,MAAMK,KAAK,GAAGN,OAAO,CAACK,KAAD,CAArB;;EACA,IAAIC,KAAK,IAAIA,KAAK,CAACQ,WAAf,IAA8B,IAAAE,wBAAA,EAAkBV,KAAK,CAACQ,WAAxB,CAAlC,EAAwE;IACtE,OAAOR,KAAK,CAACQ,WAAb;EACD;;EACD,OAAO,IAAP;AACD;;AAEM,SAASG,iCAAT,CACLpB,cADK,EAC4CQ,KAD5C,EAEL;EACA,MAAMP,aAAa,GAAGD,cAAc,CAACE,0BAAf,EAAtB;EACA,MAAMC,OAAO,GAAGF,aAAa,CAACG,UAAd,EAAhB;EACA,OAAOD,OAAO,CAACK,KAAD,CAAd;EACAP,aAAa,CAACa,UAAd,CAAyBX,OAAzB;AACD"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
5
  exports.validateClaims = validateClaims;
6
6
 
@@ -1 +1 @@
1
- {"version":3,"file":"validateClaims.js","names":["validateClaims","sdk","claims","validationParams","aud","clientId","iss","issuer","nonce","AuthSdkError","now","Math","floor","Date","iat","exp","options","ignoreLifetime","maxClockSkew"],"sources":["../../../../lib/oidc/util/validateClaims.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-non-null-assertion */\n/*!\n * Copyright (c) 2015-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n *\n */\n/* eslint-disable complexity, max-statements */\n\nimport AuthSdkError from '../../errors/AuthSdkError';\nimport { OktaAuthOptionsInterface, TokenVerifyParams, UserClaims } from '../../types';\n\nexport function validateClaims(sdk: OktaAuthOptionsInterface, claims: UserClaims, validationParams: TokenVerifyParams) {\n var aud = validationParams.clientId;\n var iss = validationParams.issuer;\n var nonce = validationParams.nonce;\n\n if (!claims || !iss || !aud) {\n throw new AuthSdkError('The jwt, iss, and aud arguments are all required');\n }\n\n if (nonce && claims.nonce !== nonce) {\n throw new AuthSdkError('OAuth flow response nonce doesn\\'t match request nonce');\n }\n\n var now = Math.floor(Date.now()/1000);\n\n if (claims.iss !== iss) {\n throw new AuthSdkError('The issuer [' + claims.iss + '] ' +\n 'does not match [' + iss + ']');\n }\n\n if (claims.aud !== aud) {\n throw new AuthSdkError('The audience [' + claims.aud + '] ' +\n 'does not match [' + aud + ']');\n }\n\n if (claims.iat! > claims.exp!) {\n throw new AuthSdkError('The JWT expired before it was issued');\n }\n\n if (!sdk.options.ignoreLifetime) {\n if ((now - sdk.options.maxClockSkew!) > claims.exp!) {\n throw new AuthSdkError('The JWT expired and is no longer valid');\n }\n\n if (claims.iat! > (now + sdk.options.maxClockSkew!)) {\n throw new AuthSdkError('The JWT was issued in the future');\n }\n }\n}\n"],"mappings":";;;;;;AAeA;;AAfA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AAKO,SAASA,cAAT,CAAwBC,GAAxB,EAAuDC,MAAvD,EAA2EC,gBAA3E,EAAgH;EACrH,IAAIC,GAAG,GAAGD,gBAAgB,CAACE,QAA3B;EACA,IAAIC,GAAG,GAAGH,gBAAgB,CAACI,MAA3B;EACA,IAAIC,KAAK,GAAGL,gBAAgB,CAACK,KAA7B;;EAEA,IAAI,CAACN,MAAD,IAAW,CAACI,GAAZ,IAAmB,CAACF,GAAxB,EAA6B;IAC3B,MAAM,IAAIK,qBAAJ,CAAiB,kDAAjB,CAAN;EACD;;EAED,IAAID,KAAK,IAAIN,MAAM,CAACM,KAAP,KAAiBA,KAA9B,EAAqC;IACnC,MAAM,IAAIC,qBAAJ,CAAiB,wDAAjB,CAAN;EACD;;EAED,IAAIC,GAAG,GAAGC,IAAI,CAACC,KAAL,CAAWC,IAAI,CAACH,GAAL,KAAW,IAAtB,CAAV;;EAEA,IAAIR,MAAM,CAACI,GAAP,KAAeA,GAAnB,EAAwB;IACtB,MAAM,IAAIG,qBAAJ,CAAiB,iBAAiBP,MAAM,CAACI,GAAxB,GAA8B,IAA9B,GACrB,kBADqB,GACAA,GADA,GACM,GADvB,CAAN;EAED;;EAED,IAAIJ,MAAM,CAACE,GAAP,KAAeA,GAAnB,EAAwB;IACtB,MAAM,IAAIK,qBAAJ,CAAiB,mBAAmBP,MAAM,CAACE,GAA1B,GAAgC,IAAhC,GACrB,kBADqB,GACAA,GADA,GACM,GADvB,CAAN;EAED;;EAED,IAAIF,MAAM,CAACY,GAAP,GAAcZ,MAAM,CAACa,GAAzB,EAA+B;IAC7B,MAAM,IAAIN,qBAAJ,CAAiB,sCAAjB,CAAN;EACD;;EAED,IAAI,CAACR,GAAG,CAACe,OAAJ,CAAYC,cAAjB,EAAiC;IAC/B,IAAKP,GAAG,GAAGT,GAAG,CAACe,OAAJ,CAAYE,YAAnB,GAAoChB,MAAM,CAACa,GAA/C,EAAqD;MACnD,MAAM,IAAIN,qBAAJ,CAAiB,wCAAjB,CAAN;IACD;;IAED,IAAIP,MAAM,CAACY,GAAP,GAAeJ,GAAG,GAAGT,GAAG,CAACe,OAAJ,CAAYE,YAArC,EAAqD;MACnD,MAAM,IAAIT,qBAAJ,CAAiB,kCAAjB,CAAN;IACD;EACF;AACF"}
1
+ {"version":3,"file":"validateClaims.js","names":["validateClaims","sdk","claims","validationParams","aud","clientId","iss","issuer","nonce","AuthSdkError","now","Math","floor","Date","iat","exp","options","ignoreLifetime","maxClockSkew"],"sources":["../../../../lib/oidc/util/validateClaims.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-non-null-assertion */\n/*!\n * Copyright (c) 2015-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n *\n */\n/* eslint-disable complexity, max-statements */\n\nimport AuthSdkError from '../../errors/AuthSdkError';\nimport { OktaAuthOAuthInterface, TokenVerifyParams, UserClaims } from '../../oidc/types';\n\nexport function validateClaims(sdk: OktaAuthOAuthInterface, claims: UserClaims, validationParams: TokenVerifyParams) {\n var aud = validationParams.clientId;\n var iss = validationParams.issuer;\n var nonce = validationParams.nonce;\n\n if (!claims || !iss || !aud) {\n throw new AuthSdkError('The jwt, iss, and aud arguments are all required');\n }\n\n if (nonce && claims.nonce !== nonce) {\n throw new AuthSdkError('OAuth flow response nonce doesn\\'t match request nonce');\n }\n\n var now = Math.floor(Date.now()/1000);\n\n if (claims.iss !== iss) {\n throw new AuthSdkError('The issuer [' + claims.iss + '] ' +\n 'does not match [' + iss + ']');\n }\n\n if (claims.aud !== aud) {\n throw new AuthSdkError('The audience [' + claims.aud + '] ' +\n 'does not match [' + aud + ']');\n }\n\n if (claims.iat! > claims.exp!) {\n throw new AuthSdkError('The JWT expired before it was issued');\n }\n\n if (!sdk.options.ignoreLifetime) {\n if ((now - sdk.options.maxClockSkew!) > claims.exp!) {\n throw new AuthSdkError('The JWT expired and is no longer valid');\n }\n\n if (claims.iat! > (now + sdk.options.maxClockSkew!)) {\n throw new AuthSdkError('The JWT was issued in the future');\n }\n }\n}\n"],"mappings":";;;;;;AAeA;;AAfA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA;AAKO,SAASA,cAAT,CAAwBC,GAAxB,EAAqDC,MAArD,EAAyEC,gBAAzE,EAA8G;EACnH,IAAIC,GAAG,GAAGD,gBAAgB,CAACE,QAA3B;EACA,IAAIC,GAAG,GAAGH,gBAAgB,CAACI,MAA3B;EACA,IAAIC,KAAK,GAAGL,gBAAgB,CAACK,KAA7B;;EAEA,IAAI,CAACN,MAAD,IAAW,CAACI,GAAZ,IAAmB,CAACF,GAAxB,EAA6B;IAC3B,MAAM,IAAIK,qBAAJ,CAAiB,kDAAjB,CAAN;EACD;;EAED,IAAID,KAAK,IAAIN,MAAM,CAACM,KAAP,KAAiBA,KAA9B,EAAqC;IACnC,MAAM,IAAIC,qBAAJ,CAAiB,wDAAjB,CAAN;EACD;;EAED,IAAIC,GAAG,GAAGC,IAAI,CAACC,KAAL,CAAWC,IAAI,CAACH,GAAL,KAAW,IAAtB,CAAV;;EAEA,IAAIR,MAAM,CAACI,GAAP,KAAeA,GAAnB,EAAwB;IACtB,MAAM,IAAIG,qBAAJ,CAAiB,iBAAiBP,MAAM,CAACI,GAAxB,GAA8B,IAA9B,GACrB,kBADqB,GACAA,GADA,GACM,GADvB,CAAN;EAED;;EAED,IAAIJ,MAAM,CAACE,GAAP,KAAeA,GAAnB,EAAwB;IACtB,MAAM,IAAIK,qBAAJ,CAAiB,mBAAmBP,MAAM,CAACE,GAA1B,GAAgC,IAAhC,GACrB,kBADqB,GACAA,GADA,GACM,GADvB,CAAN;EAED;;EAED,IAAIF,MAAM,CAACY,GAAP,GAAcZ,MAAM,CAACa,GAAzB,EAA+B;IAC7B,MAAM,IAAIN,qBAAJ,CAAiB,sCAAjB,CAAN;EACD;;EAED,IAAI,CAACR,GAAG,CAACe,OAAJ,CAAYC,cAAjB,EAAiC;IAC/B,IAAKP,GAAG,GAAGT,GAAG,CAACe,OAAJ,CAAYE,YAAnB,GAAoChB,MAAM,CAACa,GAA/C,EAAqD;MACnD,MAAM,IAAIN,qBAAJ,CAAiB,wCAAjB,CAAN;IACD;;IAED,IAAIP,MAAM,CAACY,GAAP,GAAeJ,GAAG,GAAGT,GAAG,CAACe,OAAJ,CAAYE,YAArC,EAAqD;MACnD,MAAM,IAAIT,qBAAJ,CAAiB,kCAAjB,CAAN;IACD;EACF;AACF"}
@@ -4,7 +4,7 @@ exports.validateToken = validateToken;
4
4
 
5
5
  var _errors = require("../../errors");
6
6
 
7
- var _types = require("../../types");
7
+ var _types = require("../../oidc/types");
8
8
 
9
9
  /* eslint-disable complexity */
10
10
  function validateToken(token, type) {
@@ -1 +1 @@
1
- {"version":3,"file":"validateToken.js","names":["validateToken","token","type","isIDToken","isAccessToken","isRefreshToken","AuthSdkError"],"sources":["../../../../lib/oidc/util/validateToken.ts"],"sourcesContent":["/* eslint-disable complexity */\n\nimport { AuthSdkError } from '../../errors';\nimport { isAccessToken, isIDToken, isRefreshToken, Token, TokenType } from '../../types';\n\nexport function validateToken(token: Token, type?: TokenType) {\n if (!isIDToken(token) && !isAccessToken(token) && !isRefreshToken(token)) {\n throw new AuthSdkError(\n 'Token must be an Object with scopes, expiresAt, and one of: an idToken, accessToken, or refreshToken property'\n );\n }\n \n if (type === 'accessToken' && !isAccessToken(token)) {\n throw new AuthSdkError('invalid accessToken');\n } \n if (type === 'idToken' && !isIDToken(token)) {\n throw new AuthSdkError('invalid idToken');\n }\n\n if (type === 'refreshToken' && !isRefreshToken(token)) {\n throw new AuthSdkError('invalid refreshToken');\n }\n}"],"mappings":";;;;AAEA;;AACA;;AAHA;AAKO,SAASA,aAAT,CAAuBC,KAAvB,EAAqCC,IAArC,EAAuD;EAC5D,IAAI,CAAC,IAAAC,gBAAA,EAAUF,KAAV,CAAD,IAAqB,CAAC,IAAAG,oBAAA,EAAcH,KAAd,CAAtB,IAA8C,CAAC,IAAAI,qBAAA,EAAeJ,KAAf,CAAnD,EAA0E;IACxE,MAAM,IAAIK,oBAAJ,CACJ,+GADI,CAAN;EAGD;;EAED,IAAIJ,IAAI,KAAK,aAAT,IAA0B,CAAC,IAAAE,oBAAA,EAAcH,KAAd,CAA/B,EAAqD;IACnD,MAAM,IAAIK,oBAAJ,CAAiB,qBAAjB,CAAN;EACD;;EACD,IAAIJ,IAAI,KAAK,SAAT,IAAsB,CAAC,IAAAC,gBAAA,EAAUF,KAAV,CAA3B,EAA6C;IAC3C,MAAM,IAAIK,oBAAJ,CAAiB,iBAAjB,CAAN;EACD;;EAED,IAAIJ,IAAI,KAAK,cAAT,IAA2B,CAAC,IAAAG,qBAAA,EAAeJ,KAAf,CAAhC,EAAuD;IACrD,MAAM,IAAIK,oBAAJ,CAAiB,sBAAjB,CAAN;EACD;AACF"}
1
+ {"version":3,"file":"validateToken.js","names":["validateToken","token","type","isIDToken","isAccessToken","isRefreshToken","AuthSdkError"],"sources":["../../../../lib/oidc/util/validateToken.ts"],"sourcesContent":["/* eslint-disable complexity */\n\nimport { AuthSdkError } from '../../errors';\nimport { isAccessToken, isIDToken, isRefreshToken, Token, TokenType } from '../../oidc/types';\n\nexport function validateToken(token: Token, type?: TokenType) {\n if (!isIDToken(token) && !isAccessToken(token) && !isRefreshToken(token)) {\n throw new AuthSdkError(\n 'Token must be an Object with scopes, expiresAt, and one of: an idToken, accessToken, or refreshToken property'\n );\n }\n \n if (type === 'accessToken' && !isAccessToken(token)) {\n throw new AuthSdkError('invalid accessToken');\n } \n if (type === 'idToken' && !isIDToken(token)) {\n throw new AuthSdkError('invalid idToken');\n }\n\n if (type === 'refreshToken' && !isRefreshToken(token)) {\n throw new AuthSdkError('invalid refreshToken');\n }\n}"],"mappings":";;;;AAEA;;AACA;;AAHA;AAKO,SAASA,aAAT,CAAuBC,KAAvB,EAAqCC,IAArC,EAAuD;EAC5D,IAAI,CAAC,IAAAC,gBAAA,EAAUF,KAAV,CAAD,IAAqB,CAAC,IAAAG,oBAAA,EAAcH,KAAd,CAAtB,IAA8C,CAAC,IAAAI,qBAAA,EAAeJ,KAAf,CAAnD,EAA0E;IACxE,MAAM,IAAIK,oBAAJ,CACJ,+GADI,CAAN;EAGD;;EAED,IAAIJ,IAAI,KAAK,aAAT,IAA0B,CAAC,IAAAE,oBAAA,EAAcH,KAAd,CAA/B,EAAqD;IACnD,MAAM,IAAIK,oBAAJ,CAAiB,qBAAjB,CAAN;EACD;;EACD,IAAIJ,IAAI,KAAK,SAAT,IAAsB,CAAC,IAAAC,gBAAA,EAAUF,KAAV,CAA3B,EAA6C;IAC3C,MAAM,IAAIK,oBAAJ,CAAiB,iBAAjB,CAAN;EACD;;EAED,IAAIJ,IAAI,KAAK,cAAT,IAA2B,CAAC,IAAAG,qBAAA,EAAeJ,KAAf,CAAhC,EAAuD;IACrD,MAAM,IAAIK,oBAAJ,CAAiB,sBAAjB,CAAN;EACD;AACF"}
@@ -1,15 +1,7 @@
1
1
  "use strict";
2
2
 
3
- var _WeakMap = require("@babel/runtime-corejs3/core-js-stable/weak-map");
4
-
5
- var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
6
-
7
- var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
8
-
9
3
  exports.verifyToken = verifyToken;
10
4
 
11
- var _assign = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/assign"));
12
-
13
5
  var _wellKnown = require("./endpoints/well-known");
14
6
 
15
7
  var _util = require("./util");
@@ -20,9 +12,9 @@ var _decodeToken = require("./decodeToken");
20
12
 
21
13
  var sdkCrypto = _interopRequireWildcard(require("../crypto"));
22
14
 
23
- function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
24
16
 
25
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
17
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
26
18
 
27
19
  /* eslint-disable max-len */
28
20
 
@@ -54,7 +46,7 @@ async function verifyToken(sdk, token, validationParams) {
54
46
  const {
55
47
  issuer
56
48
  } = await (0, _wellKnown.getWellKnown)(sdk, configuredIssuer);
57
- var validationOptions = (0, _assign.default)({
49
+ var validationOptions = Object.assign({
58
50
  // base options, can be overridden by params
59
51
  clientId: sdk.options.clientId,
60
52
  ignoreSignature: sdk.options.ignoreSignature
@@ -1 +1 @@
1
- {"version":3,"file":"verifyToken.js","names":["verifyToken","sdk","token","validationParams","idToken","AuthSdkError","jwt","decodeToken","configuredIssuer","issuer","options","getWellKnown","validationOptions","clientId","ignoreSignature","validateClaims","payload","features","isTokenVerifySupported","key","getKey","header","kid","valid","sdkCrypto","accessToken","claims","at_hash","hash","getOidcHash"],"sources":["../../../lib/oidc/verifyToken.ts"],"sourcesContent":["/* eslint-disable max-len */\n/* eslint-disable complexity */\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 { getWellKnown, getKey } from './endpoints/well-known';\nimport { validateClaims } from './util';\nimport { AuthSdkError } from '../errors';\nimport { IDToken, OktaAuthOIDCInterface, TokenVerifyParams } from '../types';\nimport { decodeToken } from './decodeToken';\nimport * as sdkCrypto from '../crypto';\n\n// Verify the id token\nexport async function verifyToken(sdk: OktaAuthOIDCInterface, token: IDToken, validationParams: TokenVerifyParams): Promise<IDToken> {\n if (!token || !token.idToken) {\n throw new AuthSdkError('Only idTokens may be verified');\n }\n\n // Decode the Jwt object (may throw)\n var jwt = decodeToken(token.idToken);\n\n // The configured issuer may point to a frontend proxy.\n // Get the \"real\" issuer from .well-known/openid-configuration\n const configuredIssuer = validationParams?.issuer || sdk.options.issuer;\n const { issuer } = await getWellKnown(sdk, configuredIssuer);\n\n var validationOptions: TokenVerifyParams = Object.assign({\n // base options, can be overridden by params\n clientId: sdk.options.clientId,\n ignoreSignature: sdk.options.ignoreSignature\n }, validationParams, {\n // final options, cannot be overridden\n issuer\n });\n\n // Standard claim validation (may throw)\n validateClaims(sdk, jwt.payload, validationOptions);\n\n // If the browser doesn't support native crypto or we choose not\n // to verify the signature, bail early\n if (validationOptions.ignoreSignature == true || !sdk.features.isTokenVerifySupported()) {\n return token;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const key = await getKey(sdk, token.issuer, jwt.header.kid!);\n const valid = await sdkCrypto.verifyToken(token.idToken, key);\n if (!valid) {\n throw new AuthSdkError('The token signature is not valid');\n }\n if (validationParams && validationParams.accessToken && token.claims.at_hash) {\n const hash = await sdkCrypto.getOidcHash(validationParams.accessToken);\n if (hash !== token.claims.at_hash) {\n throw new AuthSdkError('Token hash verification failed');\n }\n }\n return token;\n}\n"],"mappings":";;;;;;;;;;;;AAcA;;AACA;;AACA;;AAEA;;AACA;;;;;;AAnBA;;AACA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAQA;AACO,eAAeA,WAAf,CAA2BC,GAA3B,EAAuDC,KAAvD,EAAuEC,gBAAvE,EAA8H;EACnI,IAAI,CAACD,KAAD,IAAU,CAACA,KAAK,CAACE,OAArB,EAA8B;IAC5B,MAAM,IAAIC,oBAAJ,CAAiB,+BAAjB,CAAN;EACD,CAHkI,CAKnI;;;EACA,IAAIC,GAAG,GAAG,IAAAC,wBAAA,EAAYL,KAAK,CAACE,OAAlB,CAAV,CANmI,CAQnI;EACA;;EACA,MAAMI,gBAAgB,GAAG,CAAAL,gBAAgB,SAAhB,IAAAA,gBAAgB,WAAhB,YAAAA,gBAAgB,CAAEM,MAAlB,KAA4BR,GAAG,CAACS,OAAJ,CAAYD,MAAjE;EACA,MAAM;IAAEA;EAAF,IAAa,MAAM,IAAAE,uBAAA,EAAaV,GAAb,EAAkBO,gBAAlB,CAAzB;EAEA,IAAII,iBAAoC,GAAG,qBAAc;IACvD;IACAC,QAAQ,EAAEZ,GAAG,CAACS,OAAJ,CAAYG,QAFiC;IAGvDC,eAAe,EAAEb,GAAG,CAACS,OAAJ,CAAYI;EAH0B,CAAd,EAIxCX,gBAJwC,EAItB;IACnB;IACAM;EAFmB,CAJsB,CAA3C,CAbmI,CAsBnI;;EACA,IAAAM,oBAAA,EAAed,GAAf,EAAoBK,GAAG,CAACU,OAAxB,EAAiCJ,iBAAjC,EAvBmI,CAyBnI;EACA;;EACA,IAAIA,iBAAiB,CAACE,eAAlB,IAAqC,IAArC,IAA6C,CAACb,GAAG,CAACgB,QAAJ,CAAaC,sBAAb,EAAlD,EAAyF;IACvF,OAAOhB,KAAP;EACD,CA7BkI,CA+BnI;;;EACA,MAAMiB,GAAG,GAAG,MAAM,IAAAC,iBAAA,EAAOnB,GAAP,EAAYC,KAAK,CAACO,MAAlB,EAA0BH,GAAG,CAACe,MAAJ,CAAWC,GAArC,CAAlB;EACA,MAAMC,KAAK,GAAG,MAAMC,SAAS,CAACxB,WAAV,CAAsBE,KAAK,CAACE,OAA5B,EAAqCe,GAArC,CAApB;;EACA,IAAI,CAACI,KAAL,EAAY;IACV,MAAM,IAAIlB,oBAAJ,CAAiB,kCAAjB,CAAN;EACD;;EACD,IAAIF,gBAAgB,IAAIA,gBAAgB,CAACsB,WAArC,IAAoDvB,KAAK,CAACwB,MAAN,CAAaC,OAArE,EAA8E;IAC5E,MAAMC,IAAI,GAAG,MAAMJ,SAAS,CAACK,WAAV,CAAsB1B,gBAAgB,CAACsB,WAAvC,CAAnB;;IACA,IAAIG,IAAI,KAAK1B,KAAK,CAACwB,MAAN,CAAaC,OAA1B,EAAmC;MACjC,MAAM,IAAItB,oBAAJ,CAAiB,gCAAjB,CAAN;IACD;EACF;;EACD,OAAOH,KAAP;AACD"}
1
+ {"version":3,"file":"verifyToken.js","names":["verifyToken","sdk","token","validationParams","idToken","AuthSdkError","jwt","decodeToken","configuredIssuer","issuer","options","getWellKnown","validationOptions","Object","assign","clientId","ignoreSignature","validateClaims","payload","features","isTokenVerifySupported","key","getKey","header","kid","valid","sdkCrypto","accessToken","claims","at_hash","hash","getOidcHash"],"sources":["../../../lib/oidc/verifyToken.ts"],"sourcesContent":["/* eslint-disable max-len */\n/* eslint-disable complexity */\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 { getWellKnown, getKey } from './endpoints/well-known';\nimport { validateClaims } from './util';\nimport { AuthSdkError } from '../errors';\nimport { IDToken, OktaAuthOAuthInterface, TokenVerifyParams } from '../oidc/types';\nimport { decodeToken } from './decodeToken';\nimport * as sdkCrypto from '../crypto';\n\n// Verify the id token\nexport async function verifyToken(sdk: OktaAuthOAuthInterface, token: IDToken, validationParams: TokenVerifyParams): Promise<IDToken> {\n if (!token || !token.idToken) {\n throw new AuthSdkError('Only idTokens may be verified');\n }\n\n // Decode the Jwt object (may throw)\n var jwt = decodeToken(token.idToken);\n\n // The configured issuer may point to a frontend proxy.\n // Get the \"real\" issuer from .well-known/openid-configuration\n const configuredIssuer = validationParams?.issuer || sdk.options.issuer;\n const { issuer } = await getWellKnown(sdk, configuredIssuer);\n\n var validationOptions: TokenVerifyParams = Object.assign({\n // base options, can be overridden by params\n clientId: sdk.options.clientId,\n ignoreSignature: sdk.options.ignoreSignature\n }, validationParams, {\n // final options, cannot be overridden\n issuer\n });\n\n // Standard claim validation (may throw)\n validateClaims(sdk, jwt.payload, validationOptions);\n\n // If the browser doesn't support native crypto or we choose not\n // to verify the signature, bail early\n if (validationOptions.ignoreSignature == true || !sdk.features.isTokenVerifySupported()) {\n return token;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const key = await getKey(sdk, token.issuer, jwt.header.kid!);\n const valid = await sdkCrypto.verifyToken(token.idToken, key);\n if (!valid) {\n throw new AuthSdkError('The token signature is not valid');\n }\n if (validationParams && validationParams.accessToken && token.claims.at_hash) {\n const hash = await sdkCrypto.getOidcHash(validationParams.accessToken);\n if (hash !== token.claims.at_hash) {\n throw new AuthSdkError('Token hash verification failed');\n }\n }\n return token;\n}\n"],"mappings":";;;;AAcA;;AACA;;AACA;;AAEA;;AACA;;;;;;AAnBA;;AACA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAQA;AACO,eAAeA,WAAf,CAA2BC,GAA3B,EAAwDC,KAAxD,EAAwEC,gBAAxE,EAA+H;EACpI,IAAI,CAACD,KAAD,IAAU,CAACA,KAAK,CAACE,OAArB,EAA8B;IAC5B,MAAM,IAAIC,oBAAJ,CAAiB,+BAAjB,CAAN;EACD,CAHmI,CAKpI;;;EACA,IAAIC,GAAG,GAAG,IAAAC,wBAAA,EAAYL,KAAK,CAACE,OAAlB,CAAV,CANoI,CAQpI;EACA;;EACA,MAAMI,gBAAgB,GAAG,CAAAL,gBAAgB,SAAhB,IAAAA,gBAAgB,WAAhB,YAAAA,gBAAgB,CAAEM,MAAlB,KAA4BR,GAAG,CAACS,OAAJ,CAAYD,MAAjE;EACA,MAAM;IAAEA;EAAF,IAAa,MAAM,IAAAE,uBAAA,EAAaV,GAAb,EAAkBO,gBAAlB,CAAzB;EAEA,IAAII,iBAAoC,GAAGC,MAAM,CAACC,MAAP,CAAc;IACvD;IACAC,QAAQ,EAAEd,GAAG,CAACS,OAAJ,CAAYK,QAFiC;IAGvDC,eAAe,EAAEf,GAAG,CAACS,OAAJ,CAAYM;EAH0B,CAAd,EAIxCb,gBAJwC,EAItB;IACnB;IACAM;EAFmB,CAJsB,CAA3C,CAboI,CAsBpI;;EACA,IAAAQ,oBAAA,EAAehB,GAAf,EAAoBK,GAAG,CAACY,OAAxB,EAAiCN,iBAAjC,EAvBoI,CAyBpI;EACA;;EACA,IAAIA,iBAAiB,CAACI,eAAlB,IAAqC,IAArC,IAA6C,CAACf,GAAG,CAACkB,QAAJ,CAAaC,sBAAb,EAAlD,EAAyF;IACvF,OAAOlB,KAAP;EACD,CA7BmI,CA+BpI;;;EACA,MAAMmB,GAAG,GAAG,MAAM,IAAAC,iBAAA,EAAOrB,GAAP,EAAYC,KAAK,CAACO,MAAlB,EAA0BH,GAAG,CAACiB,MAAJ,CAAWC,GAArC,CAAlB;EACA,MAAMC,KAAK,GAAG,MAAMC,SAAS,CAAC1B,WAAV,CAAsBE,KAAK,CAACE,OAA5B,EAAqCiB,GAArC,CAApB;;EACA,IAAI,CAACI,KAAL,EAAY;IACV,MAAM,IAAIpB,oBAAJ,CAAiB,kCAAjB,CAAN;EACD;;EACD,IAAIF,gBAAgB,IAAIA,gBAAgB,CAACwB,WAArC,IAAoDzB,KAAK,CAAC0B,MAAN,CAAaC,OAArE,EAA8E;IAC5E,MAAMC,IAAI,GAAG,MAAMJ,SAAS,CAACK,WAAV,CAAsB5B,gBAAgB,CAACwB,WAAvC,CAAnB;;IACA,IAAIG,IAAI,KAAK5B,KAAK,CAAC0B,MAAN,CAAaC,OAA1B,EAAmC;MACjC,MAAM,IAAIxB,oBAAJ,CAAiB,gCAAjB,CAAN;IACD;EACF;;EACD,OAAOH,KAAP;AACD"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
5
  exports.default = void 0;
6
6
 
@@ -97,11 +97,6 @@ class ServerStorage {
97
97
 
98
98
  findStorageType() {
99
99
  return 'memory';
100
- } // will be removed in next version. OKTA-362589
101
-
102
-
103
- getHttpCache() {
104
- return null; // stubbed in server.js
105
100
  } // shared in-memory using node cache
106
101
 
107
102
 
@@ -110,9 +105,7 @@ class ServerStorage {
110
105
  getItem: this.nodeCache.get,
111
106
  setItem: (key, value) => {
112
107
  this.nodeCache.set(key, value, '2200-01-01T00:00:00.000Z');
113
- },
114
- // TODO: remove - https://oktainc.atlassian.net/browse/OKTA-529631
115
- isSharedStorage: () => true
108
+ }
116
109
  };
117
110
  }
118
111
 
@@ -1 +1 @@
1
- {"version":3,"file":"serverStorage.js","names":["sharedStorage","NodeCache","ServerCookies","constructor","nodeCache","set","name","value","expiresAt","Date","parse","ttl","now","get","delete","del","ServerStorage","storage","testStorageType","storageType","supported","getStorageByType","storageProvider","getStorage","AuthSdkError","findStorageType","getHttpCache","getItem","setItem","key","isSharedStorage"],"sources":["../../../lib/server/serverStorage.ts"],"sourcesContent":["/*!\n * Copyright (c) 2018-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n *\n */\n\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore \n// Do not use this type in code, so it won't be emitted in the declaration output\nimport NodeCache from 'node-cache';\nimport { SimpleStorage, StorageType, StorageUtil, Cookies } from '../types';\nimport { AuthSdkError } from '../errors';\n// eslint-disable-next-line import/no-commonjs\n\n// this is a SHARED memory storage to support a stateless http server\nconst sharedStorage = typeof NodeCache === 'function' ? new NodeCache() : null;\n\nclass ServerCookies implements Cookies {\n nodeCache: any; // NodeCache\n \n constructor(nodeCache) {\n this.nodeCache = nodeCache;\n }\n\n set(name: string, value: string, expiresAt: string): string {\n // eslint-disable-next-line no-extra-boolean-cast\n if (!!(Date.parse(expiresAt))) {\n // Time to expiration in seconds\n var ttl = (Date.parse(expiresAt) - Date.now()) / 1000;\n this.nodeCache.set(name, value, ttl);\n } else {\n this.nodeCache.set(name, value);\n }\n\n return this.get(name);\n }\n\n get(name): string {\n return this.nodeCache.get(name);\n }\n\n delete(name) {\n return this.nodeCache.del(name);\n }\n}\n// Building this as an object allows us to mock the functions in our tests\nclass ServerStorage implements StorageUtil {\n nodeCache: any; // NodeCache\n storage: Cookies;\n constructor(nodeCache) {\n this.nodeCache = nodeCache;\n this.storage = new ServerCookies(nodeCache);\n }\n\n testStorageType(storageType: StorageType): boolean {\n var supported = false;\n switch (storageType) {\n case 'memory':\n supported = true;\n break;\n default:\n break;\n }\n return supported;\n }\n\n getStorageByType(storageType: StorageType): SimpleStorage {\n let storageProvider;\n switch (storageType) {\n case 'memory':\n storageProvider = this.getStorage();\n break;\n default:\n throw new AuthSdkError(`Unrecognized storage option: ${storageType}`);\n break;\n }\n return storageProvider;\n }\n\n findStorageType(): StorageType {\n return 'memory';\n }\n\n // will be removed in next version. OKTA-362589\n getHttpCache() {\n return null; // stubbed in server.js\n }\n\n // shared in-memory using node cache\n getStorage(): SimpleStorage {\n return {\n getItem: this.nodeCache.get,\n setItem: (key, value) => {\n this.nodeCache.set(key, value, '2200-01-01T00:00:00.000Z');\n },\n // TODO: remove - https://oktainc.atlassian.net/browse/OKTA-529631\n isSharedStorage: () => true\n };\n }\n}\n\nexport default new ServerStorage(sharedStorage);\n"],"mappings":";;;;;;AAgBA;;AAEA;;AAlBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAIA;AAEA;AACA,MAAMA,aAAa,GAAG,OAAOC,kBAAP,KAAqB,UAArB,GAAkC,IAAIA,kBAAJ,EAAlC,GAAoD,IAA1E;;AAEA,MAAMC,aAAN,CAAuC;EACrB;EAEhBC,WAAW,CAACC,SAAD,EAAY;IACrB,KAAKA,SAAL,GAAiBA,SAAjB;EACD;;EAEDC,GAAG,CAACC,IAAD,EAAeC,KAAf,EAA8BC,SAA9B,EAAyD;IAC1D;IACA,IAAI,CAAC,CAAEC,IAAI,CAACC,KAAL,CAAWF,SAAX,CAAP,EAA+B;MAC7B;MACA,IAAIG,GAAG,GAAG,CAACF,IAAI,CAACC,KAAL,CAAWF,SAAX,IAAwBC,IAAI,CAACG,GAAL,EAAzB,IAAuC,IAAjD;MACA,KAAKR,SAAL,CAAeC,GAAf,CAAmBC,IAAnB,EAAyBC,KAAzB,EAAgCI,GAAhC;IACD,CAJD,MAIO;MACL,KAAKP,SAAL,CAAeC,GAAf,CAAmBC,IAAnB,EAAyBC,KAAzB;IACD;;IAED,OAAO,KAAKM,GAAL,CAASP,IAAT,CAAP;EACD;;EAEDO,GAAG,CAACP,IAAD,EAAe;IAChB,OAAO,KAAKF,SAAL,CAAeS,GAAf,CAAmBP,IAAnB,CAAP;EACD;;EAEDQ,MAAM,CAACR,IAAD,EAAO;IACX,OAAO,KAAKF,SAAL,CAAeW,GAAf,CAAmBT,IAAnB,CAAP;EACD;;AA1BoC,C,CA4BvC;;;AACA,MAAMU,aAAN,CAA2C;EACzB;EAEhBb,WAAW,CAACC,SAAD,EAAY;IACrB,KAAKA,SAAL,GAAiBA,SAAjB;IACA,KAAKa,OAAL,GAAe,IAAIf,aAAJ,CAAkBE,SAAlB,CAAf;EACD;;EAEDc,eAAe,CAACC,WAAD,EAAoC;IACjD,IAAIC,SAAS,GAAG,KAAhB;;IACA,QAAQD,WAAR;MACE,KAAK,QAAL;QACEC,SAAS,GAAG,IAAZ;QACA;;MACF;QACE;IALJ;;IAOA,OAAOA,SAAP;EACD;;EAEDC,gBAAgB,CAACF,WAAD,EAA0C;IACxD,IAAIG,eAAJ;;IACA,QAAQH,WAAR;MACE,KAAK,QAAL;QACEG,eAAe,GAAG,KAAKC,UAAL,EAAlB;QACA;;MACF;QACE,MAAM,IAAIC,oBAAJ,CAAkB,gCAA+BL,WAAY,EAA7D,CAAN;QACA;IANJ;;IAQA,OAAOG,eAAP;EACD;;EAEDG,eAAe,GAAgB;IAC7B,OAAO,QAAP;EACD,CAnCwC,CAqCzC;;;EACAC,YAAY,GAAG;IACb,OAAO,IAAP,CADa,CACA;EACd,CAxCwC,CA0CzC;;;EACAH,UAAU,GAAkB;IAC1B,OAAO;MACLI,OAAO,EAAE,KAAKvB,SAAL,CAAeS,GADnB;MAELe,OAAO,EAAE,CAACC,GAAD,EAAMtB,KAAN,KAAgB;QACvB,KAAKH,SAAL,CAAeC,GAAf,CAAmBwB,GAAnB,EAAwBtB,KAAxB,EAA+B,0BAA/B;MACD,CAJI;MAKL;MACAuB,eAAe,EAAE,MAAM;IANlB,CAAP;EAQD;;AApDwC;;eAuD5B,IAAId,aAAJ,CAAkBhB,aAAlB,C"}
1
+ {"version":3,"file":"serverStorage.js","names":["sharedStorage","NodeCache","ServerCookies","constructor","nodeCache","set","name","value","expiresAt","Date","parse","ttl","now","get","delete","del","ServerStorage","storage","testStorageType","storageType","supported","getStorageByType","storageProvider","getStorage","AuthSdkError","findStorageType","getItem","setItem","key"],"sources":["../../../lib/server/serverStorage.ts"],"sourcesContent":["/*!\n * Copyright (c) 2018-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n *\n * See the License for the specific language governing permissions and limitations under the License.\n *\n */\n\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore \n// Do not use this type in code, so it won't be emitted in the declaration output\nimport NodeCache from 'node-cache';\nimport { SimpleStorage, StorageType, StorageUtil, Cookies } from '../storage/types';\nimport { AuthSdkError } from '../errors';\n// eslint-disable-next-line import/no-commonjs\n\n// this is a SHARED memory storage to support a stateless http server\nconst sharedStorage = typeof NodeCache === 'function' ? new NodeCache() : null;\n\nclass ServerCookies implements Cookies {\n nodeCache: any; // NodeCache\n \n constructor(nodeCache) {\n this.nodeCache = nodeCache;\n }\n\n set(name: string, value: string, expiresAt: string): string {\n // eslint-disable-next-line no-extra-boolean-cast\n if (!!(Date.parse(expiresAt))) {\n // Time to expiration in seconds\n var ttl = (Date.parse(expiresAt) - Date.now()) / 1000;\n this.nodeCache.set(name, value, ttl);\n } else {\n this.nodeCache.set(name, value);\n }\n\n return this.get(name);\n }\n\n get(name): string {\n return this.nodeCache.get(name);\n }\n\n delete(name) {\n return this.nodeCache.del(name);\n }\n}\n// Building this as an object allows us to mock the functions in our tests\nclass ServerStorage implements StorageUtil {\n nodeCache: any; // NodeCache\n storage: Cookies;\n constructor(nodeCache) {\n this.nodeCache = nodeCache;\n this.storage = new ServerCookies(nodeCache);\n }\n\n testStorageType(storageType: StorageType): boolean {\n var supported = false;\n switch (storageType) {\n case 'memory':\n supported = true;\n break;\n default:\n break;\n }\n return supported;\n }\n\n getStorageByType(storageType: StorageType): SimpleStorage {\n let storageProvider;\n switch (storageType) {\n case 'memory':\n storageProvider = this.getStorage();\n break;\n default:\n throw new AuthSdkError(`Unrecognized storage option: ${storageType}`);\n break;\n }\n return storageProvider;\n }\n\n findStorageType(): StorageType {\n return 'memory';\n }\n\n // shared in-memory using node cache\n getStorage(): SimpleStorage {\n return {\n getItem: this.nodeCache.get,\n setItem: (key, value) => {\n this.nodeCache.set(key, value, '2200-01-01T00:00:00.000Z');\n },\n };\n }\n}\n\nexport default new ServerStorage(sharedStorage);\n"],"mappings":";;;;;;AAgBA;;AAEA;;AAlBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAIA;AAEA;AACA,MAAMA,aAAa,GAAG,OAAOC,kBAAP,KAAqB,UAArB,GAAkC,IAAIA,kBAAJ,EAAlC,GAAoD,IAA1E;;AAEA,MAAMC,aAAN,CAAuC;EACrB;EAEhBC,WAAW,CAACC,SAAD,EAAY;IACrB,KAAKA,SAAL,GAAiBA,SAAjB;EACD;;EAEDC,GAAG,CAACC,IAAD,EAAeC,KAAf,EAA8BC,SAA9B,EAAyD;IAC1D;IACA,IAAI,CAAC,CAAEC,IAAI,CAACC,KAAL,CAAWF,SAAX,CAAP,EAA+B;MAC7B;MACA,IAAIG,GAAG,GAAG,CAACF,IAAI,CAACC,KAAL,CAAWF,SAAX,IAAwBC,IAAI,CAACG,GAAL,EAAzB,IAAuC,IAAjD;MACA,KAAKR,SAAL,CAAeC,GAAf,CAAmBC,IAAnB,EAAyBC,KAAzB,EAAgCI,GAAhC;IACD,CAJD,MAIO;MACL,KAAKP,SAAL,CAAeC,GAAf,CAAmBC,IAAnB,EAAyBC,KAAzB;IACD;;IAED,OAAO,KAAKM,GAAL,CAASP,IAAT,CAAP;EACD;;EAEDO,GAAG,CAACP,IAAD,EAAe;IAChB,OAAO,KAAKF,SAAL,CAAeS,GAAf,CAAmBP,IAAnB,CAAP;EACD;;EAEDQ,MAAM,CAACR,IAAD,EAAO;IACX,OAAO,KAAKF,SAAL,CAAeW,GAAf,CAAmBT,IAAnB,CAAP;EACD;;AA1BoC,C,CA4BvC;;;AACA,MAAMU,aAAN,CAA2C;EACzB;EAEhBb,WAAW,CAACC,SAAD,EAAY;IACrB,KAAKA,SAAL,GAAiBA,SAAjB;IACA,KAAKa,OAAL,GAAe,IAAIf,aAAJ,CAAkBE,SAAlB,CAAf;EACD;;EAEDc,eAAe,CAACC,WAAD,EAAoC;IACjD,IAAIC,SAAS,GAAG,KAAhB;;IACA,QAAQD,WAAR;MACE,KAAK,QAAL;QACEC,SAAS,GAAG,IAAZ;QACA;;MACF;QACE;IALJ;;IAOA,OAAOA,SAAP;EACD;;EAEDC,gBAAgB,CAACF,WAAD,EAA0C;IACxD,IAAIG,eAAJ;;IACA,QAAQH,WAAR;MACE,KAAK,QAAL;QACEG,eAAe,GAAG,KAAKC,UAAL,EAAlB;QACA;;MACF;QACE,MAAM,IAAIC,oBAAJ,CAAkB,gCAA+BL,WAAY,EAA7D,CAAN;QACA;IANJ;;IAQA,OAAOG,eAAP;EACD;;EAEDG,eAAe,GAAgB;IAC7B,OAAO,QAAP;EACD,CAnCwC,CAqCzC;;;EACAF,UAAU,GAAkB;IAC1B,OAAO;MACLG,OAAO,EAAE,KAAKtB,SAAL,CAAeS,GADnB;MAELc,OAAO,EAAE,CAACC,GAAD,EAAMrB,KAAN,KAAgB;QACvB,KAAKH,SAAL,CAAeC,GAAf,CAAmBuB,GAAnB,EAAwBrB,KAAxB,EAA+B,0BAA/B;MACD;IAJI,CAAP;EAMD;;AA7CwC;;eAgD5B,IAAIS,aAAJ,CAAkBhB,aAAlB,C"}
@@ -1,14 +1,14 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
5
  exports.AutoRenewService = void 0;
6
6
 
7
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
7
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
8
8
 
9
9
  var _errors = require("../errors");
10
10
 
11
- var _types = require("../types");
11
+ var _types = require("../oidc/types");
12
12
 
13
13
  var _features = require("../features");
14
14
 
@@ -1 +1 @@
1
- {"version":3,"file":"AutoRenewService.js","names":["AutoRenewService","constructor","tokenManager","options","renewTimeQueue","onTokenExpiredHandler","bind","shouldThrottleRenew","res","push","Date","now","length","firstTime","shift","lastTime","requiresLeadership","syncStorage","isBrowser","key","autoRenew","error","AuthSdkError","emitError","renew","catch","autoRemove","remove","canStart","start","stop","on","EVENT_EXPIRED","started","off","isStarted"],"sources":["../../../lib/services/AutoRenewService.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 { TokenManager } from '../TokenManager';\nimport { AuthSdkError } from '../errors';\nimport { ServiceInterface, ServiceManagerOptions, EVENT_EXPIRED } from '../types';\nimport { isBrowser } from '../features';\n\nexport class AutoRenewService implements ServiceInterface {\n private tokenManager: TokenManager;\n private options: ServiceManagerOptions;\n private renewTimeQueue: Array<number>;\n private started = false;\n\n constructor(tokenManager: TokenManager, options: ServiceManagerOptions = {}) {\n this.tokenManager = tokenManager;\n this.options = options;\n this.renewTimeQueue = [];\n this.onTokenExpiredHandler = this.onTokenExpiredHandler.bind(this);\n }\n \n private shouldThrottleRenew(): boolean {\n let res = false;\n this.renewTimeQueue.push(Date.now());\n if (this.renewTimeQueue.length >= 10) {\n // get and remove first item from queue\n const firstTime = this.renewTimeQueue.shift() as number;\n const lastTime = this.renewTimeQueue[this.renewTimeQueue.length - 1];\n res = (lastTime - firstTime) < 30 * 1000;\n }\n return res;\n }\n\n requiresLeadership() {\n // If tokens sync storage is enabled, handle tokens expiration only in 1 leader tab\n return !!this.options.syncStorage && isBrowser();\n }\n\n private onTokenExpiredHandler(key: string) {\n if (this.options.autoRenew) {\n if (this.shouldThrottleRenew()) {\n const error = new AuthSdkError('Too many token renew requests');\n this.tokenManager.emitError(error);\n } else {\n this.tokenManager.renew(key).catch(() => {}); // Renew errors will emit an \"error\" event \n }\n } else if (this.options.autoRemove) {\n this.tokenManager.remove(key);\n }\n }\n\n canStart() {\n return (!!this.options.autoRenew || !!this.options.autoRemove);\n }\n\n async start() {\n if (this.canStart()) {\n await this.stop();\n this.tokenManager.on(EVENT_EXPIRED, this.onTokenExpiredHandler);\n this.started = true;\n }\n }\n\n async stop() {\n if (this.started) {\n this.tokenManager.off(EVENT_EXPIRED, this.onTokenExpiredHandler);\n this.renewTimeQueue = [];\n this.started = false;\n }\n }\n\n isStarted() {\n return this.started;\n }\n}\n"],"mappings":";;;;;;;;AAcA;;AACA;;AACA;;AAhBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAQO,MAAMA,gBAAN,CAAmD;EAMxDC,WAAW,CAACC,YAAD,EAA6BC,OAA8B,GAAG,EAA9D,EAAkE;IAAA,+CAF3D,KAE2D;IAC3E,KAAKD,YAAL,GAAoBA,YAApB;IACA,KAAKC,OAAL,GAAeA,OAAf;IACA,KAAKC,cAAL,GAAsB,EAAtB;IACA,KAAKC,qBAAL,GAA6B,KAAKA,qBAAL,CAA2BC,IAA3B,CAAgC,IAAhC,CAA7B;EACD;;EAEOC,mBAAmB,GAAY;IACrC,IAAIC,GAAG,GAAG,KAAV;IACA,KAAKJ,cAAL,CAAoBK,IAApB,CAAyBC,IAAI,CAACC,GAAL,EAAzB;;IACA,IAAI,KAAKP,cAAL,CAAoBQ,MAApB,IAA8B,EAAlC,EAAsC;MACpC;MACA,MAAMC,SAAS,GAAG,KAAKT,cAAL,CAAoBU,KAApB,EAAlB;MACA,MAAMC,QAAQ,GAAG,KAAKX,cAAL,CAAoB,KAAKA,cAAL,CAAoBQ,MAApB,GAA6B,CAAjD,CAAjB;MACAJ,GAAG,GAAIO,QAAQ,GAAGF,SAAZ,GAAyB,KAAK,IAApC;IACD;;IACD,OAAOL,GAAP;EACD;;EAEDQ,kBAAkB,GAAG;IACnB;IACA,OAAO,CAAC,CAAC,KAAKb,OAAL,CAAac,WAAf,IAA8B,IAAAC,mBAAA,GAArC;EACD;;EAEOb,qBAAqB,CAACc,GAAD,EAAc;IACzC,IAAI,KAAKhB,OAAL,CAAaiB,SAAjB,EAA4B;MAC1B,IAAI,KAAKb,mBAAL,EAAJ,EAAgC;QAC9B,MAAMc,KAAK,GAAG,IAAIC,oBAAJ,CAAiB,+BAAjB,CAAd;QACA,KAAKpB,YAAL,CAAkBqB,SAAlB,CAA4BF,KAA5B;MACD,CAHD,MAGO;QACL,KAAKnB,YAAL,CAAkBsB,KAAlB,CAAwBL,GAAxB,EAA6BM,KAA7B,CAAmC,MAAM,CAAE,CAA3C,EADK,CACyC;MAC/C;IACF,CAPD,MAOO,IAAI,KAAKtB,OAAL,CAAauB,UAAjB,EAA6B;MAClC,KAAKxB,YAAL,CAAkByB,MAAlB,CAAyBR,GAAzB;IACD;EACF;;EAEDS,QAAQ,GAAG;IACT,OAAQ,CAAC,CAAC,KAAKzB,OAAL,CAAaiB,SAAf,IAA4B,CAAC,CAAC,KAAKjB,OAAL,CAAauB,UAAnD;EACD;;EAEU,MAALG,KAAK,GAAG;IACZ,IAAI,KAAKD,QAAL,EAAJ,EAAqB;MACnB,MAAM,KAAKE,IAAL,EAAN;MACA,KAAK5B,YAAL,CAAkB6B,EAAlB,CAAqBC,oBAArB,EAAoC,KAAK3B,qBAAzC;MACA,KAAK4B,OAAL,GAAe,IAAf;IACD;EACF;;EAES,MAAJH,IAAI,GAAG;IACX,IAAI,KAAKG,OAAT,EAAkB;MAChB,KAAK/B,YAAL,CAAkBgC,GAAlB,CAAsBF,oBAAtB,EAAqC,KAAK3B,qBAA1C;MACA,KAAKD,cAAL,GAAsB,EAAtB;MACA,KAAK6B,OAAL,GAAe,KAAf;IACD;EACF;;EAEDE,SAAS,GAAG;IACV,OAAO,KAAKF,OAAZ;EACD;;AAjEuD"}
1
+ {"version":3,"file":"AutoRenewService.js","names":["AutoRenewService","constructor","tokenManager","options","renewTimeQueue","onTokenExpiredHandler","bind","shouldThrottleRenew","res","push","Date","now","length","firstTime","shift","lastTime","requiresLeadership","syncStorage","isBrowser","key","autoRenew","error","AuthSdkError","emitError","renew","catch","autoRemove","remove","canStart","start","stop","on","EVENT_EXPIRED","started","off","isStarted"],"sources":["../../../lib/services/AutoRenewService.ts"],"sourcesContent":["/*!\n * Copyright (c) 2015-present, Okta, Inc. and/or its affiliates. All rights reserved.\n * The Okta software accompanied by this notice is provided pursuant to the Apache License, Version 2.0 (the \"License.\")\n *\n * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT\n * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * \n * See the License for the specific language governing permissions and limitations under the License.\n */\n\n\nimport { AuthSdkError } from '../errors';\nimport { ServiceInterface, ServiceManagerOptions } from '../core/types';\nimport { EVENT_EXPIRED, TokenManagerInterface } from '../oidc/types';\nimport { isBrowser } from '../features';\n\nexport class AutoRenewService implements ServiceInterface {\n private tokenManager: TokenManagerInterface;\n private options: ServiceManagerOptions;\n private renewTimeQueue: Array<number>;\n private started = false;\n\n constructor(tokenManager: TokenManagerInterface, options: ServiceManagerOptions = {}) {\n this.tokenManager = tokenManager;\n this.options = options;\n this.renewTimeQueue = [];\n this.onTokenExpiredHandler = this.onTokenExpiredHandler.bind(this);\n }\n \n private shouldThrottleRenew(): boolean {\n let res = false;\n this.renewTimeQueue.push(Date.now());\n if (this.renewTimeQueue.length >= 10) {\n // get and remove first item from queue\n const firstTime = this.renewTimeQueue.shift() as number;\n const lastTime = this.renewTimeQueue[this.renewTimeQueue.length - 1];\n res = (lastTime - firstTime) < 30 * 1000;\n }\n return res;\n }\n\n requiresLeadership() {\n // If tokens sync storage is enabled, handle tokens expiration only in 1 leader tab\n return !!this.options.syncStorage && isBrowser();\n }\n\n private onTokenExpiredHandler(key: string) {\n if (this.options.autoRenew) {\n if (this.shouldThrottleRenew()) {\n const error = new AuthSdkError('Too many token renew requests');\n this.tokenManager.emitError(error);\n } else {\n this.tokenManager.renew(key).catch(() => {}); // Renew errors will emit an \"error\" event \n }\n } else if (this.options.autoRemove) {\n this.tokenManager.remove(key);\n }\n }\n\n canStart() {\n return (!!this.options.autoRenew || !!this.options.autoRemove);\n }\n\n async start() {\n if (this.canStart()) {\n await this.stop();\n this.tokenManager.on(EVENT_EXPIRED, this.onTokenExpiredHandler);\n this.started = true;\n }\n }\n\n async stop() {\n if (this.started) {\n this.tokenManager.off(EVENT_EXPIRED, this.onTokenExpiredHandler);\n this.renewTimeQueue = [];\n this.started = false;\n }\n }\n\n isStarted() {\n return this.started;\n }\n}\n"],"mappings":";;;;;;;;AAaA;;AAEA;;AACA;;AAhBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAQO,MAAMA,gBAAN,CAAmD;EAMxDC,WAAW,CAACC,YAAD,EAAsCC,OAA8B,GAAG,EAAvE,EAA2E;IAAA,+CAFpE,KAEoE;IACpF,KAAKD,YAAL,GAAoBA,YAApB;IACA,KAAKC,OAAL,GAAeA,OAAf;IACA,KAAKC,cAAL,GAAsB,EAAtB;IACA,KAAKC,qBAAL,GAA6B,KAAKA,qBAAL,CAA2BC,IAA3B,CAAgC,IAAhC,CAA7B;EACD;;EAEOC,mBAAmB,GAAY;IACrC,IAAIC,GAAG,GAAG,KAAV;IACA,KAAKJ,cAAL,CAAoBK,IAApB,CAAyBC,IAAI,CAACC,GAAL,EAAzB;;IACA,IAAI,KAAKP,cAAL,CAAoBQ,MAApB,IAA8B,EAAlC,EAAsC;MACpC;MACA,MAAMC,SAAS,GAAG,KAAKT,cAAL,CAAoBU,KAApB,EAAlB;MACA,MAAMC,QAAQ,GAAG,KAAKX,cAAL,CAAoB,KAAKA,cAAL,CAAoBQ,MAApB,GAA6B,CAAjD,CAAjB;MACAJ,GAAG,GAAIO,QAAQ,GAAGF,SAAZ,GAAyB,KAAK,IAApC;IACD;;IACD,OAAOL,GAAP;EACD;;EAEDQ,kBAAkB,GAAG;IACnB;IACA,OAAO,CAAC,CAAC,KAAKb,OAAL,CAAac,WAAf,IAA8B,IAAAC,mBAAA,GAArC;EACD;;EAEOb,qBAAqB,CAACc,GAAD,EAAc;IACzC,IAAI,KAAKhB,OAAL,CAAaiB,SAAjB,EAA4B;MAC1B,IAAI,KAAKb,mBAAL,EAAJ,EAAgC;QAC9B,MAAMc,KAAK,GAAG,IAAIC,oBAAJ,CAAiB,+BAAjB,CAAd;QACA,KAAKpB,YAAL,CAAkBqB,SAAlB,CAA4BF,KAA5B;MACD,CAHD,MAGO;QACL,KAAKnB,YAAL,CAAkBsB,KAAlB,CAAwBL,GAAxB,EAA6BM,KAA7B,CAAmC,MAAM,CAAE,CAA3C,EADK,CACyC;MAC/C;IACF,CAPD,MAOO,IAAI,KAAKtB,OAAL,CAAauB,UAAjB,EAA6B;MAClC,KAAKxB,YAAL,CAAkByB,MAAlB,CAAyBR,GAAzB;IACD;EACF;;EAEDS,QAAQ,GAAG;IACT,OAAQ,CAAC,CAAC,KAAKzB,OAAL,CAAaiB,SAAf,IAA4B,CAAC,CAAC,KAAKjB,OAAL,CAAauB,UAAnD;EACD;;EAEU,MAALG,KAAK,GAAG;IACZ,IAAI,KAAKD,QAAL,EAAJ,EAAqB;MACnB,MAAM,KAAKE,IAAL,EAAN;MACA,KAAK5B,YAAL,CAAkB6B,EAAlB,CAAqBC,oBAArB,EAAoC,KAAK3B,qBAAzC;MACA,KAAK4B,OAAL,GAAe,IAAf;IACD;EACF;;EAES,MAAJH,IAAI,GAAG;IACX,IAAI,KAAKG,OAAT,EAAkB;MAChB,KAAK/B,YAAL,CAAkBgC,GAAlB,CAAsBF,oBAAtB,EAAqC,KAAK3B,qBAA1C;MACA,KAAKD,cAAL,GAAsB,EAAtB;MACA,KAAK6B,OAAL,GAAe,KAAf;IACD;EACF;;EAEDE,SAAS,GAAG;IACV,OAAO,KAAKF,OAAZ;EACD;;AAjEuD"}
@@ -1,12 +1,10 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
5
  exports.LeaderElectionService = void 0;
6
6
 
7
- var _promise = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/promise"));
8
-
9
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
7
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
8
 
11
9
  var _broadcastChannel = require("broadcast-channel");
12
10
 
@@ -75,7 +73,7 @@ class LeaderElectionService {
75
73
 
76
74
  if (this.channel) {
77
75
  // Workaround to fix error `Failed to execute 'postMessage' on 'BroadcastChannel': Channel is closed`
78
- this.channel.postInternal = () => _promise.default.resolve();
76
+ this.channel.postInternal = () => Promise.resolve();
79
77
 
80
78
  await this.channel.close();
81
79
  this.channel = undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"LeaderElectionService.js","names":["LeaderElectionService","constructor","options","onLeaderDuplicate","bind","onLeader","isLeader","elector","hasLeader","start","stop","canStart","electionChannelName","channel","BroadcastChannel","createLeaderElection","onduplicate","awaitLeadership","then","started","die","undefined","postInternal","resolve","close","requiresLeadership","isStarted","isBrowser"],"sources":["../../../lib/services/LeaderElectionService.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 { ServiceInterface, ServiceManagerOptions } from '../types';\nimport {\n BroadcastChannel,\n createLeaderElection,\n LeaderElector\n} from 'broadcast-channel';\nimport { isBrowser } from '../features';\n\ndeclare type OnLeaderHandler = (() => Promise<void>);\ndeclare type ServiceOptions = ServiceManagerOptions & {\n onLeader?: OnLeaderHandler;\n};\n\nexport class LeaderElectionService implements ServiceInterface {\n private options: ServiceOptions;\n private channel?: BroadcastChannel;\n private elector?: LeaderElector;\n private started = false;\n\n constructor(options: ServiceOptions = {}) {\n this.options = options;\n this.onLeaderDuplicate = this.onLeaderDuplicate.bind(this);\n this.onLeader = this.onLeader.bind(this);\n }\n\n private onLeaderDuplicate() {\n }\n\n private async onLeader() {\n await this.options.onLeader?.();\n }\n\n isLeader() {\n return !!this.elector?.isLeader;\n }\n\n hasLeader() {\n return !!this.elector?.hasLeader;\n }\n\n async start() {\n await this.stop();\n if (this.canStart()) {\n const { electionChannelName } = this.options;\n this.channel = new BroadcastChannel(electionChannelName as string);\n this.elector = createLeaderElection(this.channel);\n this.elector.onduplicate = this.onLeaderDuplicate;\n this.elector.awaitLeadership().then(this.onLeader);\n this.started = true;\n }\n }\n\n async stop() {\n if (this.started) {\n if (this.elector) {\n await this.elector.die();\n this.elector = undefined;\n }\n if (this.channel) {\n // Workaround to fix error `Failed to execute 'postMessage' on 'BroadcastChannel': Channel is closed`\n (this.channel as any).postInternal = () => Promise.resolve();\n await this.channel.close();\n this.channel = undefined;\n }\n this.started = false;\n }\n }\n\n requiresLeadership() {\n return false;\n }\n\n isStarted() {\n return this.started;\n }\n\n canStart() {\n return isBrowser();\n }\n\n}\n"],"mappings":";;;;;;;;;;AAcA;;AAKA;;AAnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAgBO,MAAMA,qBAAN,CAAwD;EAM7DC,WAAW,CAACC,OAAuB,GAAG,EAA3B,EAA+B;IAAA,+CAFxB,KAEwB;IACxC,KAAKA,OAAL,GAAeA,OAAf;IACA,KAAKC,iBAAL,GAAyB,KAAKA,iBAAL,CAAuBC,IAAvB,CAA4B,IAA5B,CAAzB;IACA,KAAKC,QAAL,GAAgB,KAAKA,QAAL,CAAcD,IAAd,CAAmB,IAAnB,CAAhB;EACD;;EAEOD,iBAAiB,GAAG,CAC3B;;EAEqB,MAARE,QAAQ,GAAG;IAAA;;IACvB,gCAAM,sBAAKH,OAAL,EAAaG,QAAnB,0DAAM,yCAAN;EACD;;EAEDC,QAAQ,GAAG;IAAA;;IACT,OAAO,CAAC,mBAAC,KAAKC,OAAN,0CAAC,cAAcD,QAAf,CAAR;EACD;;EAEDE,SAAS,GAAG;IAAA;;IACV,OAAO,CAAC,oBAAC,KAAKD,OAAN,2CAAC,eAAcC,SAAf,CAAR;EACD;;EAEU,MAALC,KAAK,GAAG;IACZ,MAAM,KAAKC,IAAL,EAAN;;IACA,IAAI,KAAKC,QAAL,EAAJ,EAAqB;MACnB,MAAM;QAAEC;MAAF,IAA0B,KAAKV,OAArC;MACA,KAAKW,OAAL,GAAe,IAAIC,kCAAJ,CAAqBF,mBAArB,CAAf;MACA,KAAKL,OAAL,GAAe,IAAAQ,sCAAA,EAAqB,KAAKF,OAA1B,CAAf;MACA,KAAKN,OAAL,CAAaS,WAAb,GAA2B,KAAKb,iBAAhC;MACA,KAAKI,OAAL,CAAaU,eAAb,GAA+BC,IAA/B,CAAoC,KAAKb,QAAzC;MACA,KAAKc,OAAL,GAAe,IAAf;IACD;EACF;;EAES,MAAJT,IAAI,GAAG;IACX,IAAI,KAAKS,OAAT,EAAkB;MAChB,IAAI,KAAKZ,OAAT,EAAkB;QAChB,MAAM,KAAKA,OAAL,CAAaa,GAAb,EAAN;QACA,KAAKb,OAAL,GAAec,SAAf;MACD;;MACD,IAAI,KAAKR,OAAT,EAAkB;QAChB;QACC,KAAKA,OAAN,CAAsBS,YAAtB,GAAqC,MAAM,iBAAQC,OAAR,EAA3C;;QACA,MAAM,KAAKV,OAAL,CAAaW,KAAb,EAAN;QACA,KAAKX,OAAL,GAAeQ,SAAf;MACD;;MACD,KAAKF,OAAL,GAAe,KAAf;IACD;EACF;;EAEDM,kBAAkB,GAAG;IACnB,OAAO,KAAP;EACD;;EAEDC,SAAS,GAAG;IACV,OAAO,KAAKP,OAAZ;EACD;;EAEDR,QAAQ,GAAG;IACT,OAAO,IAAAgB,mBAAA,GAAP;EACD;;AAjE4D"}
1
+ {"version":3,"file":"LeaderElectionService.js","names":["LeaderElectionService","constructor","options","onLeaderDuplicate","bind","onLeader","isLeader","elector","hasLeader","start","stop","canStart","electionChannelName","channel","BroadcastChannel","createLeaderElection","onduplicate","awaitLeadership","then","started","die","undefined","postInternal","Promise","resolve","close","requiresLeadership","isStarted","isBrowser"],"sources":["../../../lib/services/LeaderElectionService.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 { ServiceInterface, ServiceManagerOptions } from '../core/types';\nimport {\n BroadcastChannel,\n createLeaderElection,\n LeaderElector\n} from 'broadcast-channel';\nimport { isBrowser } from '../features';\n\ndeclare type OnLeaderHandler = (() => Promise<void>);\ndeclare type ServiceOptions = ServiceManagerOptions & {\n onLeader?: OnLeaderHandler;\n};\n\nexport class LeaderElectionService implements ServiceInterface {\n private options: ServiceOptions;\n private channel?: BroadcastChannel;\n private elector?: LeaderElector;\n private started = false;\n\n constructor(options: ServiceOptions = {}) {\n this.options = options;\n this.onLeaderDuplicate = this.onLeaderDuplicate.bind(this);\n this.onLeader = this.onLeader.bind(this);\n }\n\n private onLeaderDuplicate() {\n }\n\n private async onLeader() {\n await this.options.onLeader?.();\n }\n\n isLeader() {\n return !!this.elector?.isLeader;\n }\n\n hasLeader() {\n return !!this.elector?.hasLeader;\n }\n\n async start() {\n await this.stop();\n if (this.canStart()) {\n const { electionChannelName } = this.options;\n this.channel = new BroadcastChannel(electionChannelName as string);\n this.elector = createLeaderElection(this.channel);\n this.elector.onduplicate = this.onLeaderDuplicate;\n this.elector.awaitLeadership().then(this.onLeader);\n this.started = true;\n }\n }\n\n async stop() {\n if (this.started) {\n if (this.elector) {\n await this.elector.die();\n this.elector = undefined;\n }\n if (this.channel) {\n // Workaround to fix error `Failed to execute 'postMessage' on 'BroadcastChannel': Channel is closed`\n (this.channel as any).postInternal = () => Promise.resolve();\n await this.channel.close();\n this.channel = undefined;\n }\n this.started = false;\n }\n }\n\n requiresLeadership() {\n return false;\n }\n\n isStarted() {\n return this.started;\n }\n\n canStart() {\n return isBrowser();\n }\n\n}\n"],"mappings":";;;;;;;;AAcA;;AAKA;;AAnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAgBO,MAAMA,qBAAN,CAAwD;EAM7DC,WAAW,CAACC,OAAuB,GAAG,EAA3B,EAA+B;IAAA,+CAFxB,KAEwB;IACxC,KAAKA,OAAL,GAAeA,OAAf;IACA,KAAKC,iBAAL,GAAyB,KAAKA,iBAAL,CAAuBC,IAAvB,CAA4B,IAA5B,CAAzB;IACA,KAAKC,QAAL,GAAgB,KAAKA,QAAL,CAAcD,IAAd,CAAmB,IAAnB,CAAhB;EACD;;EAEOD,iBAAiB,GAAG,CAC3B;;EAEqB,MAARE,QAAQ,GAAG;IAAA;;IACvB,gCAAM,sBAAKH,OAAL,EAAaG,QAAnB,0DAAM,yCAAN;EACD;;EAEDC,QAAQ,GAAG;IAAA;;IACT,OAAO,CAAC,mBAAC,KAAKC,OAAN,0CAAC,cAAcD,QAAf,CAAR;EACD;;EAEDE,SAAS,GAAG;IAAA;;IACV,OAAO,CAAC,oBAAC,KAAKD,OAAN,2CAAC,eAAcC,SAAf,CAAR;EACD;;EAEU,MAALC,KAAK,GAAG;IACZ,MAAM,KAAKC,IAAL,EAAN;;IACA,IAAI,KAAKC,QAAL,EAAJ,EAAqB;MACnB,MAAM;QAAEC;MAAF,IAA0B,KAAKV,OAArC;MACA,KAAKW,OAAL,GAAe,IAAIC,kCAAJ,CAAqBF,mBAArB,CAAf;MACA,KAAKL,OAAL,GAAe,IAAAQ,sCAAA,EAAqB,KAAKF,OAA1B,CAAf;MACA,KAAKN,OAAL,CAAaS,WAAb,GAA2B,KAAKb,iBAAhC;MACA,KAAKI,OAAL,CAAaU,eAAb,GAA+BC,IAA/B,CAAoC,KAAKb,QAAzC;MACA,KAAKc,OAAL,GAAe,IAAf;IACD;EACF;;EAES,MAAJT,IAAI,GAAG;IACX,IAAI,KAAKS,OAAT,EAAkB;MAChB,IAAI,KAAKZ,OAAT,EAAkB;QAChB,MAAM,KAAKA,OAAL,CAAaa,GAAb,EAAN;QACA,KAAKb,OAAL,GAAec,SAAf;MACD;;MACD,IAAI,KAAKR,OAAT,EAAkB;QAChB;QACC,KAAKA,OAAN,CAAsBS,YAAtB,GAAqC,MAAMC,OAAO,CAACC,OAAR,EAA3C;;QACA,MAAM,KAAKX,OAAL,CAAaY,KAAb,EAAN;QACA,KAAKZ,OAAL,GAAeQ,SAAf;MACD;;MACD,KAAKF,OAAL,GAAe,KAAf;IACD;EACF;;EAEDO,kBAAkB,GAAG;IACnB,OAAO,KAAP;EACD;;EAEDC,SAAS,GAAG;IACV,OAAO,KAAKR,OAAZ;EACD;;EAEDR,QAAQ,GAAG;IACT,OAAO,IAAAiB,mBAAA,GAAP;EACD;;AAjE4D"}
@@ -1,16 +1,18 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
5
  exports.SyncStorageService = void 0;
6
6
 
7
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
7
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
8
8
 
9
9
  var _broadcastChannel = require("broadcast-channel");
10
10
 
11
11
  var _features = require("../features");
12
12
 
13
- var _types = require("../types");
13
+ var _types = require("../oidc/types");
14
+
15
+ var _errors = require("../errors");
14
16
 
15
17
  /*!
16
18
  * Copyright (c) 2015-present, Okta, Inc. and/or its affiliates. All rights reserved.
@@ -45,26 +47,32 @@ class SyncStorageService {
45
47
  }
46
48
 
47
49
  canStart() {
48
- // TODO: canStart logic should depend on canUse logic from broadcast-channel
49
- // instead of the storage that TokenManager uses
50
- // JIRA: https://oktainc.atlassian.net/browse/OKTA-529631
51
- return !!this.options.syncStorage && (0, _features.isBrowser)() && this.tokenManager.hasSharedStorage();
50
+ return !!this.options.syncStorage && (0, _features.isBrowser)();
52
51
  }
53
52
 
54
53
  async start() {
55
- if (this.canStart()) {
56
- await this.stop();
57
- const {
58
- syncChannelName
59
- } = this.options;
54
+ if (!this.canStart()) {
55
+ return;
56
+ }
57
+
58
+ await this.stop();
59
+ const {
60
+ syncChannelName
61
+ } = this.options;
62
+
63
+ try {
64
+ // BroadcastChannel throws if no supported method can be found
60
65
  this.channel = new _broadcastChannel.BroadcastChannel(syncChannelName);
61
- this.tokenManager.on(_types.EVENT_ADDED, this.onTokenAddedHandler);
62
- this.tokenManager.on(_types.EVENT_REMOVED, this.onTokenRemovedHandler);
63
- this.tokenManager.on(_types.EVENT_RENEWED, this.onTokenRenewedHandler);
64
- this.tokenManager.on(_types.EVENT_SET_STORAGE, this.onSetStorageHandler);
65
- this.channel.addEventListener('message', this.onSyncMessageHandler);
66
- this.started = true;
66
+ } catch (err) {
67
+ throw new _errors.AuthSdkError('SyncStorageService is not supported in current browser.');
67
68
  }
69
+
70
+ this.tokenManager.on(_types.EVENT_ADDED, this.onTokenAddedHandler);
71
+ this.tokenManager.on(_types.EVENT_REMOVED, this.onTokenRemovedHandler);
72
+ this.tokenManager.on(_types.EVENT_RENEWED, this.onTokenRenewedHandler);
73
+ this.tokenManager.on(_types.EVENT_SET_STORAGE, this.onSetStorageHandler);
74
+ this.channel.addEventListener('message', this.onSyncMessageHandler);
75
+ this.started = true;
68
76
  }
69
77
 
70
78
  async stop() {