- Consolidated duplicate UndoManagers to single instance - Fixed connection promise to only resolve on 'connected' status - Fixed WebSocketProvider import (WebsocketProvider) - Added proper doc.destroy() cleanup - Renamed isPresenceInitialized property to avoid conflict Co-Authored-By: Paperclip <noreply@paperclip.ing>
18 lines
261 KiB
JavaScript
18 lines
261 KiB
JavaScript
!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var i=t();for(var r in i)("object"==typeof exports?exports:e)[r]=i[r]}}(globalThis,()=>(()=>{var e,t,i,r,n,s,a={8388(e,t,i){"use strict";var r=this&&this.__awaiter||function(e,t,i,r){return new(i||(i=Promise))(function(n,s){function a(e){try{l(r.next(e))}catch(e){s(e)}}function o(e){try{l(r.throw(e))}catch(e){s(e)}}function l(e){e.done?n(e.value):new i(function(t){t(e.value)}).then(a,o)}l((r=r.apply(e,t||[])).next())})},n=this&&this.__generator||function(e,t){var i,r,n,s,a={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return s={next:o(0),throw:o(1),return:o(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function o(s){return function(o){var l=[s,o];if(i)throw TypeError("Generator is already executing.");for(;a;)try{if(i=1,r&&(n=2&l[0]?r.return:l[0]?r.throw||((n=r.return)&&n.call(r),0):r.next)&&!(n=n.call(r,l[1])).done)return n;switch(r=0,n&&(l=[2&l[0],n.value]),l[0]){case 0:case 1:n=l;break;case 4:return a.label++,{value:l[1],done:!1};case 5:a.label++,r=l[1],l=[0];continue;case 7:l=a.ops.pop(),a.trys.pop();continue;default:if(!(n=(n=a.trys).length>0&&n[n.length-1])&&(6===l[0]||2===l[0])){a=0;continue}if(3===l[0]&&(!n||l[1]>n[0]&&l[1]<n[3])){a.label=l[1];break}if(6===l[0]&&a.label<n[1]){a.label=n[1],n=l;break}if(n&&a.label<n[2]){a.label=n[2],a.ops.push(l);break}n[2]&&a.ops.pop(),a.trys.pop();continue}l=t.call(e,a)}catch(e){l=[6,e],r=0}finally{i=n=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}},s=this;Object.defineProperty(t,"__esModule",{value:!0});var a=i(8058),o="browser-tabs-lock-key",l={key:function(e){return r(s,void 0,void 0,function(){return n(this,function(e){throw Error("Unsupported")})})},getItem:function(e){return r(s,void 0,void 0,function(){return n(this,function(e){throw Error("Unsupported")})})},clear:function(){return r(s,void 0,void 0,function(){return n(this,function(e){return[2,window.localStorage.clear()]})})},removeItem:function(e){return r(s,void 0,void 0,function(){return n(this,function(e){throw Error("Unsupported")})})},setItem:function(e,t){return r(s,void 0,void 0,function(){return n(this,function(e){throw Error("Unsupported")})})},keySync:function(e){return window.localStorage.key(e)},getItemSync:function(e){return window.localStorage.getItem(e)},clearSync:function(){return window.localStorage.clear()},removeItemSync:function(e){return window.localStorage.removeItem(e)},setItemSync:function(e,t){return window.localStorage.setItem(e,t)}};function c(e){return new Promise(function(t){return setTimeout(t,e)})}function d(e){for(var t="0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz",i="",r=0;r<e;r++){var n=Math.floor(Math.random()*t.length);i+=t[n]}return i}t.default=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,i){return void 0===i&&(i=5e3),r(this,void 0,void 0,function(){var r,s,a,h,u,p,f;return n(this,function(n){switch(n.label){case 0:r=Date.now()+d(4),s=Date.now()+i,a=o+"-"+t,h=void 0===this.storageHandler?l:this.storageHandler,n.label=1;case 1:if(!(Date.now()<s))return[3,8];return[4,c(30)];case 2:if(n.sent(),null!==h.getItemSync(a))return[3,5];return u=this.id+"-"+t+"-"+r,[4,c(Math.floor(25*Math.random()))];case 3:return n.sent(),h.setItemSync(a,JSON.stringify({id:this.id,iat:r,timeoutKey:u,timeAcquired:Date.now(),timeRefreshed:Date.now()})),[4,c(30)];case 4:if(n.sent(),null!==(p=h.getItemSync(a))&&(f=JSON.parse(p)).id===this.id&&f.iat===r)return this.acquiredIatSet.add(r),this.refreshLockWhileAcquired(a,r),[2,!0];return[3,7];case 5:return e.lockCorrector(void 0===this.storageHandler?l:this.storageHandler),[4,this.waitForSomethingToChange(s)];case 6:n.sent(),n.label=7;case 7:return r=Date.now()+d(4),[3,1];case 8:return[2,!1]}})})},e.prototype.refreshLockWhileAcquired=function(e,t){return r(this,void 0,void 0,function(){var i=this;return n(this,function(s){return setTimeout(function(){return r(i,void 0,void 0,function(){var i,r,s;return n(this,function(n){switch(n.label){case 0:return[4,a.default().lock(t)];case 1:if(n.sent(),!this.acquiredIatSet.has(t)||null===(r=(i=void 0===this.storageHandler?l:this.storageHandler).getItemSync(e)))return a.default().unlock(t),[2];return(s=JSON.parse(r)).timeRefreshed=Date.now(),i.setItemSync(e,JSON.stringify(s)),a.default().unlock(t),this.refreshLockWhileAcquired(e,t),[2]}})})},1e3),[2]})})},e.prototype.waitForSomethingToChange=function(t){return r(this,void 0,void 0,function(){return n(this,function(i){switch(i.label){case 0:return[4,new Promise(function(i){var r=!1,n=Date.now(),s=!1;function a(){if(s||(window.removeEventListener("storage",a),e.removeFromWaiting(a),clearTimeout(o),s=!0),!r){r=!0;var t=50-(Date.now()-n);t>0?setTimeout(i,t):i(null)}}window.addEventListener("storage",a),e.addToWaiting(a);var o=setTimeout(a,Math.max(0,t-Date.now()))})];case 1:return i.sent(),[2]}})})},e.addToWaiting=function(t){this.removeFromWaiting(t),void 0!==e.waiters&&e.waiters.push(t)},e.removeFromWaiting=function(t){void 0!==e.waiters&&(e.waiters=e.waiters.filter(function(e){return e!==t}))},e.notifyWaiters=function(){void 0!==e.waiters&&e.waiters.slice().forEach(function(e){return e()})},e.prototype.releaseLock=function(e){return r(this,void 0,void 0,function(){return n(this,function(t){switch(t.label){case 0:return[4,this.releaseLock__private__(e)];case 1:return[2,t.sent()]}})})},e.prototype.releaseLock__private__=function(t){return r(this,void 0,void 0,function(){var i,r,s,c;return n(this,function(n){switch(n.label){case 0:if(i=void 0===this.storageHandler?l:this.storageHandler,r=o+"-"+t,null===(s=i.getItemSync(r)))return[2];if((c=JSON.parse(s)).id!==this.id)return[3,2];return[4,a.default().lock(c.iat)];case 1:n.sent(),this.acquiredIatSet.delete(c.iat),i.removeItemSync(r),a.default().unlock(c.iat),e.notifyWaiters(),n.label=2;case 2:return[2]}})})},e.lockCorrector=function(t){for(var i=Date.now()-5e3,r=[],n=0;;){var s=t.keySync(n);if(null===s)break;r.push(s),n++}for(var a=!1,l=0;l<r.length;l++){var c=r[l];if(c.includes(o)){var d=t.getItemSync(c);if(null!==d){var h=JSON.parse(d);(void 0===h.timeRefreshed&&h.timeAcquired<i||void 0!==h.timeRefreshed&&h.timeRefreshed<i)&&(t.removeItemSync(c),a=!0)}}}a&&e.notifyWaiters()},e.waiters=void 0,e}()},8058(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(){var e=this;this.locked=new Map,this.addToLocked=function(t,i){var r=e.locked.get(t);void 0===r?void 0===i?e.locked.set(t,[]):e.locked.set(t,[i]):void 0!==i&&(r.unshift(i),e.locked.set(t,r))},this.isLocked=function(t){return e.locked.has(t)},this.lock=function(t){return new Promise(function(i,r){e.isLocked(t)?e.addToLocked(t,i):(e.addToLocked(t),i())})},this.unlock=function(t){var i=e.locked.get(t);if(void 0===i||0===i.length)return void e.locked.delete(t);var r=i.pop();e.locked.set(t,i),void 0!==r&&setTimeout(r,0)}}return e.getInstance=function(){return void 0===e.instance&&(e.instance=new e),e.instance},e}();t.default=function(){return i.getInstance()}},547(e){e.exports=function(e,t){if("string"!=typeof e)throw TypeError("Expected a string");for(var i,r=String(e),n="",s=!!t&&!!t.extended,a=!!t&&!!t.globstar,o=!1,l=t&&"string"==typeof t.flags?t.flags:"",c=0,d=r.length;c<d;c++)switch(i=r[c]){case"/":case"$":case"^":case"+":case".":case"(":case")":case"=":case"!":case"|":n+="\\"+i;break;case"?":if(s){n+=".";break}case"[":case"]":if(s){n+=i;break}case"{":if(s){o=!0,n+="(";break}case"}":if(s){o=!1,n+=")";break}case",":if(o){n+="|";break}n+="\\"+i;break;case"*":for(var h=r[c-1],u=1;"*"===r[c+1];)u++,c++;var p=r[c+1];a?u>1&&("/"===h||void 0===h)&&("/"===p||void 0===p)?(n+="((?:[^/]*(?:/|$))*)",c++):n+="([^/]*)":n+=".*";break;default:n+=i}return l&&~l.indexOf("g")||(n="^"+n+"$"),new RegExp(n,l)}},1118(e,t,i){"use strict";i.d(t,{t:()=>r});let r=(...e)=>{}},9536(e,t,i){"use strict";function r(e){return Promise.all(Array.from(e).map(e=>e.then(e=>({status:"fulfilled",value:e}),e=>({status:"rejected",reason:e}))))}i.d(t,{a:()=>r})},7009(e,t,i){"use strict";function r(e,t,i){return"function"==typeof e?e(t):void 0!==e?e:void 0!==i?i:void 0}i.d(t,{vd:()=>s.a,VK:()=>r,lQ:()=>n.t});var n=i(1118),s=i(9536)}},o={};function l(e){var t=o[e];if(void 0!==t)return t.exports;var i=o[e]={exports:{}};return a[e].call(i.exports,i,i.exports,l),i.exports}l.m=a,l.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return l.d(t,{a:t}),t},t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,l.t=function(i,r){if(1&r&&(i=this(i)),8&r||"object"==typeof i&&i&&(4&r&&i.__esModule||16&r&&"function"==typeof i.then))return i;var n=Object.create(null);l.r(n);var s={};e=e||[null,t({}),t([]),t(t)];for(var a=2&r&&i;("object"==typeof a||"function"==typeof a)&&!~e.indexOf(a);a=t(a))Object.getOwnPropertyNames(a).forEach(e=>{s[e]=()=>i[e]});return s.default=()=>i,l.d(n,s),n},l.d=(e,t)=>{for(var i in t)l.o(t,i)&&!l.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},l.f={},l.e=e=>Promise.all(Object.keys(l.f).reduce((t,i)=>(l.f[i](e,t),t),[])),l.u=e=>""+("811"===e?"cookieSuffix":e)+"_clerk.native_"+l.h().slice(0,6)+"_6.7.5.js",l.h=()=>"93ba32d2c02ce476",l.g=(()=>{if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}})(),l.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),i={},l.l=function(e,t,r,n){if(i[e])return void i[e].push(t);if(void 0!==r)for(var s,a,o=document.getElementsByTagName("script"),c=0;c<o.length;c++){var d=o[c];if(d.getAttribute("src")==e||d.getAttribute("data-rspack")=="@clerk/clerk-js:"+r){s=d;break}}s||(a=!0,(s=document.createElement("script")).timeout=120,l.nc&&s.setAttribute("nonce",l.nc),s.setAttribute("data-rspack","@clerk/clerk-js:"+r),s.src=e),i[e]=[t];var h=function(t,r){s.onerror=s.onload=null,clearTimeout(u);var n=i[e];if(delete i[e],s.parentNode&&s.parentNode.removeChild(s),n&&n.forEach(function(e){return e(r)}),t)return t(r)},u=setTimeout(h.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=h.bind(null,s.onerror),s.onload=h.bind(null,s.onload),a&&document.head.appendChild(s)},l.r=e=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},l.p="",r={86:0},l.f.j=function(e,t){var i=l.o(r,e)?r[e]:void 0;if(0!==i)if(i)t.push(i[2]);else{var n=new Promise((t,n)=>i=r[e]=[t,n]);t.push(i[2]=n);var s=l.p+l.u(e),a=Error();l.l(s,function(t){if(l.o(r,e)&&(0!==(i=r[e])&&(r[e]=void 0),i)){var n=t&&("load"===t.type?"missing":t.type),s=t&&t.target&&t.target.src;a.message="Loading chunk "+e+" failed.\n("+n+": "+s+")",a.name="ChunkLoadError",a.type=n,a.request=s,i[1](a)}},"chunk-"+e,e)}},n=(e,t)=>{var i,n,[s,a,o]=t,c=0;if(s.some(e=>0!==r[e])){for(i in a)l.o(a,i)&&(l.m[i]=a[i]);o&&o(l)}for(e&&e(t);c<s.length;c++)n=s[c],l.o(r,n)&&r[n]&&r[n][0](),r[n]=0},(s=globalThis.webpackChunk_clerk_clerk_js=globalThis.webpackChunk_clerk_clerk_js||[]).forEach(n.bind(null,0)),s.push=n.bind(null,s.push.bind(s));var c={};return(()=>{"use strict";let e,t,i,r;function n(){return"u">typeof window}l.r(c),l.d(c,{EmailLinkError:()=>T,isUserLockedError:()=>W,ClerkAPIResponseError:()=>S,EmailLinkErrorCodeStatus:()=>E,isKnownError:()=>F,Clerk:()=>nG,isMetamaskError:()=>N,EmailLinkErrorCode:()=>O,ClerkRuntimeError:()=>b,isClerkRuntimeError:()=>v,isClerkAPIResponseError:()=>I,isEmailLinkError:()=>D});let s=RegExp("bot|spider|crawl|APIs-Google|AdsBot|Googlebot|mediapartners|Google Favicon|FeedFetcher|Google-Read-Aloud|DuplexWeb-Google|googleweblight|bing|yandex|baidu|duckduck|yahoo|ecosia|ia_archiver|facebook|instagram|pinterest|reddit|slack|twitter|whatsapp|youtube|semrush","i");function a(){var e;let t=n()?window?.navigator:null;return!!t&&!((e=t?.userAgent)&&s.test(e))&&!t?.webdriver}function o(){let e=n()?window?.navigator:null;return!!e&&("boolean"!=typeof e.onLine||!!e.onLine)}function d(){return o()&&a()}let h=(e,t,i,r,n)=>{let{notify:s}=n||{},a=e.get(i);a||(a=[],e.set(i,a)),a.push(r),s&&t.has(i)&&r(t.get(i))},u=(e,t,i)=>(e.get(t)||[]).map(e=>e(i)),p=(e,t,i)=>{let r=e.get(t);r&&(i?r.splice(r.indexOf(i)>>>0,1):e.set(t,[]))},f=()=>{let e=new Map,t=new Map,i=new Map;return{on:(...i)=>h(e,t,...i),prioritizedOn:(...e)=>h(i,t,...e),emit:(r,n)=>{t.set(r,n),u(i,r,n),u(e,r,n)},off:(...t)=>p(e,...t),prioritizedOff:(...e)=>p(i,...e),internal:{retrieveListeners:t=>e.get(t)||[]}}},m="status";function g(e){return function(t){let i=t??this;if(!i)throw TypeError(`${e.kind||e.name} type guard requires an error object`);return!!e.kind&&"object"==typeof i&&null!==i&&"constructor"in i&&i.constructor?.kind===e.kind||i instanceof e}}var _,w,y=class e extends Error{static kind="ClerkError";clerkError=!0;code;longMessage;docsUrl;cause;get name(){return this.constructor.name}constructor(t){super(new.target.formatMessage(new.target.kind,t.message,t.code,t.docsUrl),{cause:t.cause}),Object.setPrototypeOf(this,e.prototype),this.code=t.code,this.docsUrl=t.docsUrl,this.longMessage=t.longMessage,this.cause=t.cause}toString(){return`[${this.name}]
|
|
Message:${this.message}`}static formatMessage(e,t,i,r){let n="Clerk:",s=RegExp(n.replace(" ","\\s*"),"i");return t=t.replace(s,""),t=`${n} ${t.trim()}
|
|
|
|
(code="${i}")
|
|
|
|
`,r&&(t+=`
|
|
|
|
Docs: ${r}`),t}},b=class e extends y{static kind="ClerkRuntimeError";clerkRuntimeError=!0;constructor(t,i){super({...i,message:t}),Object.setPrototypeOf(this,e.prototype)}};let v=g(b);var k=class{static kind="ClerkAPIError";code;message;longMessage;meta;constructor(e){const t={code:e.code,message:e.message,longMessage:e.long_message,meta:{paramName:e.meta?.param_name,sessionId:e.meta?.session_id,emailAddresses:e.meta?.email_addresses,identifiers:e.meta?.identifiers,zxcvbn:e.meta?.zxcvbn,plan:e.meta?.plan,isPlanUpgradePossible:e.meta?.is_plan_upgrade_possible}};this.code=t.code,this.message=t.message,this.longMessage=t.longMessage,this.meta=t.meta}};g(k);var S=class e extends y{static kind="ClerkAPIResponseError";status;clerkTraceId;retryAfter;errors;constructor(t,i){const{data:r,status:n,clerkTraceId:s,retryAfter:a}=i;super({...i,message:t,code:"api_response_error"}),Object.setPrototypeOf(this,e.prototype),this.status=n,this.clerkTraceId=s,this.retryAfter=a,this.errors=(r||[]).map(e=>new k(e))}toString(){let e=`[${this.name}]
|
|
Message:${this.message}
|
|
Status:${this.status}
|
|
Serialized errors: ${this.errors.map(e=>JSON.stringify(e))}`;return this.clerkTraceId&&(e+=`
|
|
Clerk Trace ID: ${this.clerkTraceId}`),e}static formatMessage(e,t,i,r){return t}};let I=g(S);var U=class e extends S{static kind="MissingExpiredTokenError";static ERROR_CODE="missing_expired_token";static STATUS=422;static is(t){return I(t)&&t.status===e.STATUS&&t.errors.length>0&&t.errors[0].code===e.ERROR_CODE}},A=class e extends b{static kind="ClerkOfflineError";static ERROR_CODE="clerk_offline";constructor(t){super(t,{code:e.ERROR_CODE}),Object.setPrototypeOf(this,e.prototype)}static is(t){return null!=t&&(t instanceof e||v(t)&&t.code===e.ERROR_CODE)}};let C=Object.freeze({InvalidProxyUrlErrorMessage:"The proxyUrl passed to Clerk is invalid. The expected value for proxyUrl is an absolute URL or a relative path with a leading '/'. (key={{url}})",InvalidPublishableKeyErrorMessage:"The publishableKey passed to Clerk is invalid. You can get your Publishable key at https://dashboard.clerk.com/last-active?path=api-keys. (key={{key}})",MissingPublishableKeyErrorMessage:"Missing publishableKey. You can get your key at https://dashboard.clerk.com/last-active?path=api-keys.",MissingSecretKeyErrorMessage:"Missing secretKey. You can get your key at https://dashboard.clerk.com/last-active?path=api-keys.",MissingClerkProvider:"{{source}} can only be used within the <ClerkProvider /> component. Learn more: https://clerk.com/docs/components/clerk-provider"});function P({packageName:e,customMessages:t}){let i=e;function r(e,t){if(!t)return`${i}: ${e}`;let r=e;for(let i of e.matchAll(/{{([a-zA-Z0-9-_]+)}}/g)){let e=(t[i[1]]||"").toString();r=r.replace(`{{${i[1]}}}`,e)}return`${i}: ${r}`}let n={...C,...t};return{setPackageName({packageName:e}){return"string"==typeof e&&(i=e),this},setMessages({customMessages:e}){return Object.assign(n,e||{}),this},throwInvalidPublishableKeyError(e){throw Error(r(n.InvalidPublishableKeyErrorMessage,e))},throwInvalidProxyUrl(e){throw Error(r(n.InvalidProxyUrlErrorMessage,e))},throwMissingPublishableKeyError(){throw Error(r(n.MissingPublishableKeyErrorMessage))},throwMissingSecretKeyError(){throw Error(r(n.MissingSecretKeyErrorMessage))},throwMissingClerkProviderError(e){throw Error(r(n.MissingClerkProvider,e))},throw(e){throw Error(r(e))}}}var T=class e extends Error{code;constructor(t){super(t),this.code=t,this.name="EmailLinkError",Object.setPrototypeOf(this,e.prototype)}};let O={Expired:"expired",Failed:"failed",ClientMismatch:"client_mismatch"},E={Expired:"expired",Failed:"failed",ClientMismatch:"client_mismatch"};var x=class extends b{code;constructor(e,t){super(e,t),this.code=t.code}};function R(e){return["captcha_invalid","captcha_not_enabled","captcha_missing_token"].includes(e.errors[0].code)}function z(e){let t=e?.status;return!!t&&t>=400&&t<500}function M(e){let t=e?.status;return 401===t||422===t}function F(e){return I(e)||N(e)||v(e)}function N(e){return"code"in e&&[4001,32602,32603].includes(e.code)&&"message"in e}function W(e){return I(e)&&e.errors?.[0]?.code==="user_locked"}function D(e){return"EmailLinkError"===e.name}function L(e){for(let[t,i]of Object.entries({isClerkAPIResponseError:I,isClerkRuntimeError:v}))Object.assign(e,{[t]:i});return e}let $=(e,t)=>!!(e.isSignedIn&&t?.authConfig.singleSessionMode),j=(e,t)=>!t?.commerceSettings.billing.user.enabled&&!t?.commerceSettings.billing.organization.enabled,B=(e,t)=>!t?.apiKeysSettings?.user_api_keys_enabled,J=(e,t)=>!t?.apiKeysSettings?.orgs_api_keys_enabled,K="__clerk_synced",V="false",q="true",H="suffixed_cookies",G="__clerk_satellite_url",Q="clerk-captcha",X="clerk-invisible-captcha";var Y=l(547);let Z=new Set,ee=e=>{Z.has(e)||(Z.add(e),console.warn(e))},et=(e,t)=>{let i={};for(let r in e)i[r]=t(e[r],r);return i},ei=(e,t)=>{let i={};for(let r in e)e[r]&&t(e[r])&&(i[r]=e[r]);return i};function er(e){return e?e.replace(/([-_][a-z])/g,e=>e.toUpperCase().replace(/-|_/,"")):""}function en(e){return e?e.replace(/[A-Z]/g,e=>`_${e.toLowerCase()}`):""}let es=e=>{let t=i=>{if(!i)return i;if(Array.isArray(i))return i.map(e=>"object"==typeof e||Array.isArray(e)?t(e):e);let r={...i};for(let i of Object.keys(r)){let n=e(i.toString());n!==i&&(r[n]=r[i],delete r[i]),"object"==typeof r[n]&&(r[n]=t(r[n]))}return r};return t},ea=es(en),eo=es(er);function el(e){if("boolean"==typeof e)return e;if(null==e)return!1;if("string"==typeof e){if("true"===e.toLowerCase())return!0;if("false"===e.toLowerCase())return!1}let t=parseInt(e,10);return!isNaN(t)&&t>0}let ec=RegExp("/{1,}","g"),ed=[".lcl.dev",".lclstage.dev",".lclclerk.com"],eh=[".accounts.dev",".accountsstage.dev",".accounts.lclclerk.com"],eu=[".lcl.dev",".stg.dev",".lclstage.dev",".stgstage.dev",".dev.lclclerk.com",".stg.lclclerk.com",".accounts.lclclerk.com","accountsstage.dev","accounts.dev"],ep=e=>"u">typeof atob&&"function"==typeof atob?atob(e):void 0!==globalThis.Buffer?globalThis.Buffer.from(e,"base64").toString():e,ef="pk_live_";function em(e){if(!e.endsWith("$"))return!1;let t=e.slice(0,-1);return!t.includes("$")&&t.includes(".")}function eg(e,t={}){let i;if(!(e=e||"")||!e_(e)){if(t.fatal&&!e)throw Error("Publishable key is missing. Ensure that your publishable key is correctly configured. Double-check your environment configuration for your keys, or access them here: https://dashboard.clerk.com/last-active?path=api-keys");if(t.fatal&&!e_(e))throw Error("Publishable key not valid.");return null}let r=e.startsWith(ef)?"production":"development";try{i=ep(e.split("_")[2])}catch{if(t.fatal)throw Error("Publishable key not valid: Failed to decode key.");return null}if(!em(i)){if(t.fatal)throw Error("Publishable key not valid: Decoded key has invalid format.");return null}let n=i.slice(0,-1);return t.proxyUrl?n=t.proxyUrl:"development"!==r&&t.domain&&t.isSatellite&&(n=`clerk.${t.domain}`),{instanceType:r,frontendApi:n}}function e_(e=""){try{if(!(e.startsWith(ef)||e.startsWith("pk_test_")))return!1;let t=e.split("_");if(3!==t.length)return!1;let i=t[2];if(!i)return!1;return em(ep(i))}catch{return!1}}async function ew(e,t=globalThis.crypto.subtle){var i;let r=new TextEncoder().encode(e);return(i=String.fromCharCode(...new Uint8Array(await t.digest("sha-1",r))),"u">typeof btoa&&"function"==typeof btoa?btoa(i):void 0!==globalThis.Buffer?globalThis.Buffer.from(i).toString("base64"):i).replace(/\+/gi,"-").replace(/\//gi,"_").substring(0,8)}let ey=(e,t)=>`${e}_${t}`;function eb(e=""){return(e||"").replace(/^.+:\/\//,"")}let ev=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,ek=(e,t={})=>{if(null==e||!e||"object"!=typeof e)return"";let i=new URLSearchParams;return Object.keys(e).forEach(r=>{let n=t.keyEncoder?t.keyEncoder(r):r,s=e[r];if(Array.isArray(s))s.forEach(e=>void 0!==e&&i.append(n,e||""));else{if(void 0===s)return;"object"==typeof s&&null!==s?i.append(n,JSON.stringify(s)):i.append(n,String(s??""))}}),i.toString()},eS="http://clerk-dummy",eI=["javascript:"],{isDevOrStagingUrl:eU}=(r=new Map,{isDevOrStagingUrl:e=>{if(!e)return!1;let t="string"==typeof e?e:e.hostname,i=r.get(t);return void 0===i&&(i=eu.some(e=>t.endsWith(e)),r.set(t,i)),i}}),eA=new Map;function eC(e){return e.replace("clerk.","")}function eP(e,t={}){let{base:i,hashPath:r,hashSearch:n,searchParams:s,hashSearchParams:a,...o}=e,l=new URL(i||"","u">typeof window&&window.location?window.location.href:"http://react-native-fake-base-url");if(s instanceof URLSearchParams&&s.forEach((e,t)=>{null!=e&&l.searchParams.set(en(t),e)}),Object.assign(l,o),r||n||a){var c;let e,t=new URL(eS+l.hash.substring(1));for(let[i,s]of(c=t.pathname,t.pathname=[c,r||""].filter(e=>e).join("/").replace(ec,"/"),Object.entries((e={},new URLSearchParams(n||"").forEach((t,i)=>{if(i in e){let r=e[i];Array.isArray(r)?r.push(t):e[i]=[r,t]}else e[i]=t}),e))))t.searchParams.append(i,s);if(a)for(let e of Array.isArray(a)?a:[a])(e instanceof URLSearchParams||"object"==typeof e)&&new URLSearchParams(e).forEach((e,i)=>{null!=e&&t.searchParams.set(en(i),e)});let i=t.href.replace(eS,"");"/"!==i&&(l.hash=i)}let{stringify:d,skipOrigin:h}=t;return d?h?l.href.replace(l.origin,""):l.href:l}function eT(e){return void 0===window.location&&"string"==typeof e?e:(e=new URL(e.toString(),window.location.origin)).href.replace(e.origin,"")}let eO=e=>(e||"").replace(/\/+$/,"");function eE(e,t){try{return new URL(e)}catch{return new URL(e,t)}}let ex=[/\0/,/^\/\//,/[\x00-\x1F]/],eR=["/oauth/authorize"],ez=["/v1/verify","/v1/tickets/accept","/oauth/authorize-with-immediate-redirect","/oauth/end_session"];var eM=class e{static keys=["signInForceRedirectUrl","signInFallbackRedirectUrl","signUpForceRedirectUrl","signUpFallbackRedirectUrl","redirectUrl"];static preserved=["redirectUrl"];options;fromOptions;fromProps;fromSearchParams;mode;constructor(e,t={},i={},r){this.options=e,this.fromOptions=this.#e(e||{}),this.fromProps=this.#e(t||{}),this.fromSearchParams=this.#t(i||{}),this.mode=r}getAfterSignInUrl(){return this.#i("signIn")}getAfterSignUpUrl(){return this.#i("signUp")}getPreservedSearchParams(){return this.#r(this.#n())}toSearchParams(){return this.#r(this.#s())}#r(e){return new URLSearchParams(Object.entries(Object.fromEntries(Object.entries(e).map(([e,t])=>[en(e),t]))).reduce((e,[t,i])=>(null!=i&&(e[t]=i),e),{}))}#n(){return Object.fromEntries(Object.entries({...this.fromSearchParams}).filter(([t])=>e.preserved.includes(t)))}#s(){let e=this.fromSearchParams.signUpForceRedirectUrl||this.fromProps.signUpForceRedirectUrl||this.fromOptions.signUpForceRedirectUrl,t=this.fromSearchParams.signUpFallbackRedirectUrl||this.fromProps.signUpFallbackRedirectUrl||this.fromOptions.signUpFallbackRedirectUrl,i=this.fromSearchParams.signInForceRedirectUrl||this.fromProps.signInForceRedirectUrl||this.fromOptions.signInForceRedirectUrl,r={signUpForceRedirectUrl:e,signUpFallbackRedirectUrl:t,signInFallbackRedirectUrl:this.fromSearchParams.signInFallbackRedirectUrl||this.fromProps.signInFallbackRedirectUrl||this.fromOptions.signInFallbackRedirectUrl,signInForceRedirectUrl:i,redirectUrl:this.fromSearchParams.redirectUrl||this.fromProps.redirectUrl};return e&&delete r.signUpFallbackRedirectUrl,i&&delete r.signInFallbackRedirectUrl,r}#i(e){let t,i=`${e}ForceRedirectUrl`,r=`${e}FallbackRedirectUrl`;return(t=this.fromSearchParams[i]||this.fromProps[i]||this.fromOptions[i],t||=this.fromSearchParams.redirectUrl,(t||=this.fromSearchParams[r]||this.fromProps[r]||this.fromOptions[r])||"modal"!==this.mode)?t||"/":window.location.href}#e(t){let i={};return e.keys.forEach(e=>{i[e]=t[e]}),et(this.#a(this.#o(ei(i,Boolean))),e=>e.toString())}#t(t){let i={};return e.keys.forEach(e=>{t instanceof URLSearchParams?i[e]=t.get(en(e)):i[e]=t[en(e)]}),et(this.#a(this.#o(ei(i,Boolean))),e=>e.toString())}#o(e){return et(e,e=>eE(e,window.location.origin))}#a=e=>{let t,i;return ei(e,(t=this.options?.allowedRedirectOrigins,i=window.location.origin,e=>{let r=e;if("string"==typeof r&&(r=eE(r,i)),!t)return!0;let n=i===r.origin,s=!function(e){if(function(e){if(!function(e){if(!e)return!1;try{return new URL(e),!0}catch{return!1}}(e))return!1;let t=new URL(e).protocol;return eI.some(e=>e===t)}(e))return!0;for(let t of ex)if(t.test(e.pathname))return!0;return!1}(r)&&(n||t.map(e=>"string"==typeof e?(e=>{try{return Y(e)}catch(t){throw Error(`Invalid pattern: ${e}.
|
|
Consult the documentation of glob-to-regexp here: https://www.npmjs.com/package/glob-to-regexp.
|
|
${t.message}`)}})(eO(e)):e).some(e=>e.test(eO(r.origin))));return s||ee(`Clerk: Redirect URL ${r} is not on one of the allowedRedirectOrigins, falling back to the default redirect URL.`),s}))}};let eF="__clerk_netlify_cache_bust",eN=["__clerk_status","__clerk_created_session","__clerk_invitation_token","__clerk_ticket","__clerk_modal_state","__clerk_handshake","__clerk_handshake_nonce","__clerk_help",eF,K,G,H];function eW(e){return new URL(window.location.href).searchParams.get(e)||null}function eD(e){let t=new URL(window.location.href);t.searchParams.has(e)&&(t.searchParams.delete(e),window.history.replaceState(window.history.state,"",t))}function eL(e){let t=new URLSearchParams(window.location.search),i=e||new URLSearchParams;for(let e of eN){let r=t.get(e);r&&i.set(e,r)}return i}let e$={"choose-organization":"choose-organization","reset-password":"reset-password","setup-mfa":"setup-mfa"},ej=e=>`/tasks/${e$[e.key]}`;function eB(e,{navigate:t,baseUrl:i}){let r=e.currentTask;if(r){var n;let e;return t((n={base:i},e=eL(),eP({base:n.base,hashPath:ej(r),searchParams:e},{stringify:!0})))}}let eJ=e=>`🔒 Clerk:
|
|
${e.trim()}
|
|
(This notice only appears in development)`,eK=e=>eJ(`${e} as a function is not supported in this environment. The value will be ignored. Provide an absolute URL instead.`),eV={proxyUrlAsFunctionNotSupported:eK("proxyUrl"),domainAsFunctionNotSupported:eK("domain"),cannotRenderComponentWhenSessionExists:"The <SignUp/> and <SignIn/> components cannot render when a user is already signed in, unless the application allows multiple sessions. Since a user is signed in and this application only allows a single session, Clerk is redirecting to the Home URL instead.",cannotRenderSignUpComponentWhenSessionExists:"The <SignUp/> component cannot render when a user is already signed in, unless the application allows multiple sessions. Since a user is signed in and this application only allows a single session, Clerk is redirecting to the value set in `afterSignUp` URL instead.",cannotRenderSignUpComponentWhenTaskExists:"The <SignUp/> component cannot render when a user has a pending task, unless the application allows multiple sessions. Since a user is signed in and this application only allows a single session, Clerk is redirecting to the task instead.",cannotRenderComponentWhenTaskDoesNotExist:"<TaskChooseOrganization/> cannot render unless a session task is pending. Clerk is redirecting to the value set in `redirectUrlComplete` instead.",cannotRenderSignInComponentWhenSessionExists:"The <SignIn/> component cannot render when a user is already signed in, unless the application allows multiple sessions. Since a user is signed in and this application only allows a single session, Clerk is redirecting to the `afterSignIn` URL instead.",cannotRenderSignInComponentWhenTaskExists:"The <SignIn/> component cannot render when a user has a pending task, unless the application allows multiple sessions. Since a user is signed in and this application only allows a single session, Clerk is redirecting to the task instead.",cannotRenderComponentWhenUserDoesNotExist:"<UserProfile/> cannot render unless a user is signed in. Since no user is signed in, this is no-op.",cannotRenderComponentWhenOrgDoesNotExist:"<OrganizationProfile/> cannot render unless an organization is active. Since no organization is currently active, this is no-op.",cannotRenderAnyOrganizationComponent:e=>eJ(`The <${e}/> cannot be rendered when the feature is turned off. Visit 'dashboard.clerk.com' to enable the feature. Since the feature is turned off, this is no-op.`),cannotRenderAnyBillingComponent:e=>eJ(`The <${e}/> component cannot be rendered when billing is disabled. Visit 'https://dashboard.clerk.com/last-active?path=billing/settings' to follow the necessary steps to enable billing. Since billing is disabled, this is no-op.`),cannotOpenUserProfile:"The UserProfile modal cannot render unless a user is signed in. Since no user is signed in, this is no-op.",cannotOpenCheckout:"The Checkout drawer cannot render unless a user is signed in. Since no user is signed in, this is no-op.",cannotOpenSignInOrSignUp:"The SignIn or SignUp modals do not render when a user is already signed in, unless the application allows multiple sessions. Since a user is signed in and this application only allows a single session, this is no-op.",cannotRenderAPIKeysComponent:"The <APIKeys/> component cannot be rendered when API keys is disabled. Since API keys is disabled, this is no-op.",cannotRenderAPIKeysComponentForOrgWhenUnauthorized:"The <APIKeys/> component cannot be rendered for an organization unless a user has the required permissions. Since the user does not have the necessary permissions, this is no-op.",cannotRenderAPIKeysComponentForUserWhenDisabled:"The <APIKeys/> component cannot be rendered when user API keys are disabled. Since user API keys are disabled, this is no-op.",cannotRenderAPIKeysComponentForOrgWhenDisabled:"The <APIKeys/> component cannot be rendered when organization API keys are disabled. Since organization API keys are disabled, this is no-op.",cannotRenderOAuthConsentComponentWhenUserDoesNotExist:"<OAuthConsent/> cannot render unless a user is signed in. Since no user is signed in, this is no-op."};for(let e of Object.keys(eV)){let t=eV[e];"function"!=typeof t&&(eV[e]=eJ(t))}let eq="clerk:beforeunload",eH=["http:","https:","wails:","chrome-extension:"];function eG(e){let t=new URL(e,window.location.href);window.dispatchEvent(new CustomEvent(eq)),window.location.href=t.href}function eQ(e){return/^http(s)?:\/\//.test(e||"")}function eX(e){return e.startsWith("/")}var eY=class{#l;#c=864e5;constructor(e){this.#l=e}isEventThrottled(e){let t=Date.now(),i=this.#d(e),r=this.#l.getItem(i);return!!r&&!(t-r>this.#c)||(this.#l.setItem(i,t),!1)}#d(e){let{sk:t,pk:i,payload:r,...n}=e,s={...r,...n};return JSON.stringify(Object.keys({...r,...n}).sort().map(e=>s[e]))}},eZ=class{#h="clerk_telemetry_throttler";getItem(e){return this.#u()[e]}setItem(e,t){try{let i=this.#u();i[e]=t,localStorage.setItem(this.#h,JSON.stringify(i))}catch(e){e instanceof DOMException&&("QuotaExceededError"===e.name||"NS_ERROR_DOM_QUOTA_REACHED"===e.name)&&localStorage.length>0&&localStorage.removeItem(this.#h)}}removeItem(e){try{let t=this.#u();delete t[e],localStorage.setItem(this.#h,JSON.stringify(t))}catch{}}#u(){try{let e=localStorage.getItem(this.#h);if(!e)return{};return JSON.parse(e)}catch{return{}}}static isSupported(){return"u">typeof window&&!!window.localStorage}},e0=class{#l=new Map;#p=1e4;getItem(e){return this.#l.size>this.#p?void this.#l.clear():this.#l.get(e)}setItem(e,t){this.#l.set(e,t)}removeItem(e){this.#l.delete(e)}};let e1=new Set(["error","warn","info","debug","trace"]);var e3=class{#f;#m;#g={};#_=[];#w=null;constructor(e){this.#f={maxBufferSize:e.maxBufferSize??5,samplingRate:e.samplingRate??1,perEventSampling:e.perEventSampling??!0,disabled:e.disabled??!1,debug:e.debug??!1,endpoint:"https://clerk-telemetry.com"},!e.clerkVersion&&"u"<typeof window?this.#g.clerkVersion="":this.#g.clerkVersion=e.clerkVersion??"",this.#g.sdk=e.sdk,this.#g.sdkVersion=e.sdkVersion,this.#g.publishableKey=e.publishableKey??"";const t=eg(e.publishableKey);t&&(this.#g.instanceType=t.instanceType),e.secretKey&&(this.#g.secretKey=e.secretKey.substring(0,16)),this.#m=new eY(eZ.isSupported()?new eZ:new e0)}get isEnabled(){return!("development"!==this.#g.instanceType||this.#f.disabled||"u">typeof process&&process.env&&el(process.env.CLERK_TELEMETRY_DISABLED)||"u">typeof window&&window?.navigator?.webdriver)}get isDebug(){return this.#f.debug||"u">typeof process&&process.env&&el(process.env.CLERK_TELEMETRY_DEBUG)}record(e){try{let t=this.#y(e.event,e.payload);if(this.#b(t.event,t),!this.#v(t,e.eventSamplingRate))return;this.#_.push({kind:"event",value:t}),this.#k()}catch(e){console.error("[clerk/telemetry] Error recording telemetry event",e)}}recordLog(e){try{if(!this.#S(e))return;let t="string"==typeof e?.level&&e1.has(e.level),i="string"==typeof e?.message&&e.message.trim().length>0,r=null,n=e?.timestamp;if("number"==typeof n||"string"==typeof n){let e=new Date(n);Number.isNaN(e.getTime())||(r=e)}if(!t||!i||null===r){this.isDebug&&"u">typeof console&&console.warn("[clerk/telemetry] Dropping invalid telemetry log entry",{levelIsValid:t,messageIsValid:i,timestampIsValid:null!==r});return}let s=this.#I(),a={sdk:s.name,sdkv:s.version,cv:this.#g.clerkVersion??"",lvl:e.level,msg:e.message,ts:r.toISOString(),pk:this.#g.publishableKey||null,payload:this.#U(e.context)};this.#_.push({kind:"log",value:a}),this.#k()}catch(e){console.error("[clerk/telemetry] Error recording telemetry log entry",e)}}#v(e,t){return this.isEnabled&&!this.isDebug&&this.#A(e,t)}#S(e){return!0}#A(e,t){let i=Math.random();return!!(i<=this.#f.samplingRate&&(!1===this.#f.perEventSampling||void 0===t||i<=t))&&!this.#m.isEventThrottled(e)}#k(){if("u"<typeof window)return void this.#C();if(this.#_.length>=this.#f.maxBufferSize){this.#w&&("u">typeof cancelIdleCallback?cancelIdleCallback(Number(this.#w)):clearTimeout(Number(this.#w))),this.#C();return}this.#w||("requestIdleCallback"in window?this.#w=requestIdleCallback(()=>{this.#C(),this.#w=null}):this.#w=setTimeout(()=>{this.#C(),this.#w=null},0))}#C(){let e=[...this.#_];if(this.#_=[],this.#w=null,0===e.length)return;let t=e.filter(e=>"event"===e.kind).map(e=>e.value),i=e.filter(e=>"log"===e.kind).map(e=>e.value);t.length>0&&fetch(new URL("/v1/event",this.#f.endpoint),{headers:{"Content-Type":"application/json"},keepalive:!0,method:"POST",body:JSON.stringify({events:t})}).catch(()=>void 0),i.length>0&&fetch(new URL("/v1/logs",this.#f.endpoint),{headers:{"Content-Type":"application/json"},keepalive:!0,method:"POST",body:JSON.stringify({logs:i})}).catch(()=>void 0)}#b(e,t){this.isDebug&&(void 0!==console.groupCollapsed?(console.groupCollapsed("[clerk/telemetry]",e),console.log(t),console.groupEnd()):console.log("[clerk/telemetry]",e,t))}#I(){let e={name:this.#g.sdk,version:this.#g.sdkVersion};if("u">typeof window){let t=window;if(t.Clerk){let i=t.Clerk;if("object"==typeof i&&null!==i&&"constructor"in i&&"function"==typeof i.constructor&&i.constructor.sdkMetadata){let{name:t,version:r}=i.constructor.sdkMetadata;void 0!==t&&(e.name=t),void 0!==r&&(e.version=r)}}}return e}#y(e,t){let i=this.#I();return{event:e,cv:this.#g.clerkVersion??"",it:this.#g.instanceType??"",sdk:i.name,sdkv:i.version,...this.#g.publishableKey?{pk:this.#g.publishableKey}:{},...this.#g.secretKey?{sk:this.#g.secretKey}:{},payload:t}}#U(e){if(null==e||"object"!=typeof e)return null;try{let t=JSON.parse(JSON.stringify(e));if(t&&"object"==typeof t&&!Array.isArray(t))return t;return null}catch{return null}}};let e2="COMPONENT_MOUNTED",e4=new Set(["SignIn","SignUp"]);function e6(e){return function(t,i,r){return{event:e,eventSamplingRate:e===e2?e4.has(t)?1:.1:.1,payload:{component:t,appearanceProp:!!i?.appearance,theme:!!i?.appearance?.theme,elements:!!i?.appearance?.elements,variables:!!i?.appearance?.variables,...r}}}}function e5(e,t,i){return e6(e2)(e,t,i)}function e8(e,t,i){return e6("COMPONENT_OPENED")(e,t,i)}function e7(e){return"string"==typeof e?e:"object"==typeof e&&null!==e&&"name"in e&&"string"==typeof e.name?e.name:void 0}var e9=l(7009);let te=!1,tt=null,ti=!1,tr=[];function tn(e,t,i,r){te&&(tr.push({level:e,message:t,context:i,source:r,ts:Date.now()}),tr.length>200&&tr.shift())}async function ts(e){try{if(!te||tt)return;let{getDebugLogger:t}=await l.e("698").then(l.bind(l,1521)),i=await t({logLevel:e?.logLevel,telemetryCollector:e?.telemetryCollector});if(i&&(tt=i)&&0!==tr.length){for(let e of tr){let t={...e.context||{},__preInit:!0,__preInitTs:e.ts};switch(e.level){case"error":tt.error(e.message,t,e.source);break;case"warn":tt.warn(e.message,t,e.source);break;case"info":tt.info(e.message,t,e.source);break;case"debug":tt.debug(e.message,t,e.source)}}tr.length=0}}catch(e){try{console.debug?.("Debug logger initialization failed",e)}catch{}return}}let ta={debug(e,t,i){tt?tt.debug(e,t,i):tn("debug",e,t,i)},error(e,t,i){tt?tt.error(e,t,i):tn("error",e,t,i)},info(e,t,i){tt?tt.info(e,t,i):tn("info",e,t,i)},warn(e,t,i){tt?tt.warn(e,t,i):tn("warn",e,t,i)}},to={initialDelay:125,maxDelayBetweenRetries:0,factor:2,shouldRetry:(e,t)=>t<5,retryImmediately:!1,jitter:!0},tl=async e=>new Promise(t=>setTimeout(t,e)),tc=(e,t)=>t?e*(1+Math.random()):e,td=async(e,t={})=>{var i;let r,n=0,{shouldRetry:s,initialDelay:a,maxDelayBetweenRetries:o,factor:l,retryImmediately:c,jitter:d,onBeforeRetry:h}={...to,...t},u=(i={initialDelay:a,maxDelayBetweenRetries:o,factor:l,jitter:d},r=0,async()=>{let e;await tl((e=tc(e=i.initialDelay*Math.pow(i.factor,r),i.jitter),Math.min(i.maxDelayBetweenRetries||e,e))),r++});for(;;)try{return await e()}catch(e){if(!s(e,++n))throw e;h&&await h(n),c&&1===n?await tl(tc(100,d)):await u()}},th=async e=>td(e,{initialDelay:100,shouldRetry:(e,t)=>t<=3,retryImmediately:!0,factor:2});class tu{#P={"@zxcvbn-ts/core":()=>th(()=>l.e("368").then(l.bind(l,1835))),"@zxcvbn-ts/language-common":()=>th(()=>l.e("247").then(l.bind(l,3618))),"@base-org/account":()=>th(()=>l.e("943").then(l.bind(l,9018))),"@coinbase/wallet-sdk":()=>th(()=>l.e("13").then(l.bind(l,1276))),"@stripe/stripe-js":()=>th(()=>l.e("832").then(l.bind(l,8755)))};import(e){return this.#P[e]?this.#P[e]():Promise.resolve(void 0)}}let tp=(e=!1)=>{let t,i;if(!e)return{track:async e=>{await e()},isUnloading:()=>!1};let r=(t=!1,i=()=>t=!0,{startListening:()=>{window.addEventListener("beforeunload",i),window.addEventListener(eq,i)},stopListening:()=>{window.removeEventListener("beforeunload",i),window.removeEventListener(eq,i)},isUnloading:()=>t});return{track:async e=>{r.startListening(),await e(),r.stopListening()},isUnloading:r.isUnloading}},tf=e=>({amount:e.amount,amountFormatted:e.amount_formatted,currency:e.currency,currencySymbol:e.currency_symbol}),tm=e=>({proration:e.proration?{amount:tf(e.proration.amount),cycleDaysRemaining:e.proration.cycle_days_remaining,cycleDaysTotal:e.proration.cycle_days_total,cycleRemainingPercent:e.proration.cycle_remaining_percent}:null,payer:e.payer?{remainingBalance:tf(e.payer.remaining_balance),appliedAmount:tf(e.payer.applied_amount)}:null,total:tf(e.total)}),tg=e=>{let t={grandTotal:tf(e.grand_total),subtotal:tf(e.subtotal),taxTotal:tf(e.tax_total)};return"past_due"in e&&(t.pastDue=e.past_due?tf(e.past_due):null),"credit"in e&&(t.credit=e.credit?tf(e.credit):null),"per_unit_totals"in e&&(t.perUnitTotals=e.per_unit_totals?e.per_unit_totals.map(e=>({name:e.name,blockSize:e.block_size,tiers:e.tiers.map(e=>({quantity:e.quantity,feePerBlock:tf(e.fee_per_block),total:tf(e.total)}))})):void 0),"credits"in e&&(t.credits=e.credits?tm(e.credits):null),"total_due_now"in e&&(t.totalDueNow=tf(e.total_due_now)),"total_due_after_free_trial"in e&&(t.totalDueAfterFreeTrial=e.total_due_after_free_trial?tf(e.total_due_after_free_trial):null),t};function t_(e,t=""){return e.errors&&!!e.errors.find(e=>e.code===t)}let tw=P({packageName:"@clerk/clerk-js"});function ty(e){return decodeURIComponent(globalThis.atob(e.replace(/_/g,"/").replace(/-/g,"+")).split("").map(e=>"%"+("00"+e.charCodeAt(0).toString(16)).slice(-2)).join(""))}function tb(e){let t=(e||"").split("."),[i,r,n]=t;if(3!==t.length||!i||!r||!n)throw Error("JWT could not be decoded");let s=JSON.parse(ty(r)),a={__raw:e};return Object.keys(s).forEach(e=>{a[e]=s[e]}),{encoded:{header:i,payload:r,signature:n},header:JSON.parse(ty(i)),claims:a}}function tv(){if(!n())return null;try{let e=navigator?.language;if(!e||"string"!=typeof e||""===e.trim())return null;return e}catch{return null}}function tk(){return void 0!==globalThis.document}function tS(){if(!function(){if(!tk())return!1;try{return window.self!==window.top}catch{return!0}}())return!1;try{return window.top?.location.href,!1}catch{return!0}}var tI=class e{#T=[];#O={metamask:"MetaMask",okx_wallet:"OKX Wallet"};static #E=null;constructor(){if("u"<typeof window)return;window.addEventListener("eip6963:announceProvider",this.#x),window.dispatchEvent(new Event("eip6963:requestProvider"))}static getInstance(){return e.#E||(e.#E=new e),e.#E}get=e=>{let t=this.#T.find(t=>t.info.name===this.#O[e])?.provider;return void 0!==t?t:window.ethereum};#x=e=>{this.#T.some(t=>t.info.uuid===e.detail.info.uuid)||this.#T.push(e.detail)}},tU=class e{#R=void 0;#z=!1;static #E=null;async #M(){if(this.#z)return;this.#z=!0;let e=await l.e("647").then(l.bind(l,7410)).then(e=>e.getWallets());this.#R=e.get(),e.on("register",()=>{this.#R=e.get()}),e.on("unregister",()=>{this.#R=e.get()})}#F(e){return e.chains?.some(e=>e.startsWith("solana:"))??!1}#N(e){return"solana:signMessage"in e.features}static getInstance(){return e.#E||(e.#E=new e),e.#E}get=async e=>{await this.#M();let t=(this.#R||[]).find(t=>t.name===e&&this.#F(t)&&this.#N(t));if(t&&this.#F(t))return t;if("u"<typeof window)return;let i=window.solana;if(i&&"function"==typeof i.connect&&"function"==typeof i.signMessage)return i}};let tA=()=>(function(e){let t=P({packageName:"@clerk/shared"});async function i(e){let{provider:t,walletName:i}=e,r=await f(t,i);if(!r)return"";if("solana"===t){let e=await r.features["standard:connect"].connect();return e&&e.accounts[0].address||""}let n=await r.request({method:"eth_requestAccounts"});return n&&n[0]||""}let r=async e=>{let{identifier:t,nonce:i,provider:r,walletName:n=""}=e,s=await f(r,n);if(!s)return"";if("solana"===r)try{let e=s.accounts.find(e=>e.address===t);if(!e)return console.warn(`Wallet account with address ${t} not found`),"";let r=await s.features["solana:signMessage"]?.signMessage({account:e,message:new TextEncoder().encode(i)});return r?.[0]?.signature?btoa(String.fromCharCode(...r[0].signature)):""}catch(e){if(e instanceof Error&&e.message.includes("User rejected the request."))throw new b("Web3 signature request was rejected by the user.",{code:"web3_signature_request_rejected"});throw new b("An error occurred while generating the Solana signature.",{code:"web3_solana_signature_generation_failed",cause:e instanceof Error?e:void 0})}return await s.request({method:"personal_sign",params:[`0x${i.split("").map(e=>e.charCodeAt(0).toString(16).padStart(2,"0")).join("")}`,t]})};async function n(){return await i({provider:"metamask"})}async function s(){return await i({provider:"coinbase_wallet"})}async function a(){return await i({provider:"okx_wallet"})}async function o(){return await i({provider:"base"})}async function l(e){return await i({provider:"solana",walletName:e})}async function c(e){return await r({...e,provider:"metamask"})}async function d(e){return await r({...e,provider:"coinbase_wallet"})}async function h(e){return await r({...e,provider:"okx_wallet"})}async function u(e){return await r({...e,provider:"base"})}async function p(e){return await r({...e,provider:"solana"})}async function f(i,r){if("coinbase_wallet"===i){let t=await e.import("@coinbase/wallet-sdk");return t?t.createCoinbaseWalletSDK({appName:"u">typeof window&&window.Clerk?.__internal_environment?.displayConfig?.applicationName||"u">typeof document&&document.title||"Web3 Application",preference:{options:"all"}}).getProvider():null}if("base"===i)try{let t=await e.import("@base-org/account");if(!t)return null;return t.createBaseAccountSDK({appName:"u">typeof window&&window.Clerk?.__internal_environment?.displayConfig?.applicationName||"u">typeof document&&document.title||"Web3 Application"}).getProvider()}catch{return null}return"solana"===i?r&&0!==r.length?await tU.getInstance().get(r):void t.throw("Wallet name must be provided to get Solana wallet provider"):tI.getInstance().get(i)}return{getWeb3Identifier:i,generateWeb3Signature:r,getMetamaskIdentifier:n,getCoinbaseWalletIdentifier:s,getOKXWalletIdentifier:a,getBaseIdentifier:o,getSolanaIdentifier:l,generateSignatureWithMetamask:c,generateSignatureWithCoinbaseWallet:d,generateSignatureWithOKXWallet:h,generateSignatureWithBase:u,generateSignatureWithSolana:p}})(new tu),tC="environment",tP=JSON.stringify,tT=JSON.parse;class tO{static _key(e){return`__clerk_${e}`}static isExpired(e){return!!e.exp&&Date.now()>e.exp}static setItem(e,t,i){try{let r={value:t,...i&&{exp:Date.now()+i}};window.localStorage.setItem(this._key(e),tP(r))}catch{}}static getItem(e,t){try{let i=window.localStorage.getItem(this._key(e));if(!i)return t;let r=tT(i);if(!r)return t;if(this.isExpired(r))return this.removeItem(e),t;return r?.value??t}catch{return t}}static removeItem(e){try{window.localStorage.removeItem(this._key(e))}catch{}}}let tE="ClerkJS:";function tx(e=""){throw Error(`${tE} Something went wrong initializing Clerk in development mode.${e&&` ${e}`}`)}function tR(e){throw Error(`${tE} Something went wrong initializing Clerk during the ${e} flow. Please contact support.`)}function tz(e){throw Error(`${tE} You need to start a ${e} flow by calling ${e}.create() first.`)}function tM(e,t){throw Error(`${tE} Strategy "${t}" is not a valid strategy for ${e}.`)}function tF(e){throw Error(`${tE} You need to start a ${e} flow by calling ${e}.create({ identifier: 'your web3 wallet address' }) first`)}function tN(e=""){throw Error(`${tE} Missing '${e}' option`)}function tW(e,t){throw Error(`${tE} Response: ${e||0} not supported yet.
|
|
For more information contact us at ${t}`)}function tD(e){throw Error(`${tE} Missing publicKey. When calling 'navigator.credentials.${e}()' it is required to pass a publicKey object.`)}async function tL(e="",t){let{async:i,defer:r,beforeLoad:n,crossOrigin:s,nonce:a}=t||{};return td(()=>new Promise((t,o)=>{e||o(Error("loadScript cannot be called without a src")),document&&document.body||o(Error("loadScript cannot be called when document does not exist"));let l=document.createElement("script");s&&l.setAttribute("crossorigin",s),l.async=i||!1,l.defer=r||!1,l.addEventListener("load",()=>{l.remove(),t(l)}),l.addEventListener("error",t=>{l.remove(),o(t.error??Error(`failed to load script: ${e}`))}),l.src=e,l.nonce=a,n?.(l),document.body.appendChild(l)}),{shouldRetry:(e,t)=>t<=5})}async function t$(e){return window.turnstile||await tj(e).catch(()=>{throw{captchaError:"captcha_script_failed_to_load"}}),window.turnstile}async function tj(e){try{return await tL("https://challenges.cloudflare.com/turnstile/v0/api.js?render=explicit",{defer:!0,nonce:e})}catch(e){throw console.warn("Clerk: Failed to load the CAPTCHA script from Cloudflare. If you see a CSP error in your browser, please add the necessary CSP rules to your app. Visit https://clerk.com/docs/security/clerk-csp for more information."),e}}function tB(e){try{let t=e.getAttribute("data-cl-theme")||void 0,i=e.getAttribute("data-cl-language")||void 0,r=e.getAttribute("data-cl-size")||void 0;return{theme:t,language:i,size:r}}catch{return{theme:void 0,language:void 0,size:void 0}}}let tJ=async e=>{let t,i,r,n,{siteKey:s,widgetType:a,invisibleSiteKey:o,nonce:l}=e,{modalContainerQuerySelector:c,modalWrapperQuerySelector:d,closeModal:h,openModal:u}=e,p=await t$(l),f=[],m="",g="",_=s,w=0,y=null,b="invisible";if(c&&d){y=a,n=c,b="modal";try{await u?.()}catch{throw{captchaError:"modal_component_not_ready"}}let e=await new Promise(e=>{if(document.querySelector(c))return e(document.querySelector(c));let t=new MutationObserver(()=>{document.querySelector(c)&&(t.disconnect(),e(document.querySelector(c)))});t.observe(document.body,{childList:!0,subtree:!0})});if(e){let{theme:n,language:s,size:a}=tB(e);t=n,r=s,i=a}}if(!n&&"smart"===a){let e=document.getElementById(Q);if(e){b="smart",y="smart",n=`#${Q}`,e.style.maxHeight="0";let{theme:s,language:a,size:o}=tB(e);t=s,r=a,i=o}else console.error("Cannot initialize Smart CAPTCHA widget because the `clerk-captcha` DOM element was not found; falling back to Invisible CAPTCHA widget. If you are using a custom flow, visit https://clerk.com/docs/guides/development/custom-flows/authentication/bot-sign-up-protection for instructions")}if(!n){b="invisible",_=o,y="invisible",n=`.${X}`;let e=document.createElement("div");e.classList.add(X),e.style.display="none",document.body.appendChild(e)}let v=async()=>new Promise((s,a)=>{try{let o=p.render(n,{sitekey:_,appearance:"interaction-only",theme:t||"auto",size:i||"normal",language:r||"auto",action:e.action,retry:"never","refresh-expired":"auto",callback:function(e){h?.(),s([e,o])},"before-interactive-callback":()=>{if(d){let e=document.querySelector(d);e?.style.setProperty("visibility","visible"),e?.style.setProperty("pointer-events","all")}else{let e=document.getElementById(Q);e&&(e.style.maxHeight="unset",e.style.minHeight="compact"===i?"140px":"68px",e.style.marginBottom="1.5rem")}},"error-callback":function(e){var t;(f.push(e),w<2&&(t=e.toString(),["crashed","undefined_error","102","103","104","106","110600","300","600"].find(e=>t.startsWith(e))))?setTimeout(()=>{n&&!document.querySelector(n)?a([f.join(","),o]):(p.reset(o),w++)},250):a([f.join(","),o])},"unsupported-callback":function(){return a(["This browser is not supported by the CAPTCHA.",o]),!0}})}catch(e){a([e,void 0])}});try{[m,g]=await v(),p.remove(g)}catch([e,t]){throw t&&p.remove(t),{captchaError:e}}finally{if("modal"===b&&h?.(),"invisible"===b){let e=document.querySelector(`.${X}`);e&&document.body.removeChild(e)}if("smart"===b){let e=document.getElementById(Q);e&&(e.style.maxHeight="0",e.style.minHeight="unset",e.style.marginBottom="unset")}}return{captchaToken:m,captchaWidgetType:y}},tK=e=>{let t=e.__internal_environment,i=t?t.displayConfig.captchaProvider:"turnstile",r=e.__internal_getOption?.("nonce");return{captchaSiteKey:t?t.displayConfig.captchaPublicKey:null,captchaWidgetType:t?t.displayConfig.captchaWidgetType:null,captchaProvider:i,captchaPublicKeyInvisible:t?t.displayConfig.captchaPublicKeyInvisible:null,canUseCaptcha:t?t.userSettings.signUp.captcha_enabled&&e.isStandardBrowser:null,nonce:r||void 0}};class tV{clerk;constructor(e){this.clerk=e}async invisible(e){let{captchaSiteKey:t,canUseCaptcha:i,captchaPublicKeyInvisible:r,nonce:n}=tK(this.clerk);return i&&t&&r?{...await tJ({action:e?.action,captchaProvider:"turnstile",invisibleSiteKey:r,nonce:e?.nonce||n||void 0,siteKey:r,widgetType:"invisible"}).catch(e=>e.captchaError?{captchaError:e.captchaError}:{captchaError:e?.message||e||"unexpected_captcha_error"}),captchaAction:e?.action}:{captchaError:"captcha_unavailable",captchaAction:e?.action}}async managedOrInvisible(e){let{captchaSiteKey:t,canUseCaptcha:i,captchaWidgetType:r,captchaProvider:n,captchaPublicKeyInvisible:s,nonce:a}=tK(this.clerk);if(i&&t&&s){let i=await tJ({captchaProvider:n,invisibleSiteKey:s,nonce:a||void 0,siteKey:t,widgetType:r,...e}).catch(t=>t.captchaError?{captchaError:t.captchaError}:e?.action==="verify"?{captchaError:t?.message||t||"unexpected_captcha_error"}:void 0);return e?.action==="verify"?{...i,captchaAction:"verify"}:i}return e?.action==="verify"?{captchaError:"captcha_unavailable",captchaAction:e?.action}:{}}async managedInModal(e){if("u"<typeof document)throw new b("Captcha is not supported in non-browser environments",{code:"captcha_unavailable"});return this.managedOrInvisible({modalWrapperQuerySelector:"#cl-modal-captcha-wrapper",modalContainerQuerySelector:"#cl-modal-captcha-container",openModal:()=>this.clerk.__internal_openBlankCaptchaModal(),closeModal:()=>this.clerk.__internal_closeBlankCaptchaModal(),action:e?.action})}}class tq{client;CaptchaChallengeImpl;static instance;inflightException=null;captchaRetryCount=0;MAX_RETRY_ATTEMPTS=3;static getInstance(){return tq.instance||(tq.instance=new tq(i5,tV)),tq.instance}constructor(e,t){this.client=e,this.CaptchaChallengeImpl=t}async execute(e,t){if(this.captchaAttemptsExceeded())throw new b("Security verification failed. Please try again by refreshing the page, clearing your browser cookies, or using a different web browser.",{code:"captcha_client_attempts_exceeded"});try{return this.inflightException&&await this.inflightException,await t()}catch(r){let i;if(!I(r)||v(r)&&"network_error"===r.code||r.errors[0]?.code!=="requires_captcha")throw r;if(this.inflightException)return await this.inflightException,await t();this.inflightException=new Promise(e=>i=e);try{let t=await this.managedChallenge(e);t?.captchaError!=="modal_component_not_ready"&&(await this.client.getOrCreateInstance().__internal_sendCaptchaToken(t),this.captchaRetryCount=0)}catch(e){throw this.captchaRetryCount++,e}finally{i(),this.inflightException=null}return await t()}}managedChallenge(e){return new this.CaptchaChallengeImpl(e).managedInModal({action:"verify"})}captchaAttemptsExceeded=()=>this.captchaRetryCount>=this.MAX_RETRY_ATTEMPTS}class tH{static clerk;id;pathRoot="";static get fapiClient(){return tH.clerk.getFapiClient()}async reload(e){let{rotatingTokenNonce:t}=e||{};return this._baseGet({forceUpdateClient:!0,rotatingTokenNonce:t})}isNew(){return!this.id}static async _fetch(e,t={}){return tq.getInstance().execute(this.clerk,()=>this._baseFetch(e,t))}static async _baseFetch(e,t={}){let i;tH.fapiClient||function(){throw Error(`${tE} Missing FAPI client in resources.`)}();let{fetchMaxTries:r}=t;try{i=await tH.fapiClient.request(e,{fetchMaxTries:r})}catch(t){if(this.shouldRethrowOfflineNetworkErrors())throw new b(t?.message||t,{code:"network_error"});if(!d())return ta.warn("Network request failed while offline, returning null",{method:e.method,path:e.path},"baseResource"),null;throw t}let{payload:n,status:s,statusText:a,headers:o}=i;if(o){let e=o.get("x-country");this.clerk.__internal_setCountry(e?e.toLowerCase():null)}if(("GET"!==e.method||t.forceUpdateClient)&&!t.skipUpdateClient&&this._updateClient(n),s>=200&&s<=299)return n;if(s>=400){let e=n?.errors,t=e?.[0]?.long_message,i=e?.[0]?.code;401===s&&"dev_browser_unauthenticated"===i?await tH.clerk.__internal_handleUnauthenticatedDevBrowser():401===s&&"requires_captcha"!==i&&await tH.clerk.handleUnauthenticated(),function(e,t){var i;if(!t||!t[0])return;let r=t[0],n=r.long_message;if("origin_invalid"===r.code&&((i=tH.clerk.publishableKey).startsWith("live_")||i.startsWith("pk_live_"))){let i=tH.clerk.frontendApi.replace("clerk.","");throw new S(`Clerk: Production Keys are only allowed for domain "${i}".
|
|
API Error: ${n}`,{data:t,status:e})}}(s,e);let r={data:e,status:s};if(429===s&&o){let e=o.get("retry-after");if(e){let t=parseInt(e,10);isNaN(t)||(r.retryAfter=t)}}throw new S(t||a,r)}return null}static _updateClient(e){let t=i6(e);t&&tH.clerk&&tH.clerk.updateClient(t)}path(e){let t=this.pathRoot;if(this.isNew())return t;let i=t.replace(/[^/]$/,"$&/")+encodeURIComponent(this.id);return e?i.replace(/[^/]$/,"$&/")+encodeURIComponent(e):i}withDefault(e,t){return e??t}async _baseGet(e={}){let t=await tH._fetch({method:"GET",path:this.path(),rotatingTokenNonce:e.rotatingTokenNonce},e);return this.fromJSON(t?.response||t)}async _baseMutate(e){let{action:t,body:i,method:r,path:n}=e,s=await tH._fetch({method:r,path:n||this.path(t),body:i});return this.fromJSON(s?.response||s)}async _baseMutateBypass(e){let{action:t,body:i,method:r,path:n}=e,s=await tH._baseFetch({method:r,path:n||this.path(t),body:i});return this.fromJSON(s?.response||s)}async _basePost(e={}){return this._baseMutate({...e,method:"POST"})}async _basePostBypass(e={}){return this._baseMutateBypass({...e,method:"POST"})}async _basePut(e={}){return this._baseMutate({...e,method:"PUT"})}async _basePatch(e={}){return this._baseMutate({...e,method:"PATCH"})}async _baseDelete(e={}){await this._baseMutate({...e,method:"DELETE"})}static shouldRethrowOfflineNetworkErrors(){let e=tH.clerk?.__internal_getOption?.("experimental");return e?.rethrowOfflineNetworkErrors||!1}}function tG(e){let t=new Date(e||new Date);return t instanceof Date&&!isNaN(t.getTime())?t:new Date}class tQ extends tH{pathRoot="/api_keys";id;type;name;subject;scopes;claims;revoked;revocationReason;expired;expiration;createdBy;description;secret;lastUsedAt;createdAt;updatedAt;constructor(e){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.id=e.id,this.type=e.type,this.name=e.name,this.subject=e.subject,this.scopes=e.scopes,this.claims=e.claims,this.revoked=e.revoked,this.revocationReason=e.revocation_reason,this.expired=e.expired,this.expiration=e.expiration?tG(e.expiration):null,this.createdBy=e.created_by,this.description=e.description,this.secret=e.secret,this.lastUsedAt=e.last_used_at?tG(e.last_used_at):null,this.updatedAt=tG(e.updated_at),this.createdAt=tG(e.created_at)),this}__internal_toSnapshot(){return{object:"api_key",id:this.id,type:this.type,name:this.name,subject:this.subject,scopes:this.scopes,claims:this.claims,revoked:this.revoked,revocation_reason:this.revocationReason,expired:this.expired,expiration:this.expiration?this.expiration.getTime():null,created_by:this.createdBy,description:this.description,last_used_at:this.lastUsedAt?this.lastUsedAt.getTime():null,created_at:this.createdAt.getTime(),updated_at:this.updatedAt.getTime()}}}class tX extends tH{claimedAt=null;reverification=!1;singleSessionMode=!1;preferredChannels=null;sessionMinter=!1;constructor(e=null){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.claimedAt=this.withDefault(e.claimed_at?tG(e.claimed_at):null,this.claimedAt),this.reverification=this.withDefault(e.reverification,this.reverification),this.singleSessionMode=this.withDefault(e.single_session_mode,this.singleSessionMode),this.preferredChannels=this.withDefault(e.preferred_channels,this.preferredChannels),this.sessionMinter=this.withDefault(e.session_minter,this.sessionMinter)),this}__internal_toSnapshot(){return{claimed_at:this.claimedAt?this.claimedAt.getTime():null,id:this.id??"",object:"auth_config",reverification:this.reverification,single_session_mode:this.singleSessionMode,session_minter:this.sessionMinter}}}(_=w||(w={}))[_.None=0]="None",_[_.Mutable=1]="Mutable",_[_.Watching=2]="Watching",_[_.RecursedCheck=4]="RecursedCheck",_[_.Recursed=8]="Recursed",_[_.Dirty=16]="Dirty",_[_.Pending=32]="Pending";let tY=[],{link:tZ,unlink:t0,propagate:t1,checkDirty:t3,endTracking:t2,startTracking:t4,shallowPropagate:t6}=function({update:e,notify:t,unwatched:i}){let r=0;return{link:function(e,t){let i,n=t.depsTail;if(void 0!==n&&n.dep===e)return;if(4&t.flags&&void 0!==(i=void 0!==n?n.nextDep:t.deps)&&i.dep===e){i.version=r,t.depsTail=i;return}let s=e.subsTail;if(void 0!==s&&s.version===r&&s.sub===t)return;let a=t.depsTail=e.subsTail={version:r,dep:e,sub:t,prevDep:n,nextDep:i,prevSub:s,nextSub:void 0};void 0!==i&&(i.prevDep=a),void 0!==n?n.nextDep=a:t.deps=a,void 0!==s?s.nextSub=a:e.subs=a},unlink:n,propagate:function(e){let i,r=e.nextSub;e:for(;;){let n=e.sub,s=n.flags;if(3&s&&(60&s?12&s?4&s?!(48&s)&&function(e,t){let i=t.depsTail;if(void 0!==i){let r=t.deps;do{if(r===e)return!0;if(r===i)break;r=r.nextDep}while(void 0!==r)}return!1}(e,n)?(n.flags=40|s,s&=1):s=0:n.flags=-9&s|32:s=0:n.flags=32|s,2&s&&t(n),1&s)){let t=n.subs;if(void 0!==t){e=t,void 0!==t.nextSub&&(i={value:r,prev:i},r=e.nextSub);continue}}if(void 0!==(e=r)){r=e.nextSub;continue}for(;void 0!==i;)if(e=i.value,i=i.prev,void 0!==e){r=e.nextSub;continue e}break}},checkDirty:function(t,i){let r,n=0;e:for(;;){let a=t.dep,o=a.flags,l=!1;if(16&i.flags)l=!0;else if((17&o)==17){if(e(a)){let e=a.subs;void 0!==e.nextSub&&s(e),l=!0}}else if((33&o)==33){(void 0!==t.nextSub||void 0!==t.prevSub)&&(r={value:t,prev:r}),t=a.deps,i=a,++n;continue}if(!l&&void 0!==t.nextDep){t=t.nextDep;continue}for(;n;){--n;let a=i.subs,o=void 0!==a.nextSub;if(o?(t=r.value,r=r.prev):t=a,l){if(e(i)){o&&s(a),i=t.sub;continue}}else i.flags&=-33;if(i=t.sub,void 0!==t.nextDep){t=t.nextDep;continue e}l=!1}return l}},endTracking:function(e){let t=e.depsTail,i=void 0!==t?t.nextDep:e.deps;for(;void 0!==i;)i=n(i,e);e.flags&=-5},startTracking:function(e){++r,e.depsTail=void 0,e.flags=-57&e.flags|4},shallowPropagate:s};function n(e,t=e.sub){let r=e.dep,s=e.prevDep,a=e.nextDep,o=e.nextSub,l=e.prevSub;return void 0!==a?a.prevDep=s:t.depsTail=s,void 0!==s?s.nextDep=a:t.deps=a,void 0!==o?o.prevSub=l:r.subsTail=l,void 0!==l?l.nextSub=o:void 0===(r.subs=o)&&i(r),a}function s(e){do{let i=e.sub,r=e.nextSub,n=i.flags;(48&n)==32&&(i.flags=16|n,2&n&&t(i)),e=r}while(void 0!==e)}}({update:e=>"getter"in e?ir(e):is(e,e.value),notify:function e(t){let i=t.flags;if(!(64&i)){t.flags=64|i;let r=t.subs;void 0!==r?e(r.sub):tY[t7++]=t}},unwatched(e){if("getter"in e){let t=e.deps;if(void 0!==t){e.flags=17;do t=t0(t,e);while(void 0!==t)}}else"previousValue"in e||ic.call(e)}}),t5=0,t8=0,t7=0;function t9(t){let i=e;return e=t,i}function ie(e){return il.bind({previousValue:e,value:e,subs:void 0,subsTail:void 0,flags:1})}function it(e){return io.bind({value:void 0,subs:void 0,subsTail:void 0,deps:void 0,depsTail:void 0,flags:17,getter:e})}function ii(i){let r={fn:i,subs:void 0,subsTail:void 0,deps:void 0,depsTail:void 0,flags:2};void 0!==e?tZ(r,e):void 0!==t&&tZ(r,t);let n=t9(r);try{r.fn()}finally{t9(n)}return ic.bind(r)}function ir(e){let t=t9(e);t4(e);try{let t=e.value;return t!==(e.value=e.getter(t))}finally{t9(t),t2(e)}}function is(e,t){return e.flags=1,e.previousValue!==(e.previousValue=t)}function ia(){for(;t8<t7;){let e=tY[t8];tY[t8++]=void 0,function e(t,i){if(16&i||32&i&&t3(t.deps,t)){let e=t9(t);t4(t);try{t.fn()}finally{t9(e),t2(t)}return}32&i&&(t.flags=-33&i);let r=t.deps;for(;void 0!==r;){let t=r.dep,i=t.flags;64&i&&e(t,t.flags=-65&i),r=r.nextDep}}(e,e.flags&=-65)}t8=0,t7=0}function io(){let i=this.flags;if(16&i||32&i&&t3(this.deps,this)){if(ir(this)){let e=this.subs;void 0!==e&&t6(e)}}else 32&i&&(this.flags=-33&i);return void 0!==e?tZ(this,e):void 0!==t&&tZ(this,t),this.value}function il(...t){if(t.length){let e=t[0];if(this.value!==(this.value=e)){this.flags=17;let e=this.subs;void 0!==e&&(t1(e),t5||ia())}}else{let t=this.value;if(16&this.flags&&is(this,t)){let e=this.subs;void 0!==e&&t6(e)}return void 0!==e&&tZ(this,e),t}}function ic(){let e=this.deps;for(;void 0!==e;)e=t0(e,this);let t=this.subs;void 0!==t&&t0(t),this.flags=0}function id(e){let{pageSize:t,initialPage:i,...r}=e||{},n=t??10;return new URLSearchParams({...Object.entries(r).reduce((e,[t,i])=>(void 0!==i&&(e[t]=i),e),{}),limit:n+"",offset:((i??1)-1)*n+""})}class ih{static #W="/billing";static path(e,t){let{orgId:i}=t||{},r=i?`/organizations/${i}`:"/me";return`${r}${ih.#W}${e}`}getPlans=async e=>{let{for:t,...i}=e||{},r={...i,payer_type:"organization"===t?"org":"user"};return await tH._fetch({path:`${ih.#W}/plans`,method:"GET",search:id(r)}).then(e=>{let{data:t,total_count:i}=e;return{total_count:i,data:t.map(e=>new iF(e))}})};getPlan=async e=>new iF(await tH._fetch({path:`${ih.#W}/plans/${e.id}`,method:"GET"}));getSubscription=async e=>await tH._fetch({path:ih.path("/subscription",{orgId:e.orgId}),method:"GET"}).then(e=>new iD(e?.response));getStatements=async e=>{let{orgId:t,...i}=e;return await tH._fetch({path:ih.path("/statements",{orgId:t}),method:"GET",search:id(i)}).then(e=>{let{data:t,total_count:i}=e?.response;return{total_count:i,data:t.map(e=>new iN(e))}})};getStatement=async e=>new iN((await tH._fetch({path:ih.path(`/statements/${e.id}`,{orgId:e.orgId}),method:"GET"}))?.response);getPaymentAttempts=async e=>{let{orgId:t,...i}=e;return await tH._fetch({path:ih.path("/payment_attempts",{orgId:t}),method:"GET",search:id(i)}).then(e=>{let{data:t,total_count:i}=e;return{total_count:i,data:t.map(e=>new iT(e))}})};getPaymentAttempt=async e=>new iT(await tH._fetch({path:ih.path(`/payment_attempts/${e.id}`,{orgId:e.orgId}),method:"GET"}));startCheckout=async e=>{let{orgId:t,...i}=e;return new iC((await tH._fetch({path:ih.path("/checkouts",{orgId:t}),method:"POST",body:i}))?.response)}}let iu=ie({resource:null}),ip=ie({error:null}),im=ie({status:"idle"}),ig=it(()=>{let e=iu().resource,t=ip().error,i=im().status;return{errors:iU(t,{identifier:null,password:null,code:null}),fetchStatus:i,signIn:e?e.__internal_future:null}}),i_=ie({resource:null}),iw=ie({error:null}),iy=ie({status:"idle"}),ib=it(()=>{let e=i_().resource,t=iw().error,i=iy().status;return{errors:iU(t,{firstName:null,lastName:null,emailAddress:null,phoneNumber:null,password:null,username:null,code:null,captcha:null,legalAccepted:null}),fetchStatus:i,signUp:e?e.__internal_future:null}}),iv=ie({resource:null}),ik=ie({error:null}),iS=ie({status:"idle"}),iI=it(()=>{let e=iv().resource,t=ik().error,i=iS().status;return{errors:iU(t,{emailAddress:null}),fetchStatus:i,waitlist:e}});function iU(e,t){let i={fields:{...t},raw:null,global:null};if(!e)return i;if(!I(e))return i.raw=[e],i.global=[L(e)],i;function r(e){return"meta"in e&&e.meta&&"paramName"in e.meta&&void 0!==e.meta.paramName}return e.errors.some(r)?e.errors.forEach(e=>{if(i.raw?i.raw.push(e):i.raw=[e],r(e)){let t=er(e.meta.paramName);t in i.fields&&(i.fields[t]=e)}}):(i.raw=[e],i.global=[L(e)]),i}class iA extends tH{id;createdAt;updatedAt;imageUrl;userId=null;email;firstName;lastName;organizationId=null;organizationName;constructor(e){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.id=e.id,e.created_at&&(this.createdAt=tG(e.created_at)),e.updated_at&&(this.updatedAt=tG(e.updated_at)),this.imageUrl=e.image_url,this.userId=e.user_id,this.email=e.email,this.firstName=e.first_name,this.lastName=e.last_name,this.organizationId=e.organization_id,this.organizationName=e.organization_name),this}}class iC extends tH{id;externalClientSecret;externalGatewayId;paymentMethod;plan;planPeriod;planPeriodStart;status;totals;isImmediatePlanChange;freeTrialEndsAt;payer;needsPaymentMethod;constructor(e=null){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.id=e.id,this.externalClientSecret=e.external_client_secret,this.externalGatewayId=e.external_gateway_id,this.paymentMethod=e.payment_method?new iz(e.payment_method):void 0,this.plan=new iF(e.plan),this.planPeriod=e.plan_period,this.planPeriodStart=e.plan_period_start,this.status=e.status,this.totals=tg(e.totals),this.isImmediatePlanChange=e.is_immediate_plan_change,e.free_trial_ends_at&&(this.freeTrialEndsAt=tG(e.free_trial_ends_at)),this.payer=new iA(e.payer),this.needsPaymentMethod=e.needs_payment_method),this}confirm=e=>td(()=>this._basePatch({path:ih.path(`/checkouts/${this.id}/confirm`,{orgId:this.payer.organizationId}),body:e}),{factor:1.1,maxDelayBetweenRetries:2e3,initialDelay:2e3,jitter:!1,shouldRetry(e,t){if(!I(e)||t>=4)return!1;let i=e?.status,r=409===i&&e.errors?.[0]?.code==="checkout_already_in_progress";return i>=500||r}})}class iP{resource=new iC(null);config;signals;pendingOperations=new Map;constructor(e,t){this.config=t,this.signals=e,this.signals.resourceSignal({resource:this})}get status(){return this.resource.status??"needs_initialization"}get externalClientSecret(){return this.resource.externalClientSecret}get externalGatewayId(){return this.resource.externalGatewayId}get plan(){return this.resource.plan}get planPeriod(){return this.resource.planPeriod}get totals(){return this.resource.totals}get isImmediatePlanChange(){return this.resource.isImmediatePlanChange}get freeTrialEndsAt(){return this.resource.freeTrialEndsAt}get payer(){return this.resource.payer}get paymentMethod(){return this.resource.paymentMethod??null}get planPeriodStart(){return this.resource.planPeriodStart}get needsPaymentMethod(){return this.resource.needsPaymentMethod}async start(){return this.runAsyncCheckoutTask("start",async()=>{let e=await iC.clerk.billing?.startCheckout(this.config);this.resource=e},()=>{this.resource=new iC(null),this.signals.resourceSignal({resource:this})})}async confirm(e){if(!this.resource.id)throw Error("Clerk: `start()` must be called before `confirm()`");return this.runAsyncCheckoutTask("confirm",async()=>{await this.resource.confirm(e)})}async finalize(e){let{navigate:t}=e||{};return this.runAsyncCheckoutTask("finalize",async()=>{if("completed"!==this.resource.status)throw Error("Clerk: `confirm()` must be called before `finalize()`");await iC.clerk.setActive({session:iC.clerk.session?.id,navigate:t})})}runAsyncCheckoutTask(e,t,i){var r,n,s;return void 0===iC.clerk.user?(console.warn("Clerk: Checkout operations cannot be performed during transitive state"),{error:null}):(r=this,n=this.signals,s=this.pendingOperations,async(e,t,i)=>{if(s.get(e))return s.get(e);let a=(async()=>{++t5,n.errorSignal({error:null}),n.fetchSignal({status:"fetching"}),i?.(),--t5||ia(),++t5;try{return await t(),n.resourceSignal({resource:r}),{error:null}}catch(e){return n.errorSignal({error:e}),{error:e}}finally{s.delete(e),n.fetchSignal({status:"idle"}),--t5||ia()}})();return s.set(e,a),a})(e,t,i)}}class iT extends tH{id;amount;failedAt=null;paidAt=null;updatedAt;paymentMethod=null;subscriptionItem;chargeType;status;constructor(e){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.id=e.id,this.amount=tf(e.amount),this.paidAt=e.paid_at?tG(e.paid_at):null,this.failedAt=e.failed_at?tG(e.failed_at):null,this.updatedAt=tG(e.updated_at),this.paymentMethod=e.payment_method?new iz(e.payment_method):null,this.subscriptionItem=new iL(e.subscription_item),this.chargeType=e.charge_type,this.status=e.status),this}}let iO="/payment_methods",iE=async e=>{let{orgId:t,...i}=e;return new iM((await tH._fetch({path:ih.path(`${iO}/initialize`,{orgId:t}),method:"POST",body:i}))?.response)},ix=async e=>{let{orgId:t,...i}=e;return new iz((await tH._fetch({path:ih.path(iO,{orgId:t}),method:"POST",body:i}))?.response)},iR=async e=>{let{orgId:t,...i}=e??{};return await tH._fetch({path:ih.path(iO,{orgId:t}),method:"GET",search:id(i)}).then(e=>{let{data:t,total_count:i}=e?.response;return{total_count:i,data:t.map(e=>new iz(e))}})};class iz extends tH{id;last4=null;paymentType;cardType=null;isDefault;isRemovable;status;walletType;expiryYear;expiryMonth;createdAt;updatedAt;constructor(e){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.id=e.id,this.last4=e.last4,this.paymentType=e.payment_type,this.cardType=e.card_type,this.isDefault=e.is_default,this.isRemovable=e.is_removable,this.status=e.status,this.walletType=e.wallet_type,this.expiryYear=e.expiry_year,this.expiryMonth=e.expiry_month,this.createdAt=null==e.created_at?e.created_at:tG(e.created_at),this.updatedAt=null==e.updated_at?e.updated_at:tG(e.updated_at)),this}async remove(e){let{orgId:t}=e??{};return new i7((await tH._fetch({path:ih.path(`/payment_methods/${this.id}`,{orgId:t}),method:"DELETE"}))?.response)}async makeDefault(e){let{orgId:t}=e??{};return await tH._fetch({path:ih.path("/payers/default_payment_method",{orgId:t}),method:"PUT",body:{payment_method_id:this.id}}),null}}class iM extends tH{externalClientSecret;externalGatewayId;paymentMethodOrder;constructor(e){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.externalClientSecret=e.external_client_secret,this.externalGatewayId=e.external_gateway_id,this.paymentMethodOrder=e.payment_method_order??["card"]),this}}class iF extends tH{id;name;fee=null;annualFee=null;annualMonthlyFee=null;description=null;isDefault;isRecurring;hasBaseFee;forPayerType;publiclyVisible;slug;avatarUrl=null;features;unitPrices;freeTrialDays;freeTrialEnabled;constructor(e){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.id=e.id,this.name=e.name,this.fee=e.fee?tf(e.fee):null,this.annualFee=e.annual_fee?tf(e.annual_fee):null,this.annualMonthlyFee=e.annual_monthly_fee?tf(e.annual_monthly_fee):null,this.description=e.description,this.isDefault=e.is_default,this.isRecurring=e.is_recurring,this.hasBaseFee=e.has_base_fee,this.forPayerType=e.for_payer_type,this.publiclyVisible=e.publicly_visible,this.slug=e.slug,this.avatarUrl=e.avatar_url,this.freeTrialDays=this.withDefault(e.free_trial_days,null),this.freeTrialEnabled=this.withDefault(e.free_trial_enabled,!1),this.features=(e.features||[]).map(e=>new rS(e)),this.unitPrices=e.unit_prices?.map(e=>({name:e.name,blockSize:e.block_size,tiers:e.tiers.map(e=>({id:e.id,startsAtBlock:e.starts_at_block,endsAfterBlock:e.ends_after_block,feePerBlock:tf(e.fee_per_block)}))}))),this}}class iN extends tH{id;status;timestamp;totals;groups;constructor(e){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.id=e.id,this.status=e.status,this.timestamp=tG(e.timestamp),this.totals=tg(e.totals),this.groups=e.groups.map(e=>new iW(e))),this}}class iW{id;timestamp;items;constructor(e){this.fromJSON(e)}fromJSON(e){return e&&(this.id=e.id,this.timestamp=tG(e.timestamp),this.items=e.items.map(e=>new iT(e))),this}}class iD extends tH{id;status;activeAt;createdAt;pastDueAt;updatedAt;nextPayment;subscriptionItems;eligibleForFreeTrial;constructor(e){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.id=e.id,this.status=e.status,this.createdAt=tG(e.created_at),this.updatedAt=e.updated_at?tG(e.updated_at):null,this.activeAt=tG(e.active_at),this.pastDueAt=e.past_due_at?tG(e.past_due_at):null,e.next_payment&&(this.nextPayment={amount:tf(e.next_payment.amount),date:tG(e.next_payment.date)}),this.subscriptionItems=(e.subscription_items||[]).map(e=>new iL(e)),this.eligibleForFreeTrial=this.withDefault(e.eligible_for_free_trial,!1)),this}}class iL extends tH{id;plan;planPeriod;status;createdAt;periodStart;periodEnd;canceledAt;pastDueAt;amount;credit;seats;credits;isFreeTrial;constructor(e){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.id=e.id,this.plan=new iF(e.plan),this.planPeriod=e.plan_period,this.status=e.status,this.createdAt=tG(e.created_at),this.pastDueAt=e.past_due_at?tG(e.past_due_at):null,this.periodStart=tG(e.period_start),this.periodEnd=e.period_end?tG(e.period_end):null,this.canceledAt=e.canceled_at?tG(e.canceled_at):null,this.amount=e.amount?tf(e.amount):void 0,this.credit=e.credit&&e.credit.amount?{amount:tf(e.credit.amount)}:void 0,this.seats=e.seats?{quantity:e.seats.quantity}:void 0,this.credits=e.credits?tm(e.credits):void 0,this.isFreeTrial=this.withDefault(e.is_free_trial,!1)),this}async cancel(e){let{orgId:t}=e;return new i7((await tH._fetch({path:ih.path(`/subscription_items/${this.id}`,{orgId:t}),method:"DELETE"}))?.response)}}let i$="token:update",ij="user:signOut",iB="environment:update",iJ="session:tokenResolved",iK=f(),iV={build:(e,t,i)=>[e,t,i].filter(Boolean).join("-"),parse:(e,t,i)=>{let r=iV.extractTemplate(e,t,i);return{organizationId:i,sessionId:t,template:r}},extractTemplate:(e,t,i)=>{if(e===t||i&&e===`${t}-${i}`)return;let r=e.slice(t.length+1);return i&&r.endsWith(`-${i}`)&&(r=r.slice(0,-(i.length+1))),r||void 0}};var iq=l(1118),iH='const respond=r=>{self.postMessage(r)},workerToTabIds={};self.addEventListener("message",r=>{const e=r.data;switch(e.type){case"setTimeout":workerToTabIds[e.id]=setTimeout(()=>{respond({id:e.id}),delete workerToTabIds[e.id]},e.ms);break;case"clearTimeout":workerToTabIds[e.id]&&(clearTimeout(workerToTabIds[e.id]),delete workerToTabIds[e.id]);break;case"setInterval":workerToTabIds[e.id]=setInterval(()=>{respond({id:e.id})},e.ms);break;case"clearInterval":workerToTabIds[e.id]&&(clearInterval(workerToTabIds[e.id]),delete workerToTabIds[e.id]);break}});\n';let iG=(e,t={})=>{if("u"<typeof Worker)return null;try{let i=new Blob([e],{type:"application/javascript; charset=utf-8"}),r=globalThis.URL.createObjectURL(i);return new Worker(r,t)}catch{return console.warn("Clerk: Cannot create worker from blob. Consider adding worker-src blob:; to your CSP"),null}},iQ=()=>{let e=0,t=()=>e++,i=new Map,r=(e,t)=>e?.postMessage(t),n=e=>{i.get(e.data.id)?.()},s=iG(iH,{name:"clerk-timers"});if(s?.addEventListener("message",n),!s)return{setTimeout:globalThis.setTimeout.bind(globalThis),setInterval:globalThis.setInterval.bind(globalThis),clearTimeout:globalThis.clearTimeout.bind(globalThis),clearInterval:globalThis.clearInterval.bind(globalThis),cleanup:iq.t};let a=()=>{s||(s=iG(iH,{name:"clerk-timers"}),s?.addEventListener("message",n))};return{setTimeout:(e,n)=>{a();let o=t();return i.set(o,()=>{e(),i.delete(o)}),r(s,{type:"setTimeout",id:o,ms:n}),o},setInterval:(e,n)=>{a();let o=t();return i.set(o,e),r(s,{type:"setInterval",id:o,ms:n}),o},clearTimeout:e=>{a(),i.delete(e),r(s,{type:"clearTimeout",id:e})},clearInterval:e=>{a(),i.delete(e),r(s,{type:"clearInterval",id:e})},cleanup:()=>{s&&(s.terminate(),s=null,i.clear())}}};var iX=l(8388),iY=l.n(iX);class iZ{lock=(function(e){let t=new(iY());return{acquireLockAndRun:async i=>{if("locks"in navigator&&isSecureContext){let t=new AbortController,r=setTimeout(()=>t.abort(),4999);return await navigator.locks.request(e,{signal:t.signal},async()=>(clearTimeout(r),await i())).catch(()=>!1)}if(await t.acquireLock(e,5e3))try{return await i()}finally{await t.releaseLock(e)}}}})("clerk.lock.refreshSessionToken");workerTimers=iQ();timerId=null;initiated=!1;startPollingForSessionToken(e){if(this.timerId||this.initiated)return;let t=async()=>{this.initiated=!0,await this.lock.acquireLockAndRun(e),this.timerId=this.workerTimers.setTimeout(t,5e3)};t()}stopPollingForSessionToken(){null!=this.timerId&&(this.workerTimers.clearTimeout(this.timerId),this.timerId=null),this.initiated=!1}}let i0="clerk",i1={broadcast:!0},i3={broadcast:!1};class i2{prefix;data;static fromKey(e){let[t,i,r=""]=e.split("::");return new i2(t,{audience:r,tokenId:i})}constructor(e,t){this.prefix=e,this.data=t,this.prefix=e,this.data=t}toKey(){let{tokenId:e,audience:t}=this.data;return[this.prefix,e,t||""].join("::")}}let i4=((e=i0)=>{let t=new Map,i=Math.random().toString(36).slice(2),r=null,n=()=>r||("u"<typeof BroadcastChannel?null:((r=new BroadcastChannel("clerk:session_token")).addEventListener("message",e=>{a(e)}),r));n();let s=i=>{n();let r=new i2(e,i),s=t.get(r.toKey());if(!s)return;let a=Math.floor(Date.now()/1e3)-s.createdAt;if((s.expiresIn??1/0)-a<=5){void 0!==s.timeoutId&&clearTimeout(s.timeoutId),void 0!==s.refreshTimeoutId&&clearTimeout(s.refreshTimeoutId),t.delete(r.toKey());return}return{entry:s.entry}},a=async({data:e})=>{let t,r=iV.build(e.sessionId,e.template,e.organizationId);if(e.tokenId!==r)return void ta.warn("Ignoring token broadcast with mismatched tokenId",{expectedTokenId:r,organizationId:e.organizationId,receivedTokenId:e.tokenId,tabId:i,template:e.template,traceId:e.traceId},"tokenCache");try{t=new nn({id:e.tokenId,jwt:e.tokenRaw,object:"token"})}catch(t){ta.warn("Failed to parse token from broadcast, skipping cache update",{error:t,tabId:i,tokenId:e.tokenId,traceId:e.traceId},"tokenCache");return}let n=t.jwt?.claims?.iat,a=t.jwt?.claims?.exp;if(!n||!a)return void ta.warn("Token missing iat/exp claim, skipping cache update",{tabId:i,tokenId:e.tokenId,traceId:e.traceId},"tokenCache");try{let t=s({tokenId:e.tokenId});if(t){let r=await t.entry.tokenResolver,s=r.jwt?.claims?.iat;if(s&&s>=n)return void ta.debug("Ignoring older token broadcast",{existingIat:s,incomingIat:n,tabId:i,tokenId:e.tokenId,traceId:e.traceId},"tokenCache")}}catch(t){ta.warn("Existing entry compare failed; proceeding with broadcast update",{error:t,tabId:i,tokenId:e.tokenId,traceId:e.traceId},"tokenCache")}ta.info("Updating token cache from broadcast",{iat:n,organizationId:e.organizationId,tabId:i,template:e.template,tokenId:e.tokenId,traceId:e.traceId},"tokenCache"),o({createdAt:n,tokenId:e.tokenId,tokenResolver:Promise.resolve(t)},i3)},o=(n,s=i1)=>{let a=new i2(e,{audience:n.audience,tokenId:n.tokenId}).toKey(),o=t.get(a);clearTimeout(o?.timeoutId),clearTimeout(o?.refreshTimeoutId);let l=Math.floor(Date.now()/1e3),c={createdAt:n.createdAt??l,entry:n,expiresIn:void 0},d=()=>{let e=t.get(a);e===c&&(void 0!==e.timeoutId&&clearTimeout(e.timeoutId),void 0!==e.refreshTimeoutId&&clearTimeout(e.refreshTimeoutId),t.delete(a))};t.set(a,c),n.tokenResolver.then(e=>{if(t.get(a)!==c)return;n.resolvedToken=e;let o=e.jwt?.claims;if(!o||"number"!=typeof o.exp||"number"!=typeof o.iat)return d();let l=o.exp,h=o.iat,u=l-h;c.createdAt=h,c.expiresIn=u;let p=setTimeout(d,1e3*u);c.timeoutId=p,"function"==typeof p.unref&&p.unref();let f=u-15-2;if(f>0&&n.onRefresh){let e=setTimeout(()=>{n.onRefresh?.()},1e3*f);c.refreshTimeoutId=e,"function"==typeof e.unref&&e.unref()}let m=r;if(m&&s.broadcast){let t=e.getRawString();if(t&&o.sid){let e=o.sid,r=o.org_id||o.o?.id,s=iV.extractTemplate(n.tokenId,e,r),a=iV.build(e,s,r);if(n.tokenId===a){let a=`bc_${Date.now()}_${Math.random().toString(36).substring(2,11)}`;ta.info("Broadcasting token update to other tabs",{organizationId:r,sessionId:e,tabId:i,template:s,tokenId:n.tokenId,traceId:a},"tokenCache");let o={organizationId:r,sessionId:e,template:s,tokenId:n.tokenId,tokenRaw:t,traceId:a};m.postMessage(o)}}}}).catch(()=>{d()})};return{clear:()=>{t.forEach(e=>{void 0!==e.timeoutId&&clearTimeout(e.timeoutId),void 0!==e.refreshTimeoutId&&clearTimeout(e.refreshTimeoutId)}),t.clear()},close:()=>{r&&(r.close(),r=null)},get:s,set:e=>{n(),o(e,i1)},size:()=>t.size}})();function i6(e){if(!e)return;let t=e.client||e.meta?.client;return t?i5.getOrCreateInstance().fromJSON(t):void 0}class i5 extends tH{static instance;pathRoot="/client";sessions=[];signUp=new r7;signIn=new r6;lastActiveSessionId=null;captchaBypass=!1;cookieExpiresAt=null;lastAuthenticationStrategy=null;createdAt=null;updatedAt=null;static getOrCreateInstance(e=null){return i5.instance||(i5.instance=new i5(e)),i5.instance}static clearInstance(){i5.instance=null}static isClientResource(e){return!!e&&e instanceof i5}constructor(e=null){super(),this.fromJSON(e)}get signUpAttempt(){return this.signUp}get signInAttempt(){return this.signIn}get signedInSessions(){return this.sessions.filter(e=>"active"===e.status||"pending"===e.status)}create(){return this._basePut()}fetch({fetchMaxTries:e}={}){return this._baseGet({fetchMaxTries:e})}async destroy(){return this._baseDelete({path:"/client"}).then(()=>{i4.clear(),this.id="",this.sessions=[],this.signUp=new r7(null),this.signIn=new r6(null),this.lastActiveSessionId=null,this.lastAuthenticationStrategy=null,this.cookieExpiresAt=null,this.createdAt=null,this.updatedAt=null})}removeSessions(){return this._baseDelete({path:this.path()+"/sessions"}).then(e=>(i4.clear(),e))}resetSignIn(){this.signIn=new r6(null),iK.emit("resource:error",{resource:this.signIn,error:null})}resetSignUp(){this.signUp=new r7(null),iK.emit("resource:error",{resource:this.signUp,error:null})}clearCache(){return this.sessions.forEach(e=>e.clearCache())}isEligibleForTouch(){return!!this.cookieExpiresAt&&this.cookieExpiresAt.getTime()-Date.now()<=6912e5}buildTouchUrl({redirectUrl:e}){return tH.fapiClient.buildUrl({method:"GET",path:"/client/touch",pathPrefix:"v1",search:{redirect_url:e.toString()}}).toString()}__internal_sendCaptchaToken(e){return this._basePostBypass({body:e,path:this.path()+"/verify"})}fromJSON(e){return e&&(this.id=e.id,this.sessions=(e.sessions||[]).map(e=>new rQ(e)),e.sign_up&&this.signUp instanceof r7&&this.signUp.id===e.sign_up.id?this.signUp.__internal_updateFromJSON(e.sign_up):this.signUp=new r7(e.sign_up),e.sign_in&&this.signIn instanceof r6&&this.signIn.id===e.sign_in.id?this.signIn.__internal_updateFromJSON(e.sign_in):this.signIn=new r6(e.sign_in),this.lastActiveSessionId=e.last_active_session_id,this.captchaBypass=e.captcha_bypass||!1,this.cookieExpiresAt=e.cookie_expires_at?tG(e.cookie_expires_at):null,this.lastAuthenticationStrategy=e.last_authentication_strategy||null,this.createdAt=tG(e.created_at||void 0),this.updatedAt=tG(e.updated_at||void 0)),this}__internal_toSnapshot(){return{object:"client",id:this.id||"",sessions:this.sessions.map(e=>e.__internal_toSnapshot()),sign_up:this.signUp.__internal_toSnapshot(),sign_in:this.signIn.__internal_toSnapshot(),last_active_session_id:this.lastActiveSessionId,captcha_bypass:this.captchaBypass,cookie_expires_at:this.cookieExpiresAt?this.cookieExpiresAt.getTime():null,last_authentication_strategy:this.lastAuthenticationStrategy??null,created_at:this.createdAt?.getTime()??null,updated_at:this.updatedAt?.getTime()??null}}path(){return this.pathRoot}}class i8 extends tH{billing={stripePublishableKey:null,organization:{enabled:!1,hasPaidPlans:!1},user:{enabled:!1,hasPaidPlans:!1}};constructor(e=null){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.billing.stripePublishableKey=e.billing.stripe_publishable_key,this.billing.organization.enabled=e.billing.organization.enabled,this.billing.organization.hasPaidPlans=e.billing.organization.has_paid_plans,this.billing.user.enabled=e.billing.user.enabled,this.billing.user.hasPaidPlans=e.billing.user.has_paid_plans),this}__internal_toSnapshot(){return{billing:{stripe_publishable_key:this.billing.stripePublishableKey,organization:{enabled:this.billing.organization.enabled,has_paid_plans:this.billing.organization.hasPaidPlans},user:{enabled:this.billing.user.enabled,has_paid_plans:this.billing.user.hasPaidPlans}}}}}class i7{object="";id;slug;deleted=!1;constructor(e){this.fromJSON(e)}fromJSON(e){return e&&(this.object=e.object,this.id=e.id,this.slug=e.slug,this.deleted=e.deleted),this}}class i9 extends tH{afterCreateOrganizationUrl="";afterJoinWaitlistUrl="";afterLeaveOrganizationUrl="";afterSignInUrl="";afterSignOutAllUrl="";afterSignOutOneUrl="";afterSignOutUrl="";afterSignUpUrl="";afterSwitchSessionUrl="";applicationName="";backendHost="";branded=!1;captchaHeartbeat=!1;captchaHeartbeatIntervalMs;captchaOauthBypass=["oauth_google","oauth_microsoft","oauth_apple"];captchaProvider="turnstile";captchaPublicKey=null;captchaPublicKeyInvisible=null;captchaWidgetType=null;clerkJSVersion;createOrganizationUrl="";faviconImageUrl="";googleOneTapClientId;homeUrl="";id="";instanceEnvironmentType="";logoImageUrl="";organizationProfileUrl="";preferredSignInStrategy="password";privacyPolicyUrl="";showDevModeWarning=!1;signInUrl="";signUpUrl="";supportEmail="";termsUrl="";theme={};userProfileUrl="";waitlistUrl="";constructor(e=null){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.afterCreateOrganizationUrl=this.withDefault(e.after_create_organization_url,this.afterCreateOrganizationUrl),this.afterJoinWaitlistUrl=this.withDefault(e.after_join_waitlist_url,this.afterJoinWaitlistUrl),this.afterLeaveOrganizationUrl=this.withDefault(e.after_leave_organization_url,this.afterLeaveOrganizationUrl),this.afterSignInUrl=this.withDefault(e.after_sign_in_url,this.afterSignInUrl),this.afterSignOutAllUrl=this.withDefault(e.after_sign_out_all_url,this.afterSignOutAllUrl),this.afterSignOutOneUrl=this.withDefault(e.after_sign_out_one_url,this.afterSignOutOneUrl),this.afterSignUpUrl=this.withDefault(e.after_sign_up_url,this.afterSignUpUrl),this.afterSwitchSessionUrl=this.withDefault(e.after_switch_session_url,this.afterSwitchSessionUrl),this.applicationName=this.withDefault(e.application_name,this.applicationName),this.branded=this.withDefault(e.branded,this.branded),this.captchaHeartbeat=this.withDefault(e.captcha_heartbeat,this.captchaHeartbeat),this.captchaHeartbeatIntervalMs=this.withDefault(e.captcha_heartbeat_interval_ms,this.captchaHeartbeatIntervalMs),this.captchaOauthBypass=this.withDefault(e.captcha_oauth_bypass,this.captchaOauthBypass),this.captchaProvider=this.withDefault(e.captcha_provider,this.captchaProvider),this.captchaPublicKey=this.withDefault(e.captcha_public_key,this.captchaPublicKey),this.captchaPublicKeyInvisible=this.withDefault(e.captcha_public_key_invisible,this.captchaPublicKeyInvisible),this.captchaWidgetType=this.withDefault(e.captcha_widget_type,this.captchaWidgetType),this.clerkJSVersion=this.withDefault(e.clerk_js_version,this.clerkJSVersion),this.createOrganizationUrl=this.withDefault(e.create_organization_url,this.createOrganizationUrl),this.faviconImageUrl=this.withDefault(e.favicon_image_url,this.faviconImageUrl),this.googleOneTapClientId=this.withDefault(e.google_one_tap_client_id,this.googleOneTapClientId),this.homeUrl=this.withDefault(e.home_url,this.homeUrl),this.id=this.withDefault(e.id,this.id),this.instanceEnvironmentType=this.withDefault(e.instance_environment_type,this.instanceEnvironmentType),this.logoImageUrl=this.withDefault(e.logo_image_url,this.logoImageUrl),this.organizationProfileUrl=this.withDefault(e.organization_profile_url,this.organizationProfileUrl),this.preferredSignInStrategy=this.withDefault(e.preferred_sign_in_strategy,this.preferredSignInStrategy),this.privacyPolicyUrl=this.withDefault(e.privacy_policy_url,this.privacyPolicyUrl),this.showDevModeWarning=this.withDefault(e.show_devmode_warning,this.showDevModeWarning),this.signInUrl=this.withDefault(e.sign_in_url,this.signInUrl),this.signUpUrl=this.withDefault(e.sign_up_url,this.signUpUrl),this.supportEmail=this.withDefault(e.support_email,this.supportEmail),this.termsUrl=this.withDefault(e.terms_url,this.termsUrl),this.theme=this.withDefault(e.theme,this.theme),this.userProfileUrl=this.withDefault(e.user_profile_url,this.userProfileUrl),this.waitlistUrl=this.withDefault(e.waitlist_url,this.waitlistUrl)),this}__internal_toSnapshot(){return{object:"display_config",after_create_organization_url:this.afterCreateOrganizationUrl,after_join_waitlist_url:this.afterJoinWaitlistUrl,after_leave_organization_url:this.afterLeaveOrganizationUrl,after_sign_in_url:this.afterSignInUrl,after_sign_out_all_url:this.afterSignOutAllUrl,after_sign_out_one_url:this.afterSignOutOneUrl,after_sign_up_url:this.afterSignUpUrl,after_switch_session_url:this.afterSwitchSessionUrl,application_name:this.applicationName,branded:this.branded,captcha_heartbeat_interval_ms:this.captchaHeartbeatIntervalMs,captcha_heartbeat:this.captchaHeartbeat,captcha_oauth_bypass:this.captchaOauthBypass,captcha_provider:this.captchaProvider,captcha_public_key_invisible:this.captchaPublicKeyInvisible,captcha_public_key:this.captchaPublicKey,captcha_widget_type:this.captchaWidgetType,clerk_js_version:this.clerkJSVersion,create_organization_url:this.createOrganizationUrl,favicon_image_url:this.faviconImageUrl,google_one_tap_client_id:this.googleOneTapClientId,home_url:this.homeUrl,id:this.id,instance_environment_type:this.instanceEnvironmentType,logo_image_url:this.logoImageUrl,organization_profile_url:this.organizationProfileUrl,preferred_sign_in_strategy:this.preferredSignInStrategy,privacy_policy_url:this.privacyPolicyUrl,show_devmode_warning:this.showDevModeWarning,sign_in_url:this.signInUrl,sign_up_url:this.signUpUrl,support_email:this.supportEmail,terms_url:this.termsUrl,theme:this.theme,user_profile_url:this.userProfileUrl,waitlist_url:this.waitlistUrl}}}function re({delayInMs:e}={delayInMs:1e3}){let t,i=iQ(),r=!1,n=()=>{t&&(i.clearTimeout(t),i.cleanup()),r=!0},s=async a=>{r=!1,await a(n),r||(t=i.setTimeout(()=>{s(a)},e))};return{run:s,stop:n}}class rt extends tH{id;emailAddress="";matchesSsoConnection=!1;linkedTo=[];verification;constructor(e,t){super(),this.pathRoot=t,this.fromJSON(e)}create(){return this._basePost({body:{email_address:this.emailAddress}})}prepareVerification=e=>this._basePost({action:"prepare_verification",body:{...e}});attemptVerification=e=>{let{code:t}=e||{};return this._basePost({action:"attempt_verification",body:{code:t}})};createEmailLinkFlow=()=>{let{run:e,stop:t}=re();return{startEmailLinkFlow:async({redirectUrl:i})=>(await this.prepareVerification({strategy:"email_link",redirectUrl:i}),new Promise((i,r)=>{e(()=>this.reload().then(e=>{"verified"===e.verification.status&&(t(),i(e))}).catch(e=>{t(),r(e)}))})),cancelEmailLinkFlow:t}};createEnterpriseSSOLinkFlow=()=>{let{run:e,stop:t}=re();return{startEnterpriseSSOLinkFlow:async({redirectUrl:i})=>{if(!(await this.prepareVerification({strategy:"enterprise_sso",redirectUrl:i})).verification.externalVerificationRedirectURL)throw Error("Unexpected: External verification redirect URL is missing");return new Promise((i,r)=>{e(()=>this.reload().then(e=>{"verified"===e.verification.status&&(t(),i(e))}).catch(e=>{t(),r(e)}))})},cancelEnterpriseSSOLinkFlow:t}};destroy=()=>this._baseDelete();toString=()=>this.emailAddress;fromJSON(e){return e&&(this.id=e.id,this.emailAddress=e.email_address,this.verification=new ru(e.verification),this.matchesSsoConnection=e.matches_sso_connection,this.linkedTo=(e.linked_to||[]).map(e=>new rI(e))),this}__internal_toSnapshot(){return{object:"email_address",id:this.id,email_address:this.emailAddress,verification:this.verification.__internal_toSnapshot(),linked_to:this.linkedTo.map(e=>e.__internal_toSnapshot()),matches_sso_connection:this.matchesSsoConnection}}}var ri=class{static encode(e){return btoa(String.fromCharCode(...new Uint8Array(e))).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}static decode(e){let t=atob(e.replace(/-/g,"+").replace(/_/g,"/")),i=t.length,r=new Uint8Array(i);for(let e=0;e<i;e++)r[e]=t.charCodeAt(e);return r.buffer}};async function rr(e){try{let t=await navigator.credentials.create({publicKey:e});if(!t)return{error:new x("Browser failed to create credential",{code:"passkey_registration_failed"}),publicKeyCredential:null};return{publicKeyCredential:t,error:null}}catch(e){var t;return{error:"InvalidStateError"===(t=e).name?new x(t.message,{code:"passkey_already_exists"}):"NotAllowedError"===t.name?new x(t.message,{code:"passkey_registration_cancelled"}):ra(t),publicKeyCredential:null}}}let rn=new class{controller;__abort(){if(!this.controller)return;let e=Error();e.name="AbortError",this.controller.abort(e)}createAbortSignal(){this.__abort();let e=new AbortController;return this.controller=e,e.signal}abort(){this.__abort(),this.controller=void 0}};async function rs({publicKeyOptions:e,conditionalUI:t}){try{let i=await navigator.credentials.get({publicKey:e,mediation:t?"conditional":"optional",signal:rn.createAbortSignal()});if(!i)return{error:new x("Browser failed to get credential",{code:"passkey_retrieval_failed"}),publicKeyCredential:null};return{publicKeyCredential:i,error:null}}catch(e){var i;return{error:"NotAllowedError"===(i=e).name?new x(i.message,{code:"passkey_retrieval_cancelled"}):ra(i),publicKeyCredential:null}}}function ra(e){return"AbortError"===e.name?new x(e.message,{code:"passkey_operation_aborted"}):"SecurityError"===e.name?new x(e.message,{code:"passkey_invalid_rpID_or_domain",docsUrl:"https://clerk.com/docs/deployments/overview#authentication-across-subdomains"}):e}function ro(e){let t=rh(e.challenge),i=(e.allowCredentials||[]).map(e=>({...e,id:rh(e.id)}));return{...e,allowCredentials:i,challenge:t}}function rl(e){return{type:e.type,id:e.id,rawId:rd(e.rawId),authenticatorAttachment:e.authenticatorAttachment}}function rc(e){let t=e.response;return{...rl(e),response:{clientDataJSON:rd(t.clientDataJSON),authenticatorData:rd(t.authenticatorData),signature:rd(t.signature),userHandle:t.userHandle?rd(t.userHandle):null}}}let rd=ri.encode.bind(ri),rh=ri.decode.bind(ri);class ru extends tH{pathRoot="";status=null;strategy=null;nonce=null;message=null;externalVerificationRedirectURL=null;attempts=null;expireAt=null;error=null;verifiedAtClient=null;channel;constructor(e){super(),this.fromJSON(e)}verifiedFromTheSameClient=()=>this.verifiedAtClient===tH.clerk?.client?.id;fromJSON(e){return e&&(this.status=e.status,this.verifiedAtClient=e.verified_at_client,this.strategy=e.strategy,this.nonce=e.nonce||null,this.message=e.message||null,e.external_verification_redirect_url?this.externalVerificationRedirectURL=new URL(e.external_verification_redirect_url):this.externalVerificationRedirectURL=null,this.attempts=e.attempts,this.expireAt=tG(e.expire_at||void 0),this.error=e.error?new k(e.error):null,this.channel=e.channel||void 0),this}__internal_toSnapshot(){var e;return{object:"verification",id:this.id||"",status:this.status,strategy:this.strategy,nonce:this.nonce,message:this.message,external_verification_redirect_url:this.externalVerificationRedirectURL?.toString()||null,attempts:this.attempts,expire_at:this.expireAt?.getTime()||null,error:(e=this.error,{code:e?.code||"",message:e?.message||"",long_message:e?.longMessage,meta:{param_name:e?.meta?.paramName,session_id:e?.meta?.sessionId,email_addresses:e?.meta?.emailAddresses,identifiers:e?.meta?.identifiers,zxcvbn:e?.meta?.zxcvbn,plan:e?.meta?.plan,is_plan_upgrade_possible:e?.meta?.isPlanUpgradePossible}}),verified_at_client:this.verifiedAtClient}}}class rp extends ru{publicKey=null;constructor(e){super(e),this.fromJSON(e)}fromJSON(e){var t;let i,r,n;return super.fromJSON(e),e?.nonce&&(this.publicKey=(i=rh((t=JSON.parse(e.nonce)).user.id),r=rh(t.challenge),n=(t.excludeCredentials||[]).map(e=>({...e,id:rh(e.id)})),{...t,excludeCredentials:n,challenge:r,user:{...t.user,id:i}})),this}}class rf{emailAddress;phoneNumber;web3Wallet;externalAccount;constructor(e){e?(this.emailAddress=new rm(e.email_address),this.phoneNumber=new rm(e.phone_number),this.web3Wallet=new rm(e.web3_wallet),this.externalAccount=new ru(e.external_account)):(this.emailAddress=new rm(null),this.phoneNumber=new rm(null),this.web3Wallet=new rm(null),this.externalAccount=new ru(null))}__internal_toSnapshot(){return{email_address:this.emailAddress.__internal_toSnapshot(),phone_number:this.phoneNumber.__internal_toSnapshot(),web3_wallet:this.web3Wallet.__internal_toSnapshot(),external_account:this.externalAccount.__internal_toSnapshot()}}}class rm extends ru{nextAction;supportedStrategies;constructor(e){super(e),e?(this.nextAction=e.next_action,this.supportedStrategies=e.supported_strategies):(this.nextAction="",this.supportedStrategies=[])}__internal_toSnapshot(){return{...super.__internal_toSnapshot(),next_action:this.nextAction,supported_strategies:this.supportedStrategies}}}class rg extends tH{id;protocol;provider;providerUserId=null;active;emailAddress="";firstName="";lastName="";publicMetadata={};verification=null;enterpriseConnection=null;lastAuthenticatedAt=null;enterpriseConnectionId=null;constructor(e,t){super(),this.pathRoot=t,this.fromJSON(e)}fromJSON(e){return e&&(this.id=e.id,this.provider=e.provider,this.protocol=e.protocol,this.providerUserId=e.provider_user_id,this.active=e.active,this.emailAddress=e.email_address,this.firstName=e.first_name,this.lastName=e.last_name,this.publicMetadata=e.public_metadata,this.lastAuthenticatedAt=e.last_authenticated_at?tG(e.last_authenticated_at):null,this.enterpriseConnectionId=e.enterprise_connection_id,e.verification&&(this.verification=new ru(e.verification)),e.enterprise_connection&&(this.enterpriseConnection=new r_(e.enterprise_connection))),this}destroy=()=>this._baseDelete();__internal_toSnapshot(){return{object:"enterprise_account",id:this.id,provider:this.provider,protocol:this.protocol,provider_user_id:this.providerUserId,active:this.active,email_address:this.emailAddress,first_name:this.firstName,last_name:this.lastName,public_metadata:this.publicMetadata,verification:this.verification?.__internal_toSnapshot()||null,enterprise_connection:this.enterpriseConnection?.__internal_toSnapshot()||null,last_authenticated_at:this.lastAuthenticatedAt?this.lastAuthenticatedAt.getTime():null,enterprise_connection_id:this.enterpriseConnectionId}}}class r_ extends tH{id;active;allowIdpInitiated;allowSubdomains;disableAdditionalIdentifications;domain;logoPublicUrl="";name;protocol;provider;syncUserAttributes;allowOrganizationAccountLinking;createdAt;updatedAt;enterpriseConnectionId="";constructor(e){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.id=e.id,this.name=e.name,this.domain=e.domain,this.active=e.active,this.provider=e.provider,this.logoPublicUrl=e.logo_public_url,this.syncUserAttributes=e.sync_user_attributes,this.allowSubdomains=e.allow_subdomains,this.allowIdpInitiated=e.allow_idp_initiated,this.disableAdditionalIdentifications=e.disable_additional_identifications,this.allowOrganizationAccountLinking=e.allow_organization_account_linking,this.createdAt=tG(e.created_at),this.updatedAt=tG(e.updated_at),this.enterpriseConnectionId=e.enterprise_connection_id),this}__internal_toSnapshot(){return{object:"enterprise_account_connection",id:this.id,name:this.name,domain:this.domain,active:this.active,protocol:this.protocol,provider:this.provider,logo_public_url:this.logoPublicUrl,sync_user_attributes:this.syncUserAttributes,allow_subdomains:this.allowSubdomains,allow_idp_initiated:this.allowIdpInitiated,disable_additional_identifications:this.disableAdditionalIdentifications,allow_organization_account_linking:this.allowOrganizationAccountLinking,enterprise_connection_id:this.enterpriseConnectionId,created_at:this.createdAt.getTime(),updated_at:this.updatedAt.getTime()}}}class rw extends tH{id;name;active;provider;logoPublicUrl=null;domains=[];organizationId=null;syncUserAttributes;disableAdditionalIdentifications;allowOrganizationAccountLinking;customAttributes=[];oauthConfig=null;samlConnection=null;createdAt=null;updatedAt=null;constructor(e){super(),this.fromJSON(e)}fromJSON(e){var t,i;return e?(this.id=e.id,this.name=e.name,this.active=e.active,this.provider=e.provider,this.logoPublicUrl=e.logo_public_url??null,this.domains=e.domains??[],this.organizationId=e.organization_id??null,this.syncUserAttributes=e.sync_user_attributes,this.disableAdditionalIdentifications=e.disable_additional_identifications,this.allowOrganizationAccountLinking=e.allow_organization_account_linking??!1,this.customAttributes=e.custom_attributes??[],this.createdAt=tG(e.created_at),this.updatedAt=tG(e.updated_at),this.samlConnection=e.saml_connection?{id:(t=e.saml_connection).id,name:t.name,active:t.active,idpEntityId:t.idp_entity_id,idpSsoUrl:t.idp_sso_url,idpCertificate:t.idp_certificate,idpMetadataUrl:t.idp_metadata_url,idpMetadata:t.idp_metadata,acsUrl:t.acs_url,spEntityId:t.sp_entity_id,spMetadataUrl:t.sp_metadata_url,allowSubdomains:t.allow_subdomains,allowIdpInitiated:t.allow_idp_initiated,forceAuthn:t.force_authn}:null,this.oauthConfig=e.oauth_config?{id:(i=e.oauth_config).id,name:i.name,clientId:i.client_id,providerKey:i.provider_key,discoveryUrl:i.discovery_url,logoPublicUrl:i.logo_public_url,requiresPkce:i.requires_pkce,createdAt:tG(i.created_at),updatedAt:tG(i.updated_at)}:null,this):this}__internal_toSnapshot(){var e,t;return{object:"enterprise_connection",id:this.id,name:this.name,active:this.active,provider:this.provider,logo_public_url:this.logoPublicUrl,domains:this.domains,organization_id:this.organizationId,sync_user_attributes:this.syncUserAttributes,disable_additional_identifications:this.disableAdditionalIdentifications,allow_organization_account_linking:this.allowOrganizationAccountLinking,custom_attributes:this.customAttributes,saml_connection:this.samlConnection?{id:(e=this.samlConnection).id,name:e.name,active:e.active,idp_entity_id:e.idpEntityId,idp_sso_url:e.idpSsoUrl,idp_certificate:e.idpCertificate,idp_metadata_url:e.idpMetadataUrl,idp_metadata:e.idpMetadata,acs_url:e.acsUrl,sp_entity_id:e.spEntityId,sp_metadata_url:e.spMetadataUrl,allow_subdomains:e.allowSubdomains,allow_idp_initiated:e.allowIdpInitiated,force_authn:e.forceAuthn}:void 0,oauth_config:this.oauthConfig?{id:(t=this.oauthConfig).id,name:t.name,client_id:t.clientId,provider_key:t.providerKey,discovery_url:t.discoveryUrl,logo_public_url:t.logoPublicUrl,requires_pkce:t.requiresPkce,created_at:t.createdAt?.getTime()??0,updated_at:t.updatedAt?.getTime()??0}:void 0,created_at:this.createdAt?.getTime()??0,updated_at:this.updatedAt?.getTime()??0}}}class ry extends tH{user_api_keys_enabled=!1;orgs_api_keys_enabled=!1;constructor(e=null){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.user_api_keys_enabled=e.user_api_keys_enabled,this.orgs_api_keys_enabled=e.orgs_api_keys_enabled),this}__internal_toSnapshot(){return{user_api_keys_enabled:this.user_api_keys_enabled,orgs_api_keys_enabled:this.orgs_api_keys_enabled}}}class rb extends tH{actions={adminDelete:!1};domains={enabled:!1,enrollmentModes:[],defaultRole:null};slug={disabled:!1};organizationCreationDefaults={enabled:!1};enabled=!1;maxAllowedMemberships=1;forceOrganizationSelection;constructor(e=null){super(),this.fromJSON(e)}fromJSON(e){return e&&(e.actions&&(this.actions.adminDelete=this.withDefault(e.actions.admin_delete,this.actions.adminDelete)),e.domains&&(this.domains.enabled=this.withDefault(e.domains.enabled,this.domains.enabled),this.domains.enrollmentModes=this.withDefault(e.domains.enrollment_modes,this.domains.enrollmentModes),this.domains.defaultRole=this.withDefault(e.domains.default_role,this.domains.defaultRole)),e.slug&&(this.slug.disabled=this.withDefault(e.slug.disabled,this.slug.disabled)),e.organization_creation_defaults&&(this.organizationCreationDefaults.enabled=this.withDefault(e.organization_creation_defaults.enabled,this.organizationCreationDefaults.enabled)),this.enabled=this.withDefault(e.enabled,this.enabled),this.maxAllowedMemberships=this.withDefault(e.max_allowed_memberships,this.maxAllowedMemberships),this.forceOrganizationSelection=this.withDefault(e.force_organization_selection,this.forceOrganizationSelection)),this}__internal_toSnapshot(){return{actions:{admin_delete:this.actions.adminDelete},domains:{enabled:this.domains.enabled,enrollment_modes:this.domains.enrollmentModes,default_role:this.domains.defaultRole},enabled:this.enabled,max_allowed_memberships:this.maxAllowedMemberships}}}class rv extends tH{static instance;authConfig=new tX;displayConfig=new i9;maintenanceMode=!1;clientDebugMode=!1;partitionedCookies=!1;pathRoot="/environment";userSettings=new nu;organizationSettings=new rb;commerceSettings=new i8;apiKeysSettings=new ry;protectConfig=new rD;static getInstance(){return rv.instance||(rv.instance=new rv),rv.instance}constructor(e=null){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.authConfig=new tX(e.auth_config),this.displayConfig=new i9(e.display_config),this.maintenanceMode=this.withDefault(e.maintenance_mode,this.maintenanceMode),this.clientDebugMode=this.withDefault(e.client_debug_mode,this.clientDebugMode),this.partitionedCookies=this.withDefault(e.partitioned_cookies,this.partitionedCookies),this.organizationSettings=new rb(e.organization_settings),this.userSettings=new nu(e.user_settings),this.commerceSettings=new i8(e.commerce_settings),this.apiKeysSettings=new ry(e.api_keys_settings),this.protectConfig=new rD(e.protect_config)),this}fetch({touch:e,fetchMaxTries:t}={touch:!1}){return(e?this._basePatch({}):this._baseGet({fetchMaxTries:t})).then(e=>(iK.emit(iB,null),e))}isDevelopmentOrStaging=()=>!this.isProduction();isProduction=()=>"production"===this.displayConfig.instanceEnvironmentType;isSingleSession=()=>this.authConfig.singleSessionMode;onWindowLocationHost=()=>this.displayConfig.backendHost===window.location.host;__internal_toSnapshot(){return{object:"environment",auth_config:this.authConfig.__internal_toSnapshot(),display_config:this.displayConfig.__internal_toSnapshot(),id:this.id??"",maintenance_mode:this.maintenanceMode,client_debug_mode:this.clientDebugMode,partitioned_cookies:this.partitionedCookies,organization_settings:this.organizationSettings.__internal_toSnapshot(),user_settings:this.userSettings.__internal_toSnapshot(),commerce_settings:this.commerceSettings.__internal_toSnapshot(),api_keys_settings:this.apiKeysSettings.__internal_toSnapshot(),protect_config:this.protectConfig.__internal_toSnapshot()}}async __internal_enableEnvironmentSetting(e){await this._basePatch({path:"/dev_tools/enable_environment_setting",body:e})}}class rk extends tH{id;identificationId;provider;providerUserId="";emailAddress="";approvedScopes="";firstName="";lastName="";imageUrl="";username="";phoneNumber="";publicMetadata={};label="";verification=null;constructor(e,t){super(),this.pathRoot=t,this.fromJSON(e)}reauthorize=e=>{let{additionalScopes:t,redirectUrl:i}=e||{};return this._basePatch({action:"reauthorize",body:{additional_scope:t,redirect_url:i}})};destroy=()=>this._baseDelete();fromJSON(e){return e&&(this.id=e.id,this.identificationId=e.identification_id,this.providerUserId=e.provider_user_id,this.approvedScopes=e.approved_scopes,this.imageUrl=e.image_url,this.emailAddress=e.email_address,this.firstName=e.first_name,this.lastName=e.last_name,this.provider=(e.provider||"").replace("oauth_",""),this.username=e.username,this.phoneNumber=e.phone_number,this.publicMetadata=e.public_metadata,this.label=e.label,e.verification&&(this.verification=new ru(e.verification))),this}__internal_toSnapshot(){return{object:"external_account",id:this.id,identification_id:this.identificationId,provider:this.provider,provider_user_id:this.providerUserId,email_address:this.emailAddress,approved_scopes:this.approvedScopes,first_name:this.firstName,last_name:this.lastName,image_url:this.imageUrl,username:this.username,phone_number:this.phoneNumber,public_metadata:this.publicMetadata,label:this.label,verification:this.verification?.__internal_toSnapshot()||null}}providerSlug(){return this.provider}providerTitle(){let e;return[(e=this.providerSlug()||"").charAt(0).toUpperCase()+e.slice(1),"Account"].join(" ")}accountIdentifier(){return this.username||this.emailAddress||this.label}}class rS extends tH{id;name;description=null;slug;avatarUrl=null;constructor(e){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.id=e.id,this.name=e.name,this.description=e.description,this.slug=e.slug,this.avatarUrl=e.avatar_url),this}}class rI extends tH{id;type;constructor(e){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.id=e.id,this.type=e.type),this}__internal_toSnapshot(){return{object:"identification_link",id:this.id,type:this.type}}}class rU extends tH{id;name=null;publicUrl=null;static async create(e,t={}){let i,r=t;return"string"==typeof t.file?(r=t.file,i=new Headers({"Content-Type":"application/octet-stream"})):t.file&&(r=new FormData).append("file",t.file),new rU((await tH._fetch({path:e,method:"POST",body:r,headers:i}))?.response)}static async delete(e){return new rU((await tH._fetch({path:e,method:"DELETE"}))?.response)}constructor(e){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.id=e.id,this.name=e.name,this.publicUrl=e.public_url),this}}class rA extends tH{id;name;organizationId;enrollmentMode;verification;affiliationEmailAddress;createdAt;updatedAt;totalPendingInvitations;totalPendingSuggestions;constructor(e){super(),this.fromJSON(e)}static async create(e,{name:t}){return new rA((await tH._fetch({path:`/organizations/${e}/domains`,method:"POST",body:{name:t}}))?.response)}prepareAffiliationVerification=async e=>this._basePost({path:`/organizations/${this.organizationId}/domains/${this.id}/prepare_affiliation_verification`,method:"POST",body:e});attemptAffiliationVerification=async e=>this._basePost({path:`/organizations/${this.organizationId}/domains/${this.id}/attempt_affiliation_verification`,method:"POST",body:e});updateEnrollmentMode=e=>this._basePost({path:`/organizations/${this.organizationId}/domains/${this.id}/update_enrollment_mode`,body:e});delete=()=>this._baseDelete({path:`/organizations/${this.organizationId}/domains/${this.id}`});fromJSON(e){return e&&(this.id=e.id,this.name=e.name,this.organizationId=e.organization_id,this.enrollmentMode=e.enrollment_mode,this.affiliationEmailAddress=e.affiliation_email_address,this.totalPendingSuggestions=e.total_pending_suggestions,this.totalPendingInvitations=e.total_pending_invitations,e.verification?this.verification={status:e.verification.status,strategy:e.verification.strategy,attempts:e.verification.attempts,expiresAt:tG(e.verification.expires_at)}:this.verification=null),this}}class rC extends tH{id;organizationId;status;publicUserData;createdAt;updatedAt;constructor(e){super(),this.fromJSON(e)}accept=async()=>await this._basePost({path:`/organizations/${this.organizationId}/membership_requests/${this.id}/accept`});reject=async()=>await this._basePost({path:`/organizations/${this.organizationId}/membership_requests/${this.id}/reject`});fromJSON(e){return e&&(this.id=e.id,this.organizationId=e.organization_id,this.status=e.status,this.createdAt=tG(e.created_at),this.updatedAt=tG(e.updated_at),e.public_user_data&&(this.publicUserData=new rL(e.public_user_data))),this}}class rP extends tH{id;key;name;description;type;createdAt;updatedAt;constructor(e){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.id=e.id,this.key=e.key,this.name=e.name,this.description=e.description,this.type=e.type,this.createdAt=tG(e.created_at),this.updatedAt=tG(e.updated_at)),this}}class rT extends tH{id;key;name;description;permissions=[];createdAt;updatedAt;constructor(e){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.id=e.id,this.key=e.key,this.name=e.name,this.description=e.description,this.permissions=e.permissions.map(e=>new rP(e)),this.createdAt=tG(e.created_at),this.updatedAt=tG(e.updated_at)),this}}class rO extends tH{pathRoot="/organizations";id;name;slug;imageUrl;hasImage;publicMetadata={};adminDeleteEnabled;createdAt;updatedAt;membersCount=0;pendingInvitationsCount=0;maxAllowedMemberships;constructor(e){super(),this.fromJSON(e)}static async create(e){return new rO((await tH._fetch({path:"/organizations",method:"POST",body:e}))?.response)}static async get(e){return new rO((await tH._fetch({path:`/organizations/${e}`,method:"GET"}))?.response)}update=async e=>this._basePatch({body:e});getRoles=async e=>await tH._fetch({path:`/organizations/${this.id}/roles`,method:"GET",search:id(e)},{forceUpdateClient:!0}).then(e=>{let{data:t,total_count:i,has_role_set_migration:r}=e?.response;return{data:t.map(e=>new rT(e)),total_count:i,has_role_set_migration:r}});getDomains=async e=>await tH._fetch({path:`/organizations/${this.id}/domains`,method:"GET",search:id(e)},{forceUpdateClient:!0}).then(e=>{let{data:t,total_count:i}=e?.response;return{total_count:i,data:t.map(e=>new rA(e))}});getDomain=async({domainId:e})=>new rA((await tH._fetch({path:`/organizations/${this.id}/domains/${e}`,method:"GET"}))?.response);getMembershipRequests=async e=>await tH._fetch({path:`/organizations/${this.id}/membership_requests`,method:"GET",search:id(e)}).then(e=>{let{data:t,total_count:i}=e?.response;return{total_count:i,data:t.map(e=>new rC(e))}});createDomain=async e=>rA.create(this.id,{name:e});getMemberships=async e=>await tH._fetch({path:`/organizations/${this.id}/memberships`,method:"GET",search:id({...e,paginated:!0})}).then(e=>{let{data:t,total_count:i}=e?.response;return{total_count:i,data:t.map(e=>new rx(e))}});getInvitations=async e=>await tH._fetch({path:`/organizations/${this.id}/invitations`,method:"GET",search:id(e)},{forceUpdateClient:!0}).then(e=>{let{data:t,total_count:i}=e?.response;return{total_count:i,data:t.map(e=>new rE(e))}});addMember=async({userId:e,role:t})=>await tH._fetch({method:"POST",path:`/organizations/${this.id}/memberships`,body:{userId:e,role:t}}).then(e=>new rx(e?.response));inviteMember=async e=>rE.create(this.id,e);inviteMembers=async e=>rE.createBulk(this.id,e);updateMember=async({userId:e,role:t})=>await tH._fetch({method:"PATCH",path:`/organizations/${this.id}/memberships/${e}`,body:{role:t}}).then(e=>new rx(e?.response));removeMember=async e=>await tH._fetch({method:"DELETE",path:`/organizations/${this.id}/memberships/${e}`}).then(e=>new rx(e?.response));destroy=async()=>this._baseDelete();setLogo=async({file:e})=>{let t,i;return null===e?await tH._fetch({path:`/organizations/${this.id}/logo`,method:"DELETE"}).then(e=>new rO(e?.response)):("string"==typeof e?(t=e,i=new Headers({"Content-Type":"application/octet-stream"})):(t=new FormData).append("file",e),await tH._fetch({path:`/organizations/${this.id}/logo`,method:"PUT",body:t,headers:i}).then(e=>new rO(e?.response)))};initializePaymentMethod=e=>iE({...e,orgId:this.id});addPaymentMethod=e=>ix({...e,orgId:this.id});getPaymentMethods=e=>iR({...e,orgId:this.id});fromJSON(e){return e&&(this.id=e.id,this.name=e.name,this.slug=e.slug,this.imageUrl=e.image_url||"",this.hasImage=e.has_image||!1,this.publicMetadata=e.public_metadata||{},this.membersCount=e.members_count||0,this.pendingInvitationsCount=e.pending_invitations_count||0,this.maxAllowedMemberships=e.max_allowed_memberships||0,this.adminDeleteEnabled=e.admin_delete_enabled||!1,this.createdAt=tG(e.created_at),this.updatedAt=tG(e.updated_at)),this}__internal_toSnapshot(){return{object:"organization",id:this.id,name:this.name,slug:this.slug,image_url:this.imageUrl,has_image:this.hasImage,public_metadata:this.publicMetadata,members_count:this.membersCount,pending_invitations_count:this.pendingInvitationsCount,max_allowed_memberships:this.maxAllowedMemberships,admin_delete_enabled:this.adminDeleteEnabled,created_at:this.createdAt.getTime(),updated_at:this.updatedAt.getTime()}}async reload(e){let{rotatingTokenNonce:t}=e||{},i=(await tH._fetch({path:`/organizations/${this.id}`,method:"GET",rotatingTokenNonce:t},{forceUpdateClient:!0}))?.response;return this.fromJSON(i)}}class rE extends tH{id;emailAddress;organizationId;publicMetadata={};status;role;roleName;createdAt;updatedAt;static async create(e,{emailAddress:t,role:i}){return new rE((await tH._fetch({path:`/organizations/${e}/invitations`,method:"POST",body:{email_address:t,role:i}}))?.response)}static async createBulk(e,t){let{emailAddresses:i,role:r}=t;return((await tH._fetch({path:`/organizations/${e}/invitations/bulk`,method:"POST",body:{email_address:i,role:r}}))?.response).map(e=>new rE(e))}constructor(e){super(),this.fromJSON(e)}revoke=async()=>await this._basePost({path:`/organizations/${this.organizationId}/invitations/${this.id}/revoke`});fromJSON(e){return e&&(this.id=e.id,this.emailAddress=e.email_address,this.organizationId=e.organization_id,this.publicMetadata=e.public_metadata,this.role=e.role,this.roleName=e.role_name,this.status=e.status,this.createdAt=tG(e.created_at),this.updatedAt=tG(e.updated_at)),this}}class rx extends tH{id;publicMetadata={};publicUserData;organization;permissions=[];role;roleName;createdAt;updatedAt;constructor(e){super(),this.fromJSON(e)}static retrieve=async e=>await tH._fetch({path:"/me/organization_memberships",method:"GET",search:id({...e,paginated:!0})}).then(e=>{let{data:t,total_count:i}=e?.response;return{total_count:i,data:t.map(e=>new rx(e))}});destroy=async()=>await this._baseDelete({path:`/organizations/${this.organization.id}/memberships/${this.publicUserData?.userId}`});update=async({role:e})=>await this._basePatch({path:`/organizations/${this.organization.id}/memberships/${this.publicUserData?.userId}`,body:{role:e}});fromJSON(e){return e&&(this.id=e.id,this.organization=new rO(e.organization),this.publicMetadata=e.public_metadata||{},e.public_user_data&&(this.publicUserData=new rL(e.public_user_data)),this.permissions=Array.isArray(e.permissions)?[...e.permissions]:[],this.role=e.role,this.roleName=e.role_name,this.createdAt=tG(e.created_at),this.updatedAt=tG(e.updated_at)),this}__internal_toSnapshot(){return{object:"organization_membership",id:this.id,organization:this.organization.__internal_toSnapshot(),public_metadata:this.publicMetadata,public_user_data:this.publicUserData?.__internal_toSnapshot(),permissions:this.permissions,role:this.role,role_name:this.roleName,created_at:this.createdAt.getTime(),updated_at:this.updatedAt.getTime()}}reload(e){throw Error(`${tE} Calling OrganizationMembership.reload is not currently supported. Please contact support.`)}}class rR extends tH{id;publicOrganizationData;status;createdAt;updatedAt;constructor(e){super(),this.fromJSON(e)}static async retrieve(e){return await tH._fetch({path:"/me/organization_suggestions",method:"GET",search:id(e)}).then(e=>{let{data:t,total_count:i}=e?.response;return{total_count:i,data:t.map(e=>new rR(e))}})}accept=async()=>await this._basePost({path:`/me/organization_suggestions/${this.id}/accept`});fromJSON(e){return e&&(this.id=e.id,this.status=e.status,this.publicOrganizationData={hasImage:e.public_organization_data.has_image,imageUrl:e.public_organization_data.image_url,name:e.public_organization_data.name,id:e.public_organization_data.id,slug:e.public_organization_data.slug},this.createdAt=tG(e.created_at),this.updatedAt=tG(e.updated_at)),this}}function rz(){return a()&&"function"==typeof window.PublicKeyCredential}async function rM(){try{return rz()&&await window.PublicKeyCredential.isConditionalMediationAvailable()}catch{return!1}}async function rF(){try{return"u">typeof window&&await window.PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable()}catch{return!1}}class rN extends tH{id;pathRoot="/me/passkeys";verification=null;name=null;lastUsedAt=null;createdAt;updatedAt;constructor(e){super(),this.fromJSON(e)}static async create(){return tH._fetch({path:"/me/passkeys",method:"POST"}).then(e=>new rN(e?.response))}static async attemptVerification(e,t){let i,r=(i=t.response,{...rl(t),response:{clientDataJSON:rd(i.clientDataJSON),attestationObject:rd(i.attestationObject),transports:i.getTransports()}});return tH._fetch({path:`/me/passkeys/${e}/attempt_verification`,method:"POST",body:{strategy:"passkey",publicKeyCredential:JSON.stringify(r)}}).then(e=>new rN(e?.response))}static async registerPasskey(){let e=rN.clerk.__internal_isWebAuthnSupported||rz,t=rN.clerk.__internal_createPublicCredentials||rr,i=rN.clerk.__internal_isWebAuthnPlatformAuthenticatorSupported||rF;if(!e())throw new x("Passkeys are not supported on this device.",{code:"passkey_not_supported"});let r=await this.create(),{verification:n}=r,s=n?.publicKey;if(s||tD("create"),s.authenticatorSelection?.authenticatorAttachment==="platform"&&!await i())throw new x("Registration requires a platform authenticator but the device does not support it.",{code:"passkey_pa_not_supported"});let{publicKeyCredential:a,error:o}=await t(s);if(!a)throw o;return this.attemptVerification(r.id,a)}update=e=>this._basePatch({body:e});delete=async()=>new i7((await tH._fetch({path:this.path(),method:"DELETE"}))?.response);fromJSON(e){return e&&(this.id=e.id,this.name=e.name,this.lastUsedAt=e.last_used_at?tG(e.last_used_at):null,this.createdAt=tG(e.created_at),this.updatedAt=tG(e.updated_at),e.verification&&(this.verification=new rp(e.verification))),this}__internal_toSnapshot(){return{object:"passkey",id:this.id,name:this.name,verification:this.verification?.__internal_toSnapshot()||null,last_used_at:this.lastUsedAt?.getTime()||null,created_at:this.createdAt.getTime(),updated_at:this.updatedAt.getTime()}}}class rW extends tH{id;phoneNumber="";reservedForSecondFactor=!1;defaultSecondFactor=!1;linkedTo=[];verification;backupCodes;constructor(e,t){super(),this.pathRoot=t,this.fromJSON(e)}create=()=>this._basePost({body:{phone_number:this.phoneNumber}});prepareVerification=()=>this._basePost({action:"prepare_verification",body:{strategy:"phone_code"}});attemptVerification=e=>{let{code:t}=e||{};return this._basePost({action:"attempt_verification",body:{code:t}})};setReservedForSecondFactor=e=>{let{reserved:t}=e||{};return this._basePatch({body:{reserved_for_second_factor:t}})};makeDefaultSecondFactor=()=>this._basePatch({body:{default_second_factor:!0}});destroy=()=>this._baseDelete();toString=()=>{let e=this.phoneNumber.match(/^(\d{3})(\d{3})(\d{4})$/);return e?"("+e[1]+") "+e[2]+"-"+e[3]:this.phoneNumber};fromJSON(e){return e&&(this.id=e.id,this.phoneNumber=e.phone_number,this.reservedForSecondFactor=e.reserved_for_second_factor,this.defaultSecondFactor=e.default_second_factor,this.verification=new ru(e.verification),this.linkedTo=(e.linked_to||[]).map(e=>new rI(e)),this.backupCodes=e.backup_codes),this}__internal_toSnapshot(){return{object:"phone_number",id:this.id||"",phone_number:this.phoneNumber,reserved_for_second_factor:this.reservedForSecondFactor,default_second_factor:this.defaultSecondFactor,verification:this.verification.__internal_toSnapshot(),linked_to:this.linkedTo.map(e=>e.__internal_toSnapshot()),backup_codes:this.backupCodes}}}class rD extends tH{id="";loaders;rollout;constructor(e=null){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.id=this.withDefault(e.id,this.id),this.loaders=this.withDefault(e.loaders,this.loaders)),this}__internal_toSnapshot(){return{object:"protect_config",id:this.id,loaders:this.loaders}}}class rL{firstName;lastName;imageUrl;hasImage;identifier;userId;username;banned;constructor(e){this.fromJSON(e)}fromJSON(e){return e&&(this.firstName=e.first_name||null,this.lastName=e.last_name||null,this.imageUrl=e.image_url||"",this.hasImage=e.has_image||!1,this.identifier=e.identifier||"",this.userId=e.user_id,this.username=e.username,this.banned=e.banned??void 0),this}__internal_toSnapshot(){return{first_name:this.firstName,last_name:this.lastName,image_url:this.imageUrl,has_image:this.hasImage,identifier:this.identifier,user_id:this.userId,username:this.username,banned:this.banned}}}let r$={strict_mfa:{afterMinutes:10,level:"multi_factor"},strict:{afterMinutes:10,level:"second_factor"},moderate:{afterMinutes:60,level:"second_factor"},lax:{afterMinutes:1440,level:"second_factor"}},rj=new Set(["first_factor","second_factor","multi_factor"]),rB=new Set(["strict_mfa","strict","moderate","lax"]),rJ=new Set(["o","org","organization"]),rK=new Set(["u","user"]),rV=e=>"number"==typeof e&&Number.isFinite(e)&&(-1===e||e>=0),rq=(e,t)=>{let{org:i,user:r}=rH(e),[n,s]=t.split(":"),a=void 0!==s,o=s||n;if(a&&!rJ.has(n)&&!rK.has(n))throw Error(`Invalid scope: ${n}`);if(a){if(rJ.has(n))return i.includes(o);if(rK.has(n))return r.includes(o)}return[...i,...r].includes(o)},rH=e=>{let t=[],i=[];if(!e)return{org:t,user:i};let r=e.split(",");for(let e=0;e<r.length;e++){let n=r[e].trim(),s=n.indexOf(":");if(-1===s)throw Error(`Invalid claim element (missing colon): ${n}`);let a=n.slice(0,s),o=n.slice(s+1);"o"===a?t.push(o):"u"===a?i.push(o):("ou"===a||"uo"===a)&&(t.push(o),i.push(o))}return{org:t,user:i}};class rG extends tH{status;level;session;supportedFirstFactors=[];supportedSecondFactors=[];firstFactorVerification=new ru(null);secondFactorVerification=new ru(null);constructor(e=null){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.id=e.id,this.status=e.status,this.session=new rQ(e.session),this.level=e.level,this.supportedFirstFactors=eo(e.supported_first_factors),this.supportedSecondFactors=eo(e.supported_second_factors),this.firstFactorVerification=new ru(e.first_factor_verification),this.secondFactorVerification=new ru(e.second_factor_verification)),this}}class rQ extends tH{pathRoot="/client/sessions";static #D=new Set;id;status;lastActiveAt;lastActiveToken;lastActiveOrganizationId;actor;agent;user;publicUserData;factorVerificationAge=null;tasks=null;expireAt;abandonAt;createdAt;updatedAt;static isSessionResource(e){return!!e&&e instanceof rQ}constructor(e){super(),this.fromJSON(e),this.#L(this.lastActiveToken)}end=()=>(i4.clear(),this._basePost({action:"end"}));remove=()=>(i4.clear(),this._basePost({action:"remove"}));_touchPost=async({intent:e,skipUpdateClient:t}={skipUpdateClient:!1})=>{let i=await tH._fetch({method:"POST",path:this.path("touch"),body:{active_organization_id:this.lastActiveOrganizationId,intent:e}},{skipUpdateClient:t});return this.fromJSON(i?.response||i),i};touch=async({intent:e}={})=>(await this._touchPost({intent:e,skipUpdateClient:!1}),this.lastActiveToken&&iK.emit(i$,{token:this.lastActiveToken}),this);__internal_touch=async({intent:e}={})=>i6(await this._touchPost({intent:e,skipUpdateClient:!0}));clearCache=()=>i4.clear();getToken=async e=>{try{let t=await td(()=>this._getToken(e),{factor:1.55,initialDelay:3e3,maxDelayBetweenRetries:5e4,jitter:!1,shouldRetry:(e,t)=>(!z(e)||e?.status===429)&&(d()?t<=8:t<=3)});if(!t&&!d())throw new A("Network request failed while offline. The browser appears to be disconnected.");return t}catch(e){if(!d())throw new A("Network request failed while offline. The browser appears to be disconnected.");throw e}};checkAuthorization=e=>{let t,i=(this.user?.organizationMemberships||[]).find(e=>e.organization.id===this.lastActiveOrganizationId);return(t={userId:this.user?.id,factorVerificationAge:this.factorVerificationAge,orgId:i?.organization?.id,orgRole:i?.role,orgPermissions:i?.permissions,features:this.lastActiveToken?.jwt?.claims.fea||"",plans:this.lastActiveToken?.jwt?.claims.pla||""},e=>{let i;return!!t.userId&&(i=[((e,t)=>{let{orgId:i,orgRole:r,orgPermissions:n}=t,s=void 0!==e.role,a=void 0!==e.permission;return s||a?s&&"string"!=typeof e.role||a&&"string"!=typeof e.permission||!i||s&&("string"!=typeof r||!r||r.replace(/^(org:)*/,"org:")!==e.role.replace(/^(org:)*/,"org:"))||a&&(!Array.isArray(n)||!n.includes(e.permission.replace(/^(org:)*/,"org:")))?"fail":"pass":"skip"})(e,t),((e,t)=>{let{features:i,plans:r}=t,n=void 0!==e.feature,s=void 0!==e.plan;if(!n&&!s)return"skip";if(n&&"string"!=typeof e.feature||s&&"string"!=typeof e.plan)return"fail";if(n){if("string"!=typeof i||!i)return"fail";try{if(!rq(i,e.feature))return"fail"}catch{return"fail"}}if(s){if("string"!=typeof r||!r)return"fail";try{if(!rq(r,e.plan))return"fail"}catch{return"fail"}}return"pass"})(e,t),((e,{factorVerificationAge:t})=>{if(void 0===e.reverification)return"skip";if(!t||!Array.isArray(t)||2!==t.length||!rV(t[0])||!rV(t[1]))return"fail";let i=(e=>{let t,i;if(!e)return!1;let r="string"==typeof e&&rB.has(e),n="object"==typeof e&&(t=e.level,rj.has(t))&&"number"==typeof(i=e.afterMinutes)&&i>0;return(!!r||!!n)&&(e=>"string"==typeof e?r$[e]:e).bind(null,e)})(e.reverification);if(!i)return"fail";let{level:r,afterMinutes:n}=i(),[s,a]=t;if(-1===s&&-1===a)return"fail";let o=-1!==s&&n>s,l=-1!==a&&n>a;switch(r){case"first_factor":return o?"pass":"fail";case"second_factor":if(-1===a)return o?"pass":"fail";return l?"pass":"fail";case"multi_factor":if(-1===a)return o?"pass":"fail";if(-1===s)return"fail";return o&&l?"pass":"fail"}})(e,t)]).some(e=>"pass"===e)&&i.every(e=>"pass"===e||"skip"===e)})(e)};#L=e=>{if(e){let t=this.#$();i4.set({tokenId:t,tokenResolver:Promise.resolve(e),onRefresh:()=>this.#j(void 0,this.lastActiveOrganizationId,t,!0)})}};#$(e,t){let i=void 0===t?this.lastActiveOrganizationId:t;return iV.build(this.id,e,i)}startVerification=async({level:e})=>new rG((await tH._fetch({method:"POST",path:`/client/sessions/${this.id}/verify`,body:{level:e}}))?.response);prepareFirstFactorVerification=async e=>{let t;switch(e.strategy){case"email_code":t={emailAddressId:e.emailAddressId};break;case"phone_code":t={phoneNumberId:e.phoneNumberId,default:e.default};break;case"passkey":t={};break;case"enterprise_sso":t={emailAddressId:e.emailAddressId,enterpriseConnectionId:e.enterpriseConnectionId,redirectUrl:e.redirectUrl};break;default:tM("Session.prepareFirstFactorVerification",e.strategy)}return new rG((await tH._fetch({method:"POST",path:`/client/sessions/${this.id}/verify/prepare_first_factor`,body:{...t,strategy:e.strategy}}))?.response)};attemptFirstFactorVerification=async e=>{let t;return t="passkey"===e.strategy?{publicKeyCredential:JSON.stringify(rc(e.publicKeyCredential))}:{...e},new rG((await tH._fetch({method:"POST",path:`/client/sessions/${this.id}/verify/attempt_first_factor`,body:{...t,strategy:e.strategy}}))?.response)};verifyWithPasskey=async()=>{let{nonce:e=null}=(await this.prepareFirstFactorVerification({strategy:"passkey"})).firstFactorVerification,t=rQ.clerk.__internal_isWebAuthnSupported||rz,i=rQ.clerk.__internal_getPublicCredentials||rs;if(!t())throw new x("Passkeys are not supported",{code:"passkey_not_supported"});let r=e?ro(JSON.parse(e)):null;r||tD("get");let{publicKeyCredential:n,error:s}=await i({publicKeyOptions:r,conditionalUI:!1});if(!n)throw s;return this.attemptFirstFactorVerification({strategy:"passkey",publicKeyCredential:n})};prepareSecondFactorVerification=async e=>new rG((await tH._fetch({method:"POST",path:`/client/sessions/${this.id}/verify/prepare_second_factor`,body:e}))?.response);attemptSecondFactorVerification=async e=>new rG((await tH._fetch({method:"POST",path:`/client/sessions/${this.id}/verify/attempt_second_factor`,body:e}))?.response);fromJSON(e){return e&&(this.id=e.id,this.status=e.status,this.expireAt=tG(e.expire_at),this.abandonAt=tG(e.abandon_at),this.factorVerificationAge=e.factor_verification_age,this.lastActiveAt=tG(e.last_active_at||void 0),this.lastActiveOrganizationId=e.last_active_organization_id,this.actor=e.actor||null,this.agent=e.actor?.type==="agent"?e.actor:null,this.createdAt=tG(e.created_at),this.updatedAt=tG(e.updated_at),this.user=new nl(e.user),this.tasks=e.tasks||null,e.public_user_data&&(this.publicUserData=new rL(e.public_user_data)),this.lastActiveToken=e.last_active_token?new nn(e.last_active_token):null),this}__internal_toSnapshot(){return{object:"session",id:this.id,status:this.status,expire_at:this.expireAt.getTime(),abandon_at:this.abandonAt.getTime(),factor_verification_age:this.factorVerificationAge,last_active_at:this.lastActiveAt.getTime(),last_active_organization_id:this.lastActiveOrganizationId,actor:this.actor,tasks:this.tasks,user:this.user?.__internal_toSnapshot()||null,public_user_data:this.publicUserData.__internal_toSnapshot(),last_active_token:this.lastActiveToken?.__internal_toSnapshot()||null,created_at:this.createdAt.getTime(),updated_at:this.updatedAt.getTime()}}async _getToken(e){let t;if(!this.user)return null;let{skipCache:i=!1,template:r}=e||{},n=void 0===e?.organizationId?this.lastActiveOrganizationId:e?.organizationId,s=this.#$(r,n),a=i?void 0:i4.get({tokenId:s}),l=!r&&n===this.lastActiveOrganizationId;if(a){let e=a.entry.resolvedToken??await a.entry.tokenResolver;l&&e.getRawString()&&iK.emit(i$,{token:e}),t=e.getRawString()||null}else if(o())t=await this.#B(r,n,s,l,i);else throw new b("Browser is offline, skipping token fetch",{code:"network_error"});if(null===t&&!d())throw new b("Network request failed while offline",{code:"network_error"});return t}#J(e,t,i){let r=e?`${this.path()}/tokens/${e}`:`${this.path()}/tokens`,n=rQ.clerk?.__internal_environment?.authConfig?.sessionMinter,s=e?{}:{organizationId:t??null,...n&&this.lastActiveToken?{token:this.lastActiveToken.getRawString()}:{},...n&&i?{forceOrigin:"true"}:{}};if(n)return nn.create(r,s,i?{debug:"skip_cache"}:void 0);let a=this.lastActiveToken?.getRawString();return nn.create(r,s,i?{debug:"skip_cache"}:void 0).catch(e=>{if(U.is(e)&&a)return nn.create(r,{...s},{expired_token:a});throw e})}#K(e,t){!t||e.getRawString()&&(iK.emit(i$,{token:e}),e.jwt&&(this.lastActiveToken=e,iK.emit(iJ,null)))}#B(e,t,i,r,n){ta.info("Fetching new token from API",{organizationId:t,template:e,tokenId:i},"session");let s=this.#J(e,t,n);return i4.set({tokenId:i,tokenResolver:s,onRefresh:()=>this.#j(e,t,i,r)}),s.then(e=>{let t=e.getRawString();if(!t)throw new b("Token fetch returned empty response",{code:"network_error"});return this.#K(e,r),t})}#j(e,t,i,r){if(rQ.#D.has(i))return;rQ.#D.add(i);let n=rQ.clerk?.__internal_getOption?.("experimental"),s=n?.runtimeEnvironment==="headless",a=this.lastActiveToken?.jwt?.claims?.exp;s&&a&&Date.now()/1e3>a?rQ.#D.delete(i):this.#J(e,t,!1).then(n=>{n.getRawString()&&(i4.set({tokenId:i,tokenResolver:Promise.resolve(n),onRefresh:()=>this.#j(e,t,i,r)}),this.#K(n,r))}).catch(e=>{ta.warn("Background token refresh failed",{error:e,tokenId:i},"session")}).finally(()=>{rQ.#D.delete(i)})}get currentTask(){let[e]=this.tasks??[];return e}}class rX extends tH{pathRoot="";id;status;abandonAt;expireAt;lastActiveAt;latestActivity;actor;constructor(e,t){super(),this.pathRoot=t,this.fromJSON(e)}static retrieve(){let e=tH.clerk.session?.id;return this.clerk.getFapiClient().request({method:"GET",path:"/me/sessions/active",sessionId:e}).then(e=>e.payload.map(e=>new rX(e,"/me/sessions"))).catch(()=>[])}revoke(){return this._basePost({action:"revoke",body:{}})}fromJSON(e){let t;return e?(this.id=e.id,this.status=e.status,this.expireAt=tG(e.expire_at),this.abandonAt=tG(e.abandon_at),this.lastActiveAt=tG(e.last_active_at||void 0),this.latestActivity={id:(t=e.latest_activity??{}).id,deviceType:t.device_type,browserName:t.browser_name,browserVersion:t.browser_version,country:t.country,city:t.city,isMobile:t.is_mobile,ipAddress:t.ip_address},this.actor=e.actor,this):this}}l(9536);let rY=(e,t,i)=>{let{onValidation:r=iq.t,onValidationComplexity:n=iq.t}=i||{},{show_zxcvbn:s,validatePassword:a}=t,o=e=>((e,t)=>{let{max_length:i,min_length:r,require_special_char:n,require_lowercase:s,require_numbers:a,require_uppercase:o}=t,l=(e=>{let t;if(e.allowed_special_characters){let i=e.allowed_special_characters.replace("[","\\[");i=i.replace("]","\\]"),t=RegExp(`[${i}]`)}else t=/[!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~]/;return(e,{minLength:i,maxLength:r})=>({max_length:e.length<r,min_length:e.length>=i,require_numbers:/\d/.test(e),require_lowercase:/[a-z]/.test(e),require_uppercase:/[A-Z]/.test(e),require_special_char:t.test(e)})})(t)(e,{maxLength:t.max_length,minLength:t.min_length}),c={max_length:i,min_length:r,require_special_char:n,require_lowercase:s,require_numbers:a,require_uppercase:o},d=new Map;for(let e in c)c[e]&&!l[e]&&d.set(e,!0);return Object.freeze(Object.fromEntries(d))})(e,t),l=(({min_zxcvbn_strength:e,onResult:t})=>i=>r=>{let n=i(r);return(t?.(n),n.score>=e&&n.score<3)?{state:"pass",keys:["unstable__errors.zxcvbn.couldBeStronger"],result:n}:n.score>=e?{state:"excellent",result:n}:{state:"fail",keys:["unstable__errors.zxcvbn.notEnough",...n.feedback.suggestions.map(e=>`unstable__errors.zxcvbn.suggestions.${e}`)],result:n}})(t),c={};return(t,i)=>{let{onValidation:d=r,onValidationComplexity:h=n}=i||{};if(!a)return;let u=o(t);h(0===Object.keys(u).length),c={...c,complexity:u},s&&e().then(e=>{let i=l(e)(t);d({...c={...c,strength:i},strength:i})}),c.complexity&&0===Object.keys(c.complexity).length&&s||d(c)}};function rZ(e){return e?`https://${e.replace(/clerk\.accountsstage\./,"accountsstage.").replace(/clerk\.accounts\.|clerk\./,"accounts.")}`:""}async function r0(e,t,i,r,n){if(!e.client||!r.popup)return;let s=rZ(e.frontendApi),{redirectUrl:a}=r,o=new URL(a);o.searchParams.set("sign_in_force_redirect_url",r.redirectUrlComplete),o.searchParams.set("sign_up_force_redirect_url",r.redirectUrlComplete),o.searchParams.set("intent",t);let l=e.buildUrlWithAuth(o.toString()),c=e.buildUrlWithAuth(`${s}/popup-callback`),d=e.buildUrlWithAuth(`${s}/popup-callback?return_url=${encodeURIComponent(l)}`),h=async t=>{if(t.origin!==s)return;let i=!1;if(t.data.session){if(!e.client?.sessions.find(e=>e.id===t.data.session))try{await e.client?.reload()}catch(e){console.error(e)}await e.setActive({session:t.data.session,redirectUrl:r.redirectUrlComplete}),i=!0}else t.data.return_url&&(e.navigate(t.data.return_url),i=!0);i&&window.removeEventListener("message",h)};window.addEventListener("message",h),await i({...r,redirectUrlComplete:c,redirectUrl:d},n)}function r1(e,{redirectCallbackUrl:t,redirectUrl:i}){let r=rZ(e.frontendApi),n=new URL(t);n.searchParams.set("sign_in_force_redirect_url",i),n.searchParams.set("sign_up_force_redirect_url",i);let s=e.buildUrlWithAuth(n.toString()),a=e.buildUrlWithAuth(`${r}/popup-callback`);return{redirectCallbackUrl:e.buildUrlWithAuth(`${r}/popup-callback?return_url=${encodeURIComponent(s)}`),redirectUrl:a}}function r3(e,t){return new Promise((i,r)=>{if(!e.client||!t.popup)return void r();let n=async t=>{t.origin===rZ(e.frontendApi)&&(t.data.session||t.data.return_url?(window.removeEventListener("message",n),i()):r())};window.addEventListener("message",n),t.popup.location.href=t.externalVerificationRedirectURL.toString()})}async function r2(e,t){iK.emit("resource:error",{resource:e,error:null}),iK.emit("resource:fetch",{resource:e,status:"fetching"});try{return{result:await t(),error:null}}catch(t){return iK.emit("resource:error",{resource:e,error:t}),{error:t}}finally{iK.emit("resource:fetch",{resource:e,status:"idle"})}}let r4=()=>{var e;return(e=new tu,{loadZxcvbn:()=>Promise.all([e.import("@zxcvbn-ts/core"),e.import("@zxcvbn-ts/language-common")]).then(([e,t])=>{if(!e||!t)throw Error("Failed to load zxcvbn modules");let{zxcvbnOptions:i,zxcvbn:r}=e,{dictionary:n,adjacencyGraphs:s}=t;return i.setOptions({dictionary:{...n},graphs:s}),r})}).loadZxcvbn};class r6 extends tH{pathRoot="/client/sign_ins";id;_status=null;supportedIdentifiers=[];supportedFirstFactors=[];supportedSecondFactors=null;firstFactorVerification=new ru(null);secondFactorVerification=new ru(null);identifier=null;createdSessionId=null;userData=new nc(null);clientTrustState;get status(){return this._status}set status(e){let t=this._status;this._status=e,e&&t!==e&&ta.debug("SignIn.status",{id:this.id,from:t,to:e})}__internal_future=new r5(this);__internal_basePost=this._basePost.bind(this);__internal_baseGet=this._baseGet.bind(this);constructor(e=null){super(),this.fromJSON(e)}create=async e=>{ta.debug("SignIn.create",{id:this.id,strategy:"strategy"in e?e.strategy:void 0});let t={...e},i=tv();if(i&&(t.locale=i),this.shouldRequireCaptcha(e)&&!this.clientBypass()&&!this.shouldBypassCaptchaForAttempt(e)){let e=new tV(r6.clerk),i=await e.managedOrInvisible({action:"signin"});if(!i)throw new b("",{code:"captcha_unavailable"});t={...t,...i}}return this._basePost({path:this.pathRoot,body:t})};resetPassword=e=>this._basePost({body:e,action:"reset_password"});prepareFirstFactor=e=>{let t;switch(ta.debug("SignIn.prepareFirstFactor",{id:this.id,strategy:e.strategy}),e.strategy){case"passkey":t={};break;case"email_link":t={emailAddressId:e.emailAddressId,redirectUrl:e.redirectUrl};break;case"email_code":case"reset_password_email_code":t={emailAddressId:e.emailAddressId};break;case"phone_code":t={phoneNumberId:e.phoneNumberId,default:e.default,channel:e.channel};break;case"web3_metamask_signature":case"web3_base_signature":case"web3_coinbase_wallet_signature":case"web3_okx_wallet_signature":case"web3_solana_signature":t={web3WalletId:e.web3WalletId};break;case"reset_password_phone_code":t={phoneNumberId:e.phoneNumberId};break;case"enterprise_sso":t={redirectUrl:e.redirectUrl,actionCompleteRedirectUrl:e.actionCompleteRedirectUrl,oidcPrompt:e.oidcPrompt,enterpriseConnectionId:e.enterpriseConnectionId};break;default:tM("SignIn.prepareFirstFactor",e.strategy)}return this._basePost({body:{...t,strategy:e.strategy},action:"prepare_first_factor"})};attemptFirstFactor=e=>{let t;return ta.debug("SignIn.attemptFirstFactor",{id:this.id,strategy:e.strategy}),t="passkey"===e.strategy?{publicKeyCredential:JSON.stringify(rc(e.publicKeyCredential))}:{...e},this._basePost({body:{...t,strategy:e.strategy},action:"attempt_first_factor"})};createEmailLinkFlow=()=>{let{run:e,stop:t}=re();return{startEmailLinkFlow:async({emailAddressId:i,redirectUrl:r})=>{this.id||tz("SignIn");let n={strategy:"email_link",emailAddressId:i,redirectUrl:r},s="needs_second_factor"===this.status||"needs_client_trust"===this.status,a=s?"secondFactorVerification":"firstFactorVerification";return s?await this.prepareSecondFactor(n):await this.prepareFirstFactor(n),new Promise((i,r)=>{e(()=>this.reload().then(e=>{let r=e[a].status;("verified"===r||"expired"===r)&&(t(),i(e))}).catch(e=>{t(),r(e)}))})},cancelEmailLinkFlow:t}};prepareSecondFactor=e=>(ta.debug("SignIn.prepareSecondFactor",{id:this.id,strategy:e.strategy}),this._basePost({body:e,action:"prepare_second_factor"}));attemptSecondFactor=e=>(ta.debug("SignIn.attemptSecondFactor",{id:this.id,strategy:e.strategy}),this._basePost({body:e,action:"attempt_second_factor"}));authenticateWithRedirectOrPopup=async(e,t)=>{let{strategy:i,redirectUrlComplete:r,identifier:n,oidcPrompt:s,continueSignIn:a,enterpriseConnectionId:o}=e||{},l=r6.clerk.buildUrlWithAuth(e.redirectUrl);this.id&&a||await this.create({strategy:i,identifier:n,redirectUrl:l,actionCompleteRedirectUrl:r}),"enterprise_sso"===i&&await this.prepareFirstFactor({strategy:i,redirectUrl:l,actionCompleteRedirectUrl:r,oidcPrompt:s,enterpriseConnectionId:o});let{status:c,externalVerificationRedirectURL:d}=this.firstFactorVerification;"unverified"===c&&d?t(d):tW(c,r6.fapiClient.buildEmailAddress("support"))};authenticateWithRedirect=async e=>this.authenticateWithRedirectOrPopup(e,eG);authenticateWithPopup=async e=>{let{popup:t}=e||{};return t||tN("popup"),r0(r6.clerk,"signIn",this.authenticateWithRedirectOrPopup,e,e=>{t.location.href=e.toString()})};authenticateWithWeb3=async e=>{let t,{identifier:i,generateSignature:r,strategy:n="web3_metamask_signature",walletName:s}=e||{},a=n.replace("web3_","").replace("_signature","");"function"!=typeof r&&tN("generateSignature"),"solana"!==a||s||tN("walletName"),await this.create({identifier:i});let o=this.supportedFirstFactors?.find(e=>e.strategy===n);o||tF("SignIn"),await this.prepareFirstFactor(o);let{message:l}=this.firstFactorVerification;l||tF("SignIn");try{t=await r({identifier:i,nonce:l,walletName:s,provider:a})}catch(e){if("coinbase_wallet"===a&&4001===e.code)t=await r({identifier:i,nonce:l,provider:a,walletName:s});else throw e}return this.attemptFirstFactor({signature:t,strategy:n})};authenticateWithMetamask=async()=>{let e=await tA().getMetamaskIdentifier();return this.authenticateWithWeb3({identifier:e,generateSignature:tA().generateSignatureWithMetamask,strategy:"web3_metamask_signature"})};authenticateWithCoinbaseWallet=async()=>{let e=await tA().getCoinbaseWalletIdentifier();return this.authenticateWithWeb3({identifier:e,generateSignature:tA().generateSignatureWithCoinbaseWallet,strategy:"web3_coinbase_wallet_signature"})};authenticateWithBase=async()=>{let e=await tA().getBaseIdentifier();return this.authenticateWithWeb3({identifier:e,generateSignature:tA().generateSignatureWithBase,strategy:"web3_base_signature"})};authenticateWithOKXWallet=async()=>{let e=await tA().getOKXWalletIdentifier();return this.authenticateWithWeb3({identifier:e,generateSignature:tA().generateSignatureWithOKXWallet,strategy:"web3_okx_wallet_signature"})};authenticateWithSolana=async({walletName:e})=>{let t=await tA().getSolanaIdentifier(e);return this.authenticateWithWeb3({identifier:t,generateSignature:t=>tA().generateSignatureWithSolana({...t,walletName:e}),strategy:"web3_solana_signature",walletName:e})};authenticateWithPasskey=async e=>{let{flow:t}=e||{},i=r6.clerk.__internal_isWebAuthnSupported||rz,r=r6.clerk.__internal_getPublicCredentials||rs,n=r6.clerk.__internal_isWebAuthnAutofillSupported||rM;if(!i())throw new x("Passkeys are not supported",{code:"passkey_not_supported"});if("autofill"===t||"discoverable"===t)await this.create({strategy:"passkey"});else{let e=this.supportedFirstFactors.find(e=>"passkey"===e.strategy);e||function(){throw Error(`${tE} You need to start a SignIn flow by calling SignIn.create({ strategy: 'passkey' }) first`)}(),await this.prepareFirstFactor(e)}let{nonce:s}=this.firstFactorVerification,a=s?ro(JSON.parse(s)):null;a||tD("get");let o=!1;"autofill"===t&&(o=await n());let{publicKeyCredential:l,error:c}=await r({publicKeyOptions:a,conditionalUI:o});if(!l)throw c;return this.attemptFirstFactor({publicKeyCredential:l,strategy:"passkey"})};validatePassword=(e,t)=>{if(r6.clerk.__internal_environment?.userSettings.passwordSettings)return rY(r4(),{...r6.clerk.__internal_environment?.userSettings.passwordSettings,validatePassword:!0})(e,t)};fromJSON(e){return e&&(this.id=e.id,this.status=e.status,this.supportedIdentifiers=e.supported_identifiers,this.identifier=e.identifier,this.supportedFirstFactors=eo(e.supported_first_factors),this.supportedSecondFactors=eo(e.supported_second_factors),this.firstFactorVerification=new ru(e.first_factor_verification),this.secondFactorVerification=new ru(e.second_factor_verification),this.createdSessionId=e.created_session_id,this.userData=new nc(e.user_data),this.clientTrustState=e.client_trust_state??void 0),iK.emit("resource:update",{resource:this}),this}clientBypass(){return r6.clerk.client?.captchaBypass}shouldRequireCaptcha(e){return"signUpIfMissing"in e&&!!e.signUpIfMissing}shouldBypassCaptchaForAttempt(e){let t=r6.clerk.__internal_environment.displayConfig.captchaOauthBypass;if(e.transfer&&r6.clerk.client?.signUp?.verifications?.externalAccount?.status==="transferable"){let e=r6.clerk.client.signUp.verifications.externalAccount.strategy;return!!e&&t.some(t=>t===e)}return"strategy"in e&&!!e.strategy&&t.some(t=>t===e.strategy)}__internal_updateFromJSON(e){return this.fromJSON(e)}__internal_toSnapshot(){return{object:"sign_in",id:this.id||"",status:this.status||null,supported_identifiers:this.supportedIdentifiers,supported_first_factors:ea(this.supportedFirstFactors),supported_second_factors:ea(this.supportedSecondFactors),first_factor_verification:this.firstFactorVerification.__internal_toSnapshot(),second_factor_verification:this.secondFactorVerification.__internal_toSnapshot(),identifier:this.identifier,created_session_id:this.createdSessionId,user_data:this.userData.__internal_toSnapshot()}}}class r5{emailCode={sendCode:this.sendEmailCode.bind(this),verifyCode:this.verifyEmailCode.bind(this)};emailLink={sendLink:this.sendEmailLink.bind(this),waitForVerification:this.waitForEmailLinkVerification.bind(this),get verification(){if(!n())return null;const e=eW("__clerk_status"),t=eW("__clerk_created_session");if(!e||!t)return null;const i="verified"===e&&void 0!==r6.clerk.client&&r6.clerk.client.sessions.some(e=>e.id===t);return{status:e,createdSessionId:t,verifiedFromTheSameClient:i}}};resetPasswordEmailCode={sendCode:this.sendResetPasswordEmailCode.bind(this),verifyCode:this.verifyResetPasswordEmailCode.bind(this),submitPassword:this.submitResetPassword.bind(this)};resetPasswordPhoneCode={sendCode:this.sendResetPasswordPhoneCode.bind(this),verifyCode:this.verifyResetPasswordPhoneCode.bind(this),submitPassword:this.submitResetPassword.bind(this)};phoneCode={sendCode:this.sendPhoneCode.bind(this),verifyCode:this.verifyPhoneCode.bind(this)};mfa={sendPhoneCode:this.sendMFAPhoneCode.bind(this),verifyPhoneCode:this.verifyMFAPhoneCode.bind(this),sendEmailCode:this.sendMFAEmailCode.bind(this),verifyEmailCode:this.verifyMFAEmailCode.bind(this),verifyTOTP:this.verifyTOTP.bind(this),verifyBackupCode:this.verifyBackupCode.bind(this)};#V=!1;#q;constructor(e){this.#q=e}get id(){return this.#q.id}get identifier(){return this.#q.identifier}get createdSessionId(){return this.#q.createdSessionId}get userData(){return this.#q.userData}get status(){return this.#q.status||"needs_identifier"}get supportedFirstFactors(){return this.#q.supportedFirstFactors??[]}get supportedSecondFactors(){return this.#q.supportedSecondFactors??[]}get isTransferable(){return"transferable"===this.#q.firstFactorVerification.status}get existingSession(){if("failed"===this.#q.firstFactorVerification.status&&this.#q.firstFactorVerification.error?.code==="identifier_already_signed_in"&&this.#q.firstFactorVerification.error?.meta?.sessionId)return{sessionId:this.#q.firstFactorVerification.error?.meta?.sessionId}}get firstFactorVerification(){return this.#q.firstFactorVerification}get secondFactorVerification(){return this.#q.secondFactorVerification}get canBeDiscarded(){return this.#V}async sendResetPasswordEmailCode(){if(!this.#q.id)throw Error("Cannot reset password without a sign in.");return r2(this.#q,async()=>{let e=this.#q.supportedFirstFactors?.find(e=>"reset_password_email_code"===e.strategy);if(!e)throw new b("Reset password email code factor not found",{code:"factor_not_found"});let{emailAddressId:t}=e;await this.#q.__internal_basePost({body:{emailAddressId:t,strategy:"reset_password_email_code"},action:"prepare_first_factor"})})}async verifyResetPasswordEmailCode(e){let{code:t}=e;return r2(this.#q,async()=>{await this.#q.__internal_basePost({body:{code:t,strategy:"reset_password_email_code"},action:"attempt_first_factor"})})}async sendResetPasswordPhoneCode(e={}){let{phoneNumber:t}=e;if(!this.#q.id&&!t)throw Error("signIn.resetPasswordPhoneCode.sendCode() cannot be called without a phoneNumber if an existing signIn does not exist.");return r2(this.#q,async()=>{t&&await this._create({identifier:t});let e=this.#q.supportedFirstFactors?.find(e=>"reset_password_phone_code"===e.strategy);if(!e)throw new b("Reset password phone code factor not found",{code:"factor_not_found"});let{phoneNumberId:i}=e;await this.#q.__internal_basePost({body:{phoneNumberId:i,strategy:"reset_password_phone_code"},action:"prepare_first_factor"})})}async verifyResetPasswordPhoneCode(e){let{code:t}=e;return r2(this.#q,async()=>{await this.#q.__internal_basePost({body:{code:t,strategy:"reset_password_phone_code"},action:"attempt_first_factor"})})}async submitResetPassword(e){let{password:t,signOutOfOtherSessions:i=!0}=e;return r2(this.#q,async()=>{await this.#q.__internal_basePost({body:{password:t,signOutOfOtherSessions:i},action:"reset_password"})})}shouldRequireCaptcha(e){return!!e.signUpIfMissing}shouldBypassCaptchaForAttempt(e){let t=r6.clerk.__internal_environment.displayConfig.captchaOauthBypass;if(e.transfer&&r6.clerk.client?.signUp?.verifications?.externalAccount?.status==="transferable"){let e=r6.clerk.client.signUp.verifications.externalAccount.strategy;return!!e&&t.some(t=>t===e)}return!!e.strategy&&t.some(t=>t===e.strategy)}async getCaptchaToken(e={}){if(!this.shouldRequireCaptcha(e)||r6.clerk.client?.captchaBypass||this.shouldBypassCaptchaForAttempt(e))return{captchaToken:void 0,captchaWidgetType:void 0,captchaError:void 0};let t=new tV(r6.clerk),i=await t.managedOrInvisible({action:"signin"});if(!i)throw Error("Captcha challenge failed");let{captchaError:r,captchaToken:n,captchaWidgetType:s}=i;return{captchaToken:n,captchaWidgetType:s,captchaError:r}}async _create(e){let{captchaToken:t,captchaWidgetType:i,captchaError:r}=await this.getCaptchaToken(e),n={...e,captchaToken:t,captchaWidgetType:i,captchaError:r,locale:tv()||void 0};await this.#q.__internal_basePost({path:this.#q.pathRoot,body:n})}async create(e){return r2(this.#q,async()=>{await this._create(e)})}async password(e){if([e.identifier,e.emailAddress,e.phoneNumber].filter(Boolean).length>1)throw Error("Only one of identifier, emailAddress, or phoneNumber can be provided");return r2(this.#q,async()=>{let t=e.identifier||e.emailAddress||e.phoneNumber,i=this.#q.identifier,r=tv();await this.#q.__internal_basePost({path:this.#q.pathRoot,body:{identifier:t||i,password:e.password,...r?{locale:r}:{}}})})}async sendEmailCode(e={}){let{emailAddress:t,emailAddressId:i}=e;if(!this.#q.id&&i)throw Error("signIn.emailCode.sendCode() cannot be called with an emailAddressId if an existing signIn does not exist.");if(!this.#q.id&&!t)throw Error("signIn.emailCode.sendCode() cannot be called without an emailAddress if an existing signIn does not exist.");return r2(this.#q,async()=>{t&&await this._create({identifier:t});let e=this.selectFirstFactor({strategy:"email_code",emailAddressId:i});if(!e)throw new b("Email code factor not found",{code:"factor_not_found"});await this.#q.__internal_basePost({body:{emailAddressId:e.emailAddressId,strategy:"email_code"},action:"prepare_first_factor"})})}async verifyEmailCode(e){let{code:t}=e;return r2(this.#q,async()=>{await this.#q.__internal_basePost({body:{code:t,strategy:"email_code"},action:"attempt_first_factor"})})}async sendEmailLink(e){let{emailAddress:t,verificationUrl:i,emailAddressId:r}=e;if(!this.#q.id&&r)throw Error("signIn.emailLink.sendLink() cannot be called with an emailAddressId if an existing signIn does not exist.");if(!this.#q.id&&!t)throw Error("signIn.emailLink.sendLink() cannot be called without an emailAddress if an existing signIn does not exist.");return r2(this.#q,async()=>{t&&await this._create({identifier:t});let e=this.selectFirstFactor({strategy:"email_link",emailAddressId:r});if(!e)throw new b("Email link factor not found",{code:"factor_not_found"});let n=i;try{new URL(i)}catch{n=window.location.origin+i}await this.#q.__internal_basePost({body:{emailAddressId:e.emailAddressId,redirectUrl:n,strategy:"email_link"},action:"prepare_first_factor"})})}async waitForEmailLinkVerification(){return r2(this.#q,async()=>{let{run:e,stop:t}=re();await new Promise((i,r)=>{e(async()=>{try{let e=await this.#q.__internal_baseGet(),r=e.firstFactorVerification.status;("verified"===r||"expired"===r)&&(t(),i(e))}catch(e){t(),r(e)}})})})}async sendPhoneCode(e={}){let{phoneNumber:t,phoneNumberId:i,channel:r="sms"}=e;if(!this.#q.id&&i)throw Error("signIn.phoneCode.sendCode() cannot be called with an phoneNumberId if an existing signIn does not exist.");if(!this.#q.id&&!t)throw Error("signIn.phoneCode.sendCode() cannot be called without an phoneNumber if an existing signIn does not exist.");return r2(this.#q,async()=>{t&&await this._create({identifier:t});let e=this.selectFirstFactor({strategy:"phone_code",phoneNumberId:i});if(!e)throw new b("Phone code factor not found",{code:"factor_not_found"});await this.#q.__internal_basePost({body:{phoneNumberId:e.phoneNumberId,strategy:"phone_code",channel:r},action:"prepare_first_factor"})})}async verifyPhoneCode(e){let{code:t}=e;return r2(this.#q,async()=>{await this.#q.__internal_basePost({body:{code:t,strategy:"phone_code"},action:"attempt_first_factor"})})}async sso(e){let{strategy:t,redirectUrl:i,redirectCallbackUrl:r,popup:n,oidcPrompt:s,enterpriseConnectionId:a,identifier:o}=e;return r2(this.#q,async()=>{let e=i;try{new URL(i)}catch{e=window.location.origin+i}let l={redirectUrl:r6.clerk.buildUrlWithAuth(r),actionCompleteRedirectUrl:e};if(n){let t=r1(r6.clerk,{redirectCallbackUrl:l.redirectUrl,redirectUrl:e});l.redirectUrl=t.redirectCallbackUrl,l.actionCompleteRedirectUrl=t.redirectUrl}this.#q.id||await this._create({strategy:t,...l,identifier:o}),"enterprise_sso"===t&&await this.#q.__internal_basePost({body:{...l,oidcPrompt:s,enterpriseConnectionId:a,strategy:"enterprise_sso"},action:"prepare_first_factor"});let{status:c,externalVerificationRedirectURL:d}=this.#q.firstFactorVerification;"unverified"===c&&d&&(n?(await r3(r6.clerk,{popup:n,externalVerificationRedirectURL:d}),await this.#q.reload()):eG(d))})}async web3(e){let{strategy:t}=e,i=t.replace("web3_","").replace("_signature","");return r2(this.#q,async()=>{let r,n,s;switch(i){case"metamask":r=await tA().getMetamaskIdentifier(),n=tA().generateSignatureWithMetamask;break;case"coinbase_wallet":r=await tA().getCoinbaseWalletIdentifier(),n=tA().generateSignatureWithCoinbaseWallet;break;case"base":r=await tA().getBaseIdentifier(),n=tA().generateSignatureWithBase;break;case"okx_wallet":r=await tA().getOKXWalletIdentifier(),n=tA().generateSignatureWithOKXWallet;break;case"solana":if(!e.walletName)throw new b("Wallet name is required for Solana authentication.",{code:"web3_solana_wallet_name_required"});r=await tA().getSolanaIdentifier(e.walletName),n=t=>tA().generateSignatureWithSolana({...t,walletName:e.walletName});break;default:throw Error(`Unsupported Web3 provider: ${i}`)}await this._create({identifier:r});let a=this.#q.supportedFirstFactors?.find(e=>e.strategy===t);if(!a)throw new b("Web3 first factor not found",{code:"factor_not_found"});await this.#q.__internal_basePost({body:{web3WalletId:a.web3WalletId,strategy:t},action:"prepare_first_factor"});let{message:o}=this.firstFactorVerification;if(!o)throw new b("Web3 nonce not found",{code:"web3_nonce_not_found"});try{s=await n({identifier:r,nonce:o,walletName:e?.walletName,provider:i})}catch(e){if("coinbase_wallet"===i&&4001===e.code)s=await n({identifier:r,nonce:o,provider:i});else throw e}await this.#q.__internal_basePost({body:{signature:s,strategy:t},action:"attempt_first_factor"})})}async passkey(e){let{flow:t}=e||{},i=r6.clerk.__internal_isWebAuthnSupported||rz,r=r6.clerk.__internal_getPublicCredentials||rs,n=r6.clerk.__internal_isWebAuthnAutofillSupported||rM;if(!i())throw new x("Passkeys are not supported",{code:"passkey_not_supported"});return r2(this.#q,async()=>{if("autofill"===t||"discoverable"===t)await this._create({strategy:"passkey"});else{if(!this.supportedFirstFactors.find(e=>"passkey"===e.strategy))throw new b("Passkey factor not found",{code:"factor_not_found"});await this.#q.__internal_basePost({body:{strategy:"passkey"},action:"prepare_first_factor"})}let{nonce:e}=this.firstFactorVerification,i=e?ro(JSON.parse(e)):null;if(!i)throw new b("Missing public key options",{code:"missing_public_key_options"});let s=!1;"autofill"===t&&(s=await n());let{publicKeyCredential:a,error:o}=await r({publicKeyOptions:i,conditionalUI:s});if(!a)throw new x(o.message,{code:"passkey_retrieval_failed"});await this.#q.__internal_basePost({body:{publicKeyCredential:JSON.stringify(rc(a)),strategy:"passkey"},action:"attempt_first_factor"})})}async sendMFAPhoneCode(){return r2(this.#q,async()=>{let e=this.#q.supportedSecondFactors?.find(e=>"phone_code"===e.strategy);if(!e)throw new b("Phone code factor not found",{code:"factor_not_found"});let{phoneNumberId:t}=e;await this.#q.__internal_basePost({body:{phoneNumberId:t,strategy:"phone_code"},action:"prepare_second_factor"})})}async verifyMFAPhoneCode(e){let{code:t}=e;return r2(this.#q,async()=>{await this.#q.__internal_basePost({body:{code:t,strategy:"phone_code"},action:"attempt_second_factor"})})}async sendMFAEmailCode(){return r2(this.#q,async()=>{let e=this.#q.supportedSecondFactors?.find(e=>"email_code"===e.strategy);if(!e)throw new b("Email code factor not found",{code:"factor_not_found"});let{emailAddressId:t}=e;await this.#q.__internal_basePost({body:{emailAddressId:t,strategy:"email_code"},action:"prepare_second_factor"})})}async verifyMFAEmailCode(e){let{code:t}=e;return r2(this.#q,async()=>{await this.#q.__internal_basePost({body:{code:t,strategy:"email_code"},action:"attempt_second_factor"})})}async verifyTOTP(e){let{code:t}=e;return r2(this.#q,async()=>{await this.#q.__internal_basePost({body:{code:t,strategy:"totp"},action:"attempt_second_factor"})})}async verifyBackupCode(e){let{code:t}=e;return r2(this.#q,async()=>{await this.#q.__internal_basePost({body:{code:t,strategy:"backup_code"},action:"attempt_second_factor"})})}async ticket(e){let t=e?.ticket??eW("__clerk_ticket");return this.create({ticket:t??void 0})}async finalize(e){let{navigate:t}=e||{};if(!this.#q.createdSessionId)throw Error("Cannot finalize sign-in without a created session.");return r2(this.#q,async()=>{r6.clerk.client&&!r6.clerk.client.sessions.some(e=>e.id===this.#q.createdSessionId)&&await r6.clerk.client.reload(),this.#V=!0,await r6.clerk.setActive({session:this.#q.createdSessionId,navigate:t})})}reset(){if(!r6.clerk.client)throw Error("Cannot reset sign-in without a client.");return this.#V=!0,r6.clerk.client.resetSignIn(),Promise.resolve({error:null})}selectFirstFactor({strategy:e,emailAddressId:t,phoneNumberId:i}){if(!this.#q.supportedFirstFactors)return null;if(t){let i=this.#q.supportedFirstFactors.find(i=>i.strategy===e&&i.emailAddressId===t);if(i)return i}if(i){let t=this.#q.supportedFirstFactors.find(t=>t.strategy===e&&t.phoneNumberId===i);if(t)return t}let r=this.#q.supportedFirstFactors.find(t=>t.strategy===e&&t.safeIdentifier===this.#q.identifier);if(r)return r;let n=this.#q.supportedFirstFactors.find(t=>t.strategy===e);return n||null}}function r8(e){let{unsafeMetadata:t}={...e},i=t?"object"==typeof t?JSON.stringify(t):t:"";return{...e,...t?{unsafeMetadata:i}:{}}}class r7 extends tH{pathRoot="/client/sign_ups";id;_status=null;requiredFields=[];missingFields=[];optionalFields=[];unverifiedFields=[];verifications=new rf(null);username=null;firstName=null;lastName=null;emailAddress=null;phoneNumber=null;web3wallet=null;externalAccount;hasPassword=!1;unsafeMetadata={};createdSessionId=null;createdUserId=null;abandonAt=null;legalAcceptedAt=null;locale=null;get status(){return this._status}set status(e){let t=this._status;this._status=e,e&&t!==e&&ta.debug("SignUp.status",{id:this.id,from:t,to:e})}__internal_future=new ni(this);__internal_basePost=this._basePost.bind(this);__internal_basePatch=this._basePatch.bind(this);constructor(e=null){super(),this.fromJSON(e)}create=async e=>{ta.debug("SignUp.create",{id:this.id,strategy:e.strategy});let t={...e};if(!t.locale){let e=tv();e&&(t.locale=e)}if(!this.clientBypass()&&!this.shouldBypassCaptchaForAttempt(e)){let e=new tV(r7.clerk),i=await e.managedOrInvisible({action:"signup"});if(!i)throw new b("",{code:"captcha_unavailable"});t={...t,...i}}return this._basePost({path:this.pathRoot,body:r8(t)})};prepareVerification=e=>(ta.debug("SignUp.prepareVerification",{id:this.id,strategy:e.strategy}),this._basePost({body:e,action:"prepare_verification"}));attemptVerification=e=>(ta.debug("SignUp.attemptVerification",{id:this.id,strategy:e.strategy}),this._basePost({body:e,action:"attempt_verification"}));prepareEmailAddressVerification=e=>this.prepareVerification(e||{strategy:"email_code"});attemptEmailAddressVerification=e=>this.attemptVerification({...e,strategy:"email_code"});createEmailLinkFlow=()=>{let{run:e,stop:t}=re();return{startEmailLinkFlow:async({redirectUrl:i})=>(this.id||tz("SignUp"),await this.prepareEmailAddressVerification({strategy:"email_link",redirectUrl:i}),new Promise((i,r)=>{e(()=>this.reload().then(e=>{let r=e.verifications.emailAddress.status;("verified"===r||"expired"===r)&&(t(),i(e))}).catch(e=>{t(),r(e)}))})),cancelEmailLinkFlow:t}};preparePhoneNumberVerification=e=>this.prepareVerification(e||{strategy:"phone_code"});attemptPhoneNumberVerification=e=>this.attemptVerification({...e,strategy:"phone_code"});prepareWeb3WalletVerification=e=>this.prepareVerification({strategy:"web3_metamask_signature",...e});attemptWeb3WalletVerification=async e=>{let{signature:t,strategy:i="web3_metamask_signature"}=e;return this.attemptVerification({signature:t,strategy:i})};authenticateWithWeb3=async e=>{let t,{generateSignature:i,identifier:r,unsafeMetadata:n,strategy:s="web3_metamask_signature",legalAccepted:a,walletName:o}=e||{},l=s.replace("web3_","").replace("_signature","");"function"!=typeof i&&tN("generateSignature");let c=r||this.web3wallet;await this.create({web3Wallet:c,unsafeMetadata:n,legalAccepted:a}),await this.prepareWeb3WalletVerification({strategy:s});let{message:d}=this.verifications.web3Wallet;d||tF("SignUp");try{t=await i({identifier:r,nonce:d,provider:l,walletName:o})}catch(e){if("coinbase_wallet"===l&&4001===e.code)t=await i({identifier:r,nonce:d,provider:l});else throw e}return this.attemptWeb3WalletVerification({signature:t,strategy:s})};authenticateWithMetamask=async e=>{let t=await tA().getMetamaskIdentifier();return this.authenticateWithWeb3({identifier:t,generateSignature:tA().generateSignatureWithMetamask,unsafeMetadata:e?.unsafeMetadata,strategy:"web3_metamask_signature",legalAccepted:e?.legalAccepted})};authenticateWithCoinbaseWallet=async e=>{let t=await tA().getCoinbaseWalletIdentifier();return this.authenticateWithWeb3({identifier:t,generateSignature:tA().generateSignatureWithCoinbaseWallet,unsafeMetadata:e?.unsafeMetadata,strategy:"web3_coinbase_wallet_signature",legalAccepted:e?.legalAccepted})};authenticateWithBase=async e=>{let t=await tA().getBaseIdentifier();return this.authenticateWithWeb3({identifier:t,generateSignature:tA().generateSignatureWithBase,unsafeMetadata:e?.unsafeMetadata,strategy:"web3_base_signature",legalAccepted:e?.legalAccepted})};authenticateWithOKXWallet=async e=>{let t=await tA().getOKXWalletIdentifier();return this.authenticateWithWeb3({identifier:t,generateSignature:tA().generateSignatureWithOKXWallet,unsafeMetadata:e?.unsafeMetadata,strategy:"web3_okx_wallet_signature",legalAccepted:e?.legalAccepted})};authenticateWithSolana=async({walletName:e,unsafeMetadata:t,legalAccepted:i})=>{let r=await tA().getSolanaIdentifier(e);return this.authenticateWithWeb3({identifier:r,generateSignature:t=>tA().generateSignatureWithSolana({...t,walletName:e}),unsafeMetadata:t,strategy:"web3_solana_signature",legalAccepted:i,walletName:e})};authenticateWithRedirectOrPopup=async(e,t)=>{let{redirectUrl:i,redirectUrlComplete:r,strategy:n,continueSignUp:s=!1,unsafeMetadata:a,emailAddress:o,legalAccepted:l,oidcPrompt:c,enterpriseConnectionId:d}=e,h=r7.clerk.buildUrlWithAuth(i),u=()=>{let e={strategy:n,redirectUrl:h,actionCompleteRedirectUrl:r,unsafeMetadata:a,emailAddress:o,legalAccepted:l,oidcPrompt:c,enterpriseConnectionId:d};return s&&this.id?this.update(e):this.create(e)},{verifications:p}=await u().catch(async e=>{if(I(e)&&R(e))return await r7.clerk.__internal_environment.reload(),u();throw e}),{externalAccount:f}=p,{status:m,externalVerificationRedirectURL:g}=f;"unverified"===m&&g?t(g):tW(m,r7.fapiClient.buildEmailAddress("support"))};authenticateWithRedirect=async e=>this.authenticateWithRedirectOrPopup(e,eG);authenticateWithPopup=async e=>{let{popup:t}=e||{};return t||tN("popup"),r0(r7.clerk,"signUp",this.authenticateWithRedirectOrPopup,e,e=>{t.location.href=e instanceof URL?e.toString():e})};update=e=>this._basePatch({body:r8(e)});upsert=e=>this.id?this.update(e):this.create(e);validatePassword=(e,t)=>{if(r7.clerk.__internal_environment?.userSettings.passwordSettings)return rY(r4(),{...r7.clerk.__internal_environment?.userSettings.passwordSettings,validatePassword:!0})(e,t)};fromJSON(e){return e&&(this.id=e.id,this.status=e.status,this.requiredFields=e.required_fields,this.optionalFields=e.optional_fields,this.missingFields=e.missing_fields,this.unverifiedFields=e.unverified_fields,this.verifications=new rf(e.verifications),this.username=e.username,this.firstName=e.first_name,this.lastName=e.last_name,this.emailAddress=e.email_address,this.phoneNumber=e.phone_number,this.hasPassword=e.has_password,this.unsafeMetadata=e.unsafe_metadata,this.createdSessionId=e.created_session_id,this.createdUserId=e.created_user_id,this.abandonAt=e.abandon_at,this.web3wallet=e.web3_wallet,this.legalAcceptedAt=e.legal_accepted_at,this.locale=e.locale),iK.emit("resource:update",{resource:this}),this}__internal_updateFromJSON(e){return this.fromJSON(e)}__internal_toSnapshot(){return{object:"sign_up",id:this.id||"",status:this.status||null,required_fields:this.requiredFields,optional_fields:this.optionalFields,missing_fields:this.missingFields,unverified_fields:this.unverifiedFields,verifications:this.verifications.__internal_toSnapshot(),username:this.username,first_name:this.firstName,last_name:this.lastName,email_address:this.emailAddress,phone_number:this.phoneNumber,has_password:this.hasPassword,unsafe_metadata:this.unsafeMetadata,created_session_id:this.createdSessionId,created_user_id:this.createdUserId,abandon_at:this.abandonAt,web3_wallet:this.web3wallet,legal_accepted_at:this.legalAcceptedAt,locale:this.locale,external_account:this.externalAccount,external_account_strategy:this.externalAccount?.strategy}}clientBypass(){return r7.clerk.client?.captchaBypass}shouldBypassCaptchaForAttempt(e){let t=r7.clerk.__internal_environment.displayConfig.captchaOauthBypass;if(e.transfer){let e=r7.clerk.client.signIn.firstFactorVerification.strategy;if(t.some(t=>t===e)||ne(e))return!0}return!!(e.strategy&&t.some(t=>t===e.strategy))}__experimental_getEnterpriseConnections=()=>tH._fetch({path:`/client/sign_ups/${this.id}/enterprise_connections`,method:"GET"}).then(e=>(e?.response).map(e=>new nr(e)))}let r9=new Set(["email_link","email_code","phone_code"]);function ne(e){return!!e&&(r9.has(e)||e.startsWith("web3_"))}class nt{#q;sendEmailCode;verifyEmailCode;sendEmailLink;waitForEmailLinkVerification;sendPhoneCode;verifyPhoneCode;constructor(e,t){this.#q=e,this.sendEmailCode=t.sendEmailCode,this.verifyEmailCode=t.verifyEmailCode,this.sendEmailLink=t.sendEmailLink,this.waitForEmailLinkVerification=t.waitForEmailLinkVerification,this.sendPhoneCode=t.sendPhoneCode,this.verifyPhoneCode=t.verifyPhoneCode}get emailAddress(){return this.#q.verifications.emailAddress}get phoneNumber(){return this.#q.verifications.phoneNumber}get web3Wallet(){return this.#q.verifications.web3Wallet}get externalAccount(){return this.#q.verifications.externalAccount}get emailLinkVerification(){if(!n())return null;let e=eW("__clerk_status"),t=eW("__clerk_created_session");if(!e||!t)return null;let i="verified"===e&&void 0!==r7.clerk.client&&r7.clerk.client.sessions.some(e=>e.id===t);return{status:e,createdSessionId:t,verifiedFromTheSameClient:i}}}class ni{verifications;#V=!1;#q;constructor(e){this.#q=e,this.verifications=new nt(this.#q,{sendEmailCode:this.sendEmailCode.bind(this),verifyEmailCode:this.verifyEmailCode.bind(this),sendEmailLink:this.sendEmailLink.bind(this),waitForEmailLinkVerification:this.waitForEmailLinkVerification.bind(this),sendPhoneCode:this.sendPhoneCode.bind(this),verifyPhoneCode:this.verifyPhoneCode.bind(this)})}get id(){return this.#q.id}get requiredFields(){return this.#q.requiredFields}get optionalFields(){return this.#q.optionalFields}get missingFields(){return this.#q.missingFields}get status(){return this.#q.status||"missing_requirements"}get username(){return this.#q.username}get firstName(){return this.#q.firstName}get lastName(){return this.#q.lastName}get emailAddress(){return this.#q.emailAddress}get phoneNumber(){return this.#q.phoneNumber}get web3Wallet(){return this.#q.web3wallet}get hasPassword(){return this.#q.hasPassword}get unsafeMetadata(){return this.#q.unsafeMetadata}get createdSessionId(){return this.#q.createdSessionId}get createdUserId(){return this.#q.createdUserId}get abandonAt(){return this.#q.abandonAt}get legalAcceptedAt(){return this.#q.legalAcceptedAt}get locale(){return this.#q.locale}get unverifiedFields(){return this.#q.unverifiedFields}get isTransferable(){return"transferable"===this.#q.verifications.externalAccount.status&&this.#q.verifications.externalAccount.error?.code==="external_account_exists"}get existingSession(){if(("failed"===this.#q.verifications.externalAccount.status||"unverified"===this.#q.verifications.externalAccount.status)&&this.#q.verifications.externalAccount.error?.code==="identifier_already_signed_in"&&this.#q.verifications.externalAccount.error?.meta?.sessionId)return{sessionId:this.#q.verifications.externalAccount.error?.meta?.sessionId}}get canBeDiscarded(){return this.#V}shouldBypassCaptchaForAttempt(e){let t=r7.clerk.__internal_environment.displayConfig.captchaOauthBypass;if(e.transfer){let e=r7.clerk.client.signIn.firstFactorVerification.strategy;if(t.some(t=>t===e)||ne(e))return!0}return!!(e.strategy&&t.some(t=>t===e.strategy))}async getCaptchaToken(e={}){if(r7.clerk.client?.captchaBypass||this.shouldBypassCaptchaForAttempt(e))return{captchaToken:void 0,captchaWidgetType:void 0,captchaError:void 0};let t=new tV(r7.clerk),i=await t.managedOrInvisible({action:"signup"});if(!i)throw Error("Captcha challenge failed");let{captchaError:r,captchaToken:n,captchaWidgetType:s}=i;return{captchaToken:n,captchaWidgetType:s,captchaError:r}}async _create(e){let{captchaToken:t,captchaWidgetType:i,captchaError:r}=await this.getCaptchaToken(e),n={transfer:e.transfer,captchaToken:t,captchaWidgetType:i,captchaError:r,...e,unsafeMetadata:e.unsafeMetadata?r8(e.unsafeMetadata):void 0,locale:e.locale??tv()};await this.#q.__internal_basePost({path:this.#q.pathRoot,body:n})}async create(e){return r2(this.#q,async()=>{await this._create(e)})}async update(e){return r2(this.#q,async()=>{let t={...e,unsafeMetadata:e.unsafeMetadata?r8(e.unsafeMetadata):void 0};await this.#q.__internal_basePatch({path:this.#q.pathRoot,body:t})})}async password(e){return r2(this.#q,async()=>{let{captchaToken:t,captchaWidgetType:i,captchaError:r}=await this.getCaptchaToken(),n={strategy:"password",captchaToken:t,captchaWidgetType:i,captchaError:r,...e,unsafeMetadata:e.unsafeMetadata?r8(e.unsafeMetadata):void 0};this.#q.id?await this.#q.__internal_basePatch({body:n}):await this.#q.__internal_basePost({path:this.#q.pathRoot,body:n})})}async sendEmailCode(){return r2(this.#q,async()=>{await this.#q.__internal_basePost({body:{strategy:"email_code"},action:"prepare_verification"})})}async verifyEmailCode(e){let{code:t}=e;return r2(this.#q,async()=>{await this.#q.__internal_basePost({body:{strategy:"email_code",code:t},action:"attempt_verification"})})}async sendPhoneCode(e){let{channel:t="sms"}=e||{};return r2(this.#q,async()=>{await this.#q.__internal_basePost({body:{strategy:"phone_code",channel:t},action:"prepare_verification"})})}async verifyPhoneCode(e){let{code:t}=e;return r2(this.#q,async()=>{await this.#q.__internal_basePost({body:{strategy:"phone_code",code:t},action:"attempt_verification"})})}async sendEmailLink(e){let{verificationUrl:t}=e;return r2(this.#q,async()=>{let e=t;try{new URL(t)}catch{e=window.location.origin+t}await this.#q.__internal_basePost({body:{strategy:"email_link",redirectUrl:e},action:"prepare_verification"})})}async waitForEmailLinkVerification(){return r2(this.#q,async()=>{let{run:e,stop:t}=re();await new Promise((i,r)=>{e(()=>this.#q.reload().then(e=>{let r=e.verifications.emailAddress.status;("verified"===r||"expired"===r)&&(t(),i(e))}).catch(e=>{t(),r(e)}))})})}async sso(e){let{strategy:t,redirectUrl:i,redirectCallbackUrl:r,unsafeMetadata:n,legalAccepted:s,oidcPrompt:a,enterpriseConnectionId:o,emailAddress:l,popup:c}=e;return r2(this.#q,async()=>{let{captchaToken:e,captchaWidgetType:d,captchaError:h}=await this.getCaptchaToken({strategy:t}),u=i;try{new URL(i)}catch{u=window.location.origin+i}let p={redirectUrl:r7.clerk.buildUrlWithAuth(r),actionCompleteRedirectUrl:u};if(c){let e=r1(r7.clerk,{redirectCallbackUrl:p.redirectUrl,redirectUrl:u});p.redirectUrl=e.redirectCallbackUrl,p.actionCompleteRedirectUrl=e.redirectUrl}let f=()=>{let i={strategy:t,...p,unsafeMetadata:n,legalAccepted:s,oidcPrompt:a,enterpriseConnectionId:o,emailAddress:l,captchaToken:e,captchaWidgetType:d,captchaError:h};return this.#q.id?this.#q.__internal_basePatch({path:this.#q.pathRoot,body:i}):this.#q.__internal_basePost({path:this.#q.pathRoot,body:i})};await f().catch(async e=>{if(I(e)&&R(e))return await r7.clerk.__internal_environment.reload(),f();throw e});let{status:m,externalVerificationRedirectURL:g}=this.#q.verifications.externalAccount;"unverified"===m&&g&&(c?(await r3(r7.clerk,{popup:c,externalVerificationRedirectURL:g}),await this.#q.reload()):eG(g))})}async web3(e){let{strategy:t,unsafeMetadata:i,legalAccepted:r}=e,n=t.replace("web3_","").replace("_signature","");return r2(this.#q,async()=>{let e,s,a;switch(n){case"metamask":e=await tA().getMetamaskIdentifier(),s=tA().generateSignatureWithMetamask;break;case"coinbase_wallet":e=await tA().getCoinbaseWalletIdentifier(),s=tA().generateSignatureWithCoinbaseWallet;break;case"base":e=await tA().getBaseIdentifier(),s=tA().generateSignatureWithBase;break;case"okx_wallet":e=await tA().getOKXWalletIdentifier(),s=tA().generateSignatureWithOKXWallet;break;default:throw Error(`Unsupported Web3 provider: ${n}`)}let o=e||this.#q.web3wallet;await this._create({web3Wallet:o,unsafeMetadata:i,legalAccepted:r}),await this.#q.__internal_basePost({body:{strategy:t},action:"prepare_verification"});let{message:l}=this.#q.verifications.web3Wallet;l||tF("SignUp");try{a=await s({identifier:e,nonce:l})}catch(t){if("coinbase_wallet"===n&&4001===t.code)a=await s({identifier:e,nonce:l});else throw t}await this.#q.__internal_basePost({body:{signature:a,strategy:t},action:"attempt_verification"})})}async ticket(e){let t=e?.ticket??eW("__clerk_ticket");return this.create({...e,ticket:t??void 0})}async finalize(e){let{navigate:t}=e||{};return r2(this.#q,async()=>{if(!this.#q.createdSessionId)throw Error("Cannot finalize sign-up without a created session.");this.#V=!0,await r7.clerk.setActive({session:this.#q.createdSessionId,navigate:t})})}reset(){if(!r7.clerk.client)throw Error("Cannot reset sign-up without a client.");return this.#V=!0,r7.clerk.client.resetSignUp(),Promise.resolve({error:null})}}class nr extends tH{id;name;constructor(e){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.id=e.id,this.name=e.name),this}}class nn extends tH{pathRoot="tokens";jwt;static async create(e,t={},i={}){return new nn(await tH._fetch({method:"POST",path:e,body:t,search:i}),e)}constructor(e,t){super(),t&&(this.pathRoot=t),e?.jwt&&(this.jwt=tb(e.jwt))}getRawString=()=>this.jwt?.claims.__raw||"";fromJSON(e){return e&&(this.jwt=tb(e.jwt)),this}__internal_toSnapshot(){return{object:"token",id:this.id||"",jwt:this.getRawString()}}}class ns extends tH{pathRoot="/me";id="";secret;uri;verified=!1;backupCodes;updatedAt=null;createdAt=null;constructor(e){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.id=e.id,this.secret=e.secret,this.uri=e.uri,this.verified=e.verified,this.backupCodes=e.backup_codes,this.updatedAt=tG(e.updated_at),this.createdAt=tG(e.created_at)),this}}class na extends tH{pathRoot="/me";id;codes=[];updatedAt=null;createdAt=null;constructor(e){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.id=e.id,this.codes=e.codes,this.updatedAt=tG(e.updated_at),this.createdAt=tG(e.created_at)),this}}class no extends tH{advisory=null;form={name:"",slug:"",logo:null,blurHash:null};constructor(e=null){super(),this.fromJSON(e)}fromJSON(e){return e&&(e.advisory&&(this.advisory=this.withDefault(e.advisory,this.advisory??null)),e.form&&(this.form.name=this.withDefault(e.form.name,this.form.name),this.form.slug=this.withDefault(e.form.slug,this.form.slug),this.form.logo=this.withDefault(e.form.logo,this.form.logo),this.form.blurHash=this.withDefault(e.form.blur_hash,this.form.blurHash))),this}static async retrieve(){return await tH._fetch({path:"/me/organization_creation_defaults",method:"GET"}).then(e=>new no(e?.response))}__internal_toSnapshot(){return{advisory:this.advisory?{code:this.advisory.code,meta:this.advisory.meta,severity:this.advisory.severity}:null,form:{name:this.form.name,slug:this.form.slug,logo:this.form.logo,blur_hash:this.form.blurHash}}}}class nl extends tH{pathRoot="/me";id="";externalId=null;username=null;emailAddresses=[];phoneNumbers=[];web3Wallets=[];externalAccounts=[];enterpriseAccounts=[];passkeys=[];organizationMemberships=[];passwordEnabled=!1;firstName=null;lastName=null;fullName=null;primaryEmailAddressId=null;primaryEmailAddress=null;primaryPhoneNumberId=null;primaryPhoneNumber=null;primaryWeb3WalletId=null;primaryWeb3Wallet=null;imageUrl="";hasImage=!1;twoFactorEnabled=!1;totpEnabled=!1;backupCodeEnabled=!1;publicMetadata={};unsafeMetadata={};createOrganizationEnabled=!1;createOrganizationsLimit=null;deleteSelfEnabled=!1;lastSignInAt=null;legalAcceptedAt=null;updatedAt=null;createdAt=null;cachedSessionsWithActivities=null;static isUserResource(e){return!!e&&e instanceof nl}constructor(e){super(),this.fromJSON(e)}path(){return this.pathRoot}isPrimaryIdentification=e=>{switch(e.constructor){case rt:return this.primaryEmailAddressId===e.id;case rW:return this.primaryPhoneNumberId===e.id;case np:return this.primaryWeb3WalletId===e.id;default:return!1}};createEmailAddress=e=>{let{email:t}=e||{};return new rt({email_address:t},this.path()+"/email_addresses/").create()};createPasskey=()=>rN.registerPasskey();createPhoneNumber=e=>{let{phoneNumber:t}=e||{};return new rW({phone_number:t},this.path()+"/phone_numbers/").create()};createWeb3Wallet=e=>{let{web3Wallet:t}=e||{};return new np({web3_wallet:t},this.path()+"/web3_wallets/").create()};createExternalAccount=async e=>{let{strategy:t,redirectUrl:i,additionalScopes:r,enterpriseConnectionId:n}=e||{};return new rk((await tH._fetch({path:"/me/external_accounts",method:"POST",body:{strategy:t,redirect_url:i,additional_scope:r,enterprise_connection_id:n}}))?.response,this.path()+"/external_accounts")};createTOTP=async()=>new ns((await tH._fetch({path:"/me/totp",method:"POST"}))?.response);verifyTOTP=async({code:e})=>new ns((await tH._fetch({path:"/me/totp/attempt_verification",method:"POST",body:{code:e}}))?.response);disableTOTP=async()=>new i7((await tH._fetch({path:"/me/totp",method:"DELETE"}))?.response);createBackupCode=async()=>new na((await tH._fetch({path:this.path()+"/backup_codes/",method:"POST"}))?.response);update=e=>this._basePatch({body:r8(e)});updatePassword=e=>this._basePost({body:e,path:`${this.path()}/change_password`});removePassword=e=>this._basePost({body:e,path:`${this.path()}/remove_password`});delete=()=>this._baseDelete({path:"/me"}).then(e=>(iK.emit(ij,null),e));getSessions=async()=>{if(this.cachedSessionsWithActivities)return this.cachedSessionsWithActivities;let e=await rX.retrieve();return this.cachedSessionsWithActivities=e,e};setProfileImage=e=>{let{file:t}=e||{};return null===t?rU.delete(`${this.path()}/profile_image`):rU.create(`${this.path()}/profile_image`,{file:t})};getOrganizationInvitations=e=>nd.retrieve(e);getOrganizationSuggestions=e=>rR.retrieve(e);getOrganizationMemberships=e=>rx.retrieve(e);getOrganizationCreationDefaults=()=>no.retrieve();leaveOrganization=async e=>new i7((await tH._fetch({path:`${this.path()}/organization_memberships/${e}`,method:"DELETE"}))?.response);getEnterpriseConnections=async e=>{let{withOrganizationAccountLinking:t}=e||{};return((await tH._fetch({path:"/me/enterprise_connections",method:"GET",...void 0!==t?{search:{with_organization_account_linking:String(t)}}:{}}))?.response||[]).map(e=>new rw(e))};initializePaymentMethod=e=>iE(e);addPaymentMethod=e=>ix(e);getPaymentMethods=e=>iR(e);get verifiedExternalAccounts(){return this.externalAccounts.filter(e=>e.verification?.status=="verified")}get unverifiedExternalAccounts(){return this.externalAccounts.filter(e=>e.verification?.status!="verified")}get verifiedWeb3Wallets(){return this.web3Wallets.filter(e=>e.verification?.status=="verified")}get hasVerifiedEmailAddress(){return this.emailAddresses.filter(e=>"verified"===e.verification.status).length>0}get hasVerifiedPhoneNumber(){return this.phoneNumbers.filter(e=>"verified"===e.verification.status).length>0}fromJSON(e){return e&&(this.id=e.id,this.externalId=e.external_id||null,this.firstName=e.first_name||null,this.lastName=e.last_name||null,(this.firstName||this.lastName)&&(this.fullName=(({firstName:e,lastName:t,name:i})=>i||[e,t].join(" ").trim()||"")({firstName:this.firstName,lastName:this.lastName})),this.imageUrl=e.image_url||"",this.hasImage=e.has_image||!1,this.username=e.username||null,this.passwordEnabled=e.password_enabled||!1,this.emailAddresses=(e.email_addresses||[]).map(e=>new rt(e,this.path()+"/email_addresses")),this.primaryEmailAddressId=e.primary_email_address_id||null,this.primaryEmailAddress=this.emailAddresses.find(({id:e})=>e===this.primaryEmailAddressId)||null,this.phoneNumbers=(e.phone_numbers||[]).map(e=>new rW(e,this.path()+"/phone_numbers")),this.primaryPhoneNumberId=e.primary_phone_number_id||null,this.primaryPhoneNumber=this.phoneNumbers.find(({id:e})=>e===this.primaryPhoneNumberId)||null,this.web3Wallets=(e.web3_wallets||[]).map(e=>new np(e,this.path()+"/web3_wallets")),this.primaryWeb3WalletId=e.primary_web3_wallet_id||null,this.primaryWeb3Wallet=this.web3Wallets.find(({id:e})=>e===this.primaryWeb3WalletId)||null,this.externalAccounts=(e.external_accounts||[]).map(e=>new rk(e,this.path()+"/external_accounts")),this.passkeys=(e.passkeys||[]).map(e=>new rN(e)),this.organizationMemberships=(e.organization_memberships||[]).map(e=>new rx(e)),this.enterpriseAccounts=(e.enterprise_accounts||[]).map(e=>new rg(e,this.path()+"/enterprise_accounts")),this.publicMetadata=e.public_metadata||{},this.unsafeMetadata=e.unsafe_metadata||{},this.totpEnabled=e.totp_enabled||!1,this.backupCodeEnabled=e.backup_code_enabled||!1,this.twoFactorEnabled=e.two_factor_enabled||!1,this.createOrganizationEnabled=e.create_organization_enabled||!1,this.createOrganizationsLimit=e.create_organizations_limit||null,this.deleteSelfEnabled=e.delete_self_enabled||!1,e.last_sign_in_at&&(this.lastSignInAt=tG(e.last_sign_in_at)),e.legal_accepted_at&&(this.legalAcceptedAt=tG(e.legal_accepted_at)),this.updatedAt=tG(e.updated_at||void 0),this.createdAt=tG(e.created_at||void 0)),this}__internal_toSnapshot(){return{object:"user",id:this.id,external_id:this.externalId,first_name:this.firstName,last_name:this.lastName,username:this.username,public_metadata:this.publicMetadata,unsafe_metadata:this.unsafeMetadata,image_url:this.imageUrl,has_image:this.hasImage,email_addresses:this.emailAddresses.map(e=>e.__internal_toSnapshot()),phone_numbers:this.phoneNumbers.map(e=>e.__internal_toSnapshot()),web3_wallets:this.web3Wallets.map(e=>e.__internal_toSnapshot()),external_accounts:this.externalAccounts.map(e=>e.__internal_toSnapshot()),passkeys:this.passkeys.map(e=>e.__internal_toSnapshot()),organization_memberships:this.organizationMemberships.map(e=>e.__internal_toSnapshot()),enterprise_accounts:this.enterpriseAccounts.map(e=>e.__internal_toSnapshot()),totp_enabled:this.totpEnabled,backup_code_enabled:this.backupCodeEnabled,two_factor_enabled:this.twoFactorEnabled,create_organization_enabled:this.createOrganizationEnabled,create_organizations_limit:this.createOrganizationsLimit,delete_self_enabled:this.deleteSelfEnabled,primary_email_address_id:this.primaryEmailAddressId,primary_phone_number_id:this.primaryPhoneNumberId,primary_web3_wallet_id:this.primaryWeb3WalletId,password_enabled:this.passwordEnabled,profile_image_id:this.imageUrl,last_sign_in_at:this.lastSignInAt?.getTime()||null,legal_accepted_at:this.legalAcceptedAt?.getTime()||null,updated_at:this.updatedAt?.getTime()||null,created_at:this.createdAt?.getTime()||null}}}class nc{firstName;lastName;imageUrl;hasImage;constructor(e){this.fromJSON(e)}fromJSON(e){return e&&(this.firstName=e.first_name,this.lastName=e.last_name,this.imageUrl=e.image_url??void 0,this.hasImage=e.has_image??void 0),this}__internal_toSnapshot(){return{first_name:this.firstName,last_name:this.lastName,image_url:this.imageUrl||null,has_image:this.hasImage||null}}}class nd extends tH{id;emailAddress;publicOrganizationData;publicMetadata={};status;role;createdAt;updatedAt;static async retrieve(e){return await tH._fetch({path:"/me/organization_invitations",method:"GET",search:id(e)}).then(e=>{let{data:t,total_count:i}=e?.response;return{total_count:i,data:t.map(e=>new nd(e))}})}constructor(e){super(),this.fromJSON(e)}accept=async()=>await this._basePost({path:`/me/organization_invitations/${this.id}/accept`});fromJSON(e){return e&&(this.id=e.id,this.emailAddress=e.email_address,this.publicOrganizationData={hasImage:e.public_organization_data.has_image,imageUrl:e.public_organization_data.image_url,name:e.public_organization_data.name,id:e.public_organization_data.id,slug:e.public_organization_data.slug},this.publicMetadata=e.public_metadata,this.role=e.role,this.status=e.status,this.createdAt=tG(e.created_at),this.updatedAt=tG(e.updated_at)),this}}let nh={enabled:!1,first_factors:[],name:"phone_number",required:!1,second_factors:[],used_for_first_factor:!1,used_for_second_factor:!1,verifications:[],verify_at_sign_up:!1};class nu extends tH{id=void 0;actions={create_organization:!1,delete_self:!1};attributes={email_address:{enabled:!0,first_factors:["email_code"],name:"email_address",required:!0,second_factors:[],used_for_first_factor:!0,used_for_second_factor:!1,verifications:["email_code"],verify_at_sign_up:!0},phone_number:{...nh,name:"phone_number"},username:{...nh,name:"username"},web3_wallet:{...nh,name:"web3_wallet"},first_name:{...nh,name:"first_name"},last_name:{...nh,name:"last_name"},password:{enabled:!0,first_factors:[],name:"password",required:!0,second_factors:[],used_for_first_factor:!1,used_for_second_factor:!1,verifications:[],verify_at_sign_up:!1},authenticator_app:{...nh,name:"authenticator_app"},backup_code:{...nh,name:"backup_code"},passkey:{...nh,name:"passkey"}};enterpriseSSO={enabled:!1};passkeySettings={allow_autofill:!1,show_sign_in_button:!1};passwordSettings={};signIn={second_factor:{required:!1,enabled:!1}};signUp={allowlist_only:!1,captcha_enabled:!1,legal_consent_enabled:!1,mode:"public",progressive:!0,mfa:{required:!1}};social={};usernameSettings={};get authenticatableSocialStrategies(){return this.social?Object.entries(this.social).filter(([,e])=>e.enabled&&e.authenticatable).map(([,e])=>e.strategy).sort():[]}get enabledFirstFactorIdentifiers(){return this.attributes?Object.entries(this.attributes).filter(([e,t])=>t.used_for_first_factor&&!e.startsWith("web3")).map(([e])=>e):[]}get socialProviderStrategies(){return this.social?Object.entries(this.social).filter(([,e])=>e.enabled).map(([,e])=>e.strategy).sort():[]}get web3FirstFactors(){return this.attributes?Object.entries(this.attributes).filter(([e,t])=>t.used_for_first_factor&&e.startsWith("web3")).map(([,e])=>e.first_factors).flat():[]}get alternativePhoneCodeChannels(){return this.attributes?Object.entries(this.attributes).filter(([e,t])=>t.used_for_first_factor&&"phone_number"===e).map(([,e])=>e?.channels?.filter(e=>"sms"!==e)||[]).flat():[]}constructor(e=null){super(),this.fromJSON(e)}get instanceIsPasswordBased(){return!!this.attributes?.password?.enabled}get hasValidAuthFactor(){return!!(this.attributes?.email_address?.enabled||this.attributes?.phone_number?.enabled||this.attributes.password?.required&&this.attributes.username?.required)}fromJSON(e){return e&&(this.attributes=this.withDefault(e.attributes?Object.fromEntries(Object.entries(e.attributes).map(e=>[e[0],{...e[1],name:e[0]}])):null,this.attributes),this.actions=this.withDefault(e.actions,this.actions),this.enterpriseSSO=this.withDefault(e.enterprise_sso,this.enterpriseSSO),this.passkeySettings=this.withDefault(e.passkey_settings,this.passkeySettings),this.passwordSettings=e.password_settings?{...e.password_settings,min_length:Math.max(e.password_settings?.min_length??8,8),max_length:e.password_settings?.max_length===0?72:Math.min(e.password_settings?.max_length??72,72)}:this.passwordSettings,this.signIn=this.withDefault(e.sign_in,this.signIn),this.signUp=this.withDefault(e.sign_up,this.signUp),this.social=this.withDefault(e.social,this.social),this.usernameSettings=e.username_settings?{...e.username_settings,min_length:Math.max(e.username_settings?.min_length??4,4),max_length:Math.min(e.username_settings?.max_length??64,64)}:this.usernameSettings),this}__internal_toSnapshot(){return{actions:this.actions,attributes:this.attributes,passkey_settings:this.passkeySettings,password_settings:this.passwordSettings,sign_in:this.signIn,sign_up:this.signUp,social:this.social}}}class np extends tH{id;web3Wallet="";verification;constructor(e,t){super(),this.pathRoot=t,this.fromJSON(e)}create(){return this._basePost({body:{web3_wallet:this.web3Wallet}})}prepareVerification=e=>this._basePost({action:"prepare_verification",body:{...e}});attemptVerification=e=>{let{signature:t}=e;return this._basePost({action:"attempt_verification",body:{signature:t}})};destroy(){return this._baseDelete()}toString(){return this.web3Wallet}fromJSON(e){return e&&(this.id=e.id,this.web3Wallet=e.web3_wallet,this.verification=new ru(e.verification)),this}__internal_toSnapshot(){return{object:"web3_wallet",id:this.id,web3_wallet:this.web3Wallet,verification:this.verification.__internal_toSnapshot()}}}class nf extends tH{pathRoot="/waitlist";id="";updatedAt=null;createdAt=null;constructor(e=null){super(),this.fromJSON(e)}fromJSON(e){return e&&(this.id=e.id,this.updatedAt=tG(e.updated_at),this.createdAt=tG(e.created_at),iK.emit("resource:update",{resource:this})),this}async join(e){return r2(this,async()=>{await nf.join(e)})}static async join(e){return new nf(await tH._fetch({path:"/waitlist",method:"POST",body:e}))}}function nm(e,t){var i,r;return e.id!==t.id||e.updatedAt.getTime()<t.updatedAt.getTime()||(i=t,r=e,i.organizationMemberships.length!==r.organizationMemberships.length||i.organizationMemberships[0]?.updatedAt!==r.organizationMemberships[0]?.updatedAt)}function ng(e,t){return!function(e,t){if(!e&&t||e&&!t)return!0;if(!e&&e===t)return!1;if(!e||!t)return!0;try{if(i5.isClientResource(e))return e.id!==t.id||e.updatedAt.getTime()<t.updatedAt.getTime()||e.sessions.length!==t.sessions.length;if(rQ.isSessionResource(e)){var i,r;return e.id!==t.id||e.updatedAt.getTime()<t.updatedAt.getTime()||e.lastActiveToken?.jwt?.claims?.__raw!==t.lastActiveToken?.jwt?.claims?.__raw||function(e,t){if(e.lastActiveOrganizationId!==t.lastActiveOrganizationId)return!0;let i=e.user?.organizationMemberships?.find(t=>t.organization.id===e.lastActiveOrganizationId),r=t.user?.organizationMemberships?.find(t=>t.organization.id===e.lastActiveOrganizationId);return i?.permissions?.length!==r?.permissions?.length}(e,t)||(i=e,r=t,!!i.user!=!!r.user||!!i.user&&!!r.user&&nm(i.user,r.user))}if(nl.isUserResource(e))return nm(e,t)}catch{}return!0}(e,t)?e:t}let n_="__clerk_db_jwt";function nw(e,t){let i=new URL(e),r=i.searchParams.get(n_);i.searchParams.delete(n_);let n=r||t;return n&&i.searchParams.set(n_,n),i}let ny=e=>{let t=new URL(e);return t.searchParams.delete(n_),t},nb=e=>{let t=new URL(e);return t.searchParams.delete("__dev_session"),t.hash=decodeURI(t.hash).replace(/__clerk_db_jwt\[(.*)\]/,""),t.href.endsWith("#")&&(t.hash=""),t};function nv(e){for(var t=1;t<arguments.length;t++){var i=arguments[t];for(var r in i)e[r]=i[r]}return e}var nk=function e(t,i){function r(e,r,n){if("u">typeof document){"number"==typeof(n=nv({},i,n)).expires&&(n.expires=new Date(Date.now()+864e5*n.expires)),n.expires&&(n.expires=n.expires.toUTCString()),e=encodeURIComponent(e).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var s="";for(var a in n)n[a]&&(s+="; "+a,!0!==n[a]&&(s+="="+n[a].split(";")[0]));return document.cookie=e+"="+t.write(r,e)+s}}return Object.create({set:r,get:function(e){if("u">typeof document&&(!arguments.length||e)){for(var i=document.cookie?document.cookie.split("; "):[],r={},n=0;n<i.length;n++){var s=i[n].split("="),a=s.slice(1).join("=");try{var o=decodeURIComponent(s[0]);if(r[o]=t.read(a,o),e===o)break}catch(e){}}return e?r[e]:r}},remove:function(e,t){r(e,"",nv({},t,{expires:-1}))},withAttributes:function(t){return e(this.converter,nv({},this.attributes,t))},withConverter:function(t){return e(nv({},this.converter,t),this.attributes)}},{attributes:{value:Object.freeze(i)},converter:{value:Object.freeze(t)}})}({read:function(e){return'"'===e[0]&&(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}},{path:"/"});function nS(e){return{get:()=>nk.get(e),set(t,i={}){nk.set(e,t,i)},remove(t){nk.remove(e,t)}}}let nI=e=>"https:"===window.location.protocol||"None"===e&&void 0===window.safari&&(void 0!==window.isSecureContext?window.isSecureContext:"localhost"===window.location.hostname);function nU(e,t){let i=function(e){try{return new Date(e||new Date)}catch{return new Date}}(e);return i.setFullYear(i.getFullYear()+t),i}let nA=nS("__clerk_test_etld"),nC=[".lovable.app",".lovableproject.com",".webcontainer-api.io",".vusercontent.net",".v0.dev",".v0.app",".lp.dev",".replit.dev"];function nP(){try{return nC.some(e=>window.location.hostname.endsWith(e))}catch{return!1}}let nT="__client_uat",nO="__session",nE=e=>{let t=e.usePartitionedCookies(),i=t||tS()||nP()?"None":"Lax",r=nI(i);return{sameSite:i,secure:r,partitioned:t&&r}};async function nx(e){let t;try{t=await ew(e)}catch(a){var i;i=`Suffixed cookie failed due to ${a.message} (secure-context: ${window.isSecureContext}, url: ${window.location.href})`,Z.has(i)||(console.log(i),Z.add(i));let{default:r}=await l.e("811").then(l.t.bind(l,3515,23)),{default:n}=await l.e("811").then(l.t.bind(l,5662,23)),s=r(e);t=n.stringify(s).replace(/\+/gi,"-").replace(/\//gi,"_").substring(0,8)}return t}let nR=e=>{let t=e.usePartitionedCookies(),i=t||tS()||nP()?"None":"Lax",r=nI(i);return{sameSite:i,secure:r,partitioned:t&&r}};class nz{clerk;instanceType;clerkEventBus;poller=null;clientUat;sessionCookie;activeCookie;devBrowser;static async create(e,t,i,r){let n=await nx(e.publishableKey),s=new nz(e,t,n,i,r);return await s.setup(),s}constructor(e,t,r,n,s){this.clerk=e,this.instanceType=n,this.clerkEventBus=s,iK.on(i$,({token:e})=>{this.updateSessionCookie(e&&e.getRawString()),this.setClientUatCookieForDevelopmentInstances()}),iK.on(ij,()=>this.handleSignOut()),iK.on(iB,()=>{this.devBrowser.refreshCookies()}),this.refreshTokenOnFocus(),this.startPollingForToken();const a={usePartitionedCookies:()=>rv.getInstance().partitionedCookies};this.clientUat=((e,t)=>{let r=nS(nT),n=nS(ey(nT,e));return{set:e=>{let s=nU(Date.now(),1),a=t.usePartitionedCookies(),o=a||tS()||nP()?"None":"Strict",l=nI(o),c=a&&l,d=function(e=window.location.hostname,t=nA,r){if(i)return i;if(["localhost","127.0.0.1","0.0.0.0"].includes(e))return e;let n=e.split(".");if(1===n.length)return e;for(let e=n.length-2;e>=0;e--){let s=n.slice(e).join(".");if(t.set("1",{...r,domain:s}),"1"===t.get())return t.remove({...r,domain:s}),i=s,s;t.remove({...r,domain:s})}return i=e,e}(void 0,void 0,{sameSite:o,secure:l}),h="0";e&&e.updatedAt&&e.signedInSessions.length>0&&(h=Math.floor(e.updatedAt.getTime()/1e3).toString()),n.remove(),r.remove(),n.set(h,{domain:d,expires:s,partitioned:c,sameSite:o,secure:l}),r.set(h,{domain:d,expires:s,partitioned:c,sameSite:o,secure:l})},get:()=>parseInt(n.get()||r.get()||"0",10)}})(r,a),this.sessionCookie=((e,t)=>{let i=nS(nO),r=nS(ey(nO,e));return{set:e=>{let n=nU(Date.now(),1),{sameSite:s,secure:a,partitioned:o}=nE(t);o&&(i.remove(),r.remove()),i.set(e,{expires:n,sameSite:s,secure:a,partitioned:o}),r.set(e,{expires:n,sameSite:s,secure:a,partitioned:o})},remove:()=>{let e=nE(t);i.remove(e),r.remove(e),e.partitioned&&(i.remove(),r.remove())},get:()=>r.get()||i.get()}})(r,a),this.activeCookie=(()=>{let e=nS("clerk_active_context"),t={secure:nI("None")};return{set:i=>{e.set(i,t)},get:()=>e.get(),remove:()=>e.remove(t)}})(),this.devBrowser=function({cookieSuffix:e,frontendApi:t,fapiClient:i,cookieOptions:r}){let n,s,a,o=(s=nS(n_),a=nS(ey(n_,e)),{get:()=>a.get()||s.get(),set:e=>{let t=nU(Date.now(),1),{sameSite:i,secure:n,partitioned:o}=nR(r);o&&(a.remove(),s.remove()),a.set(e,{expires:t,sameSite:i,secure:n,partitioned:o}),s.set(e,{expires:t,sameSite:i,secure:n,partitioned:o})},remove:()=>{let e=nR(r);a.remove(e),s.remove(e),e.partitioned&&(a.remove(),s.remove())}});function l(){return n||o.get()}function c(e){n=e,o.set(e)}function d(){n=void 0,o.remove()}return{clear:function(){d()},setup:async function e(){var e;let r,s;if(!eU(t))return;i.onBeforeRequest(e=>{let t=l();t&&e?.url&&(e.url=nw(e.url,t))}),i.onAfterResponse((e,t)=>{let i=t?.headers?.get("Clerk-Db-Jwt");i&&c(i)});let a=(r=(e=new URL(window.location.href)).searchParams.get(n_)||"",(s=ny(nb(e))).href!==e.href&&void 0!==globalThis.history&&globalThis.history.replaceState(null,"",s),r);if(a)return void c(a);let d=o.get();if(d){n=d;return}let h=i.buildUrl({path:"/dev_browser"}),u=await fetch(h.toString(),{method:"POST"});if(!u.ok){let e=function(e=[]){return e.length>0?e.map(e=>new k(e)):[]}((await u.json()).errors);e[0]?tx(e[0].longMessage):tx()}let p=await u.json();c(p?.id)},getDevBrowser:l,setDevBrowser:c,removeDevBrowser:d,refreshCookies:function(){let e=l();e&&c(e)}}}({frontendApi:e.frontendApi,fapiClient:t,cookieSuffix:r,cookieOptions:a})}async setup(){return"production"===this.instanceType?this.setupProduction():this.setupDevelopment()}isSignedOut(){return this.clerk.loaded?!this.clerk.user:0>=this.clientUat.get()}async handleUnauthenticatedDevBrowser(){this.devBrowser.clear(),await this.devBrowser.setup()}decorateUrlWithDevBrowserToken(e){let t=this.devBrowser.getDevBrowser();if(!t)throw Error(`${tE} Missing dev browser. Please contact support.`);return nw(e,t)}async setupDevelopment(){await this.devBrowser.setup()}setupProduction(){this.devBrowser.clear()}startPollingForToken(){this.poller||(this.poller=new iZ,this.poller.startPollingForSessionToken(()=>this.refreshSessionToken()))}stopPollingForToken(){this.poller&&(this.poller.stopPollingForSessionToken(),this.poller=null)}refreshTokenOnFocus(){window.addEventListener("focus",()=>{"visible"===document.visibilityState&&this.refreshSessionToken({updateCookieImmediately:!0})})}async refreshSessionToken({updateCookieImmediately:e=!1}={}){if(this.clerk.session)try{let t=await this.clerk.session.getToken();e&&this.updateSessionCookie(t)}catch(e){return this.handleGetTokenError(e)}}updateSessionCookie(e){if(document.hasFocus()||this.isCurrentContextActive())return e||d()||ta.warn("Removing session cookie (offline)",{sessionId:this.clerk.session?.id},"authCookieService"),this.setActiveContextInStorage(),e?this.sessionCookie.set(e):this.sessionCookie.remove()}setClientUatCookieForDevelopmentInstances(){"production"!==this.instanceType&&this.inCustomDevelopmentDomain()&&this.clientUat.set(this.clerk.client)}inCustomDevelopmentDomain(){let e=this.clerk.frontendApi.replace("clerk.","");return!window.location.host.endsWith(e)}handleGetTokenError(e){if(I(e)||v(e)||(`${e.message}${e.name}`||"").toLowerCase().replace(/\s+/g,"").includes("networkerror")){if(M(e))return void this.clerk.handleUnauthenticated().catch(e9.lQ);this.clerkEventBus.emit(m,"degraded")}}handleSignOut(){this.activeCookie.remove(),this.sessionCookie.remove(),this.setClientUatCookieForDevelopmentInstances()}setActiveContextInStorage(){let e=this.clerk.session?.id||"",t=this.clerk.organization?.id||"",i=`${e}:${t}`;":"!==i?this.activeCookie.set(i):this.activeCookie.remove()}isCurrentContextActive(){let e=this.activeCookie.get();if(!e)return!0;let[t,i]=e.split(":"),r=this.clerk.session?.id||"",n=this.clerk.organization?.id||"";return t===r&&i===n}getSessionCookie(){return this.sessionCookie.get()}}class nM{clerk;captchaChallenge;timers;constructor(e,t=new tV(e),i=iQ()){this.clerk=e,this.captchaChallenge=t,this.timers=i}async start(){this.isEnabled()&&(await this.challengeAndSend(),this.timers.setInterval(()=>{this.challengeAndSend()},this.intervalInMs()))}async challengeAndSend(){if(!(!this.clerk.client||this.clientBypass()))try{let e=await this.captchaChallenge.invisible({action:"heartbeat"});await this.clerk.client.__internal_sendCaptchaToken(e)}catch{}}isEnabled(){return!!this.clerk.__internal_environment?.displayConfig?.captchaHeartbeat}clientBypass(){return this.clerk.client?.captchaBypass}intervalInMs(){return this.clerk.__internal_environment?.displayConfig?.captchaHeartbeatIntervalMs??6e5}}let nF=["/client","/waitlist"];class nN{static #W="/api_keys";async #H(){let e=await tH.clerk.session?.getToken();if(!e)throw new b("No valid session token available",{code:"no_session_token"});return{pathPrefix:"",headers:{Authorization:`Bearer ${e}`,"Content-Type":"application/json"},credentials:"same-origin"}}async getAll(e){return tH._fetch({...await this.#H(),method:"GET",path:nN.#W,search:id({...e,subject:e?.subject??tH.clerk.organization?.id??tH.clerk.user?.id??"",query:e?.query??""})}).then(e=>{let{data:t,total_count:i}=e;return{total_count:i,data:t.map(e=>new tQ(e))}})}async create(e){return new tQ(await tH._fetch({...await this.#H(),path:nN.#W,method:"POST",body:JSON.stringify({type:"api_key",name:e.name,subject:e.subject??tH.clerk.organization?.id??tH.clerk.user?.id??"",description:e.description,seconds_until_expiration:e.secondsUntilExpiration})}))}async revoke(e){return new tQ(await tH._fetch({...await this.#H(),method:"POST",path:`${nN.#W}/${e.apiKeyID}/revoke`,body:JSON.stringify({revocation_reason:e.revocationReason})}))}}let nW=new Map;class nD{async getConsentInfo(e){let{oauthClientId:t,scope:i}=e,r=await tH._fetch({method:"GET",path:`/me/oauth/consent/${encodeURIComponent(t)}`,search:void 0!==i?{scope:i}:void 0},{skipUpdateClient:!0});if(!r)throw new b("Network request failed while offline",{code:"network_error"});let n=r.response??r;return{oauthApplicationName:n.oauth_application_name,oauthApplicationLogoUrl:n.oauth_application_logo_url,oauthApplicationUrl:n.oauth_application_url,clientId:n.client_id,state:n.state,scopes:n.scopes?.map(e=>({scope:e.scope,description:e.description,requiresConsent:e.requires_consent}))??[]}}buildConsentActionUrl({clientId:e}){let t=tH.fapiClient.buildUrl({path:`/me/oauth/consent/${encodeURIComponent(e)}`,sessionId:tH.clerk.session?.id});return tH.clerk.buildUrlWithAuth(t.toString())}}class nL{#z=!1;load(e){let t=e?.protectConfig;if(t?.loaders&&Array.isArray(t.loaders)&&0!==t.loaders.length&&!this.#z){if(n())for(let e of(this.#z=!0,t.loaders))try{this.applyLoader(e)}catch(e){ee(`[protect] failed to apply loader: ${e}`)}}}applyLoader(e){if(void 0!==e.rollout){let t=e.rollout;if("number"!=typeof t||t<0)return void ee(`[protect] loader rollout value is invalid: ${t}`);if(0===t||Math.random()>t)return}let t=e.type||"script",i=e.target||"body",r=document.createElement(t);if(e.attributes)for(let[t,i]of Object.entries(e.attributes))switch(typeof i){case"string":case"number":case"boolean":r.setAttribute(t,String(i));break;default:ee(`[protect] loader attribute is invalid type: ${t}=${i}`)}switch(e.textContent&&"string"==typeof e.textContent&&(r.textContent=e.textContent),i){case"head":document.head.appendChild(r);break;case"body":document.body.appendChild(r);break;default:if(i?.startsWith("#")){let e=document.getElementById(i.substring(1));if(!e)return void ee(`[protect] loader target element not found: ${i}`);e.appendChild(r);return}ee(`[protect] loader target is invalid: ${i}`)}}}class n${signInResourceSignal=iu;signInErrorSignal=ip;signInFetchSignal=im;signInSignal=ig;signUpResourceSignal=i_;signUpErrorSignal=iw;signUpFetchSignal=iy;signUpSignal=ib;waitlistResourceSignal=iv;waitlistErrorSignal=ik;waitlistFetchSignal=iS;waitlistSignal=iI;_waitlistInstance;__internal_effect=ii;__internal_computed=it;constructor(){iK.on("resource:update",this.onResourceUpdated),iK.on("resource:error",this.onResourceError),iK.on("resource:fetch",this.onResourceFetch),this._waitlistInstance=new nf(null),this.waitlistResourceSignal({resource:this._waitlistInstance})}get __internal_waitlist(){return this._waitlistInstance}onResourceError=e=>{e.resource instanceof r6&&this.signInErrorSignal({error:e.error}),e.resource instanceof r7&&this.signUpErrorSignal({error:e.error}),e.resource instanceof nf&&this.waitlistErrorSignal({error:e.error})};onResourceUpdated=e=>{if(e.resource instanceof r6){if(nj(this.signInResourceSignal().resource,e.resource))return;this.signInResourceSignal({resource:e.resource})}if(e.resource instanceof r7){if(nj(this.signUpResourceSignal().resource,e.resource))return;this.signUpResourceSignal({resource:e.resource})}e.resource instanceof nf&&(this._waitlistInstance=e.resource,this.waitlistResourceSignal({resource:e.resource}))};onResourceFetch=e=>{e.resource instanceof r6&&this.signInFetchSignal({status:e.status}),e.resource instanceof r7&&this.signUpFetchSignal({status:e.status}),e.resource instanceof nf&&this.waitlistFetchSignal({status:e.status})}}function nj(e,t){return!t?.id&&e&&e.__internal_future?.canBeDiscarded===!1}let nB="cannot_render_billing_disabled",nJ="cannot_render_user_missing",nK="cannot_render_organizations_disabled",nV="cannot_render_organization_missing",nq="cannot_render_single_session_enabled",nH={polling:!0,standardBrowser:!0,touchSession:!0,isSatellite:!1,signInUrl:void 0,signUpUrl:void 0,afterSignOutUrl:void 0,signInFallbackRedirectUrl:void 0,signUpFallbackRedirectUrl:void 0,signInForceRedirectUrl:void 0,signUpForceRedirectUrl:void 0,newSubscriptionRedirectUrl:void 0};class nG{static version="6.7.5";static sdkMetadata={name:"@clerk/clerk-js",version:"6.7.5"};static _billing;static _apiKeys;static _oauthApplication;_checkout;client;session;organization;user;__internal_country;telemetry;__internal_state=new n$;internal_last_error=null;environment;#G;#Q="";#X;#Y;#Z;#ee;#et;#ei=null;#er;#en;#es;#ea="loading";#eo=[];#el=[];#ec={};#ed=null;#eh=0;#eu=f();get __internal_queryClient(){return this.#G||l.e("856").then(l.bind(l,8123)).then(e=>e.QueryClient).then(e=>{this.#G||(this.#G=new e,this.#eu.emit("queryClientStatus","ready"))}),this.#G?{__tag:"clerk-rq-client",client:this.#G}:void 0}__internal_getCachedResources;__internal_createPublicCredentials;__internal_getPublicCredentials;__internal_isWebAuthnSupported;__internal_isWebAuthnAutofillSupported;__internal_isWebAuthnPlatformAuthenticatorSupported;__internal_setActiveInProgress=!1;get publishableKey(){return this.#Q}get version(){return nG.version}set sdkMetadata(e){nG.sdkMetadata=e}get sdkMetadata(){return nG.sdkMetadata}get loaded(){return"degraded"===this.status||"ready"===this.status}get status(){return this.#ea}get isSatellite(){return!!tk()&&(0,e9.VK)(this.#ec.isSatellite,new URL(window.location.href),!1)}get domain(){if(tk()){let e=eb((0,e9.VK)(this.#X,new URL(window.location.href)));if("production"===this.#es){let t;if(!e)return"";if(e.match(/^(clerk\.)+\w*$/))t=/(clerk\.)*(?=clerk\.)/;else{if(e.match(/\.clerk.accounts/))return e;t=/^(clerk\.)*/gi}return`clerk.${e.replace(t,"")}`}return e}return"function"==typeof this.#X?(ee(eV.domainAsFunctionNotSupported),""):eb(this.#X||"")}get proxyUrl(){if(tk()){let e=(0,e9.VK)(this.#Y,new URL(window.location.href));return!e||eQ(e)||eX(e)||tw.throwInvalidProxyUrl({url:e}),e?eX(e)?new URL(e,window.location.origin).toString():e:""}return"function"==typeof this.#Y?(ee(eV.proxyUrlAsFunctionNotSupported),""):this.#Y||""}get frontendApi(){let e=eg(this.publishableKey);return e?e.frontendApi:tw.throwInvalidPublishableKeyError({key:this.publishableKey})}get instanceType(){return this.#es}get isStandardBrowser(){return this.#ec.standardBrowser||!1}get billing(){return nG._billing||(nG._billing=new ih),nG._billing}get apiKeys(){return nG._apiKeys||(nG._apiKeys=new nN),nG._apiKeys}get oauthApplication(){return nG._oauthApplication||(nG._oauthApplication=new nD),nG._oauthApplication}__experimental_checkout(e){return this._checkout||(this._checkout=e=>(function(e,t){let i,r,n,s,{for:a,planId:o,planPeriod:l}=t;if(null===e.user)throw Error("Clerk: User is not authenticated");if("organization"===a&&null===e.organization)throw Error("Clerk: The current session does not have an active organization. Use `setActive` to set the organization");let c=function(e){let{userId:t,orgId:i,planId:r,planPeriod:n}=e;return`${t}-${i||"user"}-${r}-${n}`}({userId:e.user?.id||"",orgId:"organization"===a?e.organization?.id:void 0,planId:o,planPeriod:l}),d=nW.get(c);if(d)return d.signals.computedSignal();let h=(i=ie({resource:null}),r=ie({error:null}),n=ie({status:"idle"}),s=it(()=>{let e=i().resource,t=r().error,s=n().status;return{errors:iU(t,{}),fetchStatus:s,checkout:e}}),{resourceSignal:i,errorSignal:r,fetchSignal:n,computedSignal:s}),u=new iP(h,{..."organization"===a?{orgId:e.organization?.id}:{},planId:o,planPeriod:l});return nW.set(c,{resource:u,signals:h}),h.computedSignal()})(this,e)),this._checkout(e)}__internal_getOption(e){return this.#ec[e]}get isSignedIn(){return this?.session?.status!=="pending"&&!!this.session}constructor(e,t){if(!(e=(e||"").trim()))return tw.throwMissingPublishableKeyError();const i=eg(e);if(!i)return tw.throwInvalidPublishableKeyError({key:e});this.#X=t?.domain,this.#Y=t?.proxyUrl,this.environment=rv.getInstance(),this.#es=i.instanceType,this.#Q=e,this.#en=function(e){let t=[],i=[];async function r(e){for await(let i of["u">typeof window&&window.__internal_onBeforeRequest,...t].filter(e=>e))if(await i(e)===!1)return!1;return!0}async function n(e,t){for await(let r of["u">typeof window&&window.__internal_onAfterResponse,...i].filter(e=>e))if(await r(e,t)===!1)return!1;return!0}function s({method:t,path:i,sessionId:r,search:n,rotatingTokenNonce:a}){let o=new URLSearchParams(n);return o.append("__clerk_api_version","2025-11-10"),o.append("_clerk_js_version","6.7.5"),a&&o.append("rotating_token_nonce",a),e.domain&&"development"===e.instanceType&&e.isSatellite&&o.append("__domain",e.domain),t&&"GET"!==t&&"POST"!==t&&o.append("_method",t),i&&!nF.some(e=>i.startsWith(e))&&r&&o.append("_clerk_session_id",r),ek([...o.entries()].reduce((e,[t,i])=>(e[t]=i.includes(",")?i.split(","):i,e),{}))}function a(t){let{path:i,pathPrefix:r="v1"}=t;if(e.proxyUrl){let n=new URL(e.proxyUrl),a=n.pathname.slice(1);return a.endsWith("/")&&(a=a.slice(0,-1)),eP({base:n.origin,pathname:`${a}/${r}${i}`,search:s(t)},{stringify:!1})}let n="production"===e.instanceType?e.domain:"";return eP({base:`https://${n||e.frontendApi}`,pathname:`${r}${i}`,search:s(t)},{stringify:!1})}async function l(t,i){let s,l={...t},{method:c="GET",body:d}=l;!d||"object"!=typeof d||d instanceof FormData||(l.body=function(e){if(!e||"object"!=typeof e||Object.getPrototypeOf(e)!==Object.prototype)return e;let t={};for(let[i,r]of Object.entries(e))void 0!==r&&(t[i]=r);return t}(d)),l.url=a({...l,sessionId:e.getSessionId()}),l.headers=new Headers(l.headers),"GET"===c||d instanceof FormData||l.headers.has("content-type")||l.headers.set("content-type","application/x-www-form-urlencoded"),"application/x-www-form-urlencoded"===l.headers.get("content-type")&&(l.body=d?ek(d,{keyEncoder:en}):d);let h=await r(l),u="GET"===c?"GET":"POST",p=l.url,f={...l,method:u,credentials:l.credentials||"include"};try{if(h){let e=i?.fetchMaxTries??(o()?4:11);s=await td(()=>fetch(p,f),{retryImmediately:!0,initialDelay:700,maxDelayBetweenRetries:5e3,shouldRetry:(t,i)=>"GET"===u&&i<e,onBeforeRetry:e=>{p.searchParams.set("_clerk_retry_attempt",e.toString())}})}else s=new Response("{}",l)}catch(t){let e=p.toString();ta.error("network error",{error:t,url:e,method:c},"fapiClient");throw Error(`${tE} Network error at "${e}" - ${t}. Please try again.`)}let m=204!==s.status?await s.json():null,g=Object.assign(s,{payload:m});return s.ok||ta.error("request failed",{method:c,path:l.path,status:s.status},"fapiClient"),await n(l,g),g}return{buildEmailAddress:function(t){return function({localPart:e,frontendApi:t}){return`${e}@${t?t.replace("clerk.",""):"clerk.com"}`}({localPart:t,frontendApi:e.frontendApi})},buildUrl:a,onAfterResponse:function(e){i.push(e)},onBeforeRequest:function(e){t.push(e)},request:l}}({domain:this.domain,frontendApi:this.frontendApi,instanceType:this.instanceType,isSatellite:this.isSatellite,getSessionId:()=>this.session?.id,proxyUrl:this.proxyUrl}),this.#eu.emit(m,"loading"),this.#eu.prioritizedOn(m,e=>this.#ea=e),this.#eu.on(m,e=>{tk()&&("ready"===e||"degraded"===e?window.__clerk_internal_ready?.__resolve&&this.#ep()&&window.__clerk_internal_ready.__resolve(this):"error"===e&&window.__clerk_internal_ready?.__reject&&window.__clerk_internal_ready.__reject(new b("Clerk failed to initialize.",{code:"clerk_init_failed"})))}),tk()&&("ready"===this.#ea||"degraded"===this.#ea)&&this.#ep()&&window.__clerk_internal_ready?.__resolve&&window.__clerk_internal_ready.__resolve(this),tH.clerk=this,this.#ee=new nL}getFapiClient=()=>this.#en;load=async e=>{if(ta.info("load() start",{},"clerk"),!this.loaded){if("development"!==this.#es||e?.unsafe_disableDevelopmentModeConsoleWarning||ee("Clerk: Clerk has been loaded with development keys. Development instances have strict usage limits and should not be used when deploying your application to production. Learn more: https://clerk.com/docs/deployments/overview"),this.#ec=this.#ef(e),this.#ec.ui?.ClerkUI&&(this.#er=Promise.resolve(this.#ec.ui.ClerkUI).then(e=>new e(()=>this,()=>this.environment,this.#ec,new tu))),"development"===this.#es&&(this.#ec.routerPush||this.#ec.routerReplace)&&(!this.#ec.routerPush||!this.#ec.routerReplace)){let e=this.#ec.routerPush?"routerReplace":"routerPush";ee(`Clerk: Both \`routerPush\` and \`routerReplace\` need to be defined, but \`${e}\` is not defined. This may cause issues with navigation in your application.`)}iK.on(iJ,()=>{this.#em(this.session)}),this.#ec.sdkMetadata&&(nG.sdkMetadata=this.#ec.sdkMetadata),!1!==this.#ec.telemetry&&(this.telemetry=new e3({clerkVersion:nG.version,samplingRate:1,perEventSampling:!this.#ec.__internal_keyless_claimKeylessApplicationUrl&&void 0,publishableKey:this.publishableKey,...this.#ec.telemetry}),this.#ec.appearance&&this.telemetry.record({event:"THEME_USAGE",eventSamplingRate:1,payload:function(e){let t;if(!e||"object"!=typeof e)return{};let i=e.theme;if(!i)return{};if(Array.isArray(i))for(let e of i){let i=e7(e);if(i){t=i;break}}else t=e7(i);return{themeName:t}}(this.#ec.appearance)}));try{this.#ec.standardBrowser?await this.#eg():await this.#e_();let e=this.#ec.telemetry,t=!1!==e&&!e?.disabled,i=!!this.#ec.__internal_keyless_claimKeylessApplicationUrl,r=!!this.environment?.clientDebugMode,n=this.environment?.isProduction?.()??!1,s=r||i&&!n,a=i&&!r?"error":void 0;s&&function(e={}){if(ti)return;let{enabled:t=!1,...i}=e;t&&(te=!0,ti=!0,ts(i))}({enabled:!0,...a?{logLevel:a}:{},...t&&this.telemetry?{telemetryCollector:this.telemetry}:{}}),this.#ee?.load(this.environment),ta.info("load() complete",{},"clerk")}catch(e){throw this.#eu.emit(m,"error"),ta.error("load() failed",{error:e},"clerk"),e}}};#ew(){let e;return!!(!this.#ec.signUpUrl&&this.#ec.signInUrl&&(e=this.#ec.signInUrl,!ev.test(e)))}signOut=async(e,t)=>{if(!this.client||0===this.client.sessions.length)return;let i="u">typeof window&&"function"==typeof window.__internal_onBeforeSetActive?window.__internal_onBeforeSetActive:e9.lQ,r="u">typeof window&&"function"==typeof window.__internal_onAfterSetActive?window.__internal_onAfterSetActive:e9.lQ,n=e&&"object"==typeof e?e:t||{},s=n?.redirectUrl||this.buildAfterSignOutUrl();ta.debug("signOut() start",{hasClient:!!this.client,multiSessionCount:this.client?.signedInSessions.length??0,redirectUrl:s,sessionTarget:n?.sessionId??null},"clerk");let a="function"==typeof e?e:void 0,o=async()=>{let e=tp(this.#ec.standardBrowser);iK.emit(ij,null),await e.track(async()=>{a?await a():await this.navigate(s)}),e.isUnloading()||(this.#em(),await r())};if(await i(),!n.sessionId||1===this.client.signedInSessions.length){this.#ey(),this.#ec.experimental?.persistClient??!0?await this.client.removeSessions():await this.client.destroy(),await o(),ta.info("signOut() complete",{redirectUrl:eT(s)},"clerk");return}let l=this.client.signedInSessions.find(e=>e.id===n.sessionId);l?.id&&this.session?.id===l.id?(this.#ey(),await l?.remove(),await o(),ta.info("signOut() complete",{redirectUrl:eT(s)},"clerk")):await l?.remove()};openGoogleOneTap=e=>{this.assertComponentsReady(this.#er),this.#er.then(e=>e.ensureMounted()).then(t=>t.openModal("googleOneTap",e||{})),this.telemetry?.record(e8("GoogleOneTap",e))};closeGoogleOneTap=()=>{this.#er?.then(e=>e.ensureMounted()).then(e=>e.closeModal("googleOneTap"))};openSignIn=e=>{if($(this,this.environment)){if("development"===this.#es)throw new b(eV.cannotOpenSignInOrSignUp,{code:nq});return}this.assertComponentsReady(this.#er);let t="SignIn";this.#er.then(e=>e.ensureMounted({preloadHint:t})).then(t=>t.openModal("signIn",e||{}));let i={withSignUp:e?.withSignUp??this.#ew()};this.telemetry?.record(e8(t,e,i))};closeSignIn=()=>{this.#er?.then(e=>e.ensureMounted()).then(e=>e.closeModal("signIn"))};__internal_openCheckout=e=>{if(j(this,this.environment)){if("development"===this.#es)throw new b(eV.cannotRenderAnyBillingComponent("Checkout"),{code:nB});return}if(!this.user){if("development"===this.#es)throw new b(eV.cannotOpenCheckout,{code:nJ});return}this.assertComponentsReady(this.#er),this.#er.then(e=>e.ensureMounted()).then(t=>t.openDrawer("checkout",e||{}))};__internal_closeCheckout=()=>{this.#er?.then(e=>e.ensureMounted()).then(e=>e.closeDrawer("checkout"))};__internal_openPlanDetails=e=>{if(j(this,this.environment)){if("development"===this.#es)throw new b(eV.cannotRenderAnyBillingComponent("PlanDetails"),{code:nB});return}this.assertComponentsReady(this.#er),this.#er.then(e=>e.ensureMounted()).then(t=>t.openDrawer("planDetails",e||{})),this.telemetry?.record(e8("PlanDetails",e))};__internal_closePlanDetails=()=>{this.#er?.then(e=>e.ensureMounted()).then(e=>e.closeDrawer("planDetails"))};__internal_openSubscriptionDetails=e=>{this.assertComponentsReady(this.#er),this.#er.then(e=>e.ensureMounted()).then(t=>t.openDrawer("subscriptionDetails",e||{}))};__internal_closeSubscriptionDetails=()=>{this.#er?.then(e=>e.ensureMounted()).then(e=>e.closeDrawer("subscriptionDetails"))};__internal_openReverification=e=>{if(!this.user){if("development"===this.#es)throw new b(eV.cannotOpenUserProfile,{code:nJ});return}this.assertComponentsReady(this.#er),this.#er.then(e=>e.ensureMounted()).then(t=>t.openModal("userVerification",e||{})),this.telemetry?.record(e8("UserVerification",e))};__internal_closeReverification=()=>{this.#er?.then(e=>e.ensureMounted()).then(e=>e.closeModal("userVerification"))};__internal_attemptToEnableEnvironmentSetting=e=>{let{for:t,caller:i}=e;if(this.user||"development"!==this.#es||ee(`Clerk: "${i}" requires an active user session. Ensure a user is signed in before executing ${i}.`),"organizations"===t){let t;return(t=this.environment,t?.organizationSettings.enabled||this.session?.currentTask?.key==="choose-organization")?{isEnabled:!0}:("development"===this.#es&&this.__internal_openEnableOrganizationsPrompt({caller:i,onSuccess:()=>window.location.reload(),onClose:e.onClose}),{isEnabled:!1})}throw Error(`Attempted to enable an unknown or unsupported setting "${t}".`)};__internal_openEnableOrganizationsPrompt=e=>{this.assertComponentsReady(this.#er),this.#er.then(e=>e.ensureMounted({preloadHint:"EnableOrganizationsPrompt"})).then(t=>t.openModal("enableOrganizationsPrompt",e||{})),this.telemetry?.record(e5("EnableOrganizationsPrompt",e))};__internal_closeEnableOrganizationsPrompt=()=>{this.assertComponentsReady(this.#er),this.#er?.then(e=>e.ensureMounted()).then(e=>e.closeModal("enableOrganizationsPrompt"))};__internal_openBlankCaptchaModal=()=>(this.assertComponentsReady(this.#er),this.#er.then(e=>e.ensureMounted()).then(e=>e.openModal("blankCaptcha",{})));__internal_closeBlankCaptchaModal=()=>(this.assertComponentsReady(this.#er),this.#er.then(e=>e.ensureMounted()).then(e=>e.closeModal("blankCaptcha")));__internal_loadStripeJs=async()=>{let{loadStripe:e}=await l.e("832").then(l.bind(l,8755));return e};openSignUp=e=>{if($(this,this.environment)){if("development"===this.#es)throw new b(eV.cannotOpenSignInOrSignUp,{code:nq});return}this.assertComponentsReady(this.#er),this.#er.then(e=>e.ensureMounted({preloadHint:"SignUp"})).then(t=>t.openModal("signUp",e||{})),this.telemetry?.record(e8("SignUp",e))};closeSignUp=()=>{this.#er?.then(e=>e.ensureMounted()).then(e=>e.closeModal("signUp"))};openUserProfile=e=>{if(!this.user){if("development"===this.#es)throw new b(eV.cannotOpenUserProfile,{code:nJ});return}this.assertComponentsReady(this.#er),this.#er.then(e=>e.ensureMounted({preloadHint:"UserProfile"})).then(t=>t.openModal("userProfile",e||{}));let t=(e?.customPages?.length||0)>0?{customPages:!0}:void 0;this.telemetry?.record(e8("UserProfile",e,t))};closeUserProfile=()=>{this.#er?.then(e=>e.ensureMounted()).then(e=>e.closeModal("userProfile"))};openOrganizationProfile=e=>{let{isEnabled:t}=this.__internal_attemptToEnableEnvironmentSetting({for:"organizations",caller:"OrganizationProfile",onClose:()=>{throw new b(eV.cannotRenderAnyOrganizationComponent("OrganizationProfile"),{code:nK})}});if(t){if(!this.organization){if("development"===this.#es)throw new b(eV.cannotRenderComponentWhenOrgDoesNotExist,{code:nV});return}this.assertComponentsReady(this.#er),this.#er.then(e=>e.ensureMounted({preloadHint:"OrganizationProfile"})).then(t=>t.openModal("organizationProfile",e||{})),this.telemetry?.record(e8("OrganizationProfile",e))}};closeOrganizationProfile=()=>{this.#er?.then(e=>e.ensureMounted()).then(e=>e.closeModal("organizationProfile"))};openCreateOrganization=e=>{let{isEnabled:t}=this.__internal_attemptToEnableEnvironmentSetting({for:"organizations",caller:"CreateOrganization",onClose:()=>{throw new b(eV.cannotRenderAnyOrganizationComponent("CreateOrganization"),{code:nK})}});t&&(this.assertComponentsReady(this.#er),this.#er.then(e=>e.ensureMounted({preloadHint:"CreateOrganization"})).then(t=>t.openModal("createOrganization",e||{})),this.telemetry?.record(e8("CreateOrganization",e)))};closeCreateOrganization=()=>{this.#er?.then(e=>e.ensureMounted()).then(e=>e.closeModal("createOrganization"))};openWaitlist=e=>{this.assertComponentsReady(this.#er),this.#er.then(e=>e.ensureMounted({preloadHint:"Waitlist"})).then(t=>t.openModal("waitlist",e||{})),this.telemetry?.record(e8("Waitlist",e))};closeWaitlist=()=>{this.#er?.then(e=>e.ensureMounted()).then(e=>e.closeModal("waitlist"))};mountSignIn=(e,t)=>{this.assertComponentsReady(this.#er);let i="SignIn";this.#er.then(e=>e.ensureMounted({preloadHint:i})).then(r=>r.mountComponent({name:i,appearanceKey:"signIn",node:e,props:t}));let r={withSignUp:t?.withSignUp??this.#ew()};this.telemetry?.record(e5(i,t,r))};unmountSignIn=e=>{this.#er?.then(e=>e.ensureMounted()).then(t=>t.unmountComponent({node:e}))};mountUserAvatar=(e,t)=>{this.assertComponentsReady(this.#er);let i="UserAvatar";this.#er.then(e=>e.ensureMounted({preloadHint:i})).then(r=>r.mountComponent({name:i,appearanceKey:"userAvatar",node:e,props:t})),this.telemetry?.record(e5(i,t))};unmountUserAvatar=e=>{this.#er?.then(e=>e.ensureMounted()).then(t=>t.unmountComponent({node:e}))};mountSignUp=(e,t)=>{this.assertComponentsReady(this.#er);let i="SignUp";this.#er.then(e=>e.ensureMounted({preloadHint:i})).then(r=>r.mountComponent({name:i,appearanceKey:"signUp",node:e,props:t})),this.telemetry?.record(e5(i,t))};unmountSignUp=e=>{this.#er?.then(e=>e.ensureMounted()).then(t=>t.unmountComponent({node:e}))};mountUserProfile=(e,t)=>{if(!this.user){if("development"===this.#es)throw new b(eV.cannotRenderComponentWhenUserDoesNotExist,{code:nJ});return}this.assertComponentsReady(this.#er);let i="UserProfile";this.#er.then(e=>e.ensureMounted({preloadHint:i})).then(r=>r.mountComponent({name:i,appearanceKey:"userProfile",node:e,props:t}));let r=(t?.customPages?.length||0)>0?{customPages:!0}:void 0;this.telemetry?.record(e5(i,t,r))};unmountUserProfile=e=>{this.#er?.then(e=>e.ensureMounted()).then(t=>t.unmountComponent({node:e}))};mountOrganizationProfile=(e,t)=>{let{isEnabled:i}=this.__internal_attemptToEnableEnvironmentSetting({for:"organizations",caller:"OrganizationProfile",onClose:()=>{throw new b(eV.cannotRenderAnyOrganizationComponent("OrganizationProfile"),{code:nK})}});if(!i)return;let r=!!this.user;if(!this.organization&&r){if("development"===this.#es)throw new b(eV.cannotRenderComponentWhenOrgDoesNotExist,{code:nV});return}this.assertComponentsReady(this.#er);let n="OrganizationProfile";this.#er.then(e=>e.ensureMounted({preloadHint:n})).then(i=>i.mountComponent({name:n,appearanceKey:"userProfile",node:e,props:t})),this.telemetry?.record(e5(n,t))};unmountOrganizationProfile=e=>{this.#er?.then(e=>e.ensureMounted()).then(t=>t.unmountComponent({node:e}))};mountCreateOrganization=(e,t)=>{let{isEnabled:i}=this.__internal_attemptToEnableEnvironmentSetting({for:"organizations",caller:"CreateOrganization",onClose:()=>{throw new b(eV.cannotRenderAnyOrganizationComponent("CreateOrganization"),{code:nK})}});if(!i)return;this.assertComponentsReady(this.#er);let r="CreateOrganization";this.#er.then(e=>e.ensureMounted({preloadHint:r})).then(i=>i.mountComponent({name:r,appearanceKey:"createOrganization",node:e,props:t})),this.telemetry?.record(e5(r,t))};unmountCreateOrganization=e=>{this.#er?.then(e=>e.ensureMounted()).then(t=>t.unmountComponent({node:e}))};mountOrganizationSwitcher=(e,t)=>{let{isEnabled:i}=this.__internal_attemptToEnableEnvironmentSetting({for:"organizations",caller:"OrganizationSwitcher",onClose:()=>{throw new b(eV.cannotRenderAnyOrganizationComponent("OrganizationSwitcher"),{code:nK})}});if(!i)return;this.assertComponentsReady(this.#er);let r="OrganizationSwitcher";this.#er.then(e=>e.ensureMounted({preloadHint:r})).then(i=>i.mountComponent({name:r,appearanceKey:"organizationSwitcher",node:e,props:t})),this.telemetry?.record(e5(r,{...t,forceOrganizationSelection:this.environment?.organizationSettings.forceOrganizationSelection}))};unmountOrganizationSwitcher=e=>{this.#er?.then(e=>e.ensureMounted()).then(t=>t.unmountComponent({node:e}))};__experimental_prefetchOrganizationSwitcher=()=>{this.assertComponentsReady(this.#er),this.#er.then(e=>e.ensureMounted()).then(e=>e.prefetch("organizationSwitcher"))};mountOrganizationList=(e,t)=>{let{isEnabled:i}=this.__internal_attemptToEnableEnvironmentSetting({for:"organizations",caller:"OrganizationList",onClose:()=>{throw new b(eV.cannotRenderAnyOrganizationComponent("OrganizationList"),{code:nK})}});if(!i)return;this.assertComponentsReady(this.#er);let r="OrganizationList";this.#er.then(e=>e.ensureMounted({preloadHint:r})).then(i=>i.mountComponent({name:r,appearanceKey:"organizationList",node:e,props:t})),this.telemetry?.record(e5(r,{...t,forceOrganizationSelection:this.environment?.organizationSettings.forceOrganizationSelection}))};unmountOrganizationList=e=>{this.#er?.then(e=>e.ensureMounted()).then(t=>t.unmountComponent({node:e}))};mountUserButton=(e,t)=>{this.assertComponentsReady(this.#er);let i="UserButton";this.#er.then(e=>e.ensureMounted({preloadHint:i})).then(r=>r.mountComponent({name:i,appearanceKey:"userButton",node:e,props:t}));let r={...t?.customMenuItems?.length||0?{customItems:!0}:void 0,...t?.__experimental_asStandalone?{standalone:!0}:void 0};this.telemetry?.record(e5(i,t,r))};unmountUserButton=e=>{this.#er?.then(e=>e.ensureMounted()).then(t=>t.unmountComponent({node:e}))};mountWaitlist=(e,t)=>{this.assertComponentsReady(this.#er);let i="Waitlist";this.#er.then(e=>e.ensureMounted({preloadHint:i})).then(r=>r.mountComponent({name:i,appearanceKey:"waitlist",node:e,props:t})),this.telemetry?.record(e5(i,t))};unmountWaitlist=e=>{this.#er?.then(e=>e.ensureMounted()).then(t=>t.unmountComponent({node:e}))};mountPricingTable=(e,t)=>{if(j(this,this.environment)){if("development"===this.#es)throw new b(eV.cannotRenderAnyBillingComponent("PricingTable"),{code:nB});return}this.assertComponentsReady(this.#er);let i="PricingTable";this.#er.then(e=>e.ensureMounted({preloadHint:i})).then(r=>r.mountComponent({name:i,appearanceKey:"pricingTable",node:e,props:t})),this.telemetry?.record(e5(i,t))};unmountPricingTable=e=>{this.#er?.then(e=>e.ensureMounted()).then(t=>t.unmountComponent({node:e}))};__internal_mountOAuthConsent=(e,t)=>{if(!this.user){if("development"===this.#es)throw new b(eV.cannotRenderOAuthConsentComponentWhenUserDoesNotExist,{code:nJ});return}this.assertComponentsReady(this.#er);let i="OAuthConsent";this.#er.then(e=>e.ensureMounted({preloadHint:i})).then(r=>r.mountComponent({name:i,appearanceKey:"__internal_oauthConsent",node:e,props:t}))};__internal_unmountOAuthConsent=e=>{this.#er?.then(e=>e.ensureMounted()).then(t=>t.unmountComponent({node:e}))};mountAPIKeys=(e,t)=>{let i;if(B(this,i=this.environment)&&J(this,i)){if("development"===this.#es)throw new b(eV.cannotRenderAPIKeysComponent,{code:"cannot_render_api_keys_disabled"});return}if(this.organization&&J(this,this.environment)){if("development"===this.#es)throw new b(eV.cannotRenderAPIKeysComponentForOrgWhenDisabled,{code:"cannot_render_api_keys_org_disabled"});return}if(B(this,this.environment)){if("development"===this.#es)throw new b(eV.cannotRenderAPIKeysComponentForUserWhenDisabled,{code:"cannot_render_api_keys_user_disabled"});return}this.assertComponentsReady(this.#er);let r="APIKeys";this.#er.then(e=>e.ensureMounted({preloadHint:r})).then(i=>i.mountComponent({name:r,appearanceKey:"apiKeys",node:e,props:t})),this.telemetry?.record(e5(r,t))};unmountAPIKeys=e=>{this.#er?.then(e=>e.ensureMounted()).then(t=>t.unmountComponent({node:e}))};mountTaskChooseOrganization=(e,t)=>{let{isEnabled:i}=this.__internal_attemptToEnableEnvironmentSetting({for:"organizations",caller:"TaskChooseOrganization",onClose:()=>{throw new b(eV.cannotRenderAnyOrganizationComponent("TaskChooseOrganization"),{code:nK})}});if(!i)return;this.assertComponentsReady(this.#er);let r="TaskChooseOrganization";this.#er.then(e=>e.ensureMounted({preloadHint:r})).then(i=>i.mountComponent({name:r,appearanceKey:"taskChooseOrganization",node:e,props:t})),this.telemetry?.record(e5(r,t))};unmountTaskChooseOrganization=e=>{this.#er?.then(e=>e.ensureMounted()).then(t=>t.unmountComponent({node:e}))};mountTaskResetPassword=(e,t)=>{this.assertComponentsReady(this.#er);let i="TaskResetPassword";this.#er.then(e=>e.ensureMounted({preloadHint:i})).then(r=>r.mountComponent({name:i,appearanceKey:"taskResetPassword",node:e,props:t})),this.telemetry?.record(e5("TaskResetPassword",t))};unmountTaskResetPassword=e=>{this.#er?.then(e=>e.ensureMounted()).then(t=>t.unmountComponent({node:e}))};mountTaskSetupMFA=(e,t)=>{this.assertComponentsReady(this.#er);let i="TaskSetupMFA";this.#er.then(e=>e.ensureMounted({preloadHint:i})).then(r=>r.mountComponent({name:i,appearanceKey:"taskSetupMfa",node:e,props:t})),this.telemetry?.record(e5("TaskSetupMFA",t))};unmountTaskSetupMFA=e=>{this.#er?.then(e=>e.ensureMounted()).then(t=>t.unmountComponent({node:e}))};setActive=async e=>{let{organization:t,redirectUrl:i,navigate:r}=e,{session:n}=e;this.__internal_setActiveInProgress=!0,ta.debug("setActive() start",{hasClient:!!this.client,sessionTarget:"string"==typeof n?n:n?.id??n??null,organizationTarget:"string"==typeof t?t:t?.id??t??null,redirectUrl:i??null},"clerk");try{var s;let a;if(!this.client)throw ta.warn("Clerk setActive called before client is loaded",{},"clerk"),Error("setActive is being called before the client is loaded. Wait for init.");if(void 0===n&&!this.session)throw ta.warn("Clerk setActive precondition not met: no target session and no active session",{},"clerk"),Error("setActive should either be called with a session param or there should be already an active session.");"string"==typeof n&&(n=this.client.sessions.find(e=>e.id===n)||null);let o="u">typeof window&&"function"==typeof window.__internal_onBeforeSetActive?window.__internal_onBeforeSetActive:e9.lQ,l="u">typeof window&&"function"==typeof window.__internal_onAfterSetActive?window.__internal_onAfterSetActive:e9.lQ,c=void 0===n?this.session:n;c?.status==="pending"&&(s={...this.#ec,...e},a=["taskUrls","navigate"],Object.keys(s).some(e=>a.includes(e))||ee('Clerk: Session has pending tasks but no handling is configured. To handle pending tasks, provide either "taskUrls" for navigation to custom URLs or "navigate" for programmatic navigation. Without these options, users may get stuck on incomplete flows.'));let d=void 0!==t;if(c&&d){let e="string"==typeof t?t:t?.id;if("string"==typeof e&&e.startsWith("org_"))c.lastActiveOrganizationId=e||null;else{let t=c.user.organizationMemberships.find(t=>t.organization.slug===e),i=t?.organization.id||null,r=null===i;if(this.environment?.organizationSettings?.forceOrganizationSelection&&r)return;c.lastActiveOrganizationId=i}}c?.status!=="pending"&&await o(null===c?"sign-out":void 0);let h=c?.status==="pending"&&c?.currentTask&&this.#ec.taskUrls?.[c?.currentTask.key],u=!!(i||h||r),p=d?"select_org":"select_session";if(tk()&&globalThis.document.hasFocus()||!this.#ec.standardBrowser){let e;if(u&&c)try{(e=await c.__internal_touch({intent:p}))&&this.updateClient(e,{__internal_dangerouslySkipEmit:!0})}catch(e){if(M(e))this.handleUnauthenticated();else throw e}else await this.#eb(c,p);c=this.#ev(c?.id,e)}try{await c?.getToken()||iK.emit(i$,{token:null})}catch(e){if(A.is(e))ta.warn("Token fetch failed when setting active session (offline). Preserving existing auth state.",{sessionId:c?.id},"clerk");else throw e}let f=tp(this.#ec.standardBrowser);if(u&&await f.track(async()=>{if(this.client){if(c?.status!=="pending"&&this.#ey(),h){let e=i?eP({base:h,hashSearchParams:{redirectUrl:i}},{stringify:!0}):h;await this.navigate(e)}else if(r&&c){let e=!1,t=t=>{if(e=!0,!this.client?.isEligibleForTouch())return t;let i=new URL(t,window.location.href),r=this.client.buildTouchUrl({redirectUrl:i});return this.buildUrlWithAuth(r)};await r({session:c,decorateUrl:t}),"development"===this.#es&&!e&&this.client.isEligibleForTouch()&&ee("Clerk: The navigate callback in setActive() did not call decorateUrl(). In Safari, sessions may be limited to 7 days due to Intelligent Tracking Prevention (ITP). Use decorateUrl() to wrap your destination URL to enable the ITP workaround. Learn more: https://clerk.com/docs/troubleshooting/safari-itp")}else if(i){if(this.client.isEligibleForTouch()){let e=new URL(i,window.location.href),t=this.buildUrlWithAuth(this.client.buildTouchUrl({redirectUrl:e}));await this.navigate(t)}await this.navigate(i)}}}),f.isUnloading())return;this.#em(c),c?.status!=="pending"&&await l()}finally{this.__internal_setActiveInProgress=!1}};addListener=(e,t)=>{var i;let r;return i=e,e=e=>{var t;r||={...e},i(r={...{client:ng((t=r).client,e.client),session:ng(t.session,e.session),user:ng(t.user,e.user),organization:ng(t.organization,e.organization)}})},this.#eo.push(e),this.client&&!t?.skipInitialEmit&&e({client:this.client,session:this.session,user:this.user,organization:this.organization}),()=>{this.#eo=this.#eo.filter(t=>t!==e)}};on=(...e)=>{this.#eu.on(...e)};off=(...e)=>{this.#eu.off(...e)};__internal_addNavigationListener=e=>(this.#el.push(e),()=>{this.#el=this.#el.filter(t=>t!==e)});navigate=async(e,t)=>{if(!e||!tk())return;if(void 0===window.location){let i=t?.replace&&this.#ec.routerReplace?this.#ec.routerReplace:this.#ec.routerPush;return i?(ta.info(`Clerk is navigating to: ${e}`),await i(e,{windowNavigate:eG})):void 0}setTimeout(()=>{this.#ek()},0);let i=new URL(e,window.location.href);this.#eS.includes(i.protocol)||(console.warn(`Clerk: "${i.protocol}" is not a valid protocol. Redirecting to "/" instead. If you think this is a mistake, please open an issue.`),i=new URL("/",window.location.href));let r=t?.replace&&this.#ec.routerReplace?this.#ec.routerReplace:this.#ec.routerPush;if(ta.info(`Clerk is navigating to: ${i}`),this.#ec.routerDebug&&console.log(`Clerk is navigating to: ${i}`),"null"!==i.origin&&i.origin!==window.location.origin||!r)return void eG(i);let n={...t?.metadata?{__internal_metadata:t?.metadata}:{},windowNavigate:eG};return await r(eT(i),n)};buildUrlWithAuth(e){if("production"===this.#es)return e;let t=new URL(e,window.location.origin);return t.origin!==window.location.origin&&this.#Z?this.#Z.decorateUrlWithDevBrowserToken(t).href:t.href}buildSignInUrl(e){let t=e?.redirectUrl||window.location.href;this.isSatellite&&(t=this.#eI(t));let i=this.isSatellite?this.#eU(e):e;return this.#eA("signInUrl",{...i,redirectUrl:t},e?.initialValues)}buildSignUpUrl(e){let t=e?.redirectUrl||window.location.href;this.isSatellite&&(t=this.#eI(t));let i=this.isSatellite?this.#eU(e):e;return this.#eA("signUpUrl",{...i,redirectUrl:t},e?.initialValues)}#eI=e=>{try{let t=new URL(e,window.location.origin);return t.searchParams.set(K,V),t.toString()}catch{return e}};#eU=e=>{if(!e)return e;let t={...e};return t.signInForceRedirectUrl&&(t.signInForceRedirectUrl=this.#eI(t.signInForceRedirectUrl)),t.signInFallbackRedirectUrl&&(t.signInFallbackRedirectUrl=this.#eI(t.signInFallbackRedirectUrl)),t.signUpForceRedirectUrl&&(t.signUpForceRedirectUrl=this.#eI(t.signUpForceRedirectUrl)),t.signUpFallbackRedirectUrl&&(t.signUpFallbackRedirectUrl=this.#eI(t.signUpFallbackRedirectUrl)),t};buildUserProfileUrl(){return this.environment&&this.environment.displayConfig?this.buildUrlWithAuth(this.environment.displayConfig.userProfileUrl):""}buildHomeUrl(){return this.environment&&this.environment.displayConfig?this.buildUrlWithAuth(this.environment.displayConfig.homeUrl):""}buildAfterSignInUrl({params:e}={}){return this.buildUrlWithAuth(new eM(this.#ec,{},e).getAfterSignInUrl())}buildAfterSignUpUrl({params:e}={}){return this.buildUrlWithAuth(new eM(this.#ec,{},e).getAfterSignUpUrl())}buildAfterSignOutUrl(){return this.#ec.afterSignOutUrl?this.buildUrlWithAuth(this.#ec.afterSignOutUrl):"/"}buildNewSubscriptionRedirectUrl(){return this.#ec.newSubscriptionRedirectUrl?this.#ec.newSubscriptionRedirectUrl:this.buildAfterSignInUrl()}buildWaitlistUrl(e){return this.environment&&this.environment.displayConfig?eP({base:this.#ec.waitlistUrl||this.environment.displayConfig.waitlistUrl,hashSearchParams:[new URLSearchParams(e?.initialValues||{})]},{stringify:!0}):""}buildAfterMultiSessionSingleSignOutUrl(){return this.environment?this.#ec.afterMultiSessionSingleSignOutUrl?this.buildUrlWithAuth(this.#ec.afterMultiSessionSingleSignOutUrl):this.#ec.signInUrl?this.buildUrlWithAuth(eP({base:this.#ec.signInUrl,hashPath:"choose"},{stringify:!0})):this.buildUrlWithAuth(this.environment.displayConfig.afterSignOutOneUrl):""}buildCreateOrganizationUrl(){return this.environment&&this.environment.displayConfig?this.buildUrlWithAuth(this.environment.displayConfig.createOrganizationUrl):""}buildOrganizationProfileUrl(){return this.environment&&this.environment.displayConfig?this.buildUrlWithAuth(this.environment.displayConfig.organizationProfileUrl):""}buildTasksUrl(e){let t=this.session?.currentTask;if(!t)return"";let i=this.#ec.taskUrls?.[t.key];return i||eP({base:this.buildSignInUrl(e),hashPath:ej(t)},{stringify:!0})}#eC=async()=>{if(!tk())return;let e=new URLSearchParams({[K]:q}),t=eW(G);t&&eQ(t)||function(){throw Error(`${tE} Invalid redirect_url. A valid http or https url should be used for the redirection.`)}();let i=eP({base:eW(G),searchParams:e},{stringify:!0});return this.navigate(this.buildUrlWithAuth(i))};redirectWithAuth=async e=>{if(tk())return this.navigate(this.buildUrlWithAuth(e))};redirectToSignIn=async e=>{if(tk())return this.navigate(this.buildSignInUrl(e))};redirectToSignUp=async e=>{if(tk())return this.navigate(this.buildSignUpUrl(e))};redirectToUserProfile=async()=>{if(tk())return this.navigate(this.buildUserProfileUrl())};redirectToCreateOrganization=async()=>{if(tk())return this.navigate(this.buildCreateOrganizationUrl())};redirectToOrganizationProfile=async()=>{if(tk())return this.navigate(this.buildOrganizationProfileUrl())};redirectToAfterSignIn=async()=>{if(tk())return this.navigate(this.buildAfterSignInUrl())};redirectToAfterSignUp=async()=>{if(tk())return this.navigate(this.buildAfterSignUpUrl())};redirectToAfterSignOut=async()=>{if(tk())return this.navigate(this.buildAfterSignOutUrl())};redirectToWaitlist=async()=>{if(tk())return this.navigate(this.buildWaitlistUrl())};redirectToTasks=async e=>{if(tk())return this.navigate(this.buildTasksUrl(e))};handleEmailLinkVerification=async(e,t)=>{if(!this.client)return;let i=eW("__clerk_status");if("expired"===i)throw new T(E.Expired);if("client_mismatch"===i)throw new T(E.ClientMismatch);if("verified"!==i)throw new T(E.Failed);let r=eW("__clerk_created_session"),{signIn:n,signUp:s,sessions:a}=this.client,o=a.some(e=>e.id===r),l="needs_second_factor"===n.status||"missing_requirements"===s.status,c=e=>t&&"function"==typeof t?t(e):this.navigate(e),d=e.redirectUrl?()=>c(e.redirectUrl):e9.lQ;return o?this.setActive({session:r,redirectUrl:e.redirectUrlComplete}):l?d():("function"==typeof e.onVerifiedOnOtherDevice&&e.onVerifiedOnOtherDevice(),null)};handleGoogleOneTapCallback=async(e,t,i)=>{if(!this.loaded||!this.environment||!this.client)return;let{signIn:r,signUp:n}=this.client,s="identifier"in(e||{})?e:r,a="missingFields"in(e||{})?e:n,o=e=>i&&"function"==typeof i?i(this.buildUrlWithAuth(e)):this.navigate(this.buildUrlWithAuth(e));return this._handleRedirectCallback(t,{signUp:a,signIn:s,navigate:o})};_handleRedirectCallback=async(e,{signIn:t,signUp:i,navigate:r})=>{if(!this.loaded||!this.environment||!this.client)return;if(!window.opener&&e.reloadResource)try{"signIn"===e.reloadResource?await t.reload():"signUp"===e.reloadResource&&await i.reload()}catch{}let{displayConfig:n}=this.environment,{firstFactorVerification:s}=t,{externalAccount:a}=i.verifications,o={status:i.status,missingFields:i.missingFields,externalAccountStatus:a.status,externalAccountErrorCode:a.error?.code,externalAccountSessionId:a.error?.meta?.sessionId,sessionId:i.createdSessionId},l={status:t.status,firstFactorVerificationStatus:s.status,firstFactorVerificationErrorCode:s.error?.code,firstFactorVerificationSessionId:s.error?.meta?.sessionId,sessionId:t.createdSessionId},c=e=>()=>r(e),d=c(e.signInUrl||n.signInUrl),h=c(e.signUpUrl||n.signUpUrl),u=c(e.firstFactorUrl||eP({base:n.signInUrl,hashPath:"/factor-one"},{stringify:!0})),p=c(e.secondFactorUrl||eP({base:n.signInUrl,hashPath:"/factor-two"},{stringify:!0})),f=c(e.resetPasswordUrl||eP({base:n.signInUrl,hashPath:"/reset-password"},{stringify:!0})),m=new eM(this.#ec,e),g=c(e.continueSignUpUrl||eP({base:n.signUpUrl,hashPath:"/continue"},{stringify:!0})),_=({missingFields:t})=>t.length?g():(({signUp:e,verifyEmailPath:t,verifyPhonePath:i,continuePath:r,navigate:n,handleComplete:s,redirectUrl:a="",redirectUrlComplete:o="",oidcPrompt:l})=>{if("complete"===e.status)return s&&s();if("missing_requirements"===e.status){if(e.missingFields.some(e=>"enterprise_sso"===e))return e.authenticateWithRedirect({strategy:"enterprise_sso",redirectUrl:a,redirectUrlComplete:o,continueSignUp:!0,oidcPrompt:l});let s=eL();if(e.unverifiedFields?.includes("email_address")&&t)return n(t,{searchParams:s});if(e.unverifiedFields?.includes("phone_number")&&i)return n(i,{searchParams:s});if(r)return n(r,{searchParams:s})}})({signUp:i,verifyEmailPath:e.verifyEmailAddressUrl||eP({base:n.signUpUrl,hashPath:"/verify-email-address"},{stringify:!0}),verifyPhonePath:e.verifyPhoneNumberUrl||eP({base:n.signUpUrl,hashPath:"/verify-phone-number"},{stringify:!0}),navigate:r}),w=e.signInUrl||n.signInUrl,y=e.signUpUrl||n.signUpUrl,b=async({session:e,baseUrl:t,redirectUrl:i})=>{e.currentTask?await eB(e,{baseUrl:t,navigate:this.navigate}):await this.navigate(i)};if("complete"===l.status)return this.setActive({session:l.sessionId,navigate:async({session:e})=>{await b({session:e,baseUrl:w,redirectUrl:m.getAfterSignInUrl()})}});if("transferable"===o.externalAccountStatus&&"external_account_exists"===o.externalAccountErrorCode){let e=await t.create({transfer:!0});switch(e.status){case"complete":return this.setActive({session:e.createdSessionId,navigate:async({session:e})=>{await b({session:e,baseUrl:y,redirectUrl:m.getAfterSignInUrl()})}});case"needs_first_factor":return u();case"needs_second_factor":return p();case"needs_new_password":return f();default:tR("sign in")}}let v="user_locked"===o.externalAccountErrorCode,k="user_locked"===l.firstFactorVerificationErrorCode;if(v)return h();if(k)return d();if("needs_first_factor"===l.status&&!t.supportedFirstFactors?.every(e=>"enterprise_sso"===e.strategy))return u();if("needs_new_password"===l.status)return f();if("transferable"===l.firstFactorVerificationStatus){if(!1===e.transferable)return d();let t=await i.create({transfer:!0,unsafeMetadata:e.unsafeMetadata});switch(t.status){case"complete":return this.setActive({session:t.createdSessionId,navigate:async({session:e})=>{await b({session:e,baseUrl:y,redirectUrl:m.getAfterSignUpUrl()})}});case"missing_requirements":return _({missingFields:t.missingFields});default:tR("sign in")}}if("complete"===o.status)return this.setActive({session:o.sessionId,navigate:async({session:e})=>{await b({session:e,baseUrl:y,redirectUrl:m.getAfterSignUpUrl()})}});if("needs_second_factor"===l.status)return p();let S=("failed"===o.externalAccountStatus||"unverified"===o.externalAccountStatus)&&"identifier_already_signed_in"===o.externalAccountErrorCode&&o.externalAccountSessionId,I="failed"===l.firstFactorVerificationStatus&&"identifier_already_signed_in"===l.firstFactorVerificationErrorCode&&l.firstFactorVerificationSessionId;if(S||I){let e=l.firstFactorVerificationSessionId||o.externalAccountSessionId;if(e)return this.setActive({session:e,navigate:async({session:e})=>{await b({session:e,baseUrl:S?y:w,redirectUrl:m.getAfterSignInUrl()})}})}return(e=>{let{externalAccount:t}=e.verifications;return!!t.error})(i)?h():"verified"===o.externalAccountStatus&&"missing_requirements"===o.status?_({missingFields:i.missingFields}):this.session?.currentTask?void await this.redirectToTasks({redirectUrl:this.buildAfterSignInUrl()}):d()};handleRedirectCallback=async(e={},t)=>{if(!this.loaded||!this.environment||!this.client)return;let{signIn:i,signUp:r}=this.client,n=e=>t&&"function"==typeof t?t(e):this.navigate(e);return this._handleRedirectCallback(e,{signUp:r,signIn:i,navigate:n})};handleUnauthenticated=async(e={broadcast:!0})=>{if(this.client&&this.session)try{let t=await i5.getOrCreateInstance().fetch();if(this.updateClient(t),this.session)return;return e.broadcast&&iK.emit(ij,null),this.setActive({session:null})}catch(e){if(I(e)&&[403,500].includes(e.status))return this.setActive({session:null});throw e}};__internal_handleUnauthenticatedDevBrowser=async()=>{this.#Z&&await this.#Z.handleUnauthenticatedDevBrowser()};authenticateWithGoogleOneTap=async e=>this.client?.signIn.create({strategy:"google_one_tap",token:e.token}).catch(t=>{if(I(t)&&"external_account_not_found"===t.errors[0].code)return this.client?.signUp.create({strategy:"google_one_tap",token:e.token,legalAccepted:e.legalAccepted});throw t});authenticateWithMetamask=async(e={})=>{await this.authenticateWithWeb3({...e,strategy:"web3_metamask_signature"})};authenticateWithCoinbaseWallet=async(e={})=>{await this.authenticateWithWeb3({...e,strategy:"web3_coinbase_wallet_signature"})};authenticateWithBase=async(e={})=>{await this.authenticateWithWeb3({...e,strategy:"web3_base_signature"})};authenticateWithOKXWallet=async(e={})=>{await this.authenticateWithWeb3({...e,strategy:"web3_okx_wallet_signature"})};authenticateWithSolana=async e=>{await this.authenticateWithWeb3({...e,strategy:"web3_solana_signature"})};authenticateWithWeb3=async({redirectUrl:e,signUpContinueUrl:t,customNavigate:i,unsafeMetadata:r,strategy:n,legalAccepted:s,secondFactorUrl:a,walletName:o})=>{let l,c;if(!this.client||!this.environment)return;let{displayConfig:d}=this.environment,h=n.replace("web3_","").replace("_signature",""),u=await tA().getWeb3Identifier({provider:h,walletName:o});switch(h){case"metamask":l=tA().generateSignatureWithMetamask;break;case"base":l=tA().generateSignatureWithBase;break;case"coinbase_wallet":l=tA().generateSignatureWithCoinbaseWallet;break;case"solana":if(!o)throw new b("Wallet name is required for Solana authentication.",{code:"web3_solana_wallet_name_required"});l=e=>tA().generateSignatureWithSolana({...e,walletName:o});break;default:l=tA().generateSignatureWithOKXWallet}let p=e=>()=>i&&"function"==typeof i?i(e):this.navigate(e),f=p(a||eP({base:d.signInUrl,hashPath:"/factor-two"},{stringify:!0})),m=p(t||eP({base:d.signUpUrl,hashPath:"/continue"},{stringify:!0}));try{c=await this.client.signIn.authenticateWithWeb3({identifier:u,generateSignature:l,strategy:n,walletName:o})}catch(e){if(t_(e,"form_identifier_not_found"))c=await this.client.signUp.authenticateWithWeb3({identifier:u,generateSignature:l,unsafeMetadata:r,strategy:n,legalAccepted:s,walletName:o}),t&&"missing_requirements"===c.status&&"verified"===c.verifications.web3Wallet.status&&await m();else throw e}let g=async({session:e,redirectUrl:t})=>{e.currentTask?await eB(e,{baseUrl:d.signInUrl,navigate:this.navigate}):await this.navigate(t)};switch(c.status){case"needs_second_factor":await f();break;case"complete":c.createdSessionId&&await this.setActive({session:c.createdSessionId,navigate:async({session:t})=>{await g({session:t,redirectUrl:e??this.buildAfterSignInUrl()})}});break;default:return}};createOrganization=async({name:e,slug:t})=>rO.create({name:e,slug:t});getOrganization=async e=>rO.get(e);joinWaitlist=async({emailAddress:e})=>nf.join({emailAddress:e});updateEnvironment(e){this.environment=e}__internal_setCountry=e=>{this.__internal_country||(this.__internal_country=e)};get __internal_last_error(){let e=this.internal_last_error;return this.internal_last_error=null,e}set __internal_last_error(e){this.internal_last_error=e}updateClient=(e,t)=>{if(!this.client){let t=this.#ec.selectInitialSession?this.#ec.selectInitialSession(e):this.#eP(e);this.#em(t,{dangerouslySkipEmit:!0})}if(this.client=e,this.session){let t=this.#ev(this.session.id,e);"active"===this.session.status&&t?.status==="pending"&&("u">typeof window&&"function"==typeof window.__internal_onAfterSetActive?window.__internal_onAfterSetActive:e9.lQ)(),this.#em(t,{dangerouslySkipEmit:!0}),this.session?.lastActiveToken||d()||ta.warn("No last active token when updating client (offline)",{sessionId:this.session?.id},"clerk"),iK.emit(i$,{token:this.session?.lastActiveToken})}t?.__internal_dangerouslySkipEmit||this.#eT()};get __internal_environment(){return this.environment}__internal_setEnvironment=async e=>{this.environment=new rv(e)};__internal_onBeforeRequest=e=>{this.#en.onBeforeRequest(e)};__internal_onAfterResponse=e=>{this.#en.onAfterResponse(e)};__internal_updateProps=e=>{let t={...e,options:this.#ef({...this.#ec,...e.options})};return this.#er?.then(e=>e.ensureMounted()).then(e=>e.updateProps(t))};__internal_navigateWithError(e,t){return this.__internal_last_error=t,this.navigate(e)}#eO=()=>{let e=new URLSearchParams({[G]:window.location.href});return eP({base:this.#ec.signInUrl,searchParams:e},{stringify:!0})};#eE=()=>{let e;if(this.proxyUrl){let t=new URL(this.proxyUrl);e=new URL(`${t.pathname}/v1/client/sync`,t.origin)}else this.domain&&(e=new URL("/v1/client/sync",`https://${this.domain}`));return e?.searchParams.append("redirect_url",window.location.href),e?.toString()||""};#ex=()=>{let e=eW(K);return e!==q&&!!this.isSatellite&&(e===V||!0===this.#ec.satelliteAutoSync&&!!this.#Z?.isSignedOut())};#eR=()=>"production"!==this.#es&&!this.isSatellite&&!!eW(G);#ez=async()=>{"development"===this.instanceType?await this.navigate(this.#eO()):"production"===this.instanceType&&await this.navigate(this.#eE())};#eM=(e,t)=>{let i;try{i=new URL(e)}catch{throw Error(`${tE} The signInUrl needs to have a absolute url format.`)}i.origin===t&&function(){throw Error(`${tE} The signInUrl needs to be on a different origin than your satellite application.`)}()};#eF=()=>{this.isSatellite&&("development"!==this.#es||this.#ec.signInUrl||function(){throw Error(`${tE} Missing signInUrl. A satellite application needs to specify the signInUrl for development instances.`)}(),this.proxyUrl||this.domain||function(){throw Error(`${tE} Missing domain and proxyUrl. A satellite application needs to specify a domain or a proxyUrl.`)}(),this.#ec.signInUrl&&this.#eM(this.#ec.signInUrl,window.location.origin))};#eg=async()=>{if(this.#Z=await nz.create(this,this.#en,this.#es,this.#eu),this.#eF(),this.#ex())return void await this.#ez();if(this.#eR())return void await this.#eC();this.#ed=(()=>{if(!n())return{onPageFocus:e9.lQ};let e=[];return window.addEventListener("focus",()=>{"visible"===document.visibilityState&&e.forEach(e=>e())}),{onPageFocus:t=>{e.push(t)}}})(),"u">typeof BroadcastChannel&&(this.#ei=new BroadcastChannel("clerk")),this.#eN();let e=function(e=window.location.hostname){if(!e)return!1;let t=eA.get(e);void 0===t&&(t=ed.some(t=>e.startsWith("accounts.")&&e.endsWith(t))||eh.some(t=>e.endsWith(t)&&!e.endsWith(".clerk"+t)),eA.set(e,t));return t}(window?.location.hostname),t="development"===this.#es&&!e,i=0,r=0;for(;r<2;){r++;try{let e=rv.getInstance().fetch({touch:t}).then(e=>this.updateEnvironment(e)).catch(()=>{++i;let e=tO.getItem(tC,null);e&&this.updateEnvironment(new rv(e))}),r=async()=>i5.getOrCreateInstance().fetch().then(e=>this.updateClient(e)).catch(async e=>{if(z(e))throw e;++i;let t=this.#Z?.getSessionCookie(),r=function(e){let t;try{t=new nn({jwt:e||"",object:"token",id:void 0})}catch{t=null}if(i5.clearInstance(),!t?.jwt)return i5.getOrCreateInstance({object:"client",last_active_session_id:null,id:"client_init",sessions:[]});let{sessionId:i,userId:r,orgId:n,orgRole:s,orgPermissions:a,orgSlug:o,factorVerificationAge:l}=(e=>{let t,i,r,n,s=e.fva??null,a=e.sts??null;if(2===e.v){if(e.o){t=e.o?.id,r=e.o?.slg,e.o?.rol&&(i=`org:${e.o?.rol}`);let{org:s}=rH(e.fea),{permissions:a,featurePermissionMap:o}=(({per:e,fpm:t})=>{if(!e||!t)return{permissions:[],featurePermissionMap:[]};let i=e.split(",").map(e=>e.trim());return{permissions:i,featurePermissionMap:t.split(",").map(e=>Number.parseInt(e.trim(),10)).map(e=>e.toString(2).padStart(i.length,"0").split("").map(e=>Number.parseInt(e,10)).reverse()).filter(Boolean)}})({per:e.o?.per,fpm:e.o?.fpm});n=function({features:e,permissions:t,featurePermissionMap:i}){if(!e||!t||!i)return[];let r=[];for(let n=0;n<e.length;n++){let s=e[n];if(n>=i.length)continue;let a=i[n];if(a)for(let e=0;e<a.length;e++)1===a[e]&&r.push(`org:${s}:${t[e]}`)}return r}({features:s,featurePermissionMap:o,permissions:a})}}else t=e.org_id,i=e.org_role,r=e.org_slug,n=e.org_permissions;return{sessionClaims:e,sessionId:e.sid,sessionStatus:a,actor:e.act,userId:e.sub,orgId:t,orgRole:i,orgSlug:r,orgPermissions:n,factorVerificationAge:s}})(t.jwt.claims),c={object:"client",last_active_session_id:i,id:"client_init",sessions:[{object:"session",id:i,status:"active",last_active_organization_id:n||null,last_active_token:{id:void 0,object:"token",jwt:e},factor_verification_age:l||null,public_user_data:{user_id:r},user:{object:"user",id:r,organization_memberships:n&&o&&s?[{object:"organization_membership",id:n,role:s,permissions:a||[],organization:{object:"organization",id:n,name:o,slug:o,members_count:1,max_allowed_memberships:1}}]:[]}}]};return i5.getOrCreateInstance(c)}(t);return this.updateClient(r),this.#Z?.stopPollingForToken(),await this.session?.getToken({skipCache:!0}).catch(()=>null).finally(()=>{this.#Z?.startPollingForToken()}),null}),[,n]=await (0,e9.vd)([e,r()]);if("rejected"===n.status){let e=n.reason;if(t_(e,"requires_captcha"))await r();else throw e}if(this.#Z?.setClientUatCookieForDevelopmentInstances(),await this.#eW())return;break}catch(e){if(t_(e,"dev_browser_unauthenticated"))await this.#Z.handleUnauthenticatedDevBrowser();else if(!d())return void console.warn(e);else throw e}r>=2&&function(){throw Error(`${tE} Something went wrong initializing Clerk.`)}()}this.#et=new nM(this),this.#et.start(),this.#eD(),this.#eL(),this.#e$(),this.#eu.emit(m,i>0?"degraded":"ready")};shouldFallbackToCachedResources=()=>!!this.__internal_getCachedResources;#e_=async()=>{let e,t,i=this.shouldFallbackToCachedResources()?1:void 0,r=0;try{[e,t]=await Promise.all([rv.getInstance().fetch({touch:!1,fetchMaxTries:i}),i5.getOrCreateInstance().fetch({fetchMaxTries:i})])}catch(i){if(v(i)&&"network_error"===i.code&&this.shouldFallbackToCachedResources()){let i=await this.__internal_getCachedResources?.();e=new rv(i?.environment),i5.clearInstance(),t=i5.getOrCreateInstance(i?.client),++r}else throw i}this.updateClient(t),this.updateEnvironment(e),this.#eu.emit(m,r>0?"degraded":"ready")};__internal_reloadInitialResources=async()=>{let[e,t]=await Promise.all([rv.getInstance().fetch({touch:!1,fetchMaxTries:1}),i5.getOrCreateInstance().fetch({fetchMaxTries:1})]);this.updateClient(t),this.updateEnvironment(e),this.#eT()};#eP=e=>{if(e.lastActiveSessionId){let t=e.signedInSessions.find(t=>t.id===e.lastActiveSessionId);if(t)return t}return e.signedInSessions[0]||null};#eN=()=>{n()&&(this.#ed?.onPageFocus(()=>{this.session&&!(!(this.environment&&!this.environment.authConfig.singleSessionMode)&&this.#eh>Date.now())&&(this.#eh=Date.now()+5e3,this.#ec.touchSession&&this.#eb(this.session,"focus"))}),this.#ei?.addEventListener("message",e=>{e.data?.type==="signout"&&this.handleUnauthenticated({broadcast:!1})}),iK.on(ij,()=>{this.#ei?.postMessage({type:"signout"})}),iK.on(iB,()=>{tO.setItem(tC,this.environment?.__internal_toSnapshot(),864e5)}))};#eb=async(e,t="focus")=>{if(!e)return Promise.resolve();await e.touch({intent:t}).catch(e=>{if(M(e))this.handleUnauthenticated();else throw e})};__internal_lastEmittedResources;#eT=()=>{if(this.client){let e={client:this.client,session:this.session,user:this.user,organization:this.organization};for(let t of(this.__internal_lastEmittedResources=e,this.#eo))t(e)}};#ek=()=>{for(let e of this.#el)e()};#ey=()=>{this.session=void 0,this.organization=void 0,this.user=void 0,this.#eT()};#ej=(e=this.session)=>(e?.user.organizationMemberships||[]).map(e=>e.organization).find(t=>t.id===e?.lastActiveOrganizationId)||null;#eB=(e=this.session)=>({session:e||null,organization:this.#ej(e),user:e?e.user:null});#em=(e,t)=>{let{session:i,organization:r,user:n}=this.#eB(e);this.session=i,this.organization=r,this.user=n,t?.dangerouslySkipEmit||this.#eT()};#ev=(e,t=this.client)=>t?.signedInSessions.find(t=>t.id===e)||null;#eL=()=>{this.addListener(({session:e})=>{e?.actor&&this.#er?.then(e=>e.ensureMounted()).then(e=>e.mountImpersonationFab())})};#e$=()=>{this.#ec.__internal_keyless_claimKeylessApplicationUrl&&this.#er?.then(e=>e.ensureMounted()).then(e=>{e.updateProps({options:{__internal_keyless_claimKeylessApplicationUrl:this.#ec.__internal_keyless_claimKeylessApplicationUrl,__internal_keyless_copyInstanceKeysUrl:this.#ec.__internal_keyless_copyInstanceKeysUrl,__internal_keyless_dismissPrompt:this.#ec.__internal_keyless_dismissPrompt}})})};#eA=(e,t,i)=>{if(!e||!this.loaded||!this.environment||!this.environment.displayConfig)return"";let r=this.#ec[e]||this.environment.displayConfig[e];this.#ew()&&(r=this.#ec.signInUrl);let n=new eM(this.#ec,t).toSearchParams(),s=new URLSearchParams(i||{}),a=eP({base:r,hashPath:this.#ew()&&"signUpUrl"===e?"/create":"",hashSearchParams:[s,n]},{stringify:!0});return this.buildUrlWithAuth(a)};assertComponentsReady(e){if(!e)throw Error("Clerk was not loaded with Ui components")}#eW=async()=>{var e;let t,i,r,n,s=new URLSearchParams(window.location.search).get("redirect_url"),a="production"===this.instanceType,o=null!==s&&(e=this.frontendApi,i=(t=new URL(s,eS)).pathname,r=eR.includes(i)||ez.includes(i),e===t.host&&r);if(a||!o)return!1;let l=this.session,c=this.#ec.signInUrl||this.environment?.displayConfig.signInUrl,d=c&&window.location.href.startsWith(c),h=this.#ec.signUpUrl||this.environment?.displayConfig.signUpUrl,u=h&&window.location.href.startsWith(h);return n=new URL(s,eS),(!eR.includes(n.pathname)||!!l||!d&&!u)&&(await this.navigate(this.buildUrlWithAuth(s)),!0)};#ef=e=>{let t=e?.clerkUICtor??e?.clerkUiCtor,i=t?{...e?.ui,ClerkUI:t}:e?.ui;return{...nH,...e,ui:i,allowedRedirectOrigins:function(e,t,i){if(Array.isArray(e)&&e.length)return e;let r=[];return"u">typeof window&&window.location&&r.push(window.location.origin),r.push(`https://${eC(t)}`),r.push(`https://*.${eC(t)}`),"development"===i&&r.push(`https://${t}`),r}(e?.allowedRedirectOrigins,this.frontendApi,this.instanceType)}};#eD=()=>{try{eD(K),eD(eF),eD(H),eD("__clerk_handshake"),eD("__clerk_handshake_nonce"),eD("__clerk_help")}catch{}};get #eS(){let e=eH;return this.#ec.allowedRedirectProtocols&&(e=e.concat(this.#ec.allowedRedirectProtocols)),e}#ep(){return void 0!==this.client}}})(),c})()); |