@okta/okta-auth-js 6.5.3 → 6.6.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 (151) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/cjs/OktaAuth.js +23 -21
  3. package/cjs/OktaAuth.js.map +1 -1
  4. package/cjs/OktaUserAgent.js +2 -2
  5. package/cjs/ServiceManager.js +9 -9
  6. package/cjs/ServiceManager.js.map +1 -1
  7. package/cjs/TokenManager.js +6 -0
  8. package/cjs/TokenManager.js.map +1 -1
  9. package/cjs/errors/index.js +5 -0
  10. package/cjs/errors/index.js.map +1 -1
  11. package/cjs/http/request.js.map +1 -1
  12. package/cjs/idx/authenticate.js.map +1 -1
  13. package/cjs/idx/cancel.js.map +1 -1
  14. package/cjs/idx/emailVerify.js.map +1 -1
  15. package/cjs/idx/flow/FlowSpecification.js.map +1 -1
  16. package/cjs/idx/idxState/index.js +1 -1
  17. package/cjs/idx/idxState/index.js.map +1 -1
  18. package/cjs/idx/idxState/v1/generateIdxAction.js +2 -4
  19. package/cjs/idx/idxState/v1/generateIdxAction.js.map +1 -1
  20. package/cjs/idx/idxState/v1/idxResponseParser.js.map +1 -1
  21. package/cjs/idx/idxState/v1/makeIdxState.js.map +1 -1
  22. package/cjs/idx/idxState/v1/remediationParser.js.map +1 -1
  23. package/cjs/idx/interact.js +1 -3
  24. package/cjs/idx/interact.js.map +1 -1
  25. package/cjs/idx/introspect.js.map +1 -1
  26. package/cjs/idx/poll.js.map +1 -1
  27. package/cjs/idx/proceed.js.map +1 -1
  28. package/cjs/idx/recoverPassword.js.map +1 -1
  29. package/cjs/idx/register.js.map +1 -1
  30. package/cjs/idx/remediate.js +1 -1
  31. package/cjs/idx/remediate.js.map +1 -1
  32. package/cjs/idx/remediators/Base/AuthenticatorData.js.map +1 -1
  33. package/cjs/idx/remediators/Base/Remediator.js.map +1 -1
  34. package/cjs/idx/remediators/Base/SelectAuthenticator.js.map +1 -1
  35. package/cjs/idx/remediators/Base/VerifyAuthenticator.js.map +1 -1
  36. package/cjs/idx/remediators/EnrollPoll.js.map +1 -1
  37. package/cjs/idx/remediators/EnrollmentChannelData.js.map +1 -1
  38. package/cjs/idx/remediators/GenericRemediator/GenericRemediator.js +1 -3
  39. package/cjs/idx/remediators/GenericRemediator/GenericRemediator.js.map +1 -1
  40. package/cjs/idx/remediators/SelectEnrollmentChannel.js.map +1 -1
  41. package/cjs/idx/run.js +7 -9
  42. package/cjs/idx/run.js.map +1 -1
  43. package/cjs/idx/startTransaction.js.map +1 -1
  44. package/cjs/idx/transactionMeta.js.map +1 -1
  45. package/cjs/idx/types/api.js.map +1 -1
  46. package/cjs/idx/unlockAccount.js.map +1 -1
  47. package/cjs/idx/util.js +1 -3
  48. package/cjs/idx/util.js.map +1 -1
  49. package/cjs/oidc/endpoints/token.js.map +1 -1
  50. package/cjs/oidc/endpoints/well-known.js.map +1 -1
  51. package/cjs/oidc/exchangeCodeForTokens.js.map +1 -1
  52. package/cjs/oidc/getToken.js.map +1 -1
  53. package/cjs/oidc/getUserInfo.js.map +1 -1
  54. package/cjs/oidc/getWithPopup.js.map +1 -1
  55. package/cjs/oidc/getWithRedirect.js.map +1 -1
  56. package/cjs/oidc/getWithoutPrompt.js.map +1 -1
  57. package/cjs/oidc/handleOAuthResponse.js +1 -3
  58. package/cjs/oidc/handleOAuthResponse.js.map +1 -1
  59. package/cjs/oidc/renewToken.js.map +1 -1
  60. package/cjs/oidc/renewTokensWithRefresh.js +26 -15
  61. package/cjs/oidc/renewTokensWithRefresh.js.map +1 -1
  62. package/cjs/oidc/revokeToken.js.map +1 -1
  63. package/cjs/oidc/util/browser.js.map +1 -1
  64. package/cjs/oidc/util/defaultTokenParams.js.map +1 -1
  65. package/cjs/oidc/util/errors.js +8 -0
  66. package/cjs/oidc/util/errors.js.map +1 -1
  67. package/cjs/oidc/util/loginRedirect.js.map +1 -1
  68. package/cjs/oidc/util/oauth.js.map +1 -1
  69. package/cjs/oidc/util/oauthMeta.js.map +1 -1
  70. package/cjs/oidc/util/prepareTokenParams.js.map +1 -1
  71. package/cjs/oidc/util/validateClaims.js.map +1 -1
  72. package/cjs/oidc/verifyToken.js.map +1 -1
  73. package/cjs/options/index.js +5 -2
  74. package/cjs/options/index.js.map +1 -1
  75. package/cjs/tx/AuthTransaction.js +1 -1
  76. package/cjs/tx/AuthTransaction.js.map +1 -1
  77. package/cjs/tx/api.js +3 -5
  78. package/cjs/tx/api.js.map +1 -1
  79. package/cjs/tx/poll.js +1 -3
  80. package/cjs/tx/poll.js.map +1 -1
  81. package/dist/okta-auth-js.min.js +1 -1
  82. package/dist/okta-auth-js.min.js.map +1 -1
  83. package/dist/okta-auth-js.umd.js +1 -1
  84. package/dist/okta-auth-js.umd.js.map +1 -1
  85. package/esm/esm.browser.js +509 -373
  86. package/esm/esm.browser.js.map +1 -1
  87. package/esm/esm.node.mjs +509 -373
  88. package/esm/esm.node.mjs.map +1 -1
  89. package/lib/OktaAuth.d.ts +4 -4
  90. package/lib/ServiceManager.d.ts +2 -2
  91. package/lib/TokenManager.d.ts +1 -0
  92. package/lib/errors/index.d.ts +2 -1
  93. package/lib/http/request.d.ts +4 -4
  94. package/lib/idx/authenticate.d.ts +2 -2
  95. package/lib/idx/cancel.d.ts +2 -2
  96. package/lib/idx/emailVerify.d.ts +2 -2
  97. package/lib/idx/flow/FlowSpecification.d.ts +2 -2
  98. package/lib/idx/idxState/index.d.ts +3 -3
  99. package/lib/idx/idxState/v1/generateIdxAction.d.ts +2 -2
  100. package/lib/idx/idxState/v1/idxResponseParser.d.ts +3 -3
  101. package/lib/idx/idxState/v1/makeIdxState.d.ts +3 -3
  102. package/lib/idx/idxState/v1/remediationParser.d.ts +2 -2
  103. package/lib/idx/interact.d.ts +2 -2
  104. package/lib/idx/introspect.d.ts +2 -2
  105. package/lib/idx/poll.d.ts +2 -2
  106. package/lib/idx/proceed.d.ts +3 -3
  107. package/lib/idx/recoverPassword.d.ts +2 -2
  108. package/lib/idx/register.d.ts +2 -2
  109. package/lib/idx/remediate.d.ts +2 -2
  110. package/lib/idx/remediators/Base/AuthenticatorData.d.ts +2 -2
  111. package/lib/idx/remediators/Base/Remediator.d.ts +2 -2
  112. package/lib/idx/remediators/Base/SelectAuthenticator.d.ts +2 -2
  113. package/lib/idx/remediators/Base/VerifyAuthenticator.d.ts +2 -2
  114. package/lib/idx/remediators/EnrollPoll.d.ts +2 -2
  115. package/lib/idx/remediators/EnrollmentChannelData.d.ts +2 -2
  116. package/lib/idx/remediators/GenericRemediator/GenericRemediator.d.ts +2 -2
  117. package/lib/idx/remediators/SelectEnrollmentChannel.d.ts +2 -2
  118. package/lib/idx/run.d.ts +2 -2
  119. package/lib/idx/startTransaction.d.ts +2 -2
  120. package/lib/idx/transactionMeta.d.ts +7 -7
  121. package/lib/idx/types/api.d.ts +0 -1
  122. package/lib/idx/unlockAccount.d.ts +2 -2
  123. package/lib/idx/util.d.ts +4 -4
  124. package/lib/oidc/endpoints/token.d.ts +2 -2
  125. package/lib/oidc/endpoints/well-known.d.ts +3 -3
  126. package/lib/oidc/exchangeCodeForTokens.d.ts +2 -2
  127. package/lib/oidc/getToken.d.ts +2 -2
  128. package/lib/oidc/getUserInfo.d.ts +2 -2
  129. package/lib/oidc/getWithPopup.d.ts +2 -2
  130. package/lib/oidc/getWithRedirect.d.ts +2 -2
  131. package/lib/oidc/getWithoutPrompt.d.ts +2 -2
  132. package/lib/oidc/handleOAuthResponse.d.ts +2 -2
  133. package/lib/oidc/renewToken.d.ts +2 -2
  134. package/lib/oidc/renewTokensWithRefresh.d.ts +2 -2
  135. package/lib/oidc/revokeToken.d.ts +2 -2
  136. package/lib/oidc/util/browser.d.ts +2 -2
  137. package/lib/oidc/util/defaultTokenParams.d.ts +2 -2
  138. package/lib/oidc/util/errors.d.ts +3 -2
  139. package/lib/oidc/util/loginRedirect.d.ts +4 -4
  140. package/lib/oidc/util/oauth.d.ts +4 -4
  141. package/lib/oidc/util/oauthMeta.d.ts +2 -2
  142. package/lib/oidc/util/prepareTokenParams.d.ts +5 -5
  143. package/lib/oidc/util/validateClaims.d.ts +2 -2
  144. package/lib/oidc/verifyToken.d.ts +2 -2
  145. package/lib/tx/api.d.ts +2 -3
  146. package/lib/types/OktaAuthOptions.d.ts +2 -2
  147. package/lib/types/Service.d.ts +2 -2
  148. package/lib/types/TokenManager.d.ts +1 -0
  149. package/lib/types/UserClaims.d.ts +4 -1
  150. package/lib/types/api.d.ts +28 -8
  151. package/package.json +13 -22
@@ -28,7 +28,6 @@ import _asyncToGenerator from '@babel/runtime-corejs3/helpers/asyncToGenerator';
28
28
  import _createClass from '@babel/runtime-corejs3/helpers/createClass';
29
29
  import _regeneratorRuntime from '@babel/runtime-corejs3/regenerator';
30
30
  import _Object$assign from '@babel/runtime-corejs3/core-js-stable/object/assign';
31
- import _Object$keys from '@babel/runtime-corejs3/core-js-stable/object/keys';
32
31
  import _typeof from '@babel/runtime-corejs3/helpers/typeof';
33
32
  import _Array$from from '@babel/runtime-corejs3/core-js-stable/array/from';
34
33
  import _slicedToArray from '@babel/runtime-corejs3/helpers/slicedToArray';
