@wandelbots/wandelbots-js-react-components 3.5.1 → 3.6.0-pr.feat-model-retrieval-from-rdp.463.3cb7d2e
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.
- package/README.md +18 -0
- package/dist/3d.cjs.js +1 -1
- package/dist/3d.es.js +1 -1
- package/dist/{LoadingCover-Dr9hDTku.js → LoadingCover-6gWr11KP.js} +11 -10
- package/dist/{LoadingCover-Dr9hDTku.js.map → LoadingCover-6gWr11KP.js.map} +1 -1
- package/dist/LoadingCover-CukpS_aj.cjs +2 -0
- package/dist/{LoadingCover-r2yhJZF9.cjs.map → LoadingCover-CukpS_aj.cjs.map} +1 -1
- package/dist/{WandelscriptEditor-DnJvITTA.js → WandelscriptEditor-7eN-Yw7m.js} +3 -3
- package/dist/{WandelscriptEditor-DnJvITTA.js.map → WandelscriptEditor-7eN-Yw7m.js.map} +1 -1
- package/dist/WandelscriptEditor-D6_vS5Uk.cjs +2 -0
- package/dist/{WandelscriptEditor-Dj7TBCkF.cjs.map → WandelscriptEditor-D6_vS5Uk.cjs.map} +1 -1
- package/dist/auth0-spa-js.production.esm-BMSlxZC5.js +3877 -0
- package/dist/auth0-spa-js.production.esm-BMSlxZC5.js.map +1 -0
- package/dist/auth0-spa-js.production.esm-DZ6lsBvD.cjs +5 -0
- package/dist/auth0-spa-js.production.esm-DZ6lsBvD.cjs.map +1 -0
- package/dist/components/RobotCard.d.ts +1 -1
- package/dist/components/RobotCard.d.ts.map +1 -1
- package/dist/components/robots/GenericRobot.d.ts +2 -2
- package/dist/components/robots/GenericRobot.d.ts.map +1 -1
- package/dist/components/robots/Robot.d.ts +1 -1
- package/dist/components/robots/Robot.d.ts.map +1 -1
- package/dist/components/robots/SupportedRobot.d.ts +1 -1
- package/dist/components/robots/SupportedRobot.d.ts.map +1 -1
- package/dist/components/robots/robotModelLogic.d.ts +1 -1
- package/dist/components/robots/robotModelLogic.d.ts.map +1 -1
- package/dist/core.cjs.js +1 -1
- package/dist/core.es.js +4 -4
- package/dist/externalizeComponent-CkVWk2F_.cjs +24 -0
- package/dist/externalizeComponent-CkVWk2F_.cjs.map +1 -0
- package/dist/externalizeComponent-Dc3fViZA.js +489 -0
- package/dist/externalizeComponent-Dc3fViZA.js.map +1 -0
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +6 -6
- package/dist/interpolation-DAXKfoDS.cjs +20 -0
- package/dist/interpolation-DAXKfoDS.cjs.map +1 -0
- package/dist/interpolation-DcPbemBD.js +6924 -0
- package/dist/interpolation-DcPbemBD.js.map +1 -0
- package/dist/lib/JoggerConnection.d.ts.map +1 -1
- package/dist/{manufacturerHomePositions-CgaG5vaK.js → manufacturerHomePositions-BaS-GAxw.js} +331 -282
- package/dist/manufacturerHomePositions-BaS-GAxw.js.map +1 -0
- package/dist/manufacturerHomePositions-cD52vnEi.cjs +2 -0
- package/dist/manufacturerHomePositions-cD52vnEi.cjs.map +1 -0
- package/dist/{theming-Coh4zx7d.js → theming-B7ojcJTM.js} +4802 -6245
- package/dist/theming-B7ojcJTM.js.map +1 -0
- package/dist/theming-C9apy9Ov.cjs +115 -0
- package/dist/theming-C9apy9Ov.cjs.map +1 -0
- package/dist/wandelscript.cjs.js +1 -1
- package/dist/wandelscript.es.js +1 -1
- package/package.json +14 -4
- package/src/components/RobotCard.tsx +1 -1
- package/src/components/robots/GenericRobot.tsx +56 -13
- package/src/components/robots/Robot.tsx +1 -1
- package/src/components/robots/SupportedRobot.tsx +10 -2
- package/src/components/robots/robotModelLogic.ts +40 -6
- package/src/env.d.ts +3 -0
- package/src/lib/JoggerConnection.ts +10 -10
- package/src/lib/MotionStreamConnection.ts +1 -1
- package/dist/LoadingCover-r2yhJZF9.cjs +0 -2
- package/dist/WandelscriptEditor-Dj7TBCkF.cjs +0 -2
- package/dist/auth0-spa-js.production.esm-DL9f1uDJ.js +0 -1438
- package/dist/auth0-spa-js.production.esm-DL9f1uDJ.js.map +0 -1
- package/dist/auth0-spa-js.production.esm-DTiWXa87.cjs +0 -5
- package/dist/auth0-spa-js.production.esm-DTiWXa87.cjs.map +0 -1
- package/dist/index-CAib4NKw.js +0 -2261
- package/dist/index-CAib4NKw.js.map +0 -1
- package/dist/index-CqMZL0FV.cjs +0 -2
- package/dist/index-CqMZL0FV.cjs.map +0 -1
- package/dist/index-CxasuX80.js +0 -5212
- package/dist/index-CxasuX80.js.map +0 -1
- package/dist/index-DxwppshT.cjs +0 -29
- package/dist/index-DxwppshT.cjs.map +0 -1
- package/dist/manufacturerHomePositions-Ca80ycLi.cjs +0 -2
- package/dist/manufacturerHomePositions-Ca80ycLi.cjs.map +0 -1
- package/dist/manufacturerHomePositions-CgaG5vaK.js.map +0 -1
- package/dist/theming-Coh4zx7d.js.map +0 -1
- package/dist/theming-D4ztsmTr.cjs +0 -133
- package/dist/theming-D4ztsmTr.cjs.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth0-spa-js.production.esm-BMSlxZC5.js","sources":["../node_modules/@auth0/auth0-spa-js/dist/auth0-spa-js.production.esm.js"],"sourcesContent":["function e(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\"==typeof SuppressedError&&SuppressedError;var t=\"undefined\"!=typeof globalThis?globalThis:\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:{},n={},o={};Object.defineProperty(o,\"__esModule\",{value:!0});var r=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}();o.default=function(){return r.getInstance()};var i=t&&t.__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())}))},a=t&&t.__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=a.trys,(r=r.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])}}},s=t;Object.defineProperty(n,\"__esModule\",{value:!0});var c=o,u={key:function(e){return i(s,void 0,void 0,(function(){return a(this,(function(e){throw new Error(\"Unsupported\")}))}))},getItem:function(e){return i(s,void 0,void 0,(function(){return a(this,(function(e){throw new Error(\"Unsupported\")}))}))},clear:function(){return i(s,void 0,void 0,(function(){return a(this,(function(e){return[2,window.localStorage.clear()]}))}))},removeItem:function(e){return i(s,void 0,void 0,(function(){return a(this,(function(e){throw new Error(\"Unsupported\")}))}))},setItem:function(e,t){return i(s,void 0,void 0,(function(){return a(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 l(e){return new Promise((function(t){return setTimeout(t,e)}))}function d(e){for(var t=\"0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz\",n=\"\",o=0;o<e;o++){n+=t[Math.floor(Math.random()*t.length)]}return n}var h=function(){function e(t){this.acquiredIatSet=new Set,this.storageHandler=void 0,this.id=Date.now().toString()+d(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),i(this,void 0,void 0,(function(){var o,r,i,s,c,h,p;return a(this,(function(a){switch(a.label){case 0:o=Date.now()+d(4),r=Date.now()+n,i=\"browser-tabs-lock-key-\"+t,s=void 0===this.storageHandler?u:this.storageHandler,a.label=1;case 1:return Date.now()<r?[4,l(30)]:[3,8];case 2:return a.sent(),null!==s.getItemSync(i)?[3,5]:(c=this.id+\"-\"+t+\"-\"+o,[4,l(Math.floor(25*Math.random()))]);case 3:return a.sent(),s.setItemSync(i,JSON.stringify({id:this.id,iat:o,timeoutKey:c,timeAcquired:Date.now(),timeRefreshed:Date.now()})),[4,l(30)];case 4:return a.sent(),null!==(h=s.getItemSync(i))&&(p=JSON.parse(h)).id===this.id&&p.iat===o?(this.acquiredIatSet.add(o),this.refreshLockWhileAcquired(i,o),[2,!0]):[3,7];case 5:return e.lockCorrector(void 0===this.storageHandler?u:this.storageHandler),[4,this.waitForSomethingToChange(r)];case 6:a.sent(),a.label=7;case 7:return o=Date.now()+d(4),[3,1];case 8:return[2,!1]}}))}))},e.prototype.refreshLockWhileAcquired=function(e,t){return i(this,void 0,void 0,(function(){var n=this;return a(this,(function(o){return setTimeout((function(){return i(n,void 0,void 0,(function(){var n,o,r;return a(this,(function(i){switch(i.label){case 0:return[4,c.default().lock(t)];case 1:return i.sent(),this.acquiredIatSet.has(t)?(n=void 0===this.storageHandler?u:this.storageHandler,null===(o=n.getItemSync(e))?(c.default().unlock(t),[2]):((r=JSON.parse(o)).timeRefreshed=Date.now(),n.setItemSync(e,JSON.stringify(r)),c.default().unlock(t),this.refreshLockWhileAcquired(e,t),[2])):(c.default().unlock(t),[2])}}))}))}),1e3),[2]}))}))},e.prototype.waitForSomethingToChange=function(t){return i(this,void 0,void 0,(function(){return a(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 i(this,void 0,void 0,(function(){return a(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 i(this,void 0,void 0,(function(){var n,o,r,i;return a(this,(function(a){switch(a.label){case 0:return n=void 0===this.storageHandler?u:this.storageHandler,o=\"browser-tabs-lock-key-\"+t,null===(r=n.getItemSync(o))?[2]:(i=JSON.parse(r)).id!==this.id?[3,2]:[4,c.default().lock(i.iat)];case 1:a.sent(),this.acquiredIatSet.delete(i.iat),n.removeItemSync(o),c.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(\"browser-tabs-lock-key\")){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),s=!0)}}}s&&e.notifyWaiters()},e.waiters=void 0,e}(),p=n.default=h;const f={timeoutInSeconds:60},m={name:\"auth0-spa-js\",version:\"2.12.0\"},y=()=>Date.now();class w extends Error{constructor(e,t){super(t),this.error=e,this.error_description=t,Object.setPrototypeOf(this,w.prototype)}static fromPayload(e){let{error:t,error_description:n}=e;return new w(t,n)}}class g extends w{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,g.prototype)}}class v extends w{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,v.prototype)}}class b extends w{constructor(){super(\"timeout\",\"Timeout\"),Object.setPrototypeOf(this,b.prototype)}}class _ extends b{constructor(e){super(),this.popup=e,Object.setPrototypeOf(this,_.prototype)}}class k extends w{constructor(e){super(\"cancelled\",\"Popup closed\"),this.popup=e,Object.setPrototypeOf(this,k.prototype)}}class S extends w{constructor(){super(\"popup_open\",\"Unable to open a popup for loginWithPopup - window.open returned `null`\"),Object.setPrototypeOf(this,S.prototype)}}class E extends w{constructor(e,t,n){super(e,t),this.mfa_token=n,Object.setPrototypeOf(this,E.prototype)}}class A extends w{constructor(e,t){super(\"missing_refresh_token\",\"Missing Refresh Token (audience: '\".concat(R(e,[\"default\"]),\"', scope: '\").concat(R(t),\"')\")),this.audience=e,this.scope=t,Object.setPrototypeOf(this,A.prototype)}}class T extends w{constructor(e,t){super(\"missing_scopes\",\"Missing requested scopes after refresh (audience: '\".concat(R(e,[\"default\"]),\"', missing scope: '\").concat(R(t),\"')\")),this.audience=e,this.scope=t,Object.setPrototypeOf(this,T.prototype)}}class P extends w{constructor(e){super(\"use_dpop_nonce\",\"Server rejected DPoP proof: wrong nonce\"),this.newDpopNonce=e,Object.setPrototypeOf(this,P.prototype)}}function R(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return e&&!t.includes(e)?e:\"\"}const I=()=>window.crypto,O=()=>{const e=\"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_~.\";let t=\"\";return Array.from(I().getRandomValues(new Uint8Array(43))).forEach((n=>t+=e[n%e.length])),t},x=e=>btoa(e),C=[{key:\"name\",type:[\"string\"]},{key:\"version\",type:[\"string\",\"number\"]},{key:\"env\",type:[\"object\"]}],j=e=>Object.keys(e).reduce(((t,n)=>{const o=C.find((e=>e.key===n));return o&&o.type.includes(typeof e[n])&&(t[n]=e[n]),t}),{}),D=t=>{var{clientId:n}=t,o=e(t,[\"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:n},o))).toString()},K=async e=>{const t=I().subtle.digest({name:\"SHA-256\"},(new TextEncoder).encode(e));return await t},L=e=>(e=>decodeURIComponent(atob(e).split(\"\").map((e=>\"%\"+(\"00\"+e.charCodeAt(0).toString(16)).slice(-2))).join(\"\")))(e.replace(/_/g,\"/\").replace(/-/g,\"+\")),U=e=>{const t=new Uint8Array(e);return(e=>{const t={\"+\":\"-\",\"/\":\"_\",\"=\":\"\"};return e.replace(/[+/=]/g,(e=>t[e]))})(window.btoa(String.fromCharCode(...Array.from(t))))},N=new TextEncoder,W=new TextDecoder;function H(e){return\"string\"==typeof e?N.encode(e):W.decode(e)}function z(e){if(\"number\"!=typeof e.modulusLength||e.modulusLength<2048)throw new F(`${e.name} modulusLength must be at least 2048 bits`)}async function J(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=`${V(H(JSON.stringify(e)))}.${V(H(JSON.stringify(t)))}`;return`${o}.${V(await crypto.subtle.sign(function(e){switch(e.algorithm.name){case\"ECDSA\":return{name:e.algorithm.name,hash:\"SHA-256\"};case\"RSA-PSS\":return z(e.algorithm),{name:e.algorithm.name,saltLength:32};case\"RSASSA-PKCS1-v1_5\":return z(e.algorithm),{name:e.algorithm.name};case\"Ed25519\":return{name:e.algorithm.name}}throw new G}(n),n,H(o)))}`}let M;if(Uint8Array.prototype.toBase64)M=e=>(e instanceof ArrayBuffer&&(e=new Uint8Array(e)),e.toBase64({alphabet:\"base64url\",omitPadding:!0}));else{const e=32768;M=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 V(e){return M(e)}class G 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 F 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 Z(e){switch(e.algorithm.name){case\"RSA-PSS\":return function(e){if(\"SHA-256\"===e.algorithm.hash.name)return\"PS256\";throw new G(\"unsupported RsaHashedKeyAlgorithm hash name\")}(e);case\"RSASSA-PKCS1-v1_5\":return function(e){if(\"SHA-256\"===e.algorithm.hash.name)return\"RS256\";throw new G(\"unsupported RsaHashedKeyAlgorithm hash name\")}(e);case\"ECDSA\":return function(e){if(\"P-256\"===e.algorithm.namedCurve)return\"ES256\";throw new G(\"unsupported EcKeyAlgorithm namedCurve\")}(e);case\"Ed25519\":return\"Ed25519\";default:throw new G(\"unsupported CryptoKey algorithm name\")}}function q(e){return e instanceof CryptoKey}function B(e){return q(e)&&\"public\"===e.type}async function X(e,t,n,o,r,i){const a=null==e?void 0:e.privateKey,s=null==e?void 0:e.publicKey;if(!q(c=a)||\"private\"!==c.type)throw new TypeError('\"keypair.privateKey\" must be a private CryptoKey');var c;if(!B(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 J({alg:Z(a),typ:\"dpop+jwt\",jwk:await Y(s)},Object.assign(Object.assign({},i),{iat:Math.floor(Date.now()/1e3),jti:crypto.randomUUID(),htm:n,nonce:o,htu:t,ath:r?V(await crypto.subtle.digest(\"SHA-256\",H(r))):void 0}),a)}async function Y(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 Q=[\"authorization_code\",\"refresh_token\",\"urn:ietf:params:oauth:grant-type:token-exchange\"];function $(){return async function(e,t){var n;let o;if(\"string\"!=typeof e||0===e.length)throw new TypeError('\"alg\" must be a non-empty string');switch(e){case\"PS256\":o={name:\"RSA-PSS\",hash:\"SHA-256\",modulusLength:2048,publicExponent:new Uint8Array([1,0,1])};break;case\"RS256\":o={name:\"RSASSA-PKCS1-v1_5\",hash:\"SHA-256\",modulusLength:2048,publicExponent:new Uint8Array([1,0,1])};break;case\"ES256\":o={name:\"ECDSA\",namedCurve:\"P-256\"};break;case\"Ed25519\":o={name:\"Ed25519\"};break;default:throw new G}return crypto.subtle.generateKey(o,null!==(n=null==t?void 0:t.extractable)&&void 0!==n&&n,[\"sign\",\"verify\"])}(\"ES256\",{extractable:!1})}function ee(e){return async function(e){if(!B(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 Y(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 G(\"unsupported JWK kty\")}return V(await crypto.subtle.digest({name:\"SHA-256\"},H(JSON.stringify(n))))}(e.publicKey)}function te(e){let{keyPair:t,url:n,method:o,nonce:r,accessToken:i}=e;const a=function(e){const t=new URL(e);return t.search=\"\",t.hash=\"\",t.href}(n);return X(t,a,o,r,i)}const ne=async(e,t)=>{const n=await fetch(e,t);return{ok:n.ok,json:await n.json(),headers:(o=n.headers,[...o].reduce(((e,t)=>{let[n,o]=t;return e[n]=o,e}),{}))};var o},oe=async(e,t,n)=>{const o=new AbortController;let r;return t.signal=o.signal,Promise.race([ne(e,t),new Promise(((e,t)=>{r=setTimeout((()=>{o.abort(),t(new Error(\"Timeout when executing 'fetch'\"))}),n)}))]).finally((()=>{clearTimeout(r)}))},re=async(e,t,n,o,r,i,a,s)=>((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])})))({auth:{audience:t,scope:n},timeout:r,fetchUrl:e,fetchOptions:o,useFormData:a,useMrrt:s},i),ie=async function(e,t,n,o,r,i){let a=arguments.length>6&&void 0!==arguments[6]?arguments[6]:1e4,s=arguments.length>7?arguments[7]:void 0;return r?re(e,t,n,o,a,r,i,s):oe(e,o,a)};async function ae(t,n,o,r,i,a,s,c,u,l){if(u){const e=await u.generateProof({url:t,method:i.method||\"GET\",nonce:await u.getNonce()});i.headers=Object.assign(Object.assign({},i.headers),{dpop:e})}let d,h=null;for(let e=0;e<3;e++)try{d=await ie(t,o,r,i,a,s,n,c),h=null;break}catch(e){h=e}if(h)throw h;const p=d.json,{error:f,error_description:m}=p,y=e(p,[\"error\",\"error_description\"]),{headers:g,ok:v}=d;let b;if(u&&(b=g[\"dpop-nonce\"],b&&await u.setNonce(b)),!v){const e=m||\"HTTP error. Unable to fetch \".concat(t);if(\"mfa_required\"===f)throw new E(f,e,y.mfa_token);if(\"missing_refresh_token\"===f)throw new A(o,r);if(\"use_dpop_nonce\"===f){if(!u||!b||l)throw new P(b);return ae(t,n,o,r,i,a,s,c,u,!0)}throw new w(f||\"request_error\",e)}return y}async function se(t,n){var{baseUrl:o,timeout:r,audience:i,scope:a,auth0Client:s,useFormData:c,useMrrt:u,dpop:l}=t,d=e(t,[\"baseUrl\",\"timeout\",\"audience\",\"scope\",\"auth0Client\",\"useFormData\",\"useMrrt\",\"dpop\"]);const h=\"urn:ietf:params:oauth:grant-type:token-exchange\"===d.grant_type,p=\"refresh_token\"===d.grant_type&&u,f=Object.assign(Object.assign(Object.assign(Object.assign({},d),h&&i&&{audience:i}),h&&a&&{scope:a}),p&&{audience:i,scope:a}),y=c?D(f):JSON.stringify(f),w=(g=d.grant_type,Q.includes(g));var g;return await ae(\"\".concat(o,\"/oauth/token\"),r,i||\"default\",a,{method:\"POST\",body:y,headers:{\"Content-Type\":c?\"application/x-www-form-urlencoded\":\"application/json\",\"Auth0-Client\":btoa(JSON.stringify(j(s||m)))}},n,c,u,w?l:void 0)}const ce=e=>Array.from(new Set(e)),ue=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return ce(t.filter(Boolean).join(\" \").trim().split(/\\s+/)).join(\" \")},le=(e,t,n)=>{let o;return n&&(o=e[n]),o||(o=e.default),ue(o,t)};class de{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"@@auth0spajs@@\",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,n,o,r]=e.split(\"::\");return new de({clientId:n,scope:r,audience:o},t)}static fromCacheEntry(e){const{scope:t,audience:n,client_id:o}=e;return new de({scope:t,audience:n,clientId:o})}}class he{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(\"@@auth0spajs@@\")))}}class pe{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||y}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());if(!i){const t=await this.getCacheKeys();if(!t)return;const r=this.matchExistingCacheKey(e,t);if(r&&(i=await this.cache.get(r)),!i&&n&&\"cache-only\"!==o)return this.getEntryWithRefreshToken(e,t)}if(!i)return;const a=await this.nowProvider(),s=Math.floor(a/1e3);return i.expiresAt-t<s?i.body.refresh_token?this.modifiedCachedEntry(i,e):(await this.cache.remove(e.toKey()),void await(null===(r=this.keyManifest)||void 0===r?void 0:r.remove(e.toKey()))):i.body}async modifiedCachedEntry(e,t){return e.body={refresh_token:e.body.refresh_token,audience:e.body.audience,scope:e.body.scope},await this.cache.set(t.toKey(),e),{refresh_token:e.body.refresh_token,audience:e.body.audience,scope:e.body.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 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},\"@@auth0spajs@@\",\"@@user@@\").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(\" \"))||[],a=o.scope&&i.reduce(((e,t)=>e&&r.has(t)),!0);return\"@@auth0spajs@@\"===o.prefix&&o.clientId===e.clientId&&o.audience===e.audience&&a}))[0]}async getEntryWithRefreshToken(e,t){var n;for(const o of t){const t=de.fromKey(o);if(\"@@auth0spajs@@\"===t.prefix&&t.clientId===e.clientId){const t=await this.cache.get(o);if(null===(n=null==t?void 0:t.body)||void 0===n?void 0:n.refresh_token)return this.modifiedCachedEntry(t,e)}}}async updateEntry(e,t){var n;const o=await this.getCacheKeys();if(o)for(const r of o){const o=await this.cache.get(r);if((null===(n=null==o?void 0:o.body)||void 0===n?void 0:n.refresh_token)===e){const e=Object.assign(Object.assign({},o.body),{refresh_token:t});await this.set(e)}}}}class me{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 ye=e=>\"number\"==typeof e,we=[\"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\"],ge=e=>{if(!e.id_token)throw new Error(\"ID token is required but missing\");const t=(e=>{const t=e.split(\".\"),[n,o,r]=t;if(3!==t.length||!n||!o||!r)throw new Error(\"ID token could not be decoded\");const i=JSON.parse(L(o)),a={__raw:e},s={};return Object.keys(i).forEach((e=>{a[e]=i[e],we.includes(e)||(s[e]=i[e])})),{encoded:{header:n,payload:o,signature:r},header:JSON.parse(L(n)),claims:a,user:s}})(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&&!ye(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||!ye(t.claims.exp))throw new Error(\"Expiration Time (exp) claim must be a number present in the ID token\");if(!ye(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&&ye(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&&ye(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};var ve=t&&t.__assign||function(){return ve=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},ve.apply(this,arguments)};function be(e,t){if(!t)return\"\";var n=\"; \"+e;return!0===t?n:n+\"=\"+t}function _e(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 be(\"Expires\",e.expires?e.expires.toUTCString():\"\")+be(\"Domain\",e.domain)+be(\"Path\",e.path)+be(\"Secure\",e.secure)+be(\"SameSite\",e.sameSite)}(n)}function ke(){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)}var Se=function(e){return ke()[e]};function Ee(e,t,n){document.cookie=_e(e,t,ve({path:\"/\"},n))}var Ae=Ee;var Te=function(e,t){Ee(e,\"\",ve(ve({},t),{expires:-1}))};const Pe={get(e){const t=Se(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),Ae(e,JSON.stringify(t),o)},remove(e,t){let n={};(null==t?void 0:t.cookieDomain)&&(n.domain=t.cookieDomain),Te(e,n)}},Re={get(e){const t=Pe.get(e);return t||Pe.get(\"\".concat(\"_legacy_\").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),Ae(\"\".concat(\"_legacy_\").concat(e),JSON.stringify(t),o),Pe.save(e,t,n)},remove(e,t){let n={};(null==t?void 0:t.cookieDomain)&&(n.domain=t.cookieDomain),Te(e,n),Pe.remove(e,t),Pe.remove(\"\".concat(\"_legacy_\").concat(e),t)}},Ie={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)}};var Oe;!function(e){e.Code=\"code\",e.ConnectCode=\"connect_code\"}(Oe||(Oe={}));class xe{}function Ce(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)}var je,De,Ke,Le,Ue=(je=\"Lyogcm9sbHVwLXBsdWdpbi13ZWItd29ya2VyLWxvYWRlciAqLwohZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7Y2xhc3MgZSBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKHQscil7c3VwZXIociksdGhpcy5lcnJvcj10LHRoaXMuZXJyb3JfZGVzY3JpcHRpb249cixPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyxlLnByb3RvdHlwZSl9c3RhdGljIGZyb21QYXlsb2FkKHQpe2xldHtlcnJvcjpyLGVycm9yX2Rlc2NyaXB0aW9uOnN9PXQ7cmV0dXJuIG5ldyBlKHIscyl9fWNsYXNzIHQgZXh0ZW5kcyBle2NvbnN0cnVjdG9yKGUscyl7c3VwZXIoIm1pc3NpbmdfcmVmcmVzaF90b2tlbiIsIk1pc3NpbmcgUmVmcmVzaCBUb2tlbiAoYXVkaWVuY2U6ICciLmNvbmNhdChyKGUsWyJkZWZhdWx0Il0pLCInLCBzY29wZTogJyIpLmNvbmNhdChyKHMpLCInKSIpKSx0aGlzLmF1ZGllbmNlPWUsdGhpcy5zY29wZT1zLE9iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLHQucHJvdG90eXBlKX19ZnVuY3Rpb24gcihlKXtsZXQgdD1hcmd1bWVudHMubGVuZ3RoPjEmJnZvaWQgMCE9PWFyZ3VtZW50c1sxXT9hcmd1bWVudHNbMV06W107cmV0dXJuIGUmJiF0LmluY2x1ZGVzKGUpP2U6IiJ9ImZ1bmN0aW9uIj09dHlwZW9mIFN1cHByZXNzZWRFcnJvciYmU3VwcHJlc3NlZEVycm9yO2NvbnN0IHM9ZT0+e3ZhcntjbGllbnRJZDp0fT1lLHI9ZnVuY3Rpb24oZSx0KXt2YXIgcj17fTtmb3IodmFyIHMgaW4gZSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSxzKSYmdC5pbmRleE9mKHMpPDAmJihyW3NdPWVbc10pO2lmKG51bGwhPWUmJiJmdW5jdGlvbiI9PXR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbz0wO2ZvcihzPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoZSk7bzxzLmxlbmd0aDtvKyspdC5pbmRleE9mKHNbb10pPDAmJk9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChlLHNbb10pJiYocltzW29dXT1lW3Nbb11dKX1yZXR1cm4gcn0oZSxbImNsaWVudElkIl0pO3JldHVybiBuZXcgVVJMU2VhcmNoUGFyYW1zKChlPT5PYmplY3Qua2V5cyhlKS5maWx0ZXIoKHQ9PnZvaWQgMCE9PWVbdF0pKS5yZWR1Y2UoKCh0LHIpPT5PYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sdCkse1tyXTplW3JdfSkpLHt9KSkoT2JqZWN0LmFzc2lnbih7Y2xpZW50X2lkOnR9LHIpKSkudG9TdHJpbmcoKX07bGV0IG89e307Y29uc3Qgbj0oZSx0KT0+IiIuY29uY2F0KGUsInwiKS5jb25jYXQodCk7YWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsKGFzeW5jIGU9PntsZXQgcixjLHtkYXRhOnt0aW1lb3V0OmksYXV0aDphLGZldGNoVXJsOmYsZmV0Y2hPcHRpb25zOmwsdXNlRm9ybURhdGE6cCx1c2VNcnJ0Omh9LHBvcnRzOlt1XX09ZSxkPXt9O2NvbnN0e2F1ZGllbmNlOmcsc2NvcGU6eX09YXx8e307dHJ5e2NvbnN0IGU9cD8oZT0+e2NvbnN0IHQ9bmV3IFVSTFNlYXJjaFBhcmFtcyhlKSxyPXt9O3JldHVybiB0LmZvckVhY2goKChlLHQpPT57clt0XT1lfSkpLHJ9KShsLmJvZHkpOkpTT04ucGFyc2UobC5ib2R5KTtpZighZS5yZWZyZXNoX3Rva2VuJiYicmVmcmVzaF90b2tlbiI9PT1lLmdyYW50X3R5cGUpe2lmKGM9KChlLHQpPT5vW24oZSx0KV0pKGcseSksIWMmJmgpe2NvbnN0IGU9by5sYXRlc3RfcmVmcmVzaF90b2tlbix0PSgoZSx0KT0+e2NvbnN0IHI9T2JqZWN0LmtleXMobykuZmluZCgocj0+e2lmKCJsYXRlc3RfcmVmcmVzaF90b2tlbiIhPT1yKXtjb25zdCBzPSgoZSx0KT0+dC5zdGFydHNXaXRoKCIiLmNvbmNhdChlLCJ8IikpKSh0LHIpLG89ci5zcGxpdCgifCIpWzFdLnNwbGl0KCIgIiksbj1lLnNwbGl0KCIgIikuZXZlcnkoKGU9Pm8uaW5jbHVkZXMoZSkpKTtyZXR1cm4gcyYmbn19KSk7cmV0dXJuISFyfSkoeSxnKTtlJiYhdCYmKGM9ZSl9aWYoIWMpdGhyb3cgbmV3IHQoZyx5KTtsLmJvZHk9cD9zKE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSxlKSx7cmVmcmVzaF90b2tlbjpjfSkpOkpTT04uc3RyaW5naWZ5KE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSxlKSx7cmVmcmVzaF90b2tlbjpjfSkpfWxldCBhLGs7ImZ1bmN0aW9uIj09dHlwZW9mIEFib3J0Q29udHJvbGxlciYmKGE9bmV3IEFib3J0Q29udHJvbGxlcixsLnNpZ25hbD1hLnNpZ25hbCk7dHJ5e2s9YXdhaXQgUHJvbWlzZS5yYWNlKFsoaj1pLG5ldyBQcm9taXNlKChlPT5zZXRUaW1lb3V0KGUsaikpKSksZmV0Y2goZixPYmplY3QuYXNzaWduKHt9LGwpKV0pfWNhdGNoKGUpe3JldHVybiB2b2lkIHUucG9zdE1lc3NhZ2Uoe2Vycm9yOmUubWVzc2FnZX0pfWlmKCFrKXJldHVybiBhJiZhLmFib3J0KCksdm9pZCB1LnBvc3RNZXNzYWdlKHtlcnJvcjoiVGltZW91dCB3aGVuIGV4ZWN1dGluZyAnZmV0Y2gnIn0pO189ay5oZWFkZXJzLGQ9Wy4uLl9dLnJlZHVjZSgoKGUsdCk9PntsZXRbcixzXT10O3JldHVybiBlW3JdPXMsZX0pLHt9KSxyPWF3YWl0IGsuanNvbigpLHIucmVmcmVzaF90b2tlbj8oaCYmKG8ubGF0ZXN0X3JlZnJlc2hfdG9rZW49ci5yZWZyZXNoX3Rva2VuLE89YyxiPXIucmVmcmVzaF90b2tlbixPYmplY3QuZW50cmllcyhvKS5mb3JFYWNoKChlPT57bGV0W3Qscl09ZTtyPT09TyYmKG9bdF09Yil9KSkpLCgoZSx0LHIpPT57b1tuKHQscildPWV9KShyLnJlZnJlc2hfdG9rZW4sZyx5KSxkZWxldGUgci5yZWZyZXNoX3Rva2VuKTooKGUsdCk9PntkZWxldGUgb1tuKGUsdCldfSkoZyx5KSx1LnBvc3RNZXNzYWdlKHtvazprLm9rLGpzb246cixoZWFkZXJzOmR9KX1jYXRjaChlKXt1LnBvc3RNZXNzYWdlKHtvazohMSxqc29uOntlcnJvcjplLmVycm9yLGVycm9yX2Rlc2NyaXB0aW9uOmUubWVzc2FnZX0saGVhZGVyczpkfSl9dmFyIE8sYixfLGp9KSl9KCk7Cgo=\",De=null,Ke=!1,function(e){return Le=Le||Ce(je,De,Ke),new Worker(Le,e)});const Ne={},We=async function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:3;for(let n=0;n<t;n++)if(await e())return!0;return!1};class He{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(\"@@auth0spajs@@\",\"::\").concat(e)}}const ze={memory:()=>(new pe).enclosedCache,localstorage:()=>new he},Je=e=>ze[e],Me=t=>{const{openUrl:n,onRedirect:o}=t,r=e(t,[\"openUrl\",\"onRedirect\"]);return Object.assign(Object.assign({},r),{openUrl:!1===n||n?n:o})},Ve=(e,t)=>{const n=(null==t?void 0:t.split(\" \"))||[];return((null==e?void 0:e.split(\" \"))||[]).every((e=>n.includes(e)))},Ge={NONCE:\"nonce\",KEYPAIR:\"keypair\"};class Fe{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(Ge).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(Ge.NONCE,this.buildKey(t),e)}setKeyPair(e){return this.save(Ge.KEYPAIR,this.buildKey(),e)}async save(e,t,n){await this.executeDbRequest(e,\"readwrite\",(e=>e.put(n,t)))}findNonce(e){return this.find(Ge.NONCE,this.buildKey(e))}findKeyPair(){return this.find(Ge.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()));null==n||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(Ge.NONCE,this.clientId)}clearKeyPairs(){return this.deleteByClientId(Ge.KEYPAIR,this.clientId)}}class Ze{constructor(e){this.storage=new Fe(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 $(),await this.storage.setKeyPair(e)),e}async generateProof(e){const t=await this.getOrGenerateKeyPair();return te(Object.assign({keyPair:t},e))}async calculateThumbprint(){return ee(await this.getOrGenerateKeyPair())}async clear(){await Promise.all([this.storage.clearNonces(),this.storage.clearKeyPairs()])}}var qe,Be,Xe;!function(e){e.Bearer=\"Bearer\",e.DPoP=\"DPoP\"}(qe||(qe={}));class Ye{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]:qe.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?qe.DPoP:qe.Bearer,r=n):(o=n.token_type,r=n.access_token),this.setAuthorizationHeader(e,r,o),o===qe.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,\"dpop-nonce\");if(n&&await this.hooks.setDpopNonce(n),!this.hasUseDpopNonceError(e))return e;if(!n||!t.onUseDpopNonceError)throw new P(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 Qe{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)});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)});return this._handleResponse(t)}async _handleResponse(e){let t;try{t=await e.text(),t=JSON.parse(t)}catch(n){throw new $e({type:\"invalid_json\",status:e.status,title:\"Invalid JSON response\",detail:t||String(n)})}if(e.ok)return t;throw new $e(t)}}class $e extends Error{constructor(e){let{type:t,status:n,title:o,detail:r,validation_errors:i}=e;super(r),this.name=\"MyAccountApiError\",this.type=t,this.status=n,this.title=o,this.detail=r,this.validation_errors=i,Object.setPrototypeOf(this,$e.prototype)}}function et(e,t){this.v=e,this.k=t}function tt(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 nt(e){return new et(e,0)}function ot(e,t){if(t.has(e))throw new TypeError(\"Cannot initialize the same private elements twice on an object\")}function rt(e,t){return e.get(tt(e,t))}function it(e,t,n){ot(e,t),t.set(e,n)}function at(e,t,n){return e.set(tt(e,t),n),n}function st(e,t,n){return(t=function(e){var t=function(e,t){if(\"object\"!=typeof e||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var o=n.call(e,t||\"default\");if(\"object\"!=typeof o)return o;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(\"string\"===t?String:Number)(e)}(e,\"string\");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 ct(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 ut(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ct(Object(n),!0).forEach((function(t){st(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ct(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function lt(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 dt(e){return function(){return new ht(e.apply(this,arguments))}}function ht(e){var t,n;function o(t,n){try{var i=e[t](n),a=i.value,s=a instanceof et;Promise.resolve(s?a.v:a).then((function(n){if(s){var c=\"return\"===t?\"return\":\"next\";if(!a.k||n.done)return o(c,n);n=e[c](n).value}r(i.done?\"return\":\"normal\",n)}),(function(e){o(\"throw\",e)}))}catch(e){r(\"throw\",e)}}function r(e,r){switch(e){case\"return\":t.resolve({value:r,done:!0});break;case\"throw\":t.reject(r);break;default:t.resolve({value:r,done:!1})}(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)}let pt;if(ht.prototype[\"function\"==typeof Symbol&&Symbol.asyncIterator||\"@@asyncIterator\"]=function(){return this},ht.prototype.next=function(e){return this._invoke(\"next\",e)},ht.prototype.throw=function(e){return this._invoke(\"throw\",e)},ht.prototype.return=function(e){return this._invoke(\"return\",e)},\"undefined\"==typeof navigator||null===(Be=navigator.userAgent)||void 0===Be||null===(Xe=Be.startsWith)||void 0===Xe||!Xe.call(Be,\"Mozilla/5.0 \")){const e=\"v3.8.3\";pt=\"\".concat(\"oauth4webapi\",\"/\").concat(e)}function ft(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}}function mt(e,t,n){const o=new TypeError(e,{cause:n});return Object.assign(o,{code:t}),o}const yt=Symbol(),wt=Symbol(),gt=Symbol(),vt=Symbol(),bt=Symbol(),_t=Symbol(),kt=new TextEncoder,St=new TextDecoder;function Et(e){return\"string\"==typeof e?kt.encode(e):St.decode(e)}let At,Tt;if(Uint8Array.prototype.toBase64)At=e=>(e instanceof ArrayBuffer&&(e=new Uint8Array(e)),e.toBase64({alphabet:\"base64url\",omitPadding:!0}));else{const e=32768;At=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 Pt(e){return\"string\"==typeof e?Tt(e):At(e)}Tt=Uint8Array.fromBase64?e=>{try{return Uint8Array.fromBase64(e,{alphabet:\"base64url\"})}catch(e){throw mt(\"The input to be decoded is not correctly encoded.\",\"ERR_INVALID_ARG_VALUE\",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 mt(\"The input to be decoded is not correctly encoded.\",\"ERR_INVALID_ARG_VALUE\",e)}};class Rt extends Error{constructor(e,t){var n;super(e,t),st(this,\"code\",void 0),this.name=this.constructor.name,this.code=Rn,null===(n=Error.captureStackTrace)||void 0===n||n.call(Error,this,this.constructor)}}class It extends Error{constructor(e,t){var n;super(e,t),st(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 Ot(e,t,n){return new It(e,{code:t,cause:n})}function xt(e,t){if(function(e,t){if(!(e instanceof CryptoKey))throw mt(\"\".concat(t,\" must be a CryptoKey\"),\"ERR_INVALID_ARG_TYPE\")}(e,t),\"private\"!==e.type)throw mt(\"\".concat(t,\" must be a private CryptoKey\"),\"ERR_INVALID_ARG_VALUE\")}function Ct(e){return null!==e&&\"object\"==typeof e&&!Array.isArray(e)}function jt(e){ft(e,Headers)&&(e=Object.fromEntries(e.entries()));const t=new Headers(null!=e?e:{});if(pt&&!t.has(\"user-agent\")&&t.set(\"user-agent\",pt),t.has(\"authorization\"))throw mt('\"options.headers\" must not include the \"authorization\" header name',\"ERR_INVALID_ARG_VALUE\");return t}function Dt(e,t){if(void 0!==t){if(\"function\"==typeof t&&(t=t(e.href)),!(t instanceof AbortSignal))throw mt('\"options.signal\" must return or be an instance of AbortSignal',\"ERR_INVALID_ARG_TYPE\");return t}}function Kt(e){return e.includes(\"//\")?e.replace(\"//\",\"/\"):e}async function Lt(e,t){return async function(e,t,n,o){if(!(e instanceof URL))throw mt('\"'.concat(t,'\" must be an instance of URL'),\"ERR_INVALID_ARG_TYPE\");Xt(e,!0!==(null==o?void 0:o[yt]));const r=n(new URL(e.href)),i=jt(null==o?void 0:o.headers);return i.set(\"accept\",\"application/json\"),((null==o?void 0:o[vt])||fetch)(r.href,{body:void 0,headers:Object.fromEntries(i.entries()),method:\"GET\",redirect:\"manual\",signal:Dt(r,null==o?void 0:o.signal)})}(e,\"issuerIdentifier\",(e=>{switch(null==t?void 0:t.algorithm){case void 0:case\"oidc\":!function(e,t){e.pathname=Kt(\"\".concat(e.pathname,\"/\").concat(t))}(e,\".well-known/openid-configuration\");break;case\"oauth2\":!function(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];\"/\"===e.pathname?e.pathname=t:e.pathname=Kt(\"\".concat(t,\"/\").concat(n?e.pathname:e.pathname.replace(/(\\/)$/,\"\")))}(e,\".well-known/oauth-authorization-server\");break;default:throw mt('\"options.algorithm\" must be \"oidc\" (default), or \"oauth2\"',\"ERR_INVALID_ARG_VALUE\")}return e}),t)}function Ut(e,t,n,o,r){try{if(\"number\"!=typeof e||!Number.isFinite(e))throw mt(\"\".concat(n,\" must be a number\"),\"ERR_INVALID_ARG_TYPE\",r);if(e>0)return;if(t){if(0!==e)throw mt(\"\".concat(n,\" must be a non-negative number\"),\"ERR_INVALID_ARG_VALUE\",r);return}throw mt(\"\".concat(n,\" must be a positive number\"),\"ERR_INVALID_ARG_VALUE\",r)}catch(e){if(o)throw Ot(e.message,o,r);throw e}}function Nt(e,t,n,o){try{if(\"string\"!=typeof e)throw mt(\"\".concat(t,\" must be a string\"),\"ERR_INVALID_ARG_TYPE\",o);if(0===e.length)throw mt(\"\".concat(t,\" must not be empty\"),\"ERR_INVALID_ARG_VALUE\",o)}catch(e){if(n)throw Ot(e.message,n,o);throw e}}function Wt(e){!function(e,t){if(ln(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 Ot(t,Cn,e)}(e,t)}(e,\"application/json\")}function Ht(){return Pt(crypto.getRandomValues(new Uint8Array(32)))}function zt(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 Rt(\"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 Rt(\"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 Rt(\"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 Rt(\"unsupported CryptoKey algorithm name\",{cause:e})}}function Jt(e){const t=null==e?void 0:e[wt];return\"number\"==typeof t&&Number.isFinite(t)?t:0}function Mt(e){const t=null==e?void 0:e[gt];return\"number\"==typeof t&&Number.isFinite(t)&&-1!==Math.sign(t)?t:30}function Vt(){return Math.floor(Date.now()/1e3)}function Gt(e){if(\"object\"!=typeof e||null===e)throw mt('\"as\" must be an object',\"ERR_INVALID_ARG_TYPE\");Nt(e.issuer,'\"as.issuer\"')}function Ft(e){if(\"object\"!=typeof e||null===e)throw mt('\"client\" must be an object',\"ERR_INVALID_ARG_TYPE\");Nt(e.client_id,'\"client.client_id\"')}function Zt(e){return Nt(e,'\"clientSecret\"'),(t,n,o,r)=>{o.set(\"client_id\",n.client_id),o.set(\"client_secret\",e)}}function qt(e,t){const{key:n,kid:o}=(r=e)instanceof CryptoKey?{key:r}:(null==r?void 0:r.key)instanceof CryptoKey?(void 0!==r.kid&&Nt(r.kid,'\"kid\"'),{key:r.key,kid:r.kid}):{};var r;return xt(n,'\"clientPrivateKey.key\"'),async(e,r,i,a)=>{var s;const c={alg:zt(n),kid:o},u=function(e,t){const n=Vt()+Jt(t);return{jti:Ht(),aud:e.issuer,exp:n+60,iat:n,nbf:n,iss:t.client_id,sub:t.client_id}}(e,r);null==t||null===(s=t[bt])||void 0===s||s.call(t,c,u),i.set(\"client_id\",r.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 mt('CryptoKey instances used for signing assertions must include \"sign\" in their \"usages\"',\"ERR_INVALID_ARG_VALUE\");const o=\"\".concat(Pt(Et(JSON.stringify(e))),\".\").concat(Pt(Et(JSON.stringify(t)))),r=Pt(await crypto.subtle.sign(function(e){switch(e.algorithm.name){case\"ECDSA\":return{name:e.algorithm.name,hash:Mn(e)};case\"RSA-PSS\":switch(Jn(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 Rt(\"unsupported RSA-PSS hash name\",{cause:e})}case\"RSASSA-PKCS1-v1_5\":return Jn(e),e.algorithm.name;case\"ML-DSA-44\":case\"ML-DSA-65\":case\"ML-DSA-87\":case\"Ed25519\":return e.algorithm.name}throw new Rt(\"unsupported CryptoKey algorithm name\",{cause:e})}(n),n,Et(o)));return\"\".concat(o,\".\").concat(r)}(c,u,n))}}const Bt=URL.parse?(e,t)=>URL.parse(e,t):(e,t)=>{try{return new URL(e,t)}catch(e){return null}};function Xt(e,t){if(t&&\"https:\"!==e.protocol)throw Ot(\"only requests to HTTPS are allowed\",Dn,e);if(\"https:\"!==e.protocol&&\"http:\"!==e.protocol)throw Ot(\"only HTTP and HTTPS requests are allowed\",Kn,e)}function Yt(e,t,n,o){let r;if(\"string\"!=typeof e||!(r=Bt(e)))throw Ot(\"authorization server metadata does not contain a valid \".concat(n?'\"as.mtls_endpoint_aliases.'.concat(t,'\"'):'\"as.'.concat(t,'\"')),void 0===e?Wn:Hn,{attribute:n?\"mtls_endpoint_aliases.\".concat(t):t});return Xt(r,o),r}function Qt(e,t,n,o){return n&&e.mtls_endpoint_aliases&&t in e.mtls_endpoint_aliases?Yt(e.mtls_endpoint_aliases[t],t,n,o):Yt(e[t],t,n,o)}class $t extends Error{constructor(e,t){var n;super(e,t),st(this,\"cause\",void 0),st(this,\"code\",void 0),st(this,\"error\",void 0),st(this,\"status\",void 0),st(this,\"error_description\",void 0),st(this,\"response\",void 0),this.name=this.constructor.name,this.code=Pn,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 en extends Error{constructor(e,t){var n,o;super(e,t),st(this,\"cause\",void 0),st(this,\"code\",void 0),st(this,\"error\",void 0),st(this,\"error_description\",void 0),this.name=this.constructor.name,this.code=In,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 tn extends Error{constructor(e,t){var n;super(e,t),st(this,\"cause\",void 0),st(this,\"code\",void 0),st(this,\"response\",void 0),st(this,\"status\",void 0),this.name=this.constructor.name,this.code=Tn,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 nn=\"[a-zA-Z0-9!#$%&\\\\'\\\\*\\\\+\\\\-\\\\.\\\\^_`\\\\|~]+\",on=new RegExp(\"^[,\\\\s]*(\"+nn+\")\"),rn=new RegExp('^[,\\\\s]*([a-zA-Z0-9!#$%&\\\\\\'\\\\*\\\\+\\\\-\\\\.\\\\^_`\\\\|~]+)\\\\s*=\\\\s*\"((?:[^\"\\\\\\\\]|\\\\\\\\[\\\\s\\\\S])*)\"[,\\\\s]*(.*)'),an=new RegExp(\"^[,\\\\s]*([a-zA-Z0-9!#$%&\\\\'\\\\*\\\\+\\\\-\\\\.\\\\^_`\\\\|~]+)\\\\s*=\\\\s*([a-zA-Z0-9!#$%&\\\\'\\\\*\\\\+\\\\-\\\\.\\\\^_`\\\\|~]+)[,\\\\s]*(.*)\"),sn=new RegExp(\"^([a-zA-Z0-9\\\\-\\\\._\\\\~\\\\+\\\\/]+={0,2})(?:$|[,\\\\s])(.*)\");async function cn(e,t,n){if(e.status!==t){let t;var o;if(function(e){let t;if(t=function(e){if(!ft(e,Response))throw mt('\"response\" must be an instance of Response',\"ERR_INVALID_ARG_TYPE\");const t=e.headers.get(\"www-authenticate\");if(null===t)return;const n=[];let o=t;for(;o;){var r;let e=o.match(on);const t=null===(r=e)||void 0===r?void 0:r[1].toLowerCase();if(!t)return;const i=o.substring(e[0].length);if(i&&!i.match(/^[\\s,]/))return;const a=i.match(/^\\s+(.*)$/),s=!!a;o=a?a[1]:void 0;const c={};let u;if(s)for(;o;){let t,n;if(e=o.match(rn)){if([,t,n,o]=e,n.includes(\"\\\\\"))try{n=JSON.parse('\"'.concat(n,'\"'))}catch(e){}c[t.toLowerCase()]=n}else{if(!(e=o.match(an))){if(e=o.match(sn)){if(Object.keys(c).length)break;[,u,o]=e;break}return}[,t,n,o]=e,c[t.toLowerCase()]=n}}else o=i||void 0;const l={scheme:t,parameters:c};u&&(l.token68=u),n.push(l)}return n.length?n:void 0}(e))throw new tn(\"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){zn(e),Wt(e);try{const t=await e.clone().json();if(Ct(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 $t(\"server responded with an error in the response body\",{cause:t,response:e});throw Ot('\"response\" is not a conform '.concat(n,\" response (unexpected HTTP status code)\"),jn,e)}}function un(e){if(!vn.has(e))throw mt('\"options.DPoP\" is not a valid DPoPHandle',\"ERR_INVALID_ARG_VALUE\")}function ln(e){var t;return null===(t=e.headers.get(\"content-type\"))||void 0===t?void 0:t.split(\";\")[0]}async function dn(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[vt])||fetch)(o.href,{body:r,headers:Object.fromEntries(i.entries()),method:\"POST\",redirect:\"manual\",signal:Dt(o,null==a?void 0:a.signal)})}async function hn(e,t,n,o,r,i){var a;const s=Qt(e,\"token_endpoint\",t.use_mtls_endpoint_aliases,!0!==(null==i?void 0:i[yt]));r.set(\"grant_type\",o);const c=jt(null==i?void 0:i.headers);c.set(\"accept\",\"application/json\"),void 0!==(null==i?void 0:i.DPoP)&&(un(i.DPoP),await i.DPoP.addProof(s,c,\"POST\"));const u=await dn(e,t,n,s,r,c,i);return null==i||null===(a=i.DPoP)||void 0===a||a.cacheNonce(u,s),u}const pn=new WeakMap,fn=new WeakMap;function mn(e){if(!e.id_token)return;const t=pn.get(e);if(!t)throw mt('\"ref\" was already garbage collected or did not resolve from the proper sources',\"ERR_INVALID_ARG_VALUE\");return t}async function yn(e,t,n,o,r,i){if(Gt(e),Ft(t),!ft(n,Response))throw mt('\"response\" must be an instance of Response',\"ERR_INVALID_ARG_TYPE\");await cn(n,200,\"Token Endpoint\"),zn(n);const a=await Xn(n);if(Nt(a.access_token,'\"response\" body \"access_token\" property',xn,{body:a}),Nt(a.token_type,'\"response\" body \"token_type\" property',xn,{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;Ut(e,!0,'\"response\" body \"expires_in\" property',xn,{body:a}),a.expires_in=e}if(void 0!==a.refresh_token&&Nt(a.refresh_token,'\"response\" body \"refresh_token\" property',xn,{body:a}),void 0!==a.scope&&\"string\"!=typeof a.scope)throw Ot('\"response\" body \"scope\" property must be a string',xn,{body:a});if(void 0!==a.id_token){Nt(a.id_token,'\"response\" body \"id_token\" property',xn,{body:a});const i=[\"aud\",\"exp\",\"iat\",\"iss\",\"sub\"];!0===t.require_auth_time&&i.push(\"auth_time\"),void 0!==t.default_max_age&&(Ut(t.default_max_age,!0,'\"client.default_max_age\"'),i.push(\"auth_time\")),null!=o&&o.length&&i.push(...o);const{claims:s,jwt:c}=await async function(e,t,n,o,r){let i,a,{0:s,1:c,length:u}=e.split(\".\");if(5===u){if(void 0===r)throw new Rt(\"JWE decryption is not configured\",{cause:e});e=await r(e),({0:s,1:c,length:u}=e.split(\".\"))}if(3!==u)throw Ot(\"Invalid JWT\",xn,e);try{i=JSON.parse(Et(Pt(s)))}catch(e){throw Ot(\"failed to parse JWT Header body as base64url encoded JSON\",On,e)}if(!Ct(i))throw Ot(\"JWT Header must be a top level object\",xn,e);if(t(i),void 0!==i.crit)throw new Rt('no JWT \"crit\" header parameter extensions are supported',{cause:{header:i}});try{a=JSON.parse(Et(Pt(c)))}catch(e){throw Ot(\"failed to parse JWT Payload body as base64url encoded JSON\",On,e)}if(!Ct(a))throw Ot(\"JWT Payload must be a top level object\",xn,e);const l=Vt()+n;if(void 0!==a.exp){if(\"number\"!=typeof a.exp)throw Ot('unexpected JWT \"exp\" (expiration time) claim type',xn,{claims:a});if(a.exp<=l-o)throw Ot('unexpected JWT \"exp\" (expiration time) claim value, expiration is past current timestamp',Ln,{claims:a,now:l,tolerance:o,claim:\"exp\"})}if(void 0!==a.iat&&\"number\"!=typeof a.iat)throw Ot('unexpected JWT \"iat\" (issued at) claim type',xn,{claims:a});if(void 0!==a.iss&&\"string\"!=typeof a.iss)throw Ot('unexpected JWT \"iss\" (issuer) claim type',xn,{claims:a});if(void 0!==a.nbf){if(\"number\"!=typeof a.nbf)throw Ot('unexpected JWT \"nbf\" (not before) claim type',xn,{claims:a});if(a.nbf>l+o)throw Ot('unexpected JWT \"nbf\" (not before) claim value',Ln,{claims:a,now:l,tolerance:o,claim:\"nbf\"})}if(void 0!==a.aud&&\"string\"!=typeof a.aud&&!Array.isArray(a.aud))throw Ot('unexpected JWT \"aud\" (audience) claim type',xn,{claims:a});return{header:i,claims:a,jwt:e}}(a.id_token,Gn.bind(void 0,t.id_token_signed_response_alg,e.id_token_signing_alg_values_supported,\"RS256\"),Jt(t),Mt(t),r).then(kn.bind(void 0,i)).then(gn.bind(void 0,e)).then(wn.bind(void 0,t.client_id));if(Array.isArray(s.aud)&&1!==s.aud.length){if(void 0===s.azp)throw Ot('ID Token \"aud\" (audience) claim includes additional untrusted audiences',Un,{claims:s,claim:\"aud\"});if(s.azp!==t.client_id)throw Ot('unexpected ID Token \"azp\" (authorized party) claim value',Un,{expected:t.client_id,claims:s,claim:\"azp\"})}void 0!==s.auth_time&&Ut(s.auth_time,!0,'ID Token \"auth_time\" (authentication time)',xn,{claims:s}),fn.set(n,c),pn.set(a,s)}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 Rt(\"unsupported `token_type` value\",{cause:{body:a}});return a}function wn(e,t){if(Array.isArray(t.claims.aud)){if(!t.claims.aud.includes(e))throw Ot('unexpected JWT \"aud\" (audience) claim value',Un,{expected:e,claims:t.claims,claim:\"aud\"})}else if(t.claims.aud!==e)throw Ot('unexpected JWT \"aud\" (audience) claim value',Un,{expected:e,claims:t.claims,claim:\"aud\"});return t}function gn(e,t){var n,o;const r=null!==(n=null===(o=e[Qn])||void 0===o?void 0:o.call(e,t))&&void 0!==n?n:e.issuer;if(t.claims.iss!==r)throw Ot('unexpected JWT \"iss\" (issuer) claim value',Un,{expected:r,claims:t.claims,claim:\"iss\"});return t}const vn=new WeakSet;const bn=Symbol();const _n={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 kn(e,t){for(const n of e)if(void 0===t.claims[n])throw Ot('JWT \"'.concat(n,'\" (').concat(_n[n],\") claim missing\"),xn,{claims:t.claims});return t}const Sn=Symbol(),En=Symbol();async function An(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=Sn;break;case Sn:break;default:Nt(o,'\"expectedNonce\" argument'),s.push(\"nonce\")}switch(null!=r||(r=t.default_max_age),r){case void 0:r=En;break;case En:break;default:Ut(r,!0,'\"maxAge\" argument'),s.push(\"auth_time\")}const c=await yn(e,t,n,s,i,a);Nt(c.id_token,'\"response\" body \"id_token\" property',xn,{body:c});const u=mn(c);if(r!==En){const e=Vt()+Jt(t),n=Mt(t);if(u.auth_time+r<e-n)throw Ot(\"too much time has elapsed since the last End-User authentication\",Ln,{claims:u,now:e,tolerance:n,claim:\"auth_time\"})}if(o===Sn){if(void 0!==u.nonce)throw Ot('unexpected ID Token \"nonce\" claim value',Un,{expected:void 0,claims:u,claim:\"nonce\"})}else if(u.nonce!==o)throw Ot('unexpected ID Token \"nonce\" claim value',Un,{expected:o,claims:u,claim:\"nonce\"});return c}(e,t,n,o.expectedNonce,o.maxAge,o[_t],o.recognizedTokenTypes):async function(e,t,n,o,r){const i=await yn(e,t,n,void 0,o,r),a=mn(i);if(a){if(void 0!==t.default_max_age){Ut(t.default_max_age,!0,'\"client.default_max_age\"');const e=Vt()+Jt(t),n=Mt(t);if(a.auth_time+t.default_max_age<e-n)throw Ot(\"too much time has elapsed since the last End-User authentication\",Ln,{claims:a,now:e,tolerance:n,claim:\"auth_time\"})}if(void 0!==a.nonce)throw Ot('unexpected ID Token \"nonce\" claim value',Un,{expected:void 0,claims:a,claim:\"nonce\"})}return i}(e,t,n,null==o?void 0:o[_t],null==o?void 0:o.recognizedTokenTypes)}const Tn=\"OAUTH_WWW_AUTHENTICATE_CHALLENGE\",Pn=\"OAUTH_RESPONSE_BODY_ERROR\",Rn=\"OAUTH_UNSUPPORTED_OPERATION\",In=\"OAUTH_AUTHORIZATION_RESPONSE_ERROR\",On=\"OAUTH_PARSE_ERROR\",xn=\"OAUTH_INVALID_RESPONSE\",Cn=\"OAUTH_RESPONSE_IS_NOT_JSON\",jn=\"OAUTH_RESPONSE_IS_NOT_CONFORM\",Dn=\"OAUTH_HTTP_REQUEST_FORBIDDEN\",Kn=\"OAUTH_REQUEST_PROTOCOL_FORBIDDEN\",Ln=\"OAUTH_JWT_TIMESTAMP_CHECK_FAILED\",Un=\"OAUTH_JWT_CLAIM_COMPARISON_FAILED\",Nn=\"OAUTH_JSON_ATTRIBUTE_COMPARISON_FAILED\",Wn=\"OAUTH_MISSING_SERVER_METADATA\",Hn=\"OAUTH_INVALID_SERVER_METADATA\";function zn(e){if(e.bodyUsed)throw mt('\"response\" body has been used already',\"ERR_INVALID_ARG_VALUE\")}function Jn(e){const{algorithm:t}=e;if(\"number\"!=typeof t.modulusLength||t.modulusLength<2048)throw new Rt(\"unsupported \".concat(t.name,\" modulusLength\"),{cause:e})}function Mn(e){const{algorithm:t}=e;switch(t.namedCurve){case\"P-256\":return\"SHA-256\";case\"P-384\":return\"SHA-384\";case\"P-521\":return\"SHA-512\";default:throw new Rt(\"unsupported ECDSA namedCurve\",{cause:e})}}async function Vn(e){if(\"POST\"!==e.method)throw mt(\"form_post responses are expected to use the POST method\",\"ERR_INVALID_ARG_VALUE\",{cause:e});if(\"application/x-www-form-urlencoded\"!==ln(e))throw mt(\"form_post responses are expected to use the application/x-www-form-urlencoded content-type\",\"ERR_INVALID_ARG_VALUE\",{cause:e});return async function(e){if(e.bodyUsed)throw mt(\"form_post Request instances must contain a readable body\",\"ERR_INVALID_ARG_VALUE\",{cause:e});return e.text()}(e)}function Gn(e,t,n,o){if(void 0===e)if(Array.isArray(t)){if(!t.includes(o.alg))throw Ot('unexpected JWT \"alg\" header parameter',xn,{header:o,expected:t,reason:\"authorization server metadata\"})}else{if(void 0===n)throw Ot('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 Ot('unexpected JWT \"alg\" header parameter',xn,{header:o,expected:n,reason:\"default value\"})}else if(\"string\"==typeof e?o.alg!==e:!e.includes(o.alg))throw Ot('unexpected JWT \"alg\" header parameter',xn,{header:o,expected:e,reason:\"client configuration\"})}function Fn(e,t){const{0:n,length:o}=e.getAll(t);if(o>1)throw Ot('\"'.concat(t,'\" parameter must be provided only once'),xn);return n}const Zn=Symbol(),qn=Symbol();function Bn(e,t,n,o){if(Gt(e),Ft(t),n instanceof URL&&(n=n.searchParams),!(n instanceof URLSearchParams))throw mt('\"parameters\" must be an instance of URLSearchParams, or URL',\"ERR_INVALID_ARG_TYPE\");if(Fn(n,\"response\"))throw Ot('\"parameters\" contains a JARM response, use validateJwtAuthResponse() instead of validateAuthResponse()',xn,{parameters:n});const r=Fn(n,\"iss\"),i=Fn(n,\"state\");if(!r&&e.authorization_response_iss_parameter_supported)throw Ot('response parameter \"iss\" (issuer) missing',xn,{parameters:n});if(r&&r!==e.issuer)throw Ot('unexpected \"iss\" (issuer) response parameter value',xn,{expected:e.issuer,parameters:n});switch(o){case void 0:case qn:if(void 0!==i)throw Ot('unexpected \"state\" response parameter encountered',xn,{expected:void 0,parameters:n});break;case Zn:break;default:if(Nt(o,'\"expectedState\" argument'),i!==o)throw Ot(void 0===i?'response parameter \"state\" missing':'unexpected \"state\" response parameter value',xn,{expected:o,parameters:n})}if(Fn(n,\"error\"))throw new en(\"authorization response from the server is an error\",{cause:n});const a=Fn(n,\"id_token\"),s=Fn(n,\"token\");if(void 0!==a||void 0!==s)throw new Rt(\"implicit and hybrid flows are not supported\");return c=new URLSearchParams(n),vn.add(c),c;var c}async function Xn(e){let t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Wt;try{t=await e.json()}catch(t){throw n(e),Ot('failed to parse \"response\" body as JSON',On,t)}if(!Ct(t))throw Ot('\"response\" body must be a top level object',xn,{body:t});return t}const Yn=Symbol(),Qn=Symbol(),$n=new TextEncoder,eo=new TextDecoder;function to(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 no(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 oo(e){if(Uint8Array.fromBase64)return Uint8Array.fromBase64(\"string\"==typeof e?e:eo.decode(e),{alphabet:\"base64url\"});let t=e;t instanceof Uint8Array&&(t=eo.decode(t)),t=t.replace(/-/g,\"+\").replace(/_/g,\"/\");try{return no(t)}catch(e){throw new TypeError(\"The input to be decoded is not correctly encoded.\")}}class ro extends Error{constructor(e,t){var n;super(e,t),st(this,\"code\",\"ERR_JOSE_GENERIC\"),this.name=this.constructor.name,null===(n=Error.captureStackTrace)||void 0===n||n.call(Error,this,this.constructor)}}st(ro,\"code\",\"ERR_JOSE_GENERIC\");class io extends ro{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}}),st(this,\"code\",\"ERR_JWT_CLAIM_VALIDATION_FAILED\"),st(this,\"claim\",void 0),st(this,\"reason\",void 0),st(this,\"payload\",void 0),this.claim=n,this.reason=o,this.payload=t}}st(io,\"code\",\"ERR_JWT_CLAIM_VALIDATION_FAILED\");class ao extends ro{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}}),st(this,\"code\",\"ERR_JWT_EXPIRED\"),st(this,\"claim\",void 0),st(this,\"reason\",void 0),st(this,\"payload\",void 0),this.claim=n,this.reason=o,this.payload=t}}st(ao,\"code\",\"ERR_JWT_EXPIRED\");class so extends ro{constructor(){super(...arguments),st(this,\"code\",\"ERR_JOSE_ALG_NOT_ALLOWED\")}}st(so,\"code\",\"ERR_JOSE_ALG_NOT_ALLOWED\");class co extends ro{constructor(){super(...arguments),st(this,\"code\",\"ERR_JOSE_NOT_SUPPORTED\")}}st(co,\"code\",\"ERR_JOSE_NOT_SUPPORTED\");st(class extends ro{constructor(){super(arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"decryption operation failed\",arguments.length>1?arguments[1]:void 0),st(this,\"code\",\"ERR_JWE_DECRYPTION_FAILED\")}},\"code\",\"ERR_JWE_DECRYPTION_FAILED\");st(class extends ro{constructor(){super(...arguments),st(this,\"code\",\"ERR_JWE_INVALID\")}},\"code\",\"ERR_JWE_INVALID\");class uo extends ro{constructor(){super(...arguments),st(this,\"code\",\"ERR_JWS_INVALID\")}}st(uo,\"code\",\"ERR_JWS_INVALID\");class lo extends ro{constructor(){super(...arguments),st(this,\"code\",\"ERR_JWT_INVALID\")}}st(lo,\"code\",\"ERR_JWT_INVALID\");st(class extends ro{constructor(){super(...arguments),st(this,\"code\",\"ERR_JWK_INVALID\")}},\"code\",\"ERR_JWK_INVALID\");class ho extends ro{constructor(){super(...arguments),st(this,\"code\",\"ERR_JWKS_INVALID\")}}st(ho,\"code\",\"ERR_JWKS_INVALID\");class po extends ro{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),st(this,\"code\",\"ERR_JWKS_NO_MATCHING_KEY\")}}st(po,\"code\",\"ERR_JWKS_NO_MATCHING_KEY\");class fo extends ro{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),st(this,Symbol.asyncIterator,void 0),st(this,\"code\",\"ERR_JWKS_MULTIPLE_MATCHING_KEYS\")}}st(fo,\"code\",\"ERR_JWKS_MULTIPLE_MATCHING_KEYS\");class mo extends ro{constructor(){super(arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"request timed out\",arguments.length>1?arguments[1]:void 0),st(this,\"code\",\"ERR_JWKS_TIMEOUT\")}}st(mo,\"code\",\"ERR_JWKS_TIMEOUT\");class yo extends ro{constructor(){super(arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"signature verification failed\",arguments.length>1?arguments[1]:void 0),st(this,\"code\",\"ERR_JWS_SIGNATURE_VERIFICATION_FAILED\")}}st(yo,\"code\",\"ERR_JWS_SIGNATURE_VERIFICATION_FAILED\");const wo=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"algorithm.name\";return new TypeError(\"CryptoKey does not support this operation, its \".concat(t,\" must be \").concat(e))},go=(e,t)=>e.name===t;function vo(e){return parseInt(e.name.slice(4),10)}function bo(e,t,n){switch(t){case\"HS256\":case\"HS384\":case\"HS512\":{if(!go(e.algorithm,\"HMAC\"))throw wo(\"HMAC\");const n=parseInt(t.slice(2),10);if(vo(e.algorithm.hash)!==n)throw wo(\"SHA-\".concat(n),\"algorithm.hash\");break}case\"RS256\":case\"RS384\":case\"RS512\":{if(!go(e.algorithm,\"RSASSA-PKCS1-v1_5\"))throw wo(\"RSASSA-PKCS1-v1_5\");const n=parseInt(t.slice(2),10);if(vo(e.algorithm.hash)!==n)throw wo(\"SHA-\".concat(n),\"algorithm.hash\");break}case\"PS256\":case\"PS384\":case\"PS512\":{if(!go(e.algorithm,\"RSA-PSS\"))throw wo(\"RSA-PSS\");const n=parseInt(t.slice(2),10);if(vo(e.algorithm.hash)!==n)throw wo(\"SHA-\".concat(n),\"algorithm.hash\");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)}function _o(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 _o(\"Key for the \".concat(e,\" algorithm must be \"),t,...o)},So=e=>{if(\"CryptoKey\"===(null==e?void 0:e[Symbol.toStringTag]))return!0;try{return e instanceof CryptoKey}catch(e){return!1}},Eo=e=>\"KeyObject\"===(null==e?void 0:e[Symbol.toStringTag]),Ao=e=>So(e)||Eo(e);function To(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}const Po=(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},Ro=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},Io=(e,t,n)=>{if(e.data[e.pos++]!==t)throw new Error(n)},Oo=(e,t)=>{const n=e.data.subarray(e.pos,e.pos+t);return e.pos+=t,n};const xo=e=>{const t=(e=>{Io(e,6,\"Expected algorithm OID\");const t=Ro(e);return Oo(e,t)})(e);if(Po(t,[43,101,110]))return\"X25519\";if(!Po(t,[42,134,72,206,61,2,1]))throw new Error(\"Unsupported key algorithm\");Io(e,6,\"Expected curve OID\");const n=Ro(e),o=Oo(e,n);for(const{name:e,oid:t}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]}])if(Po(o,t))return e;throw new Error(\"Unsupported named curve\")},Co=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 co(\"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 co('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)},jo=(e,t,n)=>{var o;const r=((e,t)=>no(e.replace(t,\"\")))(e,/(?:-----(?:BEGIN|END) PRIVATE KEY-----|\\s)/g);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){Io(e,48,\"Invalid PKCS#8 structure\"),Ro(e),Io(e,2,\"Expected version field\");const t=Ro(e);e.pos+=t,Io(e,48,\"Expected algorithm identifier\");const n=Ro(e);e.pos}(t),xo(t)}),Co(\"pkcs8\",r,t,i)};async function Do(e){var t,n;if(!e.alg)throw new TypeError('\"alg\" argument is required when \"jwk.alg\" is not present');const{algorithm:o,keyUsages:r}=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 co('Invalid or unsupported JWK \"alg\" (Algorithm) Parameter value')}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 co('Invalid or unsupported JWK \"alg\" (Algorithm) Parameter value')}break;case\"EC\":switch(e.alg){case\"ES256\":t={name:\"ECDSA\",namedCurve:\"P-256\"},n=e.d?[\"sign\"]:[\"verify\"];break;case\"ES384\":t={name:\"ECDSA\",namedCurve:\"P-384\"},n=e.d?[\"sign\"]:[\"verify\"];break;case\"ES512\":t={name:\"ECDSA\",namedCurve:\"P-521\"},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 co('Invalid or unsupported JWK \"alg\" (Algorithm) Parameter value')}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 co('Invalid or unsupported JWK \"alg\" (Algorithm) Parameter value')}break;default:throw new co('Invalid or unsupported JWK \"kty\" (Key Type) Parameter value')}return{algorithm:t,keyUsages:n}}(e),i=ut({},e);return\"AKP\"!==i.kty&&delete i.alg,delete i.use,crypto.subtle.importKey(\"jwk\",i,o,null!==(t=e.ext)&&void 0!==t?t:!e.d&&!e.priv,null!==(n=e.key_ops)&&void 0!==n?n:r)}const Ko=e=>To(e)&&\"string\"==typeof e.kty;let Lo;const Uo=async function(e,t,n){let o=arguments.length>3&&void 0!==arguments[3]&&arguments[3];Lo||(Lo=new WeakMap);let r=Lo.get(e);if(null!=r&&r[n])return r[n];const i=await Do(ut(ut({},t),{},{alg:n}));return o&&Object.freeze(e),r?r[n]=i:Lo.set(e,{[n]:i}),i};async function No(e,t){if(e instanceof Uint8Array)return e;if(So(e))return e;if(Eo(e)){if(\"secret\"===e.type)return e.export();if(\"toCryptoKey\"in e&&\"function\"==typeof e.toCryptoKey)try{return((e,t)=>{Lo||(Lo=new WeakMap);let n=Lo.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(\"given KeyObject instance cannot be used for this algorithm\")}i=e.toCryptoKey(e.asymmetricKeyType,r,o?[]:[\"deriveBits\"])}if(\"ed25519\"===e.asymmetricKeyType){if(\"EdDSA\"!==t&&\"Ed25519\"!==t)throw new TypeError(\"given KeyObject instance cannot be used for this algorithm\");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(\"given KeyObject instance cannot be used for this algorithm\");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(\"given KeyObject instance cannot be used for this algorithm\")}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(\"given KeyObject instance cannot be used for this algorithm\");\"ES256\"===t&&\"P-256\"===n&&(i=e.toCryptoKey({name:\"ECDSA\",namedCurve:n},r,[o?\"verify\":\"sign\"])),\"ES384\"===t&&\"P-384\"===n&&(i=e.toCryptoKey({name:\"ECDSA\",namedCurve:n},r,[o?\"verify\":\"sign\"])),\"ES512\"===t&&\"P-521\"===n&&(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(\"given KeyObject instance cannot be used for this algorithm\");return n?n[t]=i:Lo.set(e,{[t]:i}),i})(e,t)}catch(e){if(e instanceof TypeError)throw e}let n=e.export({format:\"jwk\"});return Uo(e,n,t)}if(Ko(e))return e.k?oo(e.k):Uo(e,e,t,!0);throw new Error(\"unreachable\")}const Wo=e=>null==e?void 0:e[Symbol.toStringTag],Ho=(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 zo(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(Ko(t)){if((e=>\"oct\"===e.kty&&\"string\"==typeof e.k)(t)&&Ho(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(!Ao(t))throw new TypeError(ko(e,t,\"CryptoKey\",\"KeyObject\",\"JSON Web Key\",\"Uint8Array\"));if(\"secret\"!==t.type)throw new TypeError(\"\".concat(Wo(t),' instances for symmetric algorithms must be of type \"secret\"'))}})(e,t,n);break;default:((e,t,n)=>{if(Ko(t))switch(n){case\"decrypt\":case\"sign\":if((e=>\"oct\"!==e.kty&&(\"AKP\"===e.kty&&\"string\"==typeof e.priv||\"string\"==typeof e.d))(t)&&Ho(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)&&Ho(e,t,n))return;throw new TypeError(\"JSON Web Key for this operation must be a public JWK\")}if(!Ao(t))throw new TypeError(ko(e,t,\"CryptoKey\",\"KeyObject\",\"JSON Web Key\"));if(\"secret\"===t.type)throw new TypeError(\"\".concat(Wo(t),' instances for asymmetric algorithms must not be of type \"secret\"'));if(\"public\"===t.type)switch(n){case\"sign\":throw new TypeError(\"\".concat(Wo(t),' instances for asymmetric algorithm signing must be of type \"private\"'));case\"decrypt\":throw new TypeError(\"\".concat(Wo(t),' instances for asymmetric algorithm decryption must be of type \"private\"'))}if(\"private\"===t.type)switch(n){case\"verify\":throw new TypeError(\"\".concat(Wo(t),' instances for asymmetric algorithm verifying must be of type \"public\"'));case\"encrypt\":throw new TypeError(\"\".concat(Wo(t),' instances for asymmetric algorithm encryption must be of type \"public\"'))}})(e,t,n)}}var Jo,Mo;let Vo,Go;if(\"undefined\"==typeof navigator||null===(Jo=navigator.userAgent)||void 0===Jo||null===(Mo=Jo.startsWith)||void 0===Mo||!Mo.call(Jo,\"Mozilla/5.0 \")){const e=\"v6.8.1\";Go=\"\".concat(\"openid-client\",\"/\").concat(e),Vo={\"user-agent\":Go}}const Fo=e=>Zo.get(e);let Zo,qo;function Bo(e){return void 0!==e?Zt(e):(qo||(qo=new WeakMap),(e,t,n,o)=>{let r;return(r=qo.get(t))||(!function(e,t){if(\"string\"!=typeof e)throw $o(\"\".concat(t,\" must be a string\"),Qo);if(0===e.length)throw $o(\"\".concat(t,\" must not be empty\"),Yo)}(t.client_secret,'\"metadata.client_secret\"'),r=Zt(t.client_secret),qo.set(t,r)),r(e,t,n,o)})}const Xo=vt,Yo=\"ERR_INVALID_ARG_VALUE\",Qo=\"ERR_INVALID_ARG_TYPE\";function $o(e,t,n){const o=new TypeError(e,{cause:n});return Object.assign(o,{code:t}),o}function er(e){return async function(e){return Nt(e,\"codeVerifier\"),Pt(await crypto.subtle.digest(\"SHA-256\",Et(e)))}(e)}function tr(){return Ht()}class nr extends Error{constructor(e,t){var n;super(e,t),st(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 or(e,t,n){return new nr(e,{cause:t,code:n})}function rr(e){if(e instanceof TypeError||e instanceof nr||e instanceof $t||e instanceof en||e instanceof tn)throw e;if(e instanceof It)switch(e.code){case Dn:throw or(\"only requests to HTTPS are allowed\",e,e.code);case Kn:throw or(\"only requests to HTTP or HTTPS are allowed\",e,e.code);case jn:throw or(\"unexpected HTTP response status code\",e.cause,e.code);case Cn:throw or(\"unexpected response content-type\",e.cause,e.code);case On:throw or(\"parsing error occured\",e,e.code);case xn:throw or(\"invalid response encountered\",e,e.code);case Un:throw or(\"unexpected JWT claim value encountered\",e,e.code);case Nn:throw or(\"unexpected JSON attribute value encountered\",e,e.code);case Ln:throw or(\"JWT timestamp claim value failed validation\",e,e.code);default:throw or(e.message,e,e.code)}if(e instanceof Rt)throw or(\"unsupported operation\",e,e.code);if(e instanceof DOMException)switch(e.name){case\"OperationError\":throw or(\"runtime operation error\",e,Rn);case\"NotSupportedError\":throw or(\"runtime unsupported operation\",e,Rn);case\"TimeoutError\":throw or(\"operation timed out\",e,\"OAUTH_TIMEOUT\");case\"AbortError\":throw or(\"operation aborted\",e,\"OAUTH_ABORT\")}throw new nr(\"something went wrong\",{cause:e})}async function ir(e,t,n,o,r){const i=await async function(e,t){var n,o;if(!(e instanceof URL))throw $o('\"server\" must be an instance of URL',Qo);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?Lt(e,{algorithm:null==t?void 0:t.algorithm,[vt]:null==t?void 0:t[Xo],[yt]:null==t||null===(o=t.execute)||void 0===o?void 0:o.includes(pr),signal:a,headers:new Headers(Vo)}):((null==t?void 0:t[Xo])||fetch)((Xt(e,null==t||null===(c=t.execute)||void 0===c||!c.includes(pr)),e.href),{headers:Object.fromEntries(new Headers(ut({accept:\"application/json\"},Vo)).entries()),body:void 0,method:\"GET\",redirect:\"manual\",signal:a})).then((e=>async function(e,t){const n=e;if(!(n instanceof URL)&&n!==Yn)throw mt('\"expectedIssuerIdentifier\" must be an instance of URL',\"ERR_INVALID_ARG_TYPE\");if(!ft(t,Response))throw mt('\"response\" must be an instance of Response',\"ERR_INVALID_ARG_TYPE\");if(200!==t.status)throw Ot('\"response\" is not a conform Authorization Server Metadata response (unexpected HTTP status code)',jn,t);zn(t);const o=await Xn(t);if(Nt(o.issuer,'\"response\" body \"issuer\" property',xn,{body:o}),n!==Yn&&new URL(o.issuer).href!==n.href)throw Ot('\"response\" body \"issuer\" property does not match the expected value',Nn,{expected:n.href,body:o,attribute:\"issuer\"});return o}(Yn,e))).catch(rr);var c;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[ar]=!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 nr(\"discovered metadata issuer does not match the expected issuer\",{code:Nn,cause:{expected:e.href,body:s,attribute:\"issuer\"}})})());return s}(e,r),a=new sr(i,t,n,o);let s=Fo(a);if(null!=r&&r[Xo]&&(s.fetch=r[Xo]),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 ar=Symbol();class sr{constructor(e,t,n,o){var r,i,a,s,c;if(\"string\"!=typeof t||!t.length)throw $o('\"clientId\" must be a non-empty string',Qo);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 $o('\"clientId\" and \"metadata.client_id\" must be the same',Yo);const u=ut(ut({},structuredClone(n)),{},{client_id:t});let l;u[wt]=null!==(i=null===(a=n)||void 0===a?void 0:a[wt])&&void 0!==i?i:0,u[gt]=null!==(s=null===(c=n)||void 0===c?void 0:c[gt])&&void 0!==s?s:30,l=o||(\"string\"==typeof u.client_secret&&u.client_secret.length?Bo(u.client_secret):(e,t,n,o)=>{n.set(\"client_id\",t.client_id)});let d=Object.freeze(u);const h=structuredClone(e);ar in e&&(h[Qn]=t=>{let{claims:{tid:n}}=t;return e.issuer.replace(\"{tenantid}\",n)});let p=Object.freeze(h);Zo||(Zo=new WeakMap),Zo.set(this,{__proto__:null,as:p,c:d,auth:l,tlsOnly:!0,jwksCache:{}})}serverMetadata(){const e=structuredClone(Fo(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(Fo(this).c)}get timeout(){return Fo(this).timeout}set timeout(e){Fo(this).timeout=e}get[Xo](){return Fo(this).fetch}set[Xo](e){Fo(this).fetch=e}}function cr(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 mn(this)}catch(e){return}}}}}(e))}async function ur(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 It(\"invalid Retry-After header value\",{cause:e});a>t&&await lr(a-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 dr(e,t){vr(e);const{as:n,c:o,auth:r,fetch:i,tlsOnly:a,timeout:s}=Fo(e);return async function(e,t,n,o,r){Gt(e),Ft(t);const i=Qt(e,\"backchannel_authentication_endpoint\",t.use_mtls_endpoint_aliases,!0!==(null==r?void 0:r[yt])),a=new URLSearchParams(o);a.set(\"client_id\",t.client_id);const s=jt(null==r?void 0:r.headers);return s.set(\"accept\",\"application/json\"),dn(e,t,n,i,a,s,r)}(n,o,r,t,{[vt]:i,[yt]:!a,headers:new Headers(Vo),signal:br(s)}).then((e=>async function(e,t,n){if(Gt(e),Ft(t),!ft(n,Response))throw mt('\"response\" must be an instance of Response',\"ERR_INVALID_ARG_TYPE\");await cn(n,200,\"Backchannel Authentication Endpoint\"),zn(n);const o=await Xn(n);Nt(o.auth_req_id,'\"response\" body \"auth_req_id\" property',xn,{body:o});let r=\"number\"!=typeof o.expires_in?parseFloat(o.expires_in):o.expires_in;return Ut(r,!0,'\"response\" body \"expires_in\" property',xn,{body:o}),o.expires_in=r,void 0!==o.interval&&Ut(o.interval,!1,'\"response\" body \"interval\" property',xn,{body:o}),o}(n,o,e))).catch(rr)}async function hr(e,t,n,o){var r,i;vr(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 lr(a,s)}catch(e){rr(e)}const{as:c,c:u,auth:l,fetch:d,tlsOnly:h,nonRepudiation:p,timeout:f,decrypt:m}=Fo(e),y=(r,i)=>hr(e,ut(ut({},t),{},{interval:r}),n,ut(ut({},o),{},{signal:s,flag:i})),w=await async function(e,t,n,o,r){Gt(e),Ft(t),Nt(o,'\"authReqId\"');const i=new URLSearchParams(null==r?void 0:r.additionalParameters);return i.set(\"auth_req_id\",o),hn(e,t,n,\"urn:openid:params:grant-type:ciba\",i,r)}(c,u,l,t.auth_req_id,{[vt]:d,[yt]:!h,additionalParameters:n,DPoP:null==o?void 0:o.DPoP,headers:new Headers(Vo),signal:s.aborted?s:br(f)}).catch(rr);var g;if(503===w.status&&w.headers.has(\"retry-after\"))return await ur(w,a,s,!0),await(null===(g=w.body)||void 0===g?void 0:g.cancel()),y(a);const v=async function(e,t,n,o){return yn(e,t,n,void 0,null==o?void 0:o[_t],null==o?void 0:o.recognizedTokenTypes)}(c,u,w,{[_t]:m});let b;try{b=await v}catch(e){if(_r(e,o))return y(a,kr);if(e instanceof $t)switch(e.error){case\"slow_down\":a+=5;case\"authorization_pending\":return await ur(e.response,a,s),y(a)}rr(e)}return b.id_token&&await(null==p?void 0:p(w)),cr(b),b}function pr(e){Fo(e).tlsOnly=!1}async function fr(e,t,n,o,r){if(vr(e),!((null==r?void 0:r.flag)===kr||t instanceof URL||function(e,t){try{return Object.getPrototypeOf(e)[Symbol.toStringTag]===t}catch(e){return!1}}(t,\"Request\")))throw $o('\"currentUrl\" must be an instance of URL, or Request',Qo);let i,a;const{as:s,c:c,auth:u,fetch:l,tlsOnly:d,jarm:h,hybrid:p,nonRepudiation:f,timeout:m,decrypt:y,implicit:w}=Fo(e);if((null==r?void 0:r.flag)===kr)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 Vn(e));if(p)t.hash=n.toString();else for(const[e,o]of n.entries())t.searchParams.append(e,o);break;default:throw $o(\"unexpected Request HTTP method\",Yo)}}switch(a=function(e){return(e=new URL(e)).search=\"\",e.hash=\"\",e.href}(t),!0){case!!h:i=await h(t,null==n?void 0:n.expectedState);break;case!!p:i=await p(t,null==n?void 0:n.expectedNonce,null==n?void 0:n.expectedState,null==n?void 0:n.maxAge);break;case!!w:throw new TypeError(\"authorizationCodeGrant() cannot be used by response_type=id_token clients\");default:try{i=Bn(s,c,t.searchParams,null==n?void 0:n.expectedState)}catch(e){rr(e)}}}const g=await async function(e,t,n,o,r,i,a){if(Gt(e),Ft(t),!vn.has(o))throw mt('\"callbackParameters\" must be an instance of URLSearchParams obtained from \"validateAuthResponse()\", or \"validateJwtAuthResponse()',\"ERR_INVALID_ARG_VALUE\");Nt(r,'\"redirectUri\"');const s=Fn(o,\"code\");if(!s)throw Ot('no authorization code in \"callbackParameters\"',xn);const c=new URLSearchParams(null==a?void 0:a.additionalParameters);return c.set(\"redirect_uri\",r),c.set(\"code\",s),i!==bn&&(Nt(i,'\"codeVerifier\"'),c.set(\"code_verifier\",i)),hn(e,t,n,\"authorization_code\",c,a)}(s,c,u,i,a,(null==n?void 0:n.pkceCodeVerifier)||bn,{additionalParameters:o,[vt]:l,[yt]:!d,DPoP:null==r?void 0:r.DPoP,headers:new Headers(Vo),signal:br(m)}).catch(rr);\"string\"!=typeof(null==n?void 0:n.expectedNonce)&&\"number\"!=typeof(null==n?void 0:n.maxAge)||(n.idTokenExpected=!0);const v=An(s,c,g,{expectedNonce:null==n?void 0:n.expectedNonce,maxAge:null==n?void 0:n.maxAge,requireIdToken:null==n?void 0:n.idTokenExpected,[_t]:y});let b;try{b=await v}catch(t){if(_r(t,r))return fr(e,void 0,n,o,ut(ut({},r),{},{flag:kr,authResponse:i,redirectUri:a}));rr(t)}return b.id_token&&await(null==f?void 0:f(g)),cr(b),b}async function mr(e,t,n,o){vr(e),n=new URLSearchParams(n);const{as:r,c:i,auth:a,fetch:s,tlsOnly:c,nonRepudiation:u,timeout:l,decrypt:d}=Fo(e),h=await async function(e,t,n,o,r){Gt(e),Ft(t),Nt(o,'\"refreshToken\"');const i=new URLSearchParams(null==r?void 0:r.additionalParameters);return i.set(\"refresh_token\",o),hn(e,t,n,\"refresh_token\",i,r)}(r,i,a,t,{[vt]:s,[yt]:!c,additionalParameters:n,DPoP:null==o?void 0:o.DPoP,headers:new Headers(Vo),signal:br(l)}).catch(rr),p=async function(e,t,n,o){return yn(e,t,n,void 0,null==o?void 0:o[_t],null==o?void 0:o.recognizedTokenTypes)}(r,i,h,{[_t]:d});let f;try{f=await p}catch(r){if(_r(r,o))return mr(e,t,n,ut(ut({},o),{},{flag:kr}));rr(r)}return f.id_token&&await(null==u?void 0:u(h)),cr(f),f}async function yr(e,t,n){vr(e),t=new URLSearchParams(t);const{as:o,c:r,auth:i,fetch:a,tlsOnly:s,timeout:c}=Fo(e),u=await async function(e,t,n,o,r){return Gt(e),Ft(t),hn(e,t,n,\"client_credentials\",new URLSearchParams(o),r)}(o,r,i,t,{[vt]:a,[yt]:!s,DPoP:null==n?void 0:n.DPoP,headers:new Headers(Vo),signal:br(c)}).catch(rr),l=async function(e,t,n,o){return yn(e,t,n,void 0,null==o?void 0:o[_t],null==o?void 0:o.recognizedTokenTypes)}(o,r,u);let d;try{d=await l}catch(o){if(_r(o,n))return yr(e,t,ut(ut({},n),{},{flag:kr}));rr(o)}return cr(d),d}function wr(e,t){vr(e);const{as:n,c:o,tlsOnly:r,hybrid:i,jarm:a,implicit:s}=Fo(e),c=Qt(n,\"authorization_endpoint\",!1,r);if((t=new URLSearchParams(t)).has(\"client_id\")||t.set(\"client_id\",o.client_id),!t.has(\"request_uri\")&&!t.has(\"request\")){if(t.has(\"response_type\")||t.set(\"response_type\",i?\"code id_token\":s?\"id_token\":\"code\"),s&&!t.has(\"nonce\"))throw $o(\"response_type=id_token clients must provide a nonce parameter in their authorization request parameters\",Yo);a&&t.set(\"response_mode\",\"jwt\")}for(const[e,n]of t.entries())c.searchParams.append(e,n);return c}async function gr(e,t,n){vr(e);const o=wr(e,t),{as:r,c:i,auth:a,fetch:s,tlsOnly:c,timeout:u}=Fo(e),l=await async function(e,t,n,o,r){var i;Gt(e),Ft(t);const a=Qt(e,\"pushed_authorization_request_endpoint\",t.use_mtls_endpoint_aliases,!0!==(null==r?void 0:r[yt])),s=new URLSearchParams(o);s.set(\"client_id\",t.client_id);const c=jt(null==r?void 0:r.headers);c.set(\"accept\",\"application/json\"),void 0!==(null==r?void 0:r.DPoP)&&(un(r.DPoP),await r.DPoP.addProof(a,c,\"POST\"));const u=await dn(e,t,n,a,s,c,r);return null==r||null===(i=r.DPoP)||void 0===i||i.cacheNonce(u,a),u}(r,i,a,o.searchParams,{[vt]:s,[yt]:!c,DPoP:null==n?void 0:n.DPoP,headers:new Headers(Vo),signal:br(u)}).catch(rr),d=async function(e,t,n){if(Gt(e),Ft(t),!ft(n,Response))throw mt('\"response\" must be an instance of Response',\"ERR_INVALID_ARG_TYPE\");await cn(n,201,\"Pushed Authorization Request Endpoint\"),zn(n);const o=await Xn(n);Nt(o.request_uri,'\"response\" body \"request_uri\" property',xn,{body:o});let r=\"number\"!=typeof o.expires_in?parseFloat(o.expires_in):o.expires_in;return Ut(r,!0,'\"response\" body \"expires_in\" property',xn,{body:o}),o.expires_in=r,o}(r,i,l);let h;try{h=await d}catch(o){if(_r(o,n))return gr(e,t,ut(ut({},n),{},{flag:kr}));rr(o)}return wr(e,{request_uri:h.request_uri})}function vr(e){if(!(e instanceof sr))throw $o('\"config\" must be an instance of Configuration',Qo);if(Object.getPrototypeOf(e)!==sr.prototype)throw $o(\"subclassing Configuration is not allowed\",Yo)}function br(e){return e?AbortSignal.timeout(1e3*e):void 0}function _r(e,t){return!(null==t||!t.DPoP||t.flag===kr)&&function(e){if(e instanceof tn){const{0:t,length:n}=e.cause;return 1===n&&\"dpop\"===t.scheme&&\"use_dpop_nonce\"===t.parameters.error}return e instanceof $t&&\"use_dpop_nonce\"===e.error}(e)}Object.freeze(sr.prototype);const kr=Symbol();async function Sr(e,t,n,o){vr(e);const{as:r,c:i,auth:a,fetch:s,tlsOnly:c,timeout:u,decrypt:l}=Fo(e),d=await async function(e,t,n,o,r,i){return Gt(e),Ft(t),Nt(o,'\"grantType\"'),hn(e,t,n,o,new URLSearchParams(r),i)}(r,i,a,t,new URLSearchParams(n),{[vt]:s,[yt]:!c,DPoP:null==o?void 0:o.DPoP,headers:new Headers(Vo),signal:br(u)}).then((e=>{let n;return\"urn:ietf:params:oauth:grant-type:token-exchange\"===t&&(n={n_a:()=>{}}),async function(e,t,n,o){return yn(e,t,n,void 0,null==o?void 0:o[_t],null==o?void 0:o.recognizedTokenTypes)}(r,i,e,{[_t]:l,recognizedTokenTypes:n})})).catch(rr);return cr(d),d}async function Er(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 _o(\"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 bo(t,e,n),t}async function Ar(e,t,n,o){const r=await Er(e,t,\"verify\");!function(e,t){if(e.startsWith(\"RS\")||e.startsWith(\"PS\")){const{modulusLength:n}=t.algorithm;if(\"number\"!=typeof n||n<2048)throw new TypeError(\"\".concat(e,\" requires key modulusLength to be 2048 bits or larger\"))}}(e,r);const i=function(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 co(\"alg \".concat(e,\" is not supported either by JOSE or your javascript runtime\"))}}(e,r.algorithm);try{return await crypto.subtle.verify(i,r,n,o)}catch(e){return!1}}async function Tr(e,t,n){if(!To(e))throw new uo(\"Flattened JWS must be an object\");if(void 0===e.protected&&void 0===e.header)throw new uo('Flattened JWS must have either of the \"protected\" or \"header\" members');if(void 0!==e.protected&&\"string\"!=typeof e.protected)throw new uo(\"JWS Protected Header incorrect type\");if(void 0===e.payload)throw new uo(\"JWS Payload missing\");if(\"string\"!=typeof e.signature)throw new uo(\"JWS Signature missing or incorrect type\");if(void 0!==e.header&&!To(e.header))throw new uo(\"JWS Unprotected Header incorrect type\");let o={};if(e.protected)try{const t=oo(e.protected);o=JSON.parse(eo.decode(t))}catch(e){throw new uo(\"JWS Protected Header is invalid\")}if(!function(){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}(o,e.header))throw new uo(\"JWS Protected and JWS Unprotected Header Parameter names must be disjoint\");const r=ut(ut({},o),e.header),i=function(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 co('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)}(uo,new Map([[\"b64\",!0]]),null==n?void 0:n.crit,o,r);let a=!0;if(i.has(\"b64\")&&(a=o.b64,\"boolean\"!=typeof a))throw new uo('The \"b64\" (base64url-encode payload) Header Parameter must be a boolean');const{alg:s}=r;if(\"string\"!=typeof s||!s)throw new uo('JWS \"alg\" (Algorithm) Header Parameter missing or invalid');const c=n&&function(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)}(\"algorithms\",n.algorithms);if(c&&!c.has(s))throw new so('\"alg\" (Algorithm) Header Parameter value not allowed');if(a){if(\"string\"!=typeof e.payload)throw new uo(\"JWS Payload must be a string\")}else if(\"string\"!=typeof e.payload&&!(e.payload instanceof Uint8Array))throw new uo(\"JWS Payload must be a string or an Uint8Array instance\");let u=!1;\"function\"==typeof t&&(t=await t(o,e),u=!0),zo(s,t,\"verify\");const l=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];const o=t.reduce(((e,t)=>{let{length:n}=t;return e+n}),0),r=new Uint8Array(o);let i=0;for(const e of t)r.set(e,i),i+=e.length;return r}(void 0!==e.protected?to(e.protected):new Uint8Array,to(\".\"),\"string\"==typeof e.payload?a?to(e.payload):$n.encode(e.payload):e.payload);let d;try{d=oo(e.signature)}catch(e){throw new uo(\"Failed to base64url decode the signature\")}const h=await No(t,s);if(!await Ar(s,h,d,l))throw new yo;let p;if(a)try{p=oo(e.payload)}catch(e){throw new uo(\"Failed to base64url decode the payload\")}else p=\"string\"==typeof e.payload?$n.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),u?ut(ut({},f),{},{key:h}):f}const Pr=e=>Math.floor(e.getTime()/1e3),Rr=/^(\\+|\\-)? ?(\\d+|\\d+\\.\\d+) ?(seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)(?: (ago|from now))?$/i;function Ir(e){const t=Rr.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}const Or=e=>e.includes(\"/\")?e.toLowerCase():\"application/\".concat(e.toLowerCase()),xr=(e,t)=>\"string\"==typeof e?t.includes(e):!!Array.isArray(e)&&t.some(Set.prototype.has.bind(new Set(e)));async function Cr(e,t,n){var o;const r=await async function(e,t,n){if(e instanceof Uint8Array&&(e=eo.decode(e)),\"string\"!=typeof e)throw new uo(\"Compact JWS must be a string or Uint8Array\");const{0:o,1:r,2:i,length:a}=e.split(\".\");if(3!==a)throw new uo(\"Invalid Compact JWS\");const s=await Tr({payload:r,protected:o,signature:i},t,n),c={payload:s.payload,protectedHeader:s.protectedHeader};return\"function\"==typeof t?ut(ut({},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 lo(\"JWTs MUST NOT use unencoded payload\");const i=function(e,t){let n,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};try{n=JSON.parse(eo.decode(t))}catch(e){}if(!To(n))throw new lo(\"JWT Claims Set must be a top-level JSON object\");const{typ:r}=o;if(r&&(\"string\"!=typeof e.typ||Or(e.typ)!==Or(r)))throw new io('unexpected \"typ\" JWT header value',n,\"typ\",\"check_failed\");const{requiredClaims:i=[],issuer:a,subject:s,audience:c,maxTokenAge:u}=o,l=[...i];void 0!==u&&l.push(\"iat\"),void 0!==c&&l.push(\"aud\"),void 0!==s&&l.push(\"sub\"),void 0!==a&&l.push(\"iss\");for(const e of new Set(l.reverse()))if(!(e in n))throw new io('missing required \"'.concat(e,'\" claim'),n,e,\"missing\");if(a&&!(Array.isArray(a)?a:[a]).includes(n.iss))throw new io('unexpected \"iss\" claim value',n,\"iss\",\"check_failed\");if(s&&n.sub!==s)throw new io('unexpected \"sub\" claim value',n,\"sub\",\"check_failed\");if(c&&!xr(n.aud,\"string\"==typeof c?[c]:c))throw new io('unexpected \"aud\" claim value',n,\"aud\",\"check_failed\");let d;switch(typeof o.clockTolerance){case\"string\":d=Ir(o.clockTolerance);break;case\"number\":d=o.clockTolerance;break;case\"undefined\":d=0;break;default:throw new TypeError(\"Invalid clockTolerance option type\")}const{currentDate:h}=o,p=Pr(h||new Date);if((void 0!==n.iat||u)&&\"number\"!=typeof n.iat)throw new io('\"iat\" claim must be a number',n,\"iat\",\"invalid\");if(void 0!==n.nbf){if(\"number\"!=typeof n.nbf)throw new io('\"nbf\" claim must be a number',n,\"nbf\",\"invalid\");if(n.nbf>p+d)throw new io('\"nbf\" claim timestamp check failed',n,\"nbf\",\"check_failed\")}if(void 0!==n.exp){if(\"number\"!=typeof n.exp)throw new io('\"exp\" claim must be a number',n,\"exp\",\"invalid\");if(n.exp<=p-d)throw new ao('\"exp\" claim timestamp check failed',n,\"exp\",\"check_failed\")}if(u){const e=p-n.iat;if(e-d>(\"number\"==typeof u?u:Ir(u)))throw new ao('\"iat\" claim timestamp check failed (too far in the past)',n,\"iat\",\"check_failed\");if(e<0-d)throw new io('\"iat\" claim timestamp check failed (it should be in the past)',n,\"iat\",\"check_failed\")}return n}(r.protectedHeader,r.payload,n),a={payload:i,protectedHeader:r.protectedHeader};return\"function\"==typeof t?ut(ut({},a),{},{key:r.key}):a}function jr(e){return To(e)}var Dr,Kr,Lr=new WeakMap,Ur=new WeakMap;class Nr{constructor(e){if(it(this,Lr,void 0),it(this,Ur,new WeakMap),!function(e){return e&&\"object\"==typeof e&&Array.isArray(e.keys)&&e.keys.every(jr)}(e))throw new ho(\"JSON Web Key Set malformed\");at(Lr,this,structuredClone(e))}jwks(){return rt(Lr,this)}async getKey(e,t){const{alg:n,kid:o}=ut(ut({},e),null==t?void 0:t.header),r=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 co('Unsupported \"alg\" value for a JSON Web Key Set')}}(n),i=rt(Lr,this).keys.filter((e=>{let t=r===e.kty;if(t&&\"string\"==typeof o&&(t=o===e.kid),!t||\"string\"!=typeof e.alg&&\"AKP\"!==r||(t=n===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(n){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})),{0:a,length:s}=i;if(0===s)throw new po;if(1!==s){const e=new fo,t=rt(Ur,this);throw e[Symbol.asyncIterator]=dt((function*(){for(const e of i)try{yield yield nt(Wr(t,e,n))}catch(e){}})),e}return Wr(rt(Ur,this),a,n)}}async function Wr(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,n){var o;if(!To(e))throw new TypeError(\"JWK must be an object\");let r;switch(null!=t||(t=e.alg),null!=r||(r=null!==(o=null==n?void 0:n.extractable)&&void 0!==o?o:e.ext),e.kty){case\"oct\":if(\"string\"!=typeof e.k||!e.k)throw new TypeError('missing \"k\" (Key Value) Parameter value');return oo(e.k);case\"RSA\":if(\"oth\"in e&&void 0!==e.oth)throw new co('RSA JWK \"oth\" (Other Primes Info) Parameter value is not supported');return Do(ut(ut({},e),{},{alg:t,ext:r}));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 Do(ut(ut({},e),{},{ext:r}));case\"EC\":case\"OKP\":return Do(ut(ut({},e),{},{alg:t,ext:r}));default:throw new co('Unsupported \"kty\" (Key Type) Parameter value')}}(ut(ut({},t),{},{ext:!0}),n);if(e instanceof Uint8Array||\"public\"!==e.type)throw new ho(\"JSON Web Key Set members must be public keys\");o[n]=e}return o[n]}function Hr(e){const t=new Nr(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 zr;if(\"undefined\"==typeof navigator||null===(Dr=navigator.userAgent)||void 0===Dr||null===(Kr=Dr.startsWith)||void 0===Kr||!Kr.call(Dr,\"Mozilla/5.0 \")){const e=\"v6.1.3\";zr=\"\".concat(\"jose\",\"/\").concat(e)}const Jr=Symbol();const Mr=Symbol();var Vr=new WeakMap,Gr=new WeakMap,Fr=new WeakMap,Zr=new WeakMap,qr=new WeakMap,Br=new WeakMap,Xr=new WeakMap,Yr=new WeakMap,Qr=new WeakMap,$r=new WeakMap;class ei{constructor(e,t){if(it(this,Vr,void 0),it(this,Gr,void 0),it(this,Fr,void 0),it(this,Zr,void 0),it(this,qr,void 0),it(this,Br,void 0),it(this,Xr,void 0),it(this,Yr,void 0),it(this,Qr,void 0),it(this,$r,void 0),!(e instanceof URL))throw new TypeError(\"url must be an instance of URL\");var n,o;at(Vr,this,new URL(e.href)),at(Gr,this,\"number\"==typeof(null==t?void 0:t.timeoutDuration)?null==t?void 0:t.timeoutDuration:5e3),at(Fr,this,\"number\"==typeof(null==t?void 0:t.cooldownDuration)?null==t?void 0:t.cooldownDuration:3e4),at(Zr,this,\"number\"==typeof(null==t?void 0:t.cacheMaxAge)?null==t?void 0:t.cacheMaxAge:6e5),at(Xr,this,new Headers(null==t?void 0:t.headers)),zr&&!rt(Xr,this).has(\"User-Agent\")&&rt(Xr,this).set(\"User-Agent\",zr),rt(Xr,this).has(\"accept\")||(rt(Xr,this).set(\"accept\",\"application/json\"),rt(Xr,this).append(\"accept\",\"application/jwk-set+json\")),at(Yr,this,null==t?void 0:t[Jr]),void 0!==(null==t?void 0:t[Mr])&&(at($r,this,null==t?void 0:t[Mr]),n=null==t?void 0:t[Mr],o=rt(Zr,this),\"object\"==typeof n&&null!==n&&\"uat\"in n&&\"number\"==typeof n.uat&&!(Date.now()-n.uat>=o)&&\"jwks\"in n&&To(n.jwks)&&Array.isArray(n.jwks.keys)&&Array.prototype.every.call(n.jwks.keys,To)&&(at(qr,this,rt($r,this).uat),at(Qr,this,Hr(rt($r,this).jwks))))}pendingFetch(){return!!rt(Br,this)}coolingDown(){return\"number\"==typeof rt(qr,this)&&Date.now()<rt(qr,this)+rt(Fr,this)}fresh(){return\"number\"==typeof rt(qr,this)&&Date.now()<rt(qr,this)+rt(Zr,this)}jwks(){var e;return null===(e=rt(Qr,this))||void 0===e?void 0:e.jwks()}async getKey(e,t){rt(Qr,this)&&this.fresh()||await this.reload();try{return await rt(Qr,this).call(this,e,t)}catch(n){if(n instanceof po&&!1===this.coolingDown())return await this.reload(),rt(Qr,this).call(this,e,t);throw n}}async reload(){rt(Br,this)&&(\"undefined\"!=typeof WebSocketPair||\"undefined\"!=typeof navigator&&\"Cloudflare-Workers\"===navigator.userAgent||\"undefined\"!=typeof EdgeRuntime&&\"vercel\"===EdgeRuntime)&&at(Br,this,void 0),rt(Br,this)||at(Br,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 mo;throw e}));if(200!==r.status)throw new ro(\"Expected 200 OK from the JSON Web Key Set HTTP response\");try{return await r.json()}catch(e){throw new ro(\"Failed to parse the JSON Web Key Set HTTP response as JSON\")}}(rt(Vr,this).href,rt(Xr,this),AbortSignal.timeout(rt(Gr,this)),rt(Yr,this)).then((e=>{at(Qr,this,Hr(e)),rt($r,this)&&(rt($r,this).uat=Date.now(),rt($r,this).jwks=e),at(qr,this,Date.now()),at(Br,this,void 0)})).catch((e=>{throw at(Br,this,void 0),e}))),await rt(Br,this)}}const ti=[\"mfaToken\"],ni=[\"mfaToken\"];var oi,ri,ii,ai,si,ci,ui,li,di=class extends Error{constructor(e,t){super(t),st(this,\"code\",void 0),this.name=\"NotSupportedError\",this.code=e}},hi=class extends Error{constructor(e,t,n){super(t),st(this,\"cause\",void 0),st(this,\"code\",void 0),this.code=e,this.cause=n&&{error:n.error,error_description:n.error_description,message:n.message}}},pi=class extends hi{constructor(e,t){super(\"token_by_code_error\",e,t),this.name=\"TokenByCodeError\"}},fi=class extends hi{constructor(e,t){super(\"token_by_client_credentials_error\",e,t),this.name=\"TokenByClientCredentialsError\"}},mi=class extends hi{constructor(e,t){super(\"token_by_refresh_token_error\",e,t),this.name=\"TokenByRefreshTokenError\"}},yi=class extends hi{constructor(e,t){super(\"token_for_connection_error\",e,t),this.name=\"TokenForConnectionErrorCode\"}},wi=class extends hi{constructor(e,t){super(\"token_exchange_error\",e,t),this.name=\"TokenExchangeError\"}},gi=class extends Error{constructor(e){super(e),st(this,\"code\",\"verify_logout_token_error\"),this.name=\"VerifyLogoutTokenError\"}},vi=class extends hi{constructor(e){super(\"backchannel_authentication_error\",\"There was an error when trying to use Client-Initiated Backchannel Authentication.\",e),st(this,\"code\",\"backchannel_authentication_error\"),this.name=\"BackchannelAuthenticationError\"}},bi=class extends hi{constructor(e){super(\"build_authorization_url_error\",\"There was an error when trying to build the authorization URL.\",e),this.name=\"BuildAuthorizationUrlError\"}},_i=class extends hi{constructor(e){super(\"build_link_user_url_error\",\"There was an error when trying to build the Link User URL.\",e),this.name=\"BuildLinkUserUrlError\"}},ki=class extends hi{constructor(e){super(\"build_unlink_user_url_error\",\"There was an error when trying to build the Unlink User URL.\",e),this.name=\"BuildUnlinkUserUrlError\"}},Si=class extends Error{constructor(){super(\"The client secret or client assertion signing key must be provided.\"),st(this,\"code\",\"missing_client_auth_error\"),this.name=\"MissingClientAuthError\"}};function Ei(e){return Object.entries(e).filter((e=>{let[,t]=e;return void 0!==t})).reduce(((e,t)=>ut(ut({},e),{},{[t[0]]:t[1]})),{})}var Ai=class extends Error{constructor(e,t,n){super(t),st(this,\"cause\",void 0),st(this,\"code\",void 0),this.code=e,this.cause=n&&{error:n.error,error_description:n.error_description,message:n.message}}},Ti=class extends Ai{constructor(e,t){super(\"mfa_list_authenticators_error\",e,t),this.name=\"MfaListAuthenticatorsError\"}},Pi=class extends Ai{constructor(e,t){super(\"mfa_enrollment_error\",e,t),this.name=\"MfaEnrollmentError\"}},Ri=class extends Ai{constructor(e,t){super(\"mfa_delete_authenticator_error\",e,t),this.name=\"MfaDeleteAuthenticatorError\"}},Ii=class extends Ai{constructor(e,t){super(\"mfa_challenge_error\",e,t),this.name=\"MfaChallengeError\"}};function Oi(e){return{id:e.id,authenticatorType:e.authenticator_type,active:e.active,name:e.name,oobChannels:e.oob_channels,type:e.type}}var xi=(oi=new WeakMap,ri=new WeakMap,ii=new WeakMap,class{constructor(e){var t;it(this,oi,void 0),it(this,ri,void 0),it(this,ii,void 0),at(oi,this,\"https://\".concat(e.domain)),at(ri,this,e.clientId),at(ii,this,null!==(t=e.customFetch)&&void 0!==t?t:function(){return fetch(...arguments)})}async listAuthenticators(e){const t=\"\".concat(rt(oi,this),\"/mfa/authenticators\"),{mfaToken:n}=e,o=await rt(ii,this).call(this,t,{method:\"GET\",headers:{Authorization:\"Bearer \".concat(n),\"Content-Type\":\"application/json\"}});if(!o.ok){const e=await o.json();throw new Ti(e.error_description||\"Failed to list authenticators\",e)}return(await o.json()).map(Oi)}async enrollAuthenticator(e){const t=\"\".concat(rt(oi,this),\"/mfa/associate\"),{mfaToken:n}=e,o=lt(e,ti),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 rt(ii,this).call(this,t,{method:\"POST\",headers:{Authorization:\"Bearer \".concat(n),\"Content-Type\":\"application/json\"},body:JSON.stringify(r)});if(!i.ok){const e=await i.json();throw new Pi(e.error_description||\"Failed to enroll authenticator\",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};throw new Error(\"Unexpected authenticator type: \".concat(e.authenticator_type))}(await i.json())}async deleteAuthenticator(e){const{authenticatorId:t,mfaToken:n}=e,o=\"\".concat(rt(oi,this),\"/mfa/authenticators/\").concat(encodeURIComponent(t)),r=await rt(ii,this).call(this,o,{method:\"DELETE\",headers:{Authorization:\"Bearer \".concat(n),\"Content-Type\":\"application/json\"}});if(!r.ok){const e=await r.json();throw new Ri(e.error_description||\"Failed to delete authenticator\",e)}}async challengeAuthenticator(e){const t=\"\".concat(rt(oi,this),\"/mfa/challenge\"),{mfaToken:n}=e,o=lt(e,ni),r={mfa_token:n,client_id:rt(ri,this),challenge_type:o.challengeType};o.authenticatorId&&(r.authenticator_id=o.authenticatorId);const i=await rt(ii,this).call(this,t,{method:\"POST\",headers:{\"Content-Type\":\"application/json\"},body:JSON.stringify(r)});if(!i.ok){const e=await i.json();throw new Ii(e.error_description||\"Failed to challenge authenticator\",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 i.json())}}),Ci=class e{constructor(e,t,n,o,r,i,a){st(this,\"accessToken\",void 0),st(this,\"idToken\",void 0),st(this,\"refreshToken\",void 0),st(this,\"expiresAt\",void 0),st(this,\"scope\",void 0),st(this,\"claims\",void 0),st(this,\"authorizationDetails\",void 0),st(this,\"tokenType\",void 0),st(this,\"issuedTokenType\",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}},ji=\"openid profile email offline_access\",Di=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 Ki(e){if(null==e)throw new wi(\"subject_token is required\");if(\"string\"!=typeof e)throw new wi(\"subject_token must be a string\");if(0===e.trim().length)throw new wi(\"subject_token cannot be blank or whitespace\");if(e!==e.trim())throw new wi(\"subject_token must not include leading or trailing whitespace\");if(/^bearer\\s+/i.test(e))throw new wi(\"subject_token must not include the 'Bearer ' prefix\")}function Li(e,t){if(t)for(const[n,o]of Object.entries(t))if(!Di.has(n))if(Array.isArray(o)){if(o.length>20)throw new wi(\"Parameter '\".concat(n,\"' exceeds maximum array size of \").concat(20));o.forEach((t=>{e.append(n,t)}))}else e.append(n,o)}var Ui=(ai=new WeakMap,si=new WeakMap,ci=new WeakMap,ui=new WeakMap,li=new WeakSet,class{constructor(e){if(function(e,t){ot(e,t),t.add(e)}(this,li),it(this,ai,void 0),it(this,si,void 0),it(this,ci,void 0),it(this,ui,void 0),st(this,\"mfa\",void 0),at(ci,this,e),e.useMtls&&!e.customFetch)throw new di(\"mtls_without_custom_fetch_not_supported\",\"Using mTLS without a custom fetch implementation is not supported\");this.mfa=new xi({domain:rt(ci,this).domain,clientId:rt(ci,this).clientId,customFetch:rt(ci,this).customFetch})}async buildAuthorizationUrl(e){const{serverMetadata:t}=await tt(li,this,Ni).call(this);if(null!=e&&e.pushedAuthorizationRequests&&!t.pushed_authorization_request_endpoint)throw new di(\"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 tt(li,this,Ji).call(this,e)}catch(e){throw new bi(e)}}async buildLinkUserUrl(e){try{const t=await tt(li,this,Ji).call(this,{authorizationParams:ut(ut({},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 _i(e)}}async buildUnlinkUserUrl(e){try{const t=await tt(li,this,Ji).call(this,{authorizationParams:ut(ut({},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 ki(e)}}async backchannelAuthentication(e){const{configuration:t,serverMetadata:n}=await tt(li,this,Ni).call(this),o=Ei(ut(ut({},rt(ci,this).authorizationParams),null==e?void 0:e.authorizationParams)),r=new URLSearchParams(ut(ut({scope:ji},o),{},{client_id:rt(ci,this).clientId,binding_message:e.bindingMessage,login_hint:JSON.stringify({format:\"iss_sub\",iss:n.issuer,sub:e.loginHint.sub})}));e.requestedExpiry&&r.append(\"requested_expiry\",e.requestedExpiry.toString()),e.authorizationDetails&&r.append(\"authorization_details\",JSON.stringify(e.authorizationDetails));try{const e=await dr(t,r),n=await hr(t,e);return Ci.fromTokenEndpointResponse(n)}catch(e){throw new vi(e)}}async initiateBackchannelAuthentication(e){const{configuration:t,serverMetadata:n}=await tt(li,this,Ni).call(this),o=Ei(ut(ut({},rt(ci,this).authorizationParams),null==e?void 0:e.authorizationParams)),r=new URLSearchParams(ut(ut({scope:ji},o),{},{client_id:rt(ci,this).clientId,binding_message:e.bindingMessage,login_hint:JSON.stringify({format:\"iss_sub\",iss:n.issuer,sub:e.loginHint.sub})}));e.requestedExpiry&&r.append(\"requested_expiry\",e.requestedExpiry.toString()),e.authorizationDetails&&r.append(\"authorization_details\",JSON.stringify(e.authorizationDetails));try{const e=await dr(t,r);return{authReqId:e.auth_req_id,expiresIn:e.expires_in,interval:e.interval}}catch(e){throw new vi(e)}}async backchannelAuthenticationGrant(e){let{authReqId:t}=e;const{configuration:n}=await tt(li,this,Ni).call(this),o=new URLSearchParams({auth_req_id:t});try{const e=await Sr(n,\"urn:openid:params:grant-type:ciba\",o);return Ci.fromTokenEndpointResponse(e)}catch(e){throw new vi(e)}}async getTokenForConnection(e){var t;if(e.refreshToken&&e.accessToken)throw new yi(\"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 yi(\"Either a refresh or access token must be specified.\");try{return await this.exchangeToken({connection:e.connection,subjectToken:n,subjectTokenType:e.accessToken?\"urn:ietf:params:oauth:token-type:access_token\":\"urn:ietf:params:oauth:token-type:refresh_token\",loginHint:e.loginHint})}catch(e){if(e instanceof wi)throw new yi(e.message,e.cause);throw e}}async exchangeToken(e){return\"connection\"in e?tt(li,this,Wi).call(this,e):tt(li,this,Hi).call(this,e)}async getTokenByCode(e,t){const{configuration:n}=await tt(li,this,Ni).call(this);try{const o=await fr(n,e,{pkceCodeVerifier:t.codeVerifier});return Ci.fromTokenEndpointResponse(o)}catch(e){throw new pi(\"There was an error while trying to request a token.\",e)}}async getTokenByRefreshToken(e){const{configuration:t}=await tt(li,this,Ni).call(this);try{const n=await mr(t,e.refreshToken);return Ci.fromTokenEndpointResponse(n)}catch(e){throw new mi(\"The access token has expired and there was an error while trying to refresh it.\",e)}}async getTokenByClientCredentials(e){const{configuration:t}=await tt(li,this,Ni).call(this);try{const n=new URLSearchParams({audience:e.audience});e.organization&&n.append(\"organization\",e.organization);const o=await yr(t,n);return Ci.fromTokenEndpointResponse(o)}catch(e){throw new fi(\"There was an error while trying to request a token.\",e)}}async buildLogoutUrl(e){const{configuration:t,serverMetadata:n}=await tt(li,this,Ni).call(this);if(!n.end_session_endpoint){const t=new URL(\"https://\".concat(rt(ci,this).domain,\"/v2/logout\"));return t.searchParams.set(\"returnTo\",e.returnTo),t.searchParams.set(\"client_id\",rt(ci,this).clientId),t}return function(e,t){vr(e);const{as:n,c:o,tlsOnly:r}=Fo(e),i=Qt(n,\"end_session_endpoint\",!1,r);(t=new URLSearchParams(t)).has(\"client_id\")||t.set(\"client_id\",o.client_id);for(const[e,n]of t.entries())i.searchParams.append(e,n);return i}(t,{post_logout_redirect_uri:e.returnTo})}async verifyLogoutToken(e){const{serverMetadata:t}=await tt(li,this,Ni).call(this);rt(ui,this)||at(ui,this,function(e,t){const n=new ei(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(t.jwks_uri),{[Jr]:rt(ci,this).customFetch}));const{payload:n}=await Cr(e.logoutToken,rt(ui,this),{issuer:t.issuer,audience:rt(ci,this).clientId,algorithms:[\"RS256\"],requiredClaims:[\"iat\"]});if(!(\"sid\"in n)&&!(\"sub\"in n))throw new gi('either \"sid\" or \"sub\" (or both) claims must be present');if(\"sid\"in n&&\"string\"!=typeof n.sid)throw new gi('\"sid\" claim must be a string');if(\"sub\"in n&&\"string\"!=typeof n.sub)throw new gi('\"sub\" claim must be a string');if(\"nonce\"in n)throw new gi('\"nonce\" claim is prohibited');if(!(\"events\"in n))throw new gi('\"events\" claim is missing');if(\"object\"!=typeof n.events||null===n.events)throw new gi('\"events\" claim must be an object');if(!(\"http://schemas.openid.net/event/backchannel-logout\"in n.events))throw new gi('\"http://schemas.openid.net/event/backchannel-logout\" member is missing in the \"events\" claim');if(\"object\"!=typeof n.events[\"http://schemas.openid.net/event/backchannel-logout\"])throw new gi('\"http://schemas.openid.net/event/backchannel-logout\" member in the \"events\" claim must be an object');return{sid:n.sid,sub:n.sub}}});async function Ni(){if(rt(ai,this)&&rt(si,this))return{configuration:rt(ai,this),serverMetadata:rt(si,this)};const e=await tt(li,this,zi).call(this);return at(ai,this,await ir(new URL(\"https://\".concat(rt(ci,this).domain)),rt(ci,this).clientId,{use_mtls_endpoint_aliases:rt(ci,this).useMtls},e,{[Xo]:rt(ci,this).customFetch})),at(si,this,rt(ai,this).serverMetadata()),rt(ai,this)[Xo]=rt(ci,this).customFetch||fetch,{configuration:rt(ai,this),serverMetadata:rt(si,this)}}async function Wi(e){var t,n;const{configuration:o}=await tt(li,this,Ni).call(this);if(\"audience\"in e||\"resource\"in e)throw new wi(\"audience and resource parameters are not supported for Token Vault exchanges\");Ki(e.subjectToken);const r=new URLSearchParams({connection:e.connection,subject_token:e.subjectToken,subject_token_type:null!==(t=e.subjectTokenType)&&void 0!==t?t:\"urn:ietf:params:oauth:token-type:access_token\",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),Li(r,e.extra);try{const e=await Sr(o,\"urn:auth0:params:oauth:grant-type:token-exchange:federated-connection-access-token\",r);return Ci.fromTokenEndpointResponse(e)}catch(t){throw new wi(\"Failed to exchange token for connection '\".concat(e.connection,\"'.\"),t)}}async function Hi(e){const{configuration:t}=await tt(li,this,Ni).call(this);Ki(e.subjectToken);const n=new URLSearchParams({subject_token_type:e.subjectTokenType,subject_token:e.subjectToken});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),Li(n,e.extra);try{const e=await Sr(t,\"urn:ietf:params:oauth:grant-type:token-exchange\",n);return Ci.fromTokenEndpointResponse(e)}catch(t){throw new wi(\"Failed to exchange token of type '\".concat(e.subjectTokenType,\"'\").concat(e.audience?\" for audience '\".concat(e.audience,\"'\"):\"\",\".\"),t)}}async function zi(){if(!rt(ci,this).clientSecret&&!rt(ci,this).clientAssertionSigningKey&&!rt(ci,this).useMtls)throw new Si;if(rt(ci,this).useMtls)return(e,t,n,o)=>{n.set(\"client_id\",t.client_id)};let e=rt(ci,this).clientAssertionSigningKey;return!e||e instanceof CryptoKey||(e=await async function(e,t,n){if(\"string\"!=typeof e||0!==e.indexOf(\"-----BEGIN PRIVATE KEY-----\"))throw new TypeError('\"pkcs8\" must be PKCS#8 formatted string');return jo(e,t,n)}(e,rt(ci,this).clientAssertionSigningAlg||\"RS256\")),e?function(e,t){return qt(e,t)}(e):Bo(rt(ci,this).clientSecret)}async function Ji(e){const{configuration:t}=await tt(li,this,Ni).call(this),n=tr(),o=await er(n),r=Ei(ut(ut({},rt(ci,this).authorizationParams),null==e?void 0:e.authorizationParams)),i=new URLSearchParams(ut(ut({scope:ji},r),{},{client_id:rt(ci,this).clientId,code_challenge:o,code_challenge_method:\"S256\"}));return{authorizationUrl:null!=e&&e.pushedAuthorizationRequests?await gr(t,i):await wr(t,i),codeVerifier:n}}const Mi=new p;class Vi{constructor(e){let t,n;if(this.userCache=(new pe).enclosedCache,this.activeLockKeys=new Set,this.defaultOptions={authorizationParams:{scope:\"openid profile email\"},useRefreshTokensFallback:!1,useFormData:!0},this._releaseLockOnPageHide=async()=>{const e=Array.from(this.activeLockKeys);for(const t of e)await Mi.releaseLock(t);this.activeLockKeys.clear(),window.removeEventListener(\"pagehide\",this._releaseLockOnPageHide)},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(!I())throw new Error(\"For security reasons, `window.crypto` is required to run `auth0-spa-js`.\");if(void 0===I().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 \")})(),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||\"memory\",!Je(t))throw new Error('Invalid cache location \"'.concat(t,'\"'));n=Je(t)()}var o;this.httpTimeoutMs=e.httpTimeoutInSeconds?1e3*e.httpTimeoutInSeconds:1e4,this.cookieStorage=!1===e.legacySameSiteCookie?Pe:Re,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:Ie;var i;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{default:ue(t,e,...o)};let i={default:ue(t,...o)};return Object.keys(e).forEach((n=>{const r=e[n];i[n]=ue(t,r,...o)})),i}(this.options.authorizationParams.scope,\"openid\",this.options.useRefreshTokens?\"offline_access\":\"\"),this.transactionManager=new me(r,this.options.clientId,this.options.cookieDomain),this.nowProvider=this.options.nowProvider||y,this.cacheManager=new fe(n,n.allKeys?void 0:new He(n,this.options.clientId),this.nowProvider),this.dpop=this.options.useDpop?new Ze(this.options.clientId):void 0,this.domainUrl=(i=this.options.domain,/^https?:\\/\\//.test(i)?i:\"https://\".concat(i)),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/\"),s=this.createFetcher(Object.assign(Object.assign({},this.options.useDpop&&{dpopNonceId:\"__auth0_my_account_api__\"}),{getAccessToken:()=>this.getTokenSilently({authorizationParams:{scope:\"create:me:connected_accounts\",audience:a},detailedResponse:!0})}));this.myAccountApi=new Qe(s,a),this.authJsClient=new Ui({domain:this.options.domain,clientId:this.options.clientId}),\"undefined\"!=typeof window&&window.Worker&&this.options.useRefreshTokens&&\"memory\"===t&&(this.options.workerUrl?this.worker=new Worker(this.options.workerUrl):this.worker=new Ue)}getConfiguration(){return Object.freeze({domain:this.options.domain,clientId:this.options.clientId})}_url(e){const t=encodeURIComponent(btoa(JSON.stringify(this.options.auth0Client||m)));return\"\".concat(this.domainUrl).concat(e,\"&auth0Client=\").concat(t)}_authorizeUrl(e){return this._url(\"/authorize?\".concat(D(e)))}async _verifyIdToken(e,t,n){const o=await this.nowProvider();return ge({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})}async _prepareAuthorizeUrl(e,t,n){var o;const r=x(O()),i=x(O()),a=O(),s=await K(a),c=U(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:le(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),d=this._authorizeUrl(l);return{nonce:i,code_verifier:a,scope:l.scope,audience:l.audience||\"default\",redirect_uri:l.redirect_uri,state:r,url:d}}async loginWithPopup(e,t){var n;if(e=e||{},!(t=t||{}).popup&&(t.popup=(e=>{const t=window.screenX+(window.innerWidth-400)/2,n=window.screenY+(window.innerHeight-600)/2;return window.open(e,\"auth0:authorize:popup\",\"left=\".concat(t,\",top=\").concat(n,\",width=\").concat(400,\",height=\").concat(600,\",resizable,scrollbars=yes,status=1\"))})(\"\"),!t.popup))throw new S;const o=await this._prepareAuthorizeUrl(e.authorizationParams||{},{response_mode:\"web_message\"},window.location.origin);t.popup.location.href=o.url;const r=await(e=>new Promise(((t,n)=>{let o;const r=setInterval((()=>{e.popup&&e.popup.closed&&(clearInterval(r),clearTimeout(i),window.removeEventListener(\"message\",o,!1),n(new k(e.popup)))}),1e3),i=setTimeout((()=>{clearInterval(r),n(new _(e.popup)),window.removeEventListener(\"message\",o,!1)}),1e3*(e.timeoutInSeconds||60));o=function(a){if(a.data&&\"authorization_response\"===a.data.type){if(clearTimeout(i),clearInterval(r),window.removeEventListener(\"message\",o,!1),!1!==e.closePopup&&e.popup.close(),a.data.response.error)return n(w.fromPayload(a.data.response));t(a.data.response)}},window.addEventListener(\"message\",o)})))(Object.assign(Object.assign({},t),{timeoutInSeconds:t.timeoutInSeconds||this.options.authorizeTimeoutInSeconds||60}));if(o.state!==r.state)throw new w(\"state_mismatch\",\"Invalid state\");const i=(null===(n=e.authorizationParams)||void 0===n?void 0:n.organization)||this.options.authorizationParams.organization;await this._requestToken({audience:o.audience,scope:o.scope,code_verifier:o.code_verifier,grant_type:\"authorization_code\",code:r.code,redirect_uri:o.redirect_uri},{nonceIn:o.nonce,organization:i})}async getUser(){var e;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;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=Me(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}),{openUrl:o,fragment:r,appState:i}=n,a=e(n,[\"openUrl\",\"fragment\",\"appState\"]),s=(null===(t=a.authorizationParams)||void 0===t?void 0:t.organization)||this.options.authorizationParams.organization,c=await this._prepareAuthorizeUrl(a.authorizationParams||{}),{url:u}=c,l=e(c,[\"url\"]);this.transactionManager.create(Object.assign(Object.assign(Object.assign({},l),{appState:i,response_type:Oe.Code}),s&&{organization:s}));const d=r?\"\".concat(u,\"#\").concat(r):u;o?await o(d):window.location.assign(d)}async handleRedirectCallback(){const e=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.location.href).split(\"?\").slice(1);if(0===e.length)throw new Error(\"There are no query params available for parsing.\");const t=this.transactionManager.get();if(!t)throw new w(\"missing_transaction\",\"Invalid state\");this.transactionManager.remove();const n=(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}})(e.join(\"\"));return t.response_type===Oe.ConnectCode?this._handleConnectAccountRedirectCallback(n,t):this._handleLoginRedirectCallback(n,t)}async _handleLoginRedirectCallback(e,t){const{code:n,state:o,error:r,error_description:i}=e;if(r)throw new g(r,i||r,o,t.appState);if(!t.code_verifier||t.state&&t.state!==o)throw new w(\"state_mismatch\",\"Invalid state\");const a=t.organization,s=t.nonce,c=t.redirect_uri;return await this._requestToken(Object.assign({audience:t.audience,scope:t.scope,code_verifier:t.code_verifier,grant_type:\"authorization_code\",code:n},c?{redirect_uri:c}:{}),{nonceIn:s,organization:a}),{appState:t.appState,response_type:Oe.Code}}async _handleConnectAccountRedirectCallback(e,t){const{connect_code:n,state:o,error:r,error_description:i}=e;if(r)throw new v(r,i||r,t.connection,o,t.appState);if(!n)throw new w(\"missing_connect_code\",\"Missing connect code\");if(!(t.code_verifier&&t.state&&t.auth_session&&t.redirect_uri&&t.state===o))throw new w(\"state_mismatch\",\"Invalid state\");const a=await this.myAccountApi.completeAccount({auth_session:t.auth_session,connect_code:n,redirect_uri:t.redirect_uri,code_verifier:t.code_verifier});return Object.assign(Object.assign({},a),{appState:t.appState,response_type:Oe.ConnectCode})}async checkSession(e){if(!this.cookieStorage.get(this.isAuthenticatedCookieName)){if(!this.cookieStorage.get(\"auth0.is.authenticated\"))return;this.cookieStorage.save(this.isAuthenticatedCookieName,!0,{daysUntilExpire:this.sessionCheckExpiryDays,cookieDomain:this.options.cookieDomain}),this.cookieStorage.remove(\"auth0.is.authenticated\")}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:le(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((e,t)=>{let n=Ne[t];return n||(n=e().finally((()=>{delete Ne[t],n=null})),Ne[t]=n),n})((()=>this._getTokenSilently(o)),\"\".concat(this.options.clientId,\"::\").concat(o.authorizationParams.audience,\"::\").concat(o.authorizationParams.scope));return e.detailedResponse?r:null==r?void 0:r.access_token}async _getTokenSilently(t){const{cacheMode:n}=t,o=e(t,[\"cacheMode\"]);if(\"off\"!==n){const e=await this._getEntryFromCache({scope:o.authorizationParams.scope,audience:o.authorizationParams.audience||\"default\",clientId:this.options.clientId,cacheMode:n});if(e)return e}if(\"cache-only\"===n)return;const r=(i=this.options.clientId,a=o.authorizationParams.audience||\"default\",\"\".concat(\"auth0.lock.getTokenSilently\",\".\").concat(i,\".\").concat(a));var i,a;if(!await We((()=>Mi.acquireLock(r,5e3)),10))throw new b;this.activeLockKeys.add(r),1===this.activeLockKeys.size&&window.addEventListener(\"pagehide\",this._releaseLockOnPageHide);try{if(\"off\"!==n){const e=await this._getEntryFromCache({scope:o.authorizationParams.scope,audience:o.authorizationParams.audience||\"default\",clientId:this.options.clientId});if(e)return e}const e=this.options.useRefreshTokens?await this._getTokenUsingRefreshToken(o):await this._getTokenFromIFrame(o),{id_token:t,token_type:i,access_token:a,oauthTokenScope:s,expires_in:c}=e;return Object.assign(Object.assign({id_token:t,token_type:i,access_token:a},s?{scope:s}:null),{expires_in:c})}finally{await Mi.releaseLock(r),this.activeLockKeys.delete(r),0===this.activeLockKeys.size&&window.removeEventListener(\"pagehide\",this._releaseLockOnPageHide)}}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:le(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)})});t=Object.assign(Object.assign({},f),t),await this.loginWithPopup(r,t);return(await this.cacheManager.get(new de({scope:r.authorizationParams.scope,audience:r.authorizationParams.audience||\"default\",clientId:this.options.clientId}),void 0,this.options.useMrrt)).access_token}async isAuthenticated(){return!!await this.getUser()}_buildLogoutUrl(t){null!==t.clientId?t.clientId=t.clientId||this.options.clientId:delete t.clientId;const n=t.logoutParams||{},{federated:o}=n,r=e(n,[\"federated\"]),i=o?\"&federated\":\"\";return this._url(\"/v2/logout?\".concat(D(Object.assign({clientId:t.clientId},r))))+i}async logout(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};var n;const o=Me(t),{openUrl:r}=o,i=e(o,[\"openUrl\"]);null===t.clientId?await this.cacheManager.clear():await this.cacheManager.clear(t.clientId||this.options.clientId),this.cookieStorage.remove(this.orgHintCookieName,{cookieDomain:this.options.cookieDomain}),this.cookieStorage.remove(this.isAuthenticatedCookieName,{cookieDomain:this.options.cookieDomain}),this.userCache.remove(\"@@user@@\"),await(null===(n=this.dpop)||void 0===n?void 0:n.clear());const a=this._buildLogoutUrl(i);r?await r(a):!1!==r&&window.location.assign(a)}async _getTokenFromIFrame(e){const t=(n=this.options.clientId,\"\".concat(\"auth0.lock.getTokenFromIFrame\",\".\").concat(n));var n;if(!await We((()=>Mi.acquireLock(t,5e3)),10))throw new b;try{const n=Object.assign(Object.assign({},e.authorizationParams),{prompt:\"none\"}),o=this.cookieStorage.get(this.orgHintCookieName);o&&!n.organization&&(n.organization=o);const{url:r,state:i,nonce:a,code_verifier:s,redirect_uri:c,scope:u,audience:l}=await this._prepareAuthorizeUrl(n,{response_mode:\"web_message\"},window.location.origin);if(window.crossOriginIsolated)throw new w(\"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 a=()=>{window.document.body.contains(i)&&(window.document.body.removeChild(i),window.removeEventListener(\"message\",s,!1))};let s;const c=setTimeout((()=>{r(new b),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(w.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,h,d);if(i!==p.state)throw new w(\"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:n.organization});return Object.assign(Object.assign({},f),{scope:u,oauthTokenScope:f.scope,audience:l})}catch(e){throw\"login_required\"===e.error&&this.logout({openUrl:!1}),e}finally{await Mi.releaseLock(t)}}async _getTokenUsingRefreshToken(e){const t=await this.cacheManager.get(new de({scope:e.authorizationParams.scope,audience:e.authorizationParams.audience||\"default\",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 A(e.authorizationParams.audience||\"default\",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(u.refresh_token&&(null==t?void 0:t.refresh_token)&&await this.cacheManager.updateEntry(t.refresh_token,u.refresh_token),this.options.useMrrt){if(i=null==t?void 0:t.audience,a=null==t?void 0:t.scope,s=e.authorizationParams.audience,c=e.authorizationParams.scope,i!==s||!Ve(c,a)){if(!Ve(r,u.scope)){if(this.options.useRefreshTokensFallback)return await this._getTokenFromIFrame(e);await this.cacheManager.remove(this.options.clientId,e.authorizationParams.audience,e.authorizationParams.scope);const t=((e,t)=>{const n=(null==e?void 0:e.split(\" \"))||[],o=(null==t?void 0:t.split(\" \"))||[];return n.filter((e=>-1==o.indexOf(e))).join(\",\")})(r,u.scope);throw new T(e.authorizationParams.audience||\"default\",t)}}}return Object.assign(Object.assign({},u),{scope:e.authorizationParams.scope,oauthTokenScope:u.scope,audience:e.authorizationParams.audience||\"default\"})}catch(t){if((t.message.indexOf(\"Missing Refresh Token\")>-1||t.message&&t.message.indexOf(\"invalid refresh token\")>-1)&&this.options.useRefreshTokensFallback)return await this._getTokenFromIFrame(e);throw t}var i,a,s,c}async _saveEntryInCache(t){const{id_token:n,decodedToken:o}=t,r=e(t,[\"id_token\",\"decodedToken\"]);this.userCache.set(\"@@user@@\",{id_token:n,decodedToken:o}),await this.cacheManager.setIdToken(this.options.clientId,t.id_token,t.decodedToken),await this.cacheManager.set(r)}async _getIdTokenFromCache(){const e=this.options.authorizationParams.audience||\"default\",t=this.scope[e],n=await this.cacheManager.getIdToken(new de({clientId:this.options.clientId,audience:e,scope:t})),o=this.userCache.get(\"@@user@@\");return n&&n.id_token===(null==o?void 0:o.id_token)?o:(this.userCache.set(\"@@user@@\",n),n)}async _getEntryFromCache(e){let{scope:t,audience:n,clientId:o,cacheMode:r}=e;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{token_type:e,access_token:t,oauthTokenScope:n,expires_in:o}=i,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})}}async _requestToken(e,t){var n,o;const{nonceIn:r,organization:i,scopesToRequest:a}=t||{},s=await se(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},e),{scope:a||e.scope}),this.worker),c=await this._verifyIdToken(s.id_token,r,i);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(\"@@user@@\"))}return await this._saveEntryInCache(Object.assign(Object.assign(Object.assign(Object.assign({},s),{decodedToken:c,scope:e.scope,audience:e.audience||\"default\"}),s.scope?{oauthTokenScope:s.scope}:null),{client_id:this.options.clientId})),this.cookieStorage.save(this.isAuthenticatedCookieName,!0,{daysUntilExpire:this.sessionCheckExpiryDays,cookieDomain:this.options.cookieDomain}),this._processOrgHint(i||c.claims.org_id),Object.assign(Object.assign({},s),{decodedToken:c})}async exchangeToken(e){return this._requestToken({grant_type:\"urn:ietf:params:oauth:grant-type:token-exchange\",subject_token:e.subject_token,subject_token_type:e.subject_token_type,scope:le(this.scope,e.scope,e.audience||this.options.authorizationParams.audience),audience:e.audience||this.options.authorizationParams.audience,organization:e.organization||this.options.authorizationParams.organization})}_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 Ye(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(e){const{openUrl:t,appState:n,connection:o,scopes:r,authorization_params:i,redirectUri:a=this.options.authorizationParams.redirect_uri||window.location.origin}=e;if(!o)throw new Error(\"connection is required\");const s=x(O()),c=O(),u=await K(c),l=U(u),{connect_uri:d,connect_params:h,auth_session:p}=await this.myAccountApi.connectAccount({connection:o,scopes:r,redirect_uri:a,state:s,code_challenge:l,code_challenge_method:\"S256\",authorization_params:i});this.transactionManager.create({state:s,code_verifier:c,auth_session:p,redirect_uri:a,appState:n,connection:o,response_type:Oe.ConnectCode});const f=new URL(d);f.searchParams.set(\"ticket\",h.ticket),t?await t(f.toString()):window.location.assign(f)}}async function Gi(e){const t=new Vi(e);return await t.checkSession(),t}export{Vi as Auth0Client,g as AuthenticationError,de as CacheKey,v as ConnectError,w as GenericError,pe as InMemoryCache,he as LocalStorageCache,E as MfaRequiredError,A as MissingRefreshTokenError,$e as MyAccountApiError,k as PopupCancelledError,S as PopupOpenError,_ as PopupTimeoutError,Oe as ResponseType,b as TimeoutError,P as UseDpopNonceError,xe as User,Gi as createAuth0Client};\n//# sourceMappingURL=auth0-spa-js.production.esm.js.map\n"],"names":["e","t","n","o","r","i","a","s","c","u","l","d","h","p","f","m","y","w","g","v","b","_","k","S","E","A","R","T","P","I","O","x","C","j","D","K","L","U","N","W","H","z","F","J","V","G","M","Z","q","B","X","Y","Q","$","ee","te","ne","oe","re","ie","ae","se","ce","ue","le","de","he","pe","fe","me","ye","we","ge","ve","be","_e","ke","Se","Ee","Ae","Te","Pe","Re","Ie","Oe","Ce","je","De","Ke","Le","Ue","Ne","We","He","ze","Je","Me","Ve","Ge","Fe","Ze","qe","Be","Xe","Ye","Qe","$e","et","tt","nt","ot","rt","it","at","st","ct","ut","lt","dt","ht","pt","ft","mt","yt","wt","gt","vt","_t","kt","St","Et","At","Tt","Pt","Rt","Rn","It","Ot","xt","Ct","jt","Dt","Kt","Lt","Xt","Ut","Nt","Wt","ln","Cn","Ht","zt","Jt","Mt","Vt","Gt","Ft","Zt","qt","Mn","Jn","Bt","Dn","Kn","Yt","Wn","Hn","Qt","$t","Pn","en","In","tn","Tn","nn","on","rn","an","sn","cn","zn","jn","un","vn","dn","hn","pn","fn","mn","yn","Xn","xn","On","Ln","Gn","kn","gn","wn","Un","Qn","bn","_n","Sn","En","An","Nn","Vn","Fn","Zn","qn","Bn","Yn","$n","eo","to","no","oo","ro","io","ao","so","co","uo","lo","ho","po","fo","mo","yo","wo","go","vo","bo","_o","ko","So","Eo","Ao","To","Po","Ro","Io","Oo","xo","Co","jo","Do","Ko","Lo","Uo","No","Wo","Ho","zo","Jo","Mo","Vo","Go","Fo","Zo","qo","Bo","$o","Qo","Yo","Xo","er","tr","nr","or","rr","ir","pr","sr","cr","ur","lr","dr","vr","br","hr","_r","kr","fr","mr","yr","wr","gr","Sr","Er","Ar","Tr","Pr","Rr","Ir","Or","xr","Cr","jr","Dr","Kr","Lr","Ur","Nr","Wr","Hr","zr","Jr","Mr","Vr","Gr","Fr","Zr","qr","Br","Xr","Yr","Qr","$r","ei","ti","ni","oi","ri","ii","ai","si","ci","ui","li","di","hi","pi","fi","mi","yi","wi","gi","vi","bi","_i","ki","Si","Ei","Ai","Ti","Pi","Ri","Ii","Oi","xi","Ci","ji","Di","Ki","Li","Ui","Ni","Ji","Wi","Hi","zi","Mi","Vi"],"mappings":"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","x_google_ignoreList":[0]}
|