supertokens-web-js
Version:
SuperTokens SDK for vanilla JS for all recipes
1 lines • 113 kB
JavaScript
var supertokensWebsite;(()=>{"use strict";var e,t={9895:function(e,t,n){var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,s){function i(e){try{u(r.next(e))}catch(e){s(e)}}function a(e){try{u(r.throw(e))}catch(e){s(e)}}function u(e){e.done?o(e.value):new n((function(t){t(e.value)})).then(i,a)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,s,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return s={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(s){return function(a){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;i;)try{if(n=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,r=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!((o=(o=i.trys).length>0&&o[o.length-1])||6!==s[0]&&2!==s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(e){s=[6,e],r=0}finally{n=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,a])}}},s=this;Object.defineProperty(t,"__esModule",{value:!0});var i=n(4142),a="browser-tabs-lock-key",u={key:function(e){return r(s,void 0,void 0,(function(){return o(this,(function(e){throw new Error("Unsupported")}))}))},getItem:function(e){return r(s,void 0,void 0,(function(){return o(this,(function(e){throw new Error("Unsupported")}))}))},clear:function(){return r(s,void 0,void 0,(function(){return o(this,(function(e){return[2,window.localStorage.clear()]}))}))},removeItem:function(e){return r(s,void 0,void 0,(function(){return o(this,(function(e){throw new Error("Unsupported")}))}))},setItem:function(e,t){return r(s,void 0,void 0,(function(){return o(this,(function(e){throw new Error("Unsupported")}))}))},keySync:function(e){return window.localStorage.key(e)},getItemSync:function(e){return window.localStorage.getItem(e)},clearSync:function(){return window.localStorage.clear()},removeItemSync:function(e){return window.localStorage.removeItem(e)},setItemSync:function(e,t){return window.localStorage.setItem(e,t)}};function c(e){return new Promise((function(t){return setTimeout(t,e)}))}function l(e){for(var t="",n=0;n<e;n++)t+="0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz"[Math.floor(61*Math.random())];return t}var d=function(){function e(t){this.acquiredIatSet=new Set,this.storageHandler=void 0,this.id=Date.now().toString()+l(15),this.acquireLock=this.acquireLock.bind(this),this.releaseLock=this.releaseLock.bind(this),this.releaseLock__private__=this.releaseLock__private__.bind(this),this.waitForSomethingToChange=this.waitForSomethingToChange.bind(this),this.refreshLockWhileAcquired=this.refreshLockWhileAcquired.bind(this),this.storageHandler=t,void 0===e.waiters&&(e.waiters=[])}return e.prototype.acquireLock=function(t,n){return void 0===n&&(n=5e3),r(this,void 0,void 0,(function(){var r,s,i,d,f,h,g;return o(this,(function(o){switch(o.label){case 0:r=Date.now()+l(4),s=Date.now()+n,i=a+"-"+t,d=void 0===this.storageHandler?u:this.storageHandler,o.label=1;case 1:return Date.now()<s?[4,c(30)]:[3,8];case 2:return o.sent(),null!==d.getItemSync(i)?[3,5]:(f=this.id+"-"+t+"-"+r,[4,c(Math.floor(25*Math.random()))]);case 3:return o.sent(),d.setItemSync(i,JSON.stringify({id:this.id,iat:r,timeoutKey:f,timeAcquired:Date.now(),timeRefreshed:Date.now()})),[4,c(30)];case 4:return o.sent(),null!==(h=d.getItemSync(i))&&(g=JSON.parse(h)).id===this.id&&g.iat===r?(this.acquiredIatSet.add(r),this.refreshLockWhileAcquired(i,r),[2,!0]):[3,7];case 5:return e.lockCorrector(void 0===this.storageHandler?u:this.storageHandler),[4,this.waitForSomethingToChange(s)];case 6:o.sent(),o.label=7;case 7:return r=Date.now()+l(4),[3,1];case 8:return[2,!1]}}))}))},e.prototype.refreshLockWhileAcquired=function(e,t){return r(this,void 0,void 0,(function(){var n=this;return o(this,(function(s){return setTimeout((function(){return r(n,void 0,void 0,(function(){var n,r,s;return o(this,(function(o){switch(o.label){case 0:return[4,i.default().lock(t)];case 1:return o.sent(),this.acquiredIatSet.has(t)?(n=void 0===this.storageHandler?u:this.storageHandler,null===(r=n.getItemSync(e))?(i.default().unlock(t),[2]):((s=JSON.parse(r)).timeRefreshed=Date.now(),n.setItemSync(e,JSON.stringify(s)),i.default().unlock(t),this.refreshLockWhileAcquired(e,t),[2])):(i.default().unlock(t),[2])}}))}))}),1e3),[2]}))}))},e.prototype.waitForSomethingToChange=function(t){return r(this,void 0,void 0,(function(){return o(this,(function(n){switch(n.label){case 0:return[4,new Promise((function(n){var r=!1,o=Date.now(),s=!1;function i(){if(s||(window.removeEventListener("storage",i),e.removeFromWaiting(i),clearTimeout(a),s=!0),!r){r=!0;var t=50-(Date.now()-o);t>0?setTimeout(n,t):n(null)}}window.addEventListener("storage",i),e.addToWaiting(i);var a=setTimeout(i,Math.max(0,t-Date.now()))}))];case 1:return n.sent(),[2]}}))}))},e.addToWaiting=function(t){this.removeFromWaiting(t),void 0!==e.waiters&&e.waiters.push(t)},e.removeFromWaiting=function(t){void 0!==e.waiters&&(e.waiters=e.waiters.filter((function(e){return e!==t})))},e.notifyWaiters=function(){void 0!==e.waiters&&e.waiters.slice().forEach((function(e){return e()}))},e.prototype.releaseLock=function(e){return r(this,void 0,void 0,(function(){return o(this,(function(t){switch(t.label){case 0:return[4,this.releaseLock__private__(e)];case 1:return[2,t.sent()]}}))}))},e.prototype.releaseLock__private__=function(t){return r(this,void 0,void 0,(function(){var n,r,s,c;return o(this,(function(o){switch(o.label){case 0:return n=void 0===this.storageHandler?u:this.storageHandler,r=a+"-"+t,null===(s=n.getItemSync(r))?[2]:(c=JSON.parse(s)).id!==this.id?[3,2]:[4,i.default().lock(c.iat)];case 1:o.sent(),this.acquiredIatSet.delete(c.iat),n.removeItemSync(r),i.default().unlock(c.iat),e.notifyWaiters(),o.label=2;case 2:return[2]}}))}))},e.lockCorrector=function(t){for(var n=Date.now()-5e3,r=t,o=[],s=0;;){var i=r.keySync(s);if(null===i)break;o.push(i),s++}for(var u=!1,c=0;c<o.length;c++){var l=o[c];if(l.includes(a)){var d=r.getItemSync(l);if(null!==d){var f=JSON.parse(d);(void 0===f.timeRefreshed&&f.timeAcquired<n||void 0!==f.timeRefreshed&&f.timeRefreshed<n)&&(r.removeItemSync(l),u=!0)}}}u&&e.notifyWaiters()},e.waiters=void 0,e}();t.default=d},4142:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(){var e=this;this.locked=new Map,this.addToLocked=function(t,n){var r=e.locked.get(t);void 0===r?void 0===n?e.locked.set(t,[]):e.locked.set(t,[n]):void 0!==n&&(r.unshift(n),e.locked.set(t,r))},this.isLocked=function(t){return e.locked.has(t)},this.lock=function(t){return new Promise((function(n,r){e.isLocked(t)?e.addToLocked(t,n):(e.addToLocked(t),n())}))},this.unlock=function(t){var n=e.locked.get(t);if(void 0!==n&&0!==n.length){var r=n.pop();e.locked.set(t,n),void 0!==r&&setTimeout(r,0)}else e.locked.delete(t)}}return e.getInstance=function(){return void 0===e.instance&&(e.instance=new e),e.instance},e}();t.default=function(){return n.getInstance()}},2225:function(e,t){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},n.apply(this,arguments)};Object.defineProperty(t,"__esModule",{value:!0}),t.getProxyObject=void 0,t.getProxyObject=function(e){for(var t=n(n({},e),{_call:function(e,t){throw new Error("This function should only be called through the recipe object")}}),r=function(e){"_call"!==e&&(t[e]=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return this._call(e,t)})},o=0,s=Object.keys(t);o<s.length;o++)r(s[o]);return t}},6333:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.OverrideableBuilder=void 0;var r=n(2225),o=function(){function e(e){this.layers=[e],this.proxies=[]}return e.prototype.override=function(e){for(var t=(0,r.getProxyObject)(this.layers[0]),n=e(t,this),o=0,s=Object.keys(this.layers[0]);o<s.length;o++){var i=s[o];n[i]===t[i]||"_call"===i?delete n[i]:void 0===n[i]&&(n[i]=null)}return this.layers.push(n),this.proxies.push(t),this},e.prototype.build=function(){var e=this;if(this.result)return this.result;this.result={};for(var t=0,n=this.layers;t<n.length;t++)for(var r=n[t],o=0,s=Object.keys(r);o<s.length;o++){var i=s[o],a=r[i];void 0!==a&&(this.result[i]=null===a?void 0:"function"==typeof a?a.bind(this.result):a)}for(var u=function(t){c.proxies[t]._call=function(n,r){for(var o=t;o>=0;--o){var s=e.layers[o][n];if(null!=s)return s.bind(e.result).apply(void 0,r)}}},c=this,l=0;l<this.proxies.length;++l)u(l);return this.result},e}();t.OverrideableBuilder=o,t.default=o},1757:(e,t,n)=>{t.__esModule=!0,function(e){for(var n in e)t.hasOwnProperty(n)||(t[n]=e[n])}(n(7874))},3438:function(e,t,n){var r=this&&this.__assign||function(){return r=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},r.apply(this,arguments)},o=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,s){function i(e){try{u(r.next(e))}catch(e){s(e)}}function a(e){try{u(r.throw(e))}catch(e){s(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,a)}u((r=r.apply(e,t||[])).next())}))},s=this&&this.__generator||function(e,t){var n,r,o,s,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return s={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(s){return function(a){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;i;)try{if(n=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,r=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!((o=(o=i.trys).length>0&&o[o.length-1])||6!==s[0]&&2!==s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(e){s=[6,e],r=0}finally{n=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,a])}}};Object.defineProperty(t,"__esModule",{value:!0}),t.responseErrorInterceptor=t.responseInterceptor=t.interceptorFunctionRequestFulfilled=void 0;var i=n(1134),a=n(788),u=n(9583),c=n(7860),l=n(6446);function d(e){var t=void 0===e.url?"":e.url,n=e.baseURL;return void 0!==n&&(t="/"===t.charAt(0)&&"/"===n.charAt(n.length-1)?n+t.substr(1):"/"!==t.charAt(0)&&"/"!==n.charAt(n.length-1)?n+"/"+t:n+t),t}t.interceptorFunctionRequestFulfilled=function(e){return o(this,void 0,void 0,(function(){var t,n,o,i,f,g;return s(this,(function(s){switch(s.label){case 0:(0,l.logDebugMessage)("interceptorFunctionRequestFulfilled: started axios interception"),t=d(e),n=!1;try{n="string"==typeof t&&!a.default.recipeImpl.shouldDoInterceptionBasedOnUrl(t,a.default.config.apiDomain,a.default.config.sessionTokenBackendDomain)}catch(e){if("Please provide a valid domain name"!==e.message)throw e;(0,l.logDebugMessage)("interceptorFunctionRequestFulfilled: Trying shouldDoInterceptionBasedOnUrl with location.origin"),n=!a.default.recipeImpl.shouldDoInterceptionBasedOnUrl(c.default.getReferenceOrThrow().windowHandler.location.getOrigin(),a.default.config.apiDomain,a.default.config.sessionTokenBackendDomain)}return(0,l.logDebugMessage)("interceptorFunctionRequestFulfilled: Value of doNotDoInterception: "+n),n?((0,l.logDebugMessage)("interceptorFunctionRequestFulfilled: Returning config unchanged"),[2,e]):((0,l.logDebugMessage)("interceptorFunctionRequestFulfilled: Modifying config"),u.ProcessState.getInstance().addState(u.PROCESS_STATE.CALLING_INTERCEPTION_REQUEST),[4,(0,a.getLocalSessionState)(!0)]);case 1:return o=s.sent(),i=e,"EXISTS"!==o.status?[3,3]:[4,a.AntiCsrfToken.getToken(o.lastAccessTokenUpdate)];case 2:void 0!==(f=s.sent())&&((0,l.logDebugMessage)("interceptorFunctionRequestFulfilled: Adding anti-csrf token to request"),i=r(r({},i),{headers:void 0===i?{"anti-csrf":f}:r(r({},i.headers),{"anti-csrf":f})})),s.label=3;case 3:return a.default.config.autoAddCredentials&&void 0===i.withCredentials&&((0,l.logDebugMessage)("interceptorFunctionRequestFulfilled: Adding credentials include"),i=r(r({},i),{withCredentials:!0})),(0,l.logDebugMessage)("interceptorFunctionRequestFulfilled: Adding rid header: anti-csrf (it may be overriden by the user's provided rid)"),i=r(r({},i),{headers:void 0===i?{rid:"anti-csrf"}:r({rid:"anti-csrf"},i.headers)}),g=a.default.config.tokenTransferMethod,(0,l.logDebugMessage)("interceptorFunctionRequestFulfilled: Adding st-auth-mode header: "+g),i.headers["st-auth-mode"]=g,[4,p(i)];case 4:return[4,h(i=s.sent())];case 5:return s.sent(),(0,l.logDebugMessage)("interceptorFunctionRequestFulfilled: returning modified config"),[2,i]}}))}))},t.responseInterceptor=function(e){var t=this;return function(n){return o(t,void 0,void 0,(function(){var t,r,o,i;return s(this,(function(s){switch(s.label){case 0:if(t=!1,!a.default.initCalled)throw new Error("init function not called");(0,l.logDebugMessage)("responseInterceptor: started"),(0,l.logDebugMessage)("responseInterceptor: already intercepted: "+n.headers["x-supertokens-xhr-intercepted"]),r=d(n.config);try{t="string"==typeof r&&!a.default.recipeImpl.shouldDoInterceptionBasedOnUrl(r,a.default.config.apiDomain,a.default.config.sessionTokenBackendDomain)||!!n.headers["x-supertokens-xhr-intercepted"]}catch(e){if("Please provide a valid domain name"!==e.message)throw e;(0,l.logDebugMessage)("responseInterceptor: Trying shouldDoInterceptionBasedOnUrl with location.origin"),t=!a.default.recipeImpl.shouldDoInterceptionBasedOnUrl(c.default.getReferenceOrThrow().windowHandler.location.getOrigin(),a.default.config.apiDomain,a.default.config.sessionTokenBackendDomain)||!!n.headers["x-supertokens-xhr-intercepted"]}return(0,l.logDebugMessage)("responseInterceptor: Value of doNotDoInterception: "+t),t?((0,l.logDebugMessage)("responseInterceptor: Returning without interception"),[2,n]):((0,l.logDebugMessage)("responseInterceptor: Interception started"),u.ProcessState.getInstance().addState(u.PROCESS_STATE.CALLING_INTERCEPTION_RESPONSE),[4,(0,a.getLocalSessionState)(!1)]);case 1:return o=s.sent(),[4,g(n)];case 2:return s.sent(),(0,a.fireSessionUpdateEventsIfNecessary)("EXISTS"===o.status,n.status,n.headers["front-token"]),n.status!==a.default.config.sessionExpiredStatusCode?[3,3]:((0,l.logDebugMessage)("responseInterceptor: Status code is: "+n.status),i=n.config,[2,f.doRequest((function(t){return e(t)}),i,r,n,void 0,!0)]);case 3:return n.status!==a.default.config.invalidClaimStatusCode?[3,5]:[4,(0,a.onInvalidClaimResponse)(n)];case 4:s.sent(),s.label=5;case 5:return[2,n]}}))}))}},t.responseErrorInterceptor=function(e){var t=this;return function(n){return o(t,void 0,void 0,(function(){var t;return s(this,(function(r){switch(r.label){case 0:if((0,l.logDebugMessage)("responseErrorInterceptor: called"),(0,l.logDebugMessage)("responseErrorInterceptor: already intercepted: "+(n.response&&n.response.headers["x-supertokens-xhr-intercepted"])),void 0===n.response||n.response.headers["x-supertokens-xhr-intercepted"])throw n;return void 0===n.response||n.response.status!==a.default.config.sessionExpiredStatusCode?[3,1]:((0,l.logDebugMessage)("responseErrorInterceptor: Status code is: "+n.response.status),t=n.config,[2,f.doRequest((function(t){return e(t)}),t,d(t),void 0,n,!0)]);case 1:return void 0===n.response||n.response.status!==a.default.config.invalidClaimStatusCode?[3,3]:[4,(0,a.onInvalidClaimResponse)(n.response)];case 2:r.sent(),r.label=3;case 3:throw n}}))}))}};var f=function(){function e(){}var t;return t=e,e.doRequest=function(e,n,u,d,f,v){return void 0===v&&(v=!1),o(void 0,void 0,void 0,(function(){var o,m,b,w,k,y,S,I,T,R,D,x,E,A;return s(t,(function(t){switch(t.label){case 0:if(!a.default.initCalled)throw Error("init function not called");(0,l.logDebugMessage)("doRequest: called"),o=!1;try{o="string"==typeof u&&!a.default.recipeImpl.shouldDoInterceptionBasedOnUrl(u,a.default.config.apiDomain,a.default.config.sessionTokenBackendDomain)&&v}catch(e){if("Please provide a valid domain name"!==e.message)throw e;(0,l.logDebugMessage)("doRequest: Trying shouldDoInterceptionBasedOnUrl with location.origin"),o=!a.default.recipeImpl.shouldDoInterceptionBasedOnUrl(c.default.getReferenceOrThrow().windowHandler.location.getOrigin(),a.default.config.apiDomain,a.default.config.sessionTokenBackendDomain)&&v}if((0,l.logDebugMessage)("doRequest: Value of doNotDoInterception: "+o),!o)return[3,2];if((0,l.logDebugMessage)("doRequest: Returning without interception"),void 0!==f)throw f;return void 0!==d?[2,d]:[4,e(n)];case 1:return[2,t.sent()];case 2:return(0,l.logDebugMessage)("doRequest: Interception started"),[4,p(n)];case 3:n=t.sent(),m=void 0,t.label=4;case 4:return[4,(0,a.getLocalSessionState)(!0)];case 5:return b=t.sent(),w=n,"EXISTS"!==b.status?[3,7]:[4,a.AntiCsrfToken.getToken(b.lastAccessTokenUpdate)];case 6:void 0!==(k=t.sent())&&((0,l.logDebugMessage)("doRequest: Adding anti-csrf token to request"),w=r(r({},w),{headers:void 0===w?{"anti-csrf":k}:r(r({},w.headers),{"anti-csrf":k})})),t.label=7;case 7:return a.default.config.autoAddCredentials&&void 0===w.withCredentials&&((0,l.logDebugMessage)("doRequest: Adding credentials include"),w=r(r({},w),{withCredentials:!0})),(0,l.logDebugMessage)("doRequest: Adding rid header: anti-csrf (May get overriden by user's rid)"),w=r(r({},w),{headers:void 0===w?{rid:"anti-csrf"}:r({rid:"anti-csrf"},w.headers)}),y=a.default.config.tokenTransferMethod,(0,l.logDebugMessage)("doRequest: Adding st-auth-mode header: "+y),w.headers["st-auth-mode"]=y,[4,h(w)];case 8:t.sent(),t.label=9;case 9:if(t.trys.push([9,14,,27]),S=f,I=d,f=void 0,d=void 0,void 0!==S)throw(0,l.logDebugMessage)("doRequest: Not making call because localPrevError is not undefined"),S;return void 0!==I?(0,l.logDebugMessage)("doRequest: Not making call because localPrevResponse is not undefined"):(0,l.logDebugMessage)("doRequest: Making user's http call"),void 0!==I?[3,11]:[4,e(w)];case 10:return T=t.sent(),[3,12];case 11:T=I,t.label=12;case 12:return D=T,(0,l.logDebugMessage)("doRequest: User's http call ended"),[4,g(D)];case 13:return t.sent(),(0,a.fireSessionUpdateEventsIfNecessary)("EXISTS"===b.status,D.status,D.headers["front-token"]),[2,D];case 14:return R=t.sent(),void 0===(D=R.response)?[3,25]:[4,g(D)];case 15:if(t.sent(),(0,a.fireSessionUpdateEventsIfNecessary)("EXISTS"===b.status,D.status,D.headers["front-token"]),D.status!==a.default.config.sessionExpiredStatusCode)return[3,21];if((0,l.logDebugMessage)("doRequest: Status code is: "+D.status),function(e){return void 0===e.__supertokensSessionRefreshAttempts&&(e.__supertokensSessionRefreshAttempts=0),e.__supertokensSessionRefreshAttempts>=a.default.config.maxRetryAttemptsForSessionRefresh}(n))throw(0,l.logDebugMessage)("doRequest: Maximum session refresh attempts reached. sessionRefreshAttempts: ".concat(n.__supertokensSessionRefreshAttempts,", maxRetryAttemptsForSessionRefresh: ").concat(a.default.config.maxRetryAttemptsForSessionRefresh)),x="Received a 401 response from ".concat(u,". Attempted to refresh the session and retry the request with the updated session tokens ").concat(a.default.config.maxRetryAttemptsForSessionRefresh," times, but each attempt resulted in a 401 error. The maximum session refresh limit has been reached. Please investigate your API. To increase the session refresh attempts, update maxRetryAttemptsForSessionRefresh in the config."),console.error(x),new Error(x);return[4,(0,a.onUnauthorisedResponse)(b)];case 16:return E=t.sent(),function(e){void 0===e.__supertokensSessionRefreshAttempts&&(e.__supertokensSessionRefreshAttempts=0),e.__supertokensSessionRefreshAttempts++}(n),(0,l.logDebugMessage)("doRequest: sessionRefreshAttempts: "+n.__supertokensSessionRefreshAttempts),"RETRY"===E.result?[3,20]:((0,l.logDebugMessage)("doRequest: Not retrying original request"),void 0===E.error?[3,18]:[4,(0,i.createAxiosErrorFromFetchResp)(E.error)]);case 17:return A=t.sent(),[3,19];case 18:A=R,t.label=19;case 19:return m=A,[3,28];case 20:return(0,l.logDebugMessage)("doRequest: Retrying original request"),[3,24];case 21:return D.status!==a.default.config.invalidClaimStatusCode?[3,23]:[4,(0,a.onInvalidClaimResponse)(D)];case 22:t.sent(),t.label=23;case 23:throw R;case 24:return[3,26];case 25:throw R;case 26:return[3,27];case 27:return[3,4];case 28:throw m}}))}))},e}();function h(e){return o(this,void 0,void 0,(function(){var t,n;return s(this,(function(o){switch(o.label){case 0:return void 0===e.headers&&(e.headers={}),(0,l.logDebugMessage)("setAuthorizationHeaderIfRequired: adding existing tokens as header"),[4,(0,a.getTokenForHeaderAuth)("access")];case 1:return t=o.sent(),[4,(0,a.getTokenForHeaderAuth)("refresh")];case 2:return n=o.sent(),void 0!==t&&void 0!==n?void 0!==e.headers.Authorization||void 0!==e.headers.authorization?(0,l.logDebugMessage)("setAuthorizationHeaderIfRequired: Authorization header defined by the user, not adding"):((0,l.logDebugMessage)("setAuthorizationHeaderIfRequired: added authorization header"),e.headers=r(r({},e.headers),{Authorization:"Bearer ".concat(t)}),e.__supertokensAddedAuthHeader=!0):(0,l.logDebugMessage)("setAuthorizationHeaderIfRequired: token for header based auth not found"),[2]}}))}))}function g(e){return o(this,void 0,void 0,(function(){var t,n,r,o,i,u;return s(this,(function(s){switch(s.label){case 0:return(0,l.logDebugMessage)("saveTokensFromHeaders: Saving updated tokens from the response"),void 0===(t=e.headers["st-refresh-token"])?[3,2]:((0,l.logDebugMessage)("saveTokensFromHeaders: saving new refresh token"),[4,(0,a.setToken)("refresh",t)]);case 1:s.sent(),s.label=2;case 2:return void 0===(n=e.headers["st-access-token"])?[3,4]:((0,l.logDebugMessage)("saveTokensFromHeaders: saving new access token"),[4,(0,a.setToken)("access",n)]);case 3:s.sent(),s.label=4;case 4:return void 0===(r=e.headers["front-token"])?[3,6]:((0,l.logDebugMessage)("doRequest: Setting sFrontToken: "+r),[4,a.FrontToken.setItem(r)]);case 5:s.sent(),o=new Headers,Object.entries(e.headers).forEach((function(e){var t=e[0],n=e[1];Array.isArray(n)?n.forEach((function(e){return o.append(t,e)})):o.append(t,n)})),(0,a.updateClockSkewUsingFrontToken)({frontToken:r,responseHeaders:o}),s.label=6;case 6:return void 0===(i=e.headers["anti-csrf"])?[3,9]:[4,(0,a.getLocalSessionState)(!1)];case 7:return"EXISTS"!==(u=s.sent()).status?[3,9]:((0,l.logDebugMessage)("doRequest: Setting anti-csrf token"),[4,a.AntiCsrfToken.setItem(u.lastAccessTokenUpdate,i)]);case 8:s.sent(),s.label=9;case 9:return[2]}}))}))}function p(e){return o(this,void 0,void 0,(function(){var t,n,o,i;return s(this,(function(s){switch(s.label){case 0:return[4,(0,a.getTokenForHeaderAuth)("access")];case 1:return t=s.sent(),[4,(0,a.getTokenForHeaderAuth)("refresh")];case 2:return n=s.sent(),o=e.headers.Authorization||e.headers.authorization,void 0===t||void 0===n||o!=="Bearer ".concat(t)&&!("__supertokensAddedAuthHeader"in e)?[2,e]:((0,l.logDebugMessage)("removeAuthHeaderIfMatchesLocalToken: Removing Authorization from user provided headers because it contains our access token"),delete(i=r(r({},e),{headers:r({},e.headers)})).headers.authorization,delete i.headers.Authorization,[2,i])}}))}))}t.default=f},1134:function(e,t){var n=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,s){function i(e){try{u(r.next(e))}catch(e){s(e)}}function a(e){try{u(r.throw(e))}catch(e){s(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,a)}u((r=r.apply(e,t||[])).next())}))},r=this&&this.__generator||function(e,t){var n,r,o,s,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return s={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(s){return function(a){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;i;)try{if(n=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,r=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!((o=(o=i.trys).length>0&&o[o.length-1])||6!==s[0]&&2!==s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(e){s=[6,e],r=0}finally{n=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,a])}}};function o(e,t,n,r,o){return e.config=t,n&&(e.code=n),e.request=r,e.response=o,e.isAxiosError=!0,e.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}},e}Object.defineProperty(t,"__esModule",{value:!0}),t.createAxiosErrorFromFetchResp=void 0,t.createAxiosErrorFromFetchResp=function(e){return n(this,void 0,void 0,(function(){var t,n,s,i,a;return r(this,(function(r){switch(r.label){case 0:if(t={url:e.url,headers:e.headers},!(n="status"in e))return[3,12];if(i=e.headers.get("content-type"),a=void 0,null!==i)return[3,5];r.label=1;case 1:return r.trys.push([1,3,,4]),[4,e.text()];case 2:return a=r.sent(),[3,4];case 3:return r.sent(),a="",[3,4];case 4:return[3,11];case 5:return i.includes("application/json")?[4,e.json()]:[3,7];case 6:return a=r.sent(),[3,11];case 7:return i.includes("text/")?[4,e.text()]:[3,9];case 8:return a=r.sent(),[3,11];case 9:return[4,e.blob()];case 10:a=r.sent(),r.label=11;case 11:s={data:a,status:e.status,statusText:e.statusText,headers:e.headers,config:t,request:void 0},r.label=12;case 12:return[2,o(n?new Error("Request failed with status code "+e.status):e,t,e.code,void 0,s)]}}))}))}},7883:function(e,t,n){var r,o=this&&this.__extends||(r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},r(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),s=this&&this.__assign||function(){return s=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},s.apply(this,arguments)};Object.defineProperty(t,"__esModule",{value:!0}),t.BooleanClaim=void 0;var i=function(e){function t(t){var n=e.call(this,t)||this;return n.validators=s(s({},n.validators),{isTrue:function(e){return n.validators.hasValue(!0,e)},isFalse:function(e){return n.validators.hasValue(!1,e)}}),n}return o(t,e),t}(n(2663).PrimitiveClaim);t.BooleanClaim=i},8628:function(e,t,n){var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,s){function i(e){try{u(r.next(e))}catch(e){s(e)}}function a(e){try{u(r.throw(e))}catch(e){s(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,a)}u((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,s,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return s={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(s){return function(a){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;i;)try{if(n=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,r=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!((o=(o=i.trys).length>0&&o[o.length-1])||6!==s[0]&&2!==s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(e){s=[6,e],r=0}finally{n=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,a])}}};Object.defineProperty(t,"__esModule",{value:!0}),t.PrimitiveArrayClaim=void 0;var s=n(2519),i=function(){function e(e){var t=this;this.validators={includes:function(e,n,i){void 0===n&&(n=t.defaultMaxAgeInSeconds);var a=s.default.getReferenceOrThrow().dateProvider;return{id:void 0!==i?i:t.id,refresh:function(e){return t.refresh(e)},shouldRefresh:function(e,r){if(void 0!==n&&n<a.getThresholdInSeconds())throw new Error("maxAgeInSeconds must be greater than or equal to the DateProvider threshold value -> ".concat(a.getThresholdInSeconds()));return void 0===t.getValueFromPayload(e,r)||void 0!==n&&e[t.id].t<a.now()-1e3*n},validate:function(s,i){return r(t,void 0,void 0,(function(){var t,r;return o(this,(function(o){return void 0===(t=this.getValueFromPayload(s,i))?[2,{isValid:!1,reason:{message:"value does not exist",expectedToInclude:e,actualValue:t}}]:(r=(a.now()-this.getLastFetchedTime(s,i))/1e3,void 0!==n&&r>n?[2,{isValid:!1,reason:{message:"expired",ageInSeconds:r,maxAgeInSeconds:n}}]:t.includes(e)?[2,{isValid:!0}]:[2,{isValid:!1,reason:{message:"wrong value",expectedToInclude:e,actualValue:t}}])}))}))}}},excludes:function(e,n,i){void 0===n&&(n=t.defaultMaxAgeInSeconds);var a=s.default.getReferenceOrThrow().dateProvider;return{id:void 0!==i?i:t.id,refresh:function(e){return t.refresh(e)},shouldRefresh:function(e,r){if(void 0!==n&&n<a.getThresholdInSeconds())throw new Error("maxAgeInSeconds must be greater than or equal to the DateProvider threshold value -> ".concat(a.getThresholdInSeconds()));return void 0===t.getValueFromPayload(e,r)||void 0!==n&&e[t.id].t<a.now()-1e3*n},validate:function(s,i){return r(t,void 0,void 0,(function(){var t,r;return o(this,(function(o){return void 0===(t=this.getValueFromPayload(s,i))?[2,{isValid:!1,reason:{message:"value does not exist",expectedToNotInclude:e,actualValue:t}}]:(r=(a.now()-this.getLastFetchedTime(s,i))/1e3,void 0!==n&&r>n?[2,{isValid:!1,reason:{message:"expired",ageInSeconds:r,maxAgeInSeconds:n}}]:t.includes(e)?[2,{isValid:!1,reason:{message:"wrong value",expectedToNotInclude:e,actualValue:t}}]:[2,{isValid:!0}])}))}))}}},includesAll:function(e,n,i){void 0===n&&(n=t.defaultMaxAgeInSeconds);var a=s.default.getReferenceOrThrow().dateProvider;return{id:void 0!==i?i:t.id,refresh:function(e){return t.refresh(e)},shouldRefresh:function(e,r){if(void 0!==n&&n<a.getThresholdInSeconds())throw new Error("maxAgeInSeconds must be greater than or equal to the DateProvider threshold value -> ".concat(a.getThresholdInSeconds()));return void 0===t.getValueFromPayload(e,r)||void 0!==n&&e[t.id].t<a.now()-1e3*n},validate:function(s,i){return r(t,void 0,void 0,(function(){var t,r,u,c;return o(this,(function(o){return void 0===(t=this.getValueFromPayload(s,i))?[2,{isValid:!1,reason:{message:"value does not exist",expectedToInclude:e,actualValue:t}}]:(r=(a.now()-this.getLastFetchedTime(s,i))/1e3,void 0!==n&&r>n?[2,{isValid:!1,reason:{message:"expired",ageInSeconds:r,maxAgeInSeconds:n}}]:(u=new Set(t),[2,(c=e.every((function(e){return u.has(e)})))?{isValid:c}:{isValid:c,reason:{message:"wrong value",expectedToInclude:e,actualValue:t}}]))}))}))}}},includesAny:function(e,n,i){void 0===n&&(n=t.defaultMaxAgeInSeconds);var a=s.default.getReferenceOrThrow().dateProvider;return{id:void 0!==i?i:t.id,refresh:function(e){return t.refresh(e)},shouldRefresh:function(e,r){if(void 0!==n&&n<a.getThresholdInSeconds())throw new Error("maxAgeInSeconds must be greater than or equal to the DateProvider threshold value -> ".concat(a.getThresholdInSeconds()));return void 0===t.getValueFromPayload(e,r)||void 0!==n&&e[t.id].t<a.now()-1e3*n},validate:function(s,i){return r(t,void 0,void 0,(function(){var t,r,u,c;return o(this,(function(o){return void 0===(t=this.getValueFromPayload(s,i))?[2,{isValid:!1,reason:{message:"value does not exist",expectedToInclude:e,actualValue:t}}]:(r=(a.now()-this.getLastFetchedTime(s,i))/1e3,void 0!==n&&r>n?[2,{isValid:!1,reason:{message:"expired",ageInSeconds:r,maxAgeInSeconds:n}}]:(u=new Set(t),[2,(c=e.some((function(e){return u.has(e)})))?{isValid:c}:{isValid:c,reason:{message:"wrong value",expectedToIncludeAtLeastOneOf:e,actualValue:t}}]))}))}))}}},excludesAll:function(e,n,i){void 0===n&&(n=t.defaultMaxAgeInSeconds);var a=s.default.getReferenceOrThrow().dateProvider;return{id:void 0!==i?i:t.id,refresh:function(e){return t.refresh(e)},shouldRefresh:function(e,r){if(void 0!==n&&n<a.getThresholdInSeconds())throw new Error("maxAgeInSeconds must be greater than or equal to the DateProvider threshold value -> ".concat(a.getThresholdInSeconds()));return void 0===t.getValueFromPayload(e,r)||void 0!==n&&e[t.id].t<a.now()-1e3*n},validate:function(s,i){return r(t,void 0,void 0,(function(){var t,r,u,c;return o(this,(function(o){return void 0===(t=this.getValueFromPayload(s,i))?[2,{isValid:!1,reason:{message:"value does not exist",expectedToNotInclude:e,actualValue:t}}]:(r=(a.now()-this.getLastFetchedTime(s,i))/1e3,void 0!==n&&r>n?[2,{isValid:!1,reason:{message:"expired",ageInSeconds:r,maxAgeInSeconds:n}}]:(u=new Set(t),[2,(c=e.every((function(e){return!u.has(e)})))?{isValid:c}:{isValid:c,reason:{message:"wrong value",expectedToNotInclude:e,actualValue:t}}]))}))}))}}}},this.id=e.id,this.refresh=e.refresh,this.defaultMaxAgeInSeconds=e.defaultMaxAgeInSeconds}return e.prototype.getValueFromPayload=function(e,t){return void 0!==e[this.id]?e[this.id].v:void 0},e.prototype.getLastFetchedTime=function(e,t){return void 0!==e[this.id]?e[this.id].t:void 0},e}();t.PrimitiveArrayClaim=i},2663:(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PrimitiveClaim=void 0;var r=n(2519),o=function(){function e(e){var t=this;this.validators={hasValue:function(e,n,o){void 0===n&&(n=t.defaultMaxAgeInSeconds);var s=r.default.getReferenceOrThrow().dateProvider;return{id:void 0!==o?o:t.id,refresh:function(e){return t.refresh(e)},shouldRefresh:function(e,r){if(void 0!==n&&n<s.getThresholdInSeconds())throw new Error("maxAgeInSeconds must be greater than or equal to the DateProvider threshold value -> ".concat(s.getThresholdInSeconds()));return void 0===t.getValueFromPayload(e,r)||void 0!==n&&e[t.id].t<s.now()-1e3*n},validate:function(r,o){var i=t.getValueFromPayload(r,o);if(void 0===i)return{isValid:!1,reason:{message:"value does not exist",expectedValue:e,actualValue:i}};var a=(s.now()-t.getLastFetchedTime(r,o))/1e3;return void 0!==n&&a>n?{isValid:!1,reason:{message:"expired",ageInSeconds:a,maxAgeInSeconds:n}}:i!==e?{isValid:!1,reason:{message:"wrong value",expectedValue:e,actualValue:i}}:{isValid:!0}}}}},this.id=e.id,this.refresh=e.refresh,this.defaultMaxAgeInSeconds=e.defaultMaxAgeInSeconds}return e.prototype.getValueFromPayload=function(e,t){return void 0!==e[this.id]?e[this.id].v:void 0},e.prototype.getLastFetchedTime=function(e,t){return void 0!==e[this.id]?e[this.id].t:void 0},e}();t.PrimitiveClaim=o},6398:function(e,t){var n,r=this&&this.__extends||(n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},n(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.STGeneralError=void 0;var o=function(e){function t(t){var n=e.call(this,t)||this;return n.isSuperTokensGeneralError=!0,n}return r(t,e),t.isThisError=function(e){return!0===e.isSuperTokensGeneralError},t}(Error);t.STGeneralError=o},788:function(e,t,n){var r=this&&this.__assign||function(){return r=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},r.apply(this,arguments)},o=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,s){function i(e){try{u(r.next(e))}catch(e){s(e)}}function a(e){try{u(r.throw(e))}catch(e){s(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,a)}u((r=r.apply(e,t||[])).next())}))},s=this&&this.__generator||function(e,t){var n,r,o,s,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return s={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(s){return function(a){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;i;)try{if(n=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,r=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!((o=(o=i.trys).length>0&&o[o.length-1])||6!==s[0]&&2!==s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){i.label=s[1];break}if(6===s[0]&&i.label<o[1]){i.label=o[1],o=s;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(s);break}o[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(e){s=[6,e],r=0}finally{n=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,a])}}};Object.defineProperty(t,"__esModule",{value:!0}),t.updateClockSkewUsingFrontToken=t.fireSessionUpdateEventsIfNecessary=t.setFrontToken=t.getFrontToken=t.setAntiCSRF=t.saveLastAccessTokenUpdate=t.getTokenForHeaderAuth=t.setToken=t.getStorageNameForToken=t.getLocalSessionState=t.onInvalidClaimResponse=t.onTokenUpdate=t.onUnauthorisedResponse=t.FrontToken=t.AntiCsrfToken=void 0;var i=n(9583),a=n(5204),u=n(5209),c=n(7860),l=n(7487),d=n(6446),f=n(2519),h=function(){function e(){}return e.getToken=function(t){return o(this,void 0,void 0,(function(){var n;return s(this,(function(r){switch(r.label){case 0:return(0,d.logDebugMessage)("AntiCsrfToken.getToken: called"),void 0===t?(e.tokenInfo=void 0,(0,d.logDebugMessage)("AntiCsrfToken.getToken: returning undefined"),[2,void 0]):void 0!==e.tokenInfo?[3,2]:[4,P()];case 1:return null===(n=r.sent())?((0,d.logDebugMessage)("AntiCsrfToken.getToken: returning undefined"),[2,void 0]):(e.tokenInfo={antiCsrf:n,associatedAccessTokenUpdate:t},[3,4]);case 2:return e.tokenInfo.associatedAccessTokenUpdate===t?[3,4]:(e.tokenInfo=void 0,[4,e.getToken(t)]);case 3:return[2,r.sent()];case 4:return(0,d.logDebugMessage)("AntiCsrfToken.getToken: returning: "+e.tokenInfo.antiCsrf),[2,e.tokenInfo.antiCsrf]}}))}))},e.removeToken=function(){return o(this,void 0,void 0,(function(){return s(this,(function(t){switch(t.label){case 0:return(0,d.logDebugMessage)("AntiCsrfToken.removeToken: called"),e.tokenInfo=void 0,[4,F(void 0)];case 1:return t.sent(),[2]}}))}))},e.setItem=function(t,n){return o(this,void 0,void 0,(function(){return s(this,(function(r){switch(r.label){case 0:return void 0===t?(e.tokenInfo=void 0,[2]):((0,d.logDebugMessage)("AntiCsrfToken.setItem: called"),[4,F(n)]);case 1:return r.sent(),e.tokenInfo={antiCsrf:n,associatedAccessTokenUpdate:t},[2]}}))}))},e}();t.AntiCsrfToken=h;var g=function(){function e(){}return e.getTokenInfo=function(){return o(this,void 0,void 0,(function(){var t,n;return s(this,(function(r){switch(r.label){case 0:return(0,d.logDebugMessage)("FrontToken.getTokenInfo: called"),[4,q()];case 1:return null!==(t=r.sent())?[3,5]:[4,T(!1)];case 2:return"EXISTS"!==r.sent().status?[3,4]:[4,new Promise((function(t){e.waiters.push(t)}))];case 3:return r.sent(),[2,e.getTokenInfo()];case 4:return[2,void 0];case 5:return n=U(t),(0,d.logDebugMessage)("FrontToken.getTokenInfo: returning ate: "+n.ate),(0,d.logDebugMessage)("FrontToken.getTokenInfo: returning uid: "+n.uid),(0,d.logDebugMessage)("FrontToken.getTokenInfo: returning up: "+n.up),[2,n]}}))}))},e.removeToken=function(){return o(this,void 0,void 0,(function(){return s(this,(function(t){switch(t.label){case 0:return(0,d.logDebugMessage)("FrontToken.removeToken: called"),[4,N(void 0)];case 1:return t.sent(),[4,D("access","")];case 2:return t.sent(),[4,D("refresh","")];case 3:return t.sent(),[4,h.removeToken()];case 4:return t.sent(),e.waiters.forEach((function(e){return e(void 0)})),e.waiters=[],[2]}}))}))},e.setItem=function(t){return o(this,void 0,void 0,(function(){return s(this,(function(n){switch(n.label){case 0:return[4,O()];case 1:return n.sent(),"remove"===t?[2,e.removeToken()]:((0,d.logDebugMessage)("FrontToken.setItem: called"),[4,N(t)]);case 2:return n.sent(),e.waiters.forEach((function(e){return e(void 0)})),e.waiters=[],[2]}}))}))},e.doesTokenExists=function(){return o(this,void 0,void 0,(function(){return s(this,(function(e){switch(e.label){case 0:return[4,H()];case 1:return[2,null!==e.sent()]}}))}))},e.waiters=[],e}();t.FrontToken=g;var p=function(){function e(){}var t;return e.init=function(t,r){(0,d.logDebugMessage)("init: called"),(0,d.logDebugMessage)("init: Input apiBasePath: "+t.apiBasePath),(0,d.logDebugMessage)("init: Input apiDomain: "+t.apiDomain),(0,d.logDebugMessage)("init: Input autoAddCredentials: "+t.autoAddCredentials),(0,d.logDebugMessage)("init: Input sessionTokenBackendDomain: "+t.sessionTokenBackendDomain),(0,d.logDebugMessage)("init: Input isInIframe: "+t.isInIframe),(0,d.logDebugMessage)("init: Input sessionExpiredStatusCode: "+t.sessionExpiredStatusCode),(0,d.logDebugMessage)("init: Input sessionTokenFrontendDomain: "+t.sessionTokenFrontendDomain),(0,d.logDebugMessage)("init: Input tokenTransferMethod: "+t.tokenTransferMethod);var o=c.default.getReferenceOrThrow().windowHandler.getWindowUnsafe();e.env=void 0===o||void 0===o.fetch?n.g:o,e.refreshTokenUrl=t.apiDomain+t.apiBasePath+"/session/refresh",e.signOutUrl=t.apiDomain+t.apiBasePath+"/signout",e.rid="session",e.config=t,void 0===e.env.__supertokensOriginalFetch&&((0,d.logDebugMessage)("init: __supertokensOriginalFetch is undefined"),e.env.__supertokensOriginalFetch=e.env.fetch.bind(e.env),e.env.__supertokensSessionRecipe=r,e.env.fetch=e.env.__supertokensSessionRecipe.addFetchInterceptorsAndReturnModifiedFetch({originalFetch:e.env.__supertokensOriginalFetch,userContext:{}}),e.env.__supertokensSessionRecipe.addXMLHttpRequestInterceptor({userContext:{}})),e.recipeImpl=e.env.__supertokensSessionRecipe,e.initCalled=!0},t=e,e.initCalled=!1,e.doRequest=function(n,a,u){return o(void 0,void 0,void 0,(function(){var o,l,f,g,p,v,m,b,w,k,S,R,D,x,A;return s(t,(function(t){switch(t.label){case 0:if(!e.initCalled)throw Error("init function not called");(0,d.logDebugMessage)("doRequest: start of fetch interception"),o=!1;try{l=void 0,"string"==typeof u?l=u:"object"==typeof u&&("string"==typeof u.url?l=u.url:"string"==typeof u.href&&(l=u.href)),o=!e.recipeImpl.shouldDoInterceptionBasedOnUrl(l,e.config.apiDomain,e.config.sessionTokenBackendDomain)}catch(t){if("Please provide a valid domain name"!==t.message)throw t;(0,d.logDebugMessage)("doRequest: Trying shouldDoInterceptionBasedOnUrl with location.origin"),o=!e.recipeImpl.shouldDoInterceptionBasedOnUrl(c.default.getReferenceOrThrow().windowHandler.location.getOrigin(),e.config.apiDomain,e.config.sessionTokenBackendDomain)}return(0,d.logDebugMessage)("doRequest: Value of doNotDoInterception: "+o),o?((0,d.logDebugMessage)("doRequest: Returning without interception"),[4,n(a)]):[3,2];case 1:return[2,t.sent()];case 2:return(f=new Headers(void 0!==a&&void 0!==a.headers?a.headers:u.headers)).has("Authorization")?[4,E("access")]:[3,5];case 3:return g=t.sent(),[4,E("refresh")];case 4:p=t.sent(),void 0!==g&&void 0!==p&&f.get("Authorization")==="Bearer ".concat(g)&&((0,d.logDebugMessage)("doRequest: Removing Authorization from user provided headers because it contains our access token"),f.delete("Authorization")),t.label=5;case 5:(0,d.logDebugMessage)("doRequest: Interception started"),i.ProcessState.getInstance().addState(i.PROCESS_STATE.CALLING_INTERCEPTION_REQUEST),v=0,m=void 0,t.label=6;case 6:return[4,T(!0)];case 7:return b=t.sent(),w=new Headers(f),k=r(r({},a),{headers:w}),"EXISTS"!==b.status?[3,9]:[4,h.getToken(b.lastAccessTokenUpdate)];case 8:void 0!==(S=t.sent())&&((0,d.logDebugMessage)("doRequest: Adding anti-csrf token to request"),w.set("anti-csrf",S)),t.label=9;case 9:return e.config.autoAddCredentials&&((0,d.logDebugMessage)("doRequest: Adding credentials include"),void 0===k?k={credentials:"include"}:void 0===k.credentials&&(k=r(r({},k),{credentials:"include"}))),w.has("rid")?(0,d.logDebugMessage)("doRequest: rid header was already there in request"):((0,d.logDebugMessage)("doRequest: Adding rid header: anti-csrf"),w.set("rid","anti-csrf")),R=e.config.tokenTransferMethod,(0,d.logDebugMessage)("doRequest: Adding st-auth-mode header: "+R),w.set("st-auth-mode",R),[4,M(w)];case 10:return t.sent(),(0,d.logDebugMessage)("doRequest: Making user's http call"),[4,n(k)];case 11:return D=t.sent(),(0,d.logDebugMessage)("doRequest: User's http call ended"),[4,_(D)];case 12:if(t.sent(),L("EXISTS"===b.status,D.status,D.headers.get("front-token")),D.status!==e.config.sessionExpiredStatusCode)return[3,14];if((0,d.logDebugMessage)("doRequest: Status code is: "+D.status),v>=e.config.maxRetryAttemptsForSessionRefresh)throw(0,d.logDebugMessage)("doRequest: Maximum session refresh attempts reached. sessionRefreshAttempts: ".concat(v,", maxRetryAttemptsForSessionRefresh: ").concat(e.config.maxRetryAttemptsForSessionRefresh)),x="Received a 401 response from ".concat(u,". Attempted to refresh the session and retry the request with the updated session tokens ").concat(e.config.maxRetryAttemptsForSessionRefresh," times, but each attempt resulted in a 401 error. The maximum session refresh limit has been reached. Please investigate your API. To increase the session refresh attempts, update maxRetryAttemptsForSessionRefresh in the config."),console.error(x),new Error(x);return[4,y(b)];case 13:if(A=t.sent(),v++,(0,d.logDebugMessage)("doRequest: sessionRefreshAttempts: "+v),"RETRY"!==A.result){if((0,d.logDebugMessage)("doRequest: Not retrying original request"),void 0!==A.error){if(!(A.error instanceof Response))throw A.error;m=A.error}else m=D;return[3,18]}return(0,d.logDebugMessage)("doRequest: Retrying original request"),[3,17];case 14:return D.status!==e.config.invalidClaimStatusCode?[3,16]:[4,I(D)];case 15:t.sent(),t.label=16;case 16:return[2,D];case 17:return[3,6];case 18:return[2,m]}}))}))},e.attemptRefreshingSession=function(){return o(void 0,void 0,void 0,(function(){var n;return s(t,(function(t){switch(t.label){case 0:if(!e.initCalled)throw Error("init function not called");return[4,T(!1)];case 1:return[4,y(t.sent())];case 2:if("API_ERROR"===(n=t.sent()).result)throw n.error;return[2,"RETRY"===n.result]}}))}))},e}();t.default=p;var v="st-last-access-token-update",m="st-refresh-token",b="st-access-token",w="sAntiCsrf",k="sFrontToken";function y(e){return o(this,void 0,void 0,(function(){var t,n,r,o,i,u,c,f,v,m,b,w,k,y,S;return s(this,(function(s){switch(s.label){case 0:return[4,l.default.getReferenceOrThrow().lockFactory()];case 1:t=s.sent(),s.label=2;case 2:return(0,d.logDebugMessage)("onUnauthorisedResponse: trying to acquire lock"),[4,t.acquireLock("REFRESH_TOKEN_USE",1e3)];case 3:if(!s.sent())return[3,21];(0,d.logDebugMessage)("onUnauthorisedResponse: lock acquired"),s.label=4;case 4:return s.trys.push([4,17,19,21]),[4,T(!1)];case 5:return"NOT_EXISTS"===(n=s.sent()).status?((0,d.logDebugMessage)("onUnauthorisedResponse: Not refreshing because local session state is NOT_EXISTS"),p.config.onHandleEvent({action:"UNAUTHORISED",sessionExpiredOrRevoked:!1,userContext:{}}),[2,{result:"SESSION_EXPIRED"}]):(r="EXISTS"===n.status,o="EXISTS"===e.status,i=n.status!==e.status,u="lastAccessTokenUpdate"in n&&"lastAccessTokenUpdate"in e&&n.lastAccessTokenUpdate!==e.lastAccessTokenUpdate,i&&r?((0,d.logDebugMessage)("onUnauthorisedResponse: Retrying early because session status has changed and postLockLSS.status is EXISTS"),[2,{result:"RETRY"}]):r&&o&&u?((0,d.logDebugMessage)("onUnauthorisedResponse: Retrying early because pre and post lastAccessTokenUpdate don't match"),[2,{result:"RETRY"}]):(c=new Headers,"EXISTS"!==e.status?[3,7]:[4,h.getToken(e.lastAccessTokenUpdate)]));case 6:void 0!==(f=s.sent())&&((0,d.logDebugMessage)("onUnauthorisedResponse: Adding anti-csrf token to refresh API call"),c.set("anti-csrf",f)),s.label=7;case 7:return(0,d.logDebugMessage)("onUnauthorisedResponse: Adding rid and fdi-versions to refresh call header"),c.set("rid",p.rid),c.set("fdi-version",a.supported_fdi.join(",")),v=p.config.tokenTransferMethod,(0,d.logDebugMessage)("onUnauthorisedResponse: Adding st-auth-mode header: "+v),c.set("st-auth-mode",v),[4,M(c,!0)];case 8:return s.sent(),(0,d.logDebugMessage)("onUnauthorisedResponse: Calling refresh pre API hook"),[4,p.config.preAPIHook({action