@privy-io/react-auth 1.22.0-beta.1 → 1.22.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/esm/index.js CHANGED
@@ -1,4 +1,4 @@
1
- var rc=Object.create;var Ao=Object.defineProperty;var nc=Object.getOwnPropertyDescriptor;var ic=Object.getOwnPropertyNames;var ac=Object.getPrototypeOf,sc=Object.prototype.hasOwnProperty;var ei=(e,t)=>()=>(e&&(t=e(e=0)),t);var De=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ti=(e,t)=>{for(var o in t)Ao(e,o,{get:t[o],enumerable:!0})},oi=(e,t,o,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of ic(t))!sc.call(e,n)&&n!==o&&Ao(e,n,{get:()=>t[n],enumerable:!(r=nc(t,n))||r.enumerable});return e};var lc=(e,t,o)=>(o=e!=null?rc(ac(e)):{},oi(t||!e||!e.__esModule?Ao(o,"default",{value:e,enumerable:!0}):o,e)),ri=e=>oi(Ao({},"__esModule",{value:!0}),e);var jo=De((M0,Vo)=>{var Fi,Gi,Hi,Vi,ji,$i,zi,qi,Zi,Go,$r,Ki,Ji,Yi,Ot,Xi,Qi,ea,ta,oa,ra,na,ia,aa,Ho;(function(e){var t=typeof global=="object"?global:typeof self=="object"?self:typeof this=="object"?this:{};typeof define=="function"&&define.amd?define("tslib",["exports"],function(r){e(o(t,o(r)))}):typeof Vo=="object"&&typeof Vo.exports=="object"?e(o(t,o(Vo.exports))):e(o(t));function o(r,n){return r!==t&&(typeof Object.create=="function"?Object.defineProperty(r,"__esModule",{value:!0}):r.__esModule=!0),function(i,a){return r[i]=n?n(i,a):a}}})(function(e){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(r[i]=n[i])};Fi=function(r,n){if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");t(r,n);function i(){this.constructor=r}r.prototype=n===null?Object.create(n):(i.prototype=n.prototype,new i)},Gi=Object.assign||function(r){for(var n,i=1,a=arguments.length;i<a;i++){n=arguments[i];for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(r[s]=n[s])}return r},Hi=function(r,n){var i={};for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&n.indexOf(a)<0&&(i[a]=r[a]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,a=Object.getOwnPropertySymbols(r);s<a.length;s++)n.indexOf(a[s])<0&&Object.prototype.propertyIsEnumerable.call(r,a[s])&&(i[a[s]]=r[a[s]]);return i},Vi=function(r,n,i,a){var s=arguments.length,l=s<3?n:a===null?a=Object.getOwnPropertyDescriptor(n,i):a,c;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")l=Reflect.decorate(r,n,i,a);else for(var h=r.length-1;h>=0;h--)(c=r[h])&&(l=(s<3?c(l):s>3?c(n,i,l):c(n,i))||l);return s>3&&l&&Object.defineProperty(n,i,l),l},ji=function(r,n){return function(i,a){n(i,a,r)}},$i=function(r,n){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(r,n)},zi=function(r,n,i,a){function s(l){return l instanceof i?l:new i(function(c){c(l)})}return new(i||(i=Promise))(function(l,c){function h(g){try{p(a.next(g))}catch(y){c(y)}}function m(g){try{p(a.throw(g))}catch(y){c(y)}}function p(g){g.done?l(g.value):s(g.value).then(h,m)}p((a=a.apply(r,n||[])).next())})},qi=function(r,n){var i={label:0,sent:function(){if(l[0]&1)throw l[1];return l[1]},trys:[],ops:[]},a,s,l,c;return c={next:h(0),throw:h(1),return:h(2)},typeof Symbol=="function"&&(c[Symbol.iterator]=function(){return this}),c;function h(p){return function(g){return m([p,g])}}function m(p){if(a)throw new TypeError("Generator is already executing.");for(;i;)try{if(a=1,s&&(l=p[0]&2?s.return:p[0]?s.throw||((l=s.return)&&l.call(s),0):s.next)&&!(l=l.call(s,p[1])).done)return l;switch(s=0,l&&(p=[p[0]&2,l.value]),p[0]){case 0:case 1:l=p;break;case 4:return i.label++,{value:p[1],done:!1};case 5:i.label++,s=p[1],p=[0];continue;case 7:p=i.ops.pop(),i.trys.pop();continue;default:if(l=i.trys,!(l=l.length>0&&l[l.length-1])&&(p[0]===6||p[0]===2)){i=0;continue}if(p[0]===3&&(!l||p[1]>l[0]&&p[1]<l[3])){i.label=p[1];break}if(p[0]===6&&i.label<l[1]){i.label=l[1],l=p;break}if(l&&i.label<l[2]){i.label=l[2],i.ops.push(p);break}l[2]&&i.ops.pop(),i.trys.pop();continue}p=n.call(r,i)}catch(g){p=[6,g],s=0}finally{a=l=0}if(p[0]&5)throw p[1];return{value:p[0]?p[1]:void 0,done:!0}}},Zi=function(r,n){for(var i in r)i!=="default"&&!Object.prototype.hasOwnProperty.call(n,i)&&Ho(n,r,i)},Ho=Object.create?function(r,n,i,a){a===void 0&&(a=i);var s=Object.getOwnPropertyDescriptor(n,i);(!s||("get"in s?!n.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return n[i]}}),Object.defineProperty(r,a,s)}:function(r,n,i,a){a===void 0&&(a=i),r[a]=n[i]},Go=function(r){var n=typeof Symbol=="function"&&Symbol.iterator,i=n&&r[n],a=0;if(i)return i.call(r);if(r&&typeof r.length=="number")return{next:function(){return r&&a>=r.length&&(r=void 0),{value:r&&r[a++],done:!r}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")},$r=function(r,n){var i=typeof Symbol=="function"&&r[Symbol.iterator];if(!i)return r;var a=i.call(r),s,l=[],c;try{for(;(n===void 0||n-- >0)&&!(s=a.next()).done;)l.push(s.value)}catch(h){c={error:h}}finally{try{s&&!s.done&&(i=a.return)&&i.call(a)}finally{if(c)throw c.error}}return l},Ki=function(){for(var r=[],n=0;n<arguments.length;n++)r=r.concat($r(arguments[n]));return r},Ji=function(){for(var r=0,n=0,i=arguments.length;n<i;n++)r+=arguments[n].length;for(var a=Array(r),s=0,n=0;n<i;n++)for(var l=arguments[n],c=0,h=l.length;c<h;c++,s++)a[s]=l[c];return a},Yi=function(r,n,i){if(i||arguments.length===2)for(var a=0,s=n.length,l;a<s;a++)(l||!(a in n))&&(l||(l=Array.prototype.slice.call(n,0,a)),l[a]=n[a]);return r.concat(l||Array.prototype.slice.call(n))},Ot=function(r){return this instanceof Ot?(this.v=r,this):new Ot(r)},Xi=function(r,n,i){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var a=i.apply(r,n||[]),s,l=[];return s={},c("next"),c("throw"),c("return"),s[Symbol.asyncIterator]=function(){return this},s;function c(d){a[d]&&(s[d]=function(b){return new Promise(function(v,A){l.push([d,b,v,A])>1||h(d,b)})})}function h(d,b){try{m(a[d](b))}catch(v){y(l[0][3],v)}}function m(d){d.value instanceof Ot?Promise.resolve(d.value.v).then(p,g):y(l[0][2],d)}function p(d){h("next",d)}function g(d){h("throw",d)}function y(d,b){d(b),l.shift(),l.length&&h(l[0][0],l[0][1])}},Qi=function(r){var n,i;return n={},a("next"),a("throw",function(s){throw s}),a("return"),n[Symbol.iterator]=function(){return this},n;function a(s,l){n[s]=r[s]?function(c){return(i=!i)?{value:Ot(r[s](c)),done:s==="return"}:l?l(c):c}:l}},ea=function(r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n=r[Symbol.asyncIterator],i;return n?n.call(r):(r=typeof Go=="function"?Go(r):r[Symbol.iterator](),i={},a("next"),a("throw"),a("return"),i[Symbol.asyncIterator]=function(){return this},i);function a(l){i[l]=r[l]&&function(c){return new Promise(function(h,m){c=r[l](c),s(h,m,c.done,c.value)})}}function s(l,c,h,m){Promise.resolve(m).then(function(p){l({value:p,done:h})},c)}},ta=function(r,n){return Object.defineProperty?Object.defineProperty(r,"raw",{value:n}):r.raw=n,r};var o=Object.create?function(r,n){Object.defineProperty(r,"default",{enumerable:!0,value:n})}:function(r,n){r.default=n};oa=function(r){if(r&&r.__esModule)return r;var n={};if(r!=null)for(var i in r)i!=="default"&&Object.prototype.hasOwnProperty.call(r,i)&&Ho(n,r,i);return o(n,r),n},ra=function(r){return r&&r.__esModule?r:{default:r}},na=function(r,n,i,a){if(i==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof n=="function"?r!==n||!a:!n.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return i==="m"?a:i==="a"?a.call(r):a?a.value:n.get(r)},ia=function(r,n,i,a,s){if(a==="m")throw new TypeError("Private method is not writable");if(a==="a"&&!s)throw new TypeError("Private accessor was defined without a setter");if(typeof n=="function"?r!==n||!s:!n.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return a==="a"?s.call(r,i):s?s.value=i:n.set(r,i),i},aa=function(r,n){if(n===null||typeof n!="object"&&typeof n!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof r=="function"?n===r:r.has(n)},e("__extends",Fi),e("__assign",Gi),e("__rest",Hi),e("__decorate",Vi),e("__param",ji),e("__metadata",$i),e("__awaiter",zi),e("__generator",qi),e("__exportStar",Zi),e("__createBinding",Ho),e("__values",Go),e("__read",$r),e("__spread",Ki),e("__spreadArrays",Ji),e("__spreadArray",Yi),e("__await",Ot),e("__asyncGenerator",Xi),e("__asyncDelegator",Qi),e("__asyncValues",ea),e("__makeTemplateObject",ta),e("__importStar",oa),e("__importDefault",ra),e("__classPrivateFieldGet",na),e("__classPrivateFieldSet",ia),e("__classPrivateFieldIn",aa)})});var zr=De(U=>{"use strict";Object.defineProperty(U,"__esModule",{value:!0});U.getLocalStorage=U.getLocalStorageOrThrow=U.getCrypto=U.getCryptoOrThrow=U.getLocation=U.getLocationOrThrow=U.getNavigator=U.getNavigatorOrThrow=U.getDocument=U.getDocumentOrThrow=U.getFromWindowOrThrow=U.getFromWindow=void 0;function mt(e){let t;return typeof window<"u"&&typeof window[e]<"u"&&(t=window[e]),t}U.getFromWindow=mt;function Nt(e){let t=mt(e);if(!t)throw new Error(`${e} is not defined in Window`);return t}U.getFromWindowOrThrow=Nt;function Mc(){return Nt("document")}U.getDocumentOrThrow=Mc;function Oc(){return mt("document")}U.getDocument=Oc;function Nc(){return Nt("navigator")}U.getNavigatorOrThrow=Nc;function Dc(){return mt("navigator")}U.getNavigator=Dc;function Uc(){return Nt("location")}U.getLocationOrThrow=Uc;function Bc(){return mt("location")}U.getLocation=Bc;function Fc(){return Nt("crypto")}U.getCryptoOrThrow=Fc;function Gc(){return mt("crypto")}U.getCrypto=Gc;function Hc(){return Nt("localStorage")}U.getLocalStorageOrThrow=Hc;function Vc(){return mt("localStorage")}U.getLocalStorage=Vc});var la=De($o=>{"use strict";Object.defineProperty($o,"__esModule",{value:!0});$o.getWindowMetadata=void 0;var sa=zr();function jc(){let e,t;try{e=sa.getDocumentOrThrow(),t=sa.getLocationOrThrow()}catch{return null}function o(){let m=e.getElementsByTagName("link"),p=[];for(let g=0;g<m.length;g++){let y=m[g],d=y.getAttribute("rel");if(d&&d.toLowerCase().indexOf("icon")>-1){let b=y.getAttribute("href");if(b)if(b.toLowerCase().indexOf("https:")===-1&&b.toLowerCase().indexOf("http:")===-1&&b.indexOf("//")!==0){let v=t.protocol+"//"+t.host;if(b.indexOf("/")===0)v+=b;else{let A=t.pathname.split("/");A.pop(),v+=A.join("/")+"/"+b}p.push(v)}else if(b.indexOf("//")===0){let v=t.protocol+b;p.push(v)}else p.push(b)}}return p}function r(...m){let p=e.getElementsByTagName("meta");for(let g=0;g<p.length;g++){let y=p[g],d=["itemprop","property","name"].map(b=>y.getAttribute(b)).filter(b=>b?m.includes(b):!1);if(d.length&&d){let b=y.getAttribute("content");if(b)return b}}return""}function n(){let m=r("name","og:site_name","og:title","twitter:title");return m||(m=e.title),m}function i(){return r("description","og:description","twitter:description","keywords")}let a=n(),s=i(),l=t.origin,c=o();return{description:s,url:l,icons:c,name:a}}$o.getWindowMetadata=jc});var va={};ti(va,{BotInfo:()=>ma,BrowserInfo:()=>pa,NodeInfo:()=>ua,ReactNativeInfo:()=>ha,SearchBotDeviceInfo:()=>fa,browserName:()=>Jc,detect:()=>Kc,detectOS:()=>ba,getNodeVersion:()=>ya,parseUserAgent:()=>qr});function Kc(e){return e?qr(e):typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"?new ha:typeof navigator<"u"?qr(navigator.userAgent):ya()}function ga(e){return e!==""&&Zc.reduce(function(t,o){var r=o[0],n=o[1];if(t)return t;var i=n.exec(e);return!!i&&[r,i]},!1)}function Jc(e){var t=ga(e);return t?t[0]:null}function qr(e){var t=ga(e);if(!t)return null;var o=t[0],r=t[1];if(o==="searchbot")return new ma;var n=r[1]&&r[1].split(/[._]/).slice(0,3);n?n.length<ca&&(n=$c(n,Yc(ca-n.length))):n=[];var i=n.join("."),a=ba(e),s=qc.exec(e);return s&&s[1]?new fa(o,i,a,s[1]):new pa(o,i,a)}function ba(e){for(var t=0,o=da.length;t<o;t++){var r=da[t],n=r[0],i=r[1],a=i.exec(e);if(a)return n}return null}function ya(){var e=typeof process<"u"&&process.version;return e?new ua(process.version.slice(1)):null}function Yc(e){for(var t=[],o=0;o<e;o++)t.push("0");return t}var $c,pa,ua,fa,ma,ha,zc,qc,ca,Zc,da,wa=ei(()=>{$c=function(){for(var e=0,t=0,o=arguments.length;t<o;t++)e+=arguments[t].length;for(var r=Array(e),n=0,t=0;t<o;t++)for(var i=arguments[t],a=0,s=i.length;a<s;a++,n++)r[n]=i[a];return r},pa=function(){function e(t,o,r){this.name=t,this.version=o,this.os=r,this.type="browser"}return e}(),ua=function(){function e(t){this.version=t,this.type="node",this.name="node",this.os=process.platform}return e}(),fa=function(){function e(t,o,r,n){this.name=t,this.version=o,this.os=r,this.bot=n,this.type="bot-device"}return e}(),ma=function(){function e(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null}return e}(),ha=function(){function e(){this.type="react-native",this.name="react-native",this.version=null,this.os=null}return e}(),zc=/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/,qc=/(nuhk|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,ca=3,Zc=[["aol",/AOLShield\/([0-9\._]+)/],["edge",/Edge\/([0-9\._]+)/],["edge-ios",/EdgiOS\/([0-9\._]+)/],["yandexbrowser",/YaBrowser\/([0-9\._]+)/],["kakaotalk",/KAKAOTALK\s([0-9\.]+)/],["samsung",/SamsungBrowser\/([0-9\.]+)/],["silk",/\bSilk\/([0-9._-]+)\b/],["miui",/MiuiBrowser\/([0-9\.]+)$/],["beaker",/BeakerBrowser\/([0-9\.]+)/],["edge-chromium",/EdgA?\/([0-9\.]+)/],["chromium-webview",/(?!Chrom.*OPR)wv\).*Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["chrome",/(?!Chrom.*OPR)Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["phantomjs",/PhantomJS\/([0-9\.]+)(:?\s|$)/],["crios",/CriOS\/([0-9\.]+)(:?\s|$)/],["firefox",/Firefox\/([0-9\.]+)(?:\s|$)/],["fxios",/FxiOS\/([0-9\.]+)/],["opera-mini",/Opera Mini.*Version\/([0-9\.]+)/],["opera",/Opera\/([0-9\.]+)(?:\s|$)/],["opera",/OPR\/([0-9\.]+)(:?\s|$)/],["ie",/Trident\/7\.0.*rv\:([0-9\.]+).*\).*Gecko$/],["ie",/MSIE\s([0-9\.]+);.*Trident\/[4-7].0/],["ie",/MSIE\s(7\.0)/],["bb10",/BB10;\sTouch.*Version\/([0-9\.]+)/],["android",/Android\s([0-9\.]+)/],["ios",/Version\/([0-9\._]+).*Mobile.*Safari.*/],["safari",/Version\/([0-9\._]+).*Safari/],["facebook",/FBAV\/([0-9\.]+)/],["instagram",/Instagram\s([0-9\.]+)/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Mobile/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Gecko\)$/],["searchbot",zc]],da=[["iOS",/iP(hone|od|ad)/],["Android OS",/Android/],["BlackBerry OS",/BlackBerry|BB10/],["Windows Mobile",/IEMobile/],["Amazon OS",/Kindle/],["Windows 3.11",/Win16/],["Windows 95",/(Windows 95)|(Win95)|(Windows_95)/],["Windows 98",/(Windows 98)|(Win98)/],["Windows 2000",/(Windows NT 5.0)|(Windows 2000)/],["Windows XP",/(Windows NT 5.1)|(Windows XP)/],["Windows Server 2003",/(Windows NT 5.2)/],["Windows Vista",/(Windows NT 6.0)/],["Windows 7",/(Windows NT 6.1)/],["Windows 8",/(Windows NT 6.2)/],["Windows 8.1",/(Windows NT 6.3)/],["Windows 10",/(Windows NT 10.0)/],["Windows ME",/Windows ME/],["Open BSD",/OpenBSD/],["Sun OS",/SunOS/],["Chrome OS",/CrOS/],["Linux",/(Linux)|(X11)/],["Mac OS",/(Mac_PowerPC)|(Macintosh)/],["QNX",/QNX/],["BeOS",/BeOS/],["OS/2",/OS\/2/]]});var Kr=De(P=>{"use strict";Object.defineProperty(P,"__esModule",{value:!0});P.getClientMeta=P.getLocalStorage=P.getLocalStorageOrThrow=P.getCrypto=P.getCryptoOrThrow=P.getLocation=P.getLocationOrThrow=P.getNavigator=P.getNavigatorOrThrow=P.getDocument=P.getDocumentOrThrow=P.getFromWindowOrThrow=P.getFromWindow=P.isBrowser=P.isNode=P.isMobile=P.isIOS=P.isAndroid=P.detectOS=P.detectEnv=void 0;var Ca=jo(),Xc=Ca.__importStar(la()),Pe=Ca.__importStar(zr()),Qc=(wa(),ri(va));function Zr(e){return(0,Qc.detect)(e)}P.detectEnv=Zr;function zo(){let e=Zr();return e&&e.os?e.os:void 0}P.detectOS=zo;function Ea(){let e=zo();return e?e.toLowerCase().includes("android"):!1}P.isAndroid=Ea;function xa(){let e=zo();return e?e.toLowerCase().includes("ios")||e.toLowerCase().includes("mac")&&navigator.maxTouchPoints>1:!1}P.isIOS=xa;function ed(){return zo()?Ea()||xa():!1}P.isMobile=ed;function _a(){let e=Zr();return e&&e.name?e.name.toLowerCase()==="node":!1}P.isNode=_a;function td(){return!_a()&&!!(0,P.getNavigator)()}P.isBrowser=td;P.getFromWindow=Pe.getFromWindow;P.getFromWindowOrThrow=Pe.getFromWindowOrThrow;P.getDocumentOrThrow=Pe.getDocumentOrThrow;P.getDocument=Pe.getDocument;P.getNavigatorOrThrow=Pe.getNavigatorOrThrow;P.getNavigator=Pe.getNavigator;P.getLocationOrThrow=Pe.getLocationOrThrow;P.getLocation=Pe.getLocation;P.getCryptoOrThrow=Pe.getCryptoOrThrow;P.getCrypto=Pe.getCrypto;P.getLocalStorageOrThrow=Pe.getLocalStorageOrThrow;P.getLocalStorage=Pe.getLocalStorage;function od(){return Xc.getWindowMetadata()}P.getClientMeta=od});var Pa={};ti(Pa,{safeJsonParse:()=>rd,safeJsonStringify:()=>nd});function rd(e){if(typeof e!="string")throw new Error(`Cannot safe json parse value of type ${typeof e}`);try{return JSON.parse(e)}catch{return e}}function nd(e){return typeof e=="string"?e:JSON.stringify(e)}var Sa=ei(()=>{});var Jr=De(Dt=>{"use strict";Object.defineProperty(Dt,"__esModule",{value:!0});Dt.safeJsonStringify=Dt.safeJsonParse=void 0;var id=jo(),La=id.__importStar((Sa(),ri(Pa)));Dt.safeJsonParse=La.safeJsonParse;Dt.safeJsonStringify=La.safeJsonStringify});var Xr=De(Xe=>{"use strict";Object.defineProperty(Xe,"__esModule",{value:!0});Xe.removeLocal=Xe.getLocal=Xe.setLocal=void 0;var Aa=Jr(),Yr=Kr();function ad(e,t){let o=(0,Aa.safeJsonStringify)(t),r=(0,Yr.getLocalStorage)();r&&r.setItem(e,o)}Xe.setLocal=ad;function sd(e){let t=null,o=null,r=(0,Yr.getLocalStorage)();return r&&(o=r.getItem(e)),t=o&&(0,Aa.safeJsonParse)(o),t}Xe.getLocal=sd;function ld(e){let t=(0,Yr.getLocalStorage)();t&&t.removeItem(e)}Xe.removeLocal=ld});var Ta=De(ue=>{"use strict";Object.defineProperty(ue,"__esModule",{value:!0});ue.getMobileLinkRegistry=ue.getMobileRegistryEntry=ue.saveMobileLinkInfo=ue.formatIOSMobile=ue.mobileLinkChoiceKey=void 0;var cd=Xr();ue.mobileLinkChoiceKey="WALLETCONNECT_DEEPLINK_CHOICE";function dd(e,t){let o=encodeURIComponent(e);return t.universalLink?`${t.universalLink}/wc?uri=${o}`:t.deepLink?`${t.deepLink}${t.deepLink.endsWith(":")?"//":"/"}wc?uri=${o}`:""}ue.formatIOSMobile=dd;function pd(e){let t=e.href.split("?")[0];(0,cd.setLocal)(ue.mobileLinkChoiceKey,Object.assign(Object.assign({},e),{href:t}))}ue.saveMobileLinkInfo=pd;function ka(e,t){return e.filter(o=>o.name.toLowerCase().includes(t.toLowerCase()))[0]}ue.getMobileRegistryEntry=ka;function ud(e,t){let o=e;return t&&(o=t.map(r=>ka(e,r)).filter(Boolean)),o}ue.getMobileLinkRegistry=ud});var Ia=De(ke=>{"use strict";Object.defineProperty(ke,"__esModule",{value:!0});ke.formatMobileRegistry=ke.formatMobileRegistryEntry=ke.getDappRegistryUrl=ke.getWalletRegistryUrl=void 0;var Wa="https://registry.walletconnect.com";function fd(){return Wa+"/api/v2/wallets"}ke.getWalletRegistryUrl=fd;function md(){return Wa+"/api/v2/dapps"}ke.getDappRegistryUrl=md;function Ra(e,t="mobile"){var o;return{name:e.name||"",shortName:e.metadata.shortName||"",color:e.metadata.colors.primary||"",logo:(o=e.image_url.sm)!==null&&o!==void 0?o:"",universalLink:e[t].universal||"",deepLink:e[t].native||""}}ke.formatMobileRegistryEntry=Ra;function hd(e,t="mobile"){return Object.values(e).filter(o=>!!o[t].universal||!!o[t].native).map(o=>Ra(o,t))}ke.formatMobileRegistry=hd});var Ma=De(ht=>{"use strict";Object.defineProperty(ht,"__esModule",{value:!0});var io=jo();io.__exportStar(Kr(),ht);io.__exportStar(Jr(),ht);io.__exportStar(Xr(),ht);io.__exportStar(Ta(),ht);io.__exportStar(Ia(),ht)});import{Web3Provider as nu}from"@ethersproject/providers";import{useEffect as Yn,useState as ie}from"react";var x=()=>{throw new Error("You need to wrap your application with the <PrivyProvider> initialized with your app id.")};import cc from"axios";var Se=class extends Error{constructor(o,r){super(o);r instanceof Error&&(this.cause=r)}toString(){return`${this.type}: ${this.message}${this.cause?` [cause: ${this.cause}]`:""}`}},At=class extends Se{constructor(o,r,n,i){super(n,i);this.type=o;this.status=r}},C=class extends Se{constructor(o,r){super(o,r);this.type="client_error"}};var H=class extends Se{constructor(o,r){super(o,r);this.type="connector_error"}},Z=e=>{if(e instanceof Se)return e;if(!cc.isAxiosError(e))return we(e);if(!e.response)return new At("api_error",null,e.message,e);let{type:t,message:o,error:r}=e.response.data;return new At(t||"ApiError",e.response.status,o||r,e)},we=e=>e instanceof Se?e:e instanceof Error?new C(e.message,e):new C(`Internal error: ${e}`);var ni=()=>"/api/v1/sessions",ii=()=>"/api/v1/sessions/logout",ai=()=>"/api/v1/sessions/fork",si=()=>"/api/v1/sessions/fork/recover",li=()=>"/api/v1/siwe/init",ci=()=>"/api/v1/siwe/authenticate",di=()=>"/api/v1/siwe/link",pi=()=>"/api/v1/passwordless/init",ui=()=>"/api/v1/passwordless/authenticate",fi=()=>"/api/v1/passwordless/link",mi=()=>"/api/v1/passwordless_sms/init",hi=()=>"/api/v1/passwordless_sms/authenticate",gi=()=>"/api/v1/passwordless_sms/link",bi=()=>"/api/v1/oauth/init",yi=()=>"/api/v1/oauth/authenticate",vi=()=>"/api/v1/oauth/link",wi=()=>"/api/v1/siwe/unlink",Ci=()=>"/api/v1/passwordless/unlink",Ei=()=>"/api/v1/passwordless_sms/unlink",xi=()=>"/api/v1/oauth/unlink",_i=()=>"/api/v1/analytics_events";var st=class{constructor(t){this.meta={email:t}}async authenticate(){if(!this.api)throw new C("Auth flow has no API instance");if(!this.meta.email||!this.meta.emailCode)throw new C("Email and email code must be set prior to calling authenticate.");try{let t=ui(),o=await this.api.post(t,{email:this.meta.email,code:this.meta.emailCode});return{user:o.data.user,token:o.data.token,refresh_token:o.data.refresh_token,is_new_user:o.data.is_new_user}}catch(t){throw Z(t)}}async link(){if(!this.api)throw new C("Auth flow has no API instance");if(!this.meta.email||!this.meta.emailCode)throw new C("Email and email code must be set prior to calling authenticate.");try{let t=fi();return(await this.api.post(t,{email:this.meta.email,code:this.meta.emailCode})).data}catch(t){throw Z(t)}}async sendCodeEmail(t){if(!this.api)throw new C("Auth flow has no API instance");if(t&&(this.meta.email=t),!this.meta.email)throw new C("Email must be set when initialzing authentication.");try{let o=pi();return(await this.api.post(o,{email:this.meta.email})).data}catch(o){throw Z(o)}}};var Ke=class{constructor(t,o,r){this.meta={provider:t},this.meta.authorizationCode=o,this.meta.stateCode=r}isActive(){return!!(this.meta.authorizationCode&&this.meta.stateCode&&this.meta.provider)}async authenticate(){if(!this.api)throw new C("Auth flow has no API instance");if(!this.meta.authorizationCode||!this.meta.stateCode)throw new C("[OAuth AuthFlow] Authorization and state codes code must be set prior to calling authenticate.");if(this.meta.authorizationCode==="undefined")throw new C("User denied confirmation during OAuth flow");try{let t=yi(),o=await this.api.post(t,{authorization_code:this.meta.authorizationCode,state_code:this.meta.stateCode});return{user:o.data.user,token:o.data.token,refresh_token:o.data.refresh_token,is_new_user:o.data.is_new_user}}catch(t){throw Z(t)}}async link(){if(!this.api)throw new C("Auth flow has no API instance");if(!this.meta.authorizationCode||!this.meta.stateCode)throw new C("[OAuth AuthFlow] Authorization and state codes code must be set prior to calling link.");if(this.meta.authorizationCode==="undefined")throw new C("User denied confirmation during OAuth flow");try{let t=vi();return(await this.api.post(t,{authorization_code:this.meta.authorizationCode,state_code:this.meta.stateCode})).data}catch(t){throw Z(t)}}async getAuthorizationUrl(){if(!this.api)throw new C("Auth flow has no API instance");if(!this.meta.provider)throw new C("Provider must be set when initialzing OAuth authentication.");try{let t=bi();return(await this.api.post(t,{provider:this.meta.provider,redirect_to:window.location.href})).data}catch(t){throw Z(t)}}};var Je=class{constructor(t,o,r){this._meta={walletType:o,walletId:r},this.connectors=t,this.walletConnector=this.connectors.createWalletConnector(o,null,r)}get meta(){return{...this._meta,walletName:this.walletConnector.walletBranding.name,walletIcon:this.walletConnector.walletBranding.icon}}async authenticate(){if(!this.api)throw new C("Auth flow has no API instance");try{let{message:t,signature:o}=await this.sign(),r=await this.api.post(ci(),{message:t,signature:o});return this.connectors.addWalletConnector(this.walletConnector),await this.connectors.setActiveWallet(this.walletConnector.address)||console.warn("Failed to set active wallet"),{user:r.data.user,token:r.data.token,refresh_token:r.data.refresh_token,is_new_user:r.data.is_new_user}}catch(t){throw Z(t)}}async link(){if(!this.api)throw new C("Auth flow has no API instance");try{let{message:t,signature:o}=await this.sign(),r=await this.api.post(di(),{message:t,signature:o});return this.connectors.addWalletConnector(this.walletConnector),await this.connectors.setActiveWallet(this.walletConnector.address)||console.warn("Failed to set active wallet"),r.data}catch(t){throw Z(t)}}async promptConnect(){if(!this.api)throw new C("Auth flow has no API instance");let t=await this.walletConnector.connect({showPrompt:!0});return await this.buildSiweMessage(t),t}async sign(){if(!this.api)throw new C("Auth flow has no API instance");if(!this.preparedMessage){let o=await this.walletConnector.connect({showPrompt:!1});await this.buildSiweMessage(o)}if(!this.preparedMessage)throw new C("Could not prepare SIWE message");let t=await this.walletConnector.sign(this.preparedMessage);return{message:this.preparedMessage,signature:t}}async buildSiweMessage(t){if(!this.api)throw new C("Auth flow has no API instance");let o=t.address,r=t.chainId,n=await this.api.post(li(),{address:o});return this.preparedMessage=this.walletConnector.prepareMessage(r,o,n.data.nonce),this.preparedMessage}};var lt=class{constructor(t){this.meta={phoneNumber:t}}async authenticate(){if(!this.api)throw new C("Auth flow has no API instance");if(!this.meta.phoneNumber||!this.meta.smsCode)throw new C("phone number and sms code must be set prior to calling authenticate.");try{let t=hi(),o=await this.api.post(t,{phoneNumber:this.meta.phoneNumber,code:this.meta.smsCode});return{user:o.data.user,token:o.data.token,refresh_token:o.data.refresh_token,is_new_user:o.data.is_new_user}}catch(t){throw Z(t)}}async link(){if(!this.api)throw new C("Auth flow has no API instance");if(!this.meta.phoneNumber||!this.meta.smsCode)throw new C("phone number and sms code must be set prior to calling authenticate.");try{let t=gi();return(await this.api.post(t,{phoneNumber:this.meta.phoneNumber,code:this.meta.smsCode})).data}catch(t){throw Z(t)}}async sendSmsCode(t){if(!this.api)throw new C("Auth flow has no API instance");if(t&&(this.meta.phoneNumber=t),!this.meta.phoneNumber)throw new C("phone nNumber must be set when initialzing authentication.");try{let o=mi();return(await this.api.post(o,{phoneNumber:this.meta.phoneNumber})).data}catch(o){throw Z(o)}}};import{getAddress as bd}from"@ethersproject/address";var Pi="1.22.0-beta.1";var ko="4df5e2316331463a9130964bd6078dfa",To="https://auth.privy.io",Si=1e4,Ce=1400,Or=Pi;var kt="privy:token",Wo="privy:refresh_token",no="privy:session_transfer_token",Ro="privy:connectors",Nr="walletconnect",Li=3e4;var Dr=class{constructor(){this._cache={}}get(t){return this._cache[t]}put(t,o){o!==void 0?this._cache[t]=o:this.del(t)}del(t){delete this._cache[t]}getKeys(){return Object.keys(this._cache)}},Ur=class{get(t){let o=localStorage.getItem(t);return o===null?void 0:JSON.parse(o)}put(t,o){o!==void 0?localStorage.setItem(t,JSON.stringify(o)):this.del(t)}del(t){localStorage.removeItem(t)}getKeys(){return Object.entries(localStorage).map(([t])=>t)}};function pc(){return typeof window<"u"&&window.localStorage?new Ur:new Dr}var V=pc();import wc from"@coinbase/wallet-sdk";import{getAddress as Cc}from"@ethersproject/address";import{jsx as Ai,jsxs as uc}from"react/jsx-runtime";var Ee=({style:e,...t})=>uc("svg",{width:"1024",height:"1024",viewBox:"0 0 1024 1024",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{height:"28px",width:"28px",...e},...t,children:[Ai("rect",{width:"1024",height:"1024",fill:"#0052FF",rx:100,ry:100}),Ai("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M152 512C152 710.823 313.177 872 512 872C710.823 872 872 710.823 872 512C872 313.177 710.823 152 512 152C313.177 152 152 313.177 152 512ZM420 396C406.745 396 396 406.745 396 420V604C396 617.255 406.745 628 420 628H604C617.255 628 628 617.255 628 604V420C628 406.745 617.255 396 604 396H420Z",fill:"white"})]});import{getAddress as yc}from"@ethersproject/address";import{Web3Provider as vc}from"@ethersproject/providers";import{ErrorCode as fc}from"@ethersproject/logger";var Tt=class extends H{constructor(){super("Wallet timeout");this.type="wallet_error"}},dt=class extends H{constructor(){super("User rejected connection");this.type="wallet_error"}},xe=e=>{if(e instanceof H)return e;if((e==null?void 0:e.code)&&(e==null?void 0:e.reason)){let t=new Wt(e);return e.code===fc.ACTION_REJECTED&&(t.details=ct.E4001_USER_REJECTED_REQUEST),t}return e!=null&&e.code?new Wt(e):new H("Unknown connector error",e)},Br=class extends Se{constructor(o,r,n){super(o);this.type="provider_error";this.code=r,this.data=n}},Wt=class extends Br{constructor(o){var i,a,s;let r=o;super(r.message,r.code,r.data);let n=Object.values(ct).find(l=>l.eipCode===r.code);this.details=n||ct.UNKNOWN_ERROR,r.code===-32002&&((i=r.message)!=null&&i.includes("already pending for origin")?(a=r.message)!=null&&a.includes("wallet_requestPermissions")?this.details=ct.E32002_CONNECTION_ALREADY_PENDING:this.details=ct.E32002_REQUEST_ALREADY_PENDING:(s=r.message)!=null&&s.includes("Already processing")&&r.message.includes("eth_requestAccounts")&&(this.details=ct.E32002_WALLET_LOCKED))}},mc={ERROR_USER_EXISTS:{message:"User already exists for this address",detail:"Try another address!",retryable:!1},ERROR_TIMED_OUT:{message:"Wallet request timed out",detail:"Please try connecting again.",retryable:!0},ERROR_WALLET_CONNECTION:{message:"Could not log in with wallet",detail:"Please try connecting again.",retryable:!0},ERROR_USER_REJECTED_CONNECTION:{message:"You rejected the request",detail:"Please try connecting again.",retryable:!0}},hc={E32002_CONNECTION_ALREADY_PENDING:{eipCode:-32002,message:"Connection request already pending",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E32002_REQUEST_ALREADY_PENDING:{eipCode:-32002,message:"Resource request already pending",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E32002_WALLET_LOCKED:{eipCode:-32002,message:"Wallet might be locked",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E4001_USER_REJECTED_REQUEST:{eipCode:4001,message:"Signature rejected",detail:"Please try signing again.",retryable:!0}},gc={E4001_DEFAULT_USER_REJECTED_REQUEST:{eipCode:4001,message:"User Rejected Request",detail:"The user rejected the request.",default:!0,retryable:!0},E4100_DEFAULT_UNAUTHORIZED:{eipCode:4100,message:"Unauthorized",detail:"The requested method and/or account has not been authorized by the user.",default:!0,retryable:!1},E4200_DEFAULT_UNSUPPORTED_METHOD:{eipCode:4200,message:"Unsupported Method",detail:"The Provider does not support the requested method.",default:!0,retryable:!1},E4900_DEFAULT_DISCONNECTED:{eipCode:4900,message:"Disconnected",detail:"The Provider is disconnected from all chains.",default:!0,retryable:!0},E4901_DEFAULT_CHAIN_DISCONNECTED:{eipCode:4901,message:"Chain Disconnected",detail:"The Provider is not connected to the requested chain.",default:!0,retryable:!0},E32700_DEFAULT_PARSE_ERROR:{eipCode:-32700,message:"Parse error",detail:"Invalid JSON",default:!0,retryable:!1},E32600_DEFAULT_INVALID_REQUEST:{eipCode:-32600,message:"Invalid request",detail:"JSON is not a valid request object",default:!0,retryable:!1},E32601_DEFAULT_METHOD_NOT_FOUND:{eipCode:-32601,message:"Method not found",detail:"Method does not exist",default:!0,retryable:!1},E32602_DEFAULT_INVALID_PARAMS:{eipCode:-32602,message:"Invalid params",detail:"Invalid method parameters",default:!0,retryable:!1},E32603_DEFAULT_INTERNAL_ERROR:{eipCode:-32603,message:"Internal error",detail:"Internal JSON-RPC error",default:!0,retryable:!0},E32000_DEFAULT_INVALID_INPUT:{eipCode:-32e3,message:"Invalid input",detail:"Missing or invalid parameters",default:!0,retryable:!1},E32001_DEFAULT_RESOURCE_NOT_FOUND:{eipCode:-32001,message:"Resource not found",detail:"Requested resource not found",default:!0,retryable:!1},E32002_DEFAULT_RESOURCE_UNAVAILABLE:{eipCode:-32002,message:"Resource unavailable",detail:"Requested resource not available",default:!0,retryable:!0},E32003_DEFAULT_TRANSACTION_REJECTED:{eipCode:-32003,message:"Transaction rejected",detail:"Transaction creation failed",default:!0,retryable:!0},E32004_DEFAULT_METHOD_NOT_SUPPORTED:{eipCode:-32004,message:"Method not supported",detail:"Method is not implemented",default:!0,retryable:!1},E32005_DEFAULT_LIMIT_EXCEEDED:{eipCode:-32005,message:"Limit exceeded",detail:"Request exceeds defined limit",default:!0,retryable:!1},E32006_DEFAULT_JSON_RPC_VERSION_NOT_SUPPORTED:{eipCode:-32006,message:"JSON-RPC version not supported",detail:"Version of JSON-RPC protocol is not supported",default:!0,retryable:!1}},ct={UNKNOWN_ERROR:{eipCode:0,message:"Unknown error",detail:"Unknown error",retryable:!0},...gc,...hc},pt={...mc,...ct};var bc=12e4,Fr=(e=new Tt,t=bc)=>new Promise((o,r)=>setTimeout(()=>{r(e)},t)),Le=class{constructor(t){this.removeListener=(t,o)=>{if(this.walletProvider)return this.walletProvider.removeListener(t,o)};this.setWalletProvider=t=>{this.walletProvider=t,this._subscriptions.forEach(o=>{var r;(r=this.walletProvider)==null||r.on(o.eventName,o.listener)})};this.walletProvider=t,this._subscriptions=[]}on(t,o){if(this.walletProvider)return this.walletProvider.on(t,o);this._subscriptions.push({eventName:t,listener:o})}async request(t){if(!this.walletProvider)throw new H(`A wallet request of type ${t.method} was made before setting a wallet provider.`);return Promise.race([this.walletProvider.request(t),Fr()]).catch(o=>{throw xe(o)})}},ut=class extends Le{constructor(o){super(o)}},Io=class extends Le{constructor(t){super(t)}sendAsync(t,o){throw new Error("sendAsync is no longer supported by EIP-1193. Use the request method instead.")}};var Ae=class{constructor(t,o,r){this.createSiweMessage=(t,o,r,n,i,a,s)=>`${r} wants you to sign in with your Ethereum account:
1
+ var rc=Object.create;var Ao=Object.defineProperty;var nc=Object.getOwnPropertyDescriptor;var ic=Object.getOwnPropertyNames;var ac=Object.getPrototypeOf,sc=Object.prototype.hasOwnProperty;var ei=(e,t)=>()=>(e&&(t=e(e=0)),t);var De=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ti=(e,t)=>{for(var o in t)Ao(e,o,{get:t[o],enumerable:!0})},oi=(e,t,o,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of ic(t))!sc.call(e,n)&&n!==o&&Ao(e,n,{get:()=>t[n],enumerable:!(r=nc(t,n))||r.enumerable});return e};var lc=(e,t,o)=>(o=e!=null?rc(ac(e)):{},oi(t||!e||!e.__esModule?Ao(o,"default",{value:e,enumerable:!0}):o,e)),ri=e=>oi(Ao({},"__esModule",{value:!0}),e);var jo=De((M0,Vo)=>{var Fi,Gi,Hi,Vi,ji,$i,zi,qi,Zi,Go,$r,Ki,Ji,Yi,Ot,Xi,Qi,ea,ta,oa,ra,na,ia,aa,Ho;(function(e){var t=typeof global=="object"?global:typeof self=="object"?self:typeof this=="object"?this:{};typeof define=="function"&&define.amd?define("tslib",["exports"],function(r){e(o(t,o(r)))}):typeof Vo=="object"&&typeof Vo.exports=="object"?e(o(t,o(Vo.exports))):e(o(t));function o(r,n){return r!==t&&(typeof Object.create=="function"?Object.defineProperty(r,"__esModule",{value:!0}):r.__esModule=!0),function(i,a){return r[i]=n?n(i,a):a}}})(function(e){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(r[i]=n[i])};Fi=function(r,n){if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");t(r,n);function i(){this.constructor=r}r.prototype=n===null?Object.create(n):(i.prototype=n.prototype,new i)},Gi=Object.assign||function(r){for(var n,i=1,a=arguments.length;i<a;i++){n=arguments[i];for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(r[s]=n[s])}return r},Hi=function(r,n){var i={};for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&n.indexOf(a)<0&&(i[a]=r[a]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,a=Object.getOwnPropertySymbols(r);s<a.length;s++)n.indexOf(a[s])<0&&Object.prototype.propertyIsEnumerable.call(r,a[s])&&(i[a[s]]=r[a[s]]);return i},Vi=function(r,n,i,a){var s=arguments.length,l=s<3?n:a===null?a=Object.getOwnPropertyDescriptor(n,i):a,c;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")l=Reflect.decorate(r,n,i,a);else for(var h=r.length-1;h>=0;h--)(c=r[h])&&(l=(s<3?c(l):s>3?c(n,i,l):c(n,i))||l);return s>3&&l&&Object.defineProperty(n,i,l),l},ji=function(r,n){return function(i,a){n(i,a,r)}},$i=function(r,n){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(r,n)},zi=function(r,n,i,a){function s(l){return l instanceof i?l:new i(function(c){c(l)})}return new(i||(i=Promise))(function(l,c){function h(g){try{p(a.next(g))}catch(y){c(y)}}function m(g){try{p(a.throw(g))}catch(y){c(y)}}function p(g){g.done?l(g.value):s(g.value).then(h,m)}p((a=a.apply(r,n||[])).next())})},qi=function(r,n){var i={label:0,sent:function(){if(l[0]&1)throw l[1];return l[1]},trys:[],ops:[]},a,s,l,c;return c={next:h(0),throw:h(1),return:h(2)},typeof Symbol=="function"&&(c[Symbol.iterator]=function(){return this}),c;function h(p){return function(g){return m([p,g])}}function m(p){if(a)throw new TypeError("Generator is already executing.");for(;i;)try{if(a=1,s&&(l=p[0]&2?s.return:p[0]?s.throw||((l=s.return)&&l.call(s),0):s.next)&&!(l=l.call(s,p[1])).done)return l;switch(s=0,l&&(p=[p[0]&2,l.value]),p[0]){case 0:case 1:l=p;break;case 4:return i.label++,{value:p[1],done:!1};case 5:i.label++,s=p[1],p=[0];continue;case 7:p=i.ops.pop(),i.trys.pop();continue;default:if(l=i.trys,!(l=l.length>0&&l[l.length-1])&&(p[0]===6||p[0]===2)){i=0;continue}if(p[0]===3&&(!l||p[1]>l[0]&&p[1]<l[3])){i.label=p[1];break}if(p[0]===6&&i.label<l[1]){i.label=l[1],l=p;break}if(l&&i.label<l[2]){i.label=l[2],i.ops.push(p);break}l[2]&&i.ops.pop(),i.trys.pop();continue}p=n.call(r,i)}catch(g){p=[6,g],s=0}finally{a=l=0}if(p[0]&5)throw p[1];return{value:p[0]?p[1]:void 0,done:!0}}},Zi=function(r,n){for(var i in r)i!=="default"&&!Object.prototype.hasOwnProperty.call(n,i)&&Ho(n,r,i)},Ho=Object.create?function(r,n,i,a){a===void 0&&(a=i);var s=Object.getOwnPropertyDescriptor(n,i);(!s||("get"in s?!n.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return n[i]}}),Object.defineProperty(r,a,s)}:function(r,n,i,a){a===void 0&&(a=i),r[a]=n[i]},Go=function(r){var n=typeof Symbol=="function"&&Symbol.iterator,i=n&&r[n],a=0;if(i)return i.call(r);if(r&&typeof r.length=="number")return{next:function(){return r&&a>=r.length&&(r=void 0),{value:r&&r[a++],done:!r}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")},$r=function(r,n){var i=typeof Symbol=="function"&&r[Symbol.iterator];if(!i)return r;var a=i.call(r),s,l=[],c;try{for(;(n===void 0||n-- >0)&&!(s=a.next()).done;)l.push(s.value)}catch(h){c={error:h}}finally{try{s&&!s.done&&(i=a.return)&&i.call(a)}finally{if(c)throw c.error}}return l},Ki=function(){for(var r=[],n=0;n<arguments.length;n++)r=r.concat($r(arguments[n]));return r},Ji=function(){for(var r=0,n=0,i=arguments.length;n<i;n++)r+=arguments[n].length;for(var a=Array(r),s=0,n=0;n<i;n++)for(var l=arguments[n],c=0,h=l.length;c<h;c++,s++)a[s]=l[c];return a},Yi=function(r,n,i){if(i||arguments.length===2)for(var a=0,s=n.length,l;a<s;a++)(l||!(a in n))&&(l||(l=Array.prototype.slice.call(n,0,a)),l[a]=n[a]);return r.concat(l||Array.prototype.slice.call(n))},Ot=function(r){return this instanceof Ot?(this.v=r,this):new Ot(r)},Xi=function(r,n,i){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var a=i.apply(r,n||[]),s,l=[];return s={},c("next"),c("throw"),c("return"),s[Symbol.asyncIterator]=function(){return this},s;function c(d){a[d]&&(s[d]=function(b){return new Promise(function(v,A){l.push([d,b,v,A])>1||h(d,b)})})}function h(d,b){try{m(a[d](b))}catch(v){y(l[0][3],v)}}function m(d){d.value instanceof Ot?Promise.resolve(d.value.v).then(p,g):y(l[0][2],d)}function p(d){h("next",d)}function g(d){h("throw",d)}function y(d,b){d(b),l.shift(),l.length&&h(l[0][0],l[0][1])}},Qi=function(r){var n,i;return n={},a("next"),a("throw",function(s){throw s}),a("return"),n[Symbol.iterator]=function(){return this},n;function a(s,l){n[s]=r[s]?function(c){return(i=!i)?{value:Ot(r[s](c)),done:s==="return"}:l?l(c):c}:l}},ea=function(r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n=r[Symbol.asyncIterator],i;return n?n.call(r):(r=typeof Go=="function"?Go(r):r[Symbol.iterator](),i={},a("next"),a("throw"),a("return"),i[Symbol.asyncIterator]=function(){return this},i);function a(l){i[l]=r[l]&&function(c){return new Promise(function(h,m){c=r[l](c),s(h,m,c.done,c.value)})}}function s(l,c,h,m){Promise.resolve(m).then(function(p){l({value:p,done:h})},c)}},ta=function(r,n){return Object.defineProperty?Object.defineProperty(r,"raw",{value:n}):r.raw=n,r};var o=Object.create?function(r,n){Object.defineProperty(r,"default",{enumerable:!0,value:n})}:function(r,n){r.default=n};oa=function(r){if(r&&r.__esModule)return r;var n={};if(r!=null)for(var i in r)i!=="default"&&Object.prototype.hasOwnProperty.call(r,i)&&Ho(n,r,i);return o(n,r),n},ra=function(r){return r&&r.__esModule?r:{default:r}},na=function(r,n,i,a){if(i==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof n=="function"?r!==n||!a:!n.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return i==="m"?a:i==="a"?a.call(r):a?a.value:n.get(r)},ia=function(r,n,i,a,s){if(a==="m")throw new TypeError("Private method is not writable");if(a==="a"&&!s)throw new TypeError("Private accessor was defined without a setter");if(typeof n=="function"?r!==n||!s:!n.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return a==="a"?s.call(r,i):s?s.value=i:n.set(r,i),i},aa=function(r,n){if(n===null||typeof n!="object"&&typeof n!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof r=="function"?n===r:r.has(n)},e("__extends",Fi),e("__assign",Gi),e("__rest",Hi),e("__decorate",Vi),e("__param",ji),e("__metadata",$i),e("__awaiter",zi),e("__generator",qi),e("__exportStar",Zi),e("__createBinding",Ho),e("__values",Go),e("__read",$r),e("__spread",Ki),e("__spreadArrays",Ji),e("__spreadArray",Yi),e("__await",Ot),e("__asyncGenerator",Xi),e("__asyncDelegator",Qi),e("__asyncValues",ea),e("__makeTemplateObject",ta),e("__importStar",oa),e("__importDefault",ra),e("__classPrivateFieldGet",na),e("__classPrivateFieldSet",ia),e("__classPrivateFieldIn",aa)})});var zr=De(U=>{"use strict";Object.defineProperty(U,"__esModule",{value:!0});U.getLocalStorage=U.getLocalStorageOrThrow=U.getCrypto=U.getCryptoOrThrow=U.getLocation=U.getLocationOrThrow=U.getNavigator=U.getNavigatorOrThrow=U.getDocument=U.getDocumentOrThrow=U.getFromWindowOrThrow=U.getFromWindow=void 0;function mt(e){let t;return typeof window<"u"&&typeof window[e]<"u"&&(t=window[e]),t}U.getFromWindow=mt;function Nt(e){let t=mt(e);if(!t)throw new Error(`${e} is not defined in Window`);return t}U.getFromWindowOrThrow=Nt;function Mc(){return Nt("document")}U.getDocumentOrThrow=Mc;function Oc(){return mt("document")}U.getDocument=Oc;function Nc(){return Nt("navigator")}U.getNavigatorOrThrow=Nc;function Dc(){return mt("navigator")}U.getNavigator=Dc;function Uc(){return Nt("location")}U.getLocationOrThrow=Uc;function Bc(){return mt("location")}U.getLocation=Bc;function Fc(){return Nt("crypto")}U.getCryptoOrThrow=Fc;function Gc(){return mt("crypto")}U.getCrypto=Gc;function Hc(){return Nt("localStorage")}U.getLocalStorageOrThrow=Hc;function Vc(){return mt("localStorage")}U.getLocalStorage=Vc});var la=De($o=>{"use strict";Object.defineProperty($o,"__esModule",{value:!0});$o.getWindowMetadata=void 0;var sa=zr();function jc(){let e,t;try{e=sa.getDocumentOrThrow(),t=sa.getLocationOrThrow()}catch{return null}function o(){let m=e.getElementsByTagName("link"),p=[];for(let g=0;g<m.length;g++){let y=m[g],d=y.getAttribute("rel");if(d&&d.toLowerCase().indexOf("icon")>-1){let b=y.getAttribute("href");if(b)if(b.toLowerCase().indexOf("https:")===-1&&b.toLowerCase().indexOf("http:")===-1&&b.indexOf("//")!==0){let v=t.protocol+"//"+t.host;if(b.indexOf("/")===0)v+=b;else{let A=t.pathname.split("/");A.pop(),v+=A.join("/")+"/"+b}p.push(v)}else if(b.indexOf("//")===0){let v=t.protocol+b;p.push(v)}else p.push(b)}}return p}function r(...m){let p=e.getElementsByTagName("meta");for(let g=0;g<p.length;g++){let y=p[g],d=["itemprop","property","name"].map(b=>y.getAttribute(b)).filter(b=>b?m.includes(b):!1);if(d.length&&d){let b=y.getAttribute("content");if(b)return b}}return""}function n(){let m=r("name","og:site_name","og:title","twitter:title");return m||(m=e.title),m}function i(){return r("description","og:description","twitter:description","keywords")}let a=n(),s=i(),l=t.origin,c=o();return{description:s,url:l,icons:c,name:a}}$o.getWindowMetadata=jc});var va={};ti(va,{BotInfo:()=>ma,BrowserInfo:()=>pa,NodeInfo:()=>ua,ReactNativeInfo:()=>ha,SearchBotDeviceInfo:()=>fa,browserName:()=>Jc,detect:()=>Kc,detectOS:()=>ba,getNodeVersion:()=>ya,parseUserAgent:()=>qr});function Kc(e){return e?qr(e):typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"?new ha:typeof navigator<"u"?qr(navigator.userAgent):ya()}function ga(e){return e!==""&&Zc.reduce(function(t,o){var r=o[0],n=o[1];if(t)return t;var i=n.exec(e);return!!i&&[r,i]},!1)}function Jc(e){var t=ga(e);return t?t[0]:null}function qr(e){var t=ga(e);if(!t)return null;var o=t[0],r=t[1];if(o==="searchbot")return new ma;var n=r[1]&&r[1].split(/[._]/).slice(0,3);n?n.length<ca&&(n=$c(n,Yc(ca-n.length))):n=[];var i=n.join("."),a=ba(e),s=qc.exec(e);return s&&s[1]?new fa(o,i,a,s[1]):new pa(o,i,a)}function ba(e){for(var t=0,o=da.length;t<o;t++){var r=da[t],n=r[0],i=r[1],a=i.exec(e);if(a)return n}return null}function ya(){var e=typeof process<"u"&&process.version;return e?new ua(process.version.slice(1)):null}function Yc(e){for(var t=[],o=0;o<e;o++)t.push("0");return t}var $c,pa,ua,fa,ma,ha,zc,qc,ca,Zc,da,wa=ei(()=>{$c=function(){for(var e=0,t=0,o=arguments.length;t<o;t++)e+=arguments[t].length;for(var r=Array(e),n=0,t=0;t<o;t++)for(var i=arguments[t],a=0,s=i.length;a<s;a++,n++)r[n]=i[a];return r},pa=function(){function e(t,o,r){this.name=t,this.version=o,this.os=r,this.type="browser"}return e}(),ua=function(){function e(t){this.version=t,this.type="node",this.name="node",this.os=process.platform}return e}(),fa=function(){function e(t,o,r,n){this.name=t,this.version=o,this.os=r,this.bot=n,this.type="bot-device"}return e}(),ma=function(){function e(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null}return e}(),ha=function(){function e(){this.type="react-native",this.name="react-native",this.version=null,this.os=null}return e}(),zc=/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/,qc=/(nuhk|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,ca=3,Zc=[["aol",/AOLShield\/([0-9\._]+)/],["edge",/Edge\/([0-9\._]+)/],["edge-ios",/EdgiOS\/([0-9\._]+)/],["yandexbrowser",/YaBrowser\/([0-9\._]+)/],["kakaotalk",/KAKAOTALK\s([0-9\.]+)/],["samsung",/SamsungBrowser\/([0-9\.]+)/],["silk",/\bSilk\/([0-9._-]+)\b/],["miui",/MiuiBrowser\/([0-9\.]+)$/],["beaker",/BeakerBrowser\/([0-9\.]+)/],["edge-chromium",/EdgA?\/([0-9\.]+)/],["chromium-webview",/(?!Chrom.*OPR)wv\).*Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["chrome",/(?!Chrom.*OPR)Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["phantomjs",/PhantomJS\/([0-9\.]+)(:?\s|$)/],["crios",/CriOS\/([0-9\.]+)(:?\s|$)/],["firefox",/Firefox\/([0-9\.]+)(?:\s|$)/],["fxios",/FxiOS\/([0-9\.]+)/],["opera-mini",/Opera Mini.*Version\/([0-9\.]+)/],["opera",/Opera\/([0-9\.]+)(?:\s|$)/],["opera",/OPR\/([0-9\.]+)(:?\s|$)/],["ie",/Trident\/7\.0.*rv\:([0-9\.]+).*\).*Gecko$/],["ie",/MSIE\s([0-9\.]+);.*Trident\/[4-7].0/],["ie",/MSIE\s(7\.0)/],["bb10",/BB10;\sTouch.*Version\/([0-9\.]+)/],["android",/Android\s([0-9\.]+)/],["ios",/Version\/([0-9\._]+).*Mobile.*Safari.*/],["safari",/Version\/([0-9\._]+).*Safari/],["facebook",/FBAV\/([0-9\.]+)/],["instagram",/Instagram\s([0-9\.]+)/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Mobile/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Gecko\)$/],["searchbot",zc]],da=[["iOS",/iP(hone|od|ad)/],["Android OS",/Android/],["BlackBerry OS",/BlackBerry|BB10/],["Windows Mobile",/IEMobile/],["Amazon OS",/Kindle/],["Windows 3.11",/Win16/],["Windows 95",/(Windows 95)|(Win95)|(Windows_95)/],["Windows 98",/(Windows 98)|(Win98)/],["Windows 2000",/(Windows NT 5.0)|(Windows 2000)/],["Windows XP",/(Windows NT 5.1)|(Windows XP)/],["Windows Server 2003",/(Windows NT 5.2)/],["Windows Vista",/(Windows NT 6.0)/],["Windows 7",/(Windows NT 6.1)/],["Windows 8",/(Windows NT 6.2)/],["Windows 8.1",/(Windows NT 6.3)/],["Windows 10",/(Windows NT 10.0)/],["Windows ME",/Windows ME/],["Open BSD",/OpenBSD/],["Sun OS",/SunOS/],["Chrome OS",/CrOS/],["Linux",/(Linux)|(X11)/],["Mac OS",/(Mac_PowerPC)|(Macintosh)/],["QNX",/QNX/],["BeOS",/BeOS/],["OS/2",/OS\/2/]]});var Kr=De(P=>{"use strict";Object.defineProperty(P,"__esModule",{value:!0});P.getClientMeta=P.getLocalStorage=P.getLocalStorageOrThrow=P.getCrypto=P.getCryptoOrThrow=P.getLocation=P.getLocationOrThrow=P.getNavigator=P.getNavigatorOrThrow=P.getDocument=P.getDocumentOrThrow=P.getFromWindowOrThrow=P.getFromWindow=P.isBrowser=P.isNode=P.isMobile=P.isIOS=P.isAndroid=P.detectOS=P.detectEnv=void 0;var Ca=jo(),Xc=Ca.__importStar(la()),Pe=Ca.__importStar(zr()),Qc=(wa(),ri(va));function Zr(e){return(0,Qc.detect)(e)}P.detectEnv=Zr;function zo(){let e=Zr();return e&&e.os?e.os:void 0}P.detectOS=zo;function Ea(){let e=zo();return e?e.toLowerCase().includes("android"):!1}P.isAndroid=Ea;function xa(){let e=zo();return e?e.toLowerCase().includes("ios")||e.toLowerCase().includes("mac")&&navigator.maxTouchPoints>1:!1}P.isIOS=xa;function ed(){return zo()?Ea()||xa():!1}P.isMobile=ed;function _a(){let e=Zr();return e&&e.name?e.name.toLowerCase()==="node":!1}P.isNode=_a;function td(){return!_a()&&!!(0,P.getNavigator)()}P.isBrowser=td;P.getFromWindow=Pe.getFromWindow;P.getFromWindowOrThrow=Pe.getFromWindowOrThrow;P.getDocumentOrThrow=Pe.getDocumentOrThrow;P.getDocument=Pe.getDocument;P.getNavigatorOrThrow=Pe.getNavigatorOrThrow;P.getNavigator=Pe.getNavigator;P.getLocationOrThrow=Pe.getLocationOrThrow;P.getLocation=Pe.getLocation;P.getCryptoOrThrow=Pe.getCryptoOrThrow;P.getCrypto=Pe.getCrypto;P.getLocalStorageOrThrow=Pe.getLocalStorageOrThrow;P.getLocalStorage=Pe.getLocalStorage;function od(){return Xc.getWindowMetadata()}P.getClientMeta=od});var Pa={};ti(Pa,{safeJsonParse:()=>rd,safeJsonStringify:()=>nd});function rd(e){if(typeof e!="string")throw new Error(`Cannot safe json parse value of type ${typeof e}`);try{return JSON.parse(e)}catch{return e}}function nd(e){return typeof e=="string"?e:JSON.stringify(e)}var Sa=ei(()=>{});var Jr=De(Dt=>{"use strict";Object.defineProperty(Dt,"__esModule",{value:!0});Dt.safeJsonStringify=Dt.safeJsonParse=void 0;var id=jo(),La=id.__importStar((Sa(),ri(Pa)));Dt.safeJsonParse=La.safeJsonParse;Dt.safeJsonStringify=La.safeJsonStringify});var Xr=De(Xe=>{"use strict";Object.defineProperty(Xe,"__esModule",{value:!0});Xe.removeLocal=Xe.getLocal=Xe.setLocal=void 0;var Aa=Jr(),Yr=Kr();function ad(e,t){let o=(0,Aa.safeJsonStringify)(t),r=(0,Yr.getLocalStorage)();r&&r.setItem(e,o)}Xe.setLocal=ad;function sd(e){let t=null,o=null,r=(0,Yr.getLocalStorage)();return r&&(o=r.getItem(e)),t=o&&(0,Aa.safeJsonParse)(o),t}Xe.getLocal=sd;function ld(e){let t=(0,Yr.getLocalStorage)();t&&t.removeItem(e)}Xe.removeLocal=ld});var Ta=De(ue=>{"use strict";Object.defineProperty(ue,"__esModule",{value:!0});ue.getMobileLinkRegistry=ue.getMobileRegistryEntry=ue.saveMobileLinkInfo=ue.formatIOSMobile=ue.mobileLinkChoiceKey=void 0;var cd=Xr();ue.mobileLinkChoiceKey="WALLETCONNECT_DEEPLINK_CHOICE";function dd(e,t){let o=encodeURIComponent(e);return t.universalLink?`${t.universalLink}/wc?uri=${o}`:t.deepLink?`${t.deepLink}${t.deepLink.endsWith(":")?"//":"/"}wc?uri=${o}`:""}ue.formatIOSMobile=dd;function pd(e){let t=e.href.split("?")[0];(0,cd.setLocal)(ue.mobileLinkChoiceKey,Object.assign(Object.assign({},e),{href:t}))}ue.saveMobileLinkInfo=pd;function ka(e,t){return e.filter(o=>o.name.toLowerCase().includes(t.toLowerCase()))[0]}ue.getMobileRegistryEntry=ka;function ud(e,t){let o=e;return t&&(o=t.map(r=>ka(e,r)).filter(Boolean)),o}ue.getMobileLinkRegistry=ud});var Ia=De(ke=>{"use strict";Object.defineProperty(ke,"__esModule",{value:!0});ke.formatMobileRegistry=ke.formatMobileRegistryEntry=ke.getDappRegistryUrl=ke.getWalletRegistryUrl=void 0;var Wa="https://registry.walletconnect.com";function fd(){return Wa+"/api/v2/wallets"}ke.getWalletRegistryUrl=fd;function md(){return Wa+"/api/v2/dapps"}ke.getDappRegistryUrl=md;function Ra(e,t="mobile"){var o;return{name:e.name||"",shortName:e.metadata.shortName||"",color:e.metadata.colors.primary||"",logo:(o=e.image_url.sm)!==null&&o!==void 0?o:"",universalLink:e[t].universal||"",deepLink:e[t].native||""}}ke.formatMobileRegistryEntry=Ra;function hd(e,t="mobile"){return Object.values(e).filter(o=>!!o[t].universal||!!o[t].native).map(o=>Ra(o,t))}ke.formatMobileRegistry=hd});var Ma=De(ht=>{"use strict";Object.defineProperty(ht,"__esModule",{value:!0});var io=jo();io.__exportStar(Kr(),ht);io.__exportStar(Jr(),ht);io.__exportStar(Xr(),ht);io.__exportStar(Ta(),ht);io.__exportStar(Ia(),ht)});import{Web3Provider as nu}from"@ethersproject/providers";import{useEffect as Yn,useState as ie}from"react";var x=()=>{throw new Error("You need to wrap your application with the <PrivyProvider> initialized with your app id.")};import cc from"axios";var Se=class extends Error{constructor(o,r){super(o);r instanceof Error&&(this.cause=r)}toString(){return`${this.type}: ${this.message}${this.cause?` [cause: ${this.cause}]`:""}`}},At=class extends Se{constructor(o,r,n,i){super(n,i);this.type=o;this.status=r}},C=class extends Se{constructor(o,r){super(o,r);this.type="client_error"}};var H=class extends Se{constructor(o,r){super(o,r);this.type="connector_error"}},Z=e=>{if(e instanceof Se)return e;if(!cc.isAxiosError(e))return we(e);if(!e.response)return new At("api_error",null,e.message,e);let{type:t,message:o,error:r}=e.response.data;return new At(t||"ApiError",e.response.status,o||r,e)},we=e=>e instanceof Se?e:e instanceof Error?new C(e.message,e):new C(`Internal error: ${e}`);var ni=()=>"/api/v1/sessions",ii=()=>"/api/v1/sessions/logout",ai=()=>"/api/v1/sessions/fork",si=()=>"/api/v1/sessions/fork/recover",li=()=>"/api/v1/siwe/init",ci=()=>"/api/v1/siwe/authenticate",di=()=>"/api/v1/siwe/link",pi=()=>"/api/v1/passwordless/init",ui=()=>"/api/v1/passwordless/authenticate",fi=()=>"/api/v1/passwordless/link",mi=()=>"/api/v1/passwordless_sms/init",hi=()=>"/api/v1/passwordless_sms/authenticate",gi=()=>"/api/v1/passwordless_sms/link",bi=()=>"/api/v1/oauth/init",yi=()=>"/api/v1/oauth/authenticate",vi=()=>"/api/v1/oauth/link",wi=()=>"/api/v1/siwe/unlink",Ci=()=>"/api/v1/passwordless/unlink",Ei=()=>"/api/v1/passwordless_sms/unlink",xi=()=>"/api/v1/oauth/unlink",_i=()=>"/api/v1/analytics_events";var st=class{constructor(t){this.meta={email:t}}async authenticate(){if(!this.api)throw new C("Auth flow has no API instance");if(!this.meta.email||!this.meta.emailCode)throw new C("Email and email code must be set prior to calling authenticate.");try{let t=ui(),o=await this.api.post(t,{email:this.meta.email,code:this.meta.emailCode});return{user:o.data.user,token:o.data.token,refresh_token:o.data.refresh_token,is_new_user:o.data.is_new_user}}catch(t){throw Z(t)}}async link(){if(!this.api)throw new C("Auth flow has no API instance");if(!this.meta.email||!this.meta.emailCode)throw new C("Email and email code must be set prior to calling authenticate.");try{let t=fi();return(await this.api.post(t,{email:this.meta.email,code:this.meta.emailCode})).data}catch(t){throw Z(t)}}async sendCodeEmail(t){if(!this.api)throw new C("Auth flow has no API instance");if(t&&(this.meta.email=t),!this.meta.email)throw new C("Email must be set when initialzing authentication.");try{let o=pi();return(await this.api.post(o,{email:this.meta.email})).data}catch(o){throw Z(o)}}};var Ke=class{constructor(t,o,r){this.meta={provider:t},this.meta.authorizationCode=o,this.meta.stateCode=r}isActive(){return!!(this.meta.authorizationCode&&this.meta.stateCode&&this.meta.provider)}async authenticate(){if(!this.api)throw new C("Auth flow has no API instance");if(!this.meta.authorizationCode||!this.meta.stateCode)throw new C("[OAuth AuthFlow] Authorization and state codes code must be set prior to calling authenticate.");if(this.meta.authorizationCode==="undefined")throw new C("User denied confirmation during OAuth flow");try{let t=yi(),o=await this.api.post(t,{authorization_code:this.meta.authorizationCode,state_code:this.meta.stateCode});return{user:o.data.user,token:o.data.token,refresh_token:o.data.refresh_token,is_new_user:o.data.is_new_user}}catch(t){throw Z(t)}}async link(){if(!this.api)throw new C("Auth flow has no API instance");if(!this.meta.authorizationCode||!this.meta.stateCode)throw new C("[OAuth AuthFlow] Authorization and state codes code must be set prior to calling link.");if(this.meta.authorizationCode==="undefined")throw new C("User denied confirmation during OAuth flow");try{let t=vi();return(await this.api.post(t,{authorization_code:this.meta.authorizationCode,state_code:this.meta.stateCode})).data}catch(t){throw Z(t)}}async getAuthorizationUrl(){if(!this.api)throw new C("Auth flow has no API instance");if(!this.meta.provider)throw new C("Provider must be set when initialzing OAuth authentication.");try{let t=bi();return(await this.api.post(t,{provider:this.meta.provider,redirect_to:window.location.href})).data}catch(t){throw Z(t)}}};var Je=class{constructor(t,o,r){this._meta={walletType:o,walletId:r},this.connectors=t,this.walletConnector=this.connectors.createWalletConnector(o,null,r)}get meta(){return{...this._meta,walletName:this.walletConnector.walletBranding.name,walletIcon:this.walletConnector.walletBranding.icon}}async authenticate(){if(!this.api)throw new C("Auth flow has no API instance");try{let{message:t,signature:o}=await this.sign(),r=await this.api.post(ci(),{message:t,signature:o});return this.connectors.addWalletConnector(this.walletConnector),await this.connectors.setActiveWallet(this.walletConnector.address)||console.warn("Failed to set active wallet"),{user:r.data.user,token:r.data.token,refresh_token:r.data.refresh_token,is_new_user:r.data.is_new_user}}catch(t){throw Z(t)}}async link(){if(!this.api)throw new C("Auth flow has no API instance");try{let{message:t,signature:o}=await this.sign(),r=await this.api.post(di(),{message:t,signature:o});return this.connectors.addWalletConnector(this.walletConnector),await this.connectors.setActiveWallet(this.walletConnector.address)||console.warn("Failed to set active wallet"),r.data}catch(t){throw Z(t)}}async promptConnect(){if(!this.api)throw new C("Auth flow has no API instance");let t=await this.walletConnector.connect({showPrompt:!0});return await this.buildSiweMessage(t),t}async sign(){if(!this.api)throw new C("Auth flow has no API instance");if(!this.preparedMessage){let o=await this.walletConnector.connect({showPrompt:!1});await this.buildSiweMessage(o)}if(!this.preparedMessage)throw new C("Could not prepare SIWE message");let t=await this.walletConnector.sign(this.preparedMessage);return{message:this.preparedMessage,signature:t}}async buildSiweMessage(t){if(!this.api)throw new C("Auth flow has no API instance");let o=t.address,r=t.chainId,n=await this.api.post(li(),{address:o});return this.preparedMessage=this.walletConnector.prepareMessage(r,o,n.data.nonce),this.preparedMessage}};var lt=class{constructor(t){this.meta={phoneNumber:t}}async authenticate(){if(!this.api)throw new C("Auth flow has no API instance");if(!this.meta.phoneNumber||!this.meta.smsCode)throw new C("phone number and sms code must be set prior to calling authenticate.");try{let t=hi(),o=await this.api.post(t,{phoneNumber:this.meta.phoneNumber,code:this.meta.smsCode});return{user:o.data.user,token:o.data.token,refresh_token:o.data.refresh_token,is_new_user:o.data.is_new_user}}catch(t){throw Z(t)}}async link(){if(!this.api)throw new C("Auth flow has no API instance");if(!this.meta.phoneNumber||!this.meta.smsCode)throw new C("phone number and sms code must be set prior to calling authenticate.");try{let t=gi();return(await this.api.post(t,{phoneNumber:this.meta.phoneNumber,code:this.meta.smsCode})).data}catch(t){throw Z(t)}}async sendSmsCode(t){if(!this.api)throw new C("Auth flow has no API instance");if(t&&(this.meta.phoneNumber=t),!this.meta.phoneNumber)throw new C("phone nNumber must be set when initialzing authentication.");try{let o=mi();return(await this.api.post(o,{phoneNumber:this.meta.phoneNumber})).data}catch(o){throw Z(o)}}};import{getAddress as bd}from"@ethersproject/address";var Pi="1.22.0-beta.2";var ko="4df5e2316331463a9130964bd6078dfa",To="https://auth.privy.io",Si=1e4,Ce=1400,Or=Pi;var kt="privy:token",Wo="privy:refresh_token",no="privy:session_transfer_token",Ro="privy:connectors",Nr="walletconnect",Li=3e4;var Dr=class{constructor(){this._cache={}}get(t){return this._cache[t]}put(t,o){o!==void 0?this._cache[t]=o:this.del(t)}del(t){delete this._cache[t]}getKeys(){return Object.keys(this._cache)}},Ur=class{get(t){let o=localStorage.getItem(t);return o===null?void 0:JSON.parse(o)}put(t,o){o!==void 0?localStorage.setItem(t,JSON.stringify(o)):this.del(t)}del(t){localStorage.removeItem(t)}getKeys(){return Object.entries(localStorage).map(([t])=>t)}};function pc(){return typeof window<"u"&&window.localStorage?new Ur:new Dr}var V=pc();import wc from"@coinbase/wallet-sdk";import{getAddress as Cc}from"@ethersproject/address";import{jsx as Ai,jsxs as uc}from"react/jsx-runtime";var Ee=({style:e,...t})=>uc("svg",{width:"1024",height:"1024",viewBox:"0 0 1024 1024",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{height:"28px",width:"28px",...e},...t,children:[Ai("rect",{width:"1024",height:"1024",fill:"#0052FF",rx:100,ry:100}),Ai("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M152 512C152 710.823 313.177 872 512 872C710.823 872 872 710.823 872 512C872 313.177 710.823 152 512 152C313.177 152 152 313.177 152 512ZM420 396C406.745 396 396 406.745 396 420V604C396 617.255 406.745 628 420 628H604C617.255 628 628 617.255 628 604V420C628 406.745 617.255 396 604 396H420Z",fill:"white"})]});import{getAddress as yc}from"@ethersproject/address";import{Web3Provider as vc}from"@ethersproject/providers";import{ErrorCode as fc}from"@ethersproject/logger";var Tt=class extends H{constructor(){super("Wallet timeout");this.type="wallet_error"}},dt=class extends H{constructor(){super("User rejected connection");this.type="wallet_error"}},xe=e=>{if(e instanceof H)return e;if((e==null?void 0:e.code)&&(e==null?void 0:e.reason)){let t=new Wt(e);return e.code===fc.ACTION_REJECTED&&(t.details=ct.E4001_USER_REJECTED_REQUEST),t}return e!=null&&e.code?new Wt(e):new H("Unknown connector error",e)},Br=class extends Se{constructor(o,r,n){super(o);this.type="provider_error";this.code=r,this.data=n}},Wt=class extends Br{constructor(o){var i,a,s;let r=o;super(r.message,r.code,r.data);let n=Object.values(ct).find(l=>l.eipCode===r.code);this.details=n||ct.UNKNOWN_ERROR,r.code===-32002&&((i=r.message)!=null&&i.includes("already pending for origin")?(a=r.message)!=null&&a.includes("wallet_requestPermissions")?this.details=ct.E32002_CONNECTION_ALREADY_PENDING:this.details=ct.E32002_REQUEST_ALREADY_PENDING:(s=r.message)!=null&&s.includes("Already processing")&&r.message.includes("eth_requestAccounts")&&(this.details=ct.E32002_WALLET_LOCKED))}},mc={ERROR_USER_EXISTS:{message:"User already exists for this address",detail:"Try another address!",retryable:!1},ERROR_TIMED_OUT:{message:"Wallet request timed out",detail:"Please try connecting again.",retryable:!0},ERROR_WALLET_CONNECTION:{message:"Could not log in with wallet",detail:"Please try connecting again.",retryable:!0},ERROR_USER_REJECTED_CONNECTION:{message:"You rejected the request",detail:"Please try connecting again.",retryable:!0}},hc={E32002_CONNECTION_ALREADY_PENDING:{eipCode:-32002,message:"Connection request already pending",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E32002_REQUEST_ALREADY_PENDING:{eipCode:-32002,message:"Resource request already pending",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E32002_WALLET_LOCKED:{eipCode:-32002,message:"Wallet might be locked",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E4001_USER_REJECTED_REQUEST:{eipCode:4001,message:"Signature rejected",detail:"Please try signing again.",retryable:!0}},gc={E4001_DEFAULT_USER_REJECTED_REQUEST:{eipCode:4001,message:"User Rejected Request",detail:"The user rejected the request.",default:!0,retryable:!0},E4100_DEFAULT_UNAUTHORIZED:{eipCode:4100,message:"Unauthorized",detail:"The requested method and/or account has not been authorized by the user.",default:!0,retryable:!1},E4200_DEFAULT_UNSUPPORTED_METHOD:{eipCode:4200,message:"Unsupported Method",detail:"The Provider does not support the requested method.",default:!0,retryable:!1},E4900_DEFAULT_DISCONNECTED:{eipCode:4900,message:"Disconnected",detail:"The Provider is disconnected from all chains.",default:!0,retryable:!0},E4901_DEFAULT_CHAIN_DISCONNECTED:{eipCode:4901,message:"Chain Disconnected",detail:"The Provider is not connected to the requested chain.",default:!0,retryable:!0},E32700_DEFAULT_PARSE_ERROR:{eipCode:-32700,message:"Parse error",detail:"Invalid JSON",default:!0,retryable:!1},E32600_DEFAULT_INVALID_REQUEST:{eipCode:-32600,message:"Invalid request",detail:"JSON is not a valid request object",default:!0,retryable:!1},E32601_DEFAULT_METHOD_NOT_FOUND:{eipCode:-32601,message:"Method not found",detail:"Method does not exist",default:!0,retryable:!1},E32602_DEFAULT_INVALID_PARAMS:{eipCode:-32602,message:"Invalid params",detail:"Invalid method parameters",default:!0,retryable:!1},E32603_DEFAULT_INTERNAL_ERROR:{eipCode:-32603,message:"Internal error",detail:"Internal JSON-RPC error",default:!0,retryable:!0},E32000_DEFAULT_INVALID_INPUT:{eipCode:-32e3,message:"Invalid input",detail:"Missing or invalid parameters",default:!0,retryable:!1},E32001_DEFAULT_RESOURCE_NOT_FOUND:{eipCode:-32001,message:"Resource not found",detail:"Requested resource not found",default:!0,retryable:!1},E32002_DEFAULT_RESOURCE_UNAVAILABLE:{eipCode:-32002,message:"Resource unavailable",detail:"Requested resource not available",default:!0,retryable:!0},E32003_DEFAULT_TRANSACTION_REJECTED:{eipCode:-32003,message:"Transaction rejected",detail:"Transaction creation failed",default:!0,retryable:!0},E32004_DEFAULT_METHOD_NOT_SUPPORTED:{eipCode:-32004,message:"Method not supported",detail:"Method is not implemented",default:!0,retryable:!1},E32005_DEFAULT_LIMIT_EXCEEDED:{eipCode:-32005,message:"Limit exceeded",detail:"Request exceeds defined limit",default:!0,retryable:!1},E32006_DEFAULT_JSON_RPC_VERSION_NOT_SUPPORTED:{eipCode:-32006,message:"JSON-RPC version not supported",detail:"Version of JSON-RPC protocol is not supported",default:!0,retryable:!1}},ct={UNKNOWN_ERROR:{eipCode:0,message:"Unknown error",detail:"Unknown error",retryable:!0},...gc,...hc},pt={...mc,...ct};var bc=12e4,Fr=(e=new Tt,t=bc)=>new Promise((o,r)=>setTimeout(()=>{r(e)},t)),Le=class{constructor(t){this.removeListener=(t,o)=>{if(this.walletProvider)return this.walletProvider.removeListener(t,o)};this.setWalletProvider=t=>{this.walletProvider=t,this._subscriptions.forEach(o=>{var r;(r=this.walletProvider)==null||r.on(o.eventName,o.listener)})};this.walletProvider=t,this._subscriptions=[]}on(t,o){if(this.walletProvider)return this.walletProvider.on(t,o);this._subscriptions.push({eventName:t,listener:o})}async request(t){if(!this.walletProvider)throw new H(`A wallet request of type ${t.method} was made before setting a wallet provider.`);return Promise.race([this.walletProvider.request(t),Fr()]).catch(o=>{throw xe(o)})}},ut=class extends Le{constructor(o){super(o)}},Io=class extends Le{constructor(t){super(t)}sendAsync(t,o){throw new Error("sendAsync is no longer supported by EIP-1193. Use the request method instead.")}};var Ae=class{constructor(t,o,r){this.createSiweMessage=(t,o,r,n,i,a,s)=>`${r} wants you to sign in with your Ethereum account:
2
2
  ${o}
3
3
 
4
4
  ${s}
@@ -9,7 +9,7 @@ Chain ID: ${t}
9
9
  Nonce: ${a}
10
10
  Issued At: ${i}
11
11
  Resources:
12
- - https://privy.io`;this.proxyProvider=o,this.walletType=t,this.address=r,this.chain=null,this.connected=!1}async fetchAddress(){if(!this.address){let t=await this.proxyProvider.request({method:"eth_accounts"});Array.isArray(t)&&t.length>0&&(this.address=yc(t[0]))}return this.address}async fetchChainId(){if(!this.chain){let t=await this.proxyProvider.request({method:"eth_chainId"}),o=Number(t);this.chain=String(o)}return this.chain}async getConnectedWallet(){if(!this.walletType||!await this.isConnected())return null;let o=await this.fetchAddress(),r=await this.fetchChainId();return{address:o,chainId:r,chainType:"ethereum",walletClient:"unknown"}}async setActive(){return!0}async sign(t){return await this.connect({showPrompt:!1}),new vc(new ut(this.proxyProvider)).getSigner().signMessage(t)}prepareMessage(t,o,r){let n=window.location.host,i=window.location.origin,a="By signing, you are proving you own this wallet and logging in. This does not initiate a transaction or cost any fees.",s=new Date().toISOString();return this.createSiweMessage(t,o,n,i,s,r,a)}};var Ec=e=>{let t=`https://mainnet.infura.io/v3/${ko}`,o=1;return e.makeWeb3Provider(t,o)},Mo,Oo=class extends Ae{constructor(t,o){super("coinbase_wallet",t,o),Mo||(Mo=new wc({appName:"Privy",darkMode:!1,headlessMode:!1}))}async connect(t){return this.proxyProvider.setWalletProvider(Ec(Mo)),t.showPrompt&&await this.promptConnection(),await this.isConnected()?this.getConnectedWallet():null}disconnect(){Mo.disconnect()}async isConnected(){return await this.fetchAddress()!==null}get walletBranding(){return{name:"Coinbase Wallet",icon:Ee}}async promptConnection(){try{let t="",o=await this.proxyProvider.request({method:"eth_requestAccounts"});if(o.length>0&&(t=Cc(o[0])),!t||t==="")throw new H("Unable to retrieve address");this.connected=!0}catch(t){throw xe(t)}}};import{getAddress as Vr}from"@ethersproject/address";import{Web3Provider as Ii}from"@ethersproject/providers";import{isMobile as Sc}from"react-device-detect";import{jsx as pe,jsxs as xc}from"react/jsx-runtime";var _e=({style:e,...t})=>xc("svg",{width:"28",height:"28",viewBox:"0 0 28 28",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{height:"28px",width:"28px",...e},...t,children:[pe("rect",{width:"28",height:"28",rx:"3",fill:"white"}),pe("path",{d:"M23.0126 5L15.1958 10.7823L16.6533 7.37359L23.0126 5Z",fill:"#E17726",stroke:"#E17726",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),pe("path",{d:"M4.98753 5L12.7329 10.8299L11.3468 7.37954L4.98753 5ZM20.1987 18.4027L18.1166 21.5794L22.5723 22.8049L23.8454 18.4741L20.1987 18.4027ZM4.16064 18.4741L5.42775 22.8049L9.87153 21.5794L7.80133 18.4027L4.16064 18.4741Z",fill:"#E27625",stroke:"#E27625",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),pe("path",{d:"M9.6336 13.0369L8.39624 14.9049L12.7984 15.1071L12.6556 10.3659L9.6336 13.0429V13.0369ZM18.3665 13.0429L15.2969 10.3064L15.1958 15.1071L19.5979 14.9049L18.3665 13.0429ZM9.87155 21.5794L12.5426 20.2945L10.2463 18.5098L9.87155 21.5794ZM15.4635 20.2886L18.1166 21.5794L17.7597 18.5039L15.4635 20.2886Z",fill:"#E27625",stroke:"#E27625",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),pe("path",{d:"M18.1167 21.5794L15.4635 20.2944L15.6776 22.0196L15.6539 22.7513L18.1167 21.5794ZM9.87158 21.5794L12.3463 22.7513L12.3285 22.0196L12.5426 20.2944L9.87158 21.5794Z",fill:"#D5BFB2",stroke:"#D5BFB2",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),pe("path",{d:"M12.3878 17.3616L10.1868 16.7191L11.7454 16.0052L12.3938 17.3616H12.3878ZM15.6062 17.3616L16.2605 15.9993L17.8251 16.7131L15.6062 17.3675V17.3616Z",fill:"#233447",stroke:"#233447",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),pe("path",{d:"M9.87147 21.5794L10.2581 18.4027L7.80127 18.4741L9.87147 21.5794ZM17.7418 18.4027L18.1166 21.5794L20.1987 18.4741L17.7418 18.4027ZM19.6038 14.9048L15.2016 15.107L15.6061 17.3676L16.2605 15.9994L17.8251 16.7132L19.6038 14.9048ZM10.1868 16.7192L11.7454 16.0053L12.3938 17.3617L12.8042 15.1011L8.4021 14.9048L10.1868 16.7192Z",fill:"#CC6228",stroke:"#CC6228",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),pe("path",{d:"M8.4021 14.9048L10.2462 18.5038L10.1868 16.7192L8.4021 14.9048ZM17.8251 16.7192L17.7537 18.5038L19.5978 14.9048L17.8251 16.7192ZM12.8042 15.107L12.3878 17.3676L12.9113 20.0327L13.0303 16.5169L12.8042 15.107ZM15.1957 15.107L14.9815 16.511L15.0886 20.0327L15.6061 17.3617L15.1957 15.1011V15.107Z",fill:"#E27525",stroke:"#E27525",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),pe("path",{d:"M15.6062 17.3617L15.0887 20.0327L15.4635 20.2945L17.7538 18.5098L17.8252 16.7192L15.6062 17.3617ZM10.1869 16.7192L10.2463 18.5039L12.5426 20.2885L12.9114 20.0327L12.3939 17.3617L10.1809 16.7192H10.1869Z",fill:"#F5841F",stroke:"#F5841F",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),pe("path",{d:"M15.6598 22.7513L15.6776 22.0196L15.4754 21.853H12.5248L12.3285 22.0196L12.3463 22.7513L9.87158 21.5793L10.7401 22.2932L12.495 23.5008H15.4992L17.26 22.2873L18.1167 21.5793L15.6539 22.7513H15.6598Z",fill:"#C0AC9D",stroke:"#C0AC9D",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),pe("path",{d:"M15.4634 20.2885L15.0886 20.0327H12.9114L12.5425 20.2945L12.3284 22.0196L12.5247 21.8531H15.4753L15.6776 22.0196L15.4634 20.2945V20.2885Z",fill:"#161616",stroke:"#161616",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),pe("path",{d:"M23.3456 11.1571L24 7.97442L23.0125 5L15.4575 10.5919L18.3664 13.0369L22.4711 14.2326L23.3754 13.1797L22.9827 12.8941L23.6074 12.323L23.1315 11.9542L23.7561 11.4783L23.3397 11.1571H23.3456ZM4 7.96847L4.66627 11.1571L4.23795 11.4723L4.87448 11.9482L4.39857 12.323L5.01725 12.8941L4.62463 13.1797L5.52885 14.2326L9.63355 13.0428L12.5425 10.586L4.98751 5L4 7.96847Z",fill:"#763E1A",stroke:"#763E1A",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),pe("path",{d:"M22.4712 14.2325L18.3665 13.0428L19.6038 14.9048L17.7597 18.5038L20.1987 18.4741H23.8454L22.4712 14.2325ZM9.63358 13.0368L5.52888 14.2325L4.16064 18.4741H7.80728L10.2463 18.5038L8.40217 14.9048L9.63953 13.0368H9.63358ZM15.1957 15.107L15.4634 10.5859L16.6532 7.37354H11.3468L12.5366 10.5859L12.8043 15.107L12.9054 16.5229V20.0327H15.0887L15.1006 16.5229L15.1957 15.107Z",fill:"#F5841F",stroke:"#F5841F",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"})]});import{isPossiblePhoneNumber as _c}from"libphonenumber-js/min";var ki=e=>!!String(e).toLowerCase().match(/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/),Ti=e=>_c(String(e),"US"),Wi=(e,t)=>{let o=e.slice(0),r=[];for(;o.length;)r.push(o.splice(0,t));return r},ft=(e,t=3,o=4)=>{if(!e)return"";let r=2,n=3;if(t+o+r+n>=e.length)return e;let i=e.slice(0,r+t),a=e.slice(e.length-o,e.length);return`${i}...${a}`},Gr=e=>new Promise(t=>setTimeout(t,e)),Ri=(e,t={})=>{let o=t.delayMs||40,r=t.maxAttempts||1e3;return new Promise(async(n,i)=>{let a=!1,s=0;for(;!a&&s<r;)e().then(()=>{a=!0,n()},(...l)=>{a=!0,i(...l)}),s+=1,await Gr(o);a||i(new Error("Exceeded max attempts before resolving function"))})},No=(e,t,o={})=>{let r=new URL(t,e);for(let[n,i]of Object.entries(o))r.searchParams.set(n,i);return r.href},Pc=(e,t)=>e.toLowerCase()===t.toLowerCase(),Hr=(e,t)=>{for(let o of e)if(Pc(o,t))return!0;return!1},Do=e=>e.replace(/([\u2700-\u27BF]|[\uE000-\uF8FF]|\uD83C[\uDC00-\uDFFF]|\uD83D[\uDC00-\uDFFF]|[\u2011-\u26FF]|\uD83E[\uDD10-\uDDFF])/g,"");var Mi=async()=>{let t=await new Ii(window.ethereum).listAccounts();return t.length===0?null:Vr(t[0])},Uo=class extends Ae{constructor(t,o){var r;super("metamask",t,o),this.proxyProvider.setWalletProvider(window.ethereum),(r=window.ethereum.providers)==null||r.forEach(n=>{n.isMetaMask&&this.proxyProvider.setWalletProvider(n)}),this.subscribeListeners()}async connect(t){return t.showPrompt&&await this.promptConnection(),await this.isConnected()?this.getConnectedWallet():null}async isConnected(){let t=await this.connectedMetamaskAddress();return this.address===t}async connectedMetamaskAddress(){let o=await new Ii(this.proxyProvider).listAccounts();return o.length===0?null:Vr(o[0])}get walletBranding(){return{name:"MetaMask",icon:_e}}disconnect(){console.warn("Metamask does not support programmetic disconnect.")}async promptConnection(){try{let t="";if(!Sc&&(await this.proxyProvider.request({method:"wallet_requestPermissions",params:[{eth_accounts:{}}]}),this.address&&await this.isConnected()))throw new H("Selected the wrong wallet in MetaMask");let o=await this.proxyProvider.request({method:"eth_requestAccounts"});if(o.length>0&&(t=Vr(o[0])),!t||t==="")throw new H("Unable to retrieve address");if(this.address&&t!==this.address)return;this.connected=!0,this.address=t}catch(t){throw xe(t)}}async setActive(){if(await this.connectedMetamaskAddress()===this.address)return this.connected=!0,!0;for(;!await this.isConnected();)await Gr(200);return this.connected=!0,!0}subscribeListeners(){this.proxyProvider.on("accountsChanged",t=>{var o;if(t.length>0){let r=t[0];this.connected=((o=this.address)==null?void 0:o.toLowerCase())===(r==null?void 0:r.toLowerCase())}else this.connected=!1}),this.proxyProvider.on("disconnect",()=>{this.connected=!1})}};import{getAddress as Oi}from"@ethersproject/address";import{Web3Provider as Lc}from"@ethersproject/providers";import{jsx as Rt,jsxs as Bo}from"react/jsx-runtime";var Ye=({style:e,...t})=>Bo("svg",{width:"28",height:"28",viewBox:"0 0 28 28",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{height:"28px",width:"28px",...e},...t,children:[Rt("rect",{width:"28",height:"28",rx:"6",fill:"url(#paint0_linear_1765_9937)"}),Rt("path",{d:"M24.0223 14.1704H21.5542C21.5542 9.14083 17.4627 5.06372 12.4151 5.06372C7.43008 5.06372 3.37717 9.04101 3.27798 13.9845C3.17536 19.0945 7.98653 23.5318 13.1154 23.5318H13.7605C18.2822 23.5318 24.3426 20.0047 25.2895 15.7072C25.4643 14.9151 24.8364 14.1704 24.0223 14.1704ZM8.74752 14.3945C8.74752 15.0671 8.19544 15.6172 7.52045 15.6172C6.84545 15.6172 6.29341 15.0669 6.29341 14.3945V12.4165C6.29341 11.7439 6.84545 11.1938 7.52045 11.1938C8.19544 11.1938 8.74752 11.7439 8.74752 12.4165V14.3945ZM13.0083 14.3945C13.0083 15.0671 12.4563 15.6172 11.7813 15.6172C11.1063 15.6172 10.5543 15.0669 10.5543 14.3945V12.4165C10.5543 11.7439 11.1065 11.1938 11.7813 11.1938C12.4563 11.1938 13.0083 11.7439 13.0083 12.4165V14.3945Z",fill:"url(#paint1_linear_1765_9937)"}),Bo("defs",{children:[Bo("linearGradient",{id:"paint0_linear_1765_9937",x1:"14",y1:"0",x2:"14",y2:"28",gradientUnits:"userSpaceOnUse",children:[Rt("stop",{stopColor:"#534BB1"}),Rt("stop",{offset:"1",stopColor:"#551BF9"})]}),Bo("linearGradient",{id:"paint1_linear_1765_9937",x1:"14.2976",y1:"5.06372",x2:"14.2976",y2:"23.5318",gradientUnits:"userSpaceOnUse",children:[Rt("stop",{stopColor:"white"}),Rt("stop",{offset:"1",stopColor:"white",stopOpacity:"0.82"})]})]})]});var Fo=class extends Ae{constructor(t,o){var r;if(super("phantom",t,o),"phantom"in window){let n=window;this.proxyProvider.setWalletProvider(n.phantom.ethereum),(r=n.phantom.ethereum.providers)==null||r.forEach(i=>{i.isPhantom&&this.proxyProvider.setWalletProvider(i)})}this.subscribeListeners()}async connect(t){return t.showPrompt&&await this.promptConnection(),await this.isConnected()?this.getConnectedWallet():null}async isConnected(){let t=await this.connectedPhantomAddress();return this.address===t}async connectedPhantomAddress(){let o=await new Lc(this.proxyProvider).listAccounts();return o.length===0?null:Oi(o[0])}get walletBranding(){return{name:"Phantom",icon:Ye}}disconnect(){console.warn("Phantom does not support programmetic disconnect.")}async promptConnection(){try{let t="";if(this.address&&await this.isConnected())throw new H("Selected the wrong wallet in Phantom");let o=await this.proxyProvider.request({method:"eth_requestAccounts"});if(o.length>0&&(t=Oi(o[0])),!t||t==="")throw new H("Unable to retrieve address");this.connected=!0,this.address=t}catch(t){throw xe(t)}}subscribeListeners(){this.proxyProvider.on("accountsChanged",t=>{var o;if(t.length>0){let r=t[0];this.connected=((o=this.address)==null?void 0:o.toLowerCase())===(r==null?void 0:r.toLowerCase())}else this.connected=!0}),this.proxyProvider.on("disconnect",()=>{this.connected=!1})}};import gd from"@walletconnect/web3-provider";import{isAndroid as Fa}from"react-device-detect";import{createContext as kc,useContext as Tc,useEffect as jr,useState as Di}from"react";import{jsx as Ac}from"react/jsx-runtime";function Ni(e){return Ac("link",{rel:"prefetch",href:e.src})}import{jsx as Wc,jsxs as Rc}from"react/jsx-runtime";var Ue="LANDING",Ui=kc({ready:!1,app:null,options:{email:!0,sms:!1,wallet:!0,google:!1,twitter:!1,discord:!1,github:!1,apple:!1},currentScreen:Ue,lastScreen:Ue,navigate:x,navigateBack:x,setModalData:x}),Bi=e=>{var h;let t=e.appConfig,o=e.authenticated,r=e.visible,[n,i]=Di(e.initialScreen||Ue),[a,s]=Di(e.initialScreen||Ue);jr(()=>{o||i(Ue)},[o]),jr(()=>{r||(s(Ue),i(Ue))},[r]),jr(()=>{e.initialScreen&&n===Ue&&(i(e.initialScreen),s(e.initialScreen))},[e.initialScreen]);let l=e.initialScreen&&n===Ue?e.initialScreen:n,c={ready:!!(t!=null&&t.id),app:t,options:e.options,data:e.data,setModalData:e.setModalData,currentScreen:l,lastScreen:a,navigate:m=>{s(n),i(m)},navigateBack:()=>{i(a)}};return Rc(Ui.Provider,{value:c,children:[t&&((h=t.appearance)==null?void 0:h.logo)&&Wc(Ni,{src:t.appearance.logo}),e.children]})},w=()=>Tc(Ui);import{jsx as It,jsxs as Ic}from"react/jsx-runtime";var Mt=({style:e,...t})=>{let{app:o}=w();return Ic("svg",{width:"28",height:"28",viewBox:"0 0 28 28",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{height:"28px",width:"28px",...e},...t,children:[It("rect",{width:"28",height:"28",rx:"3",fill:(o==null?void 0:o.appearance.palette.colorScheme)==="dark"?"#3396ff":"#141414"}),It("g",{clipPath:"url(#clip0_1765_9946)",children:It("path",{d:"M8.09448 10.3941C11.3558 7.20196 16.6442 7.20196 19.9055 10.3941L20.2982 10.7782C20.3369 10.8157 20.3677 10.8606 20.3887 10.9102C20.4097 10.9599 20.4206 11.0132 20.4206 11.0671C20.4206 11.121 20.4097 11.1744 20.3887 11.224C20.3677 11.2737 20.3369 11.3186 20.2982 11.3561L18.9554 12.6702C18.9158 12.7086 18.8628 12.7301 18.8077 12.7301C18.7526 12.7301 18.6996 12.7086 18.66 12.6702L18.1198 12.1415C15.8448 9.91503 12.1557 9.91503 9.88015 12.1415L9.30167 12.7075C9.26207 12.7459 9.20909 12.7673 9.15395 12.7673C9.0988 12.7673 9.04582 12.7459 9.00622 12.7075L7.66346 11.3934C7.62475 11.3559 7.59397 11.3109 7.57295 11.2613C7.55193 11.2117 7.5411 11.1583 7.5411 11.1044C7.5411 11.0505 7.55193 10.9971 7.57295 10.9475C7.59397 10.8979 7.62475 10.8529 7.66346 10.8154L8.09448 10.3941ZM22.6829 13.1115L23.8776 14.2814C23.9163 14.319 23.9471 14.3639 23.9681 14.4135C23.9892 14.4632 24 14.5165 24 14.5704C24 14.6243 23.9892 14.6777 23.9681 14.7273C23.9471 14.777 23.9163 14.8219 23.8776 14.8594L18.4893 20.1332C18.4102 20.2101 18.3042 20.2531 18.1938 20.2531C18.0835 20.2531 17.9775 20.2101 17.8984 20.1332L14.0743 16.3901C14.0545 16.3708 14.0279 16.36 14.0003 16.36C13.9726 16.36 13.9461 16.3708 13.9263 16.3901L10.1021 20.1332C10.023 20.2101 9.91703 20.2531 9.8067 20.2531C9.69636 20.2531 9.59038 20.2101 9.51124 20.1332L4.12236 14.8594C4.08365 14.8219 4.05287 14.777 4.03185 14.7273C4.01083 14.6777 4 14.6243 4 14.5704C4 14.5165 4.01083 14.4632 4.03185 14.4135C4.05287 14.3639 4.08365 14.319 4.12236 14.2814L5.31767 13.1115C5.39678 13.0348 5.50265 12.9919 5.61285 12.9919C5.72305 12.9919 5.82892 13.0348 5.90803 13.1115L9.73216 16.8546C9.75194 16.874 9.7785 16.8848 9.80616 16.8848C9.83381 16.8848 9.86037 16.874 9.88015 16.8546L13.7043 13.1115C13.7834 13.0346 13.8894 12.9916 13.9997 12.9916C14.1101 12.9916 14.216 13.0346 14.2952 13.1115L18.1198 16.8546C18.1396 16.874 18.1662 16.8848 18.1938 16.8848C18.2215 16.8848 18.2481 16.874 18.2678 16.8546L22.092 13.1115C22.1711 13.0346 22.2771 12.9916 22.3874 12.9916C22.4977 12.9916 22.6037 13.0346 22.6829 13.1115Z",fill:"white"})}),It("defs",{children:It("clipPath",{id:"clip0_1765_9946",children:It("rect",{width:"20",height:"12.2531",fill:"white",transform:"translate(4 8)"})})})]})};var Qr=lc(Ma());import{isAndroid as en}from"react-device-detect";var qo="c57ca95b47569778a828d19178114f4db188b89b763c899ba0be274e97267d96",tn=e=>{let t=Do(e).trim().toLowerCase();for(let[o,r]of Object.entries(ao))if(r.name.toLowerCase()===t)return{id:o,entry:r}},ao={"1ae92b26df02f0abca6304df07debccd18262fdf5fe82daa81593582dac9a369":{name:"Rainbow",image_id:"7a33d7f1-3d12-4b5c-f3ee-5cd83cb1b500",mobile:{universal:"https://rnbwapp.com"}},"4622a2b2d6af1c9844944291e5e7351a6aa24cd7b23099efac1b2fd875da31a0":{name:"Trust Wallet",image_id:"0528ee7e-16d1-4089-21e3-bbfb41933100",mobile:{universal:"https://link.trustwallet.com"}},c57ca95b47569778a828d19178114f4db188b89b763c899ba0be274e97267d96:{name:"MetaMask",image_id:"5195e9db-94d8-4579-6f11-ef553be95100",mobile:{native:"metamask:"}},"225affb176778569276e484e1b92637ad061b01e13a048b35a9d280c3b58970f":{name:"Safe",image_id:"a1cb2777-f8f9-49b0-53fd-443d20ee0b00",mobile:{universal:"https://gnosis-safe.io/"}},"74f8092562bd79675e276d8b2062a83601a4106d30202f2d509195e30e19673d":{name:"Spot",image_id:"1bf33a89-b049-4a1c-d1f6-4dd7419ee400",mobile:{universal:"https://spot.so"}},ecc4036f814562b41a5268adc86270fba1365471402006302e70169465b7ac18:{name:"Zerion",image_id:"f216b371-96cf-409a-9d88-296392b85800",mobile:{universal:"https://wallet.zerion.io"}},"8308656f4548bb81b3508afe355cfbb7f0cb6253d1cc7f998080601f838ecee3":{name:"Unstoppable Domains",image_id:"4725dda0-4471-4d0f-7adf-6bbe8b929c00",mobile:{universal:"https://unstoppabledomains.com/mobile"}},"38f5d18bd8522c244bdd70cb4a68e0e718865155811c043f052fb9f1c51de662":{name:"BitKeep",image_id:"3f7075d0-4ab7-4db5-404d-3e4c05e6fe00",mobile:{universal:"https://bkapp.vip"}},afbd95522f4041c71dd4f1a065f971fd32372865b416f95a0b1db759ae33f2a7:{name:"Omni",image_id:"2cd67b4c-282b-4809-e7c0-a88cd5116f00",mobile:{universal:"https://links.omni.app"}},ccb714920401f7d008dbe11281ae70e3a4bfb621763b187b9e4a3ce1ab8faa3b:{name:"BitPay",image_id:"97d4429f-eaf0-4302-87f5-9d26d46fe700",mobile:{universal:"https://link.bitpay.com/wallet"}},"7674bb4e353bf52886768a3ddc2a4562ce2f4191c80831291218ebd90f5f5e26":{name:"MathWallet",image_id:"26a8f588-3231-4411-60ce-5bb6b805a700",mobile:{universal:"https://www.mathwallet.org"}},"2863183c3299d820fb9a4cb8aab4a34f50380c9992e8be871fd60a62e8d36481":{name:"1inch Wallet",image_id:"dce1ee99-403f-44a9-9f94-20de30616500",mobile:{universal:"https://wallet.1inch.io"}},efba9ae0a9e0fdd9e3e055ddf3c8e75f294babb8aea3499456eff27f771fda61:{name:"Eidoo",image_id:"ef5b8bcf-00d5-457d-e161-9911e4788700",mobile:{universal:"https://eidoo.io/crypto-wallet"}},b021913ba555948a1c81eb3d89b372be46f8354e926679de648e4fa2938bed3e:{name:"Coin98",image_id:"dee547be-936a-4c92-9e3f-7a2350a62e00",mobile:{universal:"https://coin98.com"}},"7e90b95230bc462869bbb59f952273d89841e1c76bcc5319898e08c9f34bd4cd":{name:"Unstoppable Wallet",image_id:"5c38b22c-adb9-4899-3252-6e3d71458500",mobile:{universal:"https://unstoppable.money"}},"138f51c8d00ac7b9ac9d8dc75344d096a7dfe370a568aa167eabc0a21830ed98":{name:"AlphaWallet",image_id:"5b1cddfb-056e-4e78-029a-54de5d70c500",mobile:{universal:"https://aw.app"}},"468b4ab3582757233017ec10735863489104515ab160c053074905a1eecb7e63":{name:"D'CENT Wallet",image_id:"1efb49ec-2bab-4fa1-f2f2-4392c64ed000",mobile:{universal:"https://link.dcentwallet.com"}},"29f4a70ad5993f3f73ae8119f0e78ecbae51deec2a021a770225c644935c0f09":{name:"ZelCore",image_id:"97d45a92-a1f0-46da-95a6-ad5db99f3500",mobile:{universal:"https://link.zel.network"}},"8240fb8a7b117aed27f04aa8870c714eeb910f7c1b16c9b868e793c1836335b8":{name:"Nash",image_id:"12f981b1-bb0a-4115-009f-317255979600",mobile:{universal:"https://nash.io/walletconnect"}},"15d7610042217f691385d20e640869dc7273e991b04e8f476417cdc5ec856955":{name:"Coinomi",image_id:"3b446d16-a908-40c8-5835-9a6efe90dd00",mobile:{universal:"https://coinomi.page.link"}},a395dbfc92b5519cbd1cc6937a4e79830187daaeb2c6fcdf9b9cce4255f2dcd5:{name:"CYBAVO Wallet",image_id:"3117d3ce-b973-4cfd-8fb5-f5d72ed3c200",mobile:{universal:"https://cdn.cybavo.com"}},"0b415a746fb9ee99cce155c2ceca0c6f6061b1dbca2d722b3ba16381d0562150":{name:"SafePal",image_id:"14096232-7483-425b-f9a9-658f94fe7100",mobile:{universal:"https://link.safepal.io"}},"881946407ff22a32ec0e42b2cd31ea5dab52242dc3648d777b511a0440d59efb":{name:"Bridge Wallet",image_id:"989d504f-93db-4ca6-c00a-9d1faf177d00",mobile:{universal:"https://bridge.mtpelerin.com"}},"3b0e861b3a57e98325b82ab687fe0a712c81366d521ceec49eebc35591f1b5d1":{name:"SparkPoint",image_id:"34c4f901-70de-4507-e7a0-bc7887843000",mobile:{universal:"https://sparkpoint.io"}},"38ee551a01e3c5af9d8a9715768861e4d642e2381a62245083f96672b5646c6b":{name:"PEAKDEFI Wallet",image_id:"744a3fbe-4261-4148-133e-49c5b58cb400",mobile:{universal:"https://peakdefi.com/download"}},f2436c67184f158d1beda5df53298ee84abfc367581e4505134b5bcf5f46697d:{name:"Crypto.com | DeFi Wallet",image_id:"7c5ff577-a68d-49c5-02cd-3d83637b0b00",mobile:{universal:"https://wallet.crypto.com"}},"15d1d97de89526a3c259a235304a7c510c40cda3331f0f8433da860ecc528bef":{name:"Ellipal",image_id:"0a805e10-bfc0-4d02-d9c1-8cec88f0dc00",mobile:{universal:"https://www.ellipal.com/"}},"19ad8334f0f034f4176a95722b5746b539b47b37ce17a5abde4755956d05d44c":{name:"Aktionariat",image_id:"6d18e8ea-b536-4038-c5bf-94a499d5a400",mobile:{universal:"https://app.aktionariat.com"}},"95501c1a07c8eb575cb28c753ab9044259546ebcefcd3645461086e49b671f5c":{name:"Talken Wallet",image_id:"1afb5a3a-2da3-40ce-baf9-b416e7510600",mobile:{universal:"https://talken.io"}},"2ed796df33fdbde6a3ea6a47d3636b8341fe285038d844c7a78267b465b27028":{name:"KyberSwap",image_id:"3abd1720-260e-495a-2e31-3d0b349e0d00",mobile:{universal:"https://kyberswapnew.app.link"}},"4e6af4201658b52daad51a279bb363a08b3927e74c0f27abeca3b0110bddf0a9":{name:"Tongue Wallet",image_id:"20bc4fdb-b9e6-429a-8cba-c233b3273000",mobile:{universal:"https://www.tongue.fi"}},b13fcc7e3500a4580c9a5341ed64c49c17d7f864497881048eb160c089be5346:{name:"RWallet",image_id:"a883229c-26cb-4c19-9b34-1f0ed4012a00",mobile:{universal:"https://www.rwallet.app"}},"13c6a06b733edf51784f669f508826b2ab0dc80122a8b5d25d84b17d94bbdf70":{name:"PlasmaPay",image_id:"466c8fd0-fcec-4621-b94f-e91ce1439f00",mobile:{universal:"https://plasmapay.com/"}},"0aafbedfb8eb56dae59ecc37c9a5388509cf9c082635e3f752581cc7128a17c0":{name:"O3Wallet",image_id:"e1c7c6af-c731-463e-55f0-5e686e9f6200",mobile:{universal:"https://o3.network"}},"761d3d98fd77bdb06e6c90092ee7071c6001e93401d05dcf2b007c1a6c9c222c":{name:"HashKey Me",image_id:"72734fac-9500-4c2c-81ba-678f7fc32700",mobile:{universal:"https://me.hashkey.com"}},ffa139f74d1c8ebbb748cf0166f92d886e8c81b521c2193aa940e00626f4e215:{name:"Defiant",image_id:"026462e7-09a3-47f6-6b46-49df18133b00",mobile:{universal:"https://defiantapp.tech"}},"717911f4db0c5eda0e02e76ed179b7940ba1eefffdfb3c9e6540696226860da0":{name:"Elastos Essentials",image_id:"04a6bfed-d80e-4f7b-0516-261f86aa4000",mobile:{universal:"https://essentials.elastos.net"}},"9d6c614d1995741d5313f1f3dbf1f66dcba694de782087d13b8721822502692f":{name:"Stasis",image_id:"7ae753bc-a754-450c-2d90-2c5521734400",mobile:{universal:"https://app.stasis.net"}},a6ffb821a3c32d36fc9d29e29c2ff79a0cd1db0bca453714777846ddf3fdff76:{name:"JulWallet",image_id:"cabd50de-22fa-487b-ce68-2c63de8bb800",mobile:{universal:"https://justliquidity.org"}},"76745388a50e6fea982c4dee2a3ad61a8aa417668be870754689caa8a7506c93":{name:"Tangem",image_id:"8a5b6e94-e378-458d-bf2e-017cc7958e00",mobile:{universal:"https://app.tangem.com"}},"6464873279d46030c0b6b005b33da6be5ed57a752be3ef1f857dc10eaf8028aa":{name:"SecuX",image_id:"d46a33d6-92a1-4dfd-38d4-779815fb5c00",mobile:{universal:"https://wsweb.secuxtech.com"}},"2c81da3add65899baeac53758a07e652eea46dbb5195b8074772c62a77bbf568":{name:"Ambire Wallet",image_id:"c39b3a16-1a38-4588-f089-cb7aeb584700",mobile:{universal:"https://mobile.ambire.com"}},b823fb0d7228ef8e3c0bc9607df9ed79dae2ab3a2811d33f22ade4f573c18232:{name:"Slavi Wallet",image_id:"282ce060-0beb-4236-b7b0-1b34cc6c8f00",mobile:{universal:"https://www.slaviwallet.io"}},dccbd717df77b395445cc6080e01fffada9d8b92dacfda312a26c70c2e9af673:{name:"Nufinetes",image_id:"70080bd7-9858-4720-cf74-8f74cd74cb00",mobile:{universal:"https://apple.vimworld.org"}},c6f3d04a4e1a51e7d2045f347a5ebdab30fc600950a740fca21f0c92e230ee05:{name:"Arianee Wallet",image_id:"ace938a9-c906-4b9e-f683-b85f1ab72800",mobile:{universal:"https://arianee.net"}},c482dfe368d4f004479977fd88e80dc9e81107f3245d706811581a6dfe69c534:{name:"NOW Wallet",image_id:"b6ee4efc-f53e-475b-927b-a7ded6211700",mobile:{universal:"https://walletnow.app.link"}},"14e7176536cb3706e221daaa3cfd7b88b7da8c7dfb64d1d241044164802c6bdd":{name:"Blocto",image_id:"374258d3-c749-4f37-7815-77e61f798c00",mobile:{universal:"https://blocto.app"}},"0e4915107da5b3408b38e248f7a710f4529d54cd30e9d12ff0eb886d45c18e92":{name:"Arculus Wallet",image_id:"f78dab27-7165-4a3d-fdb1-fcff06c0a700",mobile:{universal:"https://gw.arculus.co/app"}},a2c031fccd13a6c16d7745c303507f78ae4da53fed064542804e9657d73e8b5c:{name:"Backpack",image_id:"e46f132d-6e05-4d51-8720-43727446e600",mobile:{universal:"https://jxndao.com"}},f593f4eb9755ff047681a37ebc46706e0e915cf1c2fe0102f5ae47c9f6aa4082:{name:"Autonomy: Digital Art Wallet",image_id:"2ee7c9db-9a86-4cd6-0d32-5053b4636100",mobile:{universal:"https://autonomy.io/apps/wc"}},"5859076ade608fbc4e9d3fe2f95e8527de80f8451ecbb1dced54ca84deae0dd6":{name:"Coingrig",image_id:"18e38e41-a387-4402-ca31-6d2d5eb91100",mobile:{universal:"https://link.coingrig.com"}},bb88a220ed4dcd3d717ec19b6ac00a672edf92e97ef7c243d35e25ff56a07301:{name:"bobablocks",image_id:"aff8973b-e093-45b5-4858-c01dd043bc00",mobile:{universal:"https://app.bobablocks.io"}},cbe13eb482c76f1fa401ff4c84d9acd0b8bc9af311ca0620a0b192fb28359b4e:{name:"Plasma Wallet",image_id:"c268e78d-ffb0-4c8b-5cad-04c3add48500",mobile:{universal:"https://plasma-wallet.com"}},b83a346877b71c02b8531f53485ce12bc00033eabcc1213ca3329cbc744813a5:{name:"Holdstation Wallet",image_id:"e6dba126-85af-4194-84f6-dd16632c3c00",mobile:{universal:"https://apps.apple.com/us/app/holdstation-web3-wallet/id6444925618"}},a92d512c649e87a5acba5885ac03f62662cff1f647c20a63833eb45a71a6f877:{name:"HUMBL WALLET",image_id:"1ac55ba2-aa98-4ed0-59b3-b3155dea4200",mobile:{universal:"https://wallet.search3.com"}},"226d8a12a2e6e5c4185fa9c24313824bfb144c2a180325bddbd121844f497afa":{name:"ISLAMIwallet",image_id:"8d723c78-28ad-4610-901f-ea391d7e8d00",mobile:{universal:"https://islamiwallet.com"}},"11c5487e4d8dd8bf32d4c92222363df8296a27307b2531be1e25770365392ecb":{name:"Card Wallet",image_id:"325428cf-c212-4d83-a434-7f48902d2c00",mobile:{universal:"https://wallet.cardstack.com"}},f5b4eeb6015d66be3f5940a895cbaa49ef3439e518cd771270e6b553b48f31d2:{name:"MEW wallet",image_id:"e2024511-2c9b-46d7-3111-52df3d241700",mobile:{universal:"https://mewwallet.com"}},"576c90ceaea34f29ff0104837cf2b2e23d201be43be1433feeb18d375430e1fd":{name:"PLTwallet",image_id:"a5d9dd15-8cef-42de-8bed-09e01a8b0200",mobile:{universal:"https://pltwallet.io/"}},"94f785c0c8fb8c4f38cd9cd704416430bcaa2137f27e1468782d624bcd155a43":{name:"Avacus",image_id:"a7106965-91cc-4a73-4688-c5c72ae0ed00",mobile:{universal:"https://avacus.app.link"}},bc949c5d968ae81310268bf9193f9c9fb7bb4e1283e1284af8f2bd4992535fd6:{name:"Argent",image_id:"215158d2-614b-49c9-410f-77aa661c3900",mobile:{universal:"https://www.argent.xyz/app"}},"664b505fea4c2117b8a55c054ef209664e0a68ddaafd7534df739f97a293fa1d":{name:"Hippo Wallet",image_id:"f9570968-45f7-47c1-3189-98cf60e25c00",mobile:{universal:"https://hippowallet.io"}},"0c5bba82e70a2b62405871af809020a077d110d765c0798eb660ad5d3131b328":{name:"Edge Wallet",image_id:"f601bc29-4298-422f-dbf7-34dac2884f00",mobile:{universal:"https://deep.edge.app/wc"}},"792fbacfe787d67595dd4eb38ac308e14b3bbc810393db56f477a92e5ac8764b":{name:"Assure",image_id:"64db7104-c8b7-44ea-e102-11ce87124200",mobile:{universal:"https://www.assure.pro/Official"}},"7ef337ff00714f179d38b8142398efa2ab902a53430e99ebce02892053d7a310":{name:"EASY",image_id:"62feb41a-be1f-4b1c-e089-27f97c0e8d00",mobile:{universal:"https://link.easy.me"}},"7e94e75c90964a69ea375b92214f50c4223dfbfa4913a3733b615444b322f687":{name:"CoinStats",image_id:"f989ab84-650b-4ad5-c342-77f3334f1b00",mobile:{universal:"https://coinstats.app"}},"107bb20463699c4e614d3a2fb7b961e66f48774cb8f6d6c1aee789853280972c":{name:"Bitcoin.com Wallet",image_id:"0d7938e1-9b3b-4d8b-177b-98188c4cf400",mobile:{universal:"https://wallet.bitcoin.com/"}},"1986e7c874bb906f057d5d64a4806c004e021689536e5228c74d64a6058e8bac":{name:"Defiant",image_id:"11a96ca4-3592-42ae-c781-2b7265ec9200",mobile:{universal:"https://defiantapp.tech/"}},"19418ecfd44963883e4d6abca1adeb2036f3b5ffb9bee0ec61f267a9641f878b":{name:"KryptoGO Wallet",image_id:"3ccbd966-97e8-45a0-1ceb-6141a8978e00",mobile:{universal:"https://kryptogo.page.link"}},"37a686ab6223cd42e2886ed6e5477fce100a4fb565dcd57ed4f81f7c12e93053":{name:"Bifrost Wallet",image_id:"86be07e2-6652-4fd1-5f33-651682c95400",mobile:{universal:"https://app.bifrostwallet.com"}},"4f5de5333fed2ccf47c690579aba3b9128aea78175339ff51ef61704bde7502a":{name:"Okse Wallet",image_id:"8a1b36d5-7f40-403a-7000-5d30f9181200",mobile:{universal:"https://okse.io/"}},"9034d54985807aaf3d7780f50f155f954daa468fb58d7b14b216fc79d68bbd14":{name:"Qubic Wallet",image_id:"2e9ef302-daae-4807-555f-d4986b0b6700",mobile:{universal:"https://wallet.qubic.app"}},c39d8ee468e50474fdf3a0bd6b981be404d4671e2702a3d633aae95bcbaa032a:{name:"XFUN Wallet",image_id:"a665f8f3-09ef-4d17-2bd0-26dca4518400",mobile:{universal:"https://xfun.io"}},e9ff15be73584489ca4a66f64d32c4537711797e30b6660dbcb71ea72a42b1f4:{name:"Exodus",image_id:"4c16cad4-cac9-4643-6726-c696efaf5200",mobile:{universal:"https://exodus.com/m"}},"114efdbef4ce710081c1507f3dbc51f439c96a342cf33397799cd1c84b01a8c5":{name:"S-ONE Wallet",image_id:"b3562637-a407-4035-6fa5-a70ff2050400",mobile:{universal:"https://sonewallet.app"}},"5b8e33346dfb2a532748c247876db8d596734da8977905a27b947ba1e2cf465b":{name:"PREMA Wallet",image_id:"6487869b-1165-4f30-aa3a-115665be8300",mobile:{universal:"https://premanft.com"}},"2cca8c1b0bea04ba37dee4017991d348cdb7b826804ab2bd31073254f345b715":{name:"Bee Wallet",image_id:"f90bc33f-f085-40cf-7538-fae5ae84f900",mobile:{universal:"https://beewallet.app/wc"}},e3787ea98d014ca77e2c3794db97c02ef8bcb39347705f5e79502a55434a1ecf:{name:"TK Finance",image_id:"c4066f68-2247-49bf-ac8a-a677bfa81800",mobile:{universal:"https://trustkeys.network"}},"159b0423ce9075d5662f588f805931d989627affab3e63e4dd7ebc62b9c6738c":{name:"Oxalus Wallet",image_id:"a6e22fcb-6b69-45d2-b52d-a4a347a21e00",mobile:{universal:"https://oxalus.page.link/?apn=io.oxalus.wallet&isi=1620111723&ibi=io.oxalus.wallet&link=https://deeplink.oxalus.io"}},fbea6f68df4e6ce163c144df86da89f24cb244f19b53903e26aea9ab7de6393c:{name:"Klever Wallet",image_id:"8f5bbad8-6a14-4b2c-5343-cc1fca6e4d00",mobile:{universal:"https://klever.page.link"}},"1aedbcfc1f31aade56ca34c38b0a1607b41cccfa3de93c946ef3b4ba2dfab11c":{name:"OneKey",image_id:"12bebb3f-8030-4892-8452-c60a6bac1500",mobile:{universal:"https://app.onekey.so/wc/connect"}},"14e5d957c6eb62d3ee8fc6239703ac2d537d7e3552154836ca0beef775f630bc":{name:"Pitaka",image_id:"691c0716-5213-4b99-e837-079268313800",mobile:{universal:"https://app.pitaka.io"}},"031f0187049b7f96c6f039d1c9c8138ff7a17fd75d38b34350c7182232cc29aa":{name:"Obvious",image_id:"40945cea-9cd2-4acc-5799-ca7fb31f4700",mobile:{universal:"https://wallet.obvious.technology"}},c40b9bcef32fa6ce4e0df98be1420628bbc4957646f742380fe618fcb4ab74f1:{name:"RiceWallet",image_id:"df94578e-19be-4f00-258f-2470343e7b00",mobile:{universal:"https://ricewallet.io"}},b265ce38b94d602957a0946673c59a99a15d69adda4317544fec7298ea2d1387:{name:"SafeMoon",image_id:"ecc31a8e-0ee9-49db-cc59-0876b7c35600",mobile:{universal:"https://safemoon.net/"}},dc5415b6ea8114db518ae91195b027d690a11a1d2bfdd1a904e93c5cb746380e:{name:"SimpleHold",image_id:"a9f1ba96-b658-4d13-f71f-226b6389f000",mobile:{universal:"https://simplehold.io"}},"41f20106359ff63cf732adf1f7dc1a157176c9b02fd266b50da6dcc1e9b86071":{name:"Bitizen",image_id:"75dd1471-77e9-4811-ce57-ec8fc980ec00",mobile:{universal:"https://bitizen.org/wallet"}}},Oa=(e,t="md")=>`https://registry.walletconnect.com/v2/logo/${t}/${e}`;function Na(e){return{name:e.name||"",universalLink:e.mobile.universal||"",deepLink:e.mobile.native||""}}function Da(e,t){let o=encodeURIComponent(e);return t.universalLink?`${t.universalLink}/wc?uri=${o}`:t.deepLink?`${t.deepLink}${t.deepLink.endsWith(":")?"//":"/"}wc?uri=${e}`:""}function Ua(e,t){return en?e:Da(e,Na(ao[t]))}var Zo=(e,t)=>{if(!e)return;if(en){(0,Qr.saveMobileLinkInfo)({name:"Unknown",href:t||"wc:"});return}let o=ao[e];if(!o){console.warn("Attempted to set info for unknown wallet",e);return}let r=Da(t||"wc:",Na(o));(0,Qr.saveMobileLinkInfo)({name:(o==null?void 0:o.name)||"",href:r})},Ba=()=>{!en||window.open("wc:","_self")};var on=class extends Ae{constructor(o,r,n){super("wallet_connect",r,n);this.connectionManager=o}setActive(){return this.walletProvider.walletId&&Zo(this.walletProvider.walletId),Promise.resolve(!0)}async connect(o){return o.showPrompt&&await this.promptConnection(),this.getConnectedWallet()}async isConnected(){return this.walletProvider.connected}get walletBranding(){var o,r,n;if(this.walletProvider.walletId){let i=ao[this.walletProvider.walletId];return{name:i.name,icon:this.walletProvider.walletId===qo?_e:Oa(i.image_id)}}return{name:Do(((o=this.walletProvider.walletMeta)==null?void 0:o.name)||"")||"WalletConnect",icon:((n=(r=this.walletProvider.walletMeta)==null?void 0:r.icons)==null?void 0:n[0])||Mt}}async promptConnection(){return new Promise((o,r)=>{this.walletProvider.connector.on("disconnect",(i,a)=>{if(i){r(xe(i));return}a.params.some(s=>s.message==="Session Rejected")&&(this.setWalletProvider(this.connectionManager.replaceProvider(this,this.walletProvider)),r(new dt)),r(new H("Unknown error during connection"))}),this.walletProvider.qrcode&&this.walletProvider.connector.on("modal_closed",()=>{this.setWalletProvider(this.connectionManager.replaceProvider(this,this.walletProvider)),r(new dt)}),this.walletProvider.connector.on("transport_error",(i,a)=>{r(xe(i))}),(async()=>{let i="",a=await Promise.race([this.connectionManager.enableProvider(this.walletProvider),Fr()]);if(a.length>0&&(i=a[0]),!i||i==="")throw new H("Unable to retrieve address");this.connected=!0,o()})().catch(i=>r(xe(i)))})}async sign(o){Zo(this.walletProvider.walletId),this.walletProvider.connected||await this.connectionManager.enableProvider(this.walletProvider);let r=await this.walletProvider.getWalletConnector();return new Promise(async(n,i)=>{var a;r.signPersonalMessage([o,(a=this.walletProvider.accounts)==null?void 0:a[0]]).then(s=>n(s)),Fa&&Ba()})}disconnect(){this.walletProvider.close().catch(()=>console.warn("Unable to disconnect wallet provider"))}get walletProvider(){return this.proxyProvider.walletProvider}setWalletProvider(o){this.proxyProvider.setWalletProvider(o)}},Ko=class{constructor(){this._storageIdToProvider={},this.reconnectDelayMs=10,this.reconnectBackoff=2,!(typeof window>"u")&&V.getKeys().forEach(t=>{var o,r;if(t.startsWith("walletconnect")){let n=t.split(":")[2]?t.split(":")[2]:void 0;if(!n){let i=(r=(o=V.get(t))==null?void 0:o.peerMeta)==null?void 0:r.name;if(i){let a=tn(i);a!=null&&a.id&&(n=a.id)}}this.createProviderWithStorageId(t,n)}})}createConnector(t,o,r){let n=this.getProviderForAddress(o,r),i=new on(this,t,o);return n?n.isConnecting&&(n=this.replaceProvider(i,n)):n=this.createProvider(i,r),i.setWalletProvider(n),i}async disconnect(){await Promise.all(Object.values(this._storageIdToProvider).map(async t=>await t.disconnect()))}getStorageId(t,o){if(!t)return;let r=V.getKeys().filter(i=>i.startsWith("walletconnect"));if(o){let i=r.filter(a=>a.includes(o));if(i){let a=i.find(s=>Hr(V.get(s).accounts,t));if(a)return a}}let n=r.find(i=>Hr(V.get(i).accounts,t));if(!(n&&o&&!n.includes(o)))return n}getProviderForAddress(t,o){let r=this.getStorageId(t,o);r||(r=`${Nr}:${Math.random().toString(36).slice(2)}:${o||""}`);let n=this._storageIdToProvider[r];if(n)return n}createProviderWithStorageId(t,o){let r=o?{qrcode:!1}:{},n=new gd({infuraId:ko,storageId:t,pollingInterval:Li,...r});return n.walletId=o,o?n.connector.on("display_uri",(i,a)=>{Zo(o);let s=a.params[0],l=Ua(s,o);Fa?window.open(l):window.open(l,"_self","noopener,noreferrer")}):n.connector.on("connect",()=>{var i,a,s;(i=n.walletMeta)!=null&&i.name&&(n.walletId=(s=tn((a=n.walletMeta)==null?void 0:a.name))==null?void 0:s.id)}),this._storageIdToProvider[t]=n,n}createProvider(t,o){let r=`${Nr}:${Math.random().toString(36).slice(2)}:${o||""}`,n=this.createProviderWithStorageId(r,o);return n.connector.on("transport_error",()=>{console.warn("Transport failed. Replacing provider."),setTimeout(()=>{t.setWalletProvider(this.replaceProvider(t,n)),this.reconnectDelayMs*=this.reconnectBackoff},this.reconnectDelayMs)}),n}replaceProvider(t,o){o.close().catch(()=>console.warn("Unable to disconnect provider"));let r=Object.entries(this._storageIdToProvider).find(([n,i])=>i.connector.session.key===o.connector.session.key);return r&&delete this._storageIdToProvider[r[0]],this.createProvider(t,o.walletId)}async enableProvider(t){return t.connected?Promise.resolve(t.accounts):await t.enable()}};var rn="privy-eip-prefer-phantom",lo=()=>{if(!window.ethereum)return!1;if(window.ethereum.isMetaMask)return!0;if(window.ethereum.providers){for(let e of window.ethereum.providers)if(e.isMetaMask)return!0}return!1},co=()=>{var e,t;if("phantom"in window){let o=window;if((t=(e=o==null?void 0:o.phantom)==null?void 0:e.ethereum)!=null&&t.isPhantom)return!0}return!1};function Jo(e){sessionStorage.setItem("phantom.contentScript.ethProviderOptions",`[["eip155"],"USE_${e?"PHANTOM":"METAMASK"}"]`),localStorage.setItem(rn,e?"true":"false")}var Ut=()=>{if(!window.ethereum)return!1;if(window.ethereum.isCoinbaseWallet)return!0;if(window.ethereum.providers){for(let e of window.ethereum.providers)if(e.isCoinbaseWallet)return!0}return!1},nn=e=>{let t=localStorage.getItem("-walletlink:https://www.walletlink.org:Addresses");return t?!!(e==null?void 0:e.linkedAccounts.filter(r=>r.type=="wallet"&&r.address===bd(t)).length):!1},Ga=()=>{var t;let e=V.get(Ro);return e?(t=e.find(o=>o.active))==null?void 0:t.address:null},so=class{constructor(){this.getEthereumProvider=()=>{var t;return((t=this.activeWalletConnector)==null?void 0:t.proxyProvider)||new Le};this.walletConnectors=[],this.wcConnectionManager=new Ko,this.initialized=!1}initialize(){this.initialized||(this.load(),this.activeWalletConnector&&this.activeWalletConnector.connect({showPrompt:!1}).catch(t=>console.warn("Unable to reconnect active wallet",t)),this.initialized=!0)}initializeLinkedWallets(t){t.linkedAccounts.forEach(()=>null)}load(){(V.get(Ro)||[]).forEach(o=>{let r=this.createWalletConnector(o.walletType,o.address);this.addWalletConnector(r),o.active&&(this.activeWalletConnector=r)})}save(){let t=this.walletConnectors.map(o=>{var r;return{address:o.address,walletType:o.walletType,active:o.address===((r=this.activeWalletConnector)==null?void 0:r.address)&&o.walletType===this.activeWalletConnector.walletType}});V.put(Ro,t)}addWalletConnector(t){this.walletConnectors.find(r=>r.address===t.address&&r.walletType===t.walletType)||this.walletConnectors.push(t)}getConnectorByAddress(t){return this.walletConnectors.find(o=>{var r;return((r=o.address)==null?void 0:r.toLowerCase())===t.toLowerCase()})}async removeWallet(t){let o=this.walletConnectors.find(r=>r.address===t);o&&o.disconnect(),this.walletConnectors=this.walletConnectors.filter(r=>r.address!==t),this.activeWalletConnector=void 0,this.save()}async activeWalletSign(t){if(!this.activeWalletConnector)throw new H("Cannot sign, no wallet is active. Is a wallet connected?");return this.activeWalletConnector.sign(t)}async setActiveWallet(t){let o=this.walletConnectors.find(r=>r.address===t);if(o){let r=await o.setActive();return this.activeWalletConnector=r?o:void 0,this.activeWalletConnector&&this.activeWalletConnector.proxyProvider.on("accountsChanged",n=>{var i;n.length===0&&(((i=this.activeWalletConnector)==null?void 0:i.address)===t&&(this.activeWalletConnector=void 0),this.save())}),this.save(),!0}return!1}createWalletConnector(t,o,r){switch(t){case"metamask":return new Uo(new Le,o);case"phantom":return new Fo(new Le,o);case"coinbase_wallet":return new Oo(new Le,o);case"wallet_connect":return this.wcConnectionManager.createConnector(new Le,o,r)}}};function Be(e){return new Date(e*1e3)}function yd(e){let t=[];for(let o of e){let r=o.type;switch(o.type){case"wallet":let n={address:o.address,type:o.type,verifiedAt:Be(o.verified_at),chainType:o.chain_type,walletClient:o.wallet_client};t.push(n);break;case"email":let i={address:o.address,type:o.type,verifiedAt:Be(o.verified_at)};t.push(i);break;case"phone":let a={number:o.phoneNumber,type:o.type,verifiedAt:Be(o.verified_at)};t.push(a);break;case"google_oauth":let s={subject:o.subject,email:o.email,name:o.name,type:o.type,verifiedAt:Be(o.verified_at)};t.push(s);break;case"twitter_oauth":let l={subject:o.subject,username:o.username,name:o.name,type:o.type,verifiedAt:Be(o.verified_at)};t.push(l);break;case"discord_oauth":let c={subject:o.subject,username:o.username,email:o.email,type:o.type,verifiedAt:Be(o.verified_at)};t.push(c);break;case"github_oauth":let h={subject:o.subject,username:o.username,name:o.name,email:o.email,type:o.type,verifiedAt:Be(o.verified_at)};t.push(h);break;case"apple_oauth":let m={subject:o.subject,email:o.email,type:o.type,verifiedAt:Be(o.verified_at)};t.push(m);break;default:console.warn(`Unrecognized account type: ${r}. Please consider upgrading the Privy SDK.`)}}return t}function Qe(e,t){return e.sort((o,r)=>r.verifiedAt.getTime()-o.verifiedAt.getTime()),e.find(o=>o.type===t)}function po(e){let t=Ga();if(!t&&e.wallet)return e;let o=e.linkedAccounts.find(n=>n.type==="wallet"&&n.address===t);if(!o)return e;let r=Object.assign({},e);return r.wallet=o&&{address:o.address,chainType:o.chainType,chainId:o.chainId,walletClient:o.walletClient},r}var Y=e=>e==null?void 0:e.linkedAccounts.find(t=>t.type==="wallet"&&t.walletClient==="privy");function Fe(e){if(!e)return null;let t=yd(e.linked_accounts),o=Qe(t,"wallet"),r=Qe(t,"email"),n=Qe(t,"phone"),i=Qe(t,"google_oauth"),a=Qe(t,"twitter_oauth"),s=Qe(t,"discord_oauth"),l=Qe(t,"github_oauth"),c=Qe(t,"apple_oauth"),h={id:e.id,createdAt:Be(e.created_at),linkedAccounts:t,email:r&&{address:r==null?void 0:r.address},phone:n&&{number:n==null?void 0:n.number},wallet:o&&{address:o.address,chainType:o.chainType,chainId:o.chainId,walletClient:o.walletClient},google:i&&{subject:i.subject,email:i.email,name:i.name},twitter:a&&{subject:a.subject,username:a.username,name:a.name},discord:s&&{subject:s.subject,username:s.username,email:s.email},github:l&&{subject:l.subject,username:l.username,name:l.name,email:l.email},apple:c&&{subject:c.subject,email:c.email}};return po(h)}import an from"axios";var Yo=class{constructor(t,o,r){this.appId=t,this.sdkVersion=Or,this.client=o,this.defaults=r}async get(t,o,r=!0){try{return await an.get(t,await this.buildConfig({headers:{"Cache-Control":"no-cache"},...o},r))}catch(n){throw Z(n)}}async post(t,o,r,n=!0){try{return await an.post(t,o,await this.buildConfig(r,n))}catch(i){throw Z(i)}}async delete(t,o,r=!0){try{return await an.delete(t,await this.buildConfig(o,r))}catch(n){throw Z(n)}}async buildConfig(t,o=!0){if(t=t||{},t.headers=t.headers||{},t.headers["privy-app-id"]=this.appId,t.headers["privy-client"]=`react-auth:${this.sdkVersion}`,o){let r=await this.client.getAccessToken();r!==null&&(t.headers.authorization=`Bearer ${r}`)}return{...this.defaults,...t}}};function Ha(e){return e instanceof st?"email":e instanceof lt?"sms":e instanceof Je?"siwe":e instanceof Ke?e.meta.provider:null}var et=class{constructor(t){this.promise=null;this.fn=t}execute(t){return this.promise===null&&(this.promise=(async()=>{try{return await this.fn(t)}finally{this.promise=null}})()),this.promise}};import*as Va from"jose";var Ge=class{static parse(t){try{return new Ge(t)}catch{return null}}constructor(t){this.value=t,this._decoded=Va.decodeJwt(t)}get subject(){return this._decoded.sub}get expiration(){return this._decoded.exp}get issuer(){return this._decoded.iss}get audience(){return this._decoded.aud}isExpired(t=0){let o=Date.now(),r=(this.expiration-t)*1e3;return o>=r}};var vd=30,Xo=class{constructor(){this.authenticateOnce=new et(async t=>this._authenticate(t)),this.linkOnce=new et(async t=>this._link(t)),this.refreshOnce=new et(this._refresh.bind(this)),this.destroyOnce=new et(this._destroy.bind(this)),this.forkSessionOnce=new et(this._forkSession.bind(this))}get token(){try{let t=V.get(kt);return typeof t=="string"?new Ge(t).value:null}catch(t){return console.error(t),this.destroyLocalState(),null}}get refreshToken(){try{let t=V.get(Wo);return typeof t=="string"?t:null}catch(t){return console.error(t),this.destroyLocalState(),null}}get forkedToken(){try{let t=V.get(no);return typeof t=="string"?t:null}catch(t){return console.error(t),this.destroyLocalState(),null}}hasRefreshCredentials(){return typeof this.token=="string"&&typeof this.refreshToken=="string"}hasRecoveryCredentials(){return typeof this.forkedToken=="string"}hasActiveToken(){let t=Ge.parse(this.token);return t!==null&&!t.isExpired(vd)}authenticate(t){return this.authenticateOnce.execute(t)}link(t){return this.linkOnce.execute(t)}refresh(){return this.refreshOnce.execute()}forkSession(){return this.forkSessionOnce.execute()}destroy(){return this.destroyOnce.execute()}async _authenticate(t){try{let{token:o,refresh_token:r,user:n,is_new_user:i}=await t.authenticate();this.storeToken(o),this.storeRefreshToken(r);let a=Ha(t);return a&&this.client&&this.client.createAnalyticsEvent("sdk_authenticate",{method:a,isNewUser:i}),a==="siwe"&&this.client&&this.client.createAnalyticsEvent("sdk_authenticate_siwe",{walletType:t.meta.walletType,walletName:t.meta.walletName}),{user:Fe(n),isNewUser:i}}catch(o){throw console.warn("Error authenticating session"),we(o)}}async _link(t){try{let o=await t.link();return Fe(o)}catch(o){throw console.warn("Error linking account"),we(o)}}async _refresh(){if(!this.api)throw new C("Session has no API instance");if(!this.client)throw new C("Session has no PrivyClient instance");await this.client.getAccessToken({disableAutoRefresh:!0});let t=this.token,o=this.refreshToken,r=this.forkedToken;try{let n;if(t&&o)n=await this.api.post(ni(),{refresh_token:o},{headers:{authorization:`Bearer ${t}`}},!1),r&&this.clearForkedToken();else if(r)n=await this.api.post(si(),{refresh_token:r},{},!1),this.clearForkedToken();else return null;return this.storeToken(n.data.token),this.storeRefreshToken(n.data.refresh_token),Fe(n.data.user)}catch(n){if(n instanceof At&&n.status===400&&n.message==="Invalid auth token")return this.destroyLocalState(),null;throw we(n)}}async _destroy(){var t;try{await((t=this.api)==null?void 0:t.post(ii(),{refresh_token:this.refreshToken}))}catch{console.warn("Error destroying session")}this.destroyLocalState()}async _forkSession(){if(!this.api)throw new C("Session has no API instance");let t=this.refreshToken;try{let o=await this.api.post(ai(),{refresh_token:t});return this.storeToken(o.data.token),this.storeRefreshToken(o.data.refresh_token),o.data.new_session_refresh_token}catch(o){throw we(o)}}destroyLocalState(){this.storeToken(null),this.storeRefreshToken(null),this.clearForkedToken()}storeToken(t){typeof t=="string"?V.put(kt,t):V.del(kt)}storeRefreshToken(t){typeof t=="string"?V.put(Wo,t):V.del(Wo)}clearForkedToken(){V.del(no)}};var sn,uo=class{constructor(t){this.apiUrl=t.apiUrl||To;let o=t.timeout||Si;this.appId=t.appId,this.clientAnalyticsId=typeof window>"u"?null:crypto.randomUUID(),this.connectors=new so,sn||(sn=new Xo),this.session=sn,this.api=new Yo(t.appId,this,{baseURL:this.apiUrl,timeout:o}),this.session.api=this.api,this.session.client=this}authenticate(){if(!this.authFlow)throw new C("No auth flow in progress.");return this.session.authenticate(this.authFlow)}link(){if(!this.authFlow)throw new C("No auth flow in progress.");return this.session.link(this.authFlow)}async logout(){await this.session.destroy(),this.authFlow=void 0}startAuthFlow(t){t.api=this.api,this.authFlow=t}async unlinkEmail(t){try{let o=await this.api.post(Ci(),{address:t});return Fe(o.data)}catch(o){throw we(o)}}async unlinkPhone(t){try{let o=await this.api.post(Ei(),{phoneNumber:t});return Fe(o.data)}catch(o){throw we(o)}}async unlinkWallet(t){try{let o=await this.api.post(wi(),{address:t});return await this.connectors.removeWallet(t),Fe(o.data)}catch(o){throw we(o)}}async unlinkOAuth(t,o){try{let r=await this.api.post(xi(),{provider:t,subject:o});return Fe(r.data)}catch(r){throw we(r)}}async createAnalyticsEvent(t,o,r){try{if(!this.clientAnalyticsId)throw new Error("Cannot create analytics event if run in node and not browswer");await this.api.post(_i(),{event_name:t,client_id:this.clientAnalyticsId,payload:{...o||{},clientTimestamp:r?r.toISOString():new Date().toISOString()}})}catch(n){console.error("Failed to create analytics event",n)}}async getAuthenticatedUser(){return this.session.hasRefreshCredentials()||this.session.hasRecoveryCredentials()?this.session.refresh():null}async getAccessToken(t){var o;return this.session.hasActiveToken()?((o=Ge.parse(this.session.token))==null?void 0:o.audience)!==this.appId?(await this.logout(),null):this.session.token:!(t!=null&&t.disableAutoRefresh)&&this.session.hasRefreshCredentials()?(await this.session.refresh(),this.session.token):null}async getServerConfig(){try{let t=await this.api.get(`/api/v1/apps/${this.appId}`);return{id:t.data.id,name:t.data.name,verificationKey:t.data.verification_key,logoUrl:t.data.logo_url||void 0,accentColor:t.data.accent_color||void 0,showWalletLoginFirst:t.data.show_wallet_login_first,allowlistConfig:{errorTitle:t.data.allowlist_config.error_title,errorDetail:t.data.allowlist_config.error_detail,errorCtaText:t.data.allowlist_config.cta_text,errorCtaLink:t.data.allowlist_config.cta_link},walletAuth:t.data.wallet_auth,emailAuth:t.data.email_auth,smsAuth:t.data.sms_auth,googleOAuth:t.data.google_oauth,twitterOAuth:t.data.twitter_oauth,discordOAuth:t.data.discord_oauth,githubOAuth:t.data.github_oauth,appleOAuth:t.data.apple_oauth,termsAndConditionsUrl:t.data.terms_and_conditions_url,privacyPolicyUrl:t.data.privacy_policy_url,createdAt:new Date(t.data.created_at*1e3),updatedAt:new Date(t.data.updated_at*1e3)}}catch(t){throw we(t)}}async setActiveWallet(t,o){if(!o.linkedAccounts.map(i=>i.type==="wallet"?i.address:null).includes(t))throw new C("Cannot set an unlinked address as active.");if(!await this.connectors.setActiveWallet(t))throw new C("Error setting the active wallet.");return po(o)}async forkSession(){return await this.session.forkSession()}};import"wicg-inert";import{disableBodyScroll as B2,clearAllBodyScrollLocks as F2}from"body-scroll-lock";import{useRef as G2,useCallback as H2}from"react";import{useEffect as zl}from"react";import V2 from"react-dom";import Kn from"styled-components";import{createContext as wd,useContext as Cd}from"react";var ln=wd({isLinking:!1,linkingHint:null,activeStatus:null,walletConnectionStatus:null,getAuthMeta:x,getAuthFlow:x,closePrivyModal:x,initLoginWithWallet:x,loginWithWallet:x,loginWithCode:x,initLoginWithEmail:x,initLoginWithSms:x,resendEmailCode:x,resendSmsCode:x,initLoginWithOAuth:x,loginWithOAuth:x,refreshUser:x,walletProxy:null}),L=()=>Cd(ln);import{createContext as Ed,useContext as xd}from"react";var cn=Ed({ready:!1,authenticated:!1,user:null,walletConnectors:null,login:x,linkEmail:x,linkPhone:x,linkWallet:x,linkGoogle:x,linkTwitter:x,linkDiscord:x,linkGithub:x,linkApple:x,logout:x,getAccessToken:x,getEthereumProvider:x,getEthersProvider:x,getWeb3jsProvider:x,unlinkEmail:x,unlinkPhone:x,unlinkWallet:x,unlinkGoogle:x,unlinkTwitter:x,unlinkDiscord:x,unlinkGithub:x,unlinkApple:x,setActiveWallet:x,forkSession:x,createWallet:x,signMessage:x,exportWallet:x}),I=()=>xd(cn);import mn from"styled-components";import mo,{css as ja}from"styled-components";import pn from"styled-components";import{Fragment as Sd,jsx as dn,jsxs as Ld}from"react/jsx-runtime";var Qo=({success:e,fail:t})=>Ld(Sd,{children:[dn(fo,{className:e?"success":t?"fail":""}),dn(_d,{className:e?"success":t?"fail":""})]}),fo=pn.span`
12
+ - https://privy.io`;this.proxyProvider=o,this.walletType=t,this.address=r,this.chain=null,this.connected=!1}async fetchAddress(){if(!this.address){let t=await this.proxyProvider.request({method:"eth_accounts"});Array.isArray(t)&&t.length>0&&(this.address=yc(t[0]))}return this.address}async fetchChainId(){if(!this.chain){let t=await this.proxyProvider.request({method:"eth_chainId"}),o=Number(t);this.chain=String(o)}return this.chain}async getConnectedWallet(){if(!this.walletType||!await this.isConnected())return null;let o=await this.fetchAddress(),r=await this.fetchChainId();return{address:o,chainId:r,chainType:"ethereum",walletClient:"unknown"}}async setActive(){return!0}async sign(t){return await this.connect({showPrompt:!1}),new vc(new ut(this.proxyProvider)).getSigner().signMessage(t)}prepareMessage(t,o,r){let n=window.location.host,i=window.location.origin,a="By signing, you are proving you own this wallet and logging in. This does not initiate a transaction or cost any fees.",s=new Date().toISOString();return this.createSiweMessage(t,o,n,i,s,r,a)}};var Ec=e=>{let t=`https://mainnet.infura.io/v3/${ko}`,o=1;return e.makeWeb3Provider(t,o)},Mo,Oo=class extends Ae{constructor(t,o){super("coinbase_wallet",t,o),Mo||(Mo=new wc({appName:"Privy",darkMode:!1,headlessMode:!1}))}async connect(t){return this.proxyProvider.setWalletProvider(Ec(Mo)),t.showPrompt&&await this.promptConnection(),await this.isConnected()?this.getConnectedWallet():null}disconnect(){Mo.disconnect()}async isConnected(){return await this.fetchAddress()!==null}get walletBranding(){return{name:"Coinbase Wallet",icon:Ee}}async promptConnection(){try{let t="",o=await this.proxyProvider.request({method:"eth_requestAccounts"});if(o.length>0&&(t=Cc(o[0])),!t||t==="")throw new H("Unable to retrieve address");this.connected=!0}catch(t){throw xe(t)}}};import{getAddress as Vr}from"@ethersproject/address";import{Web3Provider as Ii}from"@ethersproject/providers";import{isMobile as Sc}from"react-device-detect";import{jsx as pe,jsxs as xc}from"react/jsx-runtime";var _e=({style:e,...t})=>xc("svg",{width:"28",height:"28",viewBox:"0 0 28 28",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{height:"28px",width:"28px",...e},...t,children:[pe("rect",{width:"28",height:"28",rx:"3",fill:"white"}),pe("path",{d:"M23.0126 5L15.1958 10.7823L16.6533 7.37359L23.0126 5Z",fill:"#E17726",stroke:"#E17726",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),pe("path",{d:"M4.98753 5L12.7329 10.8299L11.3468 7.37954L4.98753 5ZM20.1987 18.4027L18.1166 21.5794L22.5723 22.8049L23.8454 18.4741L20.1987 18.4027ZM4.16064 18.4741L5.42775 22.8049L9.87153 21.5794L7.80133 18.4027L4.16064 18.4741Z",fill:"#E27625",stroke:"#E27625",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),pe("path",{d:"M9.6336 13.0369L8.39624 14.9049L12.7984 15.1071L12.6556 10.3659L9.6336 13.0429V13.0369ZM18.3665 13.0429L15.2969 10.3064L15.1958 15.1071L19.5979 14.9049L18.3665 13.0429ZM9.87155 21.5794L12.5426 20.2945L10.2463 18.5098L9.87155 21.5794ZM15.4635 20.2886L18.1166 21.5794L17.7597 18.5039L15.4635 20.2886Z",fill:"#E27625",stroke:"#E27625",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),pe("path",{d:"M18.1167 21.5794L15.4635 20.2944L15.6776 22.0196L15.6539 22.7513L18.1167 21.5794ZM9.87158 21.5794L12.3463 22.7513L12.3285 22.0196L12.5426 20.2944L9.87158 21.5794Z",fill:"#D5BFB2",stroke:"#D5BFB2",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),pe("path",{d:"M12.3878 17.3616L10.1868 16.7191L11.7454 16.0052L12.3938 17.3616H12.3878ZM15.6062 17.3616L16.2605 15.9993L17.8251 16.7131L15.6062 17.3675V17.3616Z",fill:"#233447",stroke:"#233447",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),pe("path",{d:"M9.87147 21.5794L10.2581 18.4027L7.80127 18.4741L9.87147 21.5794ZM17.7418 18.4027L18.1166 21.5794L20.1987 18.4741L17.7418 18.4027ZM19.6038 14.9048L15.2016 15.107L15.6061 17.3676L16.2605 15.9994L17.8251 16.7132L19.6038 14.9048ZM10.1868 16.7192L11.7454 16.0053L12.3938 17.3617L12.8042 15.1011L8.4021 14.9048L10.1868 16.7192Z",fill:"#CC6228",stroke:"#CC6228",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),pe("path",{d:"M8.4021 14.9048L10.2462 18.5038L10.1868 16.7192L8.4021 14.9048ZM17.8251 16.7192L17.7537 18.5038L19.5978 14.9048L17.8251 16.7192ZM12.8042 15.107L12.3878 17.3676L12.9113 20.0327L13.0303 16.5169L12.8042 15.107ZM15.1957 15.107L14.9815 16.511L15.0886 20.0327L15.6061 17.3617L15.1957 15.1011V15.107Z",fill:"#E27525",stroke:"#E27525",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),pe("path",{d:"M15.6062 17.3617L15.0887 20.0327L15.4635 20.2945L17.7538 18.5098L17.8252 16.7192L15.6062 17.3617ZM10.1869 16.7192L10.2463 18.5039L12.5426 20.2885L12.9114 20.0327L12.3939 17.3617L10.1809 16.7192H10.1869Z",fill:"#F5841F",stroke:"#F5841F",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),pe("path",{d:"M15.6598 22.7513L15.6776 22.0196L15.4754 21.853H12.5248L12.3285 22.0196L12.3463 22.7513L9.87158 21.5793L10.7401 22.2932L12.495 23.5008H15.4992L17.26 22.2873L18.1167 21.5793L15.6539 22.7513H15.6598Z",fill:"#C0AC9D",stroke:"#C0AC9D",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),pe("path",{d:"M15.4634 20.2885L15.0886 20.0327H12.9114L12.5425 20.2945L12.3284 22.0196L12.5247 21.8531H15.4753L15.6776 22.0196L15.4634 20.2945V20.2885Z",fill:"#161616",stroke:"#161616",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),pe("path",{d:"M23.3456 11.1571L24 7.97442L23.0125 5L15.4575 10.5919L18.3664 13.0369L22.4711 14.2326L23.3754 13.1797L22.9827 12.8941L23.6074 12.323L23.1315 11.9542L23.7561 11.4783L23.3397 11.1571H23.3456ZM4 7.96847L4.66627 11.1571L4.23795 11.4723L4.87448 11.9482L4.39857 12.323L5.01725 12.8941L4.62463 13.1797L5.52885 14.2326L9.63355 13.0428L12.5425 10.586L4.98751 5L4 7.96847Z",fill:"#763E1A",stroke:"#763E1A",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),pe("path",{d:"M22.4712 14.2325L18.3665 13.0428L19.6038 14.9048L17.7597 18.5038L20.1987 18.4741H23.8454L22.4712 14.2325ZM9.63358 13.0368L5.52888 14.2325L4.16064 18.4741H7.80728L10.2463 18.5038L8.40217 14.9048L9.63953 13.0368H9.63358ZM15.1957 15.107L15.4634 10.5859L16.6532 7.37354H11.3468L12.5366 10.5859L12.8043 15.107L12.9054 16.5229V20.0327H15.0887L15.1006 16.5229L15.1957 15.107Z",fill:"#F5841F",stroke:"#F5841F",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"})]});import{isPossiblePhoneNumber as _c}from"libphonenumber-js/min";var ki=e=>!!String(e).toLowerCase().match(/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/),Ti=e=>_c(String(e),"US"),Wi=(e,t)=>{let o=e.slice(0),r=[];for(;o.length;)r.push(o.splice(0,t));return r},ft=(e,t=3,o=4)=>{if(!e)return"";let r=2,n=3;if(t+o+r+n>=e.length)return e;let i=e.slice(0,r+t),a=e.slice(e.length-o,e.length);return`${i}...${a}`},Gr=e=>new Promise(t=>setTimeout(t,e)),Ri=(e,t={})=>{let o=t.delayMs||40,r=t.maxAttempts||1e3;return new Promise(async(n,i)=>{let a=!1,s=0;for(;!a&&s<r;)e().then(()=>{a=!0,n()},(...l)=>{a=!0,i(...l)}),s+=1,await Gr(o);a||i(new Error("Exceeded max attempts before resolving function"))})},No=(e,t,o={})=>{let r=new URL(t,e);for(let[n,i]of Object.entries(o))r.searchParams.set(n,i);return r.href},Pc=(e,t)=>e.toLowerCase()===t.toLowerCase(),Hr=(e,t)=>{for(let o of e)if(Pc(o,t))return!0;return!1},Do=e=>e.replace(/([\u2700-\u27BF]|[\uE000-\uF8FF]|\uD83C[\uDC00-\uDFFF]|\uD83D[\uDC00-\uDFFF]|[\u2011-\u26FF]|\uD83E[\uDD10-\uDDFF])/g,"");var Mi=async()=>{let t=await new Ii(window.ethereum).listAccounts();return t.length===0?null:Vr(t[0])},Uo=class extends Ae{constructor(t,o){var r;super("metamask",t,o),this.proxyProvider.setWalletProvider(window.ethereum),(r=window.ethereum.providers)==null||r.forEach(n=>{n.isMetaMask&&this.proxyProvider.setWalletProvider(n)}),this.subscribeListeners()}async connect(t){return t.showPrompt&&await this.promptConnection(),await this.isConnected()?this.getConnectedWallet():null}async isConnected(){let t=await this.connectedMetamaskAddress();return this.address===t}async connectedMetamaskAddress(){let o=await new Ii(this.proxyProvider).listAccounts();return o.length===0?null:Vr(o[0])}get walletBranding(){return{name:"MetaMask",icon:_e}}disconnect(){console.warn("Metamask does not support programmetic disconnect.")}async promptConnection(){try{let t="";if(!Sc&&(await this.proxyProvider.request({method:"wallet_requestPermissions",params:[{eth_accounts:{}}]}),this.address&&!await this.isConnected()))throw new H("Selected the wrong wallet in MetaMask");let o=await this.proxyProvider.request({method:"eth_requestAccounts"});if(o.length>0&&(t=Vr(o[0])),!t||t==="")throw new H("Unable to retrieve address");if(this.address&&t!==this.address)return;this.connected=!0,this.address=t}catch(t){throw xe(t)}}async setActive(){if(await this.connectedMetamaskAddress()===this.address)return this.connected=!0,!0;for(;!await this.isConnected();)await Gr(200);return this.connected=!0,!0}subscribeListeners(){this.proxyProvider.on("accountsChanged",t=>{var o;if(t.length>0){let r=t[0];this.connected=((o=this.address)==null?void 0:o.toLowerCase())===(r==null?void 0:r.toLowerCase())}else this.connected=!1}),this.proxyProvider.on("disconnect",()=>{this.connected=!1})}};import{getAddress as Oi}from"@ethersproject/address";import{Web3Provider as Lc}from"@ethersproject/providers";import{jsx as Rt,jsxs as Bo}from"react/jsx-runtime";var Ye=({style:e,...t})=>Bo("svg",{width:"28",height:"28",viewBox:"0 0 28 28",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{height:"28px",width:"28px",...e},...t,children:[Rt("rect",{width:"28",height:"28",rx:"6",fill:"url(#paint0_linear_1765_9937)"}),Rt("path",{d:"M24.0223 14.1704H21.5542C21.5542 9.14083 17.4627 5.06372 12.4151 5.06372C7.43008 5.06372 3.37717 9.04101 3.27798 13.9845C3.17536 19.0945 7.98653 23.5318 13.1154 23.5318H13.7605C18.2822 23.5318 24.3426 20.0047 25.2895 15.7072C25.4643 14.9151 24.8364 14.1704 24.0223 14.1704ZM8.74752 14.3945C8.74752 15.0671 8.19544 15.6172 7.52045 15.6172C6.84545 15.6172 6.29341 15.0669 6.29341 14.3945V12.4165C6.29341 11.7439 6.84545 11.1938 7.52045 11.1938C8.19544 11.1938 8.74752 11.7439 8.74752 12.4165V14.3945ZM13.0083 14.3945C13.0083 15.0671 12.4563 15.6172 11.7813 15.6172C11.1063 15.6172 10.5543 15.0669 10.5543 14.3945V12.4165C10.5543 11.7439 11.1065 11.1938 11.7813 11.1938C12.4563 11.1938 13.0083 11.7439 13.0083 12.4165V14.3945Z",fill:"url(#paint1_linear_1765_9937)"}),Bo("defs",{children:[Bo("linearGradient",{id:"paint0_linear_1765_9937",x1:"14",y1:"0",x2:"14",y2:"28",gradientUnits:"userSpaceOnUse",children:[Rt("stop",{stopColor:"#534BB1"}),Rt("stop",{offset:"1",stopColor:"#551BF9"})]}),Bo("linearGradient",{id:"paint1_linear_1765_9937",x1:"14.2976",y1:"5.06372",x2:"14.2976",y2:"23.5318",gradientUnits:"userSpaceOnUse",children:[Rt("stop",{stopColor:"white"}),Rt("stop",{offset:"1",stopColor:"white",stopOpacity:"0.82"})]})]})]});var Fo=class extends Ae{constructor(t,o){var r;if(super("phantom",t,o),"phantom"in window){let n=window;this.proxyProvider.setWalletProvider(n.phantom.ethereum),(r=n.phantom.ethereum.providers)==null||r.forEach(i=>{i.isPhantom&&this.proxyProvider.setWalletProvider(i)})}this.subscribeListeners()}async connect(t){return t.showPrompt&&await this.promptConnection(),await this.isConnected()?this.getConnectedWallet():null}async isConnected(){let t=await this.connectedPhantomAddress();return this.address===t}async connectedPhantomAddress(){let o=await new Lc(this.proxyProvider).listAccounts();return o.length===0?null:Oi(o[0])}get walletBranding(){return{name:"Phantom",icon:Ye}}disconnect(){console.warn("Phantom does not support programmetic disconnect.")}async promptConnection(){try{let t="";if(this.address&&await this.isConnected())throw new H("Selected the wrong wallet in Phantom");let o=await this.proxyProvider.request({method:"eth_requestAccounts"});if(o.length>0&&(t=Oi(o[0])),!t||t==="")throw new H("Unable to retrieve address");this.connected=!0,this.address=t}catch(t){throw xe(t)}}subscribeListeners(){this.proxyProvider.on("accountsChanged",t=>{var o;if(t.length>0){let r=t[0];this.connected=((o=this.address)==null?void 0:o.toLowerCase())===(r==null?void 0:r.toLowerCase())}else this.connected=!0}),this.proxyProvider.on("disconnect",()=>{this.connected=!1})}};import gd from"@walletconnect/web3-provider";import{isAndroid as Fa}from"react-device-detect";import{createContext as kc,useContext as Tc,useEffect as jr,useState as Di}from"react";import{jsx as Ac}from"react/jsx-runtime";function Ni(e){return Ac("link",{rel:"prefetch",href:e.src})}import{jsx as Wc,jsxs as Rc}from"react/jsx-runtime";var Ue="LANDING",Ui=kc({ready:!1,app:null,options:{email:!0,sms:!1,wallet:!0,google:!1,twitter:!1,discord:!1,github:!1,apple:!1},currentScreen:Ue,lastScreen:Ue,navigate:x,navigateBack:x,setModalData:x}),Bi=e=>{var h;let t=e.appConfig,o=e.authenticated,r=e.visible,[n,i]=Di(e.initialScreen||Ue),[a,s]=Di(e.initialScreen||Ue);jr(()=>{o||i(Ue)},[o]),jr(()=>{r||(s(Ue),i(Ue))},[r]),jr(()=>{e.initialScreen&&n===Ue&&(i(e.initialScreen),s(e.initialScreen))},[e.initialScreen]);let l=e.initialScreen&&n===Ue?e.initialScreen:n,c={ready:!!(t!=null&&t.id),app:t,options:e.options,data:e.data,setModalData:e.setModalData,currentScreen:l,lastScreen:a,navigate:m=>{s(n),i(m)},navigateBack:()=>{i(a)}};return Rc(Ui.Provider,{value:c,children:[t&&((h=t.appearance)==null?void 0:h.logo)&&Wc(Ni,{src:t.appearance.logo}),e.children]})},w=()=>Tc(Ui);import{jsx as It,jsxs as Ic}from"react/jsx-runtime";var Mt=({style:e,...t})=>{let{app:o}=w();return Ic("svg",{width:"28",height:"28",viewBox:"0 0 28 28",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{height:"28px",width:"28px",...e},...t,children:[It("rect",{width:"28",height:"28",rx:"3",fill:(o==null?void 0:o.appearance.palette.colorScheme)==="dark"?"#3396ff":"#141414"}),It("g",{clipPath:"url(#clip0_1765_9946)",children:It("path",{d:"M8.09448 10.3941C11.3558 7.20196 16.6442 7.20196 19.9055 10.3941L20.2982 10.7782C20.3369 10.8157 20.3677 10.8606 20.3887 10.9102C20.4097 10.9599 20.4206 11.0132 20.4206 11.0671C20.4206 11.121 20.4097 11.1744 20.3887 11.224C20.3677 11.2737 20.3369 11.3186 20.2982 11.3561L18.9554 12.6702C18.9158 12.7086 18.8628 12.7301 18.8077 12.7301C18.7526 12.7301 18.6996 12.7086 18.66 12.6702L18.1198 12.1415C15.8448 9.91503 12.1557 9.91503 9.88015 12.1415L9.30167 12.7075C9.26207 12.7459 9.20909 12.7673 9.15395 12.7673C9.0988 12.7673 9.04582 12.7459 9.00622 12.7075L7.66346 11.3934C7.62475 11.3559 7.59397 11.3109 7.57295 11.2613C7.55193 11.2117 7.5411 11.1583 7.5411 11.1044C7.5411 11.0505 7.55193 10.9971 7.57295 10.9475C7.59397 10.8979 7.62475 10.8529 7.66346 10.8154L8.09448 10.3941ZM22.6829 13.1115L23.8776 14.2814C23.9163 14.319 23.9471 14.3639 23.9681 14.4135C23.9892 14.4632 24 14.5165 24 14.5704C24 14.6243 23.9892 14.6777 23.9681 14.7273C23.9471 14.777 23.9163 14.8219 23.8776 14.8594L18.4893 20.1332C18.4102 20.2101 18.3042 20.2531 18.1938 20.2531C18.0835 20.2531 17.9775 20.2101 17.8984 20.1332L14.0743 16.3901C14.0545 16.3708 14.0279 16.36 14.0003 16.36C13.9726 16.36 13.9461 16.3708 13.9263 16.3901L10.1021 20.1332C10.023 20.2101 9.91703 20.2531 9.8067 20.2531C9.69636 20.2531 9.59038 20.2101 9.51124 20.1332L4.12236 14.8594C4.08365 14.8219 4.05287 14.777 4.03185 14.7273C4.01083 14.6777 4 14.6243 4 14.5704C4 14.5165 4.01083 14.4632 4.03185 14.4135C4.05287 14.3639 4.08365 14.319 4.12236 14.2814L5.31767 13.1115C5.39678 13.0348 5.50265 12.9919 5.61285 12.9919C5.72305 12.9919 5.82892 13.0348 5.90803 13.1115L9.73216 16.8546C9.75194 16.874 9.7785 16.8848 9.80616 16.8848C9.83381 16.8848 9.86037 16.874 9.88015 16.8546L13.7043 13.1115C13.7834 13.0346 13.8894 12.9916 13.9997 12.9916C14.1101 12.9916 14.216 13.0346 14.2952 13.1115L18.1198 16.8546C18.1396 16.874 18.1662 16.8848 18.1938 16.8848C18.2215 16.8848 18.2481 16.874 18.2678 16.8546L22.092 13.1115C22.1711 13.0346 22.2771 12.9916 22.3874 12.9916C22.4977 12.9916 22.6037 13.0346 22.6829 13.1115Z",fill:"white"})}),It("defs",{children:It("clipPath",{id:"clip0_1765_9946",children:It("rect",{width:"20",height:"12.2531",fill:"white",transform:"translate(4 8)"})})})]})};var Qr=lc(Ma());import{isAndroid as en}from"react-device-detect";var qo="c57ca95b47569778a828d19178114f4db188b89b763c899ba0be274e97267d96",tn=e=>{let t=Do(e).trim().toLowerCase();for(let[o,r]of Object.entries(ao))if(r.name.toLowerCase()===t)return{id:o,entry:r}},ao={"1ae92b26df02f0abca6304df07debccd18262fdf5fe82daa81593582dac9a369":{name:"Rainbow",image_id:"7a33d7f1-3d12-4b5c-f3ee-5cd83cb1b500",mobile:{universal:"https://rnbwapp.com"}},"4622a2b2d6af1c9844944291e5e7351a6aa24cd7b23099efac1b2fd875da31a0":{name:"Trust Wallet",image_id:"0528ee7e-16d1-4089-21e3-bbfb41933100",mobile:{universal:"https://link.trustwallet.com"}},c57ca95b47569778a828d19178114f4db188b89b763c899ba0be274e97267d96:{name:"MetaMask",image_id:"5195e9db-94d8-4579-6f11-ef553be95100",mobile:{native:"metamask:"}},"225affb176778569276e484e1b92637ad061b01e13a048b35a9d280c3b58970f":{name:"Safe",image_id:"a1cb2777-f8f9-49b0-53fd-443d20ee0b00",mobile:{universal:"https://gnosis-safe.io/"}},"74f8092562bd79675e276d8b2062a83601a4106d30202f2d509195e30e19673d":{name:"Spot",image_id:"1bf33a89-b049-4a1c-d1f6-4dd7419ee400",mobile:{universal:"https://spot.so"}},ecc4036f814562b41a5268adc86270fba1365471402006302e70169465b7ac18:{name:"Zerion",image_id:"f216b371-96cf-409a-9d88-296392b85800",mobile:{universal:"https://wallet.zerion.io"}},"8308656f4548bb81b3508afe355cfbb7f0cb6253d1cc7f998080601f838ecee3":{name:"Unstoppable Domains",image_id:"4725dda0-4471-4d0f-7adf-6bbe8b929c00",mobile:{universal:"https://unstoppabledomains.com/mobile"}},"38f5d18bd8522c244bdd70cb4a68e0e718865155811c043f052fb9f1c51de662":{name:"BitKeep",image_id:"3f7075d0-4ab7-4db5-404d-3e4c05e6fe00",mobile:{universal:"https://bkapp.vip"}},afbd95522f4041c71dd4f1a065f971fd32372865b416f95a0b1db759ae33f2a7:{name:"Omni",image_id:"2cd67b4c-282b-4809-e7c0-a88cd5116f00",mobile:{universal:"https://links.omni.app"}},ccb714920401f7d008dbe11281ae70e3a4bfb621763b187b9e4a3ce1ab8faa3b:{name:"BitPay",image_id:"97d4429f-eaf0-4302-87f5-9d26d46fe700",mobile:{universal:"https://link.bitpay.com/wallet"}},"7674bb4e353bf52886768a3ddc2a4562ce2f4191c80831291218ebd90f5f5e26":{name:"MathWallet",image_id:"26a8f588-3231-4411-60ce-5bb6b805a700",mobile:{universal:"https://www.mathwallet.org"}},"2863183c3299d820fb9a4cb8aab4a34f50380c9992e8be871fd60a62e8d36481":{name:"1inch Wallet",image_id:"dce1ee99-403f-44a9-9f94-20de30616500",mobile:{universal:"https://wallet.1inch.io"}},efba9ae0a9e0fdd9e3e055ddf3c8e75f294babb8aea3499456eff27f771fda61:{name:"Eidoo",image_id:"ef5b8bcf-00d5-457d-e161-9911e4788700",mobile:{universal:"https://eidoo.io/crypto-wallet"}},b021913ba555948a1c81eb3d89b372be46f8354e926679de648e4fa2938bed3e:{name:"Coin98",image_id:"dee547be-936a-4c92-9e3f-7a2350a62e00",mobile:{universal:"https://coin98.com"}},"7e90b95230bc462869bbb59f952273d89841e1c76bcc5319898e08c9f34bd4cd":{name:"Unstoppable Wallet",image_id:"5c38b22c-adb9-4899-3252-6e3d71458500",mobile:{universal:"https://unstoppable.money"}},"138f51c8d00ac7b9ac9d8dc75344d096a7dfe370a568aa167eabc0a21830ed98":{name:"AlphaWallet",image_id:"5b1cddfb-056e-4e78-029a-54de5d70c500",mobile:{universal:"https://aw.app"}},"468b4ab3582757233017ec10735863489104515ab160c053074905a1eecb7e63":{name:"D'CENT Wallet",image_id:"1efb49ec-2bab-4fa1-f2f2-4392c64ed000",mobile:{universal:"https://link.dcentwallet.com"}},"29f4a70ad5993f3f73ae8119f0e78ecbae51deec2a021a770225c644935c0f09":{name:"ZelCore",image_id:"97d45a92-a1f0-46da-95a6-ad5db99f3500",mobile:{universal:"https://link.zel.network"}},"8240fb8a7b117aed27f04aa8870c714eeb910f7c1b16c9b868e793c1836335b8":{name:"Nash",image_id:"12f981b1-bb0a-4115-009f-317255979600",mobile:{universal:"https://nash.io/walletconnect"}},"15d7610042217f691385d20e640869dc7273e991b04e8f476417cdc5ec856955":{name:"Coinomi",image_id:"3b446d16-a908-40c8-5835-9a6efe90dd00",mobile:{universal:"https://coinomi.page.link"}},a395dbfc92b5519cbd1cc6937a4e79830187daaeb2c6fcdf9b9cce4255f2dcd5:{name:"CYBAVO Wallet",image_id:"3117d3ce-b973-4cfd-8fb5-f5d72ed3c200",mobile:{universal:"https://cdn.cybavo.com"}},"0b415a746fb9ee99cce155c2ceca0c6f6061b1dbca2d722b3ba16381d0562150":{name:"SafePal",image_id:"14096232-7483-425b-f9a9-658f94fe7100",mobile:{universal:"https://link.safepal.io"}},"881946407ff22a32ec0e42b2cd31ea5dab52242dc3648d777b511a0440d59efb":{name:"Bridge Wallet",image_id:"989d504f-93db-4ca6-c00a-9d1faf177d00",mobile:{universal:"https://bridge.mtpelerin.com"}},"3b0e861b3a57e98325b82ab687fe0a712c81366d521ceec49eebc35591f1b5d1":{name:"SparkPoint",image_id:"34c4f901-70de-4507-e7a0-bc7887843000",mobile:{universal:"https://sparkpoint.io"}},"38ee551a01e3c5af9d8a9715768861e4d642e2381a62245083f96672b5646c6b":{name:"PEAKDEFI Wallet",image_id:"744a3fbe-4261-4148-133e-49c5b58cb400",mobile:{universal:"https://peakdefi.com/download"}},f2436c67184f158d1beda5df53298ee84abfc367581e4505134b5bcf5f46697d:{name:"Crypto.com | DeFi Wallet",image_id:"7c5ff577-a68d-49c5-02cd-3d83637b0b00",mobile:{universal:"https://wallet.crypto.com"}},"15d1d97de89526a3c259a235304a7c510c40cda3331f0f8433da860ecc528bef":{name:"Ellipal",image_id:"0a805e10-bfc0-4d02-d9c1-8cec88f0dc00",mobile:{universal:"https://www.ellipal.com/"}},"19ad8334f0f034f4176a95722b5746b539b47b37ce17a5abde4755956d05d44c":{name:"Aktionariat",image_id:"6d18e8ea-b536-4038-c5bf-94a499d5a400",mobile:{universal:"https://app.aktionariat.com"}},"95501c1a07c8eb575cb28c753ab9044259546ebcefcd3645461086e49b671f5c":{name:"Talken Wallet",image_id:"1afb5a3a-2da3-40ce-baf9-b416e7510600",mobile:{universal:"https://talken.io"}},"2ed796df33fdbde6a3ea6a47d3636b8341fe285038d844c7a78267b465b27028":{name:"KyberSwap",image_id:"3abd1720-260e-495a-2e31-3d0b349e0d00",mobile:{universal:"https://kyberswapnew.app.link"}},"4e6af4201658b52daad51a279bb363a08b3927e74c0f27abeca3b0110bddf0a9":{name:"Tongue Wallet",image_id:"20bc4fdb-b9e6-429a-8cba-c233b3273000",mobile:{universal:"https://www.tongue.fi"}},b13fcc7e3500a4580c9a5341ed64c49c17d7f864497881048eb160c089be5346:{name:"RWallet",image_id:"a883229c-26cb-4c19-9b34-1f0ed4012a00",mobile:{universal:"https://www.rwallet.app"}},"13c6a06b733edf51784f669f508826b2ab0dc80122a8b5d25d84b17d94bbdf70":{name:"PlasmaPay",image_id:"466c8fd0-fcec-4621-b94f-e91ce1439f00",mobile:{universal:"https://plasmapay.com/"}},"0aafbedfb8eb56dae59ecc37c9a5388509cf9c082635e3f752581cc7128a17c0":{name:"O3Wallet",image_id:"e1c7c6af-c731-463e-55f0-5e686e9f6200",mobile:{universal:"https://o3.network"}},"761d3d98fd77bdb06e6c90092ee7071c6001e93401d05dcf2b007c1a6c9c222c":{name:"HashKey Me",image_id:"72734fac-9500-4c2c-81ba-678f7fc32700",mobile:{universal:"https://me.hashkey.com"}},ffa139f74d1c8ebbb748cf0166f92d886e8c81b521c2193aa940e00626f4e215:{name:"Defiant",image_id:"026462e7-09a3-47f6-6b46-49df18133b00",mobile:{universal:"https://defiantapp.tech"}},"717911f4db0c5eda0e02e76ed179b7940ba1eefffdfb3c9e6540696226860da0":{name:"Elastos Essentials",image_id:"04a6bfed-d80e-4f7b-0516-261f86aa4000",mobile:{universal:"https://essentials.elastos.net"}},"9d6c614d1995741d5313f1f3dbf1f66dcba694de782087d13b8721822502692f":{name:"Stasis",image_id:"7ae753bc-a754-450c-2d90-2c5521734400",mobile:{universal:"https://app.stasis.net"}},a6ffb821a3c32d36fc9d29e29c2ff79a0cd1db0bca453714777846ddf3fdff76:{name:"JulWallet",image_id:"cabd50de-22fa-487b-ce68-2c63de8bb800",mobile:{universal:"https://justliquidity.org"}},"76745388a50e6fea982c4dee2a3ad61a8aa417668be870754689caa8a7506c93":{name:"Tangem",image_id:"8a5b6e94-e378-458d-bf2e-017cc7958e00",mobile:{universal:"https://app.tangem.com"}},"6464873279d46030c0b6b005b33da6be5ed57a752be3ef1f857dc10eaf8028aa":{name:"SecuX",image_id:"d46a33d6-92a1-4dfd-38d4-779815fb5c00",mobile:{universal:"https://wsweb.secuxtech.com"}},"2c81da3add65899baeac53758a07e652eea46dbb5195b8074772c62a77bbf568":{name:"Ambire Wallet",image_id:"c39b3a16-1a38-4588-f089-cb7aeb584700",mobile:{universal:"https://mobile.ambire.com"}},b823fb0d7228ef8e3c0bc9607df9ed79dae2ab3a2811d33f22ade4f573c18232:{name:"Slavi Wallet",image_id:"282ce060-0beb-4236-b7b0-1b34cc6c8f00",mobile:{universal:"https://www.slaviwallet.io"}},dccbd717df77b395445cc6080e01fffada9d8b92dacfda312a26c70c2e9af673:{name:"Nufinetes",image_id:"70080bd7-9858-4720-cf74-8f74cd74cb00",mobile:{universal:"https://apple.vimworld.org"}},c6f3d04a4e1a51e7d2045f347a5ebdab30fc600950a740fca21f0c92e230ee05:{name:"Arianee Wallet",image_id:"ace938a9-c906-4b9e-f683-b85f1ab72800",mobile:{universal:"https://arianee.net"}},c482dfe368d4f004479977fd88e80dc9e81107f3245d706811581a6dfe69c534:{name:"NOW Wallet",image_id:"b6ee4efc-f53e-475b-927b-a7ded6211700",mobile:{universal:"https://walletnow.app.link"}},"14e7176536cb3706e221daaa3cfd7b88b7da8c7dfb64d1d241044164802c6bdd":{name:"Blocto",image_id:"374258d3-c749-4f37-7815-77e61f798c00",mobile:{universal:"https://blocto.app"}},"0e4915107da5b3408b38e248f7a710f4529d54cd30e9d12ff0eb886d45c18e92":{name:"Arculus Wallet",image_id:"f78dab27-7165-4a3d-fdb1-fcff06c0a700",mobile:{universal:"https://gw.arculus.co/app"}},a2c031fccd13a6c16d7745c303507f78ae4da53fed064542804e9657d73e8b5c:{name:"Backpack",image_id:"e46f132d-6e05-4d51-8720-43727446e600",mobile:{universal:"https://jxndao.com"}},f593f4eb9755ff047681a37ebc46706e0e915cf1c2fe0102f5ae47c9f6aa4082:{name:"Autonomy: Digital Art Wallet",image_id:"2ee7c9db-9a86-4cd6-0d32-5053b4636100",mobile:{universal:"https://autonomy.io/apps/wc"}},"5859076ade608fbc4e9d3fe2f95e8527de80f8451ecbb1dced54ca84deae0dd6":{name:"Coingrig",image_id:"18e38e41-a387-4402-ca31-6d2d5eb91100",mobile:{universal:"https://link.coingrig.com"}},bb88a220ed4dcd3d717ec19b6ac00a672edf92e97ef7c243d35e25ff56a07301:{name:"bobablocks",image_id:"aff8973b-e093-45b5-4858-c01dd043bc00",mobile:{universal:"https://app.bobablocks.io"}},cbe13eb482c76f1fa401ff4c84d9acd0b8bc9af311ca0620a0b192fb28359b4e:{name:"Plasma Wallet",image_id:"c268e78d-ffb0-4c8b-5cad-04c3add48500",mobile:{universal:"https://plasma-wallet.com"}},b83a346877b71c02b8531f53485ce12bc00033eabcc1213ca3329cbc744813a5:{name:"Holdstation Wallet",image_id:"e6dba126-85af-4194-84f6-dd16632c3c00",mobile:{universal:"https://apps.apple.com/us/app/holdstation-web3-wallet/id6444925618"}},a92d512c649e87a5acba5885ac03f62662cff1f647c20a63833eb45a71a6f877:{name:"HUMBL WALLET",image_id:"1ac55ba2-aa98-4ed0-59b3-b3155dea4200",mobile:{universal:"https://wallet.search3.com"}},"226d8a12a2e6e5c4185fa9c24313824bfb144c2a180325bddbd121844f497afa":{name:"ISLAMIwallet",image_id:"8d723c78-28ad-4610-901f-ea391d7e8d00",mobile:{universal:"https://islamiwallet.com"}},"11c5487e4d8dd8bf32d4c92222363df8296a27307b2531be1e25770365392ecb":{name:"Card Wallet",image_id:"325428cf-c212-4d83-a434-7f48902d2c00",mobile:{universal:"https://wallet.cardstack.com"}},f5b4eeb6015d66be3f5940a895cbaa49ef3439e518cd771270e6b553b48f31d2:{name:"MEW wallet",image_id:"e2024511-2c9b-46d7-3111-52df3d241700",mobile:{universal:"https://mewwallet.com"}},"576c90ceaea34f29ff0104837cf2b2e23d201be43be1433feeb18d375430e1fd":{name:"PLTwallet",image_id:"a5d9dd15-8cef-42de-8bed-09e01a8b0200",mobile:{universal:"https://pltwallet.io/"}},"94f785c0c8fb8c4f38cd9cd704416430bcaa2137f27e1468782d624bcd155a43":{name:"Avacus",image_id:"a7106965-91cc-4a73-4688-c5c72ae0ed00",mobile:{universal:"https://avacus.app.link"}},bc949c5d968ae81310268bf9193f9c9fb7bb4e1283e1284af8f2bd4992535fd6:{name:"Argent",image_id:"215158d2-614b-49c9-410f-77aa661c3900",mobile:{universal:"https://www.argent.xyz/app"}},"664b505fea4c2117b8a55c054ef209664e0a68ddaafd7534df739f97a293fa1d":{name:"Hippo Wallet",image_id:"f9570968-45f7-47c1-3189-98cf60e25c00",mobile:{universal:"https://hippowallet.io"}},"0c5bba82e70a2b62405871af809020a077d110d765c0798eb660ad5d3131b328":{name:"Edge Wallet",image_id:"f601bc29-4298-422f-dbf7-34dac2884f00",mobile:{universal:"https://deep.edge.app/wc"}},"792fbacfe787d67595dd4eb38ac308e14b3bbc810393db56f477a92e5ac8764b":{name:"Assure",image_id:"64db7104-c8b7-44ea-e102-11ce87124200",mobile:{universal:"https://www.assure.pro/Official"}},"7ef337ff00714f179d38b8142398efa2ab902a53430e99ebce02892053d7a310":{name:"EASY",image_id:"62feb41a-be1f-4b1c-e089-27f97c0e8d00",mobile:{universal:"https://link.easy.me"}},"7e94e75c90964a69ea375b92214f50c4223dfbfa4913a3733b615444b322f687":{name:"CoinStats",image_id:"f989ab84-650b-4ad5-c342-77f3334f1b00",mobile:{universal:"https://coinstats.app"}},"107bb20463699c4e614d3a2fb7b961e66f48774cb8f6d6c1aee789853280972c":{name:"Bitcoin.com Wallet",image_id:"0d7938e1-9b3b-4d8b-177b-98188c4cf400",mobile:{universal:"https://wallet.bitcoin.com/"}},"1986e7c874bb906f057d5d64a4806c004e021689536e5228c74d64a6058e8bac":{name:"Defiant",image_id:"11a96ca4-3592-42ae-c781-2b7265ec9200",mobile:{universal:"https://defiantapp.tech/"}},"19418ecfd44963883e4d6abca1adeb2036f3b5ffb9bee0ec61f267a9641f878b":{name:"KryptoGO Wallet",image_id:"3ccbd966-97e8-45a0-1ceb-6141a8978e00",mobile:{universal:"https://kryptogo.page.link"}},"37a686ab6223cd42e2886ed6e5477fce100a4fb565dcd57ed4f81f7c12e93053":{name:"Bifrost Wallet",image_id:"86be07e2-6652-4fd1-5f33-651682c95400",mobile:{universal:"https://app.bifrostwallet.com"}},"4f5de5333fed2ccf47c690579aba3b9128aea78175339ff51ef61704bde7502a":{name:"Okse Wallet",image_id:"8a1b36d5-7f40-403a-7000-5d30f9181200",mobile:{universal:"https://okse.io/"}},"9034d54985807aaf3d7780f50f155f954daa468fb58d7b14b216fc79d68bbd14":{name:"Qubic Wallet",image_id:"2e9ef302-daae-4807-555f-d4986b0b6700",mobile:{universal:"https://wallet.qubic.app"}},c39d8ee468e50474fdf3a0bd6b981be404d4671e2702a3d633aae95bcbaa032a:{name:"XFUN Wallet",image_id:"a665f8f3-09ef-4d17-2bd0-26dca4518400",mobile:{universal:"https://xfun.io"}},e9ff15be73584489ca4a66f64d32c4537711797e30b6660dbcb71ea72a42b1f4:{name:"Exodus",image_id:"4c16cad4-cac9-4643-6726-c696efaf5200",mobile:{universal:"https://exodus.com/m"}},"114efdbef4ce710081c1507f3dbc51f439c96a342cf33397799cd1c84b01a8c5":{name:"S-ONE Wallet",image_id:"b3562637-a407-4035-6fa5-a70ff2050400",mobile:{universal:"https://sonewallet.app"}},"5b8e33346dfb2a532748c247876db8d596734da8977905a27b947ba1e2cf465b":{name:"PREMA Wallet",image_id:"6487869b-1165-4f30-aa3a-115665be8300",mobile:{universal:"https://premanft.com"}},"2cca8c1b0bea04ba37dee4017991d348cdb7b826804ab2bd31073254f345b715":{name:"Bee Wallet",image_id:"f90bc33f-f085-40cf-7538-fae5ae84f900",mobile:{universal:"https://beewallet.app/wc"}},e3787ea98d014ca77e2c3794db97c02ef8bcb39347705f5e79502a55434a1ecf:{name:"TK Finance",image_id:"c4066f68-2247-49bf-ac8a-a677bfa81800",mobile:{universal:"https://trustkeys.network"}},"159b0423ce9075d5662f588f805931d989627affab3e63e4dd7ebc62b9c6738c":{name:"Oxalus Wallet",image_id:"a6e22fcb-6b69-45d2-b52d-a4a347a21e00",mobile:{universal:"https://oxalus.page.link/?apn=io.oxalus.wallet&isi=1620111723&ibi=io.oxalus.wallet&link=https://deeplink.oxalus.io"}},fbea6f68df4e6ce163c144df86da89f24cb244f19b53903e26aea9ab7de6393c:{name:"Klever Wallet",image_id:"8f5bbad8-6a14-4b2c-5343-cc1fca6e4d00",mobile:{universal:"https://klever.page.link"}},"1aedbcfc1f31aade56ca34c38b0a1607b41cccfa3de93c946ef3b4ba2dfab11c":{name:"OneKey",image_id:"12bebb3f-8030-4892-8452-c60a6bac1500",mobile:{universal:"https://app.onekey.so/wc/connect"}},"14e5d957c6eb62d3ee8fc6239703ac2d537d7e3552154836ca0beef775f630bc":{name:"Pitaka",image_id:"691c0716-5213-4b99-e837-079268313800",mobile:{universal:"https://app.pitaka.io"}},"031f0187049b7f96c6f039d1c9c8138ff7a17fd75d38b34350c7182232cc29aa":{name:"Obvious",image_id:"40945cea-9cd2-4acc-5799-ca7fb31f4700",mobile:{universal:"https://wallet.obvious.technology"}},c40b9bcef32fa6ce4e0df98be1420628bbc4957646f742380fe618fcb4ab74f1:{name:"RiceWallet",image_id:"df94578e-19be-4f00-258f-2470343e7b00",mobile:{universal:"https://ricewallet.io"}},b265ce38b94d602957a0946673c59a99a15d69adda4317544fec7298ea2d1387:{name:"SafeMoon",image_id:"ecc31a8e-0ee9-49db-cc59-0876b7c35600",mobile:{universal:"https://safemoon.net/"}},dc5415b6ea8114db518ae91195b027d690a11a1d2bfdd1a904e93c5cb746380e:{name:"SimpleHold",image_id:"a9f1ba96-b658-4d13-f71f-226b6389f000",mobile:{universal:"https://simplehold.io"}},"41f20106359ff63cf732adf1f7dc1a157176c9b02fd266b50da6dcc1e9b86071":{name:"Bitizen",image_id:"75dd1471-77e9-4811-ce57-ec8fc980ec00",mobile:{universal:"https://bitizen.org/wallet"}}},Oa=(e,t="md")=>`https://registry.walletconnect.com/v2/logo/${t}/${e}`;function Na(e){return{name:e.name||"",universalLink:e.mobile.universal||"",deepLink:e.mobile.native||""}}function Da(e,t){let o=encodeURIComponent(e);return t.universalLink?`${t.universalLink}/wc?uri=${o}`:t.deepLink?`${t.deepLink}${t.deepLink.endsWith(":")?"//":"/"}wc?uri=${e}`:""}function Ua(e,t){return en?e:Da(e,Na(ao[t]))}var Zo=(e,t)=>{if(!e)return;if(en){(0,Qr.saveMobileLinkInfo)({name:"Unknown",href:t||"wc:"});return}let o=ao[e];if(!o){console.warn("Attempted to set info for unknown wallet",e);return}let r=Da(t||"wc:",Na(o));(0,Qr.saveMobileLinkInfo)({name:(o==null?void 0:o.name)||"",href:r})},Ba=()=>{!en||window.open("wc:","_self")};var on=class extends Ae{constructor(o,r,n){super("wallet_connect",r,n);this.connectionManager=o}setActive(){return this.walletProvider.walletId&&Zo(this.walletProvider.walletId),Promise.resolve(!0)}async connect(o){return o.showPrompt&&await this.promptConnection(),this.getConnectedWallet()}async isConnected(){return this.walletProvider.connected}get walletBranding(){var o,r,n;if(this.walletProvider.walletId){let i=ao[this.walletProvider.walletId];return{name:i.name,icon:this.walletProvider.walletId===qo?_e:Oa(i.image_id)}}return{name:Do(((o=this.walletProvider.walletMeta)==null?void 0:o.name)||"")||"WalletConnect",icon:((n=(r=this.walletProvider.walletMeta)==null?void 0:r.icons)==null?void 0:n[0])||Mt}}async promptConnection(){return new Promise((o,r)=>{this.walletProvider.connector.on("disconnect",(i,a)=>{if(i){r(xe(i));return}a.params.some(s=>s.message==="Session Rejected")&&(this.setWalletProvider(this.connectionManager.replaceProvider(this,this.walletProvider)),r(new dt)),r(new H("Unknown error during connection"))}),this.walletProvider.qrcode&&this.walletProvider.connector.on("modal_closed",()=>{this.setWalletProvider(this.connectionManager.replaceProvider(this,this.walletProvider)),r(new dt)}),this.walletProvider.connector.on("transport_error",(i,a)=>{r(xe(i))}),(async()=>{let i="",a=await Promise.race([this.connectionManager.enableProvider(this.walletProvider),Fr()]);if(a.length>0&&(i=a[0]),!i||i==="")throw new H("Unable to retrieve address");this.connected=!0,o()})().catch(i=>r(xe(i)))})}async sign(o){Zo(this.walletProvider.walletId),this.walletProvider.connected||await this.connectionManager.enableProvider(this.walletProvider);let r=await this.walletProvider.getWalletConnector();return new Promise(async(n,i)=>{var a;r.signPersonalMessage([o,(a=this.walletProvider.accounts)==null?void 0:a[0]]).then(s=>n(s)),Fa&&Ba()})}disconnect(){this.walletProvider.close().catch(()=>console.warn("Unable to disconnect wallet provider"))}get walletProvider(){return this.proxyProvider.walletProvider}setWalletProvider(o){this.proxyProvider.setWalletProvider(o)}},Ko=class{constructor(){this._storageIdToProvider={},this.reconnectDelayMs=10,this.reconnectBackoff=2,!(typeof window>"u")&&V.getKeys().forEach(t=>{var o,r;if(t.startsWith("walletconnect")){let n=t.split(":")[2]?t.split(":")[2]:void 0;if(!n){let i=(r=(o=V.get(t))==null?void 0:o.peerMeta)==null?void 0:r.name;if(i){let a=tn(i);a!=null&&a.id&&(n=a.id)}}this.createProviderWithStorageId(t,n)}})}createConnector(t,o,r){let n=this.getProviderForAddress(o,r),i=new on(this,t,o);return n?n.isConnecting&&(n=this.replaceProvider(i,n)):n=this.createProvider(i,r),i.setWalletProvider(n),i}async disconnect(){await Promise.all(Object.values(this._storageIdToProvider).map(async t=>await t.disconnect()))}getStorageId(t,o){if(!t)return;let r=V.getKeys().filter(i=>i.startsWith("walletconnect"));if(o){let i=r.filter(a=>a.includes(o));if(i){let a=i.find(s=>Hr(V.get(s).accounts,t));if(a)return a}}let n=r.find(i=>Hr(V.get(i).accounts,t));if(!(n&&o&&!n.includes(o)))return n}getProviderForAddress(t,o){let r=this.getStorageId(t,o);r||(r=`${Nr}:${Math.random().toString(36).slice(2)}:${o||""}`);let n=this._storageIdToProvider[r];if(n)return n}createProviderWithStorageId(t,o){let r=o?{qrcode:!1}:{},n=new gd({infuraId:ko,storageId:t,pollingInterval:Li,...r});return n.walletId=o,o?n.connector.on("display_uri",(i,a)=>{Zo(o);let s=a.params[0],l=Ua(s,o);Fa?window.open(l):window.open(l,"_self","noopener,noreferrer")}):n.connector.on("connect",()=>{var i,a,s;(i=n.walletMeta)!=null&&i.name&&(n.walletId=(s=tn((a=n.walletMeta)==null?void 0:a.name))==null?void 0:s.id)}),this._storageIdToProvider[t]=n,n}createProvider(t,o){let r=`${Nr}:${Math.random().toString(36).slice(2)}:${o||""}`,n=this.createProviderWithStorageId(r,o);return n.connector.on("transport_error",()=>{console.warn("Transport failed. Replacing provider."),setTimeout(()=>{t.setWalletProvider(this.replaceProvider(t,n)),this.reconnectDelayMs*=this.reconnectBackoff},this.reconnectDelayMs)}),n}replaceProvider(t,o){o.close().catch(()=>console.warn("Unable to disconnect provider"));let r=Object.entries(this._storageIdToProvider).find(([n,i])=>i.connector.session.key===o.connector.session.key);return r&&delete this._storageIdToProvider[r[0]],this.createProvider(t,o.walletId)}async enableProvider(t){return t.connected?Promise.resolve(t.accounts):await t.enable()}};var rn="privy-eip-prefer-phantom",lo=()=>{if(!window.ethereum)return!1;if(window.ethereum.isMetaMask)return!0;if(window.ethereum.providers){for(let e of window.ethereum.providers)if(e.isMetaMask)return!0}return!1},co=()=>{var e,t;if("phantom"in window){let o=window;if((t=(e=o==null?void 0:o.phantom)==null?void 0:e.ethereum)!=null&&t.isPhantom)return!0}return!1};function Jo(e){sessionStorage.setItem("phantom.contentScript.ethProviderOptions",`[["eip155"],"USE_${e?"PHANTOM":"METAMASK"}"]`),localStorage.setItem(rn,e?"true":"false")}var Ut=()=>{if(!window.ethereum)return!1;if(window.ethereum.isCoinbaseWallet)return!0;if(window.ethereum.providers){for(let e of window.ethereum.providers)if(e.isCoinbaseWallet)return!0}return!1},nn=e=>{let t=localStorage.getItem("-walletlink:https://www.walletlink.org:Addresses");return t?!!(e==null?void 0:e.linkedAccounts.filter(r=>r.type=="wallet"&&r.address===bd(t)).length):!1},Ga=()=>{var t;let e=V.get(Ro);return e?(t=e.find(o=>o.active))==null?void 0:t.address:null},so=class{constructor(){this.getEthereumProvider=()=>{var t;return((t=this.activeWalletConnector)==null?void 0:t.proxyProvider)||new Le};this.walletConnectors=[],this.wcConnectionManager=new Ko,this.initialized=!1}initialize(){this.initialized||(this.load(),this.activeWalletConnector&&this.activeWalletConnector.connect({showPrompt:!1}).catch(t=>console.warn("Unable to reconnect active wallet",t)),this.initialized=!0)}initializeLinkedWallets(t){t.linkedAccounts.forEach(()=>null)}load(){(V.get(Ro)||[]).forEach(o=>{let r=this.createWalletConnector(o.walletType,o.address);this.addWalletConnector(r),o.active&&(this.activeWalletConnector=r)})}save(){let t=this.walletConnectors.map(o=>{var r;return{address:o.address,walletType:o.walletType,active:o.address===((r=this.activeWalletConnector)==null?void 0:r.address)&&o.walletType===this.activeWalletConnector.walletType}});V.put(Ro,t)}addWalletConnector(t){this.walletConnectors.find(r=>r.address===t.address&&r.walletType===t.walletType)||this.walletConnectors.push(t)}getConnectorByAddress(t){return this.walletConnectors.find(o=>{var r;return((r=o.address)==null?void 0:r.toLowerCase())===t.toLowerCase()})}async removeWallet(t){let o=this.walletConnectors.find(r=>r.address===t);o&&o.disconnect(),this.walletConnectors=this.walletConnectors.filter(r=>r.address!==t),this.activeWalletConnector=void 0,this.save()}async activeWalletSign(t){if(!this.activeWalletConnector)throw new H("Cannot sign, no wallet is active. Is a wallet connected?");return this.activeWalletConnector.sign(t)}async setActiveWallet(t){let o=this.walletConnectors.find(r=>r.address===t);if(o){let r=await o.setActive();return this.activeWalletConnector=r?o:void 0,this.activeWalletConnector&&this.activeWalletConnector.proxyProvider.on("accountsChanged",n=>{var i;n.length===0&&(((i=this.activeWalletConnector)==null?void 0:i.address)===t&&(this.activeWalletConnector=void 0),this.save())}),this.save(),!0}return!1}createWalletConnector(t,o,r){switch(t){case"metamask":return new Uo(new Le,o);case"phantom":return new Fo(new Le,o);case"coinbase_wallet":return new Oo(new Le,o);case"wallet_connect":return this.wcConnectionManager.createConnector(new Le,o,r)}}};function Be(e){return new Date(e*1e3)}function yd(e){let t=[];for(let o of e){let r=o.type;switch(o.type){case"wallet":let n={address:o.address,type:o.type,verifiedAt:Be(o.verified_at),chainType:o.chain_type,walletClient:o.wallet_client};t.push(n);break;case"email":let i={address:o.address,type:o.type,verifiedAt:Be(o.verified_at)};t.push(i);break;case"phone":let a={number:o.phoneNumber,type:o.type,verifiedAt:Be(o.verified_at)};t.push(a);break;case"google_oauth":let s={subject:o.subject,email:o.email,name:o.name,type:o.type,verifiedAt:Be(o.verified_at)};t.push(s);break;case"twitter_oauth":let l={subject:o.subject,username:o.username,name:o.name,type:o.type,verifiedAt:Be(o.verified_at)};t.push(l);break;case"discord_oauth":let c={subject:o.subject,username:o.username,email:o.email,type:o.type,verifiedAt:Be(o.verified_at)};t.push(c);break;case"github_oauth":let h={subject:o.subject,username:o.username,name:o.name,email:o.email,type:o.type,verifiedAt:Be(o.verified_at)};t.push(h);break;case"apple_oauth":let m={subject:o.subject,email:o.email,type:o.type,verifiedAt:Be(o.verified_at)};t.push(m);break;default:console.warn(`Unrecognized account type: ${r}. Please consider upgrading the Privy SDK.`)}}return t}function Qe(e,t){return e.sort((o,r)=>r.verifiedAt.getTime()-o.verifiedAt.getTime()),e.find(o=>o.type===t)}function po(e){let t=Ga();if(!t&&e.wallet)return e;let o=e.linkedAccounts.find(n=>n.type==="wallet"&&n.address===t);if(!o)return e;let r=Object.assign({},e);return r.wallet=o&&{address:o.address,chainType:o.chainType,chainId:o.chainId,walletClient:o.walletClient},r}var Y=e=>e==null?void 0:e.linkedAccounts.find(t=>t.type==="wallet"&&t.walletClient==="privy");function Fe(e){if(!e)return null;let t=yd(e.linked_accounts),o=Qe(t,"wallet"),r=Qe(t,"email"),n=Qe(t,"phone"),i=Qe(t,"google_oauth"),a=Qe(t,"twitter_oauth"),s=Qe(t,"discord_oauth"),l=Qe(t,"github_oauth"),c=Qe(t,"apple_oauth"),h={id:e.id,createdAt:Be(e.created_at),linkedAccounts:t,email:r&&{address:r==null?void 0:r.address},phone:n&&{number:n==null?void 0:n.number},wallet:o&&{address:o.address,chainType:o.chainType,chainId:o.chainId,walletClient:o.walletClient},google:i&&{subject:i.subject,email:i.email,name:i.name},twitter:a&&{subject:a.subject,username:a.username,name:a.name},discord:s&&{subject:s.subject,username:s.username,email:s.email},github:l&&{subject:l.subject,username:l.username,name:l.name,email:l.email},apple:c&&{subject:c.subject,email:c.email}};return po(h)}import an from"axios";var Yo=class{constructor(t,o,r){this.appId=t,this.sdkVersion=Or,this.client=o,this.defaults=r}async get(t,o,r=!0){try{return await an.get(t,await this.buildConfig({headers:{"Cache-Control":"no-cache"},...o},r))}catch(n){throw Z(n)}}async post(t,o,r,n=!0){try{return await an.post(t,o,await this.buildConfig(r,n))}catch(i){throw Z(i)}}async delete(t,o,r=!0){try{return await an.delete(t,await this.buildConfig(o,r))}catch(n){throw Z(n)}}async buildConfig(t,o=!0){if(t=t||{},t.headers=t.headers||{},t.headers["privy-app-id"]=this.appId,t.headers["privy-client"]=`react-auth:${this.sdkVersion}`,o){let r=await this.client.getAccessToken();r!==null&&(t.headers.authorization=`Bearer ${r}`)}return{...this.defaults,...t}}};function Ha(e){return e instanceof st?"email":e instanceof lt?"sms":e instanceof Je?"siwe":e instanceof Ke?e.meta.provider:null}var et=class{constructor(t){this.promise=null;this.fn=t}execute(t){return this.promise===null&&(this.promise=(async()=>{try{return await this.fn(t)}finally{this.promise=null}})()),this.promise}};import*as Va from"jose";var Ge=class{static parse(t){try{return new Ge(t)}catch{return null}}constructor(t){this.value=t,this._decoded=Va.decodeJwt(t)}get subject(){return this._decoded.sub}get expiration(){return this._decoded.exp}get issuer(){return this._decoded.iss}get audience(){return this._decoded.aud}isExpired(t=0){let o=Date.now(),r=(this.expiration-t)*1e3;return o>=r}};var vd=30,Xo=class{constructor(){this.authenticateOnce=new et(async t=>this._authenticate(t)),this.linkOnce=new et(async t=>this._link(t)),this.refreshOnce=new et(this._refresh.bind(this)),this.destroyOnce=new et(this._destroy.bind(this)),this.forkSessionOnce=new et(this._forkSession.bind(this))}get token(){try{let t=V.get(kt);return typeof t=="string"?new Ge(t).value:null}catch(t){return console.error(t),this.destroyLocalState(),null}}get refreshToken(){try{let t=V.get(Wo);return typeof t=="string"?t:null}catch(t){return console.error(t),this.destroyLocalState(),null}}get forkedToken(){try{let t=V.get(no);return typeof t=="string"?t:null}catch(t){return console.error(t),this.destroyLocalState(),null}}hasRefreshCredentials(){return typeof this.token=="string"&&typeof this.refreshToken=="string"}hasRecoveryCredentials(){return typeof this.forkedToken=="string"}hasActiveToken(){let t=Ge.parse(this.token);return t!==null&&!t.isExpired(vd)}authenticate(t){return this.authenticateOnce.execute(t)}link(t){return this.linkOnce.execute(t)}refresh(){return this.refreshOnce.execute()}forkSession(){return this.forkSessionOnce.execute()}destroy(){return this.destroyOnce.execute()}async _authenticate(t){try{let{token:o,refresh_token:r,user:n,is_new_user:i}=await t.authenticate();this.storeToken(o),this.storeRefreshToken(r);let a=Ha(t);return a&&this.client&&this.client.createAnalyticsEvent("sdk_authenticate",{method:a,isNewUser:i}),a==="siwe"&&this.client&&this.client.createAnalyticsEvent("sdk_authenticate_siwe",{walletType:t.meta.walletType,walletName:t.meta.walletName}),{user:Fe(n),isNewUser:i}}catch(o){throw console.warn("Error authenticating session"),we(o)}}async _link(t){try{let o=await t.link();return Fe(o)}catch(o){throw console.warn("Error linking account"),we(o)}}async _refresh(){if(!this.api)throw new C("Session has no API instance");if(!this.client)throw new C("Session has no PrivyClient instance");await this.client.getAccessToken({disableAutoRefresh:!0});let t=this.token,o=this.refreshToken,r=this.forkedToken;try{let n;if(t&&o)n=await this.api.post(ni(),{refresh_token:o},{headers:{authorization:`Bearer ${t}`}},!1),r&&this.clearForkedToken();else if(r)n=await this.api.post(si(),{refresh_token:r},{},!1),this.clearForkedToken();else return null;return this.storeToken(n.data.token),this.storeRefreshToken(n.data.refresh_token),Fe(n.data.user)}catch(n){if(n instanceof At&&n.status===400&&n.message==="Invalid auth token")return this.destroyLocalState(),null;throw we(n)}}async _destroy(){var t;try{await((t=this.api)==null?void 0:t.post(ii(),{refresh_token:this.refreshToken}))}catch{console.warn("Error destroying session")}this.destroyLocalState()}async _forkSession(){if(!this.api)throw new C("Session has no API instance");let t=this.refreshToken;try{let o=await this.api.post(ai(),{refresh_token:t});return this.storeToken(o.data.token),this.storeRefreshToken(o.data.refresh_token),o.data.new_session_refresh_token}catch(o){throw we(o)}}destroyLocalState(){this.storeToken(null),this.storeRefreshToken(null),this.clearForkedToken()}storeToken(t){typeof t=="string"?V.put(kt,t):V.del(kt)}storeRefreshToken(t){typeof t=="string"?V.put(Wo,t):V.del(Wo)}clearForkedToken(){V.del(no)}};var sn,uo=class{constructor(t){this.apiUrl=t.apiUrl||To;let o=t.timeout||Si;this.appId=t.appId,this.clientAnalyticsId=typeof window>"u"?null:crypto.randomUUID(),this.connectors=new so,sn||(sn=new Xo),this.session=sn,this.api=new Yo(t.appId,this,{baseURL:this.apiUrl,timeout:o}),this.session.api=this.api,this.session.client=this}authenticate(){if(!this.authFlow)throw new C("No auth flow in progress.");return this.session.authenticate(this.authFlow)}link(){if(!this.authFlow)throw new C("No auth flow in progress.");return this.session.link(this.authFlow)}async logout(){await this.session.destroy(),this.authFlow=void 0}startAuthFlow(t){t.api=this.api,this.authFlow=t}async unlinkEmail(t){try{let o=await this.api.post(Ci(),{address:t});return Fe(o.data)}catch(o){throw we(o)}}async unlinkPhone(t){try{let o=await this.api.post(Ei(),{phoneNumber:t});return Fe(o.data)}catch(o){throw we(o)}}async unlinkWallet(t){try{let o=await this.api.post(wi(),{address:t});return await this.connectors.removeWallet(t),Fe(o.data)}catch(o){throw we(o)}}async unlinkOAuth(t,o){try{let r=await this.api.post(xi(),{provider:t,subject:o});return Fe(r.data)}catch(r){throw we(r)}}async createAnalyticsEvent(t,o,r){try{if(!this.clientAnalyticsId)throw new Error("Cannot create analytics event if run in node and not browswer");await this.api.post(_i(),{event_name:t,client_id:this.clientAnalyticsId,payload:{...o||{},clientTimestamp:r?r.toISOString():new Date().toISOString()}})}catch(n){console.error("Failed to create analytics event",n)}}async getAuthenticatedUser(){return this.session.hasRefreshCredentials()||this.session.hasRecoveryCredentials()?this.session.refresh():null}async getAccessToken(t){var o;return this.session.hasActiveToken()?((o=Ge.parse(this.session.token))==null?void 0:o.audience)!==this.appId?(await this.logout(),null):this.session.token:!(t!=null&&t.disableAutoRefresh)&&this.session.hasRefreshCredentials()?(await this.session.refresh(),this.session.token):null}async getServerConfig(){try{let t=await this.api.get(`/api/v1/apps/${this.appId}`);return{id:t.data.id,name:t.data.name,verificationKey:t.data.verification_key,logoUrl:t.data.logo_url||void 0,accentColor:t.data.accent_color||void 0,showWalletLoginFirst:t.data.show_wallet_login_first,allowlistConfig:{errorTitle:t.data.allowlist_config.error_title,errorDetail:t.data.allowlist_config.error_detail,errorCtaText:t.data.allowlist_config.cta_text,errorCtaLink:t.data.allowlist_config.cta_link},walletAuth:t.data.wallet_auth,emailAuth:t.data.email_auth,smsAuth:t.data.sms_auth,googleOAuth:t.data.google_oauth,twitterOAuth:t.data.twitter_oauth,discordOAuth:t.data.discord_oauth,githubOAuth:t.data.github_oauth,appleOAuth:t.data.apple_oauth,termsAndConditionsUrl:t.data.terms_and_conditions_url,privacyPolicyUrl:t.data.privacy_policy_url,createdAt:new Date(t.data.created_at*1e3),updatedAt:new Date(t.data.updated_at*1e3)}}catch(t){throw we(t)}}async setActiveWallet(t,o){if(!o.linkedAccounts.map(i=>i.type==="wallet"?i.address:null).includes(t))throw new C("Cannot set an unlinked address as active.");if(!await this.connectors.setActiveWallet(t))throw new C("Error setting the active wallet.");return po(o)}async forkSession(){return await this.session.forkSession()}};import"wicg-inert";import{disableBodyScroll as B2,clearAllBodyScrollLocks as F2}from"body-scroll-lock";import{useRef as G2,useCallback as H2}from"react";import{useEffect as zl}from"react";import V2 from"react-dom";import Kn from"styled-components";import{createContext as wd,useContext as Cd}from"react";var ln=wd({isLinking:!1,linkingHint:null,activeStatus:null,walletConnectionStatus:null,getAuthMeta:x,getAuthFlow:x,closePrivyModal:x,initLoginWithWallet:x,loginWithWallet:x,loginWithCode:x,initLoginWithEmail:x,initLoginWithSms:x,resendEmailCode:x,resendSmsCode:x,initLoginWithOAuth:x,loginWithOAuth:x,refreshUser:x,walletProxy:null}),L=()=>Cd(ln);import{createContext as Ed,useContext as xd}from"react";var cn=Ed({ready:!1,authenticated:!1,user:null,walletConnectors:null,login:x,linkEmail:x,linkPhone:x,linkWallet:x,linkGoogle:x,linkTwitter:x,linkDiscord:x,linkGithub:x,linkApple:x,logout:x,getAccessToken:x,getEthereumProvider:x,getEthersProvider:x,getWeb3jsProvider:x,unlinkEmail:x,unlinkPhone:x,unlinkWallet:x,unlinkGoogle:x,unlinkTwitter:x,unlinkDiscord:x,unlinkGithub:x,unlinkApple:x,setActiveWallet:x,forkSession:x,createWallet:x,signMessage:x,exportWallet:x}),I=()=>xd(cn);import mn from"styled-components";import mo,{css as ja}from"styled-components";import pn from"styled-components";import{Fragment as Sd,jsx as dn,jsxs as Ld}from"react/jsx-runtime";var Qo=({success:e,fail:t})=>Ld(Sd,{children:[dn(fo,{className:e?"success":t?"fail":""}),dn(_d,{className:e?"success":t?"fail":""})]}),fo=pn.span`
13
13
  && {
14
14
  width: 82px;
15
15
  height: 82px;
@@ -480,7 +480,7 @@ Resources:
480
480
  word-break: break-all;
481
481
  `;import{useEffect as Xd,useState as Qd}from"react";import e1 from"styled-components";import{isMobile as Yd}from"react-device-detect";var fs=e=>{let t=new URL(window.location.href);if(!Ut()&&Yd)return`https://go.cb-w.com/dapp?cb_url=${encodeURIComponent(`${t.href.replace(/\/$/g,"")}?privy_wallet_client=coinbase_wallet${e?`&privy_token=${e}`:""}`)}`};import{Fragment as o1,jsx as bt,jsxs as ms}from"react/jsx-runtime";var hs=()=>{let{forkSession:e,ready:t,authenticated:o}=I(),{closePrivyModal:r}=L(),[n,i]=Qd("");Xd(()=>{t&&o&&e().then(l=>i(l))},[o,t]);let a=fs(n),s={title:"Redirecting to Coinbase Wallet",description:"We'll take you to the Coinbase Wallet app to continue your login experience.",footnote:""};return t&&o&&(s.description="For the best experience, we'll automatically log you into the Coinbase Wallet in-app browser.",s.footnote="Once you're done, you can always return here and refresh to view your updated account."),ms(o1,{children:[bt(_,{},"header"),bt(ot,{title:s.title,description:s.description}),ms(le,{children:[bt(t1,{children:bt(Ee,{style:{width:"72px",height:"72px"}})}),bt(er,{href:a,onClick:()=>{r()},loading:t&&o&&!n,children:"Continue"}),s.footnote?bt("p",{children:s.footnote}):null]}),bt(M,{protectedByPrivy:!0})]})},t1=e1(Bt)`
482
482
  margin: 16px auto;
483
- `;import{useEffect as bn,useState as go}from"react";import{isMobile as gs}from"react-device-detect";import yn from"styled-components";import{Fragment as ys,jsx as oe,jsxs as ar}from"react/jsx-runtime";var ir=2,sr={metamask:{name:"MetaMask",component:_e},phantom:{name:"Phantom",component:Ye},coinbase_wallet:{name:"Coinbase Wallet",component:Ee},wallet_connect:{name:"WalletConnect",component:Mt}},r1=e=>(e==null?void 0:e.status)===422?pt.ERROR_USER_EXISTS:e instanceof Wt&&!e.details.default?e.details:e instanceof Tt?pt.ERROR_TIMED_OUT:e instanceof dt?pt.ERROR_USER_REJECTED_CONNECTION:pt.ERROR_WALLET_CONNECTION,bs=()=>{var j,ye,ae,St,ee;let[e,t]=go(!1),[o,r]=go(!1),[n,i]=go(void 0),{navigate:a,navigateBack:s}=w(),{getAuthFlow:l,walletConnectionStatus:c,closePrivyModal:h,loginWithWallet:m}=L(),{walletConnectors:p}=I(),[g,y]=go(0),{user:d}=I(),[b]=go((d==null?void 0:d.linkedAccounts.length)||0),v=l(),A=gs&&(v==null?void 0:v.meta.walletType)==="wallet_connect"||gs&&(v==null?void 0:v.meta.walletType)==="coinbase_wallet",k=c==null?void 0:c.connected;bn(()=>{!v||A||!k||(r(!0),i(void 0),N().catch(D=>console.warn("Auto-prompted signature failed",D)).finally(()=>r(!1)))},[g,k]),bn(()=>{if(d&&e){let D=setTimeout(h,Ce);return()=>clearTimeout(D)}},[d,e]);let O=D=>{if((D==null?void 0:D.status)===401&&(D==null?void 0:D.message)==="User is not allowed to login to this app."){a("ALLOWLIST_REJECTION_SCREEN");return}i(r1(D))};async function N(){try{await m(),t(!0)}catch(D){O(D)}finally{r(!1)}}bn(()=>{c!=null&&c.connectError&&O(c==null?void 0:c.connectError)},[c]);let q=(v==null?void 0:v.meta.walletType)||"metamask",ge=((j=v==null?void 0:v.meta)==null?void 0:j.walletName)||((ye=sr[q])==null?void 0:ye.name)||"Metamask",de=((ae=v==null?void 0:v.meta)==null?void 0:ae.walletIcon)||((St=sr[q])==null?void 0:St.component)||(D=>oe(_e,{...D})),be=e?`Successfully connected with ${ge}`:n?n.message:k?"Sign to verify":`Waiting for ${ge}`,$="Don\u2019t see your wallet modal? Check your other browser windows.";if(e){let D=(d==null?void 0:d.linkedAccounts.length)||0;b===D?$="Wallet was already linked.":$="You\u2019re good to go!"}else g>=ir&&n?$="Unable to connect wallet":n?$=n.detail:k&&A?$="Sign the message in your wallet to verify it belongs to you.":q==="metamask"?$="For the best experience, connect only one wallet at a time.":q==="wallet_connect"?$="Open your mobile wallet app to continue":q==="coinbase_wallet"&&(Ut()||(nn(d)?$="Continue with the Coinbase app. Not the right wallet? Reset your connection below.":$="Open the Coinbase app on your phone to continue."));let F=(ee=p==null?void 0:p.walletConnectors)==null?void 0:ee.find(D=>D.walletType==="coinbase_wallet"),B=q==="coinbase_wallet"&&(nn(d)||n===pt.ERROR_USER_EXISTS);return ar(ys,{children:[oe(_,{backFn:s}),ar(n1,{children:[oe(vn,{walletLogo:de,success:e,fail:!!n}),ar(i1,{children:[oe("h3",{children:be}),oe("p",{children:$})]}),oe(Za,{children:B?oe(se,{onClick:()=>F&&(F==null?void 0:F.disconnect()),invisible:e,disabled:e,children:"Use a different wallet"}):n==pt.ERROR_USER_EXISTS?oe(se,{onClick:s,children:"Use a different wallet"}):k&&!e&&A?oe(se,{onClick:()=>{r(!0),N()},disabled:o,children:o?"Signing":"Sign with your wallet"}):!e&&(n==null?void 0:n.retryable)&&g<ir?oe(se,{onClick:()=>{y(g+1),i(void 0),c==null||c.connectRetry()},invisible:e||!(n!=null&&n.retryable)||g>=ir,disabled:!e&&(!(n!=null&&n.retryable)||g>=ir),children:"Retry"}):null})]})]})},n1=yn.div`
483
+ `;import{useEffect as bn,useState as go}from"react";import{isMobile as gs}from"react-device-detect";import yn from"styled-components";import{Fragment as ys,jsx as oe,jsxs as ar}from"react/jsx-runtime";var ir=2,sr={metamask:{name:"MetaMask",component:_e},phantom:{name:"Phantom",component:Ye},coinbase_wallet:{name:"Coinbase Wallet",component:Ee},wallet_connect:{name:"WalletConnect",component:Mt}},r1=e=>(e==null?void 0:e.status)===422?pt.ERROR_USER_EXISTS:e instanceof Wt&&!e.details.default?e.details:e instanceof Tt?pt.ERROR_TIMED_OUT:e instanceof dt?pt.ERROR_USER_REJECTED_CONNECTION:pt.ERROR_WALLET_CONNECTION,bs=()=>{var j,ye,ae,St,ee;let[e,t]=go(!1),[o,r]=go(!1),[n,i]=go(void 0),{navigate:a,navigateBack:s}=w(),{getAuthFlow:l,walletConnectionStatus:c,closePrivyModal:h,loginWithWallet:m}=L(),{walletConnectors:p}=I(),[g,y]=go(0),{user:d}=I(),[b]=go((d==null?void 0:d.linkedAccounts.length)||0),v=l(),A=gs&&(v==null?void 0:v.meta.walletType)==="wallet_connect"||gs&&(v==null?void 0:v.meta.walletType)==="coinbase_wallet",k=(c==null?void 0:c.status)==="connected";bn(()=>{!v||A||!k||(r(!0),i(void 0),N().catch(D=>console.warn("Auto-prompted signature failed",D)).finally(()=>r(!1)))},[g,k]),bn(()=>{if(d&&e){let D=setTimeout(h,Ce);return()=>clearTimeout(D)}},[d,e]);let O=D=>{if((D==null?void 0:D.status)===401&&(D==null?void 0:D.message)==="User is not allowed to login to this app."){a("ALLOWLIST_REJECTION_SCREEN");return}i(r1(D))};async function N(){try{await m(),t(!0)}catch(D){O(D)}finally{r(!1)}}bn(()=>{c!=null&&c.connectError&&O(c==null?void 0:c.connectError)},[c]);let q=(v==null?void 0:v.meta.walletType)||"metamask",ge=((j=v==null?void 0:v.meta)==null?void 0:j.walletName)||((ye=sr[q])==null?void 0:ye.name)||"Metamask",de=((ae=v==null?void 0:v.meta)==null?void 0:ae.walletIcon)||((St=sr[q])==null?void 0:St.component)||(D=>oe(_e,{...D})),be=e?`Successfully connected with ${ge}`:n?n.message:k?"Sign to verify":`Waiting for ${ge}`,$="Don\u2019t see your wallet modal? Check your other browser windows.";if(e){let D=(d==null?void 0:d.linkedAccounts.length)||0;b===D?$="Wallet was already linked.":$="You\u2019re good to go!"}else g>=ir&&n?$="Unable to connect wallet":n?$=n.detail:k&&A?$="Sign the message in your wallet to verify it belongs to you.":q==="metamask"?$="For the best experience, connect only one wallet at a time.":q==="wallet_connect"?$="Open your mobile wallet app to continue":q==="coinbase_wallet"&&(Ut()||(nn(d)?$="Continue with the Coinbase app. Not the right wallet? Reset your connection below.":$="Open the Coinbase app on your phone to continue."));let F=(ee=p==null?void 0:p.walletConnectors)==null?void 0:ee.find(D=>D.walletType==="coinbase_wallet"),B=q==="coinbase_wallet"&&(nn(d)||n===pt.ERROR_USER_EXISTS);return ar(ys,{children:[oe(_,{backFn:s}),ar(n1,{children:[oe(vn,{walletLogo:de,success:e,fail:!!n}),ar(i1,{children:[oe("h3",{children:be}),oe("p",{children:$})]}),oe(Za,{children:B?oe(se,{onClick:()=>F&&(F==null?void 0:F.disconnect()),invisible:e,disabled:e,children:"Use a different wallet"}):n==pt.ERROR_USER_EXISTS?oe(se,{onClick:s,children:"Use a different wallet"}):k&&!e&&A?oe(se,{onClick:()=>{r(!0),N()},disabled:o,children:o?"Signing":"Sign with your wallet"}):!e&&(n==null?void 0:n.retryable)&&g<ir?oe(se,{onClick:()=>{y(g+1),i(void 0),c==null||c.connectRetry()},invisible:e||!(n!=null&&n.retryable)||g>=ir,disabled:!e&&(!(n!=null&&n.retryable)||g>=ir),children:"Retry"}):null})]})]})},n1=yn.div`
484
484
  display: flex;
485
485
  flex-direction: column;
486
486
  align-items: center;
@@ -1876,4 +1876,4 @@ Resources:
1876
1876
  align-items: center;
1877
1877
  justify-content: center;
1878
1878
  height: 100%;
1879
- `;import to from"tinycolor2";var Zl="#FFFFFF",Z2="#000000",K2=Zl,J2="#1E1E1D";function Y2(e){return e<.8&&e>.2&&console.warn("Background color is not light or dark enough, which could lead to accessibility issues."),e>.5?"light":"dark"}function _t(e,t){let o=Math.max(0,Math.min(1,e.toHsl().l+t));return to({...e.toHsl(),l:o})}function Kl({backgroundTheme:e,accentHex:t,successHex:o="#51BA81",errorHex:r="#EC6351",whiteHex:n=Zl,blackHex:i=Z2}){let a;switch(e){case"light":a=K2;break;case"dark":a=J2;break;default:a=e;break}let s=to(a),l=to(t),c=to(o),h=to(r),m=Y2(s.getLuminance()),p=_t(s,m==="light"?-.04:.11),g=_t(s,m==="light"?-.88:.87),y=_t(s,m==="light"?-.77:.75),d=_t(s,m==="light"?-.43:.45).desaturate(m==="light"?60:20),b=_t(s,m==="light"?-.13:.25).desaturate(m==="light"?60:20),v=_t(l,.15),A=_t(l,-.06),k=to(l.getLuminance()>.5?i:n);return{colorScheme:m,background:s.toHslString(),background2:p.toHslString(),foreground:g.toHslString(),foreground2:y.toHslString(),foreground3:d.toHslString(),foreground4:b.toHslString(),accent:l.toHslString(),accentLight:v.toHslString(),accentDark:A.toHslString(),foregroundAccent:k.toHslString(),success:c.toHslString(),error:h.toHslString()}}var Jl={appearance:{theme:"light",accentColor:"#676FFF"}};function Jn(e,t){var r,n,i;return{id:e.id,name:e.name,showWalletLoginFirst:e.showWalletLoginFirst,allowlistConfig:e.allowlistConfig,walletAuth:e.walletAuth,emailAuth:e.emailAuth,smsAuth:e.smsAuth,googleOAuth:e.googleOAuth,twitterOAuth:e.twitterOAuth,discordOAuth:e.discordOAuth,githubOAuth:e.githubOAuth,appleOAuth:e.appleOAuth,termsAndConditionsUrl:e.termsAndConditionsUrl,privacyPolicyUrl:e.privacyPolicyUrl,appearance:{logo:((r=t==null?void 0:t.appearance)==null?void 0:r.logo)||e.logoUrl,palette:Kl({backgroundTheme:((n=t==null?void 0:t.appearance)==null?void 0:n.theme)||Jl.appearance.theme,accentHex:((i=t==null?void 0:t.appearance)==null?void 0:i.accentColor)||e.accentColor||Jl.appearance.accentColor})}}}import{useRef as X2,useEffect as Q2}from"react";var Ir=class{constructor(){this.callbacks={}}enqueue(t,o){this.callbacks[t]=o}dequeue(t,o){let r=this.callbacks[o];if(!r)throw new Error(`cannot dequeue ${t} event: no event found for id ${o}`);switch(delete this.callbacks[o],t){case"privy:iframe:ready":return r;case"privy:wallet:create":return r;case"privy:wallet:connect":return r;case"privy:wallet:sign":return r;case"privy:wallet:recover":return r;case"privy:wallet:rpc":return r;default:throw new Error(`invalid wallet event type ${t}`)}}};import{jsx as ru}from"react/jsx-runtime";var eu=function(e){return()=>`id-${e++}`}(0);function tu(e){return typeof e.event=="string"&&/^privy:.+/.test(e.event)}function oo(e){return e.error!==void 0}var Pt=new Ir;function ro(e,t,o){let r=o.contentWindow;if(!r)throw new Error("iframe not initialized");return new Promise((n,i)=>{let a=eu();Pt.enqueue(a,{resolve:n,reject:i}),r.postMessage({id:a,event:e,data:t},"*")})}function ou(e){switch(e.event){case"privy:iframe:ready":let t=Pt.dequeue(e.event,e.id);return oo(e)?t.reject(new je(e.error.type,e.error.message)):t.resolve(e.data);case"privy:wallet:create":let o=Pt.dequeue(e.event,e.id);return oo(e)?o.reject(new je(e.error.type,e.error.message)):o.resolve(e.data);case"privy:wallet:connect":let r=Pt.dequeue(e.event,e.id);return oo(e)?r.reject(new je(e.error.type,e.error.message)):r.resolve(e.data);case"privy:wallet:sign":let n=Pt.dequeue(e.event,e.id);return oo(e)?n.reject(new je(e.error.type,e.error.message)):n.resolve(e.data);case"privy:wallet:recover":let i=Pt.dequeue(e.event,e.id);return oo(e)?i.reject(new je(e.error.type,e.error.message)):i.resolve(e.data);case"privy:wallet:rpc":let a=Pt.dequeue(e.event,e.id);return oo(e)?a.reject(new je(e.error.type,e.error.message)):a.resolve(e.data)}}function Yl(e){let t=X2(null);return Q2(()=>{let o=t.current;if(!o)return;function r(s){s&&s.origin===e.origin&&tu(s.data)&&ou(s.data)}let n={create(s){return ro("privy:wallet:create",s,o)},connect(s){return ro("privy:wallet:connect",s,o)},sign(s){return ro("privy:wallet:sign",s,o)},recover(s){return ro("privy:wallet:recover",s,o)},rpc(s){return ro("privy:wallet:rpc",s,o)}};window.addEventListener("message",r);let i=()=>e.onLoad(n),a=(...s)=>{console.error("privy iframe failed to load: ",...s),e.onLoadFailed()};return Ri(()=>ro("privy:iframe:ready",{},o)).then(i,a),()=>window.removeEventListener("message",r)},[t.current]),ru("iframe",{ref:t,width:"0",height:"0",style:{display:"none",height:"0px",width:"0px"},src:No(e.origin,`/apps/${e.appId}/embedded-wallets`)})}import{jsx as So,jsxs as Xl}from"react/jsx-runtime";function iu(e){return typeof e=="string"&&e.length===25}var Lo;function au(){if(!Lo){let e=V.get(kt);return Promise.resolve(e||null)}return Lo.getAccessToken()}var su=()=>{let t=new URLSearchParams(window.location.search).get("privy_token");!t||V.put(no,t)},lu=e=>{if(!iu(e.appId))throw new C("Cannot initialize the Privy provider with an invalid Privy app ID");return Lo||(Lo=new uo({appId:e.appId,apiUrl:e.apiUrl||To})),So(du,{...e,client:Lo})},cu=e=>{let t=!!(e!=null&&e.emailAuth),o=!!(e!=null&&e.smsAuth);return t&&o&&(console.warn("Enabling both email and SMS passwordless is not currently supported. Disabling SMS."),o=!1),{email:t,sms:o,wallet:!!(e!=null&&e.walletAuth),google:!!(e!=null&&e.googleOAuth),twitter:!!(e!=null&&e.twitterOAuth),discord:!!(e!=null&&e.discordOAuth),github:!!(e!=null&&e.githubOAuth),apple:!!(e!=null&&e.appleOAuth)}},du=e=>{let t=e.client,[o,r]=ie(!1),[n,i]=ie(!1),[a,s]=ie(!1),[l,c]=ie(null),[h,m]=ie(!1),[p,g]=ie(null),[y,d]=ie(!1),[b,v]=ie(null),[A,k]=ie({connecting:!1,connected:!1,connectError:null,connectRetry:x}),[O,N]=ie(null),[q,ge]=ie(null),[de,be]=ie({showWalletLoginFirst:!0,allowlistConfig:{errorTitle:null,errorDetail:null,errorCtaText:null,errorCtaLink:null},walletAuth:!0,emailAuth:!0,smsAuth:!1,googleOAuth:!1,twitterOAuth:!1,discordOAuth:!1,githubOAuth:!1,appleOAuth:!1,termsAndConditionsUrl:null,privacyPolicyUrl:null}),[$,F]=ie(Jn(de,e.config)),[B,j]=ie(!1),[ye,ae]=ie({}),St=cu($),ee=f=>{f&&g(f),r(!0),t.createAnalyticsEvent("modal_open",{initialScreen:f})},D=f=>{let u=e.createPrivyWalletOnLogin===!0;ae({login:{promptCreatePrivyWalletFlow:u}}),u&&j(!0),ee(f)};Yn(()=>{async function f(){let u=await t.getServerConfig();if(be(u),t.connectors.initialize(),co()){let G=localStorage.getItem(rn)==="true";Jo(G||!lo())}ve(),su();let T=await t.getAuthenticatedUser();s(!!T),c(T),i(!0),d(!!T),Ql()}f()},[t]),Yn(()=>{let f=Jn(de,e.config);F(f)},[e.config,de]);let ve=()=>{let f=new URLSearchParams(window.location.search),u=f.get("privy_oauth_code"),T=f.get("privy_oauth_state"),G=f.get("privy_oauth_provider");u&&T&&G&&(t.startAuthFlow(new Ke(G,u,T)),D("AWAITING_OAUTH_SCREEN"))},at=f=>{f.promptConnect().then(()=>{k(u=>({...u,connected:!0,connectError:null}))}).catch(u=>{u instanceof Se?console.error(u.cause?u.cause:u.message):console.error(u),k(T=>({...T,connectError:u}))}).finally(()=>{k(u=>({...u,connecting:!1}))})},Ql=()=>{let u=new URLSearchParams(window.location.search).get("privy_wallet_client");if(!u)return;if(u==="phantom"&&!co()&&D("LOGIN_FAILED_SCREEN"),!t.connectors)throw new C("Connector not initialized");let T=new Je(t.connectors,u);t.startAuthFlow(T),at(T),ee("AWAITING_CONNECTION")};Yn(()=>{n&&a&&l===null&&t.getAuthenticatedUser().then(c)},[n,a,l,t]);let Mr=()=>{d(!0),ee("LINK_WALLET_SCREEN")},Xn=async(f,u)=>{let T=t.connectors.getConnectorByAddress(u);if(!T)return N(u),Mr(),f;v({address:u,walletType:T.walletType,walletBranding:T.walletBranding,success:!1}),ee("SETTING_ACTIVE_WALLET");try{let G=await t.setActiveWallet(u,f);return v({address:u,walletType:T.walletType,walletBranding:T.walletBranding,success:!0}),G}catch(G){G instanceof C&&G.message==="Error setting the active wallet."&&(N(u),Mr()),v({address:u,walletType:T.walletType,walletBranding:T.walletBranding,success:!1,error:G.message})}return f},ec={ready:n,authenticated:a,user:l,walletConnectors:t.connectors,linkWallet:Mr,linkEmail:()=>{d(!0),ee("LINK_EMAIL_SCREEN")},linkPhone:()=>{d(!0),ee("LINK_PHONE_SCREEN")},linkGoogle:async()=>{await Lt.initLoginWithOAuth("google")},linkTwitter:async()=>{await Lt.initLoginWithOAuth("twitter")},linkDiscord:async()=>{await Lt.initLoginWithOAuth("discord")},linkGithub:async()=>{await Lt.initLoginWithOAuth("github")},linkApple:async()=>{await Lt.initLoginWithOAuth("apple")},login:()=>{if(n&&a){console.warn("Attempted to log in, but user is already logged in. Use a `link` helper instead.");return}D()},logout:async()=>{await t.logout(),c(null),s(!1),g(null),d(!1),r(!1)},getAccessToken:()=>t.getAccessToken(),getEthereumProvider:()=>t.connectors.getEthereumProvider(),getEthersProvider:()=>new nu(new ut(t.connectors.getEthereumProvider())),getWeb3jsProvider:()=>new Io(t.connectors.getEthereumProvider()),unlinkWallet:async f=>{let u=await t.unlinkWallet(f);c(u);let T=u.linkedAccounts.filter(G=>G.type==="wallet");if(u&&T&&T.length>0){let G=T[0];u=await Xn(u,G.address)}return c(u),u},unlinkEmail:async f=>{let u=await t.unlinkEmail(f);return c(u),u},unlinkPhone:async f=>{let u=await t.unlinkPhone(f);return c(u),u},unlinkGoogle:async f=>{let u=await t.unlinkOAuth("google",f);return c(u),u},unlinkTwitter:async f=>{let u=await t.unlinkOAuth("twitter",f);return c(u),u},unlinkDiscord:async f=>{let u=await t.unlinkOAuth("discord",f);return c(u),u},unlinkGithub:async f=>{let u=await t.unlinkOAuth("github",f);return c(u),u},unlinkApple:async f=>{let u=await t.unlinkOAuth("apple",f);return c(u),u},setActiveWallet:async f=>{if(!l)return;let u=await Xn(l,f);u&&c(u)},forkSession:()=>t.forkSession(),createWallet:()=>new Promise((f,u)=>{if(!a||!l){u(new Error("User must be authenticated before creating a Privy wallet"));return}if(Y(l)){u(new Error("Only one Privy wallet per user is currently allowed"));return}j(!0),ae({createWallet:{onSuccess:f,onFailure:u,callAuthOnSuccessOnClose:!1}}),ee("EMBEDDED_WALLET_SCREEN")}),signMessage:(f,u)=>new Promise((T,G)=>{if(!a||!l){G(new Error("User must be authenticated before signing with a Privy wallet"));return}if(!Y(l)){G(new Error("Must have a Privy wallet before signing"));return}if(typeof f!="string"||f.length<1){G(new Error("Message must be a non-empty string"));return}j(!0);let tc={message:f,onSuccess:T,onFailure:G,uiOptions:u||{}},oc={onCompleteNavigateTo:"SIGN_REQUEST_SCREEN",onFailure:G};ae({signMessage:tc,connectWallet:oc}),ee("EMBEDDED_WALLET_CONNECTING_SCREEN")}),exportWallet:()=>new Promise((f,u)=>{if(!a||!l){u(new Error("User must be authenticated before exporting their Privy wallet"));return}if(!Y(l)){u(new Error("Must have a Privy wallet before exporting"));return}j(!0);let G={onCompleteNavigateTo:"EMBEDDED_WALLET_KEY_EXPORT_SCREEN",onFailure:u},Qn={appId:e.appId,origin:t.apiUrl,onSuccess:f,onFailure:u};ae({keyExport:Qn,connectWallet:G}),ee("EMBEDDED_WALLET_CONNECTING_SCREEN")})},Lt=(()=>({isLinking:y,linkingHint:O,activeStatus:b,walletConnectionStatus:A,getAuthFlow:()=>t.authFlow,getAuthMeta:()=>{var f;return(f=t.authFlow)==null?void 0:f.meta},closePrivyModal:(f={shouldCallAuthOnSuccess:!0})=>{var T;let u=n&&a&&l;f.shouldCallAuthOnSuccess&&u&&((T=e.onSuccess)==null||T.call(e,l,h)),t.authFlow=void 0,N(null),g(null),d(!1),v(null),m(!1),r(!1),t.createAnalyticsEvent("modal_closed")},initLoginWithWallet:(f,u)=>{if(!t.connectors)throw new C("Connector not initialized");f||(f="metamask");let T=new Je(t.connectors,f,u);t.startAuthFlow(T),k({connecting:!0,connected:!1,connectError:null,connectRetry:()=>at(T)}),at(T)},loginWithWallet:async()=>{if(!(t.authFlow instanceof Je))throw new C("Must initialize SIWE flow first.");let f,u;y?(f=await t.link(),f&&(f=po(f))):{user:f,isNewUser:u}=await t.authenticate(),c(f||l||null),m(u||!1),s(!0)},initLoginWithOAuth:async f=>{t.startAuthFlow(new Ke(f));let u=await t.authFlow.getAuthorizationUrl();u&&u.url&&window.location.assign(u.url)},loginWithOAuth:async()=>{if(!(t.authFlow instanceof Ke))throw new C("Must initialize OAuth flow before calling loginWithOAuth");let f,u;n&&a?f=await t.link():{user:f,isNewUser:u}=await t.authenticate(),c(f),m(u||!1),s(!0)},initLoginWithEmail:async f=>{let u=new st(f);t.startAuthFlow(u),await u.sendCodeEmail()},initLoginWithSms:async f=>{let u=new lt(f);t.startAuthFlow(u),await u.sendSmsCode()},resendEmailCode:async()=>{var f;await((f=t.authFlow)==null?void 0:f.sendCodeEmail())},resendSmsCode:async()=>{var f;await((f=t.authFlow)==null?void 0:f.sendSmsCode())},loginWithCode:async f=>{if(t.authFlow instanceof st)t.authFlow.meta.emailCode=f.trim();else if(t.authFlow instanceof lt)t.authFlow.meta.smsCode=f.trim();else throw new C("Must initialize a passwordless code flow first");let u,T;y?u=await t.link():{user:u,isNewUser:T}=await t.authenticate(),c(u||l||null),m(T||!1),s(!0)},refreshUser:async()=>{let f=await t.getAuthenticatedUser();return c(f),f},walletProxy:q}))();return Xl(cn.Provider,{value:ec,children:[e.children,Xl(ln.Provider,{value:Lt,children:[So(Vl,{theme:{...$.appearance.palette||{}}}),So(Bi,{appConfig:$,options:St,data:ye,setModalData:ae,initialScreen:p,visible:o,authenticated:a,children:o&&So(ql,{})}),B&&So(Yl,{appId:e.appId,origin:t.apiUrl,onLoad:ge,onLoadFailed:()=>null})]})]})};export{ut as AsExternalProvider,so as ConnectorManager,uo as PrivyClient,lu as PrivyProvider,Le as PrivyProxyProvider,Or as VERSION,Ae as WalletConnector,au as getAccessToken,I as usePrivy};
1879
+ `;import to from"tinycolor2";var Zl="#FFFFFF",Z2="#000000",K2=Zl,J2="#1E1E1D";function Y2(e){return e<.8&&e>.2&&console.warn("Background color is not light or dark enough, which could lead to accessibility issues."),e>.5?"light":"dark"}function _t(e,t){let o=Math.max(0,Math.min(1,e.toHsl().l+t));return to({...e.toHsl(),l:o})}function Kl({backgroundTheme:e,accentHex:t,successHex:o="#51BA81",errorHex:r="#EC6351",whiteHex:n=Zl,blackHex:i=Z2}){let a;switch(e){case"light":a=K2;break;case"dark":a=J2;break;default:a=e;break}let s=to(a),l=to(t),c=to(o),h=to(r),m=Y2(s.getLuminance()),p=_t(s,m==="light"?-.04:.11),g=_t(s,m==="light"?-.88:.87),y=_t(s,m==="light"?-.77:.75),d=_t(s,m==="light"?-.43:.45).desaturate(m==="light"?60:20),b=_t(s,m==="light"?-.13:.25).desaturate(m==="light"?60:20),v=_t(l,.15),A=_t(l,-.06),k=to(l.getLuminance()>.5?i:n);return{colorScheme:m,background:s.toHslString(),background2:p.toHslString(),foreground:g.toHslString(),foreground2:y.toHslString(),foreground3:d.toHslString(),foreground4:b.toHslString(),accent:l.toHslString(),accentLight:v.toHslString(),accentDark:A.toHslString(),foregroundAccent:k.toHslString(),success:c.toHslString(),error:h.toHslString()}}var Jl={appearance:{theme:"light",accentColor:"#676FFF"}};function Jn(e,t){var r,n,i;return{id:e.id,name:e.name,showWalletLoginFirst:e.showWalletLoginFirst,allowlistConfig:e.allowlistConfig,walletAuth:e.walletAuth,emailAuth:e.emailAuth,smsAuth:e.smsAuth,googleOAuth:e.googleOAuth,twitterOAuth:e.twitterOAuth,discordOAuth:e.discordOAuth,githubOAuth:e.githubOAuth,appleOAuth:e.appleOAuth,termsAndConditionsUrl:e.termsAndConditionsUrl,privacyPolicyUrl:e.privacyPolicyUrl,appearance:{logo:((r=t==null?void 0:t.appearance)==null?void 0:r.logo)||e.logoUrl,palette:Kl({backgroundTheme:((n=t==null?void 0:t.appearance)==null?void 0:n.theme)||Jl.appearance.theme,accentHex:((i=t==null?void 0:t.appearance)==null?void 0:i.accentColor)||e.accentColor||Jl.appearance.accentColor})}}}import{useRef as X2,useEffect as Q2}from"react";var Ir=class{constructor(){this.callbacks={}}enqueue(t,o){this.callbacks[t]=o}dequeue(t,o){let r=this.callbacks[o];if(!r)throw new Error(`cannot dequeue ${t} event: no event found for id ${o}`);switch(delete this.callbacks[o],t){case"privy:iframe:ready":return r;case"privy:wallet:create":return r;case"privy:wallet:connect":return r;case"privy:wallet:sign":return r;case"privy:wallet:recover":return r;case"privy:wallet:rpc":return r;default:throw new Error(`invalid wallet event type ${t}`)}}};import{jsx as ru}from"react/jsx-runtime";var eu=function(e){return()=>`id-${e++}`}(0);function tu(e){return typeof e.event=="string"&&/^privy:.+/.test(e.event)}function oo(e){return e.error!==void 0}var Pt=new Ir;function ro(e,t,o){let r=o.contentWindow;if(!r)throw new Error("iframe not initialized");return new Promise((n,i)=>{let a=eu();Pt.enqueue(a,{resolve:n,reject:i}),r.postMessage({id:a,event:e,data:t},"*")})}function ou(e){switch(e.event){case"privy:iframe:ready":let t=Pt.dequeue(e.event,e.id);return oo(e)?t.reject(new je(e.error.type,e.error.message)):t.resolve(e.data);case"privy:wallet:create":let o=Pt.dequeue(e.event,e.id);return oo(e)?o.reject(new je(e.error.type,e.error.message)):o.resolve(e.data);case"privy:wallet:connect":let r=Pt.dequeue(e.event,e.id);return oo(e)?r.reject(new je(e.error.type,e.error.message)):r.resolve(e.data);case"privy:wallet:sign":let n=Pt.dequeue(e.event,e.id);return oo(e)?n.reject(new je(e.error.type,e.error.message)):n.resolve(e.data);case"privy:wallet:recover":let i=Pt.dequeue(e.event,e.id);return oo(e)?i.reject(new je(e.error.type,e.error.message)):i.resolve(e.data);case"privy:wallet:rpc":let a=Pt.dequeue(e.event,e.id);return oo(e)?a.reject(new je(e.error.type,e.error.message)):a.resolve(e.data)}}function Yl(e){let t=X2(null);return Q2(()=>{let o=t.current;if(!o)return;function r(s){s&&s.origin===e.origin&&tu(s.data)&&ou(s.data)}let n={create(s){return ro("privy:wallet:create",s,o)},connect(s){return ro("privy:wallet:connect",s,o)},sign(s){return ro("privy:wallet:sign",s,o)},recover(s){return ro("privy:wallet:recover",s,o)},rpc(s){return ro("privy:wallet:rpc",s,o)}};window.addEventListener("message",r);let i=()=>e.onLoad(n),a=(...s)=>{console.error("privy iframe failed to load: ",...s),e.onLoadFailed()};return Ri(()=>ro("privy:iframe:ready",{},o)).then(i,a),()=>window.removeEventListener("message",r)},[t.current]),ru("iframe",{ref:t,width:"0",height:"0",style:{display:"none",height:"0px",width:"0px"},src:No(e.origin,`/apps/${e.appId}/embedded-wallets`)})}import{jsx as So,jsxs as Xl}from"react/jsx-runtime";function iu(e){return typeof e=="string"&&e.length===25}var Lo;function au(){if(!Lo){let e=V.get(kt);return Promise.resolve(e||null)}return Lo.getAccessToken()}var su=()=>{let t=new URLSearchParams(window.location.search).get("privy_token");!t||V.put(no,t)},lu=e=>{if(!iu(e.appId))throw new C("Cannot initialize the Privy provider with an invalid Privy app ID");return Lo||(Lo=new uo({appId:e.appId,apiUrl:e.apiUrl||To})),So(du,{...e,client:Lo})},cu=e=>{let t=!!(e!=null&&e.emailAuth),o=!!(e!=null&&e.smsAuth);return t&&o&&(console.warn("Enabling both email and SMS passwordless is not currently supported. Disabling SMS."),o=!1),{email:t,sms:o,wallet:!!(e!=null&&e.walletAuth),google:!!(e!=null&&e.googleOAuth),twitter:!!(e!=null&&e.twitterOAuth),discord:!!(e!=null&&e.discordOAuth),github:!!(e!=null&&e.githubOAuth),apple:!!(e!=null&&e.appleOAuth)}},du=e=>{let t=e.client,[o,r]=ie(!1),[n,i]=ie(!1),[a,s]=ie(!1),[l,c]=ie(null),[h,m]=ie(!1),[p,g]=ie(null),[y,d]=ie(!1),[b,v]=ie(null),[A,k]=ie({status:"disconnected",connectError:null,connectRetry:x}),[O,N]=ie(null),[q,ge]=ie(null),[de,be]=ie({showWalletLoginFirst:!0,allowlistConfig:{errorTitle:null,errorDetail:null,errorCtaText:null,errorCtaLink:null},walletAuth:!0,emailAuth:!0,smsAuth:!1,googleOAuth:!1,twitterOAuth:!1,discordOAuth:!1,githubOAuth:!1,appleOAuth:!1,termsAndConditionsUrl:null,privacyPolicyUrl:null}),[$,F]=ie(Jn(de,e.config)),[B,j]=ie(!1),[ye,ae]=ie({}),St=cu($),ee=f=>{f&&g(f),r(!0),t.createAnalyticsEvent("modal_open",{initialScreen:f})},D=f=>{let u=e.createPrivyWalletOnLogin===!0;ae({login:{promptCreatePrivyWalletFlow:u}}),u&&j(!0),ee(f)};Yn(()=>{async function f(){let u=await t.getServerConfig();if(be(u),t.connectors.initialize(),co()){let G=localStorage.getItem(rn)==="true";Jo(G||!lo())}ve(),su();let T=await t.getAuthenticatedUser();s(!!T),c(T),i(!0),d(!!T),Ql()}f()},[t]),Yn(()=>{let f=Jn(de,e.config);F(f)},[e.config,de]);let ve=()=>{let f=new URLSearchParams(window.location.search),u=f.get("privy_oauth_code"),T=f.get("privy_oauth_state"),G=f.get("privy_oauth_provider");u&&T&&G&&(t.startAuthFlow(new Ke(G,u,T)),D("AWAITING_OAUTH_SCREEN"))},at=f=>{k(u=>({...u,status:"connecting",connectError:null})),f.promptConnect().then(()=>{k(u=>({...u,status:"connected",connectError:null}))}).catch(u=>{u instanceof Se?console.error(u.cause?u.cause:u.message):console.error(u),k(T=>({...T,status:"disconnected",connectError:u}))})},Ql=()=>{let u=new URLSearchParams(window.location.search).get("privy_wallet_client");if(!u)return;if(u==="phantom"&&!co()&&D("LOGIN_FAILED_SCREEN"),!t.connectors)throw new C("Connector not initialized");let T=new Je(t.connectors,u);t.startAuthFlow(T),at(T),ee("AWAITING_CONNECTION")};Yn(()=>{n&&a&&l===null&&t.getAuthenticatedUser().then(c)},[n,a,l,t]);let Mr=()=>{d(!0),ee("LINK_WALLET_SCREEN")},Xn=async(f,u)=>{let T=t.connectors.getConnectorByAddress(u);if(!T)return N(u),Mr(),f;v({address:u,walletType:T.walletType,walletBranding:T.walletBranding,success:!1}),ee("SETTING_ACTIVE_WALLET");try{let G=await t.setActiveWallet(u,f);return v({address:u,walletType:T.walletType,walletBranding:T.walletBranding,success:!0}),G}catch(G){G instanceof C&&G.message==="Error setting the active wallet."&&(N(u),Mr()),v({address:u,walletType:T.walletType,walletBranding:T.walletBranding,success:!1,error:G.message})}return f},ec={ready:n,authenticated:a,user:l,walletConnectors:t.connectors,linkWallet:Mr,linkEmail:()=>{d(!0),ee("LINK_EMAIL_SCREEN")},linkPhone:()=>{d(!0),ee("LINK_PHONE_SCREEN")},linkGoogle:async()=>{await Lt.initLoginWithOAuth("google")},linkTwitter:async()=>{await Lt.initLoginWithOAuth("twitter")},linkDiscord:async()=>{await Lt.initLoginWithOAuth("discord")},linkGithub:async()=>{await Lt.initLoginWithOAuth("github")},linkApple:async()=>{await Lt.initLoginWithOAuth("apple")},login:()=>{if(n&&a){console.warn("Attempted to log in, but user is already logged in. Use a `link` helper instead.");return}D()},logout:async()=>{await t.logout(),c(null),s(!1),g(null),d(!1),r(!1)},getAccessToken:()=>t.getAccessToken(),getEthereumProvider:()=>t.connectors.getEthereumProvider(),getEthersProvider:()=>new nu(new ut(t.connectors.getEthereumProvider())),getWeb3jsProvider:()=>new Io(t.connectors.getEthereumProvider()),unlinkWallet:async f=>{let u=await t.unlinkWallet(f);c(u);let T=u.linkedAccounts.filter(G=>G.type==="wallet");if(u&&T&&T.length>0){let G=T[0];u=await Xn(u,G.address)}return c(u),u},unlinkEmail:async f=>{let u=await t.unlinkEmail(f);return c(u),u},unlinkPhone:async f=>{let u=await t.unlinkPhone(f);return c(u),u},unlinkGoogle:async f=>{let u=await t.unlinkOAuth("google",f);return c(u),u},unlinkTwitter:async f=>{let u=await t.unlinkOAuth("twitter",f);return c(u),u},unlinkDiscord:async f=>{let u=await t.unlinkOAuth("discord",f);return c(u),u},unlinkGithub:async f=>{let u=await t.unlinkOAuth("github",f);return c(u),u},unlinkApple:async f=>{let u=await t.unlinkOAuth("apple",f);return c(u),u},setActiveWallet:async f=>{if(!l)return;let u=await Xn(l,f);u&&c(u)},forkSession:()=>t.forkSession(),createWallet:()=>new Promise((f,u)=>{if(!a||!l){u(new Error("User must be authenticated before creating a Privy wallet"));return}if(Y(l)){u(new Error("Only one Privy wallet per user is currently allowed"));return}j(!0),ae({createWallet:{onSuccess:f,onFailure:u,callAuthOnSuccessOnClose:!1}}),ee("EMBEDDED_WALLET_SCREEN")}),signMessage:(f,u)=>new Promise((T,G)=>{if(!a||!l){G(new Error("User must be authenticated before signing with a Privy wallet"));return}if(!Y(l)){G(new Error("Must have a Privy wallet before signing"));return}if(typeof f!="string"||f.length<1){G(new Error("Message must be a non-empty string"));return}j(!0);let tc={message:f,onSuccess:T,onFailure:G,uiOptions:u||{}},oc={onCompleteNavigateTo:"SIGN_REQUEST_SCREEN",onFailure:G};ae({signMessage:tc,connectWallet:oc}),ee("EMBEDDED_WALLET_CONNECTING_SCREEN")}),exportWallet:()=>new Promise((f,u)=>{if(!a||!l){u(new Error("User must be authenticated before exporting their Privy wallet"));return}if(!Y(l)){u(new Error("Must have a Privy wallet before exporting"));return}j(!0);let G={onCompleteNavigateTo:"EMBEDDED_WALLET_KEY_EXPORT_SCREEN",onFailure:u},Qn={appId:e.appId,origin:t.apiUrl,onSuccess:f,onFailure:u};ae({keyExport:Qn,connectWallet:G}),ee("EMBEDDED_WALLET_CONNECTING_SCREEN")})},Lt=(()=>({isLinking:y,linkingHint:O,activeStatus:b,walletConnectionStatus:A,getAuthFlow:()=>t.authFlow,getAuthMeta:()=>{var f;return(f=t.authFlow)==null?void 0:f.meta},closePrivyModal:(f={shouldCallAuthOnSuccess:!0})=>{var T;let u=n&&a&&l;f.shouldCallAuthOnSuccess&&u&&((T=e.onSuccess)==null||T.call(e,l,h)),t.authFlow=void 0,N(null),g(null),d(!1),v(null),m(!1),r(!1),t.createAnalyticsEvent("modal_closed")},initLoginWithWallet:(f,u)=>{if(!t.connectors)throw new C("Connector not initialized");f||(f="metamask");let T=new Je(t.connectors,f,u);t.startAuthFlow(T),k({status:"connecting",connectError:null,connectRetry:()=>{at(T)}}),at(T)},loginWithWallet:async()=>{if(!(t.authFlow instanceof Je))throw new C("Must initialize SIWE flow first.");let f,u;y?(f=await t.link(),f&&(f=po(f))):{user:f,isNewUser:u}=await t.authenticate(),c(f||l||null),m(u||!1),s(!0)},initLoginWithOAuth:async f=>{t.startAuthFlow(new Ke(f));let u=await t.authFlow.getAuthorizationUrl();u&&u.url&&window.location.assign(u.url)},loginWithOAuth:async()=>{if(!(t.authFlow instanceof Ke))throw new C("Must initialize OAuth flow before calling loginWithOAuth");let f,u;n&&a?f=await t.link():{user:f,isNewUser:u}=await t.authenticate(),c(f),m(u||!1),s(!0)},initLoginWithEmail:async f=>{let u=new st(f);t.startAuthFlow(u),await u.sendCodeEmail()},initLoginWithSms:async f=>{let u=new lt(f);t.startAuthFlow(u),await u.sendSmsCode()},resendEmailCode:async()=>{var f;await((f=t.authFlow)==null?void 0:f.sendCodeEmail())},resendSmsCode:async()=>{var f;await((f=t.authFlow)==null?void 0:f.sendSmsCode())},loginWithCode:async f=>{if(t.authFlow instanceof st)t.authFlow.meta.emailCode=f.trim();else if(t.authFlow instanceof lt)t.authFlow.meta.smsCode=f.trim();else throw new C("Must initialize a passwordless code flow first");let u,T;y?u=await t.link():{user:u,isNewUser:T}=await t.authenticate(),c(u||l||null),m(T||!1),s(!0)},refreshUser:async()=>{let f=await t.getAuthenticatedUser();return c(f),f},walletProxy:q}))();return Xl(cn.Provider,{value:ec,children:[e.children,Xl(ln.Provider,{value:Lt,children:[So(Vl,{theme:{...$.appearance.palette||{}}}),So(Bi,{appConfig:$,options:St,data:ye,setModalData:ae,initialScreen:p,visible:o,authenticated:a,children:o&&So(ql,{})}),B&&So(Yl,{appId:e.appId,origin:t.apiUrl,onLoad:ge,onLoadFailed:()=>null})]})]})};export{ut as AsExternalProvider,so as ConnectorManager,uo as PrivyClient,lu as PrivyProvider,Le as PrivyProxyProvider,Or as VERSION,Ae as WalletConnector,au as getAccessToken,I as usePrivy};
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";var Ql=Object.create;var jo=Object.defineProperty;var ec=Object.getOwnPropertyDescriptor;var tc=Object.getOwnPropertyNames;var oc=Object.getPrototypeOf,rc=Object.prototype.hasOwnProperty;var hi=(e,t)=>()=>(e&&(t=e(e=0)),t);var ct=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),nn=(e,t)=>{for(var o in t)jo(e,o,{get:t[o],enumerable:!0})},gi=(e,t,o,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of tc(t))!rc.call(e,n)&&n!==o&&jo(e,n,{get:()=>t[n],enumerable:!(r=ec(t,n))||r.enumerable});return e};var S=(e,t,o)=>(o=e!=null?Ql(oc(e)):{},gi(t||!e||!e.__esModule?jo(o,"default",{value:e,enumerable:!0}):o,e)),an=e=>gi(jo({},"__esModule",{value:!0}),e);var lr=ct((g2,sr)=>{var ia,aa,sa,la,ca,da,pa,ua,fa,ir,gn,ma,ha,ga,no,ba,ya,va,wa,Ca,Ea,xa,_a,Pa,ar;(function(e){var t=typeof global=="object"?global:typeof self=="object"?self:typeof this=="object"?this:{};typeof define=="function"&&define.amd?define("tslib",["exports"],function(r){e(o(t,o(r)))}):typeof sr=="object"&&typeof sr.exports=="object"?e(o(t,o(sr.exports))):e(o(t));function o(r,n){return r!==t&&(typeof Object.create=="function"?Object.defineProperty(r,"__esModule",{value:!0}):r.__esModule=!0),function(i,a){return r[i]=n?n(i,a):a}}})(function(e){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(r[i]=n[i])};ia=function(r,n){if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");t(r,n);function i(){this.constructor=r}r.prototype=n===null?Object.create(n):(i.prototype=n.prototype,new i)},aa=Object.assign||function(r){for(var n,i=1,a=arguments.length;i<a;i++){n=arguments[i];for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(r[s]=n[s])}return r},sa=function(r,n){var i={};for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&n.indexOf(a)<0&&(i[a]=r[a]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,a=Object.getOwnPropertySymbols(r);s<a.length;s++)n.indexOf(a[s])<0&&Object.prototype.propertyIsEnumerable.call(r,a[s])&&(i[a[s]]=r[a[s]]);return i},la=function(r,n,i,a){var s=arguments.length,l=s<3?n:a===null?a=Object.getOwnPropertyDescriptor(n,i):a,c;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")l=Reflect.decorate(r,n,i,a);else for(var h=r.length-1;h>=0;h--)(c=r[h])&&(l=(s<3?c(l):s>3?c(n,i,l):c(n,i))||l);return s>3&&l&&Object.defineProperty(n,i,l),l},ca=function(r,n){return function(i,a){n(i,a,r)}},da=function(r,n){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(r,n)},pa=function(r,n,i,a){function s(l){return l instanceof i?l:new i(function(c){c(l)})}return new(i||(i=Promise))(function(l,c){function h(b){try{p(a.next(b))}catch(v){c(v)}}function m(b){try{p(a.throw(b))}catch(v){c(v)}}function p(b){b.done?l(b.value):s(b.value).then(h,m)}p((a=a.apply(r,n||[])).next())})},ua=function(r,n){var i={label:0,sent:function(){if(l[0]&1)throw l[1];return l[1]},trys:[],ops:[]},a,s,l,c;return c={next:h(0),throw:h(1),return:h(2)},typeof Symbol=="function"&&(c[Symbol.iterator]=function(){return this}),c;function h(p){return function(b){return m([p,b])}}function m(p){if(a)throw new TypeError("Generator is already executing.");for(;i;)try{if(a=1,s&&(l=p[0]&2?s.return:p[0]?s.throw||((l=s.return)&&l.call(s),0):s.next)&&!(l=l.call(s,p[1])).done)return l;switch(s=0,l&&(p=[p[0]&2,l.value]),p[0]){case 0:case 1:l=p;break;case 4:return i.label++,{value:p[1],done:!1};case 5:i.label++,s=p[1],p=[0];continue;case 7:p=i.ops.pop(),i.trys.pop();continue;default:if(l=i.trys,!(l=l.length>0&&l[l.length-1])&&(p[0]===6||p[0]===2)){i=0;continue}if(p[0]===3&&(!l||p[1]>l[0]&&p[1]<l[3])){i.label=p[1];break}if(p[0]===6&&i.label<l[1]){i.label=l[1],l=p;break}if(l&&i.label<l[2]){i.label=l[2],i.ops.push(p);break}l[2]&&i.ops.pop(),i.trys.pop();continue}p=n.call(r,i)}catch(b){p=[6,b],s=0}finally{a=l=0}if(p[0]&5)throw p[1];return{value:p[0]?p[1]:void 0,done:!0}}},fa=function(r,n){for(var i in r)i!=="default"&&!Object.prototype.hasOwnProperty.call(n,i)&&ar(n,r,i)},ar=Object.create?function(r,n,i,a){a===void 0&&(a=i);var s=Object.getOwnPropertyDescriptor(n,i);(!s||("get"in s?!n.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return n[i]}}),Object.defineProperty(r,a,s)}:function(r,n,i,a){a===void 0&&(a=i),r[a]=n[i]},ir=function(r){var n=typeof Symbol=="function"&&Symbol.iterator,i=n&&r[n],a=0;if(i)return i.call(r);if(r&&typeof r.length=="number")return{next:function(){return r&&a>=r.length&&(r=void 0),{value:r&&r[a++],done:!r}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")},gn=function(r,n){var i=typeof Symbol=="function"&&r[Symbol.iterator];if(!i)return r;var a=i.call(r),s,l=[],c;try{for(;(n===void 0||n-- >0)&&!(s=a.next()).done;)l.push(s.value)}catch(h){c={error:h}}finally{try{s&&!s.done&&(i=a.return)&&i.call(a)}finally{if(c)throw c.error}}return l},ma=function(){for(var r=[],n=0;n<arguments.length;n++)r=r.concat(gn(arguments[n]));return r},ha=function(){for(var r=0,n=0,i=arguments.length;n<i;n++)r+=arguments[n].length;for(var a=Array(r),s=0,n=0;n<i;n++)for(var l=arguments[n],c=0,h=l.length;c<h;c++,s++)a[s]=l[c];return a},ga=function(r,n,i){if(i||arguments.length===2)for(var a=0,s=n.length,l;a<s;a++)(l||!(a in n))&&(l||(l=Array.prototype.slice.call(n,0,a)),l[a]=n[a]);return r.concat(l||Array.prototype.slice.call(n))},no=function(r){return this instanceof no?(this.v=r,this):new no(r)},ba=function(r,n,i){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var a=i.apply(r,n||[]),s,l=[];return s={},c("next"),c("throw"),c("return"),s[Symbol.asyncIterator]=function(){return this},s;function c(d){a[d]&&(s[d]=function(y){return new Promise(function(C,T){l.push([d,y,C,T])>1||h(d,y)})})}function h(d,y){try{m(a[d](y))}catch(C){v(l[0][3],C)}}function m(d){d.value instanceof no?Promise.resolve(d.value.v).then(p,b):v(l[0][2],d)}function p(d){h("next",d)}function b(d){h("throw",d)}function v(d,y){d(y),l.shift(),l.length&&h(l[0][0],l[0][1])}},ya=function(r){var n,i;return n={},a("next"),a("throw",function(s){throw s}),a("return"),n[Symbol.iterator]=function(){return this},n;function a(s,l){n[s]=r[s]?function(c){return(i=!i)?{value:no(r[s](c)),done:s==="return"}:l?l(c):c}:l}},va=function(r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n=r[Symbol.asyncIterator],i;return n?n.call(r):(r=typeof ir=="function"?ir(r):r[Symbol.iterator](),i={},a("next"),a("throw"),a("return"),i[Symbol.asyncIterator]=function(){return this},i);function a(l){i[l]=r[l]&&function(c){return new Promise(function(h,m){c=r[l](c),s(h,m,c.done,c.value)})}}function s(l,c,h,m){Promise.resolve(m).then(function(p){l({value:p,done:h})},c)}},wa=function(r,n){return Object.defineProperty?Object.defineProperty(r,"raw",{value:n}):r.raw=n,r};var o=Object.create?function(r,n){Object.defineProperty(r,"default",{enumerable:!0,value:n})}:function(r,n){r.default=n};Ca=function(r){if(r&&r.__esModule)return r;var n={};if(r!=null)for(var i in r)i!=="default"&&Object.prototype.hasOwnProperty.call(r,i)&&ar(n,r,i);return o(n,r),n},Ea=function(r){return r&&r.__esModule?r:{default:r}},xa=function(r,n,i,a){if(i==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof n=="function"?r!==n||!a:!n.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return i==="m"?a:i==="a"?a.call(r):a?a.value:n.get(r)},_a=function(r,n,i,a,s){if(a==="m")throw new TypeError("Private method is not writable");if(a==="a"&&!s)throw new TypeError("Private accessor was defined without a setter");if(typeof n=="function"?r!==n||!s:!n.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return a==="a"?s.call(r,i):s?s.value=i:n.set(r,i),i},Pa=function(r,n){if(n===null||typeof n!="object"&&typeof n!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof r=="function"?n===r:r.has(n)},e("__extends",ia),e("__assign",aa),e("__rest",sa),e("__decorate",la),e("__param",ca),e("__metadata",da),e("__awaiter",pa),e("__generator",ua),e("__exportStar",fa),e("__createBinding",ar),e("__values",ir),e("__read",gn),e("__spread",ma),e("__spreadArrays",ha),e("__spreadArray",ga),e("__await",no),e("__asyncGenerator",ba),e("__asyncDelegator",ya),e("__asyncValues",va),e("__makeTemplateObject",wa),e("__importStar",Ca),e("__importDefault",Ea),e("__classPrivateFieldGet",xa),e("__classPrivateFieldSet",_a),e("__classPrivateFieldIn",Pa)})});var bn=ct(G=>{"use strict";Object.defineProperty(G,"__esModule",{value:!0});G.getLocalStorage=G.getLocalStorageOrThrow=G.getCrypto=G.getCryptoOrThrow=G.getLocation=G.getLocationOrThrow=G.getNavigator=G.getNavigatorOrThrow=G.getDocument=G.getDocumentOrThrow=G.getFromWindowOrThrow=G.getFromWindow=void 0;function Ht(e){let t;return typeof window<"u"&&typeof window[e]<"u"&&(t=window[e]),t}G.getFromWindow=Ht;function io(e){let t=Ht(e);if(!t)throw new Error(`${e} is not defined in Window`);return t}G.getFromWindowOrThrow=io;function uc(){return io("document")}G.getDocumentOrThrow=uc;function fc(){return Ht("document")}G.getDocument=fc;function mc(){return io("navigator")}G.getNavigatorOrThrow=mc;function hc(){return Ht("navigator")}G.getNavigator=hc;function gc(){return io("location")}G.getLocationOrThrow=gc;function bc(){return Ht("location")}G.getLocation=bc;function yc(){return io("crypto")}G.getCryptoOrThrow=yc;function vc(){return Ht("crypto")}G.getCrypto=vc;function wc(){return io("localStorage")}G.getLocalStorageOrThrow=wc;function Cc(){return Ht("localStorage")}G.getLocalStorage=Cc});var La=ct(cr=>{"use strict";Object.defineProperty(cr,"__esModule",{value:!0});cr.getWindowMetadata=void 0;var Sa=bn();function Ec(){let e,t;try{e=Sa.getDocumentOrThrow(),t=Sa.getLocationOrThrow()}catch{return null}function o(){let m=e.getElementsByTagName("link"),p=[];for(let b=0;b<m.length;b++){let v=m[b],d=v.getAttribute("rel");if(d&&d.toLowerCase().indexOf("icon")>-1){let y=v.getAttribute("href");if(y)if(y.toLowerCase().indexOf("https:")===-1&&y.toLowerCase().indexOf("http:")===-1&&y.indexOf("//")!==0){let C=t.protocol+"//"+t.host;if(y.indexOf("/")===0)C+=y;else{let T=t.pathname.split("/");T.pop(),C+=T.join("/")+"/"+y}p.push(C)}else if(y.indexOf("//")===0){let C=t.protocol+y;p.push(C)}else p.push(y)}}return p}function r(...m){let p=e.getElementsByTagName("meta");for(let b=0;b<p.length;b++){let v=p[b],d=["itemprop","property","name"].map(y=>v.getAttribute(y)).filter(y=>y?m.includes(y):!1);if(d.length&&d){let y=v.getAttribute("content");if(y)return y}}return""}function n(){let m=r("name","og:site_name","og:title","twitter:title");return m||(m=e.title),m}function i(){return r("description","og:description","twitter:description","keywords")}let a=n(),s=i(),l=t.origin,c=o();return{description:s,url:l,icons:c,name:a}}cr.getWindowMetadata=Ec});var Ua={};nn(Ua,{BotInfo:()=>Ia,BrowserInfo:()=>Ta,NodeInfo:()=>Wa,ReactNativeInfo:()=>Ma,SearchBotDeviceInfo:()=>Ra,browserName:()=>Ac,detect:()=>Lc,detectOS:()=>Na,getNodeVersion:()=>Da,parseUserAgent:()=>yn});function Lc(e){return e?yn(e):typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"?new Ma:typeof navigator<"u"?yn(navigator.userAgent):Da()}function Oa(e){return e!==""&&Sc.reduce(function(t,o){var r=o[0],n=o[1];if(t)return t;var i=n.exec(e);return!!i&&[r,i]},!1)}function Ac(e){var t=Oa(e);return t?t[0]:null}function yn(e){var t=Oa(e);if(!t)return null;var o=t[0],r=t[1];if(o==="searchbot")return new Ia;var n=r[1]&&r[1].split(/[._]/).slice(0,3);n?n.length<Aa&&(n=xc(n,kc(Aa-n.length))):n=[];var i=n.join("."),a=Na(e),s=Pc.exec(e);return s&&s[1]?new Ra(o,i,a,s[1]):new Ta(o,i,a)}function Na(e){for(var t=0,o=ka.length;t<o;t++){var r=ka[t],n=r[0],i=r[1],a=i.exec(e);if(a)return n}return null}function Da(){var e=typeof process<"u"&&process.version;return e?new Wa(process.version.slice(1)):null}function kc(e){for(var t=[],o=0;o<e;o++)t.push("0");return t}var xc,Ta,Wa,Ra,Ia,Ma,_c,Pc,Aa,Sc,ka,Ba=hi(()=>{xc=function(){for(var e=0,t=0,o=arguments.length;t<o;t++)e+=arguments[t].length;for(var r=Array(e),n=0,t=0;t<o;t++)for(var i=arguments[t],a=0,s=i.length;a<s;a++,n++)r[n]=i[a];return r},Ta=function(){function e(t,o,r){this.name=t,this.version=o,this.os=r,this.type="browser"}return e}(),Wa=function(){function e(t){this.version=t,this.type="node",this.name="node",this.os=process.platform}return e}(),Ra=function(){function e(t,o,r,n){this.name=t,this.version=o,this.os=r,this.bot=n,this.type="bot-device"}return e}(),Ia=function(){function e(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null}return e}(),Ma=function(){function e(){this.type="react-native",this.name="react-native",this.version=null,this.os=null}return e}(),_c=/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/,Pc=/(nuhk|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,Aa=3,Sc=[["aol",/AOLShield\/([0-9\._]+)/],["edge",/Edge\/([0-9\._]+)/],["edge-ios",/EdgiOS\/([0-9\._]+)/],["yandexbrowser",/YaBrowser\/([0-9\._]+)/],["kakaotalk",/KAKAOTALK\s([0-9\.]+)/],["samsung",/SamsungBrowser\/([0-9\.]+)/],["silk",/\bSilk\/([0-9._-]+)\b/],["miui",/MiuiBrowser\/([0-9\.]+)$/],["beaker",/BeakerBrowser\/([0-9\.]+)/],["edge-chromium",/EdgA?\/([0-9\.]+)/],["chromium-webview",/(?!Chrom.*OPR)wv\).*Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["chrome",/(?!Chrom.*OPR)Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["phantomjs",/PhantomJS\/([0-9\.]+)(:?\s|$)/],["crios",/CriOS\/([0-9\.]+)(:?\s|$)/],["firefox",/Firefox\/([0-9\.]+)(?:\s|$)/],["fxios",/FxiOS\/([0-9\.]+)/],["opera-mini",/Opera Mini.*Version\/([0-9\.]+)/],["opera",/Opera\/([0-9\.]+)(?:\s|$)/],["opera",/OPR\/([0-9\.]+)(:?\s|$)/],["ie",/Trident\/7\.0.*rv\:([0-9\.]+).*\).*Gecko$/],["ie",/MSIE\s([0-9\.]+);.*Trident\/[4-7].0/],["ie",/MSIE\s(7\.0)/],["bb10",/BB10;\sTouch.*Version\/([0-9\.]+)/],["android",/Android\s([0-9\.]+)/],["ios",/Version\/([0-9\._]+).*Mobile.*Safari.*/],["safari",/Version\/([0-9\._]+).*Safari/],["facebook",/FBAV\/([0-9\.]+)/],["instagram",/Instagram\s([0-9\.]+)/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Mobile/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Gecko\)$/],["searchbot",_c]],ka=[["iOS",/iP(hone|od|ad)/],["Android OS",/Android/],["BlackBerry OS",/BlackBerry|BB10/],["Windows Mobile",/IEMobile/],["Amazon OS",/Kindle/],["Windows 3.11",/Win16/],["Windows 95",/(Windows 95)|(Win95)|(Windows_95)/],["Windows 98",/(Windows 98)|(Win98)/],["Windows 2000",/(Windows NT 5.0)|(Windows 2000)/],["Windows XP",/(Windows NT 5.1)|(Windows XP)/],["Windows Server 2003",/(Windows NT 5.2)/],["Windows Vista",/(Windows NT 6.0)/],["Windows 7",/(Windows NT 6.1)/],["Windows 8",/(Windows NT 6.2)/],["Windows 8.1",/(Windows NT 6.3)/],["Windows 10",/(Windows NT 10.0)/],["Windows ME",/Windows ME/],["Open BSD",/OpenBSD/],["Sun OS",/SunOS/],["Chrome OS",/CrOS/],["Linux",/(Linux)|(X11)/],["Mac OS",/(Mac_PowerPC)|(Macintosh)/],["QNX",/QNX/],["BeOS",/BeOS/],["OS/2",/OS\/2/]]});var wn=ct(L=>{"use strict";Object.defineProperty(L,"__esModule",{value:!0});L.getClientMeta=L.getLocalStorage=L.getLocalStorageOrThrow=L.getCrypto=L.getCryptoOrThrow=L.getLocation=L.getLocationOrThrow=L.getNavigator=L.getNavigatorOrThrow=L.getDocument=L.getDocumentOrThrow=L.getFromWindowOrThrow=L.getFromWindow=L.isBrowser=L.isNode=L.isMobile=L.isIOS=L.isAndroid=L.detectOS=L.detectEnv=void 0;var Fa=lr(),Tc=Fa.__importStar(La()),Ve=Fa.__importStar(bn()),Wc=(Ba(),an(Ua));function vn(e){return(0,Wc.detect)(e)}L.detectEnv=vn;function dr(){let e=vn();return e&&e.os?e.os:void 0}L.detectOS=dr;function Ga(){let e=dr();return e?e.toLowerCase().includes("android"):!1}L.isAndroid=Ga;function Ha(){let e=dr();return e?e.toLowerCase().includes("ios")||e.toLowerCase().includes("mac")&&navigator.maxTouchPoints>1:!1}L.isIOS=Ha;function Rc(){return dr()?Ga()||Ha():!1}L.isMobile=Rc;function Va(){let e=vn();return e&&e.name?e.name.toLowerCase()==="node":!1}L.isNode=Va;function Ic(){return!Va()&&!!(0,L.getNavigator)()}L.isBrowser=Ic;L.getFromWindow=Ve.getFromWindow;L.getFromWindowOrThrow=Ve.getFromWindowOrThrow;L.getDocumentOrThrow=Ve.getDocumentOrThrow;L.getDocument=Ve.getDocument;L.getNavigatorOrThrow=Ve.getNavigatorOrThrow;L.getNavigator=Ve.getNavigator;L.getLocationOrThrow=Ve.getLocationOrThrow;L.getLocation=Ve.getLocation;L.getCryptoOrThrow=Ve.getCryptoOrThrow;L.getCrypto=Ve.getCrypto;L.getLocalStorageOrThrow=Ve.getLocalStorageOrThrow;L.getLocalStorage=Ve.getLocalStorage;function Mc(){return Tc.getWindowMetadata()}L.getClientMeta=Mc});var ja={};nn(ja,{safeJsonParse:()=>Oc,safeJsonStringify:()=>Nc});function Oc(e){if(typeof e!="string")throw new Error(`Cannot safe json parse value of type ${typeof e}`);try{return JSON.parse(e)}catch{return e}}function Nc(e){return typeof e=="string"?e:JSON.stringify(e)}var $a=hi(()=>{});var Cn=ct(ao=>{"use strict";Object.defineProperty(ao,"__esModule",{value:!0});ao.safeJsonStringify=ao.safeJsonParse=void 0;var Dc=lr(),za=Dc.__importStar(($a(),an(ja)));ao.safeJsonParse=za.safeJsonParse;ao.safeJsonStringify=za.safeJsonStringify});var xn=ct(_t=>{"use strict";Object.defineProperty(_t,"__esModule",{value:!0});_t.removeLocal=_t.getLocal=_t.setLocal=void 0;var qa=Cn(),En=wn();function Uc(e,t){let o=(0,qa.safeJsonStringify)(t),r=(0,En.getLocalStorage)();r&&r.setItem(e,o)}_t.setLocal=Uc;function Bc(e){let t=null,o=null,r=(0,En.getLocalStorage)();return r&&(o=r.getItem(e)),t=o&&(0,qa.safeJsonParse)(o),t}_t.getLocal=Bc;function Fc(e){let t=(0,En.getLocalStorage)();t&&t.removeItem(e)}_t.removeLocal=Fc});var Ka=ct(Ee=>{"use strict";Object.defineProperty(Ee,"__esModule",{value:!0});Ee.getMobileLinkRegistry=Ee.getMobileRegistryEntry=Ee.saveMobileLinkInfo=Ee.formatIOSMobile=Ee.mobileLinkChoiceKey=void 0;var Gc=xn();Ee.mobileLinkChoiceKey="WALLETCONNECT_DEEPLINK_CHOICE";function Hc(e,t){let o=encodeURIComponent(e);return t.universalLink?`${t.universalLink}/wc?uri=${o}`:t.deepLink?`${t.deepLink}${t.deepLink.endsWith(":")?"//":"/"}wc?uri=${o}`:""}Ee.formatIOSMobile=Hc;function Vc(e){let t=e.href.split("?")[0];(0,Gc.setLocal)(Ee.mobileLinkChoiceKey,Object.assign(Object.assign({},e),{href:t}))}Ee.saveMobileLinkInfo=Vc;function Za(e,t){return e.filter(o=>o.name.toLowerCase().includes(t.toLowerCase()))[0]}Ee.getMobileRegistryEntry=Za;function jc(e,t){let o=e;return t&&(o=t.map(r=>Za(e,r)).filter(Boolean)),o}Ee.getMobileLinkRegistry=jc});var Xa=ct(tt=>{"use strict";Object.defineProperty(tt,"__esModule",{value:!0});tt.formatMobileRegistry=tt.formatMobileRegistryEntry=tt.getDappRegistryUrl=tt.getWalletRegistryUrl=void 0;var Ja="https://registry.walletconnect.com";function $c(){return Ja+"/api/v2/wallets"}tt.getWalletRegistryUrl=$c;function zc(){return Ja+"/api/v2/dapps"}tt.getDappRegistryUrl=zc;function Ya(e,t="mobile"){var o;return{name:e.name||"",shortName:e.metadata.shortName||"",color:e.metadata.colors.primary||"",logo:(o=e.image_url.sm)!==null&&o!==void 0?o:"",universalLink:e[t].universal||"",deepLink:e[t].native||""}}tt.formatMobileRegistryEntry=Ya;function qc(e,t="mobile"){return Object.values(e).filter(o=>!!o[t].universal||!!o[t].native).map(o=>Ya(o,t))}tt.formatMobileRegistry=qc});var Qa=ct(Vt=>{"use strict";Object.defineProperty(Vt,"__esModule",{value:!0});var Ao=lr();Ao.__exportStar(wn(),Vt);Ao.__exportStar(Cn(),Vt);Ao.__exportStar(xn(),Vt);Ao.__exportStar(Ka(),Vt);Ao.__exportStar(Xa(),Vt)});var pp={};nn(pp,{AsExternalProvider:()=>Et,ConnectorManager:()=>so,PrivyClient:()=>co,PrivyProvider:()=>Zl,PrivyProxyProvider:()=>Be,VERSION:()=>qo,WalletConnector:()=>Fe,getAccessToken:()=>ql,usePrivy:()=>N});module.exports=an(pp);var zl=require("@ethersproject/providers"),te=require("react");var _=()=>{throw new Error("You need to wrap your application with the <PrivyProvider> initialized with your app id.")};var bi=S(require("axios")),Ke=class extends Error{constructor(o,r){super(o);r instanceof Error&&(this.cause=r)}toString(){return`${this.type}: ${this.message}${this.cause?` [cause: ${this.cause}]`:""}`}},Qt=class extends Ke{constructor(o,r,n,i){super(n,i);this.type=o;this.status=r}},x=class extends Ke{constructor(o,r){super(o,r);this.type="client_error"}};var Z=class extends Ke{constructor(o,r){super(o,r);this.type="connector_error"}},re=e=>{if(e instanceof Ke)return e;if(!bi.default.isAxiosError(e))return Oe(e);if(!e.response)return new Qt("api_error",null,e.message,e);let{type:t,message:o,error:r}=e.response.data;return new Qt(t||"ApiError",e.response.status,o||r,e)},Oe=e=>e instanceof Ke?e:e instanceof Error?new x(e.message,e):new x(`Internal error: ${e}`);var yi=()=>"/api/v1/sessions",vi=()=>"/api/v1/sessions/logout",wi=()=>"/api/v1/sessions/fork",Ci=()=>"/api/v1/sessions/fork/recover",Ei=()=>"/api/v1/siwe/init",xi=()=>"/api/v1/siwe/authenticate",_i=()=>"/api/v1/siwe/link",Pi=()=>"/api/v1/passwordless/init",Si=()=>"/api/v1/passwordless/authenticate",Li=()=>"/api/v1/passwordless/link",Ai=()=>"/api/v1/passwordless_sms/init",ki=()=>"/api/v1/passwordless_sms/authenticate",Ti=()=>"/api/v1/passwordless_sms/link",Wi=()=>"/api/v1/oauth/init",Ri=()=>"/api/v1/oauth/authenticate",Ii=()=>"/api/v1/oauth/link",Mi=()=>"/api/v1/siwe/unlink",Oi=()=>"/api/v1/passwordless/unlink",Ni=()=>"/api/v1/passwordless_sms/unlink",Di=()=>"/api/v1/oauth/unlink",Ui=()=>"/api/v1/analytics_events";var Nt=class{constructor(t){this.meta={email:t}}async authenticate(){if(!this.api)throw new x("Auth flow has no API instance");if(!this.meta.email||!this.meta.emailCode)throw new x("Email and email code must be set prior to calling authenticate.");try{let t=Si(),o=await this.api.post(t,{email:this.meta.email,code:this.meta.emailCode});return{user:o.data.user,token:o.data.token,refresh_token:o.data.refresh_token,is_new_user:o.data.is_new_user}}catch(t){throw re(t)}}async link(){if(!this.api)throw new x("Auth flow has no API instance");if(!this.meta.email||!this.meta.emailCode)throw new x("Email and email code must be set prior to calling authenticate.");try{let t=Li();return(await this.api.post(t,{email:this.meta.email,code:this.meta.emailCode})).data}catch(t){throw re(t)}}async sendCodeEmail(t){if(!this.api)throw new x("Auth flow has no API instance");if(t&&(this.meta.email=t),!this.meta.email)throw new x("Email must be set when initialzing authentication.");try{let o=Pi();return(await this.api.post(o,{email:this.meta.email})).data}catch(o){throw re(o)}}};var wt=class{constructor(t,o,r){this.meta={provider:t},this.meta.authorizationCode=o,this.meta.stateCode=r}isActive(){return!!(this.meta.authorizationCode&&this.meta.stateCode&&this.meta.provider)}async authenticate(){if(!this.api)throw new x("Auth flow has no API instance");if(!this.meta.authorizationCode||!this.meta.stateCode)throw new x("[OAuth AuthFlow] Authorization and state codes code must be set prior to calling authenticate.");if(this.meta.authorizationCode==="undefined")throw new x("User denied confirmation during OAuth flow");try{let t=Ri(),o=await this.api.post(t,{authorization_code:this.meta.authorizationCode,state_code:this.meta.stateCode});return{user:o.data.user,token:o.data.token,refresh_token:o.data.refresh_token,is_new_user:o.data.is_new_user}}catch(t){throw re(t)}}async link(){if(!this.api)throw new x("Auth flow has no API instance");if(!this.meta.authorizationCode||!this.meta.stateCode)throw new x("[OAuth AuthFlow] Authorization and state codes code must be set prior to calling link.");if(this.meta.authorizationCode==="undefined")throw new x("User denied confirmation during OAuth flow");try{let t=Ii();return(await this.api.post(t,{authorization_code:this.meta.authorizationCode,state_code:this.meta.stateCode})).data}catch(t){throw re(t)}}async getAuthorizationUrl(){if(!this.api)throw new x("Auth flow has no API instance");if(!this.meta.provider)throw new x("Provider must be set when initialzing OAuth authentication.");try{let t=Wi();return(await this.api.post(t,{provider:this.meta.provider,redirect_to:window.location.href})).data}catch(t){throw re(t)}}};var Ct=class{constructor(t,o,r){this._meta={walletType:o,walletId:r},this.connectors=t,this.walletConnector=this.connectors.createWalletConnector(o,null,r)}get meta(){return{...this._meta,walletName:this.walletConnector.walletBranding.name,walletIcon:this.walletConnector.walletBranding.icon}}async authenticate(){if(!this.api)throw new x("Auth flow has no API instance");try{let{message:t,signature:o}=await this.sign(),r=await this.api.post(xi(),{message:t,signature:o});return this.connectors.addWalletConnector(this.walletConnector),await this.connectors.setActiveWallet(this.walletConnector.address)||console.warn("Failed to set active wallet"),{user:r.data.user,token:r.data.token,refresh_token:r.data.refresh_token,is_new_user:r.data.is_new_user}}catch(t){throw re(t)}}async link(){if(!this.api)throw new x("Auth flow has no API instance");try{let{message:t,signature:o}=await this.sign(),r=await this.api.post(_i(),{message:t,signature:o});return this.connectors.addWalletConnector(this.walletConnector),await this.connectors.setActiveWallet(this.walletConnector.address)||console.warn("Failed to set active wallet"),r.data}catch(t){throw re(t)}}async promptConnect(){if(!this.api)throw new x("Auth flow has no API instance");let t=await this.walletConnector.connect({showPrompt:!0});return await this.buildSiweMessage(t),t}async sign(){if(!this.api)throw new x("Auth flow has no API instance");if(!this.preparedMessage){let o=await this.walletConnector.connect({showPrompt:!1});await this.buildSiweMessage(o)}if(!this.preparedMessage)throw new x("Could not prepare SIWE message");let t=await this.walletConnector.sign(this.preparedMessage);return{message:this.preparedMessage,signature:t}}async buildSiweMessage(t){if(!this.api)throw new x("Auth flow has no API instance");let o=t.address,r=t.chainId,n=await this.api.post(Ei(),{address:o});return this.preparedMessage=this.walletConnector.prepareMessage(r,o,n.data.nonce),this.preparedMessage}};var Dt=class{constructor(t){this.meta={phoneNumber:t}}async authenticate(){if(!this.api)throw new x("Auth flow has no API instance");if(!this.meta.phoneNumber||!this.meta.smsCode)throw new x("phone number and sms code must be set prior to calling authenticate.");try{let t=ki(),o=await this.api.post(t,{phoneNumber:this.meta.phoneNumber,code:this.meta.smsCode});return{user:o.data.user,token:o.data.token,refresh_token:o.data.refresh_token,is_new_user:o.data.is_new_user}}catch(t){throw re(t)}}async link(){if(!this.api)throw new x("Auth flow has no API instance");if(!this.meta.phoneNumber||!this.meta.smsCode)throw new x("phone number and sms code must be set prior to calling authenticate.");try{let t=Ti();return(await this.api.post(t,{phoneNumber:this.meta.phoneNumber,code:this.meta.smsCode})).data}catch(t){throw re(t)}}async sendSmsCode(t){if(!this.api)throw new x("Auth flow has no API instance");if(t&&(this.meta.phoneNumber=t),!this.meta.phoneNumber)throw new x("phone nNumber must be set when initialzing authentication.");try{let o=Ai();return(await this.api.post(o,{phoneNumber:this.meta.phoneNumber})).data}catch(o){throw re(o)}}};var as=require("@ethersproject/address");var Bi="1.22.0-beta.1";var $o="4df5e2316331463a9130964bd6078dfa",zo="https://auth.privy.io",Fi=1e4,Ne=1400,qo=Bi;var eo="privy:token",Zo="privy:refresh_token",So="privy:session_transfer_token",Ko="privy:connectors",sn="walletconnect",Gi=3e4;var ln=class{constructor(){this._cache={}}get(t){return this._cache[t]}put(t,o){o!==void 0?this._cache[t]=o:this.del(t)}del(t){delete this._cache[t]}getKeys(){return Object.keys(this._cache)}},cn=class{get(t){let o=localStorage.getItem(t);return o===null?void 0:JSON.parse(o)}put(t,o){o!==void 0?localStorage.setItem(t,JSON.stringify(o)):this.del(t)}del(t){localStorage.removeItem(t)}getKeys(){return Object.entries(localStorage).map(([t])=>t)}};function ic(){return typeof window<"u"&&window.localStorage?new cn:new ln}var K=ic();var $i=S(require("@coinbase/wallet-sdk")),zi=require("@ethersproject/address");var Lo=require("react/jsx-runtime"),De=({style:e,...t})=>(0,Lo.jsxs)("svg",{width:"1024",height:"1024",viewBox:"0 0 1024 1024",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{height:"28px",width:"28px",...e},...t,children:[(0,Lo.jsx)("rect",{width:"1024",height:"1024",fill:"#0052FF",rx:100,ry:100}),(0,Lo.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M152 512C152 710.823 313.177 872 512 872C710.823 872 872 710.823 872 512C872 313.177 710.823 152 512 152C313.177 152 152 313.177 152 512ZM420 396C406.745 396 396 406.745 396 420V604C396 617.255 406.745 628 420 628H604C617.255 628 628 617.255 628 604V420C628 406.745 617.255 396 604 396H420Z",fill:"white"})]});var Vi=require("@ethersproject/address"),ji=require("@ethersproject/providers");var Hi=require("@ethersproject/logger");var to=class extends Z{constructor(){super("Wallet timeout");this.type="wallet_error"}},Bt=class extends Z{constructor(){super("User rejected connection");this.type="wallet_error"}},Ue=e=>{if(e instanceof Z)return e;if((e==null?void 0:e.code)&&(e==null?void 0:e.reason)){let t=new oo(e);return e.code===Hi.ErrorCode.ACTION_REJECTED&&(t.details=Ut.E4001_USER_REJECTED_REQUEST),t}return e!=null&&e.code?new oo(e):new Z("Unknown connector error",e)},dn=class extends Ke{constructor(o,r,n){super(o);this.type="provider_error";this.code=r,this.data=n}},oo=class extends dn{constructor(o){var i,a,s;let r=o;super(r.message,r.code,r.data);let n=Object.values(Ut).find(l=>l.eipCode===r.code);this.details=n||Ut.UNKNOWN_ERROR,r.code===-32002&&((i=r.message)!=null&&i.includes("already pending for origin")?(a=r.message)!=null&&a.includes("wallet_requestPermissions")?this.details=Ut.E32002_CONNECTION_ALREADY_PENDING:this.details=Ut.E32002_REQUEST_ALREADY_PENDING:(s=r.message)!=null&&s.includes("Already processing")&&r.message.includes("eth_requestAccounts")&&(this.details=Ut.E32002_WALLET_LOCKED))}},ac={ERROR_USER_EXISTS:{message:"User already exists for this address",detail:"Try another address!",retryable:!1},ERROR_TIMED_OUT:{message:"Wallet request timed out",detail:"Please try connecting again.",retryable:!0},ERROR_WALLET_CONNECTION:{message:"Could not log in with wallet",detail:"Please try connecting again.",retryable:!0},ERROR_USER_REJECTED_CONNECTION:{message:"You rejected the request",detail:"Please try connecting again.",retryable:!0}},sc={E32002_CONNECTION_ALREADY_PENDING:{eipCode:-32002,message:"Connection request already pending",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E32002_REQUEST_ALREADY_PENDING:{eipCode:-32002,message:"Resource request already pending",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E32002_WALLET_LOCKED:{eipCode:-32002,message:"Wallet might be locked",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E4001_USER_REJECTED_REQUEST:{eipCode:4001,message:"Signature rejected",detail:"Please try signing again.",retryable:!0}},lc={E4001_DEFAULT_USER_REJECTED_REQUEST:{eipCode:4001,message:"User Rejected Request",detail:"The user rejected the request.",default:!0,retryable:!0},E4100_DEFAULT_UNAUTHORIZED:{eipCode:4100,message:"Unauthorized",detail:"The requested method and/or account has not been authorized by the user.",default:!0,retryable:!1},E4200_DEFAULT_UNSUPPORTED_METHOD:{eipCode:4200,message:"Unsupported Method",detail:"The Provider does not support the requested method.",default:!0,retryable:!1},E4900_DEFAULT_DISCONNECTED:{eipCode:4900,message:"Disconnected",detail:"The Provider is disconnected from all chains.",default:!0,retryable:!0},E4901_DEFAULT_CHAIN_DISCONNECTED:{eipCode:4901,message:"Chain Disconnected",detail:"The Provider is not connected to the requested chain.",default:!0,retryable:!0},E32700_DEFAULT_PARSE_ERROR:{eipCode:-32700,message:"Parse error",detail:"Invalid JSON",default:!0,retryable:!1},E32600_DEFAULT_INVALID_REQUEST:{eipCode:-32600,message:"Invalid request",detail:"JSON is not a valid request object",default:!0,retryable:!1},E32601_DEFAULT_METHOD_NOT_FOUND:{eipCode:-32601,message:"Method not found",detail:"Method does not exist",default:!0,retryable:!1},E32602_DEFAULT_INVALID_PARAMS:{eipCode:-32602,message:"Invalid params",detail:"Invalid method parameters",default:!0,retryable:!1},E32603_DEFAULT_INTERNAL_ERROR:{eipCode:-32603,message:"Internal error",detail:"Internal JSON-RPC error",default:!0,retryable:!0},E32000_DEFAULT_INVALID_INPUT:{eipCode:-32e3,message:"Invalid input",detail:"Missing or invalid parameters",default:!0,retryable:!1},E32001_DEFAULT_RESOURCE_NOT_FOUND:{eipCode:-32001,message:"Resource not found",detail:"Requested resource not found",default:!0,retryable:!1},E32002_DEFAULT_RESOURCE_UNAVAILABLE:{eipCode:-32002,message:"Resource unavailable",detail:"Requested resource not available",default:!0,retryable:!0},E32003_DEFAULT_TRANSACTION_REJECTED:{eipCode:-32003,message:"Transaction rejected",detail:"Transaction creation failed",default:!0,retryable:!0},E32004_DEFAULT_METHOD_NOT_SUPPORTED:{eipCode:-32004,message:"Method not supported",detail:"Method is not implemented",default:!0,retryable:!1},E32005_DEFAULT_LIMIT_EXCEEDED:{eipCode:-32005,message:"Limit exceeded",detail:"Request exceeds defined limit",default:!0,retryable:!1},E32006_DEFAULT_JSON_RPC_VERSION_NOT_SUPPORTED:{eipCode:-32006,message:"JSON-RPC version not supported",detail:"Version of JSON-RPC protocol is not supported",default:!0,retryable:!1}},Ut={UNKNOWN_ERROR:{eipCode:0,message:"Unknown error",detail:"Unknown error",retryable:!0},...lc,...sc},Ft={...ac,...Ut};var cc=12e4,pn=(e=new to,t=cc)=>new Promise((o,r)=>setTimeout(()=>{r(e)},t)),Be=class{constructor(t){this.removeListener=(t,o)=>{if(this.walletProvider)return this.walletProvider.removeListener(t,o)};this.setWalletProvider=t=>{this.walletProvider=t,this._subscriptions.forEach(o=>{var r;(r=this.walletProvider)==null||r.on(o.eventName,o.listener)})};this.walletProvider=t,this._subscriptions=[]}on(t,o){if(this.walletProvider)return this.walletProvider.on(t,o);this._subscriptions.push({eventName:t,listener:o})}async request(t){if(!this.walletProvider)throw new Z(`A wallet request of type ${t.method} was made before setting a wallet provider.`);return Promise.race([this.walletProvider.request(t),pn()]).catch(o=>{throw Ue(o)})}},Et=class extends Be{constructor(o){super(o)}},Jo=class extends Be{constructor(t){super(t)}sendAsync(t,o){throw new Error("sendAsync is no longer supported by EIP-1193. Use the request method instead.")}};var Fe=class{constructor(t,o,r){this.createSiweMessage=(t,o,r,n,i,a,s)=>`${r} wants you to sign in with your Ethereum account:
1
+ "use strict";var Ql=Object.create;var jo=Object.defineProperty;var ec=Object.getOwnPropertyDescriptor;var tc=Object.getOwnPropertyNames;var oc=Object.getPrototypeOf,rc=Object.prototype.hasOwnProperty;var hi=(e,t)=>()=>(e&&(t=e(e=0)),t);var ct=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),nn=(e,t)=>{for(var o in t)jo(e,o,{get:t[o],enumerable:!0})},gi=(e,t,o,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of tc(t))!rc.call(e,n)&&n!==o&&jo(e,n,{get:()=>t[n],enumerable:!(r=ec(t,n))||r.enumerable});return e};var S=(e,t,o)=>(o=e!=null?Ql(oc(e)):{},gi(t||!e||!e.__esModule?jo(o,"default",{value:e,enumerable:!0}):o,e)),an=e=>gi(jo({},"__esModule",{value:!0}),e);var lr=ct((g2,sr)=>{var ia,aa,sa,la,ca,da,pa,ua,fa,ir,gn,ma,ha,ga,no,ba,ya,va,wa,Ca,Ea,xa,_a,Pa,ar;(function(e){var t=typeof global=="object"?global:typeof self=="object"?self:typeof this=="object"?this:{};typeof define=="function"&&define.amd?define("tslib",["exports"],function(r){e(o(t,o(r)))}):typeof sr=="object"&&typeof sr.exports=="object"?e(o(t,o(sr.exports))):e(o(t));function o(r,n){return r!==t&&(typeof Object.create=="function"?Object.defineProperty(r,"__esModule",{value:!0}):r.__esModule=!0),function(i,a){return r[i]=n?n(i,a):a}}})(function(e){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(r[i]=n[i])};ia=function(r,n){if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");t(r,n);function i(){this.constructor=r}r.prototype=n===null?Object.create(n):(i.prototype=n.prototype,new i)},aa=Object.assign||function(r){for(var n,i=1,a=arguments.length;i<a;i++){n=arguments[i];for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(r[s]=n[s])}return r},sa=function(r,n){var i={};for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&n.indexOf(a)<0&&(i[a]=r[a]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,a=Object.getOwnPropertySymbols(r);s<a.length;s++)n.indexOf(a[s])<0&&Object.prototype.propertyIsEnumerable.call(r,a[s])&&(i[a[s]]=r[a[s]]);return i},la=function(r,n,i,a){var s=arguments.length,l=s<3?n:a===null?a=Object.getOwnPropertyDescriptor(n,i):a,c;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")l=Reflect.decorate(r,n,i,a);else for(var h=r.length-1;h>=0;h--)(c=r[h])&&(l=(s<3?c(l):s>3?c(n,i,l):c(n,i))||l);return s>3&&l&&Object.defineProperty(n,i,l),l},ca=function(r,n){return function(i,a){n(i,a,r)}},da=function(r,n){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(r,n)},pa=function(r,n,i,a){function s(l){return l instanceof i?l:new i(function(c){c(l)})}return new(i||(i=Promise))(function(l,c){function h(b){try{p(a.next(b))}catch(v){c(v)}}function m(b){try{p(a.throw(b))}catch(v){c(v)}}function p(b){b.done?l(b.value):s(b.value).then(h,m)}p((a=a.apply(r,n||[])).next())})},ua=function(r,n){var i={label:0,sent:function(){if(l[0]&1)throw l[1];return l[1]},trys:[],ops:[]},a,s,l,c;return c={next:h(0),throw:h(1),return:h(2)},typeof Symbol=="function"&&(c[Symbol.iterator]=function(){return this}),c;function h(p){return function(b){return m([p,b])}}function m(p){if(a)throw new TypeError("Generator is already executing.");for(;i;)try{if(a=1,s&&(l=p[0]&2?s.return:p[0]?s.throw||((l=s.return)&&l.call(s),0):s.next)&&!(l=l.call(s,p[1])).done)return l;switch(s=0,l&&(p=[p[0]&2,l.value]),p[0]){case 0:case 1:l=p;break;case 4:return i.label++,{value:p[1],done:!1};case 5:i.label++,s=p[1],p=[0];continue;case 7:p=i.ops.pop(),i.trys.pop();continue;default:if(l=i.trys,!(l=l.length>0&&l[l.length-1])&&(p[0]===6||p[0]===2)){i=0;continue}if(p[0]===3&&(!l||p[1]>l[0]&&p[1]<l[3])){i.label=p[1];break}if(p[0]===6&&i.label<l[1]){i.label=l[1],l=p;break}if(l&&i.label<l[2]){i.label=l[2],i.ops.push(p);break}l[2]&&i.ops.pop(),i.trys.pop();continue}p=n.call(r,i)}catch(b){p=[6,b],s=0}finally{a=l=0}if(p[0]&5)throw p[1];return{value:p[0]?p[1]:void 0,done:!0}}},fa=function(r,n){for(var i in r)i!=="default"&&!Object.prototype.hasOwnProperty.call(n,i)&&ar(n,r,i)},ar=Object.create?function(r,n,i,a){a===void 0&&(a=i);var s=Object.getOwnPropertyDescriptor(n,i);(!s||("get"in s?!n.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return n[i]}}),Object.defineProperty(r,a,s)}:function(r,n,i,a){a===void 0&&(a=i),r[a]=n[i]},ir=function(r){var n=typeof Symbol=="function"&&Symbol.iterator,i=n&&r[n],a=0;if(i)return i.call(r);if(r&&typeof r.length=="number")return{next:function(){return r&&a>=r.length&&(r=void 0),{value:r&&r[a++],done:!r}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")},gn=function(r,n){var i=typeof Symbol=="function"&&r[Symbol.iterator];if(!i)return r;var a=i.call(r),s,l=[],c;try{for(;(n===void 0||n-- >0)&&!(s=a.next()).done;)l.push(s.value)}catch(h){c={error:h}}finally{try{s&&!s.done&&(i=a.return)&&i.call(a)}finally{if(c)throw c.error}}return l},ma=function(){for(var r=[],n=0;n<arguments.length;n++)r=r.concat(gn(arguments[n]));return r},ha=function(){for(var r=0,n=0,i=arguments.length;n<i;n++)r+=arguments[n].length;for(var a=Array(r),s=0,n=0;n<i;n++)for(var l=arguments[n],c=0,h=l.length;c<h;c++,s++)a[s]=l[c];return a},ga=function(r,n,i){if(i||arguments.length===2)for(var a=0,s=n.length,l;a<s;a++)(l||!(a in n))&&(l||(l=Array.prototype.slice.call(n,0,a)),l[a]=n[a]);return r.concat(l||Array.prototype.slice.call(n))},no=function(r){return this instanceof no?(this.v=r,this):new no(r)},ba=function(r,n,i){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var a=i.apply(r,n||[]),s,l=[];return s={},c("next"),c("throw"),c("return"),s[Symbol.asyncIterator]=function(){return this},s;function c(d){a[d]&&(s[d]=function(y){return new Promise(function(C,T){l.push([d,y,C,T])>1||h(d,y)})})}function h(d,y){try{m(a[d](y))}catch(C){v(l[0][3],C)}}function m(d){d.value instanceof no?Promise.resolve(d.value.v).then(p,b):v(l[0][2],d)}function p(d){h("next",d)}function b(d){h("throw",d)}function v(d,y){d(y),l.shift(),l.length&&h(l[0][0],l[0][1])}},ya=function(r){var n,i;return n={},a("next"),a("throw",function(s){throw s}),a("return"),n[Symbol.iterator]=function(){return this},n;function a(s,l){n[s]=r[s]?function(c){return(i=!i)?{value:no(r[s](c)),done:s==="return"}:l?l(c):c}:l}},va=function(r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n=r[Symbol.asyncIterator],i;return n?n.call(r):(r=typeof ir=="function"?ir(r):r[Symbol.iterator](),i={},a("next"),a("throw"),a("return"),i[Symbol.asyncIterator]=function(){return this},i);function a(l){i[l]=r[l]&&function(c){return new Promise(function(h,m){c=r[l](c),s(h,m,c.done,c.value)})}}function s(l,c,h,m){Promise.resolve(m).then(function(p){l({value:p,done:h})},c)}},wa=function(r,n){return Object.defineProperty?Object.defineProperty(r,"raw",{value:n}):r.raw=n,r};var o=Object.create?function(r,n){Object.defineProperty(r,"default",{enumerable:!0,value:n})}:function(r,n){r.default=n};Ca=function(r){if(r&&r.__esModule)return r;var n={};if(r!=null)for(var i in r)i!=="default"&&Object.prototype.hasOwnProperty.call(r,i)&&ar(n,r,i);return o(n,r),n},Ea=function(r){return r&&r.__esModule?r:{default:r}},xa=function(r,n,i,a){if(i==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof n=="function"?r!==n||!a:!n.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return i==="m"?a:i==="a"?a.call(r):a?a.value:n.get(r)},_a=function(r,n,i,a,s){if(a==="m")throw new TypeError("Private method is not writable");if(a==="a"&&!s)throw new TypeError("Private accessor was defined without a setter");if(typeof n=="function"?r!==n||!s:!n.has(r))throw new TypeError("Cannot write private member to an object whose class did not declare it");return a==="a"?s.call(r,i):s?s.value=i:n.set(r,i),i},Pa=function(r,n){if(n===null||typeof n!="object"&&typeof n!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof r=="function"?n===r:r.has(n)},e("__extends",ia),e("__assign",aa),e("__rest",sa),e("__decorate",la),e("__param",ca),e("__metadata",da),e("__awaiter",pa),e("__generator",ua),e("__exportStar",fa),e("__createBinding",ar),e("__values",ir),e("__read",gn),e("__spread",ma),e("__spreadArrays",ha),e("__spreadArray",ga),e("__await",no),e("__asyncGenerator",ba),e("__asyncDelegator",ya),e("__asyncValues",va),e("__makeTemplateObject",wa),e("__importStar",Ca),e("__importDefault",Ea),e("__classPrivateFieldGet",xa),e("__classPrivateFieldSet",_a),e("__classPrivateFieldIn",Pa)})});var bn=ct(G=>{"use strict";Object.defineProperty(G,"__esModule",{value:!0});G.getLocalStorage=G.getLocalStorageOrThrow=G.getCrypto=G.getCryptoOrThrow=G.getLocation=G.getLocationOrThrow=G.getNavigator=G.getNavigatorOrThrow=G.getDocument=G.getDocumentOrThrow=G.getFromWindowOrThrow=G.getFromWindow=void 0;function Ht(e){let t;return typeof window<"u"&&typeof window[e]<"u"&&(t=window[e]),t}G.getFromWindow=Ht;function io(e){let t=Ht(e);if(!t)throw new Error(`${e} is not defined in Window`);return t}G.getFromWindowOrThrow=io;function uc(){return io("document")}G.getDocumentOrThrow=uc;function fc(){return Ht("document")}G.getDocument=fc;function mc(){return io("navigator")}G.getNavigatorOrThrow=mc;function hc(){return Ht("navigator")}G.getNavigator=hc;function gc(){return io("location")}G.getLocationOrThrow=gc;function bc(){return Ht("location")}G.getLocation=bc;function yc(){return io("crypto")}G.getCryptoOrThrow=yc;function vc(){return Ht("crypto")}G.getCrypto=vc;function wc(){return io("localStorage")}G.getLocalStorageOrThrow=wc;function Cc(){return Ht("localStorage")}G.getLocalStorage=Cc});var La=ct(cr=>{"use strict";Object.defineProperty(cr,"__esModule",{value:!0});cr.getWindowMetadata=void 0;var Sa=bn();function Ec(){let e,t;try{e=Sa.getDocumentOrThrow(),t=Sa.getLocationOrThrow()}catch{return null}function o(){let m=e.getElementsByTagName("link"),p=[];for(let b=0;b<m.length;b++){let v=m[b],d=v.getAttribute("rel");if(d&&d.toLowerCase().indexOf("icon")>-1){let y=v.getAttribute("href");if(y)if(y.toLowerCase().indexOf("https:")===-1&&y.toLowerCase().indexOf("http:")===-1&&y.indexOf("//")!==0){let C=t.protocol+"//"+t.host;if(y.indexOf("/")===0)C+=y;else{let T=t.pathname.split("/");T.pop(),C+=T.join("/")+"/"+y}p.push(C)}else if(y.indexOf("//")===0){let C=t.protocol+y;p.push(C)}else p.push(y)}}return p}function r(...m){let p=e.getElementsByTagName("meta");for(let b=0;b<p.length;b++){let v=p[b],d=["itemprop","property","name"].map(y=>v.getAttribute(y)).filter(y=>y?m.includes(y):!1);if(d.length&&d){let y=v.getAttribute("content");if(y)return y}}return""}function n(){let m=r("name","og:site_name","og:title","twitter:title");return m||(m=e.title),m}function i(){return r("description","og:description","twitter:description","keywords")}let a=n(),s=i(),l=t.origin,c=o();return{description:s,url:l,icons:c,name:a}}cr.getWindowMetadata=Ec});var Ua={};nn(Ua,{BotInfo:()=>Ia,BrowserInfo:()=>Ta,NodeInfo:()=>Wa,ReactNativeInfo:()=>Ma,SearchBotDeviceInfo:()=>Ra,browserName:()=>Ac,detect:()=>Lc,detectOS:()=>Na,getNodeVersion:()=>Da,parseUserAgent:()=>yn});function Lc(e){return e?yn(e):typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"?new Ma:typeof navigator<"u"?yn(navigator.userAgent):Da()}function Oa(e){return e!==""&&Sc.reduce(function(t,o){var r=o[0],n=o[1];if(t)return t;var i=n.exec(e);return!!i&&[r,i]},!1)}function Ac(e){var t=Oa(e);return t?t[0]:null}function yn(e){var t=Oa(e);if(!t)return null;var o=t[0],r=t[1];if(o==="searchbot")return new Ia;var n=r[1]&&r[1].split(/[._]/).slice(0,3);n?n.length<Aa&&(n=xc(n,kc(Aa-n.length))):n=[];var i=n.join("."),a=Na(e),s=Pc.exec(e);return s&&s[1]?new Ra(o,i,a,s[1]):new Ta(o,i,a)}function Na(e){for(var t=0,o=ka.length;t<o;t++){var r=ka[t],n=r[0],i=r[1],a=i.exec(e);if(a)return n}return null}function Da(){var e=typeof process<"u"&&process.version;return e?new Wa(process.version.slice(1)):null}function kc(e){for(var t=[],o=0;o<e;o++)t.push("0");return t}var xc,Ta,Wa,Ra,Ia,Ma,_c,Pc,Aa,Sc,ka,Ba=hi(()=>{xc=function(){for(var e=0,t=0,o=arguments.length;t<o;t++)e+=arguments[t].length;for(var r=Array(e),n=0,t=0;t<o;t++)for(var i=arguments[t],a=0,s=i.length;a<s;a++,n++)r[n]=i[a];return r},Ta=function(){function e(t,o,r){this.name=t,this.version=o,this.os=r,this.type="browser"}return e}(),Wa=function(){function e(t){this.version=t,this.type="node",this.name="node",this.os=process.platform}return e}(),Ra=function(){function e(t,o,r,n){this.name=t,this.version=o,this.os=r,this.bot=n,this.type="bot-device"}return e}(),Ia=function(){function e(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null}return e}(),Ma=function(){function e(){this.type="react-native",this.name="react-native",this.version=null,this.os=null}return e}(),_c=/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/,Pc=/(nuhk|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,Aa=3,Sc=[["aol",/AOLShield\/([0-9\._]+)/],["edge",/Edge\/([0-9\._]+)/],["edge-ios",/EdgiOS\/([0-9\._]+)/],["yandexbrowser",/YaBrowser\/([0-9\._]+)/],["kakaotalk",/KAKAOTALK\s([0-9\.]+)/],["samsung",/SamsungBrowser\/([0-9\.]+)/],["silk",/\bSilk\/([0-9._-]+)\b/],["miui",/MiuiBrowser\/([0-9\.]+)$/],["beaker",/BeakerBrowser\/([0-9\.]+)/],["edge-chromium",/EdgA?\/([0-9\.]+)/],["chromium-webview",/(?!Chrom.*OPR)wv\).*Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["chrome",/(?!Chrom.*OPR)Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["phantomjs",/PhantomJS\/([0-9\.]+)(:?\s|$)/],["crios",/CriOS\/([0-9\.]+)(:?\s|$)/],["firefox",/Firefox\/([0-9\.]+)(?:\s|$)/],["fxios",/FxiOS\/([0-9\.]+)/],["opera-mini",/Opera Mini.*Version\/([0-9\.]+)/],["opera",/Opera\/([0-9\.]+)(?:\s|$)/],["opera",/OPR\/([0-9\.]+)(:?\s|$)/],["ie",/Trident\/7\.0.*rv\:([0-9\.]+).*\).*Gecko$/],["ie",/MSIE\s([0-9\.]+);.*Trident\/[4-7].0/],["ie",/MSIE\s(7\.0)/],["bb10",/BB10;\sTouch.*Version\/([0-9\.]+)/],["android",/Android\s([0-9\.]+)/],["ios",/Version\/([0-9\._]+).*Mobile.*Safari.*/],["safari",/Version\/([0-9\._]+).*Safari/],["facebook",/FBAV\/([0-9\.]+)/],["instagram",/Instagram\s([0-9\.]+)/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Mobile/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Gecko\)$/],["searchbot",_c]],ka=[["iOS",/iP(hone|od|ad)/],["Android OS",/Android/],["BlackBerry OS",/BlackBerry|BB10/],["Windows Mobile",/IEMobile/],["Amazon OS",/Kindle/],["Windows 3.11",/Win16/],["Windows 95",/(Windows 95)|(Win95)|(Windows_95)/],["Windows 98",/(Windows 98)|(Win98)/],["Windows 2000",/(Windows NT 5.0)|(Windows 2000)/],["Windows XP",/(Windows NT 5.1)|(Windows XP)/],["Windows Server 2003",/(Windows NT 5.2)/],["Windows Vista",/(Windows NT 6.0)/],["Windows 7",/(Windows NT 6.1)/],["Windows 8",/(Windows NT 6.2)/],["Windows 8.1",/(Windows NT 6.3)/],["Windows 10",/(Windows NT 10.0)/],["Windows ME",/Windows ME/],["Open BSD",/OpenBSD/],["Sun OS",/SunOS/],["Chrome OS",/CrOS/],["Linux",/(Linux)|(X11)/],["Mac OS",/(Mac_PowerPC)|(Macintosh)/],["QNX",/QNX/],["BeOS",/BeOS/],["OS/2",/OS\/2/]]});var wn=ct(L=>{"use strict";Object.defineProperty(L,"__esModule",{value:!0});L.getClientMeta=L.getLocalStorage=L.getLocalStorageOrThrow=L.getCrypto=L.getCryptoOrThrow=L.getLocation=L.getLocationOrThrow=L.getNavigator=L.getNavigatorOrThrow=L.getDocument=L.getDocumentOrThrow=L.getFromWindowOrThrow=L.getFromWindow=L.isBrowser=L.isNode=L.isMobile=L.isIOS=L.isAndroid=L.detectOS=L.detectEnv=void 0;var Fa=lr(),Tc=Fa.__importStar(La()),Ve=Fa.__importStar(bn()),Wc=(Ba(),an(Ua));function vn(e){return(0,Wc.detect)(e)}L.detectEnv=vn;function dr(){let e=vn();return e&&e.os?e.os:void 0}L.detectOS=dr;function Ga(){let e=dr();return e?e.toLowerCase().includes("android"):!1}L.isAndroid=Ga;function Ha(){let e=dr();return e?e.toLowerCase().includes("ios")||e.toLowerCase().includes("mac")&&navigator.maxTouchPoints>1:!1}L.isIOS=Ha;function Rc(){return dr()?Ga()||Ha():!1}L.isMobile=Rc;function Va(){let e=vn();return e&&e.name?e.name.toLowerCase()==="node":!1}L.isNode=Va;function Ic(){return!Va()&&!!(0,L.getNavigator)()}L.isBrowser=Ic;L.getFromWindow=Ve.getFromWindow;L.getFromWindowOrThrow=Ve.getFromWindowOrThrow;L.getDocumentOrThrow=Ve.getDocumentOrThrow;L.getDocument=Ve.getDocument;L.getNavigatorOrThrow=Ve.getNavigatorOrThrow;L.getNavigator=Ve.getNavigator;L.getLocationOrThrow=Ve.getLocationOrThrow;L.getLocation=Ve.getLocation;L.getCryptoOrThrow=Ve.getCryptoOrThrow;L.getCrypto=Ve.getCrypto;L.getLocalStorageOrThrow=Ve.getLocalStorageOrThrow;L.getLocalStorage=Ve.getLocalStorage;function Mc(){return Tc.getWindowMetadata()}L.getClientMeta=Mc});var ja={};nn(ja,{safeJsonParse:()=>Oc,safeJsonStringify:()=>Nc});function Oc(e){if(typeof e!="string")throw new Error(`Cannot safe json parse value of type ${typeof e}`);try{return JSON.parse(e)}catch{return e}}function Nc(e){return typeof e=="string"?e:JSON.stringify(e)}var $a=hi(()=>{});var Cn=ct(ao=>{"use strict";Object.defineProperty(ao,"__esModule",{value:!0});ao.safeJsonStringify=ao.safeJsonParse=void 0;var Dc=lr(),za=Dc.__importStar(($a(),an(ja)));ao.safeJsonParse=za.safeJsonParse;ao.safeJsonStringify=za.safeJsonStringify});var xn=ct(_t=>{"use strict";Object.defineProperty(_t,"__esModule",{value:!0});_t.removeLocal=_t.getLocal=_t.setLocal=void 0;var qa=Cn(),En=wn();function Uc(e,t){let o=(0,qa.safeJsonStringify)(t),r=(0,En.getLocalStorage)();r&&r.setItem(e,o)}_t.setLocal=Uc;function Bc(e){let t=null,o=null,r=(0,En.getLocalStorage)();return r&&(o=r.getItem(e)),t=o&&(0,qa.safeJsonParse)(o),t}_t.getLocal=Bc;function Fc(e){let t=(0,En.getLocalStorage)();t&&t.removeItem(e)}_t.removeLocal=Fc});var Ka=ct(Ee=>{"use strict";Object.defineProperty(Ee,"__esModule",{value:!0});Ee.getMobileLinkRegistry=Ee.getMobileRegistryEntry=Ee.saveMobileLinkInfo=Ee.formatIOSMobile=Ee.mobileLinkChoiceKey=void 0;var Gc=xn();Ee.mobileLinkChoiceKey="WALLETCONNECT_DEEPLINK_CHOICE";function Hc(e,t){let o=encodeURIComponent(e);return t.universalLink?`${t.universalLink}/wc?uri=${o}`:t.deepLink?`${t.deepLink}${t.deepLink.endsWith(":")?"//":"/"}wc?uri=${o}`:""}Ee.formatIOSMobile=Hc;function Vc(e){let t=e.href.split("?")[0];(0,Gc.setLocal)(Ee.mobileLinkChoiceKey,Object.assign(Object.assign({},e),{href:t}))}Ee.saveMobileLinkInfo=Vc;function Za(e,t){return e.filter(o=>o.name.toLowerCase().includes(t.toLowerCase()))[0]}Ee.getMobileRegistryEntry=Za;function jc(e,t){let o=e;return t&&(o=t.map(r=>Za(e,r)).filter(Boolean)),o}Ee.getMobileLinkRegistry=jc});var Xa=ct(tt=>{"use strict";Object.defineProperty(tt,"__esModule",{value:!0});tt.formatMobileRegistry=tt.formatMobileRegistryEntry=tt.getDappRegistryUrl=tt.getWalletRegistryUrl=void 0;var Ja="https://registry.walletconnect.com";function $c(){return Ja+"/api/v2/wallets"}tt.getWalletRegistryUrl=$c;function zc(){return Ja+"/api/v2/dapps"}tt.getDappRegistryUrl=zc;function Ya(e,t="mobile"){var o;return{name:e.name||"",shortName:e.metadata.shortName||"",color:e.metadata.colors.primary||"",logo:(o=e.image_url.sm)!==null&&o!==void 0?o:"",universalLink:e[t].universal||"",deepLink:e[t].native||""}}tt.formatMobileRegistryEntry=Ya;function qc(e,t="mobile"){return Object.values(e).filter(o=>!!o[t].universal||!!o[t].native).map(o=>Ya(o,t))}tt.formatMobileRegistry=qc});var Qa=ct(Vt=>{"use strict";Object.defineProperty(Vt,"__esModule",{value:!0});var Ao=lr();Ao.__exportStar(wn(),Vt);Ao.__exportStar(Cn(),Vt);Ao.__exportStar(xn(),Vt);Ao.__exportStar(Ka(),Vt);Ao.__exportStar(Xa(),Vt)});var pp={};nn(pp,{AsExternalProvider:()=>Et,ConnectorManager:()=>so,PrivyClient:()=>co,PrivyProvider:()=>Zl,PrivyProxyProvider:()=>Be,VERSION:()=>qo,WalletConnector:()=>Fe,getAccessToken:()=>ql,usePrivy:()=>N});module.exports=an(pp);var zl=require("@ethersproject/providers"),te=require("react");var _=()=>{throw new Error("You need to wrap your application with the <PrivyProvider> initialized with your app id.")};var bi=S(require("axios")),Ke=class extends Error{constructor(o,r){super(o);r instanceof Error&&(this.cause=r)}toString(){return`${this.type}: ${this.message}${this.cause?` [cause: ${this.cause}]`:""}`}},Qt=class extends Ke{constructor(o,r,n,i){super(n,i);this.type=o;this.status=r}},x=class extends Ke{constructor(o,r){super(o,r);this.type="client_error"}};var Z=class extends Ke{constructor(o,r){super(o,r);this.type="connector_error"}},re=e=>{if(e instanceof Ke)return e;if(!bi.default.isAxiosError(e))return Oe(e);if(!e.response)return new Qt("api_error",null,e.message,e);let{type:t,message:o,error:r}=e.response.data;return new Qt(t||"ApiError",e.response.status,o||r,e)},Oe=e=>e instanceof Ke?e:e instanceof Error?new x(e.message,e):new x(`Internal error: ${e}`);var yi=()=>"/api/v1/sessions",vi=()=>"/api/v1/sessions/logout",wi=()=>"/api/v1/sessions/fork",Ci=()=>"/api/v1/sessions/fork/recover",Ei=()=>"/api/v1/siwe/init",xi=()=>"/api/v1/siwe/authenticate",_i=()=>"/api/v1/siwe/link",Pi=()=>"/api/v1/passwordless/init",Si=()=>"/api/v1/passwordless/authenticate",Li=()=>"/api/v1/passwordless/link",Ai=()=>"/api/v1/passwordless_sms/init",ki=()=>"/api/v1/passwordless_sms/authenticate",Ti=()=>"/api/v1/passwordless_sms/link",Wi=()=>"/api/v1/oauth/init",Ri=()=>"/api/v1/oauth/authenticate",Ii=()=>"/api/v1/oauth/link",Mi=()=>"/api/v1/siwe/unlink",Oi=()=>"/api/v1/passwordless/unlink",Ni=()=>"/api/v1/passwordless_sms/unlink",Di=()=>"/api/v1/oauth/unlink",Ui=()=>"/api/v1/analytics_events";var Nt=class{constructor(t){this.meta={email:t}}async authenticate(){if(!this.api)throw new x("Auth flow has no API instance");if(!this.meta.email||!this.meta.emailCode)throw new x("Email and email code must be set prior to calling authenticate.");try{let t=Si(),o=await this.api.post(t,{email:this.meta.email,code:this.meta.emailCode});return{user:o.data.user,token:o.data.token,refresh_token:o.data.refresh_token,is_new_user:o.data.is_new_user}}catch(t){throw re(t)}}async link(){if(!this.api)throw new x("Auth flow has no API instance");if(!this.meta.email||!this.meta.emailCode)throw new x("Email and email code must be set prior to calling authenticate.");try{let t=Li();return(await this.api.post(t,{email:this.meta.email,code:this.meta.emailCode})).data}catch(t){throw re(t)}}async sendCodeEmail(t){if(!this.api)throw new x("Auth flow has no API instance");if(t&&(this.meta.email=t),!this.meta.email)throw new x("Email must be set when initialzing authentication.");try{let o=Pi();return(await this.api.post(o,{email:this.meta.email})).data}catch(o){throw re(o)}}};var wt=class{constructor(t,o,r){this.meta={provider:t},this.meta.authorizationCode=o,this.meta.stateCode=r}isActive(){return!!(this.meta.authorizationCode&&this.meta.stateCode&&this.meta.provider)}async authenticate(){if(!this.api)throw new x("Auth flow has no API instance");if(!this.meta.authorizationCode||!this.meta.stateCode)throw new x("[OAuth AuthFlow] Authorization and state codes code must be set prior to calling authenticate.");if(this.meta.authorizationCode==="undefined")throw new x("User denied confirmation during OAuth flow");try{let t=Ri(),o=await this.api.post(t,{authorization_code:this.meta.authorizationCode,state_code:this.meta.stateCode});return{user:o.data.user,token:o.data.token,refresh_token:o.data.refresh_token,is_new_user:o.data.is_new_user}}catch(t){throw re(t)}}async link(){if(!this.api)throw new x("Auth flow has no API instance");if(!this.meta.authorizationCode||!this.meta.stateCode)throw new x("[OAuth AuthFlow] Authorization and state codes code must be set prior to calling link.");if(this.meta.authorizationCode==="undefined")throw new x("User denied confirmation during OAuth flow");try{let t=Ii();return(await this.api.post(t,{authorization_code:this.meta.authorizationCode,state_code:this.meta.stateCode})).data}catch(t){throw re(t)}}async getAuthorizationUrl(){if(!this.api)throw new x("Auth flow has no API instance");if(!this.meta.provider)throw new x("Provider must be set when initialzing OAuth authentication.");try{let t=Wi();return(await this.api.post(t,{provider:this.meta.provider,redirect_to:window.location.href})).data}catch(t){throw re(t)}}};var Ct=class{constructor(t,o,r){this._meta={walletType:o,walletId:r},this.connectors=t,this.walletConnector=this.connectors.createWalletConnector(o,null,r)}get meta(){return{...this._meta,walletName:this.walletConnector.walletBranding.name,walletIcon:this.walletConnector.walletBranding.icon}}async authenticate(){if(!this.api)throw new x("Auth flow has no API instance");try{let{message:t,signature:o}=await this.sign(),r=await this.api.post(xi(),{message:t,signature:o});return this.connectors.addWalletConnector(this.walletConnector),await this.connectors.setActiveWallet(this.walletConnector.address)||console.warn("Failed to set active wallet"),{user:r.data.user,token:r.data.token,refresh_token:r.data.refresh_token,is_new_user:r.data.is_new_user}}catch(t){throw re(t)}}async link(){if(!this.api)throw new x("Auth flow has no API instance");try{let{message:t,signature:o}=await this.sign(),r=await this.api.post(_i(),{message:t,signature:o});return this.connectors.addWalletConnector(this.walletConnector),await this.connectors.setActiveWallet(this.walletConnector.address)||console.warn("Failed to set active wallet"),r.data}catch(t){throw re(t)}}async promptConnect(){if(!this.api)throw new x("Auth flow has no API instance");let t=await this.walletConnector.connect({showPrompt:!0});return await this.buildSiweMessage(t),t}async sign(){if(!this.api)throw new x("Auth flow has no API instance");if(!this.preparedMessage){let o=await this.walletConnector.connect({showPrompt:!1});await this.buildSiweMessage(o)}if(!this.preparedMessage)throw new x("Could not prepare SIWE message");let t=await this.walletConnector.sign(this.preparedMessage);return{message:this.preparedMessage,signature:t}}async buildSiweMessage(t){if(!this.api)throw new x("Auth flow has no API instance");let o=t.address,r=t.chainId,n=await this.api.post(Ei(),{address:o});return this.preparedMessage=this.walletConnector.prepareMessage(r,o,n.data.nonce),this.preparedMessage}};var Dt=class{constructor(t){this.meta={phoneNumber:t}}async authenticate(){if(!this.api)throw new x("Auth flow has no API instance");if(!this.meta.phoneNumber||!this.meta.smsCode)throw new x("phone number and sms code must be set prior to calling authenticate.");try{let t=ki(),o=await this.api.post(t,{phoneNumber:this.meta.phoneNumber,code:this.meta.smsCode});return{user:o.data.user,token:o.data.token,refresh_token:o.data.refresh_token,is_new_user:o.data.is_new_user}}catch(t){throw re(t)}}async link(){if(!this.api)throw new x("Auth flow has no API instance");if(!this.meta.phoneNumber||!this.meta.smsCode)throw new x("phone number and sms code must be set prior to calling authenticate.");try{let t=Ti();return(await this.api.post(t,{phoneNumber:this.meta.phoneNumber,code:this.meta.smsCode})).data}catch(t){throw re(t)}}async sendSmsCode(t){if(!this.api)throw new x("Auth flow has no API instance");if(t&&(this.meta.phoneNumber=t),!this.meta.phoneNumber)throw new x("phone nNumber must be set when initialzing authentication.");try{let o=Ai();return(await this.api.post(o,{phoneNumber:this.meta.phoneNumber})).data}catch(o){throw re(o)}}};var as=require("@ethersproject/address");var Bi="1.22.0-beta.2";var $o="4df5e2316331463a9130964bd6078dfa",zo="https://auth.privy.io",Fi=1e4,Ne=1400,qo=Bi;var eo="privy:token",Zo="privy:refresh_token",So="privy:session_transfer_token",Ko="privy:connectors",sn="walletconnect",Gi=3e4;var ln=class{constructor(){this._cache={}}get(t){return this._cache[t]}put(t,o){o!==void 0?this._cache[t]=o:this.del(t)}del(t){delete this._cache[t]}getKeys(){return Object.keys(this._cache)}},cn=class{get(t){let o=localStorage.getItem(t);return o===null?void 0:JSON.parse(o)}put(t,o){o!==void 0?localStorage.setItem(t,JSON.stringify(o)):this.del(t)}del(t){localStorage.removeItem(t)}getKeys(){return Object.entries(localStorage).map(([t])=>t)}};function ic(){return typeof window<"u"&&window.localStorage?new cn:new ln}var K=ic();var $i=S(require("@coinbase/wallet-sdk")),zi=require("@ethersproject/address");var Lo=require("react/jsx-runtime"),De=({style:e,...t})=>(0,Lo.jsxs)("svg",{width:"1024",height:"1024",viewBox:"0 0 1024 1024",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{height:"28px",width:"28px",...e},...t,children:[(0,Lo.jsx)("rect",{width:"1024",height:"1024",fill:"#0052FF",rx:100,ry:100}),(0,Lo.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M152 512C152 710.823 313.177 872 512 872C710.823 872 872 710.823 872 512C872 313.177 710.823 152 512 152C313.177 152 152 313.177 152 512ZM420 396C406.745 396 396 406.745 396 420V604C396 617.255 406.745 628 420 628H604C617.255 628 628 617.255 628 604V420C628 406.745 617.255 396 604 396H420Z",fill:"white"})]});var Vi=require("@ethersproject/address"),ji=require("@ethersproject/providers");var Hi=require("@ethersproject/logger");var to=class extends Z{constructor(){super("Wallet timeout");this.type="wallet_error"}},Bt=class extends Z{constructor(){super("User rejected connection");this.type="wallet_error"}},Ue=e=>{if(e instanceof Z)return e;if((e==null?void 0:e.code)&&(e==null?void 0:e.reason)){let t=new oo(e);return e.code===Hi.ErrorCode.ACTION_REJECTED&&(t.details=Ut.E4001_USER_REJECTED_REQUEST),t}return e!=null&&e.code?new oo(e):new Z("Unknown connector error",e)},dn=class extends Ke{constructor(o,r,n){super(o);this.type="provider_error";this.code=r,this.data=n}},oo=class extends dn{constructor(o){var i,a,s;let r=o;super(r.message,r.code,r.data);let n=Object.values(Ut).find(l=>l.eipCode===r.code);this.details=n||Ut.UNKNOWN_ERROR,r.code===-32002&&((i=r.message)!=null&&i.includes("already pending for origin")?(a=r.message)!=null&&a.includes("wallet_requestPermissions")?this.details=Ut.E32002_CONNECTION_ALREADY_PENDING:this.details=Ut.E32002_REQUEST_ALREADY_PENDING:(s=r.message)!=null&&s.includes("Already processing")&&r.message.includes("eth_requestAccounts")&&(this.details=Ut.E32002_WALLET_LOCKED))}},ac={ERROR_USER_EXISTS:{message:"User already exists for this address",detail:"Try another address!",retryable:!1},ERROR_TIMED_OUT:{message:"Wallet request timed out",detail:"Please try connecting again.",retryable:!0},ERROR_WALLET_CONNECTION:{message:"Could not log in with wallet",detail:"Please try connecting again.",retryable:!0},ERROR_USER_REJECTED_CONNECTION:{message:"You rejected the request",detail:"Please try connecting again.",retryable:!0}},sc={E32002_CONNECTION_ALREADY_PENDING:{eipCode:-32002,message:"Connection request already pending",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E32002_REQUEST_ALREADY_PENDING:{eipCode:-32002,message:"Resource request already pending",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E32002_WALLET_LOCKED:{eipCode:-32002,message:"Wallet might be locked",detail:"Don\u2019t see your wallet modal? Check your other browser windows.",retryable:!1},E4001_USER_REJECTED_REQUEST:{eipCode:4001,message:"Signature rejected",detail:"Please try signing again.",retryable:!0}},lc={E4001_DEFAULT_USER_REJECTED_REQUEST:{eipCode:4001,message:"User Rejected Request",detail:"The user rejected the request.",default:!0,retryable:!0},E4100_DEFAULT_UNAUTHORIZED:{eipCode:4100,message:"Unauthorized",detail:"The requested method and/or account has not been authorized by the user.",default:!0,retryable:!1},E4200_DEFAULT_UNSUPPORTED_METHOD:{eipCode:4200,message:"Unsupported Method",detail:"The Provider does not support the requested method.",default:!0,retryable:!1},E4900_DEFAULT_DISCONNECTED:{eipCode:4900,message:"Disconnected",detail:"The Provider is disconnected from all chains.",default:!0,retryable:!0},E4901_DEFAULT_CHAIN_DISCONNECTED:{eipCode:4901,message:"Chain Disconnected",detail:"The Provider is not connected to the requested chain.",default:!0,retryable:!0},E32700_DEFAULT_PARSE_ERROR:{eipCode:-32700,message:"Parse error",detail:"Invalid JSON",default:!0,retryable:!1},E32600_DEFAULT_INVALID_REQUEST:{eipCode:-32600,message:"Invalid request",detail:"JSON is not a valid request object",default:!0,retryable:!1},E32601_DEFAULT_METHOD_NOT_FOUND:{eipCode:-32601,message:"Method not found",detail:"Method does not exist",default:!0,retryable:!1},E32602_DEFAULT_INVALID_PARAMS:{eipCode:-32602,message:"Invalid params",detail:"Invalid method parameters",default:!0,retryable:!1},E32603_DEFAULT_INTERNAL_ERROR:{eipCode:-32603,message:"Internal error",detail:"Internal JSON-RPC error",default:!0,retryable:!0},E32000_DEFAULT_INVALID_INPUT:{eipCode:-32e3,message:"Invalid input",detail:"Missing or invalid parameters",default:!0,retryable:!1},E32001_DEFAULT_RESOURCE_NOT_FOUND:{eipCode:-32001,message:"Resource not found",detail:"Requested resource not found",default:!0,retryable:!1},E32002_DEFAULT_RESOURCE_UNAVAILABLE:{eipCode:-32002,message:"Resource unavailable",detail:"Requested resource not available",default:!0,retryable:!0},E32003_DEFAULT_TRANSACTION_REJECTED:{eipCode:-32003,message:"Transaction rejected",detail:"Transaction creation failed",default:!0,retryable:!0},E32004_DEFAULT_METHOD_NOT_SUPPORTED:{eipCode:-32004,message:"Method not supported",detail:"Method is not implemented",default:!0,retryable:!1},E32005_DEFAULT_LIMIT_EXCEEDED:{eipCode:-32005,message:"Limit exceeded",detail:"Request exceeds defined limit",default:!0,retryable:!1},E32006_DEFAULT_JSON_RPC_VERSION_NOT_SUPPORTED:{eipCode:-32006,message:"JSON-RPC version not supported",detail:"Version of JSON-RPC protocol is not supported",default:!0,retryable:!1}},Ut={UNKNOWN_ERROR:{eipCode:0,message:"Unknown error",detail:"Unknown error",retryable:!0},...lc,...sc},Ft={...ac,...Ut};var cc=12e4,pn=(e=new to,t=cc)=>new Promise((o,r)=>setTimeout(()=>{r(e)},t)),Be=class{constructor(t){this.removeListener=(t,o)=>{if(this.walletProvider)return this.walletProvider.removeListener(t,o)};this.setWalletProvider=t=>{this.walletProvider=t,this._subscriptions.forEach(o=>{var r;(r=this.walletProvider)==null||r.on(o.eventName,o.listener)})};this.walletProvider=t,this._subscriptions=[]}on(t,o){if(this.walletProvider)return this.walletProvider.on(t,o);this._subscriptions.push({eventName:t,listener:o})}async request(t){if(!this.walletProvider)throw new Z(`A wallet request of type ${t.method} was made before setting a wallet provider.`);return Promise.race([this.walletProvider.request(t),pn()]).catch(o=>{throw Ue(o)})}},Et=class extends Be{constructor(o){super(o)}},Jo=class extends Be{constructor(t){super(t)}sendAsync(t,o){throw new Error("sendAsync is no longer supported by EIP-1193. Use the request method instead.")}};var Fe=class{constructor(t,o,r){this.createSiweMessage=(t,o,r,n,i,a,s)=>`${r} wants you to sign in with your Ethereum account:
2
2
  ${o}
3
3
 
4
4
  ${s}
@@ -9,7 +9,7 @@ Chain ID: ${t}
9
9
  Nonce: ${a}
10
10
  Issued At: ${i}
11
11
  Resources:
12
- - https://privy.io`;this.proxyProvider=o,this.walletType=t,this.address=r,this.chain=null,this.connected=!1}async fetchAddress(){if(!this.address){let t=await this.proxyProvider.request({method:"eth_accounts"});Array.isArray(t)&&t.length>0&&(this.address=(0,Vi.getAddress)(t[0]))}return this.address}async fetchChainId(){if(!this.chain){let t=await this.proxyProvider.request({method:"eth_chainId"}),o=Number(t);this.chain=String(o)}return this.chain}async getConnectedWallet(){if(!this.walletType||!await this.isConnected())return null;let o=await this.fetchAddress(),r=await this.fetchChainId();return{address:o,chainId:r,chainType:"ethereum",walletClient:"unknown"}}async setActive(){return!0}async sign(t){return await this.connect({showPrompt:!1}),new ji.Web3Provider(new Et(this.proxyProvider)).getSigner().signMessage(t)}prepareMessage(t,o,r){let n=window.location.host,i=window.location.origin,a="By signing, you are proving you own this wallet and logging in. This does not initiate a transaction or cost any fees.",s=new Date().toISOString();return this.createSiweMessage(t,o,n,i,s,r,a)}};var dc=e=>{let t=`https://mainnet.infura.io/v3/${$o}`,o=1;return e.makeWeb3Provider(t,o)},Yo,Xo=class extends Fe{constructor(t,o){super("coinbase_wallet",t,o),Yo||(Yo=new $i.default({appName:"Privy",darkMode:!1,headlessMode:!1}))}async connect(t){return this.proxyProvider.setWalletProvider(dc(Yo)),t.showPrompt&&await this.promptConnection(),await this.isConnected()?this.getConnectedWallet():null}disconnect(){Yo.disconnect()}async isConnected(){return await this.fetchAddress()!==null}get walletBranding(){return{name:"Coinbase Wallet",icon:De}}async promptConnection(){try{let t="",o=await this.proxyProvider.request({method:"eth_requestAccounts"});if(o.length>0&&(t=(0,zi.getAddress)(o[0])),!t||t==="")throw new Z("Unable to retrieve address");this.connected=!0}catch(t){throw Ue(t)}}};var tr=require("@ethersproject/address"),mn=require("@ethersproject/providers"),Xi=require("react-device-detect");var le=require("react/jsx-runtime"),Ge=({style:e,...t})=>(0,le.jsxs)("svg",{width:"28",height:"28",viewBox:"0 0 28 28",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{height:"28px",width:"28px",...e},...t,children:[(0,le.jsx)("rect",{width:"28",height:"28",rx:"3",fill:"white"}),(0,le.jsx)("path",{d:"M23.0126 5L15.1958 10.7823L16.6533 7.37359L23.0126 5Z",fill:"#E17726",stroke:"#E17726",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),(0,le.jsx)("path",{d:"M4.98753 5L12.7329 10.8299L11.3468 7.37954L4.98753 5ZM20.1987 18.4027L18.1166 21.5794L22.5723 22.8049L23.8454 18.4741L20.1987 18.4027ZM4.16064 18.4741L5.42775 22.8049L9.87153 21.5794L7.80133 18.4027L4.16064 18.4741Z",fill:"#E27625",stroke:"#E27625",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),(0,le.jsx)("path",{d:"M9.6336 13.0369L8.39624 14.9049L12.7984 15.1071L12.6556 10.3659L9.6336 13.0429V13.0369ZM18.3665 13.0429L15.2969 10.3064L15.1958 15.1071L19.5979 14.9049L18.3665 13.0429ZM9.87155 21.5794L12.5426 20.2945L10.2463 18.5098L9.87155 21.5794ZM15.4635 20.2886L18.1166 21.5794L17.7597 18.5039L15.4635 20.2886Z",fill:"#E27625",stroke:"#E27625",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),(0,le.jsx)("path",{d:"M18.1167 21.5794L15.4635 20.2944L15.6776 22.0196L15.6539 22.7513L18.1167 21.5794ZM9.87158 21.5794L12.3463 22.7513L12.3285 22.0196L12.5426 20.2944L9.87158 21.5794Z",fill:"#D5BFB2",stroke:"#D5BFB2",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),(0,le.jsx)("path",{d:"M12.3878 17.3616L10.1868 16.7191L11.7454 16.0052L12.3938 17.3616H12.3878ZM15.6062 17.3616L16.2605 15.9993L17.8251 16.7131L15.6062 17.3675V17.3616Z",fill:"#233447",stroke:"#233447",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),(0,le.jsx)("path",{d:"M9.87147 21.5794L10.2581 18.4027L7.80127 18.4741L9.87147 21.5794ZM17.7418 18.4027L18.1166 21.5794L20.1987 18.4741L17.7418 18.4027ZM19.6038 14.9048L15.2016 15.107L15.6061 17.3676L16.2605 15.9994L17.8251 16.7132L19.6038 14.9048ZM10.1868 16.7192L11.7454 16.0053L12.3938 17.3617L12.8042 15.1011L8.4021 14.9048L10.1868 16.7192Z",fill:"#CC6228",stroke:"#CC6228",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),(0,le.jsx)("path",{d:"M8.4021 14.9048L10.2462 18.5038L10.1868 16.7192L8.4021 14.9048ZM17.8251 16.7192L17.7537 18.5038L19.5978 14.9048L17.8251 16.7192ZM12.8042 15.107L12.3878 17.3676L12.9113 20.0327L13.0303 16.5169L12.8042 15.107ZM15.1957 15.107L14.9815 16.511L15.0886 20.0327L15.6061 17.3617L15.1957 15.1011V15.107Z",fill:"#E27525",stroke:"#E27525",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),(0,le.jsx)("path",{d:"M15.6062 17.3617L15.0887 20.0327L15.4635 20.2945L17.7538 18.5098L17.8252 16.7192L15.6062 17.3617ZM10.1869 16.7192L10.2463 18.5039L12.5426 20.2885L12.9114 20.0327L12.3939 17.3617L10.1809 16.7192H10.1869Z",fill:"#F5841F",stroke:"#F5841F",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),(0,le.jsx)("path",{d:"M15.6598 22.7513L15.6776 22.0196L15.4754 21.853H12.5248L12.3285 22.0196L12.3463 22.7513L9.87158 21.5793L10.7401 22.2932L12.495 23.5008H15.4992L17.26 22.2873L18.1167 21.5793L15.6539 22.7513H15.6598Z",fill:"#C0AC9D",stroke:"#C0AC9D",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),(0,le.jsx)("path",{d:"M15.4634 20.2885L15.0886 20.0327H12.9114L12.5425 20.2945L12.3284 22.0196L12.5247 21.8531H15.4753L15.6776 22.0196L15.4634 20.2945V20.2885Z",fill:"#161616",stroke:"#161616",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),(0,le.jsx)("path",{d:"M23.3456 11.1571L24 7.97442L23.0125 5L15.4575 10.5919L18.3664 13.0369L22.4711 14.2326L23.3754 13.1797L22.9827 12.8941L23.6074 12.323L23.1315 11.9542L23.7561 11.4783L23.3397 11.1571H23.3456ZM4 7.96847L4.66627 11.1571L4.23795 11.4723L4.87448 11.9482L4.39857 12.323L5.01725 12.8941L4.62463 13.1797L5.52885 14.2326L9.63355 13.0428L12.5425 10.586L4.98751 5L4 7.96847Z",fill:"#763E1A",stroke:"#763E1A",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),(0,le.jsx)("path",{d:"M22.4712 14.2325L18.3665 13.0428L19.6038 14.9048L17.7597 18.5038L20.1987 18.4741H23.8454L22.4712 14.2325ZM9.63358 13.0368L5.52888 14.2325L4.16064 18.4741H7.80728L10.2463 18.5038L8.40217 14.9048L9.63953 13.0368H9.63358ZM15.1957 15.107L15.4634 10.5859L16.6532 7.37354H11.3468L12.5366 10.5859L12.8043 15.107L12.9054 16.5229V20.0327H15.0887L15.1006 16.5229L15.1957 15.107Z",fill:"#F5841F",stroke:"#F5841F",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"})]});var qi=require("libphonenumber-js/min");var Zi=e=>!!String(e).toLowerCase().match(/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/),Ki=e=>(0,qi.isPossiblePhoneNumber)(String(e),"US"),Ji=(e,t)=>{let o=e.slice(0),r=[];for(;o.length;)r.push(o.splice(0,t));return r},Gt=(e,t=3,o=4)=>{if(!e)return"";let r=2,n=3;if(t+o+r+n>=e.length)return e;let i=e.slice(0,r+t),a=e.slice(e.length-o,e.length);return`${i}...${a}`},un=e=>new Promise(t=>setTimeout(t,e)),Yi=(e,t={})=>{let o=t.delayMs||40,r=t.maxAttempts||1e3;return new Promise(async(n,i)=>{let a=!1,s=0;for(;!a&&s<r;)e().then(()=>{a=!0,n()},(...l)=>{a=!0,i(...l)}),s+=1,await un(o);a||i(new Error("Exceeded max attempts before resolving function"))})},Qo=(e,t,o={})=>{let r=new URL(t,e);for(let[n,i]of Object.entries(o))r.searchParams.set(n,i);return r.href},pc=(e,t)=>e.toLowerCase()===t.toLowerCase(),fn=(e,t)=>{for(let o of e)if(pc(o,t))return!0;return!1},er=e=>e.replace(/([\u2700-\u27BF]|[\uE000-\uF8FF]|\uD83C[\uDC00-\uDFFF]|\uD83D[\uDC00-\uDFFF]|[\u2011-\u26FF]|\uD83E[\uDD10-\uDDFF])/g,"");var Qi=async()=>{let t=await new mn.Web3Provider(window.ethereum).listAccounts();return t.length===0?null:(0,tr.getAddress)(t[0])},or=class extends Fe{constructor(t,o){var r;super("metamask",t,o),this.proxyProvider.setWalletProvider(window.ethereum),(r=window.ethereum.providers)==null||r.forEach(n=>{n.isMetaMask&&this.proxyProvider.setWalletProvider(n)}),this.subscribeListeners()}async connect(t){return t.showPrompt&&await this.promptConnection(),await this.isConnected()?this.getConnectedWallet():null}async isConnected(){let t=await this.connectedMetamaskAddress();return this.address===t}async connectedMetamaskAddress(){let o=await new mn.Web3Provider(this.proxyProvider).listAccounts();return o.length===0?null:(0,tr.getAddress)(o[0])}get walletBranding(){return{name:"MetaMask",icon:Ge}}disconnect(){console.warn("Metamask does not support programmetic disconnect.")}async promptConnection(){try{let t="";if(!Xi.isMobile&&(await this.proxyProvider.request({method:"wallet_requestPermissions",params:[{eth_accounts:{}}]}),this.address&&await this.isConnected()))throw new Z("Selected the wrong wallet in MetaMask");let o=await this.proxyProvider.request({method:"eth_requestAccounts"});if(o.length>0&&(t=(0,tr.getAddress)(o[0])),!t||t==="")throw new Z("Unable to retrieve address");if(this.address&&t!==this.address)return;this.connected=!0,this.address=t}catch(t){throw Ue(t)}}async setActive(){if(await this.connectedMetamaskAddress()===this.address)return this.connected=!0,!0;for(;!await this.isConnected();)await un(200);return this.connected=!0,!0}subscribeListeners(){this.proxyProvider.on("accountsChanged",t=>{var o;if(t.length>0){let r=t[0];this.connected=((o=this.address)==null?void 0:o.toLowerCase())===(r==null?void 0:r.toLowerCase())}else this.connected=!1}),this.proxyProvider.on("disconnect",()=>{this.connected=!1})}};var hn=require("@ethersproject/address"),ea=require("@ethersproject/providers");var He=require("react/jsx-runtime"),xt=({style:e,...t})=>(0,He.jsxs)("svg",{width:"28",height:"28",viewBox:"0 0 28 28",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{height:"28px",width:"28px",...e},...t,children:[(0,He.jsx)("rect",{width:"28",height:"28",rx:"6",fill:"url(#paint0_linear_1765_9937)"}),(0,He.jsx)("path",{d:"M24.0223 14.1704H21.5542C21.5542 9.14083 17.4627 5.06372 12.4151 5.06372C7.43008 5.06372 3.37717 9.04101 3.27798 13.9845C3.17536 19.0945 7.98653 23.5318 13.1154 23.5318H13.7605C18.2822 23.5318 24.3426 20.0047 25.2895 15.7072C25.4643 14.9151 24.8364 14.1704 24.0223 14.1704ZM8.74752 14.3945C8.74752 15.0671 8.19544 15.6172 7.52045 15.6172C6.84545 15.6172 6.29341 15.0669 6.29341 14.3945V12.4165C6.29341 11.7439 6.84545 11.1938 7.52045 11.1938C8.19544 11.1938 8.74752 11.7439 8.74752 12.4165V14.3945ZM13.0083 14.3945C13.0083 15.0671 12.4563 15.6172 11.7813 15.6172C11.1063 15.6172 10.5543 15.0669 10.5543 14.3945V12.4165C10.5543 11.7439 11.1065 11.1938 11.7813 11.1938C12.4563 11.1938 13.0083 11.7439 13.0083 12.4165V14.3945Z",fill:"url(#paint1_linear_1765_9937)"}),(0,He.jsxs)("defs",{children:[(0,He.jsxs)("linearGradient",{id:"paint0_linear_1765_9937",x1:"14",y1:"0",x2:"14",y2:"28",gradientUnits:"userSpaceOnUse",children:[(0,He.jsx)("stop",{stopColor:"#534BB1"}),(0,He.jsx)("stop",{offset:"1",stopColor:"#551BF9"})]}),(0,He.jsxs)("linearGradient",{id:"paint1_linear_1765_9937",x1:"14.2976",y1:"5.06372",x2:"14.2976",y2:"23.5318",gradientUnits:"userSpaceOnUse",children:[(0,He.jsx)("stop",{stopColor:"white"}),(0,He.jsx)("stop",{offset:"1",stopColor:"white",stopOpacity:"0.82"})]})]})]});var rr=class extends Fe{constructor(t,o){var r;if(super("phantom",t,o),"phantom"in window){let n=window;this.proxyProvider.setWalletProvider(n.phantom.ethereum),(r=n.phantom.ethereum.providers)==null||r.forEach(i=>{i.isPhantom&&this.proxyProvider.setWalletProvider(i)})}this.subscribeListeners()}async connect(t){return t.showPrompt&&await this.promptConnection(),await this.isConnected()?this.getConnectedWallet():null}async isConnected(){let t=await this.connectedPhantomAddress();return this.address===t}async connectedPhantomAddress(){let o=await new ea.Web3Provider(this.proxyProvider).listAccounts();return o.length===0?null:(0,hn.getAddress)(o[0])}get walletBranding(){return{name:"Phantom",icon:xt}}disconnect(){console.warn("Phantom does not support programmetic disconnect.")}async promptConnection(){try{let t="";if(this.address&&await this.isConnected())throw new Z("Selected the wrong wallet in Phantom");let o=await this.proxyProvider.request({method:"eth_requestAccounts"});if(o.length>0&&(t=(0,hn.getAddress)(o[0])),!t||t==="")throw new Z("Unable to retrieve address");this.connected=!0,this.address=t}catch(t){throw Ue(t)}}subscribeListeners(){this.proxyProvider.on("accountsChanged",t=>{var o;if(t.length>0){let r=t[0];this.connected=((o=this.address)==null?void 0:o.toLowerCase())===(r==null?void 0:r.toLowerCase())}else this.connected=!0}),this.proxyProvider.on("disconnect",()=>{this.connected=!1})}};var is=S(require("@walletconnect/web3-provider")),Ln=require("react-device-detect");var Je=require("react");var oa=require("react/jsx-runtime");function ta(e){return(0,oa.jsx)("link",{rel:"prefetch",href:e.src})}var nr=require("react/jsx-runtime"),dt="LANDING",ra=(0,Je.createContext)({ready:!1,app:null,options:{email:!0,sms:!1,wallet:!0,google:!1,twitter:!1,discord:!1,github:!1,apple:!1},currentScreen:dt,lastScreen:dt,navigate:_,navigateBack:_,setModalData:_}),na=e=>{var h;let t=e.appConfig,o=e.authenticated,r=e.visible,[n,i]=(0,Je.useState)(e.initialScreen||dt),[a,s]=(0,Je.useState)(e.initialScreen||dt);(0,Je.useEffect)(()=>{o||i(dt)},[o]),(0,Je.useEffect)(()=>{r||(s(dt),i(dt))},[r]),(0,Je.useEffect)(()=>{e.initialScreen&&n===dt&&(i(e.initialScreen),s(e.initialScreen))},[e.initialScreen]);let l=e.initialScreen&&n===dt?e.initialScreen:n,c={ready:!!(t!=null&&t.id),app:t,options:e.options,data:e.data,setModalData:e.setModalData,currentScreen:l,lastScreen:a,navigate:m=>{s(n),i(m)},navigateBack:()=>{i(a)}};return(0,nr.jsxs)(ra.Provider,{value:c,children:[t&&((h=t.appearance)==null?void 0:h.logo)&&(0,nr.jsx)(ta,{src:t.appearance.logo}),e.children]})},E=()=>(0,Je.useContext)(ra);var pt=require("react/jsx-runtime"),ro=({style:e,...t})=>{let{app:o}=E();return(0,pt.jsxs)("svg",{width:"28",height:"28",viewBox:"0 0 28 28",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{height:"28px",width:"28px",...e},...t,children:[(0,pt.jsx)("rect",{width:"28",height:"28",rx:"3",fill:(o==null?void 0:o.appearance.palette.colorScheme)==="dark"?"#3396ff":"#141414"}),(0,pt.jsx)("g",{clipPath:"url(#clip0_1765_9946)",children:(0,pt.jsx)("path",{d:"M8.09448 10.3941C11.3558 7.20196 16.6442 7.20196 19.9055 10.3941L20.2982 10.7782C20.3369 10.8157 20.3677 10.8606 20.3887 10.9102C20.4097 10.9599 20.4206 11.0132 20.4206 11.0671C20.4206 11.121 20.4097 11.1744 20.3887 11.224C20.3677 11.2737 20.3369 11.3186 20.2982 11.3561L18.9554 12.6702C18.9158 12.7086 18.8628 12.7301 18.8077 12.7301C18.7526 12.7301 18.6996 12.7086 18.66 12.6702L18.1198 12.1415C15.8448 9.91503 12.1557 9.91503 9.88015 12.1415L9.30167 12.7075C9.26207 12.7459 9.20909 12.7673 9.15395 12.7673C9.0988 12.7673 9.04582 12.7459 9.00622 12.7075L7.66346 11.3934C7.62475 11.3559 7.59397 11.3109 7.57295 11.2613C7.55193 11.2117 7.5411 11.1583 7.5411 11.1044C7.5411 11.0505 7.55193 10.9971 7.57295 10.9475C7.59397 10.8979 7.62475 10.8529 7.66346 10.8154L8.09448 10.3941ZM22.6829 13.1115L23.8776 14.2814C23.9163 14.319 23.9471 14.3639 23.9681 14.4135C23.9892 14.4632 24 14.5165 24 14.5704C24 14.6243 23.9892 14.6777 23.9681 14.7273C23.9471 14.777 23.9163 14.8219 23.8776 14.8594L18.4893 20.1332C18.4102 20.2101 18.3042 20.2531 18.1938 20.2531C18.0835 20.2531 17.9775 20.2101 17.8984 20.1332L14.0743 16.3901C14.0545 16.3708 14.0279 16.36 14.0003 16.36C13.9726 16.36 13.9461 16.3708 13.9263 16.3901L10.1021 20.1332C10.023 20.2101 9.91703 20.2531 9.8067 20.2531C9.69636 20.2531 9.59038 20.2101 9.51124 20.1332L4.12236 14.8594C4.08365 14.8219 4.05287 14.777 4.03185 14.7273C4.01083 14.6777 4 14.6243 4 14.5704C4 14.5165 4.01083 14.4632 4.03185 14.4135C4.05287 14.3639 4.08365 14.319 4.12236 14.2814L5.31767 13.1115C5.39678 13.0348 5.50265 12.9919 5.61285 12.9919C5.72305 12.9919 5.82892 13.0348 5.90803 13.1115L9.73216 16.8546C9.75194 16.874 9.7785 16.8848 9.80616 16.8848C9.83381 16.8848 9.86037 16.874 9.88015 16.8546L13.7043 13.1115C13.7834 13.0346 13.8894 12.9916 13.9997 12.9916C14.1101 12.9916 14.216 13.0346 14.2952 13.1115L18.1198 16.8546C18.1396 16.874 18.1662 16.8848 18.1938 16.8848C18.2215 16.8848 18.2481 16.874 18.2678 16.8546L22.092 13.1115C22.1711 13.0346 22.2771 12.9916 22.3874 12.9916C22.4977 12.9916 22.6037 13.0346 22.6829 13.1115Z",fill:"white"})}),(0,pt.jsx)("defs",{children:(0,pt.jsx)("clipPath",{id:"clip0_1765_9946",children:(0,pt.jsx)("rect",{width:"20",height:"12.2531",fill:"white",transform:"translate(4 8)"})})})]})};var _n=S(Qa()),pr=require("react-device-detect");var ur="c57ca95b47569778a828d19178114f4db188b89b763c899ba0be274e97267d96",Pn=e=>{let t=er(e).trim().toLowerCase();for(let[o,r]of Object.entries(ko))if(r.name.toLowerCase()===t)return{id:o,entry:r}},ko={"1ae92b26df02f0abca6304df07debccd18262fdf5fe82daa81593582dac9a369":{name:"Rainbow",image_id:"7a33d7f1-3d12-4b5c-f3ee-5cd83cb1b500",mobile:{universal:"https://rnbwapp.com"}},"4622a2b2d6af1c9844944291e5e7351a6aa24cd7b23099efac1b2fd875da31a0":{name:"Trust Wallet",image_id:"0528ee7e-16d1-4089-21e3-bbfb41933100",mobile:{universal:"https://link.trustwallet.com"}},c57ca95b47569778a828d19178114f4db188b89b763c899ba0be274e97267d96:{name:"MetaMask",image_id:"5195e9db-94d8-4579-6f11-ef553be95100",mobile:{native:"metamask:"}},"225affb176778569276e484e1b92637ad061b01e13a048b35a9d280c3b58970f":{name:"Safe",image_id:"a1cb2777-f8f9-49b0-53fd-443d20ee0b00",mobile:{universal:"https://gnosis-safe.io/"}},"74f8092562bd79675e276d8b2062a83601a4106d30202f2d509195e30e19673d":{name:"Spot",image_id:"1bf33a89-b049-4a1c-d1f6-4dd7419ee400",mobile:{universal:"https://spot.so"}},ecc4036f814562b41a5268adc86270fba1365471402006302e70169465b7ac18:{name:"Zerion",image_id:"f216b371-96cf-409a-9d88-296392b85800",mobile:{universal:"https://wallet.zerion.io"}},"8308656f4548bb81b3508afe355cfbb7f0cb6253d1cc7f998080601f838ecee3":{name:"Unstoppable Domains",image_id:"4725dda0-4471-4d0f-7adf-6bbe8b929c00",mobile:{universal:"https://unstoppabledomains.com/mobile"}},"38f5d18bd8522c244bdd70cb4a68e0e718865155811c043f052fb9f1c51de662":{name:"BitKeep",image_id:"3f7075d0-4ab7-4db5-404d-3e4c05e6fe00",mobile:{universal:"https://bkapp.vip"}},afbd95522f4041c71dd4f1a065f971fd32372865b416f95a0b1db759ae33f2a7:{name:"Omni",image_id:"2cd67b4c-282b-4809-e7c0-a88cd5116f00",mobile:{universal:"https://links.omni.app"}},ccb714920401f7d008dbe11281ae70e3a4bfb621763b187b9e4a3ce1ab8faa3b:{name:"BitPay",image_id:"97d4429f-eaf0-4302-87f5-9d26d46fe700",mobile:{universal:"https://link.bitpay.com/wallet"}},"7674bb4e353bf52886768a3ddc2a4562ce2f4191c80831291218ebd90f5f5e26":{name:"MathWallet",image_id:"26a8f588-3231-4411-60ce-5bb6b805a700",mobile:{universal:"https://www.mathwallet.org"}},"2863183c3299d820fb9a4cb8aab4a34f50380c9992e8be871fd60a62e8d36481":{name:"1inch Wallet",image_id:"dce1ee99-403f-44a9-9f94-20de30616500",mobile:{universal:"https://wallet.1inch.io"}},efba9ae0a9e0fdd9e3e055ddf3c8e75f294babb8aea3499456eff27f771fda61:{name:"Eidoo",image_id:"ef5b8bcf-00d5-457d-e161-9911e4788700",mobile:{universal:"https://eidoo.io/crypto-wallet"}},b021913ba555948a1c81eb3d89b372be46f8354e926679de648e4fa2938bed3e:{name:"Coin98",image_id:"dee547be-936a-4c92-9e3f-7a2350a62e00",mobile:{universal:"https://coin98.com"}},"7e90b95230bc462869bbb59f952273d89841e1c76bcc5319898e08c9f34bd4cd":{name:"Unstoppable Wallet",image_id:"5c38b22c-adb9-4899-3252-6e3d71458500",mobile:{universal:"https://unstoppable.money"}},"138f51c8d00ac7b9ac9d8dc75344d096a7dfe370a568aa167eabc0a21830ed98":{name:"AlphaWallet",image_id:"5b1cddfb-056e-4e78-029a-54de5d70c500",mobile:{universal:"https://aw.app"}},"468b4ab3582757233017ec10735863489104515ab160c053074905a1eecb7e63":{name:"D'CENT Wallet",image_id:"1efb49ec-2bab-4fa1-f2f2-4392c64ed000",mobile:{universal:"https://link.dcentwallet.com"}},"29f4a70ad5993f3f73ae8119f0e78ecbae51deec2a021a770225c644935c0f09":{name:"ZelCore",image_id:"97d45a92-a1f0-46da-95a6-ad5db99f3500",mobile:{universal:"https://link.zel.network"}},"8240fb8a7b117aed27f04aa8870c714eeb910f7c1b16c9b868e793c1836335b8":{name:"Nash",image_id:"12f981b1-bb0a-4115-009f-317255979600",mobile:{universal:"https://nash.io/walletconnect"}},"15d7610042217f691385d20e640869dc7273e991b04e8f476417cdc5ec856955":{name:"Coinomi",image_id:"3b446d16-a908-40c8-5835-9a6efe90dd00",mobile:{universal:"https://coinomi.page.link"}},a395dbfc92b5519cbd1cc6937a4e79830187daaeb2c6fcdf9b9cce4255f2dcd5:{name:"CYBAVO Wallet",image_id:"3117d3ce-b973-4cfd-8fb5-f5d72ed3c200",mobile:{universal:"https://cdn.cybavo.com"}},"0b415a746fb9ee99cce155c2ceca0c6f6061b1dbca2d722b3ba16381d0562150":{name:"SafePal",image_id:"14096232-7483-425b-f9a9-658f94fe7100",mobile:{universal:"https://link.safepal.io"}},"881946407ff22a32ec0e42b2cd31ea5dab52242dc3648d777b511a0440d59efb":{name:"Bridge Wallet",image_id:"989d504f-93db-4ca6-c00a-9d1faf177d00",mobile:{universal:"https://bridge.mtpelerin.com"}},"3b0e861b3a57e98325b82ab687fe0a712c81366d521ceec49eebc35591f1b5d1":{name:"SparkPoint",image_id:"34c4f901-70de-4507-e7a0-bc7887843000",mobile:{universal:"https://sparkpoint.io"}},"38ee551a01e3c5af9d8a9715768861e4d642e2381a62245083f96672b5646c6b":{name:"PEAKDEFI Wallet",image_id:"744a3fbe-4261-4148-133e-49c5b58cb400",mobile:{universal:"https://peakdefi.com/download"}},f2436c67184f158d1beda5df53298ee84abfc367581e4505134b5bcf5f46697d:{name:"Crypto.com | DeFi Wallet",image_id:"7c5ff577-a68d-49c5-02cd-3d83637b0b00",mobile:{universal:"https://wallet.crypto.com"}},"15d1d97de89526a3c259a235304a7c510c40cda3331f0f8433da860ecc528bef":{name:"Ellipal",image_id:"0a805e10-bfc0-4d02-d9c1-8cec88f0dc00",mobile:{universal:"https://www.ellipal.com/"}},"19ad8334f0f034f4176a95722b5746b539b47b37ce17a5abde4755956d05d44c":{name:"Aktionariat",image_id:"6d18e8ea-b536-4038-c5bf-94a499d5a400",mobile:{universal:"https://app.aktionariat.com"}},"95501c1a07c8eb575cb28c753ab9044259546ebcefcd3645461086e49b671f5c":{name:"Talken Wallet",image_id:"1afb5a3a-2da3-40ce-baf9-b416e7510600",mobile:{universal:"https://talken.io"}},"2ed796df33fdbde6a3ea6a47d3636b8341fe285038d844c7a78267b465b27028":{name:"KyberSwap",image_id:"3abd1720-260e-495a-2e31-3d0b349e0d00",mobile:{universal:"https://kyberswapnew.app.link"}},"4e6af4201658b52daad51a279bb363a08b3927e74c0f27abeca3b0110bddf0a9":{name:"Tongue Wallet",image_id:"20bc4fdb-b9e6-429a-8cba-c233b3273000",mobile:{universal:"https://www.tongue.fi"}},b13fcc7e3500a4580c9a5341ed64c49c17d7f864497881048eb160c089be5346:{name:"RWallet",image_id:"a883229c-26cb-4c19-9b34-1f0ed4012a00",mobile:{universal:"https://www.rwallet.app"}},"13c6a06b733edf51784f669f508826b2ab0dc80122a8b5d25d84b17d94bbdf70":{name:"PlasmaPay",image_id:"466c8fd0-fcec-4621-b94f-e91ce1439f00",mobile:{universal:"https://plasmapay.com/"}},"0aafbedfb8eb56dae59ecc37c9a5388509cf9c082635e3f752581cc7128a17c0":{name:"O3Wallet",image_id:"e1c7c6af-c731-463e-55f0-5e686e9f6200",mobile:{universal:"https://o3.network"}},"761d3d98fd77bdb06e6c90092ee7071c6001e93401d05dcf2b007c1a6c9c222c":{name:"HashKey Me",image_id:"72734fac-9500-4c2c-81ba-678f7fc32700",mobile:{universal:"https://me.hashkey.com"}},ffa139f74d1c8ebbb748cf0166f92d886e8c81b521c2193aa940e00626f4e215:{name:"Defiant",image_id:"026462e7-09a3-47f6-6b46-49df18133b00",mobile:{universal:"https://defiantapp.tech"}},"717911f4db0c5eda0e02e76ed179b7940ba1eefffdfb3c9e6540696226860da0":{name:"Elastos Essentials",image_id:"04a6bfed-d80e-4f7b-0516-261f86aa4000",mobile:{universal:"https://essentials.elastos.net"}},"9d6c614d1995741d5313f1f3dbf1f66dcba694de782087d13b8721822502692f":{name:"Stasis",image_id:"7ae753bc-a754-450c-2d90-2c5521734400",mobile:{universal:"https://app.stasis.net"}},a6ffb821a3c32d36fc9d29e29c2ff79a0cd1db0bca453714777846ddf3fdff76:{name:"JulWallet",image_id:"cabd50de-22fa-487b-ce68-2c63de8bb800",mobile:{universal:"https://justliquidity.org"}},"76745388a50e6fea982c4dee2a3ad61a8aa417668be870754689caa8a7506c93":{name:"Tangem",image_id:"8a5b6e94-e378-458d-bf2e-017cc7958e00",mobile:{universal:"https://app.tangem.com"}},"6464873279d46030c0b6b005b33da6be5ed57a752be3ef1f857dc10eaf8028aa":{name:"SecuX",image_id:"d46a33d6-92a1-4dfd-38d4-779815fb5c00",mobile:{universal:"https://wsweb.secuxtech.com"}},"2c81da3add65899baeac53758a07e652eea46dbb5195b8074772c62a77bbf568":{name:"Ambire Wallet",image_id:"c39b3a16-1a38-4588-f089-cb7aeb584700",mobile:{universal:"https://mobile.ambire.com"}},b823fb0d7228ef8e3c0bc9607df9ed79dae2ab3a2811d33f22ade4f573c18232:{name:"Slavi Wallet",image_id:"282ce060-0beb-4236-b7b0-1b34cc6c8f00",mobile:{universal:"https://www.slaviwallet.io"}},dccbd717df77b395445cc6080e01fffada9d8b92dacfda312a26c70c2e9af673:{name:"Nufinetes",image_id:"70080bd7-9858-4720-cf74-8f74cd74cb00",mobile:{universal:"https://apple.vimworld.org"}},c6f3d04a4e1a51e7d2045f347a5ebdab30fc600950a740fca21f0c92e230ee05:{name:"Arianee Wallet",image_id:"ace938a9-c906-4b9e-f683-b85f1ab72800",mobile:{universal:"https://arianee.net"}},c482dfe368d4f004479977fd88e80dc9e81107f3245d706811581a6dfe69c534:{name:"NOW Wallet",image_id:"b6ee4efc-f53e-475b-927b-a7ded6211700",mobile:{universal:"https://walletnow.app.link"}},"14e7176536cb3706e221daaa3cfd7b88b7da8c7dfb64d1d241044164802c6bdd":{name:"Blocto",image_id:"374258d3-c749-4f37-7815-77e61f798c00",mobile:{universal:"https://blocto.app"}},"0e4915107da5b3408b38e248f7a710f4529d54cd30e9d12ff0eb886d45c18e92":{name:"Arculus Wallet",image_id:"f78dab27-7165-4a3d-fdb1-fcff06c0a700",mobile:{universal:"https://gw.arculus.co/app"}},a2c031fccd13a6c16d7745c303507f78ae4da53fed064542804e9657d73e8b5c:{name:"Backpack",image_id:"e46f132d-6e05-4d51-8720-43727446e600",mobile:{universal:"https://jxndao.com"}},f593f4eb9755ff047681a37ebc46706e0e915cf1c2fe0102f5ae47c9f6aa4082:{name:"Autonomy: Digital Art Wallet",image_id:"2ee7c9db-9a86-4cd6-0d32-5053b4636100",mobile:{universal:"https://autonomy.io/apps/wc"}},"5859076ade608fbc4e9d3fe2f95e8527de80f8451ecbb1dced54ca84deae0dd6":{name:"Coingrig",image_id:"18e38e41-a387-4402-ca31-6d2d5eb91100",mobile:{universal:"https://link.coingrig.com"}},bb88a220ed4dcd3d717ec19b6ac00a672edf92e97ef7c243d35e25ff56a07301:{name:"bobablocks",image_id:"aff8973b-e093-45b5-4858-c01dd043bc00",mobile:{universal:"https://app.bobablocks.io"}},cbe13eb482c76f1fa401ff4c84d9acd0b8bc9af311ca0620a0b192fb28359b4e:{name:"Plasma Wallet",image_id:"c268e78d-ffb0-4c8b-5cad-04c3add48500",mobile:{universal:"https://plasma-wallet.com"}},b83a346877b71c02b8531f53485ce12bc00033eabcc1213ca3329cbc744813a5:{name:"Holdstation Wallet",image_id:"e6dba126-85af-4194-84f6-dd16632c3c00",mobile:{universal:"https://apps.apple.com/us/app/holdstation-web3-wallet/id6444925618"}},a92d512c649e87a5acba5885ac03f62662cff1f647c20a63833eb45a71a6f877:{name:"HUMBL WALLET",image_id:"1ac55ba2-aa98-4ed0-59b3-b3155dea4200",mobile:{universal:"https://wallet.search3.com"}},"226d8a12a2e6e5c4185fa9c24313824bfb144c2a180325bddbd121844f497afa":{name:"ISLAMIwallet",image_id:"8d723c78-28ad-4610-901f-ea391d7e8d00",mobile:{universal:"https://islamiwallet.com"}},"11c5487e4d8dd8bf32d4c92222363df8296a27307b2531be1e25770365392ecb":{name:"Card Wallet",image_id:"325428cf-c212-4d83-a434-7f48902d2c00",mobile:{universal:"https://wallet.cardstack.com"}},f5b4eeb6015d66be3f5940a895cbaa49ef3439e518cd771270e6b553b48f31d2:{name:"MEW wallet",image_id:"e2024511-2c9b-46d7-3111-52df3d241700",mobile:{universal:"https://mewwallet.com"}},"576c90ceaea34f29ff0104837cf2b2e23d201be43be1433feeb18d375430e1fd":{name:"PLTwallet",image_id:"a5d9dd15-8cef-42de-8bed-09e01a8b0200",mobile:{universal:"https://pltwallet.io/"}},"94f785c0c8fb8c4f38cd9cd704416430bcaa2137f27e1468782d624bcd155a43":{name:"Avacus",image_id:"a7106965-91cc-4a73-4688-c5c72ae0ed00",mobile:{universal:"https://avacus.app.link"}},bc949c5d968ae81310268bf9193f9c9fb7bb4e1283e1284af8f2bd4992535fd6:{name:"Argent",image_id:"215158d2-614b-49c9-410f-77aa661c3900",mobile:{universal:"https://www.argent.xyz/app"}},"664b505fea4c2117b8a55c054ef209664e0a68ddaafd7534df739f97a293fa1d":{name:"Hippo Wallet",image_id:"f9570968-45f7-47c1-3189-98cf60e25c00",mobile:{universal:"https://hippowallet.io"}},"0c5bba82e70a2b62405871af809020a077d110d765c0798eb660ad5d3131b328":{name:"Edge Wallet",image_id:"f601bc29-4298-422f-dbf7-34dac2884f00",mobile:{universal:"https://deep.edge.app/wc"}},"792fbacfe787d67595dd4eb38ac308e14b3bbc810393db56f477a92e5ac8764b":{name:"Assure",image_id:"64db7104-c8b7-44ea-e102-11ce87124200",mobile:{universal:"https://www.assure.pro/Official"}},"7ef337ff00714f179d38b8142398efa2ab902a53430e99ebce02892053d7a310":{name:"EASY",image_id:"62feb41a-be1f-4b1c-e089-27f97c0e8d00",mobile:{universal:"https://link.easy.me"}},"7e94e75c90964a69ea375b92214f50c4223dfbfa4913a3733b615444b322f687":{name:"CoinStats",image_id:"f989ab84-650b-4ad5-c342-77f3334f1b00",mobile:{universal:"https://coinstats.app"}},"107bb20463699c4e614d3a2fb7b961e66f48774cb8f6d6c1aee789853280972c":{name:"Bitcoin.com Wallet",image_id:"0d7938e1-9b3b-4d8b-177b-98188c4cf400",mobile:{universal:"https://wallet.bitcoin.com/"}},"1986e7c874bb906f057d5d64a4806c004e021689536e5228c74d64a6058e8bac":{name:"Defiant",image_id:"11a96ca4-3592-42ae-c781-2b7265ec9200",mobile:{universal:"https://defiantapp.tech/"}},"19418ecfd44963883e4d6abca1adeb2036f3b5ffb9bee0ec61f267a9641f878b":{name:"KryptoGO Wallet",image_id:"3ccbd966-97e8-45a0-1ceb-6141a8978e00",mobile:{universal:"https://kryptogo.page.link"}},"37a686ab6223cd42e2886ed6e5477fce100a4fb565dcd57ed4f81f7c12e93053":{name:"Bifrost Wallet",image_id:"86be07e2-6652-4fd1-5f33-651682c95400",mobile:{universal:"https://app.bifrostwallet.com"}},"4f5de5333fed2ccf47c690579aba3b9128aea78175339ff51ef61704bde7502a":{name:"Okse Wallet",image_id:"8a1b36d5-7f40-403a-7000-5d30f9181200",mobile:{universal:"https://okse.io/"}},"9034d54985807aaf3d7780f50f155f954daa468fb58d7b14b216fc79d68bbd14":{name:"Qubic Wallet",image_id:"2e9ef302-daae-4807-555f-d4986b0b6700",mobile:{universal:"https://wallet.qubic.app"}},c39d8ee468e50474fdf3a0bd6b981be404d4671e2702a3d633aae95bcbaa032a:{name:"XFUN Wallet",image_id:"a665f8f3-09ef-4d17-2bd0-26dca4518400",mobile:{universal:"https://xfun.io"}},e9ff15be73584489ca4a66f64d32c4537711797e30b6660dbcb71ea72a42b1f4:{name:"Exodus",image_id:"4c16cad4-cac9-4643-6726-c696efaf5200",mobile:{universal:"https://exodus.com/m"}},"114efdbef4ce710081c1507f3dbc51f439c96a342cf33397799cd1c84b01a8c5":{name:"S-ONE Wallet",image_id:"b3562637-a407-4035-6fa5-a70ff2050400",mobile:{universal:"https://sonewallet.app"}},"5b8e33346dfb2a532748c247876db8d596734da8977905a27b947ba1e2cf465b":{name:"PREMA Wallet",image_id:"6487869b-1165-4f30-aa3a-115665be8300",mobile:{universal:"https://premanft.com"}},"2cca8c1b0bea04ba37dee4017991d348cdb7b826804ab2bd31073254f345b715":{name:"Bee Wallet",image_id:"f90bc33f-f085-40cf-7538-fae5ae84f900",mobile:{universal:"https://beewallet.app/wc"}},e3787ea98d014ca77e2c3794db97c02ef8bcb39347705f5e79502a55434a1ecf:{name:"TK Finance",image_id:"c4066f68-2247-49bf-ac8a-a677bfa81800",mobile:{universal:"https://trustkeys.network"}},"159b0423ce9075d5662f588f805931d989627affab3e63e4dd7ebc62b9c6738c":{name:"Oxalus Wallet",image_id:"a6e22fcb-6b69-45d2-b52d-a4a347a21e00",mobile:{universal:"https://oxalus.page.link/?apn=io.oxalus.wallet&isi=1620111723&ibi=io.oxalus.wallet&link=https://deeplink.oxalus.io"}},fbea6f68df4e6ce163c144df86da89f24cb244f19b53903e26aea9ab7de6393c:{name:"Klever Wallet",image_id:"8f5bbad8-6a14-4b2c-5343-cc1fca6e4d00",mobile:{universal:"https://klever.page.link"}},"1aedbcfc1f31aade56ca34c38b0a1607b41cccfa3de93c946ef3b4ba2dfab11c":{name:"OneKey",image_id:"12bebb3f-8030-4892-8452-c60a6bac1500",mobile:{universal:"https://app.onekey.so/wc/connect"}},"14e5d957c6eb62d3ee8fc6239703ac2d537d7e3552154836ca0beef775f630bc":{name:"Pitaka",image_id:"691c0716-5213-4b99-e837-079268313800",mobile:{universal:"https://app.pitaka.io"}},"031f0187049b7f96c6f039d1c9c8138ff7a17fd75d38b34350c7182232cc29aa":{name:"Obvious",image_id:"40945cea-9cd2-4acc-5799-ca7fb31f4700",mobile:{universal:"https://wallet.obvious.technology"}},c40b9bcef32fa6ce4e0df98be1420628bbc4957646f742380fe618fcb4ab74f1:{name:"RiceWallet",image_id:"df94578e-19be-4f00-258f-2470343e7b00",mobile:{universal:"https://ricewallet.io"}},b265ce38b94d602957a0946673c59a99a15d69adda4317544fec7298ea2d1387:{name:"SafeMoon",image_id:"ecc31a8e-0ee9-49db-cc59-0876b7c35600",mobile:{universal:"https://safemoon.net/"}},dc5415b6ea8114db518ae91195b027d690a11a1d2bfdd1a904e93c5cb746380e:{name:"SimpleHold",image_id:"a9f1ba96-b658-4d13-f71f-226b6389f000",mobile:{universal:"https://simplehold.io"}},"41f20106359ff63cf732adf1f7dc1a157176c9b02fd266b50da6dcc1e9b86071":{name:"Bitizen",image_id:"75dd1471-77e9-4811-ce57-ec8fc980ec00",mobile:{universal:"https://bitizen.org/wallet"}}},es=(e,t="md")=>`https://registry.walletconnect.com/v2/logo/${t}/${e}`;function ts(e){return{name:e.name||"",universalLink:e.mobile.universal||"",deepLink:e.mobile.native||""}}function os(e,t){let o=encodeURIComponent(e);return t.universalLink?`${t.universalLink}/wc?uri=${o}`:t.deepLink?`${t.deepLink}${t.deepLink.endsWith(":")?"//":"/"}wc?uri=${e}`:""}function rs(e,t){return pr.isAndroid?e:os(e,ts(ko[t]))}var fr=(e,t)=>{if(!e)return;if(pr.isAndroid){(0,_n.saveMobileLinkInfo)({name:"Unknown",href:t||"wc:"});return}let o=ko[e];if(!o){console.warn("Attempted to set info for unknown wallet",e);return}let r=os(t||"wc:",ts(o));(0,_n.saveMobileLinkInfo)({name:(o==null?void 0:o.name)||"",href:r})},ns=()=>{!pr.isAndroid||window.open("wc:","_self")};var Sn=class extends Fe{constructor(o,r,n){super("wallet_connect",r,n);this.connectionManager=o}setActive(){return this.walletProvider.walletId&&fr(this.walletProvider.walletId),Promise.resolve(!0)}async connect(o){return o.showPrompt&&await this.promptConnection(),this.getConnectedWallet()}async isConnected(){return this.walletProvider.connected}get walletBranding(){var o,r,n;if(this.walletProvider.walletId){let i=ko[this.walletProvider.walletId];return{name:i.name,icon:this.walletProvider.walletId===ur?Ge:es(i.image_id)}}return{name:er(((o=this.walletProvider.walletMeta)==null?void 0:o.name)||"")||"WalletConnect",icon:((n=(r=this.walletProvider.walletMeta)==null?void 0:r.icons)==null?void 0:n[0])||ro}}async promptConnection(){return new Promise((o,r)=>{this.walletProvider.connector.on("disconnect",(i,a)=>{if(i){r(Ue(i));return}a.params.some(s=>s.message==="Session Rejected")&&(this.setWalletProvider(this.connectionManager.replaceProvider(this,this.walletProvider)),r(new Bt)),r(new Z("Unknown error during connection"))}),this.walletProvider.qrcode&&this.walletProvider.connector.on("modal_closed",()=>{this.setWalletProvider(this.connectionManager.replaceProvider(this,this.walletProvider)),r(new Bt)}),this.walletProvider.connector.on("transport_error",(i,a)=>{r(Ue(i))}),(async()=>{let i="",a=await Promise.race([this.connectionManager.enableProvider(this.walletProvider),pn()]);if(a.length>0&&(i=a[0]),!i||i==="")throw new Z("Unable to retrieve address");this.connected=!0,o()})().catch(i=>r(Ue(i)))})}async sign(o){fr(this.walletProvider.walletId),this.walletProvider.connected||await this.connectionManager.enableProvider(this.walletProvider);let r=await this.walletProvider.getWalletConnector();return new Promise(async(n,i)=>{var a;r.signPersonalMessage([o,(a=this.walletProvider.accounts)==null?void 0:a[0]]).then(s=>n(s)),Ln.isAndroid&&ns()})}disconnect(){this.walletProvider.close().catch(()=>console.warn("Unable to disconnect wallet provider"))}get walletProvider(){return this.proxyProvider.walletProvider}setWalletProvider(o){this.proxyProvider.setWalletProvider(o)}},mr=class{constructor(){this._storageIdToProvider={},this.reconnectDelayMs=10,this.reconnectBackoff=2,!(typeof window>"u")&&K.getKeys().forEach(t=>{var o,r;if(t.startsWith("walletconnect")){let n=t.split(":")[2]?t.split(":")[2]:void 0;if(!n){let i=(r=(o=K.get(t))==null?void 0:o.peerMeta)==null?void 0:r.name;if(i){let a=Pn(i);a!=null&&a.id&&(n=a.id)}}this.createProviderWithStorageId(t,n)}})}createConnector(t,o,r){let n=this.getProviderForAddress(o,r),i=new Sn(this,t,o);return n?n.isConnecting&&(n=this.replaceProvider(i,n)):n=this.createProvider(i,r),i.setWalletProvider(n),i}async disconnect(){await Promise.all(Object.values(this._storageIdToProvider).map(async t=>await t.disconnect()))}getStorageId(t,o){if(!t)return;let r=K.getKeys().filter(i=>i.startsWith("walletconnect"));if(o){let i=r.filter(a=>a.includes(o));if(i){let a=i.find(s=>fn(K.get(s).accounts,t));if(a)return a}}let n=r.find(i=>fn(K.get(i).accounts,t));if(!(n&&o&&!n.includes(o)))return n}getProviderForAddress(t,o){let r=this.getStorageId(t,o);r||(r=`${sn}:${Math.random().toString(36).slice(2)}:${o||""}`);let n=this._storageIdToProvider[r];if(n)return n}createProviderWithStorageId(t,o){let r=o?{qrcode:!1}:{},n=new is.default({infuraId:$o,storageId:t,pollingInterval:Gi,...r});return n.walletId=o,o?n.connector.on("display_uri",(i,a)=>{fr(o);let s=a.params[0],l=rs(s,o);Ln.isAndroid?window.open(l):window.open(l,"_self","noopener,noreferrer")}):n.connector.on("connect",()=>{var i,a,s;(i=n.walletMeta)!=null&&i.name&&(n.walletId=(s=Pn((a=n.walletMeta)==null?void 0:a.name))==null?void 0:s.id)}),this._storageIdToProvider[t]=n,n}createProvider(t,o){let r=`${sn}:${Math.random().toString(36).slice(2)}:${o||""}`,n=this.createProviderWithStorageId(r,o);return n.connector.on("transport_error",()=>{console.warn("Transport failed. Replacing provider."),setTimeout(()=>{t.setWalletProvider(this.replaceProvider(t,n)),this.reconnectDelayMs*=this.reconnectBackoff},this.reconnectDelayMs)}),n}replaceProvider(t,o){o.close().catch(()=>console.warn("Unable to disconnect provider"));let r=Object.entries(this._storageIdToProvider).find(([n,i])=>i.connector.session.key===o.connector.session.key);return r&&delete this._storageIdToProvider[r[0]],this.createProvider(t,o.walletId)}async enableProvider(t){return t.connected?Promise.resolve(t.accounts):await t.enable()}};var An="privy-eip-prefer-phantom",To=()=>{if(!window.ethereum)return!1;if(window.ethereum.isMetaMask)return!0;if(window.ethereum.providers){for(let e of window.ethereum.providers)if(e.isMetaMask)return!0}return!1},Wo=()=>{var e,t;if("phantom"in window){let o=window;if((t=(e=o==null?void 0:o.phantom)==null?void 0:e.ethereum)!=null&&t.isPhantom)return!0}return!1};function hr(e){sessionStorage.setItem("phantom.contentScript.ethProviderOptions",`[["eip155"],"USE_${e?"PHANTOM":"METAMASK"}"]`),localStorage.setItem(An,e?"true":"false")}var lo=()=>{if(!window.ethereum)return!1;if(window.ethereum.isCoinbaseWallet)return!0;if(window.ethereum.providers){for(let e of window.ethereum.providers)if(e.isCoinbaseWallet)return!0}return!1},kn=e=>{let t=localStorage.getItem("-walletlink:https://www.walletlink.org:Addresses");return t?!!(e==null?void 0:e.linkedAccounts.filter(r=>r.type=="wallet"&&r.address===(0,as.getAddress)(t)).length):!1},ss=()=>{var t;let e=K.get(Ko);return e?(t=e.find(o=>o.active))==null?void 0:t.address:null},so=class{constructor(){this.getEthereumProvider=()=>{var t;return((t=this.activeWalletConnector)==null?void 0:t.proxyProvider)||new Be};this.walletConnectors=[],this.wcConnectionManager=new mr,this.initialized=!1}initialize(){this.initialized||(this.load(),this.activeWalletConnector&&this.activeWalletConnector.connect({showPrompt:!1}).catch(t=>console.warn("Unable to reconnect active wallet",t)),this.initialized=!0)}initializeLinkedWallets(t){t.linkedAccounts.forEach(()=>null)}load(){(K.get(Ko)||[]).forEach(o=>{let r=this.createWalletConnector(o.walletType,o.address);this.addWalletConnector(r),o.active&&(this.activeWalletConnector=r)})}save(){let t=this.walletConnectors.map(o=>{var r;return{address:o.address,walletType:o.walletType,active:o.address===((r=this.activeWalletConnector)==null?void 0:r.address)&&o.walletType===this.activeWalletConnector.walletType}});K.put(Ko,t)}addWalletConnector(t){this.walletConnectors.find(r=>r.address===t.address&&r.walletType===t.walletType)||this.walletConnectors.push(t)}getConnectorByAddress(t){return this.walletConnectors.find(o=>{var r;return((r=o.address)==null?void 0:r.toLowerCase())===t.toLowerCase()})}async removeWallet(t){let o=this.walletConnectors.find(r=>r.address===t);o&&o.disconnect(),this.walletConnectors=this.walletConnectors.filter(r=>r.address!==t),this.activeWalletConnector=void 0,this.save()}async activeWalletSign(t){if(!this.activeWalletConnector)throw new Z("Cannot sign, no wallet is active. Is a wallet connected?");return this.activeWalletConnector.sign(t)}async setActiveWallet(t){let o=this.walletConnectors.find(r=>r.address===t);if(o){let r=await o.setActive();return this.activeWalletConnector=r?o:void 0,this.activeWalletConnector&&this.activeWalletConnector.proxyProvider.on("accountsChanged",n=>{var i;n.length===0&&(((i=this.activeWalletConnector)==null?void 0:i.address)===t&&(this.activeWalletConnector=void 0),this.save())}),this.save(),!0}return!1}createWalletConnector(t,o,r){switch(t){case"metamask":return new or(new Be,o);case"phantom":return new rr(new Be,o);case"coinbase_wallet":return new Xo(new Be,o);case"wallet_connect":return this.wcConnectionManager.createConnector(new Be,o,r)}}};function ut(e){return new Date(e*1e3)}function Zc(e){let t=[];for(let o of e){let r=o.type;switch(o.type){case"wallet":let n={address:o.address,type:o.type,verifiedAt:ut(o.verified_at),chainType:o.chain_type,walletClient:o.wallet_client};t.push(n);break;case"email":let i={address:o.address,type:o.type,verifiedAt:ut(o.verified_at)};t.push(i);break;case"phone":let a={number:o.phoneNumber,type:o.type,verifiedAt:ut(o.verified_at)};t.push(a);break;case"google_oauth":let s={subject:o.subject,email:o.email,name:o.name,type:o.type,verifiedAt:ut(o.verified_at)};t.push(s);break;case"twitter_oauth":let l={subject:o.subject,username:o.username,name:o.name,type:o.type,verifiedAt:ut(o.verified_at)};t.push(l);break;case"discord_oauth":let c={subject:o.subject,username:o.username,email:o.email,type:o.type,verifiedAt:ut(o.verified_at)};t.push(c);break;case"github_oauth":let h={subject:o.subject,username:o.username,name:o.name,email:o.email,type:o.type,verifiedAt:ut(o.verified_at)};t.push(h);break;case"apple_oauth":let m={subject:o.subject,email:o.email,type:o.type,verifiedAt:ut(o.verified_at)};t.push(m);break;default:console.warn(`Unrecognized account type: ${r}. Please consider upgrading the Privy SDK.`)}}return t}function Pt(e,t){return e.sort((o,r)=>r.verifiedAt.getTime()-o.verifiedAt.getTime()),e.find(o=>o.type===t)}function Ro(e){let t=ss();if(!t&&e.wallet)return e;let o=e.linkedAccounts.find(n=>n.type==="wallet"&&n.address===t);if(!o)return e;let r=Object.assign({},e);return r.wallet=o&&{address:o.address,chainType:o.chainType,chainId:o.chainId,walletClient:o.walletClient},r}var ne=e=>e==null?void 0:e.linkedAccounts.find(t=>t.type==="wallet"&&t.walletClient==="privy");function ft(e){if(!e)return null;let t=Zc(e.linked_accounts),o=Pt(t,"wallet"),r=Pt(t,"email"),n=Pt(t,"phone"),i=Pt(t,"google_oauth"),a=Pt(t,"twitter_oauth"),s=Pt(t,"discord_oauth"),l=Pt(t,"github_oauth"),c=Pt(t,"apple_oauth"),h={id:e.id,createdAt:ut(e.created_at),linkedAccounts:t,email:r&&{address:r==null?void 0:r.address},phone:n&&{number:n==null?void 0:n.number},wallet:o&&{address:o.address,chainType:o.chainType,chainId:o.chainId,walletClient:o.walletClient},google:i&&{subject:i.subject,email:i.email,name:i.name},twitter:a&&{subject:a.subject,username:a.username,name:a.name},discord:s&&{subject:s.subject,username:s.username,email:s.email},github:l&&{subject:l.subject,username:l.username,name:l.name,email:l.email},apple:c&&{subject:c.subject,email:c.email}};return Ro(h)}var gr=S(require("axios"));var br=class{constructor(t,o,r){this.appId=t,this.sdkVersion=qo,this.client=o,this.defaults=r}async get(t,o,r=!0){try{return await gr.default.get(t,await this.buildConfig({headers:{"Cache-Control":"no-cache"},...o},r))}catch(n){throw re(n)}}async post(t,o,r,n=!0){try{return await gr.default.post(t,o,await this.buildConfig(r,n))}catch(i){throw re(i)}}async delete(t,o,r=!0){try{return await gr.default.delete(t,await this.buildConfig(o,r))}catch(n){throw re(n)}}async buildConfig(t,o=!0){if(t=t||{},t.headers=t.headers||{},t.headers["privy-app-id"]=this.appId,t.headers["privy-client"]=`react-auth:${this.sdkVersion}`,o){let r=await this.client.getAccessToken();r!==null&&(t.headers.authorization=`Bearer ${r}`)}return{...this.defaults,...t}}};function ls(e){return e instanceof Nt?"email":e instanceof Dt?"sms":e instanceof Ct?"siwe":e instanceof wt?e.meta.provider:null}var St=class{constructor(t){this.promise=null;this.fn=t}execute(t){return this.promise===null&&(this.promise=(async()=>{try{return await this.fn(t)}finally{this.promise=null}})()),this.promise}};var cs=S(require("jose")),mt=class{static parse(t){try{return new mt(t)}catch{return null}}constructor(t){this.value=t,this._decoded=cs.decodeJwt(t)}get subject(){return this._decoded.sub}get expiration(){return this._decoded.exp}get issuer(){return this._decoded.iss}get audience(){return this._decoded.aud}isExpired(t=0){let o=Date.now(),r=(this.expiration-t)*1e3;return o>=r}};var Kc=30,yr=class{constructor(){this.authenticateOnce=new St(async t=>this._authenticate(t)),this.linkOnce=new St(async t=>this._link(t)),this.refreshOnce=new St(this._refresh.bind(this)),this.destroyOnce=new St(this._destroy.bind(this)),this.forkSessionOnce=new St(this._forkSession.bind(this))}get token(){try{let t=K.get(eo);return typeof t=="string"?new mt(t).value:null}catch(t){return console.error(t),this.destroyLocalState(),null}}get refreshToken(){try{let t=K.get(Zo);return typeof t=="string"?t:null}catch(t){return console.error(t),this.destroyLocalState(),null}}get forkedToken(){try{let t=K.get(So);return typeof t=="string"?t:null}catch(t){return console.error(t),this.destroyLocalState(),null}}hasRefreshCredentials(){return typeof this.token=="string"&&typeof this.refreshToken=="string"}hasRecoveryCredentials(){return typeof this.forkedToken=="string"}hasActiveToken(){let t=mt.parse(this.token);return t!==null&&!t.isExpired(Kc)}authenticate(t){return this.authenticateOnce.execute(t)}link(t){return this.linkOnce.execute(t)}refresh(){return this.refreshOnce.execute()}forkSession(){return this.forkSessionOnce.execute()}destroy(){return this.destroyOnce.execute()}async _authenticate(t){try{let{token:o,refresh_token:r,user:n,is_new_user:i}=await t.authenticate();this.storeToken(o),this.storeRefreshToken(r);let a=ls(t);return a&&this.client&&this.client.createAnalyticsEvent("sdk_authenticate",{method:a,isNewUser:i}),a==="siwe"&&this.client&&this.client.createAnalyticsEvent("sdk_authenticate_siwe",{walletType:t.meta.walletType,walletName:t.meta.walletName}),{user:ft(n),isNewUser:i}}catch(o){throw console.warn("Error authenticating session"),Oe(o)}}async _link(t){try{let o=await t.link();return ft(o)}catch(o){throw console.warn("Error linking account"),Oe(o)}}async _refresh(){if(!this.api)throw new x("Session has no API instance");if(!this.client)throw new x("Session has no PrivyClient instance");await this.client.getAccessToken({disableAutoRefresh:!0});let t=this.token,o=this.refreshToken,r=this.forkedToken;try{let n;if(t&&o)n=await this.api.post(yi(),{refresh_token:o},{headers:{authorization:`Bearer ${t}`}},!1),r&&this.clearForkedToken();else if(r)n=await this.api.post(Ci(),{refresh_token:r},{},!1),this.clearForkedToken();else return null;return this.storeToken(n.data.token),this.storeRefreshToken(n.data.refresh_token),ft(n.data.user)}catch(n){if(n instanceof Qt&&n.status===400&&n.message==="Invalid auth token")return this.destroyLocalState(),null;throw Oe(n)}}async _destroy(){var t;try{await((t=this.api)==null?void 0:t.post(vi(),{refresh_token:this.refreshToken}))}catch{console.warn("Error destroying session")}this.destroyLocalState()}async _forkSession(){if(!this.api)throw new x("Session has no API instance");let t=this.refreshToken;try{let o=await this.api.post(wi(),{refresh_token:t});return this.storeToken(o.data.token),this.storeRefreshToken(o.data.refresh_token),o.data.new_session_refresh_token}catch(o){throw Oe(o)}}destroyLocalState(){this.storeToken(null),this.storeRefreshToken(null),this.clearForkedToken()}storeToken(t){typeof t=="string"?K.put(eo,t):K.del(eo)}storeRefreshToken(t){typeof t=="string"?K.put(Zo,t):K.del(Zo)}clearForkedToken(){K.del(So)}};var Tn,co=class{constructor(t){this.apiUrl=t.apiUrl||zo;let o=t.timeout||Fi;this.appId=t.appId,this.clientAnalyticsId=typeof window>"u"?null:crypto.randomUUID(),this.connectors=new so,Tn||(Tn=new yr),this.session=Tn,this.api=new br(t.appId,this,{baseURL:this.apiUrl,timeout:o}),this.session.api=this.api,this.session.client=this}authenticate(){if(!this.authFlow)throw new x("No auth flow in progress.");return this.session.authenticate(this.authFlow)}link(){if(!this.authFlow)throw new x("No auth flow in progress.");return this.session.link(this.authFlow)}async logout(){await this.session.destroy(),this.authFlow=void 0}startAuthFlow(t){t.api=this.api,this.authFlow=t}async unlinkEmail(t){try{let o=await this.api.post(Oi(),{address:t});return ft(o.data)}catch(o){throw Oe(o)}}async unlinkPhone(t){try{let o=await this.api.post(Ni(),{phoneNumber:t});return ft(o.data)}catch(o){throw Oe(o)}}async unlinkWallet(t){try{let o=await this.api.post(Mi(),{address:t});return await this.connectors.removeWallet(t),ft(o.data)}catch(o){throw Oe(o)}}async unlinkOAuth(t,o){try{let r=await this.api.post(Di(),{provider:t,subject:o});return ft(r.data)}catch(r){throw Oe(r)}}async createAnalyticsEvent(t,o,r){try{if(!this.clientAnalyticsId)throw new Error("Cannot create analytics event if run in node and not browswer");await this.api.post(Ui(),{event_name:t,client_id:this.clientAnalyticsId,payload:{...o||{},clientTimestamp:r?r.toISOString():new Date().toISOString()}})}catch(n){console.error("Failed to create analytics event",n)}}async getAuthenticatedUser(){return this.session.hasRefreshCredentials()||this.session.hasRecoveryCredentials()?this.session.refresh():null}async getAccessToken(t){var o;return this.session.hasActiveToken()?((o=mt.parse(this.session.token))==null?void 0:o.audience)!==this.appId?(await this.logout(),null):this.session.token:!(t!=null&&t.disableAutoRefresh)&&this.session.hasRefreshCredentials()?(await this.session.refresh(),this.session.token):null}async getServerConfig(){try{let t=await this.api.get(`/api/v1/apps/${this.appId}`);return{id:t.data.id,name:t.data.name,verificationKey:t.data.verification_key,logoUrl:t.data.logo_url||void 0,accentColor:t.data.accent_color||void 0,showWalletLoginFirst:t.data.show_wallet_login_first,allowlistConfig:{errorTitle:t.data.allowlist_config.error_title,errorDetail:t.data.allowlist_config.error_detail,errorCtaText:t.data.allowlist_config.cta_text,errorCtaLink:t.data.allowlist_config.cta_link},walletAuth:t.data.wallet_auth,emailAuth:t.data.email_auth,smsAuth:t.data.sms_auth,googleOAuth:t.data.google_oauth,twitterOAuth:t.data.twitter_oauth,discordOAuth:t.data.discord_oauth,githubOAuth:t.data.github_oauth,appleOAuth:t.data.apple_oauth,termsAndConditionsUrl:t.data.terms_and_conditions_url,privacyPolicyUrl:t.data.privacy_policy_url,createdAt:new Date(t.data.created_at*1e3),updatedAt:new Date(t.data.updated_at*1e3)}}catch(t){throw Oe(t)}}async setActiveWallet(t,o){if(!o.linkedAccounts.map(i=>i.type==="wallet"?i.address:null).includes(t))throw new x("Cannot set an unlinked address as active.");if(!await this.connectors.setActiveWallet(t))throw new x("Error setting the active wallet.");return Ro(o)}async forkSession(){return await this.session.forkSession()}};var w4=require("wicg-inert"),Xr=require("body-scroll-lock"),Qr=require("react"),pi=require("react"),Bl=S(require("react-dom")),en=S(require("styled-components"));var vr=require("react");var Wn=(0,vr.createContext)({isLinking:!1,linkingHint:null,activeStatus:null,walletConnectionStatus:null,getAuthMeta:_,getAuthFlow:_,closePrivyModal:_,initLoginWithWallet:_,loginWithWallet:_,loginWithCode:_,initLoginWithEmail:_,initLoginWithSms:_,resendEmailCode:_,resendSmsCode:_,initLoginWithOAuth:_,loginWithOAuth:_,refreshUser:_,walletProxy:null}),k=()=>(0,vr.useContext)(Wn);var wr=require("react");var Rn=(0,wr.createContext)({ready:!1,authenticated:!1,user:null,walletConnectors:null,login:_,linkEmail:_,linkPhone:_,linkWallet:_,linkGoogle:_,linkTwitter:_,linkDiscord:_,linkGithub:_,linkApple:_,logout:_,getAccessToken:_,getEthereumProvider:_,getEthersProvider:_,getWeb3jsProvider:_,unlinkEmail:_,unlinkPhone:_,unlinkWallet:_,unlinkGoogle:_,unlinkTwitter:_,unlinkDiscord:_,unlinkGithub:_,unlinkApple:_,setActiveWallet:_,forkSession:_,createWallet:_,signMessage:_,exportWallet:_}),N=()=>(0,wr.useContext)(Rn);var _r=S(require("styled-components"));var ht=S(require("styled-components"));var Cr=S(require("styled-components")),Lt=require("react/jsx-runtime"),Er=({success:e,fail:t})=>(0,Lt.jsxs)(Lt.Fragment,{children:[(0,Lt.jsx)(Io,{className:e?"success":t?"fail":""}),(0,Lt.jsx)(Jc,{className:e?"success":t?"fail":""})]}),Io=Cr.default.span`
12
+ - https://privy.io`;this.proxyProvider=o,this.walletType=t,this.address=r,this.chain=null,this.connected=!1}async fetchAddress(){if(!this.address){let t=await this.proxyProvider.request({method:"eth_accounts"});Array.isArray(t)&&t.length>0&&(this.address=(0,Vi.getAddress)(t[0]))}return this.address}async fetchChainId(){if(!this.chain){let t=await this.proxyProvider.request({method:"eth_chainId"}),o=Number(t);this.chain=String(o)}return this.chain}async getConnectedWallet(){if(!this.walletType||!await this.isConnected())return null;let o=await this.fetchAddress(),r=await this.fetchChainId();return{address:o,chainId:r,chainType:"ethereum",walletClient:"unknown"}}async setActive(){return!0}async sign(t){return await this.connect({showPrompt:!1}),new ji.Web3Provider(new Et(this.proxyProvider)).getSigner().signMessage(t)}prepareMessage(t,o,r){let n=window.location.host,i=window.location.origin,a="By signing, you are proving you own this wallet and logging in. This does not initiate a transaction or cost any fees.",s=new Date().toISOString();return this.createSiweMessage(t,o,n,i,s,r,a)}};var dc=e=>{let t=`https://mainnet.infura.io/v3/${$o}`,o=1;return e.makeWeb3Provider(t,o)},Yo,Xo=class extends Fe{constructor(t,o){super("coinbase_wallet",t,o),Yo||(Yo=new $i.default({appName:"Privy",darkMode:!1,headlessMode:!1}))}async connect(t){return this.proxyProvider.setWalletProvider(dc(Yo)),t.showPrompt&&await this.promptConnection(),await this.isConnected()?this.getConnectedWallet():null}disconnect(){Yo.disconnect()}async isConnected(){return await this.fetchAddress()!==null}get walletBranding(){return{name:"Coinbase Wallet",icon:De}}async promptConnection(){try{let t="",o=await this.proxyProvider.request({method:"eth_requestAccounts"});if(o.length>0&&(t=(0,zi.getAddress)(o[0])),!t||t==="")throw new Z("Unable to retrieve address");this.connected=!0}catch(t){throw Ue(t)}}};var tr=require("@ethersproject/address"),mn=require("@ethersproject/providers"),Xi=require("react-device-detect");var le=require("react/jsx-runtime"),Ge=({style:e,...t})=>(0,le.jsxs)("svg",{width:"28",height:"28",viewBox:"0 0 28 28",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{height:"28px",width:"28px",...e},...t,children:[(0,le.jsx)("rect",{width:"28",height:"28",rx:"3",fill:"white"}),(0,le.jsx)("path",{d:"M23.0126 5L15.1958 10.7823L16.6533 7.37359L23.0126 5Z",fill:"#E17726",stroke:"#E17726",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),(0,le.jsx)("path",{d:"M4.98753 5L12.7329 10.8299L11.3468 7.37954L4.98753 5ZM20.1987 18.4027L18.1166 21.5794L22.5723 22.8049L23.8454 18.4741L20.1987 18.4027ZM4.16064 18.4741L5.42775 22.8049L9.87153 21.5794L7.80133 18.4027L4.16064 18.4741Z",fill:"#E27625",stroke:"#E27625",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),(0,le.jsx)("path",{d:"M9.6336 13.0369L8.39624 14.9049L12.7984 15.1071L12.6556 10.3659L9.6336 13.0429V13.0369ZM18.3665 13.0429L15.2969 10.3064L15.1958 15.1071L19.5979 14.9049L18.3665 13.0429ZM9.87155 21.5794L12.5426 20.2945L10.2463 18.5098L9.87155 21.5794ZM15.4635 20.2886L18.1166 21.5794L17.7597 18.5039L15.4635 20.2886Z",fill:"#E27625",stroke:"#E27625",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),(0,le.jsx)("path",{d:"M18.1167 21.5794L15.4635 20.2944L15.6776 22.0196L15.6539 22.7513L18.1167 21.5794ZM9.87158 21.5794L12.3463 22.7513L12.3285 22.0196L12.5426 20.2944L9.87158 21.5794Z",fill:"#D5BFB2",stroke:"#D5BFB2",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),(0,le.jsx)("path",{d:"M12.3878 17.3616L10.1868 16.7191L11.7454 16.0052L12.3938 17.3616H12.3878ZM15.6062 17.3616L16.2605 15.9993L17.8251 16.7131L15.6062 17.3675V17.3616Z",fill:"#233447",stroke:"#233447",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),(0,le.jsx)("path",{d:"M9.87147 21.5794L10.2581 18.4027L7.80127 18.4741L9.87147 21.5794ZM17.7418 18.4027L18.1166 21.5794L20.1987 18.4741L17.7418 18.4027ZM19.6038 14.9048L15.2016 15.107L15.6061 17.3676L16.2605 15.9994L17.8251 16.7132L19.6038 14.9048ZM10.1868 16.7192L11.7454 16.0053L12.3938 17.3617L12.8042 15.1011L8.4021 14.9048L10.1868 16.7192Z",fill:"#CC6228",stroke:"#CC6228",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),(0,le.jsx)("path",{d:"M8.4021 14.9048L10.2462 18.5038L10.1868 16.7192L8.4021 14.9048ZM17.8251 16.7192L17.7537 18.5038L19.5978 14.9048L17.8251 16.7192ZM12.8042 15.107L12.3878 17.3676L12.9113 20.0327L13.0303 16.5169L12.8042 15.107ZM15.1957 15.107L14.9815 16.511L15.0886 20.0327L15.6061 17.3617L15.1957 15.1011V15.107Z",fill:"#E27525",stroke:"#E27525",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),(0,le.jsx)("path",{d:"M15.6062 17.3617L15.0887 20.0327L15.4635 20.2945L17.7538 18.5098L17.8252 16.7192L15.6062 17.3617ZM10.1869 16.7192L10.2463 18.5039L12.5426 20.2885L12.9114 20.0327L12.3939 17.3617L10.1809 16.7192H10.1869Z",fill:"#F5841F",stroke:"#F5841F",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),(0,le.jsx)("path",{d:"M15.6598 22.7513L15.6776 22.0196L15.4754 21.853H12.5248L12.3285 22.0196L12.3463 22.7513L9.87158 21.5793L10.7401 22.2932L12.495 23.5008H15.4992L17.26 22.2873L18.1167 21.5793L15.6539 22.7513H15.6598Z",fill:"#C0AC9D",stroke:"#C0AC9D",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),(0,le.jsx)("path",{d:"M15.4634 20.2885L15.0886 20.0327H12.9114L12.5425 20.2945L12.3284 22.0196L12.5247 21.8531H15.4753L15.6776 22.0196L15.4634 20.2945V20.2885Z",fill:"#161616",stroke:"#161616",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),(0,le.jsx)("path",{d:"M23.3456 11.1571L24 7.97442L23.0125 5L15.4575 10.5919L18.3664 13.0369L22.4711 14.2326L23.3754 13.1797L22.9827 12.8941L23.6074 12.323L23.1315 11.9542L23.7561 11.4783L23.3397 11.1571H23.3456ZM4 7.96847L4.66627 11.1571L4.23795 11.4723L4.87448 11.9482L4.39857 12.323L5.01725 12.8941L4.62463 13.1797L5.52885 14.2326L9.63355 13.0428L12.5425 10.586L4.98751 5L4 7.96847Z",fill:"#763E1A",stroke:"#763E1A",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"}),(0,le.jsx)("path",{d:"M22.4712 14.2325L18.3665 13.0428L19.6038 14.9048L17.7597 18.5038L20.1987 18.4741H23.8454L22.4712 14.2325ZM9.63358 13.0368L5.52888 14.2325L4.16064 18.4741H7.80728L10.2463 18.5038L8.40217 14.9048L9.63953 13.0368H9.63358ZM15.1957 15.107L15.4634 10.5859L16.6532 7.37354H11.3468L12.5366 10.5859L12.8043 15.107L12.9054 16.5229V20.0327H15.0887L15.1006 16.5229L15.1957 15.107Z",fill:"#F5841F",stroke:"#F5841F",strokeWidth:"0.25",strokeLinecap:"round",strokeLinejoin:"round"})]});var qi=require("libphonenumber-js/min");var Zi=e=>!!String(e).toLowerCase().match(/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/),Ki=e=>(0,qi.isPossiblePhoneNumber)(String(e),"US"),Ji=(e,t)=>{let o=e.slice(0),r=[];for(;o.length;)r.push(o.splice(0,t));return r},Gt=(e,t=3,o=4)=>{if(!e)return"";let r=2,n=3;if(t+o+r+n>=e.length)return e;let i=e.slice(0,r+t),a=e.slice(e.length-o,e.length);return`${i}...${a}`},un=e=>new Promise(t=>setTimeout(t,e)),Yi=(e,t={})=>{let o=t.delayMs||40,r=t.maxAttempts||1e3;return new Promise(async(n,i)=>{let a=!1,s=0;for(;!a&&s<r;)e().then(()=>{a=!0,n()},(...l)=>{a=!0,i(...l)}),s+=1,await un(o);a||i(new Error("Exceeded max attempts before resolving function"))})},Qo=(e,t,o={})=>{let r=new URL(t,e);for(let[n,i]of Object.entries(o))r.searchParams.set(n,i);return r.href},pc=(e,t)=>e.toLowerCase()===t.toLowerCase(),fn=(e,t)=>{for(let o of e)if(pc(o,t))return!0;return!1},er=e=>e.replace(/([\u2700-\u27BF]|[\uE000-\uF8FF]|\uD83C[\uDC00-\uDFFF]|\uD83D[\uDC00-\uDFFF]|[\u2011-\u26FF]|\uD83E[\uDD10-\uDDFF])/g,"");var Qi=async()=>{let t=await new mn.Web3Provider(window.ethereum).listAccounts();return t.length===0?null:(0,tr.getAddress)(t[0])},or=class extends Fe{constructor(t,o){var r;super("metamask",t,o),this.proxyProvider.setWalletProvider(window.ethereum),(r=window.ethereum.providers)==null||r.forEach(n=>{n.isMetaMask&&this.proxyProvider.setWalletProvider(n)}),this.subscribeListeners()}async connect(t){return t.showPrompt&&await this.promptConnection(),await this.isConnected()?this.getConnectedWallet():null}async isConnected(){let t=await this.connectedMetamaskAddress();return this.address===t}async connectedMetamaskAddress(){let o=await new mn.Web3Provider(this.proxyProvider).listAccounts();return o.length===0?null:(0,tr.getAddress)(o[0])}get walletBranding(){return{name:"MetaMask",icon:Ge}}disconnect(){console.warn("Metamask does not support programmetic disconnect.")}async promptConnection(){try{let t="";if(!Xi.isMobile&&(await this.proxyProvider.request({method:"wallet_requestPermissions",params:[{eth_accounts:{}}]}),this.address&&!await this.isConnected()))throw new Z("Selected the wrong wallet in MetaMask");let o=await this.proxyProvider.request({method:"eth_requestAccounts"});if(o.length>0&&(t=(0,tr.getAddress)(o[0])),!t||t==="")throw new Z("Unable to retrieve address");if(this.address&&t!==this.address)return;this.connected=!0,this.address=t}catch(t){throw Ue(t)}}async setActive(){if(await this.connectedMetamaskAddress()===this.address)return this.connected=!0,!0;for(;!await this.isConnected();)await un(200);return this.connected=!0,!0}subscribeListeners(){this.proxyProvider.on("accountsChanged",t=>{var o;if(t.length>0){let r=t[0];this.connected=((o=this.address)==null?void 0:o.toLowerCase())===(r==null?void 0:r.toLowerCase())}else this.connected=!1}),this.proxyProvider.on("disconnect",()=>{this.connected=!1})}};var hn=require("@ethersproject/address"),ea=require("@ethersproject/providers");var He=require("react/jsx-runtime"),xt=({style:e,...t})=>(0,He.jsxs)("svg",{width:"28",height:"28",viewBox:"0 0 28 28",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{height:"28px",width:"28px",...e},...t,children:[(0,He.jsx)("rect",{width:"28",height:"28",rx:"6",fill:"url(#paint0_linear_1765_9937)"}),(0,He.jsx)("path",{d:"M24.0223 14.1704H21.5542C21.5542 9.14083 17.4627 5.06372 12.4151 5.06372C7.43008 5.06372 3.37717 9.04101 3.27798 13.9845C3.17536 19.0945 7.98653 23.5318 13.1154 23.5318H13.7605C18.2822 23.5318 24.3426 20.0047 25.2895 15.7072C25.4643 14.9151 24.8364 14.1704 24.0223 14.1704ZM8.74752 14.3945C8.74752 15.0671 8.19544 15.6172 7.52045 15.6172C6.84545 15.6172 6.29341 15.0669 6.29341 14.3945V12.4165C6.29341 11.7439 6.84545 11.1938 7.52045 11.1938C8.19544 11.1938 8.74752 11.7439 8.74752 12.4165V14.3945ZM13.0083 14.3945C13.0083 15.0671 12.4563 15.6172 11.7813 15.6172C11.1063 15.6172 10.5543 15.0669 10.5543 14.3945V12.4165C10.5543 11.7439 11.1065 11.1938 11.7813 11.1938C12.4563 11.1938 13.0083 11.7439 13.0083 12.4165V14.3945Z",fill:"url(#paint1_linear_1765_9937)"}),(0,He.jsxs)("defs",{children:[(0,He.jsxs)("linearGradient",{id:"paint0_linear_1765_9937",x1:"14",y1:"0",x2:"14",y2:"28",gradientUnits:"userSpaceOnUse",children:[(0,He.jsx)("stop",{stopColor:"#534BB1"}),(0,He.jsx)("stop",{offset:"1",stopColor:"#551BF9"})]}),(0,He.jsxs)("linearGradient",{id:"paint1_linear_1765_9937",x1:"14.2976",y1:"5.06372",x2:"14.2976",y2:"23.5318",gradientUnits:"userSpaceOnUse",children:[(0,He.jsx)("stop",{stopColor:"white"}),(0,He.jsx)("stop",{offset:"1",stopColor:"white",stopOpacity:"0.82"})]})]})]});var rr=class extends Fe{constructor(t,o){var r;if(super("phantom",t,o),"phantom"in window){let n=window;this.proxyProvider.setWalletProvider(n.phantom.ethereum),(r=n.phantom.ethereum.providers)==null||r.forEach(i=>{i.isPhantom&&this.proxyProvider.setWalletProvider(i)})}this.subscribeListeners()}async connect(t){return t.showPrompt&&await this.promptConnection(),await this.isConnected()?this.getConnectedWallet():null}async isConnected(){let t=await this.connectedPhantomAddress();return this.address===t}async connectedPhantomAddress(){let o=await new ea.Web3Provider(this.proxyProvider).listAccounts();return o.length===0?null:(0,hn.getAddress)(o[0])}get walletBranding(){return{name:"Phantom",icon:xt}}disconnect(){console.warn("Phantom does not support programmetic disconnect.")}async promptConnection(){try{let t="";if(this.address&&await this.isConnected())throw new Z("Selected the wrong wallet in Phantom");let o=await this.proxyProvider.request({method:"eth_requestAccounts"});if(o.length>0&&(t=(0,hn.getAddress)(o[0])),!t||t==="")throw new Z("Unable to retrieve address");this.connected=!0,this.address=t}catch(t){throw Ue(t)}}subscribeListeners(){this.proxyProvider.on("accountsChanged",t=>{var o;if(t.length>0){let r=t[0];this.connected=((o=this.address)==null?void 0:o.toLowerCase())===(r==null?void 0:r.toLowerCase())}else this.connected=!0}),this.proxyProvider.on("disconnect",()=>{this.connected=!1})}};var is=S(require("@walletconnect/web3-provider")),Ln=require("react-device-detect");var Je=require("react");var oa=require("react/jsx-runtime");function ta(e){return(0,oa.jsx)("link",{rel:"prefetch",href:e.src})}var nr=require("react/jsx-runtime"),dt="LANDING",ra=(0,Je.createContext)({ready:!1,app:null,options:{email:!0,sms:!1,wallet:!0,google:!1,twitter:!1,discord:!1,github:!1,apple:!1},currentScreen:dt,lastScreen:dt,navigate:_,navigateBack:_,setModalData:_}),na=e=>{var h;let t=e.appConfig,o=e.authenticated,r=e.visible,[n,i]=(0,Je.useState)(e.initialScreen||dt),[a,s]=(0,Je.useState)(e.initialScreen||dt);(0,Je.useEffect)(()=>{o||i(dt)},[o]),(0,Je.useEffect)(()=>{r||(s(dt),i(dt))},[r]),(0,Je.useEffect)(()=>{e.initialScreen&&n===dt&&(i(e.initialScreen),s(e.initialScreen))},[e.initialScreen]);let l=e.initialScreen&&n===dt?e.initialScreen:n,c={ready:!!(t!=null&&t.id),app:t,options:e.options,data:e.data,setModalData:e.setModalData,currentScreen:l,lastScreen:a,navigate:m=>{s(n),i(m)},navigateBack:()=>{i(a)}};return(0,nr.jsxs)(ra.Provider,{value:c,children:[t&&((h=t.appearance)==null?void 0:h.logo)&&(0,nr.jsx)(ta,{src:t.appearance.logo}),e.children]})},E=()=>(0,Je.useContext)(ra);var pt=require("react/jsx-runtime"),ro=({style:e,...t})=>{let{app:o}=E();return(0,pt.jsxs)("svg",{width:"28",height:"28",viewBox:"0 0 28 28",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{height:"28px",width:"28px",...e},...t,children:[(0,pt.jsx)("rect",{width:"28",height:"28",rx:"3",fill:(o==null?void 0:o.appearance.palette.colorScheme)==="dark"?"#3396ff":"#141414"}),(0,pt.jsx)("g",{clipPath:"url(#clip0_1765_9946)",children:(0,pt.jsx)("path",{d:"M8.09448 10.3941C11.3558 7.20196 16.6442 7.20196 19.9055 10.3941L20.2982 10.7782C20.3369 10.8157 20.3677 10.8606 20.3887 10.9102C20.4097 10.9599 20.4206 11.0132 20.4206 11.0671C20.4206 11.121 20.4097 11.1744 20.3887 11.224C20.3677 11.2737 20.3369 11.3186 20.2982 11.3561L18.9554 12.6702C18.9158 12.7086 18.8628 12.7301 18.8077 12.7301C18.7526 12.7301 18.6996 12.7086 18.66 12.6702L18.1198 12.1415C15.8448 9.91503 12.1557 9.91503 9.88015 12.1415L9.30167 12.7075C9.26207 12.7459 9.20909 12.7673 9.15395 12.7673C9.0988 12.7673 9.04582 12.7459 9.00622 12.7075L7.66346 11.3934C7.62475 11.3559 7.59397 11.3109 7.57295 11.2613C7.55193 11.2117 7.5411 11.1583 7.5411 11.1044C7.5411 11.0505 7.55193 10.9971 7.57295 10.9475C7.59397 10.8979 7.62475 10.8529 7.66346 10.8154L8.09448 10.3941ZM22.6829 13.1115L23.8776 14.2814C23.9163 14.319 23.9471 14.3639 23.9681 14.4135C23.9892 14.4632 24 14.5165 24 14.5704C24 14.6243 23.9892 14.6777 23.9681 14.7273C23.9471 14.777 23.9163 14.8219 23.8776 14.8594L18.4893 20.1332C18.4102 20.2101 18.3042 20.2531 18.1938 20.2531C18.0835 20.2531 17.9775 20.2101 17.8984 20.1332L14.0743 16.3901C14.0545 16.3708 14.0279 16.36 14.0003 16.36C13.9726 16.36 13.9461 16.3708 13.9263 16.3901L10.1021 20.1332C10.023 20.2101 9.91703 20.2531 9.8067 20.2531C9.69636 20.2531 9.59038 20.2101 9.51124 20.1332L4.12236 14.8594C4.08365 14.8219 4.05287 14.777 4.03185 14.7273C4.01083 14.6777 4 14.6243 4 14.5704C4 14.5165 4.01083 14.4632 4.03185 14.4135C4.05287 14.3639 4.08365 14.319 4.12236 14.2814L5.31767 13.1115C5.39678 13.0348 5.50265 12.9919 5.61285 12.9919C5.72305 12.9919 5.82892 13.0348 5.90803 13.1115L9.73216 16.8546C9.75194 16.874 9.7785 16.8848 9.80616 16.8848C9.83381 16.8848 9.86037 16.874 9.88015 16.8546L13.7043 13.1115C13.7834 13.0346 13.8894 12.9916 13.9997 12.9916C14.1101 12.9916 14.216 13.0346 14.2952 13.1115L18.1198 16.8546C18.1396 16.874 18.1662 16.8848 18.1938 16.8848C18.2215 16.8848 18.2481 16.874 18.2678 16.8546L22.092 13.1115C22.1711 13.0346 22.2771 12.9916 22.3874 12.9916C22.4977 12.9916 22.6037 13.0346 22.6829 13.1115Z",fill:"white"})}),(0,pt.jsx)("defs",{children:(0,pt.jsx)("clipPath",{id:"clip0_1765_9946",children:(0,pt.jsx)("rect",{width:"20",height:"12.2531",fill:"white",transform:"translate(4 8)"})})})]})};var _n=S(Qa()),pr=require("react-device-detect");var ur="c57ca95b47569778a828d19178114f4db188b89b763c899ba0be274e97267d96",Pn=e=>{let t=er(e).trim().toLowerCase();for(let[o,r]of Object.entries(ko))if(r.name.toLowerCase()===t)return{id:o,entry:r}},ko={"1ae92b26df02f0abca6304df07debccd18262fdf5fe82daa81593582dac9a369":{name:"Rainbow",image_id:"7a33d7f1-3d12-4b5c-f3ee-5cd83cb1b500",mobile:{universal:"https://rnbwapp.com"}},"4622a2b2d6af1c9844944291e5e7351a6aa24cd7b23099efac1b2fd875da31a0":{name:"Trust Wallet",image_id:"0528ee7e-16d1-4089-21e3-bbfb41933100",mobile:{universal:"https://link.trustwallet.com"}},c57ca95b47569778a828d19178114f4db188b89b763c899ba0be274e97267d96:{name:"MetaMask",image_id:"5195e9db-94d8-4579-6f11-ef553be95100",mobile:{native:"metamask:"}},"225affb176778569276e484e1b92637ad061b01e13a048b35a9d280c3b58970f":{name:"Safe",image_id:"a1cb2777-f8f9-49b0-53fd-443d20ee0b00",mobile:{universal:"https://gnosis-safe.io/"}},"74f8092562bd79675e276d8b2062a83601a4106d30202f2d509195e30e19673d":{name:"Spot",image_id:"1bf33a89-b049-4a1c-d1f6-4dd7419ee400",mobile:{universal:"https://spot.so"}},ecc4036f814562b41a5268adc86270fba1365471402006302e70169465b7ac18:{name:"Zerion",image_id:"f216b371-96cf-409a-9d88-296392b85800",mobile:{universal:"https://wallet.zerion.io"}},"8308656f4548bb81b3508afe355cfbb7f0cb6253d1cc7f998080601f838ecee3":{name:"Unstoppable Domains",image_id:"4725dda0-4471-4d0f-7adf-6bbe8b929c00",mobile:{universal:"https://unstoppabledomains.com/mobile"}},"38f5d18bd8522c244bdd70cb4a68e0e718865155811c043f052fb9f1c51de662":{name:"BitKeep",image_id:"3f7075d0-4ab7-4db5-404d-3e4c05e6fe00",mobile:{universal:"https://bkapp.vip"}},afbd95522f4041c71dd4f1a065f971fd32372865b416f95a0b1db759ae33f2a7:{name:"Omni",image_id:"2cd67b4c-282b-4809-e7c0-a88cd5116f00",mobile:{universal:"https://links.omni.app"}},ccb714920401f7d008dbe11281ae70e3a4bfb621763b187b9e4a3ce1ab8faa3b:{name:"BitPay",image_id:"97d4429f-eaf0-4302-87f5-9d26d46fe700",mobile:{universal:"https://link.bitpay.com/wallet"}},"7674bb4e353bf52886768a3ddc2a4562ce2f4191c80831291218ebd90f5f5e26":{name:"MathWallet",image_id:"26a8f588-3231-4411-60ce-5bb6b805a700",mobile:{universal:"https://www.mathwallet.org"}},"2863183c3299d820fb9a4cb8aab4a34f50380c9992e8be871fd60a62e8d36481":{name:"1inch Wallet",image_id:"dce1ee99-403f-44a9-9f94-20de30616500",mobile:{universal:"https://wallet.1inch.io"}},efba9ae0a9e0fdd9e3e055ddf3c8e75f294babb8aea3499456eff27f771fda61:{name:"Eidoo",image_id:"ef5b8bcf-00d5-457d-e161-9911e4788700",mobile:{universal:"https://eidoo.io/crypto-wallet"}},b021913ba555948a1c81eb3d89b372be46f8354e926679de648e4fa2938bed3e:{name:"Coin98",image_id:"dee547be-936a-4c92-9e3f-7a2350a62e00",mobile:{universal:"https://coin98.com"}},"7e90b95230bc462869bbb59f952273d89841e1c76bcc5319898e08c9f34bd4cd":{name:"Unstoppable Wallet",image_id:"5c38b22c-adb9-4899-3252-6e3d71458500",mobile:{universal:"https://unstoppable.money"}},"138f51c8d00ac7b9ac9d8dc75344d096a7dfe370a568aa167eabc0a21830ed98":{name:"AlphaWallet",image_id:"5b1cddfb-056e-4e78-029a-54de5d70c500",mobile:{universal:"https://aw.app"}},"468b4ab3582757233017ec10735863489104515ab160c053074905a1eecb7e63":{name:"D'CENT Wallet",image_id:"1efb49ec-2bab-4fa1-f2f2-4392c64ed000",mobile:{universal:"https://link.dcentwallet.com"}},"29f4a70ad5993f3f73ae8119f0e78ecbae51deec2a021a770225c644935c0f09":{name:"ZelCore",image_id:"97d45a92-a1f0-46da-95a6-ad5db99f3500",mobile:{universal:"https://link.zel.network"}},"8240fb8a7b117aed27f04aa8870c714eeb910f7c1b16c9b868e793c1836335b8":{name:"Nash",image_id:"12f981b1-bb0a-4115-009f-317255979600",mobile:{universal:"https://nash.io/walletconnect"}},"15d7610042217f691385d20e640869dc7273e991b04e8f476417cdc5ec856955":{name:"Coinomi",image_id:"3b446d16-a908-40c8-5835-9a6efe90dd00",mobile:{universal:"https://coinomi.page.link"}},a395dbfc92b5519cbd1cc6937a4e79830187daaeb2c6fcdf9b9cce4255f2dcd5:{name:"CYBAVO Wallet",image_id:"3117d3ce-b973-4cfd-8fb5-f5d72ed3c200",mobile:{universal:"https://cdn.cybavo.com"}},"0b415a746fb9ee99cce155c2ceca0c6f6061b1dbca2d722b3ba16381d0562150":{name:"SafePal",image_id:"14096232-7483-425b-f9a9-658f94fe7100",mobile:{universal:"https://link.safepal.io"}},"881946407ff22a32ec0e42b2cd31ea5dab52242dc3648d777b511a0440d59efb":{name:"Bridge Wallet",image_id:"989d504f-93db-4ca6-c00a-9d1faf177d00",mobile:{universal:"https://bridge.mtpelerin.com"}},"3b0e861b3a57e98325b82ab687fe0a712c81366d521ceec49eebc35591f1b5d1":{name:"SparkPoint",image_id:"34c4f901-70de-4507-e7a0-bc7887843000",mobile:{universal:"https://sparkpoint.io"}},"38ee551a01e3c5af9d8a9715768861e4d642e2381a62245083f96672b5646c6b":{name:"PEAKDEFI Wallet",image_id:"744a3fbe-4261-4148-133e-49c5b58cb400",mobile:{universal:"https://peakdefi.com/download"}},f2436c67184f158d1beda5df53298ee84abfc367581e4505134b5bcf5f46697d:{name:"Crypto.com | DeFi Wallet",image_id:"7c5ff577-a68d-49c5-02cd-3d83637b0b00",mobile:{universal:"https://wallet.crypto.com"}},"15d1d97de89526a3c259a235304a7c510c40cda3331f0f8433da860ecc528bef":{name:"Ellipal",image_id:"0a805e10-bfc0-4d02-d9c1-8cec88f0dc00",mobile:{universal:"https://www.ellipal.com/"}},"19ad8334f0f034f4176a95722b5746b539b47b37ce17a5abde4755956d05d44c":{name:"Aktionariat",image_id:"6d18e8ea-b536-4038-c5bf-94a499d5a400",mobile:{universal:"https://app.aktionariat.com"}},"95501c1a07c8eb575cb28c753ab9044259546ebcefcd3645461086e49b671f5c":{name:"Talken Wallet",image_id:"1afb5a3a-2da3-40ce-baf9-b416e7510600",mobile:{universal:"https://talken.io"}},"2ed796df33fdbde6a3ea6a47d3636b8341fe285038d844c7a78267b465b27028":{name:"KyberSwap",image_id:"3abd1720-260e-495a-2e31-3d0b349e0d00",mobile:{universal:"https://kyberswapnew.app.link"}},"4e6af4201658b52daad51a279bb363a08b3927e74c0f27abeca3b0110bddf0a9":{name:"Tongue Wallet",image_id:"20bc4fdb-b9e6-429a-8cba-c233b3273000",mobile:{universal:"https://www.tongue.fi"}},b13fcc7e3500a4580c9a5341ed64c49c17d7f864497881048eb160c089be5346:{name:"RWallet",image_id:"a883229c-26cb-4c19-9b34-1f0ed4012a00",mobile:{universal:"https://www.rwallet.app"}},"13c6a06b733edf51784f669f508826b2ab0dc80122a8b5d25d84b17d94bbdf70":{name:"PlasmaPay",image_id:"466c8fd0-fcec-4621-b94f-e91ce1439f00",mobile:{universal:"https://plasmapay.com/"}},"0aafbedfb8eb56dae59ecc37c9a5388509cf9c082635e3f752581cc7128a17c0":{name:"O3Wallet",image_id:"e1c7c6af-c731-463e-55f0-5e686e9f6200",mobile:{universal:"https://o3.network"}},"761d3d98fd77bdb06e6c90092ee7071c6001e93401d05dcf2b007c1a6c9c222c":{name:"HashKey Me",image_id:"72734fac-9500-4c2c-81ba-678f7fc32700",mobile:{universal:"https://me.hashkey.com"}},ffa139f74d1c8ebbb748cf0166f92d886e8c81b521c2193aa940e00626f4e215:{name:"Defiant",image_id:"026462e7-09a3-47f6-6b46-49df18133b00",mobile:{universal:"https://defiantapp.tech"}},"717911f4db0c5eda0e02e76ed179b7940ba1eefffdfb3c9e6540696226860da0":{name:"Elastos Essentials",image_id:"04a6bfed-d80e-4f7b-0516-261f86aa4000",mobile:{universal:"https://essentials.elastos.net"}},"9d6c614d1995741d5313f1f3dbf1f66dcba694de782087d13b8721822502692f":{name:"Stasis",image_id:"7ae753bc-a754-450c-2d90-2c5521734400",mobile:{universal:"https://app.stasis.net"}},a6ffb821a3c32d36fc9d29e29c2ff79a0cd1db0bca453714777846ddf3fdff76:{name:"JulWallet",image_id:"cabd50de-22fa-487b-ce68-2c63de8bb800",mobile:{universal:"https://justliquidity.org"}},"76745388a50e6fea982c4dee2a3ad61a8aa417668be870754689caa8a7506c93":{name:"Tangem",image_id:"8a5b6e94-e378-458d-bf2e-017cc7958e00",mobile:{universal:"https://app.tangem.com"}},"6464873279d46030c0b6b005b33da6be5ed57a752be3ef1f857dc10eaf8028aa":{name:"SecuX",image_id:"d46a33d6-92a1-4dfd-38d4-779815fb5c00",mobile:{universal:"https://wsweb.secuxtech.com"}},"2c81da3add65899baeac53758a07e652eea46dbb5195b8074772c62a77bbf568":{name:"Ambire Wallet",image_id:"c39b3a16-1a38-4588-f089-cb7aeb584700",mobile:{universal:"https://mobile.ambire.com"}},b823fb0d7228ef8e3c0bc9607df9ed79dae2ab3a2811d33f22ade4f573c18232:{name:"Slavi Wallet",image_id:"282ce060-0beb-4236-b7b0-1b34cc6c8f00",mobile:{universal:"https://www.slaviwallet.io"}},dccbd717df77b395445cc6080e01fffada9d8b92dacfda312a26c70c2e9af673:{name:"Nufinetes",image_id:"70080bd7-9858-4720-cf74-8f74cd74cb00",mobile:{universal:"https://apple.vimworld.org"}},c6f3d04a4e1a51e7d2045f347a5ebdab30fc600950a740fca21f0c92e230ee05:{name:"Arianee Wallet",image_id:"ace938a9-c906-4b9e-f683-b85f1ab72800",mobile:{universal:"https://arianee.net"}},c482dfe368d4f004479977fd88e80dc9e81107f3245d706811581a6dfe69c534:{name:"NOW Wallet",image_id:"b6ee4efc-f53e-475b-927b-a7ded6211700",mobile:{universal:"https://walletnow.app.link"}},"14e7176536cb3706e221daaa3cfd7b88b7da8c7dfb64d1d241044164802c6bdd":{name:"Blocto",image_id:"374258d3-c749-4f37-7815-77e61f798c00",mobile:{universal:"https://blocto.app"}},"0e4915107da5b3408b38e248f7a710f4529d54cd30e9d12ff0eb886d45c18e92":{name:"Arculus Wallet",image_id:"f78dab27-7165-4a3d-fdb1-fcff06c0a700",mobile:{universal:"https://gw.arculus.co/app"}},a2c031fccd13a6c16d7745c303507f78ae4da53fed064542804e9657d73e8b5c:{name:"Backpack",image_id:"e46f132d-6e05-4d51-8720-43727446e600",mobile:{universal:"https://jxndao.com"}},f593f4eb9755ff047681a37ebc46706e0e915cf1c2fe0102f5ae47c9f6aa4082:{name:"Autonomy: Digital Art Wallet",image_id:"2ee7c9db-9a86-4cd6-0d32-5053b4636100",mobile:{universal:"https://autonomy.io/apps/wc"}},"5859076ade608fbc4e9d3fe2f95e8527de80f8451ecbb1dced54ca84deae0dd6":{name:"Coingrig",image_id:"18e38e41-a387-4402-ca31-6d2d5eb91100",mobile:{universal:"https://link.coingrig.com"}},bb88a220ed4dcd3d717ec19b6ac00a672edf92e97ef7c243d35e25ff56a07301:{name:"bobablocks",image_id:"aff8973b-e093-45b5-4858-c01dd043bc00",mobile:{universal:"https://app.bobablocks.io"}},cbe13eb482c76f1fa401ff4c84d9acd0b8bc9af311ca0620a0b192fb28359b4e:{name:"Plasma Wallet",image_id:"c268e78d-ffb0-4c8b-5cad-04c3add48500",mobile:{universal:"https://plasma-wallet.com"}},b83a346877b71c02b8531f53485ce12bc00033eabcc1213ca3329cbc744813a5:{name:"Holdstation Wallet",image_id:"e6dba126-85af-4194-84f6-dd16632c3c00",mobile:{universal:"https://apps.apple.com/us/app/holdstation-web3-wallet/id6444925618"}},a92d512c649e87a5acba5885ac03f62662cff1f647c20a63833eb45a71a6f877:{name:"HUMBL WALLET",image_id:"1ac55ba2-aa98-4ed0-59b3-b3155dea4200",mobile:{universal:"https://wallet.search3.com"}},"226d8a12a2e6e5c4185fa9c24313824bfb144c2a180325bddbd121844f497afa":{name:"ISLAMIwallet",image_id:"8d723c78-28ad-4610-901f-ea391d7e8d00",mobile:{universal:"https://islamiwallet.com"}},"11c5487e4d8dd8bf32d4c92222363df8296a27307b2531be1e25770365392ecb":{name:"Card Wallet",image_id:"325428cf-c212-4d83-a434-7f48902d2c00",mobile:{universal:"https://wallet.cardstack.com"}},f5b4eeb6015d66be3f5940a895cbaa49ef3439e518cd771270e6b553b48f31d2:{name:"MEW wallet",image_id:"e2024511-2c9b-46d7-3111-52df3d241700",mobile:{universal:"https://mewwallet.com"}},"576c90ceaea34f29ff0104837cf2b2e23d201be43be1433feeb18d375430e1fd":{name:"PLTwallet",image_id:"a5d9dd15-8cef-42de-8bed-09e01a8b0200",mobile:{universal:"https://pltwallet.io/"}},"94f785c0c8fb8c4f38cd9cd704416430bcaa2137f27e1468782d624bcd155a43":{name:"Avacus",image_id:"a7106965-91cc-4a73-4688-c5c72ae0ed00",mobile:{universal:"https://avacus.app.link"}},bc949c5d968ae81310268bf9193f9c9fb7bb4e1283e1284af8f2bd4992535fd6:{name:"Argent",image_id:"215158d2-614b-49c9-410f-77aa661c3900",mobile:{universal:"https://www.argent.xyz/app"}},"664b505fea4c2117b8a55c054ef209664e0a68ddaafd7534df739f97a293fa1d":{name:"Hippo Wallet",image_id:"f9570968-45f7-47c1-3189-98cf60e25c00",mobile:{universal:"https://hippowallet.io"}},"0c5bba82e70a2b62405871af809020a077d110d765c0798eb660ad5d3131b328":{name:"Edge Wallet",image_id:"f601bc29-4298-422f-dbf7-34dac2884f00",mobile:{universal:"https://deep.edge.app/wc"}},"792fbacfe787d67595dd4eb38ac308e14b3bbc810393db56f477a92e5ac8764b":{name:"Assure",image_id:"64db7104-c8b7-44ea-e102-11ce87124200",mobile:{universal:"https://www.assure.pro/Official"}},"7ef337ff00714f179d38b8142398efa2ab902a53430e99ebce02892053d7a310":{name:"EASY",image_id:"62feb41a-be1f-4b1c-e089-27f97c0e8d00",mobile:{universal:"https://link.easy.me"}},"7e94e75c90964a69ea375b92214f50c4223dfbfa4913a3733b615444b322f687":{name:"CoinStats",image_id:"f989ab84-650b-4ad5-c342-77f3334f1b00",mobile:{universal:"https://coinstats.app"}},"107bb20463699c4e614d3a2fb7b961e66f48774cb8f6d6c1aee789853280972c":{name:"Bitcoin.com Wallet",image_id:"0d7938e1-9b3b-4d8b-177b-98188c4cf400",mobile:{universal:"https://wallet.bitcoin.com/"}},"1986e7c874bb906f057d5d64a4806c004e021689536e5228c74d64a6058e8bac":{name:"Defiant",image_id:"11a96ca4-3592-42ae-c781-2b7265ec9200",mobile:{universal:"https://defiantapp.tech/"}},"19418ecfd44963883e4d6abca1adeb2036f3b5ffb9bee0ec61f267a9641f878b":{name:"KryptoGO Wallet",image_id:"3ccbd966-97e8-45a0-1ceb-6141a8978e00",mobile:{universal:"https://kryptogo.page.link"}},"37a686ab6223cd42e2886ed6e5477fce100a4fb565dcd57ed4f81f7c12e93053":{name:"Bifrost Wallet",image_id:"86be07e2-6652-4fd1-5f33-651682c95400",mobile:{universal:"https://app.bifrostwallet.com"}},"4f5de5333fed2ccf47c690579aba3b9128aea78175339ff51ef61704bde7502a":{name:"Okse Wallet",image_id:"8a1b36d5-7f40-403a-7000-5d30f9181200",mobile:{universal:"https://okse.io/"}},"9034d54985807aaf3d7780f50f155f954daa468fb58d7b14b216fc79d68bbd14":{name:"Qubic Wallet",image_id:"2e9ef302-daae-4807-555f-d4986b0b6700",mobile:{universal:"https://wallet.qubic.app"}},c39d8ee468e50474fdf3a0bd6b981be404d4671e2702a3d633aae95bcbaa032a:{name:"XFUN Wallet",image_id:"a665f8f3-09ef-4d17-2bd0-26dca4518400",mobile:{universal:"https://xfun.io"}},e9ff15be73584489ca4a66f64d32c4537711797e30b6660dbcb71ea72a42b1f4:{name:"Exodus",image_id:"4c16cad4-cac9-4643-6726-c696efaf5200",mobile:{universal:"https://exodus.com/m"}},"114efdbef4ce710081c1507f3dbc51f439c96a342cf33397799cd1c84b01a8c5":{name:"S-ONE Wallet",image_id:"b3562637-a407-4035-6fa5-a70ff2050400",mobile:{universal:"https://sonewallet.app"}},"5b8e33346dfb2a532748c247876db8d596734da8977905a27b947ba1e2cf465b":{name:"PREMA Wallet",image_id:"6487869b-1165-4f30-aa3a-115665be8300",mobile:{universal:"https://premanft.com"}},"2cca8c1b0bea04ba37dee4017991d348cdb7b826804ab2bd31073254f345b715":{name:"Bee Wallet",image_id:"f90bc33f-f085-40cf-7538-fae5ae84f900",mobile:{universal:"https://beewallet.app/wc"}},e3787ea98d014ca77e2c3794db97c02ef8bcb39347705f5e79502a55434a1ecf:{name:"TK Finance",image_id:"c4066f68-2247-49bf-ac8a-a677bfa81800",mobile:{universal:"https://trustkeys.network"}},"159b0423ce9075d5662f588f805931d989627affab3e63e4dd7ebc62b9c6738c":{name:"Oxalus Wallet",image_id:"a6e22fcb-6b69-45d2-b52d-a4a347a21e00",mobile:{universal:"https://oxalus.page.link/?apn=io.oxalus.wallet&isi=1620111723&ibi=io.oxalus.wallet&link=https://deeplink.oxalus.io"}},fbea6f68df4e6ce163c144df86da89f24cb244f19b53903e26aea9ab7de6393c:{name:"Klever Wallet",image_id:"8f5bbad8-6a14-4b2c-5343-cc1fca6e4d00",mobile:{universal:"https://klever.page.link"}},"1aedbcfc1f31aade56ca34c38b0a1607b41cccfa3de93c946ef3b4ba2dfab11c":{name:"OneKey",image_id:"12bebb3f-8030-4892-8452-c60a6bac1500",mobile:{universal:"https://app.onekey.so/wc/connect"}},"14e5d957c6eb62d3ee8fc6239703ac2d537d7e3552154836ca0beef775f630bc":{name:"Pitaka",image_id:"691c0716-5213-4b99-e837-079268313800",mobile:{universal:"https://app.pitaka.io"}},"031f0187049b7f96c6f039d1c9c8138ff7a17fd75d38b34350c7182232cc29aa":{name:"Obvious",image_id:"40945cea-9cd2-4acc-5799-ca7fb31f4700",mobile:{universal:"https://wallet.obvious.technology"}},c40b9bcef32fa6ce4e0df98be1420628bbc4957646f742380fe618fcb4ab74f1:{name:"RiceWallet",image_id:"df94578e-19be-4f00-258f-2470343e7b00",mobile:{universal:"https://ricewallet.io"}},b265ce38b94d602957a0946673c59a99a15d69adda4317544fec7298ea2d1387:{name:"SafeMoon",image_id:"ecc31a8e-0ee9-49db-cc59-0876b7c35600",mobile:{universal:"https://safemoon.net/"}},dc5415b6ea8114db518ae91195b027d690a11a1d2bfdd1a904e93c5cb746380e:{name:"SimpleHold",image_id:"a9f1ba96-b658-4d13-f71f-226b6389f000",mobile:{universal:"https://simplehold.io"}},"41f20106359ff63cf732adf1f7dc1a157176c9b02fd266b50da6dcc1e9b86071":{name:"Bitizen",image_id:"75dd1471-77e9-4811-ce57-ec8fc980ec00",mobile:{universal:"https://bitizen.org/wallet"}}},es=(e,t="md")=>`https://registry.walletconnect.com/v2/logo/${t}/${e}`;function ts(e){return{name:e.name||"",universalLink:e.mobile.universal||"",deepLink:e.mobile.native||""}}function os(e,t){let o=encodeURIComponent(e);return t.universalLink?`${t.universalLink}/wc?uri=${o}`:t.deepLink?`${t.deepLink}${t.deepLink.endsWith(":")?"//":"/"}wc?uri=${e}`:""}function rs(e,t){return pr.isAndroid?e:os(e,ts(ko[t]))}var fr=(e,t)=>{if(!e)return;if(pr.isAndroid){(0,_n.saveMobileLinkInfo)({name:"Unknown",href:t||"wc:"});return}let o=ko[e];if(!o){console.warn("Attempted to set info for unknown wallet",e);return}let r=os(t||"wc:",ts(o));(0,_n.saveMobileLinkInfo)({name:(o==null?void 0:o.name)||"",href:r})},ns=()=>{!pr.isAndroid||window.open("wc:","_self")};var Sn=class extends Fe{constructor(o,r,n){super("wallet_connect",r,n);this.connectionManager=o}setActive(){return this.walletProvider.walletId&&fr(this.walletProvider.walletId),Promise.resolve(!0)}async connect(o){return o.showPrompt&&await this.promptConnection(),this.getConnectedWallet()}async isConnected(){return this.walletProvider.connected}get walletBranding(){var o,r,n;if(this.walletProvider.walletId){let i=ko[this.walletProvider.walletId];return{name:i.name,icon:this.walletProvider.walletId===ur?Ge:es(i.image_id)}}return{name:er(((o=this.walletProvider.walletMeta)==null?void 0:o.name)||"")||"WalletConnect",icon:((n=(r=this.walletProvider.walletMeta)==null?void 0:r.icons)==null?void 0:n[0])||ro}}async promptConnection(){return new Promise((o,r)=>{this.walletProvider.connector.on("disconnect",(i,a)=>{if(i){r(Ue(i));return}a.params.some(s=>s.message==="Session Rejected")&&(this.setWalletProvider(this.connectionManager.replaceProvider(this,this.walletProvider)),r(new Bt)),r(new Z("Unknown error during connection"))}),this.walletProvider.qrcode&&this.walletProvider.connector.on("modal_closed",()=>{this.setWalletProvider(this.connectionManager.replaceProvider(this,this.walletProvider)),r(new Bt)}),this.walletProvider.connector.on("transport_error",(i,a)=>{r(Ue(i))}),(async()=>{let i="",a=await Promise.race([this.connectionManager.enableProvider(this.walletProvider),pn()]);if(a.length>0&&(i=a[0]),!i||i==="")throw new Z("Unable to retrieve address");this.connected=!0,o()})().catch(i=>r(Ue(i)))})}async sign(o){fr(this.walletProvider.walletId),this.walletProvider.connected||await this.connectionManager.enableProvider(this.walletProvider);let r=await this.walletProvider.getWalletConnector();return new Promise(async(n,i)=>{var a;r.signPersonalMessage([o,(a=this.walletProvider.accounts)==null?void 0:a[0]]).then(s=>n(s)),Ln.isAndroid&&ns()})}disconnect(){this.walletProvider.close().catch(()=>console.warn("Unable to disconnect wallet provider"))}get walletProvider(){return this.proxyProvider.walletProvider}setWalletProvider(o){this.proxyProvider.setWalletProvider(o)}},mr=class{constructor(){this._storageIdToProvider={},this.reconnectDelayMs=10,this.reconnectBackoff=2,!(typeof window>"u")&&K.getKeys().forEach(t=>{var o,r;if(t.startsWith("walletconnect")){let n=t.split(":")[2]?t.split(":")[2]:void 0;if(!n){let i=(r=(o=K.get(t))==null?void 0:o.peerMeta)==null?void 0:r.name;if(i){let a=Pn(i);a!=null&&a.id&&(n=a.id)}}this.createProviderWithStorageId(t,n)}})}createConnector(t,o,r){let n=this.getProviderForAddress(o,r),i=new Sn(this,t,o);return n?n.isConnecting&&(n=this.replaceProvider(i,n)):n=this.createProvider(i,r),i.setWalletProvider(n),i}async disconnect(){await Promise.all(Object.values(this._storageIdToProvider).map(async t=>await t.disconnect()))}getStorageId(t,o){if(!t)return;let r=K.getKeys().filter(i=>i.startsWith("walletconnect"));if(o){let i=r.filter(a=>a.includes(o));if(i){let a=i.find(s=>fn(K.get(s).accounts,t));if(a)return a}}let n=r.find(i=>fn(K.get(i).accounts,t));if(!(n&&o&&!n.includes(o)))return n}getProviderForAddress(t,o){let r=this.getStorageId(t,o);r||(r=`${sn}:${Math.random().toString(36).slice(2)}:${o||""}`);let n=this._storageIdToProvider[r];if(n)return n}createProviderWithStorageId(t,o){let r=o?{qrcode:!1}:{},n=new is.default({infuraId:$o,storageId:t,pollingInterval:Gi,...r});return n.walletId=o,o?n.connector.on("display_uri",(i,a)=>{fr(o);let s=a.params[0],l=rs(s,o);Ln.isAndroid?window.open(l):window.open(l,"_self","noopener,noreferrer")}):n.connector.on("connect",()=>{var i,a,s;(i=n.walletMeta)!=null&&i.name&&(n.walletId=(s=Pn((a=n.walletMeta)==null?void 0:a.name))==null?void 0:s.id)}),this._storageIdToProvider[t]=n,n}createProvider(t,o){let r=`${sn}:${Math.random().toString(36).slice(2)}:${o||""}`,n=this.createProviderWithStorageId(r,o);return n.connector.on("transport_error",()=>{console.warn("Transport failed. Replacing provider."),setTimeout(()=>{t.setWalletProvider(this.replaceProvider(t,n)),this.reconnectDelayMs*=this.reconnectBackoff},this.reconnectDelayMs)}),n}replaceProvider(t,o){o.close().catch(()=>console.warn("Unable to disconnect provider"));let r=Object.entries(this._storageIdToProvider).find(([n,i])=>i.connector.session.key===o.connector.session.key);return r&&delete this._storageIdToProvider[r[0]],this.createProvider(t,o.walletId)}async enableProvider(t){return t.connected?Promise.resolve(t.accounts):await t.enable()}};var An="privy-eip-prefer-phantom",To=()=>{if(!window.ethereum)return!1;if(window.ethereum.isMetaMask)return!0;if(window.ethereum.providers){for(let e of window.ethereum.providers)if(e.isMetaMask)return!0}return!1},Wo=()=>{var e,t;if("phantom"in window){let o=window;if((t=(e=o==null?void 0:o.phantom)==null?void 0:e.ethereum)!=null&&t.isPhantom)return!0}return!1};function hr(e){sessionStorage.setItem("phantom.contentScript.ethProviderOptions",`[["eip155"],"USE_${e?"PHANTOM":"METAMASK"}"]`),localStorage.setItem(An,e?"true":"false")}var lo=()=>{if(!window.ethereum)return!1;if(window.ethereum.isCoinbaseWallet)return!0;if(window.ethereum.providers){for(let e of window.ethereum.providers)if(e.isCoinbaseWallet)return!0}return!1},kn=e=>{let t=localStorage.getItem("-walletlink:https://www.walletlink.org:Addresses");return t?!!(e==null?void 0:e.linkedAccounts.filter(r=>r.type=="wallet"&&r.address===(0,as.getAddress)(t)).length):!1},ss=()=>{var t;let e=K.get(Ko);return e?(t=e.find(o=>o.active))==null?void 0:t.address:null},so=class{constructor(){this.getEthereumProvider=()=>{var t;return((t=this.activeWalletConnector)==null?void 0:t.proxyProvider)||new Be};this.walletConnectors=[],this.wcConnectionManager=new mr,this.initialized=!1}initialize(){this.initialized||(this.load(),this.activeWalletConnector&&this.activeWalletConnector.connect({showPrompt:!1}).catch(t=>console.warn("Unable to reconnect active wallet",t)),this.initialized=!0)}initializeLinkedWallets(t){t.linkedAccounts.forEach(()=>null)}load(){(K.get(Ko)||[]).forEach(o=>{let r=this.createWalletConnector(o.walletType,o.address);this.addWalletConnector(r),o.active&&(this.activeWalletConnector=r)})}save(){let t=this.walletConnectors.map(o=>{var r;return{address:o.address,walletType:o.walletType,active:o.address===((r=this.activeWalletConnector)==null?void 0:r.address)&&o.walletType===this.activeWalletConnector.walletType}});K.put(Ko,t)}addWalletConnector(t){this.walletConnectors.find(r=>r.address===t.address&&r.walletType===t.walletType)||this.walletConnectors.push(t)}getConnectorByAddress(t){return this.walletConnectors.find(o=>{var r;return((r=o.address)==null?void 0:r.toLowerCase())===t.toLowerCase()})}async removeWallet(t){let o=this.walletConnectors.find(r=>r.address===t);o&&o.disconnect(),this.walletConnectors=this.walletConnectors.filter(r=>r.address!==t),this.activeWalletConnector=void 0,this.save()}async activeWalletSign(t){if(!this.activeWalletConnector)throw new Z("Cannot sign, no wallet is active. Is a wallet connected?");return this.activeWalletConnector.sign(t)}async setActiveWallet(t){let o=this.walletConnectors.find(r=>r.address===t);if(o){let r=await o.setActive();return this.activeWalletConnector=r?o:void 0,this.activeWalletConnector&&this.activeWalletConnector.proxyProvider.on("accountsChanged",n=>{var i;n.length===0&&(((i=this.activeWalletConnector)==null?void 0:i.address)===t&&(this.activeWalletConnector=void 0),this.save())}),this.save(),!0}return!1}createWalletConnector(t,o,r){switch(t){case"metamask":return new or(new Be,o);case"phantom":return new rr(new Be,o);case"coinbase_wallet":return new Xo(new Be,o);case"wallet_connect":return this.wcConnectionManager.createConnector(new Be,o,r)}}};function ut(e){return new Date(e*1e3)}function Zc(e){let t=[];for(let o of e){let r=o.type;switch(o.type){case"wallet":let n={address:o.address,type:o.type,verifiedAt:ut(o.verified_at),chainType:o.chain_type,walletClient:o.wallet_client};t.push(n);break;case"email":let i={address:o.address,type:o.type,verifiedAt:ut(o.verified_at)};t.push(i);break;case"phone":let a={number:o.phoneNumber,type:o.type,verifiedAt:ut(o.verified_at)};t.push(a);break;case"google_oauth":let s={subject:o.subject,email:o.email,name:o.name,type:o.type,verifiedAt:ut(o.verified_at)};t.push(s);break;case"twitter_oauth":let l={subject:o.subject,username:o.username,name:o.name,type:o.type,verifiedAt:ut(o.verified_at)};t.push(l);break;case"discord_oauth":let c={subject:o.subject,username:o.username,email:o.email,type:o.type,verifiedAt:ut(o.verified_at)};t.push(c);break;case"github_oauth":let h={subject:o.subject,username:o.username,name:o.name,email:o.email,type:o.type,verifiedAt:ut(o.verified_at)};t.push(h);break;case"apple_oauth":let m={subject:o.subject,email:o.email,type:o.type,verifiedAt:ut(o.verified_at)};t.push(m);break;default:console.warn(`Unrecognized account type: ${r}. Please consider upgrading the Privy SDK.`)}}return t}function Pt(e,t){return e.sort((o,r)=>r.verifiedAt.getTime()-o.verifiedAt.getTime()),e.find(o=>o.type===t)}function Ro(e){let t=ss();if(!t&&e.wallet)return e;let o=e.linkedAccounts.find(n=>n.type==="wallet"&&n.address===t);if(!o)return e;let r=Object.assign({},e);return r.wallet=o&&{address:o.address,chainType:o.chainType,chainId:o.chainId,walletClient:o.walletClient},r}var ne=e=>e==null?void 0:e.linkedAccounts.find(t=>t.type==="wallet"&&t.walletClient==="privy");function ft(e){if(!e)return null;let t=Zc(e.linked_accounts),o=Pt(t,"wallet"),r=Pt(t,"email"),n=Pt(t,"phone"),i=Pt(t,"google_oauth"),a=Pt(t,"twitter_oauth"),s=Pt(t,"discord_oauth"),l=Pt(t,"github_oauth"),c=Pt(t,"apple_oauth"),h={id:e.id,createdAt:ut(e.created_at),linkedAccounts:t,email:r&&{address:r==null?void 0:r.address},phone:n&&{number:n==null?void 0:n.number},wallet:o&&{address:o.address,chainType:o.chainType,chainId:o.chainId,walletClient:o.walletClient},google:i&&{subject:i.subject,email:i.email,name:i.name},twitter:a&&{subject:a.subject,username:a.username,name:a.name},discord:s&&{subject:s.subject,username:s.username,email:s.email},github:l&&{subject:l.subject,username:l.username,name:l.name,email:l.email},apple:c&&{subject:c.subject,email:c.email}};return Ro(h)}var gr=S(require("axios"));var br=class{constructor(t,o,r){this.appId=t,this.sdkVersion=qo,this.client=o,this.defaults=r}async get(t,o,r=!0){try{return await gr.default.get(t,await this.buildConfig({headers:{"Cache-Control":"no-cache"},...o},r))}catch(n){throw re(n)}}async post(t,o,r,n=!0){try{return await gr.default.post(t,o,await this.buildConfig(r,n))}catch(i){throw re(i)}}async delete(t,o,r=!0){try{return await gr.default.delete(t,await this.buildConfig(o,r))}catch(n){throw re(n)}}async buildConfig(t,o=!0){if(t=t||{},t.headers=t.headers||{},t.headers["privy-app-id"]=this.appId,t.headers["privy-client"]=`react-auth:${this.sdkVersion}`,o){let r=await this.client.getAccessToken();r!==null&&(t.headers.authorization=`Bearer ${r}`)}return{...this.defaults,...t}}};function ls(e){return e instanceof Nt?"email":e instanceof Dt?"sms":e instanceof Ct?"siwe":e instanceof wt?e.meta.provider:null}var St=class{constructor(t){this.promise=null;this.fn=t}execute(t){return this.promise===null&&(this.promise=(async()=>{try{return await this.fn(t)}finally{this.promise=null}})()),this.promise}};var cs=S(require("jose")),mt=class{static parse(t){try{return new mt(t)}catch{return null}}constructor(t){this.value=t,this._decoded=cs.decodeJwt(t)}get subject(){return this._decoded.sub}get expiration(){return this._decoded.exp}get issuer(){return this._decoded.iss}get audience(){return this._decoded.aud}isExpired(t=0){let o=Date.now(),r=(this.expiration-t)*1e3;return o>=r}};var Kc=30,yr=class{constructor(){this.authenticateOnce=new St(async t=>this._authenticate(t)),this.linkOnce=new St(async t=>this._link(t)),this.refreshOnce=new St(this._refresh.bind(this)),this.destroyOnce=new St(this._destroy.bind(this)),this.forkSessionOnce=new St(this._forkSession.bind(this))}get token(){try{let t=K.get(eo);return typeof t=="string"?new mt(t).value:null}catch(t){return console.error(t),this.destroyLocalState(),null}}get refreshToken(){try{let t=K.get(Zo);return typeof t=="string"?t:null}catch(t){return console.error(t),this.destroyLocalState(),null}}get forkedToken(){try{let t=K.get(So);return typeof t=="string"?t:null}catch(t){return console.error(t),this.destroyLocalState(),null}}hasRefreshCredentials(){return typeof this.token=="string"&&typeof this.refreshToken=="string"}hasRecoveryCredentials(){return typeof this.forkedToken=="string"}hasActiveToken(){let t=mt.parse(this.token);return t!==null&&!t.isExpired(Kc)}authenticate(t){return this.authenticateOnce.execute(t)}link(t){return this.linkOnce.execute(t)}refresh(){return this.refreshOnce.execute()}forkSession(){return this.forkSessionOnce.execute()}destroy(){return this.destroyOnce.execute()}async _authenticate(t){try{let{token:o,refresh_token:r,user:n,is_new_user:i}=await t.authenticate();this.storeToken(o),this.storeRefreshToken(r);let a=ls(t);return a&&this.client&&this.client.createAnalyticsEvent("sdk_authenticate",{method:a,isNewUser:i}),a==="siwe"&&this.client&&this.client.createAnalyticsEvent("sdk_authenticate_siwe",{walletType:t.meta.walletType,walletName:t.meta.walletName}),{user:ft(n),isNewUser:i}}catch(o){throw console.warn("Error authenticating session"),Oe(o)}}async _link(t){try{let o=await t.link();return ft(o)}catch(o){throw console.warn("Error linking account"),Oe(o)}}async _refresh(){if(!this.api)throw new x("Session has no API instance");if(!this.client)throw new x("Session has no PrivyClient instance");await this.client.getAccessToken({disableAutoRefresh:!0});let t=this.token,o=this.refreshToken,r=this.forkedToken;try{let n;if(t&&o)n=await this.api.post(yi(),{refresh_token:o},{headers:{authorization:`Bearer ${t}`}},!1),r&&this.clearForkedToken();else if(r)n=await this.api.post(Ci(),{refresh_token:r},{},!1),this.clearForkedToken();else return null;return this.storeToken(n.data.token),this.storeRefreshToken(n.data.refresh_token),ft(n.data.user)}catch(n){if(n instanceof Qt&&n.status===400&&n.message==="Invalid auth token")return this.destroyLocalState(),null;throw Oe(n)}}async _destroy(){var t;try{await((t=this.api)==null?void 0:t.post(vi(),{refresh_token:this.refreshToken}))}catch{console.warn("Error destroying session")}this.destroyLocalState()}async _forkSession(){if(!this.api)throw new x("Session has no API instance");let t=this.refreshToken;try{let o=await this.api.post(wi(),{refresh_token:t});return this.storeToken(o.data.token),this.storeRefreshToken(o.data.refresh_token),o.data.new_session_refresh_token}catch(o){throw Oe(o)}}destroyLocalState(){this.storeToken(null),this.storeRefreshToken(null),this.clearForkedToken()}storeToken(t){typeof t=="string"?K.put(eo,t):K.del(eo)}storeRefreshToken(t){typeof t=="string"?K.put(Zo,t):K.del(Zo)}clearForkedToken(){K.del(So)}};var Tn,co=class{constructor(t){this.apiUrl=t.apiUrl||zo;let o=t.timeout||Fi;this.appId=t.appId,this.clientAnalyticsId=typeof window>"u"?null:crypto.randomUUID(),this.connectors=new so,Tn||(Tn=new yr),this.session=Tn,this.api=new br(t.appId,this,{baseURL:this.apiUrl,timeout:o}),this.session.api=this.api,this.session.client=this}authenticate(){if(!this.authFlow)throw new x("No auth flow in progress.");return this.session.authenticate(this.authFlow)}link(){if(!this.authFlow)throw new x("No auth flow in progress.");return this.session.link(this.authFlow)}async logout(){await this.session.destroy(),this.authFlow=void 0}startAuthFlow(t){t.api=this.api,this.authFlow=t}async unlinkEmail(t){try{let o=await this.api.post(Oi(),{address:t});return ft(o.data)}catch(o){throw Oe(o)}}async unlinkPhone(t){try{let o=await this.api.post(Ni(),{phoneNumber:t});return ft(o.data)}catch(o){throw Oe(o)}}async unlinkWallet(t){try{let o=await this.api.post(Mi(),{address:t});return await this.connectors.removeWallet(t),ft(o.data)}catch(o){throw Oe(o)}}async unlinkOAuth(t,o){try{let r=await this.api.post(Di(),{provider:t,subject:o});return ft(r.data)}catch(r){throw Oe(r)}}async createAnalyticsEvent(t,o,r){try{if(!this.clientAnalyticsId)throw new Error("Cannot create analytics event if run in node and not browswer");await this.api.post(Ui(),{event_name:t,client_id:this.clientAnalyticsId,payload:{...o||{},clientTimestamp:r?r.toISOString():new Date().toISOString()}})}catch(n){console.error("Failed to create analytics event",n)}}async getAuthenticatedUser(){return this.session.hasRefreshCredentials()||this.session.hasRecoveryCredentials()?this.session.refresh():null}async getAccessToken(t){var o;return this.session.hasActiveToken()?((o=mt.parse(this.session.token))==null?void 0:o.audience)!==this.appId?(await this.logout(),null):this.session.token:!(t!=null&&t.disableAutoRefresh)&&this.session.hasRefreshCredentials()?(await this.session.refresh(),this.session.token):null}async getServerConfig(){try{let t=await this.api.get(`/api/v1/apps/${this.appId}`);return{id:t.data.id,name:t.data.name,verificationKey:t.data.verification_key,logoUrl:t.data.logo_url||void 0,accentColor:t.data.accent_color||void 0,showWalletLoginFirst:t.data.show_wallet_login_first,allowlistConfig:{errorTitle:t.data.allowlist_config.error_title,errorDetail:t.data.allowlist_config.error_detail,errorCtaText:t.data.allowlist_config.cta_text,errorCtaLink:t.data.allowlist_config.cta_link},walletAuth:t.data.wallet_auth,emailAuth:t.data.email_auth,smsAuth:t.data.sms_auth,googleOAuth:t.data.google_oauth,twitterOAuth:t.data.twitter_oauth,discordOAuth:t.data.discord_oauth,githubOAuth:t.data.github_oauth,appleOAuth:t.data.apple_oauth,termsAndConditionsUrl:t.data.terms_and_conditions_url,privacyPolicyUrl:t.data.privacy_policy_url,createdAt:new Date(t.data.created_at*1e3),updatedAt:new Date(t.data.updated_at*1e3)}}catch(t){throw Oe(t)}}async setActiveWallet(t,o){if(!o.linkedAccounts.map(i=>i.type==="wallet"?i.address:null).includes(t))throw new x("Cannot set an unlinked address as active.");if(!await this.connectors.setActiveWallet(t))throw new x("Error setting the active wallet.");return Ro(o)}async forkSession(){return await this.session.forkSession()}};var w4=require("wicg-inert"),Xr=require("body-scroll-lock"),Qr=require("react"),pi=require("react"),Bl=S(require("react-dom")),en=S(require("styled-components"));var vr=require("react");var Wn=(0,vr.createContext)({isLinking:!1,linkingHint:null,activeStatus:null,walletConnectionStatus:null,getAuthMeta:_,getAuthFlow:_,closePrivyModal:_,initLoginWithWallet:_,loginWithWallet:_,loginWithCode:_,initLoginWithEmail:_,initLoginWithSms:_,resendEmailCode:_,resendSmsCode:_,initLoginWithOAuth:_,loginWithOAuth:_,refreshUser:_,walletProxy:null}),k=()=>(0,vr.useContext)(Wn);var wr=require("react");var Rn=(0,wr.createContext)({ready:!1,authenticated:!1,user:null,walletConnectors:null,login:_,linkEmail:_,linkPhone:_,linkWallet:_,linkGoogle:_,linkTwitter:_,linkDiscord:_,linkGithub:_,linkApple:_,logout:_,getAccessToken:_,getEthereumProvider:_,getEthersProvider:_,getWeb3jsProvider:_,unlinkEmail:_,unlinkPhone:_,unlinkWallet:_,unlinkGoogle:_,unlinkTwitter:_,unlinkDiscord:_,unlinkGithub:_,unlinkApple:_,setActiveWallet:_,forkSession:_,createWallet:_,signMessage:_,exportWallet:_}),N=()=>(0,wr.useContext)(Rn);var _r=S(require("styled-components"));var ht=S(require("styled-components"));var Cr=S(require("styled-components")),Lt=require("react/jsx-runtime"),Er=({success:e,fail:t})=>(0,Lt.jsxs)(Lt.Fragment,{children:[(0,Lt.jsx)(Io,{className:e?"success":t?"fail":""}),(0,Lt.jsx)(Jc,{className:e?"success":t?"fail":""})]}),Io=Cr.default.span`
13
13
  && {
14
14
  width: 82px;
15
15
  height: 82px;
@@ -480,7 +480,7 @@ Resources:
480
480
  word-break: break-all;
481
481
  `;var Sr=require("react"),As=S(require("styled-components"));var Ss=require("react-device-detect");var Ls=e=>{let t=new URL(window.location.href);if(!lo()&&Ss.isMobile)return`https://go.cb-w.com/dapp?cb_url=${encodeURIComponent(`${t.href.replace(/\/$/g,"")}?privy_wallet_client=coinbase_wallet${e?`&privy_token=${e}`:""}`)}`};var _e=require("react/jsx-runtime"),ks=()=>{let{forkSession:e,ready:t,authenticated:o}=N(),{closePrivyModal:r}=k(),[n,i]=(0,Sr.useState)("");(0,Sr.useEffect)(()=>{t&&o&&e().then(l=>i(l))},[o,t]);let a=Ls(n),s={title:"Redirecting to Coinbase Wallet",description:"We'll take you to the Coinbase Wallet app to continue your login experience.",footnote:""};return t&&o&&(s.description="For the best experience, we'll automatically log you into the Coinbase Wallet in-app browser.",s.footnote="Once you're done, you can always return here and refresh to view your updated account."),(0,_e.jsxs)(_e.Fragment,{children:[(0,_e.jsx)(P,{},"header"),(0,_e.jsx)(kt,{title:s.title,description:s.description}),(0,_e.jsxs)(ve,{children:[(0,_e.jsx)(hd,{children:(0,_e.jsx)(De,{style:{width:"72px",height:"72px"}})}),(0,_e.jsx)(xr,{href:a,onClick:()=>{r()},loading:t&&o&&!n,children:"Continue"}),s.footnote?(0,_e.jsx)("p",{children:s.footnote}):null]}),(0,_e.jsx)(D,{protectedByPrivy:!0})]})},hd=(0,As.default)(po)`
482
482
  margin: 16px auto;
483
- `;var ot=require("react"),Fn=require("react-device-detect"),kr=S(require("styled-components"));var $=require("react/jsx-runtime"),Lr=2,Ar={metamask:{name:"MetaMask",component:Ge},phantom:{name:"Phantom",component:xt},coinbase_wallet:{name:"Coinbase Wallet",component:De},wallet_connect:{name:"WalletConnect",component:ro}},gd=e=>(e==null?void 0:e.status)===422?Ft.ERROR_USER_EXISTS:e instanceof oo&&!e.details.default?e.details:e instanceof to?Ft.ERROR_TIMED_OUT:e instanceof Bt?Ft.ERROR_USER_REJECTED_CONNECTION:Ft.ERROR_WALLET_CONNECTION,Ts=()=>{var J,Ie,ge,Yt,ue;let[e,t]=(0,ot.useState)(!1),[o,r]=(0,ot.useState)(!1),[n,i]=(0,ot.useState)(void 0),{navigate:a,navigateBack:s}=E(),{getAuthFlow:l,walletConnectionStatus:c,closePrivyModal:h,loginWithWallet:m}=k(),{walletConnectors:p}=N(),[b,v]=(0,ot.useState)(0),{user:d}=N(),[y]=(0,ot.useState)((d==null?void 0:d.linkedAccounts.length)||0),C=l(),T=Fn.isMobile&&(C==null?void 0:C.meta.walletType)==="wallet_connect"||Fn.isMobile&&(C==null?void 0:C.meta.walletType)==="coinbase_wallet",W=c==null?void 0:c.connected;(0,ot.useEffect)(()=>{!C||T||!W||(r(!0),i(void 0),B().catch(F=>console.warn("Auto-prompted signature failed",F)).finally(()=>r(!1)))},[b,W]),(0,ot.useEffect)(()=>{if(d&&e){let F=setTimeout(h,Ne);return()=>clearTimeout(F)}},[d,e]);let U=F=>{if((F==null?void 0:F.status)===401&&(F==null?void 0:F.message)==="User is not allowed to login to this app."){a("ALLOWLIST_REJECTION_SCREEN");return}i(gd(F))};async function B(){try{await m(),t(!0)}catch(F){U(F)}finally{r(!1)}}(0,ot.useEffect)(()=>{c!=null&&c.connectError&&U(c==null?void 0:c.connectError)},[c]);let oe=(C==null?void 0:C.meta.walletType)||"metamask",We=((J=C==null?void 0:C.meta)==null?void 0:J.walletName)||((Ie=Ar[oe])==null?void 0:Ie.name)||"Metamask",Ce=((ge=C==null?void 0:C.meta)==null?void 0:ge.walletIcon)||((Yt=Ar[oe])==null?void 0:Yt.component)||(F=>(0,$.jsx)(Ge,{...F})),Re=e?`Successfully connected with ${We}`:n?n.message:W?"Sign to verify":`Waiting for ${We}`,Y="Don\u2019t see your wallet modal? Check your other browser windows.";if(e){let F=(d==null?void 0:d.linkedAccounts.length)||0;y===F?Y="Wallet was already linked.":Y="You\u2019re good to go!"}else b>=Lr&&n?Y="Unable to connect wallet":n?Y=n.detail:W&&T?Y="Sign the message in your wallet to verify it belongs to you.":oe==="metamask"?Y="For the best experience, connect only one wallet at a time.":oe==="wallet_connect"?Y="Open your mobile wallet app to continue":oe==="coinbase_wallet"&&(lo()||(kn(d)?Y="Continue with the Coinbase app. Not the right wallet? Reset your connection below.":Y="Open the Coinbase app on your phone to continue."));let z=(ue=p==null?void 0:p.walletConnectors)==null?void 0:ue.find(F=>F.walletType==="coinbase_wallet"),j=oe==="coinbase_wallet"&&(kn(d)||n===Ft.ERROR_USER_EXISTS);return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(P,{backFn:s}),(0,$.jsxs)(bd,{children:[(0,$.jsx)(Gn,{walletLogo:Ce,success:e,fail:!!n}),(0,$.jsxs)(yd,{children:[(0,$.jsx)("h3",{children:Re}),(0,$.jsx)("p",{children:Y})]}),(0,$.jsx)(fs,{children:j?(0,$.jsx)(ye,{onClick:()=>z&&(z==null?void 0:z.disconnect()),invisible:e,disabled:e,children:"Use a different wallet"}):n==Ft.ERROR_USER_EXISTS?(0,$.jsx)(ye,{onClick:s,children:"Use a different wallet"}):W&&!e&&T?(0,$.jsx)(ye,{onClick:()=>{r(!0),B()},disabled:o,children:o?"Signing":"Sign with your wallet"}):!e&&(n==null?void 0:n.retryable)&&b<Lr?(0,$.jsx)(ye,{onClick:()=>{v(b+1),i(void 0),c==null||c.connectRetry()},invisible:e||!(n!=null&&n.retryable)||b>=Lr,disabled:!e&&(!(n!=null&&n.retryable)||b>=Lr),children:"Retry"}):null})]})]})},bd=kr.default.div`
483
+ `;var ot=require("react"),Fn=require("react-device-detect"),kr=S(require("styled-components"));var $=require("react/jsx-runtime"),Lr=2,Ar={metamask:{name:"MetaMask",component:Ge},phantom:{name:"Phantom",component:xt},coinbase_wallet:{name:"Coinbase Wallet",component:De},wallet_connect:{name:"WalletConnect",component:ro}},gd=e=>(e==null?void 0:e.status)===422?Ft.ERROR_USER_EXISTS:e instanceof oo&&!e.details.default?e.details:e instanceof to?Ft.ERROR_TIMED_OUT:e instanceof Bt?Ft.ERROR_USER_REJECTED_CONNECTION:Ft.ERROR_WALLET_CONNECTION,Ts=()=>{var J,Ie,ge,Yt,ue;let[e,t]=(0,ot.useState)(!1),[o,r]=(0,ot.useState)(!1),[n,i]=(0,ot.useState)(void 0),{navigate:a,navigateBack:s}=E(),{getAuthFlow:l,walletConnectionStatus:c,closePrivyModal:h,loginWithWallet:m}=k(),{walletConnectors:p}=N(),[b,v]=(0,ot.useState)(0),{user:d}=N(),[y]=(0,ot.useState)((d==null?void 0:d.linkedAccounts.length)||0),C=l(),T=Fn.isMobile&&(C==null?void 0:C.meta.walletType)==="wallet_connect"||Fn.isMobile&&(C==null?void 0:C.meta.walletType)==="coinbase_wallet",W=(c==null?void 0:c.status)==="connected";(0,ot.useEffect)(()=>{!C||T||!W||(r(!0),i(void 0),B().catch(F=>console.warn("Auto-prompted signature failed",F)).finally(()=>r(!1)))},[b,W]),(0,ot.useEffect)(()=>{if(d&&e){let F=setTimeout(h,Ne);return()=>clearTimeout(F)}},[d,e]);let U=F=>{if((F==null?void 0:F.status)===401&&(F==null?void 0:F.message)==="User is not allowed to login to this app."){a("ALLOWLIST_REJECTION_SCREEN");return}i(gd(F))};async function B(){try{await m(),t(!0)}catch(F){U(F)}finally{r(!1)}}(0,ot.useEffect)(()=>{c!=null&&c.connectError&&U(c==null?void 0:c.connectError)},[c]);let oe=(C==null?void 0:C.meta.walletType)||"metamask",We=((J=C==null?void 0:C.meta)==null?void 0:J.walletName)||((Ie=Ar[oe])==null?void 0:Ie.name)||"Metamask",Ce=((ge=C==null?void 0:C.meta)==null?void 0:ge.walletIcon)||((Yt=Ar[oe])==null?void 0:Yt.component)||(F=>(0,$.jsx)(Ge,{...F})),Re=e?`Successfully connected with ${We}`:n?n.message:W?"Sign to verify":`Waiting for ${We}`,Y="Don\u2019t see your wallet modal? Check your other browser windows.";if(e){let F=(d==null?void 0:d.linkedAccounts.length)||0;y===F?Y="Wallet was already linked.":Y="You\u2019re good to go!"}else b>=Lr&&n?Y="Unable to connect wallet":n?Y=n.detail:W&&T?Y="Sign the message in your wallet to verify it belongs to you.":oe==="metamask"?Y="For the best experience, connect only one wallet at a time.":oe==="wallet_connect"?Y="Open your mobile wallet app to continue":oe==="coinbase_wallet"&&(lo()||(kn(d)?Y="Continue with the Coinbase app. Not the right wallet? Reset your connection below.":Y="Open the Coinbase app on your phone to continue."));let z=(ue=p==null?void 0:p.walletConnectors)==null?void 0:ue.find(F=>F.walletType==="coinbase_wallet"),j=oe==="coinbase_wallet"&&(kn(d)||n===Ft.ERROR_USER_EXISTS);return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(P,{backFn:s}),(0,$.jsxs)(bd,{children:[(0,$.jsx)(Gn,{walletLogo:Ce,success:e,fail:!!n}),(0,$.jsxs)(yd,{children:[(0,$.jsx)("h3",{children:Re}),(0,$.jsx)("p",{children:Y})]}),(0,$.jsx)(fs,{children:j?(0,$.jsx)(ye,{onClick:()=>z&&(z==null?void 0:z.disconnect()),invisible:e,disabled:e,children:"Use a different wallet"}):n==Ft.ERROR_USER_EXISTS?(0,$.jsx)(ye,{onClick:s,children:"Use a different wallet"}):W&&!e&&T?(0,$.jsx)(ye,{onClick:()=>{r(!0),B()},disabled:o,children:o?"Signing":"Sign with your wallet"}):!e&&(n==null?void 0:n.retryable)&&b<Lr?(0,$.jsx)(ye,{onClick:()=>{v(b+1),i(void 0),c==null||c.connectRetry()},invisible:e||!(n!=null&&n.retryable)||b>=Lr,disabled:!e&&(!(n!=null&&n.retryable)||b>=Lr),children:"Retry"}):null})]})]})},bd=kr.default.div`
484
484
  display: flex;
485
485
  flex-direction: column;
486
486
  align-items: center;
@@ -1876,4 +1876,4 @@ Resources:
1876
1876
  align-items: center;
1877
1877
  justify-content: center;
1878
1878
  height: 100%;
1879
- `;var Kt=S(require("tinycolor2")),Gl="#FFFFFF",ep="#000000",tp=Gl,op="#1E1E1D";function rp(e){return e<.8&&e>.2&&console.warn("Background color is not light or dark enough, which could lead to accessibility issues."),e>.5?"light":"dark"}function Zt(e,t){let o=Math.max(0,Math.min(1,e.toHsl().l+t));return(0,Kt.default)({...e.toHsl(),l:o})}function Hl({backgroundTheme:e,accentHex:t,successHex:o="#51BA81",errorHex:r="#EC6351",whiteHex:n=Gl,blackHex:i=ep}){let a;switch(e){case"light":a=tp;break;case"dark":a=op;break;default:a=e;break}let s=(0,Kt.default)(a),l=(0,Kt.default)(t),c=(0,Kt.default)(o),h=(0,Kt.default)(r),m=rp(s.getLuminance()),p=Zt(s,m==="light"?-.04:.11),b=Zt(s,m==="light"?-.88:.87),v=Zt(s,m==="light"?-.77:.75),d=Zt(s,m==="light"?-.43:.45).desaturate(m==="light"?60:20),y=Zt(s,m==="light"?-.13:.25).desaturate(m==="light"?60:20),C=Zt(l,.15),T=Zt(l,-.06),W=(0,Kt.default)(l.getLuminance()>.5?i:n);return{colorScheme:m,background:s.toHslString(),background2:p.toHslString(),foreground:b.toHslString(),foreground2:v.toHslString(),foreground3:d.toHslString(),foreground4:y.toHslString(),accent:l.toHslString(),accentLight:C.toHslString(),accentDark:T.toHslString(),foregroundAccent:W.toHslString(),success:c.toHslString(),error:h.toHslString()}}var Vl={appearance:{theme:"light",accentColor:"#676FFF"}};function ui(e,t){var r,n,i;return{id:e.id,name:e.name,showWalletLoginFirst:e.showWalletLoginFirst,allowlistConfig:e.allowlistConfig,walletAuth:e.walletAuth,emailAuth:e.emailAuth,smsAuth:e.smsAuth,googleOAuth:e.googleOAuth,twitterOAuth:e.twitterOAuth,discordOAuth:e.discordOAuth,githubOAuth:e.githubOAuth,appleOAuth:e.appleOAuth,termsAndConditionsUrl:e.termsAndConditionsUrl,privacyPolicyUrl:e.privacyPolicyUrl,appearance:{logo:((r=t==null?void 0:t.appearance)==null?void 0:r.logo)||e.logoUrl,palette:Hl({backgroundTheme:((n=t==null?void 0:t.appearance)==null?void 0:n.theme)||Vl.appearance.theme,accentHex:((i=t==null?void 0:t.appearance)==null?void 0:i.accentColor)||e.accentColor||Vl.appearance.accentColor})}}}var on=require("react");var tn=class{constructor(){this.callbacks={}}enqueue(t,o){this.callbacks[t]=o}dequeue(t,o){let r=this.callbacks[o];if(!r)throw new Error(`cannot dequeue ${t} event: no event found for id ${o}`);switch(delete this.callbacks[o],t){case"privy:iframe:ready":return r;case"privy:wallet:create":return r;case"privy:wallet:connect":return r;case"privy:wallet:sign":return r;case"privy:wallet:recover":return r;case"privy:wallet:rpc":return r;default:throw new Error(`invalid wallet event type ${t}`)}}};var $l=require("react/jsx-runtime"),np=function(e){return()=>`id-${e++}`}(0);function ip(e){return typeof e.event=="string"&&/^privy:.+/.test(e.event)}function _o(e){return e.error!==void 0}var Jt=new tn;function Po(e,t,o){let r=o.contentWindow;if(!r)throw new Error("iframe not initialized");return new Promise((n,i)=>{let a=np();Jt.enqueue(a,{resolve:n,reject:i}),r.postMessage({id:a,event:e,data:t},"*")})}function ap(e){switch(e.event){case"privy:iframe:ready":let t=Jt.dequeue(e.event,e.id);return _o(e)?t.reject(new gt(e.error.type,e.error.message)):t.resolve(e.data);case"privy:wallet:create":let o=Jt.dequeue(e.event,e.id);return _o(e)?o.reject(new gt(e.error.type,e.error.message)):o.resolve(e.data);case"privy:wallet:connect":let r=Jt.dequeue(e.event,e.id);return _o(e)?r.reject(new gt(e.error.type,e.error.message)):r.resolve(e.data);case"privy:wallet:sign":let n=Jt.dequeue(e.event,e.id);return _o(e)?n.reject(new gt(e.error.type,e.error.message)):n.resolve(e.data);case"privy:wallet:recover":let i=Jt.dequeue(e.event,e.id);return _o(e)?i.reject(new gt(e.error.type,e.error.message)):i.resolve(e.data);case"privy:wallet:rpc":let a=Jt.dequeue(e.event,e.id);return _o(e)?a.reject(new gt(e.error.type,e.error.message)):a.resolve(e.data)}}function jl(e){let t=(0,on.useRef)(null);return(0,on.useEffect)(()=>{let o=t.current;if(!o)return;function r(s){s&&s.origin===e.origin&&ip(s.data)&&ap(s.data)}let n={create(s){return Po("privy:wallet:create",s,o)},connect(s){return Po("privy:wallet:connect",s,o)},sign(s){return Po("privy:wallet:sign",s,o)},recover(s){return Po("privy:wallet:recover",s,o)},rpc(s){return Po("privy:wallet:rpc",s,o)}};window.addEventListener("message",r);let i=()=>e.onLoad(n),a=(...s)=>{console.error("privy iframe failed to load: ",...s),e.onLoadFailed()};return Yi(()=>Po("privy:iframe:ready",{},o)).then(i,a),()=>window.removeEventListener("message",r)},[t.current]),(0,$l.jsx)("iframe",{ref:t,width:"0",height:"0",style:{display:"none",height:"0px",width:"0px"},src:Qo(e.origin,`/apps/${e.appId}/embedded-wallets`)})}var vt=require("react/jsx-runtime");function sp(e){return typeof e=="string"&&e.length===25}var Vo;function ql(){if(!Vo){let e=K.get(eo);return Promise.resolve(e||null)}return Vo.getAccessToken()}var lp=()=>{let t=new URLSearchParams(window.location.search).get("privy_token");!t||K.put(So,t)},Zl=e=>{if(!sp(e.appId))throw new x("Cannot initialize the Privy provider with an invalid Privy app ID");return Vo||(Vo=new co({appId:e.appId,apiUrl:e.apiUrl||zo})),(0,vt.jsx)(dp,{...e,client:Vo})},cp=e=>{let t=!!(e!=null&&e.emailAuth),o=!!(e!=null&&e.smsAuth);return t&&o&&(console.warn("Enabling both email and SMS passwordless is not currently supported. Disabling SMS."),o=!1),{email:t,sms:o,wallet:!!(e!=null&&e.walletAuth),google:!!(e!=null&&e.googleOAuth),twitter:!!(e!=null&&e.twitterOAuth),discord:!!(e!=null&&e.discordOAuth),github:!!(e!=null&&e.githubOAuth),apple:!!(e!=null&&e.appleOAuth)}},dp=e=>{let t=e.client,[o,r]=(0,te.useState)(!1),[n,i]=(0,te.useState)(!1),[a,s]=(0,te.useState)(!1),[l,c]=(0,te.useState)(null),[h,m]=(0,te.useState)(!1),[p,b]=(0,te.useState)(null),[v,d]=(0,te.useState)(!1),[y,C]=(0,te.useState)(null),[T,W]=(0,te.useState)({connecting:!1,connected:!1,connectError:null,connectRetry:_}),[U,B]=(0,te.useState)(null),[oe,We]=(0,te.useState)(null),[Ce,Re]=(0,te.useState)({showWalletLoginFirst:!0,allowlistConfig:{errorTitle:null,errorDetail:null,errorCtaText:null,errorCtaLink:null},walletAuth:!0,emailAuth:!0,smsAuth:!1,googleOAuth:!1,twitterOAuth:!1,discordOAuth:!1,githubOAuth:!1,appleOAuth:!1,termsAndConditionsUrl:null,privacyPolicyUrl:null}),[Y,z]=(0,te.useState)(ui(Ce,e.config)),[j,J]=(0,te.useState)(!1),[Ie,ge]=(0,te.useState)({}),Yt=cp(Y),ue=f=>{f&&b(f),r(!0),t.createAnalyticsEvent("modal_open",{initialScreen:f})},F=f=>{let u=e.createPrivyWalletOnLogin===!0;ge({login:{promptCreatePrivyWalletFlow:u}}),u&&J(!0),ue(f)};(0,te.useEffect)(()=>{async function f(){let u=await t.getServerConfig();if(Re(u),t.connectors.initialize(),Wo()){let q=localStorage.getItem(An)==="true";hr(q||!To())}Me(),lp();let R=await t.getAuthenticatedUser();s(!!R),c(R),i(!0),d(!!R),Kl()}f()},[t]),(0,te.useEffect)(()=>{let f=ui(Ce,e.config);z(f)},[e.config,Ce]);let Me=()=>{let f=new URLSearchParams(window.location.search),u=f.get("privy_oauth_code"),R=f.get("privy_oauth_state"),q=f.get("privy_oauth_provider");u&&R&&q&&(t.startAuthFlow(new wt(q,u,R)),F("AWAITING_OAUTH_SCREEN"))},Ot=f=>{f.promptConnect().then(()=>{W(u=>({...u,connected:!0,connectError:null}))}).catch(u=>{u instanceof Ke?console.error(u.cause?u.cause:u.message):console.error(u),W(R=>({...R,connectError:u}))}).finally(()=>{W(u=>({...u,connecting:!1}))})},Kl=()=>{let u=new URLSearchParams(window.location.search).get("privy_wallet_client");if(!u)return;if(u==="phantom"&&!Wo()&&F("LOGIN_FAILED_SCREEN"),!t.connectors)throw new x("Connector not initialized");let R=new Ct(t.connectors,u);t.startAuthFlow(R),Ot(R),ue("AWAITING_CONNECTION")};(0,te.useEffect)(()=>{n&&a&&l===null&&t.getAuthenticatedUser().then(c)},[n,a,l,t]);let rn=()=>{d(!0),ue("LINK_WALLET_SCREEN")},fi=async(f,u)=>{let R=t.connectors.getConnectorByAddress(u);if(!R)return B(u),rn(),f;C({address:u,walletType:R.walletType,walletBranding:R.walletBranding,success:!1}),ue("SETTING_ACTIVE_WALLET");try{let q=await t.setActiveWallet(u,f);return C({address:u,walletType:R.walletType,walletBranding:R.walletBranding,success:!0}),q}catch(q){q instanceof x&&q.message==="Error setting the active wallet."&&(B(u),rn()),C({address:u,walletType:R.walletType,walletBranding:R.walletBranding,success:!1,error:q.message})}return f},Jl={ready:n,authenticated:a,user:l,walletConnectors:t.connectors,linkWallet:rn,linkEmail:()=>{d(!0),ue("LINK_EMAIL_SCREEN")},linkPhone:()=>{d(!0),ue("LINK_PHONE_SCREEN")},linkGoogle:async()=>{await Xt.initLoginWithOAuth("google")},linkTwitter:async()=>{await Xt.initLoginWithOAuth("twitter")},linkDiscord:async()=>{await Xt.initLoginWithOAuth("discord")},linkGithub:async()=>{await Xt.initLoginWithOAuth("github")},linkApple:async()=>{await Xt.initLoginWithOAuth("apple")},login:()=>{if(n&&a){console.warn("Attempted to log in, but user is already logged in. Use a `link` helper instead.");return}F()},logout:async()=>{await t.logout(),c(null),s(!1),b(null),d(!1),r(!1)},getAccessToken:()=>t.getAccessToken(),getEthereumProvider:()=>t.connectors.getEthereumProvider(),getEthersProvider:()=>new zl.Web3Provider(new Et(t.connectors.getEthereumProvider())),getWeb3jsProvider:()=>new Jo(t.connectors.getEthereumProvider()),unlinkWallet:async f=>{let u=await t.unlinkWallet(f);c(u);let R=u.linkedAccounts.filter(q=>q.type==="wallet");if(u&&R&&R.length>0){let q=R[0];u=await fi(u,q.address)}return c(u),u},unlinkEmail:async f=>{let u=await t.unlinkEmail(f);return c(u),u},unlinkPhone:async f=>{let u=await t.unlinkPhone(f);return c(u),u},unlinkGoogle:async f=>{let u=await t.unlinkOAuth("google",f);return c(u),u},unlinkTwitter:async f=>{let u=await t.unlinkOAuth("twitter",f);return c(u),u},unlinkDiscord:async f=>{let u=await t.unlinkOAuth("discord",f);return c(u),u},unlinkGithub:async f=>{let u=await t.unlinkOAuth("github",f);return c(u),u},unlinkApple:async f=>{let u=await t.unlinkOAuth("apple",f);return c(u),u},setActiveWallet:async f=>{if(!l)return;let u=await fi(l,f);u&&c(u)},forkSession:()=>t.forkSession(),createWallet:()=>new Promise((f,u)=>{if(!a||!l){u(new Error("User must be authenticated before creating a Privy wallet"));return}if(ne(l)){u(new Error("Only one Privy wallet per user is currently allowed"));return}J(!0),ge({createWallet:{onSuccess:f,onFailure:u,callAuthOnSuccessOnClose:!1}}),ue("EMBEDDED_WALLET_SCREEN")}),signMessage:(f,u)=>new Promise((R,q)=>{if(!a||!l){q(new Error("User must be authenticated before signing with a Privy wallet"));return}if(!ne(l)){q(new Error("Must have a Privy wallet before signing"));return}if(typeof f!="string"||f.length<1){q(new Error("Message must be a non-empty string"));return}J(!0);let Yl={message:f,onSuccess:R,onFailure:q,uiOptions:u||{}},Xl={onCompleteNavigateTo:"SIGN_REQUEST_SCREEN",onFailure:q};ge({signMessage:Yl,connectWallet:Xl}),ue("EMBEDDED_WALLET_CONNECTING_SCREEN")}),exportWallet:()=>new Promise((f,u)=>{if(!a||!l){u(new Error("User must be authenticated before exporting their Privy wallet"));return}if(!ne(l)){u(new Error("Must have a Privy wallet before exporting"));return}J(!0);let q={onCompleteNavigateTo:"EMBEDDED_WALLET_KEY_EXPORT_SCREEN",onFailure:u},mi={appId:e.appId,origin:t.apiUrl,onSuccess:f,onFailure:u};ge({keyExport:mi,connectWallet:q}),ue("EMBEDDED_WALLET_CONNECTING_SCREEN")})},Xt=(()=>({isLinking:v,linkingHint:U,activeStatus:y,walletConnectionStatus:T,getAuthFlow:()=>t.authFlow,getAuthMeta:()=>{var f;return(f=t.authFlow)==null?void 0:f.meta},closePrivyModal:(f={shouldCallAuthOnSuccess:!0})=>{var R;let u=n&&a&&l;f.shouldCallAuthOnSuccess&&u&&((R=e.onSuccess)==null||R.call(e,l,h)),t.authFlow=void 0,B(null),b(null),d(!1),C(null),m(!1),r(!1),t.createAnalyticsEvent("modal_closed")},initLoginWithWallet:(f,u)=>{if(!t.connectors)throw new x("Connector not initialized");f||(f="metamask");let R=new Ct(t.connectors,f,u);t.startAuthFlow(R),W({connecting:!0,connected:!1,connectError:null,connectRetry:()=>Ot(R)}),Ot(R)},loginWithWallet:async()=>{if(!(t.authFlow instanceof Ct))throw new x("Must initialize SIWE flow first.");let f,u;v?(f=await t.link(),f&&(f=Ro(f))):{user:f,isNewUser:u}=await t.authenticate(),c(f||l||null),m(u||!1),s(!0)},initLoginWithOAuth:async f=>{t.startAuthFlow(new wt(f));let u=await t.authFlow.getAuthorizationUrl();u&&u.url&&window.location.assign(u.url)},loginWithOAuth:async()=>{if(!(t.authFlow instanceof wt))throw new x("Must initialize OAuth flow before calling loginWithOAuth");let f,u;n&&a?f=await t.link():{user:f,isNewUser:u}=await t.authenticate(),c(f),m(u||!1),s(!0)},initLoginWithEmail:async f=>{let u=new Nt(f);t.startAuthFlow(u),await u.sendCodeEmail()},initLoginWithSms:async f=>{let u=new Dt(f);t.startAuthFlow(u),await u.sendSmsCode()},resendEmailCode:async()=>{var f;await((f=t.authFlow)==null?void 0:f.sendCodeEmail())},resendSmsCode:async()=>{var f;await((f=t.authFlow)==null?void 0:f.sendSmsCode())},loginWithCode:async f=>{if(t.authFlow instanceof Nt)t.authFlow.meta.emailCode=f.trim();else if(t.authFlow instanceof Dt)t.authFlow.meta.smsCode=f.trim();else throw new x("Must initialize a passwordless code flow first");let u,R;v?u=await t.link():{user:u,isNewUser:R}=await t.authenticate(),c(u||l||null),m(R||!1),s(!0)},refreshUser:async()=>{let f=await t.getAuthenticatedUser();return c(f),f},walletProxy:oe}))();return(0,vt.jsxs)(Rn.Provider,{value:Jl,children:[e.children,(0,vt.jsxs)(Wn.Provider,{value:Xt,children:[(0,vt.jsx)(Dl,{theme:{...Y.appearance.palette||{}}}),(0,vt.jsx)(na,{appConfig:Y,options:Yt,data:Ie,setModalData:ge,initialScreen:p,visible:o,authenticated:a,children:o&&(0,vt.jsx)(Fl,{})}),j&&(0,vt.jsx)(jl,{appId:e.appId,origin:t.apiUrl,onLoad:We,onLoadFailed:()=>null})]})]})};0&&(module.exports={AsExternalProvider,ConnectorManager,PrivyClient,PrivyProvider,PrivyProxyProvider,VERSION,WalletConnector,getAccessToken,usePrivy});
1879
+ `;var Kt=S(require("tinycolor2")),Gl="#FFFFFF",ep="#000000",tp=Gl,op="#1E1E1D";function rp(e){return e<.8&&e>.2&&console.warn("Background color is not light or dark enough, which could lead to accessibility issues."),e>.5?"light":"dark"}function Zt(e,t){let o=Math.max(0,Math.min(1,e.toHsl().l+t));return(0,Kt.default)({...e.toHsl(),l:o})}function Hl({backgroundTheme:e,accentHex:t,successHex:o="#51BA81",errorHex:r="#EC6351",whiteHex:n=Gl,blackHex:i=ep}){let a;switch(e){case"light":a=tp;break;case"dark":a=op;break;default:a=e;break}let s=(0,Kt.default)(a),l=(0,Kt.default)(t),c=(0,Kt.default)(o),h=(0,Kt.default)(r),m=rp(s.getLuminance()),p=Zt(s,m==="light"?-.04:.11),b=Zt(s,m==="light"?-.88:.87),v=Zt(s,m==="light"?-.77:.75),d=Zt(s,m==="light"?-.43:.45).desaturate(m==="light"?60:20),y=Zt(s,m==="light"?-.13:.25).desaturate(m==="light"?60:20),C=Zt(l,.15),T=Zt(l,-.06),W=(0,Kt.default)(l.getLuminance()>.5?i:n);return{colorScheme:m,background:s.toHslString(),background2:p.toHslString(),foreground:b.toHslString(),foreground2:v.toHslString(),foreground3:d.toHslString(),foreground4:y.toHslString(),accent:l.toHslString(),accentLight:C.toHslString(),accentDark:T.toHslString(),foregroundAccent:W.toHslString(),success:c.toHslString(),error:h.toHslString()}}var Vl={appearance:{theme:"light",accentColor:"#676FFF"}};function ui(e,t){var r,n,i;return{id:e.id,name:e.name,showWalletLoginFirst:e.showWalletLoginFirst,allowlistConfig:e.allowlistConfig,walletAuth:e.walletAuth,emailAuth:e.emailAuth,smsAuth:e.smsAuth,googleOAuth:e.googleOAuth,twitterOAuth:e.twitterOAuth,discordOAuth:e.discordOAuth,githubOAuth:e.githubOAuth,appleOAuth:e.appleOAuth,termsAndConditionsUrl:e.termsAndConditionsUrl,privacyPolicyUrl:e.privacyPolicyUrl,appearance:{logo:((r=t==null?void 0:t.appearance)==null?void 0:r.logo)||e.logoUrl,palette:Hl({backgroundTheme:((n=t==null?void 0:t.appearance)==null?void 0:n.theme)||Vl.appearance.theme,accentHex:((i=t==null?void 0:t.appearance)==null?void 0:i.accentColor)||e.accentColor||Vl.appearance.accentColor})}}}var on=require("react");var tn=class{constructor(){this.callbacks={}}enqueue(t,o){this.callbacks[t]=o}dequeue(t,o){let r=this.callbacks[o];if(!r)throw new Error(`cannot dequeue ${t} event: no event found for id ${o}`);switch(delete this.callbacks[o],t){case"privy:iframe:ready":return r;case"privy:wallet:create":return r;case"privy:wallet:connect":return r;case"privy:wallet:sign":return r;case"privy:wallet:recover":return r;case"privy:wallet:rpc":return r;default:throw new Error(`invalid wallet event type ${t}`)}}};var $l=require("react/jsx-runtime"),np=function(e){return()=>`id-${e++}`}(0);function ip(e){return typeof e.event=="string"&&/^privy:.+/.test(e.event)}function _o(e){return e.error!==void 0}var Jt=new tn;function Po(e,t,o){let r=o.contentWindow;if(!r)throw new Error("iframe not initialized");return new Promise((n,i)=>{let a=np();Jt.enqueue(a,{resolve:n,reject:i}),r.postMessage({id:a,event:e,data:t},"*")})}function ap(e){switch(e.event){case"privy:iframe:ready":let t=Jt.dequeue(e.event,e.id);return _o(e)?t.reject(new gt(e.error.type,e.error.message)):t.resolve(e.data);case"privy:wallet:create":let o=Jt.dequeue(e.event,e.id);return _o(e)?o.reject(new gt(e.error.type,e.error.message)):o.resolve(e.data);case"privy:wallet:connect":let r=Jt.dequeue(e.event,e.id);return _o(e)?r.reject(new gt(e.error.type,e.error.message)):r.resolve(e.data);case"privy:wallet:sign":let n=Jt.dequeue(e.event,e.id);return _o(e)?n.reject(new gt(e.error.type,e.error.message)):n.resolve(e.data);case"privy:wallet:recover":let i=Jt.dequeue(e.event,e.id);return _o(e)?i.reject(new gt(e.error.type,e.error.message)):i.resolve(e.data);case"privy:wallet:rpc":let a=Jt.dequeue(e.event,e.id);return _o(e)?a.reject(new gt(e.error.type,e.error.message)):a.resolve(e.data)}}function jl(e){let t=(0,on.useRef)(null);return(0,on.useEffect)(()=>{let o=t.current;if(!o)return;function r(s){s&&s.origin===e.origin&&ip(s.data)&&ap(s.data)}let n={create(s){return Po("privy:wallet:create",s,o)},connect(s){return Po("privy:wallet:connect",s,o)},sign(s){return Po("privy:wallet:sign",s,o)},recover(s){return Po("privy:wallet:recover",s,o)},rpc(s){return Po("privy:wallet:rpc",s,o)}};window.addEventListener("message",r);let i=()=>e.onLoad(n),a=(...s)=>{console.error("privy iframe failed to load: ",...s),e.onLoadFailed()};return Yi(()=>Po("privy:iframe:ready",{},o)).then(i,a),()=>window.removeEventListener("message",r)},[t.current]),(0,$l.jsx)("iframe",{ref:t,width:"0",height:"0",style:{display:"none",height:"0px",width:"0px"},src:Qo(e.origin,`/apps/${e.appId}/embedded-wallets`)})}var vt=require("react/jsx-runtime");function sp(e){return typeof e=="string"&&e.length===25}var Vo;function ql(){if(!Vo){let e=K.get(eo);return Promise.resolve(e||null)}return Vo.getAccessToken()}var lp=()=>{let t=new URLSearchParams(window.location.search).get("privy_token");!t||K.put(So,t)},Zl=e=>{if(!sp(e.appId))throw new x("Cannot initialize the Privy provider with an invalid Privy app ID");return Vo||(Vo=new co({appId:e.appId,apiUrl:e.apiUrl||zo})),(0,vt.jsx)(dp,{...e,client:Vo})},cp=e=>{let t=!!(e!=null&&e.emailAuth),o=!!(e!=null&&e.smsAuth);return t&&o&&(console.warn("Enabling both email and SMS passwordless is not currently supported. Disabling SMS."),o=!1),{email:t,sms:o,wallet:!!(e!=null&&e.walletAuth),google:!!(e!=null&&e.googleOAuth),twitter:!!(e!=null&&e.twitterOAuth),discord:!!(e!=null&&e.discordOAuth),github:!!(e!=null&&e.githubOAuth),apple:!!(e!=null&&e.appleOAuth)}},dp=e=>{let t=e.client,[o,r]=(0,te.useState)(!1),[n,i]=(0,te.useState)(!1),[a,s]=(0,te.useState)(!1),[l,c]=(0,te.useState)(null),[h,m]=(0,te.useState)(!1),[p,b]=(0,te.useState)(null),[v,d]=(0,te.useState)(!1),[y,C]=(0,te.useState)(null),[T,W]=(0,te.useState)({status:"disconnected",connectError:null,connectRetry:_}),[U,B]=(0,te.useState)(null),[oe,We]=(0,te.useState)(null),[Ce,Re]=(0,te.useState)({showWalletLoginFirst:!0,allowlistConfig:{errorTitle:null,errorDetail:null,errorCtaText:null,errorCtaLink:null},walletAuth:!0,emailAuth:!0,smsAuth:!1,googleOAuth:!1,twitterOAuth:!1,discordOAuth:!1,githubOAuth:!1,appleOAuth:!1,termsAndConditionsUrl:null,privacyPolicyUrl:null}),[Y,z]=(0,te.useState)(ui(Ce,e.config)),[j,J]=(0,te.useState)(!1),[Ie,ge]=(0,te.useState)({}),Yt=cp(Y),ue=f=>{f&&b(f),r(!0),t.createAnalyticsEvent("modal_open",{initialScreen:f})},F=f=>{let u=e.createPrivyWalletOnLogin===!0;ge({login:{promptCreatePrivyWalletFlow:u}}),u&&J(!0),ue(f)};(0,te.useEffect)(()=>{async function f(){let u=await t.getServerConfig();if(Re(u),t.connectors.initialize(),Wo()){let q=localStorage.getItem(An)==="true";hr(q||!To())}Me(),lp();let R=await t.getAuthenticatedUser();s(!!R),c(R),i(!0),d(!!R),Kl()}f()},[t]),(0,te.useEffect)(()=>{let f=ui(Ce,e.config);z(f)},[e.config,Ce]);let Me=()=>{let f=new URLSearchParams(window.location.search),u=f.get("privy_oauth_code"),R=f.get("privy_oauth_state"),q=f.get("privy_oauth_provider");u&&R&&q&&(t.startAuthFlow(new wt(q,u,R)),F("AWAITING_OAUTH_SCREEN"))},Ot=f=>{W(u=>({...u,status:"connecting",connectError:null})),f.promptConnect().then(()=>{W(u=>({...u,status:"connected",connectError:null}))}).catch(u=>{u instanceof Ke?console.error(u.cause?u.cause:u.message):console.error(u),W(R=>({...R,status:"disconnected",connectError:u}))})},Kl=()=>{let u=new URLSearchParams(window.location.search).get("privy_wallet_client");if(!u)return;if(u==="phantom"&&!Wo()&&F("LOGIN_FAILED_SCREEN"),!t.connectors)throw new x("Connector not initialized");let R=new Ct(t.connectors,u);t.startAuthFlow(R),Ot(R),ue("AWAITING_CONNECTION")};(0,te.useEffect)(()=>{n&&a&&l===null&&t.getAuthenticatedUser().then(c)},[n,a,l,t]);let rn=()=>{d(!0),ue("LINK_WALLET_SCREEN")},fi=async(f,u)=>{let R=t.connectors.getConnectorByAddress(u);if(!R)return B(u),rn(),f;C({address:u,walletType:R.walletType,walletBranding:R.walletBranding,success:!1}),ue("SETTING_ACTIVE_WALLET");try{let q=await t.setActiveWallet(u,f);return C({address:u,walletType:R.walletType,walletBranding:R.walletBranding,success:!0}),q}catch(q){q instanceof x&&q.message==="Error setting the active wallet."&&(B(u),rn()),C({address:u,walletType:R.walletType,walletBranding:R.walletBranding,success:!1,error:q.message})}return f},Jl={ready:n,authenticated:a,user:l,walletConnectors:t.connectors,linkWallet:rn,linkEmail:()=>{d(!0),ue("LINK_EMAIL_SCREEN")},linkPhone:()=>{d(!0),ue("LINK_PHONE_SCREEN")},linkGoogle:async()=>{await Xt.initLoginWithOAuth("google")},linkTwitter:async()=>{await Xt.initLoginWithOAuth("twitter")},linkDiscord:async()=>{await Xt.initLoginWithOAuth("discord")},linkGithub:async()=>{await Xt.initLoginWithOAuth("github")},linkApple:async()=>{await Xt.initLoginWithOAuth("apple")},login:()=>{if(n&&a){console.warn("Attempted to log in, but user is already logged in. Use a `link` helper instead.");return}F()},logout:async()=>{await t.logout(),c(null),s(!1),b(null),d(!1),r(!1)},getAccessToken:()=>t.getAccessToken(),getEthereumProvider:()=>t.connectors.getEthereumProvider(),getEthersProvider:()=>new zl.Web3Provider(new Et(t.connectors.getEthereumProvider())),getWeb3jsProvider:()=>new Jo(t.connectors.getEthereumProvider()),unlinkWallet:async f=>{let u=await t.unlinkWallet(f);c(u);let R=u.linkedAccounts.filter(q=>q.type==="wallet");if(u&&R&&R.length>0){let q=R[0];u=await fi(u,q.address)}return c(u),u},unlinkEmail:async f=>{let u=await t.unlinkEmail(f);return c(u),u},unlinkPhone:async f=>{let u=await t.unlinkPhone(f);return c(u),u},unlinkGoogle:async f=>{let u=await t.unlinkOAuth("google",f);return c(u),u},unlinkTwitter:async f=>{let u=await t.unlinkOAuth("twitter",f);return c(u),u},unlinkDiscord:async f=>{let u=await t.unlinkOAuth("discord",f);return c(u),u},unlinkGithub:async f=>{let u=await t.unlinkOAuth("github",f);return c(u),u},unlinkApple:async f=>{let u=await t.unlinkOAuth("apple",f);return c(u),u},setActiveWallet:async f=>{if(!l)return;let u=await fi(l,f);u&&c(u)},forkSession:()=>t.forkSession(),createWallet:()=>new Promise((f,u)=>{if(!a||!l){u(new Error("User must be authenticated before creating a Privy wallet"));return}if(ne(l)){u(new Error("Only one Privy wallet per user is currently allowed"));return}J(!0),ge({createWallet:{onSuccess:f,onFailure:u,callAuthOnSuccessOnClose:!1}}),ue("EMBEDDED_WALLET_SCREEN")}),signMessage:(f,u)=>new Promise((R,q)=>{if(!a||!l){q(new Error("User must be authenticated before signing with a Privy wallet"));return}if(!ne(l)){q(new Error("Must have a Privy wallet before signing"));return}if(typeof f!="string"||f.length<1){q(new Error("Message must be a non-empty string"));return}J(!0);let Yl={message:f,onSuccess:R,onFailure:q,uiOptions:u||{}},Xl={onCompleteNavigateTo:"SIGN_REQUEST_SCREEN",onFailure:q};ge({signMessage:Yl,connectWallet:Xl}),ue("EMBEDDED_WALLET_CONNECTING_SCREEN")}),exportWallet:()=>new Promise((f,u)=>{if(!a||!l){u(new Error("User must be authenticated before exporting their Privy wallet"));return}if(!ne(l)){u(new Error("Must have a Privy wallet before exporting"));return}J(!0);let q={onCompleteNavigateTo:"EMBEDDED_WALLET_KEY_EXPORT_SCREEN",onFailure:u},mi={appId:e.appId,origin:t.apiUrl,onSuccess:f,onFailure:u};ge({keyExport:mi,connectWallet:q}),ue("EMBEDDED_WALLET_CONNECTING_SCREEN")})},Xt=(()=>({isLinking:v,linkingHint:U,activeStatus:y,walletConnectionStatus:T,getAuthFlow:()=>t.authFlow,getAuthMeta:()=>{var f;return(f=t.authFlow)==null?void 0:f.meta},closePrivyModal:(f={shouldCallAuthOnSuccess:!0})=>{var R;let u=n&&a&&l;f.shouldCallAuthOnSuccess&&u&&((R=e.onSuccess)==null||R.call(e,l,h)),t.authFlow=void 0,B(null),b(null),d(!1),C(null),m(!1),r(!1),t.createAnalyticsEvent("modal_closed")},initLoginWithWallet:(f,u)=>{if(!t.connectors)throw new x("Connector not initialized");f||(f="metamask");let R=new Ct(t.connectors,f,u);t.startAuthFlow(R),W({status:"connecting",connectError:null,connectRetry:()=>{Ot(R)}}),Ot(R)},loginWithWallet:async()=>{if(!(t.authFlow instanceof Ct))throw new x("Must initialize SIWE flow first.");let f,u;v?(f=await t.link(),f&&(f=Ro(f))):{user:f,isNewUser:u}=await t.authenticate(),c(f||l||null),m(u||!1),s(!0)},initLoginWithOAuth:async f=>{t.startAuthFlow(new wt(f));let u=await t.authFlow.getAuthorizationUrl();u&&u.url&&window.location.assign(u.url)},loginWithOAuth:async()=>{if(!(t.authFlow instanceof wt))throw new x("Must initialize OAuth flow before calling loginWithOAuth");let f,u;n&&a?f=await t.link():{user:f,isNewUser:u}=await t.authenticate(),c(f),m(u||!1),s(!0)},initLoginWithEmail:async f=>{let u=new Nt(f);t.startAuthFlow(u),await u.sendCodeEmail()},initLoginWithSms:async f=>{let u=new Dt(f);t.startAuthFlow(u),await u.sendSmsCode()},resendEmailCode:async()=>{var f;await((f=t.authFlow)==null?void 0:f.sendCodeEmail())},resendSmsCode:async()=>{var f;await((f=t.authFlow)==null?void 0:f.sendSmsCode())},loginWithCode:async f=>{if(t.authFlow instanceof Nt)t.authFlow.meta.emailCode=f.trim();else if(t.authFlow instanceof Dt)t.authFlow.meta.smsCode=f.trim();else throw new x("Must initialize a passwordless code flow first");let u,R;v?u=await t.link():{user:u,isNewUser:R}=await t.authenticate(),c(u||l||null),m(R||!1),s(!0)},refreshUser:async()=>{let f=await t.getAuthenticatedUser();return c(f),f},walletProxy:oe}))();return(0,vt.jsxs)(Rn.Provider,{value:Jl,children:[e.children,(0,vt.jsxs)(Wn.Provider,{value:Xt,children:[(0,vt.jsx)(Dl,{theme:{...Y.appearance.palette||{}}}),(0,vt.jsx)(na,{appConfig:Y,options:Yt,data:Ie,setModalData:ge,initialScreen:p,visible:o,authenticated:a,children:o&&(0,vt.jsx)(Fl,{})}),j&&(0,vt.jsx)(jl,{appId:e.appId,origin:t.apiUrl,onLoad:We,onLoadFailed:()=>null})]})]})};0&&(module.exports={AsExternalProvider,ConnectorManager,PrivyClient,PrivyProvider,PrivyProxyProvider,VERSION,WalletConnector,getAccessToken,usePrivy});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@privy-io/react-auth",
3
- "version": "1.22.0-beta.1",
3
+ "version": "1.22.0-beta.2",
4
4
  "description": "React client for the Privy Auth API",
5
5
  "keywords": [
6
6
  "authentication",