@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
package/esm/esm.node.mjs CHANGED
@@ -31,7 +31,6 @@ import _JSON$stringify from '@babel/runtime-corejs3/core-js-stable/json/stringif
31
31
  import _indexOfInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/index-of';
32
32
  import _createClass from '@babel/runtime-corejs3/helpers/createClass';
33
33
  import _Object$assign from '@babel/runtime-corejs3/core-js-stable/object/assign';
34
- import _Object$keys from '@babel/runtime-corejs3/core-js-stable/object/keys';
35
34
  import _typeof from '@babel/runtime-corejs3/helpers/typeof';
36
35
  import _Array$from from '@babel/runtime-corejs3/core-js-stable/array/from';
37
36
  import _slicedToArray from '@babel/runtime-corejs3/helpers/slicedToArray';
@@ -40,6 +39,7 @@ import _Object$entries from '@babel/runtime-corejs3/core-js-stable/object/entrie
40
39
  import _keysInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/keys';
41
40
  import _Object$values from '@babel/runtime-corejs3/core-js-stable/object/values';
42
41
  import _findInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/find';
42
+ import _Object$keys from '@babel/runtime-corejs3/core-js-stable/object/keys';
43
43
  import Cookies from 'js-cookie';
44
44
  import _filterInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/filter';
45
45
  import _parseInt from '@babel/runtime-corejs3/core-js-stable/parse-int';
@@ -159,6 +159,9 @@ var OAuthError = function (_CustomError) {
159
159
  function isAuthApiError(obj) {
160
160
  return obj instanceof AuthApiError;
161
161
  }
162
+ function isOAuthError(obj) {
163
+ return obj instanceof OAuthError;
164
+ }
162
165
 
163
166
  var a;
164
167
  if (typeof atob !== 'undefined') {
@@ -702,6 +705,60 @@ function getStateToken(res) {
702
705
  return addStateToken(res);
703
706
  }
704
707
 
708
+ function transactionStatus(sdk, args) {
709
+ args = addStateToken(sdk, args);
710
+ return post(sdk, sdk.getIssuerOrigin() + '/api/v1/authn', args, {
711
+ withCredentials: true
712
+ });
713
+ }
714
+ function resumeTransaction(sdk, args) {
715
+ if (!args || !args.stateToken) {
716
+ var stateToken = sdk.tx.exists._get(STATE_TOKEN_KEY_NAME);
717
+ if (stateToken) {
718
+ args = {
719
+ stateToken: stateToken
720
+ };
721
+ } else {
722
+ return _Promise.reject(new AuthSdkError('No transaction to resume'));
723
+ }
724
+ }
725
+ return sdk.tx.status(args).then(function (res) {
726
+ return sdk.tx.createTransaction(res);
727
+ });
728
+ }
729
+ function introspectAuthn(sdk, args) {
730
+ if (!args || !args.stateToken) {
731
+ var stateToken = sdk.tx.exists._get(STATE_TOKEN_KEY_NAME);
732
+ if (stateToken) {
733
+ args = {
734
+ stateToken: stateToken
735
+ };
736
+ } else {
737
+ return _Promise.reject(new AuthSdkError('No transaction to evaluate'));
738
+ }
739
+ }
740
+ return transactionStep(sdk, args).then(function (res) {
741
+ return sdk.tx.createTransaction(res);
742
+ });
743
+ }
744
+ function transactionStep(sdk, args) {
745
+ args = addStateToken(sdk, args);
746
+ return post(sdk, sdk.getIssuerOrigin() + '/api/v1/authn/introspect', args, {
747
+ withCredentials: true
748
+ });
749
+ }
750
+ function transactionExists(sdk) {
751
+ return !!sdk.tx.exists._get(STATE_TOKEN_KEY_NAME);
752
+ }
753
+ function postToTransaction(sdk, url, args, options) {
754
+ options = _Object$assign({
755
+ withCredentials: true
756
+ }, options);
757
+ return post(sdk, url, args, options).then(function (res) {
758
+ return sdk.tx.createTransaction(res);
759
+ });
760
+ }
761
+
705
762
  function getPollFn(sdk, res, ref) {
706
763
  return function (options) {
707
764
  var delay$1;
@@ -765,7 +822,7 @@ function getPollFn(sdk, res, ref) {
765
822
  return delay(delay$1).then(recursivePoll);
766
823
  } else {
767
824
  ref.isPolling = false;
768
- return new AuthTransaction(sdk, pollRes);
825
+ return sdk.tx.createTransaction(pollRes);
769
826
  }
770
827
  }).catch(function (err) {
771
828
  if (err.xhr && (err.xhr.status === 0 || err.xhr.status === 429) && retryCount <= 4) {
@@ -798,7 +855,7 @@ var AuthTransaction = function AuthTransaction(sdk) {
798
855
  delete this.stateToken;
799
856
  if (res.status === 'RECOVERY_CHALLENGE' && !res._links) {
800
857
  this.cancel = function () {
801
- return _Promise.resolve(new AuthTransaction(sdk));
858
+ return _Promise.resolve(sdk.tx.createTransaction());
802
859
  };
803
860
  }
804
861
  }
@@ -929,60 +986,6 @@ function flattenEmbedded(sdk, res, obj, ref) {
929
986
  return obj;
930
987
  }
931
988
 
932
- function transactionStatus(sdk, args) {
933
- args = addStateToken(sdk, args);
934
- return post(sdk, sdk.getIssuerOrigin() + '/api/v1/authn', args, {
935
- withCredentials: true
936
- });
937
- }
938
- function resumeTransaction(sdk, args) {
939
- if (!args || !args.stateToken) {
940
- var stateToken = sdk.tx.exists._get(STATE_TOKEN_KEY_NAME);
941
- if (stateToken) {
942
- args = {
943
- stateToken: stateToken
944
- };
945
- } else {
946
- return _Promise.reject(new AuthSdkError('No transaction to resume'));
947
- }
948
- }
949
- return sdk.tx.status(args).then(function (res) {
950
- return new AuthTransaction(sdk, res);
951
- });
952
- }
953
- function introspectAuthn(sdk, args) {
954
- if (!args || !args.stateToken) {
955
- var stateToken = sdk.tx.exists._get(STATE_TOKEN_KEY_NAME);
956
- if (stateToken) {
957
- args = {
958
- stateToken: stateToken
959
- };
960
- } else {
961
- return _Promise.reject(new AuthSdkError('No transaction to evaluate'));
962
- }
963
- }
964
- return transactionStep(sdk, args).then(function (res) {
965
- return new AuthTransaction(sdk, res);
966
- });
967
- }
968
- function transactionStep(sdk, args) {
969
- args = addStateToken(sdk, args);
970
- return post(sdk, sdk.getIssuerOrigin() + '/api/v1/authn/introspect', args, {
971
- withCredentials: true
972
- });
973
- }
974
- function transactionExists(sdk) {
975
- return !!sdk.tx.exists._get(STATE_TOKEN_KEY_NAME);
976
- }
977
- function postToTransaction(sdk, url, args, options) {
978
- options = _Object$assign({
979
- withCredentials: true
980
- }, options);
981
- return post(sdk, url, args, options).then(function (res) {
982
- return new AuthTransaction(sdk, res);
983
- });
984
- }
985
-
986
989
  function dec2hex(dec) {
987
990
  return ('0' + dec.toString(16)).substr(-2);
988
991
  }
@@ -1414,6 +1417,9 @@ function isAuthorizationCodeError(sdk, error) {
1414
1417
  var responseJSON = errorResponse === null || errorResponse === void 0 ? void 0 : errorResponse.responseJSON;
1415
1418
  return sdk.options.pkce && (responseJSON === null || responseJSON === void 0 ? void 0 : responseJSON.error) === 'invalid_grant';
1416
1419
  }
1420
+ function isRefreshTokenInvalidError(error) {
1421
+ return isOAuthError(error) && error.errorCode === 'invalid_grant' && error.errorSummary === 'The refresh token is invalid or expired.';
1422
+ }
1417
1423
 
1418
1424
  function hasTokensInHash(hash) {
1419
1425
  return /((id|access)_token=)/i.test(hash);
@@ -1856,47 +1862,6 @@ function _revokeToken() {
1856
1862
  return _revokeToken.apply(this, arguments);
1857
1863
  }
1858
1864
 
1859
- function exchangeCodeForTokens(sdk, tokenParams, urls) {
1860
- urls = urls || getOAuthUrls(sdk, tokenParams);
1861
- tokenParams = _Object$assign({}, getDefaultTokenParams(sdk), clone(tokenParams));
1862
- var _tokenParams = tokenParams,
1863
- authorizationCode = _tokenParams.authorizationCode,
1864
- interactionCode = _tokenParams.interactionCode,
1865
- codeVerifier = _tokenParams.codeVerifier,
1866
- clientId = _tokenParams.clientId,
1867
- redirectUri = _tokenParams.redirectUri,
1868
- scopes = _tokenParams.scopes,
1869
- ignoreSignature = _tokenParams.ignoreSignature,
1870
- state = _tokenParams.state;
1871
- var getTokenOptions = {
1872
- clientId: clientId,
1873
- redirectUri: redirectUri,
1874
- authorizationCode: authorizationCode,
1875
- interactionCode: interactionCode,
1876
- codeVerifier: codeVerifier
1877
- };
1878
- return postToTokenEndpoint(sdk, getTokenOptions, urls).then(function (response) {
1879
- var responseType = ['token'];
1880
- if (_indexOfInstanceProperty(scopes).call(scopes, 'openid') !== -1) {
1881
- responseType.push('id_token');
1882
- }
1883
- var handleResponseOptions = {
1884
- clientId: clientId,
1885
- redirectUri: redirectUri,
1886
- scopes: scopes,
1887
- responseType: responseType,
1888
- ignoreSignature: ignoreSignature
1889
- };
1890
- return handleOAuthResponse(sdk, handleResponseOptions, response, urls).then(function (response) {
1891
- response.code = authorizationCode;
1892
- response.state = state;
1893
- return response;
1894
- });
1895
- }).finally(function () {
1896
- sdk.transactionManager.clear();
1897
- });
1898
- }
1899
-
1900
1865
  function verifyToken(_x, _x2, _x3) {
1901
1866
  return _verifyToken.apply(this, arguments);
1902
1867
  }
@@ -1995,7 +1960,7 @@ function _handleOAuthResponse() {
1995
1960
  _context.next = 3;
1996
1961
  break;
1997
1962
  }
1998
- return _context.abrupt("return", exchangeCodeForTokens(sdk, _Object$assign({}, tokenParams, {
1963
+ return _context.abrupt("return", sdk.token.exchangeCodeForTokens(_Object$assign({}, tokenParams, {
1999
1964
  authorizationCode: res.code,
2000
1965
  interactionCode: res.interaction_code
2001
1966
  }), urls));
@@ -2211,17 +2176,18 @@ function _renewTokensWithRefresh() {
2211
2176
  }
2212
2177
  throw new AuthSdkError('A clientId must be specified in the OktaAuth constructor to renew tokens');
2213
2178
  case 3:
2179
+ _context.prev = 3;
2214
2180
  renewTokenParams = _Object$assign({}, tokenParams, {
2215
2181
  clientId: clientId
2216
2182
  });
2217
- _context.next = 6;
2183
+ _context.next = 7;
2218
2184
  return postRefreshToken(sdk, renewTokenParams, refreshTokenObject);
2219
- case 6:
2185
+ case 7:
2220
2186
  tokenResponse = _context.sent;
2221
2187
  urls = getOAuthUrls(sdk, tokenParams);
2222
- _context.next = 10;
2188
+ _context.next = 11;
2223
2189
  return handleOAuthResponse(sdk, renewTokenParams, tokenResponse, urls);
2224
- case 10:
2190
+ case 11:
2225
2191
  _yield$handleOAuthRes = _context.sent;
2226
2192
  tokens = _yield$handleOAuthRes.tokens;
2227
2193
  refreshToken = tokens.refreshToken;
@@ -2229,12 +2195,19 @@ function _renewTokensWithRefresh() {
2229
2195
  sdk.tokenManager.updateRefreshToken(refreshToken);
2230
2196
  }
2231
2197
  return _context.abrupt("return", tokens);
2232
- case 15:
2198
+ case 18:
2199
+ _context.prev = 18;
2200
+ _context.t0 = _context["catch"](3);
2201
+ if (isRefreshTokenInvalidError(_context.t0)) {
2202
+ sdk.tokenManager.removeRefreshToken();
2203
+ }
2204
+ throw _context.t0;
2205
+ case 22:
2233
2206
  case "end":
2234
2207
  return _context.stop();
2235
2208
  }
2236
2209
  }
2237
- }, _callee);
2210
+ }, _callee, null, [[3, 18]]);
2238
2211
  }));
2239
2212
  return _renewTokensWithRefresh.apply(this, arguments);
2240
2213
  }