@@ -37,6 +36,7 @@ import _Object$entries from '@babel/runtime-corejs3/core-js-stable/object/entrie
37
36
  import _keysInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/keys';
38
37
  import _Object$values from '@babel/runtime-corejs3/core-js-stable/object/values';
39
38
  import _findInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/find';
39
+ import _Object$keys from '@babel/runtime-corejs3/core-js-stable/object/keys';
40
40
  import Cookies from 'js-cookie';
41
41
  import _filterInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/filter';
42
42
  import _parseInt from '@babel/runtime-corejs3/core-js-stable/parse-int';
@@ -155,6 +155,9 @@ var OAuthError = function (_CustomError) {
155
155
  function isAuthApiError(obj) {
156
156
  return obj instanceof AuthApiError;
157
157
  }
158
+ function isOAuthError(obj) {
159
+ return obj instanceof OAuthError;
160
+ }
158
161
 
159
162
  var a = function a(str) {
160
163
  return atob(str);
@@ -666,6 +669,60 @@ function getStateToken(res) {
666
669
  return addStateToken(res);
667
670
  }
668
671
 
672
+ function transactionStatus(sdk, args) {
673
+ args = addStateToken(sdk, args);
674
+ return post(sdk, sdk.getIssuerOrigin() + '/api/v1/authn', args, {
675
+ withCredentials: true
676
+ });
677
+ }
678
+ function resumeTransaction(sdk, args) {
679
+ if (!args || !args.stateToken) {
680
+ var stateToken = sdk.tx.exists._get(STATE_TOKEN_KEY_NAME);
681
+ if (stateToken) {
682
+ args = {
683
+ stateToken: stateToken
684
+ };
685
+ } else {
686
+ return _Promise.reject(new AuthSdkError('No transaction to resume'));
687
+ }
688
+ }
689
+ return sdk.tx.status(args).then(function (res) {
690
+ return sdk.tx.createTransaction(res);
691
+ });
692
+ }
693
+ function introspectAuthn(sdk, args) {
694
+ if (!args || !args.stateToken) {
695
+ var stateToken = sdk.tx.exists._get(STATE_TOKEN_KEY_NAME);
696
+ if (stateToken) {
697
+ args = {
698
+ stateToken: stateToken
699
+ };
700
+ } else {
701
+ return _Promise.reject(new AuthSdkError('No transaction to evaluate'));
702
+ }
703
+ }
704
+ return transactionStep(sdk, args).then(function (res) {
705
+ return sdk.tx.createTransaction(res);
706
+ });
707
+ }
708
+ function transactionStep(sdk, args) {
709
+ args = addStateToken(sdk, args);
710
+ return post(sdk, sdk.getIssuerOrigin() + '/api/v1/authn/introspect', args, {
711
+ withCredentials: true
712
+ });
713
+ }
714
+ function transactionExists(sdk) {
715
+ return !!sdk.tx.exists._get(STATE_TOKEN_KEY_NAME);
716
+ }
717
+ function postToTransaction(sdk, url, args, options) {
718
+ options = _Object$assign({
719
+ withCredentials: true
720
+ }, options);
721
+ return post(sdk, url, args, options).then(function (res) {
722
+ return sdk.tx.createTransaction(res);
723
+ });
724
+ }
725
+
669
726
  function getPollFn(sdk, res, ref) {
670
727
  return function (options) {
671
728
  var delay$1;
@@ -729,7 +786,7 @@ function getPollFn(sdk, res, ref) {
729
786
  return delay(delay$1).then(recursivePoll);
730
787
  } else {
731
788
  ref.isPolling = false;
732
- return new AuthTransaction(sdk, pollRes);
789
+ return sdk.tx.createTransaction(pollRes);
733
790
  }
734
791
  }).catch(function (err) {
735
792
  if (err.xhr && (err.xhr.status === 0 || err.xhr.status === 429) && retryCount <= 4) {
@@ -762,7 +819,7 @@ var AuthTransaction = function AuthTransaction(sdk) {
762
819
  delete this.stateToken;
763
820
  if (res.status === 'RECOVERY_CHALLENGE' && !res._links) {
764
821
  this.cancel = function () {
765
- return _Promise.resolve(new AuthTransaction(sdk));
822
+ return _Promise.resolve(sdk.tx.createTransaction());
766
823
  };
767
824
  }
768
825
  }
@@ -893,60 +950,6 @@ function flattenEmbedded(sdk, res, obj, ref) {
893
950
  return obj;
894
951
  }
895
952
 
896
- function transactionStatus(sdk, args) {
897
- args = addStateToken(sdk, args);
898
- return post(sdk, sdk.getIssuerOrigin() + '/api/v1/authn', args, {
899
- withCredentials: true
900
- });
901
- }
902
- function resumeTransaction(sdk, args) {
903
- if (!args || !args.stateToken) {
904
- var stateToken = sdk.tx.exists._get(STATE_TOKEN_KEY_NAME);
905
- if (stateToken) {
906
- args = {
907
- stateToken: stateToken
908
- };
909
- } else {
910
- return _Promise.reject(new AuthSdkError('No transaction to resume'));
911
- }
912
- }
913
- return sdk.tx.status(args).then(function (res) {
914
- return new AuthTransaction(sdk, res);
915
- });
916
- }
917
- function introspectAuthn(sdk, args) {
918
- if (!args || !args.stateToken) {
919
- var stateToken = sdk.tx.exists._get(STATE_TOKEN_KEY_NAME);
920
- if (stateToken) {
921
- args = {
922
- stateToken: stateToken
923
- };
924
- } else {
925
- return _Promise.reject(new AuthSdkError('No transaction to evaluate'));
926
- }
927
- }
928
- return transactionStep(sdk, args).then(function (res) {
929
- return new AuthTransaction(sdk, res);
930
- });
931
- }
932
- function transactionStep(sdk, args) {
933
- args = addStateToken(sdk, args);
934
- return post(sdk, sdk.getIssuerOrigin() + '/api/v1/authn/introspect', args, {
935
- withCredentials: true
936
- });
937
- }
938
- function transactionExists(sdk) {
939
- return !!sdk.tx.exists._get(STATE_TOKEN_KEY_NAME);
940
- }
941
- function postToTransaction(sdk, url, args, options) {
942
- options = _Object$assign({
943
- withCredentials: true
944
- }, options);
945
- return post(sdk, url, args, options).then(function (res) {
946
- return new AuthTransaction(sdk, res);
947
- });
948
- }
949
-
950
953
  function dec2hex(dec) {
951
954
  return ('0' + dec.toString(16)).substr(-2);
952
955
  }
@@ -1378,6 +1381,9 @@ function isAuthorizationCodeError(sdk, error) {
1378
1381
  var responseJSON = errorResponse === null || errorResponse === void 0 ? void 0 : errorResponse.responseJSON;
1379
1382
  return sdk.options.pkce && (responseJSON === null || responseJSON === void 0 ? void 0 : responseJSON.error) === 'invalid_grant';
1380
1383
  }
1384
+ function isRefreshTokenInvalidError(error) {
1385
+ return isOAuthError(error) && error.errorCode === 'invalid_grant' && error.errorSummary === 'The refresh token is invalid or expired.';
1386
+ }
1381
1387
 
1382
1388
  function hasTokensInHash(hash) {
1383
1389
  return /((id|access)_token=)/i.test(hash);
@@ -1820,47 +1826,6 @@ function _revokeToken() {
1820
1826
  return _revokeToken.apply(this, arguments);
1821
1827
  }
1822
1828
 
1823
- function exchangeCodeForTokens(sdk, tokenParams, urls) {
1824
- urls = urls || getOAuthUrls(sdk, tokenParams);
1825
- tokenParams = _Object$assign({}, getDefaultTokenParams(sdk), clone(tokenParams));
1826
- var _tokenParams = tokenParams,
1827
- authorizationCode = _tokenParams.authorizationCode,
1828
- interactionCode = _tokenParams.interactionCode,
1829
- codeVerifier = _tokenParams.codeVerifier,
1830
- clientId = _tokenParams.clientId,
1831
- redirectUri = _tokenParams.redirectUri,
1832
- scopes = _tokenParams.scopes,
1833
- ignoreSignature = _tokenParams.ignoreSignature,
1834
- state = _tokenParams.state;
1835
- var getTokenOptions = {
1836
- clientId: clientId,
1837
- redirectUri: redirectUri,
1838
- authorizationCode: authorizationCode,
1839
- interactionCode: interactionCode,
1840
- codeVerifier: codeVerifier
1841
- };
1842
- return postToTokenEndpoint(sdk, getTokenOptions, urls).then(function (response) {
1843
- var responseType = ['token'];
1844
- if (_indexOfInstanceProperty(scopes).call(scopes, 'openid') !== -1) {
1845
- responseType.push('id_token');
1846
- }
1847
- var handleResponseOptions = {
1848
- clientId: clientId,
1849
- redirectUri: redirectUri,
1850
- scopes: scopes,
1851
- responseType: responseType,
1852
- ignoreSignature: ignoreSignature
1853
- };
1854
- return handleOAuthResponse(sdk, handleResponseOptions, response, urls).then(function (response) {
1855
- response.code = authorizationCode;
1856
- response.state = state;
1857
- return response;
1858
- });
1859
- }).finally(function () {
1860
- sdk.transactionManager.clear();
1861
- });
1862
- }
1863
-
1864
1829
  function verifyToken(_x, _x2, _x3) {
1865
1830
  return _verifyToken.apply(this, arguments);
1866
1831
  }
@@ -1959,7 +1924,7 @@ function _handleOAuthResponse() {
1959
1924
  _context.next = 3;
1960
1925
  break;
1961
1926
  }
1962
- return _context.abrupt("return", exchangeCodeForTokens(sdk, _Object$assign({}, tokenParams, {
1927
+ return _context.abrupt("return", sdk.token.exchangeCodeForTokens(_Object$assign({}, tokenParams, {
1963
1928
  authorizationCode: res.code,
1964
1929
  interactionCode: res.interaction_code
1965
1930
  }), urls));
@@ -2175,17 +2140,18 @@ function _renewTokensWithRefresh() {
2175
2140
  }
2176
2141
  throw new AuthSdkError('A clientId must be specified in the OktaAuth constructor to renew tokens');
2177
2142
  case 3:
2143
+ _context.prev = 3;
2178
2144
  renewTokenParams = _Object$assign({}, tokenParams, {
2179
2145
  clientId: clientId
2180
2146
  });
2181
- _context.next = 6;
2147
+ _context.next = 7;
2182
2148
  return postRefreshToken(sdk, renewTokenParams, refreshTokenObject);
2183
- case 6:
2149
+ case 7:
2184
2150
  tokenResponse = _context.sent;
2185
2151
  urls = getOAuthUrls(sdk, tokenParams);
2186
- _context.next = 10;
2152
+ _context.next = 11;
2187
2153
  return handleOAuthResponse(sdk, renewTokenParams, tokenResponse, urls);
2188
- case 10:
2154
+ case 11:
2189
2155
  _yield$handleOAuthRes = _context.sent;
2190
2156
  tokens = _yield$handleOAuthRes.tokens;
2191
2157
  refreshToken = tokens.refreshToken;
@@ -2193,12 +2159,19 @@ function _renewTokensWithRefresh() {
2193
2159
  sdk.tokenManager.updateRefreshToken(refreshToken);
2194
2160
  }
2195
2161
  return _context.abrupt("return", tokens);
2196
- case 15:
2162
+ case 18:
2163
+ _context.prev = 18;
2164
+ _context.t0 = _context["catch"](3);
2165
+ if (isRefreshTokenInvalidError(_context.t0)) {
2166
+ sdk.tokenManager.removeRefreshToken();
2167
+ }
2168
+ throw _context.t0;
2169
+ case 22:
2197
2170
  case "end":
2198
2171
  return _context.stop();
2199
2172
  }
2200
2173
  }
2201
- }, _callee);
2174
+ }, _callee, null, [[3, 18]]);
2202
2175
  }));
2203
2176
  return _renewTokensWithRefresh.apply(this, arguments);
2204
2177
  }
