@versini/auth0-react-thin 2.24.0 → 2.25.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.
@@ -1,2 +1,2 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).reactAuth0={},e.React)}(this,function(e,t){"use strict";function n(e){var t=Object.create(null);return e&&Object.keys(e).forEach(function(n){if("default"!==n){var o=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,o.get?o:{enumerable:!0,get:function(){return e[n]}})}}),t.default=e,Object.freeze(t)}var o=n(t),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)};var i=function(){return i=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},i.apply(this,arguments)};function a(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n}function s(e,t,n,o){return new(n||(n=Promise))(function(r,i){function a(e){try{c(o.next(e))}catch(e){i(e)}}function s(e){try{c(o.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((o=o.apply(e,t||[])).next())})}function c(e,t){var n,o,r,i={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return a.next=s(0),a.throw=s(1),a.return=s(2),"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(c){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(i=0)),i;)try{if(n=1,o&&(r=2&s[0]?o.return:s[0]?o.throw||((r=o.return)&&r.call(o),0):o.next)&&!(r=r.call(o,s[1])).done)return r;switch(o=0,r&&(s=[2&s[0],r.value]),s[0]){case 0:case 1:r=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,o=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(r=i.trys,(r=r.length>0&&r[r.length-1])||6!==s[0]&&2!==s[0])){i=0;continue}if(3===s[0]&&(!r||s[1]>r[0]&&s[1]<r[3])){i.label=s[1];break}if(6===s[0]&&i.label<r[1]){i.label=r[1],r=s;break}if(r&&i.label<r[2]){i.label=r[2],i.ops.push(s);break}r[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(e){s=[6,e],o=0}finally{n=r=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,c])}}}function u(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n}function l(e,t,n,o){if("a"===n&&!o)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!o:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===n?o:"a"===n?o.call(e):o?o.value:t.get(e)}function h(e,t,n,o,r){if("m"===o)throw new TypeError("Private method is not writable");if("a"===o&&!r)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!r:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===o?r.call(e,n):r?r.value=n:t.set(e,n),n}function d(e,t){this.v=e,this.k=t}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=Array(t);n<t;n++)o[n]=e[n];return o}function f(e,t,n){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}function m(e){return new d(e,0)}function y(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function w(e,t){return e.get(f(e,t))}function g(e,t,n){y(e,t),t.set(e,n)}function v(e,t,n){return e.set(f(e,t),n),n}function b(e,t){y(e,t),t.add(e)}function k(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,o)}return n}function S(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?_(Object(n),!0).forEach(function(t){k(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):_(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function T(e,t){if(null==e)return{};var n,o,r=function(e,t){if(null==e)return{};var n={};for(var o in e)if({}.hasOwnProperty.call(e,o)){if(-1!==t.indexOf(o))continue;n[o]=e[o]}return n}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o<i.length;o++)n=i[o],-1===t.indexOf(n)&&{}.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function E(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var o,r,i,a,s=[],c=!0,u=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(o=i.call(n)).done)&&(s.push(o.value),s.length!==t);c=!0);}catch(e){u=!0,r=e}finally{try{if(!c&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(u)throw r}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return p(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?p(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function P(e){var t,n;function o(t,n){try{var i=e[t](n),a=i.value,s=a instanceof d;Promise.resolve(s?a.v:a).then(function(n){if(s){var c="return"===t&&a.k?t:"next";if(!a.k||n.done)return o(c,n);n=e[c](n).value}r(!!i.done,n)},function(e){o("throw",e)})}catch(e){r(2,e)}}function r(e,r){2===e?t.reject(r):t.resolve({value:r,done:e}),(t=t.next)?o(t.key,t.arg):n=null}this._invoke=function(e,r){return new Promise(function(i,a){var s={key:e,arg:r,resolve:i,reject:a,next:null};n?n=n.next=s:(t=n=s,o(e,r))})},"function"!=typeof e.return&&(this.return=void 0)}"function"==typeof SuppressedError&&SuppressedError,"function"==typeof SuppressedError&&SuppressedError,P.prototype["function"==typeof Symbol&&Symbol.asyncIterator||"@@asyncIterator"]=function(){return this},P.prototype.next=function(e){return this._invoke("next",e)},P.prototype.throw=function(e){return this._invoke("throw",e)},P.prototype.return=function(e){return this._invoke("return",e)};const A={timeoutInSeconds:60},R=1e4,C="memory",I="online_access",x={name:"auth0-spa-js",version:"2.24.1"},O=()=>Date.now(),W="default";class j extends Error{constructor(e,t){super(t),this.error=e,this.error_description=t,Object.setPrototypeOf(this,j.prototype)}static fromPayload(e){let t=e.error,n=e.error_description;return new j(t,n)}}class U extends j{constructor(e,t){super("invalid_configuration","".concat(e," ").concat(t)),this.suggestion=t,Object.setPrototypeOf(this,U.prototype)}}class K extends j{constructor(e,t,n){let o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;super(e,t),this.state=n,this.appState=o,Object.setPrototypeOf(this,K.prototype)}}class L extends j{constructor(e,t,n,o){let r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null;super(e,t),this.connection=n,this.state=o,this.appState=r,Object.setPrototypeOf(this,L.prototype)}}class N extends j{constructor(){super("timeout","Timeout"),Object.setPrototypeOf(this,N.prototype)}}class M extends N{constructor(e){super(),this.popup=e,Object.setPrototypeOf(this,M.prototype)}}class D extends j{constructor(e){super("cancelled","Popup closed"),this.popup=e,Object.setPrototypeOf(this,D.prototype)}}class z extends j{constructor(){super("popup_open","Unable to open a popup for loginWithPopup - window.open returned `null`"),Object.setPrototypeOf(this,z.prototype)}}class J extends j{constructor(e,t,n,o){super(e,t),this.mfa_token=n,this.mfa_requirements=o,Object.setPrototypeOf(this,J.prototype)}}class H extends j{constructor(e,t){super("missing_refresh_token","Missing Refresh Token (audience: '".concat(V(e,["default"]),"', scope: '").concat(V(t),"')")),this.audience=e,this.scope=t,Object.setPrototypeOf(this,H.prototype)}}class Z extends j{constructor(e,t){super("missing_scopes","Missing requested scopes after refresh (audience: '".concat(V(e,["default"]),"', missing scope: '").concat(V(t),"')")),this.audience=e,this.scope=t,Object.setPrototypeOf(this,Z.prototype)}}class F extends j{constructor(e){super("use_dpop_nonce","Server rejected DPoP proof: wrong nonce"),this.newDpopNonce=e,Object.setPrototypeOf(this,F.prototype)}}function V(e){return e&&!(arguments.length>1&&void 0!==arguments[1]?arguments[1]:[]).includes(e)?e:""}const G=()=>window.crypto,X=()=>{let e="";for(;e.length<43;){const t=G().getRandomValues(new Uint8Array(43-e.length));for(const n of t)e.length<43&&n<198&&(e+="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_~."[n%66])}return e},Y=e=>btoa(e),B=[{key:"name",type:["string"]},{key:"version",type:["string","number"]},{key:"env",type:["object"]}],q=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return Object.keys(e).reduce((n,o)=>{if(t&&"env"===o)return n;const r=B.find(e=>e.key===o);return r&&r.type.includes(typeof e[o])&&(n[o]=e[o]),n},{})},Q=e=>{var t=e.clientId,n=u(e,["clientId"]);return new URLSearchParams((e=>Object.keys(e).filter(t=>void 0!==e[t]).reduce((t,n)=>Object.assign(Object.assign({},t),{[n]:e[n]}),{}))(Object.assign({client_id:t},n))).toString()},$=async e=>{const t=G().subtle.digest({name:"SHA-256"},(new TextEncoder).encode(e));return await t},ee=e=>(e=>decodeURIComponent(atob(e).split("").map(e=>"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2)).join("")))(e.replace(/_/g,"/").replace(/-/g,"+")),te=e=>{const t=new Uint8Array(e);return(e=>{const t={"+":"-","/":"_","=":""};return e.replace(/[+/=]/g,e=>t[e])})(window.btoa(String.fromCharCode(...Array.from(t))))};var ne="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},oe={},re={};Object.defineProperty(re,"__esModule",{value:!0});var ie=function(){function e(){var e=this;this.locked=new Map,this.addToLocked=function(t,n){var o=e.locked.get(t);void 0===o?void 0===n?e.locked.set(t,[]):e.locked.set(t,[n]):void 0!==n&&(o.unshift(n),e.locked.set(t,o))},this.isLocked=function(t){return e.locked.has(t)},this.lock=function(t){return new Promise(function(n,o){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 o=n.pop();e.locked.set(t,n),void 0!==o&&setTimeout(o,0)}else e.locked.delete(t)}}return e.getInstance=function(){return void 0===e.instance&&(e.instance=new e),e.instance},e}();re.default=function(){return ie.getInstance()};var ae=ne&&ne.__awaiter||function(e,t,n,o){return new(n||(n=Promise))(function(r,i){function a(e){try{c(o.next(e))}catch(e){i(e)}}function s(e){try{c(o.throw(e))}catch(e){i(e)}}function c(e){e.done?r(e.value):new n(function(t){t(e.value)}).then(a,s)}c((o=o.apply(e,t||[])).next())})},se=ne&&ne.__generator||function(e,t){var n,o,r,i,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,o&&(r=2&i[0]?o.return:i[0]?o.throw||((r=o.return)&&r.call(o),0):o.next)&&!(r=r.call(o,i[1])).done)return r;switch(o=0,r&&(i=[2&i[0],r.value]),i[0]){case 0:case 1:r=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,o=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!r||i[1]>r[0]&&i[1]<r[3])){a.label=i[1];break}if(6===i[0]&&a.label<r[1]){a.label=r[1],r=i;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(i);break}r[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],o=0}finally{n=r=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}},ce=ne;Object.defineProperty(oe,"__esModule",{value:!0});var ue=re,le="browser-tabs-lock-key",he={key:function(e){return ae(ce,void 0,void 0,function(){return se(this,function(e){throw new Error("Unsupported")})})},getItem:function(e){return ae(ce,void 0,void 0,function(){return se(this,function(e){throw new Error("Unsupported")})})},clear:function(){return ae(ce,void 0,void 0,function(){return se(this,function(e){return[2,window.localStorage.clear()]})})},removeItem:function(e){return ae(ce,void 0,void 0,function(){return se(this,function(e){throw new Error("Unsupported")})})},setItem:function(e,t){return ae(ce,void 0,void 0,function(){return se(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 de(e){return new Promise(function(t){return setTimeout(t,e)})}function pe(e){for(var t="",n=0;n<e;n++)t+="0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz"[Math.floor(61*Math.random())];return t}var fe=function(){function e(t){this.acquiredIatSet=new Set,this.storageHandler=void 0,this.id=Date.now().toString()+pe(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),ae(this,void 0,void 0,function(){var o,r,i,a,s,c,u;return se(this,function(l){switch(l.label){case 0:o=Date.now()+pe(4),r=Date.now()+n,i=le+"-"+t,a=void 0===this.storageHandler?he:this.storageHandler,l.label=1;case 1:return Date.now()<r?[4,de(30)]:[3,8];case 2:return l.sent(),null!==a.getItemSync(i)?[3,5]:(s=this.id+"-"+t+"-"+o,[4,de(Math.floor(25*Math.random()))]);case 3:return l.sent(),a.setItemSync(i,JSON.stringify({id:this.id,iat:o,timeoutKey:s,timeAcquired:Date.now(),timeRefreshed:Date.now()})),[4,de(30)];case 4:return l.sent(),null!==(c=a.getItemSync(i))&&(u=JSON.parse(c)).id===this.id&&u.iat===o?(this.acquiredIatSet.add(o),this.refreshLockWhileAcquired(i,o),[2,!0]):[3,7];case 5:return e.lockCorrector(void 0===this.storageHandler?he:this.storageHandler),[4,this.waitForSomethingToChange(r)];case 6:l.sent(),l.label=7;case 7:return o=Date.now()+pe(4),[3,1];case 8:return[2,!1]}})})},e.prototype.refreshLockWhileAcquired=function(e,t){return ae(this,void 0,void 0,function(){var n=this;return se(this,function(o){return setTimeout(function(){return ae(n,void 0,void 0,function(){var n,o,r;return se(this,function(i){switch(i.label){case 0:return[4,ue.default().lock(t)];case 1:return i.sent(),this.acquiredIatSet.has(t)?(n=void 0===this.storageHandler?he:this.storageHandler,null===(o=n.getItemSync(e))?(ue.default().unlock(t),[2]):((r=JSON.parse(o)).timeRefreshed=Date.now(),n.setItemSync(e,JSON.stringify(r)),ue.default().unlock(t),this.refreshLockWhileAcquired(e,t),[2])):(ue.default().unlock(t),[2])}})})},1e3),[2]})})},e.prototype.waitForSomethingToChange=function(t){return ae(this,void 0,void 0,function(){return se(this,function(n){switch(n.label){case 0:return[4,new Promise(function(n){var o=!1,r=Date.now(),i=!1;function a(){if(i||(window.removeEventListener("storage",a),e.removeFromWaiting(a),clearTimeout(s),i=!0),!o){o=!0;var t=50-(Date.now()-r);t>0?setTimeout(n,t):n(null)}}window.addEventListener("storage",a),e.addToWaiting(a);var s=setTimeout(a,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 ae(this,void 0,void 0,function(){return se(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 ae(this,void 0,void 0,function(){var n,o,r,i;return se(this,function(a){switch(a.label){case 0:return n=void 0===this.storageHandler?he:this.storageHandler,o=le+"-"+t,null===(r=n.getItemSync(o))?[2]:(i=JSON.parse(r)).id!==this.id?[3,2]:[4,ue.default().lock(i.iat)];case 1:a.sent(),this.acquiredIatSet.delete(i.iat),n.removeItemSync(o),ue.default().unlock(i.iat),e.notifyWaiters(),a.label=2;case 2:return[2]}})})},e.lockCorrector=function(t){for(var n=Date.now()-5e3,o=t,r=[],i=0;;){var a=o.keySync(i);if(null===a)break;r.push(a),i++}for(var s=!1,c=0;c<r.length;c++){var u=r[c];if(u.includes(le)){var l=o.getItemSync(u);if(null!==l){var h=JSON.parse(l);(void 0===h.timeRefreshed&&h.timeAcquired<n||void 0!==h.timeRefreshed&&h.timeRefreshed<n)&&(o.removeItemSync(u),s=!0)}}}s&&e.notifyWaiters()},e.waiters=void 0,e}(),me=oe.default=fe;class ye{async runWithLock(e,t,n){const o=new AbortController,r=setTimeout(()=>o.abort(),t);try{return await navigator.locks.request(e,{mode:"exclusive",signal:o.signal},async e=>{if(clearTimeout(r),!e)throw new Error("Lock not available");return await n()})}catch(e){if(clearTimeout(r),"AbortError"===(null==e?void 0:e.name))throw new N;throw e}}}class we{constructor(){this.activeLocks=new Set,this.lock=new me,this.pagehideHandler=()=>{this.activeLocks.forEach(e=>this.lock.releaseLock(e)),this.activeLocks.clear()}}async runWithLock(e,t,n){let o=!1;for(let n=0;n<10&&!o;n++)o=await this.lock.acquireLock(e,t);if(!o)throw new N;this.activeLocks.add(e),1===this.activeLocks.size&&"undefined"!=typeof window&&window.addEventListener("pagehide",this.pagehideHandler);try{return await n()}finally{this.activeLocks.delete(e),await this.lock.releaseLock(e),0===this.activeLocks.size&&"undefined"!=typeof window&&window.removeEventListener("pagehide",this.pagehideHandler)}}}let ge=null;const ve=new TextEncoder,be=new TextDecoder;function ke(e){return"string"==typeof e?ve.encode(e):be.decode(e)}function _e(e){if("number"!=typeof e.modulusLength||e.modulusLength<2048)throw new Pe(`${e.name} modulusLength must be at least 2048 bits`)}let Se;if(Uint8Array.prototype.toBase64)Se=e=>(e instanceof ArrayBuffer&&(e=new Uint8Array(e)),e.toBase64({alphabet:"base64url",omitPadding:!0}));else{const e=32768;Se=t=>{t instanceof ArrayBuffer&&(t=new Uint8Array(t));const n=[];for(let o=0;o<t.byteLength;o+=e)n.push(String.fromCharCode.apply(null,t.subarray(o,o+e)));return btoa(n.join("")).replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}}function Te(e){return Se(e)}class Ee extends Error{constructor(e){var t;super(null!=e?e:"operation not supported"),this.name=this.constructor.name,null===(t=Error.captureStackTrace)||void 0===t||t.call(Error,this,this.constructor)}}class Pe extends Error{constructor(e){var t;super(e),this.name=this.constructor.name,null===(t=Error.captureStackTrace)||void 0===t||t.call(Error,this,this.constructor)}}function Ae(e){switch(e.algorithm.name){case"RSA-PSS":return function(e){if("SHA-256"===e.algorithm.hash.name)return"PS256";throw new Ee("unsupported RsaHashedKeyAlgorithm hash name")}(e);case"RSASSA-PKCS1-v1_5":return function(e){if("SHA-256"===e.algorithm.hash.name)return"RS256";throw new Ee("unsupported RsaHashedKeyAlgorithm hash name")}(e);case"ECDSA":return function(e){if("P-256"===e.algorithm.namedCurve)return"ES256";throw new Ee("unsupported EcKeyAlgorithm namedCurve")}(e);case"Ed25519":return"Ed25519";default:throw new Ee("unsupported CryptoKey algorithm name")}}function Re(e){return e instanceof CryptoKey}function Ce(e){return Re(e)&&"public"===e.type}async function Ie(e,t,n,o,r,i){const a=null==e?void 0:e.privateKey,s=null==e?void 0:e.publicKey;if(!Re(c=a)||"private"!==c.type)throw new TypeError('"keypair.privateKey" must be a private CryptoKey');var c;if(!Ce(s))throw new TypeError('"keypair.publicKey" must be a public CryptoKey');if(!0!==s.extractable)throw new TypeError('"keypair.publicKey.extractable" must be true');if("string"!=typeof t)throw new TypeError('"htu" must be a string');if("string"!=typeof n)throw new TypeError('"htm" must be a string');if(void 0!==o&&"string"!=typeof o)throw new TypeError('"nonce" must be a string or undefined');if(void 0!==r&&"string"!=typeof r)throw new TypeError('"accessToken" must be a string or undefined');if(void 0!==i&&("object"!=typeof i||null===i||Array.isArray(i)))throw new TypeError('"additional" must be an object');return async function(e,t,n){if(!1===n.usages.includes("sign"))throw new TypeError('private CryptoKey instances used for signing assertions must include "sign" in their "usages"');const o=`${Te(ke(JSON.stringify(e)))}.${Te(ke(JSON.stringify(t)))}`;return`${o}.${Te(await crypto.subtle.sign(function(e){switch(e.algorithm.name){case"ECDSA":return{name:e.algorithm.name,hash:"SHA-256"};case"RSA-PSS":return _e(e.algorithm),{name:e.algorithm.name,saltLength:32};case"RSASSA-PKCS1-v1_5":return _e(e.algorithm),{name:e.algorithm.name};case"Ed25519":return{name:e.algorithm.name}}throw new Ee}(n),n,ke(o)))}`}({alg:Ae(a),typ:"dpop+jwt",jwk:await xe(s)},Object.assign(Object.assign({},i),{iat:Math.floor(Date.now()/1e3),jti:crypto.randomUUID(),htm:n,nonce:o,htu:t,ath:r?Te(await crypto.subtle.digest("SHA-256",ke(r))):void 0}),a)}async function xe(e){const{kty:t,e:n,n:o,x:r,y:i,crv:a}=await crypto.subtle.exportKey("jwk",e);return{kty:t,crv:a,e:n,n:o,x:r,y:i}}const Oe="dpop-nonce",We=["authorization_code","refresh_token","urn:ietf:params:oauth:grant-type:token-exchange","urn:okta:params:oauth:grant-type:webauthn","http://auth0.com/oauth/grant-type/mfa-oob","http://auth0.com/oauth/grant-type/mfa-otp","http://auth0.com/oauth/grant-type/mfa-recovery-code"];const je=(e,t)=>new Promise(function(n,o){const r=new MessageChannel;r.port1.onmessage=function(e){e.data.error?o(new Error(e.data.error)):n(e.data),r.port1.close()},t.postMessage(e,[r.port2])}),Ue=(e,t,n)=>{const o=new AbortController;let r;return t.signal=o.signal,Promise.race([fetch(e,t),new Promise((e,t)=>{r=setTimeout(()=>{o.abort(),t(new Error("Timeout when executing 'fetch'"))},n)})]).finally(()=>{clearTimeout(r)})},Ke=async function(e,t,n,o,r,i){let a=arguments.length>6&&void 0!==arguments[6]?arguments[6]:R;return r?(async(e,t,n,o,r,i,a,s,c,u)=>je({type:"refresh",auth:{audience:t,scope:n},timeout:r,fetchUrl:e,fetchOptions:o,useFormData:a,useMrrt:s,skipTokenStorage:c,preserveRefreshToken:u},i))(e,t,n,o,a,r,i,arguments.length>7?arguments[7]:void 0,arguments.length>8?arguments[8]:void 0,arguments.length>9?arguments[9]:void 0):(async(e,t,n)=>{const o=await Ue(e,t,n);return{ok:o.ok,json:await o.json(),headers:(r=o.headers,[...r].reduce((e,t)=>{let n=E(t,2),o=n[0],r=n[1];return e[o]=r,e},{}))};var r})(e,o,a)};async function Le(e,t,n,o,r,i,a,s,c,l,h,d){if(c){const t=await c.generateProof({url:e,method:r.method||"GET",nonce:await c.getNonce()});r.headers=Object.assign(Object.assign({},r.headers),{dpop:t})}let p,f=null;for(let c=0;c<3;c++)try{p=await Ke(e,n,o,r,i,a,t,s,h,d),f=null;break}catch(e){f=e}if(f)throw f;const m=p.json,y=m.error,w=m.error_description,g=u(m,["error","error_description"]),v=p,b=v.headers,k=v.ok;let _;if(c&&(_=b[Oe],_&&await c.setNonce(_)),!k){const u=w||"HTTP error. Unable to fetch ".concat(e);if("mfa_required"===y)throw new J(y,u,g.mfa_token,g.mfa_requirements);if("missing_refresh_token"===y)throw new H(n,o);if("use_dpop_nonce"===y){if(!c||!_||l)throw new F(_);return Le(e,t,n,o,r,i,a,s,c,!0,h,d)}throw new j(y||"request_error",u)}return g}async function Ne(e,t,n){var o=e.baseUrl,r=e.timeout,i=e.audience,a=e.scope,s=e.auth0Client,c=e.useFormData,l=e.useMrrt,h=e.dpop,d=e.preserveRefreshToken,p=u(e,["baseUrl","timeout","audience","scope","auth0Client","useFormData","useMrrt","dpop","preserveRefreshToken"]);const f="urn:ietf:params:oauth:grant-type:token-exchange"===p.grant_type,m="urn:okta:params:oauth:grant-type:webauthn"===p.grant_type,y="refresh_token"===p.grant_type&&l,w=f||m||y,g=Object.assign(Object.assign(Object.assign({},p),w&&i&&{audience:i}),w&&a&&{scope:a}),v=m||!c,b=v?JSON.stringify(g):Q(g),k=(_=p.grant_type,We.includes(_));var _;return await Le("".concat(o,"/oauth/token"),r,i||W,a,{method:"POST",body:b,headers:{"Content-Type":v?"application/json":"application/x-www-form-urlencoded","Auth0-Client":btoa(JSON.stringify(q(s||x)))}},t,c,l,k?h:void 0,void 0,n,d)}const Me=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return(o=t.filter(Boolean).join(" ").trim().split(/\s+/),Array.from(new Set(o))).join(" ");var o},De=(e,t,n)=>{let o;return n&&(o=e[n]),o||(o=e[W]),Me(o,t)},ze="@@auth0spajs@@",Je="@@user@@";class He{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:ze,n=arguments.length>2?arguments[2]:void 0;this.prefix=t,this.suffix=n,this.clientId=e.clientId,this.scope=e.scope,this.audience=e.audience}toKey(){return[this.prefix,this.clientId,this.audience,this.scope,this.suffix].filter(Boolean).join("::")}static fromKey(e){const t=E(e.split("::"),4),n=t[0],o=t[1],r=t[2],i=t[3];return new He({clientId:o,scope:i,audience:r},n)}static fromCacheEntry(e){const t=e.scope,n=e.audience,o=e.client_id;return new He({scope:t,audience:n,clientId:o})}}class Ze{set(e,t){localStorage.setItem(e,JSON.stringify(t))}get(e){const t=window.localStorage.getItem(e);if(t)try{return JSON.parse(t)}catch(e){return}}remove(e){localStorage.removeItem(e)}allKeys(){return Object.keys(window.localStorage).filter(e=>e.startsWith(ze))}}class Fe{constructor(){this.enclosedCache=function(){let e={};return{set(t,n){e[t]=n},get(t){const n=e[t];if(n)return n},remove(t){delete e[t]},allKeys:()=>Object.keys(e)}}()}}class Ve{constructor(e,t,n){this.cache=e,this.keyManifest=t,this.nowProvider=n||O}async setIdToken(e,t,n){var o;const r=this.getIdTokenCacheKey(e);await this.cache.set(r,{id_token:t,decodedToken:n}),await(null===(o=this.keyManifest)||void 0===o?void 0:o.add(r))}async getIdToken(e){const t=await this.cache.get(this.getIdTokenCacheKey(e.clientId));if(!t&&e.scope&&e.audience){const t=await this.get(e);if(!t)return;if(!t.id_token||!t.decodedToken)return;return{id_token:t.id_token,decodedToken:t.decodedToken}}if(t)return{id_token:t.id_token,decodedToken:t.decodedToken}}async get(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=arguments.length>3?arguments[3]:void 0;var r;let i=await this.cache.get(e.toKey()),a=e;if(!i){const t=await this.getCacheKeys();if(!t)return;const r=this.matchExistingCacheKey(e,t);if(r&&(i=await this.cache.get(r),a=He.fromKey(r)),!i&&n&&"cache-only"!==o)return this.getEntryWithRefreshToken(e,t)}if(!i)return;const s=await this.nowProvider(),c=Math.floor(s/1e3);return i.expiresAt-t<c?i.body.refresh_token?this.modifiedCachedEntry(i,a):(await this.cache.remove(a.toKey()),void await(null===(r=this.keyManifest)||void 0===r?void 0:r.remove(a.toKey()))):i.body}async modifiedCachedEntry(e,t){const n={refresh_token:e.body.refresh_token,audience:e.body.audience,scope:e.body.scope},o={body:n,expiresAt:e.expiresAt};return await this.cache.set(t.toKey(),o),{refresh_token:n.refresh_token,audience:n.audience,scope:n.scope}}async set(e){var t;const n=new He({clientId:e.client_id,scope:e.scope,audience:e.audience}),o=await this.wrapCacheEntry(e);await this.cache.set(n.toKey(),o),await(null===(t=this.keyManifest)||void 0===t?void 0:t.add(n.toKey()))}async remove(e,t,n){const o=new He({clientId:e,scope:n,audience:t});await this.cache.remove(o.toKey())}async stripRefreshToken(e){var t;const n=await this.getCacheKeys();if(n)for(const o of n){const n=await this.cache.get(o);(null===(t=null==n?void 0:n.body)||void 0===t?void 0:t.refresh_token)===e&&(delete n.body.refresh_token,await this.cache.set(o,n))}}async clear(e){var t;const n=await this.getCacheKeys();n&&(await n.filter(t=>!e||t.includes(e)).reduce(async(e,t)=>{await e,await this.cache.remove(t)},Promise.resolve()),await(null===(t=this.keyManifest)||void 0===t?void 0:t.clear()))}async wrapCacheEntry(e){const t=await this.nowProvider();return{body:e,expiresAt:Math.floor(t/1e3)+e.expires_in}}async getCacheKeys(){var e;return this.keyManifest?null===(e=await this.keyManifest.get())||void 0===e?void 0:e.keys:this.cache.allKeys?this.cache.allKeys():void 0}getIdTokenCacheKey(e){return new He({clientId:e},ze,Je).toKey()}matchExistingCacheKey(e,t){return t.filter(t=>{var n;const o=He.fromKey(t),r=new Set(o.scope&&o.scope.split(" ")),i=(null===(n=e.scope)||void 0===n?void 0:n.split(" "))||[],a=o.scope&&i.reduce((e,t)=>e&&r.has(t),!0);return o.prefix===ze&&o.clientId===e.clientId&&o.audience===e.audience&&a})[0]}async getEntryWithRefreshToken(e,t){var n;for(const o of t){const t=He.fromKey(o);if(t.prefix===ze&&t.clientId===e.clientId){const e=await this.cache.get(o);if(null===(n=null==e?void 0:e.body)||void 0===n?void 0:n.refresh_token)return{refresh_token:e.body.refresh_token,audience:e.body.audience,scope:e.body.scope}}}}async getRefreshTokensByAudience(e,t){var n;const o=await this.getCacheKeys();if(!o)return[];const r=new Set;for(const i of o){const o=He.fromKey(i);if(o.prefix===ze&&o.clientId===t&&o.audience===e){const e=await this.cache.get(i);(null===(n=null==e?void 0:e.body)||void 0===n?void 0:n.refresh_token)&&r.add(e.body.refresh_token)}}return Array.from(r)}async updateEntry(e,t,n){let o=arguments.length>3&&void 0!==arguments[3]&&arguments[3];const r=await this.getCacheKeys();if(r)for(const i of r){if(He.fromKey(i).clientId!==n)continue;const r=await this.cache.get(i);if(!(null==r?void 0:r.body))continue;const a=r.body.refresh_token;a&&(o||a===e)&&(r.body.refresh_token=t,await this.cache.set(i,r))}}}class Ge{constructor(e,t,n){this.storage=e,this.clientId=t,this.cookieDomain=n,this.storageKey="".concat("a0.spajs.txs",".").concat(this.clientId)}create(e){this.storage.save(this.storageKey,e,{daysUntilExpire:1,cookieDomain:this.cookieDomain})}get(){return this.storage.get(this.storageKey)}remove(){this.storage.remove(this.storageKey,{cookieDomain:this.cookieDomain})}}const Xe=e=>"number"==typeof e,Ye=["iss","aud","exp","nbf","iat","jti","azp","nonce","auth_time","at_hash","c_hash","acr","amr","sub_jwk","cnf","sip_from_tag","sip_date","sip_callid","sip_cseq_num","sip_via_branch","orig","dest","mky","events","toe","txn","rph","sid","vot","vtm"];var Be=ne&&ne.__assign||function(){return Be=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},Be.apply(this,arguments)};function qe(e,t){if(!t)return"";var n="; "+e;return!0===t?n:n+"="+t}var Qe=function(e){return function(e){for(var t={},n=e?e.split("; "):[],o=/(%[\dA-F]{2})+/gi,r=0;r<n.length;r++){var i=n[r].split("="),a=i.slice(1).join("=");'"'===a.charAt(0)&&(a=a.slice(1,-1));try{t[i[0].replace(o,decodeURIComponent)]=a.replace(o,decodeURIComponent)}catch(e){}}return t}(document.cookie)[e]};function $e(e,t,n){document.cookie=function(e,t,n){return encodeURIComponent(e).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent).replace(/\(/g,"%28").replace(/\)/g,"%29")+"="+encodeURIComponent(t).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent)+function(e){if("number"==typeof e.expires){var t=new Date;t.setMilliseconds(t.getMilliseconds()+864e5*e.expires),e.expires=t}return qe("Expires",e.expires?e.expires.toUTCString():"")+qe("Domain",e.domain)+qe("Path",e.path)+qe("Secure",e.secure)+qe("SameSite",e.sameSite)}(n)}(e,t,Be({path:"/"},n))}var et=$e,tt=function(e,t){$e(e,"",Be(Be({},t),{expires:-1}))};const nt={get(e){const t=Qe(e);if(void 0!==t)return JSON.parse(t)},save(e,t,n){let o={};"https:"===window.location.protocol&&(o={secure:!0,sameSite:"none"}),(null==n?void 0:n.daysUntilExpire)&&(o.expires=n.daysUntilExpire),(null==n?void 0:n.cookieDomain)&&(o.domain=n.cookieDomain),et(e,JSON.stringify(t),o)},remove(e,t){let n={};(null==t?void 0:t.cookieDomain)&&(n.domain=t.cookieDomain),tt(e,n)}},ot="_legacy_",rt={get:e=>nt.get(e)||nt.get("".concat(ot).concat(e)),save(e,t,n){let o={};"https:"===window.location.protocol&&(o={secure:!0}),(null==n?void 0:n.daysUntilExpire)&&(o.expires=n.daysUntilExpire),(null==n?void 0:n.cookieDomain)&&(o.domain=n.cookieDomain),et("".concat(ot).concat(e),JSON.stringify(t),o),nt.save(e,t,n)},remove(e,t){let n={};(null==t?void 0:t.cookieDomain)&&(n.domain=t.cookieDomain),tt(e,n),nt.remove(e,t),nt.remove("".concat(ot).concat(e),t)}},it={get(e){if("undefined"==typeof sessionStorage)return;const t=sessionStorage.getItem(e);return null!=t?JSON.parse(t):void 0},save(e,t){sessionStorage.setItem(e,JSON.stringify(t))},remove(e){sessionStorage.removeItem(e)}};e.ResponseType=void 0,function(e){e.Code="code",e.ConnectCode="connect_code"}(e.ResponseType||(e.ResponseType={}));var at,st=function(e){return at=at||function(e,t,n){var o=void 0===t?null:t,r=function(e,t){var n=atob(e);if(t){for(var o=new Uint8Array(n.length),r=0,i=n.length;r<i;++r)o[r]=n.charCodeAt(r);return String.fromCharCode.apply(null,new Uint16Array(o.buffer))}return n}(e,void 0!==n&&n),i=r.indexOf("\n",10)+1,a=r.substring(i)+(o?"//# sourceMappingURL="+o:""),s=new Blob([a],{type:"application/javascript"});return URL.createObjectURL(s)}("Lyogcm9sbHVwLXBsdWdpbi13ZWItd29ya2VyLWxvYWRlciAqLwohZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gZShlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgcj0wLG89QXJyYXkodCk7cjx0O3IrKylvW3JdPWVbcl07cmV0dXJuIG99ZnVuY3Rpb24gdCh0LHIpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfSh0KXx8ZnVuY3Rpb24oZSx0KXt2YXIgcj1udWxsPT1lP251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKG51bGwhPXIpe3ZhciBvLG4scyxpLGE9W10sYz0hMCxsPSExO3RyeXtpZihzPShyPXIuY2FsbChlKSkubmV4dCwwPT09dCl7aWYoT2JqZWN0KHIpIT09cilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShvPXMuY2FsbChyKSkuZG9uZSkmJihhLnB1c2goby52YWx1ZSksYS5sZW5ndGghPT10KTtjPSEwKTt9Y2F0Y2goZSl7bD0hMCxuPWV9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPXIucmV0dXJuJiYoaT1yLnJldHVybigpLE9iamVjdChpKSE9PWkpKXJldHVybn1maW5hbGx5e2lmKGwpdGhyb3cgbn19cmV0dXJuIGF9fSh0LHIpfHxmdW5jdGlvbih0LHIpe2lmKHQpe2lmKCJzdHJpbmciPT10eXBlb2YgdClyZXR1cm4gZSh0LHIpO3ZhciBvPXt9LnRvU3RyaW5nLmNhbGwodCkuc2xpY2UoOCwtMSk7cmV0dXJuIk9iamVjdCI9PT1vJiZ0LmNvbnN0cnVjdG9yJiYobz10LmNvbnN0cnVjdG9yLm5hbWUpLCJNYXAiPT09b3x8IlNldCI9PT1vP0FycmF5LmZyb20odCk6IkFyZ3VtZW50cyI9PT1vfHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdChvKT9lKHQscik6dm9pZCAwfX0odCxyKXx8ZnVuY3Rpb24oKXt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gZGVzdHJ1Y3R1cmUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfSgpfWNsYXNzIHIgZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3RvcihlLHQpe3N1cGVyKHQpLHRoaXMuZXJyb3I9ZSx0aGlzLmVycm9yX2Rlc2NyaXB0aW9uPXQsT2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsci5wcm90b3R5cGUpfXN0YXRpYyBmcm9tUGF5bG9hZChlKXtsZXQgdD1lLmVycm9yLG89ZS5lcnJvcl9kZXNjcmlwdGlvbjtyZXR1cm4gbmV3IHIodCxvKX19Y2xhc3MgbyBleHRlbmRzIHJ7Y29uc3RydWN0b3IoZSx0KXtzdXBlcigibWlzc2luZ19yZWZyZXNoX3Rva2VuIiwiTWlzc2luZyBSZWZyZXNoIFRva2VuIChhdWRpZW5jZTogJyIuY29uY2F0KG4oZSxbImRlZmF1bHQiXSksIicsIHNjb3BlOiAnIikuY29uY2F0KG4odCksIicpIikpLHRoaXMuYXVkaWVuY2U9ZSx0aGlzLnNjb3BlPXQsT2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsby5wcm90b3R5cGUpfX1mdW5jdGlvbiBuKGUpe3JldHVybiBlJiYhKGFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpbXSkuaW5jbHVkZXMoZSk/ZToiIn0iZnVuY3Rpb24iPT10eXBlb2YgU3VwcHJlc3NlZEVycm9yJiZTdXBwcmVzc2VkRXJyb3I7Y29uc3Qgcz1lPT57dmFyIHQ9ZS5jbGllbnRJZCxyPWZ1bmN0aW9uKGUsdCl7dmFyIHI9e307Zm9yKHZhciBvIGluIGUpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsbykmJnQuaW5kZXhPZihvKTwwJiYocltvXT1lW29dKTtpZihudWxsIT1lJiYiZnVuY3Rpb24iPT10eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIG49MDtmb3Iobz1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKGUpO248by5sZW5ndGg7bisrKXQuaW5kZXhPZihvW25dKTwwJiZPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwoZSxvW25dKSYmKHJbb1tuXV09ZVtvW25dXSl9cmV0dXJuIHJ9KGUsWyJjbGllbnRJZCJdKTtyZXR1cm4gbmV3IFVSTFNlYXJjaFBhcmFtcygoZT0+T2JqZWN0LmtleXMoZSkuZmlsdGVyKHQ9PnZvaWQgMCE9PWVbdF0pLnJlZHVjZSgodCxyKT0+T2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LHQpLHtbcl06ZVtyXX0pLHt9KSkoT2JqZWN0LmFzc2lnbih7Y2xpZW50X2lkOnR9LHIpKSkudG9TdHJpbmcoKX07bGV0IGk9e30sYT1udWxsO2NvbnN0IGM9KGUsdCk9PiIiLmNvbmNhdChlLCJ8IikuY29uY2F0KHQpLGw9KGUsdCk9PnQuc3RhcnRzV2l0aCgiIi5jb25jYXQoZSwifCIpKSx1PWU9PntPYmplY3QuZW50cmllcyhpKS5mb3JFYWNoKHI9PntsZXQgbz10KHIsMiksbj1vWzBdO29bMV09PT1lJiZkZWxldGUgaVtuXX0pfSxmPWU9Pntjb25zdCB0PW5ldyBVUkxTZWFyY2hQYXJhbXMoZSkscj17fTtyZXR1cm4gdC5mb3JFYWNoKChlLHQpPT57clt0XT1lfSkscn0saD1hc3luYyBlPT57bGV0IHIsbixhPWUuZGF0YSx1PWEudGltZW91dCxoPWEuYXV0aCxkPWEuZmV0Y2hVcmwscD1hLmZldGNoT3B0aW9ucyx5PWEudXNlRm9ybURhdGEsZz1hLnVzZU1ycnQsYj1hLnNraXBUb2tlblN0b3JhZ2UsTz1hLnByZXNlcnZlUmVmcmVzaFRva2VuLGs9dChlLnBvcnRzLDEpWzBdLG09e307Y29uc3Qgaj1ofHx7fSx2PWouYXVkaWVuY2UsXz1qLnNjb3BlO3RyeXtjb25zdCBlPXk/ZihwLmJvZHkpOkpTT04ucGFyc2UocC5ib2R5KTtpZighZS5yZWZyZXNoX3Rva2VuJiYicmVmcmVzaF90b2tlbiI9PT1lLmdyYW50X3R5cGUpe2lmKG49KChlLHQpPT5pW2MoZSx0KV0pKHYsXyksIW4mJmcpe2NvbnN0IGU9aS5sYXRlc3RfcmVmcmVzaF90b2tlbix0PSgoZSx0KT0+ISFPYmplY3Qua2V5cyhpKS5maW5kKHI9PntpZigibGF0ZXN0X3JlZnJlc2hfdG9rZW4iIT09cil7Y29uc3Qgbz1sKHQsciksbj1yLnNwbGl0KCJ8IilbMV0uc3BsaXQoIiAiKSxzPWUuc3BsaXQoIiAiKS5ldmVyeShlPT5uLmluY2x1ZGVzKGUpKTtyZXR1cm4gbyYmc319KSkoXyx2KTtlJiYhdCYmKG49ZSl9aWYoIW4pdGhyb3cgbmV3IG8odixfKTtwLmJvZHk9eT9zKE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSxlKSx7cmVmcmVzaF90b2tlbjpufSkpOkpTT04uc3RyaW5naWZ5KE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSxlKSx7cmVmcmVzaF90b2tlbjpufSkpfWxldCBhLGg7ImZ1bmN0aW9uIj09dHlwZW9mIEFib3J0Q29udHJvbGxlciYmKGE9bmV3IEFib3J0Q29udHJvbGxlcixwLnNpZ25hbD1hLnNpZ25hbCk7dHJ5e2g9YXdhaXQgUHJvbWlzZS5yYWNlKFsoVT11LG5ldyBQcm9taXNlKGU9PnNldFRpbWVvdXQoZSxVKSkpLGZldGNoKGQsT2JqZWN0LmFzc2lnbih7fSxwKSldKX1jYXRjaChlKXtyZXR1cm4gdm9pZCBrLnBvc3RNZXNzYWdlKHtlcnJvcjplLm1lc3NhZ2V9KX1pZighaClyZXR1cm4gYSYmYS5hYm9ydCgpLHZvaWQgay5wb3N0TWVzc2FnZSh7ZXJyb3I6IlRpbWVvdXQgd2hlbiBleGVjdXRpbmcgJ2ZldGNoJyJ9KTtpZihNPWguaGVhZGVycyxtPVsuLi5NXS5yZWR1Y2UoKGUscik9PntsZXQgbz10KHIsMiksbj1vWzBdLHM9b1sxXTtyZXR1cm4gZVtuXT1zLGV9LHt9KSxyPWF3YWl0IGguanNvbigpLGIpcmV0dXJuIGRlbGV0ZSByLnJlZnJlc2hfdG9rZW4sdm9pZCBrLnBvc3RNZXNzYWdlKHtvazpoLm9rLGpzb246cixoZWFkZXJzOm19KTtyLnJlZnJlc2hfdG9rZW4/KGcmJihpLmxhdGVzdF9yZWZyZXNoX3Rva2VuPXIucmVmcmVzaF90b2tlbix3PW4sUz1yLnJlZnJlc2hfdG9rZW4sT2JqZWN0LmVudHJpZXMoaSkuZm9yRWFjaChlPT57bGV0IHI9dChlLDIpLG89clswXTtyWzFdPT09dyYmKGlbb109Uyl9KSksKChlLHQscik9PntpW2ModCxyKV09ZX0pKHIucmVmcmVzaF90b2tlbix2LF8pLGRlbGV0ZSByLnJlZnJlc2hfdG9rZW4pOk98fCgoZSx0KT0+e2RlbGV0ZSBpW2MoZSx0KV19KSh2LF8pLGsucG9zdE1lc3NhZ2Uoe29rOmgub2ssanNvbjpyLGhlYWRlcnM6bX0pfWNhdGNoKGUpe2sucG9zdE1lc3NhZ2Uoe29rOiExLGpzb246e2Vycm9yOmUuZXJyb3IsZXJyb3JfZGVzY3JpcHRpb246ZS5tZXNzYWdlfSxoZWFkZXJzOm19KX12YXIgdyxTLE0sVX0sZD1hc3luYyBlPT57bGV0IHI9ZS5kYXRhLG89ci50aW1lb3V0LG49ci5hdXRoLGE9ci5mZXRjaFVybCxjPXIuZmV0Y2hPcHRpb25zLGg9ci51c2VGb3JtRGF0YSxkPXQoZS5wb3J0cywxKVswXTtjb25zdCBwPShufHx7fSkuYXVkaWVuY2U7dHJ5e2NvbnN0IGU9KGU9Pntjb25zdCByPW5ldyBTZXQ7cmV0dXJuIE9iamVjdC5lbnRyaWVzKGkpLmZvckVhY2gobz0+e2xldCBuPXQobywyKSxzPW5bMF0saT1uWzFdO2woZSxzKSYmci5hZGQoaSl9KSxBcnJheS5mcm9tKHIpfSkocCk7aWYoMD09PWUubGVuZ3RoKXJldHVybiB2b2lkIGQucG9zdE1lc3NhZ2Uoe29rOiEwfSk7Y29uc3Qgcj1oP2YoYy5ib2R5KTpKU09OLnBhcnNlKGMuYm9keSk7Zm9yKGNvbnN0IHQgb2YgZSl7Y29uc3QgZT1oP3MoT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LHIpLHt0b2tlbjp0fSkpOkpTT04uc3RyaW5naWZ5KE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSxyKSx7dG9rZW46dH0pKTtsZXQgbixpLGwsZjsiZnVuY3Rpb24iPT10eXBlb2YgQWJvcnRDb250cm9sbGVyJiYobj1uZXcgQWJvcnRDb250cm9sbGVyLGk9bi5zaWduYWwpO3RyeXtmPWF3YWl0IFByb21pc2UucmFjZShbbmV3IFByb21pc2UoZT0+e2w9c2V0VGltZW91dChlLG8pfSksZmV0Y2goYSxPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sYykse2JvZHk6ZSxzaWduYWw6aX0pKV0pLmZpbmFsbHkoKCk9PmNsZWFyVGltZW91dChsKSl9Y2F0Y2goZSl7cmV0dXJuIHZvaWQgZC5wb3N0TWVzc2FnZSh7ZXJyb3I6ZS5tZXNzYWdlfSl9aWYoIWYpcmV0dXJuIG4mJm4uYWJvcnQoKSx2b2lkIGQucG9zdE1lc3NhZ2Uoe2Vycm9yOiJUaW1lb3V0IHdoZW4gZXhlY3V0aW5nICdmZXRjaCcifSk7aWYoIWYub2spe2xldCBlO3RyeXtjb25zdCB0PUpTT04ucGFyc2UoYXdhaXQgZi50ZXh0KCkpO2U9dC5lcnJvcl9kZXNjcmlwdGlvbn1jYXRjaChlKXt9cmV0dXJuIHZvaWQgZC5wb3N0TWVzc2FnZSh7ZXJyb3I6ZXx8IkhUVFAgZXJyb3IgIi5jb25jYXQoZi5zdGF0dXMpfSl9dSh0KX1kLnBvc3RNZXNzYWdlKHtvazohMH0pfWNhdGNoKGUpe2QucG9zdE1lc3NhZ2Uoe2Vycm9yOmUubWVzc2FnZXx8IlVua25vd24gZXJyb3IgZHVyaW5nIHRva2VuIHJldm9jYXRpb24ifSl9fSxwPShlLHQpPT57aWYoIWEpcmV0dXJuITE7dHJ5e2NvbnN0IHI9bmV3IFVSTChhKS5vcmlnaW4sbz1uZXcgVVJMKGUuZmV0Y2hVcmwpO3JldHVybiBvLm9yaWdpbj09PXImJm8ucGF0aG5hbWU9PT10fWNhdGNoKGUpe3JldHVybiExfX07YWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsZT0+e2NvbnN0IHI9ZS5kYXRhLG89dChlLnBvcnRzLDEpWzBdO2lmKCEoInR5cGUiaW4gcil8fCJpbml0IiE9PXIudHlwZSlyZXR1cm4idHlwZSJpbiByJiYiY2xlYXIiPT09ci50eXBlPyhpPXt9LHZvaWQobnVsbD09b3x8by5wb3N0TWVzc2FnZSh7b2s6ITB9KSkpOiJ0eXBlImluIHImJiJyZXZva2UiPT09ci50eXBlP3AociwiL29hdXRoL3Jldm9rZSIpP3ZvaWQgZChlKTp2b2lkKG51bGw9PW98fG8ucG9zdE1lc3NhZ2Uoe29rOiExLGpzb246e2Vycm9yOiJpbnZhbGlkX2ZldGNoX3VybCIsZXJyb3JfZGVzY3JpcHRpb246IlVuYXV0aG9yaXplZCBmZXRjaCBVUkwifSxoZWFkZXJzOnt9fSkpOnZvaWQoImZldGNoVXJsImluIHImJnAociwiL29hdXRoL3Rva2VuIik/aChlKTpudWxsPT1vfHxvLnBvc3RNZXNzYWdlKHtvazohMSxqc29uOntlcnJvcjoiaW52YWxpZF9mZXRjaF91cmwiLGVycm9yX2Rlc2NyaXB0aW9uOiJVbmF1dGhvcml6ZWQgZmV0Y2ggVVJMIn0saGVhZGVyczp7fX0pKTtpZihudWxsPT09YSl0cnl7bmV3IFVSTChyLmFsbG93ZWRCYXNlVXJsKSxhPXIuYWxsb3dlZEJhc2VVcmx9Y2F0Y2goZSl7cmV0dXJufX0pfSgpOwoK",null,false),new Worker(at,e)};class ct{constructor(e,t){this.cache=e,this.clientId=t,this.manifestKey=this.createManifestKeyFrom(this.clientId)}async add(e){var t;const n=new Set((null===(t=await this.cache.get(this.manifestKey))||void 0===t?void 0:t.keys)||[]);n.add(e),await this.cache.set(this.manifestKey,{keys:[...n]})}async remove(e){const t=await this.cache.get(this.manifestKey);if(t){const n=new Set(t.keys);return n.delete(e),n.size>0?await this.cache.set(this.manifestKey,{keys:[...n]}):await this.cache.remove(this.manifestKey)}}get(){return this.cache.get(this.manifestKey)}clear(){return this.cache.remove(this.manifestKey)}createManifestKeyFrom(e){return"".concat(ze,"::").concat(e)}}const ut="auth0.is.authenticated",lt={memory:()=>(new Fe).enclosedCache,localstorage:()=>new Ze},ht=e=>lt[e],dt=e=>{const t=e.openUrl,n=e.onRedirect,o=u(e,["openUrl","onRedirect"]);return Object.assign(Object.assign({},o),{openUrl:!1===t||t?t:n})},pt={NONCE:"nonce",KEYPAIR:"keypair"};class ft{constructor(e){this.clientId=e}getVersion(){return 1}createDbHandle(){const e=window.indexedDB.open("auth0-spa-js",this.getVersion());return new Promise((t,n)=>{e.onupgradeneeded=()=>Object.values(pt).forEach(t=>e.result.createObjectStore(t)),e.onerror=()=>n(e.error),e.onsuccess=()=>t(e.result)})}async getDbHandle(){return this.dbHandle||(this.dbHandle=await this.createDbHandle()),this.dbHandle}async executeDbRequest(e,t,n){const o=n((await this.getDbHandle()).transaction(e,t).objectStore(e));return new Promise((e,t)=>{o.onsuccess=()=>e(o.result),o.onerror=()=>t(o.error)})}buildKey(e){const t=e?"_".concat(e):"auth0";return"".concat(this.clientId,"::").concat(t)}setNonce(e,t){return this.save(pt.NONCE,this.buildKey(t),e)}setKeyPair(e){return this.save(pt.KEYPAIR,this.buildKey(),e)}async save(e,t,n){await this.executeDbRequest(e,"readwrite",e=>e.put(n,t))}findNonce(e){return this.find(pt.NONCE,this.buildKey(e))}findKeyPair(){return this.find(pt.KEYPAIR,this.buildKey())}find(e,t){return this.executeDbRequest(e,"readonly",e=>e.get(t))}async deleteBy(e,t){const n=await this.executeDbRequest(e,"readonly",e=>e.getAllKeys());await Promise.all((null==n?void 0:n.filter(t).map(t=>this.executeDbRequest(e,"readwrite",e=>e.delete(t))))||[])}deleteByClientId(e,t){return this.deleteBy(e,e=>"string"==typeof e&&e.startsWith("".concat(t,"::")))}clearNonces(){return this.deleteByClientId(pt.NONCE,this.clientId)}clearKeyPairs(){return this.deleteByClientId(pt.KEYPAIR,this.clientId)}}class mt{constructor(e){this.storage=new ft(e)}getNonce(e){return this.storage.findNonce(e)}setNonce(e,t){return this.storage.setNonce(e,t)}async getOrGenerateKeyPair(){let e=await this.storage.findKeyPair();return e||(e=await async function(e,t){var n;let o;return o={name:"ECDSA",namedCurve:"P-256"},crypto.subtle.generateKey(o,null!==(n=null==t?void 0:t.extractable)&&void 0!==n&&n,["sign","verify"])}(0,{extractable:!1}),await this.storage.setKeyPair(e)),e}async generateProof(e){const t=await this.getOrGenerateKeyPair();return function(e){let t=e.keyPair,n=e.url,o=e.method,r=e.nonce,i=e.accessToken;const a=function(e){const t=new URL(e);return t.search="",t.hash="",t.href}(n);return Ie(t,a,o,r,i)}(Object.assign({keyPair:t},e))}async calculateThumbprint(){return function(e){return async function(e){if(!Ce(e))throw new TypeError('"publicKey" must be a public CryptoKey');if(!0!==e.extractable)throw new TypeError('"publicKey.extractable" must be true');const t=await xe(e);let n;switch(t.kty){case"EC":n={crv:t.crv,kty:t.kty,x:t.x,y:t.y};break;case"OKP":n={crv:t.crv,kty:t.kty,x:t.x};break;case"RSA":n={e:t.e,kty:t.kty,n:t.n};break;default:throw new Ee("unsupported JWK kty")}return Te(await crypto.subtle.digest({name:"SHA-256"},ke(JSON.stringify(n))))}(e.publicKey)}(await this.getOrGenerateKeyPair())}async clear(){await Promise.all([this.storage.clearNonces(),this.storage.clearKeyPairs()])}}var yt;!function(e){e.Bearer="Bearer",e.DPoP="DPoP"}(yt||(yt={}));class wt{constructor(e,t){this.hooks=t,this.config=Object.assign(Object.assign({},e),{fetch:e.fetch||("undefined"==typeof window?fetch:window.fetch.bind(window))})}isAbsoluteUrl(e){return/^(https?:)?\/\//i.test(e)}buildUrl(e,t){if(t){if(this.isAbsoluteUrl(t))return t;if(e)return"".concat(e.replace(/\/?\/$/,""),"/").concat(t.replace(/^\/+/,""))}throw new TypeError("`url` must be absolute or `baseUrl` non-empty.")}getAccessToken(e){return this.config.getAccessToken?this.config.getAccessToken(e):this.hooks.getAccessToken(e)}extractUrl(e){return"string"==typeof e?e:e instanceof URL?e.href:e.url}buildBaseRequest(e,t){if(!this.config.baseUrl)return new Request(e,t);const n=this.buildUrl(this.config.baseUrl,this.extractUrl(e)),o=e instanceof Request?new Request(n,e):n;return new Request(o,t)}setAuthorizationHeader(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:yt.Bearer;e.headers.set("authorization","".concat(n," ").concat(t))}async setDpopProofHeader(e,t){if(!this.config.dpopNonceId)return;const n=await this.hooks.getDpopNonce(),o=await this.hooks.generateDpopProof({accessToken:t,method:e.method,nonce:n,url:e.url});e.headers.set("dpop",o)}async prepareRequest(e,t){const n=await this.getAccessToken(t);let o,r;"string"==typeof n?(o=this.config.dpopNonceId?yt.DPoP:yt.Bearer,r=n):(o=n.token_type,r=n.access_token),this.setAuthorizationHeader(e,r,o),o===yt.DPoP&&await this.setDpopProofHeader(e,r)}getHeader(e,t){return Array.isArray(e)?new Headers(e).get(t)||"":"function"==typeof e.get?e.get(t)||"":e[t]||""}hasUseDpopNonceError(e){if(401!==e.status)return!1;const t=this.getHeader(e.headers,"www-authenticate");return t.includes("invalid_dpop_nonce")||t.includes("use_dpop_nonce")}async handleResponse(e,t){const n=this.getHeader(e.headers,Oe);if(n&&await this.hooks.setDpopNonce(n),!this.hasUseDpopNonceError(e))return e;if(!n||!t.onUseDpopNonceError)throw new F(n);return t.onUseDpopNonceError()}async internalFetchWithAuth(e,t,n,o){const r=this.buildBaseRequest(e,t);await this.prepareRequest(r,o);const i=await this.config.fetch(r);return this.handleResponse(i,n)}fetchWithAuth(e,t,n){const o={onUseDpopNonceError:()=>this.internalFetchWithAuth(e,t,Object.assign(Object.assign({},o),{onUseDpopNonceError:void 0}),n)};return this.internalFetchWithAuth(e,t,o,n)}}class gt{constructor(e,t){this.myAccountFetcher=e,this.apiBase=t}async connectAccount(e){const t=await this.myAccountFetcher.fetchWithAuth("".concat(this.apiBase,"v1/connected-accounts/connect"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)},{scope:["create:me:connected_accounts"]});return this._handleResponse(t)}async completeAccount(e){const t=await this.myAccountFetcher.fetchWithAuth("".concat(this.apiBase,"v1/connected-accounts/complete"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)},{scope:["create:me:connected_accounts"]});return this._handleResponse(t)}async getFactors(){const e=await this.myAccountFetcher.fetchWithAuth("".concat(this.apiBase,"v1/factors"),{method:"GET"},{scope:["read:me:factors"]});return(await this._handleResponse(e)).factors}async getAuthenticationMethods(e){const t=e?"?".concat(new URLSearchParams({type:e})):"",n=await this.myAccountFetcher.fetchWithAuth("".concat(this.apiBase,"v1/authentication-methods").concat(t),{method:"GET"},{scope:["read:me:authentication_methods"]});return(await this._handleResponse(n)).authentication_methods}async getAuthenticationMethod(e){const t=await this.myAccountFetcher.fetchWithAuth("".concat(this.apiBase,"v1/authentication-methods/").concat(encodeURIComponent(e)),{method:"GET"},{scope:["read:me:authentication_methods"]});return this._handleResponse(t)}async deleteAuthenticationMethod(e){const t=await this.myAccountFetcher.fetchWithAuth("".concat(this.apiBase,"v1/authentication-methods/").concat(encodeURIComponent(e)),{method:"DELETE"},{scope:["delete:me:authentication_methods"]});t.ok||await this._handleResponse(t)}async updateAuthenticationMethod(e,t){const n=await this.myAccountFetcher.fetchWithAuth("".concat(this.apiBase,"v1/authentication-methods/").concat(encodeURIComponent(e)),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)},{scope:["update:me:authentication_methods"]});return this._handleResponse(n)}async enrollmentChallenge(e){var t;const n=await this.myAccountFetcher.fetchWithAuth("".concat(this.apiBase,"v1/authentication-methods"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)},{scope:["create:me:authentication_methods"]}),o=await this._handleResponse(n),r=null!==(t=n.headers.get("location"))&&void 0!==t?t:"",i=decodeURIComponent(r.split("/").pop()||"");return Object.assign(Object.assign({},o),{id:i,location:r})}async enrollmentVerify(e){const t=e,n=t.location;t.type;const o=u(t,["location","type"]),r=await this.myAccountFetcher.fetchWithAuth("".concat(n,"/verify"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(o)},{scope:["create:me:authentication_methods"]});return this._handleResponse(r)}async _handleResponse(e){let t;try{t=await e.text(),t=JSON.parse(t)}catch(n){throw new vt({type:"invalid_json",status:e.status,title:"Invalid JSON response",detail:t||String(n)})}if(e.ok)return t;throw new vt(t)}}class vt extends Error{constructor(e){let t=e.type,n=e.status,o=e.title,r=e.detail,i=e.validation_errors;super(r),this.name="MyAccountApiError",this.type=t,this.status=n,this.title=o,this.detail=r,this.validation_errors=i,Object.setPrototypeOf(this,vt.prototype)}}const bt={otp:{authenticatorTypes:["otp"]},sms:{authenticatorTypes:["oob"],oobChannels:["sms"]},email:{authenticatorTypes:["oob"],oobChannels:["email"]},push:{authenticatorTypes:["oob"],oobChannels:["auth0"]},voice:{authenticatorTypes:["oob"],oobChannels:["voice"]}};var kt,_t;let St;if("undefined"==typeof navigator||null===(kt=navigator.userAgent)||void 0===kt||null===(_t=kt.startsWith)||void 0===_t||!_t.call(kt,"Mozilla/5.0 ")){const e="v3.8.6";St="".concat("oauth4webapi","/").concat(e)}function Tt(e,t){if(null==e)return!1;try{return e instanceof t||Object.getPrototypeOf(e)[Symbol.toStringTag]===t.prototype[Symbol.toStringTag]}catch(e){return!1}}const Et="ERR_INVALID_ARG_VALUE",Pt="ERR_INVALID_ARG_TYPE";function At(e,t,n){const o=new TypeError(e,{cause:n});return Object.assign(o,{code:t}),o}const Rt=Symbol(),Ct=Symbol(),It=Symbol(),xt=Symbol(),Ot=Symbol(),Wt=Symbol(),jt=new TextEncoder,Ut=new TextDecoder;function Kt(e){return"string"==typeof e?jt.encode(e):Ut.decode(e)}let Lt,Nt;if(Uint8Array.prototype.toBase64)Lt=e=>(e instanceof ArrayBuffer&&(e=new Uint8Array(e)),e.toBase64({alphabet:"base64url",omitPadding:!0}));else{const e=32768;Lt=t=>{t instanceof ArrayBuffer&&(t=new Uint8Array(t));const n=[];for(let o=0;o<t.byteLength;o+=e)n.push(String.fromCharCode.apply(null,t.subarray(o,o+e)));return btoa(n.join("")).replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}}function Mt(e){return"string"==typeof e?Nt(e):Lt(e)}Nt=Uint8Array.fromBase64?e=>{try{return Uint8Array.fromBase64(e,{alphabet:"base64url"})}catch(e){throw At("The input to be decoded is not correctly encoded.",Et,e)}}:e=>{try{const t=atob(e.replace(/-/g,"+").replace(/_/g,"/").replace(/\s/g,"")),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}catch(e){throw At("The input to be decoded is not correctly encoded.",Et,e)}};class Dt extends Error{constructor(e,t){var n;super(e,t),k(this,"code",void 0),this.name=this.constructor.name,this.code=Mn,null===(n=Error.captureStackTrace)||void 0===n||n.call(Error,this,this.constructor)}}class zt extends Error{constructor(e,t){var n;super(e,t),k(this,"code",void 0),this.name=this.constructor.name,null!=t&&t.code&&(this.code=null==t?void 0:t.code),null===(n=Error.captureStackTrace)||void 0===n||n.call(Error,this,this.constructor)}}function Jt(e,t,n){return new zt(e,{code:t,cause:n})}function Ht(e){return null!==e&&"object"==typeof e&&!Array.isArray(e)}function Zt(e){Tt(e,Headers)&&(e=Object.fromEntries(e.entries()));const t=new Headers(null!=e?e:{});if(St&&!t.has("user-agent")&&t.set("user-agent",St),t.has("authorization"))throw At('"options.headers" must not include the "authorization" header name',Et);return t}function Ft(e,t){if(void 0!==t){if("function"==typeof t&&(t=t(e.href)),!(t instanceof AbortSignal))throw At('"options.signal" must return or be an instance of AbortSignal',Pt);return t}}function Vt(e){return e.includes("//")?e.replace("//","/"):e}function Gt(e,t,n,o,r){try{if("number"!=typeof e||!Number.isFinite(e))throw At("".concat(n," must be a number"),Pt,r);if(e>0)return;if(t){if(0!==e)throw At("".concat(n," must be a non-negative number"),Et,r);return}throw At("".concat(n," must be a positive number"),Et,r)}catch(e){if(o)throw Jt(e.message,o,r);throw e}}function Xt(e,t,n,o){try{if("string"!=typeof e)throw At("".concat(t," must be a string"),Pt,o);if(0===e.length)throw At("".concat(t," must not be empty"),Et,o)}catch(e){if(n)throw Jt(e.message,n,o);throw e}}function Yt(e){!function(e,t){if(_n(e)!==t)throw function(e){let t='"response" content-type must be ';for(var n=arguments.length,o=new Array(n>1?n-1:0),r=1;r<n;r++)o[r-1]=arguments[r];if(o.length>2){const e=o.pop();t+="".concat(o.join(", "),", or ").concat(e)}else 2===o.length?t+="".concat(o[0]," or ").concat(o[1]):t+=o[0];return Jt(t,Hn,e)}(e,t)}(e,"application/json")}function Bt(){return Mt(crypto.getRandomValues(new Uint8Array(32)))}function qt(e){switch(e.algorithm.name){case"RSA-PSS":return function(e){switch(e.algorithm.hash.name){case"SHA-256":return"PS256";case"SHA-384":return"PS384";case"SHA-512":return"PS512";default:throw new Dt("unsupported RsaHashedKeyAlgorithm hash name",{cause:e})}}(e);case"RSASSA-PKCS1-v1_5":return function(e){switch(e.algorithm.hash.name){case"SHA-256":return"RS256";case"SHA-384":return"RS384";case"SHA-512":return"RS512";default:throw new Dt("unsupported RsaHashedKeyAlgorithm hash name",{cause:e})}}(e);case"ECDSA":return function(e){switch(e.algorithm.namedCurve){case"P-256":return"ES256";case"P-384":return"ES384";case"P-521":return"ES512";default:throw new Dt("unsupported EcKeyAlgorithm namedCurve",{cause:e})}}(e);case"Ed25519":case"ML-DSA-44":case"ML-DSA-65":case"ML-DSA-87":return e.algorithm.name;case"EdDSA":return"Ed25519";default:throw new Dt("unsupported CryptoKey algorithm name",{cause:e})}}function Qt(e){const t=null==e?void 0:e[Ct];return"number"==typeof t&&Number.isFinite(t)?t:0}function $t(e){const t=null==e?void 0:e[It];return"number"==typeof t&&Number.isFinite(t)&&-1!==Math.sign(t)?t:30}function en(){return Math.floor(Date.now()/1e3)}function tn(e){if("object"!=typeof e||null===e)throw At('"as" must be an object',Pt);Xt(e.issuer,'"as.issuer"')}function nn(e){if("object"!=typeof e||null===e)throw At('"client" must be an object',Pt);Xt(e.client_id,'"client.client_id"')}function on(e){return Xt(e,'"clientSecret"'),(t,n,o,r)=>{o.set("client_id",n.client_id),o.set("client_secret",e)}}function rn(e,t){const n=(i=e)instanceof CryptoKey?{key:i}:(null==i?void 0:i.key)instanceof CryptoKey?(void 0!==i.kid&&Xt(i.kid,'"kid"'),{key:i.key,kid:i.kid}):{},o=n.key,r=n.kid;var i;return function(e,t){if(function(e,t){if(!(e instanceof CryptoKey))throw At("".concat(t," must be a CryptoKey"),Pt)}(e,t),"private"!==e.type)throw At("".concat(t," must be a private CryptoKey"),Et)}(o,'"clientPrivateKey.key"'),async(e,n,i,a)=>{var s;const c={alg:qt(o),kid:r},u=function(e,t){const n=en()+Qt(t);return{jti:Bt(),aud:e.issuer,exp:n+60,iat:n,nbf:n,iss:t.client_id,sub:t.client_id}}(e,n);null==t||null===(s=t[Ot])||void 0===s||s.call(t,c,u),i.set("client_id",n.client_id),i.set("client_assertion_type","urn:ietf:params:oauth:client-assertion-type:jwt-bearer"),i.set("client_assertion",await async function(e,t,n){if(!n.usages.includes("sign"))throw At('CryptoKey instances used for signing assertions must include "sign" in their "usages"',Et);const o="".concat(Mt(Kt(JSON.stringify(e))),".").concat(Mt(Kt(JSON.stringify(t)))),r=Mt(await crypto.subtle.sign(function(e){switch(e.algorithm.name){case"ECDSA":return{name:e.algorithm.name,hash:to(e)};case"RSA-PSS":switch(eo(e),e.algorithm.hash.name){case"SHA-256":case"SHA-384":case"SHA-512":return{name:e.algorithm.name,saltLength:parseInt(e.algorithm.hash.name.slice(-3),10)>>3};default:throw new Dt("unsupported RSA-PSS hash name",{cause:e})}case"RSASSA-PKCS1-v1_5":return eo(e),e.algorithm.name;case"ML-DSA-44":case"ML-DSA-65":case"ML-DSA-87":case"Ed25519":return e.algorithm.name}throw new Dt("unsupported CryptoKey algorithm name",{cause:e})}(n),n,Kt(o)));return"".concat(o,".").concat(r)}(c,u,o))}}const an=URL.parse?(e,t)=>URL.parse(e,t):(e,t)=>{try{return new URL(e,t)}catch(e){return null}};function sn(e,t){if(t&&"https:"!==e.protocol)throw Jt("only requests to HTTPS are allowed",Fn,e);if("https:"!==e.protocol&&"http:"!==e.protocol)throw Jt("only HTTP and HTTPS requests are allowed",Vn,e)}function cn(e,t,n,o){let r;if("string"!=typeof e||!(r=an(e)))throw Jt("authorization server metadata does not contain a valid ".concat(n?'"as.mtls_endpoint_aliases.'.concat(t,'"'):'"as.'.concat(t,'"')),void 0===e?Bn:qn,{attribute:n?"mtls_endpoint_aliases.".concat(t):t});return sn(r,o),r}function un(e,t,n,o){return n&&e.mtls_endpoint_aliases&&t in e.mtls_endpoint_aliases?cn(e.mtls_endpoint_aliases[t],t,n,o):cn(e[t],t,n,o)}class ln extends Error{constructor(e,t){var n;super(e,t),k(this,"cause",void 0),k(this,"code",void 0),k(this,"error",void 0),k(this,"status",void 0),k(this,"error_description",void 0),k(this,"response",void 0),this.name=this.constructor.name,this.code=Nn,this.cause=t.cause,this.error=t.cause.error,this.status=t.response.status,this.error_description=t.cause.error_description,Object.defineProperty(this,"response",{enumerable:!1,value:t.response}),null===(n=Error.captureStackTrace)||void 0===n||n.call(Error,this,this.constructor)}}class hn extends Error{constructor(e,t){var n,o;super(e,t),k(this,"cause",void 0),k(this,"code",void 0),k(this,"error",void 0),k(this,"error_description",void 0),this.name=this.constructor.name,this.code=Dn,this.cause=t.cause,this.error=t.cause.get("error"),this.error_description=null!==(n=t.cause.get("error_description"))&&void 0!==n?n:void 0,null===(o=Error.captureStackTrace)||void 0===o||o.call(Error,this,this.constructor)}}class dn extends Error{constructor(e,t){var n;super(e,t),k(this,"cause",void 0),k(this,"code",void 0),k(this,"response",void 0),k(this,"status",void 0),this.name=this.constructor.name,this.code=Ln,this.cause=t.cause,this.status=t.response.status,this.response=t.response,Object.defineProperty(this,"response",{enumerable:!1}),null===(n=Error.captureStackTrace)||void 0===n||n.call(Error,this,this.constructor)}}const pn="[a-zA-Z0-9!#$%&\\'\\*\\+\\-\\.\\^_`\\|~]+",fn="("+pn+')\\s*=\\s*"((?:[^"\\\\]|\\\\[\\s\\S])*)"',mn="("+pn+")\\s*=\\s*("+pn+")",yn=new RegExp("^[,\\s]*("+pn+")"),wn=new RegExp("^[,\\s]*"+fn+"[,\\s]*(.*)"),gn=new RegExp("^[,\\s]*"+mn+"[,\\s]*(.*)"),vn=new RegExp("^([a-zA-Z0-9\\-\\._\\~\\+\\/]+={0,2})(?:$|[,\\s])(.*)");async function bn(e,t,n){if(e.status!==t){let t;var o;if(function(e){let t;if(t=function(e){if(!Tt(e,Response))throw At('"response" must be an instance of Response',Pt);const t=e.headers.get("www-authenticate");if(null===t)return;const n=[];let o=t;for(;o;){var r;let t=o.match(yn);const c=null===(r=t)||void 0===r?void 0:r[1].toLowerCase();if(!c)return;const u=o.substring(t[0].length);if(u&&!u.match(/^[\s,]/))return;const l=u.match(/^\s+(.*)$/),h=!!l;o=l?l[1]:void 0;const d={};let p;if(h)for(;o;){let n,r;if(t=o.match(wn)){var i=E(t,4);if(n=i[1],r=i[2],o=i[3],r.includes("\\"))try{r=JSON.parse('"'.concat(r,'"'))}catch(e){}d[n.toLowerCase()]=r}else{if(!(t=o.match(gn))){if(t=o.match(vn)){if(Object.keys(d).length)break;var a=E(t,3);p=a[1],o=a[2];break}return}var s=E(t,4);n=s[1],r=s[2],o=s[3],d[n.toLowerCase()]=r}}else o=u||void 0;const f={scheme:c,parameters:d};p&&(f.token68=p),n.push(f)}return n.length?n:void 0}(e))throw new dn("server responded with a challenge in the WWW-Authenticate HTTP Header",{cause:t,response:e})}(e),t=await async function(e){if(e.status>399&&e.status<500){$n(e),Yt(e);try{const t=await e.clone().json();if(Ht(t)&&"string"==typeof t.error&&t.error.length)return t}catch(e){}}}(e))throw await(null===(o=e.body)||void 0===o?void 0:o.cancel()),new ln("server responded with an error in the response body",{cause:t,response:e});throw Jt('"response" is not a conform '.concat(n," response (unexpected HTTP status code)"),Zn,e)}}function kn(e){if(!xn.has(e))throw At('"options.DPoP" is not a valid DPoPHandle',Et)}function _n(e){var t;return null===(t=e.headers.get("content-type"))||void 0===t?void 0:t.split(";")[0]}async function Sn(e,t,n,o,r,i,a){return await n(e,t,r,i),i.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"),((null==a?void 0:a[xt])||fetch)(o.href,{body:r,headers:Object.fromEntries(i.entries()),method:"POST",redirect:"manual",signal:Ft(o,null==a?void 0:a.signal)})}async function Tn(e,t,n,o,r,i){var a;const s=un(e,"token_endpoint",t.use_mtls_endpoint_aliases,!0!==(null==i?void 0:i[Rt]));r.set("grant_type",o);const c=Zt(null==i?void 0:i.headers);c.set("accept","application/json"),void 0!==(null==i?void 0:i.DPoP)&&(kn(i.DPoP),await i.DPoP.addProof(s,c,"POST"));const u=await Sn(e,t,n,s,r,c,i);return null==i||null===(a=i.DPoP)||void 0===a||a.cacheNonce(u,s),u}const En=new WeakMap,Pn=new WeakMap;function An(e){if(!e.id_token)return;const t=En.get(e);if(!t)throw At('"ref" was already garbage collected or did not resolve from the proper sources',Et);return t}async function Rn(e,t,n,o,r,i){if(tn(e),nn(t),!Tt(n,Response))throw At('"response" must be an instance of Response',Pt);await bn(n,200,"Token Endpoint"),$n(n);const a=await ao(n);if(Xt(a.access_token,'"response" body "access_token" property',Jn,{body:a}),Xt(a.token_type,'"response" body "token_type" property',Jn,{body:a}),a.token_type=a.token_type.toLowerCase(),void 0!==a.expires_in){let e="number"!=typeof a.expires_in?parseFloat(a.expires_in):a.expires_in;Gt(e,!0,'"response" body "expires_in" property',Jn,{body:a}),a.expires_in=e}if(void 0!==a.refresh_token&&Xt(a.refresh_token,'"response" body "refresh_token" property',Jn,{body:a}),void 0!==a.scope&&"string"!=typeof a.scope)throw Jt('"response" body "scope" property must be a string',Jn,{body:a});if(void 0!==a.id_token){Xt(a.id_token,'"response" body "id_token" property',Jn,{body:a});const i=["aud","exp","iat","iss","sub"];!0===t.require_auth_time&&i.push("auth_time"),void 0!==t.default_max_age&&(Gt(t.default_max_age,!0,'"client.default_max_age"'),i.push("auth_time")),null!=o&&o.length&&i.push(...o);const s=await async function(e,t,n,o,r){let i,a,s=e.split("."),c=s[0],u=s[1],l=s.length;if(5===l){if(void 0===r)throw new Dt("JWE decryption is not configured",{cause:e});var h=(e=await r(e)).split(".");c=h[0],u=h[1],l=h.length}if(3!==l)throw Jt("Invalid JWT",Jn,e);try{i=JSON.parse(Kt(Mt(c)))}catch(e){throw Jt("failed to parse JWT Header body as base64url encoded JSON",zn,e)}if(!Ht(i))throw Jt("JWT Header must be a top level object",Jn,e);if(t(i),void 0!==i.crit)throw new Dt('no JWT "crit" header parameter extensions are supported',{cause:{header:i}});try{a=JSON.parse(Kt(Mt(u)))}catch(e){throw Jt("failed to parse JWT Payload body as base64url encoded JSON",zn,e)}if(!Ht(a))throw Jt("JWT Payload must be a top level object",Jn,e);const d=en()+n;if(void 0!==a.exp){if("number"!=typeof a.exp)throw Jt('unexpected JWT "exp" (expiration time) claim type',Jn,{claims:a});if(a.exp<=d-o)throw Jt('unexpected JWT "exp" (expiration time) claim value, expiration is past current timestamp',Gn,{claims:a,now:d,tolerance:o,claim:"exp"})}if(void 0!==a.iat&&"number"!=typeof a.iat)throw Jt('unexpected JWT "iat" (issued at) claim type',Jn,{claims:a});if(void 0!==a.iss&&"string"!=typeof a.iss)throw Jt('unexpected JWT "iss" (issuer) claim type',Jn,{claims:a});if(void 0!==a.nbf){if("number"!=typeof a.nbf)throw Jt('unexpected JWT "nbf" (not before) claim type',Jn,{claims:a});if(a.nbf>d+o)throw Jt('unexpected JWT "nbf" (not before) claim value',Gn,{claims:a,now:d,tolerance:o,claim:"nbf"})}if(void 0!==a.aud&&"string"!=typeof a.aud&&!Array.isArray(a.aud))throw Jt('unexpected JWT "aud" (audience) claim type',Jn,{claims:a});return{header:i,claims:a,jwt:e}}(a.id_token,no.bind(void 0,t.id_token_signed_response_alg,e.id_token_signing_alg_values_supported,"RS256"),Qt(t),$t(t),r).then(jn.bind(void 0,i)).then(In.bind(void 0,e)).then(Cn.bind(void 0,t.client_id)),c=s.claims,u=s.jwt;if(Array.isArray(c.aud)&&1!==c.aud.length){if(void 0===c.azp)throw Jt('ID Token "aud" (audience) claim includes additional untrusted audiences',Xn,{claims:c,claim:"aud"});if(c.azp!==t.client_id)throw Jt('unexpected ID Token "azp" (authorized party) claim value',Xn,{expected:t.client_id,claims:c,claim:"azp"})}void 0!==c.auth_time&&Gt(c.auth_time,!0,'ID Token "auth_time" (authentication time)',Jn,{claims:c}),Pn.set(n,u),En.set(a,c)}if(void 0!==(null==i?void 0:i[a.token_type]))i[a.token_type](n,a);else if("dpop"!==a.token_type&&"bearer"!==a.token_type)throw new Dt("unsupported `token_type` value",{cause:{body:a}});return a}function Cn(e,t){if(Array.isArray(t.claims.aud)){if(!t.claims.aud.includes(e))throw Jt('unexpected JWT "aud" (audience) claim value',Xn,{expected:e,claims:t.claims,claim:"aud"})}else if(t.claims.aud!==e)throw Jt('unexpected JWT "aud" (audience) claim value',Xn,{expected:e,claims:t.claims,claim:"aud"});return t}function In(e,t){var n,o;const r=null!==(n=null===(o=e[co])||void 0===o?void 0:o.call(e,t))&&void 0!==n?n:e.issuer;if(t.claims.iss!==r)throw Jt('unexpected JWT "iss" (issuer) claim value',Xn,{expected:r,claims:t.claims,claim:"iss"});return t}const xn=new WeakSet,On=Symbol(),Wn={aud:"audience",c_hash:"code hash",client_id:"client id",exp:"expiration time",iat:"issued at",iss:"issuer",jti:"jwt id",nonce:"nonce",s_hash:"state hash",sub:"subject",ath:"access token hash",htm:"http method",htu:"http uri",cnf:"confirmation",auth_time:"authentication time"};function jn(e,t){for(const n of e)if(void 0===t.claims[n])throw Jt('JWT "'.concat(n,'" (').concat(Wn[n],") claim missing"),Jn,{claims:t.claims});return t}const Un=Symbol(),Kn=Symbol();const Ln="OAUTH_WWW_AUTHENTICATE_CHALLENGE",Nn="OAUTH_RESPONSE_BODY_ERROR",Mn="OAUTH_UNSUPPORTED_OPERATION",Dn="OAUTH_AUTHORIZATION_RESPONSE_ERROR",zn="OAUTH_PARSE_ERROR",Jn="OAUTH_INVALID_RESPONSE",Hn="OAUTH_RESPONSE_IS_NOT_JSON",Zn="OAUTH_RESPONSE_IS_NOT_CONFORM",Fn="OAUTH_HTTP_REQUEST_FORBIDDEN",Vn="OAUTH_REQUEST_PROTOCOL_FORBIDDEN",Gn="OAUTH_JWT_TIMESTAMP_CHECK_FAILED",Xn="OAUTH_JWT_CLAIM_COMPARISON_FAILED",Yn="OAUTH_JSON_ATTRIBUTE_COMPARISON_FAILED",Bn="OAUTH_MISSING_SERVER_METADATA",qn="OAUTH_INVALID_SERVER_METADATA";async function Qn(e){if(!Tt(e,Response))throw At('"response" must be an instance of Response',Pt);await bn(e,200,"Revocation Endpoint")}function $n(e){if(e.bodyUsed)throw At('"response" body has been used already',Et)}function eo(e){const t=e.algorithm;if("number"!=typeof t.modulusLength||t.modulusLength<2048)throw new Dt("unsupported ".concat(t.name," modulusLength"),{cause:e})}function to(e){switch(e.algorithm.namedCurve){case"P-256":return"SHA-256";case"P-384":return"SHA-384";case"P-521":return"SHA-512";default:throw new Dt("unsupported ECDSA namedCurve",{cause:e})}}function no(e,t,n,o){if(void 0===e)if(Array.isArray(t)){if(!t.includes(o.alg))throw Jt('unexpected JWT "alg" header parameter',Jn,{header:o,expected:t,reason:"authorization server metadata"})}else{if(void 0===n)throw Jt('missing client or server configuration to verify used JWT "alg" header parameter',void 0,{client:e,issuer:t,fallback:n});if("string"==typeof n?o.alg!==n:"function"==typeof n?!n(o.alg):!n.includes(o.alg))throw Jt('unexpected JWT "alg" header parameter',Jn,{header:o,expected:n,reason:"default value"})}else if("string"==typeof e?o.alg!==e:!e.includes(o.alg))throw Jt('unexpected JWT "alg" header parameter',Jn,{header:o,expected:e,reason:"client configuration"})}function oo(e,t){const n=e.getAll(t),o=n[0];if(n.length>1)throw Jt('"'.concat(t,'" parameter must be provided only once'),Jn);return o}const ro=Symbol(),io=Symbol();async function ao(e){let t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Yt;try{t=await e.json()}catch(t){throw n(e),Jt('failed to parse "response" body as JSON',zn,t)}if(!Ht(t))throw Jt('"response" body must be a top level object',Jn,{body:t});return t}const so=Symbol(),co=Symbol(),uo=new TextEncoder,lo=new TextDecoder;function ho(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];const o=t.reduce((e,t)=>e+t.length,0),r=new Uint8Array(o);let i=0;for(const e of t)r.set(e,i),i+=e.length;return r}function po(e){const t=new Uint8Array(e.length);for(let n=0;n<e.length;n++){const o=e.charCodeAt(n);if(o>127)throw new TypeError("non-ASCII string encountered in encode()");t[n]=o}return t}function fo(e){if(Uint8Array.fromBase64)return Uint8Array.fromBase64(e);const t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}function mo(e){if(Uint8Array.fromBase64)return Uint8Array.fromBase64("string"==typeof e?e:lo.decode(e),{alphabet:"base64url"});let t=e;t instanceof Uint8Array&&(t=lo.decode(t)),t=t.replace(/-/g,"+").replace(/_/g,"/");try{return fo(t)}catch(e){throw new TypeError("The input to be decoded is not correctly encoded.")}}function yo(e){let t=e;return"string"==typeof t&&(t=uo.encode(t)),Uint8Array.prototype.toBase64?t.toBase64({alphabet:"base64url",omitPadding:!0}):function(e){if(Uint8Array.prototype.toBase64)return e.toBase64();const t=[];for(let n=0;n<e.length;n+=32768)t.push(String.fromCharCode.apply(null,e.subarray(n,n+32768)));return btoa(t.join(""))}(t).replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}const wo=function(e){return new TypeError("CryptoKey does not support this operation, its ".concat(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"algorithm.name"," must be ").concat(e))},go=(e,t)=>e.name===t;function vo(e,t){var n;if(n=e.hash,parseInt(n.name.slice(4),10)!==t)throw wo("SHA-".concat(t),"algorithm.hash")}function bo(e,t){for(var n=arguments.length,o=new Array(n>2?n-2:0),r=2;r<n;r++)o[r-2]=arguments[r];if((o=o.filter(Boolean)).length>2){const t=o.pop();e+="one of type ".concat(o.join(", "),", or ").concat(t,".")}else 2===o.length?e+="one of type ".concat(o[0]," or ").concat(o[1],"."):e+="of type ".concat(o[0],".");if(null==t)e+=" Received ".concat(t);else if("function"==typeof t&&t.name)e+=" Received function ".concat(t.name);else if("object"==typeof t&&null!=t){var i;null!==(i=t.constructor)&&void 0!==i&&i.name&&(e+=" Received an instance of ".concat(t.constructor.name))}return e}const ko=function(e,t){for(var n=arguments.length,o=new Array(n>2?n-2:0),r=2;r<n;r++)o[r-2]=arguments[r];return bo("Key for the ".concat(e," algorithm must be "),t,...o)};class _o extends Error{constructor(e,t){var n;super(e,t),k(this,"code","ERR_JOSE_GENERIC"),this.name=this.constructor.name,null===(n=Error.captureStackTrace)||void 0===n||n.call(Error,this,this.constructor)}}k(_o,"code","ERR_JOSE_GENERIC");class So extends _o{constructor(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"unspecified",o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"unspecified";super(e,{cause:{claim:n,reason:o,payload:t}}),k(this,"code","ERR_JWT_CLAIM_VALIDATION_FAILED"),k(this,"claim",void 0),k(this,"reason",void 0),k(this,"payload",void 0),this.claim=n,this.reason=o,this.payload=t}}k(So,"code","ERR_JWT_CLAIM_VALIDATION_FAILED");class To extends _o{constructor(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"unspecified",o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"unspecified";super(e,{cause:{claim:n,reason:o,payload:t}}),k(this,"code","ERR_JWT_EXPIRED"),k(this,"claim",void 0),k(this,"reason",void 0),k(this,"payload",void 0),this.claim=n,this.reason=o,this.payload=t}}k(To,"code","ERR_JWT_EXPIRED");class Eo extends _o{constructor(){super(...arguments),k(this,"code","ERR_JOSE_ALG_NOT_ALLOWED")}}k(Eo,"code","ERR_JOSE_ALG_NOT_ALLOWED");class Po extends _o{constructor(){super(...arguments),k(this,"code","ERR_JOSE_NOT_SUPPORTED")}}k(Po,"code","ERR_JOSE_NOT_SUPPORTED"),k(class extends _o{constructor(){super(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"decryption operation failed",arguments.length>1?arguments[1]:void 0),k(this,"code","ERR_JWE_DECRYPTION_FAILED")}},"code","ERR_JWE_DECRYPTION_FAILED"),k(class extends _o{constructor(){super(...arguments),k(this,"code","ERR_JWE_INVALID")}},"code","ERR_JWE_INVALID");class Ao extends _o{constructor(){super(...arguments),k(this,"code","ERR_JWS_INVALID")}}k(Ao,"code","ERR_JWS_INVALID");class Ro extends _o{constructor(){super(...arguments),k(this,"code","ERR_JWT_INVALID")}}k(Ro,"code","ERR_JWT_INVALID"),k(class extends _o{constructor(){super(...arguments),k(this,"code","ERR_JWK_INVALID")}},"code","ERR_JWK_INVALID");class Co extends _o{constructor(){super(...arguments),k(this,"code","ERR_JWKS_INVALID")}}k(Co,"code","ERR_JWKS_INVALID");class Io extends _o{constructor(){super(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"no applicable key found in the JSON Web Key Set",arguments.length>1?arguments[1]:void 0),k(this,"code","ERR_JWKS_NO_MATCHING_KEY")}}k(Io,"code","ERR_JWKS_NO_MATCHING_KEY");class xo extends _o{constructor(){super(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"multiple matching keys found in the JSON Web Key Set",arguments.length>1?arguments[1]:void 0),k(this,Symbol.asyncIterator,void 0),k(this,"code","ERR_JWKS_MULTIPLE_MATCHING_KEYS")}}k(xo,"code","ERR_JWKS_MULTIPLE_MATCHING_KEYS");class Oo extends _o{constructor(){super(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"request timed out",arguments.length>1?arguments[1]:void 0),k(this,"code","ERR_JWKS_TIMEOUT")}}k(Oo,"code","ERR_JWKS_TIMEOUT");class Wo extends _o{constructor(){super(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"signature verification failed",arguments.length>1?arguments[1]:void 0),k(this,"code","ERR_JWS_SIGNATURE_VERIFICATION_FAILED")}}k(Wo,"code","ERR_JWS_SIGNATURE_VERIFICATION_FAILED");const jo=e=>{if("CryptoKey"===(null==e?void 0:e[Symbol.toStringTag]))return!0;try{return e instanceof CryptoKey}catch(e){return!1}},Uo=e=>"KeyObject"===(null==e?void 0:e[Symbol.toStringTag]),Ko=e=>jo(e)||Uo(e);function Lo(e,t){if(e)throw new TypeError("".concat(t," can only be called once"))}function No(e,t,n){try{return mo(e)}catch(e){throw new n("Failed to base64url decode the ".concat(t))}}function Mo(e){if("object"!=typeof(t=e)||null===t||"[object Object]"!==Object.prototype.toString.call(e))return!1;var t;if(null===Object.getPrototypeOf(e))return!0;let n=e;for(;null!==Object.getPrototypeOf(n);)n=Object.getPrototypeOf(n);return Object.getPrototypeOf(e)===n}function Do(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];const o=t.filter(Boolean);if(0===o.length||1===o.length)return!0;let r;for(const e of o){const t=Object.keys(e);if(r&&0!==r.size)for(const e of t){if(r.has(e))return!1;r.add(e)}else r=new Set(t)}return!0}const zo=e=>Mo(e)&&"string"==typeof e.kty;function Jo(e,t){if(e.startsWith("RS")||e.startsWith("PS")){const n=t.algorithm.modulusLength;if("number"!=typeof n||n<2048)throw new TypeError("".concat(e," requires key modulusLength to be 2048 bits or larger"))}}function Ho(e,t){const n="SHA-".concat(e.slice(-3));switch(e){case"HS256":case"HS384":case"HS512":return{hash:n,name:"HMAC"};case"PS256":case"PS384":case"PS512":return{hash:n,name:"RSA-PSS",saltLength:parseInt(e.slice(-3),10)>>3};case"RS256":case"RS384":case"RS512":return{hash:n,name:"RSASSA-PKCS1-v1_5"};case"ES256":case"ES384":case"ES512":return{hash:n,name:"ECDSA",namedCurve:t.namedCurve};case"Ed25519":case"EdDSA":return{name:"Ed25519"};case"ML-DSA-44":case"ML-DSA-65":case"ML-DSA-87":return{name:e};default:throw new Po("alg ".concat(e," is not supported either by JOSE or your javascript runtime"))}}async function Zo(e,t,n){if(t instanceof Uint8Array){if(!e.startsWith("HS"))throw new TypeError(function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),o=1;o<t;o++)n[o-1]=arguments[o];return bo("Key must be ",e,...n)}(t,"CryptoKey","KeyObject","JSON Web Key"));return crypto.subtle.importKey("raw",t,{hash:"SHA-".concat(e.slice(-3)),name:"HMAC"},!1,[n])}return function(e,t,n){switch(t){case"HS256":case"HS384":case"HS512":if(!go(e.algorithm,"HMAC"))throw wo("HMAC");vo(e.algorithm,parseInt(t.slice(2),10));break;case"RS256":case"RS384":case"RS512":if(!go(e.algorithm,"RSASSA-PKCS1-v1_5"))throw wo("RSASSA-PKCS1-v1_5");vo(e.algorithm,parseInt(t.slice(2),10));break;case"PS256":case"PS384":case"PS512":if(!go(e.algorithm,"RSA-PSS"))throw wo("RSA-PSS");vo(e.algorithm,parseInt(t.slice(2),10));break;case"Ed25519":case"EdDSA":if(!go(e.algorithm,"Ed25519"))throw wo("Ed25519");break;case"ML-DSA-44":case"ML-DSA-65":case"ML-DSA-87":if(!go(e.algorithm,t))throw wo(t);break;case"ES256":case"ES384":case"ES512":{if(!go(e.algorithm,"ECDSA"))throw wo("ECDSA");const n=function(e){switch(e){case"ES256":return"P-256";case"ES384":return"P-384";case"ES512":return"P-521";default:throw new Error("unreachable")}}(t);if(e.algorithm.namedCurve!==n)throw wo(n,"algorithm.namedCurve");break}default:throw new TypeError("CryptoKey does not support this operation")}!function(e,t){if(t&&!e.usages.includes(t))throw new TypeError("CryptoKey does not support this operation, its usages must include ".concat(t,"."))}(e,n)}(t,e,n),t}const Fo='Invalid or unsupported JWK "alg" (Algorithm) Parameter value';async function Vo(e){var t,n;if(!e.alg)throw new TypeError('"alg" argument is required when "jwk.alg" is not present');const o=function(e){let t,n;switch(e.kty){case"AKP":switch(e.alg){case"ML-DSA-44":case"ML-DSA-65":case"ML-DSA-87":t={name:e.alg},n=e.priv?["sign"]:["verify"];break;default:throw new Po(Fo)}break;case"RSA":switch(e.alg){case"PS256":case"PS384":case"PS512":t={name:"RSA-PSS",hash:"SHA-".concat(e.alg.slice(-3))},n=e.d?["sign"]:["verify"];break;case"RS256":case"RS384":case"RS512":t={name:"RSASSA-PKCS1-v1_5",hash:"SHA-".concat(e.alg.slice(-3))},n=e.d?["sign"]:["verify"];break;case"RSA-OAEP":case"RSA-OAEP-256":case"RSA-OAEP-384":case"RSA-OAEP-512":t={name:"RSA-OAEP",hash:"SHA-".concat(parseInt(e.alg.slice(-3),10)||1)},n=e.d?["decrypt","unwrapKey"]:["encrypt","wrapKey"];break;default:throw new Po(Fo)}break;case"EC":switch(e.alg){case"ES256":case"ES384":case"ES512":t={name:"ECDSA",namedCurve:{ES256:"P-256",ES384:"P-384",ES512:"P-521"}[e.alg]},n=e.d?["sign"]:["verify"];break;case"ECDH-ES":case"ECDH-ES+A128KW":case"ECDH-ES+A192KW":case"ECDH-ES+A256KW":t={name:"ECDH",namedCurve:e.crv},n=e.d?["deriveBits"]:[];break;default:throw new Po(Fo)}break;case"OKP":switch(e.alg){case"Ed25519":case"EdDSA":t={name:"Ed25519"},n=e.d?["sign"]:["verify"];break;case"ECDH-ES":case"ECDH-ES+A128KW":case"ECDH-ES+A192KW":case"ECDH-ES+A256KW":t={name:e.crv},n=e.d?["deriveBits"]:[];break;default:throw new Po(Fo)}break;default:throw new Po('Invalid or unsupported JWK "kty" (Key Type) Parameter value')}return{algorithm:t,keyUsages:n}}(e),r=o.algorithm,i=o.keyUsages,a=S({},e);return"AKP"!==a.kty&&delete a.alg,delete a.use,crypto.subtle.importKey("jwk",a,r,null!==(t=e.ext)&&void 0!==t?t:!e.d&&!e.priv,null!==(n=e.key_ops)&&void 0!==n?n:i)}const Go="given KeyObject instance cannot be used for this algorithm";let Xo;const Yo=async function(e,t,n){let o=arguments.length>3&&void 0!==arguments[3]&&arguments[3];Xo||(Xo=new WeakMap);let r=Xo.get(e);if(null!=r&&r[n])return r[n];const i=await Vo(S(S({},t),{},{alg:n}));return o&&Object.freeze(e),r?r[n]=i:Xo.set(e,{[n]:i}),i};async function Bo(e,t){if(e instanceof Uint8Array)return e;if(jo(e))return e;if(Uo(e)){if("secret"===e.type)return e.export();if("toCryptoKey"in e&&"function"==typeof e.toCryptoKey)try{return((e,t)=>{Xo||(Xo=new WeakMap);let n=Xo.get(e);if(null!=n&&n[t])return n[t];const o="public"===e.type,r=!!o;let i;if("x25519"===e.asymmetricKeyType){switch(t){case"ECDH-ES":case"ECDH-ES+A128KW":case"ECDH-ES+A192KW":case"ECDH-ES+A256KW":break;default:throw new TypeError(Go)}i=e.toCryptoKey(e.asymmetricKeyType,r,o?[]:["deriveBits"])}if("ed25519"===e.asymmetricKeyType){if("EdDSA"!==t&&"Ed25519"!==t)throw new TypeError(Go);i=e.toCryptoKey(e.asymmetricKeyType,r,[o?"verify":"sign"])}switch(e.asymmetricKeyType){case"ml-dsa-44":case"ml-dsa-65":case"ml-dsa-87":if(t!==e.asymmetricKeyType.toUpperCase())throw new TypeError(Go);i=e.toCryptoKey(e.asymmetricKeyType,r,[o?"verify":"sign"])}if("rsa"===e.asymmetricKeyType){let n;switch(t){case"RSA-OAEP":n="SHA-1";break;case"RS256":case"PS256":case"RSA-OAEP-256":n="SHA-256";break;case"RS384":case"PS384":case"RSA-OAEP-384":n="SHA-384";break;case"RS512":case"PS512":case"RSA-OAEP-512":n="SHA-512";break;default:throw new TypeError(Go)}if(t.startsWith("RSA-OAEP"))return e.toCryptoKey({name:"RSA-OAEP",hash:n},r,o?["encrypt"]:["decrypt"]);i=e.toCryptoKey({name:t.startsWith("PS")?"RSA-PSS":"RSASSA-PKCS1-v1_5",hash:n},r,[o?"verify":"sign"])}if("ec"===e.asymmetricKeyType){var a;const n=new Map([["prime256v1","P-256"],["secp384r1","P-384"],["secp521r1","P-521"]]).get(null===(a=e.asymmetricKeyDetails)||void 0===a?void 0:a.namedCurve);if(!n)throw new TypeError(Go);const s={ES256:"P-256",ES384:"P-384",ES512:"P-521"};s[t]&&n===s[t]&&(i=e.toCryptoKey({name:"ECDSA",namedCurve:n},r,[o?"verify":"sign"])),t.startsWith("ECDH-ES")&&(i=e.toCryptoKey({name:"ECDH",namedCurve:n},r,o?[]:["deriveBits"]))}if(!i)throw new TypeError(Go);return n?n[t]=i:Xo.set(e,{[t]:i}),i})(e,t)}catch(e){if(e instanceof TypeError)throw e}let n=e.export({format:"jwk"});return Yo(e,n,t)}if(zo(e))return e.k?mo(e.k):Yo(e,e,t,!0);throw new Error("unreachable")}const qo=(e,t)=>{if(e.byteLength!==t.length)return!1;for(let n=0;n<e.byteLength;n++)if(e[n]!==t[n])return!1;return!0},Qo=e=>{const t=e.data[e.pos++];if(128&t){const n=127&t;let o=0;for(let t=0;t<n;t++)o=o<<8|e.data[e.pos++];return o}return t},$o=(e,t,n)=>{if(e.data[e.pos++]!==t)throw new Error(n)},er=(e,t)=>{const n=e.data.subarray(e.pos,e.pos+t);return e.pos+=t,n},tr=(e,t,n)=>{var o;const r=(e=>fo(e.replace(/(?:-----(?:BEGIN|END) PRIVATE KEY-----|\s)/g,"")))(e);let i=n;return null!=t&&null!==(o=t.startsWith)&&void 0!==o&&o.call(t,"ECDH-ES")&&(i||(i={}),i.getNamedCurve=e=>{const t={data:e,pos:0};return function(e){$o(e,48,"Invalid PKCS#8 structure"),Qo(e),$o(e,2,"Expected version field");const t=Qo(e);e.pos+=t,$o(e,48,"Expected algorithm identifier"),Qo(e),e.pos}(t),(e=>{const t=(e=>{$o(e,6,"Expected algorithm OID");const t=Qo(e);return er(e,t)})(e);if(qo(t,[43,101,110]))return"X25519";if(!qo(t,[42,134,72,206,61,2,1]))throw new Error("Unsupported key algorithm");$o(e,6,"Expected curve OID");const n=Qo(e),o=er(e,n);for(const e of[{name:"P-256",oid:[42,134,72,206,61,3,1,7]},{name:"P-384",oid:[43,129,4,0,34]},{name:"P-521",oid:[43,129,4,0,35]}]){const t=e.name,n=e.oid;if(qo(o,n))return t}throw new Error("Unsupported named curve")})(t)}),(async(e,t,n,o)=>{var r;let i,a;const s="spki"===e,c=()=>s?["verify"]:["sign"];switch(n){case"PS256":case"PS384":case"PS512":i={name:"RSA-PSS",hash:"SHA-".concat(n.slice(-3))},a=c();break;case"RS256":case"RS384":case"RS512":i={name:"RSASSA-PKCS1-v1_5",hash:"SHA-".concat(n.slice(-3))},a=c();break;case"RSA-OAEP":case"RSA-OAEP-256":case"RSA-OAEP-384":case"RSA-OAEP-512":i={name:"RSA-OAEP",hash:"SHA-".concat(parseInt(n.slice(-3),10)||1)},a=s?["encrypt","wrapKey"]:["decrypt","unwrapKey"];break;case"ES256":case"ES384":case"ES512":i={name:"ECDSA",namedCurve:{ES256:"P-256",ES384:"P-384",ES512:"P-521"}[n]},a=c();break;case"ECDH-ES":case"ECDH-ES+A128KW":case"ECDH-ES+A192KW":case"ECDH-ES+A256KW":try{const e=o.getNamedCurve(t);i="X25519"===e?{name:"X25519"}:{name:"ECDH",namedCurve:e}}catch(e){throw new Po("Invalid or unsupported key format")}a=s?[]:["deriveBits"];break;case"Ed25519":case"EdDSA":i={name:"Ed25519"},a=c();break;case"ML-DSA-44":case"ML-DSA-65":case"ML-DSA-87":i={name:n},a=c();break;default:throw new Po('Invalid or unsupported "alg" (Algorithm) value')}return crypto.subtle.importKey(e,t,i,null!==(r=null==o?void 0:o.extractable)&&void 0!==r?r:!!s,a)})("pkcs8",r,t,i)};async function nr(e,t,n){if("string"!=typeof e||0!==e.indexOf("-----BEGIN PRIVATE KEY-----"))throw new TypeError('"pkcs8" must be PKCS#8 formatted string');return tr(e,t,n)}function or(e,t,n,o,r){if(void 0!==r.crit&&void 0===(null==o?void 0:o.crit))throw new e('"crit" (Critical) Header Parameter MUST be integrity protected');if(!o||void 0===o.crit)return new Set;if(!Array.isArray(o.crit)||0===o.crit.length||o.crit.some(e=>"string"!=typeof e||0===e.length))throw new e('"crit" (Critical) Header Parameter MUST be an array of non-empty strings when present');let i;i=void 0!==n?new Map([...Object.entries(n),...t.entries()]):t;for(const t of o.crit){if(!i.has(t))throw new Po('Extension Header Parameter "'.concat(t,'" is not recognized'));if(void 0===r[t])throw new e('Extension Header Parameter "'.concat(t,'" is missing'));if(i.get(t)&&void 0===o[t])throw new e('Extension Header Parameter "'.concat(t,'" MUST be integrity protected'))}return new Set(o.crit)}const rr=e=>null==e?void 0:e[Symbol.toStringTag],ir=(e,t,n)=>{if(void 0!==t.use){let e;switch(n){case"sign":case"verify":e="sig";break;case"encrypt":case"decrypt":e="enc"}if(t.use!==e)throw new TypeError('Invalid key for this operation, its "use" must be "'.concat(e,'" when present'))}if(void 0!==t.alg&&t.alg!==e)throw new TypeError('Invalid key for this operation, its "alg" must be "'.concat(e,'" when present'));if(Array.isArray(t.key_ops)){var o,r;let i;switch(!0){case"sign"===n||"verify"===n:case"dir"===e:case e.includes("CBC-HS"):i=n;break;case e.startsWith("PBES2"):i="deriveBits";break;case/^A\d{3}(?:GCM)?(?:KW)?$/.test(e):i=!e.includes("GCM")&&e.endsWith("KW")?"encrypt"===n?"wrapKey":"unwrapKey":n;break;case"encrypt"===n&&e.startsWith("RSA"):i="wrapKey";break;case"decrypt"===n:i=e.startsWith("RSA")?"unwrapKey":"deriveBits"}if(i&&!1===(null===(o=t.key_ops)||void 0===o||null===(r=o.includes)||void 0===r?void 0:r.call(o,i)))throw new TypeError('Invalid key for this operation, its "key_ops" must include "'.concat(i,'" when present'))}return!0};function ar(e,t,n){switch(e.substring(0,2)){case"A1":case"A2":case"di":case"HS":case"PB":((e,t,n)=>{if(!(t instanceof Uint8Array)){if(zo(t)){if((e=>"oct"===e.kty&&"string"==typeof e.k)(t)&&ir(e,t,n))return;throw new TypeError('JSON Web Key for symmetric algorithms must have JWK "kty" (Key Type) equal to "oct" and the JWK "k" (Key Value) present')}if(!Ko(t))throw new TypeError(ko(e,t,"CryptoKey","KeyObject","JSON Web Key","Uint8Array"));if("secret"!==t.type)throw new TypeError("".concat(rr(t),' instances for symmetric algorithms must be of type "secret"'))}})(e,t,n);break;default:((e,t,n)=>{if(zo(t))switch(n){case"decrypt":case"sign":if((e=>"oct"!==e.kty&&("AKP"===e.kty&&"string"==typeof e.priv||"string"==typeof e.d))(t)&&ir(e,t,n))return;throw new TypeError("JSON Web Key for this operation must be a private JWK");case"encrypt":case"verify":if((e=>"oct"!==e.kty&&void 0===e.d&&void 0===e.priv)(t)&&ir(e,t,n))return;throw new TypeError("JSON Web Key for this operation must be a public JWK")}if(!Ko(t))throw new TypeError(ko(e,t,"CryptoKey","KeyObject","JSON Web Key"));if("secret"===t.type)throw new TypeError("".concat(rr(t),' instances for asymmetric algorithms must not be of type "secret"'));if("public"===t.type)switch(n){case"sign":throw new TypeError("".concat(rr(t),' instances for asymmetric algorithm signing must be of type "private"'));case"decrypt":throw new TypeError("".concat(rr(t),' instances for asymmetric algorithm decryption must be of type "private"'))}if("private"===t.type)switch(n){case"verify":throw new TypeError("".concat(rr(t),' instances for asymmetric algorithm verifying must be of type "public"'));case"encrypt":throw new TypeError("".concat(rr(t),' instances for asymmetric algorithm encryption must be of type "public"'))}})(e,t,n)}}var sr,cr;let ur,lr;if("undefined"==typeof navigator||null===(sr=navigator.userAgent)||void 0===sr||null===(cr=sr.startsWith)||void 0===cr||!cr.call(sr,"Mozilla/5.0 ")){const e="v6.8.4";lr="".concat("openid-client","/").concat(e),ur={"user-agent":lr}}const hr=e=>dr.get(e);let dr,pr;function fr(e){return void 0!==e?on(e):(pr||(pr=new WeakMap),(e,t,n,o)=>{let r;return(r=pr.get(t))||(function(e,t){if("string"!=typeof e)throw gr("".concat(t," must be a string"),wr);if(0===e.length)throw gr("".concat(t," must not be empty"),yr)}(t.client_secret,'"metadata.client_secret"'),r=on(t.client_secret),pr.set(t,r)),r(e,t,n,o)})}const mr=xt,yr="ERR_INVALID_ARG_VALUE",wr="ERR_INVALID_ARG_TYPE";function gr(e,t,n){const o=new TypeError(e,{cause:n});return Object.assign(o,{code:t}),o}class vr extends Error{constructor(e,t){var n;super(e,t),k(this,"code",void 0),this.name=this.constructor.name,this.code=null==t?void 0:t.code,null===(n=Error.captureStackTrace)||void 0===n||n.call(Error,this,this.constructor)}}function br(e,t,n){return new vr(e,{cause:t,code:n})}function kr(e){if(e instanceof TypeError||e instanceof vr||e instanceof ln||e instanceof hn||e instanceof dn)throw e;if(e instanceof zt)switch(e.code){case Fn:throw br("only requests to HTTPS are allowed",e,e.code);case Vn:throw br("only requests to HTTP or HTTPS are allowed",e,e.code);case Zn:throw br("unexpected HTTP response status code",e.cause,e.code);case Hn:throw br("unexpected response content-type",e.cause,e.code);case zn:throw br("parsing error occured",e,e.code);case Jn:throw br("invalid response encountered",e,e.code);case Xn:throw br("unexpected JWT claim value encountered",e,e.code);case Yn:throw br("unexpected JSON attribute value encountered",e,e.code);case Gn:throw br("JWT timestamp claim value failed validation",e,e.code);default:throw br(e.message,e,e.code)}if(e instanceof Dt)throw br("unsupported operation",e,e.code);if(e instanceof DOMException)switch(e.name){case"OperationError":throw br("runtime operation error",e,Mn);case"NotSupportedError":throw br("runtime unsupported operation",e,Mn);case"TimeoutError":throw br("operation timed out",e,"OAUTH_TIMEOUT");case"AbortError":throw br("operation aborted",e,"OAUTH_ABORT")}throw new vr("something went wrong",{cause:e})}async function _r(e,t,n,o,r){const i=await async function(e,t){var n,o;if(!(e instanceof URL))throw gr('"server" must be an instance of URL',wr);const r=!e.href.includes("/.well-known/"),i=null!==(n=null==t?void 0:t.timeout)&&void 0!==n?n:30,a=AbortSignal.timeout(1e3*i),s=await(r?async function(e,t){return async function(e,t,n,o){if(!(e instanceof URL))throw At('"'.concat("issuerIdentifier",'" must be an instance of URL'),Pt);sn(e,!0!==(null==o?void 0:o[Rt]));const r=n(new URL(e.href)),i=Zt(null==o?void 0:o.headers);return i.set("accept","application/json"),((null==o?void 0:o[xt])||fetch)(r.href,{body:void 0,headers:Object.fromEntries(i.entries()),method:"GET",redirect:"manual",signal:Ft(r,null==o?void 0:o.signal)})}(e,0,e=>{switch(null==t?void 0:t.algorithm){case void 0:case"oidc":!function(e){e.pathname=Vt("".concat(e.pathname,"/").concat(".well-known/openid-configuration"))}(e);break;case"oauth2":!function(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];"/"===e.pathname?e.pathname=t:e.pathname=Vt("".concat(t,"/").concat(n?e.pathname:e.pathname.replace(/(\/)$/,"")))}(e,".well-known/oauth-authorization-server");break;default:throw At('"options.algorithm" must be "oidc" (default), or "oauth2"',Et)}return e},t)}(e,{algorithm:null==t?void 0:t.algorithm,[xt]:null==t?void 0:t[mr],[Rt]:null==t||null===(o=t.execute)||void 0===o?void 0:o.includes(Ir),signal:a,headers:new Headers(ur)}):((null==t?void 0:t[mr])||fetch)((sn(e,null==t||null===(c=t.execute)||void 0===c||!c.includes(Ir)),e.href),{headers:Object.fromEntries(new Headers(S({accept:"application/json"},ur)).entries()),body:void 0,method:"GET",redirect:"manual",signal:a})).then(e=>async function(e,t){const n=e;if(!(n instanceof URL)&&n!==so)throw At('"expectedIssuerIdentifier" must be an instance of URL',Pt);if(!Tt(t,Response))throw At('"response" must be an instance of Response',Pt);if(200!==t.status)throw Jt('"response" is not a conform Authorization Server Metadata response (unexpected HTTP status code)',Zn,t);$n(t);const o=await ao(t);if(Xt(o.issuer,'"response" body "issuer" property',Jn,{body:o}),n!==so&&new URL(o.issuer).href!==n.href)throw Jt('"response" body "issuer" property does not match the expected value',Yn,{expected:n.href,body:o,attribute:"issuer"});return o}(so,e)).catch(kr);var c;return r&&new URL(s.issuer).href!==e.href&&(function(e,t,n){return!("https://login.microsoftonline.com"!==e.origin||null!=n&&n.algorithm&&"oidc"!==n.algorithm||(t[Sr]=!0,0))}(e,s,t)||function(e,t){return!(!e.hostname.endsWith(".b2clogin.com")||null!=t&&t.algorithm&&"oidc"!==t.algorithm)}(e,t)||(()=>{throw new vr("discovered metadata issuer does not match the expected issuer",{code:Yn,cause:{expected:e.href,body:s,attribute:"issuer"}})})()),s}(e,r),a=new Tr(i,t,n,o);let s=hr(a);if(null!=r&&r[mr]&&(s.fetch=r[mr]),null!=r&&r.timeout&&(s.timeout=r.timeout),null!=r&&r.execute)for(const e of r.execute)e(a);return a}new TextDecoder;const Sr=Symbol();class Tr{constructor(e,t,n,o){var r,i,a,s,c;if("string"!=typeof t||!t.length)throw gr('"clientId" must be a non-empty string',wr);if("string"==typeof n&&(n={client_secret:n}),void 0!==(null===(r=n)||void 0===r?void 0:r.client_id)&&t!==n.client_id)throw gr('"clientId" and "metadata.client_id" must be the same',yr);const u=S(S({},structuredClone(n)),{},{client_id:t});let l;u[Ct]=null!==(i=null===(a=n)||void 0===a?void 0:a[Ct])&&void 0!==i?i:0,u[It]=null!==(s=null===(c=n)||void 0===c?void 0:c[It])&&void 0!==s?s:30,l=o||("string"==typeof u.client_secret&&u.client_secret.length?fr(u.client_secret):(e,t,n,o)=>{n.set("client_id",t.client_id)});let h=Object.freeze(u);const d=structuredClone(e);Sr in e&&(d[co]=t=>{let n=t.claims.tid;return e.issuer.replace("{tenantid}",n)});let p=Object.freeze(d);dr||(dr=new WeakMap),dr.set(this,{__proto__:null,as:p,c:h,auth:l,tlsOnly:!0,jwksCache:{}})}serverMetadata(){const e=structuredClone(hr(this).as);return function(e){Object.defineProperties(e,function(e){return{supportsPKCE:{__proto__:null,value(){var t;let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"S256";return!0===(null===(t=e.code_challenge_methods_supported)||void 0===t?void 0:t.includes(n))}}}}(e))}(e),e}clientMetadata(){return structuredClone(hr(this).c)}get timeout(){return hr(this).timeout}set timeout(e){hr(this).timeout=e}get[mr](){return hr(this).fetch}set[mr](e){hr(this).fetch=e}}function Er(e){Object.defineProperties(e,function(e){let t;if(void 0!==e.expires_in){const n=new Date;n.setSeconds(n.getSeconds()+e.expires_in),t=n.getTime()}return{expiresIn:{__proto__:null,value(){if(t){const e=Date.now();return t>e?Math.floor((t-e)/1e3):0}}},claims:{__proto__:null,value(){try{return An(this)}catch(e){return}}}}}(e))}async function Pr(e,t,n){var o;let r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];const i=null===(o=e.headers.get("retry-after"))||void 0===o?void 0:o.trim();if(void 0===i)return;let a;if(/^\d+$/.test(i))a=parseInt(i,10);else{const e=new Date(i);if(Number.isFinite(e.getTime())){const t=new Date,n=e.getTime()-t.getTime();n>0&&(a=Math.ceil(n/1e3))}}if(r&&!Number.isFinite(a))throw new zt("invalid Retry-After header value",{cause:e});a>t&&await Ar(a-t,n)}function Ar(e,t){return new Promise((n,o)=>{const r=e=>{try{t.throwIfAborted()}catch(e){return void o(e)}if(e<=0)return void n();const i=Math.min(e,5);setTimeout(()=>r(e-i),1e3*i)};r(e)})}async function Rr(e,t){Kr(e);const n=hr(e),o=n.as,r=n.c,i=n.auth,a=n.fetch,s=n.tlsOnly,c=n.timeout;return async function(e,t,n,o,r){tn(e),nn(t);const i=un(e,"backchannel_authentication_endpoint",t.use_mtls_endpoint_aliases,!0!==(null==r?void 0:r[Rt])),a=new URLSearchParams(o);a.set("client_id",t.client_id);const s=Zt(null==r?void 0:r.headers);return s.set("accept","application/json"),Sn(e,t,n,i,a,s,r)}(o,r,i,t,{[xt]:a,[Rt]:!s,headers:new Headers(ur),signal:Lr(c)}).then(e=>async function(e,t,n){if(tn(e),nn(t),!Tt(n,Response))throw At('"response" must be an instance of Response',Pt);await bn(n,200,"Backchannel Authentication Endpoint"),$n(n);const o=await ao(n);Xt(o.auth_req_id,'"response" body "auth_req_id" property',Jn,{body:o});let r="number"!=typeof o.expires_in?parseFloat(o.expires_in):o.expires_in;return Gt(r,!0,'"response" body "expires_in" property',Jn,{body:o}),o.expires_in=r,void 0!==o.interval&&Gt(o.interval,!1,'"response" body "interval" property',Jn,{body:o}),o}(o,r,e)).catch(kr)}async function Cr(e,t,n,o){var r,i;Kr(e),n=new URLSearchParams(n);let a=null!==(r=t.interval)&&void 0!==r?r:5;const s=null!==(i=null==o?void 0:o.signal)&&void 0!==i?i:AbortSignal.timeout(1e3*t.expires_in);try{await Ar(a,s)}catch(e){kr(e)}const c=hr(e),u=c.as,l=c.c,h=c.auth,d=c.fetch,p=c.tlsOnly,f=c.nonRepudiation,m=c.timeout,y=c.decrypt,w=(r,i)=>Cr(e,S(S({},t),{},{interval:r}),n,S(S({},o),{},{signal:s,flag:i})),g=function(e,t){const n=Lr(t);if(!n)return{signal:e,cleanup(){}};const o=new AbortController,r=e=>{const t=e.target;o.abort(t.reason)};return e.aborted?o.abort(e.reason):n.aborted?o.abort(n.reason):(e.addEventListener("abort",r,{once:!0}),n.addEventListener("abort",r,{once:!0})),{signal:o.signal,cleanup(){e.removeEventListener("abort",r),n.removeEventListener("abort",r)}}}(s,m),v=await async function(e,t,n,o,r){tn(e),nn(t),Xt(o,'"authReqId"');const i=new URLSearchParams(null==r?void 0:r.additionalParameters);return i.set("auth_req_id",o),Tn(e,t,n,"urn:openid:params:grant-type:ciba",i,r)}(u,l,h,t.auth_req_id,{[xt]:d,[Rt]:!p,additionalParameters:n,DPoP:null==o?void 0:o.DPoP,headers:new Headers(ur),signal:g.signal}).catch(kr).finally(g.cleanup);var b;if(503===v.status&&v.headers.has("retry-after"))return await Pr(v,a,s,!0),await(null===(b=v.body)||void 0===b?void 0:b.cancel()),w(a);const k=async function(e,t,n,o){return Rn(e,t,n,void 0,null==o?void 0:o[Wt],null==o?void 0:o.recognizedTokenTypes)}(u,l,v,{[Wt]:y});let _;try{_=await k}catch(e){if(Nr(e,o))return w(a,Mr);if(e instanceof ln)switch(e.error){case"slow_down":a+=5;case"authorization_pending":return await Pr(e.response,a,s),w(a)}kr(e)}return _.id_token&&await(null==f?void 0:f(v)),Er(_),_}function Ir(e){hr(e).tlsOnly=!1}async function xr(e,t,n,o,r){if(Kr(e),!((null==r?void 0:r.flag)===Mr||t instanceof URL||function(e){try{return"Request"===Object.getPrototypeOf(e)[Symbol.toStringTag]}catch(e){return!1}}(t)))throw gr('"currentUrl" must be an instance of URL, or Request',wr);let i,a;const s=hr(e),c=s.as,u=s.c,l=s.auth,h=s.fetch,d=s.tlsOnly,p=s.jarm,f=s.hybrid,m=s.nonRepudiation,y=s.timeout,w=s.decrypt,g=s.implicit;if((null==r?void 0:r.flag)===Mr)i=r.authResponse,a=r.redirectUri;else{if(!(t instanceof URL)){const e=t;switch(t=new URL(t.url),e.method){case"GET":break;case"POST":const n=new URLSearchParams(await async function(e){if("POST"!==e.method)throw At("form_post responses are expected to use the POST method",Et,{cause:e});if("application/x-www-form-urlencoded"!==_n(e))throw At("form_post responses are expected to use the application/x-www-form-urlencoded content-type",Et,{cause:e});return async function(e){if(e.bodyUsed)throw At("form_post Request instances must contain a readable body",Et,{cause:e});return e.text()}(e)}(e));if(f)t.hash=n.toString();else for(const e of n.entries()){var v=E(e,2);const n=v[0],o=v[1];t.searchParams.append(n,o)}break;default:throw gr("unexpected Request HTTP method",yr)}}switch(a=function(e){return(e=new URL(e)).search="",e.hash="",e.href}(t),!0){case!!p:i=await p(t,null==n?void 0:n.expectedState);break;case!!f:i=await f(t,null==n?void 0:n.expectedNonce,null==n?void 0:n.expectedState,null==n?void 0:n.maxAge);break;case!!g:throw new TypeError("authorizationCodeGrant() cannot be used by response_type=id_token clients");default:try{i=function(e,t,n,o){if(tn(e),nn(t),n instanceof URL&&(n=n.searchParams),!(n instanceof URLSearchParams))throw At('"parameters" must be an instance of URLSearchParams, or URL',Pt);if(oo(n,"response"))throw Jt('"parameters" contains a JARM response, use validateJwtAuthResponse() instead of validateAuthResponse()',Jn,{parameters:n});const r=oo(n,"iss"),i=oo(n,"state");if(!r&&e.authorization_response_iss_parameter_supported)throw Jt('response parameter "iss" (issuer) missing',Jn,{parameters:n});if(r&&r!==e.issuer)throw Jt('unexpected "iss" (issuer) response parameter value',Jn,{expected:e.issuer,parameters:n});switch(o){case void 0:case io:if(void 0!==i)throw Jt('unexpected "state" response parameter encountered',Jn,{expected:void 0,parameters:n});break;case ro:break;default:if(Xt(o,'"expectedState" argument'),i!==o)throw Jt(void 0===i?'response parameter "state" missing':'unexpected "state" response parameter value',Jn,{expected:o,parameters:n})}if(oo(n,"error"))throw new hn("authorization response from the server is an error",{cause:n});const a=oo(n,"id_token"),s=oo(n,"token");if(void 0!==a||void 0!==s)throw new Dt("implicit and hybrid flows are not supported");return c=new URLSearchParams(n),xn.add(c),c;var c}(c,u,t.searchParams,null==n?void 0:n.expectedState)}catch(e){kr(e)}}}const b=await async function(e,t,n,o,r,i,a){if(tn(e),nn(t),!xn.has(o))throw At('"callbackParameters" must be an instance of URLSearchParams obtained from "validateAuthResponse()", or "validateJwtAuthResponse()',Et);Xt(r,'"redirectUri"');const s=oo(o,"code");if(!s)throw Jt('no authorization code in "callbackParameters"',Jn);const c=new URLSearchParams(null==a?void 0:a.additionalParameters);return c.set("redirect_uri",r),c.set("code",s),i!==On&&(Xt(i,'"codeVerifier"'),c.set("code_verifier",i)),Tn(e,t,n,"authorization_code",c,a)}(c,u,l,i,a,(null==n?void 0:n.pkceCodeVerifier)||On,{additionalParameters:o,[xt]:h,[Rt]:!d,DPoP:null==r?void 0:r.DPoP,headers:new Headers(ur),signal:Lr(y)}).catch(kr);"string"!=typeof(null==n?void 0:n.expectedNonce)&&"number"!=typeof(null==n?void 0:n.maxAge)||(n.idTokenExpected=!0);const k=async function(e,t,n,o){return"string"==typeof(null==o?void 0:o.expectedNonce)||"number"==typeof(null==o?void 0:o.maxAge)||null!=o&&o.requireIdToken?async function(e,t,n,o,r,i,a){const s=[];switch(o){case void 0:o=Un;break;case Un:break;default:Xt(o,'"expectedNonce" argument'),s.push("nonce")}switch(null!=r||(r=t.default_max_age),r){case void 0:r=Kn;break;case Kn:break;default:Gt(r,!0,'"maxAge" argument'),s.push("auth_time")}const c=await Rn(e,t,n,s,i,a);Xt(c.id_token,'"response" body "id_token" property',Jn,{body:c});const u=An(c);if(r!==Kn){const e=en()+Qt(t),n=$t(t);if(u.auth_time+r<e-n)throw Jt("too much time has elapsed since the last End-User authentication",Gn,{claims:u,now:e,tolerance:n,claim:"auth_time"})}if(o===Un){if(void 0!==u.nonce)throw Jt('unexpected ID Token "nonce" claim value',Xn,{expected:void 0,claims:u,claim:"nonce"})}else if(u.nonce!==o)throw Jt('unexpected ID Token "nonce" claim value',Xn,{expected:o,claims:u,claim:"nonce"});return c}(e,t,n,o.expectedNonce,o.maxAge,o[Wt],o.recognizedTokenTypes):async function(e,t,n,o,r){const i=await Rn(e,t,n,void 0,o,r),a=An(i);if(a){if(void 0!==t.default_max_age){Gt(t.default_max_age,!0,'"client.default_max_age"');const e=en()+Qt(t),n=$t(t);if(a.auth_time+t.default_max_age<e-n)throw Jt("too much time has elapsed since the last End-User authentication",Gn,{claims:a,now:e,tolerance:n,claim:"auth_time"})}if(void 0!==a.nonce)throw Jt('unexpected ID Token "nonce" claim value',Xn,{expected:void 0,claims:a,claim:"nonce"})}return i}(e,t,n,null==o?void 0:o[Wt],null==o?void 0:o.recognizedTokenTypes)}(c,u,b,{expectedNonce:null==n?void 0:n.expectedNonce,maxAge:null==n?void 0:n.maxAge,requireIdToken:null==n?void 0:n.idTokenExpected,[Wt]:w});let _;try{_=await k}catch(t){if(Nr(t,r))return xr(e,void 0,n,o,S(S({},r),{},{flag:Mr,authResponse:i,redirectUri:a}));kr(t)}return _.id_token&&await(null==m?void 0:m(b)),Er(_),_}async function Or(e,t,n,o){Kr(e),n=new URLSearchParams(n);const r=hr(e),i=r.as,a=r.c,s=r.auth,c=r.fetch,u=r.tlsOnly,l=r.nonRepudiation,h=r.timeout,d=r.decrypt,p=await async function(e,t,n,o,r){tn(e),nn(t),Xt(o,'"refreshToken"');const i=new URLSearchParams(null==r?void 0:r.additionalParameters);return i.set("refresh_token",o),Tn(e,t,n,"refresh_token",i,r)}(i,a,s,t,{[xt]:c,[Rt]:!u,additionalParameters:n,DPoP:null==o?void 0:o.DPoP,headers:new Headers(ur),signal:Lr(h)}).catch(kr),f=async function(e,t,n,o){return Rn(e,t,n,void 0,null==o?void 0:o[Wt],null==o?void 0:o.recognizedTokenTypes)}(i,a,p,{[Wt]:d});let m;try{m=await f}catch(r){if(Nr(r,o))return Or(e,t,n,S(S({},o),{},{flag:Mr}));kr(r)}return m.id_token&&await(null==l?void 0:l(p)),Er(m),m}async function Wr(e,t,n){Kr(e),t=new URLSearchParams(t);const o=hr(e),r=o.as,i=o.c,a=o.auth,s=o.fetch,c=o.tlsOnly,u=o.timeout,l=await async function(e,t,n,o,r){return tn(e),nn(t),Tn(e,t,n,"client_credentials",new URLSearchParams(o),r)}(r,i,a,t,{[xt]:s,[Rt]:!c,DPoP:null==n?void 0:n.DPoP,headers:new Headers(ur),signal:Lr(u)}).catch(kr),h=async function(e,t,n){return Rn(e,t,n,void 0,void 0,void 0)}(r,i,l);let d;try{d=await h}catch(o){if(Nr(o,n))return Wr(e,t,S(S({},n),{},{flag:Mr}));kr(o)}return Er(d),d}function jr(e,t){Kr(e);const n=hr(e),o=n.as,r=n.c,i=n.tlsOnly,a=n.hybrid,s=n.jarm,c=n.implicit,u=un(o,"authorization_endpoint",!1,i);if((t=new URLSearchParams(t)).has("client_id")||t.set("client_id",r.client_id),!t.has("request_uri")&&!t.has("request")){if(t.has("response_type")||t.set("response_type",a?"code id_token":c?"id_token":"code"),c&&!t.has("nonce"))throw gr("response_type=id_token clients must provide a nonce parameter in their authorization request parameters",yr);s&&t.set("response_mode","jwt")}for(const e of t.entries()){var l=E(e,2);const t=l[0],n=l[1];u.searchParams.append(t,n)}return u}async function Ur(e,t,n){Kr(e);const o=jr(e,t),r=hr(e),i=r.as,a=r.c,s=r.auth,c=r.fetch,u=r.tlsOnly,l=r.timeout,h=await async function(e,t,n,o,r){var i;tn(e),nn(t);const a=un(e,"pushed_authorization_request_endpoint",t.use_mtls_endpoint_aliases,!0!==(null==r?void 0:r[Rt])),s=new URLSearchParams(o);s.set("client_id",t.client_id);const c=Zt(null==r?void 0:r.headers);c.set("accept","application/json"),void 0!==(null==r?void 0:r.DPoP)&&(kn(r.DPoP),await r.DPoP.addProof(a,c,"POST"));const u=await Sn(e,t,n,a,s,c,r);return null==r||null===(i=r.DPoP)||void 0===i||i.cacheNonce(u,a),u}(i,a,s,o.searchParams,{[xt]:c,[Rt]:!u,DPoP:null==n?void 0:n.DPoP,headers:new Headers(ur),signal:Lr(l)}).catch(kr),d=async function(e,t,n){if(tn(e),nn(t),!Tt(n,Response))throw At('"response" must be an instance of Response',Pt);await bn(n,201,"Pushed Authorization Request Endpoint"),$n(n);const o=await ao(n);Xt(o.request_uri,'"response" body "request_uri" property',Jn,{body:o});let r="number"!=typeof o.expires_in?parseFloat(o.expires_in):o.expires_in;return Gt(r,!0,'"response" body "expires_in" property',Jn,{body:o}),o.expires_in=r,o}(i,a,h);let p;try{p=await d}catch(o){if(Nr(o,n))return Ur(e,t,S(S({},n),{},{flag:Mr}));kr(o)}return jr(e,{request_uri:p.request_uri})}function Kr(e){if(!(e instanceof Tr))throw gr('"config" must be an instance of Configuration',wr);if(Object.getPrototypeOf(e)!==Tr.prototype)throw gr("subclassing Configuration is not allowed",yr)}function Lr(e){return e?AbortSignal.timeout(1e3*e):void 0}function Nr(e,t){return!(null==t||!t.DPoP||t.flag===Mr)&&function(e){if(e instanceof dn){const t=e.cause,n=t[0];return 1===t.length&&"dpop"===n.scheme&&"use_dpop_nonce"===n.parameters.error}return e instanceof ln&&"use_dpop_nonce"===e.error}(e)}Object.freeze(Tr.prototype);const Mr=Symbol();async function Dr(e,t,n,o){Kr(e);const r=hr(e),i=r.as,a=r.c,s=r.auth,c=r.fetch,u=r.tlsOnly,l=r.timeout,h=r.decrypt,d=r.nonRepudiation,p=await async function(e,t,n,o,r,i){return tn(e),nn(t),Xt(o,'"grantType"'),Tn(e,t,n,o,new URLSearchParams(r),i)}(i,a,s,t,new URLSearchParams(n),{[xt]:c,[Rt]:!u,DPoP:null==o?void 0:o.DPoP,headers:new Headers(ur),signal:Lr(l)}).catch(kr);let f;"urn:ietf:params:oauth:grant-type:token-exchange"===t&&(f={n_a:()=>{}});const m=async function(e,t,n,o){return Rn(e,t,n,void 0,null==o?void 0:o[Wt],null==o?void 0:o.recognizedTokenTypes)}(i,a,p,{[Wt]:h,recognizedTokenTypes:f});let y;try{y=await m}catch(r){if(Nr(r,o))return Dr(e,t,n,S(S({},o),{},{flag:Mr}));kr(r)}return y.id_token&&await(null==d?void 0:d(p)),Er(y),y}const zr=e=>Math.floor(e.getTime()/1e3),Jr=/^(\+|\-)? ?(\d+|\d+\.\d+) ?(seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)(?: (ago|from now))?$/i;function Hr(e){const t=Jr.exec(e);if(!t||t[4]&&t[1])throw new TypeError("Invalid time period format");const n=parseFloat(t[2]);let o;switch(t[3].toLowerCase()){case"sec":case"secs":case"second":case"seconds":case"s":o=Math.round(n);break;case"minute":case"minutes":case"min":case"mins":case"m":o=Math.round(60*n);break;case"hour":case"hours":case"hr":case"hrs":case"h":o=Math.round(3600*n);break;case"day":case"days":case"d":o=Math.round(86400*n);break;case"week":case"weeks":case"w":o=Math.round(604800*n);break;default:o=Math.round(31557600*n)}return"-"===t[1]||"ago"===t[4]?-o:o}function Zr(e,t){if(!Number.isFinite(t))throw new TypeError("Invalid ".concat(e," input"));return t}const Fr=e=>e.includes("/")?e.toLowerCase():"application/".concat(e.toLowerCase());function Vr(e,t){let n,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};try{n=JSON.parse(lo.decode(t))}catch(e){}if(!Mo(n))throw new Ro("JWT Claims Set must be a top-level JSON object");const r=o.typ;if(r&&("string"!=typeof e.typ||Fr(e.typ)!==Fr(r)))throw new So('unexpected "typ" JWT header value',n,"typ","check_failed");const i=o.requiredClaims,a=void 0===i?[]:i,s=o.issuer,c=o.subject,u=o.audience,l=o.maxTokenAge,h=[...a];void 0!==l&&h.push("iat"),void 0!==u&&h.push("aud"),void 0!==c&&h.push("sub"),void 0!==s&&h.push("iss");for(const e of new Set(h.reverse()))if(!(e in n))throw new So('missing required "'.concat(e,'" claim'),n,e,"missing");if(s&&!(Array.isArray(s)?s:[s]).includes(n.iss))throw new So('unexpected "iss" claim value',n,"iss","check_failed");if(c&&n.sub!==c)throw new So('unexpected "sub" claim value',n,"sub","check_failed");if(u&&(p="string"==typeof u?[u]:u,!("string"==typeof(d=n.aud)?p.includes(d):Array.isArray(d)&&p.some(Set.prototype.has.bind(new Set(d))))))throw new So('unexpected "aud" claim value',n,"aud","check_failed");var d,p;let f;switch(typeof o.clockTolerance){case"string":f=Hr(o.clockTolerance);break;case"number":f=o.clockTolerance;break;case"undefined":f=0;break;default:throw new TypeError("Invalid clockTolerance option type")}const m=o.currentDate,y=zr(m||new Date);if((void 0!==n.iat||l)&&"number"!=typeof n.iat)throw new So('"iat" claim must be a number',n,"iat","invalid");if(void 0!==n.nbf){if("number"!=typeof n.nbf)throw new So('"nbf" claim must be a number',n,"nbf","invalid");if(n.nbf>y+f)throw new So('"nbf" claim timestamp check failed',n,"nbf","check_failed")}if(void 0!==n.exp){if("number"!=typeof n.exp)throw new So('"exp" claim must be a number',n,"exp","invalid");if(n.exp<=y-f)throw new To('"exp" claim timestamp check failed',n,"exp","check_failed")}if(l){const e=y-n.iat;if(e-f>("number"==typeof l?l:Hr(l)))throw new To('"iat" claim timestamp check failed (too far in the past)',n,"iat","check_failed");if(e<0-f)throw new So('"iat" claim timestamp check failed (it should be in the past)',n,"iat","check_failed")}return n}var Gr=new WeakMap;class Xr{constructor(e){if(g(this,Gr,void 0),!Mo(e))throw new TypeError("JWT Claims Set MUST be an object");v(Gr,this,structuredClone(e))}data(){return uo.encode(JSON.stringify(w(Gr,this)))}get iss(){return w(Gr,this).iss}set iss(e){w(Gr,this).iss=e}get sub(){return w(Gr,this).sub}set sub(e){w(Gr,this).sub=e}get aud(){return w(Gr,this).aud}set aud(e){w(Gr,this).aud=e}set jti(e){w(Gr,this).jti=e}set nbf(e){"number"==typeof e?w(Gr,this).nbf=Zr("setNotBefore",e):e instanceof Date?w(Gr,this).nbf=Zr("setNotBefore",zr(e)):w(Gr,this).nbf=zr(new Date)+Hr(e)}set exp(e){"number"==typeof e?w(Gr,this).exp=Zr("setExpirationTime",e):e instanceof Date?w(Gr,this).exp=Zr("setExpirationTime",zr(e)):w(Gr,this).exp=zr(new Date)+Hr(e)}set iat(e){void 0===e?w(Gr,this).iat=zr(new Date):e instanceof Date?w(Gr,this).iat=Zr("setIssuedAt",zr(e)):w(Gr,this).iat=Zr("setIssuedAt","string"==typeof e?zr(new Date)+Hr(e):e)}}async function Yr(e,t,n){var o;const r=await async function(e,t,n){if(e instanceof Uint8Array&&(e=lo.decode(e)),"string"!=typeof e)throw new Ao("Compact JWS must be a string or Uint8Array");const o=e.split("."),r=o[0],i=o[1],a=o[2];if(3!==o.length)throw new Ao("Invalid Compact JWS");const s=await async function(e,t,n){if(!Mo(e))throw new Ao("Flattened JWS must be an object");if(void 0===e.protected&&void 0===e.header)throw new Ao('Flattened JWS must have either of the "protected" or "header" members');if(void 0!==e.protected&&"string"!=typeof e.protected)throw new Ao("JWS Protected Header incorrect type");if(void 0===e.payload)throw new Ao("JWS Payload missing");if("string"!=typeof e.signature)throw new Ao("JWS Signature missing or incorrect type");if(void 0!==e.header&&!Mo(e.header))throw new Ao("JWS Unprotected Header incorrect type");let o={};if(e.protected)try{const t=mo(e.protected);o=JSON.parse(lo.decode(t))}catch(e){throw new Ao("JWS Protected Header is invalid")}if(!Do(o,e.header))throw new Ao("JWS Protected and JWS Unprotected Header Parameter names must be disjoint");const r=S(S({},o),e.header);let i=!0;if(or(Ao,new Map([["b64",!0]]),null==n?void 0:n.crit,o,r).has("b64")&&(i=o.b64,"boolean"!=typeof i))throw new Ao('The "b64" (base64url-encode payload) Header Parameter must be a boolean');const a=r.alg;if("string"!=typeof a||!a)throw new Ao('JWS "alg" (Algorithm) Header Parameter missing or invalid');const s=n&&function(e,t){if(void 0!==t&&(!Array.isArray(t)||t.some(e=>"string"!=typeof e)))throw new TypeError('"'.concat("algorithms",'" option must be an array of strings'));if(t)return new Set(t)}(0,n.algorithms);if(s&&!s.has(a))throw new Eo('"alg" (Algorithm) Header Parameter value not allowed');if(i){if("string"!=typeof e.payload)throw new Ao("JWS Payload must be a string")}else if("string"!=typeof e.payload&&!(e.payload instanceof Uint8Array))throw new Ao("JWS Payload must be a string or an Uint8Array instance");let c=!1;"function"==typeof t&&(t=await t(o,e),c=!0),ar(a,t,"verify");const u=ho(void 0!==e.protected?po(e.protected):new Uint8Array,po("."),"string"==typeof e.payload?i?po(e.payload):uo.encode(e.payload):e.payload),l=No(e.signature,"signature",Ao),h=await Bo(t,a),d=await async function(e,t,n,o){const r=await Zo(e,t,"verify");Jo(e,r);const i=Ho(e,r.algorithm);try{return await crypto.subtle.verify(i,r,n,o)}catch(e){return!1}}(a,h,l,u);if(!d)throw new Wo;let p;p=i?No(e.payload,"payload",Ao):"string"==typeof e.payload?uo.encode(e.payload):e.payload;const f={payload:p};return void 0!==e.protected&&(f.protectedHeader=o),void 0!==e.header&&(f.unprotectedHeader=e.header),c?S(S({},f),{},{key:h}):f}({payload:i,protected:r,signature:a},t,n),c={payload:s.payload,protectedHeader:s.protectedHeader};return"function"==typeof t?S(S({},c),{},{key:s.key}):c}(e,t,n);if(null!==(o=r.protectedHeader.crit)&&void 0!==o&&o.includes("b64")&&!1===r.protectedHeader.b64)throw new Ro("JWTs MUST NOT use unencoded payload");const i={payload:Vr(r.protectedHeader,r.payload,n),protectedHeader:r.protectedHeader};return"function"==typeof t?S(S({},i),{},{key:r.key}):i}var Br=new WeakMap,qr=new WeakMap,Qr=new WeakMap;class $r{constructor(e){if(g(this,Br,void 0),g(this,qr,void 0),g(this,Qr,void 0),!(e instanceof Uint8Array))throw new TypeError("payload must be an instance of Uint8Array");v(Br,this,e)}setProtectedHeader(e){return Lo(w(qr,this),"setProtectedHeader"),v(qr,this,e),this}setUnprotectedHeader(e){return Lo(w(Qr,this),"setUnprotectedHeader"),v(Qr,this,e),this}async sign(e,t){if(!w(qr,this)&&!w(Qr,this))throw new Ao("either setProtectedHeader or setUnprotectedHeader must be called before #sign()");if(!Do(w(qr,this),w(Qr,this)))throw new Ao("JWS Protected and JWS Unprotected Header Parameter names must be disjoint");const n=S(S({},w(qr,this)),w(Qr,this));let o=!0;if(or(Ao,new Map([["b64",!0]]),null==t?void 0:t.crit,w(qr,this),n).has("b64")&&(o=w(qr,this).b64,"boolean"!=typeof o))throw new Ao('The "b64" (base64url-encode payload) Header Parameter must be a boolean');const r=n.alg;if("string"!=typeof r||!r)throw new Ao('JWS "alg" (Algorithm) Header Parameter missing or invalid');let i,a,s,c;ar(r,e,"sign"),o?(i=yo(w(Br,this)),a=po(i)):(a=w(Br,this),i=""),w(qr,this)?(s=yo(JSON.stringify(w(qr,this))),c=po(s)):(s="",c=new Uint8Array);const u=ho(c,po("."),a),l=await Bo(e,r),h=await async function(e,t,n){const o=await Zo(e,t,"sign");Jo(e,o);const r=await crypto.subtle.sign(Ho(e,o.algorithm),o,n);return new Uint8Array(r)}(r,l,u),d={signature:yo(h),payload:i};return w(Qr,this)&&(d.header=w(Qr,this)),w(qr,this)&&(d.protected=s),d}}var ei=new WeakMap;class ti{constructor(e){g(this,ei,void 0),v(ei,this,new $r(e))}setProtectedHeader(e){return w(ei,this).setProtectedHeader(e),this}async sign(e,t){const n=await w(ei,this).sign(e,t);if(void 0===n.payload)throw new TypeError("use the flattened module for creating JWS with b64: false");return"".concat(n.protected,".").concat(n.payload,".").concat(n.signature)}}var ni=new WeakMap,oi=new WeakMap;class ri{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};g(this,ni,void 0),g(this,oi,void 0),v(oi,this,new Xr(e))}setIssuer(e){return w(oi,this).iss=e,this}setSubject(e){return w(oi,this).sub=e,this}setAudience(e){return w(oi,this).aud=e,this}setJti(e){return w(oi,this).jti=e,this}setNotBefore(e){return w(oi,this).nbf=e,this}setExpirationTime(e){return w(oi,this).exp=e,this}setIssuedAt(e){return w(oi,this).iat=e,this}setProtectedHeader(e){return v(ni,this,e),this}async sign(e,t){var n;const o=new ti(w(oi,this).data());if(o.setProtectedHeader(w(ni,this)),Array.isArray(null===(n=w(ni,this))||void 0===n?void 0:n.crit)&&w(ni,this).crit.includes("b64")&&!1===w(ni,this).b64)throw new Ro("JWTs MUST NOT use unencoded payload");return o.sign(e,t)}}function ii(e){return Mo(e)}var ai,si,ci=new WeakMap,ui=new WeakMap;class li{constructor(e){if(g(this,ci,void 0),g(this,ui,new WeakMap),!function(e){return e&&"object"==typeof e&&Array.isArray(e.keys)&&e.keys.every(ii)}(e))throw new Co("JSON Web Key Set malformed");v(ci,this,structuredClone(e))}jwks(){return w(ci,this)}async getKey(e,t){const n=S(S({},e),null==t?void 0:t.header),o=n.alg,r=n.kid,i=function(e){switch("string"==typeof e&&e.slice(0,2)){case"RS":case"PS":return"RSA";case"ES":return"EC";case"Ed":return"OKP";case"ML":return"AKP";default:throw new Po('Unsupported "alg" value for a JSON Web Key Set')}}(o),a=w(ci,this).keys.filter(e=>{let t=i===e.kty;if(t&&"string"==typeof r&&(t=r===e.kid),!t||"string"!=typeof e.alg&&"AKP"!==i||(t=o===e.alg),t&&"string"==typeof e.use&&(t="sig"===e.use),t&&Array.isArray(e.key_ops)&&(t=e.key_ops.includes("verify")),t)switch(o){case"ES256":t="P-256"===e.crv;break;case"ES384":t="P-384"===e.crv;break;case"ES512":t="P-521"===e.crv;break;case"Ed25519":case"EdDSA":t="Ed25519"===e.crv}return t}),s=a[0],c=a.length;if(0===c)throw new Io;if(1!==c){const e=new xo,t=w(ui,this);throw e[Symbol.asyncIterator]=function(e){return function(){return new P(e.apply(this,arguments))}}(function*(){for(const e of a)try{yield yield m(hi(t,e,o))}catch(e){}}),e}return hi(w(ui,this),s,o)}}async function hi(e,t,n){const o=e.get(t)||e.set(t,{}).get(t);if(void 0===o[n]){const e=await async function(e,t){if(!Mo(e))throw new TypeError("JWK must be an object");let n;switch(null!=t||(t=e.alg),null!=n||(n=e.ext),e.kty){case"oct":if("string"!=typeof e.k||!e.k)throw new TypeError('missing "k" (Key Value) Parameter value');return mo(e.k);case"RSA":if("oth"in e&&void 0!==e.oth)throw new Po('RSA JWK "oth" (Other Primes Info) Parameter value is not supported');return Vo(S(S({},e),{},{alg:t,ext:n}));case"AKP":if("string"!=typeof e.alg||!e.alg)throw new TypeError('missing "alg" (Algorithm) Parameter value');if(void 0!==t&&t!==e.alg)throw new TypeError("JWK alg and alg option value mismatch");return Vo(S(S({},e),{},{ext:n}));case"EC":case"OKP":return Vo(S(S({},e),{},{alg:t,ext:n}));default:throw new Po('Unsupported "kty" (Key Type) Parameter value')}}(S(S({},t),{},{ext:!0}),n);if(e instanceof Uint8Array||"public"!==e.type)throw new Co("JSON Web Key Set members must be public keys");o[n]=e}return o[n]}function di(e){const t=new li(e),n=async(e,n)=>t.getKey(e,n);return Object.defineProperties(n,{jwks:{value:()=>structuredClone(t.jwks()),enumerable:!1,configurable:!1,writable:!1}}),n}let pi;if("undefined"==typeof navigator||null===(ai=navigator.userAgent)||void 0===ai||null===(si=ai.startsWith)||void 0===si||!si.call(ai,"Mozilla/5.0 ")){const e="v6.2.3";pi="".concat("jose","/").concat(e)}const fi=Symbol(),mi=Symbol();var yi=new WeakMap,wi=new WeakMap,gi=new WeakMap,vi=new WeakMap,bi=new WeakMap,ki=new WeakMap,_i=new WeakMap,Si=new WeakMap,Ti=new WeakMap,Ei=new WeakMap;class Pi{constructor(e,t){if(g(this,yi,void 0),g(this,wi,void 0),g(this,gi,void 0),g(this,vi,void 0),g(this,bi,void 0),g(this,ki,void 0),g(this,_i,void 0),g(this,Si,void 0),g(this,Ti,void 0),g(this,Ei,void 0),!(e instanceof URL))throw new TypeError("url must be an instance of URL");var n,o;v(yi,this,new URL(e.href)),v(wi,this,"number"==typeof(null==t?void 0:t.timeoutDuration)?null==t?void 0:t.timeoutDuration:5e3),v(gi,this,"number"==typeof(null==t?void 0:t.cooldownDuration)?null==t?void 0:t.cooldownDuration:3e4),v(vi,this,"number"==typeof(null==t?void 0:t.cacheMaxAge)?null==t?void 0:t.cacheMaxAge:6e5),v(_i,this,new Headers(null==t?void 0:t.headers)),pi&&!w(_i,this).has("User-Agent")&&w(_i,this).set("User-Agent",pi),w(_i,this).has("accept")||(w(_i,this).set("accept","application/json"),w(_i,this).append("accept","application/jwk-set+json")),v(Si,this,null==t?void 0:t[fi]),void 0!==(null==t?void 0:t[mi])&&(v(Ei,this,null==t?void 0:t[mi]),n=null==t?void 0:t[mi],o=w(vi,this),"object"==typeof n&&null!==n&&"uat"in n&&"number"==typeof n.uat&&!(Date.now()-n.uat>=o)&&"jwks"in n&&Mo(n.jwks)&&Array.isArray(n.jwks.keys)&&Array.prototype.every.call(n.jwks.keys,Mo)&&(v(bi,this,w(Ei,this).uat),v(Ti,this,di(w(Ei,this).jwks))))}pendingFetch(){return!!w(ki,this)}coolingDown(){return"number"==typeof w(bi,this)&&Date.now()<w(bi,this)+w(gi,this)}fresh(){return"number"==typeof w(bi,this)&&Date.now()<w(bi,this)+w(vi,this)}jwks(){var e;return null===(e=w(Ti,this))||void 0===e?void 0:e.jwks()}async getKey(e,t){w(Ti,this)&&this.fresh()||await this.reload();try{return await w(Ti,this).call(this,e,t)}catch(n){if(n instanceof Io&&!1===this.coolingDown())return await this.reload(),w(Ti,this).call(this,e,t);throw n}}async reload(){w(ki,this)&&("undefined"!=typeof WebSocketPair||"undefined"!=typeof navigator&&"Cloudflare-Workers"===navigator.userAgent||"undefined"!=typeof EdgeRuntime&&"vercel"===EdgeRuntime)&&v(ki,this,void 0),w(ki,this)||v(ki,this,async function(e,t,n){let o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:fetch;const r=await o(e,{method:"GET",signal:n,redirect:"manual",headers:t}).catch(e=>{if("TimeoutError"===e.name)throw new Oo;throw e});if(200!==r.status)throw new _o("Expected 200 OK from the JSON Web Key Set HTTP response");try{return await r.json()}catch(e){throw new _o("Failed to parse the JSON Web Key Set HTTP response as JSON")}}(w(yi,this).href,w(_i,this),AbortSignal.timeout(w(wi,this)),w(Si,this)).then(e=>{v(Ti,this,di(e)),w(Ei,this)&&(w(Ei,this).uat=Date.now(),w(Ei,this).jwks=e),v(bi,this,Date.now()),v(ki,this,void 0)}).catch(e=>{throw v(ki,this,void 0),e})),await w(ki,this)}}const Ai=["mfaToken"],Ri=["mfaToken"];var Ci,Ii,xi,Oi,Wi,ji,Ui,Ki,Li,Ni,Mi,Di,zi,Ji,Hi,Zi,Fi,Vi,Gi,Xi,Yi,Bi,qi,Qi,$i,ea,ta,na,oa,ra,ia,aa,sa,ca;function ua(e){var t,n;if("object"!=typeof e||null===e)return{error:"unknown_error",error_description:String(e)};const o=e,r={error:null!==(t=o.error)&&void 0!==t?t:"",error_description:null!==(n=o.error_description)&&void 0!==n?n:"",message:o.message};if("mfa_required"===o.error&&o.cause){r.mfa_token="string"==typeof o.cause.mfa_token?o.cause.mfa_token:void 0;const e=o.cause.mfa_requirements;"object"==typeof e&&null!==e&&(r.mfa_requirements=e)}return r}var la=class extends Error{constructor(e,t){super(t),k(this,"code",void 0),this.name="NotSupportedError",this.code=e}},ha=class extends Error{constructor(e,t,n){super(t),k(this,"cause",void 0),k(this,"code",void 0),this.code=e,this.cause=n&&{error:n.error,error_description:n.error_description,message:n.message,mfa_token:n.mfa_token,mfa_requirements:n.mfa_requirements}}},da=class extends ha{constructor(e,t){super("token_by_code_error",e,t),this.name="TokenByCodeError"}},pa=class extends ha{constructor(e,t){super("token_by_client_credentials_error",e,t),this.name="TokenByClientCredentialsError"}},fa=class extends ha{constructor(e,t){super("token_by_refresh_token_error",e,t),this.name="TokenByRefreshTokenError"}},ma=class extends ha{constructor(e,t){super("token_by_password_error",e,t),this.name="TokenByPasswordError"}},ya=class extends ha{constructor(e,t){super("token_for_connection_error",e,t),this.name="TokenForConnectionErrorCode"}},wa=class extends ha{constructor(e,t){super("token_exchange_error",e,t),this.name="TokenExchangeError"}},ga=class extends ha{constructor(e,t){super("token_revocation_error",e,t),this.name="TokenRevocationError"}},va=class extends Error{constructor(e){super(e),k(this,"code","verify_logout_token_error"),this.name="VerifyLogoutTokenError"}},ba=class extends ha{constructor(e){super("backchannel_authentication_error","There was an error when trying to use Client-Initiated Backchannel Authentication.",e),k(this,"code","backchannel_authentication_error"),this.name="BackchannelAuthenticationError"}},ka=class extends ha{constructor(e){super("build_authorization_url_error","There was an error when trying to build the authorization URL.",e),this.name="BuildAuthorizationUrlError"}},_a=class extends ha{constructor(e){super("build_link_user_url_error","There was an error when trying to build the Link User URL.",e),this.name="BuildLinkUserUrlError"}},Sa=class extends ha{constructor(e){super("build_unlink_user_url_error","There was an error when trying to build the Unlink User URL.",e),this.name="BuildUnlinkUserUrlError"}},Ta=class extends Error{constructor(){super("The client secret or client assertion signing key must be provided."),k(this,"code","missing_client_auth_error"),this.name="MissingClientAuthError"}},Ea=class extends Error{constructor(e){super(e),k(this,"code","organization_validation_error"),this.name="OrganizationValidationError"}};function Pa(e){return Object.entries(e).filter(e=>void 0!==E(e,2)[1]).reduce((e,t)=>S(S({},e),{},{[t[0]]:t[1]}),{})}function Aa(e){if(!e.trim())throw new Ea("organization must not be blank")}function Ra(e,t){if(!e)return;const n=t.trim();if(n.startsWith("org_")){const t=e.org_id;if("string"!=typeof t)throw new Ea("Organization Id (org_id) claim must be a string present in the ID token");if(t!==n)throw new Ea('Organization Id (org_id) claim value mismatch in the ID token; expected "'.concat(n,'", found "').concat(t,'"'))}else{const t=e.org_name;if("string"!=typeof t)throw new Ea("Organization Name (org_name) claim must be a string present in the ID token");if(t.toLowerCase()!==n.toLowerCase())throw new Ea('Organization Name (org_name) claim value mismatch in the ID token; expected "'.concat(n,'", found "').concat(t,'"'))}}var Ca=class extends Error{constructor(e,t,n){super(t),k(this,"cause",void 0),k(this,"code",void 0),this.code=e,this.cause=n&&{error:n.error,error_description:n.error_description,message:n.message}}},Ia=class extends Ca{constructor(e,t){super("mfa_list_authenticators_error",e,t),this.name="MfaListAuthenticatorsError"}},xa=class extends Ca{constructor(e,t){super("mfa_enrollment_error",e,t),this.name="MfaEnrollmentError"}},Oa=class extends Ca{constructor(e,t){super("mfa_delete_authenticator_error",e,t),this.name="MfaDeleteAuthenticatorError"}},Wa=class extends Ca{constructor(e,t){super("mfa_challenge_error",e,t),this.name="MfaChallengeError"}},ja=class extends Ca{constructor(e,t){super("mfa_verify_error",e,t),this.name="MfaVerifyError"}};function Ua(e){return{id:e.id,authenticatorType:e.authenticator_type,active:e.active,name:e.name,oobChannels:e.oob_channels,type:e.type}}var Ka=class e{constructor(e,t,n,o,r,i,a){k(this,"accessToken",void 0),k(this,"idToken",void 0),k(this,"refreshToken",void 0),k(this,"expiresAt",void 0),k(this,"scope",void 0),k(this,"claims",void 0),k(this,"authorizationDetails",void 0),k(this,"tokenType",void 0),k(this,"issuedTokenType",void 0),k(this,"recoveryCode",void 0),k(this,"act",void 0),this.accessToken=e,this.idToken=n,this.refreshToken=o,this.expiresAt=t,this.scope=r,this.claims=i,this.authorizationDetails=a}static fromTokenEndpointResponse(t){const n=t.id_token?t.claims():void 0,o=new e(t.access_token,Math.floor(Date.now()/1e3)+Number(t.expires_in),t.id_token,t.refresh_token,t.scope,n,t.authorization_details);return o.tokenType=t.token_type,o.issuedTokenType=t.issued_token_type,o}},La={otp:"http://auth0.com/oauth/grant-type/mfa-otp",oob:"http://auth0.com/oauth/grant-type/mfa-oob","recovery-code":"http://auth0.com/oauth/grant-type/mfa-recovery-code"},Na=(Ci=new WeakMap,Ii=new WeakMap,xi=new WeakMap,Oi=new WeakMap,Wi=new WeakMap,class{constructor(e){var t;g(this,Ci,void 0),g(this,Ii,void 0),g(this,xi,void 0),g(this,Oi,void 0),g(this,Wi,void 0),v(Ci,this,"https://".concat(e.domain)),v(Ii,this,e.clientId),v(xi,this,e.clientSecret),v(Oi,this,null!==(t=e.customFetch)&&void 0!==t?t:function(){return fetch(...arguments)}),v(Wi,this,e.getConfiguration)}async listAuthenticators(e){const t="".concat(w(Ci,this),"/mfa/authenticators"),n=e.mfaToken,o=await w(Oi,this).call(this,t,{method:"GET",headers:{Authorization:"Bearer ".concat(n),"Content-Type":"application/json"}});if(!o.ok){let t;try{t=await o.json()}catch(e){throw new Ia("Failed to list authenticators")}throw new Ia(t.error_description||"Failed to list authenticators",t)}return(await o.json()).map(Ua)}async enrollAuthenticator(e){const t="".concat(w(Ci,this),"/mfa/associate"),n=e.mfaToken,o=T(e,Ai),r={authenticator_types:o.authenticatorTypes};"oobChannels"in o&&(r.oob_channels=o.oobChannels),"phoneNumber"in o&&o.phoneNumber&&(r.phone_number=o.phoneNumber),"email"in o&&o.email&&(r.email=o.email);const i=await w(Oi,this).call(this,t,{method:"POST",headers:{Authorization:"Bearer ".concat(n),"Content-Type":"application/json"},body:JSON.stringify(r)});if(!i.ok){let t;try{t=await i.json()}catch(e){throw new xa("Failed to enroll authenticator")}throw new xa(t.error_description||"Failed to enroll authenticator",t)}return function(e){if("otp"===e.authenticator_type)return{authenticatorType:"otp",secret:e.secret,barcodeUri:e.barcode_uri,recoveryCodes:e.recovery_codes,id:e.id};if("oob"===e.authenticator_type)return{authenticatorType:"oob",oobChannel:e.oob_channel,oobCode:e.oob_code,bindingMethod:e.binding_method,id:e.id,barcodeUri:e.barcode_uri,recoveryCodes:e.recovery_codes};throw new Error("Unexpected authenticator type: ".concat(e.authenticator_type))}(await i.json())}async deleteAuthenticator(e){const t=e.authenticatorId,n=e.mfaToken,o="".concat(w(Ci,this),"/mfa/authenticators/").concat(encodeURIComponent(t)),r=await w(Oi,this).call(this,o,{method:"DELETE",headers:{Authorization:"Bearer ".concat(n),"Content-Type":"application/json"}});if(!r.ok){let t;try{t=await r.json()}catch(e){throw new Oa("Failed to delete authenticator")}throw new Oa(t.error_description||"Failed to delete authenticator",t)}}async challengeAuthenticator(e){const t="".concat(w(Ci,this),"/mfa/challenge"),n=e.mfaToken,o=T(e,Ri),r={mfa_token:n,client_id:w(Ii,this),challenge_type:o.challengeType};w(xi,this)&&(r.client_secret=w(xi,this)),o.authenticatorId&&(r.authenticator_id=o.authenticatorId);const i=await w(Oi,this).call(this,t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(r)});if(!i.ok){let t;try{t=await i.json()}catch(e){throw new Wa("Failed to challenge authenticator")}throw new Wa(t.error_description||"Failed to challenge authenticator",t)}return function(e){const t={challengeType:e.challenge_type};return void 0!==e.oob_code&&(t.oobCode=e.oob_code),void 0!==e.binding_method&&(t.bindingMethod=e.binding_method),t}(await i.json())}async verify(e){if(!w(Wi,this))throw new Error("MFA verify requires a configuration provider (getConfiguration was not set)");const t=await w(Wi,this).call(this),n={mfa_token:e.mfaToken};e.audience&&(n.audience=e.audience),"otp"===e.factorType?n.otp=e.otp:"oob"===e.factorType?(n.oob_code=e.oobCode,e.bindingCode&&(n.binding_code=e.bindingCode)):"recovery-code"===e.factorType&&(n.recovery_code=e.recoveryCode);try{const o=await Dr(t,La[e.factorType],n),r=Ka.fromTokenEndpointResponse(o);return o.recovery_code&&(r.recoveryCode=o.recovery_code),r}catch(e){var o,r,i;if(e instanceof ja)throw e;const t=e;throw new ja(t.error_description||t.message||"Failed to verify MFA challenge",{error:null!==(o=t.error)&&void 0!==o?o:"mfa_verify_error",error_description:null!==(r=null!==(i=t.error_description)&&void 0!==i?i:t.message)&&void 0!==r?r:"Failed to verify MFA challenge"})}}}),Ma=class extends Error{constructor(e,t,n){super(t),k(this,"cause",void 0),k(this,"code",void 0),this.code=e,this.cause=n&&{error:n.error,error_description:n.error_description,message:n.message}}},Da=class extends Ma{constructor(e,t){super("passkey_register_error",e,t),this.name="PasskeyRegisterError"}},za=class extends Ma{constructor(e,t){super("passkey_challenge_error",e,t),this.name="PasskeyChallengeError"}},Ja=class extends Ma{constructor(e,t){super("passkey_get_token_error",e,t),this.name="PasskeyGetTokenError",this.cause=t&&{error:t.error,error_description:t.error_description,message:t.message,mfa_token:t.mfa_token,mfa_requirements:t.mfa_requirements}}},Ha="urn:okta:params:oauth:grant-type:webauthn",Za=(ji=new WeakMap,Ui=new WeakMap,Ki=new WeakMap,Li=new WeakMap,Ni=new WeakSet,class{constructor(e){var t;b(this,Ni),g(this,ji,void 0),g(this,Ui,void 0),g(this,Ki,void 0),g(this,Li,void 0),v(ji,this,"https://".concat(e.domain)),v(Ui,this,e.clientId),v(Ki,this,null!==(t=e.customFetch)&&void 0!==t?t:function(){return fetch(...arguments)}),v(Li,this,e.grantRequest)}async register(e){const t="".concat(w(ji,this),"/passkey/register"),n=S(S(S(S(S(S(S(S({},e.email&&{email:e.email}),e.name&&{name:e.name}),e.phoneNumber&&{phone_number:e.phoneNumber}),e.username&&{username:e.username}),e.givenName&&{given_name:e.givenName}),e.familyName&&{family_name:e.familyName}),e.nickname&&{nickname:e.nickname}),e.picture&&{picture:e.picture}),o={client_id:w(Ui,this),user_profile:n};e.realm&&(o.realm=e.realm),e.organization&&(o.organization=e.organization),e.userMetadata&&(o.user_metadata=e.userMetadata);const r=await w(Ki,this).call(this,t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(o)});if(!r.ok){const e=await f(Ni,this,Fa).call(this,r);throw new Da(e.error_description||"Failed to request signup challenge",e)}return{authSession:(i=await r.json()).auth_session,authnParamsPublicKey:S({},i.authn_params_public_key)};var i}async challenge(e){const t="".concat(w(ji,this),"/passkey/challenge"),n={client_id:w(Ui,this)};null!=e&&e.realm&&(n.realm=e.realm),null!=e&&e.organization&&(n.organization=e.organization);const o=await w(Ki,this).call(this,t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});if(!o.ok){const e=await f(Ni,this,Fa).call(this,o);throw new za(e.error_description||"Failed to request login challenge",e)}return{authSession:(r=await o.json()).auth_session,authnParamsPublicKey:S({},r.authn_params_public_key)};var r}async getTokenByPasskey(e){void 0!==e.organization&&Aa(e.organization);const t=new URLSearchParams({auth_session:e.authSession,authn_response:JSON.stringify(e.credential)});let n;e.realm&&t.append("realm",e.realm),e.scope&&t.append("scope",e.scope),e.audience&&t.append("audience",e.audience),e.organization&&t.append("organization",e.organization);try{n=await w(Li,this).call(this,Ha,t)}catch(e){const t=ua(e);throw new Ja(t.error_description||"Failed to exchange passkey credential for tokens.",t)}return e.organization&&Ra(n.claims,e.organization),n}});async function Fa(e){try{return await e.json()}catch(t){return{error:"unknown_error",error_description:"HTTP ".concat(e.status," ").concat(e.statusText)}}}var Va=class extends Error{constructor(e,t,n){super(t),k(this,"cause",void 0),k(this,"code",void 0),Object.setPrototypeOf(this,new.target.prototype),this.code=e,this.cause=n&&{error:n.error,error_description:n.error_description,message:n.message,mfa_token:n.mfa_token,mfa_requirements:n.mfa_requirements}}},Ga=class extends Va{constructor(e,t){super("passwordless_start_error",e,t),this.name="PasswordlessStartError"}},Xa=class extends Va{constructor(e,t){super("passwordless_verify_error",e,t),this.name="PasswordlessVerifyError"}},Ya=class extends Va{constructor(e,t){super("passwordless_db_get_token_error",e,t),this.name="PasswordlessDbGetTokenError"}},Ba=class extends Va{constructor(e,t,n,o){super("passwordless_challenge_error",e,n),k(this,"statusCode",void 0),k(this,"validationErrors",void 0),this.name="PasswordlessChallengeError",this.statusCode=t,this.validationErrors=o}};function qa(e){return/^\+[1-9]\d{1,14}$/.test(e)}async function Qa(e,t,n){if(e.useMtls)return{};if(e.clientAssertionSigningKey){var o;const r=null!==(o=e.clientAssertionSigningAlg)&&void 0!==o?o:"RS256",i=e.clientAssertionSigningKey instanceof CryptoKey?e.clientAssertionSigningKey:await nr(e.clientAssertionSigningKey,r);return{client_assertion:await new ri({}).setProtectedHeader({alg:r}).setIssuer(t).setSubject(t).setAudience("https://".concat(n,"/")).setJti(crypto.randomUUID()).setIssuedAt().setExpirationTime("".concat(120,"s")).sign(i),client_assertion_type:"urn:ietf:params:oauth:client-assertion-type:jwt-bearer"}}if(e.clientSecret)return{client_secret:e.clientSecret};throw new Ta}var $a=(Mi=new WeakMap,Di=new WeakMap,zi=new WeakMap,Ji=new WeakMap,Hi=new WeakMap,Zi=new WeakMap,Fi=new WeakSet,class{constructor(e){var t;b(this,Fi),g(this,Mi,void 0),g(this,Di,void 0),g(this,zi,void 0),g(this,Ji,void 0),g(this,Hi,void 0),g(this,Zi,void 0),v(Di,this,e.domain),v(Mi,this,"https://".concat(e.domain)),v(zi,this,e.clientId),v(Ji,this,null!==(t=e.customFetch)&&void 0!==t?t:function(){return fetch(...arguments)}),v(Hi,this,{clientSecret:e.clientSecret,clientAssertionSigningKey:e.clientAssertionSigningKey,clientAssertionSigningAlg:e.clientAssertionSigningAlg,useMtls:e.useMtls}),v(Zi,this,e.grantRequest)}async sendEmail(e){await f(Fi,this,es).call(this,function(e){var t;const n=null!==(t=e.send)&&void 0!==t?t:"code",o={email:e.email,connection:"email",send:n};return"link"===n&&e.authParams&&(o.authParams=e.authParams),o}(e),"Failed to send passwordless email",e.language)}async sendSms(e){if(!qa(e.phoneNumber))throw new Ga("Phone number must be in E.164 format (e.g. +14155550100).");await f(Fi,this,es).call(this,function(e){return{phone_number:e.phoneNumber,connection:"sms"}}(e),"Failed to send passwordless SMS",e.language)}async challengeWithEmail(e){const t=function(e){var t;return{email:e.email,connection:e.connection,allow_signup:null!==(t=e.allowSignup)&&void 0!==t&&t}}(e);return f(Fi,this,ts).call(this,t,"Failed to request email OTP challenge")}async challengeWithPhoneNumber(e){if(!qa(e.phoneNumber))throw new Ba("Phone number must be in E.164 format (e.g. +14155550100).",0,void 0,void 0);const t=function(e){var t;const n={phone_number:e.phoneNumber,connection:e.connection,allow_signup:null!==(t=e.allowSignup)&&void 0!==t&&t};return e.deliveryMethod&&(n.delivery_method=e.deliveryMethod),n}(e);return f(Fi,this,ts).call(this,t,"Failed to request phone OTP challenge")}async getTokenByPasswordlessDbConnection(e){const t=new URLSearchParams({auth_session:e.authSession,otp:e.otp});if(e.scope&&t.append("scope",e.scope),e.audience&&t.append("audience",e.audience),!w(Zi,this))throw new Ya("Missing grant request delegate.",ua(new Error("missing grantRequest")));try{return await w(Zi,this).call(this,"http://auth0.com/oauth/grant-type/passwordless/otp",t)}catch(e){throw new Ya("There was an error while trying to request a token.",ua(e))}}});async function es(e,t,n){var o;const r=await Qa(w(Hi,this),w(zi,this),w(Di,this)),i=S(S({client_id:w(zi,this)},e),r);let a,s;try{a=await w(Ji,this).call(this,"".concat(w(Mi,this),"/passwordless/start"),{method:"POST",headers:S({"Content-Type":"application/json"},n?{"x-request-language":n}:{}),body:JSON.stringify(i)})}catch(e){throw new Ga("".concat(t,": a network error occurred."))}if(!a.ok){if(204!==a.status)try{s=await a.json()}catch(e){s=void 0}throw new Ga((null===(o=s)||void 0===o?void 0:o.error_description)||t,s)}}async function ts(e,t){var n,o;const r=await Qa(w(Hi,this),w(zi,this),w(Di,this)),i=S(S({client_id:w(zi,this)},e),r);let a,s;try{a=await w(Ji,this).call(this,"".concat(w(Mi,this),"/otp/challenge"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(i)})}catch(e){throw new Ba("challenge error: a network error occurred.",0,void 0,void 0)}if(a.ok){let n;try{n=await a.json()}catch(e){throw new Ba("".concat(t,": could not parse the response body."),a.status,void 0,void 0)}return{authSession:n.auth_session}}try{s=await a.json()}catch(e){s=void 0}throw new Ba((null===(n=s)||void 0===n?void 0:n.error_description)||t,a.status,s,null===(o=s)||void 0===o?void 0:o.validation_errors)}var ns=class extends Error{constructor(e,t,n){super(t),k(this,"cause",void 0),k(this,"code",void 0),Object.setPrototypeOf(this,new.target.prototype),this.code=e,this.cause=n&&{error:n.error,error_description:n.error_description,message:n.message}}},os=class extends ns{constructor(e,t){super("signup_error",e,t),this.name="SignUpError"}},rs=class extends ns{constructor(e,t){super("change_password_error",e,t),this.name="ChangePasswordError"}};function is(e,t,n){for(const o of t)if(null===e[o]||void 0===e[o]||""===e[o])throw new n('Required parameter "'.concat(String(o),'" was null, undefined, or empty.'))}var as=(Vi=new WeakMap,Gi=new WeakMap,Xi=new WeakMap,Yi=new WeakSet,class{constructor(e){var t;b(this,Yi),g(this,Vi,void 0),g(this,Gi,void 0),g(this,Xi,void 0),v(Vi,this,"https://".concat(e.domain)),v(Gi,this,e.clientId),v(Xi,this,null!==(t=e.customFetch)&&void 0!==t?t:function(){return fetch(...arguments)})}async signUp(e){var t;is(e,["email","password","connection"],os);const n=S({client_id:null!==(t=e.clientId)&&void 0!==t?t:w(Gi,this)},function(e){const t={email:e.email,password:e.password,connection:e.connection};return void 0!==e.username&&(t.username=e.username),void 0!==e.givenName&&(t.given_name=e.givenName),void 0!==e.familyName&&(t.family_name=e.familyName),void 0!==e.name&&(t.name=e.name),void 0!==e.nickname&&(t.nickname=e.nickname),void 0!==e.picture&&(t.picture=e.picture),void 0!==e.userMetadata&&(t.user_metadata=e.userMetadata),t}(e)),o=await f(Yi,this,ss).call(this,"/dbconnections/signup",n,os,"Failed to sign up");return function(e){var t,n;return{id:null!==(t=null!==(n=e._id)&&void 0!==n?n:e.user_id)&&void 0!==t?t:e.id,email:"string"==typeof e.email?e.email:"",emailVerified:Boolean(e.email_verified),username:e.username,givenName:e.given_name,familyName:e.family_name,name:e.name,nickname:e.nickname,picture:e.picture,userMetadata:e.user_metadata}}(await o.json())}async changePassword(e){var t;if(is(e,["connection"],rs),!e.email&&!e.username)throw new rs('Either "email" or "username" is required.');const n=S({client_id:null!==(t=e.clientId)&&void 0!==t?t:w(Gi,this)},function(e){const t={connection:e.connection};return void 0!==e.email&&(t.email=e.email),void 0!==e.username&&(t.username=e.username),void 0!==e.organization&&(t.organization=e.organization),t}(e));return(await f(Yi,this,ss).call(this,"/dbconnections/change_password",n,rs,"Failed to request a password change")).text()}});async function ss(e,t,n,o){let r;try{r=await w(Xi,this).call(this,"".concat(w(Vi,this)).concat(e),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)})}catch(e){throw new n("".concat(o,": a network error occurred."))}if(r.ok)return r;const i=await async function(e){let t;try{t=await e.json()}catch(e){return}return"string"==typeof t.error?t:"string"==typeof t.code?{error:t.code,error_description:"string"==typeof t.description?t.description:""}:void 0}(r);throw new n((null==i?void 0:i.error_description)||o,i)}var cs=(Bi=new WeakMap,qi=new WeakMap,Qi=new WeakMap,class{constructor(e,t){g(this,Bi,new Map),g(this,qi,void 0),g(this,Qi,void 0),v(Qi,this,Math.max(1,Math.floor(e))),v(qi,this,Math.max(0,Math.floor(t)))}get(e){const t=w(Bi,this).get(e);if(t){if(!(Date.now()>=t.expiresAt))return w(Bi,this).delete(e),w(Bi,this).set(e,t),t.value;w(Bi,this).delete(e)}}set(e,t){for(w(Bi,this).has(e)&&w(Bi,this).delete(e),w(Bi,this).set(e,{value:t,expiresAt:Date.now()+w(qi,this)});w(Bi,this).size>w(Qi,this);){const e=w(Bi,this).keys().next().value;if(void 0===e)break;w(Bi,this).delete(e)}}}),us=new Map;function ls(e){return{ttlMs:1e3*("number"==typeof(null==e?void 0:e.ttl)?e.ttl:600),maxEntries:"number"==typeof(null==e?void 0:e.maxEntries)&&e.maxEntries>0?e.maxEntries:100}}var hs=class{static createDiscoveryCache(e){const t=(n=e.maxEntries,o=e.ttlMs,"".concat(n,":").concat(o));var n,o;let r=(i=t,us.get(i));var i;return r||(r=new cs(e.maxEntries,e.ttlMs),us.set(t,r)),r}static createJwksCache(){return{}}},ds="openid profile email offline_access",ps=Object.freeze(new Set(["grant_type","client_id","client_secret","client_assertion","client_assertion_type","subject_token","subject_token_type","requested_token_type","actor_token","actor_token_type","audience","aud","resource","resources","resource_indicator","scope","connection","login_hint","organization","assertion"]));function fs(e){if(null==e)throw new wa("subject_token is required");if("string"!=typeof e)throw new wa("subject_token must be a string");if(0===e.trim().length)throw new wa("subject_token cannot be blank or whitespace");if(e!==e.trim())throw new wa("subject_token must not include leading or trailing whitespace");if(/^bearer\s+/i.test(e))throw new wa("subject_token must not include the 'Bearer ' prefix")}function ms(e,t){if(t)for(const o of Object.entries(t)){var n=E(o,2);const t=n[0],r=n[1];if(!ps.has(t))if(Array.isArray(r)){if(r.length>20)throw new wa("Parameter '".concat(t,"' exceeds maximum array size of ").concat(20));r.forEach(n=>{e.append(t,n)})}else e.append(t,r)}}var ys,ws,gs="urn:ietf:params:oauth:token-type:access_token",vs=($i=new WeakMap,ea=new WeakMap,ta=new WeakMap,na=new WeakMap,oa=new WeakMap,ra=new WeakMap,ia=new WeakMap,aa=new WeakMap,sa=new WeakMap,ca=new WeakSet,class{constructor(e){var t,n,o,r;if(b(this,ca),g(this,$i,void 0),g(this,ea,void 0),g(this,ta,void 0),g(this,na,void 0),g(this,oa,void 0),g(this,ra,void 0),g(this,ia,void 0),g(this,aa,void 0),g(this,sa,void 0),k(this,"mfa",void 0),k(this,"passkey",void 0),k(this,"passwordless",void 0),k(this,"database",void 0),v(na,this,e),e.useMtls&&!e.customFetch)throw new la("mtls_without_custom_fetch_not_supported","Using mTLS without a custom fetch implementation is not supported");v(oa,this,function(e,t){if(!1===t.enabled)return e;const n={name:t.name,version:t.version},o=btoa(JSON.stringify(n));return async(t,n)=>{const r=t instanceof Request?new Headers(t.headers):new Headers;return null!=n&&n.headers&&new Headers(n.headers).forEach((e,t)=>{r.set(t,e)}),r.set("Auth0-Client",o),e(t,S(S({},n),{},{headers:r}))}}(null!==(t=e.customFetch)&&void 0!==t?t:function(){return fetch(...arguments)},!1===(null==(n=e.telemetry)?void 0:n.enabled)?n:{enabled:!0,name:null!==(o=null==n?void 0:n.name)&&void 0!==o?o:"@auth0/auth0-auth-js",version:null!==(r=null==n?void 0:n.version)&&void 0!==r?r:"1.12.0"}));const i=ls(e.discoveryCache);v(ia,this,hs.createDiscoveryCache(i)),v(aa,this,new Map),v(sa,this,hs.createJwksCache()),this.mfa=new Na({domain:w(na,this).domain,clientId:w(na,this).clientId,clientSecret:w(na,this).clientSecret,customFetch:w(oa,this),getConfiguration:async()=>(await f(ca,this,_s).call(this)).configuration}),this.passkey=new Za({domain:w(na,this).domain,clientId:w(na,this).clientId,customFetch:w(oa,this),grantRequest:async(e,t)=>{const n=(await f(ca,this,_s).call(this)).serverMetadata,o=await f(ca,this,ks).call(this,n);o[mr]=function(e,t){return(n,o)=>{const r=null==o?void 0:o.body;if(t!==Ha||!(r instanceof URLSearchParams))return e(n,o);const i={};for(const e of r){var a=E(e,2);const t=a[0],n=a[1];i[t]="authn_response"===t?JSON.parse(n):n}const s=new Headers(null==o?void 0:o.headers);return s.set("Content-Type","application/json"),e(n,S(S({},o),{},{headers:s,body:JSON.stringify(i)}))}}(w(oa,this),e);const r=await Dr(o,e,t);return Ka.fromTokenEndpointResponse(r)}}),this.passwordless=new $a({domain:w(na,this).domain,clientId:w(na,this).clientId,customFetch:w(oa,this),clientSecret:w(na,this).clientSecret,clientAssertionSigningKey:w(na,this).clientAssertionSigningKey,clientAssertionSigningAlg:w(na,this).clientAssertionSigningAlg,useMtls:w(na,this).useMtls,grantRequest:async(e,t)=>{const n=(await f(ca,this,_s).call(this)).configuration,o=await Dr(n,e,t);return Ka.fromTokenEndpointResponse(o)}}),this.database=new as({domain:w(na,this).domain,clientId:w(na,this).clientId,customFetch:w(oa,this)})}async getServerMetadata(){return(await f(ca,this,_s).call(this)).serverMetadata}async buildAuthorizationUrl(e){const t=(await f(ca,this,_s).call(this)).serverMetadata;if(null!=e&&e.pushedAuthorizationRequests&&!t.pushed_authorization_request_endpoint)throw new la("par_not_supported_error","The Auth0 tenant does not have pushed authorization requests enabled. Learn how to enable it here: https://auth0.com/docs/get-started/applications/configure-par");try{return await f(ca,this,As).call(this,e)}catch(e){throw new ka(e)}}async buildLinkUserUrl(e){try{const t=await f(ca,this,As).call(this,{authorizationParams:S(S({},e.authorizationParams),{},{requested_connection:e.connection,requested_connection_scope:e.connectionScope,scope:"openid link_account offline_access",id_token_hint:e.idToken})});return{linkUserUrl:t.authorizationUrl,codeVerifier:t.codeVerifier}}catch(e){throw new _a(e)}}async buildUnlinkUserUrl(e){try{const t=await f(ca,this,As).call(this,{authorizationParams:S(S({},e.authorizationParams),{},{requested_connection:e.connection,scope:"openid unlink_account",id_token_hint:e.idToken})});return{unlinkUserUrl:t.authorizationUrl,codeVerifier:t.codeVerifier}}catch(e){throw new Sa(e)}}async backchannelAuthentication(e){const t=await f(ca,this,_s).call(this),n=t.configuration,o=t.serverMetadata,r=Pa(S(S({},w(na,this).authorizationParams),null==e?void 0:e.authorizationParams)),i=new URLSearchParams(S(S({scope:ds},r),{},{client_id:w(na,this).clientId,binding_message:e.bindingMessage,login_hint:JSON.stringify({format:"iss_sub",iss:o.issuer,sub:e.loginHint.sub})}));e.requestedExpiry&&i.append("requested_expiry",e.requestedExpiry.toString()),e.authorizationDetails&&i.append("authorization_details",JSON.stringify(e.authorizationDetails));try{const e=await Rr(n,i),t=await Cr(n,e);return Ka.fromTokenEndpointResponse(t)}catch(e){throw new ba(e)}}async initiateBackchannelAuthentication(e){const t=await f(ca,this,_s).call(this),n=t.configuration,o=t.serverMetadata,r=Pa(S(S({},w(na,this).authorizationParams),null==e?void 0:e.authorizationParams)),i=new URLSearchParams(S(S({scope:ds},r),{},{client_id:w(na,this).clientId,binding_message:e.bindingMessage,login_hint:JSON.stringify({format:"iss_sub",iss:o.issuer,sub:e.loginHint.sub})}));e.requestedExpiry&&i.append("requested_expiry",e.requestedExpiry.toString()),e.authorizationDetails&&i.append("authorization_details",JSON.stringify(e.authorizationDetails));try{const e=await Rr(n,i);return{authReqId:e.auth_req_id,expiresIn:e.expires_in,interval:e.interval}}catch(e){throw new ba(e)}}async backchannelAuthenticationGrant(e){let t=e.authReqId;const n=(await f(ca,this,_s).call(this)).configuration,o=new URLSearchParams({auth_req_id:t});try{const e=await Dr(n,"urn:openid:params:grant-type:ciba",o);return Ka.fromTokenEndpointResponse(e)}catch(e){throw new ba(e)}}async getTokenForConnection(e){var t;if(e.refreshToken&&e.accessToken)throw new ya("Either a refresh or access token should be specified, but not both.");const n=null!==(t=e.accessToken)&&void 0!==t?t:e.refreshToken;if(!n)throw new ya("Either a refresh or access token must be specified.");try{return await this.exchangeToken({connection:e.connection,subjectToken:n,subjectTokenType:e.accessToken?gs:"urn:ietf:params:oauth:token-type:refresh_token",loginHint:e.loginHint})}catch(e){if(e instanceof wa)throw new ya(e.message,e.cause);throw e}}async exchangeToken(e){return"connection"in e?f(ca,this,Ss).call(this,e):f(ca,this,Ts).call(this,e)}async getTokenByCode(e,t){const n=(await f(ca,this,_s).call(this)).configuration;let o;void 0!==t.organization&&Aa(t.organization);try{const r=await xr(n,e,{pkceCodeVerifier:t.codeVerifier});o=Ka.fromTokenEndpointResponse(r)}catch(e){throw new da("There was an error while trying to request a token.",ua(e))}return t.organization&&Ra(o.claims,t.organization),o}async getTokenByMagicLinkCode(e,t){const n=(await f(ca,this,_s).call(this)).configuration;try{const o=await xr(n,e,{expectedState:null==t?void 0:t.expectedState});return Ka.fromTokenEndpointResponse(o)}catch(e){const t=e instanceof Error&&e.message?e.message:"There was an error while trying to request a token.";throw new da(t,e)}}async getTokenByRefreshToken(e){const t=(await f(ca,this,_s).call(this)).configuration,n=new URLSearchParams;e.audience&&n.append("audience",e.audience),e.scope&&n.append("scope",e.scope);try{const o=await Or(t,e.refreshToken,n);return Ka.fromTokenEndpointResponse(o)}catch(e){throw new fa("The access token has expired and there was an error while trying to refresh it.",ua(e))}}async revokeToken(e){const t=(await f(ca,this,_s).call(this)).configuration,n={};e.tokenTypeHint&&(n.token_type_hint=e.tokenTypeHint);try{await async function(e,t,n){Kr(e);const o=hr(e),r=o.as,i=o.c,a=o.auth,s=o.fetch,c=o.tlsOnly,u=o.timeout;return async function(e,t,n,o,r){tn(e),nn(t),Xt(o,'"token"');const i=un(e,"revocation_endpoint",t.use_mtls_endpoint_aliases,!0!==(null==r?void 0:r[Rt])),a=new URLSearchParams(null==r?void 0:r.additionalParameters);a.set("token",o);const s=Zt(null==r?void 0:r.headers);return s.delete("accept"),Sn(e,t,n,i,a,s,r)}(r,i,a,t,{[xt]:s,[Rt]:!c,additionalParameters:new URLSearchParams(n),headers:new Headers(ur),signal:Lr(u)}).then(Qn).catch(kr)}(t,e.token,n)}catch(e){throw new ga("An error occurred while trying to revoke the token.",ua(e))}}async getTokenByPassword(e){const t=(await f(ca,this,_s).call(this)).configuration,n=new URLSearchParams({username:e.username,password:e.password});e.audience&&n.append("audience",e.audience),e.scope&&n.append("scope",e.scope),e.realm&&n.append("realm",e.realm);let o=t;if(e.auth0ForwardedFor){const n=await f(ca,this,Ps).call(this);o=new Tr(t.serverMetadata(),w(na,this).clientId,w(na,this).clientSecret,n),o[mr]=(t,n)=>w(oa,this).call(this,t,S(S({},n),{},{headers:S(S({},n.headers),{},{"auth0-forwarded-for":e.auth0ForwardedFor})}))}try{const e=await Dr(o,"password",n);return Ka.fromTokenEndpointResponse(e)}catch(e){throw new ma("There was an error while trying to request a token.",ua(e))}}async getTokenByPasswordlessEmail(e){const t=new URLSearchParams({username:e.email,otp:e.code,realm:"email"});return e.audience&&t.append("audience",e.audience),e.scope&&t.append("scope",e.scope),f(ca,this,Es).call(this,t)}async getTokenByPasswordlessSms(e){if(!qa(e.phoneNumber))throw new Xa("Phone number must be in E.164 format (e.g. +14155550100).");const t=new URLSearchParams({username:e.phoneNumber,otp:e.code,realm:"sms"});return e.audience&&t.append("audience",e.audience),e.scope&&t.append("scope",e.scope),f(ca,this,Es).call(this,t)}async getTokenByClientCredentials(e){const t=(await f(ca,this,_s).call(this)).configuration;try{const n=new URLSearchParams({audience:e.audience});e.organization&&n.append("organization",e.organization);const o=await Wr(t,n);return Ka.fromTokenEndpointResponse(o)}catch(e){throw new pa("There was an error while trying to request a token.",ua(e))}}async buildLogoutUrl(e){const t=await f(ca,this,_s).call(this),n=t.configuration;if(!t.serverMetadata.end_session_endpoint){const t=new URL("https://".concat(w(na,this).domain,"/v2/logout"));return t.searchParams.set("returnTo",e.returnTo),t.searchParams.set("client_id",w(na,this).clientId),t}return function(e,t){Kr(e);const n=hr(e),o=n.as,r=n.c,i=un(o,"end_session_endpoint",!1,n.tlsOnly);(t=new URLSearchParams(t)).has("client_id")||t.set("client_id",r.client_id);for(const e of t.entries()){var a=E(e,2);const t=a[0],n=a[1];i.searchParams.append(t,n)}return i}(n,{post_logout_redirect_uri:e.returnTo})}async verifyLogoutToken(e){const t=(await f(ca,this,_s).call(this)).serverMetadata,n=ls(w(na,this).discoveryCache),o=t.jwks_uri;w(ra,this)||v(ra,this,function(e,t){const n=new Pi(e,t),o=async(e,t)=>n.getKey(e,t);return Object.defineProperties(o,{coolingDown:{get:()=>n.coolingDown(),enumerable:!0,configurable:!1},fresh:{get:()=>n.fresh(),enumerable:!0,configurable:!1},reload:{value:()=>n.reload(),enumerable:!0,configurable:!1,writable:!1},reloading:{get:()=>n.pendingFetch(),enumerable:!0,configurable:!1},jwks:{value:()=>n.jwks(),enumerable:!0,configurable:!1,writable:!1}}),o}(new URL(o),{cacheMaxAge:n.ttlMs,[fi]:w(oa,this),[mi]:w(sa,this)}));const r=(await Yr(e.logoutToken,w(ra,this),{issuer:t.issuer,audience:w(na,this).clientId,algorithms:["RS256"],requiredClaims:["iat"]})).payload;if(!("sid"in r)&&!("sub"in r))throw new va('either "sid" or "sub" (or both) claims must be present');if("sid"in r&&"string"!=typeof r.sid)throw new va('"sid" claim must be a string');if("sub"in r&&"string"!=typeof r.sub)throw new va('"sub" claim must be a string');if("nonce"in r)throw new va('"nonce" claim is prohibited');if(!("events"in r))throw new va('"events" claim is missing');if("object"!=typeof r.events||null===r.events)throw new va('"events" claim must be an object');if(!("http://schemas.openid.net/event/backchannel-logout"in r.events))throw new va('"http://schemas.openid.net/event/backchannel-logout" member is missing in the "events" claim');if("object"!=typeof r.events["http://schemas.openid.net/event/backchannel-logout"])throw new va('"http://schemas.openid.net/event/backchannel-logout" member in the "events" claim must be an object');return{sid:r.sid,sub:r.sub}}});function bs(){const e=w(na,this).domain.toLowerCase();return"".concat(e,"|mtls:").concat(w(na,this).useMtls?"1":"0")}async function ks(e){const t=await f(ca,this,Ps).call(this),n=new Tr(e,w(na,this).clientId,w(na,this).clientSecret,t);return n[mr]=w(oa,this),n}async function _s(){if(w($i,this)&&w(ea,this))return{configuration:w($i,this),serverMetadata:w(ea,this)};const e=f(ca,this,bs).call(this),t=w(ia,this).get(e);if(t)return v(ea,this,t.serverMetadata),v($i,this,await f(ca,this,ks).call(this,t.serverMetadata)),{configuration:w($i,this),serverMetadata:w(ea,this)};const n=w(aa,this).get(e);if(n){const e=await n;return v(ea,this,e.serverMetadata),v($i,this,await f(ca,this,ks).call(this,e.serverMetadata)),{configuration:w($i,this),serverMetadata:w(ea,this)}}const o=(async()=>{const t=await f(ca,this,Ps).call(this),n=await _r(new URL("https://".concat(w(na,this).domain)),w(na,this).clientId,{use_mtls_endpoint_aliases:w(na,this).useMtls},t,{[mr]:w(oa,this)}),o=n.serverMetadata();return w(ia,this).set(e,{serverMetadata:o}),{configuration:n,serverMetadata:o}})(),r=o.then(e=>({serverMetadata:e.serverMetadata}));r.catch(()=>{}),w(aa,this).set(e,r);try{const e=await o,t=e.configuration,n=e.serverMetadata;v($i,this,t),v(ea,this,n),w($i,this)[mr]=w(oa,this)}finally{w(aa,this).delete(e)}return{configuration:w($i,this),serverMetadata:w(ea,this)}}async function Ss(e){var t,n;const o=(await f(ca,this,_s).call(this)).configuration;if("audience"in e||"resource"in e)throw new wa("audience and resource parameters are not supported for Token Vault exchanges");fs(e.subjectToken);const r=new URLSearchParams({connection:e.connection,subject_token:e.subjectToken,subject_token_type:null!==(t=e.subjectTokenType)&&void 0!==t?t:gs,requested_token_type:null!==(n=e.requestedTokenType)&&void 0!==n?n:"http://auth0.com/oauth/token-type/federated-connection-access-token"});e.loginHint&&r.append("login_hint",e.loginHint),e.scope&&r.append("scope",e.scope),ms(r,e.extra);try{const e=await Dr(o,"urn:auth0:params:oauth:grant-type:token-exchange:federated-connection-access-token",r);return Ka.fromTokenEndpointResponse(e)}catch(t){throw new wa("Failed to exchange token for connection '".concat(e.connection,"'."),ua(t))}}async function Ts(e){const t=(await f(ca,this,_s).call(this)).configuration;if(fs(e.subjectToken),void 0!==e.organization&&Aa(e.organization),void 0!==e.actorToken&&void 0===e.actorTokenType)throw new wa("actorTokenType is required when actorToken is provided");const n=new URLSearchParams({subject_token_type:e.subjectTokenType,subject_token:e.subjectToken});let o,r;e.audience&&n.append("audience",e.audience),e.scope&&n.append("scope",e.scope),e.requestedTokenType&&n.append("requested_token_type",e.requestedTokenType),e.organization&&n.append("organization",e.organization),e.actorToken&&n.append("actor_token",e.actorToken),e.actorTokenType&&n.append("actor_token_type",e.actorTokenType),ms(n,e.extra);try{r=await Dr(t,"urn:ietf:params:oauth:grant-type:token-exchange",n),o=Ka.fromTokenEndpointResponse(r)}catch(t){throw new wa("Failed to exchange token of type '".concat(e.subjectTokenType,"'").concat(e.audience?" for audience '".concat(e.audience,"'"):"","."),ua(t))}var i;if(e.organization&&Ra(o.claims,e.organization),e.actorToken)if(null!==(i=o.claims)&&void 0!==i&&i.act)o.act=o.claims.act;else try{o.act=function(e){if("string"!=typeof e)throw new Ro("JWTs must use Compact JWS serialization, JWT must be a string");const t=e.split("."),n=t[1],o=t.length;if(5===o)throw new Ro("Only JWTs using Compact JWS serialization can be decoded");if(3!==o)throw new Ro("Invalid JWT");if(!n)throw new Ro("JWTs must contain a payload");let r,i;try{r=mo(n)}catch(e){throw new Ro("Failed to base64url decode the payload")}try{i=JSON.parse(lo.decode(r))}catch(e){throw new Ro("Failed to parse the decoded payload as JSON")}if(!Mo(i))throw new Ro("Invalid JWT Claims Set");return i}(r.access_token).act}catch(e){}return o}async function Es(e){const t=(await f(ca,this,_s).call(this)).configuration;try{const n=await Dr(t,"http://auth0.com/oauth/grant-type/passwordless/otp",e);return Ka.fromTokenEndpointResponse(n)}catch(e){throw new Xa("There was an error while trying to request a token.",ua(e))}}async function Ps(){return w(ta,this)||v(ta,this,(async()=>{if(!w(na,this).clientSecret&&!w(na,this).clientAssertionSigningKey&&!w(na,this).useMtls)throw new Ta;if(w(na,this).useMtls)return(e,t,n,o)=>{n.set("client_id",t.client_id)};let e=w(na,this).clientAssertionSigningKey;return!e||e instanceof CryptoKey||(e=await nr(e,w(na,this).clientAssertionSigningAlg||"RS256")),e?function(e){return rn(e,void 0)}(e):fr(w(na,this).clientSecret)})().catch(e=>{throw v(ta,this,void 0),e})),w(ta,this)}async function As(e){const t=(await f(ca,this,_s).call(this)).configuration,n=Bt(),o=await function(e){return async function(e){return Xt(e,"codeVerifier"),Mt(await crypto.subtle.digest("SHA-256",Kt(e)))}(e)}(n),r=Pa(S(S({},w(na,this).authorizationParams),null==e?void 0:e.authorizationParams)),i=new URLSearchParams(S(S({scope:ds},r),{},{client_id:w(na,this).clientId,code_challenge:o,code_challenge_method:"S256"}));return{authorizationUrl:null!=e&&e.pushedAuthorizationRequests?await Ur(t,i):await jr(t,i),codeVerifier:n}}class Rs extends j{constructor(e,t){super(e,t),Object.setPrototypeOf(this,Rs.prototype)}static fromPayload(e){let t=e.error,n=e.error_description;return new Rs(t,n)}}class Cs extends Rs{constructor(e,t){super(e,t),Object.setPrototypeOf(this,Cs.prototype)}}class Is extends Rs{constructor(e,t){super(e,t),Object.setPrototypeOf(this,Is.prototype)}}class xs extends Rs{constructor(e,t){super(e,t),Object.setPrototypeOf(this,xs.prototype)}}class Os extends Rs{constructor(e,t){super(e,t),Object.setPrototypeOf(this,Os.prototype)}}class Ws extends Rs{constructor(e,t){super(e,t),Object.setPrototypeOf(this,Ws.prototype)}}class js{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:6e5;this.contexts=new Map,this.ttlMs=e}set(e,t){this.cleanup(),this.contexts.set(e,Object.assign(Object.assign({},t),{createdAt:Date.now()}))}get(e){const t=this.contexts.get(e);if(t){if(!(Date.now()-t.createdAt>this.ttlMs))return t;this.contexts.delete(e)}}remove(e){this.contexts.delete(e)}cleanup(){const e=Date.now();for(const n of this.contexts){var t=E(n,2);const o=t[0];e-t[1].createdAt>this.ttlMs&&this.contexts.delete(o)}}get size(){return this.contexts.size}}class Us{constructor(e,t){this.authJsMfaClient=e,this.auth0Client=t,this.contextManager=new js}setMFAAuthDetails(e,t,n,o){this.contextManager.set(e,{scope:t,audience:n,mfaRequirements:o})}async getAuthenticators(e){var t,n,o;const r=this.contextManager.get(e);if(!r)throw new Cs("invalid_request","MFA context not found for this MFA token");const i=null===(n=null===(t=r.mfaRequirements)||void 0===t?void 0:t.challenge)||void 0===n?void 0:n.map(e=>e.type);try{const t=await this.authJsMfaClient.listAuthenticators({mfaToken:e});return i&&0!==i.length?t.filter(e=>!!e.type&&i.includes(e.type)):t}catch(e){if(e instanceof Ia)throw new Cs(null===(o=e.cause)||void 0===o?void 0:o.error,e.message);throw e}}async enroll(e){var t;const n=function(e){const t=bt[e.factorType];return Object.assign(Object.assign(Object.assign({mfaToken:e.mfaToken,authenticatorTypes:t.authenticatorTypes},t.oobChannels&&{oobChannels:t.oobChannels}),"phoneNumber"in e&&{phoneNumber:e.phoneNumber}),"email"in e&&{email:e.email})}(e);try{return await this.authJsMfaClient.enrollAuthenticator(n)}catch(e){if(e instanceof xa)throw new Is(null===(t=e.cause)||void 0===t?void 0:t.error,e.message);throw e}}async challenge(e){var t;try{const t={challengeType:e.challengeType,mfaToken:e.mfaToken};return e.authenticatorId&&(t.authenticatorId=e.authenticatorId),await this.authJsMfaClient.challengeAuthenticator(t)}catch(e){if(e instanceof Wa)throw new xs(null===(t=e.cause)||void 0===t?void 0:t.error,e.message);throw e}}async getEnrollmentFactors(e){const t=this.contextManager.get(e);if(!t||!t.mfaRequirements)throw new Ws("mfa_context_not_found","MFA context not found for this MFA token. Please retry the original request to get a new MFA token.");return t.mfaRequirements.enroll&&0!==t.mfaRequirements.enroll.length?t.mfaRequirements.enroll:[]}async verify(e){const t=this.contextManager.get(e.mfaToken);if(!t)throw new Os("mfa_context_not_found","MFA context not found for this MFA token. Please retry the original request to get a new MFA token.");const n=function(e){return"otp"in e&&e.otp?"http://auth0.com/oauth/grant-type/mfa-otp":"oobCode"in e&&e.oobCode?"http://auth0.com/oauth/grant-type/mfa-oob":"recoveryCode"in e&&e.recoveryCode?"http://auth0.com/oauth/grant-type/mfa-recovery-code":void 0}(e);if(!n)throw new Os("invalid_request","Unable to determine grant type. Provide one of: otp, oobCode, or recoveryCode.");const o=t.scope,r=t.audience;try{const t=await this.auth0Client._requestTokenForMfa({grant_type:n,mfaToken:e.mfaToken,scope:o,audience:r,otp:e.otp,oob_code:e.oobCode,binding_code:e.bindingCode,recovery_code:e.recoveryCode});return this.contextManager.remove(e.mfaToken),t}catch(e){if(e instanceof Os)throw new Os(e.error,e.error_description);throw e}}}class Ks extends Error{constructor(e,t,n){super(t),this.name="PasskeyError",this.code=e,this.cause=n,Object.setPrototypeOf(this,Ks.prototype)}}class Ls{constructor(e,t){ys.set(this,void 0),ws.set(this,void 0),h(this,ys,e,"f"),h(this,ws,t,"f")}async signup(e){if(!window.PublicKeyCredential)throw new Ks("passkey_not_supported","WebAuthn is not supported in this browser.");const t=e.scope,n=e.audience,o=u(e,["scope","audience"]),r=await l(this,ys,"f").register(o),i=Ds(r.authnParamsPublicKey),a=await navigator.credentials.create({publicKey:i});if(!a)throw new Ks("passkey_cancelled","Passkey creation was cancelled or no credential was returned.");const s=Js(a);return l(this,ws,"f")._requestTokenForPasskey({authSession:r.authSession,credential:s,realm:o.realm,organization:o.organization,scope:t,audience:n})}async login(e){if(!window.PublicKeyCredential)throw new Ks("passkey_not_supported","WebAuthn is not supported in this browser.");const t=e||{},n=t.scope,o=t.audience,r=u(t,["scope","audience"]),i=await l(this,ys,"f").challenge(Object.keys(r).length>0?r:void 0),a=zs(i.authnParamsPublicKey),s=await navigator.credentials.get({publicKey:a});if(!s)throw new Ks("passkey_cancelled","Passkey authentication was cancelled or no credential was returned.");const c=Hs(s);return l(this,ws,"f")._requestTokenForPasskey({authSession:i.authSession,credential:c,realm:r.realm,organization:r.organization,scope:n,audience:o})}async getSignupChallenge(e){if(!window.PublicKeyCredential)throw new Ks("passkey_not_supported","WebAuthn is not supported in this browser.");const t=await l(this,ys,"f").register(e);return{authSession:t.authSession,publicKey:Ds(t.authnParamsPublicKey)}}async getLoginChallenge(e){if(!window.PublicKeyCredential)throw new Ks("passkey_not_supported","WebAuthn is not supported in this browser.");const t=await l(this,ys,"f").challenge(e);return{authSession:t.authSession,publicKey:zs(t.authnParamsPublicKey)}}async getTokenWithPasskey(e){if(!window.PublicKeyCredential)throw new Ks("passkey_not_supported","WebAuthn is not supported in this browser.");const t=e.authSession,n=e.credential,o=e.realm,r=e.organization,i=e.scope,a=e.audience,s=n.response;let c;if(s instanceof AuthenticatorAttestationResponse)c=Js(n);else{if(!(s instanceof AuthenticatorAssertionResponse))throw new Ks("passkey_invalid_credential","The provided credential is not a valid attestation or assertion response.");c=Hs(n)}return l(this,ws,"f")._requestTokenForPasskey({authSession:t,credential:c,realm:o,organization:r,scope:i,audience:a})}}function Ns(e){const t=new Uint8Array(e),n=Array.from(t,e=>String.fromCharCode(e)).join("");return btoa(n).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function Ms(e){const t=e.replace(/-/g,"+").replace(/_/g,"/"),n=t+"=".repeat((4-t.length%4)%4),o=atob(n),r=new Uint8Array(o.length);for(let e=0;e<o.length;e++)r[e]=o.charCodeAt(e);return r.buffer}function Ds(e){return Object.assign(Object.assign({},e),{challenge:Ms(e.challenge),user:Object.assign(Object.assign({},e.user),{id:Ms(e.user.id)}),pubKeyCredParams:e.pubKeyCredParams,authenticatorSelection:e.authenticatorSelection})}function zs(e){return Object.assign(Object.assign({},e),{challenge:Ms(e.challenge)})}function Js(e){var t;const n=e.response;return{id:e.id,rawId:Ns(e.rawId),type:e.type,authenticatorAttachment:null!==(t=e.authenticatorAttachment)&&void 0!==t?t:void 0,response:{clientDataJSON:Ns(n.clientDataJSON),attestationObject:Ns(n.attestationObject)},clientExtensionResults:e.getClientExtensionResults()}}function Hs(e){var t;const n=e.response;return{id:e.id,rawId:Ns(e.rawId),type:e.type,authenticatorAttachment:null!==(t=e.authenticatorAttachment)&&void 0!==t?t:void 0,response:{clientDataJSON:Ns(n.clientDataJSON),authenticatorData:Ns(n.authenticatorData),signature:Ns(n.signature),userHandle:n.userHandle?Ns(n.userHandle):void 0},clientExtensionResults:e.getClientExtensionResults()}}ys=new WeakMap,ws=new WeakMap;class Zs{resolveOnlineAccess(e){if("online"!==e.refreshTokenMode)return!1;if(!0!==e.useRefreshTokens)throw new U('`refreshTokenMode: "online"` requires the refresh-token grant.',"Set `useRefreshTokens: true`.");if(!0!==e.useDpop)throw new U('`refreshTokenMode: "online"` requires DPoP, which is missing or disabled.',"Set `useDpop: true` (DPoP is mandatory for online access).");return!0}constructor(e){let t,n;if(this.userCache=(new Fe).enclosedCache,this.defaultOptions={authorizationParams:{scope:"openid profile email"},useRefreshTokensFallback:!1,useFormData:!0,refreshTokenMode:"offline"},this.onlineAccess=this.resolveOnlineAccess(e),this.options=Object.assign(Object.assign(Object.assign({},this.defaultOptions),e),{authorizationParams:Object.assign(Object.assign({},this.defaultOptions.authorizationParams),e.authorizationParams)}),"undefined"!=typeof window&&(()=>{if(!G())throw new Error("For security reasons, `window.crypto` is required to run `auth0-spa-js`.");if(void 0===G().subtle)throw new Error("\n auth0-spa-js must run on a secure origin. See https://github.com/auth0/auth0-spa-js/blob/main/FAQ.md#why-do-i-get-auth0-spa-js-must-run-on-a-secure-origin for more information.\n ")})(),this.lockManager=(ge||(ge=function(){return"undefined"!=typeof navigator&&"function"==typeof(null===(e=navigator.locks)||void 0===e?void 0:e.request)?new ye:new we;var e}()),ge),e.cache&&e.cacheLocation&&console.warn("Both `cache` and `cacheLocation` options have been specified in the Auth0Client configuration; ignoring `cacheLocation` and using `cache`."),e.cache)n=e.cache;else{if(t=e.cacheLocation||C,!ht(t))throw new Error('Invalid cache location "'.concat(t,'"'));n=ht(t)()}var o;this.httpTimeoutMs=e.httpTimeoutInSeconds?1e3*e.httpTimeoutInSeconds:R,this.cookieStorage=!1===e.legacySameSiteCookie?nt:rt,this.orgHintCookieName=(o=this.options.clientId,"auth0.".concat(o,".organization_hint")),this.isAuthenticatedCookieName=(e=>"auth0.".concat(e,".is.authenticated"))(this.options.clientId),this.sessionCheckExpiryDays=e.sessionCheckExpiryDays||1;const r=e.useCookiesForTransactions?this.cookieStorage:it;let i="";var a;this.onlineAccess?i=I:this.options.useRefreshTokens&&(i="offline_access"),this.scope=function(e,t){for(var n=arguments.length,o=new Array(n>2?n-2:0),r=2;r<n;r++)o[r-2]=arguments[r];if("object"!=typeof e)return{[W]:Me(t,e,...o)};let i={[W]:Me(t,...o)};return Object.keys(e).forEach(n=>{const r=e[n];i[n]=Me(t,r,...o)}),i}(this.options.authorizationParams.scope,"openid",i),this.transactionManager=new Ge(r,this.options.clientId,this.options.cookieDomain),this.nowProvider=this.options.nowProvider||O,this.cacheManager=new Ve(n,n.allKeys?void 0:new ct(n,this.options.clientId),this.nowProvider),this.dpop=this.options.useDpop?new mt(this.options.clientId):void 0,this.domainUrl=(a=this.options.domain,/^https?:\/\//.test(a)?a:"https://".concat(a)),this.tokenIssuer=((e,t)=>e?e.startsWith("https://")?e:"https://".concat(e,"/"):"".concat(t,"/"))(this.options.issuer,this.domainUrl);const s="".concat(this.domainUrl,"/me/"),c=this.createFetcher(Object.assign(Object.assign({},this.options.useDpop&&{dpopNonceId:"__auth0_my_account_api__"}),{getAccessToken:e=>{var t;return this.getTokenSilently({authorizationParams:{scope:null===(t=null==e?void 0:e.scope)||void 0===t?void 0:t.join(" "),audience:s},detailedResponse:!0})}}));this.myAccount=new gt(c,s),this.authJsClient=new vs({domain:this.options.domain,clientId:this.options.clientId}),this.mfa=new Us(this.authJsClient.mfa,this),this.passkey=new Ls(this.authJsClient.passkey,this),"undefined"!=typeof window&&window.Worker&&this.options.useRefreshTokens&&t===C&&(this.options.workerUrl?this.worker=new Worker(this.options.workerUrl):this.worker=new st,this.worker.postMessage({type:"init",allowedBaseUrl:this.domainUrl}))}getConfiguration(){return Object.freeze({domain:this.options.domain,clientId:this.options.clientId})}_url(e){const t=this.options.auth0Client||x,n=q(t,!0),o=encodeURIComponent(btoa(JSON.stringify(n)));return"".concat(this.domainUrl).concat(e,"&auth0Client=").concat(o)}_authorizeUrl(e){return this._url("/authorize?".concat(Q(e)))}async _verifyIdToken(e,t,n){const o=await this.nowProvider();return(e=>{if(!e.id_token)throw new Error("ID token is required but missing");const t=(e=>{const t=e.split("."),n=E(t,3),o=n[0],r=n[1],i=n[2];if(3!==t.length||!o||!r||!i)throw new Error("ID token could not be decoded");const a=JSON.parse(ee(r)),s={__raw:e},c={};return Object.keys(a).forEach(e=>{s[e]=a[e],Ye.includes(e)||(c[e]=a[e])}),{encoded:{header:o,payload:r,signature:i},header:JSON.parse(ee(o)),claims:s,user:c}})(e.id_token);if(!t.claims.iss)throw new Error("Issuer (iss) claim must be a string present in the ID token");if(t.claims.iss!==e.iss)throw new Error('Issuer (iss) claim mismatch in the ID token; expected "'.concat(e.iss,'", found "').concat(t.claims.iss,'"'));if(!t.user.sub)throw new Error("Subject (sub) claim must be a string present in the ID token");if("RS256"!==t.header.alg)throw new Error('Signature algorithm of "'.concat(t.header.alg,'" is not supported. Expected the ID token to be signed with "RS256".'));if(!t.claims.aud||"string"!=typeof t.claims.aud&&!Array.isArray(t.claims.aud))throw new Error("Audience (aud) claim must be a string or array of strings present in the ID token");if(Array.isArray(t.claims.aud)){if(!t.claims.aud.includes(e.aud))throw new Error('Audience (aud) claim mismatch in the ID token; expected "'.concat(e.aud,'" but was not one of "').concat(t.claims.aud.join(", "),'"'));if(t.claims.aud.length>1){if(!t.claims.azp)throw new Error("Authorized Party (azp) claim must be a string present in the ID token when Audience (aud) claim has multiple values");if(t.claims.azp!==e.aud)throw new Error('Authorized Party (azp) claim mismatch in the ID token; expected "'.concat(e.aud,'", found "').concat(t.claims.azp,'"'))}}else if(t.claims.aud!==e.aud)throw new Error('Audience (aud) claim mismatch in the ID token; expected "'.concat(e.aud,'" but found "').concat(t.claims.aud,'"'));if(e.nonce){if(!t.claims.nonce)throw new Error("Nonce (nonce) claim must be a string present in the ID token");if(t.claims.nonce!==e.nonce)throw new Error('Nonce (nonce) claim mismatch in the ID token; expected "'.concat(e.nonce,'", found "').concat(t.claims.nonce,'"'))}if(e.max_age&&!Xe(t.claims.auth_time))throw new Error("Authentication Time (auth_time) claim must be a number present in the ID token when Max Age (max_age) is specified");if(null==t.claims.exp||!Xe(t.claims.exp))throw new Error("Expiration Time (exp) claim must be a number present in the ID token");if(!Xe(t.claims.iat))throw new Error("Issued At (iat) claim must be a number present in the ID token");const n=e.leeway||60,o=new Date(e.now||Date.now()),r=new Date(0);if(r.setUTCSeconds(t.claims.exp+n),o>r)throw new Error("Expiration Time (exp) claim error in the ID token; current time (".concat(o,") is after expiration time (").concat(r,")"));if(null!=t.claims.nbf&&Xe(t.claims.nbf)){const e=new Date(0);if(e.setUTCSeconds(t.claims.nbf-n),o<e)throw new Error("Not Before time (nbf) claim in the ID token indicates that this token can't be used just yet. Current time (".concat(o,") is before ").concat(e))}if(null!=t.claims.auth_time&&Xe(t.claims.auth_time)){const r=new Date(0);if(r.setUTCSeconds(parseInt(t.claims.auth_time)+e.max_age+n),o>r)throw new Error("Authentication Time (auth_time) claim in the ID token indicates that too much time has passed since the last end-user authentication. Current time (".concat(o,") is after last auth at ").concat(r))}if(e.organization){const n=e.organization.trim();if(n.startsWith("org_")){const e=n;if(!t.claims.org_id)throw new Error("Organization ID (org_id) claim must be a string present in the ID token");if(e!==t.claims.org_id)throw new Error('Organization ID (org_id) claim mismatch in the ID token; expected "'.concat(e,'", found "').concat(t.claims.org_id,'"'))}else{const e=n.toLowerCase();if(!t.claims.org_name)throw new Error("Organization Name (org_name) claim must be a string present in the ID token");if(e!==t.claims.org_name)throw new Error('Organization Name (org_name) claim mismatch in the ID token; expected "'.concat(e,'", found "').concat(t.claims.org_name,'"'))}}return t})({iss:this.tokenIssuer,aud:this.options.clientId,id_token:e,nonce:t,organization:n,leeway:this.options.leeway,max_age:(r=this.options.authorizationParams.max_age,"string"!=typeof r?r:parseInt(r,10)||void 0),now:o});var r}_processOrgHint(e){e?this.cookieStorage.save(this.orgHintCookieName,e,{daysUntilExpire:this.sessionCheckExpiryDays,cookieDomain:this.options.cookieDomain}):this.cookieStorage.remove(this.orgHintCookieName,{cookieDomain:this.options.cookieDomain})}_extractSessionTransferToken(e){return new URLSearchParams(window.location.search).get(e)||void 0}_clearSessionTransferTokenFromUrl(e){try{const t=new URL(window.location.href);t.searchParams.has(e)&&(t.searchParams.delete(e),window.history.replaceState({},"",t.toString()))}catch(e){}}_applySessionTransferToken(e){const t=this.options.sessionTransferTokenQueryParamName;if(!t||e.session_transfer_token)return e;const n=this._extractSessionTransferToken(t);return n?(this._clearSessionTransferTokenFromUrl(t),Object.assign(Object.assign({},e),{session_transfer_token:n})):e}async _prepareAuthorizeUrl(e,t,n){var o;const r=Y(X()),i=Y(X()),a=X(),s=await $(a),c=te(s),u=await(null===(o=this.dpop)||void 0===o?void 0:o.calculateThumbprint()),l=((e,t,n,o,r,i,a,s,c)=>Object.assign(Object.assign(Object.assign({client_id:e.clientId},e.authorizationParams),n),{scope:De(t,n.scope,n.audience),response_type:"code",response_mode:s||"query",state:o,nonce:r,redirect_uri:a||e.authorizationParams.redirect_uri,code_challenge:i,code_challenge_method:"S256",dpop_jkt:c}))(this.options,this.scope,e,r,i,c,e.redirect_uri||this.options.authorizationParams.redirect_uri||n,null==t?void 0:t.response_mode,u),h=this._authorizeUrl(l);return{nonce:i,code_verifier:a,scope:l.scope,audience:l.audience||W,redirect_uri:l.redirect_uri,state:r,url:h}}async loginWithPopup(e,t){var n;if(e=e||{},!(t=t||{}).popup&&(t.popup=(()=>{const e=window.screenX+(window.innerWidth-400)/2,t=window.screenY+(window.innerHeight-600)/2;return window.open("","auth0:authorize:popup","left=".concat(e,",top=").concat(t,",width=").concat(400,",height=").concat(600,",resizable,scrollbars=yes,status=1"))})(),!t.popup))throw new z;const o=this._applySessionTransferToken(e.authorizationParams||{}),r=await this._prepareAuthorizeUrl(o,{response_mode:"web_message"},window.location.origin);t.popup.location.href=r.url;const i=await((e,t)=>new Promise((n,o)=>{let r;const i=setInterval(()=>{e.popup&&e.popup.closed&&(clearInterval(i),clearTimeout(a),window.removeEventListener("message",r,!1),o(new D(e.popup)))},1e3),a=setTimeout(()=>{clearInterval(i),o(new M(e.popup)),window.removeEventListener("message",r,!1)},1e3*(e.timeoutInSeconds||60));r=function(s){if(s.origin===t&&s.data&&"authorization_response"===s.data.type){if(clearTimeout(a),clearInterval(i),window.removeEventListener("message",r,!1),!1!==e.closePopup&&e.popup.close(),s.data.response.error)return o(j.fromPayload(s.data.response));n(s.data.response)}},window.addEventListener("message",r)}))(Object.assign(Object.assign({},t),{timeoutInSeconds:t.timeoutInSeconds||this.options.authorizeTimeoutInSeconds||60}),new URL(r.url).origin);if(r.state!==i.state)throw new j("state_mismatch","Invalid state");const a=(null===(n=e.authorizationParams)||void 0===n?void 0:n.organization)||this.options.authorizationParams.organization;await this._requestToken({audience:r.audience,scope:r.scope,code_verifier:r.code_verifier,grant_type:"authorization_code",code:i.code,redirect_uri:r.redirect_uri},{nonceIn:r.nonce,organization:a})}async getUser(){var e;if(await this._isSessionCeilingReached())return;const t=await this._getIdTokenFromCache();return null===(e=null==t?void 0:t.decodedToken)||void 0===e?void 0:e.user}async getIdTokenClaims(){var e;if(await this._isSessionCeilingReached())return;const t=await this._getIdTokenFromCache();return null===(e=null==t?void 0:t.decodedToken)||void 0===e?void 0:e.claims}async loginWithRedirect(){var t;const n=dt(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}),o=n.openUrl,r=n.fragment,i=n.appState,a=u(n,["openUrl","fragment","appState"]),s=(null===(t=a.authorizationParams)||void 0===t?void 0:t.organization)||this.options.authorizationParams.organization,c=this._applySessionTransferToken(a.authorizationParams||{}),l=await this._prepareAuthorizeUrl(c),h=l.url,d=u(l,["url"]);this.transactionManager.create(Object.assign(Object.assign(Object.assign({},d),{appState:i,response_type:e.ResponseType.Code}),s&&{organization:s}));const p=r?"".concat(h,"#").concat(r):h;o?await o(p):window.location.assign(p)}async handleRedirectCallback(){const t=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.location.href).split("?").slice(1);if(0===t.length)throw new Error("There are no query params available for parsing.");const n=this.transactionManager.get();if(!n)throw new j("missing_transaction","Invalid state");this.transactionManager.remove();const o=(e=>{e.indexOf("#")>-1&&(e=e.substring(0,e.indexOf("#")));const t=new URLSearchParams(e);return{state:t.get("state"),code:t.get("code")||void 0,connect_code:t.get("connect_code")||void 0,error:t.get("error")||void 0,error_description:t.get("error_description")||void 0}})(t.join(""));return n.response_type===e.ResponseType.ConnectCode?this._handleConnectAccountRedirectCallback(o,n):this._handleLoginRedirectCallback(o,n)}async _handleLoginRedirectCallback(t,n){const o=t.code,r=t.state,i=t.error,a=t.error_description;if(i)throw new K(i,a||i,r,n.appState);if(!n.code_verifier||n.state&&n.state!==r)throw new j("state_mismatch","Invalid state");const s=n.organization,c=n.nonce,u=n.redirect_uri;return await this._requestToken(Object.assign({audience:n.audience,scope:n.scope,code_verifier:n.code_verifier,grant_type:"authorization_code",code:o},u?{redirect_uri:u}:{}),{nonceIn:c,organization:s}),{appState:n.appState,response_type:e.ResponseType.Code}}async _handleConnectAccountRedirectCallback(t,n){const o=t.connect_code,r=t.state,i=t.error,a=t.error_description;if(i)throw new L(i,a||i,n.connection,r,n.appState);if(!o)throw new j("missing_connect_code","Missing connect code");if(!(n.code_verifier&&n.state&&n.auth_session&&n.redirect_uri&&n.state===r))throw new j("state_mismatch","Invalid state");const s=await this.myAccount.completeAccount({auth_session:n.auth_session,connect_code:o,redirect_uri:n.redirect_uri,code_verifier:n.code_verifier});return Object.assign(Object.assign({},s),{appState:n.appState,response_type:e.ResponseType.ConnectCode})}async checkSession(e){if(!this.cookieStorage.get(this.isAuthenticatedCookieName)){if(!this.cookieStorage.get(ut))return;this.cookieStorage.save(this.isAuthenticatedCookieName,!0,{daysUntilExpire:this.sessionCheckExpiryDays,cookieDomain:this.options.cookieDomain}),this.cookieStorage.remove(ut)}try{await this.getTokenSilently(e)}catch(e){}}async getTokenSilently(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};var t,n;const o=Object.assign(Object.assign({cacheMode:"on"},e),{authorizationParams:Object.assign(Object.assign(Object.assign({},this.options.authorizationParams),e.authorizationParams),{scope:De(this.scope,null===(t=e.authorizationParams)||void 0===t?void 0:t.scope,(null===(n=e.authorizationParams)||void 0===n?void 0:n.audience)||this.options.authorizationParams.audience)})}),r=await this._getTokenSilently(o);return e.detailedResponse?r:null==r?void 0:r.access_token}async _getTokenSilently(e){const t=e.cacheMode,n=u(e,["cacheMode"]);if(await this._isSessionCeilingReached())return;if("off"!==t){const e=await this._getEntryFromCache({scope:n.authorizationParams.scope,audience:n.authorizationParams.audience||W,clientId:this.options.clientId,cacheMode:t});if(e)return e}if("cache-only"===t)return;const o=(r=this.options.clientId,i=n.authorizationParams.audience||"default","".concat("auth0.lock.getTokenSilently",".").concat(r,".").concat(i));var r,i;try{return await this.lockManager.runWithLock(o,5e3,async()=>{if("off"!==t){const e=await this._getEntryFromCache({scope:n.authorizationParams.scope,audience:n.authorizationParams.audience||W,clientId:this.options.clientId});if(e)return e}const e=this.options.useRefreshTokens?await this._getTokenUsingRefreshToken(n):await this._getTokenFromIFrame(n),o=e.id_token,r=e.token_type,i=e.access_token,a=e.oauthTokenScope,s=e.expires_in;return Object.assign(Object.assign({id_token:o,token_type:r,access_token:i},a?{scope:a}:null),{expires_in:s})})}catch(e){if(this._isInteractiveError(e)&&"popup"===this.options.interactiveErrorHandler)return await this._handleInteractiveErrorWithPopup(n);throw e}}_isInteractiveError(e){return e instanceof J||e instanceof j&&this._isIframeMfaError(e)}_isIframeMfaError(e){return"login_required"===e.error&&"Multifactor authentication required"===e.error_description}async _handleInteractiveErrorWithPopup(e){try{await this.loginWithPopup({authorizationParams:e.authorizationParams});const t=await this._getEntryFromCache({scope:e.authorizationParams.scope,audience:e.authorizationParams.audience||W,clientId:this.options.clientId});if(!t)throw new j("interactive_handler_cache_miss","Token not found in cache after interactive authentication");return t}catch(e){throw e}}async getTokenWithPopup(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};var n,o;const r=Object.assign(Object.assign({},e),{authorizationParams:Object.assign(Object.assign(Object.assign({},this.options.authorizationParams),e.authorizationParams),{scope:De(this.scope,null===(n=e.authorizationParams)||void 0===n?void 0:n.scope,(null===(o=e.authorizationParams)||void 0===o?void 0:o.audience)||this.options.authorizationParams.audience)})});return t=Object.assign(Object.assign({},A),t),await this.loginWithPopup(r,t),(await this.cacheManager.get(new He({scope:r.authorizationParams.scope,audience:r.authorizationParams.audience||W,clientId:this.options.clientId}),void 0,this.options.useMrrt)).access_token}async isAuthenticated(){return!!await this.getUser()}_buildLogoutUrl(e){null!==e.clientId?e.clientId=e.clientId||this.options.clientId:delete e.clientId;const t=e.logoutParams||{},n=t.federated,o=u(t,["federated"]),r=n?"&federated":"";return this._url("/v2/logout?".concat(Q(Object.assign({clientId:e.clientId},o))))+r}async revokeRefreshToken(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!this.options.useRefreshTokens)return;const t=e.audience||this.options.authorizationParams.audience||W,n=await this.cacheManager.getRefreshTokensByAudience(t,this.options.clientId);await async function(e,t){let n=e.auth0Client,o=e.useFormData,r=e.refreshTokens,i=e.audience,a=e.client_id,s=e.onRefreshTokenRevoked;const c=e.timeout||R,u="refresh_token",l="".concat(e.baseUrl,"/oauth/revoke"),h={"Content-Type":o?"application/x-www-form-urlencoded":"application/json","Auth0-Client":btoa(JSON.stringify(q(n||x)))};if(t){const n={client_id:a,token_type_hint:u},r=o?Q(n):JSON.stringify(n);try{return await je({type:"revoke",timeout:c,fetchUrl:l,fetchOptions:{method:"POST",body:r,headers:h},useFormData:o,auth:{audience:null!=i?i:W}},t)}catch(e){throw new j("revoke_error",e.message)}}for(const t of r){const n={client_id:a,token_type_hint:u,token:t},r=o?Q(n):JSON.stringify(n),i=await Ue(l,{method:"POST",body:r,headers:h},c);if(!i.ok){let t,n;try{var d=JSON.parse(await i.text());t=d.error,n=d.error_description}catch(e){}throw new j(t||"revoke_error",n||"HTTP error ".concat(i.status))}await(null==s?void 0:s(t))}}({baseUrl:this.domainUrl,timeout:this.httpTimeoutMs,auth0Client:this.options.auth0Client,useFormData:this.options.useFormData,client_id:this.options.clientId,refreshTokens:n,audience:t,onRefreshTokenRevoked:e=>this.cacheManager.stripRefreshToken(e)},this.worker),this.onlineAccess&&await this._clearLocalSession()}async logout(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const t=dt(e),n=t.openUrl,o=u(t,["openUrl"]);await this._clearLocalSession(e.clientId);const r=this._buildLogoutUrl(o);n?await n(r):!1!==n&&window.location.assign(r)}async _getTokenFromIFrame(e){const t=(n=this.options.clientId,"".concat("auth0.lock.getTokenFromIFrame",".").concat(n));var n;try{return await this.lockManager.runWithLock(t,5e3,async()=>{const t=Object.assign(Object.assign({},e.authorizationParams),{prompt:"none"}),n=this.cookieStorage.get(this.orgHintCookieName);n&&!t.organization&&(t.organization=n);const o=await this._prepareAuthorizeUrl(t,{response_mode:"web_message"},window.location.origin),r=o.url,i=o.state,a=o.nonce,s=o.code_verifier,c=o.redirect_uri,u=o.scope,l=o.audience;if(window.crossOriginIsolated)throw new j("login_required","The application is running in a Cross-Origin Isolated context, silently retrieving a token without refresh token is not possible.");const h=e.timeoutInSeconds||this.options.authorizeTimeoutInSeconds;let d;try{d=new URL(this.domainUrl).origin}catch(e){d=this.domainUrl}const p=await function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:60;return new Promise((o,r)=>{const i=window.document.createElement("iframe");i.setAttribute("width","0"),i.setAttribute("height","0"),i.style.display="none";const a=()=>{window.document.body.contains(i)&&(window.document.body.removeChild(i),window.removeEventListener("message",s,!1))};let s;const c=setTimeout(()=>{r(new N),a()},1e3*n);s=function(e){if(e.origin!=t)return;if(!e.data||"authorization_response"!==e.data.type)return;const n=e.source;n&&n.close(),e.data.response.error?r(j.fromPayload(e.data.response)):o(e.data.response),clearTimeout(c),window.removeEventListener("message",s,!1),setTimeout(a,2e3)},window.addEventListener("message",s,!1),window.document.body.appendChild(i),i.setAttribute("src",e)})}(r,d,h);if(i!==p.state)throw new j("state_mismatch","Invalid state");const f=await this._requestToken(Object.assign(Object.assign({},e.authorizationParams),{code_verifier:s,code:p.code,grant_type:"authorization_code",redirect_uri:c,timeout:e.authorizationParams.timeout||this.httpTimeoutMs}),{nonceIn:a,organization:t.organization});return Object.assign(Object.assign({},f),{scope:u,oauthTokenScope:f.scope,audience:l})})}catch(e){throw"login_required"===e.error&&(e instanceof j&&this._isIframeMfaError(e)&&"popup"===this.options.interactiveErrorHandler||this.logout({openUrl:!1})),e}}async _getTokenUsingRefreshToken(e){const t=await this.cacheManager.get(new He({scope:e.authorizationParams.scope,audience:e.authorizationParams.audience||W,clientId:this.options.clientId}),void 0,this.options.useMrrt);if(!(t&&t.refresh_token||this.worker)){if(this.options.useRefreshTokensFallback)return await this._getTokenFromIFrame(e);throw new H(e.authorizationParams.audience||W,e.authorizationParams.scope)}const n=e.authorizationParams.redirect_uri||this.options.authorizationParams.redirect_uri||window.location.origin,o="number"==typeof e.timeoutInSeconds?1e3*e.timeoutInSeconds:null,r=((e,t,n,o)=>{var r;if(e&&n&&o){if(t.audience!==n)return t.scope;const e=o.split(" "),i=(null===(r=t.scope)||void 0===r?void 0:r.split(" "))||[],a=i.every(t=>e.includes(t));return e.length>=i.length&&a?o:t.scope}return t.scope})(this.options.useMrrt,e.authorizationParams,null==t?void 0:t.audience,null==t?void 0:t.scope);try{const u=await this._requestToken(Object.assign(Object.assign(Object.assign({},e.authorizationParams),{grant_type:"refresh_token",refresh_token:t&&t.refresh_token,redirect_uri:n}),o&&{timeout:o}),{scopesToRequest:r});if(!this.onlineAccess&&u.refresh_token&&(null==t?void 0:t.refresh_token)&&await this.cacheManager.updateEntry(t.refresh_token,u.refresh_token,this.options.clientId,this.options.useMrrt),this.options.useMrrt&&(i=null==t?void 0:t.audience,a=null==t?void 0:t.scope,s=e.authorizationParams.audience,c=e.authorizationParams.scope,i!==s||!((e,t)=>{const n=(null==t?void 0:t.split(" "))||[];return((null==e?void 0:e.split(" "))||[]).every(e=>n.includes(e))})(c,a))){const t=((e,t,n)=>{const o=(null==e?void 0:e.split(" "))||[],r=n?o.filter(e=>e!==I):o,i=(null==t?void 0:t.split(" "))||[];return r.filter(e=>-1==i.indexOf(e)).join(",")})(r,u.scope,this.onlineAccess);if(t){if(this.options.useRefreshTokensFallback)return await this._getTokenFromIFrame(e);throw await this.cacheManager.remove(this.options.clientId,e.authorizationParams.audience,e.authorizationParams.scope),new Z(e.authorizationParams.audience||"default",t)}}return Object.assign(Object.assign({},u),{scope:e.authorizationParams.scope,oauthTokenScope:u.scope,audience:e.authorizationParams.audience||W})}catch(t){if(t.message){if(t.message.includes("user is blocked"))throw await this.logout({openUrl:!1}),t;if((t.message.includes("Missing Refresh Token")||t.message.includes("invalid refresh token"))&&this.options.useRefreshTokensFallback)return await this._getTokenFromIFrame(e)}throw t}var i,a,s,c}async _saveEntryInCache(e){const t=e.decodedToken.claims,n=t.session_expiry,o=t.iat;if(void 0!==n){if("number"!=typeof n)throw new j("invalid_token","Invalid session_expiry: value must be a number.");if(n>=1e10)throw new j("invalid_token","Invalid session_expiry: value appears to be in milliseconds; expected a Unix timestamp in seconds.");if(void 0===o||n<=o)throw new j("invalid_token","Invalid session_expiry: session ceiling is before or at the token issue time.")}const r=e.id_token,i=e.decodedToken,a=u(e,["id_token","decodedToken"]);this.userCache.set(Je,{id_token:r,decodedToken:i}),await this.cacheManager.setIdToken(this.options.clientId,e.id_token,e.decodedToken),await this.cacheManager.set(a)}async _clearLocalSession(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.options.clientId;var t;null===e?await this.cacheManager.clear():await this.cacheManager.clear(e),this.cookieStorage.remove(this.orgHintCookieName,{cookieDomain:this.options.cookieDomain}),this.cookieStorage.remove(this.isAuthenticatedCookieName,{cookieDomain:this.options.cookieDomain}),this.userCache.remove(Je);try{await(null===(t=this.dpop)||void 0===t?void 0:t.clear())}catch(e){}if(this.worker)try{await je({type:"clear"},this.worker)}catch(e){}}async _isSessionCeilingReached(){var e,t;const n=this.userCache.get(Je),o=null!=n?n:await this.cacheManager.getIdToken(new He({clientId:this.options.clientId})),r=null===(t=null===(e=null==o?void 0:o.decodedToken)||void 0===e?void 0:e.claims)||void 0===t?void 0:t.session_expiry;if(void 0===r)return!1;const i=await this.nowProvider();return Math.floor(i/1e3)>=r-30&&(await this._clearLocalSession(),!0)}async _getIdTokenFromCache(){const e=this.options.authorizationParams.audience||W,t=this.scope[e],n=await this.cacheManager.getIdToken(new He({clientId:this.options.clientId,audience:e,scope:t})),o=this.userCache.get(Je);return n&&n.id_token===(null==o?void 0:o.id_token)?o:(this.userCache.set(Je,n),n)}async _getEntryFromCache(e){let t=e.scope,n=e.audience,o=e.clientId,r=e.cacheMode;const i=await this.cacheManager.get(new He({scope:t,audience:n,clientId:o}),60,this.options.useMrrt,r);if(i&&i.access_token){const e=i.token_type,t=i.access_token,n=i.oauthTokenScope,o=i.expires_in,r=await this._getIdTokenFromCache();return r&&Object.assign(Object.assign({id_token:r.id_token,token_type:e||"Bearer",access_token:t},n?{scope:n}:null),{expires_in:o})}}_storeMfaContext(e,t,n){e instanceof J&&this.mfa.setMFAAuthDetails(e.mfa_token,t,n,e.mfa_requirements)}async _requestToken(e,t){var n,o,r,i,a,s;const c=t||{},u=c.nonceIn,l=c.organization,h=c.scopesToRequest;try{const t=await Ne(Object.assign(Object.assign({baseUrl:this.domainUrl,client_id:this.options.clientId,auth0Client:this.options.auth0Client,useFormData:this.options.useFormData,timeout:this.httpTimeoutMs,useMrrt:this.options.useMrrt,dpop:this.dpop,preserveRefreshToken:this.onlineAccess},e),{scope:h||e.scope}),this.worker);let c=await this._verifyIdToken(t.id_token,u,l);if("authorization_code"===e.grant_type){const e=await this._getIdTokenFromCache();(null===(o=null===(n=null==e?void 0:e.decodedToken)||void 0===n?void 0:n.claims)||void 0===o?void 0:o.sub)&&e.decodedToken.claims.sub!==c.claims.sub&&(await this.cacheManager.clear(this.options.clientId),this.userCache.remove(Je))}if("authorization_code"!==e.grant_type){const e=await this._getIdTokenFromCache(),t=null===(i=null===(r=null==e?void 0:e.decodedToken)||void 0===r?void 0:r.claims)||void 0===i?void 0:i.session_expiry;void 0!==t&&(c=Object.assign(Object.assign({},c),{claims:Object.assign(Object.assign({},c.claims),{session_expiry:t})}))}return!t.refresh_token&&this.onlineAccess&&(t.refresh_token=null!==(a=e.refresh_token)&&void 0!==a?a:null===(s=await this.cacheManager.get(new He({scope:h||e.scope,audience:e.audience||W,clientId:this.options.clientId}),void 0,this.options.useMrrt))||void 0===s?void 0:s.refresh_token),await this._saveEntryInCache(Object.assign(Object.assign(Object.assign(Object.assign({},t),{decodedToken:c,scope:e.scope,audience:e.audience||W}),t.scope?{oauthTokenScope:t.scope}:null),{client_id:this.options.clientId})),this.cookieStorage.save(this.isAuthenticatedCookieName,!0,{daysUntilExpire:this.sessionCheckExpiryDays,cookieDomain:this.options.cookieDomain}),this._processOrgHint(l||c.claims.org_id),Object.assign(Object.assign({},t),{decodedToken:c})}catch(t){throw"authorization_code"!==e.grant_type&&this._storeMfaContext(t,h||e.scope,e.audience),t}}_buildTokenExchangeParams(e){return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},e),{grant_type:"urn:ietf:params:oauth:grant-type:token-exchange",subject_token:e.subject_token,subject_token_type:e.subject_token_type}),e.actor_token&&{actor_token:e.actor_token}),e.actor_token_type&&{actor_token_type:e.actor_token_type}),{scope:De(this.scope,e.scope,e.audience||this.options.authorizationParams.audience),audience:e.audience||this.options.authorizationParams.audience,organization:e.organization||this.options.authorizationParams.organization})}async loginWithCustomTokenExchange(e){return this._requestToken(this._buildTokenExchangeParams(e))}async customTokenExchange(e){const t=this._buildTokenExchangeParams(e);try{const n=await Ne(Object.assign(Object.assign({},t),{baseUrl:this.domainUrl,client_id:this.options.clientId,auth0Client:this.options.auth0Client,useFormData:this.options.useFormData,timeout:this.httpTimeoutMs,dpop:this.dpop}),this.worker,!0);return n.id_token&&await this._verifyIdToken(n.id_token,void 0,e.organization),n}catch(e){throw this._storeMfaContext(e,t.scope,t.audience),e}}async exchangeToken(e){return this.loginWithCustomTokenExchange(e)}_assertDpop(e){if(!e)throw new Error("`useDpop` option must be enabled before using DPoP.")}getDpopNonce(e){return this._assertDpop(this.dpop),this.dpop.getNonce(e)}setDpopNonce(e,t){return this._assertDpop(this.dpop),this.dpop.setNonce(e,t)}generateDpopProof(e){return this._assertDpop(this.dpop),this.dpop.generateProof(e)}createFetcher(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new wt(e,{isDpopEnabled:()=>!!this.options.useDpop,getAccessToken:e=>{var t;return this.getTokenSilently({authorizationParams:{scope:null===(t=null==e?void 0:e.scope)||void 0===t?void 0:t.join(" "),audience:null==e?void 0:e.audience},detailedResponse:!0})},getDpopNonce:()=>this.getDpopNonce(e.dpopNonceId),setDpopNonce:t=>this.setDpopNonce(t,e.dpopNonceId),generateDpopProof:e=>this.generateDpopProof(e)})}async connectAccountWithRedirect(t){const n=t.openUrl,o=t.appState,r=t.connection,i=t.scopes,a=t.authorization_params,s=t.redirectUri,c=void 0===s?this.options.authorizationParams.redirect_uri||window.location.origin:s;if(!r)throw new Error("connection is required");const u=Y(X()),l=X(),h=await $(l),d=te(h),p=await this.myAccount.connectAccount({connection:r,scopes:i,redirect_uri:c,state:u,code_challenge:d,code_challenge_method:"S256",authorization_params:a}),f=p.connect_uri,m=p.connect_params,y=p.auth_session;this.transactionManager.create({state:u,code_verifier:l,auth_session:y,redirect_uri:c,appState:o,connection:r,response_type:e.ResponseType.ConnectCode});const w=new URL(f);w.searchParams.set("ticket",m.ticket),n?await n(w.toString()):window.location.assign(w)}async _requestTokenForPasskey(e){const t=e.audience||this.options.authorizationParams.audience,n=e.organization||this.options.authorizationParams.organization;return this._requestToken(Object.assign(Object.assign(Object.assign({grant_type:"urn:okta:params:oauth:grant-type:webauthn",auth_session:e.authSession,authn_response:e.credential},e.realm&&{realm:e.realm}),n&&{organization:n}),{scope:De(this.scope,e.scope,t),audience:t}))}async _requestTokenForMfa(e,t){const n=e.mfaToken,o=u(e,["mfaToken"]);return this._requestToken(Object.assign(Object.assign({},o),{mfa_token:n}),t)}}var Fs={isAuthenticated:!1,isLoading:!0,error:void 0,user:void 0},Vs=function(){throw new Error("You forgot to wrap your component in <Auth0Provider>.")},Gs=i(i({},Fs),{buildAuthorizeUrl:Vs,buildLogoutUrl:Vs,getAccessTokenSilently:Vs,getAccessTokenWithPopup:Vs,getIdTokenClaims:Vs,loginWithCustomTokenExchange:Vs,customTokenExchange:Vs,exchangeToken:Vs,loginWithRedirect:Vs,loginWithPopup:Vs,connectAccountWithRedirect:Vs,logout:Vs,revokeRefreshToken:Vs,handleRedirectCallback:Vs,getDpopNonce:Vs,setDpopNonce:Vs,generateDpopProof:Vs,createFetcher:Vs,getConfiguration:Vs,mfa:{getAuthenticators:Vs,enroll:Vs,challenge:Vs,verify:Vs,getEnrollmentFactors:Vs},passkey:{signup:Vs,login:Vs},myAccount:{getFactors:Vs,getAuthenticationMethods:Vs,getAuthenticationMethod:Vs,updateAuthenticationMethod:Vs,deleteAuthenticationMethod:Vs,enrollmentChallenge:Vs,enrollmentVerify:Vs}}),Xs=t.createContext(Gs),Ys=function(e){function t(n,o){var r=e.call(this,null!=o?o:n)||this;return r.error=n,r.error_description=o,Object.setPrototypeOf(r,t.prototype),r}return 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)}(t,e),t}(Error),Bs=/[?&](?:connect_)?code=[^&]+/,qs=/[?&]state=[^&]+/,Qs=/[?&]error=[^&]+/,$s=function(e){return function(t){if(t instanceof Error)return t;if(null!==t&&"object"==typeof t&&"error"in t&&"string"==typeof t.error){if("error_description"in t&&"string"==typeof t.error_description){var n=t;return new Ys(n.error,n.error_description)}return new Ys(t.error)}return new Error(e)}},ec=$s("Login failed"),tc=$s("Get access token failed"),nc=function(e){var t,n;(null==e?void 0:e.redirectUri)&&(console.warn("Using `redirectUri` has been deprecated, please use `authorizationParams.redirect_uri` instead as `redirectUri` will be no longer supported in a future version"),e.authorizationParams=null!==(t=e.authorizationParams)&&void 0!==t?t:{},e.authorizationParams.redirect_uri=e.redirectUri,delete e.redirectUri),(null===(n=null==e?void 0:e.authorizationParams)||void 0===n?void 0:n.redirectUri)&&(console.warn("Using `authorizationParams.redirectUri` has been deprecated, please use `authorizationParams.redirect_uri` instead as `authorizationParams.redirectUri` will be removed in a future version"),e.authorizationParams.redirect_uri=e.authorizationParams.redirectUri,delete e.authorizationParams.redirectUri)},oc=function(e,t){switch(t.type){case"LOGIN_POPUP_STARTED":return i(i({},e),{isLoading:!0});case"LOGIN_POPUP_COMPLETE":case"INITIALISED":return i(i({},e),{isAuthenticated:!!t.user,user:t.user,isLoading:!1,error:void 0});case"HANDLE_REDIRECT_COMPLETE":case"GET_ACCESS_TOKEN_COMPLETE":case"SYNC_USER":return e.user===t.user?e:i(i({},e),{isAuthenticated:!!t.user,user:t.user});case"LOGOUT":return i(i({},e),{isAuthenticated:!1,user:void 0});case"ERROR":return i(i({},e),{isLoading:!1,error:t.error})}},rc=function(e){var t;window.history.replaceState({},document.title,null!==(t=e.returnTo)&&void 0!==t?t:window.location.pathname)},ic=function(){var e,t,n=new Promise(function(n,o){e=n,t=o});return n.catch(function(){}),{promise:n,resolve:e,reject:t}},ac=function(e){return void 0===e&&(e=Xs),t.useContext(e)},sc=function(){return t.createElement(t.Fragment,null)},cc=function(){return s(void 0,void 0,void 0,function(){return c(this,function(e){return[2]})})},uc=function(){var e=window.location.pathname.replace(/^\/\/+/,"/");return"".concat(e).concat(window.location.search)};e.Auth0Context=Xs,e.Auth0Provider=function(n){var o=n,r=o.children,u=o.skipRedirectCallback,l=o.onRedirectCallback,h=void 0===l?rc:l,d=o.context,p=void 0===d?Xs:d,f=o.client,m=a(o,["children","skipRedirectCallback","onRedirectCallback","context","client"]);f&&(m.domain||m.clientId)&&console.warn("Auth0Provider: the `client` prop takes precedence over `domain`/`clientId` and other configuration options. Remove `domain`, `clientId`, and any other Auth0Client configuration props when using the `client` prop.");var y=t.useState(function(){return null!=f?f:new Zs(function(e){return nc(e),i(i({},e),{auth0Client:{name:"auth0-react",version:"2.24.0"}})}(m))})[0],w=t.useReducer(oc,Fs),g=w[0],v=w[1],b=t.useState(ic),k=b[0],_=b[1],S=t.useState(!1),T=S[0],E=S[1],P=t.useRef(!1),A=t.useRef(!1),R=t.useCallback(function(e){return v({type:"ERROR",error:e}),e},[]),C=t.useCallback(function(t,n){return s(void 0,void 0,void 0,function(){var o,r,i,s,l,d,p,f;return c(this,function(c){switch(c.label){case 0:return c.trys.push([0,7,,8]),o=void 0,n&&(void 0===m&&(m=window.location.search),(Bs.test(m)||Qs.test(m))&&qs.test(m))&&!u?[4,y.handleRedirectCallback()]:[3,3];case 1:return r=c.sent(),i=r.appState,s=void 0===i?{}:i,l=r.response_type,d=a(r,["appState","response_type"]),[4,y.getUser()];case 2:return o=c.sent(),s.response_type=l,l===e.ResponseType.ConnectCode&&(s.connectedAccount=d),h(s,o),[3,6];case 3:return[4,y.checkSession()];case 4:return c.sent(),[4,y.getUser()];case 5:o=c.sent(),c.label=6;case 6:return v({type:"INITIALISED",user:o}),t.resolve(),[3,8];case 7:return p=c.sent(),f=ec(p),R(f),E(!0),t.reject(f),[3,8];case 8:return[2]}var m})})},[y,h,u,R]);t.useEffect(function(){A.current||(A.current=!0,C(k,!0))},[C,k]),t.useEffect(function(){if(T&&!P.current&&g.isAuthenticated){P.current=!0;var e=ic();_(e),C(e,!1)}},[T,g.isAuthenticated,C]);var I=t.useCallback(function(e){return nc(e),y.loginWithRedirect(e)},[y]),x=t.useCallback(function(e,t){return s(void 0,void 0,void 0,function(){var n,o;return c(this,function(r){switch(r.label){case 0:v({type:"LOGIN_POPUP_STARTED"}),r.label=1;case 1:return r.trys.push([1,3,,4]),[4,y.loginWithPopup(e,t)];case 2:return r.sent(),[3,4];case 3:return n=r.sent(),R(ec(n)),[2];case 4:return[4,y.getUser()];case 5:return o=r.sent(),v({type:"LOGIN_POPUP_COMPLETE",user:o}),[2]}})})},[y,R]),O=t.useCallback(function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return s(void 0,function(e,t,n){if(n||2===arguments.length)for(var o,r=0,i=t.length;r<i;r++)!o&&r in t||(o||(o=Array.prototype.slice.call(t,0,r)),o[r]=t[r]);return e.concat(o||Array.prototype.slice.call(t))}([],e,!0),void 0,function(e){return void 0===e&&(e={}),c(this,function(t){switch(t.label){case 0:return[4,y.logout(e)];case 1:return t.sent(),(e.openUrl||!1===e.openUrl)&&v({type:"LOGOUT"}),[2]}})})},[y]),W=t.useCallback(function(e){return s(void 0,void 0,void 0,function(){var t,n;return c(this,function(o){switch(o.label){case 0:return o.trys.push([0,,2,4]),[4,y.revokeRefreshToken(e)];case 1:return o.sent(),[3,4];case 2:return t=v,n={type:"SYNC_USER"},[4,y.getUser()];case 3:return t.apply(void 0,[(n.user=o.sent(),n)]),[7];case 4:return[2]}})})},[y]),j=t.useCallback(function(e){return s(void 0,void 0,void 0,function(){var t,n,o,r;return c(this,function(i){switch(i.label){case 0:return i.trys.push([0,2,3,5]),[4,y.getTokenSilently(e)];case 1:return t=i.sent(),[3,5];case 2:throw n=i.sent(),tc(n);case 3:return o=v,r={type:"GET_ACCESS_TOKEN_COMPLETE"},[4,y.getUser()];case 4:return o.apply(void 0,[(r.user=i.sent(),r)]),[7];case 5:return[2,t]}})})},[y]),U=t.useCallback(function(e,t){return s(void 0,void 0,void 0,function(){var n,o,r,i;return c(this,function(a){switch(a.label){case 0:return a.trys.push([0,2,3,5]),[4,y.getTokenWithPopup(e,t)];case 1:return n=a.sent(),[3,5];case 2:throw o=a.sent(),tc(o);case 3:return r=v,i={type:"GET_ACCESS_TOKEN_COMPLETE"},[4,y.getUser()];case 4:return r.apply(void 0,[(i.user=a.sent(),i)]),[7];case 5:return[2,n]}})})},[y]),K=t.useCallback(function(e){return y.connectAccountWithRedirect(e)},[y]),L=t.useCallback(function(){return y.getIdTokenClaims()},[y]),N=t.useCallback(function(e){return s(void 0,void 0,void 0,function(){var t,n,o,r;return c(this,function(i){switch(i.label){case 0:return i.trys.push([0,2,3,5]),[4,y.loginWithCustomTokenExchange(e)];case 1:return t=i.sent(),[3,5];case 2:throw n=i.sent(),tc(n);case 3:return o=v,r={type:"GET_ACCESS_TOKEN_COMPLETE"},[4,y.getUser()];case 4:return o.apply(void 0,[(r.user=i.sent(),r)]),[7];case 5:return[2,t]}})})},[y]),M=t.useCallback(function(e){return y.customTokenExchange(e)},[y]),D=t.useCallback(function(e){return s(void 0,void 0,void 0,function(){return c(this,function(t){return[2,N(e)]})})},[N]),z=t.useCallback(function(e){return s(void 0,void 0,void 0,function(){var t,n,o;return c(this,function(r){switch(r.label){case 0:return r.trys.push([0,2,3,5]),[4,y.handleRedirectCallback(e)];case 1:return[2,r.sent()];case 2:throw t=r.sent(),tc(t);case 3:return n=v,o={type:"HANDLE_REDIRECT_COMPLETE"},[4,y.getUser()];case 4:return n.apply(void 0,[(o.user=r.sent(),o)]),[7];case 5:return[2]}})})},[y]),J=t.useCallback(function(e){return y.getDpopNonce(e)},[y]),H=t.useCallback(function(e,t){return y.setDpopNonce(e,t)},[y]),Z=t.useCallback(function(e){return y.generateDpopProof(e)},[y]),F=t.useCallback(function(e){return y.createFetcher(e)},[y]),V=t.useCallback(function(){return y.getConfiguration()},[y]),G=t.useMemo(function(){return y.mfa},[y]),X=t.useMemo(function(){return y.myAccount},[y]),Y=t.useCallback(function(e){return s(void 0,void 0,void 0,function(){var t,n,o,r;return c(this,function(i){switch(i.label){case 0:return i.trys.push([0,2,3,5]),[4,y.passkey.signup(e)];case 1:return t=i.sent(),[3,5];case 2:throw n=i.sent(),tc(n);case 3:return o=v,r={type:"GET_ACCESS_TOKEN_COMPLETE"},[4,y.getUser()];case 4:return o.apply(void 0,[(r.user=i.sent(),r)]),[7];case 5:return[2,t]}})})},[y]),B=t.useCallback(function(e){return s(void 0,void 0,void 0,function(){var t,n,o,r;return c(this,function(i){switch(i.label){case 0:return i.trys.push([0,2,3,5]),[4,y.passkey.login(e)];case 1:return t=i.sent(),[3,5];case 2:throw n=i.sent(),tc(n);case 3:return o=v,r={type:"GET_ACCESS_TOKEN_COMPLETE"},[4,y.getUser()];case 4:return o.apply(void 0,[(r.user=i.sent(),r)]),[7];case 5:return[2,t]}})})},[y]),q=t.useMemo(function(){return{signup:Y,login:B}},[Y,B]),Q=t.useMemo(function(){return i(i({},g),{getAccessTokenSilently:j,getAccessTokenWithPopup:U,getIdTokenClaims:L,loginWithCustomTokenExchange:N,customTokenExchange:M,exchangeToken:D,loginWithRedirect:I,loginWithPopup:x,connectAccountWithRedirect:K,logout:O,revokeRefreshToken:W,handleRedirectCallback:z,getDpopNonce:J,setDpopNonce:H,generateDpopProof:Z,createFetcher:F,getConfiguration:V,mfa:G,passkey:q,myAccount:X,_initPromise:k.promise})},[g,j,U,L,N,M,D,I,x,K,O,W,z,J,H,Z,F,V,G,q,X,k]);return t.createElement(p.Provider,{value:Q},r)},e.AuthenticationError=K,e.ConnectError=L,e.GenericError=j,e.InMemoryCache=Fe,e.InvalidConfigurationError=U,e.LocalStorageCache=Ze,e.MfaChallengeError=xs,e.MfaEnrollmentError=Is,e.MfaEnrollmentFactorsError=Ws,e.MfaError=Rs,e.MfaListAuthenticatorsError=Cs,e.MfaRequiredError=J,e.MfaVerifyError=Os,e.MissingRefreshTokenError=H,e.MissingScopesError=Z,e.MyAccountApiError=vt,e.OAuthError=Ys,e.PasskeyChallengeError=za,e.PasskeyError=Ks,e.PasskeyGetTokenError=Ja,e.PasskeyRegisterError=Da,e.PopupCancelledError=D,e.PopupOpenError=z,e.PopupTimeoutError=M,e.RefreshTokenMode={Offline:"offline",Online:"online"},e.TimeoutError=N,e.UseDpopNonceError=F,e.User=class{},e.initialContext=Gs,e.useAuth0=ac,e.useAuth0Suspense=function(e){if(void 0===e&&(e=Xs),"function"!=typeof o.use)throw new Error("useAuth0Suspense requires React 19 or later (React.use is unavailable).");var t=o.useContext(e);if(!t._initPromise)throw new Error("useAuth0Suspense must be used within an <Auth0Provider>.");return o.use(t._initPromise),o.useMemo(function(){return t.isLoading,t._initPromise,a(t,["isLoading","_initPromise"])},[t])},e.withAuth0=function(e,n){return void 0===n&&(n=Xs),function(o){return t.createElement(n.Consumer,null,function(n){return t.createElement(e,i({},o,{auth0:n}))})}},e.withAuthenticationRequired=function(e,n){return void 0===n&&(n={}),function(o){var r=this,a=n.returnTo,u=void 0===a?uc:a,l=n.onRedirecting,h=void 0===l?sc:l,d=n.onBeforeAuthentication,p=void 0===d?cc:d,f=n.loginOptions,m=n.context,y=ac(void 0===m?Xs:m),w=y.isAuthenticated,g=y.isLoading,v=y.loginWithRedirect;return t.useEffect(function(){if(!g&&!w){var e=i(i({},f),{appState:i(i({},null==f?void 0:f.appState),{returnTo:"function"==typeof u?u():u})});s(r,void 0,void 0,function(){return c(this,function(t){switch(t.label){case 0:return[4,p()];case 1:return t.sent(),[4,v(e)];case 2:return t.sent(),[2]}})})}},[g,w,v,p,f,u]),w?t.createElement(e,i({},o)):h()}}});
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).reactAuth0={},e.React)}(this,function(e,t){"use strict";var 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)};var o=function(){return o=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},o.apply(this,arguments)};function r(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n}function i(e,t,n,o){return new(n||(n=Promise))(function(r,i){function s(e){try{c(o.next(e))}catch(e){i(e)}}function a(e){try{c(o.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(s,a)}c((o=o.apply(e,t||[])).next())})}function s(e,t){var n,o,r,i={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]},s=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return s.next=a(0),s.throw=a(1),s.return=a(2),"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(a){return function(c){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;s&&(s=0,a[0]&&(i=0)),i;)try{if(n=1,o&&(r=2&a[0]?o.return:a[0]?o.throw||((r=o.return)&&r.call(o),0):o.next)&&!(r=r.call(o,a[1])).done)return r;switch(o=0,r&&(a=[2&a[0],r.value]),a[0]){case 0:case 1:r=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,o=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(r=i.trys,(r=r.length>0&&r[r.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!r||a[1]>r[0]&&a[1]<r[3])){i.label=a[1];break}if(6===a[0]&&i.label<r[1]){i.label=r[1],r=a;break}if(r&&i.label<r[2]){i.label=r[2],i.ops.push(a);break}r[2]&&i.ops.pop(),i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e],o=0}finally{n=r=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,c])}}}function a(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(o=Object.getOwnPropertySymbols(e);r<o.length;r++)t.indexOf(o[r])<0&&Object.prototype.propertyIsEnumerable.call(e,o[r])&&(n[o[r]]=e[o[r]])}return n}function c(e,t,n,o){if("a"===n&&!o)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!o:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===n?o:"a"===n?o.call(e):o?o.value:t.get(e)}function u(e,t,n,o,r){if("m"===o)throw new TypeError("Private method is not writable");if("a"===o&&!r)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!r:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===o?r.call(e,n):r?r.value=n:t.set(e,n),n}function l(e,t){this.v=e,this.k=t}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=Array(t);n<t;n++)o[n]=e[n];return o}function h(e,t,n){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}function p(e){return new l(e,0)}function f(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function m(e,t){return e.get(h(e,t))}function y(e,t,n){f(e,t),t.set(e,n)}function w(e,t,n){return e.set(h(e,t),n),n}function g(e,t){f(e,t),t.add(e)}function v(e,t,n){return(t=function(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function b(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,o)}return n}function _(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?b(Object(n),!0).forEach(function(t){v(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):b(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function k(e,t){if(null==e)return{};var n,o,r=function(e,t){if(null==e)return{};var n={};for(var o in e)if({}.hasOwnProperty.call(e,o)){if(-1!==t.indexOf(o))continue;n[o]=e[o]}return n}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o<i.length;o++)n=i[o],-1===t.indexOf(n)&&{}.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function T(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var o,r,i,s,a=[],c=!0,u=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(o=i.call(n)).done)&&(a.push(o.value),a.length!==t);c=!0);}catch(e){u=!0,r=e}finally{try{if(!c&&null!=n.return&&(s=n.return(),Object(s)!==s))return}finally{if(u)throw r}}return a}}(e,t)||function(e,t){if(e){if("string"==typeof e)return d(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?d(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function S(e){return function(){return new E(e.apply(this,arguments))}}function E(e){var t,n;function o(t,n){try{var i=e[t](n),s=i.value,a=s instanceof l;Promise.resolve(a?s.v:s).then(function(n){if(a){var c="return"===t&&s.k?t:"next";if(!s.k||n.done)return o(c,n);n=e[c](n).value}r(!!i.done,n)},function(e){o("throw",e)})}catch(e){r(2,e)}}function r(e,r){2===e?t.reject(r):t.resolve({value:r,done:e}),(t=t.next)?o(t.key,t.arg):n=null}this._invoke=function(e,r){return new Promise(function(i,s){var a={key:e,arg:r,resolve:i,reject:s,next:null};n?n=n.next=a:(t=n=a,o(e,r))})},"function"!=typeof e.return&&(this.return=void 0)}"function"==typeof SuppressedError&&SuppressedError,"function"==typeof SuppressedError&&SuppressedError,E.prototype["function"==typeof Symbol&&Symbol.asyncIterator||"@@asyncIterator"]=function(){return this},E.prototype.next=function(e){return this._invoke("next",e)},E.prototype.throw=function(e){return this._invoke("throw",e)},E.prototype.return=function(e){return this._invoke("return",e)};const P={timeoutInSeconds:60},C=1e4,R="memory",A="online_access",x={name:"auth0-spa-js",version:"2.25.0"},I=()=>Date.now(),O="default";class j extends Error{constructor(e,t){super(t),this.error=e,this.error_description=t,Object.setPrototypeOf(this,j.prototype)}static fromPayload(e){let t=e.error,n=e.error_description;return new j(t,n)}}class W extends j{constructor(e,t){super("invalid_configuration","".concat(e," ").concat(t)),this.suggestion=t,Object.setPrototypeOf(this,W.prototype)}}class N extends j{constructor(e,t,n){let o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;super(e,t),this.state=n,this.appState=o,Object.setPrototypeOf(this,N.prototype)}}class U extends j{constructor(e,t,n,o){let r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null;super(e,t),this.connection=n,this.state=o,this.appState=r,Object.setPrototypeOf(this,U.prototype)}}class M extends j{constructor(){super("timeout","Timeout"),Object.setPrototypeOf(this,M.prototype)}}class L extends M{constructor(e){super(),this.popup=e,Object.setPrototypeOf(this,L.prototype)}}class K extends j{constructor(e){super("cancelled","Popup closed"),this.popup=e,Object.setPrototypeOf(this,K.prototype)}}class z extends j{constructor(){super("popup_open","Unable to open a popup for loginWithPopup - window.open returned `null`"),Object.setPrototypeOf(this,z.prototype)}}class J extends j{constructor(e,t,n,o){super(e,t),this.mfa_token=n,this.mfa_requirements=o,Object.setPrototypeOf(this,J.prototype)}}class D extends j{constructor(e,t){super("missing_refresh_token","Missing Refresh Token (audience: '".concat(F(e,["default"]),"', scope: '").concat(F(t),"')")),this.audience=e,this.scope=t,Object.setPrototypeOf(this,D.prototype)}}class Z extends j{constructor(e,t){super("missing_scopes","Missing requested scopes after refresh (audience: '".concat(F(e,["default"]),"', missing scope: '").concat(F(t),"')")),this.audience=e,this.scope=t,Object.setPrototypeOf(this,Z.prototype)}}class H extends j{constructor(e){super("use_dpop_nonce","Server rejected DPoP proof: wrong nonce"),this.newDpopNonce=e,Object.setPrototypeOf(this,H.prototype)}}function F(e){return e&&!(arguments.length>1&&void 0!==arguments[1]?arguments[1]:[]).includes(e)?e:""}const G=()=>window.crypto,V=()=>{let e="";for(;e.length<43;){const t=G().getRandomValues(new Uint8Array(43-e.length));for(const n of t)e.length<43&&n<198&&(e+="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_~."[n%66])}return e},X=e=>btoa(e),Y=[{key:"name",type:["string"]},{key:"version",type:["string","number"]},{key:"env",type:["object"]}],q=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return Object.keys(e).reduce((n,o)=>{if(t&&"env"===o)return n;const r=Y.find(e=>e.key===o);return r&&r.type.includes(typeof e[o])&&(n[o]=e[o]),n},{})},B=e=>{var t=e.clientId,n=a(e,["clientId"]);return new URLSearchParams((e=>Object.keys(e).filter(t=>void 0!==e[t]).reduce((t,n)=>Object.assign(Object.assign({},t),{[n]:e[n]}),{}))(Object.assign({client_id:t},n))).toString()},Q=async e=>{const t=G().subtle.digest({name:"SHA-256"},(new TextEncoder).encode(e));return await t},$=e=>(e=>decodeURIComponent(atob(e).split("").map(e=>"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2)).join("")))(e.replace(/_/g,"/").replace(/-/g,"+")),ee=e=>{const t=new Uint8Array(e);return(e=>{const t={"+":"-","/":"_","=":""};return e.replace(/[+/=]/g,e=>t[e])})(window.btoa(String.fromCharCode(...Array.from(t))))};var te="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},ne={},oe={};Object.defineProperty(oe,"__esModule",{value:!0});var re=function(){function e(){var e=this;this.locked=new Map,this.addToLocked=function(t,n){var o=e.locked.get(t);void 0===o?void 0===n?e.locked.set(t,[]):e.locked.set(t,[n]):void 0!==n&&(o.unshift(n),e.locked.set(t,o))},this.isLocked=function(t){return e.locked.has(t)},this.lock=function(t){return new Promise(function(n,o){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 o=n.pop();e.locked.set(t,n),void 0!==o&&setTimeout(o,0)}else e.locked.delete(t)}}return e.getInstance=function(){return void 0===e.instance&&(e.instance=new e),e.instance},e}();oe.default=function(){return re.getInstance()};var ie=te&&te.__awaiter||function(e,t,n,o){return new(n||(n=Promise))(function(r,i){function s(e){try{c(o.next(e))}catch(e){i(e)}}function a(e){try{c(o.throw(e))}catch(e){i(e)}}function c(e){e.done?r(e.value):new n(function(t){t(e.value)}).then(s,a)}c((o=o.apply(e,t||[])).next())})},se=te&&te.__generator||function(e,t){var n,o,r,i,s={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){return function(i){if(n)throw new TypeError("Generator is already executing.");for(;s;)try{if(n=1,o&&(r=2&i[0]?o.return:i[0]?o.throw||((r=o.return)&&r.call(o),0):o.next)&&!(r=r.call(o,i[1])).done)return r;switch(o=0,r&&(i=[2&i[0],r.value]),i[0]){case 0:case 1:r=i;break;case 4:return s.label++,{value:i[1],done:!1};case 5:s.label++,o=i[1],i=[0];continue;case 7:i=s.ops.pop(),s.trys.pop();continue;default:if(!((r=(r=s.trys).length>0&&r[r.length-1])||6!==i[0]&&2!==i[0])){s=0;continue}if(3===i[0]&&(!r||i[1]>r[0]&&i[1]<r[3])){s.label=i[1];break}if(6===i[0]&&s.label<r[1]){s.label=r[1],r=i;break}if(r&&s.label<r[2]){s.label=r[2],s.ops.push(i);break}r[2]&&s.ops.pop(),s.trys.pop();continue}i=t.call(e,s)}catch(e){i=[6,e],o=0}finally{n=r=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,a])}}},ae=te;Object.defineProperty(ne,"__esModule",{value:!0});var ce=oe,ue="browser-tabs-lock-key",le={key:function(e){return ie(ae,void 0,void 0,function(){return se(this,function(e){throw new Error("Unsupported")})})},getItem:function(e){return ie(ae,void 0,void 0,function(){return se(this,function(e){throw new Error("Unsupported")})})},clear:function(){return ie(ae,void 0,void 0,function(){return se(this,function(e){return[2,window.localStorage.clear()]})})},removeItem:function(e){return ie(ae,void 0,void 0,function(){return se(this,function(e){throw new Error("Unsupported")})})},setItem:function(e,t){return ie(ae,void 0,void 0,function(){return se(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 de(e){return new Promise(function(t){return setTimeout(t,e)})}function he(e){for(var t="",n=0;n<e;n++)t+="0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz"[Math.floor(61*Math.random())];return t}var pe=function(){function e(t){this.acquiredIatSet=new Set,this.storageHandler=void 0,this.id=Date.now().toString()+he(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),ie(this,void 0,void 0,function(){var o,r,i,s,a,c,u;return se(this,function(l){switch(l.label){case 0:o=Date.now()+he(4),r=Date.now()+n,i=ue+"-"+t,s=void 0===this.storageHandler?le:this.storageHandler,l.label=1;case 1:return Date.now()<r?[4,de(30)]:[3,8];case 2:return l.sent(),null!==s.getItemSync(i)?[3,5]:(a=this.id+"-"+t+"-"+o,[4,de(Math.floor(25*Math.random()))]);case 3:return l.sent(),s.setItemSync(i,JSON.stringify({id:this.id,iat:o,timeoutKey:a,timeAcquired:Date.now(),timeRefreshed:Date.now()})),[4,de(30)];case 4:return l.sent(),null!==(c=s.getItemSync(i))&&(u=JSON.parse(c)).id===this.id&&u.iat===o?(this.acquiredIatSet.add(o),this.refreshLockWhileAcquired(i,o),[2,!0]):[3,7];case 5:return e.lockCorrector(void 0===this.storageHandler?le:this.storageHandler),[4,this.waitForSomethingToChange(r)];case 6:l.sent(),l.label=7;case 7:return o=Date.now()+he(4),[3,1];case 8:return[2,!1]}})})},e.prototype.refreshLockWhileAcquired=function(e,t){return ie(this,void 0,void 0,function(){var n=this;return se(this,function(o){return setTimeout(function(){return ie(n,void 0,void 0,function(){var n,o,r;return se(this,function(i){switch(i.label){case 0:return[4,ce.default().lock(t)];case 1:return i.sent(),this.acquiredIatSet.has(t)?(n=void 0===this.storageHandler?le:this.storageHandler,null===(o=n.getItemSync(e))?(ce.default().unlock(t),[2]):((r=JSON.parse(o)).timeRefreshed=Date.now(),n.setItemSync(e,JSON.stringify(r)),ce.default().unlock(t),this.refreshLockWhileAcquired(e,t),[2])):(ce.default().unlock(t),[2])}})})},1e3),[2]})})},e.prototype.waitForSomethingToChange=function(t){return ie(this,void 0,void 0,function(){return se(this,function(n){switch(n.label){case 0:return[4,new Promise(function(n){var o=!1,r=Date.now(),i=!1;function s(){if(i||(window.removeEventListener("storage",s),e.removeFromWaiting(s),clearTimeout(a),i=!0),!o){o=!0;var t=50-(Date.now()-r);t>0?setTimeout(n,t):n(null)}}window.addEventListener("storage",s),e.addToWaiting(s);var a=setTimeout(s,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 ie(this,void 0,void 0,function(){return se(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 ie(this,void 0,void 0,function(){var n,o,r,i;return se(this,function(s){switch(s.label){case 0:return n=void 0===this.storageHandler?le:this.storageHandler,o=ue+"-"+t,null===(r=n.getItemSync(o))?[2]:(i=JSON.parse(r)).id!==this.id?[3,2]:[4,ce.default().lock(i.iat)];case 1:s.sent(),this.acquiredIatSet.delete(i.iat),n.removeItemSync(o),ce.default().unlock(i.iat),e.notifyWaiters(),s.label=2;case 2:return[2]}})})},e.lockCorrector=function(t){for(var n=Date.now()-5e3,o=t,r=[],i=0;;){var s=o.keySync(i);if(null===s)break;r.push(s),i++}for(var a=!1,c=0;c<r.length;c++){var u=r[c];if(u.includes(ue)){var l=o.getItemSync(u);if(null!==l){var d=JSON.parse(l);(void 0===d.timeRefreshed&&d.timeAcquired<n||void 0!==d.timeRefreshed&&d.timeRefreshed<n)&&(o.removeItemSync(u),a=!0)}}}a&&e.notifyWaiters()},e.waiters=void 0,e}(),fe=ne.default=pe;class me{async runWithLock(e,t,n){const o=new AbortController,r=setTimeout(()=>o.abort(),t);try{return await navigator.locks.request(e,{mode:"exclusive",signal:o.signal},async e=>{if(clearTimeout(r),!e)throw new Error("Lock not available");return await n()})}catch(e){if(clearTimeout(r),"AbortError"===(null==e?void 0:e.name))throw new M;throw e}}}class ye{constructor(){this.activeLocks=new Set,this.lock=new fe,this.pagehideHandler=()=>{this.activeLocks.forEach(e=>this.lock.releaseLock(e)),this.activeLocks.clear()}}async runWithLock(e,t,n){let o=!1;for(let n=0;n<10&&!o;n++)o=await this.lock.acquireLock(e,t);if(!o)throw new M;this.activeLocks.add(e),1===this.activeLocks.size&&"undefined"!=typeof window&&window.addEventListener("pagehide",this.pagehideHandler);try{return await n()}finally{this.activeLocks.delete(e),await this.lock.releaseLock(e),0===this.activeLocks.size&&"undefined"!=typeof window&&window.removeEventListener("pagehide",this.pagehideHandler)}}}let we=null;const ge=new TextEncoder,ve=new TextDecoder;function be(e){return"string"==typeof e?ge.encode(e):ve.decode(e)}function _e(e){if("number"!=typeof e.modulusLength||e.modulusLength<2048)throw new Ee(`${e.name} modulusLength must be at least 2048 bits`)}let ke;if(Uint8Array.prototype.toBase64)ke=e=>(e instanceof ArrayBuffer&&(e=new Uint8Array(e)),e.toBase64({alphabet:"base64url",omitPadding:!0}));else{const e=32768;ke=t=>{t instanceof ArrayBuffer&&(t=new Uint8Array(t));const n=[];for(let o=0;o<t.byteLength;o+=e)n.push(String.fromCharCode.apply(null,t.subarray(o,o+e)));return btoa(n.join("")).replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}}function Te(e){return ke(e)}class Se extends Error{constructor(e){var t;super(null!=e?e:"operation not supported"),this.name=this.constructor.name,null===(t=Error.captureStackTrace)||void 0===t||t.call(Error,this,this.constructor)}}class Ee extends Error{constructor(e){var t;super(e),this.name=this.constructor.name,null===(t=Error.captureStackTrace)||void 0===t||t.call(Error,this,this.constructor)}}function Pe(e){switch(e.algorithm.name){case"RSA-PSS":return function(e){if("SHA-256"===e.algorithm.hash.name)return"PS256";throw new Se("unsupported RsaHashedKeyAlgorithm hash name")}(e);case"RSASSA-PKCS1-v1_5":return function(e){if("SHA-256"===e.algorithm.hash.name)return"RS256";throw new Se("unsupported RsaHashedKeyAlgorithm hash name")}(e);case"ECDSA":return function(e){if("P-256"===e.algorithm.namedCurve)return"ES256";throw new Se("unsupported EcKeyAlgorithm namedCurve")}(e);case"Ed25519":return"Ed25519";default:throw new Se("unsupported CryptoKey algorithm name")}}function Ce(e){return e instanceof CryptoKey}function Re(e){return Ce(e)&&"public"===e.type}async function Ae(e,t,n,o,r,i){const s=null==e?void 0:e.privateKey,a=null==e?void 0:e.publicKey;if(!Ce(c=s)||"private"!==c.type)throw new TypeError('"keypair.privateKey" must be a private CryptoKey');var c;if(!Re(a))throw new TypeError('"keypair.publicKey" must be a public CryptoKey');if(!0!==a.extractable)throw new TypeError('"keypair.publicKey.extractable" must be true');if("string"!=typeof t)throw new TypeError('"htu" must be a string');if("string"!=typeof n)throw new TypeError('"htm" must be a string');if(void 0!==o&&"string"!=typeof o)throw new TypeError('"nonce" must be a string or undefined');if(void 0!==r&&"string"!=typeof r)throw new TypeError('"accessToken" must be a string or undefined');if(void 0!==i&&("object"!=typeof i||null===i||Array.isArray(i)))throw new TypeError('"additional" must be an object');const u=Object.assign(Object.create(null),i,{iat:Math.floor(Date.now()/1e3),jti:crypto.randomUUID(),htm:n,nonce:o,htu:t,ath:r?Te(await crypto.subtle.digest("SHA-256",be(r))):void 0});return async function(e,t,n){if(!1===n.usages.includes("sign"))throw new TypeError('private CryptoKey instances used for signing assertions must include "sign" in their "usages"');const o=`${Te(be(JSON.stringify(e)))}.${Te(be(JSON.stringify(t)))}`;return`${o}.${Te(await crypto.subtle.sign(function(e){switch(e.algorithm.name){case"ECDSA":return{name:e.algorithm.name,hash:"SHA-256"};case"RSA-PSS":return _e(e.algorithm),{name:e.algorithm.name,saltLength:32};case"RSASSA-PKCS1-v1_5":return _e(e.algorithm),{name:e.algorithm.name};case"Ed25519":return{name:e.algorithm.name}}throw new Se}(n),n,be(o)))}`}({alg:Pe(s),typ:"dpop+jwt",jwk:await xe(a)},u,s)}async function xe(e){const{kty:t,e:n,n:o,x:r,y:i,crv:s}=await crypto.subtle.exportKey("jwk",e);return{kty:t,crv:s,e:n,n:o,x:r,y:i}}const Ie="dpop-nonce",Oe=["authorization_code","refresh_token","urn:ietf:params:oauth:grant-type:token-exchange","urn:okta:params:oauth:grant-type:webauthn","http://auth0.com/oauth/grant-type/mfa-oob","http://auth0.com/oauth/grant-type/mfa-otp","http://auth0.com/oauth/grant-type/mfa-recovery-code"];const je=(e,t)=>new Promise(function(n,o){const r=new MessageChannel;r.port1.onmessage=function(e){e.data.error?o(new Error(e.data.error)):n(e.data),r.port1.close()},t.postMessage(e,[r.port2])}),We=(e,t,n)=>{const o=new AbortController;let r;return t.signal=o.signal,Promise.race([fetch(e,t),new Promise((e,t)=>{r=setTimeout(()=>{o.abort(),t(new Error("Timeout when executing 'fetch'"))},n)})]).finally(()=>{clearTimeout(r)})},Ne=async function(e,t,n,o,r,i){let s=arguments.length>6&&void 0!==arguments[6]?arguments[6]:C;return r?(async(e,t,n,o,r,i,s,a,c,u)=>je({type:"refresh",auth:{audience:t,scope:n},timeout:r,fetchUrl:e,fetchOptions:o,useFormData:s,useMrrt:a,skipTokenStorage:c,preserveRefreshToken:u},i))(e,t,n,o,s,r,i,arguments.length>7?arguments[7]:void 0,arguments.length>8?arguments[8]:void 0,arguments.length>9?arguments[9]:void 0):(async(e,t,n)=>{const o=await We(e,t,n);return{ok:o.ok,json:await o.json(),headers:(r=o.headers,[...r].reduce((e,t)=>{let n=T(t,2),o=n[0],r=n[1];return e[o]=r,e},{}))};var r})(e,o,s)};async function Ue(e,t,n,o,r,i,s,c,u,l,d,h){if(u){const t=await u.generateProof({url:e,method:r.method||"GET",nonce:await u.getNonce()});r.headers=Object.assign(Object.assign({},r.headers),{dpop:t})}let p,f=null;for(let a=0;a<3;a++)try{p=await Ne(e,n,o,r,i,s,t,c,d,h),f=null;break}catch(e){f=e}if(f)throw f;const m=p.json,y=m.error,w=m.error_description,g=a(m,["error","error_description"]),v=p,b=v.headers,_=v.ok;let k;if(u&&(k=b[Ie],k&&await u.setNonce(k)),!_){const a=w||"HTTP error. Unable to fetch ".concat(e);if("mfa_required"===y)throw new J(y,a,g.mfa_token,g.mfa_requirements);if("missing_refresh_token"===y)throw new D(n,o);if("use_dpop_nonce"===y){if(!u||!k||l)throw new H(k);return Ue(e,t,n,o,r,i,s,c,u,!0,d,h)}throw new j(y||"request_error",a)}return g}async function Me(e,t,n){var o=e.baseUrl,r=e.timeout,i=e.audience,s=e.scope,c=e.auth0Client,u=e.useFormData,l=e.useMrrt,d=e.dpop,h=e.preserveRefreshToken,p=a(e,["baseUrl","timeout","audience","scope","auth0Client","useFormData","useMrrt","dpop","preserveRefreshToken"]);const f="urn:ietf:params:oauth:grant-type:token-exchange"===p.grant_type,m="urn:okta:params:oauth:grant-type:webauthn"===p.grant_type,y="refresh_token"===p.grant_type&&l,w=f||m||y,g=Object.assign(Object.assign(Object.assign({},p),w&&i&&{audience:i}),w&&s&&{scope:s}),v=m||!u,b=v?JSON.stringify(g):B(g),_=(k=p.grant_type,Oe.includes(k));var k;return await Ue("".concat(o,"/oauth/token"),r,i||O,s,{method:"POST",body:b,headers:{"Content-Type":v?"application/json":"application/x-www-form-urlencoded","Auth0-Client":btoa(JSON.stringify(q(c||x)))}},t,u,l,_?d:void 0,void 0,n,h)}const Le=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return(o=t.filter(Boolean).join(" ").trim().split(/\s+/),Array.from(new Set(o))).join(" ");var o},Ke=(e,t,n)=>{let o;return n&&(o=e[n]),o||(o=e[O]),Le(o,t)},ze="@@auth0spajs@@",Je="@@user@@";class De{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:ze,n=arguments.length>2?arguments[2]:void 0;this.prefix=t,this.suffix=n,this.clientId=e.clientId,this.scope=e.scope,this.audience=e.audience}toKey(){return[this.prefix,this.clientId,this.audience,this.scope,this.suffix].filter(Boolean).join("::")}static fromKey(e){const t=T(e.split("::"),4),n=t[0],o=t[1],r=t[2],i=t[3];return new De({clientId:o,scope:i,audience:r},n)}static fromCacheEntry(e){const t=e.scope,n=e.audience,o=e.client_id;return new De({scope:t,audience:n,clientId:o})}}class Ze{set(e,t){localStorage.setItem(e,JSON.stringify(t))}get(e){const t=window.localStorage.getItem(e);if(t)try{return JSON.parse(t)}catch(e){return}}remove(e){localStorage.removeItem(e)}allKeys(){return Object.keys(window.localStorage).filter(e=>e.startsWith(ze))}}class He{constructor(){this.enclosedCache=function(){let e={};return{set(t,n){e[t]=n},get(t){const n=e[t];if(n)return n},remove(t){delete e[t]},allKeys:()=>Object.keys(e)}}()}}class Fe{constructor(e,t,n){this.cache=e,this.keyManifest=t,this.nowProvider=n||I}async setIdToken(e,t,n){var o;const r=this.getIdTokenCacheKey(e);await this.cache.set(r,{id_token:t,decodedToken:n}),await(null===(o=this.keyManifest)||void 0===o?void 0:o.add(r))}async getIdToken(e){const t=await this.cache.get(this.getIdTokenCacheKey(e.clientId));if(!t&&e.scope&&e.audience){const t=await this.get(e);if(!t)return;if(!t.id_token||!t.decodedToken)return;return{id_token:t.id_token,decodedToken:t.decodedToken}}if(t)return{id_token:t.id_token,decodedToken:t.decodedToken}}async get(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=arguments.length>3?arguments[3]:void 0;var r;let i=await this.cache.get(e.toKey()),s=e;if(!i){const t=await this.getCacheKeys();if(!t)return;const r=this.matchExistingCacheKey(e,t);if(r&&(i=await this.cache.get(r),s=De.fromKey(r)),!i&&n&&"cache-only"!==o)return this.getEntryWithRefreshToken(e,t)}if(!i)return;const a=await this.nowProvider(),c=Math.floor(a/1e3);return i.expiresAt-t<c?i.body.refresh_token?this.modifiedCachedEntry(i,s):(await this.cache.remove(s.toKey()),void await(null===(r=this.keyManifest)||void 0===r?void 0:r.remove(s.toKey()))):i.body}async modifiedCachedEntry(e,t){const n={refresh_token:e.body.refresh_token,audience:e.body.audience,scope:e.body.scope},o={body:n,expiresAt:e.expiresAt};return await this.cache.set(t.toKey(),o),{refresh_token:n.refresh_token,audience:n.audience,scope:n.scope}}async set(e){var t;const n=new De({clientId:e.client_id,scope:e.scope,audience:e.audience}),o=await this.wrapCacheEntry(e);await this.cache.set(n.toKey(),o),await(null===(t=this.keyManifest)||void 0===t?void 0:t.add(n.toKey()))}async remove(e,t,n){const o=new De({clientId:e,scope:n,audience:t});await this.cache.remove(o.toKey())}async stripRefreshToken(e){var t;const n=await this.getCacheKeys();if(n)for(const o of n){const n=await this.cache.get(o);(null===(t=null==n?void 0:n.body)||void 0===t?void 0:t.refresh_token)===e&&(delete n.body.refresh_token,await this.cache.set(o,n))}}async clear(e){var t;const n=await this.getCacheKeys();n&&(await n.filter(t=>!e||t.includes(e)).reduce(async(e,t)=>{await e,await this.cache.remove(t)},Promise.resolve()),await(null===(t=this.keyManifest)||void 0===t?void 0:t.clear()))}async wrapCacheEntry(e){const t=await this.nowProvider();return{body:e,expiresAt:Math.floor(t/1e3)+e.expires_in}}async getCacheKeys(){var e;return this.keyManifest?null===(e=await this.keyManifest.get())||void 0===e?void 0:e.keys:this.cache.allKeys?this.cache.allKeys():void 0}getIdTokenCacheKey(e){return new De({clientId:e},ze,Je).toKey()}matchExistingCacheKey(e,t){return t.filter(t=>{var n;const o=De.fromKey(t),r=new Set(o.scope&&o.scope.split(" ")),i=(null===(n=e.scope)||void 0===n?void 0:n.split(" "))||[],s=o.scope&&i.reduce((e,t)=>e&&r.has(t),!0);return o.prefix===ze&&o.clientId===e.clientId&&o.audience===e.audience&&s})[0]}async getEntryWithRefreshToken(e,t){var n;for(const o of t){const t=De.fromKey(o);if(t.prefix===ze&&t.clientId===e.clientId){const e=await this.cache.get(o);if(null===(n=null==e?void 0:e.body)||void 0===n?void 0:n.refresh_token)return{refresh_token:e.body.refresh_token,audience:e.body.audience,scope:e.body.scope}}}}async getRefreshTokensByAudience(e,t){var n;const o=await this.getCacheKeys();if(!o)return[];const r=new Set;for(const i of o){const o=De.fromKey(i);if(o.prefix===ze&&o.clientId===t&&o.audience===e){const e=await this.cache.get(i);(null===(n=null==e?void 0:e.body)||void 0===n?void 0:n.refresh_token)&&r.add(e.body.refresh_token)}}return Array.from(r)}async updateEntry(e,t,n){let o=arguments.length>3&&void 0!==arguments[3]&&arguments[3];const r=await this.getCacheKeys();if(r)for(const i of r){if(De.fromKey(i).clientId!==n)continue;const r=await this.cache.get(i);if(!(null==r?void 0:r.body))continue;const s=r.body.refresh_token;s&&(o||s===e)&&(r.body.refresh_token=t,await this.cache.set(i,r))}}}class Ge{constructor(e,t,n){this.storage=e,this.clientId=t,this.cookieDomain=n,this.storageKey="".concat("a0.spajs.txs",".").concat(this.clientId)}create(e){this.storage.save(this.storageKey,e,{daysUntilExpire:1,cookieDomain:this.cookieDomain})}get(){return this.storage.get(this.storageKey)}remove(){this.storage.remove(this.storageKey,{cookieDomain:this.cookieDomain})}}const Ve=e=>"number"==typeof e,Xe=["iss","aud","exp","nbf","iat","jti","azp","nonce","auth_time","at_hash","c_hash","acr","amr","sub_jwk","cnf","sip_from_tag","sip_date","sip_callid","sip_cseq_num","sip_via_branch","orig","dest","mky","events","toe","txn","rph","sid","vot","vtm"];var Ye=te&&te.__assign||function(){return Ye=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},Ye.apply(this,arguments)};function qe(e,t){if(!t)return"";var n="; "+e;return!0===t?n:n+"="+t}var Be=function(e){return function(e){for(var t={},n=e?e.split("; "):[],o=/(%[\dA-F]{2})+/gi,r=0;r<n.length;r++){var i=n[r].split("="),s=i.slice(1).join("=");'"'===s.charAt(0)&&(s=s.slice(1,-1));try{t[i[0].replace(o,decodeURIComponent)]=s.replace(o,decodeURIComponent)}catch(e){}}return t}(document.cookie)[e]};function Qe(e,t,n){document.cookie=function(e,t,n){return encodeURIComponent(e).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent).replace(/\(/g,"%28").replace(/\)/g,"%29")+"="+encodeURIComponent(t).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent)+function(e){if("number"==typeof e.expires){var t=new Date;t.setMilliseconds(t.getMilliseconds()+864e5*e.expires),e.expires=t}return qe("Expires",e.expires?e.expires.toUTCString():"")+qe("Domain",e.domain)+qe("Path",e.path)+qe("Secure",e.secure)+qe("SameSite",e.sameSite)}(n)}(e,t,Ye({path:"/"},n))}var $e=Qe,et=function(e,t){Qe(e,"",Ye(Ye({},t),{expires:-1}))};const tt={get(e){const t=Be(e);if(void 0!==t)return JSON.parse(t)},save(e,t,n){let o={};"https:"===window.location.protocol&&(o={secure:!0,sameSite:"none"}),(null==n?void 0:n.daysUntilExpire)&&(o.expires=n.daysUntilExpire),(null==n?void 0:n.cookieDomain)&&(o.domain=n.cookieDomain),$e(e,JSON.stringify(t),o)},remove(e,t){let n={};(null==t?void 0:t.cookieDomain)&&(n.domain=t.cookieDomain),et(e,n)}},nt="_legacy_",ot={get:e=>tt.get(e)||tt.get("".concat(nt).concat(e)),save(e,t,n){let o={};"https:"===window.location.protocol&&(o={secure:!0}),(null==n?void 0:n.daysUntilExpire)&&(o.expires=n.daysUntilExpire),(null==n?void 0:n.cookieDomain)&&(o.domain=n.cookieDomain),$e("".concat(nt).concat(e),JSON.stringify(t),o),tt.save(e,t,n)},remove(e,t){let n={};(null==t?void 0:t.cookieDomain)&&(n.domain=t.cookieDomain),et(e,n),tt.remove(e,t),tt.remove("".concat(nt).concat(e),t)}},rt={get(e){if("undefined"==typeof sessionStorage)return;const t=sessionStorage.getItem(e);return null!=t?JSON.parse(t):void 0},save(e,t){sessionStorage.setItem(e,JSON.stringify(t))},remove(e){sessionStorage.removeItem(e)}};e.ResponseType=void 0,function(e){e.Code="code",e.ConnectCode="connect_code"}(e.ResponseType||(e.ResponseType={}));var it,st=function(e){return it=it||function(e,t,n){var o=void 0===t?null:t,r=function(e,t){var n=atob(e);if(t){for(var o=new Uint8Array(n.length),r=0,i=n.length;r<i;++r)o[r]=n.charCodeAt(r);return String.fromCharCode.apply(null,new Uint16Array(o.buffer))}return n}(e,void 0!==n&&n),i=r.indexOf("\n",10)+1,s=r.substring(i)+(o?"//# sourceMappingURL="+o:""),a=new Blob([s],{type:"application/javascript"});return URL.createObjectURL(a)}("Lyogcm9sbHVwLXBsdWdpbi13ZWItd29ya2VyLWxvYWRlciAqLwohZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gZShlLHQpeyhudWxsPT10fHx0PmUubGVuZ3RoKSYmKHQ9ZS5sZW5ndGgpO2Zvcih2YXIgcj0wLG89QXJyYXkodCk7cjx0O3IrKylvW3JdPWVbcl07cmV0dXJuIG99ZnVuY3Rpb24gdCh0LHIpe3JldHVybiBmdW5jdGlvbihlKXtpZihBcnJheS5pc0FycmF5KGUpKXJldHVybiBlfSh0KXx8ZnVuY3Rpb24oZSx0KXt2YXIgcj1udWxsPT1lP251bGw6InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJmVbU3ltYm9sLml0ZXJhdG9yXXx8ZVsiQEBpdGVyYXRvciJdO2lmKG51bGwhPXIpe3ZhciBvLG4scyxhLGk9W10sYz0hMCxsPSExO3RyeXtpZihzPShyPXIuY2FsbChlKSkubmV4dCwwPT09dCl7aWYoT2JqZWN0KHIpIT09cilyZXR1cm47Yz0hMX1lbHNlIGZvcig7IShjPShvPXMuY2FsbChyKSkuZG9uZSkmJihpLnB1c2goby52YWx1ZSksaS5sZW5ndGghPT10KTtjPSEwKTt9Y2F0Y2goZSl7bD0hMCxuPWV9ZmluYWxseXt0cnl7aWYoIWMmJm51bGwhPXIucmV0dXJuJiYoYT1yLnJldHVybigpLE9iamVjdChhKSE9PWEpKXJldHVybn1maW5hbGx5e2lmKGwpdGhyb3cgbn19cmV0dXJuIGl9fSh0LHIpfHxmdW5jdGlvbih0LHIpe2lmKHQpe2lmKCJzdHJpbmciPT10eXBlb2YgdClyZXR1cm4gZSh0LHIpO3ZhciBvPXt9LnRvU3RyaW5nLmNhbGwodCkuc2xpY2UoOCwtMSk7cmV0dXJuIk9iamVjdCI9PT1vJiZ0LmNvbnN0cnVjdG9yJiYobz10LmNvbnN0cnVjdG9yLm5hbWUpLCJNYXAiPT09b3x8IlNldCI9PT1vP0FycmF5LmZyb20odCk6IkFyZ3VtZW50cyI9PT1vfHwvXig/OlVpfEkpbnQoPzo4fDE2fDMyKSg/OkNsYW1wZWQpP0FycmF5JC8udGVzdChvKT9lKHQscik6dm9pZCAwfX0odCxyKXx8ZnVuY3Rpb24oKXt0aHJvdyBuZXcgVHlwZUVycm9yKCJJbnZhbGlkIGF0dGVtcHQgdG8gZGVzdHJ1Y3R1cmUgbm9uLWl0ZXJhYmxlIGluc3RhbmNlLlxuSW4gb3JkZXIgdG8gYmUgaXRlcmFibGUsIG5vbi1hcnJheSBvYmplY3RzIG11c3QgaGF2ZSBhIFtTeW1ib2wuaXRlcmF0b3JdKCkgbWV0aG9kLiIpfSgpfWNsYXNzIHIgZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3RvcihlLHQpe3N1cGVyKHQpLHRoaXMuZXJyb3I9ZSx0aGlzLmVycm9yX2Rlc2NyaXB0aW9uPXQsT2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsci5wcm90b3R5cGUpfXN0YXRpYyBmcm9tUGF5bG9hZChlKXtsZXQgdD1lLmVycm9yLG89ZS5lcnJvcl9kZXNjcmlwdGlvbjtyZXR1cm4gbmV3IHIodCxvKX19Y2xhc3MgbyBleHRlbmRzIHJ7Y29uc3RydWN0b3IoZSx0KXtzdXBlcigibWlzc2luZ19yZWZyZXNoX3Rva2VuIiwiTWlzc2luZyBSZWZyZXNoIFRva2VuIChhdWRpZW5jZTogJyIuY29uY2F0KG4oZSxbImRlZmF1bHQiXSksIicsIHNjb3BlOiAnIikuY29uY2F0KG4odCksIicpIikpLHRoaXMuYXVkaWVuY2U9ZSx0aGlzLnNjb3BlPXQsT2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsby5wcm90b3R5cGUpfX1mdW5jdGlvbiBuKGUpe3JldHVybiBlJiYhKGFyZ3VtZW50cy5sZW5ndGg+MSYmdm9pZCAwIT09YXJndW1lbnRzWzFdP2FyZ3VtZW50c1sxXTpbXSkuaW5jbHVkZXMoZSk/ZToiIn0iZnVuY3Rpb24iPT10eXBlb2YgU3VwcHJlc3NlZEVycm9yJiZTdXBwcmVzc2VkRXJyb3I7Y29uc3Qgcz1lPT57dmFyIHQ9ZS5jbGllbnRJZCxyPWZ1bmN0aW9uKGUsdCl7dmFyIHI9e307Zm9yKHZhciBvIGluIGUpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsbykmJnQuaW5kZXhPZihvKTwwJiYocltvXT1lW29dKTtpZihudWxsIT1lJiYiZnVuY3Rpb24iPT10eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyl7dmFyIG49MDtmb3Iobz1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKGUpO248by5sZW5ndGg7bisrKXQuaW5kZXhPZihvW25dKTwwJiZPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwoZSxvW25dKSYmKHJbb1tuXV09ZVtvW25dXSl9cmV0dXJuIHJ9KGUsWyJjbGllbnRJZCJdKTtyZXR1cm4gbmV3IFVSTFNlYXJjaFBhcmFtcygoZT0+T2JqZWN0LmtleXMoZSkuZmlsdGVyKHQ9PnZvaWQgMCE9PWVbdF0pLnJlZHVjZSgodCxyKT0+T2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LHQpLHtbcl06ZVtyXX0pLHt9KSkoT2JqZWN0LmFzc2lnbih7Y2xpZW50X2lkOnR9LHIpKSkudG9TdHJpbmcoKX07bGV0IGE9e30saT1udWxsO2NvbnN0IGM9KGUsdCk9PiIiLmNvbmNhdChlLCJ8IikuY29uY2F0KHQpLGw9KGUsdCk9PnQuc3RhcnRzV2l0aCgiIi5jb25jYXQoZSwifCIpKSx1PShlLHQpPT5hW2MoZSx0KV0sZj1lPT57T2JqZWN0LmVudHJpZXMoYSkuZm9yRWFjaChyPT57bGV0IG89dChyLDIpLG49b1swXTtvWzFdPT09ZSYmZGVsZXRlIGFbbl19KX0saD1lPT57Y29uc3QgdD1uZXcgVVJMU2VhcmNoUGFyYW1zKGUpLHI9e307cmV0dXJuIHQuZm9yRWFjaCgoZSx0KT0+e3JbdF09ZX0pLHJ9LGQ9YXN5bmMgZT0+e2xldCByLG4saT1lLmRhdGEsZj1pLnRpbWVvdXQsZD1pLmF1dGgscD1pLmZldGNoVXJsLHk9aS5mZXRjaE9wdGlvbnMsZz1pLnVzZUZvcm1EYXRhLGI9aS51c2VNcnJ0LE89aS5za2lwVG9rZW5TdG9yYWdlLGs9aS5wcmVzZXJ2ZVJlZnJlc2hUb2tlbixtPXQoZS5wb3J0cywxKVswXSxqPXt9O2NvbnN0IHY9ZHx8e30sXz12LmF1ZGllbmNlLHc9di5zY29wZTt0cnl7Y29uc3QgZT1nP2goeS5ib2R5KTpKU09OLnBhcnNlKHkuYm9keSk7aWYoZS5yZWZyZXNoX3Rva2VufHwicmVmcmVzaF90b2tlbiIhPT1lLmdyYW50X3R5cGUpZS5tZmFfdG9rZW4mJihuPXUoXyx3KSwhbiYmYiYmKG49YS5sYXRlc3RfcmVmcmVzaF90b2tlbikpO2Vsc2V7aWYobj11KF8sdyksIW4mJmIpe2NvbnN0IGU9YS5sYXRlc3RfcmVmcmVzaF90b2tlbix0PSgoZSx0KT0+ISFPYmplY3Qua2V5cyhhKS5maW5kKHI9PntpZigibGF0ZXN0X3JlZnJlc2hfdG9rZW4iIT09cil7Y29uc3Qgbz1sKHQsciksbj1yLnNwbGl0KCJ8IilbMV0uc3BsaXQoIiAiKSxzPWUuc3BsaXQoIiAiKS5ldmVyeShlPT5uLmluY2x1ZGVzKGUpKTtyZXR1cm4gbyYmc319KSkodyxfKTtlJiYhdCYmKG49ZSl9aWYoIW4pdGhyb3cgbmV3IG8oXyx3KTt5LmJvZHk9Zz9zKE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSxlKSx7cmVmcmVzaF90b2tlbjpufSkpOkpTT04uc3RyaW5naWZ5KE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSxlKSx7cmVmcmVzaF90b2tlbjpufSkpfWxldCBpLGQ7ImZ1bmN0aW9uIj09dHlwZW9mIEFib3J0Q29udHJvbGxlciYmKGk9bmV3IEFib3J0Q29udHJvbGxlcix5LnNpZ25hbD1pLnNpZ25hbCk7dHJ5e2Q9YXdhaXQgUHJvbWlzZS5yYWNlKFsoUD1mLG5ldyBQcm9taXNlKGU9PnNldFRpbWVvdXQoZSxQKSkpLGZldGNoKHAsT2JqZWN0LmFzc2lnbih7fSx5KSldKX1jYXRjaChlKXtyZXR1cm4gdm9pZCBtLnBvc3RNZXNzYWdlKHtlcnJvcjplLm1lc3NhZ2V9KX1pZighZClyZXR1cm4gaSYmaS5hYm9ydCgpLHZvaWQgbS5wb3N0TWVzc2FnZSh7ZXJyb3I6IlRpbWVvdXQgd2hlbiBleGVjdXRpbmcgJ2ZldGNoJyJ9KTtpZihVPWQuaGVhZGVycyxqPVsuLi5VXS5yZWR1Y2UoKGUscik9PntsZXQgbz10KHIsMiksbj1vWzBdLHM9b1sxXTtyZXR1cm4gZVtuXT1zLGV9LHt9KSxyPWF3YWl0IGQuanNvbigpLE8pcmV0dXJuIGRlbGV0ZSByLnJlZnJlc2hfdG9rZW4sdm9pZCBtLnBvc3RNZXNzYWdlKHtvazpkLm9rLGpzb246cixoZWFkZXJzOmp9KTtyLnJlZnJlc2hfdG9rZW4/KGImJihhLmxhdGVzdF9yZWZyZXNoX3Rva2VuPXIucmVmcmVzaF90b2tlbixTPW4sTT1yLnJlZnJlc2hfdG9rZW4sT2JqZWN0LmVudHJpZXMoYSkuZm9yRWFjaChlPT57bGV0IHI9dChlLDIpLG89clswXTtyWzFdPT09UyYmKGFbb109TSl9KSksKChlLHQscik9PnthW2ModCxyKV09ZX0pKHIucmVmcmVzaF90b2tlbixfLHcpLGRlbGV0ZSByLnJlZnJlc2hfdG9rZW4pOmt8fCgoZSx0KT0+e2RlbGV0ZSBhW2MoZSx0KV19KShfLHcpLG0ucG9zdE1lc3NhZ2Uoe29rOmQub2ssanNvbjpyLGhlYWRlcnM6an0pfWNhdGNoKGUpe20ucG9zdE1lc3NhZ2Uoe29rOiExLGpzb246e2Vycm9yOmUuZXJyb3IsZXJyb3JfZGVzY3JpcHRpb246ZS5tZXNzYWdlfSxoZWFkZXJzOmp9KX12YXIgUyxNLFUsUH0scD1hc3luYyBlPT57bGV0IHI9ZS5kYXRhLG89ci50aW1lb3V0LG49ci5hdXRoLGk9ci5mZXRjaFVybCxjPXIuZmV0Y2hPcHRpb25zLHU9ci51c2VGb3JtRGF0YSxkPXQoZS5wb3J0cywxKVswXTtjb25zdCBwPShufHx7fSkuYXVkaWVuY2U7dHJ5e2NvbnN0IGU9KGU9Pntjb25zdCByPW5ldyBTZXQ7cmV0dXJuIE9iamVjdC5lbnRyaWVzKGEpLmZvckVhY2gobz0+e2xldCBuPXQobywyKSxzPW5bMF0sYT1uWzFdO2woZSxzKSYmci5hZGQoYSl9KSxBcnJheS5mcm9tKHIpfSkocCk7aWYoMD09PWUubGVuZ3RoKXJldHVybiB2b2lkIGQucG9zdE1lc3NhZ2Uoe29rOiEwfSk7Y29uc3Qgcj11P2goYy5ib2R5KTpKU09OLnBhcnNlKGMuYm9keSk7Zm9yKGNvbnN0IHQgb2YgZSl7Y29uc3QgZT11P3MoT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LHIpLHt0b2tlbjp0fSkpOkpTT04uc3RyaW5naWZ5KE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSxyKSx7dG9rZW46dH0pKTtsZXQgbixhLGwsaDsiZnVuY3Rpb24iPT10eXBlb2YgQWJvcnRDb250cm9sbGVyJiYobj1uZXcgQWJvcnRDb250cm9sbGVyLGE9bi5zaWduYWwpO3RyeXtoPWF3YWl0IFByb21pc2UucmFjZShbbmV3IFByb21pc2UoZT0+e2w9c2V0VGltZW91dChlLG8pfSksZmV0Y2goaSxPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sYykse2JvZHk6ZSxzaWduYWw6YX0pKV0pLmZpbmFsbHkoKCk9PmNsZWFyVGltZW91dChsKSl9Y2F0Y2goZSl7cmV0dXJuIHZvaWQgZC5wb3N0TWVzc2FnZSh7ZXJyb3I6ZS5tZXNzYWdlfSl9aWYoIWgpcmV0dXJuIG4mJm4uYWJvcnQoKSx2b2lkIGQucG9zdE1lc3NhZ2Uoe2Vycm9yOiJUaW1lb3V0IHdoZW4gZXhlY3V0aW5nICdmZXRjaCcifSk7aWYoIWgub2spe2xldCBlO3RyeXtjb25zdCB0PUpTT04ucGFyc2UoYXdhaXQgaC50ZXh0KCkpO2U9dC5lcnJvcl9kZXNjcmlwdGlvbn1jYXRjaChlKXt9cmV0dXJuIHZvaWQgZC5wb3N0TWVzc2FnZSh7ZXJyb3I6ZXx8IkhUVFAgZXJyb3IgIi5jb25jYXQoaC5zdGF0dXMpfSl9Zih0KX1kLnBvc3RNZXNzYWdlKHtvazohMH0pfWNhdGNoKGUpe2QucG9zdE1lc3NhZ2Uoe2Vycm9yOmUubWVzc2FnZXx8IlVua25vd24gZXJyb3IgZHVyaW5nIHRva2VuIHJldm9jYXRpb24ifSl9fSx5PShlLHQpPT57aWYoIWkpcmV0dXJuITE7dHJ5e2NvbnN0IHI9bmV3IFVSTChpKS5vcmlnaW4sbz1uZXcgVVJMKGUuZmV0Y2hVcmwpO3JldHVybiBvLm9yaWdpbj09PXImJm8ucGF0aG5hbWU9PT10fWNhdGNoKGUpe3JldHVybiExfX07YWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsZT0+e2NvbnN0IHI9ZS5kYXRhLG89dChlLnBvcnRzLDEpWzBdO2lmKCEoInR5cGUiaW4gcil8fCJpbml0IiE9PXIudHlwZSlyZXR1cm4idHlwZSJpbiByJiYiY2xlYXIiPT09ci50eXBlPyhhPXt9LHZvaWQobnVsbD09b3x8by5wb3N0TWVzc2FnZSh7b2s6ITB9KSkpOiJ0eXBlImluIHImJiJyZXZva2UiPT09ci50eXBlP3kociwiL29hdXRoL3Jldm9rZSIpP3ZvaWQgcChlKTp2b2lkKG51bGw9PW98fG8ucG9zdE1lc3NhZ2Uoe29rOiExLGpzb246e2Vycm9yOiJpbnZhbGlkX2ZldGNoX3VybCIsZXJyb3JfZGVzY3JpcHRpb246IlVuYXV0aG9yaXplZCBmZXRjaCBVUkwifSxoZWFkZXJzOnt9fSkpOnZvaWQoImZldGNoVXJsImluIHImJnkociwiL29hdXRoL3Rva2VuIik/ZChlKTpudWxsPT1vfHxvLnBvc3RNZXNzYWdlKHtvazohMSxqc29uOntlcnJvcjoiaW52YWxpZF9mZXRjaF91cmwiLGVycm9yX2Rlc2NyaXB0aW9uOiJVbmF1dGhvcml6ZWQgZmV0Y2ggVVJMIn0saGVhZGVyczp7fX0pKTtpZihudWxsPT09aSl0cnl7bmV3IFVSTChyLmFsbG93ZWRCYXNlVXJsKSxpPXIuYWxsb3dlZEJhc2VVcmx9Y2F0Y2goZSl7cmV0dXJufX0pfSgpOwoK",null,false),new Worker(it,e)};class at{constructor(e,t){this.cache=e,this.clientId=t,this.manifestKey=this.createManifestKeyFrom(this.clientId)}async add(e){var t;const n=new Set((null===(t=await this.cache.get(this.manifestKey))||void 0===t?void 0:t.keys)||[]);n.add(e),await this.cache.set(this.manifestKey,{keys:[...n]})}async remove(e){const t=await this.cache.get(this.manifestKey);if(t){const n=new Set(t.keys);return n.delete(e),n.size>0?await this.cache.set(this.manifestKey,{keys:[...n]}):await this.cache.remove(this.manifestKey)}}get(){return this.cache.get(this.manifestKey)}clear(){return this.cache.remove(this.manifestKey)}createManifestKeyFrom(e){return"".concat(ze,"::").concat(e)}}const ct="auth0.is.authenticated",ut={memory:()=>(new He).enclosedCache,localstorage:()=>new Ze},lt=e=>ut[e],dt=e=>{const t=e.openUrl,n=e.onRedirect,o=a(e,["openUrl","onRedirect"]);return Object.assign(Object.assign({},o),{openUrl:!1===t||t?t:n})},ht={NONCE:"nonce",KEYPAIR:"keypair"};class pt{constructor(e){this.clientId=e}getVersion(){return 1}createDbHandle(){const e=window.indexedDB.open("auth0-spa-js",this.getVersion());return new Promise((t,n)=>{e.onupgradeneeded=()=>Object.values(ht).forEach(t=>e.result.createObjectStore(t)),e.onerror=()=>n(e.error),e.onsuccess=()=>t(e.result)})}async getDbHandle(){return this.dbHandle||(this.dbHandle=await this.createDbHandle()),this.dbHandle}async executeDbRequest(e,t,n){const o=n((await this.getDbHandle()).transaction(e,t).objectStore(e));return new Promise((e,t)=>{o.onsuccess=()=>e(o.result),o.onerror=()=>t(o.error)})}buildKey(e){const t=e?"_".concat(e):"auth0";return"".concat(this.clientId,"::").concat(t)}setNonce(e,t){return this.save(ht.NONCE,this.buildKey(t),e)}setKeyPair(e){return this.save(ht.KEYPAIR,this.buildKey(),e)}async save(e,t,n){await this.executeDbRequest(e,"readwrite",e=>e.put(n,t))}findNonce(e){return this.find(ht.NONCE,this.buildKey(e))}findKeyPair(){return this.find(ht.KEYPAIR,this.buildKey())}find(e,t){return this.executeDbRequest(e,"readonly",e=>e.get(t))}async deleteBy(e,t){const n=await this.executeDbRequest(e,"readonly",e=>e.getAllKeys());await Promise.all((null==n?void 0:n.filter(t).map(t=>this.executeDbRequest(e,"readwrite",e=>e.delete(t))))||[])}deleteByClientId(e,t){return this.deleteBy(e,e=>"string"==typeof e&&e.startsWith("".concat(t,"::")))}clearNonces(){return this.deleteByClientId(ht.NONCE,this.clientId)}clearKeyPairs(){return this.deleteByClientId(ht.KEYPAIR,this.clientId)}}class ft{constructor(e){this.storage=new pt(e)}getNonce(e){return this.storage.findNonce(e)}setNonce(e,t){return this.storage.setNonce(e,t)}async getOrGenerateKeyPair(){let e=await this.storage.findKeyPair();return e||(e=await async function(e,t){var n;let o;return o={name:"ECDSA",namedCurve:"P-256"},crypto.subtle.generateKey(o,null!==(n=null==t?void 0:t.extractable)&&void 0!==n&&n,["sign","verify"])}(0,{extractable:!1}),await this.storage.setKeyPair(e)),e}async generateProof(e){const t=await this.getOrGenerateKeyPair();return function(e){let t=e.keyPair,n=e.url,o=e.method,r=e.nonce,i=e.accessToken;const s=function(e){const t=new URL(e);return t.search="",t.hash="",t.href}(n);return Ae(t,s,o,r,i)}(Object.assign({keyPair:t},e))}async calculateThumbprint(){return function(e){return async function(e){if(!Re(e))throw new TypeError('"publicKey" must be a public CryptoKey');if(!0!==e.extractable)throw new TypeError('"publicKey.extractable" must be true');const t=await xe(e);let n;switch(t.kty){case"EC":n={crv:t.crv,kty:t.kty,x:t.x,y:t.y};break;case"OKP":n={crv:t.crv,kty:t.kty,x:t.x};break;case"RSA":n={e:t.e,kty:t.kty,n:t.n};break;default:throw new Se("unsupported JWK kty")}return Te(await crypto.subtle.digest({name:"SHA-256"},be(JSON.stringify(n))))}(e.publicKey)}(await this.getOrGenerateKeyPair())}async clear(){await Promise.all([this.storage.clearNonces(),this.storage.clearKeyPairs()])}}var mt;!function(e){e.Bearer="Bearer",e.DPoP="DPoP"}(mt||(mt={}));class yt{constructor(e,t){this.hooks=t,this.config=Object.assign(Object.assign({},e),{fetch:e.fetch||("undefined"==typeof window?fetch:window.fetch.bind(window))})}isAbsoluteUrl(e){return/^(https?:)?\/\//i.test(e)}buildUrl(e,t){if(t){if(this.isAbsoluteUrl(t))return t;if(e)return"".concat(e.replace(/\/?\/$/,""),"/").concat(t.replace(/^\/+/,""))}throw new TypeError("`url` must be absolute or `baseUrl` non-empty.")}getAccessToken(e){return this.config.getAccessToken?this.config.getAccessToken(e):this.hooks.getAccessToken(e)}extractUrl(e){return"string"==typeof e?e:e instanceof URL?e.href:e.url}buildBaseRequest(e,t){if(!this.config.baseUrl)return new Request(e,t);const n=this.buildUrl(this.config.baseUrl,this.extractUrl(e)),o=e instanceof Request?new Request(n,e):n;return new Request(o,t)}setAuthorizationHeader(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:mt.Bearer;e.headers.set("authorization","".concat(n," ").concat(t))}async setDpopProofHeader(e,t){if(!this.config.dpopNonceId)return;const n=await this.hooks.getDpopNonce(),o=await this.hooks.generateDpopProof({accessToken:t,method:e.method,nonce:n,url:e.url});e.headers.set("dpop",o)}async prepareRequest(e,t){const n=await this.getAccessToken(t);if(void 0===n)throw new j("missing_access_token","No access token available");let o,r;"string"==typeof n?(o=this.config.dpopNonceId?mt.DPoP:mt.Bearer,r=n):(o=n.token_type,r=n.access_token),this.setAuthorizationHeader(e,r,o),o===mt.DPoP&&await this.setDpopProofHeader(e,r)}getHeader(e,t){return Array.isArray(e)?new Headers(e).get(t)||"":"function"==typeof e.get?e.get(t)||"":e[t]||""}hasUseDpopNonceError(e){if(401!==e.status)return!1;const t=this.getHeader(e.headers,"www-authenticate");return t.includes("invalid_dpop_nonce")||t.includes("use_dpop_nonce")}async handleResponse(e,t){const n=this.getHeader(e.headers,Ie);if(n&&await this.hooks.setDpopNonce(n),!this.hasUseDpopNonceError(e))return e;if(!n||!t.onUseDpopNonceError)throw new H(n);return t.onUseDpopNonceError()}async internalFetchWithAuth(e,t,n,o){const r=this.buildBaseRequest(e,t);await this.prepareRequest(r,o);const i=await this.config.fetch(r);return this.handleResponse(i,n)}fetchWithAuth(e,t,n){const o={onUseDpopNonceError:()=>this.internalFetchWithAuth(e,t,Object.assign(Object.assign({},o),{onUseDpopNonceError:void 0}),n)};return this.internalFetchWithAuth(e,t,o,n)}}class wt{constructor(e,t){this.myAccountFetcher=e,this.apiBase=t}async connectAccount(e){const t=await this.myAccountFetcher.fetchWithAuth("".concat(this.apiBase,"v1/connected-accounts/connect"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)},{scope:["create:me:connected_accounts"]});return this._handleResponse(t)}async completeAccount(e){const t=await this.myAccountFetcher.fetchWithAuth("".concat(this.apiBase,"v1/connected-accounts/complete"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)},{scope:["create:me:connected_accounts"]});return this._handleResponse(t)}async getFactors(){const e=await this.myAccountFetcher.fetchWithAuth("".concat(this.apiBase,"v1/factors"),{method:"GET"},{scope:["read:me:factors"]});return(await this._handleResponse(e)).factors}async getAuthenticationMethods(e){const t=e?"?".concat(new URLSearchParams({type:e})):"",n=await this.myAccountFetcher.fetchWithAuth("".concat(this.apiBase,"v1/authentication-methods").concat(t),{method:"GET"},{scope:["read:me:authentication_methods"]});return(await this._handleResponse(n)).authentication_methods}async getAuthenticationMethod(e){const t=await this.myAccountFetcher.fetchWithAuth("".concat(this.apiBase,"v1/authentication-methods/").concat(encodeURIComponent(e)),{method:"GET"},{scope:["read:me:authentication_methods"]});return this._handleResponse(t)}async deleteAuthenticationMethod(e){const t=await this.myAccountFetcher.fetchWithAuth("".concat(this.apiBase,"v1/authentication-methods/").concat(encodeURIComponent(e)),{method:"DELETE"},{scope:["delete:me:authentication_methods"]});t.ok||await this._handleResponse(t)}async updateAuthenticationMethod(e,t){const n=await this.myAccountFetcher.fetchWithAuth("".concat(this.apiBase,"v1/authentication-methods/").concat(encodeURIComponent(e)),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)},{scope:["update:me:authentication_methods"]});return this._handleResponse(n)}async enrollmentChallenge(e){var t;const n=await this.myAccountFetcher.fetchWithAuth("".concat(this.apiBase,"v1/authentication-methods"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)},{scope:["create:me:authentication_methods"]}),o=await this._handleResponse(n),r=null!==(t=n.headers.get("location"))&&void 0!==t?t:"",i=decodeURIComponent(r.split("/").pop()||"");return Object.assign(Object.assign({},o),{id:i,location:r})}async enrollmentVerify(e){const t=e,n=t.location;t.type;const o=a(t,["location","type"]),r=await this.myAccountFetcher.fetchWithAuth("".concat(n,"/verify"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(o)},{scope:["create:me:authentication_methods"]});return this._handleResponse(r)}async _handleResponse(e){let t;try{t=await e.text(),t=JSON.parse(t)}catch(n){throw new gt({type:"invalid_json",status:e.status,title:"Invalid JSON response",detail:t||String(n)})}if(e.ok)return t;throw new gt(t)}}class gt extends Error{constructor(e){let t=e.type,n=e.status,o=e.title,r=e.detail,i=e.validation_errors;super(r),this.name="MyAccountApiError",this.type=t,this.status=n,this.title=o,this.detail=r,this.validation_errors=i,Object.setPrototypeOf(this,gt.prototype)}}const vt={otp:{authenticatorTypes:["otp"]},sms:{authenticatorTypes:["oob"],oobChannels:["sms"]},email:{authenticatorTypes:["oob"],oobChannels:["email"]},push:{authenticatorTypes:["oob"],oobChannels:["auth0"]},voice:{authenticatorTypes:["oob"],oobChannels:["voice"]}};var bt,_t;let kt;if("undefined"==typeof navigator||null===(bt=navigator.userAgent)||void 0===bt||null===(_t=bt.startsWith)||void 0===_t||!_t.call(bt,"Mozilla/5.0 ")){const e="v3.8.6";kt="".concat("oauth4webapi","/").concat(e)}function Tt(e,t){if(null==e)return!1;try{return e instanceof t||Object.getPrototypeOf(e)[Symbol.toStringTag]===t.prototype[Symbol.toStringTag]}catch(e){return!1}}const St="ERR_INVALID_ARG_VALUE",Et="ERR_INVALID_ARG_TYPE";function Pt(e,t,n){const o=new TypeError(e,{cause:n});return Object.assign(o,{code:t}),o}const Ct=Symbol(),Rt=Symbol(),At=Symbol(),xt=Symbol(),It=Symbol(),Ot=Symbol(),jt=new TextEncoder,Wt=new TextDecoder;function Nt(e){return"string"==typeof e?jt.encode(e):Wt.decode(e)}let Ut,Mt;if(Uint8Array.prototype.toBase64)Ut=e=>(e instanceof ArrayBuffer&&(e=new Uint8Array(e)),e.toBase64({alphabet:"base64url",omitPadding:!0}));else{const e=32768;Ut=t=>{t instanceof ArrayBuffer&&(t=new Uint8Array(t));const n=[];for(let o=0;o<t.byteLength;o+=e)n.push(String.fromCharCode.apply(null,t.subarray(o,o+e)));return btoa(n.join("")).replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}}function Lt(e){return"string"==typeof e?Mt(e):Ut(e)}Mt=Uint8Array.fromBase64?e=>{try{return Uint8Array.fromBase64(e,{alphabet:"base64url"})}catch(e){throw Pt("The input to be decoded is not correctly encoded.",St,e)}}:e=>{try{const t=atob(e.replace(/-/g,"+").replace(/_/g,"/").replace(/\s/g,"")),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}catch(e){throw Pt("The input to be decoded is not correctly encoded.",St,e)}};class Kt extends Error{constructor(e,t){var n;super(e,t),v(this,"code",void 0),this.name=this.constructor.name,this.code=Zn,null===(n=Error.captureStackTrace)||void 0===n||n.call(Error,this,this.constructor)}}class zt extends Error{constructor(e,t){var n;super(e,t),v(this,"code",void 0),this.name=this.constructor.name,null!=t&&t.code&&(this.code=null==t?void 0:t.code),null===(n=Error.captureStackTrace)||void 0===n||n.call(Error,this,this.constructor)}}function Jt(e,t,n){return new zt(e,{code:t,cause:n})}function Dt(e){return null!==e&&"object"==typeof e&&!Array.isArray(e)}function Zt(e){Tt(e,Headers)&&(e=Object.fromEntries(e.entries()));const t=new Headers(null!=e?e:{});if(kt&&!t.has("user-agent")&&t.set("user-agent",kt),t.has("authorization"))throw Pt('"options.headers" must not include the "authorization" header name',St);return t}function Ht(e,t){if(void 0!==t){if("function"==typeof t&&(t=t(e.href)),!(t instanceof AbortSignal))throw Pt('"options.signal" must return or be an instance of AbortSignal',Et);return t}}function Ft(e){return e.includes("//")?e.replace("//","/"):e}function Gt(e,t,n,o,r){try{if("number"!=typeof e||!Number.isFinite(e))throw Pt("".concat(n," must be a number"),Et,r);if(e>0)return;if(t){if(0!==e)throw Pt("".concat(n," must be a non-negative number"),St,r);return}throw Pt("".concat(n," must be a positive number"),St,r)}catch(e){if(o)throw Jt(e.message,o,r);throw e}}function Vt(e,t,n,o){try{if("string"!=typeof e)throw Pt("".concat(t," must be a string"),Et,o);if(0===e.length)throw Pt("".concat(t," must not be empty"),St,o)}catch(e){if(n)throw Jt(e.message,n,o);throw e}}function Xt(e){!function(e,t){if(kn(e)!==t)throw function(e){let t='"response" content-type must be ';for(var n=arguments.length,o=new Array(n>1?n-1:0),r=1;r<n;r++)o[r-1]=arguments[r];if(o.length>2){const e=o.pop();t+="".concat(o.join(", "),", or ").concat(e)}else 2===o.length?t+="".concat(o[0]," or ").concat(o[1]):t+=o[0];return Jt(t,Xn,e)}(e,t)}(e,"application/json")}function Yt(){return Lt(crypto.getRandomValues(new Uint8Array(32)))}function qt(e){switch(e.algorithm.name){case"RSA-PSS":return function(e){switch(e.algorithm.hash.name){case"SHA-256":return"PS256";case"SHA-384":return"PS384";case"SHA-512":return"PS512";default:throw new Kt("unsupported RsaHashedKeyAlgorithm hash name",{cause:e})}}(e);case"RSASSA-PKCS1-v1_5":return function(e){switch(e.algorithm.hash.name){case"SHA-256":return"RS256";case"SHA-384":return"RS384";case"SHA-512":return"RS512";default:throw new Kt("unsupported RsaHashedKeyAlgorithm hash name",{cause:e})}}(e);case"ECDSA":return function(e){switch(e.algorithm.namedCurve){case"P-256":return"ES256";case"P-384":return"ES384";case"P-521":return"ES512";default:throw new Kt("unsupported EcKeyAlgorithm namedCurve",{cause:e})}}(e);case"Ed25519":case"ML-DSA-44":case"ML-DSA-65":case"ML-DSA-87":return e.algorithm.name;case"EdDSA":return"Ed25519";default:throw new Kt("unsupported CryptoKey algorithm name",{cause:e})}}function Bt(e){const t=null==e?void 0:e[Rt];return"number"==typeof t&&Number.isFinite(t)?t:0}function Qt(e){const t=null==e?void 0:e[At];return"number"==typeof t&&Number.isFinite(t)&&-1!==Math.sign(t)?t:30}function $t(){return Math.floor(Date.now()/1e3)}function en(e){if("object"!=typeof e||null===e)throw Pt('"as" must be an object',Et);Vt(e.issuer,'"as.issuer"')}function tn(e){if("object"!=typeof e||null===e)throw Pt('"client" must be an object',Et);Vt(e.client_id,'"client.client_id"')}function nn(e){return Vt(e,'"clientSecret"'),(t,n,o,r)=>{o.set("client_id",n.client_id),o.set("client_secret",e)}}function on(e,t){const n=(i=e)instanceof CryptoKey?{key:i}:(null==i?void 0:i.key)instanceof CryptoKey?(void 0!==i.kid&&Vt(i.kid,'"kid"'),{key:i.key,kid:i.kid}):{},o=n.key,r=n.kid;var i;return function(e,t){if(function(e,t){if(!(e instanceof CryptoKey))throw Pt("".concat(t," must be a CryptoKey"),Et)}(e,t),"private"!==e.type)throw Pt("".concat(t," must be a private CryptoKey"),St)}(o,'"clientPrivateKey.key"'),async(e,n,i,s)=>{var a;const c={alg:qt(o),kid:r},u=function(e,t){const n=$t()+Bt(t);return{jti:Yt(),aud:e.issuer,exp:n+60,iat:n,nbf:n,iss:t.client_id,sub:t.client_id}}(e,n);null==t||null===(a=t[It])||void 0===a||a.call(t,c,u),i.set("client_id",n.client_id),i.set("client_assertion_type","urn:ietf:params:oauth:client-assertion-type:jwt-bearer"),i.set("client_assertion",await async function(e,t,n){if(!n.usages.includes("sign"))throw Pt('CryptoKey instances used for signing assertions must include "sign" in their "usages"',St);const o="".concat(Lt(Nt(JSON.stringify(e))),".").concat(Lt(Nt(JSON.stringify(t)))),r=Lt(await crypto.subtle.sign(function(e){switch(e.algorithm.name){case"ECDSA":return{name:e.algorithm.name,hash:so(e)};case"RSA-PSS":switch(io(e),e.algorithm.hash.name){case"SHA-256":case"SHA-384":case"SHA-512":return{name:e.algorithm.name,saltLength:parseInt(e.algorithm.hash.name.slice(-3),10)>>3};default:throw new Kt("unsupported RSA-PSS hash name",{cause:e})}case"RSASSA-PKCS1-v1_5":return io(e),e.algorithm.name;case"ML-DSA-44":case"ML-DSA-65":case"ML-DSA-87":case"Ed25519":return e.algorithm.name}throw new Kt("unsupported CryptoKey algorithm name",{cause:e})}(n),n,Nt(o)));return"".concat(o,".").concat(r)}(c,u,o))}}const rn=URL.parse?(e,t)=>URL.parse(e,t):(e,t)=>{try{return new URL(e,t)}catch(e){return null}};function sn(e,t){if(t&&"https:"!==e.protocol)throw Jt("only requests to HTTPS are allowed",qn,e);if("https:"!==e.protocol&&"http:"!==e.protocol)throw Jt("only HTTP and HTTPS requests are allowed",Bn,e)}function an(e,t,n,o){let r;if("string"!=typeof e||!(r=rn(e)))throw Jt("authorization server metadata does not contain a valid ".concat(n?'"as.mtls_endpoint_aliases.'.concat(t,'"'):'"as.'.concat(t,'"')),void 0===e?to:no,{attribute:n?"mtls_endpoint_aliases.".concat(t):t});return sn(r,o),r}function cn(e,t,n,o){return n&&e.mtls_endpoint_aliases&&t in e.mtls_endpoint_aliases?an(e.mtls_endpoint_aliases[t],t,n,o):an(e[t],t,n,o)}class un extends Error{constructor(e,t){var n;super(e,t),v(this,"cause",void 0),v(this,"code",void 0),v(this,"error",void 0),v(this,"status",void 0),v(this,"error_description",void 0),v(this,"response",void 0),this.name=this.constructor.name,this.code=Dn,this.cause=t.cause,this.error=t.cause.error,this.status=t.response.status,this.error_description=t.cause.error_description,Object.defineProperty(this,"response",{enumerable:!1,value:t.response}),null===(n=Error.captureStackTrace)||void 0===n||n.call(Error,this,this.constructor)}}class ln extends Error{constructor(e,t){var n,o;super(e,t),v(this,"cause",void 0),v(this,"code",void 0),v(this,"error",void 0),v(this,"error_description",void 0),this.name=this.constructor.name,this.code=Hn,this.cause=t.cause,this.error=t.cause.get("error"),this.error_description=null!==(n=t.cause.get("error_description"))&&void 0!==n?n:void 0,null===(o=Error.captureStackTrace)||void 0===o||o.call(Error,this,this.constructor)}}class dn extends Error{constructor(e,t){var n;super(e,t),v(this,"cause",void 0),v(this,"code",void 0),v(this,"response",void 0),v(this,"status",void 0),this.name=this.constructor.name,this.code=Jn,this.cause=t.cause,this.status=t.response.status,this.response=t.response,Object.defineProperty(this,"response",{enumerable:!1}),null===(n=Error.captureStackTrace)||void 0===n||n.call(Error,this,this.constructor)}}const hn="[a-zA-Z0-9!#$%&\\'\\*\\+\\-\\.\\^_`\\|~]+",pn="("+hn+')\\s*=\\s*"((?:[^"\\\\]|\\\\[\\s\\S])*)"',fn="("+hn+")\\s*=\\s*("+hn+")",mn=new RegExp("^[,\\s]*("+hn+")"),yn=new RegExp("^[,\\s]*"+pn+"[,\\s]*(.*)"),wn=new RegExp("^[,\\s]*"+fn+"[,\\s]*(.*)"),gn=new RegExp("^([a-zA-Z0-9\\-\\._\\~\\+\\/]+={0,2})(?:$|[,\\s])(.*)");async function vn(e,t,n){if(e.status!==t){let t;var o;if(xn(e),t=await async function(e){if(e.status>399&&e.status<500){ro(e),Xt(e);try{const t=await e.clone().json();if(Dt(t)&&"string"==typeof t.error&&t.error.length)return t}catch(e){}}}(e))throw await(null===(o=e.body)||void 0===o?void 0:o.cancel()),new un("server responded with an error in the response body",{cause:t,response:e});throw Jt('"response" is not a conform '.concat(n," response (unexpected HTTP status code)"),Yn,e)}}function bn(e){if(!Nn.has(e))throw Pt('"options.DPoP" is not a valid DPoPHandle',St)}const _n=Symbol();function kn(e){var t;return null===(t=e.headers.get("content-type"))||void 0===t?void 0:t.split(";")[0]}async function Tn(e,t,n,o,r){if(en(e),tn(t),!Tt(o,Response))throw Pt('"response" must be an instance of Response',Et);if(xn(o),200!==o.status)throw Jt('"response" is not a conform UserInfo Endpoint response (unexpected HTTP status code)',Yn,o);let i;if(ro(o),"application/jwt"===kn(o)){const n=await ao(await o.text(),co.bind(void 0,t.userinfo_signed_response_alg,e.userinfo_signing_alg_values_supported,void 0),Bt(t),Qt(t),null==r?void 0:r[Ot]).then(In.bind(void 0,t.client_id)).then(jn.bind(void 0,e)),s=n.claims,a=n.jwt;Cn.set(o,a),i=s}else{if(t.userinfo_signed_response_alg)throw Jt("JWT UserInfo Response expected",Fn,o);i=await po(o)}if(Vt(i.sub,'"response" body "sub" property',Vn,{body:i}),n===_n);else if(Vt(n,'"expectedSubject"'),i.sub!==n)throw Jt('unexpected "response" body "sub" property value',eo,{expected:n,body:i,attribute:"sub"});return i}async function Sn(e,t,n,o,r,i,s){return await n(e,t,r,i),i.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"),((null==s?void 0:s[xt])||fetch)(o.href,{body:r,headers:Object.fromEntries(i.entries()),method:"POST",redirect:"manual",signal:Ht(o,null==s?void 0:s.signal)})}async function En(e,t,n,o,r,i){var s;const a=cn(e,"token_endpoint",t.use_mtls_endpoint_aliases,!0!==(null==i?void 0:i[Ct]));r.set("grant_type",o);const c=Zt(null==i?void 0:i.headers);c.set("accept","application/json"),void 0!==(null==i?void 0:i.DPoP)&&(bn(i.DPoP),await i.DPoP.addProof(a,c,"POST"));const u=await Sn(e,t,n,a,r,c,i);return null==i||null===(s=i.DPoP)||void 0===s||s.cacheNonce(u,a),u}const Pn=new WeakMap,Cn=new WeakMap;function Rn(e){if(!e.id_token)return;const t=Pn.get(e);if(!t)throw Pt('"ref" was already garbage collected or did not resolve from the proper sources',St);return t}async function An(e,t,n,o,r,i){if(en(e),tn(t),!Tt(n,Response))throw Pt('"response" must be an instance of Response',Et);await vn(n,200,"Token Endpoint"),ro(n);const s=await po(n);if(Vt(s.access_token,'"response" body "access_token" property',Vn,{body:s}),Vt(s.token_type,'"response" body "token_type" property',Vn,{body:s}),s.token_type=s.token_type.toLowerCase(),void 0!==s.expires_in){let e="number"!=typeof s.expires_in?parseFloat(s.expires_in):s.expires_in;Gt(e,!0,'"response" body "expires_in" property',Vn,{body:s}),s.expires_in=e}if(void 0!==s.refresh_token&&Vt(s.refresh_token,'"response" body "refresh_token" property',Vn,{body:s}),void 0!==s.scope&&"string"!=typeof s.scope)throw Jt('"response" body "scope" property must be a string',Vn,{body:s});if(void 0!==s.id_token){Vt(s.id_token,'"response" body "id_token" property',Vn,{body:s});const i=["aud","exp","iat","iss","sub"];!0===t.require_auth_time&&i.push("auth_time"),void 0!==t.default_max_age&&(Gt(t.default_max_age,!0,'"client.default_max_age"'),i.push("auth_time")),null!=o&&o.length&&i.push(...o);const a=await ao(s.id_token,co.bind(void 0,t.id_token_signed_response_alg,e.id_token_signing_alg_values_supported,"RS256"),Bt(t),Qt(t),r).then(Ln.bind(void 0,i)).then(Wn.bind(void 0,e)).then(On.bind(void 0,t.client_id)),c=a.claims,u=a.jwt;if(Array.isArray(c.aud)&&1!==c.aud.length){if(void 0===c.azp)throw Jt('ID Token "aud" (audience) claim includes additional untrusted audiences',$n,{claims:c,claim:"aud"});if(c.azp!==t.client_id)throw Jt('unexpected ID Token "azp" (authorized party) claim value',$n,{expected:t.client_id,claims:c,claim:"azp"})}void 0!==c.auth_time&&Gt(c.auth_time,!0,'ID Token "auth_time" (authentication time)',Vn,{claims:c}),Cn.set(n,u),Pn.set(s,c)}if(void 0!==(null==i?void 0:i[s.token_type]))i[s.token_type](n,s);else if("dpop"!==s.token_type&&"bearer"!==s.token_type)throw new Kt("unsupported `token_type` value",{cause:{body:s}});return s}function xn(e){let t;if(t=function(e){if(!Tt(e,Response))throw Pt('"response" must be an instance of Response',Et);const t=e.headers.get("www-authenticate");if(null===t)return;const n=[];let o=t;for(;o;){var r;let t=o.match(mn);const c=null===(r=t)||void 0===r?void 0:r[1].toLowerCase();if(!c)return;const u=o.substring(t[0].length);if(u&&!u.match(/^[\s,]/))return;const l=u.match(/^\s+(.*)$/),d=!!l;o=l?l[1]:void 0;const h={};let p;if(d)for(;o;){let n,r;if(t=o.match(yn)){var i=T(t,4);if(n=i[1],r=i[2],o=i[3],r.includes("\\"))try{r=JSON.parse('"'.concat(r,'"'))}catch(e){}h[n.toLowerCase()]=r}else{if(!(t=o.match(wn))){if(t=o.match(gn)){if(Object.keys(h).length)break;var s=T(t,3);p=s[1],o=s[2];break}return}var a=T(t,4);n=a[1],r=a[2],o=a[3],h[n.toLowerCase()]=r}}else o=u||void 0;const f={scheme:c,parameters:h};p&&(f.token68=p),n.push(f)}return n.length?n:void 0}(e))throw new dn("server responded with a challenge in the WWW-Authenticate HTTP Header",{cause:t,response:e})}function In(e,t){return void 0!==t.claims.aud?On(e,t):t}function On(e,t){if(Array.isArray(t.claims.aud)){if(!t.claims.aud.includes(e))throw Jt('unexpected JWT "aud" (audience) claim value',$n,{expected:e,claims:t.claims,claim:"aud"})}else if(t.claims.aud!==e)throw Jt('unexpected JWT "aud" (audience) claim value',$n,{expected:e,claims:t.claims,claim:"aud"});return t}function jn(e,t){return void 0!==t.claims.iss?Wn(e,t):t}function Wn(e,t){var n,o;const r=null!==(n=null===(o=e[mo])||void 0===o?void 0:o.call(e,t))&&void 0!==n?n:e.issuer;if(t.claims.iss!==r)throw Jt('unexpected JWT "iss" (issuer) claim value',$n,{expected:r,claims:t.claims,claim:"iss"});return t}const Nn=new WeakSet,Un=Symbol(),Mn={aud:"audience",c_hash:"code hash",client_id:"client id",exp:"expiration time",iat:"issued at",iss:"issuer",jti:"jwt id",nonce:"nonce",s_hash:"state hash",sub:"subject",ath:"access token hash",htm:"http method",htu:"http uri",cnf:"confirmation",auth_time:"authentication time"};function Ln(e,t){for(const n of e)if(void 0===t.claims[n])throw Jt('JWT "'.concat(n,'" (').concat(Mn[n],") claim missing"),Vn,{claims:t.claims});return t}const Kn=Symbol(),zn=Symbol();const Jn="OAUTH_WWW_AUTHENTICATE_CHALLENGE",Dn="OAUTH_RESPONSE_BODY_ERROR",Zn="OAUTH_UNSUPPORTED_OPERATION",Hn="OAUTH_AUTHORIZATION_RESPONSE_ERROR",Fn="OAUTH_JWT_USERINFO_EXPECTED",Gn="OAUTH_PARSE_ERROR",Vn="OAUTH_INVALID_RESPONSE",Xn="OAUTH_RESPONSE_IS_NOT_JSON",Yn="OAUTH_RESPONSE_IS_NOT_CONFORM",qn="OAUTH_HTTP_REQUEST_FORBIDDEN",Bn="OAUTH_REQUEST_PROTOCOL_FORBIDDEN",Qn="OAUTH_JWT_TIMESTAMP_CHECK_FAILED",$n="OAUTH_JWT_CLAIM_COMPARISON_FAILED",eo="OAUTH_JSON_ATTRIBUTE_COMPARISON_FAILED",to="OAUTH_MISSING_SERVER_METADATA",no="OAUTH_INVALID_SERVER_METADATA";async function oo(e){if(!Tt(e,Response))throw Pt('"response" must be an instance of Response',Et);await vn(e,200,"Revocation Endpoint")}function ro(e){if(e.bodyUsed)throw Pt('"response" body has been used already',St)}function io(e){const t=e.algorithm;if("number"!=typeof t.modulusLength||t.modulusLength<2048)throw new Kt("unsupported ".concat(t.name," modulusLength"),{cause:e})}function so(e){switch(e.algorithm.namedCurve){case"P-256":return"SHA-256";case"P-384":return"SHA-384";case"P-521":return"SHA-512";default:throw new Kt("unsupported ECDSA namedCurve",{cause:e})}}async function ao(e,t,n,o,r){let i,s,a=e.split("."),c=a[0],u=a[1],l=a.length;if(5===l){if(void 0===r)throw new Kt("JWE decryption is not configured",{cause:e});var d=(e=await r(e)).split(".");c=d[0],u=d[1],l=d.length}if(3!==l)throw Jt("Invalid JWT",Vn,e);try{i=JSON.parse(Nt(Lt(c)))}catch(e){throw Jt("failed to parse JWT Header body as base64url encoded JSON",Gn,e)}if(!Dt(i))throw Jt("JWT Header must be a top level object",Vn,e);if(t(i),void 0!==i.crit)throw new Kt('no JWT "crit" header parameter extensions are supported',{cause:{header:i}});try{s=JSON.parse(Nt(Lt(u)))}catch(e){throw Jt("failed to parse JWT Payload body as base64url encoded JSON",Gn,e)}if(!Dt(s))throw Jt("JWT Payload must be a top level object",Vn,e);const h=$t()+n;if(void 0!==s.exp){if("number"!=typeof s.exp)throw Jt('unexpected JWT "exp" (expiration time) claim type',Vn,{claims:s});if(s.exp<=h-o)throw Jt('unexpected JWT "exp" (expiration time) claim value, expiration is past current timestamp',Qn,{claims:s,now:h,tolerance:o,claim:"exp"})}if(void 0!==s.iat&&"number"!=typeof s.iat)throw Jt('unexpected JWT "iat" (issued at) claim type',Vn,{claims:s});if(void 0!==s.iss&&"string"!=typeof s.iss)throw Jt('unexpected JWT "iss" (issuer) claim type',Vn,{claims:s});if(void 0!==s.nbf){if("number"!=typeof s.nbf)throw Jt('unexpected JWT "nbf" (not before) claim type',Vn,{claims:s});if(s.nbf>h+o)throw Jt('unexpected JWT "nbf" (not before) claim value',Qn,{claims:s,now:h,tolerance:o,claim:"nbf"})}if(void 0!==s.aud&&"string"!=typeof s.aud&&!Array.isArray(s.aud))throw Jt('unexpected JWT "aud" (audience) claim type',Vn,{claims:s});return{header:i,claims:s,jwt:e}}function co(e,t,n,o){if(void 0===e)if(Array.isArray(t)){if(!t.includes(o.alg))throw Jt('unexpected JWT "alg" header parameter',Vn,{header:o,expected:t,reason:"authorization server metadata"})}else{if(void 0===n)throw Jt('missing client or server configuration to verify used JWT "alg" header parameter',void 0,{client:e,issuer:t,fallback:n});if("string"==typeof n?o.alg!==n:"function"==typeof n?!n(o.alg):!n.includes(o.alg))throw Jt('unexpected JWT "alg" header parameter',Vn,{header:o,expected:n,reason:"default value"})}else if("string"==typeof e?o.alg!==e:!e.includes(o.alg))throw Jt('unexpected JWT "alg" header parameter',Vn,{header:o,expected:e,reason:"client configuration"})}function uo(e,t){const n=e.getAll(t),o=n[0];if(n.length>1)throw Jt('"'.concat(t,'" parameter must be provided only once'),Vn);return o}const lo=Symbol(),ho=Symbol();async function po(e){let t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Xt;try{t=await e.json()}catch(t){throw n(e),Jt('failed to parse "response" body as JSON',Gn,t)}if(!Dt(t))throw Jt('"response" body must be a top level object',Vn,{body:t});return t}const fo=Symbol(),mo=Symbol(),yo=new TextEncoder,wo=new TextDecoder,go=new TextDecoder("utf-8",{fatal:!0});function vo(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];const o=t.reduce((e,t)=>e+t.length,0),r=new Uint8Array(o);let i=0;for(const e of t)r.set(e,i),i+=e.length;return r}function bo(e){const t=new Uint8Array(e.length);for(let n=0;n<e.length;n++){const o=e.charCodeAt(n);if(o>127)throw new TypeError("non-ASCII string encountered in encode()");t[n]=o}return t}const _o=function(e){return new TypeError("CryptoKey does not support this operation, its ".concat(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"algorithm.name"," must be ").concat(e))};const ko=function(e,t){for(var n=arguments.length,o=new Array(n>2?n-2:0),r=2;r<n;r++)o[r-2]=arguments[r];return function(e,t){for(var n=arguments.length,o=new Array(n>2?n-2:0),r=2;r<n;r++)o[r-2]=arguments[r];if(o.length>2){const t=o.pop();e+="one of type ".concat(o.join(", "),", or ").concat(t,".")}else 2===o.length?e+="one of type ".concat(o[0]," or ").concat(o[1],"."):e+="of type ".concat(o[0],".");if(null==t)e+=" Received ".concat(t);else if("function"==typeof t&&t.name)e+=" Received function ".concat(t.name);else if("object"==typeof t&&null!=t){var i;null!==(i=t.constructor)&&void 0!==i&&i.name&&(e+=" Received an instance of ".concat(t.constructor.name))}return e}("Key for the ".concat(e," algorithm must be "),t,...o)};class To extends Error{constructor(e,t){var n;super(e,t),v(this,"code","ERR_JOSE_GENERIC"),this.name=this.constructor.name,null===(n=Error.captureStackTrace)||void 0===n||n.call(Error,this,this.constructor)}}v(To,"code","ERR_JOSE_GENERIC");class So extends To{constructor(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"unspecified",o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"unspecified";super(e,{cause:{claim:n,reason:o,payload:t}}),v(this,"code","ERR_JWT_CLAIM_VALIDATION_FAILED"),v(this,"claim",void 0),v(this,"reason",void 0),v(this,"payload",void 0),this.claim=n,this.reason=o,this.payload=t}}v(So,"code","ERR_JWT_CLAIM_VALIDATION_FAILED");class Eo extends To{constructor(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"unspecified",o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"unspecified";super(e,{cause:{claim:n,reason:o,payload:t}}),v(this,"code","ERR_JWT_EXPIRED"),v(this,"claim",void 0),v(this,"reason",void 0),v(this,"payload",void 0),this.claim=n,this.reason=o,this.payload=t}}v(Eo,"code","ERR_JWT_EXPIRED");class Po extends To{constructor(){super(...arguments),v(this,"code","ERR_JOSE_ALG_NOT_ALLOWED")}}v(Po,"code","ERR_JOSE_ALG_NOT_ALLOWED");class Co extends To{constructor(){super(...arguments),v(this,"code","ERR_JOSE_NOT_SUPPORTED")}}v(Co,"code","ERR_JOSE_NOT_SUPPORTED"),v(class extends To{constructor(){super(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"decryption operation failed",arguments.length>1?arguments[1]:void 0),v(this,"code","ERR_JWE_DECRYPTION_FAILED")}},"code","ERR_JWE_DECRYPTION_FAILED"),v(class extends To{constructor(){super(...arguments),v(this,"code","ERR_JWE_INVALID")}},"code","ERR_JWE_INVALID");class Ro extends To{constructor(){super(...arguments),v(this,"code","ERR_JWS_INVALID")}}v(Ro,"code","ERR_JWS_INVALID");class Ao extends To{constructor(){super(...arguments),v(this,"code","ERR_JWT_INVALID")}}v(Ao,"code","ERR_JWT_INVALID"),v(class extends To{constructor(){super(...arguments),v(this,"code","ERR_JWK_INVALID")}},"code","ERR_JWK_INVALID");class xo extends To{constructor(){super(...arguments),v(this,"code","ERR_JWKS_INVALID")}}v(xo,"code","ERR_JWKS_INVALID");class Io extends To{constructor(){super(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"no applicable key found in the JSON Web Key Set",arguments.length>1?arguments[1]:void 0),v(this,"code","ERR_JWKS_NO_MATCHING_KEY")}}v(Io,"code","ERR_JWKS_NO_MATCHING_KEY");class Oo extends To{constructor(){super(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"multiple matching keys found in the JSON Web Key Set",arguments.length>1?arguments[1]:void 0),v(this,Symbol.asyncIterator,S(function*(){})),v(this,"code","ERR_JWKS_MULTIPLE_MATCHING_KEYS")}}v(Oo,"code","ERR_JWKS_MULTIPLE_MATCHING_KEYS");class jo extends To{constructor(){super(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"request timed out",arguments.length>1?arguments[1]:void 0),v(this,"code","ERR_JWKS_TIMEOUT")}}v(jo,"code","ERR_JWKS_TIMEOUT");class Wo extends To{constructor(){super(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"signature verification failed",arguments.length>1?arguments[1]:void 0),v(this,"code","ERR_JWS_SIGNATURE_VERIFICATION_FAILED")}}v(Wo,"code","ERR_JWS_SIGNATURE_VERIFICATION_FAILED");const No=e=>{if("CryptoKey"===(null==e?void 0:e[Symbol.toStringTag]))return!0;try{return e instanceof CryptoKey}catch(e){return!1}};function Uo(e){if(Uint8Array.fromBase64)return Uint8Array.fromBase64(e);const t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}const Mo="The input to be decoded is not correctly encoded.";function Lo(e){if(Uint8Array.fromBase64)try{return Uint8Array.fromBase64("string"==typeof e?e:wo.decode(e),{alphabet:"base64url"})}catch(e){throw new TypeError(Mo,{cause:e})}let t=e;if(t instanceof Uint8Array&&(t=wo.decode(t)),t.includes("+")||t.includes("/"))throw new TypeError(Mo);t=t.replace(/-/g,"+").replace(/_/g,"/");try{return Uo(t)}catch(e){throw new TypeError(Mo)}}function Ko(e){let t=e;return"string"==typeof t&&(t=yo.encode(t)),Uint8Array.prototype.toBase64?t.toBase64({alphabet:"base64url",omitPadding:!0}):function(e){if(Uint8Array.prototype.toBase64)return e.toBase64();const t=[];for(let n=0;n<e.length;n+=32768)t.push(String.fromCharCode.apply(null,e.subarray(n,n+32768)));return btoa(t.join(""))}(t).replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}function zo(e){if("object"!=typeof e||null===e||"[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||null===Object.getPrototypeOf(t)}function Jo(e){return zo(e)&&Array.isArray(e.keys)&&Array.from(e.keys).every(zo)}function Do(e,t,n){try{return Lo(e)}catch(e){throw new n("Failed to base64url decode the ".concat(t))}}async function Zo(e,t){var n,o,r,i;if("RSA"===t.kty&&"oth"in t&&void 0!==t.oth)throw new Co('RSA JWK "oth" (Other Primes Info) Parameter value is not supported');if(!e.kty.includes(t.kty))throw new Co('Invalid or unsupported JWK "alg" (Algorithm) Parameter value');const s=null!==(n=null===(o=e.resolve)||void 0===o?void 0:o.call(e,{kty:t.kty,crv:t.crv}))&&void 0!==n?n:e.subtle,a=!(!t.d&&!t.priv),c=_({},t);return"AKP"!==c.kty&&delete c.alg,delete c.use,crypto.subtle.importKey("jwk",c,s,null!==(r=t.ext)&&void 0!==r?r:!a,null!==(i=t.key_ops)&&void 0!==i?i:e.usages[a?1:0])}function Ho(e){return _({__proto__:null},e)}const Fo=e=>e[Symbol.toStringTag];function Go(e,t,n){const o=e.alg,r=e.secret,i="decrypt"===n||"sign"===n;if(r&&t instanceof Uint8Array)return[Vo,t];if(zo(t)){const s=function(e){const t=Ho(e);if(void 0!==t.ext&&"boolean"!=typeof t.ext)throw new TypeError('"ext" (Extractable) Parameter must be a boolean');if(void 0!==t.key_ops){const e=t.key_ops,n=Array.isArray(e)?[...e]:void 0;if(!n||n.some(e=>"string"!=typeof e)||new Set(n).size!==n.length)throw new TypeError('"key_ops" (Key Operations) Parameter must be an array of unique strings');t.key_ops=n}return t}(t);if("string"!=typeof s.kty)throw new TypeError(r?ko(o,t,"CryptoKey","KeyObject","JSON Web Key","Uint8Array"):ko(o,t,"CryptoKey","KeyObject","JSON Web Key"));if(!(r?"oct"===s.kty&&"string"==typeof s.k:"oct"!==s.kty&&(i?"AKP"===s.kty&&"string"==typeof s.priv||"string"==typeof s.d:void 0===s.d&&void 0===s.priv)))throw new TypeError(r?'JSON Web Key for symmetric algorithms must have JWK "kty" (Key Type) equal to "oct" and the JWK "k" (Key Value) present':"JSON Web Key for this operation must be a ".concat(i?"private":"public"," JWK"));return((e,t,n)=>{const o=e.alg;if(void 0!==t.use){const e="sign"===n||"verify"===n?"sig":"enc";if(t.use!==e)throw new TypeError('Invalid key for this operation, its "use" must be "'.concat(e,'" when present'))}if(void 0!==t.alg&&t.alg!==o)throw new TypeError('Invalid key for this operation, its "alg" must be "'.concat(o,'" when present'));if(Array.isArray(t.key_ops)){var r;const o="encrypt"===n||"decrypt"===n?null===(r=e.ops)||void 0===r?void 0:r["encrypt"===n?0:1]:n;if(o&&!t.key_ops.includes(o))throw new TypeError('Invalid key for this operation, its "key_ops" must include "'.concat(o,'" when present'))}})(e,s,n),[qo,t,s]}if(!(e=>No(e)||(e=>"KeyObject"===(null==e?void 0:e[Symbol.toStringTag]))(e))(t))throw new TypeError(r?ko(o,t,"CryptoKey","KeyObject","JSON Web Key","Uint8Array"):ko(o,t,"CryptoKey","KeyObject","JSON Web Key"));if(r){if("secret"!==t.type)throw new TypeError("".concat(Fo(t),' instances for symmetric algorithms must be of type "secret"'))}else{if("secret"===t.type)throw new TypeError("".concat(Fo(t),' instances for asymmetric algorithms must not be of type "secret"'));const e=i?"private":"public";if(("public"===t.type||"private"===t.type)&&t.type!==e){const o="sign"===n?"signing":"verify"===n?"verifying":"".concat(n.slice(0,-1),"tion");throw new TypeError("".concat(Fo(t)," instances for asymmetric algorithm ").concat(o,' must be of type "').concat(e,'"'))}}return No(t)?[Xo,t]:[Yo,t]}const Vo=0,Xo=1,Yo=2,qo=3;let Bo;const Qo={__proto__:null,prime256v1:"P-256",secp384r1:"P-384",secp521r1:"P-521"};function $o(e,t,n){Bo||(Bo=new WeakMap);const o=Bo.get(e);return n&&(o?o[t]=n:Bo.set(e,{[t]:n})),null!=n?n:null==o?void 0:o[t]}const er=async(e,t,n)=>{var o;return null!==(o=$o(e,n.alg))&&void 0!==o?o:$o(e,n.alg,await Zo(n,_(_({},t),{},{alg:n.alg})))};async function tr(e,t,n){const o=Go(e,t,n);switch(o[0]){case Vo:case Xo:return o[1];case qo:{const t=o[1],n=o[2];if("oct"===n.kty)return Lo(n.k);if(!Object.isFrozen(t)){const e=t.key_ops;Array.isArray(e)&&Object.freeze(e),Object.freeze(t)}return er(t,n,e)}case Yo:{const t=o[1];return"secret"===t.type?t.export():"toCryptoKey"in t&&"function"==typeof t.toCryptoKey?((e,t)=>{var n,o,r;const i=$o(e,t.alg);if(i)return i;const s="public"===e.type,a=t.usages[s?0:1],c=e.asymmetricKeyType,u=Qo[null===(n=e.asymmetricKeyDetails)||void 0===n?void 0:n.namedCurve],l=null!==(o=null===(r=t.resolve)||void 0===r?void 0:r.call(t,{crv:u,asymmetricKeyType:c}))&&void 0!==o?o:t.subtle;return $o(e,t.alg,e.toCryptoKey(l,s,a))})(t,e):er(t,t.export({format:"jwk"}),e)}}}function nr(e){const t={__proto__:null};for(const n in e)t[n]=_(_({},e[n]),{},{alg:n});return t}const or=[["encrypt","wrapKey"],["decrypt","unwrapKey"]],rr=[[],["deriveBits"]],ir=[[],[]];function sr(e){return{kty:["RSA"],subtle:{name:"RSA-OAEP",hash:"SHA-".concat(e)},usages:or,ops:["wrapKey","unwrapKey"]}}function ar(){return{kty:["EC","OKP"],subtle:{name:"ECDH"},resolve:e=>{let t=e.kty,n=e.crv,o=e.asymmetricKeyType;if("X25519"===n||"x25519"===o)return{name:"X25519"};if("OKP"===t)throw new Co('Invalid or unsupported JWK "alg" (Algorithm) Parameter value');return{name:"ECDH",namedCurve:n}},usages:rr,ops:[void 0,"deriveBits"]}}function cr(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return{kty:["oct"],secret:!0,subtle:{name:t?"AES-GCM":"AES-KW",length:e},usages:ir,ops:t?["encrypt","decrypt"]:["wrapKey","unwrapKey"]}}function ur(){return{kty:["oct"],secret:!0,subtle:{name:"PBKDF2"},usages:ir,ops:["deriveBits","deriveBits"]}}const lr=nr({dir:{kty:["oct"],secret:!0,subtle:{name:"AES-GCM"},usages:ir,ops:["encrypt","decrypt"]},"RSA-OAEP":sr(1),"RSA-OAEP-256":sr(256),"RSA-OAEP-384":sr(384),"RSA-OAEP-512":sr(512),"ECDH-ES":ar(),"ECDH-ES+A128KW":ar(),"ECDH-ES+A192KW":ar(),"ECDH-ES+A256KW":ar(),A128KW:cr(128),A192KW:cr(192),A256KW:cr(256),A128GCMKW:cr(128,!0),A192GCMKW:cr(192,!0),A256GCMKW:cr(256,!0),"PBES2-HS256+A128KW":ur(),"PBES2-HS384+A192KW":ur(),"PBES2-HS512+A256KW":ur()}),dr=["encrypt","decrypt"];function hr(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return{kty:["oct"],secret:!0,subtle:{name:t?"AES-CBC":"AES-GCM",length:e},usages:ir,ops:dr,cekBits:e,ivBits:t?128:96,cbc:t}}nr({A128GCM:hr(128),A192GCM:hr(192),A256GCM:hr(256),"A128CBC-HS256":hr(256,!0),"A192CBC-HS384":hr(384,!0),"A256CBC-HS512":hr(512,!0)});const pr={__proto__:null,b64:!0};function fr(e,t){if(void 0!==t&&(!Array.isArray(t)||t.some(e=>"string"!=typeof e)))throw new TypeError('"'.concat(e,'" option must be an array of strings'));if(t)return new Set(t)}function mr(e,t,n,o,r){if(void 0!==r.crit&&void 0===(null==o?void 0:o.crit))throw new e('"crit" (Critical) Header Parameter MUST be integrity protected');if(!o||void 0===o.crit)return[];if(!Array.isArray(o.crit)||0===o.crit.length||o.crit.some(e=>"string"!=typeof e||0===e.length))throw new e('"crit" (Critical) Header Parameter MUST be an array of non-empty strings when present');const i=void 0===n?t:_(_({__proto__:null},n),t);for(const t of o.crit){if(!(t in i))throw new Co('Extension Header Parameter "'.concat(t,'" is not recognized'));if(!Object.hasOwn(r,t)||void 0===r[t])throw new e('Extension Header Parameter "'.concat(t,'" is missing'));if(i[t]&&(!Object.hasOwn(o,t)||void 0===o[t]))throw new e('Extension Header Parameter "'.concat(t,'" MUST be integrity protected'))}return o.crit}function yr(e,t){if(t.includes("b64")){const t=e.b64;if("boolean"!=typeof t)throw new Ro('The "b64" (base64url-encode payload) Header Parameter must be a boolean');return t}return!0}var wr,gr;let vr,br;if("undefined"==typeof navigator||null===(wr=navigator.userAgent)||void 0===wr||null===(gr=wr.startsWith)||void 0===gr||!gr.call(wr,"Mozilla/5.0 ")){const e="v6.8.4";br="".concat("openid-client","/").concat(e),vr={"user-agent":br}}const _r=e=>kr.get(e);let kr,Tr;function Sr(e){return void 0!==e?nn(e):(Tr||(Tr=new WeakMap),(e,t,n,o)=>{let r;return(r=Tr.get(t))||(function(e,t){if("string"!=typeof e)throw Ar("".concat(t," must be a string"),Rr);if(0===e.length)throw Ar("".concat(t," must not be empty"),Cr)}(t.client_secret,'"metadata.client_secret"'),r=nn(t.client_secret),Tr.set(t,r)),r(e,t,n,o)})}const Er=_n,Pr=xt,Cr="ERR_INVALID_ARG_VALUE",Rr="ERR_INVALID_ARG_TYPE";function Ar(e,t,n){const o=new TypeError(e,{cause:n});return Object.assign(o,{code:t}),o}class xr extends Error{constructor(e,t){var n;super(e,t),v(this,"code",void 0),this.name=this.constructor.name,this.code=null==t?void 0:t.code,null===(n=Error.captureStackTrace)||void 0===n||n.call(Error,this,this.constructor)}}function Ir(e,t,n){return new xr(e,{cause:t,code:n})}function Or(e){if(e instanceof TypeError||e instanceof xr||e instanceof un||e instanceof ln||e instanceof dn)throw e;if(e instanceof zt)switch(e.code){case qn:throw Ir("only requests to HTTPS are allowed",e,e.code);case Bn:throw Ir("only requests to HTTP or HTTPS are allowed",e,e.code);case Yn:throw Ir("unexpected HTTP response status code",e.cause,e.code);case Xn:throw Ir("unexpected response content-type",e.cause,e.code);case Gn:throw Ir("parsing error occured",e,e.code);case Vn:throw Ir("invalid response encountered",e,e.code);case $n:throw Ir("unexpected JWT claim value encountered",e,e.code);case eo:throw Ir("unexpected JSON attribute value encountered",e,e.code);case Qn:throw Ir("JWT timestamp claim value failed validation",e,e.code);default:throw Ir(e.message,e,e.code)}if(e instanceof Kt)throw Ir("unsupported operation",e,e.code);if(e instanceof DOMException)switch(e.name){case"OperationError":throw Ir("runtime operation error",e,Zn);case"NotSupportedError":throw Ir("runtime unsupported operation",e,Zn);case"TimeoutError":throw Ir("operation timed out",e,"OAUTH_TIMEOUT");case"AbortError":throw Ir("operation aborted",e,"OAUTH_ABORT")}throw new xr("something went wrong",{cause:e})}async function jr(e,t,n,o,r){const i=await async function(e,t){var n,o;if(!(e instanceof URL))throw Ar('"server" must be an instance of URL',Rr);const r=!e.href.includes("/.well-known/"),i=null!==(n=null==t?void 0:t.timeout)&&void 0!==n?n:30,s=AbortSignal.timeout(1e3*i),a=await(r?async function(e,t){return async function(e,t,n,o){if(!(e instanceof URL))throw Pt('"'.concat("issuerIdentifier",'" must be an instance of URL'),Et);sn(e,!0!==(null==o?void 0:o[Ct]));const r=n(new URL(e.href)),i=Zt(null==o?void 0:o.headers);return i.set("accept","application/json"),((null==o?void 0:o[xt])||fetch)(r.href,{body:void 0,headers:Object.fromEntries(i.entries()),method:"GET",redirect:"manual",signal:Ht(r,null==o?void 0:o.signal)})}(e,0,e=>{switch(null==t?void 0:t.algorithm){case void 0:case"oidc":!function(e){e.pathname=Ft("".concat(e.pathname,"/").concat(".well-known/openid-configuration"))}(e);break;case"oauth2":!function(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];"/"===e.pathname?e.pathname=t:e.pathname=Ft("".concat(t,"/").concat(n?e.pathname:e.pathname.replace(/(\/)$/,"")))}(e,".well-known/oauth-authorization-server");break;default:throw Pt('"options.algorithm" must be "oidc" (default), or "oauth2"',St)}return e},t)}(e,{algorithm:null==t?void 0:t.algorithm,[xt]:null==t?void 0:t[Pr],[Ct]:null==t||null===(o=t.execute)||void 0===o?void 0:o.includes(Jr),signal:s,headers:new Headers(vr)}):((null==t?void 0:t[Pr])||fetch)((sn(e,null==t||null===(c=t.execute)||void 0===c||!c.includes(Jr)),e.href),{headers:Object.fromEntries(new Headers(_({accept:"application/json"},vr)).entries()),body:void 0,method:"GET",redirect:"manual",signal:s})).then(e=>async function(e,t){const n=e;if(!(n instanceof URL)&&n!==fo)throw Pt('"expectedIssuerIdentifier" must be an instance of URL',Et);if(!Tt(t,Response))throw Pt('"response" must be an instance of Response',Et);if(200!==t.status)throw Jt('"response" is not a conform Authorization Server Metadata response (unexpected HTTP status code)',Yn,t);ro(t);const o=await po(t);if(Vt(o.issuer,'"response" body "issuer" property',Vn,{body:o}),n!==fo&&new URL(o.issuer).href!==n.href)throw Jt('"response" body "issuer" property does not match the expected value',eo,{expected:n.href,body:o,attribute:"issuer"});return o}(fo,e)).catch(Or);var c;return r&&new URL(a.issuer).href!==e.href&&(function(e,t,n){return!("https://login.microsoftonline.com"!==e.origin||null!=n&&n.algorithm&&"oidc"!==n.algorithm||(t[Wr]=!0,0))}(e,a,t)||function(e,t){return!(!e.hostname.endsWith(".b2clogin.com")||null!=t&&t.algorithm&&"oidc"!==t.algorithm)}(e,t)||(()=>{throw new xr("discovered metadata issuer does not match the expected issuer",{code:eo,cause:{expected:e.href,body:a,attribute:"issuer"}})})()),a}(e,r),s=new Nr(i,t,n,o);let a=_r(s);if(null!=r&&r[Pr]&&(a.fetch=r[Pr]),null!=r&&r.timeout&&(a.timeout=r.timeout),null!=r&&r.execute)for(const e of r.execute)e(s);return s}new TextDecoder;const Wr=Symbol();class Nr{constructor(e,t,n,o){var r,i,s,a,c;if("string"!=typeof t||!t.length)throw Ar('"clientId" must be a non-empty string',Rr);if("string"==typeof n&&(n={client_secret:n}),void 0!==(null===(r=n)||void 0===r?void 0:r.client_id)&&t!==n.client_id)throw Ar('"clientId" and "metadata.client_id" must be the same',Cr);const u=_(_({},structuredClone(n)),{},{client_id:t});let l;u[Rt]=null!==(i=null===(s=n)||void 0===s?void 0:s[Rt])&&void 0!==i?i:0,u[At]=null!==(a=null===(c=n)||void 0===c?void 0:c[At])&&void 0!==a?a:30,l=o||("string"==typeof u.client_secret&&u.client_secret.length?Sr(u.client_secret):(e,t,n,o)=>{n.set("client_id",t.client_id)});let d=Object.freeze(u);const h=structuredClone(e);Wr in e&&(h[mo]=t=>{let n=t.claims.tid;return e.issuer.replace("{tenantid}",n)});let p=Object.freeze(h);kr||(kr=new WeakMap),kr.set(this,{__proto__:null,as:p,c:d,auth:l,tlsOnly:!0,jwksCache:{}})}serverMetadata(){const e=structuredClone(_r(this).as);return function(e){Object.defineProperties(e,function(e){return{supportsPKCE:{__proto__:null,value(){var t;let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"S256";return!0===(null===(t=e.code_challenge_methods_supported)||void 0===t?void 0:t.includes(n))}}}}(e))}(e),e}clientMetadata(){return structuredClone(_r(this).c)}get timeout(){return _r(this).timeout}set timeout(e){_r(this).timeout=e}get[Pr](){return _r(this).fetch}set[Pr](e){_r(this).fetch=e}}function Ur(e){Object.defineProperties(e,function(e){let t;if(void 0!==e.expires_in){const n=new Date;n.setSeconds(n.getSeconds()+e.expires_in),t=n.getTime()}return{expiresIn:{__proto__:null,value(){if(t){const e=Date.now();return t>e?Math.floor((t-e)/1e3):0}}},claims:{__proto__:null,value(){try{return Rn(this)}catch(e){return}}}}}(e))}async function Mr(e,t,n){var o;let r=arguments.length>3&&void 0!==arguments[3]&&arguments[3];const i=null===(o=e.headers.get("retry-after"))||void 0===o?void 0:o.trim();if(void 0===i)return;let s;if(/^\d+$/.test(i))s=parseInt(i,10);else{const e=new Date(i);if(Number.isFinite(e.getTime())){const t=new Date,n=e.getTime()-t.getTime();n>0&&(s=Math.ceil(n/1e3))}}if(r&&!Number.isFinite(s))throw new zt("invalid Retry-After header value",{cause:e});s>t&&await Lr(s-t,n)}function Lr(e,t){return new Promise((n,o)=>{const r=e=>{try{t.throwIfAborted()}catch(e){return void o(e)}if(e<=0)return void n();const i=Math.min(e,5);setTimeout(()=>r(e-i),1e3*i)};r(e)})}async function Kr(e,t){Vr(e);const n=_r(e),o=n.as,r=n.c,i=n.auth,s=n.fetch,a=n.tlsOnly,c=n.timeout;return async function(e,t,n,o,r){en(e),tn(t);const i=cn(e,"backchannel_authentication_endpoint",t.use_mtls_endpoint_aliases,!0!==(null==r?void 0:r[Ct])),s=new URLSearchParams(o);s.set("client_id",t.client_id);const a=Zt(null==r?void 0:r.headers);return a.set("accept","application/json"),Sn(e,t,n,i,s,a,r)}(o,r,i,t,{[xt]:s,[Ct]:!a,headers:new Headers(vr),signal:Xr(c)}).then(e=>async function(e,t,n){if(en(e),tn(t),!Tt(n,Response))throw Pt('"response" must be an instance of Response',Et);await vn(n,200,"Backchannel Authentication Endpoint"),ro(n);const o=await po(n);Vt(o.auth_req_id,'"response" body "auth_req_id" property',Vn,{body:o});let r="number"!=typeof o.expires_in?parseFloat(o.expires_in):o.expires_in;return Gt(r,!0,'"response" body "expires_in" property',Vn,{body:o}),o.expires_in=r,void 0!==o.interval&&Gt(o.interval,!1,'"response" body "interval" property',Vn,{body:o}),o}(o,r,e)).catch(Or)}async function zr(e,t,n,o){var r,i;Vr(e),n=new URLSearchParams(n);let s=null!==(r=t.interval)&&void 0!==r?r:5;const a=null!==(i=null==o?void 0:o.signal)&&void 0!==i?i:AbortSignal.timeout(1e3*t.expires_in);try{await Lr(s,a)}catch(e){Or(e)}const c=_r(e),u=c.as,l=c.c,d=c.auth,h=c.fetch,p=c.tlsOnly,f=c.nonRepudiation,m=c.timeout,y=c.decrypt,w=(r,i)=>zr(e,_(_({},t),{},{interval:r}),n,_(_({},o),{},{signal:a,flag:i})),g=function(e,t){const n=Xr(t);if(!n)return{signal:e,cleanup(){}};const o=new AbortController,r=e=>{const t=e.target;o.abort(t.reason)};return e.aborted?o.abort(e.reason):n.aborted?o.abort(n.reason):(e.addEventListener("abort",r,{once:!0}),n.addEventListener("abort",r,{once:!0})),{signal:o.signal,cleanup(){e.removeEventListener("abort",r),n.removeEventListener("abort",r)}}}(a,m),v=await async function(e,t,n,o,r){en(e),tn(t),Vt(o,'"authReqId"');const i=new URLSearchParams(null==r?void 0:r.additionalParameters);return i.set("auth_req_id",o),En(e,t,n,"urn:openid:params:grant-type:ciba",i,r)}(u,l,d,t.auth_req_id,{[xt]:h,[Ct]:!p,additionalParameters:n,DPoP:null==o?void 0:o.DPoP,headers:new Headers(vr),signal:g.signal}).catch(Or).finally(g.cleanup);var b;if(503===v.status&&v.headers.has("retry-after"))return await Mr(v,s,a,!0),await(null===(b=v.body)||void 0===b?void 0:b.cancel()),w(s);const k=async function(e,t,n,o){return An(e,t,n,void 0,null==o?void 0:o[Ot],null==o?void 0:o.recognizedTokenTypes)}(u,l,v,{[Ot]:y});let T;try{T=await k}catch(e){if(qr(e,o))return w(s,Br);if(e instanceof un)switch(e.error){case"slow_down":s+=5;case"authorization_pending":return await Mr(e.response,s,a),w(s)}Or(e)}return T.id_token&&await(null==f?void 0:f(v)),Ur(T),T}function Jr(e){_r(e).tlsOnly=!1}async function Dr(e,t,n,o,r){if(Vr(e),!((null==r?void 0:r.flag)===Br||t instanceof URL||function(e){try{return"Request"===Object.getPrototypeOf(e)[Symbol.toStringTag]}catch(e){return!1}}(t)))throw Ar('"currentUrl" must be an instance of URL, or Request',Rr);let i,s;const a=_r(e),c=a.as,u=a.c,l=a.auth,d=a.fetch,h=a.tlsOnly,p=a.jarm,f=a.hybrid,m=a.nonRepudiation,y=a.timeout,w=a.decrypt,g=a.implicit;if((null==r?void 0:r.flag)===Br)i=r.authResponse,s=r.redirectUri;else{if(!(t instanceof URL)){const e=t;switch(t=new URL(t.url),e.method){case"GET":break;case"POST":const n=new URLSearchParams(await async function(e){if("POST"!==e.method)throw Pt("form_post responses are expected to use the POST method",St,{cause:e});if("application/x-www-form-urlencoded"!==kn(e))throw Pt("form_post responses are expected to use the application/x-www-form-urlencoded content-type",St,{cause:e});return async function(e){if(e.bodyUsed)throw Pt("form_post Request instances must contain a readable body",St,{cause:e});return e.text()}(e)}(e));if(f)t.hash=n.toString();else for(const e of n.entries()){var v=T(e,2);const n=v[0],o=v[1];t.searchParams.append(n,o)}break;default:throw Ar("unexpected Request HTTP method",Cr)}}switch(s=function(e){return(e=new URL(e)).search="",e.hash="",e.href}(t),!0){case!!p:i=await p(t,null==n?void 0:n.expectedState);break;case!!f:i=await f(t,null==n?void 0:n.expectedNonce,null==n?void 0:n.expectedState,null==n?void 0:n.maxAge);break;case!!g:throw new TypeError("authorizationCodeGrant() cannot be used by response_type=id_token clients");default:try{i=function(e,t,n,o){if(en(e),tn(t),n instanceof URL&&(n=n.searchParams),!(n instanceof URLSearchParams))throw Pt('"parameters" must be an instance of URLSearchParams, or URL',Et);if(uo(n,"response"))throw Jt('"parameters" contains a JARM response, use validateJwtAuthResponse() instead of validateAuthResponse()',Vn,{parameters:n});const r=uo(n,"iss"),i=uo(n,"state");if(!r&&e.authorization_response_iss_parameter_supported)throw Jt('response parameter "iss" (issuer) missing',Vn,{parameters:n});if(r&&r!==e.issuer)throw Jt('unexpected "iss" (issuer) response parameter value',Vn,{expected:e.issuer,parameters:n});switch(o){case void 0:case ho:if(void 0!==i)throw Jt('unexpected "state" response parameter encountered',Vn,{expected:void 0,parameters:n});break;case lo:break;default:if(Vt(o,'"expectedState" argument'),i!==o)throw Jt(void 0===i?'response parameter "state" missing':'unexpected "state" response parameter value',Vn,{expected:o,parameters:n})}if(uo(n,"error"))throw new ln("authorization response from the server is an error",{cause:n});const s=uo(n,"id_token"),a=uo(n,"token");if(void 0!==s||void 0!==a)throw new Kt("implicit and hybrid flows are not supported");return c=new URLSearchParams(n),Nn.add(c),c;var c}(c,u,t.searchParams,null==n?void 0:n.expectedState)}catch(e){Or(e)}}}const b=await async function(e,t,n,o,r,i,s){if(en(e),tn(t),!Nn.has(o))throw Pt('"callbackParameters" must be an instance of URLSearchParams obtained from "validateAuthResponse()", or "validateJwtAuthResponse()',St);Vt(r,'"redirectUri"');const a=uo(o,"code");if(!a)throw Jt('no authorization code in "callbackParameters"',Vn);const c=new URLSearchParams(null==s?void 0:s.additionalParameters);return c.set("redirect_uri",r),c.set("code",a),i!==Un&&(Vt(i,'"codeVerifier"'),c.set("code_verifier",i)),En(e,t,n,"authorization_code",c,s)}(c,u,l,i,s,(null==n?void 0:n.pkceCodeVerifier)||Un,{additionalParameters:o,[xt]:d,[Ct]:!h,DPoP:null==r?void 0:r.DPoP,headers:new Headers(vr),signal:Xr(y)}).catch(Or);"string"!=typeof(null==n?void 0:n.expectedNonce)&&"number"!=typeof(null==n?void 0:n.maxAge)||(n.idTokenExpected=!0);const k=async function(e,t,n,o){return"string"==typeof(null==o?void 0:o.expectedNonce)||"number"==typeof(null==o?void 0:o.maxAge)||null!=o&&o.requireIdToken?async function(e,t,n,o,r,i,s){const a=[];switch(o){case void 0:o=Kn;break;case Kn:break;default:Vt(o,'"expectedNonce" argument'),a.push("nonce")}switch(null!=r||(r=t.default_max_age),r){case void 0:r=zn;break;case zn:break;default:Gt(r,!0,'"maxAge" argument'),a.push("auth_time")}const c=await An(e,t,n,a,i,s);Vt(c.id_token,'"response" body "id_token" property',Vn,{body:c});const u=Rn(c);if(r!==zn){const e=$t()+Bt(t),n=Qt(t);if(u.auth_time+r<e-n)throw Jt("too much time has elapsed since the last End-User authentication",Qn,{claims:u,now:e,tolerance:n,claim:"auth_time"})}if(o===Kn){if(void 0!==u.nonce)throw Jt('unexpected ID Token "nonce" claim value',$n,{expected:void 0,claims:u,claim:"nonce"})}else if(u.nonce!==o)throw Jt('unexpected ID Token "nonce" claim value',$n,{expected:o,claims:u,claim:"nonce"});return c}(e,t,n,o.expectedNonce,o.maxAge,o[Ot],o.recognizedTokenTypes):async function(e,t,n,o,r){const i=await An(e,t,n,void 0,o,r),s=Rn(i);if(s){if(void 0!==t.default_max_age){Gt(t.default_max_age,!0,'"client.default_max_age"');const e=$t()+Bt(t),n=Qt(t);if(s.auth_time+t.default_max_age<e-n)throw Jt("too much time has elapsed since the last End-User authentication",Qn,{claims:s,now:e,tolerance:n,claim:"auth_time"})}if(void 0!==s.nonce)throw Jt('unexpected ID Token "nonce" claim value',$n,{expected:void 0,claims:s,claim:"nonce"})}return i}(e,t,n,null==o?void 0:o[Ot],null==o?void 0:o.recognizedTokenTypes)}(c,u,b,{expectedNonce:null==n?void 0:n.expectedNonce,maxAge:null==n?void 0:n.maxAge,requireIdToken:null==n?void 0:n.idTokenExpected,[Ot]:w});let S;try{S=await k}catch(t){if(qr(t,r))return Dr(e,void 0,n,o,_(_({},r),{},{flag:Br,authResponse:i,redirectUri:s}));Or(t)}return S.id_token&&await(null==m?void 0:m(b)),Ur(S),S}async function Zr(e,t,n,o){Vr(e),n=new URLSearchParams(n);const r=_r(e),i=r.as,s=r.c,a=r.auth,c=r.fetch,u=r.tlsOnly,l=r.nonRepudiation,d=r.timeout,h=r.decrypt,p=await async function(e,t,n,o,r){en(e),tn(t),Vt(o,'"refreshToken"');const i=new URLSearchParams(null==r?void 0:r.additionalParameters);return i.set("refresh_token",o),En(e,t,n,"refresh_token",i,r)}(i,s,a,t,{[xt]:c,[Ct]:!u,additionalParameters:n,DPoP:null==o?void 0:o.DPoP,headers:new Headers(vr),signal:Xr(d)}).catch(Or),f=async function(e,t,n,o){return An(e,t,n,void 0,null==o?void 0:o[Ot],null==o?void 0:o.recognizedTokenTypes)}(i,s,p,{[Ot]:h});let m;try{m=await f}catch(r){if(qr(r,o))return Zr(e,t,n,_(_({},o),{},{flag:Br}));Or(r)}return m.id_token&&await(null==l?void 0:l(p)),Ur(m),m}async function Hr(e,t,n){Vr(e),t=new URLSearchParams(t);const o=_r(e),r=o.as,i=o.c,s=o.auth,a=o.fetch,c=o.tlsOnly,u=o.timeout,l=await async function(e,t,n,o,r){return en(e),tn(t),En(e,t,n,"client_credentials",new URLSearchParams(o),r)}(r,i,s,t,{[xt]:a,[Ct]:!c,DPoP:null==n?void 0:n.DPoP,headers:new Headers(vr),signal:Xr(u)}).catch(Or),d=async function(e,t,n){return An(e,t,n,void 0,void 0,void 0)}(r,i,l);let h;try{h=await d}catch(o){if(qr(o,n))return Hr(e,t,_(_({},n),{},{flag:Br}));Or(o)}return Ur(h),h}function Fr(e,t){Vr(e);const n=_r(e),o=n.as,r=n.c,i=n.tlsOnly,s=n.hybrid,a=n.jarm,c=n.implicit,u=cn(o,"authorization_endpoint",!1,i);if((t=new URLSearchParams(t)).has("client_id")||t.set("client_id",r.client_id),!t.has("request_uri")&&!t.has("request")){if(t.has("response_type")||t.set("response_type",s?"code id_token":c?"id_token":"code"),c&&!t.has("nonce"))throw Ar("response_type=id_token clients must provide a nonce parameter in their authorization request parameters",Cr);a&&t.set("response_mode","jwt")}for(const e of t.entries()){var l=T(e,2);const t=l[0],n=l[1];u.searchParams.append(t,n)}return u}async function Gr(e,t,n){Vr(e);const o=Fr(e,t),r=_r(e),i=r.as,s=r.c,a=r.auth,c=r.fetch,u=r.tlsOnly,l=r.timeout,d=await async function(e,t,n,o,r){var i;en(e),tn(t);const s=cn(e,"pushed_authorization_request_endpoint",t.use_mtls_endpoint_aliases,!0!==(null==r?void 0:r[Ct])),a=new URLSearchParams(o);a.set("client_id",t.client_id);const c=Zt(null==r?void 0:r.headers);c.set("accept","application/json"),void 0!==(null==r?void 0:r.DPoP)&&(bn(r.DPoP),await r.DPoP.addProof(s,c,"POST"));const u=await Sn(e,t,n,s,a,c,r);return null==r||null===(i=r.DPoP)||void 0===i||i.cacheNonce(u,s),u}(i,s,a,o.searchParams,{[xt]:c,[Ct]:!u,DPoP:null==n?void 0:n.DPoP,headers:new Headers(vr),signal:Xr(l)}).catch(Or),h=async function(e,t,n){if(en(e),tn(t),!Tt(n,Response))throw Pt('"response" must be an instance of Response',Et);await vn(n,201,"Pushed Authorization Request Endpoint"),ro(n);const o=await po(n);Vt(o.request_uri,'"response" body "request_uri" property',Vn,{body:o});let r="number"!=typeof o.expires_in?parseFloat(o.expires_in):o.expires_in;return Gt(r,!0,'"response" body "expires_in" property',Vn,{body:o}),o.expires_in=r,o}(i,s,d);let p;try{p=await h}catch(o){if(qr(o,n))return Gr(e,t,_(_({},n),{},{flag:Br}));Or(o)}return Fr(e,{request_uri:p.request_uri})}function Vr(e){if(!(e instanceof Nr))throw Ar('"config" must be an instance of Configuration',Rr);if(Object.getPrototypeOf(e)!==Nr.prototype)throw Ar("subclassing Configuration is not allowed",Cr)}function Xr(e){return e?AbortSignal.timeout(1e3*e):void 0}async function Yr(e,t,n,o){Vr(e);const r=_r(e),i=r.as,s=r.c,a=r.fetch,c=r.tlsOnly,u=r.nonRepudiation,l=r.timeout,d=r.decrypt,h=await async function(e,t,n,o){en(e),tn(t);const r=cn(e,"userinfo_endpoint",t.use_mtls_endpoint_aliases,!0!==(null==o?void 0:o[Ct])),i=Zt(null==o?void 0:o.headers);return t.userinfo_signed_response_alg?i.set("accept","application/jwt"):(i.set("accept","application/json"),i.append("accept","application/jwt")),async function(e,t,n,o,r,i){var s;if(Vt(e,'"accessToken"'),!(n instanceof URL))throw Pt('"url" must be an instance of URL',Et);sn(n,!0!==(null==i?void 0:i[Ct])),o=Zt(o),null!=i&&i.DPoP&&(bn(i.DPoP),await i.DPoP.addProof(n,o,"GET".toUpperCase(),e)),o.set("authorization","".concat(o.has("dpop")?"DPoP":"Bearer"," ").concat(e));const a=await((null==i?void 0:i[xt])||fetch)(n.href,{duplex:Tt(null,ReadableStream)?"half":void 0,body:null,headers:Object.fromEntries(o.entries()),method:"GET",redirect:"manual",signal:Ht(n,null==i?void 0:i.signal)});return null==i||null===(s=i.DPoP)||void 0===s||s.cacheNonce(a,n),a}(n,0,r,i,0,_(_({},o),{},{[Rt]:Bt(t)}))}(i,s,t,{[xt]:a,[Ct]:!c,DPoP:null==o?void 0:o.DPoP,headers:new Headers(vr),signal:Xr(l)}).catch(Or);let p,f=Tn(i,s,n,h,{[Ot]:d});try{p=await f}catch(r){if(qr(r,o))return Yr(e,t,n,_(_({},o),{},{flag:Br}));Or(r)}return"application/jwt"===kn(h)&&await(null==u?void 0:u(h)),p}function qr(e,t){return!(null==t||!t.DPoP||t.flag===Br)&&function(e){if(e instanceof dn){const t=e.cause,n=t[0];return 1===t.length&&"dpop"===n.scheme&&"use_dpop_nonce"===n.parameters.error}return e instanceof un&&"use_dpop_nonce"===e.error}(e)}Object.freeze(Nr.prototype);const Br=Symbol();async function Qr(e,t,n,o){Vr(e);const r=_r(e),i=r.as,s=r.c,a=r.auth,c=r.fetch,u=r.tlsOnly,l=r.timeout,d=r.decrypt,h=r.nonRepudiation,p=await async function(e,t,n,o,r,i){return en(e),tn(t),Vt(o,'"grantType"'),En(e,t,n,o,new URLSearchParams(r),i)}(i,s,a,t,new URLSearchParams(n),{[xt]:c,[Ct]:!u,DPoP:null==o?void 0:o.DPoP,headers:new Headers(vr),signal:Xr(l)}).catch(Or);let f;"urn:ietf:params:oauth:grant-type:token-exchange"===t&&(f={n_a:()=>{}});const m=async function(e,t,n,o){return An(e,t,n,void 0,null==o?void 0:o[Ot],null==o?void 0:o.recognizedTokenTypes)}(i,s,p,{[Ot]:d,recognizedTokenTypes:f});let y;try{y=await m}catch(r){if(qr(r,o))return Qr(e,t,n,_(_({},o),{},{flag:Br}));Or(r)}return y.id_token&&await(null==h?void 0:h(p)),Ur(y),y}async function $r(e,t,n){return t instanceof Uint8Array?crypto.subtle.importKey("raw",t,e.subtle,!1,[n]):(function(e,t,n){var o;const r=e.algorithm;if(r.name!==t.name)throw _o(t.name);if(t.hash&&(null===(o=r.hash)||void 0===o?void 0:o.name)!==t.hash)throw _o(t.hash,"algorithm.hash");if(t.namedCurve&&r.namedCurve!==t.namedCurve)throw _o(t.namedCurve,"algorithm.namedCurve");if(void 0!==t.length&&r.length!==t.length)throw _o(t.length,"algorithm.length");!function(e,t){if(t&&!e.usages.includes(t))throw new TypeError("CryptoKey does not support this operation, its usages must include ".concat(t,"."))}(e,n)}(t,e.subtle,n),e.minRsaBits&&function(e,t){const n=t.algorithm.modulusLength;if("number"!=typeof n||n<2048)throw new TypeError("".concat(e," requires key modulusLength to be 2048 bits or larger"))}(e.alg,t),t)}const ei=[["verify"],["sign"]];function ti(e){const t={name:"HMAC",hash:"SHA-".concat(e)};return{kty:["oct"],secret:!0,subtle:t,signing:t,usages:ei}}function ni(e,t){const n={name:t?"RSA-PSS":"RSASSA-PKCS1-v1_5",hash:"SHA-".concat(e)};return{kty:["RSA"],subtle:n,signing:t?_(_({},n),{},{saltLength:t}):n,usages:ei,minRsaBits:2048}}function oi(e,t){return{kty:["EC"],crv:e,subtle:{name:"ECDSA",namedCurve:e},signing:{name:"ECDSA",hash:"SHA-".concat(t)},usages:ei}}function ri(){const e={name:"Ed25519"};return{kty:["OKP"],crv:"Ed25519",subtle:e,signing:e,usages:ei}}function ii(e){const t={name:"ML-DSA-".concat(e)};return{kty:["AKP"],subtle:t,signing:t,usages:ei}}const si=nr({HS256:ti(256),HS384:ti(384),HS512:ti(512),RS256:ni(256),RS384:ni(384),RS512:ni(512),PS256:ni(256,32),PS384:ni(384,48),PS512:ni(512,64),ES256:oi("P-256",256),ES384:oi("P-384",384),ES512:oi("P-521",512),EdDSA:ri(),Ed25519:ri(),"ML-DSA-44":ii(44),"ML-DSA-65":ii(65),"ML-DSA-87":ii(87)});function ai(e){const t="string"==typeof e?si[e]:void 0;if(!t)throw new Co("alg ".concat(e," is not supported either by JOSE or your javascript runtime"));return t}async function ci(e,t,n){if(e instanceof Uint8Array&&(e=wo.decode(e)),"string"!=typeof e)throw new Ro("Compact JWS must be a string or Uint8Array");const o=e.split("."),r=o[0],i=o[1],s=o[2];if(3!==o.length)throw new Ro("Invalid Compact JWS");const a={payload:i,protected:r,signature:s},c=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0===e?{}:function(e,t,n){let o;try{o=JSON.parse(go.decode(Lo(e)))}catch(e){throw new t(n)}if(!zo(o))throw new t(n);return o}(e,Ro,"JWS Protected Header is invalid");return t}(r),u=function(e,t,n){const o=yr(e,mr(Ro,pr,n[1],e,t)),r=t.alg;if("string"!=typeof r||!r)throw new Ro('JWS "alg" (Algorithm) Header Parameter missing or invalid');if(n[0]&&!n[0].has(r))throw new Po('"alg" (Algorithm) Header Parameter value not allowed');return[o,r]}(c,c,t),l=T(u,2),d=l[0],h=l[1],p=d?i:function(e){try{return bo(e)}catch(e){throw new Ro("JWS Compact Serialization payload must use only ASCII characters")}}(i);return async function(e,t,n,o,r,i,s){var a;let c=!1;"function"==typeof n&&(n=await n(r,e),c=!0);const u="string"==typeof s,l=ai(i),d=vo(void 0!==o?bo(o):new Uint8Array,bo("."),u?null!==(a=t[2])&&void 0!==a?a:t[2]=function(e,t,n){try{return bo(e)}catch(e){throw new n("The ".concat("payload"," is not a valid base64url string"))}}(s,0,Ro):s),h=Do(e.signature,"signature",Ro),p=await tr(l,n,"verify");if(!await async function(e,t,n,o){const r=await $r(e,t,"verify");try{return await crypto.subtle.verify(e.signing,r,n,o)}catch(e){return!1}}(l,p,h,d))throw new Wo;return[u?Do(s,"payload",Ro):s,r,u,p,c]}(a,t,n,r,c,h,p)}const ui=e=>Math.floor(e.getTime()/1e3),li={s:1,m:60,h:3600,d:86400,w:604800,y:31557600},di=/^(\+|\-)? ?(\d+|\d+\.\d+) ?(seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)(?: (ago|from now))?$/i,hi="check_failed";function pi(){throw new TypeError("Invalid time period format")}function fi(e){"string"!=typeof e&&pi();const t=di.exec(e);(!t||t[4]&&t[1])&&pi();const n=parseFloat(t[2]),o=Math.round(n*li[t[3][0].toLowerCase()]);return Number.isFinite(o)||pi(),"-"===t[1]||"ago"===t[4]?-o:o}function mi(e,t){if(!Number.isFinite(t))throw new TypeError("Invalid ".concat(e," input"));return t}function yi(e,t){if("string"!=typeof t)throw new TypeError('"'.concat(e,'" claim must be a string'))}function wi(e,t){return"number"==typeof e?mi(t,e):e instanceof Date?mi(t,ui(e)):ui(new Date)+fi(e)}const gi=e=>{const t=e.toLowerCase();return e.includes("/")?t:"application/".concat(t)};function vi(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];const o=e[t];if(void 0!==o||n){if("number"!=typeof o)throw new So('"'.concat(t,'" claim must be a number'),e,t,"invalid");return o}}function bi(e,t){throw new So('unexpected "'.concat(t,'" claim value'),e,t,hi)}function _i(e,t){let n,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};try{n=JSON.parse(go.decode(t))}catch(e){}if(!zo(n))throw new Ao("JWT Claims Set must be a top-level JSON object");const r=o.typ;if(void 0!==r&&("string"!=typeof e.typ||gi(e.typ)!==gi(r)))throw new So('unexpected "typ" JWT header value',n,"typ",hi);const i=o.requiredClaims,s=void 0===i?[]:i,a=o.issuer,c=o.subject,u=o.audience,l=o.maxTokenAge,d=[...s];void 0!==l&&d.push("iat"),void 0!==u&&d.push("aud"),void 0!==c&&d.push("sub"),void 0!==a&&d.push("iss");for(const e of new Set(d.reverse()))if(!Object.hasOwn(n,e))throw new So('missing required "'.concat(e,'" claim'),n,e,"missing");var h,p;void 0===a||(Array.isArray(a)?a:[a]).includes(n.iss)||bi(n,"iss"),void 0!==c&&n.sub!==c&&bi(n,"sub"),void 0===u||(p="string"==typeof u?[u]:u,"string"==typeof(h=n.aud)?p.includes(h):Array.isArray(h)&&p.some(e=>h.includes(e)))||bi(n,"aud");const f=o.clockTolerance;let m=0;if("string"==typeof f)m=fi(f);else if(void 0!==f){if("number"!=typeof f)throw new TypeError("Invalid clockTolerance option type");m=f}mi("clockTolerance option",m);const y=o.currentDate,w=mi("currentDate option",ui(void 0===y?new Date:y)),g=vi(n,"iat",void 0!==l),v=vi(n,"nbf");if(void 0!==v&&v>w+m)throw new So('"nbf" claim timestamp check failed',n,"nbf",hi);const b=vi(n,"exp");if(void 0!==b&&b<=w-m)throw new Eo('"exp" claim timestamp check failed',n,"exp",hi);if(void 0!==l){const e=w-g;if(e-m>mi("maxTokenAge option","number"==typeof l?l:fi(l)))throw new Eo('"iat" claim timestamp check failed (too far in the past)',n,"iat",hi);if(e<-m)throw new So('"iat" claim timestamp check failed (it should be in the past)',n,"iat",hi)}return n}let ki;function Ti(e){return ki.get(e)}async function Si(e,t,n,o,r){const i=T(function(e){if(void 0===e)return[void 0,""];const t=function(e,t){let n,o;try{n=JSON.stringify(t),o=JSON.parse(n)}catch(t){throw new e("JOSE Header is not valid JSON",{cause:t})}if(!zo(o))throw new e("JOSE Header is not a JSON object");return[o,n]}(Ro,e);return[t[0],Ko(t[1])]}(t),2),s=i[0],a=i[1];if(!s)throw new Ro("either setProtectedHeader or setUnprotectedHeader must be called before #sign()");(function(e,t,n){return function(e,t){const n=(null!=t?t:{}).crit;if(Array.isArray(n)&&new Set(n).size!==n.length)throw new e('"crit" (Critical) Header Parameter MUST NOT contain duplicate values')}(Ro,e),yr(e,mr(Ro,pr,n,e,t))})(s,s,n)||r();const c=function(e){const t=e.alg;if("string"!=typeof t||!t)throw new Ro('JWS "alg" (Algorithm) Header Parameter missing or invalid');return ai(t)}(s),u=Ko(e),l=await async function(e,t,n,o){const r=vo(bo(e),bo("."),t),i=await tr(n,o,"sign");return Ko(await async function(e,t,n){const o=await $r(e,t,"sign"),r=await crypto.subtle.sign(e.signing,o,n);return new Uint8Array(r)}(n,i,r))}(a,bo(u),c,o);return"".concat(a,".").concat(u,".").concat(l)}const Ei=class{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!zo(e))throw new TypeError("JWT Claims Set MUST be an object");(ki||(ki=new WeakMap)).set(this,structuredClone(e))}setIssuer(e){return yi("iss",e),Ti(this).iss=e,this}setSubject(e){return yi("sub",e),Ti(this).sub=e,this}setAudience(e){return function(e){if("string"!=typeof e&&(!Array.isArray(e)||Array.from(e).some(e=>"string"!=typeof e)))throw new TypeError('"aud" claim must be a string or an array of strings')}(e),Ti(this).aud=e,this}setJti(e){return yi("jti",e),Ti(this).jti=e,this}setNotBefore(e){return Ti(this).nbf=wi(e,"setNotBefore"),this}setExpirationTime(e){return Ti(this).exp=wi(e,"setExpirationTime"),this}setIssuedAt(e){return Ti(this).iat=void 0===e?ui(new Date):"string"==typeof e?mi("setIssuedAt",ui(new Date)+fi(e)):wi(e,"setIssuedAt"),this}};var Pi=new WeakMap;class Ci extends Ei{constructor(){super(...arguments),y(this,Pi,void 0)}setProtectedHeader(e){return function(e){if(void 0!==e)throw new TypeError("".concat("setProtectedHeader"," can only be called once"))}(m(Pi,this)),w(Pi,this,e),this}async sign(e,t){return Si(function(e){const t=Ti(e);for(const e of["iat","nbf","exp"]){const n=t[e];if("number"==typeof n&&!Number.isFinite(n))throw new TypeError('"'.concat(e,'" claim must be a finite number'))}return yo.encode(JSON.stringify(t))}(this),m(Pi,this),null==t?void 0:t.crit,e,()=>{throw new Ao("JWTs MUST NOT use unencoded payload")})}}const Ri='"alg" (Algorithm)';function Ai(){throw new Co("Invalid or unsupported ".concat(arguments.length>0&&void 0!==arguments[0]?arguments[0]:'JWK "alg" (Algorithm) Parameter'," value"))}const xi=(e,t)=>{if(e.byteLength!==t.length)return!1;for(let n=0;n<e.byteLength;n++)if(e[n]!==t[n])return!1;return!0},Ii=e=>{const t=e.data[e.pos++];if(void 0===t)throw new Error("Unexpected end of ASN.1 input");return t},Oi=e=>{const t=Ii(e);if(128&t){const n=127&t;let o=0;for(let t=0;t<n;t++)o=o<<8|Ii(e);return o}return t},ji=(e,t,n)=>{if(Ii(e)!==t)throw new Error(n)},Wi=(e,t)=>{if(t<0||e.pos+t>e.data.length)throw new Error("Unexpected end of ASN.1 input");const n=e.data.subarray(e.pos,e.pos+t);return e.pos+=t,n},Ni=e=>{const t=(e=>{ji(e,6,"Expected algorithm OID");const t=Oi(e);return Wi(e,t)})(e);if(xi(t,[43,101,110]))return"X25519";if(!xi(t,[42,134,72,206,61,2,1]))throw new Error("Unsupported key algorithm");ji(e,6,"Expected curve OID");const n=Oi(e),o=Wi(e,n);if(xi(o,[42,134,72,206,61,3,1,7]))return"P-256";if(xi(o,[43,129,4,0,34]))return"P-384";if(xi(o,[43,129,4,0,35]))return"P-521";throw new Error("Unsupported named curve")},Ui=(e,t,n)=>{const o=(e=>Uo(e.replace(/(?:-----(?:BEGIN|END) PRIVATE KEY-----|\s)/g,"")))(e);return(async(e,t,n,o)=>{const r=function(e){if(void 0!==e&&"boolean"!=typeof e)throw new TypeError('"extractable" option must be a boolean');return e}(null==o?void 0:o.extractable),i=function(e,t){var n,o;return null!==(n="string"==typeof e?null!==(o=si[e])&&void 0!==o?o:lr[e]:void 0)&&void 0!==n?n:Ai(t)}(n,Ri);i.secret&&Ai(Ri);const s="spki"===e;let a;if(i.resolve)try{const n={data:t,pos:0};!function(e,t){if(ji(e,48,"Invalid ".concat("spki"===t?"SPKI":"PKCS#8"," structure")),Oi(e),"pkcs8"===t){ji(e,2,"Expected version field");const t=Oi(e);e.pos+=t}ji(e,48,"Expected algorithm identifier"),Oi(e)}(n,e),a=i.resolve({crv:Ni(n)})}catch(e){throw new Co("Invalid or unsupported key format")}else a=i.subtle;return crypto.subtle.importKey(e,t,a,null!=r?r:s,i.usages[s?0:1])})("pkcs8",o,t,n)};async function Mi(e,t,n){const o=e.get(t)||e.set(t,{}).get(t),r=n.alg;if(void 0===o[r]){const e=await Zo(n,_(_({},t),{},{alg:r,ext:!0}));if("public"!==e.type)throw new xo("JSON Web Key Set members must be public keys");o[r]=e}return o[r]}function Li(e){let t;try{t=structuredClone(e)}catch(e){}if(!Jo(t))throw new xo("JSON Web Key Set malformed");const n=new WeakMap;return Object.defineProperty(async(e,o)=>{const r=_(_({},e),null==o?void 0:o.header),i=r.alg,s=r.kid,a="string"==typeof i?si[i]:void 0;if(!a||a.secret)throw new Co('Unsupported "alg" value for a JSON Web Key Set');const c=t.keys.filter(e=>function(e,t,n,o){const r=Ho(e),i=r.kty,s=r.key_ops,a=r.ext,c=r.kid,u=r.alg,l=r.use,d=r.crv,h=Array.isArray(s)?[...s]:s;return(void 0===a||"boolean"==typeof a)&&(void 0===h||Array.isArray(h)&&h.every((e,t)=>"string"==typeof e&&h.indexOf(e)===t)&&h.includes("verify"))&&t.kty.includes(i)&&(void 0===o||"string"==typeof o&&o===c)&&(void 0===u?"AKP"!==i:n===u)&&(void 0===l||"sig"===l)&&(!t.crv||d===t.crv)}(e,a,i,s)),u=c[0],l=c.length;if(!l)throw new Io;if(1!==l){const e=new Oo;throw e[Symbol.asyncIterator]=S(function*(){for(const e of c)try{yield yield p(Mi(n,e,a))}catch(e){}}),e}return Mi(n,u,a)},"jwks",{value:()=>structuredClone(t)})}var Ki,zi;let Ji;if("undefined"==typeof navigator||null===(Ki=navigator.userAgent)||void 0===Ki||null===(zi=Ki.startsWith)||void 0===zi||!zi.call(Ki,"Mozilla/5.0 ")){const e="v6.2.10";Ji="".concat("jose","/").concat(e)}const Di=Symbol(),Zi=Symbol();function Hi(e,t){return Number.isFinite(e)&&Date.now()<e+t}function Fi(e,t,n){if(Number.isNaN(e))throw new TypeError('"'.concat(n,'" option must not be NaN'));return"number"==typeof e?e:t}async function Gi(e,t,n){if("string"!=typeof e||0!==e.indexOf("-----BEGIN PRIVATE KEY-----"))throw new TypeError('"pkcs8" must be PKCS#8 formatted string');return Ui(e,t,n)}const Vi=["mfaToken"],Xi=["mfaToken"];var Yi,qi,Bi,Qi,$i,es,ts,ns,os,rs,is,ss,as,cs,us,ls,ds,hs,ps,fs,ms,ys,ws,gs,vs,bs,_s,ks,Ts,Ss,Es,Ps,Cs,Rs,As,xs,Is,Os,js,Ws,Ns,Us,Ms;function Ls(e){if("object"!=typeof e||null===e)return{};const t=e;return{statusCode:"number"==typeof t.statusCode?t.statusCode:void 0,headers:t.headers instanceof Headers?t.headers:void 0,body:"string"==typeof t.body?t.body:void 0}}function Ks(e){var t,n;if("object"!=typeof e||null===e)return{error:"unknown_error",error_description:String(e)};const o=e;let r;if(o.response instanceof Response)try{r=new Headers(o.response.headers),r.delete("set-cookie")}catch(e){r=void 0}const i={error:null!==(t=o.error)&&void 0!==t?t:"",error_description:null!==(n=o.error_description)&&void 0!==n?n:"",message:o.message,statusCode:"number"==typeof o.status?o.status:void 0,headers:r};if("mfa_required"===o.error&&o.cause){i.mfa_token="string"==typeof o.cause.mfa_token?o.cause.mfa_token:void 0;const e=o.cause.mfa_requirements;"object"==typeof e&&null!==e&&(i.mfa_requirements=e)}return i}var zs=class extends Error{constructor(e,t){super(t),v(this,"code",void 0),this.name="NotSupportedError",this.code=e}},Js=class extends Error{constructor(e,t,n){super(t),v(this,"cause",void 0),v(this,"code",void 0),v(this,"statusCode",void 0),v(this,"headers",void 0),v(this,"body",void 0),this.code=e,this.cause=n&&{error:n.error,error_description:n.error_description,message:n.message,mfa_token:n.mfa_token,mfa_requirements:n.mfa_requirements};const o=Ls(n);this.statusCode=o.statusCode,this.headers=o.headers,this.body=o.body}},Ds=class extends Js{constructor(e,t){super("token_by_code_error",e,t),this.name="TokenByCodeError"}},Zs=class extends Js{constructor(e,t){super("token_by_client_credentials_error",e,t),this.name="TokenByClientCredentialsError"}},Hs=class extends Js{constructor(e,t){super("token_by_refresh_token_error",e,t),this.name="TokenByRefreshTokenError"}},Fs=class extends Js{constructor(e,t){super("token_by_password_error",e,t),this.name="TokenByPasswordError"}},Gs=class extends Js{constructor(e,t){super("token_for_connection_error",e,t),this.name="TokenForConnectionErrorCode"}},Vs=class extends Js{constructor(e,t){super("token_exchange_error",e,t),this.name="TokenExchangeError"}},Xs=class extends Js{constructor(e,t){super("token_revocation_error",e,t),this.name="TokenRevocationError"}},Ys=class extends Js{constructor(e,t){super("user_info_error",e,t),this.name="UserInfoError"}},qs=class extends Error{constructor(e){super(e),v(this,"code","verify_logout_token_error"),this.name="VerifyLogoutTokenError"}},Bs=class extends Js{constructor(e){super("backchannel_authentication_error","There was an error when trying to use Client-Initiated Backchannel Authentication.",e),v(this,"code","backchannel_authentication_error"),this.name="BackchannelAuthenticationError"}},Qs=class extends Js{constructor(e){super("build_authorization_url_error","There was an error when trying to build the authorization URL.",e),this.name="BuildAuthorizationUrlError"}},$s=class extends Js{constructor(e){super("build_link_user_url_error","There was an error when trying to build the Link User URL.",e),this.name="BuildLinkUserUrlError"}},ea=class extends Js{constructor(e){super("build_unlink_user_url_error","There was an error when trying to build the Unlink User URL.",e),this.name="BuildUnlinkUserUrlError"}},ta=class extends Error{constructor(){super("The client secret or client assertion signing key must be provided."),v(this,"code","missing_client_auth_error"),this.name="MissingClientAuthError"}},na=class extends Error{constructor(e){super(e),v(this,"code","organization_validation_error"),this.name="OrganizationValidationError"}},oa=class extends Error{constructor(e){super(e||"fullResponse: true requested but no HTTP Response was captured. This is a bug in CapturingFetch."),v(this,"code","missing_captured_response_error"),this.name="MissingCapturedResponseError"}};function ra(e){try{const t=new Headers(e);return t.delete("set-cookie"),t}catch(e){return new Headers}}function ia(e,t,n){var o;const r="object"==typeof t&&null!==t?t:void 0,i=null!==(o=null==r?void 0:r.response)&&void 0!==o?o:n,s="number"==typeof(null==r?void 0:r.status)?r.status:null==i?void 0:i.status;"number"==typeof s&&(e.statusCode=s),null!=i&&i.headers&&(e.headers=ra(i.headers))}function sa(e){return Object.entries(e).filter(e=>void 0!==T(e,2)[1]).reduce((e,t)=>_(_({},e),{},{[t[0]]:t[1]}),{})}function aa(e){if(!e.trim())throw new na("organization must not be blank")}function ca(e,t){if(!e)return;const n=t.trim();if(n.startsWith("org_")){const t=e.org_id;if("string"!=typeof t)throw new na("Organization Id (org_id) claim must be a string present in the ID token");if(t!==n)throw new na('Organization Id (org_id) claim value mismatch in the ID token; expected "'.concat(n,'", found "').concat(t,'"'))}else{const t=e.org_name;if("string"!=typeof t)throw new na("Organization Name (org_name) claim must be a string present in the ID token");if(t.toLowerCase()!==n.toLowerCase())throw new na('Organization Name (org_name) claim value mismatch in the ID token; expected "'.concat(n,'", found "').concat(t,'"'))}}var ua=class extends Error{constructor(e,t,n){super(t),v(this,"cause",void 0),v(this,"code",void 0),v(this,"statusCode",void 0),v(this,"headers",void 0),v(this,"body",void 0),this.code=e,this.cause=n&&{error:n.error,error_description:n.error_description,message:n.message};const o=Ls(n);this.statusCode=o.statusCode,this.headers=o.headers,this.body=o.body}},la=class extends ua{constructor(e,t){super("mfa_list_authenticators_error",e,t),this.name="MfaListAuthenticatorsError"}},da=class extends ua{constructor(e,t){super("mfa_enrollment_error",e,t),this.name="MfaEnrollmentError"}},ha=class extends ua{constructor(e,t){super("mfa_delete_authenticator_error",e,t),this.name="MfaDeleteAuthenticatorError"}},pa=class extends ua{constructor(e,t){super("mfa_challenge_error",e,t),this.name="MfaChallengeError"}},fa=class extends ua{constructor(e,t){super("mfa_verify_error",e,t),this.name="MfaVerifyError"}};function ma(e){return{id:e.id,authenticatorType:e.authenticator_type,active:e.active,name:e.name,oobChannels:e.oob_channels,type:e.type}}var ya=class e{constructor(e,t,n,o,r,i,s){v(this,"accessToken",void 0),v(this,"idToken",void 0),v(this,"refreshToken",void 0),v(this,"expiresAt",void 0),v(this,"scope",void 0),v(this,"claims",void 0),v(this,"authorizationDetails",void 0),v(this,"tokenType",void 0),v(this,"issuedTokenType",void 0),v(this,"recoveryCode",void 0),v(this,"act",void 0),this.accessToken=e,this.idToken=n,this.refreshToken=o,this.expiresAt=t,this.scope=r,this.claims=i,this.authorizationDetails=s}static fromTokenEndpointResponse(t){const n=t.id_token?t.claims():void 0,o=new e(t.access_token,Math.floor(Date.now()/1e3)+Number(t.expires_in),t.id_token,t.refresh_token,t.scope,n,t.authorization_details);return o.tokenType=t.token_type,o.issuedTokenType=t.issued_token_type,o}};function wa(e,t){if(!1===t.enabled)return e;const n={name:t.name,version:t.version},o=btoa(JSON.stringify(n));return async(t,n)=>{const r=t instanceof Request?new Headers(t.headers):new Headers;return null!=n&&n.headers&&new Headers(n.headers).forEach((e,t)=>{r.set(t,e)}),r.set("Auth0-Client",o),e(t,_(_({},n),{},{headers:r}))}}function ga(e){var t,n;return!1===(null==e?void 0:e.enabled)?e:{enabled:!0,name:null!==(t=null==e?void 0:e.name)&&void 0!==t?t:"@auth0/auth0-auth-js",version:null!==(n=null==e?void 0:e.version)&&void 0!==n?n:"1.13.0"}}function va(e){let t;const n=async(n,o)=>{const r=await e(n,o);return t=r.clone(),r};return n.getCapturedResponse=()=>t,n}function ba(e,t,n){if(!t)return e;const o=t.signal,r=t.headers,i=t.customFetch,s=i?wa(i,n):e;return o||r?async(e,t)=>{const n=r?new Headers(e instanceof Request?e.headers:void 0):void 0;if(n&&null!=t&&t.headers&&new Headers(t.headers).forEach((e,t)=>n.set(t,e)),r)for(const e of Object.entries(r)){var i=T(e,2);const t=i[0],o=i[1],r=t.toLowerCase();"authorization"!==r&&"auth0-client"!==r&&n.set(t,o)}const a=function(e,t){if(!e)return{signal:null!=t?t:void 0};if(!t)return{signal:e};if("undefined"!=typeof AbortSignal&&"function"==typeof AbortSignal.any)return{signal:AbortSignal.any([e,t])};const n=new AbortController,o=[e,t],r=o.find(e=>e.aborted);if(r)return n.abort(r.reason),{signal:n.signal};const i=[],s=()=>{o.forEach((e,t)=>{const n=i[t];n&&e.removeEventListener("abort",n)})};return o.forEach((e,t)=>{const o=()=>{s(),n.abort(e.reason)};i[t]=o,e.addEventListener("abort",o,{once:!0})}),{signal:n.signal,cleanup:s}}(o,null==t?void 0:t.signal);try{return await s(e,_(_(_({},t),n&&{headers:n}),{},{signal:a.signal}))}finally{var c;null===(c=a.cleanup)||void 0===c||c.call(a)}}:s}var _a={otp:"http://auth0.com/oauth/grant-type/mfa-otp",oob:"http://auth0.com/oauth/grant-type/mfa-oob","recovery-code":"http://auth0.com/oauth/grant-type/mfa-recovery-code"},ka=(Yi=new WeakMap,qi=new WeakMap,Bi=new WeakMap,Qi=new WeakMap,$i=new WeakMap,es=new WeakMap,ts=new WeakMap,ns=new WeakSet,class{constructor(e){var t,n;g(this,ns),y(this,Yi,void 0),y(this,qi,void 0),y(this,Bi,void 0),y(this,Qi,void 0),y(this,$i,void 0),y(this,es,void 0),y(this,ts,void 0),w(Yi,this,"https://".concat(e.domain)),w(qi,this,e.clientId),w(Bi,this,e.clientSecret),w(Qi,this,null!==(t=e.customFetch)&&void 0!==t?t:function(){return fetch(...arguments)}),w($i,this,null!==(n=e.telemetryConfig)&&void 0!==n?n:ga()),w(es,this,e.getConfiguration),w(ts,this,e.createCaptureConfiguration)}async listAuthenticators(e,t){const n="".concat(m(Yi,this),"/mfa/authenticators"),o=e.mfaToken,r=await h(ns,this,Ta).call(this,t)(n,{method:"GET",headers:{Authorization:"Bearer ".concat(o),"Content-Type":"application/json"}});if(!r.ok){const e=await r.clone().text(),t=r.status,n=ra(r.headers);let i;try{i=JSON.parse(e)}catch(o){throw new la("Failed to list authenticators",{error:"unknown_error",error_description:"Failed to list authenticators",statusCode:t,headers:n,body:e})}throw new la(i.error_description||"Failed to list authenticators",_(_({},i),{},{statusCode:t,headers:n,body:e}))}return(await r.json()).map(ma)}async enrollAuthenticator(e,t){const n="".concat(m(Yi,this),"/mfa/associate"),o=e.mfaToken,r=k(e,Vi),i={authenticator_types:r.authenticatorTypes};"oobChannels"in r&&(i.oob_channels=r.oobChannels),"phoneNumber"in r&&r.phoneNumber&&(i.phone_number=r.phoneNumber),"email"in r&&r.email&&(i.email=r.email);const s=await h(ns,this,Ta).call(this,t)(n,{method:"POST",headers:{Authorization:"Bearer ".concat(o),"Content-Type":"application/json"},body:JSON.stringify(i)});if(!s.ok){const e=await s.clone().text(),t=s.status,n=ra(s.headers);let r;try{r=JSON.parse(e)}catch(o){throw new da("Failed to enroll authenticator",{error:"unknown_error",error_description:"Failed to enroll authenticator",statusCode:t,headers:n,body:e})}throw new da(r.error_description||"Failed to enroll authenticator",_(_({},r),{},{statusCode:t,headers:n,body:e}))}return function(e){if("otp"===e.authenticator_type)return{authenticatorType:"otp",secret:e.secret,barcodeUri:e.barcode_uri,recoveryCodes:e.recovery_codes,id:e.id};if("oob"===e.authenticator_type)return{authenticatorType:"oob",oobChannel:e.oob_channel,oobCode:e.oob_code,bindingMethod:e.binding_method,id:e.id,barcodeUri:e.barcode_uri,recoveryCodes:e.recovery_codes};throw new Error("Unexpected authenticator type: ".concat(e.authenticator_type))}(await s.json())}async deleteAuthenticator(e,t){const n=e.authenticatorId,o=e.mfaToken,r="".concat(m(Yi,this),"/mfa/authenticators/").concat(encodeURIComponent(n)),i=await h(ns,this,Ta).call(this,t)(r,{method:"DELETE",headers:{Authorization:"Bearer ".concat(o),"Content-Type":"application/json"}});if(!i.ok){const e=await i.clone().text(),t=i.status,n=ra(i.headers);let r;try{r=JSON.parse(e)}catch(o){throw new ha("Failed to delete authenticator",{error:"unknown_error",error_description:"Failed to delete authenticator",statusCode:t,headers:n,body:e})}throw new ha(r.error_description||"Failed to delete authenticator",_(_({},r),{},{statusCode:t,headers:n,body:e}))}}async challengeAuthenticator(e,t){const n="".concat(m(Yi,this),"/mfa/challenge"),o=e.mfaToken,r=k(e,Xi),i={mfa_token:o,client_id:m(qi,this),challenge_type:r.challengeType};m(Bi,this)&&(i.client_secret=m(Bi,this)),r.authenticatorId&&(i.authenticator_id=r.authenticatorId);const s=await h(ns,this,Ta).call(this,t)(n,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(i)});if(!s.ok){const e=await s.clone().text(),t=s.status,n=ra(s.headers);let r;try{r=JSON.parse(e)}catch(o){throw new pa("Failed to challenge authenticator",{error:"unknown_error",error_description:"Failed to challenge authenticator",statusCode:t,headers:n,body:e})}throw new pa(r.error_description||"Failed to challenge authenticator",_(_({},r),{},{statusCode:t,headers:n,body:e}))}return function(e){const t={challengeType:e.challenge_type};return void 0!==e.oob_code&&(t.oobCode=e.oob_code),void 0!==e.binding_method&&(t.bindingMethod=e.binding_method),t}(await s.json())}async verify(e,t){if(!m(es,this))throw new Error("MFA verify requires a configuration provider (getConfiguration was not set)");const n={mfa_token:e.mfaToken};if(e.audience&&(n.audience=e.audience),"otp"===e.factorType?n.otp=e.otp:"oob"===e.factorType?(n.oob_code=e.oobCode,e.bindingCode&&(n.binding_code=e.bindingCode)):"recovery-code"===e.factorType&&(n.recovery_code=e.recoveryCode),e.fullResponse){var o;if(!m(ts,this))throw new Error("MFA verify fullResponse requires a capture-config factory (createCaptureConfiguration was not set)");const a=va(null!==(o=(await m(es,this).call(this,t))[Pr])&&void 0!==o?o:fetch),c=await m(ts,this).call(this,a);try{const t=await Qr(c,_a[e.factorType],n),o=ya.fromTokenEndpointResponse(t);t.recovery_code&&(o.recoveryCode=t.recovery_code);const r=a.getCapturedResponse();if(!r)throw new oa;return{data:o,response:r}}catch(e){var r,i,s;if(e instanceof oa)throw e;if(e instanceof fa)throw e;const t=e,n=new fa(t.error_description||t.message||"Failed to verify MFA challenge",{error:null!==(r=t.error)&&void 0!==r?r:"mfa_verify_error",error_description:null!==(i=null!==(s=t.error_description)&&void 0!==s?s:t.message)&&void 0!==i?i:"Failed to verify MFA challenge"});throw ia(n,e,a.getCapturedResponse()),n}}const a=await m(es,this).call(this,t);try{const t=await Qr(a,_a[e.factorType],n),o=ya.fromTokenEndpointResponse(t);return t.recovery_code&&(o.recoveryCode=t.recovery_code),o}catch(e){var c,u,l;if(e instanceof fa)throw e;const t=e,n=new fa(t.error_description||t.message||"Failed to verify MFA challenge",{error:null!==(c=t.error)&&void 0!==c?c:"mfa_verify_error",error_description:null!==(u=null!==(l=t.error_description)&&void 0!==l?l:t.message)&&void 0!==u?u:"Failed to verify MFA challenge"});throw ia(n,e),n}}});function Ta(e){return ba(m(Qi,this),e,m($i,this))}var Sa=class extends Error{constructor(e,t,n){super(t),v(this,"cause",void 0),v(this,"code",void 0),v(this,"statusCode",void 0),v(this,"headers",void 0),v(this,"body",void 0),this.code=e,this.cause=n&&{error:n.error,error_description:n.error_description,message:n.message};const o=Ls(n);this.statusCode=o.statusCode,this.headers=o.headers,this.body=o.body}},Ea=class extends Sa{constructor(e,t){super("passkey_register_error",e,t),this.name="PasskeyRegisterError"}},Pa=class extends Sa{constructor(e,t){super("passkey_challenge_error",e,t),this.name="PasskeyChallengeError"}},Ca=class extends Sa{constructor(e,t){super("passkey_get_token_error",e,t),this.name="PasskeyGetTokenError",this.cause=t&&{error:t.error,error_description:t.error_description,message:t.message,mfa_token:t.mfa_token,mfa_requirements:t.mfa_requirements}}};function Ra(e){return e.useMtls?{}:e.clientSecret?{client_secret:e.clientSecret}:{}}var Aa="urn:okta:params:oauth:grant-type:webauthn",xa=(os=new WeakMap,rs=new WeakMap,is=new WeakMap,ss=new WeakMap,as=new WeakMap,cs=new WeakMap,us=new WeakSet,class{constructor(e){var t,n;g(this,us),y(this,os,void 0),y(this,rs,void 0),y(this,is,void 0),y(this,ss,void 0),y(this,as,void 0),y(this,cs,void 0),w(os,this,"https://".concat(e.domain)),w(rs,this,e.clientId),w(is,this,{clientSecret:e.clientSecret,useMtls:e.useMtls}),w(ss,this,null!==(t=e.customFetch)&&void 0!==t?t:function(){return fetch(...arguments)}),w(as,this,null!==(n=e.telemetryConfig)&&void 0!==n?n:ga()),w(cs,this,e.grantRequest)}async register(e,t){const n="".concat(m(os,this),"/passkey/register"),o=_(_(_(_(_(_(_(_({},e.email&&{email:e.email}),e.name&&{name:e.name}),e.phoneNumber&&{phone_number:e.phoneNumber}),e.username&&{username:e.username}),e.givenName&&{given_name:e.givenName}),e.familyName&&{family_name:e.familyName}),e.nickname&&{nickname:e.nickname}),e.picture&&{picture:e.picture}),r=_(_({client_id:m(rs,this)},Ra(m(is,this))),{},{user_profile:o});e.realm&&(r.realm=e.realm),e.organization&&(r.organization=e.organization),e.userMetadata&&(r.user_metadata=e.userMetadata);const i=await h(us,this,Ia).call(this,t)(n,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(r)});if(!i.ok){const e=await h(us,this,Oa).call(this,i),t=new Ea(e.error_description||"Failed to request signup challenge",e);throw t.statusCode=i.status,t.headers=ra(i.headers),t}return{authSession:(s=await i.json()).auth_session,authnParamsPublicKey:_({},s.authn_params_public_key)};var s}async challenge(e,t){const n="".concat(m(os,this),"/passkey/challenge"),o=_({client_id:m(rs,this)},Ra(m(is,this)));null!=e&&e.realm&&(o.realm=e.realm),null!=e&&e.organization&&(o.organization=e.organization);const r=await h(us,this,Ia).call(this,t)(n,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(o)});if(!r.ok){const e=await h(us,this,Oa).call(this,r),t=new Pa(e.error_description||"Failed to request login challenge",e);throw t.statusCode=r.status,t.headers=ra(r.headers),t}return{authSession:(i=await r.json()).auth_session,authnParamsPublicKey:_({},i.authn_params_public_key)};var i}async getTokenByPasskey(e,t){void 0!==e.organization&&aa(e.organization);const n=new URLSearchParams({auth_session:e.authSession,authn_response:JSON.stringify(e.credential)});let o;e.realm&&n.append("realm",e.realm),e.scope&&n.append("scope",e.scope),e.audience&&n.append("audience",e.audience),e.organization&&n.append("organization",e.organization);try{o=await m(cs,this).call(this,Aa,n,t,e.fullResponse)}catch(e){if(e instanceof oa)throw e;const t=Ks(e),n=new Ca(t.error_description||"Failed to exchange passkey credential for tokens.",t);throw ia(n,e),n}if(e.fullResponse){const t=o;return e.organization&&ca(t.data.claims,e.organization),t}const r=o;return e.organization&&ca(r.claims,e.organization),r}});function Ia(e){return ba(m(ss,this),e,m(as,this))}async function Oa(e){const t=await e.clone().text();try{return _(_({},JSON.parse(t)),{},{statusCode:e.status,headers:e.headers,body:t})}catch(n){return{error:"unknown_error",error_description:"HTTP ".concat(e.status," ").concat(e.statusText),statusCode:e.status,headers:e.headers,body:t}}}var ja=class extends Error{constructor(e,t,n){super(t),v(this,"cause",void 0),v(this,"code",void 0),v(this,"statusCode",void 0),v(this,"headers",void 0),v(this,"body",void 0),Object.setPrototypeOf(this,new.target.prototype),this.code=e,this.cause=n&&(n.error||n.error_description)?{error:n.error,error_description:n.error_description,message:n.message,mfa_token:n.mfa_token,mfa_requirements:n.mfa_requirements}:void 0;const o=Ls(n);this.statusCode=o.statusCode,this.headers=o.headers,this.body=o.body}},Wa=class extends ja{constructor(e,t){super("passwordless_start_error",e,t),this.name="PasswordlessStartError"}},Na=class extends ja{constructor(e,t){super("passwordless_verify_error",e,t),this.name="PasswordlessVerifyError"}},Ua=class extends ja{constructor(e,t){super("passwordless_db_get_token_error",e,t),this.name="PasswordlessDbGetTokenError"}},Ma=class extends ja{constructor(e,t,n,o,r){super("passwordless_challenge_error",e,n),v(this,"statusCode",void 0),v(this,"validationErrors",void 0),this.name="PasswordlessChallengeError",this.statusCode=t,this.validationErrors=o,this.headers=null!=r?r:this.headers}};function La(e){return/^\+[1-9]\d{1,14}$/.test(e)}async function Ka(e,t,n){if(e.useMtls)return{};if(e.clientAssertionSigningKey){var o;const r=null!==(o=e.clientAssertionSigningAlg)&&void 0!==o?o:"RS256",i=e.clientAssertionSigningKey instanceof CryptoKey?e.clientAssertionSigningKey:await Gi(e.clientAssertionSigningKey,r);return{client_assertion:await new Ci({}).setProtectedHeader({alg:r}).setIssuer(t).setSubject(t).setAudience("https://".concat(n,"/")).setJti(crypto.randomUUID()).setIssuedAt().setExpirationTime("".concat(120,"s")).sign(i),client_assertion_type:"urn:ietf:params:oauth:client-assertion-type:jwt-bearer"}}if(e.clientSecret)return{client_secret:e.clientSecret};throw new ta}var za=(ls=new WeakMap,ds=new WeakMap,hs=new WeakMap,ps=new WeakMap,fs=new WeakMap,ms=new WeakMap,ys=new WeakMap,ws=new WeakSet,class{constructor(e){var t,n;g(this,ws),y(this,ls,void 0),y(this,ds,void 0),y(this,hs,void 0),y(this,ps,void 0),y(this,fs,void 0),y(this,ms,void 0),y(this,ys,void 0),w(ds,this,e.domain),w(ls,this,"https://".concat(e.domain)),w(hs,this,e.clientId),w(ps,this,null!==(t=e.customFetch)&&void 0!==t?t:function(){return fetch(...arguments)}),w(fs,this,null!==(n=e.telemetryConfig)&&void 0!==n?n:ga()),w(ms,this,{clientSecret:e.clientSecret,clientAssertionSigningKey:e.clientAssertionSigningKey,clientAssertionSigningAlg:e.clientAssertionSigningAlg,useMtls:e.useMtls}),w(ys,this,e.grantRequest)}async sendEmail(e,t){const n=await h(ws,this,Da).call(this,function(e){var t;const n=null!==(t=e.send)&&void 0!==t?t:"code",o={email:e.email,connection:"email",send:n};return"link"===n&&e.authParams&&(o.authParams=e.authParams),o}(e),"Failed to send passwordless email",e.language,t);if(e.fullResponse)return{data:void 0,response:n}}async sendSms(e,t){if(!La(e.phoneNumber))throw new Wa("Phone number must be in E.164 format (e.g. +14155550100).");const n=await h(ws,this,Da).call(this,function(e){return{phone_number:e.phoneNumber,connection:"sms"}}(e),"Failed to send passwordless SMS",e.language,t);if(e.fullResponse)return{data:void 0,response:n}}async challengeWithEmail(e,t){const n=function(e){var t;return{email:e.email,connection:e.connection,allow_signup:null!==(t=e.allowSignup)&&void 0!==t&&t}}(e);return h(ws,this,Za).call(this,n,"Failed to request email OTP challenge",t)}async challengeWithPhoneNumber(e,t){if(!La(e.phoneNumber))throw new Ma("Phone number must be in E.164 format (e.g. +14155550100).",0,void 0,void 0);const n=function(e){var t;const n={phone_number:e.phoneNumber,connection:e.connection,allow_signup:null!==(t=e.allowSignup)&&void 0!==t&&t};return e.deliveryMethod&&(n.delivery_method=e.deliveryMethod),n}(e);return h(ws,this,Za).call(this,n,"Failed to request phone OTP challenge",t)}async getTokenByPasswordlessDbConnection(e,t){const n=new URLSearchParams({auth_session:e.authSession,otp:e.otp});if(e.scope&&n.append("scope",e.scope),e.audience&&n.append("audience",e.audience),!m(ys,this))throw new Ua("Missing grant request delegate.",Ks(new Error("missing grantRequest")));try{return await m(ys,this).call(this,"http://auth0.com/oauth/grant-type/passwordless/otp",n,t,e.fullResponse)}catch(e){if(e instanceof oa)throw e;const t=new Ua("There was an error while trying to request a token.",Ks(e)),n=e;throw t.statusCode=n._statusCode,t.headers=n._headers,t}}});function Ja(e){return ba(m(ps,this),e,m(fs,this))}async function Da(e,t,n,o){var r;const i=await Ka(m(ms,this),m(hs,this),m(ds,this)),s=_(_({client_id:m(hs,this)},e),i);let a;try{a=await h(ws,this,Ja).call(this,o)("".concat(m(ls,this),"/passwordless/start"),{method:"POST",headers:_({"Content-Type":"application/json"},n?{"x-request-language":n}:{}),body:JSON.stringify(s)})}catch(e){throw new Wa("".concat(t,": a network error occurred."))}if(a.ok)return a;const c=await a.clone().text();let u;if(204!==a.status)try{u=JSON.parse(c)}catch(e){u=void 0}const l=new Wa((null===(r=u)||void 0===r?void 0:r.error_description)||t,u);throw l.statusCode=a.status,l.headers=ra(a.headers),l.body=c,l}async function Za(e,t,n){var o,r;const i=await Ka(m(ms,this),m(hs,this),m(ds,this)),s=_(_({client_id:m(hs,this)},e),i);let a;try{a=await h(ws,this,Ja).call(this,n)("".concat(m(ls,this),"/otp/challenge"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(s)})}catch(e){throw new Ma("challenge error: a network error occurred.",0,void 0,void 0)}if(a.ok){let n;try{n=await a.json()}catch(e){throw new Ma("".concat(t,": could not parse the response body."),a.status,void 0,void 0,ra(a.headers))}return{authSession:n.auth_session}}const c=await a.clone().text();let u;try{u=JSON.parse(c)}catch(e){u=void 0}const l=u?_(_({},u),{},{statusCode:a.status,headers:a.headers,body:c}):{error:"",error_description:"",statusCode:a.status,headers:a.headers,body:c};throw new Ma((null===(o=u)||void 0===o?void 0:o.error_description)||t,a.status,l,null===(r=u)||void 0===r?void 0:r.validation_errors,ra(a.headers))}var Ha=class extends Error{constructor(e,t,n){super(t),v(this,"cause",void 0),v(this,"code",void 0),v(this,"statusCode",void 0),v(this,"headers",void 0),v(this,"body",void 0),Object.setPrototypeOf(this,new.target.prototype),this.code=e,this.cause=n&&{error:n.error,error_description:n.error_description,message:n.message};const o=Ls(n);this.statusCode=o.statusCode,this.headers=o.headers,this.body=o.body}},Fa=class extends Ha{constructor(e,t){super("signup_error",e,t),this.name="SignUpError"}},Ga=class extends Ha{constructor(e,t){super("change_password_error",e,t),this.name="ChangePasswordError"}};function Va(e,t,n){for(const o of t)if(null===e[o]||void 0===e[o]||""===e[o])throw new n('Required parameter "'.concat(String(o),'" was null, undefined, or empty.'))}function Xa(e){var t,n;return{id:null!==(t=null!==(n=e._id)&&void 0!==n?n:e.user_id)&&void 0!==t?t:e.id,email:"string"==typeof e.email?e.email:"",emailVerified:Boolean(e.email_verified),username:e.username,givenName:e.given_name,familyName:e.family_name,name:e.name,nickname:e.nickname,picture:e.picture,userMetadata:e.user_metadata}}var Ya=(gs=new WeakMap,vs=new WeakMap,bs=new WeakMap,_s=new WeakMap,ks=new WeakSet,class{constructor(e){var t,n;g(this,ks),y(this,gs,void 0),y(this,vs,void 0),y(this,bs,void 0),y(this,_s,void 0),w(gs,this,"https://".concat(e.domain)),w(vs,this,e.clientId),w(bs,this,null!==(t=e.customFetch)&&void 0!==t?t:function(){return fetch(...arguments)}),w(_s,this,null!==(n=e.telemetryConfig)&&void 0!==n?n:ga())}async signUp(e,t){var n;Va(e,["email","password","connection"],Fa);const o=_({client_id:null!==(n=e.clientId)&&void 0!==n?n:m(vs,this)},function(e){const t={email:e.email,password:e.password,connection:e.connection};return void 0!==e.username&&(t.username=e.username),void 0!==e.givenName&&(t.given_name=e.givenName),void 0!==e.familyName&&(t.family_name=e.familyName),void 0!==e.name&&(t.name=e.name),void 0!==e.nickname&&(t.nickname=e.nickname),void 0!==e.picture&&(t.picture=e.picture),void 0!==e.userMetadata&&(t.user_metadata=e.userMetadata),t}(e)),r=await h(ks,this,qa).call(this,"/dbconnections/signup",o,Fa,"Failed to sign up",t);if(e.fullResponse){const e=r.clone();return{data:Xa(await r.json()),response:e}}return Xa(await r.json())}async changePassword(e,t){var n;if(Va(e,["connection"],Ga),!e.email&&!e.username)throw new Ga('Either "email" or "username" is required.');const o=_({client_id:null!==(n=e.clientId)&&void 0!==n?n:m(vs,this)},function(e){const t={connection:e.connection};return void 0!==e.email&&(t.email=e.email),void 0!==e.username&&(t.username=e.username),void 0!==e.organization&&(t.organization=e.organization),t}(e)),r=await h(ks,this,qa).call(this,"/dbconnections/change_password",o,Ga,"Failed to request a password change",t);if(e.fullResponse){const e=r.clone();return{data:await r.text(),response:e}}return r.text()}});async function qa(e,t,n,o,r){const i=ba(m(bs,this),r,m(_s,this));let s;try{s=await i("".concat(m(gs,this)).concat(e),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)})}catch(e){throw new n("".concat(o,": a network error occurred."))}if(s.ok)return s;const a=await s.clone().text(),c=await async function(e){let t;try{t=await e.json()}catch(e){return}return"string"==typeof t.error?t:"string"==typeof t.code?{error:t.code,error_description:"string"==typeof t.description?t.description:""}:void 0}(s.clone()),u=new n((null==c?void 0:c.error_description)||o,null!=c?c:{error:"unknown_error",error_description:o});throw u.statusCode=s.status,u.headers=ra(s.headers),u.body=a,u}var Ba=(Ts=new WeakMap,Ss=new WeakMap,Es=new WeakMap,class{constructor(e,t){y(this,Ts,new Map),y(this,Ss,void 0),y(this,Es,void 0),w(Es,this,Math.max(1,Math.floor(e))),w(Ss,this,Math.max(0,Math.floor(t)))}get(e){const t=m(Ts,this).get(e);if(t){if(!(Date.now()>=t.expiresAt))return m(Ts,this).delete(e),m(Ts,this).set(e,t),t.value;m(Ts,this).delete(e)}}set(e,t){for(m(Ts,this).has(e)&&m(Ts,this).delete(e),m(Ts,this).set(e,{value:t,expiresAt:Date.now()+m(Ss,this)});m(Ts,this).size>m(Es,this);){const e=m(Ts,this).keys().next().value;if(void 0===e)break;m(Ts,this).delete(e)}}}),Qa=new Map;function $a(e){return{ttlMs:1e3*("number"==typeof(null==e?void 0:e.ttl)?e.ttl:600),maxEntries:"number"==typeof(null==e?void 0:e.maxEntries)&&e.maxEntries>0?e.maxEntries:100}}var ec=class{static createDiscoveryCache(e){const t=(n=e.maxEntries,o=e.ttlMs,"".concat(n,":").concat(o));var n,o;let r=(i=t,Qa.get(i));var i;return r||(r=new Ba(e.maxEntries,e.ttlMs),Qa.set(t,r)),r}static createJwksCache(){return{}}},tc="openid profile email offline_access",nc=Object.freeze(new Set(["grant_type","client_id","client_secret","client_assertion","client_assertion_type","subject_token","subject_token_type","requested_token_type","actor_token","actor_token_type","audience","aud","resource","resources","resource_indicator","scope","connection","login_hint","organization","assertion"]));function oc(e){if(null==e)throw new Vs("subject_token is required");if("string"!=typeof e)throw new Vs("subject_token must be a string");if(0===e.trim().length)throw new Vs("subject_token cannot be blank or whitespace");if(e!==e.trim())throw new Vs("subject_token must not include leading or trailing whitespace");if(/^bearer\s+/i.test(e))throw new Vs("subject_token must not include the 'Bearer ' prefix")}function rc(e,t){if(t)for(const o of Object.entries(t)){var n=T(o,2);const t=n[0],r=n[1];if(!nc.has(t))if(Array.isArray(r)){if(r.length>20)throw new Vs("Parameter '".concat(t,"' exceeds maximum array size of ").concat(20));r.forEach(n=>{e.append(t,n)})}else e.append(t,r)}}var ic="urn:auth0:params:oauth:grant-type:token-exchange:federated-connection-access-token",sc="urn:ietf:params:oauth:grant-type:token-exchange",ac="urn:ietf:params:oauth:token-type:access_token";function cc(e,t){return(n,o)=>{const r=null==o?void 0:o.body;if(t!==Aa||!(r instanceof URLSearchParams))return e(n,o);const i={};for(const e of r){var s=T(e,2);const t=s[0],n=s[1];i[t]="authn_response"===t?JSON.parse(n):n}const a=new Headers(null==o?void 0:o.headers);return a.set("Content-Type","application/json"),e(n,_(_({},o),{},{headers:a,body:JSON.stringify(i)}))}}var uc,lc,dc=(Ps=new WeakMap,Cs=new WeakMap,Rs=new WeakMap,As=new WeakMap,xs=new WeakMap,Is=new WeakMap,Os=new WeakMap,js=new WeakMap,Ws=new WeakMap,Ns=new WeakMap,Us=new WeakMap,Ms=new WeakSet,class{constructor(e){var t;if(g(this,Ms),y(this,Ps,void 0),y(this,Cs,void 0),y(this,Rs,void 0),y(this,As,void 0),y(this,xs,void 0),y(this,Is,void 0),y(this,Os,void 0),y(this,js,void 0),y(this,Ws,void 0),y(this,Ns,void 0),y(this,Us,void 0),v(this,"mfa",void 0),v(this,"passkey",void 0),v(this,"passwordless",void 0),v(this,"database",void 0),w(xs,this,e),e.useMtls&&!e.customFetch)throw new zs("mtls_without_custom_fetch_not_supported","Using mTLS without a custom fetch implementation is not supported");w(Os,this,ga(e.telemetry)),w(Is,this,wa(null!==(t=e.customFetch)&&void 0!==t?t:function(){return fetch(...arguments)},m(Os,this)));const n=$a(e.discoveryCache);w(Ws,this,ec.createDiscoveryCache(n)),w(Ns,this,new Map),w(Us,this,ec.createJwksCache()),this.mfa=new ka({domain:m(xs,this).domain,clientId:m(xs,this).clientId,clientSecret:m(xs,this).clientSecret,customFetch:m(Is,this),telemetryConfig:m(Os,this),getConfiguration:async e=>(await h(Ms,this,mc).call(this,e)).configuration,createCaptureConfiguration:async e=>{const t=(await h(Ms,this,yc).call(this)).serverMetadata;return h(Ms,this,pc).call(this,t,e)}}),this.passkey=new xa({domain:m(xs,this).domain,clientId:m(xs,this).clientId,clientSecret:m(xs,this).clientSecret,useMtls:m(xs,this).useMtls,customFetch:m(Is,this),telemetryConfig:m(Os,this),grantRequest:async(e,t,n,o)=>{const r=(await h(Ms,this,yc).call(this)).serverMetadata,i=h(Ms,this,fc).call(this,n);if(o){const n=va(i),o=await h(Ms,this,pc).call(this,r,n);o[Pr]=cc(n,e);const s=await Qr(o,e,t),a=ya.fromTokenEndpointResponse(s),c=n.getCapturedResponse();if(!c)throw new oa;return{data:a,response:c}}const s=await h(Ms,this,pc).call(this,r);s[Pr]=cc(i,e);const a=await Qr(s,e,t);return ya.fromTokenEndpointResponse(a)}}),this.passwordless=new za({domain:m(xs,this).domain,clientId:m(xs,this).clientId,customFetch:m(Is,this),telemetryConfig:m(Os,this),clientSecret:m(xs,this).clientSecret,clientAssertionSigningKey:m(xs,this).clientAssertionSigningKey,clientAssertionSigningAlg:m(xs,this).clientAssertionSigningAlg,useMtls:m(xs,this).useMtls,grantRequest:async(e,t,n,o)=>{const r=(await h(Ms,this,mc).call(this,n)).configuration;if(o){var i;const n=va(null!==(i=r[Pr])&&void 0!==i?i:m(Is,this)),o=await h(Ms,this,pc).call(this,r.serverMetadata(),n),s=await Qr(o,e,t),a=ya.fromTokenEndpointResponse(s),c=n.getCapturedResponse();if(!c)throw new oa;return{data:a,response:c}}try{const n=await Qr(r,e,t);return ya.fromTokenEndpointResponse(n)}catch(e){const t=e,n={};throw ia(n,e),t._statusCode=n.statusCode,t._headers=n.headers,e}}}),this.database=new Ya({domain:m(xs,this).domain,clientId:m(xs,this).clientId,customFetch:m(Is,this),telemetryConfig:m(Os,this)})}async getServerMetadata(){return(await h(Ms,this,yc).call(this)).serverMetadata}async buildAuthorizationUrl(e){const t=(await h(Ms,this,yc).call(this)).serverMetadata;if(null!=e&&e.pushedAuthorizationRequests&&!t.pushed_authorization_request_endpoint)throw new zs("par_not_supported_error","The Auth0 tenant does not have pushed authorization requests enabled. Learn how to enable it here: https://auth0.com/docs/get-started/applications/configure-par");try{return await h(Ms,this,Tc).call(this,e)}catch(e){throw new Qs(e)}}async buildLinkUserUrl(e){try{const t=await h(Ms,this,Tc).call(this,{authorizationParams:_(_({},e.authorizationParams),{},{requested_connection:e.connection,requested_connection_scope:e.connectionScope,scope:"openid link_account offline_access",id_token_hint:e.idToken})});return{linkUserUrl:t.authorizationUrl,codeVerifier:t.codeVerifier}}catch(e){throw new $s(e)}}async buildUnlinkUserUrl(e){try{const t=await h(Ms,this,Tc).call(this,{authorizationParams:_(_({},e.authorizationParams),{},{requested_connection:e.connection,scope:"openid unlink_account",id_token_hint:e.idToken})});return{unlinkUserUrl:t.authorizationUrl,codeVerifier:t.codeVerifier}}catch(e){throw new ea(e)}}async backchannelAuthentication(e,t){var n;const o=await h(Ms,this,mc).call(this,t),r=o.configuration,i=o.serverMetadata,s=sa(_(_({},m(xs,this).authorizationParams),null==e?void 0:e.authorizationParams)),a=new URLSearchParams(_(_({scope:tc},s),{},{client_id:m(xs,this).clientId,binding_message:e.bindingMessage,login_hint:JSON.stringify({format:"iss_sub",iss:i.issuer,sub:e.loginHint.sub})}));if(e.requestedExpiry&&a.append("requested_expiry",e.requestedExpiry.toString()),e.authorizationDetails&&a.append("authorization_details",JSON.stringify(e.authorizationDetails)),e.fullResponse){var c;const e=va(null!==(c=r[Pr])&&void 0!==c?c:m(Is,this)),n=await h(Ms,this,pc).call(this,r.serverMetadata(),e);try{const t=await Kr(r,a),o=await zr(n,t),i=e.getCapturedResponse();if(!i)throw new oa;return{data:ya.fromTokenEndpointResponse(o),response:i}}catch(t){if(t instanceof oa)throw t;const n=new Bs(t);throw ia(n,t,e.getCapturedResponse()),n}}const u=va(null!==(n=r[Pr])&&void 0!==n?n:m(Is,this)),l=await h(Ms,this,pc).call(this,r.serverMetadata(),u);try{const e=await Kr(r,a),t=await zr(l,e);return ya.fromTokenEndpointResponse(t)}catch(e){const t=new Bs(e);throw ia(t,e,u.getCapturedResponse()),t}}async initiateBackchannelAuthentication(e,t){var n;const o=await h(Ms,this,mc).call(this,t),r=o.configuration,i=o.serverMetadata,s=sa(_(_({},m(xs,this).authorizationParams),null==e?void 0:e.authorizationParams)),a=new URLSearchParams(_(_({scope:tc},s),{},{client_id:m(xs,this).clientId,binding_message:e.bindingMessage,login_hint:JSON.stringify({format:"iss_sub",iss:i.issuer,sub:e.loginHint.sub})}));e.requestedExpiry&&a.append("requested_expiry",e.requestedExpiry.toString()),e.authorizationDetails&&a.append("authorization_details",JSON.stringify(e.authorizationDetails));const c=va(null!==(n=r[Pr])&&void 0!==n?n:m(Is,this)),u=await h(Ms,this,pc).call(this,r.serverMetadata(),c);try{const e=await Kr(u,a);return{authReqId:e.auth_req_id,expiresIn:e.expires_in,interval:e.interval}}catch(e){const t=new Bs(e),n=c.getCapturedResponse();throw t.statusCode=null==n?void 0:n.status,t.headers=n?ra(n.headers):void 0,t}}async backchannelAuthenticationGrant(e,t){var n;let o=e.authReqId;const r=(await h(Ms,this,mc).call(this,t)).configuration,i=new URLSearchParams({auth_req_id:o}),s=va(null!==(n=r[Pr])&&void 0!==n?n:m(Is,this)),a=await h(Ms,this,pc).call(this,r.serverMetadata(),s);try{const e=await Qr(a,"urn:openid:params:grant-type:ciba",i);return ya.fromTokenEndpointResponse(e)}catch(e){const t=new Bs(e),n=s.getCapturedResponse();throw t.statusCode=null==n?void 0:n.status,t.headers=n?ra(n.headers):void 0,t}}async getTokenForConnection(e,t){var n;if(e.refreshToken&&e.accessToken)throw new Gs("Either a refresh or access token should be specified, but not both.");const o=null!==(n=e.accessToken)&&void 0!==n?n:e.refreshToken;if(!o)throw new Gs("Either a refresh or access token must be specified.");try{return await this.exchangeToken(_({connection:e.connection,subjectToken:o,subjectTokenType:e.accessToken?ac:"urn:ietf:params:oauth:token-type:refresh_token",loginHint:e.loginHint},e.fullResponse?{fullResponse:!0}:{}),t)}catch(e){if(e instanceof Vs){const t=new Gs(e.message,e.cause);throw t.statusCode=e.statusCode,t.headers=e.headers,t}throw e}}async exchangeToken(e,t){return e.fullResponse?"connection"in e?h(Ms,this,gc).call(this,e,t,!0):h(Ms,this,bc).call(this,e,t,!0):"connection"in e?h(Ms,this,gc).call(this,e,t):h(Ms,this,bc).call(this,e,t)}async getTokenByCode(e,t,n){var o;const r=(await h(Ms,this,mc).call(this,n)).configuration;if(void 0!==t.organization&&aa(t.organization),t.fullResponse){var i;const n=va(null!==(i=r[Pr])&&void 0!==i?i:m(Is,this)),o=await h(Ms,this,pc).call(this,r.serverMetadata(),n);let s,a;try{const r=await Dr(o,e,{pkceCodeVerifier:t.codeVerifier});if(s=ya.fromTokenEndpointResponse(r),a=n.getCapturedResponse(),!a)throw new oa}catch(e){if(e instanceof oa)throw e;const t=new Ds("There was an error while trying to request a token.",Ks(e)),o=n.getCapturedResponse();throw t.statusCode=null==o?void 0:o.status,t.headers=o?ra(o.headers):void 0,t}return t.organization&&ca(s.claims,t.organization),{data:s,response:a}}const s=va(null!==(o=r[Pr])&&void 0!==o?o:m(Is,this)),a=await h(Ms,this,pc).call(this,r.serverMetadata(),s);let c;try{const n=await Dr(a,e,{pkceCodeVerifier:t.codeVerifier});c=ya.fromTokenEndpointResponse(n)}catch(e){const t=new Ds("There was an error while trying to request a token.",Ks(e)),n=s.getCapturedResponse();throw t.statusCode=null==n?void 0:n.status,t.headers=n?ra(n.headers):void 0,t}return t.organization&&ca(c.claims,t.organization),c}async getTokenByMagicLinkCode(e,t,n){var o;const r=(await h(Ms,this,mc).call(this,n)).configuration;if(null!=t&&t.fullResponse){var i;const n=va(null!==(i=r[Pr])&&void 0!==i?i:m(Is,this)),o=await h(Ms,this,pc).call(this,r.serverMetadata(),n);try{const r=await Dr(o,e,{expectedState:null==t?void 0:t.expectedState}),i=ya.fromTokenEndpointResponse(r),s=n.getCapturedResponse();if(!s)throw new oa;return{data:i,response:s}}catch(e){if(e instanceof oa)throw e;const t=e instanceof Error&&e.message?e.message:"There was an error while trying to request a token.",o=new Ds(t,e),r=n.getCapturedResponse();throw o.statusCode=null==r?void 0:r.status,o.headers=r?ra(r.headers):void 0,o}}const s=va(null!==(o=r[Pr])&&void 0!==o?o:m(Is,this)),a=await h(Ms,this,pc).call(this,r.serverMetadata(),s);try{const n=await Dr(a,e,{expectedState:null==t?void 0:t.expectedState});return ya.fromTokenEndpointResponse(n)}catch(e){const t=e instanceof Error&&e.message?e.message:"There was an error while trying to request a token.",n=new Ds(t,e),o=s.getCapturedResponse();throw n.statusCode=null==o?void 0:o.status,n.headers=o?ra(o.headers):void 0,n}}async getTokenByRefreshToken(e,t){var n;const o=(await h(Ms,this,mc).call(this,t)).configuration,r=new URLSearchParams;if(e.audience&&r.append("audience",e.audience),e.scope&&r.append("scope",e.scope),e.fullResponse){var i;const t=va(null!==(i=o[Pr])&&void 0!==i?i:m(Is,this)),n=await h(Ms,this,pc).call(this,o.serverMetadata(),t);try{const o=await Zr(n,e.refreshToken,r),i=ya.fromTokenEndpointResponse(o),s=t.getCapturedResponse();if(!s)throw new oa;return{data:i,response:s}}catch(e){if(e instanceof oa)throw e;const n=new Hs("The access token has expired and there was an error while trying to refresh it.",Ks(e)),o=t.getCapturedResponse();throw n.statusCode=null==o?void 0:o.status,n.headers=o?ra(o.headers):void 0,n}}const s=va(null!==(n=o[Pr])&&void 0!==n?n:m(Is,this)),a=await h(Ms,this,pc).call(this,o.serverMetadata(),s);try{const t=await Zr(a,e.refreshToken,r);return ya.fromTokenEndpointResponse(t)}catch(e){const t=new Hs("The access token has expired and there was an error while trying to refresh it.",Ks(e)),n=s.getCapturedResponse();throw t.statusCode=null==n?void 0:n.status,t.headers=n?ra(n.headers):void 0,t}}async revokeToken(e,t){var n;const o=(await h(Ms,this,mc).call(this,t)).configuration,r={};e.tokenTypeHint&&(r.token_type_hint=e.tokenTypeHint);const i=va(null!==(n=o[Pr])&&void 0!==n?n:m(Is,this)),s=await h(Ms,this,pc).call(this,o.serverMetadata(),i);try{await async function(e,t,n){Vr(e);const o=_r(e),r=o.as,i=o.c,s=o.auth,a=o.fetch,c=o.tlsOnly,u=o.timeout;return async function(e,t,n,o,r){en(e),tn(t),Vt(o,'"token"');const i=cn(e,"revocation_endpoint",t.use_mtls_endpoint_aliases,!0!==(null==r?void 0:r[Ct])),s=new URLSearchParams(null==r?void 0:r.additionalParameters);s.set("token",o);const a=Zt(null==r?void 0:r.headers);return a.delete("accept"),Sn(e,t,n,i,s,a,r)}(r,i,s,t,{[xt]:a,[Ct]:!c,additionalParameters:new URLSearchParams(n),headers:new Headers(vr),signal:Xr(u)}).then(oo).catch(Or)}(s,e.token,r)}catch(e){const t=new Xs("An error occurred while trying to revoke the token.",Ks(e)),n=i.getCapturedResponse();throw t.statusCode=null==n?void 0:n.status,t.headers=n?ra(n.headers):void 0,t}}async getUserInfo(e,t){const n=(await h(Ms,this,mc).call(this,t,!0)).configuration;try{var o;return await Yr(n,e.accessToken,null!==(o=e.expectedSubject)&&void 0!==o?o:Er)}catch(e){throw new Ys("There was an error while trying to retrieve the user info.",Ks(e))}}async getTokenByPassword(e,t){var n;const o=(await h(Ms,this,mc).call(this,t)).configuration,r=new URLSearchParams({username:e.username,password:e.password});e.audience&&r.append("audience",e.audience),e.scope&&r.append("scope",e.scope),e.realm&&r.append("realm",e.realm);let i=o;if(e.auth0ForwardedFor){const t=await h(Ms,this,kc).call(this);i=new Nr(o.serverMetadata(),m(xs,this).clientId,{client_secret:m(xs,this).clientSecret,use_mtls_endpoint_aliases:m(xs,this).useMtls},t);const n=o[Pr];i[Pr]=(t,o)=>n(t,_(_({},o),{},{headers:_(_({},o.headers),{},{"auth0-forwarded-for":e.auth0ForwardedFor})}))}if(e.fullResponse){var s;const e=va(null!==(s=i[Pr])&&void 0!==s?s:m(Is,this)),n=await h(Ms,this,pc).call(this,i.serverMetadata(),e);try{const t=await Qr(n,"password",r),o=ya.fromTokenEndpointResponse(t),i=e.getCapturedResponse();if(!i)throw new oa;return{data:o,response:i}}catch(t){if(t instanceof oa)throw t;const n=new Fs("There was an error while trying to request a token.",Ks(t)),o=e.getCapturedResponse();throw n.statusCode=null==o?void 0:o.status,n.headers=o?ra(o.headers):void 0,n}}const a=va(null!==(n=i[Pr])&&void 0!==n?n:m(Is,this)),c=await h(Ms,this,pc).call(this,i.serverMetadata(),a);try{const e=await Qr(c,"password",r);return ya.fromTokenEndpointResponse(e)}catch(e){const t=new Fs("There was an error while trying to request a token.",Ks(e)),n=a.getCapturedResponse();throw t.statusCode=null==n?void 0:n.status,t.headers=n?ra(n.headers):void 0,t}}async getTokenByPasswordlessEmail(e,t){const n=new URLSearchParams({username:e.email,otp:e.code,realm:"email"});return e.audience&&n.append("audience",e.audience),e.scope&&n.append("scope",e.scope),h(Ms,this,_c).call(this,n,t,e.fullResponse)}async getTokenByPasswordlessSms(e,t){if(!La(e.phoneNumber))throw new Na("Phone number must be in E.164 format (e.g. +14155550100).");const n=new URLSearchParams({username:e.phoneNumber,otp:e.code,realm:"sms"});return e.audience&&n.append("audience",e.audience),e.scope&&n.append("scope",e.scope),h(Ms,this,_c).call(this,n,t,e.fullResponse)}async getTokenByClientCredentials(e,t){var n;const o=(await h(Ms,this,mc).call(this,t)).configuration;if(e.fullResponse){var r;const t=va(null!==(r=o[Pr])&&void 0!==r?r:m(Is,this)),n=await h(Ms,this,pc).call(this,o.serverMetadata(),t),i=new URLSearchParams({audience:e.audience});e.organization&&i.append("organization",e.organization);try{const e=await Hr(n,i),o=ya.fromTokenEndpointResponse(e),r=t.getCapturedResponse();if(!r)throw new oa;return{data:o,response:r}}catch(e){if(e instanceof oa)throw e;const n=new Zs("There was an error while trying to request a token.",Ks(e)),o=t.getCapturedResponse();throw n.statusCode=null==o?void 0:o.status,n.headers=o?ra(o.headers):void 0,n}}const i=va(null!==(n=o[Pr])&&void 0!==n?n:m(Is,this)),s=await h(Ms,this,pc).call(this,o.serverMetadata(),i);try{const t=new URLSearchParams({audience:e.audience});e.organization&&t.append("organization",e.organization);const n=await Hr(s,t);return ya.fromTokenEndpointResponse(n)}catch(e){const t=new Zs("There was an error while trying to request a token.",Ks(e)),n=i.getCapturedResponse();throw t.statusCode=null==n?void 0:n.status,t.headers=n?ra(n.headers):void 0,t}}async buildLogoutUrl(e){const t=await h(Ms,this,yc).call(this),n=t.configuration;if(!t.serverMetadata.end_session_endpoint){const t=new URL("https://".concat(m(xs,this).domain,"/v2/logout"));return t.searchParams.set("returnTo",e.returnTo),t.searchParams.set("client_id",m(xs,this).clientId),t}return function(e,t){Vr(e);const n=_r(e),o=n.as,r=n.c,i=cn(o,"end_session_endpoint",!1,n.tlsOnly);(t=new URLSearchParams(t)).has("client_id")||t.set("client_id",r.client_id);for(const e of t.entries()){var s=T(e,2);const t=s[0],n=s[1];i.searchParams.append(t,n)}return i}(n,{post_logout_redirect_uri:e.returnTo})}async verifyLogoutToken(e){const t=(await h(Ms,this,yc).call(this)).serverMetadata,n=$a(m(xs,this).discoveryCache),o=t.jwks_uri;m(js,this)||w(js,this,function(e,t){if(!(e instanceof URL))throw new TypeError("url must be an instance of URL");const n=new URL(e.href).href,o=null!=t?t:{},r=o.timeoutDuration;if("number"==typeof r&&(!Number.isInteger(r)||r<0))throw new TypeError('"timeoutDuration" option must be a non-negative integer');const i="number"==typeof r?r:5e3,s=Fi(o.cooldownDuration,3e4,"cooldownDuration"),a=Fi(o.cacheMaxAge,6e5,"cacheMaxAge"),c=new Headers(o.headers);Ji&&!c.has("User-Agent")&&c.set("User-Agent",Ji),c.has("accept")||c.set("accept","application/json, application/jwk-set+json");const u=o[Di],l=o[Zi];let d,h,p,f=0,m=0;if(l&&"object"==typeof l){const e=l.uat,t=l.jwks;Hi(e,a)&&Jo(t)&&(d=e,p=Li(t))}const y=async()=>{if(h&&("undefined"!=typeof WebSocketPair||"undefined"!=typeof navigator&&"Cloudflare-Workers"===navigator.userAgent||"undefined"!=typeof EdgeRuntime&&"vercel"===EdgeRuntime)&&(h=void 0),!h){const e=++f,t=h=async function(e,t,n){let o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:fetch;const r=await o(e,{method:"GET",signal:n,redirect:"manual",headers:t}).catch(e=>{if("TimeoutError"===e.name)throw new jo;throw e});if(200!==r.status)throw new To("Expected 200 OK from the JSON Web Key Set HTTP response");try{return await r.json()}catch(e){throw new To("Failed to parse the JSON Web Key Set HTTP response as JSON")}}(n,c,AbortSignal.timeout(i),u).then(t=>{const n=Li(t);if(e<=m)return;p=n;const o=Date.now();l&&(l.uat=o,l.jwks=t),d=o,m=e}).finally(()=>{h===t&&(h=void 0)})}await h};return Object.defineProperties(async(e,t)=>{p&&Hi(d,a)||await y();try{return await p(e,t)}catch(n){if(n instanceof Io&&!Hi(d,s))return await y(),p(e,t);throw n}},{coolingDown:{get:()=>Hi(d,s),enumerable:!0},fresh:{get:()=>Hi(d,a),enumerable:!0},reload:{value:y,enumerable:!0},reloading:{get:()=>!!h,enumerable:!0},jwks:{value:()=>{var e;return null===(e=p)||void 0===e?void 0:e.jwks()},enumerable:!0}})}(new URL(o),{cacheMaxAge:n.ttlMs,[Di]:m(Is,this),[Zi]:m(Us,this)}));const r=(await async function(e,t,n){const o=await ci(e,function(e){return[e&&fr("algorithms",e.algorithms),null==e?void 0:e.crit]}(n),t);if(!o[2])throw new Ao("JWTs MUST NOT use unencoded payload");const r={payload:_i(o[1],o[0],n),protectedHeader:o[1]};return"function"==typeof t?_(_({},r),{},{key:o[3]}):r}(e.logoutToken,m(js,this),{issuer:t.issuer,audience:m(xs,this).clientId,algorithms:["RS256"],requiredClaims:["iat"]})).payload;if(!("sid"in r)&&!("sub"in r))throw new qs('either "sid" or "sub" (or both) claims must be present');if("sid"in r&&"string"!=typeof r.sid)throw new qs('"sid" claim must be a string');if("sub"in r&&"string"!=typeof r.sub)throw new qs('"sub" claim must be a string');if("nonce"in r)throw new qs('"nonce" claim is prohibited');if(!("events"in r))throw new qs('"events" claim is missing');if("object"!=typeof r.events||null===r.events)throw new qs('"events" claim must be an object');if(!("http://schemas.openid.net/event/backchannel-logout"in r.events))throw new qs('"http://schemas.openid.net/event/backchannel-logout" member is missing in the "events" claim');if("object"!=typeof r.events["http://schemas.openid.net/event/backchannel-logout"])throw new qs('"http://schemas.openid.net/event/backchannel-logout" member in the "events" claim must be an object');return{sid:r.sid,sub:r.sub}}});function hc(){const e=m(xs,this).domain.toLowerCase();return"".concat(e,"|mtls:").concat(m(xs,this).useMtls?"1":"0")}async function pc(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];const o=await h(Ms,this,kc).call(this,n),r=new Nr(e,m(xs,this).clientId,{client_secret:m(xs,this).clientSecret,use_mtls_endpoint_aliases:m(xs,this).useMtls},o);return r[Pr]=null!=t?t:m(Is,this),r}function fc(e){return ba(m(Is,this),e,m(Os,this))}async function mc(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];const n=await h(Ms,this,yc).call(this,t),o=n.configuration,r=n.serverMetadata;if(!e)return{configuration:o,serverMetadata:r};const i=h(Ms,this,fc).call(this,e);return{configuration:await h(Ms,this,pc).call(this,r,i,t),serverMetadata:r}}async function yc(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];const t=m(e?Cs:Ps,this);if(t&&m(Rs,this))return{configuration:t,serverMetadata:m(Rs,this)};const n=h(Ms,this,hc).call(this);e||await h(Ms,this,kc).call(this,!1);const o=m(Ws,this).get(n);if(o)return h(Ms,this,wc).call(this,o.serverMetadata,e);const r=m(Ns,this).get(n);if(r){const t=await r;return h(Ms,this,wc).call(this,t.serverMetadata,e)}const i=(async()=>{const e=(await jr(new URL("https://".concat(m(xs,this).domain)),m(xs,this).clientId,{use_mtls_endpoint_aliases:m(xs,this).useMtls},(e,t,n,o)=>{n.set("client_id",t.client_id)},{[Pr]:m(Is,this)})).serverMetadata();return m(Ws,this).set(n,{serverMetadata:e}),{serverMetadata:e}})();i.catch(()=>{}),m(Ns,this).set(n,i);try{const t=(await i).serverMetadata;return h(Ms,this,wc).call(this,t,e)}finally{m(Ns,this).delete(n)}}async function wc(e,t){const n=await h(Ms,this,pc).call(this,e,void 0,t);return w(Rs,this,e),w(t?Cs:Ps,this,n),{configuration:n,serverMetadata:e}}async function gc(e,t,n){var o,r,i;const s=(await h(Ms,this,mc).call(this,t)).configuration;if("audience"in e||"resource"in e)throw new Vs("audience and resource parameters are not supported for Token Vault exchanges");oc(e.subjectToken);const a=new URLSearchParams({connection:e.connection,subject_token:e.subjectToken,subject_token_type:null!==(o=e.subjectTokenType)&&void 0!==o?o:ac,requested_token_type:null!==(r=e.requestedTokenType)&&void 0!==r?r:"http://auth0.com/oauth/token-type/federated-connection-access-token"});if(e.loginHint&&a.append("login_hint",e.loginHint),e.scope&&a.append("scope",e.scope),rc(a,e.extra),n){var c;const t=va(null!==(c=s[Pr])&&void 0!==c?c:m(Is,this)),o=await h(Ms,this,pc).call(this,s.serverMetadata(),t);try{const e=await Qr(o,ic,a),n=ya.fromTokenEndpointResponse(e),r=t.getCapturedResponse();if(!r)throw new oa;return{data:n,response:r}}catch(n){if(n instanceof oa)throw n;const o=new Vs("Failed to exchange token for connection '".concat(e.connection,"'."),Ks(n)),r=t.getCapturedResponse();throw o.statusCode=null==r?void 0:r.status,o.headers=r?ra(r.headers):void 0,o}}const u=va(null!==(i=s[Pr])&&void 0!==i?i:m(Is,this)),l=await h(Ms,this,pc).call(this,s.serverMetadata(),u);try{const e=await Qr(l,ic,a);return ya.fromTokenEndpointResponse(e)}catch(t){const n=new Vs("Failed to exchange token for connection '".concat(e.connection,"'."),Ks(t)),o=u.getCapturedResponse();throw n.statusCode=null==o?void 0:o.status,n.headers=o?ra(o.headers):void 0,n}}function vc(e,t,n){var o;if(n.organization&&ca(e.claims,n.organization),n.actorToken)if(null!==(o=e.claims)&&void 0!==o&&o.act)e.act=e.claims.act;else try{e.act=function(e){if("string"!=typeof e)throw new Ao("JWTs must use Compact JWS serialization, JWT must be a string");const t=e.split("."),n=t[1],o=t.length;if(5===o)throw new Ao("Only JWTs using Compact JWS serialization can be decoded");if(3!==o)throw new Ao("Invalid JWT");if(!n)throw new Ao("JWTs must contain a payload");let r,i;try{r=Lo(n)}catch(e){throw new Ao("Failed to base64url decode the payload")}try{i=JSON.parse(go.decode(r))}catch(e){throw new Ao("Failed to parse the decoded payload as JSON")}if(!zo(i))throw new Ao("Invalid JWT Claims Set");return i}(t.access_token).act}catch(e){}return e}async function bc(e,t,n){var o;const r=(await h(Ms,this,mc).call(this,t)).configuration;if(oc(e.subjectToken),void 0!==e.organization&&aa(e.organization),void 0!==e.actorToken&&void 0===e.actorTokenType)throw new Vs("actorTokenType is required when actorToken is provided");const i=new URLSearchParams({subject_token_type:e.subjectTokenType,subject_token:e.subjectToken});if(e.audience&&i.append("audience",e.audience),e.scope&&i.append("scope",e.scope),e.requestedTokenType&&i.append("requested_token_type",e.requestedTokenType),e.organization&&i.append("organization",e.organization),e.actorToken&&i.append("actor_token",e.actorToken),e.actorTokenType&&i.append("actor_token_type",e.actorTokenType),rc(i,e.extra),n){var s;const t=va(null!==(s=r[Pr])&&void 0!==s?s:m(Is,this)),o=await h(Ms,this,pc).call(this,r.serverMetadata(),t);let a,c,u;try{if(c=await Qr(o,sc,i),a=ya.fromTokenEndpointResponse(c),u=t.getCapturedResponse(),!u)throw new oa}catch(n){if(n instanceof oa)throw n;const o=new Vs("Failed to exchange token of type '".concat(e.subjectTokenType,"'").concat(e.audience?" for audience '".concat(e.audience,"'"):"","."),Ks(n)),r=t.getCapturedResponse();throw o.statusCode=null==r?void 0:r.status,o.headers=r?ra(r.headers):void 0,o}return h(Ms,this,vc).call(this,a,c,e),{data:a,response:u}}const a=va(null!==(o=r[Pr])&&void 0!==o?o:m(Is,this)),c=await h(Ms,this,pc).call(this,r.serverMetadata(),a);let u,l;try{l=await Qr(c,sc,i),u=ya.fromTokenEndpointResponse(l)}catch(t){const n=new Vs("Failed to exchange token of type '".concat(e.subjectTokenType,"'").concat(e.audience?" for audience '".concat(e.audience,"'"):"","."),Ks(t)),o=a.getCapturedResponse();throw n.statusCode=null==o?void 0:o.status,n.headers=o?ra(o.headers):void 0,n}return h(Ms,this,vc).call(this,u,l,e),u}async function _c(e,t,n){var o;const r=(await h(Ms,this,mc).call(this,t)).configuration;if(n){var i;const t=va(null!==(i=r[Pr])&&void 0!==i?i:m(Is,this)),n=await h(Ms,this,pc).call(this,r.serverMetadata(),t);try{const o=await Qr(n,"http://auth0.com/oauth/grant-type/passwordless/otp",e),r=ya.fromTokenEndpointResponse(o),i=t.getCapturedResponse();if(!i)throw new oa;return{data:r,response:i}}catch(e){if(e instanceof oa)throw e;const n=new Na("There was an error while trying to request a token.",Ks(e)),o=t.getCapturedResponse();throw n.statusCode=null==o?void 0:o.status,n.headers=o?ra(o.headers):void 0,n}}const s=va(null!==(o=r[Pr])&&void 0!==o?o:m(Is,this)),a=await h(Ms,this,pc).call(this,r.serverMetadata(),s);try{const t=await Qr(a,"http://auth0.com/oauth/grant-type/passwordless/otp",e);return ya.fromTokenEndpointResponse(t)}catch(e){const t=new Na("There was an error while trying to request a token.",Ks(e)),n=s.getCapturedResponse();throw t.statusCode=null==n?void 0:n.status,t.headers=n?ra(n.headers):void 0,t}}async function kc(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];const t=!!m(xs,this).clientSecret||!!m(xs,this).clientAssertionSigningKey||!!m(xs,this).useMtls;return e&&!t?(e,t,n,o)=>{n.set("client_id",t.client_id)}:(m(As,this)||w(As,this,(async()=>{if(!m(xs,this).clientSecret&&!m(xs,this).clientAssertionSigningKey&&!m(xs,this).useMtls)throw new ta;if(m(xs,this).useMtls)return(e,t,n,o)=>{n.set("client_id",t.client_id)};let e=m(xs,this).clientAssertionSigningKey;return!e||e instanceof CryptoKey||(e=await Gi(e,m(xs,this).clientAssertionSigningAlg||"RS256")),e?function(e){return on(e,void 0)}(e):Sr(m(xs,this).clientSecret)})().catch(e=>{throw w(As,this,void 0),e})),m(As,this))}async function Tc(e){const t=(await h(Ms,this,yc).call(this)).configuration,n=Yt(),o=await function(e){return async function(e){return Vt(e,"codeVerifier"),Lt(await crypto.subtle.digest("SHA-256",Nt(e)))}(e)}(n),r=sa(_(_({},m(xs,this).authorizationParams),null==e?void 0:e.authorizationParams)),i=new URLSearchParams(_(_({scope:tc},r),{},{client_id:m(xs,this).clientId,code_challenge:o,code_challenge_method:"S256"}));return{authorizationUrl:null!=e&&e.pushedAuthorizationRequests?await Gr(t,i):await Fr(t,i),codeVerifier:n}}class Sc extends j{constructor(e,t){super(e,t),Object.setPrototypeOf(this,Sc.prototype)}static fromPayload(e){let t=e.error,n=e.error_description;return new Sc(t,n)}}class Ec extends Sc{constructor(e,t){super(e,t),Object.setPrototypeOf(this,Ec.prototype)}}class Pc extends Sc{constructor(e,t){super(e,t),Object.setPrototypeOf(this,Pc.prototype)}}class Cc extends Sc{constructor(e,t){super(e,t),Object.setPrototypeOf(this,Cc.prototype)}}class Rc extends Sc{constructor(e,t){super(e,t),Object.setPrototypeOf(this,Rc.prototype)}}class Ac extends Sc{constructor(e,t){super(e,t),Object.setPrototypeOf(this,Ac.prototype)}}class xc{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:6e5;this.contexts=new Map,this.ttlMs=e}set(e,t){this.cleanup(),this.contexts.set(e,Object.assign(Object.assign({},t),{createdAt:Date.now()}))}get(e){const t=this.contexts.get(e);if(t){if(!(Date.now()-t.createdAt>this.ttlMs))return t;this.contexts.delete(e)}}remove(e){this.contexts.delete(e)}cleanup(){const e=Date.now();for(const n of this.contexts){var t=T(n,2);const o=t[0];e-t[1].createdAt>this.ttlMs&&this.contexts.delete(o)}}get size(){return this.contexts.size}}class Ic{constructor(e,t){this.authJsMfaClient=e,this.auth0Client=t,this.contextManager=new xc}setMFAAuthDetails(e,t,n,o){this.contextManager.set(e,{scope:t,audience:n,mfaRequirements:o})}async getAuthenticators(e){var t,n,o;const r=this.contextManager.get(e);if(!r)throw new Ec("invalid_request","MFA context not found for this MFA token");const i=null===(n=null===(t=r.mfaRequirements)||void 0===t?void 0:t.challenge)||void 0===n?void 0:n.map(e=>e.type);try{const t=await this.authJsMfaClient.listAuthenticators({mfaToken:e});return i&&0!==i.length?t.filter(e=>!!e.type&&i.includes(e.type)):t}catch(e){if(e instanceof la)throw new Ec(null===(o=e.cause)||void 0===o?void 0:o.error,e.message);throw e}}async enroll(e){var t;const n=function(e){const t=vt[e.factorType];return Object.assign(Object.assign(Object.assign({mfaToken:e.mfaToken,authenticatorTypes:t.authenticatorTypes},t.oobChannels&&{oobChannels:t.oobChannels}),"phoneNumber"in e&&{phoneNumber:e.phoneNumber}),"email"in e&&{email:e.email})}(e);try{return await this.authJsMfaClient.enrollAuthenticator(n)}catch(e){if(e instanceof da)throw new Pc(null===(t=e.cause)||void 0===t?void 0:t.error,e.message);throw e}}async challenge(e){var t;try{const t={challengeType:e.challengeType,mfaToken:e.mfaToken};return e.authenticatorId&&(t.authenticatorId=e.authenticatorId),await this.authJsMfaClient.challengeAuthenticator(t)}catch(e){if(e instanceof pa)throw new Cc(null===(t=e.cause)||void 0===t?void 0:t.error,e.message);throw e}}async getEnrollmentFactors(e){const t=this.contextManager.get(e);if(!t||!t.mfaRequirements)throw new Ac("mfa_context_not_found","MFA context not found for this MFA token. Please retry the original request to get a new MFA token.");return t.mfaRequirements.enroll&&0!==t.mfaRequirements.enroll.length?t.mfaRequirements.enroll:[]}async verify(e){const t=this.contextManager.get(e.mfaToken);if(!t)throw new Rc("mfa_context_not_found","MFA context not found for this MFA token. Please retry the original request to get a new MFA token.");const n=function(e){return"otp"in e&&e.otp?"http://auth0.com/oauth/grant-type/mfa-otp":"oobCode"in e&&e.oobCode?"http://auth0.com/oauth/grant-type/mfa-oob":"recoveryCode"in e&&e.recoveryCode?"http://auth0.com/oauth/grant-type/mfa-recovery-code":void 0}(e);if(!n)throw new Rc("invalid_request","Unable to determine grant type. Provide one of: otp, oobCode, or recoveryCode.");const o=t.scope,r=t.audience;try{const t=await this.auth0Client._requestTokenForMfa({grant_type:n,mfaToken:e.mfaToken,scope:o,audience:r,otp:e.otp,oob_code:e.oobCode,binding_code:e.bindingCode,recovery_code:e.recoveryCode});return this.contextManager.remove(e.mfaToken),t}catch(e){if(e instanceof Rc)throw new Rc(e.error,e.error_description);throw e}}}class Oc extends Error{constructor(e,t,n){super(t),this.name="PasskeyError",this.code=e,this.cause=n,Object.setPrototypeOf(this,Oc.prototype)}}class jc{constructor(e,t){uc.set(this,void 0),lc.set(this,void 0),u(this,uc,e,"f"),u(this,lc,t,"f")}async signup(e){if(!window.PublicKeyCredential)throw new Oc("passkey_not_supported","WebAuthn is not supported in this browser.");const t=e.scope,n=e.audience,o=a(e,["scope","audience"]),r=await c(this,uc,"f").register(o),i=Uc(r.authnParamsPublicKey),s=await navigator.credentials.create({publicKey:i});if(!s)throw new Oc("passkey_cancelled","Passkey creation was cancelled or no credential was returned.");const u=Lc(s);return c(this,lc,"f")._requestTokenForPasskey({authSession:r.authSession,credential:u,realm:o.realm,organization:o.organization,scope:t,audience:n})}async login(e){if(!window.PublicKeyCredential)throw new Oc("passkey_not_supported","WebAuthn is not supported in this browser.");const t=e||{},n=t.scope,o=t.audience,r=a(t,["scope","audience"]),i=await c(this,uc,"f").challenge(Object.keys(r).length>0?r:void 0),s=Mc(i.authnParamsPublicKey),u=await navigator.credentials.get({publicKey:s});if(!u)throw new Oc("passkey_cancelled","Passkey authentication was cancelled or no credential was returned.");const l=Kc(u);return c(this,lc,"f")._requestTokenForPasskey({authSession:i.authSession,credential:l,realm:r.realm,organization:r.organization,scope:n,audience:o})}async getSignupChallenge(e){if(!window.PublicKeyCredential)throw new Oc("passkey_not_supported","WebAuthn is not supported in this browser.");const t=await c(this,uc,"f").register(e);return{authSession:t.authSession,publicKey:Uc(t.authnParamsPublicKey)}}async getLoginChallenge(e){if(!window.PublicKeyCredential)throw new Oc("passkey_not_supported","WebAuthn is not supported in this browser.");const t=await c(this,uc,"f").challenge(e);return{authSession:t.authSession,publicKey:Mc(t.authnParamsPublicKey)}}async getTokenWithPasskey(e){if(!window.PublicKeyCredential)throw new Oc("passkey_not_supported","WebAuthn is not supported in this browser.");const t=e.authSession,n=e.credential,o=e.realm,r=e.organization,i=e.scope,s=e.audience,a=n.response;let u;if(a instanceof AuthenticatorAttestationResponse)u=Lc(n);else{if(!(a instanceof AuthenticatorAssertionResponse))throw new Oc("passkey_invalid_credential","The provided credential is not a valid attestation or assertion response.");u=Kc(n)}return c(this,lc,"f")._requestTokenForPasskey({authSession:t,credential:u,realm:o,organization:r,scope:i,audience:s})}}function Wc(e){const t=new Uint8Array(e),n=Array.from(t,e=>String.fromCharCode(e)).join("");return btoa(n).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}function Nc(e){const t=e.replace(/-/g,"+").replace(/_/g,"/"),n=t+"=".repeat((4-t.length%4)%4),o=atob(n),r=new Uint8Array(o.length);for(let e=0;e<o.length;e++)r[e]=o.charCodeAt(e);return r.buffer}function Uc(e){return Object.assign(Object.assign({},e),{challenge:Nc(e.challenge),user:Object.assign(Object.assign({},e.user),{id:Nc(e.user.id)}),pubKeyCredParams:e.pubKeyCredParams,authenticatorSelection:e.authenticatorSelection})}function Mc(e){return Object.assign(Object.assign({},e),{challenge:Nc(e.challenge)})}function Lc(e){var t;const n=e.response;return{id:e.id,rawId:Wc(e.rawId),type:e.type,authenticatorAttachment:null!==(t=e.authenticatorAttachment)&&void 0!==t?t:void 0,response:{clientDataJSON:Wc(n.clientDataJSON),attestationObject:Wc(n.attestationObject)},clientExtensionResults:e.getClientExtensionResults()}}function Kc(e){var t;const n=e.response;return{id:e.id,rawId:Wc(e.rawId),type:e.type,authenticatorAttachment:null!==(t=e.authenticatorAttachment)&&void 0!==t?t:void 0,response:{clientDataJSON:Wc(n.clientDataJSON),authenticatorData:Wc(n.authenticatorData),signature:Wc(n.signature),userHandle:n.userHandle?Wc(n.userHandle):void 0},clientExtensionResults:e.getClientExtensionResults()}}uc=new WeakMap,lc=new WeakMap;class zc{resolveOnlineAccess(e){if("online"!==e.refreshTokenMode)return!1;if(!0!==e.useRefreshTokens)throw new W('`refreshTokenMode: "online"` requires the refresh-token grant.',"Set `useRefreshTokens: true`.");if(!0!==e.useDpop)throw new W('`refreshTokenMode: "online"` requires DPoP, which is missing or disabled.',"Set `useDpop: true` (DPoP is mandatory for online access).");return!0}constructor(e){let t,n;if(this.userCache=(new He).enclosedCache,this.defaultOptions={authorizationParams:{scope:"openid profile email"},useRefreshTokensFallback:!1,useFormData:!0,refreshTokenMode:"offline"},this.onlineAccess=this.resolveOnlineAccess(e),this.options=Object.assign(Object.assign(Object.assign({},this.defaultOptions),e),{authorizationParams:Object.assign(Object.assign({},this.defaultOptions.authorizationParams),e.authorizationParams)}),"undefined"!=typeof window&&(()=>{if(!G())throw new Error("For security reasons, `window.crypto` is required to run `auth0-spa-js`.");if(void 0===G().subtle)throw new Error("\n auth0-spa-js must run on a secure origin. See https://github.com/auth0/auth0-spa-js/blob/main/FAQ.md#why-do-i-get-auth0-spa-js-must-run-on-a-secure-origin for more information.\n ")})(),this.lockManager=(we||(we=function(){return"undefined"!=typeof navigator&&"function"==typeof(null===(e=navigator.locks)||void 0===e?void 0:e.request)?new me:new ye;var e}()),we),e.cache&&e.cacheLocation&&console.warn("Both `cache` and `cacheLocation` options have been specified in the Auth0Client configuration; ignoring `cacheLocation` and using `cache`."),e.cache)n=e.cache;else{if(t=e.cacheLocation||R,!lt(t))throw new Error('Invalid cache location "'.concat(t,'"'));n=lt(t)()}var o;this.httpTimeoutMs=e.httpTimeoutInSeconds?1e3*e.httpTimeoutInSeconds:C,this.cookieStorage=!1===e.legacySameSiteCookie?tt:ot,this.orgHintCookieName=(o=this.options.clientId,"auth0.".concat(o,".organization_hint")),this.isAuthenticatedCookieName=(e=>"auth0.".concat(e,".is.authenticated"))(this.options.clientId),this.sessionCheckExpiryDays=e.sessionCheckExpiryDays||1;const r=e.useCookiesForTransactions?this.cookieStorage:rt;let i="";var s;this.onlineAccess?i=A:this.options.useRefreshTokens&&(i="offline_access"),this.scope=function(e,t){for(var n=arguments.length,o=new Array(n>2?n-2:0),r=2;r<n;r++)o[r-2]=arguments[r];if("object"!=typeof e)return{[O]:Le(t,e,...o)};let i={[O]:Le(t,...o)};return Object.keys(e).forEach(n=>{const r=e[n];i[n]=Le(t,r,...o)}),i}(this.options.authorizationParams.scope,"openid",i),this.transactionManager=new Ge(r,this.options.clientId,this.options.cookieDomain),this.nowProvider=this.options.nowProvider||I,this.cacheManager=new Fe(n,n.allKeys?void 0:new at(n,this.options.clientId),this.nowProvider),this.dpop=this.options.useDpop?new ft(this.options.clientId):void 0,this.domainUrl=(s=this.options.domain,/^https?:\/\//.test(s)?s:"https://".concat(s)),this.tokenIssuer=((e,t)=>e?e.startsWith("https://")?e:"https://".concat(e,"/"):"".concat(t,"/"))(this.options.issuer,this.domainUrl);const a="".concat(this.domainUrl,"/me/"),c=this.createFetcher(Object.assign(Object.assign({},this.options.useDpop&&{dpopNonceId:"__auth0_my_account_api__"}),{getAccessToken:e=>{var t;return this.getTokenSilently({authorizationParams:{scope:null===(t=null==e?void 0:e.scope)||void 0===t?void 0:t.join(" "),audience:a},detailedResponse:!0})}}));this.myAccount=new wt(c,a),this.authJsClient=new dc({domain:this.options.domain,clientId:this.options.clientId}),this.mfa=new Ic(this.authJsClient.mfa,this),this.passkey=new jc(this.authJsClient.passkey,this),"undefined"!=typeof window&&window.Worker&&this.options.useRefreshTokens&&t===R&&(this.options.workerUrl?this.worker=new Worker(this.options.workerUrl):this.worker=new st,this.worker.postMessage({type:"init",allowedBaseUrl:this.domainUrl}))}getConfiguration(){return Object.freeze({domain:this.options.domain,clientId:this.options.clientId})}_url(e){const t=this.options.auth0Client||x,n=q(t,!0),o=encodeURIComponent(btoa(JSON.stringify(n)));return"".concat(this.domainUrl).concat(e,"&auth0Client=").concat(o)}_authorizeUrl(e){return this._url("/authorize?".concat(B(e)))}async _verifyIdToken(e,t,n){const o=await this.nowProvider();return(e=>{if(!e.id_token)throw new Error("ID token is required but missing");const t=(e=>{const t=e.split("."),n=T(t,3),o=n[0],r=n[1],i=n[2];if(3!==t.length||!o||!r||!i)throw new Error("ID token could not be decoded");const s=JSON.parse($(r)),a={__raw:e},c={};return Object.keys(s).forEach(e=>{a[e]=s[e],Xe.includes(e)||(c[e]=s[e])}),{encoded:{header:o,payload:r,signature:i},header:JSON.parse($(o)),claims:a,user:c}})(e.id_token);if(!t.claims.iss)throw new Error("Issuer (iss) claim must be a string present in the ID token");if(t.claims.iss!==e.iss)throw new Error('Issuer (iss) claim mismatch in the ID token; expected "'.concat(e.iss,'", found "').concat(t.claims.iss,'"'));if(!t.user.sub)throw new Error("Subject (sub) claim must be a string present in the ID token");if("RS256"!==t.header.alg)throw new Error('Signature algorithm of "'.concat(t.header.alg,'" is not supported. Expected the ID token to be signed with "RS256".'));if(!t.claims.aud||"string"!=typeof t.claims.aud&&!Array.isArray(t.claims.aud))throw new Error("Audience (aud) claim must be a string or array of strings present in the ID token");if(Array.isArray(t.claims.aud)){if(!t.claims.aud.includes(e.aud))throw new Error('Audience (aud) claim mismatch in the ID token; expected "'.concat(e.aud,'" but was not one of "').concat(t.claims.aud.join(", "),'"'));if(t.claims.aud.length>1){if(!t.claims.azp)throw new Error("Authorized Party (azp) claim must be a string present in the ID token when Audience (aud) claim has multiple values");if(t.claims.azp!==e.aud)throw new Error('Authorized Party (azp) claim mismatch in the ID token; expected "'.concat(e.aud,'", found "').concat(t.claims.azp,'"'))}}else if(t.claims.aud!==e.aud)throw new Error('Audience (aud) claim mismatch in the ID token; expected "'.concat(e.aud,'" but found "').concat(t.claims.aud,'"'));if(e.nonce){if(!t.claims.nonce)throw new Error("Nonce (nonce) claim must be a string present in the ID token");if(t.claims.nonce!==e.nonce)throw new Error('Nonce (nonce) claim mismatch in the ID token; expected "'.concat(e.nonce,'", found "').concat(t.claims.nonce,'"'))}if(e.max_age&&!Ve(t.claims.auth_time))throw new Error("Authentication Time (auth_time) claim must be a number present in the ID token when Max Age (max_age) is specified");if(null==t.claims.exp||!Ve(t.claims.exp))throw new Error("Expiration Time (exp) claim must be a number present in the ID token");if(!Ve(t.claims.iat))throw new Error("Issued At (iat) claim must be a number present in the ID token");const n=e.leeway||60,o=new Date(e.now||Date.now()),r=new Date(0);if(r.setUTCSeconds(t.claims.exp+n),o>r)throw new Error("Expiration Time (exp) claim error in the ID token; current time (".concat(o,") is after expiration time (").concat(r,")"));if(null!=t.claims.nbf&&Ve(t.claims.nbf)){const e=new Date(0);if(e.setUTCSeconds(t.claims.nbf-n),o<e)throw new Error("Not Before time (nbf) claim in the ID token indicates that this token can't be used just yet. Current time (".concat(o,") is before ").concat(e))}if(null!=t.claims.auth_time&&Ve(t.claims.auth_time)){const r=new Date(0);if(r.setUTCSeconds(parseInt(t.claims.auth_time)+e.max_age+n),o>r)throw new Error("Authentication Time (auth_time) claim in the ID token indicates that too much time has passed since the last end-user authentication. Current time (".concat(o,") is after last auth at ").concat(r))}if(e.organization){const n=e.organization.trim();if(n.startsWith("org_")){const e=n;if(!t.claims.org_id)throw new Error("Organization ID (org_id) claim must be a string present in the ID token");if(e!==t.claims.org_id)throw new Error('Organization ID (org_id) claim mismatch in the ID token; expected "'.concat(e,'", found "').concat(t.claims.org_id,'"'))}else{const e=n.toLowerCase();if(!t.claims.org_name)throw new Error("Organization Name (org_name) claim must be a string present in the ID token");if(e!==t.claims.org_name)throw new Error('Organization Name (org_name) claim mismatch in the ID token; expected "'.concat(e,'", found "').concat(t.claims.org_name,'"'))}}return t})({iss:this.tokenIssuer,aud:this.options.clientId,id_token:e,nonce:t,organization:n,leeway:this.options.leeway,max_age:(r=this.options.authorizationParams.max_age,"string"!=typeof r?r:parseInt(r,10)||void 0),now:o});var r}_processOrgHint(e){e?this.cookieStorage.save(this.orgHintCookieName,e,{daysUntilExpire:this.sessionCheckExpiryDays,cookieDomain:this.options.cookieDomain}):this.cookieStorage.remove(this.orgHintCookieName,{cookieDomain:this.options.cookieDomain})}_extractSessionTransferToken(e){return new URLSearchParams(window.location.search).get(e)||void 0}_clearSessionTransferTokenFromUrl(e){try{const t=new URL(window.location.href);t.searchParams.has(e)&&(t.searchParams.delete(e),window.history.replaceState({},"",t.toString()))}catch(e){}}_applySessionTransferToken(e){const t=this.options.sessionTransferTokenQueryParamName;if(!t||e.session_transfer_token)return e;const n=this._extractSessionTransferToken(t);return n?(this._clearSessionTransferTokenFromUrl(t),Object.assign(Object.assign({},e),{session_transfer_token:n})):e}async _prepareAuthorizeUrl(e,t,n){var o;const r=X(V()),i=X(V()),s=V(),a=await Q(s),c=ee(a),u=await(null===(o=this.dpop)||void 0===o?void 0:o.calculateThumbprint()),l=((e,t,n,o,r,i,s,a,c)=>Object.assign(Object.assign(Object.assign({client_id:e.clientId},e.authorizationParams),n),{scope:Ke(t,n.scope,n.audience),response_type:"code",response_mode:a||"query",state:o,nonce:r,redirect_uri:s||e.authorizationParams.redirect_uri,code_challenge:i,code_challenge_method:"S256",dpop_jkt:c}))(this.options,this.scope,e,r,i,c,e.redirect_uri||this.options.authorizationParams.redirect_uri||n,null==t?void 0:t.response_mode,u),d=this._authorizeUrl(l);return{nonce:i,code_verifier:s,scope:l.scope,audience:l.audience||O,redirect_uri:l.redirect_uri,state:r,url:d}}async loginWithPopup(e,t){var n;if(e=e||{},!(t=t||{}).popup&&(t.popup=(()=>{const e=window.screenX+(window.innerWidth-400)/2,t=window.screenY+(window.innerHeight-600)/2;return window.open("","auth0:authorize:popup","left=".concat(e,",top=").concat(t,",width=").concat(400,",height=").concat(600,",resizable,scrollbars=yes,status=1"))})(),!t.popup))throw new z;const o=this._applySessionTransferToken(e.authorizationParams||{}),r=await this._prepareAuthorizeUrl(o,{response_mode:"web_message"},window.location.origin);t.popup.location.href=r.url;const i=await((e,t)=>new Promise((n,o)=>{let r;const i=setInterval(()=>{e.popup&&e.popup.closed&&(clearInterval(i),clearTimeout(s),window.removeEventListener("message",r,!1),o(new K(e.popup)))},1e3),s=setTimeout(()=>{clearInterval(i),o(new L(e.popup)),window.removeEventListener("message",r,!1)},1e3*(e.timeoutInSeconds||60));r=function(a){if(a.origin===t&&a.data&&"authorization_response"===a.data.type){if(clearTimeout(s),clearInterval(i),window.removeEventListener("message",r,!1),!1!==e.closePopup&&e.popup.close(),a.data.response.error)return o(j.fromPayload(a.data.response));n(a.data.response)}},window.addEventListener("message",r)}))(Object.assign(Object.assign({},t),{timeoutInSeconds:t.timeoutInSeconds||this.options.authorizeTimeoutInSeconds||60}),new URL(r.url).origin);if(r.state!==i.state)throw new j("state_mismatch","Invalid state");const s=(null===(n=e.authorizationParams)||void 0===n?void 0:n.organization)||this.options.authorizationParams.organization;await this._requestToken({audience:r.audience,scope:r.scope,code_verifier:r.code_verifier,grant_type:"authorization_code",code:i.code,redirect_uri:r.redirect_uri},{nonceIn:r.nonce,organization:s})}async getUser(){var e;if(await this._isSessionCeilingReached())return;const t=await this._getIdTokenFromCache();return null===(e=null==t?void 0:t.decodedToken)||void 0===e?void 0:e.user}async getIdTokenClaims(){var e;if(await this._isSessionCeilingReached())return;const t=await this._getIdTokenFromCache();return null===(e=null==t?void 0:t.decodedToken)||void 0===e?void 0:e.claims}async loginWithRedirect(){var t;const n=dt(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}),o=n.openUrl,r=n.fragment,i=n.appState,s=a(n,["openUrl","fragment","appState"]),c=(null===(t=s.authorizationParams)||void 0===t?void 0:t.organization)||this.options.authorizationParams.organization,u=this._applySessionTransferToken(s.authorizationParams||{}),l=await this._prepareAuthorizeUrl(u),d=l.url,h=a(l,["url"]);this.transactionManager.create(Object.assign(Object.assign(Object.assign({},h),{appState:i,response_type:e.ResponseType.Code}),c&&{organization:c}));const p=r?"".concat(d,"#").concat(r):d;o?await o(p):window.location.assign(p)}async handleRedirectCallback(){const t=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.location.href).split("?").slice(1);if(0===t.length)throw new Error("There are no query params available for parsing.");const n=this.transactionManager.get();if(!n)throw new j("missing_transaction","Invalid state");this.transactionManager.remove();const o=(e=>{e.indexOf("#")>-1&&(e=e.substring(0,e.indexOf("#")));const t=new URLSearchParams(e);return{state:t.get("state"),code:t.get("code")||void 0,connect_code:t.get("connect_code")||void 0,error:t.get("error")||void 0,error_description:t.get("error_description")||void 0}})(t.join(""));return n.response_type===e.ResponseType.ConnectCode?this._handleConnectAccountRedirectCallback(o,n):this._handleLoginRedirectCallback(o,n)}async _handleLoginRedirectCallback(t,n){const o=t.code,r=t.state,i=t.error,s=t.error_description;if(i)throw new N(i,s||i,r,n.appState);if(!n.code_verifier||n.state&&n.state!==r)throw new j("state_mismatch","Invalid state");const a=n.organization,c=n.nonce,u=n.redirect_uri;return await this._requestToken(Object.assign({audience:n.audience,scope:n.scope,code_verifier:n.code_verifier,grant_type:"authorization_code",code:o},u?{redirect_uri:u}:{}),{nonceIn:c,organization:a}),{appState:n.appState,response_type:e.ResponseType.Code}}async _handleConnectAccountRedirectCallback(t,n){const o=t.connect_code,r=t.state,i=t.error,s=t.error_description;if(i)throw new U(i,s||i,n.connection,r,n.appState);if(!o)throw new j("missing_connect_code","Missing connect code");if(!(n.code_verifier&&n.state&&n.auth_session&&n.redirect_uri&&n.state===r))throw new j("state_mismatch","Invalid state");const a=await this.myAccount.completeAccount({auth_session:n.auth_session,connect_code:o,redirect_uri:n.redirect_uri,code_verifier:n.code_verifier});return Object.assign(Object.assign({},a),{appState:n.appState,response_type:e.ResponseType.ConnectCode})}async checkSession(e){if(!this.cookieStorage.get(this.isAuthenticatedCookieName)){if(!this.cookieStorage.get(ct))return;this.cookieStorage.save(this.isAuthenticatedCookieName,!0,{daysUntilExpire:this.sessionCheckExpiryDays,cookieDomain:this.options.cookieDomain}),this.cookieStorage.remove(ct)}try{await this.getTokenSilently(e)}catch(e){}}async getTokenSilently(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};var t,n;const o=Object.assign(Object.assign({cacheMode:"on"},e),{authorizationParams:Object.assign(Object.assign(Object.assign({},this.options.authorizationParams),e.authorizationParams),{scope:Ke(this.scope,null===(t=e.authorizationParams)||void 0===t?void 0:t.scope,(null===(n=e.authorizationParams)||void 0===n?void 0:n.audience)||this.options.authorizationParams.audience)})}),r=await this._getTokenSilently(o);return e.detailedResponse?r:null==r?void 0:r.access_token}async _getTokenSilently(e){const t=e.cacheMode,n=a(e,["cacheMode"]);if(await this._isSessionCeilingReached())return;if("off"!==t){const e=await this._getEntryFromCache({scope:n.authorizationParams.scope,audience:n.authorizationParams.audience||O,clientId:this.options.clientId,cacheMode:t});if(e)return e}if("cache-only"===t)return;const o=(r=this.options.clientId,i=n.authorizationParams.audience||"default","".concat("auth0.lock.getTokenSilently",".").concat(r,".").concat(i));var r,i;try{return await this.lockManager.runWithLock(o,5e3,async()=>{if("off"!==t){const e=await this._getEntryFromCache({scope:n.authorizationParams.scope,audience:n.authorizationParams.audience||O,clientId:this.options.clientId});if(e)return e}const e=this.options.useRefreshTokens?await this._getTokenUsingRefreshToken(n):await this._getTokenFromIFrame(n),o=e.id_token,r=e.token_type,i=e.access_token,s=e.oauthTokenScope,a=e.expires_in;return Object.assign(Object.assign({id_token:o,token_type:r,access_token:i},s?{scope:s}:null),{expires_in:a})})}catch(e){if(this._isInteractiveError(e)&&"popup"===this.options.interactiveErrorHandler)return await this._handleInteractiveErrorWithPopup(n);throw e}}_isInteractiveError(e){return e instanceof J||e instanceof j&&this._isIframeMfaError(e)}_isIframeMfaError(e){return"login_required"===e.error&&"Multifactor authentication required"===e.error_description}async _handleInteractiveErrorWithPopup(e){try{await this.loginWithPopup({authorizationParams:e.authorizationParams});const t=await this._getEntryFromCache({scope:e.authorizationParams.scope,audience:e.authorizationParams.audience||O,clientId:this.options.clientId});if(!t)throw new j("interactive_handler_cache_miss","Token not found in cache after interactive authentication");return t}catch(e){throw e}}async getTokenWithPopup(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};var n,o;const r=Object.assign(Object.assign({},e),{authorizationParams:Object.assign(Object.assign(Object.assign({},this.options.authorizationParams),e.authorizationParams),{scope:Ke(this.scope,null===(n=e.authorizationParams)||void 0===n?void 0:n.scope,(null===(o=e.authorizationParams)||void 0===o?void 0:o.audience)||this.options.authorizationParams.audience)})});return t=Object.assign(Object.assign({},P),t),await this.loginWithPopup(r,t),(await this.cacheManager.get(new De({scope:r.authorizationParams.scope,audience:r.authorizationParams.audience||O,clientId:this.options.clientId}),void 0,this.options.useMrrt)).access_token}async isAuthenticated(){return!!await this.getUser()}_buildLogoutUrl(e){null!==e.clientId?e.clientId=e.clientId||this.options.clientId:delete e.clientId;const t=e.logoutParams||{},n=t.federated,o=a(t,["federated"]),r=n?"&federated":"";return this._url("/v2/logout?".concat(B(Object.assign({clientId:e.clientId},o))))+r}async revokeRefreshToken(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!this.options.useRefreshTokens)return;const t=e.audience||this.options.authorizationParams.audience||O,n=await this.cacheManager.getRefreshTokensByAudience(t,this.options.clientId);await async function(e,t){let n=e.auth0Client,o=e.useFormData,r=e.refreshTokens,i=e.audience,s=e.client_id,a=e.onRefreshTokenRevoked;const c=e.timeout||C,u="refresh_token",l="".concat(e.baseUrl,"/oauth/revoke"),d={"Content-Type":o?"application/x-www-form-urlencoded":"application/json","Auth0-Client":btoa(JSON.stringify(q(n||x)))};if(t){const n={client_id:s,token_type_hint:u},r=o?B(n):JSON.stringify(n);try{return await je({type:"revoke",timeout:c,fetchUrl:l,fetchOptions:{method:"POST",body:r,headers:d},useFormData:o,auth:{audience:null!=i?i:O}},t)}catch(e){throw new j("revoke_error",e.message)}}for(const t of r){const n={client_id:s,token_type_hint:u,token:t},r=o?B(n):JSON.stringify(n),i=await We(l,{method:"POST",body:r,headers:d},c);if(!i.ok){let t,n;try{var h=JSON.parse(await i.text());t=h.error,n=h.error_description}catch(e){}throw new j(t||"revoke_error",n||"HTTP error ".concat(i.status))}await(null==a?void 0:a(t))}}({baseUrl:this.domainUrl,timeout:this.httpTimeoutMs,auth0Client:this.options.auth0Client,useFormData:this.options.useFormData,client_id:this.options.clientId,refreshTokens:n,audience:t,onRefreshTokenRevoked:e=>this.cacheManager.stripRefreshToken(e)},this.worker),this.onlineAccess&&await this._clearLocalSession()}async logout(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const t=dt(e),n=t.openUrl,o=a(t,["openUrl"]);await this._clearLocalSession(e.clientId);const r=this._buildLogoutUrl(o);n?await n(r):!1!==n&&window.location.assign(r)}async _getTokenFromIFrame(e){const t=(n=this.options.clientId,"".concat("auth0.lock.getTokenFromIFrame",".").concat(n));var n;try{return await this.lockManager.runWithLock(t,5e3,async()=>{const t=Object.assign(Object.assign({},e.authorizationParams),{prompt:"none"}),n=this.cookieStorage.get(this.orgHintCookieName);n&&!t.organization&&(t.organization=n);const o=await this._prepareAuthorizeUrl(t,{response_mode:"web_message"},window.location.origin),r=o.url,i=o.state,s=o.nonce,a=o.code_verifier,c=o.redirect_uri,u=o.scope,l=o.audience;if(window.crossOriginIsolated)throw new j("login_required","The application is running in a Cross-Origin Isolated context, silently retrieving a token without refresh token is not possible.");const d=e.timeoutInSeconds||this.options.authorizeTimeoutInSeconds;let h;try{h=new URL(this.domainUrl).origin}catch(e){h=this.domainUrl}const p=await function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:60;return new Promise((o,r)=>{const i=window.document.createElement("iframe");i.setAttribute("width","0"),i.setAttribute("height","0"),i.style.display="none";const s=()=>{window.document.body.contains(i)&&(window.document.body.removeChild(i),window.removeEventListener("message",a,!1))};let a;const c=setTimeout(()=>{r(new M),s()},1e3*n);a=function(e){if(e.origin!=t)return;if(!e.data||"authorization_response"!==e.data.type)return;const n=e.source;n&&n.close(),e.data.response.error?r(j.fromPayload(e.data.response)):o(e.data.response),clearTimeout(c),window.removeEventListener("message",a,!1),setTimeout(s,2e3)},window.addEventListener("message",a,!1),window.document.body.appendChild(i),i.setAttribute("src",e)})}(r,h,d);if(i!==p.state)throw new j("state_mismatch","Invalid state");const f=await this._requestToken(Object.assign(Object.assign({},e.authorizationParams),{code_verifier:a,code:p.code,grant_type:"authorization_code",redirect_uri:c,timeout:e.authorizationParams.timeout||this.httpTimeoutMs}),{nonceIn:s,organization:t.organization});return Object.assign(Object.assign({},f),{scope:u,oauthTokenScope:f.scope,audience:l})})}catch(e){throw"login_required"===e.error&&(e instanceof j&&this._isIframeMfaError(e)&&"popup"===this.options.interactiveErrorHandler||this.logout({openUrl:!1})),e}}async _getTokenUsingRefreshToken(e){const t=await this.cacheManager.get(new De({scope:e.authorizationParams.scope,audience:e.authorizationParams.audience||O,clientId:this.options.clientId}),void 0,this.options.useMrrt);if(!(t&&t.refresh_token||this.worker)){if(this.options.useRefreshTokensFallback)return await this._getTokenFromIFrame(e);throw new D(e.authorizationParams.audience||O,e.authorizationParams.scope)}const n=e.authorizationParams.redirect_uri||this.options.authorizationParams.redirect_uri||window.location.origin,o="number"==typeof e.timeoutInSeconds?1e3*e.timeoutInSeconds:null,r=((e,t,n,o)=>{var r;if(e&&n&&o){if(t.audience!==n)return t.scope;const e=o.split(" "),i=(null===(r=t.scope)||void 0===r?void 0:r.split(" "))||[],s=i.every(t=>e.includes(t));return e.length>=i.length&&s?o:t.scope}return t.scope})(this.options.useMrrt,e.authorizationParams,null==t?void 0:t.audience,null==t?void 0:t.scope);try{const u=await this._requestToken(Object.assign(Object.assign(Object.assign({},e.authorizationParams),{grant_type:"refresh_token",refresh_token:t&&t.refresh_token,redirect_uri:n}),o&&{timeout:o}),{scopesToRequest:r});if(await this._propagateRotatedRefreshToken(null==t?void 0:t.refresh_token,u.refresh_token),this.options.useMrrt&&(i=null==t?void 0:t.audience,s=null==t?void 0:t.scope,a=e.authorizationParams.audience,c=e.authorizationParams.scope,i!==a||!((e,t)=>{const n=(null==t?void 0:t.split(" "))||[];return((null==e?void 0:e.split(" "))||[]).every(e=>n.includes(e))})(c,s))){const t=((e,t,n)=>{const o=(null==e?void 0:e.split(" "))||[],r=n?o.filter(e=>e!==A):o,i=(null==t?void 0:t.split(" "))||[];return r.filter(e=>-1==i.indexOf(e)).join(",")})(r,u.scope,this.onlineAccess);if(t){if(this.options.useRefreshTokensFallback)return await this._getTokenFromIFrame(e);throw await this.cacheManager.remove(this.options.clientId,e.authorizationParams.audience,e.authorizationParams.scope),new Z(e.authorizationParams.audience||"default",t)}}return Object.assign(Object.assign({},u),{scope:e.authorizationParams.scope,oauthTokenScope:u.scope,audience:e.authorizationParams.audience||O})}catch(t){if(t.message){if(t.message.includes("user is blocked"))throw await this.logout({openUrl:!1}),t;if((t.message.includes("Missing Refresh Token")||t.message.includes("invalid refresh token"))&&this.options.useRefreshTokensFallback)return await this._getTokenFromIFrame(e)}throw t}var i,s,a,c}async _propagateRotatedRefreshToken(e,t){!this.onlineAccess&&t&&e&&await this.cacheManager.updateEntry(e,t,this.options.clientId,this.options.useMrrt)}async _saveEntryInCache(e){const t=e.decodedToken.claims,n=t.session_expiry,o=t.iat;if(void 0!==n){if("number"!=typeof n)throw new j("invalid_token","Invalid session_expiry: value must be a number.");if(n>=1e10)throw new j("invalid_token","Invalid session_expiry: value appears to be in milliseconds; expected a Unix timestamp in seconds.");if(void 0===o||n<=o)throw new j("invalid_token","Invalid session_expiry: session ceiling is before or at the token issue time.")}const r=e.id_token,i=e.decodedToken,s=a(e,["id_token","decodedToken"]);this.userCache.set(Je,{id_token:r,decodedToken:i}),await this.cacheManager.setIdToken(this.options.clientId,e.id_token,e.decodedToken),await this.cacheManager.set(s)}async _clearLocalSession(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.options.clientId;var t;null===e?await this.cacheManager.clear():await this.cacheManager.clear(e),this.cookieStorage.remove(this.orgHintCookieName,{cookieDomain:this.options.cookieDomain}),this.cookieStorage.remove(this.isAuthenticatedCookieName,{cookieDomain:this.options.cookieDomain}),this.userCache.remove(Je);try{await(null===(t=this.dpop)||void 0===t?void 0:t.clear())}catch(e){}if(this.worker)try{await je({type:"clear"},this.worker)}catch(e){}}async _isSessionCeilingReached(){var e,t;const n=this.userCache.get(Je),o=null!=n?n:await this.cacheManager.getIdToken(new De({clientId:this.options.clientId})),r=null===(t=null===(e=null==o?void 0:o.decodedToken)||void 0===e?void 0:e.claims)||void 0===t?void 0:t.session_expiry;if(void 0===r)return!1;const i=await this.nowProvider();return Math.floor(i/1e3)>=r-30&&(await this._clearLocalSession(),!0)}async _getIdTokenFromCache(){const e=this.options.authorizationParams.audience||O,t=this.scope[e],n=await this.cacheManager.getIdToken(new De({clientId:this.options.clientId,audience:e,scope:t})),o=this.userCache.get(Je);return n&&n.id_token===(null==o?void 0:o.id_token)?o:(this.userCache.set(Je,n),n)}async _getEntryFromCache(e){let t=e.scope,n=e.audience,o=e.clientId,r=e.cacheMode;const i=await this.cacheManager.get(new De({scope:t,audience:n,clientId:o}),60,this.options.useMrrt,r);if(i&&i.access_token){const e=i.token_type,t=i.access_token,n=i.oauthTokenScope,o=i.expires_in,r=await this._getIdTokenFromCache();return r&&Object.assign(Object.assign({id_token:r.id_token,token_type:e||"Bearer",access_token:t},n?{scope:n}:null),{expires_in:o})}}_storeMfaContext(e,t,n){e instanceof J&&this.mfa.setMFAAuthDetails(e.mfa_token,t,n,e.mfa_requirements)}async _requestToken(e,t){var n,o,r,i,s,a;const c=t||{},u=c.nonceIn,l=c.organization,d=c.scopesToRequest;try{const t=await Me(Object.assign(Object.assign({baseUrl:this.domainUrl,client_id:this.options.clientId,auth0Client:this.options.auth0Client,useFormData:this.options.useFormData,timeout:this.httpTimeoutMs,useMrrt:this.options.useMrrt,dpop:this.dpop,preserveRefreshToken:this.onlineAccess},e),{scope:d||e.scope}),this.worker);let c=await this._verifyIdToken(t.id_token,u,l);if("authorization_code"===e.grant_type){const e=await this._getIdTokenFromCache();(null===(o=null===(n=null==e?void 0:e.decodedToken)||void 0===n?void 0:n.claims)||void 0===o?void 0:o.sub)&&e.decodedToken.claims.sub!==c.claims.sub&&(await this.cacheManager.clear(this.options.clientId),this.userCache.remove(Je))}if("authorization_code"!==e.grant_type){const e=await this._getIdTokenFromCache(),t=null===(i=null===(r=null==e?void 0:e.decodedToken)||void 0===r?void 0:r.claims)||void 0===i?void 0:i.session_expiry;void 0!==t&&(c=Object.assign(Object.assign({},c),{claims:Object.assign(Object.assign({},c.claims),{session_expiry:t})}))}return!t.refresh_token&&this.onlineAccess&&(t.refresh_token=null!==(s=e.refresh_token)&&void 0!==s?s:null===(a=await this.cacheManager.get(new De({scope:d||e.scope,audience:e.audience||O,clientId:this.options.clientId}),void 0,this.options.useMrrt))||void 0===a?void 0:a.refresh_token),await this._saveEntryInCache(Object.assign(Object.assign(Object.assign(Object.assign({},t),{decodedToken:c,scope:e.scope,audience:e.audience||O}),t.scope?{oauthTokenScope:t.scope}:null),{client_id:this.options.clientId})),this.cookieStorage.save(this.isAuthenticatedCookieName,!0,{daysUntilExpire:this.sessionCheckExpiryDays,cookieDomain:this.options.cookieDomain}),this._processOrgHint(l||c.claims.org_id),Object.assign(Object.assign({},t),{decodedToken:c})}catch(t){throw"authorization_code"!==e.grant_type&&this._storeMfaContext(t,d||e.scope,e.audience),t}}_buildTokenExchangeParams(e){return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},e),{grant_type:"urn:ietf:params:oauth:grant-type:token-exchange",subject_token:e.subject_token,subject_token_type:e.subject_token_type}),e.actor_token&&{actor_token:e.actor_token}),e.actor_token_type&&{actor_token_type:e.actor_token_type}),{scope:Ke(this.scope,e.scope,e.audience||this.options.authorizationParams.audience),audience:e.audience||this.options.authorizationParams.audience,organization:e.organization||this.options.authorizationParams.organization})}async loginWithCustomTokenExchange(e){return this._requestToken(this._buildTokenExchangeParams(e))}async customTokenExchange(e){const t=this._buildTokenExchangeParams(e);try{const n=await Me(Object.assign(Object.assign({},t),{baseUrl:this.domainUrl,client_id:this.options.clientId,auth0Client:this.options.auth0Client,useFormData:this.options.useFormData,timeout:this.httpTimeoutMs,dpop:this.dpop}),this.worker,!0);return n.id_token&&await this._verifyIdToken(n.id_token,void 0,e.organization),n}catch(e){throw this._storeMfaContext(e,t.scope,t.audience),e}}async exchangeToken(e){return this.loginWithCustomTokenExchange(e)}_assertDpop(e){if(!e)throw new Error("`useDpop` option must be enabled before using DPoP.")}getDpopNonce(e){return this._assertDpop(this.dpop),this.dpop.getNonce(e)}setDpopNonce(e,t){return this._assertDpop(this.dpop),this.dpop.setNonce(e,t)}generateDpopProof(e){return this._assertDpop(this.dpop),this.dpop.generateProof(e)}createFetcher(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new yt(e,{isDpopEnabled:()=>!!this.options.useDpop,getAccessToken:e=>{var t;return this.getTokenSilently({authorizationParams:{scope:null===(t=null==e?void 0:e.scope)||void 0===t?void 0:t.join(" "),audience:null==e?void 0:e.audience},detailedResponse:!0})},getDpopNonce:()=>this.getDpopNonce(e.dpopNonceId),setDpopNonce:t=>this.setDpopNonce(t,e.dpopNonceId),generateDpopProof:e=>this.generateDpopProof(e)})}async connectAccountWithRedirect(t){const n=t.openUrl,o=t.appState,r=t.connection,i=t.scopes,s=t.authorization_params,a=t.redirectUri,c=void 0===a?this.options.authorizationParams.redirect_uri||window.location.origin:a;if(!r)throw new Error("connection is required");const u=X(V()),l=V(),d=await Q(l),h=ee(d),p=await this.myAccount.connectAccount({connection:r,scopes:i,redirect_uri:c,state:u,code_challenge:h,code_challenge_method:"S256",authorization_params:s}),f=p.connect_uri,m=p.connect_params,y=p.auth_session;this.transactionManager.create({state:u,code_verifier:l,auth_session:y,redirect_uri:c,appState:o,connection:r,response_type:e.ResponseType.ConnectCode});const w=new URL(f);w.searchParams.set("ticket",m.ticket),n?await n(w.toString()):window.location.assign(w)}async _requestTokenForPasskey(e){const t=e.audience||this.options.authorizationParams.audience,n=e.organization||this.options.authorizationParams.organization;return this._requestToken(Object.assign(Object.assign(Object.assign({grant_type:"urn:okta:params:oauth:grant-type:webauthn",auth_session:e.authSession,authn_response:e.credential},e.realm&&{realm:e.realm}),n&&{organization:n}),{scope:Ke(this.scope,e.scope,t),audience:t}))}async _requestTokenForMfa(e,t){const n=e.mfaToken,o=a(e,["mfaToken"]),r=await this.cacheManager.get(new De({scope:o.scope,audience:o.audience||O,clientId:this.options.clientId}),void 0,this.options.useMrrt),i=await this._requestToken(Object.assign(Object.assign({},o),{mfa_token:n}),t);return await this._propagateRotatedRefreshToken(null==r?void 0:r.refresh_token,i.refresh_token),i}}var Jc={isAuthenticated:!1,isLoading:!0,error:void 0,user:void 0},Dc=function(){throw new Error("You forgot to wrap your component in <Auth0Provider>.")},Zc=o(o({},Jc),{buildAuthorizeUrl:Dc,buildLogoutUrl:Dc,getAccessTokenSilently:Dc,getAccessTokenWithPopup:Dc,getIdTokenClaims:Dc,loginWithCustomTokenExchange:Dc,customTokenExchange:Dc,exchangeToken:Dc,loginWithRedirect:Dc,loginWithPopup:Dc,connectAccountWithRedirect:Dc,logout:Dc,revokeRefreshToken:Dc,handleRedirectCallback:Dc,getDpopNonce:Dc,setDpopNonce:Dc,generateDpopProof:Dc,createFetcher:Dc,getConfiguration:Dc,mfa:{getAuthenticators:Dc,enroll:Dc,challenge:Dc,verify:Dc,getEnrollmentFactors:Dc},passkey:{signup:Dc,login:Dc},myAccount:{getFactors:Dc,getAuthenticationMethods:Dc,getAuthenticationMethod:Dc,updateAuthenticationMethod:Dc,deleteAuthenticationMethod:Dc,enrollmentChallenge:Dc,enrollmentVerify:Dc}}),Hc=t.createContext(Zc),Fc=function(e){function t(n,o){var r=e.call(this,null!=o?o:n)||this;return r.error=n,r.error_description=o,Object.setPrototypeOf(r,t.prototype),r}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function o(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(o.prototype=t.prototype,new o)}(t,e),t}(Error),Gc=/[?&](?:connect_)?code=[^&]+/,Vc=/[?&]state=[^&]+/,Xc=/[?&]error=[^&]+/,Yc=function(e){return function(t){if(t instanceof Error)return t;if(null!==t&&"object"==typeof t&&"error"in t&&"string"==typeof t.error){if("error_description"in t&&"string"==typeof t.error_description){var n=t;return new Fc(n.error,n.error_description)}return new Fc(t.error)}return new Error(e)}},qc=Yc("Login failed"),Bc=Yc("Get access token failed"),Qc=function(e){var t,n;(null==e?void 0:e.redirectUri)&&(console.warn("Using `redirectUri` has been deprecated, please use `authorizationParams.redirect_uri` instead as `redirectUri` will be no longer supported in a future version"),e.authorizationParams=null!==(t=e.authorizationParams)&&void 0!==t?t:{},e.authorizationParams.redirect_uri=e.redirectUri,delete e.redirectUri),(null===(n=null==e?void 0:e.authorizationParams)||void 0===n?void 0:n.redirectUri)&&(console.warn("Using `authorizationParams.redirectUri` has been deprecated, please use `authorizationParams.redirect_uri` instead as `authorizationParams.redirectUri` will be removed in a future version"),e.authorizationParams.redirect_uri=e.authorizationParams.redirectUri,delete e.authorizationParams.redirectUri)},$c=function(e,t){switch(t.type){case"LOGIN_POPUP_STARTED":return o(o({},e),{isLoading:!0});case"LOGIN_POPUP_COMPLETE":case"INITIALISED":return o(o({},e),{isAuthenticated:!!t.user,user:t.user,isLoading:!1,error:void 0});case"HANDLE_REDIRECT_COMPLETE":case"GET_ACCESS_TOKEN_COMPLETE":case"SYNC_USER":return e.user===t.user?e:o(o({},e),{isAuthenticated:!!t.user,user:t.user});case"LOGOUT":return o(o({},e),{isAuthenticated:!1,user:void 0});case"ERROR":return o(o({},e),{isLoading:!1,error:t.error})}},eu=function(e){var t;window.history.replaceState({},document.title,null!==(t=e.returnTo)&&void 0!==t?t:window.location.pathname)},tu=function(){var e,t,n=new Promise(function(n,o){e=n,t=o});return n.catch(function(){}),{promise:n,resolve:e,reject:t}},nu=function(e){return void 0===e&&(e=Hc),t.useContext(e)},ou=function(){return t.createElement(t.Fragment,null)},ru=function(){return i(void 0,void 0,void 0,function(){return s(this,function(e){return[2]})})},iu=function(){var e=window.location.pathname.replace(/^\/\/+/,"/");return"".concat(e).concat(window.location.search)};e.Auth0Context=Hc,e.Auth0Provider=function(n){var a=n,c=a.children,u=a.skipRedirectCallback,l=a.onRedirectCallback,d=void 0===l?eu:l,h=a.context,p=void 0===h?Hc:h,f=a.client,m=r(a,["children","skipRedirectCallback","onRedirectCallback","context","client"]);f&&(m.domain||m.clientId)&&console.warn("Auth0Provider: the `client` prop takes precedence over `domain`/`clientId` and other configuration options. Remove `domain`, `clientId`, and any other Auth0Client configuration props when using the `client` prop.");var y=t.useState(function(){return null!=f?f:new zc(function(e){return Qc(e),o(o({},e),{auth0Client:{name:"auth0-react",version:"2.25.0"}})}(m))})[0],w=t.useReducer($c,Jc),g=w[0],v=w[1],b=t.useState(tu),_=b[0],k=b[1],T=t.useState(!1),S=T[0],E=T[1],P=t.useRef(!1),C=t.useRef(!1),R=t.useCallback(function(e){return v({type:"ERROR",error:e}),e},[]),A=t.useCallback(function(t,n){return i(void 0,void 0,void 0,function(){var o,i,a,c,l,h,p,f;return s(this,function(s){switch(s.label){case 0:return s.trys.push([0,7,,8]),o=void 0,n&&(void 0===m&&(m=window.location.search),(Gc.test(m)||Xc.test(m))&&Vc.test(m))&&!u?[4,y.handleRedirectCallback()]:[3,3];case 1:return i=s.sent(),a=i.appState,c=void 0===a?{}:a,l=i.response_type,h=r(i,["appState","response_type"]),[4,y.getUser()];case 2:return o=s.sent(),c.response_type=l,l===e.ResponseType.ConnectCode&&(c.connectedAccount=h),d(c,o),[3,6];case 3:return[4,y.checkSession()];case 4:return s.sent(),[4,y.getUser()];case 5:o=s.sent(),s.label=6;case 6:return v({type:"INITIALISED",user:o}),t.resolve(),[3,8];case 7:return p=s.sent(),f=qc(p),R(f),E(!0),t.reject(f),[3,8];case 8:return[2]}var m})})},[y,d,u,R]);t.useEffect(function(){C.current||(C.current=!0,A(_,!0))},[A,_]),t.useEffect(function(){if(S&&!P.current&&g.isAuthenticated){P.current=!0;var e=tu();k(e),A(e,!1)}},[S,g.isAuthenticated,A]);var x=t.useCallback(function(e){return Qc(e),y.loginWithRedirect(e)},[y]),I=t.useCallback(function(e,t){return i(void 0,void 0,void 0,function(){var n,o;return s(this,function(r){switch(r.label){case 0:v({type:"LOGIN_POPUP_STARTED"}),r.label=1;case 1:return r.trys.push([1,3,,4]),[4,y.loginWithPopup(e,t)];case 2:return r.sent(),[3,4];case 3:return n=r.sent(),R(qc(n)),[2];case 4:return[4,y.getUser()];case 5:return o=r.sent(),v({type:"LOGIN_POPUP_COMPLETE",user:o}),[2]}})})},[y,R]),O=t.useCallback(function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return i(void 0,function(e,t,n){if(n||2===arguments.length)for(var o,r=0,i=t.length;r<i;r++)!o&&r in t||(o||(o=Array.prototype.slice.call(t,0,r)),o[r]=t[r]);return e.concat(o||Array.prototype.slice.call(t))}([],e,!0),void 0,function(e){return void 0===e&&(e={}),s(this,function(t){switch(t.label){case 0:return[4,y.logout(e)];case 1:return t.sent(),(e.openUrl||!1===e.openUrl)&&v({type:"LOGOUT"}),[2]}})})},[y]),j=t.useCallback(function(e){return i(void 0,void 0,void 0,function(){var t,n;return s(this,function(o){switch(o.label){case 0:return o.trys.push([0,,2,4]),[4,y.revokeRefreshToken(e)];case 1:return o.sent(),[3,4];case 2:return t=v,n={type:"SYNC_USER"},[4,y.getUser()];case 3:return t.apply(void 0,[(n.user=o.sent(),n)]),[7];case 4:return[2]}})})},[y]),W=t.useCallback(function(e){return i(void 0,void 0,void 0,function(){var t,n,o,r;return s(this,function(i){switch(i.label){case 0:return i.trys.push([0,2,3,5]),[4,y.getTokenSilently(e)];case 1:return t=i.sent(),[3,5];case 2:throw n=i.sent(),Bc(n);case 3:return o=v,r={type:"GET_ACCESS_TOKEN_COMPLETE"},[4,y.getUser()];case 4:return o.apply(void 0,[(r.user=i.sent(),r)]),[7];case 5:return[2,t]}})})},[y]),N=t.useCallback(function(e,t){return i(void 0,void 0,void 0,function(){var n,o,r,i;return s(this,function(s){switch(s.label){case 0:return s.trys.push([0,2,3,5]),[4,y.getTokenWithPopup(e,t)];case 1:return n=s.sent(),[3,5];case 2:throw o=s.sent(),Bc(o);case 3:return r=v,i={type:"GET_ACCESS_TOKEN_COMPLETE"},[4,y.getUser()];case 4:return r.apply(void 0,[(i.user=s.sent(),i)]),[7];case 5:return[2,n]}})})},[y]),U=t.useCallback(function(e){return y.connectAccountWithRedirect(e)},[y]),M=t.useCallback(function(){return y.getIdTokenClaims()},[y]),L=t.useCallback(function(e){return i(void 0,void 0,void 0,function(){var t,n,o,r;return s(this,function(i){switch(i.label){case 0:return i.trys.push([0,2,3,5]),[4,y.loginWithCustomTokenExchange(e)];case 1:return t=i.sent(),[3,5];case 2:throw n=i.sent(),Bc(n);case 3:return o=v,r={type:"GET_ACCESS_TOKEN_COMPLETE"},[4,y.getUser()];case 4:return o.apply(void 0,[(r.user=i.sent(),r)]),[7];case 5:return[2,t]}})})},[y]),K=t.useCallback(function(e){return y.customTokenExchange(e)},[y]),z=t.useCallback(function(e){return i(void 0,void 0,void 0,function(){return s(this,function(t){return[2,L(e)]})})},[L]),J=t.useCallback(function(e){return i(void 0,void 0,void 0,function(){var t,n,o;return s(this,function(r){switch(r.label){case 0:return r.trys.push([0,2,3,5]),[4,y.handleRedirectCallback(e)];case 1:return[2,r.sent()];case 2:throw t=r.sent(),Bc(t);case 3:return n=v,o={type:"HANDLE_REDIRECT_COMPLETE"},[4,y.getUser()];case 4:return n.apply(void 0,[(o.user=r.sent(),o)]),[7];case 5:return[2]}})})},[y]),D=t.useCallback(function(e){return y.getDpopNonce(e)},[y]),Z=t.useCallback(function(e,t){return y.setDpopNonce(e,t)},[y]),H=t.useCallback(function(e){return y.generateDpopProof(e)},[y]),F=t.useCallback(function(e){return y.createFetcher(e)},[y]),G=t.useCallback(function(){return y.getConfiguration()},[y]),V=t.useMemo(function(){return y.mfa},[y]),X=t.useMemo(function(){return y.myAccount},[y]),Y=t.useCallback(function(e){return i(void 0,void 0,void 0,function(){var t,n,o,r;return s(this,function(i){switch(i.label){case 0:return i.trys.push([0,2,3,5]),[4,y.passkey.signup(e)];case 1:return t=i.sent(),[3,5];case 2:throw n=i.sent(),Bc(n);case 3:return o=v,r={type:"GET_ACCESS_TOKEN_COMPLETE"},[4,y.getUser()];case 4:return o.apply(void 0,[(r.user=i.sent(),r)]),[7];case 5:return[2,t]}})})},[y]),q=t.useCallback(function(e){return i(void 0,void 0,void 0,function(){var t,n,o,r;return s(this,function(i){switch(i.label){case 0:return i.trys.push([0,2,3,5]),[4,y.passkey.login(e)];case 1:return t=i.sent(),[3,5];case 2:throw n=i.sent(),Bc(n);case 3:return o=v,r={type:"GET_ACCESS_TOKEN_COMPLETE"},[4,y.getUser()];case 4:return o.apply(void 0,[(r.user=i.sent(),r)]),[7];case 5:return[2,t]}})})},[y]),B=t.useMemo(function(){return{signup:Y,login:q}},[Y,q]),Q=t.useMemo(function(){return o(o({},g),{getAccessTokenSilently:W,getAccessTokenWithPopup:N,getIdTokenClaims:M,loginWithCustomTokenExchange:L,customTokenExchange:K,exchangeToken:z,loginWithRedirect:x,loginWithPopup:I,connectAccountWithRedirect:U,logout:O,revokeRefreshToken:j,handleRedirectCallback:J,getDpopNonce:D,setDpopNonce:Z,generateDpopProof:H,createFetcher:F,getConfiguration:G,mfa:V,passkey:B,myAccount:X,_initPromise:_.promise})},[g,W,N,M,L,K,z,x,I,U,O,j,J,D,Z,H,F,G,V,B,X,_]);return t.createElement(p.Provider,{value:Q},c)},e.AuthenticationError=N,e.ConnectError=U,e.GenericError=j,e.InMemoryCache=He,e.InvalidConfigurationError=W,e.LocalStorageCache=Ze,e.MfaChallengeError=Cc,e.MfaEnrollmentError=Pc,e.MfaEnrollmentFactorsError=Ac,e.MfaError=Sc,e.MfaListAuthenticatorsError=Ec,e.MfaRequiredError=J,e.MfaVerifyError=Rc,e.MissingRefreshTokenError=D,e.MissingScopesError=Z,e.MyAccountApiError=gt,e.OAuthError=Fc,e.PasskeyChallengeError=Pa,e.PasskeyError=Oc,e.PasskeyGetTokenError=Ca,e.PasskeyRegisterError=Ea,e.PopupCancelledError=K,e.PopupOpenError=z,e.PopupTimeoutError=L,e.RefreshTokenMode={Offline:"offline",Online:"online"},e.TimeoutError=M,e.UseDpopNonceError=H,e.User=class{},e.initialContext=Zc,e.useAuth0=nu,e.useAuth0Suspense=function(e){if(void 0===e&&(e=Hc),"function"!=typeof t.use)throw new Error("useAuth0Suspense requires React 19 or later (React.use is unavailable).");var n=t.useContext(e);if(!n._initPromise)throw new Error("useAuth0Suspense must be used within an <Auth0Provider>.");return t.use(n._initPromise),t.useMemo(function(){return n.isLoading,n._initPromise,r(n,["isLoading","_initPromise"])},[n])},e.withAuth0=function(e,n){return void 0===n&&(n=Hc),function(r){return t.createElement(n.Consumer,null,function(n){return t.createElement(e,o({},r,{auth0:n}))})}},e.withAuthenticationRequired=function(e,n){return void 0===n&&(n={}),function(r){var a=this,c=n.returnTo,u=void 0===c?iu:c,l=n.onRedirecting,d=void 0===l?ou:l,h=n.onBeforeAuthentication,p=void 0===h?ru:h,f=n.loginOptions,m=n.context,y=nu(void 0===m?Hc:m),w=y.isAuthenticated,g=y.isLoading,v=y.loginWithRedirect;return t.useEffect(function(){if(!g&&!w){var e=o(o({},f),{appState:o(o({},null==f?void 0:f.appState),{returnTo:"function"==typeof u?u():u})});i(a,void 0,void 0,function(){return s(this,function(t){switch(t.label){case 0:return[4,p()];case 1:return t.sent(),[4,v(e)];case 2:return t.sent(),[2]}})})}},[g,w,v,p,f,u]),w?t.createElement(e,o({},r)):d()}}});
2
2
  //# sourceMappingURL=auth0-react.min.js.map