@@ -2448,6 +2421,47 @@ function _getUserInfo() {
2448
2421
  return _getUserInfo.apply(this, arguments);
2449
2422
  }
2450
2423
 
2424
+ function exchangeCodeForTokens(sdk, tokenParams, urls) {
2425
+ urls = urls || getOAuthUrls(sdk, tokenParams);
2426
+ tokenParams = _Object$assign({}, getDefaultTokenParams(sdk), clone(tokenParams));
2427
+ var _tokenParams = tokenParams,
2428
+ authorizationCode = _tokenParams.authorizationCode,
2429
+ interactionCode = _tokenParams.interactionCode,
2430
+ codeVerifier = _tokenParams.codeVerifier,
2431
+ clientId = _tokenParams.clientId,
2432
+ redirectUri = _tokenParams.redirectUri,
2433
+ scopes = _tokenParams.scopes,
2434
+ ignoreSignature = _tokenParams.ignoreSignature,
2435
+ state = _tokenParams.state;
2436
+ var getTokenOptions = {
2437
+ clientId: clientId,
2438
+ redirectUri: redirectUri,
2439
+ authorizationCode: authorizationCode,
2440
+ interactionCode: interactionCode,
2441
+ codeVerifier: codeVerifier
2442
+ };
2443
+ return postToTokenEndpoint(sdk, getTokenOptions, urls).then(function (response) {
2444
+ var responseType = ['token'];
2445
+ if (_indexOfInstanceProperty(scopes).call(scopes, 'openid') !== -1) {
2446
+ responseType.push('id_token');
2447
+ }
2448
+ var handleResponseOptions = {
2449
+ clientId: clientId,
2450
+ redirectUri: redirectUri,
2451
+ scopes: scopes,
2452
+ responseType: responseType,
2453
+ ignoreSignature: ignoreSignature
2454
+ };
2455
+ return handleOAuthResponse(sdk, handleResponseOptions, response, urls).then(function (response) {
2456
+ response.code = authorizationCode;
2457
+ response.state = state;
2458
+ return response;
2459
+ });
2460
+ }).finally(function () {
2461
+ sdk.transactionManager.clear();
2462
+ });
2463
+ }
2464
+
2451
2465
  function getWithPopup(sdk, options) {
2452
2466
  if (arguments.length > 2) {
2453
2467
  return _Promise.reject(new AuthSdkError('As of version 3.0, "getWithPopup" takes only a single set of options'));
@@ -3353,6 +3367,12 @@ var TokenManager = function () {
3353
3367
  tokenStorage[key] = token;
3354
3368
  this.storage.setStorage(tokenStorage);
3355
3369
  }
3370
+ }, {
3371
+ key: "removeRefreshToken",
3372
+ value: function removeRefreshToken() {
3373
+ var key = this.getStorageKeyByType('refreshToken') || REFRESH_TOKEN_STORAGE_KEY;
3374
+ this.remove(key);
3375
+ }
3356
3376
  }, {
3357
3377
  key: "addPendingRemoveFlags",
3358
3378
  value: function addPendingRemoveFlags() {
@@ -3505,7 +3525,7 @@ var SyncStorageService = function () {
3505
3525
  }();
3506
3526
 
3507
3527
  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; } } }; }
3508
- 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); }
3528
+ 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); }
3509
3529
  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; }