@@ -2412,6 +2385,47 @@ function _getUserInfo() {
2412
2385
  return _getUserInfo.apply(this, arguments);
2413
2386
  }
2414
2387
 
2388
+ function exchangeCodeForTokens(sdk, tokenParams, urls) {
2389
+ urls = urls || getOAuthUrls(sdk, tokenParams);
2390
+ tokenParams = _Object$assign({}, getDefaultTokenParams(sdk), clone(tokenParams));
2391
+ var _tokenParams = tokenParams,
2392
+ authorizationCode = _tokenParams.authorizationCode,
2393
+ interactionCode = _tokenParams.interactionCode,
2394
+ codeVerifier = _tokenParams.codeVerifier,
2395
+ clientId = _tokenParams.clientId,
2396
+ redirectUri = _tokenParams.redirectUri,
2397
+ scopes = _tokenParams.scopes,
2398
+ ignoreSignature = _tokenParams.ignoreSignature,
2399
+ state = _tokenParams.state;
2400
+ var getTokenOptions = {
2401
+ clientId: clientId,
2402
+ redirectUri: redirectUri,
2403
+ authorizationCode: authorizationCode,
2404
+ interactionCode: interactionCode,
2405
+ codeVerifier: codeVerifier
2406
+ };
2407
+ return postToTokenEndpoint(sdk, getTokenOptions, urls).then(function (response) {
2408
+ var responseType = ['token'];
2409
+ if (_indexOfInstanceProperty(scopes).call(scopes, 'openid') !== -1) {
2410
+ responseType.push('id_token');
2411
+ }
2412
+ var handleResponseOptions = {
2413
+ clientId: clientId,
2414
+ redirectUri: redirectUri,
2415
+ scopes: scopes,
2416
+ responseType: responseType,
2417
+ ignoreSignature: ignoreSignature
2418
+ };
2419
+ return handleOAuthResponse(sdk, handleResponseOptions, response, urls).then(function (response) {
2420
+ response.code = authorizationCode;
2421
+ response.state = state;
2422
+ return response;
2423
+ });
2424
+ }).finally(function () {
2425
+ sdk.transactionManager.clear();
2426
+ });
2427
+ }
2428
+
2415
2429
  function getWithPopup(sdk, options) {
2416
2430
  if (arguments.length > 2) {
2417
2431
  return _Promise.reject(new AuthSdkError('As of version 3.0, "getWithPopup" takes only a single set of options'));
@@ -3317,6 +3331,12 @@ var TokenManager = function () {
3317
3331
  tokenStorage[key] = token;
3318
3332
  this.storage.setStorage(tokenStorage);
3319
3333
  }
3334
+ }, {
3335
+ key: "removeRefreshToken",
3336
+ value: function removeRefreshToken() {
3337
+ var key = this.getStorageKeyByType('refreshToken') || REFRESH_TOKEN_STORAGE_KEY;
3338
+ this.remove(key);
3339
+ }
3320
3340
  }, {
3321
3341
  key: "addPendingRemoveFlags",
3322
3342
  value: function addPendingRemoveFlags() {
@@ -3469,7 +3489,7 @@ var SyncStorageService = function () {
3469
3489
  }();
3470
3490
 
3471
3491
  function _createForOfIteratorHelper$7(o, allowArrayLike) { var it = typeof _Symbol !== "undefined" && _getIteratorMethod(o) || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$7(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
3472
- function _unsupportedIterableToArray$7(o, minLen) { var _context4; if (!o) return; if (typeof o === "string") return _arrayLikeToArray$7(o, minLen); var n = _sliceInstanceProperty(_context4 = Object.prototype.toString.call(o)).call(_context4, 8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return _Array$from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$7(o, minLen); }
3492
+ function _unsupportedIterableToArray$7(o, minLen) { var _context8; if (!o) return; if (typeof o === "string") return _arrayLikeToArray$7(o, minLen); var n = _sliceInstanceProperty(_context8 = Object.prototype.toString.call(o)).call(_context8, 8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return _Array$from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$7(o, minLen); }
3473
3493
  function _arrayLikeToArray$7(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
3474
3494
  var ServiceManager = function () {
3475
3495
  function ServiceManager(sdk) {
@@ -3529,23 +3549,64 @@ var ServiceManager = function () {
3529
3549
  }
3530
3550
  }, {
3531
3551
  key: "start",
3532
- value: function start() {
3533
- if (this.started) {
3534
- return;
3535
- }
3536
- if (this.isLeaderRequired()) {
3537
- this.startElector();
3552
+ value: function () {
3553
+ var _start = _asyncToGenerator( _regeneratorRuntime.mark(function _callee() {
3554
+ return _regeneratorRuntime.wrap(function _callee$(_context2) {
3555
+ while (1) {
3556
+ switch (_context2.prev = _context2.next) {
3557
+ case 0:
3558
+ if (!this.started) {
3559
+ _context2.next = 2;
3560
+ break;
3561
+ }
3562
+ return _context2.abrupt("return");
3563
+ case 2:
3564
+ if (!this.isLeaderRequired()) {
3565
+ _context2.next = 5;
3566
+ break;
3567
+ }
3568
+ _context2.next = 5;
3569
+ return this.startElector();
3570
+ case 5:
3571
+ this.startServices();
3572
+ this.started = true;
3573
+ case 7:
3574
+ case "end":
3575
+ return _context2.stop();
3576
+ }
3577
+ }
3578
+ }, _callee, this);
3579
+ }));
3580
+ function start() {
3581
+ return _start.apply(this, arguments);
3538
3582
  }
3539
- this.startServices();
3540
- this.started = true;
3541
- }
3583
+ return start;
3584
+ }()
3542
3585
  }, {
3543
3586
  key: "stop",
3544
- value: function stop() {
3545
- this.stopElector();
3546
- this.stopServices();
3547
- this.started = false;
3548
- }
3587
+ value: function () {
3588
+ var _stop = _asyncToGenerator( _regeneratorRuntime.mark(function _callee2() {
3589
+ return _regeneratorRuntime.wrap(function _callee2$(_context3) {
3590
+ while (1) {
3591
+ switch (_context3.prev = _context3.next) {
3592
+ case 0:
3593
+ _context3.next = 2;
3594
+ return this.stopElector();
3595
+ case 2:
3596
+ this.stopServices();
3597
+ this.started = false;
3598
+ case 4:
3599
+ case "end":
3600
+ return _context3.stop();
3601
+ }
3602
+ }
3603
+ }, _callee2, this);
3604
+ }));
3605
+ function stop() {
3606
+ return _stop.apply(this, arguments);
3607
+ }
3608
+ return stop;
3609
+ }()
3549
3610
  }, {
3550
3611
  key: "getService",
3551
3612
  value: function getService(name) {
@@ -3554,8 +3615,8 @@ var ServiceManager = function () {
3554
3615
  }, {
3555
3616
  key: "startServices",
3556
3617
  value: function startServices() {
3557
- var _context2;
3558
- var _iterator = _createForOfIteratorHelper$7(_valuesInstanceProperty(_context2 = this.services).call(_context2)),
3618
+ var _context4;
3619
+ var _iterator = _createForOfIteratorHelper$7(_valuesInstanceProperty(_context4 = this.services).call(_context4)),
3559
3620
  _step;
3560
3621
  try {
3561
3622
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
@@ -3574,8 +3635,8 @@ var ServiceManager = function () {
3574
3635
  }, {
3575
3636
  key: "stopServices",
3576
3637
  value: function stopServices() {
3577
- var _context3;
3578
- var _iterator2 = _createForOfIteratorHelper$7(_valuesInstanceProperty(_context3 = this.services).call(_context3)),
3638
+ var _context5;
3639
+ var _iterator2 = _createForOfIteratorHelper$7(_valuesInstanceProperty(_context5 = this.services).call(_context5)),
3579
3640
  _step2;
3580
3641
  try {
3581
3642
  for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
@@ -3590,31 +3651,72 @@ var ServiceManager = function () {
3590
3651
  }
3591
3652
  }, {
3592
3653
  key: "startElector",
3593
- value: function startElector() {
3594
- this.stopElector();
3595
- if (ServiceManager.canUseLeaderElection()) {
3596
- if (!this.channel) {
3597
- var broadcastChannelName = this.options.broadcastChannelName;
3598
- this.channel = new BroadcastChannel(broadcastChannelName);
3599
- }
3600
- if (!this.elector) {
3601
- this.elector = createLeaderElection(this.channel);
3602
- this.elector.onduplicate = this.onLeaderDuplicate;
3603
- this.elector.awaitLeadership().then(this.onLeader);
3604
- }
3654
+ value: function () {
3655
+ var _startElector = _asyncToGenerator( _regeneratorRuntime.mark(function _callee3() {
3656
+ var broadcastChannelName;
3657
+ return _regeneratorRuntime.wrap(function _callee3$(_context6) {
3658
+ while (1) {
3659
+ switch (_context6.prev = _context6.next) {
3660
+ case 0:
3661
+ _context6.next = 2;
3662
+ return this.stopElector();
3663
+ case 2:
3664
+ if (ServiceManager.canUseLeaderElection()) {
3665
+ if (!this.channel) {
3666
+ broadcastChannelName = this.options.broadcastChannelName;
3667
+ this.channel = new BroadcastChannel(broadcastChannelName);
3668
+ }
3669
+ if (!this.elector) {
3670
+ this.elector = createLeaderElection(this.channel);
3671
+ this.elector.onduplicate = this.onLeaderDuplicate;
3672
+ this.elector.awaitLeadership().then(this.onLeader);
3673
+ }
3674
+ }
3675
+ case 3:
3676
+ case "end":
3677
+ return _context6.stop();
3678
+ }
3679
+ }
3680
+ }, _callee3, this);
3681
+ }));
3682
+ function startElector() {
3683
+ return _startElector.apply(this, arguments);
3605
3684
  }
3606
- }
3685
+ return startElector;
3686
+ }()
3607
3687
  }, {
3608
3688
  key: "stopElector",
3609
- value: function stopElector() {
3610
- var _a, _b;
3611
- if (this.elector) {
3612
- (_a = this.elector) === null || _a === void 0 ? void 0 : _a.die();
3613
- this.elector = undefined;
3614
- (_b = this.channel) === null || _b === void 0 ? void 0 : _b.close();
3615
- this.channel = undefined;
3689
+ value: function () {
3690
+ var _stopElector = _asyncToGenerator( _regeneratorRuntime.mark(function _callee4() {
3691
+ var _a, _b;
3692
+ return _regeneratorRuntime.wrap(function _callee4$(_context7) {
3693
+ while (1) {
3694
+ switch (_context7.prev = _context7.next) {
3695
+ case 0:
3696
+ if (!this.elector) {
3697
+ _context7.next = 7;
3698
+ break;
3699
+ }
3700
+ _context7.next = 3;
3701
+ return (_a = this.elector) === null || _a === void 0 ? void 0 : _a.die();
3702
+ case 3:
3703
+ this.elector = undefined;
3704
+ _context7.next = 6;
3705
+ return (_b = this.channel) === null || _b === void 0 ? void 0 : _b.close();
3706
+ case 6:
3707
+ this.channel = undefined;
3708
+ case 7:
3709
+ case "end":
3710
+ return _context7.stop();
3711
+ }
3712
+ }
3713
+ }, _callee4, this);
3714
+ }));
3715
+ function stopElector() {
3716
+ return _stopElector.apply(this, arguments);
3616
3717
  }
3617
- }
3718
+ return stopElector;
3719
+ }()
3618
3720
  }, {
3619
3721
  key: "createService",
3620
3722
  value: function createService(name) {
@@ -4658,7 +4760,7 @@ function mergeOptions(options, args) {
4658
4760
  }
4659
4761
  function buildOptions() {
4660
4762
  var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4661
- var _a;
4763
+ var _a, _b;
4662
4764
  assertValidConfig(args);
4663
4765
  args = mergeOptions(getDefaultOptions(), args);
4664
4766
  return removeNils({
@@ -4693,7 +4795,8 @@ function buildOptions() {
4693
4795
  recoveryToken: args.recoveryToken,
4694
4796
  activationToken: args.activationToken,
4695
4797
  idx: {
4696
- useGenericRemediator: !!((_a = args.idx) === null || _a === void 0 ? void 0 : _a.useGenericRemediator)
4798
+ useGenericRemediator: !!((_a = args.idx) === null || _a === void 0 ? void 0 : _a.useGenericRemediator),
4799
+ exchangeCodeForTokens: ((_b = args.idx) === null || _b === void 0 ? void 0 : _b.exchangeCodeForTokens) !== false
4697
4800
  },
4698
4801
  ignoreSignature: !!args.ignoreSignature,
4699
4802
  clientSecret: args.clientSecret
@@ -5061,7 +5164,7 @@ var generateDirectFetch = function generateDirectFetch(authClient, _ref) {
5061
5164
  });
5062
5165
  case 6:
5063
5166
  response = _context.sent;
5064
- return _context.abrupt("return", makeIdxState$1(authClient, _Object$assign({}, response), toPersist, true));
5167
+ return _context.abrupt("return", authClient.idx.makeIdxResponse(_Object$assign({}, response), toPersist, true));
5065
5168
  case 10:
5066
5169
  _context.prev = 10;
5067
5170
  _context.t0 = _context["catch"](3);
@@ -5074,7 +5177,7 @@ var generateDirectFetch = function generateDirectFetch(authClient, _ref) {
5074
5177
  _response = _context.t0.xhr;
5075
5178
  payload = _response.responseJSON || JSON.parse(_response.responseText);
5076
5179
  wwwAuthHeader = _response.headers['WWW-Authenticate'] || _response.headers['www-authenticate'];
5077
- idxResponse = makeIdxState$1(authClient, _Object$assign({}, payload), toPersist, false);
5180
+ idxResponse = authClient.idx.makeIdxResponse(_Object$assign({}, payload), toPersist, false);
5078
5181
  if (_response.status === 401 && wwwAuthHeader === 'Oktadevicejwt realm="Okta Device"') {
5079
5182
  idxResponse.stepUp = true;
5080
5183
  }
@@ -5301,9 +5404,7 @@ function validateVersionConfig(version) {
5301
5404
  }
5302
5405
  parsersForVersion(version);
5303
5406
  }
5304
- function makeIdxState(authClient, rawIdxResponse) {
5305
- var toPersist = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
5306
- var requestDidSucceed = arguments.length > 3 ? arguments[3] : undefined;
5407
+ function makeIdxState(authClient, rawIdxResponse, toPersist, requestDidSucceed) {
5307
5408
  var _a;
5308
5409
  var version = (_a = rawIdxResponse === null || rawIdxResponse === void 0 ? void 0 : rawIdxResponse.version) !== null && _a !== void 0 ? _a : IDX_API_VERSION;
5309
5410
  validateVersionConfig(version);
@@ -7156,52 +7257,6 @@ function hasValidInputValue(input, values) {
7156
7257
  return fn(input, values, false);
7157
7258
  }
7158
7259
 
7159
- function canProceed(authClient) {
7160
- var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
7161
- var meta = getSavedTransactionMeta(authClient, options);
7162
- return !!(meta || options.stateHandle);
7163
- }
7164
- function proceed(_x) {
7165
- return _proceed.apply(this, arguments);
7166
- }
7167
- function _proceed() {
7168
- _proceed = _asyncToGenerator( _regeneratorRuntime.mark(function _callee(authClient) {
7169
- var options,
7170
- flow,
7171
- state,
7172
- meta,
7173
- _args = arguments;
7174
- return _regeneratorRuntime.wrap(function _callee$(_context) {
7175
- while (1) {
7176
- switch (_context.prev = _context.next) {
7177
- case 0:
7178
- options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {};
7179
- if (canProceed(authClient, options)) {
7180
- _context.next = 3;
7181
- break;
7182
- }
7183
- throw new AuthSdkError('Unable to proceed: saved transaction could not be loaded');
7184
- case 3:
7185
- flow = options.flow, state = options.state;
7186
- if (!flow) {
7187
- meta = getSavedTransactionMeta(authClient, {
7188
- state: state
7189
- });
7190
- flow = meta === null || meta === void 0 ? void 0 : meta.flow;
7191
- }
7192
- return _context.abrupt("return", run(authClient, _Object$assign(_Object$assign({}, options), {
7193
- flow: flow
7194
- })));
7195
- case 6:
7196
- case "end":
7197
- return _context.stop();
7198
- }
7199
- }
7200
- }, _callee);
7201
- }));
7202
- return _proceed.apply(this, arguments);
7203
- }
7204
-
7205
7260
  function _createSuper$1(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
7206
7261
  function _isNativeReflectConstruct$1() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
7207
7262
  var GenericRemediator = function (_Remediator) {
@@ -7260,7 +7315,7 @@ var GenericRemediator = function (_Remediator) {
7260
7315
  while (1) {
7261
7316
  switch (_context3.prev = _context3.next) {
7262
7317
  case 0:
7263
- return _context3.abrupt("return", proceed(authClient, _Object$assign({
7318
+ return _context3.abrupt("return", authClient.idx.proceed(_Object$assign({
7264
7319
  step: name
7265
7320
  }, params)));
7266
7321
  case 1:
@@ -7477,7 +7532,7 @@ function getAvailableSteps(authClient, idxResponse, useGenericRemediator) {
7477
7532
  while (1) {
7478
7533
  switch (_context10.prev = _context10.next) {
7479
7534
  case 0:
7480
- return _context10.abrupt("return", proceed(authClient, {
7535
+ return _context10.abrupt("return", authClient.idx.proceed({
7481
7536
  actions: [{
7482
7537
  name: name,
7483
7538
  params: params
@@ -7863,7 +7918,7 @@ function _remediate() {
7863
7918
  options = _Object$assign(_Object$assign({}, options), {
7864
7919
  step: undefined
7865
7920
  });
7866
- if (!(options.useGenericRemediator && !idxResponse.interactionCode)) {
7921
+ if (!(options.useGenericRemediator && !idxResponse.interactionCode && !isTerminalResponse(idxResponse))) {
7867
7922
  _context4.next = 65;
7868
7923
  break;
7869
7924
  }
@@ -7980,7 +8035,7 @@ function getFlowSpecification(oktaAuth) {
7980
8035
  }
7981
8036
 
7982
8037
  function initializeValues(options) {
7983
- var knownOptions = ['flow', 'remediators', 'actions', 'withCredentials', 'step', 'shouldProceedWithEmailAuthenticator'];
8038
+ var knownOptions = ['flow', 'remediators', 'actions', 'withCredentials', 'step', 'useGenericRemediator', 'exchangeCodeForTokens', 'shouldProceedWithEmailAuthenticator'];
7984
8039
  var values = _Object$assign({}, options);
7985
8040
  knownOptions.forEach(function (option) {
7986
8041
  delete values[option];
@@ -7988,13 +8043,13 @@ function initializeValues(options) {
7988
8043
  return values;
7989
8044
  }
7990
8045
  function initializeData(authClient, data) {
7991
- var _a;
7992
8046
  var options = data.options;
7993
- var flow = options.flow,
7994
- withCredentials = options.withCredentials,
7995
- remediators = options.remediators,
7996
- actions = options.actions,
7997
- useGenericRemediator = options.useGenericRemediator;
8047
+ options = _Object$assign(_Object$assign({}, authClient.options.idx), options);
8048
+ var _options = options,
8049
+ flow = _options.flow,
8050
+ withCredentials = _options.withCredentials,
8051
+ remediators = _options.remediators,
8052
+ actions = _options.actions;
7998
8053
  var status = IdxStatus.PENDING;
7999
8054
  flow = flow || authClient.idx.getFlow() || 'default';
8000
8055
  if (flow) {
@@ -8004,14 +8059,12 @@ function initializeData(authClient, data) {
8004
8059
  remediators = remediators || flowSpec.remediators;
8005
8060
  actions = actions || flowSpec.actions;
8006
8061
  }
8007
- useGenericRemediator = useGenericRemediator || ((_a = authClient.options.idx) === null || _a === void 0 ? void 0 : _a.useGenericRemediator) || false;
8008
8062
  return _Object$assign(_Object$assign({}, data), {
8009
8063
  options: _Object$assign(_Object$assign({}, options), {
8010
8064
  flow: flow,
8011
8065
  withCredentials: withCredentials,
8012
8066
  remediators: remediators,
8013
- actions: actions,
8014
- useGenericRemediator: useGenericRemediator
8067
+ actions: actions
8015
8068
  }),
8016
8069
  status: status
8017
8070
  });
@@ -8520,6 +8573,52 @@ function _handleEmailVerifyCallback() {
8520
8573
  return _handleEmailVerifyCallback.apply(this, arguments);
8521
8574
  }
8522
8575
 
8576
+ function canProceed(authClient) {
8577
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
8578
+ var meta = getSavedTransactionMeta(authClient, options);
8579
+ return !!(meta || options.stateHandle);
8580
+ }
8581
+ function proceed(_x) {
8582
+ return _proceed.apply(this, arguments);
8583
+ }
8584
+ function _proceed() {
8585
+ _proceed = _asyncToGenerator( _regeneratorRuntime.mark(function _callee(authClient) {
8586
+ var options,
8587
+ flow,
8588
+ state,
8589
+ meta,
8590
+ _args = arguments;
8591
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
8592
+ while (1) {
8593
+ switch (_context.prev = _context.next) {
8594
+ case 0:
8595
+ options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {};
8596
+ if (canProceed(authClient, options)) {
8597
+ _context.next = 3;
8598
+ break;
8599
+ }
8600
+ throw new AuthSdkError('Unable to proceed: saved transaction could not be loaded');
8601
+ case 3:
8602
+ flow = options.flow, state = options.state;
8603
+ if (!flow) {
8604
+ meta = getSavedTransactionMeta(authClient, {
8605
+ state: state
8606
+ });
8607
+ flow = meta === null || meta === void 0 ? void 0 : meta.flow;
8608
+ }
8609
+ return _context.abrupt("return", run(authClient, _Object$assign(_Object$assign({}, options), {
8610
+ flow: flow
8611
+ })));
8612
+ case 6:
8613
+ case "end":
8614
+ return _context.stop();
8615
+ }
8616
+ }
8617
+ }, _callee);
8618
+ }));
8619
+ return _proceed.apply(this, arguments);
8620
+ }
8621
+
8523
8622
  function poll(_x) {
8524
8623
  return _poll.apply(this, arguments);
8525
8624
  }
@@ -8808,7 +8907,7 @@ function _unlockAccount() {
8808
8907
  var OktaUserAgent = function () {
8809
8908
  function OktaUserAgent() {
8810
8909
  _classCallCheck(this, OktaUserAgent);
8811
- this.environments = ["okta-auth-js/".concat("6.5.3")];
8910
+ this.environments = ["okta-auth-js/".concat("6.6.0")];
8812
8911
  }
8813
8912
  _createClass(OktaUserAgent, [{
8814
8913
  key: "addEnvironment",
@@ -8826,7 +8925,7 @@ var OktaUserAgent = function () {
8826
8925
  }, {
8827
8926
  key: "getVersion",
8828
8927
  value: function getVersion() {
8829
- return "6.5.3";
8928
+ return "6.6.0";
8830
8929
  }
8831
8930
  }, {
8832
8931
  key: "maybeAddNodeEnvironment",
@@ -8861,7 +8960,13 @@ var OktaAuth = function () {
8861
8960
  return storage.get(name);
8862
8961
  }
8863
8962
  }),
8864
- introspect: introspectAuthn.bind(null, this)
8963
+ introspect: introspectAuthn.bind(null, this),
8964
+ createTransaction: function createTransaction(res) {
8965
+ return new AuthTransaction(_this, res);
8966
+ },
8967
+ postToTransaction: function postToTransaction$1(url, args, options) {
8968
+ return postToTransaction(_this, url, args, options);
8969
+ }
8865
8970
  };
8866
8971
  this.pkce = {
8867
8972
  DEFAULT_CODE_CHALLENGE_METHOD: PKCE.DEFAULT_CODE_CHALLENGE_METHOD,
@@ -8927,24 +9032,21 @@ var OktaAuth = function () {
8927
9032
  renew: renewToken.bind(null, this),
8928
9033
  renewTokensWithRefresh: renewTokensWithRefresh.bind(null, this),
8929
9034
  renewTokens: renewTokens.bind(null, this),
8930
- getUserInfo: getUserInfo.bind(null, this),
9035
+ getUserInfo: function getUserInfo$1(accessTokenObject, idTokenObject) {
9036
+ return getUserInfo(_this, accessTokenObject, idTokenObject);
9037
+ },
8931
9038
  verify: verifyToken.bind(null, this),
8932
9039
  isLoginRedirect: isLoginRedirect.bind(null, this)
8933
9040
  };
8934
- var syncMethods = [
8935
- 'decode', 'isLoginRedirect',
8936
- 'getWithRedirect', 'parseFromUrl'];
8937
- _Object$keys(this.token).forEach(function (key) {
8938
- if (_indexOfInstanceProperty(syncMethods).call(syncMethods, key) >= 0) {
8939
- return;
8940
- }
8941
- var method = _this.token[key];
8942
- _this.token[key] = PromiseQueue.prototype.push.bind(_this._tokenQueue, method, null);
9041
+ var toWrap = ['getWithoutPrompt', 'getWithPopup', 'revoke', 'renew', 'renewTokensWithRefresh', 'renewTokens'];
9042
+ toWrap.forEach(function (key) {
9043
+ _this.token[key] = useQueue(_this.token[key]);
8943
9044
  });
8944
9045
  var boundStartTransaction = startTransaction.bind(null, this);
8945
9046
  this.idx = {
8946
9047
  interact: interact.bind(null, this),
8947
9048
  introspect: introspect.bind(null, this),
9049
+ makeIdxResponse: makeIdxState.bind(null, this),
8948
9050
  authenticate: authenticate.bind(null, this),
8949
9051
  register: register.bind(null, this),
8950
9052
  start: boundStartTransaction,
@@ -8986,19 +9088,53 @@ var OktaAuth = function () {
8986
9088
  }
8987
9089
  _createClass(OktaAuth, [{
8988
9090
  key: "start",
8989
- value: function start() {
8990
- this.tokenManager.start();
8991
- if (!this.token.isLoginRedirect()) {
8992
- this.authStateManager.updateAuthState();
9091
+ value: function () {
9092
+ var _start = _asyncToGenerator( _regeneratorRuntime.mark(function _callee() {
9093
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
9094
+ while (1) {
9095
+ switch (_context.prev = _context.next) {
9096
+ case 0:
9097
+ this.tokenManager.start();
9098
+ if (!this.token.isLoginRedirect()) {
9099
+ this.authStateManager.updateAuthState();
9100
+ }
9101
+ _context.next = 4;
9102
+ return this.serviceManager.start();
9103
+ case 4:
9104
+ case "end":
9105
+ return _context.stop();
9106
+ }
9107
+ }
9108
+ }, _callee, this);
9109
+ }));
9110
+ function start() {
9111
+ return _start.apply(this, arguments);
8993
9112
  }
8994
- this.serviceManager.start();
8995
- }
9113
+ return start;
9114
+ }()
8996
9115
  }, {
8997
9116
  key: "stop",
8998
- value: function stop() {
8999
- this.tokenManager.stop();
9000
- this.serviceManager.stop();
9001
- }
9117
+ value: function () {
9118
+ var _stop = _asyncToGenerator( _regeneratorRuntime.mark(function _callee2() {
9119
+ return _regeneratorRuntime.wrap(function _callee2$(_context2) {
9120
+ while (1) {
9121
+ switch (_context2.prev = _context2.next) {
9122
+ case 0:
9123
+ this.tokenManager.stop();
9124
+ _context2.next = 3;
9125
+ return this.serviceManager.stop();
9126
+ case 3:
9127
+ case "end":
9128
+ return _context2.stop();
9129
+ }
9130
+ }
9131
+ }, _callee2, this);
9132
+ }));
9133
+ function stop() {
9134
+ return _stop.apply(this, arguments);
9135
+ }
9136
+ return stop;
9137
+ }()
9002
9138
  }, {
9003
9139
  key: "setHeaders",
9004
9140
  value: function setHeaders(headers) {
@@ -9007,18 +9143,18 @@ var OktaAuth = function () {
9007
9143
  }, {
9008
9144
  key: "signIn",
9009
9145
  value: function () {
9010
- var _signIn = _asyncToGenerator( _regeneratorRuntime.mark(function _callee(opts) {
9011
- return _regeneratorRuntime.wrap(function _callee$(_context) {
9146
+ var _signIn = _asyncToGenerator( _regeneratorRuntime.mark(function _callee3(opts) {
9147
+ return _regeneratorRuntime.wrap(function _callee3$(_context3) {
9012
9148
  while (1) {
9013
- switch (_context.prev = _context.next) {
9149
+ switch (_context3.prev = _context3.next) {
9014
9150
  case 0:
9015
- return _context.abrupt("return", this.signInWithCredentials(opts));
9151
+ return _context3.abrupt("return", this.signInWithCredentials(opts));
9016
9152
  case 1:
9017
9153
  case "end":
9018
- return _context.stop();
9154
+ return _context3.stop();
9019
9155
  }
9020
9156
  }
9021
- }, _callee, this);
9157
+ }, _callee3, this);
9022
9158
  }));
9023
9159
  function signIn(_x) {
9024
9160
  return _signIn.apply(this, arguments);
@@ -9028,12 +9164,12 @@ var OktaAuth = function () {
9028
9164
  }, {
9029
9165
  key: "signInWithCredentials",
9030
9166
  value: function () {
9031
- var _signInWithCredentials = _asyncToGenerator( _regeneratorRuntime.mark(function _callee2(opts) {
9167
+ var _signInWithCredentials = _asyncToGenerator( _regeneratorRuntime.mark(function _callee4(opts) {
9032
9168
  var _this2 = this;
9033
9169
  var _postToTransaction;
9034
- return _regeneratorRuntime.wrap(function _callee2$(_context2) {
9170
+ return _regeneratorRuntime.wrap(function _callee4$(_context4) {
9035
9171
  while (1) {
9036
- switch (_context2.prev = _context2.next) {
9172
+ switch (_context4.prev = _context4.next) {
9037
9173
  case 0:
9038
9174
  opts = clone(opts || {});
9039
9175
  _postToTransaction = function _postToTransaction(options) {
@@ -9041,12 +9177,12 @@ var OktaAuth = function () {
9041
9177
  return postToTransaction(_this2, '/api/v1/authn', opts, options);
9042
9178
  };
9043
9179
  if (opts.sendFingerprint) {
9044
- _context2.next = 4;
9180
+ _context4.next = 4;
9045
9181
  break;
9046
9182
  }
9047
- return _context2.abrupt("return", _postToTransaction());
9183
+ return _context4.abrupt("return", _postToTransaction());
9048
9184
  case 4:
9049
- return _context2.abrupt("return", this.fingerprint().then(function (fingerprint) {
9185
+ return _context4.abrupt("return", this.fingerprint().then(function (fingerprint) {
9050
9186
  return _postToTransaction({
9051
9187
  headers: {
9052
9188
  'X-Device-Fingerprint': fingerprint
@@ -9055,10 +9191,10 @@ var OktaAuth = function () {
9055
9191
  }));
9056
9192
  case 5:
9057
9193
  case "end":
9058
- return _context2.stop();
9194
+ return _context4.stop();
9059
9195
  }
9060
9196
  }
9061
- }, _callee2, this);
9197
+ }, _callee4, this);
9062
9198
  }));
9063
9199
  function signInWithCredentials(_x2) {
9064
9200
  return _signInWithCredentials.apply(this, arguments);
@@ -9068,44 +9204,44 @@ var OktaAuth = function () {
9068
9204
  }, {
9069
9205
  key: "signInWithRedirect",
9070
9206
  value: function () {
9071
- var _signInWithRedirect = _asyncToGenerator( _regeneratorRuntime.mark(function _callee3() {
9207
+ var _signInWithRedirect = _asyncToGenerator( _regeneratorRuntime.mark(function _callee5() {
9072
9208
  var opts,
9073
9209
  originalUri,
9074
9210
  additionalParams,
9075
9211
  params,
9076
- _args3 = arguments;
9077
- return _regeneratorRuntime.wrap(function _callee3$(_context3) {
9212
+ _args5 = arguments;
9213
+ return _regeneratorRuntime.wrap(function _callee5$(_context5) {
9078
9214
  while (1) {
9079
- switch (_context3.prev = _context3.next) {
9215
+ switch (_context5.prev = _context5.next) {
9080
9216
  case 0:
9081
- opts = _args3.length > 0 && _args3[0] !== undefined ? _args3[0] : {};
9217
+ opts = _args5.length > 0 && _args5[0] !== undefined ? _args5[0] : {};
9082
9218
  originalUri = opts.originalUri, additionalParams = __rest(opts, ["originalUri"]);
9083
9219
  if (!this._pending.handleLogin) {
9084
- _context3.next = 4;
9220
+ _context5.next = 4;
9085
9221
  break;
9086
9222
  }
9087
- return _context3.abrupt("return");
9223
+ return _context5.abrupt("return");
9088
9224
  case 4:
9089
9225
  this._pending.handleLogin = true;
9090
- _context3.prev = 5;
9226
+ _context5.prev = 5;
9091
9227
  if (originalUri) {
9092
9228
  this.setOriginalUri(originalUri);
9093
9229
  }
9094
9230
  params = _Object$assign({
9095
9231
  scopes: this.options.scopes || ['openid', 'email', 'profile']
9096
9232
  }, additionalParams);
9097
- _context3.next = 10;
9233
+ _context5.next = 10;
9098
9234
  return this.token.getWithRedirect(params);
9099
9235
  case 10:
9100
- _context3.prev = 10;
9236
+ _context5.prev = 10;
9101
9237
  this._pending.handleLogin = false;
9102
- return _context3.finish(10);
9238
+ return _context5.finish(10);
9103
9239
  case 13:
9104
9240
  case "end":
9105
- return _context3.stop();
9241
+ return _context5.stop();
9106
9242
  }
9107
9243
  }
9108
- }, _callee3, this, [[5,, 10, 13]]);
9244
+ }, _callee5, this, [[5,, 10, 13]]);
9109
9245
  }));
9110
9246
  function signInWithRedirect() {
9111
9247
  return _signInWithRedirect.apply(this, arguments);
@@ -9117,18 +9253,18 @@ var OktaAuth = function () {
9117
9253
  value: function closeSession() {
9118
9254
  var _this3 = this;
9119
9255
  return this.session.close()
9120
- .then( _asyncToGenerator( _regeneratorRuntime.mark(function _callee4() {
9121
- return _regeneratorRuntime.wrap(function _callee4$(_context4) {
9256
+ .then( _asyncToGenerator( _regeneratorRuntime.mark(function _callee6() {
9257
+ return _regeneratorRuntime.wrap(function _callee6$(_context6) {
9122
9258
  while (1) {
9123
- switch (_context4.prev = _context4.next) {
9259
+ switch (_context6.prev = _context6.next) {
9124
9260
  case 0:
9125
9261
  _this3.tokenManager.clear();
9126
9262
  case 1:
9127
9263
  case "end":
9128
- return _context4.stop();
9264
+ return _context6.stop();
9129
9265
  }
9130
9266
  }
9131
- }, _callee4);
9267
+ }, _callee6);
9132
9268
  }))).catch(function (e) {
9133
9269
  if (e.name === 'AuthApiError' && e.errorCode === 'E0000007') {
9134
9270
  return null;
@@ -9139,36 +9275,36 @@ var OktaAuth = function () {
9139
9275
  }, {
9140
9276
  key: "revokeAccessToken",
9141
9277
  value: function () {
9142
- var _revokeAccessToken = _asyncToGenerator( _regeneratorRuntime.mark(function _callee5(accessToken) {
9278
+ var _revokeAccessToken = _asyncToGenerator( _regeneratorRuntime.mark(function _callee7(accessToken) {
9143
9279
  var accessTokenKey;
9144
- return _regeneratorRuntime.wrap(function _callee5$(_context5) {
9280
+ return _regeneratorRuntime.wrap(function _callee7$(_context7) {
9145
9281
  while (1) {
9146
- switch (_context5.prev = _context5.next) {
9282
+ switch (_context7.prev = _context7.next) {
9147
9283
  case 0:
9148
9284
  if (accessToken) {
9149
- _context5.next = 6;
9285
+ _context7.next = 6;
9150
9286
  break;
9151
9287
  }
9152
- _context5.next = 3;
9288
+ _context7.next = 3;
9153
9289
  return this.tokenManager.getTokens();
9154
9290
  case 3:
9155
- accessToken = _context5.sent.accessToken;
9291
+ accessToken = _context7.sent.accessToken;
9156
9292
  accessTokenKey = this.tokenManager.getStorageKeyByType('accessToken');
9157
9293
  this.tokenManager.remove(accessTokenKey);
9158
9294
  case 6:
9159
9295
  if (accessToken) {
9160
- _context5.next = 8;
9296
+ _context7.next = 8;
9161
9297
  break;
9162
9298
  }
9163
- return _context5.abrupt("return", _Promise.resolve(null));
9299
+ return _context7.abrupt("return", _Promise.resolve(null));
9164
9300
  case 8:
9165
- return _context5.abrupt("return", this.token.revoke(accessToken));
9301
+ return _context7.abrupt("return", this.token.revoke(accessToken));
9166
9302
  case 9:
9167
9303
  case "end":
9168
- return _context5.stop();
9304
+ return _context7.stop();
9169
9305
  }
9170
9306
  }
9171
- }, _callee5, this);
9307
+ }, _callee7, this);
9172
9308
  }));
9173
9309
  function revokeAccessToken(_x3) {
9174
9310
  return _revokeAccessToken.apply(this, arguments);
@@ -9178,36 +9314,36 @@ var OktaAuth = function () {
9178
9314
  }, {
9179
9315
  key: "revokeRefreshToken",
9180
9316
  value: function () {
9181
- var _revokeRefreshToken = _asyncToGenerator( _regeneratorRuntime.mark(function _callee6(refreshToken) {
9317
+ var _revokeRefreshToken = _asyncToGenerator( _regeneratorRuntime.mark(function _callee8(refreshToken) {
9182
9318
  var refreshTokenKey;
9183
- return _regeneratorRuntime.wrap(function _callee6$(_context6) {
9319
+ return _regeneratorRuntime.wrap(function _callee8$(_context8) {
9184
9320
  while (1) {
9185
- switch (_context6.prev = _context6.next) {
9321
+ switch (_context8.prev = _context8.next) {
9186
9322
  case 0:
9187
9323
  if (refreshToken) {
9188
- _context6.next = 6;
9324
+ _context8.next = 6;
9189
9325
  break;
9190
9326
  }
9191
- _context6.next = 3;
9327
+ _context8.next = 3;
9192
9328
  return this.tokenManager.getTokens();
9193
9329
  case 3:
9194
- refreshToken = _context6.sent.refreshToken;
9330
+ refreshToken = _context8.sent.refreshToken;
9195
9331
  refreshTokenKey = this.tokenManager.getStorageKeyByType('refreshToken');
9196
9332
  this.tokenManager.remove(refreshTokenKey);
9197
9333
  case 6:
9198
9334
  if (refreshToken) {
9199
- _context6.next = 8;
9335
+ _context8.next = 8;
9200
9336
  break;
9201
9337
  }
9202
- return _context6.abrupt("return", _Promise.resolve(null));
9338
+ return _context8.abrupt("return", _Promise.resolve(null));
9203
9339
  case 8:
9204
- return _context6.abrupt("return", this.token.revoke(refreshToken));
9340
+ return _context8.abrupt("return", this.token.revoke(refreshToken));
9205
9341
  case 9:
9206
9342
  case "end":
9207
- return _context6.stop();
9343
+ return _context8.stop();
9208
9344
  }
9209
9345
  }
9210
- }, _callee6, this);
9346
+ }, _callee8, this);
9211
9347
  }));
9212
9348
  function revokeRefreshToken(_x4) {
9213
9349
  return _revokeRefreshToken.apply(this, arguments);
@@ -9244,11 +9380,11 @@ var OktaAuth = function () {
9244
9380
  }, {
9245
9381
  key: "signOut",
9246
9382
  value: function () {
9247
- var _signOut = _asyncToGenerator( _regeneratorRuntime.mark(function _callee7(options) {
9383
+ var _signOut = _asyncToGenerator( _regeneratorRuntime.mark(function _callee9(options) {
9248
9384
  var defaultUri, currentUri, postLogoutRedirectUri, accessToken, refreshToken, revokeAccessToken, revokeRefreshToken, logoutUri;
9249
- return _regeneratorRuntime.wrap(function _callee7$(_context7) {
9385
+ return _regeneratorRuntime.wrap(function _callee9$(_context9) {
9250
9386
  while (1) {
9251
- switch (_context7.prev = _context7.next) {
9387
+ switch (_context9.prev = _context9.next) {
9252
9388
  case 0:
9253
9389
  options = _Object$assign({}, options);
9254
9390
  defaultUri = window.location.origin;
@@ -9268,27 +9404,27 @@ var OktaAuth = function () {
9268
9404
  options.idToken = this.tokenManager.getTokensSync().idToken;
9269
9405
  }
9270
9406
  if (!(revokeRefreshToken && refreshToken)) {
9271
- _context7.next = 14;
9407
+ _context9.next = 14;
9272
9408
  break;
9273
9409
  }
9274
- _context7.next = 14;
9410
+ _context9.next = 14;
9275
9411
  return this.revokeRefreshToken(refreshToken);
9276
9412
  case 14:
9277
9413
  if (!(revokeAccessToken && accessToken)) {
9278
- _context7.next = 17;
9414
+ _context9.next = 17;
9279
9415
  break;
9280
9416
  }
9281
- _context7.next = 17;
9417
+ _context9.next = 17;
9282
9418
  return this.revokeAccessToken(accessToken);
9283
9419
  case 17:
9284
9420
  logoutUri = this.getSignOutRedirectUrl(_Object$assign(_Object$assign({}, options), {
9285
9421
  postLogoutRedirectUri: postLogoutRedirectUri
9286
9422
  }));
9287
9423
  if (logoutUri) {
9288
- _context7.next = 22;
9424
+ _context9.next = 22;
9289
9425
  break;
9290
9426
  }
9291
- return _context7.abrupt("return", this.closeSession()
9427
+ return _context9.abrupt("return", this.closeSession()
9292
9428
  .
9293
9429
  then(function () {
9294
9430
  if (postLogoutRedirectUri === currentUri) {
@@ -9306,10 +9442,10 @@ var OktaAuth = function () {
9306
9442
  window.location.assign(logoutUri);
9307
9443
  case 24:
9308
9444
  case "end":
9309
- return _context7.stop();
9445
+ return _context9.stop();
9310
9446
  }
9311
9447
  }
9312
- }, _callee7, this);
9448
+ }, _callee9, this);
9313
9449
  }));
9314
9450
  function signOut(_x5) {
9315
9451
  return _signOut.apply(this, arguments);
@@ -9330,7 +9466,7 @@ var OktaAuth = function () {
9330
9466
  }, {
9331
9467
  key: "isAuthenticated",
9332
9468
  value: function () {
9333
- var _isAuthenticated = _asyncToGenerator( _regeneratorRuntime.mark(function _callee8() {
9469
+ var _isAuthenticated = _asyncToGenerator( _regeneratorRuntime.mark(function _callee10() {
9334
9470
  var options,
9335
9471
  _this$tokenManager$ge,
9336
9472
  autoRenew,
@@ -9341,37 +9477,37 @@ var OktaAuth = function () {
9341
9477
  accessToken,
9342
9478
  _this$tokenManager$ge3,
9343
9479
  idToken,
9344
- _args8 = arguments;
9345
- return _regeneratorRuntime.wrap(function _callee8$(_context8) {
9480
+ _args10 = arguments;
9481
+ return _regeneratorRuntime.wrap(function _callee10$(_context10) {
9346
9482
  while (1) {
9347
- switch (_context8.prev = _context8.next) {
9483
+ switch (_context10.prev = _context10.next) {
9348
9484
  case 0:
9349
- options = _args8.length > 0 && _args8[0] !== undefined ? _args8[0] : {};
9485
+ options = _args10.length > 0 && _args10[0] !== undefined ? _args10[0] : {};
9350
9486
  _this$tokenManager$ge = this.tokenManager.getOptions(), autoRenew = _this$tokenManager$ge.autoRenew, autoRemove = _this$tokenManager$ge.autoRemove;
9351
9487
  shouldRenew = options.onExpiredToken ? options.onExpiredToken === 'renew' : autoRenew;
9352
9488
  shouldRemove = options.onExpiredToken ? options.onExpiredToken === 'remove' : autoRemove;
9353
9489
  _this$tokenManager$ge2 = this.tokenManager.getTokensSync(), accessToken = _this$tokenManager$ge2.accessToken;
9354
9490
  if (!(accessToken && this.tokenManager.hasExpired(accessToken))) {
9355
- _context8.next = 19;
9491
+ _context10.next = 19;
9356
9492
  break;
9357
9493
  }
9358
9494
  accessToken = undefined;
9359
9495
  if (!shouldRenew) {
9360
- _context8.next = 18;
9496
+ _context10.next = 18;
9361
9497
  break;
9362
9498
  }
9363
- _context8.prev = 8;
9364
- _context8.next = 11;
9499
+ _context10.prev = 8;
9500
+ _context10.next = 11;
9365
9501
  return this.tokenManager.renew('accessToken');
9366
9502
  case 11:
9367
- accessToken = _context8.sent;
9368
- _context8.next = 16;
9503
+ accessToken = _context10.sent;
9504
+ _context10.next = 16;
9369
9505
  break;
9370
9506
  case 14:
9371
- _context8.prev = 14;
9372
- _context8.t0 = _context8["catch"](8);
9507
+ _context10.prev = 14;
9508
+ _context10.t0 = _context10["catch"](8);
9373
9509
  case 16:
9374
- _context8.next = 19;
9510
+ _context10.next = 19;
9375
9511
  break;
9376
9512
  case 18:
9377
9513
  if (shouldRemove) {
@@ -9380,39 +9516,39 @@ var OktaAuth = function () {
9380
9516
  case 19:
9381
9517
  _this$tokenManager$ge3 = this.tokenManager.getTokensSync(), idToken = _this$tokenManager$ge3.idToken;
9382
9518
  if (!(idToken && this.tokenManager.hasExpired(idToken))) {
9383
- _context8.next = 34;
9519
+ _context10.next = 34;
9384
9520
  break;
9385
9521
  }
9386
9522
  idToken = undefined;
9387
9523
  if (!shouldRenew) {
9388
- _context8.next = 33;
9524
+ _context10.next = 33;
9389
9525
  break;
9390
9526
  }
9391
- _context8.prev = 23;
9392
- _context8.next = 26;
9527
+ _context10.prev = 23;
9528
+ _context10.next = 26;
9393
9529
  return this.tokenManager.renew('idToken');
9394
9530
  case 26:
9395
- idToken = _context8.sent;
9396
- _context8.next = 31;
9531
+ idToken = _context10.sent;
9532
+ _context10.next = 31;
9397
9533
  break;
9398
9534
  case 29:
9399
- _context8.prev = 29;
9400
- _context8.t1 = _context8["catch"](23);
9535
+ _context10.prev = 29;
9536
+ _context10.t1 = _context10["catch"](23);
9401
9537
  case 31:
9402
- _context8.next = 34;
9538
+ _context10.next = 34;
9403
9539
  break;
9404
9540
  case 33:
9405
9541
  if (shouldRemove) {
9406
9542
  this.tokenManager.remove('idToken');
9407
9543
  }
9408
9544
  case 34:
9409
- return _context8.abrupt("return", !!(accessToken && idToken));
9545
+ return _context10.abrupt("return", !!(accessToken && idToken));
9410
9546
  case 35:
9411
9547
  case "end":
9412
- return _context8.stop();
9548
+ return _context10.stop();
9413
9549
  }
9414
9550
  }
9415
- }, _callee8, this, [[8, 14], [23, 29]]);
9551
+ }, _callee10, this, [[8, 14], [23, 29]]);
9416
9552
  }));
9417
9553
  function isAuthenticated() {
9418
9554
  return _isAuthenticated.apply(this, arguments);
@@ -9422,20 +9558,20 @@ var OktaAuth = function () {
9422
9558
  }, {
9423
9559
  key: "getUser",
9424
9560
  value: function () {
9425
- var _getUser = _asyncToGenerator( _regeneratorRuntime.mark(function _callee9() {
9561
+ var _getUser = _asyncToGenerator( _regeneratorRuntime.mark(function _callee11() {
9426
9562
  var _this$tokenManager$ge4, idToken, accessToken;
9427
- return _regeneratorRuntime.wrap(function _callee9$(_context9) {
9563
+ return _regeneratorRuntime.wrap(function _callee11$(_context11) {
9428
9564
  while (1) {
9429
- switch (_context9.prev = _context9.next) {
9565
+ switch (_context11.prev = _context11.next) {
9430
9566
  case 0:
9431
9567
  _this$tokenManager$ge4 = this.tokenManager.getTokensSync(), idToken = _this$tokenManager$ge4.idToken, accessToken = _this$tokenManager$ge4.accessToken;
9432
- return _context9.abrupt("return", this.token.getUserInfo(accessToken, idToken));
9568
+ return _context11.abrupt("return", this.token.getUserInfo(accessToken, idToken));
9433
9569
  case 2:
9434
9570
  case "end":
9435
- return _context9.stop();
9571
+ return _context11.stop();
9436
9572
  }
9437
9573
  }
9438
- }, _callee9, this);
9574
+ }, _callee11, this);
9439
9575
  }));
9440
9576
  function getUser() {
9441
9577
  return _getUser.apply(this, arguments);
@@ -9466,24 +9602,24 @@ var OktaAuth = function () {
9466
9602
  }, {
9467
9603
  key: "storeTokensFromRedirect",
9468
9604
  value: function () {
9469
- var _storeTokensFromRedirect = _asyncToGenerator( _regeneratorRuntime.mark(function _callee10() {
9605
+ var _storeTokensFromRedirect = _asyncToGenerator( _regeneratorRuntime.mark(function _callee12() {
9470
9606
  var _yield$this$token$par, tokens;
9471
- return _regeneratorRuntime.wrap(function _callee10$(_context10) {
9607
+ return _regeneratorRuntime.wrap(function _callee12$(_context12) {
9472
9608
  while (1) {
9473
- switch (_context10.prev = _context10.next) {
9609
+ switch (_context12.prev = _context12.next) {
9474
9610
  case 0:
9475
- _context10.next = 2;
9611
+ _context12.next = 2;
9476
9612
  return this.token.parseFromUrl();
9477
9613
  case 2:
9478
- _yield$this$token$par = _context10.sent;
9614
+ _yield$this$token$par = _context12.sent;
9479
9615
  tokens = _yield$this$token$par.tokens;
9480
9616
  this.tokenManager.setTokens(tokens);
9481
9617
  case 5:
9482
9618
  case "end":
9483
- return _context10.stop();
9619
+ return _context12.stop();
9484
9620
  }
9485
9621
  }
9486
- }, _callee10, this);
9622
+ }, _callee12, this);
9487
9623
  }));
9488
9624
  function storeTokensFromRedirect() {
9489
9625
  return _storeTokensFromRedirect.apply(this, arguments);
@@ -9534,64 +9670,64 @@ var OktaAuth = function () {
9534
9670
  }, {
9535
9671
  key: "handleLoginRedirect",
9536
9672
  value: function () {
9537
- var _handleLoginRedirect = _asyncToGenerator( _regeneratorRuntime.mark(function _callee11(tokens, originalUri) {
9673
+ var _handleLoginRedirect = _asyncToGenerator( _regeneratorRuntime.mark(function _callee13(tokens, originalUri) {
9538
9674
  var state, oAuthResponse, restoreOriginalUri;
9539
- return _regeneratorRuntime.wrap(function _callee11$(_context11) {
9675
+ return _regeneratorRuntime.wrap(function _callee13$(_context13) {
9540
9676
  while (1) {
9541
- switch (_context11.prev = _context11.next) {
9677
+ switch (_context13.prev = _context13.next) {
9542
9678
  case 0:
9543
9679
  state = this.options.state;
9544
9680
  if (!tokens) {
9545
- _context11.next = 6;
9681
+ _context13.next = 6;
9546
9682
  break;
9547
9683
  }
9548
9684
  this.tokenManager.setTokens(tokens);
9549
9685
  originalUri = originalUri || this.getOriginalUri(this.options.state);
9550
- _context11.next = 25;
9686
+ _context13.next = 25;
9551
9687
  break;
9552
9688
  case 6:
9553
9689
  if (!this.isLoginRedirect()) {
9554
- _context11.next = 24;
9690
+ _context13.next = 24;
9555
9691
  break;
9556
9692
  }
9557
- _context11.prev = 7;
9558
- _context11.next = 10;
9693
+ _context13.prev = 7;
9694
+ _context13.next = 10;
9559
9695
  return parseOAuthResponseFromUrl(this, {});
9560
9696
  case 10:
9561
- oAuthResponse = _context11.sent;
9697
+ oAuthResponse = _context13.sent;
9562
9698
  state = oAuthResponse.state;
9563
9699
  originalUri = originalUri || this.getOriginalUri(state);
9564
- _context11.next = 15;
9700
+ _context13.next = 15;
9565
9701
  return this.storeTokensFromRedirect();
9566
9702
  case 15:
9567
- _context11.next = 22;
9703
+ _context13.next = 22;
9568
9704
  break;
9569
9705
  case 17:
9570
- _context11.prev = 17;
9571
- _context11.t0 = _context11["catch"](7);
9572
- _context11.next = 21;
9706
+ _context13.prev = 17;
9707
+ _context13.t0 = _context13["catch"](7);
9708
+ _context13.next = 21;
9573
9709
  return this.authStateManager.updateAuthState();
9574
9710
  case 21:
9575
- throw _context11.t0;
9711
+ throw _context13.t0;
9576
9712
  case 22:
9577
- _context11.next = 25;
9713
+ _context13.next = 25;
9578
9714
  break;
9579
9715
  case 24:
9580
- return _context11.abrupt("return");
9716
+ return _context13.abrupt("return");
9581
9717
  case 25:
9582
- _context11.next = 27;
9718
+ _context13.next = 27;
9583
9719
  return this.authStateManager.updateAuthState();
9584
9720
  case 27:
9585
9721
  this.removeOriginalUri(state);
9586
9722
  restoreOriginalUri = this.options.restoreOriginalUri;
9587
9723
  if (!restoreOriginalUri) {
9588
- _context11.next = 34;
9724
+ _context13.next = 34;
9589
9725
  break;
9590
9726
  }
9591
- _context11.next = 32;
9727
+ _context13.next = 32;
9592
9728
  return restoreOriginalUri(this, originalUri);
9593
9729
  case 32:
9594
- _context11.next = 35;
9730
+ _context13.next = 35;
9595
9731
  break;
9596
9732
  case 34:
9597
9733
  if (originalUri) {
@@ -9599,10 +9735,10 @@ var OktaAuth = function () {
9599
9735
  }
9600
9736
  case 35:
9601
9737
  case "end":
9602
- return _context11.stop();
9738
+ return _context13.stop();
9603
9739
  }
9604
9740
  }
9605
- }, _callee11, this, [[7, 17]]);
9741
+ }, _callee13, this, [[7, 17]]);
9606
9742
  }));
9607
9743
  function handleLoginRedirect(_x6, _x7) {
9608
9744
  return _handleLoginRedirect.apply(this, arguments);
@@ -9619,8 +9755,8 @@ var OktaAuth = function () {
9619
9755
  value: function hasResponseType(responseType) {
9620
9756
  var hasResponseType = false;
9621
9757
  if (Array.isArray(this.options.responseType) && this.options.responseType.length) {
9622
- var _context12;
9623
- hasResponseType = _indexOfInstanceProperty(_context12 = this.options.responseType).call(_context12, responseType) >= 0;
9758
+ var _context14;
9759
+ hasResponseType = _indexOfInstanceProperty(_context14 = this.options.responseType).call(_context14, responseType) >= 0;
9624
9760
  } else {
9625
9761
  hasResponseType = this.options.responseType === responseType;
9626
9762
  }
@@ -9654,29 +9790,29 @@ var OktaAuth = function () {
9654
9790
  }, {
9655
9791
  key: "invokeApiMethod",
9656
9792
  value: function () {
9657
- var _invokeApiMethod = _asyncToGenerator( _regeneratorRuntime.mark(function _callee12(options) {
9793
+ var _invokeApiMethod = _asyncToGenerator( _regeneratorRuntime.mark(function _callee14(options) {
9658
9794
  var accessToken;
9659
- return _regeneratorRuntime.wrap(function _callee12$(_context13) {
9795
+ return _regeneratorRuntime.wrap(function _callee14$(_context15) {
9660
9796
  while (1) {
9661
- switch (_context13.prev = _context13.next) {
9797
+ switch (_context15.prev = _context15.next) {
9662
9798
  case 0:
9663
9799
  if (options.accessToken) {
9664
- _context13.next = 5;
9800
+ _context15.next = 5;
9665
9801
  break;
9666
9802
  }
9667
- _context13.next = 3;
9803
+ _context15.next = 3;
9668
9804
  return this.tokenManager.getTokens();
9669
9805
  case 3:
9670
- accessToken = _context13.sent.accessToken;
9806
+ accessToken = _context15.sent.accessToken;
9671
9807
  options.accessToken = accessToken === null || accessToken === void 0 ? void 0 : accessToken.accessToken;
9672
9808
  case 5:
9673
- return _context13.abrupt("return", httpRequest(this, options));
9809
+ return _context15.abrupt("return", httpRequest(this, options));
9674
9810
  case 6:
9675
9811
  case "end":
9676
- return _context13.stop();
9812
+ return _context15.stop();
9677
9813
  }
9678
9814
  }
9679
- }, _callee12, this);
9815
+ }, _callee14, this);
9680
9816
  }));
9681
9817
  function invokeApiMethod(_x8) {
9682
9818
  return _invokeApiMethod.apply(this, arguments);
@@ -9694,5 +9830,5 @@ _Object$assign(OktaAuth, {
9694
9830
  constants: constants
9695
9831
  });
9696
9832
 
9697
- export { ACCESS_TOKEN_STORAGE_KEY, AuthApiError, AuthPollStopError, AuthSdkError, AuthStateManager, AuthTransaction, AuthenticatorKey, CACHE_STORAGE_NAME, DEFAULT_CACHE_DURATION, DEFAULT_CODE_CHALLENGE_METHOD, DEFAULT_MAX_CLOCK_SKEW, DEFAULT_POLLING_DELAY, EVENT_ADDED, EVENT_ERROR, EVENT_EXPIRED, EVENT_REMOVED, EVENT_RENEWED, IDX_API_VERSION, IDX_RESPONSE_STORAGE_NAME, ID_TOKEN_STORAGE_KEY, INITIAL_AUTH_STATE, IdxFeature, IdxStatus, MAX_VERIFIER_LENGTH, MIN_VERIFIER_LENGTH, OAuthError, ORIGINAL_URI_STORAGE_NAME, OktaAuth, PKCE_STORAGE_NAME, REDIRECT_NONCE_COOKIE_NAME, REDIRECT_OAUTH_PARAMS_NAME, REDIRECT_STATE_COOKIE_NAME, REFERRER_PATH_STORAGE_KEY, REFRESH_TOKEN_STORAGE_KEY, SHARED_TRANSACTION_STORAGE_NAME, STATE_TOKEN_KEY_NAME, StorageManager, TOKEN_STORAGE_NAME, TRANSACTION_STORAGE_NAME, TokenManager, addListener, addPostMessageListener, addStateToken, assertPKCESupport, authenticate, bind, buildAuthorizeParams, canProceed, cancel, clearTransactionMeta, clone, convertTokenParamsToOAuthParams, createOAuthMeta, createTransactionMeta, crypto$1 as crypto, decodeToken, delay, deprecate, deprecateWrap, exchangeCodeForTokens, extend, find, genRandomString, generateNonce, generateState, getConsole, getDefaultTokenParams, getHashOrSearch, getKey, getLink, getNativeConsole, getOAuthBaseUrl, getOAuthDomain, getOAuthUrls, getPollFn, getSavedTransactionMeta, getStateToken, getToken, getTransactionMeta, getUserInfo, getWellKnown, getWithPopup, getWithRedirect, getWithoutPrompt, handleEmailVerifyCallback, handleInteractionCodeRedirect, handleOAuthResponse, hasAuthorizationCode, hasErrorInUrl, hasInteractionCode, hasSavedInteractionHandle, hasTokensInHash, interact, introspect, introspectAuthn, isAbsoluteUrl, isAccessToken, isAuthApiError, isAuthenticator, isAuthorizationCodeError, isCodeFlow, isCustomAuthTransactionMeta, isEmailVerifyCallback, isEmailVerifyCallbackError, isFunction, isIDToken, isIdxTransactionMeta, isInteractionRequired, isInteractionRequiredError, isLoginRedirect, isNumber, isOAuthTransactionMeta, isObject, isPKCETransactionMeta, isPromise, isRedirectUri, isRefreshToken, isRefreshTokenError, isSameRefreshToken, isString, isToken, isTransactionMeta, isTransactionMetaValid, isTransactionMetaValidForFlow, isTransactionMetaValidForOptions, isoToUTCString, loadFrame, loadPopup, omit, parseEmailVerifyCallback, parseFromUrl, PKCE as pkce, poll, postRefreshToken, postToTokenEndpoint, postToTransaction, preparePKCE, prepareTokenParams, proceed, recoverPassword, register, removeListener, removeNils, removeTrailingSlash, renewToken, renewTokens, renewTokensWithRefresh, resumeTransaction, revokeToken, saveTransactionMeta, startTransaction, toAbsoluteUrl, toQueryString, toRelativeUrl, transactionExists, transactionStatus, transactionStep, unlockAccount, urlParamsToObject, validateClaims, validateCodeChallengeMethod, validateToken, verifyToken, warn };
9833
+ export { ACCESS_TOKEN_STORAGE_KEY, AuthApiError, AuthPollStopError, AuthSdkError, AuthStateManager, AuthTransaction, AuthenticatorKey, CACHE_STORAGE_NAME, DEFAULT_CACHE_DURATION, DEFAULT_CODE_CHALLENGE_METHOD, DEFAULT_MAX_CLOCK_SKEW, DEFAULT_POLLING_DELAY, EVENT_ADDED, EVENT_ERROR, EVENT_EXPIRED, EVENT_REMOVED, EVENT_RENEWED, IDX_API_VERSION, IDX_RESPONSE_STORAGE_NAME, ID_TOKEN_STORAGE_KEY, INITIAL_AUTH_STATE, IdxFeature, IdxStatus, MAX_VERIFIER_LENGTH, MIN_VERIFIER_LENGTH, OAuthError, ORIGINAL_URI_STORAGE_NAME, OktaAuth, PKCE_STORAGE_NAME, REDIRECT_NONCE_COOKIE_NAME, REDIRECT_OAUTH_PARAMS_NAME, REDIRECT_STATE_COOKIE_NAME, REFERRER_PATH_STORAGE_KEY, REFRESH_TOKEN_STORAGE_KEY, SHARED_TRANSACTION_STORAGE_NAME, STATE_TOKEN_KEY_NAME, StorageManager, TOKEN_STORAGE_NAME, TRANSACTION_STORAGE_NAME, TokenManager, addListener, addPostMessageListener, addStateToken, assertPKCESupport, authenticate, bind, buildAuthorizeParams, canProceed, cancel, clearTransactionMeta, clone, convertTokenParamsToOAuthParams, createOAuthMeta, createTransactionMeta, crypto$1 as crypto, decodeToken, delay, deprecate, deprecateWrap, exchangeCodeForTokens, extend, find, genRandomString, generateNonce, generateState, getConsole, getDefaultTokenParams, getHashOrSearch, getKey, getLink, getNativeConsole, getOAuthBaseUrl, getOAuthDomain, getOAuthUrls, getPollFn, getSavedTransactionMeta, getStateToken, getToken, getTransactionMeta, getUserInfo, getWellKnown, getWithPopup, getWithRedirect, getWithoutPrompt, handleEmailVerifyCallback, handleInteractionCodeRedirect, handleOAuthResponse, hasAuthorizationCode, hasErrorInUrl, hasInteractionCode, hasSavedInteractionHandle, hasTokensInHash, interact, introspect, introspectAuthn, isAbsoluteUrl, isAccessToken, isAuthApiError, isAuthenticator, isAuthorizationCodeError, isCodeFlow, isCustomAuthTransactionMeta, isEmailVerifyCallback, isEmailVerifyCallbackError, isFunction, isIDToken, isIdxTransactionMeta, isInteractionRequired, isInteractionRequiredError, isLoginRedirect, isNumber, isOAuthError, isOAuthTransactionMeta, isObject, isPKCETransactionMeta, isPromise, isRedirectUri, isRefreshToken, isRefreshTokenError, isRefreshTokenInvalidError, isSameRefreshToken, isString, isToken, isTransactionMeta, isTransactionMetaValid, isTransactionMetaValidForFlow, isTransactionMetaValidForOptions, isoToUTCString, loadFrame, loadPopup, omit, parseEmailVerifyCallback, parseFromUrl, PKCE as pkce, poll, postRefreshToken, postToTokenEndpoint, postToTransaction, preparePKCE, prepareTokenParams, proceed, recoverPassword, register, removeListener, removeNils, removeTrailingSlash, renewToken, renewTokens, renewTokensWithRefresh, resumeTransaction, revokeToken, saveTransactionMeta, startTransaction, toAbsoluteUrl, toQueryString, toRelativeUrl, transactionExists, transactionStatus, transactionStep, unlockAccount, urlParamsToObject, validateClaims, validateCodeChallengeMethod, validateToken, verifyToken, warn };
9698
9834
  //# sourceMappingURL=esm.browser.js.map