3510
3530
  var ServiceManager = function () {
3511
3531
  function ServiceManager(sdk) {
@@ -3565,23 +3585,64 @@ var ServiceManager = function () {
3565
3585
  }
3566
3586
  }, {
3567
3587
  key: "start",
3568
- value: function start() {
3569
- if (this.started) {
3570
- return;
3571
- }
3572
- if (this.isLeaderRequired()) {
3573
- this.startElector();
3588
+ value: function () {
3589
+ var _start = _asyncToGenerator( _regeneratorRuntime.mark(function _callee() {
3590
+ return _regeneratorRuntime.wrap(function _callee$(_context2) {
3591
+ while (1) {
3592
+ switch (_context2.prev = _context2.next) {
3593
+ case 0:
3594
+ if (!this.started) {
3595
+ _context2.next = 2;
3596
+ break;
3597
+ }
3598
+ return _context2.abrupt("return");
3599
+ case 2:
3600
+ if (!this.isLeaderRequired()) {
3601
+ _context2.next = 5;
3602
+ break;
3603
+ }
3604
+ _context2.next = 5;
3605
+ return this.startElector();
3606
+ case 5:
3607
+ this.startServices();
3608
+ this.started = true;
3609
+ case 7:
3610
+ case "end":
3611
+ return _context2.stop();
3612
+ }
3613
+ }
3614
+ }, _callee, this);
3615
+ }));
3616
+ function start() {
3617
+ return _start.apply(this, arguments);
3574
3618
  }
3575
- this.startServices();
3576
- this.started = true;
3577
- }
3619
+ return start;
3620
+ }()
3578
3621
  }, {
3579
3622
  key: "stop",
3580
- value: function stop() {
3581
- this.stopElector();
3582
- this.stopServices();
3583
- this.started = false;
3584
- }
3623
+ value: function () {
3624
+ var _stop = _asyncToGenerator( _regeneratorRuntime.mark(function _callee2() {
3625
+ return _regeneratorRuntime.wrap(function _callee2$(_context3) {
3626
+ while (1) {
3627
+ switch (_context3.prev = _context3.next) {
3628
+ case 0:
3629
+ _context3.next = 2;
3630
+ return this.stopElector();
3631
+ case 2:
3632
+ this.stopServices();
3633
+ this.started = false;
3634
+ case 4:
3635
+ case "end":
3636
+ return _context3.stop();
3637
+ }
3638
+ }
3639
+ }, _callee2, this);
3640
+ }));
3641
+ function stop() {
3642
+ return _stop.apply(this, arguments);
3643
+ }
3644
+ return stop;
3645
+ }()
3585
3646
  }, {
3586
3647
  key: "getService",
3587
3648
  value: function getService(name) {
@@ -3590,8 +3651,8 @@ var ServiceManager = function () {
3590
3651
  }, {
3591
3652
  key: "startServices",
3592
3653
  value: function startServices() {
3593
- var _context2;
3594
- var _iterator = _createForOfIteratorHelper$7(_valuesInstanceProperty(_context2 = this.services).call(_context2)),
3654
+ var _context4;
3655
+ var _iterator = _createForOfIteratorHelper$7(_valuesInstanceProperty(_context4 = this.services).call(_context4)),
3595
3656
  _step;
3596
3657
  try {
3597
3658
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
@@ -3610,8 +3671,8 @@ var ServiceManager = function () {
3610
3671
  }, {
3611
3672
  key: "stopServices",
3612
3673
  value: function stopServices() {
3613
- var _context3;
3614
- var _iterator2 = _createForOfIteratorHelper$7(_valuesInstanceProperty(_context3 = this.services).call(_context3)),
3674
+ var _context5;
3675
+ var _iterator2 = _createForOfIteratorHelper$7(_valuesInstanceProperty(_context5 = this.services).call(_context5)),
3615
3676
  _step2;
3616
3677
  try {
3617
3678
  for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
@@ -3626,31 +3687,72 @@ var ServiceManager = function () {
3626
3687
  }
3627
3688
  }, {
3628
3689
  key: "startElector",
3629
- value: function startElector() {
3630
- this.stopElector();
3631
- if (ServiceManager.canUseLeaderElection()) {
3632
- if (!this.channel) {
3633
- var broadcastChannelName = this.options.broadcastChannelName;
3634
- this.channel = new BroadcastChannel(broadcastChannelName);
3635
- }
3636
- if (!this.elector) {
3637
- this.elector = createLeaderElection(this.channel);
3638
- this.elector.onduplicate = this.onLeaderDuplicate;
3639
- this.elector.awaitLeadership().then(this.onLeader);
3640
- }
3690
+ value: function () {
3691
+ var _startElector = _asyncToGenerator( _regeneratorRuntime.mark(function _callee3() {
3692
+ var broadcastChannelName;
3693
+ return _regeneratorRuntime.wrap(function _callee3$(_context6) {
3694
+ while (1) {
3695
+ switch (_context6.prev = _context6.next) {
3696
+ case 0:
3697
+ _context6.next = 2;
3698
+ return this.stopElector();
3699
+ case 2:
3700
+ if (ServiceManager.canUseLeaderElection()) {
3701
+ if (!this.channel) {
3702
+ broadcastChannelName = this.options.broadcastChannelName;
3703
+ this.channel = new BroadcastChannel(broadcastChannelName);
3704
+ }
3705
+ if (!this.elector) {
3706
+ this.elector = createLeaderElection(this.channel);
3707
+ this.elector.onduplicate = this.onLeaderDuplicate;
3708
+ this.elector.awaitLeadership().then(this.onLeader);
3709
+ }
3710
+ }
3711
+ case 3:
3712
+ case "end":
3713
+ return _context6.stop();
3714
+ }
3715
+ }
3716
+ }, _callee3, this);
3717
+ }));
3718
+ function startElector() {
3719
+ return _startElector.apply(this, arguments);
3641
3720
  }
3642
- }
3721
+ return startElector;
3722
+ }()
3643
3723
  }, {
3644
3724
  key: "stopElector",
3645
- value: function stopElector() {
3646
- var _a, _b;
3647
- if (this.elector) {
3648
- (_a = this.elector) === null || _a === void 0 ? void 0 : _a.die();
3649
- this.elector = undefined;
3650
- (_b = this.channel) === null || _b === void 0 ? void 0 : _b.close();
3651
- this.channel = undefined;
3725
+ value: function () {
3726
+ var _stopElector = _asyncToGenerator( _regeneratorRuntime.mark(function _callee4() {
3727
+ var _a, _b;
3728
+ return _regeneratorRuntime.wrap(function _callee4$(_context7) {
3729
+ while (1) {
3730
+ switch (_context7.prev = _context7.next) {
3731
+ case 0:
3732
+ if (!this.elector) {
3733
+ _context7.next = 7;
3734
+ break;
3735
+ }
3736
+ _context7.next = 3;
3737
+ return (_a = this.elector) === null || _a === void 0 ? void 0 : _a.die();
3738
+ case 3:
3739
+ this.elector = undefined;
3740
+ _context7.next = 6;
3741
+ return (_b = this.channel) === null || _b === void 0 ? void 0 : _b.close();
3742
+ case 6:
3743
+ this.channel = undefined;
3744
+ case 7:
3745
+ case "end":
3746
+ return _context7.stop();
3747
+ }
3748
+ }
3749
+ }, _callee4, this);
3750
+ }));
3751
+ function stopElector() {
3752
+ return _stopElector.apply(this, arguments);
3652
3753
  }
3653
- }
3754
+ return stopElector;
3755
+ }()
3654
3756
  }, {
3655
3757
  key: "createService",
3656
3758
  value: function createService(name) {
@@ -4756,7 +4858,7 @@ function mergeOptions(options, args) {
4756
4858
  }
4757
4859
  function buildOptions() {
4758
4860
  var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4759
- var _a;
4861
+ var _a, _b;
4760
4862
  assertValidConfig(args);
4761
4863
  args = mergeOptions(getDefaultOptions(), args);
4762
4864
  return removeNils({
@@ -4791,7 +4893,8 @@ function buildOptions() {
4791
4893
  recoveryToken: args.recoveryToken,
4792
4894
  activationToken: args.activationToken,
4793
4895
  idx: {
4794
- useGenericRemediator: !!((_a = args.idx) === null || _a === void 0 ? void 0 : _a.useGenericRemediator)
4896
+ useGenericRemediator: !!((_a = args.idx) === null || _a === void 0 ? void 0 : _a.useGenericRemediator),
4897
+ exchangeCodeForTokens: ((_b = args.idx) === null || _b === void 0 ? void 0 : _b.exchangeCodeForTokens) !== false
4795
4898
  },
4796
4899
  ignoreSignature: !!args.ignoreSignature,
4797
4900
  clientSecret: args.clientSecret
@@ -5159,7 +5262,7 @@ var generateDirectFetch = function generateDirectFetch(authClient, _ref) {
5159
5262
  });
5160
5263
  case 6:
5161
5264
  response = _context.sent;
5162
- return _context.abrupt("return", makeIdxState$1(authClient, _Object$assign({}, response), toPersist, true));
5265
+ return _context.abrupt("return", authClient.idx.makeIdxResponse(_Object$assign({}, response), toPersist, true));
5163
5266
  case 10:
5164
5267
  _context.prev = 10;
5165
5268
  _context.t0 = _context["catch"](3);
@@ -5172,7 +5275,7 @@ var generateDirectFetch = function generateDirectFetch(authClient, _ref) {
5172
5275
  _response = _context.t0.xhr;
5173
5276
  payload = _response.responseJSON || JSON.parse(_response.responseText);
5174
5277
  wwwAuthHeader = _response.headers['WWW-Authenticate'] || _response.headers['www-authenticate'];
5175
- idxResponse = makeIdxState$1(authClient, _Object$assign({}, payload), toPersist, false);
5278
+ idxResponse = authClient.idx.makeIdxResponse(_Object$assign({}, payload), toPersist, false);
5176
5279
  if (_response.status === 401 && wwwAuthHeader === 'Oktadevicejwt realm="Okta Device"') {
5177
5280
  idxResponse.stepUp = true;
5178
5281
  }
@@ -5399,9 +5502,7 @@ function validateVersionConfig(version) {
5399
5502
  }
5400
5503
  parsersForVersion(version);
5401
5504
  }
5402
- function makeIdxState(authClient, rawIdxResponse) {
5403
- var toPersist = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
5404
- var requestDidSucceed = arguments.length > 3 ? arguments[3] : undefined;
5505
+ function makeIdxState(authClient, rawIdxResponse, toPersist, requestDidSucceed) {
5405
5506
  var _a;
5406
5507
  var version = (_a = rawIdxResponse === null || rawIdxResponse === void 0 ? void 0 : rawIdxResponse.version) !== null && _a !== void 0 ? _a : IDX_API_VERSION;
5407
5508
  validateVersionConfig(version);
@@ -7254,52 +7355,6 @@ function hasValidInputValue(input, values) {
7254
7355
  return fn(input, values, false);
7255
7356
  }
7256
7357
 
7257
- function canProceed(authClient) {
7258
- var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
7259
- var meta = getSavedTransactionMeta(authClient, options);
7260
- return !!(meta || options.stateHandle);
7261
- }
7262
- function proceed(_x) {
7263
- return _proceed.apply(this, arguments);
7264
- }
7265
- function _proceed() {
7266
- _proceed = _asyncToGenerator( _regeneratorRuntime.mark(function _callee(authClient) {
7267
- var options,
7268
- flow,
7269
- state,
7270
- meta,
7271
- _args = arguments;
7272
- return _regeneratorRuntime.wrap(function _callee$(_context) {
7273
- while (1) {
7274
- switch (_context.prev = _context.next) {
7275
- case 0:
7276
- options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {};
7277
- if (canProceed(authClient, options)) {
7278
- _context.next = 3;
7279
- break;
7280
- }
7281
- throw new AuthSdkError('Unable to proceed: saved transaction could not be loaded');
7282
- case 3:
7283
- flow = options.flow, state = options.state;
7284
- if (!flow) {
7285
- meta = getSavedTransactionMeta(authClient, {
7286
- state: state
7287
- });
7288
- flow = meta === null || meta === void 0 ? void 0 : meta.flow;
7289
- }
7290
- return _context.abrupt("return", run(authClient, _Object$assign(_Object$assign({}, options), {
7291
- flow: flow
7292
- })));
7293
- case 6:
7294
- case "end":
7295
- return _context.stop();
7296
- }
7297
- }
7298
- }, _callee);
7299
- }));
7300
- return _proceed.apply(this, arguments);
7301
- }
7302
-
7303
7358
  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); }; }
7304
7359
  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; } }
7305
7360
  var GenericRemediator = function (_Remediator) {
@@ -7358,7 +7413,7 @@ var GenericRemediator = function (_Remediator) {
7358
7413
  while (1) {
7359
7414
  switch (_context3.prev = _context3.next) {
7360
7415
  case 0:
7361
- return _context3.abrupt("return", proceed(authClient, _Object$assign({
7416
+ return _context3.abrupt("return", authClient.idx.proceed(_Object$assign({
7362
7417
  step: name
7363
7418
  }, params)));
7364
7419
  case 1:
@@ -7575,7 +7630,7 @@ function getAvailableSteps(authClient, idxResponse, useGenericRemediator) {
7575
7630
  while (1) {
7576
7631
  switch (_context10.prev = _context10.next) {
7577
7632
  case 0:
7578
- return _context10.abrupt("return", proceed(authClient, {
7633
+ return _context10.abrupt("return", authClient.idx.proceed({
7579
7634
  actions: [{
7580
7635
  name: name,
7581
7636
  params: params
@@ -7961,7 +8016,7 @@ function _remediate() {
7961
8016
  options = _Object$assign(_Object$assign({}, options), {
7962
8017
  step: undefined
7963
8018
  });
7964
- if (!(options.useGenericRemediator && !idxResponse.interactionCode)) {
8019
+ if (!(options.useGenericRemediator && !idxResponse.interactionCode && !isTerminalResponse(idxResponse))) {
7965
8020
  _context4.next = 65;
7966
8021
  break;
7967
8022
  }
@@ -8078,7 +8133,7 @@ function getFlowSpecification(oktaAuth) {
8078
8133
  }
8079
8134
 
8080
8135
  function initializeValues(options) {
8081
- var knownOptions = ['flow', 'remediators', 'actions', 'withCredentials', 'step', 'shouldProceedWithEmailAuthenticator'];
8136
+ var knownOptions = ['flow', 'remediators', 'actions', 'withCredentials', 'step', 'useGenericRemediator', 'exchangeCodeForTokens', 'shouldProceedWithEmailAuthenticator'];
8082
8137
  var values = _Object$assign({}, options);
8083
8138
  knownOptions.forEach(function (option) {
8084
8139
  delete values[option];
@@ -8086,13 +8141,13 @@ function initializeValues(options) {
8086
8141
  return values;
8087
8142
  }
8088
8143
  function initializeData(authClient, data) {
8089
- var _a;
8090
8144
  var options = data.options;
8091
- var flow = options.flow,
8092
- withCredentials = options.withCredentials,
8093
- remediators = options.remediators,
8094
- actions = options.actions,
8095
- useGenericRemediator = options.useGenericRemediator;
8145
+ options = _Object$assign(_Object$assign({}, authClient.options.idx), options);
8146
+ var _options = options,
8147
+ flow = _options.flow,
8148
+ withCredentials = _options.withCredentials,
8149
+ remediators = _options.remediators,
8150
+ actions = _options.actions;
8096
8151
  var status = IdxStatus.PENDING;
8097
8152
  flow = flow || authClient.idx.getFlow() || 'default';
8098
8153
  if (flow) {
@@ -8102,14 +8157,12 @@ function initializeData(authClient, data) {
8102
8157
  remediators = remediators || flowSpec.remediators;
8103
8158
  actions = actions || flowSpec.actions;
8104
8159
  }
8105
- useGenericRemediator = useGenericRemediator || ((_a = authClient.options.idx) === null || _a === void 0 ? void 0 : _a.useGenericRemediator) || false;
8106
8160
  return _Object$assign(_Object$assign({}, data), {
8107
8161
  options: _Object$assign(_Object$assign({}, options), {
8108
8162
  flow: flow,
8109
8163
  withCredentials: withCredentials,
8110
8164
  remediators: remediators,
8111
- actions: actions,
8112
- useGenericRemediator: useGenericRemediator
8165
+ actions: actions
8113
8166
  }),
8114
8167
  status: status
8115
8168
  });
@@ -8618,6 +8671,52 @@ function _handleEmailVerifyCallback() {
8618
8671
  return _handleEmailVerifyCallback.apply(this, arguments);
8619
8672
  }
8620
8673
 
8674
+ function canProceed(authClient) {
8675
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
8676
+ var meta = getSavedTransactionMeta(authClient, options);
8677
+ return !!(meta || options.stateHandle);
8678
+ }
8679
+ function proceed(_x) {
8680
+ return _proceed.apply(this, arguments);
8681
+ }
8682
+ function _proceed() {
8683
+ _proceed = _asyncToGenerator( _regeneratorRuntime.mark(function _callee(authClient) {
8684
+ var options,
8685
+ flow,
8686
+ state,
8687
+ meta,
8688
+ _args = arguments;
8689
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
8690
+ while (1) {
8691
+ switch (_context.prev = _context.next) {
8692
+ case 0:
8693
+ options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {};
8694
+ if (canProceed(authClient, options)) {
8695
+ _context.next = 3;
8696
+ break;
8697
+ }
8698
+ throw new AuthSdkError('Unable to proceed: saved transaction could not be loaded');
8699
+ case 3:
8700
+ flow = options.flow, state = options.state;
8701
+ if (!flow) {
8702
+ meta = getSavedTransactionMeta(authClient, {
8703
+ state: state
8704
+ });
8705
+ flow = meta === null || meta === void 0 ? void 0 : meta.flow;
8706
+ }
8707
+ return _context.abrupt("return", run(authClient, _Object$assign(_Object$assign({}, options), {
8708
+ flow: flow
8709
+ })));
8710
+ case 6:
8711
+ case "end":
8712
+ return _context.stop();
8713
+ }
8714
+ }
8715
+ }, _callee);
8716
+ }));
8717
+ return _proceed.apply(this, arguments);
8718
+ }
8719
+
8621
8720
  function poll(_x) {
8622
8721
  return _poll.apply(this, arguments);
8623
8722
  }
@@ -8906,7 +9005,7 @@ function _unlockAccount() {
8906
9005
  var OktaUserAgent = function () {
8907
9006
  function OktaUserAgent() {
8908
9007
  _classCallCheck(this, OktaUserAgent);
8909
- this.environments = ["okta-auth-js/".concat("6.5.3")];
9008
+ this.environments = ["okta-auth-js/".concat("6.6.0")];
8910
9009
  }
8911
9010
  _createClass(OktaUserAgent, [{
8912
9011
  key: "addEnvironment",
@@ -8924,7 +9023,7 @@ var OktaUserAgent = function () {
8924
9023
  }, {
8925
9024
  key: "getVersion",
8926
9025
  value: function getVersion() {
8927
- return "6.5.3";
9026
+ return "6.6.0";
8928
9027
  }
8929
9028
  }, {
8930
9029
  key: "maybeAddNodeEnvironment",
@@ -8959,7 +9058,13 @@ var OktaAuth = function () {
8959
9058
  return storage.get(name);
8960
9059
  }
8961
9060
  }),
8962
- introspect: introspectAuthn.bind(null, this)
9061
+ introspect: introspectAuthn.bind(null, this),
9062
+ createTransaction: function createTransaction(res) {
9063
+ return new AuthTransaction(_this, res);
9064
+ },
9065
+ postToTransaction: function postToTransaction$1(url, args, options) {
9066
+ return postToTransaction(_this, url, args, options);
9067
+ }
8963
9068
  };
8964
9069
  this.pkce = {
8965
9070
  DEFAULT_CODE_CHALLENGE_METHOD: PKCE.DEFAULT_CODE_CHALLENGE_METHOD,
@@ -9025,24 +9130,21 @@ var OktaAuth = function () {
9025
9130
  renew: renewToken.bind(null, this),
9026
9131
  renewTokensWithRefresh: renewTokensWithRefresh.bind(null, this),
9027
9132
  renewTokens: renewTokens.bind(null, this),
9028
- getUserInfo: getUserInfo.bind(null, this),
9133
+ getUserInfo: function getUserInfo$1(accessTokenObject, idTokenObject) {
9134
+ return getUserInfo(_this, accessTokenObject, idTokenObject);
9135
+ },
9029
9136
  verify: verifyToken.bind(null, this),
9030
9137
  isLoginRedirect: isLoginRedirect.bind(null, this)
9031
9138
  };
9032
- var syncMethods = [
9033
- 'decode', 'isLoginRedirect',
9034
- 'getWithRedirect', 'parseFromUrl'];
9035
- _Object$keys(this.token).forEach(function (key) {
9036
- if (_indexOfInstanceProperty(syncMethods).call(syncMethods, key) >= 0) {
9037
- return;
9038
- }
9039
- var method = _this.token[key];
9040
- _this.token[key] = PromiseQueue.prototype.push.bind(_this._tokenQueue, method, null);
9139
+ var toWrap = ['getWithoutPrompt', 'getWithPopup', 'revoke', 'renew', 'renewTokensWithRefresh', 'renewTokens'];
9140
+ toWrap.forEach(function (key) {
9141
+ _this.token[key] = useQueue(_this.token[key]);
9041
9142
  });
9042
9143
  var boundStartTransaction = startTransaction.bind(null, this);
9043
9144
  this.idx = {
9044
9145
  interact: interact.bind(null, this),
9045
9146
  introspect: introspect.bind(null, this),
9147
+ makeIdxResponse: makeIdxState.bind(null, this),
9046
9148
  authenticate: authenticate.bind(null, this),
9047
9149
  register: register.bind(null, this),
9048
9150
  start: boundStartTransaction,
@@ -9084,19 +9186,53 @@ var OktaAuth = function () {
9084
9186
  }
9085
9187
  _createClass(OktaAuth, [{
9086
9188
  key: "start",
9087
- value: function start() {
9088
- this.tokenManager.start();
9089
- if (!this.token.isLoginRedirect()) {
9090
- this.authStateManager.updateAuthState();
9189
+ value: function () {
9190
+ var _start = _asyncToGenerator( _regeneratorRuntime.mark(function _callee() {
9191
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
9192
+ while (1) {
9193
+ switch (_context.prev = _context.next) {
9194
+ case 0:
9195
+ this.tokenManager.start();
9196
+ if (!this.token.isLoginRedirect()) {
9197
+ this.authStateManager.updateAuthState();
9198
+ }
9199
+ _context.next = 4;
9200
+ return this.serviceManager.start();
9201
+ case 4:
9202
+ case "end":
9203
+ return _context.stop();
9204
+ }
9205
+ }
9206
+ }, _callee, this);
9207
+ }));
9208
+ function start() {
9209
+ return _start.apply(this, arguments);
9091
9210
  }
9092
- this.serviceManager.start();
9093
- }
9211
+ return start;
9212
+ }()
9094
9213
  }, {
9095
9214
  key: "stop",
9096
- value: function stop() {
9097
- this.tokenManager.stop();
9098
- this.serviceManager.stop();
9099
- }
9215
+ value: function () {
9216
+ var _stop = _asyncToGenerator( _regeneratorRuntime.mark(function _callee2() {
9217
+ return _regeneratorRuntime.wrap(function _callee2$(_context2) {
9218
+ while (1) {
9219
+ switch (_context2.prev = _context2.next) {
9220
+ case 0:
9221
+ this.tokenManager.stop();
9222
+ _context2.next = 3;
9223
+ return this.serviceManager.stop();
9224
+ case 3:
9225
+ case "end":
9226
+ return _context2.stop();
9227
+ }
9228
+ }
9229
+ }, _callee2, this);
9230
+ }));
9231
+ function stop() {
9232
+ return _stop.apply(this, arguments);
9233
+ }
9234
+ return stop;
9235
+ }()
9100
9236
  }, {
9101
9237
  key: "setHeaders",
9102
9238
  value: function setHeaders(headers) {
@@ -9105,18 +9241,18 @@ var OktaAuth = function () {
9105
9241
  }, {
9106
9242
  key: "signIn",
9107
9243
  value: function () {
9108
- var _signIn = _asyncToGenerator( _regeneratorRuntime.mark(function _callee(opts) {
9109
- return _regeneratorRuntime.wrap(function _callee$(_context) {
9244
+ var _signIn = _asyncToGenerator( _regeneratorRuntime.mark(function _callee3(opts) {
9245
+ return _regeneratorRuntime.wrap(function _callee3$(_context3) {
9110
9246
  while (1) {
9111
- switch (_context.prev = _context.next) {
9247
+ switch (_context3.prev = _context3.next) {
9112
9248
  case 0:
9113
- return _context.abrupt("return", this.signInWithCredentials(opts));
9249
+ return _context3.abrupt("return", this.signInWithCredentials(opts));
9114
9250
  case 1:
9115
9251
  case "end":
9116
- return _context.stop();
9252
+ return _context3.stop();
9117
9253
  }
9118
9254
  }
9119
- }, _callee, this);
9255
+ }, _callee3, this);
9120
9256
  }));
9121
9257
  function signIn(_x) {
9122
9258
  return _signIn.apply(this, arguments);
@@ -9126,12 +9262,12 @@ var OktaAuth = function () {
9126
9262
  }, {
9127
9263
  key: "signInWithCredentials",
9128
9264
  value: function () {
9129
- var _signInWithCredentials = _asyncToGenerator( _regeneratorRuntime.mark(function _callee2(opts) {
9265
+ var _signInWithCredentials = _asyncToGenerator( _regeneratorRuntime.mark(function _callee4(opts) {
9130
9266
  var _this2 = this;
9131
9267
  var _postToTransaction;
9132
- return _regeneratorRuntime.wrap(function _callee2$(_context2) {
9268
+ return _regeneratorRuntime.wrap(function _callee4$(_context4) {
9133
9269
  while (1) {
9134
- switch (_context2.prev = _context2.next) {
9270
+ switch (_context4.prev = _context4.next) {
9135
9271
  case 0:
9136
9272
  opts = clone(opts || {});
9137
9273
  _postToTransaction = function _postToTransaction(options) {
@@ -9139,12 +9275,12 @@ var OktaAuth = function () {
9139
9275
  return postToTransaction(_this2, '/api/v1/authn', opts, options);
9140
9276
  };
9141
9277
  if (opts.sendFingerprint) {
9142
- _context2.next = 4;
9278
+ _context4.next = 4;
9143
9279
  break;
9144
9280
  }
9145
- return _context2.abrupt("return", _postToTransaction());
9281
+ return _context4.abrupt("return", _postToTransaction());
9146
9282
  case 4:
9147
- return _context2.abrupt("return", this.fingerprint().then(function (fingerprint) {
9283
+ return _context4.abrupt("return", this.fingerprint().then(function (fingerprint) {
9148
9284
  return _postToTransaction({
9149
9285
  headers: {
9150
9286
  'X-Device-Fingerprint': fingerprint
@@ -9153,10 +9289,10 @@ var OktaAuth = function () {
9153
9289
  }));
9154
9290
  case 5:
9155
9291
  case "end":
9156
- return _context2.stop();
9292
+ return _context4.stop();
9157
9293
  }
9158
9294
  }
9159
- }, _callee2, this);
9295
+ }, _callee4, this);
9160
9296
  }));
9161
9297
  function signInWithCredentials(_x2) {
9162
9298
  return _signInWithCredentials.apply(this, arguments);
@@ -9166,44 +9302,44 @@ var OktaAuth = function () {
9166
9302
  }, {
9167
9303
  key: "signInWithRedirect",
9168
9304
  value: function () {
9169
- var _signInWithRedirect = _asyncToGenerator( _regeneratorRuntime.mark(function _callee3() {
9305
+ var _signInWithRedirect = _asyncToGenerator( _regeneratorRuntime.mark(function _callee5() {
9170
9306
  var opts,
9171
9307
  originalUri,
9172
9308
  additionalParams,
9173
9309
  params,
9174
- _args3 = arguments;
9175
- return _regeneratorRuntime.wrap(function _callee3$(_context3) {
9310
+ _args5 = arguments;
9311
+ return _regeneratorRuntime.wrap(function _callee5$(_context5) {
9176
9312
  while (1) {
9177
- switch (_context3.prev = _context3.next) {
9313
+ switch (_context5.prev = _context5.next) {
9178
9314
  case 0:
9179
- opts = _args3.length > 0 && _args3[0] !== undefined ? _args3[0] : {};
9315
+ opts = _args5.length > 0 && _args5[0] !== undefined ? _args5[0] : {};
9180
9316
  originalUri = opts.originalUri, additionalParams = __rest(opts, ["originalUri"]);
9181
9317
  if (!this._pending.handleLogin) {
9182
- _context3.next = 4;
9318
+ _context5.next = 4;
9183
9319
  break;
9184
9320
  }
9185
- return _context3.abrupt("return");
9321
+ return _context5.abrupt("return");
9186
9322
  case 4:
9187
9323
  this._pending.handleLogin = true;
9188
- _context3.prev = 5;
9324
+ _context5.prev = 5;
9189
9325
  if (originalUri) {
9190
9326
  this.setOriginalUri(originalUri);
9191
9327
  }
9192
9328
  params = _Object$assign({
9193
9329
  scopes: this.options.scopes || ['openid', 'email', 'profile']
9194
9330
  }, additionalParams);
9195
- _context3.next = 10;
9331
+ _context5.next = 10;
9196
9332
  return this.token.getWithRedirect(params);
9197
9333
  case 10:
9198
- _context3.prev = 10;
9334
+ _context5.prev = 10;
9199
9335
  this._pending.handleLogin = false;
9200
- return _context3.finish(10);
9336
+ return _context5.finish(10);
9201
9337
  case 13:
9202
9338
  case "end":
9203
- return _context3.stop();
9339
+ return _context5.stop();
9204
9340
  }
9205
9341
  }
9206
- }, _callee3, this, [[5,, 10, 13]]);
9342
+ }, _callee5, this, [[5,, 10, 13]]);
9207
9343
  }));
9208
9344
  function signInWithRedirect() {
9209
9345
  return _signInWithRedirect.apply(this, arguments);
@@ -9215,18 +9351,18 @@ var OktaAuth = function () {
9215
9351
  value: function closeSession() {
9216
9352
  var _this3 = this;
9217
9353
  return this.session.close()
9218
- .then( _asyncToGenerator( _regeneratorRuntime.mark(function _callee4() {
9219
- return _regeneratorRuntime.wrap(function _callee4$(_context4) {
9354
+ .then( _asyncToGenerator( _regeneratorRuntime.mark(function _callee6() {
9355
+ return _regeneratorRuntime.wrap(function _callee6$(_context6) {
9220
9356
  while (1) {
9221
- switch (_context4.prev = _context4.next) {
9357
+ switch (_context6.prev = _context6.next) {
9222
9358
  case 0:
9223
9359
  _this3.tokenManager.clear();
9224
9360
  case 1:
9225
9361
  case "end":
9226
- return _context4.stop();
9362
+ return _context6.stop();
9227
9363
  }
9228
9364
  }
9229
- }, _callee4);
9365
+ }, _callee6);
9230
9366
  }))).catch(function (e) {
9231
9367
  if (e.name === 'AuthApiError' && e.errorCode === 'E0000007') {
9232
9368
  return null;
@@ -9237,36 +9373,36 @@ var OktaAuth = function () {
9237
9373
  }, {
9238
9374
  key: "revokeAccessToken",
9239
9375
  value: function () {
9240
- var _revokeAccessToken = _asyncToGenerator( _regeneratorRuntime.mark(function _callee5(accessToken) {
9376
+ var _revokeAccessToken = _asyncToGenerator( _regeneratorRuntime.mark(function _callee7(accessToken) {
9241
9377
  var accessTokenKey;
9242
- return _regeneratorRuntime.wrap(function _callee5$(_context5) {
9378
+ return _regeneratorRuntime.wrap(function _callee7$(_context7) {
9243
9379
  while (1) {
9244
- switch (_context5.prev = _context5.next) {
9380
+ switch (_context7.prev = _context7.next) {
9245
9381
  case 0:
9246
9382
  if (accessToken) {
9247
- _context5.next = 6;
9383
+ _context7.next = 6;
9248
9384
  break;
9249
9385
  }
9250
- _context5.next = 3;
9386
+ _context7.next = 3;
9251
9387
  return this.tokenManager.getTokens();
9252
9388
  case 3:
9253
- accessToken = _context5.sent.accessToken;
9389
+ accessToken = _context7.sent.accessToken;
9254
9390
  accessTokenKey = this.tokenManager.getStorageKeyByType('accessToken');
9255
9391
  this.tokenManager.remove(accessTokenKey);
9256
9392
  case 6:
9257
9393
  if (accessToken) {
9258
- _context5.next = 8;
9394
+ _context7.next = 8;
9259
9395
  break;
9260
9396
  }
9261
- return _context5.abrupt("return", _Promise.resolve(null));
9397
+ return _context7.abrupt("return", _Promise.resolve(null));
9262
9398
  case 8:
9263
- return _context5.abrupt("return", this.token.revoke(accessToken));
9399
+ return _context7.abrupt("return", this.token.revoke(accessToken));
9264
9400
  case 9:
9265
9401
  case "end":
9266
- return _context5.stop();
9402
+ return _context7.stop();
9267
9403
  }
9268
9404
  }
9269
- }, _callee5, this);
9405
+ }, _callee7, this);
9270
9406
  }));
9271
9407
  function revokeAccessToken(_x3) {
9272
9408
  return _revokeAccessToken.apply(this, arguments);
@@ -9276,36 +9412,36 @@ var OktaAuth = function () {
9276
9412
  }, {
9277
9413
  key: "revokeRefreshToken",
9278
9414
  value: function () {
9279
- var _revokeRefreshToken = _asyncToGenerator( _regeneratorRuntime.mark(function _callee6(refreshToken) {
9415
+ var _revokeRefreshToken = _asyncToGenerator( _regeneratorRuntime.mark(function _callee8(refreshToken) {
9280
9416
  var refreshTokenKey;
9281
- return _regeneratorRuntime.wrap(function _callee6$(_context6) {
9417
+ return _regeneratorRuntime.wrap(function _callee8$(_context8) {
9282
9418
  while (1) {
9283
- switch (_context6.prev = _context6.next) {
9419
+ switch (_context8.prev = _context8.next) {
9284
9420
  case 0:
9285
9421
  if (refreshToken) {
9286
- _context6.next = 6;
9422
+ _context8.next = 6;
9287
9423
  break;
9288
9424
  }
9289
- _context6.next = 3;
9425
+ _context8.next = 3;
9290
9426
  return this.tokenManager.getTokens();
9291
9427
  case 3:
9292
- refreshToken = _context6.sent.refreshToken;
9428
+ refreshToken = _context8.sent.refreshToken;
9293
9429
  refreshTokenKey = this.tokenManager.getStorageKeyByType('refreshToken');
9294
9430
  this.tokenManager.remove(refreshTokenKey);
9295
9431
  case 6:
9296
9432
  if (refreshToken) {
9297
- _context6.next = 8;
9433
+ _context8.next = 8;
9298
9434
  break;
9299
9435
  }
9300
- return _context6.abrupt("return", _Promise.resolve(null));
9436
+ return _context8.abrupt("return", _Promise.resolve(null));
9301
9437
  case 8:
9302
- return _context6.abrupt("return", this.token.revoke(refreshToken));
9438
+ return _context8.abrupt("return", this.token.revoke(refreshToken));
9303
9439
  case 9:
9304
9440
  case "end":
9305
- return _context6.stop();
9441
+ return _context8.stop();
9306
9442
  }
9307
9443
  }
9308
- }, _callee6, this);
9444
+ }, _callee8, this);
9309
9445
  }));
9310
9446
  function revokeRefreshToken(_x4) {
9311
9447
  return _revokeRefreshToken.apply(this, arguments);
@@ -9342,11 +9478,11 @@ var OktaAuth = function () {
9342
9478
  }, {
9343
9479
  key: "signOut",
9344
9480
  value: function () {
9345
- var _signOut = _asyncToGenerator( _regeneratorRuntime.mark(function _callee7(options) {
9481
+ var _signOut = _asyncToGenerator( _regeneratorRuntime.mark(function _callee9(options) {
9346
9482
  var defaultUri, currentUri, postLogoutRedirectUri, accessToken, refreshToken, revokeAccessToken, revokeRefreshToken, logoutUri;
9347
- return _regeneratorRuntime.wrap(function _callee7$(_context7) {
9483
+ return _regeneratorRuntime.wrap(function _callee9$(_context9) {
9348
9484
  while (1) {
9349
- switch (_context7.prev = _context7.next) {
9485
+ switch (_context9.prev = _context9.next) {
9350
9486
  case 0:
9351
9487
  options = _Object$assign({}, options);
9352
9488
  defaultUri = window.location.origin;
@@ -9366,27 +9502,27 @@ var OktaAuth = function () {
9366
9502
  options.idToken = this.tokenManager.getTokensSync().idToken;
9367
9503
  }
9368
9504
  if (!(revokeRefreshToken && refreshToken)) {
9369
- _context7.next = 14;
9505
+ _context9.next = 14;
9370
9506
  break;
9371
9507
  }
9372
- _context7.next = 14;
9508
+ _context9.next = 14;
9373
9509
  return this.revokeRefreshToken(refreshToken);
9374
9510
  case 14:
9375
9511
  if (!(revokeAccessToken && accessToken)) {
9376
- _context7.next = 17;
9512
+ _context9.next = 17;
9377
9513
  break;
9378
9514
  }
9379
- _context7.next = 17;
9515
+ _context9.next = 17;
9380
9516
  return this.revokeAccessToken(accessToken);
9381
9517
  case 17:
9382
9518
  logoutUri = this.getSignOutRedirectUrl(_Object$assign(_Object$assign({}, options), {
9383
9519
  postLogoutRedirectUri: postLogoutRedirectUri
9384
9520
  }));
9385
9521
  if (logoutUri) {
9386
- _context7.next = 22;
9522
+ _context9.next = 22;
9387
9523
  break;
9388
9524
  }
9389
- return _context7.abrupt("return", this.closeSession()
9525
+ return _context9.abrupt("return", this.closeSession()
9390
9526
  .
9391
9527
  then(function () {
9392
9528
  if (postLogoutRedirectUri === currentUri) {
@@ -9404,10 +9540,10 @@ var OktaAuth = function () {
9404
9540
  window.location.assign(logoutUri);
9405
9541
  case 24:
9406
9542
  case "end":
9407
- return _context7.stop();
9543
+ return _context9.stop();
9408
9544
  }
9409
9545
  }
9410
- }, _callee7, this);
9546
+ }, _callee9, this);
9411
9547
  }));
9412
9548
  function signOut(_x5) {
9413
9549
  return _signOut.apply(this, arguments);
@@ -9428,7 +9564,7 @@ var OktaAuth = function () {
9428
9564
  }, {
9429
9565
  key: "isAuthenticated",
9430
9566
  value: function () {
9431
- var _isAuthenticated = _asyncToGenerator( _regeneratorRuntime.mark(function _callee8() {
9567
+ var _isAuthenticated = _asyncToGenerator( _regeneratorRuntime.mark(function _callee10() {
9432
9568
  var options,
9433
9569
  _this$tokenManager$ge,
9434
9570
  autoRenew,
@@ -9439,37 +9575,37 @@ var OktaAuth = function () {
9439
9575
  accessToken,
9440
9576
  _this$tokenManager$ge3,
9441
9577
  idToken,
9442
- _args8 = arguments;
9443
- return _regeneratorRuntime.wrap(function _callee8$(_context8) {
9578
+ _args10 = arguments;
9579
+ return _regeneratorRuntime.wrap(function _callee10$(_context10) {
9444
9580
  while (1) {
9445
- switch (_context8.prev = _context8.next) {
9581
+ switch (_context10.prev = _context10.next) {
9446
9582
  case 0:
9447
- options = _args8.length > 0 && _args8[0] !== undefined ? _args8[0] : {};
9583
+ options = _args10.length > 0 && _args10[0] !== undefined ? _args10[0] : {};
9448
9584
  _this$tokenManager$ge = this.tokenManager.getOptions(), autoRenew = _this$tokenManager$ge.autoRenew, autoRemove = _this$tokenManager$ge.autoRemove;
9449
9585
  shouldRenew = options.onExpiredToken ? options.onExpiredToken === 'renew' : autoRenew;
9450
9586
  shouldRemove = options.onExpiredToken ? options.onExpiredToken === 'remove' : autoRemove;
9451
9587
  _this$tokenManager$ge2 = this.tokenManager.getTokensSync(), accessToken = _this$tokenManager$ge2.accessToken;
9452
9588
  if (!(accessToken && this.tokenManager.hasExpired(accessToken))) {
9453
- _context8.next = 19;
9589
+ _context10.next = 19;
9454
9590
  break;
9455
9591
  }
9456
9592
  accessToken = undefined;
9457
9593
  if (!shouldRenew) {
9458
- _context8.next = 18;
9594
+ _context10.next = 18;
9459
9595
  break;
9460
9596
  }
9461
- _context8.prev = 8;
9462
- _context8.next = 11;
9597
+ _context10.prev = 8;
9598
+ _context10.next = 11;
9463
9599
  return this.tokenManager.renew('accessToken');
9464
9600
  case 11:
9465
- accessToken = _context8.sent;
9466
- _context8.next = 16;
9601
+ accessToken = _context10.sent;
9602
+ _context10.next = 16;
9467
9603
  break;
9468
9604
  case 14:
9469
- _context8.prev = 14;
9470
- _context8.t0 = _context8["catch"](8);
9605
+ _context10.prev = 14;
9606
+ _context10.t0 = _context10["catch"](8);
9471
9607
  case 16:
9472
- _context8.next = 19;
9608
+ _context10.next = 19;
9473
9609
  break;
9474
9610
  case 18:
9475
9611
  if (shouldRemove) {
@@ -9478,39 +9614,39 @@ var OktaAuth = function () {
9478
9614
  case 19:
9479
9615
  _this$tokenManager$ge3 = this.tokenManager.getTokensSync(), idToken = _this$tokenManager$ge3.idToken;
9480
9616
  if (!(idToken && this.tokenManager.hasExpired(idToken))) {
9481
- _context8.next = 34;
9617
+ _context10.next = 34;
9482
9618
  break;
9483
9619
  }
9484
9620
  idToken = undefined;
9485
9621
  if (!shouldRenew) {
9486
- _context8.next = 33;
9622
+ _context10.next = 33;
9487
9623
  break;
9488
9624
  }
9489
- _context8.prev = 23;
9490
- _context8.next = 26;
9625
+ _context10.prev = 23;
9626
+ _context10.next = 26;
9491
9627
  return this.tokenManager.renew('idToken');
9492
9628
  case 26:
9493
- idToken = _context8.sent;
9494
- _context8.next = 31;
9629
+ idToken = _context10.sent;
9630
+ _context10.next = 31;
9495
9631
  break;
9496
9632
  case 29:
9497
- _context8.prev = 29;
9498
- _context8.t1 = _context8["catch"](23);
9633
+ _context10.prev = 29;
9634
+ _context10.t1 = _context10["catch"](23);
9499
9635
  case 31:
9500
- _context8.next = 34;
9636
+ _context10.next = 34;
9501
9637
  break;
9502
9638
  case 33:
9503
9639
  if (shouldRemove) {
9504
9640
  this.tokenManager.remove('idToken');
9505
9641
  }
9506
9642
  case 34:
9507
- return _context8.abrupt("return", !!(accessToken && idToken));
9643
+ return _context10.abrupt("return", !!(accessToken && idToken));
9508
9644
  case 35:
9509
9645
  case "end":
9510
- return _context8.stop();
9646
+ return _context10.stop();
9511
9647
  }
9512
9648
  }
9513
- }, _callee8, this, [[8, 14], [23, 29]]);
9649
+ }, _callee10, this, [[8, 14], [23, 29]]);
9514
9650
  }));
9515
9651
  function isAuthenticated() {
9516
9652
  return _isAuthenticated.apply(this, arguments);
@@ -9520,20 +9656,20 @@ var OktaAuth = function () {
9520
9656
  }, {
9521
9657
  key: "getUser",
9522
9658
  value: function () {
9523
- var _getUser = _asyncToGenerator( _regeneratorRuntime.mark(function _callee9() {
9659
+ var _getUser = _asyncToGenerator( _regeneratorRuntime.mark(function _callee11() {
9524
9660
  var _this$tokenManager$ge4, idToken, accessToken;
9525
- return _regeneratorRuntime.wrap(function _callee9$(_context9) {
9661
+ return _regeneratorRuntime.wrap(function _callee11$(_context11) {
9526
9662
  while (1) {
9527
- switch (_context9.prev = _context9.next) {
9663
+ switch (_context11.prev = _context11.next) {
9528
9664
  case 0:
9529
9665
  _this$tokenManager$ge4 = this.tokenManager.getTokensSync(), idToken = _this$tokenManager$ge4.idToken, accessToken = _this$tokenManager$ge4.accessToken;
9530
- return _context9.abrupt("return", this.token.getUserInfo(accessToken, idToken));
9666
+ return _context11.abrupt("return", this.token.getUserInfo(accessToken, idToken));
9531
9667
  case 2:
9532
9668
  case "end":
9533
- return _context9.stop();
9669
+ return _context11.stop();
9534
9670
  }
9535
9671
  }
9536
- }, _callee9, this);
9672
+ }, _callee11, this);
9537
9673
  }));
9538
9674
  function getUser() {
9539
9675
  return _getUser.apply(this, arguments);
@@ -9564,24 +9700,24 @@ var OktaAuth = function () {
9564
9700
  }, {
9565
9701
  key: "storeTokensFromRedirect",
9566
9702
  value: function () {
9567
- var _storeTokensFromRedirect = _asyncToGenerator( _regeneratorRuntime.mark(function _callee10() {
9703
+ var _storeTokensFromRedirect = _asyncToGenerator( _regeneratorRuntime.mark(function _callee12() {
9568
9704
  var _yield$this$token$par, tokens;
9569
- return _regeneratorRuntime.wrap(function _callee10$(_context10) {
9705
+ return _regeneratorRuntime.wrap(function _callee12$(_context12) {
9570
9706
  while (1) {
9571
- switch (_context10.prev = _context10.next) {
9707
+ switch (_context12.prev = _context12.next) {
9572
9708
  case 0:
9573
- _context10.next = 2;
9709
+ _context12.next = 2;
9574
9710
  return this.token.parseFromUrl();
9575
9711
  case 2:
9576
- _yield$this$token$par = _context10.sent;
9712
+ _yield$this$token$par = _context12.sent;
9577
9713
  tokens = _yield$this$token$par.tokens;
9578
9714
  this.tokenManager.setTokens(tokens);
9579
9715
  case 5:
9580
9716
  case "end":
9581
- return _context10.stop();
9717
+ return _context12.stop();
9582
9718
  }
9583
9719
  }
9584
- }, _callee10, this);
9720
+ }, _callee12, this);
9585
9721
  }));
9586
9722
  function storeTokensFromRedirect() {
9587
9723
  return _storeTokensFromRedirect.apply(this, arguments);
@@ -9632,64 +9768,64 @@ var OktaAuth = function () {
9632
9768
  }, {
9633
9769
  key: "handleLoginRedirect",
9634
9770
  value: function () {
9635
- var _handleLoginRedirect = _asyncToGenerator( _regeneratorRuntime.mark(function _callee11(tokens, originalUri) {
9771
+ var _handleLoginRedirect = _asyncToGenerator( _regeneratorRuntime.mark(function _callee13(tokens, originalUri) {
9636
9772
  var state, oAuthResponse, restoreOriginalUri;
9637
- return _regeneratorRuntime.wrap(function _callee11$(_context11) {
9773
+ return _regeneratorRuntime.wrap(function _callee13$(_context13) {
9638
9774
  while (1) {
9639
- switch (_context11.prev = _context11.next) {
9775
+ switch (_context13.prev = _context13.next) {
9640
9776
  case 0:
9641
9777
  state = this.options.state;
9642
9778
  if (!tokens) {
9643
- _context11.next = 6;
9779
+ _context13.next = 6;
9644
9780
  break;
9645
9781
  }
9646
9782
  this.tokenManager.setTokens(tokens);
9647
9783
  originalUri = originalUri || this.getOriginalUri(this.options.state);
9648
- _context11.next = 25;
9784
+ _context13.next = 25;
9649
9785
  break;
9650
9786
  case 6:
9651
9787
  if (!this.isLoginRedirect()) {
9652
- _context11.next = 24;
9788
+ _context13.next = 24;
9653
9789
  break;
9654
9790
  }
9655
- _context11.prev = 7;
9656
- _context11.next = 10;
9791
+ _context13.prev = 7;
9792
+ _context13.next = 10;
9657
9793
  return parseOAuthResponseFromUrl(this, {});
9658
9794
  case 10:
9659
- oAuthResponse = _context11.sent;
9795
+ oAuthResponse = _context13.sent;
9660
9796
  state = oAuthResponse.state;
9661
9797
  originalUri = originalUri || this.getOriginalUri(state);
9662
- _context11.next = 15;
9798
+ _context13.next = 15;
9663
9799
  return this.storeTokensFromRedirect();
9664
9800
  case 15:
9665
- _context11.next = 22;
9801
+ _context13.next = 22;
9666
9802
  break;
9667
9803
  case 17:
9668
- _context11.prev = 17;
9669
- _context11.t0 = _context11["catch"](7);
9670
- _context11.next = 21;
9804
+ _context13.prev = 17;
9805
+ _context13.t0 = _context13["catch"](7);
9806
+ _context13.next = 21;
9671
9807
  return this.authStateManager.updateAuthState();
9672
9808
  case 21:
9673
- throw _context11.t0;
9809
+ throw _context13.t0;
9674
9810
  case 22:
9675
- _context11.next = 25;
9811
+ _context13.next = 25;
9676
9812
  break;
9677
9813
  case 24:
9678
- return _context11.abrupt("return");
9814
+ return _context13.abrupt("return");
9679
9815
  case 25:
9680
- _context11.next = 27;
9816
+ _context13.next = 27;
9681
9817
  return this.authStateManager.updateAuthState();
9682
9818
  case 27:
9683
9819
  this.removeOriginalUri(state);
9684
9820
  restoreOriginalUri = this.options.restoreOriginalUri;
9685
9821
  if (!restoreOriginalUri) {
9686
- _context11.next = 34;
9822
+ _context13.next = 34;
9687
9823
  break;
9688
9824
  }
9689
- _context11.next = 32;
9825
+ _context13.next = 32;
9690
9826
  return restoreOriginalUri(this, originalUri);
9691
9827
  case 32:
9692
- _context11.next = 35;
9828
+ _context13.next = 35;
9693
9829
  break;
9694
9830
  case 34:
9695
9831
  if (originalUri) {
@@ -9697,10 +9833,10 @@ var OktaAuth = function () {
9697
9833
  }
9698
9834
  case 35:
9699
9835
  case "end":
9700
- return _context11.stop();
9836
+ return _context13.stop();
9701
9837
  }
9702
9838
  }
9703
- }, _callee11, this, [[7, 17]]);
9839
+ }, _callee13, this, [[7, 17]]);
9704
9840
  }));
9705
9841
  function handleLoginRedirect(_x6, _x7) {
9706
9842
  return _handleLoginRedirect.apply(this, arguments);
@@ -9717,8 +9853,8 @@ var OktaAuth = function () {
9717
9853
  value: function hasResponseType(responseType) {
9718
9854
  var hasResponseType = false;
9719
9855
  if (Array.isArray(this.options.responseType) && this.options.responseType.length) {
9720
- var _context12;
9721
- hasResponseType = _indexOfInstanceProperty(_context12 = this.options.responseType).call(_context12, responseType) >= 0;
9856
+ var _context14;
9857
+ hasResponseType = _indexOfInstanceProperty(_context14 = this.options.responseType).call(_context14, responseType) >= 0;
9722
9858
  } else {
9723
9859
  hasResponseType = this.options.responseType === responseType;
9724
9860
  }
@@ -9752,29 +9888,29 @@ var OktaAuth = function () {
9752
9888
  }, {
9753
9889
  key: "invokeApiMethod",
9754
9890
  value: function () {
9755
- var _invokeApiMethod = _asyncToGenerator( _regeneratorRuntime.mark(function _callee12(options) {
9891
+ var _invokeApiMethod = _asyncToGenerator( _regeneratorRuntime.mark(function _callee14(options) {
9756
9892
  var accessToken;
9757
- return _regeneratorRuntime.wrap(function _callee12$(_context13) {
9893
+ return _regeneratorRuntime.wrap(function _callee14$(_context15) {
9758
9894
  while (1) {
9759
- switch (_context13.prev = _context13.next) {
9895
+ switch (_context15.prev = _context15.next) {
9760
9896
  case 0:
9761
9897
  if (options.accessToken) {
9762
- _context13.next = 5;
9898
+ _context15.next = 5;
9763
9899
  break;
9764
9900
  }
9765
- _context13.next = 3;
9901
+ _context15.next = 3;
9766
9902
  return this.tokenManager.getTokens();
9767
9903
  case 3:
9768
- accessToken = _context13.sent.accessToken;
9904
+ accessToken = _context15.sent.accessToken;
9769
9905
  options.accessToken = accessToken === null || accessToken === void 0 ? void 0 : accessToken.accessToken;
9770
9906
  case 5:
9771
- return _context13.abrupt("return", httpRequest(this, options));
9907
+ return _context15.abrupt("return", httpRequest(this, options));
9772
9908
  case 6:
9773
9909
  case "end":
9774
- return _context13.stop();
9910
+ return _context15.stop();
9775
9911
  }
9776
9912
  }
9777
- }, _callee12, this);
9913
+ }, _callee14, this);
9778
9914
  }));
9779
9915
  function invokeApiMethod(_x8) {
9780
9916
  return _invokeApiMethod.apply(this, arguments);
@@ -9792,5 +9928,5 @@ _Object$assign(OktaAuth, {
9792
9928
  constants: constants
9793
9929
  });
9794
9930
 
9795
- 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, 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 };
9931
+ 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, 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 };
9796
9932
  //# sourceMappingURL=esm.node.mjs.map